@progressive-development/pd-spa-helper 0.9.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. package/dist/auth/AuthController.d.ts +37 -0
  2. package/dist/auth/AuthController.d.ts.map +1 -0
  3. package/dist/auth/AuthController.js +65 -0
  4. package/dist/auth/auth-directives.d.ts +59 -0
  5. package/dist/auth/auth-directives.d.ts.map +1 -0
  6. package/dist/auth/auth-directives.js +81 -0
  7. package/dist/auth/auth-utils.d.ts +45 -0
  8. package/dist/auth/auth-utils.d.ts.map +1 -0
  9. package/dist/auth/auth-utils.js +42 -0
  10. package/dist/auth/index.d.ts +7 -0
  11. package/dist/auth/index.d.ts.map +1 -0
  12. package/dist/components/default-login/DefaultLogin.d.ts +15 -0
  13. package/dist/components/default-login/DefaultLogin.d.ts.map +1 -0
  14. package/dist/components/default-login/DefaultLogin.js +120 -0
  15. package/dist/components/default-not-found/DefaultNotFound.d.ts +6 -0
  16. package/dist/components/default-not-found/DefaultNotFound.d.ts.map +1 -0
  17. package/dist/{defaultpage/default-not-found.js → components/default-not-found/DefaultNotFound.js} +10 -3
  18. package/dist/components/pd-section-page/PdSectionPage.d.ts +55 -0
  19. package/dist/components/pd-section-page/PdSectionPage.d.ts.map +1 -0
  20. package/dist/components/pd-section-page/PdSectionPage.js +40 -0
  21. package/dist/components/pd-spa-helper/PdSpaHelper.d.ts +160 -0
  22. package/dist/components/pd-spa-helper/PdSpaHelper.d.ts.map +1 -0
  23. package/dist/components/pd-spa-helper/PdSpaHelper.js +651 -0
  24. package/dist/components/pd-spa-helper/controllers/ScrollController.d.ts +77 -0
  25. package/dist/components/pd-spa-helper/controllers/ScrollController.d.ts.map +1 -0
  26. package/dist/components/pd-spa-helper/controllers/ScrollController.js +102 -0
  27. package/dist/components/pd-spa-helper/spa-config.d.ts +87 -0
  28. package/dist/components/pd-spa-helper/spa-config.d.ts.map +1 -0
  29. package/dist/components/pd-spa-helper/spa-config.js +167 -0
  30. package/dist/components/pd-spa-helper/spa-events.d.ts +121 -0
  31. package/dist/components/pd-spa-helper/spa-events.d.ts.map +1 -0
  32. package/dist/components/pd-spa-helper/spa-events.js +18 -0
  33. package/dist/db/index.d.ts +3 -0
  34. package/dist/db/index.d.ts.map +1 -0
  35. package/dist/{store → db}/indexDB.d.ts +9 -9
  36. package/dist/db/indexDB.d.ts.map +1 -0
  37. package/dist/{store → db}/indexDB.js +14 -12
  38. package/dist/generated/locales/be.d.ts +1 -15
  39. package/dist/generated/locales/be.d.ts.map +1 -1
  40. package/dist/generated/locales/be.js +1 -15
  41. package/dist/generated/locales/de.d.ts +1 -15
  42. package/dist/generated/locales/de.d.ts.map +1 -1
  43. package/dist/generated/locales/de.js +1 -15
  44. package/dist/generated/locales/en.d.ts +1 -15
  45. package/dist/generated/locales/en.d.ts.map +1 -1
  46. package/dist/generated/locales/en.js +1 -15
  47. package/dist/helper/logger.d.ts +11 -12
  48. package/dist/helper/logger.d.ts.map +1 -1
  49. package/dist/helper/logger.js +10 -49
  50. package/dist/helper/refresh-id-token.d.ts.map +1 -1
  51. package/dist/helper/refresh-id-token.js +6 -4
  52. package/dist/index.d.ts +31 -29
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +27 -50
  55. package/dist/model/index.d.ts +4 -0
  56. package/dist/model/index.d.ts.map +1 -0
  57. package/dist/model/spa-model.d.ts +14 -15
  58. package/dist/model/spa-model.d.ts.map +1 -1
  59. package/dist/router/PdRouterService.d.ts +4 -1
  60. package/dist/router/PdRouterService.d.ts.map +1 -1
  61. package/dist/router/PdRouterService.js +40 -16
  62. package/dist/router/index.d.ts +3 -0
  63. package/dist/router/index.d.ts.map +1 -0
  64. package/dist/screen-size/ScreenSizeController.d.ts +34 -0
  65. package/dist/screen-size/ScreenSizeController.d.ts.map +1 -0
  66. package/dist/screen-size/ScreenSizeController.js +58 -0
  67. package/dist/screen-size/ScreenSizeService.d.ts +49 -0
  68. package/dist/screen-size/ScreenSizeService.d.ts.map +1 -0
  69. package/dist/screen-size/ScreenSizeService.js +107 -0
  70. package/dist/screen-size/index.d.ts +13 -0
  71. package/dist/screen-size/index.d.ts.map +1 -0
  72. package/dist/screen-size/responsive-directives.d.ts +59 -0
  73. package/dist/screen-size/responsive-directives.d.ts.map +1 -0
  74. package/dist/screen-size/responsive-directives.js +71 -0
  75. package/dist/screen-size/types.d.ts +44 -0
  76. package/dist/screen-size/types.d.ts.map +1 -0
  77. package/dist/service-provider/ServiceRegistry.d.ts +67 -0
  78. package/dist/service-provider/ServiceRegistry.d.ts.map +1 -0
  79. package/dist/service-provider/ServiceRegistry.js +76 -0
  80. package/dist/service-provider/function-utils.d.ts +55 -0
  81. package/dist/service-provider/function-utils.d.ts.map +1 -0
  82. package/dist/service-provider/function-utils.js +30 -0
  83. package/dist/service-provider/index.d.ts +10 -0
  84. package/dist/service-provider/index.d.ts.map +1 -0
  85. package/dist/service-provider/interfaces/IAuthProvider.d.ts +68 -0
  86. package/dist/service-provider/interfaces/IAuthProvider.d.ts.map +1 -0
  87. package/dist/service-provider/interfaces/IDatabaseProvider.d.ts +75 -0
  88. package/dist/service-provider/interfaces/IDatabaseProvider.d.ts.map +1 -0
  89. package/dist/service-provider/interfaces/IFunctionProvider.d.ts +49 -0
  90. package/dist/service-provider/interfaces/IFunctionProvider.d.ts.map +1 -0
  91. package/dist/service-provider/interfaces/IStorageProvider.d.ts +118 -0
  92. package/dist/service-provider/interfaces/IStorageProvider.d.ts.map +1 -0
  93. package/dist/service-provider/interfaces/ServiceProvider.d.ts +24 -0
  94. package/dist/service-provider/interfaces/ServiceProvider.d.ts.map +1 -0
  95. package/dist/service-provider/interfaces/common.d.ts +5 -0
  96. package/dist/service-provider/interfaces/common.d.ts.map +1 -0
  97. package/dist/service-provider/service-provider-model.d.ts +26 -7
  98. package/dist/service-provider/service-provider-model.d.ts.map +1 -1
  99. package/dist/services/fire-once-service.d.ts +35 -0
  100. package/dist/services/fire-once-service.d.ts.map +1 -0
  101. package/dist/services/fire-once-service.js +61 -0
  102. package/dist/store/async-action-effects.d.ts +179 -0
  103. package/dist/store/async-action-effects.d.ts.map +1 -0
  104. package/dist/store/async-action-effects.js +97 -0
  105. package/dist/store/async-action-utils.d.ts +151 -0
  106. package/dist/store/async-action-utils.d.ts.map +1 -0
  107. package/dist/store/async-action-utils.js +41 -0
  108. package/dist/store/index.d.ts +9 -0
  109. package/dist/store/index.d.ts.map +1 -0
  110. package/dist/store/mini-rx.store.d.ts.map +1 -1
  111. package/dist/store/mini-rx.store.js +1 -3
  112. package/dist/store/spa-app-actions.d.ts +5 -22
  113. package/dist/store/spa-app-actions.d.ts.map +1 -1
  114. package/dist/store/spa-app-actions.js +4 -8
  115. package/dist/store/spa-app-effects.d.ts +0 -17
  116. package/dist/store/spa-app-effects.d.ts.map +1 -1
  117. package/dist/store/spa-app-effects.js +2 -40
  118. package/dist/store/spa-app-reducer.d.ts +5 -10
  119. package/dist/store/spa-app-reducer.d.ts.map +1 -1
  120. package/dist/store/spa-app-reducer.js +17 -8
  121. package/dist/store/spa-app-selector.d.ts +2 -2
  122. package/dist/store/spa-app-selector.d.ts.map +1 -1
  123. package/dist/store/spa-app-selector.js +1 -1
  124. package/dist/stories/introduction.stories.d.ts +11 -0
  125. package/dist/stories/introduction.stories.d.ts.map +1 -0
  126. package/package.json +13 -9
  127. package/dist/PdSpaHelper.d.ts +0 -83
  128. package/dist/PdSpaHelper.d.ts.map +0 -1
  129. package/dist/PdSpaHelper.js +0 -492
  130. package/dist/defaultpage/default-confirm-popup.d.ts +0 -19
  131. package/dist/defaultpage/default-confirm-popup.d.ts.map +0 -1
  132. package/dist/defaultpage/default-confirm-popup.js +0 -70
  133. package/dist/defaultpage/default-dialog-popup.d.ts +0 -19
  134. package/dist/defaultpage/default-dialog-popup.d.ts.map +0 -1
  135. package/dist/defaultpage/default-dialog-popup.js +0 -103
  136. package/dist/defaultpage/default-login.d.ts +0 -6
  137. package/dist/defaultpage/default-login.d.ts.map +0 -1
  138. package/dist/defaultpage/default-login.js +0 -33
  139. package/dist/defaultpage/default-not-found.d.ts +0 -6
  140. package/dist/defaultpage/default-not-found.d.ts.map +0 -1
  141. package/dist/defaultpage/default-popup.d.ts +0 -7
  142. package/dist/defaultpage/default-popup.d.ts.map +0 -1
  143. package/dist/defaultpage/default-popup.js +0 -24
  144. package/dist/defaultpage/default-step-address.d.ts +0 -14
  145. package/dist/defaultpage/default-step-address.d.ts.map +0 -1
  146. package/dist/defaultpage/default-step-address.js +0 -77
  147. package/dist/defaultpage/default-step-summary.d.ts +0 -28
  148. package/dist/defaultpage/default-step-summary.d.ts.map +0 -1
  149. package/dist/defaultpage/default-step-summary.js +0 -67
  150. package/dist/defaultpage/default-view-page.d.ts +0 -10
  151. package/dist/defaultpage/default-view-page.d.ts.map +0 -1
  152. package/dist/defaultpage/default-view-page.js +0 -70
  153. package/dist/defaultpage/default-wizard.d.ts +0 -37
  154. package/dist/defaultpage/default-wizard.d.ts.map +0 -1
  155. package/dist/defaultpage/default-wizard.js +0 -255
  156. package/dist/defaultpage/pd-default-wizard-step.d.ts +0 -60
  157. package/dist/defaultpage/pd-default-wizard-step.d.ts.map +0 -1
  158. package/dist/defaultpage/pd-default-wizard-step.js +0 -144
  159. package/dist/generated/locale-wrapper/be-wrapper.d.ts +0 -63
  160. package/dist/generated/locale-wrapper/be-wrapper.d.ts.map +0 -1
  161. package/dist/generated/locale-wrapper/de-wrapper.d.ts +0 -63
  162. package/dist/generated/locale-wrapper/de-wrapper.d.ts.map +0 -1
  163. package/dist/generated/locale-wrapper/en-wrapper.d.ts +0 -63
  164. package/dist/generated/locale-wrapper/en-wrapper.d.ts.map +0 -1
  165. package/dist/helper/blob-helper.d.ts +0 -3
  166. package/dist/helper/blob-helper.d.ts.map +0 -1
  167. package/dist/helper/blob-helper.js +0 -35
  168. package/dist/helper/date-helper.d.ts +0 -27
  169. package/dist/helper/date-helper.d.ts.map +0 -1
  170. package/dist/helper/date-helper.js +0 -129
  171. package/dist/helper/locale-format.d.ts +0 -4
  172. package/dist/helper/locale-format.d.ts.map +0 -1
  173. package/dist/helper/locale-format.js +0 -16
  174. package/dist/helper/number-helper.d.ts +0 -2
  175. package/dist/helper/number-helper.d.ts.map +0 -1
  176. package/dist/helper/number-helper.js +0 -13
  177. package/dist/helper/price-helper.d.ts +0 -5
  178. package/dist/helper/price-helper.d.ts.map +0 -1
  179. package/dist/helper/price-helper.js +0 -22
  180. package/dist/helper/text-helper.d.ts +0 -3
  181. package/dist/helper/text-helper.d.ts.map +0 -1
  182. package/dist/helper/text-helper.js +0 -4
  183. package/dist/popup/wizard-close-popup.d.ts +0 -11
  184. package/dist/popup/wizard-close-popup.d.ts.map +0 -1
  185. package/dist/popup/wizard-close-popup.js +0 -63
  186. package/dist/popup/wizard-reload-popup.d.ts +0 -14
  187. package/dist/popup/wizard-reload-popup.d.ts.map +0 -1
  188. package/dist/popup/wizard-reload-popup.js +0 -76
  189. package/dist/service-provider/firebase/auth.d.ts +0 -19
  190. package/dist/service-provider/firebase/auth.d.ts.map +0 -1
  191. package/dist/service-provider/firebase/auth.js +0 -62
  192. package/dist/service-provider/firebase/firestorage-client.d.ts +0 -22
  193. package/dist/service-provider/firebase/firestorage-client.d.ts.map +0 -1
  194. package/dist/service-provider/firebase/firestorage-client.js +0 -226
  195. package/dist/service-provider/firebase/firestore-client.d.ts +0 -12
  196. package/dist/service-provider/firebase/firestore-client.d.ts.map +0 -1
  197. package/dist/service-provider/firebase/firestore-client.js +0 -25
  198. package/dist/service-provider/firebase/functions-client.d.ts +0 -10
  199. package/dist/service-provider/firebase/functions-client.d.ts.map +0 -1
  200. package/dist/service-provider/firebase/functions-client.js +0 -63
  201. package/dist/service-provider/firebase/messagingFirebaseClient.d.ts +0 -9
  202. package/dist/service-provider/firebase/messagingFirebaseClient.d.ts.map +0 -1
  203. package/dist/service-provider/firebase/messagingFirebaseClient.js +0 -69
  204. package/dist/service-provider/mock/auth.d.ts +0 -6
  205. package/dist/service-provider/mock/auth.d.ts.map +0 -1
  206. package/dist/service-provider/mock/auth.js +0 -60
  207. package/dist/service-provider/mock/function-client.d.ts +0 -7
  208. package/dist/service-provider/mock/function-client.d.ts.map +0 -1
  209. package/dist/service-provider/mock/function-client.js +0 -30
  210. package/dist/service-provider/mock/storage-client.d.ts +0 -11
  211. package/dist/service-provider/mock/storage-client.d.ts.map +0 -1
  212. package/dist/service-provider/mock/storage-client.js +0 -106
  213. package/dist/service-provider/service-provider-impl.d.ts +0 -27
  214. package/dist/service-provider/service-provider-impl.d.ts.map +0 -1
  215. package/dist/service-provider/service-provider-impl.js +0 -222
  216. package/dist/store/indexDB.d.ts.map +0 -1
  217. package/dist/stories/address-edit.stories.d.ts +0 -27
  218. package/dist/stories/address-edit.stories.d.ts.map +0 -1
  219. package/dist/stories/address-new.stories.d.ts +0 -33
  220. package/dist/stories/address-new.stories.d.ts.map +0 -1
  221. package/dist/stories/default-confirm-popup.stories.d.ts +0 -24
  222. package/dist/stories/default-confirm-popup.stories.d.ts.map +0 -1
  223. package/dist/stories/default-dialog-popup.stories.d.ts +0 -23
  224. package/dist/stories/default-dialog-popup.stories.d.ts.map +0 -1
  225. package/dist/stories/default-login.stories.d.ts +0 -10
  226. package/dist/stories/default-login.stories.d.ts.map +0 -1
  227. package/dist/stories/default-popup.stories.d.ts +0 -9
  228. package/dist/stories/default-popup.stories.d.ts.map +0 -1
  229. package/dist/stories/pd-loading-state.stories.d.ts +0 -30
  230. package/dist/stories/pd-loading-state.stories.d.ts.map +0 -1
  231. package/dist/stories/pd-toast.stories.d.ts +0 -27
  232. package/dist/stories/pd-toast.stories.d.ts.map +0 -1
  233. package/dist/stories/routing.stories.d.ts +0 -24
  234. package/dist/stories/routing.stories.d.ts.map +0 -1
  235. package/dist/stories/test-impls/address-test.d.ts +0 -6
  236. package/dist/stories/test-impls/address-test.d.ts.map +0 -1
  237. package/dist/stories/test-impls/test-mock-app.d.ts +0 -15
  238. package/dist/stories/test-impls/test-mock-app.d.ts.map +0 -1
  239. package/dist/stories/test-impls/test-pages/test-home-page.d.ts +0 -7
  240. package/dist/stories/test-impls/test-pages/test-home-page.d.ts.map +0 -1
  241. package/dist/stories/test-impls/test-pages/test-not-found-page.d.ts +0 -5
  242. package/dist/stories/test-impls/test-pages/test-not-found-page.d.ts.map +0 -1
  243. package/dist/stories/test-impls/test-pages/test-wizard-step.d.ts +0 -17
  244. package/dist/stories/test-impls/test-pages/test-wizard-step.d.ts.map +0 -1
  245. package/dist/stories/test-impls/test-pages/test-wizard.d.ts +0 -16
  246. package/dist/stories/test-impls/test-pages/test-wizard.d.ts.map +0 -1
  247. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-error.d.ts +0 -8
  248. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-error.d.ts.map +0 -1
  249. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-info.d.ts +0 -8
  250. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-info.d.ts.map +0 -1
  251. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-warn.d.ts +0 -8
  252. package/dist/stories/test-impls/test-popups/default-confirm-popup-test-warn.d.ts.map +0 -1
  253. package/dist/stories/test-impls/test-popups/default-dialog-popup-test.d.ts +0 -13
  254. package/dist/stories/test-impls/test-popups/default-dialog-popup-test.d.ts.map +0 -1
  255. package/dist/stories/test-impls/test-popups/default-popup-test.d.ts +0 -5
  256. package/dist/stories/test-impls/test-popups/default-popup-test.d.ts.map +0 -1
  257. package/dist/stories/test-wizard-step.stories.d.ts +0 -11
  258. package/dist/stories/test-wizard-step.stories.d.ts.map +0 -1
  259. package/dist/stories/test-wizard.stories.d.ts +0 -9
  260. package/dist/stories/test-wizard.stories.d.ts.map +0 -1
  261. package/dist/tmpown/pd-loading-state.d.ts +0 -9
  262. package/dist/tmpown/pd-loading-state.d.ts.map +0 -1
  263. package/dist/tmpown/pd-loading-state.js +0 -196
  264. package/dist/tmpown/pd-login.d.ts +0 -13
  265. package/dist/tmpown/pd-login.d.ts.map +0 -1
  266. package/dist/tmpown/pd-login.js +0 -165
  267. package/dist/tmpown/pd-toast.d.ts +0 -13
  268. package/dist/tmpown/pd-toast.d.ts.map +0 -1
  269. package/dist/tmpown/pd-toast.js +0 -127
@@ -1,492 +0,0 @@
1
- import { LitElement, unsafeCSS, css, html } from 'lit';
2
- import { property, state } from 'lit/decorators.js';
3
- import '@progressive-development/pd-page/pd-menu';
4
- import '@progressive-development/pd-page/pd-footer';
5
- import '@progressive-development/pd-content/pd-panel-viewer';
6
- import '@progressive-development/pd-content/pd-panel';
7
- import { pdStore, initializeStore } from './store/mini-rx.store.js';
8
- import { authStateChangedImpl, setServiceProvider, initAppImpl } from './service-provider/service-provider-impl.js';
9
- import { getLoadingSelector } from './store/spa-app-selector.js';
10
- import { setRouteElement } from './store/spa-app-effects.js';
11
- import { APP_CONF_EVENT } from './model/spa-model.js';
12
- import { loginSucess, nologin } from './store/spa-app-actions.js';
13
- import './defaultpage/default-login.js';
14
- import './defaultpage/default-not-found.js';
15
- import { PdToast } from './tmpown/pd-toast.js';
16
- import './tmpown/pd-loading-state.js';
17
- import { setCurrentFormatLocale } from './helper/locale-format.js';
18
- import { pdRouterService } from './router/PdRouterService.js';
19
- import { createLogger } from './helper/logger.js';
20
-
21
- var __defProp = Object.defineProperty;
22
- var __decorateClass = (decorators, target, key, kind) => {
23
- var result = void 0 ;
24
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
25
- if (decorator = decorators[i])
26
- result = (decorator(target, key, result) ) || result;
27
- if (result) __defProp(target, key, result);
28
- return result;
29
- };
30
- const POST_LOGIN_REDIRECT_KEY = "postLoginRedirect";
31
- const MADE_BY = {
32
- txt: "made by PD Progressive Development",
33
- email: "info@progressive-development.com"
34
- };
35
- const TOAST_DURATION = 6e3;
36
- let routeMap;
37
- let transformedRoutes;
38
- let navigationConfig;
39
- const getNavigationPage = (routeName) => {
40
- const page = routeMap.get(routeName);
41
- if (!page) throw new Error(`Navigation page not defined for: ${routeName}`);
42
- return page;
43
- };
44
- const transformRoutes = () => {
45
- const routeDefs = [];
46
- navigationConfig.pages.forEach((page) => {
47
- const patterns = page.pattern;
48
- const routeDef = {
49
- name: page.name,
50
- pattern: patterns,
51
- auth: page.auth,
52
- authFallback: page.authFallback
53
- // optional: du kannst hier später eine `action` mit Lazy Loading ergänzen
54
- };
55
- routeDefs.push(routeDef);
56
- });
57
- return routeDefs;
58
- };
59
- const spaLogger = createLogger("PdSpaHelper");
60
- const startInit = (config) => {
61
- spaLogger.debug("Start init for config: ", config);
62
- setServiceProvider(config.serviceProvider);
63
- if (config.storeConfigParam) {
64
- initializeStore(config.storeConfigParam);
65
- }
66
- initAppImpl(config);
67
- navigationConfig = config.navigationConfigParam;
68
- if (navigationConfig.includeLogin) {
69
- navigationConfig.pages.push({
70
- name: "login",
71
- menu: [],
72
- pattern: ["/login"],
73
- auth: false
74
- });
75
- }
76
- navigationConfig.pages.push({
77
- name: "unauthorized",
78
- menu: [],
79
- pattern: ["/unauthorized"],
80
- auth: false
81
- });
82
- navigationConfig.pages.push({
83
- name: "not-found",
84
- menu: [],
85
- pattern: ["/:wildcard"],
86
- auth: false
87
- });
88
- transformedRoutes = transformRoutes();
89
- routeMap = new Map(navigationConfig.pages.map((p) => [p.name, p]));
90
- pdRouterService.configureRoutes(transformedRoutes);
91
- document.dispatchEvent(new CustomEvent("init-app-event"));
92
- spaLogger.debug("Init done, init-app-event created");
93
- };
94
- const TOP_MENU_HEIGHT = 30;
95
- const _PdSpaHelper = class _PdSpaHelper extends LitElement {
96
- constructor() {
97
- super();
98
- this.title = "Hey there";
99
- this._loadingState = [];
100
- this._route = "";
101
- this._params = {};
102
- this._query = {};
103
- this._teaserClosed = false;
104
- this._singleLocaleMenu = false;
105
- setRouteElement(this);
106
- const doSomething = (scrollPos) => {
107
- if (scrollPos <= 50) {
108
- this._teaserClosed = false;
109
- } else {
110
- this._teaserClosed = true;
111
- }
112
- };
113
- let ticking = false;
114
- document.addEventListener("scroll", () => {
115
- const lastKnownScrollPosition = window.scrollY;
116
- if (!ticking) {
117
- window.requestAnimationFrame(() => {
118
- doSomething(lastKnownScrollPosition);
119
- ticking = false;
120
- });
121
- ticking = true;
122
- }
123
- });
124
- document.addEventListener("init-app-event", () => {
125
- spaLogger.debug("Init event catched, ignore here...");
126
- });
127
- if (navigationConfig.includeLogin) {
128
- spaLogger.debug("Login included, activate login handler");
129
- this.activateLoginHandler();
130
- }
131
- this.addEventListener("toast-event", this._createTemporaryToast);
132
- this.addEventListener("route-event", this._handleMenuRouteEvent);
133
- }
134
- static {
135
- this.styles = // Ref: Additional use classmap to add custom classes in concrete impl
136
- css`
137
- :host {
138
- display: flex;
139
- flex-flow: column;
140
- height: 100%;
141
- }
142
-
143
- header {
144
- flex-grow: 0;
145
- }
146
-
147
- main {
148
- flex-grow: 1;
149
- flex-basis: max-content;
150
- }
151
-
152
- footer {
153
- flex-grow: 0;
154
- }
155
-
156
- .default-header {
157
- width: 100%;
158
- position: fixed;
159
- top: 0;
160
- display: block;
161
- z-index: 99;
162
- }
163
-
164
- .default-teaser {
165
- --pd-panel-overflow: hidden;
166
- --pd-panel-height: var(--pd-teaser-height, 380px);
167
- --pd-panel-width: 100%;
168
- --pd-panel-border-radius: 0;
169
- --pd-panel-bg: var(--pd-default-col);
170
- --pd-panel-viewer-bg-col: var(--pd-default-col);
171
- }
172
-
173
- .default-menu {
174
- transition: background-color 2s;
175
- }
176
-
177
- .default-menu-withteaser {
178
- --pd-menu-bg-col: var(--pd-spa-menu-change-col, #afc1d2);
179
- --pd-menu-font-col: var(--pd-spa-menu-change-font-col, #0a3a48);
180
- transition: background-color 2s;
181
- }
182
-
183
- .default-top-menu,
184
- .default-top-menu-withteaser {
185
- --pd-menu-height: ${unsafeCSS(TOP_MENU_HEIGHT)}px;
186
- --pd-menu-font-size: 0.8em;
187
- --pd-menu-shadow: 0;
188
- }
189
-
190
- .default-top-menu-withteaser {
191
- --pd-menu-bg-col: var(--pd-teaser-bg-col);
192
- }
193
-
194
- /* needed for pd-spa-padding-top, only for pages with teaser, check if refactor possible... */
195
- .default-main-padding {
196
- padding-top: calc(
197
- var(--pd-menu-height) + var(--pd-spa-padding-top, 120px)
198
- );
199
- transition: padding-top 2s;
200
- }
201
-
202
- .default-main {
203
- padding-top: calc(var(--pd-menu-height));
204
- transition: padding-top 2s;
205
- }
206
-
207
- .default-main-withteaser {
208
- padding-top: calc(
209
- var(--pd-menu-height) + var(--pd-teaser-height, 380px)
210
- );
211
- transition: padding-top 2s;
212
- }
213
- `;
214
- }
215
- connectedCallback() {
216
- super.connectedCallback();
217
- pdRouterService.onRouteChange(({ route, params, query }) => {
218
- this._route = route;
219
- this._params = params;
220
- this._query = query;
221
- });
222
- this.addEventListener(APP_CONF_EVENT, this._setConfInDetail);
223
- this._subscription = pdStore().select(getLoadingSelector).subscribe((loadingState) => {
224
- spaLogger.debug("Loading State: ", loadingState);
225
- this._loadingState = loadingState;
226
- });
227
- }
228
- disconnectedCallback() {
229
- this.removeEventListener(APP_CONF_EVENT, this._setConfInDetail);
230
- this._subscription?.unsubscribe();
231
- super.disconnectedCallback();
232
- }
233
- _setConfInDetail(event) {
234
- const { detail } = event;
235
- if (detail) {
236
- detail.appConf = {
237
- ...this._getAppConfiguration()
238
- };
239
- }
240
- }
241
- /**
242
- * Non reactive private property for the index db class.
243
- */
244
- // private _indexDBClient?: YoIndexDBClient|null;
245
- /**
246
- * Call to activate onAuthState change with profile request callbacks.
247
- * Only implemented for firebase provider.
248
- */
249
- activateLoginHandler() {
250
- spaLogger.debug("Activate Login Handler");
251
- const callback = async (user) => {
252
- spaLogger.debug(
253
- "Activate Login Handler => callback called for user:",
254
- user?.email
255
- );
256
- if (user) {
257
- const tokenResult = await user.getIdTokenResult();
258
- const claims = tokenResult.claims;
259
- pdStore().dispatch(
260
- loginSucess({
261
- uid: user.uid,
262
- email: user.email,
263
- emailVerified: user.emailVerified,
264
- claims,
265
- providerId: user.providerData[0]?.providerId ?? "firebase"
266
- })
267
- );
268
- } else {
269
- pdStore().dispatch(nologin());
270
- }
271
- };
272
- authStateChangedImpl(callback);
273
- }
274
- render() {
275
- if (this._route === "") {
276
- return html`<p>Routing page...</p>`;
277
- }
278
- const pageConf = getNavigationPage(this._route);
279
- const hideTeaser = this._teaserClosed || !pageConf?.withTeaser;
280
- return html`
281
- <header id="headerElementId" class="default-header">
282
- ${pageConf?.hideTopMenu ? "" : this._renderTopMenu(pageConf, hideTeaser)}
283
- ${hideTeaser ? "" : this._renderTeaser()}
284
- ${pageConf?.hideMenu ? "" : this._renderMenu(pageConf, hideTeaser)}
285
- </header>
286
-
287
- <main
288
- class="${this._getMainClass(hideTeaser, pageConf)}"
289
- @init-menu-sections="${this._initMenuSections}"
290
- @login-success="${this._loginSuccess}"
291
- >
292
- ${this._loadingState.map(
293
- (ls) => html`<pd-loading-state .loadingState="${ls}"></pd-loading-state>`
294
- )}
295
- ${this._renderRoutePages()}
296
- ${this._route === "login" ? html` <default-login active></default-login>` : ""}
297
- ${this._route === "not-found" ? html`<default-not-found active=""></default-not-found>` : ""}
298
- </main>
299
-
300
- ${pageConf?.withFooter ? html` <footer class="default-footer">${this._renderFooter()}</footer>` : ""}
301
- `;
302
- }
303
- // eslint-disable-next-line class-methods-use-this
304
- _getMainClass(hideTeaser, pageConf) {
305
- if (hideTeaser) {
306
- if (!pageConf) {
307
- return "default-main";
308
- }
309
- return pageConf.mainClass ? pageConf.mainClass : pageConf.withTeaser ? "default-main-padding" : "default-main";
310
- }
311
- return "default-main-withteaser";
312
- }
313
- _renderMenu(pageConfig, hideTeaser) {
314
- const menuForPage = pageConfig ? pageConfig.menu || [] : [];
315
- return menuForPage ? html`
316
- <pd-menu
317
- id="pdHelperMenuId"
318
- class="${hideTeaser ? "default-menu" : "default-menu-withteaser"}"
319
- @locale-change="${this._localeChange}"
320
- selectedLocale="${this._selectedLocale}"
321
- .locales=${this._singleLocaleMenu ? this._availableLocales : []}
322
- .menuItems=${menuForPage}
323
- .topMenuItems=${[]}
324
- activeRoute="${this._route}"
325
- logoRoute="${pageConfig?.menuLogoRoute || ""}"
326
- headerSize="${this._getHeaderSize(hideTeaser) + TOP_MENU_HEIGHT}"
327
- >
328
- ${hideTeaser ? this._getAppLogo() : ""}
329
- </pd-menu>
330
- ` : "";
331
- }
332
- _renderTopMenu(pageConfig, hideTeaser) {
333
- const topMenuForPage = pageConfig ? pageConfig.topMenuItems : void 0;
334
- return topMenuForPage ? html`
335
- <pd-menu
336
- id="pdHelperTopMenuId"
337
- noBurgerMenu
338
- @locale-change="${this._localeChange}"
339
- class="${hideTeaser ? "default-top-menu" : "default-top-menu-withteaser"}"
340
- .locales=${this._availableLocales}
341
- selectedLocale="${this._selectedLocale}"
342
- .topMenuItems=${topMenuForPage}
343
- activeRoute="${this._route}"
344
- >
345
- </pd-menu>
346
- ` : "";
347
- }
348
- // eslint-disable-next-line class-methods-use-this
349
- _renderTeaser() {
350
- const teaserContent = this._getTeaserContent();
351
- if (!teaserContent || teaserContent.length <= 0) {
352
- return "";
353
- }
354
- return html`
355
- <pd-panel-viewer
356
- class="default-teaser"
357
- id="teaserPanelViewerId"
358
- deltaCalc="4"
359
- >
360
- ${teaserContent.map(
361
- (content) => html` <pd-panel> ${content} </pd-panel> `
362
- )}
363
- </pd-panel-viewer>
364
- `;
365
- }
366
- _renderFooter() {
367
- const footer = this._getFooter();
368
- return html`
369
- <pd-footer
370
- .footerLinks="${footer.links}"
371
- version="${footer.version}"
372
- copyright="${footer.copyright || "PD Progressive Developent UG"}"
373
- .madeBy="${MADE_BY}"
374
- @footer-link="${this._handleFooterRouteEvent}"
375
- >
376
- </pd-footer>
377
- `;
378
- }
379
- _loginSuccess(e) {
380
- const redirectRoute = sessionStorage.getItem(POST_LOGIN_REDIRECT_KEY);
381
- if (redirectRoute) {
382
- const routeToNavigate = redirectRoute && redirectRoute !== "/login" ? redirectRoute : "";
383
- sessionStorage.removeItem(POST_LOGIN_REDIRECT_KEY);
384
- this.dispatchEvent(
385
- new CustomEvent("route-event", {
386
- detail: { route: routeToNavigate },
387
- bubbles: true,
388
- composed: true
389
- })
390
- );
391
- }
392
- spaLogger.debug("Login Event: ", e, window.location.href, redirectRoute);
393
- }
394
- _localeChange(e) {
395
- const newLocale = e.detail;
396
- this._setLocale(newLocale);
397
- this._selectedLocale = newLocale;
398
- setCurrentFormatLocale(newLocale);
399
- }
400
- // eslint-disable-next-line class-methods-use-this
401
- _handleMenuRouteEvent(e) {
402
- if (e.detail.el) {
403
- this._scrollToContent(e.detail.el);
404
- } else {
405
- this._navigateToPage(e.detail.route);
406
- }
407
- }
408
- // eslint-disable-next-line class-methods-use-this
409
- _handleFooterRouteEvent(e) {
410
- const { linkObj } = e.detail;
411
- if (linkObj.link) {
412
- this._navigateToPage(linkObj.link);
413
- }
414
- if (linkObj.action) {
415
- linkObj.action();
416
- }
417
- }
418
- // eslint-disable-next-line class-methods-use-this
419
- _initMenuSections(e) {
420
- const pageConf = getNavigationPage(this._route);
421
- if (pageConf) {
422
- pageConf.menu = pageConf.menu?.map(
423
- (menuElement, index) => ({
424
- ...menuElement,
425
- ref: e.detail.menuRefs[index]
426
- })
427
- );
428
- }
429
- }
430
- _createTemporaryToast(e) {
431
- const tmpToast = new PdToast();
432
- tmpToast.isError = e.detail.isError;
433
- tmpToast.isSuccess = e.detail.isSuccess;
434
- const slotContent = document.createTextNode(e.detail.txt);
435
- tmpToast.appendChild(slotContent);
436
- this.shadowRoot?.appendChild(tmpToast);
437
- tmpToast.duration = e.detail.duration || TOAST_DURATION;
438
- }
439
- static _scrollToTop() {
440
- window.scrollTo({
441
- top: 0,
442
- left: 0,
443
- behavior: "smooth"
444
- });
445
- }
446
- // Test, not used at the moment, jump/menu problem...
447
- // eslint-disable-next-line class-methods-use-this
448
- _scrollToContent(el) {
449
- if (el) {
450
- const rect = el.getBoundingClientRect();
451
- window.scrollBy({
452
- top: rect.top - (this._teaserClosed ? 80 : 450),
453
- left: 0,
454
- behavior: "smooth"
455
- });
456
- }
457
- }
458
- _navigateToPage(routeURL) {
459
- _PdSpaHelper._scrollToTop();
460
- pdRouterService.navigate(routeURL);
461
- }
462
- };
463
- __decorateClass([
464
- property({ type: String })
465
- ], _PdSpaHelper.prototype, "title");
466
- __decorateClass([
467
- state()
468
- ], _PdSpaHelper.prototype, "_user");
469
- __decorateClass([
470
- state()
471
- ], _PdSpaHelper.prototype, "_profile");
472
- __decorateClass([
473
- state()
474
- ], _PdSpaHelper.prototype, "_loadingState");
475
- __decorateClass([
476
- state()
477
- ], _PdSpaHelper.prototype, "_route");
478
- __decorateClass([
479
- state()
480
- ], _PdSpaHelper.prototype, "_params");
481
- __decorateClass([
482
- state()
483
- ], _PdSpaHelper.prototype, "_query");
484
- __decorateClass([
485
- state()
486
- ], _PdSpaHelper.prototype, "_teaserClosed");
487
- __decorateClass([
488
- state()
489
- ], _PdSpaHelper.prototype, "_selectedLocale");
490
- let PdSpaHelper = _PdSpaHelper;
491
-
492
- export { POST_LOGIN_REDIRECT_KEY, PdSpaHelper, startInit };
@@ -1,19 +0,0 @@
1
- import { LitElement, CSSResultGroup, HTMLTemplateResult } from 'lit';
2
- export declare const KEY_ABORT = "1";
3
- export declare const ABORT_EVENT_NAME = "close-popup";
4
- export declare const KEY_STORE = "2";
5
- export declare const STORE_EVENT_NAME = "store";
6
- export type PopupType = "info" | "help" | "warn" | "error";
7
- export declare abstract class DefaultConfirmPopup extends LitElement {
8
- abstract _popupTitle: string;
9
- abstract _type?: PopupType;
10
- abstract _singleButton: boolean;
11
- okButtonText: string;
12
- cancelButtonText: string;
13
- static styles: CSSResultGroup;
14
- render(): import('lit').TemplateResult<1>;
15
- private _generateButtons;
16
- protected _handleButtonClick(e: CustomEvent): void;
17
- abstract _renderContent(): HTMLTemplateResult;
18
- }
19
- //# sourceMappingURL=default-confirm-popup.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"default-confirm-popup.d.ts","sourceRoot":"","sources":["../../src/defaultpage/default-confirm-popup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAO,cAAc,EAAE,kBAAkB,EAAE,MAAM,KAAK,CAAC;AAGhF,OAAO,oDAAoD,CAAC;AAE5D,eAAO,MAAM,SAAS,MAAM,CAAC;AAC7B,eAAO,MAAM,gBAAgB,gBAAgB,CAAC;AAE9C,eAAO,MAAM,SAAS,MAAM,CAAC;AAC7B,eAAO,MAAM,gBAAgB,UAAU,CAAC;AAExC,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,8BAAsB,mBAAoB,SAAQ,UAAU;IAC1D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAE3B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAGhC,YAAY,EAAE,MAAM,CAAQ;IAG5B,gBAAgB,EAAE,MAAM,CAAY;IAEpC,MAAM,CAAC,MAAM,EAMR,cAAc,CAAC;IAEpB,MAAM;IAcN,OAAO,CAAC,gBAAgB;IAUxB,SAAS,CAAC,kBAAkB,CAAC,CAAC,EAAE,WAAW;IAQ3C,QAAQ,CAAC,cAAc,IAAI,kBAAkB;CAC9C"}
@@ -1,70 +0,0 @@
1
- import { LitElement, css, html } from 'lit';
2
- import { property } from 'lit/decorators.js';
3
- import '@progressive-development/pd-dialog/pd-popup-dialog';
4
-
5
- var __defProp = Object.defineProperty;
6
- var __decorateClass = (decorators, target, key, kind) => {
7
- var result = void 0 ;
8
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
9
- if (decorator = decorators[i])
10
- result = (decorator(target, key, result) ) || result;
11
- if (result) __defProp(target, key, result);
12
- return result;
13
- };
14
- const KEY_ABORT = "1";
15
- const ABORT_EVENT_NAME = "close-popup";
16
- const KEY_STORE = "2";
17
- const STORE_EVENT_NAME = "store";
18
- class DefaultConfirmPopup extends LitElement {
19
- constructor() {
20
- super(...arguments);
21
- this.okButtonText = "Ok";
22
- this.cancelButtonText = "Cancel";
23
- }
24
- static {
25
- this.styles = [
26
- css`
27
- :host {
28
- --pd-popup-max-width: 600px;
29
- }
30
- `
31
- ];
32
- }
33
- render() {
34
- const buttons = this._generateButtons();
35
- return html`
36
- <pd-popup-dialog
37
- @submit-button-clicked="${this._handleButtonClick}"
38
- title="${this._popupTitle}"
39
- .buttons="${buttons}"
40
- type="${this._type || "info"}"
41
- >
42
- <div slot="content">${this._renderContent()}</div>
43
- </pd-popup-dialog>
44
- `;
45
- }
46
- _generateButtons() {
47
- if (this._singleButton) {
48
- return [{ key: KEY_STORE, name: this.okButtonText, primary: true }];
49
- }
50
- return [
51
- { key: KEY_ABORT, name: this.cancelButtonText },
52
- { key: KEY_STORE, name: this.okButtonText, primary: true }
53
- ];
54
- }
55
- _handleButtonClick(e) {
56
- this.dispatchEvent(
57
- new CustomEvent(
58
- e.detail.button === KEY_STORE ? STORE_EVENT_NAME : ABORT_EVENT_NAME
59
- )
60
- );
61
- }
62
- }
63
- __decorateClass([
64
- property({ type: String })
65
- ], DefaultConfirmPopup.prototype, "okButtonText");
66
- __decorateClass([
67
- property({ type: String })
68
- ], DefaultConfirmPopup.prototype, "cancelButtonText");
69
-
70
- export { ABORT_EVENT_NAME, DefaultConfirmPopup, KEY_ABORT, KEY_STORE, STORE_EVENT_NAME };
@@ -1,19 +0,0 @@
1
- import { LitElement, CSSResultGroup, HTMLTemplateResult } from 'lit';
2
- export declare abstract class DefaultDialogPopup<T> extends LitElement {
3
- protected _requiredFieldInfo: boolean;
4
- abstract _formData: T;
5
- abstract _popupTitle: string;
6
- protected _dialogButtons: Array<any>;
7
- protected _validationError?: string;
8
- protected _validForm: boolean;
9
- private _formElement;
10
- static styles: CSSResultGroup;
11
- render(): import('lit').TemplateResult<1>;
12
- private _generateButtons;
13
- protected _handleButtonClick(e: CustomEvent): void;
14
- abstract _isValidFormData(): boolean;
15
- abstract _renderContent(): HTMLTemplateResult;
16
- private _disableStoreButtonTemporarily;
17
- reset(): void;
18
- }
19
- //# sourceMappingURL=default-dialog-popup.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"default-dialog-popup.d.ts","sourceRoot":"","sources":["../../src/defaultpage/default-dialog-popup.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAEV,cAAc,EACd,kBAAkB,EAEnB,MAAM,KAAK,CAAC;AAKb,OAAO,oDAAoD,CAAC;AAC5D,OAAO,qDAAqD,CAAC;AAW7D,8BAAsB,kBAAkB,CAAC,CAAC,CAAE,SAAQ,UAAU;IAC5D,SAAS,CAAC,kBAAkB,EAAE,OAAO,CAAQ;IAE7C,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;IAEtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAI7B,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,CAAC,CAGlC;IAGF,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAGpC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAS;IAGtC,OAAO,CAAC,YAAY,CAAmB;IAEvC,MAAM,CAAC,MAAM,EAMR,cAAc,CAAC;IAEpB,MAAM;IAyBN,OAAO,CAAC,gBAAgB;IAUxB,SAAS,CAAC,kBAAkB,CAAC,CAAC,EAAE,WAAW;IAa3C,QAAQ,CAAC,gBAAgB,IAAI,OAAO;IAEpC,QAAQ,CAAC,cAAc,IAAI,kBAAkB;IAE7C,OAAO,CAAC,8BAA8B;IAS/B,KAAK;CAGb"}