@tern-secure/nextjs 1.4.9 → 1.5.1

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.
@@ -0,0 +1 @@
1
+ export default function ClientProvider(): import("react/jsx-runtime").JSX.Element | null;
@@ -1,5 +1,7 @@
1
1
  import React from 'react';
2
- import { AuthState, TernSecureProviderProps } from '../../../types/ternsecure';
3
- export declare const TernSecureClientProvider: React.FC<TernSecureProviderProps & {
4
- initialState: AuthState;
5
- }>;
2
+ import { AuthState } from '../../../types/ternsecure';
3
+ interface TernSecureClientProviderProps {
4
+ authState: AuthState;
5
+ }
6
+ export declare const TernSecureClientProvider: React.FC<TernSecureClientProviderProps>;
7
+ export {};
@@ -1,3 +1,9 @@
1
- import { TernSecureContextType } from '../../../types/ternsecure';
1
+ import { AuthState } from '../../../types/ternsecure';
2
+ import { Auth } from 'firebase/auth';
3
+ interface TernSecureContextType {
4
+ authState: AuthState;
5
+ auth: Auth;
6
+ }
2
7
  export declare const TernSecureContext: import("react").Context<TernSecureContextType | null>;
3
8
  export declare const useTernSecure: () => TernSecureContextType;
9
+ export {};
package/dist/index.js CHANGED
@@ -1,12 +1,10 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var dynamic = require('next/dynamic');
5
- var react = require('react');
6
- var app$1 = require('firebase/app');
7
- var auth$1 = require('firebase/auth');
8
- var firestore$1 = require('firebase/firestore');
9
- var storage$1 = require('firebase/storage');
1
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
+ import dynamic from 'next/dynamic';
3
+ import React, { createContext, useEffect } from 'react';
4
+ import { getApps, initializeApp } from 'firebase/app';
5
+ import { getAuth } from 'firebase/auth';
6
+ import { getFirestore } from 'firebase/firestore';
7
+ import { getStorage } from 'firebase/storage';
10
8
 
11
9
  function getEnvVariable(name) {
12
10
  const value = process.env[`NEXT_PUBLIC_FIREBASE_${name}`];
@@ -45,10 +43,10 @@ function initializeTernSecure() {
45
43
  throw new TernSecureError(ERRORS.SERVER_SIDE_INITIALIZATION);
46
44
  }
47
45
  if (!app) {
48
- app = app$1.getApps().length ? app$1.getApps()[0] : app$1.initializeApp(loadFireConfig);
49
- auth = auth$1.getAuth(app);
50
- firestore = firestore$1.getFirestore(app);
51
- storage = storage$1.getStorage(app);
46
+ app = getApps().length ? getApps()[0] : initializeApp(loadFireConfig);
47
+ auth = getAuth(app);
48
+ firestore = getFirestore(app);
49
+ storage = getStorage(app);
52
50
  }
53
51
  return app;
54
52
  }
@@ -68,22 +66,26 @@ const getTernSecureStorage = () => {
68
66
  return storage;
69
67
  };
70
68
 
71
- const TernSecureContext = react.createContext(null);
69
+ const TernSecureContext = createContext(null);
72
70
 
73
- const TernSecureClientProvider$2 = dynamic(() => Promise.resolve().then(function () { return TernSecureClientProvider$1; }).then((mod) => mod.TernSecureClientProvider), { ssr: false });
71
+ const ClientProvider$2 = dynamic(() => Promise.resolve().then(function () { return ClientProvider$1; }), { ssr: false });
74
72
  function TernSecureProvider({ children }) {
75
- const initialState = {
73
+ return (jsxs(Fragment, { children: [children, jsx(ClientProvider$2, {})] }));
74
+ }
75
+
76
+ const TernSecureClientProvider = ({ authState }) => {
77
+ const auth = getTernSecureAuth();
78
+ return (jsx(TernSecureContext.Provider, { value: { authState, auth } }));
79
+ };
80
+
81
+ function ClientProvider() {
82
+ const [authState, setAuthState] = React.useState({
76
83
  user: null,
77
84
  loading: true,
78
85
  error: null,
79
86
  initialized: false
80
- };
81
- return jsxRuntime.jsx(TernSecureClientProvider$2, { initialState: initialState, children: children });
82
- }
83
-
84
- const TernSecureClientProvider = ({ children, initialState }) => {
85
- const [authState, setAuthState] = react.useState(initialState);
86
- react.useEffect(() => {
87
+ });
88
+ useEffect(() => {
87
89
  const auth = getTernSecureAuth();
88
90
  const unsubscribe = auth.onAuthStateChanged((user) => {
89
91
  setAuthState({ user, loading: false, error: null, initialized: true });
@@ -92,18 +94,16 @@ const TernSecureClientProvider = ({ children, initialState }) => {
92
94
  });
93
95
  return () => unsubscribe();
94
96
  }, []);
95
- return (jsxRuntime.jsx(TernSecureContext.Provider, { value: { authState }, children: children }));
96
- };
97
+ if (!authState.initialized) {
98
+ return null;
99
+ }
100
+ return (jsx(TernSecureClientProvider, { authState: authState }));
101
+ }
97
102
 
98
- var TernSecureClientProvider$1 = /*#__PURE__*/Object.freeze({
103
+ var ClientProvider$1 = /*#__PURE__*/Object.freeze({
99
104
  __proto__: null,
100
- TernSecureClientProvider: TernSecureClientProvider
105
+ default: ClientProvider
101
106
  });
102
107
 
103
- exports.TernSecureProvider = TernSecureProvider;
104
- exports.getTernSecureAuth = getTernSecureAuth;
105
- exports.getTernSecureFirestore = getTernSecureFirestore;
106
- exports.getTernSecureStorage = getTernSecureStorage;
107
- exports.initializeTernSecure = initializeTernSecure;
108
- exports.loadFireConfig = loadFireConfig;
108
+ export { TernSecureProvider, getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage, initializeTernSecure, loadFireConfig };
109
109
  //# 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/client/providers/ternSecureContext.ts","../src/app-router/server/providers/TernSecureServerProvider.tsx","../src/app-router/client/providers/TernSecureClientProvider.tsx"],"sourcesContent":[null,null,null,null,null,null],"names":["getApps","initializeApp","getAuth","getFirestore","getStorage","createContext","TernSecureClientProvider","_jsx","useState","useEffect"],"mappings":"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"}
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/client/providers/ternSecureContext.ts","../src/app-router/server/providers/TernSecureServerProvider.tsx","../src/app-router/client/providers/TernSecureClientProvider.tsx","../src/app-router/client/ClientProvider.tsx"],"sourcesContent":[null,null,null,null,null,null,null],"names":["ClientProvider","_jsxs","_jsx"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tern-secure/nextjs",
3
- "version": "1.4.9",
3
+ "version": "1.5.1",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org/"