From 52a2c109261f5a7c221e1c9bea7cd3e8513930e0 Mon Sep 17 00:00:00 2001 From: Nariman Abdullin Date: Wed, 25 Oct 2023 14:53:20 +0300 Subject: [PATCH] Removed VFC (#2804) - removed usage of VFC since it will be removed in next kotlin-wrappers release --- .../com/saveourtool/save/frontend/App.kt | 2 +- .../save/frontend/components/Footer.kt | 2 +- .../frontend/components/basic/CookieBanner.kt | 4 +-- .../components/basic/LanguageSelector.kt | 4 +-- .../components/basic/TestStatusComponent.kt | 7 +++-- .../VulnerabilityIntroductionComponent.kt | 4 +-- .../demo/welcome/DemoIntroductionComponent.kt | 5 ++-- .../basic/demo/welcome/DemoListComponent.kt | 5 ++-- .../basic/demo/welcome/DemoStatistics.kt | 5 ++-- .../basic/demo/welcome/FeaturedDemos.kt | 5 ++-- .../fileuploader/CosvFileManagerComponent.kt | 2 +- .../mobile/SaveWelcomeMobileView.kt | 5 ++-- .../views/CreateOrganizationView.kt | 2 +- .../components/views/CreateProjectView.kt | 2 +- .../frontend/components/views/SandboxView.kt | 2 +- .../views/TestExecutionDetailsView.kt | 2 +- .../views/agreements/CookiesTermsOfUse.kt | 4 +-- .../views/agreements/TermsOfUsage.kt | 5 ++-- .../views/contests/ContestListCard.kt | 2 +- .../views/contests/ContestSampleListCard.kt | 4 +-- .../views/contests/ContestsStatistics.kt | 5 ++-- .../contests/CreateContestTemplateView.kt | 5 ++-- .../contests/CreateNewContestTemplate.kt | 5 ++-- .../views/contests/FeaturedContests.kt | 2 +- .../components/views/contests/GlobalRating.kt | 2 +- .../components/views/contests/NewContests.kt | 5 ++-- .../views/contests/WelcomeToSaveContests.kt | 5 ++-- .../frontend/components/views/demo/CpgView.kt | 2 +- .../views/demo/DemoCollectionView.kt | 5 ++-- .../components/views/index/CardAboutUs.kt | 4 +-- .../components/views/index/CardServiceInfo.kt | 4 +-- .../views/index/IndexLogoButtons.kt | 5 ++-- .../components/views/index/IndexView.kt | 2 +- .../components/views/index/IndexViewAuth.kt | 6 ++-- .../views/index/IndexViewUserInfo.kt | 5 ++-- .../components/views/test/analysis/Utils.kt | 3 +- .../views/toprating/OrganizationRatingTab.kt | 2 +- .../views/toprating/TopRatingView.kt | 5 ++-- .../views/toprating/UserRatingTab.kt | 2 +- .../userprofile/UserProfileNewUsersTab.kt | 3 +- .../usersettings/SettingsViewLeftColumn.kt | 2 +- .../components/views/vuln/CosvSchemaView.kt | 5 ++-- .../views/vuln/CreateVulnerabilityView.kt | 5 ++-- .../views/vuln/UploadVulnerabilityView.kt | 5 ++-- .../save/frontend/routing/BasicRouting.kt | 30 +++++++++---------- .../save/frontend/routing/MobileRouting.kt | 5 ++-- .../save/frontend/utils/RouterUtils.kt | 4 +-- .../frontend/utils/ServerSentEventTest.kt | 5 ++-- 48 files changed, 115 insertions(+), 96 deletions(-) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/App.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/App.kt index 682e2fb2ab..fb64633735 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/App.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/App.kt @@ -33,7 +33,7 @@ import kotlinx.serialization.json.Json @JsExport @OptIn(ExperimentalJsExport::class) @Suppress("VARIABLE_NAME_INCORRECT_FORMAT", "NULLABLE_PROPERTY_TYPE", "EMPTY_BLOCK_STRUCTURE_ERROR") -val App: VFC = FC { +val App: FC = FC { val (userInfo, setUserInfo) = useState(null) useRequest { get( diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/Footer.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/Footer.kt index 0d9dda1c74..74329ab899 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/Footer.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/Footer.kt @@ -16,7 +16,7 @@ import web.cssom.ClassName @JsExport @OptIn(ExperimentalJsExport::class) @Suppress("EMPTY_BLOCK_STRUCTURE_ERROR") -val footer: VFC = VFC { +val footer: FC = FC { footer { className = ClassName("sticky-footer bg-white") div { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/CookieBanner.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/CookieBanner.kt index fe421b3eff..ca3e2f52c3 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/CookieBanner.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/CookieBanner.kt @@ -12,14 +12,14 @@ import com.saveourtool.save.frontend.utils.buttonBuilder import com.saveourtool.save.validation.FrontendRoutes import js.core.jso import react.FC -import react.VFC +import react.Props import react.dom.html.ReactHTML.div import react.router.useNavigate import react.useState import web.cssom.ClassName import web.cssom.ZIndex -val cookieBanner: VFC = FC { +val cookieBanner: FC = FC { val (isOpen, setIsOpen) = useState(!cookie.isAccepted()) val navigate = useNavigate() val (t) = useTranslation("cookies") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/LanguageSelector.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/LanguageSelector.kt index 2de44c47d3..365eb67415 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/LanguageSelector.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/LanguageSelector.kt @@ -11,7 +11,7 @@ import com.saveourtool.save.frontend.externals.i18next.language import com.saveourtool.save.frontend.externals.i18next.useTranslation import js.core.jso import react.FC -import react.VFC +import react.Props import react.dom.aria.AriaHasPopup import react.dom.aria.ariaExpanded import react.dom.aria.ariaHasPopup @@ -29,7 +29,7 @@ private const val LANG_DROPDOWN_ID = "lang-dropdown" /** * A [FC] that is responsible for language selection */ -val languageSelector: VFC = FC { +val languageSelector: FC = FC { val (_, i18n) = useTranslation("topbar") val languageFromCookie = if (cookie.isAccepted()) { PlatformLanguages.getByCodeOrDefault(cookie.getLanguageCode()) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/TestStatusComponent.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/TestStatusComponent.kt index d67df79aba..473ea59cf0 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/TestStatusComponent.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/TestStatusComponent.kt @@ -14,7 +14,8 @@ import com.saveourtool.save.frontend.components.tables.visibleColumnsCount import com.saveourtool.save.frontend.externals.fontawesome.faExternalLinkAlt import com.saveourtool.save.frontend.utils.buttonBuilder -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.samp import react.dom.html.ReactHTML.small import react.dom.html.ReactHTML.td @@ -40,7 +41,7 @@ fun testStatusComponent( testResultDebugInfo: TestResultDebugInfo, tableInstance: Table, testExecutionDto: TestExecutionDto, -) = VFC { +): FC = FC { val shortMessage: String = when (val status: TestStatus = testResultDebugInfo.testStatus) { is Pass -> (status.shortMessage ?: "").ifBlank { "Completed successfully without additional information" } is Fail -> status.shortReason @@ -120,7 +121,7 @@ fun testStatusComponent( fun executionStatusComponent( failReason: String, tableInstance: Table -) = VFC { +): FC = FC { tr { td { colSpan = 2 diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/VulnerabilityIntroductionComponent.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/VulnerabilityIntroductionComponent.kt index f9482cd64b..614e14b6b8 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/VulnerabilityIntroductionComponent.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/VulnerabilityIntroductionComponent.kt @@ -6,14 +6,14 @@ import com.saveourtool.save.frontend.components.views.vuln.columnHeight import com.saveourtool.save.frontend.externals.i18next.useTranslation import js.core.jso import react.FC -import react.VFC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.img import react.dom.html.ReactHTML.strong import web.cssom.ClassName @Suppress("IDENTIFIER_LENGTH") -val vulnerabilityIntroductionComponent: VFC = FC { +val vulnerabilityIntroductionComponent: FC = FC { val (t) = useTranslation("vulnerability-collection") div { className = ClassName("card flex-md-column box-shadow") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoIntroductionComponent.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoIntroductionComponent.kt index 186ed4cd2e..2d6cd4a7e7 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoIntroductionComponent.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoIntroductionComponent.kt @@ -7,7 +7,8 @@ package com.saveourtool.save.frontend.components.basic.demo.welcome import com.saveourtool.save.frontend.components.basic.markdown import js.core.jso -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.img import react.dom.html.ReactHTML.strong @@ -33,7 +34,7 @@ private val saveDemoHowToMd = """ """.trimMargin() @Suppress("MAGIC_NUMBER") -internal val introductionSection = VFC { +internal val introductionSection: FC = FC { div { className = ClassName("card flex-md-column mb-1 box-shadow") style = jso { minHeight = 25.rem } diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoListComponent.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoListComponent.kt index 8be83de3db..e94ed6ec7d 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoListComponent.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoListComponent.kt @@ -11,7 +11,8 @@ import com.saveourtool.save.frontend.utils.* import com.saveourtool.save.frontend.utils.noopLoadingHandler import js.core.jso -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.input import react.dom.html.ReactHTML.ul @@ -25,7 +26,7 @@ import kotlinx.serialization.json.Json private val withBackground = cardComponent(isBordered = true, hasBg = true, isPaddingBottomNull = true) -val demoList = VFC { +val demoList: FC = FC { val (filter, setFilter) = useState(DemoFilter.running) val (demoDtos, setDemoDtos) = useState>(emptyList()) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoStatistics.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoStatistics.kt index b036f7b56f..25e27f9902 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoStatistics.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/DemoStatistics.kt @@ -8,7 +8,8 @@ import com.saveourtool.save.frontend.utils.* import com.saveourtool.save.frontend.utils.noopLoadingHandler import com.saveourtool.save.frontend.utils.noopResponseHandler -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h1 import react.dom.html.ReactHTML.strong @@ -16,7 +17,7 @@ import react.useState import web.cssom.ClassName @Suppress("TOO_LONG_FUNCTION", "LongMethod") -internal val statistics = VFC { +internal val statistics: FC = FC { val (activeDemoAmount, setActiveDemoAmount) = useState(0) useRequest { val active: Int = get( diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/FeaturedDemos.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/FeaturedDemos.kt index c987e76aaa..855fd62859 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/FeaturedDemos.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/demo/welcome/FeaturedDemos.kt @@ -10,7 +10,8 @@ import com.saveourtool.save.frontend.components.basic.carousel import com.saveourtool.save.frontend.utils.* import com.saveourtool.save.frontend.utils.noopResponseHandler -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h1 import react.dom.html.ReactHTML.h3 @@ -21,7 +22,7 @@ import react.useEffect import react.useState import web.cssom.ClassName -internal val featuredDemos = VFC { +internal val featuredDemos: FC = FC { val (featuredDemos, setFeaturedDemos) = useState( listOf( DemoDto.emptyForProject("saveourtool", "Diktat"), diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/fileuploader/CosvFileManagerComponent.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/fileuploader/CosvFileManagerComponent.kt index a4d42e4a55..0ca973aeb7 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/fileuploader/CosvFileManagerComponent.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/basic/fileuploader/CosvFileManagerComponent.kt @@ -47,7 +47,7 @@ import kotlinx.serialization.json.Json private const val DEFAULT_SIZE = 10 -val cosvFileManagerComponent: FC = FC { _ -> +val cosvFileManagerComponent: FC = FC { useTooltip() val (t) = useTranslation("vulnerability-upload") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/mobile/SaveWelcomeMobileView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/mobile/SaveWelcomeMobileView.kt index da913bfd12..92fbad5a32 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/mobile/SaveWelcomeMobileView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/mobile/SaveWelcomeMobileView.kt @@ -14,7 +14,8 @@ import com.saveourtool.save.frontend.utils.particles import js.core.jso import react.ChildrenBuilder -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.b import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h4 @@ -24,7 +25,7 @@ import web.cssom.* /** * As a temp stub it was decided to make several views to make SAVE looking nice on mobile devices */ -val saveWelcomeMobileView: VFC = VFC { +val saveWelcomeMobileView: FC = FC { div { style = jso { background = SAVE_LIGHT_GRADIENT.unsafeCast() diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateOrganizationView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateOrganizationView.kt index 9dfea4840e..605933df7f 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateOrganizationView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateOrganizationView.kt @@ -33,7 +33,7 @@ import web.html.ButtonType import kotlinx.serialization.encodeToString import kotlinx.serialization.json.Json -val createOrganizationView = VFC { +val createOrganizationView: FC = FC { useBackground(Style.SAVE_DARK) particles() diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateProjectView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateProjectView.kt index a90693af44..b4b09bcfde 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateProjectView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/CreateProjectView.kt @@ -46,7 +46,7 @@ import kotlinx.serialization.json.Json private val organizationSelectForm: SelectFormFunctionalComponent = selectFormRequired() -val createProjectView = VFC { +val createProjectView: FC = FC { useBackground(Style.SAVE_DARK) particles() val params = useParams() diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/SandboxView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/SandboxView.kt index a7b0cb2ded..54cd13a9ae 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/SandboxView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/SandboxView.kt @@ -38,7 +38,7 @@ val sandboxApiUrl = "${window.location.origin}/api/sandbox" /** * A view for testing config files */ -val sandboxView = VFC { +val sandboxView: FC = FC { useBackground(Style.SAVE_DARK) val (debugInfo, setDebugInfo) = useState(null) val (selectedSdk, setSelectedSdk) = useState(Sdk.Default) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/TestExecutionDetailsView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/TestExecutionDetailsView.kt index d0f026ab4d..486b87e19d 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/TestExecutionDetailsView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/TestExecutionDetailsView.kt @@ -30,7 +30,7 @@ import web.cssom.ClassName * @return a function component */ @Suppress("GENERIC_VARIABLE_WRONG_DECLARATION", "TOO_LONG_FUNCTION") -val testExecutionDetailsView = VFC { +val testExecutionDetailsView: FC = FC { val (status, setStatus) = useState("Loading...") val (testResultDebugInfo, setTestResultDebugInfo) = useState(null) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/CookiesTermsOfUse.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/CookiesTermsOfUse.kt index 1d0b3e5bcc..b5bb5c3292 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/CookiesTermsOfUse.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/CookiesTermsOfUse.kt @@ -11,11 +11,11 @@ import com.saveourtool.save.frontend.utils.Style import com.saveourtool.save.frontend.utils.buttonBuilder import com.saveourtool.save.frontend.utils.useBackground import react.FC -import react.VFC +import react.Props import react.dom.html.ReactHTML.div import web.cssom.ClassName -val cookieTermsOfUse: VFC = FC { +val cookieTermsOfUse: FC = FC { useBackground(Style.INDEX) val (t) = useTranslation("cookies") div { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/TermsOfUsage.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/TermsOfUsage.kt index 0419aacfe7..9cb9d84d98 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/TermsOfUsage.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/agreements/TermsOfUsage.kt @@ -7,7 +7,8 @@ package com.saveourtool.save.frontend.components.views.agreements import com.saveourtool.save.frontend.components.basic.markdown import com.saveourtool.save.frontend.utils.Style import com.saveourtool.save.frontend.utils.useBackground -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import web.cssom.ClassName @@ -129,7 +130,7 @@ private val termsOfUsageContent = listOf( generalProvisions, ) -val termsOfUsageView: VFC = VFC { +val termsOfUsageView: FC = FC { useBackground(Style.INDEX) div { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestListCard.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestListCard.kt index 93e7980e91..dd9a8466e2 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestListCard.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestListCard.kt @@ -32,7 +32,7 @@ import web.html.ButtonType /** * [FC] that renders the stylish table with contests */ -val contestList = VFC { +val contestList: FC = FC { val (isContestEnrollerModalOpen, setIsContestEnrollerModalOpen) = useState(false) val (isConfirmationModalOpen, setIsConfirmationModalOpen) = useState(false) val (enrollmentResponseString, setEnrollmentResponseString) = useState("") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestSampleListCard.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestSampleListCard.kt index 2da2136efe..0a0d11072d 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestSampleListCard.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestSampleListCard.kt @@ -11,7 +11,7 @@ import com.saveourtool.save.frontend.utils.* import com.saveourtool.save.validation.FrontendRoutes import react.FC import react.Fragment -import react.VFC +import react.Props import react.create import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.td @@ -45,7 +45,7 @@ private val contestSampleTable: FC> = tableComponen useServerPaging = false, ) -internal val contestSampleList = VFC { +internal val contestSampleList: FC = FC { div { className = ClassName("col") div { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestsStatistics.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestsStatistics.kt index 519dffc161..58c521d31d 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestsStatistics.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/ContestsStatistics.kt @@ -9,7 +9,8 @@ import com.saveourtool.save.frontend.utils.* import js.core.jso import react.ChildrenBuilder -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h1 import react.dom.html.ReactHTML.strong @@ -17,7 +18,7 @@ import react.useState import web.cssom.ClassName import web.cssom.rem -internal val statistics = VFC { +internal val statistics: FC = FC { val (activeContests, setActiveContests) = useState>(emptySet()) useRequest { val contests: List = get( diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateContestTemplateView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateContestTemplateView.kt index 6fc5ea889f..e36e3e5316 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateContestTemplateView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateContestTemplateView.kt @@ -10,7 +10,8 @@ import com.saveourtool.save.frontend.components.inputform.inputTextFormRequired import com.saveourtool.save.frontend.utils.* import com.saveourtool.save.validation.FrontendRoutes -import react.VFC +import react.FC +import react.Props import react.dom.aria.ariaDescribedBy import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.form @@ -29,7 +30,7 @@ import web.html.InputType import kotlinx.serialization.encodeToString import kotlinx.serialization.json.Json -val createContestTemplateView: VFC = VFC { +val createContestTemplateView: FC = FC { useBackground(Style.SAVE_DARK) val (contestTemplate, setContestTemplate) = useState(ContestSampleDto.empty) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateNewContestTemplate.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateNewContestTemplate.kt index abda232be5..fdc6776b14 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateNewContestTemplate.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/CreateNewContestTemplate.kt @@ -4,14 +4,15 @@ package com.saveourtool.save.frontend.components.views.contests import com.saveourtool.save.validation.FrontendRoutes import js.core.jso -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h3 import react.dom.html.ReactHTML.img import react.router.dom.Link import web.cssom.* -internal val createNewContestTemplate = VFC { +internal val createNewContestTemplate: FC = FC { div { className = ClassName("col-2 text-center") Link { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/FeaturedContests.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/FeaturedContests.kt index a6b702e9cb..acd3dadd68 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/FeaturedContests.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/FeaturedContests.kt @@ -27,7 +27,7 @@ import web.cssom.* import web.html.ButtonType @Suppress("MAGIC_NUMBER") -internal val featuredContests = VFC { +internal val featuredContests: FC = FC { val (featuredContests, setFeaturedContests) = useState>(emptyList()) useRequest { val contests: List = get( diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/GlobalRating.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/GlobalRating.kt index a7958c44a5..649603ec99 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/GlobalRating.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/GlobalRating.kt @@ -32,7 +32,7 @@ private const val MAX_AMOUNT_OF_RECORDS = 3 /** * @return functional component for the rating card */ -internal val globalRating = VFC { +internal val globalRating: FC = FC { val (selectedTab, setSelectedTab) = useState(UserRatingTab.ORGS) val (organizationsWithRating, setOrganizationsWithRating) = useState>(emptySet()) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/NewContests.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/NewContests.kt index 356d41fe39..26a0d10305 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/NewContests.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/NewContests.kt @@ -8,7 +8,8 @@ import com.saveourtool.save.entities.contest.ContestDto import com.saveourtool.save.frontend.utils.* import js.core.jso -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h3 import react.dom.html.ReactHTML.img @@ -22,7 +23,7 @@ import web.cssom.rem /** * rendering of newly added contests */ -internal val newContests = VFC { +internal val newContests: FC = FC { val (newContests, setNewContests) = useState>(emptyList()) useRequest { val contests: List = get( diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/WelcomeToSaveContests.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/WelcomeToSaveContests.kt index 0cc4cda594..c16cb319a1 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/WelcomeToSaveContests.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/contests/WelcomeToSaveContests.kt @@ -6,7 +6,8 @@ package com.saveourtool.save.frontend.components.views.contests import js.core.jso import react.ChildrenBuilder -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.b import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h3 @@ -19,7 +20,7 @@ import web.cssom.rem /** * Rendering of featured contest card */ -internal val welcomeToSaveContests = VFC { +internal val welcomeToSaveContests: FC = FC { div { className = ClassName("col-5") div { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/CpgView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/CpgView.kt index 2554ed53dd..562f9558b1 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/CpgView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/CpgView.kt @@ -42,7 +42,7 @@ private val backgroundCard = cardComponent(hasBg = false, isPaddingBottomNull = @Suppress( "EMPTY_BLOCK_STRUCTURE_ERROR", ) -val cpgView: VFC = VFC { +val cpgView: FC = FC { useBackground(Style.SAVE_LIGHT) val (cpgResult, setCpgResult) = useState(CpgResult.empty) val (isLogs, setIsLogs) = useState(false) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/DemoCollectionView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/DemoCollectionView.kt index 4060907ce5..b643f014b5 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/DemoCollectionView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/demo/DemoCollectionView.kt @@ -9,12 +9,13 @@ import com.saveourtool.save.frontend.components.basic.demo.welcome.featuredDemos import com.saveourtool.save.frontend.components.basic.demo.welcome.introductionSection import com.saveourtool.save.frontend.utils.* -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.main import web.cssom.ClassName -val demoCollectionView: VFC = VFC { +val demoCollectionView: FC = FC { useBackground(Style.SAVE_DARK) main { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardAboutUs.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardAboutUs.kt index ff1bab2401..6642a6e76c 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardAboutUs.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardAboutUs.kt @@ -7,11 +7,11 @@ package com.saveourtool.save.frontend.components.views.index import com.saveourtool.save.frontend.externals.fontawesome.faGithub import com.saveourtool.save.frontend.externals.fontawesome.fontAwesomeIcon import com.saveourtool.save.frontend.externals.i18next.useTranslation -import com.saveourtool.save.frontend.utils.UserInfoAwareProps import com.saveourtool.save.frontend.utils.buttonBuilder import com.saveourtool.save.validation.FrontendRoutes import js.core.jso import react.FC +import react.Props import react.dom.html.ReactHTML.a import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h5 @@ -21,7 +21,7 @@ import react.router.useNavigate import web.cssom.ClassName import web.cssom.TextAlign -val cardAboutUs: FC = FC { props -> +val cardAboutUs: FC = FC { val (t) = useTranslation("index") val navigate = useNavigate() diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardServiceInfo.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardServiceInfo.kt index 03ede5bb91..be8a6efae2 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardServiceInfo.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/CardServiceInfo.kt @@ -6,9 +6,9 @@ package com.saveourtool.save.frontend.components.views.index import com.saveourtool.save.frontend.components.basic.markdown import com.saveourtool.save.frontend.externals.i18next.useTranslation -import com.saveourtool.save.frontend.utils.UserInfoAwareProps import js.core.jso import react.FC +import react.Props import react.dom.html.ReactHTML.b import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h5 @@ -17,7 +17,7 @@ import react.dom.html.ReactHTML.p import web.cssom.ClassName import web.cssom.TextAlign -val cardServiceInfo: FC = FC { props -> +val cardServiceInfo: FC = FC { val (t) = useTranslation("index") div { className = ClassName("col-3 shadow mx-3 mt-2") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexLogoButtons.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexLogoButtons.kt index b13024cb30..b4960419b9 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexLogoButtons.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexLogoButtons.kt @@ -8,7 +8,8 @@ import com.saveourtool.save.frontend.externals.i18next.useTranslation import com.saveourtool.save.validation.FrontendRoutes import js.core.jso import react.ChildrenBuilder -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.button import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h4 @@ -17,7 +18,7 @@ import react.dom.html.ReactHTML.span import react.router.dom.Link import web.cssom.* -val logoButtons = VFC { +val logoButtons: FC = FC { val (t) = useTranslation("index") div { className = ClassName("row logo-parent mb-5 d-flex justify-content-center") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexView.kt index 3185ae3750..994e4801b5 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexView.kt @@ -63,7 +63,7 @@ val indexView: FC = FC { props -> props.userInfo ?: run { separator { } - indexAuth { props.userInfo } + indexAuth { } } indexViewInfo { userInfo = props.userInfo } diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewAuth.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewAuth.kt index bf1ad4c392..23ed358250 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewAuth.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewAuth.kt @@ -11,7 +11,7 @@ import com.saveourtool.save.info.OauthProviderInfo import org.w3c.fetch.Headers import react.FC -import react.VFC +import react.Props import react.dom.html.ReactHTML.div import react.useState import web.cssom.ClassName @@ -19,7 +19,7 @@ import web.cssom.rem import kotlinx.browser.window -val indexAuth: FC = FC { _ -> +val indexAuth: FC = FC { val (oauthProviders, setOauthProviders) = useState(emptyList()) val getOauthProviders = useDeferredRequest { val availableProviders: List = get( @@ -69,7 +69,7 @@ val indexAuth: FC = FC { _ -> } } -val separator = VFC { +val separator: FC = FC { val (t) = useTranslation("welcome") div { className = ClassName("row mt-2") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewUserInfo.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewUserInfo.kt index 8e46a7fe2f..15c6185587 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewUserInfo.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/index/IndexViewUserInfo.kt @@ -34,11 +34,12 @@ val indexViewInfo: FC = FC { props -> +"Non-profit Opensource Ecosystem with a focus on finding code bugs".t() } } + @Suppress("EMPTY_BLOCK_STRUCTURE_ERROR") div { className = ClassName("row justify-content-center mt-2") cardUser { userInfo = props.userInfo } - cardServiceInfo { userInfo = props.userInfo } - cardAboutUs { userInfo = props.userInfo } + cardServiceInfo { } + cardAboutUs { } } div { className = ClassName("row justify-content-center mt-5 text-gray-900") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/test/analysis/Utils.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/test/analysis/Utils.kt index 70678dd394..0d5e1c027d 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/test/analysis/Utils.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/test/analysis/Utils.kt @@ -8,7 +8,6 @@ import react.CSSProperties import react.ChildrenBuilder import react.FC import react.Props -import react.VFC import react.dom.html.ReactHTML.abbr import react.dom.html.ReactHTML.span import web.cssom.ClassName @@ -35,7 +34,7 @@ internal val listStyle: CSSProperties = jso { /** * The placeholder displayed when there's no data available. */ -internal val noDataAvailable: FC = VFC { +internal val noDataAvailable: FC = FC { span { className = ClassName("noDataAvailable") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/OrganizationRatingTab.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/OrganizationRatingTab.kt index 96ce3c848a..1a931fd3d7 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/OrganizationRatingTab.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/OrganizationRatingTab.kt @@ -26,7 +26,7 @@ import kotlinx.serialization.json.Json private const val DEFAULT_PAGE_SIZE = 10_000 -val organizationRatingTab: FC = FC { _ -> +val organizationRatingTab: FC = FC { val (organizationFilter, setOrganizationFilter) = useState(OrganizationFilter.created) val fetchOrganizationRequest: suspend WithRequestStatusContext.(OrganizationFilter) -> OrganizationArray = { filter -> diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/TopRatingView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/TopRatingView.kt index f4f0d83e20..58487606f1 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/TopRatingView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/TopRatingView.kt @@ -13,13 +13,14 @@ import com.saveourtool.save.frontend.externals.fontawesome.faTrophy import com.saveourtool.save.frontend.utils.Style import com.saveourtool.save.frontend.utils.useBackground import com.saveourtool.save.validation.FrontendRoutes -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h1 import react.useState import web.cssom.ClassName -val topRatingView = VFC { +val topRatingView: FC = FC { useBackground(Style.SAVE_LIGHT) val (selectedMenu, setSelectedMenu) = useState(TopRatingTab.USERS) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/UserRatingTab.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/UserRatingTab.kt index ba76def598..5417b39055 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/UserRatingTab.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/toprating/UserRatingTab.kt @@ -17,7 +17,7 @@ import web.cssom.* private const val DEFAULT_PAGE_SIZE = 10_000 -val userRatingTable: FC = FC { _ -> +val userRatingTable: FC = FC { val (userNamePrefix, setUserNamePrefix) = useState("") val fetchUserRequest: suspend WithRequestStatusContext.(String) -> UserArray = { prefix -> diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/userprofile/UserProfileNewUsersTab.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/userprofile/UserProfileNewUsersTab.kt index 1430f5d871..ba7a2b3f62 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/userprofile/UserProfileNewUsersTab.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/userprofile/UserProfileNewUsersTab.kt @@ -17,8 +17,7 @@ import react.dom.html.ReactHTML.td import web.cssom.ClassName import web.cssom.rem -val renderNewUsersTableForProfileView: FC = FC { _ -> - +val renderNewUsersTableForProfileView: FC = FC { @Suppress( "TYPE_ALIAS", "MAGIC_NUMBER", diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/usersettings/SettingsViewLeftColumn.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/usersettings/SettingsViewLeftColumn.kt index 666cf3a819..153bc1a283 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/usersettings/SettingsViewLeftColumn.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/usersettings/SettingsViewLeftColumn.kt @@ -98,7 +98,7 @@ val leftSettingsColumn: FC = FC { props -> } } -val settingsTabs = VFC { +val settingsTabs: FC = FC { val (t) = useTranslation("profile") div { diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CosvSchemaView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CosvSchemaView.kt index 652d863e44..8dda804953 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CosvSchemaView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CosvSchemaView.kt @@ -10,7 +10,8 @@ import com.saveourtool.save.frontend.components.views.vuln.utils.keysOnlyFromCos import com.saveourtool.save.frontend.utils.* import js.core.jso -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.a import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.h3 @@ -21,7 +22,7 @@ import react.useState import web.cssom.* @Suppress("TOO_MANY_LINES_IN_LAMBDA", "PARAMETER_NAME_IN_OUTER_LAMBDA") -val cosvSchemaView = VFC { +val cosvSchemaView: FC = FC { particles() useBackground(Style.VULN_DARK) val (textInModal, setTextInModal) = useState>() diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CreateVulnerabilityView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CreateVulnerabilityView.kt index 6c98bc95ce..6c777c0352 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CreateVulnerabilityView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/CreateVulnerabilityView.kt @@ -31,7 +31,8 @@ import com.saveourtool.osv4k.Severity import com.saveourtool.osv4k.SeverityType import js.core.jso import react.ChildrenBuilder -import react.VFC +import react.FC +import react.Props import react.dom.aria.ariaDescribedBy import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.form @@ -58,7 +59,7 @@ import kotlinx.serialization.json.Json "LONG_LINE", "MaxLineLength", ) -val createVulnerabilityView: VFC = VFC { +val createVulnerabilityView: FC = FC { useBackground(Style.VULN_DARK) val navigate = useNavigate() useTooltip() diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/UploadVulnerabilityView.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/UploadVulnerabilityView.kt index 009cd840ea..878d7e9604 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/UploadVulnerabilityView.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/UploadVulnerabilityView.kt @@ -9,7 +9,8 @@ import com.saveourtool.save.frontend.utils.Style import com.saveourtool.save.frontend.utils.particles import com.saveourtool.save.frontend.utils.useBackground import js.core.jso -import react.VFC +import react.FC +import react.Props import react.dom.html.ReactHTML.div import react.dom.html.ReactHTML.form import react.dom.html.ReactHTML.h1 @@ -17,7 +18,7 @@ import react.dom.html.ReactHTML.span import web.cssom.ClassName import web.cssom.ZIndex -val uploadVulnerabilityView: VFC = VFC { +val uploadVulnerabilityView: FC = FC { useBackground(Style.VULN_DARK) val (t) = useTranslation("vulnerability-upload") diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/BasicRouting.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/BasicRouting.kt index e407b67b29..d25e115318 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/BasicRouting.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/BasicRouting.kt @@ -39,14 +39,14 @@ import react.router.* */ val basicRouting: FC = FC { props -> useUserStatusRedirects(props.userInfo?.status) - val userProfileView: VFC = withRouter { _, params -> + val userProfileView = withRouter { _, params -> userProfileView { userName = params["name"]!! currentUserInfo = props.userInfo } } - val contestView: VFC = withRouter { location, params -> + val contestView = withRouter { location, params -> ContestView::class.react { currentUserInfo = props.userInfo currentContestName = params["contestName"] @@ -54,7 +54,7 @@ val basicRouting: FC = FC { props -> } } - val contestExecutionView: VFC = withRouter { _, params -> + val contestExecutionView = withRouter { _, params -> ContestExecutionView::class.react { currentUserInfo = props.userInfo contestName = params["contestName"]!! @@ -63,7 +63,7 @@ val basicRouting: FC = FC { props -> } } - val projectView: VFC = withRouter { location, params -> + val projectView = withRouter { location, params -> ProjectView::class.react { name = params["name"]!! owner = params["owner"]!! @@ -72,14 +72,14 @@ val basicRouting: FC = FC { props -> } } - val historyView: VFC = withRouter { _, params -> + val historyView = withRouter { _, params -> HistoryView::class.react { name = params["name"]!! organizationName = params["owner"]!! } } - val executionView: VFC = withRouter { location, params -> + val executionView = withRouter { location, params -> ExecutionView::class.react { organization = params["organization"]!! project = params["project"]!! @@ -96,7 +96,7 @@ val basicRouting: FC = FC { props -> } } - val organizationView: VFC = withRouter { location, params -> + val organizationView = withRouter { location, params -> OrganizationView::class.react { organizationName = params["owner"]!! currentUserInfo = props.userInfo @@ -104,13 +104,13 @@ val basicRouting: FC = FC { props -> } } - val awesomeBenchmarksView: VFC = withRouter { location, _ -> + val awesomeBenchmarksView = withRouter { location, _ -> AwesomeBenchmarksView::class.react { this.location = location } } - val contestGlobalRatingView: VFC = withRouter { location, _ -> + val contestGlobalRatingView = withRouter { location, _ -> ContestGlobalRatingView::class.react { organizationName = URLSearchParams(location.search).get("organizationName") projectName = URLSearchParams(location.search).get("projectName") @@ -118,14 +118,14 @@ val basicRouting: FC = FC { props -> } } - val contestTemplateView: VFC = withRouter { _, params -> + val contestTemplateView = withRouter { _, params -> contestTemplateView { id = requireNotNull(params["id"]).toLong() currentUserInfo = props.userInfo } } - val demoView: VFC = withRouter { _, params -> + val demoView = withRouter { _, params -> demoView { projectCoordinates = ProjectCoordinates( requireNotNull(params["organizationName"]), @@ -134,28 +134,28 @@ val basicRouting: FC = FC { props -> } } - val vulnerabilityCollectionView: VFC = withRouter { location, _ -> + val vulnerabilityCollectionView = withRouter { location, _ -> vulnerabilityCollectionView { currentUserInfo = props.userInfo filter = URLSearchParams(location.search).toVulnerabilitiesFilter() } } - val vulnerabilityView: VFC = withRouter { _, params -> + val vulnerabilityView = withRouter { _, params -> vulnerabilityView { identifier = requireNotNull(params["identifier"]) currentUserInfo = props.userInfo } } - val createProjectProblemView: VFC = withRouter { _, params -> + val createProjectProblemView = withRouter { _, params -> createProjectProblem { organizationName = requireNotNull(params["owner"]) projectName = requireNotNull(params["name"]) } } - val projectProblemView: VFC = withRouter { _, params -> + val projectProblemView = withRouter { _, params -> projectProblem { organizationName = requireNotNull(params["owner"]) projectName = requireNotNull(params["name"]) diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/MobileRouting.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/MobileRouting.kt index d2a4e7858c..4aaff721b8 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/MobileRouting.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/routing/MobileRouting.kt @@ -7,7 +7,8 @@ package com.saveourtool.save.frontend.routing import com.saveourtool.save.frontend.components.mobile.AboutUsMobileView import com.saveourtool.save.frontend.components.mobile.saveWelcomeMobileView import com.saveourtool.save.validation.FrontendRoutes -import react.VFC +import react.FC +import react.Props import react.create import react.react import react.router.PathRoute @@ -16,7 +17,7 @@ import react.router.Routes /** * Just put a map: View -> Route URL to this list */ -val mobileRoutes = VFC { +val mobileRoutes: FC = FC { Routes { listOf( AboutUsMobileView::class.react.create() to FrontendRoutes.ABOUT_US, diff --git a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/utils/RouterUtils.kt b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/utils/RouterUtils.kt index 43b74b8ecc..cb0253e1b9 100644 --- a/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/utils/RouterUtils.kt +++ b/save-frontend/src/main/kotlin/com/saveourtool/save/frontend/utils/RouterUtils.kt @@ -26,7 +26,7 @@ interface NavigateFunctionContext { * @param handler DOM builder that can consume [NavigateFunctionContext] */ fun ChildrenBuilder.withNavigate(handler: ChildrenBuilder.(NavigateFunctionContext) -> Unit) { - val wrapper: VFC = VFC { + val wrapper: FC = FC { val navigate = useNavigate() val ctx = object : NavigateFunctionContext { override val navigate: NavigateFunction = navigate @@ -44,7 +44,7 @@ fun ChildrenBuilder.withNavigate(handler: ChildrenBuilder.(NavigateFunctionConte * @return a function component */ @Suppress("TYPE_ALIAS") -fun withRouter(handler: ChildrenBuilder.(Location, Params) -> Unit) = FC { +fun withRouter(handler: ChildrenBuilder.(Location, Params) -> Unit): FC = FC { val location = useLocation() val params = useParams() handler(location, params) diff --git a/save-frontend/src/test/kotlin/com/saveourtool/save/frontend/utils/ServerSentEventTest.kt b/save-frontend/src/test/kotlin/com/saveourtool/save/frontend/utils/ServerSentEventTest.kt index 17f65c39dd..8b8e24e0f7 100644 --- a/save-frontend/src/test/kotlin/com/saveourtool/save/frontend/utils/ServerSentEventTest.kt +++ b/save-frontend/src/test/kotlin/com/saveourtool/save/frontend/utils/ServerSentEventTest.kt @@ -3,7 +3,8 @@ package com.saveourtool.save.frontend.utils import com.saveourtool.save.frontend.externals.render import com.saveourtool.save.frontend.externals.rest import com.saveourtool.save.frontend.externals.setupWorker -import react.VFC +import react.FC +import react.Props import react.create import kotlin.js.Promise import kotlin.test.Test @@ -60,7 +61,7 @@ class ServerSentEventTest { val messages = mutableListOf() var responseStatus: Short = 0 - val testComponent: VFC = VFC { + val testComponent: FC = FC { useNdjson( url = "${window.location.origin}/test", onCompletion = { responseStatus = OK },