@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.
- package/dist/index.js +72 -0
- package/dist/node_modules/@firebase/app/dist/esm/index.esm2017.js +749 -0
- package/dist/node_modules/@firebase/auth/dist/esm2017/index-68602d24.js +6265 -0
- package/dist/node_modules/@firebase/component/dist/esm/index.esm2017.js +341 -0
- package/dist/node_modules/@firebase/firestore/dist/index.esm2017.js +10250 -0
- package/dist/node_modules/@firebase/functions/dist/index.esm2017.js +513 -0
- package/dist/node_modules/@firebase/installations/dist/esm/index.esm2017.js +863 -0
- package/dist/node_modules/@firebase/logger/dist/esm/index.esm2017.js +122 -0
- package/dist/node_modules/@firebase/messaging/dist/esm/index.esm2017.js +1019 -0
- package/dist/node_modules/@firebase/storage/dist/index.esm2017.js +2042 -0
- package/dist/node_modules/@firebase/util/dist/index.esm2017.js +931 -0
- package/dist/node_modules/@firebase/webchannel-wrapper/dist/bloom-blob/esm/bloom_blob_es2018.js +417 -0
- package/dist/node_modules/@firebase/webchannel-wrapper/dist/webchannel-blob/esm/webchannel_blob_es2018.js +2155 -0
- package/dist/node_modules/@lit/reactive-element/decorators/custom-element.js +14 -0
- package/dist/node_modules/@lit/reactive-element/decorators/property.js +20 -0
- package/dist/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js +7 -0
- package/dist/node_modules/@progressive-development/pd-dialog/pd-popup-dialog.js +5 -0
- package/dist/node_modules/@progressive-development/pd-dialog/pd-popup.js +2 -0
- package/dist/node_modules/@progressive-development/pd-dialog/src/PdPopup.js +113 -0
- package/dist/node_modules/@progressive-development/pd-dialog/src/PdPopupDialog.js +189 -0
- package/dist/node_modules/@progressive-development/pd-forms/pd-button.js +2 -0
- package/dist/node_modules/@progressive-development/pd-forms/pd-form-container.js +2 -0
- package/dist/node_modules/@progressive-development/pd-forms/pd-form-row.js +2 -0
- package/dist/node_modules/@progressive-development/pd-forms/pd-hover-box.js +2 -0
- package/dist/node_modules/@progressive-development/pd-forms/pd-input.js +2 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdBaseInputElement.js +86 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUi.js +34 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUiInput.js +227 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdButton.js +194 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdFormContainer.js +167 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdFormRow.js +92 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdHoverBox.js +108 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/PdInput.js +79 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/generated/locale/be.js +11 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/generated/locale/en.js +11 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/shared-input-field-styles.js +152 -0
- package/dist/node_modules/@progressive-development/pd-forms/src/shared-input-styles.js +64 -0
- package/dist/node_modules/@progressive-development/pd-icon/pd-icon.js +4 -0
- package/dist/node_modules/@progressive-development/pd-icon/src/PdIcon.js +596 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/locales/be.js +15 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/locales/de.js +15 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/locales/en.js +15 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-contact/pd-contact.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-contact/src/PdContact.js +567 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/pd-collapse.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/pd-edit-content.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/src/PdCollapse.js +136 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-content/src/PdEditContent.js +224 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-dialog/pd-popup.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-dialog/src/PdPopup.js +113 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-checkbox.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-form-container.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-form-row.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-hover-box.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-input.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/pd-radio-group.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdBaseInputElement.js +86 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUi.js +34 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdBaseUiInput.js +229 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdCheckbox.js +230 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdFormContainer.js +167 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdFormRow.js +92 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdHoverBox.js +108 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdInput.js +79 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/PdRadioGroup.js +72 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/shared-input-field-styles.js +152 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-forms/src/shared-input-styles.js +64 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-icon/pd-icon.js +4 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-icon/src/PdIcon.js +596 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-price/pd-pricetable.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/@progressive-development/pd-price/src/PdPricetable.js +149 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/fecha/lib/fecha.js +200 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/lit/node_modules/lit-html/directive.js +27 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/lit/node_modules/lit-html/directives/class-map.js +36 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/node_modules/lit/node_modules/lit-html/lit-html.js +242 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/pd-order-contacts.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/pd-order-summary.js +2 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/src/PdOrderContacts.js +192 -0
- package/dist/node_modules/@progressive-development/pd-order/dist/src/PdOrderSummary.js +243 -0
- package/dist/node_modules/@progressive-development/pd-page/pd-footer.js +2 -0
- package/dist/node_modules/@progressive-development/pd-page/pd-menu.js +2 -0
- package/dist/node_modules/@progressive-development/pd-page/src/PdFooter.js +141 -0
- package/dist/node_modules/@progressive-development/pd-page/src/PdMenu.js +450 -0
- package/dist/node_modules/@progressive-development/pd-shared-styles/src/shared-color-styles.js +30 -0
- package/dist/node_modules/@progressive-development/pd-shared-styles/src/shared-font-styles.js +32 -0
- package/dist/node_modules/@progressive-development/pd-wizard/pd-wizard.js +2 -0
- package/dist/node_modules/@progressive-development/pd-wizard/src/PdSteps.js +191 -0
- package/dist/node_modules/@progressive-development/pd-wizard/src/PdWizard.js +280 -0
- package/dist/node_modules/firebase/app/dist/esm/index.esm.js +35 -0
- package/dist/node_modules/idb/build/index.js +81 -0
- package/dist/node_modules/idb/build/wrap-idb-value.js +148 -0
- package/dist/node_modules/lit/node_modules/lit-html/directive.js +27 -0
- package/dist/node_modules/lit/node_modules/lit-html/directives/class-map.js +36 -0
- package/dist/node_modules/lit/node_modules/lit-html/lit-html.js +242 -0
- package/dist/node_modules/lit-element-router/lit-element-router.js +131 -0
- package/dist/node_modules/lit-element-router/utility/router-utility.js +36 -0
- package/dist/node_modules/mini-rx-store/index.esm.js +458 -0
- package/dist/node_modules/pwa-helpers/media-query.js +17 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Observable.js +100 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Subscriber.js +147 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Subscription.js +139 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/config.js +10 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/observable/innerFrom.js +159 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js +52 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/catchError.js +28 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/distinctUntilChanged.js +27 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/filter.js +13 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/map.js +13 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js +26 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/tap.js +36 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/withLatestFrom.js +43 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js +18 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/symbol/iterator.js +11 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/symbol/observable.js +6 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js +14 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/args.js +10 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js +9 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js +13 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/errorContext.js +8 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js +23 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/identity.js +6 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isArrayLike.js +6 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isAsyncIterable.js +7 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isFunction.js +6 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isInteropObservable.js +8 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isIterable.js +8 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isPromise.js +7 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isReadableStreamLike.js +46 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/lift.js +22 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/noop.js +5 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/pipe.js +17 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js +11 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/throwUnobservableError.js +6 -0
- package/dist/node_modules/tslib/tslib.es6.js +240 -0
- package/dist/pd-panel-viewer.js +189 -0
- package/dist/pd-panel.js +51 -0
- package/dist/src/PdSpaHelper.js +319 -402
- package/dist/src/defaultpage/default-confirm-popup.js +61 -41
- package/dist/src/defaultpage/default-dialog-popup.js +74 -60
- package/dist/src/defaultpage/default-login.js +31 -20
- package/dist/src/defaultpage/default-popup.js +13 -10
- package/dist/src/defaultpage/default-step-address.js +52 -42
- package/dist/src/defaultpage/default-step-summary.js +58 -49
- package/dist/src/defaultpage/default-view-page.js +31 -23
- package/dist/src/defaultpage/default-wizard-step.js +119 -111
- package/dist/src/defaultpage/default-wizard.js +199 -195
- package/dist/src/generated/locale-wrapper/be-wrapper.js +14 -11
- package/dist/src/generated/locale-wrapper/de-wrapper.js +12 -9
- package/dist/src/generated/locale-wrapper/en-wrapper.js +14 -11
- package/dist/src/generated/locales/be.js +17 -19
- package/dist/src/generated/locales/de.js +17 -19
- package/dist/src/generated/locales/en.js +17 -19
- package/dist/src/helper/helper-utils.js +29 -24
- package/dist/src/model/spa-model.js +6 -3
- package/dist/src/popup/wizard-close-popup.js +37 -27
- package/dist/src/popup/wizard-reload-popup.js +35 -23
- package/dist/src/router/AppMain.js +23 -12
- package/dist/src/service-provider/firebase/auth.js +50 -73
- package/dist/src/service-provider/firebase/firestorage-client.js +194 -243
- package/dist/src/service-provider/firebase/firestore-client.js +19 -25
- package/dist/src/service-provider/firebase/functions-client.js +27 -59
- package/dist/src/service-provider/firebase/messagingFirebaseClient.js +60 -59
- package/dist/src/service-provider/mock/auth.js +54 -54
- package/dist/src/service-provider/mock/function-client.js +28 -27
- package/dist/src/service-provider/mock/storage-client.js +86 -92
- package/dist/src/service-provider/service-provider-impl.js +206 -211
- package/dist/src/service-provider/service-provider-model.js +1 -2
- package/dist/src/store/indexDB.js +133 -180
- package/dist/src/store/mini-rx.store.js +36 -38
- package/dist/src/store/spa-app-actions.js +27 -14
- package/dist/src/store/spa-app-effects.js +60 -40
- package/dist/src/store/spa-app-reducer.js +42 -33
- package/dist/src/store/spa-app-selector.js +31 -15
- package/dist/src/tmpown/pd-loading-state.js +49 -39
- package/dist/src/tmpown/pd-login.js +76 -67
- package/dist/src/tmpown/pd-toast.js +74 -65
- package/package.json +21 -18
- package/.editorconfig +0 -29
- package/.storybook/main.ts +0 -14
- package/.storybook/preview.ts +0 -15
- package/demo/index.html +0 -29
- package/dist/src/InitApplicationData.d.ts +0 -3
- package/dist/src/InitApplicationData.js +0 -8
- package/dist/src/InitApplicationData.js.map +0 -1
- package/dist/src/PdSpaHelper.d.ts +0 -93
- package/dist/src/PdSpaHelper.js.map +0 -1
- package/dist/src/defaultpage/default-confirm-popup.d.ts +0 -19
- package/dist/src/defaultpage/default-confirm-popup.js.map +0 -1
- package/dist/src/defaultpage/default-dialog-popup.d.ts +0 -16
- package/dist/src/defaultpage/default-dialog-popup.js.map +0 -1
- package/dist/src/defaultpage/default-login.d.ts +0 -8
- package/dist/src/defaultpage/default-login.js.map +0 -1
- package/dist/src/defaultpage/default-popup.d.ts +0 -7
- package/dist/src/defaultpage/default-popup.js.map +0 -1
- package/dist/src/defaultpage/default-step-address.d.ts +0 -19
- package/dist/src/defaultpage/default-step-address.js.map +0 -1
- package/dist/src/defaultpage/default-step-summary.d.ts +0 -30
- package/dist/src/defaultpage/default-step-summary.js.map +0 -1
- package/dist/src/defaultpage/default-view-page.d.ts +0 -9
- package/dist/src/defaultpage/default-view-page.js.map +0 -1
- package/dist/src/defaultpage/default-wizard-step.d.ts +0 -34
- package/dist/src/defaultpage/default-wizard-step.js.map +0 -1
- package/dist/src/defaultpage/default-wizard.d.ts +0 -33
- package/dist/src/defaultpage/default-wizard.js.map +0 -1
- package/dist/src/firebase/auth.d.ts +0 -4
- package/dist/src/firebase/auth.js +0 -28
- package/dist/src/firebase/auth.js.map +0 -1
- package/dist/src/firebase/firestore-client.d.ts +0 -9
- package/dist/src/firebase/firestore-client.js +0 -19
- package/dist/src/firebase/firestore-client.js.map +0 -1
- package/dist/src/firebase/functions-client.d.ts +0 -34
- package/dist/src/firebase/functions-client.js +0 -70
- package/dist/src/firebase/functions-client.js.map +0 -1
- package/dist/src/generated/locale-codes.d.ts +0 -13
- package/dist/src/generated/locale-codes.js +0 -25
- package/dist/src/generated/locale-codes.js.map +0 -1
- package/dist/src/generated/locale-wrapper/be-wrapper.d.ts +0 -1
- package/dist/src/generated/locale-wrapper/be-wrapper.js.map +0 -1
- package/dist/src/generated/locale-wrapper/de-wrapper.d.ts +0 -15
- package/dist/src/generated/locale-wrapper/de-wrapper.js.map +0 -1
- package/dist/src/generated/locale-wrapper/en-wrapper.d.ts +0 -1
- package/dist/src/generated/locale-wrapper/en-wrapper.js.map +0 -1
- package/dist/src/generated/locales/be.d.ts +0 -15
- package/dist/src/generated/locales/be.js.map +0 -1
- package/dist/src/generated/locales/de.d.ts +0 -15
- package/dist/src/generated/locales/de.js.map +0 -1
- package/dist/src/generated/locales/en.d.ts +0 -15
- package/dist/src/generated/locales/en.js.map +0 -1
- package/dist/src/helper/helper-utils.d.ts +0 -5
- package/dist/src/helper/helper-utils.js.map +0 -1
- package/dist/src/index.d.ts +0 -22
- package/dist/src/index.js +0 -33
- package/dist/src/index.js.map +0 -1
- package/dist/src/model/spa-model.d.ts +0 -16
- package/dist/src/model/spa-model.js.map +0 -1
- package/dist/src/pd-spa-helper.d.ts +0 -0
- package/dist/src/pd-spa-helper.js +0 -5
- package/dist/src/pd-spa-helper.js.map +0 -1
- package/dist/src/popup/wizard-close-popup.d.ts +0 -10
- package/dist/src/popup/wizard-close-popup.js.map +0 -1
- package/dist/src/popup/wizard-reload-popup.d.ts +0 -13
- package/dist/src/popup/wizard-reload-popup.js.map +0 -1
- package/dist/src/router/AppMain.d.ts +0 -6
- package/dist/src/router/AppMain.js.map +0 -1
- package/dist/src/service-call-controller2.d.ts +0 -16
- package/dist/src/service-call-controller2.js +0 -43
- package/dist/src/service-call-controller2.js.map +0 -1
- package/dist/src/service-provider/firebase/auth.d.ts +0 -14
- package/dist/src/service-provider/firebase/auth.js.map +0 -1
- package/dist/src/service-provider/firebase/firestorage-client.d.ts +0 -20
- package/dist/src/service-provider/firebase/firestorage-client.js.map +0 -1
- package/dist/src/service-provider/firebase/firestore-client.d.ts +0 -11
- package/dist/src/service-provider/firebase/firestore-client.js.map +0 -1
- package/dist/src/service-provider/firebase/functions-client.d.ts +0 -9
- package/dist/src/service-provider/firebase/functions-client.js.map +0 -1
- package/dist/src/service-provider/firebase/messagingFirebaseClient.d.ts +0 -8
- package/dist/src/service-provider/firebase/messagingFirebaseClient.js.map +0 -1
- package/dist/src/service-provider/mock/auth.d.ts +0 -5
- package/dist/src/service-provider/mock/auth.js.map +0 -1
- package/dist/src/service-provider/mock/function-client.d.ts +0 -8
- package/dist/src/service-provider/mock/function-client.js.map +0 -1
- package/dist/src/service-provider/mock/storage-client.d.ts +0 -10
- package/dist/src/service-provider/mock/storage-client.js.map +0 -1
- package/dist/src/service-provider/service-provider-impl.d.ts +0 -21
- package/dist/src/service-provider/service-provider-impl.js.map +0 -1
- package/dist/src/service-provider/service-provider-model.d.ts +0 -136
- package/dist/src/service-provider/service-provider-model.js.map +0 -1
- package/dist/src/store/indexDB.d.ts +0 -27
- package/dist/src/store/indexDB.js.map +0 -1
- package/dist/src/store/mini-rx.store.d.ts +0 -4
- package/dist/src/store/mini-rx.store.js.map +0 -1
- package/dist/src/store/spa-app-actions.d.ts +0 -104
- package/dist/src/store/spa-app-actions.js.map +0 -1
- package/dist/src/store/spa-app-effects.d.ts +0 -23
- package/dist/src/store/spa-app-effects.js.map +0 -1
- package/dist/src/store/spa-app-reducer.d.ts +0 -9
- package/dist/src/store/spa-app-reducer.js.map +0 -1
- package/dist/src/store/spa-app-selector.d.ts +0 -6
- package/dist/src/store/spa-app-selector.js.map +0 -1
- package/dist/src/stories/Button.d.ts +0 -27
- package/dist/src/stories/Button.js +0 -20
- package/dist/src/stories/Button.js.map +0 -1
- package/dist/src/stories/Button.stories.d.ts +0 -9
- package/dist/src/stories/Button.stories.js +0 -41
- package/dist/src/stories/Button.stories.js.map +0 -1
- package/dist/src/stories/Header.d.ts +0 -12
- package/dist/src/stories/Header.js +0 -44
- package/dist/src/stories/Header.js.map +0 -1
- package/dist/src/stories/Header.stories.d.ts +0 -7
- package/dist/src/stories/Header.stories.js +0 -17
- package/dist/src/stories/Header.stories.js.map +0 -1
- package/dist/src/stories/Page.d.ts +0 -12
- package/dist/src/stories/Page.js +0 -61
- package/dist/src/stories/Page.js.map +0 -1
- package/dist/src/stories/Page.stories.d.ts +0 -7
- package/dist/src/stories/Page.stories.js +0 -19
- package/dist/src/stories/Page.stories.js.map +0 -1
- package/dist/src/stories/pd-loading-state.stories.d.ts +0 -30
- package/dist/src/stories/pd-loading-state.stories.js +0 -153
- package/dist/src/stories/pd-loading-state.stories.js.map +0 -1
- package/dist/src/stories/pd-toast.stories.d.ts +0 -23
- package/dist/src/stories/pd-toast.stories.js +0 -34
- package/dist/src/stories/pd-toast.stories.js.map +0 -1
- package/dist/src/tmpown/pd-loading-state.d.ts +0 -9
- package/dist/src/tmpown/pd-loading-state.js.map +0 -1
- package/dist/src/tmpown/pd-login.d.ts +0 -14
- package/dist/src/tmpown/pd-login.js.map +0 -1
- package/dist/src/tmpown/pd-panel-viewer.d.ts +0 -18
- package/dist/src/tmpown/pd-panel-viewer.js +0 -188
- package/dist/src/tmpown/pd-panel-viewer.js.map +0 -1
- package/dist/src/tmpown/pd-panel.d.ts +0 -5
- package/dist/src/tmpown/pd-panel.js +0 -41
- package/dist/src/tmpown/pd-panel.js.map +0 -1
- package/dist/src/tmpown/pd-toast.d.ts +0 -12
- package/dist/src/tmpown/pd-toast.js.map +0 -1
- package/dist/stories/index.stories.d.ts +0 -33
- package/dist/stories/index.stories.js +0 -37
- package/dist/stories/index.stories.js.map +0 -1
- package/dist/test/pd-spa-helper.test.d.ts +0 -1
- package/dist/test/pd-spa-helper.test.js +0 -22
- package/dist/test/pd-spa-helper.test.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/index.d.ts +0 -15
- package/lit-localize.json +0 -15
- package/pd-spa-helper.iml +0 -9
- package/src/PdSpaHelper.ts +0 -619
- package/src/defaultpage/default-confirm-popup.ts +0 -78
- package/src/defaultpage/default-dialog-popup.ts +0 -105
- package/src/defaultpage/default-login.ts +0 -41
- package/src/defaultpage/default-popup.ts +0 -26
- package/src/defaultpage/default-step-address.ts +0 -57
- package/src/defaultpage/default-step-summary.ts +0 -88
- package/src/defaultpage/default-view-page.ts +0 -58
- package/src/defaultpage/default-wizard-step.ts +0 -142
- package/src/defaultpage/default-wizard.ts +0 -273
- package/src/generated/locale-codes.ts +0 -27
- package/src/generated/locale-wrapper/be-wrapper.ts +0 -13
- package/src/generated/locale-wrapper/de-wrapper.ts +0 -11
- package/src/generated/locale-wrapper/en-wrapper.ts +0 -13
- package/src/generated/locales/be.ts +0 -26
- package/src/generated/locales/de.ts +0 -26
- package/src/generated/locales/en.ts +0 -26
- package/src/helper/helper-utils.ts +0 -35
- package/src/index.ts +0 -66
- package/src/model/spa-model.ts +0 -20
- package/src/pd-spa-helper.ts +0 -3
- package/src/popup/wizard-close-popup.ts +0 -52
- package/src/popup/wizard-reload-popup.ts +0 -69
- package/src/router/AppMain.ts +0 -10
- package/src/service-call-controller2.ts +0 -68
- package/src/service-provider/firebase/auth.ts +0 -89
- package/src/service-provider/firebase/firestorage-client.ts +0 -327
- package/src/service-provider/firebase/firestore-client.ts +0 -40
- package/src/service-provider/firebase/functions-client.ts +0 -73
- package/src/service-provider/firebase/messagingFirebaseClient.ts +0 -102
- package/src/service-provider/mock/auth.ts +0 -86
- package/src/service-provider/mock/function-client.ts +0 -42
- package/src/service-provider/mock/storage-client.ts +0 -149
- package/src/service-provider/service-provider-impl.ts +0 -286
- package/src/service-provider/service-provider-model.ts +0 -163
- package/src/store/indexDB.ts +0 -244
- package/src/store/mini-rx.store.ts +0 -48
- package/src/store/spa-app-actions.ts +0 -36
- package/src/store/spa-app-effects.ts +0 -73
- package/src/store/spa-app-reducer.ts +0 -86
- package/src/store/spa-app-selector.ts +0 -41
- package/src/stories/pd-loading-state.stories.ts +0 -168
- package/src/stories/pd-toast.stories.ts +0 -43
- package/src/tmpown/pd-loading-state.ts +0 -177
- package/src/tmpown/pd-login.ts +0 -131
- package/src/tmpown/pd-panel-viewer.ts +0 -193
- package/src/tmpown/pd-panel.ts +0 -43
- package/src/tmpown/pd-toast.ts +0 -118
- package/test/pd-spa-helper.test.ts +0 -26
- package/tsconfig.json +0 -22
- package/web-dev-server.config.mjs +0 -27
- package/web-test-runner.config.mjs +0 -41
- package/xliff/be.xlf +0 -60
- package/xliff/de.xlf +0 -46
- 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
|
+
};
|