@tern-secure/nextjs 1.7.8 → 1.8.0
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,8 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { AuthState } from '../../../types/ternsecure';
|
|
3
|
-
|
|
2
|
+
import { AuthState, TernSecureContextType } from '../../../types/ternsecure';
|
|
3
|
+
export declare const useTernSecure: () => TernSecureContextType;
|
|
4
|
+
interface TernSecureClientProviderProps {
|
|
4
5
|
children: React.ReactNode;
|
|
5
|
-
initialState
|
|
6
|
+
initialState?: AuthState;
|
|
6
7
|
}
|
|
7
|
-
export declare function TernSecureClientProvider({ children, initialState }:
|
|
8
|
+
export declare function TernSecureClientProvider({ children, initialState }: TernSecureClientProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
8
9
|
export {};
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import dynamic from 'next/dynamic';
|
|
3
|
+
import { useState, useEffect, createContext, useContext } from 'react';
|
|
1
4
|
import { getApps, initializeApp } from 'firebase/app';
|
|
2
5
|
import { getAuth, setPersistence, browserSessionPersistence, signInWithEmailAndPassword } from 'firebase/auth';
|
|
3
6
|
import { getFirestore } from 'firebase/firestore';
|
|
4
7
|
import { getStorage } from 'firebase/storage';
|
|
5
|
-
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
6
|
-
import React, { Suspense, useState, useEffect } from 'react';
|
|
7
8
|
|
|
8
9
|
const loadFireConfig = () => ({
|
|
9
10
|
apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY,
|
|
@@ -73,36 +74,12 @@ const getTernSecureStorage = () => {
|
|
|
73
74
|
return storage;
|
|
74
75
|
};
|
|
75
76
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
static getDerivedStateFromError(_) {
|
|
82
|
-
return { hasError: true };
|
|
83
|
-
}
|
|
84
|
-
componentDidCatch(error, errorInfo) {
|
|
85
|
-
console.error('TernSecureProvider error:', error, errorInfo);
|
|
86
|
-
}
|
|
87
|
-
render() {
|
|
88
|
-
if (this.state.hasError) {
|
|
89
|
-
return this.props.fallback;
|
|
90
|
-
}
|
|
91
|
-
return this.props.children;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
let TernSecureClientProvider;
|
|
77
|
+
const TernSecureClientProvider$1 = dynamic(() => Promise.resolve().then(function () { return ternSecureClientProvider; }).then(mod => mod.TernSecureClientProvider), {
|
|
78
|
+
ssr: false,
|
|
79
|
+
loading: () => jsx(Fragment, { children: null })
|
|
80
|
+
});
|
|
96
81
|
function TernSecureProvider({ children }) {
|
|
97
|
-
|
|
98
|
-
// Server-side rendering
|
|
99
|
-
return jsx(Fragment, { children: children });
|
|
100
|
-
}
|
|
101
|
-
if (!TernSecureClientProvider) {
|
|
102
|
-
TernSecureClientProvider = require('../../client/providers/ternSecureClientProvider');
|
|
103
|
-
}
|
|
104
|
-
// Client-side rendering
|
|
105
|
-
return (jsx(ErrorBoundary, { fallback: jsx(Fragment, { children: children }), children: jsx(Suspense, { fallback: jsx(Fragment, { children: children }), children: jsx(TernSecureClientProvider, { children: children }) }) }));
|
|
82
|
+
return jsx(TernSecureClientProvider$1, { children: children });
|
|
106
83
|
}
|
|
107
84
|
|
|
108
85
|
let globalAuthState = {
|
|
@@ -157,5 +134,36 @@ function useAuth() {
|
|
|
157
134
|
};
|
|
158
135
|
}
|
|
159
136
|
|
|
137
|
+
const TernSecureContext = createContext(null);
|
|
138
|
+
const useTernSecure = () => {
|
|
139
|
+
const context = useContext(TernSecureContext);
|
|
140
|
+
if (!context) {
|
|
141
|
+
throw new Error('useTernSecure must be used within a TernSecureClientProvider');
|
|
142
|
+
}
|
|
143
|
+
return context;
|
|
144
|
+
};
|
|
145
|
+
function TernSecureClientProvider({ children, initialState = { user: null, loading: true, error: null, initialized: false } }) {
|
|
146
|
+
const [authState, setAuthState] = useState(initialState);
|
|
147
|
+
useEffect(() => {
|
|
148
|
+
const auth = getTernSecureAuth();
|
|
149
|
+
const unsubscribe = auth.onAuthStateChanged((user) => {
|
|
150
|
+
setAuthState({ user, loading: false, error: null, initialized: true });
|
|
151
|
+
}, (error) => {
|
|
152
|
+
setAuthState({ user: null, loading: false, error, initialized: true });
|
|
153
|
+
});
|
|
154
|
+
return () => unsubscribe();
|
|
155
|
+
}, []);
|
|
156
|
+
const contextValue = {
|
|
157
|
+
authState
|
|
158
|
+
};
|
|
159
|
+
return (jsx(TernSecureContext.Provider, { value: contextValue, children: children }));
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
var ternSecureClientProvider = /*#__PURE__*/Object.freeze({
|
|
163
|
+
__proto__: null,
|
|
164
|
+
TernSecureClientProvider: TernSecureClientProvider,
|
|
165
|
+
useTernSecure: useTernSecure
|
|
166
|
+
});
|
|
167
|
+
|
|
160
168
|
export { TernSecureProvider, getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage, useAuth };
|
|
161
169
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/app-router/client/config.ts","../src/errors/index.ts","../src/app-router/client/client-init.ts","../src/app-router/server/
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/app-router/client/config.ts","../src/errors/index.ts","../src/app-router/client/client-init.ts","../src/app-router/server/providers/TernSecureServerProvider.tsx","../src/app-router/client/ClientProvider.tsx","../src/hooks/useAuth.ts","../src/app-router/client/providers/ternSecureClientProvider.tsx"],"sourcesContent":[null,null,null,null,null,null,null],"names":["TernSecureClientProvider","_jsx","_Fragment"],"mappings":";;;;;;;;AAEO,MAAM,cAAc,GAAG,OAAyB;AACrD,IAAA,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,4BAAsC;AAC1D,IAAA,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,gCAA0C;AAClE,IAAA,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,+BAAyC;AAChE,IAAA,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,mCAA6C;AACxE,IAAA,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,wCAAkD;AACjF,IAAA,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,2BAAqC;AACxD,IAAA,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,mCAA6C;AACzE,CAAA,CAAC;AAEK,MAAM,cAAc,GAAG,CAAC,MAAwB,KAAI;AACzD,IAAA,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;QAC9C,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,CAAsD,mDAAA,EAAA,GAAG,CAAC,WAAW,EAAE,CAAE,CAAA,CAAC;;AAE9F,KAAC,CAAC;AACF,IAAA,OAAO,MAAM;AACf,CAAC;;ACnBM,MAAM,MAAM,GAAG;AAClB,IAAA,0BAA0B,EAAE,mDAAmD;AAC/E,IAAA,eAAe,EAAE,4EAA4E;IAC7F,YAAY,EAAE,CAAC,QAAgB,KAAK,CAAA,EAAG,QAAQ,CAAyC,uCAAA,CAAA;CAChF;AAEJ,MAAO,eAAgB,SAAQ,KAAK,CAAA;AACxC,IAAA,WAAA,CAAY,OAAe,EAAA;QACzB,KAAK,CAAC,OAAO,CAAC;AACd,QAAA,IAAI,CAAC,IAAI,GAAG,iBAAiB;;AAEhC;;ACJH,IAAI,GAAG,GAAuB,IAAI;AAClC,IAAI,IAAI,GAAgB,IAAI;AAC5B,IAAI,SAAS,GAAqB,IAAI;AACtC,IAAI,OAAO,GAA2B,IAAI;AAE1C,MAAM,UAAU,GAAG,MAAK;AACtB,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AACjC,QAAA,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,0BAA0B,CAAC;;IAG9D,IAAI,CAAC,GAAG,EAAE;AACR,QAAA,MAAM,MAAM,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC;QAC/C,GAAG,GAAG,OAAO,EAAE,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;AAC7D,QAAA,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;;AAEnB,QAAA,cAAc,CAAC,IAAI,EAAE,yBAAyB,CAAC;AAC/C,QAAA,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC;AAC7B,QAAA,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC;;AAG3B,IAAA,OAAO,GAAG;AACZ,CAAC;AAEM,MAAM,iBAAiB,GAAG,MAAK;IACpC,IAAI,CAAC,IAAI,EAAE;AACT,QAAA,UAAU,EAAE;;AAEd,IAAA,OAAO,IAAK;AACd;AAEO,MAAM,sBAAsB,GAAG,MAAK;IACzC,IAAI,CAAC,SAAS,EAAE;AACd,QAAA,UAAU,EAAE;;AAEd,IAAA,OAAO,SAAU;AACnB;AAEO,MAAM,oBAAoB,GAAG,MAAK;IACvC,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,UAAU,EAAE;;AAEd,IAAA,OAAO,OAAQ;AACjB;;AC9CA,MAAMA,0BAAwB,GAAG,OAAO,CACtC,MAAM,wEAAyD,CAAC,IAAI,CAClE,GAAG,IAAI,GAAG,CAAC,wBAAwB,CACpC,EACD;AACE,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,OAAO,EAAE,MAAMC,GAAA,CAAAC,QAAA,EAAA,EAAA,QAAA,EAAG,IAAI,EAAI;AAC3B,CAAA,CACF;AAMe,SAAA,kBAAkB,CAAC,EAAE,QAAQ,EAA2B,EAAA;AACtE,IAAA,OAAOD,GAAC,CAAAD,0BAAwB,EAAE,EAAA,QAAA,EAAA,QAAQ,GAA4B;AACxE;;ACbA,IAAI,eAAe,GAAc;AAC/B,IAAA,IAAI,EAAE,IAAI;AACV,IAAA,OAAO,EAAE,IAAI;AACb,IAAA,KAAK,EAAE,IAAI;AACX,IAAA,WAAW,EAAE;CACd;AAED,IAAI,SAAS,GAAsC,EAAE;AAO/C,SAAU,oBAAoB,CAAC,QAAoC,EAAA;AACvE,IAAA,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;IACxB,QAAQ,CAAC,eAAe,CAAC;AACzB,IAAA,OAAO,MAAK;AACV,QAAA,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC;AACnD,KAAC;AACH;;SClBgB,OAAO,GAAA;AACrB,IAAA,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAY;AACpD,QAAA,IAAI,EAAE,IAAI;AACV,QAAA,OAAO,EAAE,IAAI;AACb,QAAA,KAAK,EAAE,IAAI;AACX,QAAA,WAAW,EAAE;AACd,KAAA,CAAC;IAEF,SAAS,CAAC,MAAK;AACb,QAAA,OAAO,oBAAoB,CAAC,YAAY,CAAC;KAC1C,EAAE,EAAE,CAAC;AAEN,IAAA,MAAM,IAAI,GAAG,iBAAiB,EAAE;IAEhC,MAAM,MAAM,GAAG,OAAO,KAAa,EAAE,QAAgB,KAAI;AACvD,QAAA,IAAI;YACF,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC;YAC9E,OAAO,cAAc,CAAC,IAAI;;QAC1B,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAI,KAAe,CAAC,OAAO,CAAC;;AAErE,KAAC;AAED,IAAA,MAAM,OAAO,GAAG,YAAW;AACzB,QAAA,IAAI;AACF,YAAA,MAAM,IAAI,CAAC,OAAO,EAAE;;QACpB,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAI,KAAe,CAAC,OAAO,CAAC;;AAEtE,KAAC;IAED,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,MAAM;QACN,OAAO;KACR;AACH;;ACxCA,MAAM,iBAAiB,GAAG,aAAa,CAA+B,IAAI,CAAC;AAEpE,MAAM,aAAa,GAAG,MAAK;AAChC,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC;;AAEjF,IAAA,OAAO,OAAO;AAChB,CAAC;AAOK,SAAU,wBAAwB,CAAC,EACvC,QAAQ,EACR,YAAY,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAC/C,EAAA;IAC9B,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAY,YAAY,CAAC;IAEnE,SAAS,CAAC,MAAK;AACb,QAAA,MAAM,IAAI,GAAG,iBAAiB,EAAE;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CACzC,CAAC,IAAI,KAAI;AACP,YAAA,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AACxE,SAAC,EACD,CAAC,KAAK,KAAI;AACR,YAAA,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AACxE,SAAC,CACF;AAED,QAAA,OAAO,MAAM,WAAW,EAAE;KAC3B,EAAE,EAAE,CAAC;AAIN,IAAA,MAAM,YAAY,GAA0B;QAC5C;KACC;AAED,IAAA,QACEC,GAAA,CAAC,iBAAiB,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,YAAY,EAAA,QAAA,EAC5C,QAAQ,EAAA,CACkB;AAEjC;;;;;;;;;;"}
|