@ichaingo/with-login 1.4.55 → 1.4.56

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 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAOhE,eAAO,MAAM,OAAO,eAEnB,CAAC;AACF,oBAAY,gBAAgB;IAC1B,iBAAiB,oBAAoB;IACrC,aAAa,iBAAiB;CAC/B;AACD,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AACD,MAAM,WAAW,cAAc;IAE7B,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAE,IAAI,CAAC,EAAE,aAAa,KAAM,IAAI,CAAC;IAC5C,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,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IAEjB,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;IACxD,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;CACpB;AACD,UAAU,aAAa;IACrB,oBAAoB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5C;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAC,oBAA8C,EAAC,EAAE,aAAa,GAAG,cAAc,CAoJxG;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;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,2CAYvE;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAOhE,eAAO,MAAM,OAAO,eAEnB,CAAC;AACF,oBAAY,gBAAgB;IAC1B,iBAAiB,oBAAoB;IACrC,aAAa,iBAAiB;CAC/B;AACD,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AACD,MAAM,WAAW,cAAc;IAE7B,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAE,IAAI,CAAC,EAAE,aAAa,KAAM,IAAI,CAAC;IAC5C,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,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IAEjB,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;IACxD,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;CACpB;AACD,UAAU,aAAa;IACrB,oBAAoB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5C;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAC,oBAA8C,EAAC,EAAE,aAAa,GAAG,cAAc,CAqJxG;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;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,2CAYvE;AAED,eAAe,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,54 +1,55 @@
1
1
  'use client';
2
- import { jsx as s, jsxs as I, Fragment as C } from "react/jsx-runtime";
3
- import { useState as d, useCallback as i, useEffect as w } from "react";
4
- import { createPortal as E } from "react-dom";
5
- import { useLocale as G } from "next-intl";
6
- import { twMerge as _ } from "tailwind-merge";
7
- import { useTheme as R } from "@ichaingo/next-themes";
8
- import z from "js-cookie";
9
- const J = () => !!z.get("id_token");
2
+ import { jsx as s, jsxs as y, Fragment as M } from "react/jsx-runtime";
3
+ import { useState as d, useCallback as n, useEffect as U } from "react";
4
+ import { createPortal as x } from "react-dom";
5
+ import { useLocale as O } from "next-intl";
6
+ import { twMerge as N } from "tailwind-merge";
7
+ import { useTheme as C } from "@ichaingo/next-themes";
8
+ import R from "js-cookie";
9
+ const k = () => !!R.get("id_token");
10
10
  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 || {});
11
- function j({ loginSuccessCallback: e = () => Promise.resolve() }) {
12
- const [o, l] = d(!1), [t, m] = d(!1), [a, f] = d(!1), [g, P] = d(null), [x, $] = d(!1), y = G(), { resolvedTheme: p } = R(), N = window.location.href, c = t && p ? p : "light", n = `${process.env.NEXT_PUBLIC_AUTH_URL}/${y}/login?mode=dialog&theme=${c}&redirect_uri=${N}`, U = `${process.env.NEXT_PUBLIC_AUTH_URL}/${y}/register?mode=dialog&theme=${c}&redirect_uri=${N}`, L = i((r) => {
13
- l(!0), f(!1), P(r === "register" ? U : n);
14
- }, [n, U]), u = i(() => {
11
+ function G({ loginSuccessCallback: e = () => Promise.resolve() }) {
12
+ const [o, l] = d(!1), [t, g] = d(!1), [i, f] = d(!1), [L, E] = d(null), [$, I] = d(!1), u = O(), { resolvedTheme: p } = C(), h = window.location.href, a = t && p ? p : "light", v = n((r) => {
13
+ const c = `${process.env.NEXT_PUBLIC_AUTH_URL}/${u}/login?mode=dialog&theme=${a}&redirect_uri=${h}`, w = `${process.env.NEXT_PUBLIC_AUTH_URL}/${u}/register?mode=dialog&theme=${a}&redirect_uri=${h}`;
14
+ l(!0), f(!1), E(r === "register" ? w : c);
15
+ }, [a, u, h]), m = n(() => {
15
16
  l(!1);
16
- }, []), b = i((r) => {
17
+ }, []), P = n((r) => {
17
18
  l(r), r && f(!1);
18
19
  }, []);
19
- w(() => {
20
+ U(() => {
20
21
  o && t && f(!1);
21
- }, [p, o, t]), w(() => {
22
- m(!0);
23
- const r = (v) => {
24
- v.data.type === "closeLoginModal" && u(), v.data.type === "loginSuccess" && (u(), e && e());
22
+ }, [p, o, t]), U(() => {
23
+ g(!0);
24
+ const r = (c) => {
25
+ c.data.type === "closeLoginModal" && m(), c.data.type === "loginSuccess" && (m(), e && e());
25
26
  };
26
27
  return window.addEventListener("message", r), () => {
27
28
  window.removeEventListener("message", r);
28
29
  };
29
- }, [u, e]), w(() => {
30
- t && n && $(!0);
31
- }, [t, n]);
32
- const h = i(() => {
30
+ }, [m, e]), U(() => {
31
+ t && I(!0);
32
+ }, [t]);
33
+ const _ = n(() => {
33
34
  f(!0);
34
- }, []), S = i(
35
- ({ children: r, onClick: v, ...O }) => /* @__PURE__ */ s("div", { onClick: () => L(), style: { cursor: "pointer" }, ...O, children: r }),
36
- [L]
37
- ), T = i(() => !x || !t || !n ? null : E(
35
+ }, []), T = n(
36
+ ({ children: r, onClick: c, ...w }) => /* @__PURE__ */ s("div", { onClick: () => v(), style: { cursor: "pointer" }, ...w, children: r }),
37
+ [v]
38
+ ), b = n(() => !$ || !t ? null : x(
38
39
  /* @__PURE__ */ s("div", { className: "w-[1px] h-[1px] fixed left-0 bottom-0", children: /* @__PURE__ */ s(
39
40
  "iframe",
40
41
  {
41
- src: n,
42
+ src: `${process.env.NEXT_PUBLIC_AUTH_URL}/${u}/login?mode=dialog`,
42
43
  className: "w-[1px] h-[1px]",
43
44
  title: "Login Prefetch"
44
45
  }
45
46
  ) }),
46
47
  document.body
47
- ), [x, t, n]), M = i(() => o ? E(
48
- /* @__PURE__ */ I(
48
+ ), [$, t]), S = n(() => o ? x(
49
+ /* @__PURE__ */ y(
49
50
  "div",
50
51
  {
51
- className: _(
52
+ className: N(
52
53
  "fixed w-0 h-9 bg-[rgba(0,0,0,0.7)] z-1002",
53
54
  o && "top-0 left-0 w-full h-full"
54
55
  ),
@@ -56,67 +57,67 @@ function j({ loginSuccessCallback: e = () => Promise.resolve() }) {
56
57
  /* @__PURE__ */ s(
57
58
  "div",
58
59
  {
59
- className: _(
60
+ className: N(
60
61
  "absolute inset-0 transition-opacity duration-300",
61
- a ? "opacity-0 pointer-events-none" : "opacity-100 z-1002"
62
+ i ? "opacity-0 pointer-events-none" : "opacity-100 z-1002"
62
63
  )
63
64
  }
64
65
  ),
65
66
  /* @__PURE__ */ s(
66
67
  "iframe",
67
68
  {
68
- src: g ?? "",
69
- className: _(
69
+ src: L ?? "",
70
+ className: N(
70
71
  "w-full h-full border-none relative z-10 transition-opacity duration-300",
71
- a ? "opacity-100" : "opacity-0"
72
+ i ? "opacity-100" : "opacity-0"
72
73
  ),
73
74
  title: "Login",
74
- onLoad: h,
75
+ onLoad: _,
75
76
  sandbox: "allow-scripts allow-forms allow-same-origin"
76
77
  },
77
- `login-iframe-${c}`
78
+ `login-iframe-${a}`
78
79
  )
79
80
  ]
80
81
  }
81
82
  ),
82
83
  document.body
83
84
  ) : null, [
84
- c,
85
- h,
86
85
  a,
86
+ _,
87
+ i,
87
88
  o,
88
- g
89
+ L
89
90
  ]);
90
91
  return {
91
92
  isOpen: o,
92
- openLogin: L,
93
- closeLogin: u,
94
- setLoginOpen: b,
95
- url: g,
96
- currentTheme: c,
97
- iframeLoaded: a,
98
- handleIframeLoad: h,
93
+ openLogin: v,
94
+ closeLogin: m,
95
+ setLoginOpen: P,
96
+ url: L,
97
+ currentTheme: a,
98
+ iframeLoaded: i,
99
+ handleIframeLoad: _,
99
100
  mounted: t,
100
- Trigger: S,
101
- LoginModal: M,
102
- Prefetch: T
101
+ Trigger: T,
102
+ LoginModal: S,
103
+ Prefetch: b
103
104
  };
104
105
  }
105
- function K({ children: e, onClick: o, ...l }) {
106
- const { Trigger: t, LoginModal: m, Prefetch: a } = j({ loginSuccessCallback: async () => {
106
+ function q({ children: e, onClick: o, ...l }) {
107
+ const { Trigger: t, LoginModal: g, Prefetch: i } = G({ loginSuccessCallback: async () => {
107
108
  o == null || o();
108
109
  } });
109
- return /* @__PURE__ */ I(C, { children: [
110
+ return /* @__PURE__ */ y(M, { children: [
110
111
  e && /* @__PURE__ */ s(t, { ...l, children: e }),
111
- /* @__PURE__ */ s(m, {}),
112
- /* @__PURE__ */ s(a, {})
112
+ /* @__PURE__ */ s(g, {}),
113
+ /* @__PURE__ */ s(i, {})
113
114
  ] });
114
115
  }
115
116
  export {
116
117
  A as LoginMessageType,
117
118
  B as OpenLoginType,
118
- K as WithLogin,
119
- K as default,
120
- J as isLogin,
121
- j as useLogin
119
+ q as WithLogin,
120
+ q as default,
121
+ k as isLogin,
122
+ G as useLogin
122
123
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ichaingo/with-login",
3
- "version": "1.4.55",
3
+ "version": "1.4.56",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",