@progressive-development/pd-spa-helper 0.3.102 → 0.3.104

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 (380) hide show
  1. package/dist/index.js +72 -0
  2. package/dist/node_modules/@firebase/app/dist/esm/index.esm2017.js +749 -0
  3. package/dist/node_modules/@firebase/auth/dist/esm2017/index-68602d24.js +6265 -0
  4. package/dist/node_modules/@firebase/component/dist/esm/index.esm2017.js +341 -0
  5. package/dist/node_modules/@firebase/firestore/dist/index.esm2017.js +10250 -0
  6. package/dist/node_modules/@firebase/functions/dist/index.esm2017.js +513 -0
  7. package/dist/node_modules/@firebase/installations/dist/esm/index.esm2017.js +863 -0
  8. package/dist/node_modules/@firebase/logger/dist/esm/index.esm2017.js +122 -0
  9. package/dist/node_modules/@firebase/messaging/dist/esm/index.esm2017.js +1019 -0
  10. package/dist/node_modules/@firebase/storage/dist/index.esm2017.js +2042 -0
  11. package/dist/node_modules/@firebase/util/dist/index.esm2017.js +931 -0
  12. package/dist/node_modules/@firebase/webchannel-wrapper/dist/bloom-blob/esm/bloom_blob_es2018.js +417 -0
  13. package/dist/node_modules/@firebase/webchannel-wrapper/dist/webchannel-blob/esm/webchannel_blob_es2018.js +2155 -0
  14. package/dist/node_modules/@lit/reactive-element/decorators/custom-element.js +14 -0
  15. package/dist/node_modules/@lit/reactive-element/decorators/property.js +20 -0
  16. package/dist/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js +7 -0
  17. package/dist/node_modules/@progressive-development/pd-dialog/pd-popup-dialog.js +5 -0
  18. package/dist/node_modules/@progressive-development/pd-dialog/pd-popup.js +2 -0
  19. package/dist/node_modules/@progressive-development/pd-dialog/src/PdPopup.js +113 -0
  20. package/dist/node_modules/@progressive-development/pd-dialog/src/PdPopupDialog.js +189 -0
  21. package/dist/node_modules/@progressive-development/pd-forms/pd-button.js +2 -0
  22. package/dist/node_modules/@progressive-development/pd-forms/pd-form-container.js +2 -0
  23. package/dist/node_modules/@progressive-development/pd-forms/pd-form-row.js +2 -0
  24. package/dist/node_modules/@progressive-development/pd-forms/pd-hover-box.js +2 -0
  25. package/dist/node_modules/@progressive-development/pd-forms/pd-input.js +2 -0
  26. package/dist/node_modules/@progressive-development/pd-forms/src/PdBaseInputElement.js +86 -0
  27. package/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUi.js +34 -0
  28. package/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUiInput.js +227 -0
  29. package/dist/node_modules/@progressive-development/pd-forms/src/PdButton.js +194 -0
  30. package/dist/node_modules/@progressive-development/pd-forms/src/PdFormContainer.js +167 -0
  31. package/dist/node_modules/@progressive-development/pd-forms/src/PdFormRow.js +92 -0
  32. package/dist/node_modules/@progressive-development/pd-forms/src/PdHoverBox.js +108 -0
  33. package/dist/node_modules/@progressive-development/pd-forms/src/PdInput.js +79 -0
  34. package/dist/node_modules/@progressive-development/pd-forms/src/generated/locale/be.js +11 -0
  35. package/dist/node_modules/@progressive-development/pd-forms/src/generated/locale/en.js +11 -0
  36. package/dist/node_modules/@progressive-development/pd-forms/src/shared-input-field-styles.js +152 -0
  37. package/dist/node_modules/@progressive-development/pd-forms/src/shared-input-styles.js +64 -0
  38. package/dist/node_modules/@progressive-development/pd-icon/pd-icon.js +4 -0
  39. package/dist/node_modules/@progressive-development/pd-icon/src/PdIcon.js +596 -0
  40. package/dist/node_modules/@progressive-development/pd-order/dist/locales/be.js +15 -0
  41. package/dist/node_modules/@progressive-development/pd-order/dist/locales/de.js +15 -0
  42. package/dist/node_modules/@progressive-development/pd-order/dist/locales/en.js +15 -0
  43. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-contact/pd-contact.js +2 -0
  44. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-contact/src/PdContact.js +567 -0
  45. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/pd-collapse.js +2 -0
  46. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/pd-edit-content.js +2 -0
  47. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/src/PdCollapse.js +136 -0
  48. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/src/PdEditContent.js +224 -0
  49. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-dialog/pd-popup.js +2 -0
  50. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-dialog/src/PdPopup.js +113 -0
  51. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-checkbox.js +2 -0
  52. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-form-container.js +2 -0
  53. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-form-row.js +2 -0
  54. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-hover-box.js +2 -0
  55. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-input.js +2 -0
  56. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-radio-group.js +2 -0
  57. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdBaseInputElement.js +86 -0
  58. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUi.js +34 -0
  59. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUiInput.js +229 -0
  60. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdCheckbox.js +230 -0
  61. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdFormContainer.js +167 -0
  62. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdFormRow.js +92 -0
  63. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdHoverBox.js +108 -0
  64. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdInput.js +79 -0
  65. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdRadioGroup.js +72 -0
  66. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/shared-input-field-styles.js +152 -0
  67. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/shared-input-styles.js +64 -0
  68. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-icon/pd-icon.js +4 -0
  69. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-icon/src/PdIcon.js +596 -0
  70. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-price/pd-pricetable.js +2 -0
  71. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-price/src/PdPricetable.js +149 -0
  72. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/fecha/lib/fecha.js +200 -0
  73. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/lit/node_modules/lit-html/directive.js +27 -0
  74. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/lit/node_modules/lit-html/directives/class-map.js +36 -0
  75. package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/lit/node_modules/lit-html/lit-html.js +242 -0
  76. package/dist/node_modules/@progressive-development/pd-order/dist/pd-order-contacts.js +2 -0
  77. package/dist/node_modules/@progressive-development/pd-order/dist/pd-order-summary.js +2 -0
  78. package/dist/node_modules/@progressive-development/pd-order/dist/src/PdOrderContacts.js +192 -0
  79. package/dist/node_modules/@progressive-development/pd-order/dist/src/PdOrderSummary.js +243 -0
  80. package/dist/node_modules/@progressive-development/pd-page/pd-footer.js +2 -0
  81. package/dist/node_modules/@progressive-development/pd-page/pd-menu.js +2 -0
  82. package/dist/node_modules/@progressive-development/pd-page/src/PdFooter.js +141 -0
  83. package/dist/node_modules/@progressive-development/pd-page/src/PdMenu.js +450 -0
  84. package/dist/node_modules/@progressive-development/pd-shared-styles/src/shared-color-styles.js +30 -0
  85. package/dist/node_modules/@progressive-development/pd-shared-styles/src/shared-font-styles.js +32 -0
  86. package/dist/node_modules/@progressive-development/pd-wizard/pd-wizard.js +2 -0
  87. package/dist/node_modules/@progressive-development/pd-wizard/src/PdSteps.js +191 -0
  88. package/dist/node_modules/@progressive-development/pd-wizard/src/PdWizard.js +280 -0
  89. package/dist/node_modules/firebase/app/dist/esm/index.esm.js +35 -0
  90. package/dist/node_modules/idb/build/index.js +81 -0
  91. package/dist/node_modules/idb/build/wrap-idb-value.js +148 -0
  92. package/dist/node_modules/lit/node_modules/lit-html/directive.js +27 -0
  93. package/dist/node_modules/lit/node_modules/lit-html/directives/class-map.js +36 -0
  94. package/dist/node_modules/lit/node_modules/lit-html/lit-html.js +242 -0
  95. package/dist/node_modules/lit-element-router/lit-element-router.js +131 -0
  96. package/dist/node_modules/lit-element-router/utility/router-utility.js +36 -0
  97. package/dist/node_modules/mini-rx-store/index.esm.js +458 -0
  98. package/dist/node_modules/pwa-helpers/media-query.js +17 -0
  99. package/dist/node_modules/rxjs/dist/esm5/internal/Observable.js +100 -0
  100. package/dist/node_modules/rxjs/dist/esm5/internal/Subscriber.js +147 -0
  101. package/dist/node_modules/rxjs/dist/esm5/internal/Subscription.js +139 -0
  102. package/dist/node_modules/rxjs/dist/esm5/internal/config.js +10 -0
  103. package/dist/node_modules/rxjs/dist/esm5/internal/observable/innerFrom.js +159 -0
  104. package/dist/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js +52 -0
  105. package/dist/node_modules/rxjs/dist/esm5/internal/operators/catchError.js +28 -0
  106. package/dist/node_modules/rxjs/dist/esm5/internal/operators/distinctUntilChanged.js +27 -0
  107. package/dist/node_modules/rxjs/dist/esm5/internal/operators/filter.js +13 -0
  108. package/dist/node_modules/rxjs/dist/esm5/internal/operators/map.js +13 -0
  109. package/dist/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js +26 -0
  110. package/dist/node_modules/rxjs/dist/esm5/internal/operators/tap.js +36 -0
  111. package/dist/node_modules/rxjs/dist/esm5/internal/operators/withLatestFrom.js +43 -0
  112. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js +18 -0
  113. package/dist/node_modules/rxjs/dist/esm5/internal/symbol/iterator.js +11 -0
  114. package/dist/node_modules/rxjs/dist/esm5/internal/symbol/observable.js +6 -0
  115. package/dist/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js +14 -0
  116. package/dist/node_modules/rxjs/dist/esm5/internal/util/args.js +10 -0
  117. package/dist/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js +9 -0
  118. package/dist/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js +13 -0
  119. package/dist/node_modules/rxjs/dist/esm5/internal/util/errorContext.js +8 -0
  120. package/dist/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js +23 -0
  121. package/dist/node_modules/rxjs/dist/esm5/internal/util/identity.js +6 -0
  122. package/dist/node_modules/rxjs/dist/esm5/internal/util/isArrayLike.js +6 -0
  123. package/dist/node_modules/rxjs/dist/esm5/internal/util/isAsyncIterable.js +7 -0
  124. package/dist/node_modules/rxjs/dist/esm5/internal/util/isFunction.js +6 -0
  125. package/dist/node_modules/rxjs/dist/esm5/internal/util/isInteropObservable.js +8 -0
  126. package/dist/node_modules/rxjs/dist/esm5/internal/util/isIterable.js +8 -0
  127. package/dist/node_modules/rxjs/dist/esm5/internal/util/isPromise.js +7 -0
  128. package/dist/node_modules/rxjs/dist/esm5/internal/util/isReadableStreamLike.js +46 -0
  129. package/dist/node_modules/rxjs/dist/esm5/internal/util/lift.js +22 -0
  130. package/dist/node_modules/rxjs/dist/esm5/internal/util/noop.js +5 -0
  131. package/dist/node_modules/rxjs/dist/esm5/internal/util/pipe.js +17 -0
  132. package/dist/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js +11 -0
  133. package/dist/node_modules/rxjs/dist/esm5/internal/util/throwUnobservableError.js +6 -0
  134. package/dist/node_modules/tslib/tslib.es6.js +240 -0
  135. package/dist/pd-panel-viewer.js +189 -0
  136. package/dist/pd-panel.js +51 -0
  137. package/dist/src/PdSpaHelper.js +319 -402
  138. package/dist/src/defaultpage/default-confirm-popup.js +61 -41
  139. package/dist/src/defaultpage/default-dialog-popup.js +74 -60
  140. package/dist/src/defaultpage/default-login.js +31 -20
  141. package/dist/src/defaultpage/default-popup.js +13 -10
  142. package/dist/src/defaultpage/default-step-address.js +52 -42
  143. package/dist/src/defaultpage/default-step-summary.js +58 -49
  144. package/dist/src/defaultpage/default-view-page.js +31 -23
  145. package/dist/src/defaultpage/default-wizard-step.js +119 -111
  146. package/dist/src/defaultpage/default-wizard.js +199 -195
  147. package/dist/src/generated/locale-wrapper/be-wrapper.js +14 -11
  148. package/dist/src/generated/locale-wrapper/de-wrapper.js +12 -9
  149. package/dist/src/generated/locale-wrapper/en-wrapper.js +14 -11
  150. package/dist/src/generated/locales/be.js +17 -19
  151. package/dist/src/generated/locales/de.js +17 -19
  152. package/dist/src/generated/locales/en.js +17 -19
  153. package/dist/src/helper/helper-utils.js +29 -24
  154. package/dist/src/model/spa-model.js +6 -3
  155. package/dist/src/popup/wizard-close-popup.js +37 -27
  156. package/dist/src/popup/wizard-reload-popup.js +35 -23
  157. package/dist/src/router/AppMain.js +23 -12
  158. package/dist/src/service-provider/firebase/auth.js +50 -73
  159. package/dist/src/service-provider/firebase/firestorage-client.js +194 -243
  160. package/dist/src/service-provider/firebase/firestore-client.js +19 -25
  161. package/dist/src/service-provider/firebase/functions-client.js +27 -59
  162. package/dist/src/service-provider/firebase/messagingFirebaseClient.js +60 -59
  163. package/dist/src/service-provider/mock/auth.js +54 -54
  164. package/dist/src/service-provider/mock/function-client.js +28 -27
  165. package/dist/src/service-provider/mock/storage-client.js +86 -92
  166. package/dist/src/service-provider/service-provider-impl.js +206 -211
  167. package/dist/src/service-provider/service-provider-model.js +1 -2
  168. package/dist/src/store/indexDB.js +133 -180
  169. package/dist/src/store/mini-rx.store.js +36 -38
  170. package/dist/src/store/spa-app-actions.js +27 -14
  171. package/dist/src/store/spa-app-effects.js +60 -40
  172. package/dist/src/store/spa-app-reducer.js +42 -33
  173. package/dist/src/store/spa-app-selector.js +31 -15
  174. package/dist/src/tmpown/pd-loading-state.js +49 -39
  175. package/dist/src/tmpown/pd-login.js +76 -67
  176. package/dist/src/tmpown/pd-toast.js +74 -65
  177. package/package.json +21 -18
  178. package/.editorconfig +0 -29
  179. package/.storybook/main.ts +0 -14
  180. package/.storybook/preview.ts +0 -15
  181. package/demo/index.html +0 -29
  182. package/dist/src/InitApplicationData.d.ts +0 -3
  183. package/dist/src/InitApplicationData.js +0 -8
  184. package/dist/src/InitApplicationData.js.map +0 -1
  185. package/dist/src/PdSpaHelper.d.ts +0 -93
  186. package/dist/src/PdSpaHelper.js.map +0 -1
  187. package/dist/src/defaultpage/default-confirm-popup.d.ts +0 -19
  188. package/dist/src/defaultpage/default-confirm-popup.js.map +0 -1
  189. package/dist/src/defaultpage/default-dialog-popup.d.ts +0 -16
  190. package/dist/src/defaultpage/default-dialog-popup.js.map +0 -1
  191. package/dist/src/defaultpage/default-login.d.ts +0 -8
  192. package/dist/src/defaultpage/default-login.js.map +0 -1
  193. package/dist/src/defaultpage/default-popup.d.ts +0 -7
  194. package/dist/src/defaultpage/default-popup.js.map +0 -1
  195. package/dist/src/defaultpage/default-step-address.d.ts +0 -19
  196. package/dist/src/defaultpage/default-step-address.js.map +0 -1
  197. package/dist/src/defaultpage/default-step-summary.d.ts +0 -30
  198. package/dist/src/defaultpage/default-step-summary.js.map +0 -1
  199. package/dist/src/defaultpage/default-view-page.d.ts +0 -9
  200. package/dist/src/defaultpage/default-view-page.js.map +0 -1
  201. package/dist/src/defaultpage/default-wizard-step.d.ts +0 -34
  202. package/dist/src/defaultpage/default-wizard-step.js.map +0 -1
  203. package/dist/src/defaultpage/default-wizard.d.ts +0 -33
  204. package/dist/src/defaultpage/default-wizard.js.map +0 -1
  205. package/dist/src/firebase/auth.d.ts +0 -4
  206. package/dist/src/firebase/auth.js +0 -28
  207. package/dist/src/firebase/auth.js.map +0 -1
  208. package/dist/src/firebase/firestore-client.d.ts +0 -9
  209. package/dist/src/firebase/firestore-client.js +0 -19
  210. package/dist/src/firebase/firestore-client.js.map +0 -1
  211. package/dist/src/firebase/functions-client.d.ts +0 -34
  212. package/dist/src/firebase/functions-client.js +0 -70
  213. package/dist/src/firebase/functions-client.js.map +0 -1
  214. package/dist/src/generated/locale-codes.d.ts +0 -13
  215. package/dist/src/generated/locale-codes.js +0 -25
  216. package/dist/src/generated/locale-codes.js.map +0 -1
  217. package/dist/src/generated/locale-wrapper/be-wrapper.d.ts +0 -1
  218. package/dist/src/generated/locale-wrapper/be-wrapper.js.map +0 -1
  219. package/dist/src/generated/locale-wrapper/de-wrapper.d.ts +0 -15
  220. package/dist/src/generated/locale-wrapper/de-wrapper.js.map +0 -1
  221. package/dist/src/generated/locale-wrapper/en-wrapper.d.ts +0 -1
  222. package/dist/src/generated/locale-wrapper/en-wrapper.js.map +0 -1
  223. package/dist/src/generated/locales/be.d.ts +0 -15
  224. package/dist/src/generated/locales/be.js.map +0 -1
  225. package/dist/src/generated/locales/de.d.ts +0 -15
  226. package/dist/src/generated/locales/de.js.map +0 -1
  227. package/dist/src/generated/locales/en.d.ts +0 -15
  228. package/dist/src/generated/locales/en.js.map +0 -1
  229. package/dist/src/helper/helper-utils.d.ts +0 -5
  230. package/dist/src/helper/helper-utils.js.map +0 -1
  231. package/dist/src/index.d.ts +0 -22
  232. package/dist/src/index.js +0 -33
  233. package/dist/src/index.js.map +0 -1
  234. package/dist/src/model/spa-model.d.ts +0 -16
  235. package/dist/src/model/spa-model.js.map +0 -1
  236. package/dist/src/pd-spa-helper.d.ts +0 -0
  237. package/dist/src/pd-spa-helper.js +0 -5
  238. package/dist/src/pd-spa-helper.js.map +0 -1
  239. package/dist/src/popup/wizard-close-popup.d.ts +0 -10
  240. package/dist/src/popup/wizard-close-popup.js.map +0 -1
  241. package/dist/src/popup/wizard-reload-popup.d.ts +0 -13
  242. package/dist/src/popup/wizard-reload-popup.js.map +0 -1
  243. package/dist/src/router/AppMain.d.ts +0 -6
  244. package/dist/src/router/AppMain.js.map +0 -1
  245. package/dist/src/service-call-controller2.d.ts +0 -16
  246. package/dist/src/service-call-controller2.js +0 -43
  247. package/dist/src/service-call-controller2.js.map +0 -1
  248. package/dist/src/service-provider/firebase/auth.d.ts +0 -14
  249. package/dist/src/service-provider/firebase/auth.js.map +0 -1
  250. package/dist/src/service-provider/firebase/firestorage-client.d.ts +0 -20
  251. package/dist/src/service-provider/firebase/firestorage-client.js.map +0 -1
  252. package/dist/src/service-provider/firebase/firestore-client.d.ts +0 -11
  253. package/dist/src/service-provider/firebase/firestore-client.js.map +0 -1
  254. package/dist/src/service-provider/firebase/functions-client.d.ts +0 -9
  255. package/dist/src/service-provider/firebase/functions-client.js.map +0 -1
  256. package/dist/src/service-provider/firebase/messagingFirebaseClient.d.ts +0 -8
  257. package/dist/src/service-provider/firebase/messagingFirebaseClient.js.map +0 -1
  258. package/dist/src/service-provider/mock/auth.d.ts +0 -5
  259. package/dist/src/service-provider/mock/auth.js.map +0 -1
  260. package/dist/src/service-provider/mock/function-client.d.ts +0 -8
  261. package/dist/src/service-provider/mock/function-client.js.map +0 -1
  262. package/dist/src/service-provider/mock/storage-client.d.ts +0 -10
  263. package/dist/src/service-provider/mock/storage-client.js.map +0 -1
  264. package/dist/src/service-provider/service-provider-impl.d.ts +0 -21
  265. package/dist/src/service-provider/service-provider-impl.js.map +0 -1
  266. package/dist/src/service-provider/service-provider-model.d.ts +0 -136
  267. package/dist/src/service-provider/service-provider-model.js.map +0 -1
  268. package/dist/src/store/indexDB.d.ts +0 -27
  269. package/dist/src/store/indexDB.js.map +0 -1
  270. package/dist/src/store/mini-rx.store.d.ts +0 -4
  271. package/dist/src/store/mini-rx.store.js.map +0 -1
  272. package/dist/src/store/spa-app-actions.d.ts +0 -104
  273. package/dist/src/store/spa-app-actions.js.map +0 -1
  274. package/dist/src/store/spa-app-effects.d.ts +0 -23
  275. package/dist/src/store/spa-app-effects.js.map +0 -1
  276. package/dist/src/store/spa-app-reducer.d.ts +0 -9
  277. package/dist/src/store/spa-app-reducer.js.map +0 -1
  278. package/dist/src/store/spa-app-selector.d.ts +0 -6
  279. package/dist/src/store/spa-app-selector.js.map +0 -1
  280. package/dist/src/stories/Button.d.ts +0 -27
  281. package/dist/src/stories/Button.js +0 -20
  282. package/dist/src/stories/Button.js.map +0 -1
  283. package/dist/src/stories/Button.stories.d.ts +0 -9
  284. package/dist/src/stories/Button.stories.js +0 -41
  285. package/dist/src/stories/Button.stories.js.map +0 -1
  286. package/dist/src/stories/Header.d.ts +0 -12
  287. package/dist/src/stories/Header.js +0 -44
  288. package/dist/src/stories/Header.js.map +0 -1
  289. package/dist/src/stories/Header.stories.d.ts +0 -7
  290. package/dist/src/stories/Header.stories.js +0 -17
  291. package/dist/src/stories/Header.stories.js.map +0 -1
  292. package/dist/src/stories/Page.d.ts +0 -12
  293. package/dist/src/stories/Page.js +0 -61
  294. package/dist/src/stories/Page.js.map +0 -1
  295. package/dist/src/stories/Page.stories.d.ts +0 -7
  296. package/dist/src/stories/Page.stories.js +0 -19
  297. package/dist/src/stories/Page.stories.js.map +0 -1
  298. package/dist/src/stories/pd-loading-state.stories.d.ts +0 -30
  299. package/dist/src/stories/pd-loading-state.stories.js +0 -153
  300. package/dist/src/stories/pd-loading-state.stories.js.map +0 -1
  301. package/dist/src/stories/pd-toast.stories.d.ts +0 -23
  302. package/dist/src/stories/pd-toast.stories.js +0 -34
  303. package/dist/src/stories/pd-toast.stories.js.map +0 -1
  304. package/dist/src/tmpown/pd-loading-state.d.ts +0 -9
  305. package/dist/src/tmpown/pd-loading-state.js.map +0 -1
  306. package/dist/src/tmpown/pd-login.d.ts +0 -14
  307. package/dist/src/tmpown/pd-login.js.map +0 -1
  308. package/dist/src/tmpown/pd-panel-viewer.d.ts +0 -18
  309. package/dist/src/tmpown/pd-panel-viewer.js +0 -188
  310. package/dist/src/tmpown/pd-panel-viewer.js.map +0 -1
  311. package/dist/src/tmpown/pd-panel.d.ts +0 -5
  312. package/dist/src/tmpown/pd-panel.js +0 -41
  313. package/dist/src/tmpown/pd-panel.js.map +0 -1
  314. package/dist/src/tmpown/pd-toast.d.ts +0 -12
  315. package/dist/src/tmpown/pd-toast.js.map +0 -1
  316. package/dist/stories/index.stories.d.ts +0 -33
  317. package/dist/stories/index.stories.js +0 -37
  318. package/dist/stories/index.stories.js.map +0 -1
  319. package/dist/test/pd-spa-helper.test.d.ts +0 -1
  320. package/dist/test/pd-spa-helper.test.js +0 -22
  321. package/dist/test/pd-spa-helper.test.js.map +0 -1
  322. package/dist/tsconfig.tsbuildinfo +0 -1
  323. package/index.d.ts +0 -15
  324. package/lit-localize.json +0 -15
  325. package/pd-spa-helper.iml +0 -9
  326. package/src/PdSpaHelper.ts +0 -619
  327. package/src/defaultpage/default-confirm-popup.ts +0 -78
  328. package/src/defaultpage/default-dialog-popup.ts +0 -105
  329. package/src/defaultpage/default-login.ts +0 -41
  330. package/src/defaultpage/default-popup.ts +0 -26
  331. package/src/defaultpage/default-step-address.ts +0 -57
  332. package/src/defaultpage/default-step-summary.ts +0 -88
  333. package/src/defaultpage/default-view-page.ts +0 -58
  334. package/src/defaultpage/default-wizard-step.ts +0 -142
  335. package/src/defaultpage/default-wizard.ts +0 -273
  336. package/src/generated/locale-codes.ts +0 -27
  337. package/src/generated/locale-wrapper/be-wrapper.ts +0 -13
  338. package/src/generated/locale-wrapper/de-wrapper.ts +0 -11
  339. package/src/generated/locale-wrapper/en-wrapper.ts +0 -13
  340. package/src/generated/locales/be.ts +0 -26
  341. package/src/generated/locales/de.ts +0 -26
  342. package/src/generated/locales/en.ts +0 -26
  343. package/src/helper/helper-utils.ts +0 -35
  344. package/src/index.ts +0 -66
  345. package/src/model/spa-model.ts +0 -20
  346. package/src/pd-spa-helper.ts +0 -3
  347. package/src/popup/wizard-close-popup.ts +0 -52
  348. package/src/popup/wizard-reload-popup.ts +0 -69
  349. package/src/router/AppMain.ts +0 -10
  350. package/src/service-call-controller2.ts +0 -68
  351. package/src/service-provider/firebase/auth.ts +0 -89
  352. package/src/service-provider/firebase/firestorage-client.ts +0 -327
  353. package/src/service-provider/firebase/firestore-client.ts +0 -40
  354. package/src/service-provider/firebase/functions-client.ts +0 -73
  355. package/src/service-provider/firebase/messagingFirebaseClient.ts +0 -102
  356. package/src/service-provider/mock/auth.ts +0 -86
  357. package/src/service-provider/mock/function-client.ts +0 -42
  358. package/src/service-provider/mock/storage-client.ts +0 -149
  359. package/src/service-provider/service-provider-impl.ts +0 -286
  360. package/src/service-provider/service-provider-model.ts +0 -163
  361. package/src/store/indexDB.ts +0 -244
  362. package/src/store/mini-rx.store.ts +0 -48
  363. package/src/store/spa-app-actions.ts +0 -36
  364. package/src/store/spa-app-effects.ts +0 -73
  365. package/src/store/spa-app-reducer.ts +0 -86
  366. package/src/store/spa-app-selector.ts +0 -41
  367. package/src/stories/pd-loading-state.stories.ts +0 -168
  368. package/src/stories/pd-toast.stories.ts +0 -43
  369. package/src/tmpown/pd-loading-state.ts +0 -177
  370. package/src/tmpown/pd-login.ts +0 -131
  371. package/src/tmpown/pd-panel-viewer.ts +0 -193
  372. package/src/tmpown/pd-panel.ts +0 -43
  373. package/src/tmpown/pd-toast.ts +0 -118
  374. package/test/pd-spa-helper.test.ts +0 -26
  375. package/tsconfig.json +0 -22
  376. package/web-dev-server.config.mjs +0 -27
  377. package/web-test-runner.config.mjs +0 -41
  378. package/xliff/be.xlf +0 -60
  379. package/xliff/de.xlf +0 -46
  380. package/xliff/en.xlf +0 -58
@@ -0,0 +1,227 @@
1
+ import { css, html } from "lit";
2
+ import "../../pd-icon/pd-icon.js";
3
+ import { PdBaseUI } from "./PdBaseUi.js";
4
+ import { SharedInputStyles } from "./shared-input-styles.js";
5
+ import "../pd-hover-box.js";
6
+ /**
7
+ * @license
8
+ * Copyright (c) 2021 PD Progressive Development UG. All rights reserved.
9
+ *
10
+ * Abstract base lit class for pd-input elements.
11
+ *
12
+ * Used from:
13
+ * - pd-checkbox
14
+ * - pd-input
15
+ * - pd-input-area
16
+ * - pd-radio-group
17
+ * - pd-range
18
+ * - pd-select
19
+ *
20
+ * Used to:
21
+ * - define css (import additional shared-input-styles.js)
22
+ * - define common properties (detailieren, aktuell zu viele bzw. nicht für alle sub-elemente gültig)
23
+ * - handle error msg (getter/setter)
24
+ * - helpers for validation event after change and render label/error elements.
25
+ *
26
+ * Events:
27
+ * - validate-form => fired when input element changed its value.
28
+ * - enter-pressed => fired when enter pressed.
29
+ * - field-change => fired when input element changed its value.
30
+ *
31
+ * Custom Properties (shared-input-styles):
32
+ * ... TODO
33
+ *
34
+ */
35
+ const INPUT_TYPE_TEXT = 1;
36
+ const INPUT_TYPE_SELECT = 2;
37
+ const INPUT_TYPE_RANGE = 4;
38
+ const INPUT_TYPE_AREA = 5;
39
+ const INPUT_TYPE_DATE = 7;
40
+ const INPUT_TYPE_FILE = 8;
41
+ const KEY_RETURN = 13;
42
+ let delayTimer = 0;
43
+ const DELAY_WAIT_TIME_MS = 400;
44
+ class PdBaseUIInput extends PdBaseUI {
45
+ /**
46
+ * Fired when an input element change its values.
47
+ * @event validate-form
48
+ */
49
+ /**
50
+ * Fired when enter was pressend during focus on input element.
51
+ * @event enter-pressed
52
+ */
53
+ /**
54
+ * Fired when field-value changed.
55
+ * @event field-change
56
+ */
57
+ static get styles() {
58
+ return [
59
+ PdBaseUI.styles,
60
+ SharedInputStyles,
61
+ css`
62
+ .label-header {
63
+ display: flex;
64
+ align-items: end;
65
+ justify-content: space-between;
66
+ }
67
+
68
+ .label-header pd-icon {
69
+ --pd-icon-size: 1.25rem;
70
+ --pd-icon-col-active: var(--pd-default-col);
71
+ --pd-icon-col-active-hover: var(--pd-default-hover-col);
72
+ --pd-icon-stroke-width: 0;
73
+ padding-right: 5px;
74
+ cursor: help;
75
+ }
76
+ `
77
+ ];
78
+ }
79
+ static get properties() {
80
+ return {
81
+ gradient: { type: Boolean },
82
+ // true for gradient background
83
+ disabled: { type: Boolean },
84
+ // disabled flag for element
85
+ readonly: { type: Boolean },
86
+ // readonly flag for element
87
+ required: { type: Boolean },
88
+ // required flag for element
89
+ requiredMsg: { type: String },
90
+ // specific error msg for required field
91
+ helperTxt: { type: String },
92
+ // helper text
93
+ valueName: { type: String },
94
+ defaultRequiredChar: { type: String },
95
+ defaultValue: { type: String },
96
+ // default value for input element (used for reset) TODO: Das hier ggf. automatisch mit erstem gesetzten Wert füllen?
97
+ label: { type: String },
98
+ // label text for input
99
+ value: { type: String },
100
+ // current value (set from outside) TODO: Typ (Object, Number, Txt, Bool...)
101
+ _errorMsg: { type: String, state: true },
102
+ // errorMsg (could set fronm outside for busines validation, internal validation=> todo)
103
+ _inputType: { type: Number, state: true }
104
+ // number value for type (text, select, range....), set constructor of sub-class
105
+ };
106
+ }
107
+ constructor() {
108
+ super();
109
+ this.gradient = false;
110
+ this.disabled = false;
111
+ this.readonly = false;
112
+ this.defaultValue = "";
113
+ this.label = "";
114
+ this.value = "";
115
+ this._errorMsg = "";
116
+ this._inputType = -1;
117
+ this.valueName = "";
118
+ this.defaultRequiredChar = "*";
119
+ }
120
+ // Test: Clear input with value => Dann in BasisKlasse und alle leiten von Basis UI Element ab
121
+ clear() {
122
+ this.value = "";
123
+ }
124
+ // Test: Reset input with value
125
+ reset() {
126
+ this.value = this.defaultValue || "";
127
+ }
128
+ get errorMsg() {
129
+ return this._errorMsg;
130
+ }
131
+ set errorMsg(msg) {
132
+ this._errorMsg = msg;
133
+ }
134
+ /*
135
+ get value() {
136
+ return this._value;
137
+ }
138
+
139
+ set value(newValue) {
140
+ console.info("Meine Werte vor Set _value, input.value, newValue: ", this._value, this._input.value, newValue);
141
+ this._value = newValue;
142
+ this._input.value = newValue;
143
+ console.info("Meine Werte nach Set: ", this._value, this._input.value, newValue);
144
+ }
145
+ */
146
+ _generateValidateEvent() {
147
+ this.dispatchEvent(
148
+ new CustomEvent("validate-form", {
149
+ detail: {
150
+ singleElement: this,
151
+ errorMap: /* @__PURE__ */ new Map()
152
+ },
153
+ composed: true,
154
+ bubbles: true
155
+ })
156
+ );
157
+ }
158
+ _handleChangedValue(newValue, event, checkReturn, showValidateMsg) {
159
+ const changed = this.value !== newValue;
160
+ this.value = newValue;
161
+ const keyCode = event.keyCode ? Number(event.keyCode) : -1;
162
+ const eventDetail = {
163
+ value: newValue,
164
+ name: this.valueName,
165
+ keyCode,
166
+ changed
167
+ };
168
+ const handleReturn = checkReturn && keyCode === KEY_RETURN;
169
+ if (handleReturn) {
170
+ this.dispatchEvent(
171
+ new CustomEvent("enter-pressed", {
172
+ detail: eventDetail,
173
+ composed: true,
174
+ bubbles: true
175
+ })
176
+ );
177
+ event.preventDefault();
178
+ }
179
+ if (changed) {
180
+ this.dispatchEvent(
181
+ new CustomEvent("field-change", {
182
+ detail: eventDetail,
183
+ composed: true,
184
+ bubbles: true
185
+ })
186
+ );
187
+ }
188
+ if (showValidateMsg) {
189
+ clearTimeout(delayTimer);
190
+ delayTimer = setTimeout(
191
+ this._generateValidateEvent.bind(this),
192
+ DELAY_WAIT_TIME_MS
193
+ );
194
+ }
195
+ }
196
+ _renderErrorMsg() {
197
+ return this.errorMsg && this.errorMsg.length > 0 ? html`
198
+ <div class="error-box error">
199
+ <p class="error-msg">${this.errorMsg}</p>
200
+ </div>
201
+ ` : "";
202
+ }
203
+ _renderLabel(forParam, additionalValue) {
204
+ return html`
205
+ <div class="label-header">
206
+ <label for="${forParam}">${this.label}${this.required && this.label ? this.defaultRequiredChar : ""}${additionalValue ? html` - <b>${additionalValue}</b>` : ""}</label>
207
+ ${this.helperTxt ? html`
208
+
209
+ <pd-hover-box>
210
+ <pd-icon slot="normal-view" icon="helpIcon" activeIcon></pd-icon>
211
+ <p slot="info-view">${this.helperTxt}</p>
212
+ </pd-hover-box>
213
+
214
+ ` : ""}
215
+ </div>
216
+ `;
217
+ }
218
+ }
219
+ export {
220
+ INPUT_TYPE_AREA,
221
+ INPUT_TYPE_DATE,
222
+ INPUT_TYPE_FILE,
223
+ INPUT_TYPE_RANGE,
224
+ INPUT_TYPE_SELECT,
225
+ INPUT_TYPE_TEXT,
226
+ PdBaseUIInput
227
+ };
@@ -0,0 +1,194 @@
1
+ import { css, html } from "lit";
2
+ import { PdBaseUI } from "./PdBaseUi.js";
3
+ /**
4
+ * @license
5
+ * Copyright (c) 2021 PD Progressive Development UG. All rights reserved.
6
+ */
7
+ class PdButton extends PdBaseUI {
8
+ /**
9
+ * @event button-clicked
10
+ */
11
+ static get styles() {
12
+ return [
13
+ PdBaseUI.styles,
14
+ css`
15
+ :host {
16
+
17
+ font-family: var(--pd-default-font-title-family);
18
+ font-size: var(--pd-button-font-size, 1em);
19
+ font-weight: var(--pd-button-font-weight, normal);
20
+
21
+ /*
22
+ height: 100%;
23
+ width: 100%; => Ohne diese Angabe eht die % Angaben icht
24
+ */
25
+ margin: 0.5rem;
26
+ margin-left: 0; /* Um gleich zum input field zu sein */
27
+
28
+ pointer-events: none;
29
+ }
30
+
31
+ .button-div {
32
+
33
+ display: flex;
34
+ justify-content: center;
35
+ align-items: center;
36
+ width: var(--pd-button-width, 140px);
37
+ height: var(--pd-button-height, 2rem);
38
+
39
+ border-radius: var(--pd-border-radius, 1px);
40
+
41
+ background-color: var(--pd-button-bg-col, var(--pd-default-dark-col));
42
+ color: var(--pd-button-font-col, var(--pd-default-bg-col));
43
+ border: var(--pd-button-border, 0);
44
+ cursor: pointer;
45
+
46
+ box-shadow: var(--pd-button-box-shadow, none);
47
+
48
+ pointer-events: all;
49
+ }
50
+
51
+ :host(:not([disabled])) .button-div:hover {
52
+ box-shadow: var(--pd-button-box-shadow-hover, -1px 1px 2px var(--pd-default-dark-col));
53
+ background-color: var(--pd-button-bg-col-hover, var(--pd-default-hover-col));
54
+ color: var(--pd-button-font-col-hover, var(--pd-default-dark-col));
55
+ transition: background-color 0.4s ease 0s;
56
+ --pd-button-border: var(--pd-button-border-hover);
57
+ }
58
+
59
+ :host(:not([disabled])):host([primary]) .button-div:hover {
60
+ background-color: var(--pd-button-primary-bg-col-hover, var(--pd-default-hover-col));
61
+ color: var(--pd-button-primary-font-col-hover, var(--pd-default-bg-col));
62
+ --pd-button-border: var(--pd-button-border-hover);
63
+ }
64
+
65
+ :host([primary]) .button-div {
66
+ background-color: var(--pd-button-primary-bg-col, var(--pd-default-col));
67
+ color: var(--pd-button-primary-font-col, var(--pd-default-bg-col));
68
+ }
69
+
70
+ :host([gradient]) .button-div {
71
+ background: linear-gradient(to right, var(--my-background-gradient-color, red) 0%, var(--my-background-color, blue) 100%);
72
+ }
73
+
74
+ :host([disabled]) .button-div {
75
+ cursor: auto;
76
+ border-color: var(--pd-default-disabled-col);
77
+ background-color: var(--pd-button-bg-col-disabled, var(--pd-default-disabled-col));
78
+ color: var(--pd-button-font-col-disabled, black);
79
+ --pd-button-border: var(--pd-button-border-disabled);
80
+ }
81
+
82
+ /* Style for Button */
83
+ a {
84
+ display: inline-block;
85
+ text-decoration: none;
86
+ border: none;
87
+ white-space: nowrap;
88
+ margin: 0.5rem;
89
+ pointer-events: none;
90
+
91
+ /*box-shadow: -2px 2px 4px #999;/* TODO: From var */
92
+ /*border-bottom: 1px solid var(--my-border-color);*/
93
+ /*will-change: transform; Dann über Menu bei Scroll...*/
94
+
95
+ /*
96
+ transition-property: box-shadow, background;
97
+ transition: .2s ease-in;
98
+ box-sizing: border-box;
99
+ */
100
+
101
+ /*overflow: hidden;
102
+ text-overflow: ellipsis;*/
103
+
104
+ /*padding: var(--squi-input-padding, .5rem);*/
105
+ }
106
+
107
+
108
+ /* button icon not integrated at the moment */
109
+ .button-icon {
110
+ display: flex;
111
+ align-items: center;
112
+ justify-content: center;
113
+ white-space: nowrap;
114
+ --pd-icon-fill: var(--icon-fill-light);
115
+ --pd-icon-fill-hover: var(--icon-fill-light);
116
+ }
117
+
118
+ .button-icon:not([disabled]) {
119
+ --pd-icon-fill: var(--app-primary-color);
120
+ --pd-icon-fill-hover: var(--app-primary-color-dark);
121
+ }
122
+
123
+ .button-icon pd-icon {
124
+ max-width: 1.25rem;
125
+ height: 1.25rem;
126
+ width: 1.25rem;
127
+ margin: 0 .15rem;
128
+ }
129
+
130
+ .button-icon.small pd-icon {
131
+ max-width: 1.25rem;
132
+ height: 1.25rem;
133
+ width: 1.25rem;
134
+ padding-right: 0.15rem;
135
+ }
136
+
137
+ .button-icon svg {
138
+ max-width: 1rem;
139
+ height: 1rem;
140
+ width: 1rem;
141
+ padding-right: .5rem;
142
+ fill: var(--app-primary-color);
143
+ }
144
+
145
+ .button-icon:hover pd-icon,
146
+ .button-icon:hover svg {
147
+ fill: var(--app-primary-color);
148
+ }
149
+
150
+ @media (min-width: 580px) {
151
+ .button-icon pd-icon {
152
+ margin: 0 .5rem;
153
+ }
154
+ .button-icon.small pd-icon {
155
+ padding-right: .5rem;
156
+ }
157
+ }
158
+
159
+ `
160
+ ];
161
+ }
162
+ static get properties() {
163
+ return {
164
+ primary: { type: Boolean },
165
+ gradient: { type: Boolean },
166
+ disabled: { type: Boolean },
167
+ text: { type: String },
168
+ value: { type: String }
169
+ };
170
+ }
171
+ constructor() {
172
+ super();
173
+ this.primary = false;
174
+ this.gradient = false;
175
+ this.disabled = false;
176
+ this.text = "Ok";
177
+ }
178
+ render() {
179
+ return html`
180
+ <div @click="${this._handleClick}" class="button-div">
181
+ <a ?disabled="${this.disabled}">${this.text}</a>
182
+ </div>`;
183
+ }
184
+ _handleClick() {
185
+ if (!this.disabled) {
186
+ this.dispatchEvent(new CustomEvent("button-clicked", {
187
+ detail: this.value
188
+ }));
189
+ }
190
+ }
191
+ }
192
+ export {
193
+ PdButton
194
+ };
@@ -0,0 +1,167 @@
1
+ import { css, html } from "lit";
2
+ import { msg } from "@lit/localize";
3
+ import { INPUT_TYPE_RANGE, INPUT_TYPE_SELECT } from "./PdBaseUiInput.js";
4
+ import { PdBaseUI } from "./PdBaseUi.js";
5
+ /**
6
+ * @license
7
+ * Copyright (c) 2021 PD Progressive Development UG. All rights reserved.
8
+ *
9
+ * Lit element container for pd input elements.
10
+ *
11
+ * Used to:
12
+ * - Automatically validation of form content
13
+ * - Success/NotReady information for form-container
14
+ */
15
+ class PdFormContainer extends PdBaseUI {
16
+ static get styles() {
17
+ return [
18
+ PdBaseUI.styles,
19
+ css`
20
+ :host {
21
+ display: flex;
22
+ flex-direction: column;
23
+ align-items: left;
24
+ gap: 20px;
25
+ }
26
+
27
+ .validation-info-container {
28
+ padding-top: var(--pd-form-row-padding-top, 10px);
29
+ }
30
+
31
+ .validation-info {
32
+ font-family: var(--pd-default-font-content-family);
33
+ font-size: var(--pd-form-info-font-size, 0.8em);
34
+ padding: 0.5em;
35
+ color:#58585a;
36
+ border-radius: var(--pd-border-radius, 0);
37
+ -moz-border-radius: var(--pd-border-radius, 0);
38
+ width:70%;
39
+ max-width:780px;
40
+ min-width:200px;
41
+ }
42
+
43
+ .filled {
44
+ border-left: 4px solid var(--pd-default-success-col);
45
+ border-right: 4px solid var(--pd-default-success-col);
46
+ border-top: 1px solid var(--pd-default-success-col);
47
+ border-bottom: 1px solid var(--pd-default-success-col);
48
+ background-color: var(--pd-default-success-light-col);
49
+ }
50
+
51
+ .unfilled {
52
+ border-left: 4px solid var(--pd-default-error-col);
53
+ border-right: 4px solid var(--pd-default-error-col);
54
+ border-top: 1px solid var(--pd-default-error-col);
55
+ border-bottom: 1px solid var(--pd-default-error-col);
56
+ background-color: var(--pd-default-error-light-col);
57
+ }
58
+
59
+ `
60
+ ];
61
+ }
62
+ static get properties() {
63
+ return {
64
+ requiredFieldInfo: { type: Boolean },
65
+ commonError: { type: String },
66
+ _requiredFieldsValid: { type: Boolean, state: true }
67
+ };
68
+ }
69
+ connectedCallback() {
70
+ super.connectedCallback();
71
+ this.addEventListener("validate-form", this._validateForm);
72
+ }
73
+ disconnectedCallback() {
74
+ super.connectedCallback();
75
+ this.removeEventListener("validate-form", this._validateForm);
76
+ }
77
+ render() {
78
+ return html`
79
+ <form>
80
+ <slot></slot>
81
+ ${this.requiredFieldInfo || this.commonError ? html`
82
+ <div class="validation-info-container">
83
+ <p class="validation-info ${this._requiredFieldsValid && (!this.commonError || this.commonError === "") ? "filled" : "unfilled"}">
84
+ ${this.commonError || (this._requiredFieldsValid ? msg("* Pflichtfelder ausgefüllt", { desc: "#pd.form.required.valid#" }) : msg("* Pflichtfeld", { desc: "#pd.form.required.info#" }))}
85
+ </p>
86
+ </div>` : ""}
87
+ </form>
88
+ `;
89
+ }
90
+ _validateForm(e) {
91
+ const reqEl = this.querySelectorAll("[required]");
92
+ reqEl.forEach((el) => {
93
+ const tmpEl = el;
94
+ if (!el.value || el.value === "" || el.value === "false" || el._inputType === INPUT_TYPE_RANGE && el.value === "0" || el._inputType === INPUT_TYPE_SELECT && el.value === "UNDEF") {
95
+ const erMsg = el.requiredMsg || msg("Eingabe erforderlich", { desc: "#pd.form.field.required#" });
96
+ if (!e.detail.singleElement || e.detail.singleElement === el) {
97
+ tmpEl.errorMsg = erMsg;
98
+ }
99
+ e.detail.errorMap.set(el.id, erMsg);
100
+ } else if (el.validate && typeof el.validate === "function" && el.validate(e)) {
101
+ const errMsg = el.validate(e);
102
+ if (!e.detail.singleElement || e.detail.singleElement === el) {
103
+ tmpEl.errorMsg = errMsg;
104
+ }
105
+ e.detail.errorMap.set(el.id, errMsg);
106
+ } else if (!e.detail.singleElement || e.detail.singleElement === el) {
107
+ tmpEl.errorMsg = "";
108
+ }
109
+ });
110
+ this._requiredFieldsValid = e.detail.errorMap.size === 0;
111
+ const validateByType = (fieldType, validFunc, invalidMsgTxt) => {
112
+ if (e.detail.singleElement && e.detail.singleElement.getAttribute("field-type") !== fieldType) {
113
+ return;
114
+ }
115
+ const reqSpecEl = e.detail.singleElement ? [e.detail.singleElement] : this.querySelectorAll(`[field-type=${fieldType}]`);
116
+ reqSpecEl.forEach((el) => {
117
+ const tmpEl = el;
118
+ if (!e.detail.errorMap.has(el.id) && el.value && el.value.length > 0) {
119
+ if (validFunc(el.value)) {
120
+ tmpEl.errorMsg = "";
121
+ } else {
122
+ tmpEl.errorMsg = invalidMsgTxt || `Invalid format for ${fieldType}`;
123
+ e.detail.errorMap.set(el.id, tmpEl.errorMsg);
124
+ }
125
+ }
126
+ });
127
+ };
128
+ validateByType(
129
+ "mail",
130
+ PdFormContainer._mailIsValid,
131
+ msg("Format mail@test.de verwenden", { desc: "#pd.form.field.invalid.mail#" })
132
+ );
133
+ validateByType(
134
+ "phone",
135
+ PdFormContainer._phoneIsValid,
136
+ msg("Format +49123 123456 verwenden", { desc: "#pd.form.field.invalid.phone#" })
137
+ );
138
+ validateByType(
139
+ "vat",
140
+ PdFormContainer._vatIsValid,
141
+ msg("Format DE0123456789 verwenden", { desc: "#pd.form.field.invalid.vat#" })
142
+ );
143
+ validateByType(
144
+ "number",
145
+ (val) => !isNaN(val),
146
+ msg("Nur Zahlen erlaubt", { desc: "#pd.form.field.invalid.number#" })
147
+ );
148
+ if (e.detail.singleElement) {
149
+ e.stopPropagation();
150
+ }
151
+ }
152
+ static _mailIsValid(email) {
153
+ const mValid = /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
154
+ return mValid;
155
+ }
156
+ static _vatIsValid(vat) {
157
+ const mValid = /^[A-Z]{2}[0-9]{8,12}$/.test(vat);
158
+ return mValid;
159
+ }
160
+ static _phoneIsValid(nr) {
161
+ const mValid = /^\+?[0-9 ]{7,15}$/.test(nr);
162
+ return mValid;
163
+ }
164
+ }
165
+ export {
166
+ PdFormContainer
167
+ };
@@ -0,0 +1,92 @@
1
+ import { css, html } from "lit";
2
+ import { PdBaseUI } from "./PdBaseUi.js";
3
+ /**
4
+ * @license
5
+ * Copyright (c) 2021 PD Progressive Development UG. All rights reserved.
6
+ */
7
+ class PdFormRow extends PdBaseUI {
8
+ static get styles() {
9
+ return css`
10
+ :host {
11
+
12
+ /* Define size for row, depends on media queries */
13
+ --my-row-width: 800px;
14
+ --my-gap: var(--pd-form-row-gap, 20px);
15
+ display: flex;
16
+ flex: 1 1 100%;
17
+ /*margin: 0 0 .5rem 0;*/
18
+ box-sizing: border-box;
19
+ width: 100%;
20
+ gap: var(--my-gap);
21
+ align-items: var(--pd-form-row-align-item, flex-start);
22
+ padding-top: var(--pd-form-row-padding-top, 10px);
23
+ }
24
+
25
+ ::slotted(.full-size) {
26
+ --pd-input-field-width: 100%;
27
+ }
28
+
29
+ ::slotted(.quarter1) {
30
+ --pd-input-field-width: calc(var(--my-row-width) * 0.25 - (var(--my-gap) * 0.75));
31
+
32
+ }
33
+
34
+ ::slotted(.quarter1-area) {
35
+ --pd-input-field-width: calc((var(--my-row-width) - 5px) * 0.25 - (var(--my-gap) * 0.75));
36
+
37
+ }
38
+
39
+ ::slotted(.quarter2) {
40
+ --pd-input-field-width: calc((var(--my-row-width) * 0.5) - (var(--my-gap) / 2));
41
+
42
+ }
43
+
44
+ ::slotted(.quarter2-area) {
45
+ --pd-input-field-width: calc(((var(--my-row-width) - 8px) * 0.5) - (var(--my-gap) / 2));
46
+ }
47
+
48
+ ::slotted(.quarter3) {
49
+ --pd-input-field-width: calc(var(--my-row-width) * 0.75 - (var(--my-gap) * 0.25));
50
+ }
51
+ /* Area is longer? Scrollbar? */
52
+ ::slotted(.quarter3-area) {
53
+ --pd-input-field-width: calc((var(--my-row-width) - 10px) * 0.75 - (var(--my-gap) * 0.25));
54
+ }
55
+
56
+ ::slotted(.quarter4) {
57
+ --pd-input-field-width: var(--my-row-width);
58
+ }
59
+ /* Area is longer? Scrollbar? */
60
+ ::slotted(.quarter4-area) {
61
+ --pd-input-field-width: calc(var(--my-row-width) - 15px);
62
+ }
63
+
64
+ @media (max-width: 930px) {
65
+ :host {
66
+ --my-row-width: 600px;
67
+ }
68
+ }
69
+ @media (max-width: 650px) {
70
+ :host {
71
+ --my-row-width: 400px;
72
+ --my-gap: 10px;
73
+ }
74
+ }
75
+ @media (max-width: 450px) {
76
+ :host {
77
+ --my-row-width: 300px;
78
+ --my-gap: 8px;
79
+ }
80
+ }
81
+
82
+ `;
83
+ }
84
+ render() {
85
+ return html`
86
+ <slot></slot>
87
+ `;
88
+ }
89
+ }
90
+ export {
91
+ PdFormRow
92
+ };