mirror of
https://github.com/element-hq/element-web.git
synced 2024-12-13 06:35:00 +03:00
f4dd88ed64
- ServerConfig seems too specific to Vector, but we can always add it back later. - Signup.js contains all the logic for determining what to show which was previously in UI components.
49 lines
1.5 KiB
JavaScript
49 lines
1.5 KiB
JavaScript
"use strict";
|
|
var MatrixClientPeg = require("./MatrixClientPeg");
|
|
var dis = require("./dispatcher");
|
|
|
|
class Register {
|
|
|
|
}
|
|
|
|
class Login {
|
|
constructor(hsUrl, isUrl) {
|
|
this._hsUrl = hsUrl;
|
|
this._isUrl = isUrl;
|
|
this._currentFlowIndex = 0;
|
|
this._flows = [];
|
|
}
|
|
|
|
getFlows() {
|
|
var self = this;
|
|
// feels a bit wrong to be clobbering the global client for something we
|
|
// don't even know if it'll work, but we'll leave this here for now to
|
|
// not complicate matters further. It would be nicer to isolate this
|
|
// logic entirely from the rest of the app though.
|
|
MatrixClientPeg.replaceUsingUrls(
|
|
this._hsUrl,
|
|
this._isUrl
|
|
);
|
|
return MatrixClientPeg.get().loginFlows().then(function(result) {
|
|
self._flows = result.flows;
|
|
self._currentFlowIndex = 0;
|
|
// technically the UI should display options for all flows for the
|
|
// user to then choose one, so return all the flows here.
|
|
return self._flows;
|
|
});
|
|
}
|
|
|
|
chooseFlow(flowIndex) {
|
|
this._currentFlowIndex = flowIndex;
|
|
}
|
|
|
|
getCurrentFlowStep() {
|
|
// technically the flow can have multiple steps, but no one does this
|
|
// for login so we can ignore it.
|
|
var flowStep = this._flows[this._currentFlowIndex];
|
|
return flowStep ? flowStep.type : null;
|
|
}
|
|
}
|
|
|
|
module.exports.Register = Register;
|
|
module.exports.Login = Login;
|