@progressive-development/pd-spa-helper 0.7.0 → 0.7.2
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/helper/refresh-id-token.d.ts +5 -0
- package/dist/helper/refresh-id-token.d.ts.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/service-provider/firebase/auth.d.ts +4 -0
- package/dist/service-provider/firebase/auth.d.ts.map +1 -1
- package/dist/service-provider/service-provider-impl.d.ts +6 -1
- package/dist/service-provider/service-provider-impl.d.ts.map +1 -1
- package/dist/src/helper/refresh-id-token.js +25 -0
- package/dist/src/service-provider/firebase/auth.js +12 -0
- package/dist/src/service-provider/service-provider-impl.js +16 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"refresh-id-token.d.ts","sourceRoot":"","sources":["../../src/helper/refresh-id-token.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,4BAA4B,QAAa,QAAQ,OAAO,CAmBpE,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -14,7 +14,8 @@ export { DefaultStepAddress } from './defaultpage/default-step-address.js';
|
|
|
14
14
|
export { DefaultStepSummary } from './defaultpage/default-step-summary.js';
|
|
15
15
|
export type { OrderStep } from './defaultpage/default-step-summary.js';
|
|
16
16
|
export type { TabHeader } from './tmpown/pd-tab.js';
|
|
17
|
-
export { loginImpl, logoutImpl, getUser, isAuthenticatedImpl, callFunctionImpl, uploadFile, downloadFile, deleteFile, getStorageFileList, getStorageFile, getStorageConfiguration, activateCollectionListener, registerAppDeviceForNotification, getApp, getMessagingImpl } from './service-provider/service-provider-impl.js';
|
|
17
|
+
export { loginImpl, logoutImpl, getUser, isAuthenticatedImpl, callFunctionImpl, uploadFile, downloadFile, deleteFile, getStorageFileList, getStorageFile, getStorageConfiguration, activateCollectionListener, registerAppDeviceForNotification, getApp, getMessagingImpl, getUserIdToken, } from './service-provider/service-provider-impl.js';
|
|
18
|
+
export { refreshAndPersistUserIdToken } from './helper/refresh-id-token.js';
|
|
18
19
|
export { pdStore } from './store/mini-rx.store.js';
|
|
19
20
|
export { setRouteElement } from './store/spa-app-effects.js';
|
|
20
21
|
export * as pdAction from './store/spa-app-actions.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAErC,OAAO,EACL,WAAW,EACX,SAAS,GACV,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,UAAU,MAAM,8CAA8C,CAAC;AAC3E,OAAO,KAAK,WAAW,MAAM,sBAAsB,CAAC;AAEpD,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,wCAAwC,CAAC;AAC/G,YAAY,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAExE,OAAO,EAAC,kBAAkB,EAAC,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EAAC,aAAa,EAAC,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAC,iBAAiB,EAAC,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAC,kBAAkB,EAAC,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAC,kBAAkB,EAAC,MAAM,uCAAuC,CAAC;AACzE,YAAY,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAEvE,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,EACP,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,0BAA0B,EAC1B,gCAAgC,EAChC,MAAM,EACN,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAErC,OAAO,EACL,WAAW,EACX,SAAS,GACV,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,UAAU,MAAM,8CAA8C,CAAC;AAC3E,OAAO,KAAK,WAAW,MAAM,sBAAsB,CAAC;AAEpD,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAC,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,wCAAwC,CAAC;AAC/G,YAAY,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAExE,OAAO,EAAC,kBAAkB,EAAC,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EAAC,aAAa,EAAC,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAC,iBAAiB,EAAC,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAC,kBAAkB,EAAC,MAAM,uCAAuC,CAAC;AAEzE,OAAO,EAAC,kBAAkB,EAAC,MAAM,uCAAuC,CAAC;AACzE,YAAY,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAEvE,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,EACP,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,0BAA0B,EAC1B,gCAAgC,EAChC,MAAM,EACN,gBAAgB,EAChB,cAAc,GACf,MAAM,6CAA6C,CAAA;AAEpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAE5E,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAC;AACvD,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAE1D,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE1C,OAAO,EAAE,SAAS,IAAI,UAAU,EAAC,MAAM,0CAA0C,CAAA;AACjF,OAAO,EAAE,SAAS,IAAI,UAAU,EAAC,MAAM,0CAA0C,CAAA;AACjF,OAAO,EAAE,SAAS,IAAI,UAAU,EAAC,MAAM,0CAA0C,CAAA;AAEjF,eAAO,MAAM,kBAAkB,YAAY,GAAG,OAAM,MAAM,GAAG,cAAc,aAAY,OAAO,WAAU,OAAO,SAU9G,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -10,7 +10,8 @@ import { DefaultWizard } from "./src/defaultpage/default-wizard.js";
|
|
|
10
10
|
import { DefaultWizardStep } from "./src/defaultpage/default-wizard-step.js";
|
|
11
11
|
import { DefaultStepAddress } from "./src/defaultpage/default-step-address.js";
|
|
12
12
|
import { DefaultStepSummary } from "./src/defaultpage/default-step-summary.js";
|
|
13
|
-
import { activateCollectionListener, callFunctionImpl, deleteFile, downloadFile, getApp, getMessagingImpl, getStorageConfiguration, getStorageFile, getStorageFileList, getUser, isAuthenticatedImpl, loginImpl, logoutImpl, registerAppDeviceForNotification, uploadFile } from "./src/service-provider/service-provider-impl.js";
|
|
13
|
+
import { activateCollectionListener, callFunctionImpl, deleteFile, downloadFile, getApp, getMessagingImpl, getStorageConfiguration, getStorageFile, getStorageFileList, getUser, getUserIdToken, isAuthenticatedImpl, loginImpl, logoutImpl, registerAppDeviceForNotification, uploadFile } from "./src/service-provider/service-provider-impl.js";
|
|
14
|
+
import { refreshAndPersistUserIdToken } from "./src/helper/refresh-id-token.js";
|
|
14
15
|
import { pdStore } from "./src/store/mini-rx.store.js";
|
|
15
16
|
import { setRouteElement } from "./src/store/spa-app-effects.js";
|
|
16
17
|
import * as spaAppActions from "./src/store/spa-app-actions.js";
|
|
@@ -56,6 +57,7 @@ export {
|
|
|
56
57
|
getStorageFile,
|
|
57
58
|
getStorageFileList,
|
|
58
59
|
getUser,
|
|
60
|
+
getUserIdToken,
|
|
59
61
|
isAuthenticatedImpl,
|
|
60
62
|
loginImpl,
|
|
61
63
|
logoutImpl,
|
|
@@ -66,6 +68,7 @@ export {
|
|
|
66
68
|
serviceProviderModel as pdSpaModel,
|
|
67
69
|
spaModel as pdSpaModel2,
|
|
68
70
|
pdStore,
|
|
71
|
+
refreshAndPersistUserIdToken,
|
|
69
72
|
registerAppDeviceForNotification,
|
|
70
73
|
setRouteElement,
|
|
71
74
|
startInit,
|
|
@@ -9,6 +9,10 @@ export declare const initAuth: (appParam: FirebaseApp) => void;
|
|
|
9
9
|
export declare const logout: () => Promise<boolean>;
|
|
10
10
|
export declare const isAuthenticated: () => boolean;
|
|
11
11
|
export declare const getAuthUser: () => unknown;
|
|
12
|
+
export declare const getFirebaseUserIdToken: (refresh: boolean) => Promise<{
|
|
13
|
+
userToken: string;
|
|
14
|
+
userName: string;
|
|
15
|
+
} | undefined>;
|
|
12
16
|
export declare const authStateChanged: (callback: Function) => void;
|
|
13
17
|
export declare const authIdTokenStateChanged: (callback: Function) => void;
|
|
14
18
|
export declare const login: (user: string, sec: string) => Promise<User>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/service-provider/firebase/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAA4F,IAAI,EAAE,MAAM,eAAe,CAAC;AAI/H;;;;GAIG;AACH,eAAO,MAAM,QAAQ,aAAc,WAAW,SAG7C,CAAA;AAED,eAAO,MAAM,MAAM,QAAa,QAAQ,OAAO,CAU9C,CAAC;AAEF,eAAO,MAAM,eAAe,QAAO,OAOlC,CAAC;AAEF,eAAO,MAAM,WAAW,QAAO,OAK9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,aAAc,QAAQ,SAiClD,CAAA;AAED,eAAO,MAAM,uBAAuB,aAAc,QAAQ,SAEzD,CAAA;AAED,eAAO,MAAM,KAAK,SAAe,MAAM,OAAM,MAAM,KAAG,QAAQ,IAAI,CAMjE,CAAA"}
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/service-provider/firebase/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAA4F,IAAI,EAAE,MAAM,eAAe,CAAC;AAI/H;;;;GAIG;AACH,eAAO,MAAM,QAAQ,aAAc,WAAW,SAG7C,CAAA;AAED,eAAO,MAAM,MAAM,QAAa,QAAQ,OAAO,CAU9C,CAAC;AAEF,eAAO,MAAM,eAAe,QAAO,OAOlC,CAAC;AAEF,eAAO,MAAM,WAAW,QAAO,OAK9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,YACxB,OAAO,KACf,QAAQ;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,SAAS,CAUZ,CAAC;AAGF,eAAO,MAAM,gBAAgB,aAAc,QAAQ,SAiClD,CAAA;AAED,eAAO,MAAM,uBAAuB,aAAc,QAAQ,SAEzD,CAAA;AAED,eAAO,MAAM,KAAK,SAAe,MAAM,OAAM,MAAM,KAAG,QAAQ,IAAI,CAMjE,CAAA"}
|
|
@@ -17,8 +17,13 @@ export declare const getStorageFile: (storageName: string, refKey: string, stora
|
|
|
17
17
|
export declare const downloadFile: (file: StorageDocument) => Promise<unknown>;
|
|
18
18
|
export declare const deleteFile: (file: StorageDocument) => Promise<unknown>;
|
|
19
19
|
export declare const getStorageConfiguration: () => FileStorageConfig | undefined;
|
|
20
|
-
export declare const activateCollectionListener: (callback: Function, col: string, constraints?: CollectionContraint[]) => import('@firebase/firestore').Unsubscribe
|
|
20
|
+
export declare const activateCollectionListener: (callback: Function, col: string, constraints?: CollectionContraint[]) => "" | import('@firebase/firestore').Unsubscribe;
|
|
21
21
|
export declare const registerAppDeviceForNotification: (registration: ServiceWorkerRegistration) => Promise<void>;
|
|
22
22
|
export declare const getMessagingImpl: () => import('@firebase/messaging').Messaging | undefined;
|
|
23
|
+
export declare const getUserIdToken: (refresh: boolean) => Promise<{
|
|
24
|
+
userToken: string;
|
|
25
|
+
userName: string;
|
|
26
|
+
appName: string;
|
|
27
|
+
} | undefined>;
|
|
23
28
|
export declare const getApp: () => FirebaseApp;
|
|
24
29
|
//# sourceMappingURL=service-provider-impl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-provider-impl.d.ts","sourceRoot":"","sources":["../../src/service-provider/service-provider-impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,cAAc,CAAC;AAI1D,OAAO,EACL,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,cAAc,EAC5F,4BAA4B,EAAE,eAAe,EAAE,UAAU,EAC1D,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAqBvE,eAAO,MAAM,kBAAkB,mBAAoB,4BAA4B,SAE9E,CAAA;AAED,eAAO,MAAM,cAAc,oBAAqB,qBAAqB,SAEpE,CAAA;AAoCD,eAAO,MAAM,WAAW,WAAY,gBAAgB,SAenD,CAAA;AAKD,eAAO,MAAM,gBAAgB,QAAe,kBAAkB,iBAAiB,GAAG,KAAG,QAAQ,cAAc,CAoB1G,CAAA;AASD,eAAO,MAAM,oBAAoB,aACrB,QAAQ,SASnB,CAAA;AAED,eAAO,MAAM,mBAAmB,eAQ/B,CAAA;AAED,eAAO,MAAO,kCAAkC,cAAe,MAAM,KAAG,QAAQ,OAAO,CAMtF,CAAA;AAED,eAAO,MAAM,SAAS,SAAU,MAAM,OAAO,MAAM,qBAkBlD,CAAA;AAED,eAAO,MAAM,UAAU,wBAQtB,CAAC;AAGF,eAAO,MAAM,OAAO,eAQnB,CAAA;AAKD,eAAO,MAAM,UAAU,SAAU,UAAU,KAAG,QAAQ,OAAO,CAQ5D,CAAA;AAED,eAAO,MAAM,kBAAkB,gBAChB,MAAM,UACX,MAAM,cACF,MAAM,oBACD,OAAO,KACvB,QAAQ,eAAe,EAAE,CAQ3B,CAAA;AAED,eAAO,MAAM,cAAc,gBACZ,MAAM,UACZ,MAAM,cACD,MAAM,mBACD,OAAO,KACvB,QAAQ,eAAe,CAOzB,CAAA;AAED,eAAO,MAAM,YAAY,SAAU,eAAe,KAAG,QAAQ,OAAO,CAQnE,CAAA;AAED,eAAO,MAAM,UAAU,SAAU,eAAe,KAAG,QAAQ,OAAO,CAKjE,CAAA;AAED,eAAO,MAAM,uBAAuB,QAAO,iBAAiB,GAAG,SAK9D,CAAA;AAKD,eAAO,MAAM,0BAA0B,aAC3B,QAAQ,OAAO,MAAM,gBAAe,mBAAmB,EAAE,mDAUpE,CAAC;AAMF,eAAO,MAAM,gCAAgC,iBAC7B,yBAAyB,kBAUxC,CAAC;AAEF,eAAO,MAAM,gBAAgB,2DAS5B,CAAC;AAEF,eAAO,MAAM,MAAM,mBAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"service-provider-impl.d.ts","sourceRoot":"","sources":["../../src/service-provider/service-provider-impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,cAAc,CAAC;AAI1D,OAAO,EACL,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,cAAc,EAC5F,4BAA4B,EAAE,eAAe,EAAE,UAAU,EAC1D,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAqBvE,eAAO,MAAM,kBAAkB,mBAAoB,4BAA4B,SAE9E,CAAA;AAED,eAAO,MAAM,cAAc,oBAAqB,qBAAqB,SAEpE,CAAA;AAoCD,eAAO,MAAM,WAAW,WAAY,gBAAgB,SAenD,CAAA;AAKD,eAAO,MAAM,gBAAgB,QAAe,kBAAkB,iBAAiB,GAAG,KAAG,QAAQ,cAAc,CAoB1G,CAAA;AASD,eAAO,MAAM,oBAAoB,aACrB,QAAQ,SASnB,CAAA;AAED,eAAO,MAAM,mBAAmB,eAQ/B,CAAA;AAED,eAAO,MAAO,kCAAkC,cAAe,MAAM,KAAG,QAAQ,OAAO,CAMtF,CAAA;AAED,eAAO,MAAM,SAAS,SAAU,MAAM,OAAO,MAAM,qBAkBlD,CAAA;AAED,eAAO,MAAM,UAAU,wBAQtB,CAAC;AAGF,eAAO,MAAM,OAAO,eAQnB,CAAA;AAKD,eAAO,MAAM,UAAU,SAAU,UAAU,KAAG,QAAQ,OAAO,CAQ5D,CAAA;AAED,eAAO,MAAM,kBAAkB,gBAChB,MAAM,UACX,MAAM,cACF,MAAM,oBACD,OAAO,KACvB,QAAQ,eAAe,EAAE,CAQ3B,CAAA;AAED,eAAO,MAAM,cAAc,gBACZ,MAAM,UACZ,MAAM,cACD,MAAM,mBACD,OAAO,KACvB,QAAQ,eAAe,CAOzB,CAAA;AAED,eAAO,MAAM,YAAY,SAAU,eAAe,KAAG,QAAQ,OAAO,CAQnE,CAAA;AAED,eAAO,MAAM,UAAU,SAAU,eAAe,KAAG,QAAQ,OAAO,CAKjE,CAAA;AAED,eAAO,MAAM,uBAAuB,QAAO,iBAAiB,GAAG,SAK9D,CAAA;AAKD,eAAO,MAAM,0BAA0B,aAC3B,QAAQ,OAAO,MAAM,gBAAe,mBAAmB,EAAE,mDAUpE,CAAC;AAMF,eAAO,MAAM,gCAAgC,iBAC7B,yBAAyB,kBAUxC,CAAC;AAEF,eAAO,MAAM,gBAAgB,2DAS5B,CAAC;AAEF,eAAO,MAAM,cAAc,YAAmB,OAAO,KAAG,QAAQ;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,SAAS,CAaZ,CAAC;AAEF,eAAO,MAAM,MAAM,mBAAY,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { getUserIdToken } from "../service-provider/service-provider-impl.js";
|
|
2
|
+
import { update, USER_COLLECTION } from "../store/indexDB.js";
|
|
3
|
+
const refreshAndPersistUserIdToken = async () => {
|
|
4
|
+
try {
|
|
5
|
+
const userResult = await getUserIdToken(true);
|
|
6
|
+
const { userName, userToken, appName } = userResult || {};
|
|
7
|
+
if (!userToken) {
|
|
8
|
+
console.warn("Token refresh skipped: no valid userToken returned.");
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
await update(USER_COLLECTION, {
|
|
12
|
+
id: appName,
|
|
13
|
+
userNameToken: userName,
|
|
14
|
+
userIdToken: userToken
|
|
15
|
+
});
|
|
16
|
+
console.log(`[TokenRefresh] ID Token refreshed & saved to local DB for app: ${appName}`);
|
|
17
|
+
return true;
|
|
18
|
+
} catch (error) {
|
|
19
|
+
console.error(`[TokenRefresh] Failed to refresh and persist token:`, error);
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
export {
|
|
24
|
+
refreshAndPersistUserIdToken
|
|
25
|
+
};
|
|
@@ -29,6 +29,17 @@ const getAuthUser = () => {
|
|
|
29
29
|
}
|
|
30
30
|
return auth.currentUser;
|
|
31
31
|
};
|
|
32
|
+
const getFirebaseUserIdToken = async (refresh) => {
|
|
33
|
+
if (!auth) {
|
|
34
|
+
throw new Error("isAuthenticated: Auth was not initialized");
|
|
35
|
+
}
|
|
36
|
+
const user = auth.currentUser;
|
|
37
|
+
const newIdToken = await (user == null ? void 0 : user.getIdToken(refresh));
|
|
38
|
+
return newIdToken ? {
|
|
39
|
+
userToken: newIdToken,
|
|
40
|
+
userName: (user == null ? void 0 : user.displayName) || ""
|
|
41
|
+
} : void 0;
|
|
42
|
+
};
|
|
32
43
|
const authStateChanged = (callback) => {
|
|
33
44
|
if (!auth) {
|
|
34
45
|
throw new Error("authStateChanged: Auth was not initialized");
|
|
@@ -49,6 +60,7 @@ export {
|
|
|
49
60
|
authIdTokenStateChanged,
|
|
50
61
|
authStateChanged,
|
|
51
62
|
getAuthUser,
|
|
63
|
+
getFirebaseUserIdToken,
|
|
52
64
|
initAuth,
|
|
53
65
|
isAuthenticated,
|
|
54
66
|
login,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { initializeApp } from "firebase/app";
|
|
2
|
-
import { initAuth, authStateChanged, isAuthenticated, login, logout, getAuthUser } from "./firebase/auth.js";
|
|
2
|
+
import { initAuth, authStateChanged, isAuthenticated, login, logout, getAuthUser, getFirebaseUserIdToken } from "./firebase/auth.js";
|
|
3
3
|
import { authStateChangedMock, isAuthenticatedMock, loginMock, logoutMock, getAuthUserMock } from "./mock/auth.js";
|
|
4
4
|
import { initFunctions, callFunction } from "./firebase/functions-client.js";
|
|
5
5
|
import { initFirestore, getFirebaseCollectionListener } from "./firebase/firestore-client.js";
|
|
@@ -205,6 +205,20 @@ const getMessagingImpl = () => {
|
|
|
205
205
|
}
|
|
206
206
|
return throwUndefinedProviderError();
|
|
207
207
|
};
|
|
208
|
+
const getUserIdToken = async (refresh) => {
|
|
209
|
+
if (provider === "firebase") {
|
|
210
|
+
const userResult = await getFirebaseUserIdToken(refresh);
|
|
211
|
+
return userResult ? {
|
|
212
|
+
...userResult,
|
|
213
|
+
appName: app.name
|
|
214
|
+
} : void 0;
|
|
215
|
+
}
|
|
216
|
+
if (provider === "mock") {
|
|
217
|
+
console.log("getUserIdToken not implemented for MOCK, do noting");
|
|
218
|
+
return void 0;
|
|
219
|
+
}
|
|
220
|
+
return throwUndefinedProviderError();
|
|
221
|
+
};
|
|
208
222
|
const getApp = () => app;
|
|
209
223
|
export {
|
|
210
224
|
activateCollectionListener,
|
|
@@ -218,6 +232,7 @@ export {
|
|
|
218
232
|
getStorageFile,
|
|
219
233
|
getStorageFileList,
|
|
220
234
|
getUser,
|
|
235
|
+
getUserIdToken,
|
|
221
236
|
initAppImpl,
|
|
222
237
|
isAuthenticatedImpl,
|
|
223
238
|
isAuthenticatedWithSessionRedirect,
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Webcomponent pd-spa-helper following open-wc recommendations",
|
|
4
4
|
"author": "PD Progressive Development",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
|
-
"version": "0.7.
|
|
6
|
+
"version": "0.7.2",
|
|
7
7
|
"main": "./dist/index.js",
|
|
8
8
|
"module": "./dist/index.js",
|
|
9
9
|
"types": "./dist/index.d.ts",
|