Apply prettier formatting

This commit is contained in:
Michael Weimann 2022-12-12 12:24:14 +01:00
parent 1cac306093
commit 526645c791
No known key found for this signature in database
GPG key ID: 53F535A266BB9584
1576 changed files with 65385 additions and 62478 deletions

View file

@ -52,9 +52,10 @@ export const createSpace = async (
createOpts: {
name,
preset: isPublic ? Preset.PublicChat : Preset.PrivateChat,
visibility: (
isPublic && await MatrixClientPeg.get().doesServerSupportUnstableFeature("org.matrix.msc3827.stable")
) ? Visibility.Public : Visibility.Private,
visibility:
isPublic && (await MatrixClientPeg.get().doesServerSupportUnstableFeature("org.matrix.msc3827.stable"))
? Visibility.Public
: Visibility.Private,
power_level_content_override: {
// Only allow Admins to write to the timeline to prevent hidden sync spam
events_default: 100,
@ -78,8 +79,8 @@ export const createSpace = async (
const SpaceCreateMenuType = ({ title, description, className, onClick }) => {
return (
<AccessibleButton className={classNames("mx_SpaceCreateMenuType", className)} onClick={onClick}>
<h3>{ title }</h3>
<span>{ description }</span>
<h3>{title}</h3>
<span>{description}</span>
</AccessibleButton>
);
};
@ -95,34 +96,43 @@ const spaceNameValidator = withValidation({
});
const nameToLocalpart = (name: string): string => {
return name.trim().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9_-]+/gi, "");
return name
.trim()
.toLowerCase()
.replace(/\s+/g, "-")
.replace(/[^a-z0-9_-]+/gi, "");
};
// XXX: Temporary for the Spaces release only
export const SpaceFeedbackPrompt = ({ onClick }: { onClick?: () => void }) => {
if (!shouldShowFeedback()) return null;
return <div className="mx_SpaceFeedbackPrompt">
<span className="mx_SpaceFeedbackPrompt_text">{ _t("Spaces are a new feature.") }</span>
<AccessibleButton
kind="link_inline"
onClick={() => {
if (onClick) onClick();
Modal.createDialog(GenericFeatureFeedbackDialog, {
title: _t("Spaces feedback"),
subheading: _t("Thank you for trying Spaces. " +
"Your feedback will help inform the next versions."),
rageshakeLabel: "spaces-feedback",
rageshakeData: Object.fromEntries([
"Spaces.allRoomsInHome",
"Spaces.enabledMetaSpaces",
].map(k => [k, SettingsStore.getValue(k)])),
});
}}
>
{ _t("Give feedback.") }
</AccessibleButton>
</div>;
return (
<div className="mx_SpaceFeedbackPrompt">
<span className="mx_SpaceFeedbackPrompt_text">{_t("Spaces are a new feature.")}</span>
<AccessibleButton
kind="link_inline"
onClick={() => {
if (onClick) onClick();
Modal.createDialog(GenericFeatureFeedbackDialog, {
title: _t("Spaces feedback"),
subheading: _t(
"Thank you for trying Spaces. " + "Your feedback will help inform the next versions.",
),
rageshakeLabel: "spaces-feedback",
rageshakeData: Object.fromEntries(
["Spaces.allRoomsInHome", "Spaces.enabledMetaSpaces"].map((k) => [
k,
SettingsStore.getValue(k),
]),
),
});
}}
>
{_t("Give feedback.")}
</AccessibleButton>
</div>
);
};
type BProps = Omit<ComponentProps<typeof SpaceBasicSettings>, "nameDisabled" | "topicDisabled" | "avatarDisabled">;
@ -164,55 +174,56 @@ export const SpaceCreateForm: React.FC<ISpaceCreateFormProps> = ({
}
};
return <form className="mx_SpaceBasicSettings" onSubmit={onSubmit}>
<SpaceAvatar avatarUrl={avatarUrl} setAvatar={setAvatar} avatarDisabled={busy} />
return (
<form className="mx_SpaceBasicSettings" onSubmit={onSubmit}>
<SpaceAvatar avatarUrl={avatarUrl} setAvatar={setAvatar} avatarDisabled={busy} />
<Field
name="spaceName"
label={_t("Name")}
autoFocus={true}
value={name}
onChange={ev => {
const newName = ev.target.value;
if (!alias || alias === `#${nameToLocalpart(name)}:${domain}`) {
setAlias(`#${nameToLocalpart(newName)}:${domain}`);
aliasFieldRef.current?.validate({ allowEmpty: true });
}
setName(newName);
}}
onKeyDown={onKeyDown}
ref={nameFieldRef}
onValidate={spaceNameValidator}
disabled={busy}
autoComplete="off"
/>
{ showAliasField
? <RoomAliasField
ref={aliasFieldRef}
onChange={setAlias}
domain={domain}
value={alias}
placeholder={name ? nameToLocalpart(name) : _t("e.g. my-space")}
label={_t("Address")}
disabled={busy}
<Field
name="spaceName"
label={_t("Name")}
autoFocus={true}
value={name}
onChange={(ev) => {
const newName = ev.target.value;
if (!alias || alias === `#${nameToLocalpart(name)}:${domain}`) {
setAlias(`#${nameToLocalpart(newName)}:${domain}`);
aliasFieldRef.current?.validate({ allowEmpty: true });
}
setName(newName);
}}
onKeyDown={onKeyDown}
ref={nameFieldRef}
onValidate={spaceNameValidator}
disabled={busy}
autoComplete="off"
/>
: null
}
<Field
name="spaceTopic"
element="textarea"
label={_t("Description")}
value={topic}
onChange={ev => setTopic(ev.target.value)}
rows={3}
disabled={busy}
/>
{showAliasField ? (
<RoomAliasField
ref={aliasFieldRef}
onChange={setAlias}
domain={domain}
value={alias}
placeholder={name ? nameToLocalpart(name) : _t("e.g. my-space")}
label={_t("Address")}
disabled={busy}
onKeyDown={onKeyDown}
/>
) : null}
{ children }
</form>;
<Field
name="spaceTopic"
element="textarea"
label={_t("Description")}
value={topic}
onChange={(ev) => setTopic(ev.target.value)}
rows={3}
disabled={busy}
/>
{children}
</form>
);
};
const SpaceCreateMenu = ({ onFinished }) => {
@ -247,13 +258,7 @@ const SpaceCreateMenu = ({ onFinished }) => {
}
try {
await createSpace(
name,
visibility === Visibility.Public,
alias,
topic,
avatar,
);
await createSpace(name, visibility === Visibility.Public, alias, topic, avatar);
onFinished();
} catch (e) {
@ -263,86 +268,84 @@ const SpaceCreateMenu = ({ onFinished }) => {
let body;
if (visibility === null) {
body = <React.Fragment>
<h2>{ _t("Create a space") }</h2>
<p>
{ _t("Spaces are a new way to group rooms and people. What kind of Space do you want to create? " +
"You can change this later.") }
</p>
body = (
<React.Fragment>
<h2>{_t("Create a space")}</h2>
<p>
{_t(
"Spaces are a new way to group rooms and people. What kind of Space do you want to create? " +
"You can change this later.",
)}
</p>
<SpaceCreateMenuType
title={_t("Public")}
description={_t("Open space for anyone, best for communities")}
className="mx_SpaceCreateMenuType_public"
onClick={() => setVisibility(Visibility.Public)}
/>
<SpaceCreateMenuType
title={_t("Private")}
description={_t("Invite only, best for yourself or teams")}
className="mx_SpaceCreateMenuType_private"
onClick={() => setVisibility(Visibility.Private)}
/>
<SpaceCreateMenuType
title={_t("Public")}
description={_t("Open space for anyone, best for communities")}
className="mx_SpaceCreateMenuType_public"
onClick={() => setVisibility(Visibility.Public)}
/>
<SpaceCreateMenuType
title={_t("Private")}
description={_t("Invite only, best for yourself or teams")}
className="mx_SpaceCreateMenuType_private"
onClick={() => setVisibility(Visibility.Private)}
/>
<p>
{ _t("To join a space you'll need an invite.") }
</p>
<p>{_t("To join a space you'll need an invite.")}</p>
<SpaceFeedbackPrompt onClick={onFinished} />
</React.Fragment>;
<SpaceFeedbackPrompt onClick={onFinished} />
</React.Fragment>
);
} else {
body = <React.Fragment>
<AccessibleTooltipButton
className="mx_SpaceCreateMenu_back"
onClick={() => setVisibility(null)}
title={_t("Go back")}
/>
body = (
<React.Fragment>
<AccessibleTooltipButton
className="mx_SpaceCreateMenu_back"
onClick={() => setVisibility(null)}
title={_t("Go back")}
/>
<h2>
{
visibility === Visibility.Public ? _t("Your public space") : _t("Your private space")
}
</h2>
<p>
{
_t("Add some details to help people recognise it.")
} {
_t("You can change these anytime.")
}
</p>
<h2>{visibility === Visibility.Public ? _t("Your public space") : _t("Your private space")}</h2>
<p>
{_t("Add some details to help people recognise it.")} {_t("You can change these anytime.")}
</p>
<SpaceCreateForm
busy={busy}
onSubmit={onSpaceCreateClick}
setAvatar={setAvatar}
name={name}
setName={setName}
nameFieldRef={spaceNameField}
topic={topic}
setTopic={setTopic}
alias={alias}
setAlias={setAlias}
showAliasField={visibility === Visibility.Public}
aliasFieldRef={spaceAliasField}
/>
<SpaceCreateForm
busy={busy}
onSubmit={onSpaceCreateClick}
setAvatar={setAvatar}
name={name}
setName={setName}
nameFieldRef={spaceNameField}
topic={topic}
setTopic={setTopic}
alias={alias}
setAlias={setAlias}
showAliasField={visibility === Visibility.Public}
aliasFieldRef={spaceAliasField}
/>
<AccessibleButton kind="primary" onClick={onSpaceCreateClick} disabled={busy}>
{ busy ? _t("Creating...") : _t("Create") }
</AccessibleButton>
</React.Fragment>;
<AccessibleButton kind="primary" onClick={onSpaceCreateClick} disabled={busy}>
{busy ? _t("Creating...") : _t("Create")}
</AccessibleButton>
</React.Fragment>
);
}
return <ContextMenu
left={72}
top={62}
chevronOffset={0}
chevronFace={ChevronFace.None}
onFinished={onFinished}
wrapperClassName="mx_SpaceCreateMenu_wrapper"
managed={false}
focusLock={true}
>
{ body }
</ContextMenu>;
return (
<ContextMenu
left={72}
top={62}
chevronOffset={0}
chevronFace={ChevronFace.None}
onFinished={onFinished}
wrapperClassName="mx_SpaceCreateMenu_wrapper"
managed={false}
focusLock={true}
>
{body}
</ContextMenu>
);
};
export default SpaceCreateMenu;