@kms-ngx-ui/presentational 16.15.0 → 16.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/assets/icons.json +1 -0
- package/esm2022/kms-ngx-ui-presentational.mjs +5 -0
- package/esm2022/lib/directives/directives.module.mjs +45 -0
- package/esm2022/lib/directives/size.directive.mjs +21 -0
- package/esm2022/lib/directives/sum-of-height.directive.mjs +74 -0
- package/esm2022/lib/directives/swipe.directive.mjs +194 -0
- package/esm2022/lib/directives/swipe.model.mjs +5 -0
- package/esm2022/lib/directives/time.directive.mjs +46 -0
- package/esm2022/lib/directives/tooltip.directive.mjs +118 -0
- package/esm2022/lib/kms-ngx-ui-presentational.component.mjs +21 -0
- package/esm2022/lib/kms-ngx-ui-presentational.module.mjs +219 -0
- package/esm2022/lib/kms-ngx-ui-presentational.service.mjs +14 -0
- package/esm2022/lib/models/address.model.mjs +6 -0
- package/esm2022/lib/models/button-response-types.enum.mjs +9 -0
- package/esm2022/lib/models/iconSize.enum.mjs +17 -0
- package/esm2022/lib/models/image-snippet.mjs +18 -0
- package/esm2022/lib/models/image-snippet.model.mjs +18 -0
- package/esm2022/lib/models/index.mjs +6 -0
- package/esm2022/lib/models/is-value.function.mjs +17 -0
- package/esm2022/lib/models/salutation.enum.mjs +7 -0
- package/esm2022/lib/models/types/attached-file-dto.model.mjs +6 -0
- package/esm2022/lib/models/types/nullable.type.mjs +5 -0
- package/esm2022/lib/parent-components/form-control.component.mjs +75 -0
- package/esm2022/lib/parent-components/form.component.mjs +84 -0
- package/esm2022/lib/pipes/custom-pipes.module.mjs +51 -0
- package/esm2022/lib/pipes/integer-currency.pipe.mjs +27 -0
- package/esm2022/lib/pipes/safe-html.pipe.mjs +23 -0
- package/esm2022/lib/pipes/safe-resource-url.pipe.mjs +23 -0
- package/esm2022/lib/pipes/safe-url.pipe.mjs +23 -0
- package/esm2022/lib/pipes/trim.pipe.mjs +20 -0
- package/esm2022/lib/pipes/typeof.pipe.mjs +16 -0
- package/esm2022/lib/services/viewport.service.mjs +355 -0
- package/esm2022/lib/ui/back-to-top/back-to-top.component.mjs +51 -0
- package/esm2022/lib/ui/checkbox/checkbox.component.mjs +67 -0
- package/esm2022/lib/ui/color-input/color-input.component.mjs +76 -0
- package/esm2022/lib/ui/confirmation-dialog/confirmation-dialog.component.mjs +50 -0
- package/esm2022/lib/ui/confirmation-dialog/dialog-data.enum.mjs +6 -0
- package/esm2022/lib/ui/confirmation-dialog/dialog-data.model.mjs +2 -0
- package/esm2022/lib/ui/dropdown-from-data/dropdown-from-data.component.mjs +203 -0
- package/esm2022/lib/ui/enum-radiogroup/enum-radiogroup.component.mjs +53 -0
- package/esm2022/lib/ui/file-input/file-input.component.mjs +232 -0
- package/esm2022/lib/ui/flyout/flyout.component.mjs +120 -0
- package/esm2022/lib/ui/icon/icon.component.mjs +49 -0
- package/esm2022/lib/ui/icon/iconSize.enum.mjs +28 -0
- package/esm2022/lib/ui/image-slider/image-slider.component.mjs +92 -0
- package/esm2022/lib/ui/kms-accordion-item/kms-accordion-item.component.mjs +40 -0
- package/esm2022/lib/ui/loader/loader.component.mjs +18 -0
- package/esm2022/lib/ui/map/map.component.mjs +113 -0
- package/esm2022/lib/ui/radiobutton/radiobutton.component.mjs +67 -0
- package/esm2022/lib/ui/salutation-dropdown/salutation-dropdown.component.mjs +55 -0
- package/esm2022/lib/ui/salutation-radiogroup/salutation-radiogroup.component.mjs +49 -0
- package/esm2022/lib/ui/slide-toggle/slide-toggle.component.mjs +74 -0
- package/esm2022/lib/ui/slider/slider.component.mjs +74 -0
- package/esm2022/lib/ui/slider/slider.model.mjs +3 -0
- package/esm2022/lib/ui/time-input/time-input.component.mjs +109 -0
- package/esm2022/lib/ui/tooltip-icon/tooltip-icon.component.mjs +41 -0
- package/esm2022/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.mjs +82 -0
- package/esm2022/public-api.mjs +50 -0
- package/fesm2022/kms-ngx-ui-presentational.mjs +3078 -0
- package/fesm2022/kms-ngx-ui-presentational.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/directives/directives.module.d.ts +13 -0
- package/lib/directives/size.directive.d.ts +10 -0
- package/lib/directives/sum-of-height.directive.d.ts +31 -0
- package/lib/directives/swipe.directive.d.ts +45 -0
- package/lib/directives/swipe.model.d.ts +49 -0
- package/lib/directives/time.directive.d.ts +11 -0
- package/lib/directives/tooltip.directive.d.ts +26 -0
- package/lib/kms-ngx-ui-presentational.component.d.ts +8 -0
- package/lib/kms-ngx-ui-presentational.module.d.ts +49 -0
- package/lib/kms-ngx-ui-presentational.service.d.ts +6 -0
- package/lib/models/address.model.d.ts +14 -0
- package/lib/models/button-response-types.enum.d.ts +7 -0
- package/lib/models/iconSize.enum.d.ts +15 -0
- package/lib/models/image-snippet.d.ts +15 -0
- package/lib/models/image-snippet.model.d.ts +15 -0
- package/lib/models/is-value.function.d.ts +9 -0
- package/lib/models/salutation.enum.d.ts +5 -0
- package/{src/lib/models/types/attached-file-dto.model.ts → lib/models/types/attached-file-dto.model.d.ts} +1 -1
- package/{src/lib/models/types/nullable.type.ts → lib/models/types/nullable.type.d.ts} +0 -1
- package/lib/parent-components/form-control.component.d.ts +27 -0
- package/lib/parent-components/form.component.d.ts +34 -0
- package/lib/pipes/custom-pipes.module.d.ts +13 -0
- package/lib/pipes/integer-currency.pipe.d.ts +13 -0
- package/lib/pipes/safe-html.pipe.d.ts +13 -0
- package/lib/pipes/safe-resource-url.pipe.d.ts +13 -0
- package/lib/pipes/safe-url.pipe.d.ts +13 -0
- package/lib/pipes/trim.pipe.d.ts +10 -0
- package/lib/pipes/typeof.pipe.d.ts +7 -0
- package/lib/services/viewport.service.d.ts +149 -0
- package/lib/ui/back-to-top/back-to-top.component.d.ts +10 -0
- package/lib/ui/checkbox/checkbox.component.d.ts +25 -0
- package/lib/ui/color-input/color-input.component.d.ts +19 -0
- package/lib/ui/confirmation-dialog/confirmation-dialog.component.d.ts +25 -0
- package/lib/ui/confirmation-dialog/dialog-data.enum.d.ts +4 -0
- package/lib/ui/confirmation-dialog/dialog-data.model.d.ts +14 -0
- package/lib/ui/dropdown-from-data/dropdown-from-data.component.d.ts +67 -0
- package/lib/ui/enum-radiogroup/enum-radiogroup.component.d.ts +17 -0
- package/lib/ui/file-input/file-input.component.d.ts +89 -0
- package/lib/ui/flyout/flyout.component.d.ts +32 -0
- package/lib/ui/icon/icon.component.d.ts +45 -0
- package/lib/ui/icon/iconSize.enum.d.ts +25 -0
- package/lib/ui/image-slider/image-slider.component.d.ts +24 -0
- package/lib/ui/kms-accordion-item/kms-accordion-item.component.d.ts +22 -0
- package/lib/ui/loader/loader.component.d.ts +6 -0
- package/lib/ui/map/map.component.d.ts +67 -0
- package/lib/ui/radiobutton/radiobutton.component.d.ts +22 -0
- package/lib/ui/salutation-dropdown/salutation-dropdown.component.d.ts +17 -0
- package/lib/ui/salutation-radiogroup/salutation-radiogroup.component.d.ts +15 -0
- package/lib/ui/slide-toggle/slide-toggle.component.d.ts +26 -0
- package/lib/ui/slider/slider.component.d.ts +27 -0
- package/{src/lib/ui/slider/slider.model.ts → lib/ui/slider/slider.model.d.ts} +0 -1
- package/lib/ui/time-input/time-input.component.d.ts +28 -0
- package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +16 -0
- package/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.d.ts +27 -0
- package/package.json +17 -3
- package/{src/public-api.ts → public-api.d.ts} +0 -11
- package/src/assets/icons.json +1 -1
- package/src/assets/sprite.svg +1 -1
- package/.storybook/main.ts +0 -26
- package/.storybook/preview.ts +0 -0
- package/.storybook/tsconfig.json +0 -16
- package/CHANGELOG.md +0 -5
- package/jest.config.ts +0 -33
- package/ng-package.json +0 -15
- package/project.json +0 -80
- package/scripts/generate-sprite.js +0 -67
- package/src/assets/icons/alert-outline.svg +0 -1
- package/src/assets/icons/arrow-down.svg +0 -1
- package/src/assets/icons/arrow-left.svg +0 -1
- package/src/assets/icons/arrow-right-left.svg +0 -6
- package/src/assets/icons/arrow-right.svg +0 -1
- package/src/assets/icons/arrow-top.svg +0 -1
- package/src/assets/icons/arrows-left.svg +0 -11
- package/src/assets/icons/calendar.svg +0 -1
- package/src/assets/icons/camera.svg +0 -1
- package/src/assets/icons/cardealer.svg +0 -1
- package/src/assets/icons/checkbox_active.svg +0 -1
- package/src/assets/icons/checkbox_inactive.svg +0 -1
- package/src/assets/icons/checkbox_inner.svg +0 -1
- package/src/assets/icons/checkmark-circle.svg +0 -1
- package/src/assets/icons/checkmark-filled.svg +0 -1
- package/src/assets/icons/chevron-down.svg +0 -1
- package/src/assets/icons/chevron-left.svg +0 -1
- package/src/assets/icons/chevron-right.svg +0 -1
- package/src/assets/icons/chevron-top.svg +0 -1
- package/src/assets/icons/circle.svg +0 -1
- package/src/assets/icons/clock.svg +0 -1
- package/src/assets/icons/close-circle.svg +0 -1
- package/src/assets/icons/close.svg +0 -1
- package/src/assets/icons/cog.svg +0 -1
- package/src/assets/icons/collapse-right.svg +0 -1
- package/src/assets/icons/create.svg +0 -1
- package/src/assets/icons/credit.svg +0 -1
- package/src/assets/icons/diamond.svg +0 -1
- package/src/assets/icons/download.svg +0 -1
- package/src/assets/icons/drag1.svg +0 -1
- package/src/assets/icons/edit-circle.svg +0 -1
- package/src/assets/icons/efficiency.svg +0 -1
- package/src/assets/icons/electro-cable.svg +0 -1
- package/src/assets/icons/ellipse.svg +0 -1
- package/src/assets/icons/end.svg +0 -1
- package/src/assets/icons/export-all.svg +0 -1
- package/src/assets/icons/facebook.svg +0 -1
- package/src/assets/icons/file-download.svg +0 -1
- package/src/assets/icons/file-upload.svg +0 -1
- package/src/assets/icons/floating_button.svg +0 -1
- package/src/assets/icons/floating_button_clear.svg +0 -1
- package/src/assets/icons/ic-invoice.svg +0 -1
- package/src/assets/icons/ic-policy.svg +0 -1
- package/src/assets/icons/ic_GEZ.svg +0 -1
- package/src/assets/icons/ic_abbrechen-filled.svg +0 -1
- package/src/assets/icons/ic_abbrechen.svg +0 -1
- package/src/assets/icons/ic_back.svg +0 -1
- package/src/assets/icons/ic_bereifung.svg +0 -1
- package/src/assets/icons/ic_bezeichnung.svg +0 -1
- package/src/assets/icons/ic_bill.svg +0 -3
- package/src/assets/icons/ic_booking.svg +0 -1
- package/src/assets/icons/ic_cancel_form.svg +0 -1
- package/src/assets/icons/ic_car.svg +0 -1
- package/src/assets/icons/ic_check.svg +0 -1
- package/src/assets/icons/ic_check_form.svg +0 -1
- package/src/assets/icons/ic_co2.svg +0 -1
- package/src/assets/icons/ic_credit-card.svg +0 -1
- package/src/assets/icons/ic_edit.svg +0 -1
- package/src/assets/icons/ic_equipment.svg +0 -11
- package/src/assets/icons/ic_eye.svg +0 -1
- package/src/assets/icons/ic_eye_active.svg +0 -1
- package/src/assets/icons/ic_filter.svg +0 -1
- package/src/assets/icons/ic_form_error.svg +0 -1
- package/src/assets/icons/ic_form_finished.svg +0 -1
- package/src/assets/icons/ic_gkm.svg +0 -1
- package/src/assets/icons/ic_heart.svg +0 -1
- package/src/assets/icons/ic_heart_filled.svg +0 -1
- package/src/assets/icons/ic_historie.svg +0 -1
- package/src/assets/icons/ic_home.svg +0 -1
- package/src/assets/icons/ic_home_new.svg +0 -1
- package/src/assets/icons/ic_inclusivekm.svg +0 -5
- package/src/assets/icons/ic_info.svg +0 -1
- package/src/assets/icons/ic_kraftstoff.svg +0 -1
- package/src/assets/icons/ic_language.svg +0 -1
- package/src/assets/icons/ic_last.svg +0 -8
- package/src/assets/icons/ic_laufleistung.svg +0 -1
- package/src/assets/icons/ic_left.svg +0 -1
- package/src/assets/icons/ic_lkm-dark.svg +0 -1
- package/src/assets/icons/ic_lkm-gray.svg +0 -1
- package/src/assets/icons/ic_lkm-red.svg +0 -1
- package/src/assets/icons/ic_lkm.svg +0 -1
- package/src/assets/icons/ic_lock.svg +0 -1
- package/src/assets/icons/ic_menu.svg +0 -1
- package/src/assets/icons/ic_minus.svg +0 -1
- package/src/assets/icons/ic_new-car.svg +0 -1
- package/src/assets/icons/ic_pickup.svg +0 -1
- package/src/assets/icons/ic_pin.svg +0 -1
- package/src/assets/icons/ic_plus-circle.svg +0 -5
- package/src/assets/icons/ic_plus.svg +0 -1
- package/src/assets/icons/ic_radiobutton_active.svg +0 -1
- package/src/assets/icons/ic_radiobutton_inactive.svg +0 -1
- package/src/assets/icons/ic_redirect.svg +0 -12
- package/src/assets/icons/ic_return.svg +0 -1
- package/src/assets/icons/ic_schaltung.svg +0 -1
- package/src/assets/icons/ic_settings.svg +0 -1
- package/src/assets/icons/ic_shops.svg +0 -1
- package/src/assets/icons/ic_side_front.svg +0 -17
- package/src/assets/icons/ic_side_front_left.svg +0 -17
- package/src/assets/icons/ic_side_front_left_tire.svg +0 -17
- package/src/assets/icons/ic_side_front_right.svg +0 -17
- package/src/assets/icons/ic_side_front_right_tire.svg +0 -17
- package/src/assets/icons/ic_side_front_zoomed.svg +0 -17
- package/src/assets/icons/ic_side_rear.svg +0 -17
- package/src/assets/icons/ic_side_rear_left.svg +0 -17
- package/src/assets/icons/ic_side_rear_left_tire.svg +0 -17
- package/src/assets/icons/ic_side_rear_right.svg +0 -17
- package/src/assets/icons/ic_side_rear_right_tire.svg +0 -17
- package/src/assets/icons/ic_slider.svg +0 -1
- package/src/assets/icons/ic_spezification.svg +0 -5
- package/src/assets/icons/ic_steuer_versicherung.svg +0 -1
- package/src/assets/icons/ic_tool.svg +0 -12
- package/src/assets/icons/ic_tooltip_drag.svg +0 -1
- package/src/assets/icons/ic_used-car.svg +0 -1
- package/src/assets/icons/ic_vertrag.svg +0 -1
- package/src/assets/icons/ic_wartung_verschleiss.svg +0 -1
- package/src/assets/icons/ic_zulassung.svg +0 -1
- package/src/assets/icons/image.svg +0 -1
- package/src/assets/icons/instagram.svg +0 -1
- package/src/assets/icons/kms-logo-white.svg +0 -6
- package/src/assets/icons/kms-logo.svg +0 -6
- package/src/assets/icons/linkedin.svg +0 -1
- package/src/assets/icons/mail.svg +0 -1
- package/src/assets/icons/map.svg +0 -1
- package/src/assets/icons/mileage.svg +0 -1
- package/src/assets/icons/move-list-left.svg +0 -6
- package/src/assets/icons/move-list-right.svg +0 -15
- package/src/assets/icons/palette.svg +0 -1
- package/src/assets/icons/pdf.svg +0 -1
- package/src/assets/icons/polestar.svg +0 -1
- package/src/assets/icons/position.svg +0 -1
- package/src/assets/icons/price-tag.svg +0 -1
- package/src/assets/icons/profile-filled.svg +0 -1
- package/src/assets/icons/profile.svg +0 -1
- package/src/assets/icons/profile2.svg +0 -1
- package/src/assets/icons/question-circle.svg +0 -1
- package/src/assets/icons/question-filled.svg +0 -1
- package/src/assets/icons/question.svg +0 -1
- package/src/assets/icons/rent.svg +0 -7
- package/src/assets/icons/search.svg +0 -1
- package/src/assets/icons/security.svg +0 -1
- package/src/assets/icons/special_entry.svg +0 -4
- package/src/assets/icons/star-outline.svg +0 -1
- package/src/assets/icons/star.svg +0 -1
- package/src/assets/icons/start.svg +0 -1
- package/src/assets/icons/submenu-dots.svg +0 -1
- package/src/assets/icons/subscription.svg +0 -1
- package/src/assets/icons/support.svg +0 -1
- package/src/assets/icons/trash.svg +0 -1
- package/src/assets/icons/tumblr.svg +0 -1
- package/src/assets/icons/twitter.svg +0 -1
- package/src/assets/icons/tyre.svg +0 -6
- package/src/assets/icons/upload.svg +0 -1
- package/src/assets/icons/user-circle.svg +0 -1
- package/src/assets/icons/users.svg +0 -1
- package/src/assets/icons/water.svg +0 -1
- package/src/assets/icons/whatsapp.svg +0 -1
- package/src/assets/icons/width.svg +0 -1
- package/src/assets/icons/xing.svg +0 -1
- package/src/assets/icons/youtube.svg +0 -1
- package/src/assets/icons/zahlung_active.svg +0 -1
- package/src/assets/icons/zahlungsanforderung.svg +0 -1
- package/src/lib/directives/directives.module.ts +0 -33
- package/src/lib/directives/size.directive.ts +0 -13
- package/src/lib/directives/sum-of-height.directive.ts +0 -81
- package/src/lib/directives/swipe.directive.ts +0 -215
- package/src/lib/directives/swipe.model.ts +0 -55
- package/src/lib/directives/time.directive.ts +0 -41
- package/src/lib/directives/tooltip.directive.ts +0 -143
- package/src/lib/kms-ngx-ui-presentational.component.spec.ts +0 -25
- package/src/lib/kms-ngx-ui-presentational.component.ts +0 -19
- package/src/lib/kms-ngx-ui-presentational.module.ts +0 -128
- package/src/lib/kms-ngx-ui-presentational.service.spec.ts +0 -16
- package/src/lib/kms-ngx-ui-presentational.service.ts +0 -9
- package/src/lib/models/address.model.ts +0 -16
- package/src/lib/models/button-response-types.enum.ts +0 -8
- package/src/lib/models/iconSize.enum.ts +0 -16
- package/src/lib/models/image-snippet.model.ts +0 -17
- package/src/lib/models/image-snippet.ts +0 -17
- package/src/lib/models/is-value.function.ts +0 -20
- package/src/lib/models/salutation.enum.ts +0 -5
- package/src/lib/parent-components/colorable.component.ts +0 -32
- package/src/lib/parent-components/form-control.component.ts +0 -76
- package/src/lib/parent-components/form.component.ts +0 -94
- package/src/lib/pipes/custom-pipes.module.ts +0 -35
- package/src/lib/pipes/integer-currency.pipe.ts +0 -22
- package/src/lib/pipes/safe-html.pipe.ts +0 -17
- package/src/lib/pipes/safe-resource-url.pipe.ts +0 -17
- package/src/lib/pipes/safe-url.pipe.ts +0 -17
- package/src/lib/pipes/trim.pipe.ts +0 -16
- package/src/lib/pipes/typeof.pipe.ts +0 -10
- package/src/lib/services/viewport.service.ts +0 -411
- package/src/lib/ui/back-to-top/back-to-top.component.html +0 -9
- package/src/lib/ui/back-to-top/back-to-top.component.spec.ts +0 -95
- package/src/lib/ui/back-to-top/back-to-top.component.stories.ts +0 -26
- package/src/lib/ui/back-to-top/back-to-top.component.ts +0 -48
- package/src/lib/ui/checkbox/checkbox.component.html +0 -10
- package/src/lib/ui/checkbox/checkbox.component.spec.ts +0 -39
- package/src/lib/ui/checkbox/checkbox.component.stories.ts +0 -39
- package/src/lib/ui/checkbox/checkbox.component.ts +0 -60
- package/src/lib/ui/color-input/color-input.component.html +0 -11
- package/src/lib/ui/color-input/color-input.component.spec.ts +0 -42
- package/src/lib/ui/color-input/color-input.component.stories.ts +0 -31
- package/src/lib/ui/color-input/color-input.component.ts +0 -78
- package/src/lib/ui/confirmation-dialog/confirmation-dialog.component.html +0 -24
- package/src/lib/ui/confirmation-dialog/confirmation-dialog.component.spec.ts +0 -85
- package/src/lib/ui/confirmation-dialog/confirmation-dialog.component.stories.ts +0 -55
- package/src/lib/ui/confirmation-dialog/confirmation-dialog.component.ts +0 -50
- package/src/lib/ui/confirmation-dialog/dialog-data.enum.ts +0 -4
- package/src/lib/ui/confirmation-dialog/dialog-data.model.ts +0 -15
- package/src/lib/ui/dropdown-from-data/dropdown-from-data.component.html +0 -38
- package/src/lib/ui/dropdown-from-data/dropdown-from-data.component.spec.ts +0 -128
- package/src/lib/ui/dropdown-from-data/dropdown-from-data.component.stories.ts +0 -53
- package/src/lib/ui/dropdown-from-data/dropdown-from-data.component.ts +0 -230
- package/src/lib/ui/enum-radiogroup/enum-radiogroup.component.html +0 -6
- package/src/lib/ui/enum-radiogroup/enum-radiogroup.component.spec.ts +0 -61
- package/src/lib/ui/enum-radiogroup/enum-radiogroup.component.stories.ts +0 -51
- package/src/lib/ui/enum-radiogroup/enum-radiogroup.component.ts +0 -43
- package/src/lib/ui/file-input/file-input.component.html +0 -45
- package/src/lib/ui/file-input/file-input.component.spec.ts +0 -25
- package/src/lib/ui/file-input/file-input.component.stories.ts +0 -48
- package/src/lib/ui/file-input/file-input.component.ts +0 -237
- package/src/lib/ui/flyout/flyout.component.html +0 -43
- package/src/lib/ui/flyout/flyout.component.spec.ts +0 -53
- package/src/lib/ui/flyout/flyout.component.stories.ts +0 -56
- package/src/lib/ui/flyout/flyout.component.ts +0 -87
- package/src/lib/ui/icon/icon.component.html +0 -26
- package/src/lib/ui/icon/icon.component.spec.ts +0 -28
- package/src/lib/ui/icon/icon.component.stories.ts +0 -35
- package/src/lib/ui/icon/icon.component.ts +0 -64
- package/src/lib/ui/icon/iconSize.enum.ts +0 -27
- package/src/lib/ui/image-slider/image-slider.component.html +0 -38
- package/src/lib/ui/image-slider/image-slider.component.spec.ts +0 -105
- package/src/lib/ui/image-slider/image-slider.component.ts +0 -99
- package/src/lib/ui/image-slider/image-slider.stories.ts +0 -31
- package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.html +0 -22
- package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.spec.ts +0 -58
- package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.stories.ts +0 -44
- package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.ts +0 -31
- package/src/lib/ui/loader/loader.component.html +0 -3
- package/src/lib/ui/loader/loader.component.spec.ts +0 -25
- package/src/lib/ui/loader/loader.component.stories.ts +0 -31
- package/src/lib/ui/loader/loader.component.ts +0 -10
- package/src/lib/ui/map/map.component.html +0 -18
- package/src/lib/ui/map/map.component.spec.ts +0 -126
- package/src/lib/ui/map/map.component.ts +0 -145
- package/src/lib/ui/radiobutton/radiobutton.component.html +0 -11
- package/src/lib/ui/radiobutton/radiobutton.component.spec.ts +0 -27
- package/src/lib/ui/radiobutton/radiobutton.component.stories.ts +0 -51
- package/src/lib/ui/radiobutton/radiobutton.component.ts +0 -54
- package/src/lib/ui/salutation-dropdown/salutation-dropdown.component.html +0 -9
- package/src/lib/ui/salutation-dropdown/salutation-dropdown.component.spec.ts +0 -81
- package/src/lib/ui/salutation-dropdown/salutation-dropdown.component.stories.ts +0 -33
- package/src/lib/ui/salutation-dropdown/salutation-dropdown.component.ts +0 -48
- package/src/lib/ui/salutation-radiogroup/salutation-radiogroup.component.html +0 -13
- package/src/lib/ui/salutation-radiogroup/salutation-radiogroup.component.spec.ts +0 -68
- package/src/lib/ui/salutation-radiogroup/salutation-radiogroup.component.stories.ts +0 -25
- package/src/lib/ui/salutation-radiogroup/salutation-radiogroup.component.ts +0 -41
- package/src/lib/ui/slide-toggle/slide-toggle.component.html +0 -21
- package/src/lib/ui/slide-toggle/slide-toggle.component.spec.ts +0 -30
- package/src/lib/ui/slide-toggle/slide-toggle.component.stories.ts +0 -40
- package/src/lib/ui/slide-toggle/slide-toggle.component.ts +0 -70
- package/src/lib/ui/slider/slider.component.html +0 -6
- package/src/lib/ui/slider/slider.component.spec.ts +0 -25
- package/src/lib/ui/slider/slider.component.stories.ts +0 -35
- package/src/lib/ui/slider/slider.component.ts +0 -75
- package/src/lib/ui/time-input/time-input.component.html +0 -27
- package/src/lib/ui/time-input/time-input.component.spec.ts +0 -27
- package/src/lib/ui/time-input/time-input.component.stories.ts +0 -47
- package/src/lib/ui/time-input/time-input.component.ts +0 -114
- package/src/lib/ui/tooltip-icon/tooltip-icon.component.html +0 -18
- package/src/lib/ui/tooltip-icon/tooltip-icon.component.spec.ts +0 -26
- package/src/lib/ui/tooltip-icon/tooltip-icon.component.stories.ts +0 -55
- package/src/lib/ui/tooltip-icon/tooltip-icon.component.ts +0 -27
- package/src/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.html +0 -7
- package/src/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.spec.ts +0 -25
- package/src/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.stories.ts +0 -26
- package/src/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.ts +0 -79
- package/src/test-setup.ts +0 -2
- package/tsconfig.json +0 -39
- package/tsconfig.lib.json +0 -25
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -18
- package/tslint.json +0 -17
- /package/{src/lib/models/index.ts → lib/models/index.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
["alert-outline", "arrow-down", "arrow-left", "arrow-right-left", "arrow-right", "arrow-top", "arrows-left", "calendar", "camera", "cardealer", "checkbox_active", "checkbox_inactive", "checkbox_inner", "checkmark-circle", "checkmark-filled", "chevron-down", "chevron-left", "chevron-right", "chevron-top", "circle", "clock", "close-circle", "close", "cog", "collapse-right", "create", "credit", "diamond", "download", "drag1", "edit-circle", "efficiency", "electro-cable", "ellipse", "end", "export-all", "facebook", "file-download", "file-upload", "floating_button", "floating_button_clear", "ic-invoice", "ic-policy", "ic_GEZ", "ic_abbrechen-filled", "ic_abbrechen", "ic_back", "ic_bereifung", "ic_bezeichnung", "ic_bill", "ic_booking", "ic_cancel_form", "ic_car", "ic_check", "ic_check_form", "ic_co2", "ic_credit-card", "ic_edit", "ic_equipment", "ic_extras", "ic_eye", "ic_eye_active", "ic_filter", "ic_form_error", "ic_form_finished", "ic_gkm", "ic_heart", "ic_heart_filled", "ic_historie", "ic_home", "ic_home_new", "ic_inclusivekm", "ic_info", "ic_kraftstoff", "ic_language", "ic_last", "ic_laufleistung", "ic_left", "ic_lkm-dark", "ic_lkm-gray", "ic_lkm-red", "ic_lkm", "ic_lock", "ic_menu", "ic_minus", "ic_new-car", "ic_pickup", "ic_pin", "ic_plus-circle", "ic_plus", "ic_radiobutton_active", "ic_radiobutton_inactive", "ic_redirect", "ic_return", "ic_schaltung", "ic_settings", "ic_shops", "ic_side_front", "ic_side_front_left", "ic_side_front_left_tire", "ic_side_front_right", "ic_side_front_right_tire", "ic_side_front_zoomed", "ic_side_rear", "ic_side_rear_left", "ic_side_rear_left_tire", "ic_side_rear_right", "ic_side_rear_right_tire", "ic_slider", "ic_spezification", "ic_steuer_versicherung", "ic_tool", "ic_tooltip_drag", "ic_used-car", "ic_vertrag", "ic_wartung_verschleiss", "ic_zulassung", "image", "instagram", "kms-logo-white", "kms-logo", "linkedin", "mail", "map", "mileage", "move-list-left", "move-list-right", "palette", "pdf", "polestar", "position", "price-tag", "profile-filled", "profile", "profile2", "question-circle", "question-filled", "question", "rent", "search", "security", "special_entry", "star-outline", "star", "start", "submenu-dots", "subscription", "support", "trash", "tumblr", "twitter", "tyre", "upload", "user-circle", "users", "water", "whatsapp", "width", "xing", "youtube", "zahlung_active", "zahlungsanforderung"]
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia21zLW5neC11aS1wcmVzZW50YXRpb25hbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import { NgModule } from '@angular/core';
|
|
6
|
+
import { SizeDirective } from './size.directive';
|
|
7
|
+
import { GetMaxHeightDirective } from './sum-of-height.directive';
|
|
8
|
+
import { SwipeDirective } from './swipe.directive';
|
|
9
|
+
import { TimeDirective } from './time.directive';
|
|
10
|
+
import { TooltipDirective } from './tooltip.directive';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class DirectivesModule {
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
14
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DirectivesModule, declarations: [SwipeDirective,
|
|
15
|
+
GetMaxHeightDirective,
|
|
16
|
+
SizeDirective,
|
|
17
|
+
TooltipDirective,
|
|
18
|
+
TimeDirective], imports: [CommonModule], exports: [SwipeDirective,
|
|
19
|
+
GetMaxHeightDirective,
|
|
20
|
+
SizeDirective,
|
|
21
|
+
TooltipDirective,
|
|
22
|
+
TimeDirective] }); }
|
|
23
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DirectivesModule, imports: [CommonModule] }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DirectivesModule, decorators: [{
|
|
26
|
+
type: NgModule,
|
|
27
|
+
args: [{
|
|
28
|
+
declarations: [
|
|
29
|
+
SwipeDirective,
|
|
30
|
+
GetMaxHeightDirective,
|
|
31
|
+
SizeDirective,
|
|
32
|
+
TooltipDirective,
|
|
33
|
+
TimeDirective,
|
|
34
|
+
],
|
|
35
|
+
imports: [CommonModule],
|
|
36
|
+
exports: [
|
|
37
|
+
SwipeDirective,
|
|
38
|
+
GetMaxHeightDirective,
|
|
39
|
+
SizeDirective,
|
|
40
|
+
TooltipDirective,
|
|
41
|
+
TimeDirective,
|
|
42
|
+
],
|
|
43
|
+
}]
|
|
44
|
+
}] });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy9kaXJlY3RpdmVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQW1CdkQsTUFBTSxPQUFPLGdCQUFnQjsrR0FBaEIsZ0JBQWdCO2dIQUFoQixnQkFBZ0IsaUJBZnpCLGNBQWM7WUFDZCxxQkFBcUI7WUFDckIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixhQUFhLGFBRUwsWUFBWSxhQUVwQixjQUFjO1lBQ2QscUJBQXFCO1lBQ3JCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsYUFBYTtnSEFHSixnQkFBZ0IsWUFUakIsWUFBWTs7NEZBU1gsZ0JBQWdCO2tCQWpCNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixhQUFhO3FCQUNkO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QscUJBQXFCO3dCQUNyQixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTtxQkFDZDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTaXplRGlyZWN0aXZlIH0gZnJvbSAnLi9zaXplLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHZXRNYXhIZWlnaHREaXJlY3RpdmUgfSBmcm9tICcuL3N1bS1vZi1oZWlnaHQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFN3aXBlRGlyZWN0aXZlIH0gZnJvbSAnLi9zd2lwZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVGltZURpcmVjdGl2ZSB9IGZyb20gJy4vdGltZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbHRpcC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTd2lwZURpcmVjdGl2ZSxcbiAgICBHZXRNYXhIZWlnaHREaXJlY3RpdmUsXG4gICAgU2l6ZURpcmVjdGl2ZSxcbiAgICBUb29sdGlwRGlyZWN0aXZlLFxuICAgIFRpbWVEaXJlY3RpdmUsXG4gIF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgU3dpcGVEaXJlY3RpdmUsXG4gICAgR2V0TWF4SGVpZ2h0RGlyZWN0aXZlLFxuICAgIFNpemVEaXJlY3RpdmUsXG4gICAgVG9vbHRpcERpcmVjdGl2ZSxcbiAgICBUaW1lRGlyZWN0aXZlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEaXJlY3RpdmVzTW9kdWxlIHtcbiAgU2l6ZURpcmVjdGl2ZTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class SizeDirective {
|
|
4
|
+
constructor(elementRef) {
|
|
5
|
+
this.elementRef = elementRef;
|
|
6
|
+
this.size = '';
|
|
7
|
+
}
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
this.elementRef.nativeElement.style.width = this.size + 'px';
|
|
10
|
+
this.elementRef.nativeElement.style.height = this.size + 'px';
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SizeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
13
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SizeDirective, selector: "[size]", inputs: { size: "size" }, ngImport: i0 }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SizeDirective, decorators: [{
|
|
16
|
+
type: Directive,
|
|
17
|
+
args: [{ selector: '[size]' }]
|
|
18
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { size: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}] } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy9zaXplLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHN0QsTUFBTSxPQUFPLGFBQWE7SUFHdEIsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUZqQyxTQUFJLEdBQVcsRUFBRSxDQUFDO0lBRW1CLENBQUM7SUFFL0MsUUFBUTtRQUNKLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDN0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNsRSxDQUFDOytHQVJRLGFBQWE7bUdBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUU7aUdBRXBCLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW3NpemVdJyB9KVxuZXhwb3J0IGNsYXNzIFNpemVEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpIHNpemU6IHN0cmluZyA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7IH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS53aWR0aCA9IHRoaXMuc2l6ZSArICdweCc7XG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnN0eWxlLmhlaWdodCA9IHRoaXMuc2l6ZSArICdweCc7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
// ng
|
|
5
|
+
import { Directive, EventEmitter, Input, Output, } from '@angular/core';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
/**
|
|
8
|
+
* Directive to calc the height of all inner elements
|
|
9
|
+
*/
|
|
10
|
+
export class GetMaxHeightDirective {
|
|
11
|
+
constructor(el) {
|
|
12
|
+
this.el = el;
|
|
13
|
+
/**
|
|
14
|
+
* CSS class name of the child items (markup elements) that should be checked for their height.
|
|
15
|
+
* This is mandatory.
|
|
16
|
+
*/
|
|
17
|
+
this.cssClassName = '';
|
|
18
|
+
/**
|
|
19
|
+
* Event that will pass the height of the tallest child inside the container.
|
|
20
|
+
* Useful to calculate the target height of containers with different content (like accordion) for animations.
|
|
21
|
+
*/
|
|
22
|
+
this.maxHeightChanged = new EventEmitter();
|
|
23
|
+
/**
|
|
24
|
+
* Event that will pass the complete sum of all height values from each child.
|
|
25
|
+
* Useful to calculate the full target height of a container (like dropdown) for animations.
|
|
26
|
+
*/
|
|
27
|
+
this.sumOfHeight = new EventEmitter();
|
|
28
|
+
}
|
|
29
|
+
ngAfterContentChecked() {
|
|
30
|
+
this.checkHeightOfChildren(this.el.nativeElement, this.cssClassName);
|
|
31
|
+
}
|
|
32
|
+
checkHeightOfChildren(parent, cssClassName) {
|
|
33
|
+
if (!parent) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
// find all the child elements with the selected class name
|
|
37
|
+
const children = parent.getElementsByClassName(cssClassName);
|
|
38
|
+
// failsafe
|
|
39
|
+
if (!children) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
// get all the child elements heights
|
|
43
|
+
const itemHeights = Array.from(children).map((x) => x.getBoundingClientRect().height);
|
|
44
|
+
// failsafe
|
|
45
|
+
if (itemHeights.length === 0) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
// find out the tallest element
|
|
49
|
+
const maxHeight = itemHeights.reduce((prev, curr) => {
|
|
50
|
+
return curr > prev ? curr : prev;
|
|
51
|
+
}, 0);
|
|
52
|
+
// get sum of heights
|
|
53
|
+
const sumOfHeight = itemHeights.reduce((pv, cv) => pv + cv, 0);
|
|
54
|
+
// inform
|
|
55
|
+
this.maxHeightChanged.emit(maxHeight);
|
|
56
|
+
this.sumOfHeight.emit(sumOfHeight);
|
|
57
|
+
}
|
|
58
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GetMaxHeightDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
59
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: { cssClassName: ["getMaxHeight", "cssClassName"] }, outputs: { maxHeightChanged: "maxHeightChanged", sumOfHeight: "sumOfHeight" }, ngImport: i0 }); }
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GetMaxHeightDirective, decorators: [{
|
|
62
|
+
type: Directive,
|
|
63
|
+
args: [{
|
|
64
|
+
selector: '[getMaxHeight]',
|
|
65
|
+
}]
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { cssClassName: [{
|
|
67
|
+
type: Input,
|
|
68
|
+
args: ['getMaxHeight']
|
|
69
|
+
}], maxHeightChanged: [{
|
|
70
|
+
type: Output
|
|
71
|
+
}], sumOfHeight: [{
|
|
72
|
+
type: Output
|
|
73
|
+
}] } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtLW9mLWhlaWdodC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy9zdW0tb2YtaGVpZ2h0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILEtBQUs7QUFDTCxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDOztBQUV2Qjs7R0FFRztBQUlILE1BQU0sT0FBTyxxQkFBcUI7SUFtQmhDLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBbEJsQzs7O1dBR0c7UUFDb0IsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFFekM7OztXQUdHO1FBQ2MscUJBQWdCLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFN0U7OztXQUdHO1FBQ2MsZ0JBQVcsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUVuQyxDQUFDO0lBRXRDLHFCQUFxQjtRQUNuQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxNQUFtQixFQUFFLFlBQW9CO1FBQ3JFLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPO1NBQ1I7UUFFRCwyREFBMkQ7UUFDM0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRTdELFdBQVc7UUFDWCxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsT0FBTztTQUNSO1FBRUQscUNBQXFDO1FBQ3JDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUMxQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixFQUFFLENBQUMsTUFBTSxDQUN4QyxDQUFDO1FBRUYsV0FBVztRQUNYLElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDNUIsT0FBTztTQUNSO1FBRUQsK0JBQStCO1FBQy9CLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDbEQsT0FBTyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNuQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFTixxQkFBcUI7UUFDckIsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFL0QsU0FBUztRQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckMsQ0FBQzsrR0EzRFUscUJBQXFCO21HQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBSGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0I7aUdBTXdCLFlBQVk7c0JBQWxDLEtBQUs7dUJBQUMsY0FBYztnQkFNSixnQkFBZ0I7c0JBQWhDLE1BQU07Z0JBTVUsV0FBVztzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbi8vIG5nXG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIGNhbGMgdGhlIGhlaWdodCBvZiBhbGwgaW5uZXIgZWxlbWVudHNcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2dldE1heEhlaWdodF0nLFxufSlcbmV4cG9ydCBjbGFzcyBHZXRNYXhIZWlnaHREaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRDaGVja2VkIHtcbiAgLyoqXG4gICAqIENTUyBjbGFzcyBuYW1lIG9mIHRoZSBjaGlsZCBpdGVtcyAobWFya3VwIGVsZW1lbnRzKSB0aGF0IHNob3VsZCBiZSBjaGVja2VkIGZvciB0aGVpciBoZWlnaHQuXG4gICAqIFRoaXMgaXMgbWFuZGF0b3J5LlxuICAgKi9cbiAgQElucHV0KCdnZXRNYXhIZWlnaHQnKSBjc3NDbGFzc05hbWUgPSAnJztcblxuICAvKipcbiAgICogRXZlbnQgdGhhdCB3aWxsIHBhc3MgdGhlIGhlaWdodCBvZiB0aGUgdGFsbGVzdCBjaGlsZCBpbnNpZGUgdGhlIGNvbnRhaW5lci5cbiAgICogVXNlZnVsIHRvIGNhbGN1bGF0ZSB0aGUgdGFyZ2V0IGhlaWdodCBvZiBjb250YWluZXJzIHdpdGggZGlmZmVyZW50IGNvbnRlbnQgKGxpa2UgYWNjb3JkaW9uKSBmb3IgYW5pbWF0aW9ucy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbWF4SGVpZ2h0Q2hhbmdlZDogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgd2lsbCBwYXNzIHRoZSBjb21wbGV0ZSBzdW0gb2YgYWxsIGhlaWdodCB2YWx1ZXMgZnJvbSBlYWNoIGNoaWxkLlxuICAgKiBVc2VmdWwgdG8gY2FsY3VsYXRlIHRoZSBmdWxsIHRhcmdldCBoZWlnaHQgb2YgYSBjb250YWluZXIgKGxpa2UgZHJvcGRvd24pIGZvciBhbmltYXRpb25zLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBzdW1PZkhlaWdodDogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikge31cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja0hlaWdodE9mQ2hpbGRyZW4odGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLmNzc0NsYXNzTmFtZSk7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrSGVpZ2h0T2ZDaGlsZHJlbihwYXJlbnQ6IEhUTUxFbGVtZW50LCBjc3NDbGFzc05hbWU6IHN0cmluZykge1xuICAgIGlmICghcGFyZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gZmluZCBhbGwgdGhlIGNoaWxkIGVsZW1lbnRzIHdpdGggdGhlIHNlbGVjdGVkIGNsYXNzIG5hbWVcbiAgICBjb25zdCBjaGlsZHJlbiA9IHBhcmVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGNzc0NsYXNzTmFtZSk7XG5cbiAgICAvLyBmYWlsc2FmZVxuICAgIGlmICghY2hpbGRyZW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBnZXQgYWxsIHRoZSBjaGlsZCBlbGVtZW50cyBoZWlnaHRzXG4gICAgY29uc3QgaXRlbUhlaWdodHMgPSBBcnJheS5mcm9tKGNoaWxkcmVuKS5tYXAoXG4gICAgICAoeCkgPT4geC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHRcbiAgICApO1xuXG4gICAgLy8gZmFpbHNhZmVcbiAgICBpZiAoaXRlbUhlaWdodHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gZmluZCBvdXQgdGhlIHRhbGxlc3QgZWxlbWVudFxuICAgIGNvbnN0IG1heEhlaWdodCA9IGl0ZW1IZWlnaHRzLnJlZHVjZSgocHJldiwgY3VycikgPT4ge1xuICAgICAgcmV0dXJuIGN1cnIgPiBwcmV2ID8gY3VyciA6IHByZXY7XG4gICAgfSwgMCk7XG5cbiAgICAvLyBnZXQgc3VtIG9mIGhlaWdodHNcbiAgICBjb25zdCBzdW1PZkhlaWdodCA9IGl0ZW1IZWlnaHRzLnJlZHVjZSgocHYsIGN2KSA9PiBwdiArIGN2LCAwKTtcblxuICAgIC8vIGluZm9ybVxuICAgIHRoaXMubWF4SGVpZ2h0Q2hhbmdlZC5lbWl0KG1heEhlaWdodCk7XG4gICAgdGhpcy5zdW1PZkhlaWdodC5lbWl0KHN1bU9mSGVpZ2h0KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
import { Directive, EventEmitter, HostListener, Input, Output, } from '@angular/core';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class SwipeDirective {
|
|
7
|
+
constructor() {
|
|
8
|
+
/**
|
|
9
|
+
* Output Event that is emitted during swipe process (mouse move or touch move event).
|
|
10
|
+
* Can be used for calculation purposes.
|
|
11
|
+
*/
|
|
12
|
+
this.moveEvent = new EventEmitter();
|
|
13
|
+
/**
|
|
14
|
+
* Output Event that is emitted when swipe process end (mouse up or touch end event).
|
|
15
|
+
* Can be used for calculation purposes.
|
|
16
|
+
*/
|
|
17
|
+
this.releaseEvent = new EventEmitter();
|
|
18
|
+
this._startPosition = -1;
|
|
19
|
+
this._lastPosX = 0;
|
|
20
|
+
this._thresholdWasReached = false;
|
|
21
|
+
this._timeStart = 0;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Needed config that defines swipe behaviour.
|
|
25
|
+
* @param options SwipeOptions
|
|
26
|
+
*/
|
|
27
|
+
set config(options) {
|
|
28
|
+
if (options) {
|
|
29
|
+
this._swipeOptions = options;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
onMouseDown(event) {
|
|
33
|
+
this.calculateStartPosition(event);
|
|
34
|
+
}
|
|
35
|
+
onMove(event) {
|
|
36
|
+
this.move(event);
|
|
37
|
+
}
|
|
38
|
+
onRelease(event) {
|
|
39
|
+
this.release(event);
|
|
40
|
+
this.reset();
|
|
41
|
+
}
|
|
42
|
+
// ** PRIVATE ** //
|
|
43
|
+
/**
|
|
44
|
+
* Function checks if the current moving delta is inside the defined threshold.
|
|
45
|
+
* Sets the flag to true if the threshold was reached once.
|
|
46
|
+
*/
|
|
47
|
+
checkThreshold(moveEvent) {
|
|
48
|
+
const percentage = this._swipeOptions && this._swipeOptions.swipeThresholdType === '%';
|
|
49
|
+
if (!percentage &&
|
|
50
|
+
this._swipeOptions &&
|
|
51
|
+
moveEvent.swipeDistanceTotal < this._swipeOptions.swipeThreshold) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
else if (percentage &&
|
|
55
|
+
this._swipeOptions &&
|
|
56
|
+
moveEvent.swipeDistancePercentage <
|
|
57
|
+
this._swipeOptions.swipeThreshold / 100) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
this._thresholdWasReached = true;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
calculateStartPosition(event) {
|
|
65
|
+
// detect if touch or click
|
|
66
|
+
this._isMobile = event.type === 'touchstart';
|
|
67
|
+
// save start position
|
|
68
|
+
if (this._swipeOptions && this._swipeOptions.swipeLocalPosition) {
|
|
69
|
+
if (this._isMobile) {
|
|
70
|
+
const touch = event.touches[0];
|
|
71
|
+
this._startPosition = this._swipeOptions.swipeLocalPosition
|
|
72
|
+
? touch.clientX
|
|
73
|
+
: touch.pageX;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
this._startPosition = this._swipeOptions.swipeLocalPosition
|
|
77
|
+
? event.offsetX
|
|
78
|
+
: event.pageX;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
this._lastPosX = this._startPosition;
|
|
82
|
+
this._timeStart = event.timeStamp;
|
|
83
|
+
this._thresholdWasReached = false;
|
|
84
|
+
}
|
|
85
|
+
move(event) {
|
|
86
|
+
// failsafe
|
|
87
|
+
if (typeof event === 'undefined') {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
let posX = 0;
|
|
91
|
+
if (this._swipeOptions) {
|
|
92
|
+
if (this._isMobile && event.type === 'touchmove') {
|
|
93
|
+
const touch = event.touches[0];
|
|
94
|
+
posX = this._swipeOptions.swipeLocalPosition
|
|
95
|
+
? touch.clientX
|
|
96
|
+
: touch.pageX;
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
posX = this._swipeOptions.swipeLocalPosition
|
|
100
|
+
? event.offsetX
|
|
101
|
+
: event.pageX;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
const offsetPerFrame = posX - this._lastPosX;
|
|
105
|
+
const swipeDistanceTotal = Math.abs(posX - this._startPosition);
|
|
106
|
+
const swipeDistancePercentage = Math.abs(swipeDistanceTotal / event.target.clientWidth);
|
|
107
|
+
const timeDuration = Math.abs(event.timeStamp - this._timeStart);
|
|
108
|
+
let direction;
|
|
109
|
+
let speed = 1 - swipeDistanceTotal / timeDuration;
|
|
110
|
+
speed = Math.max(0.1, speed);
|
|
111
|
+
if (posX - this._startPosition > 0) {
|
|
112
|
+
direction = 1; // a.k.a LTR
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
direction = -1; // a.k.a RTL
|
|
116
|
+
}
|
|
117
|
+
this._moveEventData = {
|
|
118
|
+
position: posX,
|
|
119
|
+
offsetPerFrame: offsetPerFrame,
|
|
120
|
+
swipeDistanceTotal: swipeDistanceTotal,
|
|
121
|
+
swipeDistancePercentage: swipeDistancePercentage,
|
|
122
|
+
direction: direction,
|
|
123
|
+
speed: speed,
|
|
124
|
+
thresholdWasReached: this._thresholdWasReached,
|
|
125
|
+
};
|
|
126
|
+
this.checkThreshold(this._moveEventData);
|
|
127
|
+
// update move delta
|
|
128
|
+
this._lastPosX = posX;
|
|
129
|
+
// inform
|
|
130
|
+
this.moveEvent.emit(this._moveEventData);
|
|
131
|
+
}
|
|
132
|
+
release(event) {
|
|
133
|
+
// case: just a click/touch
|
|
134
|
+
if (!this._moveEventData) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
const releaseEventData = {
|
|
138
|
+
thresholdWasReached: this._thresholdWasReached,
|
|
139
|
+
direction: this._moveEventData.direction,
|
|
140
|
+
speed: this._moveEventData.speed,
|
|
141
|
+
easingType: this.getEasingCurve(this._moveEventData.speed),
|
|
142
|
+
target: event.currentTarget,
|
|
143
|
+
};
|
|
144
|
+
// inform
|
|
145
|
+
this.releaseEvent.emit(releaseEventData);
|
|
146
|
+
}
|
|
147
|
+
getEasingCurve(speed) {
|
|
148
|
+
return speed > 0.5 ? 'ease-in' : 'ease-out';
|
|
149
|
+
}
|
|
150
|
+
reset() {
|
|
151
|
+
this._startPosition = -1;
|
|
152
|
+
this._thresholdWasReached = false;
|
|
153
|
+
if (this._moveEventData) {
|
|
154
|
+
this._moveEventData = undefined;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SwipeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
158
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SwipeDirective, selector: "[swipeDirective]", inputs: { config: ["swipeDirective", "config"] }, outputs: { moveEvent: "moveEvent", releaseEvent: "releaseEvent" }, host: { listeners: { "mousedown": "onMouseDown($event)", "touchstart": "onMouseDown($event)", "mousemove": "onMove($event)", "touchmove": "onMove($event)", "mouseup": "onRelease($event)", "mouseleave": "onRelease($event)", "touchend": "onRelease($event)" } }, ngImport: i0 }); }
|
|
159
|
+
}
|
|
160
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SwipeDirective, decorators: [{
|
|
161
|
+
type: Directive,
|
|
162
|
+
args: [{
|
|
163
|
+
selector: '[swipeDirective]',
|
|
164
|
+
}]
|
|
165
|
+
}], propDecorators: { moveEvent: [{
|
|
166
|
+
type: Output
|
|
167
|
+
}], releaseEvent: [{
|
|
168
|
+
type: Output
|
|
169
|
+
}], config: [{
|
|
170
|
+
type: Input,
|
|
171
|
+
args: ['swipeDirective']
|
|
172
|
+
}], onMouseDown: [{
|
|
173
|
+
type: HostListener,
|
|
174
|
+
args: ['mousedown', ['$event']]
|
|
175
|
+
}, {
|
|
176
|
+
type: HostListener,
|
|
177
|
+
args: ['touchstart', ['$event']]
|
|
178
|
+
}], onMove: [{
|
|
179
|
+
type: HostListener,
|
|
180
|
+
args: ['mousemove', ['$event']]
|
|
181
|
+
}, {
|
|
182
|
+
type: HostListener,
|
|
183
|
+
args: ['touchmove', ['$event']]
|
|
184
|
+
}], onRelease: [{
|
|
185
|
+
type: HostListener,
|
|
186
|
+
args: ['mouseup', ['$event']]
|
|
187
|
+
}, {
|
|
188
|
+
type: HostListener,
|
|
189
|
+
args: ['mouseleave', ['$event']]
|
|
190
|
+
}, {
|
|
191
|
+
type: HostListener,
|
|
192
|
+
args: ['touchend', ['$event']]
|
|
193
|
+
}] } });
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL2RpcmVjdGl2ZXMvc3dpcGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7O0FBT3ZCLE1BQU0sT0FBTyxjQUFjO0lBSDNCO1FBSUU7OztXQUdHO1FBQ2MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRWhFOzs7V0FHRztRQUNjLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7UUFLOUQsbUJBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUVwQixjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBRWQseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBSTdCLGVBQVUsR0FBRyxDQUFDLENBQUM7S0E2S3hCO0lBM0tDOzs7T0FHRztJQUNILElBQ0ksTUFBTSxDQUFDLE9BQXFCO1FBQzlCLElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBSUQsV0FBVyxDQUFDLEtBQVU7UUFDcEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFJRCxNQUFNLENBQUMsS0FBVTtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUtELFNBQVMsQ0FBQyxLQUFVO1FBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2YsQ0FBQztJQUVELG1CQUFtQjtJQUVuQjs7O09B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O3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ2xDLFlBQVk7dUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDckMsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3dpcGVNb3ZlRXZlbnQsIFN3aXBlT3B0aW9ucywgU3dpcGVSZWxlYXNlRXZlbnQgfSBmcm9tICcuL3N3aXBlLm1vZGVsJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3N3aXBlRGlyZWN0aXZlXScsXG59KVxuZXhwb3J0IGNsYXNzIFN3aXBlRGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIE91dHB1dCBFdmVudCB0aGF0IGlzIGVtaXR0ZWQgZHVyaW5nIHN3aXBlIHByb2Nlc3MgKG1vdXNlIG1vdmUgb3IgdG91Y2ggbW92ZSBldmVudCkuXG4gICAqIENhbiBiZSB1c2VkIGZvciBjYWxjdWxhdGlvbiBwdXJwb3Nlcy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW92ZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxTd2lwZU1vdmVFdmVudD4oKTtcblxuICAvKipcbiAgICogT3V0cHV0IEV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuIHN3aXBlIHByb2Nlc3MgZW5kIChtb3VzZSB1cCBvciB0b3VjaCBlbmQgZXZlbnQpLlxuICAgKiBDYW4gYmUgdXNlZCBmb3IgY2FsY3VsYXRpb24gcHVycG9zZXMuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlbGVhc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8U3dpcGVSZWxlYXNlRXZlbnQ+KCk7XG5cbiAgcHJpdmF0ZSBfc3dpcGVPcHRpb25zOiBTd2lwZU9wdGlvbnMgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfbW92ZUV2ZW50RGF0YTogU3dpcGVNb3ZlRXZlbnQgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX3N0YXJ0UG9zaXRpb24gPSAtMTtcblxuICBwcml2YXRlIF9sYXN0UG9zWCA9IDA7XG5cbiAgcHJpdmF0ZSBfdGhyZXNob2xkV2FzUmVhY2hlZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2lzTW9iaWxlOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgX3RpbWVTdGFydCA9IDA7XG5cbiAgLyoqXG4gICAqIE5lZWRlZCBjb25maWcgdGhhdCBkZWZpbmVzIHN3aXBlIGJlaGF2aW91ci5cbiAgICogQHBhcmFtIG9wdGlvbnMgU3dpcGVPcHRpb25zXG4gICAqL1xuICBASW5wdXQoJ3N3aXBlRGlyZWN0aXZlJylcbiAgc2V0IGNvbmZpZyhvcHRpb25zOiBTd2lwZU9wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgdGhpcy5fc3dpcGVPcHRpb25zID0gb3B0aW9ucztcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgWyckZXZlbnQnXSlcbiAgb25Nb3VzZURvd24oZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuY2FsY3VsYXRlU3RhcnRQb3NpdGlvbihldmVudCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZW1vdmUnLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCd0b3VjaG1vdmUnLCBbJyRldmVudCddKVxuICBvbk1vdmUoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMubW92ZShldmVudCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZXVwJywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScsIFsnJGV2ZW50J10pXG4gIEBIb3N0TGlzdGVuZXIoJ3RvdWNoZW5kJywgWyckZXZlbnQnXSlcbiAgb25SZWxlYXNlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnJlbGVhc2UoZXZlbnQpO1xuICAgIHRoaXMucmVzZXQoKTtcbiAgfVxuXG4gIC8vICoqIFBSSVZBVEUgKiogLy9cblxuICAvKipcbiAgICogRnVuY3Rpb24gY2hlY2tzIGlmIHRoZSBjdXJyZW50IG1vdmluZyBkZWx0YSBpcyBpbnNpZGUgdGhlIGRlZmluZWQgdGhyZXNob2xkLlxuICAgKiBTZXRzIHRoZSBmbGFnIHRvIHRydWUgaWYgdGhlIHRocmVzaG9sZCB3YXMgcmVhY2hlZCBvbmNlLlxuICAgKi9cbiAgcHJpdmF0ZSBjaGVja1RocmVzaG9sZChtb3ZlRXZlbnQ6IFN3aXBlTW92ZUV2ZW50KSB7XG4gICAgY29uc3QgcGVyY2VudGFnZSA9XG4gICAgICB0aGlzLl9zd2lwZU9wdGlvbnMgJiYgdGhpcy5fc3dpcGVPcHRpb25zLnN3aXBlVGhyZXNob2xkVHlwZSA9PT0gJyUnO1xuXG4gICAgaWYgKFxuICAgICAgIXBlcmNlbnRhZ2UgJiZcbiAgICAgIHRoaXMuX3N3aXBlT3B0aW9ucyAmJlxuICAgICAgbW92ZUV2ZW50LnN3aXBlRGlzdGFuY2VUb3RhbCA8IHRoaXMuX3N3aXBlT3B0aW9ucy5zd2lwZVRocmVzaG9sZFxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBwZXJjZW50YWdlICYmXG4gICAgICB0aGlzLl9zd2lwZU9wdGlvbnMgJiZcbiAgICAgIG1vdmVFdmVudC5zd2lwZURpc3RhbmNlUGVyY2VudGFnZSA8XG4gICAgICAgIHRoaXMuX3N3aXBlT3B0aW9ucy5zd2lwZVRocmVzaG9sZCAvIDEwMFxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl90aHJlc2hvbGRXYXNSZWFjaGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZVN0YXJ0UG9zaXRpb24oZXZlbnQ/OiBhbnkpIHtcbiAgICAvLyBkZXRlY3QgaWYgdG91Y2ggb3IgY2xpY2tcbiAgICB0aGlzLl9pc01vYmlsZSA9IGV2ZW50LnR5cGUgPT09ICd0b3VjaHN0YXJ0JztcblxuICAgIC8vIHNhdmUgc3RhcnQgcG9zaXRpb25cblxuICAgIGlmICh0aGlzLl9zd2lwZU9wdGlvbnMgJiYgdGhpcy5fc3dpcGVPcHRpb25zLnN3aXBlTG9jYWxQb3NpdGlvbikge1xuICAgICAgaWYgKHRoaXMuX2lzTW9iaWxlKSB7XG4gICAgICAgIGNvbnN0IHRvdWNoOiBUb3VjaCA9IGV2ZW50LnRvdWNoZXNbMF07XG4gICAgICAgIHRoaXMuX3N0YXJ0UG9zaXRpb24gPSB0aGlzLl9zd2lwZU9wdGlvbnMuc3dpcGVMb2NhbFBvc2l0aW9uXG4gICAgICAgICAgPyB0b3VjaC5jbGllbnRYXG4gICAgICAgICAgOiB0b3VjaC5wYWdlWDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuX3N0YXJ0UG9zaXRpb24gPSB0aGlzLl9zd2lwZU9wdGlvbnMuc3dpcGVMb2NhbFBvc2l0aW9uXG4gICAgICAgICAgPyBldmVudC5vZmZzZXRYXG4gICAgICAgICAgOiBldmVudC5wYWdlWDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLl9sYXN0UG9zWCA9IHRoaXMuX3N0YXJ0UG9zaXRpb247XG4gICAgdGhpcy5fdGltZVN0YXJ0ID0gZXZlbnQudGltZVN0YW1wO1xuICAgIHRoaXMuX3RocmVzaG9sZFdhc1JlYWNoZWQgPSBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgbW92ZShldmVudDogYW55KSB7XG4gICAgLy8gZmFpbHNhZmVcbiAgICBpZiAodHlwZW9mIGV2ZW50ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBwb3NYID0gMDtcblxuICAgIGlmICh0aGlzLl9zd2lwZU9wdGlvbnMpIHtcbiAgICAgIGlmICh0aGlzLl9pc01vYmlsZSAmJiBldmVudC50eXBlID09PSAndG91Y2htb3ZlJykge1xuICAgICAgICBjb25zdCB0b3VjaDogVG91Y2ggPSBldmVudC50b3VjaGVzWzBdO1xuICAgICAgICBwb3NYID0gdGhpcy5fc3dpcGVPcHRpb25zLnN3aXBlTG9jYWxQb3NpdGlvblxuICAgICAgICAgID8gdG91Y2guY2xpZW50WFxuICAgICAgICAgIDogdG91Y2gucGFnZVg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwb3NYID0gdGhpcy5fc3dpcGVPcHRpb25zLnN3aXBlTG9jYWxQb3NpdGlvblxuICAgICAgICAgID8gZXZlbnQub2Zmc2V0WFxuICAgICAgICAgIDogZXZlbnQucGFnZVg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgb2Zmc2V0UGVyRnJhbWU6IG51bWJlciA9IHBvc1ggLSB0aGlzLl9sYXN0UG9zWDtcbiAgICBjb25zdCBzd2lwZURpc3RhbmNlVG90YWw6IG51bWJlciA9IE1hdGguYWJzKHBvc1ggLSB0aGlzLl9zdGFydFBvc2l0aW9uKTtcbiAgICBjb25zdCBzd2lwZURpc3RhbmNlUGVyY2VudGFnZTogbnVtYmVyID0gTWF0aC5hYnMoXG4gICAgICBzd2lwZURpc3RhbmNlVG90YWwgLyBldmVudC50YXJnZXQuY2xpZW50V2lkdGhcbiAgICApO1xuICAgIGNvbnN0IHRpbWVEdXJhdGlvbjogbnVtYmVyID0gTWF0aC5hYnMoZXZlbnQudGltZVN0YW1wIC0gdGhpcy5fdGltZVN0YXJ0KTtcblxuICAgIGxldCBkaXJlY3Rpb246IG51bWJlcjtcbiAgICBsZXQgc3BlZWQ6IG51bWJlciA9IDEgLSBzd2lwZURpc3RhbmNlVG90YWwgLyB0aW1lRHVyYXRpb247XG4gICAgc3BlZWQgPSBNYXRoLm1heCgwLjEsIHNwZWVkKTtcblxuICAgIGlmIChwb3NYIC0gdGhpcy5fc3RhcnRQb3NpdGlvbiA+IDApIHtcbiAgICAgIGRpcmVjdGlvbiA9IDE7IC8vIGEuay5hIExUUlxuICAgIH0gZWxzZSB7XG4gICAgICBkaXJlY3Rpb24gPSAtMTsgLy8gYS5rLmEgUlRMXG4gICAgfVxuXG4gICAgdGhpcy5fbW92ZUV2ZW50RGF0YSA9IHtcbiAgICAgIHBvc2l0aW9uOiBwb3NYLFxuICAgICAgb2Zmc2V0UGVyRnJhbWU6IG9mZnNldFBlckZyYW1lLFxuICAgICAgc3dpcGVEaXN0YW5jZVRvdGFsOiBzd2lwZURpc3RhbmNlVG90YWwsXG4gICAgICBzd2lwZURpc3RhbmNlUGVyY2VudGFnZTogc3dpcGVEaXN0YW5jZVBlcmNlbnRhZ2UsXG4gICAgICBkaXJlY3Rpb246IGRpcmVjdGlvbixcbiAgICAgIHNwZWVkOiBzcGVlZCxcbiAgICAgIHRocmVzaG9sZFdhc1JlYWNoZWQ6IHRoaXMuX3RocmVzaG9sZFdhc1JlYWNoZWQsXG4gICAgfTtcblxuICAgIHRoaXMuY2hlY2tUaHJlc2hvbGQodGhpcy5fbW92ZUV2ZW50RGF0YSk7XG5cbiAgICAvLyB1cGRhdGUgbW92ZSBkZWx0YVxuICAgIHRoaXMuX2xhc3RQb3NYID0gcG9zWDtcblxuICAgIC8vIGluZm9ybVxuICAgIHRoaXMubW92ZUV2ZW50LmVtaXQodGhpcy5fbW92ZUV2ZW50RGF0YSk7XG4gIH1cblxuICBwcml2YXRlIHJlbGVhc2UoZXZlbnQ6IGFueSkge1xuICAgIC8vIGNhc2U6IGp1c3QgYSBjbGljay90b3VjaFxuXG4gICAgaWYgKCF0aGlzLl9tb3ZlRXZlbnREYXRhKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcmVsZWFzZUV2ZW50RGF0YTogU3dpcGVSZWxlYXNlRXZlbnQgPSB7XG4gICAgICB0aHJlc2hvbGRXYXNSZWFjaGVkOiB0aGlzLl90aHJlc2hvbGRXYXNSZWFjaGVkLFxuICAgICAgZGlyZWN0aW9uOiB0aGlzLl9tb3ZlRXZlbnREYXRhLmRpcmVjdGlvbixcbiAgICAgIHNwZWVkOiB0aGlzLl9tb3ZlRXZlbnREYXRhLnNwZWVkLFxuICAgICAgZWFzaW5nVHlwZTogdGhpcy5nZXRFYXNpbmdDdXJ2ZSh0aGlzLl9tb3ZlRXZlbnREYXRhLnNwZWVkKSxcbiAgICAgIHRhcmdldDogZXZlbnQuY3VycmVudFRhcmdldCxcbiAgICB9O1xuXG4gICAgLy8gaW5mb3JtXG4gICAgdGhpcy5yZWxlYXNlRXZlbnQuZW1pdChyZWxlYXNlRXZlbnREYXRhKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RWFzaW5nQ3VydmUoc3BlZWQ6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHNwZWVkID4gMC41ID8gJ2Vhc2UtaW4nIDogJ2Vhc2Utb3V0JztcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXQoKSB7XG4gICAgdGhpcy5fc3RhcnRQb3NpdGlvbiA9IC0xO1xuICAgIHRoaXMuX3RocmVzaG9sZFdhc1JlYWNoZWQgPSBmYWxzZTtcblxuICAgIGlmICh0aGlzLl9tb3ZlRXZlbnREYXRhKSB7XG4gICAgICB0aGlzLl9tb3ZlRXZlbnREYXRhID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @copyright KMS GmbH
|
|
3
|
+
*/
|
|
4
|
+
export {};
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGUubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy9zd2lwZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbi8qKlxuICogSW5wdXQgYmVoYXZpb3VyIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTd2lwZU9wdGlvbnMge1xuICAvKipcbiAgICogVmFsdWUgZm9yIHRoZSBzd2lwZVRocmVzaG9sZFR5cGUuXG4gICAqIEV4YW1wbGU6IDUwMHB4IG9yIDEwJSAoZGVwZW5kcyBvbiBzd2lwZVRocmVzaG9sZFR5cGUpXG4gICAqL1xuICBzd2lwZVRocmVzaG9sZDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBbGxvd2VkIHZhbHVlczogJyUnIG9yICdweCdcbiAgICogRGVmaW5lcyB0b2dldGhlciB3aXRoIHRoZSB2YWx1ZSBvZiBzd2lwZVRocmVzaG9sZCB0aGUgd2F5IGhvdyB0aGUgdGhyZXNob2xkIGlzIGNhbGN1bGF0ZWQ6XG4gICAqIElmIGEgY2VydGFpbiBhbW91bnQgb2YgcGl4ZWxzIG9yIGEgcGVyY2VudGFnZSBvZiB0aGUgcGFyZW50IGNvbnRhaW5lciB3YXMgcGFzc2VkLlxuICAgKiBQdXJwb3NlOlxuICAgKiBUaHJlc2hvbGQgY2FuIGJlIHVzZWQgdG8gZGVmaW5lIGlmIHN0aC4gc2hvdWxkIGhhcHBlbiB3aGVuIHRoZSB1c2VyIG92ZXIgc3dpcGVzIHRoZSBnaXZlbiB2YWx1ZXMsXG4gICAqIGZvciBpbnN0YW5jZSBza2lwIHRvIG5leHQgc2xpZGUuXG4gICAqL1xuICBzd2lwZVRocmVzaG9sZFR5cGU6IHN0cmluZztcblxuICAvKipcbiAgICogbm90ZTogRGVmaW5lcyBpZiB0aGUgbG9jYWwgcG9zaXRpb24gb2YgdGhlIGVsZW1lbnQgc2hvdWxkIGJlIHVzZWQgZm9yIGNhbGN1bGF0aW9uIG9yIHRoZSBnbG9iYWwuXG4gICAqIEZvciBhIHNsaWRlciB0aGUgZ2xvYmFsIGlzIG5lZWRlZC5cbiAgICovXG4gIHN3aXBlTG9jYWxQb3NpdGlvbjogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBTd2lwZSBtb3ZlIGV2ZW50IGluZm9ybWF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3dpcGVNb3ZlRXZlbnQge1xuICBwb3NpdGlvbjogbnVtYmVyO1xuICBvZmZzZXRQZXJGcmFtZTogbnVtYmVyO1xuICBzd2lwZURpc3RhbmNlVG90YWw6IG51bWJlcjtcbiAgc3dpcGVEaXN0YW5jZVBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgZGlyZWN0aW9uOiBudW1iZXI7XG4gIHNwZWVkOiBudW1iZXI7XG4gIHRocmVzaG9sZFdhc1JlYWNoZWQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogU3dpcGUgcmVsZWFzZSBldmVudCBpbmZvcm1hdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN3aXBlUmVsZWFzZUV2ZW50IHtcbiAgdGhyZXNob2xkV2FzUmVhY2hlZDogYm9vbGVhbjtcbiAgZGlyZWN0aW9uOiBudW1iZXI7XG4gIHNwZWVkOiBudW1iZXI7XG4gIGVhc2luZ1R5cGU6IHN0cmluZztcblxuICB0YXJnZXQ6IGFueTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Directive, HostListener } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class TimeDirective {
|
|
4
|
+
constructor(el) {
|
|
5
|
+
this.el = el;
|
|
6
|
+
}
|
|
7
|
+
onInputChange(event) {
|
|
8
|
+
this.handleInput(event);
|
|
9
|
+
}
|
|
10
|
+
onBeforeInput(event) {
|
|
11
|
+
if (event.inputType === 'insertFromPaste' ||
|
|
12
|
+
event.inputType === 'insertText') {
|
|
13
|
+
const isAllTextHighlighted = event.target.selectionStart === 0 &&
|
|
14
|
+
event.target.selectionEnd === 5;
|
|
15
|
+
const textReachedMax = event.target.value.length > 4;
|
|
16
|
+
const isNotANumber = isNaN(+event.data);
|
|
17
|
+
if (isNotANumber || (textReachedMax && !isAllTextHighlighted)) {
|
|
18
|
+
event.preventDefault();
|
|
19
|
+
}
|
|
20
|
+
this.handleInput(event);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
handleInput(event) {
|
|
24
|
+
const inputElement = this.el.nativeElement;
|
|
25
|
+
const originalValue = inputElement.value;
|
|
26
|
+
if (originalValue.length === 2 && event.inputType === 'insertText') {
|
|
27
|
+
inputElement.value += ':';
|
|
28
|
+
inputElement.dispatchEvent(new Event('input'));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
32
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TimeDirective, selector: "[kmsTime]", host: { listeners: { "input": "onInputChange($event)", "beforeinput": "onBeforeInput($event)" } }, ngImport: i0 }); }
|
|
33
|
+
}
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimeDirective, decorators: [{
|
|
35
|
+
type: Directive,
|
|
36
|
+
args: [{
|
|
37
|
+
selector: '[kmsTime]',
|
|
38
|
+
}]
|
|
39
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { onInputChange: [{
|
|
40
|
+
type: HostListener,
|
|
41
|
+
args: ['input', ['$event']]
|
|
42
|
+
}], onBeforeInput: [{
|
|
43
|
+
type: HostListener,
|
|
44
|
+
args: ['beforeinput', ['$event']]
|
|
45
|
+
}] } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy90aW1lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLcEUsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7SUFBRyxDQUFDO0lBRUgsYUFBYSxDQUFDLEtBQWlCO1FBQ2hFLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUV3QyxhQUFhLENBQUMsS0FBaUI7UUFDdEUsSUFDRSxLQUFLLENBQUMsU0FBUyxLQUFLLGlCQUFpQjtZQUNyQyxLQUFLLENBQUMsU0FBUyxLQUFLLFlBQVksRUFDaEM7WUFDQSxNQUFNLG9CQUFvQixHQUN2QixLQUFLLENBQUMsTUFBMkIsQ0FBQyxjQUFjLEtBQUssQ0FBQztnQkFDdEQsS0FBSyxDQUFDLE1BQTJCLENBQUMsWUFBWSxLQUFLLENBQUMsQ0FBQztZQUN4RCxNQUFNLGNBQWMsR0FDakIsS0FBSyxDQUFDLE1BQTJCLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDdEQsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXhDLElBQUksWUFBWSxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsb0JBQW9CLENBQUMsRUFBRTtnQkFDN0QsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQ3hCO1lBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFTSxXQUFXLENBQUMsS0FBaUI7UUFDbEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFpQyxDQUFDO1FBQy9ELE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFFekMsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsU0FBUyxLQUFLLFlBQVksRUFBRTtZQUNsRSxZQUFZLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQztZQUMxQixZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDaEQ7SUFDSCxDQUFDOytHQWxDVSxhQUFhO21HQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBSHpCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCO2lHQUlvQyxhQUFhO3NCQUEvQyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFJUSxhQUFhO3NCQUFyRCxZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1trbXNUaW1lXScsXG59KVxuZXhwb3J0IGNsYXNzIFRpbWVEaXJlY3RpdmUge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQnXSkgb25JbnB1dENoYW5nZShldmVudDogSW5wdXRFdmVudCkge1xuICAgIHRoaXMuaGFuZGxlSW5wdXQoZXZlbnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignYmVmb3JlaW5wdXQnLCBbJyRldmVudCddKSBvbkJlZm9yZUlucHV0KGV2ZW50OiBJbnB1dEV2ZW50KSB7XG4gICAgaWYgKFxuICAgICAgZXZlbnQuaW5wdXRUeXBlID09PSAnaW5zZXJ0RnJvbVBhc3RlJyB8fFxuICAgICAgZXZlbnQuaW5wdXRUeXBlID09PSAnaW5zZXJ0VGV4dCdcbiAgICApIHtcbiAgICAgIGNvbnN0IGlzQWxsVGV4dEhpZ2hsaWdodGVkID1cbiAgICAgICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5zZWxlY3Rpb25TdGFydCA9PT0gMCAmJlxuICAgICAgICAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnNlbGVjdGlvbkVuZCA9PT0gNTtcbiAgICAgIGNvbnN0IHRleHRSZWFjaGVkTWF4ID1cbiAgICAgICAgKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZS5sZW5ndGggPiA0O1xuICAgICAgY29uc3QgaXNOb3RBTnVtYmVyID0gaXNOYU4oK2V2ZW50LmRhdGEpO1xuXG4gICAgICBpZiAoaXNOb3RBTnVtYmVyIHx8ICh0ZXh0UmVhY2hlZE1heCAmJiAhaXNBbGxUZXh0SGlnaGxpZ2h0ZWQpKSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgICB0aGlzLmhhbmRsZUlucHV0KGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlSW5wdXQoZXZlbnQ6IElucHV0RXZlbnQpIHtcbiAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBjb25zdCBvcmlnaW5hbFZhbHVlID0gaW5wdXRFbGVtZW50LnZhbHVlO1xuXG4gICAgaWYgKG9yaWdpbmFsVmFsdWUubGVuZ3RoID09PSAyICYmIGV2ZW50LmlucHV0VHlwZSA9PT0gJ2luc2VydFRleHQnKSB7XG4gICAgICBpbnB1dEVsZW1lbnQudmFsdWUgKz0gJzonO1xuICAgICAgaW5wdXRFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdpbnB1dCcpKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { Directive, HostListener, Input, } from '@angular/core';
|
|
2
|
+
import { computePosition, arrow, autoUpdate, offset, shift, flip, } from '@floating-ui/dom';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class TooltipDirective {
|
|
5
|
+
onMouseOver() {
|
|
6
|
+
if (this.alwaysVisible)
|
|
7
|
+
return;
|
|
8
|
+
this.showTimeout = setTimeout(() => {
|
|
9
|
+
this.renderer.addClass(this.kmsTooltip, 'kms-tooltip--show');
|
|
10
|
+
}, this.delay);
|
|
11
|
+
}
|
|
12
|
+
onMouseOut() {
|
|
13
|
+
if (this.alwaysVisible)
|
|
14
|
+
return;
|
|
15
|
+
clearTimeout(this.showTimeout);
|
|
16
|
+
this.renderer.removeClass(this.kmsTooltip, 'kms-tooltip--show');
|
|
17
|
+
}
|
|
18
|
+
constructor(elementRef, renderer) {
|
|
19
|
+
this.elementRef = elementRef;
|
|
20
|
+
this.renderer = renderer;
|
|
21
|
+
this.placement = 'bottom';
|
|
22
|
+
this.delay = 0;
|
|
23
|
+
this.alwaysVisible = false;
|
|
24
|
+
}
|
|
25
|
+
ngAfterViewInit() {
|
|
26
|
+
this.renderer.addClass(this.kmsTooltip, 'kms-tooltip');
|
|
27
|
+
this.addArrow();
|
|
28
|
+
this.initTooltip();
|
|
29
|
+
}
|
|
30
|
+
ngOnChanges(changes) {
|
|
31
|
+
if (changes.alwaysVisible.currentValue) {
|
|
32
|
+
this.renderer.addClass(this.kmsTooltip, 'kms-tooltip--show');
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
this.renderer.removeClass(this.kmsTooltip, 'kms-tooltip--show');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
initTooltip() {
|
|
39
|
+
autoUpdate(this.elementRef.nativeElement, this.kmsTooltip, () => {
|
|
40
|
+
const arrowLength = this.arrow.offsetWidth;
|
|
41
|
+
// Get half the arrow box's hypotenuse length
|
|
42
|
+
const floatingOffset = Math.sqrt(2 * arrowLength ** 2) / 2;
|
|
43
|
+
computePosition(this.elementRef.nativeElement, this.kmsTooltip, {
|
|
44
|
+
placement: this.placement,
|
|
45
|
+
middleware: [
|
|
46
|
+
shift(),
|
|
47
|
+
offset(floatingOffset),
|
|
48
|
+
arrow({ element: this.arrow }),
|
|
49
|
+
flip(),
|
|
50
|
+
],
|
|
51
|
+
}).then(({ x, y, middlewareData, placement }) => {
|
|
52
|
+
this.positionTooltip(x, y);
|
|
53
|
+
if (middlewareData.arrow) {
|
|
54
|
+
this.positionTooltipArrow(middlewareData.arrow.x, middlewareData.arrow.y, placement, arrowLength);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
positionTooltip(x, y) {
|
|
60
|
+
Object.assign(this.kmsTooltip.style, {
|
|
61
|
+
left: `${x}px`,
|
|
62
|
+
top: `${y}px`,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
positionTooltipArrow(x, y, placement, arrowLength) {
|
|
66
|
+
const side = placement.split('-')[0];
|
|
67
|
+
const staticSide = {
|
|
68
|
+
top: 'bottom',
|
|
69
|
+
right: 'left',
|
|
70
|
+
bottom: 'top',
|
|
71
|
+
left: 'right',
|
|
72
|
+
}[side];
|
|
73
|
+
this.addArrowClass(staticSide);
|
|
74
|
+
Object.assign(this.arrow.style, {
|
|
75
|
+
left: x != null ? `${x}px` : '',
|
|
76
|
+
top: y != null ? `${y}px` : '',
|
|
77
|
+
// Ensure the static side gets unset when
|
|
78
|
+
// flipping to other placements' axes.
|
|
79
|
+
right: '',
|
|
80
|
+
bottom: '',
|
|
81
|
+
[staticSide]: `${-arrowLength / 2}px`,
|
|
82
|
+
transform: 'rotate(45deg)',
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
addArrow() {
|
|
86
|
+
this.arrow = this.renderer.createElement('div');
|
|
87
|
+
this.renderer.addClass(this.arrow, 'kms-tooltip__arrow');
|
|
88
|
+
this.renderer.appendChild(this.kmsTooltip, this.arrow);
|
|
89
|
+
}
|
|
90
|
+
addArrowClass(side) {
|
|
91
|
+
this.renderer.removeClass(this.arrow, 'kms-tooltip__arrow--left');
|
|
92
|
+
this.renderer.removeClass(this.arrow, 'kms-tooltip__arrow--right');
|
|
93
|
+
this.renderer.removeClass(this.arrow, 'kms-tooltip__arrow--bottom');
|
|
94
|
+
this.renderer.removeClass(this.arrow, 'kms-tooltip__arrow--top');
|
|
95
|
+
this.renderer.addClass(this.arrow, 'kms-tooltip__arrow--' + side);
|
|
96
|
+
}
|
|
97
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
98
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TooltipDirective, selector: "[kmsTooltip]", inputs: { kmsTooltip: "kmsTooltip", placement: "placement", delay: "delay", alwaysVisible: "alwaysVisible" }, host: { listeners: { "mouseover": "onMouseOver()", "mouseout": "onMouseOut()" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
99
|
+
}
|
|
100
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipDirective, decorators: [{
|
|
101
|
+
type: Directive,
|
|
102
|
+
args: [{ selector: '[kmsTooltip]' }]
|
|
103
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { kmsTooltip: [{
|
|
104
|
+
type: Input
|
|
105
|
+
}], placement: [{
|
|
106
|
+
type: Input
|
|
107
|
+
}], delay: [{
|
|
108
|
+
type: Input
|
|
109
|
+
}], alwaysVisible: [{
|
|
110
|
+
type: Input
|
|
111
|
+
}], onMouseOver: [{
|
|
112
|
+
type: HostListener,
|
|
113
|
+
args: ['mouseover']
|
|
114
|
+
}], onMouseOut: [{
|
|
115
|
+
type: HostListener,
|
|
116
|
+
args: ['mouseout']
|
|
117
|
+
}] } });
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEdBSU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLGVBQWUsRUFFZixLQUFLLEVBQ0wsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsSUFBSSxHQUNMLE1BQU0sa0JBQWtCLENBQUM7O0FBRzFCLE1BQU0sT0FBTyxnQkFBZ0I7SUFVM0IsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLGFBQWE7WUFBRSxPQUFPO1FBRS9CLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFDL0QsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBR0QsVUFBVTtRQUNSLElBQUksSUFBSSxDQUFDLGFBQWE7WUFBRSxPQUFPO1FBRS9CLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxZQUFvQixVQUFzQixFQUFVLFFBQW1CO1FBQW5ELGVBQVUsR0FBVixVQUFVLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBeEI5RCxjQUFTLEdBQWMsUUFBUSxDQUFDO1FBQ2hDLFVBQUssR0FBVyxDQUFDLENBQUM7UUFDbEIsa0JBQWEsR0FB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QUFHLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7K0dBeEhVLGdCQUFnQjttR0FBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUQ1QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRTt5SEFFNUIsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQU1OLFdBQVc7c0JBRFYsWUFBWTt1QkFBQyxXQUFXO2dCQVV6QixVQUFVO3NCQURULFlBQVk7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBSZW5kZXJlcjIsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgY29tcHV0ZVBvc2l0aW9uLFxuICBQbGFjZW1lbnQsXG4gIGFycm93LFxuICBhdXRvVXBkYXRlLFxuICBvZmZzZXQsXG4gIHNoaWZ0LFxuICBmbGlwLFxufSBmcm9tICdAZmxvYXRpbmctdWkvZG9tJztcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2ttc1Rvb2x0aXBdJyB9KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBrbXNUb29sdGlwOiBIVE1MRWxlbWVudDtcbiAgQElucHV0KCkgcGxhY2VtZW50OiBQbGFjZW1lbnQgPSAnYm90dG9tJztcbiAgQElucHV0KCkgZGVsYXk6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIGFsd2F5c1Zpc2libGUgPSBmYWxzZTtcblxuICBhcnJvdzogSFRNTEVsZW1lbnQ7XG4gIHNob3dUaW1lb3V0OiBOb2RlSlMuVGltZW91dDtcblxuICBASG9zdExpc3RlbmVyKCdtb3VzZW92ZXInKVxuICBvbk1vdXNlT3ZlcigpIHtcbiAgICBpZiAodGhpcy5hbHdheXNWaXNpYmxlKSByZXR1cm47XG5cbiAgICB0aGlzLnNob3dUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMua21zVG9vbHRpcCwgJ2ttcy10b29sdGlwLS1zaG93Jyk7XG4gICAgfSwgdGhpcy5kZWxheSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZW91dCcpXG4gIG9uTW91c2VPdXQoKSB7XG4gICAgaWYgKHRoaXMuYWx3YXlzVmlzaWJsZSkgcmV0dXJuO1xuXG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuc2hvd1RpbWVvdXQpO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5rbXNUb29sdGlwLCAna21zLXRvb2x0aXAtLXNob3cnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMua21zVG9vbHRpcCwgJ2ttcy10b29sdGlwJyk7XG4gICAgdGhpcy5hZGRBcnJvdygpO1xuICAgIHRoaXMuaW5pdFRvb2x0aXAoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5hbHdheXNWaXNpYmxlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmttc1Rvb2x0aXAsICdrbXMtdG9vbHRpcC0tc2hvdycpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMua21zVG9vbHRpcCwgJ2ttcy10b29sdGlwLS1zaG93Jyk7XG4gICAgfVxuICB9XG5cbiAgaW5pdFRvb2x0aXAoKSB7XG4gICAgYXV0b1VwZGF0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5rbXNUb29sdGlwLCAoKSA9PiB7XG4gICAgICBjb25zdCBhcnJvd0xlbmd0aCA9IHRoaXMuYXJyb3cub2Zmc2V0V2lkdGg7XG4gICAgICAvLyBHZXQgaGFsZiB0aGUgYXJyb3cgYm94J3MgaHlwb3RlbnVzZSBsZW5ndGhcbiAgICAgIGNvbnN0IGZsb2F0aW5nT2Zmc2V0ID0gTWF0aC5zcXJ0KDIgKiBhcnJvd0xlbmd0aCAqKiAyKSAvIDI7XG5cbiAgICAgIGNvbXB1dGVQb3NpdGlvbih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5rbXNUb29sdGlwLCB7XG4gICAgICAgIHBsYWNlbWVudDogdGhpcy5wbGFjZW1lbnQsXG4gICAgICAgIG1pZGRsZXdhcmU6IFtcbiAgICAgICAgICBzaGlmdCgpLFxuICAgICAgICAgIG9mZnNldChmbG9hdGluZ09mZnNldCksXG4gICAgICAgICAgYXJyb3coeyBlbGVtZW50OiB0aGlzLmFycm93IH0pLFxuICAgICAgICAgIGZsaXAoKSxcbiAgICAgICAgXSxcbiAgICAgIH0pLnRoZW4oKHsgeCwgeSwgbWlkZGxld2FyZURhdGEsIHBsYWNlbWVudCB9KSA9PiB7XG4gICAgICAgIHRoaXMucG9zaXRpb25Ub29sdGlwKHgsIHkpO1xuXG4gICAgICAgIGlmIChtaWRkbGV3YXJlRGF0YS5hcnJvdykge1xuICAgICAgICAgIHRoaXMucG9zaXRpb25Ub29sdGlwQXJyb3coXG4gICAgICAgICAgICBtaWRkbGV3YXJlRGF0YS5hcnJvdy54LFxuICAgICAgICAgICAgbWlkZGxld2FyZURhdGEuYXJyb3cueSxcbiAgICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICAgIGFycm93TGVuZ3RoXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwb3NpdGlvblRvb2x0aXAoeDogbnVtYmVyLCB5OiBudW1iZXIpIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMua21zVG9vbHRpcC5zdHlsZSwge1xuICAgICAgbGVmdDogYCR7eH1weGAsXG4gICAgICB0b3A6IGAke3l9cHhgLFxuICAgIH0pO1xuICB9XG5cbiAgcG9zaXRpb25Ub29sdGlwQXJyb3coXG4gICAgeDogbnVtYmVyLFxuICAgIHk6IG51bWJlcixcbiAgICBwbGFjZW1lbnQ6IFBsYWNlbWVudCxcbiAgICBhcnJvd0xlbmd0aDogbnVtYmVyXG4gICkge1xuICAgIGNvbnN0IHNpZGUgPSBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXTtcblxuICAgIGNvbnN0IHN0YXRpY1NpZGUgPSB7XG4gICAgICB0b3A6ICdib3R0b20nLFxuICAgICAgcmlnaHQ6ICdsZWZ0JyxcbiAgICAgIGJvdHRvbTogJ3RvcCcsXG4gICAgICBsZWZ0OiAncmlnaHQnLFxuICAgIH1bc2lkZV07XG5cbiAgICB0aGlzLmFkZEFycm93Q2xhc3Moc3RhdGljU2lkZSk7XG5cbiAgICBPYmplY3QuYXNzaWduKHRoaXMuYXJyb3cuc3R5bGUsIHtcbiAgICAgIGxlZnQ6IHggIT0gbnVsbCA/IGAke3h9cHhgIDogJycsXG4gICAgICB0b3A6IHkgIT0gbnVsbCA/IGAke3l9cHhgIDogJycsXG4gICAgICAvLyBFbnN1cmUgdGhlIHN0YXRpYyBzaWRlIGdldHMgdW5zZXQgd2hlblxuICAgICAgLy8gZmxpcHBpbmcgdG8gb3RoZXIgcGxhY2VtZW50cycgYXhlcy5cbiAgICAgIHJpZ2h0OiAnJyxcbiAgICAgIGJvdHRvbTogJycsXG4gICAgICBbc3RhdGljU2lkZV06IGAkey1hcnJvd0xlbmd0aCAvIDJ9cHhgLFxuICAgICAgdHJhbnNmb3JtOiAncm90YXRlKDQ1ZGVnKScsXG4gICAgfSk7XG4gIH1cblxuICBhZGRBcnJvdygpIHtcbiAgICB0aGlzLmFycm93ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuYXJyb3csICdrbXMtdG9vbHRpcF9fYXJyb3cnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMua21zVG9vbHRpcCwgdGhpcy5hcnJvdyk7XG4gIH1cblxuICBhZGRBcnJvd0NsYXNzKHNpZGU6IHN0cmluZykge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5hcnJvdywgJ2ttcy10b29sdGlwX19hcnJvdy0tbGVmdCcpO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5hcnJvdywgJ2ttcy10b29sdGlwX19hcnJvdy0tcmlnaHQnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuYXJyb3csICdrbXMtdG9vbHRpcF9fYXJyb3ctLWJvdHRvbScpO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5hcnJvdywgJ2ttcy10b29sdGlwX19hcnJvdy0tdG9wJyk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuYXJyb3csICdrbXMtdG9vbHRpcF9fYXJyb3ctLScgKyBzaWRlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class KmsUiPresentationalComponent {
|
|
4
|
+
constructor() { }
|
|
5
|
+
ngOnInit() { }
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KmsUiPresentationalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: KmsUiPresentationalComponent, selector: "lib-kms-ngx-ui-presentational", ngImport: i0, template: `
|
|
8
|
+
<p>
|
|
9
|
+
kms-ngx-ui-presentational works!
|
|
10
|
+
</p>
|
|
11
|
+
`, isInline: true }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KmsUiPresentationalComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'lib-kms-ngx-ui-presentational', template: `
|
|
16
|
+
<p>
|
|
17
|
+
kms-ngx-ui-presentational works!
|
|
18
|
+
</p>
|
|
19
|
+
` }]
|
|
20
|
+
}], ctorParameters: function () { return []; } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia21zLW5neC11aS1wcmVzZW50YXRpb25hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIva21zLW5neC11aS1wcmVzZW50YXRpb25hbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFZbEQsTUFBTSxPQUFPLDRCQUE0QjtJQUV2QyxnQkFBZ0IsQ0FBQztJQUVqQixRQUFRLEtBQVcsQ0FBQzsrR0FKVCw0QkFBNEI7bUdBQTVCLDRCQUE0QixxRUFSN0I7Ozs7R0FJVDs7NEZBSVUsNEJBQTRCO2tCQVZ4QyxTQUFTOytCQUNFLCtCQUErQixZQUMvQjs7OztHQUlUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxwPlxuICAgICAga21zLW5neC11aS1wcmVzZW50YXRpb25hbCB3b3JrcyFcbiAgICA8L3A+XG4gIGAsXG4gIHN0eWxlczogW1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIEttc1VpUHJlc2VudGF0aW9uYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cblxufVxuIl19
|