QQQ-32: added booleans, cleaned up error handling, fixed infinite loop on unauthorized login, removed all the login buttons, removed redundant qClient functions

This commit is contained in:
Tim Chamberlain
2022-08-09 11:52:32 -05:00
parent c4b72c4b11
commit 7cb3c5ee88
12 changed files with 81 additions and 104 deletions

View File

@ -19,9 +19,9 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
import {QFieldMetaData} from "@kingsrook/qqq-frontend-core/lib/model/metaData/QFieldMetaData";
import {QController} from "@kingsrook/qqq-frontend-core/lib/controllers/QController";
import {QQueryFilter} from "@kingsrook/qqq-frontend-core/lib/model/query/QQueryFilter";
import {QException} from "@kingsrook/qqq-frontend-core/lib/exceptions/QException";
import {useAuth0} from "@auth0/auth0-react";
/*******************************************************************************
** client wrapper of qqq backend
@ -31,40 +31,25 @@ class QClient
{
private static qController: QController;
private static handleException(exception: QException)
{
console.log(`Caught Exception: ${JSON.stringify(exception)}`);
const {logout} = useAuth0();
if (exception.status === "401")
{
logout();
}
}
public static getInstance()
{
if (this.qController == null)
{
this.qController = new QController("");
this.qController = new QController("", this.handleException);
}
return this.qController;
}
public static loadTableMetaData(tableName: string)
{
return this.getInstance().loadTableMetaData(tableName);
}
public static loadMetaData()
{
return this.getInstance().loadMetaData();
}
public static query(tableName: string, filter: QQueryFilter, limit: number, skip: number)
{
return this.getInstance()
.query(tableName, filter, limit, skip)
.catch((error) =>
{
throw error;
});
}
public static count(tableName: string, filter: QQueryFilter)
{
return this.getInstance().count(tableName, filter);
}
}
export default QClient;