{"version":3,"file":"js/application-7d9fb177a36d550f5082.js","mappings":"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","sources":["webpack://enma-pv2/./app/javascript/channels/ sync _channel\\.js$","webpack://enma-pv2/./app/javascript/controllers/ sync _controller\\.js$","webpack://enma-pv2/./app/javascript/react/ sync ^\\.\\/.*$","webpack://enma-pv2/./app/javascript/api/MyCorporate/Option/FacilityTourApplicant.js","webpack://enma-pv2/./app/javascript/api/common.js","webpack://enma-pv2/./app/javascript/channels/index.js","webpack://enma-pv2/./app/javascript/controllers/admin/facility_tour_applicant_option/edit_controller.js","webpack://enma-pv2/./app/javascript/controllers/admin/facility_tour_applicant_option/search_controller.js","webpack://enma-pv2/./app/javascript/controllers/admin/login_controller.js","webpack://enma-pv2/./app/javascript/controllers/admin/manual/search_controller.js","webpack://enma-pv2/./app/javascript/controllers/loading_controller.js","webpack://enma-pv2/./app/javascript/controllers/password_visible_controller.js","webpack://enma-pv2/./app/javascript/controllers/students/logout_controller.js","webpack://enma-pv2/./app/javascript/controllers/index.js","webpack://enma-pv2/./app/javascript/packs/application.js","webpack://enma-pv2/./app/javascript/react/components/Breadcrumbs/AdminBreadcrumbs.jsx","webpack://enma-pv2/./app/javascript/react/components/Breadcrumbs/FacilityBreadcrumbs.jsx","webpack://enma-pv2/./app/javascript/react/components/Breadcrumbs/SchoolBreadcrumbs.jsx","webpack://enma-pv2/./app/javascript/react/components/Breadcrumbs/StudentBreadcrumbs.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/BlackButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/Button.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/DefaultButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/GrayButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/GreenButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/OrangeButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/PinkButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/PrimaryButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Buttons/TwoToneButton.jsx","webpack://enma-pv2/./app/javascript/react/components/CitySelect/CitySelect.jsx","webpack://enma-pv2/./app/javascript/react/components/Content.jsx","webpack://enma-pv2/./app/javascript/react/components/Corporate/CorporateManagerList.jsx","webpack://enma-pv2/./app/javascript/react/components/Corporate/EventApplicantList.jsx","webpack://enma-pv2/./app/javascript/react/components/Corporate/SchoolList.jsx","webpack://enma-pv2/./app/javascript/react/components/CustomIcons/SchoolIcon.jsx","webpack://enma-pv2/./app/javascript/react/components/Divider/Divider.jsx","webpack://enma-pv2/./app/javascript/react/components/Divider/VerticalDivider.tsx","webpack://enma-pv2/./app/javascript/react/components/Footers/BasicFixedFooter.jsx","webpack://enma-pv2/./app/javascript/react/components/Footers/FacilityFooter.jsx","webpack://enma-pv2/./app/javascript/react/components/Footers/SchoolFooter.jsx","webpack://enma-pv2/./app/javascript/react/components/Footers/StudentFooter.jsx","webpack://enma-pv2/./app/javascript/react/components/Headers/AdminHeader.js","webpack://enma-pv2/./app/javascript/react/components/Headers/FacilityHeader.jsx","webpack://enma-pv2/./app/javascript/react/components/Headers/SchoolManagementHeader.js","webpack://enma-pv2/./app/javascript/react/components/Headers/StudentHeader.jsx","webpack://enma-pv2/./app/javascript/react/components/Label.jsx","webpack://enma-pv2/./app/javascript/react/components/LoadingOverlay/LoadingOverlay.jsx","webpack://enma-pv2/./app/javascript/react/components/LoadingOverlay/StudentLoadingOverlay.jsx","webpack://enma-pv2/./app/javascript/react/components/Logo/EnmapLogo.jsx","webpack://enma-pv2/./app/javascript/react/components/Logo/EnmapLogoPink.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/AttachedFileDeleteModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/CorporateEnmapUsingInfoModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/CorporatePaperInfoModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/DeleteModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/EventAttachedFileUpload.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/EventModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/EventPublishConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/FacilityAttachmentFileUpload.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/FacilityModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/FacilitySearchModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/FileUpload.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/MySchoolConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/MySchoolRecruitmentSearchModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/PdfDeleteModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/RecruitmentPublishConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/SchoolEndRecruitmentConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/components/Modal/hooks/useEventModal.js","webpack://enma-pv2/./app/javascript/react/components/MyCorporate/LeftPane.jsx","webpack://enma-pv2/./app/javascript/react/components/MyCorporate/RightPane.jsx","webpack://enma-pv2/./app/javascript/react/components/NotFound.jsx","webpack://enma-pv2/./app/javascript/react/components/Paginations/BasicPagination.js","webpack://enma-pv2/./app/javascript/react/components/Paginations/StudentPagination.jsx","webpack://enma-pv2/./app/javascript/react/components/Paper/Paper.jsx","webpack://enma-pv2/./app/javascript/react/components/PrefectureSelect/PrefectureSelect.jsx","webpack://enma-pv2/./app/javascript/react/components/ResultList/CorporateRecruitmentResultList.jsx","webpack://enma-pv2/./app/javascript/react/components/ResultList/EventResultList.jsx","webpack://enma-pv2/./app/javascript/react/components/ResultList/FacilityRecruitmentResultList.jsx","webpack://enma-pv2/./app/javascript/react/components/School/CorporateOptionTable.jsx","webpack://enma-pv2/./app/javascript/react/components/School/FacilityList.jsx","webpack://enma-pv2/./app/javascript/react/components/School/FacilityOptionTable.jsx","webpack://enma-pv2/./app/javascript/react/components/School/LeftPane.jsx","webpack://enma-pv2/./app/javascript/react/components/School/RadioOptions.jsx","webpack://enma-pv2/./app/javascript/react/components/School/RecruitmentForm.jsx","webpack://enma-pv2/./app/javascript/react/components/School/RightPane.jsx","webpack://enma-pv2/./app/javascript/react/components/School/Title.jsx","webpack://enma-pv2/./app/javascript/react/components/Search/InlineSearch.jsx","webpack://enma-pv2/./app/javascript/react/components/Student/ApplicantButton.jsx","webpack://enma-pv2/./app/javascript/react/components/Student/PageTitle.jsx","webpack://enma-pv2/./app/javascript/react/components/Student/TablePart.jsx","webpack://enma-pv2/./app/javascript/react/components/Student/Tabs.jsx","webpack://enma-pv2/./app/javascript/react/components/StudentSidebarDrawer.jsx","webpack://enma-pv2/./app/javascript/react/components/StudentSubTitle.jsx","webpack://enma-pv2/./app/javascript/react/components/Table/BodyCell.jsx","webpack://enma-pv2/./app/javascript/react/components/Table/HeadCell.jsx","webpack://enma-pv2/./app/javascript/react/components/Table/Table.jsx","webpack://enma-pv2/./app/javascript/react/components/Table/TableBody.jsx","webpack://enma-pv2/./app/javascript/react/components/Table/TableHead.jsx","webpack://enma-pv2/./app/javascript/react/components/Table/TableRow.jsx","webpack://enma-pv2/./app/javascript/react/components/TimePicker.jsx","webpack://enma-pv2/./app/javascript/react/components/Title.jsx","webpack://enma-pv2/./app/javascript/react/components/Title/Banner.jsx","webpack://enma-pv2/./app/javascript/react/components/Title/FacilityTitle.jsx","webpack://enma-pv2/./app/javascript/react/components/Toast.jsx","webpack://enma-pv2/./app/javascript/react/components/Trash/index.tsx","webpack://enma-pv2/./app/javascript/react/hooks/useNow.ts","webpack://enma-pv2/./app/javascript/react/hooks/useScrollToError.js","webpack://enma-pv2/./app/javascript/react/modules/Admin/Corporate/createModule.js","webpack://enma-pv2/./app/javascript/react/modules/Admin/Corporate/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/Admin/Corporate/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/Admin/Facility/createModule.js","webpack://enma-pv2/./app/javascript/react/modules/Admin/Facility/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/Admin/loginModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Corporate/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/CorporateManager/createModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/CorporateManager/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Event/createModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Event/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Facility/createModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Facility/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Facility/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Recruitment/Facility/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Recruitment/School/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Recruitment/createModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Recruitment/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/Recruitment/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/loginModule.js","webpack://enma-pv2/./app/javascript/react/modules/MyCorporate/passwordResetModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Advisor/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Corporate/YouthEmployment/infoModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Corporate/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Corporate/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Corporate/multipleRecruitmentCreateModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Facility/Event/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Facility/Introduction/infoModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Facility/detailModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Facility/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Student/editModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/Student/listModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/aggregateExportModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/formModule.js","webpack://enma-pv2/./app/javascript/react/modules/School/loginModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/Event/facilitySearchModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/Recruitment/School/corporateSearchModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/Recruitment/School/facilitySearchModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/Report/activityReportCreateModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/Report/careerHopeCreateModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/Report/offerReportCreateModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/globalLoginModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/globalPasswordResetModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/initialPasswordChange.js","webpack://enma-pv2/./app/javascript/react/modules/Student/loginModule.js","webpack://enma-pv2/./app/javascript/react/modules/Student/passwordResetModule.js","webpack://enma-pv2/./app/javascript/react/modules/components/corporateBookmark.js","webpack://enma-pv2/./app/javascript/react/modules/components/corporatePaperInfo.js","webpack://enma-pv2/./app/javascript/react/modules/components/corporationBookmark.js","webpack://enma-pv2/./app/javascript/react/modules/components/facilityInfoModule.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/Corporate/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/Corporate/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/Corporate/FacilityTourApplicant/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/Corporate/FacilityTourApplicant/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/Corporate/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/CorporateManager/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/CorporateManager/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/CorporateManager/SelectCorporate.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/CorporateManager/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/CorporateManager/hooks/useDetail.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/CorporateManager/hooks/useSelectCorporate.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/Facility/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/Facility/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/Facility/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/FacilityTourApplicantOption/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/FacilityTourApplicantOption/Facility/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/FacilityTourApplicantOption/Facility/useList.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/FacilityTourApplicantOption/School/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/FacilityTourApplicantOption/School/useList.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/Manual/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/Manual/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/Manual/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/Manual/hooks/useDetail.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/User/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/User/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/User/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/components/SchoolYearSelectModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/School/hooks/useDetail.js","webpack://enma-pv2/./app/javascript/react/pages/Admin/StudentApplicant/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Admin/StudentApplicant/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Corporate/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/CorporateManager/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/CorporateManager/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/CorporateManager/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/EventApplicant/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/Facility/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/School/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/components/DeleteModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/components/EndRecruitmentConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/components/RelatedFacilityModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/components/RelatedSchoolModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/hooks/useDetail.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/hooks/useEventApplicantList.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/hooks/useFacilityList.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Event/hooks/useSchoolList.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/EventApplicant/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/EventApplicant/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/EventApplicant/hooks/useList.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Facility/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Facility/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Facility/Modal/DeleteModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Facility/Modal/DisconnectModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Facility/SearchableList.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Home.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Inquiry/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Inquiry/Success.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Inquiry/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/IntroductionSchool/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Login.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Manual/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/Complete.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/FacilityListPage.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/components/ConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/components/RestartConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/components/Step.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/components/StopConfirmModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/FacilityTourApplicant/hooks/useDetail.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/components/OptionButton.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Option/hooks/useList.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/PasswordReset.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/Facility/AdditionalList.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/Facility/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/School/AdditionalList.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/School/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/commonFunc.js","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/components/CloseRecruitmentModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/components/CopyRecruitmentModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/components/RelatedFacilityModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/components/RelatedSchoolModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/components/ReopenRecruitmentModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/Recruitment/components/YearTabs.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/YouthEmployment/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/YouthEmployment/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/YouthEmployment/Form.jsx","webpack://enma-pv2/./app/javascript/react/pages/MyCorporate/YouthEmployment/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/School/Advisor/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Advisor/Form.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Advisor/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Advisor/Update.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/AggregateExport.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Corporate/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Corporate/Recruitment/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Corporate/Recruitment/FacilityTable.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Corporate/SearchableList.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Corporate/YouthEmployment/Info.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Facility/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Facility/Event/Info.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Facility/Introduction/Info.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Facility/Recruitment/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Facility/Recruitment/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/School/Facility/SearchableList.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Form.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Home.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/InitialPasswordChange.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Inquiry/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Inquiry/Success.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Inquiry/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/School/Login.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Manual/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/PasswordReset.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Recruitment/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Recruitment/hooks/useList.js","webpack://enma-pv2/./app/javascript/react/pages/School/Student/SearchableList.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Student/Update.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Student/components/StudentCreationBySchoolModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Student/components/StudentCreationByStudentModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/Student/components/StudentCreationTypeSelectModal.jsx","webpack://enma-pv2/./app/javascript/react/pages/School/hooks/useInitialPasswordChange.js","webpack://enma-pv2/./app/javascript/react/pages/School/hooks/usePasswordReset.js","webpack://enma-pv2/./app/javascript/react/pages/Student/ApplicantHistory/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/ApplicantHistory/Event/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/ApplicantHistory/Event/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/ApplicantHistory/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Bookmark/EventList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Bookmark/List.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Corporate/EnmapUsingDetail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Corporate/Facility/RelatedList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Corporate/YouthEmployment/EnmapUsingDetail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Corporation/EnmapUsingDetail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Corporation/YouthEmployment/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/Applicant.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/ApplicantConfirm.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/ApplicantSuccess.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/Detail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/EventDateResultList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/FacilitySearch/Result.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/RelatedFacilityList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/Search.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/Search/Result.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/hooks/useApplicant.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/hooks/useApplicantConfirm.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/hooks/useDetail.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Event/hooks/useSearch.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Facility/Applicant/Confirm.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Facility/Applicant/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Facility/Applicant/Success.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Facility/Applicant/hooks/useConfirm.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Facility/Applicant/hooks/useCreate.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Facility/Recruitment/EnmapUsingDetail.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/GlobalLogin.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/GlobalPasswordReset.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Home.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/InitialPasswordChange.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Login.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/PasswordReset.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/Corporation/LatestList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/CorporateSearch.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/CorporateSearch/Result.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/FacilitySearch.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/FacilitySearch/Result.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/LatestList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/TypeFacilityCorporateSearch/Result.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/TypeFacilityCorporateSearch/Search.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/TypeFacilityCorporateSearch/hooks/useSearch.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/TypeFacilitySearch/LatestList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/TypeFacilitySearch/Result.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/TypeFacilitySearch/Search.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Recruitment/School/TypeFacilitySearch/hooks/useSearch.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Registration/Complete.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Registration/Step1.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Registration/Step2.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Registration/hooks/useStep1.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Registration/hooks/useStep2.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/ActivityReport/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/ActivityReport/Success.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/ActivityReport/SuccessDraft.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/ActivityReport/components/index.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/CareerHope/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/CareerHope/Success.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/FacilitySearch.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/FacilitySearchResult.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/OfferReport/Create.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/OfferReport/Success.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/OfferReport/components/index.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/ReportTypeList.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/TypeFacilitySearch/Result.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/TypeFacilitySearch/Search.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/TypeFacilitySearch/hooks/useSearch.js","webpack://enma-pv2/./app/javascript/react/pages/Student/Report/components/index.jsx","webpack://enma-pv2/./app/javascript/react/pages/Student/ViewFacilityHistory/List.jsx","webpack://enma-pv2/./app/javascript/react/utils/prefecture.js","webpack://enma-pv2/./app/javascript/src/map.js","webpack://enma-pv2/./app/javascript/utils/HttpRequest.js","webpack://enma-pv2/./app/javascript/utils/common.js","webpack://enma-pv2/./app/javascript/utils/constant.js","webpack://enma-pv2/./app/javascript/utils/event.js","webpack://enma-pv2/./app/javascript/utils/firebase.js"],"sourcesContent":["function webpackEmptyContext(req) {\n\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\te.code = 'MODULE_NOT_FOUND';\n\tthrow e;\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nwebpackEmptyContext.id = 63760;\nmodule.exports = webpackEmptyContext;","var map = {\n\t\"./admin/facility_tour_applicant_option/edit_controller.js\": 96162,\n\t\"./admin/facility_tour_applicant_option/search_controller.js\": 93098,\n\t\"./admin/login_controller.js\": 4781,\n\t\"./admin/manual/search_controller.js\": 32735,\n\t\"./loading_controller.js\": 18674,\n\t\"./password_visible_controller.js\": 81898,\n\t\"./students/logout_controller.js\": 78095,\n\t\"controllers/admin/facility_tour_applicant_option/edit_controller.js\": 96162,\n\t\"controllers/admin/facility_tour_applicant_option/search_controller.js\": 93098,\n\t\"controllers/admin/login_controller.js\": 4781,\n\t\"controllers/admin/manual/search_controller.js\": 32735,\n\t\"controllers/loading_controller.js\": 18674,\n\t\"controllers/password_visible_controller.js\": 81898,\n\t\"controllers/students/logout_controller.js\": 78095\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 65124;","var map = {\n\t\"./components/Breadcrumbs/AdminBreadcrumbs\": 89228,\n\t\"./components/Breadcrumbs/AdminBreadcrumbs.jsx\": 89228,\n\t\"./components/Breadcrumbs/FacilityBreadcrumbs\": 43054,\n\t\"./components/Breadcrumbs/FacilityBreadcrumbs.jsx\": 43054,\n\t\"./components/Breadcrumbs/SchoolBreadcrumbs\": 11155,\n\t\"./components/Breadcrumbs/SchoolBreadcrumbs.jsx\": 11155,\n\t\"./components/Breadcrumbs/StudentBreadcrumbs\": 52144,\n\t\"./components/Breadcrumbs/StudentBreadcrumbs.jsx\": 52144,\n\t\"./components/Buttons/BlackButton\": 2089,\n\t\"./components/Buttons/BlackButton.jsx\": 2089,\n\t\"./components/Buttons/Button\": 23290,\n\t\"./components/Buttons/Button.jsx\": 23290,\n\t\"./components/Buttons/DefaultButton\": 35047,\n\t\"./components/Buttons/DefaultButton.jsx\": 35047,\n\t\"./components/Buttons/GrayButton\": 22667,\n\t\"./components/Buttons/GrayButton.jsx\": 22667,\n\t\"./components/Buttons/GreenButton\": 66753,\n\t\"./components/Buttons/GreenButton.jsx\": 66753,\n\t\"./components/Buttons/OrangeButton\": 94340,\n\t\"./components/Buttons/OrangeButton.jsx\": 94340,\n\t\"./components/Buttons/PinkButton\": 53282,\n\t\"./components/Buttons/PinkButton.jsx\": 53282,\n\t\"./components/Buttons/PrimaryButton\": 150,\n\t\"./components/Buttons/PrimaryButton.jsx\": 150,\n\t\"./components/Buttons/TwoToneButton\": 27738,\n\t\"./components/Buttons/TwoToneButton.jsx\": 27738,\n\t\"./components/CitySelect/CitySelect\": 85639,\n\t\"./components/CitySelect/CitySelect.jsx\": 85639,\n\t\"./components/Content\": 90461,\n\t\"./components/Content.jsx\": 90461,\n\t\"./components/Corporate/CorporateManagerList\": 8738,\n\t\"./components/Corporate/CorporateManagerList.jsx\": 8738,\n\t\"./components/Corporate/EventApplicantList\": 49262,\n\t\"./components/Corporate/EventApplicantList.jsx\": 49262,\n\t\"./components/Corporate/SchoolList\": 32580,\n\t\"./components/Corporate/SchoolList.jsx\": 32580,\n\t\"./components/CustomIcons/SchoolIcon\": 17367,\n\t\"./components/CustomIcons/SchoolIcon.jsx\": 17367,\n\t\"./components/Divider/Divider\": 15375,\n\t\"./components/Divider/Divider.jsx\": 15375,\n\t\"./components/Divider/VerticalDivider\": 47403,\n\t\"./components/Divider/VerticalDivider.tsx\": 47403,\n\t\"./components/Footers/BasicFixedFooter\": 52358,\n\t\"./components/Footers/BasicFixedFooter.jsx\": 52358,\n\t\"./components/Footers/FacilityFooter\": 45885,\n\t\"./components/Footers/FacilityFooter.jsx\": 45885,\n\t\"./components/Footers/SchoolFooter\": 49522,\n\t\"./components/Footers/SchoolFooter.jsx\": 49522,\n\t\"./components/Footers/StudentFooter\": 12183,\n\t\"./components/Footers/StudentFooter.jsx\": 12183,\n\t\"./components/Headers/AdminHeader\": 64953,\n\t\"./components/Headers/AdminHeader.js\": 64953,\n\t\"./components/Headers/FacilityHeader\": 80869,\n\t\"./components/Headers/FacilityHeader.jsx\": 80869,\n\t\"./components/Headers/SchoolManagementHeader\": 87233,\n\t\"./components/Headers/SchoolManagementHeader.js\": 87233,\n\t\"./components/Headers/StudentHeader\": 24271,\n\t\"./components/Headers/StudentHeader.jsx\": 24271,\n\t\"./components/Label\": 92316,\n\t\"./components/Label.jsx\": 92316,\n\t\"./components/LoadingOverlay/LoadingOverlay\": 87209,\n\t\"./components/LoadingOverlay/LoadingOverlay.jsx\": 87209,\n\t\"./components/LoadingOverlay/StudentLoadingOverlay\": 94024,\n\t\"./components/LoadingOverlay/StudentLoadingOverlay.jsx\": 94024,\n\t\"./components/LoadingOverlay/style\": 28297,\n\t\"./components/LoadingOverlay/style.css\": 28297,\n\t\"./components/Logo/EnmapLogo\": 9736,\n\t\"./components/Logo/EnmapLogo.jsx\": 9736,\n\t\"./components/Logo/EnmapLogoPink\": 24032,\n\t\"./components/Logo/EnmapLogoPink.jsx\": 24032,\n\t\"./components/Modal/AttachedFileDeleteModal\": 81662,\n\t\"./components/Modal/AttachedFileDeleteModal.jsx\": 81662,\n\t\"./components/Modal/CorporateEnmapUsingInfoModal\": 56751,\n\t\"./components/Modal/CorporateEnmapUsingInfoModal.jsx\": 56751,\n\t\"./components/Modal/CorporatePaperInfoModal\": 30652,\n\t\"./components/Modal/CorporatePaperInfoModal.jsx\": 30652,\n\t\"./components/Modal/DeleteModal\": 9048,\n\t\"./components/Modal/DeleteModal.jsx\": 9048,\n\t\"./components/Modal/EventAttachedFileUpload\": 79721,\n\t\"./components/Modal/EventAttachedFileUpload.jsx\": 79721,\n\t\"./components/Modal/EventModal\": 87141,\n\t\"./components/Modal/EventModal.jsx\": 87141,\n\t\"./components/Modal/EventPublishConfirmModal\": 26700,\n\t\"./components/Modal/EventPublishConfirmModal.jsx\": 26700,\n\t\"./components/Modal/FacilityAttachmentFileUpload\": 92619,\n\t\"./components/Modal/FacilityAttachmentFileUpload.jsx\": 92619,\n\t\"./components/Modal/FacilityModal\": 30550,\n\t\"./components/Modal/FacilityModal.jsx\": 30550,\n\t\"./components/Modal/FacilitySearchModal\": 18930,\n\t\"./components/Modal/FacilitySearchModal.jsx\": 18930,\n\t\"./components/Modal/FileUpload\": 66723,\n\t\"./components/Modal/FileUpload.jsx\": 66723,\n\t\"./components/Modal/MySchoolConfirmModal\": 4359,\n\t\"./components/Modal/MySchoolConfirmModal.jsx\": 4359,\n\t\"./components/Modal/MySchoolRecruitmentSearchModal\": 52149,\n\t\"./components/Modal/MySchoolRecruitmentSearchModal.jsx\": 52149,\n\t\"./components/Modal/PdfDeleteModal\": 44864,\n\t\"./components/Modal/PdfDeleteModal.jsx\": 44864,\n\t\"./components/Modal/RecruitmentPublishConfirmModal\": 60826,\n\t\"./components/Modal/RecruitmentPublishConfirmModal.jsx\": 60826,\n\t\"./components/Modal/SchoolEndRecruitmentConfirmModal\": 44534,\n\t\"./components/Modal/SchoolEndRecruitmentConfirmModal.jsx\": 44534,\n\t\"./components/Modal/hooks/useEventModal\": 47217,\n\t\"./components/Modal/hooks/useEventModal.js\": 47217,\n\t\"./components/MyCorporate/LeftPane\": 37447,\n\t\"./components/MyCorporate/LeftPane.jsx\": 37447,\n\t\"./components/MyCorporate/RightPane\": 9556,\n\t\"./components/MyCorporate/RightPane.jsx\": 9556,\n\t\"./components/NotFound\": 40705,\n\t\"./components/NotFound.jsx\": 40705,\n\t\"./components/Paginations/BasicPagination\": 73634,\n\t\"./components/Paginations/BasicPagination.js\": 73634,\n\t\"./components/Paginations/StudentPagination\": 28949,\n\t\"./components/Paginations/StudentPagination.jsx\": 28949,\n\t\"./components/Paper/Paper\": 70667,\n\t\"./components/Paper/Paper.jsx\": 70667,\n\t\"./components/PrefectureSelect/PrefectureSelect\": 82387,\n\t\"./components/PrefectureSelect/PrefectureSelect.jsx\": 82387,\n\t\"./components/ResultList/CorporateRecruitmentResultList\": 35826,\n\t\"./components/ResultList/CorporateRecruitmentResultList.jsx\": 35826,\n\t\"./components/ResultList/EventResultList\": 23305,\n\t\"./components/ResultList/EventResultList.jsx\": 23305,\n\t\"./components/ResultList/FacilityRecruitmentResultList\": 29558,\n\t\"./components/ResultList/FacilityRecruitmentResultList.jsx\": 29558,\n\t\"./components/School/CorporateOptionTable\": 76671,\n\t\"./components/School/CorporateOptionTable.jsx\": 76671,\n\t\"./components/School/FacilityList\": 99514,\n\t\"./components/School/FacilityList.jsx\": 99514,\n\t\"./components/School/FacilityOptionTable\": 85473,\n\t\"./components/School/FacilityOptionTable.jsx\": 85473,\n\t\"./components/School/LeftPane\": 22160,\n\t\"./components/School/LeftPane.jsx\": 22160,\n\t\"./components/School/RadioOptions\": 24928,\n\t\"./components/School/RadioOptions.jsx\": 24928,\n\t\"./components/School/RecruitmentForm\": 41497,\n\t\"./components/School/RecruitmentForm.jsx\": 41497,\n\t\"./components/School/RightPane\": 2765,\n\t\"./components/School/RightPane.jsx\": 2765,\n\t\"./components/School/Title\": 503,\n\t\"./components/School/Title.jsx\": 503,\n\t\"./components/Search/InlineSearch\": 39822,\n\t\"./components/Search/InlineSearch.jsx\": 39822,\n\t\"./components/Student/ApplicantButton\": 51784,\n\t\"./components/Student/ApplicantButton.jsx\": 51784,\n\t\"./components/Student/PageTitle\": 92515,\n\t\"./components/Student/PageTitle.jsx\": 92515,\n\t\"./components/Student/TablePart\": 93225,\n\t\"./components/Student/TablePart.jsx\": 93225,\n\t\"./components/Student/Tabs\": 33176,\n\t\"./components/Student/Tabs.jsx\": 33176,\n\t\"./components/StudentSidebarDrawer\": 88128,\n\t\"./components/StudentSidebarDrawer.jsx\": 88128,\n\t\"./components/StudentSubTitle\": 45183,\n\t\"./components/StudentSubTitle.jsx\": 45183,\n\t\"./components/Table/BodyCell\": 11339,\n\t\"./components/Table/BodyCell.jsx\": 11339,\n\t\"./components/Table/HeadCell\": 14141,\n\t\"./components/Table/HeadCell.jsx\": 14141,\n\t\"./components/Table/Table\": 19035,\n\t\"./components/Table/Table.jsx\": 19035,\n\t\"./components/Table/TableBody\": 32991,\n\t\"./components/Table/TableBody.jsx\": 32991,\n\t\"./components/Table/TableHead\": 29909,\n\t\"./components/Table/TableHead.jsx\": 29909,\n\t\"./components/Table/TableRow\": 86759,\n\t\"./components/Table/TableRow.jsx\": 86759,\n\t\"./components/TimePicker\": 94065,\n\t\"./components/TimePicker.jsx\": 94065,\n\t\"./components/Title\": 23876,\n\t\"./components/Title.jsx\": 23876,\n\t\"./components/Title/Banner\": 59107,\n\t\"./components/Title/Banner.jsx\": 59107,\n\t\"./components/Title/FacilityTitle\": 9726,\n\t\"./components/Title/FacilityTitle.jsx\": 9726,\n\t\"./components/Toast\": 93827,\n\t\"./components/Toast.jsx\": 93827,\n\t\"./components/ToastStyle\": 98771,\n\t\"./components/ToastStyle.css\": 98771,\n\t\"./components/Trash\": 1167,\n\t\"./components/Trash/\": 1167,\n\t\"./components/Trash/index\": 1167,\n\t\"./components/Trash/index.tsx\": 1167,\n\t\"./hooks/useNow\": 8391,\n\t\"./hooks/useNow.ts\": 8391,\n\t\"./hooks/useScrollToError\": 44127,\n\t\"./hooks/useScrollToError.js\": 44127,\n\t\"./images/arrow_up.svg\": 26689,\n\t\"./images/bookmark.svg\": 48028,\n\t\"./images/building.svg\": 62564,\n\t\"./images/check.svg\": 27628,\n\t\"./images/enmap_logo.png\": 2322,\n\t\"./images/facility_tour_applicant_button.png\": 26901,\n\t\"./images/home.svg\": 95393,\n\t\"./images/logo_bold.png\": 40714,\n\t\"./images/logo_white.png\": 24676,\n\t\"./images/map_icon.svg\": 18074,\n\t\"./images/menu.svg\": 92697,\n\t\"./images/nt_book_fest_banner.png\": 16999,\n\t\"./images/report.svg\": 22754,\n\t\"./images/top_girl.svg\": 67694,\n\t\"./modules/Admin/Corporate/createModule\": 88967,\n\t\"./modules/Admin/Corporate/createModule.js\": 88967,\n\t\"./modules/Admin/Corporate/detailModule\": 7462,\n\t\"./modules/Admin/Corporate/detailModule.js\": 7462,\n\t\"./modules/Admin/Corporate/listModule\": 38243,\n\t\"./modules/Admin/Corporate/listModule.js\": 38243,\n\t\"./modules/Admin/Facility/createModule\": 8189,\n\t\"./modules/Admin/Facility/createModule.js\": 8189,\n\t\"./modules/Admin/Facility/detailModule\": 51756,\n\t\"./modules/Admin/Facility/detailModule.js\": 51756,\n\t\"./modules/Admin/loginModule\": 38394,\n\t\"./modules/Admin/loginModule.js\": 38394,\n\t\"./modules/MyCorporate/Corporate/detailModule\": 57760,\n\t\"./modules/MyCorporate/Corporate/detailModule.js\": 57760,\n\t\"./modules/MyCorporate/CorporateManager/createModule\": 48842,\n\t\"./modules/MyCorporate/CorporateManager/createModule.js\": 48842,\n\t\"./modules/MyCorporate/CorporateManager/detailModule\": 79911,\n\t\"./modules/MyCorporate/CorporateManager/detailModule.js\": 79911,\n\t\"./modules/MyCorporate/Event/createModule\": 15000,\n\t\"./modules/MyCorporate/Event/createModule.js\": 15000,\n\t\"./modules/MyCorporate/Event/listModule\": 14432,\n\t\"./modules/MyCorporate/Event/listModule.js\": 14432,\n\t\"./modules/MyCorporate/Facility/createModule\": 63599,\n\t\"./modules/MyCorporate/Facility/createModule.js\": 63599,\n\t\"./modules/MyCorporate/Facility/detailModule\": 29742,\n\t\"./modules/MyCorporate/Facility/detailModule.js\": 29742,\n\t\"./modules/MyCorporate/Facility/listModule\": 17963,\n\t\"./modules/MyCorporate/Facility/listModule.js\": 17963,\n\t\"./modules/MyCorporate/Recruitment/Facility/listModule\": 10426,\n\t\"./modules/MyCorporate/Recruitment/Facility/listModule.js\": 10426,\n\t\"./modules/MyCorporate/Recruitment/School/listModule\": 12005,\n\t\"./modules/MyCorporate/Recruitment/School/listModule.js\": 12005,\n\t\"./modules/MyCorporate/Recruitment/createModule\": 91006,\n\t\"./modules/MyCorporate/Recruitment/createModule.js\": 91006,\n\t\"./modules/MyCorporate/Recruitment/detailModule\": 38915,\n\t\"./modules/MyCorporate/Recruitment/detailModule.js\": 38915,\n\t\"./modules/MyCorporate/Recruitment/listModule\": 70546,\n\t\"./modules/MyCorporate/Recruitment/listModule.js\": 70546,\n\t\"./modules/MyCorporate/loginModule\": 98772,\n\t\"./modules/MyCorporate/loginModule.js\": 98772,\n\t\"./modules/MyCorporate/passwordResetModule\": 9145,\n\t\"./modules/MyCorporate/passwordResetModule.js\": 9145,\n\t\"./modules/School/Advisor/listModule\": 43683,\n\t\"./modules/School/Advisor/listModule.js\": 43683,\n\t\"./modules/School/Corporate/YouthEmployment/infoModule\": 89680,\n\t\"./modules/School/Corporate/YouthEmployment/infoModule.js\": 89680,\n\t\"./modules/School/Corporate/detailModule\": 59367,\n\t\"./modules/School/Corporate/detailModule.js\": 59367,\n\t\"./modules/School/Corporate/listModule\": 12214,\n\t\"./modules/School/Corporate/listModule.js\": 12214,\n\t\"./modules/School/Corporate/multipleRecruitmentCreateModule\": 22042,\n\t\"./modules/School/Corporate/multipleRecruitmentCreateModule.js\": 22042,\n\t\"./modules/School/Facility/Event/listModule\": 7567,\n\t\"./modules/School/Facility/Event/listModule.js\": 7567,\n\t\"./modules/School/Facility/Introduction/infoModule\": 94521,\n\t\"./modules/School/Facility/Introduction/infoModule.js\": 94521,\n\t\"./modules/School/Facility/detailModule\": 31683,\n\t\"./modules/School/Facility/detailModule.js\": 31683,\n\t\"./modules/School/Facility/listModule\": 88914,\n\t\"./modules/School/Facility/listModule.js\": 88914,\n\t\"./modules/School/Student/editModule\": 2578,\n\t\"./modules/School/Student/editModule.js\": 2578,\n\t\"./modules/School/Student/listModule\": 27306,\n\t\"./modules/School/Student/listModule.js\": 27306,\n\t\"./modules/School/aggregateExportModule\": 85717,\n\t\"./modules/School/aggregateExportModule.js\": 85717,\n\t\"./modules/School/formModule\": 67192,\n\t\"./modules/School/formModule.js\": 67192,\n\t\"./modules/School/loginModule\": 52201,\n\t\"./modules/School/loginModule.js\": 52201,\n\t\"./modules/Student/Event/facilitySearchModule\": 53659,\n\t\"./modules/Student/Event/facilitySearchModule.js\": 53659,\n\t\"./modules/Student/Recruitment/School/corporateSearchModule\": 664,\n\t\"./modules/Student/Recruitment/School/corporateSearchModule.js\": 664,\n\t\"./modules/Student/Recruitment/School/facilitySearchModule\": 89914,\n\t\"./modules/Student/Recruitment/School/facilitySearchModule.js\": 89914,\n\t\"./modules/Student/Report/activityReportCreateModule\": 47191,\n\t\"./modules/Student/Report/activityReportCreateModule.js\": 47191,\n\t\"./modules/Student/Report/careerHopeCreateModule\": 3508,\n\t\"./modules/Student/Report/careerHopeCreateModule.js\": 3508,\n\t\"./modules/Student/Report/offerReportCreateModule\": 41966,\n\t\"./modules/Student/Report/offerReportCreateModule.js\": 41966,\n\t\"./modules/Student/globalLoginModule\": 56091,\n\t\"./modules/Student/globalLoginModule.js\": 56091,\n\t\"./modules/Student/globalPasswordResetModule\": 24578,\n\t\"./modules/Student/globalPasswordResetModule.js\": 24578,\n\t\"./modules/Student/initialPasswordChange\": 60582,\n\t\"./modules/Student/initialPasswordChange.js\": 60582,\n\t\"./modules/Student/loginModule\": 57350,\n\t\"./modules/Student/loginModule.js\": 57350,\n\t\"./modules/Student/passwordResetModule\": 88739,\n\t\"./modules/Student/passwordResetModule.js\": 88739,\n\t\"./modules/components/corporateBookmark\": 43347,\n\t\"./modules/components/corporateBookmark.js\": 43347,\n\t\"./modules/components/corporatePaperInfo\": 34417,\n\t\"./modules/components/corporatePaperInfo.js\": 34417,\n\t\"./modules/components/corporationBookmark\": 37086,\n\t\"./modules/components/corporationBookmark.js\": 37086,\n\t\"./modules/components/facilityInfoModule\": 4499,\n\t\"./modules/components/facilityInfoModule.js\": 4499,\n\t\"./pages/Admin/Corporate/Create\": 86260,\n\t\"./pages/Admin/Corporate/Create.jsx\": 86260,\n\t\"./pages/Admin/Corporate/Detail\": 70795,\n\t\"./pages/Admin/Corporate/Detail.jsx\": 70795,\n\t\"./pages/Admin/Corporate/FacilityTourApplicant/Create\": 33164,\n\t\"./pages/Admin/Corporate/FacilityTourApplicant/Create.jsx\": 33164,\n\t\"./pages/Admin/Corporate/FacilityTourApplicant/hooks/useCreate\": 26574,\n\t\"./pages/Admin/Corporate/FacilityTourApplicant/hooks/useCreate.js\": 26574,\n\t\"./pages/Admin/Corporate/List\": 87340,\n\t\"./pages/Admin/Corporate/List.jsx\": 87340,\n\t\"./pages/Admin/CorporateManager/Create\": 58331,\n\t\"./pages/Admin/CorporateManager/Create.jsx\": 58331,\n\t\"./pages/Admin/CorporateManager/Detail\": 37720,\n\t\"./pages/Admin/CorporateManager/Detail.jsx\": 37720,\n\t\"./pages/Admin/CorporateManager/SelectCorporate\": 31998,\n\t\"./pages/Admin/CorporateManager/SelectCorporate.jsx\": 31998,\n\t\"./pages/Admin/CorporateManager/hooks/useCreate\": 70773,\n\t\"./pages/Admin/CorporateManager/hooks/useCreate.js\": 70773,\n\t\"./pages/Admin/CorporateManager/hooks/useDetail\": 19132,\n\t\"./pages/Admin/CorporateManager/hooks/useDetail.js\": 19132,\n\t\"./pages/Admin/CorporateManager/hooks/useSelectCorporate\": 28870,\n\t\"./pages/Admin/CorporateManager/hooks/useSelectCorporate.js\": 28870,\n\t\"./pages/Admin/Facility/Create\": 52464,\n\t\"./pages/Admin/Facility/Create.jsx\": 52464,\n\t\"./pages/Admin/Facility/Detail\": 52687,\n\t\"./pages/Admin/Facility/Detail.jsx\": 52687,\n\t\"./pages/Admin/Facility/List\": 36304,\n\t\"./pages/Admin/Facility/List.jsx\": 36304,\n\t\"./pages/Admin/FacilityTourApplicantOption/Detail\": 66898,\n\t\"./pages/Admin/FacilityTourApplicantOption/Detail.jsx\": 66898,\n\t\"./pages/Admin/FacilityTourApplicantOption/Facility/List\": 43139,\n\t\"./pages/Admin/FacilityTourApplicantOption/Facility/List.jsx\": 43139,\n\t\"./pages/Admin/FacilityTourApplicantOption/Facility/useList\": 38786,\n\t\"./pages/Admin/FacilityTourApplicantOption/Facility/useList.js\": 38786,\n\t\"./pages/Admin/FacilityTourApplicantOption/School/List\": 34998,\n\t\"./pages/Admin/FacilityTourApplicantOption/School/List.jsx\": 34998,\n\t\"./pages/Admin/FacilityTourApplicantOption/School/useList\": 27243,\n\t\"./pages/Admin/FacilityTourApplicantOption/School/useList.js\": 27243,\n\t\"./pages/Admin/Manual/Create\": 17687,\n\t\"./pages/Admin/Manual/Create.jsx\": 17687,\n\t\"./pages/Admin/Manual/Detail\": 5500,\n\t\"./pages/Admin/Manual/Detail.jsx\": 5500,\n\t\"./pages/Admin/Manual/hooks/useCreate\": 73017,\n\t\"./pages/Admin/Manual/hooks/useCreate.js\": 73017,\n\t\"./pages/Admin/Manual/hooks/useDetail\": 56856,\n\t\"./pages/Admin/Manual/hooks/useDetail.js\": 56856,\n\t\"./pages/Admin/School/Create\": 7553,\n\t\"./pages/Admin/School/Create.jsx\": 7553,\n\t\"./pages/Admin/School/Detail\": 27910,\n\t\"./pages/Admin/School/Detail.jsx\": 27910,\n\t\"./pages/Admin/School/List\": 13453,\n\t\"./pages/Admin/School/List.jsx\": 13453,\n\t\"./pages/Admin/School/User/Create\": 92349,\n\t\"./pages/Admin/School/User/Create.jsx\": 92349,\n\t\"./pages/Admin/School/User/Detail\": 18890,\n\t\"./pages/Admin/School/User/Detail.jsx\": 18890,\n\t\"./pages/Admin/School/User/List\": 87601,\n\t\"./pages/Admin/School/User/List.jsx\": 87601,\n\t\"./pages/Admin/School/components/SchoolYearSelectModal\": 95986,\n\t\"./pages/Admin/School/components/SchoolYearSelectModal.jsx\": 95986,\n\t\"./pages/Admin/School/hooks/useCreate\": 27707,\n\t\"./pages/Admin/School/hooks/useCreate.js\": 27707,\n\t\"./pages/Admin/School/hooks/useDetail\": 86866,\n\t\"./pages/Admin/School/hooks/useDetail.js\": 86866,\n\t\"./pages/Admin/StudentApplicant/Detail\": 63205,\n\t\"./pages/Admin/StudentApplicant/Detail.jsx\": 63205,\n\t\"./pages/Admin/StudentApplicant/List\": 51170,\n\t\"./pages/Admin/StudentApplicant/List.jsx\": 51170,\n\t\"./pages/MyCorporate/Corporate/Detail\": 28169,\n\t\"./pages/MyCorporate/Corporate/Detail.jsx\": 28169,\n\t\"./pages/MyCorporate/CorporateManager/Create\": 77457,\n\t\"./pages/MyCorporate/CorporateManager/Create.jsx\": 77457,\n\t\"./pages/MyCorporate/CorporateManager/Detail\": 50838,\n\t\"./pages/MyCorporate/CorporateManager/Detail.jsx\": 50838,\n\t\"./pages/MyCorporate/CorporateManager/List\": 16285,\n\t\"./pages/MyCorporate/CorporateManager/List.jsx\": 16285,\n\t\"./pages/MyCorporate/Event/Create\": 41293,\n\t\"./pages/MyCorporate/Event/Create.jsx\": 41293,\n\t\"./pages/MyCorporate/Event/Detail\": 11258,\n\t\"./pages/MyCorporate/Event/Detail.jsx\": 11258,\n\t\"./pages/MyCorporate/Event/EventApplicant/List\": 60844,\n\t\"./pages/MyCorporate/Event/EventApplicant/List.jsx\": 60844,\n\t\"./pages/MyCorporate/Event/Facility/List\": 57643,\n\t\"./pages/MyCorporate/Event/Facility/List.jsx\": 57643,\n\t\"./pages/MyCorporate/Event/List\": 95233,\n\t\"./pages/MyCorporate/Event/List.jsx\": 95233,\n\t\"./pages/MyCorporate/Event/School/List\": 54430,\n\t\"./pages/MyCorporate/Event/School/List.jsx\": 54430,\n\t\"./pages/MyCorporate/Event/components/DeleteModal\": 41816,\n\t\"./pages/MyCorporate/Event/components/DeleteModal.jsx\": 41816,\n\t\"./pages/MyCorporate/Event/components/EndRecruitmentConfirmModal\": 29162,\n\t\"./pages/MyCorporate/Event/components/EndRecruitmentConfirmModal.jsx\": 29162,\n\t\"./pages/MyCorporate/Event/components/RelatedFacilityModal\": 48499,\n\t\"./pages/MyCorporate/Event/components/RelatedFacilityModal.jsx\": 48499,\n\t\"./pages/MyCorporate/Event/components/RelatedSchoolModal\": 2362,\n\t\"./pages/MyCorporate/Event/components/RelatedSchoolModal.jsx\": 2362,\n\t\"./pages/MyCorporate/Event/hooks/useCreate\": 53567,\n\t\"./pages/MyCorporate/Event/hooks/useCreate.js\": 53567,\n\t\"./pages/MyCorporate/Event/hooks/useDetail\": 48846,\n\t\"./pages/MyCorporate/Event/hooks/useDetail.js\": 48846,\n\t\"./pages/MyCorporate/Event/hooks/useEventApplicantList\": 30209,\n\t\"./pages/MyCorporate/Event/hooks/useEventApplicantList.js\": 30209,\n\t\"./pages/MyCorporate/Event/hooks/useFacilityList\": 50550,\n\t\"./pages/MyCorporate/Event/hooks/useFacilityList.js\": 50550,\n\t\"./pages/MyCorporate/Event/hooks/useSchoolList\": 85583,\n\t\"./pages/MyCorporate/Event/hooks/useSchoolList.js\": 85583,\n\t\"./pages/MyCorporate/EventApplicant/Detail\": 20794,\n\t\"./pages/MyCorporate/EventApplicant/Detail.jsx\": 20794,\n\t\"./pages/MyCorporate/EventApplicant/List\": 54081,\n\t\"./pages/MyCorporate/EventApplicant/List.jsx\": 54081,\n\t\"./pages/MyCorporate/EventApplicant/hooks/useList\": 99083,\n\t\"./pages/MyCorporate/EventApplicant/hooks/useList.js\": 99083,\n\t\"./pages/MyCorporate/Facility/Create\": 64886,\n\t\"./pages/MyCorporate/Facility/Create.jsx\": 64886,\n\t\"./pages/MyCorporate/Facility/Detail\": 49181,\n\t\"./pages/MyCorporate/Facility/Detail.jsx\": 49181,\n\t\"./pages/MyCorporate/Facility/Modal/DeleteModal\": 50978,\n\t\"./pages/MyCorporate/Facility/Modal/DeleteModal.jsx\": 50978,\n\t\"./pages/MyCorporate/Facility/Modal/DisconnectModal\": 61427,\n\t\"./pages/MyCorporate/Facility/Modal/DisconnectModal.jsx\": 61427,\n\t\"./pages/MyCorporate/Facility/SearchableList\": 83454,\n\t\"./pages/MyCorporate/Facility/SearchableList.jsx\": 83454,\n\t\"./pages/MyCorporate/Home\": 4631,\n\t\"./pages/MyCorporate/Home.jsx\": 4631,\n\t\"./pages/MyCorporate/Inquiry/Create\": 99508,\n\t\"./pages/MyCorporate/Inquiry/Create.jsx\": 99508,\n\t\"./pages/MyCorporate/Inquiry/Success\": 2167,\n\t\"./pages/MyCorporate/Inquiry/Success.jsx\": 2167,\n\t\"./pages/MyCorporate/Inquiry/hooks/useCreate\": 1142,\n\t\"./pages/MyCorporate/Inquiry/hooks/useCreate.js\": 1142,\n\t\"./pages/MyCorporate/IntroductionSchool/List\": 53123,\n\t\"./pages/MyCorporate/IntroductionSchool/List.jsx\": 53123,\n\t\"./pages/MyCorporate/Login\": 5467,\n\t\"./pages/MyCorporate/Login.jsx\": 5467,\n\t\"./pages/MyCorporate/Manual/List\": 21605,\n\t\"./pages/MyCorporate/Manual/List.jsx\": 21605,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/Complete\": 20163,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/Complete.jsx\": 20163,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/Detail\": 85045,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/Detail.jsx\": 85045,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/FacilityListPage\": 63236,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/FacilityListPage.jsx\": 63236,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/ConfirmModal\": 3084,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/ConfirmModal.jsx\": 3084,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/RestartConfirmModal\": 24057,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/RestartConfirmModal.jsx\": 24057,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/Step\": 72497,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/Step.jsx\": 72497,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/StopConfirmModal\": 14532,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/components/StopConfirmModal.jsx\": 14532,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/hooks/useDetail\": 74389,\n\t\"./pages/MyCorporate/Option/FacilityTourApplicant/hooks/useDetail.js\": 74389,\n\t\"./pages/MyCorporate/Option/List\": 88534,\n\t\"./pages/MyCorporate/Option/List.jsx\": 88534,\n\t\"./pages/MyCorporate/Option/components/OptionButton\": 36852,\n\t\"./pages/MyCorporate/Option/components/OptionButton.jsx\": 36852,\n\t\"./pages/MyCorporate/Option/hooks/useList\": 38268,\n\t\"./pages/MyCorporate/Option/hooks/useList.js\": 38268,\n\t\"./pages/MyCorporate/PasswordReset\": 76776,\n\t\"./pages/MyCorporate/PasswordReset.jsx\": 76776,\n\t\"./pages/MyCorporate/Recruitment/Create\": 17039,\n\t\"./pages/MyCorporate/Recruitment/Create.jsx\": 17039,\n\t\"./pages/MyCorporate/Recruitment/Detail\": 48948,\n\t\"./pages/MyCorporate/Recruitment/Detail.jsx\": 48948,\n\t\"./pages/MyCorporate/Recruitment/Facility/AdditionalList\": 83650,\n\t\"./pages/MyCorporate/Recruitment/Facility/AdditionalList.jsx\": 83650,\n\t\"./pages/MyCorporate/Recruitment/Facility/List\": 50561,\n\t\"./pages/MyCorporate/Recruitment/Facility/List.jsx\": 50561,\n\t\"./pages/MyCorporate/Recruitment/List\": 34807,\n\t\"./pages/MyCorporate/Recruitment/List.jsx\": 34807,\n\t\"./pages/MyCorporate/Recruitment/School/AdditionalList\": 64207,\n\t\"./pages/MyCorporate/Recruitment/School/AdditionalList.jsx\": 64207,\n\t\"./pages/MyCorporate/Recruitment/School/List\": 13236,\n\t\"./pages/MyCorporate/Recruitment/School/List.jsx\": 13236,\n\t\"./pages/MyCorporate/Recruitment/commonFunc\": 26886,\n\t\"./pages/MyCorporate/Recruitment/commonFunc.js\": 26886,\n\t\"./pages/MyCorporate/Recruitment/components/CloseRecruitmentModal\": 42183,\n\t\"./pages/MyCorporate/Recruitment/components/CloseRecruitmentModal.jsx\": 42183,\n\t\"./pages/MyCorporate/Recruitment/components/CopyRecruitmentModal\": 55262,\n\t\"./pages/MyCorporate/Recruitment/components/CopyRecruitmentModal.jsx\": 55262,\n\t\"./pages/MyCorporate/Recruitment/components/RelatedFacilityModal\": 45125,\n\t\"./pages/MyCorporate/Recruitment/components/RelatedFacilityModal.jsx\": 45125,\n\t\"./pages/MyCorporate/Recruitment/components/RelatedSchoolModal\": 860,\n\t\"./pages/MyCorporate/Recruitment/components/RelatedSchoolModal.jsx\": 860,\n\t\"./pages/MyCorporate/Recruitment/components/ReopenRecruitmentModal\": 57582,\n\t\"./pages/MyCorporate/Recruitment/components/ReopenRecruitmentModal.jsx\": 57582,\n\t\"./pages/MyCorporate/Recruitment/components/YearTabs\": 80659,\n\t\"./pages/MyCorporate/Recruitment/components/YearTabs.jsx\": 80659,\n\t\"./pages/MyCorporate/YouthEmployment/Create\": 92352,\n\t\"./pages/MyCorporate/YouthEmployment/Create.jsx\": 92352,\n\t\"./pages/MyCorporate/YouthEmployment/Detail\": 41343,\n\t\"./pages/MyCorporate/YouthEmployment/Detail.jsx\": 41343,\n\t\"./pages/MyCorporate/YouthEmployment/Form\": 50022,\n\t\"./pages/MyCorporate/YouthEmployment/Form.jsx\": 50022,\n\t\"./pages/MyCorporate/YouthEmployment/hooks/useCreate\": 6250,\n\t\"./pages/MyCorporate/YouthEmployment/hooks/useCreate.js\": 6250,\n\t\"./pages/School/Advisor/Create\": 5102,\n\t\"./pages/School/Advisor/Create.jsx\": 5102,\n\t\"./pages/School/Advisor/Form\": 52688,\n\t\"./pages/School/Advisor/Form.jsx\": 52688,\n\t\"./pages/School/Advisor/List\": 84946,\n\t\"./pages/School/Advisor/List.jsx\": 84946,\n\t\"./pages/School/Advisor/Update\": 62741,\n\t\"./pages/School/Advisor/Update.jsx\": 62741,\n\t\"./pages/School/AggregateExport\": 1890,\n\t\"./pages/School/AggregateExport.jsx\": 1890,\n\t\"./pages/School/Corporate/Detail\": 24826,\n\t\"./pages/School/Corporate/Detail.jsx\": 24826,\n\t\"./pages/School/Corporate/Recruitment/Create\": 96660,\n\t\"./pages/School/Corporate/Recruitment/Create.jsx\": 96660,\n\t\"./pages/School/Corporate/Recruitment/FacilityTable\": 47803,\n\t\"./pages/School/Corporate/Recruitment/FacilityTable.jsx\": 47803,\n\t\"./pages/School/Corporate/SearchableList\": 95413,\n\t\"./pages/School/Corporate/SearchableList.jsx\": 95413,\n\t\"./pages/School/Corporate/YouthEmployment/Info\": 34575,\n\t\"./pages/School/Corporate/YouthEmployment/Info.jsx\": 34575,\n\t\"./pages/School/Facility/Detail\": 95240,\n\t\"./pages/School/Facility/Detail.jsx\": 95240,\n\t\"./pages/School/Facility/Event/Info\": 95892,\n\t\"./pages/School/Facility/Event/Info.jsx\": 95892,\n\t\"./pages/School/Facility/Introduction/Info\": 80580,\n\t\"./pages/School/Facility/Introduction/Info.jsx\": 80580,\n\t\"./pages/School/Facility/Recruitment/Create\": 25286,\n\t\"./pages/School/Facility/Recruitment/Create.jsx\": 25286,\n\t\"./pages/School/Facility/Recruitment/hooks/useCreate\": 95688,\n\t\"./pages/School/Facility/Recruitment/hooks/useCreate.js\": 95688,\n\t\"./pages/School/Facility/SearchableList\": 69263,\n\t\"./pages/School/Facility/SearchableList.jsx\": 69263,\n\t\"./pages/School/Form\": 51791,\n\t\"./pages/School/Form.jsx\": 51791,\n\t\"./pages/School/Home\": 66520,\n\t\"./pages/School/Home.jsx\": 66520,\n\t\"./pages/School/InitialPasswordChange\": 31030,\n\t\"./pages/School/InitialPasswordChange.jsx\": 31030,\n\t\"./pages/School/Inquiry/Create\": 48511,\n\t\"./pages/School/Inquiry/Create.jsx\": 48511,\n\t\"./pages/School/Inquiry/Success\": 85646,\n\t\"./pages/School/Inquiry/Success.jsx\": 85646,\n\t\"./pages/School/Inquiry/hooks/useCreate\": 57057,\n\t\"./pages/School/Inquiry/hooks/useCreate.js\": 57057,\n\t\"./pages/School/Login\": 90102,\n\t\"./pages/School/Login.jsx\": 90102,\n\t\"./pages/School/Manual/List\": 81052,\n\t\"./pages/School/Manual/List.jsx\": 81052,\n\t\"./pages/School/PasswordReset\": 72797,\n\t\"./pages/School/PasswordReset.jsx\": 72797,\n\t\"./pages/School/Recruitment/List\": 93564,\n\t\"./pages/School/Recruitment/List.jsx\": 93564,\n\t\"./pages/School/Recruitment/hooks/useList\": 99594,\n\t\"./pages/School/Recruitment/hooks/useList.js\": 99594,\n\t\"./pages/School/Student/SearchableList\": 68641,\n\t\"./pages/School/Student/SearchableList.jsx\": 68641,\n\t\"./pages/School/Student/Update\": 15662,\n\t\"./pages/School/Student/Update.jsx\": 15662,\n\t\"./pages/School/Student/components/StudentCreationBySchoolModal\": 91334,\n\t\"./pages/School/Student/components/StudentCreationBySchoolModal.jsx\": 91334,\n\t\"./pages/School/Student/components/StudentCreationByStudentModal\": 31549,\n\t\"./pages/School/Student/components/StudentCreationByStudentModal.jsx\": 31549,\n\t\"./pages/School/Student/components/StudentCreationTypeSelectModal\": 54475,\n\t\"./pages/School/Student/components/StudentCreationTypeSelectModal.jsx\": 54475,\n\t\"./pages/School/hooks/useInitialPasswordChange\": 34146,\n\t\"./pages/School/hooks/useInitialPasswordChange.js\": 34146,\n\t\"./pages/School/hooks/usePasswordReset\": 6415,\n\t\"./pages/School/hooks/usePasswordReset.js\": 6415,\n\t\"./pages/Student/ApplicantHistory/Detail\": 53404,\n\t\"./pages/Student/ApplicantHistory/Detail.jsx\": 53404,\n\t\"./pages/Student/ApplicantHistory/Event/Detail\": 75987,\n\t\"./pages/Student/ApplicantHistory/Event/Detail.jsx\": 75987,\n\t\"./pages/Student/ApplicantHistory/Event/List\": 38292,\n\t\"./pages/Student/ApplicantHistory/Event/List.jsx\": 38292,\n\t\"./pages/Student/ApplicantHistory/List\": 21151,\n\t\"./pages/Student/ApplicantHistory/List.jsx\": 21151,\n\t\"./pages/Student/Bookmark/EventList\": 16381,\n\t\"./pages/Student/Bookmark/EventList.jsx\": 16381,\n\t\"./pages/Student/Bookmark/List\": 55685,\n\t\"./pages/Student/Bookmark/List.jsx\": 55685,\n\t\"./pages/Student/Corporate/EnmapUsingDetail\": 52120,\n\t\"./pages/Student/Corporate/EnmapUsingDetail.jsx\": 52120,\n\t\"./pages/Student/Corporate/Facility/RelatedList\": 17427,\n\t\"./pages/Student/Corporate/Facility/RelatedList.jsx\": 17427,\n\t\"./pages/Student/Corporate/YouthEmployment/EnmapUsingDetail\": 29850,\n\t\"./pages/Student/Corporate/YouthEmployment/EnmapUsingDetail.jsx\": 29850,\n\t\"./pages/Student/Corporation/EnmapUsingDetail\": 77881,\n\t\"./pages/Student/Corporation/EnmapUsingDetail.jsx\": 77881,\n\t\"./pages/Student/Corporation/YouthEmployment/Detail\": 18772,\n\t\"./pages/Student/Corporation/YouthEmployment/Detail.jsx\": 18772,\n\t\"./pages/Student/Event/Applicant\": 38105,\n\t\"./pages/Student/Event/Applicant.jsx\": 38105,\n\t\"./pages/Student/Event/ApplicantConfirm\": 43913,\n\t\"./pages/Student/Event/ApplicantConfirm.jsx\": 43913,\n\t\"./pages/Student/Event/ApplicantSuccess\": 57732,\n\t\"./pages/Student/Event/ApplicantSuccess.jsx\": 57732,\n\t\"./pages/Student/Event/Detail\": 47368,\n\t\"./pages/Student/Event/Detail.jsx\": 47368,\n\t\"./pages/Student/Event/EventDateResultList\": 82408,\n\t\"./pages/Student/Event/EventDateResultList.jsx\": 82408,\n\t\"./pages/Student/Event/FacilitySearch/Result\": 22502,\n\t\"./pages/Student/Event/FacilitySearch/Result.jsx\": 22502,\n\t\"./pages/Student/Event/RelatedFacilityList\": 6245,\n\t\"./pages/Student/Event/RelatedFacilityList.jsx\": 6245,\n\t\"./pages/Student/Event/Search\": 91663,\n\t\"./pages/Student/Event/Search.jsx\": 91663,\n\t\"./pages/Student/Event/Search/Result\": 54603,\n\t\"./pages/Student/Event/Search/Result.jsx\": 54603,\n\t\"./pages/Student/Event/hooks/useApplicant\": 45031,\n\t\"./pages/Student/Event/hooks/useApplicant.js\": 45031,\n\t\"./pages/Student/Event/hooks/useApplicantConfirm\": 15583,\n\t\"./pages/Student/Event/hooks/useApplicantConfirm.js\": 15583,\n\t\"./pages/Student/Event/hooks/useDetail\": 25100,\n\t\"./pages/Student/Event/hooks/useDetail.js\": 25100,\n\t\"./pages/Student/Event/hooks/useSearch\": 96097,\n\t\"./pages/Student/Event/hooks/useSearch.js\": 96097,\n\t\"./pages/Student/Facility/Applicant/Confirm\": 33841,\n\t\"./pages/Student/Facility/Applicant/Confirm.jsx\": 33841,\n\t\"./pages/Student/Facility/Applicant/Create\": 42853,\n\t\"./pages/Student/Facility/Applicant/Create.jsx\": 42853,\n\t\"./pages/Student/Facility/Applicant/Success\": 48684,\n\t\"./pages/Student/Facility/Applicant/Success.jsx\": 48684,\n\t\"./pages/Student/Facility/Applicant/hooks/useConfirm\": 83019,\n\t\"./pages/Student/Facility/Applicant/hooks/useConfirm.js\": 83019,\n\t\"./pages/Student/Facility/Applicant/hooks/useCreate\": 52119,\n\t\"./pages/Student/Facility/Applicant/hooks/useCreate.js\": 52119,\n\t\"./pages/Student/Facility/Recruitment/EnmapUsingDetail\": 96149,\n\t\"./pages/Student/Facility/Recruitment/EnmapUsingDetail.jsx\": 96149,\n\t\"./pages/Student/GlobalLogin\": 35314,\n\t\"./pages/Student/GlobalLogin.jsx\": 35314,\n\t\"./pages/Student/GlobalPasswordReset\": 91033,\n\t\"./pages/Student/GlobalPasswordReset.jsx\": 91033,\n\t\"./pages/Student/Home\": 1821,\n\t\"./pages/Student/Home.jsx\": 1821,\n\t\"./pages/Student/InitialPasswordChange\": 88913,\n\t\"./pages/Student/InitialPasswordChange.jsx\": 88913,\n\t\"./pages/Student/Login\": 13533,\n\t\"./pages/Student/Login.jsx\": 13533,\n\t\"./pages/Student/PasswordReset\": 83634,\n\t\"./pages/Student/PasswordReset.jsx\": 83634,\n\t\"./pages/Student/Recruitment/Corporation/LatestList\": 70297,\n\t\"./pages/Student/Recruitment/Corporation/LatestList.jsx\": 70297,\n\t\"./pages/Student/Recruitment/School/CorporateSearch\": 37893,\n\t\"./pages/Student/Recruitment/School/CorporateSearch.jsx\": 37893,\n\t\"./pages/Student/Recruitment/School/CorporateSearch/Result\": 98465,\n\t\"./pages/Student/Recruitment/School/CorporateSearch/Result.jsx\": 98465,\n\t\"./pages/Student/Recruitment/School/FacilitySearch\": 80385,\n\t\"./pages/Student/Recruitment/School/FacilitySearch.jsx\": 80385,\n\t\"./pages/Student/Recruitment/School/FacilitySearch/Result\": 51149,\n\t\"./pages/Student/Recruitment/School/FacilitySearch/Result.jsx\": 51149,\n\t\"./pages/Student/Recruitment/School/LatestList\": 27855,\n\t\"./pages/Student/Recruitment/School/LatestList.jsx\": 27855,\n\t\"./pages/Student/Recruitment/School/TypeFacilityCorporateSearch/Result\": 65742,\n\t\"./pages/Student/Recruitment/School/TypeFacilityCorporateSearch/Result.jsx\": 65742,\n\t\"./pages/Student/Recruitment/School/TypeFacilityCorporateSearch/Search\": 91465,\n\t\"./pages/Student/Recruitment/School/TypeFacilityCorporateSearch/Search.jsx\": 91465,\n\t\"./pages/Student/Recruitment/School/TypeFacilityCorporateSearch/hooks/useSearch\": 87187,\n\t\"./pages/Student/Recruitment/School/TypeFacilityCorporateSearch/hooks/useSearch.js\": 87187,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/LatestList\": 54947,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/LatestList.jsx\": 54947,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/Result\": 55461,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/Result.jsx\": 55461,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/Search\": 91578,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/Search.jsx\": 91578,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/hooks/useSearch\": 49480,\n\t\"./pages/Student/Recruitment/School/TypeFacilitySearch/hooks/useSearch.js\": 49480,\n\t\"./pages/Student/Registration/Complete\": 52645,\n\t\"./pages/Student/Registration/Complete.jsx\": 52645,\n\t\"./pages/Student/Registration/Step1\": 58893,\n\t\"./pages/Student/Registration/Step1.jsx\": 58893,\n\t\"./pages/Student/Registration/Step2\": 78614,\n\t\"./pages/Student/Registration/Step2.jsx\": 78614,\n\t\"./pages/Student/Registration/hooks/useStep1\": 86017,\n\t\"./pages/Student/Registration/hooks/useStep1.js\": 86017,\n\t\"./pages/Student/Registration/hooks/useStep2\": 55880,\n\t\"./pages/Student/Registration/hooks/useStep2.js\": 55880,\n\t\"./pages/Student/Report/ActivityReport/Create\": 56639,\n\t\"./pages/Student/Report/ActivityReport/Create.jsx\": 56639,\n\t\"./pages/Student/Report/ActivityReport/Success\": 16462,\n\t\"./pages/Student/Report/ActivityReport/Success.jsx\": 16462,\n\t\"./pages/Student/Report/ActivityReport/SuccessDraft\": 82565,\n\t\"./pages/Student/Report/ActivityReport/SuccessDraft.jsx\": 82565,\n\t\"./pages/Student/Report/ActivityReport/components\": 24378,\n\t\"./pages/Student/Report/ActivityReport/components/\": 24378,\n\t\"./pages/Student/Report/ActivityReport/components/index\": 24378,\n\t\"./pages/Student/Report/ActivityReport/components/index.jsx\": 24378,\n\t\"./pages/Student/Report/CareerHope/Create\": 77940,\n\t\"./pages/Student/Report/CareerHope/Create.jsx\": 77940,\n\t\"./pages/Student/Report/CareerHope/Success\": 24343,\n\t\"./pages/Student/Report/CareerHope/Success.jsx\": 24343,\n\t\"./pages/Student/Report/FacilitySearch\": 13000,\n\t\"./pages/Student/Report/FacilitySearch.jsx\": 13000,\n\t\"./pages/Student/Report/FacilitySearchResult\": 95719,\n\t\"./pages/Student/Report/FacilitySearchResult.jsx\": 95719,\n\t\"./pages/Student/Report/OfferReport/Create\": 10372,\n\t\"./pages/Student/Report/OfferReport/Create.jsx\": 10372,\n\t\"./pages/Student/Report/OfferReport/Success\": 66407,\n\t\"./pages/Student/Report/OfferReport/Success.jsx\": 66407,\n\t\"./pages/Student/Report/OfferReport/components\": 16861,\n\t\"./pages/Student/Report/OfferReport/components/\": 16861,\n\t\"./pages/Student/Report/OfferReport/components/index\": 16861,\n\t\"./pages/Student/Report/OfferReport/components/index.jsx\": 16861,\n\t\"./pages/Student/Report/ReportTypeList\": 93369,\n\t\"./pages/Student/Report/ReportTypeList.jsx\": 93369,\n\t\"./pages/Student/Report/TypeFacilitySearch/Result\": 26730,\n\t\"./pages/Student/Report/TypeFacilitySearch/Result.jsx\": 26730,\n\t\"./pages/Student/Report/TypeFacilitySearch/Search\": 62205,\n\t\"./pages/Student/Report/TypeFacilitySearch/Search.jsx\": 62205,\n\t\"./pages/Student/Report/TypeFacilitySearch/hooks/useSearch\": 6207,\n\t\"./pages/Student/Report/TypeFacilitySearch/hooks/useSearch.js\": 6207,\n\t\"./pages/Student/Report/components\": 97570,\n\t\"./pages/Student/Report/components/\": 97570,\n\t\"./pages/Student/Report/components/index\": 97570,\n\t\"./pages/Student/Report/components/index.jsx\": 97570,\n\t\"./pages/Student/ViewFacilityHistory/List\": 50599,\n\t\"./pages/Student/ViewFacilityHistory/List.jsx\": 50599,\n\t\"./utils/prefecture\": 92396,\n\t\"./utils/prefecture.js\": 92396\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 57833;","import HttpRequest from '../../../utils/HttpRequest';\n\nexport const updateFacilityTourApplicantOption = async (data) => {\n return await HttpRequest.patch(\n '/api/my_corporate/options/facility_tour_applicant',\n data,\n );\n};\n\nexport const deleteFacilityTourApplicantOption = async () => {\n return await HttpRequest.delete(\n '/api/my_corporate/options/facility_tour_applicant',\n );\n};\n\nexport const restartFacilityTourApplicantOption = async () => {\n return await HttpRequest.patch(\n '/api/my_corporate/options/facility_tour_applicant',\n {\n restart: true,\n },\n );\n};\n","import HttpRequest from '../utils/HttpRequest';\nimport { auth } from '../utils/firebase';\n\nexport const fetchCities = async (prefCode) => {\n return await HttpRequest.get(\n `/api/search/cities?prefecture=${prefCode}`,\n ).then(({ data: { cities } }) => cities);\n};\n\nexport const fetchMe = async () => {\n return await HttpRequest.get('/api/user').then(({ data }) => data);\n};\n\nexport const signOut = async () => {\n await HttpRequest.delete('/api/sessions');\n return await auth.signOut();\n};\n\nexport const postLogin = async (id_token) => {\n return await HttpRequest.post('/api/sessions', {\n id_token,\n });\n};\n","// Load all the channels within this directory and all subdirectories.\n// Channel files must be named *_channel.js.\n\nconst channels = require.context('.', true, /_channel\\.js$/)\nchannels.keys().forEach(channels)\n","import { Controller } from '@hotwired/stimulus';\nimport HttpRequest from '../../../utils/HttpRequest';\n\nexport default class extends Controller {\n onDelete(e) {\n e.preventDefault();\n if (confirm('この施設の利用を取り消しますか?')) {\n HttpRequest.delete(e.params.url).then(() => {\n window.location.reload();\n });\n }\n return false;\n }\n}\n","import { Controller } from '@hotwired/stimulus';\n\nexport default class extends Controller {\n static targets = ['submit'];\n\n onSelectChanged() {\n // this.submitTarget.click();\n }\n}\n","import { Controller } from '@hotwired/stimulus';\nimport { getAuth, onAuthStateChanged } from 'firebase/auth';\nimport { USER_TYPE } from '../../utils/constant';\nimport { auth } from '../../utils/firebase';\nimport { signOut, postLogin } from '../../api/common';\n\nexport default class extends Controller {\n static targets = ['error', 'email', 'password', 'submit'];\n static values = { email: String, password: String };\n\n connect() {\n const _auth = getAuth();\n onAuthStateChanged(_auth, async (user) => {\n if (!user) {\n return Promise.resolve();\n }\n this.showLoading();\n const idToken = await user.getIdToken(true);\n try {\n const {\n data: { user_type },\n } = await postLogin(idToken);\n if (user_type === USER_TYPE.ADMIN) {\n location.href = '/admin';\n } else {\n try {\n await signOut();\n } finally {\n this.setError('管理者としてログインしてください。');\n }\n }\n } catch (e) {\n console.error(e);\n this.hideLoading();\n }\n });\n }\n\n async onSubmit() {\n this.showLoading();\n this.clearError();\n this.lockForm();\n try {\n await auth.signInWithEmailAndPassword(\n this.emailValue,\n this.passwordValue,\n );\n } catch (e) {\n console.error(e);\n this.hideLoading();\n this.setError('メールアドレスまたはパスワードが間違っています。');\n this.unlockForm();\n }\n }\n\n lockForm() {\n this.emailTarget.disabled = true;\n this.passwordTarget.disabled = true;\n this.submitTarget.disabled = true;\n }\n\n unlockForm() {\n this.emailTarget.disabled = false;\n this.passwordTarget.disabled = false;\n this.submitTarget.disabled = false;\n }\n\n showLoading() {\n // loading_controller.jsのshowLoading()を呼び出す\n this.application\n .getControllerForElementAndIdentifier(\n document.getElementById('overlay-loading'),\n 'loading',\n )\n .showLoading();\n }\n\n hideLoading() {\n // loading_controller.jsのhideLoading()を呼び出す\n this.application\n .getControllerForElementAndIdentifier(\n document.getElementById('overlay-loading'),\n 'loading',\n )\n .hideLoading();\n }\n\n changeEmail(event) {\n this.emailValue = event.target.value;\n }\n\n changePassword(event) {\n this.passwordValue = event.target.value;\n }\n\n clearError() {\n this.errorTarget.innerText = '';\n this.errorTarget.classList.add('d-none');\n this.errorTarget.classList.remove('d-flex');\n }\n\n setError(message) {\n this.errorTarget.classList.remove('d-none');\n this.errorTarget.classList.add('d-flex');\n this.errorTarget.innerText = message;\n }\n}\n","import { Controller } from '@hotwired/stimulus';\n\nexport default class extends Controller {\n static targets = ['submit'];\n\n onCategoryChanged() {\n this.submitTarget.click();\n }\n}\n","import { Controller } from '@hotwired/stimulus';\n\nexport default class extends Controller {\n static targets = ['loader'];\n connect() {}\n\n showLoading() {\n this.loaderTarget.classList.remove('d-none');\n this.loaderTarget.classList.add('d-flex');\n }\n\n hideLoading() {\n this.loaderTarget.classList.remove('d-flex');\n this.loaderTarget.classList.add('d-none');\n }\n}\n","import { Controller } from '@hotwired/stimulus';\n\nexport default class extends Controller {\n static targets = ['password', 'toggle'];\n static values = { password: String, visible: Boolean };\n\n toggle() {\n if (this.visibleValue) {\n this.passwordTarget.innerHTML = '********';\n this.toggleTarget.classList.remove('bi-eye');\n this.toggleTarget.classList.add('bi-eye-slash');\n this.visibleValue = false;\n } else {\n this.passwordTarget.innerHTML = this.passwordValue;\n this.toggleTarget.classList.remove('bi-eye-slash');\n this.toggleTarget.classList.add('bi-eye');\n this.visibleValue = true;\n }\n }\n}\n","import { Controller } from '@hotwired/stimulus';\nimport { signOut } from '../../api/common';\n\nexport default class extends Controller {\n logout() {\n return signOut().then(() => {\n location.href = '/students/login';\n });\n }\n}\n","// Load all the controllers within this directory and all subdirectories.\n// Controller files must be named *_controller.js.\n\nimport { Application } from 'stimulus';\nimport { definitionsFromContext } from 'stimulus/webpack-helpers';\n\nconst application = Application.start();\nconst context = require.context('controllers', true, /_controller\\.js$/);\napplication.load(definitionsFromContext(context));\n\napplication.debug = location.hostname === 'localhost';\n","// This file is automatically compiled by Webpack, along with any other files\n// present in this directory. You're encouraged to place your actual application logic in\n// a relevant structure within app/javascript and only use these pack files to reference\n// that code so it'll be compiled.\n\nimport Rails from '@rails/ujs';\nimport Turbolinks from 'turbolinks';\nimport * as ActiveStorage from '@rails/activestorage';\nimport 'channels';\nimport 'jquery';\nimport 'bootstrap';\nimport '../stylesheets/application.scss';\nimport 'bootstrap/js/dist/tooltip';\nwindow.Rails = Rails;\nRails.start();\nTurbolinks.start();\nActiveStorage.start();\n\nimport 'controllers';\n\nrequire('src/map');\n// Support component names relative to this directory:\nvar componentRequireContext = require.context('react', true);\nvar ReactRailsUJS = require('react_ujs');\nReactRailsUJS.useContext(componentRequireContext);\n","import React from 'react';\n\nconst AdminBreadcrumbs = ({ items, separator = '/' }) => {\n return (\n
\n {items\n .map((item) =>\n item.href ? (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ) : (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ),\n )\n .reduce(\n (prev, curr) =>\n prev.length === 0\n ? [curr]\n : [...prev, {separator}, curr],\n [],\n )}\n
\n );\n};\n\nexport default AdminBreadcrumbs;\n","import React from 'react';\n\nconst FacilityBreadcrumbs = ({ items, separator = '/', fontSize = '14px' }) => {\n return (\n
\n {items\n .map((item) =>\n item.href ? (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ) : (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ),\n )\n .reduce(\n (prev, curr) =>\n prev.length === 0\n ? [curr]\n : [\n ...prev,\n \n {separator}\n ,\n curr,\n ],\n [],\n )}\n
\n );\n};\n\nexport default FacilityBreadcrumbs;\n","import React from 'react';\n\nconst SchoolBreadcrumbs = ({ items, separator = '/' }) => {\n return (\n \n {items\n .map((item) =>\n item.href ? (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ) : (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ),\n )\n .reduce(\n (prev, curr) =>\n prev.length === 0\n ? [curr]\n : [...prev, {separator}, curr],\n [],\n )}\n \n );\n};\n\nexport default SchoolBreadcrumbs;\n","import React from 'react';\n\nconst StudentBreadcrumbs = ({ items }) => {\n return (\n \n {items\n .map((item) =>\n item.href ? (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ) : (\n \n {item.icon && <>{item.icon} }\n {item.text}\n \n ),\n )\n .reduce(\n (prev, curr) =>\n prev.length === 0\n ? [curr]\n : [\n ...prev,\n \n \n ,\n curr,\n ],\n [],\n )}\n \n );\n};\n\nexport default StudentBreadcrumbs;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst BlackButton = (props) => {\n const {\n disabled,\n label,\n labelElement,\n leftIcon,\n rightIcon,\n width,\n height,\n iconFontSize,\n textFontSize,\n labelClassName,\n onClick,\n } = props;\n let border = '1px solid #000000';\n let bg = '#000000';\n if (disabled) {\n border = '#333333';\n bg = '#333333';\n }\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nBlackButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nBlackButton.defaultProps = {\n disabled: false,\n label: 'ボタン',\n labelElement: null,\n leftIcon: null,\n rightIcon: null,\n width: 130,\n height: 44,\n iconFontSize: 20,\n textFontSize: 10,\n labelClassName: '',\n onClick: () => {},\n};\n\nexport default BlackButton;\n","import React from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { schoolColor } from '../../../utils/constant';\n\nconst Button = ({\n disabled = false,\n label = 'ボタン',\n labelElement = null,\n leftIcon = null,\n rightIcon = null,\n width = 130,\n height = 44,\n iconFontSize = 20,\n textFontSize = 10,\n labelClassName = '',\n className = '',\n onClick = () => {},\n style = {},\n variant = 'default',\n outlined = false,\n}) => {\n const getButtonClass = () => {\n switch (variant) {\n case 'black':\n return 'btn-dark';\n case 'gray':\n return 'btn-secondary';\n case 'green':\n return 'btn-success';\n case 'orange':\n return 'btn-success';\n case 'pink':\n return 'btn-primary';\n case 'primary':\n return 'btn-primary';\n case 'facility_primary':\n return 'btn-primary';\n case 'facility_danger':\n return 'btn-danger';\n default:\n return 'btn-primary';\n }\n };\n const getColor = () => {\n switch (variant) {\n case 'black':\n if (disabled) {\n return {\n background: '#333333',\n border: '1px solid #333333',\n };\n }\n return {\n background: '#000000',\n border: '1px solid #000000',\n color: 'white',\n };\n case 'gray':\n return {\n background: '#A6A6A6',\n border: '1px solid #A6A6A6',\n };\n case 'green':\n return {\n background: '#56C400',\n border: '1px solid #56C400',\n };\n case 'orange':\n return {\n background: '#F4B183',\n border: '1px solid #F4B183',\n };\n case 'pink':\n return {\n background: outlined ? '#ffffff' : '#FF9999',\n border: '1px solid #FF9999',\n color: outlined ? '#FF9999' : 'white',\n };\n case 'primary':\n return {\n background: outlined ? '#ffffff' : '#007CC9',\n border: '1px solid #007CC9',\n color: outlined ? '#007CC9' : 'white',\n };\n case 'facility_primary':\n return {\n background: outlined ? '#ffffff' : '#4474C4',\n border: '1px solid #4474C4',\n color: outlined ? '#4474C4' : 'white',\n };\n case 'facility_danger':\n return {\n background: '#F76C7D',\n border: '1px solid #F76C7D',\n color: 'white',\n };\n case 'school_primary':\n return {\n background: schoolColor.main,\n border: `1px solid ${schoolColor.main}`,\n color: 'white',\n };\n default:\n return {\n background: 'white',\n border: '1px solid #555252',\n color: '#555252',\n };\n }\n };\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n style: PropTypes.object,\n variant: PropTypes.oneOf([\n 'black',\n 'gray',\n 'green',\n 'orange',\n 'pink',\n 'primary',\n 'facility_primary',\n 'facility_danger',\n 'school_primary',\n ]),\n outlined: PropTypes.bool,\n};\n\nexport default Button;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst DefaultButton = (props) => {\n const {\n disabled,\n label,\n labelElement,\n leftIcon,\n rightIcon,\n width,\n height,\n iconFontSize,\n textFontSize,\n labelClassName,\n onClick,\n style,\n className,\n } = props;\n\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nDefaultButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n style: PropTypes.object,\n};\n\nDefaultButton.defaultProps = {\n disabled: false,\n label: 'ボタン',\n labelElement: null,\n leftIcon: null,\n rightIcon: null,\n width: 130,\n height: 44,\n iconFontSize: 20,\n textFontSize: 10,\n labelClassName: '',\n className: '',\n onClick: () => {},\n style: {},\n};\n\nexport default DefaultButton;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst GrayButton = ({\n disabled = false,\n label = 'ボタン',\n labelElement = null,\n leftIcon = null,\n rightIcon = null,\n width = 130,\n height = 44,\n iconFontSize = 20,\n textFontSize = 10,\n labelClassName = '',\n className = '',\n onClick = () => {},\n style = {},\n outlined = false,\n pill = false,\n}) => {\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nGrayButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n style: PropTypes.object,\n outlined: PropTypes.bool,\n pill: PropTypes.bool,\n};\n\nexport default GrayButton;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nconst GreenButton = (props) => {\n const {\n disabled,\n label,\n labelElement,\n leftIcon,\n rightIcon,\n width,\n height,\n iconFontSize,\n textFontSize,\n labelClassName,\n onClick,\n style,\n className,\n buttonColor = '#56C400',\n outlined,\n pill,\n } = props;\n\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nGreenButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n style: PropTypes.object,\n outlined: PropTypes.bool,\n pill: PropTypes.bool,\n buttonColor: PropTypes.string,\n};\n\nGreenButton.defaultProps = {\n disabled: false,\n label: 'ボタン',\n labelElement: null,\n leftIcon: null,\n rightIcon: null,\n width: 130,\n height: 44,\n iconFontSize: 20,\n textFontSize: 10,\n labelClassName: '',\n onClick: () => {},\n style: {},\n outlined: false,\n className: '',\n pill: false,\n buttonColor: '#56C400',\n};\n\nexport default GreenButton;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nconst OrangeButton = (props) => {\n const {\n disabled,\n label,\n labelElement,\n leftIcon,\n rightIcon,\n width,\n height,\n iconFontSize,\n textFontSize,\n labelClassName,\n onClick,\n } = props;\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nOrangeButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nOrangeButton.defaultProps = {\n disabled: false,\n label: 'ボタン',\n labelElement: null,\n leftIcon: null,\n rightIcon: null,\n width: 130,\n height: 44,\n iconFontSize: 20,\n textFontSize: 10,\n labelClassName: '',\n onClick: () => {},\n};\n\nexport default OrangeButton;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst PinkButton = (props) => {\n const {\n disabled,\n label,\n labelElement,\n leftIcon,\n rightIcon,\n width,\n height,\n iconFontSize,\n textFontSize,\n labelClassName,\n onClick,\n style,\n className,\n outlined = false,\n pill = false,\n } = props;\n\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nPinkButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n className: PropTypes.string,\n onClick: PropTypes.func,\n style: PropTypes.object,\n outlined: PropTypes.bool,\n};\n\nPinkButton.defaultProps = {\n disabled: false,\n label: 'ボタン',\n labelElement: null,\n leftIcon: null,\n rightIcon: null,\n width: 130,\n height: 44,\n iconFontSize: 20,\n textFontSize: 10,\n labelClassName: '',\n className: '',\n onClick: () => {},\n style: {},\n outlined: false,\n};\n\nexport default PinkButton;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst PrimaryButton = ({\n disabled = false,\n label = 'ボタン',\n labelElement = null,\n leftIcon = null,\n rightIcon = null,\n width = 130,\n height = 44,\n iconFontSize = 20,\n textFontSize = 10,\n labelClassName = '',\n onClick = () => {},\n}) => {\n return (\n \n {leftIcon && (\n \n {leftIcon}\n \n )}\n {labelElement ? (\n labelElement\n ) : (\n \n {label}\n \n )}\n {rightIcon && (\n \n {rightIcon}\n \n )}\n \n );\n};\n\nPrimaryButton.propTypes = {\n disabled: PropTypes.bool,\n label: PropTypes.string,\n labelElement: PropTypes.element,\n leftIcon: PropTypes.element,\n rightIcon: PropTypes.element,\n width: PropTypes.number,\n height: PropTypes.number,\n iconFontSize: PropTypes.number,\n textFontSize: PropTypes.number,\n labelClassName: PropTypes.string,\n onClick: PropTypes.func,\n outlined: PropTypes.bool,\n};\n\nexport default PrimaryButton;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nconst OutlineButton = styled.div`\n width: ${({ width }) => width};\n height: 76px;\n border: ${({ disabled }) => `1px solid ${disabled ? '#E5E5E5' : '#555252'}`};\n border-radius: 6px;\n cursor: ${({ disabled }) => `${disabled ? 'unset' : 'pointer'}`};\n box-shadow: ${({ disabled }) =>\n `${disabled ? 'none' : '0px 4px 4px rgba(0, 0, 0, 0.25)'}`};\n background: ${({ disabled }) => `${disabled ? '#E5E5E5' : 'unset'}`};\n color: ${({ disabled }) => `${disabled ? '#555252aa' : 'unset'}`};\n`;\n\nconst ToneArea = styled.div`\n width: ${({ toneWidth }) => toneWidth};\n background: ${({ disabled, toneColor }) =>\n `${disabled ? '#cccccc33' : toneColor}`};\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n`;\n\nconst TwoToneButton = (props) => {\n const {\n label,\n toneColor,\n onClick,\n width,\n toneWidth,\n content,\n disabled = false,\n } = props;\n\n return (\n \n \n {content ? (\n content\n ) : (\n \n {label}\n \n )}\n \n );\n};\n\nTwoToneButton.propTypes = {\n label: PropTypes.string,\n toneColor: PropTypes.string,\n toneWidth: PropTypes.string,\n width: PropTypes.string,\n content: PropTypes.any,\n disabled: PropTypes.bool,\n onClick: PropTypes.func,\n};\n\nTwoToneButton.defaultProps = {\n label: 'テキスト',\n toneColor: '#FF9999',\n toneWidth: '18px',\n width: '45%',\n content: null,\n disabled: false,\n onClick: () => {},\n};\n\nexport default TwoToneButton;\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport styled from 'styled-components';\n\nconst RequiredText = styled.span`\n color: #ff9999;\n`;\nconst Label = styled.label`\n font-size: 12px;\n`;\n\nconst CitySelect = ({\n label,\n required = false,\n selectedValue,\n onChange,\n prefecture,\n defaultCities = [],\n editMode = false,\n register = {},\n}) => {\n const [cities, setCities] = useState(defaultCities);\n const [isLoading, setIsLoading] = useState(false);\n\n useEffect(() => {\n if (prefecture) {\n setIsLoading(true);\n HttpRequest.get(`/api/search/cities?prefecture=${prefecture}`).then(\n ({ data }) => {\n if (editMode) {\n setCities(\n data.cities.filter((city) => !city.name.includes('すべて')),\n );\n } else {\n setCities(data.cities);\n }\n setIsLoading(false);\n },\n );\n } else {\n setCities([]);\n }\n }, [prefecture]);\n\n return (\n <>\n {label && (\n \n )}\n \n {isLoading ? (\n \n ) : (\n <>\n \n {cities.map((city) => (\n \n {city.name}\n \n ))}\n \n )}\n \n \n );\n};\n\nCitySelect.propTypes = {\n label: PropTypes.string,\n required: PropTypes.bool,\n prefecture: PropTypes.any,\n selectedValue: PropTypes.any,\n onChange: PropTypes.func,\n defaultCities: PropTypes.array,\n editMode: PropTypes.bool,\n};\n\nexport default CitySelect;\n","import React from 'react';\nimport classNames from 'classnames';\n\nconst Content = ({ className = '', children }) => {\n return (\n \n {children}\n \n );\n};\n\nexport default Content;\n","import React, { useState } from 'react';\nimport styled from 'styled-components';\nimport BodyCell from '../Table/BodyCell';\nimport HeadCell from '../Table/HeadCell';\nimport Table from '../Table/Table';\nimport TableBody from '../Table/TableBody';\nimport TableHead from '../Table/TableHead';\nimport TableRow from '../Table/TableRow';\n\nconst Link = styled.div`\n color: #0d6efd;\n text-decoration: underline;\n &:hover {\n cursor: pointer;\n color: #0a58ca;\n }\n`;\n\nconst CorporateManagerList = ({\n data,\n targetIds = [],\n addTargetId = (_) => {},\n addAllTargets = () => {},\n removeTargetId = (_) => {},\n removeAllTargets = () => {},\n onClick,\n hideCheck = true,\n hidePosition = false,\n hideDepartment = false,\n hideIsManager = false,\n showEmail = false,\n showInitialPassword = false,\n showCorporateName = false,\n showLatestLoggedInAt = false,\n}) => {\n const [isShowPasswords, setIsShowPasswords] = useState([]);\n\n return (\n
\n \n \n {!hideCheck && (\n \n targetIds.length > 0 ? removeAllTargets() : addAllTargets()\n }>\n \n targetIds.length > 0 ? removeAllTargets() : addAllTargets()\n }\n checked={targetIds.length > 0}\n />\n \n )}\n {showCorporateName && }\n \n {showEmail && }\n {showInitialPassword && (\n \n )}\n {!hidePosition && }\n {!hideDepartment && }\n {!hideIsManager && }\n {showLatestLoggedInAt && (\n \n )}\n \n \n {data.map((corporateManager) => (\n \n {!hideCheck && (\n \n targetIds.includes(corporateManager.id)\n ? removeTargetId(corporateManager.id)\n : addTargetId(corporateManager.id)\n }>\n \n targetIds.includes(corporateManager.id)\n ? removeTargetId(corporateManager.id)\n : addTargetId(corporateManager.id)\n }\n checked={targetIds.includes(corporateManager.id)}\n value={corporateManager.id}\n />\n \n )}\n {showCorporateName && (\n \n {corporateManager.corporate_id && (\n <>{corporateManager.corporate_id}: \n )}\n {corporateManager.corporate_name}\n \n )}\n \n onClick(corporateManager.id)}>\n {corporateManager.name ?? '名称未設定'}\n \n \n\n {showEmail && {corporateManager.user.email}}\n {showInitialPassword && (\n \n
\n {isShowPasswords.includes(corporateManager.id) ? (\n <>\n {corporateManager.user.initial_password}\n \n setIsShowPasswords(\n isShowPasswords.filter(\n (id) => id !== corporateManager.id,\n ),\n )\n }>\n \n
\n \n ) : (\n <>\n ********\n {\n setIsShowPasswords([\n ...isShowPasswords,\n corporateManager.id,\n ]);\n }}>\n \n \n \n )}\n \n
\n )}\n\n {!hidePosition && (\n {corporateManager.position ?? '-'}\n )}\n {!hideDepartment && (\n {corporateManager.department ?? '-'}\n )}\n {!hideIsManager && (\n \n {corporateManager.is_admin ? '〇' : '-'}\n \n )}\n {showLatestLoggedInAt && (\n {corporateManager.latest_logged_in_at}\n )}\n
\n ))}\n
\n
\n
\n );\n};\n\nexport default CorporateManagerList;\n","import React, { useState } from 'react';\nimport styled from 'styled-components';\nimport BodyCell from '../Table/BodyCell';\nimport HeadCell from '../Table/HeadCell';\nimport Table from '../Table/Table';\nimport TableBody from '../Table/TableBody';\nimport TableHead from '../Table/TableHead';\nimport TableRow from '../Table/TableRow';\n\nconst Link = styled.div`\n color: #0d6efd;\n text-decoration: underline;\n &:hover {\n cursor: pointer;\n color: #0a58ca;\n }\n`;\n\nconst EventApplicantList = ({\n data,\n targetIds = [],\n addTargetId = (_) => {},\n addAllTargets = () => {},\n removeTargetId = (_) => {},\n removeAllTargets = () => {},\n onClick,\n hideCheck = false,\n}) => {\n return (\n
\n \n \n {!hideCheck && (\n \n targetIds.length > 0 ? removeAllTargets() : addAllTargets()\n }>\n \n targetIds.length > 0 ? removeAllTargets() : addAllTargets()\n }\n checked={targetIds.length > 0}\n />\n \n )}\n \n \n \n \n \n \n \n \n \n \n {data.map((eventApplicant) => (\n \n {!hideCheck && (\n \n targetIds.includes(eventApplicant.id)\n ? removeTargetId(eventApplicant.id)\n : addTargetId(eventApplicant.id)\n }>\n \n targetIds.includes(eventApplicant.id)\n ? removeTargetId(eventApplicant.id)\n : addTargetId(eventApplicant.id)\n }\n checked={targetIds.includes(eventApplicant.id)}\n value={eventApplicant.id}\n />\n \n )}\n \n onClick(eventApplicant.id)}>\n {eventApplicant.user_name}\n \n \n {eventApplicant.school_name}\n \n {eventApplicant.graduation_year}年度\n \n \n {eventApplicant.scheduled_acquisition_certificate_values.join(\n '、',\n )}\n \n \n {eventApplicant.applicant_date}\n \n \n {eventApplicant.contact_info ? '◯' : ''}\n \n \n {eventApplicant.parent_event.title}\n \n \n {eventApplicant.management_status === 'confirmed' ? (\n \n {eventApplicant.management_status_label}\n \n ) : (\n \n {eventApplicant.management_status_label}\n \n )}\n \n \n ))}\n \n
\n
\n );\n};\n\nexport default EventApplicantList;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Table from '../Table/Table';\nimport TableHead from '../Table/TableHead';\nimport HeadCell from '../Table/HeadCell';\nimport TableBody from '../Table/TableBody';\nimport TableRow from '../Table/TableRow';\nimport BodyCell from '../Table/BodyCell';\n\nconst SchoolList = ({\n data,\n targetIds,\n removeAllTargets,\n addAllTargets,\n removeTargetId,\n addTargetId,\n hideCheck,\n stickyHeader = false,\n disabledIds = [],\n showPlan = false,\n showDisplayFlag = false,\n}) => {\n return (\n
\n \n \n {!hideCheck && (\n \n targetIds.filter((_) => !disabledIds.includes(_)).length > 0\n ? removeAllTargets()\n : addAllTargets()\n }>\n \n targetIds.filter((_) => !disabledIds.includes(_)).length > 0\n ? removeAllTargets()\n : addAllTargets()\n }\n checked={\n targetIds.filter((_) => !disabledIds.includes(_)).length > 0\n }\n />\n \n )}\n \n {showPlan && }\n \n \n \n {showDisplayFlag && }\n \n \n {data.map((school) => (\n \n {!hideCheck && (\n {\n if (disabledIds.includes(school.id)) {\n return;\n }\n targetIds.includes(school.id)\n ? removeTargetId(school.id)\n : addTargetId(school.id);\n }}>\n {\n if (disabledIds.includes(school.id)) {\n return;\n }\n targetIds.includes(school.id)\n ? removeTargetId(school.id)\n : addTargetId(school.id);\n }}\n checked={targetIds.includes(school.id)}\n value={school.id}\n disabled={disabledIds.includes(school.id)}\n />\n \n )}\n {school.name}\n {showPlan && {school.service_plan_name}}\n \n {school.student_count ?? 0}\n \n {school.address}\n {school.tel}\n {showDisplayFlag && (\n \n {school.display_flag ? '◯' : '×'}\n \n )}\n \n ))}\n \n
\n
\n );\n};\n\nSchoolList.propTypes = {\n data: PropTypes.array,\n targetIds: PropTypes.array,\n removeTargetId: PropTypes.func,\n addTargetId: PropTypes.func,\n removeAllTargets: PropTypes.func,\n addAllTargets: PropTypes.func,\n hideCheck: PropTypes.bool,\n stickyHeader: PropTypes.bool,\n};\n\nSchoolList.defaultProps = {\n data: [],\n targetIds: [],\n removeTargetId: (_) => {},\n addTargetId: (_) => {},\n removeAllTargets: () => {},\n addAllTargets: () => {},\n hideCheck: false,\n stickyHeader: false,\n};\n\nexport default SchoolList;\n","import React from 'react';\n\nconst SchoolIcon = () => {\n return (\n \n \n \n \n );\n};\n\nexport default SchoolIcon;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst Divider = (props) => {\n const { width, className, hrClassName = '' } = props;\n\n return (\n \n
\n \n );\n};\n\nDivider.propTypes = {\n width: PropTypes.any,\n className: PropTypes.string,\n hrClassName: PropTypes.string,\n};\n\nDivider.defaultProps = {\n width: 400,\n className: '',\n hrClassName: '',\n};\n\nexport default Divider;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\ntype Props = {\n height: string;\n hrClassName: string;\n};\n\nconst VerticalDivider: React.FC = ({\n height = '30px',\n hrClassName = '',\n}) => {\n return (\n \n );\n};\n\nexport default VerticalDivider;\n","import styled from 'styled-components';\nimport React from 'react';\n\nconst Footer = styled.footer`\n background: #d9d9d9;\n color: #3e3e3e;\n @media (max-width: 992px) {\n margin-top: 2rem !important;\n }\n`;\n\nconst BasicFixedFooter = () => {\n return (\n
\n \n ©2022 kaseki,inc.\n \n
\n );\n};\n\nexport default BasicFixedFooter;\n","import React from 'react';\nimport styled from 'styled-components';\nimport classNames from 'classnames';\nconst Footer = styled.footer`\n background: #d9d9d9;\n color: #3e3e3e;\n @media (max-width: 992px) {\n margin-top: 2rem !important;\n }\n`;\nconst FacilityFooter = () => {\n const footerClass = classNames('w-100 d-flex align-items-center flex-column');\n return (\n
\n
\n
\n \n 運営会社\n \n
\n
\n \n 利用約款\n \n
\n
\n \n プライバシーポリシー\n \n
\n
\n
\n ©2022 kaseki,inc.\n
\n
\n );\n};\n\nexport default FacilityFooter;\n","import React from 'react';\nimport styled from 'styled-components';\nimport classNames from 'classnames';\nconst Footer = styled.footer`\n background: #d9d9d9;\n color: #3e3e3e;\n @media (max-width: 992px) {\n margin-top: 2rem !important;\n }\n`;\nconst SchoolFooter = () => {\n const footerClass = classNames('w-100 d-flex align-items-center flex-column');\n return (\n
\n
\n
\n \n 運営会社\n \n
\n
\n \n 利用規約\n \n
\n
\n \n プライバシーポリシー\n \n
\n
\n
\n ©2022 kaseki,inc.\n
\n
\n );\n};\n\nexport default SchoolFooter;\n","import React from 'react';\nimport styled from 'styled-components';\nimport StudentSidebarDrawer from '../StudentSidebarDrawer';\nimport HomeSVG from '../../images/home.svg';\nimport BookMarkSVG from '../../images/bookmark.svg';\nimport ReportSVG from '../../images/report.svg';\nimport MenuSVG from '../../images/menu.svg';\n\nconst Text = styled.span`\n font-size: 11px;\n`;\n\nconst StudentFooter = (props) => {\n const visibleReport =\n document.getElementById('body').dataset.visibleReport === 'true';\n return (\n \n (location.href = '/student/home')}>\n
\n \"\"\n
\n
\n ホーム\n
\n \n (location.href = '/student/bookmarks')}>\n
\n \"\"\n
\n
\n ブックマーク\n
\n \n {visibleReport && (\n (location.href = '/student/reports')}\n style={{ cursor: 'pointer' }}>\n
\n \"\"\n
\n
\n 学校へ報告\n
\n \n )}\n \n \n \"\"\n \n
\n メニュー\n
\n \n \n \n );\n};\nexport default StudentFooter;\n","import React, { useEffect } from 'react';\nimport { useLoginModule } from '../../modules/Admin/loginModule';\nimport { signOut } from '../../../api/common';\nimport EnmapLogo from '../Logo/EnmapLogo';\n\nconst AdminHeader = (props) => {\n const {\n //store\n loggedIn,\n // actions\n checkLoggedIn,\n } = useLoginModule();\n\n useEffect(() => {\n checkLoggedIn();\n }, []);\n\n const handleLogout = async () => {\n await signOut();\n location.href = '/admin/login';\n };\n\n return (\n \n );\n};\n\nAdminHeader.propTypes = {};\n\nexport default AdminHeader;\n","import React, { useEffect } from 'react';\nimport EnmapLogo from '../Logo/EnmapLogo';\nimport { useLoginModule } from '../../modules/MyCorporate/loginModule';\nimport { signOut } from '../../../api/common';\n\nconst FacilityHeader = (props) => {\n const {\n //store\n loggedIn,\n userName,\n // actions\n checkLoggedIn,\n } = useLoginModule();\n\n useEffect(() => {\n checkLoggedIn();\n }, []);\n\n const handleLogout = async () => {\n await signOut();\n location.href = '/my_corporate/login';\n };\n\n return (\n \n
\n
\n
\n (location.href = '/my_corporate/home')}\n style={{ height: '45px' }}>\n \n \n
\n \n {loggedIn && (\n <>\n
\n \n {userName && <>{userName}さん}\n
\n
\n \n マニュアル\n \n
\n
\n \n お問合せ\n \n
\n
\n\n
\n handleLogout()}\n style={{ cursor: 'pointer', textDecoration: 'none' }}>\n \n ログアウト\n \n
\n \n )}\n
\n
\n \n \n );\n};\n\nFacilityHeader.propTypes = {};\n\nexport default FacilityHeader;\n","import React, { useEffect } from 'react';\nimport { schoolColor } from '../../../utils/constant';\nimport { useLoginModule } from '../../modules/School/loginModule';\nimport EnmapLogo from '../Logo/EnmapLogo';\nimport { signOut } from '../../../api/common';\n\nconst SchoolManagementHeader = (props) => {\n const {\n // store\n loggedIn,\n userName,\n schoolName,\n // actions\n checkLoggedIn,\n } = useLoginModule();\n\n useEffect(() => {\n checkLoggedIn();\n }, []);\n const handleLogout = async () => {\n await signOut();\n location.href = '/my_school/login';\n };\n return (\n \n
\n
\n
\n (location.href = '/my_school/home')}>\n \n \n \n {schoolName}\n
\n
\n \n {loggedIn && (\n <>\n
\n \n {userName && <>{userName}さん}\n
\n
\n \n マニュアル\n \n
\n
\n \n お問合せ\n \n
\n
\n\n
\n handleLogout()}\n style={{ cursor: 'pointer', textDecoration: 'none' }}>\n \n ログアウト\n \n
\n \n )}\n
\n \n \n \n );\n};\n\nSchoolManagementHeader.propTypes = {};\n\nexport default SchoolManagementHeader;\n","import React, { useEffect } from 'react';\nimport EnmapLogo from '../Logo/EnmapLogo';\nimport PropTypes from 'prop-types';\nimport { useLoginModule } from '../../modules/Student/loginModule';\n\nconst StudentHeader = ({ ignoreCheckLoggedIn = false }) => {\n const {\n // actions\n checkLoggedIn,\n } = useLoginModule();\n\n useEffect(() => {\n if (!ignoreCheckLoggedIn) checkLoggedIn();\n }, []);\n\n return (\n \n
\n \n
\n (location.href = '/student/home')}>\n \n \n
\n
\n \n \n );\n};\n\nStudentHeader.propTypes = {\n schoolName: PropTypes.string,\n userName: PropTypes.string,\n};\n\nexport default StudentHeader;\n","import styled from 'styled-components';\n\nexport const EnmapColorLabel = styled.div`\n color: #ff9999;\n`;\n","import React from 'react';\nimport style from './style.css';\n\nconst LoadingOverlay = ({ loading = false }) => {\n return (\n <>\n {loading && (\n \n \n
\n  \n
\n \n \n )}\n \n );\n};\n\nexport default LoadingOverlay;\n","import React from 'react';\nimport ReactLoading from 'react-loading';\n\nconst StudentLoadingOverlay = ({ loading = false }) => {\n return (\n <>\n {loading && (\n \n \n \n \n \n )}\n \n );\n};\n\nexport default StudentLoadingOverlay;\n","import React from 'react';\nimport Logo from '../../images/enmap_logo.png';\n\nconst EnmapLogo = (props) => {\n return \"\";\n};\n\nexport default EnmapLogo;\n","import React from 'react';\nimport Logo from '../../images/logo_bold.png';\n\nconst EnmapLogoPink = (props) => {\n return \"\";\n};\n\nexport default EnmapLogoPink;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../Buttons/GreenButton';\nimport GrayButton from '../Buttons/GrayButton';\n\nconst AttachedFileDeleteModal = ({\n isShow = false,\n onHide,\n onDelete,\n okLabel = 'はい',\n}) => {\n return (\n \n \n \n 添付ファイルを削除しますか?\n \n
\n onDelete()}\n />\n\n onHide()}\n />\n
\n
\n \n );\n};\n\nexport default AttachedFileDeleteModal;\n","import PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport styled from 'styled-components';\nimport { useCorporateBookmark } from '../../modules/components/corporateBookmark';\nimport { useCorporatePaperInfo } from '../../modules/components/corporatePaperInfo';\nimport PinkButton from '../Buttons/PinkButton';\nimport Divider from '../Divider/Divider';\nimport LoadingOverlay from '../LoadingOverlay/LoadingOverlay';\n\nconst CorporateNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\n\nconst BookmarkArea = styled.div`\n font-size: 24px;\n`;\n\nconst TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableRight = styled.td`\n border: 1px solid #555252;\n font-size: 14px;\n`;\n\nconst CorporateEnmapUsingInfoModal = (props) => {\n const {\n // store\n isShow,\n corporateId,\n defaultBookmarked,\n // actions\n onHide,\n } = props;\n\n const {\n // store\n corporate,\n isLoading,\n // actions\n onLoad,\n } = useCorporatePaperInfo();\n\n const {\n // store\n isLocalMask,\n bookmarked,\n // actions\n addBookmark,\n removeBookmark,\n changeState,\n } = useCorporateBookmark();\n\n useEffect(() => {\n changeState({ bookmarked: defaultBookmarked });\n }, []);\n\n useEffect(() => {\n if (corporateId) {\n onLoad(corporateId);\n }\n }, [corporateId]);\n\n return (\n <>\n {isLoading ? (\n \n ) : (\n <>\n \n \n \n \n {bookmarked ? (\n removeBookmark(corporate.id)}>\n
\n \n
\n \n ) : (\n addBookmark(corporate.id)}>\n
\n \n
\n \n )}\n
\n
\n \n \n {corporate.legal_person_position === 1 ? (\n <>\n {corporate.legal_person}\n {corporate.name}\n \n ) : (\n <>\n {corporate.name}\n {corporate.legal_person}\n \n )}\n \n \n
\n \n \n \n 法人格\n \n {corporate.legal_person}\n \n \n \n 法人名\n {corporate.name}\n \n \n 担当者\n \n {corporate.person_in_charge}\n \n \n \n 担当者部署\n \n {corporate.person_in_charge_department}\n \n \n \n 郵便番号\n \n {corporate.postal_code}\n \n \n \n 住所\n \n {corporate.address}\n \n \n \n 電話番号\n \n {corporate.tel && (\n {corporate.tel}\n )}\n \n \n \n HP\n \n {corporate.site_url && (\n \n {corporate.site_url}\n \n )}\n \n \n \n
\n
\n
\n {\n e.preventDefault();\n location.href = `/student/corporates/${corporate.id}/facilities`;\n }}\n />\n
\n \n
\n \n \n )}\n \n );\n};\n\nCorporateEnmapUsingInfoModal.propTypes = {\n isShow: PropTypes.bool,\n corporateId: PropTypes.number,\n defaultBookmarked: PropTypes.bool,\n onHide: PropTypes.func,\n};\nCorporateEnmapUsingInfoModal.defaultProps = {\n isShow: false,\n defaultBookmarked: false,\n onHide: () => {},\n};\n\nexport default CorporateEnmapUsingInfoModal;\n","import PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport styled from 'styled-components';\nimport { useCorporateBookmark } from '../../modules/components/corporateBookmark';\nimport { useCorporatePaperInfo } from '../../modules/components/corporatePaperInfo';\nimport PinkButton from '../Buttons/PinkButton';\nimport Divider from '../Divider/Divider';\nimport LoadingOverlay from '../LoadingOverlay/LoadingOverlay';\n\nconst CorporateNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\n\nconst BookmarkArea = styled.div`\n font-size: 24px;\n`;\n\nconst TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableRight = styled.td`\n border: 1px solid #555252;\n font-size: 14px;\n`;\n\nconst CorporatePaperInfoModal = (props) => {\n const {\n // store\n isShow,\n corporateId,\n defaultBookmarked,\n // actions\n onHide,\n } = props;\n\n const {\n // store\n corporate,\n isLoading,\n // actions\n onLoad,\n } = useCorporatePaperInfo();\n\n const {\n // store\n isLocalMask,\n bookmarked,\n // actions\n addBookmark,\n removeBookmark,\n changeState,\n } = useCorporateBookmark();\n\n useEffect(() => {\n changeState({ bookmarked: defaultBookmarked });\n }, []);\n\n useEffect(() => {\n if (corporateId) {\n onLoad(corporateId);\n }\n }, [corporateId]);\n\n return (\n <>\n {isLoading ? (\n \n ) : (\n <>\n \n \n \n \n {bookmarked ? (\n removeBookmark(corporate.id)}>\n
\n \n
\n \n ) : (\n addBookmark(corporate.id)}>\n
\n \n
\n \n )}\n
\n
\n \n \n {corporate.legal_person_position === 1 ? (\n <>\n {corporate.legal_person}\n {corporate.name}\n \n ) : (\n <>\n {corporate.name}\n {corporate.legal_person}\n \n )}\n \n \n
\n \n \n \n 法人格\n \n {corporate.legal_person}\n \n \n \n 法人名\n {corporate.name}\n \n \n 担当者\n \n {corporate.person_in_charge}\n \n \n \n 担当者部署\n \n {corporate.person_in_charge_department}\n \n \n \n 郵便番号\n \n {corporate.postal_code}\n \n \n \n 住所\n \n {corporate.address}\n \n \n \n 電話番号\n \n {corporate.tel && (\n {corporate.tel}\n )}\n \n \n \n HP\n \n {corporate.site_url && (\n \n {corporate.site_url}\n \n )}\n \n \n \n
\n
\n
\n {\n e.preventDefault();\n location.href = `/student/corporates/${corporate.id}/facilities`;\n }}\n />\n
\n \n
\n \n \n )}\n \n );\n};\n\nCorporatePaperInfoModal.propTypes = {\n isShow: PropTypes.bool,\n corporateId: PropTypes.number,\n defaultBookmarked: PropTypes.bool,\n onHide: PropTypes.func,\n};\nCorporatePaperInfoModal.defaultProps = {\n isShow: false,\n defaultBookmarked: false,\n onHide: () => {},\n};\n\nexport default CorporatePaperInfoModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport styled from 'styled-components';\n\nconst HeaderContent = styled.div`\n font-size: 16px;\n`;\n\nconst DeleteModal = ({\n isShow = false,\n onHide,\n onDelete,\n okLabel = '削除',\n cancelLabel = 'キャンセル',\n message = '本当に削除しますか?',\n size = 'lg',\n}) => {\n return (\n \n \n \n 確認\n \n \n \n
{message}
\n
\n \n onHide()}>\n {cancelLabel}\n \n onDelete()}>\n {okLabel}\n \n \n \n );\n};\n\nexport default DeleteModal;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../Buttons/GreenButton';\n\nimport styled from 'styled-components';\n\nconst FileInputLeft = styled.div`\n border-right: 1px solid #ced4da;\n background: #e9e9e9;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n`;\n\nconst EventAttachedFileUpload = (props) => {\n const { isShow, errorMessage, onClose, onOk } = props;\n const [fileName, setFileName] = useState('');\n const [file, setFile] = useState(null);\n useEffect(() => {\n setFileName('');\n setFile(null);\n }, [isShow]);\n\n return (\n \n \n \n \n \n
\n \n ファイルを選択\n \n {file?.name || '選択されていません'}\n
\n {\n // e.persist();\n const files = e.target.files;\n if (files.length > 0) {\n setFile(files[0]);\n }\n // 同じファイルがアップロードされた場合でもイベントを発火するため、値をクリアしておく\n e.target.value = null;\n }}\n />\n \n \n
\n \n
\n 学生向け表示名\n
\n
\n (必須)\n
\n
\n\n
\n {\n setFileName(value);\n }}\n />\n
\n \n\n {errorMessage && (\n
{errorMessage}
\n )}\n
\n onOk(e, file, fileName)}\n disabled={!fileName || !file}\n label=\"添付する\"\n labelClassName=\"w-100 fw-normal\"\n />\n
\n
\n
\n );\n};\n\nEventAttachedFileUpload.propTypes = {\n isShow: PropTypes.bool,\n errorMessage: PropTypes.string,\n onClose: PropTypes.func,\n onOk: PropTypes.func,\n};\n\nEventAttachedFileUpload.defaultProps = {\n errorMessage: '',\n};\n\nexport default EventAttachedFileUpload;\n","import React, { useEffect, useState } from 'react';\nimport { CloseButton, Modal } from 'react-bootstrap';\nimport { toast } from 'react-toastify';\nimport styled from 'styled-components';\nimport { disableApplicant } from '../../../utils/event';\nimport GrayButton from '../Buttons/GrayButton';\nimport PinkButton from '../Buttons/PinkButton';\nimport { EnmapColorLabel } from '../Label';\nimport LoadingOverlay from '../LoadingOverlay/LoadingOverlay';\nimport { TableLeft, TableRight } from '../Student/TablePart';\nimport { useEventModal } from './hooks/useEventModal';\n\nconst BookmarkArea = styled.div`\n font-size: 24px;\n`;\n\nconst AttachedFileField = styled.div`\n background: #f2f2f2;\n color: #555252;\n`;\n\nconst EventModal = ({\n // store\n isShow,\n eventId,\n // actions\n onHide,\n}) => {\n const {\n // store\n corporate,\n event,\n isLoading,\n isLocalMask,\n bookmarked,\n attachedFiles,\n // actions\n onLoad,\n addBookmark,\n removeBookmark,\n openAttachedFiles,\n } = useEventModal();\n const [isOpenAttachedFileList, setIsOpenAttachedFileList] = useState(false);\n\n const [openedAttachedFiles, setOpenedAttachedFiles] = useState([]);\n useEffect(() => {\n setOpenedAttachedFiles([]);\n setIsOpenAttachedFileList(false);\n if (eventId) {\n onLoad(eventId).catch((e) => {\n if (e?.response?.status === 404) {\n toast.error('イベントが見つかりませんでした');\n onHide();\n }\n });\n }\n }, [eventId]);\n\n return (\n <>\n {isLoading ? (\n \n ) : (\n <>\n \n \n \n \n {bookmarked ? (\n removeBookmark(event.id)}>\n
\n \n
\n \n ) : (\n addBookmark(event.id)}>\n
\n \n
\n \n )}\n
\n \n
\n \n
\n
\n \n \n (更新日:{event?.updated_at})\n
\n \n \n \n 主催\n \n {corporate?.name}\n \n \n \n タイトル\n {event?.title}\n \n \n 分類\n \n {event?.event_type_label}\n \n \n \n 開催日\n \n {event?.event_date_ja}\n \n \n \n 開催時間\n \n {event?.implementation_time_from} 〜 \n {event?.implementation_time_to}\n \n \n \n 開催地\n \n {event?.event_location}\n \n \n \n 開催地住所\n \n {event?.address}\n \n \n \n 対象施設種別\n \n {event?.target_facility_type_names?.join('・')}\n \n \n \n 内容\n \n {event?.subject}\n \n \n \n 対象者\n \n {event?.target}\n \n \n \n 備考\n \n {event?.note}\n \n \n \n 定員数\n \n {event?.capacity}\n \n \n \n 担当者\n \n {event?.person_in_charge}\n \n \n \n 連絡先電話\n \n {event?.person_in_charge_tel && (\n \n {event?.person_in_charge_tel}\n \n )}\n \n \n \n 連絡先メール\n \n {event?.person_in_charge_email && (\n \n {event?.person_in_charge_email}\n \n )}\n \n \n \n
\n {\n if (\n Object.entries(attachedFiles).length > 0 ||\n isOpenAttachedFileList\n ) {\n setIsOpenAttachedFileList(!isOpenAttachedFileList);\n } else {\n openAttachedFiles(event.id).then(() =>\n setIsOpenAttachedFileList(!isOpenAttachedFileList),\n );\n }\n }}>\n 添付資料を見る\n \n {isOpenAttachedFileList ? (\n \n ) : (\n \n )}\n \n \n {Object.entries(attachedFiles ?? {})?.length > 0 &&\n isOpenAttachedFileList && (\n
\n {Object.entries(attachedFiles).map(([key, _]) => (\n
\n {openedAttachedFiles.includes(key) ? (\n \n setOpenedAttachedFiles(\n openedAttachedFiles.filter(\n (k) => k !== key,\n ),\n )\n }>\n {key}\n \n \n \n \n ) : (\n \n setOpenedAttachedFiles([\n ...openedAttachedFiles,\n key,\n ])\n }>\n {key}\n \n \n \n \n )}\n {openedAttachedFiles.some((i) => i === key) && (\n
\n {attachedFiles[key].map((item) => (\n \n \n {item.fileName}\n \n \n ))}\n
\n )}\n
\n ))}\n
\n )}\n \n
\n {disableApplicant(event) ? (\n \n ) : (\n {\n e.preventDefault();\n window.open(\n `/student/events/${event.id}/applicant`,\n '_blank',\n );\n }}\n />\n )}\n
\n\n
\n
\n \n window.open(\n `/student/corporates/${corporate?.id}`,\n '_blank',\n )\n }>\n 法人情報\n \n \n window.open(\n `/student/events/${eventId}/related_facilities`,\n '_blank',\n )\n }>\n 該当施設一覧\n \n
\n
\n \n
\n {\n e.preventDefault();\n onHide();\n }}\n />\n
\n
\n \n \n )}\n \n );\n};\n\nexport default EventModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../Buttons/GreenButton';\nimport GrayButton from '../Buttons/GrayButton';\n\nconst EventPublishConfirmModal = ({ isShow = false, onOk, onCancel }) => {\n return (\n \n \n
\n \n 登録した内容で配信しますか?\n
\n \n
\n ※選択施設・配信学校は後から変更出来ません\n
\n \n
\n
\n onCancel()}\n />\n
\n
\n onOk()}\n />\n
\n
\n \n
\n
\n );\n};\n\nexport default EventPublishConfirmModal;\n","import React, { useEffect, useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport GreenButton from '../Buttons/GreenButton';\n\nimport styled from 'styled-components';\nimport { MAX_FILE_SIZE } from '../../../utils/constant';\n\nconst FileInputLeft = styled.div`\n border-right: 1px solid #ced4da;\n background: #e9e9e9;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n`;\n\nconst FacilityAttachmentFileUpload = (props) => {\n const { isShow, errorMessage, onClose, onOk } = props;\n const [fileName, setFileName] = useState('');\n const [file, setFile] = useState(null);\n const [fileSizeErrorMessage, setFileSizeErrorMessage] = useState('');\n useEffect(() => {\n setFileName('');\n setFile(null);\n }, [isShow]);\n\n return (\n \n \n \n \n \n
\n \n ファイルを選択\n \n {file?.name || '選択されていません'}\n
\n {\n setFileSizeErrorMessage('');\n // e.persist();\n const files = e.target.files;\n if (files.length > 0) {\n const fileSizeMB = Math.ceil(files[0].size / 1024 / 1024);\n if (fileSizeMB < MAX_FILE_SIZE) {\n setFile(files[0]);\n } else {\n setFileSizeErrorMessage(\n '10MBを超えているためアップロードできません',\n );\n }\n }\n // 同じファイルがアップロードされた場合でもイベントを発火するため、値をクリアしておく\n e.target.value = null;\n }}\n />\n \n \n
\n \n
\n 学生向け表示名\n
\n
\n (必須)\n
\n
\n\n
\n {\n setFileName(value);\n }}\n />\n
\n \n\n {errorMessage && (\n
{errorMessage}
\n )}\n {fileSizeErrorMessage && (\n
{fileSizeErrorMessage}
\n )}\n
\n onOk(e, file, fileName)}\n disabled={!fileName || !file}\n label=\"添付する\"\n labelClassName=\"w-100 fw-normal\"\n />\n
\n
\n
\n );\n};\n\nFacilityAttachmentFileUpload.propTypes = {\n isShow: PropTypes.bool,\n errorMessage: PropTypes.string,\n onClose: PropTypes.func,\n onOk: PropTypes.func,\n};\n\nFacilityAttachmentFileUpload.defaultProps = {\n errorMessage: '',\n};\n\nexport default FacilityAttachmentFileUpload;\n","import PropTypes from 'prop-types';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { CloseButton, Modal } from 'react-bootstrap';\nimport styled from 'styled-components';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport {\n hasYouthEmploymentForm,\n isEnabledRecruitmentForm,\n lbToBr,\n} from '../../../utils/common';\nimport { useFacilityInfo } from '../../modules/components/facilityInfoModule';\nimport GrayButton from '../Buttons/GrayButton';\nimport PinkButton from '../Buttons/PinkButton';\nimport Divider from '../Divider/Divider';\nimport { EnmapColorLabel } from '../Label';\nimport LoadingOverlay from '../LoadingOverlay/LoadingOverlay';\nimport ApplicantButton from '../Student/ApplicantButton';\n\nconst PublicColorIcon = styled.div`\n color: #5b9bd5;\n font-family: Osaka, MS Pゴシック, ms pgothic, Sans-Serif;\n margin-right: 6px;\n`;\n\nconst PrivateColorIcon = styled.div`\n color: #ffc000;\n font-family: Osaka, MS Pゴシック, ms pgothic, Sans-Serif;\n margin-right: 6px;\n`;\n\nconst HeaderContent = styled.div`\n font-size: 10px;\n`;\n\nconst BookmarkArea = styled.div`\n font-size: 24px;\n`;\n\nconst TableRowWrap = styled.div`\n border-top: 1px solid #555252;\n border-left: 1px solid #555252;\n border-right: 1px solid #555252;\n`;\n\nconst TableLeft = styled.div`\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableLeft2 = styled.div`\n border-right: 1px solid #555252;\n background: #ffabab;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableRight = styled.div`\n font-size: 14px;\n overflow: hidden;\n`;\n\nconst TableRight2 = styled.div`\n font-size: 14px;\n overflow: hidden;\n background: #ffdede;\n`;\n\nconst AttachedFileField = styled.div`\n background: #f2f2f2;\n color: #555252;\n`;\n\nconst FacilityModal = (props) => {\n const {\n // store\n isShow,\n facilityId,\n isReport,\n // actions\n onHide,\n onReportBtnClick,\n } = props;\n\n const {\n // store\n facility,\n recruitment,\n isLoading,\n isLocalMask,\n bookmarked,\n attachedFiles,\n events,\n youth_employment,\n hasAttachment,\n comment,\n enabledApplicant,\n // actions\n onLoad,\n addBookmark,\n removeBookmark,\n openAttachedFiles,\n } = useFacilityInfo();\n const [isOpenAttachedFileList, setIsOpenAttachedFileList] = useState(false);\n\n const [openedAttachedFiles, setOpenedAttachedFiles] = useState([]);\n\n // 求人情報フォームに値が入力されているかをチェック\n const hasRecruitmentForm = isEnabledRecruitmentForm(recruitment);\n\n useEffect(() => {\n setOpenedAttachedFiles([]);\n setIsOpenAttachedFileList(false);\n if (facilityId) {\n onLoad(facilityId);\n }\n }, [facilityId]);\n\n // 法人IDがNULLか「個人」の場合は法人情報ボタンをDisabledにする\n const isDisableCorporateButton =\n !facility?.corporate_id || facility?.corporate_name === '個人';\n\n const [isOpenEventAccordion, setIsOpenEventAccordion] = useState(false);\n const handleClickRecruitmentButton = useCallback(\n (facilityId, recruitment, hasRecruitmentForm) => {\n if (hasRecruitmentForm) {\n window.open(\n `/student/facilities/${facilityId}/recruitments/${recruitment.id}`,\n '_blank',\n );\n } else if (recruitment?.last_uploaded_file) {\n window.open(recruitment.last_uploaded_file, '_blank');\n }\n if (recruitment?.id) {\n return HttpRequest.post(\n `/api/student/facilities/${facilityId}/recruitments/${recruitment.id}/recruitment_viewed_counts?from=search`,\n );\n }\n },\n [],\n );\n\n const buttonProps = {\n height: 53,\n pill: true,\n };\n\n const renderRecruitment = useCallback(() => {\n if (\n recruitment?.updated_at_short &&\n (hasRecruitmentForm || recruitment?.last_uploaded_file)\n ) {\n if (recruitment?.is_old_year) {\n return (\n
\n \n
\n {recruitment.recruitment_year}年度求人情報\n
\n
\n (更新日:{recruitment.updated_at_short})\n
\n
\n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n return handleClickRecruitmentButton(\n facilityId,\n recruitment,\n hasRecruitmentForm,\n );\n }}\n {...buttonProps}\n />\n \n );\n }\n if (recruitment?.recruitment_is_closed) {\n return (\n
\n \n
\n (募集終了){recruitment.recruitment_year}年度求人情報\n
\n
\n (更新日:{recruitment.updated_at_short})\n
\n
\n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n return handleClickRecruitmentButton(\n facilityId,\n recruitment,\n hasRecruitmentForm,\n );\n }}\n {...buttonProps}\n />\n \n );\n }\n return (\n
\n \n
\n {recruitment.recruitment_year}年度求人情報\n
\n
\n (更新日:{recruitment.updated_at_short})\n
\n
\n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n return handleClickRecruitmentButton(\n facilityId,\n recruitment,\n hasRecruitmentForm,\n );\n }}\n {...buttonProps}\n />\n \n );\n }\n return null;\n }, [recruitment]);\n\n const renderApplicant = useCallback(() => {\n if (!enabledApplicant) {\n return null;\n }\n return (\n
\n \n
\n );\n }, [enabledApplicant, facility]);\n const renderEvents = useCallback(() => {\n let tmpEvents = !isOpenEventAccordion\n ? events?.filter((_, i) => i === 0)\n : events;\n return (\n <>\n {tmpEvents.map((event) => (\n
\n {event.is_end_event || event.is_end_recruitment ? (\n \n
{event.title}
\n
\n (開催日:{event.event_date}) 募集終了\n
\n
\n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n window.open(`/student/events/${event.id}`, '_blank');\n return HttpRequest.post(\n `/api/student/events/${event.id}/event_viewed_counts`,\n );\n }}\n outlined\n {...buttonProps}\n />\n ) : (\n \n
\n {event.is_full ? '【満員】' : ''}\n {event.title}\n
\n
\n (開催日:{event.event_date})\n
\n \n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n window.open(`/student/events/${event.id}`, '_blank');\n return HttpRequest.post(\n `/api/student/events/${event.id}/event_viewed_counts`,\n );\n }}\n outlined\n {...buttonProps}\n />\n )}\n \n ))}\n
\n {\n setIsOpenEventAccordion(!isOpenEventAccordion);\n }}\n style={{ fontSize: '20px' }}>\n {events?.length > 1 && (\n <>\n {isOpenEventAccordion ? (\n \n ) : (\n \n )}\n \n )}\n
\n \n \n );\n }, [events, isOpenEventAccordion]);\n\n const renderComment = useCallback(() => {\n if (comment) {\n return lbToBr(comment);\n }\n return '';\n }, [comment]);\n\n return (\n <>\n {isLoading ? (\n \n ) : (\n <>\n \n \n \n \n \n
\n {facility?.operator === '公営' ? (\n \n ) : (\n \n )}\n {facility?.facility_type}・{facility?.operator}\n
\n
\n \n \n {bookmarked ? (\n removeBookmark(facilityId)}>\n
\n \n
\n \n ) : (\n addBookmark(facilityId)}>\n
\n \n
\n \n )}\n
\n \n
\n \n
\n
\n
{facility.name}
\n
\n \n
\n {isReport ? (\n
\n onReportBtnClick(facilityId)}\n {...buttonProps}\n />\n
\n ) : (\n <>\n {renderRecruitment()}\n {renderApplicant()}\n {renderEvents()}\n {hasAttachment && (\n {\n if (\n Object.entries(attachedFiles ?? {})?.length > 0\n ) {\n setIsOpenAttachedFileList(\n !isOpenAttachedFileList,\n );\n } else {\n openAttachedFiles(facility.id).then(() =>\n setIsOpenAttachedFileList(\n !isOpenAttachedFileList,\n ),\n );\n }\n }}>\n 添付資料を見る\n \n {isOpenAttachedFileList ? (\n \n ) : (\n \n )}\n \n \n )}\n {Object.entries(attachedFiles ?? {})?.length > 0 &&\n isOpenAttachedFileList && (\n
\n {Object.entries(attachedFiles).map(([key, _]) => (\n
\n {openedAttachedFiles.includes(key) ? (\n \n setOpenedAttachedFiles(\n openedAttachedFiles.filter(\n (k) => k !== key,\n ),\n )\n }>\n {key}\n \n \n \n \n ) : (\n \n setOpenedAttachedFiles([\n ...openedAttachedFiles,\n key,\n ])\n }>\n {key}\n \n \n \n \n )}\n {openedAttachedFiles.some((i) => i === key) && (\n
\n {attachedFiles[key].map((item) => (\n \n \n {item.fileName}\n \n \n ))}\n
\n )}\n
\n ))}\n
\n )}\n \n )}\n
\n
\n
\n \n window.open(\n `/student/corporates/${facility.corporate_id}`,\n '_blank',\n )\n }\n disabled={isDisableCorporateButton}>\n 法人情報\n \n {\n if (hasYouthEmploymentForm(youth_employment)) {\n window.open(\n `/student/corporates/${facility.corporate_id}/youth_employments`,\n '_blank',\n );\n } else if (youth_employment?.file_path) {\n window.open(youth_employment.file_path, '_blank');\n } else {\n window.open(\n `/student/corporates/${facility.corporate_id}/youth_employments`,\n '_blank',\n );\n }\n }}\n disabled={isDisableCorporateButton}>\n 青少年雇用情報\n \n
\n
\n
\n
\n \n 施設種別\n \n {facility?.facility_type}\n \n \n \n 施設種別備考\n \n {facility?.facility_type_remark}\n \n \n \n 許認可\n \n {facility?.authorization}\n \n \n \n 運営者区分\n \n {facility?.operator}\n \n \n \n 開園日\n \n {facility?.opening_date}\n \n \n \n 施設代表者\n \n {facility?.representative_name}\n \n \n \n 代表者役職\n \n {facility?.representative_job_title}\n \n \n \n 郵便番号\n \n {facility?.postal_code}\n \n \n \n 住所\n \n {facility?.address}\n \n \n \n \n 電話番号
\n (代表)\n
\n \n {/* 電話番号リンク */}\n {facility?.tel && (\n {facility.tel}\n )}\n \n
\n \n 公式HP\n \n {facility?.site_url && (\n \n {facility?.site_url}\n \n )}\n \n \n \n その他HP\n \n {facility?.other_url && (\n \n {facility?.other_url}\n \n )}\n \n \n \n 定員\n \n {facility?.children_count_limit}\n \n \n \n 在園児\n \n {facility?.children_count}\n \n \n \n 学級数\n \n {facility?.facility_class_grade_number}\n \n \n \n 園の紹介\n \n {lbToBr(facility?.feature ?? '')}\n \n \n
\n \n 学校コメント\n \n {renderComment()}\n \n \n
\n
\n
\n
\n {renderApplicant()}\n
\n \n
\n
\n {\n e.preventDefault();\n onHide();\n }}\n />\n
\n
\n \n \n )}\n \n );\n};\n\nFacilityModal.propTypes = {\n isShow: PropTypes.bool,\n isReport: PropTypes.bool,\n facilityId: PropTypes.number,\n onHide: PropTypes.func,\n onReportBtnClick: PropTypes.func,\n};\nFacilityModal.defaultProps = {\n isShow: false,\n isReport: false,\n onHide: () => {},\n onReportBtnClick: () => {},\n};\n\nexport default FacilityModal;\n","import React, { useEffect, useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport GrayButton from '../Buttons/GrayButton';\nimport PrimaryButton from '../Buttons/PrimaryButton';\nimport PrefectureSelect from '../PrefectureSelect/PrefectureSelect';\nimport CitySelect from '../CitySelect/CitySelect';\n\nconst FacilitySearchModal = (props) => {\n const { isShow, onClose, onOk, filter, changeFilter, defaultCities } = props;\n\n useEffect(() => {\n if (filter?.ko) {\n const someKoUnchecked = Object.keys(filter)\n .filter((key) => key.includes('ko_'))\n .some((key) => !filter[key]);\n if (someKoUnchecked) {\n changeFilter({ ko: false });\n }\n }\n if (filter?.shokibo) {\n const someShokiboUnchecked = Object.keys(filter)\n .filter((key) => key.includes('shokibo_'))\n .some((key) => !filter[key]);\n if (someShokiboUnchecked) {\n changeFilter({ shokibo: false });\n }\n }\n if (filter?.jigyosho) {\n const someJigyoshoUnchecked = Object.keys(filter)\n .filter((key) => key.includes('jigyosho_'))\n .some((key) => !filter[key]);\n if (someJigyoshoUnchecked) {\n changeFilter({ jigyosho: false });\n }\n }\n }, [filter]);\n\n return (\n \n \n
\n
項目で絞り込む
\n
\n
\n
\n \n 都道府県\n \n \n
\n
\n \n changeFilter({\n pref_code: value ? Number(value) : null,\n city_code: null,\n })\n }\n />\n
\n
\n
\n
\n \n 市区町村\n \n \n
\n
\n \n changeFilter({\n city_code: value,\n })\n }\n defaultCities={defaultCities}\n />\n
\n
\n
\n
\n \n 求人情報有\n \n \n
\n
\n
\n \n changeFilter({\n recruitmentSubmitted: checked,\n })\n }\n />\n
\n
\n
\n
\n
\n \n イベント情報有\n \n \n
\n
\n
\n \n changeFilter({\n eventSubmitted: checked,\n })\n }\n />\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n 施設種別\n \n \n
\n
\n
\n
\n {\n if (checked) {\n changeFilter({\n ho: true,\n yo: true,\n ko: true,\n ko_ho: true,\n ko_yo: true,\n ko_yoho: true,\n ko_sairyo: true,\n shokibo: true,\n shokibo_a: true,\n shokibo_b: true,\n shokibo_c: true,\n jigyosho: true,\n jigyosho_a: true,\n jigyosho_b: true,\n jigyosho_20over: true,\n kigyo_ho: true,\n other_type: true,\n jidokan: true,\n after_school_club: true,\n after_school_day_service: true,\n infant_home: true,\n child_home: true,\n shogai_child_facility_welfare_type: true,\n shogai_child_facility_medical_type: true,\n child_facility_welfare_type: true,\n child_facility_medical_type: true,\n child_psychotherapeutic_facility: true,\n child_independence_facility: true,\n child_family_support_facility: true,\n midwifery_facility: true,\n disability_support_facility: true,\n employment_support_facility: true,\n not_en: true,\n });\n }\n }}\n />\n \n
\n
\n {\n if (checked) {\n changeFilter({\n ho: false,\n yo: false,\n ko: false,\n ko_ho: false,\n ko_yo: false,\n ko_yoho: false,\n ko_sairyo: false,\n shokibo: false,\n shokibo_a: false,\n shokibo_b: false,\n shokibo_c: false,\n jigyosho: false,\n jigyosho_a: false,\n jigyosho_b: false,\n jigyosho_20over: false,\n kigyo_ho: false,\n other_type: false,\n jidokan: false,\n after_school_club: false,\n after_school_day_service: false,\n infant_home: false,\n child_home: false,\n shogai_child_facility_welfare_type: false,\n shogai_child_facility_medical_type: false,\n child_facility_welfare_type: false,\n child_facility_medical_type: false,\n child_psychotherapeutic_facility: false,\n child_independence_facility: false,\n child_family_support_facility: false,\n midwifery_facility: false,\n disability_support_facility: false,\n employment_support_facility: false,\n not_en: false,\n });\n }\n }}\n />\n \n
\n
\n
\n \n changeFilter({ ho: checked })\n }\n />\n \n
\n
\n \n changeFilter({ yo: checked })\n }\n />\n \n
\n
\n
\n \n changeFilter({\n ko: checked,\n ko_ho: checked,\n ko_yo: checked,\n ko_yoho: checked,\n ko_sairyo: checked,\n })\n }\n />\n \n 認定こども園\n \n \n
\n \n
\n \n changeFilter({ ko_ho: checked })\n }\n />\n \n
\n
\n
\n \n changeFilter({ ko_yo: checked })\n }\n />\n \n
\n
\n \n changeFilter({ ko_yoho: checked })\n }\n />\n \n
\n
\n \n changeFilter({ ko_sairyo: checked })\n }\n />\n \n
\n
\n
\n
\n \n changeFilter({\n shokibo: checked,\n shokibo_a: checked,\n shokibo_b: checked,\n shokibo_c: checked,\n })\n }\n />\n \n 小規模保育\n \n \n
\n \n
\n \n changeFilter({\n shokibo_a: checked,\n })\n }\n />\n \n
\n
\n
\n \n changeFilter({\n shokibo_b: checked,\n })\n }\n />\n \n
\n
\n \n changeFilter({\n shokibo_c: checked,\n })\n }\n />\n \n
\n
\n
\n
\n \n changeFilter({\n jigyosho: checked,\n jigyosho_a: checked,\n jigyosho_b: checked,\n jigyosho_20over: checked,\n })\n }\n />\n \n 事業所内保育\n \n \n
\n \n
\n \n changeFilter({\n jigyosho_a: checked,\n })\n }\n />\n \n
\n
\n
\n \n changeFilter({\n jigyosho_b: checked,\n })\n }\n />\n \n
\n
\n \n changeFilter({\n jigyosho_20over: checked,\n })\n }\n />\n \n 20名超\n \n
\n
\n
\n \n changeFilter({ kigyo_ho: checked })\n }\n />\n \n
\n
\n \n changeFilter({\n other_type: checked,\n })\n }\n />\n \n
\n
\n \n changeFilter({ jidokan: checked })\n }\n />\n \n
\n
\n \n changeFilter({ after_school_club: checked })\n }\n />\n \n 放課後児童クラブ\n \n
\n\n
\n \n changeFilter({ after_school_day_service: checked })\n }\n />\n \n 放課後等デイサービス\n \n
\n
\n \n changeFilter({ infant_home: checked })\n }\n />\n \n
\n
\n \n changeFilter({ child_home: checked })\n }\n />\n \n
\n
\n \n changeFilter({\n shogai_child_facility_welfare_type: checked,\n })\n }\n />\n \n 障害児入所施設(福祉型)\n \n
\n
\n \n changeFilter({\n shogai_child_facility_medical_type: checked,\n })\n }\n />\n \n 障害児入所施設(医療型)\n \n
\n
\n \n changeFilter({\n child_facility_welfare_type: checked,\n })\n }\n />\n \n 児童発達支援(福祉型)\n \n
\n
\n \n changeFilter({\n child_facility_medical_type: checked,\n })\n }\n />\n \n 児童発達支援(医療型)\n \n
\n
\n \n changeFilter({\n child_psychotherapeutic_facility: checked,\n })\n }\n />\n \n 児童心理治療施設\n \n
\n
\n \n changeFilter({\n child_independence_facility: checked,\n })\n }\n />\n \n 児童自立支援施設\n \n
\n
\n \n changeFilter({\n child_family_support_facility: checked,\n })\n }\n />\n \n 児童家庭支援センター\n \n
\n
\n \n changeFilter({\n midwifery_facility: checked,\n })\n }\n />\n \n 助産施設\n \n
\n\n
\n \n changeFilter({\n disability_support_facility: checked,\n })\n }\n />\n \n 障害者支援施設\n \n
\n\n
\n \n changeFilter({\n employment_support_facility: checked,\n })\n }\n />\n \n 就労支援施設\n \n
\n
\n \n changeFilter({\n not_en: checked,\n })\n }\n />\n \n
\n
\n \n \n \n
\n
\n onClose(e)}\n height={38}\n width={90}\n label=\"閉じる\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n
\n
\n onOk(filter)}\n height={38}\n width={90}\n label=\"絞り込む\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n
\n
\n
\n
\n );\n};\n\nFacilitySearchModal.propTypes = {\n isShow: PropTypes.bool,\n onClose: PropTypes.func,\n onOk: PropTypes.func,\n filter: PropTypes.object,\n changeFilter: PropTypes.func,\n defaultCities: PropTypes.array,\n};\n\nexport default FacilitySearchModal;\n","import React, { useEffect, useState } from 'react';\nimport { Button, Modal } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\n\nconst FileUpload = (props) => {\n const { isShow, errorMessage, onClose, onOk } = props;\n const [fileName, setFileName] = useState('');\n const [file, setFile] = useState(null);\n useEffect(() => {\n setFileName('');\n setFile(null);\n }, [isShow]);\n\n return (\n \n \n \n \n \n
\n {\n e.persist();\n const files = e.target.files;\n if (files.length > 0) {\n setFileName(files?.[0]?.name);\n setFile(files[0]);\n }\n // 同じファイルがアップロードされた場合でもイベントを発火するため、値をクリアしておく\n e.target.value = '';\n }}\n />\n
\n
\n \n ファイル名:\n
\n
\n {\n setFileName(value);\n }}\n />\n
\n \n\n {errorMessage && (\n
{errorMessage}
\n )}\n
\n \n \n \n
\n );\n};\n\nFileUpload.propTypes = {\n isShow: PropTypes.bool,\n errorMessage: PropTypes.string,\n onClose: PropTypes.func,\n onOk: PropTypes.func,\n};\n\nFileUpload.defaultProps = {\n errorMessage: '',\n};\n\nexport default FileUpload;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\n\nconst MySchoolConfirmModal = ({\n isShow = false,\n message = 'message',\n onOk,\n onCancel,\n isDelete = false,\n}) => {\n return (\n \n 確認\n {message}\n \n
onOk()}>\n {isDelete ? はい : 'はい'}\n
\n
onCancel()}>\n いいえ\n
\n
\n
\n );\n};\n\nexport default MySchoolConfirmModal;\n","import { Modal } from 'react-bootstrap';\n\nimport React, { useEffect, useState } from 'react';\nimport DatePicker, { registerLocale } from 'react-datepicker';\nimport ja from 'date-fns/locale/ja';\nimport GrayButton from '../Buttons/GrayButton';\nimport PrimaryButton from '../Buttons/PrimaryButton';\nimport dayjs from 'dayjs';\nimport GreenButton from '../Buttons/GreenButton';\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst initialState = {\n created_at_from: '',\n created_at_to: '',\n updated_at_from: '',\n updated_at_to: '',\n show_pdf: false,\n show_data: false,\n};\nconst MySchoolRecruitmentSearchModal = ({ isShow, onClose, onOk, filter }) => {\n const [modalFilter, setModalFilter] = useState(initialState);\n useEffect(() => {\n let f = filter;\n for (const k of Object.keys(f)) {\n if (\n (k === 'created_at_from' ||\n k === 'created_at_to' ||\n k === 'updated_at_from' ||\n k === 'updated_at_to') &&\n f[k]\n ) {\n f[k] = dayjs(f[k], 'YYYY/MM/DD').toDate();\n }\n }\n setModalFilter(f);\n }, [filter]);\n return (\n \n \n
\n
絞り込む
\n
\n
\n
\n \n 登録日\n \n \n
\n
\n {\n setModalFilter({\n ...modalFilter,\n created_at_from: date,\n });\n }}\n />\n ~\n {\n setModalFilter({\n ...modalFilter,\n created_at_to: date,\n });\n }}\n />\n
\n
\n
\n
\n \n 更新日\n \n \n
\n
\n {\n setModalFilter({\n ...modalFilter,\n updated_at_from: date,\n });\n }}\n />\n ~\n {\n setModalFilter({\n ...modalFilter,\n updated_at_to: date,\n });\n }}\n />\n
\n
\n
\n
\n \n 登録方法\n \n \n
\n
\n
\n {\n setModalFilter({\n ...modalFilter,\n show_pdf: checked,\n });\n }}\n />\n \n 紙媒体PDF登録\n \n
\n
\n {\n setModalFilter({\n ...modalFilter,\n show_data: checked,\n });\n }}\n />\n \n データ配信\n \n
\n
\n
\n
\n
\n
\n
\n onClose()}\n height={38}\n width={90}\n label=\"閉じる\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n
\n
\n {\n setModalFilter(initialState);\n onOk({\n ...initialState,\n });\n }}\n height={38}\n width={90}\n label=\"クリア\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n
\n
\n {\n let created_at_from = '';\n let created_at_to = '';\n let updated_at_from = '';\n let updated_at_to = '';\n if (modalFilter.created_at_from) {\n let v = modalFilter.created_at_from;\n created_at_from = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n if (modalFilter.created_at_to) {\n let v = modalFilter.created_at_to;\n created_at_to = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n if (modalFilter.updated_at_from) {\n let v = modalFilter.updated_at_from;\n updated_at_from = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n if (modalFilter.updated_at_to) {\n let v = modalFilter.updated_at_to;\n updated_at_to = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n onOk({\n ...modalFilter,\n created_at_from,\n created_at_to,\n updated_at_from,\n updated_at_to,\n });\n }}\n height={38}\n width={90}\n label=\"絞り込む\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n
\n
\n
\n
\n );\n};\n\nexport default MySchoolRecruitmentSearchModal;\n","import React, { useEffect, useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport styled from 'styled-components';\n\nconst HeaderContent = styled.div`\n font-size: 16px;\n`;\n\nconst PdfDeleteModal = ({ fileName, isShow = false, onHide, onDelete }) => {\n const [inputText, setInputText] = useState('');\n\n useEffect(() => {\n setInputText('');\n }, [isShow]);\n\n return (\n \n \n \n 確認\n \n \n \n
「{fileName}」を削除しますか?
\n
削除する場合は「削除」と入力してください
\n setInputText(value)}\n placeholder=\"削除\"\n />\n
\n \n onHide()}>\n キャンセル\n \n onDelete()}>\n 削除\n \n \n \n );\n};\n\nexport default PdfDeleteModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../Buttons/GreenButton';\nimport GrayButton from '../Buttons/GrayButton';\nimport { FacilityDefaultColorStyle } from '../../../utils/constant';\n\nconst RecruitmentPublishConfirmModal = ({\n isShow = false,\n onOk,\n onCancel,\n isAdditional = false,\n}) => {\n return (\n \n \n
\n \n {isAdditional\n ? '求人情報の追加配信を実施しますか?'\n : '求人情報の配信を実施しますか?'}\n
\n \n
\n ※選択施設・配信学校は追加のみ可能です\n
\n
※求人情報はいつでも編集可能です
\n \n
\n
\n onCancel()}\n />\n
\n
\n onOk()}\n />\n
\n
\n \n
\n
\n );\n};\n\nexport default RecruitmentPublishConfirmModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../Buttons/GreenButton';\nimport GrayButton from '../Buttons/GrayButton';\nimport styled from 'styled-components';\n\nconst HeaderContent = styled.div`\n font-size: 16px;\n`;\n\nconst SchoolEndRecruitmentConfirmModal = ({\n isShow = false,\n onCancel,\n onOk,\n}) => {\n return (\n \n \n \n 選択した求人の募集を終了しますか?\n \n \n \n
・学生画面に「募集終了」と表示されます
\n
\n onOk()}\n labelClassName=\"d-flex justify-content-center w-100\"\n label=\"終了する\"\n />\n onCancel()}\n labelClassName=\"d-flex justify-content-center w-100\"\n label=\"いいえ\"\n />\n
\n
\n \n );\n};\n\nexport default SchoolEndRecruitmentConfirmModal;\n","import { useCallback, useEffect, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\n\nconst P = 'EVENT_MODAL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst LOCAL_MASK = `${P}LOCAL_MASK`;\nconst LOCAL_UNMASK = `${P}LOCAL_UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n corporate: {},\n event: {},\n isLoading: false,\n isLocalMask: false,\n bookmarked: false,\n attachedFiles: {},\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...initialState };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case LOCAL_MASK: {\n return { ...state, isLocalMask: true };\n }\n case LOCAL_UNMASK: {\n return { ...state, isLocalMask: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useEventModal = () => {\n const [\n { corporate, event, isLoading, isLocalMask, bookmarked, attachedFiles },\n dispatch,\n ] = useReducer(reducer, initialState);\n useEffect(() => {\n dispatch({ type: INITIALIZE });\n }, []);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const localMask = useCallback(\n () => dispatch({ type: LOCAL_MASK }),\n [dispatch],\n );\n const localUnMask = useCallback(\n () => dispatch({ type: LOCAL_UNMASK }),\n [dispatch],\n );\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const onLoad = useCallback(\n async (eventId) => {\n dispatch({\n type: INITIALIZE,\n });\n mask();\n try {\n const {\n data: { event, corporate, bookmarked },\n } = await HttpRequest.get(`/api/student/events/${eventId}`);\n dispatch({\n type: CHANGE_STATE,\n payload: {\n corporate,\n bookmarked,\n event,\n },\n });\n\n try {\n await HttpRequest.post(\n `/api/student/events/${eventId}/event_viewed_counts`,\n );\n } catch (e) {\n console.error(e);\n }\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n const addBookmark = useCallback(\n async (eventId) => {\n localMask();\n try {\n await HttpRequest.post(`/api/student/event_bookmarks`, {\n event_id: eventId,\n });\n toast.success('ブックマークしました');\n changeState({ bookmarked: true });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n\n const removeBookmark = useCallback(\n async (eventId) => {\n localMask();\n try {\n await HttpRequest.delete(`/api/student/event_bookmarks/${eventId}`);\n toast.success('ブックマークを解除しました');\n changeState({ bookmarked: false });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n const openAttachedFiles = useCallback(\n async (eventId) => {\n localMask();\n try {\n const { data } = await HttpRequest.get(\n `/api/student/events/${eventId}/attached_files`,\n );\n changeState({\n attachedFiles: data,\n });\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n\n return {\n // store\n corporate,\n event,\n isLoading,\n isLocalMask,\n bookmarked,\n attachedFiles,\n // actions\n onLoad,\n addBookmark,\n removeBookmark,\n openAttachedFiles,\n };\n};\n","import React, { useCallback } from 'react';\nimport { isLocal, isProduction } from '../../../utils/common';\nimport styled from 'styled-components';\nimport classNames from 'classnames';\nimport Button from '../Buttons/Button';\n\nconst Title = styled.h5`\n font-weight: bolder !important;\n color: #7a7979;\n margin-bottom: 5px !important;\n font-size: 20px;\n`;\n\nconst SubTitle = styled.span`\n font-size: 14px;\n color: #7a7979;\n`;\n\nconst LinkWrap = styled.div`\n font-size: 15px;\n color: #0079c4;\n`;\n\nconst LinkText = styled.span`\n font-weight: bold !important;\n color: #0079c4;\n`;\n\nconst Base = (props) => {\n const { children } = props;\n return
{children}
;\n};\nconst InnerPanel = ({\n title = '',\n subTitle = '',\n children,\n contentClassName = '',\n disabledBackground = false,\n}) => {\n return (\n \n {title && {title}}\n\n {subTitle && {subTitle}}\n
\n \n {children}\n
\n \n \n );\n};\n\nexport const HomeLeftPane = ({ disabledApplicant }) => {\n const buttonProps = {\n width: 147,\n height: 51,\n textFontSize: 16,\n variant: 'facility_primary',\n className: 'mx-1',\n labelClassName: 'd-flex justify-content-center w-100',\n };\n const dangerButtonProps = {\n ...buttonProps,\n variant: 'facility_danger',\n textFontSize: 14,\n };\n\n return (\n \n \n
\n (location.href = '/my_corporate/corporate_info')}\n label=\"法人情報\"\n />\n
\n
\n (location.href = '/my_corporate/facilities')}\n label=\"施設情報\"\n />\n
\n
\n (location.href = '/my_corporate/corporate_managers')}\n label=\"担当者情報\"\n />\n
\n \n \n
\n (location.href = '/my_corporate/recruitments')}\n label=\"求人情報\"\n />\n
\n
\n \n (location.href = '/my_corporate/introduction_schools')\n }\n label=\"導入学校情報\"\n />\n
\n \n \n
\n {\n location.href = '/my_corporate/applicants';\n }}\n label=\"応募者情報\"\n disabled={disabledApplicant}\n />\n
\n \n \n
\n (location.href = '/my_corporate/options')}\n label=\"オプション一覧\"\n />\n
\n \n {!isProduction && (\n \n (location.href = '/500')}\n label=\"エラー画面確認①\"\n />\n (location.href = '/404')}\n label=\"エラー画面確認②\"\n />\n \n )}\n {/**/}\n {/*
*/}\n {/* (location.href = '/my_corporate/events')}*/}\n {/* label=\"イベント情報\"*/}\n {/* labelClassName=\"d-flex justify-content-center w-100\"*/}\n {/* textFontSize={16}*/}\n {/* disabled={isProduction}*/}\n {/* variant=\"facility_primary\"*/}\n {/* className=\"mx-1\"*/}\n {/* />*/}\n {/*
*/}\n {/*
*/}\n {/* console.log('click')}*/}\n {/* label=\"施設PRページ\"*/}\n {/* labelClassName=\"d-flex justify-content-center w-100\"*/}\n {/* textFontSize={16}*/}\n {/* variant=\"facility_primary\"*/}\n {/* className=\"mx-1\"*/}\n {/* disabled*/}\n {/* />*/}\n {/* /!*TODO: 後でURL変更*!/*/}\n {/*
*/}\n {/**/}\n \n );\n};\n\nexport const ManualLeftPane = ({\n basicInfoManuals = [],\n recruitmentManuals = [],\n onClick,\n}) => {\n const renderManual = useCallback(\n (manual) => {\n return (\n \n
\n ・\n {\n e.preventDefault();\n onClick(manual.id);\n }}>\n {manual.title}\n \n
\n
\n );\n },\n [basicInfoManuals, recruitmentManuals],\n );\n return (\n \n \n {basicInfoManuals.map((manual, index) => renderManual(manual))}\n \n \n {recruitmentManuals.map((manual, index) => renderManual(manual))}\n \n \n );\n};\n\nexport const InquiryLeftPane = ({ children }) => {\n return (\n \n {children}\n \n );\n};\n","import React from 'react';\n\nconst RightPane = () => {\n return (\n <>\n
\n \n \n \n
\n
\n \n \n \n
\n \n );\n};\nexport default RightPane;\n","import React from 'react';\nimport GrayButton from './Buttons/GrayButton';\n\nconst NotFound = ({ redirectPath }) => {\n return (\n
\n {\n e.preventDefault();\n location.href = redirectPath;\n }}\n />\n
\n );\n};\n\nexport default NotFound;\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport { range } from 'lodash';\n\nconst PADDING = 10;\n\nconst FirstPaginationItem = ({ onClick, disabled }) => (\n
  • \n \n
  • \n);\n\nconst LastPaginationItem = ({ onClick, totalPages, disabled }) => (\n
  • \n onClick(totalPages)}>\n 最後へ\n \n
  • \n);\n\nconst PrevPaginationItem = ({ onClick, prevPage, disabled }) => (\n
  • \n onClick(prevPage)}>\n 前へ\n \n
  • \n);\n\nconst NextPaginationItem = ({ onClick, nextPage, disabled }) => (\n
  • \n onClick(nextPage)}>\n 次へ\n \n
  • \n);\n\nconst Pagination = ({ currentPage, totalPages, onPaginationClick }) => {\n // 最初のページ\n const firstPage =\n currentPage > 1 ? (\n \n ) : (\n null} disabled />\n );\n\n // 最後のページ\n const lastPage =\n currentPage !== totalPages && totalPages > 0 ? (\n \n ) : (\n null}\n totalPages={totalPages}\n disabled\n />\n );\n\n // 1つ戻る\n const previousPage =\n currentPage >= 2 ? (\n \n ) : (\n null}\n prevPage={currentPage}\n disabled\n />\n );\n\n // 1つ進む\n const nextPage =\n currentPage + 1 <= totalPages ? (\n \n ) : (\n null}\n nextPage={currentPage}\n disabled\n />\n );\n\n // 現在のページと現在のページの左右にPADDINGで指定した数のアイテムを作成します\n const pages = [\n ...range(currentPage - PADDING, currentPage).filter((page) => page >= 1),\n ...range(currentPage, currentPage + PADDING + 1).filter(\n (page) => page <= totalPages,\n ),\n ].map((page) => {\n // 現在のページかどうかを判定\n const isCurrent = page === currentPage;\n // 現在のページはspanで出力する\n const paginationItem = isCurrent ? (\n {page}\n ) : (\n onPaginationClick(page)}>\n {page}\n \n );\n\n return (\n \n {paginationItem}\n \n );\n });\n\n return (\n
      \n {firstPage}\n {previousPage}\n {pages}\n {nextPage}\n {lastPage}\n
    \n );\n};\n\nFirstPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n};\n\nLastPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n totalPages: PropTypes.number.isRequired,\n};\n\nPrevPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n prevPage: PropTypes.number.isRequired,\n};\n\nNextPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n nextPage: PropTypes.number.isRequired,\n};\n\nPagination.propTypes = {\n currentPage: PropTypes.number.isRequired,\n totalPages: PropTypes.number.isRequired,\n onPaginationClick: PropTypes.func.isRequired,\n};\n\nexport default Pagination;\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport { range } from 'lodash';\nimport styled from 'styled-components';\n\nconst ArrowWrap = styled.span`\n border: 3px solid #ff9999;\n cursor: pointer;\n border-radius: 6px;\n color: #ff9999;\n padding: 5px;\n`;\n\nconst Num = styled.span`\n color: #ff9999;\n cursor: pointer;\n`;\n\nconst PADDING = 3;\n\nconst FirstPaginationItem = ({ onClick, disabled }) => (\n
  • \n onClick(1)}>1\n
  • \n);\n\nconst LastPaginationItem = ({ onClick, totalPages, disabled }) => (\n <>\n {disabled ? (\n {totalPages}\n ) : (\n
  • \n onClick(totalPages)}>{totalPages}\n
  • \n )}\n \n);\n\nconst PrevPaginationItem = ({ onClick, prevPage, disabled }) => (\n
  • \n onClick(prevPage)}>\n \n \n
  • \n);\n\nconst NextPaginationItem = ({ onClick, nextPage, disabled }) => (\n
  • \n onClick(nextPage)}>\n \n \n
  • \n);\n\nconst StudentPagination = ({ currentPage, totalPages, onPaginationClick }) => {\n // 最初のページ\n const firstPage =\n currentPage > 1 ? (\n \n ) : (\n null} disabled />\n );\n\n // 最後のページ\n const lastPage =\n currentPage !== totalPages && totalPages > 0 ? (\n \n ) : (\n null}\n totalPages={totalPages}\n disabled\n />\n );\n\n // 1つ戻る\n const previousPage =\n currentPage >= 2 ? (\n \n ) : (\n null}\n prevPage={currentPage}\n disabled\n />\n );\n\n // 1つ進む\n const nextPage =\n currentPage + 1 <= totalPages ? (\n \n ) : (\n null}\n nextPage={currentPage}\n disabled\n />\n );\n\n // 現在のページと現在のページの左右にPADDINGで指定した数のアイテムを作成します\n const pages = [\n ...range(currentPage - PADDING, currentPage).filter((page) => page >= 1),\n ...range(currentPage, currentPage + PADDING + 1).filter(\n (page) => page <= totalPages,\n ),\n ].map((page) => {\n // 現在のページかどうかを判定\n const isCurrent = page === currentPage;\n // 現在のページはspanで出力する\n const paginationItem = isCurrent ? (\n {page}\n ) : (\n onPaginationClick(page)}>{page}\n );\n\n if (totalPages === page || page >= currentPage + PADDING) {\n return null;\n }\n if (page <= currentPage - PADDING) {\n return null;\n }\n\n return (\n \n {paginationItem}\n \n );\n });\n\n return (\n
      \n {totalPages > 0 && previousPage}\n {currentPage - PADDING > 0 && <>{firstPage}}\n {currentPage - PADDING > 1 && (\n
    • \n ...\n
    • \n )}\n {pages}\n {totalPages > currentPage + PADDING && (\n
    • \n ...\n
    • \n )}\n {totalPages > 0 && lastPage}\n {totalPages > 0 && nextPage}\n
    \n );\n};\n\nFirstPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n};\n\nLastPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n totalPages: PropTypes.number.isRequired,\n};\n\nPrevPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n prevPage: PropTypes.number.isRequired,\n};\n\nNextPaginationItem.propTypes = {\n onClick: PropTypes.func.isRequired,\n nextPage: PropTypes.number.isRequired,\n};\n\nStudentPagination.propTypes = {\n currentPage: PropTypes.number.isRequired,\n totalPages: PropTypes.number.isRequired,\n onPaginationClick: PropTypes.func.isRequired,\n};\n\nexport default StudentPagination;\n","import React from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\n\nconst Paper = (props) => {\n const { className, children, style, title, headerRenderer } = props;\n return (\n \n {title &&
    {title}
    }\n {headerRenderer && headerRenderer()}\n {children}\n \n );\n};\n\nPaper.propTypes = {\n className: PropTypes.string,\n children: PropTypes.any,\n style: PropTypes.object,\n title: PropTypes.string,\n headerRenderer: PropTypes.func,\n};\n\nexport default Paper;\n","import React from 'react';\nimport { PREFECTURE_LIST } from '../../utils/prefecture';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nconst RequiredText = styled.span`\n color: #ff9999;\n`;\n\nconst Label = styled.label`\n font-size: 12px;\n`;\n\nconst PrefectureSelect = ({\n label,\n required = false,\n selectedValue,\n onChange,\n editMode = false,\n register = {},\n disabled = false,\n name = null,\n}) => {\n const customParams = {};\n if (name) {\n customParams.name = name;\n }\n\n return (\n <>\n {label && (\n \n )}\n \n \n {PREFECTURE_LIST.map((pref) => (\n \n {pref.name}\n \n ))}\n \n \n );\n};\n\nPrefectureSelect.propTypes = {\n label: PropTypes.string,\n required: PropTypes.bool,\n selectedValue: PropTypes.any,\n onChange: PropTypes.func,\n editMode: PropTypes.bool,\n};\n\nexport default PrefectureSelect;\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport styled from 'styled-components';\nimport PinkButton from '../Buttons/PinkButton';\nimport StudentPagination from '../Paginations/StudentPagination';\n\nconst DetailButtonDefault = styled.button`\n font-size: 12px;\n border-radius: 100px;\n border: 1px solid #545454;\n width: 86px;\n height: 34px;\n`;\n\nconst DetailButtonRecruit = styled.button`\n font-size: 10px;\n border-radius: 100px;\n border: 1px solid #ff9999;\n color: white;\n background: #ff9999;\n width: 86px;\n height: 36px;\n`;\n\nconst NameField = styled.div`\n font-size: 14px;\n color: #555252;\n`;\n\nconst AddressField = styled.div`\n font-size: 10px;\n color: #555252;\n`;\n\nconst CorporateRecruitmentResultList = ({\n corporates,\n currentPage,\n totalPages,\n onPaginate,\n onRetrySearch,\n isGeneralType,\n}) => {\n return (\n <>\n
    \n {corporates?.map((corporate) => (\n
    \n
    \n
    \n {corporate?.name}\n \n {corporate?.address}\n \n
    \n
    \n {corporate?.recruitment_active_date ? (\n \n (location.href = `/student/corporates/${corporate.id}${\n isGeneralType ? '?type=general' : ''\n }`)\n }>\n 詳細を見る\n
    \n (求人あり)\n \n ) : (\n {\n if (isGeneralType) {\n location.href = `/student/corporations/${corporate.id}`;\n } else {\n location.href = `/student/corporates/${corporate.id}`;\n }\n }}>\n 詳細を見る\n \n )}\n
    \n
    \n
    \n ))}\n
    \n {onRetrySearch && (\n
    \n {\n e.preventDefault();\n onRetrySearch?.();\n }}\n />\n
    \n )}\n
    \n \n
    \n \n );\n};\n\nCorporateRecruitmentResultList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n onPaginate: PropTypes.func,\n onRetrySearch: PropTypes.func,\n isGeneralType: PropTypes.bool,\n};\n\nCorporateRecruitmentResultList.defaultProps = {\n facilities: [],\n currentPage: 1,\n totalPages: 1,\n onPaginate: () => {},\n isGeneralType: false,\n};\n\nexport default CorporateRecruitmentResultList;\n","import React, { useState } from 'react';\nimport styled from 'styled-components';\nimport PinkButton from '../Buttons/PinkButton';\nimport StudentPagination from '../Paginations/StudentPagination';\nimport EventModal from '../Modal/EventModal';\n\nconst GreenColorIcon = styled.span`\n color: #4dcb00;\n font-family: Osaka, MS Pゴシック, ms pgothic, Sans-Serif;\n margin-right: 8px;\n font-size: 10px;\n`;\n\nconst FacilityTypeField = styled.span`\n font-size: 10px;\n color: #555252;\n`;\n\nconst NameField = styled.div`\n font-size: 14px;\n color: #555252;\n`;\n\nconst EventDateField = styled.div`\n font-size: 10px;\n color: #555252;\n`;\n\nconst AddressField = styled.div`\n font-size: 10px;\n color: #555252;\n`;\n\nconst CorporateNameField = styled.div`\n font-size: 10px;\n color: #555252;\n`;\n\nconst DetailButtonDefault = styled.button`\n font-size: 12px;\n border-radius: 100px;\n border: 1px solid #545454;\n width: 86px;\n height: 40px;\n`;\n\nconst ApplicantHistoryButton = styled.button`\n font-size: 12px;\n border: 1px solid #ff9999;\n border-radius: 100px;\n color: white;\n background: #ff9999;\n width: 86px;\n height: 34px;\n`;\n\nconst EventResultList = ({\n events,\n currentPage,\n totalPages,\n onPaginate,\n onRetrySearch,\n onApplicantHistory,\n}) => {\n const [modalEventId, setModalEventId] = useState(null);\n const [isOpenEventModal, setIsOpenEventModal] = useState(false);\n const openModal = (eventId) => {\n if (eventId) {\n setModalEventId(eventId);\n setIsOpenEventModal(true);\n }\n };\n\n const closeModal = () => {\n setIsOpenEventModal(false);\n setModalEventId(null);\n };\n\n const getEventDetailButtonLabel = (event) => {\n if (event.is_end_recruitment || event.is_end_event) {\n return
    ※募集終了
    ;\n }\n if (event.is_full) {\n return
    【満員】
    ;\n }\n return '';\n };\n\n const getEventDetailButtonColor = (event) => {\n if (event.is_end_recruitment || event.is_end_event) {\n return { background: '#BFBFBF' };\n }\n return {};\n };\n\n return (\n <>\n
    \n {events?.map((event) => (\n
    \n
    \n
    \n
    \n \n \n {event.target_facility_type_names.join('・')}\n \n
    \n {event?.title}\n \n 開催日:{event?.event_date_ja}\n \n
    \n {event?.address}\n \n {event.corporate_name}\n \n
    \n
    \n
    \n {onApplicantHistory && event.applicant_history_id && (\n \n onApplicantHistory?.(event.applicant_history_id)\n }>\n 申込履歴\n \n )}\n openModal(event.id)}>\n
    詳細を見る
    \n {getEventDetailButtonLabel(event)}\n \n
    \n
    \n
    \n ))}\n
    \n closeModal()}\n />\n\n {onRetrySearch && (\n
    \n {\n e.preventDefault();\n onRetrySearch?.();\n }}\n />\n
    \n )}\n
    \n \n
    \n \n );\n};\n\nexport default EventResultList;\n","import PropTypes from 'prop-types';\nimport React, { useState } from 'react';\nimport styled from 'styled-components';\nimport PinkButton from '../Buttons/PinkButton';\nimport FacilityModal from '../Modal/FacilityModal';\nimport StudentPagination from '../Paginations/StudentPagination';\n\nconst PublicColorIcon = styled.span`\n color: #5b9bd5;\n font-family: Osaka, MS Pゴシック, ms pgothic, Sans-Serif;\n margin-right: 8px;\n font-size: 10px;\n`;\n\nconst PrivateColorIcon = styled.span`\n color: #ffc000;\n font-family: Osaka, MS Pゴシック, ms pgothic, Sans-Serif;\n margin-right: 8px;\n font-size: 10px;\n`;\n\nconst DetailButtonDefault = styled.button`\n font-size: 12px;\n border-radius: 100px;\n border: 1px solid #545454;\n width: 86px;\n height: 34px;\n`;\n\nconst DetailButtonRecruit = styled.button`\n font-size: 10px;\n border-radius: 100px;\n border: 1px solid #ff9999;\n color: white;\n background: #ff9999;\n width: 86px;\n height: 36px;\n`;\n\nconst FacilityTypeField = styled.span`\n font-size: 10px;\n color: #555252;\n`;\n\nconst NameField = styled.div`\n font-size: 14px;\n color: #555252;\n`;\n\nconst AddressField = styled.div`\n font-size: 10px;\n color: #555252;\n`;\n\nconst FacilityRecruitmentResultList = ({\n facilities,\n currentPage,\n totalPages,\n isReport = false,\n onPaginate,\n onRetrySearch,\n onReportBtnClick,\n hideModalButton = false,\n}) => {\n const [modalFacilityId, setModalFacilityId] = useState(null);\n const [isOpenFacilityModal, setIsOpenFacilityModal] = useState(false);\n\n const openModal = (facilityId) => {\n if (facilityId) {\n setModalFacilityId(facilityId);\n setIsOpenFacilityModal(true);\n }\n };\n\n const closeModal = () => {\n setIsOpenFacilityModal(false);\n setModalFacilityId(null);\n };\n\n return (\n <>\n
    \n {facilities?.map((facility) => (\n
    \n
    \n
    \n
    \n {facility?.operator === '公営' ? (\n \n ) : (\n \n )}\n \n {facility?.facility_type}・{facility?.operator}\n \n
    \n {facility?.name}\n \n {facility?.address}\n \n
    \n {!hideModalButton && (\n
    \n {facility?.recruitment_active_date ? (\n openModal(facility.id)}>\n
    詳細を見る
    \n
    (求人あり)
    \n \n ) : (\n openModal(facility.id)}>\n 詳細を見る\n \n )}\n
    \n )}\n
    \n
    \n ))}\n
    \n closeModal()}\n onReportBtnClick={onReportBtnClick}\n />\n {onRetrySearch && (\n
    \n {\n e.preventDefault();\n onRetrySearch?.();\n }}\n />\n
    \n )}\n
    \n \n
    \n \n );\n};\n\nFacilityRecruitmentResultList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n isReport: PropTypes.bool,\n onPaginate: PropTypes.func,\n onRetrySearch: PropTypes.func,\n onReportBtnClick: PropTypes.func,\n};\n\nFacilityRecruitmentResultList.defaultProps = {\n facilities: [],\n currentPage: 1,\n totalPages: 1,\n isReport: false,\n onPaginate: () => {},\n onReportBtnClick: () => {},\n};\n\nexport default FacilityRecruitmentResultList;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst CorporateOptionTable = (props) => {\n const { corporates, register, corporateIds } = props;\n\n const itemLen = corporates.length;\n const currentPage = 1;\n\n return (\n \n \n \n \n \n \n \n \n \n \n {corporates.map((corporate, i) => (\n \n \n \n \n \n \n ))}\n \n
    \n #\n 法人名郵便番号紐付
    {itemLen * (currentPage - 1) + i + 1}\n \n \n \n \n \n
    \n );\n};\n\nCorporateOptionTable.propTypes = {\n corporates: PropTypes.array,\n corporateIds: PropTypes.array,\n register: PropTypes.func,\n};\n\nexport default CorporateOptionTable;\n","import PropTypes from 'prop-types';\nimport React, { useCallback, useRef, useState } from 'react';\nimport styled from 'styled-components';\nimport { getFacilityStatusText } from '../../../utils/common';\nimport BodyCell from '../Table/BodyCell';\nimport HeadCell from '../Table/HeadCell';\nimport Table from '../Table/Table';\nimport TableBody from '../Table/TableBody';\nimport TableHead from '../Table/TableHead';\nimport TableRow from '../Table/TableRow';\nimport GreenButton from '../Buttons/GreenButton';\nimport GrayButton from '../Buttons/GrayButton';\nimport DeleteModal from '../Modal/DeleteModal';\n\nconst Link = styled.div`\n color: #0d6efd;\n text-decoration: underline;\n &:hover {\n cursor: pointer;\n color: #0a58ca;\n }\n`;\n\nconst FacilityList = ({\n data,\n targetIds,\n removeAllTargets,\n addAllTargets,\n removeTargetId,\n addTargetId,\n onClick,\n hideAuthorization = true,\n hideOperator = true,\n hideHp = true,\n hideUpdatedAt = true,\n hideLink = false,\n hideCheck = false,\n showStatus = false,\n showRecruitmentRegisteredAt = true,\n showRelatedRecruitmentTitle = false,\n showFacilityViewedCount = false,\n showRelatedCorporateName = false,\n disableRecruitmentLink = false,\n stickyHeader = false,\n withDeletedLabel = false,\n showTopImageFile = false,\n canUploadTopImage = false,\n uploadTopImage = () => {},\n sortHeaders = [],\n onSort,\n disabledIds = [],\n deleteTopImage = () => {},\n nameRenderer = null,\n}) => {\n const [topImageDeleteFacilityId, setTopImageDeleteFacilityId] = useState();\n const inputRef = useRef();\n const getSortIcon = (key) => {\n const sortHeader = sortHeaders.find((sortHeader) => sortHeader.key === key);\n if (!sortHeader) {\n return (\n
    \n \n
    \n );\n }\n if (sortHeader.order === 'asc') {\n return (\n
    \n \n
    \n );\n }\n if (sortHeader.order === 'desc') {\n return (\n
    \n \n
    \n );\n }\n return (\n
    \n \n
    \n );\n };\n const renderCorporateRecruitment = useCallback(\n (recruitments) => {\n if (recruitments?.length > 0) {\n const cnt = recruitments.length;\n const id = recruitments[0].parent_recruitment_id ?? recruitments[0].id;\n const title =\n recruitments[0].title.length > 20\n ? `${recruitments[0].title.slice(0, 20)}...`\n : recruitments[0].title;\n const elem =\n id && !disableRecruitmentLink ? (\n \n {title}\n \n ) : (\n {title}\n );\n return (\n <>\n {elem}\n {cnt > 0 ? (\n <>\n \n \n ) : (\n ''\n )}\n \n );\n }\n return null;\n },\n [disableRecruitmentLink],\n );\n return (\n
    \n \n \n {!hideCheck && (\n \n targetIds.filter((_) => !disabledIds.includes(_)).length > 0\n ? removeAllTargets()\n : addAllTargets()\n }>\n \n targetIds.filter((_) => !disabledIds.includes(_)).length > 0\n ? removeAllTargets()\n : addAllTargets()\n }\n checked={\n targetIds.filter((_) => !disabledIds.includes(_)).length > 0\n }\n />\n \n )}\n {!hideAuthorization && }\n {!hideOperator && }\n {!hideHp && }\n {\n const sortHeader = sortHeaders.find(\n (sortHeader) => sortHeader.key === 'facility_type',\n );\n let nextOrder = sortHeader?.order === 'asc' ? 'desc' : 'asc';\n if (sortHeader?.order === 'desc') {\n nextOrder = null;\n }\n onSort?.('facility_type', nextOrder);\n }}\n clickable={!!onSort}>\n {onSort && getSortIcon('facility_type')}\n \n {\n const sortHeader = sortHeaders.find(\n (sortHeader) => sortHeader.key === 'name',\n );\n let nextOrder = sortHeader?.order === 'asc' ? 'desc' : 'asc';\n if (sortHeader?.order === 'desc') {\n nextOrder = null;\n }\n onSort?.('name', nextOrder);\n }}\n clickable={!!onSort}>\n {onSort && getSortIcon('name')}\n \n {\n const sortHeader = sortHeaders.find(\n (sortHeader) => sortHeader.key === 'postal_code',\n );\n let nextOrder = sortHeader?.order === 'asc' ? 'desc' : 'asc';\n if (sortHeader?.order === 'desc') {\n nextOrder = null;\n }\n onSort?.('postal_code', nextOrder);\n }}\n clickable={!!onSort}>\n {onSort && getSortIcon('postal_code')}\n \n {\n const sortHeader = sortHeaders.find(\n (sortHeader) => sortHeader.key === 'address',\n );\n let nextOrder = sortHeader?.order === 'asc' ? 'desc' : 'asc';\n if (sortHeader?.order === 'desc') {\n nextOrder = null;\n }\n onSort?.('address', nextOrder);\n }}\n clickable={!!onSort}>\n {onSort && getSortIcon('address')}\n \n \n \n {showStatus && }\n {showRecruitmentRegisteredAt && (\n \n )}\n {showRelatedRecruitmentTitle && (\n \n )}\n {showFacilityViewedCount && (\n \n )}\n {showRelatedCorporateName && (\n \n )}\n {showTopImageFile && (\n <>\n \n {canUploadTopImage && (\n \n )}\n \n )}\n {!hideUpdatedAt && }\n \n \n {data.map((facility) => (\n \n {!hideCheck && (\n {\n if (disabledIds.includes(facility.id)) {\n return;\n }\n targetIds.includes(facility.id)\n ? removeTargetId(facility.id)\n : addTargetId(facility.id);\n }}>\n {\n if (disabledIds.includes(facility.id)) {\n return;\n }\n targetIds.includes(facility.id)\n ? removeTargetId(facility.id)\n : addTargetId(facility.id);\n }}\n checked={targetIds.includes(facility.id)}\n value={facility.id}\n disabled={disabledIds.includes(facility.id)}\n />\n \n )}\n {!hideAuthorization && (\n {facility.authorization}\n )}\n {!hideOperator && {facility.operator}}\n {!hideHp && (\n \n {facility.site_url ? (\n \n {/*20文字まで*/}\n {facility.site_url.length > 20\n ? `${facility.site_url.slice(0, 20)}...`\n : facility.site_url}\n \n ) : (\n '-'\n )}\n \n )}\n {facility.facility_type}\n \n {!hideLink && nameRenderer ? (\n nameRenderer(facility)\n ) : (\n <>\n {hideLink ? (\n <>\n {facility.name}\n {withDeletedLabel && !!facility.deleted && (\n <>削除済み\n )}\n \n ) : (\n onClick?.(facility.id)}>\n {facility.name}\n {withDeletedLabel && !!facility.deleted && (\n <>削除済み\n )}\n \n )}\n \n )}\n \n {facility.postal_code}\n {facility.address}\n {facility.tel}\n \n {facility.children_count_limit}\n \n {showStatus && (\n \n {getFacilityStatusText(facility.status)}\n \n )}\n {showRecruitmentRegisteredAt && (\n \n {facility?.recruitment_created_at}\n \n )}\n {showRelatedRecruitmentTitle && (\n \n {renderCorporateRecruitment(facility?.related_recruitments)}\n \n )}\n {showFacilityViewedCount && (\n \n {facility?.current_year_facility_viewed_count ?? 0}\n \n )}\n {showRelatedCorporateName && (\n \n {facility?.corporate_name}\n \n )}\n {showTopImageFile && (\n <>\n \n {facility.top_image_file_path ? (\n
    \n \n
    \n ) : (\n
    \n \"\"\n
    \n )}\n
    \n {canUploadTopImage && (\n \n
    \n {\n uploadTopImage(\n inputRef.current.facility_id,\n e.target.files[0],\n );\n }}\n style={{\n display: 'none',\n }}\n ref={inputRef}\n />\n {\n e.preventDefault();\n inputRef.current.click();\n inputRef.current.facility_id = facility.id;\n }}\n width={90}\n height={30}\n label=\"アップロード\"\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n
    \n
    \n {\n e.preventDefault();\n setTopImageDeleteFacilityId(facility.id);\n }}\n disabled={!facility.origin_top_image_file_path}\n width={90}\n height={30}\n label=\"画像削除\"\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n
    \n
    \n )}\n \n )}\n {!hideUpdatedAt && (\n \n {facility.updated_at}\n \n )}\n
    \n ))}\n
    \n
    \n setTopImageDeleteFacilityId(null)}\n onDelete={() =>\n deleteTopImage(topImageDeleteFacilityId).then(() =>\n setTopImageDeleteFacilityId(null),\n )\n }\n okLabel=\"はい\"\n cancelLabel=\"いいえ\"\n message=\"削除しますか?\"\n />\n
    \n );\n};\n\nFacilityList.propTypes = {\n data: PropTypes.array,\n targetIds: PropTypes.array,\n removeTargetId: PropTypes.func,\n addTargetId: PropTypes.func,\n removeAllTargets: PropTypes.func,\n addAllTargets: PropTypes.func,\n onClick: PropTypes.func,\n hideLink: PropTypes.bool,\n hideCheck: PropTypes.bool,\n showStatus: PropTypes.bool,\n showRecruitmentRegisteredAt: PropTypes.bool,\n showRelatedRecruitmentTitle: PropTypes.bool,\n showRelatedCorporateName: PropTypes.bool,\n stickyHeader: PropTypes.bool,\n withDeletedLabel: PropTypes.bool,\n showTopImageFile: PropTypes.bool,\n canUploadTopImage: PropTypes.bool,\n uploadTopImage: PropTypes.func,\n deleteTopImage: PropTypes.func,\n};\n\nFacilityList.defaultProps = {\n data: [],\n targetIds: [],\n removeTargetId: (_) => {},\n addTargetId: (_) => {},\n removeAllTargets: () => {},\n addAllTargets: () => {},\n onClick: (_) => {},\n hideLink: false,\n hideCheck: false,\n showStatus: false,\n showRecruitmentRegisteredAt: true,\n showRelatedRecruitmentTitle: false,\n showRelatedCorporateName: false,\n stickyHeader: false,\n withDeletedLabel: false,\n showTopImageFile: false,\n canUploadTopImage: false,\n uploadTopImage: () => {},\n deleteTopImage: () => {},\n};\n\nexport default FacilityList;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst FacilityOptionTable = (props) => {\n const { facilities, facilityIds, register } = props;\n\n const itemLen = facilities.length;\n const currentPage = 1;\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n {facilities.map((facility, i) => (\n \n \n \n \n \n \n \n \n ))}\n \n
    \n #\n 求人情報都道府県住所施設形態紐付
    {itemLen * (currentPage - 1) + i + 1}\n \n \n \n \n \n \n \n \n \n
    \n );\n};\n\nFacilityOptionTable.propTypes = {\n facilities: PropTypes.array,\n facilityIds: PropTypes.array,\n register: PropTypes.func,\n};\n\nexport default FacilityOptionTable;\n","import React, { useCallback } from 'react';\nimport styled from 'styled-components';\nimport classNames from 'classnames';\nimport Button from '../Buttons/Button';\n\nconst Title = styled.h5`\n font-weight: bolder !important;\n color: #7a7979;\n margin-bottom: 5px !important;\n font-size: 20px;\n`;\n\nconst SubTitle = styled.span`\n font-size: 14px;\n color: #7a7979;\n`;\n\nconst LinkWrap = styled.div`\n font-size: 15px;\n color: #0079c4;\n`;\n\nconst LinkText = styled.span`\n font-weight: bold !important;\n color: #0079c4;\n`;\n\nconst Base = (props) => {\n const { children } = props;\n return
    {children}
    ;\n};\nconst InnerPanel = ({\n title = '',\n subTitle = '',\n children,\n contentClassName = '',\n disabledBackground = false,\n}) => {\n return (\n \n {title && {title}}\n\n {subTitle && {subTitle}}\n
    \n \n {children}\n
    \n \n \n );\n};\n\nexport const HomeLeftPane = ({ disabledApplicant }) => {\n const buttonProps = {\n width: 140,\n height: 56,\n textFontSize: 16,\n variant: 'school_primary',\n className: 'mx-1',\n labelClassName: 'd-flex justify-content-center w-100',\n };\n\n return (\n \n \n
    \n (location.href = '/my_school/students')}\n label=\"学生情報\"\n />\n
    \n \n \n
    \n (location.href = '/my_school/corporates')}\n label=\"法人情報\"\n />\n
    \n
    \n (location.href = '/my_school/facilities')}\n label=\"施設情報\"\n />\n
    \n
    \n (location.href = '/my_school/recruitments')}\n label=\"求人情報\"\n />\n
    \n \n \n
    \n (location.href = '/my_school/edit')}\n label=\"学校情報\"\n />\n
    \n
    \n (location.href = '/my_school/advisors')}\n label=\"担当者情報\"\n />\n
    \n \n \n );\n};\n\nexport const ManualLeftPane = ({\n commonPlanManuals = [],\n premiumPlanManuals = [],\n onClick,\n}) => {\n const renderManual = useCallback(\n (manual) => {\n return (\n \n
    \n ・\n {\n e.preventDefault();\n onClick(manual.id);\n }}>\n {manual.title}\n \n
    \n
    \n );\n },\n [onClick],\n );\n return (\n \n \n {commonPlanManuals.map((manual) => renderManual(manual))}\n \n \n {premiumPlanManuals.map((manual) => renderManual(manual))}\n \n \n );\n};\n\nexport const InquiryLeftPane = ({ children }) => {\n return (\n \n {children}\n \n );\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst RadioOptions = (props) => {\n const { register, fieldName, options } = props;\n\n return (\n
    \n {options.map((option, i) => (\n
    \n \n \n {option.label || option.value}\n \n
    \n ))}\n
    \n );\n};\n\nRadioOptions.propTypes = {\n register: PropTypes.func,\n options: PropTypes.array,\n fieldName: PropTypes.string,\n};\n\nexport default RadioOptions;\n","import React, { useState } from 'react';\nimport dayjs from 'dayjs';\nimport DatePicker from 'react-datepicker';\nimport { useFieldArray } from 'react-hook-form';\n\nimport AttachedFileDeleteModal from '../Modal/AttachedFileDeleteModal';\nimport BodyCell from '../Table/BodyCell';\nimport FileUpload from '../Modal/FileUpload';\nimport GrayButton from '../Buttons/GrayButton';\nimport GreenButton from '../Buttons/GreenButton';\nimport HeadCell from '../Table/HeadCell';\nimport Paper from '../Paper/Paper';\nimport Table from '../Table/Table';\nimport TableBody from '../Table/TableBody';\nimport TableRow from '../Table/TableRow';\nimport TableHead from '../Table/TableHead';\nimport Trash from '../Trash';\nimport VerticalDivider from '../Divider/VerticalDivider';\nimport { emailReg, inputOnlyNumber, phoneReg } from '../../../utils/common';\nimport Title from './Title';\n\nconst RecruitmentForm = ({\n facilityId = null,\n recruitment = null,\n pdfs,\n isShowAttachment,\n hasRecruitmentPdf,\n openRecruitmentPdf,\n pdfDisabled,\n watch,\n setValue,\n disabled,\n formDisabled,\n errors,\n isOldFormat,\n register,\n control,\n addPdfFiles,\n addRecruitmentPdf,\n deletePdfFile,\n}) => {\n const now = dayjs();\n const [isOpenFileUploadModal, setIsOpenFileUploadModal] = useState(false);\n const [\n isOpenRecruitmentFileUploadModal,\n setIsOpenRecruitmentFileUploadModal,\n ] = useState(false);\n const [isOpenAttachedFileDeleteModal, setIsOpenAttachedFileDeleteModal] =\n useState(false);\n const [deleteTargetFile, setDeleteTargetFile] = useState({\n id: null,\n filePath: null,\n name: null,\n });\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '200px',\n };\n\n const jobTypeOptionField = useFieldArray({\n control,\n name: 'recruitment_job_type_options',\n });\n\n const allowanceOptionField = useFieldArray({\n control,\n name: 'recruitment_allowance_options',\n });\n const maximumFractionDigits = 1;\n\n const calcCategoryTargetSalary = (base = 0, items = []) => {\n const filtered = items?.filter((f) => !isNaN(f.amount));\n if (filtered?.length > 0) {\n return (\n Number(base) +\n filtered\n .map((f) => Number(f.amount))\n .reduce(function (sum, elem) {\n return sum + elem;\n })\n );\n }\n return base ? base : 0;\n };\n\n const calcCategoryAllSalary = (base = 0, items = []) => {\n const filtered = items?.filter(\n (f) => f.category === 'all' && !isNaN(f.amount),\n );\n if (filtered?.length > 0) {\n return (\n Number(base) +\n filtered\n .map((f) => Number(f.amount))\n .reduce(function (sum, elem) {\n return sum + elem;\n })\n );\n }\n return base ? base : 0;\n };\n\n return (\n <>\n (\n
    \n
    \n \n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF確認\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-file-earmark-text\" />}\n onClick={(e) => {\n e.preventDefault();\n openRecruitmentPdf();\n }}\n disabled={!hasRecruitmentPdf}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenRecruitmentFileUploadModal(true);\n }}\n disabled={pdfDisabled}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 公開開始日\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('release_date')}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください (未指定の場合は現在時刻が設定されます)\"\n selected={watch('release_date') ?? ''}\n onChange={(date) => {\n setValue('release_date', date);\n }}\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.release_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n {isOldFormat ? (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用職種\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('job_type')}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"教諭・保育士など\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.job_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用人数\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruitment_number')}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"教諭:〇人、保育士:〇人\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruitment_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n </>\n ) : (\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用職種・人数\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {jobTypeOptionField.fields.map((field, i) => (\n <div\n className=\"d-flex flex-row align-items-center mb-2\"\n key={field.id}>\n <div className=\"d-flex flex-column justify-content-start w-100\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register(\n `recruitment_job_type_options.${i}.name`,\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '200px' }}\n disabled={disabled || formDisabled}\n />\n <input\n {...register(\n `recruitment_job_type_options.${i}.recruitment_number`,\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '100px' }}\n onChange={({ target: { value } }) => {\n const field = `recruitment_job_type_options.${i}.recruitment_number`;\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n disabled={disabled || formDisabled}\n />\n <span style={{ fontSize: '14px' }}>名</span>\n </div>\n <div className=\"d-flex flex-column\">\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_job_type_options?.[i]?.name\n ?.message\n }\n </span>\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_job_type_options?.[i]\n ?.recruitment_number?.message\n }\n </span>\n </div>\n </div>\n {jobTypeOptionField.fields.length > 1 &&\n !disabled &&\n !formDisabled && (\n <div className=\"d-flex justify-content-end w-100\">\n <span\n className=\"text-danger\"\n onClick={() => {\n jobTypeOptionField.remove(i);\n }}\n style={{\n fontSize: '14px',\n cursor: 'pointer',\n }}>\n <i className=\"bi bi-dash-circle-fill\" />\n </span>\n </div>\n )}\n </div>\n ))}\n {jobTypeOptionField.fields.length < 10 &&\n !disabled &&\n !formDisabled && (\n <span\n className=\"mt-1\"\n style={{\n color: '#92D050',\n fontSize: '14px',\n cursor: 'pointer',\n }}\n onClick={() => {\n jobTypeOptionField.append({});\n }}>\n <i className=\"bi bi-plus-circle-fill\" />\n <span className=\"ps-1\" style={{ color: '#666666' }}>\n 職種を追加する\n </span>\n </span>\n )}\n </BodyCell>\n </TableRow>\n )}\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 就労形態\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('working_form')}\n className=\"form-select\"\n style={{ width: '100%' }}\n disabled={disabled || formDisabled}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'employee', label: '正社員' },\n { value: 'contract_employee', label: '契約社員' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n {watch('working_form') === 'other' && (\n <input\n {...register('working_form_info', {\n required:\n watch('working_form') === 'other'\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n type=\"string\"\n placeholder=\"その他を選択した場合、内容をこちらに入力してください。\"\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額基本給与\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('monthly_salary')}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ width: '90%' }}\n onChange={({ target: { value } }) => {\n const field = 'monthly_salary';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n disabled={disabled || formDisabled}\n />\n 円\n <span className=\"text-danger\">\n {errors?.salary_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n {isOldFormat ? (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額諸手当\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_allowance')}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇〇手当: 〇〇円 〇〇手当: 〇〇円\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.monthly_allowance?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額総支給額\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_salary_total')}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇〇の場合:〇〇円 〇〇の場合:〇〇円\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.monthly_salary_total?.message}\n </span>\n </BodyCell>\n </TableRow>\n </>\n ) : (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額諸手当\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {allowanceOptionField.fields.map((field, i) => (\n <div\n className=\"d-flex flex-row align-items-center mb-2\"\n key={field.id}>\n <div className=\"d-flex flex-column justify-content-start w-100\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.name`,\n )}\n type=\"text\"\n className=\"form-control\"\n style={{ maxWidth: '200px' }}\n placeholder=\"○○手当\"\n disabled={disabled || formDisabled}\n />\n <VerticalDivider\n height=\"30px\"\n hrClassName=\"mx-2\"\n />\n <span className=\"me-2\">月額手当額</span>\n <input\n {...register(\n `recruitment_allowance_options.${i}.amount`,\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '150px' }}\n placeholder=\"5000\"\n onChange={({ target: { value } }) => {\n const field = `recruitment_allowance_options.${i}.amount`;\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n disabled={disabled || formDisabled}\n />\n 円\n <VerticalDivider\n height=\"30px\"\n hrClassName=\"mx-2\"\n />\n <div className=\"d-flex align-items-center me-2\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.category`,\n )}\n type=\"radio\"\n id={`recruitment_allowance_options.${i}.category_all`}\n className=\"form-check-input me-1\"\n value=\"all\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor={`recruitment_allowance_options.${i}.category_all`}>\n 応募者に一律支給\n </label>\n </div>\n <div className=\"d-flex align-items-center\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.category`,\n )}\n type=\"radio\"\n id={`recruitment_allowance_options.${i}.category_target`}\n className=\"form-check-input me-1\"\n value=\"target\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor={`recruitment_allowance_options.${i}.category_target`}>\n 対象者のみ支給\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-column\">\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_allowance_options?.[i]\n ?.name?.message\n }\n </span>\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_allowance_options?.[i]\n ?.amount?.message\n }\n </span>\n </div>\n </div>\n {allowanceOptionField.fields.length > 1 &&\n !disabled &&\n !formDisabled && (\n <div className=\"d-flex justify-content-end\">\n <span\n className=\"text-danger\"\n onClick={() => {\n allowanceOptionField.remove(i);\n }}\n style={{\n fontSize: '14px',\n cursor: 'pointer',\n }}>\n <i className=\"bi bi-dash-circle-fill\" />\n </span>\n </div>\n )}\n </div>\n ))}\n {allowanceOptionField.fields.length < 10 &&\n !disabled &&\n !formDisabled && (\n <span\n className=\"mt-1\"\n style={{\n color: '#92D050',\n fontSize: '14px',\n cursor: 'pointer',\n }}\n onClick={() => {\n allowanceOptionField.append({\n category: 'all',\n });\n }}>\n <i className=\"bi bi-plus-circle-fill\" />\n <span className=\"ps-1\" style={{ color: '#666666' }}>\n 手当を追加する\n </span>\n </span>\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 諸手当備考\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_allowance_note')}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"支給に関する諸条件など\"\n disabled={disabled || formDisabled}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額総支給額\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcCategoryAllSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n )}\n />\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>\n 対象者のみ支給額\n </span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcCategoryTargetSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n )}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </>\n )}\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 賞与支給条件\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('bonus_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"通常 :年〇回 基本給与〇ヵ月分 初年度:年〇回 基本給与〇ヵ月分\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.bonus_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間賞与支給予定額\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n {...register('est_yearly_bonus_amount_for_uniformly')}\n className=\"form-control\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'est_yearly_bonus_amount_for_uniformly';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n disabled={disabled || formDisabled}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>対象者のみ支給額</span>\n <input\n {...register('est_yearly_bonus_amount_for_target')}\n className=\"form-control\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'est_yearly_bonus_amount_for_target';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n disabled={disabled || formDisabled}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n </div>\n <div className=\"text-danger\">\n {errors?.est_yearly_bonus_amount_for_uniformly?.message ??\n errors.est_yearly_bonus_amount_for_target?.message}\n </div>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間総支給額(自動)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={\n recruitment?.est_yearly_bonus_amount_for_uniformly_year?.toLocaleString() ??\n '-'\n }\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>対象者のみ支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={\n recruitment?.est_yearly_bonus_amount_for_target_year?.toLocaleString() ??\n '-'\n }\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 給与備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_salary_note')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"年収〇〇円、諸手当は該当者のみ\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.monthly_salary_note?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 昇給\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('salary_rise_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"年〇回 〇円~〇円、〇%~〇%\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.salary_rise_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 交通費\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('travel_expense_cover_option')}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}\n disabled={disabled || formDisabled}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'all', label: '全額支給' },\n { value: 'some', label: '一部支給' },\n { value: 'nothing', label: 'なし' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.travel_expense_cover_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 交通費備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('travel_expense_cover_info')}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.travel_expense_cover_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 加入保険等\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('insurance_policy_info')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.insurance_policy_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 福利厚生\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('welfare_info')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.welfare_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 家賃補助\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('housing_allowance_option')}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}\n disabled={disabled || formDisabled}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'all', label: '全額支給' },\n { value: 'some', label: '一部支給' },\n { value: 'nothing', label: 'なし' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.housing_allowance_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 家賃補助備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('housing_allowance_info')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.housing_allowance_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 勤務時間(平日)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('weekday_working_hour_info')}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"00:00~00:00(休憩時間〇時間)\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.weekday_working_hour_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 勤務時間(平日以外)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('holiday_working_hour_info')}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"00:00~00:00(月〇回)\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.holiday_working_hour_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 休日\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('holiday_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"土・日・祝(土曜日は月〇回程度出勤)\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.holiday_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間休日数\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('annual_holiday_number')}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ width: '90%' }}\n onChange={({ target: { value } }) => {\n const field = 'annual_holiday_number';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n return setValue(field, value);\n }}\n disabled={disabled || formDisabled}\n />\n 日\n <span className=\"text-danger\">\n {errors?.annual_holiday_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 初年度有給休暇日数\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('paid_holiday_number')}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ width: '90%' }}\n onChange={({ target: { value } }) => {\n const field = 'paid_holiday_number';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n return setValue(field, value);\n }}\n disabled={disabled || formDisabled}\n />\n 日\n <span className=\"text-danger\">\n {errors?.paid_holiday_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 通勤時間\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('commuting_time_info')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"〇分以内など\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.commuting_time_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 自動車通勤\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2\">\n <input\n id=\"bicycle_ok\"\n {...register('bicycle_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n disabled={disabled || formDisabled}\n />\n <label htmlFor=\"bicycle_ok\" className=\"form-check-label\">\n 可\n </label>\n </div>\n <div className=\"me-2\">\n <input\n id=\"bicycle_ng\"\n {...register('bicycle_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n disabled={disabled || formDisabled}\n />\n <label htmlFor=\"bicycle_ng\" className=\"form-check-label\">\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.bicycle_ok?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n バイク通勤\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"motor_bike_ok\"\n {...register('motor_bike_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"motor_bike_ok\"\n className=\"form-check-label\">\n 可\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"motor_bike_ng\"\n {...register('motor_bike_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"motor_bike_ng\"\n className=\"form-check-label\">\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.motor_bike_ok?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用条件備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('hiring_standard_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇年〇月卒業見込みの方、保育士資格取得見込みの方など\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.hiring_standard_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園の方針、採用のポイント\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('en_policy')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.en_policy?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"text-primary fw-bold\">応募情報</h5>\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出書類\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2\">\n <input\n {...register('required_document_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"resume\"\n id=\"required_document_option_resume\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"required_document_option_resume\"\n className=\"form-check-label\">\n 履歴書\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('required_document_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"certificate_of_expected_qualification\"\n id=\"required_document_option_certificate_of_expected_qualification\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"required_document_option_certificate_of_expected_qualification\"\n className=\"form-check-label\">\n 資格取得見込証明書(幼・保)\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('required_document_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"health_certificate\"\n id=\"required_document_option_health_certificate\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"required_document_option_health_certificate\"\n className=\"form-check-label\">\n 健康診断書\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('required_document_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"certificate_of_expected_graduation\"\n id=\"required_document_option_certificate_of_expected_graduation\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"required_document_option_certificate_of_expected_graduation\"\n className=\"form-check-label\">\n 卒業見込証明書\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('required_document_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"required_document_option_other\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"required_document_option_other\"\n className=\"form-check-label\">\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.required_document_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出書類備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('required_documents_info')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.required_documents_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出方法\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2\">\n <input\n {...register('document_submission_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"mail\"\n id=\"document_submission_option_mail\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"document_submission_option_mail\"\n className=\"form-check-label\">\n 郵送\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('document_submission_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"email\"\n id=\"document_submission_option_email\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"document_submission_option_email\"\n className=\"form-check-label\">\n メール\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('document_submission_option')}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"document_submission_option_other\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"document_submission_option_other\"\n className=\"form-check-label\">\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.document_submission_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出方法備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('document_submission_info')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出期限\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('document_submission_term_info')}\n className=\"form-control\"\n placeholder=\"〇月〇日~〇月〇日まで、随時など\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.document_submission_term_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考方法\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('selection_process_info')}\n className=\"form-control\"\n placeholder=\"面接、筆記(試験・作文)、実技(読み聞かせ)など\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.selection_process_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考日程\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('selection_date_info')}\n className=\"form-control\"\n placeholder=\"〇月〇日 00:00~\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.selection_date_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考場所\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('interview_location_info')}\n className=\"form-control\"\n placeholder=\"〇〇幼稚園、〇〇保育所、法人本部など\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.interview_location_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n その他携行品\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('required_item_info')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.required_item_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学可否\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2\">\n <input\n id=\"observability_option_ok\"\n {...register('observability_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"observability_option_ok\"\n className=\"form-check-label\">\n 可\n </label>\n </div>\n <div className=\"me-2\">\n <input\n id=\"observability_option_ng\"\n {...register('observability_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"observability_option_ng\"\n className=\"form-check-label\">\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.observability_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学可否備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('observability_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.observability_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学申込方法\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2\">\n <input\n id=\"observation_application_option_cell\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"call\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"observation_application_option_cell\"\n className=\"form-check-label\">\n 電話\n </label>\n </div>\n <div className=\"me-2\">\n <input\n id=\"observation_application_option_email\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"email\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"observation_application_option_email\"\n className=\"form-check-label\">\n メール\n </label>\n </div>\n <div className=\"me-2\">\n <input\n id=\"observation_application_option_mail\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"mail\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"observation_application_option_mail\"\n className=\"form-check-label\">\n 郵送\n </label>\n </div>\n <div className=\"me-2\">\n <input\n id=\"observation_application_option_other\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"other\"\n disabled={disabled || formDisabled}\n />\n <label\n htmlFor=\"observation_application_option_other\"\n className=\"form-check-label\">\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.observation_application_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学申込方法備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('observation_application_info')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.observation_application_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 応募情報備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('job_application_info')}\n className=\"form-control\"\n placeholder=\"結果通知の方法など\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.job_application_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当者\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('recruiter_name')}\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_role')}\n className=\"form-control\"\n type=\"text\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_role?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当連絡先(TEL)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_tel', {\n validate: (input) =>\n !input ||\n (phoneReg.test(input) &&\n input\n .split('-')\n .filter((v) => !!v)\n .every((v) => !isNaN(Number(v)))),\n })}\n type=\"tel\"\n className=\"form-control\"\n placeholder=\"000-0000-0000\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_tel?.type === 'validate' &&\n '電話番号の形式が正しくありません'}\n {errors?.recruiter_tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当連絡先(メール)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_email', {\n validate: (input) => !input || emailReg.test(input),\n })}\n type=\"email\"\n className=\"form-control\"\n disabled={disabled || formDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_email?.type === 'validate' &&\n 'メールアドレスの形式が正しくありません'}\n {errors?.recruiter_email?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n {recruitment?.updated_at_short && (\n <div className=\"d-flex w-100 justify-content-end\">\n <span style={{ fontSize: '12px' }}>\n 更新日:{recruitment.updated_at_short}\n </span>\n </div>\n )}\n </div>\n </Paper>\n {isShowAttachment && (\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title=\"その他添付ファイル\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenFileUploadModal(true);\n }}\n disabled={pdfDisabled}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableHead>\n <HeadCell width={150} label=\"アップロード日\" />\n <HeadCell label=\"ファイル名\" />\n </TableHead>\n <TableBody>\n {pdfs.map((pdfData, i) => (\n <TableRow key={i}>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {pdfData.uploadDate}\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-row w-100 align-items-center\">\n <div className=\"d-flex justify-content-start w-100\">\n <a\n href={pdfData.signedUrl}\n target=\"_blank\"\n rel=\"nofollow\">\n {pdfData.name}\n </a>\n </div>\n <div className=\"d-flex justify-content-end w-100 me-2\">\n <Trash\n onClick={() => {\n setIsOpenAttachedFileDeleteModal(true);\n setDeleteTargetFile({\n id: pdfData?.id,\n filePath: pdfData.filePath,\n name: pdfData.name,\n });\n }}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n )}\n\n <div className=\"d-flex justify-content-center my-3\">\n {facilityId ? (\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_school/facilities/${facilityId}`;\n }}\n />\n ) : (\n <GrayButton\n width={100}\n height={44}\n label=\"閉じる\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n window.close();\n }}\n />\n )}\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n disabled={formDisabled}\n />\n </div>\n\n <FileUpload\n isShow={isOpenFileUploadModal}\n onClose={() => setIsOpenFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n addPdfFiles({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n created_at: now.format('YYYY-MM-DD HH:mm:ss'),\n updated_at: now.format('YYYY-MM-DD HH:mm:ss'),\n }).then(() => setIsOpenFileUploadModal(false));\n }}\n />\n <FileUpload\n isShow={isOpenRecruitmentFileUploadModal}\n onClose={() => setIsOpenRecruitmentFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n addRecruitmentPdf({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n }).then(() => setIsOpenRecruitmentFileUploadModal(false));\n }}\n />\n {deletePdfFile && (\n <AttachedFileDeleteModal\n isShow={isOpenAttachedFileDeleteModal}\n onHide={() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n filePath: null,\n name: null,\n });\n }}\n onDelete={() => {\n deletePdfFile(deleteTargetFile).finally(() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n filePath: null,\n name: null,\n });\n });\n }}\n okLabel=\"削除\"\n />\n )}\n </>\n );\n};\n\nexport default RecruitmentForm;\n","import React from 'react';\n\nconst RightPane = () => {\n return (\n <div className=\"ms-lg-4\">\n <a\n href=\"https://kaseki.co.jp/enmap/school\"\n rel=\"nofollow noopener noreferrer\"\n target=\"_blank\">\n <img src=\"/school_banner.png\" alt=\"banner\" className=\"w-100\" />\n </a>\n </div>\n );\n};\nexport default RightPane;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst Title = ({\n title,\n subTitle,\n className = 'fw-bolder',\n titleRenderer = null,\n}) => {\n return (\n <>\n {titleRenderer ? (\n titleRenderer()\n ) : (\n <h5\n style={{\n color: '#6f6f6f',\n fontSize: '20px',\n }}\n className={classNames('m-0', className)}>\n {title}\n </h5>\n )}\n\n {subTitle && (\n <span style={{ fontSize: '14px', color: '#6f6f6f' }}>{subTitle}</span>\n )}\n </>\n );\n};\n\nTitle.propTypes = {\n title: PropTypes.string,\n subTitle: PropTypes.string,\n titleRenderer: PropTypes.func,\n};\n\nexport default Title;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst InlineSearch = (props) => {\n const {\n className,\n value,\n label,\n placeHolder,\n onChange,\n onClick,\n onKeyPress,\n style,\n inputStyle,\n buttonStyle,\n disabled = false,\n } = props;\n return (\n <div className={classNames('input-group', className)} style={style}>\n <input\n className=\"form-control\"\n type=\"search\"\n placeholder={placeHolder}\n value={value}\n onChange={onChange}\n onKeyPress={onKeyPress}\n style={{\n borderRight: '0',\n borderTopRightRadius: '0',\n borderBottomRightRadius: '0',\n ...inputStyle,\n }}\n disabled={disabled}\n />\n <span className=\"input-group-btn\">\n <button\n type=\"button\"\n className=\"btn btn-secondary\"\n style={{\n width: '100px',\n background: '#BFBFBF',\n border: '1px solid #BFBFBF',\n ...buttonStyle,\n }}\n onClick={onClick}\n disabled={disabled}>\n {label}\n </button>\n </span>\n </div>\n );\n};\n\nInlineSearch.propTypes = {\n className: PropTypes.string,\n value: PropTypes.any.isRequired,\n label: PropTypes.string.isRequired,\n placeHolder: PropTypes.string,\n onChange: PropTypes.func,\n onClick: PropTypes.func,\n onKeyPress: PropTypes.func,\n style: PropTypes.object,\n inputStyle: PropTypes.object,\n buttonStyle: PropTypes.object,\n disabled: PropTypes.bool,\n};\n\nInlineSearch.defaultProps = {\n className: '',\n placeHolder: '',\n onChange: () => {},\n onClick: () => {},\n onKeyPress: () => {},\n style: {},\n inputStyle: {},\n buttonStyle: {},\n disabled: false,\n};\n\nexport default InlineSearch;\n","import GreenButton from '../Buttons/GreenButton';\nimport React from 'react';\n\nconst ApplicantButton = ({ facility }) => {\n return (\n <GreenButton\n buttonColor=\"#4DCB00\"\n pill\n label=\"ENMAPから見学申込み\"\n labelClassName=\"w-100\"\n className=\"w-100\"\n onClick={() => {\n window.open(\n `/student/facilities/${facility.id}/applicants/new`,\n '_blank',\n );\n }}\n textFontSize={18}\n height={53}\n />\n );\n};\n\nexport default ApplicantButton;\n","import React from 'react';\nexport const PageTitle = (props) => {\n return <h6 style={{ fontSize: '18px' }}>{props.children}</h6>;\n};\n\nexport const PageTitleField = (props) => {\n return (\n <div className=\"p-3 pb-2\">\n <PageTitle>{props.children}</PageTitle>\n </div>\n );\n};\n\nexport const SearchResultSubTitleField = ({ count }) => {\n return (\n <div className=\"mb-2 ms-4 fw-bold\" style={{ fontSize: '16px' }}>\n 検索結果:{count}件\n </div>\n );\n};\n","import React from 'react';\nimport styled from 'styled-components';\n\nexport const TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nexport const TableRight = (props) => {\n return (\n <td\n className={props.className ?? ''}\n style={{\n border: '1px solid #555252',\n fontSize: '14px',\n background: props.disabled ? '#F2F2F2' : 'inherit',\n color: props.disabled ? '#555252' : 'inherit',\n }}>\n <div style={{ overflowWrap: 'anywhere' }}>{props.children}</div>\n </td>\n );\n};\n","import classNames from 'classnames';\nimport React from 'react';\n\nconst Tabs = ({ items = [] }) => {\n const activeStyle = { fontSize: '12px', color: '#555252' };\n const inActiveStyle = {\n fontSize: '12px',\n color: 'white',\n background: '#BFBFBF',\n };\n return (\n <ul className=\"nav nav-tabs d-flex justify-content-start\">\n {items.map((item) => (\n <li className=\"nav-item pe-2\">\n <button\n className={classNames(\n 'nav-link border-bottom px-1',\n item.active ? 'active' : 'fw-bold',\n )}\n style={{\n ...(item.active ? activeStyle : inActiveStyle),\n letterSpacing: '-0.5px',\n minWidth: '70px',\n }}\n onClick={() => {\n if (!item.active) {\n item.onClick?.(item);\n }\n }}>\n {item.title}\n </button>\n </li>\n ))}\n </ul>\n );\n};\nexport default Tabs;\n","import React from 'react';\nimport styled from 'styled-components';\nimport { useLoginModule } from '../modules/Student/loginModule';\n\nconst Drawer = styled.div`\n background: rgba(52, 52, 52, 0.6) !important;\n border-right: none !important;\n max-width: 80%;\n`;\n\nconst StudentSidebarDrawer = () => {\n const { handleLogout } = useLoginModule();\n return (\n <Drawer\n className=\"offcanvas offcanvas-start bg-dark\"\n tabIndex=\"-1\"\n id=\"studentSidebar\"\n aria-labelledby=\"studentSidebarLabel\"\n style={{\n background: 'rgba(52, 52, 52, 0.6) !important',\n zIndex: '100000',\n }}>\n <div\n className=\"offcanvas-header justify-content-end\"\n style={{ background: 'rgba(52, 52, 52, 0.6) !important' }}>\n <button\n type=\"button\"\n className=\"btn-close btn-close-white\"\n data-bs-dismiss=\"offcanvas\"\n aria-label=\"Close\"\n />\n </div>\n <div\n className=\"offcanvas-body\"\n style={{ background: 'rgba(52, 52, 52, 0.6) !important' }}>\n <div className=\"d-flex h-100 flex-column\">\n <div className=\"d-flex justify-content-start align-items-start h-100\">\n <ul className=\"nav flex-column m-0 p-3\">\n {/*TODO: 閲覧履歴は当面の間表示しない*/}\n {/*<li className=\"nav-item mb-2\">*/}\n {/* <a*/}\n {/* className=\"nav-link text-white\"*/}\n {/* onClick={() =>*/}\n {/* (location.href = '/student/view_facility_histories')*/}\n {/* }>*/}\n {/* 閲覧履歴*/}\n {/* </a>*/}\n {/*</li>*/}\n <li className=\"nav-item mb-2\">\n <a\n href=\"/student/applicant_histories\"\n className=\"nav-link text-white cursor-pointer d-flex align-items-center\">\n <i\n className=\"bi bi-person-fill me-1\"\n style={{ fontSize: '28px' }}\n />\n <span style={{ fontSize: '18px' }}>申込履歴</span>\n </a>\n </li>\n <li className=\"nav-item mb-2\">\n <a\n href=\"/terms\"\n className=\"nav-link text-white cursor-pointer d-flex align-items-center\">\n <i\n className=\"bi bi-file-text me-1\"\n style={{ fontSize: '28px' }}\n />\n <span style={{ fontSize: '18px' }}>利用規約</span>\n </a>\n </li>\n <li className=\"nav-item mb-2\">\n <a\n href=\"/privacy_policy\"\n className=\"nav-link text-white cursor-pointer d-flex align-items-center\">\n <i\n className=\"bi bi-file-text me-1\"\n style={{ fontSize: '28px' }}\n />\n <span style={{ fontSize: '18px' }}>プライバシーポリシー</span>\n </a>\n </li>\n <li className=\"nav-item mb-2\">\n <a\n className=\"nav-link text-white cursor-pointer d-flex align-items-center\"\n onClick={() => handleLogout()}>\n <i\n className=\"bi bi-box-arrow-right me-1\"\n style={{ fontSize: '28px' }}\n />\n <span style={{ fontSize: '18px' }}>ログアウト</span>\n </a>\n </li>\n </ul>\n </div>\n <div className=\"d-flex align-items-end text-white ms-2 p-3 ps-4\">\n © 2022 Kaseki, Inc.\n </div>\n </div>\n </div>\n </Drawer>\n );\n};\n\nexport default StudentSidebarDrawer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nconst StudentSubTitle = (props) => {\n const { text, color } = props;\n return (\n <div className=\"w-100 py-1\" style={{ background: color }}>\n <span className=\"fw-bold ps-3\" style={{ fontSize: '16px' }}>\n {text}\n </span>\n </div>\n );\n};\n\nStudentSubTitle.propTypes = {\n text: PropTypes.string,\n color: PropTypes.string,\n};\nStudentSubTitle.defaultProps = {\n text: 'タイトル',\n color: '#FFDEDE',\n};\n\nexport default StudentSubTitle;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst BodyCell = ({\n className = '',\n style = {},\n onClick = () => {},\n children,\n}) => {\n const tableStyle = {\n border: '4px solid #ffffff',\n ...style,\n };\n return (\n <td\n style={tableStyle}\n onClick={onClick}\n className={classNames('align-middle', className)}>\n {children}\n </td>\n );\n};\n\nBodyCell.propTypes = {\n className: PropTypes.string,\n onClick: PropTypes.func,\n style: PropTypes.object,\n children: PropTypes.node,\n};\n\nexport default BodyCell;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst HeadCell = ({\n children,\n style = {},\n width,\n className = '',\n label = '',\n onClick,\n clickable = false,\n onFocus,\n onBlur,\n}) => {\n const tableStyle = {\n border: '4px solid #ffffff',\n ...style,\n };\n return (\n <th\n style={tableStyle}\n width={width}\n onClick={onClick}\n className={classNames(\n 'text-center',\n className,\n clickable ? 'cursor-pointer' : '',\n )}\n onFocus={onFocus}\n onBlur={onBlur}>\n <div className=\"d-flex align-items-center justify-content-center w-100\">\n {label}\n {children}\n </div>\n </th>\n );\n};\n\nHeadCell.propTypes = {\n children: PropTypes.any,\n style: PropTypes.object,\n width: PropTypes.number,\n onClick: PropTypes.func,\n className: PropTypes.string,\n label: PropTypes.string,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n};\n\nexport default HeadCell;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst Table = ({ style = {}, className = '', children }) => {\n const tableStyle = {\n fontSize: '12px',\n ...style,\n };\n return (\n <table className={classNames('table', className)} style={tableStyle}>\n {children}\n </table>\n );\n};\n\nTable.propTypes = {\n children: PropTypes.any,\n style: PropTypes.object,\n className: PropTypes.string,\n};\n\nexport default Table;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst TableBody = (props) => {\n const { children } = props;\n return <tbody>{children}</tbody>;\n};\n\nTableBody.propTypes = {\n children: PropTypes.any,\n};\n\nexport default TableBody;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst TableHead = ({ children, style = {}, className = '' }) => {\n const tableStyle = {\n background: '#E1EBF5',\n ...style,\n };\n return (\n <thead style={tableStyle} className={className}>\n <tr>{children}</tr>\n </thead>\n );\n};\n\nTableHead.propTypes = {\n children: PropTypes.any,\n style: PropTypes.object,\n className: PropTypes.string,\n};\n\nexport default TableHead;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst TableRow = ({ id = null, className = '', children = null }) => {\n return (\n <tr className={className} id={id ?? ''}>\n {children}\n </tr>\n );\n};\n\nTableRow.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n children: PropTypes.node,\n};\n\nexport default TableRow;\n","import TimePicker from 'react-time-picker';\nimport styled from 'styled-components';\n\nconst StyledTimePicker = styled(TimePicker)`\n input {\n width: 20px !important;\n }\n border: none !important;\n background-color: inherit !important;\n .react-time-picker__wrapper {\n height: 38px !important;\n display: flex;\n border-radius: 0.25rem;\n border: 1px solid #ced4da;\n background-color: #fff !important;\n }\n .react-time-picker__inputGroup {\n display: flex !important;\n }\n .react-time-picker__inputGroup__hour {\n display: flex;\n justify-content: center;\n }\n .react-time-picker__inputGroup__minute {\n display: flex;\n justify-content: center;\n }\n padding: 0;\n\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n span {\n display: flex;\n align-items: center;\n }\n width: 100px;\n`;\n\nexport default StyledTimePicker;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nconst Title = (props) => {\n const { title, subTitle } = props;\n return (\n <>\n <h4 className=\"text-primary fw-bold\">{title}</h4>\n {subTitle && <span style={{ fontSize: '14px' }}>{subTitle}</span>}\n </>\n );\n};\n\nTitle.propTypes = {\n title: PropTypes.string,\n subTitle: PropTypes.string,\n};\n\nexport default Title;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nconst Banner = ({ maxWidth, label, className, innerStyle, bannerFontSize }) => {\n return (\n <div\n style={{ maxWidth }}\n className={classNames(\n 'w-100 h-100 d-flex justify-content-center',\n className,\n )}>\n <div\n className=\"mx-3 w-100 d-flex justify-content-center align-items-center\"\n style={{ borderRadius: '16px', ...innerStyle }}>\n <h6 className=\"fw-bold m-0 py-1\" style={{ fontSize: bannerFontSize }}>\n {label}\n </h6>\n </div>\n </div>\n );\n};\n\nBanner.propTypes = {\n maxWidth: PropTypes.string,\n background: PropTypes.string,\n label: PropTypes.string,\n className: PropTypes.string,\n innerStyle: PropTypes.object,\n bannerFontSize: PropTypes.string,\n};\nBanner.defaultProps = {\n className: '',\n innerStyle: {},\n bannerFontSize: '16px',\n};\n\nexport default Banner;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nconst Title = styled.h5`\n font-weight: bolder !important;\n color: #7a7979;\n margin-bottom: 5px !important;\n`;\n\nconst SubTitle = styled.span`\n font-size: 14px;\n color: #7a7979;\n`;\n\nconst FacilityTitle = (props) => {\n const { title, subTitle } = props;\n return (\n <>\n <Title className=\"fw-bolder\">{title}\n {subTitle && {subTitle}}\n \n );\n};\n\nFacilityTitle.propTypes = {\n title: PropTypes.string,\n subTitle: PropTypes.string,\n};\n\nexport default FacilityTitle;\n","import React from 'react';\nimport { ToastContainer } from 'react-toastify';\nimport 'react-toastify/dist/ReactToastify.css';\nimport './ToastStyle.css';\n\nconst Toast = (props) => {\n return (\n
    \n \n
    \n );\n};\n\nexport default Toast;\n","import React from 'react';\nimport styled from 'styled-components';\ntype Props = {\n onClick: () => void;\n};\n\nconst Trash: React.FC = ({ onClick }) => {\n const TrashWrap = styled.span`\n font-size: 20px;\n cursor: pointer;\n &:hover {\n color: #333333;\n }\n `;\n return (\n \n \n \n );\n};\n\nexport default Trash;\n","import { useMemo } from 'react';\nimport dayjs from 'dayjs';\nimport { registerLocale } from 'react-datepicker';\nimport ja from 'date-fns/locale/ja';\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\n\nexport const useNow = () => {\n return useMemo(() => dayjs(), []);\n};\n","export const useScrollToError = (errors) => {\n const errorsvalues = Object.values(errors);\n if (errorsvalues.length > 0) {\n try {\n errorsvalues[0].ref.scrollIntoView({ behavior: 'smooth' });\n } catch (e) {\n // datepicker用の対応\n errorsvalues[0].ref?.input?.parentNode?.parentNode?.parentNode?.parentNode?.parentNode?.parentNode?.parentNode?.parentNode?.scrollIntoView(\n {\n behavior: 'smooth',\n },\n );\n }\n }\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'ADMIN_MANAGEMENT_CORPORATE_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n serverError: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useAdminCorporateCreateModule = () => {\n const [{ isLoading, errorMessage, serverError }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {},\n });\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n changeState({ errorMessage: '' });\n const {\n data: { id },\n } = await HttpRequest.post(`/api/admin/corporates`, data);\n location.href = `/admin/corporates/${id}`;\n } catch (e) {\n const data = e?.response?.data;\n if (e?.response?.status === 400) {\n if (data.duplicate) {\n changeState({\n errorMessage: data?.error,\n });\n }\n } else {\n console.error(e);\n changeState({ serverError: true });\n }\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n errors,\n errorMessage,\n serverError,\n // actions\n mask,\n unmask,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\nimport { v4 as uuidv4 } from 'uuid';\nimport { toast } from 'react-toastify';\n\nconst P = 'ADMIN_MANAGEMENT_CORPORATE_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n corporate: {},\n targetIds: [],\n isLoading: false,\n searchText: '',\n connectedFacilities: [],\n connectedFacilityIds: [],\n searchResultFacilities: [],\n selectedFacilityIds: [],\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useAdminCorporateDetailModule = () => {\n const [\n {\n corporate,\n isLoading,\n searchText,\n connectedFacilities,\n connectedFacilityIds,\n searchResultFacilities,\n selectedFacilityIds,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n name: corporate.name,\n representative_name: corporate.representative_name,\n representative_job_title: corporate.representative_job_title,\n postal_code: corporate.postal_code,\n legal_person: corporate.legal_person,\n address: corporate.address,\n tel: corporate.tel,\n site_url: corporate.site_url,\n admin_note: corporate.admin_note,\n },\n });\n\n const initializeCorporate = useCallback(\n (corporate) => {\n dispatch({ type: CHANGE_STATE, payload: { corporate } });\n for (const k of Object.keys(corporate ?? {})) {\n setValue(k, corporate[k]);\n }\n },\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n const {\n data: { id },\n } = await HttpRequest.put(`/api/admin/corporates/${data.id}`, {\n ...data,\n connectedFacilityIds,\n removalFacilityIds: connectedFacilities\n .filter((d) => !connectedFacilityIds.includes(d.id))\n .map((d) => d.id),\n });\n location.href = `/admin/corporates/${id}`;\n } finally {\n unmask();\n }\n },\n [mask, unmask, connectedFacilities, connectedFacilityIds],\n );\n\n const search = useCallback(\n async (text, excludeIds = []) => {\n if (!text) {\n return;\n }\n mask();\n try {\n const { data } = await HttpRequest.post(\n '/api/admin/facilities/search',\n {\n name: text,\n excludeIds,\n },\n );\n dispatch({\n type: CHANGE_STATE,\n payload: {\n searchResultFacilities: data.facilities,\n selectedFacilityIds: [],\n },\n });\n } finally {\n unmask();\n }\n },\n [dispatch, mask, unmask],\n );\n\n const deleteCorporate = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.delete(`/api/admin/corporates/${id}`);\n location.href = '/admin/corporates';\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const restoreCorporate = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.patch(`/api/admin/corporates/${id}/restore`);\n location.href = '/admin/corporates';\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const uploadFacilityTopImage = useCallback(\n async (id, file) => {\n if (!file) {\n return;\n }\n mask();\n try {\n const formData = new FormData();\n formData.append(\n 'name',\n `${id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'facilities');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n const {\n data: { file_path: signed_top_image_url },\n } = await HttpRequest.patch(\n `/api/admin/facilities/${id}/top_image_upload`,\n {\n file_path,\n },\n );\n dispatch({\n type: CHANGE_STATE,\n payload: {\n connectedFacilities: connectedFacilities.map((d) => {\n return d.id === id\n ? {\n ...d,\n top_image_file_path: signed_top_image_url,\n origin_top_image_file_path: file_path,\n }\n : d;\n }),\n },\n });\n // location.reload();\n toast.success('アップロードしました');\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask, connectedFacilities],\n );\n\n const deleteFacilityTopImage = useCallback(\n async (facilityId) => {\n mask();\n\n try {\n await HttpRequest.delete(\n `/api/admin/facilities/${facilityId}/top_image`,\n );\n\n dispatch({\n type: CHANGE_STATE,\n payload: {\n connectedFacilities: connectedFacilities.map((d) => {\n return d.id === facilityId\n ? {\n ...d,\n top_image_file_path: null,\n origin_top_image_file_path: null,\n }\n : d;\n }),\n },\n });\n toast.success('トップ画像を削除しました');\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask, connectedFacilities],\n );\n\n const downloadFacilitiesCSV = useCallback(async (corporateId) => {\n mask();\n try {\n location.href = `/admin/corporates/${corporateId}/facilities.csv`;\n } finally {\n unmask();\n }\n }, []);\n\n return {\n // store\n corporate,\n isLoading,\n errors,\n searchText,\n connectedFacilities,\n connectedFacilityIds,\n searchResultFacilities,\n selectedFacilityIds,\n // actions\n mask,\n unmask,\n initializeCorporate,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n search,\n deleteCorporate,\n restoreCorporate,\n uploadFacilityTopImage,\n deleteFacilityTopImage,\n downloadFacilitiesCSV,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'ADMIN_MANAGE_CORPORATE_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n filter: {\n name: '',\n },\n data: [],\n targetIds: [],\n isLoading: false,\n currentPage: 1,\n totalPages: 1,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useAdminCorporateListModule = () => {\n const [\n { filter, targetIds, isLoading, data, currentPage, totalPages },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const updateFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n /**\n * 法人情報ダウンロード\n */\n const downloadCorporates = useCallback(async () => {\n mask();\n try {\n location.href = `/admin/corporates/csv_exports/new.csv?target_ids=${targetIds.join(\n ',',\n )}`;\n } finally {\n unmask();\n }\n }, [targetIds]);\n\n const downloadYouthEmployments = useCallback(async () => {\n location.href = `/admin/corporates/youth_employment_csv_exports/new.csv?target_ids=${targetIds.join(\n ',',\n )}`;\n }, [targetIds]);\n\n return {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n currentPage,\n totalPages,\n // actions\n changeState,\n updateFilter,\n addTargetId,\n removeTargetId,\n downloadCorporates,\n downloadYouthEmployments,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport ja from 'date-fns/locale/ja';\nimport { registerLocale } from 'react-datepicker';\nimport { v4 as uuidv4 } from 'uuid';\nimport { FACILITY_STATUS } from '../../../../utils/constant';\nimport { toast } from 'react-toastify';\n\nconst P = 'ADMIN_FACILITY_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facility: {},\n isLoading: false,\n};\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useAdminFacilityCreateModule = () => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n } = useForm({\n mode: 'all',\n });\n\n const save = useCallback(\n async ({ status = FACILITY_STATUS.PUBLISHED, ...data }) => {\n mask();\n try {\n let fPath = data.origin_top_image_file_path;\n if (data.top_image.length >= 1) {\n const file = data.top_image[0];\n const formData = new FormData();\n formData.append(\n 'name',\n `${data.id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'facilities');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n fPath = file_path;\n }\n const name = data.name ? data.name : '名称未設定';\n const {\n data: { id },\n } = await HttpRequest.post(`/api/admin/facilities`, {\n ...data,\n name,\n alias_name: data.alias_name\n ? data.alias_name\n : data.name\n ? data.name\n : name,\n opening_date: data.opening_date\n ? new Date(data.opening_date).toLocaleDateString()\n : null,\n top_image_file_path: fPath,\n status,\n });\n location.href = `/admin/facilities/${id}`;\n } catch (e) {\n console.error(e);\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const saveDraft = useCallback(\n async (data) => {\n await save({ ...data, status: FACILITY_STATUS.DRAFT });\n },\n [dispatch],\n );\n\n return {\n // store\n isLoading,\n errors,\n // actions\n control,\n register,\n handleSubmit,\n watch,\n setValue,\n save,\n saveDraft,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport dayjs from 'dayjs';\nimport ja from 'date-fns/locale/ja';\nimport { registerLocale } from 'react-datepicker';\nimport { v4 as uuidv4 } from 'uuid';\nimport { toast } from 'react-toastify';\n\nconst P = 'ADMIN_FACILITY_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facility: {},\n isLoading: false,\n};\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useAdminFacilityDetailModule = () => {\n const [{ facility, isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n trigger,\n } = useForm({\n mode: 'all',\n });\n\n const initializeFacility = useCallback(\n (facility) => {\n dispatch({ type: CHANGE_STATE, payload: { facility } });\n for (const k of Object.keys(facility ?? {})) {\n if (k === 'opening_date' && facility[k]) {\n setValue(k, dayjs(facility[k], 'YYYY/MM/DD').toDate());\n } else {\n setValue(k, facility[k]);\n }\n }\n },\n [dispatch],\n );\n const save = useCallback(\n async (data) => {\n mask();\n try {\n let fPath = data.origin_top_image_file_path;\n if (data.top_image.length >= 1) {\n const file = data.top_image[0];\n const formData = new FormData();\n formData.append(\n 'name',\n `${data.id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'facilities');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n fPath = file_path;\n }\n const aliasName = data.alias_name ? data.alias_name : data.name;\n await HttpRequest.put(`/api/admin/facilities/${data.id}`, {\n ...data,\n alias_name: aliasName === '名称未設定' ? data.name : aliasName,\n opening_date: data.opening_date\n ? new Date(data.opening_date).toLocaleDateString()\n : null,\n top_image_file_path: fPath,\n });\n location.href = `/admin/facilities/${data.id}`;\n } catch (e) {\n console.error(e);\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const onDelete = useCallback(\n async (facilityId) => {\n mask();\n try {\n await HttpRequest.delete(`/api/admin/facilities/${facilityId}`);\n location.href = '/admin/facilities';\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const deleteFacilityTopImage = useCallback(\n async (facilityId) => {\n mask();\n\n try {\n await HttpRequest.delete(\n `/api/admin/facilities/${facilityId}/top_image`,\n );\n location.href = location.href;\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n facility,\n isLoading,\n errors,\n // actions\n control,\n register,\n handleSubmit,\n watch,\n initializeFacility,\n setValue,\n save,\n onDelete,\n trigger,\n deleteFacilityTopImage,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { getAuth, onAuthStateChanged } from 'firebase/auth';\nimport { USER_TYPE } from '../../../utils/constant';\nimport { auth } from '../../../utils/firebase';\nimport { fetchMe, postLogin } from '../../../api/common';\n\nconst P = 'ADMIN_LOGIN_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n loggedInWithDifferentTypeAccount: false,\n loggedIn: false,\n userName: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useLoginModule = () => {\n const [\n { isLoading, error, loggedInWithDifferentTypeAccount, loggedIn, userName },\n dispatch,\n ] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n password: '',\n },\n });\n\n /**\n * ログイン済みかどうか\n * @type {(function(): Promise)|*}\n */\n const checkLoggedIn = useCallback(async () => {\n try {\n const data = await fetchMe();\n dispatch({\n type: CHANGE_STATE,\n payload: {\n loggedIn: true,\n loggedInWithDifferentTypeAccount:\n data?.user_type !== USER_TYPE.CORPORATE_MANAGER,\n userName: data?.name,\n },\n });\n } catch (e) {\n if (location.pathname !== '/admin/login') {\n location.href = '/admin/login';\n }\n dispatch({ type: CHANGE_STATE, payload: { loggedIn: false } });\n }\n }, []);\n\n /**\n * ログイン済みかどうかをチェックし、状況に応じてリダイレクトする\n * @type {(function(): void)|*}\n */\n const checkAuthWithRedirect = useCallback(() => {\n mask();\n const _auth = getAuth();\n onAuthStateChanged(_auth, (user) => {\n if (user) {\n user.getIdToken(true).then(async (id_token) => {\n try {\n const {\n data: { user_type },\n } = await postLogin(id_token);\n if (user_type === USER_TYPE.CORPORATE_MANAGER) {\n location.href = '/admin/home';\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { loggedInWithDifferentTypeAccount: true },\n });\n unmask();\n }\n } catch (e) {\n console.error(e);\n unmask();\n }\n });\n } else {\n unmask();\n }\n });\n }, [dispatch]);\n\n /**\n * ログイン処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(async () => {\n mask();\n try {\n await auth.signInWithEmailAndPassword(watch('email'), watch('password'));\n checkAuthWithRedirect();\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインできません' },\n });\n unmask();\n }\n }, [dispatch]);\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n control,\n formError: errors,\n loggedIn,\n checkLoggedIn,\n userName,\n // actions\n checkAuth: checkAuthWithRedirect,\n register,\n handleSubmit,\n watch,\n onSubmit,\n };\n};\n","import { useCallback, useReducer, useState } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_CORPORATE_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n corporate: {},\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useMyCorporateCorporateDetailModule = () => {\n const [{ corporate, isLoading }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n name: corporate.name,\n representative_name: corporate.representative_name,\n representative_job_title: corporate.representative_job_title,\n postal_code: corporate.postal_code,\n legal_person: corporate.legal_person,\n address: corporate.address,\n tel: corporate.tel,\n site_url: corporate.site_url,\n },\n });\n\n const initializeCorporate = useCallback(\n (corporate) => {\n dispatch({ type: CHANGE_STATE, payload: { corporate } });\n for (const k of Object.keys(corporate ?? {})) {\n setValue(k, corporate[k]);\n }\n },\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await HttpRequest.put(`/api/my_corporate/corporate/${data.id}`, data);\n location.href = '/my_corporate/corporate_info';\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n corporate,\n isLoading,\n errors,\n // actions\n mask,\n unmask,\n initializeCorporate,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_CORPORATE_MANAGER_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n corporateManager: {},\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCorporateManagerCreateModule = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n });\n\n const save = useCallback(\n async (data) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n const {\n data: { id },\n } = await HttpRequest.post(\n '/api/my_corporate/corporate_managers',\n data,\n );\n location.href = `/my_corporate/corporate_managers/${id}`;\n } catch (e) {\n if (e?.response?.status === 400) {\n changeState({ errorMessage: 'メールアドレスは既に使用されています' });\n } else {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n }\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n mask,\n unmask,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_CORPORATE_MANAGER_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n corporateManager: {},\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCorporateManagerDetailModule = ({\n defaultCorporateManager: {},\n}) => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n });\n\n const initializeCorporateManager = useCallback((corporateManager) => {\n for (const k of Object.keys(corporateManager ?? {})) {\n setValue(k, corporateManager[k]);\n }\n }, []);\n\n const save = useCallback(\n async (data) => {\n changeState({ errorMessage: '' });\n mask();\n try {\n await HttpRequest.put(\n `/api/my_corporate/corporate_managers/${data.id}`,\n data,\n );\n location.href = `/my_corporate/corporate_managers/${data.id}`;\n } catch (e) {\n console.error(e);\n if (\n e?.response?.status === 400 &&\n e?.response?.data?.error === 'EMAIL_EXISTS'\n ) {\n changeState({ errorMessage: 'メールアドレスは既に使用されています' });\n } else if (\n e?.response?.status === 400 &&\n e?.response?.data?.error === 'MANAGER_ZERO_ERROR'\n ) {\n changeState({\n errorMessage: '管理者が不在になるため更新できません。',\n });\n } else {\n changeState({ errorMessage: 'エラーが発生しました' });\n }\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const deleteManager = useCallback(\n async (id) => {\n changeState({ errorMessage: '' });\n mask();\n try {\n await HttpRequest.delete(`/api/my_corporate/corporate_managers/${id}`);\n location.href = '/my_corporate/corporate_managers';\n } catch (e) {\n console.error(e);\n if (\n e?.response?.status === 400 &&\n e?.response?.data?.error === 'MANAGER_ZERO_ERROR'\n ) {\n changeState({\n errorMessage: '管理者が不在になるため更新できません。',\n });\n } else {\n changeState({ errorMessage: 'エラーが発生しました' });\n }\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n initializeCorporateManager,\n mask,\n unmask,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n deleteManager,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { EVENT_STATUS } from '../../../../utils/constant';\n\nconst P = 'MY_CORPORATE_EVENT_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useMyCorporateEventCreateModule = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n });\n\n const saveDraft = useCallback(\n async (data) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n await HttpRequest.post('/api/my_corporate/events', {\n ...data,\n status: EVENT_STATUS.DRAFT,\n });\n location.href = '/my_corporate/recruitments';\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const save = useCallback(\n async (data) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n await HttpRequest.post('/api/my_corporate/events', {\n ...data,\n status: EVENT_STATUS.PUBLISHED,\n });\n location.href = '/my_corporate/recruitments';\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n mask,\n unmask,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n saveDraft,\n };\n};\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'MY_CORPORATE_EVENT_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useMyCorporateEventListModule = () => {\n const [{ isLoading, data }, dispatch] = useReducer(reducer, initialState);\n\n const initialize = useCallback(\n (data) => dispatch({ type: CHANGE_STATE, payload: { data } }),\n [dispatch],\n );\n\n return {\n // store\n isLoading,\n data,\n // actions\n initialize,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport ja from 'date-fns/locale/ja';\nimport { registerLocale } from 'react-datepicker';\nimport { v4 as uuidv4 } from 'uuid';\nimport { FACILITY_STATUS } from '../../../../utils/constant';\n\nconst P = 'MY_CORPORATE_FACILITY_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facility: {},\n isLoading: false,\n};\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useMyCorporateFacilityCreateModule = () => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n } = useForm({\n mode: 'all',\n });\n\n const save = useCallback(\n async ({ status = FACILITY_STATUS.PUBLISHED, ...data }) => {\n mask();\n try {\n let fPath = data.origin_top_image_file_path;\n if (data.top_image.length >= 1) {\n const file = data.top_image[0];\n const formData = new FormData();\n formData.append(\n 'name',\n `${data.id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'facilities');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n fPath = file_path;\n }\n const name = data.name ? data.name : '名称未設定';\n const {\n data: { id },\n } = await HttpRequest.post(`/api/my_corporate/facilities`, {\n ...data,\n name,\n alias_name: data.alias_name\n ? data.alias_name\n : data.name\n ? data.name\n : name,\n opening_date: data.opening_date\n ? new Date(data.opening_date).toLocaleDateString()\n : null,\n top_image_file_path: fPath,\n status,\n });\n location.href = `/my_corporate/facilities/${id}`;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const saveDraft = useCallback(\n async (data) => {\n await save({ ...data, status: FACILITY_STATUS.DRAFT });\n },\n [dispatch],\n );\n\n return {\n // store\n isLoading,\n errors,\n // actions\n control,\n register,\n handleSubmit,\n watch,\n setValue,\n save,\n saveDraft,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport dayjs from 'dayjs';\nimport ja from 'date-fns/locale/ja';\nimport { registerLocale } from 'react-datepicker';\nimport { v4 as uuidv4 } from 'uuid';\nimport { toast } from 'react-toastify';\n\nconst P = 'MY_CORPORATE_FACILITY_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facility: {},\n isLoading: false,\n};\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useMyCorporateFacilityDetailModule = () => {\n const [{ facility, isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n trigger,\n } = useForm({\n mode: 'all',\n });\n\n const initializeFacility = useCallback(\n (facility) => {\n dispatch({ type: CHANGE_STATE, payload: { facility } });\n for (const k of Object.keys(facility ?? {})) {\n if (k === 'opening_date' && facility[k]) {\n setValue(k, dayjs(facility[k], 'YYYY/MM/DD').toDate());\n } else {\n setValue(k, facility[k]);\n }\n }\n },\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n let fPath = data.origin_top_image_file_path;\n if (data.top_image.length >= 1) {\n const file = data.top_image[0];\n const formData = new FormData();\n formData.append(\n 'name',\n `${data.id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'facilities');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n fPath = file_path;\n }\n const aliasName = data.alias_name ? data.alias_name : data.name;\n await HttpRequest.put(`/api/my_corporate/facilities/${data.id}`, {\n ...data,\n alias_name: aliasName === '名称未設定' ? data.name : aliasName,\n opening_date: data.opening_date\n ? new Date(data.opening_date).toLocaleDateString()\n : null,\n top_image_file_path: fPath,\n });\n location.href = `/my_corporate/facilities/${data.id}`;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const onDelete = useCallback(\n async (facilityId) => {\n mask();\n try {\n await HttpRequest.delete(`/api/my_corporate/facilities/${facilityId}`);\n location.href = '/my_corporate/facilities';\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const onDisconnect = useCallback(\n async (facilityId) => {\n mask();\n try {\n await HttpRequest.delete(\n `/api/my_corporate/facilities/${facilityId}/disconnect`,\n );\n location.href = '/my_corporate/facilities';\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const deleteFacilityTopImage = useCallback(\n async (facilityId) => {\n mask();\n try {\n await HttpRequest.delete(\n `/api/my_corporate/facilities/${facilityId}/top_image`,\n );\n location.href = location.href;\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n facility,\n isLoading,\n errors,\n // actions\n control,\n register,\n handleSubmit,\n watch,\n initializeFacility,\n setValue,\n save,\n onDelete,\n trigger,\n onDisconnect,\n deleteFacilityTopImage,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { v4 as uuidv4 } from 'uuid';\nimport { toast } from 'react-toastify';\n\nconst P = 'MY_CORPORATE_FACILITY_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\nconst OPEN_SEARCH_MODAL = `${P}OPEN_SEARCH_MODAL`;\nconst CLOSE_SEARCH_MODAL = `${P}CLOSE_SEARCH_MODAL`;\n\nconst initialState = {\n filter: {\n name: '',\n },\n data: [],\n targetIds: [],\n isLoading: false,\n isOpenSearchModal: false,\n currentPage: 1,\n totalPages: 1,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n case OPEN_SEARCH_MODAL: {\n return {\n ...state,\n isOpenSearchModal: true,\n };\n }\n case CLOSE_SEARCH_MODAL: {\n return {\n ...state,\n isOpenSearchModal: false,\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useMyCorporateFacilityListModule = () => {\n const [\n {\n filter,\n targetIds,\n isLoading,\n data,\n isOpenSearchModal,\n currentPage,\n totalPages,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const updateFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((facility) => facility.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n const openSearchModal = useCallback(\n () => dispatch({ type: OPEN_SEARCH_MODAL }),\n [],\n );\n const closeSearchModal = useCallback(\n () => dispatch({ type: CLOSE_SEARCH_MODAL }),\n [],\n );\n\n const uploadFacilityTopImage = useCallback(\n async (id, file) => {\n if (!file) {\n return;\n }\n mask();\n try {\n const formData = new FormData();\n formData.append(\n 'name',\n `${id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'facilities');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n const {\n data: { file_path: signed_top_image_url },\n } = await HttpRequest.patch(\n `/api/my_corporate/facilities/${id}/top_image_upload`,\n {\n file_path,\n },\n );\n dispatch({\n type: CHANGE_STATE,\n payload: {\n data: data.map((d) => {\n return d.id === id\n ? { ...d, top_image_file_path: signed_top_image_url }\n : d;\n }),\n },\n });\n // location.reload();\n toast.success('アップロードしました');\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask, data],\n );\n\n const deleteFacilityTopImage = useCallback(\n async (facilityId) => {\n mask();\n try {\n await HttpRequest.delete(\n `/api/my_corporate/facilities/${facilityId}/top_image`,\n );\n location.href = location.href;\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n isOpenSearchModal,\n currentPage,\n totalPages,\n // actions\n initialize,\n updateFilter,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n openSearchModal,\n closeSearchModal,\n uploadFacilityTopImage,\n deleteFacilityTopImage,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_RECRUITMENT_FACILITY_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n targetIds: [],\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useMyCorporateRecruitmentFacilityListModule = () => {\n const [{ isLoading, data, targetIds, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addIds = useCallback(\n (ids) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids,\n },\n }),\n [dispatch],\n );\n\n const removeIds = useCallback(\n (ids) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((facility) => facility.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n const save = useCallback(\n async (recruitmentId, targetIds) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/my_corporate/recruitments/${recruitmentId}/facilities`,\n {\n target_ids: targetIds,\n },\n );\n\n location.href = `/my_corporate/recruitments/${recruitmentId}/schools`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const saveAdditional = useCallback(\n async (recruitmentId, targetIds) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/my_corporate/recruitments/${recruitmentId}/facilities`,\n {\n target_ids: targetIds,\n additional: true,\n },\n );\n\n location.href = `/my_corporate/recruitments/${recruitmentId}/schools/additional`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n data,\n targetIds,\n errorMessage,\n // actions\n changeState,\n addIds,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n save,\n saveAdditional,\n removeIds,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_RECRUITMENT_SCHOOL_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n targetIds: [],\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useMyCorporateRecruitmentSchoolListModule = () => {\n const [{ isLoading, data, targetIds, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addIds = useCallback(\n (ids) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids,\n },\n }),\n [dispatch],\n );\n\n const removeIds = useCallback(\n (ids) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((facility) => facility.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n const save = useCallback(\n async (recruitmentId, targetIds) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/my_corporate/recruitments/${recruitmentId}/schools`,\n {\n target_ids: targetIds,\n },\n );\n\n location.href = `/my_corporate/recruitments`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const saveAdditional = useCallback(\n async (recruitmentId, targetIds) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/my_corporate/recruitments/${recruitmentId}/schools`,\n {\n target_ids: targetIds,\n additional: true,\n },\n );\n\n location.href = `/my_corporate/recruitments`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n data,\n targetIds,\n errorMessage,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addIds,\n addAllTargets,\n removeAllTargets,\n removeIds,\n save,\n saveAdditional,\n };\n};\n","import dayjs from 'dayjs';\nimport { useCallback, useReducer } from 'react';\nimport { useForm, useFieldArray } from 'react-hook-form';\nimport { toast } from 'react-toastify';\nimport { RECRUITMENT_STATUS } from '../../../../utils/constant';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_RECRUITMENT_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_FILES = `${P}ADD_FILES`;\n\nconst initialState = {\n isLoading: false,\n pdfs: [],\n pdfUploadErrorMessage: '',\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_FILES: {\n return { ...state, pdfs: [...state.pdfs, { ...payload }] };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useMyCorporateRecruitmentCreateModule = () => {\n const [{ isLoading, pdfs, pdfUploadErrorMessage, errorMessage }, dispatch] =\n useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const {\n trigger,\n control,\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n required_document_option: [],\n document_submission_option: [],\n },\n });\n\n const jobTypeOptionField = useFieldArray({\n control,\n name: 'recruitment_job_type_options',\n });\n\n const allowanceOptionField = useFieldArray({\n control,\n name: 'recruitment_allowance_options',\n });\n\n const addPdfFiles = useCallback(\n async ({ file, name, uploadDate, created_at, updated_at }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitments');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n dispatch({\n type: ADD_FILES,\n payload: {\n name,\n uploadDate,\n filePath: file_path,\n signedUrl: signed_url,\n created_at,\n updated_at,\n },\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const saveDraft = useCallback(\n async (data) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n const pdfFileInfos = pdfs.map((pdf) => ({\n name: pdf.name,\n file_path: pdf.filePath,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n }));\n const {\n data: { id },\n } = await HttpRequest.post('/api/my_corporate/recruitments', {\n ...data,\n required_document_option: data.required_document_option\n ? data.required_document_option.join(',')\n : [],\n document_submission_option: data.document_submission_option\n ? data.document_submission_option\n : [],\n status: RECRUITMENT_STATUS.DRAFT,\n facility_attachments: pdfFileInfos,\n });\n if (id) {\n location.href = `/my_corporate/recruitments/${id}`;\n } else {\n location.href = '/my_corporate/recruitments';\n }\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [mask, unmask, pdfs],\n );\n\n const initializeRecruitment = useCallback((recruitment) => {\n for (const k of Object.keys(recruitment ?? {}).filter(\n (k) => k !== 'release_date' && k !== 'recruitment_schedule_date',\n )) {\n setValue(k, recruitment[k]);\n }\n }, []);\n\n const save = useCallback(\n async (data) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n const pdfFileInfos = pdfs.map((pdf) => ({\n name: pdf.name,\n file_path: pdf.filePath,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n }));\n const {\n data: { id },\n } = await HttpRequest.post('/api/my_corporate/recruitments', {\n ...data,\n required_document_option: data.required_document_option?.join(','),\n document_submission_option:\n data.document_submission_option?.join(','),\n status: RECRUITMENT_STATUS.DRAFT,\n facility_attachments: pdfFileInfos,\n });\n if (id) {\n location.href = `/my_corporate/recruitments/${id}/facilities`;\n } else {\n location.href = '/my_corporate/recruitments';\n }\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [mask, unmask, pdfs],\n );\n\n const deletePdfFile = useCallback(\n async ({ id, filePath }) => {\n try {\n mask();\n const targetPdf = pdfs.find((v) => v.filePath === filePath);\n if (id) {\n // 登録済みのファイルを削除\n await HttpRequest.delete(\n `/api/my_corporate/facility_attachments/${id}?file_path=${filePath}`,\n );\n }\n toast.success(`「${targetPdf.name}」を削除しました`);\n changeState({\n pdfs: pdfs.filter((pdf) => pdf.filePath !== filePath),\n });\n } catch (e) {\n toast.error('削除できませんでした');\n } finally {\n unmask();\n }\n },\n [dispatch, pdfs],\n );\n\n return {\n // store\n isLoading,\n pdfs,\n pdfUploadErrorMessage,\n errors,\n errorMessage,\n // actions\n initializeRecruitment,\n mask,\n unmask,\n trigger,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n addPdfFiles,\n save,\n saveDraft,\n deletePdfFile,\n jobTypeOptionField,\n allowanceOptionField,\n };\n};\n","import dayjs from 'dayjs';\nimport { useCallback, useReducer } from 'react';\nimport { useForm, useFieldArray } from 'react-hook-form';\nimport { toast } from 'react-toastify';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_RECRUITMENT_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_FILES = `${P}ADD_FILES`;\n\nconst initialState = {\n id: null,\n pdfs: [],\n isLoading: false,\n errorMessage: '',\n pdfUploadErrorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_FILES: {\n return { ...state, pdfs: [...state.pdfs, { ...payload }] };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useMyCorporateRecruitmentDetailModule = () => {\n const [\n { id, pdfs, isLoading, errorMessage, pdfUploadErrorMessage },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n register,\n control,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n trigger,\n } = useForm({\n mode: 'all',\n defaultValues: {\n required_document_option: [],\n document_submission_option: [],\n },\n });\n\n const jobTypeOptionField = useFieldArray({\n control,\n name: 'recruitment_job_type_options',\n });\n\n const allowanceOptionField = useFieldArray({\n control,\n name: 'recruitment_allowance_options',\n });\n\n const initializeRecruitment = useCallback((recruitment) => {\n for (const k of Object.keys(recruitment ?? {})) {\n if (k === 'release_date' && recruitment[k]) {\n setValue(k, dayjs(recruitment[k], 'YYYY/MM/DD').toDate());\n } else {\n setValue(k, recruitment[k]);\n }\n }\n if (recruitment.required_document_option_values.length > 0) {\n setValue(\n 'required_document_option',\n recruitment.required_document_option_values,\n );\n }\n if (recruitment.document_submission_option_values.length > 0) {\n setValue(\n 'document_submission_option',\n recruitment.document_submission_option_values,\n );\n }\n if (!recruitment.is_old_format && recruitment.job_type_options.length > 0) {\n setValue('recruitment_job_type_options', recruitment.job_type_options);\n }\n if (\n !recruitment.is_old_format &&\n recruitment.allowance_options.length > 0\n ) {\n setValue('recruitment_allowance_options', recruitment.allowance_options);\n }\n }, []);\n\n const setId = useCallback((_id) => changeState({ id: _id }), []);\n\n const save = useCallback(\n async (data, toFacility = false, toAdditional = false) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n const pdfFileInfos = pdfs.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n file_path: pdf.filePath,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n }));\n const {\n data: { status },\n } = await HttpRequest.put(`/api/my_corporate/recruitments/${id}`, {\n ...data,\n required_document_option: data.required_document_option\n ? data.required_document_option?.join(',')\n : '',\n document_submission_option: data.document_submission_option\n ? data.document_submission_option?.join(',')\n : '',\n facility_attachments: pdfFileInfos,\n });\n\n if (toAdditional) {\n location.href = `/my_corporate/recruitments/${id}/facilities/additional`;\n } else if (status === 'draft' && toFacility) {\n location.href = `/my_corporate/recruitments/${id}/facilities`;\n } else {\n location.href = `/my_corporate/recruitments/${id}`;\n }\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [id, pdfs, mask, unmask],\n );\n\n const addPdfFiles = useCallback(\n async ({ file, name, uploadDate, created_at, updated_at }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitment_attached_files');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n dispatch({\n type: ADD_FILES,\n payload: {\n name,\n uploadDate,\n filePath: file_path,\n signedUrl: signed_url,\n created_at,\n updated_at,\n },\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const deletePdfFile = useCallback(\n async ({ id, filePath }) => {\n try {\n mask();\n const targetPdf = pdfs.find((v) => v.filePath === filePath);\n if (id) {\n // 登録済みのファイルを削除\n await HttpRequest.delete(\n `/api/my_corporate/facility_attachments/${id}?file_path=${filePath}`,\n );\n }\n toast.success(`「${targetPdf.name}」を削除しました`);\n changeState({\n pdfs: pdfs.filter((pdf) => pdf.filePath !== filePath),\n });\n } catch (e) {\n toast.error('削除できませんでした');\n } finally {\n unmask();\n }\n },\n [dispatch, pdfs],\n );\n\n const onCloseRecruitment = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.patch(`/api/my_corporate/recruitments/${id}/close`);\n location.href = location.href;\n } catch (e) {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const onReopenRecruitment = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.patch(`/api/my_corporate/recruitments/${id}/reopen`);\n location.href = location.href;\n } catch (e) {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const onDeleteRecruitment = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.delete(`/api/my_corporate/recruitments/${id}`);\n location.href = '/my_corporate/recruitments';\n } catch (e) {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n id,\n isLoading,\n pdfs,\n errors,\n errorMessage,\n pdfUploadErrorMessage,\n // actions\n addPdfFiles,\n mask,\n unmask,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n setId,\n trigger,\n initializeRecruitment,\n deletePdfFile,\n jobTypeOptionField,\n allowanceOptionField,\n onCloseRecruitment,\n onReopenRecruitment,\n onDeleteRecruitment,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_RECRUITMENT_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useMyCorporateRecruitmentListModule = () => {\n const [{ isLoading, data }, dispatch] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (data) => dispatch({ type: CHANGE_STATE, payload: { data } }),\n [dispatch],\n );\n\n const onCloseRecruitment = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.patch(`/api/my_corporate/recruitments/${id}/close`);\n location.href = location.href;\n } catch (e) {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const onReopenRecruitment = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.patch(`/api/my_corporate/recruitments/${id}/reopen`);\n location.href = location.href;\n } catch (e) {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const onCopyRecruitment = useCallback(\n (id, currentRecruitmentYear) => {\n mask();\n try {\n location.href = `/my_corporate/recruitments/new?from=${id}&year=${currentRecruitmentYear}`;\n } catch (e) {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n data,\n // actions\n initialize,\n onCloseRecruitment,\n onReopenRecruitment,\n onCopyRecruitment,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { getAuth, onAuthStateChanged } from 'firebase/auth';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { USER_TYPE } from '../../../utils/constant';\nimport { auth } from '../../../utils/firebase';\nimport { postLogin } from '../../../api/common';\n\nconst P = 'SCHOOL_MANAGE_LOGIN_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n loggedInWithDifferentTypeAccount: false,\n loggedIn: false,\n userName: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useLoginModule = () => {\n const [\n { isLoading, error, loggedInWithDifferentTypeAccount, loggedIn, userName },\n dispatch,\n ] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n password: '',\n },\n });\n\n /**\n * ログイン済みかどうか\n * @type {(function(): Promise)|*}\n */\n const checkLoggedIn = useCallback(async () => {\n try {\n const { data } = await HttpRequest.get('/api/user');\n dispatch({\n type: CHANGE_STATE,\n payload: {\n loggedIn: true,\n loggedInWithDifferentTypeAccount:\n data?.user_type !== USER_TYPE.CORPORATE_MANAGER,\n userName: data?.name,\n },\n });\n } catch (e) {\n if (\n location.pathname !== '/my_corporate/login' &&\n location.pathname !== '/my_corporate/password_reset'\n ) {\n location.href = '/my_corporate/login';\n }\n dispatch({ type: CHANGE_STATE, payload: { loggedIn: false } });\n }\n }, []);\n\n /**\n * ログイン済みかどうかをチェックし、状況に応じてリダイレクトする\n * @type {(function(): void)|*}\n */\n const checkAuthWithRedirect = useCallback(() => {\n mask();\n const _auth = getAuth();\n onAuthStateChanged(_auth, (user) => {\n if (user) {\n user.getIdToken(true).then(async (id_token) => {\n try {\n const {\n data: { user_type },\n } = await postLogin(id_token);\n if (user_type === USER_TYPE.CORPORATE_MANAGER) {\n location.href = '/my_corporate/home';\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { loggedInWithDifferentTypeAccount: true },\n });\n unmask();\n }\n } catch (e) {\n console.error(e);\n unmask();\n }\n });\n } else {\n unmask();\n }\n });\n }, [dispatch]);\n\n /**\n * ログイン処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(async () => {\n mask();\n try {\n await auth.signInWithEmailAndPassword(watch('email'), watch('password'));\n checkAuthWithRedirect();\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインできません' },\n });\n unmask();\n }\n }, [dispatch]);\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n control,\n formError: errors,\n loggedIn,\n checkLoggedIn,\n userName,\n // actions\n checkAuth: checkAuthWithRedirect,\n register,\n handleSubmit,\n watch,\n onSubmit,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { auth } from '../../../utils/firebase';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_PASSWORD_RESET_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n email: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const usePasswordResetModule = () => {\n const [{ isLoading, error, email }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n },\n });\n\n /**\n * パスワード変更処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(\n async ({ email }) => {\n mask();\n try {\n await auth\n .sendPasswordResetEmail(email, {\n url: `${location.protocol}//${location.host}/my_corporate/login`,\n })\n .then(() => {\n return HttpRequest.post(\n '/api/my_corporate/password_reset_success',\n ).finally(() => {\n location.href = `/my_corporate/login`;\n });\n });\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'パスワードリセットに失敗しました' },\n });\n unmask();\n }\n },\n [dispatch],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n formError: errors,\n email,\n // actions\n register,\n handleSubmit,\n watch,\n onSubmit,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGE_ADVISOR_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSchoolAdvisorListModule = () => {\n const [{ isLoading, data }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (data) => dispatch({ type: CHANGE_STATE, payload: { data } }),\n [dispatch],\n );\n\n const forwardToCreateForm = useCallback(\n () => (location.href = '/my_school/advisors/new'),\n [],\n );\n\n const forwardToHome = useCallback(\n () => (location.href = '/my_school/home'),\n [],\n );\n\n return {\n // store\n isLoading,\n data,\n // actions\n initialize,\n forwardToCreateForm,\n forwardToHome,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGEMENT_CORPORATE_YOUTH_EMPLOYMENT_INFO_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_FILES = `${P}ADD_FILES`;\n\nconst initialState = {\n id: null,\n pdfs: [],\n corporate: {},\n recruitmentInformationSheet: {},\n\n latestPdf: null,\n\n isLoading: false,\n uploadedRecruitmentPdf: '',\n uploadedRecruitmentPdfUrl: '',\n recruitmentScheduleDate: null,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_FILES: {\n return { ...state, pdfs: [...state.pdfs, { ...payload }] };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolCorporateYouthEmploymentInfoModule = () => {\n const [\n {\n id,\n corporate,\n pdfs,\n isLoading,\n recruitmentInformationSheet,\n pdfUploadErrorMessage,\n uploadedRecruitmentPdf,\n uploadedRecruitmentPdfUrl,\n recruitmentScheduleDate,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n setValue,\n } = useForm({\n mode: 'all',\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const initializeCorporate = useCallback(\n (corporate) =>\n dispatch({\n type: CHANGE_STATE,\n payload: { corporate, id: corporate.id },\n }),\n [dispatch],\n );\n\n const initializeRecruitmentInformationSheet = useCallback(\n (recruitmentInformationSheet) => {\n dispatch({\n type: CHANGE_STATE,\n payload: { recruitmentInformationSheet },\n });\n for (const k of Object.keys(recruitmentInformationSheet ?? {})) {\n setValue(k, recruitmentInformationSheet[k]);\n }\n },\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n const pdfFileInfos = pdfs.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n file_path: pdf.fp,\n }));\n if (recruitmentInformationSheet?.id) {\n await HttpRequest.put(\n `/api/my_school/corporates/${id}/youth_employments/${recruitmentInformationSheet.id}`,\n {\n ...data,\n recruitment_schedule_date: recruitmentScheduleDate,\n file_path: uploadedRecruitmentPdf,\n recruitment_information_sheet_attached_files_attributes:\n pdfFileInfos,\n },\n );\n } else {\n await HttpRequest.post(\n `/api/my_school/corporates/${id}/youth_employments`,\n {\n ...data,\n recruitment_schedule_date: recruitmentScheduleDate,\n file_path: uploadedRecruitmentPdf,\n recruitment_information_sheet_attached_files_attributes:\n pdfFileInfos,\n },\n );\n }\n location.href = location.href;\n } finally {\n unmask();\n }\n },\n [\n id,\n mask,\n unmask,\n recruitmentInformationSheet,\n pdfs,\n uploadedRecruitmentPdf,\n recruitmentScheduleDate,\n ],\n );\n\n const addPdfFiles = useCallback(\n async ({ file, name, uploadDate }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitments');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n dispatch({\n type: ADD_FILES,\n payload: { name, uploadDate, fp: file_path, signedUrl: signed_url },\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const addRecruitmentPdf = useCallback(\n async ({ file, name, uploadDate }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitments');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n changeState({\n uploadedRecruitmentPdf: file_path,\n uploadedRecruitmentPdfUrl: signed_url,\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n return {\n // store\n corporate,\n isLoading,\n errors,\n pdfs,\n pdfUploadErrorMessage,\n uploadedRecruitmentPdfUrl,\n recruitmentScheduleDate,\n // actions\n initializeCorporate,\n initializeRecruitmentInformationSheet,\n changeState,\n save,\n register,\n handleSubmit,\n addPdfFiles,\n watch,\n setValue,\n addRecruitmentPdf,\n };\n};\n","import { useCallback, useReducer, useState } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGEMENT_CORPORATE_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n corporate: {},\n targetIds: [],\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolCorporateDetailModule = () => {\n const [comment, setComment] = useState('');\n const [{ corporate, targetIds, isLoading }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initializeCorporate = useCallback(\n (corporate) => dispatch({ type: CHANGE_STATE, payload: { corporate } }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: corporate?.facilities?.map((facility) => facility.id),\n },\n }),\n [corporate],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n const forwardToRecruitmentConnect = useCallback(\n (corporateId, targetIds) => {\n mask();\n try {\n localStorage.setItem('recruitmentTargetIds', targetIds.join(','));\n location.href = `/my_school/corporates/${corporateId}/recruitments/new`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const onSave = useCallback(\n async (corporateId, comment) => {\n mask();\n try {\n await HttpRequest.put(`/api/my_school/corporates/${corporateId}`, {\n comment,\n });\n location.href = location.href;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n corporate,\n targetIds,\n isLoading,\n comment,\n // actions\n mask,\n unmask,\n initializeCorporate,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n forwardToRecruitmentConnect,\n setComment,\n onSave,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGE_CORPORATE_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n filter: {\n name: '',\n },\n data: [],\n targetIds: [],\n isLoading: false,\n currentPage: 1,\n totalPages: 1,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSchoolCorporateListModule = () => {\n const [\n { filter, targetIds, isLoading, data, currentPage, totalPages },\n dispatch,\n ] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const updateFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n /**\n * 法人情報ダウンロード\n */\n const downloadCorporates = useCallback(async () => {\n mask();\n try {\n location.href = `/my_school/corporates/csv_exports/new.csv?target_ids=${targetIds.join(\n ',',\n )}`;\n } finally {\n unmask();\n }\n }, [targetIds]);\n\n /**\n * 新規登録申請ページへ遷移\n */\n const forwardToApplyForm = useCallback(() => {\n // TODO: Googleフォームへ飛ばす\n location.href = '#';\n }, []);\n\n return {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n currentPage,\n totalPages,\n // actions\n changeState,\n updateFilter,\n addTargetId,\n removeTargetId,\n downloadCorporates,\n forwardToApplyForm,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'SCHOOL_MANAGEMENT_CORPORATE_RECRUITMENT_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_FILES = `${P}ADD_FILES`;\n\nconst initialState = {\n id: null,\n pdfs: [],\n targetIds: [],\n isLoading: false,\n\n uploadedRecruitmentPdf: '',\n uploadedRecruitmentPdfUrl: '',\n pdfUploadErrorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_FILES: {\n return { ...state, pdfs: [...state.pdfs, { ...payload }] };\n }\n default:\n return state;\n }\n};\n\nexport const useMultipleRecruitmentCreateModule = () => {\n const [\n {\n id,\n data,\n targetIds,\n pdfs,\n isLoading,\n pdfUploadErrorMessage,\n uploadedRecruitmentPdf,\n uploadedRecruitmentPdfUrl,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (data) => dispatch({ type: CHANGE_STATE, payload: { data } }),\n [],\n );\n\n const changeState = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const setTargetIds = useCallback(\n (targetIds) => dispatch({ type: CHANGE_STATE, payload: { targetIds } }),\n [],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n const pdfFileInfos = pdfs.map((pdf) => ({\n name: pdf.name,\n file_path: pdf.fp,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n }));\n // 対象のfacility_idのリストも合わせて送る\n await HttpRequest.post('/api/my_school/recruitments', {\n ...data,\n file_path: uploadedRecruitmentPdf,\n facility_attachments: pdfFileInfos,\n facility_ids: targetIds,\n });\n localStorage.removeItem('recruitmentTargetIds');\n location.href = `/my_school/corporates/${id}`;\n } finally {\n unmask();\n }\n },\n [id, pdfs, targetIds, uploadedRecruitmentPdf, mask, unmask],\n );\n\n const forwardToDetail = useCallback(\n () => (location.href = `/my_school/corporates/${id}`),\n [id],\n );\n\n const addPdfFiles = useCallback(\n async ({ file, name, uploadDate, created_at, updated_at }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitments');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n dispatch({\n type: ADD_FILES,\n payload: {\n name,\n uploadDate,\n fp: file_path,\n signedUrl: signed_url,\n created_at,\n updated_at,\n },\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const addRecruitmentPdf = useCallback(\n async ({ file, name, uploadDate }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitments');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n changeState({\n uploadedRecruitmentPdf: file_path,\n uploadedRecruitmentPdfUrl: signed_url,\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n setValue,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {},\n });\n\n return {\n // store\n data,\n targetIds,\n pdfs,\n isLoading,\n errors,\n pdfUploadErrorMessage,\n uploadedRecruitmentPdf,\n uploadedRecruitmentPdfUrl,\n // actions\n mask,\n unmask,\n initialize,\n setTargetIds,\n register,\n handleSubmit,\n watch,\n save,\n changeState,\n forwardToDetail,\n addPdfFiles,\n addRecruitmentPdf,\n setValue,\n control,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGEMENT_FACILITY_EVENT_INFO_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facilityId: null,\n facility: {},\n corporate: {},\n events: [],\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolFacilityEventListModule = () => {\n const [{ facility, corporate, facilityId, events, isLoading }, dispatch] =\n useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (events) =>\n dispatch({\n type: CHANGE_STATE,\n payload: { events },\n }),\n [dispatch],\n );\n\n const forwardToDetail = useCallback(\n () => (location.href = `/my_school/facilities/${facilityId}`),\n [facilityId],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload: { ...payload } }),\n [],\n );\n\n return {\n // store\n facility,\n corporate,\n facilityId,\n events,\n isLoading,\n // actions\n initialize,\n changeState,\n forwardToDetail,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGEMENT_FACILITY_INTRODUCTION_INFO_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facilityId: null,\n facility: {},\n facilityIntroduction: {},\n corporate: {},\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolFacilityIntroductionInfoModule = () => {\n const [\n { facility, facilityIntroduction, corporate, facilityId, isLoading },\n dispatch,\n ] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const initialize = useCallback(\n (events) =>\n dispatch({\n type: CHANGE_STATE,\n payload: { events },\n }),\n [dispatch],\n );\n\n const forwardToDetail = useCallback(\n () => (location.href = `/my_school/facilities/${facilityId}`),\n [facilityId],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload: { ...payload } }),\n [],\n );\n\n return {\n // store\n facility,\n facilityId,\n isLoading,\n facilityIntroduction,\n corporate,\n // actions\n initialize,\n changeState,\n forwardToDetail,\n };\n};\n","import { useCallback, useReducer, useState } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGEMENT_FACILITY_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facility: {},\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolFacilityDetailModule = () => {\n const [comment, setComment] = useState('');\n const [{ facility, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initializeFacility = useCallback(\n (facility) => dispatch({ type: CHANGE_STATE, payload: { facility } }),\n [dispatch],\n );\n\n const forwardToCorporate = useCallback(\n (corporateId) => (location.href = `/my_school/corporates/${corporateId}`),\n [],\n );\n\n const forwardToEvent = useCallback(\n (facilityId) =>\n (location.href = `/my_school/facilities/${facilityId}/events`),\n [],\n );\n\n const forwardToRecruitment = useCallback(\n (facilityId, recruitmentId) =>\n (location.href = `/my_school/facilities/${facilityId}/recruitments/${recruitmentId}`),\n [],\n );\n\n const forwardToIntroduction = useCallback(\n (facilityId) =>\n (location.href = `/my_school/facilities/${facilityId}/introduction`),\n [],\n );\n\n const onSave = useCallback(\n async (facilityId, comment) => {\n mask();\n try {\n await HttpRequest.put(`/api/my_school/facilities/${facilityId}`, {\n comment,\n });\n location.href = location.href;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n facility,\n isLoading,\n comment,\n // actions\n initializeFacility,\n forwardToCorporate,\n forwardToEvent,\n forwardToRecruitment,\n forwardToIntroduction,\n setComment,\n onSave,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGE_FACILITY_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\nconst OPEN_SEARCH_MODAL = `${P}OPEN_SEARCH_MODAL`;\nconst CLOSE_SEARCH_MODAL = `${P}CLOSE_SEARCH_MODAL`;\n\nconst initialState = {\n filter: {\n name: '',\n },\n data: [],\n targetIds: [],\n isLoading: false,\n isOpenSearchModal: false,\n currentPage: 1,\n totalPages: 1,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n case OPEN_SEARCH_MODAL: {\n return {\n ...state,\n isOpenSearchModal: true,\n };\n }\n case CLOSE_SEARCH_MODAL: {\n return {\n ...state,\n isOpenSearchModal: false,\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSchoolFacilityListModule = () => {\n const [\n {\n filter,\n targetIds,\n isLoading,\n data,\n isOpenSearchModal,\n currentPage,\n totalPages,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const updateFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((facility) => facility.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n /**\n * 全施設情報ダウンロード\n */\n const downloadFacilities = useCallback(async () => {\n mask();\n try {\n location.href = `/my_school/facilities/csv_exports/new.csv?target_ids=${targetIds.join(\n ',',\n )}`;\n } finally {\n unmask();\n }\n }, [targetIds]);\n\n /**\n * 新規登録申請ページへ遷移\n */\n const forwardToApplyForm = useCallback(() => {\n // TODO: Googleフォームへ飛ばす\n location.href = '#';\n }, []);\n\n const forwardToHome = useCallback(() => {\n location.href = '/my_school/home';\n }, []);\n const openSearchModal = useCallback(\n () => dispatch({ type: OPEN_SEARCH_MODAL }),\n [],\n );\n const closeSearchModal = useCallback(\n () => dispatch({ type: CLOSE_SEARCH_MODAL }),\n [],\n );\n\n return {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n isOpenSearchModal,\n currentPage,\n totalPages,\n // actions\n initialize,\n updateFilter,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n downloadFacilities,\n forwardToApplyForm,\n forwardToHome,\n openSearchModal,\n closeSearchModal,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'SCHOOL_MANAGEMENT_STUDENT_EDIT_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst CHANGE_STUDENT = `${P}UPDATE_STUDENT`;\n\nconst initialState = {\n id: null,\n email: '',\n student: {},\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_STUDENT: {\n return { ...state, student: { ...payload } };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolStudentEditModule = () => {\n const [{ id, email, student, isLoading }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n setValue,\n } = useForm({\n mode: 'all',\n defaultValues: {\n first_name: student?.first_name,\n last_name: student?.last_name,\n tel: student?.tel,\n postal_code: student?.postal_code,\n street_address: student?.street_address,\n admission_year: student?.admission_year,\n graduation_year: student?.graduation_year,\n student_no: student?.student_no,\n email,\n initial_password: student?.initial_password,\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const initializeStudent = useCallback((email, student) => {\n setValue('first_name', student.first_name);\n setValue('last_name', student.last_name);\n setValue('tel', student.tel);\n setValue('admission_year', student.admission_year);\n setValue('graduation_year', student.graduation_year);\n setValue('student_no', student.student_no);\n setValue('email', email);\n setValue('street_address', student.street_address);\n setValue('postal_code', student.postal_code);\n setValue('initial_password', student.initial_password);\n }, []);\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n const url = `/api/my_school/students/${id}`;\n await HttpRequest.patch(url, { ...data });\n location.href = location.href;\n } finally {\n unmask();\n }\n },\n [id, mask, unmask],\n );\n\n const forwardToList = useCallback(\n () => (location.href = '/my_school/students'),\n [],\n );\n\n return {\n // store\n id,\n email,\n student,\n isLoading,\n errors,\n // actions\n changeState,\n save,\n register,\n watch,\n handleSubmit,\n forwardToList,\n setValue,\n initializeStudent,\n };\n};\n","import { parse } from 'papaparse';\nimport Encoding from 'encoding-japanese';\nimport { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGE_STUDENT_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\nconst REMOVE_ALL_TARGET = `${P}REMOVE_ALL_TARGET`;\n\nconst initialState = {\n filter: {\n numberOrName: '',\n expectedGraduationYear: '',\n careerSelect: '',\n decisionSelect: '',\n reportSelect: '',\n },\n data: [],\n targetIds: [],\n isLoading: false,\n\n csvContentErrors: [],\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n\n case REMOVE_ALL_TARGET: {\n return {\n ...state,\n targetIds: [],\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSchoolStudentListModule = () => {\n const [\n { filter, targetIds, isLoading, data, errorMessage, csvContentErrors },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const updateFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((_) => _.id),\n },\n }),\n [dispatch, data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: REMOVE_ALL_TARGET,\n }),\n [dispatch],\n );\n\n /**\n * 全学生情報ダウンロード\n */\n const downloadStudents = useCallback(async () => {\n mask();\n try {\n location.href = '/my_school/students/csv_exports/new.csv';\n } finally {\n unmask();\n }\n }, []);\n\n /**\n * 学校報告CSVダウンロード\n */\n const downloadReportCsv = useCallback(async () => {\n mask();\n try {\n location.href = `/my_school/students/report_csv_exports/new.csv`;\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { errorMessage: 'サーバーエラーが発生しました' },\n });\n } finally {\n unmask();\n }\n }, []);\n\n /**\n * 登録情報メール送信\n */\n const sendEmail = useCallback(\n async (targetIds) => {\n mask();\n try {\n const {\n data: { redirect_path },\n } = await HttpRequest.post(\n '/api/my_school/students/signup_notifications',\n {\n student_ids: targetIds,\n },\n );\n location.href = redirect_path;\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { errorMessage: 'サーバーエラーが発生しました' },\n });\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n /**\n * 一括登録用CSVダウンロード\n */\n const downloadCsv = useCallback(async (type = 'school') => {\n mask();\n try {\n location.href = `/my_school/students/csv_format_exports/new.csv?type=${type}`;\n } finally {\n unmask();\n }\n }, []);\n\n const openStudentRegisterPdf = useCallback(() => {\n window.open('/my_school/students/registration_pdf', '_blank');\n }, []);\n\n /**\n * 一括削除\n */\n const multipleDelete = useCallback(async (targetIds) => {\n mask();\n try {\n await HttpRequest.delete('/api/my_school/multiple_students', {\n params: { targetIds },\n });\n location.reload();\n } catch (e) {\n console.error(e);\n changeState({\n errorMessage: 'エラーが発生しました。時間をおいて再度お試しください。',\n });\n } finally {\n unmask();\n }\n }, []);\n\n /**\n * 一括登録用CSVアップロード\n */\n const uploadCsv = useCallback(async (file, type = 'school') => {\n changeState({ csvContentErrors: [], errorMessage: '' });\n if (file === undefined) {\n // ダイアログをキャンセルした場合は何もしない。\n return;\n }\n // ファイルの中身から文字コードを推測\n const reader = new FileReader();\n reader.onload = (e) => {\n const buffer = e.target.result;\n const uint8Array = new Uint8Array(buffer);\n const encoding = Encoding.detect(uint8Array);\n\n parse(file, {\n header: true,\n skipEmptyLines: true,\n encoding,\n complete: async (results) => {\n const records = results.data;\n if (records?.length === 0) {\n changeState({\n csvContentErrors: ['csvから学生データを見つけられませんでした'],\n });\n return;\n }\n const arr = [];\n console.log(records);\n for (const record of records) {\n const studentNo = record?.['学籍番号'];\n const lastName = record?.['苗字'];\n const firstName = record?.['名前'];\n const graduationYear = record?.['卒業予定年度'];\n const email = record?.['メールアドレス'];\n const tel = record?.['TEL'];\n const postalCode = record?.['郵便番号'];\n const address = record?.['住所'];\n if (type === 'school') {\n if (!lastName || !firstName || !email) {\n changeState({\n csvContentErrors: ['氏名とメールアドレスは必須です'],\n });\n return;\n }\n } else {\n if (!studentNo || !lastName || !firstName) {\n changeState({\n csvContentErrors: ['学籍番号、氏名は必須です'],\n });\n return;\n }\n }\n arr.push({\n student_no: studentNo,\n last_name: lastName,\n first_name: firstName,\n graduation_year: graduationYear,\n email,\n tel,\n postal_code: postalCode,\n street_address: address,\n });\n }\n mask();\n try {\n const res = await HttpRequest.post(\n '/api/my_school/students/imports',\n {\n records: arr,\n type,\n },\n );\n location.reload();\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'csv取込中にエラーが発生しました' });\n } finally {\n unmask();\n }\n },\n });\n };\n reader.onerror = () => {\n console.error(reader.error);\n changeState({\n csvContentErrors: ['予期せぬエラーが発生しました'],\n });\n };\n reader.readAsArrayBuffer(file);\n }, []);\n\n return {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n errorMessage,\n csvContentErrors,\n // actions\n initialize,\n updateFilter,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n downloadStudents,\n sendEmail,\n downloadCsv,\n downloadReportCsv,\n multipleDelete,\n uploadCsv,\n openStudentRegisterPdf,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'SCHOOL_MANAGEMENT_AGGREGATE_EXPORT_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default:\n return state;\n }\n};\n\nexport const useAggregateExportModule = () => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const downloadSchoolBasicSurvey = useCallback(async () => {\n mask();\n try {\n await HttpRequest.pseudoRequest(1000);\n } finally {\n unmask();\n }\n }, []);\n\n const downloadChildcareWorkerTrainingCouncilSurvey = useCallback(async () => {\n mask();\n try {\n await HttpRequest.pseudoRequest(1000);\n } finally {\n unmask();\n }\n }, []);\n\n const forwardToHome = useCallback(\n () => (location.href = '/my_school/home'),\n [],\n );\n\n return {\n // store\n isLoading,\n // actions\n downloadSchoolBasicSurvey,\n downloadChildcareWorkerTrainingCouncilSurvey,\n forwardToHome,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'SCHOOL_MANAGEMENT_FORM_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst CHANGE_SCHOOL = `${P}UPDATE_SCHOOL`;\n\nconst initialState = {\n school: {},\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_SCHOOL: {\n return { ...state, school: { ...payload } };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolFormModule = () => {\n const [{ school, isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n setValue,\n setError,\n } = useForm({\n mode: 'all',\n defaultValues: {\n name: school?.name,\n alias_name: school?.alias_name,\n postal_code: school?.postal_code,\n address: school?.address,\n corporate_name: school?.corporate_name,\n tel: school?.tel,\n registered_faculty: school?.registered_faculty,\n registered_student_number: school?.registered_student_number,\n homepage_url: school?.homepage_url,\n school_type: [],\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const initializeSchool = useCallback((school, schoolTypes) => {\n setValue('name', school.name);\n setValue('alias_name', school.alias_name ?? school.name);\n setValue('postal_code', school.postal_code);\n setValue('address', school.address);\n setValue('corporate_name', school.corporate_name);\n setValue('tel', school.tel);\n setValue('registered_faculty', school.registered_faculty);\n setValue('registered_student_number', school.registered_student_number);\n setValue('homepage_url', school.homepage_url);\n if (schoolTypes?.length > 0) {\n setValue('school_type', schoolTypes);\n }\n }, []);\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await HttpRequest.patch('/my_school', { ...data });\n location.href = location.href;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const forwardToHome = useCallback(\n () => (location.href = '/my_school/home'),\n [],\n );\n\n return {\n // store\n school,\n isLoading,\n errors,\n // actions\n register,\n handleSubmit,\n watch,\n changeState,\n initializeSchool,\n save,\n forwardToHome,\n setError,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { getAuth, onAuthStateChanged } from 'firebase/auth';\nimport { USER_TYPE } from '../../../utils/constant';\nimport { auth } from '../../../utils/firebase';\nimport { fetchMe, postLogin } from '../../../api/common';\n\nconst P = 'SCHOOL_MANAGE_LOGIN_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n loggedInWithDifferentTypeAccount: false,\n loggedIn: false,\n userName: '',\n schoolName: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useLoginModule = () => {\n const [\n {\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n loggedIn,\n userName,\n schoolName,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n password: '',\n },\n });\n\n /**\n * ログイン済みかどうか\n * @type {(function(): Promise)|*}\n */\n const checkLoggedIn = useCallback(async () => {\n try {\n const data = await fetchMe();\n dispatch({\n type: CHANGE_STATE,\n payload: {\n loggedIn: true,\n loggedInWithDifferentTypeAccount:\n data?.user_type !== USER_TYPE.ADVISOR,\n userName: data?.name,\n schoolName: data?.school_name,\n },\n });\n } catch (e) {\n if (\n location.pathname !== '/my_school/login' &&\n location.pathname !== '/my_school/password_reset'\n ) {\n location.href = '/my_school/login';\n }\n dispatch({ type: CHANGE_STATE, payload: { loggedIn: false } });\n }\n }, []);\n\n /**\n * ログイン済みかどうかをチェックし、状況に応じてリダイレクトする\n * @type {(function(): void)|*}\n */\n const checkAuthWithRedirect = useCallback(() => {\n mask();\n const _auth = getAuth();\n onAuthStateChanged(_auth, (user) => {\n if (user) {\n user.getIdToken(true).then(async (id_token) => {\n try {\n const {\n data: { user_type },\n } = await postLogin(id_token);\n if (user_type === USER_TYPE.ADVISOR) {\n location.href = '/my_school/home';\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { loggedInWithDifferentTypeAccount: true },\n });\n unmask();\n }\n } catch (e) {\n console.error(e);\n unmask();\n }\n });\n } else {\n unmask();\n }\n });\n }, [dispatch]);\n\n /**\n * ログイン処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(async () => {\n mask();\n try {\n await auth.signInWithEmailAndPassword(watch('email'), watch('password'));\n checkAuthWithRedirect();\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインできません' },\n });\n unmask();\n }\n }, [dispatch]);\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n control,\n formError: errors,\n loggedIn,\n checkLoggedIn,\n userName,\n schoolName,\n // actions\n checkAuth: checkAuthWithRedirect,\n register,\n handleSubmit,\n watch,\n onSubmit,\n };\n};\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'STUDENT_EVENT_FACILITY_SEARCH_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n filter: {},\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useFacilitySearchModule = () => {\n const [{ filter, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const changeFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const searchFilter = useCallback(async () => {\n mask();\n try {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/events/facility_search/results?${p}`;\n } finally {\n unmask();\n }\n }, [filter]);\n\n return {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n };\n};\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'STUDENT_RECRUITMENT_SCHOOL_CORPORATE_SEARCH_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n filter: {},\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCorporateSearchModule = () => {\n const [{ filter, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const changeFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const searchFilter = useCallback(async () => {\n mask();\n try {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/corporate_search/results?${p}`;\n } finally {\n unmask();\n }\n }, [filter]);\n\n return {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n };\n};\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'STUDENT_RECRUITMENT_SCHOOL_FACILITY_SEARCH_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n filter: {},\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useFacilitySearchModule = () => {\n const [{ filter, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const changeFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const searchFilter = useCallback(async () => {\n mask();\n try {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/facility_search/results?${p}`;\n } finally {\n unmask();\n }\n }, [filter]);\n\n return {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'STUDENT_REPORT_ACTIVITY_REPORT_CREATE_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useActivityReportCreate = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n clearErrors,\n setValue,\n watch,\n control,\n } = useForm({\n corporate_name: '',\n corporate_type: '',\n corporate_address: '',\n facility_name: '',\n facility_type: '',\n facility_address: '',\n report_note: '',\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const save = useCallback(async (data) => {\n mask();\n try {\n await HttpRequest.post('/api/student/reports/activity_report', data);\n location.href = '/student/reports/activity_report/success';\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n unmask();\n }\n }, []);\n\n return {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n changeState,\n clearErrors,\n save,\n register,\n handleSubmit,\n setValue,\n watch,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'STUDENT_REPORT_CAREER_HOPE_CREATE_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCareerHopeCreateModule = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n } = useForm({\n firstCareerHope: {},\n secondCareerHope: {},\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const save = useCallback(async (data) => {\n mask();\n try {\n await HttpRequest.post('/api/student/reports/career_hope', {\n first_career_hope: data.firstCareerHope,\n second_career_hope: data.secondCareerHope,\n });\n location.href = '/student/reports/career_hope/success';\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n unmask();\n }\n }, []);\n return {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n changeState,\n save,\n register,\n handleSubmit,\n setValue,\n watch,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'STUDENT_REPORT_ACTIVITY_REPORT_CREATE_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useOfferReportCreate = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n clearErrors,\n setValue,\n watch,\n control,\n } = useForm({\n defaultValues: {\n corporate_name: '',\n corporate_type: '',\n corporate_address: '',\n facility_name: '',\n facility_type: '',\n facility_address: '',\n career_type: null,\n employee_type: '',\n required_document_option: [],\n required_document_option_remarks: '',\n recruitment_info_from: [],\n application_reason: [],\n application_reason_remarks: '',\n exam_date_1: null,\n exam_type_1: [],\n exam_type_1_remarks: '',\n exam_date_2: null,\n exam_type_2: [],\n exam_type_2_remarks: '',\n interview_question: [],\n interview_question_remarks: '',\n advice_to_juniors: '',\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const save = useCallback(async (data) => {\n mask();\n try {\n await HttpRequest.post('/api/student/reports/offer_report', data);\n location.href = '/student/reports/offer_report/success';\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n unmask();\n }\n }, []);\n\n return {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n changeState,\n clearErrors,\n save,\n register,\n handleSubmit,\n setValue,\n watch,\n };\n};\n","import { getAuth, onAuthStateChanged } from 'firebase/auth';\nimport { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { USER_TYPE } from '../../../utils/constant';\nimport { auth } from '../../../utils/firebase';\nimport { fetchMe, postLogin, signOut } from '../../../api/common';\n\nconst P = 'STUDENT_GLOBAL_LOGIN_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n loggedInWithDifferentTypeAccount: false,\n loggedIn: false,\n userName: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useGlobalLoginModule = () => {\n const [\n { isLoading, error, loggedInWithDifferentTypeAccount, loggedIn, userName },\n dispatch,\n ] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n password: '',\n },\n });\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n /**\n * ログイン済みかどうか\n * @type {(function(): Promise)|*}\n */\n const checkLoggedIn = useCallback(async () => {\n try {\n const data = await fetchMe();\n dispatch({\n type: CHANGE_STATE,\n payload: {\n loggedIn: true,\n loggedInWithDifferentTypeAccount:\n data?.user_type !== USER_TYPE.STUDENT,\n userName: data?.name,\n },\n });\n } catch (e) {\n console.error(e);\n location.href = '/students/login';\n dispatch({ type: CHANGE_STATE, payload: { loggedIn: false } });\n }\n }, []);\n /**\n * ログイン済みかどうかをチェックし、状況に応じてリダイレクトする\n * @type {(function(): void)|*}\n */\n const checkAuthWithRedirect = useCallback(() => {\n mask();\n const _auth = getAuth();\n onAuthStateChanged(_auth, (user) => {\n if (user) {\n user.getIdToken(true).then(async (id_token) => {\n try {\n const {\n data: { user_type },\n } = await postLogin(id_token);\n\n if (user_type === USER_TYPE.STUDENT) {\n location.href = '/student/home';\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインに失敗しました' },\n });\n await signOut();\n unmask();\n }\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインに失敗しました' },\n });\n unmask();\n }\n });\n } else {\n unmask();\n }\n });\n }, [dispatch]);\n\n /**\n * ログイン処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(\n async ({ email, password }) => {\n mask();\n try {\n await auth.signInWithEmailAndPassword(email, password);\n checkAuthWithRedirect();\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインに失敗しました' },\n });\n unmask();\n }\n },\n [dispatch, watch],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n control,\n formError: errors,\n loggedIn,\n checkLoggedIn,\n userName,\n // actions\n checkAuth: checkAuthWithRedirect,\n register,\n handleSubmit,\n watch,\n onSubmit,\n changeState,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { auth } from '../../../utils/firebase';\nimport HttpRequest from '../../../utils/HttpRequest';\n\nconst P = 'STUDENT_GLOBAL_PASSWORD_RESET_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n email: '',\n school: {},\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useGlobalPasswordResetModule = () => {\n const [{ isLoading, error, email, school }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n },\n });\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n /**\n * パスワード変更処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(\n async ({ email }) => {\n mask();\n try {\n await auth\n .sendPasswordResetEmail(email, {\n url: `${location.protocol}//${location.host}/students/login`,\n })\n .then(() => {\n return HttpRequest.post(\n '/api/student/password_reset_success',\n ).finally(() => {\n location.href = `/students/login`;\n });\n });\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'パスワードリセットに失敗しました' },\n });\n unmask();\n }\n },\n [dispatch, school],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n formError: errors,\n email,\n // actions\n changeState,\n register,\n handleSubmit,\n watch,\n onSubmit,\n };\n};\n","import HttpRequest from '../../../utils/HttpRequest';\nimport { useCallback, useReducer } from 'react';\nimport { auth } from '../../../utils/firebase';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'STUDENT_INITIAL_PASSWORD_CHANGE_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useInitialPasswordChange = () => {\n const [{ isLoading, error }, dispatch] = useReducer(reducer, initialState);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n password: '',\n password_confirm: '',\n },\n });\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n /**\n * パスワード更新処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(\n async ({ password, password_confirm }) => {\n mask();\n try {\n await HttpRequest.put('/api/student/initial_password_change', {\n password,\n password_confirm,\n });\n location.href = '/student/home';\n } catch (e) {\n if (e?.response?.status === 400 && e?.response?.data?.error_message) {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: e?.response?.data?.error_message },\n });\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'エラーが発生しました' },\n });\n }\n console.error(e);\n\n unmask();\n }\n },\n [dispatch],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n control,\n formError: errors,\n // actions\n register,\n handleSubmit,\n watch,\n onSubmit,\n changeState,\n };\n};\n","import { getAuth, onAuthStateChanged } from 'firebase/auth';\nimport { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { USER_TYPE } from '../../../utils/constant';\nimport { auth } from '../../../utils/firebase';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { postLogin, signOut } from '../../../api/common';\n\nconst P = 'STUDENT_LOGIN_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n loggedInWithDifferentTypeAccount: false,\n loggedIn: false,\n userName: '',\n schoolAliasName: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useLoginModule = () => {\n const [\n {\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n loggedIn,\n userName,\n schoolAliasName,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n password: '',\n },\n });\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n /**\n * ログイン済みかどうか\n * @type {(function(): Promise)|*}\n */\n const checkLoggedIn = useCallback(async () => {\n try {\n const { data } = await HttpRequest.get('/api/user');\n dispatch({\n type: CHANGE_STATE,\n payload: {\n loggedIn: true,\n loggedInWithDifferentTypeAccount:\n data?.user_type !== USER_TYPE.STUDENT,\n userName: data?.name,\n },\n });\n } catch (e) {\n console.error(e);\n location.href = '/students/login';\n dispatch({ type: CHANGE_STATE, payload: { loggedIn: false } });\n }\n }, []);\n\n /**\n * ログイン済みかどうかをチェックし、状況に応じてリダイレクトする\n * @type {(function(): void)|*}\n */\n const checkAuthWithRedirect = useCallback(() => {\n mask();\n const _auth = getAuth();\n onAuthStateChanged(_auth, (user) => {\n if (user) {\n user.getIdToken(true).then(async (id_token) => {\n try {\n const {\n data: { user_type },\n } = await postLogin(id_token);\n\n if (user_type === USER_TYPE.STUDENT) {\n location.href = '/student/home';\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインに失敗しました' },\n });\n await signOut();\n unmask();\n }\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインに失敗しました' },\n });\n unmask();\n }\n });\n } else {\n unmask();\n }\n });\n }, [dispatch, schoolAliasName]);\n\n /**\n * ログイン処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(\n async ({ email, password }) => {\n mask();\n try {\n await auth.signInWithEmailAndPassword(email, password);\n checkAuthWithRedirect();\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'ログインに失敗しました' },\n });\n unmask();\n }\n },\n [dispatch, watch],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const handleLogout = useCallback(async () => {\n mask();\n try {\n await signOut();\n location.href = '/students/login';\n } finally {\n unmask();\n }\n }, [dispatch, mask, unmask]);\n\n return {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n control,\n formError: errors,\n loggedIn,\n checkLoggedIn,\n userName,\n // actions\n checkAuth: checkAuthWithRedirect,\n register,\n handleSubmit,\n watch,\n onSubmit,\n changeState,\n handleLogout,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { auth } from '../../../utils/firebase';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../utils/HttpRequest';\n\nconst P = 'STUDENT_PASSWORD_RESET_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n email: '',\n school: {},\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const usePasswordResetModule = () => {\n const [{ isLoading, error, email, school }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n },\n });\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n /**\n * パスワード変更処理\n * @type {(function(): Promise)|*}\n */\n const onSubmit = useCallback(\n async ({ email }) => {\n mask();\n try {\n await auth\n .sendPasswordResetEmail(email, {\n url: `${location.protocol}//${location.host}/students/login`,\n })\n .then(() => {\n return HttpRequest.post(\n '/api/student/password_reset_success',\n ).finally(() => {\n location.href = `/students/login`;\n });\n });\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'パスワードリセットに失敗しました' },\n });\n unmask();\n }\n },\n [dispatch, school],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n formError: errors,\n email,\n // actions\n changeState,\n register,\n handleSubmit,\n watch,\n onSubmit,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\n\nconst P = 'CORPORATE_BOOKMARK_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst LOCAL_MASK = `${P}LOCAL_MASK`;\nconst LOCAL_UNMASK = `${P}LOCAL_UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n bookmarked: false,\n isLoading: false,\n isLocalMask: false,\n attachedFiles: {},\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case LOCAL_MASK: {\n return { ...state, isLocalMask: true };\n }\n case LOCAL_UNMASK: {\n return { ...state, isLocalMask: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useCorporateBookmark = () => {\n const [{ isLoading, isLocalMask, bookmarked, attachedFiles }, dispatch] =\n useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const localMask = useCallback(\n () => dispatch({ type: LOCAL_MASK }),\n [dispatch],\n );\n const localUnMask = useCallback(\n () => dispatch({ type: LOCAL_UNMASK }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const addBookmark = useCallback(\n async (corporateId) => {\n localMask();\n try {\n await HttpRequest.post(`/api/bookmarks`, {\n corporate_id: corporateId,\n });\n toast.success('ブックマークしました');\n changeState({ bookmarked: true });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n\n const removeBookmark = useCallback(async (corporateId) => {\n localMask();\n try {\n await HttpRequest.delete(`/api/bookmarks/${corporateId}/corporate`);\n toast.success('ブックマークを解除しました');\n changeState({ bookmarked: false });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n }, []);\n\n const openAttachedFiles = useCallback(async (recruitmentId) => {\n localMask();\n try {\n const { data } = await HttpRequest.get(\n `/api/student/recruitment_attached_files/${recruitmentId}`,\n );\n changeState({\n attachedFiles: data,\n });\n } finally {\n localUnMask();\n }\n });\n\n return {\n // store\n isLoading,\n isLocalMask,\n bookmarked,\n attachedFiles,\n // actions\n addBookmark,\n removeBookmark,\n changeState,\n openAttachedFiles,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\n\nconst P = 'CORPORATE_PAPER_INFO_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst LOCAL_MASK = `${P}LOCAL_MASK`;\nconst LOCAL_UNMASK = `${P}LOCAL_UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n corporate: {},\n bookmarked: false,\n isLoading: false,\n isLocalMask: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case LOCAL_MASK: {\n return { ...state, isLocalMask: true };\n }\n case LOCAL_UNMASK: {\n return { ...state, isLocalMask: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\nexport const useCorporatePaperInfo = () => {\n const [{ corporate, isLoading, isLocalMask, bookmarked }, dispatch] =\n useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const localMask = useCallback(\n () => dispatch({ type: LOCAL_MASK }),\n [dispatch],\n );\n const localUnMask = useCallback(\n () => dispatch({ type: LOCAL_UNMASK }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const onLoad = useCallback(\n async (corporateId) => {\n mask();\n try {\n const {\n data: { corporate, bookmarked = false },\n } = await HttpRequest.get(`/api/corporates/${corporateId}`);\n dispatch({\n type: CHANGE_STATE,\n payload: {\n corporate,\n bookmarked,\n },\n });\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const addBookmark = useCallback(\n async (corporateId) => {\n localMask();\n try {\n await HttpRequest.post(`/api/bookmarks`, {\n corporate_id: corporateId,\n });\n toast.success('ブックマークしました');\n changeState({ bookmarked: true });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n\n const removeBookmark = useCallback(async (corporateId) => {\n localMask();\n try {\n await HttpRequest.delete(`/api/bookmarks/${corporateId}/corporate`);\n toast.success('ブックマークを解除しました');\n changeState({ bookmarked: false });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n }, []);\n\n return {\n // store\n corporate,\n isLoading,\n isLocalMask,\n bookmarked,\n // actions\n onLoad,\n addBookmark,\n removeBookmark,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\n\nconst P = 'CORPORATION_BOOKMARK_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst LOCAL_MASK = `${P}LOCAL_MASK`;\nconst LOCAL_UNMASK = `${P}LOCAL_UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n bookmarked: false,\n isLoading: false,\n isLocalMask: false,\n attachedFiles: {},\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case LOCAL_MASK: {\n return { ...state, isLocalMask: true };\n }\n case LOCAL_UNMASK: {\n return { ...state, isLocalMask: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useCorporationBookmark = () => {\n const [{ isLoading, isLocalMask, bookmarked, attachedFiles }, dispatch] =\n useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const localMask = useCallback(\n () => dispatch({ type: LOCAL_MASK }),\n [dispatch],\n );\n const localUnMask = useCallback(\n () => dispatch({ type: LOCAL_UNMASK }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const addBookmark = useCallback(\n async (corporationId) => {\n localMask();\n try {\n await HttpRequest.post(`/api/bookmarks`, {\n corporation_id: corporationId,\n });\n toast.success('ブックマークしました');\n changeState({ bookmarked: true });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n\n const removeBookmark = useCallback(async (corporationId) => {\n localMask();\n try {\n await HttpRequest.delete(`/api/bookmarks/${corporationId}/corporation`);\n toast.success('ブックマークを解除しました');\n changeState({ bookmarked: false });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n }, []);\n\n const openAttachedFiles = useCallback(async (recruitmentId) => {\n localMask();\n try {\n const { data } = await HttpRequest.get(\n `/api/student/recruitment_attached_files/${recruitmentId}`,\n );\n changeState({\n attachedFiles: data,\n });\n } finally {\n localUnMask();\n }\n });\n\n return {\n // store\n isLoading,\n isLocalMask,\n bookmarked,\n attachedFiles,\n // actions\n addBookmark,\n removeBookmark,\n changeState,\n openAttachedFiles,\n };\n};\n","import { useCallback, useEffect, useReducer } from 'react';\nimport HttpRequest from '../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\nimport { VIEW_FACILITY_HISTORIES_TYPE_DEFAULT } from '../../../utils/constant';\n\nconst P = 'FACILITY_PAPER_INFO_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst LOCAL_MASK = `${P}LOCAL_MASK`;\nconst LOCAL_UNMASK = `${P}LOCAL_UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n facility: {},\n recruitment: {},\n bookmarked: false,\n isLoading: false,\n isLocalMask: false,\n attachedFiles: {},\n events: [],\n youth_employment: {},\n hasAttachment: false,\n comment: '',\n enabledApplicant: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...initialState };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case LOCAL_MASK: {\n return { ...state, isLocalMask: true };\n }\n case LOCAL_UNMASK: {\n return { ...state, isLocalMask: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useFacilityInfo = () => {\n const [\n {\n facility,\n recruitment,\n isLoading,\n isLocalMask,\n bookmarked,\n attachedFiles,\n events,\n youth_employment,\n hasAttachment,\n comment,\n enabledApplicant,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n useEffect(() => {\n dispatch({ type: INITIALIZE });\n }, []);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const localMask = useCallback(\n () => dispatch({ type: LOCAL_MASK }),\n [dispatch],\n );\n const localUnMask = useCallback(\n () => dispatch({ type: LOCAL_UNMASK }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const onLoad = useCallback(\n async (facilityId) => {\n dispatch({\n type: INITIALIZE,\n });\n mask();\n try {\n const {\n data: {\n facility,\n recruitment,\n youth_employment,\n bookmarked = false,\n events = [],\n has_attachment,\n comment,\n enabled_applicant,\n },\n } = await HttpRequest.get(`/api/student/facilities/${facilityId}`);\n dispatch({\n type: CHANGE_STATE,\n payload: {\n facility,\n recruitment,\n bookmarked,\n events,\n youth_employment,\n hasAttachment: has_attachment,\n comment,\n enabledApplicant: enabled_applicant,\n },\n });\n\n try {\n await HttpRequest.post(`/api/student/view_facility_histories`, {\n facility_id: facilityId,\n type: VIEW_FACILITY_HISTORIES_TYPE_DEFAULT,\n });\n } catch (e) {\n console.error(e);\n }\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const addBookmark = useCallback(\n async (facilityId) => {\n localMask();\n try {\n await HttpRequest.post(`/api/bookmarks`, {\n facility_id: facilityId,\n });\n toast.success('ブックマークしました');\n changeState({ bookmarked: true });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n\n const removeBookmark = useCallback(async (facilityId) => {\n localMask();\n try {\n await HttpRequest.delete(`/api/bookmarks/${facilityId}`);\n toast.success('ブックマークを解除しました');\n changeState({ bookmarked: false });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n localUnMask();\n }\n }, []);\n\n const openAttachedFiles = useCallback(\n async (facilityId) => {\n localMask();\n try {\n const { data } = await HttpRequest.get(\n `/api/student/facilities/${facilityId}/attachments`,\n );\n changeState({\n attachedFiles: data,\n });\n } finally {\n localUnMask();\n }\n },\n [localMask, localUnMask],\n );\n\n return {\n // store\n facility,\n recruitment,\n isLoading,\n isLocalMask,\n bookmarked,\n attachedFiles,\n events,\n youth_employment,\n hasAttachment,\n comment,\n enabledApplicant,\n // actions\n onLoad,\n addBookmark,\n removeBookmark,\n openAttachedFiles,\n };\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useAdminCorporateCreateModule } from '../../../modules/Admin/Corporate/createModule';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport Title from '../../../components/Title';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport { CORPORATE_TYPES } from '../../../../utils/constant';\nimport { urlReg } from '../../../../utils/common';\nimport GrayButton from '../../../components/Buttons/GrayButton';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '法人一覧',\n href: '/admin/corporates',\n },\n {\n text: '法人情報登録',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '120px',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Create = () => {\n const {\n // store\n isLoading,\n errors,\n errorMessage,\n serverError,\n // actions\n register,\n handleSubmit,\n save,\n } = useAdminCorporateCreateModule();\n\n return (\n
    \n \n
    \n \n
    \n {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n
    \n \n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 法人格 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('legal_person', {\n required: '法人格は必須です',\n })}\n className=\"form-select\">\n {CORPORATE_TYPES.map(({ label, value }) => (\n <option key={value} value={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.legal_person?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 法人名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', { required: '法人名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 担当者\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('person_in_charge')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 担当者部署\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('person_in_charge_department')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 担当者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('person_in_charge_position')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 郵便番号\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('postal_code')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 住所\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('address')}\n className=\"form-control\"\n type=\"text\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n TEL\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('tel')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('site_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.site_url?.type === 'validate' &&\n 'HPの形式が正しくありません'}\n {errors?.site_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n\n <div className=\"w-100 d-flex flex-row justify-content-center\">\n {errorMessage && (\n <span className=\"text-danger\">{errorMessage}</span>\n )}\n </div>\n\n <div className=\"w-100 d-flex flex-row justify-content-center\">\n {serverError && (\n <span className=\"text-danger\">\n エラーが発生しました。時間をおいて再度お試しください\n </span>\n )}\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center my-3\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/facilities';\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n </div>\n );\n};\n\nCreate.propTypes = {\n postPath: PropTypes.string.isRequired,\n};\n\nexport default Create;\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useAdminCorporateDetailModule } from '../../../modules/Admin/Corporate/detailModule';\nimport { CORPORATE_TYPES } from '../../../../utils/constant';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport Title from '../../../components/Title';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport FacilityList from '../../../components/School/FacilityList';\nimport InlineSearch from '../../../components/Search/InlineSearch';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport DeleteModal from '../../../components/Modal/DeleteModal';\nimport { urlReg } from '../../../../utils/common';\nimport Button from '../../../components/Buttons/Button';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '法人一覧',\n href: '/admin/corporates',\n },\n {\n text: '法人情報詳細',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '120px',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Detail = ({\n corporate: defaultCorporate,\n defaultConnectedFacilities = [],\n isDeleted = false,\n updatedAt,\n facilityTourApplicantOptionId = null,\n}) => {\n const {\n // store\n isLoading,\n errors,\n searchText,\n connectedFacilities,\n connectedFacilityIds,\n searchResultFacilities,\n selectedFacilityIds,\n // actions\n initializeCorporate,\n register,\n handleSubmit,\n save,\n changeState,\n search,\n deleteCorporate,\n restoreCorporate,\n uploadFacilityTopImage,\n deleteFacilityTopImage,\n downloadFacilitiesCSV,\n } = useAdminCorporateDetailModule();\n\n useEffect(() => {\n initializeCorporate(defaultCorporate);\n changeState({\n connectedFacilities: defaultConnectedFacilities,\n connectedFacilityIds: defaultConnectedFacilities.map((d) => d.id),\n });\n }, []);\n\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n {isDeleted && (\n <div className=\"py-3 alert alert-warning\">\n 削除されたデータを表示しています\n </div>\n )}\n <form onSubmit={handleSubmit(save)}>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"法人情報\" subTitle=\"法人情報の確認、編集を行います\" />\n <div className=\"d-flex w-100 justify-content-end\">\n <span className=\"me-3\">法人ID:{defaultCorporate.id}</span>\n <span className=\"\">更新日:{updatedAt}</span>\n </div>\n <div className=\"d-flex w-100 justify-content-end mt-3\">\n <Button\n variant=\"green\"\n label={\n facilityTourApplicantOptionId ? '申込管理へ' : '利用開始する'\n }\n textFontSize={14}\n onClick={(e) => {\n e.preventDefault();\n if (facilityTourApplicantOptionId) {\n window.open(\n `/admin/facility_tour_applicant_options?q[corporate_id_eq]=${defaultCorporate.id}`,\n '_blank',\n );\n } else {\n HttpRequest.post(\n `/api/admin/corporates/${defaultCorporate.id}/facility_tour_applicant`,\n ).then(() => {\n location.href = location.href;\n });\n }\n }}\n />\n </div>\n <Paper className=\"mb-3\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 法人格 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('legal_person', {\n required: '法人格は必須です',\n })}\n className=\"form-select\"\n disabled={isDeleted}>\n {CORPORATE_TYPES.map(({ label, value }) => (\n <option key={value} value={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.legal_person?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 法人名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', { required: '法人名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n disabled={isDeleted}\n />\n <span className=\"text-danger\">\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 担当者\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('person_in_charge')}\n type=\"text\"\n className=\"form-control\"\n disabled={isDeleted}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 担当者部署\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('person_in_charge_department')}\n type=\"text\"\n className=\"form-control\"\n disabled={isDeleted}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 担当者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('person_in_charge_position')}\n type=\"text\"\n className=\"form-control\"\n disabled={isDeleted}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 郵便番号\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('postal_code')}\n type=\"text\"\n className=\"form-control\"\n disabled={isDeleted}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 住所\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('address')}\n className=\"form-control\"\n type=\"text\"\n disabled={isDeleted}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n TEL\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('tel')}\n type=\"text\"\n className=\"form-control\"\n disabled={isDeleted}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('site_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n disabled={isDeleted}\n />\n <span className=\"text-danger\">\n {errors?.site_url?.type === 'validate' &&\n 'HPの形式が正しくありません'}\n {errors?.site_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <Paper className=\"mb-3\" title=\"運営備考\">\n <div className=\"d-flex flex-column w-100 px-3 mt-2\">\n <textarea\n {...register('admin_note')}\n className=\"form-control\"\n disabled={isDeleted}\n cols={30}\n rows={10}\n />\n </div>\n </Paper>\n <Paper\n className=\"mb-3\"\n title=\"施設一覧\"\n headerRenderer={() => (\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={120}\n height={44}\n labelElement={\n <div\n className=\"d-flex flex-column align-items-center w-100\"\n style={{ fontSize: '14px' }}>\n <div>施設情報</div>\n <div>ダウンロード</div>\n </div>\n }\n textFontSize={12}\n onClick={(e) => {\n e.preventDefault();\n downloadFacilitiesCSV(defaultCorporate.id);\n }}\n />\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3\">\n <FacilityList\n data={connectedFacilities}\n targetIds={connectedFacilityIds}\n removeAllTargets={() =>\n changeState({ connectedFacilityIds: [] })\n }\n removeTargetId={(id) =>\n changeState({\n connectedFacilityIds: connectedFacilityIds.filter(\n (_id) => _id !== id,\n ),\n })\n }\n addTargetId={(id) =>\n changeState({\n connectedFacilityIds: [...connectedFacilityIds, id],\n })\n }\n addAllTargets={() =>\n changeState({\n connectedFacilityIds: connectedFacilities.map((d) => d.id),\n })\n }\n nameRenderer={(facility) => {\n return (\n <>\n <a\n href={`/admin/facilities/${facility.id}`}\n target=\"_blank\">\n {facility.name}\n </a>\n </>\n );\n }}\n hideAuthorization={false}\n hideOperator={false}\n hideHp={false}\n hideUpdatedAt={false}\n showStatus={false}\n showRecruitmentRegisteredAt={false}\n hideCheck={isDeleted}\n showTopImageFile\n canUploadTopImage\n uploadTopImage={async (id, file) => {\n await uploadFacilityTopImage(id, file);\n }}\n deleteTopImage={async (facilityId) => {\n await deleteFacilityTopImage(facilityId);\n }}\n />\n </div>\n <h5 className=\"text-primary fw-bold py-2\">紐付け施設検索</h5>\n <div className=\"d-flex flex-row ms-3\">\n <InlineSearch\n style={{ maxWidth: '400px' }}\n label=\"検索\"\n onChange={({ target: { value } }) =>\n changeState({ searchText: value })\n }\n placeHolder=\"施設名を入力してください\"\n onClick={() => search(searchText)}\n value={searchText}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n search(searchText);\n }\n }}\n disabled={isDeleted}\n />\n </div>\n <div className=\"d-flex flex-column w-100 px-3\">\n <FacilityList\n data={searchResultFacilities}\n targetIds={selectedFacilityIds}\n addTargetId={(id) =>\n changeState({\n selectedFacilityIds: [...selectedFacilityIds, id],\n })\n }\n addAllTargets={() =>\n changeState({\n selectedFacilityIds: searchResultFacilities.map(\n (d) => d.id,\n ),\n })\n }\n removeTargetId={(id) =>\n changeState({\n selectedFacilityIds: selectedFacilityIds.filter(\n (_id) => _id !== id,\n ),\n })\n }\n removeAllTargets={() =>\n changeState({\n selectedFacilityIds: [],\n })\n }\n nameRenderer={(facility) => {\n return (\n <>\n <a\n href={`/admin/facilities/${facility.id}`}\n target=\"_blank\">\n {facility.name}\n </a>\n </>\n );\n }}\n hideAuthorization={false}\n hideOperator={false}\n hideHp={false}\n hideUpdatedAt={false}\n showRecruitmentRegisteredAt={false}\n showRelatedCorporateName\n withDeletedLabel\n hideCheck={isDeleted}\n />\n </div>\n <div className=\"d-flex justify-content-center my-3\">\n <GreenButton\n width={140}\n height={60}\n label=\"選択施設を紐付ける\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n const targets = searchResultFacilities.filter((facility) =>\n selectedFacilityIds.includes(facility.id),\n );\n const targetIds = targets.map((d) => d.id);\n const existsIds = connectedFacilities\n .filter((d) => targetIds.includes(d.id))\n .map((d) => d.id);\n const filteredFacilities = targets.filter(\n (d) => !existsIds.includes(d.id),\n );\n changeState({\n connectedFacilities: [\n ...connectedFacilities,\n ...filteredFacilities,\n ],\n connectedFacilityIds: [\n ...connectedFacilityIds,\n ...filteredFacilities.map((d) => d.id),\n ],\n selectedFacilityIds: [],\n searchResultFacilities: searchResultFacilities.filter(\n (d) => !targetIds.includes(d.id),\n ),\n });\n }}\n disabled={isDeleted}\n />\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center mb-5\">\n {isDeleted ? (\n <BlackButton\n width={100}\n height={44}\n label=\"リストア\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n restoreCorporate(defaultCorporate.id);\n }}\n />\n ) : (\n <>\n <BlackButton\n width={100}\n height={44}\n label=\"削除\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n />\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/facilities';\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </>\n )}\n </div>\n </div>\n </form>\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return deleteCorporate(defaultCorporate.id);\n }}\n />\n </div>\n );\n};\n\nDetail.propTypes = {\n corporate: PropTypes.object.isRequired,\n};\n\nexport default Detail;\n","import React, { useMemo, useState } from 'react';\nimport { useCreate } from './hooks/useCreate';\nimport styled from 'styled-components';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport AdminBreadcrumbs from '../../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport Step from '../../../MyCorporate/Option/FacilityTourApplicant/components/Step';\nimport Paper from '../../../../components/Paper/Paper';\nimport Table from '../../../../components/Table/Table';\nimport TableBody from '../../../../components/Table/TableBody';\nimport TableRow from '../../../../components/Table/TableRow';\nimport BodyCell from '../../../../components/Table/BodyCell';\nimport PrefectureSelect from '../../../../components/PrefectureSelect/PrefectureSelect';\nimport { PHONE_REGEX_WITH_SEP } from '../../../../../utils/constant';\nimport Button from '../../../../components/Buttons/Button';\nimport ConfirmModal from '../../../MyCorporate/Option/FacilityTourApplicant/components/ConfirmModal';\n\nconst Notice = styled.div`\n color: #f76c7d;\n`;\n\nconst SectionHeader = styled.div`\n background: #9ddaff;\n font-size: 14px;\n`;\n\nconst tableLeftCellStyle = {\n background: '#E1EBF5',\n width: '300px',\n fontSize: '14px',\n};\n\nconst textStyle = {\n color: '#6B6B6B',\n};\n\nconst addressLabelStyle = {\n minWidth: '200px',\n};\n\nconst labelNoticeStyle = {\n fontSize: '11px',\n};\n\nconst Create = ({ corporateId }) => {\n const {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n save,\n watch,\n setValue,\n register,\n handleSubmit,\n trigger,\n } = useCreate(corporateId);\n\n const breadcrumbs = useMemo(() => [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '法人一覧',\n href: '/admin/corporates',\n },\n {\n text: '法人情報詳細',\n href: `/admin/corporates/${corporateId}`,\n },\n {\n text: '施設見学管理',\n },\n ]);\n\n return (\n <div className=\"container mb-5\" style={textStyle}>\n <LoadingOverlay loading={isLoading} />\n {Object.keys(errors).length > 0 && (\n <div\n className=\"w-100 alert alert-danger mt-3 d-flex align-items-center\"\n style={{\n height: '51px',\n color: '#F76C7D',\n background: '#F76C7D1A',\n }}>\n 入力エラー:必須項目が入力されていないか、入力内容に誤りがあります\n </div>\n )}\n {errorMessage && (\n <div\n className=\"w-100 alert alert-danger mt-3 d-flex align-items-center\"\n style={{\n height: '51px',\n color: '#F76C7D',\n background: '#F76C7D1A',\n }}>\n {errorMessage}\n </div>\n )}\n <AdminBreadcrumbs items={breadcrumbs} />\n <form onSubmit={handleSubmit(save)}>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle title={'「見学申込機能」の利用申し込み'} />\n </div>\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3\">\n <section>\n <div\n className=\"fw-bold mb-1\"\n style={{ fontSize: '20px', ...textStyle }}>\n プランの選択\n </div>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n ご利用になる機能を選択して下さい\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center\"\n style={textStyle}>\n オプション機能\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center my-3\">\n <input\n type=\"checkbox\"\n checked\n id=\"option-plan\"\n className=\"form-check-input mt-0\"\n />\n <label htmlFor=\"option-plan\" className=\"ps-2 fw-bold\">\n 見学申込機能\n </label>\n </div>\n 求人情報の配信等の基本機能に加え、以下機能が利用可能\n <div className=\"d-flex flex-column justify-content-start bg-white p-3\">\n <div className=\"d-flex flex-column w-100\">\n <div className=\"d-flex flex-row w-100\">\n <div style={{ width: '100px' }}>\n ご利用可能機能\n </div>\n <div className=\"px-2\">:</div>\n <div>\n 学生からの見学申込(ENMAP上で学生からの見学申込を受け付ける機能)\n </div>\n </div>\n <div className=\"d-flex flex-row w-100 my-2\">\n <div style={{ width: '100px' }}>ご利用料金</div>\n <div className=\"px-2\">:</div>\n <div\n className=\"d-flex flex-column\"\n style={{\n color: '#F76C7D',\n fontWeight: 'bold',\n }}>\n <div className=\"d-flex\">\n <div style={{ width: '120px' }}>\n 運営施設数\n </div>\n <div style={{ width: '150px' }}>\n 10施設未満\n </div>\n <div>|</div>\n <div\n style={{\n width: '180px',\n textAlign: 'right',\n }}>\n 30,000円(税抜)\n </div>\n </div>\n <div className=\"d-flex\">\n <div style={{ width: '120px' }}></div>\n <div style={{ width: '150px' }}>\n 10施設~29施設\n </div>\n <div>|</div>\n <div\n style={{\n width: '180px',\n textAlign: 'right',\n }}>\n 100,000円(税抜)\n </div>\n </div>\n <div className=\"d-flex\">\n <div style={{ width: '120px' }}></div>\n <div style={{ width: '150px' }}>\n 30施設以上\n </div>\n <div>|</div>\n <div\n style={{\n width: '180px',\n textAlign: 'right',\n }}>\n 300,000円(税抜)\n </div>\n </div>\n </div>\n </div>{' '}\n <div className=\"d-flex flex-row w-100\">\n <div style={{ width: '100px' }}>\n ご利用可能期間\n </div>\n <div\n className=\"px-2\"\n style={{ fontWeight: 'bold' }}>\n :\n </div>\n <Notice style={{ fontWeight: 'bold' }}>\n 即時 ~ 2026年3月31日\n </Notice>\n </div>\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n <section>\n <div\n className=\"fw-bold mb-1\"\n style={{ fontSize: '20px', ...textStyle }}>\n ご請求情報の登録\n </div>\n <section>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n 請求書の送付方法を選択して下さい\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>請求の送付方法</div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <div className=\"me-3 d-flex align-items-center\">\n <input\n {...register('sending_method', {\n required: '送付方法を選択してください',\n })}\n type=\"radio\"\n id=\"sending_method__email\"\n name=\"sending_method\"\n value=\"email\"\n />\n <label\n htmlFor=\"sending_method__email\"\n className=\"ps-2\">\n Eメール\n </label>\n </div>\n <div className=\"me-3 d-flex align-items-center\">\n <input\n type=\"radio\"\n id=\"sending_method__shipping\"\n name=\"sending_method\"\n {...register('sending_method', {\n required: '送付方法を選択してください',\n })}\n value=\"shipping\"\n />\n <label\n htmlFor=\"sending_method__shipping\"\n className=\"ps-2\">\n 郵送\n </label>\n </div>\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.sending_method?.message}\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n <section>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n 請求書の送付先を入力して下さい\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>法人名</div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('corporate_name', {\n required: '法人名を入力して下さい',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.corporate_name?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>請求書送付先住所</div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2 d-flex flex-column\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>郵便番号</div>\n <input\n {...register('postal_code1', {\n required: '郵便番号を入力して下さい',\n pattern: {\n value: /^\\d{3}$/,\n message: '3桁の数字で入力して下さい',\n },\n })}\n type=\"tel\"\n className=\"form-control\"\n style={{ width: '80px' }}\n />\n <div\n style={{ width: '30px' }}\n className=\"d-flex justify-content-center\">\n -\n </div>\n <input\n {...register('postal_code2', {\n required: '郵便番号を入力して下さい',\n pattern: {\n value: /^\\d{4}$/,\n message: '4桁の数字で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '90px' }}\n />\n </div>\n <div className=\"text-danger\">\n {errors?.postal_code1?.message ||\n errors?.postal_code2?.message}\n </div>\n </div>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>都道府県</div>\n <div style={{ width: '200px' }}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n }}\n editMode\n name=\"pref_code\"\n />\n </div>\n </div>\n <div className=\"text-danger\">\n {errors?.pref_code?.message}\n </div>\n </div>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>\n 住所(100文字まで)\n </div>\n <input\n {...register('address', {\n required: '住所を入力して下さい',\n maxLength: {\n value: 100,\n message: '100文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n />\n </div>\n <div className=\"text-danger\">\n {errors?.address?.message}\n </div>\n </div>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>\n TEL(ハイフンあり)\n </div>\n <input\n {...register('tel', {\n required: '電話番号を入力して下さい',\n pattern: {\n value: PHONE_REGEX_WITH_SEP,\n message: '電話番号の形式が正しくありません',\n },\n })}\n type=\"tel\"\n className=\"form-control\"\n style={{ width: '200px' }}\n />\n </div>\n <div className=\"text-danger\">\n {errors?.tel?.message}\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>部署名</div>\n <div style={labelNoticeStyle}>(50文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_department', {\n required: '部署名を入力して下さい',\n maxLength: {\n value: 50,\n message: '50文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_department?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様役職</div>\n <div style={labelNoticeStyle}>(50文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_position', {\n required: '役職を入力して下さい',\n maxLength: {\n value: 50,\n message: '50文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_position?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様氏名</div>\n <div style={labelNoticeStyle}>(30文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_name', {\n required: '氏名を入力して下さい',\n maxLength: {\n value: 30,\n message: '30文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_name?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様氏名(カナ)</div>\n <div style={labelNoticeStyle}>(60文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_name_kana', {\n required: 'カナを入力して下さい',\n maxLength: {\n value: 60,\n message: '60文字以内で入力して下さい',\n },\n pattern: {\n value: /^[ァ-ヶー  ]+$/,\n message: 'カナは全角カタカナで入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_name_kana?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス1</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_email1', {\n required: 'メールアドレス1を入力して下さい',\n maxLength: {\n value: 80,\n message: '80文字以内で入力して下さい',\n },\n pattern: {\n value: /\\S+@\\S+\\.\\S+/,\n message:\n 'メールアドレス1の形式が正しくありません',\n },\n })}\n type=\"email\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_email1?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス2</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_email2', {\n maxLength: {\n value: 80,\n message: '80文字以内で入力して下さい',\n },\n pattern: {\n value: /\\S+@\\S+\\.\\S+/,\n message:\n 'メールアドレス2の形式が正しくありません',\n },\n })}\n type=\"email\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_email2?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス3</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_email3', {\n maxLength: {\n value: 80,\n message: '80文字以内で入力して下さい',\n },\n pattern: {\n value: /\\S+@\\S+\\.\\S+/,\n message:\n 'メールアドレス3の形式が正しくありません',\n },\n })}\n type=\"email\"\n className=\"form-control\"\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_email3?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>アンケート</div>\n <div>\n 「オプション機能を\n <br />\n 知ったきっかけ」\n </div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__1\"\n type=\"checkbox\"\n value=\"ENMAPホームページ\"\n />\n <label\n htmlFor=\"survey_responses__1\"\n className=\"ps-2\">\n ENMAPホームページ\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__2\"\n type=\"checkbox\"\n value=\"弊社からのメール\"\n />\n <label\n htmlFor=\"survey_responses__2\"\n className=\"ps-2\">\n 弊社からのメール\n </label>\n </div>\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__3\"\n type=\"checkbox\"\n value=\"弊社からの電話\"\n />\n <label\n htmlFor=\"survey_responses__3\"\n className=\"ps-2\">\n 弊社からの電話\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__4\"\n type=\"checkbox\"\n value=\"他の保育事業者から聞いて\"\n />\n <label\n htmlFor=\"survey_responses__4\"\n className=\"ps-2\">\n 他の保育事業者から聞いて\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__5\"\n type=\"checkbox\"\n value=\"養成校から聞いて\"\n />\n <label\n htmlFor=\"survey_responses__5\"\n className=\"ps-2\">\n 養成校から聞いて\n </label>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__6\"\n type=\"checkbox\"\n value=\"その他\"\n />\n <label\n htmlFor=\"survey_responses__6\"\n className=\"ps-2\">\n その他\n </label>\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n </section>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center mt-3\">\n <div className=\"me-2\">\n <Button\n variant=\"gray\"\n width={140}\n height={44}\n textFontSize={16}\n label=\"戻る\"\n onClick={(e) => {\n e.preventDefault();\n\n location.href = `/admin/corporates/${corporateId}`;\n }}\n />\n </div>\n <div className=\"ms-2\">\n <Button\n variant=\"green\"\n width={200}\n height={44}\n textFontSize={16}\n label=\"登録\"\n />\n </div>\n </div>\n </form>\n </div>\n );\n};\n\nexport default Create;\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../../utils/HttpRequest';\n\nconst P = 'ADMIN_OPTION_FACILITY_TOUR_APPLICANT_DETAIL_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCreate = (corporateId) => {\n console.log(corporateId);\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n trigger,\n } = useForm({\n mode: 'all',\n defaultValues: {\n survey_responses: [],\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n const res = await HttpRequest.post(\n `/api/admin/corporates/${corporateId}/facility_tour_applicant`,\n data,\n );\n location.href = `/admin/facility_tour_applicant_options/${res.data.id}`;\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n unmask();\n }\n },\n [mask, unmask, corporateId],\n );\n\n return {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n changeState,\n save,\n register,\n handleSubmit,\n setValue,\n watch,\n trigger,\n };\n};\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport { useAdminCorporateListModule } from '../../../modules/Admin/Corporate/listModule';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Table from '../../../components/Table/Table';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Title from '../../../components/Title';\nimport InlineSearch from '../../../components/Search/InlineSearch';\nimport {\n basicPaginate,\n cvtLegalPersonToNumber,\n paramsToObject,\n} from '../../../../utils/common';\nimport {\n LEGAL_PERSON_LABEL_MAP,\n LEGAL_PERSON_VALUE_MAP,\n} from '../../../../utils/constant';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '法人情報',\n },\n];\n\nconst List = ({\n corporates: defaultCorporates,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n}) => {\n const {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n currentPage,\n totalPages,\n // actions\n changeState,\n updateFilter,\n addTargetId,\n removeTargetId,\n downloadCorporates,\n downloadYouthEmployments,\n } = useAdminCorporateListModule();\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n updateFilter({\n name: r.name ?? '',\n corporateType: r.corporateType ?? '',\n showDeletedData: r.showDeletedData === 'true',\n });\n }, []);\n\n useEffect(() => {\n changeState({\n data: defaultCorporates,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n });\n }, []);\n\n const headerRenderer = () => {\n return (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"text-primary fw-bold\">法人一覧</h5>\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n {/*<GreenButton*/}\n {/* width={130}*/}\n {/* height={44}*/}\n {/* label=\"青少年雇用情報DL\"*/}\n {/* textFontSize={10}*/}\n {/* iconFontSize={20}*/}\n {/* leftIcon={<i className=\"bi bi-download\" />}*/}\n {/* onClick={() => {*/}\n {/* if (targetIds.length > 0) {*/}\n {/* return downloadYouthEmployments();*/}\n {/* }*/}\n {/* }}*/}\n {/* disabled={!!!targetIds.length}*/}\n {/*/>*/}\n <GreenButton\n width={130}\n height={44}\n label=\"法人情報DL\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-download\" />}\n onClick={() => {\n if (targetIds?.length > 0) {\n return downloadCorporates();\n }\n }}\n disabled={!!!targetIds.length}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"新規登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={() => (location.href = '/admin/corporates/new')}\n />\n </div>\n </div>\n );\n };\n const paperProps = {\n headerRenderer,\n };\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"法人情報\" subTitle=\"法人情報の一覧確認を行います\" />\n <div className=\"d-flex flex-row mt-4\">\n <InlineSearch\n style={{ maxWidth: '400px' }}\n label=\"検索\"\n value={filter.name}\n placeHolder=\"法人名を入力してください\"\n onChange={({ target: { value } }) => {\n updateFilter({ name: value });\n }}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n basicPaginate(1, filter);\n }\n }}\n onClick={() => basicPaginate(1, filter)}\n />\n <div className=\"ms-4\">\n <select\n className=\"form-select\"\n value={filter.corporateType}\n onChange={({ target: { value } }) => {\n updateFilter({ corporateType: value });\n return basicPaginate(1, { ...filter, corporateType: value });\n }}\n style={{ width: '150px' }}>\n <option value=\"\">法人種別</option>\n {Object.keys(LEGAL_PERSON_VALUE_MAP).map((key) => (\n <option value={cvtLegalPersonToNumber(key)} key={key}>\n {LEGAL_PERSON_LABEL_MAP[key]}\n </option>\n ))}\n </select>\n </div>\n <div className=\"ms-4 d-flex mt-2\">\n <input\n id=\"show-deleted-data\"\n type=\"checkbox\"\n checked={filter.showDeletedData}\n onChange={({ target: { value } }) => {\n updateFilter({ showDeletedData: !!!filter.showDeletedData });\n return basicPaginate(1, {\n ...filter,\n showDeletedData: !!!filter.showDeletedData,\n });\n }}\n className=\"form-check-input\"\n />\n <label htmlFor=\"show-deleted-data\" className=\"form-label m-0 ms-2\">\n 削除済み\n </label>\n </div>\n </div>\n </div>\n\n <Paper {...paperProps} className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell width={40} />\n <HeadCell width={60} label=\"法人種\" />\n <HeadCell width={200} label=\"法人名\" />\n <HeadCell width={50} label=\"郵便番号\" />\n <HeadCell width={120} label=\"所在地\" />\n <HeadCell width={70} label=\"TEL\" />\n <HeadCell width={60} label=\"登録施設数\" />\n <HeadCell width={60} label=\"更新日\" />\n </TableHead>\n <TableBody>\n {data.map((corporate) => (\n <TableRow key={corporate.id}>\n <BodyCell\n className=\"text-center p-0 m-0\"\n onClick={() =>\n targetIds.includes(corporate.id)\n ? removeTargetId(corporate.id)\n : addTargetId(corporate.id)\n }>\n <input\n className=\"form-check-input rounded-1\"\n type=\"checkbox\"\n onClick={() =>\n targetIds.includes(corporate.id)\n ? removeTargetId(corporate.id)\n : addTargetId(corporate.id)\n }\n checked={targetIds.includes(corporate.id)}\n value={corporate.id}\n />\n </BodyCell>\n <BodyCell>{corporate.legal_person}</BodyCell>\n <BodyCell>\n <a href={`corporates/${corporate.id}`}>{corporate.name}</a>\n </BodyCell>\n <BodyCell>{corporate.postal_code}</BodyCell>\n <BodyCell>{corporate.address}</BodyCell>\n <BodyCell className=\"text-center\">{corporate.tel}</BodyCell>\n <BodyCell className=\"text-center\">\n {corporate.facilities_size ?? '0'}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {corporate.updated_at}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex w-100 justify-content-center my-3\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => basicPaginate(page, filter)}\n />\n </div>\n </Paper>\n </div>\n );\n};\n\nList.propTypes = {\n corporates: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n};\n\nList.defaultProps = {\n corporates: [],\n currentPage: 1,\n totalPages: 1,\n};\n\nexport default List;\n","import React from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/Title';\nimport { useCreate } from './hooks/useCreate';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設運営法人アカウント一覧',\n href: '/admin/corporate_managers',\n },\n {\n text: '法人担当者登録',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '180px',\n fontSize: '1rem',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Create = (props) => {\n const {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n register,\n setValue,\n handleSubmit,\n watch,\n save,\n } = useCreate();\n\n return (\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"施設運営法人アカウント追加\"\n subTitle=\"施設運営法人アカウントの新規登録を行います\"\n />\n </div>\n <Paper title=\"法人担当者追加\" className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 氏名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', { required: '氏名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">{errors?.name?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n メールアドレス <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('position')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.position?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 所属\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('department')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.department?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n パスワード <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <div className=\"d-flex flex-row\">\n <div className=\"d-flex\" style={{ width: '300px' }}>\n <input\n {...register('password', {\n required: 'パスワードは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n </div>\n <div className=\"d-flex\">\n <button\n className=\"btn btn-link\"\n onClick={(e) => {\n e.preventDefault();\n setValue(\n 'password',\n uuidv4().replaceAll('-', '').substring(0, 16),\n );\n }}>\n ランダムで生成する\n </button>\n </div>\n </div>\n\n <span className=\"text-danger\">\n {errors?.password?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"d-flex justify-content-center py-3\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/corporate_managers';\n }}\n />\n <GreenButton\n width={140}\n height={40}\n label=\"紐付け法人選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n );\n};\n\nexport default Create;\n","import React, { useEffect, useState } from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport DeleteModal from '../../../components/Modal/DeleteModal';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/Title';\nimport { useDetail } from './hooks/useDetail';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設運営法人アカウント一覧',\n href: '/admin/corporate_managers',\n },\n {\n text: '法人担当者詳細',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '180px',\n fontSize: '1rem',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Detail = ({ corporateManager }) => {\n const [isShowPassword, setIsShowPassword] = useState(false);\n const {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n register,\n setValue,\n handleSubmit,\n watch,\n save,\n deleteManager,\n } = useDetail();\n\n useEffect(() => {\n setValue('name', corporateManager.name);\n setValue('email', corporateManager.user.email);\n setValue('position', corporateManager.position);\n setValue('department', corporateManager.department);\n }, []);\n const onSubmit = async (data) => {\n await save(corporateManager.id, data);\n };\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n\n return (\n <>\n <form\n onSubmit={handleSubmit(onSubmit)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"法人担当者情報詳細\"\n subTitle=\"法人担当者情報の確認を行います\"\n />\n </div>\n <Paper title=\"法人担当者詳細\" className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 氏名\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', { required: '氏名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n メールアドレス\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('position')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.position?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 所属\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('department')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.department?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n パスワード\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <div className=\"d-flex flex-row align-items-center h-100\">\n {isShowPassword ? (\n <>\n {corporateManager.user.initial_password}\n <div\n className=\"d-flex ms-2\"\n onClick={() => setIsShowPassword(false)}>\n <i className=\"bi bi-eye\" />\n </div>\n </>\n ) : (\n <>\n ********\n <div\n className=\"d-flex ms-2\"\n onClick={() => setIsShowPassword(true)}>\n <i className=\"bi bi-eye-slash\" />\n </div>\n </>\n )}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 最終ログイン\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <div className=\"d-flex flex-row\">\n {corporateManager.user.latest_logged_in_at}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 紐付いている法人\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <div className=\"d-flex flex-row\">\n {corporateManager.corporate_id}:{' '}\n {corporateManager.corporate_name}\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"d-flex justify-content-center py-3\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <BlackButton\n width={100}\n height={40}\n label=\"削除\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n />\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/corporate_managers';\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n <OrangeButton\n width={140}\n height={40}\n label=\"紐付け変更\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/admin/corporate_managers/${corporateManager.id}/select_corporate`;\n }}\n />\n </div>\n </div>\n </form>\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return deleteManager(corporateManager.id);\n }}\n />\n </>\n );\n};\n\nexport default Detail;\n","import React, { useEffect } from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Title from '../../../components/Title';\nimport {\n basicPaginate,\n cvtLegalPersonToNumber,\n paramsToObject,\n} from '../../../../utils/common';\nimport {\n LEGAL_PERSON_LABEL_MAP,\n LEGAL_PERSON_VALUE_MAP,\n} from '../../../../utils/constant';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport { useSelectCorporate } from './hooks/useSelectCorporate';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設運営法人アカウント一覧',\n href: '/admin/corporate_managers',\n },\n {\n text: '施設運営法人アカウント詳細',\n },\n {\n text: '法人紐付け',\n },\n];\nconst SelectCorporate = ({\n corporateManager,\n corporates: defaultCorporates,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n}) => {\n const {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n currentPage,\n totalPages,\n // actions\n changeState,\n updateFilter,\n addTargetId,\n removeTargetId,\n save,\n } = useSelectCorporate();\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n updateFilter({\n corporate_id: r.corporate_id ?? '',\n name: r.name ?? '',\n corporateType: r.corporateType ?? '',\n });\n }, []);\n\n useEffect(() => {\n changeState({\n data: defaultCorporates,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n });\n }, []);\n\n const paperProps = {};\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"法人紐付け\"\n subTitle=\"施設運営法人アカウントと法人の紐付けを行います\"\n />\n <div className=\"d-flex flex-row mt-4\">\n <label htmlFor=\"id-search\" className=\"d-flex align-items-center\">\n 法人ID:\n </label>\n <input\n id=\"id-search\"\n type=\"text\"\n className=\"form-control me-3\"\n style={{ width: '200px' }}\n placeholder=\"法人IDを入力してください\"\n value={filter.corporate_id}\n onChange={({ target: { value } }) => {\n const num = Number(value);\n if (!value) {\n return updateFilter({ corporate_id: '' });\n }\n if (Number.isInteger(num)) {\n return updateFilter({ corporate_id: num });\n }\n }}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n basicPaginate(1, filter);\n }\n }}\n />\n <label htmlFor=\"name-search\" className=\"d-flex align-items-center\">\n 法人名:\n </label>\n <input\n id=\"name-search\"\n type=\"text\"\n className=\"form-control\"\n style={{ width: '200px' }}\n placeholder=\"法人名を入力してください\"\n value={filter.name}\n onChange={({ target: { value } }) => {\n updateFilter({ name: value });\n }}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n basicPaginate(1, filter);\n }\n }}\n />\n <GrayButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize=\"20\"\n labelClassName=\"w-100\"\n onClick={() => basicPaginate(1, filter)}\n />\n <div className=\"ms-4\">\n <select\n className=\"form-select\"\n value={filter.corporateType}\n onChange={({ target: { value } }) => {\n updateFilter({ corporateType: value });\n return basicPaginate(1, { ...filter, corporateType: value });\n }}\n style={{ width: '150px' }}>\n <option value=\"\">法人種別</option>\n {Object.keys(LEGAL_PERSON_VALUE_MAP).map((key) => (\n <option value={cvtLegalPersonToNumber(key)} key={key}>\n {LEGAL_PERSON_LABEL_MAP[key]}\n </option>\n ))}\n </select>\n </div>\n </div>\n </div>\n\n <Paper {...paperProps} className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell width={40} />\n <HeadCell width={60} label=\"法人種\" />\n <HeadCell width={200} label=\"法人名\" />\n <HeadCell width={50} label=\"郵便番号\" />\n <HeadCell width={120} label=\"所在地\" />\n <HeadCell width={70} label=\"TEL\" />\n <HeadCell width={60} label=\"登録施設数\" />\n </TableHead>\n <TableBody>\n {data.map((corporate) => (\n <TableRow key={corporate.id}>\n <BodyCell\n className=\"text-center p-0 m-0\"\n onClick={() => {\n const current = targetIds;\n changeState({ targetIds: [] });\n current.includes(corporate.id)\n ? removeTargetId(corporate.id)\n : addTargetId(corporate.id);\n }}>\n <input\n className=\"form-check-input rounded-1\"\n type=\"checkbox\"\n onClick={() => {\n const current = targetIds;\n changeState({ targetIds: [] });\n current.includes(corporate.id)\n ? removeTargetId(corporate.id)\n : addTargetId(corporate.id);\n }}\n checked={targetIds.includes(corporate.id)}\n value={corporate.id}\n />\n </BodyCell>\n <BodyCell>{corporate.legal_person}</BodyCell>\n <BodyCell>\n {corporate.id}: {corporate.name}\n </BodyCell>\n <BodyCell>{corporate.postal_code}</BodyCell>\n <BodyCell>{corporate.address}</BodyCell>\n <BodyCell className=\"text-center\">{corporate.tel}</BodyCell>\n <BodyCell className=\"text-center\">\n {corporate.facilities_size ?? '0'}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex w-100 justify-content-center my-3\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => basicPaginate(page, filter)}\n />\n </div>\n </Paper>\n\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={50}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/corporate_managers';\n }}\n />\n <GreenButton\n width={120}\n height={50}\n label=\"選択法人を紐付ける\"\n textFontSize={16}\n labelClassName=\"w-100\"\n disabled={targetIds.length !== 1}\n onClick={() => save(corporateManager.id, targetIds[0])}\n />\n </div>\n </div>\n );\n};\n\nexport default SelectCorporate;\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'ADMIN_CORPORATE_MANAGER_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return {\n ...state,\n ...payload,\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCreate = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n });\n const save = useCallback(async (data) => {\n mask();\n changeState({ errorMessage: '' });\n try {\n const { data: respData } = await HttpRequest.post(\n '/api/admin/corporate_managers',\n data,\n );\n location.href = `/admin/corporate_managers/${respData.id}/select_corporate`;\n } catch (e) {\n if (e?.response?.status === 400) {\n changeState({\n errorMessage: e?.response?.data?.error,\n });\n } else {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n }\n } finally {\n unmask();\n }\n });\n\n return {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n save,\n register,\n setValue,\n handleSubmit,\n watch,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'ADMIN_CORPORATE_MANAGER_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return {\n ...state,\n ...payload,\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useDetail = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n });\n const save = useCallback(async (id, data) => {\n mask();\n changeState({ errorMessage: '' });\n try {\n const { data: respData } = await HttpRequest.put(\n `/api/admin/corporate_managers/${id}`,\n data,\n );\n location.href = `/admin/corporate_managers/${respData.id}`;\n } catch (e) {\n if (e?.response?.status === 400) {\n changeState({\n errorMessage: e?.response?.data?.error,\n });\n } else {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n }\n } finally {\n unmask();\n }\n });\n\n const deleteManager = useCallback(\n async (id) => {\n changeState({ errorMessage: '' });\n mask();\n try {\n await HttpRequest.delete(`/api/admin/corporate_managers/${id}`);\n location.href = '/admin/corporate_managers';\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n save,\n register,\n setValue,\n handleSubmit,\n watch,\n deleteManager,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\n\nconst P = 'ADMIN_MANAGE_CORPORATE_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n filter: {\n corporate_id: '',\n name: '',\n },\n data: [],\n targetIds: [],\n isLoading: false,\n currentPage: 1,\n totalPages: 1,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSelectCorporate = () => {\n const [\n { filter, targetIds, isLoading, data, currentPage, totalPages },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const updateFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const save = useCallback(async (id, corporateId) => {\n mask();\n try {\n await HttpRequest.patch(\n `/api/admin/corporate_managers/${id}/select_corporate`,\n {\n corporate_id: corporateId,\n },\n );\n location.href = '/admin/corporate_managers';\n } catch (e) {\n console.error(e);\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n }, []);\n\n return {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n currentPage,\n totalPages,\n // actions\n changeState,\n updateFilter,\n addTargetId,\n removeTargetId,\n save,\n };\n};\n","import ja from 'date-fns/locale/ja';\nimport React, { useEffect, useState } from 'react';\nimport DatePicker, { registerLocale } from 'react-datepicker';\nimport { Controller } from 'react-hook-form';\n\nimport 'react-datepicker/dist/react-datepicker.css';\nimport { fetchCities } from '../../../../api/common';\nimport {\n FACILITY_AUTHORIZATIONS,\n FACILITY_OPERATOR,\n FACILITY_EN_TYPES,\n FACILITY_FACILITY_TYPES,\n} from '../../../../utils/constant';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/Title';\nimport { useAdminFacilityCreateModule } from '../../../modules/Admin/Facility/createModule';\nimport { urlReg } from '../../../../utils/common';\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設一覧',\n href: '/admin/facilities',\n },\n {\n text: '施設登録',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '140px',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Create = () => {\n const {\n // store\n isLoading,\n errors,\n // actions\n control,\n register,\n handleSubmit,\n watch,\n setValue,\n save,\n saveDraft,\n } = useAdminFacilityCreateModule();\n\n const [attachedTopImage, setAttachedTopImage] = useState(null);\n const [cities, setCities] = useState([]);\n\n useEffect(() => {\n if (watch('pref_code')) {\n return fetchCities(watch('pref_code')).then((cities) =>\n setCities(cities),\n );\n } else {\n setCities([]);\n }\n }, [watch('pref_code')]);\n\n useEffect(() => {\n if (watch('city_code') && cities?.length > 0) {\n const foundCity =\n cities.find(\n (city) =>\n city.id.toString() ===\n watch('city_code').toString().padStart(5, '0'),\n )?.name ?? null;\n setValue('city', foundCity);\n } else {\n setValue('city', null);\n }\n }, [watch('city_code'), cities]);\n\n return (\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"新規施設登録\" subTitle=\"施設情報の新規登録を行います\" />\n </div>\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', { required: '施設名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">{errors?.name?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設種別 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('facility_type', {\n required: '施設種別は必須です',\n })}\n className=\"form-select\">\n <optgroup label=\"▼幼保系---------------\">\n {FACILITY_EN_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n <optgroup label=\"▼施設系---------------\">\n {FACILITY_FACILITY_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n </select>\n <span className=\"text-danger\">\n {errors?.facility_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設種別備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('facility_type_remark')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 運営者区分 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('operator', {\n required: '運営者区分は必須です',\n })}\n className=\"form-select\">\n {FACILITY_OPERATOR.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.operator?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 許認可 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('authorization', {\n required: '許認可は必須です',\n })}\n className=\"form-select\">\n {FACILITY_AUTHORIZATIONS.map((authorization) => (\n <option key={authorization} value={authorization}>\n {authorization}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.authorization?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 開園日\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <DatePicker\n {...register('opening_date')}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('opening_date') ?? ''}\n onChange={(date) => {\n setValue('opening_date', date);\n }}\n />\n <span className=\"text-danger\">\n {errors?.opening_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設代表者\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('representative_name')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 代表者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('representative_job_title')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <Controller\n control={control}\n name=\"postal_code\"\n render={({ field: { onChange } }) => (\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"tel\"\n className=\"form-control\"\n id=\"postal_code\"\n placeholder=\"0123456\"\n maxLength={8}\n value={watch('postal_code') ?? ''}\n onChange={({ target: { value } }) => {\n const num = Number(value.replace('-', ''));\n // 入力桁数は8桁までで、ハイフンを含む数字を許容\n if (Number.isInteger(num)) {\n onChange(value);\n }\n }}\n />\n )}\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 都道府県 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n setValue('city_code', '');\n }}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.pref_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 市区町村 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <CitySelect\n register={register('city_code', {\n required: '市区町村は必須です',\n })}\n selectedValue={watch('city_code')}\n prefecture={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('city_code', value);\n setValue(\n 'city',\n cities.find(\n (city) => city.id.toString() === value?.toString(),\n )?.name ?? null,\n );\n }}\n defaultCities={[]}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.city_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 丁番以下住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('other_address', {\n required: '丁番以下住所は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 建物名など\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('other_address2')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n TEL <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('tel', {\n required: 'TELは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">{errors?.tel?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 公式HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('site_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.site_url?.type === 'validate' &&\n '公式HPの形式が正しくありません'}\n {errors?.site_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n その他HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('other_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_url?.type === 'validate' &&\n '公式HPの形式が正しくありません'}\n {errors?.other_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 定員\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('children_count_limit')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 在園児\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('children_count')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 学級数\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('facility_class_grade_number')}\n type=\"number\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 園の紹介\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <textarea\n {...register('feature')}\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n トップ写真\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <div className=\"d-flex flex-column\">\n <div>\n <input\n {...register('top_image')}\n type=\"file\"\n className=\"form-control\"\n accept=\"image/*\"\n onChange={(e) => {\n const f = e.target.files;\n if (f.length === 0) {\n return setAttachedTopImage(null);\n }\n const blobUrl = window.URL.createObjectURL(f[0]);\n return setAttachedTopImage(blobUrl);\n }}\n />\n </div>\n <div className=\"mt-3\">\n <img\n src={\n attachedTopImage ? attachedTopImage : '/noimage.jpg'\n }\n height={150}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/facilities';\n }}\n />\n <OrangeButton\n width={100}\n height={40}\n label=\"下書き保存\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return saveDraft(watch());\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"公開\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n );\n};\n\nexport default Create;\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Controller } from 'react-hook-form';\nimport ja from 'date-fns/locale/ja';\nimport DatePicker, { registerLocale } from 'react-datepicker';\n\nimport 'react-datepicker/dist/react-datepicker.css';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport {\n FACILITY_AUTHORIZATIONS,\n FACILITY_OPERATOR,\n FACILITY_STATUS,\n FACILITY_EN_TYPES,\n FACILITY_FACILITY_TYPES,\n} from '../../../../utils/constant';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Title from '../../../components/Title';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport DeleteModal from '../../../components/Modal/DeleteModal';\nimport { useAdminFacilityDetailModule } from '../../../modules/Admin/Facility/detailModule';\nimport { fetchCities } from '../../../../api/common';\nimport { urlReg } from '../../../../utils/common';\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設一覧',\n href: '/admin/facilities',\n },\n {\n text: '施設詳細',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '140px',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Detail = ({ facility: defaultFacility }) => {\n const [topImageDeleteFacilityId, setTopImageDeleteFacilityId] = useState();\n const [cities, setCities] = useState([]);\n\n const {\n // store\n facility,\n isLoading,\n errors,\n // actions\n control,\n initializeFacility,\n register,\n handleSubmit,\n watch,\n setValue,\n save,\n onDelete,\n trigger,\n deleteFacilityTopImage,\n } = useAdminFacilityDetailModule();\n\n useEffect(() => {\n initializeFacility(defaultFacility);\n }, []);\n\n useEffect(() => {\n if (defaultFacility?.pref_code) {\n return fetchCities(defaultFacility?.pref_code).then((cities) =>\n setCities(cities),\n );\n }\n }, []);\n\n useEffect(() => {\n if (watch('city_code') && cities?.length > 0) {\n const foundCity =\n cities.find(\n (city) =>\n city.id.toString() ===\n watch('city_code').toString().padStart(5, '0'),\n )?.name ?? null;\n setValue('city', foundCity);\n } else {\n setValue('city', null);\n }\n }, [watch('city_code'), cities]);\n\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n\n const [attachedTopImage, setAttachedTopImage] = useState(null);\n\n return (\n <>\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"施設情報詳細\"\n subTitle=\"施設情報の詳細確認を行います\"\n />\n <div className=\"d-flex w-100 justify-content-end\">\n <span className=\"me-3\">施設ID:{defaultFacility.id}</span>\n <span className=\"\">更新日:{defaultFacility.updated_at}</span>\n </div>\n\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', {\n required: '施設名は必須です',\n validate: (input) => input !== '名称未設定',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.name?.type === 'validate' &&\n 'その名前は使用できません'}\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設種別 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('facility_type', {\n required: '施設種別は必須です',\n })}\n className=\"form-select\">\n <optgroup label=\"▼幼保系---------------\">\n {FACILITY_EN_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n <optgroup label=\"▼施設系---------------\">\n {FACILITY_FACILITY_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n </select>\n <span className=\"text-danger\">\n {errors?.facility_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設種別備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('facility_type_remark')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 運営者区分 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('operator', {\n required: '運営者区分は必須です',\n })}\n className=\"form-select\">\n {FACILITY_OPERATOR.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.operator?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 許認可 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('authorization', {\n required: '許認可は必須です',\n })}\n className=\"form-select\">\n {FACILITY_AUTHORIZATIONS.map((authorization) => (\n <option key={authorization} value={authorization}>\n {authorization}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.authorization?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 開園日\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <DatePicker\n {...register('opening_date')}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('opening_date') ?? ''}\n onChange={(date) => {\n setValue('opening_date', date);\n }}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 施設代表者\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('representative_name')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 代表者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('representative_job_title')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <Controller\n control={control}\n name=\"postal_code\"\n render={({ field: { onChange } }) => (\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"tel\"\n className=\"form-control\"\n id=\"postal_code\"\n placeholder=\"0123456\"\n maxLength={8}\n value={watch('postal_code') ?? ''}\n onChange={({ target: { value } }) => {\n const num = Number(value.replace('-', ''));\n // 入力桁数は8桁までで、ハイフンを含む数字を許容\n if (Number.isInteger(num)) {\n onChange(value);\n }\n }}\n />\n )}\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 都道府県 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n setValue('city_code', '');\n }}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.pref_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 市区町村 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <CitySelect\n register={register('city_code', {\n required: '市区町村は必須です',\n })}\n selectedValue={watch('city_code')?.toString()}\n prefecture={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('city_code', value);\n setValue(\n 'city',\n cities.find(\n (city) =>\n city.id.toString() === value?.toString(),\n )?.name ?? null,\n );\n }}\n defaultCities={cities}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.city_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 丁番以下住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('other_address', {\n required: '丁番以下住所は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 建物名など\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('other_address2')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n TEL <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('tel', {\n required: 'TELは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 公式HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('site_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.site_url?.type === 'validate' &&\n '公式HPの形式が正しくありません'}\n {errors?.site_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n その他HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('other_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_url?.type === 'validate' &&\n 'その他HPの形式が正しくありません'}\n {errors?.other_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 定員\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('children_count_limit')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 在園児\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('children_count')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 学級数\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('facility_class_grade_number')}\n type=\"number\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 園の紹介\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <textarea\n {...register('feature')}\n cols=\"30\"\n rows=\"10\"\n className=\"form-control\"\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n setValue('feature', `${watch('feature')}\\n`);\n }\n }}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n トップ写真\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <div className=\"d-flex flex-column\">\n <div>\n <input\n {...register('top_image')}\n type=\"file\"\n className=\"form-control\"\n accept=\"image/*\"\n onChange={(e) => {\n const f = e.target.files;\n if (f.length === 0) {\n return setAttachedTopImage(null);\n }\n const blobUrl = window.URL.createObjectURL(\n f[0],\n );\n return setAttachedTopImage(blobUrl);\n }}\n />\n </div>\n <div className=\"mt-3\">\n {attachedTopImage ? (\n <img src={attachedTopImage} height={150} />\n ) : (\n <img\n src={\n facility.top_image_file_path || '/noimage.jpg'\n }\n height={150}\n />\n )}\n </div>\n {facility.origin_top_image_file_path && (\n <div className=\"mt-3\">\n <GrayButton\n onClick={(e) => {\n e.preventDefault();\n setTopImageDeleteFacilityId(facility.id);\n }}\n width={90}\n height={30}\n label=\"画像削除\"\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n </div>\n )}\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n </div>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n 運営施設:\n <a\n href={`/admin/corporates/${defaultFacility.corporate_id}`}\n target=\"_blank\"\n rel=\"nofollow noopener\">\n {defaultFacility.corporate_name}\n </a>\n </div>\n <div className=\"d-flex justify-content-center pb-5\">\n <BlackButton\n width={100}\n height={40}\n label=\"削除\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n />\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/facilities';\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n if (facility.status === FACILITY_STATUS.DRAFT) {\n e.preventDefault();\n return save(watch());\n }\n }}\n />\n {facility.status === FACILITY_STATUS.DRAFT && (\n <OrangeButton\n width={100}\n height={40}\n label=\"公開\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save({\n ...watch(),\n status: FACILITY_STATUS.PUBLISHED,\n });\n }\n }}\n />\n )}\n </div>\n </div>\n </form>\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return onDelete(facility.id);\n }}\n />\n <DeleteModal\n isShow={!!topImageDeleteFacilityId}\n onHide={() => setTopImageDeleteFacilityId(null)}\n onDelete={() => deleteFacilityTopImage(topImageDeleteFacilityId)}\n okLabel=\"はい\"\n cancelLabel=\"いいえ\"\n message=\"削除しますか?\"\n />\n </>\n );\n};\n\nDetail.propTypes = {\n facility: PropTypes.object.isRequired,\n};\n\nexport default Detail;\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { toast } from 'react-toastify';\n\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Paper from '../../../components/Paper/Paper';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport InlineSearch from '../../../components/Search/InlineSearch';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport FacilitySearchModal from '../../../components/Modal/FacilitySearchModal';\nimport { paramsToObject } from '../../../../utils/common';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport FacilityList from '../../../components/School/FacilityList';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { v4 as uuidv4 } from 'uuid';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設一覧',\n },\n];\n\nconst List = ({ facilities, currentPage, totalPages }) => {\n const [isLoading, setIsLoading] = useState(false);\n const multipleFileUploadRef = useRef();\n\n const p = location.search;\n const r = paramsToObject(p);\n\n const [filter, setFilter] = useState({\n page: currentPage,\n name: r.name || '',\n pref_code: r.pref_code ? Number(r.pref_code) : null,\n city_code: r.city_code ? r.city_code : null,\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n eventSubmitted: r.eventSubmitted === 'true',\n hasComment: r.hasComment === 'true',\n ho: r.ho ? r.ho === 'true' : true,\n yo: r.yo ? r.yo === 'true' : true,\n ko: r.ko ? r.ko === 'true' : true,\n ko_ho: r.ko_ho ? r.ko_ho === 'true' : true,\n ko_yo: r.ko_yo ? r.ko_yo === 'true' : true,\n ko_yoho: r.ko_yoho ? r.ko_yoho === 'true' : true,\n ko_sairyo: r.ko_sairyo ? r.ko_sairyo === 'true' : true,\n shokibo: r.shokibo ? r.shokibo === 'true' : true,\n shokibo_a: r.shokibo_a ? r.shokibo_a === 'true' : true,\n shokibo_b: r.shokibo_b ? r.shokibo_b === 'true' : true,\n shokibo_c: r.shokibo_c ? r.shokibo_c === 'true' : true,\n jigyosho: r.jigyosho ? r.jigyosho === 'true' : true,\n jigyosho_a: r.jigyosho_a ? r.jigyosho_a === 'true' : true,\n jigyosho_b: r.jigyosho_b ? r.jigyosho_b === 'true' : true,\n jigyosho_20over: r.jigyosho_20over ? r.jigyosho_20over === 'true' : true,\n kigyo_ho: r.kigyo_ho ? r.kigyo_ho === 'true' : true,\n other_type: r.other_type ? r.other_type === 'true' : true,\n jidokan: r.jidokan ? r.jidokan === 'true' : true,\n after_school_club: r.after_school_club\n ? r.after_school_club === 'true'\n : true,\n after_school_day_service: r.after_school_day_service\n ? r.after_school_day_service === 'true'\n : true,\n infant_home: r.infant_home ? r.infant_home === 'true' : true,\n child_home: r.child_home ? r.child_home === 'true' : true,\n shogai_child_facility_welfare_type: r.shogai_child_facility_welfare_type\n ? r.shogai_child_facility_welfare_type === 'true'\n : true,\n shogai_child_facility_medical_type: r.shogai_child_facility_medical_type\n ? r.shogai_child_facility_medical_type === 'true'\n : true,\n child_facility_welfare_type: r.child_facility_welfare_type\n ? r.child_facility_welfare_type === 'true'\n : true,\n child_facility_medical_type: r.child_facility_medical_type\n ? r.child_facility_medical_type === 'true'\n : true,\n child_psychotherapeutic_facility: r.child_psychotherapeutic_facility\n ? r.child_psychotherapeutic_facility === 'true'\n : true,\n child_independence_facility: r.child_independence_facility\n ? r.child_independence_facility === 'true'\n : true,\n child_family_support_facility: r.child_family_support_facility\n ? r.child_family_support_facility === 'true'\n : true,\n midwifery_facility: r.midwifery_facility\n ? r.midwifery_facility === 'true'\n : true,\n disability_support_facility: r.disability_support_facility\n ? r.disability_support_facility === 'true'\n : true,\n employment_support_facility: r.employment_support_facility\n ? r.employment_support_facility === 'true'\n : true,\n not_en: r.not_en ? r.not_en === 'true' : true,\n });\n\n const [cities, setCities] = useState([]);\n const [isSearchDialogOpen, setIsSearchDialogOpen] = useState(false);\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n const fetchCities = async (pref_code) => {\n return await HttpRequest.get(\n `/api/search/cities?prefecture=${pref_code}`,\n ).then(({ data }) => {\n setCities(data.cities);\n });\n };\n\n const uploadFacilityTopImage = useCallback(async (id, file) => {\n if (!file) {\n return;\n }\n setIsLoading(true);\n try {\n const formData = new FormData();\n formData.append(\n 'name',\n `${id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'facilities');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n await HttpRequest.patch(`/api/admin/facilities/${id}/top_image_upload`, {\n file_path,\n });\n location.href = location.href;\n } catch (e) {\n toast.error('エラーが発生しました');\n setIsLoading(false);\n }\n }, []);\n\n const deleteFacilityTopImage = useCallback(async (facilityId) => {\n setIsLoading(true);\n try {\n await HttpRequest.delete(`/api/admin/facilities/${facilityId}/top_image`);\n location.href = location.href;\n } catch (e) {\n toast.error('エラーが発生しました');\n setIsLoading(false);\n }\n }, []);\n\n useEffect(() => {\n if (filter?.pref_code) {\n return fetchCities(filter?.pref_code);\n }\n }, [filter?.pref_code]);\n\n const uploadMultipleUpsertCsv = useCallback(async (file) => {\n if (!file) return;\n setIsLoading(true);\n try {\n const formData = new FormData();\n formData.append('file', file);\n await HttpRequest.put('/api/admin/facilities/multiple_upsert', formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n location.reload();\n } catch (e) {\n console.error(e);\n toast.error('エラーが発生しました');\n setIsLoading(false);\n }\n }, []);\n\n const modalUsed = Object.entries(filter)\n .filter((keys) => keys[0] !== 'page' && keys[1] !== 'name')\n .map((keys) => keys[1])\n .some((key) => !!key);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-row justify-content-start mt-5\">\n <div className=\"d-flex flex-column justify-content-start\">\n <h4 className=\"text-primary fw-bold\">施設情報</h4>\n <span style={{ fontStyle: '14px' }}>\n 施設情報の一覧確認を行います\n </span>\n </div>\n </div>\n <div className=\"d-flex flex-row mt-4\">\n <InlineSearch\n style={{ maxWidth: '400px' }}\n label=\"検索\"\n onChange={({ target: { value } }) =>\n setFilter({ ...filter, name: value })\n }\n placeHolder=\"法人名を入力してください\"\n onClick={() => paginate(1)}\n value={filter.name}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n paginate(1);\n }\n }}\n />\n {modalUsed ? (\n <GreenButton\n width={130}\n height={38}\n label=\"絞り込み項目有\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => setIsSearchDialogOpen(true)}\n />\n ) : (\n <GrayButton\n width={130}\n height={38}\n label=\"項目で絞り込む\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => setIsSearchDialogOpen(true)}\n />\n )}\n </div>\n\n <div className=\"d-flex w-100\">\n <Paper\n className=\"w-100\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"text-primary fw-bold\">施設一覧</h5>\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <>\n <input\n type=\"file\"\n name=\"top_image_file\"\n onChange={(e) => {\n return uploadMultipleUpsertCsv(e.target.files[0]);\n }}\n style={{\n display: 'none',\n }}\n accept=\"text/csv\"\n ref={multipleFileUploadRef}\n />\n <GreenButton\n width={170}\n height={44}\n label=\"一括登録・更新\"\n textFontSize={16}\n iconFontSize={16}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={(e) => {\n e.preventDefault();\n multipleFileUploadRef.current.click();\n }}\n />\n </>\n <GreenButton\n width={150}\n height={44}\n label=\"新規登録\"\n textFontSize={20}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={() => (location.href = '/admin/facilities/new')}\n />\n </div>\n </div>\n )}>\n <FacilityList\n data={facilities}\n nameRenderer={(facility) => {\n return (\n <>\n <a href={`/admin/facilities/${facility.id}`} target=\"_blank\">\n {facility.name}\n </a>\n </>\n );\n }}\n hideCheck\n showStatus\n showRecruitmentRegisteredAt={false}\n hideUpdatedAt={false}\n showTopImageFile\n canUploadTopImage\n uploadTopImage={async (id, file) => {\n await uploadFacilityTopImage(id, file);\n }}\n deleteTopImage={async (facilityId) => {\n await deleteFacilityTopImage(facilityId);\n }}\n />\n <div className=\"d-flex w-100 justify-content-center mb-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </Paper>\n <FacilitySearchModal\n isShow={isSearchDialogOpen}\n onOk={(value) => {\n setFilter({ ...filter, ...value });\n setIsSearchDialogOpen(false);\n paginate(1);\n }}\n onClose={() => setIsSearchDialogOpen(false)}\n filter={filter}\n changeFilter={(value) => {\n setFilter({ ...filter, ...value });\n }}\n defaultCities={cities}\n />\n </div>\n </div>\n );\n};\n\nList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n};\n\nList.defaultProps = {\n facilities: [],\n currentPage: 1,\n pages: 1,\n};\n\nexport default List;\n","import Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Button from '../../../components/Buttons/Button';\nimport React from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport styled from 'styled-components';\n\nconst SectionHeader = styled.div`\n background: #9ddaff;\n font-size: 14px;\n`;\n\nconst tableLeftCellStyle = {\n background: '#E1EBF5',\n width: '300px',\n fontSize: '14px',\n};\n\nconst textStyle = {\n color: '#6B6B6B',\n};\n\nconst addressLabelStyle = {\n minWidth: '200px',\n};\n\nconst labelNoticeStyle = {\n fontSize: '11px',\n};\n\nconst Detail = ({ corporate_option_plan }) => {\n const breadcrumbs = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設見学管理',\n href: '/admin/facility_tour_applicant_options',\n },\n {\n text: '詳細',\n },\n ];\n\n const isConfirm = true;\n\n return (\n <div className=\"container mb-5\" style={textStyle}>\n <div className=\"my-2\">\n <AdminBreadcrumbs items={breadcrumbs} />\n </div>\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3\">\n <section>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center\"\n style={textStyle}>\n オプション機能\n </div>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center my-3\">\n <input\n type=\"checkbox\"\n checked\n id=\"option-plan\"\n className=\"form-check-input mt-0\"\n disabled={isConfirm}\n />\n <label htmlFor=\"option-plan\" className=\"ps-2 fw-bold\">\n 見学申込機能\n </label>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n <section>\n <div\n className=\"fw-bold mb-1\"\n style={{ fontSize: '20px', ...textStyle }}>\n ご請求情報の登録\n </div>\n <section>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n 請求書の送付方法を選択して下さい\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>請求の送付方法</div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <div className=\"me-3 d-flex align-items-center\">\n <input\n type=\"radio\"\n id=\"sending_method__email\"\n name=\"sending_method\"\n disabled={isConfirm}\n value=\"email\"\n checked={\n corporate_option_plan?.sending_method ===\n 'email'\n }\n />\n <label\n htmlFor=\"sending_method__email\"\n className=\"ps-2\">\n Eメール\n </label>\n </div>\n <div className=\"me-3 d-flex align-items-center\">\n <input\n type=\"radio\"\n id=\"sending_method__shipping\"\n name=\"sending_method\"\n disabled={isConfirm}\n value=\"shipping\"\n checked={\n corporate_option_plan?.sending_method ===\n 'shipping'\n }\n />\n <label\n htmlFor=\"sending_method__shipping\"\n className=\"ps-2\">\n 郵送\n </label>\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n <section>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n 請求書の送付先\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>法人名</div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.corporate_name}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>請求書送付先住所</div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2 d-flex flex-column\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>郵便番号</div>\n <input\n type=\"tel\"\n className=\"form-control\"\n style={{ width: '80px' }}\n disabled={isConfirm}\n value={corporate_option_plan?.postal_code1}\n />\n <div\n style={{ width: '30px' }}\n className=\"d-flex justify-content-center\">\n -\n </div>\n <input\n type=\"text\"\n className=\"form-control\"\n style={{ width: '90px' }}\n disabled={isConfirm}\n value={corporate_option_plan?.postal_code2}\n />\n </div>\n </div>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>都道府県</div>\n <div style={{ width: '200px' }}>\n <input\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.prefecture}\n />\n </div>\n </div>\n </div>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>\n 住所(100文字まで)\n </div>\n <input\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.address}\n />\n </div>\n </div>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>\n TEL(ハイフンあり)\n </div>\n <input\n type=\"tel\"\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled={isConfirm}\n value={corporate_option_plan?.tel}\n />\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>部署名</div>\n <div style={labelNoticeStyle}>(50文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.contact_department}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様役職</div>\n <div style={labelNoticeStyle}>(50文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.contact_position}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様氏名</div>\n <div style={labelNoticeStyle}>(30文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.contact_name}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様氏名(カナ)</div>\n <div style={labelNoticeStyle}>(60文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.contact_name_kana}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス1</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"email\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.contact_email1}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス2</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"email\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.contact_email2}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス3</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"email\"\n className=\"form-control\"\n disabled={isConfirm}\n value={corporate_option_plan?.contact_email3}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>アンケート</div>\n <div>\n 「オプション機能を\n <br />\n 知ったきっかけ」\n </div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__1\"\n type=\"checkbox\"\n value=\"ENMAPホームページ\"\n disabled={isConfirm}\n checked={corporate_option_plan?.survey_responses?.includes(\n 'ENMAPホームページ',\n )}\n />\n <label\n htmlFor=\"survey_responses__1\"\n className=\"ps-2\">\n ENMAPホームページ\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__2\"\n type=\"checkbox\"\n value=\"弊社からのメール\"\n disabled={isConfirm}\n checked={corporate_option_plan?.survey_responses?.includes(\n '弊社からのメール',\n )}\n />\n <label\n htmlFor=\"survey_responses__2\"\n className=\"ps-2\">\n 弊社からのメール\n </label>\n </div>\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__3\"\n type=\"checkbox\"\n value=\"弊社からの電話\"\n disabled={isConfirm}\n checked={corporate_option_plan?.survey_responses?.includes(\n '弊社からの電話',\n )}\n />\n <label\n htmlFor=\"survey_responses__3\"\n className=\"ps-2\">\n 弊社からの電話\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__4\"\n type=\"checkbox\"\n value=\"他の保育事業者から聞いて\"\n disabled={isConfirm}\n checked={corporate_option_plan?.survey_responses?.includes(\n '他の保育事業者から聞いて',\n )}\n />\n <label\n htmlFor=\"survey_responses__4\"\n className=\"ps-2\">\n 他の保育事業者から聞いて\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__5\"\n type=\"checkbox\"\n value=\"養成校から聞いて\"\n disabled={isConfirm}\n checked={corporate_option_plan?.survey_responses?.includes(\n '養成校から聞いて',\n )}\n />\n <label\n htmlFor=\"survey_responses__5\"\n className=\"ps-2\">\n 養成校から聞いて\n </label>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__6\"\n type=\"checkbox\"\n value=\"その他\"\n disabled={isConfirm}\n checked={corporate_option_plan?.survey_responses?.includes(\n 'その他',\n )}\n />\n <label\n htmlFor=\"survey_responses__6\"\n className=\"ps-2\">\n その他\n </label>\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n </section>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center mt-3\">\n <Button\n variant=\"gray\"\n width={140}\n height={44}\n textFontSize={16}\n label=\"戻る\"\n onClick={(e) => {\n e.preventDefault();\n\n if (isConfirm) {\n location.href = '/admin/facility_tour_applicant_options';\n return;\n }\n\n location.href = '/my_corporate/options';\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default Detail;\n","import React, { useEffect } from 'react';\nimport { useList } from './useList';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport AdminBreadcrumbs from '../../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport Paper from '../../../../components/Paper/Paper';\nimport FacilityList from '../../../../components/School/FacilityList';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\n\nconst List = ({ corporateId, corporateName, facilities, defaultTargetIds }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設見学管理',\n href: `/admin/facility_tour_applicant_options/${corporateId}`,\n },\n {\n text: '施設選択',\n },\n ];\n const {\n isLoading,\n targetIds,\n addTargetId,\n removeTargetId,\n addAllTargetIds,\n removeAllTargets,\n changeState,\n save,\n } = useList();\n useEffect(() => {\n changeState({ data: facilities, targetIds: defaultTargetIds });\n }, []);\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <AdminBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"紐付け施設選択\"\n subTitle=\"施設見学申込を紐付ける施設を選択します\"\n />\n </div>\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n 法人ID:{corporateId}\n <br />\n 法人名:{corporateName}\n </div>\n </div>\n )}>\n <FacilityList\n data={facilities}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargetIds}\n showRecruitmentRegisteredAt={false}\n disableRecruitmentLink\n hideLink\n />\n <div className=\"d-flex justify-content-center py-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/admin/facility_tour_applicant_options`;\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"配信学校選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return save(corporateId, targetIds);\n }}\n disabled={targetIds?.length === 0}\n />\n </div>\n </Paper>\n </div>\n );\n};\nexport default List;\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'FACILITY_TOUR_APPLICANT_OPTION_FACILITY_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n targetIds: [],\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useList = () => {\n const [{ isLoading, data, targetIds, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n const addAllTargetIds = useCallback(() => {\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((_) => _.id),\n },\n });\n }, [data]);\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [],\n );\n\n const save = useCallback(async (corporateId, ids = []) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/admin/facility_tour_applicant_options/${corporateId}/facilities`,\n {\n facility_ids: ids,\n },\n );\n location.href = `/admin/facility_tour_applicant_options/${corporateId}/schools`;\n } catch (e) {\n unmask();\n }\n }, []);\n\n return {\n isLoading,\n targetIds,\n data,\n addTargetId,\n removeTargetId,\n addAllTargetIds,\n removeAllTargets,\n changeState,\n save,\n };\n};\n","import React, { useEffect } from 'react';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport AdminBreadcrumbs from '../../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport { useList } from './useList';\nimport SchoolList from '../../../../components/Corporate/SchoolList';\nimport Paper from '../../../../components/Paper/Paper';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\n\nconst List = ({ corporateId, corporateName, schools, defaultTargetIds }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '施設見学管理',\n href: `/admin/facility_tour_applicant_options/${corporateId}`,\n },\n {\n text: '配信学校選択',\n },\n ];\n const {\n isLoading,\n targetIds,\n addTargetId,\n removeTargetId,\n addAllTargetIds,\n removeAllTargets,\n changeState,\n save,\n } = useList();\n useEffect(() => {\n changeState({ data: schools, targetIds: defaultTargetIds });\n }, []);\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <AdminBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"配信学校選択\"\n subTitle=\"施設見学申込を配信する学校を選択します\"\n />\n </div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n 法人ID:{corporateId}\n <br />\n 法人名:{corporateName}\n </div>\n </div>\n )}>\n <SchoolList\n data={schools}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargetIds}\n showPlan\n showDisplayFlag\n />\n\n <div className=\"d-flex justify-content-center py-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/admin/facility_tour_applicant_options`;\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"配信学校選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return save(corporateId, targetIds);\n }}\n disabled={targetIds?.length === 0}\n />\n </div>\n </Paper>\n </div>\n );\n};\n\nexport default List;\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'FACILITY_TOUR_APPLICANT_OPTION_SCHOOL_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n targetIds: [],\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\nexport const useList = () => {\n const [{ isLoading, data, targetIds, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n const addAllTargetIds = useCallback(() => {\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((_) => _.id),\n },\n });\n }, [data]);\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [],\n );\n\n const save = useCallback(async (corporateId, ids = []) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/admin/facility_tour_applicant_options/${corporateId}/schools`,\n {\n school_ids: ids,\n },\n );\n location.href = `/admin/facility_tour_applicant_options`;\n } catch (e) {\n unmask();\n }\n }, []);\n\n return {\n isLoading,\n targetIds,\n data,\n addTargetId,\n removeTargetId,\n addAllTargetIds,\n removeAllTargets,\n changeState,\n save,\n };\n};\n","import React, { useCallback, useMemo } from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Title from '../../../components/Title';\nimport Paper from '../../../components/Paper/Paper';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport { useCreate } from './hooks/useCreate';\nimport {\n MANUAL_CATEGORY,\n MANUAL_DISPLAY_TARGET,\n} from '../../../../utils/constant';\nimport { numberReg } from '../../../../utils/common';\n\nconst breadcrumbs = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: 'マニュアル',\n href: '/admin/manuals',\n },\n {\n text: 'マニュアル登録',\n },\n];\n\nconst Create = () => {\n const {\n isLoading,\n\n register,\n setValue,\n errors,\n handleSubmit,\n watch,\n uploadFile,\n saveWithPublish,\n } = useCreate();\n\n const filteredManualCategory = useMemo(() => {\n if (watch('display_target') === 'facility') {\n return MANUAL_CATEGORY.filter((_) => _.target === 'facility');\n }\n\n return MANUAL_CATEGORY.filter((_) => _.target === 'school');\n }, [watch('display_target')]);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={breadcrumbs} />\n </div>\n <form\n onSubmit={handleSubmit(saveWithPublish)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"マニュアル\" subTitle=\"マニュアルの登録を行います\" />\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n タイトル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('title', {\n required: 'タイトルは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.title?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n 公開先 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <select\n {...register('display_target', {\n required: '公開先は必須です',\n })}\n className=\"form-select\"\n onChange={({ target: { value } }) => {\n setValue('category', null);\n setValue('display_target', value);\n }}>\n {MANUAL_DISPLAY_TARGET.map((item) => (\n <option key={item.id} value={item.id}>\n {item.name}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.display_target?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n カテゴリ <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <select\n {...register('category', {\n required: 'カテゴリは必須です',\n })}\n className=\"form-select\">\n <option value=\"\" disabled>\n 選択してください\n </option>\n {filteredManualCategory.map((item) => (\n <option key={item.id} value={item.id}>\n {item.name}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.category?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n ファイル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex\">\n <label\n className=\"w-100 d-flex flex-row form-control p-0\"\n htmlFor=\"pdf\"\n style={{ cursor: 'pointer' }}>\n <div\n className=\"px-1\"\n style={{\n paddingTop: '0.375rem',\n paddingBottom: '0.375rem',\n }}>\n {watch('file_name') || '選択されていません'}\n </div>\n <input\n style={{ display: 'none' }}\n type=\"file\"\n className=\"form-control\"\n id=\"pdf\"\n accept=\"application/pdf\"\n onChange={(e) => {\n // e.persist();\n const files = e.target.files;\n if (files.length > 0) {\n uploadFile(files[0]);\n }\n // 同じファイルがアップロードされた場合でもイベントを発火するため、値をクリアしておく\n e.target.value = null;\n }}\n />\n </label>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n 表示順(空欄の場合は自動採番)\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('order_num', {\n validate: (input) => !input || numberReg.test(input),\n min: {\n value: 1,\n message: '表示順は1以上の整数を入力してください',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.order_num?.type === 'validate' &&\n '表示順の形式が正しくありません'}\n {errors?.order_num?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center my-3\">\n <GreenButton\n width={100}\n height={44}\n label=\"公開\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n </div>\n );\n};\n\nexport default Create;\n","import React, { useMemo, useState } from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { useDetail } from './hooks/useDetail';\nimport Title from '../../../components/Title';\nimport Paper from '../../../components/Paper/Paper';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport {\n MANUAL_CATEGORY,\n MANUAL_DISPLAY_TARGET,\n} from '../../../../utils/constant';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport DeleteModal from '../../../components/Modal/DeleteModal';\nimport { numberReg } from '../../../../utils/common';\n\nconst breadcrumbs = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: 'マニュアル',\n href: '/admin/manuals',\n },\n {\n text: 'マニュアル詳細',\n },\n];\n\nconst Detail = ({ manual: defaultManual }) => {\n const {\n isLoading,\n trigger,\n register,\n errors,\n handleSubmit,\n setValue,\n watch,\n uploadFile,\n save,\n saveWithPublish,\n deleteManual,\n } = useDetail({\n defaultManual,\n });\n\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n\n const filteredManualCategory = useMemo(() => {\n if (watch('display_target') === 'facility') {\n return MANUAL_CATEGORY.filter((_) => _.target === 'facility');\n }\n\n return MANUAL_CATEGORY.filter((_) => _.target === 'school');\n }, [watch('display_target')]);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={breadcrumbs} />\n </div>\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"マニュアル\"\n subTitle=\"マニュアルの確認、編集を行います\"\n />\n <div className=\"d-flex w-100 justify-content-end\">\n <span className=\"\">更新日:{defaultManual.updated_at}</span>\n </div>\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n タイトル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('title', {\n required: 'タイトルは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.title?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n 公開先 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <select\n {...register('display_target', {\n required: '公開先は必須です',\n })}\n className=\"form-select\"\n onChange={({ target: { value } }) => {\n setValue('category', null);\n setValue('display_target', value);\n }}>\n {MANUAL_DISPLAY_TARGET.map((item) => (\n <option key={item.id} value={item.id}>\n {item.name}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.display_target?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n カテゴリ <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <select\n {...register('category', {\n required: 'カテゴリは必須です',\n })}\n className=\"form-select\">\n <option value=\"\" disabled>\n 選択してください\n </option>\n {filteredManualCategory.map((item) => (\n <option key={item.id} value={item.id}>\n {item.name}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.category?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n ファイル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex\">\n <label\n className=\"w-100 d-flex flex-row form-control p-0\"\n htmlFor=\"pdf\"\n style={{ cursor: 'pointer' }}>\n <div\n className=\"px-1\"\n style={{\n paddingTop: '0.375rem',\n paddingBottom: '0.375rem',\n }}>\n {watch('file_name') || '選択されていません'}\n </div>\n <input\n style={{ display: 'none' }}\n type=\"file\"\n className=\"form-control\"\n id=\"pdf\"\n accept=\"application/pdf\"\n onChange={(e) => {\n // e.persist();\n const files = e.target.files;\n if (files.length > 0) {\n uploadFile(files[0]);\n }\n // 同じファイルがアップロードされた場合でもイベントを発火するため、値をクリアしておく\n e.target.value = null;\n }}\n />\n </label>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '120px',\n }}>\n 表示順(空欄の場合は自動採番)\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('order_num', {\n validate: (input) => !input || numberReg.test(input),\n min: {\n value: 1,\n message: '表示順は1以上の整数を入力してください',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.order_num?.type === 'validate' &&\n '表示順の形式が正しくありません'}\n {errors?.order_num?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center my-3\">\n <GrayButton\n width={100}\n height={44}\n label=\"削除\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return deleteManual(defaultManual.id);\n }}\n />\n </div>\n );\n};\n\nexport default Detail;\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\nimport { v4 as uuidv4 } from 'uuid';\nimport { toast } from 'react-toastify';\n\nconst P = 'ADMIN_MANUAL_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useCreate = () => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n trigger,\n } = useForm({\n mode: 'all',\n defaultValues: {\n title: '',\n display_target: 'facility',\n category: 'basic_info',\n order_num: null,\n file_name: '',\n file_path: '',\n },\n });\n\n const uploadFile = useCallback(\n async (file) => {\n if (!file) {\n return;\n }\n mask();\n try {\n const formData = new FormData();\n formData.append(\n 'name',\n `${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'manuals');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n setValue('file_path', file_path);\n setValue('file_name', file.name);\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask, setValue],\n );\n\n const _save = useCallback(async (data) => {\n return await HttpRequest.post('/api/admin/manuals', {\n ...data,\n });\n }, []);\n\n const saveWithPublish = useCallback(\n async (data) => {\n if (!data.file_path) {\n toast.error('ファイルをアップロードしてください');\n return;\n }\n mask();\n try {\n await _save({ ...data, is_published: true });\n location.href = '/admin/manuals';\n } finally {\n unmask();\n }\n },\n [mask, unmask, _save],\n );\n\n return {\n isLoading,\n register,\n errors,\n handleSubmit,\n watch,\n setValue,\n uploadFile,\n trigger,\n saveWithPublish,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\nimport { v4 as uuidv4 } from 'uuid';\nimport { toast } from 'react-toastify';\n\nconst P = 'ADMIN_MANUAL_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useDetail = ({ defaultManual }) => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n trigger,\n } = useForm({\n mode: 'all',\n defaultValues: {\n title: defaultManual.title,\n display_target: defaultManual.display_target,\n category: defaultManual.category,\n order_num: defaultManual.order_num,\n file_name: defaultManual.file_name,\n file_path: defaultManual.origin_file_path,\n },\n });\n\n const uploadFile = useCallback(\n async (file) => {\n if (!file) {\n return;\n }\n mask();\n try {\n const formData = new FormData();\n formData.append(\n 'name',\n `${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'manuals');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n setValue('file_path', file_path);\n setValue('file_name', file.name);\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask, setValue],\n );\n\n const _save = useCallback(async (data) => {\n return await HttpRequest.put(`/api/admin/manuals/${defaultManual.id}`, {\n ...data,\n });\n }, []);\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await _save(data);\n location.href = '/admin/manuals';\n } finally {\n unmask();\n }\n },\n [mask, unmask, _save],\n );\n\n const saveWithPublish = useCallback(\n async (data) => {\n mask();\n try {\n await _save(data);\n await HttpRequest.put(\n `/api/admin/manuals/${defaultManual.id}/publications`,\n );\n location.href = '/admin/manuals';\n } finally {\n unmask();\n }\n },\n [mask, unmask, _save],\n );\n\n const deleteManual = useCallback(\n async (id) => {\n mask();\n try {\n await HttpRequest.delete(`/api/admin/manuals/${id}`);\n location.href = '/admin/manuals';\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n isLoading,\n trigger,\n register,\n errors,\n handleSubmit,\n watch,\n setValue,\n uploadFile,\n save,\n saveWithPublish,\n deleteManual,\n };\n};\n","import React from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport Title from '../../../components/Title';\nimport Paper from '../../../components/Paper/Paper';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport { SERVICE_PLANS } from '../../../../utils/constant';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport { useCreate } from './hooks/useCreate';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '養成校一覧',\n href: '/admin/schools',\n },\n {\n text: '養成校詳細',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '140px',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Create = (props) => {\n const {\n isLoading,\n errorMessage,\n register,\n handleSubmit,\n watch,\n errors,\n setValue,\n save,\n trigger,\n } = useCreate();\n\n const onSubmit = async (data) => {\n await save(data);\n };\n\n return (\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"養成校情報登録\" subTitle=\"養成校情報の登録を行います\" />\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"text-primary fw-bold\">養成校新規登録</h5>\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 養成校名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', {\n required: '養成校名は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">{errors?.name?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('postal_code')}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 電話番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('tel')}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">{errors?.tel?.message}</span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('address', {\n required: '住所は必須です',\n })}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n プラン <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('service_plan', {\n required: 'プランは必須です',\n })}\n className=\"form-select\">\n {SERVICE_PLANS.map((item) => (\n <option key={item.id} value={item.id}>\n {item.name}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.service_plan?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 表示設定\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('display_flag')}\n className=\"form-check-input me-1\"\n id=\"display_flag\"\n type=\"checkbox\"\n />\n <label htmlFor=\"display_flag\">表示する</label>\n <span className=\"text-danger\">\n {errors?.display_flag?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 学校報告表示\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('visible_report')}\n className=\"form-check-input me-1\"\n id=\"visible_report\"\n type=\"checkbox\"\n />\n <label htmlFor=\"visible_report\">表示する</label>\n <span className=\"text-danger\">\n {errors?.visible_report?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n\n <div className=\"d-flex flex-row w-100 my-3\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"text-primary fw-bold\">養成校担当者</h5>\n </div>\n </div>\n <div className=\"d-flex flex-column w-100 px-3\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 担当者名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('advisor_name', {\n required: '担当者名は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.advisor_name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n メールアドレス <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('advisor_email', {\n required: 'メールアドレスは必須です',\n })}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.advisor_email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 初期パスワード <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('initial_password', {\n required: '初期パスワードは必須です',\n })}\n className=\"form-control\"\n type=\"text\"\n />\n\n <span className=\"text-danger\">\n {errors?.initial_password?.message}\n </span>\n <div className=\"d-flex\">\n <button\n className=\"btn btn-link\"\n onClick={(e) => {\n e.preventDefault();\n setValue(\n 'initial_password',\n uuidv4().replaceAll('-', '').substring(0, 16),\n );\n trigger('initial_password');\n }}>\n ランダムで生成する\n </button>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/schools';\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"登録\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n\n <div className=\"w-100 d-flex flex-row\">\n <span className=\"text-danger\">{errorMessage}</span>\n </div>\n </Paper>\n </div>\n </form>\n );\n};\n\nexport default Create;\n","import PropTypes from 'prop-types';\nimport React, { useState } from 'react';\nimport { SERVICE_PLANS } from '../../../../utils/constant';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/Title';\nimport SchoolYearSelectModal from './components/SchoolYearSelectModal';\nimport { useDetail } from './hooks/useDetail';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '養成校一覧',\n href: '/admin/schools',\n },\n {\n text: '養成校詳細',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '140px',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Detail = ({ school, customLoginUrl }) => {\n const {\n isLoading,\n errorMessage,\n errors,\n register,\n handleSubmit,\n save,\n downloadRecruitmentViewedCountCsv,\n } = useDetail(school);\n\n const [isOpenSelectSchoolYear, setIsOpenSelectSchoolYear] = useState(false);\n const onSubmit = async (data) => {\n await save(school.id, data);\n };\n\n return (\n <>\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"養成校情報詳細\"\n subTitle=\"養成校情報の詳細確認を行います\"\n />\n <div className=\"d-flex w-100 justify-content-end\">\n 養成校ID:{school.id}\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"text-primary fw-bold\">養成校詳細</h5>\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={160}\n height={44}\n label=\"求人閲覧履歴DL\"\n textFontSize={14}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenSelectSchoolYear(true);\n }}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 養成校名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', {\n required: '養成校名は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('postal_code')}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 電話番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('tel')}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('address', {\n required: '住所は必須です',\n })}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n プラン <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <select\n {...register('service_plan', {\n required: 'プランは必須です',\n })}\n className=\"form-select\">\n {SERVICE_PLANS.map((item) => (\n <option key={item.id} value={item.id}>\n {item.name}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.service_plan?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 表示設定\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('display_flag')}\n className=\"form-check-input me-1\"\n id=\"display_flag\"\n type=\"checkbox\"\n />\n <label htmlFor=\"display_flag\">表示する</label>\n <span className=\"text-danger\">\n {errors?.display_flag?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 学校報告表示\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('visible_report')}\n className=\"form-check-input me-1\"\n id=\"visible_report\"\n type=\"checkbox\"\n />\n <label htmlFor=\"visible_report\">表示する</label>\n <span className=\"text-danger\">\n {errors?.visible_report?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 学生登録URL\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <a href={customLoginUrl} target=\"_blank\">\n {customLoginUrl}\n </a>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n\n <div className=\"w-100 d-flex flex-row\">\n <span className=\"text-danger\">{errorMessage}</span>\n </div>\n </Paper>\n </div>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/schools';\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n <SchoolYearSelectModal\n isShow={isOpenSelectSchoolYear}\n onClose={() => {\n setIsOpenSelectSchoolYear(false);\n }}\n onOk={(year) => {\n setIsOpenSelectSchoolYear(false);\n return downloadRecruitmentViewedCountCsv(school.id, year);\n }}\n />\n </>\n );\n};\n\nDetail.propTypes = {\n school: PropTypes.object.isRequired,\n};\n\nexport default Detail;\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '養成校一覧',\n },\n];\n\nconst List = (props) => {\n const { schools, currentPage, totalPages } = props;\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <div className=\"container\">\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-row justify-content-start mt-5\">\n <div className=\"d-flex flex-column justify-content-start\">\n <h4 className=\"text-primary fw-bold\">養成校情報</h4>\n <span style={{ fontStyle: '14px' }}>\n 養成校情報の一覧確認を行います\n </span>\n </div>\n </div>\n <div className=\"d-flex w-100\">\n <Paper\n className=\"w-100\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"text-primary fw-bold\">養成校一覧</h5>\n </div>\n <div className=\"d-flex justify-content-end w-100\">\n <GreenButton\n width={150}\n height={44}\n label=\"新規登録\"\n textFontSize={20}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={() => (location.href = '/admin/schools/new')}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex justify-content-start mb-5\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell width={120} label=\"養成校名\" />\n <HeadCell width={50} label=\"プラン\" />\n <HeadCell width={80} label=\"電話番号\" />\n <HeadCell width={80} label=\"郵便番号\" />\n <HeadCell width={200} label=\"住所\" />\n <HeadCell width={80} label=\"表示フラグ\" />\n </TableHead>\n <TableBody>\n {schools.map((school, i) => (\n <TableRow key={school.id}>\n <BodyCell>\n <a href={`/admin/schools/${school.id}`}>{school.name}</a>\n </BodyCell>\n <BodyCell>{school.service_plan_name}</BodyCell>\n <BodyCell>{school.tel}</BodyCell>\n <BodyCell>{school.postal_code}</BodyCell>\n <BodyCell>{school.address}</BodyCell>\n <BodyCell className=\"text-center\">\n {school.display_flag ? '◯' : '×'}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n <tbody style={{ cursor: 'pointer' }}></tbody>\n </Table>\n </div>\n </Paper>\n </div>\n <div className=\"d-flex w-100 justify-content-center mb-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </div>\n );\n};\n\nList.propTypes = {\n schools: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n};\n\nList.defaultProps = {\n schools: [],\n currentPage: 1,\n totalPages: 1,\n};\n\nexport default List;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst Create = (props) => {\n const { school, postPath } = props;\n const [isDuplicateEmail, setIsDuplicateEmail] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [isServerError, setIsServerError] = useState(false);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n display_name: null,\n email: null,\n password: null,\n main_advisor_flag: false,\n },\n });\n\n useEffect(() => {\n if (watch('email')) {\n setIsDuplicateEmail(false);\n }\n }, [watch('email')]);\n\n const onSubmit = async (data) => {\n setIsSubmitting(true);\n try {\n const res = await HttpRequest.post(postPath, {\n ...data,\n });\n location.href = res.data.redirect_path;\n } catch (e) {\n const data = e?.response?.data;\n if (e?.response?.status === 400) {\n if (data.duplicate) {\n setIsDuplicateName(true);\n }\n if (data.duplicate_email) {\n setIsDuplicateEmail(true);\n }\n } else {\n console.error(e);\n setIsServerError(true);\n }\n } finally {\n setIsSubmitting(false);\n }\n };\n\n return (\n <div className=\"container mb-5\">\n <h2 className=\"mb-3\">担当者登録</h2>\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"mb-3\">\n <label htmlFor=\"display_name\" className=\"form-label\">\n 担当者名\n </label>\n <input\n {...register('display_name', {\n required: '名前は必須です',\n })}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">{errors?.display_name?.message}</span>\n </div>\n <div className=\"mb-3\">\n <label htmlFor=\"email\" className=\"form-label\">\n 担当者メールアドレス\n </label>\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n pattern: {\n value: /^\\S+@\\S+$/i,\n message: 'メールアドレスの形式が正しくありません',\n },\n })}\n className=\"form-control\"\n type=\"text\"\n />\n <div>\n <span className=\"text-danger\">{errors?.email?.message}</span>\n </div>\n {isDuplicateEmail && (\n <div>\n <span className=\"text-danger\">\n このメールアドレスは既に使用されています\n </span>\n </div>\n )}\n </div>\n <div className=\"mb-3\">\n <label htmlFor=\"password\" className=\"form-label\">\n 担当者仮パスワード\n </label>\n <input\n {...register('password', {\n required: 'パスワードは必須です',\n })}\n className=\"form-control\"\n type=\"password\"\n />\n <span className=\"text-danger\">{errors?.password?.message}</span>\n </div>\n\n <div className=\"mb-3\">\n <input\n {...register('main_advisor_flag')}\n id=\"main_advisor_flag\"\n type=\"checkbox\"\n className=\"form-control-checkbox\"\n />\n <label htmlFor=\"main_advisor_flag\" className=\"form-label ms-2\">\n メイン担当者フラグ\n </label>\n </div>\n\n <div className=\"w-100 d-flex flex-row\">\n {isServerError && (\n <span className=\"text-danger\">\n エラーが発生しました。時間をおいて再度お試しください\n </span>\n )}\n </div>\n\n <div className=\"w-100 d-flex flex-row mt-5\">\n <button\n type=\"submit\"\n className=\"btn btn-primary mb-5\"\n disabled={isSubmitting}>\n 登録\n </button>\n </div>\n </form>\n </div>\n );\n};\n\nCreate.propTypes = {\n school: PropTypes.object,\n postPath: PropTypes.string,\n};\n\nexport default Create;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Detail = (props) => {\n const { user, email } = props;\n\n return (\n <div className=\"container mb-5 mt-2\">\n <h2 className=\"mb-3\">担当者詳細</h2>\n <div className=\"mb-3\">\n <label htmlFor=\"display_name\" className=\"form-label\">\n 担当者名\n </label>\n <input\n disabled\n className=\"form-control\"\n value={user.advisor.name}\n type=\"text\"\n />\n </div>\n <div className=\"mb-3\">\n <label htmlFor=\"email\" className=\"form-label\">\n 担当者メールアドレス\n </label>\n <input disabled className=\"form-control\" value={email} type=\"text\" />\n </div>\n <div className=\"mb-3\">\n <label htmlFor=\"password\" className=\"form-label\">\n 担当者仮パスワード\n </label>\n <input\n disabled\n className=\"form-control\"\n value={\n user.initial_password_changed ? '変更済み' : user.initial_password\n }\n type=\"text\"\n />\n </div>\n <div className=\"mb-3\">\n <input\n disabled\n checked={user.advisor.main_advisor}\n type=\"checkbox\"\n className=\"form-control-checkbox\"\n />\n <label htmlFor=\"main_advisor_flag\" className=\"form-label ms-2\">\n メイン担当者フラグ\n </label>\n </div>\n </div>\n );\n};\n\nDetail.propTypes = {\n school: PropTypes.object,\n user: PropTypes.object,\n email: PropTypes.string,\n};\n\nexport default Detail;\n","import PropTypes from 'prop-types';\nimport React, { useState } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport Pagination from '../../../../components/Paginations/BasicPagination';\n\nconst List = (props) => {\n const { school, users, currentPage, totalPages, postPath } = props;\n const [isServerError, setIsServerError] = useState(false);\n const [errorMessage, setErrorMessage] = useState('');\n const itemLen = users.length;\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n const onDelete = async (userId) => {\n if (confirm('削除しますか?')) {\n try {\n const res = await HttpRequest.delete(`${postPath}/${userId}`);\n location.href = res.data.redirect_path;\n } catch (e) {\n if (e?.response?.status === 400 && e?.response?.data?.error_message) {\n setErrorMessage(e.response.data.error_message);\n } else {\n setIsServerError(true);\n }\n }\n }\n };\n\n return (\n <div className=\"container\">\n <div className=\"w-100 d-flex flex-row align-items-center\">\n <h2 className=\"w-75\">養成校: {school.name} 担当者一覧</h2>\n <div className=\"w-25 d-flex justify-content-end\">\n <button\n className=\"btn btn-light\"\n onClick={() => (location.href = `${location.pathname}/new`)}>\n 新規登録\n </button>\n </div>\n </div>\n <div className=\"d-flex flex-col\">\n <div>\n {isServerError && (\n <span className=\"text-danger\">エラーが発生しました</span>\n )}\n </div>\n <div>\n {errorMessage && <span className=\"text-danger\">{errorMessage}</span>}\n </div>\n </div>\n <div className=\"d-flex justify-content-start mb-5\">\n <table className=\"table table-hover\">\n <thead>\n <tr>\n <th scope=\"col\" width={100}>\n #\n </th>\n <th scope=\"col\">担当者名</th>\n <th scope=\"col\" width={100}>\n 操作\n </th>\n </tr>\n </thead>\n <tbody style={{ cursor: 'pointer' }}>\n {users.map((user, i) => (\n <tr key={user.id} className=\"align-middle\">\n <th scope=\"row\">{itemLen * (currentPage - 1) + i + 1}</th>\n <td>\n <a href={`${location.pathname}/${user.id}`}>\n {user.advisor.name}\n </a>\n </td>\n <td>\n <button\n className=\"btn btn-danger text-white\"\n onClick={() => onDelete(user.id)}>\n 削除\n </button>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n <div className=\"d-flex w-100 justify-content-center mb-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </div>\n );\n};\n\nList.propTypes = {\n school: PropTypes.object,\n users: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n postPath: PropTypes.string,\n};\n\nList.defaultProps = {\n school: {},\n users: [],\n currentPage: 1,\n totalPages: 1,\n};\n\nexport default List;\n","import React, { useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport dayjs from 'dayjs';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport PrimaryButton from '../../../../components/Buttons/PrimaryButton';\ndayjs.locale('ja');\n\nconst SchoolYearSelectModal = ({ isShow = false, onClose, onOk }) => {\n // 2022スタート\n const limitOldYear = 2022;\n const now = dayjs();\n const currentYear = now.year();\n const diffYear = currentYear - limitOldYear;\n let y = now.year();\n const items = [...Array(diffYear + 1)].map(() => y--);\n const [targetYear, setTargetYear] = useState(now.year().toString());\n\n return (\n <Modal show={isShow} onHide={onClose} size=\"lg\" centered>\n <Modal.Body>\n <div className=\"d-flex flex-column w-100\">\n <div>ダウンロードする年度を選択してください</div>\n <div>\n <select\n name=\"\"\n id=\"\"\n className=\"form-control\"\n onChange={({ target: { value } }) => {\n setTargetYear(value);\n }}>\n {items.map((i) => (\n <option value={i} key={i}>\n {i}\n </option>\n ))}\n </select>\n </div>\n <div className=\"d-flex flex-row w-100 justify-content-center mt-3\">\n <div className=\"me-2\">\n <GrayButton\n onClick={(e) => onClose(e)}\n height={38}\n width={90}\n label=\"閉じる\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n </div>\n <div className=\"ms-2\">\n <PrimaryButton\n onClick={() => onOk(targetYear)}\n height={38}\n width={140}\n label=\"ダウンロード\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n </div>\n </div>\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default SchoolYearSelectModal;\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\n\nconst P = 'ADMIN_SCHOOL_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return {\n ...state,\n ...payload,\n };\n }\n default: {\n return state;\n }\n }\n};\nexport const useCreate = () => {\n const {\n register,\n handleSubmit,\n formState: { errors },\n setValue,\n watch,\n trigger,\n } = useForm({\n defaultValues: {\n display_flag: false,\n tel: '',\n postal_code: '',\n },\n });\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const save = useCallback(\n async (data) => {\n mask();\n changeState({ errorMessage: '' });\n try {\n await HttpRequest.post('/api/admin/schools', data);\n location.href = '/admin/schools';\n } catch (e) {\n const data = e?.response?.data;\n if (e?.response?.status === 400) {\n if (data.error) {\n toast.error(data.error);\n } else {\n toast.error('エラーが発生しました');\n }\n } else {\n console.error(e);\n toast.error('エラーが発生しました');\n }\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n isLoading,\n errors,\n errorMessage,\n register,\n handleSubmit,\n setValue,\n watch,\n save,\n trigger,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'ADMIN_SCHOOL_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return {\n ...state,\n ...payload,\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useDetail = (school = {}) => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n } = useForm({\n mode: 'all',\n defaultValues: {\n ...school,\n },\n });\n\n const save = useCallback(async (id, data) => {\n mask();\n changeState({ errorMessage: '' });\n try {\n await HttpRequest.put(`/api/admin/schools/${id}`, {\n ...data,\n });\n location.href = location.href;\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n }, []);\n\n const downloadRecruitmentViewedCountCsv = useCallback(\n async (id, targetSchoolYear) => {\n mask();\n try {\n location.href = `/admin/schools/${id}/export_recruitment_viewed_counts.csv?target_year=${targetSchoolYear}`;\n } finally {\n unmask();\n }\n },\n [],\n );\n\n return {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n register,\n handleSubmit,\n save,\n downloadRecruitmentViewedCountCsv,\n };\n};\n","import React from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport Title from '../../../components/Title';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport GrayButton from '../../../components/Buttons/GrayButton';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '応募者管理',\n href: '/admin/student_applicants',\n },\n {\n text: '応募者詳細',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '140px',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Detail = ({ studentApplicant }) => {\n return (\n <div className=\"container\">\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"養成校情報詳細\"\n subTitle=\"養成校情報の詳細確認を行います\"\n />\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 氏名\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.student_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 申込日\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.applicant_date}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 所属\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.school_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 法人名\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.corporate_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 機能\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n 見学申込\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 対応ステータス\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.status}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 卒業見込年\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.graduation_year}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 取得予定資格\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.joined_text}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 連絡先(メール)\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.email}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 連絡先(TEL)\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.tel}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n メッセージ\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {studentApplicant.message}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n </div>\n <div className=\"d-flex flex-column justify-content-center my-4\">\n <GrayButton\n width={140}\n height={51}\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/student_applicants';\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default Detail;\n","import React from 'react';\nimport AdminBreadcrumbs from '../../../components/Breadcrumbs/AdminBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Title from '../../../components/Title';\nimport GreenButton from '../../../components/Buttons/GreenButton';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/admin',\n },\n {\n text: '応募者管理',\n },\n];\nconst List = ({ studentApplicants, currentPage, totalPages }) => {\n console.log(studentApplicants);\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n const textStyle = {\n color: '#7A7979',\n };\n return (\n <div className=\"container\">\n <div className=\"my-2\">\n <AdminBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-row mt-5\">\n <div className=\"d-flex flex-column w-100\">\n <FacilityTitle\n title=\"応募者情報\"\n subTitle=\"応募者情報の一覧確認、対応ステータスを変更できます\"\n />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={100}\n height={44}\n label=\"DL\"\n textFontSize={16}\n onClick={(e) => {\n e.preventDefault();\n location.href = '/admin/student_applicants/csv_exports/new.csv';\n }}\n className=\"d-flex justify-content-center\"\n />\n </div>\n </div>\n <div className=\"d-flex w-100\">\n <Paper className=\"w-100\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell\n className=\"align-middle\"\n label=\"氏名\"\n style={textStyle}\n />\n <HeadCell\n className=\"align-middle\"\n label=\"申込日\"\n style={textStyle}\n />\n <HeadCell\n className=\"align-middle\"\n label=\"所属\"\n style={textStyle}\n />\n <HeadCell\n className=\"align-middle\"\n label=\"法人名\"\n style={textStyle}\n />\n <HeadCell\n className=\"align-middle\"\n label=\"機能\"\n style={textStyle}\n />\n <HeadCell\n className=\"align-middle\"\n label=\"対応ステータス\"\n style={textStyle}\n />\n </TableHead>\n <TableBody>\n {studentApplicants.map((studentApplicant) => (\n <TableRow>\n <BodyCell className=\"\">\n <a\n href={`/admin/student_applicants/${studentApplicant.id}`}>\n {studentApplicant.student_name}\n </a>\n </BodyCell>\n <BodyCell className=\"\" style={textStyle}>\n {studentApplicant.applicant_date}\n </BodyCell>\n <BodyCell className=\"\" style={textStyle}>\n {studentApplicant.school_name}\n </BodyCell>\n <BodyCell className=\"\" style={textStyle}>\n {studentApplicant.corporate_name}\n </BodyCell>\n <BodyCell className=\"\" style={textStyle}>\n 見学申込\n </BodyCell>\n <BodyCell className=\"\" style={textStyle}>\n {studentApplicant.status}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n </div>\n <div className=\"d-flex w-100 justify-content-center my-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </div>\n );\n};\n\nexport default List;\n","import React, { useEffect } from 'react';\nimport styled from 'styled-components';\nimport { LEGAL_PERSON_LABEL_MAP } from '../../../../utils/constant';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport { useMyCorporateCorporateDetailModule } from '../../../modules/MyCorporate/Corporate/detailModule';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport { urlReg } from '../../../../utils/common';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '基本情報',\n },\n {\n text: '法人情報',\n },\n];\n\nconst LeftTableInnerCell = styled.div`\n margin-left: 2.7rem;\n text-indent: -2.7rem;\n`;\n\nconst corporateTableLeftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '140px',\n fontSize: '1rem',\n};\n\nconst corporateTableRightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst youthEmploymentLeftBodyStyle = {\n width: '30%',\n background: '#E1EBF5',\n borderLeft: 'none',\n fontSize: '1rem',\n};\n\nconst youthEmploymentRightBodyStyle = {\n background: '#F0F0F0',\n borderRight: 'none',\n};\n\nconst Detail = ({ corporate: defaultCorporate }) => {\n const {\n // store\n corporate,\n isLoading,\n errors,\n // actions\n initializeCorporate,\n register,\n handleSubmit,\n save,\n } = useMyCorporateCorporateDetailModule();\n\n useEffect(() => {\n initializeCorporate(defaultCorporate);\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"法人情報\"\n subTitle=\"法人情報の確認、編集を行います\"\n />\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n 法人格\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <div className=\"mt-1\">\n {LEGAL_PERSON_LABEL_MAP?.[corporate?.legal_person]}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n 法人名\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <div className=\"mt-1\">{corporate?.name}</div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n 担当者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <input\n {...register('person_in_charge', {\n required: '担当者は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n 担当者部署\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <input\n {...register('person_in_charge_department')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge_department?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n 担当者役職\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <input\n {...register('person_in_charge_position')}\n type=\"text\"\n className=\"form-control\"\n />\n\n <span className=\"text-danger\">\n {errors?.person_in_charge_position?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n 住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <input\n {...register('address', { required: '住所は必須です' })}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n TEL <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <input\n {...register('tel', { required: 'TELは必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={corporateTableLeftBodyStyle}>\n HP\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={corporateTableRightBodyStyle}>\n <input\n {...register('site_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.site_url?.type === 'validate' &&\n 'HPの形式が正しくありません'}\n {errors?.site_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center mt-2 mb-5\">\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n </div>\n );\n};\n\nexport default Detail;\n","import React from 'react';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport { useCorporateManagerCreateModule } from '../../../modules/MyCorporate/CorporateManager/createModule';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '基本情報',\n },\n {\n text: '担当者情報',\n href: '/my_corporate/corporate_managers',\n },\n {\n text: '担当者情報追加',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '180px',\n fontSize: '1rem',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Create = (props) => {\n const {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n } = useCorporateManagerCreateModule();\n\n return (\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"担当者情報追加\"\n subTitle=\"法人担当者情報の新規登録を行います\"\n />\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"担当者情報\" />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n <p className=\"text-danger fw-bold\">\n -\n 登録後、登録メールアドレス宛にアクセス情報をお送りします\n </p>\n </p>\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 氏名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', { required: '氏名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">{errors?.name?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n メールアドレス <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('position')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.position?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 所属\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('department')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.department?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 管理者\n </BodyCell>\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={rightBodyStyle}>\n <input\n {...register('is_admin')}\n type=\"checkbox\"\n className=\"form-check-input mt-0\"\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"d-flex justify-content-center py-3\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/corporate_managers';\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"登録\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n );\n};\n\nexport default Create;\n","import React, { useEffect, useState } from 'react';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport DeleteModal from '../../../components/Modal/DeleteModal';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport { useCorporateManagerDetailModule } from '../../../modules/MyCorporate/CorporateManager/detailModule';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '基本情報',\n },\n {\n text: '担当者情報',\n href: '/my_corporate/corporate_managers',\n },\n {\n text: '担当者情報編集',\n },\n];\n\nconst leftBodyStyle = {\n background: '#E1EBF5',\n maxWidth: '180px',\n fontSize: '1rem',\n};\n\nconst rightBodyStyle = {\n background: '#F0F0F0',\n};\n\nconst Detail = ({\n corporateManager: defaultCorporateManager,\n disableDelete,\n isManager = false,\n}) => {\n const {\n // store\n isLoading,\n errors,\n errorMessage,\n // actions\n initializeCorporateManager,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n deleteManager,\n } = useCorporateManagerDetailModule({ defaultCorporateManager });\n\n useEffect(() => {\n initializeCorporateManager(defaultCorporateManager);\n }, [defaultCorporateManager]);\n\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n\n return (\n <>\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"担当者情報編集\"\n subTitle=\"法人担当者情報の更新を行います\"\n />\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"担当者情報\" />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n - 担当者の追加は管理者のみ実施できます\n </p>\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 氏名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('name', { required: '氏名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n メールアドレス <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('position')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.position?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 所属\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n <input\n {...register('department')}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.department?.message}\n </span>\n </BodyCell>\n </TableRow>\n {isManager && (\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 管理者\n </BodyCell>\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={rightBodyStyle}>\n <input\n {...register('is_admin')}\n type=\"checkbox\"\n className=\"form-check-input mt-0\"\n />\n </BodyCell>\n </TableRow>\n )}\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={leftBodyStyle}>\n 最終アクセス\n </BodyCell>\n <BodyCell className=\"w-100\" style={rightBodyStyle}>\n {defaultCorporateManager?.latest_logged_in_at ?? '-'}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"d-flex justify-content-center py-3\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <BlackButton\n width={100}\n height={40}\n label=\"削除\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n disabled={disableDelete}\n />\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/corporate_managers';\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"登録\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return deleteManager(defaultCorporateManager.id);\n }}\n />\n </>\n );\n};\n\nexport default Detail;\n","import React from 'react';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport CorporateManagerList from '../../../components/Corporate/CorporateManagerList';\nimport Paper from '../../../components/Paper/Paper';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '基本情報',\n },\n {\n text: '担当者情報',\n },\n];\n\nconst List = ({ corporateManagers = [], isManager = false }) => {\n const headerRenderer = () => {\n return (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"担当者一覧\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={150}\n height={44}\n label=\"新規登録\"\n textFontSize={20}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-person-fill\" />}\n onClick={() =>\n (location.href = '/my_corporate/corporate_managers/new')\n }\n disabled={!isManager}\n />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n - 右の担当者追加ボタンから担当者を追加できます <br />-\n 担当者の追加は管理者のみ実施できます\n </p>\n </div>\n </div>\n </>\n );\n };\n const paperProps = {\n headerRenderer,\n };\n\n return (\n <div className=\"container\">\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"担当者情報\"\n subTitle=\"法人担当者情報の一覧確認を行います\"\n />\n </div>\n <Paper {...paperProps} className=\"mb-5\">\n <CorporateManagerList\n data={corporateManagers}\n onClick={(id) =>\n (location.href = `/my_corporate/corporate_managers/${id}`)\n }\n />\n </Paper>\n </div>\n );\n};\n\nexport default List;\n","import ja from 'date-fns/locale/ja';\nimport dayjs from 'dayjs';\nimport React, { useEffect, useMemo, useState } from 'react';\nimport DatePicker, { registerLocale } from 'react-datepicker';\nimport { Controller } from 'react-hook-form';\nimport styled from 'styled-components';\nimport { v4 as uuidv4 } from 'uuid';\nimport { fetchCities } from '../../../../api/common';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport EventAttachedFileUpload from '../../../components/Modal/EventAttachedFileUpload';\nimport Paper from '../../../components/Paper/Paper';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\nimport StyledTimePicker from '../../../components/TimePicker';\nimport { useScrollToError } from '../../../hooks/useScrollToError';\nimport { useCreate } from './hooks/useCreate';\nimport AttachedFileDeleteModal from '../../../components/Modal/AttachedFileDeleteModal';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport { emailReg, phoneReg } from '../../../../utils/common';\n\nconst TrashWrap = styled.span`\n font-size: 20px;\n cursor: pointer;\n\n &:hover {\n color: #333333;\n }\n`;\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst Create = ({ fromEvent = null }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'PR管理',\n },\n {\n text: '見学会・イベント情報',\n href: '/my_corporate/events',\n },\n {\n text: '見学会・イベント情報新規登録',\n },\n ];\n const {\n // store\n isLoading,\n errors,\n errorMessage,\n pdfs,\n pdfUploadErrorMessage,\n control,\n // actions\n initialize,\n changeState,\n register,\n setValue,\n handleSubmit,\n watch,\n save,\n trigger,\n addPdfFiles,\n deletePdfFile,\n } = useCreate();\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '220px',\n fontSize: '1rem',\n };\n const [cities, setCities] = useState([]);\n const [attachedTopImage, setAttachedTopImage] = useState(null);\n const [isOpenFileUploadModal, setIsOpenFileUploadModal] = useState(false);\n const [isOpenAttachedFileDeleteModal, setIsOpenAttachedFileDeleteModal] =\n useState(false);\n const [deleteTargetFile, setDeleteTargetFile] = useState({\n id: null,\n file_id: null,\n filePath: null,\n name: null,\n });\n\n const now = useMemo(() => dayjs(), []);\n\n useEffect(() => {\n if (fromEvent) {\n initialize(fromEvent);\n if (fromEvent.target_facility_type_values.length > 0) {\n setValue('target_facility_type', fromEvent.target_facility_type_values);\n }\n }\n }, [fromEvent]);\n useEffect(() => {\n useScrollToError(errors);\n }, [errors]);\n\n useEffect(() => {\n if (watch('pref_code')) {\n return fetchCities(watch('pref_code')).then((cities) =>\n setCities(cities),\n );\n } else {\n setCities([]);\n }\n }, [watch('pref_code')]);\n\n useEffect(() => {\n if (watch('city_code') && cities?.length > 0) {\n const foundCity =\n cities.find(\n (city) =>\n city.id.toString() ===\n watch('city_code').toString().padStart(5, '0'),\n )?.name ?? null;\n setValue('city', foundCity);\n } else {\n setValue('city', null);\n }\n }, [watch('city_code'), cities]);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n\n <form onSubmit={handleSubmit(save)}>\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"見学会・イベント情報詳細\"\n subTitle=\"見学会・イベント情報の編集を行います\"\n />\n </div>\n\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開催日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0', fontSize: '1rem' }}>\n <DatePicker\n {...register('event_date', {\n required: '開催日は必須です',\n })}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('event_date') ?? ''}\n onChange={(date) => {\n setValue('event_date', date);\n }}\n />\n <span className=\"text-danger\">\n {errors?.event_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開催時間 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div style={{ fontSize: '1rem' }}>\n <StyledTimePicker\n {...register('implementation_time_from', {\n required: '開催時間は必須です',\n })}\n disableClock\n format=\"HH:mm\"\n onChange={(time) =>\n setValue('implementation_time_from', time)\n }\n value={watch('implementation_time_from')}\n />\n <span className=\"ps-3 pe-2\">〜</span>\n <StyledTimePicker\n {...register('implementation_time_to', {\n required: '開催時間は必須です',\n })}\n disableClock\n format=\"HH:mm\"\n onChange={(time) =>\n setValue('implementation_time_to', time)\n }\n value={watch('implementation_time_to')}\n />\n </div>\n {(errors?.implementation_time_from?.message ||\n errors?.implementation_time_to?.message) && (\n <span className=\"text-danger\">開催時間は必須です</span>\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 公開開始日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('release_date', {\n required: '公開開始日は必須です',\n })}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('release_date') ?? ''}\n onChange={(date) => {\n setValue('release_date', date);\n }}\n />\n <span className=\"text-danger\">\n {errors?.release_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n ステータス\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0', fontSize: '1rem' }}>\n 下書き\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n タイトル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('title', {\n required: 'タイトルは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"タイトル\"\n />\n <span className=\"text-danger\">\n {errors?.title?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 分類 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"event_type_1\"\n {...register('event_type', {\n required: '分類は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n />\n <label\n htmlFor=\"event_type_1\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 見学会\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"event_type_2\"\n {...register('event_type', {\n required: '分類は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n />\n <label\n htmlFor=\"event_type_2\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n イベント\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.event_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開催場所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('event_location', {\n required: '開催場所は必須です',\n })}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n placeholder=\"〇〇幼稚園、〇〇福祉法人本部\"\n />\n <span className=\"text-danger\">\n {errors?.event_location?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <Controller\n control={control}\n name=\"postal_code\"\n render={({ field: { onChange } }) => (\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"tel\"\n className=\"form-control\"\n id=\"postal_code\"\n placeholder=\"0123456\"\n maxLength={8}\n value={watch('postal_code') ?? ''}\n onChange={({ target: { value } }) => {\n const num = Number(value.replace('-', ''));\n // 入力桁数は8桁までで、ハイフンを含む数字を許容\n if (Number.isInteger(num)) {\n onChange(value);\n }\n }}\n />\n )}\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 都道府県 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n setValue('city_code', '');\n }}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.pref_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 市区町村 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <CitySelect\n register={register('city_code', {\n required: '市区町村は必須です',\n })}\n selectedValue={watch('city_code')?.toString()}\n prefecture={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('city_code', value);\n setValue(\n 'city',\n cities.find(\n (city) => city.id.toString() === value?.toString(),\n )?.name ?? null,\n );\n }}\n defaultCities={cities}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.city_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 丁番以下住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address', {\n required: '丁番以下住所は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 建物名など\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address2')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 対象施設種別 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"ho\"\n id=\"target_facility_type_ho\"\n />\n <label\n htmlFor=\"target_facility_type_ho\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 保育園\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"yo\"\n id=\"target_facility_type_yo\"\n />\n <label\n htmlFor=\"target_facility_type_yo\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 幼稚園\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"ko\"\n id=\"target_facility_type_ko\"\n />\n <label\n htmlFor=\"target_facility_type_ko\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 認定こども園\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です ',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"target_facility_type_other\"\n />\n <label\n htmlFor=\"target_facility_type_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.target_facility_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 内容 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('subject', {\n required: '内容は必須です',\n })}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n />\n <span className=\"text-danger\">\n {errors?.subject?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 対象者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('target', {\n required: '内容は必須です',\n })}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n />\n <span className=\"text-danger\">\n {errors?.target?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('note')}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n placeholder=\"当日の持ち物や服装など\"\n />\n <span className=\"text-danger\">{errors?.note?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 定員数 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('capacity', {\n required: '定員数は必須です',\n })}\n type=\"number\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.capacity?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 担当者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('person_in_charge', {\n required: '担当者は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 担当連絡先(TEL){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('person_in_charge_tel', {\n required:\n !watch('person_in_charge_tel') &&\n !watch('person_in_charge_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) =>\n !input ||\n (phoneReg.test(input) &&\n input\n .split('-')\n .filter((v) => !!v)\n .every((v) => !isNaN(Number(v)))),\n })}\n type=\"tel\"\n className=\"form-control\"\n placeholder=\"000-0000-0000\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge_tel?.type === 'validate' &&\n '電話番号の形式が正しくありません'}\n {errors?.person_in_charge_tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 担当連絡先(メール){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('person_in_charge_email', {\n required:\n !watch('person_in_charge_tel') &&\n !watch('person_in_charge_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) => !input || emailReg.test(input),\n })}\n type=\"email\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge_email?.type === 'validate' &&\n 'メールアドレスの形式が正しくありません'}\n {errors?.person_in_charge_email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n トップ写真\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div>\n <input\n {...register('top_image')}\n type=\"file\"\n className=\"form-control\"\n accept=\"image/*\"\n onChange={(e) => {\n const f = e.target.files;\n if (f.length === 0) {\n return setAttachedTopImage(null);\n }\n const blobUrl = window.URL.createObjectURL(f[0]);\n return setAttachedTopImage(blobUrl);\n }}\n />\n </div>\n <div className=\"mt-3\">\n {attachedTopImage ? (\n <img src={attachedTopImage} height={150} />\n ) : (\n <img\n src={\n fromEvent?.top_image_file_path\n ? fromEvent.top_image_file_path\n : '/noimage.jpg'\n }\n height={150}\n />\n )}\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"py-3 d-flex justify-content-center\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <Paper\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"添付ファイル\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenFileUploadModal(true);\n }}\n />\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableHead>\n <HeadCell width={150} label=\"アップロード日\" />\n <HeadCell label=\"ファイル名\" />\n </TableHead>\n <TableBody>\n {pdfs.map((pdfData, i) => (\n <TableRow key={i}>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {pdfData.uploadDate}\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-row w-100 align-items-center\">\n <div className=\"d-flex justify-content-start w-100\">\n <a\n href={pdfData.signedUrl}\n target=\"_blank\"\n rel=\"nofollow\">\n {pdfData.name}\n </a>\n </div>\n <div className=\"d-flex justify-content-end w-100 me-2\">\n <TrashWrap\n onClick={() => {\n setIsOpenAttachedFileDeleteModal(true);\n setDeleteTargetFile({\n id: pdfData?.id,\n file_id: pdfData.file_id,\n filePath: pdfData.filePath,\n name: pdfData.name,\n });\n }}>\n <i className=\"bi bi-trash\"></i>\n </TrashWrap>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/events';\n }}\n />\n <OrangeButton\n width={100}\n height={44}\n label=\"下書き保存\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return save(watch());\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"紐付け選択\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save(watch(), true);\n } else {\n return useScrollToError(errors);\n }\n }}\n />\n </div>\n </form>\n <EventAttachedFileUpload\n errorMessage={pdfUploadErrorMessage}\n isShow={isOpenFileUploadModal}\n onClose={() => setIsOpenFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n if (file) {\n return addPdfFiles({\n file: file,\n file_id: uuidv4(),\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n created_at: now.format('YYYY-MM-DD HH:mm:ss'),\n updated_at: now.format('YYYY-MM-DD HH:mm:ss'),\n }).then(() => setIsOpenFileUploadModal(false));\n }\n setIsOpenFileUploadModal(false);\n }}\n />\n <AttachedFileDeleteModal\n isShow={isOpenAttachedFileDeleteModal}\n fileName={deleteTargetFile.name}\n onHide={() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n file_id: null,\n filePath: null,\n name: null,\n });\n }}\n onDelete={() => {\n deletePdfFile(deleteTargetFile).finally(() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n file_id: null,\n filePath: null,\n name: null,\n });\n });\n }}\n />\n </div>\n );\n};\nexport default Create;\n","import ja from 'date-fns/locale/ja';\nimport dayjs from 'dayjs';\nimport React, { useEffect, useMemo, useState } from 'react';\nimport DatePicker, { registerLocale } from 'react-datepicker';\nimport { Controller } from 'react-hook-form';\nimport styled from 'styled-components';\nimport { v4 as uuidv4 } from 'uuid';\nimport { fetchCities } from '../../../../api/common';\nimport {\n cvtEventStatusValue,\n emailReg,\n phoneReg,\n} from '../../../../utils/common';\nimport { EVENT_STATUS } from '../../../../utils/constant';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport EventAttachedFileUpload from '../../../components/Modal/EventAttachedFileUpload';\nimport Paper from '../../../components/Paper/Paper';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\nimport StyledTimePicker from '../../../components/TimePicker';\nimport { useScrollToError } from '../../../hooks/useScrollToError';\nimport DeleteModal from './components/DeleteModal';\nimport AttachedFileDeleteModal from '../../../components/Modal/AttachedFileDeleteModal';\nimport EndRecruitmentConfirmModal from './components/EndRecruitmentConfirmModal';\nimport { useDetail } from './hooks/useDetail';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\n\nconst TrashWrap = styled.span`\n font-size: 20px;\n cursor: pointer;\n\n &:hover {\n color: #333333;\n }\n`;\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst Detail = ({ event, attachedFiles, existApplicantUser = false }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'PR管理',\n },\n {\n text: '見学会・イベント情報',\n href: '/my_corporate/events',\n },\n {\n text: '見学会・イベント情報詳細',\n },\n ];\n const {\n // store\n isLoading,\n errors,\n errorMessage,\n pdfs,\n pdfUploadErrorMessage,\n control,\n // actions\n\n changeState,\n register,\n setValue,\n handleSubmit,\n watch,\n save,\n setId,\n trigger,\n initialize,\n addPdfFiles,\n deletePdfFile,\n onDelete,\n endRecruitment,\n } = useDetail();\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '220px',\n fontSize: '1rem',\n };\n const [cities, setCities] = useState([]);\n const [attachedTopImage, setAttachedTopImage] = useState(null);\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n const [\n isShowEndRecruitmentConfirmModal,\n setIsShowEndRecruitmentConfirmModal,\n ] = useState(false);\n const [isOpenFileUploadModal, setIsOpenFileUploadModal] = useState(false);\n const [isOpenAttachedFileDeleteModal, setIsOpenAttachedFileDeleteModal] =\n useState(false);\n const [deleteTargetFile, setDeleteTargetFile] = useState({\n id: null,\n file_id: null,\n filePath: null,\n name: null,\n });\n\n const now = useMemo(() => dayjs(), []);\n\n useEffect(() => {\n if (event?.pref_code) {\n return fetchCities(event.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n useEffect(() => {\n setId(event.id);\n initialize(event);\n if (event.target_facility_type_values.length > 0) {\n setValue('target_facility_type', event.target_facility_type_values);\n }\n }, []);\n\n useEffect(() => {\n if (watch('city_code') && cities?.length > 0) {\n const foundCity =\n cities.find(\n (city) =>\n city.id.toString() ===\n watch('city_code').toString().padStart(5, '0'),\n )?.name ?? null;\n setValue('city', foundCity);\n } else {\n setValue('city', null);\n }\n }, [watch('city_code'), cities]);\n\n useEffect(() => {\n if (attachedFiles) {\n changeState({\n pdfs: attachedFiles?.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n file_id: pdf.file_id,\n filePath: pdf.file_path,\n signedUrl: pdf.signed_url,\n uploadDate: pdf.upload_date,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n })),\n });\n }\n }, [attachedFiles]);\n\n useEffect(() => {\n useScrollToError(errors);\n }, [errors]);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n\n <form onSubmit={handleSubmit(save)}>\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"見学会・イベント情報詳細\"\n subTitle=\"見学会・イベント情報の編集を行います\"\n />\n </div>\n\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開催日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('event_date', {\n required: '開催日は必須です',\n })}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('event_date') ?? ''}\n onChange={(date) => {\n setValue('event_date', date);\n }}\n />\n <span className=\"text-danger\">\n {errors?.event_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開催時間 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div style={{ fontSize: '1rem' }}>\n <StyledTimePicker\n {...register('implementation_time_from', {\n required: '開催時間は必須です',\n })}\n disableClock\n format=\"HH:mm\"\n onChange={(time) =>\n setValue('implementation_time_from', time)\n }\n value={watch('implementation_time_from')}\n />\n <span className=\"ps-3 pe-2\">〜</span>\n <StyledTimePicker\n {...register('implementation_time_to', {\n required: '開催時間は必須です',\n })}\n disableClock\n format=\"HH:mm\"\n onChange={(time) =>\n setValue('implementation_time_to', time)\n }\n value={watch('implementation_time_to')}\n />\n </div>\n {(errors?.implementation_time_from?.message ||\n errors?.implementation_time_to?.message) && (\n <span className=\"text-danger\">開催時間は必須です</span>\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 公開開始日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('release_date', {\n required: '公開開始日は必須です',\n })}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('release_date') ?? ''}\n onChange={(date) => {\n setValue('release_date', date);\n }}\n />\n <span className=\"text-danger\">\n {errors?.release_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n ステータス\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0', fontSize: '1rem' }}>\n {event.status_for_facility}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n タイトル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('title', {\n required: 'タイトルは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"タイトル\"\n />\n <span className=\"text-danger\">\n {errors?.title?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 分類 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"event_type_1\"\n {...register('event_type', {\n required: '分類は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n />\n <label\n htmlFor=\"event_type_1\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 見学会\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"event_type_2\"\n {...register('event_type', {\n required: '分類は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n />\n <label\n htmlFor=\"event_type_2\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n イベント\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.event_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開催場所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('event_location', {\n required: '開催場所は必須です',\n })}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n placeholder=\"〇〇幼稚園、〇〇福祉法人本部\"\n />\n <span className=\"text-danger\">\n {errors?.event_location?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <Controller\n control={control}\n name=\"postal_code\"\n render={({ field: { onChange } }) => (\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"tel\"\n className=\"form-control\"\n id=\"postal_code\"\n placeholder=\"0123456\"\n maxLength={8}\n value={watch('postal_code') ?? ''}\n onChange={({ target: { value } }) => {\n const num = Number(value.replace('-', ''));\n // 入力桁数は8桁までで、ハイフンを含む数字を許容\n if (Number.isInteger(num)) {\n onChange(value);\n }\n }}\n />\n )}\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 都道府県 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n setValue('city_code', '');\n }}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.pref_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 市区町村 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <CitySelect\n register={register('city_code', {\n required: '市区町村は必須です',\n })}\n selectedValue={watch('city_code')?.toString()}\n prefecture={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('city_code', value);\n setValue(\n 'city',\n cities.find(\n (city) => city.id.toString() === value?.toString(),\n )?.name ?? null,\n );\n }}\n defaultCities={cities}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.city_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 丁番以下住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address', {\n required: '丁番以下住所は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 建物名など\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address2')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 対象施設種別 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"ho\"\n id=\"target_facility_type_ho\"\n />\n <label\n htmlFor=\"target_facility_type_ho\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 保育園\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"yo\"\n id=\"target_facility_type_yo\"\n />\n <label\n htmlFor=\"target_facility_type_yo\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 幼稚園\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"ko\"\n id=\"target_facility_type_ko\"\n />\n <label\n htmlFor=\"target_facility_type_ko\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 認定こども園\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('target_facility_type', {\n required: '対象施設種別は必須です ',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"target_facility_type_other\"\n />\n <label\n htmlFor=\"target_facility_type_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.target_facility_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 内容 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('subject', {\n required: '内容は必須です',\n })}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n />\n <span className=\"text-danger\">\n {errors?.subject?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 対象者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('target', {\n required: '内容は必須です',\n })}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n />\n <span className=\"text-danger\">\n {errors?.target?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('note')}\n className=\"form-control\"\n cols=\"30\"\n rows=\"5\"\n placeholder=\"当日の持ち物や服装など\"\n />\n <span className=\"text-danger\">{errors?.note?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 定員数 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('capacity', {\n required: '定員数は必須です',\n })}\n type=\"number\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.capacity?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 担当者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('person_in_charge', {\n required: '担当者は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 担当連絡先(TEL){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('person_in_charge_tel', {\n required:\n !watch('person_in_charge_tel') &&\n !watch('person_in_charge_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) =>\n !input ||\n (phoneReg.test(input) &&\n input\n .split('-')\n .filter((v) => !!v)\n .every((v) => !isNaN(Number(v)))),\n })}\n type=\"tel\"\n className=\"form-control\"\n placeholder=\"000-0000-0000\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge_tel?.type === 'validate' &&\n '電話番号の形式が正しくありません'}\n {errors?.person_in_charge_tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 担当連絡先(メール){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('person_in_charge_email', {\n required:\n !watch('person_in_charge_tel') &&\n !watch('person_in_charge_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) => !input || emailReg.test(input),\n })}\n type=\"email\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge_email?.type === 'validate' &&\n 'メールアドレスの形式が正しくありません'}\n {errors?.person_in_charge_email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n トップ写真\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div>\n <input\n {...register('top_image')}\n type=\"file\"\n className=\"form-control\"\n accept=\"image/*\"\n onChange={(e) => {\n const f = e.target.files;\n if (f.length === 0) {\n return setAttachedTopImage(null);\n }\n const blobUrl = window.URL.createObjectURL(f[0]);\n return setAttachedTopImage(blobUrl);\n }}\n />\n </div>\n <div className=\"mt-3\">\n {attachedTopImage ? (\n <img src={attachedTopImage} height={150} />\n ) : (\n <img\n src={\n event.top_image_file_path\n ? event.top_image_file_path\n : '/noimage.jpg'\n }\n height={150}\n />\n )}\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"py-3 d-flex justify-content-center\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <Paper\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"添付ファイル\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenFileUploadModal(true);\n }}\n />\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableHead>\n <HeadCell width={150} label=\"アップロード日\" />\n <HeadCell label=\"ファイル名\" />\n </TableHead>\n <TableBody>\n {pdfs.map((pdfData, i) => (\n <TableRow key={i}>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {pdfData.uploadDate}\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-row w-100 align-items-center\">\n <div className=\"d-flex justify-content-start w-100\">\n <a\n href={pdfData.signedUrl}\n target=\"_blank\"\n rel=\"nofollow\">\n {pdfData.name}\n </a>\n </div>\n <div className=\"d-flex justify-content-end w-100 me-2\">\n <TrashWrap\n onClick={() => {\n setIsOpenAttachedFileDeleteModal(true);\n setDeleteTargetFile({\n id: pdfData?.id,\n file_id: pdfData.file_id,\n filePath: pdfData.filePath,\n name: pdfData.name,\n });\n }}>\n <i className=\"bi bi-trash\"></i>\n </TrashWrap>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/events';\n }}\n />\n <BlackButton\n width={100}\n height={44}\n label=\"削除\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n disabled={existApplicantUser}\n />\n {cvtEventStatusValue(event.status) === EVENT_STATUS.PUBLISHED && (\n <OrangeButton\n width={100}\n height={44}\n label=\"募集終了\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowEndRecruitmentConfirmModal(true);\n }}\n />\n )}\n {cvtEventStatusValue(event.status) === EVENT_STATUS.DRAFT && (\n <OrangeButton\n width={100}\n height={44}\n label=\"下書き保存\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return save(watch());\n }}\n />\n )}\n <GreenButton\n width={100}\n height={44}\n label={\n cvtEventStatusValue(event.status) === EVENT_STATUS.DRAFT\n ? '紐付け施設選択'\n : '更新'\n }\n textFontSize={\n cvtEventStatusValue(event.status) === EVENT_STATUS.DRAFT ? 14 : 20\n }\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save(watch(), true);\n } else {\n return useScrollToError(errors);\n }\n }}\n />\n </div>\n </form>\n <EventAttachedFileUpload\n errorMessage={pdfUploadErrorMessage}\n isShow={isOpenFileUploadModal}\n onClose={() => setIsOpenFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n if (file) {\n return addPdfFiles({\n file: file,\n file_id: uuidv4(),\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n created_at: now.format('YYYY-MM-DD HH:mm:ss'),\n updated_at: now.format('YYYY-MM-DD HH:mm:ss'),\n }).then(() => setIsOpenFileUploadModal(false));\n }\n setIsOpenFileUploadModal(false);\n }}\n />\n <AttachedFileDeleteModal\n isShow={isOpenAttachedFileDeleteModal}\n fileName={deleteTargetFile.name}\n onHide={() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n file_id: null,\n filePath: null,\n name: null,\n });\n }}\n onDelete={() => {\n deletePdfFile(deleteTargetFile).finally(() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n file_id: null,\n filePath: null,\n name: null,\n });\n });\n }}\n />\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return onDelete(event.id);\n }}\n />\n <EndRecruitmentConfirmModal\n isShow={isShowEndRecruitmentConfirmModal}\n onHide={() => setIsShowEndRecruitmentConfirmModal(false)}\n onSubmit={() => {\n setIsShowEndRecruitmentConfirmModal(false);\n return endRecruitment(event.id);\n }}\n />\n </div>\n );\n};\nexport default Detail;\n","import React, { useCallback, useEffect } from 'react';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport Paper from '../../../../components/Paper/Paper';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport Pagination from '../../../../components/Paginations/BasicPagination';\nimport EventApplicantList from '../../../../components/Corporate/EventApplicantList';\nimport { useEventApplicantList } from '../hooks/useEventApplicantList';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\n\nconst List = ({ eventId, eventApplicants, currentPage, totalPages }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'PR管理',\n },\n {\n text: '見学会・イベント情報',\n href: '/my_corporate/events',\n },\n {\n text: '見学会・イベント情報詳細',\n href: `/my_corporate/events/${eventId}`,\n },\n {\n text: '応募者一覧',\n },\n ];\n\n const {\n targetIds,\n isLoading,\n\n initialize,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n download,\n changeConfirmed,\n downloadAll,\n } = useEventApplicantList();\n\n useEffect(() => {\n initialize({\n data: eventApplicants,\n });\n }, []);\n\n const paginate = useCallback((pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle title=\"応募者一覧\" subTitle=\"応募者の一覧を確認します\" />\n </div>\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-end w-100\">\n <GreenButton\n width={130}\n height={44}\n label=\"対応済にする\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => changeConfirmed(targetIds)}\n disabled={targetIds.length === 0}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"ダウンロード\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-people\" />}\n onClick={() => download(targetIds)}\n disabled={targetIds.length === 0}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"全件ダウンロード\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-people\" />}\n onClick={() => downloadAll(eventId)}\n />\n </div>\n </div>\n )}>\n <EventApplicantList\n data={eventApplicants}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n onClick={(id) =>\n (location.href = `/my_corporate/event_applicants/${id}`)\n }\n />\n <div className=\"d-flex w-100 justify-content-center mt-3 mb-2\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_corporate/events`;\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default List;\n","import React, { useEffect } from 'react';\nimport Paper from '../../../../components/Paper/Paper';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport { useFacilityList } from '../hooks/useFacilityList';\nimport FacilityList from '../../../../components/School/FacilityList';\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\n\nconst List = ({ event, facilities, defaultTargetIds }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'PR管理',\n },\n {\n text: '見学会・イベント情報',\n href: '/my_corporate/events',\n },\n {\n text: '見学会・イベント情報詳細',\n href: `/my_corporate/events/${event.id}`,\n },\n {\n text: '紐付け施設選択',\n },\n ];\n const {\n // store\n isLoading,\n targetIds,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n save,\n } = useFacilityList();\n\n useEffect(() => {\n changeState({ data: facilities, targetIds: defaultTargetIds });\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"紐付け施設選択\"\n subTitle=\"見学会・イベント情報を紐付ける施設を選択します\"\n />\n </div>\n <div className=\"mt-4\">対象:{event.title}</div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n ※見学会・イベント情報を紐づける施設にチェック☑して下さい\n </p>\n </div>\n </div>\n )}>\n <FacilityList\n data={facilities}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n showRecruitmentRegisteredAt={false}\n showRelatedRecruitmentTitle\n disableRecruitmentLink\n hideLink\n />\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_corporate/events/${event.id}`;\n }}\n />\n {event.status === 'published' ? (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n 既に公開中のため利用できません\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <GreenButton\n width={100}\n height={44}\n label=\"配信学校選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n }}\n disabled\n />\n </span>\n </OverlayTrigger>\n ) : (\n <GreenButton\n width={100}\n height={44}\n label=\"配信学校選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return save(event.id, targetIds);\n }}\n disabled={targetIds?.length === 0}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default List;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport { useMyCorporateEventListModule } from '../../../modules/MyCorporate/Event/listModule';\nimport RelatedFacilityModal from './components/RelatedFacilityModal';\nimport RelatedSchoolModal from './components/RelatedSchoolModal';\n\nconst List = ({ events, currentPage, totalPages }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'PR管理',\n },\n {\n text: '見学会・イベント情報',\n },\n ];\n\n const {\n // store\n isLoading,\n data,\n // actions\n initialize,\n } = useMyCorporateEventListModule();\n\n useEffect(() => {\n initialize(events);\n }, []);\n\n const paginate = useCallback((pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n }, []);\n const [relatedFacilityEventId, setRelatedFacilityEventId] = useState(null);\n const [relatedSchoolEventId, setRelatedSchoolEventId] = useState(null);\n const [targetEventName, setTargetEventName] = useState('');\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"見学会・イベント情報\"\n subTitle=\"見学会・イベント情報の一覧確認を行います\"\n />\n </div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"イベント情報一覧\" />\n </div>\n <div className=\"d-flex justify-content-end w-100\">\n <GreenButton\n width={130}\n height={44}\n label=\"新規登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-people\" />}\n onClick={() => (location.href = '/my_corporate/events/new')}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell width={120} className=\"text-center\" label=\"タイトル\" />\n <HeadCell width={80} className=\"text-center\" label=\"実施日\" />\n <HeadCell\n width={80}\n className=\"text-center\"\n label=\"紐付け施設数\"\n />\n <HeadCell width={80} className=\"text-center\" label=\"配信学校数\" />\n <HeadCell\n width={80}\n className=\"text-center\"\n label=\"学生確認数(PV)\"\n />\n <HeadCell width={80} className=\"text-center\" label=\"定員数\" />\n <HeadCell width={80} className=\"text-center\" label=\"応募者数\" />\n <HeadCell width={80} className=\"text-center\" label=\"ステータス\" />\n <HeadCell width={80} className=\"text-center\" label=\"\" />\n </TableHead>\n <TableBody>\n {data.map((event) => (\n <TableRow key={event.id}>\n <BodyCell className=\"text-center p-0 m-0\">\n <a href={`/my_corporate/events/${event.id}`}>\n {event.title ? event.title : '名称未設定'}\n </a>\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {event.event_date}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {event.facility_count > 0 ? (\n <span\n className=\"btn-link cursor-pointer\"\n onClick={() => {\n setRelatedFacilityEventId(event.id);\n setTargetEventName(event.title);\n }}>\n {event.facility_count}\n </span>\n ) : (\n <>{event.facility_count}</>\n )}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {event.school_count > 0 ? (\n <span\n className=\"btn-link cursor-pointer\"\n onClick={() => {\n setRelatedSchoolEventId(event.id);\n setTargetEventName(event.title);\n }}>\n {event.school_count}\n </span>\n ) : (\n <>{event.school_count}</>\n )}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {event.student_viewed_count}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {event.capacity}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {event.applicant_count > 0 ? (\n <a\n href={`/my_corporate/events/${event.id}/event_applicants`}>\n {event.applicant_count}\n </a>\n ) : (\n <>{event.applicant_count}</>\n )}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {event.status_for_facility}\n </BodyCell>\n <BodyCell\n className=\"text-center p-0 m-0\"\n style={{ width: '10%' }}>\n <div className=\"d-flex\">\n <GreenButton\n onClick={() =>\n (location.href = `/my_corporate/events/new?from=${event.id}`)\n }\n label=\"コピーして新規登録\"\n textFontSize={10}\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n />\n </div>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n <div className=\"d-flex w-100 justify-content-center py-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </div>\n </Paper>\n <div className=\"d-flex flex-column justify-content-center mt-4 mb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n />\n </div>\n <RelatedFacilityModal\n onHide={() => setRelatedFacilityEventId(null)}\n eventId={relatedFacilityEventId}\n eventName={targetEventName}\n isShow={!!relatedFacilityEventId}\n />\n <RelatedSchoolModal\n onHide={() => setRelatedSchoolEventId(null)}\n eventId={relatedSchoolEventId}\n eventName={targetEventName}\n isShow={!!relatedSchoolEventId}\n />\n </div>\n );\n};\n\nexport default List;\n","import React, { useEffect, useState } from 'react';\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport SchoolList from '../../../../components/Corporate/SchoolList';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport EventPublishConfirmModal from '../../../../components/Modal/EventPublishConfirmModal';\nimport Paper from '../../../../components/Paper/Paper';\nimport { useSchoolList } from '../hooks/useSchoolList';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\n\nconst List = ({ event, schools, defaultTargetIds }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'PR管理',\n },\n {\n text: '見学会・イベント情報',\n href: '/my_corporate/events',\n },\n {\n text: '見学会・イベント情報詳細',\n href: `/my_corporate/events/${event.id}`,\n },\n {\n text: '配信先学校選択',\n },\n ];\n\n const {\n // store\n isLoading,\n targetIds,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n save,\n } = useSchoolList();\n\n useEffect(() => {\n changeState({ data: schools, targetIds: defaultTargetIds });\n }, []);\n\n const [isOpenPublishModal, setIsOpenPublishModal] = useState(false);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"配信先学校選択\"\n subTitle=\"見学会・イベント情報を配信する学校を選択します\"\n />\n </div>\n <div className=\"mt-4\">対象:{event.title}</div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <div className=\"text-danger fw-bold\">\n ー 見学会・イベント情報を配信する学校にチェック☑して下さい\n </div>\n </div>\n </div>\n )}>\n <SchoolList\n data={schools}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n />\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_corporate/events/${event.id}`;\n }}\n />\n {event.status === 'published' ? (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n 既に公開中のため利用できません\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <GreenButton\n width={100}\n height={44}\n label=\"配信\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n }}\n disabled\n />\n </span>\n </OverlayTrigger>\n ) : (\n <GreenButton\n width={100}\n height={44}\n label=\"配信\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return setIsOpenPublishModal(true);\n }}\n disabled={targetIds?.length === 0}\n />\n )}\n </div>\n <EventPublishConfirmModal\n isShow={isOpenPublishModal}\n onOk={() => {\n setIsOpenPublishModal(false);\n return save(event.id, targetIds);\n }}\n onCancel={() => setIsOpenPublishModal(false)}\n />\n </div>\n );\n};\n\nexport default List;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\n\nconst DeleteModal = ({ isShow = false, onHide, onDelete }) => {\n return (\n <Modal\n size=\"md\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"delete-modal-title\"\n centered>\n <Modal.Body>\n <div\n className=\"d-flex justify-content-center\"\n style={{ fontSize: '20px' }}>\n この見学会・イベントを削除しますか?\n </div>\n <div\n className=\"text-danger d-flex justify-content-center\"\n style={{ fontSize: '14px' }}>\n ※応募者がいる場合は開催中止の自動メールが配信されます\n </div>\n <div\n className=\"text-danger d-flex justify-content-center\"\n style={{ fontSize: '14px' }}>\n ※必要に応じて応募者へご連絡下さい\n </div>\n <div className=\"d-flex mt-3 justify-content-center\">\n <GreenButton\n width={100}\n height={40}\n label=\"はい\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => onDelete()}\n />\n\n <GrayButton\n width={100}\n height={40}\n label=\"いいえ\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => onHide()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default DeleteModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\n\nconst EndRecruitmentConfirmModal = ({ isShow = false, onHide, onSubmit }) => {\n return (\n <Modal\n size=\"md\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"delete-modal-title\"\n centered>\n <Modal.Body>\n <div\n className=\"d-flex justify-content-center\"\n style={{ fontSize: '20px' }}>\n この見学会・イベントの募集を終了しますか?\n </div>\n <div\n className=\"text-danger d-flex justify-content-center\"\n style={{ fontSize: '14px' }}>\n ※学生は応募できませんが過去情報として確認可能です\n </div>\n <div className=\"d-flex mt-3 justify-content-center\">\n <GreenButton\n width={100}\n height={40}\n label=\"はい\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => onSubmit()}\n />\n\n <GrayButton\n width={100}\n height={40}\n label=\"いいえ\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => onHide()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default EndRecruitmentConfirmModal;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport FacilityList from '../../../../components/School/FacilityList';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\n\nconst RelatedFacilityModal = ({\n eventId,\n eventName,\n isShow = false,\n onHide,\n}) => {\n const [isLoading, setIsLoading] = useState(false);\n const [facilities, setFacilities] = useState([]);\n useEffect(() => {\n if (eventId) {\n onLoad(eventId);\n }\n }, [eventId]);\n\n const onLoad = useCallback(async (id) => {\n setIsLoading(true);\n setFacilities([]);\n try {\n const res = await HttpRequest.get(\n `/api/my_corporate/events/${id}/related_facilities`,\n );\n setFacilities(res.data.facilities);\n } finally {\n setIsLoading(false);\n }\n }, []);\n\n return (\n <>\n {isLoading ? (\n <LoadingOverlay loading={isLoading} />\n ) : (\n <Modal\n size=\"xl\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"related-facility\"\n centered>\n <Modal.Body>\n <div className=\"d-flex p-3\">対象:{eventName}</div>\n <div className=\"overflow-scroll\" style={{ height: '50vh' }}>\n <FacilityList\n data={facilities}\n hideLink\n hideCheck\n showStatus={false}\n showRecruitmentRegisteredAt={false}\n showRelatedRecruitmentTitle={false}\n showRelatedCorporateName={false}\n stickyHeader\n />\n </div>\n <div className=\"d-flex justify-content-center mt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n onHide();\n }}\n />\n </div>\n </Modal.Body>\n </Modal>\n )}\n </>\n );\n};\n\nexport default RelatedFacilityModal;\n","import React, { useEffect, useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport SchoolList from '../../../../components/Corporate/SchoolList';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\n\nconst RelatedSchoolModal = ({ eventId, eventName, isShow = false, onHide }) => {\n const [isLoading, setIsLoading] = useState(false);\n const [schools, setSchools] = useState([]);\n useEffect(() => {\n if (eventId) {\n onLoad(eventId);\n }\n }, [eventId]);\n\n const onLoad = async (id) => {\n setIsLoading(true);\n setSchools([]);\n try {\n const res = await HttpRequest.get(\n `/api/my_corporate/events/${id}/related_schools`,\n );\n setSchools(res.data.schools);\n } finally {\n setIsLoading(false);\n }\n };\n\n return (\n <>\n {isLoading ? (\n <LoadingOverlay loading={isLoading} />\n ) : (\n <Modal\n size=\"xl\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"related-facility\"\n centered>\n <Modal.Body>\n <div className=\"d-flex p-3\">対象:{eventName}</div>\n <SchoolList data={schools} hideCheck stickyHeader />\n <div className=\"d-flex justify-content-center mt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n onHide();\n }}\n />\n </div>\n </Modal.Body>\n </Modal>\n )}\n </>\n );\n};\n\nexport default RelatedSchoolModal;\n","import dayjs from 'dayjs';\nimport { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { toast } from 'react-toastify';\nimport { v4 as uuidv4 } from 'uuid';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport { EVENT_STATUS_ENUM } from '../../../../../utils/constant';\n\nconst P = 'MY_CORPORATE_EVENT_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_FILES = `${P}ADD_FILES`;\n\nconst initialState = {\n id: null,\n pdfs: [],\n isLoading: false,\n errorMessage: '',\n pdfUploadErrorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_FILES: {\n return { ...state, pdfs: [...state.pdfs, { ...payload }] };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCreate = () => {\n const [\n { id, pdfs, isLoading, errorMessage, pdfUploadErrorMessage },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n control,\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n trigger,\n } = useForm({\n mode: 'all',\n defaultValues: {\n target_facility_type: [],\n },\n });\n\n const initialize = useCallback((event) => {\n for (const k of Object.keys(event ?? {})) {\n if ((k === 'release_date' || k === 'event_date') && event[k]) {\n setValue(k, dayjs(event[k], 'YYYY/MM/DD').toDate());\n } else {\n setValue(k, event[k]);\n }\n }\n }, []);\n\n const save = useCallback(\n async (data, toFacility = false) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n let fPath = data.origin_top_image_file_path;\n if (data.top_image.length >= 1) {\n const file = data.top_image[0];\n const formData = new FormData();\n formData.append(\n 'name',\n `${data.id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'events');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n fPath = file_path;\n }\n const pdfFileInfos = pdfs.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n file_id: pdf.file_id,\n file_path: pdf.filePath,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n }));\n const {\n data: { id, status },\n } = await HttpRequest.post(`/api/my_corporate/events`, {\n ...data,\n target_facility_type: data.target_facility_type\n ? data.target_facility_type?.join(',')\n : '',\n status: EVENT_STATUS_ENUM.DRAFT,\n event_attached_files: pdfFileInfos,\n top_image_file_path: fPath,\n });\n\n if (status === 'draft' && toFacility) {\n location.href = `/my_corporate/events/${id}/facilities`;\n } else {\n location.href = `/my_corporate/events/${id}`;\n }\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [id, pdfs, mask, unmask],\n );\n\n const addPdfFiles = useCallback(\n async ({ file, file_id, name, uploadDate, created_at, updated_at }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'event_files');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n dispatch({\n type: ADD_FILES,\n payload: {\n name,\n file_id,\n uploadDate,\n filePath: file_path,\n signedUrl: signed_url,\n created_at,\n updated_at,\n },\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const deletePdfFile = useCallback(\n async ({ id, file_id }) => {\n try {\n mask();\n const targetPdf = pdfs.find((v) => v.file_id === file_id);\n if (id) {\n // 登録済みのファイルを削除\n await HttpRequest.delete(\n `/api/my_corporate/event_attached_files/${id}?file_id=${file_id}`,\n );\n }\n toast.success(`「${targetPdf.name}」を削除しました`);\n changeState({\n pdfs: pdfs.filter((pdf) => pdf.file_id !== file_id),\n });\n } catch (e) {\n toast.error('削除できませんでした');\n } finally {\n unmask();\n }\n },\n [dispatch, pdfs],\n );\n\n return {\n // store\n isLoading,\n pdfs,\n errors,\n errorMessage,\n pdfUploadErrorMessage,\n control,\n // actions\n initialize,\n addPdfFiles,\n mask,\n unmask,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n trigger,\n deletePdfFile,\n };\n};\n","import dayjs from 'dayjs';\nimport { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport { toast } from 'react-toastify';\nimport { v4 as uuidv4 } from 'uuid';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_EVENT_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_FILES = `${P}ADD_FILES`;\n\nconst initialState = {\n id: null,\n pdfs: [],\n isLoading: false,\n errorMessage: '',\n pdfUploadErrorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_FILES: {\n return { ...state, pdfs: [...state.pdfs, { ...payload }] };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useDetail = () => {\n const [\n { id, pdfs, isLoading, errorMessage, pdfUploadErrorMessage },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n control,\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n trigger,\n } = useForm({\n mode: 'all',\n defaultValues: {\n target_facility_type: [],\n },\n });\n\n const initialize = useCallback((event) => {\n for (const k of Object.keys(event ?? {})) {\n if ((k === 'release_date' || k === 'event_date') && event[k]) {\n setValue(k, dayjs(event[k], 'YYYY/MM/DD').toDate());\n } else {\n setValue(k, event[k]);\n }\n }\n }, []);\n\n const setId = useCallback((_id) => changeState({ id: _id }), []);\n\n const save = useCallback(\n async (data, toFacility = false) => {\n changeState({ errorMessage: '' });\n\n mask();\n try {\n let fPath = data.origin_top_image_file_path;\n if (data.top_image.length >= 1) {\n const file = data.top_image[0];\n const formData = new FormData();\n formData.append(\n 'name',\n `${data.id}_${uuidv4().replaceAll('-', '').substring(0, 12)}`,\n );\n formData.append('prefix', 'events');\n formData.append('file', file);\n\n const {\n data: { file_path },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n fPath = file_path;\n }\n const pdfFileInfos = pdfs.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n file_id: pdf.file_id,\n file_path: pdf.filePath,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n }));\n const {\n data: { status },\n } = await HttpRequest.put(`/api/my_corporate/events/${id}`, {\n ...data,\n target_facility_type: data.target_facility_type\n ? data.target_facility_type?.join(',')\n : '',\n event_attached_files: pdfFileInfos,\n top_image_file_path: fPath,\n });\n\n if (status === 'draft' && toFacility) {\n location.href = `/my_corporate/events/${id}/facilities`;\n } else {\n location.href = `/my_corporate/events/${id}`;\n }\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n } finally {\n unmask();\n }\n },\n [id, pdfs, mask, unmask],\n );\n\n const addPdfFiles = useCallback(\n async ({ file, file_id, name, uploadDate, created_at, updated_at }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'event_files');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n dispatch({\n type: ADD_FILES,\n payload: {\n name,\n file_id,\n uploadDate,\n filePath: file_path,\n signedUrl: signed_url,\n created_at,\n updated_at,\n },\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const deletePdfFile = useCallback(\n async ({ id, file_id }) => {\n try {\n mask();\n const targetPdf = pdfs.find((v) => v.file_id === file_id);\n if (id) {\n // 登録済みのファイルを削除\n await HttpRequest.delete(\n `/api/my_corporate/event_attached_files/${id}?file_id=${file_id}`,\n );\n }\n toast.success(`「${targetPdf.name}」を削除しました`);\n changeState({\n pdfs: pdfs.filter((pdf) => pdf.file_id !== file_id),\n });\n } catch (e) {\n toast.error('削除できませんでした');\n } finally {\n unmask();\n }\n },\n [dispatch, pdfs],\n );\n\n const onDelete = useCallback(async (id) => {\n mask();\n try {\n await HttpRequest.delete(`/api/my_corporate/events/${id}`);\n location.href = '/my_corporate/events';\n } catch (e) {\n if (e?.response?.data?.code === 'ALREADY_APPLICANT') {\n toast.error('学生からの応募が確認されたため削除できませんでした');\n }\n } finally {\n unmask();\n }\n }, []);\n\n const endRecruitment = useCallback(async (id) => {\n mask();\n try {\n await HttpRequest.put(`/api/my_corporate/events/${id}/stop_recruitment`);\n location.href = location.href;\n } finally {\n unmask();\n }\n }, []);\n\n return {\n // store\n isLoading,\n pdfs,\n errors,\n errorMessage,\n pdfUploadErrorMessage,\n control,\n // actions\n addPdfFiles,\n mask,\n unmask,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n setId,\n trigger,\n initialize,\n deletePdfFile,\n onDelete,\n endRecruitment,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_EVENT_APPLICANT_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n targetIds: [],\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useEventApplicantList = () => {\n const [{ data, targetIds, isLoading }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((d) => d.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n /**\n * 応募情報ダウンロード\n */\n const download = useCallback(async (targetIds) => {\n mask();\n try {\n location.href = `/my_corporate/event_applicants/csv_exports/new.csv?target_ids=${targetIds.join(\n ',',\n )}`;\n } finally {\n unmask();\n }\n }, []);\n\n const changeConfirmed = useCallback(async (targetIds) => {\n mask();\n try {\n await HttpRequest.patch(\n `/api/my_corporate/event_applicants/change_statuses`,\n {\n target_ids: targetIds,\n },\n );\n location.href = location.href;\n } finally {\n unmask();\n }\n }, []);\n\n const downloadAll = useCallback(async (eventId) => {\n mask();\n try {\n location.href = `/my_corporate/event_applicants/csv_exports/new.csv?all=true&event_id=${eventId}`;\n } finally {\n unmask();\n }\n }, []);\n\n return {\n // store\n targetIds,\n isLoading,\n // actions\n initialize,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n download,\n changeConfirmed,\n downloadAll,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_EVENT_FACILITY_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n targetIds: [],\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useFacilityList = () => {\n const [{ isLoading, data, targetIds, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((facility) => facility.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n const save = useCallback(\n async (eventId, targetIds) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/my_corporate/events/${eventId}/facilities`,\n {\n target_ids: targetIds,\n },\n );\n\n location.href = `/my_corporate/events/${eventId}/schools`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n data,\n targetIds,\n errorMessage,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n save,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_EVENT_SCHOOL_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n isLoading: false,\n targetIds: [],\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default:\n return state;\n }\n};\n\nexport const useSchoolList = () => {\n const [{ isLoading, data, targetIds, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((facility) => facility.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n const save = useCallback(\n async (eventId, targetIds) => {\n mask();\n try {\n await HttpRequest.post(`/api/my_corporate/events/${eventId}/schools`, {\n target_ids: targetIds,\n });\n\n location.href = `/my_corporate/events`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n data,\n targetIds,\n errorMessage,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n save,\n };\n};\n","import React, { useCallback, useState } from 'react';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\n\nconst Detail = ({ eventApplicant }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '応募管理',\n },\n {\n text: '応募者一覧',\n href: '/my_corporate/event_applicants',\n },\n ];\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '220px',\n fontSize: '1rem',\n };\n const [managementStatus, setManagementStatus] = useState(\n eventApplicant.management_status,\n );\n const [isLoading, setIsLoading] = useState(false);\n\n const statuses = [\n {\n label: '未対応',\n value: 'default',\n },\n {\n label: '対応済',\n value: 'confirmed',\n },\n ];\n\n const onSave = useCallback(async (id, status) => {\n setIsLoading(true);\n try {\n await HttpRequest.patch(\n `/api/my_corporate/event_applicants/${id}/change_status`,\n {\n status,\n },\n );\n location.href = location.href;\n } finally {\n setIsLoading(false);\n }\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"応募者情報詳細\"\n subTitle=\"応募者情報の詳細を確認できます\"\n />\n </div>\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n ステータス\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0', fontSize: '1rem' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n {statuses.map((s) => (\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id={`management_status_${s.value}`}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value={s.value}\n onChange={({ target: { value } }) =>\n setManagementStatus(value)\n }\n checked={managementStatus === s.value}\n />\n <label\n htmlFor={`management_status_${s.value}`}\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n {s.label}\n </label>\n </div>\n ))}\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 応募日\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.applicant_date}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 氏名\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.user_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 所属学校\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.school_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 卒業予定年度\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.graduation_year}年度\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 取得予定資格\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.scheduled_acquisition_certificate_values.join(\n '、',\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n メール\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.email}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n TEL\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.tel}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 連絡事項等\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.contact_info}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 応募先イベント\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {eventApplicant.parent_event.title}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/event_applicants';\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSave(eventApplicant.id, managementStatus);\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default Detail;\n","import React, { useCallback, useEffect } from 'react';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport Paper from '../../../components/Paper/Paper';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport EventApplicantList from '../../../components/Corporate/EventApplicantList';\nimport { useList } from './hooks/useList';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\n\nconst List = ({ eventApplicants, currentPage, totalPages }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '応募管理',\n },\n {\n text: '応募者一覧',\n },\n ];\n\n const {\n targetIds,\n isLoading,\n\n initialize,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n download,\n changeConfirmed,\n downloadAll,\n } = useList();\n\n useEffect(() => {\n initialize({\n data: eventApplicants,\n });\n }, []);\n\n const paginate = useCallback((pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle title=\"応募者一覧\" subTitle=\"応募者の一覧を確認します\" />\n </div>\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-end w-100\">\n <GreenButton\n width={130}\n height={44}\n label=\"対応済にする\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => changeConfirmed(targetIds)}\n disabled={targetIds.length === 0}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"ダウンロード\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-people\" />}\n onClick={() => download(targetIds)}\n disabled={targetIds.length === 0}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"全件ダウンロード\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-people\" />}\n onClick={() => downloadAll()}\n />\n </div>\n </div>\n )}>\n <EventApplicantList\n data={eventApplicants}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n onClick={(id) =>\n (location.href = `/my_corporate/event_applicants/${id}`)\n }\n />\n <div className=\"d-flex w-100 justify-content-center mt-3 mb-2\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default List;\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'MY_CORPORATE_EVENT_APPLICANT_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst ADD_TARGET_IDS = `${P}ADD_TARGET_IDS`;\nconst REMOVE_TARGET_IDS = `${P}REMOVE_TARGET_IDS`;\n\nconst initialState = {\n data: [],\n targetIds: [],\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case ADD_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.concat(\n ids.filter((_) => !state.targetIds.includes(_)),\n ),\n };\n }\n case REMOVE_TARGET_IDS: {\n const { ids } = payload;\n return {\n ...state,\n targetIds: state.targetIds.filter((_) => !ids.includes(_)),\n };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useList = () => {\n const [{ data, targetIds, isLoading }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const addTargetId = useCallback(\n (id) =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: [id],\n },\n }),\n [dispatch],\n );\n\n const removeTargetId = useCallback(\n (id) =>\n dispatch({\n type: REMOVE_TARGET_IDS,\n payload: {\n ids: [id],\n isMultiple: false,\n },\n }),\n [dispatch],\n );\n\n const addAllTargets = useCallback(\n () =>\n dispatch({\n type: ADD_TARGET_IDS,\n payload: {\n ids: data.map((d) => d.id),\n },\n }),\n [data],\n );\n\n const removeAllTargets = useCallback(\n () =>\n dispatch({\n type: CHANGE_STATE,\n payload: {\n targetIds: [],\n },\n }),\n [dispatch],\n );\n\n /**\n * 応募情報ダウンロード\n */\n const download = useCallback(async (targetIds) => {\n mask();\n try {\n location.href = `/my_corporate/event_applicants/csv_exports/new.csv?target_ids=${targetIds.join(\n ',',\n )}`;\n } finally {\n unmask();\n }\n }, []);\n\n const downloadAll = useCallback(async () => {\n mask();\n try {\n location.href =\n '/my_corporate/event_applicants/csv_exports/new.csv?all=true';\n } finally {\n unmask();\n }\n }, []);\n\n const changeConfirmed = useCallback(async (targetIds) => {\n mask();\n try {\n await HttpRequest.patch(\n `/api/my_corporate/event_applicants/change_statuses`,\n {\n target_ids: targetIds,\n },\n );\n location.href = location.href;\n } finally {\n unmask();\n }\n }, []);\n\n return {\n // store\n targetIds,\n isLoading,\n // actions\n initialize,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n download,\n changeConfirmed,\n downloadAll,\n };\n};\n","import React, { useEffect, useState } from 'react';\n\nimport DatePicker from 'react-datepicker';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport { Controller } from 'react-hook-form';\nimport { fetchCities } from '../../../../api/common';\nimport {\n FACILITY_AUTHORIZATIONS,\n FACILITY_OPERATOR,\n FACILITY_EN_TYPES,\n FACILITY_FACILITY_TYPES,\n} from '../../../../utils/constant';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport { useMyCorporateFacilityCreateModule } from '../../../modules/MyCorporate/Facility/createModule';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport { urlReg } from '../../../../utils/common';\n\nconst Create = () => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '基本情報',\n },\n {\n text: '施設情報',\n href: '/my_corporate/facilities',\n },\n {\n text: '新規施設登録',\n },\n ];\n\n const {\n // store\n isLoading,\n errors,\n // actions\n control,\n register,\n handleSubmit,\n watch,\n setValue,\n save,\n saveDraft,\n } = useMyCorporateFacilityCreateModule();\n\n const [attachedTopImage, setAttachedTopImage] = useState(null);\n const [cities, setCities] = useState([]);\n\n useEffect(() => {\n if (watch('pref_code')) {\n return fetchCities(watch('pref_code')).then((cities) =>\n setCities(cities),\n );\n } else {\n setCities([]);\n }\n }, [watch('pref_code')]);\n\n useEffect(() => {\n if (watch('city_code') && cities?.length > 0) {\n const foundCity =\n cities.find(\n (city) =>\n city.id.toString() ===\n watch('city_code').toString().padStart(5, '0'),\n )?.name ?? null;\n setValue('city', foundCity);\n } else {\n setValue('city', null);\n }\n }, [watch('city_code'), cities]);\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '170px',\n fontSize: '1rem',\n };\n\n return (\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"新規施設登録\"\n subTitle=\"施設情報の新規登録を行います\"\n />\n </div>\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('name', { required: '施設名は必須です' })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">{errors?.name?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設種別 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('facility_type', {\n required: '施設種別は必須です',\n })}\n className=\"form-select\">\n <optgroup label=\"▼幼保系---------------\">\n {FACILITY_EN_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n <optgroup label=\"▼施設系---------------\">\n {FACILITY_FACILITY_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n </select>\n <span className=\"text-danger\">\n {errors?.facility_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設種別備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('facility_type_remark', {\n required: [\n 'その他(幼保系)',\n 'その他(施設系)',\n ].includes(watch('facility_type'))\n ? 'その他を選んだ場合は必須です'\n : false,\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.facility_type_remark?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 運営者区分 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('operator', {\n required: '運営者区分は必須です',\n })}\n className=\"form-select\">\n {FACILITY_OPERATOR.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.operator?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 許認可 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('authorization', {\n required: '許認可は必須です',\n })}\n className=\"form-select\">\n {FACILITY_AUTHORIZATIONS.map((authorization) => (\n <option key={authorization} value={authorization}>\n {authorization}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.authorization?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開園日\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('opening_date')}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('opening_date') ?? ''}\n onChange={(date) => {\n setValue('opening_date', date);\n }}\n />\n <span className=\"text-danger\">\n {errors?.opening_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設代表者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('representative_name', {\n required: '施設代表者は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.representative_name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 代表者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('representative_job_title')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <Controller\n control={control}\n name=\"postal_code\"\n render={({ field: { onChange } }) => (\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"tel\"\n className=\"form-control\"\n id=\"postal_code\"\n placeholder=\"0123456\"\n maxLength={8}\n value={watch('postal_code') ?? ''}\n onChange={({ target: { value } }) => {\n const num = Number(value.replace('-', ''));\n // 入力桁数は8桁までで、ハイフンを含む数字を許容\n if (Number.isInteger(num)) {\n onChange(value);\n }\n }}\n />\n )}\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 都道府県 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n setValue('city_code', '');\n }}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.pref_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 市区町村 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <CitySelect\n register={register('city_code', {\n required: '市区町村は必須です',\n })}\n selectedValue={watch('city_code')}\n prefecture={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('city_code', value);\n setValue(\n 'city',\n cities.find(\n (city) => city.id.toString() === value?.toString(),\n )?.name ?? null,\n );\n }}\n defaultCities={[]}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.city_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 丁番以下住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address', {\n required: '丁番以下住所は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 建物名など\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address2')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n TEL <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('tel', {\n required: 'TELは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">{errors?.tel?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 公式HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('site_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.site_url?.type === 'validate' &&\n '公式HPの形式が正しくありません'}\n {errors?.site_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n その他HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_url?.type === 'validate' &&\n 'その他HPの形式が正しくありません'}\n {errors?.other_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 定員\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('children_count_limit')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 在園児\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('children_count')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 学級数\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('facility_class_grade_number')}\n type=\"number\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園の紹介\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('feature')}\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n トップ写真\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div>\n <input\n {...register('top_image')}\n type=\"file\"\n className=\"form-control\"\n accept=\"image/*\"\n onChange={(e) => {\n const f = e.target.files;\n if (f.length === 0) {\n return setAttachedTopImage(null);\n }\n const blobUrl = window.URL.createObjectURL(f[0]);\n return setAttachedTopImage(blobUrl);\n }}\n />\n </div>\n <div className=\"mt-3\">\n <img\n src={\n attachedTopImage ? attachedTopImage : '/noimage.jpg'\n }\n height={150}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/facilities';\n }}\n />\n <OrangeButton\n width={100}\n height={40}\n label=\"下書き保存\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return saveDraft(watch());\n }}\n />\n <GreenButton\n width={100}\n height={40}\n label=\"公開\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </div>\n </form>\n );\n};\n\nexport default Create;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport {\n FACILITY_AUTHORIZATIONS,\n FACILITY_OPERATOR,\n FACILITY_STATUS,\n FACILITY_EN_TYPES,\n FACILITY_FACILITY_TYPES,\n} from '../../../../utils/constant';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport { useMyCorporateFacilityDetailModule } from '../../../modules/MyCorporate/Facility/detailModule';\nimport { urlReg } from '../../../../utils/common';\n\nimport ja from 'date-fns/locale/ja';\nimport DatePicker, { registerLocale } from 'react-datepicker';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport { Controller } from 'react-hook-form';\nimport { fetchCities } from '../../../../api/common';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport DisconnectModal from './Modal/DisconnectModal';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport DeleteModal from './Modal/DeleteModal';\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '基本情報',\n },\n {\n text: '施設情報',\n href: '/my_corporate/facilities',\n },\n {\n text: '施設情報詳細',\n },\n];\n\nconst Detail = ({ facility: defaultFacility }) => {\n const [topImageDeleteFacilityId, setTopImageDeleteFacilityId] = useState();\n const [cities, setCities] = useState([]);\n\n const {\n // store\n facility,\n isLoading,\n errors,\n // actions\n control,\n initializeFacility,\n register,\n handleSubmit,\n watch,\n setValue,\n save,\n onDelete,\n trigger,\n onDisconnect,\n deleteFacilityTopImage,\n } = useMyCorporateFacilityDetailModule();\n\n useEffect(() => {\n initializeFacility(defaultFacility);\n }, []);\n\n useEffect(() => {\n if (defaultFacility?.pref_code) {\n return fetchCities(defaultFacility?.pref_code).then((cities) =>\n setCities(cities),\n );\n }\n }, []);\n\n useEffect(() => {\n if (watch('city_code') && cities?.length > 0) {\n const foundCity =\n cities.find(\n (city) =>\n city.id.toString() ===\n watch('city_code').toString().padStart(5, '0'),\n )?.name ?? null;\n setValue('city', foundCity);\n } else {\n setValue('city', null);\n }\n }, [watch('city_code'), cities]);\n\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n const [isShowDisconnectModal, setIsShowDisconnectModal] = useState(false);\n\n const [attachedTopImage, setAttachedTopImage] = useState(null);\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '170px',\n fontSize: '1rem',\n };\n\n return (\n <>\n <form\n onSubmit={handleSubmit(save)}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }}>\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"施設情報詳細\"\n subTitle=\"施設情報の詳細確認を行います\"\n />\n </div>\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('name', {\n required: '施設名は必須です',\n validate: (input) => input !== '名称未設定',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.name?.type === 'validate' &&\n 'その名前は使用できません'}\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設種別 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <select\n {...register('facility_type', {\n required: '施設種別は必須です',\n })}\n className=\"form-select\">\n <optgroup label=\"▼幼保系---------------\">\n {FACILITY_EN_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n <optgroup label=\"▼施設系---------------\">\n {FACILITY_FACILITY_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n </select>\n <span className=\"text-danger\">\n {errors?.facility_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設種別備考\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('facility_type_remark', {\n required: [\n 'その他(幼保系)',\n 'その他(施設)',\n ].includes(watch('facility_type'))\n ? 'その他を選んだ場合は必須です'\n : false,\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.facility_type_remark?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 運営者区分 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <select\n {...register('operator', {\n required: '運営者区分は必須です',\n })}\n className=\"form-select\">\n {FACILITY_OPERATOR.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.operator?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 許認可 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <select\n {...register('authorization', {\n required: '許認可は必須です',\n })}\n className=\"form-select\">\n {FACILITY_AUTHORIZATIONS.map((authorization) => (\n <option key={authorization} value={authorization}>\n {authorization}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.authorization?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 開園日\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('opening_date')}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('opening_date') ?? ''}\n onChange={(date) => {\n setValue('opening_date', date);\n }}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 施設代表者\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('representative_name')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 代表者役職\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('representative_job_title')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <Controller\n control={control}\n name=\"postal_code\"\n render={({ field: { onChange } }) => (\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"tel\"\n className=\"form-control\"\n id=\"postal_code\"\n placeholder=\"0123456\"\n maxLength={8}\n value={watch('postal_code') ?? ''}\n onChange={({ target: { value } }) => {\n const num = Number(value.replace('-', ''));\n // 入力桁数は8桁までで、ハイフンを含む数字を許容\n if (Number.isInteger(num)) {\n onChange(value);\n }\n }}\n />\n )}\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 都道府県 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n setValue('city_code', '');\n }}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.pref_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 市区町村 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <CitySelect\n register={register('city_code', {\n required: '市区町村は必須です',\n })}\n selectedValue={watch('city_code')?.toString()}\n prefecture={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('city_code', value);\n setValue(\n 'city',\n cities.find(\n (city) =>\n city.id.toString() === value?.toString(),\n )?.name ?? null,\n );\n }}\n defaultCities={cities}\n editMode\n />\n <span className=\"text-danger\">\n {errors?.city_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 丁番以下住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address', {\n required: '丁番以下住所は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 建物名など\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_address2')}\n type=\"text\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n TEL <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('tel', {\n required: 'TELは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 公式HP\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('site_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.site_url?.type === 'validate' &&\n 'HPの形式が正しくありません'}\n {errors?.site_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n その他HP\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('other_url', {\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.other_url?.type === 'validate' &&\n 'その他HPの形式が正しくありません'}\n {errors?.other_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 定員\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('children_count_limit')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 在園児\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('children_count')}\n type=\"number\"\n className=\"form-control\"\n placeholder=\"100\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 学級数\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('facility_class_grade_number')}\n type=\"number\"\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園の紹介\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('feature')}\n cols=\"30\"\n rows=\"10\"\n className=\"form-control\"\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n setValue('feature', `${watch('feature')}\\n`);\n }\n }}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n トップ写真\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div>\n <input\n {...register('top_image')}\n type=\"file\"\n className=\"form-control\"\n accept=\"image/*\"\n onChange={(e) => {\n const f = e.target.files;\n if (f.length === 0) {\n return setAttachedTopImage(null);\n }\n const blobUrl = window.URL.createObjectURL(f[0]);\n return setAttachedTopImage(blobUrl);\n }}\n />\n </div>\n <div className=\"mt-3\">\n {attachedTopImage ? (\n <img src={attachedTopImage} height={150} />\n ) : (\n <img\n src={\n facility.top_image_file_path\n ? facility.top_image_file_path\n : '/noimage.jpg'\n }\n height={150}\n />\n )}\n </div>\n {facility.origin_top_image_file_path && (\n <div className=\"mt-3\">\n <GrayButton\n onClick={(e) => {\n e.preventDefault();\n setTopImageDeleteFacilityId(facility.id);\n }}\n width={90}\n height={30}\n label=\"画像削除\"\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n </div>\n )}\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <BlackButton\n width={100}\n height={40}\n label=\"閉園\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n />\n <BlackButton\n width={120}\n height={40}\n label=\"運営会社変更\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDisconnectModal(true);\n }}\n />\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/facilities';\n }}\n />\n {facility.status === FACILITY_STATUS.DRAFT && (\n <OrangeButton\n width={100}\n height={40}\n label=\"下書き保存\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return save(watch());\n }}\n />\n )}\n\n <GreenButton\n width={100}\n height={40}\n label={\n facility.status === FACILITY_STATUS.DRAFT ? '公開' : '更新'\n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save({\n ...watch(),\n status: FACILITY_STATUS.PUBLISHED,\n });\n }\n }}\n />\n </div>\n </div>\n </form>\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return onDelete(facility.id);\n }}\n />\n <DisconnectModal\n isShow={isShowDisconnectModal}\n onHide={() => setIsShowDisconnectModal(false)}\n onDisconnect={() => {\n setIsShowDisconnectModal(false);\n return onDisconnect(facility.id);\n }}\n />\n <DeleteModal\n isShow={!!topImageDeleteFacilityId}\n onHide={() => setTopImageDeleteFacilityId(null)}\n onDelete={() => deleteFacilityTopImage(topImageDeleteFacilityId)}\n okLabel=\"はい\"\n cancelLabel=\"いいえ\"\n message=\"削除しますか?\"\n />\n </>\n );\n};\n\nDetail.propTypes = {\n facility: PropTypes.object,\n};\n\nexport default Detail;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport styled from 'styled-components';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\n\nconst HeaderContent = styled.div`\n font-size: 32px;\n font-weight: bold;\n color: #7a7979;\n`;\n\nconst DeleteModal = ({ isShow = false, onHide, onDelete }) => {\n return (\n <Modal\n size=\"lg\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"delete-modal-title\"\n centered>\n <Modal.Header style={{ borderBottom: 'none' }} className=\"pt-4\">\n <Modal.Title\n id=\"delete-modal-title\"\n className=\"d-flex flex-row w-100 justify-content-center\">\n <HeaderContent>閉園処理を実施しますか?</HeaderContent>\n </Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <div\n className=\"d-flex flex-column px-4\"\n style={{\n color: '#7a7979',\n }}>\n <div>・学生画面/施設画面から施設情報が削除されます</div>\n <div>・学生画面/施設画面から求人情報・添付資料が削除されます</div>\n <div>・この処理は元に戻せません</div>\n </div>\n </Modal.Body>\n <Modal.Footer style={{ borderTop: 'none' }} className=\"pb-4\">\n <div className=\"d-flex w-100 justify-content-center\">\n <GreenButton\n width={100}\n height={40}\n label=\"はい\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onDelete()}\n />\n <GrayButton\n width={100}\n height={40}\n label=\"いいえ\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onDelete()}\n />\n </div>\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default DeleteModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport styled from 'styled-components';\n\nconst HeaderContent = styled.div`\n font-size: 16px;\n`;\nconst DisconnectModal = ({ isShow = false, onHide, onDisconnect }) => {\n return (\n <Modal\n size=\"lg\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"delete-modal-title\"\n centered>\n <Modal.Header style={{ borderBottom: 'none' }}>\n <Modal.Title id=\"delete-modal-title\" className=\"d-flex flex-row w-100\">\n <HeaderContent>確認</HeaderContent>\n </Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <div>\n 運営会社が貴社から変更された場合は、貴社施設一覧から削除されます。よろしいですか?\n </div>\n <div></div>\n </Modal.Body>\n <Modal.Footer>\n <button\n type=\"button\"\n className=\"btn btn-link text-black text-decoration-none\"\n data-bs-dismiss=\"modal\"\n onClick={() => onHide()}>\n キャンセル\n </button>\n <button\n type=\"button\"\n className=\"btn btn-link text-danger text-decoration-none\"\n onClick={() => onDisconnect()}>\n 運営会社を変更する\n </button>\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default DisconnectModal;\n","import PropTypes from 'prop-types';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { fetchCities } from '../../../../api/common';\nimport { paramsToObject } from '../../../../utils/common';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilitySearchModal from '../../../components/Modal/FacilitySearchModal';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Paper from '../../../components/Paper/Paper';\nimport FacilityList from '../../../components/School/FacilityList';\nimport InlineSearch from '../../../components/Search/InlineSearch';\nimport { useMyCorporateFacilityListModule } from '../../../modules/MyCorporate/Facility/listModule';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\n\nconst SearchableList = (props) => {\n const {\n facilities: defaultFacilities,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n } = props;\n\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '施設情報',\n },\n ];\n\n const {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n isOpenSearchModal,\n currentPage,\n totalPages,\n // actions\n initialize,\n updateFilter,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n openSearchModal,\n closeSearchModal,\n uploadFacilityTopImage,\n deleteFacilityTopImage,\n } = useMyCorporateFacilityListModule();\n\n const modalUsed = Object.entries(filter)\n .filter((keys) => keys[0] !== 'page' && keys[1] !== 'name')\n .map((keys) => keys[1])\n .some((key) => !!key);\n\n const [cities, setCities] = useState([]);\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n data: defaultFacilities,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n filter: {\n page: defaultCurrentPage,\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : null,\n city_code: r.city_code ? r.city_code : null,\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n eventSubmitted: r.eventSubmitted === 'true',\n hasComment: r.hasComment === 'true',\n ho: r.ho ? r.ho === 'true' : true,\n yo: r.yo ? r.yo === 'true' : true,\n ko: r.ko ? r.ko === 'true' : true,\n ko_ho: r.ko_ho ? r.ko_ho === 'true' : true,\n ko_yo: r.ko_yo ? r.ko_yo === 'true' : true,\n ko_yoho: r.ko_yoho ? r.ko_yoho === 'true' : true,\n ko_sairyo: r.ko_sairyo ? r.ko_sairyo === 'true' : true,\n shokibo: r.shokibo ? r.shokibo === 'true' : true,\n shokibo_a: r.shokibo_a ? r.shokibo_a === 'true' : true,\n shokibo_b: r.shokibo_b ? r.shokibo_b === 'true' : true,\n shokibo_c: r.shokibo_c ? r.shokibo_c === 'true' : true,\n jigyosho: r.jigyosho ? r.jigyosho === 'true' : true,\n jigyosho_a: r.jigyosho_a ? r.jigyosho_a === 'true' : true,\n jigyosho_b: r.jigyosho_b ? r.jigyosho_b === 'true' : true,\n jigyosho_20over: r.jigyosho_20over\n ? r.jigyosho_20over === 'true'\n : true,\n kigyo_ho: r.kigyo_ho ? r.kigyo_ho === 'true' : true,\n other_type: r.other_type ? r.other_type === 'true' : true,\n jidokan: r.jidokan ? r.jidokan === 'true' : true,\n after_school_club: r.after_school_club\n ? r.after_school_club === 'true'\n : true,\n after_school_day_service: r.after_school_day_service\n ? r.after_school_day_service === 'true'\n : true,\n infant_home: r.infant_home ? r.infant_home === 'true' : true,\n child_home: r.child_home ? r.child_home === 'true' : true,\n shogai_child_facility_welfare_type: r.shogai_child_facility_welfare_type\n ? r.shogai_child_facility_welfare_type === 'true'\n : true,\n shogai_child_facility_medical_type: r.shogai_child_facility_medical_type\n ? r.shogai_child_facility_medical_type === 'true'\n : true,\n child_facility_welfare_type: r.child_facility_welfare_type\n ? r.child_facility_welfare_type === 'true'\n : true,\n child_facility_medical_type: r.child_facility_medical_type\n ? r.child_facility_medical_type === 'true'\n : true,\n child_psychotherapeutic_facility: r.child_psychotherapeutic_facility\n ? r.child_psychotherapeutic_facility === 'true'\n : true,\n child_independence_facility: r.child_independence_facility\n ? r.child_independence_facility === 'true'\n : true,\n child_family_support_facility: r.child_family_support_facility\n ? r.child_family_support_facility === 'true'\n : true,\n midwifery_facility: r.midwifery_facility\n ? r.midwifery_facility === 'true'\n : true,\n disability_support_facility: r.disability_support_facility\n ? r.disability_support_facility === 'true'\n : true,\n employment_support_facility: r.employment_support_facility\n ? r.employment_support_facility === 'true'\n : true,\n not_en: r.not_en ? r.not_en === 'true' : true,\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code);\n }\n }, []);\n\n useEffect(() => {\n if (filter?.pref_code) {\n return fetchCities(filter?.pref_code);\n }\n }, [filter?.pref_code]);\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n const headerRenderer = () => {\n return (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"施設一覧\"></FacilityTitle>\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={150}\n height={44}\n label=\"施設申請\"\n textFontSize={20}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={() => {\n window.open(\n 'https://docs.google.com/forms/d/e/1FAIpQLSdmvyye_eMD8s8xeP-cIv1UBN6Cliy67g4V2V-t2Vrov3At8g/viewform',\n '_blank',\n 'noopener noreferrer nofollow',\n );\n }}\n />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n - 右の施設申請ボタンから、施設の新規登録申請が可能です\n <br />\n - 公開された施設は利用学生が検索・確認することが可能です\n <br />- 公開された施設には求人情報を紐づけることが可能です\n </p>\n </div>\n </div>\n </>\n );\n };\n const paperProps = {\n headerRenderer,\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"施設情報\"\n subTitle=\"施設情報の一覧確認、施設の新規登録・削除を行います\"\n />\n <div className=\"d-flex flex-row mt-4\">\n <InlineSearch\n style={{ maxWidth: '400px' }}\n label=\"検索\"\n value={filter.name}\n placeHolder=\"施設名を入力してください\"\n onChange={({ target: { value } }) =>\n updateFilter({ ...filter, name: value })\n }\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n paginate(1);\n }\n }}\n onClick={() => paginate(1)}\n />\n <div className=\"ms-3\">\n {modalUsed ? (\n <GreenButton\n width={130}\n height={38}\n label=\"絞り込み項目有\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => openSearchModal()}\n />\n ) : (\n <GrayButton\n width={130}\n height={38}\n label=\"項目で絞り込む\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => openSearchModal()}\n />\n )}\n </div>\n </div>\n </div>\n\n <Paper {...paperProps} className=\"mb-5\">\n <FacilityList\n data={data}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n nameRenderer={(facility) => {\n return (\n <>\n <a\n href={`/my_corporate/facilities/${facility.id}`}\n target=\"_blank\">\n {facility.name}\n </a>\n </>\n );\n }}\n hideCheck\n showStatus\n showRelatedRecruitmentTitle\n showFacilityViewedCount\n showTopImageFile\n canUploadTopImage\n uploadTopImage={async (id, file) => {\n await uploadFacilityTopImage(id, file);\n }}\n deleteTopImage={async (facilityId) => {\n await deleteFacilityTopImage(facilityId);\n }}\n />\n <div className=\"d-flex w-100 justify-content-center mb-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </Paper>\n <FacilitySearchModal\n isShow={isOpenSearchModal}\n onOk={(value) => {\n updateFilter({ ...filter, ...value });\n paginate(1);\n }}\n onClose={() => closeSearchModal()}\n filter={filter}\n changeFilter={updateFilter}\n defaultCities={cities}\n />\n </div>\n );\n};\n\nSearchableList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n};\nexport default SearchableList;\n","import React from 'react';\nimport FacilityBreadcrumbs from '../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport { HomeLeftPane } from '../../components/MyCorporate/LeftPane';\nimport RightPane from '../../components/MyCorporate/RightPane';\n\nconst BREADCRUMBS = [\n {\n text: 'ENMAP施設画面TOP',\n },\n];\n\nconst Home = ({ disabledApplicant = true }) => {\n return (\n <div className=\"container\">\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div className=\"col-12 col-lg-8\">\n <HomeLeftPane disabledApplicant={disabledApplicant} />\n </div>\n <div className=\"col-12 col-lg-4\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default Home;\n","import React from 'react';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport RightPane from '../../../components/MyCorporate/RightPane';\nimport { InquiryLeftPane } from '../../../components/MyCorporate/LeftPane';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { useCreate } from './hooks/useCreate';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport { INQUIRY_CATEGORY } from '../../../../utils/constant';\n\nconst breadcrumbs = [\n {\n text: 'ENMAPお問合せフォーム',\n },\n];\n\nconst Create = ({ userName, email }) => {\n const { isLoading, register, save, errors, handleSubmit, watch } =\n useCreate();\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <form onSubmit={handleSubmit(save)}>\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <FacilityBreadcrumbs items={breadcrumbs} />\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div className=\"col-12 col-lg-8\">\n <InquiryLeftPane>\n <div className=\"d-flex flex-column w-100\">\n <div className=\"d-flex flex-row align-items-center mt-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <input\n value={email}\n type=\"email\"\n className=\"form-control\"\n placeholder=\"メールアドレス\"\n disabled\n style={{ maxWidth: '300px' }}\n />\n </div>\n <div className=\"d-flex flex-row align-items-center mt-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <input\n value={userName}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"お名前\"\n disabled\n style={{ maxWidth: '300px' }}\n />\n </div>\n <span className=\"text-danger ms-4\">\n {errors?.name?.message}\n </span>\n <div className=\"d-flex flex-row align-items-center mt-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <select\n {...register('category', {\n required: '質問内容を選択してください',\n })}\n className=\"form-select\"\n style={{ maxWidth: '300px' }}>\n <option disabled selected value=\"\">\n ▼質問内容を選択してください\n </option>\n {Object.keys(INQUIRY_CATEGORY).map((key) => (\n <option value={key}>{INQUIRY_CATEGORY[key]}</option>\n ))}\n </select>\n </div>\n <span className=\"text-danger ms-4\">\n {errors?.category?.message}\n </span>\n <div className=\"d-flex flex-row align-items-center mt-2 mb-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <textarea\n {...register('content', {\n required: '詳細を記入してください',\n })}\n className=\"form-control\"\n placeholder=\"ご質問の詳細をご記入ください\"\n rows=\"5\"\n />\n </div>\n <span className=\"text-danger ms-4\">\n {errors?.content?.message}\n </span>\n <div className=\"d-flex flex-md-row flex-column align-items-center mt-2 justify-content-center w-100\">\n <div className=\"mx-md-1 my-1 my-md-0\">\n <GreenButton\n width={147}\n height={51}\n label=\"送信する\"\n textFontSize={16}\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n </div>\n <div className=\"mx-md-1 my-1 my-md-0\">\n <GrayButton\n width={147}\n height={51}\n label=\"TOPへ戻る\"\n textFontSize={16}\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n </div>\n </div>\n </div>\n </InquiryLeftPane>\n </div>\n <div className=\"col-12 col-lg-4\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </form>\n </div>\n );\n};\n\nexport default Create;\n","import React from 'react';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport RightPane from '../../../components/MyCorporate/RightPane';\nimport GrayButton from '../../../components/Buttons/GrayButton';\n\nconst BREADCRUMBS = [\n {\n text: 'ENMAPお問合せフォーム',\n },\n];\n\nconst Success = () => {\n return (\n <div className=\"container\">\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div\n className=\"col-12 col-lg-7\"\n style={{ height: '400px', background: 'white' }}>\n <div className=\"d-flex flex-column justify-content-center align-items-center h-100\">\n <div className=\"text-decoration-underline\">\n お問合せを受付ました。\n </div>\n <div className=\"py-3\">\n サポート係より登録されたメールアドレス宛に回答いたします。\n </div>\n <div className=\"mb-5\">\n お問合せが大変多くなっておりますので、今しばらくお待ちください。\n </div>\n <div className=\"pt-5\">\n <GrayButton\n width={147}\n height={51}\n label=\"TOPへ戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n />\n </div>\n </div>\n </div>\n <div className=\"col-12 col-lg-5\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default Success;\n","import { useForm } from 'react-hook-form';\nimport { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'INQUIRY_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCreate = () => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n name: '',\n category: '',\n content: '',\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await HttpRequest.post('/api/my_corporate/inquiries', data);\n location.href = '/my_corporate/inquiry/success';\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n isLoading,\n register,\n errors,\n handleSubmit,\n watch,\n save,\n };\n};\n","import React from 'react';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport GrayButton from '../../../components/Buttons/GrayButton';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人管理',\n },\n {\n text: '求人情報',\n },\n];\n\nconst List = ({ schools }) => {\n const isLoading = false;\n return (\n <div className=\"container\">\n <LoadingOverlay isLoading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"導入学校情報\"\n subTitle=\"ENMAPを導入している学校を確認できます\"\n />\n </div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"導入学校一覧\" />\n </div>\n </div>\n )}>\n <Table className=\"table-striped\">\n <TableHead\n style={{\n background: '#E3F0F8',\n }}>\n <HeadCell\n width={400}\n className=\"align-middle\"\n label=\"保育士養成校名\"\n />\n\n <HeadCell\n width={300}\n className=\"align-middle\"\n label=\"利用学部・学科\"\n />\n\n <HeadCell width={80} className=\"align-middle\">\n 利用学科\n <br />\n 入学定員\n </HeadCell>\n\n <HeadCell width={250} className=\"align-middle\" label=\"住所\" />\n </TableHead>\n <TableBody>\n {schools.map((school) => (\n <TableRow key={school.id}>\n <BodyCell>\n <a\n href={school.homepage_url}\n target=\"_blank\"\n rel=\"noopener nofollow noreferrer\">\n {school.name}\n </a>\n </BodyCell>\n <BodyCell>{school.registered_faculty}</BodyCell>\n <BodyCell className=\"text-center\">\n {school.registered_student_number}\n </BodyCell>\n <BodyCell>{school.address}</BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n <hr />\n <div className=\"mt-1 d-flex w-100 justify-content-center\">\n <GrayButton\n width={147}\n height={51}\n label=\"TOPへ戻る\"\n textFontSize={16}\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n </div>\n </Paper>\n </div>\n );\n};\n\nexport default List;\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useLoginModule } from '../../modules/MyCorporate/loginModule';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\nimport Button from '../../components/Buttons/Button';\nimport Divider from '../../components/Divider/Divider';\nimport { signOut } from '../../../api/common';\n\nconst Login = () => {\n const {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n formError,\n // actions\n checkAuth,\n register,\n handleSubmit,\n onSubmit,\n } = useLoginModule();\n\n useEffect(() => {\n checkAuth();\n }, []);\n\n const handleLogout = async () => {\n await signOut();\n location.href = '/my_corporate/login';\n };\n\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <form onSubmit={handleSubmit(onSubmit)} className=\"pt-5\">\n <div className=\"w-100 d-flex justify-content-center flex-column align-items-center\">\n {loggedInWithDifferentTypeAccount && (\n <div className=\"alert alert-danger\" role=\"alert\">\n 施設管理者以外のアカウントでログイン中です。\n <br />\n <a\n className=\"text-primary\"\n style={{ cursor: 'pointer' }}\n onClick={() => handleLogout()}>\n こちら\n </a>\n からログアウト後、再度ログインをお願いします。\n </div>\n )}\n <div className=\"w-100 d-flex\" style={{ maxWidth: '540px' }}>\n <div className=\"d-flex justify-content-start\">\n <h6 className=\"d-flex\">ENMAP(施設管理画面)</h6>\n </div>\n </div>\n <div\n className=\"w-100 d-flex justify-content-start bg-white border border-2 border-primary\"\n style={{ maxWidth: '540px', borderRadius: '1rem' }}>\n <div className=\"w-100\">\n <div\n className=\"w-100 d-flex justify-content-start mt-3\"\n style={{ borderBottom: '2px solid #cccccc' }}>\n <div\n className=\"d-flex flex-row fw-bold\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex ms-3 me-4\">LOGIN</div>\n <div className=\"d-flex\">\n ログインID・パスワードを入力し、ログインボタンを押して下さい\n </div>\n </div>\n </div>\n <div className=\"p-5\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-row\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">ログインID:</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'ログインIDは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"メールアドレス\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n <div className=\"form-group mt-3 w-100\">\n <div className=\"d-flex flex-row\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">パスワード:</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password', {\n required: 'パスワードは必須です',\n })}\n type=\"password\"\n className=\"form-control\"\n placeholder=\"パスワード\"\n disabled={isLoading}\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <button\n style={{ borderRadius: '1rem', width: '200px' }}\n className=\"btn btn-primary\"\n onClick={() => onSubmit()}\n disabled={isLoading || loggedInWithDifferentTypeAccount}>\n ログイン\n </button>\n </div>\n <div className=\"mt-4 d-flex justify-content-center\">\n <a href=\"/my_corporate/password_reset\" className=\"text-black\">\n パスワードをリセットする\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </form>\n <div className=\"d-flex flex-column align-items-center w-100 justify-content-center mt-3 mb-5\">\n <Divider width={540} />\n <div className=\"d-flex flex-column w-100 align-items-center\">\n <div className=\"my-3\">アカウントをお持ちでない法人はこちらから</div>\n <div>\n <Button\n variant=\"primary\"\n onClick={() => {\n window.open('https://kaseki.co.jp/enmap', '_blank');\n }}\n outlined\n label=\"利用申請ページ\"\n height={44}\n textFontSize={16}\n width={160}\n labelClassName=\"fw-bold\"\n />\n </div>\n </div>\n </div>\n </>\n );\n};\n\nLogin.propTypes = {\n loginApiPath: PropTypes.string,\n schoolHomePath: PropTypes.string,\n};\n\nexport default Login;\n","import React from 'react';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport { ManualLeftPane } from '../../../components/MyCorporate/LeftPane';\nimport RightPane from '../../../components/MyCorporate/RightPane';\n\nconst breadcrumbs = [\n {\n text: 'ENMAP操作マニュアル',\n },\n];\nconst List = (props) => {\n return (\n <div className=\"container\">\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <FacilityBreadcrumbs items={breadcrumbs} fontSize=\"14px\" />\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div className=\"col-12 col-lg-8\">\n <ManualLeftPane\n {...props}\n onClick={(id) => {\n window.open(\n `/my_corporate/manuals/${id}`,\n '_blank',\n 'nofollow noopener noreferrer',\n );\n }}\n />\n </div>\n <div className=\"col-12 col-lg-4\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default List;\n","import React, { useMemo } from 'react';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport Step from './components/Step';\nimport Paper from '../../../../components/Paper/Paper';\nimport Button from '../../../../components/Buttons/Button';\n\nconst Complete = () => {\n const breadcrumbs = useMemo(\n () => [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'オプション管理',\n },\n {\n text: 'オプション一覧',\n href: '/my_corporate/options',\n },\n {\n text: '申込完了',\n },\n ],\n [],\n );\n return (\n <div className=\"container mb-5\">\n <FacilityBreadcrumbs items={breadcrumbs} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle title=\"お申込み完了\" />\n <Step currentStep={3} />\n <Paper>\n <div className=\"d-flex flex-column justify-content-center align-items-center\">\n <div\n className=\"fw-bold mt-3 mb-4\"\n style={{\n textDecoration: 'underline',\n fontSize: '20px',\n color: '#4474C4',\n }}>\n お申込み完了\n </div>\n <div\n className=\"d-flex flex-column align-items-start mb-4\"\n style={{ color: '#7A7979', fontSize: '14px' }}>\n <div className=\"mb-3\">・お申込み完了メールをご確認ください。</div>\n <div className=\"mb-3\">\n ・学生画面の全運営施設に「見学に申し込む」ボタンが設置されました。\n </div>\n <div className=\"mb-3\">\n ・管理画面の応募管理機能がご利用可能です。\n </div>\n <div className=\"mb-3\">\n ・マニュアルページより利用方法をご確認ください。\n </div>\n </div>\n </div>\n </Paper>\n\n <div className=\"d-flex justify-content-center mt-5\">\n <div className=\"me-2\">\n <Button\n variant=\"gray\"\n width={140}\n height={44}\n textFontSize={16}\n label=\"TOPへ戻る\"\n onClick={() => {\n location.href = '/my_corporate/home';\n }}\n />\n </div>\n </div>\n </div>\n </div>\n );\n};\nexport default Complete;\n","import React, { useEffect, useMemo, useState } from 'react';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport styled from 'styled-components';\nimport Paper from '../../../../components/Paper/Paper';\nimport Table from '../../../../components/Table/Table';\nimport TableBody from '../../../../components/Table/TableBody';\nimport TableRow from '../../../../components/Table/TableRow';\nimport BodyCell from '../../../../components/Table/BodyCell';\nimport { useDetail } from './hooks/useDetail';\nimport PrefectureSelect from '../../../../components/PrefectureSelect/PrefectureSelect';\nimport Button from '../../../../components/Buttons/Button';\nimport Step from './components/Step';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport ConfirmModal from './components/ConfirmModal';\nimport { PHONE_REGEX_WITH_SEP } from '../../../../../utils/constant';\n\nconst Notice = styled.div`\n color: #f76c7d;\n`;\n\nconst SectionHeader = styled.div`\n background: #9ddaff;\n font-size: 14px;\n`;\n\nconst tableLeftCellStyle = {\n background: '#E1EBF5',\n width: '300px',\n fontSize: '14px',\n};\n\nconst textStyle = {\n color: '#6B6B6B',\n};\n\nconst addressLabelStyle = {\n minWidth: '200px',\n};\n\nconst labelNoticeStyle = {\n fontSize: '11px',\n};\n\nconst Detail = ({ cachedData, csrfToken, isConfirm = false }) => {\n const {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n save,\n watch,\n setValue,\n register,\n handleSubmit,\n trigger,\n } = useDetail();\n\n const [isOpenConfirmModal, setIsOpenConfirmModal] = useState(false);\n\n const breadcrumbs = useMemo(\n () => [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'オプション管理',\n },\n {\n text: 'オプション一覧',\n href: '/my_corporate/options',\n },\n {\n text: isConfirm ? '申込内容確認' : '利用申込',\n },\n ],\n [isConfirm],\n );\n\n useEffect(() => {\n if (cachedData) {\n Object.keys(cachedData)\n .filter((key) => key !== 'agreement')\n .forEach((key) => {\n setValue(key, cachedData[key]);\n });\n setValue('agreement', isConfirm);\n }\n }, [cachedData]);\n\n return (\n <div className=\"container mb-5\" style={textStyle}>\n <LoadingOverlay loading={isLoading} />\n {Object.keys(errors).length > 0 && (\n <div\n className=\"w-100 alert alert-danger mt-3 d-flex align-items-center\"\n style={{\n height: '51px',\n color: '#F76C7D',\n background: '#F76C7D1A',\n }}>\n 入力エラー:必須項目が入力されていないか、入力内容に誤りがあります\n </div>\n )}\n <FacilityBreadcrumbs items={breadcrumbs} />\n <form onSubmit={handleSubmit} method=\"POST\">\n <input type=\"hidden\" name=\"authenticity_token\" value={csrfToken} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title={\n isConfirm ? 'お申込内容の確認' : '「見学申込機能」の利用申し込み'\n }\n />\n <div\n style={{ fontSize: '14px' }}\n className={isConfirm ? 'mt-1 mb-5' : 'mt-3 mb-5'}>\n {isConfirm ? (\n <div>お申込み内容を確認し、お申込みボタンを押下して下さい</div>\n ) : (\n <>\n <div>\n 採用業務のさらなる効率化につながる『見学応募機能』を年度内のみお試し価格で開始。\n </div>\n <div>\n 求人票配信等の基本機能に加え、ENMAPから直接<見学応募を受け付ける便利な機能>をご利用いただけます。\n </div>\n </>\n )}\n </div>\n </div>\n <Step currentStep={isConfirm ? 2 : 1} />\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3\">\n <section>\n <div\n className=\"fw-bold mb-1\"\n style={{ fontSize: '20px', ...textStyle }}>\n プランの選択\n </div>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n ご利用になる機能を選択して下さい\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center\"\n style={textStyle}>\n オプション機能\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center my-3\">\n <input\n type=\"checkbox\"\n checked\n id=\"option-plan\"\n className=\"form-check-input mt-0\"\n />\n <label htmlFor=\"option-plan\" className=\"ps-2 fw-bold\">\n 見学申込機能\n </label>\n </div>\n 求人情報の配信等の基本機能に加え、以下機能が利用可能\n <div className=\"d-flex flex-column justify-content-start bg-white p-3\">\n <div className=\"d-flex flex-column w-100\">\n <div className=\"d-flex flex-row w-100\">\n <div style={{ width: '100px' }}>\n ご利用可能機能\n </div>\n <div className=\"px-2\">:</div>\n <div>\n 学生からの見学申込(ENMAP上で学生からの見学申込を受け付ける機能)\n </div>\n </div>\n <div className=\"d-flex flex-row w-100 my-2\">\n <div style={{ width: '100px' }}>ご利用料金</div>\n <div className=\"px-2\">:</div>\n <div\n className=\"d-flex flex-column\"\n style={{\n color: '#F76C7D',\n fontWeight: 'bold',\n }}>\n <div className=\"d-flex\">\n <div style={{ width: '120px' }}>\n 運営施設数\n </div>\n <div style={{ width: '150px' }}>\n 10施設未満\n </div>\n <div>|</div>\n <div\n style={{\n width: '180px',\n textAlign: 'right',\n }}>\n 30,000円(税抜)\n </div>\n </div>\n <div className=\"d-flex\">\n <div style={{ width: '120px' }}></div>\n <div style={{ width: '150px' }}>\n 10施設~29施設\n </div>\n <div>|</div>\n <div\n style={{\n width: '180px',\n textAlign: 'right',\n }}>\n 100,000円(税抜)\n </div>\n </div>\n <div className=\"d-flex\">\n <div style={{ width: '120px' }}></div>\n <div style={{ width: '150px' }}>\n 30施設以上\n </div>\n <div>|</div>\n <div\n style={{\n width: '180px',\n textAlign: 'right',\n }}>\n 300,000円(税抜)\n </div>\n </div>\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div style={{ width: '100px' }}>\n ご利用可能期間\n </div>\n <div\n className=\"px-2\"\n style={{ fontWeight: 'bold' }}>\n :\n </div>\n <Notice style={{ fontWeight: 'bold' }}>\n 即時 ~ 2026年3月31日\n </Notice>\n </div>\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n <section>\n <div\n className=\"fw-bold mb-1\"\n style={{ fontSize: '20px', ...textStyle }}>\n ご請求情報の登録\n </div>\n <section>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n 請求書の送付方法を選択して下さい\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>請求の送付方法</div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <div className=\"me-3 d-flex align-items-center\">\n <input\n {...register('sending_method', {\n required: '送付方法を選択してください',\n })}\n type=\"radio\"\n id=\"sending_method__email\"\n name=\"sending_method\"\n disabled={isConfirm}\n value=\"email\"\n />\n <label\n htmlFor=\"sending_method__email\"\n className=\"ps-2\">\n Eメール\n </label>\n </div>\n <div className=\"me-3 d-flex align-items-center\">\n <input\n type=\"radio\"\n id=\"sending_method__shipping\"\n name=\"sending_method\"\n {...register('sending_method', {\n required: '送付方法を選択してください',\n })}\n disabled={isConfirm}\n value=\"shipping\"\n />\n <label\n htmlFor=\"sending_method__shipping\"\n className=\"ps-2\">\n 郵送\n </label>\n </div>\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.sending_method?.message}\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n <section>\n <SectionHeader className=\"px-2 py-1 mb-1 mx-1\">\n 請求書の送付先を入力して下さい\n </SectionHeader>\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>法人名</div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('corporate_name', {\n required: '法人名を入力して下さい',\n })}\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.corporate_name?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>請求書送付先住所</div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2 d-flex flex-column\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>郵便番号</div>\n <input\n {...register('postal_code1', {\n required: '郵便番号を入力して下さい',\n pattern: {\n value: /^\\d{3}$/,\n message: '3桁の数字で入力して下さい',\n },\n })}\n type=\"tel\"\n className=\"form-control\"\n style={{ width: '80px' }}\n disabled={isConfirm}\n />\n <div\n style={{ width: '30px' }}\n className=\"d-flex justify-content-center\">\n -\n </div>\n <input\n {...register('postal_code2', {\n required: '郵便番号を入力して下さい',\n pattern: {\n value: /^\\d{4}$/,\n message: '4桁の数字で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '90px' }}\n disabled={isConfirm}\n />\n </div>\n <div className=\"text-danger\">\n {errors?.postal_code1?.message ||\n errors?.postal_code2?.message}\n </div>\n </div>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>都道府県</div>\n <div style={{ width: '200px' }}>\n <PrefectureSelect\n register={register('pref_code', {\n required: '都道府県は必須です',\n })}\n selectedValue={watch('pref_code')}\n onChange={({ target: { value } }) => {\n setValue('pref_code', value);\n }}\n editMode\n disabled={isConfirm}\n name=\"pref_code\"\n />\n </div>\n </div>\n <div className=\"text-danger\">\n {errors?.pref_code?.message}\n </div>\n </div>\n <div className=\"d-flex flex-column mb-2\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>\n 住所(100文字まで)\n </div>\n <input\n {...register('address', {\n required: '住所を入力して下さい',\n maxLength: {\n value: 100,\n message: '100文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n <div className=\"text-danger\">\n {errors?.address?.message}\n </div>\n </div>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center\">\n <div style={addressLabelStyle}>\n TEL(ハイフンあり)\n </div>\n <input\n {...register('tel', {\n required: '電話番号を入力して下さい',\n pattern: {\n value: PHONE_REGEX_WITH_SEP,\n message: '電話番号の形式が正しくありません',\n },\n })}\n type=\"tel\"\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled={isConfirm}\n />\n </div>\n <div className=\"text-danger\">\n {errors?.tel?.message}\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>部署名</div>\n <div style={labelNoticeStyle}>(50文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_department', {\n required: '部署名を入力して下さい',\n maxLength: {\n value: 50,\n message: '50文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_department?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様役職</div>\n <div style={labelNoticeStyle}>(50文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_position', {\n required: '役職を入力して下さい',\n maxLength: {\n value: 50,\n message: '50文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_position?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様氏名</div>\n <div style={labelNoticeStyle}>(30文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_name', {\n required: '氏名を入力して下さい',\n maxLength: {\n value: 30,\n message: '30文字以内で入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_name?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>ご担当者様氏名(カナ)</div>\n <div style={labelNoticeStyle}>(60文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_name_kana', {\n required: 'カナを入力して下さい',\n maxLength: {\n value: 60,\n message: '60文字以内で入力して下さい',\n },\n pattern: {\n value: /^[ァ-ヶー  ]+$/,\n message: 'カナは全角カタカナで入力して下さい',\n },\n })}\n type=\"text\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_name_kana?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス1</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n <div className=\"text-danger\">*必須</div>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_email1', {\n required: 'メールアドレス1を入力して下さい',\n maxLength: {\n value: 80,\n message: '80文字以内で入力して下さい',\n },\n pattern: {\n value: /\\S+@\\S+\\.\\S+/,\n message:\n 'メールアドレス1の形式が正しくありません',\n },\n })}\n type=\"email\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_email1?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス2</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_email2', {\n maxLength: {\n value: 80,\n message: '80文字以内で入力して下さい',\n },\n pattern: {\n value: /\\S+@\\S+\\.\\S+/,\n message:\n 'メールアドレス2の形式が正しくありません',\n },\n })}\n type=\"email\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_email2?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>メールアドレス3</div>\n <div style={labelNoticeStyle}>(80文字まで)</div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('contact_email3', {\n maxLength: {\n value: 80,\n message: '80文字以内で入力して下さい',\n },\n pattern: {\n value: /\\S+@\\S+\\.\\S+/,\n message:\n 'メールアドレス3の形式が正しくありません',\n },\n })}\n type=\"email\"\n className=\"form-control\"\n disabled={isConfirm}\n />\n </div>\n </div>\n <div className=\"px-2 text-danger\">\n {errors?.contact_email3?.message}\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell style={tableLeftCellStyle}>\n <div\n className=\"ps-3 d-flex w-100 h-100 align-items-center justify-content-between\"\n style={textStyle}>\n <div>\n <div>アンケート</div>\n <div>\n 「オプション機能を\n <br />\n 知ったきっかけ」\n </div>\n </div>{' '}\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div\n className=\"px-2\"\n style={{ fontSize: '14px', ...textStyle }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__1\"\n type=\"checkbox\"\n value=\"ENMAPホームページ\"\n disabled={isConfirm}\n />\n <label\n htmlFor=\"survey_responses__1\"\n className=\"ps-2\">\n ENMAPホームページ\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__2\"\n type=\"checkbox\"\n value=\"弊社からのメール\"\n disabled={isConfirm}\n />\n <label\n htmlFor=\"survey_responses__2\"\n className=\"ps-2\">\n 弊社からのメール\n </label>\n </div>\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__3\"\n type=\"checkbox\"\n value=\"弊社からの電話\"\n disabled={isConfirm}\n />\n <label\n htmlFor=\"survey_responses__3\"\n className=\"ps-2\">\n 弊社からの電話\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__4\"\n type=\"checkbox\"\n value=\"他の保育事業者から聞いて\"\n disabled={isConfirm}\n />\n <label\n htmlFor=\"survey_responses__4\"\n className=\"ps-2\">\n 他の保育事業者から聞いて\n </label>\n </div>\n\n <div className=\"d-flex flex-row align-items-center mb-1\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__5\"\n type=\"checkbox\"\n value=\"養成校から聞いて\"\n disabled={isConfirm}\n />\n <label\n htmlFor=\"survey_responses__5\"\n className=\"ps-2\">\n 養成校から聞いて\n </label>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('survey_responses')}\n name=\"survey_responses[]\"\n className=\"form-check-input mt-0\"\n id=\"survey_responses__6\"\n type=\"checkbox\"\n value=\"その他\"\n disabled={isConfirm}\n />\n <label\n htmlFor=\"survey_responses__6\"\n className=\"ps-2\">\n その他\n </label>\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </section>\n </section>\n <div\n className=\"d-flex flex-column mb-3\"\n style={{ fontSize: '14px' }}>\n <div>\n ※請求書の送付方法でEメールを選択された場合、この画面で入力されたすべてのメールアドレス宛に請求書を送付いたします。\n </div>\n <div className=\"d-flex flex-column ms-3\">\n <div>\n なお、お申し込み完了をお知らせするメールは以下のメールアドレス宛に送信されます。\n </div>\n <div>・「メールアドレス1~3」で入力されたメールアドレス</div>\n <div>・担当者情報に登録のある全てのメールアドレス</div>\n </div>\n </div>\n <div\n className=\"w-100 p-3 justify-content-center\"\n style={{ border: '1px solid #4474C4', background: '#f5f5f5' }}>\n <div className=\"d-flex flex-row justify-content-center align-items-center\">\n <div className=\"pe-3\">\n <Button\n variant=\"facility_primary\"\n width={200}\n height={44}\n textFontSize={14}\n label=\"ENMAP利用約款\"\n labelClassName=\"w-100 d-flex justify-content-center\"\n outlined\n onClick={(e) => {\n e.preventDefault();\n window.open('/my_corporate/terms', '_blank');\n }}\n />\n </div>\n <div className=\"d-flex align-items-center ps-3\">\n <input\n {...register('agreement', {\n required: 'ENMAP利用約款に同意してください',\n })}\n checked={watch('agreement')}\n type=\"checkbox\"\n className=\"form-check-input mt-0\"\n id=\"agreement\"\n disabled={isConfirm}\n />\n <label htmlFor=\"agreement\" className=\"ps-2\">\n ENMAP利用約款に同意します\n </label>\n </div>\n </div>\n {errors?.agreement?.message && (\n <div className=\"pt-3 text-danger w-100 d-flex justify-content-center align-items-center\">\n <div>{errors?.agreement?.message}</div>\n </div>\n )}\n </div>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center mt-3\">\n <div className=\"me-2\">\n <Button\n variant=\"gray\"\n width={140}\n height={44}\n textFontSize={16}\n label=\"戻る\"\n onClick={(e) => {\n e.preventDefault();\n\n if (isConfirm) {\n location.href =\n '/my_corporate/options/facility_tour_applicant';\n return;\n }\n\n location.href = '/my_corporate/options';\n }}\n />\n </div>\n <div className=\"ms-2\">\n <Button\n variant=\"green\"\n width={200}\n height={44}\n textFontSize={16}\n label={`${isConfirm ? '上記内容で申し込む' : '確認画面に進む'}`}\n type=\"submit\"\n onClick={async (e) => {\n if (isConfirm) {\n e.preventDefault();\n setIsOpenConfirmModal(true);\n return;\n }\n const success = await trigger();\n const form = e.target.closest('form');\n if (success) {\n form.submit();\n } else {\n e.preventDefault();\n window.scroll({\n top: 0,\n behavior: 'smooth',\n });\n }\n }}\n />\n </div>\n </div>\n </form>\n <ConfirmModal\n isOpen={isOpenConfirmModal}\n onClose={() => setIsOpenConfirmModal(false)}\n onOk={() => save(watch())}\n />\n </div>\n );\n};\n\nexport default Detail;\n","import React, { useCallback, useState } from 'react';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport Paper from '../../../../components/Paper/Paper';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport FacilityList from '../../../../components/School/FacilityList';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport {\n FACILITY_EN_TYPES,\n FACILITY_FACILITY_TYPES,\n} from '../../../../../utils/constant';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'オプション管理',\n },\n {\n text: 'オプション一覧',\n href: '/my_corporate/options',\n },\n {\n text: '施設選択',\n },\n];\n\nconst FacilityListPage = ({\n facilities,\n registeredFacilityTypes,\n enabledFacilityIds,\n currentFacilityType,\n}) => {\n const [selectedFacilityType, setSelectedFacilityType] =\n useState(currentFacilityType);\n const [selectedFacilityIds, setSelectedFacilityIds] =\n useState(enabledFacilityIds);\n\n const [isLoading, setIsLoading] = useState(false);\n\n const onSave = useCallback(async () => {\n setIsLoading(true);\n try {\n await HttpRequest.put(\n '/api/my_corporate/options/facility_tour_applicant/facilities',\n {\n facility_ids: selectedFacilityIds,\n },\n );\n location.href = location.href;\n } finally {\n setIsLoading(false);\n }\n }, [isLoading, selectedFacilityIds]);\n const onSearch = useCallback((t) => {\n setSelectedFacilityType(t);\n location.href = `${location.pathname}?facility_type=${t}`;\n }, []);\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"申込みを受付ける施設を選択します\"\n subTitle=\"チェックを外した施設は、学生からの見学を申し込めません\"\n />\n </div>\n <Paper>\n <div className=\"ms-3\" style={{ width: '200px' }}>\n <select\n className=\"form-select\"\n onChange={({ target: { value } }) => {\n onSearch(value);\n }}>\n <option value=\"\">施設種別</option>\n <optgroup label=\"▼幼保系---------------\">\n {FACILITY_EN_TYPES.filter((t) =>\n registeredFacilityTypes.includes(t),\n ).map((type) => (\n <option\n key={type}\n value={type}\n selected={selectedFacilityType === type}>\n {type}\n </option>\n ))}\n </optgroup>\n <optgroup label=\"▼施設系---------------\">\n {FACILITY_FACILITY_TYPES.filter((t) =>\n registeredFacilityTypes.includes(t),\n ).map((type) => (\n <option\n key={type}\n value={type}\n selected={selectedFacilityType === type}>\n {type}\n </option>\n ))}\n </optgroup>\n </select>\n </div>\n <FacilityList\n data={facilities}\n targetIds={selectedFacilityIds}\n removeTargetId={(targetId) => {\n setSelectedFacilityIds(\n selectedFacilityIds.filter((id) => id !== targetId),\n );\n }}\n addTargetId={(targetId) => {\n setSelectedFacilityIds([...selectedFacilityIds, targetId]);\n }}\n removeAllTargets={() => setSelectedFacilityIds([])}\n addAllTargets={() => {\n setSelectedFacilityIds(facilities.map((facility) => facility.id));\n }}\n showRecruitmentRegisteredAt={false}\n showRelatedRecruitmentTitle\n disableRecruitmentLink\n hideLink\n />\n </Paper>\n <div className=\"my-5\">\n <hr />\n </div>\n <div className=\"d-flex justify-content-center mb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/options';\n }}\n className=\"mx-2\"\n />\n <GreenButton\n width={100}\n height={44}\n label=\"更新する\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSave();\n }}\n className=\"mx-2\"\n />\n </div>\n </div>\n );\n};\n\nexport default FacilityListPage;\n","import { Modal } from 'react-bootstrap';\nimport { FacilityDefaultColorStyle } from '../../../../../../utils/constant';\nimport GreenButton from '../../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../../components/Buttons/GrayButton';\nimport React from 'react';\n\nconst ConfirmModal = ({ isOpen = false, onClose, onOk }) => {\n return (\n <Modal\n size=\"lg\"\n show={isOpen}\n onHide={onClose}\n aria-labelledby=\"facility-tour-applicant-option-cofirm-model\"\n centered\n className=\"w-100 d-flex justify-content-center\"\n contentClassName=\"modal-width500\">\n <Modal.Body>\n <div className=\"d-flex flex-column align-items-center justify-content-center w-100 py-3 mb-3\">\n <div\n style={{\n fontSize: '32px',\n fontWeight: 'bold',\n ...FacilityDefaultColorStyle,\n }}>\n お申し込みの確認\n </div>\n <div className=\"mt-3\">\n <div\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n <div>・学生画面/施設情報と求人情報に見学応募ボタンが出現</div>\n <div>・施設画面/応募管理機能の解放、応募メール通知</div>\n </div>\n </div>\n </div>\n <div className=\"d-flex mb-3 justify-content-center\">\n <GreenButton\n width={120}\n height={44}\n label=\"申し込む\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onOk()}\n />\n <GrayButton\n width={120}\n height={44}\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onClose()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default ConfirmModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport { FacilityDefaultColorStyle } from '../../../../../../utils/constant';\nimport GreenButton from '../../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../../components/Buttons/GrayButton';\nimport Button from '../../../../../components/Buttons/Button';\nconst StopConfirmModal = ({ isOpen, onClose, onOk }) => {\n return (\n <Modal\n size=\"lg\"\n show={isOpen}\n onHide={onClose}\n aria-labelledby=\"facility-tour-applicant-option-cofirm-model\"\n centered\n className=\"w-100 d-flex justify-content-center\"\n contentClassName=\"modal-width500\">\n <Modal.Body>\n <div className=\"d-flex flex-column align-items-center justify-content-center w-100 py-3 mb-3\">\n <div\n style={{\n fontSize: '32px',\n fontWeight: 'bold',\n ...FacilityDefaultColorStyle,\n }}>\n 機能を再開しますか?\n </div>\n <div className=\"mt-3\">\n <div\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n <div>・学生画面/施設情報と求人情報に見学応募ボタンが出現</div>\n <div>・追加の利用料はかかりません</div>\n </div>\n </div>\n </div>\n <div className=\"d-flex mb-3 justify-content-center\">\n <GreenButton\n width={120}\n height={44}\n label=\"再開する\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onOk()}\n />\n <GrayButton\n width={120}\n height={44}\n label=\"もどる\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onClose()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default StopConfirmModal;\n","import React from 'react';\n\nconst Step = ({ currentStep = 1 }) => {\n const step1Color = currentStep === 1 ? '#9DDAFF' : '#E3F0F8';\n const step2Color = currentStep === 2 ? '#9DDAFF' : '#E3F0F8';\n const step3Color = currentStep === 3 ? '#9DDAFF' : '#E3F0F8';\n\n const height = '72px';\n const borderSize = '36px';\n\n return (\n <div className=\"bg-white rounded-1 p-1\" style={{ minHeight: '72px' }}>\n <div className=\"d-flex flex-row align-items-center\">\n <div className=\"d-flex w-100\" style={{ minWidth: '500px' }}>\n <div className=\"col-10\">\n <div\n className=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center\"\n style={{\n background: step1Color,\n minHeight: '70px',\n fontSize: '14px',\n }}>\n <div>ステップ1</div>\n <div>(プラン選択、ご請求情報入力)</div>\n </div>\n </div>\n <div className=\"col-2\">\n <div\n style={{\n borderLeft: `${borderSize} solid ${step1Color}`,\n borderTop: `${borderSize} solid transparent`,\n borderBottom: `${borderSize} solid transparent`,\n }}></div>\n </div>\n </div>\n <div\n className=\"d-flex w-100\"\n style={{ marginLeft: '-75px', minWidth: '500px' }}>\n <div className=\"col-2\">\n <div\n style={{\n borderLeft: `${borderSize} solid transparent`,\n borderTop: `${borderSize} solid ${step2Color}`,\n borderBottom: `${borderSize} solid ${step2Color}`,\n }}></div>\n </div>\n <div className=\"col-8\">\n <div\n className=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center pe-5\"\n style={{\n background: step2Color,\n minHeight: '70px',\n fontSize: '14px',\n }}>\n <div>ステップ2</div>\n <div>(入力内容の確認)</div>\n </div>\n </div>\n <div className=\"col-2\">\n <div\n style={{\n borderLeft: `${borderSize} solid ${step2Color}`,\n borderTop: `${borderSize} solid transparent`,\n borderBottom: `${borderSize} solid transparent`,\n }}></div>\n </div>\n </div>\n <div className=\"d-flex w-100\" style={{ marginLeft: '-75px' }}>\n <div className=\"col-2\">\n <div\n style={{\n borderLeft: `${borderSize} solid transparent`,\n borderTop: `${borderSize} solid ${step3Color}`,\n borderBottom: `${borderSize} solid ${step3Color}`,\n }}></div>\n </div>\n <div className=\"col-10\">\n <div\n className=\"w-100 h-100 d-flex flex-column align-items-center justify-content-center pe-5\"\n style={{\n background: step3Color,\n minHeight: '70px',\n fontSize: '14px',\n }}>\n <div>ステップ3</div>\n <div>(お申込み完了)</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default Step;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport { FacilityDefaultColorStyle } from '../../../../../../utils/constant';\nimport GreenButton from '../../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../../components/Buttons/GrayButton';\nimport Button from '../../../../../components/Buttons/Button';\nconst StopConfirmModal = ({ isOpen, onClose, onOk }) => {\n return (\n <Modal\n size=\"lg\"\n show={isOpen}\n onHide={onClose}\n aria-labelledby=\"facility-tour-applicant-option-cofirm-model\"\n centered\n className=\"w-100 d-flex justify-content-center\"\n contentClassName=\"modal-width500\">\n <Modal.Body>\n <div className=\"d-flex flex-column align-items-center justify-content-center w-100 py-3 mb-3\">\n <div\n style={{\n fontSize: '32px',\n fontWeight: 'bold',\n ...FacilityDefaultColorStyle,\n }}>\n 機能を停止しますか?\n </div>\n <div className=\"mt-3\">\n <div\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n <div>・学生画面からの見学申し込みを停止</div>\n <div>・利用料の減額等はありません</div>\n </div>\n </div>\n </div>\n <div className=\"d-flex mb-3 justify-content-center\">\n <Button\n variant=\"facility_danger\"\n width={120}\n height={44}\n label=\"停止する\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onOk()}\n />\n <GrayButton\n width={120}\n height={44}\n label=\"もどる\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onClose()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default StopConfirmModal;\n","import { useForm } from 'react-hook-form';\nimport { useCallback, useReducer } from 'react';\nimport { updateFacilityTourApplicantOption } from '../../../../../../api/MyCorporate/Option/FacilityTourApplicant';\nconst P = 'MY_CORPORATE_OPTION_FACILITY_TOUR_APPLICANT_DETAIL_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useDetail = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n control,\n trigger,\n } = useForm({\n mode: 'all',\n defaultValues: {\n survey_responses: [],\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await updateFacilityTourApplicantOption(data);\n location.href =\n '/my_corporate/options/facility_tour_applicant/complete';\n } catch (e) {\n console.error(e);\n changeState({ errorMessage: 'エラーが発生しました' });\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n changeState,\n save,\n register,\n handleSubmit,\n setValue,\n watch,\n trigger,\n };\n};\n","import React, { useState } from 'react';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport PrimaryButton from '../../../components/Buttons/PrimaryButton';\nimport StopConfirmModal from './FacilityTourApplicant/components/StopConfirmModal';\nimport { useList } from './hooks/useList';\nimport RestartConfirmModal from './FacilityTourApplicant/components/RestartConfirmModal';\nimport OptionButton from './components/OptionButton';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: 'オプション管理',\n },\n {\n text: 'オプション一覧',\n },\n];\n\nconst List = ({ facilityTourApplicantOption }) => {\n const [\n isOpenStopFacilityTourApplicantModal,\n setIsOpenStopFacilityTourApplicantModal,\n ] = useState(false);\n\n const [\n isOpenRestartFacilityTourApplicantModal,\n setIsOpenRestartFacilityTourApplicantModal,\n ] = useState(false);\n\n const {\n isLoading,\n onStopFacilityTourApplicantOption,\n onRestartFacilityTourApplicantOption,\n } = useList();\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"オプション一覧\"\n subTitle=\"ご利用可能なオプションの確認、申込、停止が可能です\"\n />\n </div>\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell className=\"align-middle\" label=\"機能\" />\n <HeadCell className=\"align-middle\" label=\"概要\" />\n <HeadCell className=\"align-middle\" label=\"ステータス\" />\n <HeadCell\n width={100}\n className=\"align-middle\"\n label=\"その他機能\"\n />\n <HeadCell className=\"align-middle\" label=\"内容\" width={160} />\n </TableHead>\n <TableBody>\n <TableRow>\n <BodyCell className=\"text-center\">\n (2025年度)\n <br />\n 見学申込機能\n </BodyCell>\n <BodyCell>\n <div className=\"ms-3\">\n <div>・学生画面/見学申込みボタンを表示</div>\n <div>・学生画面/直接申込みが可能</div>\n <div>・施設画面/応募者管理機能の解放</div>\n <div>・学生の申込時にメール通知</div>\n </div>\n </BodyCell>\n <BodyCell className=\"fw-bold text-center\">\n {facilityTourApplicantOption.label}\n </BodyCell>\n <BodyCell className=\"fw-bold text-center\">\n <div className=\"d-flex flex-row\">\n {facilityTourApplicantOption.id &&\n facilityTourApplicantOption.status === 'enabled' && (\n <GreenButton\n width={120}\n height={41}\n labelClassName=\"d-flex w-100 justify-content-center\"\n label=\"施設選択\"\n textFontSize={14}\n onClick={() => {\n location.href = `/my_corporate/options/facility_tour_applicant/${facilityTourApplicantOption.id}/facilities`;\n }}\n className=\"me-2\"\n />\n )}\n <OptionButton\n status={facilityTourApplicantOption.status}\n onStop={() => {\n setIsOpenStopFacilityTourApplicantModal(true);\n }}\n onRestart={() => {\n setIsOpenRestartFacilityTourApplicantModal(true);\n }}\n onForward={() => {\n location.href =\n '/my_corporate/options/facility_tour_applicant';\n }}\n />\n </div>\n </BodyCell>\n <BodyCell className=\"fw-bold text-center\">\n <PrimaryButton\n width={130}\n height={41}\n labelClassName=\"d-flex w-100 justify-content-center\"\n label=\"機能詳細を見る\"\n textFontSize={14}\n onClick={() => {\n window.open(\n 'https://kaseki.co.jp/enmap/visit2025',\n '_blank',\n );\n }}\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n <hr />\n <div className=\"d-flex flex-column justify-content-center my-4\">\n <GrayButton\n width={140}\n height={51}\n label=\"TOPへ戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n />\n </div>\n </Paper>\n <StopConfirmModal\n isOpen={isOpenStopFacilityTourApplicantModal}\n onOk={() => onStopFacilityTourApplicantOption()}\n onClose={() => setIsOpenStopFacilityTourApplicantModal(false)}\n />\n <RestartConfirmModal\n isOpen={isOpenRestartFacilityTourApplicantModal}\n onOk={() => onRestartFacilityTourApplicantOption()}\n onClose={() => setIsOpenRestartFacilityTourApplicantModal(false)}\n />\n </div>\n );\n};\n\nexport default List;\n","import React from 'react';\nimport Button from '../../../../components/Buttons/Button';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\n\nconst OptionButton = ({\n status,\n disabled = false,\n onStop,\n onRestart,\n onForward,\n}) => {\n const dangerButtonProps = {\n variant: 'facility_danger',\n textFontSize: 14,\n };\n\n const warningButtonProps = {\n variant: 'facility_warning',\n textFontSize: 14,\n };\n switch (status) {\n case 'applying':\n case 'enabled':\n return (\n <Button\n {...dangerButtonProps}\n width={120}\n height={41}\n labelClassName=\"d-flex w-100 justify-content-center\"\n label=\"停止する\"\n textFontSize={14}\n onClick={() => onStop()}\n />\n );\n case 'finished':\n return (\n <Button\n {...warningButtonProps}\n width={120}\n height={41}\n labelClassName=\"d-flex w-100 justify-content-center\"\n label=\"利用再開する\"\n textFontSize={14}\n onClick={() => onRestart()}\n disabled={disabled}\n />\n );\n default:\n return (\n <GreenButton\n width={120}\n height={41}\n labelClassName=\"d-flex w-100 justify-content-center\"\n label=\"申込みに進む\"\n textFontSize={14}\n onClick={() => onForward()}\n disabled={disabled}\n />\n );\n }\n};\n\nexport default OptionButton;\n","import { useCallback, useReducer } from 'react';\nimport {\n deleteFacilityTourApplicantOption,\n restartFacilityTourApplicantOption,\n} from '../../../../../api/MyCorporate/Option/FacilityTourApplicant';\nconst P = 'MY_CORPORATE_OPTION_LIST_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useList = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const onStopFacilityTourApplicantOption = useCallback(async () => {\n try {\n mask();\n await deleteFacilityTourApplicantOption();\n changeState({ errorMessage: '' });\n location.href = location.href;\n } catch (error) {\n console.error(error);\n changeState({ errorMessage: '停止に失敗しました' });\n unmask();\n }\n }, []);\n\n const onRestartFacilityTourApplicantOption = useCallback(async () => {\n try {\n mask();\n await restartFacilityTourApplicantOption();\n changeState({ errorMessage: '' });\n location.href = location.href;\n } catch (error) {\n console.error(error);\n changeState({ errorMessage: '停止に失敗しました' });\n unmask();\n }\n }, []);\n return {\n isLoading,\n onStopFacilityTourApplicantOption,\n onRestartFacilityTourApplicantOption,\n };\n};\n","import React from 'react';\nimport { usePasswordResetModule } from '../../modules/MyCorporate/passwordResetModule';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\n\nconst PasswordReset = () => {\n const {\n // store\n isLoading,\n error,\n formError,\n // actions\n register,\n handleSubmit,\n onSubmit,\n } = usePasswordResetModule();\n\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <form className=\"pt-5\" onSubmit={handleSubmit(onSubmit)}>\n <div className=\"w-100 d-flex justify-content-center flex-column align-items-center\">\n <div className=\"w-100 d-flex\" style={{ maxWidth: '540px' }}>\n <div className=\"d-flex justify-content-start\">\n <h6 className=\"d-flex\">ENMAP(施設管理画面)</h6>\n </div>\n </div>\n <div\n className=\"w-100 d-flex justify-content-start bg-white border border-2 border-primary\"\n style={{ maxWidth: '540px', borderRadius: '1rem' }}>\n <div className=\"w-100\">\n <div\n className=\"w-100 d-flex justify-content-start mt-3\"\n style={{ borderBottom: '2px solid #cccccc' }}>\n <div\n className=\"d-flex flex-row fw-bold\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex ms-3 me-4\">LOGIN</div>\n <div className=\"d-flex\">\n ログインID・パスワードを入力し、ログインボタンを押して下さい\n </div>\n </div>\n </div>\n <div className=\"p-5\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-row\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">ログインID:</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'ログインIDは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"メールアドレス\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <button\n style={{ borderRadius: '1rem', width: '280px' }}\n className=\"btn btn-primary\"\n disabled={isLoading}>\n パスワードをリセットする\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </form>\n </>\n );\n};\n\nexport default PasswordReset;\n","import React, { useEffect, useState } from 'react';\nimport DatePicker from 'react-datepicker';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport VerticalDivider from '../../../components/Divider/VerticalDivider';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityAttachmentFileUpload from '../../../components/Modal/FacilityAttachmentFileUpload';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\nimport Trash from '../../../components/Trash';\nimport { useNow } from '../../../hooks/useNow';\nimport { useScrollToError } from '../../../hooks/useScrollToError';\nimport { useMyCorporateRecruitmentCreateModule } from '../../../modules/MyCorporate/Recruitment/createModule';\nimport AttachedFileDeleteModal from '../../../components/Modal/AttachedFileDeleteModal';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport { calcEstYearlyAmount } from './commonFunc';\nimport { emailReg, inputOnlyNumber, phoneReg } from '../../../../utils/common';\nimport dayjs from 'dayjs';\n\nconst BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人情報',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報詳細',\n },\n];\n\nconst Create = ({\n fromRecruitment = null,\n isOldFormat = true,\n selectableYears,\n nowYear,\n}) => {\n const {\n // store\n pdfs,\n pdfUploadErrorMessage,\n isLoading,\n errors,\n errorMessage,\n // actions\n initializeRecruitment,\n register,\n setValue,\n handleSubmit,\n watch,\n addPdfFiles,\n save,\n saveDraft,\n trigger,\n deletePdfFile,\n jobTypeOptionField,\n allowanceOptionField,\n } = useMyCorporateRecruitmentCreateModule();\n const now = useNow();\n\n useEffect(() => {\n let hasAllowanceOption = false;\n let hasJobTypeOption = false;\n if (fromRecruitment) {\n initializeRecruitment(fromRecruitment);\n if (fromRecruitment.required_document_option_values.length > 0) {\n setValue(\n 'required_document_option',\n fromRecruitment.required_document_option_values,\n );\n }\n if (fromRecruitment.document_submission_option_values.length > 0) {\n setValue(\n 'document_submission_option',\n fromRecruitment.document_submission_option_values,\n );\n }\n if (\n !fromRecruitment.is_old_format &&\n fromRecruitment.job_type_options.length > 0\n ) {\n setValue(\n 'recruitment_job_type_options',\n fromRecruitment.job_type_options,\n );\n hasJobTypeOption = true;\n }\n if (\n !fromRecruitment.is_old_format &&\n fromRecruitment.allowance_options.length > 0\n ) {\n setValue(\n 'recruitment_allowance_options',\n fromRecruitment.allowance_options,\n );\n hasAllowanceOption = true;\n }\n }\n if (!isOldFormat) {\n if (!hasJobTypeOption) {\n jobTypeOptionField.append(\n {},\n {\n shouldFocus: false,\n },\n );\n }\n if (!hasAllowanceOption) {\n allowanceOptionField.append(\n {\n category: 'all',\n },\n {\n shouldFocus: false,\n },\n );\n }\n }\n }, [fromRecruitment]);\n\n useEffect(() => {\n if (nowYear) {\n setValue('recruitment_schedule_date', `${nowYear}-04-01`);\n }\n }, [nowYear]);\n\n const [isOpenFileUploadModal, setIsOpenFileUploadModal] = useState(false);\n const [isOpenAttachedFileDeleteModal, setIsOpenAttachedFileDeleteModal] =\n useState(false);\n const [deleteTargetFile, setDeleteTargetFile] = useState({\n id: null,\n filePath: null,\n name: null,\n });\n\n const maximumFractionDigits = 1; // 小数点以降の長さ\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '220px',\n fontSize: '1rem',\n };\n\n const calcCategoryTargetSalary = (base = 0, items = []) => {\n const filtered = items?.filter((f) => !isNaN(f.amount));\n if (filtered?.length > 0) {\n return (\n Number(base) +\n filtered\n .map((f) => Number(f.amount))\n .reduce(function (sum, elem) {\n return sum + elem;\n })\n );\n }\n return base ? base : 0;\n };\n\n const calcCategoryAllSalary = (base = 0, items = []) => {\n const filtered = items?.filter(\n (f) => f.category === 'all' && !isNaN(f.amount),\n );\n if (filtered?.length > 0) {\n return (\n Number(base) +\n filtered\n .map((f) => Number(f.amount))\n .reduce(function (sum, elem) {\n return sum + elem;\n })\n );\n }\n return base ? base : 0;\n };\n\n const getMinReleaseDate = () => {\n const now = new Date();\n // 選択している採用予定年度が次年度の場合、公開開始日は翌年4月1日以降\n if (watch('recruitment_schedule_date')) {\n const selectedYear = dayjs(watch('recruitment_schedule_date')).year();\n if (selectedYear > now.getFullYear()) {\n return new Date(now.getFullYear(), 3, 1);\n }\n }\n return now;\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n\n <form onSubmit={handleSubmit(save)}>\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"求人情報 新規登録\"\n subTitle=\"求人情報の新規登録を行います\"\n />\n </div>\n <Paper\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"求人情報\" />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n - 最下部の「紐付け施設選択」ボタンを押下して下さい\n <br />-\n 多くの学生がスマートフォンから閲覧するため長文はお控え下さい\n </p>\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 入職予定年月 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('recruitment_schedule_date', {\n required: '入職予定年月は必須です',\n })}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}\n onChange={({ target: { value } }) => {\n // 公開開始日をリセット\n setValue('release_date', '');\n setValue('recruitment_schedule_date', value);\n }}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {selectableYears.map((value) => (\n <option value={`${value}-04-01`} key={`${value}-04-01`}>\n {value}年4月\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.recruitment_schedule_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 公開開始日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('release_date', {\n required: '公開開始日は必須です',\n })}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('release_date') ?? ''}\n onChange={(date) => {\n setValue('release_date', date);\n }}\n disabled={!watch('recruitment_schedule_date')}\n minDate={getMinReleaseDate()}\n />\n <span className=\"text-danger\">\n {errors?.release_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n タイトル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('title', {\n required: 'タイトルは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"タイトル(学生には公開されません)\"\n />\n <span className=\"text-danger\">\n {errors?.title?.message}\n </span>\n </BodyCell>\n </TableRow>\n {isOldFormat ? (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用職種 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('job_type', {\n required: '採用職種は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"教諭・保育士など\"\n />\n <span className=\"text-danger\">\n {errors?.job_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用人数 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruitment_number', {\n required: '採用人数は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"教諭:〇人、保育士:〇人\"\n />\n <span className=\"text-danger\">\n {errors?.recruitment_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n </>\n ) : (\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用職種・人数 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {jobTypeOptionField.fields.map((field, i) => (\n <div\n className=\"d-flex flex-row align-items-center mb-2\"\n key={field.id}>\n <div className=\"d-flex flex-column justify-content-start w-100\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register(\n `recruitment_job_type_options.${i}.name`,\n {\n required: '採用職種は必須です',\n },\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '200px' }}\n />\n <input\n {...register(\n `recruitment_job_type_options.${i}.recruitment_number`,\n {\n required: '人数は必須です',\n min: {\n value: 1,\n message: '人数は1以上で入力してください',\n },\n },\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '100px' }}\n onChange={({ target: { value } }) => {\n const field = `recruitment_job_type_options.${i}.recruitment_number`;\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n />\n <div\n className=\"d-flex mt-3\"\n style={{ fontSize: '14px' }}>\n 名\n </div>\n </div>\n <div className=\"d-flex flex-column\">\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_job_type_options?.[i]\n ?.name?.message\n }\n </span>\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_job_type_options?.[i]\n ?.recruitment_number?.message\n }\n </span>\n </div>\n </div>\n {jobTypeOptionField.fields.length > 1 && (\n <div className=\"d-flex justify-content-end w-100\">\n <span\n className=\"text-danger\"\n onClick={() => {\n jobTypeOptionField.remove(i);\n }}\n style={{ fontSize: '14px', cursor: 'pointer' }}>\n <i className=\"bi bi-dash-circle-fill\" />\n </span>\n </div>\n )}\n </div>\n ))}\n {jobTypeOptionField.fields.length < 10 && (\n <span\n className=\"mt-1\"\n style={{\n color: '#92D050',\n fontSize: '14px',\n cursor: 'pointer',\n }}\n onClick={() => {\n jobTypeOptionField.append(\n {},\n { shouldFocus: false },\n );\n }}>\n <i className=\"bi bi-plus-circle-fill\" />\n <span className=\"ps-1\" style={{ color: '#666666' }}>\n 職種を追加する\n </span>\n </span>\n )}\n </BodyCell>\n </TableRow>\n )}\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 就労形態{' '}\n {watch('working_form') === 'other' && (\n <span className=\"text-danger\">*必須</span>\n )}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('working_form')}\n className=\"form-select\"\n style={{ width: '100%' }}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'employee', label: '正社員' },\n { value: 'contract_employee', label: '契約社員' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n {watch('working_form') === 'other' && (\n <input\n {...register('working_form_info', {\n required:\n watch('working_form') === 'other'\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n type=\"string\"\n placeholder=\"その他を選択した場合、内容をこちらに入力してください。\"\n className=\"form-control mt-1\"\n />\n )}\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額基本給与 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('monthly_salary', {\n required: '月額基本給与は必須です',\n })}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'monthly_salary';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n />\n <div\n className=\"d-flex mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <span className=\"text-danger\">半角数字のみ入力可</span>\n <span className=\"text-danger\">\n {errors?.monthly_salary?.message}\n </span>\n </div>\n </BodyCell>\n </TableRow>\n\n {isOldFormat ? (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額諸手当\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_allowance')}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇〇手当: 〇〇円 〇〇手当: 〇〇円\"\n />\n <span className=\"text-danger\">\n {errors?.monthly_allowance?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額総支給額 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_salary_total', {\n required: '月額総支給額は必須です',\n })}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇〇の場合:〇〇円 〇〇の場合:〇〇円\"\n />\n <span className=\"text-danger\">\n {errors?.monthly_salary_total?.message}\n </span>\n </BodyCell>\n </TableRow>\n </>\n ) : (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額諸手当\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {allowanceOptionField.fields.map((field, i) => (\n <div\n className=\"d-flex flex-row align-items-center mb-2\"\n key={field.id}>\n <div className=\"d-flex flex-column justify-content-start w-100\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.name`,\n )}\n type=\"text\"\n className=\"form-control\"\n style={{ maxWidth: '200px' }}\n placeholder=\"○○手当\"\n />\n <VerticalDivider\n height=\"30px\"\n hrClassName=\"mx-2\"\n />\n <span className=\"me-2\">月額手当額</span>\n <input\n {...register(\n `recruitment_allowance_options.${i}.amount`,\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '150px' }}\n placeholder=\"5000\"\n onChange={({ target: { value } }) => {\n const field = `recruitment_allowance_options.${i}.amount`;\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n />\n <div\n className=\"d-flex mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n <VerticalDivider\n height=\"30px\"\n hrClassName=\"mx-2\"\n />\n <div className=\"d-flex align-items-center me-2\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.category`,\n )}\n type=\"radio\"\n id={`recruitment_allowance_options.${i}.category_all`}\n className=\"form-check-input me-1\"\n value=\"all\"\n />\n <label\n htmlFor={`recruitment_allowance_options.${i}.category_all`}>\n 応募者に一律支給\n </label>\n </div>\n <div className=\"d-flex align-items-center\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.category`,\n )}\n type=\"radio\"\n id={`recruitment_allowance_options.${i}.category_target`}\n className=\"form-check-input me-1\"\n value=\"target\"\n />\n <label\n htmlFor={`recruitment_allowance_options.${i}.category_target`}>\n 対象者のみ支給\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-column\">\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_allowance_options?.[i]\n ?.name?.message\n }\n </span>\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_allowance_options?.[i]\n ?.amount?.message\n }\n </span>\n </div>\n </div>\n {allowanceOptionField.fields.length > 1 && (\n <div className=\"d-flex justify-content-end\">\n <span\n className=\"text-danger\"\n onClick={() => {\n allowanceOptionField.remove(i);\n }}\n style={{\n fontSize: '14px',\n cursor: 'pointer',\n }}>\n <i className=\"bi bi-dash-circle-fill\" />\n </span>\n </div>\n )}\n </div>\n ))}\n {allowanceOptionField.fields.length < 10 && (\n <span\n className=\"mt-1\"\n style={{\n color: '#92D050',\n fontSize: '14px',\n cursor: 'pointer',\n }}\n onClick={() => {\n allowanceOptionField.append(\n {\n category: 'all',\n },\n { shouldFocus: false },\n );\n }}>\n <i className=\"bi bi-plus-circle-fill\" />\n <span className=\"ps-1\" style={{ color: '#666666' }}>\n 手当を追加する\n </span>\n </span>\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額総支給額\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcCategoryAllSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n )}\n />\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>\n 対象者のみ支給額\n </span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcCategoryTargetSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n )}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </>\n )}\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 賞与支給条件 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('bonus_info', {\n required: '賞与支給条件は必須です',\n })}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"通常 :年〇回 基本給与〇ヵ月分 初年度:年〇回 基本給与〇ヵ月分\"\n />\n <span className=\"text-danger\">\n {errors?.bonus_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間賞与支給予定額{' '}\n <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n {...register(\n 'est_yearly_bonus_amount_for_uniformly',\n {\n required: '一律支給額は必須です',\n },\n )}\n className=\"form-control\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field =\n 'est_yearly_bonus_amount_for_uniformly';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"text-danger\">\n {errors?.est_yearly_bonus_amount_for_uniformly?.message}\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>対象者のみ支給額</span>\n <input\n {...register('est_yearly_bonus_amount_for_target', {\n required: '対象者のみ支給額は必須です',\n })}\n className=\"form-control\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'est_yearly_bonus_amount_for_target';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n\n <div className=\"text-danger\">\n {errors.est_yearly_bonus_amount_for_target?.message}\n </div>\n </div>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間総支給額(自動)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcEstYearlyAmount(\n calcCategoryAllSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n ),\n watch('est_yearly_bonus_amount_for_uniformly') ?? 0,\n )}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>対象者のみ支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcEstYearlyAmount(\n calcCategoryTargetSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n ),\n watch('est_yearly_bonus_amount_for_target') ?? 0,\n )}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 給与備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_salary_note')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"年収〇〇円、諸手当は該当者のみ\"\n />\n <span className=\"text-danger\">\n {errors?.monthly_salary_note?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 昇給\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('salary_rise_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"年〇回 〇円~〇円、〇%~〇%\"\n />\n <span className=\"text-danger\">\n {errors?.salary_rise_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 交通費 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('travel_expense_cover_option', {\n required: '交通費は必須です',\n })}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'all', label: '全額支給' },\n { value: 'some', label: '一部支給' },\n { value: 'nothing', label: 'なし' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.travel_expense_cover_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 交通費備考{' '}\n {['some', 'other'].includes(\n watch('travel_expense_cover_option'),\n ) && <span className=\"text-danger\">*必須</span>}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('travel_expense_cover_info', {\n required: ['some', 'other'].includes(\n watch('travel_expense_cover_option'),\n )\n ? '「一部支給」「その他」を設定した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n />\n <span className=\"text-danger\">\n {errors?.travel_expense_cover_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 加入保険等\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('insurance_policy_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"健康保険、厚生年金、雇用保険など\"\n />\n <span className=\"text-danger\">\n {errors?.insurance_policy_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 福利厚生\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('welfare_info')}\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.welfare_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 家賃補助\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('housing_allowance_option')}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'all', label: '全額支給' },\n { value: 'some', label: '一部支給' },\n { value: 'nothing', label: 'なし' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.housing_allowance_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 家賃補助備考{' '}\n {['some', 'other'].includes(\n watch('housing_allowance_option'),\n ) && <span className=\"text-danger\">*必須</span>}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('housing_allowance_info', {\n required: ['some', 'other'].includes(\n watch('housing_allowance_option'),\n )\n ? '「一部支給」「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.housing_allowance_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 勤務時間(平日) <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('weekday_working_hour_info', {\n required: '勤務時間(平日)は必須です',\n })}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"00:00~00:00(休憩時間〇時間)\"\n />\n <span className=\"text-danger\">\n {errors?.weekday_working_hour_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 勤務時間(平日以外)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('holiday_working_hour_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"00:00~00:00(月〇回)\"\n />\n <span className=\"text-danger\">\n {errors?.holiday_working_hour_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 休日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('holiday_info', {\n required: '休日は必須です',\n })}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"土・日・祝(土曜日は月〇回程度出勤)\"\n />\n <span className=\"text-danger\">\n {errors?.holiday_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間休日数\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div>\n <input\n {...register('annual_holiday_number')}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ maxWidth: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'annual_holiday_number';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n return setValue(field, value);\n }}\n />\n <span style={{ fontSize: '14px' }}>日</span>\n </div>\n <span className=\"text-danger\">半角数字のみ入力可</span>\n <span className=\"text-danger\">\n {errors?.annual_holiday_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 初年度有給休暇日数{' '}\n <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div>\n <input\n {...register('paid_holiday_number', {\n required: '初年度有給休暇日数は必須です',\n })}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ maxWidth: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'paid_holiday_number';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n return setValue(field, value);\n }}\n />\n <span style={{ fontSize: '14px' }}>日</span>\n </div>\n <span className=\"text-danger\">半角数字のみ入力可</span>\n <span className=\"text-danger\">\n {errors?.paid_holiday_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 休日・有給備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('holiday_info_note')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"初年度の有給取得は入社半年後から可能\"\n />\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 通勤時間 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('commuting_time_info', {\n required: '通勤時間は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"〇分以内など\"\n />\n <span className=\"text-danger\">\n {errors?.commuting_time_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 自動車通勤\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"bicycle_ok\"\n {...register('bicycle_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n />\n <label\n htmlFor=\"bicycle_ok\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 可\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"bicycle_ng\"\n {...register('bicycle_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n />\n <label\n htmlFor=\"bicycle_ng\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.bicycle_ok?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n バイク通勤\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"motor_bike_ok\"\n {...register('motor_bike_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n />\n <label\n htmlFor=\"motor_bike_ok\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 可\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"motor_bike_ng\"\n {...register('motor_bike_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n />\n <label\n htmlFor=\"motor_bike_ng\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.motor_bike_ok?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用条件備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('hiring_standard_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇年〇月卒業見込みの方、保育士資格取得見込みの方など\"\n />\n <span className=\"text-danger\">\n {errors?.hiring_standard_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園の方針、採用のポイント\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('en_policy')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n />\n <span className=\"text-danger\">\n {errors?.en_policy?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"応募情報\" />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出書類 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"resume\"\n id=\"required_document_option_resume\"\n />\n <label\n htmlFor=\"required_document_option_resume\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 履歴書\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"certificate_of_expected_qualification\"\n id=\"required_document_option_certificate_of_expected_qualification\"\n />\n <label\n htmlFor=\"required_document_option_certificate_of_expected_qualification\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 資格取得見込証明書(幼・保)\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"health_certificate\"\n id=\"required_document_option_health_certificate\"\n />\n <label\n htmlFor=\"required_document_option_health_certificate\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 健康診断書\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"certificate_of_expected_graduation\"\n id=\"required_document_option_certificate_of_expected_graduation\"\n />\n <label\n htmlFor=\"required_document_option_certificate_of_expected_graduation\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 卒業見込証明書\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"required_document_option_other\"\n />\n <label\n htmlFor=\"required_document_option_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.required_document_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出書類備考{' '}\n {watch('required_document_option')?.includes('other') && (\n <span className=\"text-danger\">*必須</span>\n )}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('required_documents_info', {\n required: watch('required_document_option')?.includes(\n 'other',\n )\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.required_documents_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出方法 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('document_submission_option', {\n required: '提出方法は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"mail\"\n id=\"document_submission_option_mail\"\n />\n <label\n htmlFor=\"document_submission_option_mail\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 郵送\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('document_submission_option', {\n required: '提出方法は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"email\"\n id=\"document_submission_option_email\"\n />\n <label\n htmlFor=\"document_submission_option_email\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n メール\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('document_submission_option', {\n required: '提出方法は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"document_submission_option_other\"\n />\n <label\n htmlFor=\"document_submission_option_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.document_submission_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出方法備考{' '}\n {watch('document_submission_option')?.includes('other') && (\n <span className=\"text-danger\">*必須</span>\n )}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('document_submission_info', {\n required: watch('document_submission_option')?.includes(\n 'other',\n )\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n />\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出期限 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('document_submission_term_info', {\n required: '提出期限は必須です',\n })}\n className=\"form-control\"\n placeholder=\"〇月〇日~〇月〇日まで、随時など\"\n />\n <span className=\"text-danger\">\n {errors?.document_submission_term_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考方法 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('selection_process_info', {\n required: '選考方法は必須です',\n })}\n className=\"form-control\"\n placeholder=\"面接、筆記(試験・作文)、実技(読み聞かせ)など\"\n />\n <span className=\"text-danger\">\n {errors?.selection_process_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考日程\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('selection_date_info')}\n className=\"form-control\"\n placeholder=\"〇月〇日 00:00~\"\n />\n <span className=\"text-danger\">\n {errors?.selection_date_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考場所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('interview_location_info', {\n required: '選考場所は必須です',\n })}\n className=\"form-control\"\n placeholder=\"〇〇幼稚園、〇〇保育所、法人本部など\"\n />\n <span className=\"text-danger\">\n {errors?.interview_location_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n その他携行品\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('required_item_info')}\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.required_item_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学可否 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observability_option_ok\"\n {...register('observability_option', {\n required: '園見学可否は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n />\n <label\n htmlFor=\"observability_option_ok\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 可\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observability_option_ng\"\n {...register('observability_option', {\n required: '園見学可否は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n />\n <label\n htmlFor=\"observability_option_ng\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.observability_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学可否備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('observability_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n />\n <span className=\"text-danger\">\n {errors?.observability_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学申込方法\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_cell\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"call\"\n />\n <label\n htmlFor=\"observation_application_option_cell\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 電話\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_email\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"email\"\n />\n <label\n htmlFor=\"observation_application_option_email\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n メール\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_mail\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"mail\"\n />\n <label\n htmlFor=\"observation_application_option_mail\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 郵送\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_other\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"other\"\n />\n <label\n htmlFor=\"observation_application_option_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.observation_application_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学申込方法備考{' '}\n {watch('observation_application_info')?.includes(\n 'other',\n ) && <span className=\"text-danger\">*必須</span>}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('observation_application_info', {\n required: watch(\n 'observation_application_info',\n )?.includes('other')\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.observation_application_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 応募情報備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('job_application_info')}\n className=\"form-control\"\n placeholder=\"結果通知の方法など\"\n />\n <span className=\"text-danger\">\n {errors?.job_application_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('recruiter_name', {\n required: '採用担当者は必須です',\n })}\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.recruiter_name?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_role')}\n className=\"form-control\"\n type=\"text\"\n />\n <span className=\"text-danger\">\n {errors?.recruiter_role?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当連絡先(TEL){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_tel', {\n required:\n !watch('recruiter_tel') && !watch('recruiter_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) =>\n !input ||\n (phoneReg.test(input) &&\n input\n .split('-')\n .filter((v) => !!v)\n .every((v) => !isNaN(Number(v)))),\n })}\n type=\"tel\"\n className=\"form-control\"\n placeholder=\"000-0000-0000\"\n />\n <span className=\"text-danger\">\n {errors?.recruiter_tel?.type === 'validate' &&\n '電話番号の形式が正しくありません'}\n {errors?.recruiter_tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当連絡先(メール){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_email', {\n required:\n !watch('recruiter_tel') && !watch('recruiter_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) => !input || emailReg.test(input),\n })}\n type=\"email\"\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.recruiter_email?.type === 'validate' &&\n 'メールアドレスの形式が正しくありません'}\n {errors?.recruiter_email?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"py-3 d-flex justify-content-center\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <Paper\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"その他添付ファイル\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenFileUploadModal(true);\n }}\n />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n -\n 学生へ見せたい資料(PDF)はPDF登録ボタンよりご登録ください\n <br />\n - 10MBまで\n <br />-\n 青少年雇用情報シートは法人情報画面よりご登録ください\n </p>\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableHead>\n <HeadCell width={150} label=\"アップロード日\" />\n <HeadCell label=\"ファイル名\" />\n </TableHead>\n <TableBody>\n {pdfs.map((pdfData, i) => (\n <TableRow key={i}>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {pdfData.uploadDate}\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-row w-100 align-items-center\">\n <div className=\"d-flex justify-content-start w-100\">\n <a\n href={pdfData.signedUrl}\n target=\"_blank\"\n rel=\"nofollow\">\n {pdfData.name}\n </a>\n </div>\n <div className=\"d-flex justify-content-end w-100 me-2\">\n <Trash\n onClick={() => {\n setIsOpenAttachedFileDeleteModal(true);\n setDeleteTargetFile({\n id: pdfData?.id,\n filePath: pdfData.filePath,\n name: pdfData.name,\n });\n }}\n />\n </div>\n </div>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/recruitments';\n }}\n />\n <OrangeButton\n width={100}\n height={44}\n label=\"下書き保存\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return saveDraft(watch());\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"紐付け施設選択\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save(watch());\n } else {\n return useScrollToError(errors);\n }\n }}\n />\n </div>\n </form>\n <FacilityAttachmentFileUpload\n errorMessage={pdfUploadErrorMessage}\n isShow={isOpenFileUploadModal}\n onClose={() => setIsOpenFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n if (file) {\n return addPdfFiles({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n created_at: now.format('YYYY-MM-DD HH:mm:ss'),\n updated_at: now.format('YYYY-MM-DD HH:mm:ss'),\n }).then(() => setIsOpenFileUploadModal(false));\n }\n setIsOpenFileUploadModal(false);\n }}\n />\n <AttachedFileDeleteModal\n isShow={isOpenAttachedFileDeleteModal}\n onHide={() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n filePath: null,\n name: null,\n });\n }}\n onDelete={() => {\n deletePdfFile(deleteTargetFile).finally(() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n filePath: null,\n name: null,\n });\n });\n }}\n okLabel=\"削除\"\n />\n </div>\n );\n};\n\nexport default Create;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport DatePicker from 'react-datepicker';\nimport {\n cvtRecruitmentStatusValue,\n emailReg,\n inputOnlyNumber,\n phoneReg,\n} from '../../../../utils/common';\nimport { RECRUITMENT_STATUS } from '../../../../utils/constant';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport OrangeButton from '../../../components/Buttons/OrangeButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityAttachmentFileUpload from '../../../components/Modal/FacilityAttachmentFileUpload';\nimport AttachedFileDeleteModal from '../../../components/Modal/AttachedFileDeleteModal';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\nimport { useScrollToError } from '../../../hooks/useScrollToError';\nimport { useMyCorporateRecruitmentDetailModule } from '../../../modules/MyCorporate/Recruitment/detailModule';\nimport { useNow } from '../../../hooks/useNow';\nimport Trash from '../../../components/Trash';\nimport VerticalDivider from '../../../components/Divider/VerticalDivider';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport ReopenRecruitmentModal from './components/ReopenRecruitmentModal';\nimport CloseRecruitmentModal from './components/CloseRecruitmentModal';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport DeleteModal from '../../../components/Modal/DeleteModal';\nimport { calcEstYearlyAmount } from './commonFunc';\nimport dayjs from 'dayjs';\n\nconst Detail = ({\n recruitment,\n attachedFiles,\n isOldFormat = true,\n selectableYears,\n selectedYear,\n}) => {\n const [defaultReleaseDate, setDefaultReleaseDate] = useState(\n recruitment.release_date,\n );\n const breadcrumbItems = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人管理',\n },\n {\n text: '求人情報',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報詳細',\n },\n ];\n const {\n // store\n id,\n isLoading,\n errors,\n errorMessage,\n pdfs,\n pdfUploadErrorMessage,\n // actions\n changeState,\n register,\n setValue,\n handleSubmit,\n watch,\n save,\n setId,\n trigger,\n initializeRecruitment,\n addPdfFiles,\n deletePdfFile,\n jobTypeOptionField,\n allowanceOptionField,\n onCloseRecruitment,\n onReopenRecruitment,\n onDeleteRecruitment,\n } = useMyCorporateRecruitmentDetailModule();\n\n useEffect(() => {\n setId(recruitment.id);\n initializeRecruitment(recruitment);\n if (\n !recruitment?.job_type_options ||\n recruitment?.job_type_options?.length === 0\n ) {\n jobTypeOptionField.append({}, { shouldFocus: false });\n }\n if (\n !recruitment?.allowance_options ||\n recruitment?.allowance_options?.length === 0\n ) {\n allowanceOptionField.append(\n {\n category: 'all',\n },\n { shouldFocus: false },\n );\n }\n }, []);\n\n useEffect(() => {\n if (attachedFiles) {\n changeState({\n pdfs: attachedFiles?.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n filePath: pdf.file_path,\n signedUrl: pdf.signed_url,\n uploadDate: pdf.upload_date,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n })),\n });\n }\n }, [attachedFiles]);\n\n useEffect(() => {\n useScrollToError(errors);\n }, [errors]);\n\n const [isOpenFileUploadModal, setIsOpenFileUploadModal] = useState(false);\n const [isOpenAttachedFileDeleteModal, setIsOpenAttachedFileDeleteModal] =\n useState(false);\n const [deleteTargetFile, setDeleteTargetFile] = useState({\n id: null,\n filePath: null,\n name,\n });\n\n const now = useNow();\n const maximumFractionDigits = 1; // 小数点以降の長さ\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '220px',\n fontSize: '1rem',\n };\n\n const calcCategoryTargetSalary = (base = 0, items = []) => {\n const filtered = items?.filter((f) => !isNaN(f.amount));\n if (filtered?.length > 0) {\n return (\n Number(base) +\n filtered\n .map((f) => Number(f.amount))\n .reduce(function (sum, elem) {\n return sum + elem;\n })\n );\n }\n return base ? base : 0;\n };\n\n const calcCategoryAllSalary = (base = 0, items = []) => {\n const filtered = items?.filter(\n (f) => f.category === 'all' && !isNaN(f.amount),\n );\n if (filtered?.length > 0) {\n return (\n Number(base) +\n filtered\n .map((f) => Number(f.amount))\n .reduce(function (sum, elem) {\n return sum + elem;\n })\n );\n }\n return base ? base : 0;\n };\n\n const isDisabled =\n recruitment.disabled_edit || recruitment.recruitment_is_closed;\n const [reopenRecruitmentInfo, setReopenRecruitmentInfo] = useState({\n isOpen: false,\n recruitmentId: null,\n });\n const [closeRecruitmentInfo, setCloseRecruitmentInfo] = useState({\n isOpen: false,\n recruitmentId: null,\n });\n const [deleteRecruitmentInfo, setDeleteRecruitmentInfo] = useState({\n isOpen: false,\n recruitmentId: null,\n });\n const openReopenRecruitmentModal = useCallback((recruitmentId) => {\n setReopenRecruitmentInfo({\n isOpen: true,\n recruitmentId,\n });\n }, []);\n const resetReopenRecruitmentInfo = useCallback(() => {\n setReopenRecruitmentInfo({\n isOpen: false,\n recruitmentId: null,\n });\n }, []);\n const openCloseRecruitmentModal = useCallback((recruitmentId) => {\n setCloseRecruitmentInfo({\n isOpen: true,\n recruitmentId,\n });\n }, []);\n const openDeleteRecruitmentModal = useCallback((recruitmentId) => {\n setDeleteRecruitmentInfo({\n isOpen: true,\n recruitmentId,\n });\n }, []);\n const resetCloseRecruitmentInfo = useCallback(() => {\n setCloseRecruitmentInfo({\n isOpen: false,\n recruitmentId: null,\n });\n }, []);\n const resetDeleteRecruitmentInfo = useCallback(() => {\n setDeleteRecruitmentInfo({\n isOpen: false,\n recruitmentId: null,\n });\n }, []);\n\n const getMinReleaseDate = () => {\n const now = new Date();\n // 選択している採用予定年度が次年度の場合、公開開始日は翌年4月1日以降\n if (watch('recruitment_schedule_date')) {\n const selectedYear = dayjs(watch('recruitment_schedule_date')).year();\n if (selectedYear > now.getFullYear()) {\n return new Date(now.getFullYear(), 3, 1);\n }\n }\n if (!defaultReleaseDate) {\n return now;\n } else if (defaultReleaseDate < now) {\n return defaultReleaseDate;\n }\n return now;\n };\n\n const renderRecruitmentCloseButton = () => {\n if (recruitment.status === 'draft') {\n return (\n <BlackButton\n onClick={(e) => {\n e.preventDefault();\n openDeleteRecruitmentModal(recruitment.id);\n }}\n label=\"削除\"\n textFontSize={16}\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n height={44}\n width={100}\n />\n );\n }\n if (recruitment.recruitment_is_closed) {\n return (\n <BlackButton\n onClick={(e) => {\n e.preventDefault();\n openReopenRecruitmentModal(recruitment.id);\n }}\n label=\"募集を再開\"\n textFontSize={16}\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n height={44}\n disabled={\n recruitment.status === 'draft' ||\n !recruitment.published ||\n recruitment.is_old_year\n }\n />\n );\n }\n return (\n <BlackButton\n onClick={(e) => {\n e.preventDefault();\n openCloseRecruitmentModal(recruitment.id);\n }}\n label=\"募集を終了\"\n textFontSize={16}\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n height={44}\n disabled={!recruitment.published || recruitment.is_old_year}\n />\n );\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n\n <form onSubmit={handleSubmit(save)}>\n <FacilityBreadcrumbs items={breadcrumbItems} />\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"求人情報詳細\"\n subTitle=\"求人情報の確認・編集を行います\"\n />\n </div>\n <Paper\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"求人情報\" />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n {cvtRecruitmentStatusValue(recruitment.status) ===\n RECRUITMENT_STATUS.DRAFT ? (\n <p className=\"text-danger fw-bold\">\n - 最下部の「紐付け施設選択」ボタンを押下して下さい\n <br />-\n 多くの学生がスマートフォンから閲覧するため長文はお控え下さい\n </p>\n ) : (\n <p className=\"text-danger fw-bold\">\n - 最下部の「更新」ボタンを押下して下さい\n <br />-\n 多くの学生がスマートフォンから閲覧するため長文はお控え下さい\n </p>\n )}\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 入職予定年月 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {(recruitment.is_lock_recruitment_schedule_date ||\n isDisabled) &&\n selectedYear ? (\n <input\n {...register('recruitment_schedule_date', {\n required: '入職予定年月は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n value={selectedYear}\n disabled\n />\n ) : (\n <select\n {...register('recruitment_schedule_date', {\n required: '入職予定年月は必須です',\n })}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}\n onChange={({ target: { value } }) => {\n // 公開開始日をリセット\n setValue('release_date', '');\n setValue('recruitment_schedule_date', value);\n }}\n disabled={\n recruitment.is_lock_recruitment_schedule_date ||\n isDisabled\n }>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {selectableYears.map((value) => (\n <option\n value={`${value}-04-01`}\n key={`${value}-04-01`}>\n {value}年4月\n </option>\n ))}\n </select>\n )}\n <span className=\"text-danger\">\n {errors?.recruitment_schedule_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 公開開始日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <DatePicker\n {...register('release_date', {\n required: '公開開始日は必須です',\n })}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('release_date') ?? ''}\n onChange={(date) => {\n setValue('release_date', date);\n }}\n disabled={\n recruitment.is_lock_release_date ||\n isDisabled ||\n !watch('recruitment_schedule_date')\n }\n minDate={getMinReleaseDate()}\n />\n <span className=\"text-danger\">\n {errors?.release_date?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n ステータス\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0', fontSize: '1rem' }}>\n {recruitment.status_text}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n タイトル <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('title', {\n required: 'タイトルは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"タイトル(学生には公開されません)\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.title?.message}\n </span>\n </BodyCell>\n </TableRow>\n {isOldFormat ? (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用職種 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('job_type', {\n required: '採用職種は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"教諭・保育士など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.job_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用人数 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruitment_number', {\n required: '採用人数は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"教諭:〇人、保育士:〇人\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruitment_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n </>\n ) : (\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用職種・人数 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {jobTypeOptionField.fields.map((field, i) => (\n <div\n className=\"d-flex flex-row align-items-center mb-2\"\n key={field.id}>\n <div className=\"d-flex flex-column justify-content-start w-100\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register(\n `recruitment_job_type_options.${i}.name`,\n {\n required: '採用職種は必須です',\n },\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '200px' }}\n disabled={isDisabled}\n />\n <input\n {...register(\n `recruitment_job_type_options.${i}.recruitment_number`,\n {\n required: '人数は必須です',\n min: {\n value: 1,\n message: '人数は1以上で入力してください',\n },\n },\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '100px' }}\n onChange={({ target: { value } }) => {\n const field = `recruitment_job_type_options.${i}.recruitment_number`;\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum =\n nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (\n floatNum?.length > maximumFractionDigits\n ) {\n return setValue(\n field,\n nums[0] + '.' + floatNum[0],\n );\n }\n return setValue(field, value);\n }}\n disabled={isDisabled}\n />\n <span style={{ fontSize: '14px' }}>名</span>\n </div>\n <div className=\"d-flex flex-column\">\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_job_type_options?.[i]\n ?.name?.message\n }\n </span>\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_job_type_options?.[i]\n ?.recruitment_number?.message\n }\n </span>\n </div>\n </div>\n {!isDisabled && jobTypeOptionField.fields.length > 1 && (\n <div className=\"d-flex justify-content-end w-100\">\n <span\n className=\"text-danger\"\n onClick={() => {\n jobTypeOptionField.remove(i);\n }}\n style={{\n fontSize: '14px',\n cursor: 'pointer',\n }}>\n <i className=\"bi bi-dash-circle-fill\" />\n </span>\n </div>\n )}\n </div>\n ))}\n {!isDisabled && jobTypeOptionField.fields.length < 10 && (\n <span\n className=\"mt-1\"\n style={{\n color: '#92D050',\n fontSize: '14px',\n cursor: 'pointer',\n }}\n onClick={() => {\n jobTypeOptionField.append(\n {},\n { shouldFocus: false },\n );\n }}>\n <i className=\"bi bi-plus-circle-fill\" />\n <span className=\"ps-1\" style={{ color: '#666666' }}>\n 職種を追加する\n </span>\n </span>\n )}\n </BodyCell>\n </TableRow>\n )}\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 就労形態{' '}\n {watch('working_form') === 'other' && (\n <span className=\"text-danger\">*必須</span>\n )}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('working_form')}\n className=\"form-select\"\n style={{ width: '100%' }}\n disabled={isDisabled}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'employee', label: '正社員' },\n { value: 'contract_employee', label: '契約社員' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n {watch('working_form') === 'other' && (\n <input\n {...register('working_form_info', {\n required:\n watch('working_form') === 'other'\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n type=\"string\"\n placeholder=\"その他を選択した場合、内容をこちらに入力してください。\"\n className=\"form-control mt-1\"\n disabled={isDisabled}\n />\n )}\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額基本給与 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div>\n <input\n {...register('monthly_salary', {\n required: '月額基本給与は必須です',\n })}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'monthly_salary';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, Number(value).toString());\n }}\n disabled={isDisabled}\n />\n <span style={{ fontSize: '14px' }}>円</span>\n </div>\n <span className=\"text-danger\">半角数字のみ入力可</span>\n <span className=\"text-danger\">\n {errors?.monthly_salary?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n {isOldFormat ? (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額諸手当\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_allowance')}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇〇手当: 〇〇円 〇〇手当: 〇〇円\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.monthly_allowance?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額総支給額 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_salary_total', {\n required: '月額総支給額は必須です',\n })}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇〇の場合:〇〇円 〇〇の場合:〇〇円\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.monthly_salary_total?.message}\n </span>\n </BodyCell>\n </TableRow>\n </>\n ) : (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額諸手当\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {allowanceOptionField.fields.map((field, i) => (\n <div\n className=\"d-flex flex-row align-items-center mb-2\"\n key={field.id}>\n <div className=\"d-flex flex-column justify-content-start w-100\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.name`,\n )}\n type=\"text\"\n className=\"form-control\"\n style={{ maxWidth: '200px' }}\n placeholder=\"○○手当\"\n disabled={isDisabled}\n />\n <VerticalDivider\n height=\"30px\"\n hrClassName=\"mx-2\"\n />\n <span className=\"me-2\">月額手当額</span>\n <input\n {...register(\n `recruitment_allowance_options.${i}.amount`,\n )}\n type=\"text\"\n className=\"form-control me-2\"\n style={{ maxWidth: '150px' }}\n placeholder=\"5000\"\n onChange={({ target: { value } }) => {\n const field = `recruitment_allowance_options.${i}.amount`;\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum =\n nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (\n floatNum?.length > maximumFractionDigits\n ) {\n return setValue(\n field,\n nums[0] + '.' + floatNum[0],\n );\n }\n return setValue(field, value);\n }}\n disabled={isDisabled}\n />\n 円\n <VerticalDivider\n height=\"30px\"\n hrClassName=\"mx-2\"\n />\n <div className=\"d-flex align-items-center me-2\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.category`,\n )}\n type=\"radio\"\n id={`recruitment_allowance_options.${i}.category_all`}\n className=\"form-check-input me-1\"\n value=\"all\"\n disabled={isDisabled}\n />\n <label\n htmlFor={`recruitment_allowance_options.${i}.category_all`}>\n 応募者に一律支給\n </label>\n </div>\n <div className=\"d-flex align-items-center\">\n <input\n {...register(\n `recruitment_allowance_options.${i}.category`,\n )}\n type=\"radio\"\n id={`recruitment_allowance_options.${i}.category_target`}\n className=\"form-check-input me-1\"\n value=\"target\"\n disabled={isDisabled}\n />\n <label\n htmlFor={`recruitment_allowance_options.${i}.category_target`}>\n 対象者のみ支給\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-column\">\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_allowance_options?.[i]\n ?.name?.message\n }\n </span>\n <span className=\"d-flex text-danger\">\n {\n errors?.recruitment_allowance_options?.[i]\n ?.amount?.message\n }\n </span>\n </div>\n </div>\n {!isDisabled &&\n allowanceOptionField.fields.length > 1 && (\n <div className=\"d-flex justify-content-end\">\n <span\n className=\"text-danger\"\n onClick={() => {\n allowanceOptionField.remove(i);\n }}\n style={{\n fontSize: '14px',\n cursor: 'pointer',\n }}>\n <i className=\"bi bi-dash-circle-fill\" />\n </span>\n </div>\n )}\n </div>\n ))}\n {!isDisabled &&\n allowanceOptionField.fields.length < 10 && (\n <span\n className=\"mt-1\"\n style={{\n color: '#92D050',\n fontSize: '14px',\n cursor: 'pointer',\n }}\n onClick={() => {\n allowanceOptionField.append(\n {\n category: 'all',\n },\n { shouldFocus: false },\n );\n }}>\n <i className=\"bi bi-plus-circle-fill\" />\n <span\n className=\"ps-1\"\n style={{ color: '#666666' }}>\n 手当を追加する\n </span>\n </span>\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 諸手当備考\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_allowance_note')}\n className=\"form-control\"\n style={{ width: '100%' }}\n rows=\"3\"\n cols=\"30\"\n placeholder=\"支給に関する諸条件など\"\n disabled={isDisabled}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 月額総支給額\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcCategoryAllSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n )}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>\n 対象者のみ支給額\n </span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcCategoryTargetSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n )}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n </>\n )}\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 賞与支給条件 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('bonus_info', {\n required: '賞与支給条件は必須です',\n })}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"通常 :年〇回 基本給与〇ヵ月分 初年度:年〇回 基本給与〇ヵ月分\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.bonus_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間賞与支給予定額{' '}\n <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n {...register(\n 'est_yearly_bonus_amount_for_uniformly',\n {\n required: '一律支給額は必須です',\n },\n )}\n className=\"form-control\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field =\n 'est_yearly_bonus_amount_for_uniformly';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n disabled={isDisabled}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"text-danger\">\n {errors?.est_yearly_bonus_amount_for_uniformly?.message}\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>対象者のみ支給額</span>\n <input\n {...register('est_yearly_bonus_amount_for_target', {\n required: '対象者のみ支給額は必須です',\n })}\n className=\"form-control\"\n style={{ width: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'est_yearly_bonus_amount_for_target';\n return inputOnlyNumber(\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits,\n );\n }}\n disabled={isDisabled}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"text-danger\">\n {errors.est_yearly_bonus_amount_for_target?.message}\n </div>\n </div>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間総支給額(自動)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-column\">\n <div className=\"d-flex flex-row align-items-center mb-2\">\n <span style={{ width: '150px' }}>一律支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcEstYearlyAmount(\n calcCategoryAllSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n ),\n watch('est_yearly_bonus_amount_for_uniformly') ?? 0,\n )}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n <div className=\"d-flex flex-row align-items-center\">\n <span style={{ width: '150px' }}>対象者のみ支給額</span>\n <input\n className=\"form-control\"\n style={{ width: '200px' }}\n disabled\n value={calcEstYearlyAmount(\n calcCategoryTargetSalary(\n watch('monthly_salary') ?? 0,\n watch('recruitment_allowance_options'),\n ),\n watch('est_yearly_bonus_amount_for_target') ?? 0,\n )}\n />\n <div\n className=\"d-flex ms-2 mt-3\"\n style={{ fontSize: '14px' }}>\n 円\n </div>\n </div>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 給与備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('monthly_salary_note')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"年収〇〇円、諸手当は該当者のみ\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.monthly_salary_note?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 昇給\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('salary_rise_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"年〇回 〇円~〇円、〇%~〇%\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.salary_rise_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 交通費 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('travel_expense_cover_option', {\n required: '交通費は必須です',\n })}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}\n disabled={isDisabled}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'all', label: '全額支給' },\n { value: 'some', label: '一部支給' },\n { value: 'nothing', label: 'なし' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.travel_expense_cover_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 交通費備考{' '}\n {['some', 'other'].includes(\n watch('travel_expense_cover_option'),\n ) && <span className=\"text-danger\">*必須</span>}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('travel_expense_cover_info', {\n required: ['some', 'other'].includes(\n watch('travel_expense_cover_option'),\n )\n ? '「一部支給」「その他」を設定した場合は必須です'\n : false,\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n placeholder=\"\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.travel_expense_cover_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 加入保険等\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('insurance_policy_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"健康保険、厚生年金、雇用保険など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.insurance_policy_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 福利厚生\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('welfare_info')}\n className=\"form-control\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.welfare_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 家賃補助\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n {...register('housing_allowance_option')}\n defaultValue=\"\"\n className=\"form-select\"\n style={{ width: '100%' }}\n disabled={isDisabled}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {[\n { value: 'all', label: '全額支給' },\n { value: 'some', label: '一部支給' },\n { value: 'nothing', label: 'なし' },\n { value: 'other', label: 'その他' },\n ].map(({ value, label }) => (\n <option value={value} key={value}>\n {label}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.housing_allowance_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 家賃補助備考{' '}\n {['some', 'other'].includes(\n watch('housing_allowance_option'),\n ) && <span className=\"text-danger\">*必須</span>}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('housing_allowance_info', {\n required:\n watch('housing_allowance_option') === 'some' ||\n watch('housing_allowance_option') === 'other'\n ? '「一部支給」「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.housing_allowance_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 勤務時間(平日) <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('weekday_working_hour_info', {\n required: '勤務時間(平日)は必須です',\n })}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"00:00~00:00(休憩時間〇時間)\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.weekday_working_hour_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 勤務時間(平日以外)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('holiday_working_hour_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"00:00~00:00(月〇回)\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.holiday_working_hour_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 休日 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('holiday_info', {\n required: '休日は必須です',\n })}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"土・日・祝(土曜日は月〇回程度出勤)\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.holiday_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 年間休日数\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div>\n <input\n {...register('annual_holiday_number')}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ maxWidth: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'annual_holiday_number';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n return setValue(field, value);\n }}\n disabled={isDisabled}\n />\n <span style={{ fontSize: '14px' }}>日</span>\n </div>\n <span className=\"text-danger\">半角数字のみ入力可</span>\n <span className=\"text-danger\">\n {errors?.annual_holiday_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 初年度有給休暇日数{' '}\n <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div>\n <input\n {...register('paid_holiday_number', {\n required: '初年度有給休暇日数は必須です',\n })}\n type=\"text\"\n className=\"form-control d-inline-flex me-2\"\n style={{ maxWidth: '200px' }}\n onChange={({ target: { value } }) => {\n const field = 'paid_holiday_number';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n return setValue(field, value);\n }}\n disabled={isDisabled}\n />\n <span style={{ fontSize: '14px' }}>日</span>\n </div>\n <span className=\"text-danger\">半角数字のみ入力可</span>\n <span className=\"text-danger\">\n {errors?.paid_holiday_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 休日・有給備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('holiday_info_note')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"初年度の有給取得は入社半年後から可能\"\n disabled={isDisabled}\n />\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 通勤時間 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('commuting_time_info', {\n required: '通勤時間は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"〇分以内など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.commuting_time_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 自動車通勤\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"bicycle_ok\"\n {...register('bicycle_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"bicycle_ok\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 可\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"bicycle_ng\"\n {...register('bicycle_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"bicycle_ng\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.bicycle_ok?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n バイク通勤\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"motor_bike_ok\"\n {...register('motor_bike_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"motor_bike_ok\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 可\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"motor_bike_ng\"\n {...register('motor_bike_ok')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"motor_bike_ng\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.motor_bike_ok?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用条件備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('hiring_standard_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n placeholder=\"〇年〇月卒業見込みの方、保育士資格取得見込みの方など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.hiring_standard_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園の方針、採用のポイント\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('en_policy')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.en_policy?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"応募情報\" />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-stripped\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出書類 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"resume\"\n id=\"required_document_option_resume\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"required_document_option_resume\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 履歴書\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"certificate_of_expected_qualification\"\n id=\"required_document_option_certificate_of_expected_qualification\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"required_document_option_certificate_of_expected_qualification\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 資格取得見込証明書(幼・保)\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"health_certificate\"\n id=\"required_document_option_health_certificate\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"required_document_option_health_certificate\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 健康診断書\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"certificate_of_expected_graduation\"\n id=\"required_document_option_certificate_of_expected_graduation\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"required_document_option_certificate_of_expected_graduation\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 卒業見込証明書\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('required_document_option', {\n required: '提出書類は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"required_document_option_other\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"required_document_option_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.required_document_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出書類備考{' '}\n {watch('required_document_option')?.includes('other') && (\n <span className=\"text-danger\">*必須</span>\n )}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('required_documents_info', {\n required: watch('required_document_option')?.includes(\n 'other',\n )\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.required_documents_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出方法 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('document_submission_option', {\n required: '提出方法は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"mail\"\n id=\"document_submission_option_mail\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"document_submission_option_mail\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 郵送\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('document_submission_option', {\n required: '提出方法は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"email\"\n id=\"document_submission_option_email\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"document_submission_option_email\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n メール\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('document_submission_option', {\n required: '提出方法は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input me-1\"\n value=\"other\"\n id=\"document_submission_option_other\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"document_submission_option_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.document_submission_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出方法備考{' '}\n {watch('document_submission_option')?.includes('other') && (\n <span className=\"text-danger\">*必須</span>\n )}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('document_submission_info', {\n required: watch('document_submission_option')?.includes(\n 'other',\n )\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n disabled={isDisabled}\n />\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 提出期限 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('document_submission_term_info', {\n required: '提出期限は必須です',\n })}\n className=\"form-control\"\n placeholder=\"〇月〇日~〇月〇日まで、随時など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.document_submission_term_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考方法 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('selection_process_info', {\n required: '選考方法は必須です',\n })}\n className=\"form-control\"\n placeholder=\"面接、筆記(試験・作文)、実技(読み聞かせ)など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.selection_process_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考日程\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('selection_date_info')}\n className=\"form-control\"\n placeholder=\"〇月〇日 00:00~\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.selection_date_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 選考場所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('interview_location_info', {\n required: '選考場所は必須です',\n })}\n className=\"form-control\"\n placeholder=\"〇〇幼稚園、〇〇保育所、法人本部など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.interview_location_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n その他携行品\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('required_item_info')}\n className=\"form-control\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.required_item_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学可否 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observability_option_ok\"\n {...register('observability_option', {\n required: '園見学可否は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"1\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"observability_option_ok\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 可\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observability_option_ng\"\n {...register('observability_option', {\n required: '園見学可否は必須です',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"2\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"observability_option_ng\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 否\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.observability_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学可否備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('observability_info')}\n className=\"form-control\"\n rows=\"3\"\n cols=\"30\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.observability_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学申込方法\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_cell\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"call\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"observation_application_option_cell\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 電話\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_email\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"email\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"observation_application_option_email\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n メール\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_mail\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"mail\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"observation_application_option_mail\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 郵送\n </label>\n </div>\n <div className=\"me-2 d-flex align-items-center\">\n <input\n id=\"observation_application_option_other\"\n {...register('observation_application_option')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"other\"\n disabled={isDisabled}\n />\n <label\n htmlFor=\"observation_application_option_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.observation_application_option?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 園見学申込方法備考{' '}\n {watch('observation_application_info')?.includes(\n 'other',\n ) && <span className=\"text-danger\">*必須</span>}\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('observation_application_info', {\n required: watch(\n 'observation_application_info',\n )?.includes('other')\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.observation_application_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 応募情報備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('job_application_info')}\n className=\"form-control\"\n placeholder=\"結果通知の方法など\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.job_application_info?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当者 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <textarea\n {...register('recruiter_name', {\n required: '採用担当者は必須です',\n })}\n className=\"form-control\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_name?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_role')}\n className=\"form-control\"\n type=\"text\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_role?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当連絡先(TEL){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_tel', {\n required:\n !watch('recruiter_tel') && !watch('recruiter_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) =>\n !input ||\n (phoneReg.test(input) &&\n input\n .split('-')\n .filter((v) => !!v)\n .every((v) => !isNaN(Number(v)))),\n })}\n type=\"tel\"\n className=\"form-control\"\n placeholder=\"000-0000-0000\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_tel?.type === 'validate' &&\n '電話番号の形式が正しくありません'}\n {errors?.recruiter_tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n\n <TableRow className=\"w-100 d-flex\">\n <BodyCell className=\"w-100\" style={tableLeftCellStyle}>\n 採用担当連絡先(メール){' '}\n <span className=\"text-danger\">\n *TELかメールのいずれか必須\n </span>\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('recruiter_email', {\n required:\n !watch('recruiter_tel') && !watch('recruiter_email')\n ? '連絡先はTEL, メールのいずれか必須です'\n : false,\n validate: (input) => !input || emailReg.test(input),\n })}\n type=\"email\"\n className=\"form-control\"\n disabled={isDisabled}\n />\n <span className=\"text-danger\">\n {errors?.recruiter_email?.type === 'validate' &&\n 'メールアドレスの形式が正しくありません'}\n {errors?.recruiter_email?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n {errorMessage && (\n <div className=\"py-3 d-flex justify-content-center\">\n <div className=\"text-danger\">{errorMessage}</div>\n </div>\n )}\n </Paper>\n <Paper\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"その他添付ファイル\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenFileUploadModal(true);\n }}\n disabled={isDisabled}\n />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n -\n 学生へ見せたい資料(PDF)はPDF登録ボタンよりご登録ください\n <br />\n - 10MBまで\n <br />-\n 青少年雇用情報シートは法人情報画面よりご登録ください\n </p>\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableHead>\n <HeadCell width={150} label=\"アップロード日\" />\n <HeadCell label=\"ファイル名\" />\n </TableHead>\n <TableBody>\n {pdfs.map((pdfData, i) => (\n <TableRow key={i}>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {pdfData.uploadDate}\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-row w-100 align-items-center\">\n <div className=\"d-flex justify-content-start w-100\">\n <a\n href={pdfData.signedUrl}\n target=\"_blank\"\n rel=\"nofollow\">\n {pdfData.name}\n </a>\n </div>\n <div className=\"d-flex justify-content-end w-100 me-2\">\n {!isDisabled && (\n <Trash\n onClick={() => {\n setIsOpenAttachedFileDeleteModal(true);\n setDeleteTargetFile({\n id: pdfData?.id,\n filePath: pdfData.filePath,\n name: pdfData.name,\n });\n }}\n />\n )}\n </div>\n </div>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/recruitments';\n }}\n />\n {renderRecruitmentCloseButton()}\n {cvtRecruitmentStatusValue(recruitment.status) ===\n RECRUITMENT_STATUS.DRAFT && (\n <OrangeButton\n width={100}\n height={44}\n label=\"下書き保存\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={async (e) => {\n e.preventDefault();\n return await save(watch());\n }}\n disabled={isDisabled}\n />\n )}\n <GreenButton\n width={100}\n height={44}\n label={\n cvtRecruitmentStatusValue(recruitment.status) ===\n RECRUITMENT_STATUS.DRAFT\n ? '紐付け施設選択'\n : '更新'\n }\n textFontSize={\n cvtRecruitmentStatusValue(recruitment.status) ===\n RECRUITMENT_STATUS.DRAFT\n ? 14\n : 16\n }\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save(watch(), true);\n } else {\n return useScrollToError(errors);\n }\n }}\n disabled={isDisabled}\n />\n {recruitment.published && (\n <GreenButton\n width={160}\n height={44}\n label=\"対象施設・配信学校を追加\"\n textFontSize={14}\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save(watch(), true, true);\n } else {\n return useScrollToError(errors);\n }\n }}\n disabled={isDisabled}\n />\n )}\n </div>\n </form>\n <FacilityAttachmentFileUpload\n errorMessage={pdfUploadErrorMessage}\n isShow={isOpenFileUploadModal}\n onClose={() => setIsOpenFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n addPdfFiles({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n created_at: now.format('YYYY-MM-DD HH:mm:ss'),\n updated_at: now.format('YYYY-MM-DD HH:mm:ss'),\n }).then(() => setIsOpenFileUploadModal(false));\n }}\n />\n <AttachedFileDeleteModal\n isShow={isOpenAttachedFileDeleteModal}\n onHide={() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n filePath: null,\n name: null,\n });\n }}\n onDelete={() => {\n deletePdfFile(deleteTargetFile).finally(() => {\n setIsOpenAttachedFileDeleteModal(false);\n setDeleteTargetFile({\n id: null,\n filePath: null,\n name: null,\n });\n });\n }}\n okLabel=\"削除\"\n />\n <ReopenRecruitmentModal\n isShow={reopenRecruitmentInfo.isOpen}\n onHide={() => resetReopenRecruitmentInfo()}\n onReopen={() => {\n const { recruitmentId } = reopenRecruitmentInfo;\n resetReopenRecruitmentInfo();\n return onReopenRecruitment(recruitmentId);\n }}\n />\n <CloseRecruitmentModal\n isShow={closeRecruitmentInfo.isOpen}\n onHide={() => resetCloseRecruitmentInfo()}\n onClose={() => {\n const { recruitmentId } = closeRecruitmentInfo;\n resetCloseRecruitmentInfo();\n return onCloseRecruitment(recruitmentId);\n }}\n />\n <DeleteModal\n isShow={deleteRecruitmentInfo.isOpen}\n onHide={() => resetDeleteRecruitmentInfo()}\n onDelete={() => {\n const { recruitmentId } = deleteRecruitmentInfo;\n resetDeleteRecruitmentInfo();\n return onDeleteRecruitment(recruitmentId);\n }}\n />\n </div>\n );\n};\n\nexport default Detail;\n","import React, { useEffect } from 'react';\nimport Paper from '../../../../components/Paper/Paper';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport { useMyCorporateRecruitmentFacilityListModule } from '../../../../modules/MyCorporate/Recruitment/Facility/listModule';\nimport FacilityList from '../../../../components/School/FacilityList';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\n\nconst AdditionalList = ({ recruitment, facilities, defaultTargetIds }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人管理',\n },\n {\n text: '求人情報',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報詳細',\n href: `/my_corporate/recruitments/${recruitment.id}`,\n },\n {\n text: '紐付け施設選択',\n },\n ];\n const {\n // store\n isLoading,\n targetIds,\n // actions\n changeState,\n addTargetId,\n addIds,\n removeTargetId,\n removeIds,\n saveAdditional,\n } = useMyCorporateRecruitmentFacilityListModule();\n\n useEffect(() => {\n changeState({ data: facilities, targetIds: defaultTargetIds });\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"紐付け施設選択\"\n subTitle=\"求人情報を紐付ける施設を選択します\"\n />\n </div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n ー 求人情報を紐づける施設にチェック☑して下さい\n <br />ー\n 他求人が紐づいている施設を選択した場合、最新の求人に上書きされます\n </p>\n </div>\n </div>\n )}>\n <FacilityList\n data={facilities}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={() => {\n const filtered = facilities\n .map((_) => _.id)\n .filter((id) => {\n // 既に紐付け済みの施設は削除できないようにする\n return !defaultTargetIds.includes(id);\n });\n removeIds(filtered);\n }}\n addAllTargets={() => {\n const filtered = facilities\n .map((_) => _.id)\n .filter((id) => {\n // 既に紐付け済みの施設は追加できないようにする\n return !defaultTargetIds.includes(id);\n });\n addIds(filtered);\n }}\n showRecruitmentRegisteredAt={false}\n showRelatedRecruitmentTitle\n disableRecruitmentLink\n hideLink\n disabledIds={defaultTargetIds}\n />\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_corporate/recruitments/${recruitment.id}`;\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"配信学校選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return saveAdditional(recruitment.id, targetIds);\n }}\n disabled={targetIds?.length === 0}\n />\n </div>\n </div>\n );\n};\n\nexport default AdditionalList;\n","import React, { useEffect } from 'react';\nimport Paper from '../../../../components/Paper/Paper';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport { useMyCorporateRecruitmentFacilityListModule } from '../../../../modules/MyCorporate/Recruitment/Facility/listModule';\nimport FacilityList from '../../../../components/School/FacilityList';\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\n\nconst List = ({ recruitment, facilities, defaultTargetIds }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人管理',\n },\n {\n text: '求人情報',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報詳細',\n href: `/my_corporate/recruitments/${recruitment.id}`,\n },\n {\n text: '紐付け施設選択',\n },\n ];\n const {\n // store\n isLoading,\n targetIds,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n save,\n } = useMyCorporateRecruitmentFacilityListModule();\n\n useEffect(() => {\n changeState({ data: facilities, targetIds: defaultTargetIds });\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"紐付け施設選択\"\n subTitle=\"求人情報を紐付ける施設を選択します\"\n />\n </div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n ー 求人情報を紐づける施設にチェック☑して下さい\n <br />ー\n 他求人が紐づいている施設を選択した場合、最新の求人に上書きされます\n </p>\n </div>\n </div>\n )}>\n <FacilityList\n data={facilities}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n showRecruitmentRegisteredAt={false}\n showRelatedRecruitmentTitle\n disableRecruitmentLink\n hideLink\n />\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_corporate/recruitments/${recruitment.id}`;\n }}\n />\n {recruitment.status === 'published' ? (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n 既に公開中のため利用できません\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <GreenButton\n width={100}\n height={44}\n label=\"配信学校選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n }}\n disabled\n />\n </span>\n </OverlayTrigger>\n ) : (\n <GreenButton\n width={100}\n height={44}\n label=\"配信学校選択\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return save(recruitment.id, targetIds);\n }}\n disabled={targetIds?.length === 0}\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default List;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\nimport { useMyCorporateRecruitmentListModule } from '../../../modules/MyCorporate/Recruitment/listModule';\nimport RelatedFacilityModal from './components/RelatedFacilityModal';\nimport RelatedSchoolModal from './components/RelatedSchoolModal';\nimport CloseRecruitmentModal from './components/CloseRecruitmentModal';\nimport CopyRecruitmentModal from './components/CopyRecruitmentModal';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport ReopenRecruitmentModal from './components/ReopenRecruitmentModal';\nimport YearTabs from './components/YearTabs';\n\nconst List = ({\n recruitments,\n currentPage,\n totalPages,\n currentRecruitmentYear,\n recruitmentYears = [],\n pastRecruitmentYears = [],\n disabledRecruitmentRegistration = true,\n youthEmploymentId,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人管理',\n },\n {\n text: '求人情報',\n },\n ];\n\n const {\n isLoading,\n data,\n initialize,\n onCloseRecruitment,\n onReopenRecruitment,\n onCopyRecruitment,\n } = useMyCorporateRecruitmentListModule();\n\n useEffect(() => {\n initialize(recruitments);\n }, []);\n\n const paginate = useCallback(\n (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}&year=${currentRecruitmentYear}`;\n },\n [currentRecruitmentYear],\n );\n const [relatedFacilityRecruitmentId, setRelatedFacilityRecruitmentId] =\n useState(null);\n const [relatedSchoolRecruitmentId, setRelatedSchoolRecruitmentId] =\n useState(null);\n const [targetRecruitmentName, setTargetRecruitmentName] = useState('');\n const [reopenRecruitmentInfo, setReopenRecruitmentInfo] = useState({\n isOpen: false,\n recruitmentId: null,\n });\n const [closeRecruitmentInfo, setCloseRecruitmentInfo] = useState({\n isOpen: false,\n recruitmentId: null,\n });\n const [copyRecruitmentInfo, setCopyRecruitmentInfo] = useState({\n isOpen: false,\n recruitmentId: null,\n });\n const openReopenRecruitmentModal = useCallback((recruitmentId) => {\n setReopenRecruitmentInfo({\n isOpen: true,\n recruitmentId,\n });\n }, []);\n const resetReopenRecruitmentInfo = useCallback(() => {\n setReopenRecruitmentInfo({\n isOpen: false,\n recruitmentId: null,\n });\n }, []);\n const openCloseRecruitmentModal = useCallback((recruitmentId) => {\n setCloseRecruitmentInfo({\n isOpen: true,\n recruitmentId,\n });\n }, []);\n const resetCloseRecruitmentInfo = useCallback(() => {\n setCloseRecruitmentInfo({\n isOpen: false,\n recruitmentId: null,\n });\n }, []);\n const openCopyRecruitmentModal = useCallback((recruitmentId) => {\n setCopyRecruitmentInfo({\n isOpen: true,\n recruitmentId,\n });\n }, []);\n const resetCopyRecruitmentInfo = useCallback(() => {\n setCopyRecruitmentInfo({\n isOpen: false,\n recruitmentId: null,\n });\n }, []);\n\n const renderRecruitmentCreationButton = useCallback(() => {\n if (\n pastRecruitmentYears.includes(currentRecruitmentYear) ||\n disabledRecruitmentRegistration\n ) {\n return (\n <GrayButton\n width={150}\n height={44}\n label=\"新規登録\"\n textFontSize={16}\n onClick={() =>\n (location.href = `/my_corporate/recruitments/new?year=${currentRecruitmentYear}`)\n }\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n disabled\n />\n );\n }\n return (\n <GreenButton\n width={150}\n height={44}\n label=\"新規登録\"\n textFontSize={16}\n onClick={() =>\n (location.href = `/my_corporate/recruitments/new?year=${currentRecruitmentYear}`)\n }\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n />\n );\n }, [currentRecruitmentYear, disabledRecruitmentRegistration]);\n const renderYouthEmploymentButton = useCallback(() => {\n if (currentRecruitmentYear === 'past') {\n return (\n <GrayButton\n width={150}\n height={44}\n label=\"青少年雇用情報\"\n textFontSize={16}\n onClick={() =>\n (location.href = `/my_corporate/youth_employments/${youthEmploymentId}?year=${currentRecruitmentYear}`)\n }\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n disabled\n />\n );\n }\n return (\n <GreenButton\n width={150}\n height={44}\n label=\"青少年雇用情報\"\n textFontSize={16}\n onClick={() =>\n (location.href = `/my_corporate/youth_employments/${youthEmploymentId}?year=${currentRecruitmentYear}`)\n }\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n />\n );\n }, [youthEmploymentId]);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"求人情報\"\n subTitle=\"求人情報の一覧確認、求人情報の新規登録・更新を行います\"\n />\n </div>\n\n <Paper\n headerRenderer={() => (\n <>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <FacilityTitle title=\"求人情報一覧\" />\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <p className=\"text-danger fw-bold\">\n -\n 青少年雇用情報を登録すると求人情報を新規登録することが可能です\n <br />- 求人情報の編集は、タイトルをクリックして実行します\n </p>\n </div>\n </div>\n </>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <div style={{ marginLeft: 3.5 }}>\n <YearTabs\n years={recruitmentYears}\n currentYear={currentRecruitmentYear}\n onClick={(year) => {\n location.href = `/my_corporate/recruitments?year=${year}`;\n }}\n />\n </div>\n <div\n style={{\n height: '77px',\n background: '#E3F0F8',\n borderLeft: '4px solid #ffffff',\n borderRight: '4px solid #ffffff',\n }}\n className=\"w-100 ps-1\">\n <div className=\"d-flex flex-row w-100 h-100 justify-content-end align-items-center px-3\">\n {renderRecruitmentCreationButton()}\n {renderYouthEmploymentButton()}\n </div>\n </div>\n\n <Table className=\"table-striped\">\n <TableHead\n style={{\n background: '#E3F0F8',\n }}>\n <HeadCell\n width={120}\n className=\"align-middle\"\n label=\"タイトル(学生には公開されません)\"\n />\n <HeadCell width={80} className=\"align-middle\" label=\"登録日\" />\n <HeadCell width={80} className=\"align-middle\" label=\"更新日\" />\n <HeadCell\n width={80}\n className=\"align-middle\"\n label=\"公開開始日\"\n />\n <HeadCell\n width={80}\n className=\"align-middle\"\n label=\"紐付け施設数\"\n />\n <HeadCell\n width={80}\n className=\"align-middle\"\n label=\"配信学校数\"\n />\n <HeadCell\n width={80}\n className=\"align-middle\"\n label=\"ステータス\"\n />\n <HeadCell\n width={80}\n className=\"align-middle\"\n label=\"その他機能\"\n />\n </TableHead>\n <TableBody>\n {data.map((recruitment, i) => (\n <TableRow key={recruitment.id}>\n <BodyCell className=\"text-center p-0 m-0\">\n <a href={`/my_corporate/recruitments/${recruitment.id}`}>\n {recruitment.title ? recruitment.title : '名称未設定'}\n </a>\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {recruitment.created_at}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {recruitment.updated_at}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {recruitment.release_date_short}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {recruitment.facility_count > 0 ? (\n <span\n className=\"btn-link cursor-pointer\"\n onClick={() => {\n setRelatedFacilityRecruitmentId(recruitment.id);\n setTargetRecruitmentName(\n recruitment.title\n ? recruitment.title\n : '名称未設定',\n );\n }}>\n {recruitment.facility_count}\n </span>\n ) : (\n <>{recruitment.facility_count}</>\n )}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {recruitment.school_count > 0 ? (\n <span\n className=\"btn-link cursor-pointer\"\n onClick={() => {\n setRelatedSchoolRecruitmentId(recruitment.id);\n setTargetRecruitmentName(\n recruitment.title\n ? recruitment.title\n : '名称未設定',\n );\n }}>\n {recruitment.school_count}\n </span>\n ) : (\n <>{recruitment.school_count}</>\n )}\n </BodyCell>\n <BodyCell className=\"text-center p-0 m-0\">\n {recruitment.recruitment_is_closed ? (\n <>募集終了</>\n ) : (\n recruitment.status_text\n )}\n </BodyCell>\n <BodyCell\n className=\"text-center p-0 m-0\"\n style={{ width: '10%' }}>\n <div className=\"d-flex p-1\">\n <GreenButton\n onClick={() => openCopyRecruitmentModal(recruitment.id)}\n label=\"コピーして作成\"\n textFontSize={10}\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n height={36}\n />\n {recruitment.recruitment_is_closed ? (\n <GrayButton\n onClick={() =>\n openReopenRecruitmentModal(recruitment.id)\n }\n label=\"募集を再開\"\n textFontSize={10}\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n height={36}\n disabled={\n !recruitment.published || recruitment.is_old_year\n }\n />\n ) : (\n <GrayButton\n onClick={() =>\n openCloseRecruitmentModal(recruitment.id)\n }\n label=\"募集を終了\"\n textFontSize={10}\n labelClassName=\"w-100 justify-content-center p-0 m-0\"\n height={36}\n disabled={\n !recruitment.published || recruitment.is_old_year\n }\n />\n )}\n </div>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n <div className=\"d-flex w-100 justify-content-center py-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </div>\n </Paper>\n\n <div className=\"d-flex flex-column justify-content-center my-4\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n />\n </div>\n <RelatedFacilityModal\n onHide={() => setRelatedFacilityRecruitmentId(null)}\n recruitmentId={relatedFacilityRecruitmentId}\n recruitmentName={targetRecruitmentName}\n isShow={!!relatedFacilityRecruitmentId}\n />\n <RelatedSchoolModal\n onHide={() => setRelatedSchoolRecruitmentId(null)}\n recruitmentId={relatedSchoolRecruitmentId}\n recruitmentName={targetRecruitmentName}\n isShow={!!relatedSchoolRecruitmentId}\n />\n <ReopenRecruitmentModal\n isShow={reopenRecruitmentInfo.isOpen}\n onHide={() => resetReopenRecruitmentInfo()}\n onReopen={() => {\n const { recruitmentId } = reopenRecruitmentInfo;\n resetReopenRecruitmentInfo();\n return onReopenRecruitment(recruitmentId);\n }}\n />\n <CloseRecruitmentModal\n isShow={closeRecruitmentInfo.isOpen}\n onHide={() => resetCloseRecruitmentInfo()}\n onClose={() => {\n const { recruitmentId } = closeRecruitmentInfo;\n resetCloseRecruitmentInfo();\n return onCloseRecruitment(recruitmentId);\n }}\n />\n <CopyRecruitmentModal\n isShow={copyRecruitmentInfo.isOpen}\n onHide={() => resetCopyRecruitmentInfo()}\n onOk={() => {\n const { recruitmentId } = copyRecruitmentInfo;\n resetCopyRecruitmentInfo();\n return onCopyRecruitment(recruitmentId, currentRecruitmentYear);\n }}\n />\n </div>\n );\n};\n\nexport default List;\n","import React, { useEffect, useState } from 'react';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport SchoolList from '../../../../components/Corporate/SchoolList';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport RecruitmentPublishConfirmModal from '../../../../components/Modal/RecruitmentPublishConfirmModal';\nimport Paper from '../../../../components/Paper/Paper';\nimport { useMyCorporateRecruitmentSchoolListModule } from '../../../../modules/MyCorporate/Recruitment/School/listModule';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport { FacilityDefaultColorStyle } from '../../../../../utils/constant';\n\nconst AdditionalList = ({\n recruitment,\n recruitmentTitle,\n schools,\n defaultTargetIds,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人管理',\n },\n {\n text: '求人情報',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報詳細',\n href: `/my_corporate/recruitments/${recruitment.id}`,\n },\n {\n text: '配信先学校選択',\n },\n ];\n\n const {\n // store\n isLoading,\n targetIds,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addIds,\n removeIds,\n saveAdditional,\n } = useMyCorporateRecruitmentSchoolListModule();\n\n useEffect(() => {\n changeState({ data: schools, targetIds: defaultTargetIds });\n }, []);\n\n const [isOpenPublishModal, setIsOpenPublishModal] = useState(false);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"配信先学校選択\"\n subTitle=\"求人情報を配信する学校を選択します\"\n />\n </div>\n <div\n className=\"d-flex pt-3\"\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n 対象:{recruitmentTitle ? recruitmentTitle : '名称未設定'}\n </div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <div className=\"text-danger fw-bold\">\n ー 求人情報を配信する学校にチェック☑して下さい\n </div>\n </div>\n </div>\n )}>\n <SchoolList\n data={schools}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={() => {\n const filtered = schools\n .map((_) => _.id)\n .filter((id) => {\n // 既に紐付け済みの学校は削除できないようにする\n return !defaultTargetIds.includes(id);\n });\n return removeIds(filtered);\n }}\n addAllTargets={() => {\n const filtered = schools\n .map((_) => _.id)\n .filter((id) => {\n // 既に紐付け済みの学校は追加できないようにする\n return !defaultTargetIds.includes(id);\n });\n return addIds(filtered);\n }}\n disabledIds={defaultTargetIds}\n />\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_corporate/recruitments/${recruitment.id}`;\n }}\n />\n <GreenButton\n width={100}\n height={44}\n label=\"配信\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return setIsOpenPublishModal(true);\n }}\n disabled={targetIds?.length === 0}\n />\n </div>\n <RecruitmentPublishConfirmModal\n isShow={isOpenPublishModal}\n onOk={() => {\n setIsOpenPublishModal(false);\n return saveAdditional(recruitment.id, targetIds);\n }}\n onCancel={() => setIsOpenPublishModal(false)}\n isAdditional\n />\n </div>\n );\n};\n\nexport default AdditionalList;\n","import React, { useEffect, useState } from 'react';\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap';\nimport FacilityBreadcrumbs from '../../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport SchoolList from '../../../../components/Corporate/SchoolList';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport RecruitmentPublishConfirmModal from '../../../../components/Modal/RecruitmentPublishConfirmModal';\nimport Paper from '../../../../components/Paper/Paper';\nimport { useMyCorporateRecruitmentSchoolListModule } from '../../../../modules/MyCorporate/Recruitment/School/listModule';\nimport FacilityTitle from '../../../../components/Title/FacilityTitle';\nimport { FacilityDefaultColorStyle } from '../../../../../utils/constant';\n\nconst List = ({ recruitment, recruitmentTitle, schools, defaultTargetIds }) => {\n const BREADCRUMBS = [\n {\n text: 'メニュー',\n href: '/my_corporate/home',\n },\n {\n text: '求人管理',\n },\n {\n text: '求人情報',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報詳細',\n href: `/my_corporate/recruitments/${recruitment.id}`,\n },\n {\n text: '配信先学校選択',\n },\n ];\n\n const {\n // store\n isLoading,\n targetIds,\n // actions\n changeState,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n save,\n } = useMyCorporateRecruitmentSchoolListModule();\n\n useEffect(() => {\n changeState({ data: schools, targetIds: defaultTargetIds });\n }, []);\n\n const [isOpenPublishModal, setIsOpenPublishModal] = useState(false);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={BREADCRUMBS} />\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <FacilityTitle\n title=\"配信先学校選択\"\n subTitle=\"求人情報を配信する学校を選択します\"\n />\n </div>\n <div\n className=\"d-flex pt-3\"\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n 対象:{recruitmentTitle ? recruitmentTitle : '名称未設定'}\n </div>\n\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <div className=\"text-danger fw-bold\">\n ー 求人情報を配信する学校にチェック☑して下さい\n </div>\n </div>\n </div>\n )}>\n <SchoolList\n data={schools}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n />\n </Paper>\n <div className=\"d-flex justify-content-center pt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_corporate/recruitments/${recruitment.id}`;\n }}\n />\n {recruitment.status === 'published' ? (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n 既に公開中のため利用できません\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <GreenButton\n width={100}\n height={44}\n label=\"配信\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n }}\n disabled\n />\n </span>\n </OverlayTrigger>\n ) : (\n <GreenButton\n width={100}\n height={44}\n label=\"配信\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return setIsOpenPublishModal(true);\n }}\n disabled={targetIds?.length === 0}\n />\n )}\n </div>\n <RecruitmentPublishConfirmModal\n isShow={isOpenPublishModal}\n onOk={() => {\n setIsOpenPublishModal(false);\n return save(recruitment.id, targetIds);\n }}\n onCancel={() => setIsOpenPublishModal(false)}\n />\n </div>\n );\n};\n\nexport default List;\n","export const calcEstYearlyAmount = (base = 0, bonus = 0) => {\n const total = base ? base * 12 : 0;\n if (isNaN(total)) {\n return Number(bonus);\n }\n return Number(total) + Number(bonus);\n};\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport { FacilityDefaultColorStyle } from '../../../../../utils/constant';\n\nconst CloseRecruitmentModal = ({ isShow = false, onHide, onClose }) => {\n return (\n <Modal\n size=\"lg\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"close-recruitment\"\n centered>\n <Modal.Body>\n <div\n style={{\n paddingLeft: '100px',\n }}>\n <div\n style={{\n fontSize: '32px',\n fontWeight: 'bold',\n ...FacilityDefaultColorStyle,\n }}\n className=\"ps-3\">\n 募集を終了しますか?\n </div>\n <div\n className=\"mt-3\"\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n <div>・学生画面に「募集終了」と表示されます</div>\n <div>・求人情報の更新が出来なくなります</div>\n <div>・「募集再開」ボタンでもとに戻す事も可能です</div>\n </div>\n </div>\n <div className=\"d-flex mt-3 justify-content-center\">\n <GreenButton\n width={160}\n height={40}\n label=\"はい\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onClose()}\n />\n\n <GrayButton\n width={160}\n height={40}\n label=\"いいえ\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onHide()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default CloseRecruitmentModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport { FacilityDefaultColorStyle } from '../../../../../utils/constant';\nconst CopyRecruitmentModal = ({ isShow = false, onHide, onOk }) => {\n return (\n <Modal\n size=\"lg\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"copy-recruitment\"\n centered>\n <Modal.Body>\n <div\n style={{\n paddingLeft: '100px',\n }}>\n <div\n style={{\n fontSize: '32px',\n fontWeight: 'bold',\n ...FacilityDefaultColorStyle,\n }}\n className=\"ps-3\">\n コピーして新規作成しますか?\n </div>\n <div className=\"mt-3\">\n <div\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n ・求人情報作成画面に移動します\n </div>\n </div>\n </div>\n <div className=\"d-flex mt-3 justify-content-center\">\n <GreenButton\n width={160}\n height={40}\n label=\"はい\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onOk()}\n />\n <GrayButton\n width={160}\n height={40}\n label=\"いいえ\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onHide()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default CopyRecruitmentModal;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport { Modal } from 'react-bootstrap';\nimport FacilityList from '../../../../components/School/FacilityList';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport { FacilityDefaultColorStyle } from '../../../../../utils/constant';\n\nconst RelatedFacilityModal = ({\n recruitmentId,\n recruitmentName,\n isShow = false,\n onHide,\n}) => {\n const [isLoading, setIsLoading] = useState(false);\n const [facilities, setFacilities] = useState([]);\n useEffect(() => {\n if (recruitmentId) {\n onLoad(recruitmentId);\n }\n }, [recruitmentId]);\n\n const onLoad = useCallback(async (id) => {\n setIsLoading(true);\n setFacilities([]);\n try {\n const res = await HttpRequest.get(\n `/api/my_corporate/recruitments/${id}/related_facilities`,\n );\n setFacilities(res.data.facilities);\n } finally {\n setIsLoading(false);\n }\n }, []);\n return (\n <>\n {isLoading ? (\n <LoadingOverlay loading={isLoading} />\n ) : (\n <Modal\n size=\"xl\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"related-facility\"\n centered>\n <Modal.Body>\n <div\n className=\"d-flex p-3\"\n style={{ ...FacilityDefaultColorStyle }}>\n 対象:{recruitmentName}\n </div>\n <div className=\"overflow-scroll\" style={{ height: '50vh' }}>\n <FacilityList\n data={facilities}\n hideLink\n hideCheck\n showStatus={false}\n showRecruitmentRegisteredAt={false}\n showRelatedRecruitmentTitle={false}\n showRelatedCorporateName={false}\n stickyHeader\n />\n </div>\n <div className=\"d-flex justify-content-center mt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n onHide();\n }}\n />\n </div>\n </Modal.Body>\n </Modal>\n )}\n </>\n );\n};\n\nexport default RelatedFacilityModal;\n","import React, { useEffect, useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport SchoolList from '../../../../components/Corporate/SchoolList';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport { FacilityDefaultColorStyle } from '../../../../../utils/constant';\n\nconst RelatedSchoolModal = ({\n recruitmentId,\n recruitmentName,\n isShow = false,\n onHide,\n}) => {\n const [isLoading, setIsLoading] = useState(false);\n const [schools, setSchools] = useState([]);\n useEffect(() => {\n if (recruitmentId) {\n onLoad(recruitmentId);\n }\n }, [recruitmentId]);\n\n const onLoad = async (id) => {\n setIsLoading(true);\n setSchools([]);\n try {\n const res = await HttpRequest.get(\n `/api/my_corporate/recruitments/${id}/related_schools`,\n );\n setSchools(res.data.schools);\n } finally {\n setIsLoading(false);\n }\n };\n\n return (\n <>\n {isLoading ? (\n <LoadingOverlay loading={isLoading} />\n ) : (\n <Modal\n size=\"xl\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"related-facility\"\n centered>\n <Modal.Body>\n <div\n className=\"d-flex p-3\"\n style={{ ...FacilityDefaultColorStyle }}>\n 対象:{recruitmentName}\n </div>\n <SchoolList data={schools} hideCheck stickyHeader />\n <div className=\"d-flex justify-content-center mt-3 pb-5\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n onHide();\n }}\n />\n </div>\n </Modal.Body>\n </Modal>\n )}\n </>\n );\n};\n\nexport default RelatedSchoolModal;\n","import React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport { FacilityDefaultColorStyle } from '../../../../../utils/constant';\n\nconst ReopenRecruitmentModal = ({ isShow = false, onHide, onReopen }) => {\n return (\n <Modal\n size=\"lg\"\n show={isShow}\n onHide={onHide}\n aria-labelledby=\"close-recruitment\"\n centered>\n <Modal.Body>\n <div\n style={{\n paddingLeft: '100px',\n }}>\n <div\n style={{\n fontSize: '32px',\n fontWeight: 'bold',\n ...FacilityDefaultColorStyle,\n }}\n className=\"ps-3\">\n 募集を再開しますか?\n </div>\n <div\n className=\"mt-3\"\n style={{\n ...FacilityDefaultColorStyle,\n }}>\n <div>・募集終了前の状態に戻ります</div>\n </div>\n </div>\n <div className=\"d-flex mt-3 justify-content-center\">\n <GreenButton\n width={160}\n height={40}\n label=\"はい\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onReopen()}\n />\n\n <GrayButton\n width={160}\n height={40}\n label=\"いいえ\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => onHide()}\n />\n </div>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default ReopenRecruitmentModal;\n","import React from 'react';\nimport classNames from 'classnames';\n\nconst YearTabs = ({ years = [], currentYear, onClick }) => {\n return (\n <ul className=\"nav nav-tabs d-flex justify-content-start border-bottom-0\">\n {years.map((year) => {\n const isCurrentYear = year === currentYear;\n return (\n <li\n className={classNames(\n 'nav-item me-1',\n isCurrentYear ? 'active' : '',\n )}>\n <button\n style={{\n // width: year === 'past' ? '90px' : '175px',\n height: '51px',\n background: isCurrentYear ? '#E3F0F8' : '#F5F5F5',\n border: 'none',\n boxShadow: 'none',\n color: 'black',\n borderRadius: '1rem',\n borderBottomLeftRadius: '0px',\n borderBottomRightRadius: '0px',\n fontSize: '16px',\n paddingTop: '12px',\n cursor: isCurrentYear ? 'inherit' : 'pointer',\n }}\n className={classNames(\n 'btn btn-secondary d-flex justify-content-center align-items-center',\n isCurrentYear ? 'fw-bold' : '',\n year === 'past' ? '' : 'pe-4',\n )}\n onClick={() => {\n if (!isCurrentYear) {\n onClick(year);\n }\n }}>\n {year === 'past' ? '過去分' : `${year}年4月入職`}\n </button>\n </li>\n );\n })}\n </ul>\n );\n};\n\nexport default YearTabs;\n","import React from 'react';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport { useCreate } from './hooks/useCreate';\nimport Form from './Form';\n\nconst breadcrumbs = [\n {\n text: 'メニュー',\n href: '/my_corporate/menu',\n },\n {\n text: '求人管理',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報',\n },\n {\n text: '青少年雇用情報',\n },\n];\n\nconst Create = ({ year, isEditable }) => {\n const {\n // store\n isLoading,\n errors,\n // actions\n trigger,\n setValue,\n register,\n watch,\n handleSubmit,\n save,\n } = useCreate();\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={breadcrumbs} />\n <Form\n isEditable={isEditable}\n year={year}\n errors={errors}\n trigger={trigger}\n setValue={setValue}\n register={register}\n watch={watch}\n handleSubmit={handleSubmit}\n save={save}\n />\n </div>\n );\n};\n\nexport default Create;\n","import React, { useEffect } from 'react';\nimport { useCreate } from './hooks/useCreate';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport Form from './Form';\n\nconst breadcrumbs = [\n {\n text: 'メニュー',\n href: '/my_corporate/menu',\n },\n {\n text: '求人管理',\n href: '/my_corporate/recruitments',\n },\n {\n text: '求人情報',\n },\n {\n text: '青少年雇用情報',\n },\n];\n\nconst Detail = ({ youthEmployment, year, isEditable }) => {\n const {\n // store\n isLoading,\n errors,\n // actions\n initialize,\n trigger,\n setValue,\n register,\n watch,\n handleSubmit,\n save,\n } = useCreate();\n useEffect(() => {\n if (youthEmployment) {\n initialize(youthEmployment);\n }\n }, [youthEmployment]);\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <FacilityBreadcrumbs items={breadcrumbs} />\n <Form\n isEditable={isEditable}\n year={year}\n errors={errors}\n trigger={trigger}\n setValue={setValue}\n register={register}\n watch={watch}\n handleSubmit={handleSubmit}\n save={save}\n />\n </div>\n );\n};\n\nexport default Detail;\n","import React, { useEffect } from 'react';\nimport styled from 'styled-components';\nimport DatePicker from 'react-datepicker';\n\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport FacilityTitle from '../../../components/Title/FacilityTitle';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport { YOUTH_EMPLOYMENT_OPTIONS } from '../../../../utils/constant';\nimport { useScrollToError } from '../../../hooks/useScrollToError';\n\nconst LeftTableInnerCell = styled.div`\n margin-left: 2.7rem;\n text-indent: -2.7rem;\n font-size: 14px;\n`;\n\nconst YouthEmploymentSubTitle = styled.div`\n color: #666666;\n background: #e1ebf5;\n font-size: 14px;\n`;\nconst Form = ({\n //store\n isEditable,\n year,\n errors,\n // actions\n trigger,\n setValue,\n register,\n watch,\n handleSubmit,\n save,\n}) => {\n const youthEmploymentLeftBodyStyle = {\n width: '30%',\n background: '#E1EBF5',\n borderLeft: 'none',\n fontSize: '14px',\n };\n\n const youthEmploymentRightBodyStyle = {\n background: '#F0F0F0',\n borderRight: 'none',\n };\n\n useEffect(() => {\n setValue('target_year', year);\n }, [year]);\n\n const formProps = {\n onSubmit: isEditable ? handleSubmit(save) : (e) => e.preventDefault(),\n onKeyPress: (e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n },\n };\n\n const maximumFractionDigits = 1; // 小数点以降の長さ\n return (\n <form {...formProps}>\n <div className=\"pt-3\">\n <FacilityTitle\n title={`青少年雇用情報(${year}年4月入職)`}\n subTitle=\"当該採用年月に関する青少年雇用情報を登録・編集します\"\n />\n </div>\n <Paper className=\"mb-5\">\n <div className=\"d-flex flex-column px-3\">\n <div className=\"text-danger fw-bold\">\n - 記載内容については\n <a\n href=\"https://www.mhlw.go.jp/stf/seisakunitsuite/bunya/0000122234.html\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n className=\"text-danger\">\n 厚生労働省HP\n </a>\n をご確認下さい\n </div>\n <div className=\"text-danger fw-bold\">\n - 各項目は利用学生にも公開されます(空欄時は空欄で表示)\n </div>\n </div>\n <div className=\"px-3\">\n <Table className=\"mb-0\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={youthEmploymentLeftBodyStyle}>\n <div className=\"ps-2\">\n 集計日 <span className=\"text-danger\">*必須</span>\n </div>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={youthEmploymentRightBodyStyle}>\n <DatePicker\n {...register('recorded_at', {\n required: '集計日は必須です',\n })}\n className=\"form-control\"\n dateFormat=\"yyyy年MM月dd日\"\n locale=\"ja\"\n placeholderText=\"日付を選択してください\"\n selected={watch('recorded_at') ?? ''}\n onChange={(date) => {\n setValue('recorded_at', date);\n }}\n disabled={!isEditable}\n />\n <div className=\"text-danger\">\n {errors?.recorded_at?.message}\n </div>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <FacilityTitle title=\"青少年雇用情報シート\" />\n <YouthEmploymentSubTitle className=\"d-flex w-100 py-2 ps-3 mb-1\">\n 企業全体での正社員に関する情報です\n ※海外支店等に勤務している労働者については除外した情報となります\n </YouthEmploymentSubTitle>\n <YouthEmploymentSubTitle className=\"d-flex w-100 py-2 ps-3\">\n 1.募集・採用に関する情報\n </YouthEmploymentSubTitle>\n <Table className=\"mb-0\">\n <TableBody>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (1)直近3事業年度の新卒者等の採用者数と離職者数\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <div className=\"d-flex justify-content-start\">\n <table\n className=\"table w-100 m-0\"\n style={{ borderColor: '#F0F0F0', maxWidth: '400px' }}>\n <thead>\n <tr>\n <th width={60} />\n <th width={100} style={{ fontSize: '14px' }}>\n 採用者数\n </th>\n <th width={100} style={{ fontSize: '14px' }}>\n 離職者数\n </th>\n </tr>\n </thead>\n <tbody style={{ borderTop: 'none' }}>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>前年度</td>\n <td>\n <input\n {...register('recruitment_count_one_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register('unemployment_count_one_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>2年度前</td>\n <td>\n <input\n {...register('recruitment_count_two_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register('unemployment_count_two_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>3年度前</td>\n <td>\n <input\n {...register('recruitment_count_three_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register('unemployment_count_three_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div className=\"text-danger\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (2)直近3事業年度の新卒者等の採用者数(男女別)\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <div className=\"d-flex justify-content-start\">\n <table\n className=\"table w-100 m-0\"\n style={{ borderColor: '#F0F0F0', maxWidth: '400px' }}>\n <thead>\n <tr>\n <th width={60} />\n <th width={100} style={{ fontSize: '14px' }}>\n 男性\n </th>\n <th width={100} style={{ fontSize: '14px' }}>\n 女性\n </th>\n </tr>\n </thead>\n <tbody style={{ borderTop: 'none' }}>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>前年度</td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_one_ago_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_one_ago_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>2年度前</td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_two_ago_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_two_ago_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>3年度前</td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_three_ago_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_three_ago_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div className=\"text-danger\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>(3)平均継続勤務年数</LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <input\n {...register('average_service_years')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n onChange={({ target: { value } }) => {\n const field = 'average_service_years';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'average_service_years';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 年\n </span>\n <div className=\"text-danger mt-1\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>(4)従業員の平均年齢</LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <input\n {...register('average_age')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n onChange={({ target: { value } }) => {\n const field = 'average_age';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'average_age';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 歳\n </span>\n <div className=\"text-danger mt-1\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>(5)自由入力</LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <textarea\n {...register('general_note')}\n cols=\"30\"\n rows=\"3\"\n className=\"form-control\"\n disabled={!isEditable}\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n <YouthEmploymentSubTitle className=\"d-flex w-100 py-2 ps-1\">\n 2.職業能力の開発及び向上に関する取組の実施状況\n </YouthEmploymentSubTitle>\n <Table className=\"mb-0\">\n <TableBody>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>(1)研修の有無</LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_training')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_training') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('training_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n disabled={!isEditable}\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (2)自己啓発支援の有無\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_self_development_support')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_self_development_support') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('self_development_support_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n disabled={!isEditable}\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (3)メンター制度の有無\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_mentor')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_mentor') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('mentoring_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n disabled={!isEditable}\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (4)キャリアコンサルティング制度の有無\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_career_consulting')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_career_consulting') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('career_consulting_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n disabled={!isEditable}\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (5)社内検定等の制度の有無\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_in_company_testing')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_in_company_testing') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('in_company_testing_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n disabled={!isEditable}\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n <YouthEmploymentSubTitle className=\"d-flex w-100 py-2 ps-1\">\n 3.職場への定着の促進に関する取組の実施状況\n </YouthEmploymentSubTitle>\n <Table className=\"mb-0\">\n <TableBody>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (1)前事業年度の月平均所定外労働時間の実績\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <input\n {...register('overtime_work_last_year')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n onChange={({ target: { value } }) => {\n const field = 'overtime_work_last_year';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'overtime_work_last_year';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 時間\n </span>\n <div className=\"text-danger mt-1\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (2)前事業年度の有給休暇の平均取得日数\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <input\n {...register('holiday_usage_last_year')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n onChange={({ target: { value } }) => {\n const field = 'holiday_usage_last_year';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'holiday_usage_last_year';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 日\n </span>\n <div className=\"text-danger mt-1\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (3)前事業年度の育児休業取得者数/出産者数\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <table\n className=\"table w-100 m-0\"\n style={{ borderColor: '#F0F0F0', maxWidth: '400px' }}>\n <thead>\n <tr>\n <th width={70} />\n <th\n width={100}\n className=\"text-center\"\n style={{ fontSize: '14px' }}>\n 男性\n </th>\n <th\n width={100}\n className=\"text-center\"\n style={{ fontSize: '14px' }}>\n 女性\n </th>\n </tr>\n </thead>\n <tbody style={{ borderTop: 'none' }}>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>取得者数</td>\n <td>\n <input\n {...register('childcare_leave_used_last_year_male')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register(\n 'childcare_leave_used_last_year_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td style={{ fontSize: '14px' }}>対象者数</td>\n <td>\n <input\n {...register(\n 'childcare_leave_target_last_year_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n <td>\n <input\n {...register(\n 'childcare_leave_target_last_year_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n 名\n </span>\n </td>\n </tr>\n </tbody>\n </table>\n <div className=\"text-danger\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>\n (4)役員及び管理的地位にある者に占める女性の割合\n </LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <span className=\"me-2\" style={{ fontSize: '14px' }}>\n 役員\n </span>\n <input\n {...register('female_ratio_of_boards')}\n type=\"number\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n %\n </span>\n <span className=\"ms-3 me-2\" style={{ fontSize: '14px' }}>\n 管理職\n </span>\n <input\n {...register('female_ratio_of_managers')}\n type=\"number\"\n className=\"form-control d-inline ms-3\"\n style={{ maxWidth: '80px' }}\n disabled={!isEditable}\n />\n <span className=\"ms-1\" style={{ fontSize: '14px' }}>\n %\n </span>\n <div className=\"text-danger mt-1\">半角英数のみ入力可</div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={youthEmploymentLeftBodyStyle}>\n <LeftTableInnerCell>(5)自由入力</LeftTableInnerCell>\n </BodyCell>\n <BodyCell style={youthEmploymentRightBodyStyle}>\n <textarea\n {...register('general_note_2')}\n cols=\"30\"\n rows=\"3\"\n className=\"form-control\"\n disabled={!isEditable}\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center my-3\">\n <GreenButton\n width={100}\n height={44}\n label=\"保存\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={async (e) => {\n const success = await trigger();\n if (success) {\n e.preventDefault();\n return await save(watch());\n } else {\n return useScrollToError(errors);\n }\n }}\n disabled={!isEditable}\n />\n </div>\n </form>\n );\n};\n\nexport default Form;\n","import { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport dayjs from 'dayjs';\n\nconst P = 'MY_CORPORATE_YOUTH_EMPLOYMENT_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCreate = () => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n const {\n trigger,\n register,\n formState: { errors },\n handleSubmit,\n setValue,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {},\n });\n\n const initialize = useCallback((youthEmployment) => {\n Object.keys(youthEmployment).forEach((key) => {\n if (key === 'recorded_at' && youthEmployment[key] !== null) {\n // Y-m-dをDate型に変換\n setValue(key, dayjs(youthEmployment[key], 'YYYY/MM/DD').toDate());\n } else {\n setValue(key, youthEmployment[key]);\n }\n });\n }, []);\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n if (data.id) {\n await HttpRequest.put(\n `/api/my_corporate/youth_employments/${data.id}`,\n data,\n );\n } else {\n await HttpRequest.post('/api/my_corporate/youth_employments', data);\n }\n location.href = `/my_corporate/recruitments?year=${data.target_year}`;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n isLoading,\n errors,\n\n initialize,\n trigger,\n register,\n setValue,\n handleSubmit,\n watch,\n changeState,\n save,\n };\n};\n","import Form from './Form';\nimport React, { useState } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Title from '../../../components/School/Title';\nimport { toast } from 'react-toastify';\nimport { schoolMenuTitle } from '../../../../utils/constant';\n\nconst Create = (props) => {\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '担当者情報',\n href: '/my_school/advisors',\n },\n {\n text: '担当者情報追加',\n },\n ];\n\n const [isLoading, setIsLoading] = useState(false);\n\n const formAction = async (data) => {\n setIsLoading(true);\n try {\n return await HttpRequest.post('/api/my_school/advisors', {\n ...data,\n });\n } catch (e) {\n if (e.response.status === 400 && e.response.data.error) {\n toast.error('そのメールアドレスは使用できません');\n } else {\n toast.error('エラーが発生しました');\n }\n } finally {\n setIsLoading(false);\n }\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"担当者情報追加\"\n subTitle=\"貴校担当者情報の新規登録を行います\"\n />\n <Form\n props={props}\n formAction={formAction}\n formTitle=\"担当者情報\"\n onBack={() => (location.href = '/my_school/advisors')}\n isEditableManagerRole\n isEditable\n />\n </div>\n </div>\n );\n};\n\nexport default Create;\n","import PropTypes from 'prop-types';\nimport { useForm } from 'react-hook-form';\nimport React, { useState } from 'react';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Paper from '../../../components/Paper/Paper';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport { v4 as uuidv4 } from 'uuid';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport DeleteModal from '../../../components/Modal/DeleteModal';\nimport Title from '../../../components/School/Title';\n\nconst Form = (props) => {\n const {\n user,\n email,\n formAction,\n formTitle,\n isAdmin = false,\n isEdit = false,\n isMyAccount = false,\n onDelete = () => {},\n isEditableManagerRole = false,\n isEditable = false,\n } = props;\n const canShowDeleteButton = isEdit && isAdmin && !isMyAccount;\n const [isShowDeleteModal, setIsShowDeleteModal] = useState(false);\n const [isServerError, setIsServerError] = useState(false);\n const [error, setError] = useState('');\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n name: user?.advisor.name,\n main_advisor: user?.advisor.main_advisor,\n // 初期パスワードはuuidで入れておく\n initial_password:\n user?.initial_password ?? uuidv4().replaceAll('-', '').substr(0, 12),\n email: email,\n last_signed_in: '',\n role: user?.advisor.role,\n department: user?.advisor.department,\n is_manager: !!user?.advisor.is_manager,\n },\n });\n\n const onSubmit = async (data) => {\n setError('');\n try {\n const res = await formAction(data);\n\n location.href = res.data.redirect_path;\n } catch (e) {\n console.error(e);\n setIsServerError(true);\n }\n };\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '200px',\n };\n\n return (\n <>\n <form onSubmit={handleSubmit(onSubmit)}>\n <Paper>\n <Title title={formTitle} />\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={tableLeftCellStyle}>\n 氏名\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('name', {\n required: '氏名は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n disabled={!isEditable}\n />\n <span className=\"text-danger\">{errors?.name?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={tableLeftCellStyle}>\n メールアドレス\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n disabled={!isEditable}\n />\n <span className=\"text-danger\">\n {errors?.email?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={tableLeftCellStyle}>\n 役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('role')}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n disabled={!isEditable}\n />\n <span className=\"text-danger\">{errors?.role?.message}</span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={tableLeftCellStyle}>\n 所属\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('department')}\n type=\"text\"\n className=\"form-control\"\n style={{ width: '100%' }}\n disabled={!isEditable}\n />\n <span className=\"text-danger\">\n {errors?.department?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={tableLeftCellStyle}>\n 管理者\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <input\n {...register('is_manager')}\n type=\"checkbox\"\n className=\"form-check-input\"\n id=\"is-manager-flag\"\n disabled={!isEditableManagerRole}\n />\n <label className=\"ps-2\" htmlFor=\"is-manager-flag\">\n 管理者に設定する\n </label>\n <span className=\"text-danger\">\n {errors?.is_manager?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={tableLeftCellStyle}>\n 最終アクセス\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {watch('last_signed_in') ? watch('last_signed_in') : '-'}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center my-3\">\n {canShowDeleteButton && isEditable && (\n <BlackButton\n width={100}\n height={44}\n label=\"削除\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n setIsShowDeleteModal(true);\n }}\n />\n )}\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n disabled={!isEditable}\n />\n </div>\n </form>\n\n <DeleteModal\n isShow={isShowDeleteModal}\n onHide={() => setIsShowDeleteModal(false)}\n onDelete={() => {\n setIsShowDeleteModal(false);\n return onDelete?.();\n }}\n />\n </>\n );\n};\n\nForm.propTypes = {\n user: PropTypes.object,\n email: PropTypes.string,\n formAction: PropTypes.func,\n onBack: PropTypes.func,\n};\n\nexport default Form;\n","import PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Title from '../../../components/School/Title';\nimport Paper from '../../../components/Paper/Paper';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Table from '../../../components/Table/Table';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport { useSchoolAdvisorListModule } from '../../../modules/School/Advisor/listModule';\nimport { schoolMenuTitle } from '../../../../utils/constant';\n\nconst List = (props) => {\n const { users, currentPage, totalPages, disabledCreate = true } = props;\n const {\n // store\n isLoading,\n data,\n // actions\n initialize,\n forwardToCreateForm,\n } = useSchoolAdvisorListModule();\n\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '担当者情報',\n },\n ];\n\n useEffect(() => {\n initialize(users);\n }, []);\n\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"担当者情報\"\n subTitle=\"貴校担当者情報の一覧確認を行います\"\n />\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title=\"担当者一覧\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"担当者追加\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-person-fill\" />}\n onClick={() => forwardToCreateForm()}\n disabled={disabledCreate}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableHead>\n <HeadCell width={400} label=\"氏名\" />\n <HeadCell width={200} label=\"役職\" />\n <HeadCell width={400} label=\"所属\" />\n <HeadCell width={200} label=\"管理者\" />\n </TableHead>\n <TableBody>\n {data.map((user) => (\n <TableRow key={user.id}>\n <BodyCell style={{ background: '#F0F0F0' }}>\n <a href={`/my_school/advisors/${user.id}/edit`}>\n {user.advisor.name}\n </a>\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {user.advisor.role}\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {user.advisor.department}\n </BodyCell>\n <BodyCell\n style={{ background: '#F0F0F0' }}\n className=\"text-center\">\n {user.advisor.is_manager ? '◯' : ''}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex w-100 justify-content-center my-3\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </Paper>\n </div>\n </div>\n );\n};\n\nList.propTypes = {\n users: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n disabledCreate: PropTypes.bool,\n};\n\nList.defaultProps = {\n users: [],\n currentPage: 1,\n totalPages: 1,\n disabledCreate: true,\n};\n\nexport default List;\n","import PropTypes from 'prop-types';\nimport Form from './Form';\nimport React, { useState } from 'react';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Title from '../../../components/School/Title';\nimport { schoolMenuTitle } from '../../../../utils/constant';\n\nconst Update = (props) => {\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '担当者情報',\n href: '/my_school/advisors',\n },\n {\n text: '担当者情報詳細',\n },\n ];\n const [isLoading, setIsLoading] = useState(false);\n\n const formAction = async (data) => {\n setIsLoading(true);\n try {\n return await HttpRequest.patch(`/api/my_school/advisors/${props.id}`, {\n ...data,\n });\n } catch (e) {\n if (\n e.response.status === 400 &&\n e.response.data.error === 'MANAGER_ZERO_ERROR'\n ) {\n toast.error('管理者が不在になるため更新できません。');\n }\n return Promise.reject(e);\n } finally {\n setIsLoading(false);\n }\n };\n\n const onDelete = async () => {\n setIsLoading(true);\n try {\n await HttpRequest.delete(`/api/my_school/advisors/${props.id}`);\n location.href = '/my_school/advisors';\n } catch (e) {\n if (\n e.response.status === 400 &&\n e.response.data.error === 'MANAGER_ZERO_ERROR'\n ) {\n toast.error('管理者が不在になるため更新できません。');\n }\n return Promise.reject(e);\n } finally {\n setIsLoading(false);\n }\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"担当者情報詳細\"\n subTitle=\"貴校担当者情報の確認、更新を行います\"\n />\n <Form\n user={props.user}\n email={props.email}\n isEdit\n isAdmin={props.isAdmin}\n isMyAccount={props.isMyAccount}\n formAction={formAction}\n formTitle=\"担当者情報詳細\"\n onDelete={onDelete}\n isEditableManagerRole={props.isEditableManagerRole}\n isEditable={props.isEditable}\n />\n </div>\n </div>\n );\n};\n\nUpdate.propTypes = {\n id: PropTypes.number,\n user: PropTypes.object,\n email: PropTypes.string,\n isAdmin: PropTypes.bool,\n isEdit: PropTypes.bool,\n isMyAccount: PropTypes.bool,\n isEditableManagerRole: PropTypes.bool,\n isEditable: PropTypes.bool,\n};\n\nexport default Update;\n","import React from 'react';\nimport SchoolBreadcrumbs from '../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\nimport Title from '../../components/Title';\nimport Paper from '../../components/Paper/Paper';\nimport PrimaryButton from '../../components/Buttons/PrimaryButton';\nimport { useAggregateExportModule } from '../../modules/School/aggregateExportModule';\nimport { schoolMenuTitle } from '../../../utils/constant';\n\nconst AggregateExport = (props) => {\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '集計情報出力',\n },\n ];\n\n const {\n // store\n isLoading,\n // actions\n downloadSchoolBasicSurvey,\n downloadChildcareWorkerTrainingCouncilSurvey,\n forwardToHome,\n } = useAggregateExportModule();\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"集計情報出力\"\n subTitle=\"統計データのダウンロードを行います\"\n />\n <Paper>\n <div className=\"d-flex flex-column mt-5 ms-3\">\n <div className=\"d-flex flex-row mb-3\">\n <div style={{ minWidth: '300px' }}>・学校基本調査</div>\n <div>\n <PrimaryButton\n width={140}\n height={30}\n label=\"ダウンロード\"\n textFontSize={10}\n labelClassName=\"w-100\"\n onClick={() => downloadSchoolBasicSurvey()}\n />\n </div>\n </div>\n <div className=\"d-flex flex-row mb-3\">\n <div style={{ minWidth: '300px' }}>・保育士養成協議会調査</div>\n <div>\n <PrimaryButton\n width={140}\n height={30}\n label=\"ダウンロード\"\n textFontSize={10}\n labelClassName=\"w-100\"\n onClick={() => downloadChildcareWorkerTrainingCouncilSurvey()}\n />\n </div>\n </div>\n </div>\n </Paper>\n </div>\n </div>\n );\n};\n\nexport default AggregateExport;\n","import React, { useEffect } from 'react';\nimport styled from 'styled-components';\n\nimport BodyCell from '../../../components/Table/BodyCell';\nimport FacilityList from '../../../components/School/FacilityList';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/School/Title';\nimport { useSchoolCorporateDetailModule } from '../../../modules/School/Corporate/detailModule';\nimport { basicPaginate } from '../../../../utils/common';\nimport { schoolMenuTitle } from '../../../../utils/constant';\n\nconst TextArea = styled.textarea`\n // placeholder\n &::-webkit-input-placeholder {\n font-size: 12px;\n }\n`;\nconst BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '法人情報',\n href: '/my_school/corporates',\n },\n {\n text: '法人情報詳細',\n },\n];\n\nconst Detail = ({\n corporate: defaultCorporate,\n facilities = [],\n formDisabled = true,\n sortHeaders = [],\n corporateSchoolComment,\n selectableYears = [],\n}) => {\n const {\n // store\n corporate,\n targetIds,\n isLoading,\n comment,\n // actions\n initializeCorporate,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n forwardToRecruitmentConnect,\n setComment,\n onSave,\n } = useSchoolCorporateDetailModule();\n\n useEffect(() => {\n initializeCorporate(defaultCorporate);\n setComment(corporateSchoolComment);\n }, []);\n\n const [selectedYear, setSelectedYear] = React.useState('');\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"法人情報詳細\" subTitle=\"法人情報の詳細確認を行います\" />\n </div>\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 法人格\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.legal_person}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 法人名\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 担当者\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.person_in_charge}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 担当者部署\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.person_in_charge_department}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 担当者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.person_in_charge_position}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 郵便番号\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.postal_code}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 住所\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.address}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n TEL\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.tel}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {corporate.site_url && (\n <a href={corporate.site_url} target=\"_blank\" rel=\"nofollow\">\n {corporate.site_url}\n </a>\n )}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex flex-column w-100 px-3 mt-2\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 学生向けコメント\n <br />\n (運営全施設共通)\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <TextArea\n className=\"form-control\"\n rows=\"2\"\n placeholder=\"学生に伝えたいことを記載して下さい/法人の全施設に適用されます\"\n onChange={({ target: { value } }) => {\n setComment(value);\n }}\n value={comment}\n />\n </BodyCell>\n <BodyCell className=\"d-flex align-items-center\">\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n iconFontSize={20}\n labelClassName=\"w-100 justify-content-center d-flex\"\n onClick={(e) => {\n e.preventDefault();\n return onSave(defaultCorporate.id, comment);\n }}\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <Paper\n className=\"mb-3\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title=\"青少年雇用情報\" />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 align-items-center d-flex\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 入職年月\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <select\n className=\"form-select\"\n onChange={({ target: { value } }) => {\n setSelectedYear(value);\n }}>\n <option value=\"\" selected disabled>\n 選択してください\n </option>\n {selectableYears.map((value) => (\n <option value={`${value}-04-01`} key={`${value}-04-01`}>\n {value}年4月\n </option>\n ))}\n </select>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n <GreenButton\n width={100}\n height={40}\n label=\"表示\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n window.open(\n `/my_school/corporates/${corporate.id}/youth_employments?year=${selectedYear}`,\n '_blank',\n );\n }}\n disabled={!selectedYear}\n />\n </div>\n </Paper>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title=\"施設一覧\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n labelElement={\n <div\n className=\"d-flex flex-column justify-content-start align-items-start\"\n style={{ fontSize: '10px' }}>\n <div>求人情報</div>\n <div>一括紐付け</div>\n </div>\n }\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-list-check\" />}\n disabled={!!!targetIds?.length || formDisabled}\n onClick={() =>\n forwardToRecruitmentConnect(corporate.id, targetIds)\n }\n />\n </div>\n </div>\n )}>\n <FacilityList\n data={facilities}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n onClick={(id) =>\n (location.href = `/my_school/facilities/${id}?from=/my_school/corporates/${corporate?.id}`)\n }\n nameRenderer={(facility) => {\n return (\n <>\n <a\n href={`/my_school/facilities/${facility.id}?from=/my_school/corporates/${corporate?.id}`}\n target=\"_blank\">\n {facility.name}\n </a>\n </>\n );\n }}\n sortHeaders={sortHeaders}\n onSort={(key, nextOrder) => {\n let f = {};\n if (nextOrder === null) {\n f = {\n sortHeaders: JSON.stringify(\n sortHeaders.filter((h) => h.key !== key),\n ),\n };\n } else {\n f = {\n sortHeaders: JSON.stringify([\n ...sortHeaders.filter((h) => h.key !== key),\n { key, order: nextOrder },\n ]),\n };\n }\n return basicPaginate(1, f, '#facility-list');\n }}\n />\n </Paper>\n </div>\n );\n};\n\nexport default Detail;\n","import dayjs from 'dayjs';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport { schoolMenuTitle } from '../../../../../utils/constant';\nimport SchoolBreadcrumbs from '../../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport FileUpload from '../../../../components/Modal/FileUpload';\nimport Title from '../../../../components/School/Title';\nimport { useMultipleRecruitmentCreateModule } from '../../../../modules/School/Corporate/multipleRecruitmentCreateModule';\nimport RecruitmentForm from '../../../../components/School/RecruitmentForm';\n\ndayjs.locale('ja');\n\nconst Create = (props) => {\n const { corporateId, corporate } = props;\n\n const {\n // store\n targetIds,\n pdfs,\n isLoading,\n errors,\n pdfUploadErrorMessage,\n uploadedRecruitmentPdfUrl,\n // actions\n setTargetIds,\n register,\n handleSubmit,\n watch,\n setValue,\n control,\n save,\n changeState,\n addPdfFiles,\n addRecruitmentPdf,\n } = useMultipleRecruitmentCreateModule();\n\n const [isOpenFileUploadModal, setIsOpenFileUploadModal] = useState(false);\n const [\n isOpenRecruitmentFileUploadModal,\n setIsOpenRecruitmentFileUploadModal,\n ] = useState(false);\n\n useEffect(() => {\n const tmp = localStorage.getItem('recruitmentTargetIds');\n if (tmp) {\n setTargetIds(tmp.split(',').map((t) => Number(t)));\n }\n changeState({ id: corporateId });\n }, []);\n\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '法人情報',\n href: '/my_school/corporates',\n },\n {\n text: '法人情報詳細',\n href: `/my_school/corporates/${corporateId}`,\n },\n {\n text: '一括求人情報登録',\n },\n ];\n\n const tableLeftCellStyle = {\n background: '#E1EBF5',\n maxWidth: '200px',\n };\n\n const now = dayjs();\n\n const openRecruitmentPdf = () => {\n window.open(uploadedRecruitmentPdfUrl, '_blank');\n };\n\n const hasRecruitmentPdf = !!uploadedRecruitmentPdfUrl;\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"一括求人情報登録\"\n subTitle=\"同一法人の選択された施設に対して求人情報を一括で紐づけます\"\n />\n <div className=\"mt-5\">\n 対象:{corporate.name}\n <span className=\"ms-3\">{targetIds.length}施設</span>\n </div>\n </div>\n <form onSubmit={handleSubmit(save)}>\n <RecruitmentForm\n pdfs={pdfs}\n isShowAttachment={true}\n hasRecruitmentPdf={hasRecruitmentPdf}\n openRecruitmentPdf={openRecruitmentPdf}\n pdfDisabled={false}\n watch={watch}\n setValue={setValue}\n disabled={false}\n formDisabled={false}\n errors={errors}\n isOldFormat={false}\n register={register}\n control={control}\n addPdfFiles={addPdfFiles}\n addRecruitmentPdf={addRecruitmentPdf}\n />\n </form>\n <FileUpload\n errorMessage={pdfUploadErrorMessage}\n isShow={isOpenFileUploadModal}\n onClose={() => setIsOpenFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n if (file) {\n return addPdfFiles({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n created_at: now.format('YYYY-MM-DD HH:mm:ss'),\n updated_at: now.format('YYYY-MM-DD HH:mm:ss'),\n }).then(() => setIsOpenFileUploadModal(false));\n }\n setIsOpenFileUploadModal(false);\n }}\n />\n <FileUpload\n isShow={isOpenRecruitmentFileUploadModal}\n onClose={() => setIsOpenRecruitmentFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n addRecruitmentPdf({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n }).then(() => setIsOpenRecruitmentFileUploadModal(false));\n }}\n />\n </div>\n );\n};\nCreate.propTypes = {\n corporateId: PropTypes.number,\n corporate: PropTypes.object,\n postPath: PropTypes.string,\n};\n\nexport default Create;\n","import React from 'react';\n\nconst FacilityTable = (props) => {\n const { facilities, register } = props;\n\n return (\n <table className=\"table table-hover overflow-auto h-50\">\n <thead>\n <tr>\n <th scope=\"col\" width={100}>\n #\n </th>\n <th scope=\"col\">求人情報</th>\n <th scope=\"col\">都道府県</th>\n <th scope=\"col\">住所</th>\n <th scope=\"col\">施設形態</th>\n </tr>\n </thead>\n <tbody style={{ cursor: 'pointer' }}>\n {facilities.map((facility, i) => (\n <tr key={facility.id} className=\"align-middle\">\n <td>\n <input\n id={'facility-' + facility.id}\n type=\"checkbox\"\n value={facility.id}\n className=\"form-check-input\"\n {...register(`facility_ids.${i}`)}\n />\n </td>\n <td>\n <label htmlFor={'facility-' + facility.id}>{facility.name}</label>\n </td>\n <td>\n <label htmlFor={'facility-' + facility.id}>\n {facility.prefecture}\n </label>\n </td>\n <td>\n <label htmlFor={'facility-' + facility.id}>\n {facility.address}\n </label>\n </td>\n <td>\n <label htmlFor={'facility-' + facility.id}>\n {facility.facility_type}\n </label>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n );\n};\nFacilityTable.propTypes = {};\n\nexport default FacilityTable;\n","import React, { useCallback, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useSchoolCorporateListModule } from '../../../modules/School/Corporate/listModule';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Paper from '../../../components/Paper/Paper';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Table from '../../../components/Table/Table';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Title from '../../../components/School/Title';\nimport InlineSearch from '../../../components/Search/InlineSearch';\nimport {\n cvtLegalPersonToNumber,\n paramsToObject,\n} from '../../../../utils/common';\nimport {\n LEGAL_PERSON_LABEL_MAP,\n LEGAL_PERSON_VALUE_MAP,\n schoolMenuTitle,\n} from '../../../../utils/constant';\n\nconst BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '法人情報',\n },\n];\n\nconst SearchableList = (props) => {\n const {\n corporates: defaultCorporates,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n } = props;\n const {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n currentPage,\n totalPages,\n // actions\n changeState,\n updateFilter,\n addTargetId,\n removeTargetId,\n downloadCorporates,\n forwardToApplyForm,\n } = useSchoolCorporateListModule();\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n updateFilter({\n name: r.name ?? '',\n corporateType: r.corporateType ?? '',\n });\n }, []);\n\n const paginate = useCallback((pageNum, params = {}) => {\n const prms = Object.keys(params)\n .filter((key) => key !== 'page' && params[key] !== null)\n .map((key) => ({\n [key]: params[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n }, []);\n\n useEffect(() => {\n changeState({\n data: defaultCorporates,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n });\n }, []);\n\n const headerRenderer = () => {\n return (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title=\"法人一覧\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"法人情報DL\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-download\" />}\n onClick={() => {\n if (targetIds?.length > 0) {\n return downloadCorporates();\n }\n }}\n disabled={!!!targetIds.length}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"新規登録申請\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={() => forwardToApplyForm()}\n />\n </div>\n </div>\n );\n };\n const paperProps = {\n headerRenderer,\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"法人情報\" subTitle=\"法人情報の一覧確認を行います\" />\n <div className=\"d-flex flex-row mt-4\">\n <InlineSearch\n style={{ maxWidth: '400px' }}\n label=\"検索\"\n value={filter.name}\n placeHolder=\"法人名を入力してください\"\n onChange={({ target: { value } }) => {\n updateFilter({ name: value });\n }}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n paginate(1, filter);\n }\n }}\n onClick={() => paginate(1, filter)}\n />\n <div className=\"ms-4\">\n <select\n className=\"form-select\"\n value={filter.corporateType}\n onChange={({ target: { value } }) => {\n updateFilter({ corporateType: value });\n return paginate(1, { ...filter, corporateType: value });\n }}\n style={{ width: '150px' }}>\n <option value=\"\">法人種別</option>\n {Object.keys(LEGAL_PERSON_VALUE_MAP).map((key) => (\n <option value={cvtLegalPersonToNumber(key)} key={key}>\n {LEGAL_PERSON_LABEL_MAP[key]}\n </option>\n ))}\n </select>\n </div>\n </div>\n </div>\n\n <Paper {...paperProps} className=\"mb-5\">\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell width={40} />\n <HeadCell width={60} label=\"法人種\" />\n <HeadCell width={200} label=\"法人名\" />\n <HeadCell width={50} label=\"郵便番号\" />\n <HeadCell width={120} label=\"所在地\" />\n <HeadCell width={70} label=\"TEL\" />\n <HeadCell width={60} label=\"登録施設数\" />\n </TableHead>\n <TableBody>\n {data.map((corporate) => (\n <TableRow key={corporate.id}>\n <BodyCell\n className=\"text-center p-0 m-0\"\n onClick={() =>\n targetIds.includes(corporate.id)\n ? removeTargetId(corporate.id)\n : addTargetId(corporate.id)\n }>\n <input\n className=\"form-check-input rounded-1\"\n type=\"checkbox\"\n onClick={() =>\n targetIds.includes(corporate.id)\n ? removeTargetId(corporate.id)\n : addTargetId(corporate.id)\n }\n checked={targetIds.includes(corporate.id)}\n value={corporate.id}\n />\n </BodyCell>\n <BodyCell>{corporate.legal_person}</BodyCell>\n <BodyCell>\n <a\n href={`/my_school/corporates/${corporate.id}?sortHeaders=[{\"key\":\"address\",\"order\":\"asc\"}]`}>\n {corporate.name}\n </a>\n </BodyCell>\n <BodyCell>{corporate.postal_code}</BodyCell>\n <BodyCell>{corporate.address}</BodyCell>\n <BodyCell className=\"text-center\">{corporate.tel}</BodyCell>\n <BodyCell className=\"text-center\">\n {corporate.facilities_size ?? '0'}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex w-100 justify-content-center my-3\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page, filter)}\n />\n </div>\n </Paper>\n </div>\n );\n};\nSearchableList.propTypes = {\n corporates: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n};\n\nexport default SearchableList;\n","import dayjs from 'dayjs';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap';\nimport SchoolBreadcrumbs from '../../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport FileUpload from '../../../../components/Modal/FileUpload';\nimport Paper from '../../../../components/Paper/Paper';\nimport BodyCell from '../../../../components/Table/BodyCell';\nimport HeadCell from '../../../../components/Table/HeadCell';\nimport Table from '../../../../components/Table/Table';\nimport TableBody from '../../../../components/Table/TableBody';\nimport TableHead from '../../../../components/Table/TableHead';\nimport TableRow from '../../../../components/Table/TableRow';\nimport Title from '../../../../components/School/Title';\nimport { useSchoolCorporateYouthEmploymentInfoModule } from '../../../../modules/School/Corporate/YouthEmployment/infoModule';\nimport { schoolMenuTitle } from '../../../../../utils/constant';\n\nconst Info = ({\n corporateId,\n corporate: defaultCorporate,\n recruitmentInformationSheet: defaultRecruitmentInformationSheet,\n recruitmentInformationSheetAttachedFiles,\n recruitmentPdfFile,\n pdfDisabled = true,\n formDisabled = true,\n viewYear = null,\n}) => {\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '法人情報',\n href: '/my_school/corporates',\n },\n {\n text: '法人情報詳細',\n href: `/my_school/corporates/${corporateId}`,\n },\n {\n text: '青少年雇用情報',\n },\n ];\n\n useEffect(() => {\n changeState({\n uploadedRecruitmentPdfUrl: recruitmentPdfFile,\n uploadedRecruitmentPdf: defaultRecruitmentInformationSheet?.file_path,\n });\n }, []);\n\n const {\n // store\n corporate,\n pdfs,\n isLoading,\n errors,\n pdfUploadErrorMessage,\n uploadedRecruitmentPdfUrl,\n recruitmentScheduleDate,\n // actions\n initializeCorporate,\n initializeRecruitmentInformationSheet,\n save,\n changeState,\n register,\n handleSubmit,\n addPdfFiles,\n watch,\n setValue,\n addRecruitmentPdf,\n } = useSchoolCorporateYouthEmploymentInfoModule();\n\n useEffect(() => {\n initializeCorporate(defaultCorporate);\n initializeRecruitmentInformationSheet(defaultRecruitmentInformationSheet);\n }, []);\n\n useEffect(() => {\n changeState({\n recruitmentScheduleDate: viewYear,\n });\n }, [viewYear]);\n\n const tableLeftCellStyle = {\n width: '30%',\n background: '#E1EBF5',\n borderLeft: 'none',\n };\n\n const tableRightCellStyle = { background: '#F0F0F0', borderRight: 'none' };\n const now = dayjs();\n const [isOpenFileUploadModal, setIsOpenFileUploadModal] = useState(false);\n const [\n isOpenRecruitmentFileUploadModal,\n setIsOpenRecruitmentFileUploadModal,\n ] = useState(false);\n\n const openRecruitmentPdf = () => {\n window.open(\n uploadedRecruitmentPdfUrl\n ? uploadedRecruitmentPdfUrl\n : recruitmentPdfFile,\n '_blank',\n );\n };\n\n const hasRecruitmentPdf = !!uploadedRecruitmentPdfUrl || !!recruitmentPdfFile;\n\n useEffect(() => {\n if (recruitmentInformationSheetAttachedFiles) {\n changeState({\n pdfs: recruitmentInformationSheetAttachedFiles?.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n filePath: pdf.file_path,\n signedUrl: pdf.signed_url,\n uploadDate: pdf.upload_date,\n })),\n });\n }\n }, [recruitmentInformationSheetAttachedFiles]);\n\n const YOUTH_EMPLOYMENT_OPTIONS = [\n {\n value: '1',\n name: 'あり',\n },\n {\n value: '',\n name: 'なし',\n },\n ];\n\n const maximumFractionDigits = 1; // 小数点以降の長さ\n\n const disabledEdit = defaultCorporate.disabled_recruitment_edit_by_school;\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"青少年雇用情報\"\n subTitle=\"青少年雇用情報の確認、登録、編集を行います\"\n />\n </div>\n <form onSubmit={handleSubmit(save)}>\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title={corporate.name} />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF確認\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-file-earmark-text\" />}\n onClick={(e) => {\n e.preventDefault();\n openRecruitmentPdf();\n }}\n disabled={!hasRecruitmentPdf}\n />\n {disabledEdit ? (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n 施設管理者によって管理されているため変更できません。\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n }}\n disabled\n />\n </span>\n </OverlayTrigger>\n ) : (\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenRecruitmentFileUploadModal(true);\n }}\n disabled={pdfDisabled}\n />\n )}\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <div\n className=\"d-flex w-100 py-2 ps-1\"\n style={{ background: '#E1EBF5' }}>\n 1.募集・採用に関する情報\n </div>\n <Table className=\"mb-0\">\n <TableBody>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (1)直近3事業年度の新卒者等の採用者数と離職者数\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <table\n className=\"table w-100 m-0\"\n style={{ borderColor: '#F0F0F0', maxWidth: '400px' }}>\n <thead>\n <tr>\n <th width={60} />\n <th width={100}>採用者数</th>\n <th width={100}>離職者数</th>\n </tr>\n </thead>\n <tbody style={{ borderTop: 'none' }}>\n <tr className=\"align-middle\">\n <td>前年度</td>\n <td>\n <input\n {...register('recruitment_count_one_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register('unemployment_count_one_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td>2年度前</td>\n <td>\n <input\n {...register('recruitment_count_two_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register('unemployment_count_two_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td>3年度前</td>\n <td>\n <input\n {...register('recruitment_count_three_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register('unemployment_count_three_ago')}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (2)直近3事業年度の新卒者等の採用者数(男女別)\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <table\n className=\"table w-100 m-0\"\n style={{ borderColor: '#F0F0F0', maxWidth: '400px' }}>\n <thead>\n <tr>\n <th width={60} />\n <th width={100}>男性</th>\n <th width={100}>女性</th>\n </tr>\n </thead>\n <tbody style={{ borderTop: 'none' }}>\n <tr className=\"align-middle\">\n <td>前年度</td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_one_ago_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_one_ago_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td>2年度前</td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_two_ago_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_two_ago_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td>3年度前</td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_three_ago_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register(\n 'classified_recruitment_count_three_ago_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (3)平均継続勤務年数\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <input\n {...register('average_service_years')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n onChange={({ target: { value } }) => {\n const field = 'average_service_years';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'average_service_years';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n />\n <span className=\"ms-1\">年</span>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (4)従業員の平均年齢\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <input\n {...register('average_age')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n onChange={({ target: { value } }) => {\n const field = 'average_age';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'average_age';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n />\n <span className=\"ms-1\">歳</span>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>(5)自由入力</BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <textarea\n {...register('general_note')}\n cols=\"30\"\n rows=\"3\"\n className=\"form-control\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n <div\n className=\"d-flex w-100 py-2 ps-1\"\n style={{ background: '#E1EBF5' }}>\n 2.職業能力の開発及び向上に関する取組の実施状況\n </div>\n <Table className=\"mb-0\">\n <TableBody>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (1)研修の有無\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_training')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_training') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('training_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (2)自己啓発支援の有無\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_self_development_support')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_self_development_support') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('self_development_support_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (3)メンター制度の有無\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_mentor')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_mentor') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('mentoring_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (4)キャリアコンサルティング制度の有無\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_career_consulting')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_career_consulting') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('career_consulting_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (5)社内検定等の制度の有無\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <select\n {...register('exist_in_company_testing')}\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled>\n {YOUTH_EMPLOYMENT_OPTIONS.map((item) => (\n <option value={item.value} key={item.name}>\n {item.name}\n </option>\n ))}\n </select>\n </div>\n {watch('exist_in_company_testing') == '1' && (\n <div className=\"d-flex pt-1\">\n <textarea\n {...register('in_company_testing_note')}\n className=\"form-control\"\n placeholder=\"内容\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n </div>\n )}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n <div\n className=\"d-flex w-100 py-2 ps-1\"\n style={{ background: '#E1EBF5' }}>\n 3.職場への定着の促進に関する取組の実施状況\n </div>\n <Table className=\"mb-0\">\n <TableBody>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (1)前事業年度の月平均所定外労働時間の実績\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <input\n {...register('overtime_work_last_year')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n onChange={({ target: { value } }) => {\n const field = 'overtime_work_last_year';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'overtime_work_last_year';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n />\n <span className=\"ms-1\">時間</span>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (2)前事業年度の有給休暇の平均取得日数\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <div className=\"d-flex justify-content-start\">\n <input\n {...register('holiday_usage_last_year')}\n type=\"text\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n onChange={({ target: { value } }) => {\n const field = 'holiday_usage_last_year';\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, value);\n }}\n onBlur={({ target: { value } }) => {\n const field = 'holiday_usage_last_year';\n\n if (value.endsWith('.')) {\n return setValue(\n field,\n value.substring(0, value.length - 1),\n );\n }\n }}\n />\n <span className=\"ms-1\">日</span>\n </div>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (3)前事業年度の育児休業取得者数/出産者数\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <table\n className=\"table w-100 m-0\"\n style={{ borderColor: '#F0F0F0', maxWidth: '400px' }}>\n <thead>\n <tr>\n <th width={70} />\n <th width={100} className=\"text-center\">\n 男性\n </th>\n <th width={100} className=\"text-center\">\n 女性\n </th>\n </tr>\n </thead>\n <tbody style={{ borderTop: 'none' }}>\n <tr className=\"align-middle\">\n <td>取得者数</td>\n <td>\n <input\n {...register(\n 'childcare_leave_used_last_year_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register(\n 'childcare_leave_used_last_year_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n <tr className=\"align-middle\">\n <td>対象者数</td>\n <td>\n <input\n {...register(\n 'childcare_leave_target_last_year_male',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n <td>\n <input\n {...register(\n 'childcare_leave_target_last_year_female',\n )}\n type=\"number\"\n className=\"form-control d-inline w-75\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">名</span>\n </td>\n </tr>\n </tbody>\n </table>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>\n (4)役員及び管理的地位にある者に占める女性の割合\n </BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <span className=\"me-2\">役員</span>\n <input\n {...register('female_ratio_of_boards')}\n type=\"number\"\n className=\"form-control d-inline\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">%</span>\n <span className=\"ms-3 me-2\">管理職</span>\n <input\n {...register('female_ratio_of_managers')}\n type=\"number\"\n className=\"form-control d-inline ms-3\"\n style={{ maxWidth: '80px' }}\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n <span className=\"ms-1\">%</span>\n </BodyCell>\n </TableRow>\n <TableRow>\n <BodyCell style={tableLeftCellStyle}>(5)自由入力</BodyCell>\n <BodyCell style={tableRightCellStyle}>\n <textarea\n {...register('general_note_2')}\n cols=\"30\"\n rows=\"3\"\n className=\"form-control\"\n // disabled={disabledEdit || formDisabled}\n disabled\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title=\"その他添付ファイル\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n {disabledEdit ? (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n 施設管理者によって管理されているため変更できません。\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n }}\n disabled\n />\n </span>\n </OverlayTrigger>\n ) : (\n <GreenButton\n width={130}\n height={44}\n label=\"PDF登録\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-upload\" />}\n onClick={(e) => {\n e.preventDefault();\n setIsOpenFileUploadModal(true);\n }}\n // disabled={pdfDisabled}\n disabled\n />\n )}\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableHead>\n <HeadCell width={150} label=\"アップロード日\" />\n <HeadCell label=\"ファイル名\" />\n </TableHead>\n <TableBody>\n {pdfs.map((pdfData, i) => (\n <TableRow key={i}>\n <BodyCell style={{ background: '#F0F0F0' }}>\n {pdfData.uploadDate}\n </BodyCell>\n <BodyCell style={{ background: '#F0F0F0' }}>\n <a\n href={pdfData.signedUrl}\n target=\"_blank\"\n rel=\"nofollow\">\n {pdfData.name}\n </a>\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center my-3\">\n <GrayButton\n width={100}\n height={44}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/my_school/corporates/${corporateId}`;\n }}\n />\n\n {disabledEdit ? (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n 施設管理者によって管理されているため変更できません。\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n }}\n disabled\n />\n </span>\n </OverlayTrigger>\n ) : (\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n disabled={formDisabled}\n />\n )}\n </div>\n </form>\n\n <FileUpload\n errorMessage={pdfUploadErrorMessage}\n isShow={isOpenFileUploadModal}\n onClose={() => setIsOpenFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n if (file) {\n return addPdfFiles({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n }).then(() => setIsOpenFileUploadModal(false));\n }\n setIsOpenFileUploadModal(false);\n }}\n />\n <FileUpload\n isShow={isOpenRecruitmentFileUploadModal}\n onClose={() => setIsOpenRecruitmentFileUploadModal(false)}\n onOk={(e, file, fileName) => {\n addRecruitmentPdf({\n file: file,\n name: fileName,\n uploadDate: now.format('YYYY/MM/DD'),\n }).then(() => setIsOpenRecruitmentFileUploadModal(false));\n }}\n />\n </div>\n );\n};\n\nInfo.propTypes = {\n corporateId: PropTypes.number,\n corporate: PropTypes.object,\n recruitmentInformationSheet: PropTypes.object,\n recruitmentInformationSheetAttachedFiles: PropTypes.array,\n};\n\nexport default Info;\n","import PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport SchoolIcon from '../../../components/CustomIcons/SchoolIcon';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/School/Title';\nimport { useSchoolFacilityDetailModule } from '../../../modules/School/Facility/detailModule';\nimport styled from 'styled-components';\nimport { schoolMenuTitle } from '../../../../utils/constant';\n\nconst TextArea = styled.textarea`\n // placeholder\n &::-webkit-input-placeholder {\n font-size: 12px;\n }\n`;\n\nconst Detail = (props) => {\n const {\n facility: defaultFacility,\n recruitmentId,\n facilitySchoolComment,\n } = props;\n\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '施設情報',\n href: '/my_school/facilities',\n },\n {\n text: '施設情報詳細',\n },\n ];\n const {\n // store\n facility,\n isLoading,\n comment,\n // actions\n initializeFacility,\n forwardToCorporate,\n forwardToEvent,\n forwardToRecruitment,\n forwardToIntroduction,\n setComment,\n onSave,\n } = useSchoolFacilityDetailModule();\n\n useEffect(() => {\n initializeFacility(defaultFacility);\n setComment(facilitySchoolComment);\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"施設情報詳細\" subTitle=\"施設情報の詳細確認を行います\" />\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"法人情報\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={() => forwardToCorporate(facility.corporate_id)}\n disabled={!!!facility.corporate_id}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"求人情報詳細\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-file-earmark-text\" />}\n onClick={() =>\n forwardToRecruitment(facility.id, recruitmentId ?? 'new')\n }\n />\n <GreenButton\n width={130}\n height={44}\n label=\"イベント情報\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-calendar-event\" />}\n onClick={() => forwardToEvent(facility.id)}\n disabled={!!!facility?.has_event}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"施設紹介\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<SchoolIcon />}\n onClick={() => forwardToIntroduction(facility.id)}\n disabled={!!!facility?.facility_introduction}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 施設名\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 施設種別\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.facility_type}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 施設種別備考\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.facility_type_remark}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 運営者区分\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.operator}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 許認可\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.authorization}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 開園日\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.opening_date}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 施設代表者\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.representative_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 代表者役職\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.representative_job_title}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 郵便番号\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.postal_code}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 都道府県\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.prefecture}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 市区町村\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.city}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 丁番以下住所\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.other_address}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 建物名など\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.other_address2}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 住所\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.address}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n TEL\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.tel}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 公式HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.site_url && (\n <a href={facility.site_url} target=\"_blank\" rel=\"nofollow\">\n {facility.site_url}\n </a>\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n その他HP\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.site_url && (\n <a href={facility.other_url} target=\"_blank\" rel=\"nofollow\">\n {facility.other_url}\n </a>\n )}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 定員\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n 100名\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 在園児\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.children_count ?? '-'}名\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 園の紹介\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facility.feature}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n トップ写真\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <img\n src={\n facility.top_image_file_path\n ? facility.top_image_file_path\n : '/noimage.jpg'\n }\n alt=\"\"\n height={150}\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex flex-column w-100 px-3 mt-2\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '150px',\n }}>\n 学生向けコメント\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <TextArea\n className=\"form-control\"\n rows=\"2\"\n placeholder=\"学生に伝えたいことを記載して下さい/この施設に適用されます\"\n onChange={({ target: { value } }) => {\n setComment(value);\n }}\n value={comment}\n />\n </BodyCell>\n <BodyCell className=\"d-flex align-items-center\">\n <GreenButton\n width={100}\n height={44}\n label=\"更 新\"\n textFontSize={20}\n iconFontSize={20}\n labelClassName=\"w-100 justify-content-center d-flex\"\n onClick={(e) => {\n e.preventDefault();\n return onSave(defaultFacility.id, comment);\n }}\n />\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n </div>\n );\n};\n\nDetail.propTypes = {\n facility: PropTypes.object,\n recruitmentId: PropTypes.number,\n};\n\nexport default Detail;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport SchoolBreadcrumbs from '../../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../../components/Paper/Paper';\nimport BodyCell from '../../../../components/Table/BodyCell';\nimport Table from '../../../../components/Table/Table';\nimport TableBody from '../../../../components/Table/TableBody';\nimport TableRow from '../../../../components/Table/TableRow';\nimport Title from '../../../../components/School/Title';\nimport { useSchoolFacilityEventListModule } from '../../../../modules/School/Facility/Event/listModule';\nimport { schoolMenuTitle } from '../../../../../utils/constant';\n\nconst Info = (props) => {\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '施設情報',\n href: '/my_school/facilities',\n },\n {\n text: '施設情報詳細',\n href: `/my_school/facilities/${props.facilityId}`,\n },\n {\n text: 'イベント情報',\n },\n ];\n\n const {\n // store\n facility,\n corporate,\n facilityId,\n events,\n isLoading,\n // actions\n initialize,\n changeState,\n forwardToDetail,\n } = useSchoolFacilityEventListModule();\n\n const [openTargetIds, setOpenTargetIds] = useState([]);\n\n useEffect(() => {\n changeState({\n facilityId: props.facilityId,\n facility: props.facility,\n events: props.events,\n corporate: props.corporate,\n });\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"イベント情報詳細\"\n subTitle=\"施設が貴校学生に対して告知しているイベント確認を行います\"\n />\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"fw-bold\">\n <span className=\"ms-3\">{corporate.name}</span>\n <span className=\"ms-3\">{facility.name}</span>\n </h5>\n </div>\n </div>\n )}>\n {events?.map((event) => (\n <Table key={event.id} className=\"my-0\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n タイトル(開催日)\n </BodyCell>\n <BodyCell\n className=\"w-100 d-flex flex-row align-items-center\"\n style={{ background: '#E1EBF5' }}>\n {openTargetIds.includes(event.id) ? (\n <>\n <div style={{ width: '95%' }}>\n {event.title} {event.event_date}\n </div>\n <button\n className=\"d-flex btn btn-light m-0 px-1 py-0\"\n onClick={() =>\n setOpenTargetIds(() =>\n openTargetIds.filter((_i) => _i !== event.id),\n )\n }>\n <i className=\"bi bi-dash\" />\n </button>\n </>\n ) : (\n <>\n <div style={{ width: '95%' }}>\n {event.title} {event.event_date}\n </div>\n <button\n className=\"d-flex btn btn-light m-0 px-1 py-0\"\n onClick={() =>\n setOpenTargetIds([...openTargetIds, event.id])\n }>\n <i className=\"bi bi-plus\" />\n </button>\n </>\n )}\n </BodyCell>\n </TableRow>\n {openTargetIds.includes(event.id) && (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 実施時間\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.implementation_time_from} 〜 \n {event.implementation_time_to}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 内容\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.subject}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 対象者\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.target}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 備考\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.note}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n イベント定員数\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.capacity}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 担当者\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.person_in_charge}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 担当者役職\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.person_in_charge_position}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 担当連絡先(TEL)\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.person_in_charge_tel}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 担当連絡先(MAIL)\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.person_in_charge_email}\n </BodyCell>\n </TableRow>\n {/* <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 添付ファイル\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.attached_file_path && (\n <a\n href={event.attached_file_path}\n target=\"_blank\"\n rel=\"nofollow\">\n 添付ファイルURL\n </a>\n )}\n </BodyCell>\n </TableRow> */}\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 募集開始日時\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n {event.release_date}\n </BodyCell>\n </TableRow>\n </>\n )}\n </TableBody>\n </Table>\n ))}\n </Paper>\n </div>\n );\n};\n\nInfo.propTypes = {\n facilityId: PropTypes.any,\n facility: PropTypes.object,\n events: PropTypes.array,\n corporate: PropTypes.object,\n};\n\nexport default Info;\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport SchoolBreadcrumbs from '../../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Title from '../../../../components/School/Title';\nimport Paper from '../../../../components/Paper/Paper';\nimport TableBody from '../../../../components/Table/TableBody';\nimport BodyCell from '../../../../components/Table/BodyCell';\nimport TableRow from '../../../../components/Table/TableRow';\nimport Table from '../../../../components/Table/Table';\nimport { useSchoolFacilityIntroductionInfoModule } from '../../../../modules/School/Facility/Introduction/infoModule';\nimport { schoolMenuTitle } from '../../../../../utils/constant';\n\nconst Info = (props) => {\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '施設情報',\n href: '/my_school/facilities',\n },\n {\n text: '施設情報詳細',\n href: `/my_school/facilities/${props.facilityId}`,\n },\n {\n text: '施設紹介',\n },\n ];\n\n const {\n // store\n facility,\n facilityIntroduction,\n isLoading,\n corporate,\n // actions\n changeState,\n forwardToDetail,\n } = useSchoolFacilityIntroductionInfoModule();\n\n useEffect(() => {\n changeState({\n facilityId: props.facilityId,\n facility: props.facility,\n corporate: props.corporate,\n facilityIntroduction: props.facilityIntroduction,\n });\n }, []);\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"施設詳細\"\n subTitle=\"施設が貴校学生に対して告知しているイベント確認を行います\"\n />\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100 mb-3\">\n <div className=\"d-flex justify-content-start w-100\">\n <h5 className=\"fw-bold\">\n <span className=\"ms-3\">{corporate.name}</span>\n <span className=\"ms-3\">{facility.name}</span>\n </h5>\n </div>\n </div>\n )}>\n <Table className=\"my-0\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-start\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n TOPフォト\n </BodyCell>\n <BodyCell\n className=\"w-100 d-flex flex-row align-items-start\"\n style={{ background: '#F0F0F0' }}>\n <img\n src={facilityIntroduction.signed_top_image_url}\n alt=\"\"\n height={150}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n タイトル\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facilityIntroduction?.title}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n サブタイトル\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facilityIntroduction?.sub_title}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 内容\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facilityIntroduction?.description}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n フォト\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n <img\n src={facilityIntroduction.signed_image_url}\n alt=\"\"\n height={150}\n />\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n キャプション\n </BodyCell>\n <BodyCell className=\"w-100\" style={{ background: '#F0F0F0' }}>\n {facilityIntroduction?.caption}\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </Paper>\n </div>\n );\n};\n\nInfo.propTypes = {\n facilityId: PropTypes.number,\n facility: PropTypes.object,\n corporate: PropTypes.object,\n facilityIntroduction: PropTypes.object,\n};\n\nexport default Info;\n","import React, { useEffect, useState } from 'react';\nimport dayjs from 'dayjs';\nimport { useFieldArray } from 'react-hook-form';\n\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport RecruitmentForm from '../../../../components/School/RecruitmentForm';\nimport SchoolBreadcrumbs from '../../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Title from '../../../../components/School/Title';\nimport { useCreate } from './hooks/useCreate';\nimport { schoolMenuTitle } from '../../../../../utils/constant';\n\nconst getBreadcrumb = (facilityId) => {\n if (facilityId) {\n return [\n {\n ...schoolMenuTitle,\n },\n {\n text: '施設情報',\n href: '/my_school/facilities',\n },\n {\n text: '施設情報詳細',\n href: `/my_school/facilities/${facilityId}`,\n },\n {\n text: '求人情報詳細',\n },\n ];\n }\n return [\n {\n ...schoolMenuTitle,\n },\n {\n text: '求人情報一覧',\n href: `/my_school/recruitments`,\n },\n {\n text: '求人情報詳細',\n },\n ];\n};\n\nconst Create = ({\n facilityId,\n facility,\n recruitmentId,\n recruitment,\n recruitmentPdfFile,\n facilityAttachments = [],\n disabledEdit = false,\n pdfDisabled = true,\n formDisabled = true,\n isOldFormat = true,\n showAttachment = true,\n}) => {\n const {\n // store\n pdfs,\n isLoading,\n uploadedRecruitmentPdfUrl,\n errors,\n // actions\n save,\n changeState,\n addPdfFiles,\n addRecruitmentPdf,\n deletePdfFile,\n register,\n handleSubmit,\n watch,\n control,\n setValue,\n } = useCreate(facilityId);\n\n const jobTypeOptionField = useFieldArray({\n control,\n name: 'recruitment_job_type_options',\n });\n\n const allowanceOptionField = useFieldArray({\n control,\n name: 'recruitment_allowance_options',\n });\n\n useEffect(() => {\n changeState({\n uploadedRecruitmentPdfUrl: recruitmentPdfFile,\n uploadedRecruitmentPdf: recruitment?.file_path,\n });\n }, []);\n useEffect(() => {\n let hasAllowanceOption = false;\n let hasJobTypeOption = false;\n if (recruitment) {\n for (const k of Object.keys(recruitment)) {\n if (k === 'release_date' && recruitment[k]) {\n setValue(k, dayjs(recruitment[k], 'YYYY/MM/DD').toDate());\n } else {\n setValue(k, recruitment[k]);\n }\n }\n }\n if (recruitment.required_document_option_values?.length > 0) {\n setValue(\n 'required_document_option',\n recruitment.required_document_option_values,\n );\n }\n if (recruitment.document_submission_option_values?.length > 0) {\n setValue(\n 'document_submission_option',\n recruitment.document_submission_option_values,\n );\n }\n if (\n !recruitment.is_old_format &&\n recruitment?.job_type_options?.length > 0\n ) {\n setValue('recruitment_job_type_options', recruitment.job_type_options);\n hasJobTypeOption = true;\n }\n if (\n !recruitment.is_old_format &&\n recruitment?.allowance_options?.length > 0\n ) {\n setValue('recruitment_allowance_options', recruitment.allowance_options);\n hasAllowanceOption = true;\n }\n if (!isOldFormat) {\n if (!hasJobTypeOption) {\n jobTypeOptionField.append({});\n }\n if (!hasAllowanceOption) {\n allowanceOptionField.append({\n category: 'all',\n });\n }\n }\n }, [recruitment]);\n useEffect(() => {\n changeState({ recruitmentId });\n }, [recruitmentId]);\n\n useEffect(() => {\n if (facilityAttachments) {\n changeState({\n pdfs: facilityAttachments?.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n filePath: pdf.file_path,\n signedUrl: pdf.signed_url,\n uploadDate: pdf.upload_date,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n })),\n });\n }\n }, [facilityAttachments]);\n\n const openRecruitmentPdf = () => {\n window.open(\n uploadedRecruitmentPdfUrl\n ? uploadedRecruitmentPdfUrl\n : recruitmentPdfFile,\n '_blank',\n );\n };\n\n const hasRecruitmentPdf = !!uploadedRecruitmentPdfUrl || !!recruitmentPdfFile;\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={getBreadcrumb(facilityId)} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"求人情報詳細\" subTitle=\"求人情報の確認・編集を行います\" />\n </div>\n <div className=\"d-flex flex-row justify-content-start my-4\">\n {facility?.name}\n </div>\n <form onSubmit={handleSubmit(save)}>\n <RecruitmentForm\n facilityId={facilityId}\n recruitment={recruitment}\n pdfs={pdfs}\n isShowAttachment={showAttachment}\n hasRecruitmentPdf={hasRecruitmentPdf}\n openRecruitmentPdf={openRecruitmentPdf}\n pdfDisabled={pdfDisabled}\n watch={watch}\n setValue={setValue}\n disabled={disabledEdit}\n formDisabled={formDisabled}\n errors={errors}\n isOldFormat={isOldFormat}\n register={register}\n control={control}\n addPdfFiles={addPdfFiles}\n addRecruitmentPdf={addRecruitmentPdf}\n deletePdfFile={deletePdfFile}\n />\n </form>\n </div>\n );\n};\n\nexport default Create;\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'SCHOOL_MANAGEMENT_FACILITY_RECRUITMENT_CREATE_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst ADD_FILES = `${P}ADD_FILES`;\n\nconst initialState = {\n recruitmentId: null,\n pdfs: [],\n isLoading: false,\n uploadedRecruitmentPdf: '',\n uploadedRecruitmentPdfUrl: '',\n isPdfUpload: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case ADD_FILES: {\n return { ...state, pdfs: [...state.pdfs, { ...payload }] };\n }\n default:\n return state;\n }\n};\n\nexport const useCreate = (facilityId) => {\n const [\n {\n recruitmentId,\n data,\n pdfs,\n isLoading,\n uploadedRecruitmentPdf,\n uploadedRecruitmentPdfUrl,\n isPdfUpload,\n },\n dispatch,\n ] = useReducer(reducer, initialState);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n setValue,\n } = useForm({\n mode: 'all',\n defaultValues: {\n facility_ids: [facilityId],\n required_document_option: [],\n document_submission_option: [],\n },\n });\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (data) => dispatch({ type: CHANGE_STATE, payload: { data } }),\n [],\n );\n\n const changeState = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n const pdfFileInfos = pdfs.map((pdf) => ({\n id: pdf.id,\n name: pdf.name,\n file_path: pdf.filePath,\n created_at: pdf.created_at,\n updated_at: pdf.updated_at,\n }));\n if (recruitmentId) {\n await HttpRequest.put(\n `/api/my_school/recruitments/${recruitmentId}`,\n {\n ...data,\n file_path: uploadedRecruitmentPdf,\n facility_attachments: pdfFileInfos,\n required_document_option:\n data.required_document_option?.join(','),\n document_submission_option:\n data.document_submission_option?.join(','),\n is_pdf_upload: isPdfUpload,\n },\n );\n } else {\n await HttpRequest.post('/api/my_school/recruitments', {\n ...data,\n file_path: uploadedRecruitmentPdf,\n facility_attachments: pdfFileInfos,\n required_document_option: data.required_document_option?.join(','),\n document_submission_option:\n data.document_submission_option?.join(','),\n is_pdf_upload: isPdfUpload,\n });\n }\n location.href = `/my_school/facilities/${facilityId}`;\n } finally {\n unmask();\n }\n },\n [\n facilityId,\n recruitmentId,\n pdfs,\n mask,\n unmask,\n uploadedRecruitmentPdf,\n isPdfUpload,\n ],\n );\n\n const addPdfFiles = useCallback(\n async ({ file, name, uploadDate, created_at, updated_at }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitment_attached_files');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n dispatch({\n type: ADD_FILES,\n payload: {\n name,\n uploadDate,\n filePath: file_path,\n signedUrl: signed_url,\n created_at,\n updated_at,\n },\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const addRecruitmentPdf = useCallback(\n async ({ file, name, uploadDate }) => {\n mask();\n try {\n changeState({\n pdfUploadErrorMessage: '',\n });\n const formData = new FormData();\n formData.append('name', name);\n formData.append('prefix', 'recruitments');\n formData.append('file', file);\n const {\n data: { file_path, signed_url },\n } = await HttpRequest.post('/api/file_uploads', formData, {\n headers: {\n 'content-type': 'multipart/form-data',\n },\n });\n changeState({\n uploadedRecruitmentPdf: file_path,\n uploadedRecruitmentPdfUrl: signed_url,\n isPdfUpload: true,\n });\n } catch (e) {\n changeState({\n pdfUploadErrorMessage: 'アップロードできませんでした',\n });\n throw e;\n } finally {\n unmask();\n }\n },\n [dispatch],\n );\n\n const deletePdfFile = useCallback(\n async ({ id, filePath }) => {\n try {\n mask();\n const targetPdf = pdfs.find((v) => v.filePath === filePath);\n if (id) {\n // 登録済みのファイルを削除\n await HttpRequest.delete(\n `/api/my_school/facility_attachments/${id}?file_path=${filePath}`,\n );\n }\n toast.success(`「${targetPdf.name}」を削除しました`);\n changeState({\n pdfs: pdfs.filter((pdf) => pdf.filePath !== filePath),\n });\n } catch (e) {\n toast.error('削除できませんでした');\n } finally {\n unmask();\n }\n },\n [dispatch, pdfs],\n );\n\n return {\n // store\n data,\n pdfs,\n isLoading,\n uploadedRecruitmentPdf,\n uploadedRecruitmentPdfUrl,\n errors,\n // actions\n mask,\n unmask,\n initialize,\n save,\n changeState,\n addPdfFiles,\n addRecruitmentPdf,\n deletePdfFile,\n register,\n handleSubmit,\n watch,\n control,\n setValue,\n };\n};\n","import React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useSchoolFacilityListModule } from '../../../modules/School/Facility/listModule';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Title from '../../../components/School/Title';\nimport InlineSearch from '../../../components/Search/InlineSearch';\nimport Paper from '../../../components/Paper/Paper';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport FacilitySearchModal from '../../../components/Modal/FacilitySearchModal';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport { basicPaginate, paramsToObject } from '../../../../utils/common';\nimport HttpRequest from '../../../../utils/HttpRequest';\nimport FacilityList from '../../../components/School/FacilityList';\nimport { schoolMenuTitle } from '../../../../utils/constant';\n\nconst SearchableList = (props) => {\n const {\n facilities: defaultFacilities,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n sortHeaders = [],\n } = props;\n\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '施設情報',\n },\n ];\n\n const {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n isOpenSearchModal,\n currentPage,\n totalPages,\n // actions\n initialize,\n updateFilter,\n addTargetId,\n addAllTargets,\n removeTargetId,\n removeAllTargets,\n downloadFacilities,\n forwardToApplyForm,\n openSearchModal,\n closeSearchModal,\n } = useSchoolFacilityListModule();\n\n const modalUsed = Object.entries(filter)\n .filter((keys) => keys[0] !== 'page' && keys[1] !== 'name')\n .map((keys) => keys[1])\n .some((key) => !!key);\n\n const [cities, setCities] = useState([]);\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n data: defaultFacilities,\n currentPage: defaultCurrentPage,\n totalPages: defaultTotalPages,\n filter: {\n page: defaultCurrentPage,\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : null,\n city_code: r.city_code ? r.city_code : null,\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n eventSubmitted: r.eventSubmitted === 'true',\n hasComment: r.hasComment === 'true',\n ho: r.ho ? r.ho === 'true' : true,\n yo: r.yo ? r.yo === 'true' : true,\n ko: r.ko ? r.ko === 'true' : true,\n ko_ho: r.ko_ho ? r.ko_ho === 'true' : true,\n ko_yo: r.ko_yo ? r.ko_yo === 'true' : true,\n ko_yoho: r.ko_yoho ? r.ko_yoho === 'true' : true,\n ko_sairyo: r.ko_sairyo ? r.ko_sairyo === 'true' : true,\n shokibo: r.shokibo ? r.shokibo === 'true' : true,\n shokibo_a: r.shokibo_a ? r.shokibo_a === 'true' : true,\n shokibo_b: r.shokibo_b ? r.shokibo_b === 'true' : true,\n shokibo_c: r.shokibo_c ? r.shokibo_c === 'true' : true,\n jigyosho: r.jigyosho ? r.jigyosho === 'true' : true,\n jigyosho_a: r.jigyosho_a ? r.jigyosho_a === 'true' : true,\n jigyosho_b: r.jigyosho_b ? r.jigyosho_b === 'true' : true,\n jigyosho_20over: r.jigyosho_20over\n ? r.jigyosho_20over === 'true'\n : true,\n kigyo_ho: r.kigyo_ho ? r.kigyo_ho === 'true' : true,\n other_type: r.other_type ? r.other_type === 'true' : true,\n jidokan: r.jidokan ? r.jidokan === 'true' : true,\n after_school_club: r.after_school_club\n ? r.after_school_club === 'true'\n : true,\n after_school_day_service: r.after_school_day_service\n ? r.after_school_day_service === 'true'\n : true,\n infant_home: r.infant_home ? r.infant_home === 'true' : true,\n child_home: r.child_home ? r.child_home === 'true' : true,\n shogai_child_facility_welfare_type: r.shogai_child_facility_welfare_type\n ? r.shogai_child_facility_welfare_type === 'true'\n : true,\n shogai_child_facility_medical_type: r.shogai_child_facility_medical_type\n ? r.shogai_child_facility_medical_type === 'true'\n : true,\n child_facility_welfare_type: r.child_facility_welfare_type\n ? r.child_facility_welfare_type === 'true'\n : true,\n child_facility_medical_type: r.child_facility_medical_type\n ? r.child_facility_medical_type === 'true'\n : true,\n child_psychotherapeutic_facility: r.child_psychotherapeutic_facility\n ? r.child_psychotherapeutic_facility === 'true'\n : true,\n child_independence_facility: r.child_independence_facility\n ? r.child_independence_facility === 'true'\n : true,\n child_family_support_facility: r.child_family_support_facility\n ? r.child_family_support_facility === 'true'\n : true,\n midwifery_facility: r.midwifery_facility\n ? r.midwifery_facility === 'true'\n : true,\n disability_support_facility: r.disability_support_facility\n ? r.disability_support_facility === 'true'\n : true,\n employment_support_facility: r.employment_support_facility\n ? r.employment_support_facility === 'true'\n : true,\n not_en: r.not_en ? r.not_en === 'true' : true,\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code);\n }\n }, []);\n\n const fetchCities = async (pref_code) => {\n return await HttpRequest.get(\n `/api/search/cities?prefecture=${pref_code}`,\n ).then(({ data }) => {\n setCities(data.cities);\n });\n };\n\n useEffect(() => {\n if (filter?.pref_code) {\n return fetchCities(filter?.pref_code);\n }\n }, [filter?.pref_code]);\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n const headerRenderer = () => {\n return (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title title=\"施設一覧\" />\n </div>\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"施設情報DL\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-download\" />}\n onClick={() => {\n if (targetIds?.length > 0) {\n return downloadFacilities();\n }\n }}\n disabled={!!!targetIds.length}\n />\n <GreenButton\n width={130}\n height={44}\n label=\"新規登録申請\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-building\" />}\n onClick={() => forwardToApplyForm()}\n disabled\n />\n </div>\n </div>\n );\n };\n const paperProps = {\n headerRenderer,\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"施設情報\" subTitle=\"施設情報の一覧確認を行います\" />\n <div className=\"d-flex flex-row mt-4\">\n <InlineSearch\n style={{ maxWidth: '400px' }}\n label=\"検索\"\n value={filter.name}\n placeHolder=\"施設名を入力してください\"\n onChange={({ target: { value } }) =>\n updateFilter({ ...filter, name: value })\n }\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n paginate(1);\n }\n }}\n onClick={() => paginate(1)}\n />\n <div className=\"ms-3\">\n {modalUsed ? (\n <GreenButton\n width={130}\n height={38}\n label=\"絞り込み項目有\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => openSearchModal()}\n />\n ) : (\n <GrayButton\n width={130}\n height={38}\n label=\"項目で絞り込む\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => openSearchModal()}\n />\n )}\n </div>\n </div>\n </div>\n\n <Paper {...paperProps} className=\"mb-5\">\n <FacilityList\n data={data}\n targetIds={targetIds}\n removeTargetId={removeTargetId}\n addTargetId={addTargetId}\n removeAllTargets={removeAllTargets}\n addAllTargets={addAllTargets}\n onClick={(id) =>\n (location.href = `/my_school/facilities/${id}?from=`)\n }\n nameRenderer={(facility) => {\n return (\n <>\n <a\n href={`/my_school/facilities/${facility.id}`}\n target=\"_blank\">\n {facility.name}\n </a>\n </>\n );\n }}\n sortHeaders={sortHeaders}\n onSort={(key, nextOrder) => {\n let f = {};\n if (nextOrder === null) {\n f = {\n ...filter,\n sortHeaders: JSON.stringify(\n sortHeaders.filter((h) => h.key !== key),\n ),\n };\n } else {\n f = {\n ...filter,\n sortHeaders: JSON.stringify([\n ...sortHeaders.filter((h) => h.key !== key),\n { key, order: nextOrder },\n ]),\n };\n }\n return basicPaginate(1, f, '#facility-list');\n }}\n />\n <div className=\"d-flex w-100 justify-content-center mb-5\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) =>\n basicPaginate(page, {\n ...filter,\n sortHeaders: JSON.stringify(sortHeaders),\n })\n }\n />\n </div>\n </Paper>\n <FacilitySearchModal\n isShow={isOpenSearchModal}\n onOk={(value) => {\n updateFilter({ ...filter, ...value });\n paginate(1);\n }}\n onClose={() => closeSearchModal()}\n filter={filter}\n changeFilter={updateFilter}\n defaultCities={cities}\n />\n </div>\n );\n};\n\nSearchableList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n};\nexport default SearchableList;\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\nimport SchoolBreadcrumbs from '../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Title from '../../components/School/Title';\nimport Paper from '../../components/Paper/Paper';\nimport TableBody from '../../components/Table/TableBody';\nimport Table from '../../components/Table/Table';\nimport TableRow from '../../components/Table/TableRow';\nimport BodyCell from '../../components/Table/BodyCell';\nimport { useSchoolFormModule } from '../../modules/School/formModule';\nimport GreenButton from '../../components/Buttons/GreenButton';\nimport { schoolMenuTitle } from '../../../utils/constant';\nimport { urlReg } from '../../../utils/common';\n\nconst Form = ({ school: defaultSchool, schoolTypes }) => {\n const {\n // store\n isLoading,\n errors,\n // actions\n register,\n handleSubmit,\n watch,\n initializeSchool,\n save,\n setError,\n } = useSchoolFormModule();\n\n useEffect(() => {\n initializeSchool(defaultSchool, schoolTypes);\n }, []);\n\n const BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '学校情報',\n },\n ];\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"学校情報\"\n subTitle=\"貴校の登録情報の確認、更新を行います(記載内容はENMAP利用施設に開示されます)\"\n />\n <form onSubmit={handleSubmit(save)} method=\"POST\">\n <Paper>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table>\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 法人名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('corporate_name', {\n required: '法人名は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger d-flex mt-2\">\n {errors?.corporate_name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 学校名 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('name', {\n required: '学校名は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger d-flex mt-2\">\n {errors?.name?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 学校種別 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"form-check-inline d-flex flex-row\">\n <div className=\"me-2\">\n <input\n {...register('school_type', {\n validate: {\n atLeastOneRequired: (value) =>\n value.length >= 1 ||\n '1つ以上選択してください',\n },\n })}\n type=\"checkbox\"\n className=\"form-check-input\"\n value=\"university\"\n id=\"university\"\n />\n <label\n htmlFor=\"university\"\n className=\"form-check-label ps-1\">\n 大学\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('school_type', {\n validate: {\n atLeastOneRequired: (value) =>\n value.length >= 1 ||\n '1つ以上選択してください',\n },\n })}\n type=\"checkbox\"\n className=\"form-check-input\"\n value=\"junior_college\"\n id=\"junior_college\"\n />\n <label\n htmlFor=\"junior_college\"\n className=\"form-check-label ps-1\">\n 短期大学\n </label>\n </div>\n <div className=\"me-2\">\n <input\n {...register('school_type', {\n validate: {\n atLeastOneRequired: (value) =>\n value.length >= 1 ||\n '1つ以上選択してください',\n },\n })}\n type=\"checkbox\"\n className=\"form-check-input\"\n value=\"vocational_school\"\n id=\"vocational_school\"\n />\n <label\n htmlFor=\"vocational_school\"\n className=\"form-check-label ps-1\">\n 専門学校\n </label>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.school_type?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 利用学部/学科 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('registered_faculty', {\n required: '利用学部/学科は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger d-flex mt-2\">\n {errors?.registered_faculty?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 利用学科入学定員数{' '}\n <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <div className=\"d-flex flex-row align-items-center\">\n <input\n {...register('registered_student_number', {\n required: '利用学科入学定員数は必須です',\n min: {\n value: 0,\n message: '0以上の数字を入力してください',\n },\n })}\n type=\"number\"\n className=\"form-control\"\n style={{ maxWidth: '80px' }}\n min={0}\n />\n <span className=\"ms-2\">名</span>\n </div>\n <span className=\"text-danger d-flex mt-2\">\n {errors?.registered_student_number?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 郵便番号 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('postal_code', {\n required: '郵便番号は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger d-flex mt-2\">\n {errors?.postal_code?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 住所 <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('address', {\n required: '住所は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger d-flex mt-2\">\n {errors?.address?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n TEL <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('tel', {\n required: '電話番号は必須です',\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger d-flex mt-2\">\n {errors?.tel?.message}\n </span>\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n HP <span className=\"text-danger\">*必須</span>\n </BodyCell>\n <BodyCell\n className=\"w-100\"\n style={{ background: '#F0F0F0' }}>\n <input\n {...register('homepage_url', {\n required: 'HPは必須です',\n validate: (input) => !input || urlReg.test(input),\n })}\n type=\"text\"\n className=\"form-control\"\n />\n <span className=\"text-danger d-flex mt-2\">\n {errors?.homepage_url?.type === 'validate' &&\n 'HPの形式が正しくありません'}\n {errors?.homepage_url?.message}\n </span>\n </BodyCell>\n </TableRow>\n </TableBody>\n </Table>\n </div>\n </Paper>\n <div className=\"d-flex justify-content-center my-3\">\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </form>\n </div>\n </div>\n );\n};\n\nForm.propTypes = {\n school: PropTypes.object,\n postPath: PropTypes.string,\n};\n\nexport default Form;\n","import React from 'react';\nimport SchoolBreadcrumbs from '../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport PropTypes from 'prop-types';\nimport { schoolMenuTitle } from '../../../utils/constant';\nimport { HomeLeftPane } from '../../components/School/LeftPane';\nimport RightPane from '../../components/School/RightPane';\n\nconst BREADCRUMBS = [\n {\n text: schoolMenuTitle.text,\n },\n];\n\nconst Home = (props) => {\n const { recruitmentsMadeYesterday, studentReportsMadeYesterday } = props;\n\n return (\n <div className=\"container\">\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"text-secondary bg-white p-3 mb-4\">\n <div className=\"fw-bolder\" style={{ fontSize: '14px' }}>\n <お知らせ>\n </div>\n <div className=\"ms-2\" style={{ fontSize: '12px' }}>\n <div className=\"d-flex flex-row\">\n <div className=\"col-3\">前日の求人情報登録施設数</div>\n <div className=\"col-9\">:{recruitmentsMadeYesterday} 件</div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-3\">前日の学生報告件数</div>\n <div className=\"col-9\">:{studentReportsMadeYesterday} 件</div>\n </div>\n </div>\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div className=\"col-12 col-lg-7\">\n <HomeLeftPane />\n </div>\n <div className=\"col-12 col-lg-5\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\nHome.propTypes = {\n recruitmentsMadeYesterday: PropTypes.number,\n studentReportsMadeYesterday: PropTypes.number,\n};\n\nexport default Home;\n","import React from 'react';\nimport { useInitialPasswordChange } from './hooks/useInitialPasswordChange';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\n\nconst InitialPasswordChange = () => {\n const {\n // store\n isLoading,\n error,\n formError,\n // actions\n register,\n handleSubmit,\n onSubmit,\n watch,\n } = useInitialPasswordChange();\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"w-100 d-flex justify-content-center flex-column align-items-center mt-5\">\n <div style={{ marginTop: '70px' }}>パスワードを変更してください</div>\n <div className=\"py-5 px-3\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '300px' }}>\n <label htmlFor=\"password\">新しいパスワード</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password', {\n required: '新しいパスワードは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"password\"\n disabled={isLoading}\n id=\"password\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password?.message}\n </span>\n </div>\n <div className=\"form-group mt-3 w-100\">\n <div className=\"d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '300px' }}>\n <label htmlFor=\"password_confirm\">確認用パスワード</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password_confirm', {\n required: '確認用パスワードは必須です',\n validate: (input) => input === watch('password'),\n })}\n type=\"password\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n disabled={isLoading}\n id=\"password_confirm\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password_confirm?.type === 'validate' &&\n '確認用パスワードが一致しません'}\n {formError?.password_confirm?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <button\n style={{ borderRadius: '1rem', width: '300px' }}\n className=\"btn btn-primary\"\n disabled={isLoading}>\n パスワードを変更する\n </button>\n </div>\n </div>\n </div>\n </form>\n </>\n );\n};\n\nexport default InitialPasswordChange;\n","import React from 'react';\nimport FacilityBreadcrumbs from '../../../components/Breadcrumbs/FacilityBreadcrumbs';\nimport RightPane from '../../../components/School/RightPane';\nimport { InquiryLeftPane } from '../../../components/School/LeftPane';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { useCreate } from './hooks/useCreate';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport { SCHOOL_INQUIRY_CATEGORY } from '../../../../utils/constant';\n\nconst breadcrumbs = [\n {\n text: 'ENMAPお問合せフォーム',\n },\n];\n\nconst Create = ({ userName, email }) => {\n const { isLoading, register, save, errors, handleSubmit, watch } =\n useCreate();\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <form onSubmit={handleSubmit(save)}>\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <FacilityBreadcrumbs items={breadcrumbs} />\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div className=\"col-12 col-lg-8\">\n <InquiryLeftPane>\n <div className=\"d-flex flex-column w-100\">\n <div className=\"d-flex flex-row align-items-center mt-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <input\n value={email}\n type=\"email\"\n className=\"form-control\"\n placeholder=\"メールアドレス\"\n disabled\n style={{ maxWidth: '300px' }}\n />\n </div>\n <div className=\"d-flex flex-row align-items-center mt-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <input\n value={userName}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"お名前\"\n disabled\n style={{ maxWidth: '300px' }}\n />\n </div>\n <span className=\"text-danger ms-4\">\n {errors?.name?.message}\n </span>\n <div className=\"d-flex flex-row align-items-center mt-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <select\n {...register('category', {\n required: '質問内容を選択してください',\n })}\n className=\"form-select\"\n style={{ maxWidth: '300px' }}>\n <option disabled selected value=\"\">\n ▼質問内容を選択してください\n </option>\n {Object.keys(SCHOOL_INQUIRY_CATEGORY).map((key) => (\n <option value={key}>\n {SCHOOL_INQUIRY_CATEGORY[key]}\n </option>\n ))}\n </select>\n </div>\n <span className=\"text-danger ms-4\">\n {errors?.category?.message}\n </span>\n <div className=\"d-flex flex-row align-items-center mt-2 mb-2\">\n <span className=\"pe-2\" style={{ color: '#EE2B42' }}>\n ※\n </span>\n <textarea\n {...register('content', {\n required: '詳細を記入してください',\n })}\n className=\"form-control\"\n placeholder=\"ご質問の詳細をご記入ください\"\n rows=\"5\"\n />\n </div>\n <span className=\"text-danger ms-4\">\n {errors?.content?.message}\n </span>\n <div className=\"d-flex flex-md-row flex-column align-items-center mt-2 justify-content-center w-100\">\n <div className=\"mx-md-1 my-1 my-md-0\">\n <GreenButton\n width={147}\n height={51}\n label=\"送信する\"\n textFontSize={16}\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n </div>\n <div className=\"mx-md-1 my-1 my-md-0\">\n <GrayButton\n width={147}\n height={51}\n label=\"TOPへ戻る\"\n textFontSize={16}\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_corporate/home';\n }}\n labelClassName=\"d-flex justify-content-center w-100\"\n />\n </div>\n </div>\n </div>\n </InquiryLeftPane>\n </div>\n <div className=\"col-12 col-lg-4\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </form>\n </div>\n );\n};\n\nexport default Create;\n","import React from 'react';\nimport RightPane from '../../../components/MyCorporate/RightPane';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\n\nconst BREADCRUMBS = [\n {\n text: 'ENMAPお問合せフォーム',\n },\n];\n\nconst Success = () => {\n return (\n <div className=\"container\">\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div\n className=\"col-12 col-lg-7\"\n style={{ height: '400px', background: 'white' }}>\n <div className=\"d-flex flex-column justify-content-center align-items-center h-100\">\n <div className=\"text-decoration-underline\">\n お問合せを受付ました。\n </div>\n <div className=\"py-3\">\n サポート係より登録されたメールアドレス宛に回答いたします。\n </div>\n <div className=\"mb-5\">\n お問合せが大変多くなっておりますので、今しばらくお待ちください。\n </div>\n <div className=\"pt-5\">\n <GrayButton\n width={147}\n height={51}\n label=\"TOPへ戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = '/my_school/home';\n }}\n />\n </div>\n </div>\n </div>\n <div className=\"col-12 col-lg-5\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default Success;\n","import { useForm } from 'react-hook-form';\nimport { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'INQUIRY_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state, { type, payload }) => {\n switch (type) {\n case INITIALIZE:\n return { ...state };\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useCreate = () => {\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n name: '',\n category: '',\n content: '',\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await HttpRequest.post('/api/my_school/inquiries', data);\n location.href = '/my_school/inquiry/success';\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n isLoading,\n register,\n errors,\n handleSubmit,\n watch,\n save,\n };\n};\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useLoginModule } from '../../modules/School/loginModule';\nimport Button from '../../components/Buttons/Button';\nimport { schoolColor } from '../../../utils/constant';\nimport { signOut } from '../../../api/common';\n\nconst Login = () => {\n const {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n formError,\n // actions\n checkAuth,\n register,\n handleSubmit,\n onSubmit,\n } = useLoginModule();\n\n useEffect(() => {\n checkAuth();\n }, []);\n\n const handleLogout = async () => {\n await signOut();\n location.href = '/my_school/login';\n };\n\n return (\n <>\n {isLoading ? (\n <div className=\"d-flex vw-100 vh-100 justify-content-center align-items-center\">\n <div\n className=\"spinner-border\"\n role=\"status\"\n style={{ width: '3rem', height: '3rem' }}>\n <span className=\"visually-hidden\">Loading...</span>\n </div>\n </div>\n ) : (\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"w-100 d-flex justify-content-center flex-column align-items-center mt-5\">\n {loggedInWithDifferentTypeAccount && (\n <div className=\"alert alert-danger\" role=\"alert\">\n 養成校管理者以外のアカウントでログイン中です。\n <br />\n <a\n className=\"text-primary\"\n style={{ cursor: 'pointer' }}\n onClick={() => handleLogout()}>\n こちら\n </a>\n からログアウト後、再度ログインをお願いします。\n </div>\n )}\n <div className=\"w-100 d-flex\" style={{ maxWidth: '540px' }}>\n <div className=\"d-flex justify-content-start\">\n <h6 className=\"d-flex\">ENMAP(学校管理画面)</h6>\n </div>\n </div>\n <div\n className=\"w-100 d-flex justify-content-start bg-white\"\n style={{\n maxWidth: '540px',\n borderRadius: '1rem',\n border: `solid 2px ${schoolColor.main}`,\n }}>\n <div className=\"w-100\">\n <div\n className=\"w-100 d-flex justify-content-start mt-3\"\n style={{ borderBottom: '2px solid #cccccc' }}>\n <div\n className=\"d-flex flex-row fw-bold\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex ms-3 me-4\">LOGIN</div>\n <div className=\"d-flex\">\n ログインID・パスワードを入力し、ログインボタンを押して下さい\n </div>\n </div>\n </div>\n <div className=\"p-5\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-row\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">ログインID:</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'ログインIDは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"メールアドレス\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n <div className=\"form-group mt-3 w-100\">\n <div className=\"d-flex flex-row\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">パスワード:</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password', {\n required: 'パスワードは必須です',\n })}\n type=\"password\"\n className=\"form-control\"\n placeholder=\"パスワード\"\n disabled={isLoading}\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <Button\n variant=\"school_primary\"\n width={200}\n height={44}\n textFontSize={16}\n label=\"ログイン\"\n onClick={() => onSubmit()}\n disabled={isLoading || loggedInWithDifferentTypeAccount}\n />\n </div>\n <div className=\"mt-4 d-flex justify-content-center\">\n <a href=\"/my_school/password_reset\" className=\"text-black\">\n パスワードをリセットする\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </form>\n )}\n </>\n );\n};\n\nLogin.propTypes = {\n loginApiPath: PropTypes.string,\n schoolHomePath: PropTypes.string,\n};\n\nexport default Login;\n","import React from 'react';\nimport { ManualLeftPane } from '../../../components/School/LeftPane';\nimport RightPane from '../../../components/School/RightPane';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\n\nconst breadcrumbs = [\n {\n text: 'ENMAP操作マニュアル',\n },\n];\nconst List = (props) => {\n return (\n <div className=\"container\">\n <div className=\"d-flex flex-column align-items-center\">\n <div className=\"col-12\">\n <div className=\"py-2\">\n <SchoolBreadcrumbs items={breadcrumbs} fontSize=\"14px\" />\n </div>\n <div className=\"d-flex flex-column flex-lg-row\">\n <div className=\"col-12 col-lg-8\">\n <ManualLeftPane\n {...props}\n onClick={(id) => {\n window.open(\n `/my_school/manuals/${id}`,\n '_blank',\n 'nofollow noopener noreferrer',\n );\n }}\n />\n </div>\n <div className=\"col-12 col-lg-4\">\n <RightPane />\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default List;\n","import React from 'react';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\nimport { usePasswordReset } from './hooks/usePasswordReset';\n\nconst PasswordReset = () => {\n const {\n // store\n isLoading,\n error,\n formError,\n // actions\n register,\n handleSubmit,\n onSubmit,\n } = usePasswordReset();\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"w-100 d-flex justify-content-center flex-column align-items-center mt-5\">\n <div className=\"w-100 d-flex\" style={{ maxWidth: '540px' }}>\n <div className=\"d-flex justify-content-start\">\n <h6 className=\"d-flex\">ENMAP(学校管理画面)</h6>\n </div>\n </div>\n <div\n className=\"w-100 d-flex justify-content-start bg-white border border-2 border-primary\"\n style={{ maxWidth: '540px', borderRadius: '1rem' }}>\n <div className=\"w-100\">\n <div\n className=\"w-100 d-flex justify-content-start mt-3\"\n style={{ borderBottom: '2px solid #cccccc' }}>\n <div\n className=\"d-flex flex-row fw-bold\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex ms-3 me-4\">LOGIN</div>\n <div className=\"d-flex\">\n ログインID・パスワードを入力し、ログインボタンを押して下さい\n </div>\n </div>\n </div>\n <div className=\"p-5\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-row\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">ログインID:</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'ログインIDは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"メールアドレス\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <button\n style={{ borderRadius: '1rem', width: '280px' }}\n className=\"btn btn-primary\"\n disabled={isLoading}>\n パスワードをリセットする\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </form>\n </>\n );\n};\n\nexport default PasswordReset;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { OverlayTrigger, Tooltip } from 'react-bootstrap';\nimport PropTypes from 'prop-types';\nimport Pagination from '../../../components/Paginations/BasicPagination';\nimport Table from '../../../components/Table/Table';\nimport TableHead from '../../../components/Table/TableHead';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport TableBody from '../../../components/Table/TableBody';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport Paper from '../../../components/Paper/Paper';\nimport Title from '../../../components/School/Title';\nimport { basicPaginate, paramsToObject } from '../../../../utils/common';\nimport TableRow from '../../../components/Table/TableRow';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport { useList } from './hooks/useList';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport InlineSearch from '../../../components/Search/InlineSearch';\nimport MySchoolRecruitmentSearchModal from '../../../components/Modal/MySchoolRecruitmentSearchModal';\nimport BlackButton from '../../../components/Buttons/BlackButton';\nimport SchoolEndRecruitmentConfirmModal from '../../../components/Modal/SchoolEndRecruitmentConfirmModal';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { schoolMenuTitle } from '../../../../utils/constant';\n\nconst BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '求人情報',\n },\n];\n\nconst List = ({ recruitments, currentPage, totalPages }) => {\n const {\n filter,\n isLoading,\n targets,\n initialize,\n updateFilter,\n addTarget,\n removeTarget,\n onEndRecruitment,\n } = useList();\n const [isOpenSearchModal, setIsOpenSearchModal] = useState(false);\n const [isOpenEndRecruitmentModal, setIsOpenEndRecruitmentModal] =\n useState(false);\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n filter: {\n page: currentPage,\n corporateName: r.corporateName ?? '',\n created_at_from: r.created_at_from ?? '',\n created_at_to: r.created_at_to ?? '',\n updated_at_from: r.updated_at_from ?? '',\n updated_at_to: r.updated_at_to ?? '',\n show_data: r.show_data === 'true',\n show_pdf: r.show_pdf === 'true',\n },\n });\n }, []);\n\n const modalUsed = Object.entries(filter)\n .filter(([key, _]) => !['page', 'corporateName'].includes(key))\n .map(([k, v]) => v)\n .some((v) => !!v);\n\n const paginate = (page) => {\n let created_at_from = '';\n let created_at_to = '';\n\n let updated_at_from = '';\n let updated_at_to = '';\n if (filter.created_at_from) {\n let v = filter.created_at_from;\n created_at_from = `${v.getFullYear()}/${v.getMonth() + 1}/${v.getDate()}`;\n }\n if (filter.created_at_to) {\n let v = filter.created_at_to;\n created_at_to = `${v.getFullYear()}/${v.getMonth() + 1}/${v.getDate()}`;\n }\n if (filter.updated_at_from) {\n let v = filter.updated_at_from;\n updated_at_from = `${v.getFullYear()}/${v.getMonth() + 1}/${v.getDate()}`;\n }\n if (filter.updated_at_to) {\n let v = filter.updated_at_to;\n updated_at_to = `${v.getFullYear()}/${v.getMonth() + 1}/${v.getDate()}`;\n }\n basicPaginate(page, {\n ...filter,\n created_at_from,\n created_at_to,\n updated_at_from,\n updated_at_to,\n });\n };\n\n const canEndRecruitment = useCallback(() => {\n return targets.every((_) => _.register_type === '紙媒体登録');\n }, [targets]);\n\n const handleCheck = useCallback(\n (data) => {\n if (targets.find((_) => _.id === data.id)) {\n removeTarget(data);\n } else {\n addTarget(data);\n }\n },\n [targets, removeTarget, addTarget],\n );\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title title=\"求人情報\" subTitle=\"求人情報の一覧確認を行います\" />\n <div className=\"d-flex flex-row mt-4\">\n <InlineSearch\n style={{ maxWidth: '400px' }}\n label=\"検索\"\n value={filter.corporateName}\n placeHolder=\"法人名を入力してください\"\n onChange={({ target: { value } }) =>\n updateFilter({ ...filter, corporateName: value })\n }\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n return paginate(1);\n }\n }}\n onClick={() => paginate(1)}\n />\n <div className=\"ms-3\">\n {modalUsed ? (\n <GreenButton\n width={130}\n height={38}\n label=\"絞り込み項目有\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => setIsOpenSearchModal(true)}\n />\n ) : (\n <GrayButton\n width={130}\n height={38}\n label=\"項目で絞り込む\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={10}\n iconFontSize={20}\n onClick={() => setIsOpenSearchModal(true)}\n />\n )}\n </div>\n </div>\n </div>\n <Paper\n className=\"mb-5\"\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-end w-100 pe-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"求人情報DL\"\n textFontSize={10}\n iconFontSize={20}\n leftIcon={<i className=\"bi bi-download\" />}\n onClick={(e) => {\n e.preventDefault();\n let created_at_from = '';\n let created_at_to = '';\n\n let updated_at_from = '';\n let updated_at_to = '';\n if (filter.created_at_from) {\n let v = filter.created_at_from;\n created_at_from = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n if (filter.created_at_to) {\n let v = filter.created_at_to;\n created_at_to = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n if (filter.updated_at_from) {\n let v = filter.updated_at_from;\n updated_at_from = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n if (filter.updated_at_to) {\n let v = filter.updated_at_to;\n updated_at_to = `${v.getFullYear()}/${\n v.getMonth() + 1\n }/${v.getDate()}`;\n }\n const f = {\n ...filter,\n created_at_from,\n created_at_to,\n updated_at_from,\n updated_at_to,\n };\n const prms = Object.keys(f)\n .filter((key) => key !== 'page' && f[key] !== null)\n .map((key) => ({\n [key]: f[key],\n }));\n const p = new URLSearchParams(\n Object.assign({}, ...prms),\n ).toString();\n window.open(\n `/my_school/recruitments/csv_exports/new.csv?${p}`,\n '_blank',\n );\n }}\n />\n {canEndRecruitment() ? (\n <BlackButton\n disabled={targets.length === 0}\n width={130}\n height={44}\n label=\"求人募集終了\"\n labelClassName=\"w-100\"\n textFontSize={10}\n onClick={() => setIsOpenEndRecruitmentModal(true)}\n />\n ) : (\n <OverlayTrigger\n overlay={\n <Tooltip id=\"tooltip-disabled\">\n データ配信の求人情報が選択されているため、終了できません。\n </Tooltip>\n }>\n <span className=\"d-flex\">\n <BlackButton\n disabled\n width={130}\n height={44}\n label=\"求人募集終了\"\n labelClassName=\"w-100\"\n textFontSize={10}\n onClick={(e) => {\n e.preventDefault();\n }}\n />\n </span>\n </OverlayTrigger>\n )}\n </div>\n </div>\n )}>\n <div className=\"d-flex w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell width={40} />\n <HeadCell label=\"詳細リンク\" width={100} />\n <HeadCell label=\"法人種\" width={100} />\n <HeadCell label=\"法人名\" />\n <HeadCell label=\"郵便番号\" width={100} />\n <HeadCell label=\"所在地\" />\n <HeadCell label=\"求人施設数\" width={100} />\n <HeadCell label=\"登録種別\" width={100} />\n <HeadCell label=\"募集終了\" width={80} />\n <HeadCell label=\"登録日\" />\n <HeadCell label=\"更新日\" />\n </TableHead>\n <TableBody>\n {recruitments.map((recruitment) => (\n <TableRow key={recruitment.id} id={`rec-${recruitment.id}`}>\n <BodyCell\n className=\"text-center p-0 m-0\"\n onClick={() => {\n handleCheck(recruitment);\n }}>\n <input\n className=\"form-check-input rounded-1\"\n type=\"checkbox\"\n onClick={() => {\n handleCheck(recruitment);\n }}\n checked={targets.find((_) => _.id === recruitment.id)}\n />\n </BodyCell>\n <BodyCell className=\"text-center\">\n <a\n href=\"#\"\n className=\"text-decoration-none\"\n onClick={() => {\n if (recruitment.register_type === '紙媒体登録') {\n // 別タブでPDFのURLを開く\n window.open(\n `/my_school/recruitments/${recruitment.id}/pdf`,\n '_blank',\n );\n } else {\n // 別タブで求人情報詳細ページを開く\n window.open(\n `/my_school/recruitments/${recruitment.id}`,\n '_blank',\n );\n }\n }}>\n 求人情報詳細\n </a>\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.corporate.type}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.corporate.name}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.corporate.postal_code}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.corporate.address}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.facility_count}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.register_type}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.end_recruitment_at ? '◯' : ''}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.created_at_short}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {recruitment.updated_at_short}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n <div className=\"d-flex w-100 justify-content-center mt-3 mb-2\">\n <Pagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => {\n paginate(page);\n }}\n />\n </div>\n </Paper>\n <MySchoolRecruitmentSearchModal\n isShow={isOpenSearchModal}\n onOk={(value) => {\n updateFilter({ ...filter, ...value });\n return basicPaginate(1, { ...filter, ...value });\n }}\n onClose={() => setIsOpenSearchModal(false)}\n filter={filter}\n changeFilter={updateFilter}\n />\n <SchoolEndRecruitmentConfirmModal\n isShow={isOpenEndRecruitmentModal}\n onOk={() => onEndRecruitment(targets)}\n onCancel={() => setIsOpenEndRecruitmentModal(false)}\n />\n </div>\n );\n};\n\nList.propTypes = {\n recruitments: [],\n currentPage: 1,\n totalPages: 1,\n deletePath: PropTypes.string,\n};\nexport default List;\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'SCHOOL_MANAGE_RECRUITMENT_LIST_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst ADD_TARGET = `${P}ADD_TARGET`;\nconst REMOVE_TARGET = `${P}REMOVE_TARGET`;\n\nconst initialState = {\n isLoading: false,\n filter: {\n corporateName: '',\n },\n targets: [],\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case ADD_TARGET: {\n const newTargets = state.targets.filter(\n (target) => target.id !== payload.id,\n );\n return { ...state, targets: [...newTargets, payload] };\n }\n case REMOVE_TARGET: {\n const newTargets = state.targets.filter(\n (target) => target.id !== payload.id,\n );\n return { ...state, targets: newTargets };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useList = () => {\n const [{ filter, isLoading, targets }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const updateFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [],\n );\n\n const addTarget = useCallback(\n (payload) => dispatch({ type: ADD_TARGET, payload }),\n [],\n );\n\n const removeTarget = useCallback(\n (payload) => dispatch({ type: REMOVE_TARGET, payload }),\n [],\n );\n\n const onEndRecruitment = useCallback(\n async (data) => {\n const ids = data.map((target) => target.id);\n mask();\n try {\n await HttpRequest.patch(\n '/api/my_school/recruitments/end_recruitments',\n {\n ids,\n },\n );\n location.href = location.href;\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n filter,\n targets,\n // actions\n initialize,\n updateFilter,\n addTarget,\n removeTarget,\n onEndRecruitment,\n };\n};\n","import React, { useEffect, useState } from 'react';\nimport dayjs from 'dayjs';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport {\n basicPaginate,\n getAvailableGraduationYears,\n paramsToObject,\n} from '../../../../utils/common';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport MySchoolConfirmModal from '../../../components/Modal/MySchoolConfirmModal';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport HeadCell from '../../../components/Table/HeadCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableHead from '../../../components/Table/TableHead';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/School/Title';\nimport StudentCreationTypeSelectModal from './components/StudentCreationTypeSelectModal';\nimport { useSchoolStudentListModule } from '../../../modules/School/Student/listModule';\nimport { schoolMenuTitle } from '../../../../utils/constant';\nimport Button from '../../../components/Buttons/Button';\n\ndayjs.locale('ja');\n\nconst BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '学生情報',\n },\n];\n\nconst SearchableList = (props) => {\n const { students: defaultStudents } = props;\n\n const {\n // store\n filter,\n targetIds,\n isLoading,\n data,\n errorMessage,\n csvContentErrors,\n // actions\n initialize,\n updateFilter,\n addTargetId,\n removeTargetId,\n addAllTargets,\n removeAllTargets,\n downloadStudents,\n sendEmail,\n downloadReportCsv,\n multipleDelete,\n } = useSchoolStudentListModule();\n\n const [\n isOpenStudentCreationTypeSelectModal,\n setIsOpenStudentCreationTypeSelectModal,\n ] = useState(false);\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n data: defaultStudents,\n filter: {\n numberOrName: r.numberOrName ?? '',\n expectedGraduationYear: r.expectedGraduationYear ?? '',\n careerSelect: r.careerSelect ?? '',\n decisionSelect: r.decisionSelect ?? '',\n reportSelect: r.reportSelect ?? '',\n },\n });\n }, []);\n\n const availableGraduationYears = getAvailableGraduationYears(4, 5);\n\n const [isOpenDeleteModal, setIsOpenDeleteModal] = useState(false);\n const [isOpenSendEmailModal, setIsOpenSendEmailModal] = useState(false);\n\n const getRegistrationBy = (student) => {\n if (student.registration_by === 'school') {\n return '◯';\n } else if (student.email) {\n return '○';\n }\n };\n\n const selectProps = {\n width: '135px',\n fontSize: '14px',\n height: '38px',\n color: '#7A7979',\n };\n\n return (\n <div className=\"container\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-3\">\n <Title\n title=\"学生情報\"\n subTitle=\"学生情報の一覧確認、学生の新規登録・削除を行います\"\n />\n <div className=\"d-flex flex-row mt-4 justify-content-between\">\n <div className=\"form-outline\">\n <input\n id=\"number-or-name\"\n className=\"form-control\"\n type=\"search\"\n placeholder=\"学生番号か氏名を入力してください\"\n value={filter.numberOrName}\n onChange={({ target: { value } }) => {\n updateFilter({ numberOrName: value });\n }}\n onKeyPress={(e) => {\n if (e.key === 'Enter') {\n return basicPaginate(1, filter);\n }\n }}\n style={{ width: '320px' }}\n />\n </div>\n <Button\n variant=\"gray\"\n width={93}\n height={38}\n onClick={() => basicPaginate(1, filter)}\n label=\"検索\"\n textFontSize={16}\n />\n <div className=\"ms-4\">\n <select\n className=\"form-select\"\n defaultValue={filter.expectedGraduationYear ?? ''}\n style={selectProps}\n onChange={({ target: { value } }) => {\n return basicPaginate(1, {\n ...filter,\n expectedGraduationYear: value,\n });\n }}>\n <option selected value=\"\">\n 卒業予定年度\n </option>\n {availableGraduationYears.map((year) => (\n <option\n value={year}\n key={year}\n selected={filter.expectedGraduationYear === year.toString()}>\n {year}年度\n </option>\n ))}\n </select>\n </div>\n <div className=\"ms-2\">\n <select\n className=\"form-select\"\n defaultValue={filter.emailRegistered ?? ''}\n style={selectProps}\n onChange={({ target: { value } }) => {\n return basicPaginate(1, { ...filter, emailRegistered: value });\n }}>\n <option selected value=\"\">\n アドレス登録\n </option>\n <option value=\"1\" selected={filter.emailRegistered === '1'}>\n 登録済\n </option>\n <option value=\"0\" selected={filter.emailRegistered === '0'}>\n 未登録\n </option>\n </select>\n </div>\n <div className=\"ms-2\">\n <select\n className=\"form-select\"\n defaultValue={filter.careerSelect ?? ''}\n style={selectProps}\n onChange={({ target: { value } }) => {\n return basicPaginate(1, { ...filter, careerSelect: value });\n }}>\n <option selected value=\"\">\n 進路希望\n </option>\n <option value=\"1\" selected={filter.careerSelect === '1'}>\n 提出済\n </option>\n <option value=\"0\" selected={filter.careerSelect === '0'}>\n 未提出\n </option>\n </select>\n </div>\n <div className=\"ms-2\">\n <select\n className=\"form-select\"\n defaultValue={filter.decisionSelect ?? ''}\n style={selectProps}\n onChange={({ target: { value } }) => {\n return basicPaginate(1, { ...filter, decisionSelect: value });\n }}>\n <option selected value=\"\">\n 決定届\n </option>\n <option value=\"1\" selected={filter.decisionSelect === '1'}>\n 提出済\n </option>\n <option value=\"0\" selected={filter.decisionSelect === '0'}>\n 未提出\n </option>\n </select>\n </div>\n <div className=\"ms-2\">\n <select\n className=\"form-select\"\n defaultValue={filter.reportSelect ?? ''}\n style={selectProps}\n onChange={({ target: { value } }) => {\n return basicPaginate(1, { ...filter, reportSelect: value });\n }}>\n <option selected value=\"\">\n 活動報告\n </option>\n <option value=\"1\" selected={filter.reportSelect === '1'}>\n 提出済\n </option>\n <option value=\"0\" selected={filter.reportSelect === '0'}>\n 未提出\n </option>\n </select>\n </div>\n <div className=\"ms-2\">\n <select\n className=\"form-select\"\n defaultValue={filter.facilityTourApplicant ?? ''}\n style={selectProps}\n onChange={({ target: { value } }) => {\n return basicPaginate(1, {\n ...filter,\n facilityTourApplicant: value,\n });\n }}>\n <option selected value=\"\">\n 見学申込\n </option>\n <option value=\"1\" selected={filter.facilityTourApplicant === '1'}>\n 申込済\n </option>\n <option value=\"0\" selected={filter.facilityTourApplicant === '0'}>\n 未申込\n </option>\n </select>\n </div>\n </div>\n </div>\n <div className=\"d-flex justify-content-end w-100 mt-3\">\n <GreenButton\n width={130}\n height={44}\n label=\"学生情報登録\"\n textFontSize={14}\n onClick={() => setIsOpenStudentCreationTypeSelectModal(true)}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n <GreenButton\n disabled={!!!targetIds?.length}\n width={130}\n height={44}\n label=\"登録メール送信\"\n textFontSize={14}\n onClick={() => setIsOpenSendEmailModal(true)}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n <GreenButton\n width={130}\n height={44}\n labelElement={\n <div\n className=\"d-flex flex-column w-100 align-items-center\"\n style={{ fontSize: '14px' }}>\n <div>学生情報</div>\n <div>ダウンロード</div>\n </div>\n }\n onClick={() => downloadStudents()}\n />\n <GreenButton\n width={130}\n height={44}\n labelElement={\n <div\n className=\"d-flex flex-column w-100 align-items-center\"\n style={{ fontSize: '14px' }}>\n <div>学校報告</div>\n <div>ダウンロード</div>\n </div>\n }\n onClick={() => downloadReportCsv()}\n />\n <GrayButton\n disabled={!!!targetIds?.length}\n width={80}\n height={44}\n label=\"削除\"\n textFontSize={14}\n onClick={() => setIsOpenDeleteModal(true)}\n labelClassName=\"d-flex w-100 justify-content-center\"\n className=\"me-0\"\n />\n </div>\n {errorMessage && (\n <div className=\"d-flex my-3\">\n <span className=\"text-danger\">{errorMessage}</span>\n </div>\n )}\n {csvContentErrors.map((msg, i) => (\n <div className=\"d-flex my-2\" key={i}>\n <span className=\"text-danger\">{msg}</span>\n </div>\n ))}\n <Paper\n headerRenderer={() => (\n <div className=\"d-flex flex-row w-100\">\n <div className=\"d-flex justify-content-start w-100\">\n <Title\n titleRenderer={() => (\n <h5\n style={{\n color: '#6f6f6f',\n fontSize: '20px',\n }}\n className={classNames('m-0', 'fw-bolder')}>\n 学生一覧 \n <span className=\"ms-3\" style={{ fontSize: '14px' }}>\n 表示件数({data.length}件)\n </span>\n </h5>\n )}\n />\n </div>\n </div>\n )}>\n <div className=\"d-flex flex-column w-100 px-3 mt-4\">\n <Table className=\"table-striped\">\n <TableHead>\n <HeadCell\n className=\"px-0\"\n width={40}\n onClick={() => {\n targetIds.length > 0 ? removeAllTargets() : addAllTargets();\n }}>\n <input\n className=\"form-check-input rounded-1\"\n type=\"checkbox\"\n onClick={() => {\n targetIds.length > 0 ? removeAllTargets() : addAllTargets();\n }}\n checked={targetIds.length > 0}\n />\n </HeadCell>\n <HeadCell width={100} className=\"text-center\" label=\"学籍番号\" />\n <HeadCell width={150} className=\"text-center\" label=\"氏名\" />\n <HeadCell\n width={120}\n className=\"text-center\"\n label=\"卒業予定年度\"\n />\n <HeadCell width={80} label=\"進路希望\" />\n <HeadCell width={80} label=\"進路決定\" />\n <HeadCell width={80} label=\"活動報告\" />\n <HeadCell width={110} label=\"登録完了メール\" />\n <HeadCell width={110} label=\"パスワード変更\" />\n <HeadCell width={120} label=\"アドレス登録\" />\n <HeadCell width={120} label=\"見学応募\" />\n <HeadCell width={160} label=\"最終アクセス\" />\n </TableHead>\n <TableBody>\n {data.map((student, i) => (\n <TableRow key={student.id}>\n <BodyCell\n className=\"text-center p-0 m-0\"\n onClick={() =>\n targetIds.includes(student.id)\n ? removeTargetId(student.id)\n : addTargetId(student.id)\n }>\n <input\n className=\"form-check-input rounded-1\"\n type=\"checkbox\"\n onClick={() =>\n targetIds.includes(student.id)\n ? removeTargetId(student.id)\n : addTargetId(student.id)\n }\n checked={targetIds.includes(student.id)}\n value={student.id}\n />\n </BodyCell>\n <BodyCell>{student.student_no}</BodyCell>\n <BodyCell>\n <a href={`students/${student.id}/edit`}>\n {`${student.last_name} ${student.first_name}`}\n </a>\n </BodyCell>\n <BodyCell>{student.graduation_year}年度</BodyCell>\n <BodyCell className=\"text-center\">\n {student.has_career_aspirations ? '◯' : '-'}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {student.has_offer_reports ? '◯' : '-'}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {student.activity_report_count}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {student.registration_mail_sent_at ? '◯' : '-'}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {student.initial_password_changed ? '◯' : '-'}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {getRegistrationBy(student)}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {student.facility_tour_applicant_count}\n </BodyCell>\n <BodyCell className=\"text-center\">\n {student?.latest_logged_in_at ?? '-'}\n </BodyCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n </Paper>\n <StudentCreationTypeSelectModal\n isShow={isOpenStudentCreationTypeSelectModal}\n onClose={() => setIsOpenStudentCreationTypeSelectModal(false)}\n />\n <MySchoolConfirmModal\n isShow={isOpenDeleteModal}\n onOk={() => {\n setIsOpenDeleteModal(false);\n return multipleDelete(targetIds);\n }}\n onCancel={() => setIsOpenDeleteModal(false)}\n isDelete\n message=\"本当に削除しますか\"\n />\n <MySchoolConfirmModal\n isShow={isOpenSendEmailModal}\n onOk={() => sendEmail(targetIds)}\n onCancel={() => setIsOpenSendEmailModal(false)}\n message={`${targetIds?.length}名に登録情報メールを送信します。よろしいですか`}\n />\n </div>\n );\n};\n\nSearchableList.propTypes = {\n students: PropTypes.array,\n};\n\nexport default SearchableList;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport {\n careerTypeNum2Str,\n getAvailableGraduationYears,\n lbToBr,\n} from '../../../../utils/common';\nimport {\n LEGAL_PERSON_LABEL_MAP,\n schoolMenuTitle,\n} from '../../../../utils/constant';\nimport SchoolBreadcrumbs from '../../../components/Breadcrumbs/SchoolBreadcrumbs';\nimport GreenButton from '../../../components/Buttons/GreenButton';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport Paper from '../../../components/Paper/Paper';\nimport BodyCell from '../../../components/Table/BodyCell';\nimport Table from '../../../components/Table/Table';\nimport TableBody from '../../../components/Table/TableBody';\nimport TableRow from '../../../components/Table/TableRow';\nimport Title from '../../../components/School/Title';\nimport { useSchoolStudentEditModule } from '../../../modules/School/Student/editModule';\n\nconst BREADCRUMBS = [\n {\n ...schoolMenuTitle,\n },\n {\n text: '学生情報',\n href: '/my_school/students',\n },\n {\n text: '学生情報詳細',\n },\n];\n\nconst Update = (props) => {\n const {\n // store\n student,\n isLoading,\n errors,\n // actions\n changeState,\n save,\n register,\n handleSubmit,\n initializeStudent,\n } = useSchoolStudentEditModule();\n\n const [openReportTargetIds, setOpenReportTargetIds] = useState([]);\n const [\n openFacilityTourApplicantTargetIds,\n setOpenFacilityTourApplicantTargetIds,\n ] = useState([]);\n\n useEffect(() => {\n changeState({\n email: props.email,\n student: { ...props.student },\n id: props.id,\n });\n initializeStudent(props.email, props.student);\n }, []);\n\n const availableGraduationYears = getAvailableGraduationYears(4, 5);\n\n const tableStyle = {\n border: '2px solid #ffffff',\n };\n const [latestOfferReport, setLatestOfferReport] = useState(null);\n\n useEffect(() => {\n if (student?.offer_reports?.length > 0) {\n setLatestOfferReport(student.offer_reports[0]);\n }\n }, [student?.offer_reports]);\n\n return (\n <div className=\"container mb-5 mt-2\">\n <LoadingOverlay loading={isLoading} />\n <div className=\"my-2\">\n <SchoolBreadcrumbs items={BREADCRUMBS} />\n </div>\n <div className=\"d-flex flex-column justify-content-start mt-5\">\n <Title\n title=\"学生情報詳細\"\n subTitle=\"学生情報の確認、登録、編集を行います\"\n />\n </div>\n <Paper>\n <Title title=\"学生情報\" />\n <form\n onSubmit={handleSubmit(save)}\n className=\"p-3 w-100\"\n style={{ fontSize: '12px' }}>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n 学籍番号\n </label>\n <div\n className=\"d-flex w-100 align-items-center\"\n style={{ background: '#F0F0F0', maxHeight: '54px' }}>\n <input\n {...register('student_no', { required: '学籍番号は必須です' })}\n type=\"text\"\n className=\"form-control m-2\"\n style={{ width: '100%', maxWidth: '500px' }}\n />\n <span className=\"text-danger\">{errors?.student_no?.message}</span>\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n 氏名\n </label>\n <div\n className=\"d-flex w-100 align-items-center\"\n style={{ background: '#F0F0F0', maxHeight: '54px' }}>\n <input\n {...register('last_name', { required: '苗字は必須です' })}\n type=\"text\"\n className=\"form-control m-2\"\n style={{ width: '100%', maxWidth: '242px' }}\n placeholder=\"山田\"\n />\n <span className=\"text-danger\">{errors?.last_name?.message}</span>\n <input\n {...register('first_name', { required: '名前は必須です' })}\n type=\"text\"\n className=\"form-control m-2\"\n style={{ width: '100%', maxWidth: '242px' }}\n placeholder=\"太郎\"\n />\n <span className=\"text-danger\">{errors?.first_name?.message}</span>\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n メールアドレス\n </label>\n <div\n className=\"d-flex w-100 align-items-center\"\n style={{ background: '#F0F0F0', maxHeight: '54px' }}>\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n pattern: {\n value: /\\S+@\\S+\\.\\S+/,\n message: 'メールアドレスの形式が正しくありません',\n },\n })}\n type=\"text\"\n className=\"form-control m-2\"\n style={{ width: '100%', maxWidth: '500px' }}\n />\n <span className=\"text-danger\">{errors?.email?.message}</span>\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n 卒業予定年度\n </label>\n <div\n className=\"d-flex w-100 align-items-center\"\n style={{ background: '#F0F0F0', maxHeight: '54px' }}>\n <select\n {...register('graduation_year', {\n required: '卒業予定年度は必須です',\n })}\n defaultValue={\n student?.graduation_year || availableGraduationYears[0]\n }\n className=\"form-select m-2\"\n style={{ width: '100%', maxWidth: '500px' }}>\n {availableGraduationYears.map((year) => (\n <option value={year} key={year}>\n {year}\n </option>\n ))}\n </select>\n <span className=\"text-danger\">\n {errors?.graduation_year?.message}\n </span>\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n 郵便番号\n </label>\n <div\n className=\"d-flex w-100 align-items-center\"\n style={{ background: '#F0F0F0', maxHeight: '54px' }}>\n <input\n {...register('postal_code')}\n type=\"text\"\n className=\"form-control m-2\"\n style={{ width: '100%', maxWidth: '500px' }}\n />\n <span className=\"text-danger\">\n {errors?.postal_code?.message}\n </span>\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n 住所\n </label>\n <div\n className=\"d-flex w-100 align-items-center\"\n style={{ background: '#F0F0F0', maxHeight: '54px' }}>\n <input\n {...register('street_address')}\n type=\"text\"\n className=\"form-control m-2\"\n style={{ width: '100%', maxWidth: '500px' }}\n />\n <span className=\"text-danger\">\n {errors?.street_address?.message}\n </span>\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n TEL\n </label>\n <div\n className=\"d-flex w-100 align-items-center\"\n style={{ background: '#F0F0F0', maxHeight: '54px' }}>\n <input\n {...register('tel')}\n type=\"tel\"\n className=\"form-control m-2\"\n style={{ width: '100%', maxWidth: '500px' }}\n />\n <span className=\"text-danger\">{errors?.tel?.message}</span>\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n 登録情報メール送信\n </label>\n <div\n className=\"d-flex w-100 align-items-center ps-2\"\n style={{\n background: '#F0F0F0',\n maxHeight: '54px',\n height: '54px',\n }}>\n {student.registration_mail_sent_at}\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n パスワード変更\n </label>\n <div\n className=\"d-flex w-100 align-items-center ps-2\"\n style={{\n background: '#F0F0F0',\n maxHeight: '54px',\n height: '54px',\n }}>\n {student.initial_password_changed ? '◯' : '-'}\n </div>\n </div>\n <div className=\"w-100 d-flex g-3 align-items-center mb-1\">\n <label\n className=\"d-flex me-2 ps-2 align-items-center w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n height: '54px',\n }}>\n 最終アクセス\n </label>\n <div\n className=\"d-flex w-100 align-items-center ps-2\"\n style={{\n background: '#F0F0F0',\n maxHeight: '54px',\n height: '54px',\n }}>\n {student.latest_logged_in_at}\n </div>\n </div>\n <div className=\"d-flex justify-content-center mt-3\">\n <GreenButton\n width={100}\n height={44}\n label=\"更新\"\n textFontSize={20}\n labelClassName=\"w-100\"\n />\n </div>\n </form>\n </Paper>\n <Paper>\n <Title title=\"決定(内定)届\" />\n {latestOfferReport && (\n <>\n <Table className=\"mt-2\">\n <TableBody>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 法人名\n </td>\n <td\n className=\"w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.corporate_name}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 法人種別\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {LEGAL_PERSON_LABEL_MAP[latestOfferReport.corporate_type] ??\n latestOfferReport.corporate_type}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 施設名\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.facility_name}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 施設種別\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.facility_type}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 決定した進路\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.career_type_label}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 決定日(内定日)\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.report_date_short}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 雇用形態\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.employee_type}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 雇用形態備考\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.employee_type_remarks}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 提出書類\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.required_document_option_labels}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 提出書類備考\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.required_document_option_remarks}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 求人情報入手先\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.recruitment_info_from_labels}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 応募理由\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.application_reason_labels}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 応募理由備考\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.application_reason_remarks}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 試験日1\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.exam_date_1_label}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 試験種類1\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.exam_type_1_labels}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 試験種類備考1\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.exam_type_1_remarks}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 試験日2\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.exam_date_2_label}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 試験種類2\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.exam_type_2_labels}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 試験種類備考2\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.exam_type_2_remarks}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 面接の質問内容\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.interview_question_labels}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 面接の質問内容備考\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.interview_question_remarks}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 後輩へのアドバイス\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {latestOfferReport.advice_to_juniors}\n </td>\n </tr>\n </TableBody>\n </Table>\n <div className=\"d-flex w-100 justify-content-end\">\n <span style={{ fontSize: '12px' }}>\n 更新日:{student?.offer_report_updated_at}\n </span>\n </div>\n </>\n )}\n </Paper>\n <Paper>\n <Title title=\"進路希望届\" />\n {student?.career_aspiration_updated_at && (\n <div className=\"mt-2\">\n {student?.career_aspirations\n ?.filter((_, i) => i < 2)\n .map((career_aspiration) => (\n <>\n <div\n className=\"d-flex w-100 py-2 ps-2\"\n style={{\n background: '#E1EBF5',\n fontSize: '12px',\n border: '2px solid rgb(255, 255, 255)',\n }}>\n 第{career_aspiration.priority}志望\n </div>\n\n <Table key={career_aspiration.priority} className=\"mb-0\">\n <TableBody>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 希望進路\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {careerTypeNum2Str(career_aspiration.career_type)}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 施設就職備考\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {lbToBr(\n career_aspiration.career_type_facility_remark_text,\n )}\n </td>\n </tr>\n <tr className=\"w-100 d-flex\">\n <td\n className=\"p-2 align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n ...tableStyle,\n }}>\n 施設就職以外備考\n </td>\n <td\n className=\"d-flex w-100 align-middle p-2\"\n style={{\n background: '#F0F0F0',\n ...tableStyle,\n }}>\n {lbToBr(\n career_aspiration.career_type_general_remark_text,\n )}\n </td>\n </tr>\n </TableBody>\n </Table>\n </>\n ))}\n <div className=\"d-flex w-100 justify-content-end\">\n <span style={{ fontSize: '12px' }}>\n 更新日:{student.career_aspiration_updated_at}\n </span>\n </div>\n </div>\n )}\n </Paper>\n <Paper>\n <Title title=\"活動報告\" />\n {student?.activity_reports?.map((activity_report) => (\n <Table key={activity_report.id} className=\"my-0\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 報告日\n </BodyCell>\n <BodyCell\n className=\"w-100 d-flex flex-row align-items-center\"\n style={{ background: '#E1EBF5' }}>\n {openReportTargetIds.includes(activity_report.id) ? (\n <>\n <div style={{ width: '95%' }}>\n {activity_report.updated_at_short}\n </div>\n <button\n className=\"d-flex btn btn-light m-0 px-1 py-0\"\n onClick={() =>\n setOpenReportTargetIds(() =>\n openReportTargetIds.filter(\n (id) => id !== activity_report.id,\n ),\n )\n }>\n <i className=\"bi bi-dash\" />\n </button>\n </>\n ) : (\n <>\n <div style={{ width: '95%' }}>\n {activity_report.updated_at_short}\n </div>\n <button\n className=\"d-flex btn btn-light m-0 px-1 py-0\"\n onClick={() =>\n setOpenReportTargetIds([\n ...openReportTargetIds,\n activity_report.id,\n ])\n }>\n <i className=\"bi bi-plus\" />\n </button>\n </>\n )}\n </BodyCell>\n </TableRow>\n {openReportTargetIds.includes(activity_report.id) && (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 法人名\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {activity_report.corporate_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 法人種別\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {LEGAL_PERSON_LABEL_MAP[activity_report.corporate_type] ??\n activity_report.corporate_type}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 施設名\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {activity_report.facility_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 施設種別\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {activity_report.facility_type}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 報告内容\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {lbToBr(activity_report.report_note)}\n </BodyCell>\n </TableRow>\n </>\n )}\n </TableBody>\n </Table>\n ))}\n </Paper>\n <Paper>\n <Title title=\"見学申込\" />\n {student?.facility_tour_applicants?.map((facility_tour_applicant) => (\n <Table key={facility_tour_applicant.id} className=\"my-0\">\n <TableBody>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"w-100 d-flex align-items-center\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 申込日\n </BodyCell>\n <BodyCell\n className=\"w-100 d-flex flex-row align-items-center\"\n style={{ background: '#E1EBF5' }}>\n {openFacilityTourApplicantTargetIds.includes(\n facility_tour_applicant.id,\n ) ? (\n <>\n <div style={{ width: '95%' }}>\n {facility_tour_applicant.applicant_date}\n </div>\n <button\n className=\"d-flex btn btn-light m-0 px-1 py-0\"\n onClick={() =>\n setOpenFacilityTourApplicantTargetIds(() =>\n openFacilityTourApplicantTargetIds.filter(\n (id) => id !== facility_tour_applicant.id,\n ),\n )\n }>\n <i className=\"bi bi-dash\" />\n </button>\n </>\n ) : (\n <>\n <div style={{ width: '95%' }}>\n {facility_tour_applicant.applicant_date}\n </div>\n <button\n className=\"d-flex btn btn-light m-0 px-1 py-0\"\n onClick={() =>\n setOpenFacilityTourApplicantTargetIds([\n ...openFacilityTourApplicantTargetIds,\n facility_tour_applicant.id,\n ])\n }>\n <i className=\"bi bi-plus\" />\n </button>\n </>\n )}\n </BodyCell>\n </TableRow>\n {openFacilityTourApplicantTargetIds.includes(\n facility_tour_applicant.id,\n ) && (\n <>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 法人名\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {facility_tour_applicant.corporate_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 法人種別\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {facility_tour_applicant.corporate_legal_person}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 施設名\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {facility_tour_applicant.facility_name}\n </BodyCell>\n </TableRow>\n <TableRow className=\"w-100 d-flex\">\n <BodyCell\n className=\"align-middle w-100\"\n style={{\n background: '#E1EBF5',\n maxWidth: '200px',\n }}>\n 施設種別\n </BodyCell>\n <BodyCell\n className=\"d-flex w-100 align-middle\"\n style={{ background: '#F0F0F0' }}>\n {facility_tour_applicant.facility_type}\n </BodyCell>\n </TableRow>\n </>\n )}\n </TableBody>\n </Table>\n ))}\n </Paper>\n </div>\n );\n};\n\nUpdate.propTypes = {\n id: PropTypes.number,\n student: PropTypes.object,\n email: PropTypes.string,\n};\n\nexport default Update;\n","import React, { useEffect, useRef } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\nimport { useSchoolStudentListModule } from '../../../../modules/School/Student/listModule';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\n\nconst StudentCreationBySchoolModal = ({ isShow = false, onClose }) => {\n const {\n isLoading,\n errorMessage,\n csvContentErrors,\n initialize,\n downloadCsv,\n uploadCsv,\n } = useSchoolStudentListModule();\n useEffect(() => {\n initialize({\n errorMessage: '',\n csvContentErrors: [],\n });\n }, [isShow]); // eslint-disable-line react-hooks/exhaustive-deps\n const fileUploadRef = useRef(null);\n\n const handleFileUpload = async (event) => {\n event.preventDefault();\n await uploadCsv(event?.target?.files?.[0]);\n };\n\n return (\n <>\n <Modal\n show={isShow}\n centered\n size=\"lg\"\n contentClassName=\"modal-height500\">\n <Modal.Body>\n <LoadingOverlay loading={isLoading} />\n <div className=\"w-100 d-flex-flex-column\">\n <div\n className=\"d-flex flex-row justify-content-center mb-3\"\n style={{ fontSize: '32px' }}>\n <span className=\"fw-bold\" style={{ fontSize: '32px' }}>\n 学生情報の登録\n </span>\n </div>\n <div className=\"d-flex flex-row justify-content-center mb-3\">\n ⓵アップロード用CSVをダウンロードして学生情報を入力\n <br />\n ⓶作成したファイルをアップロード\n </div>\n <div className=\"me-5 w-100 d-flex justify-content-center\">\n <div\n className=\"d-flex flex-column w-100 align-items-center mb-3 mx-5\"\n style={{\n borderRadius: '1rem',\n border: '4px solid #00B3AA',\n }}>\n <div\n className=\"w-100 d-flex flex-column align-items-center\"\n style={{\n background: '#00B3AA',\n color: 'white',\n borderTopLeftRadius: '.5rem',\n borderTopRightRadius: '.5rem',\n }}>\n <div\n className=\"py-3 w-100 d-flex flex-column align-items-center\"\n style={{ fontSize: '20px' }}>\n <div>学生のメールアドレスを</div>\n <div\n className=\"fw-bold\"\n style={{ fontSize: '32px', textDecoration: 'underline' }}>\n 養成校が登録\n </div>\n </div>\n </div>\n <div\n className=\"d-flex flex-row jutify-content-center w-100\"\n style={{ height: '120px' }}>\n <div className=\"d-flex w-100 justify-content-end me-2\">\n <GrayButton\n width={160}\n height={44}\n labelElement={\n <div\n className=\"d-flex flex-column align-items-center w-100\"\n style={{ fontSize: '14px' }}>\n <div>アップロード用CSV</div>\n <div>ダウンロード</div>\n </div>\n }\n onClick={() => downloadCsv()}\n />\n </div>\n <div className=\"d-flex w-100 ms-2\">\n <input\n ref={fileUploadRef}\n onChange={(event) =>\n handleFileUpload(event).finally(\n () => (event.target.value = null), // エラーが発生しても同じファイルを再アップロードできるように値を空にする\n )\n }\n type=\"file\"\n accept=\"text/csv\"\n style={{ display: 'none' }}\n />\n <GreenButton\n width={160}\n height={44}\n onClick={() => fileUploadRef.current?.click()}\n label=\"アップロード\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={16}\n />\n </div>\n </div>\n </div>\n </div>\n <div className=\"d-flex flex-column justify-content-center align-items-center mt-3\">\n {errorMessage && (\n <div className=\"d-flex mb-1\">\n <span className=\"text-danger\">{errorMessage}</span>\n </div>\n )}\n {csvContentErrors.map((msg, i) => (\n <div className=\"d-flex mb-1\" key={i}>\n <span className=\"text-danger\">{msg}</span>\n </div>\n ))}\n <GrayButton\n onClick={(e) => onClose(e)}\n height={38}\n width={120}\n label=\"閉じる\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n </div>\n </div>\n </Modal.Body>\n </Modal>\n </>\n );\n};\n\nexport default StudentCreationBySchoolModal;\n","import { useSchoolStudentListModule } from '../../../../modules/School/Student/listModule';\nimport React, { useEffect, useRef } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport GreenButton from '../../../../components/Buttons/GreenButton';\n\nconst StudentCreationByStudentModal = ({ isShow = false, onClose }) => {\n const {\n isLoading,\n errorMessage,\n csvContentErrors,\n initialize,\n downloadCsv,\n uploadCsv,\n openStudentRegisterPdf,\n } = useSchoolStudentListModule();\n useEffect(() => {\n initialize({\n errorMessage: '',\n csvContentErrors: [],\n });\n }, [isShow]); // eslint-disable-line react-hooks/exhaustive-deps\n const fileUploadRef = useRef(null);\n\n const handleFileUpload = async (event) => {\n event.preventDefault();\n await uploadCsv(event?.target?.files?.[0], 'student');\n };\n\n return (\n <>\n <Modal\n show={isShow}\n centered\n size=\"lg\"\n contentClassName=\"modal-height500\">\n <Modal.Body>\n <LoadingOverlay loading={isLoading} />\n <div className=\"w-100 d-flex-flex-column\">\n <div className=\"d-flex flex-row justify-content-center mb-3\">\n <span className=\"fw-bold\" style={{ fontSize: '32px' }}>\n 学生情報の登録\n </span>\n </div>\n <div className=\"d-flex flex-row justify-content-center mb-3\">\n ⓵学生登録用ご案内PDFをダウンロード\n <br />\n ⓶アップロード用CSVをダウンロードして学生情報を入力\n <br />\n ⓷作成したファイルをアップロード\n </div>\n <div className=\"me-5 w-100 d-flex justify-content-center\">\n <div\n className=\"d-flex flex-column w-100 align-items-center mb-3 mx-5\"\n style={{\n borderRadius: '1rem',\n border: '4px solid #4474C4',\n }}>\n <div\n className=\"w-100 d-flex flex-column align-items-center\"\n style={{\n background: '#4474C4',\n color: 'white',\n borderTopLeftRadius: '.5rem',\n borderTopRightRadius: '.5rem',\n }}>\n <div\n className=\"py-3 w-100 d-flex flex-column align-items-center\"\n style={{ fontSize: '20px' }}>\n <div>学生のメールアドレスを</div>\n <div\n className=\"fw-bold\"\n style={{ fontSize: '32px', textDecoration: 'underline' }}>\n 学生が登録\n </div>\n </div>\n </div>\n <div\n className=\"d-flex flex-row justify-content-center w-100\"\n style={{ height: '120px' }}>\n <div className=\"d-flex me-2\">\n <GrayButton\n width={160}\n height={44}\n labelElement={\n <div\n className=\"d-flex flex-column align-items-center w-100\"\n style={{ fontSize: '14px' }}>\n <div>アップロード用CSV</div>\n <div>ダウンロード</div>\n </div>\n }\n onClick={() => downloadCsv('student')}\n />\n </div>\n <div className=\"d-flex ms-2\">\n <input\n ref={fileUploadRef}\n onChange={(event) =>\n handleFileUpload(event).finally(\n () => (event.target.value = null), // エラーが発生しても同じファイルを再アップロードできるように値を空にする\n )\n }\n type=\"file\"\n accept=\"text/csv\"\n style={{ display: 'none' }}\n />\n <GreenButton\n width={160}\n height={44}\n onClick={() => fileUploadRef.current?.click()}\n label=\"アップロード\"\n labelClassName=\"d-flex w-100 justify-content-center\"\n textFontSize={16}\n />\n </div>\n </div>\n </div>\n </div>\n <div className=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n {errorMessage && (\n <div className=\"d-flex mb-1\">\n <span className=\"text-danger\">{errorMessage}</span>\n </div>\n )}\n {csvContentErrors.map((msg, i) => (\n <div className=\"d-flex mb-1\" key={i}>\n <span className=\"text-danger\">{msg}</span>\n </div>\n ))}\n <GrayButton\n onClick={(e) => onClose(e)}\n height={38}\n width={120}\n label=\"閉じる\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n </div>\n </div>\n </Modal.Body>\n </Modal>\n </>\n );\n};\n\nexport default StudentCreationByStudentModal;\n","import React, { useState } from 'react';\nimport { Modal } from 'react-bootstrap';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport StudentCreationBySchoolModal from './StudentCreationBySchoolModal';\nimport StudentCreationByStudentModal from './StudentCreationByStudentModal';\n\nconst renderLeftPanel = ({ onClick }) => {\n return (\n <div className=\"d-flex mx-3 fw-bold\">\n <div\n onClick={onClick}\n style={{\n width: '308px',\n height: '308px',\n background: '#00B3AA',\n color: 'white',\n cursor: 'pointer',\n borderRadius: '1rem',\n }}>\n <div\n className=\"d-flex flex-column align-items-center p-3 pt-4\"\n style={{ fontSize: '20px' }}>\n <div>学生のメールアドレスを</div>\n <div\n className=\"fw-bold\"\n style={{ fontSize: '36px', textDecoration: 'underline' }}>\n 養成校が登録\n </div>\n <div className=\"mt-3\" style={{ fontSize: '16px' }}>\n <div><養成校が登録する情報></div>\n <div className=\"ps-3\">\n <div>・学籍番号</div>\n <div>・卒業予定年度</div>\n <div>・氏名</div>\n <div>・メールアドレス</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nconst renderRightPanel = ({ onClick }) => {\n return (\n <div className=\"d-flex mx-3 fw-bold\">\n <div\n onClick={onClick}\n style={{\n width: '308px',\n height: '308px',\n background: '#4474C4',\n color: 'white',\n cursor: 'pointer',\n borderRadius: '1rem',\n }}>\n <div\n className=\"d-flex flex-column align-items-center p-3 pt-4\"\n style={{ fontSize: '20px' }}>\n <div>学生のメールアドレスを</div>\n <div\n className=\"fw-bold\"\n style={{ fontSize: '36px', textDecoration: 'underline' }}>\n 学生が登録\n </div>\n <div className=\"mt-3\" style={{ fontSize: '16px' }}>\n <div><養成校が登録する情報></div>\n <div className=\"ps-3\">\n <div>・学籍番号</div>\n <div>・卒業予定年度</div>\n <div>・氏名</div>\n </div>\n </div>\n <div className=\"mt-2\" style={{ fontSize: '16px' }}>\n <div><学生が登録する情報></div>\n <div className=\"ps-3\">\n <div>・メールアドレス</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nconst StudentCreationTypeSelectModal = ({ isShow = false, onClose }) => {\n const [\n isShowStudentCreationBySchoolModal,\n setIsShowStudentCreationBySchoolModal,\n ] = useState(false);\n const [\n isShowStudentCreationByStudentModal,\n setIsShowStudentCreationByStudentModal,\n ] = useState(false);\n return (\n <>\n <Modal\n show={isShow}\n centered\n size=\"lg\"\n contentClassName=\"modal-height500\">\n <Modal.Body>\n <div className=\"w-100 d-flex-flex-column\">\n <div className=\"d-flex flex-row justify-content-center mb-3\">\n <span className=\"fw-bold\" style={{ fontSize: '32px' }}>\n 学生情報の登録方法\n </span>\n </div>\n <div className=\"d-flex flex-row justify-content-center mb-4\">\n ・学生情報の登録方法を選択してください\n </div>\n <div className=\"d-flex flex-row justify-content-center mb-3\">\n {renderLeftPanel({\n onClick: () => setIsShowStudentCreationBySchoolModal(true),\n })}\n {renderRightPanel({\n onClick: () => setIsShowStudentCreationByStudentModal(true),\n })}\n </div>\n <div className=\"d-flex flex-row justify-content-center\">\n <GrayButton\n onClick={(e) => onClose(e)}\n height={38}\n width={120}\n label=\"閉じる\"\n textFontSize={16}\n labelClassName=\"d-flex w-100 justify-content-center\"\n />\n </div>\n </div>\n </Modal.Body>\n </Modal>\n <StudentCreationBySchoolModal\n isShow={isShowStudentCreationBySchoolModal}\n onClose={() => setIsShowStudentCreationBySchoolModal(false)}\n />\n <StudentCreationByStudentModal\n isShow={isShowStudentCreationByStudentModal}\n onClose={() => setIsShowStudentCreationByStudentModal(false)}\n />\n </>\n );\n};\n\nexport default StudentCreationTypeSelectModal;\n","import HttpRequest from '../../../../utils/HttpRequest';\nimport { useCallback, useReducer } from 'react';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'MY_SCHOOL_INITIAL_PASSWORD_CHANGE_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useInitialPasswordChange = () => {\n const [{ isLoading, error }, dispatch] = useReducer(reducer, initialState);\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n password: '',\n password_confirm: '',\n },\n });\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n /**\n * パスワード更新処理\n * @type {(function(): Promise<void>)|*}\n */\n const onSubmit = useCallback(\n async ({ password, password_confirm }) => {\n mask();\n try {\n await HttpRequest.put('/api/my_school/initial_password_change', {\n password,\n password_confirm,\n });\n location.href = '/my_school/home';\n } catch (e) {\n if (e?.response?.status === 400 && e?.response?.data?.error_message) {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: e?.response?.data?.error_message },\n });\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'エラーが発生しました' },\n });\n }\n console.error(e);\n\n unmask();\n }\n },\n [dispatch],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n control,\n formError: errors,\n // actions\n register,\n handleSubmit,\n watch,\n onSubmit,\n changeState,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport { auth } from '../../../../utils/firebase';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../utils/HttpRequest';\n\nconst P = 'MY_SCHOOL_PASSWORD_RESET_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n email: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const usePasswordReset = () => {\n const [{ isLoading, error, email }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: '',\n },\n });\n\n /**\n * パスワード変更処理\n * @type {(function(): Promise<void>)|*}\n */\n const onSubmit = useCallback(\n async ({ email }) => {\n mask();\n try {\n await auth\n .sendPasswordResetEmail(email, {\n url: `${location.protocol}//${location.host}/my_school/login`,\n })\n .then(() => {\n return HttpRequest.post(\n '/api/my_school/password_reset_success',\n ).finally(() => {\n location.href = `/my_school/login`;\n });\n });\n } catch (e) {\n console.error(e);\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'パスワードリセットに失敗しました' },\n });\n unmask();\n }\n },\n [dispatch],\n );\n\n /**\n * ローディング状態にする\n * @type {function(): void}\n */\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n /**\n * ローディング状態の解除\n * @type {function(): void}\n */\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n return {\n // store\n isLoading,\n error,\n formError: errors,\n email,\n // actions\n register,\n handleSubmit,\n watch,\n onSubmit,\n };\n};\n","import React from 'react';\nimport Content from '../../../components/Content';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../components/Divider/Divider';\nimport { TableLeft, TableRight } from '../../../components/Student/TablePart';\nimport { PageTitle } from '../../../components/Student/PageTitle';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport { lbToBr } from '../../../../utils/common';\n\nconst Detail = ({ applicantHistory, student, corporateName }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '申込履歴',\n href: '/student/applicant_histories',\n },\n {\n text: '申込み履歴詳細',\n },\n ];\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <PageTitle>申込み履歴詳細</PageTitle>\n <Divider hrClassName=\"m-0\" width=\"100%\" />\n </div>\n <section id=\"corporate-section\">\n <div className=\"p-3 pt-0\">\n <div className=\"d-flex\">法人情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">法人名</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {corporateName}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">申込日時</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantHistory.created_at}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <section id=\"user-section\">\n <div className=\"p-3\">\n <div className=\"d-flex\">申込者情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">氏名</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {student.full_name}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">所属</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {student.school_name}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先メール</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {student.email}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先TEL</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantHistory.tel}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">卒業見込年月</TableLeft>\n <TableRight className=\"p-1\" disabled>\n <div className=\"d-flex flex-row align-items-center\">\n {applicantHistory.graduation_year}年\n <div className=\"ps-3\">3月 卒業見込</div>\n </div>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">取得予定資格</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantHistory?.scheduled_acquisition_qualifications?.join(\n '、',\n )}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">メッセージ</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {lbToBr(applicantHistory.message)}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n height={40}\n width={100}\n className=\"mx-0\"\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => (location.href = '/student/applicant_histories')}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Detail;\n","import React from 'react';\nimport Content from '../../../../components/Content';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../../components/Divider/Divider';\nimport {\n TableLeft,\n TableRight,\n} from '../../../../components/Student/TablePart';\nimport { PageTitle } from '../../../../components/Student/PageTitle';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\n\nconst Detail = ({ applicantHistory, event, student, corporate }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '申込履歴',\n href: '/student/applicant_histories',\n },\n {\n text: '申込履歴詳細',\n },\n ];\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <PageTitle>申込履歴詳細</PageTitle>\n <Divider hrClassName=\"m-0\" width=\"100%\" />\n </div>\n <section id=\"user-section\">\n <div className=\"p-3\">\n <div className=\"d-flex\">申込者</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">氏名</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {student.full_name}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">所属</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {student.school_name}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先メール</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {student.email}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先TEL</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantHistory.tel}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">卒業見込年月</TableLeft>\n <TableRight className=\"p-1\" disabled>\n <div className=\"d-flex flex-row align-items-center\">\n {applicantHistory.graduation_year}年\n <div className=\"ps-3\">卒業見込</div>\n </div>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">取得予定資格</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantHistory?.scheduled_acquisition_certificate_names?.join(\n '、',\n )}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡事項等</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantHistory.contact_info}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <section id=\"event-section\">\n <div className=\"p-3\">\n <div className=\"d-flex\">見学会・イベント情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">主催</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {corporate.name}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">タイトル</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {event?.title}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">分類</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {event.event_type_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催日</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {event?.event_date_ja}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催時間</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {event.implementation_time_from} 〜\n {event.implementation_time_to}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {event.event_location}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地住所</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {event.address}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">対象施設種別</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {event.target_facility_type_names.join('・')}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <section id=\"other-section\" className=\"mt-2 mb-3 px-2\">\n <div className=\"d-flex w-100 flex-row\">\n <button\n className=\"d-flex w-100 justify-content-center py-1 bg-white\"\n style={{\n border: '1px solid #FF9999',\n borderRight: 'none',\n color: '#FF9999',\n }}\n onClick={(e) => {\n e.preventDefault();\n window.open(`/student/corporates/${corporate.id}`, '_blank');\n }}>\n 法人情報\n </button>\n <button\n className=\"d-flex w-100 justify-content-center py-1 bg-white\"\n style={{\n border: '1px solid #FF9999',\n color: '#FF9999',\n }}\n onClick={(e) =>\n window.open(\n `/student/events/${event.id}/related_facilities`,\n '_blank',\n )\n }>\n 該当施設一覧\n </button>\n </div>\n </section>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n height={40}\n width={100}\n className=\"mx-0\"\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => (location.href = '/student/applicant_histories')}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Detail;\n","import Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport { PageTitleField } from '../../../../components/Student/PageTitle';\nimport Tabs from '../../../../components/Student/Tabs';\nimport EventResultList from '../../../../components/ResultList/EventResultList';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport React from 'react';\n\nconst List = ({ mode, events, currentPage, totalPages }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '申込履歴',\n },\n ];\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n const tabItems = [\n {\n title: '施設見学',\n active: mode === 'facility',\n onClick: () => {\n location.href = '/student/applicant_histories';\n },\n },\n {\n title: '見学会・イベント',\n active: mode === 'event',\n onClick: () => {\n location.href = '/student/applicant_histories/events';\n },\n },\n ];\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <PageTitleField>\n <div className=\"ps-2 pb-2\">申込履歴</div>\n </PageTitleField>\n <div className=\"mx-4\">\n <Tabs items={tabItems} />\n <EventResultList\n events={events}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n onApplicantHistory={(applicantHistoryId) =>\n (location.href = `/student/applicant_histories/events/${applicantHistoryId}`)\n }\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\nexport default List;\n","import React from 'react';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport { PageTitleField } from '../../../components/Student/PageTitle';\nimport Tabs from '../../../components/Student/Tabs';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport StudentPagination from '../../../components/Paginations/StudentPagination';\nimport { isLocal } from '../../../../utils/common';\n\nconst List = ({ mode, applicantHistories, currentPage, totalPages }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '申込履歴',\n },\n ];\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n const tabItems = [\n {\n title: '施設見学',\n active: mode === 'facility',\n onClick: () => {\n location.href = '/student/applicant_histories';\n },\n },\n ...(isLocal\n ? [\n {\n title: '見学会・イベント',\n active: mode === 'event',\n onClick: () => {\n location.href = '/student/applicant_histories/events';\n },\n },\n ]\n : []),\n ];\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <PageTitleField>\n <div className=\"ps-2 pb-2\">申込履歴</div>\n </PageTitleField>\n <div className=\"mx-4\">\n <Tabs items={tabItems} />\n {applicantHistories.map((applicantHistory) => {\n return (\n <div className=\"border-bottom px-1\">\n <div className=\"d-flex flex-row justify-content-between\">\n <div className=\"d-flex flex-column w-100 justify-content-center pb-2\">\n <div className=\"pt-1\" style={{ fontSize: '14px' }}>\n {applicantHistory.facility.name}\n </div>\n <div className=\"ps-1 pt-1\" style={{ fontSize: '10px' }}>\n 申込日:{applicantHistory.created_at}\n </div>\n <div className=\"d-flex ps-1 pt-1 align-items-center\">\n <div style={{ fontSize: '10px' }}>\n {applicantHistory.facility.address}\n </div>\n </div>\n </div>\n <div className=\"d-flex justify-content-center flex-column align-items-end\">\n <PinkButton\n className=\"mx-0\"\n style={{ borderRadius: '30px' }}\n label=\"申込み履歴\"\n textFontSize={12}\n width={100}\n labelClassName=\"w-100\"\n onClick={() => {\n location.href = `/student/applicant_histories/${applicantHistory.id}`;\n }}\n />\n </div>\n </div>\n </div>\n );\n })}\n <div className=\"d-flex py-5 w-100\">\n <StudentPagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={paginate}\n />\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default List;\n","import Content from '../../../components/Content';\nimport { PageTitleField } from '../../../components/Student/PageTitle';\nimport React from 'react';\nimport Tabs from '../../../components/Student/Tabs';\nimport EventResultList from '../../../components/ResultList/EventResultList';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\n\nconst EventList = ({ events, currentPage, totalPages }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: 'ブックマーク',\n },\n ];\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n const tabItems = [\n {\n title: '施 設',\n active: false,\n onClick: () => (location.href = '/student/bookmarks'),\n },\n {\n title: '見学会・イベント',\n active: true,\n onClick: () => {},\n },\n {\n title: '法 人',\n active: false,\n onClick: () => (location.href = '/student/bookmarks/corps'),\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <PageTitleField>\n <div className=\"ps-2 pb-2\">ブックマーク</div>\n </PageTitleField>\n <div className=\"mx-4\">\n <Tabs items={tabItems} />\n <EventResultList\n events={events}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default EventList;\n","import PropTypes from 'prop-types';\nimport React, { useState } from 'react';\nimport styled from 'styled-components';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Content from '../../../components/Content';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport CorporateEnmapUsingInfoModal from '../../../components/Modal/CorporateEnmapUsingInfoModal';\nimport CorporatePaperInfoModal from '../../../components/Modal/CorporatePaperInfoModal';\nimport FacilityModal from '../../../components/Modal/FacilityModal';\nimport StudentPagination from '../../../components/Paginations/StudentPagination';\nimport { PageTitleField } from '../../../components/Student/PageTitle';\nimport Tabs from '../../../components/Student/Tabs';\n\nconst PublicColorIcon = styled.span`\n color: #5b9bd5;\n font-family: Osaka, MS Pゴシック, ms pgothic, Sans-Serif;\n margin-right: 6px;\n`;\n\nconst PrivateColorIcon = styled.span`\n color: #ffc000;\n font-family: Osaka, MS Pゴシック, ms pgothic, Sans-Serif;\n margin-right: 6px;\n`;\n\nconst HasRecruitmentButton = styled.button`\n font-size: 12px;\n border: 1px solid #ff9999;\n border-radius: 100px;\n color: white;\n background: #ff9999;\n width: 86px;\n height: 24px;\n`;\n\nconst Button = styled.button`\n font-size: 12px;\n border: 1px solid #555252;\n border-radius: 100px;\n width: 86px;\n height: 24px;\n`;\n\nconst FacilityTypeField = styled.span`\n font-size: 10px;\n color: #555252;\n`;\n\nconst NameField = styled.div`\n font-size: 14px;\n color: #555252;\n`;\n\nconst AddressField = styled.div`\n font-size: 10px;\n color: #555252;\n`;\n\nconst List = ({ bookmarks, currentPage, totalPages, mode = 'facility' }) => {\n const [modalFacilityId, setModalFacilityId] = useState(null);\n const [isOpenFacilityModal, setIsOpenFacilityModal] = useState(false);\n const [modalCorporateId, setModalCorporateId] = useState(null);\n const [isOpenCorporatePaperInfoModal, setIsOpenCorporatePaperInfoModal] =\n useState(false);\n const [\n isOpenCorporateEnmapUsingInfoModal,\n setIsOpenCorporateEnmapUsingInfoModal,\n ] = useState(false);\n\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: 'ブックマーク',\n },\n ];\n\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n const openFacilityModal = (facilityId) => {\n if (facilityId) {\n setModalFacilityId(facilityId);\n setIsOpenFacilityModal(true);\n }\n };\n\n const closeModal = () => {\n setIsOpenFacilityModal(false);\n setModalFacilityId(null);\n setIsOpenCorporateEnmapUsingInfoModal(false);\n setIsOpenCorporatePaperInfoModal(false);\n setModalCorporateId(null);\n };\n\n const tabItems = [\n {\n title: '施 設',\n active: mode === 'facility',\n onClick: () => (location.href = '/student/bookmarks'),\n },\n {\n title: '見学会・イベント',\n active: false,\n onClick: () => (location.href = '/student/bookmarks/events'),\n },\n {\n title: '法 人',\n active: mode === 'corp',\n onClick: () => (location.href = '/student/bookmarks/corps'),\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <PageTitleField>\n <div className=\"ps-2 pb-2\">ブックマーク</div>\n </PageTitleField>\n <div className=\"mx-4\">\n <Tabs items={tabItems} />\n {bookmarks?.map((bookmark) => {\n const isFacility = !!bookmark?.facility;\n const isCorporation = !!bookmark?.corporation;\n return (\n <div className=\"border-bottom py-2 px-1\" key={bookmark.id}>\n <div className=\"d-flex flex-row justify-content-between\">\n {/* Left Pane */}\n {isFacility ? (\n <div className=\"d-flex flex-column w-100 justify-content-center\">\n <div className=\"\" style={{ fontSize: '10px' }}>\n {bookmark?.facility?.operator === '公営' ? (\n <PublicColorIcon>●</PublicColorIcon>\n ) : (\n <PrivateColorIcon>●</PrivateColorIcon>\n )}\n <FacilityTypeField>\n {bookmark?.facility?.facility_type}・\n {bookmark?.facility?.operator}\n </FacilityTypeField>\n </div>\n <NameField className=\"pt-1\">\n {bookmark?.facility?.name}\n </NameField>\n <AddressField className=\"ps-1\">\n {bookmark?.facility?.address}\n </AddressField>\n </div>\n ) : isCorporation ? (\n <div className=\"d-flex flex-column w-100 justify-content-center pt-3\">\n <NameField className=\"pt-1\">\n {bookmark?.corporation?.name}\n </NameField>\n <AddressField className=\"ps-1\">\n {bookmark?.corporation?.address}\n </AddressField>\n </div>\n ) : (\n <div className=\"d-flex flex-column w-100 justify-content-center pt-3\">\n <NameField className=\"pt-1\">\n {bookmark?.corporate?.name}\n </NameField>\n <AddressField className=\"ps-1\">\n {bookmark?.corporate?.address}\n </AddressField>\n </div>\n )}\n {/* Right Pane */}\n <div className=\"d-flex justify-content-end flex-column align-items-end\">\n <div className=\"d-flex\">\n {bookmark?.facility?.recruitment_active_date ? (\n <HasRecruitmentButton\n className=\"btn fw-bold d-flex justify-content-center align-items-center\"\n onClick={() => {\n if (bookmark?.facility_id) {\n openFacilityModal(bookmark?.facility_id);\n } else if (bookmark?.corporate_id) {\n window.open(\n `/student/corporates/${bookmark.corporate_id}`,\n '_blank',\n );\n } else if (bookmark?.corporation_id) {\n window.open(\n `/student/corporations/${bookmark.corporation_id}`,\n '_blank',\n );\n }\n }}>\n 詳細を見る\n </HasRecruitmentButton>\n ) : (\n <Button\n className=\"btn fw-bold d-flex justify-content-center align-items-center\"\n onClick={() => {\n if (bookmark?.facility_id) {\n openFacilityModal(bookmark?.facility_id);\n } else if (bookmark?.corporate_id) {\n window.open(\n `/student/corporates/${bookmark.corporate_id}`,\n '_blank',\n );\n } else if (bookmark?.corporation_id) {\n window.open(\n `/student/corporations/${bookmark.corporation_id}`,\n '_blank',\n );\n }\n }}>\n 詳細を見る\n </Button>\n )}\n </div>\n <div className=\"d-flex mt-1\">\n <Button\n className=\"btn d-flex justify-content-center align-items-center\"\n onClick={() =>\n (location.href = `/student/reports/activity_report/new?fid=${\n bookmark?.facility?.id ?? ''\n }&cid=${\n bookmark?.corporate?.id ??\n bookmark?.facility?.corporate_id ??\n ''\n }&c2id=${bookmark?.corporation_id ?? ''}`)\n }>\n 活動報告\n </Button>\n </div>\n <div className=\"d-flex mt-1\">\n <Button\n className=\"btn d-flex justify-content-center align-items-center\"\n onClick={() =>\n (location.href = `/student/reports/offer_report/new?fid=${\n bookmark?.facility?.id ?? ''\n }&cid=${\n bookmark?.corporate?.id ??\n bookmark?.facility?.corporate_id ??\n ''\n }&c2id=${bookmark?.corporation_id ?? ''}`)\n }>\n 進路登録\n </Button>\n </div>\n </div>\n </div>\n </div>\n );\n })}\n </div>\n <CorporatePaperInfoModal\n isShow={isOpenCorporatePaperInfoModal}\n corporateId={modalCorporateId}\n onHide={() => closeModal()}\n defaultBookmarked\n />\n <CorporateEnmapUsingInfoModal\n isShow={isOpenCorporateEnmapUsingInfoModal}\n corporateId={modalCorporateId}\n onHide={() => closeModal()}\n defaultBookmarked\n />\n <FacilityModal\n isShow={isOpenFacilityModal}\n facilityId={modalFacilityId}\n onHide={() => closeModal()}\n />\n <div className=\"d-flex py-5 w-100\">\n <StudentPagination\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginationClick={(page) => paginate(page)}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nList.propTypes = {\n bookmarks: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n};\n\nexport default List;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport styled from 'styled-components';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport Content from '../../../components/Content';\nimport Divider from '../../../components/Divider/Divider';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { useCorporateBookmark } from '../../../modules/components/corporateBookmark';\nimport { hasYouthEmploymentForm } from '../../../../utils/common';\n\nconst CorporateNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\n\nconst TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableRight = styled.td`\n border: 1px solid #555252;\n font-size: 14px;\n`;\n\nconst EnmapColorLabel = styled.div`\n color: #ff9999;\n`;\n\nconst AttachedFileField = styled.div`\n background: #f2f2f2;\n color: #555252;\n`;\n\nconst BookmarkArea = styled.div`\n font-size: 24px;\n`;\n\nconst EnmapUsingDetail = ({\n corporate,\n recruitment,\n isGeneralRecruitment = false,\n recruitment_information_sheet = {},\n defaultBookmarked = false,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人検索',\n },\n {\n text: '法人検索',\n },\n {\n text: '法人検索結果',\n },\n {\n text: '法人情報',\n },\n ];\n\n const {\n // store\n isLocalMask,\n bookmarked,\n attachedFiles,\n // actions\n addBookmark,\n removeBookmark,\n changeState,\n openAttachedFiles,\n } = useCorporateBookmark();\n\n useEffect(() => {\n changeState({ bookmarked: defaultBookmarked });\n }, []);\n\n const [isOpenAttachedFileList, setIsOpenAttachedFileList] = useState(false);\n\n const [openedAttachedFiles, setOpenedAttachedFiles] = useState([]);\n\n const hasRecruitmentInformationSheetForm = Object.keys(\n recruitment_information_sheet ?? {},\n )\n .filter((k) => !['id', 'file_path', 'updated_at'].includes(k))\n .some((k) => !!recruitment_information_sheet[k]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <LoadingOverlay loading={isLocalMask} />\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <BookmarkArea className=\"d-flex w-100 justify-content-end\">\n {bookmarked ? (\n <div\n className=\"d-flex flex-row justify-content-end me-3\"\n style={{ cursor: 'pointer' }}\n onClick={() => removeBookmark(corporate.id)}>\n <div style={{ color: '#FFC000' }}>\n <i className=\"bi bi-star-fill\" />\n </div>\n </div>\n ) : (\n <div\n className=\"d-flex flex-row justify-content-end me-3\"\n style={{ cursor: 'pointer' }}\n onClick={() => addBookmark(corporate.id)}>\n <div style={{ color: '#979797' }}>\n <i className=\"bi bi-star-fill\" />\n </div>\n </div>\n )}\n </BookmarkArea>\n <CorporateNameField className=\"pt-4\">\n {corporate.name}\n </CorporateNameField>\n <Divider className=\"p-0\" width=\"100%\" />\n </div>\n <section className=\"px-2\">\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">法人格</TableLeft>\n <TableRight className=\"p-1\">\n {corporate.legal_person}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">法人名</TableLeft>\n <TableRight className=\"p-1\">{corporate.name}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">担当者</TableLeft>\n <TableRight className=\"p-1\">\n {corporate.person_in_charge}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">担当者部署</TableLeft>\n <TableRight className=\"p-1\">\n {corporate.person_in_charge_department}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">郵便番号</TableLeft>\n <TableRight className=\"p-1\">{corporate.postal_code}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">住所</TableLeft>\n <TableRight className=\"p-1\">{corporate.address}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">電話番号</TableLeft>\n <TableRight className=\"p-1\">\n {corporate.tel && (\n <a href={`tel:${corporate.tel}`}>{corporate.tel}</a>\n )}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">HP</TableLeft>\n <TableRight className=\"p-1\">\n {corporate.site_url && (\n <a\n className=\"d-block\"\n href={corporate.site_url}\n rel=\"nofollow\"\n target=\"_blank\"\n style={{\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n width: '100%',\n maxWidth: '60vw',\n }}>\n {corporate.site_url}\n </a>\n )}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </section>\n <div className=\"d-flex pt-3 w-100 justify-content-center\">\n {isGeneralRecruitment ? (\n <>\n {recruitment?.updated_at_short && (\n <PinkButton\n className=\"mx-0\"\n style={{ borderRadius: '20px', width: '100%' }}\n labelElement={\n <div className=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style={{ fontSize: '14px' }}>\n {recruitment.recruitment_year}年度求人情報\n </div>\n <div style={{ fontSize: '10px' }}>\n (更新日:{recruitment.updated_at_short})\n </div>\n </div>\n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n if (recruitment.last_uploaded_file) {\n window.open(recruitment.last_uploaded_file, '_blank');\n } else {\n location.href = `/student/corporates/${corporate.id}/recruitments/${recruitment.id}`;\n }\n }}\n />\n )}\n </>\n ) : (\n <PinkButton\n style={{ borderRadius: '20px' }}\n width={370}\n height={44}\n label=\"運営施設一覧\"\n textFontSize={20}\n labelClassName=\"w-100 fw-light\"\n onClick={() =>\n (location.href = `/student/corporates/${corporate.id}/facilities`)\n }\n />\n )}\n </div>\n <section className=\"pt-4 pb-3 px-2\">\n {(hasRecruitmentInformationSheetForm ||\n recruitment_information_sheet?.file_path) && (\n <div className=\"d-flex w-100 flex-row\">\n <div\n className=\"d-flex w-50 justify-content-center py-1\"\n style={{\n border: '1px solid #FF9999',\n color: '#FF9999',\n cursor: 'pointer',\n }}\n onClick={() => {\n if (hasYouthEmploymentForm(recruitment_information_sheet)) {\n location.href = `/student/corporates/${corporate.id}/youth_employments`;\n } else if (recruitment_information_sheet?.file_path) {\n window.open(\n recruitment_information_sheet.file_path,\n '_blank',\n );\n } else {\n location.href = `/student/corporates/${corporate.id}/youth_employments`;\n }\n }}>\n 青少年雇用情報\n </div>\n </div>\n )}\n\n {recruitment?.has_attached_file && (\n <EnmapColorLabel\n className=\"d-flex mt-2 ps-2\"\n onClick={() => {\n if (Object.entries(attachedFiles ?? {})?.length > 0) {\n setIsOpenAttachedFileList(!isOpenAttachedFileList);\n } else {\n openAttachedFiles(recruitment.id).then(() =>\n setIsOpenAttachedFileList(!isOpenAttachedFileList),\n );\n }\n }}>\n 添付資料を見る\n <span className=\"ms-1\">\n {isOpenAttachedFileList ? (\n <i className=\"bi bi-dash\" />\n ) : (\n <i className=\"bi bi-plus\" />\n )}\n </span>\n </EnmapColorLabel>\n )}\n {Object.entries(attachedFiles ?? {})?.length > 0 &&\n isOpenAttachedFileList && (\n <div className=\"ps-3\">\n {Object.entries(attachedFiles).map(([key, _]) => (\n <div className=\"d-flex flex-column pt-2\">\n {openedAttachedFiles.includes(key) ? (\n <EnmapColorLabel\n className=\"ms-2 mb-1\"\n onClick={() =>\n setOpenedAttachedFiles(\n openedAttachedFiles.filter((k) => k !== key),\n )\n }>\n {key}\n <span className=\"ms-1\">\n <i className=\"bi bi-dash\" />\n </span>\n </EnmapColorLabel>\n ) : (\n <EnmapColorLabel\n className=\"ps-2\"\n onClick={() =>\n setOpenedAttachedFiles([...openedAttachedFiles, key])\n }>\n {key}\n <span className=\"ms-1\">\n <i className=\"bi bi-plus\" />\n </span>\n </EnmapColorLabel>\n )}\n {openedAttachedFiles.some((i) => i === key) && (\n <div className=\"d-flex px-3 justify-content-start w-100 flex-column\">\n {attachedFiles[key].map((item) => (\n <AttachedFileField className=\"d-flex w-100 p-1 ps-2 mb-1\">\n <a\n style={{\n color: '#555252',\n fontSize: '14px',\n }}\n href={item.filePath}\n target=\"_blank\"\n rel=\"nofollow\">\n {item.fileName}\n </a>\n </AttachedFileField>\n ))}\n </div>\n )}\n </div>\n ))}\n </div>\n )}\n </section>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nEnmapUsingDetail.propTypes = {\n corporate: PropTypes.object,\n isGeneralRecruitment: PropTypes.bool,\n recruitment: PropTypes.object,\n};\n\nexport default EnmapUsingDetail;\n","import React from 'react';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport FacilityRecruitmentResultList from '../../../../components/ResultList/FacilityRecruitmentResultList';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nconst CorporateNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\n\nconst RelatedList = ({\n corporate,\n facilities,\n currentPage,\n totalPages,\n totalCount,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '法人検索',\n },\n {\n text: '法人情報',\n },\n {\n text: '運営施設一覧',\n },\n ];\n\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3\">\n <h6>運営施設一覧</h6>\n <CorporateNameField className=\"pt-4 ps-1\">\n {corporate.name}\n </CorporateNameField>\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nRelatedList.propTypes = {\n corporate: PropTypes.object,\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default RelatedList;\n","import React from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PropTypes from 'prop-types';\nimport Divider from '../../../../components/Divider/Divider';\nimport styled from 'styled-components';\n\nconst CorporateNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\n\nconst LeftColumn = styled.div`\n background: #ffdede;\n font-size: 14px;\n border-right: 1px solid #555252;\n`;\nconst RightTitle = styled.div`\n border-bottom: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n padding-left: 0.2rem;\n`;\nconst RightSecondTitle = styled.div`\n border-top: 1px solid #555252;\n border-bottom: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n padding-left: 0.2rem;\n`;\nconst RightBody = styled.div`\n font-size: 14px;\n`;\n\nconst EnmapUsingDetail = ({ corporate, recruitment_information_sheet }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '法人検索',\n },\n {\n text: '青少年雇用情報',\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <CorporateNameField className=\"pt-4\">\n {corporate.name}\n </CorporateNameField>\n <Divider className=\"p-0\" width=\"100%\" />\n </div>\n <section className=\"px-2\">\n <div\n className=\"d-flex flex-row justify-content-between w-100 pb-1 ps-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\"> 1 募集・採用に関する情報</div>\n <div\n style={{ fontSize: '10px' }}\n className=\"d-flex flex-column flex-sm-row w-100 align-items-end justify-content-end\">\n <div>(集計日:{recruitment_information_sheet?.recorded_at})</div>\n <div>(更新日:{recruitment_information_sheet?.updated_at})</div>\n </div>\n </div>\n <div\n className=\"d-flex flex-column\"\n style={{ border: '1px solid #555252' }}>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ①\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の採用者数\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.recruitment_count_one_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.recruitment_count_two_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.recruitment_count_three_ago ??\n '-'}\n  名\n </RightBody>\n <RightSecondTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の離職者数\n </RightSecondTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.unemployment_count_one_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.unemployment_count_two_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.unemployment_count_three_ago ??\n '-'}\n  名\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ②\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の採用者数(男性)\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_one_ago_male ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_two_ago_male ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_three_ago_male ??\n '-'}\n  名\n </RightBody>\n <RightSecondTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の採用者数(女性)\n </RightSecondTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_one_ago_female ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_two_ago_female ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_three_ago_female ??\n '-'}\n  名\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ③\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">平均継続勤務年数</RightTitle>\n <RightBody className=\"d-flex ps-1\">\n {recruitment_information_sheet?.average_service_years ?? '-'}\n  年\n </RightBody>\n </div>\n </div>\n <div className=\"d-flex w-100 flex-row h-100\">\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ※\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">従業員の平均年齢</RightTitle>\n <RightBody className=\"d-flex ps-1\">\n {recruitment_information_sheet?.average_age ?? '-'} 歳\n </RightBody>\n </div>\n </div>\n </div>\n </section>\n <section className=\"px-2 pt-4\">\n <div\n className=\"d-flex flex-row justify-content-between w-100 pb-1 ps-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\">\n 2 職業能力の開発及び向上に関する取組の実施状況\n </div>\n </div>\n <div\n className=\"d-flex flex-column\"\n style={{ border: '1px solid #555252' }}>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ①\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 研修の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 研修の有無:\n {recruitment_information_sheet?.exist_training ? '有' : '無'}\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.training_note\n ? recruitment_information_sheet?.training_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ②\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 自己啓発支援の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 自己啓発支援の有無:\n {recruitment_information_sheet?.exist_self_development_support\n ? '有'\n : '無'}\n </RightBody>\n\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.self_development_support_note\n ? recruitment_information_sheet?.self_development_support_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ③\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">メンター制度の有無</RightTitle>\n <RightBody className=\"d-flex ps-1\">\n {recruitment_information_sheet?.exist_mentor ? '有' : '無'}\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ④\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n キャリアコンサルティング制度の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n キャリアコンサルティング制度の有無:\n {recruitment_information_sheet?.exist_career_consulting\n ? '有'\n : '無'}\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.career_consulting_note\n ? recruitment_information_sheet?.career_consulting_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n <div className=\"d-flex w-100 flex-row h-100\">\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ⑤\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 社内検定等の制度の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 社内検定等の制度の有無:\n {recruitment_information_sheet?.exist_in_company_testing\n ? '有'\n : '無'}\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.in_company_testing_note\n ? recruitment_information_sheet?.in_company_testing_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n </div>\n </section>\n <section className=\"px-2 pt-4\">\n <div\n className=\"d-flex flex-row justify-content-between w-100 pb-1 ps-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\">\n 3 職場への定着の促進に関する取組の実施状況\n </div>\n </div>\n <div\n className=\"d-flex flex-column\"\n style={{ border: '1px solid #555252' }}>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ①\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 前事業年度の月平均所定外労働時間\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span className=\"px-2\">\n {recruitment_information_sheet?.overtime_work_last_year}\n </span>\n 時間\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ②\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 前事業年度の有給休暇の平均取得日数\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span className=\"px-2\">\n {recruitment_information_sheet?.holiday_usage_last_year}\n </span>\n 日\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ③\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 前事業年度の育児休業取得者数/出産者数\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 女性\n {\n recruitment_information_sheet?.childcare_leave_used_last_year_female\n }\n /\n {\n recruitment_information_sheet?.childcare_leave_target_last_year_female\n }\n 人\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n 男性\n {\n recruitment_information_sheet?.childcare_leave_used_last_year_male\n }\n /\n {\n recruitment_information_sheet?.childcare_leave_target_last_year_male\n }\n 人\n </RightBody>\n </div>\n </div>\n <div className=\"d-flex w-100 flex-row h-100\">\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ④\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 役員及び管理的地位にある者に占める女性の割合\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n <span className=\"d-flex\">役 員:</span>\n <span\n style={{ width: '40px' }}\n className=\"d-flex justify-content-end\">\n {recruitment_information_sheet?.female_ratio_of_boards}%\n </span>\n </RightBody>\n <RightBody className=\"d-flex\">\n <span className=\"d-flex ps-1\">管理職:</span>\n <span\n style={{ width: '40px' }}\n className=\"d-flex justify-content-end\">\n {recruitment_information_sheet?.female_ratio_of_managers}%\n </span>\n </RightBody>\n </div>\n </div>\n </div>\n </section>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nEnmapUsingDetail.propTypes = {\n corporate: PropTypes.object,\n recruitment_information_sheet: PropTypes.object,\n};\n\nexport default EnmapUsingDetail;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport styled from 'styled-components';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport Content from '../../../components/Content';\nimport Divider from '../../../components/Divider/Divider';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { useCorporationBookmark } from '../../../modules/components/corporationBookmark';\n\nconst CorporateNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\n\nconst TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableRight = styled.td`\n border: 1px solid #555252;\n font-size: 14px;\n`;\n\nconst EnmapColorLabel = styled.div`\n color: #ff9999;\n`;\n\nconst AttachedFileField = styled.div`\n background: #f2f2f2;\n color: #555252;\n`;\n\nconst BookmarkArea = styled.div`\n font-size: 24px;\n`;\n\nconst EnmapUsingDetail = ({\n corporation,\n recruitment,\n isGeneralRecruitment = true,\n recruitment_information_sheet = {},\n defaultBookmarked = false,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人検索',\n },\n {\n text: '法人検索',\n },\n {\n text: '法人検索結果',\n },\n {\n text: '法人情報',\n },\n ];\n\n const {\n // store\n isLocalMask,\n bookmarked,\n attachedFiles,\n // actions\n addBookmark,\n removeBookmark,\n changeState,\n openAttachedFiles,\n } = useCorporationBookmark();\n\n useEffect(() => {\n changeState({ bookmarked: defaultBookmarked });\n }, []);\n\n const [isOpenAttachedFileList, setIsOpenAttachedFileList] = useState(false);\n\n const [openedAttachedFiles, setOpenedAttachedFiles] = useState([]);\n\n const hasRecruitmentInformationSheetForm = Object.keys(\n recruitment_information_sheet ?? {},\n )\n .filter((k) => !['id', 'file_path', 'updated_at'].includes(k))\n .some((k) => !!recruitment_information_sheet[k]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <LoadingOverlay loading={isLocalMask} />\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <BookmarkArea className=\"d-flex w-100 justify-content-end\">\n {bookmarked ? (\n <div\n className=\"d-flex flex-row justify-content-end me-3\"\n style={{ cursor: 'pointer' }}\n onClick={() => removeBookmark(corporation.id)}>\n <div style={{ color: '#FFC000' }}>\n <i className=\"bi bi-star-fill\" />\n </div>\n </div>\n ) : (\n <div\n className=\"d-flex flex-row justify-content-end me-3\"\n style={{ cursor: 'pointer' }}\n onClick={() => addBookmark(corporation.id)}>\n <div style={{ color: '#979797' }}>\n <i className=\"bi bi-star-fill\" />\n </div>\n </div>\n )}\n </BookmarkArea>\n <CorporateNameField className=\"pt-4\">\n {corporation.name}\n </CorporateNameField>\n <Divider className=\"p-0\" width=\"100%\" />\n </div>\n <section className=\"px-2\">\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">法人格</TableLeft>\n <TableRight className=\"p-1\">\n {corporation.legal_person}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">法人名</TableLeft>\n <TableRight className=\"p-1\">{corporation.name}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">担当者</TableLeft>\n <TableRight className=\"p-1\">\n {corporation.person_in_charge}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">担当者部署</TableLeft>\n <TableRight className=\"p-1\">\n {corporation.person_in_charge_department}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">郵便番号</TableLeft>\n <TableRight className=\"p-1\">\n {corporation.postal_code}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">住所</TableLeft>\n <TableRight className=\"p-1\">{corporation.address}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">電話番号</TableLeft>\n <TableRight className=\"p-1\">\n {corporation.tel && (\n <a href={`tel:${corporation.tel}`}>{corporation.tel}</a>\n )}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">HP</TableLeft>\n <TableRight className=\"p-1\">\n {corporation.site_url && (\n <a\n className=\"d-block\"\n href={corporation.site_url}\n rel=\"nofollow\"\n target=\"_blank\"\n style={{\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n width: '100%',\n maxWidth: '60vw',\n }}>\n {corporation.site_url}\n </a>\n )}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </section>\n <div className=\"d-flex pt-3 w-100 justify-content-center\">\n {recruitment?.updated_at_short && (\n <PinkButton\n className=\"mx-0\"\n style={{ borderRadius: '20px', width: '100%' }}\n labelElement={\n <div className=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style={{ fontSize: '14px' }}>\n {recruitment.recruitment_year}年度求人情報\n </div>\n <div style={{ fontSize: '10px' }}>\n (更新日:{recruitment.updated_at_short})\n </div>\n </div>\n }\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => {\n if (recruitment.last_uploaded_file) {\n window.open(recruitment.last_uploaded_file, '_blank');\n } else {\n location.href = `/student/corporations/${corporation.id}/recruitments/${recruitment.id}`;\n }\n }}\n />\n )}\n </div>\n <section className=\"pt-4 pb-3 px-2\">\n {(hasRecruitmentInformationSheetForm ||\n recruitment_information_sheet?.file_path) && (\n <div className=\"d-flex w-100 flex-row\">\n <div\n className=\"d-flex w-50 justify-content-center py-1\"\n style={{\n border: '1px solid #FF9999',\n color: '#FF9999',\n cursor: 'pointer',\n }}\n onClick={() => {\n const hasForm = Object.keys(\n recruitment_information_sheet ?? {},\n )\n .filter(\n (k) => !['id', 'file_path', 'updated_at'].includes(k),\n )\n .some((k) => !!recruitment_information_sheet[k]);\n if (hasForm) {\n location.href = `/student/corporations/${corporation.id}/youth_employments`;\n } else if (recruitment_information_sheet?.file_path) {\n window.open(\n recruitment_information_sheet.file_path,\n '_blank',\n );\n } else {\n location.href = `/student/corporations/${corporation.id}/youth_employments`;\n }\n }}>\n 青少年雇用情報\n </div>\n </div>\n )}\n {recruitment?.has_attached_file && (\n <EnmapColorLabel\n className=\"d-flex mt-2 ps-2\"\n onClick={() => {\n if (Object.entries(attachedFiles ?? {})?.length > 0) {\n setIsOpenAttachedFileList(!isOpenAttachedFileList);\n } else {\n openAttachedFiles(recruitment.id).then(() =>\n setIsOpenAttachedFileList(!isOpenAttachedFileList),\n );\n }\n }}>\n 添付資料を見る\n <span className=\"ms-1\">\n {isOpenAttachedFileList ? (\n <i className=\"bi bi-dash\" />\n ) : (\n <i className=\"bi bi-plus\" />\n )}\n </span>\n </EnmapColorLabel>\n )}\n {Object.entries(attachedFiles ?? {})?.length > 0 &&\n isOpenAttachedFileList && (\n <div className=\"ps-3\">\n {Object.entries(attachedFiles).map(([key, _]) => (\n <div className=\"d-flex flex-column pt-2\">\n {openedAttachedFiles.includes(key) ? (\n <EnmapColorLabel\n className=\"ms-2 mb-1\"\n onClick={() =>\n setOpenedAttachedFiles(\n openedAttachedFiles.filter((k) => k !== key),\n )\n }>\n {key}\n <span className=\"ms-1\">\n <i className=\"bi bi-dash\" />\n </span>\n </EnmapColorLabel>\n ) : (\n <EnmapColorLabel\n className=\"ps-2\"\n onClick={() =>\n setOpenedAttachedFiles([...openedAttachedFiles, key])\n }>\n {key}\n <span className=\"ms-1\">\n <i className=\"bi bi-plus\" />\n </span>\n </EnmapColorLabel>\n )}\n {openedAttachedFiles.some((i) => i === key) && (\n <div className=\"d-flex px-3 justify-content-start w-100 flex-column\">\n {attachedFiles[key].map((item) => (\n <AttachedFileField className=\"d-flex w-100 p-1 ps-2 mb-1\">\n <a\n style={{\n color: '#555252',\n fontSize: '14px',\n }}\n href={item.filePath}\n target=\"_blank\"\n rel=\"nofollow\">\n {item.fileName}\n </a>\n </AttachedFileField>\n ))}\n </div>\n )}\n </div>\n ))}\n </div>\n )}\n </section>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nEnmapUsingDetail.propTypes = {\n corporation: PropTypes.object,\n isGeneralRecruitment: PropTypes.bool,\n recruitment: PropTypes.object,\n};\n\nexport default EnmapUsingDetail;\n","import React from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PropTypes from 'prop-types';\nimport Divider from '../../../../components/Divider/Divider';\nimport styled from 'styled-components';\n\nconst CorporateNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\n\nconst LeftColumn = styled.div`\n background: #ffdede;\n font-size: 14px;\n border-right: 1px solid #555252;\n`;\nconst RightTitle = styled.div`\n border-bottom: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n padding-left: 0.2rem;\n`;\nconst RightSecondTitle = styled.div`\n border-top: 1px solid #555252;\n border-bottom: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n padding-left: 0.2rem;\n`;\nconst RightBody = styled.div`\n font-size: 14px;\n`;\n\nconst EnmapUsingDetail = ({ corporation, recruitment_information_sheet }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '法人検索',\n },\n {\n text: '青少年雇用情報',\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <CorporateNameField className=\"pt-4\">\n {corporation.name}\n </CorporateNameField>\n <Divider className=\"p-0\" width=\"100%\" />\n </div>\n <section className=\"px-2\">\n <div\n className=\"d-flex flex-row justify-content-between w-100 pb-1 ps-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\"> 1 募集・採用に関する情報</div>\n <div\n style={{ fontSize: '10px' }}\n className=\"d-flex flex-column flex-sm-row w-100 align-items-end justify-content-end\">\n <div>(集計日:{recruitment_information_sheet?.recorded_at})</div>\n <div>(更新日:{recruitment_information_sheet?.updated_at})</div>\n </div>\n </div>\n <div\n className=\"d-flex flex-column\"\n style={{ border: '1px solid #555252' }}>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ①\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の採用者数\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.recruitment_count_one_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.recruitment_count_two_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.recruitment_count_three_ago ??\n '-'}\n  名\n </RightBody>\n <RightSecondTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の離職者数\n </RightSecondTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.unemployment_count_one_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.unemployment_count_two_ago ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.unemployment_count_three_ago ??\n '-'}\n  名\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ②\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の採用者数(男性)\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_one_ago_male ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_two_ago_male ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_three_ago_male ??\n '-'}\n  名\n </RightBody>\n <RightSecondTitle className=\"d-flex\">\n 直近3事業年度の新卒者等の採用者数(女性)\n </RightSecondTitle>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 前年度:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_one_ago_female ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 2年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_two_ago_female ??\n '-'}\n  名\n </RightBody>\n <RightBody className=\"d-flex\">\n <span\n style={{ width: '72px' }}\n className=\"d-flex justify-content-end\">\n 3年度前:\n </span>\n {recruitment_information_sheet?.classified_recruitment_count_three_ago_female ??\n '-'}\n  名\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ③\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">平均継続勤務年数</RightTitle>\n <RightBody className=\"d-flex ps-1\">\n {recruitment_information_sheet?.average_service_years ?? '-'}\n  年\n </RightBody>\n </div>\n </div>\n <div className=\"d-flex w-100 flex-row h-100\">\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ※\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">従業員の平均年齢</RightTitle>\n <RightBody className=\"d-flex ps-1\">\n {recruitment_information_sheet?.average_age ?? '-'} 歳\n </RightBody>\n </div>\n </div>\n </div>\n </section>\n <section className=\"px-2 pt-4\">\n <div\n className=\"d-flex flex-row justify-content-between w-100 pb-1 ps-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\">\n 2 職業能力の開発及び向上に関する取組の実施状況\n </div>\n </div>\n <div\n className=\"d-flex flex-column\"\n style={{ border: '1px solid #555252' }}>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ①\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 研修の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 研修の有無:\n {recruitment_information_sheet?.exist_training ? '有' : '無'}\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.training_note\n ? recruitment_information_sheet?.training_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ②\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 自己啓発支援の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 自己啓発支援の有無:\n {recruitment_information_sheet?.exist_self_development_support\n ? '有'\n : '無'}\n </RightBody>\n\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.self_development_support_note\n ? recruitment_information_sheet?.self_development_support_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ③\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">メンター制度の有無</RightTitle>\n <RightBody className=\"d-flex ps-1\">\n {recruitment_information_sheet?.exist_mentor ? '有' : '無'}\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ④\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n キャリアコンサルティング制度の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n キャリアコンサルティング制度の有無:\n {recruitment_information_sheet?.exist_career_consulting\n ? '有'\n : '無'}\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.career_consulting_note\n ? recruitment_information_sheet?.career_consulting_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n <div className=\"d-flex w-100 flex-row h-100\">\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ⑤\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 社内検定等の制度の有無及びその内容\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 社内検定等の制度の有無:\n {recruitment_information_sheet?.exist_in_company_testing\n ? '有'\n : '無'}\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n <div style={{ whiteSpace: 'pre-wrap' }}>\n {`内容:${\n recruitment_information_sheet?.in_company_testing_note\n ? recruitment_information_sheet?.in_company_testing_note\n : ''\n }`}\n </div>\n </RightBody>\n </div>\n </div>\n </div>\n </section>\n <section className=\"px-2 pt-4\">\n <div\n className=\"d-flex flex-row justify-content-between w-100 pb-1 ps-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\">\n 3 職場への定着の促進に関する取組の実施状況\n </div>\n </div>\n <div\n className=\"d-flex flex-column\"\n style={{ border: '1px solid #555252' }}>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ①\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 前事業年度の月平均所定外労働時間\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span className=\"px-2\">\n {recruitment_information_sheet?.overtime_work_last_year}\n </span>\n 時間\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ②\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 前事業年度の有給休暇の平均取得日数\n </RightTitle>\n <RightBody className=\"d-flex\">\n <span className=\"px-2\">\n {recruitment_information_sheet?.holiday_usage_last_year}\n </span>\n 日\n </RightBody>\n </div>\n </div>\n <div\n className=\"d-flex w-100 flex-row h-100\"\n style={{ borderBottom: '1px solid #555252' }}>\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ③\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 前事業年度の育児休業取得者数/出産者数\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n 女性\n {\n recruitment_information_sheet?.childcare_leave_used_last_year_female\n }\n /\n {\n recruitment_information_sheet?.childcare_leave_target_last_year_female\n }\n 人\n </RightBody>\n <RightBody className=\"d-flex ps-1\">\n 男性\n {\n recruitment_information_sheet?.childcare_leave_used_last_year_male\n }\n /\n {\n recruitment_information_sheet?.childcare_leave_target_last_year_male\n }\n 人\n </RightBody>\n </div>\n </div>\n <div className=\"d-flex w-100 flex-row h-100\">\n <LeftColumn className=\"d-flex justify-content-start align-items-center px-1\">\n ④\n </LeftColumn>\n <div className=\"d-flex flex-column w-100\">\n <RightTitle className=\"d-flex\">\n 役員及び管理的地位にある者に占める女性の割合\n </RightTitle>\n <RightBody className=\"d-flex ps-1\">\n <span className=\"d-flex\">役 員:</span>\n <span\n style={{ width: '40px' }}\n className=\"d-flex justify-content-end\">\n {recruitment_information_sheet?.female_ratio_of_boards}%\n </span>\n </RightBody>\n <RightBody className=\"d-flex\">\n <span className=\"d-flex ps-1\">管理職:</span>\n <span\n style={{ width: '40px' }}\n className=\"d-flex justify-content-end\">\n {recruitment_information_sheet?.female_ratio_of_managers}%\n </span>\n </RightBody>\n </div>\n </div>\n </div>\n </section>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nEnmapUsingDetail.propTypes = {\n corporation: PropTypes.object,\n recruitment_information_sheet: PropTypes.object,\n};\n\nexport default EnmapUsingDetail;\n","import React, { useEffect } from 'react';\nimport Content from '../../../components/Content';\nimport { TableLeft, TableRight } from '../../../components/Student/TablePart';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../components/Divider/Divider';\nimport { useApplicant } from './hooks/useApplicant';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport PropTypes from 'prop-types';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport {\n emailReg,\n getAvailableGraduationYears,\n getCurrentSchoolYear,\n phoneReg,\n} from '../../../../utils/common';\n\nconst Applicant = ({\n event,\n corporate,\n student,\n defaultApplicantValue = {},\n}) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '見学会・イベント情報',\n href: `/student/events/${event.id}`,\n },\n {\n text: '申込',\n },\n ];\n const {\n errors,\n isLoading,\n save,\n handleSubmit,\n register,\n watch,\n clearErrors,\n setEventId,\n reset,\n setValue,\n } = useApplicant();\n\n const currentSchoolYear = getCurrentSchoolYear();\n const dt = new Date();\n const availableGraduationYears =\n dt.getFullYear() !== currentSchoolYear\n ? getAvailableGraduationYears(1)\n : getAvailableGraduationYears(0);\n\n useEffect(() => {\n if (Object.keys(defaultApplicantValue).length === 0) {\n reset();\n }\n }, []);\n\n useEffect(() => {\n if (Object.keys(defaultApplicantValue).length > 0) {\n for (const k of Object.keys(defaultApplicantValue)) {\n setValue(k, defaultApplicantValue[k]);\n }\n }\n }, [defaultApplicantValue]);\n\n useEffect(() => {\n setEventId(event.id);\n }, []);\n\n useEffect(() => {\n if (\n !watch('scheduled_acquisition_certificate').includes('other') &&\n !watch('scheduled_acquisition_certificate_other')\n ) {\n clearErrors('scheduled_acquisition_certificate_other');\n }\n }, [watch('scheduled_acquisition_certificate')]);\n\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <Content>\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <h5>見学会・イベント申し込み</h5>\n <Divider hrClassName=\"m-0\" width=\"100%\" />\n </div>\n <form onSubmit={handleSubmit(save)}>\n <section id=\"user-section\">\n <div className=\"p-3\">\n <div className=\"d-flex\">申込者</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">氏名</TableLeft>\n <TableRight className=\"p-1 text-secondary\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n {...register('user_name', {\n required: '氏名は必須です',\n })}\n />\n </div>\n <span className=\"text-danger\">\n {errors?.user_name?.message}\n </span>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">所属</TableLeft>\n <TableRight className=\"p-1 text-secondary\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n {...register('school_name', {\n required: '所属は必須です',\n })}\n />\n </div>\n <span className=\"text-danger\">\n {errors?.school_name?.message}\n </span>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先メール</TableLeft>\n <TableRight className=\"p-1 text-secondary\">\n <div className=\"d-flex flex-row align-items-center\">\n <input\n type=\"text\"\n className=\"form-control\"\n {...register('email', {\n required: '連絡先メールは必須です',\n validate: (input) => emailReg.test(input),\n })}\n />\n </div>\n <span className=\"text-danger\">\n {errors?.email?.type === 'validate' &&\n 'メールアドレスの形式が正しくありません'}\n {errors?.email?.message}\n </span>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先TEL</TableLeft>\n <TableRight className=\"p-1\">\n <input\n {...register('tel', {\n required: '連絡先TELは必須です',\n validate: (input) =>\n !input ||\n (phoneReg.test(input) &&\n input\n .split('-')\n .filter((v) => !!v)\n .every((v) => !isNaN(Number(v)))),\n })}\n className=\"form-control\"\n type=\"text\"\n placeholder=\"000-0000-0000\"\n />\n <span className=\"text-danger\">\n {errors?.person_in_charge_tel?.type === 'validate' &&\n '電話番号の形式が正しくありません'}\n {errors?.tel?.message}\n </span>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">卒業見込年月</TableLeft>\n <TableRight className=\"p-1\">\n <div className=\"d-flex flex-row align-items-center\">\n <select\n {...register('graduation_year', {\n required: '卒業見込年は必須です',\n })}\n className=\"form-select\"\n style={{ width: '100%', maxWidth: '100px' }}>\n {availableGraduationYears.map((year) => (\n <option value={year} key={year}>\n {year}\n </option>\n ))}\n </select>\n <div className=\"ps-3\">卒業見込</div>\n </div>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">取得予定資格</TableLeft>\n <TableRight className=\"p-1\">\n <div className=\"form-check-inline d-flex flex-column\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('scheduled_acquisition_certificate', {\n required: '取得予定資格は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input my-0 me-1\"\n value=\"ho\"\n id=\"scheduled_acquisition_certificate_ko\"\n />\n <label\n htmlFor=\"scheduled_acquisition_certificate_ko\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 保育士\n </label>\n </div>\n\n <div className=\"me-2 d-flex align-items-center mt-2\">\n <input\n {...register('scheduled_acquisition_certificate', {\n required: '取得予定資格は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input my-0 me-1\"\n value=\"yo\"\n id=\"scheduled_acquisition_certificate_yo\"\n />\n <label\n htmlFor=\"scheduled_acquisition_certificate_yo\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 幼稚園教諭\n </label>\n </div>\n\n <div className=\"me-2 d-flex align-items-center\">\n <div\n className=\"d-flex flex-row align-items-center\"\n style={{ width: '200px' }}>\n <input\n {...register(\n 'scheduled_acquisition_certificate',\n {\n required: '取得予定資格は必須です ',\n },\n )}\n type=\"checkbox\"\n className=\"form-check-input my-0 me-1\"\n value=\"other\"\n id=\"scheduled_acquisition_certificate_other\"\n />\n <label\n htmlFor=\"scheduled_acquisition_certificate_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n <div className=\"w-100\">\n <input\n type=\"text\"\n className=\"form-control\"\n {...register(\n 'scheduled_acquisition_certificate_other',\n {\n required: watch(\n 'scheduled_acquisition_certificate',\n ).includes('other')\n ? '「その他」を選択した場合は必須です'\n : false,\n },\n )}\n />\n </div>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.scheduled_acquisition_certificate?.message}\n {\n errors?.scheduled_acquisition_certificate_other\n ?.message\n }\n </span>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡事項等</TableLeft>\n <TableRight className=\"p-1\">\n <textarea\n {...register('contact_info')}\n className=\"form-control\"\n />\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <section className=\"event-section\">\n <div className=\"p-3\">\n <div className=\"d-flex\">見学会・イベント情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">主催</TableLeft>\n <TableRight className=\"p-1\">{corporate.name}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">タイトル</TableLeft>\n <TableRight className=\"p-1\">{event?.title}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">分類</TableLeft>\n <TableRight className=\"p-1\">\n {event.event_type_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催日</TableLeft>\n <TableRight className=\"p-1\">\n {event?.event_date_ja}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催時間</TableLeft>\n <TableRight className=\"p-1\">\n {event.implementation_time_from} 〜\n {event.implementation_time_to}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地</TableLeft>\n <TableRight className=\"p-1\">\n {event.event_location}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地住所</TableLeft>\n <TableRight className=\"p-1\">{event.address}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">対象施設種別</TableLeft>\n <TableRight className=\"p-1\">\n {event.target_facility_type_names.join('・')}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n className=\"mx-0\"\n style={{ borderRadius: '20px', width: '100%' }}\n label=\"申し込みを確認する\"\n textFontSize={16}\n labelClassName=\"w-100\"\n />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n height={40}\n width={100}\n className=\"mx-0\"\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/student/events/${event.id}`;\n }}\n />\n </div>\n </form>\n </Content>\n\n <StudentFooter />\n </>\n );\n};\nApplicant.propTypes = {\n event: PropTypes.object,\n corporate: PropTypes.object,\n student: PropTypes.object,\n};\n\nexport default Applicant;\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../components/Content';\nimport { TableLeft, TableRight } from '../../../components/Student/TablePart';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../components/Divider/Divider';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport GrayButton from '../../../components/Buttons/GrayButton';\nimport { useApplicantConfirm } from './hooks/useApplicantConfirm';\n\nconst ApplicantConfirm = ({ event, corporate, applicantFormValue }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '見学会・イベント情報',\n href: `/student/events/${event.id}`,\n },\n {\n text: '申込',\n },\n ];\n const { isLoading, save, setEventId } = useApplicantConfirm();\n useEffect(() => {\n setEventId(event.id);\n }, []);\n\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <Content>\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <h5>見学会・イベント申し込み</h5>\n <Divider hrClassName=\"m-0\" width=\"100%\" />\n </div>\n <section id=\"user-section\">\n <div className=\"p-3\">\n <div className=\"d-flex\">申込者</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">氏名</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantFormValue?.user_name}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">所属</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantFormValue?.school_name}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先メール</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantFormValue?.email}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡先TEL</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantFormValue?.tel}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">卒業見込年月</TableLeft>\n <TableRight className=\"p-1\" disabled>\n <div className=\"d-flex flex-row align-items-center\">\n {applicantFormValue?.graduation_year}年\n <div className=\"ps-3\">卒業見込</div>\n </div>\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">取得予定資格</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantFormValue?.scheduled_acquisition_certificate_names?.join(\n '、',\n )}\n </TableRight>\n </tr>\n\n <tr>\n <TableLeft className=\"p-1\">連絡事項等</TableLeft>\n <TableRight className=\"p-1\" disabled>\n {applicantFormValue?.contact_info}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <section id=\"event-section\">\n <div className=\"p-3\">\n <div className=\"d-flex\">見学会・イベント情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">主催</TableLeft>\n <TableRight className=\"p-1\">{corporate.name}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">タイトル</TableLeft>\n <TableRight className=\"p-1\">{event?.title}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">分類</TableLeft>\n <TableRight className=\"p-1\">\n {event.event_type_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催日</TableLeft>\n <TableRight className=\"p-1\">\n {event?.event_date_ja}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催時間</TableLeft>\n <TableRight className=\"p-1\">\n {event.implementation_time_from} 〜\n {event.implementation_time_to}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地</TableLeft>\n <TableRight className=\"p-1\">\n {event.event_location}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地住所</TableLeft>\n <TableRight className=\"p-1\">{event.address}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">対象施設種別</TableLeft>\n <TableRight className=\"p-1\">\n {event.target_facility_type_names.join('・')}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </div>\n </section>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n className=\"mx-0\"\n style={{ borderRadius: '20px', width: '100%' }}\n label=\"申し込み(確定)\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => save(applicantFormValue)}\n />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n height={40}\n width={100}\n className=\"mx-0\"\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/student/events/${event.id}/applicant`;\n }}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\nApplicantConfirm.propTypes = {\n corporate: PropTypes.object,\n event: PropTypes.object,\n student: PropTypes.object,\n applicantFormValue: PropTypes.object,\n};\n\nexport default ApplicantConfirm;\n","import React from 'react';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport Divider from '../../../components/Divider/Divider';\nconst ApplicantSuccess = ({ corporate, event }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '見学会・イベント情報',\n href: `/student/events/${event.id}`,\n },\n {\n text: '申込',\n },\n ];\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3\">\n <div className=\"\" style={{ fontSize: '18px' }}>\n 申し込み完了\n </div>\n <Divider hrClassName=\"m-0\" width=\"100%\" />\n <div className=\"mt-3\" style={{ fontSize: '14px' }}>\n 詳細はマイページからご確認下さい\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default ApplicantSuccess;\n","import PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport styled from 'styled-components';\nimport { disableApplicant } from '../../../../utils/event';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport Content from '../../../components/Content';\nimport Divider from '../../../components/Divider/Divider';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport { EnmapColorLabel } from '../../../components/Label';\nimport LoadingOverlay from '../../../components/LoadingOverlay/LoadingOverlay';\nimport { TableLeft, TableRight } from '../../../components/Student/TablePart';\nimport { useDetail } from './hooks/useDetail';\n\nconst FacilityNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n`;\nconst BookmarkArea = styled.div`\n font-size: 24px;\n`;\n\nconst AttachedFileField = styled.div`\n background: #f2f2f2;\n color: #555252;\n`;\n\nconst BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '見学会・イベント情報',\n },\n];\n\nconst Detail = ({ event, corporate, defaultBookmarked = false }) => {\n const {\n // store\n isLoading,\n bookmarked,\n attachedFiles,\n // actions\n setInitBookmarked,\n addBookmark,\n removeBookmark,\n openAttachedFiles,\n } = useDetail();\n\n useEffect(() => {\n setInitBookmarked(defaultBookmarked);\n }, []);\n const [isOpenAttachedFileList, setIsOpenAttachedFileList] = useState(false);\n const [openedAttachedFiles, setOpenedAttachedFiles] = useState([]);\n\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 pb-2\">\n <h6>見学会・イベント情報</h6>\n <FacilityNameField className=\"pt-4 d-flex w-100\">\n <div className=\"d-flex justify-content-start align-items-center w-100\">\n {corporate.name}\n </div>\n <BookmarkArea className=\"d-flex justify-content-end w-100\">\n {bookmarked ? (\n <div\n className=\"d-flex flex-row justify-content-end me-3 align-items-center\"\n style={{ cursor: 'pointer' }}\n onClick={() => removeBookmark(event.id)}>\n <i\n className=\"bi bi-star-fill pe-1\"\n style={{ color: '#FFC000', fontSize: '16px' }}\n />\n <span\n style={{ fontSize: '14px', color: '#555252' }}\n className=\"fw-normal\">\n ブックマークを外す\n </span>\n </div>\n ) : (\n <div\n className=\"d-flex flex-row justify-content-end me-3 align-items-center\"\n style={{ cursor: 'pointer' }}\n onClick={() => addBookmark(event.id)}>\n <i\n className=\"bi bi-star-fill pe-1\"\n style={{ color: '#979797', fontSize: '16px' }}\n />\n <span\n style={{ fontSize: '14px', color: '#555252' }}\n className=\"fw-normal\">\n ブックマークする\n </span>\n </div>\n )}\n </BookmarkArea>\n </FacilityNameField>\n <Divider className=\"p-0\" width=\"100%\" hrClassName=\"m-0\" />\n </div>\n <div className=\"p-3\">\n <section className=\"pb-4\">\n <img\n src={\n event?.top_image_file_path\n ? event?.top_image_file_path\n : '/noimage.jpg'\n }\n alt=\"\"\n width=\"100%\"\n />\n <div\n className=\"d-flex flex-row w-100 pb-2 justify-content-end\"\n style={{ fontSize: '10px' }}>\n (更新日:{event?.updated_at})\n </div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">主催</TableLeft>\n <TableRight className=\"p-1\">{corporate.name}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">タイトル</TableLeft>\n <TableRight className=\"p-1\">{event?.title}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">分類</TableLeft>\n <TableRight className=\"p-1\">\n {event?.event_type_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催日</TableLeft>\n <TableRight className=\"p-1\">\n {event?.event_date_ja}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催時間</TableLeft>\n <TableRight className=\"p-1\">\n {event.implementation_time_from} 〜 \n {event.implementation_time_to}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地</TableLeft>\n <TableRight className=\"p-1\">\n {event.event_location}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">開催地住所</TableLeft>\n <TableRight className=\"p-1\">{event.address}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">対象施設種別</TableLeft>\n <TableRight className=\"p-1\">\n {event.target_facility_type_names.join('・')}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">内容</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{ whiteSpace: 'pre-wrap' }}>\n {event.subject}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">対象者</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{ whiteSpace: 'pre-wrap' }}>\n {event.target}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">備考</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{ whiteSpace: 'pre-wrap' }}>\n {event.note}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">定員数</TableLeft>\n <TableRight className=\"p-1\">{event.capacity}</TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">担当者</TableLeft>\n <TableRight className=\"p-1\">\n {event.person_in_charge}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">連絡先電話</TableLeft>\n <TableRight className=\"p-1\">\n {event.person_in_charge_tel && (\n <a href={`tel:${event.person_in_charge_tel}`}>\n {event.person_in_charge_tel}\n </a>\n )}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">連絡先メール</TableLeft>\n <TableRight className=\"p-1\">\n {event.person_in_charge_email && (\n <a href={`mailto:${event.person_in_charge_email}`}>\n {event.person_in_charge_email}\n </a>\n )}\n </TableRight>\n </tr>\n </tbody>\n </table>\n <EnmapColorLabel\n className=\"d-flex mt-2 ps-2\"\n onClick={() => {\n if (\n Object.entries(attachedFiles).length > 0 ||\n isOpenAttachedFileList\n ) {\n setIsOpenAttachedFileList(!isOpenAttachedFileList);\n } else {\n openAttachedFiles(event.id).then(() =>\n setIsOpenAttachedFileList(!isOpenAttachedFileList),\n );\n }\n }}>\n 添付資料を見る\n <span className=\"ms-1\">\n {isOpenAttachedFileList ? (\n <i className=\"bi bi-dash\" />\n ) : (\n <i className=\"bi bi-plus\" />\n )}\n </span>\n </EnmapColorLabel>\n {Object.entries(attachedFiles ?? {})?.length > 0 &&\n isOpenAttachedFileList && (\n <div className=\"ps-3\">\n {Object.entries(attachedFiles).map(([key, _]) => (\n <div className=\"d-flex flex-column pt-2\">\n {openedAttachedFiles.includes(key) ? (\n <EnmapColorLabel\n className=\"ms-2 mb-1\"\n onClick={() =>\n setOpenedAttachedFiles(\n openedAttachedFiles.filter((k) => k !== key),\n )\n }>\n {key}\n <span className=\"ms-1\">\n <i className=\"bi bi-dash\" />\n </span>\n </EnmapColorLabel>\n ) : (\n <EnmapColorLabel\n className=\"ps-2\"\n onClick={() =>\n setOpenedAttachedFiles([\n ...openedAttachedFiles,\n key,\n ])\n }>\n {key}\n <span className=\"ms-1\">\n <i className=\"bi bi-plus\" />\n </span>\n </EnmapColorLabel>\n )}\n {openedAttachedFiles.some((i) => i === key) && (\n <div className=\"d-flex px-3 justify-content-start w-100 flex-column\">\n {attachedFiles[key].map((item) => (\n <AttachedFileField className=\"d-flex w-100 p-1 ps-2 mb-1\">\n <a\n style={{\n color: '#555252',\n fontSize: '14px',\n }}\n href={item.filePath}\n target=\"_blank\"\n rel=\"nofollow\">\n {item.fileName}\n </a>\n </AttachedFileField>\n ))}\n </div>\n )}\n </div>\n ))}\n </div>\n )}\n </section>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n {disableApplicant(event) ? (\n <PinkButton\n className=\"mx-0\"\n style={{ borderRadius: '20px', width: '100%' }}\n label=\"募集終了\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/student/events/${event.id}/applicant`;\n }}\n disabled\n />\n ) : (\n <PinkButton\n className=\"mx-0\"\n style={{ borderRadius: '20px', width: '100%' }}\n label=\"申し込みに進む\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/student/events/${event.id}/applicant`;\n }}\n />\n )}\n </div>\n <section className=\"mt-2 mb-3 px-2\">\n <div className=\"d-flex w-100 flex-row\">\n <button\n className=\"d-flex w-100 justify-content-center py-1 bg-white\"\n style={{\n border: '1px solid #FF9999',\n borderRight: 'none',\n color: '#FF9999',\n }}\n onClick={() =>\n window.open(`/student/corporates/${corporate.id}`, '_blank')\n }>\n 法人情報\n </button>\n <button\n className=\"d-flex w-100 justify-content-center py-1 bg-white\"\n style={{\n border: '1px solid #FF9999',\n color: '#FF9999',\n }}\n onClick={() =>\n window.open(\n `/student/events/${event.id}/related_facilities`,\n '_blank',\n )\n }>\n 該当施設一覧\n </button>\n </div>\n </section>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nDetail.propTypes = {\n corporate: PropTypes.object,\n event: PropTypes.object,\n bookmarked: PropTypes.bool,\n};\n\nexport default Detail;\n","import React from 'react';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport EventResultList from '../../../components/ResultList/EventResultList';\nimport {\n PageTitleField,\n SearchResultSubTitleField,\n} from '../../../components/Student/PageTitle';\n\nconst EventDateResultList = ({\n events,\n currentPage,\n totalPages,\n totalCount,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '最新一覧',\n },\n ];\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <PageTitleField>開催日順に調べる</PageTitleField>\n <SearchResultSubTitleField count={totalCount} />\n <div className=\"border-top mx-4\">\n <EventResultList\n events={events}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default EventDateResultList;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport FacilityRecruitmentResultList from '../../../../components/ResultList/FacilityRecruitmentResultList';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport { paramsToObject } from '../../../../../utils/common';\n\nconst Result = ({ facilities, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: 'イベント検索',\n },\n {\n text: '条件検索',\n },\n {\n text: '検索結果',\n },\n ];\n\n const [filter, setFilter] = useState({});\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n setFilter({\n pref_code: r.pref_code ? Number(r.pref_code) : null,\n city_code: r.city_code ? r.city_code : null,\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: r.ho === 'true',\n yo: r.yo === 'true',\n ko: r.ko === 'true',\n ko_ho: r.ko_ho === 'true',\n ko_yo: r.ko_yo === 'true',\n ko_yoho: r.ko_yoho === 'true',\n ko_sairyo: r.ko_sairyo === 'true',\n shokibo: r.shokibo === 'true',\n shokibo_a: r.shokibo_a === 'true',\n shokibo_b: r.shokibo_b === 'true',\n shokibo_c: r.shokibo_c === 'true',\n jigyosho: r.jigyosho === 'true',\n jigyosho_a: r.jigyosho_a === 'true',\n jigyosho_b: r.jigyosho_b === 'true',\n jigyosho_20over: r.jigyosho_20over === 'true',\n kigyo_ho: r.kigyo_ho === 'true',\n jidokan: r.jidokan === 'true',\n after_school_club: r.after_school_club === 'true',\n other_type: r.other_type === 'true',\n });\n }, []);\n\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/events/facility_search?${p}`;\n };\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 検索結果\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nResult.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default Result;\n","import React from 'react';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport FacilityRecruitmentResultList from '../../../components/ResultList/FacilityRecruitmentResultList';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport GrayButton from '../../../components/Buttons/GrayButton';\n\nconst RelatedFacilityList = ({\n eventId,\n facilities,\n currentPage,\n totalPages,\n totalCount,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '見学会・イベント情報',\n href: `/student/events/${eventId}`,\n },\n {\n text: '該当施設一覧',\n },\n ];\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 該当施設一覧\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 該当施設:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n hideModalButton\n />\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n height={40}\n width={100}\n className=\"mx-0\"\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/student/events/${eventId}`;\n }}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default RelatedFacilityList;\n","import React, { useEffect, useState } from 'react';\nimport DatePicker, { registerLocale } from 'react-datepicker';\nimport ja from 'date-fns/locale/ja';\nimport styled from 'styled-components';\n\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport { PageTitleField } from '../../../components/Student/PageTitle';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport { paramsToObject } from '../../../../utils/common';\nimport { fetchCities } from '../../../../api/common';\nimport { useSearch } from './hooks/useSearch';\nimport dayjs from 'dayjs';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport Divider from '../../../components/Divider/Divider';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\n\nja.options.weekStartsOn = 0;\n// ReactDatepickerのロケール登録\nregisterLocale('ja', ja);\nconst Label = styled.label`\n font-size: 14spx;\n`;\n\nconst Search = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '条件検索',\n },\n ];\n\n const {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n } = useSearch();\n\n const [cities, setCities] = useState([]);\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n // let startDate = '2023-01-01';\n let startDate = r.start_date;\n let endDate = r.end_date;\n if (startDate) {\n startDate = dayjs(startDate, 'YYYY-MM-DD').toDate();\n }\n if (endDate) {\n endDate = dayjs(endDate, 'YYYY-MM-DD').toDate();\n }\n initialize({\n filter: {\n start_date: startDate,\n end_date: endDate,\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n event_type_1: r.event_type_1 === 'true',\n event_type_2: r.event_type_2 === 'true',\n ho: r.ho === 'true',\n yo: r.yo === 'true',\n ko: r.ko === 'true',\n other: r.other === 'true',\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n\n const onSubmit = () => {\n return searchFilter();\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <PageTitleField>条件検索</PageTitleField>\n <div className=\"mx-3\">\n <div className=\"mb-2 d-flex flex-column\">\n <Label>開催日</Label>\n <div className=\"d-flex flex-row align-items-center justify-content-between\">\n <div style={{ width: '40%' }}>\n <DatePicker\n dateFormat=\"yyyy/MM/dd\"\n locale=\"ja\"\n onChange={(date) => {\n changeFilter({ start_date: date });\n }}\n selected={filter.start_date ?? ''}\n className=\"form-control\"\n placeholderText=\"全期間\"\n isClearable={!!filter.start_date}\n />\n </div>\n <div className=\"d-flex\">から</div>\n <div style={{ width: '40%' }}>\n <DatePicker\n dateFormat=\"yyyy/MM/dd\"\n locale=\"ja\"\n onChange={(date) => {\n changeFilter({ end_date: date });\n }}\n selected={filter.end_date ?? ''}\n className=\"form-control\"\n placeholderText=\"全期間\"\n isClearable={!!filter.end_date}\n />\n </div>\n </div>\n </div>\n <Divider width=\"100%\" />\n <div className=\"mb-2 d-flex flex-column\">\n <Label>開催都道府県</Label>\n <div className=\"d-flex\">\n <PrefectureSelect\n label=\"\"\n selectedValue={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n pref_code: value ? Number(value) : null,\n city_code: null,\n })\n }\n />\n </div>\n </div>\n <div className=\"mb-2 d-flex flex-column\">\n <Label>開催市区町村</Label>\n <div className=\"d-flex\">\n <CitySelect\n label=\"\"\n selectedValue={filter?.city_code}\n prefecture={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n city_code: value,\n })\n }\n defaultCities={cities}\n />\n </div>\n </div>\n <Divider width=\"100%\" />\n <div className=\"mb-2 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"event_type_1\"\n value=\"1\"\n checked={filter?.event_type_1}\n onChange={({ target: { checked } }) =>\n changeFilter({\n event_type_1: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"event_type_1\">\n 見学会\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"event_type_2\"\n value=\"1\"\n checked={filter?.event_type_2}\n onChange={({ target: { checked } }) =>\n changeFilter({\n event_type_2: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"event_type_2\">\n イベント情報\n </Label>\n </div>\n </div>\n <Divider width=\"100%\" />\n <div className=\"mb-2 d-flex flex-column\">\n <Label>対象施設区分</Label>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ho\"\n value=\"1\"\n checked={filter?.ho}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ho: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ho\">\n 保育所\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"yo\"\n value=\"1\"\n checked={filter?.yo}\n onChange={({ target: { checked } }) =>\n changeFilter({\n yo: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"yo\">\n 幼稚園\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko\"\n value=\"1\"\n checked={filter?.ko}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ko: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko\">\n 認定こども園\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"other\"\n value=\"1\"\n checked={filter?.other}\n onChange={({ target: { checked } }) =>\n changeFilter({\n other: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"other\">\n その他\n </Label>\n </div>\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSubmit();\n }}\n />\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Search;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport {\n PageTitleField,\n SearchResultSubTitleField,\n} from '../../../../components/Student/PageTitle';\nimport EventResultList from '../../../../components/ResultList/EventResultList';\nimport { paramsToObject } from '../../../../../utils/common';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\n\nconst Result = ({ events, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '見学会・イベント検索',\n },\n {\n text: '検索結果',\n },\n ];\n\n const [filter, setFilter] = useState({});\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n setFilter({\n start_date: r.start_date ?? '',\n end_date: r.end_date ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n event_type_1: r.event_type_1 === 'true',\n event_type_2: r.event_type_2 === 'true',\n ho: r.ho === 'true',\n yo: r.yo === 'true',\n ko: r.ko === 'true',\n other: r.other === 'true',\n });\n }, []);\n\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/events/search?${p}`;\n };\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <PageTitleField>見学会・イベント検索結果</PageTitleField>\n <SearchResultSubTitleField count={totalCount} />\n <div className=\"border-top mx-4\">\n <EventResultList\n events={events}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Result;\n","import { useCallback, useReducer, useState } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport { useForm } from 'react-hook-form';\n\nconst P = 'STUDENT_FACILITY_EVENT_APPLICANT_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...initialState };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useApplicant = () => {\n const [eventId, setEventId] = useState(null);\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n clearErrors,\n reset,\n setValue,\n } = useForm({\n mode: 'all',\n defaultValues: {\n scheduled_acquisition_certificate: [],\n },\n });\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/student/events/${eventId}/applicant`,\n data,\n );\n location.href = `/student/events/${eventId}/applicant_confirm`;\n } catch (e) {\n if (e?.response?.data?.code === 'END_RECRUITMENT') {\n location.href = location.href;\n }\n } finally {\n unmask();\n }\n },\n [eventId],\n );\n\n return {\n // store\n isLoading,\n errors,\n // actions\n register,\n handleSubmit,\n save,\n watch,\n clearErrors,\n setEventId,\n reset,\n setValue,\n };\n};\n","import { useCallback, useReducer, useState } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'STUDENT_FACILITY_EVENT_APPLICANT_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n isLoading: false,\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...initialState };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useApplicantConfirm = () => {\n const [eventId, setEventId] = useState(null);\n const [{ isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/student/events/${eventId}/applicant_confirm`,\n data,\n );\n location.href = `/student/events/${eventId}/applicant_success`;\n } catch (e) {\n if (e?.response?.data?.code === 'END_RECRUITMENT') {\n location.href = location.href;\n }\n } finally {\n unmask();\n }\n },\n [eventId],\n );\n\n return {\n // store\n isLoading,\n // actions\n save,\n setEventId,\n };\n};\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\nimport { toast } from 'react-toastify';\n\nconst P = 'STUDENT_FACILITY_EVENT_DETAIL_';\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\n\nconst initialState = {\n event: {},\n bookmarked: false,\n isLoading: false,\n attachedFiles: {},\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...initialState };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n default:\n return state;\n }\n};\n\nexport const useDetail = () => {\n const [{ isLoading, bookmarked, attachedFiles, hasAttachment }, dispatch] =\n useReducer(reducer, initialState);\n\n const setInitBookmarked = useCallback((isBookmarked = false) => {\n changeState({\n bookmarked: isBookmarked,\n });\n }, []);\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const addBookmark = useCallback(\n async (eventId) => {\n mask();\n try {\n await HttpRequest.post(`/api/student/event_bookmarks`, {\n event_id: eventId,\n });\n toast.success('ブックマークしました');\n changeState({ bookmarked: true });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const removeBookmark = useCallback(\n async (eventId) => {\n mask();\n try {\n await HttpRequest.delete(`/api/student/event_bookmarks/${eventId}`);\n toast.success('ブックマークを解除しました');\n changeState({ bookmarked: false });\n } catch (e) {\n toast.error('エラーが発生しました');\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n const openAttachedFiles = useCallback(\n async (eventId) => {\n mask();\n try {\n const { data } = await HttpRequest.get(\n `/api/student/events/${eventId}/attached_files`,\n );\n changeState({\n attachedFiles: data,\n });\n } finally {\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n bookmarked,\n attachedFiles,\n hasAttachment,\n // actions\n setInitBookmarked,\n addBookmark,\n removeBookmark,\n openAttachedFiles,\n };\n};\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'STUDENT_EVENT_SEARCH_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n filter: {},\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSearch = () => {\n const [{ filter, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const changeFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const searchFilter = useCallback(async () => {\n mask();\n try {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => {\n if ((key === 'start_date' || key === 'end_date') && filter[key]) {\n return {\n [key]: filter[key].toLocaleDateString().replaceAll('/', '-'),\n };\n }\n return {\n [key]: filter[key] ?? '',\n };\n });\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/events/search/results?${p}`;\n } finally {\n unmask();\n }\n }, [filter]);\n\n return {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n };\n};\n","import { lbToBr } from '../../../../../utils/common';\nimport React from 'react';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../../components/Divider/Divider';\nimport PinkButton from '../../../../components/Buttons/PinkButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport { useConfirm } from './hooks/useConfirm';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport styled from 'styled-components';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\n\nconst TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableRight = styled.td`\n border: 1px solid #555252;\n font-size: 14px;\n`;\n\nconst Confirm = ({ corporateName, facility, student, applicantFormValue }) => {\n const breadcrumbs = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '施設見学申込',\n },\n {\n text: '施設見学申込(確認)',\n },\n ];\n\n const { isLoading, save } = useConfirm();\n\n return (\n <>\n <Content className=\"mt-1\">\n <LoadingOverlay loading={isLoading} />\n <StudentBreadcrumbs items={breadcrumbs} />\n <div className=\"p-3 w-100\">\n <h6 className=\"mb-0\">施設見学の申込み</h6>\n <Divider className=\"p-0\" width=\"100%\" />\n <section className=\"pb-4\">\n <div>法人情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">法人名</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {corporateName}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </section>\n <section className=\"pb-4\">\n <div>申込者情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">氏名</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {student.full_name}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">所属</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {student.school_name}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">連絡先メール</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {student.email}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 連絡先TEL\n <br />\n <span className=\"text-danger\">※必須</span>\n </TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {applicantFormValue?.tel}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 卒業見込年月\n <br />\n <span className=\"text-danger\">※必須</span>\n </TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n <div className=\"d-flex flex-row align-items-center\">\n {applicantFormValue?.graduation_year}\n <div className=\"ps-3\">年3月 卒業見込</div>\n </div>\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 取得予定資格\n <br />\n <span className=\"text-danger\">※必須</span>\n </TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {applicantFormValue?.scheduled_acquisition_certificate_names?.join(\n '、',\n )}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">メッセージ</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {lbToBr(applicantFormValue?.message)}\n </TableRight>\n </tr>\n </tbody>\n </table>\n <div className=\"d-flex pt-2 pb-3 w-100 justify-content-center\">\n <PinkButton\n width={400}\n height={40}\n label=\"この内容で申込む\"\n textFontSize={16}\n labelClassName=\"w-100\"\n pill\n onClick={(e) => {\n e.preventDefault();\n save(facility.id, applicantFormValue);\n }}\n />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n width={200}\n height={40}\n label=\"編集に戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/student/facilities/${facility.id}/applicants/new`;\n }}\n />\n </div>\n </section>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\nexport default Confirm;\n","import React, { useEffect } from 'react';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../../components/Divider/Divider';\nimport styled from 'styled-components';\nimport {\n getAvailableGraduationYears,\n getCurrentSchoolYear,\n} from '../../../../../utils/common';\nimport { useCreate } from './hooks/useCreate';\nimport PinkButton from '../../../../components/Buttons/PinkButton';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nimport LoadingOverlay from '../../../../components/LoadingOverlay/LoadingOverlay';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\n\nconst TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n`;\n\nconst TableRight = styled.td`\n border: 1px solid #555252;\n font-size: 14px;\n`;\n\nconst Create = ({\n corporateName,\n facility,\n student,\n defaultApplicantValue = {},\n}) => {\n const breadcrumbs = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '施設見学申込',\n },\n ];\n const {\n errors,\n isLoading,\n save,\n handleSubmit,\n register,\n watch,\n clearErrors,\n reset,\n setValue,\n setFacilityId,\n } = useCreate();\n const currentSchoolYear = getCurrentSchoolYear();\n const dt = new Date();\n const availableGraduationYears =\n dt.getFullYear() !== currentSchoolYear\n ? getAvailableGraduationYears(1).map((_) => _ + 1)\n : getAvailableGraduationYears(0).map((_) => _ + 1);\n\n useEffect(() => {\n setFacilityId(facility.id);\n if (Object.keys(defaultApplicantValue).length === 0) {\n reset();\n }\n }, []);\n\n useEffect(() => {\n if (Object.keys(defaultApplicantValue).length > 0) {\n for (const k of Object.keys(defaultApplicantValue)) {\n setValue(k, defaultApplicantValue[k]);\n }\n }\n }, [defaultApplicantValue]);\n\n useEffect(() => {\n if (\n !watch('scheduled_acquisition_certificate').includes('other') &&\n !watch('scheduled_acquisition_certificate_other')\n ) {\n clearErrors('scheduled_acquisition_certificate_other');\n }\n }, [watch('scheduled_acquisition_certificate')]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <LoadingOverlay loading={isLoading} />\n <StudentBreadcrumbs items={breadcrumbs} />\n <div className=\"p-3 w-100\">\n <h6 className=\"mb-0\">施設見学の申込み</h6>\n <Divider className=\"p-0\" width=\"100%\" />\n <section className=\"pb-4\">\n <div>法人情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">法人名</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {corporateName}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </section>\n <form onSubmit={handleSubmit(save)}>\n <section className=\"pb-4\">\n <div>申込者情報</div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">氏名</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {student.full_name}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">所属</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {student.school_name}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">連絡先メール</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n {student.email}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 連絡先TEL\n <br />\n <span className=\"text-danger\">※必須</span>\n </TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n <input\n {...register('tel', {\n required: '連絡先TELは必須です',\n validate: (input) =>\n !input ||\n input\n .split('-')\n .filter((v) => !!v)\n .every((v) => !isNaN(Number(v))),\n })}\n className=\"form-control\"\n type=\"text\"\n placeholder=\"000-0000-0000\"\n />\n <span className=\"text-danger\">\n {errors?.tel?.type === 'validate' &&\n '電話番号の形式が正しくありません'}\n {errors?.tel?.message}\n </span>\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 卒業見込年月\n <br />\n <span className=\"text-danger\">※必須</span>\n </TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#555252',\n }}>\n <div className=\"d-flex flex-row align-items-center\">\n <select\n {...register('graduation_year', {\n required: '卒業見込年は必須です',\n })}\n className=\"form-select\"\n style={{ width: '100%', maxWidth: '100px' }}>\n {availableGraduationYears.map((year) => (\n <option value={year} key={year}>\n {year}\n </option>\n ))}\n </select>\n <div className=\"ps-3\">年3月 卒業見込</div>\n </div>\n <span className=\"text-danger\">\n {errors?.graduation_year?.message}\n </span>\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 取得予定資格\n <br />\n <span className=\"text-danger\">※必須</span>\n </TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#555252',\n }}>\n <div className=\"form-check-inline d-flex flex-column\">\n <div className=\"me-2 d-flex align-items-center\">\n <input\n {...register('scheduled_acquisition_certificate', {\n required: '取得予定資格は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input my-0 me-1\"\n value=\"ho\"\n id=\"scheduled_acquisition_certificate_ko\"\n />\n <label\n htmlFor=\"scheduled_acquisition_certificate_ko\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 保育士\n </label>\n </div>\n\n <div className=\"me-2 d-flex align-items-center mt-2\">\n <input\n {...register('scheduled_acquisition_certificate', {\n required: '取得予定資格は必須です',\n })}\n type=\"checkbox\"\n className=\"form-check-input my-0 me-1\"\n value=\"yo\"\n id=\"scheduled_acquisition_certificate_yo\"\n />\n <label\n htmlFor=\"scheduled_acquisition_certificate_yo\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n 幼稚園教諭\n </label>\n </div>\n\n <div className=\"me-2 d-flex align-items-center\">\n <div\n className=\"d-flex flex-row align-items-center\"\n style={{ width: '200px' }}>\n <input\n {...register(\n 'scheduled_acquisition_certificate',\n {\n required: '取得予定資格は必須です ',\n },\n )}\n type=\"checkbox\"\n className=\"form-check-input my-0 me-1\"\n value=\"other\"\n id=\"scheduled_acquisition_certificate_other\"\n />\n <label\n htmlFor=\"scheduled_acquisition_certificate_other\"\n className=\"form-check-label\"\n style={{ fontSize: '1rem' }}>\n その他\n </label>\n </div>\n <div className=\"w-100\">\n <input\n type=\"text\"\n className=\"form-control\"\n {...register(\n 'scheduled_acquisition_certificate_other',\n {\n required: watch(\n 'scheduled_acquisition_certificate',\n ).includes('other')\n ? '「その他」を選択した場合は必須です'\n : false,\n },\n )}\n />\n </div>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.scheduled_acquisition_certificate?.message}\n {\n errors?.scheduled_acquisition_certificate_other\n ?.message\n }\n </span>\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">メッセージ</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{\n background: '#F2F2F2',\n color: '#979797',\n }}>\n <textarea\n {...register('message')}\n name=\"message\"\n id=\"\"\n cols=\"30\"\n rows=\"3\"\n className=\"form-control\"\n placeholder=\"希望日程、曜日や時間帯、その他メッセージなど\"\n />\n </TableRight>\n </tr>\n </tbody>\n </table>\n <div className=\"d-flex pt-2 pb-3 w-100 justify-content-center\">\n <PinkButton\n width={400}\n height={40}\n label=\"内容確認へ進む\"\n textFontSize={16}\n labelClassName=\"w-100\"\n pill\n />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n width={200}\n height={40}\n label=\"戻る\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n // タブを閉じる\n window.close();\n }}\n />\n </div>\n </section>\n </form>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Create;\n","import React from 'react';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../../components/Divider/Divider';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\nconst Success = () => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '施設見学申込',\n },\n {\n text: '施設見学申込(確認)',\n },\n {\n text: '完了',\n },\n ];\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3\">\n <div className=\"\" style={{ fontSize: '18px' }}>\n 施設見学の申込みが完了しました\n </div>\n <Divider hrClassName=\"m-0\" width=\"100%\" />\n <div className=\"mt-3\" style={{ fontSize: '14px' }}>\n ・法人からの連絡をお待ち下さい\n <br />\n ・詳細はサイドメニューの申込履歴からご確認下さい\n </div>\n </div>\n\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <GrayButton\n width={200}\n height={40}\n label=\"トップページ\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n location.href = `/student/home`;\n }}\n />\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Success;\n","import { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../../utils/HttpRequest';\n\nconst P = 'STUDENT_FACILITY_APPLICANT_CONFIRM_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\nexport const useConfirm = () => {\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const save = useCallback(async (facilityId, data) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/student/facilities/${facilityId}/applicant_confirm`,\n data,\n );\n location.href = `/student/facilities/${facilityId}/applicant_success`;\n } finally {\n unmask();\n }\n }, []);\n\n return {\n // store\n isLoading,\n // actions\n save,\n };\n};\n","import { useCallback, useReducer, useState } from 'react';\nimport { useForm } from 'react-hook-form';\nimport HttpRequest from '../../../../../../utils/HttpRequest';\n\nconst P = 'STUDENT_FACILITY_APPLICANT_CREATE_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\nexport const useCreate = () => {\n const [facilityId, setFacilityId] = useState(null);\n const [{ isLoading, errorMessage }, dispatch] = useReducer(\n reducer,\n initialState,\n );\n\n const {\n register,\n formState: { errors },\n handleSubmit,\n clearErrors,\n setValue,\n watch,\n reset,\n } = useForm({\n mode: 'all',\n defaultValues: {\n tel: '',\n graduation_year: '',\n scheduled_acquisition_certificate: [],\n },\n });\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const save = useCallback(\n async (data) => {\n mask();\n try {\n await HttpRequest.post(\n `/api/student/facilities/${facilityId}/applicants`,\n data,\n );\n location.href = `/student/facilities/${facilityId}/applicant_confirm`;\n } finally {\n unmask();\n }\n },\n [facilityId],\n );\n\n return {\n // store\n isLoading,\n errors,\n // actions\n register,\n handleSubmit,\n save,\n watch,\n clearErrors,\n reset,\n setValue,\n setFacilityId,\n };\n};\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport styled from 'styled-components';\nimport { lbToBr } from '../../../../../utils/common';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Content from '../../../../components/Content';\nimport Divider from '../../../../components/Divider/Divider';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport ApplicantButton from '../../../../components/Student/ApplicantButton';\n\nconst EnmapUsingDetail = ({\n facility,\n recruitment,\n enabledApplicant = false,\n}) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '施設検索',\n },\n {\n text: '求人情報',\n },\n ];\n\n const FacilityNameField = styled.div`\n font-size: 14px;\n font-weight: bold;\n color: #555252;\n `;\n\n const TableLeft = styled.td`\n border: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 30%;\n `;\n\n const TableRight = styled.td`\n border: 1px solid #555252;\n font-size: 14px;\n `;\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"p-3 w-100\">\n <h6>求人情報</h6>\n <FacilityNameField className=\"pt-4 pb-2\">\n {facility.name}\n </FacilityNameField>\n {enabledApplicant && (\n <div className=\"d-flex w-100\">\n <ApplicantButton facility={facility} />\n </div>\n )}\n <Divider className=\"p-0\" width=\"100%\" />\n <section className=\"mb-3\">\n <div\n className=\"d-flex flex-row justify-content-between w-100 pb-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\"> 1 求人情報</div>\n <div\n style={{ fontSize: '10px' }}\n className=\"d-flex w-100 align-items-end justify-content-end\">\n (更新日:{recruitment?.updated_at})\n </div>\n </div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">採用職種</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment.is_old_format ? (\n recruitment?.job_type\n ) : (\n <>\n {recruitment.job_type_options.map((job_type) => (\n <div key={job_type.id}>\n {job_type.name}:\n {job_type?.recruitment_number?.toLocaleString() ??\n '-'}\n 名\n </div>\n ))}\n </>\n )}\n </TableRight>\n </tr>\n {recruitment.is_old_format && (\n <>\n <tr>\n <TableLeft className=\"p-1\">就労形態</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.working_form === 'other'\n ? recruitment?.working_form_info\n : recruitment?.working_form_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">採用人数</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.recruitment_number}\n </TableRight>\n </tr>\n </>\n )}\n\n <tr>\n <TableLeft className=\"p-1\">月額基本給</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.monthly_salary?.toLocaleString()}円\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">月額諸手当</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment.is_old_formt ? (\n lbToBr(recruitment?.monthly_allowance)\n ) : (\n <>\n {recruitment.allowance_options.map(\n (allowance_option) => (\n <div key={allowance_option.id}>\n {allowance_option.name}:\n {allowance_option?.amount?.toLocaleString()}円{' '}\n <span style={{ fontSize: '10px' }}>\n (\n {allowance_option.category == 'all'\n ? '一律'\n : '対象者のみ'}\n )\n </span>\n </div>\n ),\n )}\n </>\n )}\n </TableRight>\n </tr>\n {!recruitment.is_old_format && (\n <tr>\n <TableLeft className=\"p-1\">諸手当備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.monthly_allowance_note ?? '')}\n </TableRight>\n </tr>\n )}\n <tr>\n <TableLeft className=\"p-1\">月額総支給額(一律)</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.monthly_salary_total_all?.toLocaleString()}円\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 月額総支給額(対象者のみ)\n </TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.monthly_salary_total_target?.toLocaleString() ??\n '-'}\n 円\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">賞与支給条件</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.bonus_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 年間賞与支給予定額(一律)\n </TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.est_yearly_bonus_amount_for_uniformly?.toLocaleString() ??\n '-'}\n 円\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 年間賞与支給予定額(対象者のみ)\n </TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.est_yearly_bonus_amount_for_target?.toLocaleString() ??\n '-'}\n 円\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">年間総支給額(一律)</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.est_yearly_bonus_amount_for_uniformly_year?.toLocaleString() ??\n '-'}\n 円\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 年間総支給額(対象者のみ)\n </TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.est_yearly_bonus_amount_for_target_year?.toLocaleString() ??\n '-'}\n 円\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">給与備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.monthly_salary_note)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">昇給</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.salary_rise_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">交通費</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.travel_expense_cover_option_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">交通費備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.travel_expense_cover_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">加入保険等</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.insurance_policy_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">福利厚生</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.welfare_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">家賃補助</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.housing_allowance_option_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">家賃補助備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.housing_allowance_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 勤務時間\n <br />\n (平日)\n </TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.weekday_working_hour_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 勤務時間\n <br />\n (平日以外)\n </TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.holiday_working_hour_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">休日</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.holiday_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">年間休日数</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.annual_holiday_number}日\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 初年度\n <br />\n 有給休暇日数\n </TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.paid_holiday_number}日\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">休日・有給備考</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.holiday_info_note}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">通勤時間</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.commuting_time_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">自動車通勤</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.bicycle_ok_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">採用条件備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.hiring_standard_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">\n 園の方針、採用のポイント\n </TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment.en_policy)}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </section>\n\n {enabledApplicant && (\n <div className=\"d-flex w-100 mb-4\">\n <ApplicantButton facility={facility} />\n </div>\n )}\n <section className=\"mb-3\">\n <div\n className=\"d-flex justify-content-between w-100 pb-2\"\n style={{ fontSize: '14px' }}>\n <div className=\"d-flex w-100\"> 2 応募情報</div>\n </div>\n <table className=\"w-100\">\n <tbody>\n <tr>\n <TableLeft className=\"p-1\">提出書類</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.required_document_option_names?.map(\n (item) => (\n <span className=\"me-2\">{item}</span>\n ),\n )}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">提出書類備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.required_documents_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">提出方法</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.document_submission_option_names?.map(\n (item) => (\n <span className=\"me-2\">{item}</span>\n ),\n )}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">提出方法備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.document_submission_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">提出期限</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.document_submission_term_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">選考方法</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.selection_process_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">選考日程</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.selection_date_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">選考場所</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.interview_location_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">その他携行品</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.required_item_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">園見学可否</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.observability_option_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">園見学可否備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.observability_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">園見学申込方法</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.observation_application_option_label}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">園見学申込方法備考</TableLeft>\n <TableRight\n className=\"p-1\"\n style={{ wordBreak: 'break-word' }}>\n {lbToBr(recruitment?.observation_application_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">応募情報備考</TableLeft>\n <TableRight className=\"p-1\">\n {lbToBr(recruitment?.job_application_info)}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">採用担当者</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.recruiter_name}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">採用担当者役職</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.recruiter_role}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">採用担当者連絡先(TEL)</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.recruiter_tel && (\n <a href={`tel:${recruitment?.recruiter_tel}`}>\n {recruitment?.recruiter_tel}\n </a>\n )}\n </TableRight>\n </tr>\n <tr>\n <TableLeft className=\"p-1\">採用担当連絡先(Mail)</TableLeft>\n <TableRight className=\"p-1\">\n {recruitment?.recruiter_email && (\n <a href={`mailto:${recruitment?.recruiter_email}`}>\n {recruitment?.recruiter_email}\n </a>\n )}\n </TableRight>\n </tr>\n </tbody>\n </table>\n </section>\n\n {enabledApplicant && (\n <div className=\"d-flex w-100\">\n <ApplicantButton facility={facility} />\n </div>\n )}\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nEnmapUsingDetail.propTypes = {\n facility: PropTypes.object,\n recruitment: PropTypes.object,\n};\n\nexport default EnmapUsingDetail;\n","import React, { useEffect } from 'react';\nimport PinkButton from '../../components/Buttons/PinkButton';\nimport StudentLoadingOverlay from '../../components/LoadingOverlay/StudentLoadingOverlay';\nimport EnmapLogoPink from '../../components/Logo/EnmapLogoPink';\nimport { useGlobalLoginModule } from '../../modules/Student/globalLoginModule';\n\nconst GlobalLogin = () => {\n const {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n formError,\n // actions\n checkAuth,\n register,\n handleSubmit,\n onSubmit,\n } = useGlobalLoginModule();\n\n useEffect(() => {\n checkAuth();\n }, []);\n\n if (isLoading) {\n return <StudentLoadingOverlay loading={isLoading} />;\n }\n return (\n <>\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"d-flex justify-content-center text-center flex-column px-3\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div className=\"mt-4\">\n <h1 className=\"fw-bold\">ログイン</h1>\n </div>\n <div className=\"mt-3\">\n <p className=\"mx-3 text-start\" style={{ fontSize: '14px' }}>\n 学校から配布されたメールアドレスとパスワードを入力してください。なお、サイト内の不明点については学校へお問い合わせください。\n </p>\n </div>\n <div className=\"py-5 px-3\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">メールアドレス</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n <div className=\"form-group mt-3 w-100\">\n <div className=\"d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"password\">パスワード</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password', {\n required: 'パスワードは必須です',\n })}\n type=\"password\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n disabled={isLoading}\n id=\"password\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n disabled={isLoading || loggedInWithDifferentTypeAccount}\n label=\"ログイン\"\n textFontSize={20}\n height={72}\n />\n </div>\n <div className=\"mt-4\">\n <a href=\"/students/password_reset\" className=\"text-black\">\n パスワードをリセットする\n </a>\n </div>\n </div>\n </div>\n </form>\n </>\n );\n};\n\nexport default GlobalLogin;\n","import React from 'react';\nimport PinkButton from '../../components/Buttons/PinkButton';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\nimport EnmapLogoPink from '../../components/Logo/EnmapLogoPink';\nimport { useGlobalPasswordResetModule } from '../../modules/Student/globalPasswordResetModule';\n\nconst GlobalPasswordReset = () => {\n const {\n // store\n isLoading,\n error,\n formError,\n email,\n // actions\n register,\n handleSubmit,\n watch,\n onSubmit,\n } = useGlobalPasswordResetModule();\n\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"d-flex justify-content-center text-center flex-column px-3\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div className=\"mt-4\">\n <h1>パスワードリセット</h1>\n </div>\n <div className=\"py-5 px-3\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">メールアドレス</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n disabled={isLoading}\n label=\"パスワードをリセットする\"\n textFontSize={20}\n height={72}\n />\n </div>\n </div>\n </div>\n </form>\n </>\n );\n};\n\nexport default GlobalPasswordReset;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nimport { isLocal } from '../../../utils/common';\nimport StudentFooter from '../../components/Footers/StudentFooter';\nimport MapIconSVG from '../../images/map_icon.svg';\nimport CheckSVG from '../../images/check.svg';\nimport ArrowUpSVG from '../../images/arrow_up.svg';\nimport BuildingSVG from '../../images/building.svg';\nimport LogoWhite from '../../images/logo_white.png';\nimport TopGirl from '../../images/top_girl.svg';\nimport FacilityTourApplicantImage from '../../images/facility_tour_applicant_button.png';\n\nconst Text = styled.div`\n font-size: 13px;\n color: black;\n`;\n\nconst BannerField = ({ width, link = null, image }) => {\n return (\n <div\n className=\"d-flex flex-row justify-content-center w-100 pt-4 pb-5 mb-5\"\n style={{ background: 'white' }}>\n {link ? (\n <a href={link} target=\"_blank\" rel=\"noreferrer noopener nofollow\">\n <img src={image} alt=\"banner\" width={width} />\n </a>\n ) : (\n <img src={image} alt=\"banner\" width={width} />\n )}\n </div>\n );\n};\n\nconst Home = (props) => {\n const { student } = props;\n return (\n <>\n <div style={{ background: '#FF9999' }}>\n <div className=\"pt-3\">\n <div className=\"d-flex flex-column w-100 h-100 justify-content-end align-items-center pb-4\">\n <div>\n <img src={LogoWhite} alt=\"logo\" style={{ height: '36px' }} />\n <img src={TopGirl} alt=\"logo2\" className=\"ps-2\" />\n </div>\n <div\n className=\"d-flex flex-row justify-content-center align-items-center\"\n style={{ color: 'white', fontSize: '15px' }}>\n こんにちは、{student.full_name}さん。\n </div>\n </div>\n </div>\n <div\n style={{\n background: 'white',\n borderTopLeftRadius: '24px',\n borderTopRightRadius: '24px',\n }}>\n <section>\n <div className=\"px-3 pt-3 d-flex flex-column w-100\">\n <div\n className=\"d-flex justify-content-start mb-1\"\n style={{ fontSize: '16px', color: 'black' }}>\n 幼保系の求人を探す\n </div>\n <div\n className=\"d-flex flex-row mb-3 justify-content-evenly w-100 py-2\"\n style={{\n background: '#F2F2F2',\n fontSize: '13px',\n borderRadius: '12px',\n }}>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() => (location.href = '/map?t=school')}>\n <img\n src={MapIconSVG}\n alt=\"map\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>マップ</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/facility_search?ho=true&yo=true&ko=true&ko_ho=true&ko_yo=true&ko_yoho=true&ko_sairyo=true')\n }>\n <img\n src={CheckSVG}\n alt=\"check\"\n style={{ height: '20px' }}\n />\n </button>\n <Text>条件</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href = '/student/recruitments/schools/latest')\n }>\n <img\n src={ArrowUpSVG}\n alt=\"latest\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>到着順</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/corporate_search')\n }>\n <img\n src={BuildingSVG}\n alt=\"corporate\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>法人</Text>\n </div>\n </div>\n </div>\n </section>\n <section>\n <div className=\"px-3 d-flex flex-column w-100\">\n <div\n className=\"d-flex justify-content-start mb-1\"\n style={{ fontSize: '16px', color: 'black' }}>\n 施設系の求人を探す\n </div>\n <div\n className=\"d-flex flex-row mb-3 justify-content-evenly w-100 py-2\"\n style={{\n background: '#F2F2F2',\n fontSize: '13px',\n borderRadius: '12px',\n }}>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() => (location.href = '/map?t=facility')}>\n <img\n src={MapIconSVG}\n alt=\"map\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>マップ</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/type_facility_search')\n }>\n <img\n src={CheckSVG}\n alt=\"check\"\n style={{ height: '20px' }}\n />\n </button>\n <Text>条件</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/type_facility_latest')\n }>\n <img\n src={ArrowUpSVG}\n alt=\"latest\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>到着順</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/type_facility_corporate_search')\n }>\n <img\n src={BuildingSVG}\n alt=\"corporate\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>法人</Text>\n </div>\n </div>\n </div>\n </section>\n {isLocal && (\n <section>\n <div className=\"px-3 d-flex flex-column w-100\">\n <div\n className=\"d-flex justify-content-start mb-1\"\n style={{ fontSize: '16px', color: 'black' }}>\n ENMAPから見学申し込み出来る園を探す\n </div>\n <div\n className=\"d-flex flex-row mb-3 justify-content-evenly w-100 py-2\"\n style={{\n background: '#F2F2F2',\n fontSize: '13px',\n borderRadius: '12px',\n }}>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() => (location.href = '/map?t=facility')}>\n <img\n src={MapIconSVG}\n alt=\"map\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>マップ</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/type_facility_search')\n }>\n <img\n src={CheckSVG}\n alt=\"check\"\n style={{ height: '20px' }}\n />\n </button>\n <Text>条件</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/type_facility_latest')\n }>\n <img\n src={ArrowUpSVG}\n alt=\"latest\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>到着順</Text>\n </div>\n <div className=\"d-flex flex-column align-items-center\">\n <button\n className=\"btn rounded-circle bg-white\"\n style={{\n width: '63px',\n height: '63px',\n }}\n onClick={() =>\n (location.href =\n '/student/recruitments/schools/type_facility_corporate_search')\n }>\n <img\n src={BuildingSVG}\n alt=\"corporate\"\n style={{ height: '24px' }}\n />\n </button>\n <Text>法人</Text>\n </div>\n </div>\n </div>\n </section>\n )}\n </div>\n <BannerField width={295} image={FacilityTourApplicantImage} />\n </div>\n <StudentFooter />\n </>\n );\n};\n\nHome.propTypes = {\n student: PropTypes.object,\n};\n\nexport default Home;\n","import React from 'react';\nimport Content from '../../components/Content';\nimport EnmapLogoPink from '../../components/Logo/EnmapLogoPink';\nimport PinkButton from '../../components/Buttons/PinkButton';\nimport { useInitialPasswordChange } from '../../modules/Student/initialPasswordChange';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\n\nconst InitialPasswordChange = (prop) => {\n const {\n // store\n isLoading,\n error,\n formError,\n // actions\n register,\n handleSubmit,\n onSubmit,\n watch,\n changeState,\n } = useInitialPasswordChange();\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <Content className=\"mt-1\">\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"d-flex justify-content-center text-center flex-column px-3\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div style={{ marginTop: '70px' }}>\n パスワードを変更してください\n </div>\n <div className=\"py-5 px-3\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"password\">新しいパスワード</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password', {\n required: '新しいパスワードは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"password\"\n disabled={isLoading}\n id=\"password\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password?.message}\n </span>\n </div>\n <div className=\"form-group mt-3 w-100\">\n <div className=\"d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"password_confirm\">確認用パスワード</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password_confirm', {\n required: '確認用パスワードは必須です',\n validate: (input) => input === watch('password'),\n })}\n type=\"password\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n disabled={isLoading}\n id=\"password_confirm\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password_confirm?.type === 'validate' &&\n '確認用パスワードが一致しません'}\n {formError?.password_confirm?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n disabled={isLoading}\n label=\"パスワード更新\"\n textFontSize={20}\n height={72}\n />\n </div>\n </div>\n </div>\n </form>\n </Content>\n </>\n );\n};\n\nexport default InitialPasswordChange;\n","import PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\nimport PinkButton from '../../components/Buttons/PinkButton';\nimport StudentLoadingOverlay from '../../components/LoadingOverlay/StudentLoadingOverlay';\nimport EnmapLogoPink from '../../components/Logo/EnmapLogoPink';\nimport { useLoginModule } from '../../modules/Student/loginModule';\n\nconst Login = (props) => {\n const { school } = props;\n const {\n // store\n isLoading,\n error,\n loggedInWithDifferentTypeAccount,\n formError,\n // actions\n checkAuth,\n register,\n handleSubmit,\n onSubmit,\n changeState,\n } = useLoginModule();\n\n useEffect(() => {\n checkAuth();\n localStorage.setItem('schoolName', school.alias_name);\n changeState({ schoolAliasName: school.name });\n }, []);\n\n if (isLoading) {\n return <StudentLoadingOverlay loading={isLoading} />;\n }\n\n return (\n <>\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"d-flex justify-content-center text-center flex-column px-3\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div style={{ marginTop: '70px' }}>{school.name}</div>\n <div className=\"mt-4\">\n <h1 className=\"fw-bold\">ログイン</h1>\n </div>\n <div className=\"mt-3\">\n <p className=\"mx-3 text-start\" style={{ fontSize: '14px' }}>\n 学校から配布されたメールアドレスとパスワードを入力してください。なお、サイト内の不明点については学校へお問い合わせください。\n </p>\n </div>\n <div className=\"py-5 px-3\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">メールアドレス</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n <div className=\"form-group mt-3 w-100\">\n <div className=\"d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"password\">パスワード</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('password', {\n required: 'パスワードは必須です',\n })}\n type=\"password\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n disabled={isLoading}\n id=\"password\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.password?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n disabled={isLoading || loggedInWithDifferentTypeAccount}\n label=\"ログイン\"\n textFontSize={20}\n height={72}\n />\n </div>\n <div className=\"mt-4\">\n <a\n href={`/students/${school.alias_name}/password_reset`}\n className=\"text-black\">\n パスワードをリセットする\n </a>\n </div>\n </div>\n </div>\n </form>\n </>\n );\n};\n\nLogin.propTypes = {\n school: PropTypes.object,\n};\n\nexport default Login;\n","import React, { useEffect } from 'react';\nimport { usePasswordResetModule } from '../../modules/Student/passwordResetModule';\nimport EnmapLogoPink from '../../components/Logo/EnmapLogoPink';\nimport PinkButton from '../../components/Buttons/PinkButton';\nimport LoadingOverlay from '../../components/LoadingOverlay/LoadingOverlay';\n\nconst PasswordReset = (props) => {\n const {\n // store\n isLoading,\n error,\n formError,\n email,\n // actions\n changeState,\n register,\n handleSubmit,\n watch,\n onSubmit,\n } = usePasswordResetModule();\n\n useEffect(() => {\n changeState({ school: props.school });\n }, []);\n\n return (\n <>\n <LoadingOverlay loading={isLoading} />\n <form onSubmit={handleSubmit(onSubmit)}>\n <div className=\"d-flex justify-content-center text-center flex-column px-3\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div className=\"mt-4\">\n <h1>パスワードリセット</h1>\n </div>\n <div className=\"py-5 px-3\">\n <div className=\"form-group w-100\">\n <div className=\" d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label htmlFor=\"email\">メールアドレス</label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n </div>\n <span className=\"text-danger mt-2\">\n {formError?.email?.message}\n </span>\n </div>\n {error && (\n <div className=\"justify-content-center d-flex w-100 mt-5\">\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n disabled={isLoading}\n label=\"パスワードをリセットする\"\n textFontSize={20}\n height={72}\n />\n </div>\n </div>\n </div>\n </form>\n </>\n );\n};\n\nexport default PasswordReset;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport StudentFooter from '../../../../components/./Footers/StudentFooter';\nimport CorporateRecruitmentResultList from '../../../../components/ResultList/CorporateRecruitmentResultList';\n\nconst LatestList = ({ corporates, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人検索',\n },\n {\n text: '最新一覧(一般企業)',\n },\n ];\n\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 最新一覧(一般企業)\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <CorporateRecruitmentResultList\n corporates={corporates}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n isGeneralType\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nLatestList.propTypes = {\n corporates: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default LatestList;\n","import React, { createRef, useEffect } from 'react';\nimport { useCorporateSearchModule } from '../../../../modules/Student/Recruitment/School/corporateSearchModule';\nimport { paramsToObject } from '../../../../../utils/common';\nimport { fetchCities } from '../../../../../api/common';\nimport styled from 'styled-components';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PinkButton from '../../../../components/Buttons/PinkButton';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\n\nconst Label = styled.label`\n font-size: 12px;\n`;\n\nconst CorporateSearch = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人情報',\n },\n {\n text: '法人から探す(幼保)',\n },\n ];\n\n const {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n } = useCorporateSearchModule();\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n filter: {\n name: r.name ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n school: r.school === 'true',\n municipality: r.municipality === 'true',\n social_welfare: r.social_welfare === 'true',\n npo: r.npo === 'true',\n ltd: r.ltd === 'true',\n religious: r.religious === 'true',\n limited_corporate: r.limited_corporate === 'true',\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n\n const ref = createRef();\n\n const onSubmit = () => {\n return searchFilter();\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"m-3 ms-4\">法人から探す(幼保)</h6>\n <div className=\"px-4\">\n <div className=\"mb-2\" ref={ref}>\n <Label>法人名</Label>\n <input\n type=\"text\"\n className=\"form-control\"\n value={filter?.name}\n onChange={({ target: { value } }) =>\n changeFilter({ name: value })\n }\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"recruitmentSubmitted\"\n value=\"1\"\n checked={filter?.recruitmentSubmitted}\n onChange={({ target: { checked } }) =>\n changeFilter({\n recruitmentSubmitted: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"recruitmentSubmitted\">\n 求人情報あり\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasFacilityTourApplicant\"\n value=\"1\"\n checked={filter?.hasFacilityTourApplicant}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasFacilityTourApplicant: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"hasFacilityTourApplicant\">\n ENMAPから見学受付中\n </Label>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n {/*<div className=\"my-3 d-flex flex-row\">*/}\n {/* <div className=\"form-check form-check-inline d-flex align-items-center\">*/}\n {/* <input*/}\n {/* className=\"form-check-input mb-1\"*/}\n {/* type=\"checkbox\"*/}\n {/* id=\"hasComment\"*/}\n {/* value=\"1\"*/}\n {/* checked={filter?.hasComment}*/}\n {/* onChange={({ target: { checked } }) =>*/}\n {/* changeFilter({*/}\n {/* hasComment: checked,*/}\n {/* })*/}\n {/* }*/}\n {/* />*/}\n {/* <Label className=\"form-check-label ps-1\" htmlFor=\"hasComment\">*/}\n {/* 学校がコメントしている施設*/}\n {/* </Label>*/}\n {/* </div>*/}\n {/*</div>*/}\n {/*<div className=\"my-3\">*/}\n {/* <hr />*/}\n {/*</div>*/}\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start flex-column\">\n <div className=\"d-flex flex-row justify-content-start mb-2\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"school\"\n value=\"1\"\n checked={filter?.school}\n onChange={({ target: { checked } }) =>\n changeFilter({\n school: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"school\">\n 学校法人\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"municipality\"\n value=\"1\"\n checked={filter?.municipality}\n onChange={({ target: { checked } }) =>\n changeFilter({\n municipality: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"municipality\">\n 自治体\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row justify-content-start mb-2\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"social_welfare\"\n value=\"1\"\n checked={filter?.social_welfare}\n onChange={({ target: { checked } }) =>\n changeFilter({\n social_welfare: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"social_welfare\">\n 社会福祉法人\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"npo\"\n value=\"1\"\n checked={filter?.npo}\n onChange={({ target: { checked } }) =>\n changeFilter({\n npo: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"npo\">\n NPO法人\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row justify-content-start mb-2\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ltd\"\n value=\"1\"\n checked={filter?.ltd}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ltd: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ltd\">\n 株式会社\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"religious\"\n value=\"1\"\n checked={filter?.religious}\n onChange={({ target: { checked } }) =>\n changeFilter({\n religious: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"religious\">\n 宗教法人\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"limited_corporate\"\n value=\"1\"\n checked={filter?.limited_corporate}\n onChange={({ target: { checked } }) =>\n changeFilter({\n limited_corporate: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"limited_corporate\">\n その他法人\n </Label>\n </div>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSubmit();\n }}\n />\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default CorporateSearch;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { paramsToObject } from '../../../../../../utils/common';\nimport Content from '../../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport CorporateRecruitmentResultList from '../../../../../components/ResultList/CorporateRecruitmentResultList';\nimport StudentFooter from '../../../../../components/Footers/StudentFooter';\nimport PropTypes from 'prop-types';\n\nconst Result = ({ corporates, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人検索',\n },\n {\n text: '法人検索',\n },\n {\n text: '法人検索結果',\n },\n ];\n\n const [filter, setFilter] = useState({});\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n setFilter({\n name: r.name ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n school: r.school === 'true',\n municipality: r.municipality === 'true',\n social_welfare: r.social_welfare === 'true',\n npo: r.npo === 'true',\n ltd: r.ltd === 'true',\n religious: r.religious === 'true',\n limited_corporate: r.limited_corporate === 'true',\n });\n }, []);\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/corporate_search?${p}`;\n };\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 法人検索結果\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <CorporateRecruitmentResultList\n corporates={corporates}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\nResult.propTypes = {\n corporates: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default Result;\n","import React, { createRef, useEffect, useState } from 'react';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport { useFacilitySearchModule } from '../../../../modules/Student/Recruitment/School/facilitySearchModule';\nimport PrefectureSelect from '../../../../components/PrefectureSelect/PrefectureSelect';\nimport CitySelect from '../../../../components/CitySelect/CitySelect';\nimport { paramsToObject } from '../../../../../utils/common';\nimport PinkButton from '../../../../components/Buttons/PinkButton';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport styled from 'styled-components';\nimport { fetchCities } from '../../../../../api/common';\n\nconst Label = styled.label`\n font-size: 12px;\n`;\n\nconst FacilitySearch = () => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人情報',\n },\n {\n text: '条件から探す(幼保)',\n },\n ];\n\n const {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeFilter,\n searchFilter,\n } = useFacilitySearchModule();\n\n const [cities, setCities] = useState([]);\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n filter: {\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: r.ho === 'true',\n yo: r.yo === 'true',\n ko: r.ko === 'true',\n ko_ho: r.ko_ho === 'true',\n ko_yo: r.ko_yo === 'true',\n ko_yoho: r.ko_yoho === 'true',\n ko_sairyo: r.ko_sairyo === 'true',\n shokibo: r.shokibo === 'true',\n shokibo_a: r.shokibo_a === 'true',\n shokibo_b: r.shokibo_b === 'true',\n shokibo_c: r.shokibo_c === 'true',\n jigyosho: r.jigyosho === 'true',\n jigyosho_a: r.jigyosho_a === 'true',\n jigyosho_b: r.jigyosho_b === 'true',\n jigyosho_20over: r.jigyosho_20over === 'true',\n kigyo_ho: r.kigyo_ho === 'true',\n other_type: r.other_type === 'true',\n jidokan: false,\n after_school_club: false,\n after_school_day_service: false,\n infant_home: false,\n child_home: false,\n shogai_child_facility_welfare_type: false,\n shogai_child_facility_medical_type: false,\n child_facility_welfare_type: false,\n child_facility_medical_type: false,\n child_psychotherapeutic_facility: false,\n child_independence_facility: false,\n child_family_support_facility: false,\n midwifery_facility: false,\n disability_support_facility: false,\n employment_support_facility: false,\n not_en: false,\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n\n const ref = createRef();\n\n const onSubmit = () => {\n return searchFilter();\n };\n\n useEffect(() => {\n if (filter?.ko) {\n const someKoUnchecked = Object.keys(filter)\n .filter((key) => key.includes('ko_'))\n .some((key) => !filter[key]);\n if (someKoUnchecked) {\n changeFilter({ ko: false });\n }\n }\n if (filter?.shokibo) {\n const someShokiboUnchecked = Object.keys(filter)\n .filter((key) => key.includes('shokibo_'))\n .some((key) => !filter[key]);\n if (someShokiboUnchecked) {\n changeFilter({ shokibo: false });\n }\n }\n if (filter?.jigyosho) {\n const someJigyoshoUnchecked = Object.keys(filter)\n .filter((key) => key.includes('jigyosho_'))\n .some((key) => !filter[key]);\n if (someJigyoshoUnchecked) {\n changeFilter({ jigyosho: false });\n }\n }\n }, [filter]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"m-3 ms-4\">条件から探す(幼保)</h6>\n <div>\n <div className=\"px-4\">\n <div className=\"mb-2\" ref={ref}>\n <Label>園名</Label>\n <input\n type=\"text\"\n className=\"form-control\"\n value={filter?.name}\n onChange={({ target: { value } }) =>\n changeFilter({ name: value })\n }\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"mb-2\" ref={ref}>\n <PrefectureSelect\n label=\"都道府県\"\n selectedValue={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n pref_code: value ? Number(value) : null,\n city_code: null,\n })\n }\n />\n </div>\n <div className=\"mb-2\">\n <CitySelect\n label=\"市区町村\"\n selectedValue={filter?.city_code}\n prefecture={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n city_code: value,\n })\n }\n defaultCities={cities}\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"recruitmentSubmitted\"\n value=\"1\"\n checked={filter?.recruitmentSubmitted}\n onChange={({ target: { checked } }) =>\n changeFilter({\n recruitmentSubmitted: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"recruitmentSubmitted\">\n 求人情報あり\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasFacilityTourApplicant\"\n value=\"1\"\n checked={filter?.hasFacilityTourApplicant}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasFacilityTourApplicant: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"hasFacilityTourApplicant\">\n ENMAPから見学受付中\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasComment\"\n value=\"1\"\n checked={filter?.hasComment}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasComment: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"hasComment\">\n 学校がコメントしている施設\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ninka\"\n value=\"1\"\n checked={filter?.ninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ninka\">\n 認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"municipality\"\n value=\"1\"\n checked={filter?.municipality}\n onChange={({ target: { checked } }) =>\n changeFilter({\n municipality: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"municipality\">\n 自治体独自認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"muninka\"\n value=\"1\"\n checked={filter?.muninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n muninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"muninka\">\n 認可外\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"private\"\n value=\"1\"\n checked={filter?._private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _private: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"private\">\n 民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public_private\"\n value=\"1\"\n checked={filter?._public_private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public_private: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"public_private\">\n 公設民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public\"\n value=\"1\"\n checked={filter?._public}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"public\">\n 公営\n </Label>\n </div>\n </div>\n </div>\n </div>\n <div className=\"my-3 w-100 d-flex flex-row justify-content-center\">\n <div\n style={{\n background: '#F2F2F2',\n fontSize: '12px',\n color: '#555252',\n height: '32px',\n }}\n className=\"w-100 d-flex flex-row justify-content-center align-items-center\">\n 施設種別\n </div>\n </div>\n <div className=\"px-4\">\n <div className=\"my-3\">\n <div className=\"d-flex justify-content-start flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"all-check\"\n checked={false}\n onChange={({ target: { checked } }) => {\n if (checked) {\n changeFilter({\n ho: true,\n yo: true,\n ko: true,\n ko_ho: true,\n ko_yo: true,\n ko_yoho: true,\n ko_sairyo: true,\n shokibo: true,\n shokibo_a: true,\n shokibo_b: true,\n shokibo_c: true,\n jigyosho: true,\n jigyosho_a: true,\n jigyosho_b: true,\n jigyosho_20over: true,\n kigyo_ho: true,\n other_type: true,\n });\n }\n }}\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"all-check\">\n 全てチェックする\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2 ms-5\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"all-uncheck\"\n checked={false}\n onChange={({ target: { checked } }) => {\n if (checked) {\n changeFilter({\n ho: false,\n yo: false,\n ko: false,\n ko_ho: false,\n ko_yo: false,\n ko_yoho: false,\n ko_sairyo: false,\n shokibo: false,\n shokibo_a: false,\n shokibo_b: false,\n shokibo_c: false,\n jigyosho: false,\n jigyosho_a: false,\n jigyosho_b: false,\n jigyosho_20over: false,\n kigyo_ho: false,\n other_type: false,\n });\n }\n }}\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"all-uncheck\">\n チェックを全て外す\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex justify-content-start flex-column\">\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ho\"\n value=\"1\"\n checked={filter?.ho}\n onChange={({ target: { checked } }) =>\n changeFilter({ ho: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ho\">\n 保育所\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"yo\"\n value=\"1\"\n checked={filter?.yo}\n onChange={({ target: { checked } }) =>\n changeFilter({ yo: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"yo\">\n 幼稚園\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko\"\n value=\"1\"\n checked={filter?.ko}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ko: checked,\n ko_ho: checked,\n ko_yo: checked,\n ko_yoho: checked,\n ko_sairyo: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko\">\n 認定こども園\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-ho\"\n value=\"1\"\n checked={filter?.ko_ho}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_ho: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko-ho\">\n 保育所型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-yo\"\n value=\"1\"\n checked={filter?.ko_yo}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_yo: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko-yo\">\n 幼稚園型\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-yoho\"\n value=\"1\"\n checked={filter?.ko_yoho}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_yoho: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"ko-yoho\">\n 幼保連携型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-sairyo\"\n value=\"1\"\n checked={filter?.ko_sairyo}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_sairyo: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"ko-sairyo\">\n 地方裁量型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo\"\n value=\"1\"\n checked={filter?.shokibo}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo: checked,\n shokibo_a: checked,\n shokibo_b: checked,\n shokibo_c: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"shokibo\">\n 小規模保育所\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo-a\"\n value=\"1\"\n checked={filter?.shokibo_a}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo_a: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shokibo-a\">\n A型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo-c\"\n value=\"1\"\n checked={filter?.shokibo_c}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo_c: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shokibo-c\">\n C型\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo-b\"\n value=\"1\"\n checked={filter?.shokibo_b}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo_b: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shokibo-b\">\n B型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho\"\n value=\"1\"\n checked={filter?.jigyosho}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho: checked,\n jigyosho_a: checked,\n jigyosho_b: checked,\n jigyosho_20over: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"jigyosho\">\n 事業所内保育\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho-a\"\n value=\"1\"\n checked={filter?.jigyosho_a}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho_a: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"jigyosho-a\">\n A型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho-20over\"\n value=\"1\"\n checked={filter?.jigyosho_20over}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho_20over: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"jigyosho-20over\">\n 20名以上\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho-b\"\n value=\"1\"\n checked={filter?.jigyosho_b}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho_b: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"jigyosho-b\">\n B型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"kigyo_ho\"\n value=\"1\"\n checked={filter?.kigyo_ho}\n onChange={({ target: { checked } }) =>\n changeFilter({ kigyo_ho: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"kigyo_ho\">\n 企業主導型保育所\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"other\"\n value=\"1\"\n checked={filter?.other_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n other_type: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"other\">\n その他\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSubmit();\n }}\n />\n </div>\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default FacilitySearch;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport FacilityRecruitmentResultList from '../../../../../components/ResultList/FacilityRecruitmentResultList';\nimport StudentFooter from '../../../../../components/Footers/StudentFooter';\nimport { paramsToObject } from '../../../../../../utils/common';\n\nconst Result = ({ facilities, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '施設検索',\n },\n {\n text: '施設検索結果',\n },\n ];\n\n const [filter, setFilter] = useState({});\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n setFilter({\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : null,\n city_code: r.city_code ? r.city_code : null,\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: r.ho === 'true',\n yo: r.yo === 'true',\n ko: r.ko === 'true',\n ko_ho: r.ko_ho === 'true',\n ko_yo: r.ko_yo === 'true',\n ko_yoho: r.ko_yoho === 'true',\n ko_sairyo: r.ko_sairyo === 'true',\n shokibo: r.shokibo === 'true',\n shokibo_a: r.shokibo_a === 'true',\n shokibo_b: r.shokibo_b === 'true',\n shokibo_c: r.shokibo_c === 'true',\n jigyosho: r.jigyosho === 'true',\n jigyosho_a: r.jigyosho_a === 'true',\n jigyosho_b: r.jigyosho_b === 'true',\n jigyosho_20over: r.jigyosho_20over === 'true',\n kigyo_ho: r.kigyo_ho === 'true',\n jidokan: r.jidokan === 'true',\n after_school_club: r.after_school_club === 'true',\n other_type: r.other_type === 'true',\n });\n }, []);\n\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/facility_search?${p}`;\n };\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 施設検索結果\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nResult.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default Result;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport FacilityRecruitmentResultList from '../../../../components/ResultList/FacilityRecruitmentResultList';\n\nconst LatestList = ({ facilities, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人検索',\n },\n {\n text: '最新一覧(幼保)',\n },\n ];\n\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 最新一覧(幼保)\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nLatestList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default LatestList;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { paramsToObject } from '../../../../../../utils/common';\nimport Content from '../../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport CorporateRecruitmentResultList from '../../../../../components/ResultList/CorporateRecruitmentResultList';\nimport StudentFooter from '../../../../../components/./Footers/StudentFooter';\nimport PropTypes from 'prop-types';\n\nconst Result = ({ corporates, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人検索',\n },\n {\n text: '法人検索',\n },\n {\n text: '法人検索結果',\n },\n ];\n\n const [filter, setFilter] = useState({});\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n setFilter({\n name: r.name ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n school: r.school === 'true',\n municipality: r.municipality === 'true',\n social_welfare: r.social_welfare === 'true',\n npo: r.npo === 'true',\n ltd: r.ltd === 'true',\n religious: r.religious === 'true',\n limited_corporate: r.limited_corporate === 'true',\n });\n }, []);\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/type_facility_corporate_search?${p}`;\n };\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 法人検索結果\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <CorporateRecruitmentResultList\n corporates={corporates}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\nResult.propTypes = {\n corporates: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default Result;\n","import React, { createRef, useEffect } from 'react';\nimport { paramsToObject } from '../../../../../../utils/common';\nimport { fetchCities } from '../../../../../../api/common';\nimport styled from 'styled-components';\nimport Content from '../../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PinkButton from '../../../../../components/Buttons/PinkButton';\nimport StudentFooter from '../../../../../components/./Footers/StudentFooter';\nimport { useSearch } from './hooks/useSearch';\n\nconst Label = styled.label`\n font-size: 12px;\n`;\n\nconst Search = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人情報',\n },\n {\n text: '法人から探す(施設)',\n },\n ];\n\n const {\n // store\n filter,\n // actions\n initialize,\n changeFilter,\n searchFilter,\n } = useSearch();\n\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n filter: {\n name: r.name ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n school: r.school === 'true',\n municipality: r.municipality === 'true',\n social_welfare: r.social_welfare === 'true',\n npo: r.npo === 'true',\n ltd: r.ltd === 'true',\n religious: r.religious === 'true',\n limited_corporate: r.limited_corporate === 'true',\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n\n const ref = createRef();\n\n const onSubmit = () => {\n return searchFilter();\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"m-3 ms-4\">法人から探す(施設)</h6>\n <div className=\"px-4\">\n <div className=\"mb-2\" ref={ref}>\n <Label>法人名</Label>\n <input\n type=\"text\"\n className=\"form-control\"\n value={filter?.name}\n onChange={({ target: { value } }) =>\n changeFilter({ name: value })\n }\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"recruitmentSubmitted\"\n value=\"1\"\n checked={filter?.recruitmentSubmitted}\n onChange={({ target: { checked } }) =>\n changeFilter({\n recruitmentSubmitted: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"recruitmentSubmitted\">\n 求人情報あり\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasFacilityTourApplicant\"\n value=\"1\"\n checked={filter?.hasFacilityTourApplicant}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasFacilityTourApplicant: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"hasFacilityTourApplicant\">\n ENMAPから見学受付中\n </Label>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n {/*<div className=\"my-3 d-flex flex-row\">*/}\n {/* <div className=\"form-check form-check-inline d-flex align-items-center\">*/}\n {/* <input*/}\n {/* className=\"form-check-input mb-1\"*/}\n {/* type=\"checkbox\"*/}\n {/* id=\"hasComment\"*/}\n {/* value=\"1\"*/}\n {/* checked={filter?.hasComment}*/}\n {/* onChange={({ target: { checked } }) =>*/}\n {/* changeFilter({*/}\n {/* hasComment: checked,*/}\n {/* })*/}\n {/* }*/}\n {/* />*/}\n {/* <Label className=\"form-check-label ps-1\" htmlFor=\"hasComment\">*/}\n {/* 学校がコメントしている施設*/}\n {/* </Label>*/}\n {/* </div>*/}\n {/*</div>*/}\n {/*<div className=\"my-3\">*/}\n {/* <hr />*/}\n {/*</div>*/}\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start flex-column\">\n <div className=\"d-flex flex-row justify-content-start mb-2\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"school\"\n value=\"1\"\n checked={filter?.school}\n onChange={({ target: { checked } }) =>\n changeFilter({\n school: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"school\">\n 学校法人\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"municipality\"\n value=\"1\"\n checked={filter?.municipality}\n onChange={({ target: { checked } }) =>\n changeFilter({\n municipality: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"municipality\">\n 自治体\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row justify-content-start mb-2\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"social_welfare\"\n value=\"1\"\n checked={filter?.social_welfare}\n onChange={({ target: { checked } }) =>\n changeFilter({\n social_welfare: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"social_welfare\">\n 社会福祉法人\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"npo\"\n value=\"1\"\n checked={filter?.npo}\n onChange={({ target: { checked } }) =>\n changeFilter({\n npo: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"npo\">\n NPO法人\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row justify-content-start mb-2\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ltd\"\n value=\"1\"\n checked={filter?.ltd}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ltd: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ltd\">\n 株式会社\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"religious\"\n value=\"1\"\n checked={filter?.religious}\n onChange={({ target: { checked } }) =>\n changeFilter({\n religious: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"religious\">\n 宗教法人\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center col-6\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"limited_corporate\"\n value=\"1\"\n checked={filter?.limited_corporate}\n onChange={({ target: { checked } }) =>\n changeFilter({\n limited_corporate: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"limited_corporate\">\n その他法人\n </Label>\n </div>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSubmit();\n }}\n />\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Search;\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'STUDENT_RECRUITMENT_SCHOOL_TYPE_FACILITY_CORPORATE_SEARCH_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n filter: {},\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSearch = () => {\n const [{ filter, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const changeFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const searchFilter = useCallback(async () => {\n mask();\n try {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/type_facility_corporate_search/results?${p}`;\n } finally {\n unmask();\n }\n }, [filter]);\n\n return {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n };\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport StudentFooter from '../../../../../components/./Footers/StudentFooter';\nimport FacilityRecruitmentResultList from '../../../../../components/ResultList/FacilityRecruitmentResultList';\n\nconst LatestList = ({ facilities, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人検索',\n },\n {\n text: '最新一覧(施設)',\n },\n ];\n\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 最新一覧(施設)\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nLatestList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default LatestList;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport FacilityRecruitmentResultList from '../../../../../components/ResultList/FacilityRecruitmentResultList';\nimport StudentFooter from '../../../../../components/./Footers/StudentFooter';\nimport { paramsToObject } from '../../../../../../utils/common';\n\nconst Result = ({ facilities, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '施設検索',\n },\n {\n text: '施設検索結果',\n },\n ];\n const [filter, setFilter] = useState({});\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n\n setFilter({\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: false,\n yo: false,\n ko: false,\n ko_ho: false,\n ko_yo: false,\n ko_yoho: false,\n ko_sairyo: false,\n shokibo: false,\n shokibo_a: false,\n shokibo_b: false,\n shokibo_c: false,\n jigyosho: false,\n jigyosho_a: false,\n jigyosho_b: false,\n jigyosho_20over: false,\n kigyo_ho: false,\n other_type: false,\n jidokan: r.jidokan === 'true',\n after_school_club: r.after_school_club === 'true',\n after_school_day_service: r.after_school_day_service === 'true',\n infant_home: r.infant_home === 'true',\n child_home: r.child_home === 'true',\n shogai: r.shogai === 'true',\n shogai_child_facility_welfare_type:\n r.shogai_child_facility_welfare_type === 'true',\n shogai_child_facility_medical_type:\n r.shogai_child_facility_medical_type === 'true',\n child_facility: r.child_facility === 'true',\n child_facility_welfare_type: r.child_facility_welfare_type === 'true',\n child_facility_medical_type: r.child_facility_medical_type === 'true',\n child_psychotherapeutic_facility:\n r.child_psychotherapeutic_facility === 'true',\n child_independence_facility: r.child_independence_facility === 'true',\n child_family_support_facility: r.child_family_support_facility === 'true',\n midwifery_facility: r.midwifery_facility === 'true',\n disability_support_facility: r.disability_support_facility === 'true',\n employment_support_facility: r.employment_support_facility === 'true',\n not_en: r.not_en === 'true',\n });\n }, []);\n\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/type_facility_search?${p}`;\n };\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 施設検索結果\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nResult.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default Result;\n","import React, { createRef, useEffect, useState } from 'react';\nimport { useSearch } from './hooks/useSearch';\nimport { paramsToObject } from '../../../../../../utils/common';\nimport { fetchCities } from '../../../../../../api/common';\nimport Content from '../../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PrefectureSelect from '../../../../../components/PrefectureSelect/PrefectureSelect';\nimport CitySelect from '../../../../../components/CitySelect/CitySelect';\nimport PinkButton from '../../../../../components/Buttons/PinkButton';\nimport StudentFooter from '../../../../../components/./Footers/StudentFooter';\nimport styled from 'styled-components';\n\nconst Label = styled.label`\n font-size: 12px;\n`;\nconst BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人情報',\n },\n {\n text: '条件から探す(施設)',\n },\n];\nconst Search = () => {\n const {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeFilter,\n searchFilter,\n } = useSearch();\n\n const [cities, setCities] = useState([]);\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n\n initialize({\n filter: {\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: false,\n yo: false,\n ko: false,\n ko_ho: false,\n ko_yo: false,\n ko_yoho: false,\n ko_sairyo: false,\n shokibo: false,\n shokibo_a: false,\n shokibo_b: false,\n shokibo_c: false,\n jigyosho: false,\n jigyosho_a: false,\n jigyosho_b: false,\n jigyosho_20over: false,\n kigyo_ho: false,\n other_type: false,\n jidokan: r.jidokan === 'true',\n after_school_club: r.after_school_club === 'true',\n after_school_day_service: r.after_school_day_service === 'true',\n infant_home: r.infant_home === 'true',\n child_home: r.child_home === 'true',\n shogai: r.shogai === 'true',\n shogai_child_facility_welfare_type:\n r.shogai_child_facility_welfare_type === 'true',\n shogai_child_facility_medical_type:\n r.shogai_child_facility_medical_type === 'true',\n child_facility: r.child_facility === 'true',\n child_facility_welfare_type: r.child_facility_welfare_type === 'true',\n child_facility_medical_type: r.child_facility_medical_type === 'true',\n child_psychotherapeutic_facility:\n r.child_psychotherapeutic_facility === 'true',\n child_independence_facility: r.child_independence_facility === 'true',\n child_family_support_facility:\n r.child_family_support_facility === 'true',\n midwifery_facility: r.midwifery_facility === 'true',\n disability_support_facility: r.disability_support_facility === 'true',\n employment_support_facility: r.employment_support_facility === 'true',\n not_en: r.not_en === 'true',\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n\n const ref = createRef();\n\n const onSubmit = () => {\n return searchFilter();\n };\n\n useEffect(() => {\n if (filter?.shogai) {\n const someUnchecked = Object.keys(filter)\n .filter((key) => key.includes('shogai_'))\n .some((key) => !filter[key]);\n if (someUnchecked) {\n changeFilter({\n shogai: false,\n });\n }\n }\n if (filter?.child_facility) {\n const someUnchecked = Object.keys(filter)\n .filter((key) => key.includes('child_facility_'))\n .some((key) => !filter[key]);\n if (someUnchecked) {\n changeFilter({\n child_facility: false,\n });\n }\n }\n }, [filter]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"m-3 ms-4\">条件から探す(施設)</h6>\n <div>\n <div className=\"px-4\">\n <div className=\"mb-2\" ref={ref}>\n <Label>施設名</Label>\n <input\n type=\"text\"\n className=\"form-control\"\n value={filter?.name}\n onChange={({ target: { value } }) =>\n changeFilter({ name: value })\n }\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"mb-2\" ref={ref}>\n <PrefectureSelect\n label=\"都道府県\"\n selectedValue={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n pref_code: value ? Number(value) : null,\n city_code: null,\n })\n }\n />\n </div>\n <div className=\"mb-2\">\n <CitySelect\n label=\"市区町村\"\n selectedValue={filter?.city_code}\n prefecture={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n city_code: value,\n })\n }\n defaultCities={cities}\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"recruitmentSubmitted\"\n value=\"1\"\n checked={filter?.recruitmentSubmitted}\n onChange={({ target: { checked } }) =>\n changeFilter({\n recruitmentSubmitted: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"recruitmentSubmitted\">\n 求人情報あり\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasFacilityTourApplicant\"\n value=\"1\"\n checked={filter?.hasFacilityTourApplicant}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasFacilityTourApplicant: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"hasFacilityTourApplicant\">\n ENMAPから見学受付中\n </Label>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasComment\"\n value=\"1\"\n checked={filter?.hasComment}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasComment: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"hasComment\">\n 学校がコメントしている施設\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ninka\"\n value=\"1\"\n checked={filter?.ninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ninka\">\n 認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"municipality\"\n value=\"1\"\n checked={filter?.municipality}\n onChange={({ target: { checked } }) =>\n changeFilter({\n municipality: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"municipality\">\n 自治体独自認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"muninka\"\n value=\"1\"\n checked={filter?.muninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n muninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"muninka\">\n 認可外\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"private\"\n value=\"1\"\n checked={filter?._private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _private: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"private\">\n 民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public_private\"\n value=\"1\"\n checked={filter?._public_private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public_private: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"public_private\">\n 公設民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public\"\n value=\"1\"\n checked={filter?._public}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"public\">\n 公営\n </Label>\n </div>\n </div>\n </div>\n </div>\n <div className=\"my-3 w-100 d-flex flex-row justify-content-center\">\n <div\n style={{\n background: '#F2F2F2',\n fontSize: '12px',\n color: '#555252',\n height: '32px',\n }}\n className=\"w-100 d-flex flex-row justify-content-center align-items-center\">\n 施設種別\n </div>\n </div>\n <div className=\"px-4\">\n <div className=\"my-3\">\n <div className=\"d-flex justify-content-start flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"all-check\"\n checked={false}\n onChange={({ target: { checked } }) => {\n if (checked) {\n changeFilter({\n jidokan: true,\n after_school_club: true,\n after_school_day_service: true,\n infant_home: true,\n child_home: true,\n shogai: true,\n shogai_child_facility_welfare_type: true,\n shogai_child_facility_medical_type: true,\n child_facility: true,\n child_facility_welfare_type: true,\n child_facility_medical_type: true,\n child_psychotherapeutic_facility: true,\n child_independence_facility: true,\n child_family_support_facility: true,\n midwifery_facility: true,\n disability_support_facility: true,\n employment_support_facility: true,\n not_en: true,\n });\n }\n }}\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"all-check\">\n 全てチェックする\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2 ms-5\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"all-uncheck\"\n checked={false}\n onChange={({ target: { checked } }) => {\n if (checked) {\n changeFilter({\n jidokan: false,\n after_school_club: false,\n after_school_day_service: false,\n infant_home: false,\n child_home: false,\n shogai: false,\n shogai_child_facility_welfare_type: false,\n shogai_child_facility_medical_type: false,\n child_facility: false,\n child_facility_welfare_type: false,\n child_facility_medical_type: false,\n child_psychotherapeutic_facility: false,\n child_independence_facility: false,\n child_family_support_facility: false,\n midwifery_facility: false,\n disability_support_facility: false,\n employment_support_facility: false,\n not_en: false,\n });\n }\n }}\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"all-uncheck\">\n チェックを全て外す\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex justify-content-start flex-column\">\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jidokan\"\n value=\"1\"\n checked={filter?.jidokan}\n onChange={({ target: { checked } }) =>\n changeFilter({ jidokan: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"jidokan\">\n 児童館\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"after_school_club\"\n value=\"1\"\n checked={filter?.after_school_club}\n onChange={({ target: { checked } }) =>\n changeFilter({ after_school_club: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"after_school_club\">\n 放課後児童クラブ\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"after_school_day_service\"\n value=\"1\"\n checked={filter?.after_school_day_service}\n onChange={({ target: { checked } }) =>\n changeFilter({ after_school_day_service: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"after_school_day_service\">\n 放課後等デイサービス\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"infant_home\"\n value=\"1\"\n checked={filter?.infant_home}\n onChange={({ target: { checked } }) =>\n changeFilter({ infant_home: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"infant_home\">\n 乳児院\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_home\"\n value=\"1\"\n checked={filter?.child_home}\n onChange={({ target: { checked } }) =>\n changeFilter({ child_home: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"child_home\">\n 児童養護施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko\"\n value=\"1\"\n checked={filter?.shogai}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shogai: checked,\n shogai_child_facility_welfare_type: checked,\n shogai_child_facility_medical_type: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko\">\n 障害児入所施設\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shogai_child_facility_welfare_type\"\n value=\"1\"\n checked={filter?.shogai_child_facility_welfare_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shogai_child_facility_welfare_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shogai_child_facility_welfare_type\">\n 福祉型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shogai_child_facility_medical_type\"\n value=\"1\"\n checked={filter?.shogai_child_facility_medical_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shogai_child_facility_medical_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shogai_child_facility_medical_type\">\n 医療型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_facility\"\n value=\"1\"\n checked={filter?.child_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({\n child_facility: checked,\n child_facility_welfare_type: checked,\n child_facility_medical_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_facility\">\n 児童発達支援\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_facility_welfare_type\"\n value=\"1\"\n checked={filter?.child_facility_welfare_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n child_facility_welfare_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_facility_welfare_type\">\n 福祉型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_facility_medical_type\"\n value=\"1\"\n checked={filter?.child_facility_medical_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n child_facility_medical_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_facility_medical_type\">\n 医療型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_psychotherapeutic_facility\"\n value=\"1\"\n checked={filter?.child_psychotherapeutic_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({\n child_psychotherapeutic_facility: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_psychotherapeutic_facility\">\n 児童心理治療施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_independence_facility\"\n value=\"1\"\n checked={filter?.child_independence_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ child_independence_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_independence_facility\">\n 児童自立支援施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_family_support_facility\"\n value=\"1\"\n checked={filter?.child_family_support_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ child_family_support_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_family_support_facility\">\n 児童家庭支援センター\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"midwifery_facility\"\n value=\"1\"\n checked={filter?.midwifery_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ midwifery_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"midwifery_facility\">\n 助産施設\n </Label>\n </div>\n\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"disability_support_facility\"\n value=\"1\"\n checked={filter?.disability_support_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ disability_support_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"disability_support_facility\">\n 障害者支援施設\n </Label>\n </div>\n\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"employment_support_facility\"\n value=\"1\"\n checked={filter?.employment_support_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ employment_support_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"employment_support_facility\">\n 就労支援施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"not_en\"\n value=\"1\"\n checked={filter?.not_en}\n onChange={({ target: { checked } }) =>\n changeFilter({\n not_en: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"not_en\">\n その他\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSubmit();\n }}\n />\n </div>\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Search;\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'STUDENT_RECRUITMENT_SCHOOL_TYPE_FACILITY_SEARCH_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n filter: {},\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSearch = () => {\n const [{ filter, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const changeFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const searchFilter = useCallback(async () => {\n mask();\n try {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/recruitments/schools/type_facility_search/results?${p}`;\n } finally {\n unmask();\n }\n }, [filter]);\n\n return {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n };\n};\n","import React from 'react';\nimport EnmapLogoPink from '../../../components/Logo/EnmapLogoPink';\nimport PinkButton from '../../../components/Buttons/PinkButton';\n\nconst Complete = ({ school }) => {\n return (\n <div className=\"d-flex justify-content-center text-center flex-column\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div style={{ marginTop: '20px', textDecoration: 'underline' }}>\n {school.name}\n </div>\n <div className=\"mt-2\">\n <h1 className=\"fw-bold\">登録完了!</h1>\n </div>\n <div\n className=\"w-100 d-flex justify-content-center align-items-center fw-bold mt-3 mb-4\"\n style={{\n background: '#FF9999',\n height: '61px',\n color: 'white',\n fontSize: '14px',\n }}>\n 登録メールアドレスに、アクセス情報を送信しました\n </div>\n <div\n className=\"d-flex flex-column align-items-start px-5 w-100 align-items-md-center\"\n style={{ fontSize: '14px' }}>\n <div><メールが到着しない場合></div>\n <div className=\"d-flex flex-column flex-md-row align-items-start w-100 align-items-md-center justify-content-md-center\">\n <div>①迷惑メールフォルダに到着していないか確認</div>\n <div className=\"ms-3 ms-md-0\">して下さい</div>\n </div>\n <div className=\"d-flex flex-column flex-md-row align-items-start w-100 align-items-md-center justify-content-md-center\">\n <div>②受信拒否設定されている可能性があるため、</div>\n <div className=\"ms-3 ms-md-0\">\n [ @enmap.jp ]を受信できるようメール設定を\n </div>\n <div className=\"ms-3 ms-md-0\">確認して下さい</div>\n </div>\n <div className=\"d-flex flex-column flex-md-row align-items-start w-100 align-items-md-center justify-content-md-center\">\n <div>③改めて認証を行ってください</div>\n </div>\n </div>\n\n <div className=\"mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n label=\"認証画面に戻る\"\n textFontSize={20}\n height={72}\n onClick={() => {\n location.href = `/students/${school.custom_url_uuid}/registrations/step1`;\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default Complete;\n","import React from 'react';\nimport StudentLoadingOverlay from '../../../components/LoadingOverlay/StudentLoadingOverlay';\nimport EnmapLogoPink from '../../../components/Logo/EnmapLogoPink';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport BasicFixedFooter from '../../../components/Footers/BasicFixedFooter';\nimport { useStep1 } from './hooks/useStep1';\n\nconst Step1 = ({ school }) => {\n const {\n //store\n isLoading,\n error,\n errors: formError,\n // actions\n handleSubmit,\n register,\n onSubmit,\n } = useStep1();\n\n if (isLoading) {\n return <StudentLoadingOverlay loading={isLoading} />;\n }\n\n return (\n <>\n <form\n onSubmit={handleSubmit((data) =>\n onSubmit(school.custom_url_uuid, data),\n )}>\n <div className=\"d-flex justify-content-center text-center flex-column px-3\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div style={{ marginTop: '20px', textDecoration: 'underline' }}>\n {school.name}\n </div>\n <div className=\"mt-2\">\n <h1 className=\"fw-bold\">学生認証</h1>\n </div>\n {error && (\n <div\n className=\"justify-content-center d-flex w-100 my-1\"\n style={{ fontSize: '14px' }}>\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n <div>\n <p className=\"text-center\" style={{ fontSize: '14px' }}>\n 学籍番号を入力してください。\n </p>\n </div>\n <div className=\"px-3\">\n <div className=\"form-group w-100\">\n <div className=\"d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label\n htmlFor=\"student_no\"\n className=\"fw-bold\"\n style={{ fontSize: '14px' }}>\n 学籍番号\n </label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('student_no', {\n required: '学籍番号は必須です',\n })}\n autoComplete=\"student_no\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"text\"\n disabled={isLoading}\n id=\"student_no\"\n />\n </div>\n <div className=\"text-danger mt-2 d-flex align-items-start w-100\">\n {formError?.student_no?.message}\n </div>\n </div>\n </div>\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n disabled={isLoading}\n label=\"次に進む\"\n textFontSize={20}\n height={72}\n />\n </div>\n </div>\n </div>\n </form>\n\n <BasicFixedFooter />\n </>\n );\n};\n\nexport default Step1;\n","import React from 'react';\nimport EnmapLogoPink from '../../../components/Logo/EnmapLogoPink';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport { useStep2 } from './hooks/useStep2';\nimport StudentLoadingOverlay from '../../../components/LoadingOverlay/StudentLoadingOverlay';\n\nconst Step2 = ({ school, studentNo, graduationYear }) => {\n const {\n //store\n isLoading,\n error,\n errors: formError,\n // actions\n handleSubmit,\n register,\n onSubmit,\n } = useStep2();\n\n if (isLoading) {\n return <StudentLoadingOverlay loading={isLoading} />;\n }\n\n return (\n <form\n onSubmit={handleSubmit((data) => onSubmit(school.custom_url_uuid, data))}>\n <div className=\"d-flex justify-content-center text-center flex-column px-3\">\n <div className=\"mt-5\">\n <EnmapLogoPink width={261} />\n </div>\n <div style={{ marginTop: '20px', textDecoration: 'underline' }}>\n {school.name}\n </div>\n <div className=\"mt-2\">\n <h1 className=\"fw-bold\">メールアドレス登録</h1>\n </div>\n {error && (\n <div\n className=\"justify-content-center d-flex w-100 my-1\"\n style={{ fontSize: '14px' }}>\n <div className=\"text-danger\">{error}</div>\n </div>\n )}\n <div className=\"d-flex flex-column w-100 align-items-center\">\n <div style={{ width: '80%', fontSize: '14px' }}>\n <div className=\"d-flex flex-row w-100 justify-content-start justify-content-md-center\">\n 学籍番号<span className=\"d-md-none\">  </span>:{studentNo}\n </div>\n <div className=\"d-flex flex-row w-100 justify-content-start justify-content-md-center\">\n 卒業予定年度:{graduationYear}\n </div>\n </div>\n </div>\n <div className=\"py-3 px-3\">\n <div className=\"form-group w-100\">\n <div className=\"d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label\n htmlFor=\"email\"\n className=\"fw-bold\"\n style={{ fontSize: '14px' }}>\n メールアドレス\n </label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email', {\n required: 'メールアドレスは必須です',\n })}\n autoComplete=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n type=\"email\"\n disabled={isLoading}\n id=\"email\"\n />\n </div>\n <div className=\"text-danger mt-2 d-flex align-items-start w-100\">\n {formError?.email?.message}\n </div>\n </div>\n </div>\n <div className=\"form-group mt-3 w-100\">\n <div className=\"d-flex flex-column\">\n <div\n className=\"d-flex align-items-center\"\n style={{ minWidth: '100px' }}>\n <label\n htmlFor=\"email_confirmation\"\n className=\"fw-bold\"\n style={{ fontSize: '14px' }}>\n 確認用メールアドレス\n </label>\n </div>\n <div className=\"d-flex align-items-center w-100\">\n <input\n {...register('email_confirmation', {\n required: '確認用メールアドレスは必須です',\n })}\n autoComplete=\"email_confirmation\"\n type=\"email\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n disabled={isLoading}\n id=\"email_confirmation\"\n />\n </div>\n <div className=\"text-danger mt-2 d-flex align-items-start w-100\">\n {formError?.email_confirmation?.message}\n </div>\n </div>\n </div>\n <div className=\"form-group mt-5 d-flex justify-content-center\">\n <PinkButton\n style={{\n borderRadius: '63px',\n width: '100%',\n }}\n labelClassName=\"justify-content-center d-flex w-100\"\n disabled={isLoading}\n label=\"次に進む\"\n textFontSize={20}\n height={72}\n />\n </div>\n </div>\n </div>\n </form>\n );\n};\n\nexport default Step2;\n","import { useForm } from 'react-hook-form';\nimport { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'STUDENT_REGISTRATION_STEP1_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n};\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\nexport const useStep1 = () => {\n const [{ isLoading, error }, dispatch] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n student_no: '',\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const onSubmit = useCallback(\n async (uuid, data) => {\n mask();\n try {\n const res = await HttpRequest.post(\n `/api/students/${uuid}/registrations/step1`,\n data,\n );\n window.location.href = `/students/${uuid}/registrations/step2`;\n } catch (e) {\n // 404\n if (e.response?.status === 404) {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: '対象の学生情報が見つかりません' },\n });\n }\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n error,\n errors,\n // actions\n register,\n handleSubmit,\n watch,\n control,\n onSubmit,\n };\n};\n","import { useForm } from 'react-hook-form';\nimport { useCallback, useReducer } from 'react';\nimport HttpRequest from '../../../../../utils/HttpRequest';\n\nconst P = 'STUDENT_REGISTRATION_STEP2_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n isLoading: false,\n error: '',\n};\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\nexport const useStep2 = () => {\n const [{ isLoading, error }, dispatch] = useReducer(reducer, initialState);\n const {\n register,\n formState: { errors },\n handleSubmit,\n watch,\n control,\n } = useForm({\n mode: 'all',\n defaultValues: {\n email: null,\n confirmation_email: null,\n },\n });\n\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const onSubmit = useCallback(\n async (uuid, data) => {\n mask();\n try {\n const res = await HttpRequest.post(\n `/api/students/${uuid}/registrations/step2`,\n data,\n );\n window.location.href = `/students/${uuid}/registrations/complete`;\n } catch (e) {\n if (e.response.status === 400) {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: '入力されたメールアドレスが一致しません' },\n });\n } else {\n dispatch({\n type: CHANGE_STATE,\n payload: { error: 'エラーが発生しました' },\n });\n }\n unmask();\n }\n },\n [mask, unmask],\n );\n\n return {\n // store\n isLoading,\n error,\n errors,\n // actions\n register,\n handleSubmit,\n watch,\n control,\n onSubmit,\n };\n};\n","import React, { useEffect, useState } from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport { useActivityReportCreate } from '../../../../modules/Student/Report/activityReportCreateModule';\nimport { Form } from './components';\nimport { FacilityTypeSelect } from '../components';\n\nconst Create = ({ facility, corporate, corporation }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n href: '/student/reports',\n },\n {\n text: '活動報告',\n },\n ];\n\n const {\n // store\n errors,\n // actions\n save,\n register,\n handleSubmit,\n watch,\n setValue,\n } = useActivityReportCreate();\n const [isOpenSelectFacilityType, setIsOpenSelectFacilityType] =\n useState(false);\n\n useEffect(() => {\n if (corporation?.name) {\n setValue('corporate_name', corporation.name);\n }\n if (corporation?.legal_person && corporation?.legal_person_label) {\n setValue('corporate_type', corporation.legal_person_label);\n }\n if (corporation?.address) {\n setValue('corporate_address', corporation.address);\n }\n if (corporate?.name) {\n setValue('corporate_name', corporate.name);\n }\n if (corporate?.legal_person && corporate?.legal_person_label) {\n setValue('corporate_type', corporate.legal_person_label);\n }\n if (corporate?.address) {\n setValue('corporate_address', corporate.address);\n }\n if (facility?.name) {\n setValue('facility_name', facility.name);\n }\n if (facility?.facility_type) {\n setValue('facility_type', facility.facility_type);\n }\n if (facility?.address) {\n setValue('facility_address', facility.address);\n }\n }, [facility, corporate, corporation]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n {isOpenSelectFacilityType ? (\n <FacilityTypeSelect\n onClose={() => setIsOpenSelectFacilityType(false)}\n redirect=\"activity_report\"\n />\n ) : (\n <Form\n handleSubmit={handleSubmit}\n onSave={save}\n register={register}\n watch={watch}\n errors={errors}\n onSelectFacility={() => setIsOpenSelectFacilityType(true)}\n />\n )}\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Create;\n","import React from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\n\nconst Success = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n href: '/student/reports',\n },\n {\n text: '送信',\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"p-3 ps-4 p-sm-0 d-sm-flex w-100 justify-content-sm-center\">\n 送信\n </h6>\n <div\n className=\"w-100 d-flex justify-content-start ps-5 ps-sm-0 d-sm-flex w-100 justify-content-sm-center\"\n style={{ fontSize: '12px' }}>\n 送信しました\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Success;\n","import React from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\n\nconst SuccessDraft = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n href: '/student/reports',\n },\n {\n text: '一時保存',\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"p-3 ps-4 p-sm-0 d-sm-flex w-100 justify-content-sm-center\">\n 一時保存\n </h6>\n <div\n className=\"w-100 d-flex justify-content-start ps-5 ps-sm-0 d-sm-flex w-100 justify-content-sm-center\"\n style={{ fontSize: '12px' }}>\n 一時保存しました\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default SuccessDraft;\n","import React from 'react';\nimport Banner from '../../../../../components/Title/Banner';\nimport PinkButton from '../../../../../components/Buttons/PinkButton';\nimport Divider from '../../../../../components/Divider/Divider';\nimport { PageTitle, DescriptionField } from '../../components';\n\nexport const Form = ({\n handleSubmit,\n register,\n onSave,\n watch,\n errors,\n onSelectFacility,\n}) => {\n return (\n <div>\n <PageTitle className=\"pt-3 ps-3\">活動報告</PageTitle>\n <div className=\"p-3\">\n <DescriptionField className=\"ps-2\">\n 施設(会社)見学などの報告を記入して下さい\n <br />\n ※ブックマークから登録も可能です\n </DescriptionField>\n </div>\n <form onSubmit={handleSubmit(onSave)}>\n <section className=\"py-3\">\n <div className=\"w-100 justify-content-start d-flex flex-column\">\n <section className=\"pb-3\">\n <div className=\"px-2 pt-4\">\n <Banner\n label=\"活動先の法人・施設の情報\"\n innerStyle={{ background: '#FFDEDE' }}\n />\n </div>\n <div className=\"px-4 pt-1\">\n <DescriptionField className=\"py-2\">\n ・活動先の法人や施設情報を登録・記入して下さい\n </DescriptionField>\n <div className=\"d-flex justify-content-center\">\n <PinkButton\n width={256}\n height={32}\n label=\"施設検索からカンタン登録\"\n textFontSize={16}\n labelClassName=\"w-100 fw-light\"\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n onSelectFacility();\n }}\n />\n </div>\n <div className=\"d-flex justify-content-center py-2\">\n <DescriptionField>\n ※ブックマークからも登録できます\n </DescriptionField>\n </div>\n </div>\n <div className=\"d-flex w-100 px-4 justify-content-center flex-column\">\n <div className=\"w-100 pb-2\">\n <input\n {...register('corporate_name')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"法人名を入力\"\n />\n </div>\n <div className=\"w-100 pb-2\">\n <input\n {...register('corporate_type')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"法人種別(学校法人・社会福祉法人等)を入力\"\n />\n </div>\n <div className=\"w-100 pb-2\">\n <input\n {...register('corporate_address')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"法人住所を入力\"\n />\n </div>\n <div className=\"w-100 pb-2\">\n <input\n {...register('facility_name')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"施設名を入力\"\n />\n </div>\n <div className=\"w-100 pb-2\">\n <input\n {...register('facility_type')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"施設種別(幼稚園・保育所等)を入力\"\n />\n </div>\n <div className=\"w-100\">\n <input\n {...register('facility_address')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"施設住所を入力\"\n />\n </div>\n </div>\n </section>\n <section>\n <div className=\"px-2\">\n <Banner\n label=\"活動内容\"\n innerStyle={{ background: '#FFDEDE' }}\n />\n </div>\n <div className=\"px-4 pt-1\">\n <DescriptionField className=\"py-2\">\n ・活動した内容を記載してください\n </DescriptionField>\n <textarea\n {...register('report_note', {\n required: '活動の内容を入力してください',\n })}\n name=\"report_note\"\n id=\"\"\n cols=\"30\"\n rows=\"10\"\n className=\"form-control\"\n placeholder=\"入力してください\"\n value={watch('report_note')}\n />\n </div>\n <div className=\"px-4\">\n <span className=\"text-danger\">\n {errors?.report_note?.message}\n </span>\n </div>\n </section>\n </div>\n </section>\n <Divider className=\"p-3\" />\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"送信\"\n textFontSize={16}\n labelClassName=\"w-100\"\n />\n </div>\n </form>\n </div>\n );\n};\n","import React from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Divider from '../../../../components/Divider/Divider';\nimport Banner from '../../../../components/Title/Banner';\nimport PinkButton from '../../../../components/Buttons/PinkButton';\nimport { useCareerHopeCreateModule } from '../../../../modules/Student/Report/careerHopeCreateModule';\nimport StudentLoadingOverlay from '../../../../components/LoadingOverlay/StudentLoadingOverlay';\nimport { CAREER_TYPE } from '../../../../../utils/constant';\n\nconst Create = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n href: '/student/reports',\n },\n {\n text: '進路希望届',\n },\n ];\n const {\n // store\n isLoading,\n errorMessage,\n errors,\n // actions\n save,\n register,\n handleSubmit,\n } = useCareerHopeCreateModule();\n\n return (\n <>\n <StudentLoadingOverlay loading={isLoading} />\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"p-3 ps-4 p-sm-0 d-sm-flex w-100 justify-content-sm-center\">\n 進路希望届\n </h6>\n <div className=\"d-flex w-100 justify-content-center flex-column\">\n <div\n className=\"w-100 d-flex justify-content-start ps-4 ps-sm-0 d-sm-flex w-100 justify-content-sm-center\"\n style={{ fontSize: '12px' }}>\n 希望進路を選択・記入してください\n </div>\n <Divider className=\"p-3 pb-2\" />\n <form onSubmit={handleSubmit(save)}>\n <section id=\"first\">\n <Banner\n label=\"第1希望\"\n maxWidth=\"400px\"\n innerStyle={{ background: '#FFDEDE' }}\n />\n <div className=\"w-100 justify-content-start d-flex pt-2 flex-column px-3\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・希望する進路を選択して下さい\n </div>\n <div\n className=\"w-100 h-100\"\n style={{ border: 'solid 1px #555252', fontSize: '12px' }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('firstCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"yo\"\n className=\"form-check-input me-1\"\n name=\"firstCareerHope.career_type\"\n value={CAREER_TYPE.YO}\n />\n <label htmlFor=\"yo\" className=\"form-check-label\">\n 幼稚園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('firstCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"corporate\"\n className=\"form-check-input me-1\"\n name=\"firstCareerHope.career_type\"\n value={CAREER_TYPE.CORPORATE}\n />\n <label htmlFor=\"corporate\" className=\"form-check-label\">\n 一般企業\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('firstCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"ho\"\n className=\"form-check-input me-1\"\n name=\"firstCareerHope.career_type\"\n value={CAREER_TYPE.HO}\n />\n <label htmlFor=\"ho\" className=\"form-check-label\">\n 保育園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('firstCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"higher\"\n className=\"form-check-input me-1\"\n name=\"firstCareerHope.career_type\"\n value={CAREER_TYPE.HIGHER}\n />\n <label htmlFor=\"higher\" className=\"form-check-label\">\n 進学(留学含)\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('firstCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"ko\"\n className=\"form-check-input me-1\"\n name=\"firstCareerHope.career_type\"\n value={CAREER_TYPE.KO}\n />\n <label htmlFor=\"ko\" className=\"form-check-label\">\n 認定こども園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('firstCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"other_facility\"\n className=\"form-check-input me-1\"\n name=\"firstCareerHope.career_type\"\n value={CAREER_TYPE.OTHER_FACILITY}\n />\n <label\n htmlFor=\"other_facility\"\n className=\"form-check-label\">\n その他施設\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6\">\n <input\n {...register('firstCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"not_fixed_or_other\"\n className=\"form-check-input me-1\"\n name=\"firstCareerHope.career_type\"\n value={CAREER_TYPE.NOT_FIXED_OR_OTHER}\n />\n <label\n htmlFor=\"not_fixed_or_other\"\n className=\"form-check-label\">\n 未定・上記以外\n </label>\n </div>\n <div className=\"col-6\" />\n </div>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.firstCareerHope?.career_type?.message}\n </span>\n </div>\n <div className=\"w-100 justify-content-start d-flex pt-2 flex-column px-3\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・施設就職の方は、希望の施設名や地域を入力して下さい\n </div>\n <textarea\n {...register(\n 'firstCareerHope.career_type_facility_remark_text',\n )}\n className=\"form-control\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n style={{ border: 'solid 1px #555252' }}\n placeholder=\"入力してください\"\n />\n </div>\n <div className=\"w-100 justify-content-start d-flex pt-2 flex-column px-3\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・施設就職以外の方は、現在の状況・希望を入力して下さい\n </div>\n <textarea\n {...register(\n 'firstCareerHope.career_type_general_remark_text',\n )}\n className=\"form-control\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n style={{ border: 'solid 1px #555252' }}\n placeholder=\"入力してください\"\n />\n </div>\n </section>\n <section id=\"second\" className=\"mt-4\">\n <Banner\n label=\"第2希望\"\n maxWidth=\"400px\"\n innerStyle={{ background: '#FFDEDE' }}\n />\n <div className=\"w-100 justify-content-start d-flex pt-2 flex-column px-3\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・希望する進路を選択して下さい\n </div>\n <div\n className=\"w-100 h-100\"\n style={{ border: 'solid 1px #555252', fontSize: '12px' }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('secondCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"yo_2\"\n className=\"form-check-input me-1\"\n name=\"secondCareerHope.career_type\"\n value={CAREER_TYPE.YO}\n />\n <label htmlFor=\"yo_2\" className=\"form-check-label\">\n 幼稚園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('secondCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"corporate_2\"\n className=\"form-check-input me-1\"\n name=\"secondCareerHope.career_type\"\n value={CAREER_TYPE.CORPORATE}\n />\n <label\n htmlFor=\"corporate_2\"\n className=\"form-check-label\">\n 一般企業\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('secondCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"ho_2\"\n className=\"form-check-input me-1\"\n name=\"secondCareerHope.career_type\"\n value={CAREER_TYPE.HO}\n />\n <label htmlFor=\"ho_2\" className=\"form-check-label\">\n 保育園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('secondCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"higher_2\"\n className=\"form-check-input me-1\"\n name=\"secondCareerHope.career_type\"\n value={CAREER_TYPE.HIGHER}\n />\n <label htmlFor=\"higher_2\" className=\"form-check-label\">\n 進学(留学含)\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('secondCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"ko_2\"\n className=\"form-check-input me-1\"\n name=\"secondCareerHope.career_type\"\n value={CAREER_TYPE.KO}\n />\n <label htmlFor=\"ko_2\" className=\"form-check-label\">\n 認定こども園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('secondCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"other_facility_2\"\n className=\"form-check-input me-1\"\n name=\"secondCareerHope.career_type\"\n value={CAREER_TYPE.OTHER_FACILITY}\n />\n <label\n htmlFor=\"other_facility_2\"\n className=\"form-check-label\">\n その他施設\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6\">\n <input\n {...register('secondCareerHope.career_type', {\n required: '希望する進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"not_fixed_or_other_2\"\n className=\"form-check-input me-1\"\n name=\"secondCareerHope.career_type\"\n value={CAREER_TYPE.NOT_FIXED_OR_OTHER}\n />\n <label\n htmlFor=\"not_fixed_or_other_2\"\n className=\"form-check-label\">\n 未定・上記以外\n </label>\n </div>\n <div className=\"col-6\" />\n </div>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.secondCareerHope?.career_type?.message}\n </span>\n </div>\n <div className=\"w-100 justify-content-start d-flex pt-2 flex-column px-3\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・施設就職の方は、希望の施設名や地域を入力して下さい\n </div>\n <textarea\n {...register(\n 'secondCareerHope.career_type_facility_remark_text',\n )}\n className=\"form-control\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n style={{ border: 'solid 1px #555252' }}\n placeholder=\"入力してください\"\n />\n </div>\n <div className=\"w-100 justify-content-start d-flex pt-2 flex-column px-3\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・施設就職以外の方は、現在の状況・希望を入力して下さい\n </div>\n <textarea\n {...register(\n 'secondCareerHope.career_type_general_remark_text',\n )}\n className=\"form-control\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n style={{ border: 'solid 1px #555252' }}\n placeholder=\"入力してください\"\n />\n </div>\n </section>\n <Divider className=\"p-3 pb-2\" />\n {errorMessage && (\n <div className=\"d-flex justify-content-center w-100 pb-3\">\n <span className=\"text-danger\">{errorMessage}</span>\n </div>\n )}\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"送信\"\n textFontSize={16}\n labelClassName=\"w-100\"\n onClick={() => console.log('ok')}\n />\n </div>\n </form>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Create;\n","import React from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\n\nconst Success = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n href: '/student/reports',\n },\n {\n text: '送信',\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h4 className=\"p-3 ps-4 p-sm-0 d-sm-flex w-100 justify-content-sm-center\">\n 送信\n </h4>\n <div\n className=\"w-100 d-flex justify-content-start ps-5 ps-sm-0 d-sm-flex w-100 justify-content-sm-center\"\n style={{ fontSize: '12px' }}>\n 送信しました\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Success;\n","import React, { createRef, useEffect, useState } from 'react';\nimport { useFacilitySearchModule } from '../../../modules/Student/Recruitment/School/facilitySearchModule';\nimport { paramsToObject } from '../../../../utils/common';\nimport { fetchCities } from '../../../../api/common';\nimport styled from 'styled-components';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PrefectureSelect from '../../../components/PrefectureSelect/PrefectureSelect';\nimport CitySelect from '../../../components/CitySelect/CitySelect';\nimport PinkButton from '../../../components/Buttons/PinkButton';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\n\nconst Label = styled.label`\n font-size: 12px;\n`;\n\nconst FacilitySearch = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人情報',\n },\n {\n text: '条件から探す',\n },\n ];\n\n const {\n // store\n filter,\n // actions\n initialize,\n changeFilter,\n } = useFacilitySearchModule();\n\n const [cities, setCities] = useState([]);\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n initialize({\n filter: {\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: r.ho === 'true',\n yo: r.yo === 'true',\n ko: r.ko === 'true',\n ko_ho: r.ko_ho === 'true',\n ko_yo: r.ko_yo === 'true',\n ko_yoho: r.ko_yoho === 'true',\n ko_sairyo: r.ko_sairyo === 'true',\n shokibo: r.shokibo === 'true',\n shokibo_a: r.shokibo_a === 'true',\n shokibo_b: r.shokibo_b === 'true',\n shokibo_c: r.shokibo_c === 'true',\n jigyosho: r.jigyosho === 'true',\n jigyosho_a: r.jigyosho_a === 'true',\n jigyosho_b: r.jigyosho_b === 'true',\n jigyosho_20over: r.jigyosho_20over === 'true',\n kigyo_ho: r.kigyo_ho === 'true',\n other_type: r.other_type === 'true',\n jidokan: false,\n after_school_club: false,\n after_school_day_service: false,\n infant_home: false,\n child_home: false,\n shogai_child_facility_welfare_type: false,\n shogai_child_facility_medical_type: false,\n child_facility_welfare_type: false,\n child_facility_medical_type: false,\n child_psychotherapeutic_facility: false,\n child_independence_facility: false,\n child_family_support_facility: false,\n midwifery_facility: false,\n disability_support_facility: false,\n employment_support_facility: false,\n not_en: false,\n redirect: r.redirect ?? '',\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n\n const ref = createRef();\n\n const onSubmit = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/reports/facility_search/results?${p}`;\n };\n\n useEffect(() => {\n if (filter?.ko) {\n const someKoUnchecked = Object.keys(filter)\n .filter((key) => key.includes('ko_'))\n .some((key) => !filter[key]);\n if (someKoUnchecked) {\n changeFilter({ ko: false });\n }\n }\n if (filter?.shokibo) {\n const someShokiboUnchecked = Object.keys(filter)\n .filter((key) => key.includes('shokibo_'))\n .some((key) => !filter[key]);\n if (someShokiboUnchecked) {\n changeFilter({ shokibo: false });\n }\n }\n if (filter?.jigyosho) {\n const someJigyoshoUnchecked = Object.keys(filter)\n .filter((key) => key.includes('jigyosho_'))\n .some((key) => !filter[key]);\n if (someJigyoshoUnchecked) {\n changeFilter({ jigyosho: false });\n }\n }\n }, [filter]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"m-3 ms-4\">条件検索</h6>\n <div className=\"px-4\">\n <div className=\"mb-2\" ref={ref}>\n <Label>園名</Label>\n <input\n type=\"text\"\n className=\"form-control\"\n value={filter?.name}\n onChange={({ target: { value } }) =>\n changeFilter({ name: value })\n }\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"mb-2\" ref={ref}>\n <PrefectureSelect\n label=\"都道府県\"\n selectedValue={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n pref_code: value ? Number(value) : null,\n city_code: null,\n })\n }\n />\n </div>\n <div className=\"mb-2\">\n <CitySelect\n label=\"市区町村\"\n selectedValue={filter?.city_code}\n prefecture={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n city_code: value,\n })\n }\n defaultCities={cities}\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"recruitmentSubmitted\"\n value=\"1\"\n checked={filter?.recruitmentSubmitted}\n onChange={({ target: { checked } }) =>\n changeFilter({\n recruitmentSubmitted: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"recruitmentSubmitted\">\n 求人情報あり\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasFacilityTourApplicant\"\n value=\"1\"\n checked={filter?.hasFacilityTourApplicant}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasFacilityTourApplicant: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"hasFacilityTourApplicant\">\n ENMAPから見学受付中\n </Label>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasComment\"\n value=\"1\"\n checked={filter?.hasComment}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasComment: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"hasComment\">\n 学校がコメントしている施設\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ninka\"\n value=\"1\"\n checked={filter?.ninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ninka\">\n 認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"municipality\"\n value=\"1\"\n checked={filter?.municipality}\n onChange={({ target: { checked } }) =>\n changeFilter({\n municipality: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"municipality\">\n 自治体独自認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"muninka\"\n value=\"1\"\n checked={filter?.muninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n muninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"muninka\">\n 認可外\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"private\"\n value=\"1\"\n checked={filter?._private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _private: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"private\">\n 民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public_private\"\n value=\"1\"\n checked={filter?._public_private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public_private: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"public_private\">\n 公設民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public\"\n value=\"1\"\n checked={filter?._public}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"public\">\n 公営\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex justify-content-start flex-column\">\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ho\"\n value=\"1\"\n checked={filter?.ho}\n onChange={({ target: { checked } }) =>\n changeFilter({ ho: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ho\">\n 保育所\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"yo\"\n value=\"1\"\n checked={filter?.yo}\n onChange={({ target: { checked } }) =>\n changeFilter({ yo: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"yo\">\n 幼稚園\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko\"\n value=\"1\"\n checked={filter?.ko}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ko: checked,\n ko_ho: checked,\n ko_yo: checked,\n ko_yoho: checked,\n ko_sairyo: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko\">\n 認定こども園\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-ho\"\n value=\"1\"\n checked={filter?.ko_ho}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_ho: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko-ho\">\n 保育所型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-yo\"\n value=\"1\"\n checked={filter?.ko_yo}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_yo: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko-yo\">\n 幼稚園型\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-yoho\"\n value=\"1\"\n checked={filter?.ko_yoho}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_yoho: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko-yoho\">\n 幼保連携型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko-sairyo\"\n value=\"1\"\n checked={filter?.ko_sairyo}\n onChange={({ target: { checked } }) =>\n changeFilter({ ko_sairyo: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"ko-sairyo\">\n 地方裁量型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo\"\n value=\"1\"\n checked={filter?.shokibo}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo: checked,\n shokibo_a: checked,\n shokibo_b: checked,\n shokibo_c: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"shokibo\">\n 小規模保育所\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo-a\"\n value=\"1\"\n checked={filter?.shokibo_a}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo_a: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shokibo-a\">\n A型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo-c\"\n value=\"1\"\n checked={filter?.shokibo_c}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo_c: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shokibo-c\">\n C型\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo-b\"\n value=\"1\"\n checked={filter?.shokibo_b}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shokibo_b: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shokibo-b\">\n B型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho\"\n value=\"1\"\n checked={filter?.jigyosho}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho: checked,\n jigyosho_a: checked,\n jigyosho_b: checked,\n jigyosho_20over: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"jigyosho\">\n 事業所内保育\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho-a\"\n value=\"1\"\n checked={filter?.jigyosho_a}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho_a: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"jigyosho-a\">\n A型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho-20over\"\n value=\"1\"\n checked={filter?.jigyosho_20over}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho_20over: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"jigyosho-20over\">\n 20名以上\n </Label>\n </div>\n </div>\n <div className=\"d-flex flex-row w-100\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jigyosho-b\"\n value=\"1\"\n checked={filter?.jigyosho_b}\n onChange={({ target: { checked } }) =>\n changeFilter({\n jigyosho_b: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"jigyosho-b\">\n B型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"kigyo_ho\"\n value=\"1\"\n checked={filter?.kigyo_ho}\n onChange={({ target: { checked } }) =>\n changeFilter({ kigyo_ho: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"kigyo_ho\">\n 企業主導型保育所\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jidokan\"\n value=\"1\"\n checked={filter?.jidokan}\n onChange={({ target: { checked } }) =>\n changeFilter({ jidokan: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"jidokan\">\n 児童館\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"after_school_club\"\n value=\"1\"\n checked={filter?.after_school_club}\n onChange={({ target: { checked } }) =>\n changeFilter({ after_school_club: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"after_school_club\">\n 放課後児童クラブ\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"other\"\n value=\"1\"\n checked={filter?.other_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n other_type: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"other\">\n その他\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSubmit();\n }}\n />\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default FacilitySearch;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { paramsToObject } from '../../../../utils/common';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport FacilityRecruitmentResultList from '../../../components/ResultList/FacilityRecruitmentResultList';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport PropTypes from 'prop-types';\n\nconst Result = ({ facilities, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n },\n {\n text: '検索',\n },\n {\n text: '検索結果',\n },\n ];\n\n const [filter, setFilter] = useState({});\n const [redirect, setRedirect] = useState('activity_report');\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n setFilter({\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : null,\n city_code: r.city_code ? r.city_code : null,\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: r.ho === 'true',\n yo: r.yo === 'true',\n ko: r.ko === 'true',\n ko_ho: r.ko_ho === 'true',\n ko_yo: r.ko_yo === 'true',\n ko_yoho: r.ko_yoho === 'true',\n ko_sairyo: r.ko_sairyo === 'true',\n shokibo: r.shokibo === 'true',\n shokibo_a: r.shokibo_a === 'true',\n shokibo_b: r.shokibo_b === 'true',\n shokibo_c: r.shokibo_c === 'true',\n jigyosho: r.jigyosho === 'true',\n jigyosho_a: r.jigyosho_a === 'true',\n jigyosho_b: r.jigyosho_b === 'true',\n jigyosho_20over: r.jigyosho_20over === 'true',\n kigyo_ho: r.kigyo_ho === 'true',\n jidokan: r.jidokan === 'true',\n after_school_club: r.after_school_club === 'true',\n other_type: r.other_type === 'true',\n });\n setRedirect(r.redirect ?? 'activity_report');\n }, []);\n\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter(\n (key) => key !== 'page' && filter[key] !== null && key !== 'redirect',\n )\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/reports/facility_search?${p}`;\n };\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 検索結果\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n isReport\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n onReportBtnClick={(facilityId) =>\n (location.href = `/student/reports/${redirect}/new?fid=${facilityId}`)\n }\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nResult.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default Result;\n","import React, { useEffect, useState } from 'react';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport Content from '../../../../components/Content';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport { useOfferReportCreate } from '../../../../modules/Student/Report/offerReportCreateModule';\nimport { FacilityTypeSelect } from '../components';\nimport { Form } from './components';\n\nconst Create = ({ facility, corporate, corporation }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n href: '/student/reports',\n },\n {\n text: '決定(内定)届',\n },\n ];\n\n const {\n // store\n errors,\n // actions\n save,\n register,\n handleSubmit,\n setValue,\n watch,\n } = useOfferReportCreate();\n const [isOpenSelectFacilityType, setIsOpenSelectFacilityType] =\n useState(false);\n\n useEffect(() => {\n if (corporation?.name) {\n setValue('corporate_name', corporation.name);\n }\n if (corporation?.legal_person && corporation?.legal_person_label) {\n setValue('corporate_type', corporation.legal_person_label);\n }\n if (corporation?.address) {\n setValue('corporate_address', corporation.address);\n }\n if (corporate?.name) {\n setValue('corporate_name', corporate.name);\n }\n if (corporate?.legal_person && corporate?.legal_person_label) {\n setValue('corporate_type', corporate.legal_person_label);\n }\n if (corporate?.address) {\n setValue('corporate_address', corporate.address);\n }\n if (facility?.name) {\n setValue('facility_name', facility.name);\n }\n if (facility?.facility_type) {\n setValue('facility_type', facility.facility_type);\n }\n if (facility?.address) {\n setValue('facility_address', facility.address);\n }\n }, [facility, corporate, corporation]);\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n {isOpenSelectFacilityType ? (\n <FacilityTypeSelect\n onClose={() => setIsOpenSelectFacilityType(false)}\n redirect=\"offer_report\"\n />\n ) : (\n <Form\n handleSubmit={handleSubmit}\n onSave={save}\n register={register}\n errors={errors}\n onSelectFacility={() => setIsOpenSelectFacilityType(true)}\n watch={watch}\n setValue={setValue}\n />\n )}\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Create;\n","import React from 'react';\nimport StudentFooter from '../../../../components/Footers/StudentFooter';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\n\nconst Success = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n href: '/student/reports',\n },\n {\n text: '送信',\n },\n ];\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"p-3 ps-4 p-sm-0 d-sm-flex w-100 justify-content-sm-center\">\n 送信\n </h6>\n <div\n className=\"w-100 d-flex justify-content-start ps-5 ps-sm-0 d-sm-flex w-100 justify-content-sm-center\"\n style={{ fontSize: '12px' }}>\n 送信しました\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Success;\n","import React from 'react';\nimport PinkButton from '../../../../../components/Buttons/PinkButton';\nimport Divider from '../../../../../components/Divider/Divider';\nimport Banner from '../../../../../components/Title/Banner';\nimport { DescriptionField, PageTitle } from '../../components';\nimport {\n FACILITY_EN_TYPES,\n FACILITY_FACILITY_TYPES,\n} from '../../../../../../utils/constant';\nimport DatePicker from 'react-datepicker';\n\nexport const Form = ({\n handleSubmit,\n register,\n onSave,\n errors,\n onSelectFacility,\n watch,\n setValue,\n}) => {\n return (\n <div>\n <PageTitle className=\"pt-3 ps-3\">決定(内定)届</PageTitle>\n <div className=\"p-3\">\n <DescriptionField className=\"ps-2\">\n 決定した進路先を登録・記入して下さい\n <br />\n ※ブックマークから登録も可能です\n </DescriptionField>\n </div>\n <form onSubmit={handleSubmit(onSave)}>\n <section className=\"py-3\">\n <div className=\"w-100 justify-content-start d-flex flex-column\">\n <section className=\"pb-3\">\n <div className=\"px-2 pt-4\">\n <Banner\n label=\"決定した法人・施設の情報\"\n innerStyle={{ background: '#FFDEDE' }}\n />\n </div>\n <div className=\"px-4 pt-1\">\n <DescriptionField className=\"py-2\">\n ・決定した法人や施設情報を登録・記入して下さい\n </DescriptionField>\n <div className=\"d-flex justify-content-center\">\n <PinkButton\n width={256}\n height={32}\n label=\"施設検索からカンタン登録\"\n textFontSize={16}\n labelClassName=\"w-100 fw-light\"\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n onSelectFacility();\n }}\n />\n </div>\n <div className=\"d-flex justify-content-center py-2\">\n <DescriptionField>\n ※ブックマークからも登録できます\n </DescriptionField>\n </div>\n </div>\n <div className=\"d-flex w-100 px-4 justify-content-center flex-column\">\n <div className=\"w-100 pb-2\">\n <input\n {...register('corporate_name')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"法人名を入力\"\n />\n </div>\n <div className=\"w-100 mb-2\" style={{ fontSize: '12px' }}>\n <div className=\"mb-1\">・法人種別</div>\n <div\n className=\"w-100 mb-2\"\n style={{ border: 'solid 1px #555252', fontSize: '12px' }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row\">\n <div className=\"col-6\">\n <input\n {...register('corporate_type')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"保育・教育系法人\"\n id=\"corporate_type_1\"\n />\n <label\n htmlFor=\"corporate_type_1\"\n className=\"form-check-label me-2\">\n 保育・教育系法人\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('corporate_type')}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"一般法人\"\n id=\"corporate_type_2\"\n />\n <label\n htmlFor=\"corporate_type_2\"\n className=\"form-check-label\">\n 一般法人\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div className=\"w-100 pb-2\">\n <input\n {...register('corporate_address')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"法人住所を入力\"\n />\n </div>\n <div className=\"w-100 pb-2\">\n <input\n {...register('facility_name')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"施設名を入力\"\n />\n </div>\n <div className=\"w-100 pb-2\">\n <select\n {...register('facility_type')}\n className=\"form-control\">\n <option value=\"\">施設種別を選択</option>\n <optgroup label=\"▼幼保系---------------\">\n {FACILITY_EN_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n <optgroup label=\"▼施設系---------------\">\n {FACILITY_FACILITY_TYPES.map((type) => (\n <option key={type} value={type}>\n {type}\n </option>\n ))}\n </optgroup>\n </select>\n </div>\n <div className=\"w-100\">\n <input\n {...register('facility_address')}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"施設住所を入力\"\n />\n </div>\n </div>\n </section>\n <section>\n <div className=\"px-2\">\n <Banner\n label=\"決定した日(内定が出た日)\"\n innerStyle={{ background: '#FFDEDE' }}\n />\n </div>\n <div className=\"px-4 pt-1 pb-4\">\n <DescriptionField className=\"py-2\">\n ・進路が決定した日付を選択して下さい\n </DescriptionField>\n\n <input\n type=\"date\"\n {...register('report_date', {\n required: '進路が決定した日付を選択して下さい',\n })}\n className=\"form-control\"\n />\n <span className=\"text-danger\">\n {errors?.report_date?.message}\n </span>\n </div>\n </section>\n <section>\n <div className=\"px-2 pt-1\">\n <Banner\n label=\"決定した進路\"\n innerStyle={{ background: '#FFDEDE' }}\n />\n </div>\n <div className=\"px-4 pt-1\">\n <DescriptionField className=\"py-2\">\n ・決定した進路を選択してください(選択)\n </DescriptionField>\n <div className=\"w-100 mb-2\">\n <div\n className=\"w-100 h-100\"\n style={{ border: 'solid 1px #555252', fontSize: '12px' }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_1\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"幼稚園\"\n />\n <label\n htmlFor=\"career_type_1\"\n className=\"form-check-label\">\n 幼稚園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_3\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"保育園\"\n />\n <label\n htmlFor=\"career_type_3\"\n className=\"form-check-label\">\n 保育園\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_5\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"認定こども園\"\n />\n <label\n htmlFor=\"career_type_5\"\n className=\"form-check-label\">\n 認定こども園\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_7\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"児童養護施設\"\n />\n <label\n htmlFor=\"career_type_7\"\n className=\"form-check-label\">\n 児童養護施設\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_8\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"乳児院\"\n />\n <label\n htmlFor=\"career_type_8\"\n className=\"form-check-label\">\n 乳児院\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_9\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"児童館\"\n />\n <label\n htmlFor=\"career_type_9\"\n className=\"form-check-label\">\n 児童館\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_10\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"学童\"\n />\n <label\n htmlFor=\"career_type_10\"\n className=\"form-check-label\">\n 学童\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_11\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"障害者支援施設\"\n />\n <label\n htmlFor=\"career_type_11\"\n className=\"form-check-label\">\n 障害者支援施設\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_12\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"児童発達支援\"\n />\n <label\n htmlFor=\"career_type_12\"\n className=\"form-check-label\">\n 児童発達支援\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_13\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"一般企業\"\n />\n <label\n htmlFor=\"career_type_13\"\n className=\"form-check-label\">\n 一般企業\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_4\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"進学\"\n />\n <label\n htmlFor=\"career_type_4\"\n className=\"form-check-label\">\n 進学\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"career_type_6\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"その他施設\"\n />\n <label\n htmlFor=\"career_type_6\"\n className=\"form-check-label\">\n その他施設\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('career_type', {\n required: '決定した進路を選択して下さい',\n })}\n type=\"radio\"\n id=\"not_fixed_or_other\"\n className=\"form-check-input me-1\"\n name=\"career_type\"\n value=\"未定・上記以外\"\n />\n <label\n htmlFor=\"not_fixed_or_other\"\n className=\"form-check-label\">\n 未定・上記以外\n </label>\n </div>\n <div className=\"col-6\" />\n </div>\n </div>\n </div>\n <span className=\"text-danger\">\n {errors?.career_type?.message}\n </span>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"mb-1\" style={{ fontSize: '12px' }}>\n ・雇用形態\n </div>\n <div\n className=\"w-100 mb-2\"\n style={{ border: 'solid 1px #555252', fontSize: '12px' }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('employee_type', {\n required: '雇用形態を選択して下さい',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"正規職員\"\n id=\"employee_type_1\"\n />\n <label\n htmlFor=\"employee_type_1\"\n className=\"form-check-label me-2\">\n 正規職員\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('employee_type', {\n required: '雇用形態を選択して下さい',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"非常勤\"\n id=\"employee_type_2\"\n />\n <label\n htmlFor=\"employee_type_2\"\n className=\"form-check-label me-2\">\n 非常勤\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('employee_type', {\n required: '雇用形態を選択して下さい',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"契約\"\n id=\"employee_type_3\"\n />\n <label\n htmlFor=\"employee_type_3\"\n className=\"form-check-label me-2\">\n 契約\n </label>\n </div>\n <div className=\"col-6\">\n <input\n {...register('employee_type', {\n required: '雇用形態を選択して下さい',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"派遣\"\n id=\"employee_type_4\"\n />\n <label\n htmlFor=\"employee_type_4\"\n className=\"form-check-label me-2\">\n 派遣\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row mb-2\">\n <div className=\"col-6\">\n <input\n {...register('employee_type', {\n required: '雇用形態を選択して下さい',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"アルバイト\"\n id=\"employee_type_5\"\n />\n <label\n htmlFor=\"employee_type_5\"\n className=\"form-check-label me-2\">\n アルバイト\n </label>\n </div>\n\n <div className=\"col-6\">\n <input\n {...register('employee_type', {\n required: '雇用形態を選択して下さい',\n })}\n type=\"radio\"\n className=\"form-check-input me-1\"\n value=\"パート\"\n id=\"employee_type_6\"\n />\n <label\n htmlFor=\"employee_type_6\"\n className=\"form-check-label me-2\">\n パート\n </label>\n </div>\n </div>\n </div>\n </div>\n\n <span className=\"text-danger\">\n {errors?.employee_type?.message}\n </span>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・雇用形態備考\n </div>\n <textarea\n {...register('employee_type_remarks')}\n className=\"form-control\"\n name=\"\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n onChange={(e) => {\n setValue('employee_type_remarks', e.target.value);\n }}\n placeholder=\"派遣元企業名など\"\n />\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・提出書類\n </div>\n <div\n className=\"w-100 h-100\"\n style={{\n border: 'solid 1px #555252',\n fontSize: '12px',\n }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('required_document_option')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"履歴書\"\n id=\"required_document_option_1\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"required_document_option_1\">\n 履歴書\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('required_document_option')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"健康診断書\"\n id=\"required_document_option_2\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"required_document_option_2\">\n 健康診断書\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('required_document_option')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"卒業見込証明書\"\n id=\"required_document_option_3\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"required_document_option_3\">\n 卒業見込証明書\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('required_document_option')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"職務経歴書\"\n id=\"required_document_option_4\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"required_document_option_4\">\n 職務経歴書\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('required_document_option')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"資格取得見込証明書\"\n id=\"required_document_option_5\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"required_document_option_5\">\n 資格取得見込証明書\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('required_document_option')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"成績証明書\"\n id=\"required_document_option_6\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"required_document_option_6\">\n 成績証明書\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('required_document_option')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"その他\"\n id=\"required_document_option_7\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"required_document_option_7\">\n その他\n </label>\n </div>\n <div className=\"col-6 form-check\" />\n </div>\n </div>\n </div>\n </div>\n <div className=\"w-100 mb-2\">\n <div>\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・提出書類備考\n </div>\n <textarea\n {...register('required_document_option_remarks', {\n required: watch('required_document_option')?.includes(\n 'その他',\n )\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n name=\"\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n onChange={(e) => {\n setValue(\n 'required_document_option_remarks',\n e.target.value,\n );\n }}\n />\n </div>\n\n <span className=\"text-danger\">\n {errors?.required_document_option_remarks?.message}\n </span>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・求人情報入手先\n </div>\n <div\n className=\"w-100 mb-2\"\n style={{ border: '1px solid #555252', fontSize: '12px' }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"mb-2\">学内</div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"ENMAP\"\n id=\"recruitment_info_from_1\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_1\">\n ENMAP\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"紙の求人票\"\n id=\"recruitment_info_from_2\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_2\">\n 紙の求人票\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"就活イベント\"\n id=\"recruitment_info_from_3\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_3\">\n 就活イベント\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"講師からの推薦\"\n id=\"recruitment_info_from_4\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_4\">\n 講師からの推薦\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"WEB求人媒体\"\n id=\"recruitment_info_from_5\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_5\">\n WEB求人媒体\n </label>\n </div>\n <div className=\"col-6\" />\n </div>\n <div className=\"mb-2\">学外</div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"WEB求人サービス\"\n id=\"recruitment_info_from_6\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_6\">\n WEB求人サービス\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"人材紹介\"\n id=\"recruitment_info_from_7\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_7\">\n 人材紹介\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"就活イベント\"\n id=\"recruitment_info_from_8\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_8\">\n 就活イベント\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"実習先\"\n id=\"recruitment_info_from_9\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_9\">\n 実習先\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('recruitment_info_from')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"アルバイト先\"\n id=\"recruitment_info_from_10\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"recruitment_info_from_10\">\n アルバイト先\n </label>\n </div>\n <div className=\"col-6\" />\n </div>\n </div>\n </div>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・応募理由\n </div>\n <div\n className=\"w-100 h-100\"\n style={{ border: 'solid 1px #555252', fontSize: '12px' }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"雰囲気が良い\"\n id=\"application_reason_1\"\n />\n <label\n htmlFor=\"application_reason_1\"\n className=\"form-check-label\">\n 雰囲気が良い\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"自宅から通いやすい\"\n id=\"application_reason_2\"\n />\n <label\n htmlFor=\"application_reason_2\"\n className=\"form-check-label\">\n 自宅から通いやすい\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"保育や教育内容が合っている\"\n id=\"application_reason_3\"\n />\n <label\n htmlFor=\"application_reason_3\"\n className=\"form-check-label\">\n 保育や教育内容が合っている\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"給料が良い\"\n id=\"application_reason_4\"\n />\n <label\n htmlFor=\"application_reason_4\"\n className=\"form-check-label\">\n 給料が良い\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"福利厚生が良い\"\n id=\"application_reason_5\"\n />\n <label\n htmlFor=\"application_reason_5\"\n className=\"form-check-label\">\n 福利厚生が良い\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"園環境・設備が良い\"\n id=\"application_reason_6\"\n />\n <label\n htmlFor=\"application_reason_6\"\n className=\"form-check-label\">\n 園環境・設備が良い\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"研修・サポート体制が良い\"\n id=\"application_reason_7\"\n />\n <label\n htmlFor=\"application_reason_7\"\n className=\"form-check-label\">\n 研修・サポート体制が良い\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('application_reason')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"その他\"\n id=\"application_reason_8\"\n />\n <label\n htmlFor=\"application_reason_8\"\n className=\"form-check-label\">\n その他\n </label>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div className=\"w-100 mb-2\">\n <div>\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・応募理由備考\n </div>\n <textarea\n {...register('application_reason_remarks', {\n required: watch('application_reason')?.includes(\n 'その他',\n )\n ? '「その他」を選択した場合は必須です'\n : false,\n })}\n className=\"form-control\"\n name=\"\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n onChange={(e) => {\n setValue('application_reason_remarks', e.target.value);\n }}\n />\n </div>\n <span className=\"text-danger\">\n {errors?.application_reason_remarks?.message}\n </span>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・試験日1\n </div>\n <input\n type=\"date\"\n {...register('exam_date_1')}\n className=\"form-control\"\n />\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・試験種類1\n </div>\n <div\n className=\"w-100 h-100\"\n style={{\n border: 'solid 1px #555252',\n fontSize: '12px',\n }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"面接(個人)\"\n id=\"exam_type_1_1\"\n />\n <label\n htmlFor=\"exam_type_1_1\"\n className=\"form-check-label\">\n 面接(個人)\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"面接(集団)\"\n id=\"exam_type_1_2\"\n />\n <label\n htmlFor=\"exam_type_1_2\"\n className=\"form-check-label\">\n 面接(集団)\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"適性試験\"\n id=\"exam_type_1_3\"\n />\n <label\n htmlFor=\"exam_type_1_3\"\n className=\"form-check-label\">\n 適性試験\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"能力試験\"\n id=\"exam_type_1_4\"\n />\n <label\n htmlFor=\"exam_type_1_4\"\n className=\"form-check-label\">\n 能力試験\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"一般常識\"\n id=\"exam_type_1_5\"\n />\n <label\n htmlFor=\"exam_type_1_5\"\n className=\"form-check-label\">\n 一般常識\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"専門知識\"\n id=\"exam_type_1_6\"\n />\n <label\n htmlFor=\"exam_type_1_6\"\n className=\"form-check-label\">\n 専門知識\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"小論文\"\n id=\"exam_type_1_7\"\n />\n <label\n htmlFor=\"exam_type_1_7\"\n className=\"form-check-label\">\n 小論文\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"作文\"\n id=\"exam_type_1_8\"\n />\n <label\n htmlFor=\"exam_type_1_8\"\n className=\"form-check-label\">\n 作文\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_1')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"その他\"\n id=\"exam_type_1_9\"\n />\n <label\n htmlFor=\"exam_type_1_9\"\n className=\"form-check-label\">\n その他\n </label>\n </div>\n <div className=\"col-6 form-check\" />\n </div>\n </div>\n </div>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・試験種類備考1\n </div>\n\n <textarea\n {...register('exam_type_1_remarks')}\n className=\"form-control\"\n name=\"\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n placeholder=\"作文のテーマや文字数など\"\n onChange={(e) => {\n setValue('exam_type_1_remarks', e.target.value);\n }}\n />\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・試験日2\n </div>\n <input\n type=\"date\"\n {...register('exam_date_2')}\n className=\"form-control\"\n />\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・試験種類2\n </div>\n <div\n className=\"w-100 h-100\"\n style={{\n border: 'solid 1px #555252',\n fontSize: '12px',\n }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"面接(個人)\"\n id=\"exam_type_2_1\"\n />\n <label\n htmlFor=\"exam_type_2_1\"\n className=\"form-check-label\">\n 面接(個人)\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"面接(集団)\"\n id=\"exam_type_2_2\"\n />\n <label\n htmlFor=\"exam_type_2_2\"\n className=\"form-check-label\">\n 面接(集団)\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"適性試験\"\n id=\"exam_type_2_3\"\n />\n <label\n htmlFor=\"exam_type_2_3\"\n className=\"form-check-label\">\n 適性試験\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"能力試験\"\n id=\"exam_type_2_4\"\n />\n <label\n htmlFor=\"exam_type_2_4\"\n className=\"form-check-label\">\n 能力試験\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"一般常識\"\n id=\"exam_type_2_5\"\n />\n <label\n htmlFor=\"exam_type_2_5\"\n className=\"form-check-label\">\n 一般常識\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"専門知識\"\n id=\"exam_type_2_6\"\n />\n <label\n htmlFor=\"exam_type_2_6\"\n className=\"form-check-label\">\n 専門知識\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"小論文\"\n id=\"exam_type_2_7\"\n />\n <label\n htmlFor=\"exam_type_2_7\"\n className=\"form-check-label\">\n 小論文\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"作文\"\n id=\"exam_type_2_8\"\n />\n <label\n htmlFor=\"exam_type_2_8\"\n className=\"form-check-label\">\n 作文\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('exam_type_2')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"その他\"\n id=\"exam_type_2_9\"\n />\n <label\n htmlFor=\"exam_type_2_9\"\n className=\"form-check-label\">\n その他\n </label>\n </div>\n <div className=\"col-6 form-check\" />\n </div>\n </div>\n </div>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・試験種類備考2\n </div>\n\n <textarea\n {...register('exam_type_2_remarks')}\n className=\"form-control\"\n name=\"\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n placeholder=\"作文のテーマや文字数など\"\n onChange={(e) => {\n setValue('exam_type_2_remarks', e.target.value);\n }}\n />\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・面接の質問内容\n </div>\n <div\n className=\"w-100 h-100\"\n style={{\n border: 'solid 1px #555252',\n fontSize: '12px',\n }}>\n <div className=\"p-2 ps-3 w-100 d-flex flex-column\">\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"自己紹介\"\n id=\"interview_question_1\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_1\">\n 自己紹介\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"自己アピール\"\n id=\"interview_question_2\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_2\">\n 自己アピール\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"特技や趣味\"\n id=\"interview_question_3\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_3\">\n 特技や趣味\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"休日の過ごし方\"\n id=\"interview_question_4\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_4\">\n 休日の過ごし方\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"苦労したこと・辛かったこと\"\n id=\"interview_question_5\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_5\">\n 苦労したこと・辛かったこと\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"一番頑張ったこと\"\n id=\"interview_question_6\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_6\">\n 一番頑張ったこと\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"将来どのような保育士になりたいか\"\n id=\"interview_question_7\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_7\">\n 将来どのような保育士になりたいか\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"なぜ保育士になろうと思ったか\"\n id=\"interview_question_8\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_8\">\n なぜ保育士になろうと思ったか\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"意見の会わない職員とどう接するか\"\n id=\"interview_question_9\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_9\">\n 意見の会わない職員とどう接するか\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"当園を希望した理由\"\n id=\"interview_question_10\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_10\">\n 当園を希望した理由\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"当園で何をしたいと考えているか\"\n id=\"interview_question_11\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_11\">\n 当園で何をしたいと考えているか\n </label>\n </div>\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"10年後どうなっていたいか\"\n id=\"interview_question_12\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_12\">\n 10年後どうなっていたいか\n </label>\n </div>\n </div>\n <div className=\"d-flex flex-row\">\n <div className=\"col-6 form-check\">\n <input\n {...register('interview_question')}\n className=\"form-check-input\"\n type=\"checkbox\"\n value=\"その他\"\n id=\"interview_question_13\"\n />\n <label\n className=\"form-check-label\"\n htmlFor=\"interview_question_13\">\n その他\n </label>\n </div>\n\n <div className=\"col-6 form-check\" />\n </div>\n </div>\n </div>\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・面接の質問内容備考\n </div>\n <textarea\n {...register('interview_question_remarks')}\n className=\"form-control\"\n name=\"\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n onChange={(e) => {\n setValue('interview_question_remarks', e.target.value);\n }}\n />\n </div>\n <div className=\"w-100 mb-2\">\n <div className=\"w-100\" style={{ fontSize: '12px' }}>\n ・後輩へのアドバイス\n </div>\n <textarea\n {...register('advice_to_juniors')}\n className=\"form-control\"\n name=\"\"\n id=\"\"\n cols=\"30\"\n rows=\"4\"\n onChange={(e) => {\n setValue('advice_to_juniors', e.target.value);\n }}\n />\n </div>\n </div>\n </section>\n </div>\n </section>\n <Divider className=\"p-3\" />\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"送信\"\n textFontSize={16}\n labelClassName=\"w-100\"\n />\n </div>\n </form>\n </div>\n );\n};\n","import React from 'react';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport TwoToneButton from '../../../components/Buttons/TwoToneButton';\nimport Divider from '../../../components/Divider/Divider';\n\nconst ReportTypeList = (props) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n },\n ];\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h4 className=\"p-3 ps-4 p-sm-0 d-sm-flex w-100 justify-content-sm-center\">\n 学校報告\n </h4>\n <div className=\"d-flex w-100 justify-content-center flex-column\">\n <div\n className=\"w-100 d-flex justify-content-start ps-5 ps-sm-0 d-sm-flex w-100 justify-content-sm-center\"\n style={{ fontSize: '12px' }}>\n 学校からの案内に沿って各種登録を行って下さい\n </div>\n <Divider className=\"p-3\" />\n <div className=\"d-flex w-100 justify-content-center flex-column\">\n <div className=\"d-flex px-3 pb-3 w-100 justify-content-center\">\n <TwoToneButton\n width=\"345px\"\n toneWidth=\"30px\"\n content={\n <div\n className=\"d-flex w-100 justify-content-start align-items-center\"\n style={{ paddingLeft: '30%', fontSize: '14px' }}>\n 進路希望届\n </div>\n }\n toneColor=\"#FFDEDE\"\n onClick={() =>\n (location.href = '/student/reports/career_hope/new')\n }\n />\n </div>\n <div className=\"d-flex px-3 pb-3 w-100 justify-content-center\">\n <TwoToneButton\n width=\"345px\"\n toneWidth=\"30px\"\n content={\n <div\n className=\"d-flex w-100 justify-content-start align-items-center\"\n style={{ paddingLeft: '30%', fontSize: '14px' }}>\n 進路決定(内定)届\n </div>\n }\n toneColor=\"#FFDEDE\"\n onClick={() =>\n (location.href = '/student/reports/offer_report/new')\n }\n />\n </div>\n <div className=\"d-flex px-3 pb-3 w-100 justify-content-center\">\n <TwoToneButton\n width=\"345px\"\n toneWidth=\"30px\"\n content={\n <div\n className=\"d-flex w-100 justify-content-start align-items-center\"\n style={{ paddingLeft: '30%', fontSize: '14px' }}>\n 活動報告\n </div>\n }\n toneColor=\"#FFDEDE\"\n onClick={() =>\n (location.href = '/student/reports/activity_report/new')\n }\n />\n </div>\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default ReportTypeList;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport FacilityRecruitmentResultList from '../../../../components/ResultList/FacilityRecruitmentResultList';\nimport StudentFooter from '../../../../components/./Footers/StudentFooter';\nimport { paramsToObject } from '../../../../../utils/common';\n\nconst Result = ({ facilities, currentPage, totalPages, totalCount }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '学校報告',\n },\n {\n text: '検索',\n },\n {\n text: '検索結果',\n },\n ];\n const [filter, setFilter] = useState({});\n const [redirect, setRedirect] = useState('activity_report');\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n\n setFilter({\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: false,\n yo: false,\n ko: false,\n ko_ho: false,\n ko_yo: false,\n ko_yoho: false,\n ko_sairyo: false,\n shokibo: false,\n shokibo_a: false,\n shokibo_b: false,\n shokibo_c: false,\n jigyosho: false,\n jigyosho_a: false,\n jigyosho_b: false,\n jigyosho_20over: false,\n kigyo_ho: false,\n other_type: false,\n jidokan: r.jidokan === 'true',\n after_school_club: r.after_school_club === 'true',\n after_school_day_service: r.after_school_day_service === 'true',\n infant_home: r.infant_home === 'true',\n child_home: r.child_home === 'true',\n shogai_child_facility_welfare_type:\n r.shogai_child_facility_welfare_type === 'true',\n shogai_child_facility_medical_type:\n r.shogai_child_facility_medical_type === 'true',\n child_facility_welfare_type: r.child_facility_welfare_type === 'true',\n child_facility_medical_type: r.child_facility_medical_type === 'true',\n child_psychotherapeutic_facility:\n r.child_psychotherapeutic_facility === 'true',\n child_independence_facility: r.child_independence_facility === 'true',\n child_family_support_facility: r.child_family_support_facility === 'true',\n midwifery_facility: r.midwifery_facility === 'true',\n disability_support_facility: r.disability_support_facility === 'true',\n employment_support_facility: r.employment_support_facility === 'true',\n not_en: r.not_en === 'true',\n });\n setRedirect(r.redirect ?? 'activity_report');\n }, []);\n\n const retrySearch = () => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/reports/type_facility_search?${p}`;\n };\n\n const paginate = useCallback(\n (pageNum) => {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}`;\n },\n [filter],\n );\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <div className=\"m-3 ms-4\" style={{ fontSize: '18px' }}>\n 検索結果\n </div>\n <div\n className=\"m-3 pt-1 ms-4 ps-2 fw-bold\"\n style={{ fontSize: '16px' }}>\n 検索結果:{totalCount}件\n </div>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n isReport\n onPaginate={paginate}\n onRetrySearch={() => retrySearch()}\n onReportBtnClick={(facilityId) =>\n (location.href = `/student/reports/${redirect}/new?fid=${facilityId}`)\n }\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nResult.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default Result;\n","import React, { createRef, useEffect, useState } from 'react';\nimport { useSearch } from './hooks/useSearch';\nimport { paramsToObject } from '../../../../../utils/common';\nimport { fetchCities } from '../../../../../api/common';\nimport Content from '../../../../components/Content';\nimport StudentBreadcrumbs from '../../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PrefectureSelect from '../../../../components/PrefectureSelect/PrefectureSelect';\nimport CitySelect from '../../../../components/CitySelect/CitySelect';\nimport PinkButton from '../../../../components/Buttons/PinkButton';\nimport StudentFooter from '../../../../components/./Footers/StudentFooter';\nimport styled from 'styled-components';\n\nconst Label = styled.label`\n font-size: 12px;\n`;\nconst BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '求人情報',\n },\n {\n text: '施設から探す',\n },\n];\nconst Search = (props) => {\n const {\n // store\n filter,\n // actions\n initialize,\n changeFilter,\n searchFilter,\n } = useSearch();\n const [cities, setCities] = useState([]);\n useEffect(() => {\n const p = location.search;\n const r = paramsToObject(p);\n\n initialize({\n filter: {\n name: r.name ?? '',\n pref_code: r.pref_code ? Number(r.pref_code) : '',\n city_code: r.city_code ?? '',\n recruitmentSubmitted: r.recruitmentSubmitted === 'true',\n hasFacilityTourApplicant: r.hasFacilityTourApplicant === 'true',\n hasComment: r.hasComment === 'true',\n _public: r._public === 'true',\n _private: r._private === 'true',\n _public_private: r._public_private === 'true',\n ninka: r.ninka === 'true',\n muninka: r.muninka === 'true',\n municipality: r.municipality === 'true',\n ho: false,\n yo: false,\n ko: false,\n ko_ho: false,\n ko_yo: false,\n ko_yoho: false,\n ko_sairyo: false,\n shokibo: false,\n shokibo_a: false,\n shokibo_b: false,\n shokibo_c: false,\n jigyosho: false,\n jigyosho_a: false,\n jigyosho_b: false,\n jigyosho_20over: false,\n kigyo_ho: false,\n other_type: false,\n jidokan: r.jidokan === 'true',\n after_school_club: r.after_school_club === 'true',\n after_school_day_service: r.after_school_day_service === 'true',\n infant_home: r.infant_home === 'true',\n child_home: r.child_home === 'true',\n shogai_child_facility_welfare_type:\n r.shogai_child_facility_welfare_type === 'true',\n shogai_child_facility_medical_type:\n r.shogai_child_facility_medical_type === 'true',\n child_facility_welfare_type: r.child_facility_welfare_type === 'true',\n child_facility_medical_type: r.child_facility_medical_type === 'true',\n child_psychotherapeutic_facility:\n r.child_psychotherapeutic_facility === 'true',\n child_independence_facility: r.child_independence_facility === 'true',\n child_family_support_facility:\n r.child_family_support_facility === 'true',\n midwifery_facility: r.midwifery_facility === 'true',\n disability_support_facility: r.disability_support_facility === 'true',\n employment_support_facility: r.employment_support_facility === 'true',\n not_en: r.not_en === 'true',\n redirect: r.redirect ?? 'activity_report',\n },\n });\n if (r.pref_code) {\n return fetchCities(r.pref_code).then((cities) => setCities(cities));\n }\n }, []);\n\n const ref = createRef();\n\n const onSubmit = () => {\n return searchFilter();\n };\n\n useEffect(() => {\n if (filter?.shogai) {\n const someUnchecked = Object.keys(filter)\n .filter((key) => key.includes('shogai_'))\n .some((key) => !filter[key]);\n if (someUnchecked) {\n changeFilter({\n shogai: false,\n });\n }\n }\n if (filter?.child_facility) {\n const someUnchecked = Object.keys(filter)\n .filter((key) => key.includes('child_facility_'))\n .some((key) => !filter[key]);\n if (someUnchecked) {\n changeFilter({\n child_facility: false,\n });\n }\n }\n }, [filter]);\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"m-3 ms-4\">条件検索</h6>\n <div className=\"px-4\">\n <div className=\"mb-2\" ref={ref}>\n <Label>施設名</Label>\n <input\n type=\"text\"\n className=\"form-control\"\n value={filter?.name}\n onChange={({ target: { value } }) =>\n changeFilter({ name: value })\n }\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"mb-2\" ref={ref}>\n <PrefectureSelect\n label=\"都道府県\"\n selectedValue={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n pref_code: value ? Number(value) : null,\n city_code: null,\n })\n }\n />\n </div>\n <div className=\"mb-2\">\n <CitySelect\n label=\"市区町村\"\n selectedValue={filter?.city_code}\n prefecture={filter?.pref_code}\n onChange={({ target: { value } }) =>\n changeFilter({\n city_code: value,\n })\n }\n defaultCities={cities}\n />\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"recruitmentSubmitted\"\n value=\"1\"\n checked={filter?.recruitmentSubmitted}\n onChange={({ target: { checked } }) =>\n changeFilter({\n recruitmentSubmitted: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"recruitmentSubmitted\">\n 求人情報あり\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasFacilityTourApplicant\"\n value=\"1\"\n checked={filter?.hasFacilityTourApplicant}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasFacilityTourApplicant: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"hasFacilityTourApplicant\">\n ENMAPから見学受付中\n </Label>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3 d-flex flex-row\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"hasComment\"\n value=\"1\"\n checked={filter?.hasComment}\n onChange={({ target: { checked } }) =>\n changeFilter({\n hasComment: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"hasComment\">\n 学校がコメントしている施設\n </Label>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ninka\"\n value=\"1\"\n checked={filter?.ninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n ninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ninka\">\n 認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"municipality\"\n value=\"1\"\n checked={filter?.municipality}\n onChange={({ target: { checked } }) =>\n changeFilter({\n municipality: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"municipality\">\n 自治体独自認可\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"muninka\"\n value=\"1\"\n checked={filter?.muninka}\n onChange={({ target: { checked } }) =>\n changeFilter({\n muninka: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"muninka\">\n 認可外\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex w-100 justify-content-start\">\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"private\"\n value=\"1\"\n checked={filter?._private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _private: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"private\">\n 民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public_private\"\n value=\"1\"\n checked={filter?._public_private}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public_private: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"public_private\">\n 公設民営\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"public\"\n value=\"1\"\n checked={filter?._public}\n onChange={({ target: { checked } }) =>\n changeFilter({\n _public: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"public\">\n 公営\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"my-3\">\n <div className=\"d-flex justify-content-start flex-column\">\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"jidokan\"\n value=\"1\"\n checked={filter?.jidokan}\n onChange={({ target: { checked } }) =>\n changeFilter({ jidokan: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"jidokan\">\n 児童館\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"after_school_club\"\n value=\"1\"\n checked={filter?.after_school_club}\n onChange={({ target: { checked } }) =>\n changeFilter({ after_school_club: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"after_school_club\">\n 放課後児童クラブ\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"after_school_day_service\"\n value=\"1\"\n checked={filter?.after_school_day_service}\n onChange={({ target: { checked } }) =>\n changeFilter({ after_school_day_service: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"after_school_day_service\">\n 放課後等デイサービス\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"infant_home\"\n value=\"1\"\n checked={filter?.infant_home}\n onChange={({ target: { checked } }) =>\n changeFilter({ infant_home: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"infant_home\">\n 乳児院\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_home\"\n value=\"1\"\n checked={filter?.child_home}\n onChange={({ target: { checked } }) =>\n changeFilter({ child_home: checked })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"child_home\">\n 児童養護施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"ko\"\n value=\"1\"\n checked={filter?.shogai}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shogai: checked,\n shogai_child_facility_welfare_type: checked,\n shogai_child_facility_medical_type: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"ko\">\n 障害児入所施設\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shogai_child_facility_welfare_type\"\n value=\"1\"\n checked={filter?.shogai_child_facility_welfare_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shogai_child_facility_welfare_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shogai_child_facility_welfare_type\">\n 福祉型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shogai_child_facility_medical_type\"\n value=\"1\"\n checked={filter?.shogai_child_facility_medical_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n shogai_child_facility_medical_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"shogai_child_facility_medical_type\">\n 医療型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"shokibo\"\n value=\"1\"\n checked={filter?.child_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({\n child_facility: checked,\n child_facility_welfare_type: checked,\n child_facility_medical_type: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"shokibo\">\n 児童発達支援\n </Label>\n </div>\n <div className=\"d-flex border p-2 flex-column ps-3 mb-2\">\n <div className=\"d-flex flex-row w-100 mb-2\">\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_facility_welfare_type\"\n value=\"1\"\n checked={filter?.child_facility_welfare_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n child_facility_welfare_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_facility_welfare_type\">\n 福祉型\n </Label>\n </div>\n <div\n className=\"form-check form-check-inline d-flex align-items-center\"\n style={{ width: '100px' }}>\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_facility_medical_type\"\n value=\"1\"\n checked={filter?.child_facility_medical_type}\n onChange={({ target: { checked } }) =>\n changeFilter({\n child_facility_medical_type: checked,\n })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_facility_medical_type\">\n 医療型\n </Label>\n </div>\n </div>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_psychotherapeutic_facility\"\n value=\"1\"\n checked={filter?.child_psychotherapeutic_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ child_psychotherapeutic_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_psychotherapeutic_facility\">\n 児童心理治療施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_independence_facility\"\n value=\"1\"\n checked={filter?.child_independence_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ child_independence_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_independence_facility\">\n 児童自立支援施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"child_family_support_facility\"\n value=\"1\"\n checked={filter?.child_family_support_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ child_family_support_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"child_family_support_facility\">\n 児童家庭支援センター\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"midwifery_facility\"\n value=\"1\"\n checked={filter?.midwifery_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ midwifery_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"midwifery_facility\">\n 助産施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"disability_support_facility\"\n value=\"1\"\n checked={filter?.disability_support_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ disability_support_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"disability_support_facility\">\n 障害者支援施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"employment_support_facility\"\n value=\"1\"\n checked={filter?.employment_support_facility}\n onChange={({ target: { checked } }) =>\n changeFilter({ employment_support_facility: checked })\n }\n />\n <Label\n className=\"form-check-label ps-1\"\n htmlFor=\"employment_support_facility\">\n 就労支援施設\n </Label>\n </div>\n <div className=\"form-check form-check-inline d-flex align-items-center mb-2\">\n <input\n className=\"form-check-input mb-1\"\n type=\"checkbox\"\n id=\"not_en\"\n value=\"1\"\n checked={filter?.not_en}\n onChange={({ target: { checked } }) =>\n changeFilter({\n not_en: checked,\n })\n }\n />\n <Label className=\"form-check-label ps-1\" htmlFor=\"not_en\">\n その他\n </Label>\n </div>\n </div>\n </div>\n <div className=\"my-3\">\n <hr />\n </div>\n <div className=\"d-flex pt-2 pb-5 w-100 justify-content-center\">\n <PinkButton\n width={100}\n height={40}\n label=\"検索\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={(e) => {\n e.preventDefault();\n return onSubmit();\n }}\n />\n </div>\n </div>\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nexport default Search;\n","import { useCallback, useReducer } from 'react';\n\nconst P = 'STUDENT_RECRUITMENT_SCHOOL_TYPE_FACILITY_SEARCH_';\nconst CHANGE_STATE = `${P}CHANGE_STATE`;\nconst CHANGE_FILTER = `${P}CHANGE_FILTER`;\nconst INITIALIZE = `${P}INITIALIZE`;\nconst MASK = `${P}MASK`;\nconst UNMASK = `${P}UNMASK`;\n\nconst initialState = {\n filter: {},\n isLoading: false,\n\n errorMessage: '',\n};\n\nconst reducer = (state = initialState, { type, payload }) => {\n switch (type) {\n case INITIALIZE: {\n return { ...state };\n }\n case CHANGE_STATE: {\n return { ...state, ...payload };\n }\n case CHANGE_FILTER: {\n return { ...state, filter: { ...state.filter, ...payload } };\n }\n case MASK: {\n return { ...state, isLoading: true };\n }\n case UNMASK: {\n return { ...state, isLoading: false };\n }\n default: {\n return state;\n }\n }\n};\n\nexport const useSearch = () => {\n const [{ filter, isLoading }, dispatch] = useReducer(reducer, initialState);\n const mask = useCallback(() => dispatch({ type: MASK }), [dispatch]);\n const unmask = useCallback(() => dispatch({ type: UNMASK }), [dispatch]);\n\n const initialize = useCallback(\n (params) => dispatch({ type: CHANGE_STATE, payload: { ...params } }),\n [dispatch],\n );\n\n const changeState = useCallback(\n (payload) => dispatch({ type: CHANGE_STATE, payload }),\n [dispatch],\n );\n\n const changeFilter = useCallback(\n (params) => dispatch({ type: CHANGE_FILTER, payload: params }),\n [dispatch],\n );\n\n const searchFilter = useCallback(async () => {\n mask();\n try {\n const prms = Object.keys(filter)\n .filter((key) => key !== 'page' && filter[key] !== null)\n .map((key) => ({\n [key]: filter[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `/student/reports/type_facility_search/results?${p}`;\n } finally {\n unmask();\n }\n }, [filter]);\n\n return {\n // store\n filter,\n isLoading,\n // actions\n initialize,\n changeState,\n changeFilter,\n searchFilter,\n };\n};\n","import React from 'react';\nimport Banner from '../../../../components/Title/Banner';\nimport Divider from '../../../../components/Divider/Divider';\nimport styled from 'styled-components';\nimport GrayButton from '../../../../components/Buttons/GrayButton';\n\nexport const PageTitle = styled.h6`\n font-size: 18px;\n color: #555252;\n`;\nexport const DescriptionField = styled.div`\n font-size: 13px;\n color: #555252;\n`;\n\n/**\n *\n * @param onClose\n * @param redirect {string} {activity_report|offer_report}\n * @returns {JSX.Element}\n * @constructor\n */\nexport const FacilityTypeSelect = ({\n onClose,\n redirect = 'activity_report',\n}) => {\n return (\n <>\n <PageTitle className=\"pt-3 ps-3\">分類選択</PageTitle>\n <section>\n <Banner\n label=\"報告する施設の分類を選択してください\"\n innerStyle={{ background: '#FFDEDE' }}\n bannerFontSize=\"13px\"\n />\n <div className=\"d-flex flex-row justify-content-center mt-4\">\n <div\n className=\"d-flex flex-column me-3\"\n style={{\n background: '#FF9999',\n width: '130px',\n height: '130px',\n borderRadius: '5px',\n cursor: 'pointer',\n }}\n onClick={() =>\n (location.href = `/student/reports/facility_search?redirect=${redirect}`)\n }>\n <div className=\"w-100 h-100 d-flex justify-content-center align-items-end mb-3\">\n 幼・保\n </div>\n <div\n className=\"w-100 h-100 d-flex justify-content-center align-items-center px-2 text-center mb-3\"\n style={{ fontSize: '10px' }}>\n 幼稚園・保育園・小規模保育所・認定こども園など\n </div>\n </div>\n <div\n className=\"d-flex flex-column ms-3\"\n style={{\n background: '#FFDEDE',\n width: '130px',\n height: '130px',\n borderRadius: '5px',\n cursor: 'pointer',\n }}\n onClick={() =>\n (location.href = `/student/reports/type_facility_search?redirect=${redirect}`)\n }>\n <div className=\"w-100 h-100 d-flex justify-content-center align-items-end mb-3\">\n 施 設\n </div>\n <div\n className=\"w-100 h-100 d-flex justify-content-center align-items-center px-2 text-center mb-3\"\n style={{ fontSize: '10px' }}>\n 児童館・学童・放課後デイ・児童養護施設・障害児入所施設など\n </div>\n </div>\n </div>\n </section>\n <Divider className=\"p-3 mt-5\" />\n <div className=\"d-flex justify-content-center mb-3\">\n <GrayButton\n width={100}\n height={40}\n label=\"戻る\"\n textFontSize={20}\n labelClassName=\"w-100\"\n onClick={() => onClose()}\n />\n </div>\n </>\n );\n};\n","import React from 'react';\nimport StudentFooter from '../../../components/Footers/StudentFooter';\nimport Content from '../../../components/Content';\nimport StudentBreadcrumbs from '../../../components/Breadcrumbs/StudentBreadcrumbs';\nimport PropTypes from 'prop-types';\nimport FacilityRecruitmentResultList from '../../../components/ResultList/FacilityRecruitmentResultList';\n\nconst List = ({ facilities, totalCount, totalPages, currentPage }) => {\n const BREADCRUMBS = [\n {\n text: 'TOP',\n href: '/student/home',\n },\n {\n text: '施設閲覧履歴',\n },\n ];\n\n const paginate = (pageNum) => {\n location.href = `${location.pathname}?page=${pageNum}`;\n };\n\n return (\n <>\n <Content className=\"mt-1\">\n <StudentBreadcrumbs items={BREADCRUMBS} />\n <h6 className=\"p-3 ps-4\">施設閲覧履歴</h6>\n <FacilityRecruitmentResultList\n facilities={facilities}\n currentPage={currentPage}\n totalPages={totalPages}\n onPaginate={paginate}\n />\n </Content>\n <StudentFooter />\n </>\n );\n};\n\nList.propTypes = {\n facilities: PropTypes.array,\n currentPage: PropTypes.number,\n totalPages: PropTypes.number,\n totalCount: PropTypes.number,\n};\n\nexport default List;\n","export const PREFECTURE_LIST = [\n {\n code: 1,\n name: '北海道',\n name_e: 'Hokkaido',\n name_h: 'ほっかいどう',\n name_k: 'ホッカイドウ',\n zips: ['10000..70895', '400000..996509'],\n area: '北海道',\n type: '道',\n },\n {\n code: 2,\n name: '青森県',\n name_e: 'Aomori',\n name_h: 'あおもりけん',\n name_k: 'アオモリケン',\n zips: ['185501..185501', '300111..395346'],\n area: '東北',\n type: '県',\n },\n {\n code: 3,\n name: '岩手県',\n name_e: 'Iwate',\n name_h: 'いわてけん',\n name_k: 'イワテケン',\n zips: ['200000..295703'],\n area: '東北',\n type: '県',\n },\n {\n code: 4,\n name: '宮城県',\n name_e: 'Miyagi',\n name_h: 'みやぎけん',\n name_k: 'ミヤギケン',\n zips: ['9800000..9896941'],\n area: '東北',\n type: '県',\n },\n {\n code: 5,\n name: '秋田県',\n name_e: 'Akita',\n name_h: 'あきたけん',\n name_k: 'アキタケン',\n zips: ['100000..185422', '185511..192742'],\n area: '東北',\n type: '県',\n },\n {\n code: 6,\n name: '山形県',\n name_e: 'Yamagata',\n name_h: 'やまがたけん',\n name_k: 'ヤマガタケン',\n zips: ['9900000..9998531'],\n area: '東北',\n type: '県',\n },\n {\n code: 7,\n name: '福島県',\n name_e: 'Fukushima',\n name_h: 'ふくしまけん',\n name_k: 'フクシマケン',\n zips: ['9600000..9793204'],\n area: '東北',\n type: '県',\n },\n {\n code: 8,\n name: '茨城県',\n name_e: 'Ibaraki',\n name_h: 'いばらきけん',\n name_k: 'イバラキケン',\n zips: ['3000000..3114407', '3114501..3193705'],\n area: '関東',\n type: '県',\n },\n {\n code: 9,\n name: '栃木県',\n name_e: 'Tochigi',\n name_h: 'とちぎけん',\n name_k: 'トチギケン',\n zips: ['3114411..3114411', '3200001..3294425', '3491221..3491221'],\n area: '関東',\n type: '県',\n },\n {\n code: 10,\n name: '群馬県',\n name_e: 'Gunma',\n name_h: 'ぐんまけん',\n name_k: 'グンマケン',\n zips: [\n '3700000..3701506',\n '3701511..3792314',\n '3840097..3840097',\n '3890121..3890121',\n ],\n area: '関東',\n type: '県',\n },\n {\n code: 11,\n name: '埼玉県',\n name_e: 'Saitama',\n name_h: 'さいたまけん',\n name_k: 'サイタマケン',\n zips: ['3300000..3491216', '3500001..3691912', '3701507..3701507'],\n area: '関東',\n type: '県',\n },\n {\n code: 12,\n name: '千葉県',\n name_e: 'Chiba',\n name_h: 'ちばけん',\n name_k: 'チバケン',\n zips: ['2600000..2995506'],\n area: '関東',\n type: '県',\n },\n {\n code: 13,\n name: '東京都',\n name_e: 'Tokyo',\n name_h: 'とうきょうと',\n name_k: 'トウキョウト',\n zips: ['1000000..2080035'],\n area: '関東',\n type: '都',\n },\n {\n code: 14,\n name: '神奈川県',\n name_e: 'Kanagawa',\n name_h: 'かながわけん',\n name_k: 'カナガワケン',\n zips: ['2100000..2591335'],\n area: '関東',\n type: '県',\n },\n {\n code: 15,\n name: '新潟県',\n name_e: 'Niigata',\n name_h: 'にいがたけん',\n name_k: 'ニイガタケン',\n zips: ['3892261..3892261', '9400000..9498317', '9498401..9594636'],\n area: '中部',\n type: '県',\n },\n {\n code: 16,\n name: '富山県',\n name_e: 'Toyama',\n name_h: 'とやまけん',\n name_k: 'トヤマケン',\n zips: ['9300001..9390156', '9390231..9398282'],\n area: '中部',\n type: '県',\n },\n {\n code: 17,\n name: '石川県',\n name_e: 'Ishikawa',\n name_h: 'いしかわけん',\n name_k: 'イシカワケン',\n zips: ['9200000..9220673', '9220801..9292379', '9390171..9390171'],\n area: '中部',\n type: '県',\n },\n {\n code: 18,\n name: '福井県',\n name_e: 'Fukui',\n name_h: 'ふくいけん',\n name_k: 'フクイケン',\n zips: ['9100001..9192387', '9220679..9220679'],\n area: '中部',\n type: '県',\n },\n {\n code: 19,\n name: '山梨県',\n name_e: 'Yamanashi',\n name_h: 'やまなしけん',\n name_k: 'ヤマナシケン',\n zips: ['4000000..4093867'],\n area: '中部',\n type: '県',\n },\n {\n code: 20,\n name: '長野県',\n name_e: 'Nagano',\n name_h: 'ながのけん',\n name_k: 'ナガノケン',\n zips: [\n '3800801..3840096',\n '3840301..3890115',\n '3890200..3892258',\n '3892300..3999601',\n '9498321..9498321',\n ],\n area: '中部',\n type: '県',\n },\n {\n code: 21,\n name: '岐阜県',\n name_e: 'Gifu',\n name_h: 'ぎふけん',\n name_k: 'ギフケン',\n zips: ['5000000..5099232'],\n area: '中部',\n type: '県',\n },\n {\n code: 22,\n name: '静岡県',\n name_e: 'Shizuoka',\n name_h: 'しずおかけん',\n name_k: 'シズオカケン',\n zips: ['4100000..4314112', '4320000..4390037'],\n area: '中部',\n type: '県',\n },\n {\n code: 23,\n name: '愛知県',\n name_e: 'Aichi',\n name_h: 'あいちけん',\n name_k: 'アイチケン',\n zips: ['4314121..4314121', '4400001..4980000', '4980001..4980069'],\n area: '中部',\n type: '県',\n },\n {\n code: 24,\n name: '三重県',\n name_e: 'Mie',\n name_h: 'みえけん',\n name_k: 'ミエケン',\n zips: [\n '4980000..4980000',\n '4980801..4980824',\n '5100000..5195835',\n '6471321..6471325',\n ],\n area: '関西',\n type: '県',\n },\n {\n code: 25,\n name: '滋賀県',\n name_e: 'Shiga',\n name_h: 'しがけん',\n name_k: 'シガケン',\n zips: ['5200000..5200363', '5200471..5291851'],\n area: '関西',\n type: '県',\n },\n {\n code: 26,\n name: '京都府',\n name_e: 'Kyoto',\n name_h: 'きょうとふ',\n name_k: 'キョウトフ',\n zips: ['5200461..5200465', '6000000..6180000', '6180071..6293579'],\n area: '関西',\n type: '府',\n },\n {\n code: 27,\n name: '大阪府',\n name_e: 'Osaka',\n name_h: 'おおさかふ',\n name_k: 'オオサカフ',\n zips: [\n '5300000..5630373',\n '5640000..5998276',\n '6180000..6180024',\n '6300271..6300272',\n ],\n area: '関西',\n type: '府',\n },\n {\n code: 28,\n name: '兵庫県',\n name_e: 'Hyogo',\n name_h: 'ひょうごけん',\n name_k: 'ヒョウゴケン',\n zips: ['5630801..5630801', '6500000..6795654'],\n area: '関西',\n type: '県',\n },\n {\n code: 29,\n name: '奈良県',\n name_e: 'Nara',\n name_h: 'ならけん',\n name_k: 'ナラケン',\n zips: [\n '6300000..6300267',\n '6301101..6393809',\n '6471271..6471271',\n '6471581..6471584',\n '6480300..6480309',\n ],\n area: '関西',\n type: '県',\n },\n {\n code: 30,\n name: '和歌山県',\n name_e: 'Wakayama',\n name_h: 'わかやまけん',\n name_k: 'ワカヤマケン',\n zips: ['6400000..6471235', '6471600..6480263', '6480401..6497216'],\n area: '関西',\n type: '県',\n },\n {\n code: 31,\n name: '鳥取県',\n name_e: 'Tottori',\n name_h: 'とっとりけん',\n name_k: 'トットリケン',\n zips: ['6800000..6840076', '6890101..6895673'],\n area: '中国',\n type: '県',\n },\n {\n code: 32,\n name: '島根県',\n name_e: 'Shimane',\n name_h: 'しまねけん',\n name_k: 'シマネケン',\n zips: ['6840100..6850435', '6900000..6995637'],\n area: '中国',\n type: '県',\n },\n {\n code: 33,\n name: '岡山県',\n name_e: 'Okayama',\n name_h: 'おかやまけん',\n name_k: 'オカヤマケン',\n zips: ['7000000..7193814'],\n area: '中国',\n type: '県',\n },\n {\n code: 34,\n name: '広島県',\n name_e: 'Hiroshima',\n name_h: 'ひろしまけん',\n name_k: 'ヒロシマケン',\n zips: ['7200001..7392732'],\n area: '中国',\n type: '県',\n },\n {\n code: 35,\n name: '山口県',\n name_e: 'Yamaguchi',\n name_h: 'やまぐちけん',\n name_k: 'ヤマグチケン',\n zips: ['7400000..7596614'],\n area: '中国',\n type: '県',\n },\n {\n code: 36,\n name: '徳島県',\n name_e: 'Tokushima',\n name_h: 'とくしまけん',\n name_k: 'トクシマケン',\n zips: ['7700000..7795453'],\n area: '四国',\n type: '県',\n },\n {\n code: 37,\n name: '香川県',\n name_e: 'Kagawa',\n name_h: 'かがわけん',\n name_k: 'カガワケン',\n zips: ['7600000..7692908'],\n area: '四国',\n type: '県',\n },\n {\n code: 38,\n name: '愛媛県',\n name_e: 'Ehime',\n name_h: 'えひめけん',\n name_k: 'エヒメケン',\n zips: ['7900001..7993772'],\n area: '四国',\n type: '県',\n },\n {\n code: 39,\n name: '高知県',\n name_e: 'Kochi',\n name_h: 'こうちけん',\n name_k: 'コウチケン',\n zips: ['7800000..7891936'],\n area: '四国',\n type: '県',\n },\n {\n code: 40,\n name: '福岡県',\n name_e: 'Fukuoka',\n name_h: 'ふくおかけん',\n name_k: 'フクオカケン',\n zips: [\n '8000000..8114343',\n '8120000..8160983',\n '8180000..8391415',\n '8710000..8710000',\n '8710226..8710226',\n '8710801..8710928',\n ],\n area: '九州',\n type: '県',\n },\n {\n code: 41,\n name: '佐賀県',\n name_e: 'Saga',\n name_h: 'さがけん',\n name_k: 'サガケン',\n zips: ['8400001..8480146', '8490000..8495264'],\n area: '九州',\n type: '県',\n },\n {\n code: 42,\n name: '長崎県',\n name_e: 'Nagasaki',\n name_h: 'ながさきけん',\n name_k: 'ナガサキケン',\n zips: [\n '8115100..8115757',\n '8170000..8172333',\n '8480401..8480408',\n '8500000..8596415',\n ],\n area: '九州',\n type: '県',\n },\n {\n code: 43,\n name: '熊本県',\n name_e: 'Kumamoto',\n name_h: 'くまもとけん',\n name_k: 'クマモトケン',\n zips: ['8600001..8696405'],\n area: '九州',\n type: '県',\n },\n {\n code: 44,\n name: '大分県',\n name_e: 'Oita',\n name_h: 'おおいたけん',\n name_k: 'オオイタケン',\n zips: [\n '8391421..8391421',\n '8700001..8701223',\n '8710000..8710208',\n '8710311..8710716',\n '8720000..8797885',\n ],\n area: '九州',\n type: '県',\n },\n {\n code: 45,\n name: '宮崎県',\n name_e: 'Miyazaki',\n name_h: 'みやざきけん',\n name_k: 'ミヤザキケン',\n zips: ['8800000..8894602'],\n area: '九州',\n type: '県',\n },\n {\n code: 46,\n name: '鹿児島県',\n name_e: 'Kagoshima',\n name_h: 'かごしまけん',\n name_k: 'カゴシマケン',\n zips: ['8900000..8998609'],\n area: '九州',\n type: '県',\n },\n {\n code: 47,\n name: '沖縄県',\n name_e: 'Okinawa',\n name_h: 'おきなわけん',\n name_k: 'オキナワケン',\n zips: ['9000000..9071801'],\n area: '九州',\n type: '県',\n },\n];\n","import { Modal, Offcanvas } from 'bootstrap';\nimport { toast } from 'react-toastify';\nimport {\n hasYouthEmploymentForm,\n isEnabledRecruitmentForm,\n} from '../utils/common';\nimport { VIEW_FACILITY_HISTORIES_TYPE_MAP_MARKER } from '../utils/constant';\nimport HttpRequest from '../utils/HttpRequest';\n\nconst REGET_DISTANCE = 1; // データを再取得する中心座標からの移動距離(単位:km)\n\nexport default class GoogleMapUtil {\n searchFilter;\n\n /**\n *\n * @param {\n * {\n * defaultLat: number,\n * defaultLng: number,\n * mapType: string,\n * }\n * } params {\n * {\n * currentButtonImgPath: 現在の自分のピンの位置周辺を再検索する画像\n * userMarkerImgPath: 自分のピンを表す画像\n * }\n * }\n */\n constructor(params) {\n const { defaultLat, defaultLng, mapType = 'school' } = params;\n this.mapType = this.getCorrectMapType(mapType);\n this.userMarkerImgPath = '/center.svg';\n const currentButtonDiv = document.createElement('img');\n currentButtonDiv.id = 'currentButton';\n currentButtonDiv.src = '/current.png';\n currentButtonDiv.index = 1;\n currentButtonDiv.classList.add('moveCurrentButton');\n this.currentButtonDiv = currentButtonDiv;\n this.nowLat = defaultLat;\n this.nowLng = defaultLng;\n // this.nowLat = 35.6790242;\n // this.nowLng = 139.7669185;\n // this.nowLat = 35.634585;\n // this.nowLng = 139.599741;\n this.map = null;\n this.userMarker = null;\n this.itemMarkers = [];\n this.searchFilter = {};\n this.setSearchConditions();\n }\n\n getCorrectMapType(t) {\n if (t === 'facility' || t === 'school') {\n return t;\n }\n return 'school';\n }\n\n resetSearchConditions() {\n this.searchFilter = {};\n }\n\n setSearchConditions() {\n const recruitmentSubmitted = $('#recruitmentSubmitted').prop('checked');\n const hasFacilityTourApplicant = $('#hasFacilityTourApplicant').prop(\n 'checked',\n );\n const hasComment = $('#hasComment').prop('checked');\n const ninka = $('#ninka').prop('checked');\n const municipality = $('#municipality').prop('checked');\n const muninka = $('#muninka').prop('checked');\n const _private = $('#private').prop('checked');\n const _public_private = $('#public_private').prop('checked');\n const _public = $('#public').prop('checked');\n const yo = $('#yo').prop('checked');\n const ho = $('#ho').prop('checked');\n const ko_yoho = $('#ko-yoho').prop('checked');\n const ko_yo = $('#ko-yo').prop('checked');\n const ko_ho = $('#ko-ho').prop('checked');\n const ko_sairyo = $('#ko-sairyo').prop('checked');\n const shokibo_a = $('#shokibo-a').prop('checked');\n const shokibo_b = $('#shokibo-b').prop('checked');\n const shokibo_c = $('#shokibo-c').prop('checked');\n const jigyosho_a = $('#jigyosho-a').prop('checked');\n const jigyosho_b = $('#jigyosho-b').prop('checked');\n const jigyosho_20over = $('#jigyosho-20over').prop('checked');\n const kigyo_ho = $('#kigyo_ho').prop('checked');\n const other_type = $('#other').prop('checked');\n const jidokan = $('#jidokan').prop('checked');\n const after_school_club = $('#after_school_club').prop('checked');\n const after_school_day_service = $('#after_school_day_service').prop(\n 'checked',\n );\n const infant_home = $('#infant_home').prop('checked');\n const child_home = $('#child_home').prop('checked');\n const shogai_child_facility_welfare_type = $(\n '#shogai_child_facility_welfare_type',\n ).prop('checked');\n const shogai_child_facility_medical_type = $(\n '#shogai_child_facility_medical_type',\n ).prop('checked');\n const child_facility_welfare_type = $('#child_facility_welfare_type').prop(\n 'checked',\n );\n const child_facility_medical_type = $('#child_facility_medical_type').prop(\n 'checked',\n );\n const child_psychotherapeutic_facility = $(\n '#child_psychotherapeutic_facility',\n ).prop('checked');\n const child_independence_facility = $('#child_independence_facility').prop(\n 'checked',\n );\n const child_family_support_facility = $(\n '#child_family_support_facility',\n ).prop('checked');\n const midwifery_facility = $('#midwifery_facility').prop('checked');\n const disability_support_facility = $('#disability_support_facility').prop(\n 'checked',\n );\n const employment_support_facility = $('#employment_support_facility').prop(\n 'checked',\n );\n const not_en = $('#not_en').prop('checked');\n this.searchFilter = {\n recruitmentSubmitted,\n hasFacilityTourApplicant,\n hasComment,\n ninka,\n municipality,\n muninka,\n _public,\n _public_private,\n _private,\n yo,\n ho,\n ko_yoho,\n ko_yo,\n ko_ho,\n ko_sairyo,\n shokibo_a,\n shokibo_b,\n shokibo_c,\n jigyosho_a,\n jigyosho_b,\n jigyosho_20over,\n kigyo_ho,\n other_type,\n jidokan,\n after_school_club,\n after_school_day_service,\n infant_home,\n child_home,\n shogai_child_facility_welfare_type,\n shogai_child_facility_medical_type,\n child_facility_welfare_type,\n child_facility_medical_type,\n child_psychotherapeutic_facility,\n child_independence_facility,\n child_family_support_facility,\n midwifery_facility,\n disability_support_facility,\n employment_support_facility,\n not_en,\n };\n }\n\n async searchWithConditions() {\n this.setSearchConditions();\n this.showMapLoading();\n try {\n const lat = this.nowLat;\n const lng = this.nowLng;\n const { facilities } = await this._search({\n lat,\n lng,\n keyword: $('#searchAddress').val(),\n });\n await this.renderItemMarkers([...facilities]);\n await this.renderMap(lat, lng);\n this.setView(lat, lng);\n } finally {\n this.hideMapLoading();\n }\n }\n\n async searchFromBookmark(id, lat, lng) {\n const sidebar = document.getElementById('studentSidebar');\n const bsSidebar = new Offcanvas(sidebar);\n bsSidebar.show();\n bsSidebar.hide();\n $('.offcanvas-backdrop.fade.show')?.remove();\n this.setSearchConditions();\n this.showMapLoading();\n try {\n const { facilities } = await this._search({\n lat,\n lng,\n keyword: $('#searchAddress').val(),\n });\n await this.renderItemMarkers([...facilities]);\n await this.renderMap(lat, lng);\n this.setView(lat, lng);\n const target = this.itemMarkers.find(\n (marker) => marker?.entity?.id && marker.entity.id === parseInt(id),\n );\n if (target) {\n google.maps.event.trigger(target, 'click');\n }\n this.nowLat = lat;\n this.nowLng = lng;\n } finally {\n this.hideMapLoading();\n }\n }\n\n openFilterModal() {\n // const modalEl = document.getElementById(\"filter-modal\");\n // const modal = new Modal(modalEl);\n // modal.show();\n }\n\n hideFilterModal() {\n // const modalEl = document.getElementById(\"filter-modal\");\n // const modal = new Modal(modalEl);\n // modal.hide();\n }\n\n /**\n *\n * @param params\n * @returns {{center: {lng: number, lat: number}, zoom: number, styles: [{featureType: string, stylers: [{visibility: string}]}], disableDefaultUI: boolean}}\n */\n getMapOption(params = {}) {\n let { lat, lng } = params;\n if (!lat) {\n lat = this.nowLat;\n }\n if (!lng) {\n lng = this.nowLng;\n }\n return {\n center: { lat, lng },\n zoom: 15,\n gestureHandling: 'greedy',\n disableDefaultUI: true,\n styles: [\n {\n featureType: 'poi',\n stylers: [\n {\n visibility: 'off',\n },\n ],\n },\n ],\n };\n }\n\n /**\n * GoogleMapの初期化処理\n */\n initialize() {\n let lat = this.nowLat;\n let lng = this.nowLng;\n let { map, userMarker } = this;\n this.getCurrentPosition()\n .then((res) => {\n // lat = 35.6475263;\n // lng = 139.625525;\n lat = res.coords.latitude;\n lng = res.coords.longitude;\n })\n .catch((e) => {\n console.error(e);\n })\n .finally(() => {\n map = new google.maps.Map(document.getElementById('map'), {\n ...this.getMapOption({ lat, lng }),\n });\n google.maps.event.addDomListener(\n this.currentButtonDiv,\n 'click',\n async () => {\n this.showMapLoading();\n try {\n const { facilities } = await this._search({\n lat,\n lng,\n ...this.searchFilter,\n });\n await this.renderItemMarkers([...facilities]);\n await this.renderMap(lat, lng);\n this.setView(lat, lng);\n this.nowLat = lat;\n this.nowLng = lng;\n } finally {\n this.hideMapLoading();\n }\n },\n );\n google.maps.event.addListener(map, 'dragstart', () => {\n $('#reloadMapButton').remove();\n });\n google.maps.event.addListener(map, 'dragend', () => {\n const center = map.getCenter();\n const distance = this.calcDistance(\n this.nowLat,\n this.nowLng,\n center.lat(),\n center.lng(),\n );\n if (distance > REGET_DISTANCE) {\n const reloadMapButtonDiv = document.createElement('button');\n reloadMapButtonDiv.id = 'reloadMapButton';\n reloadMapButtonDiv.index = 1;\n reloadMapButtonDiv.classList.add(\n 'btn',\n 'btn-default',\n 'searchAreaButton',\n );\n reloadMapButtonDiv.innerHTML = 'この範囲で再検索';\n google.maps.event.addDomListener(\n reloadMapButtonDiv,\n 'click',\n async () => {\n this.showMapLoading();\n try {\n $('#reloadMapButton').remove();\n const center = map.getCenter();\n if (this.userMarker) {\n this.userMarker.setMap(null);\n }\n const centerLat = center.lat();\n const centerLng = center.lng();\n const { facilities } = await this._search({\n lat: centerLat,\n lng: centerLng,\n });\n await this.renderItemMarkers([...facilities]);\n await this.renderMap(centerLat, centerLng);\n this.nowLat = centerLat;\n this.nowLng = centerLng;\n } finally {\n this.hideMapLoading();\n }\n },\n );\n map.controls[google.maps.ControlPosition.CENTER].push(\n reloadMapButtonDiv,\n );\n }\n });\n map.controls[google.maps.ControlPosition.RIGHT_BOTTOM].push(\n this.currentButtonDiv,\n );\n this.nowLat = lat;\n this.nowLng = lng;\n this.map = map;\n this.userMarker = userMarker;\n this._search({\n lat,\n lng,\n ...this.searchFilter,\n })\n .then(({ facilities }) => {\n this.renderItemMarkers([...facilities]);\n })\n .finally(() => this.renderMap(lat, lng));\n this.hideMapLoading();\n this.hideLoading();\n });\n }\n\n /**\n * マップ表示\n * @param lat\n * @param lng\n * @returns {Promise<void>}\n */\n async renderMap(lat, lng) {\n if (this.userMarker) {\n this.userMarker.setMap(null);\n }\n const map = this.map;\n\n this.userMarker = new google.maps.Marker({\n map,\n position: new google.maps.LatLng(lat, lng),\n icon: {\n url: this.userMarkerImgPath,\n scaledSize: new google.maps.Size(64, 64),\n },\n zIndex: 0,\n });\n }\n\n /**\n * Mapの場所検索\n * @returns {Promise<void>}\n */\n async searchPlace(params = {}, fromBookmark = false) {\n this.showMapLoading();\n try {\n const keyword = $('#searchAddress').val();\n if (keyword) {\n this.setSearchConditions();\n const geocoder = new google.maps.Geocoder();\n const { results } = await geocoder.geocode({\n address: keyword,\n });\n const result = results[0];\n const lat = result.geometry.location.lat();\n const lng = result.geometry.location.lng();\n await this.renderMap(lat, lng);\n this.setView(lat, lng);\n this.nowLat = lat;\n this.nowLng = lng;\n const { facilities } = await this._search({ keyword, lat, lng });\n await this.renderItemMarkers([...facilities]);\n }\n } catch (e) {\n console.error(e);\n } finally {\n this.hideMapLoading();\n }\n }\n\n /**\n *\n * @param {object} params\n * @returns {Promise<{facilities}>}\n */\n async _search(params = {}) {\n const res = await HttpRequest.post('/api/maps', {\n ...params,\n ...this.searchFilter,\n search_any: Object.values(this.searchFilter).every(\n (val) => val === false,\n ),\n search_type: this.mapType,\n });\n const {\n data: { facilities },\n } = res;\n\n return { facilities };\n }\n\n _getBookmarkHtml(facilityId) {\n return `\n <div data-facility-id=\"${facilityId}\" id=\"bookmark-facility-${facilityId}\" class=\"bookmark-add w-100 d-flex flex-row justify-content-end me-3\" style=\"cursor: pointer; font-size: 24px;\">\n <div style=\"color: #979797\"><i class=\"bi bi-star-fill\"></i></div>\n </div>\n `;\n }\n\n _getBookmarkedHtml(facilityId) {\n return `\n <div data-facility-id=\"${facilityId}\" id=\"bookmark-facility-${facilityId}\" class=\"bookmark-remove w-100 d-flex flex-row justify-content-end me-3\" style=\"cursor: pointer; font-size: 24px;\">\n <div style=\"color: #FFC000\"><i class=\"bi bi-star-fill\"></i></div>\n </div>\n `;\n }\n\n async fetchAttachedFile(facilityId) {\n $('#overlay-loading').show();\n try {\n const { data } = await HttpRequest.get(\n `/api/student/facilities/${facilityId}/attachments`,\n );\n let html = '';\n Object.entries(data).map(([key, _], index) => {\n let innerHtml = '';\n data[key].map((item, j) => {\n innerHtml += `\n <div class=\"d-flex w-100 p-1 ps-2 mb-1 f-${index}-inner\" style=\"background: #f2f2f2; color: #555252; display: none !important;\">\n <a style=\"color: #555252; font-size: 14px\" href=\"${item.filePath}\" target=\"_blank\" rel=\"nofollow\">${item.fileName}</a>\n </div>\n `;\n });\n html += `\n <div class=\"ps-3\">\n <div class=\"d-flex flex-column pt-2\" style=\"color: #ff9999;\">\n <div class=\"d-flex ms-2 mb-1 attached-file-by-date-open f-${index}-open\" data-idx=\"${index}\" >\n ${key}<span class=\"ms-1\"><i class=\"bi bi-plus\"></i></span>\n </div>\n <div class=\"d-flex ms-2 mb-1 attached-file-by-date-close f-${index}-close\" data-idx=\"${index}\" style=\"display: none !important;\">\n ${key}<span class=\"ms-1\"><i class=\"bi bi-dash\"></i></span>\n </div>\n </div>\n <div class=\"d-flex px-3 justify-content-start w-100 flex-column\">\n ${innerHtml}\n </div>\n </div>\n `;\n });\n if (!html) {\n return;\n }\n $('#attached-file-body').html(html);\n } finally {\n $('#overlay-loading').css({ cssText: 'display: none !important;' });\n }\n }\n\n /**\n * 施設をマップ上に配置する\n * @param {Object[]} entities\n * @returns {void}\n */\n renderItemMarkers(entities = []) {\n const { map } = this;\n this.clearItemMarkers();\n const features = entities.map((item) => ({\n position: new google.maps.LatLng(item.latitude, item.longitude),\n icon: {\n url: item.marker_image_path,\n size: new google.maps.Size(40, 40),\n scaledSize: new google.maps.Size(40, 40),\n origin: new google.maps.Point(0, 0),\n anchor: new google.maps.Point(20, 20),\n },\n shape: {\n type: 'circle',\n coords: [20, 20, 20],\n },\n zIndex: 1,\n entity: {\n ...item,\n },\n }));\n const renderBookmarkHtml = (facilityId, bookmarked) => {\n if (bookmarked) {\n return this._getBookmarkedHtml(facilityId);\n } else {\n return this._getBookmarkHtml(facilityId);\n }\n };\n\n const renderSiteUrlHtml = (url) => {\n if (!url) {\n return '';\n }\n\n return `\n <a\n class=\"d-block\"\n href=\"${url}\"\n rel=\"nofollow\"\n target=\"_blank\"\n style=\"text-overflow: ellipsis; overflow: hidden; width: 100%; max-width: 60vw\">\n ${url}\n </a>\n `;\n };\n\n const renderImg = (path) => {\n return `\n <div class=\"d-flex w-100 justify-content-center\">\n <img\n src=\"${path}\"\n alt=\"\"\n height=\"300px\"\n />\n </div>\n `;\n };\n\n const renderTel = (tel) => {\n return `<a href=\"tel:${tel}\" class=\"ps-0\">${tel}</a>`;\n };\n\n const renderFacilityAttachments = (facilityId, hasAttachedFile = false) => {\n if (!facilityId || !hasAttachedFile) {\n return '';\n }\n\n return `\n <div\n data-id=\"${facilityId}\"\n id=\"attached-files\"\n class=\"d-flex mt-2 ps-2\"\n style=\"color: #FF9999\">\n 添付資料を見る <span id=\"attached-file-open\" class=\"ms-1\"><i class=\"bi bi-plus\"></i></span><span id=\"attached-file-close\" class=\"ms-1\" style=\"display: none;\"><i class=\"bi bi-dash\"></i></span>\n </div>\n <div id=\"attached-file-body\" class=\"d-flex flex-column pt-2\">\n\n </div>\n `;\n };\n\n const renderEvent = (events = []) => {\n if (!events?.length) {\n return '';\n }\n let html = events\n .map((event, i) => {\n if (event.is_end_event || event.is_end_recruitment) {\n return `\n <div class=\"d-flex w-100 mx-0 mt-1 ${\n i !== 0 ? 'open-target-events' : ''\n }\" style=\"${i !== 0 ? 'display: none !important;' : ''}\">\n <button\n data-event-id=\"${event.id}\"\n data-url=\"/student/events/${event.id}\"\n class=\"event-info btn btn-primary mx-1 d-flex justify-content-start fw-bold align-items-center mx-0\"\n style=\"border-radius: 20px; width: 100%; height: 44px; background: #BFBFBF; border: 1px solid #BFBFBF\"\n >\n <div class=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style=\"font-size: 14px\">\n ${event.title}\n </div>\n <div style=\"font-size: 10px\">\n (開催日:${event.event_date})\n 募集終了\n </div>\n </div>\n </button>\n </div>\n `;\n }\n return `\n <div class=\"d-flex w-100 mx-0 mt-1 ${\n i !== 0 ? 'open-target-events' : ''\n }\" style=\"${i !== 0 ? 'display: none !important;' : ''}\">\n <button\n data-event-id=\"${event.id}\"\n data-url=\"/student/events/${event.id}\"\n class=\"event-info btn btn-primary mx-1 d-flex justify-content-start fw-bold align-items-center mx-0\"\n style=\"border-radius: 20px; width: 100%; height: 44px; background: #FF9999; border: 1px solid #FF9999\"\n >\n <div class=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style=\"font-size: 14px\">\n ${event.is_full ? '【満員】' : ''}\n ${event.title}\n </div>\n <div style=\"font-size: 10px\">\n (開催日:${event.event_date})\n </div>\n </div>\n </button>\n </div>\n `;\n })\n .join('');\n if (events.length > 1) {\n html += `\n <div class=\"d-flex py-2 justify-content-center\">\n <div\n class=\"py-1 px-2 cursor-pointer\"\n id=\"open-event-all\"\n style=\"font-size: 20px\">\n <i class=\"bi bi-chevron-double-down\"></i>\n </div>\n <div\n class=\"py-1 px-2 cursor-pointer\"\n id=\"close-event-all\"\n style=\"font-size: 20px; display: none;\">\n <i class=\"bi bi-chevron-double-up\"></i>\n </div>\n </div>`;\n }\n return html;\n };\n\n const renderRecruitment = (facilityId, recruitment) => {\n if (!recruitment?.id) {\n return '';\n }\n\n // 求人情報フォームに値が入力されているかをチェック\n const hasRecruitmentForm = isEnabledRecruitmentForm(recruitment ?? {});\n\n if (!hasRecruitmentForm && !recruitment.last_uploaded_file) {\n return '';\n }\n\n let url = `/student/facilities/${facilityId}/recruitments/${recruitment.id}`;\n\n if (!hasRecruitmentForm && recruitment.last_uploaded_file) {\n url = recruitment.last_uploaded_file;\n }\n\n if (recruitment.is_old_year) {\n return `\n <div class=\"d-flex w-100 mx-0 mt-1\">\n <button\n data-id=\"${facilityId}\"\n data-recruitment-id=\"${recruitment.id}\"\n data-url=\"${url}\"\n class=\"rec-info btn btn-secondary mx-1 d-flex justify-content-start fw-bold align-items-center mx-0\"\n style=\"border-radius: 20px; width: 100%; height: 44px; background: #BFBFBF; border: 1px solid #BFBFBF\"\n >\n <div class=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style=\"font-size: 14px\">\n ${recruitment.recruitment_year}年度求人情報\n </div>\n <div style=\"font-size: 10px;\">\n (更新日:${recruitment.updated_at_short})\n </div>\n </div>\n </button>\n </div>\n `;\n }\n if (recruitment.recruitment_is_closed) {\n return `\n <div class=\"d-flex w-100 mx-0 mt-1\">\n <button\n data-id=\"${facilityId}\"\n data-recruitment-id=\"${recruitment.id}\"\n data-url=\"${url}\"\n class=\"rec-info btn btn-secondary mx-1 d-flex justify-content-start fw-bold align-items-center mx-0\"\n style=\"border-radius: 20px; width: 100%; height: 44px; background: #BFBFBF; border: 1px solid #BFBFBF\"\n >\n <div class=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style=\"font-size: 14px\">\n (募集終了) ${recruitment.recruitment_year}年度求人情報\n </div>\n <div style=\"font-size: 10px;\">\n (更新日:${recruitment.updated_at_short})\n </div>\n </div>\n </button>\n </div>\n `;\n }\n\n return `\n <div class=\"d-flex w-100 mx-0 mt-1\">\n <button\n data-id=\"${facilityId}\"\n data-recruitment-id=\"${recruitment.id}\"\n data-url=\"${url}\"\n class=\"rec-info btn btn-primary mx-1 d-flex justify-content-start align-items-center mx-0\"\n style=\"border-radius: 30px; width: 100%; height: 53px; background: #FF9999; border: 1px solid #FF9999\"\n >\n <div class=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style=\"font-size: 18px\">\n ${recruitment.recruitment_year}年度求人情報\n </div>\n <div style=\"font-size: 10px;\">\n (更新日:${recruitment.updated_at_short})\n </div>\n </div>\n </button>\n </div>\n `;\n };\n const renderApplicant = (facilityId, enabledApplicant) => {\n if (!enabledApplicant) return '';\n return `\n <div class=\"d-flex w-100 mx-0 mt-1\">\n <button\n data-url=\"/student/facilities/${facilityId}/applicants/new\"\n class=\"applicant-info btn btn-primary mx-1 d-flex justify-content-start align-items-center mx-0\"\n style=\"border-radius: 30px; width: 100%; height: 53px; background: #4DCB00; border: 1px solid #4DCB00\"\n >\n <div class=\"d-flex flex-column justify-content-center align-items-center w-100\">\n <div style=\"font-size: 18px; color: #ffffff;\" class=\"fw-bold\">\n ENMAPから見学申込み\n </div>\n </div>\n </button>\n </div>\n `;\n };\n features.forEach((item) => {\n const { position, icon, shape, zIndex, entity } = item;\n const marker = new google.maps.Marker({\n position,\n icon,\n shape,\n zIndex,\n map: this.map,\n entity,\n });\n marker.addListener('click', function (event) {\n const lastLat = map.getCenter().lat();\n const lastLng = map.getCenter().lng();\n const { id: facilityId, latitude, longitude } = this.entity;\n const modalEl = document.getElementById('content-modal');\n const modal = new Modal(modalEl);\n\n $('#overlay-loading').show();\n\n HttpRequest.get(`/api/student/facilities/${facilityId}`)\n .then(\n ({\n data: {\n bookmarked,\n facility,\n recruitment,\n events,\n youth_employment,\n has_attachment: hasAttachment,\n comment,\n enabled_applicant,\n },\n }) => {\n HttpRequest.post('/api/student/view_facility_histories', {\n facility_id: facilityId,\n latitude: lastLat,\n longitude: lastLng,\n type: VIEW_FACILITY_HISTORIES_TYPE_MAP_MARKER,\n })\n .catch((e) => console.error(e))\n .finally(() => {\n let youthEmploymentUrl = `/student/corporates/${facility.corporate_id}/youth_employments`;\n if (!hasYouthEmploymentForm(youth_employment)) {\n youthEmploymentUrl = youth_employment.file_path;\n }\n // 法人IDがNULLか「個人」の場合は法人情報ボタンをDisabledにする\n const isDisableCorporateButton =\n !facility?.corporate_id ||\n facility?.corporate_name === '個人';\n\n const renderComment = () => {\n return comment ? comment : '';\n };\n\n const html = `\n <div class=\"d-flex w-100 flex-column\">\n <div class=\"d-flex flex-row justify-content-between px-2 pb-4\">\n <div class=\"d-flex\">\n <div class=\"pt-1 w-100 d-flex flex-row align-items-center ps-2\" style=\"font-size: 10px\">\n <div class=\"${\n facility.operator === '公営'\n ? 'public_color_icon'\n : 'private_color_icon'\n }\">●</div>${facility?.facility_type ?? ''}・${\n facility?.operator ?? ''\n }\n </div>\n </div>\n <div class=\"d-flex\">\n ${renderBookmarkHtml(facility.id, bookmarked)}\n <button\n id=\"facility-modal-close-btn\"\n lastlat=\"${lastLat}\"\n lastlng=\"${lastLng}\"\n facilityid=\"${facilityId}\"\n type=\"button\"\n class=\"btn-close p-2 ms-3\"\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n style=\"font-size: 24px; opacity: 1;\"\n ></button>\n </div>\n </div>\n <section class=\"mb-4\">\n <div class=\"mb-4 ps-2\">${facility.name}</div>\n ${renderImg(facility.top_image_file_path)}\n <div class=\"mt-4\">\n ${renderRecruitment(facility.id, recruitment)}\n ${renderApplicant(facility.id, enabled_applicant)}\n </div>\n <div class=\"mb-4\">\n ${renderEvent(events)}\n </div>\n ${renderFacilityAttachments(facilityId, hasAttachment)}\n </section>\n <section class=\"mt-2 mb-3 px-2\">\n <div class=\"d-flex w-100 flex-row\">\n <button\n class=\"corporate-info d-flex w-100 justify-content-center py-1 bg-white\"\n data-id=\"${facility.corporate_id}\"\n style=\"border-right: none; ${\n isDisableCorporateButton\n ? 'border: 1px solid #FF999955; color: #FF999955;'\n : 'border: 1px solid #FF9999; color: #FF9999'\n };\"\n ${isDisableCorporateButton ? 'disabled' : ''}\n >\n 法人情報\n </button>\n <button\n class=\"corporate-youth-employments d-flex w-100 justify-content-center py-1 bg-white\"\n data-id=\"${facility.corporate_id}\"\n data-url=\"${youthEmploymentUrl}\"\n style=\"${\n isDisableCorporateButton\n ? 'border: 1px solid #FF999955; color: #FF999955;'\n : 'border: 1px solid #FF9999; color: #FF9999'\n };\"\n ${\n isDisableCorporateButton || !youthEmploymentUrl\n ? 'disabled'\n : ''\n }\n >\n 青少年雇用情報\n </button>\n </div>\n </section>\n <section class=\"px-2\">\n <div class=\"w-100 table\">\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >施設種別</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >${\n facility?.facility_type\n ? facility?.facility_type\n : ''\n }</div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >施設種別備考</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.facility_type_remark\n ? facility?.facility_type_remark\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >許認可</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.authorization\n ? facility?.authorization\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >運営者区分</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${facility?.operator ? facility?.operator : ''}\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >開園日</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.opening_date\n ? facility?.opening_date\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >施設代表者</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.representative_name\n ? facility?.representative_name\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >代表者役職</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.representative_job_title\n ? facility?.representative_job_title\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >郵便番号</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.postal_code\n ? facility?.postal_code\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >住所</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${facility?.address ? facility?.address : ''}\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >\n 電話番号 <br />\n (代表)\n </div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >${\n facility?.tel ? renderTel(facility.tel) : ''\n }</div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >公式HP</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${renderSiteUrlHtml(facility?.site_url)}\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >その他HP</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${renderSiteUrlHtml(facility?.other_url)}\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >定員</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.children_count_limit\n ? facility?.children_count_limit\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >在園児</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.children_count\n ? facility?.children_count\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"border-top: 1px solid #555252; border-left: 1px solid #555252; border-right: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >学級数</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${\n facility?.facility_class_grade_number\n ? facility?.facility_class_grade_number\n : ''\n }\n </div>\n </div>\n <div class=\"d-flex flex-row\" style=\"min-height: 30px; border: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffdede;\n font-size: 14px;\n width: 40%;\"\n >園の紹介</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\"\n >\n ${facility?.feature.replaceAll('\\n', '<br/>')}\n </div>\n </div>\n <div class=\"d-flex flex-row mt-3\" style=\"min-height: 30px; border: 1px solid #555252;\">\n <div class=\"p-1\" style=\"\n border-right: 1px solid #555252;\n background: #ffabab;\n font-size: 14px;\n width: 40%;\"\n >学校コメント</div>\n <div class=\"p-1 w-100\" style=\"\n font-size: 14px;\n overflow: hidden;\n background: #ffdede;\"\n >\n ${renderComment().replaceAll('\\n', '<br/>')}\n </div>\n </div>\n </div>\n </section>\n <section>\n ${renderApplicant(facility.id, enabled_applicant)}\n </section>\n <div><div class=\"w-100 d-flex justify-content-center px-3\"><hr width=\"400\" align=\"center\"></div></div>\n <div class=\"d-flex w-100 justify-content-center\">\n <button\n class=\"modal-close btn btn-secondary mx-1 d-flex justify-content-center align-items-center\"\n style=\"width: 100px; height: 40px; background: #BFBFBF; border: 1px solid #BFBFBF\"\n data-bs-dismiss=\"modal\"\n aria-label=\"Close\"\n >\n <span style=\"font-size: 18px;\">閉じる</span>\n </button>\n </div>\n </div>\n `;\n $('#facility-modal-content').html(html);\n map.panTo(new google.maps.LatLng(latitude, longitude));\n modal.show();\n modalEl.addEventListener('hide.bs.modal', () => {\n const el = document.getElementById(\n 'facility-modal-close-btn',\n );\n const lat = el.getAttribute('lastlat');\n const lng = el.getAttribute('lastlng');\n map.panTo(new google.maps.LatLng(lat, lng));\n });\n });\n },\n )\n .finally(() => {\n $('#overlay-loading').css({ cssText: 'display: none !important;' });\n });\n });\n this.itemMarkers.push(marker);\n });\n }\n\n addBookmark(facilityId) {\n this.showMapLoading();\n HttpRequest.post('/api/bookmarks', { facility_id: facilityId })\n .then(() => {\n toast.success('ブックマークしました');\n $(`#bookmark-facility-${facilityId}`).replaceWith(\n this._getBookmarkedHtml(facilityId),\n );\n })\n .catch((e) => {\n console.error(e);\n toast.error('エラーが発生しました');\n })\n .finally(() => this.hideMapLoading());\n }\n\n removeBookmark(facilityId) {\n this.showMapLoading();\n HttpRequest.delete(`/api/bookmarks/${facilityId}`)\n .then(() => {\n toast.success('ブックマークを解除しました');\n $(`#bookmark-facility-${facilityId}`).replaceWith(\n this._getBookmarkHtml(facilityId),\n );\n })\n .catch((e) => {\n console.error(e);\n toast.error('エラーが発生しました');\n })\n .finally(() => this.hideMapLoading());\n }\n\n clearItemMarkers() {\n this.itemMarkers.forEach((marker) => {\n marker.setMap(null);\n });\n this.itemMarkers = [];\n }\n\n /**\n * 2点間の距離を計算\n * @param {number} lat1\n * @param {number} lng1\n * @param {number} lat2\n * @param {number} lng2\n * @returns {number}\n */\n calcDistance(lat1, lng1, lat2, lng2) {\n lat1 *= Math.PI / 180;\n lng1 *= Math.PI / 180;\n lat2 *= Math.PI / 180;\n lng2 *= Math.PI / 180;\n return (\n 6371 *\n Math.acos(\n Math.cos(lat1) * Math.cos(lat2) * Math.cos(lng2 - lng1) +\n Math.sin(lat1) * Math.sin(lat2),\n )\n );\n }\n\n /**\n * 現在の位置座標を取得する\n * @returns {Promise<unknown>}\n */\n getCurrentPosition() {\n return new Promise((resolve, reject) => {\n navigator.geolocation.getCurrentPosition(resolve, reject, {\n enableHighAccuracy: false,\n timeout: 10000,\n maximumAge: 0,\n });\n });\n }\n\n setView(lat, lng) {\n this.map.panTo(new google.maps.LatLng(lat, lng));\n }\n\n /**\n * ローディングのオーバーレイを表示\n *\n * @returns {void}\n */\n showLoading() {\n $('.loading').show();\n }\n\n showMapLoading() {\n $('.loadingArea').show();\n }\n\n /**\n * ローディングのオーバーレイを非表示\n *\n * @returns {void}\n */\n hideLoading() {\n $('.loading').fadeOut();\n }\n\n hideMapLoading() {\n $('.loadingArea').fadeOut();\n }\n}\n\nwindow.GoogleMapUtil = GoogleMapUtil;\n","import axios from 'axios';\n\nclass HttpRequest {\n get(url, config = null) {\n return axios.get(url, config);\n }\n\n post(url, data = {}, config = null) {\n return axios.post(url, data, config);\n }\n\n put(url, data = {}, config = null) {\n return axios.put(url, data, config);\n }\n\n patch(url, data = {}, config = null) {\n return axios.patch(url, data, config);\n }\n\n delete(url, config = null) {\n return axios.delete(url, config);\n }\n /**\n * 擬似的なリクエスト呼び出しを演出する\n * @param {number} ms\n * @returns\n */\n pseudoRequest(ms) {\n return new Promise((resolve) => setTimeout(resolve, ms));\n }\n}\n\nexport default new HttpRequest();\n","import React from 'react';\nimport axios from 'axios';\nimport {\n CAREER_TYPE,\n EMAIL_REGEX,\n EVENT_STATUS,\n FACILITY_STATUS,\n LEGAL_PERSON,\n LEGAL_PERSON_VALUE_MAP,\n NUMBER_REGEX,\n PHONE_REGEX,\n RECRUITMENT_STATUS,\n URL_REGEX,\n} from './constant';\n\naxios.defaults.headers.common = {\n 'X-Requested-With': 'XMLHttpRequest',\n 'X-CSRF-TOKEN': document\n .querySelector('meta[name=\"csrf-token\"]')\n .getAttribute('content'),\n};\n\nexport const paramsToObject = (urlStr) => {\n const urlParams = new URLSearchParams(urlStr);\n const entries = urlParams.entries();\n const result = {};\n for (const [key, value] of entries) {\n result[key] = value;\n }\n return result;\n};\n\nexport const careerTypeNum2Str = (careerType) => {\n switch (careerType) {\n case CAREER_TYPE.YO:\n return '幼稚園';\n case CAREER_TYPE.CORPORATE:\n return '一般企業';\n case CAREER_TYPE.HO:\n return '保育園';\n case CAREER_TYPE.HIGHER:\n return '進学(留学含)';\n case CAREER_TYPE.KO:\n return '認定こども園';\n case CAREER_TYPE.OTHER_FACILITY:\n return 'その他施設';\n case CAREER_TYPE.NOT_FIXED_OR_OTHER:\n return '未定・上記以外';\n default:\n return '';\n }\n};\n\nexport const getFacilityStatusText = (status) => {\n switch (status) {\n case FACILITY_STATUS.DRAFT:\n return '下書き';\n case FACILITY_STATUS.PUBLISHED:\n return '登録済';\n default:\n return '';\n }\n};\n\nexport const cvtRecruitmentStatusValue = (status) => {\n switch (status) {\n case 'draft':\n return RECRUITMENT_STATUS.DRAFT;\n default:\n return RECRUITMENT_STATUS.PUBLISHED;\n }\n};\n\nexport const cvtEventStatusValue = (status) => {\n switch (status) {\n case 'draft':\n return EVENT_STATUS.DRAFT;\n case 'end_recruitment':\n return EVENT_STATUS.END_RECRUITMENT;\n default:\n return EVENT_STATUS.PUBLISHED;\n }\n};\n\nexport const lbToBr = (txt) => {\n if (!txt) {\n return '';\n }\n return txt.split(/(\\n)/g).map((t) => (t === '\\n' ? <br /> : t));\n};\n\nexport const cvtLegalPersonToNumber = (legalPerson) => {\n switch (legalPerson) {\n case LEGAL_PERSON.CORPORATION:\n return LEGAL_PERSON_VALUE_MAP[LEGAL_PERSON.CORPORATION];\n case LEGAL_PERSON.SCHOOL:\n return LEGAL_PERSON_VALUE_MAP[LEGAL_PERSON.SCHOOL];\n case LEGAL_PERSON.MUNICIPALITY:\n return LEGAL_PERSON_VALUE_MAP[LEGAL_PERSON.MUNICIPALITY];\n case LEGAL_PERSON.SOCIAL_WELFARE:\n return LEGAL_PERSON_VALUE_MAP[LEGAL_PERSON.SOCIAL_WELFARE];\n case LEGAL_PERSON.NPO:\n return LEGAL_PERSON_VALUE_MAP[LEGAL_PERSON.NPO];\n case LEGAL_PERSON.RELIGIOUS:\n return LEGAL_PERSON_VALUE_MAP[LEGAL_PERSON.RELIGIOUS];\n case LEGAL_PERSON.LIMITED:\n return LEGAL_PERSON_VALUE_MAP[LEGAL_PERSON.LIMITED];\n }\n};\n\nexport const basicPaginate = (pageNum, params = {}, id = null) => {\n const prms = Object.keys(params)\n .filter((key) => key !== 'page' && params[key] !== null)\n .map((key) => ({\n [key]: params[key],\n }));\n const p = new URLSearchParams(Object.assign({}, ...prms)).toString();\n location.href = `${location.pathname}?page=${pageNum}${p ? '&' + p : ''}${\n id ? id : ''\n }`;\n};\n\nexport const isEnabledRecruitmentForm = (recruitment = {}) => {\n return recruitment.is_form;\n // return Object.keys(recruitment)\n // .filter(\n // (key) =>\n // // formの入力とは関係ないフィールドを除外\n // ![\n // 'id',\n // 'status',\n // 'status_text',\n // 'release_date',\n // 'title',\n // 'facilities',\n // 'file_path',\n // 'has_attached_file',\n // 'updated_at',\n // 'updated_at_short',\n // 'recruitment_year',\n // 'last_uploaded_file',\n // 'required_document_option',\n // 'required_document_option_names',\n // 'required_document_option_values',\n // 'document_submission_option',\n // 'document_submission_option_names',\n // 'document_submission_option_values',\n // 'is_old_format',\n // 'job_type_options',\n // 'allowance_options',\n // 'is_lock_release_date',\n // 'disabled_edit',\n // 'monthly_salary_total',\n // ].includes(key),\n // )\n // .some((k) => {\n // console.log(k, recruitment[k], !!recruitment[k]);\n // return !!recruitment[k];\n // });\n};\n\nexport const isProduction = process.env.APP_ENV === 'production';\nexport const isLocal = process.env.APP_ENV === 'local';\n\n/**\n * 卒業予定年度を返す\n * @param {number} prevYear 現在年より前を何年前までたどるか\n * @param {number} nextYear 現在年から何年後までたどるか\n * @returns {number[]} 年\n */\nexport const getAvailableGraduationYears = (prevYear = 0, nextYear = 5) => {\n return [\n ...[...Array(prevYear).keys()]\n .map((i) => {\n return new Date().getFullYear() - (i + 1);\n })\n .reverse(),\n ...[...Array(nextYear).keys()].map((i) => {\n return new Date().getFullYear() + i;\n }),\n ];\n};\n\nexport const getCurrentSchoolYear = () => {\n const dt = new Date();\n const month = dt.getMonth() + 1;\n if (month < 4) {\n return dt.getFullYear() - 1;\n }\n return dt.getFullYear();\n};\n\nexport const hasYouthEmploymentForm = (youth_employment) => {\n return Object.keys(youth_employment || {})\n .filter(\n (key) =>\n ![\n 'id',\n 'updated_at',\n 'file_path',\n 'recorded_at',\n 'recruitment_schedule_date',\n ].includes(key),\n )\n .some((k) => !!youth_employment[k]);\n};\n\nexport const inputOnlyNumber = (\n field,\n value,\n watch,\n setValue,\n maximumFractionDigits = 1,\n) => {\n const currentValue = watch(field);\n if (isNaN(Number(value))) {\n return setValue(field, currentValue);\n }\n if (value.indexOf('.') >= 0) {\n return setValue(field, currentValue);\n }\n const nums = value.split('.');\n const floatNum = nums.length === 2 ? nums[1] : null;\n const dots = value.match(/\\./g);\n if (dots?.length > 1) {\n return setValue(field, currentValue);\n }\n if (floatNum?.length > maximumFractionDigits) {\n return setValue(field, nums[0] + '.' + floatNum[0]);\n }\n return setValue(field, Number(value).toString());\n};\n\nexport const validateDate = (date) => {\n // 2024-01-01\n if (/^\\d{4}-\\d{2}-\\d{2}$/.test(date)) {\n return true;\n }\n // 2024/01/01\n if (/^\\d{4}\\/\\d{2}\\/\\d{2}$/.test(date)) {\n return true;\n }\n // 2024-1-01\n if (/^\\d{4}-\\d{1}-\\d{2}$/.test(date)) {\n return true;\n }\n // 2024/1/01\n if (/^\\d{4}\\/\\d{1}\\/\\d{2}$/.test(date)) {\n return true;\n }\n // 2024-01-1\n if (/^\\d{4}-\\d{2}-\\d{1}$/.test(date)) {\n return true;\n }\n // 2024/01/1\n if (/^\\d{4}\\/\\d{2}\\/\\d{1}$/.test(date)) {\n return true;\n }\n // 2024-1-1\n if (/^\\d{4}-\\d{1}-\\d{1}$/.test(date)) {\n return true;\n }\n // 2024/1/1\n if (/^\\d{4}\\/\\d{1}\\/\\d{1}$/.test(date)) {\n return true;\n }\n return false;\n};\n\nexport const urlReg = new RegExp(URL_REGEX);\nexport const phoneReg = new RegExp(PHONE_REGEX);\nexport const emailReg = new RegExp(EMAIL_REGEX);\nexport const numberReg = new RegExp(NUMBER_REGEX);\n","export const MAX_FILE_SIZE = 10240; // 10MB\nexport const USER_TYPE = {\n STUDENT: 1,\n CORPORATE_MANAGER: 2,\n ADVISOR: 3,\n ADMIN: 999,\n};\n\nexport const CAREER_TYPE = {\n YO: 1, // 幼稚園\n CORPORATE: 2, // 一般企業\n HO: 3, // 保育園\n HIGHER: 4, // 進学(留学含)\n KO: 5, // 認定こども園\n OTHER_FACILITY: 6, // その他施設\n NOT_FIXED_OR_OTHER: 7, // 未定・上記以外\n};\n\nexport const URL_REGEX = /https?:\\/\\/[\\w!?/+\\-_~;.,*&@#$%()'[\\]]+/;\n\nexport const PHONE_REGEX =\n /^(?:\\d{10}|\\d{4}-\\d{3}-\\d{3}|\\d{4}-\\d{2}-\\d{4}|\\d{3}-\\d{3}-\\d{4}|\\d{2}-\\d{4}-\\d{4}|\\d{3}-\\d{4}-\\d{4})$/;\n\nexport const PHONE_REGEX_WITH_SEP =\n /^(?:\\d{4}-\\d{3}-\\d{3}|\\d{4}-\\d{2}-\\d{4}|\\d{3}-\\d{3}-\\d{4}|\\d{2}-\\d{4}-\\d{4}|\\d{3}-\\d{4}-\\d{4})$/;\n\nexport const EMAIL_REGEX =\n /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$/;\n\nexport const NUMBER_REGEX = /^[0-9]+$/;\n\nexport const FACILITY_OPERATOR = ['民営', '公設民営', '公営'];\n\nexport const FACILITY_EN_TYPES = [\n '保育所',\n '幼稚園',\n '認定こども園(保育所型)',\n '認定こども園(幼稚園型)',\n '認定こども園(幼保連携型)',\n '認定こども園(地方裁量型)',\n '小規模保育(A型)',\n '小規模保育(B型)',\n '小規模保育(C型)',\n '事業所内保育(A型)',\n '事業所内保育(B型)',\n '事業所内保育(20名超)',\n '企業主導型保育施設',\n 'その他(幼保系)',\n];\nexport const FACILITY_FACILITY_TYPES = [\n '児童館',\n '放課後児童クラブ',\n '放課後等デイサービス',\n '乳児院',\n '児童養護施設',\n '障害児入所施設(福祉型)',\n '障害児入所施設(医療型)',\n '児童発達支援(福祉型)',\n '児童発達支援(医療型)',\n '児童心理治療施設',\n '児童自立支援施設',\n '児童家庭支援センター',\n '助産施設',\n '障害者支援施設',\n '就労支援施設',\n 'その他(施設系)',\n];\n\nexport const FACILITY_AUTHORIZATIONS = ['認可', '自治体独自認可', '認可外'];\n\nexport const FACILITY_STATUS = {\n DRAFT: 0,\n PUBLISHED: 1,\n};\n\nexport const RECRUITMENT_STATUS = {\n PUBLISHED: 0,\n DRAFT: 9,\n};\n\nexport const LEGAL_PERSON = {\n CORPORATION: 'corporation',\n SCHOOL: 'school',\n MUNICIPALITY: 'municipality',\n SOCIAL_WELFARE: 'social_welfare',\n NPO: 'npo',\n RELIGIOUS: 'religious',\n LIMITED: 'limited',\n};\n\nexport const LEGAL_PERSON_VALUE_MAP = {\n [LEGAL_PERSON.CORPORATION]: '1',\n [LEGAL_PERSON.SCHOOL]: '2',\n [LEGAL_PERSON.MUNICIPALITY]: '3',\n [LEGAL_PERSON.SOCIAL_WELFARE]: '4',\n [LEGAL_PERSON.NPO]: '5',\n [LEGAL_PERSON.RELIGIOUS]: '6',\n [LEGAL_PERSON.LIMITED]: '7',\n};\n\nexport const LEGAL_PERSON_LABEL_MAP = {\n [LEGAL_PERSON.CORPORATION]: '株式会社',\n [LEGAL_PERSON.SCHOOL]: '学校法人',\n [LEGAL_PERSON.MUNICIPALITY]: '自治体',\n [LEGAL_PERSON.SOCIAL_WELFARE]: '社会福祉法人',\n [LEGAL_PERSON.NPO]: 'NPO法人',\n [LEGAL_PERSON.RELIGIOUS]: '宗教法人',\n [LEGAL_PERSON.LIMITED]: 'その他',\n};\n\nexport const VIEW_FACILITY_HISTORIES_TYPE_MAP_MARKER = 'MAP_MARKER';\nexport const VIEW_FACILITY_HISTORIES_TYPE_DEFAULT = 'DEFAULT';\n\nexport const EVENT_STATUS = {\n PUBLISHED: 0,\n END_RECRUITMENT: 1,\n DRAFT: 9,\n};\n\nexport const EVENT_STATUS_ENUM = {\n DRAFT: 'draft',\n END_RECRUITMENT: 'end_recruitment',\n PUBLISHED: 'published',\n};\n\nexport const SERVICE_PLANS = [\n {\n id: 101,\n name: 'スタンダード',\n },\n {\n id: 201,\n name: 'プレミアム',\n },\n];\n\nexport const MANUAL_CATEGORY = [\n {\n id: 'basic_info',\n name: '基本情報',\n target: 'facility',\n },\n {\n id: 'recruitment',\n name: '求人情報',\n target: 'facility',\n },\n {\n id: 'common_plan',\n name: 'プラン共通',\n target: 'school',\n },\n {\n id: 'premium_plan',\n name: 'プレミアムプラン',\n target: 'school',\n },\n];\n\nexport const MANUAL_DISPLAY_TARGET = [\n {\n id: 'facility',\n name: '施設',\n },\n {\n id: 'school',\n name: '学校',\n },\n];\n\nexport const INQUIRY_CATEGORY = {\n recruitment: '求人情報の登録について',\n delivery: '配信方法について',\n facility: '法人・施設情報の編集について',\n other: 'その他',\n};\n\nexport const SCHOOL_INQUIRY_CATEGORY = {\n student_registration: '学生情報の登録について',\n student_info: '学生情報について',\n recruitment_info: '求人情報について',\n other: 'その他',\n};\n\nexport const CORPORATE_TYPES = Object.values(LEGAL_PERSON).map((key) => ({\n value: key,\n label: LEGAL_PERSON_LABEL_MAP[key],\n}));\n\nexport const YOUTH_EMPLOYMENT_OPTIONS = [\n {\n value: '1',\n name: 'あり',\n },\n {\n value: '',\n name: 'なし',\n },\n];\n\nexport const FacilityDefaultColorStyle = {\n color: '#7a7979',\n};\n\nexport const FacilityPrimaryColorStyle = {\n color: '#4474C4',\n};\n\nexport const schoolColor = {\n main: '#00B3AA',\n};\n\nexport const schoolMenuTitle = {\n text: 'ENMAP 学校画面TOP',\n href: '/my_school/home',\n};\n","export const disableApplicant = (event) => {\n return event?.is_end_event || event?.is_full || event?.is_end_recruitment;\n};\n","import firebase from 'firebase/compat/app';\nimport 'firebase/compat/auth';\n\nconst config = {\n apiKey: process.env.FIREBASE_API_KEY,\n authDomain: process.env.FIREBASE_AUTH_DOMAIN,\n databeseURL: process.env.FIREBASE_DATABASE_URL,\n projectId: process.env.FIREBASE_PROJECT_ID,\n storageBucket: process.env.FIREBASE_STORAGE_BUCKET,\n messagingSenderId: process.env.FIREBASE_MESSAGING_SENDER_ID,\n appId: process.env.FIREBASE_APP_ID,\n measurementId: process.env.FIREBASE_MEASUREMENT_ID,\n};\n// initializeを複数回走らせない\nif (firebase.apps.length === 0) {\n firebase.initializeApp(config);\n}\n\nconst auth = firebase.auth();\nexport { auth };\n"],"names":["webpackEmptyContext","req","e","Error","code","keys","resolve","id","module","exports","map","webpackContext","webpackContextResolve","__webpack_require__","o","Object","updateFacilityTourApplicantOption","async","HttpRequest","patch","data","deleteFacilityTourApplicantOption","delete","restartFacilityTourApplicantOption","restart","fetchCities","get","prefCode","then","_ref","cities","fetchMe","_ref2","signOut","auth","postLogin","post","id_token","channels","require","forEach","Controller","onDelete","preventDefault","confirm","params","url","window","location","reload","static","onSelectChanged","email","String","password","connect","_auth","getAuth","onAuthStateChanged","user","Promise","this","showLoading","idToken","getIdToken","user_type","USER_TYPE","ADMIN","href","setError","console","error","hideLoading","onSubmit","clearError","lockForm","signInWithEmailAndPassword","emailValue","passwordValue","unlockForm","emailTarget","disabled","passwordTarget","submitTarget","application","getControllerForElementAndIdentifier","document","getElementById","changeEmail","event","target","value","changePassword","errorTarget","innerText","classList","add","remove","message","onCategoryChanged","click","loaderTarget","visible","Boolean","toggle","visibleValue","innerHTML","toggleTarget","logout","Application","start","context","load","definitionsFromContext","debug","hostname","Rails","Turbolinks","ActiveStorage","componentRequireContext","useContext","items","separator","React","className","item","key","text","icon","reduce","prev","curr","length","fontSize","style","color","background","BlackButton","props","label","labelElement","leftIcon","rightIcon","width","height","iconFontSize","textFontSize","labelClassName","onClick","border","bg","propTypes","PropTypes","defaultProps","Button","variant","outlined","classNames","getButtonClass","getColor","schoolColor","main","DefaultButton","GrayButton","pill","borderRadius","GreenButton","buttonColor","OrangeButton","PinkButton","PrimaryButton","OutlineButton","styled","div","_ref3","_ref4","_ref5","_ref6","ToneArea","_ref7","toneWidth","_ref8","toneColor","TwoToneButton","content","RequiredText","span","Label","CitySelect","required","selectedValue","onChange","prefecture","defaultCities","editMode","register","setCities","useState","isLoading","setIsLoading","useEffect","filter","city","name","includes","htmlFor","_extends","selected","toString","padStart","children","marginBottom","Link","targetIds","addTargetId","_","addAllTargets","removeTargetId","removeAllTargets","hideCheck","hidePosition","hideDepartment","hideIsManager","showEmail","showInitialPassword","showCorporateName","showLatestLoggedInAt","isShowPasswords","setIsShowPasswords","Table","TableHead","HeadCell","type","checked","TableBody","corporateManager","TableRow","BodyCell","corporate_id","corporate_name","initial_password","position","department","is_admin","latest_logged_in_at","eventApplicant","user_name","school_name","graduation_year","scheduled_acquisition_certificate_values","join","applicant_date","contact_info","parent_event","title","management_status","management_status_label","SchoolList","stickyHeader","disabledIds","showPlan","showDisplayFlag","school","service_plan_name","student_count","address","tel","display_flag","SchoolIcon","xmlns","fill","viewBox","d","Divider","hrClassName","align","borderLeft","Footer","footer","BasicFixedFooter","FacilityFooter","footerClass","rel","SchoolFooter","Text","visibleReport","dataset","zIndex","cursor","src","HomeSVG","alt","BookMarkSVG","ReportSVG","MenuSVG","StudentSidebarDrawer","AdminHeader","loggedIn","checkLoggedIn","useLoginModule","backgroundColor","EnmapLogo","minHeight","handleLogout","textDecoration","FacilityHeader","userName","fontWeight","SchoolManagementHeader","schoolName","StudentHeader","ignoreCheckLoggedIn","EnmapColorLabel","loading","role","ReactLoading","Logo","isShow","onHide","okLabel","Modal","size","show","centered","Body","CorporateNameField","BookmarkArea","TableLeft","td","TableRight","CorporateEnmapUsingInfoModal","corporateId","defaultBookmarked","corporate","onLoad","useCorporatePaperInfo","isLocalMask","bookmarked","addBookmark","removeBookmark","changeState","useCorporateBookmark","LoadingOverlay","Header","closeButton","borderBottom","legal_person_position","legal_person","person_in_charge","person_in_charge_department","postal_code","site_url","textOverflow","overflow","maxWidth","CorporatePaperInfoModal","HeaderContent","cancelLabel","Title","FileInputLeft","EventAttachedFileUpload","errorMessage","onClose","onOk","fileName","setFileName","file","setFile","paddingTop","paddingBottom","display","accept","files","AttachedFileField","eventId","attachedFiles","openAttachedFiles","useEventModal","isOpenAttachedFileList","setIsOpenAttachedFileList","openedAttachedFiles","setOpenedAttachedFiles","catch","response","status","toast","CloseButton","opacity","top_image_file_path","updated_at","event_type_label","event_date_ja","implementation_time_from","implementation_time_to","event_location","target_facility_type_names","whiteSpace","subject","note","capacity","person_in_charge_tel","person_in_charge_email","entries","k","some","i","filePath","disableApplicant","open","borderRight","onCancel","FacilityAttachmentFileUpload","fileSizeErrorMessage","setFileSizeErrorMessage","Math","ceil","MAX_FILE_SIZE","PublicColorIcon","PrivateColorIcon","TableRowWrap","TableLeft2","TableRight2","FacilityModal","facilityId","isReport","onReportBtnClick","facility","recruitment","events","youth_employment","hasAttachment","comment","enabledApplicant","useFacilityInfo","hasRecruitmentForm","isEnabledRecruitmentForm","isDisableCorporateButton","isOpenEventAccordion","setIsOpenEventAccordion","handleClickRecruitmentButton","useCallback","last_uploaded_file","buttonProps","renderRecruitment","updated_at_short","is_old_year","recruitment_year","recruitment_is_closed","renderApplicant","ApplicantButton","renderEvents","tmpEvents","is_end_event","is_end_recruitment","event_date","is_full","renderComment","lbToBr","operator","facility_type","hasYouthEmploymentForm","file_path","facility_type_remark","authorization","opening_date","representative_name","representative_job_title","other_url","children_count_limit","children_count","facility_class_grade_number","feature","FacilitySearchModal","changeFilter","ko","shokibo","jigyosho","PrefectureSelect","pref_code","Number","city_code","recruitmentSubmitted","eventSubmitted","ho","yo","ko_ho","ko_yo","ko_yoho","ko_sairyo","shokibo_a","shokibo_b","shokibo_c","jigyosho_a","jigyosho_b","jigyosho_20over","kigyo_ho","other_type","jidokan","after_school_club","after_school_day_service","infant_home","child_home","shogai_child_facility_welfare_type","shogai_child_facility_medical_type","child_facility_welfare_type","child_facility_medical_type","child_psychotherapeutic_facility","child_independence_facility","child_family_support_facility","midwifery_facility","disability_support_facility","employment_support_facility","not_en","_ref9","_ref10","_ref11","_ref12","_ref13","_ref14","_ref15","_ref16","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","_ref23","_ref24","_ref25","_ref26","_ref27","_ref28","_ref29","_ref30","_ref31","_ref32","_ref33","_ref34","_ref35","_ref36","_ref37","_ref38","_ref39","FileUpload","persist","isDelete","ja","options","weekStartsOn","registerLocale","initialState","created_at_from","created_at_to","updated_at_from","updated_at_to","show_pdf","show_data","modalFilter","setModalFilter","f","dayjs","toDate","DatePicker","dateFormat","locale","placeholderText","date","v","getFullYear","getMonth","getDate","inputText","setInputText","placeholder","isAdditional","FacilityDefaultColorStyle","P","MASK","UNMASK","LOCAL_MASK","LOCAL_UNMASK","CHANGE_STATE","INITIALIZE","reducer","state","arguments","undefined","payload","dispatch","useReducer","mask","unmask","localMask","localUnMask","event_id","success","h5","SubTitle","LinkWrap","LinkText","Base","InnerPanel","subTitle","contentClassName","disabledBackground","HomeLeftPane","disabledApplicant","dangerButtonProps","isProduction","ManualLeftPane","basicInfoManuals","recruitmentManuals","renderManual","manual","index","InquiryLeftPane","RightPane","redirectPath","FirstPaginationItem","LastPaginationItem","totalPages","PrevPaginationItem","prevPage","NextPaginationItem","nextPage","Pagination","currentPage","onPaginationClick","firstPage","lastPage","previousPage","pages","range","page","paginationItem","isRequired","ArrowWrap","Num","StudentPagination","Paper","headerRenderer","customParams","PREFECTURE_LIST","pref","DetailButtonDefault","button","DetailButtonRecruit","NameField","AddressField","CorporateRecruitmentResultList","corporates","onPaginate","onRetrySearch","isGeneralType","recruitment_active_date","facilities","GreenColorIcon","FacilityTypeField","EventDateField","ApplicantHistoryButton","onApplicantHistory","modalEventId","setModalEventId","isOpenEventModal","setIsOpenEventModal","getEventDetailButtonColor","applicant_history_id","getEventDetailButtonLabel","EventModal","FacilityRecruitmentResultList","hideModalButton","modalFacilityId","setModalFacilityId","isOpenFacilityModal","setIsOpenFacilityModal","openModal","CorporateOptionTable","corporateIds","itemLen","scope","defaultChecked","FacilityList","hideAuthorization","hideOperator","hideHp","hideUpdatedAt","hideLink","showStatus","showRecruitmentRegisteredAt","showRelatedRecruitmentTitle","showFacilityViewedCount","showRelatedCorporateName","disableRecruitmentLink","withDeletedLabel","showTopImageFile","canUploadTopImage","uploadTopImage","sortHeaders","onSort","deleteTopImage","nameRenderer","topImageDeleteFacilityId","setTopImageDeleteFacilityId","inputRef","useRef","getSortIcon","sortHeader","find","order","renderCorporateRecruitment","recruitments","cnt","parent_recruitment_id","slice","elem","nextOrder","clickable","deleted","getFacilityStatusText","recruitment_created_at","related_recruitments","current_year_facility_viewed_count","current","facility_id","ref","origin_top_image_file_path","DeleteModal","FacilityOptionTable","facilityIds","other_address","commonPlanManuals","premiumPlanManuals","RadioOptions","fieldName","option","pdfs","isShowAttachment","hasRecruitmentPdf","openRecruitmentPdf","pdfDisabled","watch","setValue","formDisabled","errors","isOldFormat","control","addPdfFiles","addRecruitmentPdf","deletePdfFile","now","isOpenFileUploadModal","setIsOpenFileUploadModal","isOpenRecruitmentFileUploadModal","setIsOpenRecruitmentFileUploadModal","isOpenAttachedFileDeleteModal","setIsOpenAttachedFileDeleteModal","deleteTargetFile","setDeleteTargetFile","tableLeftCellStyle","jobTypeOptionField","useFieldArray","allowanceOptionField","release_date","job_type","recruitment_number","fields","field","inputOnlyNumber","recruitment_job_type_options","append","salary_info","rows","cols","monthly_allowance","monthly_salary_total","VerticalDivider","recruitment_allowance_options","amount","category","base","filtered","isNaN","sum","calcCategoryAllSalary","calcCategoryTargetSalary","bonus_info","est_yearly_bonus_amount_for_uniformly","est_yearly_bonus_amount_for_target","est_yearly_bonus_amount_for_uniformly_year","toLocaleString","est_yearly_bonus_amount_for_target_year","monthly_salary_note","salary_rise_info","defaultValue","travel_expense_cover_option","travel_expense_cover_info","insurance_policy_info","welfare_info","housing_allowance_option","housing_allowance_info","weekday_working_hour_info","holiday_working_hour_info","holiday_info","currentValue","indexOf","annual_holiday_number","paid_holiday_number","commuting_time_info","bicycle_ok","motor_bike_ok","hiring_standard_info","en_policy","required_document_option","required_documents_info","document_submission_option","document_submission_term_info","selection_process_info","selection_date_info","interview_location_info","required_item_info","observability_option","observability_info","observation_application_option","observation_application_info","job_application_info","recruiter_name","recruiter_role","validate","input","phoneReg","test","split","every","recruiter_tel","emailReg","recruiter_email","pdfData","uploadDate","signedUrl","Trash","close","format","created_at","AttachedFileDeleteModal","finally","titleRenderer","InlineSearch","placeHolder","onKeyPress","inputStyle","buttonStyle","borderTopRightRadius","borderBottomRightRadius","PageTitle","PageTitleField","SearchResultSubTitleField","count","overflowWrap","activeStyle","inActiveStyle","active","letterSpacing","minWidth","Drawer","tabIndex","StudentSubTitle","tableStyle","onFocus","onBlur","StyledTimePicker","TimePicker","Banner","innerStyle","bannerFontSize","FacilityTitle","ToastContainer","autoClose","hideProgressBar","newestOnTop","closeOnClick","rtl","pauseOnFocusLoss","draggable","pauseOnHover","theme","TrashWrap","useNow","useMemo","useScrollToError","errorsvalues","values","scrollIntoView","behavior","parentNode","ADD_TARGET_IDS","REMOVE_TARGET_IDS","serverError","ids","concat","useAdminCorporateCreateModule","formState","handleSubmit","useForm","mode","defaultValues","save","duplicate","searchText","connectedFacilities","connectedFacilityIds","searchResultFacilities","selectedFacilityIds","useAdminCorporateDetailModule","admin_note","initializeCorporate","put","removalFacilityIds","search","excludeIds","deleteCorporate","restoreCorporate","uploadFacilityTopImage","formData","FormData","uuidv4","replaceAll","substring","headers","signed_top_image_url","deleteFacilityTopImage","downloadFacilitiesCSV","CHANGE_FILTER","useAdminCorporateListModule","updateFilter","isMultiple","downloadCorporates","downloadYouthEmployments","useAdminFacilityCreateModule","FACILITY_STATUS","PUBLISHED","fPath","top_image","alias_name","Date","toLocaleDateString","saveDraft","DRAFT","useAdminFacilityDetailModule","trigger","initializeFacility","aliasName","loggedInWithDifferentTypeAccount","CORPORATE_MANAGER","pathname","checkAuthWithRedirect","formError","checkAuth","useMyCorporateCorporateDetailModule","useCorporateManagerCreateModule","useCorporateManagerDetailModule","defaultCorporateManager","initializeCorporateManager","deleteManager","useMyCorporateEventCreateModule","EVENT_STATUS","useMyCorporateEventListModule","initialize","useMyCorporateFacilityCreateModule","useMyCorporateFacilityDetailModule","onDisconnect","OPEN_SEARCH_MODAL","CLOSE_SEARCH_MODAL","isOpenSearchModal","useMyCorporateFacilityListModule","openSearchModal","closeSearchModal","useMyCorporateRecruitmentFacilityListModule","addIds","removeIds","recruitmentId","target_ids","saveAdditional","additional","useMyCorporateRecruitmentSchoolListModule","ADD_FILES","pdfUploadErrorMessage","useMyCorporateRecruitmentCreateModule","signed_url","pdfFileInfos","pdf","RECRUITMENT_STATUS","facility_attachments","initializeRecruitment","targetPdf","useMyCorporateRecruitmentDetailModule","required_document_option_values","document_submission_option_values","is_old_format","job_type_options","allowance_options","setId","_id","toFacility","toAdditional","onCloseRecruitment","onReopenRecruitment","onDeleteRecruitment","useMyCorporateRecruitmentListModule","onCopyRecruitment","currentRecruitmentYear","usePasswordResetModule","sendPasswordResetEmail","protocol","host","useSchoolAdvisorListModule","forwardToCreateForm","forwardToHome","recruitmentInformationSheet","latestPdf","uploadedRecruitmentPdf","uploadedRecruitmentPdfUrl","recruitmentScheduleDate","useSchoolCorporateYouthEmploymentInfoModule","initializeRecruitmentInformationSheet","fp","recruitment_schedule_date","recruitment_information_sheet_attached_files_attributes","useSchoolCorporateDetailModule","setComment","forwardToRecruitmentConnect","localStorage","setItem","onSave","useSchoolCorporateListModule","forwardToApplyForm","useMultipleRecruitmentCreateModule","setTargetIds","facility_ids","removeItem","forwardToDetail","useSchoolFacilityEventListModule","facilityIntroduction","useSchoolFacilityIntroductionInfoModule","useSchoolFacilityDetailModule","forwardToCorporate","forwardToEvent","forwardToRecruitment","forwardToIntroduction","useSchoolFacilityListModule","downloadFacilities","CHANGE_STUDENT","student","useSchoolStudentEditModule","first_name","last_name","street_address","admission_year","student_no","initializeStudent","forwardToList","REMOVE_ALL_TARGET","numberOrName","expectedGraduationYear","careerSelect","decisionSelect","reportSelect","csvContentErrors","useSchoolStudentListModule","downloadStudents","downloadReportCsv","sendEmail","redirect_path","student_ids","downloadCsv","openStudentRegisterPdf","multipleDelete","uploadCsv","reader","FileReader","onload","buffer","result","uint8Array","Uint8Array","encoding","Encoding","parse","header","skipEmptyLines","complete","records","results","arr","log","record","studentNo","lastName","firstName","graduationYear","postalCode","push","onerror","readAsArrayBuffer","useAggregateExportModule","downloadSchoolBasicSurvey","pseudoRequest","downloadChildcareWorkerTrainingCouncilSurvey","CHANGE_SCHOOL","useSchoolFormModule","registered_faculty","registered_student_number","homepage_url","school_type","initializeSchool","schoolTypes","ADVISOR","useFacilitySearchModule","searchFilter","prms","p","URLSearchParams","assign","useCorporateSearchModule","useActivityReportCreate","clearErrors","corporate_type","corporate_address","facility_name","facility_address","report_note","useCareerHopeCreateModule","firstCareerHope","secondCareerHope","first_career_hope","second_career_hope","useOfferReportCreate","career_type","employee_type","required_document_option_remarks","recruitment_info_from","application_reason","application_reason_remarks","exam_date_1","exam_type_1","exam_type_1_remarks","exam_date_2","exam_type_2","exam_type_2_remarks","interview_question","interview_question_remarks","advice_to_juniors","useGlobalLoginModule","STUDENT","useGlobalPasswordResetModule","useInitialPasswordChange","password_confirm","error_message","schoolAliasName","useCorporationBookmark","corporation_id","corporationId","has_attachment","enabled_applicant","VIEW_FACILITY_HISTORIES_TYPE_DEFAULT","BREADCRUMBS","leftBodyStyle","rightBodyStyle","Create","AdminBreadcrumbs","CORPORATE_TYPES","urlReg","postPath","Detail","defaultCorporate","defaultConnectedFacilities","isDeleted","updatedAt","facilityTourApplicantOptionId","isShowDeleteModal","setIsShowDeleteModal","targets","existsIds","filteredFacilities","Notice","SectionHeader","textStyle","addressLabelStyle","labelNoticeStyle","useCreate","breadcrumbs","textAlign","sending_method","pattern","postal_code1","postal_code2","maxLength","PHONE_REGEX_WITH_SEP","contact_department","contact_position","contact_name","contact_name_kana","contact_email1","contact_email2","contact_email3","survey_responses","res","List","defaultCorporates","defaultCurrentPage","defaultTotalPages","r","paramsToObject","corporateType","showDeletedData","paperProps","basicPaginate","LEGAL_PERSON_VALUE_MAP","cvtLegalPersonToNumber","LEGAL_PERSON_LABEL_MAP","facilities_size","isShowPassword","setIsShowPassword","useDetail","useSelectCorporate","num","isInteger","respData","attachedTopImage","setAttachedTopImage","foundCity","FACILITY_EN_TYPES","FACILITY_FACILITY_TYPES","FACILITY_OPERATOR","FACILITY_AUTHORIZATIONS","render","replace","blobUrl","URL","createObjectURL","defaultFacility","multipleFileUploadRef","setFilter","hasComment","isSearchDialogOpen","setIsSearchDialogOpen","paginate","pageNum","uploadMultipleUpsertCsv","modalUsed","fontStyle","corporate_option_plan","isConfirm","corporateName","defaultTargetIds","addAllTargetIds","useList","schools","school_ids","uploadFile","saveWithPublish","filteredManualCategory","MANUAL_CATEGORY","MANUAL_DISPLAY_TARGET","display_target","numberReg","min","order_num","defaultManual","deleteManual","file_name","_save","is_published","origin_file_path","SERVICE_PLANS","service_plan","visible_report","advisor_name","advisor_email","customLoginUrl","downloadRecruitmentViewedCountCsv","isOpenSelectSchoolYear","setIsOpenSelectSchoolYear","SchoolYearSelectModal","year","isDuplicateEmail","setIsDuplicateEmail","isSubmitting","setIsSubmitting","isServerError","setIsServerError","display_name","main_advisor_flag","setIsDuplicateName","duplicate_email","advisor","initial_password_changed","main_advisor","users","setErrorMessage","userId","diffYear","y","Array","targetYear","setTargetYear","targetSchoolYear","studentApplicant","student_name","joined_text","studentApplicants","corporateTableLeftBodyStyle","corporateTableRightBodyStyle","FacilityBreadcrumbs","person_in_charge_position","disableDelete","isManager","corporateManagers","CorporateManagerList","fromEvent","file_id","target_facility_type_values","disableClock","time","event_type","target_facility_type","existApplicantUser","endRecruitment","isShowEndRecruitmentConfirmModal","setIsShowEndRecruitmentConfirmModal","upload_date","status_for_facility","cvtEventStatusValue","EndRecruitmentConfirmModal","eventApplicants","download","changeConfirmed","downloadAll","useEventApplicantList","EventApplicantList","useFacilityList","OverlayTrigger","overlay","Tooltip","relatedFacilityEventId","setRelatedFacilityEventId","relatedSchoolEventId","setRelatedSchoolEventId","targetEventName","setTargetEventName","facility_count","school_count","student_viewed_count","applicant_count","RelatedFacilityModal","eventName","RelatedSchoolModal","useSchoolList","isOpenPublishModal","setIsOpenPublishModal","EventPublishConfirmModal","setFacilities","setSchools","EVENT_STATUS_ENUM","event_attached_files","managementStatus","setManagementStatus","s","isShowDisconnectModal","setIsShowDisconnectModal","DisconnectModal","borderTop","SearchableList","defaultFacilities","INQUIRY_CATEGORY","Success","Login","autoComplete","loginApiPath","schoolHomePath","Complete","Step","currentStep","cachedData","csrfToken","isOpenConfirmModal","setIsOpenConfirmModal","method","agreement","form","closest","submit","scroll","top","ConfirmModal","isOpen","registeredFacilityTypes","enabledFacilityIds","currentFacilityType","selectedFacilityType","setSelectedFacilityType","setSelectedFacilityIds","onSearch","t","targetId","step1Color","step2Color","step3Color","borderSize","marginLeft","facilityTourApplicantOption","isOpenStopFacilityTourApplicantModal","setIsOpenStopFacilityTourApplicantModal","isOpenRestartFacilityTourApplicantModal","setIsOpenRestartFacilityTourApplicantModal","onStopFacilityTourApplicantOption","onRestartFacilityTourApplicantOption","OptionButton","onStop","onRestart","onForward","StopConfirmModal","RestartConfirmModal","warningButtonProps","PasswordReset","fromRecruitment","selectableYears","nowYear","hasAllowanceOption","hasJobTypeOption","shouldFocus","minDate","getMinReleaseDate","monthly_salary","calcEstYearlyAmount","selectedYear","defaultReleaseDate","setDefaultReleaseDate","isDisabled","disabled_edit","reopenRecruitmentInfo","setReopenRecruitmentInfo","closeRecruitmentInfo","setCloseRecruitmentInfo","deleteRecruitmentInfo","setDeleteRecruitmentInfo","openReopenRecruitmentModal","resetReopenRecruitmentInfo","openCloseRecruitmentModal","openDeleteRecruitmentModal","resetCloseRecruitmentInfo","resetDeleteRecruitmentInfo","cvtRecruitmentStatusValue","is_lock_recruitment_schedule_date","is_lock_release_date","status_text","nums","floatNum","dots","match","published","ReopenRecruitmentModal","onReopen","CloseRecruitmentModal","recruitmentYears","pastRecruitmentYears","disabledRecruitmentRegistration","youthEmploymentId","relatedFacilityRecruitmentId","setRelatedFacilityRecruitmentId","relatedSchoolRecruitmentId","setRelatedSchoolRecruitmentId","targetRecruitmentName","setTargetRecruitmentName","copyRecruitmentInfo","setCopyRecruitmentInfo","openCopyRecruitmentModal","resetCopyRecruitmentInfo","renderRecruitmentCreationButton","renderYouthEmploymentButton","YearTabs","years","currentYear","release_date_short","recruitmentName","CopyRecruitmentModal","recruitmentTitle","RecruitmentPublishConfirmModal","bonus","total","paddingLeft","isCurrentYear","boxShadow","borderBottomLeftRadius","isEditable","Form","youthEmployment","LeftTableInnerCell","YouthEmploymentSubTitle","youthEmploymentLeftBodyStyle","youthEmploymentRightBodyStyle","formProps","recorded_at","borderColor","endsWith","YOUTH_EMPLOYMENT_OPTIONS","target_year","schoolMenuTitle","SchoolBreadcrumbs","formAction","formTitle","onBack","isEditableManagerRole","isAdmin","isEdit","isMyAccount","canShowDeleteButton","substr","last_signed_in","is_manager","disabledCreate","Update","reject","TextArea","textarea","corporateSchoolComment","setSelectedYear","JSON","stringify","h","tmp","getItem","RecruitmentForm","FacilityTable","Info","defaultRecruitmentInformationSheet","recruitmentInformationSheetAttachedFiles","recruitmentPdfFile","viewYear","tableRightCellStyle","disabledEdit","disabled_recruitment_edit_by_school","facilitySchoolComment","has_event","facility_introduction","other_address2","openTargetIds","setOpenTargetIds","_i","sub_title","description","signed_image_url","caption","getBreadcrumb","facilityAttachments","showAttachment","isPdfUpload","is_pdf_upload","defaultSchool","atLeastOneRequired","Home","recruitmentsMadeYesterday","studentReportsMadeYesterday","InitialPasswordChange","marginTop","SCHOOL_INQUIRY_CATEGORY","usePasswordReset","addTarget","removeTarget","onEndRecruitment","setIsOpenSearchModal","isOpenEndRecruitmentModal","setIsOpenEndRecruitmentModal","canEndRecruitment","register_type","handleCheck","end_recruitment_at","created_at_short","MySchoolRecruitmentSearchModal","SchoolEndRecruitmentConfirmModal","deletePath","ADD_TARGET","REMOVE_TARGET","newTargets","students","defaultStudents","isOpenStudentCreationTypeSelectModal","setIsOpenStudentCreationTypeSelectModal","availableGraduationYears","getAvailableGraduationYears","isOpenDeleteModal","setIsOpenDeleteModal","isOpenSendEmailModal","setIsOpenSendEmailModal","selectProps","emailRegistered","facilityTourApplicant","msg","has_career_aspirations","has_offer_reports","activity_report_count","registration_mail_sent_at","registration_by","getRegistrationBy","facility_tour_applicant_count","StudentCreationTypeSelectModal","MySchoolConfirmModal","openReportTargetIds","setOpenReportTargetIds","openFacilityTourApplicantTargetIds","setOpenFacilityTourApplicantTargetIds","latestOfferReport","setLatestOfferReport","offer_reports","maxHeight","career_type_label","report_date_short","employee_type_remarks","required_document_option_labels","recruitment_info_from_labels","application_reason_labels","exam_date_1_label","exam_type_1_labels","exam_date_2_label","exam_type_2_labels","interview_question_labels","offer_report_updated_at","career_aspiration_updated_at","career_aspirations","career_aspiration","priority","careerTypeNum2Str","career_type_facility_remark_text","career_type_general_remark_text","activity_reports","activity_report","facility_tour_applicants","facility_tour_applicant","corporate_legal_person","fileUploadRef","borderTopLeftRadius","handleFileUpload","isShowStudentCreationBySchoolModal","setIsShowStudentCreationBySchoolModal","isShowStudentCreationByStudentModal","setIsShowStudentCreationByStudentModal","renderLeftPanel","renderRightPanel","StudentCreationBySchoolModal","StudentCreationByStudentModal","applicantHistory","Content","StudentBreadcrumbs","full_name","scheduled_acquisition_qualifications","StudentFooter","scheduled_acquisition_certificate_names","tabItems","Tabs","EventResultList","applicantHistoryId","applicantHistories","isLocal","HasRecruitmentButton","bookmarks","modalCorporateId","setModalCorporateId","isOpenCorporatePaperInfoModal","setIsOpenCorporatePaperInfoModal","isOpenCorporateEnmapUsingInfoModal","setIsOpenCorporateEnmapUsingInfoModal","openFacilityModal","closeModal","bookmark","isFacility","isCorporation","corporation","EnmapUsingDetail","isGeneralRecruitment","recruitment_information_sheet","hasRecruitmentInformationSheetForm","has_attached_file","RelatedList","totalCount","LeftColumn","RightTitle","RightSecondTitle","RightBody","recruitment_count_one_ago","recruitment_count_two_ago","recruitment_count_three_ago","unemployment_count_one_ago","unemployment_count_two_ago","unemployment_count_three_ago","classified_recruitment_count_one_ago_male","classified_recruitment_count_two_ago_male","classified_recruitment_count_three_ago_male","classified_recruitment_count_one_ago_female","classified_recruitment_count_two_ago_female","classified_recruitment_count_three_ago_female","average_service_years","average_age","exist_training","training_note","exist_self_development_support","self_development_support_note","exist_mentor","exist_career_consulting","career_consulting_note","exist_in_company_testing","in_company_testing_note","overtime_work_last_year","holiday_usage_last_year","childcare_leave_used_last_year_female","childcare_leave_target_last_year_female","childcare_leave_used_last_year_male","childcare_leave_target_last_year_male","female_ratio_of_boards","female_ratio_of_managers","Applicant","defaultApplicantValue","setEventId","reset","useApplicant","currentSchoolYear","getCurrentSchoolYear","scheduled_acquisition_certificate","scheduled_acquisition_certificate_other","ApplicantConfirm","applicantFormValue","useApplicantConfirm","FacilityNameField","setInitBookmarked","Result","hasFacilityTourApplicant","_public","_private","_public_private","ninka","muninka","municipality","retrySearch","useSearch","startDate","start_date","endDate","end_date","event_type_1","event_type_2","other","isClearable","useConfirm","setFacilityId","working_form","working_form_info","working_form_label","is_old_formt","allowance_option","monthly_allowance_note","monthly_salary_total_all","monthly_salary_total_target","travel_expense_cover_option_label","housing_allowance_option_label","holiday_info_note","bicycle_ok_label","required_document_option_names","document_submission_option_names","document_submission_info","observability_option_label","observation_application_option_label","wordBreak","GlobalLogin","StudentLoadingOverlay","EnmapLogoPink","GlobalPasswordReset","BannerField","link","image","LogoWhite","TopGirl","MapIconSVG","CheckSVG","ArrowUpSVG","BuildingSVG","FacilityTourApplicantImage","prop","LatestList","social_welfare","npo","ltd","religious","limited_corporate","createRef","FacilitySearch","shogai","child_facility","Search","custom_url_uuid","useStep1","useStep2","email_confirmation","uuid","confirmation_email","isOpenSelectFacilityType","setIsOpenSelectFacilityType","legal_person_label","FacilityTypeSelect","redirect","onSelectFacility","DescriptionField","stopPropagation","CAREER_TYPE","YO","CORPORATE","HO","HIGHER","KO","OTHER_FACILITY","NOT_FIXED_OR_OTHER","setRedirect","report_date","h6","name_e","name_h","name_k","zips","area","GoogleMapUtil","constructor","defaultLat","defaultLng","mapType","getCorrectMapType","userMarkerImgPath","currentButtonDiv","createElement","nowLat","nowLng","userMarker","itemMarkers","setSearchConditions","resetSearchConditions","$","searchWithConditions","showMapLoading","lat","lng","_search","keyword","val","renderItemMarkers","renderMap","setView","hideMapLoading","searchFromBookmark","sidebar","bsSidebar","Offcanvas","hide","marker","entity","parseInt","google","maps","openFilterModal","hideFilterModal","getMapOption","center","zoom","gestureHandling","disableDefaultUI","styles","featureType","stylers","visibility","getCurrentPosition","coords","latitude","longitude","Map","addDomListener","addListener","getCenter","calcDistance","reloadMapButtonDiv","setMap","centerLat","centerLng","controls","ControlPosition","CENTER","RIGHT_BOTTOM","Marker","LatLng","scaledSize","Size","searchPlace","geocoder","Geocoder","geocode","geometry","search_any","search_type","_getBookmarkHtml","_getBookmarkedHtml","fetchAttachedFile","html","innerHtml","j","css","cssText","entities","clearItemMarkers","features","marker_image_path","origin","Point","anchor","shape","renderBookmarkHtml","renderSiteUrlHtml","lastLat","lastLng","modalEl","modal","VIEW_FACILITY_HISTORIES_TYPE_MAP_MARKER","youthEmploymentUrl","path","renderEvent","renderFacilityAttachments","panTo","addEventListener","el","getAttribute","replaceWith","lat1","lng1","lat2","lng2","PI","acos","cos","sin","navigator","geolocation","enableHighAccuracy","timeout","maximumAge","fadeOut","config","axios","ms","setTimeout","common","querySelector","urlStr","careerType","END_RECRUITMENT","txt","legalPerson","LEGAL_PERSON","CORPORATION","SCHOOL","MUNICIPALITY","SOCIAL_WELFARE","NPO","RELIGIOUS","LIMITED","is_form","process","nextYear","reverse","dt","maximumFractionDigits","RegExp","URL_REGEX","PHONE_REGEX","EMAIL_REGEX","NUMBER_REGEX","delivery","student_registration","student_info","recruitment_info","apiKey","authDomain","databeseURL","projectId","storageBucket","messagingSenderId","appId","measurementId","firebase","apps","initializeApp"],"sourceRoot":""}