nitro-web 0.1.4 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client/app.tsx +5 -5
- package/client/index.ts +1 -1
- package/client/store.ts +15 -5
- package/components/auth/auth.api.js +304 -117
- package/components/auth/inviteConfirm.tsx +57 -37
- package/components/auth/reset.tsx +9 -4
- package/components/auth/signin.tsx +12 -5
- package/components/auth/signup.tsx +6 -4
- package/components/partials/element/dropdown.tsx +1 -1
- package/components/partials/element/table.tsx +82 -80
- package/package.json +1 -1
- package/server/email/index.js +34 -32
- package/server/index.js +1 -1
- package/server/models/company.js +3 -2
- package/server/models/user.js +2 -1
- package/server/router.js +6 -5
- package/types/components/auth/auth.api.d.ts +40 -11
- package/types/components/auth/auth.api.d.ts.map +1 -1
- package/types/server/email/index.d.ts +2 -0
- package/types/server/email/index.d.ts.map +1 -1
- package/types/server/index.d.ts +1 -1
- package/types/server/index.d.ts.map +1 -1
- package/types/server/models/company.d.ts +5 -1
- package/types/server/models/company.d.ts.map +1 -1
- package/types/server/models/user.d.ts +1 -1
- package/types/server/models/user.d.ts.map +1 -1
- package/types/util.d.ts +2 -2
- package/types/util.d.ts.map +1 -1
- package/types.ts +2 -1
- package/util.js +4 -3
package/server/models/user.js
CHANGED
package/server/router.js
CHANGED
|
@@ -387,7 +387,7 @@ export const middleware = {
|
|
|
387
387
|
else next()
|
|
388
388
|
},
|
|
389
389
|
isUser: (req, res, next) => {
|
|
390
|
-
if (!isValidUserOrRespond(req, res)) return
|
|
390
|
+
if (!isValidUserOrRespond(req, res)) return
|
|
391
391
|
else next()
|
|
392
392
|
},
|
|
393
393
|
isParamUser: (req, res, next) => {
|
|
@@ -401,11 +401,11 @@ export const middleware = {
|
|
|
401
401
|
else next()
|
|
402
402
|
},
|
|
403
403
|
isCompanyUser: (req, res, next) => {
|
|
404
|
-
if (!isValidParamCompanyUserOrRespond(req)) return
|
|
404
|
+
if (!isValidParamCompanyUserOrRespond(req, res)) return
|
|
405
405
|
else next()
|
|
406
406
|
},
|
|
407
407
|
isCompanyOwner: (req, res, next) => {
|
|
408
|
-
if (!isValidParamCompanyUserOrRespond(req, true)) return
|
|
408
|
+
if (!isValidParamCompanyUserOrRespond(req, res, true)) return
|
|
409
409
|
else next()
|
|
410
410
|
},
|
|
411
411
|
}
|
|
@@ -433,7 +433,8 @@ function isValidParamCompanyUserOrRespond(req, res, checkIsOwner = false) {
|
|
|
433
433
|
const company = _company || req.user?.companies?.find((o) => o._id.toString() == req.params.cid)
|
|
434
434
|
const isCompanyOwner = company?.users?.find((o) => o._id.toString() == req.user?._id?.toString() && o.role === 'owner')
|
|
435
435
|
if (!isValidUserOrRespond(req, res)) return
|
|
436
|
-
else if (!isAdminUser(req) &&
|
|
437
|
-
else if (!isAdminUser(req) &&
|
|
436
|
+
else if (!isAdminUser(req) && configLocal.isNotMultiTenant) res.unauthorized('Only admins can make this request.')
|
|
437
|
+
else if (!isAdminUser(req) && !company) res.unauthorized('Only company users can make this request.')
|
|
438
|
+
else if (!isAdminUser(req) && checkIsOwner && !isCompanyOwner) res.unauthorized('Only company owners can make this request.')
|
|
438
439
|
else return true
|
|
439
440
|
}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
export function resetInstructions(req: any, res: any): Promise<void>;
|
|
2
|
-
export function inviteInstructions(req: any, res: any): Promise<
|
|
2
|
+
export function inviteInstructions(req: any, res: any): Promise<any>;
|
|
3
|
+
export function resendInstructions(req: any, res: any): Promise<any>;
|
|
3
4
|
export function resetConfirm(req: any, res: any): Promise<void>;
|
|
4
5
|
export function inviteConfirm(req: any, res: any): Promise<void>;
|
|
6
|
+
export function invitePreConfirm(req: any, res: any): Promise<void>;
|
|
7
|
+
export function updateMemberRole(req: any, res: any): Promise<void>;
|
|
8
|
+
export function removeMember(req: any, res: any): Promise<void>;
|
|
5
9
|
export function userFindFromProvider(query: any, passwordToCheck: any, ...args: any[]): Promise<any>;
|
|
6
10
|
export function userSigninGetStore(user: any, isDesktop: any): Promise<{
|
|
7
11
|
jwt: string;
|
|
@@ -24,10 +28,11 @@ export function userCreate({ password, password2, company, ...userDataProp }: {
|
|
|
24
28
|
password?: string;
|
|
25
29
|
password2?: string;
|
|
26
30
|
company?: string;
|
|
27
|
-
}, baseUrl?: string, skipSendEmail?: boolean): Promise<object>;
|
|
31
|
+
}, baseUrl?: string, invite: any, skipSendEmail?: boolean): Promise<object>;
|
|
28
32
|
export function passwordValidate(password: string, password2: any): Promise<void>;
|
|
29
33
|
export function tokenCreate(modelName: any, id: any): Promise<any>;
|
|
30
34
|
export function tokenParse(token: any, modelName: any, maxAgeMs?: number): any;
|
|
35
|
+
export function addUserToCompany(companyId: any, userId: any, role: any, token: any, justValidate: any): Promise<any>;
|
|
31
36
|
export function tokenConfirmForReset(req: any): Promise<{
|
|
32
37
|
jwt: string;
|
|
33
38
|
user: any;
|
|
@@ -39,24 +44,36 @@ export function tokenConfirmForSingleTenant(req: any, isReset: any): Promise<{
|
|
|
39
44
|
export function tokenConfirmForMultiTenant(req: any): Promise<{
|
|
40
45
|
jwt: string;
|
|
41
46
|
user: any;
|
|
47
|
+
} | {
|
|
48
|
+
isExistingUser: boolean;
|
|
49
|
+
email: any;
|
|
50
|
+
} | {
|
|
51
|
+
isExistingUser?: undefined;
|
|
52
|
+
email?: undefined;
|
|
42
53
|
}>;
|
|
43
54
|
/**
|
|
44
55
|
* Creates and sends a reset or invite token to a user or company
|
|
45
56
|
* @param {object} options
|
|
46
|
-
* @param {'reset' | 'invite' | 'companyInvite'} options.type - token type
|
|
47
|
-
* @param {string} options.
|
|
48
|
-
* @param {
|
|
49
|
-
*
|
|
57
|
+
* @param {'reset' | 'invite' | 'companyInvite'} options.type - token type
|
|
58
|
+
* @param {string} options.id - user or company id
|
|
59
|
+
* @param {{
|
|
60
|
+
* email: string,
|
|
61
|
+
* firstName: string,
|
|
62
|
+
* [key: string]: any, // other fields to include in the invite row
|
|
63
|
+
* }} options.payload
|
|
50
64
|
* @param {function} [options.beforeUpdate] - runs before updating the model with the token, return null to skip update
|
|
51
65
|
* @param {function} [options.beforeSendEmail] - runs before sending the email, receives (options, token)
|
|
52
66
|
* @param {string} [options.baseUrl] - baseUrl to use for the email
|
|
53
67
|
* @returns {Promise<{token: string, mailgunPromise: Promise<unknown>}>}
|
|
54
68
|
*/
|
|
55
|
-
export function tokenSend({ type,
|
|
69
|
+
export function tokenSend({ type, id, payload, beforeUpdate, beforeSendEmail, baseUrl, isResend }: {
|
|
56
70
|
type: "reset" | "invite" | "companyInvite";
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
71
|
+
id: string;
|
|
72
|
+
payload: {
|
|
73
|
+
email: string;
|
|
74
|
+
firstName: string;
|
|
75
|
+
[key: string]: any;
|
|
76
|
+
};
|
|
60
77
|
beforeUpdate?: Function;
|
|
61
78
|
beforeSendEmail?: Function;
|
|
62
79
|
baseUrl?: string;
|
|
@@ -64,11 +81,14 @@ export function tokenSend({ type, _id, email, firstName, beforeUpdate, beforeSen
|
|
|
64
81
|
token: string;
|
|
65
82
|
mailgunPromise: Promise<unknown>;
|
|
66
83
|
}>;
|
|
84
|
+
export function getBaseUrl(req: any): any;
|
|
67
85
|
export function resolveBaseUrl(reqUrl: any, cfgUrl: any): any;
|
|
86
|
+
export function ensureNotLastOwner(companyUsers: any, idNowNonOwner: any): void;
|
|
68
87
|
export namespace auth {
|
|
69
88
|
export { userFindFromProvider };
|
|
70
89
|
export { userSigninGetStore };
|
|
71
90
|
export { getStore };
|
|
91
|
+
export { addUserToCompany };
|
|
72
92
|
export { userCreate };
|
|
73
93
|
export { passwordValidate };
|
|
74
94
|
export { tokenCreate };
|
|
@@ -77,6 +97,11 @@ export namespace auth {
|
|
|
77
97
|
export { tokenConfirmForReset };
|
|
78
98
|
export { tokenConfirmForSingleTenant };
|
|
79
99
|
export { tokenConfirmForMultiTenant };
|
|
100
|
+
export { getBaseUrl };
|
|
101
|
+
export { invitePreConfirm };
|
|
102
|
+
export { inviteConfirm };
|
|
103
|
+
export { updateMemberRole };
|
|
104
|
+
export { removeMember };
|
|
80
105
|
}
|
|
81
106
|
export const routes: {
|
|
82
107
|
'get /api/store': (typeof store)[];
|
|
@@ -86,8 +111,12 @@ export const routes: {
|
|
|
86
111
|
'post /api/reset-instructions': (typeof resetInstructions)[];
|
|
87
112
|
'post /api/reset-confirm': (typeof resetConfirm)[];
|
|
88
113
|
'post /api/invite-instructions': (typeof inviteInstructions)[];
|
|
89
|
-
'post /api/
|
|
114
|
+
'post /api/resend-instructions': (typeof resendInstructions)[];
|
|
115
|
+
'get /api/invite-pre-confirm/:token': (typeof invitePreConfirm)[];
|
|
116
|
+
'post /api/invite-confirm/:token': (typeof inviteConfirm)[];
|
|
90
117
|
'delete /api/account/:uid': (typeof remove)[];
|
|
118
|
+
'put /api/company/:cid/member-role/:uidOrEmail': (string | typeof updateMemberRole)[];
|
|
119
|
+
'delete /api/company/:cid/member/:uidOrEmail': (string | typeof removeMember)[];
|
|
91
120
|
setup: typeof setup;
|
|
92
121
|
};
|
|
93
122
|
declare function store(req: any, res: any): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.api.d.ts","sourceRoot":"","sources":["../../../components/auth/auth.api.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.api.d.ts","sourceRoot":"","sources":["../../../components/auth/auth.api.js"],"names":[],"mappings":"AAoLA,qEAUC;AAED,qEAwEC;AAED,qEAGC;AAED,gEAMC;AAED,iEAgBC;AAED,oEAGC;AAED,oEA8BC;AAED,gEAgCC;AAID,qGAkDC;AAED;;;GAOC;AAED;;GAKC;AAID;;;;;;;;;GASG;AACH,8EAPG;IAA0B,QAAQ,GAA1B,MAAM;IACY,SAAS,GAA3B,MAAM;IACY,OAAO,GAAzB,MAAM;CACd,YAAQ,MAAM,+BACN,OAAO,GACL,OAAO,CAAC,MAAM,CAAC,CAqE3B;AAED,kFAiBC;AAED,mEAOC;AAED,+EAWC;AAED,sHAiBC;AAED;;;GAEC;AAED;;;GA0BC;AAED;;;;;;;;;GAmCC;AAED;;;;;;;;;;;;;;GAcG;AACH,mGAZG;IAAsD,IAAI,EAAlD,OAAO,GAAG,QAAQ,GAAG,eAAe;IACpB,EAAE,EAAlB,MAAM;IAKH,OAAO,EAJV;QACN,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QACtB,CAAK,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB;IAC0B,YAAY;IACZ,eAAe;IACjB,OAAO,GAAxB,MAAM;CACd,GAAU,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;CAAC,CAAC,CAmEtE;AAED,0CAEC;AAED,8DAmBC;AAED,gFAKC;;;;;;;;;;;;;;;;;;;;AA/tBD;;;;;;;;;;;;;;;EAiBC;AA0ED,0DAEC;AAgCD,mDAEC;AAtBD,iDAkBC;AA5BD,2DAQC;AA0BD,2DAwBC;AAtID,0EAsEC"}
|
|
@@ -29,6 +29,8 @@ export function sendEmail({ template, to, config, bcc, data, from, replyTo, reci
|
|
|
29
29
|
skipCssInline?: boolean;
|
|
30
30
|
test?: boolean;
|
|
31
31
|
}): Promise<[any, any]>;
|
|
32
|
+
export const requiredEmailConfigKeys: string[];
|
|
33
|
+
export const optionalEmailConfigKeys: string[];
|
|
32
34
|
/**
|
|
33
35
|
* Sends an email using a predefined template, with optional data/or recipientVariables
|
|
34
36
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/email/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/email/index.js"],"names":[],"mappings":"AAmBA;;;;;;;;;;;;;;;;;GAiBG;AACH,iIAbG;IAAqB,QAAQ,EAArB,MAAM;IACO,EAAE,EAAf,MAAM;IACO,MAAM,EAAnB,MAAM;IACQ,GAAG,GAAjB,MAAM;IACQ,IAAI,GAAlB,MAAM;IACQ,IAAI,GAAlB,MAAM;IACQ,OAAO,GAArB,MAAM;IACQ,kBAAkB,GAAhC,MAAM;IACQ,OAAO,GAArB,MAAM;IACS,aAAa,GAA5B,OAAO;IACQ,IAAI,GAAnB,OAAO;CACf,GAAU,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CA4E/B;AAhGD,+CAA8E;AAC9E,+CAAuG;;;;qBAK1F;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE"}
|
package/types/server/index.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ export * from "../util.js";
|
|
|
2
2
|
export * from "../components/auth/auth.api.js";
|
|
3
3
|
export * from "../components/billing/stripe.api.js";
|
|
4
4
|
export * as util from "../util.js";
|
|
5
|
-
export { sendEmail } from "./email/index.js";
|
|
6
5
|
export { routes as authRoutes } from "../components/auth/auth.api.js";
|
|
7
6
|
export { routes as stripeRoutes } from "../components/billing/stripe.api.js";
|
|
8
7
|
/**
|
|
@@ -23,4 +22,5 @@ export function setupDefaultModels(db: any): Promise<void>;
|
|
|
23
22
|
export { userModel, companyModel };
|
|
24
23
|
export { currencies, countries } from "./constants.js";
|
|
25
24
|
export { setupRouter, middleware, isValidUserOrRespond, isAdminUser } from "./router.js";
|
|
25
|
+
export { sendEmail, requiredEmailConfigKeys, optionalEmailConfigKeys } from "./email/index.js";
|
|
26
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../server/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../server/index.js"],"names":[],"mappings":";;;;;;;;;+BAOa,OAAO,aAAa,EAAE,gBAAgB;;;;sBACtC,OAAO,gBAAgB,EAAE,OAAO;;;;uBAChC,OAAO,gBAAgB,EAAE,QAAQ;sBAIxB,kBAAkB;yBACf,qBAAqB;AAC9C,2DAIC"}
|
|
@@ -112,6 +112,10 @@ declare namespace _default {
|
|
|
112
112
|
type: string;
|
|
113
113
|
required: boolean;
|
|
114
114
|
};
|
|
115
|
+
firstName: {
|
|
116
|
+
type: string;
|
|
117
|
+
required: boolean;
|
|
118
|
+
};
|
|
115
119
|
role: {
|
|
116
120
|
type: string;
|
|
117
121
|
enum: string[];
|
|
@@ -128,7 +132,7 @@ declare namespace _default {
|
|
|
128
132
|
let afterFind: ((data: any) => Promise<void>)[];
|
|
129
133
|
namespace methods {
|
|
130
134
|
function publicData(models: any): any;
|
|
131
|
-
function
|
|
135
|
+
function authPopulate(): {
|
|
132
136
|
as: string;
|
|
133
137
|
from: string;
|
|
134
138
|
let: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"company.d.ts","sourceRoot":"","sources":["../../../server/models/company.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"company.d.ts","sourceRoot":"","sources":["../../../server/models/company.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAyDgB,sCAEX;QACa;;;;;;;;;;;;;;;;;;;;;;;YAyBb"}
|
|
@@ -72,7 +72,7 @@ declare namespace _default {
|
|
|
72
72
|
let beforeValidate: ((data: any) => Promise<void>)[];
|
|
73
73
|
let afterFind: ((data: any) => Promise<any>)[];
|
|
74
74
|
namespace methods {
|
|
75
|
-
function
|
|
75
|
+
function authPopulate(): any[];
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../server/models/user.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../server/models/user.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkDkB,+BAGb"}
|
package/types/util.d.ts
CHANGED
|
@@ -738,7 +738,7 @@ export function queryString(obj: {
|
|
|
738
738
|
* @param {string} route - e.g. 'post /api/user'
|
|
739
739
|
* @param {{ [key: string]: any }} [data] - payload
|
|
740
740
|
* @param {{preventDefault?: function}} [event] - event to prevent default
|
|
741
|
-
* @param {
|
|
741
|
+
* @param {React.Dispatch<React.SetStateAction<any>>} [setIsLoading] - setIsLoading setter
|
|
742
742
|
* @param {SetState} [setState] - if passed, state.errors will be reset before the request
|
|
743
743
|
* @param {Object} [options] - options
|
|
744
744
|
* @param {AxiosRequestConfig} [options.axiosConfig] - withCredentials=true by default, see https://axios-http.com/docs/req_config
|
|
@@ -758,7 +758,7 @@ export function request(route: string, data?: {
|
|
|
758
758
|
[key: string]: any;
|
|
759
759
|
}, event?: {
|
|
760
760
|
preventDefault?: Function;
|
|
761
|
-
}, setIsLoading?:
|
|
761
|
+
}, setIsLoading?: React.Dispatch<React.SetStateAction<any>>, setState?: SetState, options?: {
|
|
762
762
|
axiosConfig?: AxiosRequestConfig;
|
|
763
763
|
}): Promise<any>;
|
|
764
764
|
/**
|
package/types/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../util.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../util.js"],"names":[],"mappings":"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"}
|
package/types.ts
CHANGED
|
@@ -20,6 +20,7 @@ export type Config = InjectedConfig & {
|
|
|
20
20
|
beforeApp?: (config: Config) => Promise<unknown>
|
|
21
21
|
beforeStoreUpdate?: (prevStore: Store | null, newData: Store) => Store
|
|
22
22
|
middleware?: {[key: string]: (route: any, store: any) => undefined | { redirect: string }}
|
|
23
|
+
getSignoutStore?: (prev: any, initialStore: any) => any
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
export type User = {
|
|
@@ -54,7 +55,7 @@ export type Store = {
|
|
|
54
55
|
apiAvailable?: boolean
|
|
55
56
|
jwt?: string
|
|
56
57
|
message?: MessageObject | string
|
|
57
|
-
user
|
|
58
|
+
user: User,
|
|
58
59
|
}
|
|
59
60
|
|
|
60
61
|
// util.addressSchema
|
package/util.js
CHANGED
|
@@ -941,7 +941,8 @@ export function getResponseErrors (errs) {
|
|
|
941
941
|
// Array of error objects /////todo warning these may not have title from the server? e.g. if
|
|
942
942
|
// throw new Error('You do not have access to export employees.') is thrown from the server into res.error(err)
|
|
943
943
|
if (Array.isArray(errs)) {
|
|
944
|
-
return
|
|
944
|
+
if (errs.length === 0) return [{ title: 'error', detail: 'Oops there was an error, but no errors were returned' }]
|
|
945
|
+
else return errs
|
|
945
946
|
|
|
946
947
|
// Axios response errors ////wsame here too!!!
|
|
947
948
|
} else if (typeof errs === 'object' && errs?.response?.data?.errors) {
|
|
@@ -1730,7 +1731,7 @@ export function queryString (obj, _path='', _output, options={}) {
|
|
|
1730
1731
|
* @param {string} route - e.g. 'post /api/user'
|
|
1731
1732
|
* @param {{ [key: string]: any }} [data] - payload
|
|
1732
1733
|
* @param {{preventDefault?: function}} [event] - event to prevent default
|
|
1733
|
-
* @param {
|
|
1734
|
+
* @param {React.Dispatch<React.SetStateAction<any>>} [setIsLoading] - setIsLoading setter
|
|
1734
1735
|
* @param {SetState} [setState] - if passed, state.errors will be reset before the request
|
|
1735
1736
|
* @param {Object} [options] - options
|
|
1736
1737
|
* @param {AxiosRequestConfig} [options.axiosConfig] - withCredentials=true by default, see https://axios-http.com/docs/req_config
|
|
@@ -1757,7 +1758,7 @@ export async function request (route, data, event, setIsLoading, setState, optio
|
|
|
1757
1758
|
)
|
|
1758
1759
|
|
|
1759
1760
|
// show loading
|
|
1760
|
-
if (setIsLoading) setIsLoading(true)
|
|
1761
|
+
if (setIsLoading) setIsLoading((/** @type {any} */o) => o ? o : true)
|
|
1761
1762
|
|
|
1762
1763
|
// warning, not persisting through re-renders, but should be fine until loading is finished
|
|
1763
1764
|
data = data || {}
|