diff --git a/src/components/structures/SpaceRoomView.tsx b/src/components/structures/SpaceRoomView.tsx
index 23cd2f898c..f0789e1e21 100644
--- a/src/components/structures/SpaceRoomView.tsx
+++ b/src/components/structures/SpaceRoomView.tsx
@@ -364,6 +364,7 @@ const SpaceSetupFirstRooms = ({ space, title, description, onFinished }) => {
placeholder={placeholders[i]}
value={roomNames[i]}
onChange={ev => setRoomName(i, ev.target.value)}
+ autoFocus={i === 2}
/>;
});
@@ -418,13 +419,9 @@ const SpaceSetupFirstRooms = ({ space, title, description, onFinished }) => {
const SpaceSetupPublicShare = ({ space, onFinished }) => {
return
-
{ _t("Invite people") }
-
- {
- _t("It's just you at the moment.")
- } {
- _t("%(spaceName)s will be even better with others", { spaceName: space.name })
- }
+
{ _t("Share %(name)s", { name: space.name }) }
+
+ { _t("It's just you at the moment, it will be even better with others.") }
@@ -435,12 +432,12 @@ const SpaceSetupPublicShare = ({ space, onFinished }) => {
;
};
-const SpaceSetupPrivateScope = ({ onFinished }) => {
- const [option, setOption] = useState
(null);
-
+const SpaceSetupPrivateScope = ({ space, onFinished }) => {
return
{ _t("Who are you working with?") }
-
{ _t("Ensure the right people have access to the space.") }
+
+ { _t("Make sure the right people have access to %(name)s", { name: space.name }) }
+
{
onChange={ev => setEmailAddress(i, ev.target.value)}
ref={fieldRefs[i]}
onValidate={validateEmailRules}
+ autoFocus={i === 0}
/>;
});
@@ -522,9 +520,18 @@ const SpaceSetupPrivateInvite = ({ space, onFinished }) => {
setBusy(false);
};
+ let onClick = onFinished;
+ let buttonLabel = _t("Skip for now");
+ if (emailAddresses.some(name => name.trim())) {
+ onClick = onNextClick;
+ buttonLabel = busy ? _t("Inviting...") : _t("Continue")
+ }
+
return
{ _t("Invite your teammates") }
-
{ _t("Ensure the right people have access to the space.") }
+
+ { _t("Make sure the right people have access. You can invite more later.") }
+
{ error &&
{ error }
}
{ fields }
@@ -539,8 +546,7 @@ const SpaceSetupPrivateInvite = ({ space, onFinished }) => {
-
{_t("Skip for now")}
-
+
;
};
@@ -673,7 +679,8 @@ export default class SpaceRoomView extends React.PureComponent {
return this.setState({ phase: Phase.PublicShare })}
/>;
case Phase.PublicShare:
@@ -681,6 +688,7 @@ export default class SpaceRoomView extends React.PureComponent {
case Phase.PrivateScope:
return {
this.setState({ phase: invite ? Phase.PrivateInvite : Phase.PrivateCreateRooms });
}}
@@ -694,7 +702,8 @@ export default class SpaceRoomView extends React.PureComponent {
return this.setState({ phase: Phase.Landing })}
/>;
}
diff --git a/src/components/views/spaces/SpaceCreateMenu.tsx b/src/components/views/spaces/SpaceCreateMenu.tsx
index ca5b25f128..879cf929e0 100644
--- a/src/components/views/spaces/SpaceCreateMenu.tsx
+++ b/src/components/views/spaces/SpaceCreateMenu.tsx
@@ -108,7 +108,7 @@ const SpaceCreateMenu = ({ onFinished }) => {
body =
{ _t("Create a space") }
{ _t("Spaces are new ways to group rooms and people. " +
- "To join an existing space you’ll need an invite") }
+ "To join an existing space you'll need an invite.") }
{
const success = await copyPlaintext(permalinkCreator.forRoom());
const text = success ? _t("Copied!") : _t("Failed to copy");
setCopiedText(text);
- await sleep(10);
+ await sleep(5000);
if (copiedText === text) { // if the text hasn't changed by another click then clear it after some time
setCopiedText(_t("Click to copy"));
}
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index 4be6e06459..5ba787422f 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -989,7 +989,7 @@
"Name": "Name",
"Description": "Description",
"Create a space": "Create a space",
- "Spaces are new ways to group rooms and people. To join an existing space you’ll need an invite": "Spaces are new ways to group rooms and people. To join an existing space you’ll need an invite",
+ "Spaces are new ways to group rooms and people. To join an existing space you'll need an invite.": "Spaces are new ways to group rooms and people. To join an existing space you'll need an invite.",
"Public": "Public",
"Open space for anyone, best for communities": "Open space for anyone, best for communities",
"Private": "Private",
@@ -1009,10 +1009,10 @@
"Copied!": "Copied!",
"Failed to copy": "Failed to copy",
"Share invite link": "Share invite link",
- "Invite by email or username": "Invite by email or username",
+ "Invite people": "Invite people",
+ "Invite with email or username": "Invite with email or username",
"Invite members": "Invite members",
"Share your public space": "Share your public space",
- "Invite people": "Invite people",
"Settings": "Settings",
"Leave space": "Leave space",
"New room": "New room",
@@ -2629,23 +2629,24 @@
"Failed to create initial space rooms": "Failed to create initial space rooms",
"Skip for now": "Skip for now",
"Creating rooms...": "Creating rooms...",
- "It's just you at the moment.": "It's just you at the moment.",
- "%(spaceName)s will be even better with others": "%(spaceName)s will be even better with others",
+ "Share %(name)s": "Share %(name)s",
+ "It's just you at the moment, it will be even better with others.": "It's just you at the moment, it will be even better with others.",
"Go to my first room": "Go to my first room",
"Who are you working with?": "Who are you working with?",
- "Ensure the right people have access to the space.": "Ensure the right people have access to the space.",
- "Just Me": "Just Me",
- "A private space just for you": "A private space just for you",
+ "Make sure the right people have access to %(name)s": "Make sure the right people have access to %(name)s",
+ "Just me": "Just me",
+ "A private space to organise your rooms": "A private space to organise your rooms",
"Me and my teammates": "Me and my teammates",
"A private space for you and your teammates": "A private space for you and your teammates",
"Failed to invite the following users to your space: %(csvUsers)s": "Failed to invite the following users to your space: %(csvUsers)s",
- "Invite your teammates": "Invite your teammates",
- "Invite by username": "Invite by username",
"Inviting...": "Inviting...",
+ "Invite your teammates": "Invite your teammates",
+ "Make sure the right people have access. You can invite more later.": "Make sure the right people have access. You can invite more later.",
+ "Invite by username": "Invite by username",
"What are some things you want to discuss?": "What are some things you want to discuss?",
- "We'll create a room for each of them. You can add more later too.": "We'll create a room for each of them. You can add more later too.",
+ "Let's create a room for each of them. You can add more later too, including already existing ones.": "Let's create a room for each of them. You can add more later too, including already existing ones.",
"What projects are you working on?": "What projects are you working on?",
- "We'll create rooms for each of them. You can add existing rooms after setup.": "We'll create rooms for each of them. You can add existing rooms after setup.",
+ "We'll create rooms for each of them. You can add more later too, including already existing ones.": "We'll create rooms for each of them. You can add more later too, including already existing ones.",
"Tried to load a specific point in this room's timeline, but you do not have permission to view the message in question.": "Tried to load a specific point in this room's timeline, but you do not have permission to view the message in question.",
"Tried to load a specific point in this room's timeline, but was unable to find it.": "Tried to load a specific point in this room's timeline, but was unable to find it.",
"Failed to load timeline position": "Failed to load timeline position",