@ordentco/addons-auth-provider 0.9.0 → 0.9.2

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.
Files changed (52) hide show
  1. package/dist/services/auth.d.ts +22 -0
  2. package/dist/services/auth.js +332 -0
  3. package/dist/services/auth.js.map +1 -0
  4. package/dist/services/custom.axios.d.ts +2 -0
  5. package/dist/services/custom.axios.js +181 -0
  6. package/dist/services/custom.axios.js.map +1 -0
  7. package/dist/src/auth.d.ts +49 -0
  8. package/dist/src/auth.js +837 -0
  9. package/dist/src/auth.js.map +1 -0
  10. package/dist/src/index.d.ts +1 -0
  11. package/dist/src/index.js +2 -0
  12. package/dist/src/index.js.map +1 -0
  13. package/dist/types/auth.d.ts +39 -0
  14. package/dist/types/auth.js +16 -0
  15. package/dist/types/auth.js.map +1 -0
  16. package/dist/types/product.d.ts +184 -0
  17. package/dist/types/product.js +193 -0
  18. package/dist/types/product.js.map +1 -0
  19. package/dist/types/task.d.ts +32 -0
  20. package/dist/types/task.js +20 -0
  21. package/dist/types/task.js.map +1 -0
  22. package/dist/types/workflow.d.ts +106 -0
  23. package/dist/types/workflow.js +2 -0
  24. package/dist/types/workflow.js.map +1 -0
  25. package/dist/utils/auth.d.ts +8 -0
  26. package/dist/utils/auth.js +85 -0
  27. package/dist/utils/auth.js.map +1 -0
  28. package/package.json +21 -3
  29. package/{packages/auth-provider/services → services}/custom.axios.ts +1 -0
  30. package/{packages/auth-provider/src/index.tsx → src/auth.tsx} +6 -10
  31. package/src/index.tsx +1 -0
  32. package/{packages/auth-provider/utils → utils}/auth.ts +2 -2
  33. package/apps/nextjs-site/.eslintrc.json +0 -3
  34. package/apps/nextjs-site/README.md +0 -34
  35. package/apps/nextjs-site/app/favicon.ico +0 -0
  36. package/apps/nextjs-site/app/globals.css +0 -27
  37. package/apps/nextjs-site/app/layout.tsx +0 -22
  38. package/apps/nextjs-site/app/page.tsx +0 -113
  39. package/apps/nextjs-site/next.config.js +0 -4
  40. package/apps/nextjs-site/package.json +0 -32
  41. package/apps/nextjs-site/postcss.config.js +0 -6
  42. package/apps/nextjs-site/public/next.svg +0 -1
  43. package/apps/nextjs-site/public/vercel.svg +0 -1
  44. package/apps/nextjs-site/tailwind.config.js +0 -18
  45. package/apps/nextjs-site/tsconfig.json +0 -28
  46. package/packages/auth-provider/package.json +0 -29
  47. /package/{packages/auth-provider/services → services}/auth.ts +0 -0
  48. /package/{packages/auth-provider/tsconfig.json → tsconfig.json} +0 -0
  49. /package/{packages/auth-provider/types → types}/auth.ts +0 -0
  50. /package/{packages/auth-provider/types → types}/product.ts +0 -0
  51. /package/{packages/auth-provider/types → types}/task.ts +0 -0
  52. /package/{packages/auth-provider/types → types}/workflow.ts +0 -0
@@ -0,0 +1,22 @@
1
+ import { ChangePasswordType, ForgotPasswordType, VerifyUserQuestion } from "../types/auth";
2
+ declare const AuthService: () => {
3
+ validateToken: () => Promise<import("axios").AxiosResponse<any, any>>;
4
+ validateMenu: (token: string) => Promise<import("axios").AxiosResponse<any, any>>;
5
+ passwordLogin: (username: string, password: string, tokenFCM: string) => Promise<import("axios").AxiosResponse<any, any>>;
6
+ ssoLogin: (userId: string, sessionId: string, dtTime: string) => Promise<import("axios").AxiosResponse<any, any>>;
7
+ logout: () => Promise<import("axios").AxiosResponse<any, any>>;
8
+ logoutSSO: (clientName: string) => Promise<import("axios").AxiosResponse<any, any> | undefined>;
9
+ checkToChangePasswordLogin: (username: string, password: string, branchCode: string) => Promise<import("axios").AxiosResponse<any, any>>;
10
+ requestChangePassword: ({ ...payload }: ChangePasswordType) => Promise<import("axios").AxiosResponse<any, any>>;
11
+ testingFunction: () => void;
12
+ ssoLoginQlola: (request: string) => Promise<{
13
+ data: any;
14
+ }>;
15
+ login: (branchCode: string, username: string, password: string) => Promise<import("axios").AxiosResponse<any, any>>;
16
+ forgotPassword: ({ ...payload }: ForgotPasswordType) => Promise<import("axios").AxiosResponse<any, any>>;
17
+ verifyUserQuestion: ({ ...payload }: VerifyUserQuestion) => Promise<import("axios").AxiosResponse<any, any>>;
18
+ verifyChangePasswordToken: ({ ...payload }: {
19
+ [x: string]: any;
20
+ }) => Promise<import("axios").AxiosResponse<any, any>>;
21
+ };
22
+ export default AuthService;
@@ -0,0 +1,332 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
+ 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;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ var __rest = (this && this.__rest) || function (s, e) {
49
+ var t = {};
50
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
+ t[p] = s[p];
52
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
+ t[p[i]] = s[p[i]];
56
+ }
57
+ return t;
58
+ };
59
+ import customAxios from "./custom.axios";
60
+ var AuthService = function () {
61
+ var crypto = require("crypto-js");
62
+ var headersWithSignature = function (signature) {
63
+ return {
64
+ "x-signature": signature
65
+ };
66
+ };
67
+ var CreateSignature = function (params) {
68
+ var secret = process.env["NEXT_PUBLIC_SECRET_KEY_LOGIN_V2"] || "addons";
69
+ var data = JSON.stringify(params);
70
+ var hash = crypto.HmacSHA256(data, secret);
71
+ return hash.toString();
72
+ };
73
+ var validateToken = function () { return __awaiter(void 0, void 0, void 0, function () {
74
+ return __generator(this, function (_a) {
75
+ switch (_a.label) {
76
+ case 0: return [4 /*yield*/, customAxios.get("/auth/me")];
77
+ case 1: return [2 /*return*/, _a.sent()];
78
+ }
79
+ });
80
+ }); };
81
+ var validateMenu = function (token) {
82
+ return customAxios
83
+ .post("/menu/me", { token: token })
84
+ .then(function (response) {
85
+ if (response.status !== 200) {
86
+ throw new Error("Error");
87
+ }
88
+ return response;
89
+ })["catch"](function (error) {
90
+ return Promise.reject(error);
91
+ });
92
+ };
93
+ var checkToChangePasswordLogin = function (username, password, branchCode) { return __awaiter(void 0, void 0, void 0, function () {
94
+ var response, error_1;
95
+ return __generator(this, function (_a) {
96
+ switch (_a.label) {
97
+ case 0:
98
+ _a.trys.push([0, 2, , 3]);
99
+ return [4 /*yield*/, customAxios.post("/auth/v2/login", {
100
+ username: username,
101
+ password: password,
102
+ branchCode: branchCode
103
+ })];
104
+ case 1:
105
+ response = _a.sent();
106
+ if (response.status !== 200) {
107
+ throw new Error("Username or password not valid!");
108
+ }
109
+ return [2 /*return*/, response];
110
+ case 2:
111
+ error_1 = _a.sent();
112
+ return [2 /*return*/, Promise.reject(error_1)];
113
+ case 3: return [2 /*return*/];
114
+ }
115
+ });
116
+ }); };
117
+ var testingFunction = function () {
118
+ console.log("Hallo ajah");
119
+ };
120
+ var requestChangePassword = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
121
+ var prepareData, response, error_2;
122
+ var payload = __rest(_a, []);
123
+ return __generator(this, function (_b) {
124
+ switch (_b.label) {
125
+ case 0:
126
+ _b.trys.push([0, 2, , 3]);
127
+ prepareData = {
128
+ branchCode: payload.branchCode,
129
+ username: payload.username,
130
+ tempPassword: payload.tempPassword,
131
+ password: payload.password,
132
+ confirmPassword: payload.confirmPassword,
133
+ answerQuestion1: payload.answerQuestion1,
134
+ answerQuestion2: payload.answerQuestion2,
135
+ token: payload.tokenFCM
136
+ };
137
+ return [4 /*yield*/, customAxios.post("/auth/change-password", prepareData)];
138
+ case 1:
139
+ response = _b.sent();
140
+ if (response.status !== 200) {
141
+ throw new Error("Username or password not valid!");
142
+ }
143
+ return [2 /*return*/, response];
144
+ case 2:
145
+ error_2 = _b.sent();
146
+ return [2 /*return*/, Promise.reject(error_2)];
147
+ case 3: return [2 /*return*/];
148
+ }
149
+ });
150
+ }); };
151
+ var forgotPassword = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
152
+ var prepareData, response, error_3;
153
+ var payload = __rest(_a, []);
154
+ return __generator(this, function (_b) {
155
+ switch (_b.label) {
156
+ case 0:
157
+ _b.trys.push([0, 2, , 3]);
158
+ prepareData = __assign({}, payload);
159
+ return [4 /*yield*/, customAxios.post("/auth/forgot-password", prepareData)];
160
+ case 1:
161
+ response = _b.sent();
162
+ if (response.status !== 200) {
163
+ throw new Error("Username or password not valid!");
164
+ }
165
+ return [2 /*return*/, response];
166
+ case 2:
167
+ error_3 = _b.sent();
168
+ return [2 /*return*/, Promise.reject(error_3)];
169
+ case 3: return [2 /*return*/];
170
+ }
171
+ });
172
+ }); };
173
+ var verifyUserQuestion = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
174
+ var prepareData, response, error_4;
175
+ var payload = __rest(_a, []);
176
+ return __generator(this, function (_b) {
177
+ switch (_b.label) {
178
+ case 0:
179
+ _b.trys.push([0, 2, , 3]);
180
+ prepareData = __assign({}, payload);
181
+ return [4 /*yield*/, customAxios.post("/auth/verify-question", prepareData)];
182
+ case 1:
183
+ response = _b.sent();
184
+ return [2 /*return*/, response];
185
+ case 2:
186
+ error_4 = _b.sent();
187
+ return [2 /*return*/, Promise.reject(error_4)];
188
+ case 3: return [2 /*return*/];
189
+ }
190
+ });
191
+ }); };
192
+ var verifyChangePasswordToken = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
193
+ var prepareData, response, error_5;
194
+ var payload = __rest(_a, []);
195
+ return __generator(this, function (_b) {
196
+ switch (_b.label) {
197
+ case 0:
198
+ _b.trys.push([0, 2, , 3]);
199
+ prepareData = __assign({}, payload);
200
+ return [4 /*yield*/, customAxios.post("/auth/verify-change-password-token", prepareData)];
201
+ case 1:
202
+ response = _b.sent();
203
+ return [2 /*return*/, response];
204
+ case 2:
205
+ error_5 = _b.sent();
206
+ return [2 /*return*/, Promise.reject(error_5)];
207
+ case 3: return [2 /*return*/];
208
+ }
209
+ });
210
+ }); };
211
+ var passwordLogin = function (username, password, tokenFCM) { return __awaiter(void 0, void 0, void 0, function () {
212
+ var response, err_1;
213
+ return __generator(this, function (_a) {
214
+ switch (_a.label) {
215
+ case 0:
216
+ _a.trys.push([0, 2, , 3]);
217
+ return [4 /*yield*/, customAxios.post("/auth/login/password", {
218
+ username: username,
219
+ password: password,
220
+ tokenFCM: tokenFCM
221
+ })];
222
+ case 1:
223
+ response = _a.sent();
224
+ if (response.status !== 200) {
225
+ throw new Error("Username or password not valid!");
226
+ }
227
+ return [2 /*return*/, response];
228
+ case 2:
229
+ err_1 = _a.sent();
230
+ return [2 /*return*/, Promise.reject(err_1)];
231
+ case 3: return [2 /*return*/];
232
+ }
233
+ });
234
+ }); };
235
+ var ssoLogin = function (userId, sessionId, dtTime) { return __awaiter(void 0, void 0, void 0, function () {
236
+ return __generator(this, function (_a) {
237
+ switch (_a.label) {
238
+ case 0:
239
+ if (!userId || !sessionId || !dtTime) {
240
+ throw new Error("User ID, Session ID and Datetime are required");
241
+ }
242
+ return [4 /*yield*/, customAxios.get("/auth/login", {
243
+ params: {
244
+ USERID: encodeURIComponent(userId),
245
+ SESSIONID: encodeURIComponent(sessionId),
246
+ DTTIME: encodeURIComponent(dtTime)
247
+ }
248
+ })];
249
+ case 1: return [2 /*return*/, _a.sent()];
250
+ }
251
+ });
252
+ }); };
253
+ var ssoLoginQlola = function (request) { return __awaiter(void 0, void 0, void 0, function () {
254
+ return __generator(this, function (_a) {
255
+ return [2 /*return*/, customAxios
256
+ .post("/auth/login/init-token", { request: request })
257
+ .then(function (response) {
258
+ var _a;
259
+ if (response.status !== 200)
260
+ throw new Error(((_a = response.data) === null || _a === void 0 ? void 0 : _a.message) || "Server Error");
261
+ return {
262
+ data: response.data
263
+ };
264
+ })["catch"](function (error) {
265
+ return Promise.reject(error);
266
+ })];
267
+ });
268
+ }); };
269
+ var logoutSSO = function (clientName) { return __awaiter(void 0, void 0, void 0, function () {
270
+ return __generator(this, function (_a) {
271
+ switch (_a.label) {
272
+ case 0: return [4 /*yield*/, customAxios
273
+ .get("sso/signout/".concat(clientName))
274
+ .then(function (response) {
275
+ if (response.status !== 200) {
276
+ return;
277
+ }
278
+ return response;
279
+ })["catch"](function (err) {
280
+ return Promise.reject(err);
281
+ })];
282
+ case 1: return [2 /*return*/, _a.sent()];
283
+ }
284
+ });
285
+ }); };
286
+ var login = function (branchCode, username, password) { return __awaiter(void 0, void 0, void 0, function () {
287
+ var data, hash;
288
+ return __generator(this, function (_a) {
289
+ switch (_a.label) {
290
+ case 0:
291
+ data = { username: username, password: password, branchCode: branchCode };
292
+ hash = CreateSignature(data);
293
+ return [4 /*yield*/, customAxios
294
+ .post("auth/v2/login", data, {
295
+ headers: headersWithSignature(hash)
296
+ })
297
+ .then(function (response) {
298
+ return response;
299
+ })["catch"](function (err) {
300
+ return Promise.reject(err);
301
+ })];
302
+ case 1: return [2 /*return*/, _a.sent()];
303
+ }
304
+ });
305
+ }); };
306
+ var logout = function () { return __awaiter(void 0, void 0, void 0, function () {
307
+ return __generator(this, function (_a) {
308
+ switch (_a.label) {
309
+ case 0: return [4 /*yield*/, customAxios.get("/auth/logout")];
310
+ case 1: return [2 /*return*/, _a.sent()];
311
+ }
312
+ });
313
+ }); };
314
+ return {
315
+ validateToken: validateToken,
316
+ validateMenu: validateMenu,
317
+ passwordLogin: passwordLogin,
318
+ ssoLogin: ssoLogin,
319
+ logout: logout,
320
+ logoutSSO: logoutSSO,
321
+ checkToChangePasswordLogin: checkToChangePasswordLogin,
322
+ requestChangePassword: requestChangePassword,
323
+ testingFunction: testingFunction,
324
+ ssoLoginQlola: ssoLoginQlola,
325
+ login: login,
326
+ forgotPassword: forgotPassword,
327
+ verifyUserQuestion: verifyUserQuestion,
328
+ verifyChangePasswordToken: verifyChangePasswordToken
329
+ };
330
+ };
331
+ export default AuthService;
332
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../services/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const customAxios: import("axios").AxiosInstance;
2
+ export default customAxios;
@@ -0,0 +1,181 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ 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;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ import axios from "axios";
50
+ //@ts-ignore
51
+ import crypto from "crypto-js";
52
+ export var customAxios = axios.create({
53
+ baseURL: process.env["NEXT_PUBLIC_API_URL"],
54
+ headers: {
55
+ "Content-Type": "application/json"
56
+ }
57
+ });
58
+ customAxios.interceptors.request.use(function (config) { return __awaiter(void 0, void 0, void 0, function () {
59
+ var accessToken, header;
60
+ return __generator(this, function (_a) {
61
+ accessToken = localStorage.getItem("access-token");
62
+ if (accessToken) {
63
+ header = __assign(__assign({}, config.headers), { Authorization: "Bearer ".concat(accessToken) });
64
+ config.headers = header;
65
+ }
66
+ return [2 /*return*/, config];
67
+ });
68
+ }); }, function (error) { return Promise.reject(error); });
69
+ var isRefreshing = false;
70
+ var failedQueue = [];
71
+ var processQueue = function (error, token) {
72
+ if (token === void 0) { token = null; }
73
+ failedQueue.forEach(function (prom) {
74
+ if (error) {
75
+ prom.reject(error);
76
+ }
77
+ else {
78
+ prom.resolve(token);
79
+ }
80
+ });
81
+ failedQueue = [];
82
+ };
83
+ customAxios.interceptors.response.use(function (response) {
84
+ return response;
85
+ }, function (error) {
86
+ var _a, _b, _c;
87
+ var originalRequest = error.config;
88
+ var pathname = window.location.pathname;
89
+ var isLanding = pathname === '/landing-page';
90
+ // handling error login from landing-page
91
+ if (error && isLanding) {
92
+ return Promise.reject(__assign({}, error));
93
+ }
94
+ if (((_b = (_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.message) === "Another Login Detected" || (error === null || error === void 0 ? void 0 : error.message) === "Another Login Detected") {
95
+ localStorage.removeItem("access-token");
96
+ localStorage.removeItem("refresh-token");
97
+ window.location.href = "/login?logout=true";
98
+ return;
99
+ }
100
+ if (((_c = error === null || error === void 0 ? void 0 : error.response) === null || _c === void 0 ? void 0 : _c.status) === 401 && !originalRequest._retry) {
101
+ if (isRefreshing) {
102
+ return new Promise(function (resolve, reject) {
103
+ failedQueue.push({ resolve: resolve, reject: reject });
104
+ })
105
+ .then(function (token) {
106
+ originalRequest.headers["Authorization"] = "Bearer " + token;
107
+ return customAxios(originalRequest);
108
+ })["catch"](function (err) {
109
+ return Promise.reject(err);
110
+ });
111
+ }
112
+ originalRequest._retry = true;
113
+ isRefreshing = true;
114
+ var refreshToken_1 = localStorage.getItem("refresh-token");
115
+ if (!refreshToken_1) {
116
+ window.location.href = "/login?logout=true";
117
+ }
118
+ return new Promise(function (resolve, reject) {
119
+ customAxios
120
+ .post("/auth/refresh", { refreshToken: refreshToken_1 })
121
+ .then(function (_a) {
122
+ var _b, _c, _d, _e;
123
+ var data = _a.data;
124
+ if ((data.data.accessToken === "" || data.data.refreshToken === "")) {
125
+ console.log("Refresh token nya gak dapet, malah string kosong");
126
+ localStorage.removeItem("access-token");
127
+ localStorage.removeItem("refresh-token");
128
+ window.location.href = "/login?logout=true";
129
+ return;
130
+ }
131
+ var token = (_b = data === null || data === void 0 ? void 0 : data.data) === null || _b === void 0 ? void 0 : _b.accessToken;
132
+ var refreshToken = (_c = data === null || data === void 0 ? void 0 : data.data) === null || _c === void 0 ? void 0 : _c.accessToken;
133
+ var companyID = (_d = data === null || data === void 0 ? void 0 : data.data) === null || _d === void 0 ? void 0 : _d.companyID;
134
+ var userID = (_e = data === null || data === void 0 ? void 0 : data.data) === null || _e === void 0 ? void 0 : _e.userID;
135
+ localStorage.setItem("access-token", token);
136
+ localStorage.setItem("refresh-token", refreshToken);
137
+ customAxios.defaults.headers.common["Authorization"] = "Bearer " + token;
138
+ originalRequest.headers["Authorization"] = "Bearer " + token;
139
+ if (originalRequest.data !== undefined && originalRequest.data !== null) {
140
+ if (originalRequest.headers["Content-Type"].toString().includes("json")) {
141
+ var rep = JSON.parse(originalRequest.data);
142
+ var signature = CreateSignature(rep, companyID, userID, process.env["NEXT_PUBLIC_SIGNATURE"], token);
143
+ originalRequest.headers["Grpc-Metadata-Signature"] = signature;
144
+ }
145
+ else if (originalRequest.headers["Content-Type"].toString().includes("url")) {
146
+ var decode = decodeURIComponent(originalRequest.data);
147
+ var split = decode.split("=");
148
+ var rep = JSON.parse(split[1]);
149
+ var signature = CreateSignature(rep, companyID, userID, process.env["NEXT_PUBLIC_SIGNATURE"], token);
150
+ originalRequest.headers["Grpc-Metadata-Signature"] = signature;
151
+ }
152
+ }
153
+ processQueue(null, token);
154
+ resolve(customAxios(originalRequest));
155
+ })["catch"](function (err) {
156
+ var _a, _b, _c, _d;
157
+ if (((_b = (_a = err === null || err === void 0 ? void 0 : err.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.code) === 404 && ((_d = (_c = err === null || err === void 0 ? void 0 : err.response) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.message) === "Not Found") {
158
+ localStorage.removeItem("access-token");
159
+ localStorage.removeItem("refresh-token");
160
+ window.location.href = "/login?logout=true";
161
+ return;
162
+ }
163
+ processQueue(err, null);
164
+ reject(err);
165
+ })["finally"](function () {
166
+ isRefreshing = false;
167
+ });
168
+ });
169
+ }
170
+ if (!error.response) {
171
+ return Promise.reject(__assign(__assign({}, error), { response: { data: { error: true, code: 504, message: "Connection Timeout" } } }));
172
+ }
173
+ return Promise.reject(error);
174
+ });
175
+ var CreateSignature = function (params, companyID, userID, key, token) {
176
+ var data = "bodydata:" + JSON.stringify(params) + "&bearer:".concat(token, "&companyid:") + companyID + "&userid:" + userID;
177
+ var hash = crypto.HmacSHA256(data, key);
178
+ return hash.toString(crypto.enc.Hex);
179
+ };
180
+ export default customAxios;
181
+ //# sourceMappingURL=custom.axios.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.axios.js","sourceRoot":"","sources":["../../services/custom.axios.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /// <reference types="react" />
2
+ import { ChangePasswordType, ForgotPasswordType, ProductAuthoritiesType, VerifyUserQuestion } from "../types/auth";
3
+ import { TransactionWorkflow } from "../types/workflow";
4
+ export declare enum UserType {
5
+ BankAdmin = "bank-admin",
6
+ CustomerAdmin = "customer-admin",
7
+ CustomerUser = "customer-user"
8
+ }
9
+ interface AuthContextProps {
10
+ token: string | null;
11
+ authorities: Map<string, string[]>;
12
+ productAuthorities: ProductAuthoritiesType;
13
+ isAuthoritiesReady: boolean;
14
+ username: string;
15
+ userType: string | null;
16
+ menus: string[];
17
+ alertMenuError: boolean;
18
+ loggedIn: boolean;
19
+ companyID: string | null;
20
+ companyName: string;
21
+ userID: string | null;
22
+ roleID: string | null;
23
+ roleIDs: string[] | null;
24
+ holdingID: string | null;
25
+ isLoading: boolean | null;
26
+ guard: () => void;
27
+ passwordLogin: (username: string, password: string, tokenFCM: string) => Promise<void>;
28
+ ssoLogin: (userId: string, sessionId: string, dtTime: string, onError?: (errorMessage: string) => void) => Promise<void>;
29
+ logout: () => Promise<void>;
30
+ canIApprove: (workflow: TransactionWorkflow.Root) => boolean;
31
+ menuData: any[];
32
+ ssoQlolaLogin: (request: string) => Promise<void>;
33
+ verifyUserQuestion: (payload: VerifyUserQuestion) => Promise<void>;
34
+ verifyChangePasswordToken: (token: string) => Promise<void>;
35
+ forgotPassword: (payload: ForgotPasswordType) => Promise<void>;
36
+ login: (username: string, password: string, branchCode: string) => Promise<void>;
37
+ checkToChangePassword: (username: string, password: string, tokenFCM: string, branchCode: string) => Promise<void>;
38
+ passwordLoginWithCheck: (username: string, password: string, tokenFCM: string, branchCode: string) => Promise<void>;
39
+ requestChangePassword: (payload: ChangePasswordType) => Promise<void>;
40
+ }
41
+ export interface AuthProviderProps {
42
+ children?: React.ReactNode;
43
+ apiUrl: string;
44
+ cookieName?: string;
45
+ }
46
+ declare const AuthProvider: React.FC<AuthProviderProps>;
47
+ declare const useAuth: () => AuthContextProps;
48
+ export { AuthProvider, useAuth };
49
+ export default useAuth;