valtech-components 2.0.820 → 2.0.821
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/fesm2022/valtech-components.mjs +1 -1
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/package.json +1 -1
- package/esm2022/lib/components/atoms/avatar/avatar.component.mjs +0 -94
- package/esm2022/lib/components/atoms/avatar/types.mjs +0 -2
- package/esm2022/lib/components/atoms/box/box.component.mjs +0 -88
- package/esm2022/lib/components/atoms/box/types.mjs +0 -2
- package/esm2022/lib/components/atoms/button/button.component.mjs +0 -174
- package/esm2022/lib/components/atoms/button/factory.mjs +0 -217
- package/esm2022/lib/components/atoms/container/container.component.mjs +0 -52
- package/esm2022/lib/components/atoms/container/types.mjs +0 -2
- package/esm2022/lib/components/atoms/countdown/countdown.component.mjs +0 -340
- package/esm2022/lib/components/atoms/countdown/types.mjs +0 -27
- package/esm2022/lib/components/atoms/display/display.component.mjs +0 -51
- package/esm2022/lib/components/atoms/display/types.mjs +0 -2
- package/esm2022/lib/components/atoms/divider/divider.component.mjs +0 -27
- package/esm2022/lib/components/atoms/divider/types.mjs +0 -2
- package/esm2022/lib/components/atoms/fab/fab.component.mjs +0 -190
- package/esm2022/lib/components/atoms/fab/types.mjs +0 -2
- package/esm2022/lib/components/atoms/glass/glass.component.mjs +0 -125
- package/esm2022/lib/components/atoms/glass/types.mjs +0 -2
- package/esm2022/lib/components/atoms/glow/glow.component.mjs +0 -95
- package/esm2022/lib/components/atoms/glow/types.mjs +0 -2
- package/esm2022/lib/components/atoms/horizontal-scroll/horizontal-scroll.component.mjs +0 -82
- package/esm2022/lib/components/atoms/horizontal-scroll/types.mjs +0 -2
- package/esm2022/lib/components/atoms/href/href.component.mjs +0 -62
- package/esm2022/lib/components/atoms/href/types.mjs +0 -2
- package/esm2022/lib/components/atoms/icon/icon.component.mjs +0 -29
- package/esm2022/lib/components/atoms/icon/types.mjs +0 -2
- package/esm2022/lib/components/atoms/image/image.component.mjs +0 -507
- package/esm2022/lib/components/atoms/image/types.mjs +0 -2
- package/esm2022/lib/components/atoms/pattern/motifs.mjs +0 -147
- package/esm2022/lib/components/atoms/pattern/pattern.component.mjs +0 -178
- package/esm2022/lib/components/atoms/pattern/types.mjs +0 -2
- package/esm2022/lib/components/atoms/price-tag/price-tag.component.mjs +0 -235
- package/esm2022/lib/components/atoms/price-tag/types.mjs +0 -15
- package/esm2022/lib/components/atoms/progress-bar/progress-bar.component.mjs +0 -91
- package/esm2022/lib/components/atoms/progress-bar/types.mjs +0 -2
- package/esm2022/lib/components/atoms/progress-ring/progress-ring.component.mjs +0 -149
- package/esm2022/lib/components/atoms/progress-ring/types.mjs +0 -2
- package/esm2022/lib/components/atoms/qr-code/qr-code.component.mjs +0 -394
- package/esm2022/lib/components/atoms/qr-code/types.mjs +0 -2
- package/esm2022/lib/components/atoms/rights-footer/rights-footer.component.mjs +0 -108
- package/esm2022/lib/components/atoms/rights-footer/types.mjs +0 -2
- package/esm2022/lib/components/atoms/skeleton/skeleton.component.mjs +0 -193
- package/esm2022/lib/components/atoms/skeleton/types.mjs +0 -13
- package/esm2022/lib/components/atoms/text/text.component.mjs +0 -132
- package/esm2022/lib/components/atoms/text/types.mjs +0 -2
- package/esm2022/lib/components/atoms/title/title.component.mjs +0 -68
- package/esm2022/lib/components/atoms/title/types.mjs +0 -22
- package/esm2022/lib/components/atoms/user-avatar/types.mjs +0 -2
- package/esm2022/lib/components/atoms/user-avatar/user-avatar.component.mjs +0 -209
- package/esm2022/lib/components/molecules/accordion/accordion.component.mjs +0 -120
- package/esm2022/lib/components/molecules/accordion/types.mjs +0 -2
- package/esm2022/lib/components/molecules/action-card/action-card.component.mjs +0 -273
- package/esm2022/lib/components/molecules/action-card/types.mjs +0 -11
- package/esm2022/lib/components/molecules/action-header/action-header.component.mjs +0 -55
- package/esm2022/lib/components/molecules/action-header/types.mjs +0 -2
- package/esm2022/lib/components/molecules/ad-slot/ad-slot.component.mjs +0 -274
- package/esm2022/lib/components/molecules/alert-box/alert-box.component.mjs +0 -119
- package/esm2022/lib/components/molecules/alert-box/types.mjs +0 -2
- package/esm2022/lib/components/molecules/breadcrumb/breadcrumb.component.mjs +0 -130
- package/esm2022/lib/components/molecules/breadcrumb/types.mjs +0 -2
- package/esm2022/lib/components/molecules/button-group/button-group.component.mjs +0 -63
- package/esm2022/lib/components/molecules/button-group/types.mjs +0 -2
- package/esm2022/lib/components/molecules/card/card.component.mjs +0 -450
- package/esm2022/lib/components/molecules/card/types.mjs +0 -16
- package/esm2022/lib/components/molecules/check-input/check-input.component.mjs +0 -82
- package/esm2022/lib/components/molecules/checkbox-radio-input/checkbox-radio-input.component.mjs +0 -79
- package/esm2022/lib/components/molecules/chip-group/chip-group.component.mjs +0 -166
- package/esm2022/lib/components/molecules/chip-group/types.mjs +0 -2
- package/esm2022/lib/components/molecules/code-display/code-display.component.mjs +0 -115
- package/esm2022/lib/components/molecules/code-display/types.mjs +0 -2
- package/esm2022/lib/components/molecules/command-display/command-display.component.mjs +0 -49
- package/esm2022/lib/components/molecules/command-display/types.mjs +0 -2
- package/esm2022/lib/components/molecules/comment/comment.component.mjs +0 -618
- package/esm2022/lib/components/molecules/comment/types.mjs +0 -2
- package/esm2022/lib/components/molecules/comment-input/comment-input.component.mjs +0 -41
- package/esm2022/lib/components/molecules/comment-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/content-loader/content-loader.component.mjs +0 -42
- package/esm2022/lib/components/molecules/content-loader/types.mjs +0 -2
- package/esm2022/lib/components/molecules/content-reaction/content-reaction.component.mjs +0 -210
- package/esm2022/lib/components/molecules/content-reaction/types.mjs +0 -2
- package/esm2022/lib/components/molecules/currency-input/currency-input.component.mjs +0 -347
- package/esm2022/lib/components/molecules/currency-input/types.mjs +0 -18
- package/esm2022/lib/components/molecules/date-input/date-input.component.mjs +0 -148
- package/esm2022/lib/components/molecules/date-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/date-range-input/date-range-input.component.mjs +0 -416
- package/esm2022/lib/components/molecules/date-range-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/docs-api-table/docs-api-table.component.mjs +0 -222
- package/esm2022/lib/components/molecules/docs-api-table/types.mjs +0 -11
- package/esm2022/lib/components/molecules/docs-breadcrumb/docs-breadcrumb.component.mjs +0 -144
- package/esm2022/lib/components/molecules/docs-breadcrumb/types.mjs +0 -2
- package/esm2022/lib/components/molecules/docs-callout/docs-callout.component.mjs +0 -60
- package/esm2022/lib/components/molecules/docs-code-example/docs-code-example.component.mjs +0 -249
- package/esm2022/lib/components/molecules/docs-code-example/types.mjs +0 -2
- package/esm2022/lib/components/molecules/docs-nav-links/docs-nav-links.component.mjs +0 -140
- package/esm2022/lib/components/molecules/docs-nav-links/types.mjs +0 -2
- package/esm2022/lib/components/molecules/docs-search/docs-search.component.mjs +0 -268
- package/esm2022/lib/components/molecules/docs-search/types.mjs +0 -2
- package/esm2022/lib/components/molecules/docs-section/docs-section.component.mjs +0 -85
- package/esm2022/lib/components/molecules/docs-section/types.mjs +0 -2
- package/esm2022/lib/components/molecules/email-input/email-input.component.mjs +0 -68
- package/esm2022/lib/components/molecules/expandable-text/expandable-text.component.mjs +0 -77
- package/esm2022/lib/components/molecules/expandable-text/types.mjs +0 -2
- package/esm2022/lib/components/molecules/features-list/features-list.component.mjs +0 -179
- package/esm2022/lib/components/molecules/features-list/types.mjs +0 -11
- package/esm2022/lib/components/molecules/feedback-form/feedback-form.component.mjs +0 -354
- package/esm2022/lib/components/molecules/feedback-form/types.mjs +0 -2
- package/esm2022/lib/components/molecules/file-input/file-input.component.mjs +0 -90
- package/esm2022/lib/components/molecules/file-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/footer-links/footer-links.component.mjs +0 -391
- package/esm2022/lib/components/molecules/footer-links/types.mjs +0 -2
- package/esm2022/lib/components/molecules/glow-card/glow-card.component.mjs +0 -314
- package/esm2022/lib/components/molecules/glow-card/types.mjs +0 -11
- package/esm2022/lib/components/molecules/hint/hint.component.mjs +0 -90
- package/esm2022/lib/components/molecules/hour-input/hour-input.component.mjs +0 -28
- package/esm2022/lib/components/molecules/image-crop/image-crop.component.mjs +0 -174
- package/esm2022/lib/components/molecules/image-crop/index.mjs +0 -2
- package/esm2022/lib/components/molecules/info/info.component.mjs +0 -49
- package/esm2022/lib/components/molecules/info/types.mjs +0 -2
- package/esm2022/lib/components/molecules/language-selector/language-selector.component.mjs +0 -221
- package/esm2022/lib/components/molecules/language-selector/types.mjs +0 -2
- package/esm2022/lib/components/molecules/layered-card/layered-card.component.mjs +0 -104
- package/esm2022/lib/components/molecules/layered-card/types.mjs +0 -2
- package/esm2022/lib/components/molecules/link/link.component.mjs +0 -64
- package/esm2022/lib/components/molecules/link/types.mjs +0 -2
- package/esm2022/lib/components/molecules/linked-providers/linked-providers.component.mjs +0 -236
- package/esm2022/lib/components/molecules/linked-providers/types.mjs +0 -27
- package/esm2022/lib/components/molecules/links-accordion/links-accordion.component.mjs +0 -203
- package/esm2022/lib/components/molecules/links-accordion/types.mjs +0 -2
- package/esm2022/lib/components/molecules/links-cake/links-cake.component.mjs +0 -51
- package/esm2022/lib/components/molecules/links-cake/types.mjs +0 -2
- package/esm2022/lib/components/molecules/multi-select-search/multi-select-search.component.mjs +0 -488
- package/esm2022/lib/components/molecules/notes-box/notes-box.component.mjs +0 -92
- package/esm2022/lib/components/molecules/notes-box/types.mjs +0 -2
- package/esm2022/lib/components/molecules/number-from-to/number-from-to.component.mjs +0 -143
- package/esm2022/lib/components/molecules/number-from-to/types.mjs +0 -2
- package/esm2022/lib/components/molecules/number-input/number-input.component.mjs +0 -34
- package/esm2022/lib/components/molecules/number-stepper/number-stepper.component.mjs +0 -379
- package/esm2022/lib/components/molecules/number-stepper/types.mjs +0 -2
- package/esm2022/lib/components/molecules/page-links/page-links.component.mjs +0 -150
- package/esm2022/lib/components/molecules/page-links/types.mjs +0 -2
- package/esm2022/lib/components/molecules/pagination/pagination.component.mjs +0 -253
- package/esm2022/lib/components/molecules/pagination/types.mjs +0 -2
- package/esm2022/lib/components/molecules/password-input/password-input.component.mjs +0 -93
- package/esm2022/lib/components/molecules/phone-input/phone-input.component.mjs +0 -365
- package/esm2022/lib/components/molecules/phone-input/types.mjs +0 -19
- package/esm2022/lib/components/molecules/pill/pill.component.mjs +0 -202
- package/esm2022/lib/components/molecules/pill/types.mjs +0 -2
- package/esm2022/lib/components/molecules/pin-input/pin-input.component.mjs +0 -78
- package/esm2022/lib/components/molecules/pin-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/plain-code-box/plain-code-box.component.mjs +0 -82
- package/esm2022/lib/components/molecules/plain-code-box/types.mjs +0 -2
- package/esm2022/lib/components/molecules/popover-selector/popover-selector.component.mjs +0 -188
- package/esm2022/lib/components/molecules/popover-selector/types.mjs +0 -2
- package/esm2022/lib/components/molecules/progress-status/progress-status.component.mjs +0 -105
- package/esm2022/lib/components/molecules/progress-status/types.mjs +0 -2
- package/esm2022/lib/components/molecules/prompter/prompter.component.mjs +0 -85
- package/esm2022/lib/components/molecules/prompter/types.mjs +0 -2
- package/esm2022/lib/components/molecules/quote-box/quote-box.component.mjs +0 -155
- package/esm2022/lib/components/molecules/radio-input/radio-input.component.mjs +0 -52
- package/esm2022/lib/components/molecules/range-input/range-input.component.mjs +0 -127
- package/esm2022/lib/components/molecules/range-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/rating/rating.component.mjs +0 -166
- package/esm2022/lib/components/molecules/rating/types.mjs +0 -2
- package/esm2022/lib/components/molecules/refresher/refresher.component.mjs +0 -275
- package/esm2022/lib/components/molecules/refresher/types.mjs +0 -15
- package/esm2022/lib/components/molecules/searchbar/searchbar.component.mjs +0 -127
- package/esm2022/lib/components/molecules/searchbar/types.mjs +0 -2
- package/esm2022/lib/components/molecules/segment-control/segment-control.component.mjs +0 -129
- package/esm2022/lib/components/molecules/segment-control/types.mjs +0 -2
- package/esm2022/lib/components/molecules/select-input/select-input.component.mjs +0 -148
- package/esm2022/lib/components/molecules/select-search/select-search.component.mjs +0 -434
- package/esm2022/lib/components/molecules/share-buttons/share-buttons.component.mjs +0 -274
- package/esm2022/lib/components/molecules/share-buttons/types.mjs +0 -88
- package/esm2022/lib/components/molecules/stats-card/stats-card.component.mjs +0 -211
- package/esm2022/lib/components/molecules/stats-card/types.mjs +0 -2
- package/esm2022/lib/components/molecules/stepper/stepper.component.mjs +0 -242
- package/esm2022/lib/components/molecules/stepper/types.mjs +0 -2
- package/esm2022/lib/components/molecules/swipe-carousel/swipe-carousel.component.mjs +0 -206
- package/esm2022/lib/components/molecules/swipe-carousel/types.mjs +0 -2
- package/esm2022/lib/components/molecules/tabs/tabs.component.mjs +0 -139
- package/esm2022/lib/components/molecules/tabs/types.mjs +0 -2
- package/esm2022/lib/components/molecules/testimonial-card/testimonial-card.component.mjs +0 -138
- package/esm2022/lib/components/molecules/testimonial-card/types.mjs +0 -2
- package/esm2022/lib/components/molecules/text-input/text-input.component.mjs +0 -77
- package/esm2022/lib/components/molecules/textarea-input/textarea-input.component.mjs +0 -213
- package/esm2022/lib/components/molecules/textarea-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/timeline/timeline.component.mjs +0 -140
- package/esm2022/lib/components/molecules/timeline/types.mjs +0 -2
- package/esm2022/lib/components/molecules/title-block/title-block.component.mjs +0 -102
- package/esm2022/lib/components/molecules/title-block/types.mjs +0 -2
- package/esm2022/lib/components/molecules/toggle-input/toggle-input.component.mjs +0 -93
- package/esm2022/lib/components/molecules/toggle-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/update-banner/types.mjs +0 -42
- package/esm2022/lib/components/molecules/update-banner/update-banner.component.mjs +0 -243
- package/esm2022/lib/components/molecules/username-input/types.mjs +0 -2
- package/esm2022/lib/components/molecules/username-input/username-input.component.mjs +0 -295
- package/esm2022/lib/components/organisms/article/article.component.mjs +0 -578
- package/esm2022/lib/components/organisms/article/types.mjs +0 -183
- package/esm2022/lib/components/organisms/avatar-upload/avatar-upload.component.mjs +0 -325
- package/esm2022/lib/components/organisms/avatar-upload/types.mjs +0 -15
- package/esm2022/lib/components/organisms/banner/banner.component.mjs +0 -111
- package/esm2022/lib/components/organisms/banner/types.mjs +0 -2
- package/esm2022/lib/components/organisms/bottom-nav/bottom-nav.component.mjs +0 -383
- package/esm2022/lib/components/organisms/bottom-nav/types.mjs +0 -19
- package/esm2022/lib/components/organisms/cards-carousel/cards-carousel.component.mjs +0 -108
- package/esm2022/lib/components/organisms/cards-carousel/types.mjs +0 -2
- package/esm2022/lib/components/organisms/comment-section/comment-section.component.mjs +0 -537
- package/esm2022/lib/components/organisms/comment-section/types.mjs +0 -2
- package/esm2022/lib/components/organisms/company-footer/company-footer.component.mjs +0 -76
- package/esm2022/lib/components/organisms/company-footer/types.mjs +0 -2
- package/esm2022/lib/components/organisms/cookie-banner/cookie-banner.component.mjs +0 -199
- package/esm2022/lib/components/organisms/cookie-banner/types.mjs +0 -2
- package/esm2022/lib/components/organisms/data-table/data-table.component.mjs +0 -1081
- package/esm2022/lib/components/organisms/data-table/types.mjs +0 -13
- package/esm2022/lib/components/organisms/docs-sidebar/docs-sidebar.component.mjs +0 -290
- package/esm2022/lib/components/organisms/docs-sidebar/types.mjs +0 -2
- package/esm2022/lib/components/organisms/docs-toc/docs-toc.component.mjs +0 -307
- package/esm2022/lib/components/organisms/docs-toc/types.mjs +0 -2
- package/esm2022/lib/components/organisms/faq/faq.component.mjs +0 -176
- package/esm2022/lib/components/organisms/faq/types.mjs +0 -9
- package/esm2022/lib/components/organisms/footer/footer.component.mjs +0 -73
- package/esm2022/lib/components/organisms/footer/types.mjs +0 -2
- package/esm2022/lib/components/organisms/form/factory.mjs +0 -29
- package/esm2022/lib/components/organisms/form/form-footer/form-footer.component.mjs +0 -83
- package/esm2022/lib/components/organisms/form/form.component.mjs +0 -510
- package/esm2022/lib/components/organisms/fun-header/fun-header.component.mjs +0 -225
- package/esm2022/lib/components/organisms/fun-header/types.mjs +0 -2
- package/esm2022/lib/components/organisms/header/header.component.mjs +0 -51
- package/esm2022/lib/components/organisms/header/types.mjs +0 -2
- package/esm2022/lib/components/organisms/infinite-list/infinite-list.component.mjs +0 -620
- package/esm2022/lib/components/organisms/infinite-list/types.mjs +0 -15
- package/esm2022/lib/components/organisms/item-list/item-list.component.mjs +0 -418
- package/esm2022/lib/components/organisms/item-list/types.mjs +0 -2
- package/esm2022/lib/components/organisms/login/login.component.mjs +0 -735
- package/esm2022/lib/components/organisms/login/types.mjs +0 -11
- package/esm2022/lib/components/organisms/menu/menu.component.mjs +0 -206
- package/esm2022/lib/components/organisms/menu/types.mjs +0 -2
- package/esm2022/lib/components/organisms/no-content/no-content.component.mjs +0 -66
- package/esm2022/lib/components/organisms/no-content/types.mjs +0 -2
- package/esm2022/lib/components/organisms/rotating-text/rotating-text.component.mjs +0 -180
- package/esm2022/lib/components/organisms/rotating-text/types.mjs +0 -2
- package/esm2022/lib/components/organisms/skeleton-layout/skeleton-layout.component.mjs +0 -423
- package/esm2022/lib/components/organisms/skeleton-layout/types.mjs +0 -10
- package/esm2022/lib/components/organisms/tabbed-content/tabbed-content.component.mjs +0 -170
- package/esm2022/lib/components/organisms/tabbed-content/types.mjs +0 -2
- package/esm2022/lib/components/organisms/terminal-404/terminal-404.component.mjs +0 -214
- package/esm2022/lib/components/organisms/terminal-404/types.mjs +0 -2
- package/esm2022/lib/components/organisms/testimonial-carousel/testimonial-carousel.component.mjs +0 -72
- package/esm2022/lib/components/organisms/testimonial-carousel/types.mjs +0 -2
- package/esm2022/lib/components/organisms/toolbar/toolbar.component.mjs +0 -255
- package/esm2022/lib/components/organisms/toolbar/types.mjs +0 -2
- package/esm2022/lib/components/organisms/wizard/types.mjs +0 -10
- package/esm2022/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.mjs +0 -111
- package/esm2022/lib/components/organisms/wizard/wizard.component.mjs +0 -161
- package/esm2022/lib/components/templates/auth-background/auth-background.component.mjs +0 -164
- package/esm2022/lib/components/templates/auth-background/types.mjs +0 -2
- package/esm2022/lib/components/templates/docs-layout/docs-layout.component.mjs +0 -221
- package/esm2022/lib/components/templates/docs-layout/types.mjs +0 -2
- package/esm2022/lib/components/templates/docs-page/docs-page.component.mjs +0 -251
- package/esm2022/lib/components/templates/docs-page/types.mjs +0 -2
- package/esm2022/lib/components/templates/docs-shell/docs-shell.component.mjs +0 -376
- package/esm2022/lib/components/templates/docs-shell/types.mjs +0 -2
- package/esm2022/lib/components/templates/maintenance-page/maintenance-page.component.mjs +0 -153
- package/esm2022/lib/components/templates/maintenance-page/types.mjs +0 -2
- package/esm2022/lib/components/templates/page-content/page-content.component.mjs +0 -193
- package/esm2022/lib/components/templates/page-content/types.mjs +0 -2
- package/esm2022/lib/components/templates/page-template/page-template.component.mjs +0 -188
- package/esm2022/lib/components/templates/page-template/types.mjs +0 -2
- package/esm2022/lib/components/templates/page-wrapper/page-wrapper.component.mjs +0 -238
- package/esm2022/lib/components/templates/page-wrapper/types.mjs +0 -2
- package/esm2022/lib/components/templates/simple/simple.component.mjs +0 -123
- package/esm2022/lib/components/templates/simple/types.mjs +0 -2
- package/esm2022/lib/components/types.mjs +0 -60
- package/esm2022/lib/config/company-footer.config.mjs +0 -125
- package/esm2022/lib/config/index.mjs +0 -5
- package/esm2022/lib/services/ads/ads-loader.service.mjs +0 -120
- package/esm2022/lib/services/ads/ads.service.mjs +0 -236
- package/esm2022/lib/services/ads/config.mjs +0 -81
- package/esm2022/lib/services/ads/index.mjs +0 -13
- package/esm2022/lib/services/ads/types.mjs +0 -23
- package/esm2022/lib/services/app-config/app-config.service.mjs +0 -209
- package/esm2022/lib/services/app-config/config.mjs +0 -47
- package/esm2022/lib/services/app-config/index.mjs +0 -48
- package/esm2022/lib/services/app-config/types.mjs +0 -13
- package/esm2022/lib/services/app-config/version.mjs +0 -85
- package/esm2022/lib/services/app-version/app-version.service.mjs +0 -187
- package/esm2022/lib/services/app-version/config.mjs +0 -42
- package/esm2022/lib/services/app-version/index.mjs +0 -24
- package/esm2022/lib/services/app-version/types.mjs +0 -17
- package/esm2022/lib/services/auth/auth-state.service.mjs +0 -207
- package/esm2022/lib/services/auth/auth.service.mjs +0 -1142
- package/esm2022/lib/services/auth/config.mjs +0 -75
- package/esm2022/lib/services/auth/device.service.mjs +0 -135
- package/esm2022/lib/services/auth/guards.mjs +0 -199
- package/esm2022/lib/services/auth/handoff.service.mjs +0 -152
- package/esm2022/lib/services/auth/index.mjs +0 -98
- package/esm2022/lib/services/auth/interceptor.mjs +0 -122
- package/esm2022/lib/services/auth/notification-action.service.mjs +0 -117
- package/esm2022/lib/services/auth/oauth-callback.component.mjs +0 -169
- package/esm2022/lib/services/auth/oauth.service.mjs +0 -322
- package/esm2022/lib/services/auth/org-switch.service.mjs +0 -137
- package/esm2022/lib/services/auth/session.service.mjs +0 -78
- package/esm2022/lib/services/auth/storage.service.mjs +0 -152
- package/esm2022/lib/services/auth/sync.service.mjs +0 -149
- package/esm2022/lib/services/auth/token.service.mjs +0 -122
- package/esm2022/lib/services/auth/types.mjs +0 -30
- package/esm2022/lib/services/confirmation-dialog/confirmation-dialog.service.mjs +0 -189
- package/esm2022/lib/services/confirmation-dialog/types.mjs +0 -14
- package/esm2022/lib/services/content/content-types/blog.mjs +0 -275
- package/esm2022/lib/services/content/content-types/documentation.mjs +0 -303
- package/esm2022/lib/services/content/content-types/news.mjs +0 -277
- package/esm2022/lib/services/content/index.mjs +0 -51
- package/esm2022/lib/services/content/transformer.mjs +0 -265
- package/esm2022/lib/services/content/types.mjs +0 -41
- package/esm2022/lib/services/docs/docs-navigation.service.mjs +0 -91
- package/esm2022/lib/services/donation/config.mjs +0 -41
- package/esm2022/lib/services/donation/donation.service.mjs +0 -92
- package/esm2022/lib/services/donation/index.mjs +0 -25
- package/esm2022/lib/services/donation/types.mjs +0 -10
- package/esm2022/lib/services/download.service.mjs +0 -80
- package/esm2022/lib/services/feedback/config.mjs +0 -49
- package/esm2022/lib/services/feedback/feedback.service.mjs +0 -296
- package/esm2022/lib/services/feedback/index.mjs +0 -44
- package/esm2022/lib/services/feedback/types.mjs +0 -30
- package/esm2022/lib/services/firebase/analytics-error-handler.mjs +0 -141
- package/esm2022/lib/services/firebase/analytics-router-tracker.mjs +0 -99
- package/esm2022/lib/services/firebase/analytics-types.mjs +0 -7
- package/esm2022/lib/services/firebase/analytics.service.mjs +0 -620
- package/esm2022/lib/services/firebase/config.mjs +0 -131
- package/esm2022/lib/services/firebase/firebase.service.mjs +0 -506
- package/esm2022/lib/services/firebase/firestore-collection.mjs +0 -301
- package/esm2022/lib/services/firebase/firestore.service.mjs +0 -571
- package/esm2022/lib/services/firebase/index.mjs +0 -56
- package/esm2022/lib/services/firebase/messaging.service.mjs +0 -721
- package/esm2022/lib/services/firebase/notifications.service.mjs +0 -274
- package/esm2022/lib/services/firebase/shared-config.mjs +0 -147
- package/esm2022/lib/services/firebase/storage.service.mjs +0 -484
- package/esm2022/lib/services/firebase/types.mjs +0 -18
- package/esm2022/lib/services/firebase/utils/path-builder.mjs +0 -195
- package/esm2022/lib/services/firebase/utils/query-builder.mjs +0 -302
- package/esm2022/lib/services/i18n/config.mjs +0 -128
- package/esm2022/lib/services/i18n/default-content.mjs +0 -577
- package/esm2022/lib/services/i18n/i18n.service.mjs +0 -217
- package/esm2022/lib/services/i18n/index.mjs +0 -13
- package/esm2022/lib/services/i18n/input-i18n.helper.mjs +0 -97
- package/esm2022/lib/services/i18n/translate.pipe.mjs +0 -50
- package/esm2022/lib/services/i18n/types.mjs +0 -15
- package/esm2022/lib/services/icons.service.mjs +0 -83
- package/esm2022/lib/services/image/image.service.mjs +0 -244
- package/esm2022/lib/services/image/index.mjs +0 -3
- package/esm2022/lib/services/image/types.mjs +0 -13
- package/esm2022/lib/services/in-app-browser.service.mjs +0 -35
- package/esm2022/lib/services/legal-link/legal-link.service.mjs +0 -85
- package/esm2022/lib/services/link-processor.service.mjs +0 -259
- package/esm2022/lib/services/local-storage.service.mjs +0 -37
- package/esm2022/lib/services/locale.service.mjs +0 -75
- package/esm2022/lib/services/markdown-article/legal-content.service.mjs +0 -107
- package/esm2022/lib/services/markdown-article/markdown-article-parser.mjs +0 -302
- package/esm2022/lib/services/markdown-article/markdown-article-parser.service.mjs +0 -20
- package/esm2022/lib/services/meta/index.mjs +0 -3
- package/esm2022/lib/services/meta/meta.service.mjs +0 -63
- package/esm2022/lib/services/meta/types.mjs +0 -2
- package/esm2022/lib/services/modal/modal.service.mjs +0 -220
- package/esm2022/lib/services/modal/simple-modal-content.component.mjs +0 -133
- package/esm2022/lib/services/modal/types.mjs +0 -26
- package/esm2022/lib/services/navigation/index.mjs +0 -3
- package/esm2022/lib/services/navigation/navigation.service.mjs +0 -216
- package/esm2022/lib/services/navigation/types.mjs +0 -16
- package/esm2022/lib/services/page-refresh/page-refresh.service.mjs +0 -104
- package/esm2022/lib/services/pagination/index.mjs +0 -5
- package/esm2022/lib/services/pagination/pagination.service.mjs +0 -218
- package/esm2022/lib/services/pagination/types.mjs +0 -14
- package/esm2022/lib/services/preferences/index.mjs +0 -3
- package/esm2022/lib/services/preferences/preferences.service.mjs +0 -198
- package/esm2022/lib/services/preferences/preferences.types.mjs +0 -7
- package/esm2022/lib/services/presets/config.mjs +0 -46
- package/esm2022/lib/services/presets/index.mjs +0 -5
- package/esm2022/lib/services/presets/preset.service.mjs +0 -104
- package/esm2022/lib/services/presets/types.mjs +0 -2
- package/esm2022/lib/services/qr-generator/qr-generator.service.mjs +0 -341
- package/esm2022/lib/services/qr-generator/types.mjs +0 -46
- package/esm2022/lib/services/refreshable-stream/index.mjs +0 -8
- package/esm2022/lib/services/refreshable-stream/refreshable-stream.mjs +0 -112
- package/esm2022/lib/services/skeleton/config.mjs +0 -79
- package/esm2022/lib/services/skeleton/directives/loading.directive.mjs +0 -215
- package/esm2022/lib/services/skeleton/index.mjs +0 -16
- package/esm2022/lib/services/skeleton/skeleton.service.mjs +0 -198
- package/esm2022/lib/services/skeleton/templates/detail-skeleton.component.mjs +0 -223
- package/esm2022/lib/services/skeleton/templates/form-skeleton.component.mjs +0 -127
- package/esm2022/lib/services/skeleton/templates/grid-skeleton.component.mjs +0 -154
- package/esm2022/lib/services/skeleton/templates/list-skeleton.component.mjs +0 -110
- package/esm2022/lib/services/skeleton/templates/profile-skeleton.component.mjs +0 -207
- package/esm2022/lib/services/skeleton/templates/table-skeleton.component.mjs +0 -116
- package/esm2022/lib/services/skeleton/types.mjs +0 -11
- package/esm2022/lib/services/theme.service.mjs +0 -153
- package/esm2022/lib/services/toast.service.mjs +0 -53
- package/esm2022/lib/services/types.mjs +0 -5
- package/esm2022/lib/shared/constants/storage.mjs +0 -3
- package/esm2022/lib/shared/pipes/process-links.pipe.mjs +0 -69
- package/esm2022/lib/shared/utils/datetime.mjs +0 -24
- package/esm2022/lib/shared/utils/dom.mjs +0 -27
- package/esm2022/lib/shared/utils/form-defaults.mjs +0 -112
- package/esm2022/lib/shared/utils/styles.mjs +0 -37
- package/esm2022/lib/shared/utils/text.mjs +0 -12
- package/esm2022/lib/version.mjs +0 -6
- package/esm2022/public-api.mjs +0 -367
- package/esm2022/valtech-components.mjs +0 -5
- package/index.d.ts +0 -5
- package/lib/components/atoms/avatar/avatar.component.d.ts +0 -36
- package/lib/components/atoms/avatar/types.d.ts +0 -15
- package/lib/components/atoms/box/box.component.d.ts +0 -26
- package/lib/components/atoms/box/types.d.ts +0 -19
- package/lib/components/atoms/button/button.component.d.ts +0 -63
- package/lib/components/atoms/button/factory.d.ts +0 -71
- package/lib/components/atoms/container/container.component.d.ts +0 -30
- package/lib/components/atoms/container/types.d.ts +0 -11
- package/lib/components/atoms/countdown/countdown.component.d.ts +0 -38
- package/lib/components/atoms/countdown/types.d.ts +0 -108
- package/lib/components/atoms/display/display.component.d.ts +0 -19
- package/lib/components/atoms/display/types.d.ts +0 -33
- package/lib/components/atoms/divider/divider.component.d.ts +0 -27
- package/lib/components/atoms/divider/types.d.ts +0 -12
- package/lib/components/atoms/fab/fab.component.d.ts +0 -36
- package/lib/components/atoms/fab/types.d.ts +0 -45
- package/lib/components/atoms/glass/glass.component.d.ts +0 -43
- package/lib/components/atoms/glass/types.d.ts +0 -70
- package/lib/components/atoms/glow/glow.component.d.ts +0 -42
- package/lib/components/atoms/glow/types.d.ts +0 -40
- package/lib/components/atoms/horizontal-scroll/horizontal-scroll.component.d.ts +0 -41
- package/lib/components/atoms/horizontal-scroll/types.d.ts +0 -13
- package/lib/components/atoms/href/href.component.d.ts +0 -25
- package/lib/components/atoms/href/types.d.ts +0 -19
- package/lib/components/atoms/icon/icon.component.d.ts +0 -18
- package/lib/components/atoms/icon/types.d.ts +0 -13
- package/lib/components/atoms/image/image.component.d.ts +0 -41
- package/lib/components/atoms/image/types.d.ts +0 -37
- package/lib/components/atoms/pattern/motifs.d.ts +0 -60
- package/lib/components/atoms/pattern/pattern.component.d.ts +0 -68
- package/lib/components/atoms/pattern/types.d.ts +0 -61
- package/lib/components/atoms/price-tag/price-tag.component.d.ts +0 -15
- package/lib/components/atoms/price-tag/types.d.ts +0 -59
- package/lib/components/atoms/progress-bar/progress-bar.component.d.ts +0 -35
- package/lib/components/atoms/progress-bar/types.d.ts +0 -19
- package/lib/components/atoms/progress-ring/progress-ring.component.d.ts +0 -20
- package/lib/components/atoms/progress-ring/types.d.ts +0 -24
- package/lib/components/atoms/qr-code/qr-code.component.d.ts +0 -33
- package/lib/components/atoms/qr-code/types.d.ts +0 -124
- package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +0 -53
- package/lib/components/atoms/rights-footer/types.d.ts +0 -21
- package/lib/components/atoms/skeleton/skeleton.component.d.ts +0 -12
- package/lib/components/atoms/skeleton/types.d.ts +0 -29
- package/lib/components/atoms/text/text.component.d.ts +0 -33
- package/lib/components/atoms/text/types.d.ts +0 -42
- package/lib/components/atoms/title/title.component.d.ts +0 -21
- package/lib/components/atoms/title/types.d.ts +0 -36
- package/lib/components/atoms/user-avatar/types.d.ts +0 -74
- package/lib/components/atoms/user-avatar/user-avatar.component.d.ts +0 -55
- package/lib/components/molecules/accordion/accordion.component.d.ts +0 -18
- package/lib/components/molecules/accordion/types.d.ts +0 -47
- package/lib/components/molecules/action-card/action-card.component.d.ts +0 -90
- package/lib/components/molecules/action-card/types.d.ts +0 -83
- package/lib/components/molecules/action-header/action-header.component.d.ts +0 -27
- package/lib/components/molecules/action-header/types.d.ts +0 -27
- package/lib/components/molecules/ad-slot/ad-slot.component.d.ts +0 -69
- package/lib/components/molecules/alert-box/alert-box.component.d.ts +0 -39
- package/lib/components/molecules/alert-box/types.d.ts +0 -37
- package/lib/components/molecules/breadcrumb/breadcrumb.component.d.ts +0 -22
- package/lib/components/molecules/breadcrumb/types.d.ts +0 -45
- package/lib/components/molecules/button-group/button-group.component.d.ts +0 -23
- package/lib/components/molecules/button-group/types.d.ts +0 -13
- package/lib/components/molecules/card/card.component.d.ts +0 -49
- package/lib/components/molecules/card/types.d.ts +0 -32
- package/lib/components/molecules/check-input/check-input.component.d.ts +0 -36
- package/lib/components/molecules/checkbox-radio-input/checkbox-radio-input.component.d.ts +0 -17
- package/lib/components/molecules/chip-group/chip-group.component.d.ts +0 -22
- package/lib/components/molecules/chip-group/types.d.ts +0 -65
- package/lib/components/molecules/code-display/code-display.component.d.ts +0 -24
- package/lib/components/molecules/code-display/types.d.ts +0 -10
- package/lib/components/molecules/command-display/command-display.component.d.ts +0 -11
- package/lib/components/molecules/command-display/types.d.ts +0 -3
- package/lib/components/molecules/comment/comment.component.d.ts +0 -42
- package/lib/components/molecules/comment/types.d.ts +0 -171
- package/lib/components/molecules/comment-input/comment-input.component.d.ts +0 -16
- package/lib/components/molecules/comment-input/types.d.ts +0 -59
- package/lib/components/molecules/content-loader/content-loader.component.d.ts +0 -18
- package/lib/components/molecules/content-loader/types.d.ts +0 -15
- package/lib/components/molecules/content-reaction/content-reaction.component.d.ts +0 -58
- package/lib/components/molecules/content-reaction/types.d.ts +0 -77
- package/lib/components/molecules/currency-input/currency-input.component.d.ts +0 -40
- package/lib/components/molecules/currency-input/types.d.ts +0 -96
- package/lib/components/molecules/date-input/date-input.component.d.ts +0 -40
- package/lib/components/molecules/date-input/types.d.ts +0 -74
- package/lib/components/molecules/date-range-input/date-range-input.component.d.ts +0 -50
- package/lib/components/molecules/date-range-input/types.d.ts +0 -109
- package/lib/components/molecules/docs-api-table/docs-api-table.component.d.ts +0 -41
- package/lib/components/molecules/docs-api-table/types.d.ts +0 -62
- package/lib/components/molecules/docs-breadcrumb/docs-breadcrumb.component.d.ts +0 -31
- package/lib/components/molecules/docs-breadcrumb/types.d.ts +0 -20
- package/lib/components/molecules/docs-callout/docs-callout.component.d.ts +0 -17
- package/lib/components/molecules/docs-code-example/docs-code-example.component.d.ts +0 -45
- package/lib/components/molecules/docs-code-example/types.d.ts +0 -63
- package/lib/components/molecules/docs-nav-links/docs-nav-links.component.d.ts +0 -30
- package/lib/components/molecules/docs-nav-links/types.d.ts +0 -31
- package/lib/components/molecules/docs-search/docs-search.component.d.ts +0 -47
- package/lib/components/molecules/docs-search/types.d.ts +0 -27
- package/lib/components/molecules/docs-section/docs-section.component.d.ts +0 -29
- package/lib/components/molecules/docs-section/types.d.ts +0 -27
- package/lib/components/molecules/email-input/email-input.component.d.ts +0 -34
- package/lib/components/molecules/expandable-text/expandable-text.component.d.ts +0 -23
- package/lib/components/molecules/expandable-text/types.d.ts +0 -14
- package/lib/components/molecules/features-list/features-list.component.d.ts +0 -66
- package/lib/components/molecules/features-list/types.d.ts +0 -36
- package/lib/components/molecules/feedback-form/feedback-form.component.d.ts +0 -58
- package/lib/components/molecules/feedback-form/types.d.ts +0 -54
- package/lib/components/molecules/file-input/file-input.component.d.ts +0 -25
- package/lib/components/molecules/file-input/types.d.ts +0 -72
- package/lib/components/molecules/footer-links/footer-links.component.d.ts +0 -47
- package/lib/components/molecules/footer-links/types.d.ts +0 -50
- package/lib/components/molecules/glow-card/glow-card.component.d.ts +0 -60
- package/lib/components/molecules/glow-card/types.d.ts +0 -94
- package/lib/components/molecules/hint/hint.component.d.ts +0 -19
- package/lib/components/molecules/hour-input/hour-input.component.d.ts +0 -15
- package/lib/components/molecules/image-crop/image-crop.component.d.ts +0 -59
- package/lib/components/molecules/image-crop/index.d.ts +0 -1
- package/lib/components/molecules/info/info.component.d.ts +0 -9
- package/lib/components/molecules/info/types.d.ts +0 -10
- package/lib/components/molecules/language-selector/language-selector.component.d.ts +0 -40
- package/lib/components/molecules/language-selector/types.d.ts +0 -82
- package/lib/components/molecules/layered-card/layered-card.component.d.ts +0 -10
- package/lib/components/molecules/layered-card/types.d.ts +0 -15
- package/lib/components/molecules/link/link.component.d.ts +0 -24
- package/lib/components/molecules/link/types.d.ts +0 -19
- package/lib/components/molecules/linked-providers/linked-providers.component.d.ts +0 -30
- package/lib/components/molecules/linked-providers/types.d.ts +0 -38
- package/lib/components/molecules/links-accordion/links-accordion.component.d.ts +0 -61
- package/lib/components/molecules/links-accordion/types.d.ts +0 -39
- package/lib/components/molecules/links-cake/links-cake.component.d.ts +0 -17
- package/lib/components/molecules/links-cake/types.d.ts +0 -13
- package/lib/components/molecules/multi-select-search/multi-select-search.component.d.ts +0 -76
- package/lib/components/molecules/notes-box/notes-box.component.d.ts +0 -33
- package/lib/components/molecules/notes-box/types.d.ts +0 -35
- package/lib/components/molecules/number-from-to/number-from-to.component.d.ts +0 -27
- package/lib/components/molecules/number-from-to/types.d.ts +0 -76
- package/lib/components/molecules/number-input/number-input.component.d.ts +0 -16
- package/lib/components/molecules/number-stepper/number-stepper.component.d.ts +0 -38
- package/lib/components/molecules/number-stepper/types.d.ts +0 -88
- package/lib/components/molecules/page-links/page-links.component.d.ts +0 -29
- package/lib/components/molecules/page-links/types.d.ts +0 -38
- package/lib/components/molecules/pagination/pagination.component.d.ts +0 -15
- package/lib/components/molecules/pagination/types.d.ts +0 -41
- package/lib/components/molecules/password-input/password-input.component.d.ts +0 -37
- package/lib/components/molecules/phone-input/phone-input.component.d.ts +0 -59
- package/lib/components/molecules/phone-input/types.d.ts +0 -98
- package/lib/components/molecules/pill/pill.component.d.ts +0 -44
- package/lib/components/molecules/pill/types.d.ts +0 -63
- package/lib/components/molecules/pin-input/pin-input.component.d.ts +0 -21
- package/lib/components/molecules/pin-input/types.d.ts +0 -69
- package/lib/components/molecules/plain-code-box/plain-code-box.component.d.ts +0 -22
- package/lib/components/molecules/plain-code-box/types.d.ts +0 -10
- package/lib/components/molecules/popover-selector/popover-selector.component.d.ts +0 -42
- package/lib/components/molecules/popover-selector/types.d.ts +0 -69
- package/lib/components/molecules/progress-status/progress-status.component.d.ts +0 -23
- package/lib/components/molecules/progress-status/types.d.ts +0 -20
- package/lib/components/molecules/prompter/prompter.component.d.ts +0 -10
- package/lib/components/molecules/prompter/types.d.ts +0 -25
- package/lib/components/molecules/quote-box/quote-box.component.d.ts +0 -26
- package/lib/components/molecules/radio-input/radio-input.component.d.ts +0 -15
- package/lib/components/molecules/range-input/range-input.component.d.ts +0 -25
- package/lib/components/molecules/range-input/types.d.ts +0 -59
- package/lib/components/molecules/rating/rating.component.d.ts +0 -23
- package/lib/components/molecules/rating/types.d.ts +0 -41
- package/lib/components/molecules/refresher/refresher.component.d.ts +0 -84
- package/lib/components/molecules/refresher/types.d.ts +0 -86
- package/lib/components/molecules/searchbar/searchbar.component.d.ts +0 -43
- package/lib/components/molecules/searchbar/types.d.ts +0 -33
- package/lib/components/molecules/segment-control/segment-control.component.d.ts +0 -35
- package/lib/components/molecules/segment-control/types.d.ts +0 -46
- package/lib/components/molecules/select-input/select-input.component.d.ts +0 -57
- package/lib/components/molecules/select-search/select-search.component.d.ts +0 -78
- package/lib/components/molecules/share-buttons/share-buttons.component.d.ts +0 -22
- package/lib/components/molecules/share-buttons/types.d.ts +0 -108
- package/lib/components/molecules/stats-card/stats-card.component.d.ts +0 -20
- package/lib/components/molecules/stats-card/types.d.ts +0 -60
- package/lib/components/molecules/stepper/stepper.component.d.ts +0 -31
- package/lib/components/molecules/stepper/types.d.ts +0 -66
- package/lib/components/molecules/swipe-carousel/swipe-carousel.component.d.ts +0 -66
- package/lib/components/molecules/swipe-carousel/types.d.ts +0 -35
- package/lib/components/molecules/tabs/tabs.component.d.ts +0 -34
- package/lib/components/molecules/tabs/types.d.ts +0 -45
- package/lib/components/molecules/testimonial-card/testimonial-card.component.d.ts +0 -41
- package/lib/components/molecules/testimonial-card/types.d.ts +0 -25
- package/lib/components/molecules/text-input/text-input.component.d.ts +0 -42
- package/lib/components/molecules/textarea-input/textarea-input.component.d.ts +0 -46
- package/lib/components/molecules/textarea-input/types.d.ts +0 -74
- package/lib/components/molecules/timeline/timeline.component.d.ts +0 -14
- package/lib/components/molecules/timeline/types.d.ts +0 -39
- package/lib/components/molecules/title-block/title-block.component.d.ts +0 -12
- package/lib/components/molecules/title-block/types.d.ts +0 -15
- package/lib/components/molecules/toggle-input/toggle-input.component.d.ts +0 -39
- package/lib/components/molecules/toggle-input/types.d.ts +0 -30
- package/lib/components/molecules/update-banner/types.d.ts +0 -41
- package/lib/components/molecules/update-banner/update-banner.component.d.ts +0 -48
- package/lib/components/molecules/username-input/types.d.ts +0 -36
- package/lib/components/molecules/username-input/username-input.component.d.ts +0 -58
- package/lib/components/organisms/article/article.component.d.ts +0 -108
- package/lib/components/organisms/article/types.d.ts +0 -367
- package/lib/components/organisms/avatar-upload/avatar-upload.component.d.ts +0 -84
- package/lib/components/organisms/avatar-upload/types.d.ts +0 -62
- package/lib/components/organisms/banner/banner.component.d.ts +0 -16
- package/lib/components/organisms/banner/types.d.ts +0 -29
- package/lib/components/organisms/bottom-nav/bottom-nav.component.d.ts +0 -91
- package/lib/components/organisms/bottom-nav/types.d.ts +0 -120
- package/lib/components/organisms/cards-carousel/cards-carousel.component.d.ts +0 -36
- package/lib/components/organisms/cards-carousel/types.d.ts +0 -40
- package/lib/components/organisms/comment-section/comment-section.component.d.ts +0 -50
- package/lib/components/organisms/comment-section/types.d.ts +0 -144
- package/lib/components/organisms/company-footer/company-footer.component.d.ts +0 -37
- package/lib/components/organisms/company-footer/types.d.ts +0 -15
- package/lib/components/organisms/cookie-banner/cookie-banner.component.d.ts +0 -36
- package/lib/components/organisms/cookie-banner/types.d.ts +0 -62
- package/lib/components/organisms/data-table/data-table.component.d.ts +0 -63
- package/lib/components/organisms/data-table/types.d.ts +0 -219
- package/lib/components/organisms/docs-sidebar/docs-sidebar.component.d.ts +0 -51
- package/lib/components/organisms/docs-sidebar/types.d.ts +0 -93
- package/lib/components/organisms/docs-toc/docs-toc.component.d.ts +0 -62
- package/lib/components/organisms/docs-toc/types.d.ts +0 -62
- package/lib/components/organisms/faq/faq.component.d.ts +0 -46
- package/lib/components/organisms/faq/types.d.ts +0 -53
- package/lib/components/organisms/footer/footer.component.d.ts +0 -36
- package/lib/components/organisms/footer/types.d.ts +0 -16
- package/lib/components/organisms/form/factory.d.ts +0 -17
- package/lib/components/organisms/form/form-footer/form-footer.component.d.ts +0 -17
- package/lib/components/organisms/form/form.component.d.ts +0 -72
- package/lib/components/organisms/fun-header/fun-header.component.d.ts +0 -72
- package/lib/components/organisms/fun-header/types.d.ts +0 -28
- package/lib/components/organisms/header/header.component.d.ts +0 -22
- package/lib/components/organisms/header/types.d.ts +0 -16
- package/lib/components/organisms/infinite-list/infinite-list.component.d.ts +0 -113
- package/lib/components/organisms/infinite-list/types.d.ts +0 -197
- package/lib/components/organisms/item-list/item-list.component.d.ts +0 -43
- package/lib/components/organisms/item-list/types.d.ts +0 -126
- package/lib/components/organisms/login/login.component.d.ts +0 -79
- package/lib/components/organisms/login/types.d.ts +0 -70
- package/lib/components/organisms/menu/menu.component.d.ts +0 -44
- package/lib/components/organisms/menu/types.d.ts +0 -23
- package/lib/components/organisms/no-content/no-content.component.d.ts +0 -14
- package/lib/components/organisms/no-content/types.d.ts +0 -17
- package/lib/components/organisms/rotating-text/rotating-text.component.d.ts +0 -47
- package/lib/components/organisms/rotating-text/types.d.ts +0 -28
- package/lib/components/organisms/skeleton-layout/skeleton-layout.component.d.ts +0 -37
- package/lib/components/organisms/skeleton-layout/types.d.ts +0 -50
- package/lib/components/organisms/tabbed-content/tabbed-content.component.d.ts +0 -65
- package/lib/components/organisms/tabbed-content/types.d.ts +0 -53
- package/lib/components/organisms/terminal-404/terminal-404.component.d.ts +0 -42
- package/lib/components/organisms/terminal-404/types.d.ts +0 -22
- package/lib/components/organisms/testimonial-carousel/testimonial-carousel.component.d.ts +0 -33
- package/lib/components/organisms/testimonial-carousel/types.d.ts +0 -8
- package/lib/components/organisms/toolbar/toolbar.component.d.ts +0 -85
- package/lib/components/organisms/toolbar/types.d.ts +0 -31
- package/lib/components/organisms/wizard/types.d.ts +0 -42
- package/lib/components/organisms/wizard/wizard-footer/wizard-footer.component.d.ts +0 -23
- package/lib/components/organisms/wizard/wizard.component.d.ts +0 -27
- package/lib/components/templates/auth-background/auth-background.component.d.ts +0 -62
- package/lib/components/templates/auth-background/types.d.ts +0 -30
- package/lib/components/templates/docs-layout/docs-layout.component.d.ts +0 -42
- package/lib/components/templates/docs-layout/types.d.ts +0 -39
- package/lib/components/templates/docs-page/docs-page.component.d.ts +0 -61
- package/lib/components/templates/docs-page/types.d.ts +0 -121
- package/lib/components/templates/docs-shell/docs-shell.component.d.ts +0 -33
- package/lib/components/templates/docs-shell/types.d.ts +0 -152
- package/lib/components/templates/maintenance-page/maintenance-page.component.d.ts +0 -57
- package/lib/components/templates/maintenance-page/types.d.ts +0 -12
- package/lib/components/templates/page-content/page-content.component.d.ts +0 -107
- package/lib/components/templates/page-content/types.d.ts +0 -27
- package/lib/components/templates/page-template/page-template.component.d.ts +0 -54
- package/lib/components/templates/page-template/types.d.ts +0 -17
- package/lib/components/templates/page-wrapper/page-wrapper.component.d.ts +0 -99
- package/lib/components/templates/page-wrapper/types.d.ts +0 -26
- package/lib/components/templates/simple/simple.component.d.ts +0 -14
- package/lib/components/templates/simple/types.d.ts +0 -10
- package/lib/components/types.d.ts +0 -304
- package/lib/config/company-footer.config.d.ts +0 -118
- package/lib/config/index.d.ts +0 -4
- package/lib/services/ads/ads-loader.service.d.ts +0 -41
- package/lib/services/ads/ads.service.d.ts +0 -99
- package/lib/services/ads/config.d.ts +0 -53
- package/lib/services/ads/index.d.ts +0 -9
- package/lib/services/ads/types.d.ts +0 -106
- package/lib/services/app-config/app-config.service.d.ts +0 -115
- package/lib/services/app-config/config.d.ts +0 -31
- package/lib/services/app-config/index.d.ts +0 -47
- package/lib/services/app-config/types.d.ts +0 -54
- package/lib/services/app-config/version.d.ts +0 -64
- package/lib/services/app-version/app-version.service.d.ts +0 -64
- package/lib/services/app-version/config.d.ts +0 -35
- package/lib/services/app-version/index.d.ts +0 -23
- package/lib/services/app-version/types.d.ts +0 -35
- package/lib/services/auth/auth-state.service.d.ts +0 -106
- package/lib/services/auth/auth.service.d.ts +0 -429
- package/lib/services/auth/config.d.ts +0 -38
- package/lib/services/auth/device.service.d.ts +0 -101
- package/lib/services/auth/guards.d.ts +0 -126
- package/lib/services/auth/handoff.service.d.ts +0 -159
- package/lib/services/auth/index.d.ts +0 -89
- package/lib/services/auth/interceptor.d.ts +0 -22
- package/lib/services/auth/notification-action.service.d.ts +0 -34
- package/lib/services/auth/oauth-callback.component.d.ts +0 -34
- package/lib/services/auth/oauth.service.d.ts +0 -99
- package/lib/services/auth/org-switch.service.d.ts +0 -127
- package/lib/services/auth/session.service.d.ts +0 -60
- package/lib/services/auth/storage.service.d.ts +0 -52
- package/lib/services/auth/sync.service.d.ts +0 -49
- package/lib/services/auth/token.service.d.ts +0 -57
- package/lib/services/auth/types.d.ts +0 -862
- package/lib/services/confirmation-dialog/confirmation-dialog.service.d.ts +0 -71
- package/lib/services/confirmation-dialog/types.d.ts +0 -61
- package/lib/services/content/content-types/blog.d.ts +0 -148
- package/lib/services/content/content-types/documentation.d.ts +0 -183
- package/lib/services/content/content-types/news.d.ts +0 -162
- package/lib/services/content/index.d.ts +0 -49
- package/lib/services/content/transformer.d.ts +0 -96
- package/lib/services/content/types.d.ts +0 -220
- package/lib/services/docs/docs-navigation.service.d.ts +0 -51
- package/lib/services/donation/config.d.ts +0 -33
- package/lib/services/donation/donation.service.d.ts +0 -54
- package/lib/services/donation/index.d.ts +0 -25
- package/lib/services/donation/types.d.ts +0 -85
- package/lib/services/download.service.d.ts +0 -21
- package/lib/services/feedback/config.d.ts +0 -35
- package/lib/services/feedback/feedback.service.d.ts +0 -134
- package/lib/services/feedback/index.d.ts +0 -40
- package/lib/services/feedback/types.d.ts +0 -173
- package/lib/services/firebase/analytics-error-handler.d.ts +0 -54
- package/lib/services/firebase/analytics-router-tracker.d.ts +0 -51
- package/lib/services/firebase/analytics-types.d.ts +0 -221
- package/lib/services/firebase/analytics.service.d.ts +0 -256
- package/lib/services/firebase/config.d.ts +0 -49
- package/lib/services/firebase/firebase.service.d.ts +0 -303
- package/lib/services/firebase/firestore-collection.d.ts +0 -199
- package/lib/services/firebase/firestore.service.d.ts +0 -335
- package/lib/services/firebase/index.d.ts +0 -44
- package/lib/services/firebase/messaging.service.d.ts +0 -341
- package/lib/services/firebase/notifications.service.d.ts +0 -158
- package/lib/services/firebase/shared-config.d.ts +0 -151
- package/lib/services/firebase/storage.service.d.ts +0 -238
- package/lib/services/firebase/types.d.ts +0 -374
- package/lib/services/firebase/utils/path-builder.d.ts +0 -132
- package/lib/services/firebase/utils/query-builder.d.ts +0 -210
- package/lib/services/i18n/config.d.ts +0 -29
- package/lib/services/i18n/default-content.d.ts +0 -30
- package/lib/services/i18n/i18n.service.d.ts +0 -128
- package/lib/services/i18n/index.d.ts +0 -6
- package/lib/services/i18n/input-i18n.helper.d.ts +0 -70
- package/lib/services/i18n/translate.pipe.d.ts +0 -36
- package/lib/services/i18n/types.d.ts +0 -93
- package/lib/services/icons.service.d.ts +0 -9
- package/lib/services/image/image.service.d.ts +0 -76
- package/lib/services/image/index.d.ts +0 -2
- package/lib/services/image/types.d.ts +0 -74
- package/lib/services/in-app-browser.service.d.ts +0 -16
- package/lib/services/legal-link/legal-link.service.d.ts +0 -73
- package/lib/services/link-processor.service.d.ts +0 -104
- package/lib/services/local-storage.service.d.ts +0 -27
- package/lib/services/locale.service.d.ts +0 -52
- package/lib/services/markdown-article/legal-content.service.d.ts +0 -73
- package/lib/services/markdown-article/markdown-article-parser.d.ts +0 -38
- package/lib/services/markdown-article/markdown-article-parser.service.d.ts +0 -12
- package/lib/services/meta/index.d.ts +0 -2
- package/lib/services/meta/meta.service.d.ts +0 -23
- package/lib/services/meta/types.d.ts +0 -12
- package/lib/services/modal/modal.service.d.ts +0 -100
- package/lib/services/modal/simple-modal-content.component.d.ts +0 -19
- package/lib/services/modal/types.d.ts +0 -155
- package/lib/services/navigation/index.d.ts +0 -2
- package/lib/services/navigation/navigation.service.d.ts +0 -134
- package/lib/services/navigation/types.d.ts +0 -67
- package/lib/services/page-refresh/page-refresh.service.d.ts +0 -86
- package/lib/services/pagination/index.d.ts +0 -2
- package/lib/services/pagination/pagination.service.d.ts +0 -43
- package/lib/services/pagination/types.d.ts +0 -113
- package/lib/services/preferences/index.d.ts +0 -2
- package/lib/services/preferences/preferences.service.d.ts +0 -61
- package/lib/services/preferences/preferences.types.d.ts +0 -35
- package/lib/services/presets/config.d.ts +0 -32
- package/lib/services/presets/index.d.ts +0 -3
- package/lib/services/presets/preset.service.d.ts +0 -69
- package/lib/services/presets/types.d.ts +0 -39
- package/lib/services/qr-generator/qr-generator.service.d.ts +0 -115
- package/lib/services/qr-generator/types.d.ts +0 -141
- package/lib/services/refreshable-stream/index.d.ts +0 -7
- package/lib/services/refreshable-stream/refreshable-stream.d.ts +0 -113
- package/lib/services/skeleton/config.d.ts +0 -30
- package/lib/services/skeleton/directives/loading.directive.d.ts +0 -71
- package/lib/services/skeleton/index.d.ts +0 -10
- package/lib/services/skeleton/skeleton.service.d.ts +0 -127
- package/lib/services/skeleton/templates/detail-skeleton.component.d.ts +0 -18
- package/lib/services/skeleton/templates/form-skeleton.component.d.ts +0 -22
- package/lib/services/skeleton/templates/grid-skeleton.component.d.ts +0 -18
- package/lib/services/skeleton/templates/list-skeleton.component.d.ts +0 -17
- package/lib/services/skeleton/templates/profile-skeleton.component.d.ts +0 -20
- package/lib/services/skeleton/templates/table-skeleton.component.d.ts +0 -17
- package/lib/services/skeleton/types.d.ts +0 -111
- package/lib/services/theme.service.d.ts +0 -76
- package/lib/services/toast.service.d.ts +0 -28
- package/lib/services/types.d.ts +0 -1
- package/lib/shared/constants/storage.d.ts +0 -2
- package/lib/shared/pipes/process-links.pipe.d.ts +0 -55
- package/lib/shared/utils/datetime.d.ts +0 -21
- package/lib/shared/utils/dom.d.ts +0 -13
- package/lib/shared/utils/form-defaults.d.ts +0 -30
- package/lib/shared/utils/styles.d.ts +0 -13
- package/lib/shared/utils/text.d.ts +0 -11
- package/lib/version.d.ts +0 -5
- package/public-api.d.ts +0 -316
|
@@ -1,379 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, inject, Input, Output, EventEmitter } from '@angular/core';
|
|
3
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { IonButton, IonIcon, IonInput } from '@ionic/angular/standalone';
|
|
5
|
-
import { addIcons } from 'ionicons';
|
|
6
|
-
import { addOutline, removeOutline } from 'ionicons/icons';
|
|
7
|
-
import { I18nService } from '../../../services/i18n';
|
|
8
|
-
import { ComponentStates } from '../../types';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/forms";
|
|
11
|
-
addIcons({ addOutline, removeOutline });
|
|
12
|
-
/**
|
|
13
|
-
* val-number-stepper
|
|
14
|
-
*
|
|
15
|
-
* A number input with increment/decrement buttons, ideal for quantity selection.
|
|
16
|
-
*
|
|
17
|
-
* @example Basic usage
|
|
18
|
-
* ```html
|
|
19
|
-
* <val-number-stepper
|
|
20
|
-
* [props]="{
|
|
21
|
-
* control: quantityControl,
|
|
22
|
-
* min: 1,
|
|
23
|
-
* max: 100
|
|
24
|
-
* }"
|
|
25
|
-
* ></val-number-stepper>
|
|
26
|
-
* ```
|
|
27
|
-
*
|
|
28
|
-
* @example With pricing
|
|
29
|
-
* ```html
|
|
30
|
-
* <val-number-stepper
|
|
31
|
-
* [props]="{
|
|
32
|
-
* control: ticketControl,
|
|
33
|
-
* min: 1,
|
|
34
|
-
* max: 50,
|
|
35
|
-
* unitPrice: 10,
|
|
36
|
-
* currency: 'MXN',
|
|
37
|
-
* currencySymbol: '$',
|
|
38
|
-
* showTotal: true,
|
|
39
|
-
* unitLabel: 'boletos',
|
|
40
|
-
* unitLabelSingular: 'boleto'
|
|
41
|
-
* }"
|
|
42
|
-
* (valueChange)="onQuantityChange($event)"
|
|
43
|
-
* ></val-number-stepper>
|
|
44
|
-
* ```
|
|
45
|
-
*
|
|
46
|
-
* @example With presets
|
|
47
|
-
* ```html
|
|
48
|
-
* <val-number-stepper
|
|
49
|
-
* [props]="{
|
|
50
|
-
* control: ticketControl,
|
|
51
|
-
* min: 1,
|
|
52
|
-
* max: 100,
|
|
53
|
-
* showPresets: true,
|
|
54
|
-
* presets: [
|
|
55
|
-
* { value: 1 },
|
|
56
|
-
* { value: 5, popular: true },
|
|
57
|
-
* { value: 10 },
|
|
58
|
-
* { value: 25 }
|
|
59
|
-
* ]
|
|
60
|
-
* }"
|
|
61
|
-
* ></val-number-stepper>
|
|
62
|
-
* ```
|
|
63
|
-
*/
|
|
64
|
-
export class NumberStepperComponent {
|
|
65
|
-
constructor() {
|
|
66
|
-
this.valueChange = new EventEmitter();
|
|
67
|
-
this.states = ComponentStates;
|
|
68
|
-
this.i18n = inject(I18nService);
|
|
69
|
-
this.valueSubscription = null;
|
|
70
|
-
}
|
|
71
|
-
/** Get decrement button aria-label with i18n fallback */
|
|
72
|
-
getDecrementLabel() {
|
|
73
|
-
return this.props.decrementLabel || this.i18n.t('decrease');
|
|
74
|
-
}
|
|
75
|
-
/** Get increment button aria-label with i18n fallback */
|
|
76
|
-
getIncrementLabel() {
|
|
77
|
-
return this.props.incrementLabel || this.i18n.t('increase');
|
|
78
|
-
}
|
|
79
|
-
ngOnInit() {
|
|
80
|
-
// Ensure initial value is within bounds
|
|
81
|
-
this.clampValue();
|
|
82
|
-
// Subscribe to value changes
|
|
83
|
-
this.valueSubscription = this.props.control.valueChanges.subscribe(() => {
|
|
84
|
-
this.clampValue();
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
ngOnDestroy() {
|
|
88
|
-
this.valueSubscription?.unsubscribe();
|
|
89
|
-
}
|
|
90
|
-
get currentValue() {
|
|
91
|
-
return this.props.control.value ?? this.props.min ?? 0;
|
|
92
|
-
}
|
|
93
|
-
get isAtMin() {
|
|
94
|
-
if (this.props.min === undefined)
|
|
95
|
-
return false;
|
|
96
|
-
return this.currentValue <= this.props.min;
|
|
97
|
-
}
|
|
98
|
-
get isAtMax() {
|
|
99
|
-
if (this.props.max === undefined)
|
|
100
|
-
return false;
|
|
101
|
-
return this.currentValue >= this.props.max;
|
|
102
|
-
}
|
|
103
|
-
get totalPrice() {
|
|
104
|
-
return this.currentValue * (this.props.unitPrice || 0);
|
|
105
|
-
}
|
|
106
|
-
increment() {
|
|
107
|
-
const step = this.props.step || 1;
|
|
108
|
-
const newValue = this.currentValue + step;
|
|
109
|
-
this.setValue(newValue);
|
|
110
|
-
}
|
|
111
|
-
decrement() {
|
|
112
|
-
const step = this.props.step || 1;
|
|
113
|
-
const newValue = this.currentValue - step;
|
|
114
|
-
this.setValue(newValue);
|
|
115
|
-
}
|
|
116
|
-
setValue(value) {
|
|
117
|
-
const previousValue = this.currentValue;
|
|
118
|
-
const clampedValue = this.clamp(value);
|
|
119
|
-
if (clampedValue !== previousValue) {
|
|
120
|
-
this.props.control.setValue(clampedValue);
|
|
121
|
-
this.emitChange(clampedValue, previousValue);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
onInputBlur() {
|
|
125
|
-
this.clampValue();
|
|
126
|
-
}
|
|
127
|
-
clampValue() {
|
|
128
|
-
const currentVal = this.props.control.value;
|
|
129
|
-
const clampedVal = this.clamp(currentVal);
|
|
130
|
-
if (currentVal !== clampedVal) {
|
|
131
|
-
this.props.control.setValue(clampedVal);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
clamp(value) {
|
|
135
|
-
let result = value;
|
|
136
|
-
if (this.props.min !== undefined && result < this.props.min) {
|
|
137
|
-
result = this.props.min;
|
|
138
|
-
}
|
|
139
|
-
if (this.props.max !== undefined && result > this.props.max) {
|
|
140
|
-
result = this.props.max;
|
|
141
|
-
}
|
|
142
|
-
return result;
|
|
143
|
-
}
|
|
144
|
-
emitChange(value, previousValue) {
|
|
145
|
-
this.valueChange.emit({
|
|
146
|
-
value,
|
|
147
|
-
previousValue,
|
|
148
|
-
totalPrice: this.props.unitPrice ? value * this.props.unitPrice : undefined,
|
|
149
|
-
atMin: this.isAtMin,
|
|
150
|
-
atMax: this.isAtMax,
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
getLabel() {
|
|
154
|
-
return this.props.label || '';
|
|
155
|
-
}
|
|
156
|
-
getUnitLabel() {
|
|
157
|
-
if (this.currentValue === 1 && this.props.unitLabelSingular) {
|
|
158
|
-
return this.props.unitLabelSingular;
|
|
159
|
-
}
|
|
160
|
-
return this.props.unitLabel || '';
|
|
161
|
-
}
|
|
162
|
-
formatPrice(amount) {
|
|
163
|
-
const symbol = this.props.currencySymbol || '$';
|
|
164
|
-
const formatted = amount.toLocaleString('es-MX', {
|
|
165
|
-
minimumFractionDigits: 2,
|
|
166
|
-
maximumFractionDigits: 2,
|
|
167
|
-
});
|
|
168
|
-
return `${symbol}${formatted}`;
|
|
169
|
-
}
|
|
170
|
-
getColor() {
|
|
171
|
-
if (this.props.color) {
|
|
172
|
-
return `var(--ion-color-${this.props.color})`;
|
|
173
|
-
}
|
|
174
|
-
return 'var(--ion-color-primary)';
|
|
175
|
-
}
|
|
176
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberStepperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
177
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: NumberStepperComponent, isStandalone: true, selector: "val-number-stepper", inputs: { props: "props" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: `
|
|
178
|
-
<div
|
|
179
|
-
class="number-stepper-container"
|
|
180
|
-
[class]="props.cssClass"
|
|
181
|
-
[class.size-small]="props.size === 'small'"
|
|
182
|
-
[class.size-medium]="props.size === 'medium' || !props.size"
|
|
183
|
-
[class.size-large]="props.size === 'large'"
|
|
184
|
-
[class.layout-vertical]="props.layout === 'vertical'"
|
|
185
|
-
[class.disabled]="props.state === states.DISABLED"
|
|
186
|
-
[style.--stepper-color]="getColor()"
|
|
187
|
-
>
|
|
188
|
-
@if (props.label) {
|
|
189
|
-
<label class="stepper-label">{{ getLabel() }}</label>
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
<!-- Preset buttons -->
|
|
193
|
-
@if (props.showPresets && props.presets?.length) {
|
|
194
|
-
<div class="preset-buttons">
|
|
195
|
-
@for (preset of props.presets; track preset.value) {
|
|
196
|
-
<button
|
|
197
|
-
type="button"
|
|
198
|
-
class="preset-button"
|
|
199
|
-
[class.active]="currentValue === preset.value"
|
|
200
|
-
[class.popular]="preset.popular"
|
|
201
|
-
(click)="setValue(preset.value)"
|
|
202
|
-
[disabled]="props.state === states.DISABLED"
|
|
203
|
-
>
|
|
204
|
-
{{ preset.label || preset.value }}
|
|
205
|
-
</button>
|
|
206
|
-
}
|
|
207
|
-
</div>
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
<!-- Stepper controls -->
|
|
211
|
-
<div class="stepper-controls">
|
|
212
|
-
<ion-button
|
|
213
|
-
class="stepper-button decrement"
|
|
214
|
-
[color]="props.color || 'primary'"
|
|
215
|
-
fill="outline"
|
|
216
|
-
[shape]="props.buttonShape || 'round'"
|
|
217
|
-
[disabled]="isAtMin || props.state === states.DISABLED"
|
|
218
|
-
(click)="decrement()"
|
|
219
|
-
[attr.aria-label]="getDecrementLabel()"
|
|
220
|
-
>
|
|
221
|
-
<ion-icon slot="icon-only" name="remove-outline"></ion-icon>
|
|
222
|
-
</ion-button>
|
|
223
|
-
|
|
224
|
-
<div class="value-display">
|
|
225
|
-
@if (props.showInput !== false && props.editableInput) {
|
|
226
|
-
<ion-input
|
|
227
|
-
type="number"
|
|
228
|
-
[formControl]="props.control"
|
|
229
|
-
[min]="props.min"
|
|
230
|
-
[max]="props.max"
|
|
231
|
-
[step]="props.step || 1"
|
|
232
|
-
[disabled]="props.state === states.DISABLED"
|
|
233
|
-
class="value-input"
|
|
234
|
-
(ionBlur)="onInputBlur()"
|
|
235
|
-
></ion-input>
|
|
236
|
-
} @else {
|
|
237
|
-
<span class="value-text">{{ currentValue }}</span>
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
@if (props.unitLabel) {
|
|
241
|
-
<span class="unit-label">{{ getUnitLabel() }}</span>
|
|
242
|
-
}
|
|
243
|
-
</div>
|
|
244
|
-
|
|
245
|
-
<ion-button
|
|
246
|
-
class="stepper-button increment"
|
|
247
|
-
[color]="props.color || 'primary'"
|
|
248
|
-
fill="outline"
|
|
249
|
-
[shape]="props.buttonShape || 'round'"
|
|
250
|
-
[disabled]="isAtMax || props.state === states.DISABLED"
|
|
251
|
-
(click)="increment()"
|
|
252
|
-
[attr.aria-label]="getIncrementLabel()"
|
|
253
|
-
>
|
|
254
|
-
<ion-icon slot="icon-only" name="add-outline"></ion-icon>
|
|
255
|
-
</ion-button>
|
|
256
|
-
</div>
|
|
257
|
-
|
|
258
|
-
<!-- Price display -->
|
|
259
|
-
@if (props.showTotal && props.unitPrice) {
|
|
260
|
-
<div class="price-display">
|
|
261
|
-
<span class="price-calculation">
|
|
262
|
-
{{ currentValue }} × {{ formatPrice(props.unitPrice) }}
|
|
263
|
-
</span>
|
|
264
|
-
<span class="price-equals">=</span>
|
|
265
|
-
<span class="price-total">{{ formatPrice(totalPrice) }}</span>
|
|
266
|
-
</div>
|
|
267
|
-
}
|
|
268
|
-
|
|
269
|
-
@if (props.hint) {
|
|
270
|
-
<span class="stepper-hint">{{ props.hint }}</span>
|
|
271
|
-
}
|
|
272
|
-
</div>
|
|
273
|
-
`, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block}.number-stepper-container{--stepper-color: var(--ion-color-primary);display:flex;flex-direction:column;align-items:center;gap:12px}.number-stepper-container.disabled{opacity:.5;pointer-events:none}.stepper-label{font-size:14px;font-weight:500;color:var(--ion-color-dark);margin-bottom:4px}.preset-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.preset-button{padding:6px 16px;border:1px solid var(--ion-color-medium-shade);border-radius:20px;background:transparent;color:var(--ion-color-dark);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.preset-button:hover:not(:disabled){border-color:var(--stepper-color);color:var(--stepper-color)}.preset-button.active{background:var(--stepper-color);border-color:var(--stepper-color);color:#fff}.preset-button.popular{position:relative}.preset-button.popular:after{content:\"\\2605\";position:absolute;top:-8px;right:-4px;font-size:12px;color:var(--ion-color-warning)}.preset-button:disabled{opacity:.5;cursor:not-allowed}.stepper-controls{display:flex;align-items:center;gap:16px}.stepper-button{--padding-start: 0;--padding-end: 0}.stepper-button::part(native){padding:8px}.stepper-button ion-icon{font-size:24px}.value-display{display:flex;flex-direction:column;align-items:center;min-width:80px;text-align:center}.value-text{font-size:32px;font-weight:700;color:var(--ion-color-dark);font-variant-numeric:tabular-nums}.value-input{text-align:center;font-size:32px;font-weight:700;max-width:100px}.value-input::part(native){text-align:center}.unit-label{font-size:12px;color:var(--ion-color-medium);margin-top:2px}.price-display{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--ion-color-light);border-radius:8px;font-size:14px}.price-calculation{color:var(--ion-color-medium-shade)}.price-equals{color:var(--ion-color-medium)}.price-total{font-size:18px;font-weight:700;color:var(--stepper-color)}.stepper-hint{font-size:12px;color:var(--ion-color-medium)}.size-small,.size-small .stepper-controls{gap:8px}.size-small .stepper-button{--size: 32px}.size-small .stepper-button ion-icon{font-size:18px}.size-small .value-display{min-width:50px}.size-small .value-text,.size-small .value-input{font-size:20px}.size-small .preset-button,.size-small .price-display{padding:4px 12px;font-size:12px}.size-small .price-total{font-size:14px}.size-large{gap:16px}.size-large .stepper-controls{gap:24px}.size-large .stepper-button{--size: 56px}.size-large .stepper-button ion-icon{font-size:32px}.size-large .value-display{min-width:120px}.size-large .value-text,.size-large .value-input{font-size:48px}.size-large .preset-button{padding:8px 20px;font-size:16px}.size-large .price-display{padding:12px 24px;font-size:16px}.size-large .price-total{font-size:24px}.layout-vertical .stepper-controls{flex-direction:column-reverse;gap:8px}.layout-vertical .stepper-button{width:100%;max-width:120px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }] }); }
|
|
274
|
-
}
|
|
275
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberStepperComponent, decorators: [{
|
|
276
|
-
type: Component,
|
|
277
|
-
args: [{ selector: 'val-number-stepper', standalone: true, imports: [CommonModule, ReactiveFormsModule, IonButton, IonIcon, IonInput], template: `
|
|
278
|
-
<div
|
|
279
|
-
class="number-stepper-container"
|
|
280
|
-
[class]="props.cssClass"
|
|
281
|
-
[class.size-small]="props.size === 'small'"
|
|
282
|
-
[class.size-medium]="props.size === 'medium' || !props.size"
|
|
283
|
-
[class.size-large]="props.size === 'large'"
|
|
284
|
-
[class.layout-vertical]="props.layout === 'vertical'"
|
|
285
|
-
[class.disabled]="props.state === states.DISABLED"
|
|
286
|
-
[style.--stepper-color]="getColor()"
|
|
287
|
-
>
|
|
288
|
-
@if (props.label) {
|
|
289
|
-
<label class="stepper-label">{{ getLabel() }}</label>
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
<!-- Preset buttons -->
|
|
293
|
-
@if (props.showPresets && props.presets?.length) {
|
|
294
|
-
<div class="preset-buttons">
|
|
295
|
-
@for (preset of props.presets; track preset.value) {
|
|
296
|
-
<button
|
|
297
|
-
type="button"
|
|
298
|
-
class="preset-button"
|
|
299
|
-
[class.active]="currentValue === preset.value"
|
|
300
|
-
[class.popular]="preset.popular"
|
|
301
|
-
(click)="setValue(preset.value)"
|
|
302
|
-
[disabled]="props.state === states.DISABLED"
|
|
303
|
-
>
|
|
304
|
-
{{ preset.label || preset.value }}
|
|
305
|
-
</button>
|
|
306
|
-
}
|
|
307
|
-
</div>
|
|
308
|
-
}
|
|
309
|
-
|
|
310
|
-
<!-- Stepper controls -->
|
|
311
|
-
<div class="stepper-controls">
|
|
312
|
-
<ion-button
|
|
313
|
-
class="stepper-button decrement"
|
|
314
|
-
[color]="props.color || 'primary'"
|
|
315
|
-
fill="outline"
|
|
316
|
-
[shape]="props.buttonShape || 'round'"
|
|
317
|
-
[disabled]="isAtMin || props.state === states.DISABLED"
|
|
318
|
-
(click)="decrement()"
|
|
319
|
-
[attr.aria-label]="getDecrementLabel()"
|
|
320
|
-
>
|
|
321
|
-
<ion-icon slot="icon-only" name="remove-outline"></ion-icon>
|
|
322
|
-
</ion-button>
|
|
323
|
-
|
|
324
|
-
<div class="value-display">
|
|
325
|
-
@if (props.showInput !== false && props.editableInput) {
|
|
326
|
-
<ion-input
|
|
327
|
-
type="number"
|
|
328
|
-
[formControl]="props.control"
|
|
329
|
-
[min]="props.min"
|
|
330
|
-
[max]="props.max"
|
|
331
|
-
[step]="props.step || 1"
|
|
332
|
-
[disabled]="props.state === states.DISABLED"
|
|
333
|
-
class="value-input"
|
|
334
|
-
(ionBlur)="onInputBlur()"
|
|
335
|
-
></ion-input>
|
|
336
|
-
} @else {
|
|
337
|
-
<span class="value-text">{{ currentValue }}</span>
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
@if (props.unitLabel) {
|
|
341
|
-
<span class="unit-label">{{ getUnitLabel() }}</span>
|
|
342
|
-
}
|
|
343
|
-
</div>
|
|
344
|
-
|
|
345
|
-
<ion-button
|
|
346
|
-
class="stepper-button increment"
|
|
347
|
-
[color]="props.color || 'primary'"
|
|
348
|
-
fill="outline"
|
|
349
|
-
[shape]="props.buttonShape || 'round'"
|
|
350
|
-
[disabled]="isAtMax || props.state === states.DISABLED"
|
|
351
|
-
(click)="increment()"
|
|
352
|
-
[attr.aria-label]="getIncrementLabel()"
|
|
353
|
-
>
|
|
354
|
-
<ion-icon slot="icon-only" name="add-outline"></ion-icon>
|
|
355
|
-
</ion-button>
|
|
356
|
-
</div>
|
|
357
|
-
|
|
358
|
-
<!-- Price display -->
|
|
359
|
-
@if (props.showTotal && props.unitPrice) {
|
|
360
|
-
<div class="price-display">
|
|
361
|
-
<span class="price-calculation">
|
|
362
|
-
{{ currentValue }} × {{ formatPrice(props.unitPrice) }}
|
|
363
|
-
</span>
|
|
364
|
-
<span class="price-equals">=</span>
|
|
365
|
-
<span class="price-total">{{ formatPrice(totalPrice) }}</span>
|
|
366
|
-
</div>
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
@if (props.hint) {
|
|
370
|
-
<span class="stepper-hint">{{ props.hint }}</span>
|
|
371
|
-
}
|
|
372
|
-
</div>
|
|
373
|
-
`, styles: ["@charset \"UTF-8\";:host{display:block}.number-stepper-container{--stepper-color: var(--ion-color-primary);display:flex;flex-direction:column;align-items:center;gap:12px}.number-stepper-container.disabled{opacity:.5;pointer-events:none}.stepper-label{font-size:14px;font-weight:500;color:var(--ion-color-dark);margin-bottom:4px}.preset-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.preset-button{padding:6px 16px;border:1px solid var(--ion-color-medium-shade);border-radius:20px;background:transparent;color:var(--ion-color-dark);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.preset-button:hover:not(:disabled){border-color:var(--stepper-color);color:var(--stepper-color)}.preset-button.active{background:var(--stepper-color);border-color:var(--stepper-color);color:#fff}.preset-button.popular{position:relative}.preset-button.popular:after{content:\"\\2605\";position:absolute;top:-8px;right:-4px;font-size:12px;color:var(--ion-color-warning)}.preset-button:disabled{opacity:.5;cursor:not-allowed}.stepper-controls{display:flex;align-items:center;gap:16px}.stepper-button{--padding-start: 0;--padding-end: 0}.stepper-button::part(native){padding:8px}.stepper-button ion-icon{font-size:24px}.value-display{display:flex;flex-direction:column;align-items:center;min-width:80px;text-align:center}.value-text{font-size:32px;font-weight:700;color:var(--ion-color-dark);font-variant-numeric:tabular-nums}.value-input{text-align:center;font-size:32px;font-weight:700;max-width:100px}.value-input::part(native){text-align:center}.unit-label{font-size:12px;color:var(--ion-color-medium);margin-top:2px}.price-display{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--ion-color-light);border-radius:8px;font-size:14px}.price-calculation{color:var(--ion-color-medium-shade)}.price-equals{color:var(--ion-color-medium)}.price-total{font-size:18px;font-weight:700;color:var(--stepper-color)}.stepper-hint{font-size:12px;color:var(--ion-color-medium)}.size-small,.size-small .stepper-controls{gap:8px}.size-small .stepper-button{--size: 32px}.size-small .stepper-button ion-icon{font-size:18px}.size-small .value-display{min-width:50px}.size-small .value-text,.size-small .value-input{font-size:20px}.size-small .preset-button,.size-small .price-display{padding:4px 12px;font-size:12px}.size-small .price-total{font-size:14px}.size-large{gap:16px}.size-large .stepper-controls{gap:24px}.size-large .stepper-button{--size: 56px}.size-large .stepper-button ion-icon{font-size:32px}.size-large .value-display{min-width:120px}.size-large .value-text,.size-large .value-input{font-size:48px}.size-large .preset-button{padding:8px 20px;font-size:16px}.size-large .price-display{padding:12px 24px;font-size:16px}.size-large .price-total{font-size:24px}.layout-vertical .stepper-controls{flex-direction:column-reverse;gap:8px}.layout-vertical .stepper-button{width:100%;max-width:120px}\n"] }]
|
|
374
|
-
}], propDecorators: { props: [{
|
|
375
|
-
type: Input
|
|
376
|
-
}], valueChange: [{
|
|
377
|
-
type: Output
|
|
378
|
-
}] } });
|
|
379
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLXN0ZXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9udW1iZXItc3RlcHBlci9udW1iZXItc3RlcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQUc5QyxRQUFRLENBQUMsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQztBQXlHeEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1ERztBQUNILE1BQU0sT0FBTyxzQkFBc0I7SUEzSm5DO1FBOEpZLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQTRCLENBQUM7UUFFckUsV0FBTSxHQUFHLGVBQWUsQ0FBQztRQUVqQixTQUFJLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNCLHNCQUFpQixHQUF3QixJQUFJLENBQUM7S0E2SHZEO0lBM0hDLHlEQUF5RDtJQUN6RCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCx5REFBeUQ7SUFDekQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsUUFBUTtRQUNOLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFbEIsNkJBQTZCO1FBQzdCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN0RSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLFNBQVM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQUksT0FBTztRQUNULElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssU0FBUztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQy9DLE9BQU8sSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFNBQVM7UUFDUCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7UUFDbEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDMUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQztRQUNsQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNwQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3hDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdkMsSUFBSSxZQUFZLEtBQUssYUFBYSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQy9DLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRU8sVUFBVTtRQUNoQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDNUMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxQyxJQUFJLFVBQVUsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFTyxLQUFLLENBQUMsS0FBYTtRQUN6QixJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxTQUFTLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDNUQsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQzFCLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLFNBQVMsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUM1RCxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDMUIsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxVQUFVLENBQUMsS0FBYSxFQUFFLGFBQXFCO1FBQ3JELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ3BCLEtBQUs7WUFDTCxhQUFhO1lBQ2IsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDM0UsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ25CLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTztTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDNUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDO1FBQ3RDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQWM7UUFDeEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLElBQUksR0FBRyxDQUFDO1FBQ2hELE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFO1lBQy9DLHFCQUFxQixFQUFFLENBQUM7WUFDeEIscUJBQXFCLEVBQUUsQ0FBQztTQUN6QixDQUFDLENBQUM7UUFDSCxPQUFPLEdBQUcsTUFBTSxHQUFHLFNBQVMsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3JCLE9BQU8sbUJBQW1CLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUM7UUFDaEQsQ0FBQztRQUNELE9BQU8sMEJBQTBCLENBQUM7SUFDcEMsQ0FBQzsrR0FwSVUsc0JBQXNCO21HQUF0QixzQkFBc0IsbUpBdkp2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ0dULDY3RkFqR1MsWUFBWSw4QkFBRSxtQkFBbUIsMFRBQUUsU0FBUyxvUEFBRSxPQUFPLDJKQUFFLFFBQVE7OzRGQXdKOUQsc0JBQXNCO2tCQTNKbEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLFlBQ2hFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnR1Q7OEJBd0RRLEtBQUs7c0JBQWIsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSW9uQnV0dG9uLCBJb25JY29uLCBJb25JbnB1dCB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBhZGRJY29ucyB9IGZyb20gJ2lvbmljb25zJztcbmltcG9ydCB7IGFkZE91dGxpbmUsIHJlbW92ZU91dGxpbmUgfSBmcm9tICdpb25pY29ucy9pY29ucyc7XG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgQ29tcG9uZW50U3RhdGVzIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgTnVtYmVyU3RlcHBlck1ldGFkYXRhLCBOdW1iZXJTdGVwcGVyQ2hhbmdlRXZlbnQgfSBmcm9tICcuL3R5cGVzJztcblxuYWRkSWNvbnMoeyBhZGRPdXRsaW5lLCByZW1vdmVPdXRsaW5lIH0pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbnVtYmVyLXN0ZXBwZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBJb25CdXR0b24sIElvbkljb24sIElvbklucHV0XSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cIm51bWJlci1zdGVwcGVyLWNvbnRhaW5lclwiXG4gICAgICBbY2xhc3NdPVwicHJvcHMuY3NzQ2xhc3NcIlxuICAgICAgW2NsYXNzLnNpemUtc21hbGxdPVwicHJvcHMuc2l6ZSA9PT0gJ3NtYWxsJ1wiXG4gICAgICBbY2xhc3Muc2l6ZS1tZWRpdW1dPVwicHJvcHMuc2l6ZSA9PT0gJ21lZGl1bScgfHwgIXByb3BzLnNpemVcIlxuICAgICAgW2NsYXNzLnNpemUtbGFyZ2VdPVwicHJvcHMuc2l6ZSA9PT0gJ2xhcmdlJ1wiXG4gICAgICBbY2xhc3MubGF5b3V0LXZlcnRpY2FsXT1cInByb3BzLmxheW91dCA9PT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwicHJvcHMuc3RhdGUgPT09IHN0YXRlcy5ESVNBQkxFRFwiXG4gICAgICBbc3R5bGUuLS1zdGVwcGVyLWNvbG9yXT1cImdldENvbG9yKClcIlxuICAgID5cbiAgICAgIEBpZiAocHJvcHMubGFiZWwpIHtcbiAgICAgICAgPGxhYmVsIGNsYXNzPVwic3RlcHBlci1sYWJlbFwiPnt7IGdldExhYmVsKCkgfX08L2xhYmVsPlxuICAgICAgfVxuXG4gICAgICA8IS0tIFByZXNldCBidXR0b25zIC0tPlxuICAgICAgQGlmIChwcm9wcy5zaG93UHJlc2V0cyAmJiBwcm9wcy5wcmVzZXRzPy5sZW5ndGgpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInByZXNldC1idXR0b25zXCI+XG4gICAgICAgICAgQGZvciAocHJlc2V0IG9mIHByb3BzLnByZXNldHM7IHRyYWNrIHByZXNldC52YWx1ZSkge1xuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJwcmVzZXQtYnV0dG9uXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJjdXJyZW50VmFsdWUgPT09IHByZXNldC52YWx1ZVwiXG4gICAgICAgICAgICAgIFtjbGFzcy5wb3B1bGFyXT1cInByZXNldC5wb3B1bGFyXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInNldFZhbHVlKHByZXNldC52YWx1ZSlcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicHJvcHMuc3RhdGUgPT09IHN0YXRlcy5ESVNBQkxFRFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHt7IHByZXNldC5sYWJlbCB8fCBwcmVzZXQudmFsdWUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG5cbiAgICAgIDwhLS0gU3RlcHBlciBjb250cm9scyAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdGVwcGVyLWNvbnRyb2xzXCI+XG4gICAgICAgIDxpb24tYnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJzdGVwcGVyLWJ1dHRvbiBkZWNyZW1lbnRcIlxuICAgICAgICAgIFtjb2xvcl09XCJwcm9wcy5jb2xvciB8fCAncHJpbWFyeSdcIlxuICAgICAgICAgIGZpbGw9XCJvdXRsaW5lXCJcbiAgICAgICAgICBbc2hhcGVdPVwicHJvcHMuYnV0dG9uU2hhcGUgfHwgJ3JvdW5kJ1wiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImlzQXRNaW4gfHwgcHJvcHMuc3RhdGUgPT09IHN0YXRlcy5ESVNBQkxFRFwiXG4gICAgICAgICAgKGNsaWNrKT1cImRlY3JlbWVudCgpXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImdldERlY3JlbWVudExhYmVsKClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGlvbi1pY29uIHNsb3Q9XCJpY29uLW9ubHlcIiBuYW1lPVwicmVtb3ZlLW91dGxpbmVcIj48L2lvbi1pY29uPlxuICAgICAgICA8L2lvbi1idXR0b24+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlLWRpc3BsYXlcIj5cbiAgICAgICAgICBAaWYgKHByb3BzLnNob3dJbnB1dCAhPT0gZmFsc2UgJiYgcHJvcHMuZWRpdGFibGVJbnB1dCkge1xuICAgICAgICAgICAgPGlvbi1pbnB1dFxuICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cInByb3BzLmNvbnRyb2xcIlxuICAgICAgICAgICAgICBbbWluXT1cInByb3BzLm1pblwiXG4gICAgICAgICAgICAgIFttYXhdPVwicHJvcHMubWF4XCJcbiAgICAgICAgICAgICAgW3N0ZXBdPVwicHJvcHMuc3RlcCB8fCAxXCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInByb3BzLnN0YXRlID09PSBzdGF0ZXMuRElTQUJMRURcIlxuICAgICAgICAgICAgICBjbGFzcz1cInZhbHVlLWlucHV0XCJcbiAgICAgICAgICAgICAgKGlvbkJsdXIpPVwib25JbnB1dEJsdXIoKVwiXG4gICAgICAgICAgICA+PC9pb24taW5wdXQ+XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlLXRleHRcIj57eyBjdXJyZW50VmFsdWUgfX08L3NwYW4+XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIChwcm9wcy51bml0TGFiZWwpIHtcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidW5pdC1sYWJlbFwiPnt7IGdldFVuaXRMYWJlbCgpIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGlvbi1idXR0b25cbiAgICAgICAgICBjbGFzcz1cInN0ZXBwZXItYnV0dG9uIGluY3JlbWVudFwiXG4gICAgICAgICAgW2NvbG9yXT1cInByb3BzLmNvbG9yIHx8ICdwcmltYXJ5J1wiXG4gICAgICAgICAgZmlsbD1cIm91dGxpbmVcIlxuICAgICAgICAgIFtzaGFwZV09XCJwcm9wcy5idXR0b25TaGFwZSB8fCAncm91bmQnXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNBdE1heCB8fCBwcm9wcy5zdGF0ZSA9PT0gc3RhdGVzLkRJU0FCTEVEXCJcbiAgICAgICAgICAoY2xpY2spPVwiaW5jcmVtZW50KClcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZ2V0SW5jcmVtZW50TGFiZWwoKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8aW9uLWljb24gc2xvdD1cImljb24tb25seVwiIG5hbWU9XCJhZGQtb3V0bGluZVwiPjwvaW9uLWljb24+XG4gICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIFByaWNlIGRpc3BsYXkgLS0+XG4gICAgICBAaWYgKHByb3BzLnNob3dUb3RhbCAmJiBwcm9wcy51bml0UHJpY2UpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInByaWNlLWRpc3BsYXlcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInByaWNlLWNhbGN1bGF0aW9uXCI+XG4gICAgICAgICAgICB7eyBjdXJyZW50VmFsdWUgfX0gw5cge3sgZm9ybWF0UHJpY2UocHJvcHMudW5pdFByaWNlKSB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInByaWNlLWVxdWFsc1wiPj08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcmljZS10b3RhbFwiPnt7IGZvcm1hdFByaWNlKHRvdGFsUHJpY2UpIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcy5oaW50KSB7XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic3RlcHBlci1oaW50XCI+e3sgcHJvcHMuaGludCB9fTwvc3Bhbj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vbnVtYmVyLXN0ZXBwZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG4vKipcbiAqIHZhbC1udW1iZXItc3RlcHBlclxuICpcbiAqIEEgbnVtYmVyIGlucHV0IHdpdGggaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLCBpZGVhbCBmb3IgcXVhbnRpdHkgc2VsZWN0aW9uLlxuICpcbiAqIEBleGFtcGxlIEJhc2ljIHVzYWdlXG4gKiBgYGBodG1sXG4gKiA8dmFsLW51bWJlci1zdGVwcGVyXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgY29udHJvbDogcXVhbnRpdHlDb250cm9sLFxuICogICAgIG1pbjogMSxcbiAqICAgICBtYXg6IDEwMFxuICogICB9XCJcbiAqID48L3ZhbC1udW1iZXItc3RlcHBlcj5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFdpdGggcHJpY2luZ1xuICogYGBgaHRtbFxuICogPHZhbC1udW1iZXItc3RlcHBlclxuICogICBbcHJvcHNdPVwie1xuICogICAgIGNvbnRyb2w6IHRpY2tldENvbnRyb2wsXG4gKiAgICAgbWluOiAxLFxuICogICAgIG1heDogNTAsXG4gKiAgICAgdW5pdFByaWNlOiAxMCxcbiAqICAgICBjdXJyZW5jeTogJ01YTicsXG4gKiAgICAgY3VycmVuY3lTeW1ib2w6ICckJyxcbiAqICAgICBzaG93VG90YWw6IHRydWUsXG4gKiAgICAgdW5pdExhYmVsOiAnYm9sZXRvcycsXG4gKiAgICAgdW5pdExhYmVsU2luZ3VsYXI6ICdib2xldG8nXG4gKiAgIH1cIlxuICogICAodmFsdWVDaGFuZ2UpPVwib25RdWFudGl0eUNoYW5nZSgkZXZlbnQpXCJcbiAqID48L3ZhbC1udW1iZXItc3RlcHBlcj5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFdpdGggcHJlc2V0c1xuICogYGBgaHRtbFxuICogPHZhbC1udW1iZXItc3RlcHBlclxuICogICBbcHJvcHNdPVwie1xuICogICAgIGNvbnRyb2w6IHRpY2tldENvbnRyb2wsXG4gKiAgICAgbWluOiAxLFxuICogICAgIG1heDogMTAwLFxuICogICAgIHNob3dQcmVzZXRzOiB0cnVlLFxuICogICAgIHByZXNldHM6IFtcbiAqICAgICAgIHsgdmFsdWU6IDEgfSxcbiAqICAgICAgIHsgdmFsdWU6IDUsIHBvcHVsYXI6IHRydWUgfSxcbiAqICAgICAgIHsgdmFsdWU6IDEwIH0sXG4gKiAgICAgICB7IHZhbHVlOiAyNSB9XG4gKiAgICAgXVxuICogICB9XCJcbiAqID48L3ZhbC1udW1iZXItc3RlcHBlcj5cbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgTnVtYmVyU3RlcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHJvcHM6IE51bWJlclN0ZXBwZXJNZXRhZGF0YTtcblxuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE51bWJlclN0ZXBwZXJDaGFuZ2VFdmVudD4oKTtcblxuICBzdGF0ZXMgPSBDb21wb25lbnRTdGF0ZXM7XG5cbiAgcHJpdmF0ZSBpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcbiAgcHJpdmF0ZSB2YWx1ZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEdldCBkZWNyZW1lbnQgYnV0dG9uIGFyaWEtbGFiZWwgd2l0aCBpMThuIGZhbGxiYWNrICovXG4gIGdldERlY3JlbWVudExhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuZGVjcmVtZW50TGFiZWwgfHwgdGhpcy5pMThuLnQoJ2RlY3JlYXNlJyk7XG4gIH1cblxuICAvKiogR2V0IGluY3JlbWVudCBidXR0b24gYXJpYS1sYWJlbCB3aXRoIGkxOG4gZmFsbGJhY2sgKi9cbiAgZ2V0SW5jcmVtZW50TGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5pbmNyZW1lbnRMYWJlbCB8fCB0aGlzLmkxOG4udCgnaW5jcmVhc2UnKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIEVuc3VyZSBpbml0aWFsIHZhbHVlIGlzIHdpdGhpbiBib3VuZHNcbiAgICB0aGlzLmNsYW1wVmFsdWUoKTtcblxuICAgIC8vIFN1YnNjcmliZSB0byB2YWx1ZSBjaGFuZ2VzXG4gICAgdGhpcy52YWx1ZVN1YnNjcmlwdGlvbiA9IHRoaXMucHJvcHMuY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xhbXBWYWx1ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGdldCBjdXJyZW50VmFsdWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5jb250cm9sLnZhbHVlID8/IHRoaXMucHJvcHMubWluID8/IDA7XG4gIH1cblxuICBnZXQgaXNBdE1pbigpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5wcm9wcy5taW4gPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRWYWx1ZSA8PSB0aGlzLnByb3BzLm1pbjtcbiAgfVxuXG4gIGdldCBpc0F0TWF4KCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLnByb3BzLm1heCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZmFsc2U7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFZhbHVlID49IHRoaXMucHJvcHMubWF4O1xuICB9XG5cbiAgZ2V0IHRvdGFsUHJpY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50VmFsdWUgKiAodGhpcy5wcm9wcy51bml0UHJpY2UgfHwgMCk7XG4gIH1cblxuICBpbmNyZW1lbnQoKTogdm9pZCB7XG4gICAgY29uc3Qgc3RlcCA9IHRoaXMucHJvcHMuc3RlcCB8fCAxO1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gdGhpcy5jdXJyZW50VmFsdWUgKyBzdGVwO1xuICAgIHRoaXMuc2V0VmFsdWUobmV3VmFsdWUpO1xuICB9XG5cbiAgZGVjcmVtZW50KCk6IHZvaWQge1xuICAgIGNvbnN0IHN0ZXAgPSB0aGlzLnByb3BzLnN0ZXAgfHwgMTtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMuY3VycmVudFZhbHVlIC0gc3RlcDtcbiAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlKTtcbiAgfVxuXG4gIHNldFZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2aW91c1ZhbHVlID0gdGhpcy5jdXJyZW50VmFsdWU7XG4gICAgY29uc3QgY2xhbXBlZFZhbHVlID0gdGhpcy5jbGFtcCh2YWx1ZSk7XG5cbiAgICBpZiAoY2xhbXBlZFZhbHVlICE9PSBwcmV2aW91c1ZhbHVlKSB7XG4gICAgICB0aGlzLnByb3BzLmNvbnRyb2wuc2V0VmFsdWUoY2xhbXBlZFZhbHVlKTtcbiAgICAgIHRoaXMuZW1pdENoYW5nZShjbGFtcGVkVmFsdWUsIHByZXZpb3VzVmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIG9uSW5wdXRCbHVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2xhbXBWYWx1ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGFtcFZhbHVlKCk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRWYWwgPSB0aGlzLnByb3BzLmNvbnRyb2wudmFsdWU7XG4gICAgY29uc3QgY2xhbXBlZFZhbCA9IHRoaXMuY2xhbXAoY3VycmVudFZhbCk7XG4gICAgaWYgKGN1cnJlbnRWYWwgIT09IGNsYW1wZWRWYWwpIHtcbiAgICAgIHRoaXMucHJvcHMuY29udHJvbC5zZXRWYWx1ZShjbGFtcGVkVmFsKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNsYW1wKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGxldCByZXN1bHQgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5wcm9wcy5taW4gIT09IHVuZGVmaW5lZCAmJiByZXN1bHQgPCB0aGlzLnByb3BzLm1pbikge1xuICAgICAgcmVzdWx0ID0gdGhpcy5wcm9wcy5taW47XG4gICAgfVxuICAgIGlmICh0aGlzLnByb3BzLm1heCAhPT0gdW5kZWZpbmVkICYmIHJlc3VsdCA+IHRoaXMucHJvcHMubWF4KSB7XG4gICAgICByZXN1bHQgPSB0aGlzLnByb3BzLm1heDtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdENoYW5nZSh2YWx1ZTogbnVtYmVyLCBwcmV2aW91c1ZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoe1xuICAgICAgdmFsdWUsXG4gICAgICBwcmV2aW91c1ZhbHVlLFxuICAgICAgdG90YWxQcmljZTogdGhpcy5wcm9wcy51bml0UHJpY2UgPyB2YWx1ZSAqIHRoaXMucHJvcHMudW5pdFByaWNlIDogdW5kZWZpbmVkLFxuICAgICAgYXRNaW46IHRoaXMuaXNBdE1pbixcbiAgICAgIGF0TWF4OiB0aGlzLmlzQXRNYXgsXG4gICAgfSk7XG4gIH1cblxuICBnZXRMYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmxhYmVsIHx8ICcnO1xuICB9XG5cbiAgZ2V0VW5pdExhYmVsKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY3VycmVudFZhbHVlID09PSAxICYmIHRoaXMucHJvcHMudW5pdExhYmVsU2luZ3VsYXIpIHtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLnVuaXRMYWJlbFNpbmd1bGFyO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5wcm9wcy51bml0TGFiZWwgfHwgJyc7XG4gIH1cblxuICBmb3JtYXRQcmljZShhbW91bnQ6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3Qgc3ltYm9sID0gdGhpcy5wcm9wcy5jdXJyZW5jeVN5bWJvbCB8fCAnJCc7XG4gICAgY29uc3QgZm9ybWF0dGVkID0gYW1vdW50LnRvTG9jYWxlU3RyaW5nKCdlcy1NWCcsIHtcbiAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMixcbiAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogMixcbiAgICB9KTtcbiAgICByZXR1cm4gYCR7c3ltYm9sfSR7Zm9ybWF0dGVkfWA7XG4gIH1cblxuICBnZXRDb2xvcigpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnByb3BzLmNvbG9yKSB7XG4gICAgICByZXR1cm4gYHZhcigtLWlvbi1jb2xvci0ke3RoaXMucHJvcHMuY29sb3J9KWA7XG4gICAgfVxuICAgIHJldHVybiAndmFyKC0taW9uLWNvbG9yLXByaW1hcnkpJztcbiAgfVxufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL251bWJlci1zdGVwcGVyL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbG9yIH0gZnJvbSAnQGlvbmljL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50U3RhdGUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbi8qKlxuICogUXVpY2sgc2VsZWN0aW9uIHByZXNldCBmb3IgbnVtYmVyIHN0ZXBwZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTnVtYmVyU3RlcHBlclByZXNldCB7XG4gIC8qKiBQcmVzZXQgdmFsdWUgKi9cbiAgdmFsdWU6IG51bWJlcjtcbiAgLyoqIERpc3BsYXkgbGFiZWwgKG9wdGlvbmFsLCBkZWZhdWx0cyB0byB2YWx1ZSkgKi9cbiAgbGFiZWw/OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoaXMgaXMgYSBwb3B1bGFyL2hpZ2hsaWdodGVkIG9wdGlvbiAqL1xuICBwb3B1bGFyPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBNZXRhZGF0YSBmb3IgdGhlIG51bWJlciBzdGVwcGVyIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOdW1iZXJTdGVwcGVyTWV0YWRhdGEge1xuICAvKiogRm9ybSBjb250cm9sIGZvciB0aGUgdmFsdWUgKi9cbiAgY29udHJvbDogRm9ybUNvbnRyb2w8bnVtYmVyPjtcbiAgLyoqIE1pbmltdW0gdmFsdWUgKi9cbiAgbWluPzogbnVtYmVyO1xuICAvKiogTWF4aW11bSB2YWx1ZSAqL1xuICBtYXg/OiBudW1iZXI7XG4gIC8qKiBTdGVwIGluY3JlbWVudCAqL1xuICBzdGVwPzogbnVtYmVyO1xuICAvKiogU2hvdyBtYW51YWwgaW5wdXQgZmllbGQgKi9cbiAgc2hvd0lucHV0PzogYm9vbGVhbjtcbiAgLyoqIEFsbG93IG1hbnVhbCBpbnB1dCBlZGl0aW5nICovXG4gIGVkaXRhYmxlSW5wdXQ/OiBib29sZWFuO1xuXG4gIC8vID09PSBQcmljaW5nIChvcHRpb25hbCkgPT09XG4gIC8qKiBVbml0IHByaWNlIGZvciB0b3RhbCBjYWxjdWxhdGlvbiAqL1xuICB1bml0UHJpY2U/OiBudW1iZXI7XG4gIC8qKiBDdXJyZW5jeSBjb2RlIGZvciBwcmljZSBkaXNwbGF5ICovXG4gIGN1cnJlbmN5Pzogc3RyaW5nO1xuICAvKiogQ3VycmVuY3kgc3ltYm9sICovXG4gIGN1cnJlbmN5U3ltYm9sPzogc3RyaW5nO1xuICAvKiogU2hvdyB0b3RhbCBwcmljZSAqL1xuICBzaG93VG90YWw/OiBib29sZWFuO1xuICAvKiogVW5pdCBsYWJlbCAoZS5nLiwgXCJib2xldG9zXCIsIFwidGlja2V0c1wiKSAqL1xuICB1bml0TGFiZWw/OiBzdHJpbmc7XG4gIC8qKiBTaW5ndWxhciB1bml0IGxhYmVsICovXG4gIHVuaXRMYWJlbFNpbmd1bGFyPzogc3RyaW5nO1xuXG4gIC8vID09PSBRdWljayBzZWxlY3Rpb24gPT09XG4gIC8qKiBQcmVzZXQgdmFsdWVzIGZvciBxdWljayBzZWxlY3Rpb24gKi9cbiAgcHJlc2V0cz86IE51bWJlclN0ZXBwZXJQcmVzZXRbXTtcbiAgLyoqIFNob3cgcHJlc2V0IGJ1dHRvbnMgKi9cbiAgc2hvd1ByZXNldHM/OiBib29sZWFuO1xuXG4gIC8vID09PSBTdHlsaW5nID09PVxuICAvKiogQ29tcG9uZW50IGNvbG9yICovXG4gIGNvbG9yPzogQ29sb3I7XG4gIC8qKiBTaXplIHZhcmlhbnQgKi9cbiAgc2l6ZT86ICdzbWFsbCcgfCAnbWVkaXVtJyB8ICdsYXJnZSc7XG4gIC8qKiBCdXR0b24gc2hhcGUgKi9cbiAgYnV0dG9uU2hhcGU/OiAnc3F1YXJlJyB8ICdyb3VuZCc7XG4gIC8qKiBMYXlvdXQgZGlyZWN0aW9uICovXG4gIGxheW91dD86ICdob3Jpem9udGFsJyB8ICd2ZXJ0aWNhbCc7XG4gIC8qKiBDdXN0b20gQ1NTIGNsYXNzICovXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xuICAvKiogQ29tcG9uZW50IHN0YXRlICovXG4gIHN0YXRlPzogQ29tcG9uZW50U3RhdGU7XG5cbiAgLy8gPT09IExhYmVscyA9PT1cbiAgLyoqIExhYmVsIGZvciB0aGUgY29tcG9uZW50ICovXG4gIGxhYmVsPzogc3RyaW5nO1xuICAvKiogSGludCB0ZXh0ICovXG4gIGhpbnQ/OiBzdHJpbmc7XG4gIC8qKiBEZWNyZW1lbnQgYnV0dG9uIGFyaWEgbGFiZWwgKi9cbiAgZGVjcmVtZW50TGFiZWw/OiBzdHJpbmc7XG4gIC8qKiBJbmNyZW1lbnQgYnV0dG9uIGFyaWEgbGFiZWwgKi9cbiAgaW5jcmVtZW50TGFiZWw/OiBzdHJpbmc7XG5cbiAgLy8gPT09IFJlYWN0aXZlIGNvbnRlbnQgPT09XG4gIC8qKiBDb250ZW50IGtleSBmb3IgbGFiZWwgKi9cbiAgbGFiZWxDb250ZW50S2V5Pzogc3RyaW5nO1xuICAvKiogQ29udGVudCBrZXkgZm9yIHVuaXQgbGFiZWwgKi9cbiAgdW5pdExhYmVsQ29udGVudEtleT86IHN0cmluZztcbiAgLyoqIENvbnRlbnQgY2xhc3MgZm9yIHJlYWN0aXZlIGNvbnRlbnQgKi9cbiAgY29udGVudENsYXNzPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB2YWx1ZSBjaGFuZ2VzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE51bWJlclN0ZXBwZXJDaGFuZ2VFdmVudCB7XG4gIC8qKiBOZXcgdmFsdWUgKi9cbiAgdmFsdWU6IG51bWJlcjtcbiAgLyoqIFByZXZpb3VzIHZhbHVlICovXG4gIHByZXZpb3VzVmFsdWU6IG51bWJlcjtcbiAgLyoqIFRvdGFsIHByaWNlIChpZiB1bml0UHJpY2UgaXMgc2V0KSAqL1xuICB0b3RhbFByaWNlPzogbnVtYmVyO1xuICAvKiogV2hldGhlciBhdCBtaW5pbXVtICovXG4gIGF0TWluOiBib29sZWFuO1xuICAvKiogV2hldGhlciBhdCBtYXhpbXVtICovXG4gIGF0TWF4OiBib29sZWFuO1xufVxuIl19
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, Input, computed, signal } from '@angular/core';
|
|
3
|
-
import { RouterLink } from '@angular/router';
|
|
4
|
-
import { IonIcon } from '@ionic/angular/standalone';
|
|
5
|
-
import { addIcons } from 'ionicons';
|
|
6
|
-
import { chevronForwardOutline, openOutline } from 'ionicons/icons';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
/**
|
|
9
|
-
* `val-page-links` — stacked list of navigational links with optional dividers.
|
|
10
|
-
* Used for legal/policies, footer link columns, "about" sections, etc.
|
|
11
|
-
*
|
|
12
|
-
* Each item can navigate via Angular `routerLink` (SPA) or external `href`.
|
|
13
|
-
* Detects absolute URLs (`http(s)://`) to apply `target="_blank"` by default.
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* <val-page-links [props]="{
|
|
17
|
-
* links: [
|
|
18
|
-
* { label: 'Terms', routerLink: '/legal/terms' },
|
|
19
|
-
* { label: 'Privacy', routerLink: '/legal/privacy' },
|
|
20
|
-
* { label: 'Visit main site', href: 'https://myvaltech.com', icon: 'open-outline' },
|
|
21
|
-
* ],
|
|
22
|
-
* }"></val-page-links>
|
|
23
|
-
*/
|
|
24
|
-
export class PageLinksComponent {
|
|
25
|
-
/** Page links configuration object. */
|
|
26
|
-
set props(value) {
|
|
27
|
-
this._props.set(value);
|
|
28
|
-
}
|
|
29
|
-
get props() {
|
|
30
|
-
return this._props();
|
|
31
|
-
}
|
|
32
|
-
constructor() {
|
|
33
|
-
this._props = signal({ links: [] });
|
|
34
|
-
this.links = computed(() => this._props().links ?? []);
|
|
35
|
-
addIcons({ chevronForwardOutline, openOutline });
|
|
36
|
-
}
|
|
37
|
-
isExternal(link) {
|
|
38
|
-
if (link.external !== undefined)
|
|
39
|
-
return link.external;
|
|
40
|
-
return !!link.href && /^https?:\/\//i.test(link.href);
|
|
41
|
-
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PageLinksComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PageLinksComponent, isStandalone: true, selector: "val-page-links", inputs: { props: "props" }, ngImport: i0, template: `
|
|
44
|
-
<nav
|
|
45
|
-
class="val-page-links"
|
|
46
|
-
[class.no-dividers]="props.showDividers === false"
|
|
47
|
-
[class.size-small]="props.size === 'small'"
|
|
48
|
-
[class.size-large]="props.size === 'large'"
|
|
49
|
-
>
|
|
50
|
-
@for (link of links(); track link.label; let last = $last) {
|
|
51
|
-
@if (link.routerLink) {
|
|
52
|
-
<a
|
|
53
|
-
class="val-page-links__item"
|
|
54
|
-
[routerLink]="link.routerLink"
|
|
55
|
-
[class.is-last]="last"
|
|
56
|
-
[attr.aria-label]="link.ariaLabel || link.label"
|
|
57
|
-
>
|
|
58
|
-
<span class="val-page-links__label">{{ link.label }}</span>
|
|
59
|
-
@if (link.icon) {
|
|
60
|
-
<ion-icon class="val-page-links__icon" [name]="link.icon" aria-hidden="true"></ion-icon>
|
|
61
|
-
} @else {
|
|
62
|
-
<ion-icon
|
|
63
|
-
class="val-page-links__icon val-page-links__icon--default"
|
|
64
|
-
name="chevron-forward-outline"
|
|
65
|
-
aria-hidden="true"
|
|
66
|
-
></ion-icon>
|
|
67
|
-
}
|
|
68
|
-
</a>
|
|
69
|
-
} @else if (link.href) {
|
|
70
|
-
<a
|
|
71
|
-
class="val-page-links__item"
|
|
72
|
-
[href]="link.href"
|
|
73
|
-
[class.is-last]="last"
|
|
74
|
-
[attr.target]="isExternal(link) ? '_blank' : null"
|
|
75
|
-
[attr.rel]="isExternal(link) ? 'noopener noreferrer' : null"
|
|
76
|
-
[attr.aria-label]="link.ariaLabel || link.label"
|
|
77
|
-
>
|
|
78
|
-
<span class="val-page-links__label">{{ link.label }}</span>
|
|
79
|
-
@if (link.icon) {
|
|
80
|
-
<ion-icon class="val-page-links__icon" [name]="link.icon" aria-hidden="true"></ion-icon>
|
|
81
|
-
} @else {
|
|
82
|
-
<ion-icon
|
|
83
|
-
class="val-page-links__icon val-page-links__icon--default"
|
|
84
|
-
[name]="isExternal(link) ? 'open-outline' : 'chevron-forward-outline'"
|
|
85
|
-
aria-hidden="true"
|
|
86
|
-
></ion-icon>
|
|
87
|
-
}
|
|
88
|
-
</a>
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
</nav>
|
|
92
|
-
`, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block}.val-page-links{display:flex;flex-direction:column}.val-page-links__item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 4px;background:transparent;border:0;border-bottom:1px solid var(--ion-color-light-shade, #e8e9ec);color:var(--ion-color-dark);font-size:.95rem;line-height:1.4;text-align:left;text-decoration:none;cursor:pointer;transition:color .15s ease,background .15s ease}.val-page-links__item.is-last{border-bottom:0}.val-page-links__item:hover{color:var(--ion-color-primary, #7026df)}.val-page-links__item:hover .val-page-links__icon--default{transform:translate(2px)}.val-page-links__item:focus-visible{outline:2px solid var(--ion-color-primary, #7026df);outline-offset:2px;border-radius:6px}.val-page-links__label{flex:1 1 auto;min-width:0}.val-page-links__icon{flex-shrink:0;font-size:18px;color:var(--ion-color-medium);transition:transform .15s ease}.val-page-links__icon--default{font-size:16px;opacity:.7}.val-page-links.no-dividers .val-page-links__item{border-bottom:0}.val-page-links.size-small .val-page-links__item{font-size:.85rem;padding:10px 4px}.val-page-links.size-large .val-page-links__item{font-size:1.05rem;padding:18px 4px}:host-context(body.dark) .val-page-links__item,:host-context(html.ion-palette-dark) .val-page-links__item,:host-context([data-theme=dark]) .val-page-links__item{border-bottom-color:#ffffff14}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
93
|
-
}
|
|
94
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PageLinksComponent, decorators: [{
|
|
95
|
-
type: Component,
|
|
96
|
-
args: [{ selector: 'val-page-links', standalone: true, imports: [CommonModule, RouterLink, IonIcon], template: `
|
|
97
|
-
<nav
|
|
98
|
-
class="val-page-links"
|
|
99
|
-
[class.no-dividers]="props.showDividers === false"
|
|
100
|
-
[class.size-small]="props.size === 'small'"
|
|
101
|
-
[class.size-large]="props.size === 'large'"
|
|
102
|
-
>
|
|
103
|
-
@for (link of links(); track link.label; let last = $last) {
|
|
104
|
-
@if (link.routerLink) {
|
|
105
|
-
<a
|
|
106
|
-
class="val-page-links__item"
|
|
107
|
-
[routerLink]="link.routerLink"
|
|
108
|
-
[class.is-last]="last"
|
|
109
|
-
[attr.aria-label]="link.ariaLabel || link.label"
|
|
110
|
-
>
|
|
111
|
-
<span class="val-page-links__label">{{ link.label }}</span>
|
|
112
|
-
@if (link.icon) {
|
|
113
|
-
<ion-icon class="val-page-links__icon" [name]="link.icon" aria-hidden="true"></ion-icon>
|
|
114
|
-
} @else {
|
|
115
|
-
<ion-icon
|
|
116
|
-
class="val-page-links__icon val-page-links__icon--default"
|
|
117
|
-
name="chevron-forward-outline"
|
|
118
|
-
aria-hidden="true"
|
|
119
|
-
></ion-icon>
|
|
120
|
-
}
|
|
121
|
-
</a>
|
|
122
|
-
} @else if (link.href) {
|
|
123
|
-
<a
|
|
124
|
-
class="val-page-links__item"
|
|
125
|
-
[href]="link.href"
|
|
126
|
-
[class.is-last]="last"
|
|
127
|
-
[attr.target]="isExternal(link) ? '_blank' : null"
|
|
128
|
-
[attr.rel]="isExternal(link) ? 'noopener noreferrer' : null"
|
|
129
|
-
[attr.aria-label]="link.ariaLabel || link.label"
|
|
130
|
-
>
|
|
131
|
-
<span class="val-page-links__label">{{ link.label }}</span>
|
|
132
|
-
@if (link.icon) {
|
|
133
|
-
<ion-icon class="val-page-links__icon" [name]="link.icon" aria-hidden="true"></ion-icon>
|
|
134
|
-
} @else {
|
|
135
|
-
<ion-icon
|
|
136
|
-
class="val-page-links__icon val-page-links__icon--default"
|
|
137
|
-
[name]="isExternal(link) ? 'open-outline' : 'chevron-forward-outline'"
|
|
138
|
-
aria-hidden="true"
|
|
139
|
-
></ion-icon>
|
|
140
|
-
}
|
|
141
|
-
</a>
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
</nav>
|
|
145
|
-
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@charset \"UTF-8\";:host{display:block}.val-page-links{display:flex;flex-direction:column}.val-page-links__item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 4px;background:transparent;border:0;border-bottom:1px solid var(--ion-color-light-shade, #e8e9ec);color:var(--ion-color-dark);font-size:.95rem;line-height:1.4;text-align:left;text-decoration:none;cursor:pointer;transition:color .15s ease,background .15s ease}.val-page-links__item.is-last{border-bottom:0}.val-page-links__item:hover{color:var(--ion-color-primary, #7026df)}.val-page-links__item:hover .val-page-links__icon--default{transform:translate(2px)}.val-page-links__item:focus-visible{outline:2px solid var(--ion-color-primary, #7026df);outline-offset:2px;border-radius:6px}.val-page-links__label{flex:1 1 auto;min-width:0}.val-page-links__icon{flex-shrink:0;font-size:18px;color:var(--ion-color-medium);transition:transform .15s ease}.val-page-links__icon--default{font-size:16px;opacity:.7}.val-page-links.no-dividers .val-page-links__item{border-bottom:0}.val-page-links.size-small .val-page-links__item{font-size:.85rem;padding:10px 4px}.val-page-links.size-large .val-page-links__item{font-size:1.05rem;padding:18px 4px}:host-context(body.dark) .val-page-links__item,:host-context(html.ion-palette-dark) .val-page-links__item,:host-context([data-theme=dark]) .val-page-links__item{border-bottom-color:#ffffff14}\n"] }]
|
|
146
|
-
}], ctorParameters: () => [], propDecorators: { props: [{
|
|
147
|
-
type: Input,
|
|
148
|
-
args: [{ required: true }]
|
|
149
|
-
}] } });
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1saW5rcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BhZ2UtbGlua3MvcGFnZS1saW5rcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHcEU7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBMERILE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsdUNBQXVDO0lBQ3ZDLElBQStCLEtBQUssQ0FBQyxLQUF3QjtRQUMzRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQU1EO1FBSlEsV0FBTSxHQUFHLE1BQU0sQ0FBb0IsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVoRCxVQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUM7UUFHMUQsUUFBUSxDQUFDLEVBQUUscUJBQXFCLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRVMsVUFBVSxDQUFDLElBQWM7UUFDakMsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLFNBQVM7WUFBRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdEQsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4RCxDQUFDOytHQXBCVSxrQkFBa0I7bUdBQWxCLGtCQUFrQixzR0FyRG5COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaURULGsrQ0FsRFMsWUFBWSwrQkFBRSxVQUFVLG9PQUFFLE9BQU87OzRGQXNEaEMsa0JBQWtCO2tCQXpEOUIsU0FBUzsrQkFDRSxnQkFBZ0IsY0FDZCxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxZQUNsQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlEVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTTt3REFJaEIsS0FBSztzQkFBbkMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIGNvbXB1dGVkLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSW9uSWNvbiB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgYWRkSWNvbnMgfSBmcm9tICdpb25pY29ucyc7XG5pbXBvcnQgeyBjaGV2cm9uRm9yd2FyZE91dGxpbmUsIG9wZW5PdXRsaW5lIH0gZnJvbSAnaW9uaWNvbnMvaWNvbnMnO1xuaW1wb3J0IHsgUGFnZUxpbmssIFBhZ2VMaW5rc01ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogYHZhbC1wYWdlLWxpbmtzYCDigJQgc3RhY2tlZCBsaXN0IG9mIG5hdmlnYXRpb25hbCBsaW5rcyB3aXRoIG9wdGlvbmFsIGRpdmlkZXJzLlxuICogVXNlZCBmb3IgbGVnYWwvcG9saWNpZXMsIGZvb3RlciBsaW5rIGNvbHVtbnMsIFwiYWJvdXRcIiBzZWN0aW9ucywgZXRjLlxuICpcbiAqIEVhY2ggaXRlbSBjYW4gbmF2aWdhdGUgdmlhIEFuZ3VsYXIgYHJvdXRlckxpbmtgIChTUEEpIG9yIGV4dGVybmFsIGBocmVmYC5cbiAqIERldGVjdHMgYWJzb2x1dGUgVVJMcyAoYGh0dHAocyk6Ly9gKSB0byBhcHBseSBgdGFyZ2V0PVwiX2JsYW5rXCJgIGJ5IGRlZmF1bHQuXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtcGFnZS1saW5rcyBbcHJvcHNdPVwie1xuICogICBsaW5rczogW1xuICogICAgIHsgbGFiZWw6ICdUZXJtcycsIHJvdXRlckxpbms6ICcvbGVnYWwvdGVybXMnIH0sXG4gKiAgICAgeyBsYWJlbDogJ1ByaXZhY3knLCByb3V0ZXJMaW5rOiAnL2xlZ2FsL3ByaXZhY3knIH0sXG4gKiAgICAgeyBsYWJlbDogJ1Zpc2l0IG1haW4gc2l0ZScsIGhyZWY6ICdodHRwczovL215dmFsdGVjaC5jb20nLCBpY29uOiAnb3Blbi1vdXRsaW5lJyB9LFxuICogICBdLFxuICogfVwiPjwvdmFsLXBhZ2UtbGlua3M+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1wYWdlLWxpbmtzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUm91dGVyTGluaywgSW9uSWNvbl0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5hdlxuICAgICAgY2xhc3M9XCJ2YWwtcGFnZS1saW5rc1wiXG4gICAgICBbY2xhc3Mubm8tZGl2aWRlcnNdPVwicHJvcHMuc2hvd0RpdmlkZXJzID09PSBmYWxzZVwiXG4gICAgICBbY2xhc3Muc2l6ZS1zbWFsbF09XCJwcm9wcy5zaXplID09PSAnc21hbGwnXCJcbiAgICAgIFtjbGFzcy5zaXplLWxhcmdlXT1cInByb3BzLnNpemUgPT09ICdsYXJnZSdcIlxuICAgID5cbiAgICAgIEBmb3IgKGxpbmsgb2YgbGlua3MoKTsgdHJhY2sgbGluay5sYWJlbDsgbGV0IGxhc3QgPSAkbGFzdCkge1xuICAgICAgICBAaWYgKGxpbmsucm91dGVyTGluaykge1xuICAgICAgICAgIDxhXG4gICAgICAgICAgICBjbGFzcz1cInZhbC1wYWdlLWxpbmtzX19pdGVtXCJcbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cImxpbmsucm91dGVyTGlua1wiXG4gICAgICAgICAgICBbY2xhc3MuaXMtbGFzdF09XCJsYXN0XCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGluay5hcmlhTGFiZWwgfHwgbGluay5sYWJlbFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWwtcGFnZS1saW5rc19fbGFiZWxcIj57eyBsaW5rLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgQGlmIChsaW5rLmljb24pIHtcbiAgICAgICAgICAgICAgPGlvbi1pY29uIGNsYXNzPVwidmFsLXBhZ2UtbGlua3NfX2ljb25cIiBbbmFtZV09XCJsaW5rLmljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwidmFsLXBhZ2UtbGlua3NfX2ljb24gdmFsLXBhZ2UtbGlua3NfX2ljb24tLWRlZmF1bHRcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJjaGV2cm9uLWZvcndhcmQtb3V0bGluZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgPjwvaW9uLWljb24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9hPlxuICAgICAgICB9IEBlbHNlIGlmIChsaW5rLmhyZWYpIHtcbiAgICAgICAgICA8YVxuICAgICAgICAgICAgY2xhc3M9XCJ2YWwtcGFnZS1saW5rc19faXRlbVwiXG4gICAgICAgICAgICBbaHJlZl09XCJsaW5rLmhyZWZcIlxuICAgICAgICAgICAgW2NsYXNzLmlzLWxhc3RdPVwibGFzdFwiXG4gICAgICAgICAgICBbYXR0ci50YXJnZXRdPVwiaXNFeHRlcm5hbChsaW5rKSA/ICdfYmxhbmsnIDogbnVsbFwiXG4gICAgICAgICAgICBbYXR0ci5yZWxdPVwiaXNFeHRlcm5hbChsaW5rKSA/ICdub29wZW5lciBub3JlZmVycmVyJyA6IG51bGxcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJsaW5rLmFyaWFMYWJlbCB8fCBsaW5rLmxhYmVsXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbC1wYWdlLWxpbmtzX19sYWJlbFwiPnt7IGxpbmsubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICBAaWYgKGxpbmsuaWNvbikge1xuICAgICAgICAgICAgICA8aW9uLWljb24gY2xhc3M9XCJ2YWwtcGFnZS1saW5rc19faWNvblwiIFtuYW1lXT1cImxpbmsuaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgPGlvbi1pY29uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ2YWwtcGFnZS1saW5rc19faWNvbiB2YWwtcGFnZS1saW5rc19faWNvbi0tZGVmYXVsdFwiXG4gICAgICAgICAgICAgICAgW25hbWVdPVwiaXNFeHRlcm5hbChsaW5rKSA/ICdvcGVuLW91dGxpbmUnIDogJ2NoZXZyb24tZm9yd2FyZC1vdXRsaW5lJ1wiXG4gICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgPjwvaW9uLWljb24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9hPlxuICAgICAgICB9XG4gICAgICB9XG4gICAgPC9uYXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3BhZ2UtbGlua3MuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VMaW5rc0NvbXBvbmVudCB7XG4gIC8qKiBQYWdlIGxpbmtzIGNvbmZpZ3VyYXRpb24gb2JqZWN0LiAqL1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzZXQgcHJvcHModmFsdWU6IFBhZ2VMaW5rc01ldGFkYXRhKSB7XG4gICAgdGhpcy5fcHJvcHMuc2V0KHZhbHVlKTtcbiAgfVxuICBnZXQgcHJvcHMoKTogUGFnZUxpbmtzTWV0YWRhdGEge1xuICAgIHJldHVybiB0aGlzLl9wcm9wcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcHJvcHMgPSBzaWduYWw8UGFnZUxpbmtzTWV0YWRhdGE+KHsgbGlua3M6IFtdIH0pO1xuXG4gIHByb3RlY3RlZCBsaW5rcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3Byb3BzKCkubGlua3MgPz8gW10pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGFkZEljb25zKHsgY2hldnJvbkZvcndhcmRPdXRsaW5lLCBvcGVuT3V0bGluZSB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpc0V4dGVybmFsKGxpbms6IFBhZ2VMaW5rKTogYm9vbGVhbiB7XG4gICAgaWYgKGxpbmsuZXh0ZXJuYWwgIT09IHVuZGVmaW5lZCkgcmV0dXJuIGxpbmsuZXh0ZXJuYWw7XG4gICAgcmV0dXJuICEhbGluay5ocmVmICYmIC9eaHR0cHM/OlxcL1xcLy9pLnRlc3QobGluay5ocmVmKTtcbiAgfVxufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BhZ2UtbGlua3MvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2luZ2xlIGVudHJ5IG9mIGEgYHZhbC1wYWdlLWxpbmtzYCBsaXN0LlxuICpcbiAqIFBhc3MgRUlUSEVSIGByb3V0ZXJMaW5rYCAoQW5ndWxhciBTUEEgbmF2aWdhdGlvbikgT1IgYGhyZWZgIChleHRlcm5hbCBVUkwpLlxuICogSWYgYm90aCBhcmUgcHJlc2VudCwgYHJvdXRlckxpbmtgIHdpbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGFnZUxpbmsge1xuICAvKiogVmlzaWJsZSB0ZXh0LiAqL1xuICBsYWJlbDogc3RyaW5nO1xuICAvKiogQW5ndWxhciByb3V0ZXIgcGF0aCAoZS5nLiBgL2xlZ2FsL3Rlcm1zYCkuICovXG4gIHJvdXRlckxpbms/OiBzdHJpbmc7XG4gIC8qKiBFeHRlcm5hbCBVUkwgKGUuZy4gYGh0dHBzOi8vbXl2YWx0ZWNoLmNvbS9sZWdhbC90ZXJtc2ApLiAqL1xuICBocmVmPzogc3RyaW5nO1xuICAvKipcbiAgICogRm9yY2Ugb3BlbnMgaW4gYSBuZXcgdGFiLiBEZWZhdWx0cyB0byBgdHJ1ZWAgd2hlbiBgaHJlZmAgbG9va3MgYWJzb2x1dGVcbiAgICogKHN0YXJ0cyB3aXRoIGBodHRwOi8vYCBvciBgaHR0cHM6Ly9gKS5cbiAgICovXG4gIGV4dGVybmFsPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIElvbmljIGljb24gbmFtZSBzaG93biBhZnRlciB0aGUgbGFiZWwgKGUuZy4gYGFycm93LWZvcndhcmQtb3V0bGluZWAsXG4gICAqIGBvcGVuLW91dGxpbmVgIGZvciBleHRlcm5hbCkuIFdoZW4gb21pdHRlZCwgbm8gaWNvbiBpcyByZW5kZXJlZC5cbiAgICovXG4gIGljb24/OiBzdHJpbmc7XG4gIC8qKiBPcHRpb25hbCB0b29sdGlwIC8gYXJpYS1sYWJlbCBvdmVycmlkZS4gKi9cbiAgYXJpYUxhYmVsPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbmZpZyBmb3IgYHZhbC1wYWdlLWxpbmtzYCDigJQgc3RhY2tlZCBsaXN0IG9mIG5hdmlnYXRpb25hbCBsaW5rcy5cbiAqIFVzZWQgZm9yIGxlZ2FsL3BvbGljaWVzLCBmb290ZXIgbGluayBjb2x1bW5zLCBcIkFib3V0XCIgc2VjdGlvbnMsIGV0Yy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYWdlTGlua3NNZXRhZGF0YSB7XG4gIC8qKiBJdGVtcyB0byByZW5kZXIgaW4gb3JkZXIuICovXG4gIGxpbmtzOiBQYWdlTGlua1tdO1xuICAvKiogU2hvdyBhIGRpdmlkZXIgbGluZSBiZXR3ZWVuIGl0ZW1zLiBEZWZhdWx0IGB0cnVlYC4gKi9cbiAgc2hvd0RpdmlkZXJzPzogYm9vbGVhbjtcbiAgLyoqIFZpc3VhbCBzaXplIHByZXNldC4gRGVmYXVsdCBgJ21lZGl1bSdgLiAqL1xuICBzaXplPzogJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcbn1cbiJdfQ==
|