@q2devel/q2-storybook 1.0.13 → 1.0.15
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/dist/auth/Auth.types.d.ts +32 -0
- package/dist/auth/Auth.types.js +1 -0
- package/dist/auth/components/AuthenticatedFactory.d.ts +8 -0
- package/dist/auth/components/AuthenticatedFactory.js +21 -0
- package/dist/auth/components/AuthenticatedFactory.types.d.ts +4 -0
- package/dist/auth/components/AuthenticatedFactory.types.js +1 -0
- package/dist/auth/config/Config.d.ts +3 -0
- package/dist/auth/config/Config.js +19 -0
- package/dist/auth/config/config.types.d.ts +27 -0
- package/dist/auth/config/config.types.js +1 -0
- package/dist/auth/context/AuthContextFactory.d.ts +4 -0
- package/dist/auth/context/AuthContextFactory.js +19 -0
- package/dist/auth/hooks/useCurrentUserHookFactory.d.ts +12 -0
- package/dist/auth/hooks/useCurrentUserHookFactory.js +18 -0
- package/dist/auth/hooks/useCurrentUserUpdateHookFactory.d.ts +9 -0
- package/dist/auth/hooks/useCurrentUserUpdateHookFactory.js +73 -0
- package/dist/auth/hooks/useCurrentUserUpdatePasswordHookFactory.d.ts +7 -0
- package/dist/auth/hooks/useCurrentUserUpdatePasswordHookFactory.js +76 -0
- package/dist/auth/hooks/useForgotPasswordHookFactory.d.ts +7 -0
- package/dist/auth/hooks/useForgotPasswordHookFactory.js +70 -0
- package/dist/auth/hooks/useResetPasswordHookFactory.d.ts +7 -0
- package/dist/auth/hooks/useResetPasswordHookFactory.js +74 -0
- package/dist/auth/hooks/useSignInHookFactory.d.ts +7 -0
- package/dist/auth/hooks/useSignInHookFactory.js +74 -0
- package/dist/auth/hooks/useSignOutHookFactory.d.ts +6 -0
- package/dist/auth/hooks/useSignOutHookFactory.js +74 -0
- package/dist/auth/hooks/useSignUpHookFactory.d.ts +7 -0
- package/dist/auth/hooks/useSignUpHookFactory.js +74 -0
- package/dist/auth/index.d.ts +53 -0
- package/dist/auth/index.js +30 -0
- package/dist/auth/provider/AuthContextProviderFactory.d.ts +7 -0
- package/dist/auth/provider/AuthContextProviderFactory.js +55 -0
- package/dist/auth/service/AuthService.d.ts +15 -0
- package/dist/auth/service/AuthService.js +206 -0
- package/dist/auth/service/AuthService.types.d.ts +26 -0
- package/dist/auth/service/AuthService.types.js +1 -0
- package/dist/auth/service/index.d.ts +2 -0
- package/dist/auth/service/index.js +3 -0
- package/dist/auth/types/index.d.ts +14 -0
- package/dist/auth/types/index.js +1 -0
- package/dist/auth/utils/Helper.d.ts +1 -0
- package/dist/auth/utils/Helper.js +25 -0
- package/dist/auth/utils/Storage.d.ts +6 -0
- package/dist/auth/utils/Storage.js +57 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +4 -0
- package/package.json +3 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { AxiosInstance } from 'axios';
|
|
2
|
+
import { Context, PropsWithChildren } from 'react';
|
|
3
|
+
import { AccessToken, DeepNonRequired } from './types';
|
|
4
|
+
import { AuthenticationSettings } from './config/config.types';
|
|
5
|
+
export type AuthContextType<UserType> = Context<AuthContextState<UserType>>;
|
|
6
|
+
export type LoadingType = 'SIGN_IN' | 'SIGN_UP' | 'SIGN_OUT' | 'FORGOT_PASSWORD' | 'RESET_PASSWORD' | 'CURRENT_USER' | 'UPDATE_CURRENT_USER' | 'UPDATE_CURRENT_USER_PASSWORD';
|
|
7
|
+
export type TokenStorage = {
|
|
8
|
+
get: () => AccessToken | undefined;
|
|
9
|
+
set: (accessToken?: AccessToken) => void;
|
|
10
|
+
};
|
|
11
|
+
export type AuthContextState<UserType> = {
|
|
12
|
+
config: AuthenticationSettings;
|
|
13
|
+
axiosInstance: AxiosInstance;
|
|
14
|
+
tokenStorage?: TokenStorage;
|
|
15
|
+
accessToken?: AccessToken;
|
|
16
|
+
currentUser?: UserType;
|
|
17
|
+
loading: LoadingType[];
|
|
18
|
+
isLogged: boolean;
|
|
19
|
+
isReady: boolean;
|
|
20
|
+
setAccessToken: (value?: AccessToken) => void;
|
|
21
|
+
setCurrentUser: (value?: UserType) => void;
|
|
22
|
+
refetchCurrentUser: () => void;
|
|
23
|
+
addLoading: (value: LoadingType) => void;
|
|
24
|
+
removeLoading: (value: LoadingType) => void;
|
|
25
|
+
destroyAccessToken: () => void;
|
|
26
|
+
};
|
|
27
|
+
export type AuthProviderProps<UserType = unknown> = PropsWithChildren<{
|
|
28
|
+
config?: DeepNonRequired<AuthenticationSettings>;
|
|
29
|
+
axiosInstance: AxiosInstance;
|
|
30
|
+
initialAccessToken?: AccessToken;
|
|
31
|
+
initialCurrentUser?: UserType;
|
|
32
|
+
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { AuthContextType } from '../Auth.types';
|
|
3
|
+
import { AuthenticatedProps } from './AuthenticatedFactory.types';
|
|
4
|
+
declare const createAuthenticatedComponent: <UserType extends unknown>(AuthContext: AuthContextType<UserType>) => {
|
|
5
|
+
({ children, middleware }: AuthenticatedProps): React.JSX.Element | null;
|
|
6
|
+
displayName: string;
|
|
7
|
+
};
|
|
8
|
+
export default createAuthenticatedComponent;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// src/auth/components/AuthenticatedFactory.tsx
|
|
2
|
+
import React, { useContext } from 'react';
|
|
3
|
+
var createAuthenticatedComponent = function (AuthContext) {
|
|
4
|
+
var Authenticated = function (_a) {
|
|
5
|
+
var children = _a.children, middleware = _a.middleware;
|
|
6
|
+
var _b = useContext(AuthContext), isLogged = _b.isLogged, isReady = _b.isReady;
|
|
7
|
+
if (!isReady) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
if (middleware === 'only-logged' && !isLogged) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
if (middleware === 'only-guest' && isLogged) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
return React.createElement(React.Fragment, null, children);
|
|
17
|
+
};
|
|
18
|
+
Authenticated.displayName = 'Authenticated';
|
|
19
|
+
return Authenticated;
|
|
20
|
+
};
|
|
21
|
+
export default createAuthenticatedComponent;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Defaultní konfigurace
|
|
2
|
+
var config = {
|
|
3
|
+
tokenStorageType: 'localStorage',
|
|
4
|
+
tokenStorageKey: 'auth-token',
|
|
5
|
+
logoutWhenFailedLoadUser: true,
|
|
6
|
+
getDataFromRequest: function (data) { return data.data; },
|
|
7
|
+
getTokenFromRequest: function (data) { return data.token; },
|
|
8
|
+
signInRoute: '/api/auth/login',
|
|
9
|
+
defaultRequestType: 'json',
|
|
10
|
+
signOutRoute: '/api/auth/logout',
|
|
11
|
+
signUpRoute: '/api/auth/register',
|
|
12
|
+
currentUserRoute: '/api/auth/user',
|
|
13
|
+
currentUserUpdateRoute: '/api/auth/user',
|
|
14
|
+
currentUserChangePasswordRoute: '/api/auth/user/password',
|
|
15
|
+
currentUserChangeAvatarRoute: '/api/auth/user/avatar',
|
|
16
|
+
forgotPasswordRoute: '/api/auth/forgot-password',
|
|
17
|
+
resetPasswordRoute: '/api/auth/reset-password',
|
|
18
|
+
};
|
|
19
|
+
export default config;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { AccessToken, TokenStorageProvider } from '../types';
|
|
2
|
+
export type TokenStorageType = 'localStorage' | 'cookie' | 'memory';
|
|
3
|
+
export type RequestDataType = 'json' | 'form-data';
|
|
4
|
+
export type AuthenticationSettings = {
|
|
5
|
+
tokenStorageType: TokenStorageType | TokenStorageProvider;
|
|
6
|
+
tokenStorageKey: string;
|
|
7
|
+
logoutWhenFailedLoadUser: boolean;
|
|
8
|
+
getDataFromRequest: (data: any) => unknown;
|
|
9
|
+
getTokenFromRequest: (data: any) => AccessToken;
|
|
10
|
+
signInRoute: string;
|
|
11
|
+
defaultRequestType: RequestDataType;
|
|
12
|
+
signInRouteRequestType?: RequestDataType;
|
|
13
|
+
signOutRoute: string;
|
|
14
|
+
signOutRouteRequestType?: RequestDataType;
|
|
15
|
+
signUpRoute: string;
|
|
16
|
+
signUpRouteRequestType?: RequestDataType;
|
|
17
|
+
currentUserRoute: string;
|
|
18
|
+
currentUserUpdateRoute: string;
|
|
19
|
+
currentUserUpdateRouteRequestDataType?: RequestDataType;
|
|
20
|
+
currentUserChangePasswordRoute: string;
|
|
21
|
+
currentUserChangePasswordRouteRequestDataType?: RequestDataType;
|
|
22
|
+
currentUserChangeAvatarRoute: string;
|
|
23
|
+
forgotPasswordRoute: string;
|
|
24
|
+
forgotPasswordRouteRequestDataType?: RequestDataType;
|
|
25
|
+
resetPasswordRoute: string;
|
|
26
|
+
resetPasswordRouteRequestDataType?: RequestDataType;
|
|
27
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// src/auth/context/AuthContextFactory.tsx
|
|
2
|
+
import { createContext } from 'react';
|
|
3
|
+
var createAuthContext = function () {
|
|
4
|
+
var defaultState = {
|
|
5
|
+
config: {},
|
|
6
|
+
axiosInstance: {},
|
|
7
|
+
loading: [],
|
|
8
|
+
isLogged: false,
|
|
9
|
+
isReady: false,
|
|
10
|
+
setAccessToken: function () { },
|
|
11
|
+
setCurrentUser: function () { },
|
|
12
|
+
refetchCurrentUser: function () { },
|
|
13
|
+
addLoading: function () { },
|
|
14
|
+
removeLoading: function () { },
|
|
15
|
+
destroyAccessToken: function () { },
|
|
16
|
+
};
|
|
17
|
+
return createContext(defaultState);
|
|
18
|
+
};
|
|
19
|
+
export default createAuthContext;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AuthContextType } from '../Auth.types';
|
|
2
|
+
import { AccessToken } from '../types';
|
|
3
|
+
declare const createUseCurrentUserHook: <UserType>(AuthContext: AuthContextType<UserType>) => () => {
|
|
4
|
+
isLogged: boolean;
|
|
5
|
+
isReady: boolean;
|
|
6
|
+
user: UserType | undefined;
|
|
7
|
+
setUser: (value?: UserType | undefined) => void;
|
|
8
|
+
refetchCurrentUser: () => void;
|
|
9
|
+
setAccessToken: (value?: AccessToken) => void;
|
|
10
|
+
isLoading: boolean;
|
|
11
|
+
};
|
|
12
|
+
export default createUseCurrentUserHook;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// src/auth/hooks/UseCurrentUserHookFactory.tsx
|
|
2
|
+
import { useContext } from 'react';
|
|
3
|
+
var createUseCurrentUserHook = function (AuthContext) {
|
|
4
|
+
return function () {
|
|
5
|
+
var _a = useContext(AuthContext), currentUser = _a.currentUser, setCurrentUser = _a.setCurrentUser, refetchCurrentUser = _a.refetchCurrentUser, setAccessToken = _a.setAccessToken, loading = _a.loading, isLogged = _a.isLogged, isReady = _a.isReady;
|
|
6
|
+
var isLoading = loading.includes('CURRENT_USER');
|
|
7
|
+
return {
|
|
8
|
+
isLogged: isLogged,
|
|
9
|
+
isReady: isReady,
|
|
10
|
+
user: currentUser,
|
|
11
|
+
setUser: setCurrentUser,
|
|
12
|
+
refetchCurrentUser: refetchCurrentUser,
|
|
13
|
+
setAccessToken: setAccessToken,
|
|
14
|
+
isLoading: isLoading,
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export default createUseCurrentUserHook;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AuthContextType } from '../Auth.types';
|
|
2
|
+
import { DefaultUpdateCurrentUserRequestData } from '../service';
|
|
3
|
+
declare const createUseCurrentUserUpdateHook: <UserType>(AuthContext: AuthContextType<UserType>) => <UpdateCurrentUserRequestData = DefaultUpdateCurrentUserRequestData>() => {
|
|
4
|
+
updateCurrentUser: (data: UpdateCurrentUserRequestData) => Promise<(UserType & {
|
|
5
|
+
token: import("..").AccessToken;
|
|
6
|
+
}) | undefined>;
|
|
7
|
+
isLoading: boolean;
|
|
8
|
+
};
|
|
9
|
+
export default createUseCurrentUserUpdateHook;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
12
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
// src/auth/hooks/UseCurrentUserUpdateHookFactory.tsx
|
|
38
|
+
import { useContext, useCallback } from 'react';
|
|
39
|
+
import { updateCurrentUser } from '../service/AuthService';
|
|
40
|
+
var createUseCurrentUserUpdateHook = function (AuthContext) {
|
|
41
|
+
return function () {
|
|
42
|
+
var _a = useContext(AuthContext), axiosInstance = _a.axiosInstance, config = _a.config, addLoading = _a.addLoading, removeLoading = _a.removeLoading, setCurrentUser = _a.setCurrentUser;
|
|
43
|
+
var loading = useContext(AuthContext).loading;
|
|
44
|
+
var isLoading = loading.includes('UPDATE_CURRENT_USER');
|
|
45
|
+
var updateCallback = useCallback(function (data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
+
var response, e_1;
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
switch (_a.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
_a.trys.push([0, 2, 3, 4]);
|
|
51
|
+
addLoading('UPDATE_CURRENT_USER');
|
|
52
|
+
return [4 /*yield*/, updateCurrentUser(axiosInstance, config, data)];
|
|
53
|
+
case 1:
|
|
54
|
+
response = _a.sent();
|
|
55
|
+
setCurrentUser(response);
|
|
56
|
+
return [2 /*return*/, response];
|
|
57
|
+
case 2:
|
|
58
|
+
e_1 = _a.sent();
|
|
59
|
+
return [2 /*return*/, undefined];
|
|
60
|
+
case 3:
|
|
61
|
+
removeLoading('UPDATE_CURRENT_USER');
|
|
62
|
+
return [7 /*endfinally*/];
|
|
63
|
+
case 4: return [2 /*return*/];
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}); }, [axiosInstance, config, addLoading, removeLoading, setCurrentUser]);
|
|
67
|
+
return {
|
|
68
|
+
updateCurrentUser: updateCallback,
|
|
69
|
+
isLoading: isLoading,
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
export default createUseCurrentUserUpdateHook;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AuthContextType } from '../Auth.types';
|
|
2
|
+
import { DefaultUpdateCurrentUserPasswordRequestData } from '../service';
|
|
3
|
+
declare const createUseCurrentUserUpdatePasswordHook: <UserType>(AuthContext: AuthContextType<UserType>) => <UpdateCurrentUserPasswordRequestData = DefaultUpdateCurrentUserPasswordRequestData>() => {
|
|
4
|
+
updateCurrentUserPassword: (data: UpdateCurrentUserPasswordRequestData) => Promise<import("..").MakeUserWithAccessToken<UserType> | undefined>;
|
|
5
|
+
isLoading: boolean;
|
|
6
|
+
};
|
|
7
|
+
export default createUseCurrentUserUpdatePasswordHook;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
12
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
// src/auth/hooks/UseCurrentUserUpdatePasswordHookFactory.tsx
|
|
38
|
+
import { useContext, useCallback } from 'react';
|
|
39
|
+
import { updateCurrentUserPassword } from '../service/AuthService';
|
|
40
|
+
var createUseCurrentUserUpdatePasswordHook = function (AuthContext) {
|
|
41
|
+
return function () {
|
|
42
|
+
var _a = useContext(AuthContext), axiosInstance = _a.axiosInstance, config = _a.config, addLoading = _a.addLoading, removeLoading = _a.removeLoading, setAccessToken = _a.setAccessToken, setCurrentUser = _a.setCurrentUser;
|
|
43
|
+
var loading = useContext(AuthContext).loading;
|
|
44
|
+
var isLoading = loading.includes('UPDATE_CURRENT_USER_PASSWORD');
|
|
45
|
+
var updatePasswordCallback = useCallback(function (data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
+
var response, e_1;
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
switch (_a.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
_a.trys.push([0, 2, 3, 4]);
|
|
51
|
+
addLoading('UPDATE_CURRENT_USER_PASSWORD');
|
|
52
|
+
return [4 /*yield*/, updateCurrentUserPassword(axiosInstance, config, data)];
|
|
53
|
+
case 1:
|
|
54
|
+
response = _a.sent();
|
|
55
|
+
if (response.token) {
|
|
56
|
+
setAccessToken(response.token);
|
|
57
|
+
}
|
|
58
|
+
setCurrentUser(response);
|
|
59
|
+
return [2 /*return*/, response];
|
|
60
|
+
case 2:
|
|
61
|
+
e_1 = _a.sent();
|
|
62
|
+
return [2 /*return*/, undefined];
|
|
63
|
+
case 3:
|
|
64
|
+
removeLoading('UPDATE_CURRENT_USER_PASSWORD');
|
|
65
|
+
return [7 /*endfinally*/];
|
|
66
|
+
case 4: return [2 /*return*/];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}); }, [axiosInstance, config, addLoading, removeLoading, setAccessToken, setCurrentUser]);
|
|
70
|
+
return {
|
|
71
|
+
updateCurrentUserPassword: updatePasswordCallback,
|
|
72
|
+
isLoading: isLoading,
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
export default createUseCurrentUserUpdatePasswordHook;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AuthContextType } from '../Auth.types';
|
|
2
|
+
import { DefaultForgotPasswordRequestData } from '../service';
|
|
3
|
+
declare const createUseForgotPasswordHook: <UserType>(AuthContext: AuthContextType<UserType>) => <ForgotPasswordRequestData = DefaultForgotPasswordRequestData>() => {
|
|
4
|
+
forgotPassword: (data: ForgotPasswordRequestData) => Promise<any>;
|
|
5
|
+
isLoading: boolean;
|
|
6
|
+
};
|
|
7
|
+
export default createUseForgotPasswordHook;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
12
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
// src/auth/hooks/UseForgotPasswordHookFactory.tsx
|
|
38
|
+
import { useContext, useCallback } from 'react';
|
|
39
|
+
import { forgotPassword } from '../service/AuthService';
|
|
40
|
+
var createUseForgotPasswordHook = function (AuthContext) {
|
|
41
|
+
return function () {
|
|
42
|
+
var _a = useContext(AuthContext), axiosInstance = _a.axiosInstance, config = _a.config, addLoading = _a.addLoading, removeLoading = _a.removeLoading;
|
|
43
|
+
var loading = useContext(AuthContext).loading;
|
|
44
|
+
var isLoading = loading.includes('FORGOT_PASSWORD');
|
|
45
|
+
var forgotPasswordCallback = useCallback(function (data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
+
var e_1;
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
switch (_a.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
_a.trys.push([0, 2, 3, 4]);
|
|
51
|
+
addLoading('FORGOT_PASSWORD');
|
|
52
|
+
return [4 /*yield*/, forgotPassword(axiosInstance, config, data)];
|
|
53
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
54
|
+
case 2:
|
|
55
|
+
e_1 = _a.sent();
|
|
56
|
+
return [2 /*return*/, undefined];
|
|
57
|
+
case 3:
|
|
58
|
+
removeLoading('FORGOT_PASSWORD');
|
|
59
|
+
return [7 /*endfinally*/];
|
|
60
|
+
case 4: return [2 /*return*/];
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}); }, [axiosInstance, config, addLoading, removeLoading]);
|
|
64
|
+
return {
|
|
65
|
+
forgotPassword: forgotPasswordCallback,
|
|
66
|
+
isLoading: isLoading,
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
export default createUseForgotPasswordHook;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AuthContextType } from '../Auth.types';
|
|
2
|
+
import { DefaultResetPasswordRequestData } from '../service';
|
|
3
|
+
declare const createUseResetPasswordHook: <UserType>(AuthContext: AuthContextType<UserType>) => <PasswordResetRequestData = DefaultResetPasswordRequestData>() => {
|
|
4
|
+
resetPassword: (data: PasswordResetRequestData) => Promise<import("..").MakeUserWithAccessToken<UserType> | undefined>;
|
|
5
|
+
isLoading: boolean;
|
|
6
|
+
};
|
|
7
|
+
export default createUseResetPasswordHook;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
12
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
// src/auth/hooks/UseResetPasswordHookFactory.tsx
|
|
38
|
+
import { useContext, useCallback } from 'react';
|
|
39
|
+
import { resetPassword } from '../service/AuthService';
|
|
40
|
+
var createUseResetPasswordHook = function (AuthContext) {
|
|
41
|
+
return function () {
|
|
42
|
+
var _a = useContext(AuthContext), axiosInstance = _a.axiosInstance, config = _a.config, setAccessToken = _a.setAccessToken, setCurrentUser = _a.setCurrentUser, addLoading = _a.addLoading, removeLoading = _a.removeLoading;
|
|
43
|
+
var loading = useContext(AuthContext).loading;
|
|
44
|
+
var isLoading = loading.includes('RESET_PASSWORD');
|
|
45
|
+
var resetPasswordCallback = useCallback(function (data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
+
var response, e_1;
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
switch (_a.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
_a.trys.push([0, 2, 3, 4]);
|
|
51
|
+
addLoading('RESET_PASSWORD');
|
|
52
|
+
return [4 /*yield*/, resetPassword(axiosInstance, config, data)];
|
|
53
|
+
case 1:
|
|
54
|
+
response = _a.sent();
|
|
55
|
+
setAccessToken(response.token);
|
|
56
|
+
setCurrentUser(response);
|
|
57
|
+
return [2 /*return*/, response];
|
|
58
|
+
case 2:
|
|
59
|
+
e_1 = _a.sent();
|
|
60
|
+
return [2 /*return*/, undefined];
|
|
61
|
+
case 3:
|
|
62
|
+
removeLoading('RESET_PASSWORD');
|
|
63
|
+
return [7 /*endfinally*/];
|
|
64
|
+
case 4: return [2 /*return*/];
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}); }, [axiosInstance, config, setAccessToken, setCurrentUser, addLoading, removeLoading]);
|
|
68
|
+
return {
|
|
69
|
+
resetPassword: resetPasswordCallback,
|
|
70
|
+
isLoading: isLoading,
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
export default createUseResetPasswordHook;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AuthContextType } from '../Auth.types';
|
|
2
|
+
import { DefaultSignInRequestData } from '../service';
|
|
3
|
+
declare const createUseSignInHook: <UserType>(AuthContext: AuthContextType<UserType>) => <SignInRequestData = DefaultSignInRequestData>() => {
|
|
4
|
+
signIn: (data: SignInRequestData, customApiUrl?: string) => Promise<import("..").MakeUserWithAccessToken<UserType> | undefined>;
|
|
5
|
+
isLoading: boolean;
|
|
6
|
+
};
|
|
7
|
+
export default createUseSignInHook;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
12
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
// src/auth/hooks/UseSignInHookFactory.tsx
|
|
38
|
+
import { useContext, useCallback } from 'react';
|
|
39
|
+
import { signIn } from '../service/AuthService';
|
|
40
|
+
var createUseSignInHook = function (AuthContext) {
|
|
41
|
+
return function () {
|
|
42
|
+
var _a = useContext(AuthContext), axiosInstance = _a.axiosInstance, config = _a.config, setAccessToken = _a.setAccessToken, setCurrentUser = _a.setCurrentUser, addLoading = _a.addLoading, removeLoading = _a.removeLoading;
|
|
43
|
+
var loading = useContext(AuthContext).loading;
|
|
44
|
+
var isLoading = loading.includes('SIGN_IN');
|
|
45
|
+
var signInCallback = useCallback(function (data, customApiUrl) { return __awaiter(void 0, void 0, void 0, function () {
|
|
46
|
+
var response, e_1;
|
|
47
|
+
return __generator(this, function (_a) {
|
|
48
|
+
switch (_a.label) {
|
|
49
|
+
case 0:
|
|
50
|
+
_a.trys.push([0, 2, 3, 4]);
|
|
51
|
+
addLoading('SIGN_IN');
|
|
52
|
+
return [4 /*yield*/, signIn(axiosInstance, config, data)];
|
|
53
|
+
case 1:
|
|
54
|
+
response = _a.sent();
|
|
55
|
+
setAccessToken(response.token);
|
|
56
|
+
setCurrentUser(response);
|
|
57
|
+
return [2 /*return*/, response];
|
|
58
|
+
case 2:
|
|
59
|
+
e_1 = _a.sent();
|
|
60
|
+
return [2 /*return*/, undefined];
|
|
61
|
+
case 3:
|
|
62
|
+
removeLoading('SIGN_IN');
|
|
63
|
+
return [7 /*endfinally*/];
|
|
64
|
+
case 4: return [2 /*return*/];
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}); }, [axiosInstance, config, setAccessToken, setCurrentUser, addLoading, removeLoading]);
|
|
68
|
+
return {
|
|
69
|
+
signIn: signInCallback,
|
|
70
|
+
isLoading: isLoading,
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
export default createUseSignInHook;
|