@progressive-development/pd-spa-helper 0.9.2 → 1.0.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.
Files changed (269) hide show
  1. package/dist/PdSpaHelper.d.ts +83 -0
  2. package/dist/PdSpaHelper.d.ts.map +1 -0
  3. package/dist/PdSpaHelper.js +492 -0
  4. package/dist/defaultpage/default-confirm-popup.d.ts +19 -0
  5. package/dist/defaultpage/default-confirm-popup.d.ts.map +1 -0
  6. package/dist/defaultpage/default-confirm-popup.js +70 -0
  7. package/dist/defaultpage/default-dialog-popup.d.ts +19 -0
  8. package/dist/defaultpage/default-dialog-popup.d.ts.map +1 -0
  9. package/dist/defaultpage/default-dialog-popup.js +103 -0
  10. package/dist/defaultpage/default-login.d.ts +6 -0
  11. package/dist/defaultpage/default-login.d.ts.map +1 -0
  12. package/dist/defaultpage/default-login.js +33 -0
  13. package/dist/defaultpage/default-not-found.d.ts +6 -0
  14. package/dist/defaultpage/default-not-found.d.ts.map +1 -0
  15. package/dist/{components/default-not-found/DefaultNotFound.js → defaultpage/default-not-found.js} +3 -10
  16. package/dist/defaultpage/default-popup.d.ts +7 -0
  17. package/dist/defaultpage/default-popup.d.ts.map +1 -0
  18. package/dist/defaultpage/default-popup.js +24 -0
  19. package/dist/defaultpage/default-step-address.d.ts +14 -0
  20. package/dist/defaultpage/default-step-address.d.ts.map +1 -0
  21. package/dist/defaultpage/default-step-address.js +77 -0
  22. package/dist/defaultpage/default-step-summary.d.ts +28 -0
  23. package/dist/defaultpage/default-step-summary.d.ts.map +1 -0
  24. package/dist/defaultpage/default-step-summary.js +67 -0
  25. package/dist/defaultpage/default-view-page.d.ts +10 -0
  26. package/dist/defaultpage/default-view-page.d.ts.map +1 -0
  27. package/dist/defaultpage/default-view-page.js +70 -0
  28. package/dist/defaultpage/default-wizard.d.ts +37 -0
  29. package/dist/defaultpage/default-wizard.d.ts.map +1 -0
  30. package/dist/defaultpage/default-wizard.js +255 -0
  31. package/dist/defaultpage/pd-default-wizard-step.d.ts +60 -0
  32. package/dist/defaultpage/pd-default-wizard-step.d.ts.map +1 -0
  33. package/dist/defaultpage/pd-default-wizard-step.js +144 -0
  34. package/dist/generated/locale-wrapper/be-wrapper.d.ts +14 -49
  35. package/dist/generated/locale-wrapper/be-wrapper.d.ts.map +1 -1
  36. package/dist/generated/locale-wrapper/de-wrapper.d.ts +14 -49
  37. package/dist/generated/locale-wrapper/de-wrapper.d.ts.map +1 -1
  38. package/dist/generated/locale-wrapper/en-wrapper.d.ts +14 -49
  39. package/dist/generated/locale-wrapper/en-wrapper.d.ts.map +1 -1
  40. package/dist/generated/locales/be.d.ts +15 -1
  41. package/dist/generated/locales/be.d.ts.map +1 -1
  42. package/dist/generated/locales/be.js +15 -1
  43. package/dist/generated/locales/de.d.ts +15 -1
  44. package/dist/generated/locales/de.d.ts.map +1 -1
  45. package/dist/generated/locales/de.js +15 -1
  46. package/dist/generated/locales/en.d.ts +15 -1
  47. package/dist/generated/locales/en.d.ts.map +1 -1
  48. package/dist/generated/locales/en.js +15 -1
  49. package/dist/helper/blob-helper.d.ts +3 -0
  50. package/dist/helper/blob-helper.d.ts.map +1 -0
  51. package/dist/helper/blob-helper.js +35 -0
  52. package/dist/helper/date-helper.d.ts +27 -0
  53. package/dist/helper/date-helper.d.ts.map +1 -0
  54. package/dist/helper/date-helper.js +129 -0
  55. package/dist/helper/locale-format.d.ts +4 -0
  56. package/dist/helper/locale-format.d.ts.map +1 -0
  57. package/dist/helper/locale-format.js +16 -0
  58. package/dist/helper/logger.d.ts +12 -11
  59. package/dist/helper/logger.d.ts.map +1 -1
  60. package/dist/helper/logger.js +49 -10
  61. package/dist/helper/number-helper.d.ts +2 -0
  62. package/dist/helper/number-helper.d.ts.map +1 -0
  63. package/dist/helper/number-helper.js +13 -0
  64. package/dist/helper/price-helper.d.ts +5 -0
  65. package/dist/helper/price-helper.d.ts.map +1 -0
  66. package/dist/helper/price-helper.js +22 -0
  67. package/dist/helper/refresh-id-token.d.ts.map +1 -1
  68. package/dist/helper/refresh-id-token.js +4 -6
  69. package/dist/helper/text-helper.d.ts +3 -0
  70. package/dist/helper/text-helper.d.ts.map +1 -0
  71. package/dist/helper/text-helper.js +4 -0
  72. package/dist/index.d.ts +29 -31
  73. package/dist/index.d.ts.map +1 -1
  74. package/dist/index.js +50 -27
  75. package/dist/model/spa-model.d.ts +15 -14
  76. package/dist/model/spa-model.d.ts.map +1 -1
  77. package/dist/popup/wizard-close-popup.d.ts +11 -0
  78. package/dist/popup/wizard-close-popup.d.ts.map +1 -0
  79. package/dist/popup/wizard-close-popup.js +63 -0
  80. package/dist/popup/wizard-reload-popup.d.ts +14 -0
  81. package/dist/popup/wizard-reload-popup.d.ts.map +1 -0
  82. package/dist/popup/wizard-reload-popup.js +76 -0
  83. package/dist/router/PdRouterService.d.ts +1 -4
  84. package/dist/router/PdRouterService.d.ts.map +1 -1
  85. package/dist/router/PdRouterService.js +16 -40
  86. package/dist/service-provider/firebase/auth.d.ts +19 -0
  87. package/dist/service-provider/firebase/auth.d.ts.map +1 -0
  88. package/dist/service-provider/firebase/auth.js +62 -0
  89. package/dist/service-provider/firebase/firestorage-client.d.ts +22 -0
  90. package/dist/service-provider/firebase/firestorage-client.d.ts.map +1 -0
  91. package/dist/service-provider/firebase/firestorage-client.js +226 -0
  92. package/dist/service-provider/firebase/firestore-client.d.ts +12 -0
  93. package/dist/service-provider/firebase/firestore-client.d.ts.map +1 -0
  94. package/dist/service-provider/firebase/firestore-client.js +25 -0
  95. package/dist/service-provider/firebase/functions-client.d.ts +10 -0
  96. package/dist/service-provider/firebase/functions-client.d.ts.map +1 -0
  97. package/dist/service-provider/firebase/functions-client.js +63 -0
  98. package/dist/service-provider/firebase/messagingFirebaseClient.d.ts +9 -0
  99. package/dist/service-provider/firebase/messagingFirebaseClient.d.ts.map +1 -0
  100. package/dist/service-provider/firebase/messagingFirebaseClient.js +69 -0
  101. package/dist/service-provider/mock/auth.d.ts +6 -0
  102. package/dist/service-provider/mock/auth.d.ts.map +1 -0
  103. package/dist/service-provider/mock/auth.js +60 -0
  104. package/dist/service-provider/mock/function-client.d.ts +7 -0
  105. package/dist/service-provider/mock/function-client.d.ts.map +1 -0
  106. package/dist/service-provider/mock/function-client.js +30 -0
  107. package/dist/service-provider/mock/storage-client.d.ts +11 -0
  108. package/dist/service-provider/mock/storage-client.d.ts.map +1 -0
  109. package/dist/service-provider/mock/storage-client.js +106 -0
  110. package/dist/service-provider/service-provider-impl.d.ts +27 -0
  111. package/dist/service-provider/service-provider-impl.d.ts.map +1 -0
  112. package/dist/service-provider/service-provider-impl.js +222 -0
  113. package/dist/service-provider/service-provider-model.d.ts +10 -55
  114. package/dist/service-provider/service-provider-model.d.ts.map +1 -1
  115. package/dist/{db → store}/indexDB.d.ts +9 -9
  116. package/dist/store/indexDB.d.ts.map +1 -0
  117. package/dist/{db → store}/indexDB.js +12 -14
  118. package/dist/store/mini-rx.store.d.ts.map +1 -1
  119. package/dist/store/mini-rx.store.js +3 -1
  120. package/dist/store/spa-app-actions.d.ts +22 -5
  121. package/dist/store/spa-app-actions.d.ts.map +1 -1
  122. package/dist/store/spa-app-actions.js +8 -4
  123. package/dist/store/spa-app-effects.d.ts +17 -0
  124. package/dist/store/spa-app-effects.d.ts.map +1 -1
  125. package/dist/store/spa-app-effects.js +40 -2
  126. package/dist/store/spa-app-reducer.d.ts +10 -5
  127. package/dist/store/spa-app-reducer.d.ts.map +1 -1
  128. package/dist/store/spa-app-reducer.js +8 -13
  129. package/dist/store/spa-app-selector.d.ts +2 -2
  130. package/dist/store/spa-app-selector.d.ts.map +1 -1
  131. package/dist/store/spa-app-selector.js +1 -1
  132. package/dist/stories/address-edit.stories.d.ts +27 -0
  133. package/dist/stories/address-edit.stories.d.ts.map +1 -0
  134. package/dist/stories/address-new.stories.d.ts +33 -0
  135. package/dist/stories/address-new.stories.d.ts.map +1 -0
  136. package/dist/stories/default-confirm-popup.stories.d.ts +24 -0
  137. package/dist/stories/default-confirm-popup.stories.d.ts.map +1 -0
  138. package/dist/stories/default-dialog-popup.stories.d.ts +23 -0
  139. package/dist/stories/default-dialog-popup.stories.d.ts.map +1 -0
  140. package/dist/stories/default-login.stories.d.ts +10 -0
  141. package/dist/stories/default-login.stories.d.ts.map +1 -0
  142. package/dist/stories/default-popup.stories.d.ts +9 -0
  143. package/dist/stories/default-popup.stories.d.ts.map +1 -0
  144. package/dist/stories/pd-loading-state.stories.d.ts +30 -0
  145. package/dist/stories/pd-loading-state.stories.d.ts.map +1 -0
  146. package/dist/stories/pd-toast.stories.d.ts +27 -0
  147. package/dist/stories/pd-toast.stories.d.ts.map +1 -0
  148. package/dist/stories/routing.stories.d.ts +24 -0
  149. package/dist/stories/routing.stories.d.ts.map +1 -0
  150. package/dist/stories/test-impls/address-test.d.ts +6 -0
  151. package/dist/stories/test-impls/address-test.d.ts.map +1 -0
  152. package/dist/stories/test-impls/test-mock-app.d.ts +15 -0
  153. package/dist/stories/test-impls/test-mock-app.d.ts.map +1 -0
  154. package/dist/stories/test-impls/test-pages/test-home-page.d.ts +7 -0
  155. package/dist/stories/test-impls/test-pages/test-home-page.d.ts.map +1 -0
  156. package/dist/stories/test-impls/test-pages/test-not-found-page.d.ts +5 -0
  157. package/dist/stories/test-impls/test-pages/test-not-found-page.d.ts.map +1 -0
  158. package/dist/stories/test-impls/test-pages/test-wizard-step.d.ts +17 -0
  159. package/dist/stories/test-impls/test-pages/test-wizard-step.d.ts.map +1 -0
  160. package/dist/stories/test-impls/test-pages/test-wizard.d.ts +16 -0
  161. package/dist/stories/test-impls/test-pages/test-wizard.d.ts.map +1 -0
  162. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-error.d.ts +8 -0
  163. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-error.d.ts.map +1 -0
  164. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-info.d.ts +8 -0
  165. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-info.d.ts.map +1 -0
  166. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-warn.d.ts +8 -0
  167. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-warn.d.ts.map +1 -0
  168. package/dist/stories/test-impls/test-popups/default-dialog-popup-test.d.ts +13 -0
  169. package/dist/stories/test-impls/test-popups/default-dialog-popup-test.d.ts.map +1 -0
  170. package/dist/stories/test-impls/test-popups/default-popup-test.d.ts +5 -0
  171. package/dist/stories/test-impls/test-popups/default-popup-test.d.ts.map +1 -0
  172. package/dist/stories/test-wizard-step.stories.d.ts +11 -0
  173. package/dist/stories/test-wizard-step.stories.d.ts.map +1 -0
  174. package/dist/stories/test-wizard.stories.d.ts +9 -0
  175. package/dist/stories/test-wizard.stories.d.ts.map +1 -0
  176. package/dist/tmpown/pd-loading-state.d.ts +9 -0
  177. package/dist/tmpown/pd-loading-state.d.ts.map +1 -0
  178. package/dist/tmpown/pd-loading-state.js +196 -0
  179. package/dist/tmpown/pd-login.d.ts +13 -0
  180. package/dist/tmpown/pd-login.d.ts.map +1 -0
  181. package/dist/tmpown/pd-login.js +165 -0
  182. package/dist/tmpown/pd-toast.d.ts +13 -0
  183. package/dist/tmpown/pd-toast.d.ts.map +1 -0
  184. package/dist/tmpown/pd-toast.js +127 -0
  185. package/package.json +9 -14
  186. package/dist/auth/AuthController.d.ts +0 -37
  187. package/dist/auth/AuthController.d.ts.map +0 -1
  188. package/dist/auth/AuthController.js +0 -65
  189. package/dist/auth/auth-directives.d.ts +0 -59
  190. package/dist/auth/auth-directives.d.ts.map +0 -1
  191. package/dist/auth/auth-directives.js +0 -81
  192. package/dist/auth/auth-utils.d.ts +0 -45
  193. package/dist/auth/auth-utils.d.ts.map +0 -1
  194. package/dist/auth/auth-utils.js +0 -42
  195. package/dist/auth/index.d.ts +0 -7
  196. package/dist/auth/index.d.ts.map +0 -1
  197. package/dist/components/default-login/DefaultLogin.d.ts +0 -15
  198. package/dist/components/default-login/DefaultLogin.d.ts.map +0 -1
  199. package/dist/components/default-login/DefaultLogin.js +0 -120
  200. package/dist/components/default-not-found/DefaultNotFound.d.ts +0 -6
  201. package/dist/components/default-not-found/DefaultNotFound.d.ts.map +0 -1
  202. package/dist/components/pd-section-page/PdSectionPage.d.ts +0 -55
  203. package/dist/components/pd-section-page/PdSectionPage.d.ts.map +0 -1
  204. package/dist/components/pd-section-page/PdSectionPage.js +0 -37
  205. package/dist/components/pd-spa-helper/PdSpaHelper.d.ts +0 -196
  206. package/dist/components/pd-spa-helper/PdSpaHelper.d.ts.map +0 -1
  207. package/dist/components/pd-spa-helper/PdSpaHelper.js +0 -603
  208. package/dist/components/pd-spa-helper/controllers/ScrollController.d.ts +0 -77
  209. package/dist/components/pd-spa-helper/controllers/ScrollController.d.ts.map +0 -1
  210. package/dist/components/pd-spa-helper/controllers/ScrollController.js +0 -102
  211. package/dist/components/pd-spa-helper/spa-config.d.ts +0 -95
  212. package/dist/components/pd-spa-helper/spa-config.d.ts.map +0 -1
  213. package/dist/components/pd-spa-helper/spa-config.js +0 -175
  214. package/dist/components/pd-spa-helper/spa-events.d.ts +0 -132
  215. package/dist/components/pd-spa-helper/spa-events.d.ts.map +0 -1
  216. package/dist/components/pd-spa-helper/spa-events.js +0 -18
  217. package/dist/db/index.d.ts +0 -3
  218. package/dist/db/index.d.ts.map +0 -1
  219. package/dist/db/indexDB.d.ts.map +0 -1
  220. package/dist/model/index.d.ts +0 -4
  221. package/dist/model/index.d.ts.map +0 -1
  222. package/dist/router/index.d.ts +0 -3
  223. package/dist/router/index.d.ts.map +0 -1
  224. package/dist/screen-size/ScreenSizeController.d.ts +0 -34
  225. package/dist/screen-size/ScreenSizeController.d.ts.map +0 -1
  226. package/dist/screen-size/ScreenSizeController.js +0 -58
  227. package/dist/screen-size/ScreenSizeService.d.ts +0 -49
  228. package/dist/screen-size/ScreenSizeService.d.ts.map +0 -1
  229. package/dist/screen-size/ScreenSizeService.js +0 -107
  230. package/dist/screen-size/index.d.ts +0 -13
  231. package/dist/screen-size/index.d.ts.map +0 -1
  232. package/dist/screen-size/responsive-directives.d.ts +0 -59
  233. package/dist/screen-size/responsive-directives.d.ts.map +0 -1
  234. package/dist/screen-size/responsive-directives.js +0 -71
  235. package/dist/screen-size/types.d.ts +0 -44
  236. package/dist/screen-size/types.d.ts.map +0 -1
  237. package/dist/service-provider/ServiceRegistry.d.ts +0 -67
  238. package/dist/service-provider/ServiceRegistry.d.ts.map +0 -1
  239. package/dist/service-provider/ServiceRegistry.js +0 -76
  240. package/dist/service-provider/function-utils.d.ts +0 -55
  241. package/dist/service-provider/function-utils.d.ts.map +0 -1
  242. package/dist/service-provider/function-utils.js +0 -30
  243. package/dist/service-provider/index.d.ts +0 -10
  244. package/dist/service-provider/index.d.ts.map +0 -1
  245. package/dist/service-provider/interfaces/IAuthProvider.d.ts +0 -68
  246. package/dist/service-provider/interfaces/IAuthProvider.d.ts.map +0 -1
  247. package/dist/service-provider/interfaces/IDatabaseProvider.d.ts +0 -75
  248. package/dist/service-provider/interfaces/IDatabaseProvider.d.ts.map +0 -1
  249. package/dist/service-provider/interfaces/IFunctionProvider.d.ts +0 -49
  250. package/dist/service-provider/interfaces/IFunctionProvider.d.ts.map +0 -1
  251. package/dist/service-provider/interfaces/IStorageProvider.d.ts +0 -118
  252. package/dist/service-provider/interfaces/IStorageProvider.d.ts.map +0 -1
  253. package/dist/service-provider/interfaces/ServiceProvider.d.ts +0 -24
  254. package/dist/service-provider/interfaces/ServiceProvider.d.ts.map +0 -1
  255. package/dist/service-provider/interfaces/common.d.ts +0 -5
  256. package/dist/service-provider/interfaces/common.d.ts.map +0 -1
  257. package/dist/services/fire-once-service.d.ts +0 -35
  258. package/dist/services/fire-once-service.d.ts.map +0 -1
  259. package/dist/services/fire-once-service.js +0 -61
  260. package/dist/store/async-action-effects.d.ts +0 -179
  261. package/dist/store/async-action-effects.d.ts.map +0 -1
  262. package/dist/store/async-action-effects.js +0 -98
  263. package/dist/store/async-action-utils.d.ts +0 -154
  264. package/dist/store/async-action-utils.d.ts.map +0 -1
  265. package/dist/store/async-action-utils.js +0 -42
  266. package/dist/store/index.d.ts +0 -9
  267. package/dist/store/index.d.ts.map +0 -1
  268. package/dist/stories/introduction.stories.d.ts +0 -11
  269. package/dist/stories/introduction.stories.d.ts.map +0 -1
@@ -0,0 +1,3 @@
1
+ export declare const isEmpty: (field?: string) => boolean;
2
+ export declare const isBlank: (field?: string) => boolean;
3
+ //# sourceMappingURL=text-helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-helper.d.ts","sourceRoot":"","sources":["../../src/helper/text-helper.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,GAAI,QAAQ,MAAM,KAAG,OAAiC,CAAC;AAE3E,eAAO,MAAM,OAAO,GAAI,QAAQ,MAAM,KAAG,OACR,CAAC"}
@@ -0,0 +1,4 @@
1
+ const isEmpty = (field) => !field || field === "";
2
+ const isBlank = (field) => !field || isEmpty(field.trim());
3
+
4
+ export { isBlank, isEmpty };
package/dist/index.d.ts CHANGED
@@ -1,35 +1,33 @@
1
- export { PdSpaHelper, startInit, } from './components/pd-spa-helper/PdSpaHelper.js';
2
- export { PdSectionPage } from './components/pd-section-page/PdSectionPage.js';
3
- export type { SectionConfig, SectionRefs, } from './components/pd-section-page/PdSectionPage.js';
1
+ import { TemplateResult } from 'lit';
2
+ export { PdSpaHelper, startInit } from './PdSpaHelper.js';
3
+ export * as pdSpaModel from './service-provider/service-provider-model.js';
4
+ export * as pdSpaModel2 from './model/spa-model.js';
5
+ export * as pdOfflineWatcher from './helper/offline-watcher-helper.js';
6
+ export * as pdFileHelper from './helper/blob-helper.js';
7
+ export * as pdDateHelper from './helper/date-helper.js';
8
+ export * as pdPriceHelper from './helper/price-helper.js';
9
+ export * as pdNumberHelper from './helper/number-helper.js';
10
+ export * as pdTextHelper from './helper/text-helper.js';
11
+ export { DefaultViewPage } from './defaultpage/default-view-page.js';
12
+ export { DefaultConfirmPopup, ABORT_EVENT_NAME, STORE_EVENT_NAME, } from './defaultpage/default-confirm-popup.js';
13
+ export type { PopupType } from './defaultpage/default-confirm-popup.js';
14
+ export { DefaultDialogPopup } from './defaultpage/default-dialog-popup.js';
15
+ export { DefaultPopup } from './defaultpage/default-popup.js';
16
+ export { DefaultWizard } from './defaultpage/default-wizard.js';
17
+ export { PdDefaultWizardStep } from './defaultpage/pd-default-wizard-step.js';
18
+ export { DefaultStepAddress } from './defaultpage/default-step-address.js';
4
19
  export { createLogger, defaultLogger } from './helper/logger.js';
20
+ export { DefaultStepSummary } from './defaultpage/default-step-summary.js';
21
+ export type { OrderStep } from './defaultpage/default-step-summary.js';
22
+ export { loginImpl, logoutImpl, getUser, isAuthenticatedImpl, callFunctionImpl, uploadFile, downloadFile, deleteFile, getStorageFileList, getStorageFile, getStorageConfiguration, activateCollectionListener, registerAppDeviceForNotification, getApp, getMessagingImpl, getUserIdToken, } from './service-provider/service-provider-impl.js';
5
23
  export { refreshAndPersistUserIdToken } from './helper/refresh-id-token.js';
6
- export * as offlineWatcher from './helper/offline-watcher-helper.js';
7
- export { ServiceRegistry, services, } from './service-provider/ServiceRegistry.js';
8
- export type { AppConfiguration, NavigationConfig, NavigationPage, MenuElement, Footer, FooterSection, FooterSocialLink, LinkObj, FunctionDefinition, FunctionResult, FunctionParam, StoreConfig, StorageDocument, UploadFile, } from './service-provider/service-provider-model.js';
9
- export { BusinessError, SC_INVALID_USER, SC_TECHNICAL_FAILURE, } from './service-provider/service-provider-model.js';
10
- export { validateFunctionResult, validateResult, isBusinessError, extractErrorInfo, } from './service-provider/function-utils.js';
11
- export { pdStore, initializeStore } from './store/mini-rx.store.js';
24
+ export { pdStore } from './store/mini-rx.store.js';
12
25
  export { setRouteElement } from './store/spa-app-effects.js';
13
- export { loginSuccess, logoutSuccess, routeAction, addLoadingState, removeLoadingState, } from './store/spa-app-actions.js';
14
- export { selectAuthUser, getLoadingSelector, getOfflineSelector, } from './store/spa-app-selector.js';
15
- export * as SpaActions from './store/spa-app-actions.js';
16
- export * as SpaSelectors from './store/spa-app-selector.js';
17
- export type { SpaAppState } from './store/spa-app-reducer.js';
18
- export { createAsyncActionGroup, createAsyncAction, isActionFromGroup, getConfigForAction, } from './store/async-action-utils.js';
19
- export type { AsyncActionGroup, AsyncActionGroupBase, AsyncActionConfig, AsyncActionOptions, } from './store/async-action-utils.js';
20
- export { createLoadingEffect, createRemoveLoadingEffect, createSuccessToastEffect, createErrorToastEffect, createAllLoadingEffects, } from './store/async-action-effects.js';
21
- export type { LoadingEffectOptions, ErrorToastOptions, SuccessToastOptions, CreateLoadingEffectsOptions, } from './store/async-action-effects.js';
22
- export { pdRouterService, POST_LOGIN_REDIRECT_KEY, } from './router/PdRouterService.js';
23
- export type { RouteDefinition, RouteChangeInfo } from './router/rout-types.js';
24
- export { initDB, add, addAll, update, updateAll, get, getAll, getAllIds, deleteAll, deleteAllEl, removeDatabase, USER_COLLECTION, } from './db/indexDB.js';
25
- export type { IndexDBConfig } from './db/indexDB.js';
26
- export type { AppUser } from './model/spa-model.js';
27
- export { APP_CONF_EVENT, UNDEF } from './model/spa-model.js';
28
- export { getCurrentUser, isLoggedIn, hasRole, hasAnyRole, hasAllRoles, getUserEmail, getUserId, getUserClaims, AuthController, ifAuth, ifRole, ifNotAuth, } from './auth/index.js';
29
- export { screenSizeService, ScreenSizeController, responsiveText, responsiveValue, } from './screen-size/index.js';
30
- export type { Breakpoint, ResponsiveTextOptions, ResponsiveValueOptions, } from './screen-size/index.js';
31
- export { fireOnceService } from './services/fire-once-service.js';
32
- export { templates as beTemplates } from './generated/locale-wrapper/be-wrapper.js';
33
- export { templates as deTemplates } from './generated/locale-wrapper/de-wrapper.js';
34
- export { templates as enTemplates } from './generated/locale-wrapper/en-wrapper.js';
26
+ export * as pdAction from './store/spa-app-actions.js';
27
+ export * as pdSelector from './store/spa-app-selector.js';
28
+ export * as pdDB from './store/indexDB.js';
29
+ export { templates as beTemplaes } from './generated/locale-wrapper/be-wrapper.js';
30
+ export { templates as deTemplaes } from './generated/locale-wrapper/de-wrapper.js';
31
+ export { templates as enTemplaes } from './generated/locale-wrapper/en-wrapper.js';
32
+ export declare const dispatchToastEvent: (element: any, txt: string | TemplateResult, isSuccess: boolean, isError: boolean) => void;
35
33
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,KAAK,UAAU,MAAM,8CAA8C,CAAC;AAC3E,OAAO,KAAK,WAAW,MAAM,sBAAsB,CAAC;AAEpD,OAAO,KAAK,gBAAgB,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,cAAc,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAExE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,YAAY,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAEvE,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,CAAC;AAErD,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,CAAC;AAE3C,OAAO,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,0CAA0C,CAAC;AAEnF,eAAO,MAAM,kBAAkB,GAC7B,SAAS,GAAG,EACZ,KAAK,MAAM,GAAG,cAAc,EAC5B,WAAW,OAAO,EAClB,SAAS,OAAO,SAajB,CAAC"}
package/dist/index.js CHANGED
@@ -1,32 +1,55 @@
1
- export { PdSpaHelper, startInit } from './components/pd-spa-helper/PdSpaHelper.js';
2
- export { PdSectionPage } from './components/pd-section-page/PdSectionPage.js';
1
+ export { PdSpaHelper, startInit } from './PdSpaHelper.js';
2
+ import * as serviceProviderModel from './service-provider/service-provider-model.js';
3
+ export { serviceProviderModel as pdSpaModel };
4
+ import * as spaModel from './model/spa-model.js';
5
+ export { spaModel as pdSpaModel2 };
6
+ import * as offlineWatcherHelper from './helper/offline-watcher-helper.js';
7
+ export { offlineWatcherHelper as pdOfflineWatcher };
8
+ import * as blobHelper from './helper/blob-helper.js';
9
+ export { blobHelper as pdFileHelper };
10
+ import * as dateHelper from './helper/date-helper.js';
11
+ export { dateHelper as pdDateHelper };
12
+ import * as priceHelper from './helper/price-helper.js';
13
+ export { priceHelper as pdPriceHelper };
14
+ import * as numberHelper from './helper/number-helper.js';
15
+ export { numberHelper as pdNumberHelper };
16
+ import * as textHelper from './helper/text-helper.js';
17
+ export { textHelper as pdTextHelper };
18
+ export { DefaultViewPage } from './defaultpage/default-view-page.js';
19
+ export { ABORT_EVENT_NAME, DefaultConfirmPopup, STORE_EVENT_NAME } from './defaultpage/default-confirm-popup.js';
20
+ export { DefaultDialogPopup } from './defaultpage/default-dialog-popup.js';
21
+ export { DefaultPopup } from './defaultpage/default-popup.js';
22
+ export { DefaultWizard } from './defaultpage/default-wizard.js';
23
+ export { PdDefaultWizardStep } from './defaultpage/pd-default-wizard-step.js';
24
+ export { DefaultStepAddress } from './defaultpage/default-step-address.js';
3
25
  export { createLogger, defaultLogger } from './helper/logger.js';
26
+ export { DefaultStepSummary } from './defaultpage/default-step-summary.js';
27
+ export { activateCollectionListener, callFunctionImpl, deleteFile, downloadFile, getApp, getMessagingImpl, getStorageConfiguration, getStorageFile, getStorageFileList, getUser, getUserIdToken, isAuthenticatedImpl, loginImpl, logoutImpl, registerAppDeviceForNotification, uploadFile } from './service-provider/service-provider-impl.js';
4
28
  export { refreshAndPersistUserIdToken } from './helper/refresh-id-token.js';
5
- import * as offlineWatcherHelper from './helper/offline-watcher-helper.js';
6
- export { offlineWatcherHelper as offlineWatcher };
7
- export { ServiceRegistry, services } from './service-provider/ServiceRegistry.js';
8
- export { BusinessError, SC_INVALID_USER, SC_TECHNICAL_FAILURE } from './service-provider/service-provider-model.js';
9
- export { extractErrorInfo, isBusinessError, validateFunctionResult, validateResult } from './service-provider/function-utils.js';
10
- export { initializeStore, pdStore } from './store/mini-rx.store.js';
29
+ export { pdStore } from './store/mini-rx.store.js';
11
30
  export { setRouteElement } from './store/spa-app-effects.js';
12
31
  import * as spaAppActions from './store/spa-app-actions.js';
13
- export { spaAppActions as SpaActions };
14
- export { addLoadingState, loginSuccess, logoutSuccess, removeLoadingState, routeAction } from './store/spa-app-actions.js';
32
+ export { spaAppActions as pdAction };
15
33
  import * as spaAppSelector from './store/spa-app-selector.js';
16
- export { spaAppSelector as SpaSelectors };
17
- export { getLoadingSelector, getOfflineSelector, selectAuthUser } from './store/spa-app-selector.js';
18
- export { createAsyncAction, createAsyncActionGroup, getConfigForAction, isActionFromGroup } from './store/async-action-utils.js';
19
- export { createAllLoadingEffects, createErrorToastEffect, createLoadingEffect, createRemoveLoadingEffect, createSuccessToastEffect } from './store/async-action-effects.js';
20
- export { POST_LOGIN_REDIRECT_KEY, pdRouterService } from './router/PdRouterService.js';
21
- export { USER_COLLECTION, add, addAll, deleteAll, deleteAllEl, get, getAll, getAllIds, initDB, removeDatabase, update, updateAll } from './db/indexDB.js';
22
- export { APP_CONF_EVENT, UNDEF } from './model/spa-model.js';
23
- export { getCurrentUser, getUserClaims, getUserEmail, getUserId, hasAllRoles, hasAnyRole, hasRole, isLoggedIn } from './auth/auth-utils.js';
24
- export { AuthController } from './auth/AuthController.js';
25
- export { ifAuth, ifNotAuth, ifRole } from './auth/auth-directives.js';
26
- export { screenSizeService } from './screen-size/ScreenSizeService.js';
27
- export { ScreenSizeController } from './screen-size/ScreenSizeController.js';
28
- export { responsiveText, responsiveValue } from './screen-size/responsive-directives.js';
29
- export { fireOnceService } from './services/fire-once-service.js';
30
- export { templates as beTemplates } from './generated/locale-wrapper/be-wrapper.js';
31
- export { templates as deTemplates } from './generated/locale-wrapper/de-wrapper.js';
32
- export { templates as enTemplates } from './generated/locale-wrapper/en-wrapper.js';
34
+ export { spaAppSelector as pdSelector };
35
+ import * as indexDB from './store/indexDB.js';
36
+ export { indexDB as pdDB };
37
+ export { templates as beTemplaes } from './generated/locale-wrapper/be-wrapper.js';
38
+ export { templates as deTemplaes } from './generated/locale-wrapper/de-wrapper.js';
39
+ export { templates as enTemplaes } from './generated/locale-wrapper/en-wrapper.js';
40
+
41
+ const dispatchToastEvent = (element, txt, isSuccess, isError) => {
42
+ element.dispatchEvent(
43
+ new CustomEvent("toast-event", {
44
+ detail: {
45
+ txt,
46
+ isSuccess,
47
+ isError
48
+ },
49
+ bubbles: true,
50
+ composed: true
51
+ })
52
+ );
53
+ };
54
+
55
+ export { dispatchToastEvent };
@@ -1,23 +1,24 @@
1
1
  export declare const APP_CONF_EVENT = "get-app-conf";
2
2
  export declare const UNDEF = "UNDEF";
3
- /**
4
- * Minimal auth user interface for both Firebase and Mock providers.
5
- * Used for auth state change callbacks.
6
- */
7
- export interface AuthUser {
8
- uid: string;
9
- email?: string | null;
10
- displayName?: string | null;
11
- emailVerified?: boolean;
12
- }
13
- /**
14
- * Application user with claims after successful login.
15
- */
16
3
  export interface AppUser {
17
4
  uid: string;
18
5
  email: string | null;
19
6
  emailVerified: boolean;
20
7
  providerId: string;
21
- claims: Record<string, unknown>;
8
+ claims: Record<string, any>;
9
+ }
10
+ export interface LoadingSubTask {
11
+ actionKey: string;
12
+ completed: boolean;
13
+ loadingTxt: string;
14
+ }
15
+ export interface LoadingState {
16
+ creation?: Date;
17
+ isLoading: boolean;
18
+ actionKey: string;
19
+ modal?: boolean;
20
+ smallBackground?: boolean;
21
+ loadingTxt?: string;
22
+ subTask?: LoadingSubTask[];
22
23
  }
23
24
  //# sourceMappingURL=spa-model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spa-model.d.ts","sourceRoot":"","sources":["../../src/model/spa-model.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAE7C,eAAO,MAAM,KAAK,UAAU,CAAC;AAE7B;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC"}
1
+ {"version":3,"file":"spa-model.d.ts","sourceRoot":"","sources":["../../src/model/spa-model.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,iBAAiB,CAAC;AAE7C,eAAO,MAAM,KAAK,UAAU,CAAC;AAE7B,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;CAC5B"}
@@ -0,0 +1,11 @@
1
+ import { CSSResultGroup } from 'lit';
2
+ import { DefaultConfirmPopup, PopupType } from '../defaultpage/default-confirm-popup.js';
3
+ export declare class WizardClosePopup extends DefaultConfirmPopup {
4
+ _singleButton: boolean;
5
+ _type: PopupType;
6
+ _popupTitle: string;
7
+ withStorage: boolean;
8
+ static styles: CSSResultGroup;
9
+ _renderContent(): import('lit').TemplateResult<1>;
10
+ }
11
+ //# sourceMappingURL=wizard-close-popup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizard-close-popup.d.ts","sourceRoot":"","sources":["../../src/popup/wizard-close-popup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAIhD,OAAO,EACL,mBAAmB,EACnB,SAAS,EACV,MAAM,yCAAyC,CAAC;AAEjD,qBACa,gBAAiB,SAAQ,mBAAmB;IACvD,aAAa,UAAS;IAEtB,KAAK,EAAE,SAAS,CAAU;IAE1B,WAAW,SAER;IAGH,WAAW,EAAE,OAAO,CAAS;IAE7B,MAAM,CAAC,MAAM,EAYR,cAAc,CAAC;IAGpB,cAAc;CAiBf"}
@@ -0,0 +1,63 @@
1
+ import { css, html } from 'lit';
2
+ import { property, customElement } from 'lit/decorators.js';
3
+ import { msg } from '@lit/localize';
4
+ import { DefaultConfirmPopup } from '../defaultpage/default-confirm-popup.js';
5
+
6
+ var __defProp = Object.defineProperty;
7
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
+ var __decorateClass = (decorators, target, key, kind) => {
9
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
10
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
11
+ if (decorator = decorators[i])
12
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
13
+ if (kind && result) __defProp(target, key, result);
14
+ return result;
15
+ };
16
+ let WizardClosePopup = class extends DefaultConfirmPopup {
17
+ constructor() {
18
+ super(...arguments);
19
+ this._singleButton = false;
20
+ this._type = "warn";
21
+ this._popupTitle = msg("Bearbeitung abbrechen", {
22
+ id: "spaH.wizard.close.popup.title"
23
+ });
24
+ this.withStorage = false;
25
+ }
26
+ // eslint-disable-next-line class-methods-use-this
27
+ _renderContent() {
28
+ return html`
29
+ <div class="popup-content" slot="content">
30
+ <p>
31
+ ${this.withStorage ? msg(
32
+ "Die aktuellen Eingaben können für eine spätere Bearbeitung gespeichert oder verworfen werden. Welche Aktion soll ausgeführt werden?",
33
+ { id: "spaH.wizard.close.popup.storage.content" }
34
+ ) : msg(
35
+ "Die aktuellen Eingaben gehen nach dem Schließen unwiderruflich verloren. Dennoch schließen?",
36
+ { id: "spaH.wizard.reload.popup.noStorage.content" }
37
+ )}
38
+ </p>
39
+ </div>
40
+ `;
41
+ }
42
+ };
43
+ WizardClosePopup.styles = [
44
+ DefaultConfirmPopup.styles,
45
+ css`
46
+ :host {
47
+ --pd-popup-max-width: 80%;
48
+ }
49
+
50
+ .popup-content {
51
+ display: flex;
52
+ flex-direction: column;
53
+ }
54
+ `
55
+ ];
56
+ __decorateClass([
57
+ property({ type: Boolean })
58
+ ], WizardClosePopup.prototype, "withStorage", 2);
59
+ WizardClosePopup = __decorateClass([
60
+ customElement("wizard-close-popup")
61
+ ], WizardClosePopup);
62
+
63
+ export { WizardClosePopup };
@@ -0,0 +1,14 @@
1
+ import { CSSResultGroup } from 'lit';
2
+ import { DefaultConfirmPopup, PopupType } from '../defaultpage/default-confirm-popup.js';
3
+ export declare class WizardReloadPopup extends DefaultConfirmPopup {
4
+ _singleButton: boolean;
5
+ _type: PopupType;
6
+ _popupTitle: string;
7
+ reloadItem: {
8
+ timestamp: string;
9
+ wizardStep: number;
10
+ };
11
+ static styles: CSSResultGroup;
12
+ _renderContent(): import('lit').TemplateResult<1>;
13
+ }
14
+ //# sourceMappingURL=wizard-reload-popup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizard-reload-popup.d.ts","sourceRoot":"","sources":["../../src/popup/wizard-reload-popup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAIhD,OAAO,EACL,mBAAmB,EACnB,SAAS,EACV,MAAM,yCAAyC,CAAC;AAEjD,qBACa,iBAAkB,SAAQ,mBAAmB;IACxD,aAAa,UAAS;IAEtB,KAAK,EAAE,SAAS,CAAU;IAE1B,WAAW,SAER;IAGH,UAAU,EAAG;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IAEF,MAAM,CAAC,MAAM,EA0BR,cAAc,CAAC;IAGpB,cAAc;CAef"}
@@ -0,0 +1,76 @@
1
+ import { css, html } from 'lit';
2
+ import { property, customElement } from 'lit/decorators.js';
3
+ import { msg } from '@lit/localize';
4
+ import { DefaultConfirmPopup } from '../defaultpage/default-confirm-popup.js';
5
+
6
+ var __defProp = Object.defineProperty;
7
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
+ var __decorateClass = (decorators, target, key, kind) => {
9
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
10
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
11
+ if (decorator = decorators[i])
12
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
13
+ if (kind && result) __defProp(target, key, result);
14
+ return result;
15
+ };
16
+ let WizardReloadPopup = class extends DefaultConfirmPopup {
17
+ constructor() {
18
+ super(...arguments);
19
+ this._singleButton = false;
20
+ this._type = "info";
21
+ this._popupTitle = msg("Bearbeitung fortsetzen?", {
22
+ id: "spaH.wizard.reload.popup.title"
23
+ });
24
+ }
25
+ // eslint-disable-next-line class-methods-use-this
26
+ _renderContent() {
27
+ return html`
28
+ <div class="popup-content" slot="content">
29
+ <p>
30
+ ${msg(
31
+ "Für dieses Formular wurden bereits Daten gespeichert. Soll die Bearbeitung fortgesetzt, oder eine neue Dateneingabe gestartet werden? Bei einer neuen Eingabe werden die bisherigen Daten verworfen.",
32
+ { id: "spaH.wizard.reload.popup.content" }
33
+ )}
34
+ </p>
35
+ <div class="last-modified">
36
+ Letzte Bearbeitung: <span>${this.reloadItem.timestamp}</span>
37
+ </div>
38
+ </div>
39
+ `;
40
+ }
41
+ };
42
+ WizardReloadPopup.styles = [
43
+ DefaultConfirmPopup.styles,
44
+ css`
45
+ :host {
46
+ --pd-popup-max-width: 80%;
47
+ }
48
+
49
+ .popup-content {
50
+ display: flex;
51
+ flex-direction: column;
52
+ }
53
+
54
+ .last-modified {
55
+ color: #555;
56
+ }
57
+
58
+ .last-modified span {
59
+ font-weight: bold;
60
+ color: #000;
61
+ }
62
+
63
+ .last-modified::before {
64
+ content: "🕒";
65
+ margin-right: 6px;
66
+ }
67
+ `
68
+ ];
69
+ __decorateClass([
70
+ property({ type: Object })
71
+ ], WizardReloadPopup.prototype, "reloadItem", 2);
72
+ WizardReloadPopup = __decorateClass([
73
+ customElement("wizard-reload-popup")
74
+ ], WizardReloadPopup);
75
+
76
+ export { WizardReloadPopup };
@@ -1,12 +1,9 @@
1
1
  import { RouteChangeInfo, RouteDefinition } from './rout-types.js';
2
- export declare const POST_LOGIN_REDIRECT_KEY = "postLoginRedirect";
3
2
  type RouteChangeHandler = (info: RouteChangeInfo) => void;
4
3
  declare class PdRouterService {
5
4
  private router;
6
5
  private onChangeHandlers;
7
- private _currentRoute;
8
- private _previousRoute;
9
- get previousRoute(): string;
6
+ private currentRoute;
10
7
  constructor();
11
8
  /**
12
9
  * Setzt die Routen-Konfiguration. Muss vor Verwendung von navigate() aufgerufen werden.
@@ -1 +1 @@
1
- {"version":3,"file":"PdRouterService.d.ts","sourceRoot":"","sources":["../../src/router/PdRouterService.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAKnE,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAI3D,KAAK,kBAAkB,GAAG,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;AAmB1D,cAAM,eAAe;IAEnB,OAAO,CAAC,MAAM,CAAmD;IAEjE,OAAO,CAAC,gBAAgB,CAA4B;IAEpD,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,cAAc,CAAc;IAEpC,IAAW,aAAa,IAAI,MAAM,CAEjC;;IAQD;;OAEG;IACI,eAAe,CAAC,WAAW,EAAE,eAAe,EAAE;IAiFrD;;OAEG;IACU,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,UAAQ;IAejD;;OAEG;IACI,aAAa,CAAC,OAAO,EAAE,kBAAkB;IAIhD;;OAEG;YACW,OAAO;CAiEtB;AAaD,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
1
+ {"version":3,"file":"PdRouterService.d.ts","sourceRoot":"","sources":["../../src/router/PdRouterService.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAMnE,KAAK,kBAAkB,GAAG,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;AAE1D,cAAM,eAAe;IACnB,OAAO,CAAC,MAAM,CAAqC;IAEnD,OAAO,CAAC,gBAAgB,CAA4B;IAEpD,OAAO,CAAC,YAAY,CAAc;;IAQlC;;OAEG;IACI,eAAe,CAAC,WAAW,EAAE,eAAe,EAAE;IAgErD;;OAEG;IACU,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,UAAQ;IAejD;;OAEG;IACI,aAAa,CAAC,OAAO,EAAE,kBAAkB;IAIhD;;OAEG;YACW,OAAO;CAwDtB;AAaD,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
@@ -4,22 +4,16 @@ import { selectAuthUser } from '../store/spa-app-selector.js';
4
4
  import { pdStore } from '../store/mini-rx.store.js';
5
5
  import { createLogger } from '../helper/logger.js';
6
6
 
7
- const POST_LOGIN_REDIRECT_KEY = "postLoginRedirect";
8
7
  const routingLogger = createLogger("PdRouterService");
9
8
  class PdRouterService {
10
9
  constructor() {
11
- // UniversalRouter generic typing is complex; using explicit result type
12
10
  this.router = null;
13
11
  this.onChangeHandlers = [];
14
- this._currentRoute = "";
15
- this._previousRoute = "";
12
+ this.currentRoute = "";
16
13
  window.addEventListener("popstate", () => {
17
14
  this.resolve(location.pathname + location.search);
18
15
  });
19
16
  }
20
- get previousRoute() {
21
- return this._previousRoute;
22
- }
23
17
  /**
24
18
  * Setzt die Routen-Konfiguration. Muss vor Verwendung von navigate() aufgerufen werden.
25
19
  */
@@ -31,36 +25,24 @@ class PdRouterService {
31
25
  const universalRoutes = definitions.flatMap((def) => {
32
26
  return {
33
27
  path: def.pattern,
34
- // Context type from UniversalRouter extended with userCheck
35
28
  action: async (context) => {
36
- const requiresAuth = def.auth || def.roles && def.roles.length > 0;
37
- if (requiresAuth) {
29
+ if (def.auth) {
30
+ let authResult;
38
31
  if (!context.userCheck?.loginCheckFinish) {
39
32
  routingLogger.debug("Check login is running, wait for result...");
40
- const authResult = await waitForFinalAuthState();
33
+ authResult = await waitForFinalAuthState();
41
34
  routingLogger.debug("Check login is done, go on");
42
35
  context.userCheck = authResult;
43
36
  }
44
37
  if (!context.userCheck?.user) {
45
38
  const fallbackRoute = def.authFallback ?? "login";
46
- const currentPath = context.pathname || window.location.pathname;
47
- if (currentPath && currentPath !== "/" + fallbackRoute) {
48
- sessionStorage.setItem(POST_LOGIN_REDIRECT_KEY, currentPath);
49
- routingLogger.debug(
50
- "Stored redirect route for after login:",
51
- currentPath
52
- );
53
- }
54
39
  return { redirect: fallbackRoute };
55
40
  }
56
- if (def.roles && def.roles.length > 0 && !def.roles.some(
57
- (role) => context.userCheck?.user?.claims?.[role] === true
58
- )) {
59
- routingLogger.debug(
60
- "User lacks required role, redirecting to unauthorized"
61
- );
62
- return { redirect: "unauthorized" };
63
- }
41
+ }
42
+ if (def.roles && !def.roles.some(
43
+ (role) => context.userCheck.user.claims?.[role] === true
44
+ )) {
45
+ return { redirect: "unauthorized" };
64
46
  }
65
47
  if (def.action) {
66
48
  const result = await def.action();
@@ -110,6 +92,10 @@ class PdRouterService {
110
92
  const pathname = url.pathname;
111
93
  const query = Object.fromEntries(url.searchParams.entries());
112
94
  try {
95
+ routingLogger.debug(
96
+ "Bevore resolve current location:",
97
+ location.pathname
98
+ );
113
99
  const userCheck = await firstValueFrom(
114
100
  pdStore().select(selectAuthUser).pipe(first())
115
101
  );
@@ -117,16 +103,12 @@ class PdRouterService {
117
103
  pathname,
118
104
  userCheck
119
105
  });
120
- if (!result) {
121
- routingLogger.warn("No route result for path:", path);
122
- return;
123
- }
124
106
  if (result.redirect) {
125
107
  history.replaceState({}, "", result.redirect);
126
108
  await this.resolve(result.redirect);
127
109
  return;
128
110
  }
129
- if (typeof result !== "object" || !result.route) {
111
+ if (!result || typeof result !== "object" || !result.route) {
130
112
  routingLogger.warn("Invalid route result:", result);
131
113
  return;
132
114
  }
@@ -136,13 +118,7 @@ class PdRouterService {
136
118
  params: result.params ?? {},
137
119
  query
138
120
  };
139
- if (routeInfo.route !== "login" && !userCheck?.user && sessionStorage.getItem(POST_LOGIN_REDIRECT_KEY)) {
140
- sessionStorage.removeItem(POST_LOGIN_REDIRECT_KEY);
141
- }
142
- if (this._currentRoute && this._currentRoute !== "login") {
143
- this._previousRoute = this._currentRoute;
144
- }
145
- this._currentRoute = routeInfo.route;
121
+ this.currentRoute = routeInfo.route;
146
122
  this.onChangeHandlers.forEach((fn) => fn(routeInfo));
147
123
  } catch (err) {
148
124
  routingLogger.error("Routing error:", err);
@@ -159,4 +135,4 @@ async function waitForFinalAuthState() {
159
135
  }
160
136
  const pdRouterService = new PdRouterService();
161
137
 
162
- export { POST_LOGIN_REDIRECT_KEY, pdRouterService };
138
+ export { pdRouterService };
@@ -0,0 +1,19 @@
1
+ import { FirebaseApp } from 'firebase/app';
2
+ import { User } from 'firebase/auth';
3
+ /**
4
+ * During start/load application, initialize functions.
5
+ *
6
+ * @param {*} app - initialized app.
7
+ */
8
+ export declare const initAuth: (appParam: FirebaseApp) => void;
9
+ export declare const logout: () => Promise<boolean>;
10
+ export declare const isAuthenticated: () => boolean;
11
+ export declare const getAuthUser: () => unknown;
12
+ export declare const getFirebaseUserIdToken: (refresh: boolean) => Promise<{
13
+ userToken: string;
14
+ userName: string;
15
+ } | undefined>;
16
+ export declare const authStateChanged: (callback: (user: any) => void) => void;
17
+ export declare const authIdTokenStateChanged: (callback: (user: any) => void) => void;
18
+ export declare const login: (user: string, sec: string) => Promise<User>;
19
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +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,EAOL,IAAI,EACL,MAAM,eAAe,CAAC;AAOvB;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,UAAU,WAAW,SAG7C,CAAC;AAEF,eAAO,MAAM,MAAM,QAAa,OAAO,CAAC,OAAO,CAU9C,CAAC;AAEF,eAAO,MAAM,eAAe,QAAO,OAMlC,CAAC;AAEF,eAAO,MAAM,WAAW,QAAO,OAK9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,SAAS,OAAO,KACf,OAAO,CACN;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACD,SAAS,CAaZ,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,UAAU,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,SAiC7D,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,UAAU,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,SAEpE,CAAC;AAEF,eAAO,MAAM,KAAK,GAAU,MAAM,MAAM,EAAE,KAAK,MAAM,KAAG,OAAO,CAAC,IAAI,CAMnE,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { getAuth, onIdTokenChanged, onAuthStateChanged, signInWithEmailAndPassword, signOut } from 'firebase/auth';
2
+ import { createLogger } from '../../helper/logger.js';
3
+
4
+ const authLogger = createLogger("PdUserAuth");
5
+ let auth;
6
+ const initAuth = (appParam) => {
7
+ auth = getAuth(appParam);
8
+ authLogger.debug("App for auth is set: ", auth);
9
+ };
10
+ const logout = async () => {
11
+ if (!auth) {
12
+ throw new Error("logout: Auth was not initialized");
13
+ }
14
+ try {
15
+ await signOut(auth);
16
+ return true;
17
+ } catch (error) {
18
+ return false;
19
+ }
20
+ };
21
+ const isAuthenticated = () => {
22
+ if (!auth) {
23
+ throw new Error("isAuthenticated: Auth was not initialized");
24
+ }
25
+ const authCheck = auth.currentUser !== null;
26
+ return authCheck;
27
+ };
28
+ const getAuthUser = () => {
29
+ if (!auth) {
30
+ throw new Error("isAuthenticated: Auth was not initialized");
31
+ }
32
+ return auth.currentUser;
33
+ };
34
+ const getFirebaseUserIdToken = async (refresh) => {
35
+ if (!auth) {
36
+ throw new Error("isAuthenticated: Auth was not initialized");
37
+ }
38
+ const user = auth.currentUser;
39
+ const newIdToken = await user?.getIdToken(refresh);
40
+ return newIdToken ? {
41
+ userToken: newIdToken,
42
+ userName: user?.displayName || ""
43
+ } : void 0;
44
+ };
45
+ const authStateChanged = (callback) => {
46
+ if (!auth) {
47
+ throw new Error("authStateChanged: Auth was not initialized");
48
+ }
49
+ onAuthStateChanged(auth, callback);
50
+ };
51
+ const authIdTokenStateChanged = (callback) => {
52
+ onIdTokenChanged(auth, (user) => callback(user));
53
+ };
54
+ const login = async (user, sec) => {
55
+ if (!auth) {
56
+ throw new Error("login: Auth was not initialized");
57
+ }
58
+ const credentials = await signInWithEmailAndPassword(auth, user, sec);
59
+ return credentials.user;
60
+ };
61
+
62
+ export { authIdTokenStateChanged, authStateChanged, getAuthUser, getFirebaseUserIdToken, initAuth, isAuthenticated, login, logout };