authera 2.0.2 → 2.0.5

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.
@@ -1,2 +1,9 @@
1
- import React from "react";
2
- export const AuthContext = React.createContext(undefined);
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AuthContext = void 0;
7
+ var react_1 = __importDefault(require("react"));
8
+ exports.AuthContext = react_1.default.createContext(undefined);
9
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/helper/context.ts"],"names":[],"mappings":";;;;;;AAAA,gDAA0B;AAiBb,QAAA,WAAW,GAAG,eAAK,CAAC,aAAa,CAE5C,SAAS,CAAC,CAAC"}
@@ -1,17 +1,28 @@
1
+ "use strict";
1
2
  "use client";
2
- import Cookie from "js-cookie";
3
- export function name2storage(name) {
4
- const cookie = {
5
- get: (key) => JSON.parse(Cookie.get(key) || "{}"),
6
- set: (key, value) => Cookie.set(key, JSON.stringify(value)),
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.name2storage = name2storage;
8
+ var js_cookie_1 = __importDefault(require("js-cookie"));
9
+ function name2storage(name) {
10
+ var cookie = {
11
+ get: function (key) { return JSON.parse(js_cookie_1.default.get(key) || "{}"); },
12
+ set: function (key, value) { return js_cookie_1.default.set(key, JSON.stringify(value)); },
7
13
  };
8
- const local = {
9
- get: (key) => JSON.parse(localStorage.getItem(key) || "{}"),
10
- set: (key, value) => localStorage.setItem(key, JSON.stringify(value)),
14
+ var local = {
15
+ get: function (key) {
16
+ return JSON.parse(globalThis.localStorage.getItem(key) || "{}");
17
+ },
18
+ set: function (key, value) {
19
+ return globalThis.localStorage.setItem(key, JSON.stringify(value));
20
+ },
11
21
  };
12
- const mapStorage = {
13
- cookie,
14
- local,
22
+ var mapStorage = {
23
+ cookie: cookie,
24
+ local: local,
15
25
  };
16
26
  return mapStorage[name];
17
27
  }
28
+ //# sourceMappingURL=storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/helper/storage.ts"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;AASb,oCAmBC;AA1BD,wDAA+B;AAO/B,SAAgB,YAAY,CAAC,IAAmB;IAC9C,IAAM,MAAM,GAAgB;QAC1B,GAAG,EAAE,UAAC,GAAG,IAAK,OAAA,IAAI,CAAC,KAAK,CAAC,mBAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,EAAnC,CAAmC;QACjD,GAAG,EAAE,UAAC,GAAG,EAAE,KAAK,IAAK,OAAA,mBAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAtC,CAAsC;KAC5D,CAAC;IAEF,IAAM,KAAK,GAAgB;QACzB,GAAG,EAAE,UAAC,GAAG;YACP,OAAA,IAAI,CAAC,KAAK,CAAE,UAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;QAAjE,CAAiE;QACnE,GAAG,EAAE,UAAC,GAAG,EAAE,KAAK;YACd,OAAC,UAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAApE,CAAoE;KACvE,CAAC;IAEF,IAAM,UAAU,GAA4C;QAC1D,MAAM,QAAA;QACN,KAAK,OAAA;KACN,CAAC;IAEF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -1 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/helper/types.ts"],"names":[],"mappings":""}
@@ -1,74 +1,91 @@
1
+ "use strict";
1
2
  "use client";
2
- import { AuthContext, } from "../helper/context";
3
- import React from "react";
4
- export function useAuth() {
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __rest = (this && this.__rest) || function (s, e) {
15
+ var t = {};
16
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
17
+ t[p] = s[p];
18
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
19
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
20
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
21
+ t[p[i]] = s[p[i]];
22
+ }
23
+ return t;
24
+ };
25
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
26
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
27
+ if (ar || !(i in from)) {
28
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
29
+ ar[i] = from[i];
30
+ }
31
+ }
32
+ return to.concat(ar || Array.prototype.slice.call(from));
33
+ };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ exports.useAuth = useAuth;
39
+ var context_1 = require("../helper/context");
40
+ var react_1 = __importDefault(require("react"));
41
+ function useAuth() {
5
42
  // -------------------------------------------------- context
6
- const ctx = React.useContext(AuthContext);
43
+ var ctx = react_1.default.useContext(context_1.AuthContext);
7
44
  if (!ctx)
8
45
  throw new Error("useAuth must be used within an AuthContext");
9
46
  // -------------------------------------------------- data
10
- const { permits: permitsData, ...user } = ctx.userData;
11
- const authera_props = ctx.authera_props;
12
- const prm = (permitsData || []);
47
+ var _a = ctx.userData, permitsData = _a.permits, user = __rest(_a, ["permits"]);
48
+ var authera_props = ctx.authera_props;
49
+ var prm = (permitsData || []);
13
50
  // -------------------------------------------------- funtions
14
- const isPermitted = (perm) => {
51
+ var isPermitted = function (perm) {
15
52
  return prm.includes(perm);
16
53
  };
17
- const isPermittedAll = (perms) => {
18
- return perms.every((p) => prm.includes(p));
54
+ var isPermittedAll = function (perms) {
55
+ return perms.every(function (p) { return prm.includes(p); });
19
56
  };
20
- const on = (perm, callback, fallback) => {
57
+ var on = function (perm, callback, fallback) {
21
58
  if (isPermitted(perm))
22
59
  callback();
23
60
  else if (fallback)
24
61
  fallback();
25
62
  };
26
- const setUserData = (userData) => {
27
- console.log("userData", userData);
63
+ var setUserData = function (userData) {
28
64
  ctx.set("userData", userData);
29
65
  };
30
- const setPermits = (permits) => {
31
- ctx.set("userData", { ...ctx.userData, permits });
66
+ var setPermits = function (permits) {
67
+ ctx.set("userData", __assign(__assign({}, ctx.userData), { permits: permits }));
32
68
  };
33
- const addPermits = (permits) => {
69
+ var addPermits = function (permits) {
34
70
  if (typeof permits !== "object")
35
71
  return;
36
- ctx.set("userData", {
37
- ...ctx.userData,
38
- permits: [...prm.filter((p) => !permits.includes(p)), ...permits],
39
- });
72
+ ctx.set("userData", __assign(__assign({}, ctx.userData), { permits: __spreadArray(__spreadArray([], prm.filter(function (p) { return !permits.includes(p); }), true), permits, true) }));
40
73
  };
41
- const removePermits = (permits) => {
42
- ctx.set("userData", {
43
- ...ctx.userData,
44
- permits: prm.filter((p) => !permits.includes(p)),
45
- });
74
+ var removePermits = function (permits) {
75
+ ctx.set("userData", __assign(__assign({}, ctx.userData), { permits: prm.filter(function (p) { return !permits.includes(p); }) }));
46
76
  };
47
- const setAccessToken = (token) => {
77
+ var setAccessToken = function (token) {
48
78
  ctx.set("access_token", token);
49
79
  };
50
- const setRefreshToken = (token) => {
80
+ var setRefreshToken = function (token) {
51
81
  ctx.set("refresh_token", token);
52
82
  };
53
- const logout = () => {
83
+ var logout = function () {
54
84
  setUserData(null);
55
85
  setPermits([]);
56
86
  ctx.set("refresh_token", null);
57
87
  ctx.set("access_token", null);
58
88
  };
59
- return {
60
- permits: prm,
61
- isPermitted,
62
- on,
63
- setPermits,
64
- addPermits,
65
- removePermits,
66
- setUserData,
67
- isPermittedAll,
68
- user,
69
- setAccessToken,
70
- setRefreshToken,
71
- logout,
72
- ...authera_props,
73
- };
89
+ return __assign({ permits: prm, isPermitted: isPermitted, on: on, setPermits: setPermits, addPermits: addPermits, removePermits: removePermits, setUserData: setUserData, isPermittedAll: isPermittedAll, user: user, setAccessToken: setAccessToken, setRefreshToken: setRefreshToken, logout: logout }, authera_props);
74
90
  }
91
+ //# sourceMappingURL=useAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAuth.js","sourceRoot":"","sources":["../../src/hooks/useAuth.ts"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASb,0BAiFC;AAxFD,6CAI2B;AAC3B,gDAA0B;AAE1B,SAAgB,OAAO;IACrB,6DAA6D;IAE7D,IAAM,GAAG,GAAG,eAAK,CAAC,UAAU,CAC1B,qBAAiE,CAClE,CAAC;IACF,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAExE,0DAA0D;IAE1D,IAAM,KAAoC,GAAG,CAAC,QAAQ,EAArC,WAAW,aAAA,EAAK,IAAI,cAA/B,WAAiC,CAAe,CAAC;IACvD,IAAM,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IACxC,IAAM,GAAG,GAAG,CAAC,WAAW,IAAI,EAAE,CAAQ,CAAC;IAEvC,8DAA8D;IAC9D,IAAM,WAAW,GAAG,UAAC,IAAO;QAC1B,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IACF,IAAM,cAAc,GAAG,UAAC,KAAU;QAChC,OAAO,KAAK,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAf,CAAe,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,IAAM,EAAE,GAAG,UAAC,IAAO,EAAE,QAAoB,EAAE,QAAqB;QAC9D,IAAI,WAAW,CAAC,IAAI,CAAC;YAAE,QAAQ,EAAE,CAAC;aAC7B,IAAI,QAAQ;YAAE,QAAQ,EAAE,CAAC;IAChC,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG,UAAC,QAAyB;QAC5C,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,IAAM,UAAU,GAAG,UAAC,OAAY;QAC9B,GAAG,CAAC,GAAG,CAAC,UAAU,wBAAO,GAAG,CAAC,QAAQ,KAAE,OAAO,SAAA,IAAG,CAAC;IACpD,CAAC,CAAC;IAEF,IAAM,UAAU,GAAG,UAAC,OAAY;QAC9B,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO;QAExC,GAAG,CAAC,GAAG,CAAC,UAAU,wBACb,GAAG,CAAC,QAAQ,KACf,OAAO,kCAAM,GAAG,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAApB,CAAoB,CAAC,SAAK,OAAO,WAChE,CAAC;IACL,CAAC,CAAC;IAEF,IAAM,aAAa,GAAG,UAAC,OAAY;QACjC,GAAG,CAAC,GAAG,CAAC,UAAU,wBACb,GAAG,CAAC,QAAQ,KACf,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAApB,CAAoB,CAAC,IAChD,CAAC;IACL,CAAC,CAAC;IAEF,IAAM,cAAc,GAAG,UAAC,KAAa;QACnC,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,IAAM,eAAe,GAAG,UAAC,KAAa;QACpC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,IAAM,MAAM,GAAG;QACb,WAAW,CAAC,IAAW,CAAC,CAAC;QACzB,UAAU,CAAC,EAAE,CAAC,CAAC;QACf,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QAC/B,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,kBACE,OAAO,EAAE,GAAG,EACZ,WAAW,aAAA,EACX,EAAE,IAAA,EACF,UAAU,YAAA,EACV,UAAU,YAAA,EACV,aAAa,eAAA,EACb,WAAW,aAAA,EACX,cAAc,gBAAA,EACd,IAAI,MAAA,EACJ,cAAc,gBAAA,EACd,eAAe,iBAAA,EACf,MAAM,QAAA,IACH,aAAa,EAChB;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -26,6 +26,6 @@ export default function AuthHook<T extends string>(props: AuthHookSettings<T>):
26
26
  setRefreshToken: (token: string) => void;
27
27
  logout: () => void;
28
28
  };
29
- LoginScenario: import("react/jsx-runtime").JSX.Element;
29
+ LoginScenario: () => import("react/jsx-runtime").JSX.Element;
30
30
  };
31
31
  export { default as AuthGuard } from "./web/guard";
package/dist/index.js CHANGED
@@ -1,19 +1,28 @@
1
+ "use strict";
1
2
  "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { name2storage } from "./helper/storage";
4
- import AuthProvider from "./web";
5
- import { useAuth } from "./hooks/useAuth";
6
- import LoginForm from "./web/login";
7
- export default function AuthHook(props) {
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.AuthGuard = void 0;
8
+ exports.default = AuthHook;
9
+ var jsx_runtime_1 = require("react/jsx-runtime");
10
+ var storage_1 = require("./helper/storage");
11
+ var web_1 = __importDefault(require("./web"));
12
+ var useAuth_1 = require("./hooks/useAuth");
13
+ var login_1 = __importDefault(require("./web/login"));
14
+ function AuthHook(props) {
8
15
  // set storage functions
9
- let storage = props.storage;
16
+ var storage = props.storage;
10
17
  if (typeof storage === "string")
11
- storage = name2storage(storage);
18
+ storage = (0, storage_1.name2storage)(storage);
12
19
  // create backend data
13
20
  return {
14
- createAuthProvider: (children) => (_jsx(AuthProvider, { storage: storage, authera_props: props, children: children })),
15
- useAuth: () => useAuth(),
16
- LoginScenario: (_jsx(LoginForm, { on_after_login: props.on_after_login, on_after_step: props.on_after_step, backendUrl: props.backendUrl })),
21
+ createAuthProvider: function (children) { return ((0, jsx_runtime_1.jsx)(web_1.default, { storage: storage, authera_props: props, children: children })); },
22
+ useAuth: function () { return (0, useAuth_1.useAuth)(); },
23
+ LoginScenario: function () { return ((0, jsx_runtime_1.jsx)(login_1.default, { on_after_login: props.on_after_login, on_after_step: props.on_after_step, backendUrl: props.backendUrl })); },
17
24
  };
18
25
  }
19
- export { default as AuthGuard } from "./web/guard";
26
+ var guard_1 = require("./web/guard");
27
+ Object.defineProperty(exports, "AuthGuard", { enumerable: true, get: function () { return __importDefault(guard_1).default; } });
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;AAQb,2BAqBC;;AA3BD,4CAA4E;AAC5E,8CAAiC;AACjC,2CAA0C;AAC1C,sDAAoC;AAGpC,SAAwB,QAAQ,CAAmB,KAA0B;IAC3E,wBAAwB;IACxB,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,GAAG,IAAA,sBAAY,EAAC,OAAO,CAAC,CAAC;IAEjE,sBAAsB;IACtB,OAAO;QACL,kBAAkB,EAAE,UAAC,QAAyB,IAAsB,OAAA,CAClE,uBAAC,aAAY,IAAI,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,YACpD,QAAQ,GACI,CAChB,EAJmE,CAInE;QACD,OAAO,EAAE,cAAM,OAAA,IAAA,iBAAO,GAAK,EAAZ,CAAY;QAC3B,aAAa,EAAE,cAAM,OAAA,CACnB,uBAAC,eAAS,IACR,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,UAAU,EAAE,KAAK,CAAC,UAAU,GAC5B,CACH,EANoB,CAMpB;KACF,CAAC;AACJ,CAAC;AAED,qCAAmD;AAA1C,mHAAA,OAAO,OAAa"}
package/dist/web/guard.js CHANGED
@@ -1,5 +1,9 @@
1
+ "use strict";
1
2
  "use client";
2
- export default function AuthGuard({ children, permits, action, }) {
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.default = AuthGuard;
5
+ function AuthGuard(_a) {
6
+ var children = _a.children, permits = _a.permits, action = _a.action;
3
7
  // const { isPermittedAll: isPermittedHook, fallback_401_url } =
4
8
  // useAuth<string>();
5
9
  // const isPermitted = isPermittedHook(permits);
@@ -16,3 +20,4 @@ export default function AuthGuard({ children, permits, action, }) {
16
20
  // else return <>{children}</>;
17
21
  // }
18
22
  }
23
+ //# sourceMappingURL=guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guard.js","sourceRoot":"","sources":["../../src/web/guard.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AAWb,4BAoBC;AApBD,SAAwB,SAAS,CAAC,EAIjB;QAHf,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,MAAM,YAAA;IAEN,gEAAgE;IAChE,uBAAuB;IACvB,gDAAgD;IAChD,+CAA+C;IAC/C,6CAA6C;IAC7C,iBAAiB;IACjB,IAAI;IACJ,2BAA2B;IAC3B,6CAA6C;IAC7C,sBAAsB;IACtB,IAAI;IACJ,2BAA2B;IAC3B,kCAAkC;IAClC,iCAAiC;IACjC,IAAI;AACN,CAAC"}
package/dist/web/index.js CHANGED
@@ -1,14 +1,19 @@
1
+ "use strict";
1
2
  "use client";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { AuthContext, } from "../helper/context";
4
- export default function AuthProvider({ children, storage, authera_props, }) {
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.default = AuthProvider;
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var context_1 = require("../helper/context");
7
+ function AuthProvider(_a) {
8
+ var children = _a.children, storage = _a.storage, authera_props = _a.authera_props;
5
9
  /**
6
10
  * Context Provider
7
11
  */
8
- const Provider = AuthContext.Provider;
9
- const userData = storage.get("userData");
10
- const set = (key, value) => {
12
+ var Provider = context_1.AuthContext.Provider;
13
+ var userData = storage.get("userData");
14
+ var set = function (key, value) {
11
15
  storage.set(key, value);
12
16
  };
13
- return (_jsx(Provider, { value: { userData, set, authera_props }, children: children }));
17
+ return ((0, jsx_runtime_1.jsx)(Provider, { value: { userData: userData, set: set, authera_props: authera_props }, children: children }));
14
18
  }
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/web/index.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AAiBb,+BAiBC;;AA/BD,6CAI2B;AAU3B,SAAwB,YAAY,CAAmB,EAIhC;QAHrB,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,aAAa,mBAAA;IAEb;;OAEG;IACH,IAAM,QAAQ,GAAG,qBAAW,CAAC,QAAQ,CAAC;IACtC,IAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAoB,CAAC;IAC5D,IAAM,GAAG,GAAG,UAAC,GAAkC,EAAE,KAAsB;QACrE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO,CACL,uBAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,QAAQ,UAAA,EAAE,GAAG,KAAA,EAAE,aAAa,eAAA,EAAE,YAAG,QAAQ,GAAY,CACzE,CAAC;AACJ,CAAC"}
package/dist/web/login.js CHANGED
@@ -1,67 +1,133 @@
1
+ "use strict";
1
2
  "use client";
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import axios from "axios";
4
- import { convertFromSchema } from "minimal-form";
5
- import EasyForm from "minimal-form";
6
- import { useEffect, useState } from "react";
7
- import { useForm } from "react-hook-form";
8
- import { useAuth } from "../hooks/useAuth";
9
- export default function LoginForm({ on_after_login, on_after_step, backendUrl, }) {
10
- const [steps, stepsHnadler] = useState();
11
- const [activeStep, activeStepHandler] = useState();
12
- const [loading, loadingHandler] = useState(true);
13
- const [userID, userIDHandler] = useState("");
14
- const [stepPayload, stepPayloadHandler] = useState({});
15
- const { handleSubmit, control } = useForm();
16
- const { setUserData, setPermits } = useAuth();
17
- const request = axios.create({
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ var __generator = (this && this.__generator) || function (thisArg, body) {
13
+ 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);
14
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
15
+ function verb(n) { return function (v) { return step([n, v]); }; }
16
+ function step(op) {
17
+ if (f) throw new TypeError("Generator is already executing.");
18
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
19
+ 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;
20
+ if (y = 0, t) op = [op[0] & 2, t.value];
21
+ switch (op[0]) {
22
+ case 0: case 1: t = op; break;
23
+ case 4: _.label++; return { value: op[1], done: false };
24
+ case 5: _.label++; y = op[1]; op = [0]; continue;
25
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
26
+ default:
27
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
28
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
29
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
30
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
31
+ if (t[2]) _.ops.pop();
32
+ _.trys.pop(); continue;
33
+ }
34
+ op = body.call(thisArg, _);
35
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
36
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
37
+ }
38
+ };
39
+ var __importDefault = (this && this.__importDefault) || function (mod) {
40
+ return (mod && mod.__esModule) ? mod : { "default": mod };
41
+ };
42
+ Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.default = LoginForm;
44
+ var jsx_runtime_1 = require("react/jsx-runtime");
45
+ var axios_1 = __importDefault(require("axios"));
46
+ var minimal_form_1 = require("minimal-form");
47
+ var minimal_form_2 = __importDefault(require("minimal-form"));
48
+ var react_1 = require("react");
49
+ var react_hook_form_1 = require("react-hook-form");
50
+ var useAuth_1 = require("../hooks/useAuth");
51
+ function LoginForm(_a) {
52
+ var _this = this;
53
+ var on_after_login = _a.on_after_login, on_after_step = _a.on_after_step, backendUrl = _a.backendUrl;
54
+ var _b = (0, react_1.useState)(), steps = _b[0], stepsHnadler = _b[1];
55
+ var _c = (0, react_1.useState)(), activeStep = _c[0], activeStepHandler = _c[1];
56
+ var _d = (0, react_1.useState)(true), loading = _d[0], loadingHandler = _d[1];
57
+ var _e = (0, react_1.useState)(""), userID = _e[0], userIDHandler = _e[1];
58
+ var _f = (0, react_1.useState)({}), stepPayload = _f[0], stepPayloadHandler = _f[1];
59
+ var _g = (0, react_hook_form_1.useForm)(), handleSubmit = _g.handleSubmit, control = _g.control;
60
+ var _h = (0, useAuth_1.useAuth)(), setUserData = _h.setUserData, setPermits = _h.setPermits;
61
+ var request = axios_1.default.create({
18
62
  baseURL: backendUrl,
19
63
  });
20
64
  // fetch data from steps
21
- useEffect(() => {
22
- async function fetchSteps() {
23
- const response = await request.get("options/");
24
- const data = Object.entries(response.data).map(([opt, schema]) => ({
25
- name: opt,
26
- structure: convertFromSchema(schema),
27
- }));
28
- activeStepHandler(data[0]);
29
- stepsHnadler(data);
30
- loadingHandler(false);
65
+ (0, react_1.useEffect)(function () {
66
+ function fetchSteps() {
67
+ return __awaiter(this, void 0, void 0, function () {
68
+ var response, data;
69
+ return __generator(this, function (_a) {
70
+ switch (_a.label) {
71
+ case 0: return [4 /*yield*/, request.get("options/")];
72
+ case 1:
73
+ response = _a.sent();
74
+ data = Object.entries(response.data).map(function (_a) {
75
+ var opt = _a[0], schema = _a[1];
76
+ return ({
77
+ name: opt,
78
+ structure: (0, minimal_form_1.convertFromSchema)(schema),
79
+ });
80
+ });
81
+ activeStepHandler(data[0]);
82
+ stepsHnadler(data);
83
+ loadingHandler(false);
84
+ return [2 /*return*/];
85
+ }
86
+ });
87
+ });
31
88
  }
32
89
  fetchSteps();
33
90
  }, []);
34
- const onSubmit = async (data) => {
35
- // valudate step and send data to server
36
- const response = await request.post("validate/" + activeStep.name, {
37
- options: data,
38
- payload: stepPayload,
39
- user_id: userID,
91
+ var onSubmit = function (data) { return __awaiter(_this, void 0, void 0, function () {
92
+ var response, nextIndex;
93
+ var _a;
94
+ return __generator(this, function (_b) {
95
+ switch (_b.label) {
96
+ case 0: return [4 /*yield*/, request.post("validate/" + activeStep.name, {
97
+ options: data,
98
+ payload: stepPayload,
99
+ user_id: userID,
100
+ })];
101
+ case 1:
102
+ response = _b.sent();
103
+ // if response say go next step
104
+ if (response.status === 202) {
105
+ nextIndex = ((steps === null || steps === void 0 ? void 0 : steps.findIndex(function (d) { return d.name === (activeStep === null || activeStep === void 0 ? void 0 : activeStep.name); })) || 0) + 1;
106
+ activeStepHandler(steps === null || steps === void 0 ? void 0 : steps[nextIndex]);
107
+ if (on_after_step)
108
+ on_after_step(((_a = steps === null || steps === void 0 ? void 0 : steps[nextIndex]) === null || _a === void 0 ? void 0 : _a.name) || "");
109
+ }
110
+ // if response say authenticate is finished
111
+ else if (response.status === 200) {
112
+ setUserData(response.data.user);
113
+ setPermits(response.data.user.permits);
114
+ if (on_after_login)
115
+ on_after_login(response.data);
116
+ }
117
+ // if response say have a wrong in this request
118
+ else if (response.status === 400) {
119
+ activeStepHandler(steps === null || steps === void 0 ? void 0 : steps[0]);
120
+ }
121
+ userIDHandler(response.data.user_id);
122
+ stepPayloadHandler(response.data.payload);
123
+ return [2 /*return*/];
124
+ }
40
125
  });
41
- // if response say go next step
42
- if (response.status === 202) {
43
- const nextIndex = (steps?.findIndex((d) => d.name === activeStep?.name) || 0) + 1;
44
- activeStepHandler(steps?.[nextIndex]);
45
- if (on_after_step)
46
- on_after_step(steps?.[nextIndex]?.name || "");
47
- }
48
- // if response say authenticate is finished
49
- else if (response.status === 200) {
50
- setUserData(response.data.user);
51
- setPermits(response.data.user.permits);
52
- if (on_after_login)
53
- on_after_login(response.data);
54
- }
55
- // if response say have a wrong in this request
56
- else if (response.status === 400) {
57
- activeStepHandler(steps?.[0]);
58
- }
59
- userIDHandler(response.data.user_id);
60
- stepPayloadHandler(response.data.payload);
61
- };
126
+ }); };
62
127
  // loading check
63
128
  if (loading)
64
- return _jsx("p", { children: "loading ..." });
129
+ return (0, jsx_runtime_1.jsx)("p", { children: "loading ..." });
65
130
  // show forms from steps
66
- return (_jsxs("form", { onSubmit: handleSubmit(onSubmit), children: [_jsx(EasyForm, { control: control, structure: activeStep.structure }), _jsx("button", { type: "submit", children: "Submit" })] }));
131
+ return ((0, jsx_runtime_1.jsxs)("form", { onSubmit: handleSubmit(onSubmit), children: [(0, jsx_runtime_1.jsx)(minimal_form_2.default, { control: control, structure: activeStep.structure }), (0, jsx_runtime_1.jsx)("button", { type: "submit", children: "Submit" })] }));
67
132
  }
133
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/web/login.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "authera",
3
- "version": "2.0.2",
3
+ "version": "2.0.5",
4
4
  "description": "this project is a simple auth hook for react",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",