mirror of
https://github.com/element-hq/element-web
synced 2024-11-22 09:15:41 +03:00
Add better error for email invites without identity server (#10739)
This commit is contained in:
parent
43ffd89e58
commit
02de2f5ba9
3 changed files with 21 additions and 1 deletions
|
@ -754,6 +754,7 @@
|
|||
"The user must be unbanned before they can be invited.": "The user must be unbanned before they can be invited.",
|
||||
"The user's homeserver does not support the version of the space.": "The user's homeserver does not support the version of the space.",
|
||||
"The user's homeserver does not support the version of the room.": "The user's homeserver does not support the version of the room.",
|
||||
"Cannot invite user by email without an identity server. You can connect to one under \"Settings\".": "Cannot invite user by email without an identity server. You can connect to one under \"Settings\".",
|
||||
"Unknown server error": "Unknown server error",
|
||||
"Use a few words, avoid common phrases": "Use a few words, avoid common phrases",
|
||||
"No need for symbols, digits, or uppercase letters": "No need for symbols, digits, or uppercase letters",
|
||||
|
|
|
@ -277,6 +277,13 @@ export default class MultiInviter {
|
|||
errorText = _t("The user's homeserver does not support the version of the room.");
|
||||
}
|
||||
break;
|
||||
case "ORG.MATRIX.JSSDK_MISSING_PARAM":
|
||||
if (getAddressType(address) === AddressType.Email) {
|
||||
errorText = _t(
|
||||
"Cannot invite user by email without an identity server. " +
|
||||
'You can connect to one under "Settings".',
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (!errorText) {
|
||||
|
|
|
@ -15,7 +15,7 @@ limitations under the License.
|
|||
*/
|
||||
|
||||
import { mocked } from "jest-mock";
|
||||
import { MatrixClient } from "matrix-js-sdk/src/matrix";
|
||||
import { MatrixClient, MatrixError } from "matrix-js-sdk/src/matrix";
|
||||
|
||||
import { MatrixClientPeg } from "../../src/MatrixClientPeg";
|
||||
import Modal, { ComponentType, ComponentProps } from "../../src/Modal";
|
||||
|
@ -142,5 +142,17 @@ describe("MultiInviter", () => {
|
|||
});
|
||||
});
|
||||
});
|
||||
|
||||
it("should show sensible error when attempting 3pid invite with no identity server", async () => {
|
||||
client.inviteByEmail = jest.fn().mockRejectedValueOnce(
|
||||
new MatrixError({
|
||||
errcode: "ORG.MATRIX.JSSDK_MISSING_PARAM",
|
||||
}),
|
||||
);
|
||||
await inviter.invite(["foo@bar.com"]);
|
||||
expect(inviter.getErrorText("foo@bar.com")).toMatchInlineSnapshot(
|
||||
`"Cannot invite user by email without an identity server. You can connect to one under "Settings"."`,
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue