@progressive-development/pd-spa-helper 0.9.0 → 0.9.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/auth/AuthController.d.ts +37 -0
- package/dist/auth/AuthController.d.ts.map +1 -0
- package/dist/auth/AuthController.js +65 -0
- package/dist/auth/auth-directives.d.ts +59 -0
- package/dist/auth/auth-directives.d.ts.map +1 -0
- package/dist/auth/auth-directives.js +81 -0
- package/dist/auth/auth-utils.d.ts +45 -0
- package/dist/auth/auth-utils.d.ts.map +1 -0
- package/dist/auth/auth-utils.js +42 -0
- package/dist/auth/index.d.ts +7 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/components/default-login/DefaultLogin.d.ts +15 -0
- package/dist/components/default-login/DefaultLogin.d.ts.map +1 -0
- package/dist/components/default-login/DefaultLogin.js +120 -0
- package/dist/components/default-not-found/DefaultNotFound.d.ts +6 -0
- package/dist/components/default-not-found/DefaultNotFound.d.ts.map +1 -0
- package/dist/{defaultpage/default-not-found.js → components/default-not-found/DefaultNotFound.js} +10 -3
- package/dist/components/pd-section-page/PdSectionPage.d.ts +55 -0
- package/dist/components/pd-section-page/PdSectionPage.d.ts.map +1 -0
- package/dist/components/pd-section-page/PdSectionPage.js +37 -0
- package/dist/components/pd-spa-helper/PdSpaHelper.d.ts +196 -0
- package/dist/components/pd-spa-helper/PdSpaHelper.d.ts.map +1 -0
- package/dist/components/pd-spa-helper/PdSpaHelper.js +603 -0
- package/dist/components/pd-spa-helper/controllers/ScrollController.d.ts +77 -0
- package/dist/components/pd-spa-helper/controllers/ScrollController.d.ts.map +1 -0
- package/dist/components/pd-spa-helper/controllers/ScrollController.js +102 -0
- package/dist/components/pd-spa-helper/spa-config.d.ts +95 -0
- package/dist/components/pd-spa-helper/spa-config.d.ts.map +1 -0
- package/dist/components/pd-spa-helper/spa-config.js +175 -0
- package/dist/components/pd-spa-helper/spa-events.d.ts +132 -0
- package/dist/components/pd-spa-helper/spa-events.d.ts.map +1 -0
- package/dist/components/pd-spa-helper/spa-events.js +18 -0
- package/dist/db/index.d.ts +3 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/{store → db}/indexDB.d.ts +9 -9
- package/dist/db/indexDB.d.ts.map +1 -0
- package/dist/{store → db}/indexDB.js +14 -12
- package/dist/generated/locale-wrapper/be-wrapper.d.ts +49 -14
- package/dist/generated/locale-wrapper/be-wrapper.d.ts.map +1 -1
- package/dist/generated/locale-wrapper/de-wrapper.d.ts +49 -14
- package/dist/generated/locale-wrapper/de-wrapper.d.ts.map +1 -1
- package/dist/generated/locale-wrapper/en-wrapper.d.ts +49 -14
- package/dist/generated/locale-wrapper/en-wrapper.d.ts.map +1 -1
- package/dist/generated/locales/be.d.ts +1 -15
- package/dist/generated/locales/be.d.ts.map +1 -1
- package/dist/generated/locales/be.js +1 -15
- package/dist/generated/locales/de.d.ts +1 -15
- package/dist/generated/locales/de.d.ts.map +1 -1
- package/dist/generated/locales/de.js +1 -15
- package/dist/generated/locales/en.d.ts +1 -15
- package/dist/generated/locales/en.d.ts.map +1 -1
- package/dist/generated/locales/en.js +1 -15
- package/dist/helper/logger.d.ts +11 -12
- package/dist/helper/logger.d.ts.map +1 -1
- package/dist/helper/logger.js +10 -49
- package/dist/helper/refresh-id-token.d.ts.map +1 -1
- package/dist/helper/refresh-id-token.js +6 -4
- package/dist/index.d.ts +31 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +27 -50
- package/dist/model/index.d.ts +4 -0
- package/dist/model/index.d.ts.map +1 -0
- package/dist/model/spa-model.d.ts +14 -15
- package/dist/model/spa-model.d.ts.map +1 -1
- package/dist/router/PdRouterService.d.ts +4 -1
- package/dist/router/PdRouterService.d.ts.map +1 -1
- package/dist/router/PdRouterService.js +40 -16
- package/dist/router/index.d.ts +3 -0
- package/dist/router/index.d.ts.map +1 -0
- package/dist/screen-size/ScreenSizeController.d.ts +34 -0
- package/dist/screen-size/ScreenSizeController.d.ts.map +1 -0
- package/dist/screen-size/ScreenSizeController.js +58 -0
- package/dist/screen-size/ScreenSizeService.d.ts +49 -0
- package/dist/screen-size/ScreenSizeService.d.ts.map +1 -0
- package/dist/screen-size/ScreenSizeService.js +107 -0
- package/dist/screen-size/index.d.ts +13 -0
- package/dist/screen-size/index.d.ts.map +1 -0
- package/dist/screen-size/responsive-directives.d.ts +59 -0
- package/dist/screen-size/responsive-directives.d.ts.map +1 -0
- package/dist/screen-size/responsive-directives.js +71 -0
- package/dist/screen-size/types.d.ts +44 -0
- package/dist/screen-size/types.d.ts.map +1 -0
- package/dist/service-provider/ServiceRegistry.d.ts +67 -0
- package/dist/service-provider/ServiceRegistry.d.ts.map +1 -0
- package/dist/service-provider/ServiceRegistry.js +76 -0
- package/dist/service-provider/function-utils.d.ts +55 -0
- package/dist/service-provider/function-utils.d.ts.map +1 -0
- package/dist/service-provider/function-utils.js +30 -0
- package/dist/service-provider/index.d.ts +10 -0
- package/dist/service-provider/index.d.ts.map +1 -0
- package/dist/service-provider/interfaces/IAuthProvider.d.ts +68 -0
- package/dist/service-provider/interfaces/IAuthProvider.d.ts.map +1 -0
- package/dist/service-provider/interfaces/IDatabaseProvider.d.ts +75 -0
- package/dist/service-provider/interfaces/IDatabaseProvider.d.ts.map +1 -0
- package/dist/service-provider/interfaces/IFunctionProvider.d.ts +49 -0
- package/dist/service-provider/interfaces/IFunctionProvider.d.ts.map +1 -0
- package/dist/service-provider/interfaces/IStorageProvider.d.ts +118 -0
- package/dist/service-provider/interfaces/IStorageProvider.d.ts.map +1 -0
- package/dist/service-provider/interfaces/ServiceProvider.d.ts +24 -0
- package/dist/service-provider/interfaces/ServiceProvider.d.ts.map +1 -0
- package/dist/service-provider/interfaces/common.d.ts +5 -0
- package/dist/service-provider/interfaces/common.d.ts.map +1 -0
- package/dist/service-provider/service-provider-model.d.ts +55 -10
- package/dist/service-provider/service-provider-model.d.ts.map +1 -1
- package/dist/services/fire-once-service.d.ts +35 -0
- package/dist/services/fire-once-service.d.ts.map +1 -0
- package/dist/services/fire-once-service.js +61 -0
- package/dist/store/async-action-effects.d.ts +179 -0
- package/dist/store/async-action-effects.d.ts.map +1 -0
- package/dist/store/async-action-effects.js +98 -0
- package/dist/store/async-action-utils.d.ts +154 -0
- package/dist/store/async-action-utils.d.ts.map +1 -0
- package/dist/store/async-action-utils.js +42 -0
- package/dist/store/index.d.ts +9 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/mini-rx.store.d.ts.map +1 -1
- package/dist/store/mini-rx.store.js +1 -3
- package/dist/store/spa-app-actions.d.ts +5 -22
- package/dist/store/spa-app-actions.d.ts.map +1 -1
- package/dist/store/spa-app-actions.js +4 -8
- package/dist/store/spa-app-effects.d.ts +0 -17
- package/dist/store/spa-app-effects.d.ts.map +1 -1
- package/dist/store/spa-app-effects.js +2 -40
- package/dist/store/spa-app-reducer.d.ts +5 -10
- package/dist/store/spa-app-reducer.d.ts.map +1 -1
- package/dist/store/spa-app-reducer.js +13 -8
- package/dist/store/spa-app-selector.d.ts +2 -2
- package/dist/store/spa-app-selector.d.ts.map +1 -1
- package/dist/store/spa-app-selector.js +1 -1
- package/dist/stories/introduction.stories.d.ts +11 -0
- package/dist/stories/introduction.stories.d.ts.map +1 -0
- package/package.json +14 -9
- package/dist/PdSpaHelper.d.ts +0 -83
- package/dist/PdSpaHelper.d.ts.map +0 -1
- package/dist/PdSpaHelper.js +0 -492
- package/dist/defaultpage/default-confirm-popup.d.ts +0 -19
- package/dist/defaultpage/default-confirm-popup.d.ts.map +0 -1
- package/dist/defaultpage/default-confirm-popup.js +0 -70
- package/dist/defaultpage/default-dialog-popup.d.ts +0 -19
- package/dist/defaultpage/default-dialog-popup.d.ts.map +0 -1
- package/dist/defaultpage/default-dialog-popup.js +0 -103
- package/dist/defaultpage/default-login.d.ts +0 -6
- package/dist/defaultpage/default-login.d.ts.map +0 -1
- package/dist/defaultpage/default-login.js +0 -33
- package/dist/defaultpage/default-not-found.d.ts +0 -6
- package/dist/defaultpage/default-not-found.d.ts.map +0 -1
- package/dist/defaultpage/default-popup.d.ts +0 -7
- package/dist/defaultpage/default-popup.d.ts.map +0 -1
- package/dist/defaultpage/default-popup.js +0 -24
- package/dist/defaultpage/default-step-address.d.ts +0 -14
- package/dist/defaultpage/default-step-address.d.ts.map +0 -1
- package/dist/defaultpage/default-step-address.js +0 -77
- package/dist/defaultpage/default-step-summary.d.ts +0 -28
- package/dist/defaultpage/default-step-summary.d.ts.map +0 -1
- package/dist/defaultpage/default-step-summary.js +0 -67
- package/dist/defaultpage/default-view-page.d.ts +0 -10
- package/dist/defaultpage/default-view-page.d.ts.map +0 -1
- package/dist/defaultpage/default-view-page.js +0 -70
- package/dist/defaultpage/default-wizard.d.ts +0 -37
- package/dist/defaultpage/default-wizard.d.ts.map +0 -1
- package/dist/defaultpage/default-wizard.js +0 -255
- package/dist/defaultpage/pd-default-wizard-step.d.ts +0 -60
- package/dist/defaultpage/pd-default-wizard-step.d.ts.map +0 -1
- package/dist/defaultpage/pd-default-wizard-step.js +0 -144
- package/dist/helper/blob-helper.d.ts +0 -3
- package/dist/helper/blob-helper.d.ts.map +0 -1
- package/dist/helper/blob-helper.js +0 -35
- package/dist/helper/date-helper.d.ts +0 -27
- package/dist/helper/date-helper.d.ts.map +0 -1
- package/dist/helper/date-helper.js +0 -129
- package/dist/helper/locale-format.d.ts +0 -4
- package/dist/helper/locale-format.d.ts.map +0 -1
- package/dist/helper/locale-format.js +0 -16
- package/dist/helper/number-helper.d.ts +0 -2
- package/dist/helper/number-helper.d.ts.map +0 -1
- package/dist/helper/number-helper.js +0 -13
- package/dist/helper/price-helper.d.ts +0 -5
- package/dist/helper/price-helper.d.ts.map +0 -1
- package/dist/helper/price-helper.js +0 -22
- package/dist/helper/text-helper.d.ts +0 -3
- package/dist/helper/text-helper.d.ts.map +0 -1
- package/dist/helper/text-helper.js +0 -4
- package/dist/popup/wizard-close-popup.d.ts +0 -11
- package/dist/popup/wizard-close-popup.d.ts.map +0 -1
- package/dist/popup/wizard-close-popup.js +0 -63
- package/dist/popup/wizard-reload-popup.d.ts +0 -14
- package/dist/popup/wizard-reload-popup.d.ts.map +0 -1
- package/dist/popup/wizard-reload-popup.js +0 -76
- package/dist/service-provider/firebase/auth.d.ts +0 -19
- package/dist/service-provider/firebase/auth.d.ts.map +0 -1
- package/dist/service-provider/firebase/auth.js +0 -62
- package/dist/service-provider/firebase/firestorage-client.d.ts +0 -22
- package/dist/service-provider/firebase/firestorage-client.d.ts.map +0 -1
- package/dist/service-provider/firebase/firestorage-client.js +0 -226
- package/dist/service-provider/firebase/firestore-client.d.ts +0 -12
- package/dist/service-provider/firebase/firestore-client.d.ts.map +0 -1
- package/dist/service-provider/firebase/firestore-client.js +0 -25
- package/dist/service-provider/firebase/functions-client.d.ts +0 -10
- package/dist/service-provider/firebase/functions-client.d.ts.map +0 -1
- package/dist/service-provider/firebase/functions-client.js +0 -63
- package/dist/service-provider/firebase/messagingFirebaseClient.d.ts +0 -9
- package/dist/service-provider/firebase/messagingFirebaseClient.d.ts.map +0 -1
- package/dist/service-provider/firebase/messagingFirebaseClient.js +0 -69
- package/dist/service-provider/mock/auth.d.ts +0 -6
- package/dist/service-provider/mock/auth.d.ts.map +0 -1
- package/dist/service-provider/mock/auth.js +0 -60
- package/dist/service-provider/mock/function-client.d.ts +0 -7
- package/dist/service-provider/mock/function-client.d.ts.map +0 -1
- package/dist/service-provider/mock/function-client.js +0 -30
- package/dist/service-provider/mock/storage-client.d.ts +0 -11
- package/dist/service-provider/mock/storage-client.d.ts.map +0 -1
- package/dist/service-provider/mock/storage-client.js +0 -106
- package/dist/service-provider/service-provider-impl.d.ts +0 -27
- package/dist/service-provider/service-provider-impl.d.ts.map +0 -1
- package/dist/service-provider/service-provider-impl.js +0 -222
- package/dist/store/indexDB.d.ts.map +0 -1
- package/dist/stories/address-edit.stories.d.ts +0 -27
- package/dist/stories/address-edit.stories.d.ts.map +0 -1
- package/dist/stories/address-new.stories.d.ts +0 -33
- package/dist/stories/address-new.stories.d.ts.map +0 -1
- package/dist/stories/default-confirm-popup.stories.d.ts +0 -24
- package/dist/stories/default-confirm-popup.stories.d.ts.map +0 -1
- package/dist/stories/default-dialog-popup.stories.d.ts +0 -23
- package/dist/stories/default-dialog-popup.stories.d.ts.map +0 -1
- package/dist/stories/default-login.stories.d.ts +0 -10
- package/dist/stories/default-login.stories.d.ts.map +0 -1
- package/dist/stories/default-popup.stories.d.ts +0 -9
- package/dist/stories/default-popup.stories.d.ts.map +0 -1
- package/dist/stories/pd-loading-state.stories.d.ts +0 -30
- package/dist/stories/pd-loading-state.stories.d.ts.map +0 -1
- package/dist/stories/pd-toast.stories.d.ts +0 -27
- package/dist/stories/pd-toast.stories.d.ts.map +0 -1
- package/dist/stories/routing.stories.d.ts +0 -24
- package/dist/stories/routing.stories.d.ts.map +0 -1
- package/dist/stories/test-impls/address-test.d.ts +0 -6
- package/dist/stories/test-impls/address-test.d.ts.map +0 -1
- package/dist/stories/test-impls/test-mock-app.d.ts +0 -15
- package/dist/stories/test-impls/test-mock-app.d.ts.map +0 -1
- package/dist/stories/test-impls/test-pages/test-home-page.d.ts +0 -7
- package/dist/stories/test-impls/test-pages/test-home-page.d.ts.map +0 -1
- package/dist/stories/test-impls/test-pages/test-not-found-page.d.ts +0 -5
- package/dist/stories/test-impls/test-pages/test-not-found-page.d.ts.map +0 -1
- package/dist/stories/test-impls/test-pages/test-wizard-step.d.ts +0 -17
- package/dist/stories/test-impls/test-pages/test-wizard-step.d.ts.map +0 -1
- package/dist/stories/test-impls/test-pages/test-wizard.d.ts +0 -16
- package/dist/stories/test-impls/test-pages/test-wizard.d.ts.map +0 -1
- package/dist/stories/test-impls/test-popups/default-confirm-popup-test-error.d.ts +0 -8
- package/dist/stories/test-impls/test-popups/default-confirm-popup-test-error.d.ts.map +0 -1
- package/dist/stories/test-impls/test-popups/default-confirm-popup-test-info.d.ts +0 -8
- package/dist/stories/test-impls/test-popups/default-confirm-popup-test-info.d.ts.map +0 -1
- package/dist/stories/test-impls/test-popups/default-confirm-popup-test-warn.d.ts +0 -8
- package/dist/stories/test-impls/test-popups/default-confirm-popup-test-warn.d.ts.map +0 -1
- package/dist/stories/test-impls/test-popups/default-dialog-popup-test.d.ts +0 -13
- package/dist/stories/test-impls/test-popups/default-dialog-popup-test.d.ts.map +0 -1
- package/dist/stories/test-impls/test-popups/default-popup-test.d.ts +0 -5
- package/dist/stories/test-impls/test-popups/default-popup-test.d.ts.map +0 -1
- package/dist/stories/test-wizard-step.stories.d.ts +0 -11
- package/dist/stories/test-wizard-step.stories.d.ts.map +0 -1
- package/dist/stories/test-wizard.stories.d.ts +0 -9
- package/dist/stories/test-wizard.stories.d.ts.map +0 -1
- package/dist/tmpown/pd-loading-state.d.ts +0 -9
- package/dist/tmpown/pd-loading-state.d.ts.map +0 -1
- package/dist/tmpown/pd-loading-state.js +0 -196
- package/dist/tmpown/pd-login.d.ts +0 -13
- package/dist/tmpown/pd-login.d.ts.map +0 -1
- package/dist/tmpown/pd-login.js +0 -165
- package/dist/tmpown/pd-toast.d.ts +0 -13
- package/dist/tmpown/pd-toast.d.ts.map +0 -1
- package/dist/tmpown/pd-toast.js +0 -127
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { msg } from '@lit/localize';
|
|
2
|
-
import { getFunctions, httpsCallable } from 'firebase/functions';
|
|
3
|
-
import { SC_INVALID_USER, BusinessError } from '../service-provider-model.js';
|
|
4
|
-
import { pdStore } from '../../store/mini-rx.store.js';
|
|
5
|
-
import { toastAction } from '../../store/spa-app-actions.js';
|
|
6
|
-
import { createLogger } from '../../helper/logger.js';
|
|
7
|
-
|
|
8
|
-
const functionLogger = createLogger("PdFunctions");
|
|
9
|
-
const functionMap = /* @__PURE__ */ new Map();
|
|
10
|
-
const initFunctions = (app, functionsConfig) => {
|
|
11
|
-
try {
|
|
12
|
-
const functions = getFunctions(app, functionsConfig.region);
|
|
13
|
-
functionsConfig.functions.forEach((func) => {
|
|
14
|
-
functionMap.set(func, httpsCallable(functions, func.name));
|
|
15
|
-
});
|
|
16
|
-
} catch (error) {
|
|
17
|
-
functionLogger.error("error during function result", error);
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
const internalCallFunction = async (def, functionInput) => {
|
|
21
|
-
const funcRef = functionMap.get(def);
|
|
22
|
-
if (!funcRef) {
|
|
23
|
-
functionLogger.error("No function available for ", def.name);
|
|
24
|
-
throw new Error("Illegal state, no function available");
|
|
25
|
-
}
|
|
26
|
-
try {
|
|
27
|
-
const funcResult = await funcRef(functionInput);
|
|
28
|
-
if (!funcResult || !funcResult.data) {
|
|
29
|
-
throw new Error("Illegal state, no valid response received");
|
|
30
|
-
}
|
|
31
|
-
const { statusCode, resultData } = funcResult.data;
|
|
32
|
-
if (def.successCodes.includes(statusCode)) {
|
|
33
|
-
return funcResult.data;
|
|
34
|
-
}
|
|
35
|
-
if (statusCode === SC_INVALID_USER) {
|
|
36
|
-
handleInvalidUser();
|
|
37
|
-
throw new BusinessError("Unauthorized access", statusCode);
|
|
38
|
-
}
|
|
39
|
-
if (statusCode && resultData) {
|
|
40
|
-
throw new BusinessError(resultData, statusCode);
|
|
41
|
-
}
|
|
42
|
-
throw new Error(`Unexpected error: ${statusCode} - ${resultData}`);
|
|
43
|
-
} catch (error) {
|
|
44
|
-
functionLogger.error("Error in internalCallFunction:", error);
|
|
45
|
-
throw error;
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
const handleInvalidUser = () => {
|
|
49
|
-
pdStore().dispatch(
|
|
50
|
-
toastAction({
|
|
51
|
-
txt: msg(
|
|
52
|
-
"Sie haben nicht die erforderlichen Berechtigungen, um diese Aktion auszuführen. Wenden Sie sich an Ihren Administrator.",
|
|
53
|
-
{ id: "spaH.toast.error.user.invalid" }
|
|
54
|
-
),
|
|
55
|
-
isError: true,
|
|
56
|
-
isSuccess: false,
|
|
57
|
-
duration: -1
|
|
58
|
-
})
|
|
59
|
-
);
|
|
60
|
-
};
|
|
61
|
-
const callFunction = async (def, functionInput) => internalCallFunction(def, functionInput);
|
|
62
|
-
|
|
63
|
-
export { callFunction, initFunctions };
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { FirebaseApp } from 'firebase/app';
|
|
2
|
-
import { Messaging } from 'firebase/messaging';
|
|
3
|
-
import { MessagingConfig } from '../service-provider-model.js';
|
|
4
|
-
export declare const NOTIFICATION_TOKEN = "pd.spa.helper.notification.token";
|
|
5
|
-
export declare function prepareMessaging(app: FirebaseApp, messageConfig: MessagingConfig): void;
|
|
6
|
-
export declare const activateTokenChangeHandler: (appName: string) => void;
|
|
7
|
-
export declare const registerDevice: (registration: ServiceWorkerRegistration) => Promise<void>;
|
|
8
|
-
export declare const getFirebaseMessaging: () => Messaging;
|
|
9
|
-
//# sourceMappingURL=messagingFirebaseClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"messagingFirebaseClient.d.ts","sourceRoot":"","sources":["../../../src/service-provider/firebase/messagingFirebaseClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAA0B,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGvE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAQ/D,eAAO,MAAM,kBAAkB,qCAAqC,CAAC;AAOrE,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,WAAW,EAChB,aAAa,EAAE,eAAe,QAI/B;AAED,eAAO,MAAM,0BAA0B,GAAI,SAAS,MAAM,SAczD,CAAC;AA8BF,eAAO,MAAM,cAAc,GACzB,cAAc,yBAAyB,kBAoBxC,CAAC;AAEF,eAAO,MAAM,oBAAoB,iBAAkB,CAAC"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { getMessaging, getToken } from 'firebase/messaging';
|
|
2
|
-
import { update, USER_COLLECTION } from '../../store/indexDB.js';
|
|
3
|
-
import { pdStore } from '../../store/mini-rx.store.js';
|
|
4
|
-
import { updateNewNotificationToken } from '../../store/spa-app-actions.js';
|
|
5
|
-
import { authIdTokenStateChanged } from './auth.js';
|
|
6
|
-
import { createLogger } from '../../helper/logger.js';
|
|
7
|
-
|
|
8
|
-
const NOTIFICATION_TOKEN = "pd.spa.helper.notification.token";
|
|
9
|
-
const messagingLogger = createLogger("PdMessaging");
|
|
10
|
-
let messaging;
|
|
11
|
-
let firebaseMessagingAppConfigKey;
|
|
12
|
-
function prepareMessaging(app, messageConfig) {
|
|
13
|
-
messaging = getMessaging(app);
|
|
14
|
-
firebaseMessagingAppConfigKey = messageConfig;
|
|
15
|
-
}
|
|
16
|
-
const activateTokenChangeHandler = (appName) => {
|
|
17
|
-
authIdTokenStateChanged(async (user) => {
|
|
18
|
-
if (user) {
|
|
19
|
-
const token = await user.getIdToken();
|
|
20
|
-
if (token) {
|
|
21
|
-
await update(USER_COLLECTION, {
|
|
22
|
-
id: appName,
|
|
23
|
-
userNameToken: user.displayName,
|
|
24
|
-
userIdToken: token
|
|
25
|
-
});
|
|
26
|
-
messagingLogger.info("UserToken stored in local db");
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
const initMessageToken = async (registration) => {
|
|
32
|
-
if (!messaging || !firebaseMessagingAppConfigKey || !registration) {
|
|
33
|
-
throw new Error("Messaging, Registration or Key not available");
|
|
34
|
-
}
|
|
35
|
-
const currentToken = await getToken(messaging, {
|
|
36
|
-
vapidKey: firebaseMessagingAppConfigKey.apidKey,
|
|
37
|
-
serviceWorkerRegistration: registration
|
|
38
|
-
});
|
|
39
|
-
if (currentToken) {
|
|
40
|
-
const storedToken = localStorage.getItem(NOTIFICATION_TOKEN);
|
|
41
|
-
if (storedToken !== currentToken) {
|
|
42
|
-
messagingLogger.info("Update new token in Backend");
|
|
43
|
-
pdStore().dispatch(
|
|
44
|
-
updateNewNotificationToken({
|
|
45
|
-
messagingToken: currentToken
|
|
46
|
-
})
|
|
47
|
-
);
|
|
48
|
-
} else {
|
|
49
|
-
messagingLogger.info("RegisterDevice: Stored token is valid");
|
|
50
|
-
}
|
|
51
|
-
} else {
|
|
52
|
-
messagingLogger.warn("No token received - no new token was generated.");
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
const registerDevice = async (registration) => {
|
|
56
|
-
messagingLogger.info("Start registering app for messages and notifications");
|
|
57
|
-
if (Notification.permission === "default") {
|
|
58
|
-
await Notification.requestPermission();
|
|
59
|
-
}
|
|
60
|
-
if (Notification.permission === "granted") {
|
|
61
|
-
await initMessageToken(registration);
|
|
62
|
-
}
|
|
63
|
-
if (Notification.permission === "denied") {
|
|
64
|
-
messagingLogger.warn("Messaging not possible, missing rights");
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
const getFirebaseMessaging = () => messaging;
|
|
68
|
-
|
|
69
|
-
export { NOTIFICATION_TOKEN, activateTokenChangeHandler, getFirebaseMessaging, prepareMessaging, registerDevice };
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export declare const logoutMock: () => Promise<boolean>;
|
|
2
|
-
export declare const isAuthenticatedMock: () => boolean;
|
|
3
|
-
export declare const getAuthUserMock: () => unknown;
|
|
4
|
-
export declare const authStateChangedMock: (callback: (user: any) => void) => void;
|
|
5
|
-
export declare const loginMock: (user: string, sec: string) => Promise<unknown>;
|
|
6
|
-
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/service-provider/mock/auth.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,UAAU,QAAa,OAAO,CAAC,OAAO,CAOlD,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAO,OAMtC,CAAC;AAEF,eAAO,MAAM,eAAe,QAAO,OAMpB,CAAC;AAGhB,eAAO,MAAM,oBAAoB,GAAI,UAAU,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,SAMjE,CAAC;AAEF,eAAO,MAAM,SAAS,GACpB,MAAM,MAAM,EACZ,KAAK,MAAM,KACV,OAAO,CAAC,OAAO,CA2BjB,CAAC"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
const LOCALSTORE_ITEM_KEY = "pdUserLogin";
|
|
2
|
-
const HARDCODED_USER = "mock@pd-spa-helper.com";
|
|
3
|
-
const HARDCODED_PWD = "mock";
|
|
4
|
-
let loginAvailable;
|
|
5
|
-
const checkLocalStore = () => {
|
|
6
|
-
const userItem = localStorage.getItem(LOCALSTORE_ITEM_KEY);
|
|
7
|
-
return userItem === "true";
|
|
8
|
-
};
|
|
9
|
-
const logoutMock = async () => {
|
|
10
|
-
console.log("Do MOCK logout");
|
|
11
|
-
loginAvailable = void 0;
|
|
12
|
-
{
|
|
13
|
-
localStorage.removeItem(LOCALSTORE_ITEM_KEY);
|
|
14
|
-
}
|
|
15
|
-
return Promise.resolve(true);
|
|
16
|
-
};
|
|
17
|
-
const isAuthenticatedMock = () => {
|
|
18
|
-
if (loginAvailable === void 0) {
|
|
19
|
-
console.log("MOCK: check authentication");
|
|
20
|
-
loginAvailable = checkLocalStore() ;
|
|
21
|
-
}
|
|
22
|
-
return loginAvailable;
|
|
23
|
-
};
|
|
24
|
-
const getAuthUserMock = () => isAuthenticatedMock() ? {
|
|
25
|
-
uid: "34234234",
|
|
26
|
-
displayName: "userMockName"
|
|
27
|
-
} : void 0;
|
|
28
|
-
let callbackLogin;
|
|
29
|
-
const authStateChangedMock = (callback) => {
|
|
30
|
-
callbackLogin = callback;
|
|
31
|
-
console.log("Not implemented for MOCK, do call once if authenticated");
|
|
32
|
-
if (isAuthenticatedMock()) {
|
|
33
|
-
callbackLogin(getAuthUserMock());
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
const loginMock = async (user, sec) => {
|
|
37
|
-
console.log("MOCK: do authentication for user: ", user);
|
|
38
|
-
await new Promise((resolve) => setTimeout(resolve, 2e3));
|
|
39
|
-
let valid = false;
|
|
40
|
-
if (user === HARDCODED_USER && sec === HARDCODED_PWD) {
|
|
41
|
-
{
|
|
42
|
-
localStorage.setItem(LOCALSTORE_ITEM_KEY, "true");
|
|
43
|
-
}
|
|
44
|
-
valid = true;
|
|
45
|
-
loginAvailable = true;
|
|
46
|
-
}
|
|
47
|
-
if (valid) {
|
|
48
|
-
const userMock = getAuthUserMock();
|
|
49
|
-
if (callbackLogin) {
|
|
50
|
-
callbackLogin(userMock);
|
|
51
|
-
}
|
|
52
|
-
return user;
|
|
53
|
-
}
|
|
54
|
-
const err = new Error("Invalid login");
|
|
55
|
-
const error = err;
|
|
56
|
-
error.code = "auth/wrong-password";
|
|
57
|
-
throw error;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
export { authStateChangedMock, getAuthUserMock, isAuthenticatedMock, loginMock, logoutMock };
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { FunctionDefinition, FunctionResult } from '../service-provider-model.js';
|
|
2
|
-
export declare const callFunctionMock: (def: FunctionDefinition, functionInput: any) => Promise<FunctionResult>;
|
|
3
|
-
export declare const initMockResponse: (mock?: {
|
|
4
|
-
mockResponse?: Map<string, (functionInput: any) => FunctionResult>;
|
|
5
|
-
mockWaitTime?: number;
|
|
6
|
-
}) => void;
|
|
7
|
-
//# sourceMappingURL=function-client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"function-client.d.ts","sourceRoot":"","sources":["../../../src/service-provider/mock/function-client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAOtC,eAAO,MAAM,gBAAgB,GAC3B,KAAK,kBAAkB,EACvB,eAAe,GAAG,KACjB,OAAO,CAAC,cAAc,CAwBxB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO;IACtC,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,GAAG,KAAK,cAAc,CAAC,CAAC;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,SAGA,CAAC"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
const DEFAULT_TIMEOUT = 2e3;
|
|
2
|
-
let mockResponse;
|
|
3
|
-
let mockTimeout = DEFAULT_TIMEOUT;
|
|
4
|
-
const callFunctionMock = async (def, functionInput) => {
|
|
5
|
-
let key;
|
|
6
|
-
if (functionInput?.detailsId) {
|
|
7
|
-
key = `${def.name}_${functionInput?.object}_detailsId`;
|
|
8
|
-
} else if (functionInput?.type) {
|
|
9
|
-
key = `${def.name}_${functionInput.object}_${functionInput.type}`;
|
|
10
|
-
} else {
|
|
11
|
-
key = `${def.name}_${functionInput?.object}`;
|
|
12
|
-
}
|
|
13
|
-
console.log("Mock function call", def, functionInput, key);
|
|
14
|
-
const timeout = () => new Promise((resolve) => {
|
|
15
|
-
window.setTimeout(() => {
|
|
16
|
-
resolve("Done");
|
|
17
|
-
}, mockTimeout);
|
|
18
|
-
});
|
|
19
|
-
await timeout();
|
|
20
|
-
if (mockResponse && mockResponse.has(key)) {
|
|
21
|
-
return Promise.resolve(mockResponse.get(key)(functionInput));
|
|
22
|
-
}
|
|
23
|
-
throw new Error("No data with right state available");
|
|
24
|
-
};
|
|
25
|
-
const initMockResponse = (mock) => {
|
|
26
|
-
mockResponse = mock?.mockResponse || /* @__PURE__ */ new Map();
|
|
27
|
-
mockTimeout = mock?.mockWaitTime || DEFAULT_TIMEOUT;
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
export { callFunctionMock, initMockResponse };
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { FileStorageConfig, StorageDocument, UploadFile } from '../service-provider-model.js';
|
|
2
|
-
/**
|
|
3
|
-
* During start/load application, initialize functions.
|
|
4
|
-
*
|
|
5
|
-
* @param {*} app - initialized app.
|
|
6
|
-
*/
|
|
7
|
-
export declare const initStorageMock: (defaultStorage?: string, storageConfig?: FileStorageConfig) => void;
|
|
8
|
-
export declare const uploadStorageFileMock: (file: UploadFile) => Promise<any>;
|
|
9
|
-
export declare const downloadFileMock: (file: StorageDocument) => Promise<string>;
|
|
10
|
-
export declare const getMockFileList: (storageName: string, refKey: string, subFolder?: string, includeMetadata?: boolean) => Promise<StorageDocument[]>;
|
|
11
|
-
//# sourceMappingURL=storage-client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"storage-client.d.ts","sourceRoot":"","sources":["../../../src/service-provider/mock/storage-client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,UAAU,EACX,MAAM,8BAA8B,CAAC;AAmDtC;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,iBAAiB,MAAM,EACvB,gBAAgB,iBAAiB,SAiClC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,KAAG,OAAO,CAAC,GAAG,CA8BnE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,MAAM,eAAe,oBAGrD,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,aAAa,MAAM,EACnB,QAAQ,MAAM,EACd,YAAY,MAAM,EAClB,kBAAkB,OAAO,KACxB,OAAO,CAAC,eAAe,EAAE,CAiB3B,CAAC"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
const DEFAULT_STORAGE = "default_storage";
|
|
2
|
-
const downloadFile = (buffer) => {
|
|
3
|
-
const data = new Blob([buffer], {
|
|
4
|
-
type: "image/png"
|
|
5
|
-
});
|
|
6
|
-
const url = window.URL.createObjectURL(data);
|
|
7
|
-
window.open(url);
|
|
8
|
-
};
|
|
9
|
-
const base64ToArrayBuffer = (base64) => {
|
|
10
|
-
const test = base64.replace("data:image/png;base64,", "");
|
|
11
|
-
const binaryString = atob(test);
|
|
12
|
-
const bytes = new Uint8Array(binaryString.length);
|
|
13
|
-
for (let i = 0; i < binaryString.length; i += 1) {
|
|
14
|
-
bytes[i] = binaryString.charCodeAt(i);
|
|
15
|
-
}
|
|
16
|
-
return bytes.buffer;
|
|
17
|
-
};
|
|
18
|
-
class MockStorage {
|
|
19
|
-
constructor(storageName) {
|
|
20
|
-
this._name = storageName;
|
|
21
|
-
}
|
|
22
|
-
// eslint-disable-next-line class-methods-use-this
|
|
23
|
-
uploadFile(filePath, file) {
|
|
24
|
-
downloadFile(base64ToArrayBuffer(file.base64DataURL));
|
|
25
|
-
return Promise.resolve({
|
|
26
|
-
fullPath: filePath
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
const storageMap = /* @__PURE__ */ new Map();
|
|
31
|
-
const initStorageMock = (defaultStorage, storageConfig) => {
|
|
32
|
-
console.log("Init mock Storage");
|
|
33
|
-
try {
|
|
34
|
-
if (defaultStorage) {
|
|
35
|
-
storageMap.set(DEFAULT_STORAGE, {
|
|
36
|
-
storage: new MockStorage(DEFAULT_STORAGE)
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
storageConfig?.storage.forEach((storeConfig) => {
|
|
40
|
-
const storage = new MockStorage(storeConfig.name);
|
|
41
|
-
const storageRootRef = "/";
|
|
42
|
-
storageMap.set(storeConfig.name, {
|
|
43
|
-
storage,
|
|
44
|
-
references: [
|
|
45
|
-
{
|
|
46
|
-
key: "ROOT",
|
|
47
|
-
storageRef: storageRootRef
|
|
48
|
-
},
|
|
49
|
-
...storeConfig.references.map((refConfigString) => ({
|
|
50
|
-
key: refConfigString,
|
|
51
|
-
storageRef: `${storageRootRef}/${refConfigString}`
|
|
52
|
-
}))
|
|
53
|
-
]
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
} catch (error) {
|
|
57
|
-
console.error(error);
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
const uploadStorageFileMock = (file) => {
|
|
61
|
-
if (!storageMap || storageMap.size === 0) {
|
|
62
|
-
throw new Error("No storage is configured");
|
|
63
|
-
}
|
|
64
|
-
const { storageName, referenceKey, subFolderName, fileName } = file;
|
|
65
|
-
const storageConf = storageMap.get(storageName || DEFAULT_STORAGE);
|
|
66
|
-
if (!storageConf) {
|
|
67
|
-
throw new Error(`Invalid storage name: ${storageName || DEFAULT_STORAGE}`);
|
|
68
|
-
}
|
|
69
|
-
if (!storageConf.references || storageConf.references.length === 0) {
|
|
70
|
-
throw new Error(
|
|
71
|
-
`No references configured for storage: ${storageName || DEFAULT_STORAGE}`
|
|
72
|
-
);
|
|
73
|
-
}
|
|
74
|
-
const uploadRefConf = referenceKey ? storageConf.references.filter(
|
|
75
|
-
(filterRef) => filterRef.key === referenceKey
|
|
76
|
-
)[0] : storageConf.references[0];
|
|
77
|
-
if (!uploadRefConf || !uploadRefConf.storageRef) {
|
|
78
|
-
throw new Error(`No valid reference for key: ${referenceKey}`);
|
|
79
|
-
}
|
|
80
|
-
const fileRef = `${uploadRefConf.storageRef}/${subFolderName ? `${subFolderName}/${fileName}` : fileName}`;
|
|
81
|
-
return storageConf.storage.uploadFile(fileRef, file);
|
|
82
|
-
};
|
|
83
|
-
const downloadFileMock = (file) => {
|
|
84
|
-
alert("Not implemented for mock");
|
|
85
|
-
return Promise.resolve("");
|
|
86
|
-
};
|
|
87
|
-
const getMockFileList = (storageName, refKey, subFolder, includeMetadata) => {
|
|
88
|
-
console.log(
|
|
89
|
-
"Searching for Documents in ",
|
|
90
|
-
storageName,
|
|
91
|
-
refKey,
|
|
92
|
-
subFolder,
|
|
93
|
-
includeMetadata
|
|
94
|
-
);
|
|
95
|
-
return Promise.resolve([
|
|
96
|
-
{
|
|
97
|
-
fileName: "workReport.png",
|
|
98
|
-
filePath: "workReports/1234234f2fswf/workReport.png",
|
|
99
|
-
documentType: "ToDo",
|
|
100
|
-
storageName,
|
|
101
|
-
refKey
|
|
102
|
-
}
|
|
103
|
-
]);
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
export { downloadFileMock, getMockFileList, initStorageMock, uploadStorageFileMock };
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { FirebaseApp } from 'firebase/app';
|
|
2
|
-
import { AppConfiguration, CollectionContraint, FileStorageConfig, FunctionDefinition, FunctionResult, ServiceProviderConfiguration, StorageDocument, UploadFile } from './service-provider-model.js';
|
|
3
|
-
export declare const setServiceProvider: (providerParam?: ServiceProviderConfiguration) => void;
|
|
4
|
-
export declare const initAppImpl: (config: AppConfiguration) => void;
|
|
5
|
-
export declare const callFunctionImpl: (def: FunctionDefinition, functionInput: any) => Promise<FunctionResult>;
|
|
6
|
-
export declare const authStateChangedImpl: (callback: (user: any) => void) => void;
|
|
7
|
-
export declare const isAuthenticatedImpl: () => boolean;
|
|
8
|
-
export declare const isAuthenticatedWithSessionRedirect: (routeName: string) => Promise<boolean>;
|
|
9
|
-
export declare const loginImpl: (user: string, sec: string) => Promise<unknown>;
|
|
10
|
-
export declare const logoutImpl: () => Promise<boolean>;
|
|
11
|
-
export declare const getUser: () => unknown;
|
|
12
|
-
export declare const uploadFile: (file: UploadFile) => Promise<unknown>;
|
|
13
|
-
export declare const getStorageFileList: (storageName: string, keyRef: string, subFolder?: string, includeMetadata?: boolean) => Promise<StorageDocument[]>;
|
|
14
|
-
export declare const getStorageFile: (storageName: string, refKey: string, storageURI: string, includeMetaData: boolean) => Promise<StorageDocument>;
|
|
15
|
-
export declare const downloadFile: (file: StorageDocument) => Promise<unknown>;
|
|
16
|
-
export declare const deleteFile: (file: StorageDocument) => Promise<unknown>;
|
|
17
|
-
export declare const getStorageConfiguration: () => FileStorageConfig | undefined;
|
|
18
|
-
export declare const activateCollectionListener: (callback: (query: any) => void, col: string, constraints?: CollectionContraint[]) => "" | import('firebase/firestore').Unsubscribe;
|
|
19
|
-
export declare const registerAppDeviceForNotification: (registration: ServiceWorkerRegistration) => Promise<void>;
|
|
20
|
-
export declare const getMessagingImpl: () => import('firebase/messaging').Messaging | undefined;
|
|
21
|
-
export declare const getUserIdToken: (refresh: boolean) => Promise<{
|
|
22
|
-
userToken: string;
|
|
23
|
-
userName: string;
|
|
24
|
-
appName: string;
|
|
25
|
-
} | undefined>;
|
|
26
|
-
export declare const getApp: () => FirebaseApp;
|
|
27
|
-
//# sourceMappingURL=service-provider-impl.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
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;AAkB1D,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,4BAA4B,EAC5B,eAAe,EACf,UAAU,EACX,MAAM,6BAA6B,CAAC;AA8CrC,eAAO,MAAM,kBAAkB,GAC7B,gBAAgB,4BAA4B,SAG7C,CAAC;AAqCF,eAAO,MAAM,WAAW,GAAI,QAAQ,gBAAgB,SAWnD,CAAC;AAKF,eAAO,MAAM,gBAAgB,GAC3B,KAAK,kBAAkB,EACvB,eAAe,GAAG,KACjB,OAAO,CAAC,cAAc,CASxB,CAAC;AAMF,eAAO,MAAM,oBAAoB,GAAI,UAAU,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,SAQjE,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAQ/B,CAAC;AAEF,eAAO,MAAM,kCAAkC,GAC7C,WAAW,MAAM,KAChB,OAAO,CAAC,OAAO,CAMjB,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,EAAE,KAAK,MAAM,qBAiBlD,CAAC;AAEF,eAAO,MAAM,UAAU,wBAQtB,CAAC;AAGF,eAAO,MAAM,OAAO,eAQnB,CAAC;AAKF,eAAO,MAAM,UAAU,GAAI,MAAM,UAAU,KAAG,OAAO,CAAC,OAAO,CAQ5D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,aAAa,MAAM,EACnB,QAAQ,MAAM,EACd,YAAY,MAAM,EAClB,kBAAkB,OAAO,KACxB,OAAO,CAAC,eAAe,EAAE,CAa3B,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,aAAa,MAAM,EACnB,QAAQ,MAAM,EACd,YAAY,MAAM,EAClB,iBAAiB,OAAO,KACvB,OAAO,CAAC,eAAe,CAKzB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,eAAe,KAAG,OAAO,CAAC,OAAO,CAQnE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,eAAe,KAAG,OAAO,CAAC,OAAO,CAKjE,CAAC;AAEF,eAAO,MAAM,uBAAuB,QAAO,iBAAiB,GAAG,SAK9D,CAAC;AAKF,eAAO,MAAM,0BAA0B,GACrC,UAAU,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,EAC9B,KAAK,MAAM,EACX,cAAc,mBAAmB,EAAE,kDAYpC,CAAC;AAKF,eAAO,MAAM,gCAAgC,GAC3C,cAAc,yBAAyB,kBAYxC,CAAC;AAEF,eAAO,MAAM,gBAAgB,0DAS5B,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,SAAS,OAAO,KACf,OAAO,CACN;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,GACD,SAAS,CAgBZ,CAAC;AAEF,eAAO,MAAM,MAAM,mBAAY,CAAC"}
|
|
@@ -1,222 +0,0 @@
|
|
|
1
|
-
import { initializeApp } from 'firebase/app';
|
|
2
|
-
import { initAuth, authStateChanged, isAuthenticated, login, logout, getAuthUser, getFirebaseUserIdToken } from './firebase/auth.js';
|
|
3
|
-
import { authStateChangedMock, isAuthenticatedMock, loginMock, logoutMock, getAuthUserMock } from './mock/auth.js';
|
|
4
|
-
import { initFunctions, callFunction } from './firebase/functions-client.js';
|
|
5
|
-
import { initFirestore, getFirebaseCollectionListener } from './firebase/firestore-client.js';
|
|
6
|
-
import { initMockResponse, callFunctionMock } from './mock/function-client.js';
|
|
7
|
-
import { initFirestorage, uploadFirestorageFile, getFirestorageFileList, getFirestorageFile, downloadFileFirestorage, deleteFirestorageDocument, getFirestorageConf } from './firebase/firestorage-client.js';
|
|
8
|
-
import { initStorageMock, uploadStorageFileMock, getMockFileList, downloadFileMock } from './mock/storage-client.js';
|
|
9
|
-
import { prepareMessaging, activateTokenChangeHandler, registerDevice, getFirebaseMessaging } from './firebase/messagingFirebaseClient.js';
|
|
10
|
-
import '../PdSpaHelper.js';
|
|
11
|
-
import { createLogger } from '../helper/logger.js';
|
|
12
|
-
|
|
13
|
-
const serviceLogger = createLogger("PdServiceProvider");
|
|
14
|
-
let provider;
|
|
15
|
-
let app;
|
|
16
|
-
const throwUndefinedProviderError = () => {
|
|
17
|
-
throw new Error(
|
|
18
|
-
"Undefined service provider, please check configuration. 'firebase' or 'mock' allowed here."
|
|
19
|
-
);
|
|
20
|
-
};
|
|
21
|
-
const setServiceProvider = (providerParam) => {
|
|
22
|
-
provider = providerParam;
|
|
23
|
-
};
|
|
24
|
-
const initFirebaseApplicationServices = (firebaseApp, config) => {
|
|
25
|
-
initAuth(firebaseApp);
|
|
26
|
-
initFirestore(firebaseApp);
|
|
27
|
-
if (config.functionsConfig) {
|
|
28
|
-
initFunctions(firebaseApp, config.functionsConfig);
|
|
29
|
-
serviceLogger.debug("Init provider functions");
|
|
30
|
-
}
|
|
31
|
-
if (config.firebaseConfig?.storageBucket && config.storageConfig) {
|
|
32
|
-
initFirestorage(
|
|
33
|
-
firebaseApp,
|
|
34
|
-
config.firebaseConfig?.storageBucket,
|
|
35
|
-
config.storageConfig
|
|
36
|
-
);
|
|
37
|
-
serviceLogger.debug("Init provider storage");
|
|
38
|
-
}
|
|
39
|
-
if (config.messagingConfig) {
|
|
40
|
-
prepareMessaging(firebaseApp, config.messagingConfig);
|
|
41
|
-
serviceLogger.debug("Set firebase app and config for messaging");
|
|
42
|
-
activateTokenChangeHandler(firebaseApp.name);
|
|
43
|
-
serviceLogger.debug(
|
|
44
|
-
`idTokenChangeHandler for messaging and app ${firebaseApp.name} activated`
|
|
45
|
-
);
|
|
46
|
-
}
|
|
47
|
-
serviceLogger.debug("Firebase initialized");
|
|
48
|
-
};
|
|
49
|
-
const initAppImpl = (config) => {
|
|
50
|
-
if (provider === "firebase" && config.firebaseConfig) {
|
|
51
|
-
app = initializeApp(config.firebaseConfig);
|
|
52
|
-
initFirebaseApplicationServices(app, config);
|
|
53
|
-
} else if (provider === "mock") {
|
|
54
|
-
initMockResponse(config.mock);
|
|
55
|
-
initStorageMock("default", config.storageConfig);
|
|
56
|
-
} else {
|
|
57
|
-
throwUndefinedProviderError();
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
const callFunctionImpl = async (def, functionInput) => {
|
|
61
|
-
if (provider === "firebase") {
|
|
62
|
-
return callFunction(def, functionInput);
|
|
63
|
-
}
|
|
64
|
-
if (provider === "mock") {
|
|
65
|
-
return callFunctionMock(def, functionInput);
|
|
66
|
-
}
|
|
67
|
-
return throwUndefinedProviderError();
|
|
68
|
-
};
|
|
69
|
-
const authStateChangedImpl = (callback) => {
|
|
70
|
-
if (provider === "firebase") {
|
|
71
|
-
authStateChanged(callback);
|
|
72
|
-
} else if (provider === "mock") {
|
|
73
|
-
authStateChangedMock(callback);
|
|
74
|
-
} else {
|
|
75
|
-
throwUndefinedProviderError();
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
|
-
const isAuthenticatedImpl = () => {
|
|
79
|
-
if (provider === "firebase") {
|
|
80
|
-
return isAuthenticated();
|
|
81
|
-
}
|
|
82
|
-
if (provider === "mock") {
|
|
83
|
-
return isAuthenticatedMock();
|
|
84
|
-
}
|
|
85
|
-
return throwUndefinedProviderError();
|
|
86
|
-
};
|
|
87
|
-
const loginImpl = (user, sec) => {
|
|
88
|
-
if (!user) {
|
|
89
|
-
const returnError = new Error("empty user");
|
|
90
|
-
return Promise.reject(returnError);
|
|
91
|
-
}
|
|
92
|
-
if (!sec) {
|
|
93
|
-
const returnError = new Error("empty password");
|
|
94
|
-
return Promise.reject(returnError);
|
|
95
|
-
}
|
|
96
|
-
if (provider === "firebase") {
|
|
97
|
-
return login(user, sec);
|
|
98
|
-
}
|
|
99
|
-
if (provider === "mock") {
|
|
100
|
-
return loginMock(user, sec);
|
|
101
|
-
}
|
|
102
|
-
return throwUndefinedProviderError();
|
|
103
|
-
};
|
|
104
|
-
const logoutImpl = () => {
|
|
105
|
-
if (provider === "firebase") {
|
|
106
|
-
return logout();
|
|
107
|
-
}
|
|
108
|
-
if (provider === "mock") {
|
|
109
|
-
return logoutMock();
|
|
110
|
-
}
|
|
111
|
-
return throwUndefinedProviderError();
|
|
112
|
-
};
|
|
113
|
-
const getUser = () => {
|
|
114
|
-
if (provider === "firebase") {
|
|
115
|
-
return getAuthUser();
|
|
116
|
-
}
|
|
117
|
-
if (provider === "mock") {
|
|
118
|
-
return getAuthUserMock();
|
|
119
|
-
}
|
|
120
|
-
return throwUndefinedProviderError();
|
|
121
|
-
};
|
|
122
|
-
const uploadFile = (file) => {
|
|
123
|
-
if (provider === "firebase") {
|
|
124
|
-
return uploadFirestorageFile(file);
|
|
125
|
-
}
|
|
126
|
-
if (provider === "mock") {
|
|
127
|
-
return uploadStorageFileMock(file);
|
|
128
|
-
}
|
|
129
|
-
return throwUndefinedProviderError();
|
|
130
|
-
};
|
|
131
|
-
const getStorageFileList = (storageName, keyRef, subFolder, includeMetadata) => {
|
|
132
|
-
if (provider === "firebase") {
|
|
133
|
-
return getFirestorageFileList(
|
|
134
|
-
storageName,
|
|
135
|
-
keyRef,
|
|
136
|
-
subFolder,
|
|
137
|
-
includeMetadata
|
|
138
|
-
);
|
|
139
|
-
}
|
|
140
|
-
if (provider === "mock") {
|
|
141
|
-
return getMockFileList(storageName, keyRef, subFolder, includeMetadata);
|
|
142
|
-
}
|
|
143
|
-
return throwUndefinedProviderError();
|
|
144
|
-
};
|
|
145
|
-
const getStorageFile = (storageName, refKey, storageURI, includeMetaData) => {
|
|
146
|
-
if (provider === "firebase") {
|
|
147
|
-
return getFirestorageFile(storageName, refKey, storageURI, includeMetaData);
|
|
148
|
-
}
|
|
149
|
-
return throwUndefinedProviderError();
|
|
150
|
-
};
|
|
151
|
-
const downloadFile = (file) => {
|
|
152
|
-
if (provider === "firebase") {
|
|
153
|
-
return downloadFileFirestorage(file);
|
|
154
|
-
}
|
|
155
|
-
if (provider === "mock") {
|
|
156
|
-
return downloadFileMock();
|
|
157
|
-
}
|
|
158
|
-
return throwUndefinedProviderError();
|
|
159
|
-
};
|
|
160
|
-
const deleteFile = (file) => {
|
|
161
|
-
if (provider === "firebase") {
|
|
162
|
-
return deleteFirestorageDocument(file);
|
|
163
|
-
}
|
|
164
|
-
return throwUndefinedProviderError();
|
|
165
|
-
};
|
|
166
|
-
const getStorageConfiguration = () => {
|
|
167
|
-
if (provider === "firebase") {
|
|
168
|
-
return getFirestorageConf();
|
|
169
|
-
}
|
|
170
|
-
return throwUndefinedProviderError();
|
|
171
|
-
};
|
|
172
|
-
const activateCollectionListener = (callback, col, constraints) => {
|
|
173
|
-
if (provider === "firebase") {
|
|
174
|
-
return getFirebaseCollectionListener(callback, col, constraints);
|
|
175
|
-
}
|
|
176
|
-
if (provider === "mock") {
|
|
177
|
-
serviceLogger.warn(
|
|
178
|
-
"getCollectionListener not implemented for MOCK, do noting"
|
|
179
|
-
);
|
|
180
|
-
return "";
|
|
181
|
-
}
|
|
182
|
-
return throwUndefinedProviderError();
|
|
183
|
-
};
|
|
184
|
-
const registerAppDeviceForNotification = async (registration) => {
|
|
185
|
-
if (provider === "firebase") {
|
|
186
|
-
return registerDevice(registration);
|
|
187
|
-
}
|
|
188
|
-
if (provider === "mock") {
|
|
189
|
-
serviceLogger.warn(
|
|
190
|
-
"registerAppDeviceForNotification not implemented for MOCK, do noting"
|
|
191
|
-
);
|
|
192
|
-
return Promise.resolve();
|
|
193
|
-
}
|
|
194
|
-
return throwUndefinedProviderError();
|
|
195
|
-
};
|
|
196
|
-
const getMessagingImpl = () => {
|
|
197
|
-
if (provider === "firebase") {
|
|
198
|
-
return getFirebaseMessaging();
|
|
199
|
-
}
|
|
200
|
-
if (provider === "mock") {
|
|
201
|
-
serviceLogger.warn("getMessagingImpl not implemented for MOCK, do noting");
|
|
202
|
-
return void 0;
|
|
203
|
-
}
|
|
204
|
-
return throwUndefinedProviderError();
|
|
205
|
-
};
|
|
206
|
-
const getUserIdToken = async (refresh) => {
|
|
207
|
-
if (provider === "firebase") {
|
|
208
|
-
const userResult = await getFirebaseUserIdToken(refresh);
|
|
209
|
-
return userResult ? {
|
|
210
|
-
...userResult,
|
|
211
|
-
appName: app.name
|
|
212
|
-
} : void 0;
|
|
213
|
-
}
|
|
214
|
-
if (provider === "mock") {
|
|
215
|
-
serviceLogger.warn("getUserIdToken not implemented for MOCK, do noting");
|
|
216
|
-
return void 0;
|
|
217
|
-
}
|
|
218
|
-
return throwUndefinedProviderError();
|
|
219
|
-
};
|
|
220
|
-
const getApp = () => app;
|
|
221
|
-
|
|
222
|
-
export { activateCollectionListener, authStateChangedImpl, callFunctionImpl, deleteFile, downloadFile, getApp, getMessagingImpl, getStorageConfiguration, getStorageFile, getStorageFileList, getUser, getUserIdToken, initAppImpl, isAuthenticatedImpl, loginImpl, logoutImpl, registerAppDeviceForNotification, setServiceProvider, uploadFile };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"indexDB.d.ts","sourceRoot":"","sources":["../../src/store/indexDB.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAmBhD,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,OAAO,MAAM,EAAE,IAAI,CAAC,EAAE,kBAAkB,OAAO,qBAclE,CAAC;AAEL,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,OAAO,MAAM,EAAE,IAAI,CAAC,qBAW1C,CAAC;AAEL,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,OAAO,MAAM,EAAE,SAAS,CAAC,EAAE,qBAUpD,CAAC;AAEL,eAAO,MAAM,MAAM,GAAI,CAAC,EACtB,OAAO,MAAM,EACb,SAAS,CAAC,EAAE,EACZ,kBAAkB,OAAO,qBAWvB,CAAC;AAaL,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,EAAE,WAAW,MAAM,EAAE,qBAU1D,CAAC;AAEL,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,OAAO,MAAM,EAAE,IAAI,MAAM,KAAG,OAAO,CAAC,CAAC,CAKxD,CAAC;AAEL,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,OAAO,MAAM,EAAE,QAAQ,MAAM,KAAG,OAAO,CAAC,CAAC,EAAE,CAwBjE,CAAC;AAEL,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,qBAqBnC,CAAC;AAEL,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,qBASnC,CAAC;AAEL,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,qBAMzC,CAAC;AAEL;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE;YACd,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,EAAE,CAAC;CACL,SAgDA,CAAC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { StoryObj } from '@storybook/web-components';
|
|
2
|
-
declare const meta: {
|
|
3
|
-
title: string;
|
|
4
|
-
render: ({ withPayment, withPropertyOwner, withPropertyDate, contacts, }: import('@storybook/web-components').Args) => import('lit').TemplateResult<1>;
|
|
5
|
-
argTypes: {
|
|
6
|
-
backgroundColor: {
|
|
7
|
-
control: "color";
|
|
8
|
-
};
|
|
9
|
-
onClick: {
|
|
10
|
-
action: string;
|
|
11
|
-
};
|
|
12
|
-
size: {
|
|
13
|
-
control: {
|
|
14
|
-
type: "select";
|
|
15
|
-
};
|
|
16
|
-
options: string[];
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
export default meta;
|
|
21
|
-
type Story = StoryObj;
|
|
22
|
-
export declare const EditForm: Story;
|
|
23
|
-
export declare const EditCompanyForm: Story;
|
|
24
|
-
export declare const EditFormWithBilling: Story;
|
|
25
|
-
export declare const EditFormWithBillingAndAdmin: Story;
|
|
26
|
-
export declare const EditFormWithBillingAndAdminAndPropertyDate: Story;
|
|
27
|
-
//# sourceMappingURL=address-edit.stories.d.ts.map
|