@ichaingo/with-login 1.4.58 → 1.4.60
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/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +61 -70
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -15,8 +15,6 @@ export interface LoginContextValue {
|
|
|
15
15
|
setLoginOpen: (open: boolean) => void;
|
|
16
16
|
url: string | null;
|
|
17
17
|
currentTheme: string;
|
|
18
|
-
iframeLoaded: boolean;
|
|
19
|
-
handleIframeLoad: () => void;
|
|
20
18
|
mounted: boolean;
|
|
21
19
|
Trigger: React.FC<React.HTMLAttributes<HTMLDivElement>>;
|
|
22
20
|
registerLoginSuccessCallback: (callback: () => void | Promise<void>) => () => void;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8E,MAAM,OAAO,CAAC;AAMnG,eAAO,MAAM,OAAO,eAEnB,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,iBAAiB,oBAAoB;IACrC,aAAa,iBAAiB;CAC/B;AAED,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,iBAAiB;IAEhC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,aAAa,KAAK,IAAI,CAAC;IAC1C,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8E,MAAM,OAAO,CAAC;AAMnG,eAAO,MAAM,OAAO,eAEnB,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,iBAAiB,oBAAoB;IACrC,aAAa,iBAAiB;CAC/B;AAED,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,iBAAiB;IAEhC,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,aAAa,KAAK,IAAI,CAAC;IAC1C,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IAEjB,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;IAExD,4BAA4B,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC;CACpF;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5C;AAKD;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,oBAA8C,EAAE,EAAE,kBAAkB,2CAyH7G;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,iBAAiB,CAM5C;AAED,UAAU,cACR,SAAQ,KAAK,CAAC,iBAAiB,EAC7B,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,kDAevE;AAED,eAAe,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,64 +1,59 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as
|
|
3
|
-
import
|
|
4
|
-
import { useLocale as
|
|
5
|
-
import { twMerge as
|
|
6
|
-
import { useTheme as
|
|
7
|
-
import
|
|
8
|
-
const
|
|
9
|
-
var
|
|
10
|
-
const
|
|
11
|
-
function
|
|
12
|
-
const [
|
|
13
|
-
const r = typeof window < "u" ? window.location.href : "", g = `${process.env.NEXT_PUBLIC_AUTH_URL}/${u}/login?mode=dialog&theme=${t}&redirect_uri=${r}`,
|
|
14
|
-
|
|
15
|
-
}, [t, u]),
|
|
16
|
-
|
|
17
|
-
}, []),
|
|
18
|
-
|
|
2
|
+
import { jsx as m, jsxs as I } from "react/jsx-runtime";
|
|
3
|
+
import M, { createContext as N, useState as w, useRef as R, useCallback as c, useEffect as p, useContext as O } from "react";
|
|
4
|
+
import { useLocale as P } from "next-intl";
|
|
5
|
+
import { twMerge as $ } from "tailwind-merge";
|
|
6
|
+
import { useTheme as y } from "@ichaingo/next-themes";
|
|
7
|
+
import k from "js-cookie";
|
|
8
|
+
const q = () => !!k.get("id_token");
|
|
9
|
+
var A = /* @__PURE__ */ ((e) => (e.CLOSE_LOGIN_MODAL = "closeLoginModal", e.LOGIN_SUCCESS = "loginSuccess", e))(A || {}), B = /* @__PURE__ */ ((e) => (e.LOGIN = "login", e.REGISTER = "register", e))(B || {});
|
|
10
|
+
const C = N(void 0);
|
|
11
|
+
function F({ children: e, loginSuccessCallback: n = () => Promise.resolve() }) {
|
|
12
|
+
const [i, s] = w(!1), [l, h] = w(!1), [a, v] = w(null), _ = R(/* @__PURE__ */ new Set()), u = P(), { resolvedTheme: U } = y(), t = l && U ? U : "light", L = c((o) => {
|
|
13
|
+
const r = typeof window < "u" ? window.location.href : "", g = `${process.env.NEXT_PUBLIC_AUTH_URL}/${u}/login?mode=dialog&theme=${t}&redirect_uri=${r}`, f = `${process.env.NEXT_PUBLIC_AUTH_URL}/${u}/register?mode=dialog&theme=${t}&redirect_uri=${r}`;
|
|
14
|
+
s(!0), v(o === "register" ? f : g);
|
|
15
|
+
}, [t, u]), d = c(() => {
|
|
16
|
+
s(!1);
|
|
17
|
+
}, []), E = c((o) => {
|
|
18
|
+
s(o);
|
|
19
19
|
}, []);
|
|
20
20
|
p(() => {
|
|
21
|
-
n && i && c(!1);
|
|
22
|
-
}, [v, n, i]), p(() => {
|
|
23
21
|
if (t) {
|
|
24
22
|
const o = typeof window < "u" ? window.location.href : "", r = `${process.env.NEXT_PUBLIC_AUTH_URL}/${u}/login?mode=dialog&theme=${t}&redirect_uri=${o}`;
|
|
25
|
-
|
|
23
|
+
v(r);
|
|
26
24
|
}
|
|
27
25
|
}, [t]), p(() => {
|
|
28
|
-
|
|
26
|
+
h(!0);
|
|
29
27
|
const o = (r) => {
|
|
30
|
-
var g,
|
|
31
|
-
((g = r.data) == null ? void 0 : g.type) === "closeLoginModal" &&
|
|
28
|
+
var g, f;
|
|
29
|
+
((g = r.data) == null ? void 0 : g.type) === "closeLoginModal" && d(), ((f = r.data) == null ? void 0 : f.type) === "loginSuccess" && (console.log("handleMessage", r.data.type), d(), window.location.reload());
|
|
32
30
|
};
|
|
33
31
|
return window.addEventListener("message", o), () => {
|
|
34
32
|
window.removeEventListener("message", o);
|
|
35
33
|
};
|
|
36
|
-
}, [
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
}, []),
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
[_]
|
|
44
|
-
), M = y.useMemo(() => /* @__PURE__ */ w(
|
|
34
|
+
}, [d, n]);
|
|
35
|
+
const x = c((o) => (_.current.add(o), () => {
|
|
36
|
+
_.current.delete(o);
|
|
37
|
+
}), []), S = c(
|
|
38
|
+
({ children: o, ...r }) => /* @__PURE__ */ m("div", { onClick: () => L(), style: { cursor: "pointer" }, ...r, children: o }),
|
|
39
|
+
[L]
|
|
40
|
+
), T = M.useMemo(() => /* @__PURE__ */ m(
|
|
45
41
|
"div",
|
|
46
42
|
{
|
|
47
|
-
className:
|
|
43
|
+
className: $(
|
|
48
44
|
"fixed left-0 bottom-0 w-px h-px bg-[rgba(0,0,0,0.7)] z-1002",
|
|
49
45
|
"transition-all duration-500 ease-in-out",
|
|
50
|
-
|
|
46
|
+
i && "w-full h-full "
|
|
51
47
|
),
|
|
52
|
-
children:
|
|
48
|
+
children: a && /* @__PURE__ */ m(
|
|
53
49
|
"iframe",
|
|
54
50
|
{
|
|
55
|
-
src:
|
|
56
|
-
className:
|
|
51
|
+
src: a ?? "",
|
|
52
|
+
className: $(
|
|
57
53
|
"w-full h-full border-none relative z-10 transition-opacity duration-300",
|
|
58
|
-
|
|
54
|
+
"opacity-100"
|
|
59
55
|
),
|
|
60
56
|
title: "Login",
|
|
61
|
-
onLoad: U,
|
|
62
57
|
sandbox: "allow-scripts allow-forms allow-same-origin"
|
|
63
58
|
},
|
|
64
59
|
`login-iframe-${t}`
|
|
@@ -66,47 +61,43 @@ function Q({ children: e, loginSuccessCallback: l = () => Promise.resolve() }) {
|
|
|
66
61
|
}
|
|
67
62
|
), [
|
|
68
63
|
t,
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
setLoginOpen: I,
|
|
78
|
-
url: d,
|
|
64
|
+
i,
|
|
65
|
+
a
|
|
66
|
+
]), b = {
|
|
67
|
+
isOpen: i,
|
|
68
|
+
openLogin: L,
|
|
69
|
+
closeLogin: d,
|
|
70
|
+
setLoginOpen: E,
|
|
71
|
+
url: a,
|
|
79
72
|
currentTheme: t,
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
Trigger: b,
|
|
84
|
-
registerLoginSuccessCallback: T
|
|
73
|
+
mounted: l,
|
|
74
|
+
Trigger: S,
|
|
75
|
+
registerLoginSuccessCallback: x
|
|
85
76
|
};
|
|
86
|
-
return /* @__PURE__ */
|
|
77
|
+
return /* @__PURE__ */ I(C.Provider, { value: b, children: [
|
|
87
78
|
e,
|
|
88
|
-
|
|
79
|
+
T
|
|
89
80
|
] });
|
|
90
81
|
}
|
|
91
|
-
function
|
|
92
|
-
const e =
|
|
82
|
+
function G() {
|
|
83
|
+
const e = O(C);
|
|
93
84
|
if (e === void 0)
|
|
94
85
|
throw new Error("useLogin must be used within a LoginProvider");
|
|
95
86
|
return e;
|
|
96
87
|
}
|
|
97
|
-
function
|
|
98
|
-
const { Trigger:
|
|
88
|
+
function J({ children: e, onClick: n, ...i }) {
|
|
89
|
+
const { Trigger: s, registerLoginSuccessCallback: l } = G();
|
|
99
90
|
return p(() => {
|
|
100
|
-
if (
|
|
101
|
-
return
|
|
102
|
-
}, [
|
|
91
|
+
if (n)
|
|
92
|
+
return l(n);
|
|
93
|
+
}, [n, l]), e ? /* @__PURE__ */ m(s, { ...i, children: e }) : null;
|
|
103
94
|
}
|
|
104
95
|
export {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
96
|
+
A as LoginMessageType,
|
|
97
|
+
F as LoginProvider,
|
|
98
|
+
B as OpenLoginType,
|
|
99
|
+
J as WithLogin,
|
|
100
|
+
J as default,
|
|
101
|
+
q as isLogin,
|
|
102
|
+
G as useLogin
|
|
112
103
|
};
|