+
+
{ _t("You're in") }
+
+
+
{ _t("Who will you chat to the most?") }
+ { _t("We'll help you get connected.") }
+
+
+
+
+
+
+
+
setSelected(UseCase.Skip)}>
+ { _t("Skip") }
+
+
+
+ );
+}
diff --git a/src/components/views/elements/UseCaseSelectionButton.tsx b/src/components/views/elements/UseCaseSelectionButton.tsx
new file mode 100644
index 0000000000..59e022df05
--- /dev/null
+++ b/src/components/views/elements/UseCaseSelectionButton.tsx
@@ -0,0 +1,59 @@
+/*
+Copyright 2022 The Matrix.org Foundation C.I.C.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+import classNames from "classnames";
+import React from "react";
+
+import { _t } from "../../../languageHandler";
+import { UseCase } from "../../../settings/enums/UseCase";
+import AccessibleButton from "./AccessibleButton";
+
+interface Props {
+ useCase: UseCase;
+ selected: boolean;
+ onClick: (useCase: UseCase) => void;
+}
+
+export function UseCaseSelectionButton({ useCase, onClick, selected }: Props) {
+ let label: string;
+ switch (useCase) {
+ case UseCase.PersonalMessaging:
+ label = _t("Friends and family");
+ break;
+ case UseCase.WorkMessaging:
+ label = _t("Coworkers and teams");
+ break;
+ case UseCase.CommunityMessaging:
+ label = _t("Online community members");
+ break;
+ }
+
+ return (
+