@tern-secure/nextjs 1.7.5 → 1.7.6

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,3 @@
1
1
  import { TernSecureConfig } from "../../types/ternsecure";
2
- export declare const loadFireConfig: TernSecureConfig;
2
+ export declare const loadFireConfig: () => TernSecureConfig;
3
+ export declare const validateConfig: (config: TernSecureConfig) => TernSecureConfig;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage, loadFireConfig } from "./app-router/client";
1
+ import { getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage } from "./app-router/client";
2
2
  import { TernSecureProvider } from "./app-router/server/providers/TernSecureServerProvider";
3
3
  import { useAuth } from "./hooks/useAuth";
4
- export { TernSecureProvider, useAuth, loadFireConfig, getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage };
4
+ export { TernSecureProvider, useAuth, getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage };
package/dist/index.js CHANGED
@@ -5,20 +5,22 @@ import { getStorage } from 'firebase/storage';
5
5
  import { jsx, Fragment } from 'react/jsx-runtime';
6
6
  import { useState, useEffect } from 'react';
7
7
 
8
- function getEnvVariable(name) {
9
- const value = process.env[`NEXT_PUBLIC_FIREBASE_${name}`];
10
- if (!value) {
11
- throw new Error(`Missing environment variable: NEXT_PUBLIC_FIREBASE_${name}`);
12
- }
13
- return value;
14
- }
15
- const loadFireConfig = {
16
- apiKey: getEnvVariable('API_KEY'),
17
- authDomain: getEnvVariable('AUTH_DOMAIN'),
18
- projectId: getEnvVariable('PROJECT_ID'),
19
- storageBucket: getEnvVariable('STORAGE_BUCKET'),
20
- messagingSenderId: getEnvVariable('MESSAGING_SENDER_ID'),
21
- appId: getEnvVariable('APP_ID'),
8
+ const loadFireConfig = () => ({
9
+ apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY,
10
+ authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN,
11
+ projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID,
12
+ storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET,
13
+ messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID,
14
+ appId: process.env.NEXT_PUBLIC_FIREBASE_APP_ID,
15
+ measurementId: process.env.NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID,
16
+ });
17
+ const validateConfig = (config) => {
18
+ Object.entries(config).forEach(([key, value]) => {
19
+ if (!value) {
20
+ throw new Error(`Missing environment variable: NEXT_PUBLIC_FIREBASE_${key.toUpperCase()}`);
21
+ }
22
+ });
23
+ return config;
22
24
  };
23
25
 
24
26
  const ERRORS = {
@@ -42,7 +44,8 @@ const initialize = () => {
42
44
  throw new TernSecureError(ERRORS.SERVER_SIDE_INITIALIZATION);
43
45
  }
44
46
  if (!app) {
45
- app = getApps().length ? getApps()[0] : initializeApp(loadFireConfig);
47
+ const config = validateConfig(loadFireConfig());
48
+ app = getApps().length ? getApps()[0] : initializeApp(config);
46
49
  auth = getAuth(app);
47
50
  // Set persistence after initializing auth
48
51
  setPersistence(auth, browserSessionPersistence);
@@ -139,5 +142,5 @@ function useAuth() {
139
142
  };
140
143
  }
141
144
 
142
- export { TernSecureProvider, getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage, loadFireConfig, useAuth };
145
+ export { TernSecureProvider, getTernSecureAuth, getTernSecureFirestore, getTernSecureStorage, useAuth };
143
146
  //# 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/providers/TernSecureServerProvider.tsx","../src/app-router/client/ClientProvider.tsx","../src/hooks/useAuth.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["_jsx","_Fragment"],"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/server/providers/TernSecureServerProvider.tsx","../src/app-router/client/ClientProvider.tsx","../src/hooks/useAuth.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["_jsx","_Fragment"],"mappings":"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"}
@@ -7,7 +7,7 @@ export interface TernSecureConfig {
7
7
  storageBucket: string;
8
8
  messagingSenderId: string;
9
9
  appId: string;
10
- measurementId?: string;
10
+ measurementId: string;
11
11
  }
12
12
  export interface TernSecureOptions {
13
13
  environment?: 'development' | 'production';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tern-secure/nextjs",
3
- "version": "1.7.5",
3
+ "version": "1.7.6",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org/"