@foblex/m-render 2.8.1 → 2.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"foblex-m-render.mjs","sources":["../tmp-esm2022/lib/analytics/g-tag.service.js","../tmp-esm2022/lib/analytics/provide-g-tag.js","../tmp-esm2022/lib/common/components/f-search-button/f-search-button.component.js","../tmp-esm2022/lib/common/components/f-checkbox/f-checkbox.component.js","../tmp-esm2022/lib/common/components/f-radio-button/f-radio-button.component.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header-search.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header-media-links.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header-navigation.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-language.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-logo.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-title.js","../tmp-esm2022/lib/common/domain/providers.js","../tmp-esm2022/lib/common/services/popover.service.js","../tmp-esm2022/lib/theme/theme.service.js","../tmp-esm2022/lib/common/utils/copy-to-clipboard.js","../tmp-esm2022/lib/common/utils/document-element.js","../tmp-esm2022/lib/common/utils/window.js","../tmp-esm2022/lib/common/utils/local-storage.js","../tmp-esm2022/lib/common/utils/location.js","../tmp-esm2022/lib/common/utils/platform.js","../tmp-esm2022/lib/documentation-page/analytics/common-services/f-head-tag.service.js","../tmp-esm2022/lib/documentation-page/domain/handle-navigation-links/handle-navigation-links.handler.js","../tmp-esm2022/lib/documentation-page/domain/handle-navigation-links/handle-navigation-links.request.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-404-markdown.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-components.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-directory.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-documentation.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-meta.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-footer-navigation.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-navigation.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-table-of-content.js","../tmp-esm2022/lib/documentation-page/analytics/common-services/f-meta.service.js","../tmp-esm2022/lib/documentation-page/components/header/components/hamburger-button/domain/i-toggle-navigation-component.js","../tmp-esm2022/lib/documentation-page/components/header/components/hamburger-button/hamburger-button.js","../tmp-esm2022/lib/documentation-page/components/header/models/header-menu-base.js","../tmp-esm2022/lib/documentation-page/components/header/components/inline-menu/inline-menu.js","../tmp-esm2022/lib/theme/theme-button/theme-button.component.js","../tmp-esm2022/lib/theme/provide-theme.js","../tmp-esm2022/lib/documentation-page/components/header/components/media-links/domain/i-media-links-provider.js","../tmp-esm2022/lib/documentation-page/components/header/components/media-links/media-links.js","../tmp-esm2022/lib/documentation-page/components/header/components/dropdown-menu/dropdown-menu.js","../tmp-esm2022/lib/documentation-page/utils/calculate-markdown-url.js","../tmp-esm2022/lib/documentation-page/services/documentation.store.js","../tmp-esm2022/lib/dynamic-components/dynamic-components.store.js","../tmp-esm2022/lib/documentation-page/components/header/header.component.js","../tmp-esm2022/lib/documentation-page/components/navigation-panel/navigation-group/navigation-group.component.js","../tmp-esm2022/lib/documentation-page/components/navigation-panel/f-navigation-item/f-navigation-item.component.js","../tmp-esm2022/lib/documentation-page/components/navigation-panel/navigation-panel.component.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/domain/get-previous-next-page-navigation/get-previous-next-page-navigation.response.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/domain/get-previous-next-page-navigation/get-previous-next-page-navigation.handler.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/domain/get-previous-next-page-navigation/get-previous-next-page-navigation.request.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/footer-navigation-button/footer-navigation-button.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/markdown-footer.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/domain/e-markdown-container-type.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/domain/e-parsed-container-type.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/domain/i-preview-navigation-service.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/markdown.service.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/utils.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-alerts.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-grouped-code-items.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-single-code-item.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-angular-example-with-code-links.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-preview-group.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-showcase.js","../tmp-esm2022/lib/mediatr/mediatr.js","../tmp-esm2022/lib/mediatr/m-execution.js","../tmp-esm2022/lib/dynamic-components/components/external-component/utils/coerce-component-height.js","../tmp-esm2022/lib/dynamic-components/components/external-component/utils/parse-component-tag.js","../tmp-esm2022/lib/dynamic-components/features/render-dynamic-component/render-dynamic-component-request.js","../tmp-esm2022/lib/dynamic-components/features/render-dynamic-component/render-dynamic-component.js","../tmp-esm2022/lib/dynamic-components/features/render-external-component/render-external-component-request.js","../tmp-esm2022/lib/dynamic-components/providers/external-component.provider.js","../tmp-esm2022/lib/dynamic-components/features/render-external-component/render-external-component.js","../tmp-esm2022/lib/dynamic-components/features/render-internal-components/render-internal-components-request.js","../tmp-esm2022/lib/dynamic-components/features/render-internal-components/render-internal-components.js","../tmp-esm2022/lib/dynamic-components/components/external-component/external-component.js","../tmp-esm2022/lib/highlight/code-view/highlight.js","../tmp-esm2022/lib/highlight/code-view/code-view.js","../tmp-esm2022/lib/highlight/mark-code-focused-blocks.post-processor.js","../tmp-esm2022/lib/highlight/theme.js","../tmp-esm2022/lib/highlight/languages.js","../tmp-esm2022/lib/highlight/highlight.service.js","../tmp-esm2022/lib/dynamic-components/components/code-group/code-group.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/components/preview-card/preview-card-base.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/preview-group.service.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/components/preview-card/preview-card.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/components/preview-action-bar/preview-action-bar.js","../tmp-esm2022/lib/dynamic-components/components/showcase/components/showcase-item/showcase-item.js","../tmp-esm2022/lib/dynamic-components/components/showcase/showcase-token.js","../tmp-esm2022/lib/dynamic-components/components/showcase/showcase.js","../tmp-esm2022/lib/dynamic-components/components/showcase/provide-showcase.js","../tmp-esm2022/lib/dynamic-components/module-providers.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/activate-toc-by-hash/activate-toc-by-hash-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/activate-toc-by-hash/activate-toc-by-hash.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-table-of-content/calculate-table-of-content-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/models/table-of-content-data.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-absolute-top-to-container/calculate-absolute-top-to-container-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-absolute-top-to-container/calculate-absolute-top-to-container.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-hash-from-scroll-position-and-activate-toc/calculate-hash-from-scroll-position-and-activate-toc.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-hash-from-scroll-position-and-activate-toc/calculate-hash-from-scroll-position-and-activate-toc-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-table-of-content/calculate-table-of-content.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/scroll-to-element-in-container/scroll-to-element-in-container-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/scroll-to-element-in-container/scroll-to-element-in-container.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/table-of-content-items/table-of-content-items.component.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/module-providers.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/table-of-content.js","../tmp-esm2022/lib/documentation-page/components/scrollable-container/models/i-scrollable-container.js","../tmp-esm2022/lib/documentation-page/components/scrollable-container/scrollable-container.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-renderer.js","../tmp-esm2022/lib/documentation-page/components/markdown-router/markdown-router.js","../tmp-esm2022/lib/documentation-page/documentation.js","../tmp-esm2022/lib/documentation-page/routes.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-background.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-hero.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-buttons.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-features.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-footer.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-page.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-image.js","../tmp-esm2022/lib/home-page/services/home.store.js","../tmp-esm2022/lib/home-page/components/f-home-page-buttons-row/f-home-page-buttons-row.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-features/f-home-page-features.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-footer/f-home-page-footer.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-header/f-home-page-header.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-hero/f-home-page-hero.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-memberships/f-home-page-memberships.component.js","../tmp-esm2022/lib/home-page/home-root.component.js","../tmp-esm2022/lib/home-page/router.js","../tmp-esm2022/foblex-m-render.js"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { GTAG_CONFIG } from './provide-g-tag';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nexport class GTagService {\n _config = inject(GTAG_CONFIG);\n _document = inject(DOCUMENT);\n _router = inject(Router, { optional: true });\n _initialized = false;\n _configuredIds = new Set();\n initialize() {\n if (this._initialized)\n return;\n const win = this._document.defaultView;\n if (!win) {\n return;\n }\n win.dataLayer = win.dataLayer || [];\n win.gtag = win.gtag || ((...args) => win.dataLayer.push(args));\n const initialConsent = this._config.initialConsent ?? 'denied';\n this._setConsent(initialConsent);\n if (!win.__gtagLoaded__) {\n this._appendScript(this._config.id);\n win.__gtagLoaded__ = true;\n }\n win.gtag('js', new Date());\n this._configAll([this._config.id, ...(this._config.extraIds ?? [])]);\n if (this._config.autoPageview && this._router) {\n this._router.events.pipe(filter(e => e instanceof NavigationEnd)).subscribe(() => {\n this.pageview();\n });\n }\n this._initialized = true;\n }\n updateConsent(granted) {\n this._setConsent(granted ? 'granted' : 'denied');\n }\n event(action, params) {\n const win = this._document.defaultView;\n win?.gtag?.('event', action, params || {});\n }\n pageview(path) {\n const win = this._document.defaultView;\n const p = path ?? this._document.location?.pathname ?? '/';\n for (const id of this._getConfiguredIds()) {\n win?.gtag?.('config', id, { page_path: p });\n }\n }\n adsConversion(sendTo, params) {\n this.event('conversion', { send_to: sendTo, ...params });\n }\n _setConsent(state) {\n const win = this._document.defaultView;\n const base = {\n ad_user_data: state,\n ad_personalization: state,\n ad_storage: state,\n analytics_storage: state,\n };\n if (state === 'denied') {\n win?.gtag?.('consent', 'default', { ...base, wait_for_update: 500 });\n }\n else {\n win?.gtag?.('consent', 'update', base);\n }\n }\n _appendScript(id) {\n if (this._document.querySelector('#gtag-script'))\n return;\n const s = this._document.createElement('script');\n s.id = 'gtag-script';\n s.async = true;\n s.src = `https://www.googletagmanager.com/gtag/js?id=${encodeURIComponent(id)}`;\n this._document.head.appendChild(s);\n }\n _configAll(ids) {\n const win = this._document.defaultView;\n ids.filter(Boolean).forEach(id => {\n if (this._configuredIds.has(id))\n return;\n win?.gtag?.('config', id);\n this._configuredIds.add(id);\n });\n }\n _getConfiguredIds() {\n return Array.from(this._configuredIds.values());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: GTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: GTagService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: GTagService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZy10YWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9hbmFseXRpY3MvZy10YWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFnQixXQUFXLEVBQWMsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHeEMsTUFBTSxPQUFPLFdBQVc7SUFDTCxPQUFPLEdBQUcsTUFBTSxDQUFhLFdBQVcsQ0FBQyxDQUFDO0lBQzFDLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBRXBDLFVBQVU7UUFDZixJQUFJLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUU5QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBSWxCLENBQUM7UUFFVixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDVCxPQUFPO1FBQ1QsQ0FBQztRQUVELEdBQUcsQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7UUFDcEMsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQWUsRUFB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LElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNsRCxDQUFDO3VHQXBHVSxXQUFXOzJHQUFYLFdBQVc7OzJGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbnNlbnRTdGF0ZSwgR1RBR19DT05GSUcsIEdUYWdDb25maWcgfSBmcm9tICcuL3Byb3ZpZGUtZy10YWcnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdUYWdTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29uZmlnID0gaW5qZWN0PEdUYWdDb25maWc+KEdUQUdfQ09ORklHKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIF9pbml0aWFsaXplZCA9IGZhbHNlO1xuICBwcml2YXRlIF9jb25maWd1cmVkSWRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2luaXRpYWxpemVkKSByZXR1cm47XG5cbiAgICBjb25zdCB3aW4gPSB0aGlzLl9kb2N1bWVudC5kZWZhdWx0VmlldyBhcyAoV2luZG93ICYge1xuICAgICAgZGF0YUxheWVyPzogdW5rbm93bltdO1xuICAgICAgZ3RhZz86ICguLi5hcmdzOiB1bmtub3duW10pID0+IHZvaWQ7XG4gICAgICBfX2d0YWdMb2FkZWRfXz86IGJvb2xlYW47XG4gICAgfSkgfCBudWxsO1xuXG4gICAgaWYgKCF3aW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB3aW4uZGF0YUxheWVyID0gd2luLmRhdGFMYXllciB8fCBbXTtcbiAgICB3aW4uZ3RhZyA9IHdpbi5ndGFnIHx8ICgoLi4uYXJnczogdW5rbm93bltdKSA9PiB3aW4uZGF0YUxheWVyIS5wdXNoKGFyZ3MpKTtcblxuICAgIGNvbnN0IGluaXRpYWxDb25zZW50OiBDb25zZW50U3RhdGUgPSB0aGlzLl9jb25maWcuaW5pdGlhbENvbnNlbnQgPz8gJ2RlbmllZCc7XG4gICAgdGhpcy5fc2V0Q29uc2VudChpbml0aWFsQ29uc2VudCk7XG5cbiAgICBpZiAoIXdpbi5fX2d0YWdMb2FkZWRfXykge1xuICAgICAgdGhpcy5fYXBwZW5kU2NyaXB0KHRoaXMuX2NvbmZpZy5pZCk7XG4gICAgICB3aW4uX19ndGFnTG9hZGVkX18gPSB0cnVlO1xuICAgIH1cblxuICAgIHdpbi5ndGFnKCdqcycsIG5ldyBEYXRlKCkpO1xuXG4gICAgdGhpcy5fY29uZmlnQWxsKFt0aGlzLl9jb25maWcuaWQsIC4uLih0aGlzLl9jb25maWcuZXh0cmFJZHMgPz8gW10pXSk7XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLmF1dG9QYWdldmlldyAmJiB0aGlzLl9yb3V0ZXIpIHtcbiAgICAgIHRoaXMuX3JvdXRlci5ldmVudHMucGlwZShmaWx0ZXIoZSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMucGFnZXZpZXcoKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVDb25zZW50KGdyYW50ZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9zZXRDb25zZW50KGdyYW50ZWQgPyAnZ3JhbnRlZCcgOiAnZGVuaWVkJyk7XG4gIH1cblxuICBwdWJsaWMgZXZlbnQoYWN0aW9uOiBzdHJpbmcsIHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgY29uc3Qgd2luID0gdGhpcy5fZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgYW55O1xuICAgIHdpbj8uZ3RhZz8uKCdldmVudCcsIGFjdGlvbiwgcGFyYW1zIHx8IHt9KTtcbiAgfVxuXG4gIHB1YmxpYyBwYWdldmlldyhwYXRoPzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgd2luID0gdGhpcy5fZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgYW55O1xuICAgIGNvbnN0IHAgPSBwYXRoID8/IHRoaXMuX2RvY3VtZW50LmxvY2F0aW9uPy5wYXRobmFtZSA/PyAnLyc7XG4gICAgZm9yIChjb25zdCBpZCBvZiB0aGlzLl9nZXRDb25maWd1cmVkSWRzKCkpIHtcbiAgICAgIHdpbj8uZ3RhZz8uKCdjb25maWcnLCBpZCwgeyBwYWdlX3BhdGg6IHAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFkc0NvbnZlcnNpb24oc2VuZFRvOiBzdHJpbmcsIHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgdGhpcy5ldmVudCgnY29udmVyc2lvbicsIHsgc2VuZF90bzogc2VuZFRvLCAuLi5wYXJhbXMgfSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRDb25zZW50KHN0YXRlOiBDb25zZW50U3RhdGUpOiB2b2lkIHtcbiAgICBjb25zdCB3aW4gPSB0aGlzLl9kb2N1bWVudC5kZWZhdWx0VmlldyBhcyBhbnk7XG4gICAgY29uc3QgYmFzZSA9IHtcbiAgICAgIGFkX3VzZXJfZGF0YTogc3RhdGUsXG4gICAgICBhZF9wZXJzb25hbGl6YXRpb246IHN0YXRlLFxuICAgICAgYWRfc3RvcmFnZTogc3RhdGUsXG4gICAgICBhbmFseXRpY3Nfc3RvcmFnZTogc3RhdGUsXG4gICAgfTtcbiAgICBpZiAoc3RhdGUgPT09ICdkZW5pZWQnKSB7XG4gICAgICB3aW4/Lmd0YWc/LignY29uc2VudCcsICdkZWZhdWx0JywgeyAuLi5iYXNlLCB3YWl0X2Zvcl91cGRhdGU6IDUwMCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgd2luPy5ndGFnPy4oJ2NvbnNlbnQnLCAndXBkYXRlJywgYmFzZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfYXBwZW5kU2NyaXB0KGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2d0YWctc2NyaXB0JykpIHJldHVybjtcbiAgICBjb25zdCBzID0gdGhpcy5fZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgcy5pZCA9ICdndGFnLXNjcmlwdCc7XG4gICAgcy5hc3luYyA9IHRydWU7XG4gICAgcy5zcmMgPSBgaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RhZy9qcz9pZD0ke2VuY29kZVVSSUNvbXBvbmVudChpZCl9YDtcbiAgICB0aGlzLl9kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlnQWxsKGlkczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCB3aW4gPSB0aGlzLl9kb2N1bWVudC5kZWZhdWx0VmlldyBhcyBhbnk7XG4gICAgaWRzLmZpbHRlcihCb29sZWFuKS5mb3JFYWNoKGlkID0+IHtcbiAgICAgIGlmICh0aGlzLl9jb25maWd1cmVkSWRzLmhhcyhpZCkpIHJldHVybjtcbiAgICAgIHdpbj8uZ3RhZz8uKCdjb25maWcnLCBpZCk7XG4gICAgICB0aGlzLl9jb25maWd1cmVkSWRzLmFkZChpZCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDb25maWd1cmVkSWRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLl9jb25maWd1cmVkSWRzLnZhbHVlcygpKTtcbiAgfVxufVxuIl19","import { InjectionToken } from '@angular/core';\nimport { GTagService } from './g-tag.service';\nexport function provideGTag(config) {\n return [\n {\n provide: GTAG_CONFIG,\n useValue: config,\n },\n {\n provide: GTagService,\n useClass: GTagService,\n },\n ];\n}\nexport const GTAG_CONFIG = new InjectionToken('GTAG_CONFIG');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1nLXRhZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9hbmFseXRpY3MvcHJvdmlkZS1nLXRhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU5QyxNQUFNLFVBQVUsV0FBVyxDQUFDLE1BQWtCO0lBQzVDLE9BQU87UUFDTDtZQUNFLE9BQU8sRUFBRSxXQUFXO1lBQ3BCLFFBQVEsRUFBRSxNQUFNO1NBQ2pCO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsV0FBVztZQUNwQixRQUFRLEVBQUUsV0FBVztTQUN0QjtLQUNGLENBQUM7QUFDSixDQUFDO0FBU0QsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFhLGFBQWEsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHVGFnU2VydmljZSB9IGZyb20gJy4vZy10YWcuc2VydmljZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlR1RhZyhjb25maWc6IEdUYWdDb25maWcpOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBHVEFHX0NPTkZJRyxcbiAgICAgIHVzZVZhbHVlOiBjb25maWcsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBHVGFnU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBHVGFnU2VydmljZSxcbiAgICB9LFxuICBdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdUYWdDb25maWcge1xuICBpZDogc3RyaW5nO1xuICBleHRyYUlkcz86IHN0cmluZ1tdO1xuICBhdXRvUGFnZXZpZXc/OiBib29sZWFuO1xuICBpbml0aWFsQ29uc2VudD86IENvbnNlbnRTdGF0ZTtcbn1cblxuZXhwb3J0IGNvbnN0IEdUQUdfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPEdUYWdDb25maWc+KCdHVEFHX0NPTkZJRycpO1xuXG5leHBvcnQgdHlwZSBDb25zZW50U3RhdGUgPSAnZ3JhbnRlZCcgfCAnZGVuaWVkJztcbiJdfQ==","import { ChangeDetectionStrategy, Component, } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class FSearchButtonComponent {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FSearchButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FSearchButtonComponent, isStandalone: true, selector: \"f-search-button\", ngImport: i0, template: \"<a class=\\\"f-icon search\\\" [routerLink]=\\\"[]\\\" fragment=\\\"search\\\"></a>\\n\", styles: [\".f-icon{display:block;width:20px;height:20px;margin-left:8px;color:var(--sponsor);cursor:pointer;transition:transform .2s ease}.f-icon:hover{transform:scale(1.1)}\\n\"], dependencies: [{ kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FSearchButtonComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-search-button', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n RouterLink,\n ], template: \"<a class=\\\"f-icon search\\\" [routerLink]=\\\"[]\\\" fragment=\\\"search\\\"></a>\\n\", styles: [\".f-icon{display:block;width:20px;height:20px;margin-left:8px;color:var(--sponsor);cursor:pointer;transition:transform .2s ease}.f-icon:hover{transform:scale(1.1)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLXNlYXJjaC1idXR0b24vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLXNlYXJjaC1idXR0b24vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFZN0MsTUFBTSxPQUFPLHNCQUFzQjt1R0FBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0IsMkVDaEJuQywyRUFDQSw4TkRZSSxVQUFVOzsyRkFHRCxzQkFBc0I7a0JBVmxDLFNBQVM7K0JBQ0UsaUJBQWlCLGNBR2YsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFVBQVU7cUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLXNlYXJjaC1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyTGluayxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRlNlYXJjaEJ1dHRvbkNvbXBvbmVudCB7XG59XG4iLCI8YSBjbGFzcz1cImYtaWNvbiBzZWFyY2hcIiBbcm91dGVyTGlua109XCJbXVwiIGZyYWdtZW50PVwic2VhcmNoXCI+PC9hPlxuIl19","import { booleanAttribute, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input, Output, ViewChild, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nlet uniqueId = 0;\nexport class FCheckboxComponent {\n changeDetectorRef;\n id = `f-checkbox-${uniqueId++}`;\n change = new EventEmitter();\n inputElement;\n labelElement;\n get checked() {\n return this.isChecked;\n }\n set checked(value) {\n if (value != this.checked) {\n this.isChecked = value;\n this.changeDetectorRef.markForCheck();\n }\n }\n isChecked = false;\n constructor(changeDetectorRef) {\n this.changeDetectorRef = changeDetectorRef;\n }\n onInputClick() {\n this.handleInputClick();\n }\n onTouchTargetClick() {\n this.handleInputClick();\n this.inputElement?.nativeElement.focus();\n }\n handleInputClick() {\n this.isChecked = !this.isChecked;\n this.emitChangeEvent();\n }\n emitChangeEvent() {\n this.change.emit(this.isChecked);\n if (this.inputElement) {\n this.inputElement.nativeElement.checked = this.isChecked;\n }\n }\n onInteractionEvent(event) {\n event.stopPropagation();\n }\n preventBubblingFromLabel(event) {\n if (!!event.target && this.labelElement?.nativeElement.contains(event.target)) {\n event.stopPropagation();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"16.1.0\", version: \"20.1.8\", type: FCheckboxComponent, isStandalone: true, selector: \"f-checkbox\", inputs: { id: \"id\", checked: [\"checked\", \"checked\", booleanAttribute] }, outputs: { change: \"change\" }, host: { listeners: { \"click\": \"preventBubblingFromLabel($event)\" }, properties: { \"class.f-checkbox-checked\": \"checked\" } }, viewQueries: [{ propertyName: \"inputElement\", first: true, predicate: [\"input\"], descendants: true }, { propertyName: \"labelElement\", first: true, predicate: [\"label\"], descendants: true }], ngImport: i0, template: \"<input #input\\n [id]=\\\"id\\\"\\n type=\\\"checkbox\\\"\\n [checked]=\\\"checked\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-checkbox-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <svg class=\\\"f-checkbox-checkmark\\\" focusable=\\\"false\\\" viewBox=\\\"0 0 24 24\\\" aria-hidden=\\\"true\\\">\\n <path class=\\\"f-checkbox-checkmark-path\\\" fill=\\\"none\\\" d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\"/>\\n </svg>\\n</div>\\n<label [for]=\\\"id\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--checkbox-container-background);border-radius:var(--checkbox-border-radius);padding:0 8px;color:var(--checkbox-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-checkbox-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--checkbox-size);height:var(--checkbox-size);margin-right:6px;border-radius:var(--checkbox-border-radius);background-color:var(--checkbox-background);padding:2px}:host .f-checkbox-container .f-checkbox-checkmark{position:absolute;top:calc(var(--checkbox-size) / 8);right:calc(var(--checkbox-size) / 8);bottom:calc(var(--checkbox-size) / 8);left:calc(var(--checkbox-size) / 8);opacity:0}:host .f-checkbox-container .f-checkbox-checkmark .f-checkbox-checkmark-path{stroke:currentColor;stroke-width:3}:host label{-webkit-user-select:none;user-select:none}:host.f-checkbox-checked .f-checkbox-container{background-color:var(--checkbox-checked-background)}:host.f-checkbox-checked .f-checkbox-container .f-checkbox-checkmark{color:var(--checkbox-checkmark-color);opacity:1}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FCheckboxComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-checkbox', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[class.f-checkbox-checked]': 'checked',\n }, template: \"<input #input\\n [id]=\\\"id\\\"\\n type=\\\"checkbox\\\"\\n [checked]=\\\"checked\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-checkbox-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <svg class=\\\"f-checkbox-checkmark\\\" focusable=\\\"false\\\" viewBox=\\\"0 0 24 24\\\" aria-hidden=\\\"true\\\">\\n <path class=\\\"f-checkbox-checkmark-path\\\" fill=\\\"none\\\" d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\"/>\\n </svg>\\n</div>\\n<label [for]=\\\"id\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--checkbox-container-background);border-radius:var(--checkbox-border-radius);padding:0 8px;color:var(--checkbox-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-checkbox-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--checkbox-size);height:var(--checkbox-size);margin-right:6px;border-radius:var(--checkbox-border-radius);background-color:var(--checkbox-background);padding:2px}:host .f-checkbox-container .f-checkbox-checkmark{position:absolute;top:calc(var(--checkbox-size) / 8);right:calc(var(--checkbox-size) / 8);bottom:calc(var(--checkbox-size) / 8);left:calc(var(--checkbox-size) / 8);opacity:0}:host .f-checkbox-container .f-checkbox-checkmark .f-checkbox-checkmark-path{stroke:currentColor;stroke-width:3}:host label{-webkit-user-select:none;user-select:none}:host.f-checkbox-checked .f-checkbox-container{background-color:var(--checkbox-checked-background)}:host.f-checkbox-checked .f-checkbox-container .f-checkbox-checkmark{color:var(--checkbox-checkmark-color);opacity:1}\\n\"] }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { id: [{\n type: Input\n }], change: [{\n type: Output\n }], inputElement: [{\n type: ViewChild,\n args: ['input']\n }], labelElement: [{\n type: ViewChild,\n args: ['label']\n }], checked: [{\n type: Input,\n args: [{ transform: booleanAttribute }]\n }], preventBubblingFromLabel: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL2NvbXBvbmVudHMvZi1jaGVja2JveC9mLWNoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLWNoZWNrYm94L2YtY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdCQUFnQixFQUNoQix1QkFBdUIsRUFBRSxpQkFBaUIsRUFDMUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxHQUM1RSxNQUFNLGVBQWUsQ0FBQzs7QUFFdkIsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBWWpCLE1BQU0sT0FBTyxrQkFBa0I7SUE4Qm5CO0lBM0JILEVBQUUsR0FBRyxjQUFlLFFBQVEsRUFBRyxFQUFFLENBQUM7SUFHbEMsTUFBTSxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO0lBRzNELFlBQVksQ0FBZ0M7SUFHN0MsWUFBWSxDQUFnQztJQUVuRCxJQUNXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLE9BQU8sQ0FBQyxLQUFjO1FBQy9CLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFTyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRzFCLFlBQ1UsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFFOUMsQ0FBQztJQUVNLFlBQVk7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU8sZUFBZTtRQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDM0QsQ0FBQztJQUNILENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxLQUFZO1FBQ3BDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBR00sd0JBQXdCLENBQUMsS0FBaUI7UUFDL0MsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQXFCLENBQUMsRUFBRSxDQUFDO1lBQzdGLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQzt1R0FoRVUsa0JBQWtCOzJGQUFsQixrQkFBa0Isa0dBY1QsZ0JBQWdCLHdYQ2hDdEMsNGhCQWNBOzsyRkRJYSxrQkFBa0I7a0JBVjlCLFNBQVM7K0JBQ0UsWUFBWSxjQUdWLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSiw0QkFBNEIsRUFBRSxTQUFTO3FCQUN4QztzRkFLTSxFQUFFO3NCQURSLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixNQUFNO2dCQUlDLFlBQVk7c0JBRG5CLFNBQVM7dUJBQUMsT0FBTztnQkFJWCxZQUFZO3NCQURsQixTQUFTO3VCQUFDLE9BQU87Z0JBSVAsT0FBTztzQkFEakIsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkE4Qy9CLHdCQUF3QjtzQkFEOUIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCB1bmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2YtY2hlY2tib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9mLWNoZWNrYm94LmNvbXBvbmVudC5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZi1jaGVja2JveC1jaGVja2VkXSc6ICdjaGVja2VkJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgRkNoZWNrYm94Q29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaWQgPSBgZi1jaGVja2JveC0keyB1bmlxdWVJZCsrIH1gO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKVxuICBwcml2YXRlIGlucHV0RWxlbWVudD86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnbGFiZWwnKVxuICBwdWJsaWMgbGFiZWxFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MTGFiZWxFbGVtZW50PjtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzQ2hlY2tlZDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh2YWx1ZSAhPSB0aGlzLmNoZWNrZWQpIHtcbiAgICAgIHRoaXMuaXNDaGVja2VkID0gdmFsdWU7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNDaGVja2VkID0gZmFsc2U7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgb25JbnB1dENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuaGFuZGxlSW5wdXRDbGljaygpO1xuICB9XG5cbiAgcHVibGljIG9uVG91Y2hUYXJnZXRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZUlucHV0Q2xpY2soKTtcbiAgICB0aGlzLmlucHV0RWxlbWVudD8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVJbnB1dENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuaXNDaGVja2VkID0gIXRoaXMuaXNDaGVja2VkO1xuICAgIHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRDaGFuZ2VFdmVudCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMuaXNDaGVja2VkKTtcbiAgICBpZiAodGhpcy5pbnB1dEVsZW1lbnQpIHtcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA9IHRoaXMuaXNDaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkludGVyYWN0aW9uRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsgJyRldmVudCcgXSlcbiAgcHVibGljIHByZXZlbnRCdWJibGluZ0Zyb21MYWJlbChldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmICghIWV2ZW50LnRhcmdldCAmJiB0aGlzLmxhYmVsRWxlbWVudD8ubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpKSB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxpbnB1dCAjaW5wdXRcbiAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gICAgICAgKGNsaWNrKT1cIm9uSW5wdXRDbGljaygpXCJcbiAgICAgICAoY2hhbmdlKT1cIm9uSW50ZXJhY3Rpb25FdmVudCgkZXZlbnQpXCIvPlxuPGRpdiBjbGFzcz1cImYtY2hlY2tib3gtY29udGFpbmVyXCIgKGNsaWNrKT1cIm9uVG91Y2hUYXJnZXRDbGljaygpXCI+XG4gIDxzdmcgY2xhc3M9XCJmLWNoZWNrYm94LWNoZWNrbWFya1wiIGZvY3VzYWJsZT1cImZhbHNlXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgIDxwYXRoIGNsYXNzPVwiZi1jaGVja2JveC1jaGVja21hcmstcGF0aFwiIGZpbGw9XCJub25lXCIgZD1cIk0xLjczLDEyLjkxIDguMSwxOS4yOCAyMi43OSw0LjU5XCIvPlxuICA8L3N2Zz5cbjwvZGl2PlxuPGxhYmVsIFtmb3JdPVwiaWRcIiAjbGFiZWw+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbGFiZWw+XG4iXX0=","import { ChangeDetectionStrategy, Component, HostListener, input, output, viewChild, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nlet uniqueId = 0;\nexport class FRadioButtonComponent {\n id = input(`f-radio-button-${uniqueId++}`, ...(ngDevMode ? [{ debugName: \"id\" }] : []));\n change = output();\n checked = input(false, ...(ngDevMode ? [{ debugName: \"checked\" }] : []));\n labelElement = viewChild('label', ...(ngDevMode ? [{ debugName: \"labelElement\" }] : []));\n onInputClick() {\n this._handleInputClick();\n }\n onTouchTargetClick() {\n this._handleInputClick();\n }\n _handleInputClick() {\n this._emitChangeEvent();\n }\n _emitChangeEvent() {\n this.change.emit(true);\n }\n onInteractionEvent(event) {\n event.stopPropagation();\n }\n preventBubblingFromLabel(event) {\n if (!!event.target && this.labelElement()?.nativeElement.contains(event.target)) {\n event.stopPropagation();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FRadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.2.0\", version: \"20.1.8\", type: FRadioButtonComponent, isStandalone: true, selector: \"f-radio-button\", inputs: { id: { classPropertyName: \"id\", publicName: \"id\", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: \"checked\", publicName: \"checked\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: \"change\" }, host: { listeners: { \"click\": \"preventBubblingFromLabel($event)\" }, properties: { \"class.f-radio-button-checked\": \"checked()\" } }, viewQueries: [{ propertyName: \"labelElement\", first: true, predicate: [\"label\"], descendants: true, isSignal: true }], ngImport: i0, template: \"<input [id]=\\\"id()\\\"\\n type=\\\"radio\\\"\\n [checked]=\\\"checked()\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-radio-button-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <div class=\\\"f-radio-button-inner-circle\\\"></div>\\n</div>\\n<label [for]=\\\"id()\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--radio-button-container-background);border-radius:var(--radio-button-container-border-radius);padding:0 8px;color:var(--radio-button-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-radio-button-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--radio-button-size);height:var(--radio-button-size);margin-right:6px;border-radius:50%;border:1px solid var(--radio-button-border-color);background-color:var(--radio-button-background)}:host .f-radio-button-container .f-radio-button-inner-circle{position:absolute;top:calc(var(--radio-button-size) / 4);right:calc(var(--radio-button-size) / 4);bottom:calc(var(--radio-button-size) / 4);left:calc(var(--radio-button-size) / 4);border-radius:50%}:host label{-webkit-user-select:none;user-select:none}:host.f-radio-button-checked .f-radio-button-container{background-color:var(--radio-button-checked-background)}:host.f-radio-button-checked .f-radio-button-container .f-radio-button-inner-circle{background-color:var(--radio-button-inner-circle-color)}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FRadioButtonComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-radio-button', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[class.f-radio-button-checked]': 'checked()',\n }, template: \"<input [id]=\\\"id()\\\"\\n type=\\\"radio\\\"\\n [checked]=\\\"checked()\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-radio-button-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <div class=\\\"f-radio-button-inner-circle\\\"></div>\\n</div>\\n<label [for]=\\\"id()\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--radio-button-container-background);border-radius:var(--radio-button-container-border-radius);padding:0 8px;color:var(--radio-button-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-radio-button-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--radio-button-size);height:var(--radio-button-size);margin-right:6px;border-radius:50%;border:1px solid var(--radio-button-border-color);background-color:var(--radio-button-background)}:host .f-radio-button-container .f-radio-button-inner-circle{position:absolute;top:calc(var(--radio-button-size) / 4);right:calc(var(--radio-button-size) / 4);bottom:calc(var(--radio-button-size) / 4);left:calc(var(--radio-button-size) / 4);border-radius:50%}:host label{-webkit-user-select:none;user-select:none}:host.f-radio-button-checked .f-radio-button-container{background-color:var(--radio-button-checked-background)}:host.f-radio-button-checked .f-radio-button-container .f-radio-button-inner-circle{background-color:var(--radio-button-inner-circle-color)}\\n\"] }]\n }], propDecorators: { preventBubblingFromLabel: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yYWRpby1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9jb21wb25lbnRzL2YtcmFkaW8tYnV0dG9uL2YtcmFkaW8tYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLXJhZGlvLWJ1dHRvbi9mLXJhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEdBQzlELE1BQU0sZUFBZSxDQUFDOztBQUV2QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFZakIsTUFBTSxPQUFPLHFCQUFxQjtJQUV6QixFQUFFLEdBQUcsS0FBSyxDQUFTLGtCQUFtQixRQUFRLEVBQUcsRUFBRSw4Q0FBQyxDQUFDO0lBRXJELE1BQU0sR0FBRyxNQUFNLEVBQVcsQ0FBQztJQUMzQixPQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssbURBQUMsQ0FBQztJQUU3QixZQUFZLEdBQUcsU0FBUyxDQUFhLE9BQU8sd0RBQUMsQ0FBQztJQUVqRCxZQUFZO1FBQ2pCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTSxrQkFBa0I7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxLQUFZO1FBQ3ZDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBR1Msd0JBQXdCLENBQUMsS0FBaUI7UUFDbEQsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBcUIsQ0FBQyxFQUFFLENBQUM7WUFDL0YsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO3VHQWxDVSxxQkFBcUI7MkZBQXJCLHFCQUFxQiw0bEJDakJsQyxrWEFXQTs7MkZETWEscUJBQXFCO2tCQVZqQyxTQUFTOytCQUNFLGdCQUFnQixjQUdkLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixnQ0FBZ0MsRUFBRSxXQUFXO3FCQUM5Qzs4QkFnQ1Msd0JBQXdCO3NCQURqQyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFFLFFBQVEsQ0FBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgaW5wdXQsIG91dHB1dCwgdmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxubGV0IHVuaXF1ZUlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1yYWRpby1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1yYWRpby1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1yYWRpby1idXR0b24uY29tcG9uZW50LnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5mLXJhZGlvLWJ1dHRvbi1jaGVja2VkXSc6ICdjaGVja2VkKCknLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBGUmFkaW9CdXR0b25Db21wb25lbnQge1xuXG4gIHB1YmxpYyBpZCA9IGlucHV0PHN0cmluZz4oYGYtcmFkaW8tYnV0dG9uLSR7IHVuaXF1ZUlkKysgfWApO1xuXG4gIHB1YmxpYyBjaGFuZ2UgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcbiAgcHVibGljIGNoZWNrZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHJvdGVjdGVkIGxhYmVsRWxlbWVudCA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPignbGFiZWwnKTtcblxuICBwdWJsaWMgb25JbnB1dENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuX2hhbmRsZUlucHV0Q2xpY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBvblRvdWNoVGFyZ2V0Q2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5faGFuZGxlSW5wdXRDbGljaygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlSW5wdXRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLl9lbWl0Q2hhbmdlRXZlbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VtaXRDaGFuZ2VFdmVudCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uSW50ZXJhY3Rpb25FdmVudChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyAnJGV2ZW50JyBdKVxuICBwcm90ZWN0ZWQgcHJldmVudEJ1YmJsaW5nRnJvbUxhYmVsKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCEhZXZlbnQudGFyZ2V0ICYmIHRoaXMubGFiZWxFbGVtZW50KCk/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSkge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuICB9XG59XG4iLCI8aW5wdXQgW2lkXT1cImlkKClcIlxuICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZCgpXCJcbiAgICAgICAoY2xpY2spPVwib25JbnB1dENsaWNrKClcIlxuICAgICAgIChjaGFuZ2UpPVwib25JbnRlcmFjdGlvbkV2ZW50KCRldmVudClcIi8+XG48ZGl2IGNsYXNzPVwiZi1yYWRpby1idXR0b24tY29udGFpbmVyXCIgKGNsaWNrKT1cIm9uVG91Y2hUYXJnZXRDbGljaygpXCI+XG4gIDxkaXYgY2xhc3M9XCJmLXJhZGlvLWJ1dHRvbi1pbm5lci1jaXJjbGVcIj48L2Rpdj5cbjwvZGl2PlxuPGxhYmVsIFtmb3JdPVwiaWQoKVwiICNsYWJlbD5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9sYWJlbD5cbiJdfQ==","export function provideHeader(...configuration) {\n return {\n header: Object.assign({}, ...configuration),\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsYUFBYSxDQUMzQixHQUFHLGFBQThDO0lBRWpELE9BQU87UUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsR0FBRyxhQUFhLENBQUM7S0FDNUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGVhZGVyTWVudUxpbmssIElNZWRpYUxpbmsgfSBmcm9tICcuLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUhlYWRlcihcbiAgLi4uY29uZmlndXJhdGlvbjogUGFydGlhbDxJSGVhZGVyQ29uZmlndXJhdGlvbj5bXVxuKTogUGFydGlhbDxJSGFzSGVhZGVyQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIGhlYWRlcjogT2JqZWN0LmFzc2lnbih7fSwgLi4uY29uZmlndXJhdGlvbiksXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhlYWRlckNvbmZpZ3VyYXRpb24ge1xuXG4gIHNlYXJjaD86IGJvb2xlYW47XG5cbiAgbmF2aWdhdGlvbj86IElIZWFkZXJNZW51TGlua1tdO1xuXG4gIG1lZGlhTGlua3M/OiBJTWVkaWFMaW5rW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhhc0hlYWRlckNvbmZpZ3VyYXRpb24ge1xuXG4gIGhlYWRlcj86IElIZWFkZXJDb25maWd1cmF0aW9uO1xufVxuIl19","export function provideHeaderSearch(search) {\n return {\n search,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXItc2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1oZWFkZXItc2VhcmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxNQUFnQjtJQUNsRCxPQUFPO1FBQ0wsTUFBTTtLQUNQLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUhlYWRlckNvbmZpZ3VyYXRpb24gfSBmcm9tICcuL3Byb3ZpZGUtaGVhZGVyJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZWFkZXJTZWFyY2goc2VhcmNoPzogYm9vbGVhbik6IFBhcnRpYWw8SUhlYWRlckNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBzZWFyY2gsXG4gIH07XG59XG4iXX0=","export function provideHeaderMediaLinks(mediaLinks) {\n return {\n mediaLinks,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXItbWVkaWEtbGlua3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhlYWRlci1tZWRpYS1saW5rcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLFVBQVUsdUJBQXVCLENBQUMsVUFBd0I7SUFDOUQsT0FBTztRQUNMLFVBQVU7S0FDWCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIZWFkZXJDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9wcm92aWRlLWhlYWRlcic7XG5pbXBvcnQgeyBJTWVkaWFMaW5rIH0gZnJvbSAnLi4vLi4vLi4vZG9jdW1lbnRhdGlvbi1wYWdlJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZWFkZXJNZWRpYUxpbmtzKG1lZGlhTGlua3M6IElNZWRpYUxpbmtbXSk6IFBhcnRpYWw8SUhlYWRlckNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBtZWRpYUxpbmtzLFxuICB9O1xufVxuXG4iXX0=","export function provideHeaderNavigation(navigation) {\n return {\n navigation,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXItbmF2aWdhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtaGVhZGVyLW5hdmlnYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLHVCQUF1QixDQUFDLFVBQTZCO0lBQ25FLE9BQU87UUFDTCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGVhZGVyQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vcHJvdmlkZS1oZWFkZXInO1xuaW1wb3J0IHsgSUhlYWRlck1lbnVMaW5rIH0gZnJvbSAnLi4vLi4vLi4vZG9jdW1lbnRhdGlvbi1wYWdlJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZWFkZXJOYXZpZ2F0aW9uKG5hdmlnYXRpb246IElIZWFkZXJNZW51TGlua1tdKTogUGFydGlhbDxJSGVhZGVyQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIG5hdmlnYXRpb24sXG4gIH07XG59XG5cbiJdfQ==","export function provideLanguage(lang) {\n return {\n lang,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1sYW5ndWFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtbGFuZ3VhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLGVBQWUsQ0FBQyxJQUFZO0lBQzFDLE9BQU87UUFDTCxJQUFJO0tBQ0wsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gcHJvdmlkZUxhbmd1YWdlKGxhbmc6IHN0cmluZyk6IElMYW5ndWFnZUNvbmZpZ3VyYXRpb24ge1xuICByZXR1cm4ge1xuICAgIGxhbmcsXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxhbmd1YWdlQ29uZmlndXJhdGlvbiB7XG4gIGxhbmc6IHN0cmluZztcbn1cbiJdfQ==","export function provideLogo(logo) {\n return {\n logo,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1sb2dvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1sb2dvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBWTtJQUN0QyxPQUFPO1FBQ0wsSUFBSTtLQUNMLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVMb2dvKGxvZ286IHN0cmluZyk6IElMb2dvQ29uZmlndXJhdGlvbiB7XG4gIHJldHVybiB7XG4gICAgbG9nbyxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTG9nb0NvbmZpZ3VyYXRpb24ge1xuICBsb2dvOiBzdHJpbmc7XG59XG4iXX0=","export function provideTitle(title) {\n return {\n title,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS10aXRsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtdGl0bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFlBQVksQ0FBQyxLQUFhO0lBQ3hDLE9BQU87UUFDTCxLQUFLO0tBQ04sQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gcHJvdmlkZVRpdGxlKHRpdGxlOiBzdHJpbmcpOiBJVGl0bGVDb25maWd1cmF0aW9uIHtcbiAgcmV0dXJuIHtcbiAgICB0aXRsZSxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVGl0bGVDb25maWd1cmF0aW9uIHtcbiAgdGl0bGU6IHN0cmluZztcbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const HEADER_CONFIGURATION_PROVIDER = new InjectionToken('HEADER_CONFIGURATION_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9kb21haW4vcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsSUFBSSxjQUFjLENBQXVCLCtCQUErQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhlYWRlckNvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzJztcblxuZXhwb3J0IGNvbnN0IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSID0gbmV3IEluamVjdGlvblRva2VuPElIZWFkZXJDb25maWd1cmF0aW9uPignSEVBREVSX0NPTkZJR1VSQVRJT05fUFJPVklERVInKTtcblxuZXhwb3J0IGludGVyZmFjZSBJSGVhZGVyQ29uZmlndXJhdGlvblN0b3JlIHtcbiAgZ2V0SGVhZGVyKCk6IElIZWFkZXJDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkO1xufVxuIl19","import { Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class PopoverService {\n _message = signal(null, ...(ngDevMode ? [{ debugName: \"_message\" }] : []));\n get message() {\n return this._message.asReadonly();\n }\n show(message, timeout = 2000) {\n this._message.set(message);\n setTimeout(() => this._message.set(null), timeout);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PopoverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PopoverService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PopoverService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9zZXJ2aWNlcy9wb3BvdmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNELE1BQU0sT0FBTyxjQUFjO0lBQ1IsUUFBUSxHQUFHLE1BQU0sQ0FBZ0IsSUFBSSxvREFBQyxDQUFDO0lBRXhELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLElBQUksQ0FBQyxPQUFlLEVBQUUsT0FBTyxHQUFHLElBQUk7UUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JELENBQUM7dUdBVlUsY0FBYzsyR0FBZCxjQUFjLGNBRmIsTUFBTTs7MkZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBTaWduYWwsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlclNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZXNzYWdlID0gc2lnbmFsPHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG4gIHB1YmxpYyBnZXQgbWVzc2FnZSgpOiBTaWduYWw8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLl9tZXNzYWdlLmFzUmVhZG9ubHkoKTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93KG1lc3NhZ2U6IHN0cmluZywgdGltZW91dCA9IDIwMDApOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlLnNldChtZXNzYWdlKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX21lc3NhZ2Uuc2V0KG51bGwpLCB0aW1lb3V0KTtcbiAgfVxufVxuIl19","import { inject, Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { DOCUMENT_ELEMENT, LOCAL_STORAGE, WINDOW } from '../common';\nimport * as i0 from \"@angular/core\";\nexport class ThemeService {\n _localStorage = inject(LOCAL_STORAGE, { optional: true });\n _window = inject(WINDOW, { optional: true });\n _theme = new Subject();\n _docElement = inject(DOCUMENT_ELEMENT);\n get theme$() {\n return this._theme.asObservable();\n }\n initialize() {\n if (this.getPreferredTheme() === 'dark' && !this._isDocumentContainsDarkTheme()) {\n this._docElement.classList.add('dark');\n this._localStorage?.setItem('preferred-theme', 'dark');\n }\n }\n updateTheme() {\n this._theme.next();\n }\n getPreferredTheme() {\n return this._getItem('preferred-theme')\n || (this._matchMedia('(prefers-color-scheme: dark)')?.matches ? 'dark' : 'light');\n }\n _getItem(key) {\n return this._localStorage?.getItem?.(key) || null;\n }\n _matchMedia(query) {\n return this._window?.matchMedia?.(query) || { matches: false };\n }\n _isDocumentContainsDarkTheme() {\n return this._docElement.classList.contains('dark');\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS90aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBR3BFLE1BQU0sT0FBTyxZQUFZO0lBQ04sYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxRCxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLE1BQU0sR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQzdCLFdBQVcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUV4RCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxFQUFFLENBQUM7WUFDaEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pELENBQUM7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDO2VBQ2xDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRU8sUUFBUSxDQUFDLEdBQVc7UUFDMUIsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUNwRCxDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWE7UUFDL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBb0IsQ0FBQztJQUNuRixDQUFDO0lBRU8sNEJBQTRCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELENBQUM7dUdBcENVLFlBQVk7MkdBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRE9DVU1FTlRfRUxFTUVOVCwgTE9DQUxfU1RPUkFHRSwgV0lORE9XIH0gZnJvbSAnLi4vY29tbW9uJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRoZW1lU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2xvY2FsU3RvcmFnZSA9IGluamVjdChMT0NBTF9TVE9SQUdFLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF93aW5kb3cgPSBpbmplY3QoV0lORE9XLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvY0VsZW1lbnQgPSBpbmplY3QoRE9DVU1FTlRfRUxFTUVOVCk7XG5cbiAgcHVibGljIGdldCB0aGVtZSQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3RoZW1lLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZ2V0UHJlZmVycmVkVGhlbWUoKSA9PT0gJ2RhcmsnICYmICF0aGlzLl9pc0RvY3VtZW50Q29udGFpbnNEYXJrVGhlbWUoKSkge1xuICAgICAgdGhpcy5fZG9jRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkYXJrJyk7XG4gICAgICB0aGlzLl9sb2NhbFN0b3JhZ2U/LnNldEl0ZW0oJ3ByZWZlcnJlZC10aGVtZScsICdkYXJrJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZVRoZW1lKCk6IHZvaWQge1xuICAgIHRoaXMuX3RoZW1lLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRQcmVmZXJyZWRUaGVtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9nZXRJdGVtKCdwcmVmZXJyZWQtdGhlbWUnKVxuICAgICAgfHwgKHRoaXMuX21hdGNoTWVkaWEoJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknKT8ubWF0Y2hlcyA/ICdkYXJrJyA6ICdsaWdodCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0SXRlbShrZXk6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9sb2NhbFN0b3JhZ2U/LmdldEl0ZW0/LihrZXkpIHx8IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9tYXRjaE1lZGlhKHF1ZXJ5OiBzdHJpbmcpOiBNZWRpYVF1ZXJ5TGlzdCB7XG4gICAgcmV0dXJuIHRoaXMuX3dpbmRvdz8ubWF0Y2hNZWRpYT8uKHF1ZXJ5KSB8fCB7IG1hdGNoZXM6IGZhbHNlIH0gYXMgTWVkaWFRdWVyeUxpc3Q7XG4gIH1cblxuICBwcml2YXRlIF9pc0RvY3VtZW50Q29udGFpbnNEYXJrVGhlbWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RvY0VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdkYXJrJyk7XG4gIH1cbn1cbiJdfQ==","import { from, map, of, switchMap } from 'rxjs';\nexport function copyToClipboard(value) {\n const blob = new Blob([value], { type: 'text/plain' });\n const data = [new ClipboardItem({ [blob.type]: blob })];\n // @ts-ignore\n return from(window?.navigator.permissions.query({ name: 'clipboard-write' })).pipe(map((permission) => permission.state !== 'denied'), switchMap((isGranted) => {\n if (isGranted) {\n return from(navigator.clipboard.write(data));\n }\n return of(undefined);\n }));\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS10by1jbGlwYm9hcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL3V0aWxzL2NvcHktdG8tY2xpcGJvYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxLQUFhO0lBQzNDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUUsS0FBSyxDQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN6RCxNQUFNLElBQUksR0FBRyxDQUFFLElBQUksYUFBYSxDQUFDLEVBQUUsQ0FBRSxJQUFJLENBQUMsSUFBSSxDQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBRSxDQUFDO0lBRTVELGFBQWE7SUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoRixHQUFHLENBQUMsQ0FBQyxVQUE0QixFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxFQUNwRSxTQUFTLENBQUMsQ0FBQyxTQUFrQixFQUFFLEVBQUU7UUFDL0IsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZCLENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZnJvbSwgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjb3B5VG9DbGlwYm9hcmQodmFsdWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55IHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbIHZhbHVlIF0sIHsgdHlwZTogJ3RleHQvcGxhaW4nIH0pO1xuICBjb25zdCBkYXRhID0gWyBuZXcgQ2xpcGJvYXJkSXRlbSh7IFsgYmxvYi50eXBlIF06IGJsb2IgfSkgXTtcblxuICAvLyBAdHMtaWdub3JlXG4gIHJldHVybiBmcm9tKHdpbmRvdz8ubmF2aWdhdG9yLnBlcm1pc3Npb25zLnF1ZXJ5KHsgbmFtZTogJ2NsaXBib2FyZC13cml0ZScgfSkpLnBpcGUoXG4gICAgbWFwKChwZXJtaXNzaW9uOiBQZXJtaXNzaW9uU3RhdHVzKSA9PiBwZXJtaXNzaW9uLnN0YXRlICE9PSAnZGVuaWVkJyksXG4gICAgc3dpdGNoTWFwKChpc0dyYW50ZWQ6IGJvb2xlYW4pID0+IHtcbiAgICAgIGlmIChpc0dyYW50ZWQpIHtcbiAgICAgICAgcmV0dXJuIGZyb20obmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZShkYXRhKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICB9KSxcbiAgKTtcbn1cbiJdfQ==","import { inject, InjectionToken } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nexport const DOCUMENT_ELEMENT = new InjectionToken('DOCUMENT_ELEMENT', {\n factory: () => inject(DOCUMENT).documentElement,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vdXRpbHMvZG9jdW1lbnQtZWxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQWMsa0JBQWtCLEVBQUU7SUFDbEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxlQUFlO0NBQ2hELENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5leHBvcnQgY29uc3QgRE9DVU1FTlRfRUxFTUVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxIVE1MRWxlbWVudD4oJ0RPQ1VNRU5UX0VMRU1FTlQnLCB7XG4gIGZhY3Rvcnk6ICgpID0+IGluamVjdChET0NVTUVOVCkuZG9jdW1lbnRFbGVtZW50LFxufSk7XG4iXX0=","import { DOCUMENT } from '@angular/common';\nimport { inject, InjectionToken } from '@angular/core';\nexport const WINDOW = new InjectionToken('F_WINDOW', {\n factory: () => {\n const { defaultView } = inject(DOCUMENT);\n if (!defaultView) {\n throw new Error('Window is not available');\n }\n return defaultView;\n },\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi91dGlscy93aW5kb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBUyxVQUFVLEVBQUU7SUFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBRTtRQUNaLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBRUQsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IFdJTkRPVyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxXaW5kb3c+KCdGX1dJTkRPVycsIHtcbiAgZmFjdG9yeTogKCkgPT4ge1xuICAgIGNvbnN0IHsgZGVmYXVsdFZpZXcgfSA9IGluamVjdChET0NVTUVOVCk7XG5cbiAgICBpZiAoIWRlZmF1bHRWaWV3KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1dpbmRvdyBpcyBub3QgYXZhaWxhYmxlJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlZmF1bHRWaWV3O1xuICB9LFxufSk7XG4iXX0=","import { inject, InjectionToken } from '@angular/core';\nimport { WINDOW } from './window';\nexport const LOCAL_STORAGE = new InjectionToken('F_LOCAL_STORAGE', {\n factory: () => inject(WINDOW).localStorage,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vdXRpbHMvbG9jYWwtc3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWxDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxJQUFJLGNBQWMsQ0FBVSxpQkFBaUIsRUFBRTtJQUMxRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVk7Q0FDM0MsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBXSU5ET1cgfSBmcm9tICcuL3dpbmRvdyc7XG5cbmV4cG9ydCBjb25zdCBMT0NBTF9TVE9SQUdFID0gbmV3IEluamVjdGlvblRva2VuPFN0b3JhZ2U+KCdGX0xPQ0FMX1NUT1JBR0UnLCB7XG4gIGZhY3Rvcnk6ICgpID0+IGluamVjdChXSU5ET1cpLmxvY2FsU3RvcmFnZSxcbn0pO1xuIl19","import { inject, InjectionToken } from '@angular/core';\nimport { WINDOW } from './window';\nexport const LOCATION = new InjectionToken('F_LOCATION', {\n factory: () => inject(WINDOW).location,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL3V0aWxzL2xvY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFXLFlBQVksRUFBRTtJQUNqRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVE7Q0FDdkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBXSU5ET1cgfSBmcm9tICcuL3dpbmRvdyc7XG5cbmV4cG9ydCBjb25zdCBMT0NBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxMb2NhdGlvbj4oJ0ZfTE9DQVRJT04nLCB7XG4gIGZhY3Rvcnk6ICgpID0+IGluamVjdChXSU5ET1cpLmxvY2F0aW9uLFxufSk7XG4iXX0=","import { inject, InjectionToken, PLATFORM_ID } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nexport const IS_BROWSER_PLATFORM = new InjectionToken('IS_BROWSER_PLATFORM', {\n factory() {\n return isPlatformBrowser(inject(PLATFORM_ID));\n },\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL3V0aWxzL3BsYXRmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVwRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FBVSxxQkFBcUIsRUFBRTtJQUNwRixPQUFPO1FBQ0wsT0FBTyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuZXhwb3J0IGNvbnN0IElTX0JST1dTRVJfUExBVEZPUk0gPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oJ0lTX0JST1dTRVJfUExBVEZPUk0nLCB7XG4gIGZhY3RvcnkoKSB7XG4gICAgcmV0dXJuIGlzUGxhdGZvcm1Ccm93c2VyKGluamVjdChQTEFURk9STV9JRCkpO1xuICB9LFxufSk7XG4iXX0=","import { DOCUMENT } from '@angular/common';\nimport { inject, Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class FHeadTagService {\n _document = inject(DOCUMENT);\n setTitle(title) {\n this._document.title = title || '';\n }\n setDescription(description) {\n const meta = this._getDescription() || this._createElement('meta');\n meta.setAttribute('name', 'description');\n meta.setAttribute('content', description);\n }\n _getDescription() {\n return this._document.querySelector(`meta[name=\"description\"]`) || null;\n }\n setCanonical(url) {\n const link = this._getCanonical() || this._createElement('link');\n link.setAttribute('rel', 'canonical');\n link.setAttribute('href', url);\n }\n _getCanonical() {\n return this._document.querySelector(`link[rel=\"canonical\"]`) || null;\n }\n updateTag(tag) {\n const meta = this._getMetaTag(tag) || this._createElement('meta');\n meta.setAttribute('property', tag.property);\n meta.setAttribute('content', tag.content);\n }\n _getMetaTag(tag) {\n return this._document.querySelector(`meta[property=\"${tag.property}\"]`) || null;\n }\n _createElement(tag) {\n const element = this._document.createElement(tag);\n const head = this._document.getElementsByTagName('head')[0];\n head.appendChild(element);\n return element;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHeadTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHeadTagService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHeadTagService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1oZWFkLXRhZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9hbmFseXRpY3MvY29tbW9uLXNlcnZpY2VzL2YtaGVhZC10YWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR25ELE1BQU0sT0FBTyxlQUFlO0lBRVQsU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV2QyxRQUFRLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFTSxjQUFjLENBQUMsV0FBbUI7UUFDdkMsTUFBTSxJQUFJLEdBQW9CLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFrQixNQUFNLENBQUMsQ0FBQztRQUNyRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sZUFBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLDBCQUEwQixDQUFDLElBQUksSUFBSSxDQUFDO0lBQzFFLENBQUM7SUFFTSxZQUFZLENBQUMsR0FBVztRQUM3QixNQUFNLElBQUksR0FBb0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQWtCLE1BQU0sQ0FBQyxDQUFDO1FBQ25HLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxhQUFhO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDdkUsQ0FBQztJQUVNLFNBQVMsQ0FBQyxHQUFhO1FBQzVCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBa0IsTUFBTSxDQUFDLENBQUM7UUFDbkYsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sV0FBVyxDQUFDLEdBQWE7UUFDL0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxrQkFBbUIsR0FBRyxDQUFDLFFBQVMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3BGLENBQUM7SUFFTyxjQUFjLENBQXdCLEdBQVc7UUFDdkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFTLENBQUM7UUFDMUQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBRSxDQUFDLENBQUUsQ0FBQztRQUM5RCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFCLE9BQU8sT0FBbUIsQ0FBQztJQUM3QixDQUFDO3VHQTVDVSxlQUFlOzJHQUFmLGVBQWUsY0FERixNQUFNOzsyRkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBGSGVhZFRhZ1NlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcblxuICBwdWJsaWMgc2V0VGl0bGUodGl0bGU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX2RvY3VtZW50LnRpdGxlID0gdGl0bGUgfHwgJyc7XG4gIH1cblxuICBwdWJsaWMgc2V0RGVzY3JpcHRpb24oZGVzY3JpcHRpb246IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IG1ldGE6IEhUTUxNZXRhRWxlbWVudCA9IHRoaXMuX2dldERlc2NyaXB0aW9uKCkgfHwgdGhpcy5fY3JlYXRlRWxlbWVudDxIVE1MTWV0YUVsZW1lbnQ+KCdtZXRhJyk7XG4gICAgbWV0YS5zZXRBdHRyaWJ1dGUoJ25hbWUnLCAnZGVzY3JpcHRpb24nKTtcbiAgICBtZXRhLnNldEF0dHJpYnV0ZSgnY29udGVudCcsIGRlc2NyaXB0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldERlc2NyaXB0aW9uKCk6IEhUTUxNZXRhRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBtZXRhW25hbWU9XCJkZXNjcmlwdGlvblwiXWApIHx8IG51bGw7XG4gIH1cblxuICBwdWJsaWMgc2V0Q2Fub25pY2FsKHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgbGluazogSFRNTExpbmtFbGVtZW50ID0gdGhpcy5fZ2V0Q2Fub25pY2FsKCkgfHwgdGhpcy5fY3JlYXRlRWxlbWVudDxIVE1MTGlua0VsZW1lbnQ+KCdsaW5rJyk7XG4gICAgbGluay5zZXRBdHRyaWJ1dGUoJ3JlbCcsICdjYW5vbmljYWwnKTtcbiAgICBsaW5rLnNldEF0dHJpYnV0ZSgnaHJlZicsIHVybCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDYW5vbmljYWwoKTogSFRNTExpbmtFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYGxpbmtbcmVsPVwiY2Fub25pY2FsXCJdYCkgfHwgbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVUYWcodGFnOiBJTWV0YVRhZyk6IHZvaWQge1xuICAgIGNvbnN0IG1ldGEgPSB0aGlzLl9nZXRNZXRhVGFnKHRhZykgfHwgdGhpcy5fY3JlYXRlRWxlbWVudDxIVE1MTWV0YUVsZW1lbnQ+KCdtZXRhJyk7XG4gICAgbWV0YS5zZXRBdHRyaWJ1dGUoJ3Byb3BlcnR5JywgdGFnLnByb3BlcnR5KTtcbiAgICBtZXRhLnNldEF0dHJpYnV0ZSgnY29udGVudCcsIHRhZy5jb250ZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE1ldGFUYWcodGFnOiBJTWV0YVRhZyk6IEhUTUxNZXRhRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBtZXRhW3Byb3BlcnR5PVwiJHsgdGFnLnByb3BlcnR5IH1cIl1gKSB8fCBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlRWxlbWVudDxURWxlbWVudCBleHRlbmRzIE5vZGU+KHRhZzogc3RyaW5nKTogVEVsZW1lbnQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9kb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZykgYXMgTm9kZTtcbiAgICBjb25zdCBoZWFkID0gdGhpcy5fZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVsgMCBdO1xuICAgIGhlYWQuYXBwZW5kQ2hpbGQoZWxlbWVudCk7XG5cbiAgICByZXR1cm4gZWxlbWVudCBhcyBURWxlbWVudDtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNZXRhVGFnIHtcblxuICBwcm9wZXJ0eTogc3RyaW5nO1xuXG4gIGNvbnRlbnQ6IHN0cmluZztcbn1cbiJdfQ==","export class HandleNavigationLinksHandler {\n handle(request) {\n const target = this._getClosestAnchorTag(this._getTargetElement(request.event));\n if (target && this._hasHref(target)) {\n request.event.preventDefault();\n const href = target.getAttribute('href');\n if (!this._isExternalLink(href)) {\n this._navigateInternalLink(href, request.router);\n }\n else {\n window.open(href, '_blank');\n }\n }\n }\n _getTargetElement(event) {\n return event?.target;\n }\n _getClosestAnchorTag(element) {\n return element?.closest('a');\n }\n _hasHref(element) {\n return element.hasAttribute('href');\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n _navigateInternalLink(href, router) {\n if (href.startsWith('/')) {\n href = href.substring(1);\n }\n router.navigate([href]).then();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLW5hdmlnYXRpb24tbGlua3MuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9tYWluL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLDRCQUE0QjtJQUVoQyxNQUFNLENBQUMsT0FBcUM7UUFDakQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVoRixJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDcEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUUvQixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ25ELENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQTtZQUM3QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUFZO1FBQ3BDLE9BQU8sS0FBSyxFQUFFLE1BQXFCLENBQUM7SUFDdEMsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE9BQTJCO1FBQ3RELE9BQU8sT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU8sUUFBUSxDQUFDLE9BQW9CO1FBQ25DLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU8sZUFBZSxDQUFDLElBQVk7UUFDbEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLHFCQUFxQixDQUFDLElBQVksRUFBRSxNQUFjO1FBQ3hELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFDRCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NSZXF1ZXN0IH0gZnJvbSAnLi9oYW5kbGUtbmF2aWdhdGlvbi1saW5rcy5yZXF1ZXN0JztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCBjbGFzcyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NIYW5kbGVyIHtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEhhbmRsZU5hdmlnYXRpb25MaW5rc1JlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSB0aGlzLl9nZXRDbG9zZXN0QW5jaG9yVGFnKHRoaXMuX2dldFRhcmdldEVsZW1lbnQocmVxdWVzdC5ldmVudCkpO1xuXG4gICAgaWYgKHRhcmdldCAmJiB0aGlzLl9oYXNIcmVmKHRhcmdldCkpIHtcbiAgICAgIHJlcXVlc3QuZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgY29uc3QgaHJlZiA9IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSE7XG4gICAgICBpZiAoIXRoaXMuX2lzRXh0ZXJuYWxMaW5rKGhyZWYpKSB7XG4gICAgICAgIHRoaXMuX25hdmlnYXRlSW50ZXJuYWxMaW5rKGhyZWYsIHJlcXVlc3Qucm91dGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHdpbmRvdy5vcGVuKGhyZWYsICdfYmxhbmsnKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldFRhcmdldEVsZW1lbnQoZXZlbnQ6IEV2ZW50KTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gZXZlbnQ/LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENsb3Nlc3RBbmNob3JUYWcoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsKTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgICByZXR1cm4gZWxlbWVudD8uY2xvc2VzdCgnYScpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFzSHJlZihlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnaHJlZicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNFeHRlcm5hbExpbmsoaHJlZjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGhyZWYuc3RhcnRzV2l0aCgnd3d3JykgfHwgaHJlZi5zdGFydHNXaXRoKCdodHRwJyk7XG4gIH1cblxuICBwcml2YXRlIF9uYXZpZ2F0ZUludGVybmFsTGluayhocmVmOiBzdHJpbmcsIHJvdXRlcjogUm91dGVyKTogdm9pZCB7XG4gICAgaWYgKGhyZWYuc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICBocmVmID0gaHJlZi5zdWJzdHJpbmcoMSk7XG4gICAgfVxuICAgIHJvdXRlci5uYXZpZ2F0ZShbaHJlZl0pLnRoZW4oKTtcbiAgfVxufVxuIl19","export class HandleNavigationLinksRequest {\n event;\n window;\n router;\n constructor(event, window, router) {\n this.event = event;\n this.window = window;\n this.router = router;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLW5hdmlnYXRpb24tbGlua3MucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9tYWluL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzLnJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLDRCQUE0QjtJQUU5QjtJQUNBO0lBQ0E7SUFIVCxZQUNTLEtBQWlCLEVBQ2pCLE1BQWMsRUFDZCxNQUFjO1FBRmQsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUV2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5leHBvcnQgY2xhc3MgSGFuZGxlTmF2aWdhdGlvbkxpbmtzUmVxdWVzdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBldmVudDogTW91c2VFdmVudCxcbiAgICBwdWJsaWMgd2luZG93OiBXaW5kb3csXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxuICApIHtcbiAgfVxufVxuIl19","export function provide404Markdown(notFoundMarkdown) {\n return {\n notFoundMarkdown,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS00MDQtbWFya2Rvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLTQwNC1tYXJrZG93bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsa0JBQWtCLENBQUMsZ0JBQXdCO0lBQ3pELE9BQU87UUFDTCxnQkFBZ0I7S0FDakIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWRvY3VtZW50YXRpb24tY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlNDA0TWFya2Rvd24obm90Rm91bmRNYXJrZG93bjogc3RyaW5nKTogUGFydGlhbDxJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBub3RGb3VuZE1hcmtkb3duLFxuICB9O1xufVxuIl19","export function defineLazyComponent(selector, loader) {\n return {\n selector,\n component: extractComponent(loader),\n };\n}\nexport function provideComponents(components) {\n return {\n components,\n };\n}\nexport function extractComponent(loader) {\n return loader().then(module => {\n const component = Object.values(module).find((v) => typeof v === 'function' && Object.prototype.hasOwnProperty.call(v, 'ɵcmp'));\n if (!component) {\n throw new Error('Component not found');\n }\n return component;\n });\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsUUFBZ0IsRUFDaEIsTUFBOEM7SUFFOUMsT0FBTztRQUNMLFFBQVE7UUFDUixTQUFTLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDO0tBQ3BDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFVBQW1DO0lBQ25FLE9BQU87UUFDTCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsTUFBOEM7SUFDN0UsT0FBTyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDNUIsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQzFDLENBQUMsQ0FBQyxFQUFrQixFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssVUFBVSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQ2xHLENBQUM7UUFDRixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktZG9jdW1lbnRhdGlvbi1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSB9IGZyb20gJy4uLy4uLy4uL2R5bmFtaWMtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWZpbmVMYXp5Q29tcG9uZW50KFxuICBzZWxlY3Rvcjogc3RyaW5nLFxuICBsb2FkZXI6ICgpID0+IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+LFxuKTogSUR5bmFtaWNDb21wb25lbnRJdGVtIHtcbiAgcmV0dXJuIHtcbiAgICBzZWxlY3RvcixcbiAgICBjb21wb25lbnQ6IGV4dHJhY3RDb21wb25lbnQobG9hZGVyKSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVDb21wb25lbnRzKGNvbXBvbmVudHM6IElEeW5hbWljQ29tcG9uZW50SXRlbVtdKTogUGFydGlhbDxJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBjb21wb25lbnRzLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdENvbXBvbmVudChsb2FkZXI6ICgpID0+IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+KTogUHJvbWlzZTxUeXBlPGFueT4+IHtcbiAgcmV0dXJuIGxvYWRlcigpLnRoZW4obW9kdWxlID0+IHtcbiAgICBjb25zdCBjb21wb25lbnQgPSBPYmplY3QudmFsdWVzKG1vZHVsZSkuZmluZChcbiAgICAgICh2KTogdiBpcyBUeXBlPGFueT4gPT4gdHlwZW9mIHYgPT09ICdmdW5jdGlvbicgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHYsICfJtWNtcCcpLFxuICAgICk7XG4gICAgaWYgKCFjb21wb25lbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ29tcG9uZW50IG5vdCBmb3VuZCcpO1xuICAgIH1cbiAgICByZXR1cm4gY29tcG9uZW50O1xuICB9KTtcbn1cbiJdfQ==","export function provideDirectory(docsDir) {\n return {\n docsDir,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1kaXJlY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWRpcmVjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsT0FBZTtJQUM5QyxPQUFPO1FBQ0wsT0FBTztLQUNSLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uIH0gZnJvbSAnLi4vaS1kb2N1bWVudGF0aW9uLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURpcmVjdG9yeShkb2NzRGlyOiBzdHJpbmcpOiBQYXJ0aWFsPElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIGRvY3NEaXIsXG4gIH07XG59XG4iXX0=","import { InjectionToken } from '@angular/core';\nexport function provideDocumentation(configuration) {\n const merged = Object.assign({}, ...configuration.providers);\n return {\n provide: DOCUMENTATION_CONFIGURATION, useValue: merged,\n };\n}\nexport const DOCUMENTATION_CONFIGURATION = new InjectionToken('DOCUMENTATION_CONFIGURATION');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1kb2N1bWVudGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1kb2N1bWVudGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxVQUFVLG9CQUFvQixDQUFDLGFBQWdDO0lBQ25FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdELE9BQU87UUFDTCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsUUFBUSxFQUFFLE1BQU07S0FDdkQsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FBOEIsNkJBQTZCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktZG9jdW1lbnRhdGlvbi1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRG9jdW1lbnRhdGlvbihjb25maWd1cmF0aW9uOiBJUHJvdmlkZXJJbnN0YW5jZSkge1xuICBjb25zdCBtZXJnZWQgPSBPYmplY3QuYXNzaWduKHt9LCAuLi5jb25maWd1cmF0aW9uLnByb3ZpZGVycyk7XG4gIHJldHVybiB7XG4gICAgcHJvdmlkZTogRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OLCB1c2VWYWx1ZTogbWVyZ2VkLFxuICB9O1xufVxuXG5leHBvcnQgY29uc3QgRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OID0gbmV3IEluamVjdGlvblRva2VuPElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbj4oJ0RPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTicpO1xuXG5pbnRlcmZhY2UgSVByb3ZpZGVySW5zdGFuY2Uge1xuICBwcm92aWRlcnM6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPltdO1xufVxuIl19","export function provideMeta(meta) {\n return {\n meta,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1tZXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1tZXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBZTtJQUN6QyxPQUFPO1FBQ0wsSUFBSTtLQUNMLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1ldGFEYXRhIH0gZnJvbSAnLi4vLi4vYW5hbHl0aWNzJztcbmltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktZG9jdW1lbnRhdGlvbi1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVNZXRhKG1ldGE6IElNZXRhRGF0YSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgbWV0YSxcbiAgfTtcbn1cbiJdfQ==","export function provideFooterNavigation(navigation) {\n return {\n footer: {\n navigation,\n },\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1mb290ZXItbmF2aWdhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtZm9vdGVyLW5hdmlnYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxVQUFxQztJQUVyQyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sVUFBVTtTQUNYO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24sIElNYXJrZG93bkZvb3Rlck5hdmlnYXRpb24gfSBmcm9tICcuLi8uLi9pbmRleCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRm9vdGVyTmF2aWdhdGlvbihcbiAgbmF2aWdhdGlvbjogSU1hcmtkb3duRm9vdGVyTmF2aWdhdGlvbixcbik6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgZm9vdGVyOiB7XG4gICAgICBuYXZpZ2F0aW9uLFxuICAgIH0sXG4gIH07XG59XG5cbiJdfQ==","export function provideNavigation(...navigation) {\n return {\n navigation,\n };\n}\nexport function defineNavigationGroup(name, items) {\n return {\n text: name,\n items,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1uYXZpZ2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1uYXZpZ2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxHQUFHLFVBQThCO0lBQ2pFLE9BQU87UUFDTCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUMsSUFBd0IsRUFBRSxLQUF3QjtJQUN0RixPQUFPO1FBQ0wsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLO0tBQ04sQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWRvY3VtZW50YXRpb24tY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBJTmF2aWdhdGlvbkdyb3VwLCBJTmF2aWdhdGlvbkl0ZW0gfSBmcm9tICcuLi8uLi9jb21wb25lbnRzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVOYXZpZ2F0aW9uKC4uLm5hdmlnYXRpb246IElOYXZpZ2F0aW9uR3JvdXBbXSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgbmF2aWdhdGlvbixcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlZmluZU5hdmlnYXRpb25Hcm91cChuYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQsIGl0ZW1zOiBJTmF2aWdhdGlvbkl0ZW1bXSk6IElOYXZpZ2F0aW9uR3JvdXAge1xuICByZXR1cm4ge1xuICAgIHRleHQ6IG5hbWUsXG4gICAgaXRlbXMsXG4gIH07XG59XG4iXX0=","export function provideTableOfContent(tableOfContent = {\n title: 'In this article',\n range: { start: 2, end: 6 },\n}) {\n return {\n tableOfContent,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS10YWJsZS1vZi1jb250ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS10YWJsZS1vZi1jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxpQkFBeUM7SUFDN0UsS0FBSyxFQUFFLGlCQUFpQjtJQUN4QixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUU7Q0FDNUI7SUFDQyxPQUFPO1FBQ0wsY0FBYztLQUNmLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVRhYmxlT2ZDb250ZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWRvY3VtZW50YXRpb24tY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlVGFibGVPZkNvbnRlbnQodGFibGVPZkNvbnRlbnQ6IElUYWJsZU9mQ29udGVudCB8IG51bGwgPSB7XG4gIHRpdGxlOiAnSW4gdGhpcyBhcnRpY2xlJyxcbiAgcmFuZ2U6IHsgc3RhcnQ6IDIsIGVuZDogNiB9LFxufSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgdGFibGVPZkNvbnRlbnQsXG4gIH07XG59XG4iXX0=","import { inject, Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter, map, startWith } from 'rxjs';\nimport { FHeadTagService } from './f-head-tag.service';\nimport { tap } from 'rxjs/operators';\nimport { DOCUMENTATION_CONFIGURATION } from '../../domain';\nimport { LOCATION } from '../../../common';\nimport * as i0 from \"@angular/core\";\nexport class FMetaService {\n _location = inject(LOCATION);\n _router = inject(Router);\n _headTag = inject(FHeadTagService);\n _configuration = inject(DOCUMENTATION_CONFIGURATION);\n changes() {\n return this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._router.url), tap((currentUrl) => {\n const defaultData = this._configuration.meta;\n if (!defaultData)\n return;\n const data = { ...defaultData };\n const item = this._findDocItemByUrl(this._findDocGroupByUrl(currentUrl), currentUrl);\n if (item) {\n data.title = `${item.pageTitle || item.text} | ${defaultData.app_name}`;\n data.url = this._buildAbsoluteUrl(currentUrl);\n data.canonical = item.canonical;\n data.description = item.description || defaultData.description;\n data.image = item.image || defaultData.image;\n data.image_width = item.image_width || defaultData.image_width;\n data.image_height = item.image_height || defaultData.image_height;\n data.image_type = item.image_type || defaultData.image_type;\n }\n if (!data.url) {\n data.url = this._buildAbsoluteUrl(currentUrl);\n }\n if (data.image) {\n data.image = this._toAbsoluteUrl(data.image);\n }\n this._updateMetaTags(data);\n }));\n }\n dispose() {\n if (!this._configuration.meta) {\n return;\n }\n this._updateMetaTags(this._configuration.meta);\n }\n _findDocGroupByUrl(url) {\n return (this._configuration.navigation || []).find((g) => g.items.find((i) => url.endsWith(i.link)));\n }\n _findDocItemByUrl(group, url) {\n return (group?.items || []).find((i) => url.endsWith(i.link));\n }\n _buildAbsoluteUrl(url) {\n try {\n return new URL(url, this._location.origin).toString();\n }\n catch {\n return this._location.origin + url;\n }\n }\n _toAbsoluteUrl(maybeRelative) {\n try {\n return new URL(maybeRelative, this._location.origin).toString();\n }\n catch {\n return maybeRelative;\n }\n }\n _updateMetaTags(item) {\n this._headTag.setTitle(item.title);\n this._headTag.setDescription(item.description);\n this._headTag.setCanonical(item.canonical || item.url);\n this._headTag.updateTag({ property: 'og:url', content: item.url });\n this._headTag.updateTag({ property: 'og:type', content: item.type });\n this._headTag.updateTag({ property: 'og:title', content: item.title });\n this._headTag.updateTag({ property: 'og:site_name', content: item.title });\n this._headTag.updateTag({ property: 'og:locale', content: item.locale });\n this._headTag.updateTag({ property: 'og:description', content: item.description });\n this._headTag.updateTag({ property: 'og:image', content: item.image });\n this._headTag.updateTag({ property: 'og:image:secure_url', content: item.image });\n this._headTag.updateTag({ property: 'og:image:type', content: item.image_type });\n this._headTag.updateTag({ property: 'og:image:width', content: item.image_width.toString() });\n this._headTag.updateTag({ property: 'og:image:height', content: item.image_height.toString() });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FMetaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FMetaService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FMetaService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1tZXRhLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2FuYWx5dGljcy9jb21tb24tc2VydmljZXMvZi1tZXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFM0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUczQyxNQUFNLE9BQU8sWUFBWTtJQUNOLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixRQUFRLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ25DLGNBQWMsR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUUvRCxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzdCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQTZCLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxhQUFhLENBQUMsRUFDbEYsR0FBRyxD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eEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElNZXRhRGF0YSB9IGZyb20gJy4vaS1tZXRhLWRhdGEnO1xuaW1wb3J0IHsgRkhlYWRUYWdTZXJ2aWNlIH0gZnJvbSAnLi9mLWhlYWQtdGFnLnNlcnZpY2UnO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OIH0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IElOYXZpZ2F0aW9uR3JvdXAsIElOYXZpZ2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgTE9DQVRJT04gfSBmcm9tICcuLi8uLi8uLi9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRk1ldGFTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9jYXRpb24gPSBpbmplY3QoTE9DQVRJT04pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaGVhZFRhZyA9IGluamVjdChGSGVhZFRhZ1NlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWd1cmF0aW9uID0gaW5qZWN0KERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTik7XG5cbiAgcHVibGljIGNoYW5nZXMoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5fcm91dGVyLmV2ZW50cy5waXBlKFxuICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICAgZmlsdGVyKChlKTogZSBpcyBOYXZpZ2F0aW9uRW5kIHwgbnVsbCA9PiBlID09PSBudWxsIHx8IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICAgIG1hcCgoKSA9PnRoaXMuX3JvdXRlci51cmwpLFxuICAgICAgdGFwKChjdXJyZW50VXJsKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHREYXRhID0gdGhpcy5fY29uZmlndXJhdGlvbi5tZXRhO1xuICAgICAgICBpZiAoIWRlZmF1bHREYXRhKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IHsgLi4uZGVmYXVsdERhdGEgfTtcblxuICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5fZmluZERvY0l0ZW1CeVVybCh0aGlzLl9maW5kRG9jR3JvdXBCeVVybChjdXJyZW50VXJsKSwgY3VycmVudFVybCk7XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgZGF0YS50aXRsZSA9IGAke2l0ZW0ucGFnZVRpdGxlIHx8IGl0ZW0udGV4dH0gfCAke2RlZmF1bHREYXRhLmFwcF9uYW1lfWA7XG4gICAgICAgICAgZGF0YS51cmwgPSB0aGlzLl9idWlsZEFic29sdXRlVXJsKGN1cnJlbnRVcmwpO1xuICAgICAgICAgIGRhdGEuY2Fub25pY2FsID0gaXRlbS5jYW5vbmljYWw7XG4gICAgICAgICAgZGF0YS5kZXNjcmlwdGlvbiA9IGl0ZW0uZGVzY3JpcHRpb24gfHwgZGVmYXVsdERhdGEuZGVzY3JpcHRpb247XG4gICAgICAgICAgZGF0YS5pbWFnZSA9IGl0ZW0uaW1hZ2UgfHwgZGVmYXVsdERhdGEuaW1hZ2U7XG4gICAgICAgICAgZGF0YS5pbWFnZV93aWR0aCA9IGl0ZW0uaW1hZ2Vfd2lkdGggfHwgZGVmYXVsdERhdGEuaW1hZ2Vfd2lkdGg7XG4gICAgICAgICAgZGF0YS5pbWFnZV9oZWlnaHQgPSBpdGVtLmltYWdlX2hlaWdodCB8fCBkZWZhdWx0RGF0YS5pbWFnZV9oZWlnaHQ7XG4gICAgICAgICAgZGF0YS5pbWFnZV90eXBlID0gaXRlbS5pbWFnZV90eXBlIHx8IGRlZmF1bHREYXRhLmltYWdlX3R5cGU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFkYXRhLnVybCkge1xuICAgICAgICAgIGRhdGEudXJsID0gdGhpcy5fYnVpbGRBYnNvbHV0ZVVybChjdXJyZW50VXJsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkYXRhLmltYWdlKSB7XG4gICAgICAgICAgZGF0YS5pbWFnZSA9IHRoaXMuX3RvQWJzb2x1dGVVcmwoZGF0YS5pbWFnZSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl91cGRhdGVNZXRhVGFncyhkYXRhKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZGlzcG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2NvbmZpZ3VyYXRpb24ubWV0YSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl91cGRhdGVNZXRhVGFncyh0aGlzLl9jb25maWd1cmF0aW9uLm1ldGEpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluZERvY0dyb3VwQnlVcmwodXJsOiBzdHJpbmcpOiBJTmF2aWdhdGlvbkdyb3VwIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKHRoaXMuX2NvbmZpZ3VyYXRpb24ubmF2aWdhdGlvbiB8fCBbXSkuZmluZCgoZzogSU5hdmlnYXRpb25Hcm91cCkgPT4gZy5pdGVtcy5maW5kKChpOiBJTmF2aWdhdGlvbkl0ZW0pID0+IHVybC5lbmRzV2l0aChpLmxpbmspKSk7XG4gIH1cblxuICBwcml2YXRlIF9maW5kRG9jSXRlbUJ5VXJsKGdyb3VwOiBJTmF2aWdhdGlvbkdyb3VwIHwgdW5kZWZpbmVkLCB1cmw6IHN0cmluZyk6IElOYXZpZ2F0aW9uSXRlbSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIChncm91cD8uaXRlbXMgfHwgW10pLmZpbmQoKGk6IElOYXZpZ2F0aW9uSXRlbSkgPT4gdXJsLmVuZHNXaXRoKGkubGluaykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYnVpbGRBYnNvbHV0ZVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgdHJ5IHtcbiAgICAgcmV0dXJuIG5ldyBVUkwodXJsLCB0aGlzLl9sb2NhdGlvbi5vcmlnaW4pLnRvU3RyaW5nKCk7XG4gICAgfSBjYXRjaCB7XG4gICAgIHJldHVybiB0aGlzLl9sb2NhdGlvbi5vcmlnaW4gKyB1cmw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdG9BYnNvbHV0ZVVybChtYXliZVJlbGF0aXZlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHRyeSB7XG4gICAgIHJldHVybiBuZXcgVVJMKG1heWJlUmVsYXRpdmUsIHRoaXMuX2xvY2F0aW9uLm9yaWdpbikudG9TdHJpbmcoKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgcmV0dXJuIG1heWJlUmVsYXRpdmU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlTWV0YVRhZ3MoaXRlbTogSU1ldGFEYXRhKTogdm9pZCB7XG4gICAgdGhpcy5faGVhZFRhZy5zZXRUaXRsZShpdGVtLnRpdGxlKTtcbiAgICB0aGlzLl9oZWFkVGFnLnNldERlc2NyaXB0aW9uKGl0ZW0uZGVzY3JpcHRpb24pO1xuICAgIHRoaXMuX2hlYWRUYWcuc2V0Q2Fub25pY2FsKGl0ZW0uY2Fub25pY2FsIHx8IGl0ZW0udXJsKTtcblxuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzp1cmwnLCBjb250ZW50OiBpdGVtLnVybCB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6dHlwZScsIGNvbnRlbnQ6IGl0ZW0udHlwZSB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6dGl0bGUnLCBjb250ZW50OiBpdGVtLnRpdGxlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzpzaXRlX25hbWUnLCBjb250ZW50OiBpdGVtLnRpdGxlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzpsb2NhbGUnLCBjb250ZW50OiBpdGVtLmxvY2FsZSB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6ZGVzY3JpcHRpb24nLCBjb250ZW50OiBpdGVtLmRlc2NyaXB0aW9uIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzppbWFnZScsIGNvbnRlbnQ6IGl0ZW0uaW1hZ2UgfSk7XG4gICAgdGhpcy5faGVhZFRhZy51cGRhdGVUYWcoeyBwcm9wZXJ0eTogJ29nOmltYWdlOnNlY3VyZV91cmwnLCBjb250ZW50OiBpdGVtLmltYWdlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzppbWFnZTp0eXBlJywgY29udGVudDogaXRlbS5pbWFnZV90eXBlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzppbWFnZTp3aWR0aCcsIGNvbnRlbnQ6IGl0ZW0uaW1hZ2Vfd2lkdGgudG9TdHJpbmcoKSB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6aW1hZ2U6aGVpZ2h0JywgY29udGVudDogaXRlbS5pbWFnZV9oZWlnaHQudG9TdHJpbmcoKSB9KTtcbiAgfVxufVxuXG5cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const TOGGLE_NAVIGATION_COMPONENT = new InjectionToken('TOGGLE_NAVIGATION_COMPONENT');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS10b2dnbGUtbmF2aWdhdGlvbi1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaGFtYnVyZ2VyLWJ1dHRvbi9kb21haW4vaS10b2dnbGUtbmF2aWdhdGlvbi1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8vQyxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FBNkIsNkJBQTZCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRvZ2dsZU5hdmlnYXRpb25Db21wb25lbnQge1xuXG4gIG9uVG9nZ2xlTmF2aWdhdGlvbih2YWx1ZTogYm9vbGVhbik6IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW48SVRvZ2dsZU5hdmlnYXRpb25Db21wb25lbnQ+KCdUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQnKTtcbiJdfQ==","import { ChangeDetectionStrategy, Component, inject, } from '@angular/core';\nimport { TOGGLE_NAVIGATION_COMPONENT } from './domain';\nimport * as i0 from \"@angular/core\";\nexport class HamburgerButton {\n _parent = inject(TOGGLE_NAVIGATION_COMPONENT, {\n optional: true,\n });\n _onShowNavigation() {\n this._parent?.onToggleNavigation(true);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HamburgerButton, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: HamburgerButton, isStandalone: true, selector: \"button[hamburger-button]\", host: { listeners: { \"click\": \"_onShowNavigation()\" } }, ngImport: i0, template: \"<span class=\\\"f-icon hamburger\\\"></span>\\n\\n\", styles: [\":host{background-color:transparent;border:0;display:flex;padding:0;margin-right:16px;color:var(--secondary-text);cursor:pointer}@media (min-width: 960px){:host{display:none}}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HamburgerButton, decorators: [{\n type: Component,\n args: [{ selector: 'button[hamburger-button]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '(click)': '_onShowNavigation()',\n }, template: \"<span class=\\\"f-icon hamburger\\\"></span>\\n\\n\", styles: [\":host{background-color:transparent;border:0;display:flex;padding:0;margin-right:16px;color:var(--secondary-text);cursor:pointer}@media (min-width: 960px){:host{display:none}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFtYnVyZ2VyLWJ1dHRvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvY29tcG9uZW50cy9oYW1idXJnZXItYnV0dG9uL2hhbWJ1cmdlci1idXR0b24udHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaGFtYnVyZ2VyLWJ1dHRvbi9oYW1idXJnZXItYnV0dG9uLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQUUsTUFBTSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBWXZELE1BQU0sT0FBTyxlQUFlO0lBQ1QsT0FBTyxHQUFHLE1BQU0sQ0FBQywyQkFBMkIsRUFBRTtRQUM3RCxRQUFRLEVBQUUsSUFBSTtLQUNmLENBQUMsQ0FBQztJQUVPLGlCQUFpQjtRQUN6QixJQUFJLENBQUMsT0FBTyxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7dUdBUFUsZUFBZTsyRkFBZixlQUFlLDZJQ2hCNUIsOENBRUE7OzJGRGNhLGVBQWU7a0JBVjNCLFNBQVM7K0JBQ0UsMEJBQTBCLGNBR3hCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixTQUFTLEVBQUUscUJBQXFCO3FCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQgfSBmcm9tICcuL2RvbWFpbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2J1dHRvbltoYW1idXJnZXItYnV0dG9uXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9oYW1idXJnZXItYnV0dG9uLmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vaGFtYnVyZ2VyLWJ1dHRvbi5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICcoY2xpY2spJzogJ19vblNob3dOYXZpZ2F0aW9uKCknLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBIYW1idXJnZXJCdXR0b24ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQgPSBpbmplY3QoVE9HR0xFX05BVklHQVRJT05fQ09NUE9ORU5ULCB7XG4gICAgb3B0aW9uYWw6IHRydWUsXG4gIH0pO1xuXG4gIHByb3RlY3RlZCBfb25TaG93TmF2aWdhdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9wYXJlbnQ/Lm9uVG9nZ2xlTmF2aWdhdGlvbih0cnVlKTtcbiAgfVxufVxuIiwiPHNwYW4gY2xhc3M9XCJmLWljb24gaGFtYnVyZ2VyXCI+PC9zcGFuPlxuXG4iXX0=","import { computed, inject } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { distinctUntilChanged, map, startWith } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { HEADER_CONFIGURATION_PROVIDER } from '../../../../common';\nexport class HeaderMenuBase {\n _router = inject(Router);\n _baseNav = inject(HEADER_CONFIGURATION_PROVIDER)?.navigation ?? [];\n _url = toSignal(this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._router.url), distinctUntilChanged()), { initialValue: this._router.url });\n navigation = computed(() => {\n const url = this._cleanPath(this._url());\n return this._baseNav.map(item => ({\n ...item,\n isActive: this._isActive(url, this._cleanPath(item.active ?? '')),\n }));\n }, ...(ngDevMode ? [{ debugName: \"navigation\" }] : []));\n _cleanPath(url) {\n return url.split('#')[0].split('?')[0].replace(/\\/{2,}/g, '/').replace(/\\/$/, '');\n }\n _isActive(currentPath, itemLink) {\n if (!itemLink)\n return false;\n return currentPath === itemLink || currentPath.startsWith(itemLink + '/');\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW1lbnUtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvbW9kZWxzL2hlYWRlci1tZW51LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRW5FLE1BQU0sT0FBTyxjQUFjO0lBQ1IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixRQUFRLEdBQUcsTUFBTSxDQUFDLDZCQUE2QixDQUFDLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztJQUVuRSxJQUFJLEdBQUcsUUFBUSxDQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3RCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQTZCLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxhQUFhLENBQUMsRUFDbEYsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQzNCLG9CQUFvQixFQUFFLENBQ3ZCLEVBQ0QsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FDbkMsQ0FBQztJQUVjLFVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ3pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEMsR0FBRyxJQUFJO1lBQ1AsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQztTQUNsRSxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUMsc0RBQUMsQ0FBQztJQUVLLFVBQVUsQ0FBQyxHQUFXO1FBQzVCLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFTyxTQUFTLENBQUMsV0FBbUIsRUFBRSxRQUFnQjtRQUNyRCxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzVCLE9BQU8sV0FBVyxLQUFLLFFBQVEsSUFBSSxXQUFXLENBQUMsVUFBVSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUM1RSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEhlYWRlck1lbnVCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2VOYXYgPSBpbmplY3QoSEVBREVSX0NPTkZJR1VSQVRJT05fUFJPVklERVIpPy5uYXZpZ2F0aW9uID8/IFtdO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3VybCA9IHRvU2lnbmFsKFxuICAgIHRoaXMuX3JvdXRlci5ldmVudHMucGlwZShcbiAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgIGZpbHRlcigoZSk6IGUgaXMgTmF2aWdhdGlvbkVuZCB8IG51bGwgPT4gZSA9PT0gbnVsbCB8fCBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgICBtYXAoKCkgPT4gdGhpcy5fcm91dGVyLnVybCksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICksXG4gICAgeyBpbml0aWFsVmFsdWU6IHRoaXMuX3JvdXRlci51cmwgfSxcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbmF2aWdhdGlvbiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLl9jbGVhblBhdGgodGhpcy5fdXJsKCkpO1xuICAgIHJldHVybiB0aGlzLl9iYXNlTmF2Lm1hcChpdGVtID0+ICh7XG4gICAgICAuLi5pdGVtLFxuICAgICAgaXNBY3RpdmU6IHRoaXMuX2lzQWN0aXZlKHVybCwgdGhpcy5fY2xlYW5QYXRoKGl0ZW0uYWN0aXZlID8/ICcnKSksXG4gICAgfSkpO1xuICB9KTtcblxuICBwcml2YXRlIF9jbGVhblBhdGgodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB1cmwuc3BsaXQoJyMnKVswXS5zcGxpdCgnPycpWzBdLnJlcGxhY2UoL1xcL3syLH0vZywgJy8nKS5yZXBsYWNlKC9cXC8kLywgJycpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNBY3RpdmUoY3VycmVudFBhdGg6IHN0cmluZywgaXRlbUxpbms6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghaXRlbUxpbmspIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gY3VycmVudFBhdGggPT09IGl0ZW1MaW5rIHx8IGN1cnJlbnRQYXRoLnN0YXJ0c1dpdGgoaXRlbUxpbmsgKyAnLycpO1xuICB9XG59XG4iXX0=","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { HeaderMenuBase } from '../../models';\nimport * as i0 from \"@angular/core\";\nexport class InlineMenu extends HeaderMenuBase {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: InlineMenu, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: InlineMenu, isStandalone: true, selector: \"inline-menu\", usesInheritance: true, ngImport: i0, template: \"@for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\">\\n <span>{{ item.text }}</span>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}a{padding:0 12px;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}a:hover,a.active{color:var(--primary-1)}\\n\"], dependencies: [{ kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: InlineMenu, decorators: [{\n type: Component,\n args: [{ selector: 'inline-menu', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n RouterLink,\n ], template: \"@for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\">\\n <span>{{ item.text }}</span>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}a{padding:0 12px;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}a:hover,a.active{color:var(--primary-1)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLW1lbnUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaW5saW5lLW1lbnUvaW5saW5lLW1lbnUudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaW5saW5lLW1lbnUvaW5saW5lLW1lbnUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQVk5QyxNQUFNLE9BQU8sVUFBVyxTQUFRLGNBQWM7dUdBQWpDLFVBQVU7MkZBQVYsVUFBVSw4RkNkdkIsa0tBS0Esd1RETUksVUFBVTs7MkZBR0QsVUFBVTtrQkFWdEIsU0FBUzsrQkFDRSxhQUFhLGNBR1gsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFVBQVU7cUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEhlYWRlck1lbnVCYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5saW5lLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5saW5lLW1lbnUuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9pbmxpbmUtbWVudS5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlckxpbmssXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIElubGluZU1lbnUgZXh0ZW5kcyBIZWFkZXJNZW51QmFzZSB7XG59XG5cbiIsIkBmb3IgKGl0ZW0gb2YgbmF2aWdhdGlvbigpOyB0cmFjayBpdGVtLmxpbmspIHtcbiAgPGEgW3JvdXRlckxpbmtdPVwiaXRlbS5saW5rXCIgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCI+XG4gICAgPHNwYW4+e3sgaXRlbS50ZXh0IH19PC9zcGFuPlxuICA8L2E+XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, HostListener, inject, Renderer2, } from '@angular/core';\nimport { ThemeService } from '../theme.service';\nimport { DOCUMENT_ELEMENT, IS_BROWSER_PLATFORM, LOCAL_STORAGE } from '../../common';\nimport * as i0 from \"@angular/core\";\nexport class ThemeButtonComponent {\n _renderer = inject(Renderer2);\n _themeService = inject(ThemeService, { optional: true });\n _localStorage = inject(LOCAL_STORAGE);\n _documentElement = inject(DOCUMENT_ELEMENT);\n _isBrowser = inject(IS_BROWSER_PLATFORM);\n ngOnInit() {\n if (!this._themeService && this._isBrowser) {\n throw new Error('Theme is not provided. Please provide it using provideTheme() provider in your application config.');\n }\n }\n _isDocumentContainsDarkTheme() {\n return this._documentElement.classList.contains('dark');\n }\n _onClick() {\n if (this._themeService?.getPreferredTheme() === 'light' && !this._isDocumentContainsDarkTheme()) {\n this._renderer.addClass(this._documentElement, 'dark');\n this._localStorage.setItem('preferred-theme', 'dark');\n }\n else {\n this._renderer.removeClass(this._documentElement, 'dark');\n this._localStorage.setItem('preferred-theme', 'light');\n }\n this._themeService?.updateTheme();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: ThemeButtonComponent, isStandalone: true, selector: \"button[theme-button]\", host: { listeners: { \"click\": \"_onClick()\" } }, ngImport: i0, template: \"<div class=\\\"f-icon-container\\\">\\n <div class=\\\"f-icon moon\\\"></div>\\n <div class=\\\"f-icon sun\\\"></div>\\n</div>\\n\", styles: [\":host{margin:0 8px;position:relative;border-radius:11px;display:block;width:44px;min-width:44px;height:22px;border:1px solid var(--theme-button-border-color);background-color:var(--theme-button-background);cursor:pointer}:host:hover{border-color:var(--theme-button-hovered-border-color)}.f-icon-container{position:absolute;top:1px;left:1px;width:18px;height:18px;padding:3px;border-radius:50%;background-color:var(--theme-button-icon-background);transition:transform .4s}.f-icon-container .f-icon{position:absolute;top:3px;left:3px;width:12px;height:12px}.f-icon-container .sun{display:block}.f-icon-container .moon{display:none}.dark :host .f-icon-container{transform:translate(22px)}.dark :host .f-icon-container .sun{display:none}.dark :host .f-icon-container .moon{display:block}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeButtonComponent, decorators: [{\n type: Component,\n args: [{ selector: 'button[theme-button]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"<div class=\\\"f-icon-container\\\">\\n <div class=\\\"f-icon moon\\\"></div>\\n <div class=\\\"f-icon sun\\\"></div>\\n</div>\\n\", styles: [\":host{margin:0 8px;position:relative;border-radius:11px;display:block;width:44px;min-width:44px;height:22px;border:1px solid var(--theme-button-border-color);background-color:var(--theme-button-background);cursor:pointer}:host:hover{border-color:var(--theme-button-hovered-border-color)}.f-icon-container{position:absolute;top:1px;left:1px;width:18px;height:18px;padding:3px;border-radius:50%;background-color:var(--theme-button-icon-background);transition:transform .4s}.f-icon-container .f-icon{position:absolute;top:3px;left:3px;width:12px;height:12px}.f-icon-container .sun{display:block}.f-icon-container .moon{display:none}.dark :host .f-icon-container{transform:translate(22px)}.dark :host .f-icon-container .sun{display:none}.dark :host .f-icon-container .moon{display:block}\\n\"] }]\n }], propDecorators: { _onClick: [{\n type: HostListener,\n args: ['click']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS90aGVtZS1idXR0b24vdGhlbWUtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS90aGVtZS1idXR0b24vdGhlbWUtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFBRSxNQUFNLEVBQ3BCLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFTcEYsTUFBTSxPQUFPLG9CQUFvQjtJQUNkLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RCxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzVDLFVBQVUsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUVuRCxRQUFRO1FBQ2IsSUFBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0dBQW9HLENBQUMsQ0FBQztRQUN4SCxDQUFDO0lBQ0gsQ0FBQztJQUNPLDRCQUE0QjtRQUNsQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFHUyxRQUFRO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxFQUFFLENBQUM7WUFDaEcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7dUdBMUJVLG9CQUFvQjsyRkFBcEIsb0JBQW9CLGdJQ2hCakMscUhBSUE7OzJGRFlhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDRSxzQkFBc0IsY0FHcEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNOzhCQW1CckMsUUFBUTtzQkFEakIsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSG9zdExpc3RlbmVyLCBpbmplY3QsIE9uSW5pdCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4uL3RoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgRE9DVU1FTlRfRUxFTUVOVCwgSVNfQlJPV1NFUl9QTEFURk9STSwgTE9DQUxfU1RPUkFHRSB9IGZyb20gJy4uLy4uL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2J1dHRvblt0aGVtZS1idXR0b25dJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RoZW1lLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi90aGVtZS1idXR0b24uY29tcG9uZW50LnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZUJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RoZW1lU2VydmljZSA9IGluamVjdChUaGVtZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2xvY2FsU3RvcmFnZSA9IGluamVjdChMT0NBTF9TVE9SQUdFKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnRFbGVtZW50ID0gaW5qZWN0KERPQ1VNRU5UX0VMRU1FTlQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0Jyb3dzZXIgPSBpbmplY3QoSVNfQlJPV1NFUl9QTEFURk9STSk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKCF0aGlzLl90aGVtZVNlcnZpY2UgJiYgdGhpcy5faXNCcm93c2VyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZW1lIGlzIG5vdCBwcm92aWRlZC4gUGxlYXNlIHByb3ZpZGUgaXQgdXNpbmcgcHJvdmlkZVRoZW1lKCkgcHJvdmlkZXIgaW4geW91ciBhcHBsaWNhdGlvbiBjb25maWcuJyk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2lzRG9jdW1lbnRDb250YWluc0RhcmtUaGVtZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnZGFyaycpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwcm90ZWN0ZWQgX29uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3RoZW1lU2VydmljZT8uZ2V0UHJlZmVycmVkVGhlbWUoKSA9PT0gJ2xpZ2h0JyAmJiAhdGhpcy5faXNEb2N1bWVudENvbnRhaW5zRGFya1RoZW1lKCkpIHtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2RvY3VtZW50RWxlbWVudCwgJ2RhcmsnKTtcbiAgICAgIHRoaXMuX2xvY2FsU3RvcmFnZS5zZXRJdGVtKCdwcmVmZXJyZWQtdGhlbWUnLCAnZGFyaycpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLl9kb2N1bWVudEVsZW1lbnQsICdkYXJrJyk7XG4gICAgICB0aGlzLl9sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncHJlZmVycmVkLXRoZW1lJywgJ2xpZ2h0Jyk7XG4gICAgfVxuICAgIHRoaXMuX3RoZW1lU2VydmljZT8udXBkYXRlVGhlbWUoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImYtaWNvbi1jb250YWluZXJcIj5cbiAgPGRpdiBjbGFzcz1cImYtaWNvbiBtb29uXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmLWljb24gc3VuXCI+PC9kaXY+XG48L2Rpdj5cbiJdfQ==","import { ThemeService } from './theme.service';\nexport function provideTheme() {\n return [\n {\n provide: ThemeService,\n useClass: ThemeService,\n },\n ];\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS10aGVtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS9wcm92aWRlLXRoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxNQUFNLFVBQVUsWUFBWTtJQUMxQixPQUFPO1FBQ0w7WUFDRSxPQUFPLEVBQUUsWUFBWTtZQUNyQixRQUFRLEVBQUUsWUFBWTtTQUN2QjtLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4vdGhlbWUuc2VydmljZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlVGhlbWUoKTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogVGhlbWVTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IFRoZW1lU2VydmljZSxcbiAgICB9LFxuICBdO1xufVxuIl19","import { InjectionToken } from '@angular/core';\nexport const MEDIA_LINKS_PROVIDER = new InjectionToken('MEDIA_LINKS_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1tZWRpYS1saW5rcy1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvY29tcG9uZW50cy9tZWRpYS1saW5rcy9kb21haW4vaS1tZWRpYS1saW5rcy1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUS9DLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUFlLHNCQUFzQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSU1lZGlhTGluayB9IGZyb20gJy4vaS1tZWRpYS1saW5rJztcblxuZXhwb3J0IGludGVyZmFjZSBJTWVkaWFMaW5rc1Byb3ZpZGVyIHtcblxuICBnZXRNZWRpYUxpbmtzKCk6IElNZWRpYUxpbmtbXTtcbn1cblxuZXhwb3J0IGNvbnN0IE1FRElBX0xJTktTX1BST1ZJREVSID0gbmV3IEluamVjdGlvblRva2VuPElNZWRpYUxpbmtbXT4oJ01FRElBX0xJTktTX1BST1ZJREVSJyk7XG4iXX0=","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { MEDIA_LINKS_PROVIDER } from './domain';\nimport * as i0 from \"@angular/core\";\nexport class MediaLinks {\n links = inject(MEDIA_LINKS_PROVIDER, { optional: true });\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MediaLinks, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: MediaLinks, isStandalone: true, selector: \"media-links\", ngImport: i0, template: \"@for (link of links; track link.link) {\\n <a href=\\\"{{ link.link }}\\\" class=\\\"header-link\\\">\\n <div class=\\\"f-icon {{ link.icon }}\\\"></div>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}.header-link{width:36px;height:36px;padding:8px}.f-icon{width:20px;height:20px}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MediaLinks, decorators: [{\n type: Component,\n args: [{ selector: 'media-links', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"@for (link of links; track link.link) {\\n <a href=\\\"{{ link.link }}\\\" class=\\\"header-link\\\">\\n <div class=\\\"f-icon {{ link.icon }}\\\"></div>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}.header-link{width:36px;height:36px;padding:8px}.f-icon{width:20px;height:20px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtbGlua3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvbWVkaWEtbGlua3MvbWVkaWEtbGlua3MudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvbWVkaWEtbGlua3MvbWVkaWEtbGlua3MuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBU2hELE1BQU0sT0FBTyxVQUFVO0lBRVgsS0FBSyxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3VHQUZ4RCxVQUFVOzJGQUFWLFVBQVUsdUVDVnZCLDhKQUtBOzsyRkRLYSxVQUFVO2tCQVB0QixTQUFTOytCQUNFLGFBQWEsY0FHWCxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1FRElBX0xJTktTX1BST1ZJREVSIH0gZnJvbSAnLi9kb21haW4nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtZWRpYS1saW5rcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZWRpYS1saW5rcy5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL21lZGlhLWxpbmtzLnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBNZWRpYUxpbmtzIHtcblxuICBwcm90ZWN0ZWQgbGlua3MgPSBpbmplY3QoTUVESUFfTElOS1NfUFJPVklERVIsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG59XG4iLCJAZm9yIChsaW5rIG9mIGxpbmtzOyB0cmFjayBsaW5rLmxpbmspIHtcbiAgPGEgaHJlZj1cInt7IGxpbmsubGluayB9fVwiIGNsYXNzPVwiaGVhZGVyLWxpbmtcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZi1pY29uIHt7IGxpbmsuaWNvbiB9fVwiPjwvZGl2PlxuICA8L2E+XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';\nimport { CdkConnectedOverlay, CdkOverlayOrigin, Overlay } from '@angular/cdk/overlay';\nimport { ThemeButtonComponent } from '../../../../../theme';\nimport { HeaderMenuBase } from '../../models';\nimport { RouterLink } from '@angular/router';\nimport { MediaLinks } from '../media-links';\nimport * as i0 from \"@angular/core\";\nexport class DropdownMenu extends HeaderMenuBase {\n isOpen = signal(false, ...(ngDevMode ? [{ debugName: \"isOpen\" }] : []));\n scrollStrategy = inject(Overlay).scrollStrategies.block();\n positions = [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n ];\n _hoverTimeout;\n mouseEnter() {\n clearTimeout(this._hoverTimeout);\n this.open();\n }\n mouseLeave() {\n clearTimeout(this._hoverTimeout);\n this._hoverTimeout = setTimeout(() => this.close(), 200);\n }\n toggle() {\n this.isOpen.update(x => !x);\n }\n open() {\n if (!this.isOpen()) {\n this.isOpen.set(true);\n }\n }\n close() {\n this.isOpen.set(false);\n }\n ngOnDestroy() {\n clearTimeout(this._hoverTimeout);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DropdownMenu, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: DropdownMenu, isStandalone: true, selector: \"dropdown-menu\", usesInheritance: true, ngImport: i0, template: \"<span class=\\\"label\\\" cdk-overlay-origin\\n (click)=\\\"toggle()\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\"\\n #overlayOrigin=\\\"cdkOverlayOrigin\\\">\\n <span class=\\\"f-icon more-horizontal\\\"></span>\\n</span>\\n\\n<ng-template\\n cdk-connected-overlay\\n [cdkConnectedOverlayLockPosition]=\\\"true\\\"\\n [cdkConnectedOverlayHasBackdrop]=\\\"false\\\"\\n cdkConnectedOverlayBackdropClass=\\\"cdk-overlay-transparent-backdrop\\\"\\n [cdkConnectedOverlayDisableClose]=\\\"false\\\"\\n [cdkConnectedOverlayScrollStrategy]=\\\"scrollStrategy\\\"\\n [cdkConnectedOverlayOrigin]=\\\"overlayOrigin\\\"\\n [cdkConnectedOverlayPositions]=\\\"positions\\\"\\n [cdkConnectedOverlayOpen]=\\\"isOpen()\\\"\\n [cdkConnectedOverlayOffsetY]=\\\"-10\\\"\\n (backdropClick)=\\\"close()\\\"\\n>\\n <div class=\\\"dropdown-panel\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\">\\n @if (navigation().length) {\\n <div class=\\\"navigation-wrapper\\\">\\n @for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\"><span>{{ item.text }}</span></a>\\n }\\n </div>\\n }\\n <div class=\\\"appearance\\\">\\n <span>Appearance</span>\\n <button theme-button></button>\\n </div>\\n <div class=\\\"social-links\\\">\\n <media-links/>\\n </div>\\n\\n </div>\\n</ng-template>\\n\\n\", styles: [\":host{overflow:hidden}.label{margin-left:8px;margin-right:8px;display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;line-height:64px}.label .f-icon{margin-left:4px;width:14px;min-width:14px;height:14px;color:inherit}.label:hover{color:var(--secondary-text)}.dropdown-panel{border-radius:6px;min-width:202px;border:1px solid var(--divider-color);background-color:var(--background-color);box-shadow:var(--shadow-3);max-height:calc(100vh - var(--header-height));overflow-y:auto}.navigation-wrapper{display:flex;flex-direction:column;justify-content:flex-start;padding:12px;border-bottom:1px solid var(--divider-color)}.navigation-wrapper a{color:var(--primary-text);white-space:nowrap;border-radius:6px;padding:0 12px;font-size:14px;font-weight:500;line-height:32px;display:block;cursor:pointer;overflow:hidden;text-overflow:ellipsis}.navigation-wrapper a:hover{color:var(--primary-1);background-color:var(--default-3)}.navigation-wrapper a.active{color:var(--primary-1)}.appearance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px 8px 24px;border-bottom:1px solid var(--divider-color)}.appearance span{color:var(--secondary-text);flex-grow:1;font-size:12px;font-weight:500;line-height:28px;transition:color .5s}.social-links{padding:6px 12px}\\n\"], dependencies: [{ kind: \"directive\", type: CdkConnectedOverlay, selector: \"[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]\", inputs: [\"cdkConnectedOverlayOrigin\", \"cdkConnectedOverlayPositions\", \"cdkConnectedOverlayPositionStrategy\", \"cdkConnectedOverlayOffsetX\", \"cdkConnectedOverlayOffsetY\", \"cdkConnectedOverlayWidth\", \"cdkConnectedOverlayHeight\", \"cdkConnectedOverlayMinWidth\", \"cdkConnectedOverlayMinHeight\", \"cdkConnectedOverlayBackdropClass\", \"cdkConnectedOverlayPanelClass\", \"cdkConnectedOverlayViewportMargin\", \"cdkConnectedOverlayScrollStrategy\", \"cdkConnectedOverlayOpen\", \"cdkConnectedOverlayDisableClose\", \"cdkConnectedOverlayTransformOriginOn\", \"cdkConnectedOverlayHasBackdrop\", \"cdkConnectedOverlayLockPosition\", \"cdkConnectedOverlayFlexibleDimensions\", \"cdkConnectedOverlayGrowAfterOpen\", \"cdkConnectedOverlayPush\", \"cdkConnectedOverlayDisposeOnNavigation\"], outputs: [\"backdropClick\", \"positionChange\", \"attach\", \"detach\", \"overlayKeydown\", \"overlayOutsideClick\"], exportAs: [\"cdkConnectedOverlay\"] }, { kind: \"directive\", type: CdkOverlayOrigin, selector: \"[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]\", exportAs: [\"cdkOverlayOrigin\"] }, { kind: \"component\", type: ThemeButtonComponent, selector: \"button[theme-button]\" }, { kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }, { kind: \"component\", type: MediaLinks, selector: \"media-links\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DropdownMenu, decorators: [{\n type: Component,\n args: [{ selector: 'dropdown-menu', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n CdkConnectedOverlay,\n CdkOverlayOrigin,\n ThemeButtonComponent,\n RouterLink,\n MediaLinks,\n ], template: \"<span class=\\\"label\\\" cdk-overlay-origin\\n (click)=\\\"toggle()\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\"\\n #overlayOrigin=\\\"cdkOverlayOrigin\\\">\\n <span class=\\\"f-icon more-horizontal\\\"></span>\\n</span>\\n\\n<ng-template\\n cdk-connected-overlay\\n [cdkConnectedOverlayLockPosition]=\\\"true\\\"\\n [cdkConnectedOverlayHasBackdrop]=\\\"false\\\"\\n cdkConnectedOverlayBackdropClass=\\\"cdk-overlay-transparent-backdrop\\\"\\n [cdkConnectedOverlayDisableClose]=\\\"false\\\"\\n [cdkConnectedOverlayScrollStrategy]=\\\"scrollStrategy\\\"\\n [cdkConnectedOverlayOrigin]=\\\"overlayOrigin\\\"\\n [cdkConnectedOverlayPositions]=\\\"positions\\\"\\n [cdkConnectedOverlayOpen]=\\\"isOpen()\\\"\\n [cdkConnectedOverlayOffsetY]=\\\"-10\\\"\\n (backdropClick)=\\\"close()\\\"\\n>\\n <div class=\\\"dropdown-panel\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\">\\n @if (navigation().length) {\\n <div class=\\\"navigation-wrapper\\\">\\n @for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\"><span>{{ item.text }}</span></a>\\n }\\n </div>\\n }\\n <div class=\\\"appearance\\\">\\n <span>Appearance</span>\\n <button theme-button></button>\\n </div>\\n <div class=\\\"social-links\\\">\\n <media-links/>\\n </div>\\n\\n </div>\\n</ng-template>\\n\\n\", styles: [\":host{overflow:hidden}.label{margin-left:8px;margin-right:8px;display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;line-height:64px}.label .f-icon{margin-left:4px;width:14px;min-width:14px;height:14px;color:inherit}.label:hover{color:var(--secondary-text)}.dropdown-panel{border-radius:6px;min-width:202px;border:1px solid var(--divider-color);background-color:var(--background-color);box-shadow:var(--shadow-3);max-height:calc(100vh - var(--header-height));overflow-y:auto}.navigation-wrapper{display:flex;flex-direction:column;justify-content:flex-start;padding:12px;border-bottom:1px solid var(--divider-color)}.navigation-wrapper a{color:var(--primary-text);white-space:nowrap;border-radius:6px;padding:0 12px;font-size:14px;font-weight:500;line-height:32px;display:block;cursor:pointer;overflow:hidden;text-overflow:ellipsis}.navigation-wrapper a:hover{color:var(--primary-1);background-color:var(--default-3)}.navigation-wrapper a.active{color:var(--primary-1)}.appearance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px 8px 24px;border-bottom:1px solid var(--divider-color)}.appearance span{color:var(--secondary-text);flex-grow:1;font-size:12px;font-weight:500;line-height:28px;transition:color .5s}.social-links{padding:6px 12px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvY29tcG9uZW50cy9kcm9wZG93bi1tZW51L2Ryb3Bkb3duLW1lbnUudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBcUIsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQWdCNUMsTUFBTSxPQUFPLFlBQWEsU0FBUSxjQUFjO0lBQzNCLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxrREFBQyxDQUFDO0lBQ3ZCLGNBQWMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDMUQsU0FBUyxHQUF3QjtRQUNsRDtZQUNFLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLEtBQUs7WUFDZixRQUFRLEVBQUUsS0FBSztTQUNoQjtRQUNEO1lBQ0UsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLEtBQUs7U0FDaEI7UUFDRDtZQUNFLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLFFBQVE7U0FDbkI7UUFDRDtZQUNFLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxRQUFRO1NBQ25CO0tBQ0YsQ0FBQztJQUVNLGFBQWEsQ0FBa0I7SUFFN0IsVUFBVTtRQUNsQixZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFUyxVQUFVO1FBQ2xCLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFUyxNQUFNO1FBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFUyxJQUFJO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0lBRVMsS0FBSztRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbkMsQ0FBQzt1R0ExRFUsWUFBWTsyRkFBWixZQUFZLGdHQ3JCekIscTFDQTBDQSw2MkNENUJJLG1CQUFtQiw0K0JBQ25CLGdCQUFnQix1SUFDaEIsb0JBQW9CLGlFQUNwQixVQUFVLG9PQUNWLFVBQVU7OzJGQUdELFlBQVk7a0JBZHhCLFNBQVM7K0JBQ0UsZUFBZSxjQUdiLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3dCQUNwQixVQUFVO3dCQUNWLFVBQVU7cUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIE9uRGVzdHJveSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDZGtDb25uZWN0ZWRPdmVybGF5LCBDZGtPdmVybGF5T3JpZ2luLCBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFRoZW1lQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdGhlbWUnO1xuaW1wb3J0IHsgSGVhZGVyTWVudUJhc2UgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNZWRpYUxpbmtzIH0gZnJvbSAnLi4vbWVkaWEtbGlua3MnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkcm9wZG93bi1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLW1lbnUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLW1lbnUuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENka0Nvbm5lY3RlZE92ZXJsYXksXG4gICAgQ2RrT3ZlcmxheU9yaWdpbixcbiAgICBUaGVtZUJ1dHRvbkNvbXBvbmVudCxcbiAgICBSb3V0ZXJMaW5rLFxuICAgIE1lZGlhTGlua3MsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duTWVudSBleHRlbmRzIEhlYWRlck1lbnVCYXNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzT3BlbiA9IHNpZ25hbChmYWxzZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBzY3JvbGxTdHJhdGVneSA9IGluamVjdChPdmVybGF5KS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBwb3NpdGlvbnM6IENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgIH0sXG4gICAge1xuICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgfSxcbiAgICB7XG4gICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgIH0sXG4gIF07XG5cbiAgcHJpdmF0ZSBfaG92ZXJUaW1lb3V0OiBhbnkgfCB1bmRlZmluZWQ7XG5cbiAgcHJvdGVjdGVkIG1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX2hvdmVyVGltZW91dCk7XG4gICAgdGhpcy5vcGVuKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5faG92ZXJUaW1lb3V0KTtcbiAgICB0aGlzLl9ob3ZlclRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2xvc2UoKSwgMjAwKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB0b2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4udXBkYXRlKHggPT4gIXgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9wZW4oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzT3BlbigpKSB7XG4gICAgICB0aGlzLmlzT3Blbi5zZXQodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuaXNPcGVuLnNldChmYWxzZSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX2hvdmVyVGltZW91dCk7XG4gIH1cbn1cbiIsIjxzcGFuIGNsYXNzPVwibGFiZWxcIiBjZGstb3ZlcmxheS1vcmlnaW5cbiAgICAgIChjbGljayk9XCJ0b2dnbGUoKVwiXG4gICAgICAobW91c2VlbnRlcik9XCJtb3VzZUVudGVyKClcIlxuICAgICAgKG1vdXNlbGVhdmUpPVwibW91c2VMZWF2ZSgpXCJcbiAgICAgICNvdmVybGF5T3JpZ2luPVwiY2RrT3ZlcmxheU9yaWdpblwiPlxuICAgPHNwYW4gY2xhc3M9XCJmLWljb24gbW9yZS1ob3Jpem9udGFsXCI+PC9zcGFuPlxuPC9zcGFuPlxuXG48bmctdGVtcGxhdGVcbiAgY2RrLWNvbm5lY3RlZC1vdmVybGF5XG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5TG9ja1Bvc2l0aW9uXT1cInRydWVcIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheUhhc0JhY2tkcm9wXT1cImZhbHNlXCJcbiAgY2RrQ29ubmVjdGVkT3ZlcmxheUJhY2tkcm9wQ2xhc3M9XCJjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcFwiXG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5RGlzYWJsZUNsb3NlXT1cImZhbHNlXCJcbiAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlTY3JvbGxTdHJhdGVneV09XCJzY3JvbGxTdHJhdGVneVwiXG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cIm92ZXJsYXlPcmlnaW5cIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uc109XCJwb3NpdGlvbnNcIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9wZW5dPVwiaXNPcGVuKClcIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9mZnNldFldPVwiLTEwXCJcbiAgKGJhY2tkcm9wQ2xpY2spPVwiY2xvc2UoKVwiXG4+XG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1wYW5lbFwiXG4gICAgICAgKG1vdXNlZW50ZXIpPVwibW91c2VFbnRlcigpXCJcbiAgICAgICAobW91c2VsZWF2ZSk9XCJtb3VzZUxlYXZlKClcIj5cbiAgICBAaWYgKG5hdmlnYXRpb24oKS5sZW5ndGgpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJuYXZpZ2F0aW9uLXdyYXBwZXJcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBuYXZpZ2F0aW9uKCk7IHRyYWNrIGl0ZW0ubGluaykge1xuICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIml0ZW0ubGlua1wiIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5pc0FjdGl2ZVwiPjxzcGFuPnt7IGl0ZW0udGV4dCB9fTwvc3Bhbj48L2E+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwiYXBwZWFyYW5jZVwiPlxuICAgICAgPHNwYW4+QXBwZWFyYW5jZTwvc3Bhbj5cbiAgICAgIDxidXR0b24gdGhlbWUtYnV0dG9uPjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJzb2NpYWwtbGlua3NcIj5cbiAgICAgIDxtZWRpYS1saW5rcy8+XG4gICAgPC9kaXY+XG5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG4iXX0=","export function calculateMarkdownUrl(markdown, navigation, docsDir, notFoundMd = '') {\n if (!markdown || !_isMarkdownExist(markdown, navigation) && navigation.length) {\n return notFoundMd;\n }\n let url = docsDir + markdown;\n url = url.replace(/(\\/en\\/guides)+/g, '/en/guides');\n url = url.replace(/(\\/en\\/examples)+/g, '/en/examples');\n if (!url.endsWith('.md')) {\n url += '.md';\n }\n return url;\n}\nfunction _isMarkdownExist(id, navigation) {\n return !!navigation.find((x) => x.items.some((i) => i.link === id));\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW1hcmtkb3duLXVybC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvdXRpbHMvY2FsY3VsYXRlLW1hcmtkb3duLXVybC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsUUFBZ0IsRUFBRSxVQUE4QixFQUFFLE9BQWUsRUFBRSxVQUFVLEdBQUcsRUFBRTtJQUNySCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM5RSxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxHQUFHLEdBQUcsT0FBTyxHQUFHLFFBQVEsQ0FBQztJQUU3QixHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNwRCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUV4RCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3pCLEdBQUcsSUFBSSxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxFQUFVLEVBQUUsVUFBOEI7SUFDbEUsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQzdCLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBb0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsQ0FDdEQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTmF2aWdhdGlvbkdyb3VwIH0gZnJvbSAnLi4vY29tcG9uZW50cyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVNYXJrZG93blVybChtYXJrZG93bjogc3RyaW5nLCBuYXZpZ2F0aW9uOiBJTmF2aWdhdGlvbkdyb3VwW10sIGRvY3NEaXI6IHN0cmluZywgbm90Rm91bmRNZCA9ICcnKTogc3RyaW5nIHtcbiAgaWYgKCFtYXJrZG93biB8fCAhX2lzTWFya2Rvd25FeGlzdChtYXJrZG93biwgbmF2aWdhdGlvbikgJiYgbmF2aWdhdGlvbi5sZW5ndGgpIHtcbiAgICByZXR1cm4gbm90Rm91bmRNZDtcbiAgfVxuICBsZXQgdXJsID0gZG9jc0RpciArIG1hcmtkb3duO1xuXG4gIHVybCA9IHVybC5yZXBsYWNlKC8oXFwvZW5cXC9ndWlkZXMpKy9nLCAnL2VuL2d1aWRlcycpO1xuICB1cmwgPSB1cmwucmVwbGFjZSgvKFxcL2VuXFwvZXhhbXBsZXMpKy9nLCAnL2VuL2V4YW1wbGVzJyk7XG5cbiAgaWYgKCF1cmwuZW5kc1dpdGgoJy5tZCcpKSB7XG4gICAgdXJsICs9ICcubWQnO1xuICB9XG5cbiAgcmV0dXJuIHVybDtcbn1cblxuZnVuY3Rpb24gX2lzTWFya2Rvd25FeGlzdChpZDogc3RyaW5nLCBuYXZpZ2F0aW9uOiBJTmF2aWdhdGlvbkdyb3VwW10pOiBib29sZWFuIHtcbiAgcmV0dXJuICEhbmF2aWdhdGlvbi5maW5kKCh4KSA9PlxuICAgIHguaXRlbXMuc29tZSgoaTogeyBsaW5rOiBzdHJpbmc7IH0pID0+IGkubGluayA9PT0gaWQpLFxuICApO1xufVxuIl19","import { inject, Injectable, signal } from '@angular/core';\nimport { TableOfContentData, } from '../components';\nimport { DOCUMENTATION_CONFIGURATION } from '../domain';\nimport { calculateMarkdownUrl } from '../utils';\nimport * as i0 from \"@angular/core\";\nexport class DocumentationStore {\n _configuration = inject(DOCUMENTATION_CONFIGURATION);\n tocData = signal(new TableOfContentData([], []), ...(ngDevMode ? [{ debugName: \"tocData\" }] : []));\n getMarkdownUrl(markdown) {\n return calculateMarkdownUrl(markdown, (this._configuration.navigation || []), this._configuration.docsDir, this._configuration.notFoundMarkdown);\n }\n getLogo() {\n return this._configuration.logo;\n }\n getTitle() {\n return this._configuration.title;\n }\n getHeaderNavigation() {\n return this._configuration.header?.navigation || [];\n }\n getComponents() {\n return this._configuration.components || [];\n }\n getNavigation() {\n return this._configuration.navigation || [];\n }\n getFooterNavigation() {\n return this._configuration.footer?.navigation || {};\n }\n getMediaLinks() {\n return this._configuration.header?.mediaLinks || [];\n }\n getTableOfContent() {\n return this._configuration.tableOfContent;\n }\n getHeader() {\n return this._configuration.header;\n }\n getShowcaseItems() {\n return this._configuration.showcaseItems || [];\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentationStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentationStore });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentationStore, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2Uvc2VydmljZXMvZG9jdW1lbnRhdGlvbi5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQU9MLGtCQUFrQixHQUNuQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUdoRCxNQUFNLE9BQU8sa0JBQWtCO0lBRVosY0FBYyxHQUFHLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBRXRELE9BQU8sR0FBRyxNQUFNLENBQXFCLElBQUksa0JBQWtCLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxtREFBQyxDQUFDO0lBRTlFLGNBQWMsQ0FBQyxRQUFnQjtRQUNwQyxPQUFPLG9CQUFvQixDQUN6QixRQUFRLEVBQ1IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFDdEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQ3JDLENBQUM7SUFDSixDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7SUFDbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO0lBQ25DLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUM7SUFDNUMsQ0FBQztJQUVNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO0lBQ3BDLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUM7SUFDakQsQ0FBQzt1R0FyRFUsa0JBQWtCOzJHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSUhlYWRlck1lbnVMaW5rLFxuICBJTWFya2Rvd25Gb290ZXJOYXZpZ2F0aW9uLFxuICBJTWVkaWFMaW5rLFxuICBJTWVkaWFMaW5rc1Byb3ZpZGVyLFxuICBJTmF2aWdhdGlvbkdyb3VwLFxuICBJVGFibGVPZkNvbnRlbnQsXG4gIFRhYmxlT2ZDb250ZW50RGF0YSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBJSGVhZGVyQ29uZmlndXJhdGlvbiwgSUhlYWRlckNvbmZpZ3VyYXRpb25TdG9yZSwgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OIH0gZnJvbSAnLi4vZG9tYWluJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSwgSVNob3djYXNlSXRlbSB9IGZyb20gJy4uLy4uL2R5bmFtaWMtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBjYWxjdWxhdGVNYXJrZG93blVybCB9IGZyb20gJy4uL3V0aWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERvY3VtZW50YXRpb25TdG9yZVxuICBpbXBsZW1lbnRzIElNZWRpYUxpbmtzUHJvdmlkZXIsIElIZWFkZXJDb25maWd1cmF0aW9uU3RvcmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWd1cmF0aW9uID0gaW5qZWN0KERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTik7XG5cbiAgcHVibGljIHJlYWRvbmx5IHRvY0RhdGEgPSBzaWduYWw8VGFibGVPZkNvbnRlbnREYXRhPihuZXcgVGFibGVPZkNvbnRlbnREYXRhKFtdLCBbXSkpO1xuXG4gIHB1YmxpYyBnZXRNYXJrZG93blVybChtYXJrZG93bjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gY2FsY3VsYXRlTWFya2Rvd25VcmwoXG4gICAgICBtYXJrZG93bixcbiAgICAgICh0aGlzLl9jb25maWd1cmF0aW9uLm5hdmlnYXRpb24gfHwgW10pLFxuICAgICAgdGhpcy5fY29uZmlndXJhdGlvbi5kb2NzRGlyLFxuICAgICAgdGhpcy5fY29uZmlndXJhdGlvbi5ub3RGb3VuZE1hcmtkb3duLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TG9nbygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmxvZ287XG4gIH1cblxuICBwdWJsaWMgZ2V0VGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi50aXRsZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRIZWFkZXJOYXZpZ2F0aW9uKCk6IElIZWFkZXJNZW51TGlua1tdIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5oZWFkZXI/Lm5hdmlnYXRpb24gfHwgW107XG4gIH1cblxuICBwdWJsaWMgZ2V0Q29tcG9uZW50cygpOiBJRHluYW1pY0NvbXBvbmVudEl0ZW1bXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24uY29tcG9uZW50cyB8fCBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXROYXZpZ2F0aW9uKCk6IElOYXZpZ2F0aW9uR3JvdXBbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24ubmF2aWdhdGlvbiB8fCBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGb290ZXJOYXZpZ2F0aW9uKCk6IElNYXJrZG93bkZvb3Rlck5hdmlnYXRpb24ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmZvb3Rlcj8ubmF2aWdhdGlvbiB8fCB7fTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNZWRpYUxpbmtzKCk6IElNZWRpYUxpbmtbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24uaGVhZGVyPy5tZWRpYUxpbmtzIHx8IFtdO1xuICB9XG5cbiAgcHVibGljIGdldFRhYmxlT2ZDb250ZW50KCk6IElUYWJsZU9mQ29udGVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLnRhYmxlT2ZDb250ZW50O1xuICB9XG5cbiAgcHVibGljIGdldEhlYWRlcigpOiBJSGVhZGVyQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24uaGVhZGVyO1xuICB9XG5cbiAgcHVibGljIGdldFNob3djYXNlSXRlbXMoKTogSVNob3djYXNlSXRlbVtdIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5zaG93Y2FzZUl0ZW1zIHx8IFtdO1xuICB9XG59XG4iXX0=","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class DynamicComponentsStore {\n _components = [];\n dispose() {\n this._components.forEach((ref) => ref.destroy());\n this._components = [];\n }\n addComponent(reference, element) {\n this._components.push(reference);\n this._assignInputs(reference, element);\n reference.instance?.initialize?.();\n }\n _assignInputs(componentRef, element) {\n const dataset = element?.dataset;\n if (!dataset)\n return;\n Object.entries(dataset).forEach(([key, rawValue]) => {\n const value = this._parseDatasetValue(rawValue);\n const member = componentRef.instance[key];\n if (member && typeof member.set === 'function') {\n member.set(value);\n }\n else {\n componentRef.instance[key] = value;\n }\n });\n }\n _parseDatasetValue(rawValue) {\n let result = rawValue;\n if (result?.startsWith?.('{') || result?.startsWith?.('[')) {\n try {\n result = JSON.parse(result);\n // eslint-disable-next-line no-unused-vars,@typescript-eslint/no-unused-vars\n }\n catch (e) { /* empty */\n }\n }\n return result;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DynamicComponentsStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DynamicComponentsStore });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DynamicComponentsStore, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnRzLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9keW5hbWljLWNvbXBvbmVudHMuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSXpELE1BQU0sT0FBTyxzQkFBc0I7SUFDekIsV0FBVyxHQUE4QyxFQUFFLENBQUM7SUFFN0QsT0FBTztRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sWUFBWSxDQUFDLFNBQWtELEVBQUUsT0FBcUI7UUFDM0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdkMsU0FBUyxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFTyxhQUFhLENBQUMsWUFBcUQsRUFBRSxPQUFxQjtRQUNoRyxNQUFNLE9BQU8sR0FBRyxPQUFPLEVBQUUsT0FBTyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUVyQixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUU7WUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2hELE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFMUMsSUFBSSxNQUFNLElBQUksT0FBUSxNQUFjLENBQUMsR0FBRyxLQUFLLFVBQVUsRUFBRSxDQUFDO2dCQUN2RCxNQUFvQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuRCxDQUFDO2lCQUFNLENBQUM7Z0JBQ0wsWUFBWSxDQUFDLFFBQWdCLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQzlDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxRQUFpQjtRQUMxQyxJQUFJLE1BQU0sR0FBdUIsUUFBUSxDQUFDO1FBQzFDLElBQUksTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNELElBQUksQ0FBQztnQkFDSCxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDNUIsNEVBQTRFO1lBQzlFLENBQUM7WUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVztZQUN6QixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7dUdBekNVLHNCQUFzQjsyR0FBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJRHluYW1pY0NvbXBvbmVudEluc3RhbmNlIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRHluYW1pY0NvbXBvbmVudHNTdG9yZSB7XG4gIHByaXZhdGUgX2NvbXBvbmVudHM6IENvbXBvbmVudFJlZjxJRHluYW1pY0NvbXBvbmVudEluc3RhbmNlPltdID0gW107XG5cbiAgcHVibGljIGRpc3Bvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5fY29tcG9uZW50cy5mb3JFYWNoKChyZWYpID0+IHJlZi5kZXN0cm95KCkpO1xuICAgIHRoaXMuX2NvbXBvbmVudHMgPSBbXTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRDb21wb25lbnQocmVmZXJlbmNlOiBDb21wb25lbnRSZWY8SUR5bmFtaWNDb21wb25lbnRJbnN0YW5jZT4sIGVsZW1lbnQ/OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIHRoaXMuX2NvbXBvbmVudHMucHVzaChyZWZlcmVuY2UpO1xuXG4gICAgdGhpcy5fYXNzaWduSW5wdXRzKHJlZmVyZW5jZSwgZWxlbWVudCk7XG4gICAgcmVmZXJlbmNlLmluc3RhbmNlPy5pbml0aWFsaXplPy4oKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Fzc2lnbklucHV0cyhjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxJRHluYW1pY0NvbXBvbmVudEluc3RhbmNlPiwgZWxlbWVudD86IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgY29uc3QgZGF0YXNldCA9IGVsZW1lbnQ/LmRhdGFzZXQ7XG4gICAgaWYgKCFkYXRhc2V0KSByZXR1cm47XG5cbiAgICBPYmplY3QuZW50cmllcyhkYXRhc2V0KS5mb3JFYWNoKChba2V5LCByYXdWYWx1ZV0pID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fcGFyc2VEYXRhc2V0VmFsdWUocmF3VmFsdWUpO1xuICAgICAgY29uc3QgbWVtYmVyID0gY29tcG9uZW50UmVmLmluc3RhbmNlW2tleV07XG5cbiAgICAgIGlmIChtZW1iZXIgJiYgdHlwZW9mIChtZW1iZXIgYXMgYW55KS5zZXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgKG1lbWJlciBhcyB7IHNldCh2OiB1bmtub3duKTogdm9pZCB9KS5zZXQodmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgKGNvbXBvbmVudFJlZi5pbnN0YW5jZSBhcyBhbnkpW2tleV0gPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcnNlRGF0YXNldFZhbHVlKHJhd1ZhbHVlPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgcmVzdWx0OiBzdHJpbmcgfCB1bmRlZmluZWQgPSByYXdWYWx1ZTtcbiAgICBpZiAocmVzdWx0Py5zdGFydHNXaXRoPy4oJ3snKSB8fCByZXN1bHQ/LnN0YXJ0c1dpdGg/LignWycpKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdCk7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFycyxAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIH0gY2F0Y2ggKGUpIHsgLyogZW1wdHkgKi9cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19","import { ChangeDetectionStrategy, Component, inject, NgZone, signal, viewChild, } from '@angular/core';\nimport { HamburgerButton } from './components/hamburger-button';\nimport { DocumentationStore } from '../../services';\nimport { ThemeButtonComponent } from '../../../theme';\nimport { InlineMenu } from './components/inline-menu';\nimport { MediaLinks } from './components/media-links';\nimport { DropdownMenu } from './components/dropdown-menu';\nimport { HEADER_CONFIGURATION_PROVIDER } from '../../../common';\nimport { RouterLink } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class HeaderComponent {\n title = inject(DocumentationStore).getTitle();\n image = inject(DocumentationStore).getLogo();\n config = inject(HEADER_CONFIGURATION_PROVIDER);\n emptyNavigation = !inject(DocumentationStore).getNavigation().length;\n _zone = inject(NgZone);\n _containerRef = viewChild.required('container');\n _targetRef = viewChild.required('target');\n overflowed = signal(false, ...(ngDevMode ? [{ debugName: \"overflowed\" }] : []));\n initialized = signal(false, ...(ngDevMode ? [{ debugName: \"initialized\" }] : []));\n _rafId = null;\n _roContainer;\n _roTarget;\n ngAfterViewInit() {\n if (typeof ResizeObserver === 'undefined') {\n this._checkOverflow(true);\n return;\n }\n this._initObservers();\n this._checkOverflow(true); // первый замер синхронно\n }\n _initObservers() {\n const container = this._containerRef().nativeElement;\n const target = this._targetRef().nativeElement;\n this._zone.runOutsideAngular(() => {\n const cb = () => this._scheduleCheck();\n this._roContainer = new ResizeObserver(cb);\n this._roTarget = new ResizeObserver(cb);\n this._roContainer.observe(container);\n this._roTarget.observe(target);\n });\n }\n _scheduleCheck() {\n if (this._rafId != null)\n return;\n this._rafId = requestAnimationFrame(() => {\n this._rafId = null;\n this._checkOverflow(false);\n });\n }\n _checkOverflow(isFirst) {\n const container = this._containerRef().nativeElement;\n const target = this._targetRef().nativeElement;\n if (!container || !target)\n return;\n const next = target.scrollWidth >= container.clientWidth;\n if (next !== this.overflowed() || !this.initialized()) {\n this._zone.run(() => {\n this.overflowed.set(next);\n if (isFirst)\n this.initialized.set(true);\n });\n }\n }\n ngOnDestroy() {\n this._roContainer?.disconnect();\n this._roTarget?.disconnect();\n if (this._rafId != null)\n cancelAnimationFrame(this._rafId);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: HeaderComponent, isStandalone: true, selector: \"f-header\", viewQueries: [{ propertyName: \"_containerRef\", first: true, predicate: [\"container\"], descendants: true, isSignal: true }, { propertyName: \"_targetRef\", first: true, predicate: [\"target\"], descendants: true, isSignal: true }], ngImport: i0, template: \"@if (emptyNavigation) {\\n <a routerLink class=\\\"empty-navigation-title\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n </a>\\n} @else {\\n <div class=\\\"portal-title\\\">\\n <button hamburger-button></button>\\n <div class=\\\"title text-ellipsis\\\">{{ title }}</div>\\n </div>\\n}\\n\\n<div class=\\\"collapsable-row\\\" #container>\\n <div #target class=\\\"target\\\" [class.hidden]=\\\"initialized() && overflowed()\\\">\\n @if (config.navigation) {\\n <inline-menu />\\n <div class=\\\"divider\\\"></div>\\n }\\n\\n <button theme-button></button>\\n <div class=\\\"divider\\\"></div>\\n <media-links />\\n </div>\\n\\n <div class=\\\"fallback\\\" [class.hidden]=\\\"!initialized() || !overflowed()\\\">\\n <dropdown-menu />\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:sticky;width:100%;top:0;display:flex;justify-content:flex-start;align-items:center;padding:0 32px;font-weight:600;color:var(--primary-text);height:calc(var(--header-height) + 1px);background-color:var(--background-color);border-bottom:1px solid var(--divider-color);z-index:var(--z-index-header)}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}.empty-navigation-title{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.empty-navigation-title img{margin-right:8px}.portal-title{display:flex;justify-content:flex-start;align-items:center}@media (min-width: 960px){.portal-title{display:none}}.portal-title .title{font-weight:600;color:var(--primary-text)}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}.collapsable-row{position:relative;width:100%;display:flex;justify-content:flex-end}.collapsable-row .target{display:flex;justify-content:flex-start;align-items:center;width:fit-content}.collapsable-row .target.hidden{position:absolute;left:-99999px;top:0;visibility:hidden;white-space:nowrap}.collapsable-row .fallback.hidden{display:none}\\n\"], dependencies: [{ kind: \"component\", type: HamburgerButton, selector: \"button[hamburger-button]\" }, { kind: \"component\", type: ThemeButtonComponent, selector: \"button[theme-button]\" }, { kind: \"component\", type: InlineMenu, selector: \"inline-menu\" }, { kind: \"component\", type: DropdownMenu, selector: \"dropdown-menu\" }, { kind: \"component\", type: MediaLinks, selector: \"media-links\" }, { kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HeaderComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-header', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n HamburgerButton,\n ThemeButtonComponent,\n InlineMenu,\n DropdownMenu,\n InlineMenu,\n MediaLinks,\n DropdownMenu,\n RouterLink,\n ], template: \"@if (emptyNavigation) {\\n <a routerLink class=\\\"empty-navigation-title\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n </a>\\n} @else {\\n <div class=\\\"portal-title\\\">\\n <button hamburger-button></button>\\n <div class=\\\"title text-ellipsis\\\">{{ title }}</div>\\n </div>\\n}\\n\\n<div class=\\\"collapsable-row\\\" #container>\\n <div #target class=\\\"target\\\" [class.hidden]=\\\"initialized() && overflowed()\\\">\\n @if (config.navigation) {\\n <inline-menu />\\n <div class=\\\"divider\\\"></div>\\n }\\n\\n <button theme-button></button>\\n <div class=\\\"divider\\\"></div>\\n <media-links />\\n </div>\\n\\n <div class=\\\"fallback\\\" [class.hidden]=\\\"!initialized() || !overflowed()\\\">\\n <dropdown-menu />\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:sticky;width:100%;top:0;display:flex;justify-content:flex-start;align-items:center;padding:0 32px;font-weight:600;color:var(--primary-text);height:calc(var(--header-height) + 1px);background-color:var(--background-color);border-bottom:1px solid var(--divider-color);z-index:var(--z-index-header)}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}.empty-navigation-title{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.empty-navigation-title img{margin-right:8px}.portal-title{display:flex;justify-content:flex-start;align-items:center}@media (min-width: 960px){.portal-title{display:none}}.portal-title .title{font-weight:600;color:var(--primary-text)}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}.collapsable-row{position:relative;width:100%;display:flex;justify-content:flex-end}.collapsable-row .target{display:flex;justify-content:flex-start;align-items:center;width:fit-content}.collapsable-row .target.hidden{position:absolute;left:-99999px;top:0;visibility:hidden;white-space:nowrap}.collapsable-row .fallback.hidden{display:none}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULE1BQU0sRUFDTixNQUFNLEVBRU4sTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQW1CN0MsTUFBTSxPQUFPLGVBQWU7SUFDaEIsS0FBSyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlDLEtBQUssR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxNQUFNLEdB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TCxDQUFDO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzdCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJO1lBQUUsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdELENBQUM7dUdBckVVLGVBQWU7MkZBQWYsZUFBZSx1U0NyQzVCLHN4QkE0QkEsK29ERERJLGVBQWUscUVBQ2Ysb0JBQW9CLGlFQUNwQixVQUFVLHdEQUNWLFlBQVksMERBRVosVUFBVSx3REFFVixVQUFVOzsyRkFHRCxlQUFlO2tCQWpCM0IsU0FBUzsrQkFDRSxVQUFVLGNBR1IsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osVUFBVTt3QkFDVixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osVUFBVTtxQkFDWCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIHNpZ25hbCxcbiAgdmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhhbWJ1cmdlckJ1dHRvbiB9IGZyb20gJy4vY29tcG9uZW50cy9oYW1idXJnZXItYnV0dG9uJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFRoZW1lQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vdGhlbWUnO1xuaW1wb3J0IHsgSW5saW5lTWVudSB9IGZyb20gJy4vY29tcG9uZW50cy9pbmxpbmUtbWVudSc7XG5pbXBvcnQgeyBNZWRpYUxpbmtzIH0gZnJvbSAnLi9jb21wb25lbnRzL21lZGlhLWxpbmtzJztcbmltcG9ydCB7IERyb3Bkb3duTWVudSB9IGZyb20gJy4vY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcbmltcG9ydCB7IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vaGVhZGVyLmNvbXBvbmVudC5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIEhhbWJ1cmdlckJ1dHRvbixcbiAgICBUaGVtZUJ1dHRvbkNvbXBvbmVudCxcbiAgICBJbmxpbmVNZW51LFxuICAgIERyb3Bkb3duTWVudSxcbiAgICBJbmxpbmVNZW51LFxuICAgIE1lZGlhTGlua3MsXG4gICAgRHJvcGRvd25NZW51LFxuICAgIFJvdXRlckxpbmssXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCB0aXRsZSA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpLmdldFRpdGxlKCk7XG4gIHByb3RlY3RlZCBpbWFnZSA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpLmdldExvZ28oKTtcbiAgcHJvdGVjdGVkIGNvbmZpZyA9IGluamVjdChIRUFERVJfQ09ORklHVVJBVElPTl9QUk9WSURFUik7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVtcHR5TmF2aWdhdGlvbiA9ICFpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKS5nZXROYXZpZ2F0aW9uKCkubGVuZ3RoO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3pvbmUgPSBpbmplY3QoTmdab25lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jb250YWluZXJSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdjb250YWluZXInKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdGFyZ2V0UmVmID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PigndGFyZ2V0Jyk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG92ZXJmbG93ZWQgPSBzaWduYWwoZmFsc2UpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW5pdGlhbGl6ZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByaXZhdGUgX3JhZklkOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfcm9Db250YWluZXI/OiBSZXNpemVPYnNlcnZlcjtcbiAgcHJpdmF0ZSBfcm9UYXJnZXQ/OiBSZXNpemVPYnNlcnZlcjtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0eXBlb2YgUmVzaXplT2JzZXJ2ZXIgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLl9jaGVja092ZXJmbG93KHRydWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9pbml0T2JzZXJ2ZXJzKCk7XG4gICAgdGhpcy5fY2hlY2tPdmVyZmxvdyh0cnVlKTsgLy8g0L/QtdGA0LLRi9C5INC30LDQvNC10YAg0YHQuNC90YXRgNC+0L3QvdC+XG4gIH1cblxuICBwcml2YXRlIF9pbml0T2JzZXJ2ZXJzKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2NvbnRhaW5lclJlZigpLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0UmVmKCkubmF0aXZlRWxlbWVudDtcblxuICAgIHRoaXMuX3pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3QgY2IgPSAoKSA9PiB0aGlzLl9zY2hlZHVsZUNoZWNrKCk7XG4gICAgICB0aGlzLl9yb0NvbnRhaW5lciA9IG5ldyBSZXNpemVPYnNlcnZlcihjYik7XG4gICAgICB0aGlzLl9yb1RhcmdldCA9IG5ldyBSZXNpemVPYnNlcnZlcihjYik7XG5cbiAgICAgIHRoaXMuX3JvQ29udGFpbmVyLm9ic2VydmUoY29udGFpbmVyKTtcbiAgICAgIHRoaXMuX3JvVGFyZ2V0Lm9ic2VydmUodGFyZ2V0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3NjaGVkdWxlQ2hlY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JhZklkICE9IG51bGwpIHJldHVybjtcbiAgICB0aGlzLl9yYWZJZCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICB0aGlzLl9yYWZJZCA9IG51bGw7XG4gICAgICB0aGlzLl9jaGVja092ZXJmbG93KGZhbHNlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrT3ZlcmZsb3coaXNGaXJzdDogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2NvbnRhaW5lclJlZigpLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0UmVmKCkubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhdGFyZ2V0KSByZXR1cm47XG5cbiAgICBjb25zdCBuZXh0ID0gdGFyZ2V0LnNjcm9sbFdpZHRoID49IGNvbnRhaW5lci5jbGllbnRXaWR0aDtcblxuICAgIGlmIChuZXh0ICE9PSB0aGlzLm92ZXJmbG93ZWQoKSB8fCAhdGhpcy5pbml0aWFsaXplZCgpKSB7XG4gICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub3ZlcmZsb3dlZC5zZXQobmV4dCk7XG4gICAgICAgIGlmIChpc0ZpcnN0KSB0aGlzLmluaXRpYWxpemVkLnNldCh0cnVlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9yb0NvbnRhaW5lcj8uZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX3JvVGFyZ2V0Py5kaXNjb25uZWN0KCk7XG4gICAgaWYgKHRoaXMuX3JhZklkICE9IG51bGwpIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX3JhZklkKTtcbiAgfVxufVxuIiwiQGlmIChlbXB0eU5hdmlnYXRpb24pIHtcbiAgPGEgcm91dGVyTGluayBjbGFzcz1cImVtcHR5LW5hdmlnYXRpb24tdGl0bGVcIj5cbiAgICA8aW1nIFtzcmNdPVwiaW1hZ2VcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBhbHQ9XCJsb2dvXCIgY2xhc3M9XCJsb2dvXCIvPiB7eyB0aXRsZSB9fVxuICA8L2E+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cInBvcnRhbC10aXRsZVwiPlxuICAgIDxidXR0b24gaGFtYnVyZ2VyLWJ1dHRvbj48L2J1dHRvbj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGUgdGV4dC1lbGxpcHNpc1wiPnt7IHRpdGxlIH19PC9kaXY+XG4gIDwvZGl2PlxufVxuXG48ZGl2IGNsYXNzPVwiY29sbGFwc2FibGUtcm93XCIgI2NvbnRhaW5lcj5cbiAgPGRpdiAjdGFyZ2V0IGNsYXNzPVwidGFyZ2V0XCIgW2NsYXNzLmhpZGRlbl09XCJpbml0aWFsaXplZCgpICYmIG92ZXJmbG93ZWQoKVwiPlxuICAgIEBpZiAoY29uZmlnLm5hdmlnYXRpb24pIHtcbiAgICAgIDxpbmxpbmUtbWVudSAvPlxuICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIj48L2Rpdj5cbiAgICB9XG5cbiAgICA8YnV0dG9uIHRoZW1lLWJ1dHRvbj48L2J1dHRvbj5cbiAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiPjwvZGl2PlxuICAgIDxtZWRpYS1saW5rcyAvPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZmFsbGJhY2tcIiBbY2xhc3MuaGlkZGVuXT1cIiFpbml0aWFsaXplZCgpIHx8ICFvdmVyZmxvd2VkKClcIj5cbiAgICA8ZHJvcGRvd24tbWVudSAvPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=","import { ChangeDetectionStrategy, Component, input, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NavigationGroupComponent {\n title = input(undefined, ...(ngDevMode ? [{ debugName: \"title\" }] : []));\n isCollapsed = signal(false, ...(ngDevMode ? [{ debugName: \"isCollapsed\" }] : []));\n toggle() {\n this.isCollapsed.set(!this.isCollapsed());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: NavigationGroupComponent, isStandalone: true, selector: \"f-navigation-group\", inputs: { title: { classPropertyName: \"title\", publicName: \"title\", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { \"class.collapsed\": \"isCollapsed()\", \"class.no-title\": \"!title()\" } }, ngImport: i0, template: \"@if (title()) {\\n <header (click)=\\\"toggle()\\\">\\n <span>{{ title() }}</span>\\n <div class=\\\"flex-space\\\"></div>\\n <div class=\\\"caret\\\">\\n <span class=\\\"chevron-right caret-icon\\\"></span>\\n </div>\\n </header>\\n}\\n@if (!isCollapsed()) {\\n <ng-content></ng-content>\\n}\\n\\n\\n\\n\", styles: [\":host{padding-top:10px;padding-bottom:24px;border-top:1px solid var(--divider-color);display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:100%;max-width:240px;margin-left:auto}:host.collapsed,:host.no-title{padding-top:10px;padding-bottom:10px}header{font-weight:600;color:var(--primary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;display:flex;justify-content:flex-start;align-items:center;width:100%}.caret{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--tertiary-text);cursor:pointer;transition:color .25s;flex-shrink:0}:host:hover .caret{color:var(--secondary-text)}:host:hover .caret:hover{color:var(--primary-text)}:host .caret-icon{font-size:18px;transform:rotate(90deg);transition:transform .25s;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:18px;height:18px}:host.collapsed .caret-icon{transform:rotate(0)}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationGroupComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-navigation-group', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[class.collapsed]': 'isCollapsed()',\n '[class.no-title]': '!title()',\n }, template: \"@if (title()) {\\n <header (click)=\\\"toggle()\\\">\\n <span>{{ title() }}</span>\\n <div class=\\\"flex-space\\\"></div>\\n <div class=\\\"caret\\\">\\n <span class=\\\"chevron-right caret-icon\\\"></span>\\n </div>\\n </header>\\n}\\n@if (!isCollapsed()) {\\n <ng-content></ng-content>\\n}\\n\\n\\n\\n\", styles: [\":host{padding-top:10px;padding-bottom:24px;border-top:1px solid var(--divider-color);display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:100%;max-width:240px;margin-left:auto}:host.collapsed,:host.no-title{padding-top:10px;padding-bottom:10px}header{font-weight:600;color:var(--primary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;display:flex;justify-content:flex-start;align-items:center;width:100%}.caret{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--tertiary-text);cursor:pointer;transition:color .25s;flex-shrink:0}:host:hover .caret{color:var(--secondary-text)}:host:hover .caret:hover{color:var(--primary-text)}:host .caret-icon{font-size:18px;transform:rotate(90deg);transition:transform .25s;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:18px;height:18px}:host.collapsed .caret-icon{transform:rotate(0)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1wYW5lbC9uYXZpZ2F0aW9uLWdyb3VwL25hdmlnYXRpb24tZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL25hdmlnYXRpb24tcGFuZWwvbmF2aWdhdGlvbi1ncm91cC9uYXZpZ2F0aW9uLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFhbEYsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQixLQUFLLEdBQUcsS0FBSyxDQUFxQixTQUFTLGlEQUFDLENBQUM7SUFFMUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLHVEQUFDLENBQUM7SUFFckMsTUFBTTtRQUNkLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQzt1R0FQVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qiw4U0NickMsdVNBZUE7OzJGREZhLHdCQUF3QjtrQkFYcEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FHbEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLG1CQUFtQixFQUFFLGVBQWU7d0JBQ3BDLGtCQUFrQixFQUFFLFVBQVU7cUJBQy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLW5hdmlnYXRpb24tZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2aWdhdGlvbi1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9uYXZpZ2F0aW9uLWdyb3VwLmNvbXBvbmVudC5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuY29sbGFwc2VkXSc6ICdpc0NvbGxhcHNlZCgpJyxcbiAgICAnW2NsYXNzLm5vLXRpdGxlXSc6ICchdGl0bGUoKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE5hdmlnYXRpb25Hcm91cENvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSB0aXRsZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNDb2xsYXBzZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCB0b2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5pc0NvbGxhcHNlZC5zZXQoIXRoaXMuaXNDb2xsYXBzZWQoKSk7XG4gIH1cbn1cbiIsIkBpZiAodGl0bGUoKSkge1xuICA8aGVhZGVyIChjbGljayk9XCJ0b2dnbGUoKVwiPlxuICAgIDxzcGFuPnt7IHRpdGxlKCkgfX08L3NwYW4+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgtc3BhY2VcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZXRcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiY2hldnJvbi1yaWdodCBjYXJldC1pY29uXCI+PC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2hlYWRlcj5cbn1cbkBpZiAoIWlzQ29sbGFwc2VkKCkpIHtcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxufVxuXG5cblxuIl19","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class FNavigationItemComponent {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FNavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FNavigationItemComponent, isStandalone: true, selector: \"a[f-navigation-item]\", ngImport: i0, template: \"<ng-content></ng-content>\\n\\n\\n\\n\", styles: [\":host{font-weight:500;color:var(--secondary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:flex-start;gap:2px}:host:hover{text-decoration:none;color:var(--primary-1)}:host.active{color:var(--primary-1)}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FNavigationItemComponent, decorators: [{\n type: Component,\n args: [{ selector: 'a[f-navigation-item]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"<ng-content></ng-content>\\n\\n\\n\\n\", styles: [\":host{font-weight:500;color:var(--secondary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:flex-start;gap:2px}:host:hover{text-decoration:none;color:var(--primary-1)}:host.active{color:var(--primary-1)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL25hdmlnYXRpb24tcGFuZWwvZi1uYXZpZ2F0aW9uLWl0ZW0vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL25hdmlnYXRpb24tcGFuZWwvZi1uYXZpZ2F0aW9uLWl0ZW0vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTbkUsTUFBTSxPQUFPLHdCQUF3Qjt1R0FBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0IsZ0ZDVHJDLG1DQUlBOzsyRkRLYSx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBR3BCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYVtmLW5hdmlnYXRpb24taXRlbV0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50LnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQge1xuXG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cblxuXG4iXX0=","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, DestroyRef, HostListener, inject, } from '@angular/core';\nimport { NavigationEnd, Router, RouterLink } from '@angular/router';\nimport { startWith } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { FNavigationItemComponent } from './f-navigation-item/f-navigation-item.component';\nimport { NavigationGroupComponent } from './navigation-group/navigation-group.component';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { TOGGLE_NAVIGATION_COMPONENT } from '../header';\nimport { DocumentationStore } from '../../services';\nimport { HandleNavigationLinksHandler, HandleNavigationLinksRequest } from '../../domain';\nimport { WINDOW } from '../../../common';\nimport * as i0 from \"@angular/core\";\nexport class NavigationPanelComponent {\n _provider = inject(DocumentationStore);\n _parent = inject(TOGGLE_NAVIGATION_COMPONENT, {\n optional: true,\n });\n _router = inject(Router);\n _changeDetectorRef = inject(ChangeDetectorRef);\n _destroyRef = inject(DestroyRef);\n _window = inject(WINDOW);\n value;\n navigation = this._provider.getNavigation();\n title = this._provider.getTitle();\n image = this._provider.getLogo();\n ngOnInit() {\n const currentPath = this._router.url;\n const prefix = currentPath.substring(0, currentPath.lastIndexOf('/'));\n const navigation = this._deepClone(this._provider.getNavigation());\n navigation.forEach((group) => {\n group.items.forEach((item) => this._normalizeLink(item, prefix));\n });\n this.navigation = navigation;\n }\n _deepClone(value) {\n return JSON.parse(JSON.stringify(value));\n }\n _normalizeLink(item, prefix) {\n if (item.link && !this._isExternalLink(item.link)) {\n item.link = item.link.startsWith('/')\n ? `${prefix}${item.link}`\n : `${prefix}/${item.link}`;\n }\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n ngAfterViewInit() {\n this._subscribeOnRouteChanges();\n }\n _subscribeOnRouteChanges() {\n this._router.events\n .pipe(startWith(new NavigationEnd(1, '', '')), filter((event) => event instanceof NavigationEnd), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => {\n this._highlightLink(this._router.url);\n this._parent?.onToggleNavigation(false);\n this._changeDetectorRef.detectChanges();\n });\n }\n _highlightLink(url) {\n this.value = undefined;\n this.navigation.forEach((group) => {\n this.value =\n group.items.find((x) => {\n return url.endsWith(x.link);\n })?.link || this.value;\n });\n }\n _onDocumentClick(event) {\n new HandleNavigationLinksHandler().handle(new HandleNavigationLinksRequest(event, this._window, this._router));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: NavigationPanelComponent, isStandalone: true, selector: \"f-navigation-panel\", host: { listeners: { \"click\": \"_onDocumentClick($event)\" } }, ngImport: i0, template: \"<a routerLink class=\\\"navigation-header\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n</a>\\n\\n@for (group of navigation; track group) {\\n <f-navigation-group [title]=\\\"group.text\\\">\\n @for (item of group.items; track item.link) {\\n <a f-navigation-item [href]=\\\"item.link\\\" [class.active]=\\\"item.link === value\\\">\\n <div class=\\\"text-ellipsis\\\">{{ item.text }}</div>\\n @if (item.badge) {\\n <span class=\\\"f-badge {{ item.badge.type }}\\\">{{ item.badge.text }}</span>\\n }\\n </a>\\n }\\n </f-navigation-group>\\n}\\n\\n\", styles: [\":host{height:100%;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:0 var(--navigation-panel-padding);background-color:var(--navigation-panel-background);overflow:hidden;overflow-y:auto;position:fixed;width:var(--navigation-panel-width);top:0;left:calc(-1 * var(--navigation-panel-width));transition:transform .2s ease-in-out;z-index:var(--z-index-navigation);transform:none}@media (min-width: 960px){:host{position:unset;display:flex;min-width:var(--navigation-panel-width);width:fit-content;transform:none!important}}@media (min-width: 1440px){:host{min-width:calc((100% - (var(--layout-max-width) - 64px)) / 3 + var(--navigation-panel-width) - var(--navigation-panel-padding))}}:host.visible{transform:translate(var(--navigation-panel-width))}.navigation-header{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.navigation-header img{margin-right:8px}\\n\"], dependencies: [{ kind: \"component\", type: FNavigationItemComponent, selector: \"a[f-navigation-item]\" }, { kind: \"component\", type: NavigationGroupComponent, selector: \"f-navigation-group\", inputs: [\"title\"] }, { kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationPanelComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-navigation-panel', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n FNavigationItemComponent,\n NavigationGroupComponent,\n RouterLink,\n ], template: \"<a routerLink class=\\\"navigation-header\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n</a>\\n\\n@for (group of navigation; track group) {\\n <f-navigation-group [title]=\\\"group.text\\\">\\n @for (item of group.items; track item.link) {\\n <a f-navigation-item [href]=\\\"item.link\\\" [class.active]=\\\"item.link === value\\\">\\n <div class=\\\"text-ellipsis\\\">{{ item.text }}</div>\\n @if (item.badge) {\\n <span class=\\\"f-badge {{ item.badge.type }}\\\">{{ item.badge.text }}</span>\\n }\\n </a>\\n }\\n </f-navigation-group>\\n}\\n\\n\", styles: [\":host{height:100%;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:0 var(--navigation-panel-padding);background-color:var(--navigation-panel-background);overflow:hidden;overflow-y:auto;position:fixed;width:var(--navigation-panel-width);top:0;left:calc(-1 * var(--navigation-panel-width));transition:transform .2s ease-in-out;z-index:var(--z-index-navigation);transform:none}@media (min-width: 960px){:host{position:unset;display:flex;min-width:var(--navigation-panel-width);width:fit-content;transform:none!important}}@media (min-width: 1440px){:host{min-width:calc((100% - (var(--layout-max-width) - 64px)) / 3 + var(--navigation-panel-width) - var(--navigation-panel-padding))}}:host.visible{transform:translate(var(--navigation-panel-width))}.navigation-header{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.navigation-header img{margin-right:8px}\\n\"] }]\n }], propDecorators: { _onDocumentClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1wYW5lbC9uYXZpZ2F0aW9uLXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9uYXZpZ2F0aW9uLXBhbmVsL25hdmlnYXRpb24tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUYsT0FBTyxFQUFFLE1BQU0sRUFB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Q0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIsIFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2YtbmF2aWdhdGlvbi1pdGVtL2YtbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL25hdmlnYXRpb24tZ3JvdXAvbmF2aWdhdGlvbi1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSU5hdmlnYXRpb25JdGVtIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgVE9HR0xFX05BVklHQVRJT05fQ09NUE9ORU5UIH0gZnJvbSAnLi4vaGVhZGVyJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEhhbmRsZU5hdmlnYXRpb25MaW5rc0hhbmRsZXIsIEhhbmRsZU5hdmlnYXRpb25MaW5rc1JlcXVlc3QgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1uYXZpZ2F0aW9uLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmlnYXRpb24tcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uYXZpZ2F0aW9uLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgRk5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIE5hdmlnYXRpb25Hcm91cENvbXBvbmVudCxcbiAgICBSb3V0ZXJMaW5rLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXZpZ2F0aW9uUGFuZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9wcm92aWRlciA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQgPSBpbmplY3QoVE9HR0xFX05BVklHQVRJT05fQ09NUE9ORU5ULCB7XG4gICAgb3B0aW9uYWw6IHRydWUsXG4gIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF93aW5kb3cgPSBpbmplY3QoV0lORE9XKTtcblxuICBwcm90ZWN0ZWQgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHJvdGVjdGVkIG5hdmlnYXRpb24gPSB0aGlzLl9wcm92aWRlci5nZXROYXZpZ2F0aW9uKCk7XG4gIHByb3RlY3RlZCB0aXRsZSA9IHRoaXMuX3Byb3ZpZGVyLmdldFRpdGxlKCk7XG4gIHByb3RlY3RlZCBpbWFnZSA9IHRoaXMuX3Byb3ZpZGVyLmdldExvZ28oKTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFBhdGggPSB0aGlzLl9yb3V0ZXIudXJsO1xuICAgIGNvbnN0IHByZWZpeCA9IGN1cnJlbnRQYXRoLnN1YnN0cmluZygwLCBjdXJyZW50UGF0aC5sYXN0SW5kZXhPZignLycpKTtcbiAgICBjb25zdCBuYXZpZ2F0aW9uID0gdGhpcy5fZGVlcENsb25lKHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKSk7XG4gICAgbmF2aWdhdGlvbi5mb3JFYWNoKChncm91cCkgPT4ge1xuICAgICAgZ3JvdXAuaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4gdGhpcy5fbm9ybWFsaXplTGluayhpdGVtLCBwcmVmaXgpKTtcbiAgICB9KTtcbiAgICB0aGlzLm5hdmlnYXRpb24gPSBuYXZpZ2F0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGVlcENsb25lPFQ+KHZhbHVlOiBUKTogVCB7XG4gICAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcbiAgfVxuXG4gIHByaXZhdGUgX25vcm1hbGl6ZUxpbmsoaXRlbTogSU5hdmlnYXRpb25JdGVtLCBwcmVmaXg6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChpdGVtLmxpbmsgJiYgIXRoaXMuX2lzRXh0ZXJuYWxMaW5rKGl0ZW0ubGluaykpIHtcbiAgICAgIGl0ZW0ubGluayA9IGl0ZW0ubGluay5zdGFydHNXaXRoKCcvJylcbiAgICAgICAgPyBgJHtwcmVmaXh9JHtpdGVtLmxpbmt9YFxuICAgICAgICA6IGAke3ByZWZpeH0vJHtpdGVtLmxpbmt9YDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0V4dGVybmFsTGluayhocmVmOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaHJlZi5zdGFydHNXaXRoKCd3d3cnKSB8fCBocmVmLnN0YXJ0c1dpdGgoJ2h0dHAnKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaWJlT25Sb3V0ZUNoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3N1YnNjcmliZU9uUm91dGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX3JvdXRlci5ldmVudHNcbiAgICAgIC5waXBlKFxuICAgICAgICBzdGFydFdpdGgobmV3IE5hdmlnYXRpb25FbmQoMSwgJycsICcnKSksXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9oaWdobGlnaHRMaW5rKHRoaXMuX3JvdXRlci51cmwpO1xuICAgICAgICB0aGlzLl9wYXJlbnQ/Lm9uVG9nZ2xlTmF2aWdhdGlvbihmYWxzZSk7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGlnaGxpZ2h0TGluayh1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5uYXZpZ2F0aW9uLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgICB0aGlzLnZhbHVlID1cbiAgICAgICAgZ3JvdXAuaXRlbXMuZmluZCgoeCkgPT4ge1xuICAgICAgICAgIHJldHVybiB1cmwuZW5kc1dpdGgoeC5saW5rKTtcbiAgICAgICAgfSk/LmxpbmsgfHwgdGhpcy52YWx1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgcHJvdGVjdGVkIF9vbkRvY3VtZW50Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBuZXcgSGFuZGxlTmF2aWdhdGlvbkxpbmtzSGFuZGxlcigpLmhhbmRsZShcbiAgICAgIG5ldyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NSZXF1ZXN0KGV2ZW50LCB0aGlzLl93aW5kb3csIHRoaXMuX3JvdXRlciksXG4gICAgKTtcbiAgfVxufVxuIiwiPGEgcm91dGVyTGluayBjbGFzcz1cIm5hdmlnYXRpb24taGVhZGVyXCI+XG4gIDxpbWcgW3NyY109XCJpbWFnZVwiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIGFsdD1cImxvZ29cIiBjbGFzcz1cImxvZ29cIi8+IHt7IHRpdGxlIH19XG48L2E+XG5cbkBmb3IgKGdyb3VwIG9mIG5hdmlnYXRpb247IHRyYWNrIGdyb3VwKSB7XG4gIDxmLW5hdmlnYXRpb24tZ3JvdXAgW3RpdGxlXT1cImdyb3VwLnRleHRcIj5cbiAgICBAZm9yIChpdGVtIG9mIGdyb3VwLml0ZW1zOyB0cmFjayBpdGVtLmxpbmspIHtcbiAgICAgIDxhIGYtbmF2aWdhdGlvbi1pdGVtIFtocmVmXT1cIml0ZW0ubGlua1wiIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5saW5rID09PSB2YWx1ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbGxpcHNpc1wiPnt7IGl0ZW0udGV4dCB9fTwvZGl2PlxuICAgICAgICBAaWYgKGl0ZW0uYmFkZ2UpIHtcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImYtYmFkZ2Uge3sgaXRlbS5iYWRnZS50eXBlIH19XCI+e3sgaXRlbS5iYWRnZS50ZXh0IH19PC9zcGFuPlxuICAgICAgICB9XG4gICAgICA8L2E+XG4gICAgfVxuICA8L2YtbmF2aWdhdGlvbi1ncm91cD5cbn1cblxuIl19","export class GetPreviousNextPageNavigationResponse {\n previousLink;\n nextLink;\n constructor(previousLink, nextLink) {\n this.previousLink = previousLink;\n this.nextLink = nextLink;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLnJlc3BvbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9kb21haW4vZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uL2dldC1wcmV2aW91cy1uZXh0LXBhZ2UtbmF2aWdhdGlvbi5yZXNwb25zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8scUNBQXFDO0lBR3ZDO0lBQ0E7SUFGVCxZQUNTLFlBQTZDLEVBQzdDLFFBQXlDO1FBRHpDLGlCQUFZLEdBQVosWUFBWSxDQUFpQztRQUM3QyxhQUFRLEdBQVIsUUFBUSxDQUFpQztJQUdsRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTWFya2Rvd25Gb290ZXJMaW5rIH0gZnJvbSAnLi4vaS1tYXJrZG93bi1mb290ZXItbGluayc7XG5cbmV4cG9ydCBjbGFzcyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlc3BvbnNlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcHJldmlvdXNMaW5rOiBJTWFya2Rvd25Gb290ZXJMaW5rIHwgdW5kZWZpbmVkLFxuICAgIHB1YmxpYyBuZXh0TGluazogSU1hcmtkb3duRm9vdGVyTGluayB8IHVuZGVmaW5lZCxcbiAgKSB7XG5cbiAgfVxufVxuIl19","import { GetPreviousNextPageNavigationResponse } from './get-previous-next-page-navigation.response';\nexport class GetPreviousNextPageNavigationHandler {\n _provider;\n constructor(_provider) {\n this._provider = _provider;\n }\n handle(request) {\n let previous = undefined;\n let next = undefined;\n this._provider.getNavigation().forEach((group, groupIndex) => {\n (group.items || []).forEach((item, index) => {\n if (item.link === request.currentLink) {\n if (index > 0) {\n previous = { ...group.items[index - 1] };\n }\n else {\n if (groupIndex > 0) {\n const previousGroup = this._provider.getNavigation()[groupIndex - 1];\n previous = { ...previousGroup.items[previousGroup.items.length - 1] };\n }\n }\n if (index < group.items.length - 1) {\n next = { ...group.items[index + 1] };\n }\n else {\n if (groupIndex < this._provider.getNavigation().length - 1) {\n const nextGroup = this._provider.getNavigation()[groupIndex + 1];\n next = { ...nextGroup.items[0] };\n }\n }\n }\n });\n });\n return new GetPreviousNextPageNavigationResponse(previous, next);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tZm9vdGVyL2RvbWFpbi9nZXQtcHJldmlvdXMtbmV4dC1wYWdlLW5hdmlnYXRpb24vZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFJckcsTUFBTSxPQUFPLG9DQUFvQztJQUdyQztJQURWLFlBQ1UsU0FBNkI7UUFBN0IsY0FBUyxHQUFULFNBQVMsQ0FBb0I7SUFFdkMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUE2QztRQUN6RCxJQUFJLFFBQVEsR0FBb0MsU0FBUyxDQUFDO1FBQzFELElBQUksSUFBSSxHQUFvQyxTQUFTLENBQUM7UUFFdEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1lBQ25FLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQzFDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3RDLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNkLFFBQVEsR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBRSxLQUFLLEdBQUcsQ0FBQyxDQUFFLEVBQUUsQ0FBQztvQkFDN0MsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLElBQUksVUFBVSxHQUFHLENBQUMsRUFBRSxDQUFDOzRCQUNuQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxDQUFFLFVBQVUsR0FBRyxDQUFDLENBQUUsQ0FBQzs0QkFDdkUsUUFBUSxHQUFHLEVBQUUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFFLGFBQWEsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBRSxFQUFFLENBQUM7d0JBQzFFLENBQUM7b0JBQ0gsQ0FBQztvQkFDRCxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQzt3QkFDbkMsSUFBSSxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFFLEtBQUssR0FBRyxDQUFDLENBQUUsRUFBRSxDQUFDO29CQUN6QyxDQUFDO3lCQUFNLENBQUM7d0JBQ04sSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7NEJBQzNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUUsVUFBVSxHQUFHLENBQUMsQ0FBRSxDQUFDOzRCQUNuRSxJQUFJLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUUsQ0FBQyxDQUFFLEVBQUUsQ0FBQzt3QkFDckMsQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLHFDQUFxQyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QgfSBmcm9tICcuL2dldC1wcmV2aW91cy1uZXh0LXBhZ2UtbmF2aWdhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IEdldFByZXZpb3VzTmV4dFBhZ2VOYXZpZ2F0aW9uUmVzcG9uc2UgfSBmcm9tICcuL2dldC1wcmV2aW91cy1uZXh0LXBhZ2UtbmF2aWdhdGlvbi5yZXNwb25zZSc7XG5pbXBvcnQgeyBJTWFya2Rvd25Gb290ZXJMaW5rIH0gZnJvbSAnLi4vaS1tYXJrZG93bi1mb290ZXItbGluayc7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcyc7XG5cbmV4cG9ydCBjbGFzcyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvbkhhbmRsZXIge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3Byb3ZpZGVyOiBEb2N1bWVudGF0aW9uU3RvcmUsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QpOiBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlc3BvbnNlIHtcbiAgICBsZXQgcHJldmlvdXM6IElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbGV0IG5leHQ6IElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgICB0aGlzLl9wcm92aWRlci5nZXROYXZpZ2F0aW9uKCkuZm9yRWFjaCgoZ3JvdXAsIGdyb3VwSW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgKGdyb3VwLml0ZW1zIHx8IFtdKS5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICBpZiAoaXRlbS5saW5rID09PSByZXF1ZXN0LmN1cnJlbnRMaW5rKSB7XG4gICAgICAgICAgaWYgKGluZGV4ID4gMCkge1xuICAgICAgICAgICAgcHJldmlvdXMgPSB7IC4uLmdyb3VwLml0ZW1zWyBpbmRleCAtIDEgXSB9O1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoZ3JvdXBJbmRleCA+IDApIHtcbiAgICAgICAgICAgICAgY29uc3QgcHJldmlvdXNHcm91cCA9IHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKVsgZ3JvdXBJbmRleCAtIDEgXTtcbiAgICAgICAgICAgICAgcHJldmlvdXMgPSB7IC4uLnByZXZpb3VzR3JvdXAuaXRlbXNbIHByZXZpb3VzR3JvdXAuaXRlbXMubGVuZ3RoIC0gMSBdIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChpbmRleCA8IGdyb3VwLml0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIG5leHQgPSB7IC4uLmdyb3VwLml0ZW1zWyBpbmRleCArIDEgXSB9O1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoZ3JvdXBJbmRleCA8IHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKS5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG5leHRHcm91cCA9IHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKVsgZ3JvdXBJbmRleCArIDEgXTtcbiAgICAgICAgICAgICAgbmV4dCA9IHsgLi4ubmV4dEdyb3VwLml0ZW1zWyAwIF0gfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiBuZXcgR2V0UHJldmlvdXNOZXh0UGFnZU5hdmlnYXRpb25SZXNwb25zZShwcmV2aW91cywgbmV4dCk7XG4gIH1cbn1cbiJdfQ==","export class GetPreviousNextPageNavigationRequest {\n currentLink;\n constructor(currentLink) {\n this.currentLink = currentLink;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLnJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tZm9vdGVyL2RvbWFpbi9nZXQtcHJldmlvdXMtbmV4dC1wYWdlLW5hdmlnYXRpb24vZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLnJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLG9DQUFvQztJQUd0QztJQURULFlBQ1MsV0FBbUI7UUFBbkIsZ0JBQVcsR0FBWCxXQUFXLENBQVE7SUFDekIsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEdldFByZXZpb3VzTmV4dFBhZ2VOYXZpZ2F0aW9uUmVxdWVzdCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGN1cnJlbnRMaW5rOiBzdHJpbmcsXG4gICkge31cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class FooterNavigationButton {\n description;\n link;\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FooterNavigationButton, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FooterNavigationButton, isStandalone: true, selector: \"a[footer-navigation-button]\", inputs: { description: \"description\", link: \"link\" }, ngImport: i0, template: \"<span class=\\\"description\\\">{{ description }}</span>\\n<span class=\\\"page-title\\\">{{ link.text }}</span>\\n\", styles: [\":host{display:block;border:1px solid var(--divider-color);border-radius:2px;padding:12px 16px;flex:1;max-width:50%;min-width:260px;text-decoration:none!important;cursor:pointer;pointer-events:all}:host:hover{border-color:var(--dark-divider-color)}:host:active{border-color:var(--primary-1)}:host.next{margin-left:auto;text-align:right}:host .description{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);pointer-events:none}:host .page-title{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--primary-1);pointer-events:none}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FooterNavigationButton, decorators: [{\n type: Component,\n args: [{ selector: 'a[footer-navigation-button]', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: \"<span class=\\\"description\\\">{{ description }}</span>\\n<span class=\\\"page-title\\\">{{ link.text }}</span>\\n\", styles: [\":host{display:block;border:1px solid var(--divider-color);border-radius:2px;padding:12px 16px;flex:1;max-width:50%;min-width:260px;text-decoration:none!important;cursor:pointer;pointer-events:all}:host:hover{border-color:var(--dark-divider-color)}:host:active{border-color:var(--primary-1)}:host.next{margin-left:auto;text-align:right}:host .description{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);pointer-events:none}:host .page-title{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--primary-1);pointer-events:none}\\n\"] }]\n }], propDecorators: { description: [{\n type: Input,\n args: [{ required: true }]\n }], link: [{\n type: Input,\n args: [{ required: true }]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9mb290ZXItbmF2aWdhdGlvbi1idXR0b24vZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9mb290ZXItbmF2aWdhdGlvbi1idXR0b24vZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQUUsS0FBSyxHQUNqQixNQUFNLGVBQWUsQ0FBQzs7QUFVdkIsTUFBTSxPQUFPLHNCQUFzQjtJQUcxQixXQUFXLENBQXFCO0lBR2hDLElBQUksQ0FBdUI7dUdBTnZCLHNCQUFzQjsyRkFBdEIsc0JBQXNCLDZJQ2JuQywyR0FFQTs7MkZEV2Esc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLDZCQUE2QixtQkFHdEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJOzhCQUtULFdBQVc7c0JBRGpCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUlsQixJQUFJO3NCQURWLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSU1hcmtkb3duRm9vdGVyTGluayB9IGZyb20gJy4uL2RvbWFpbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FbZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb290ZXItbmF2aWdhdGlvbi1idXR0b24uaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9mb290ZXItbmF2aWdhdGlvbi1idXR0b24uc2NzcycgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEZvb3Rlck5hdmlnYXRpb25CdXR0b24ge1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBkZXNjcmlwdGlvbjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBsaW5rITogSU1hcmtkb3duRm9vdGVyTGluaztcbn1cbiIsIjxzcGFuIGNsYXNzPVwiZGVzY3JpcHRpb25cIj57eyBkZXNjcmlwdGlvbiB9fTwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwicGFnZS10aXRsZVwiPnt7IGxpbmsudGV4dCB9fTwvc3Bhbj5cbiJdfQ==","import { ChangeDetectionStrategy, Component, computed, HostListener, inject, } from '@angular/core';\nimport { distinctUntilChanged, map, startWith } from 'rxjs';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { GetPreviousNextPageNavigationHandler, GetPreviousNextPageNavigationRequest, } from './domain';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { DocumentationStore } from '../../../services';\nimport { HandleNavigationLinksHandler, HandleNavigationLinksRequest } from '../../../domain';\nimport { WINDOW } from '../../../../common';\nimport { FooterNavigationButton } from './footer-navigation-button';\nimport { filter } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownFooter {\n _provider = inject(DocumentationStore);\n _router = inject(Router);\n _activatedRoute = inject(ActivatedRoute);\n _window = inject(WINDOW);\n navigation = this._provider.getFooterNavigation();\n _url = toSignal(this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._router.url), distinctUntilChanged()), { initialValue: this._router.url });\n _currentLink = computed(() => {\n this._url();\n return this._activatedRoute.snapshot.url.map(s => s.path).join('/');\n }, ...(ngDevMode ? [{ debugName: \"_currentLink\" }] : []));\n _prefix = computed(() => {\n const url = this._url();\n const idx = url.lastIndexOf('/');\n return idx > 0 ? url.substring(0, idx) : '';\n }, ...(ngDevMode ? [{ debugName: \"_prefix\" }] : []));\n editLink = computed(() => {\n const nav = this.navigation;\n if (!nav.editLink?.pattern)\n return undefined;\n return nav.editLink.pattern + this._currentLink() + '.md';\n }, ...(ngDevMode ? [{ debugName: \"editLink\" }] : []));\n previousLink = computed(() => {\n const prevNext = new GetPreviousNextPageNavigationHandler(this._provider)\n .handle(new GetPreviousNextPageNavigationRequest(this._currentLink()));\n return this._normalizeLink(prevNext.previousLink);\n }, ...(ngDevMode ? [{ debugName: \"previousLink\" }] : []));\n nextLink = computed(() => {\n const prevNext = new GetPreviousNextPageNavigationHandler(this._provider)\n .handle(new GetPreviousNextPageNavigationRequest(this._currentLink()));\n return this._normalizeLink(prevNext.nextLink);\n }, ...(ngDevMode ? [{ debugName: \"nextLink\" }] : []));\n _normalizeLink(item) {\n if (!item?.link)\n return item;\n if (this._isExternal(item.link))\n return item;\n const prefix = this._prefix();\n const joined = (prefix ? `${prefix}/${item.link}` : item.link)\n .replace(/\\/{2,}/g, '/');\n return { ...item, link: joined.startsWith('/') ? joined : `/${joined}` };\n }\n _isExternal(href) {\n return /^(?:[a-z]+:)?\\/\\//i.test(href) || href.startsWith('www.');\n }\n _click(event) {\n new HandleNavigationLinksHandler().handle(new HandleNavigationLinksRequest(event, this._window, this._router));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownFooter, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: MarkdownFooter, isStandalone: true, selector: \"markdown-footer\", host: { listeners: { \"click\": \"_click($event)\" } }, ngImport: i0, template: \"@let eLink = editLink();\\n@let pLink = previousLink();\\n@let nLink = nextLink();\\n\\n@if (eLink) {\\n <a class=\\\"footer-edit-link\\\" [href]=\\\"eLink\\\">\\n <span class=\\\"edit-link-icon f-icon edit\\\"></span>\\n {{ navigation.editLink?.text || 'Edit this page on GitHub' }}\\n </a>\\n}\\n\\n@if (pLink || nLink) {\\n <nav class=\\\"footer-navigation\\\">\\n @if (pLink) {\\n <a footer-navigation-button\\n [href]=\\\"pLink.link\\\"\\n [description]=\\\"navigation.previous\\\"\\n [link]=\\\"pLink\\\">\\n </a>\\n }\\n @if (nLink) {\\n <a footer-navigation-button class=\\\"next\\\"\\n [href]=\\\"nLink.link\\\"\\n [description]=\\\"navigation.next\\\"\\n [link]=\\\"nLink\\\">\\n </a>\\n }\\n </nav>\\n}\\n\\n\", styles: [\":host{display:block;margin-top:64px}.footer-edit-link{display:flex;width:fit-content;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--primary-1);cursor:pointer;padding-bottom:18px}.footer-edit-link .edit-link-icon{margin-right:8px;width:14px;height:14px;color:inherit}.footer-edit-link:hover{color:var(--primary-2)}@media (min-width: 640px){.footer-edit-link{padding-bottom:14px}}.footer-navigation{border-top:1px solid var(--divider-color);padding-top:24px;display:flex;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:16px}\\n\"], dependencies: [{ kind: \"component\", type: FooterNavigationButton, selector: \"a[footer-navigation-button]\", inputs: [\"description\", \"link\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownFooter, decorators: [{\n type: Component,\n args: [{ selector: 'markdown-footer', changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n FooterNavigationButton,\n ], standalone: true, template: \"@let eLink = editLink();\\n@let pLink = previousLink();\\n@let nLink = nextLink();\\n\\n@if (eLink) {\\n <a class=\\\"footer-edit-link\\\" [href]=\\\"eLink\\\">\\n <span class=\\\"edit-link-icon f-icon edit\\\"></span>\\n {{ navigation.editLink?.text || 'Edit this page on GitHub' }}\\n </a>\\n}\\n\\n@if (pLink || nLink) {\\n <nav class=\\\"footer-navigation\\\">\\n @if (pLink) {\\n <a footer-navigation-button\\n [href]=\\\"pLink.link\\\"\\n [description]=\\\"navigation.previous\\\"\\n [link]=\\\"pLink\\\">\\n </a>\\n }\\n @if (nLink) {\\n <a footer-navigation-button class=\\\"next\\\"\\n [href]=\\\"nLink.link\\\"\\n [description]=\\\"navigation.next\\\"\\n [link]=\\\"nLink\\\">\\n </a>\\n }\\n </nav>\\n}\\n\\n\", styles: [\":host{display:block;margin-top:64px}.footer-edit-link{display:flex;width:fit-content;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--primary-1);cursor:pointer;padding-bottom:18px}.footer-edit-link .edit-link-icon{margin-right:8px;width:14px;height:14px;color:inherit}.footer-edit-link:hover{color:var(--primary-2)}@media (min-width: 640px){.footer-edit-link{padding-bottom:14px}}.footer-navigation{border-top:1px solid var(--divider-color);padding-top:24px;display:flex;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:16px}\\n\"] }]\n }], propDecorators: { _click: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tZm9vdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9tYXJrZG93bi1mb290ZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tZm9vdGVyL21hcmtkb3duLWZvb3Rlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLFFBQVEsRUFDbkIsWUFBWSxFQUNaLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQ0wsb0NBQW9DLEVBQ3BDLG9DQUFvQyxHQUVyQyxNQUFNLFVBQVUsQ0FBQztBQUNsQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLDRCQUE0QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0Is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QUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIGNvbXB1dGVkLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgR2V0UHJldmlvdXNOZXh0UGFnZU5hdmlnYXRpb25IYW5kbGVyLFxuICBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QsXG4gIElNYXJrZG93bkZvb3RlckxpbmssXG59IGZyb20gJy4vZG9tYWluJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRG9jdW1lbnRhdGlvblN0b3JlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgSGFuZGxlTmF2aWdhdGlvbkxpbmtzSGFuZGxlciwgSGFuZGxlTmF2aWdhdGlvbkxpbmtzUmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBXSU5ET1cgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgRm9vdGVyTmF2aWdhdGlvbkJ1dHRvbiB9IGZyb20gJy4vZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWFya2Rvd24tZm9vdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLWZvb3Rlci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFya2Rvd24tZm9vdGVyLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBGb290ZXJOYXZpZ2F0aW9uQnV0dG9uLFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBNYXJrZG93bkZvb3RlciB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcHJvdmlkZXIgPSBpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5hdmlnYXRpb24gPSB0aGlzLl9wcm92aWRlci5nZXRGb290ZXJOYXZpZ2F0aW9uKCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdXJsID0gdG9TaWduYWwodGhpcy5fcm91dGVyLmV2ZW50cy5waXBlKFxuICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICBmaWx0ZXIoKGUpOiBlIGlzIE5hdmlnYXRpb25FbmQgfCBudWxsID0+IGUgPT09IG51bGwgfHwgZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxuICAgIG1hcCgoKSA9PiB0aGlzLl9yb3V0ZXIudXJsKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICApLCB7IGluaXRpYWxWYWx1ZTogdGhpcy5fcm91dGVyLnVybCB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jdXJyZW50TGluayA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICB0aGlzLl91cmwoKTtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZhdGVkUm91dGUuc25hcHNob3QudXJsLm1hcChzID0+IHMucGF0aCkuam9pbignLycpO1xuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9wcmVmaXggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5fdXJsKCk7XG4gICAgY29uc3QgaWR4ID0gdXJsLmxhc3RJbmRleE9mKCcvJyk7XG4gICAgcmV0dXJuIGlkeCA+IDAgPyB1cmwuc3Vic3RyaW5nKDAsIGlkeCkgOiAnJztcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVkaXRMaW5rID0gY29tcHV0ZWQ8c3RyaW5nIHwgdW5kZWZpbmVkPigoKSA9PiB7XG4gICAgY29uc3QgbmF2ID0gdGhpcy5uYXZpZ2F0aW9uO1xuICAgIGlmICghbmF2LmVkaXRMaW5rPy5wYXR0ZXJuKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBuYXYuZWRpdExpbmsucGF0dGVybiArIHRoaXMuX2N1cnJlbnRMaW5rKCkgKyAnLm1kJztcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHByZXZpb3VzTGluayA9IGNvbXB1dGVkPElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBwcmV2TmV4dCA9IG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvbkhhbmRsZXIodGhpcy5fcHJvdmlkZXIpXG4gICAgICAuaGFuZGxlKG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QodGhpcy5fY3VycmVudExpbmsoKSkpO1xuICAgIHJldHVybiB0aGlzLl9ub3JtYWxpemVMaW5rKHByZXZOZXh0LnByZXZpb3VzTGluayk7XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBuZXh0TGluayA9IGNvbXB1dGVkPElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBwcmV2TmV4dCA9IG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvbkhhbmRsZXIodGhpcy5fcHJvdmlkZXIpXG4gICAgICAuaGFuZGxlKG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QodGhpcy5fY3VycmVudExpbmsoKSkpO1xuICAgIHJldHVybiB0aGlzLl9ub3JtYWxpemVMaW5rKHByZXZOZXh0Lm5leHRMaW5rKTtcbiAgfSk7XG5cbiAgcHJpdmF0ZSBfbm9ybWFsaXplTGluayhpdGVtPzogSU1hcmtkb3duRm9vdGVyTGluayk6IElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQge1xuICAgIGlmICghaXRlbT8ubGluaykgcmV0dXJuIGl0ZW07XG4gICAgaWYgKHRoaXMuX2lzRXh0ZXJuYWwoaXRlbS5saW5rKSkgcmV0dXJuIGl0ZW07XG5cbiAgICBjb25zdCBwcmVmaXggPSB0aGlzLl9wcmVmaXgoKTtcbiAgICBjb25zdCBqb2luZWQgPSAocHJlZml4ID8gYCR7cHJlZml4fS8ke2l0ZW0ubGlua31gIDogaXRlbS5saW5rKVxuICAgICAgLnJlcGxhY2UoL1xcL3syLH0vZywgJy8nKTtcblxuICAgIHJldHVybiB7IC4uLml0ZW0sIGxpbms6IGpvaW5lZC5zdGFydHNXaXRoKCcvJykgPyBqb2luZWQgOiBgLyR7am9pbmVkfWAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzRXh0ZXJuYWwoaHJlZjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIC9eKD86W2Etel0rOik/XFwvXFwvL2kudGVzdChocmVmKSB8fCBocmVmLnN0YXJ0c1dpdGgoJ3d3dy4nKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgcHJpdmF0ZSBfY2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBuZXcgSGFuZGxlTmF2aWdhdGlvbkxpbmtzSGFuZGxlcigpLmhhbmRsZShcbiAgICAgIG5ldyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NSZXF1ZXN0KGV2ZW50LCB0aGlzLl93aW5kb3csIHRoaXMuX3JvdXRlciksXG4gICAgKTtcbiAgfVxufVxuIiwiQGxldCBlTGluayA9IGVkaXRMaW5rKCk7XG5AbGV0IHBMaW5rID0gcHJldmlvdXNMaW5rKCk7XG5AbGV0IG5MaW5rID0gbmV4dExpbmsoKTtcblxuQGlmIChlTGluaykge1xuICA8YSBjbGFzcz1cImZvb3Rlci1lZGl0LWxpbmtcIiBbaHJlZl09XCJlTGlua1wiPlxuICAgIDxzcGFuIGNsYXNzPVwiZWRpdC1saW5rLWljb24gZi1pY29uIGVkaXRcIj48L3NwYW4+XG4gICAge3sgbmF2aWdhdGlvbi5lZGl0TGluaz8udGV4dCB8fCAnRWRpdCB0aGlzIHBhZ2Ugb24gR2l0SHViJyB9fVxuICA8L2E+XG59XG5cbkBpZiAocExpbmsgfHwgbkxpbmspIHtcbiAgPG5hdiBjbGFzcz1cImZvb3Rlci1uYXZpZ2F0aW9uXCI+XG4gICAgQGlmIChwTGluaykge1xuICAgICAgPGEgZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uXG4gICAgICAgICBbaHJlZl09XCJwTGluay5saW5rXCJcbiAgICAgICAgIFtkZXNjcmlwdGlvbl09XCJuYXZpZ2F0aW9uLnByZXZpb3VzXCJcbiAgICAgICAgIFtsaW5rXT1cInBMaW5rXCI+XG4gICAgICA8L2E+XG4gICAgfVxuICAgIEBpZiAobkxpbmspIHtcbiAgICAgIDxhIGZvb3Rlci1uYXZpZ2F0aW9uLWJ1dHRvbiBjbGFzcz1cIm5leHRcIlxuICAgICAgICAgW2hyZWZdPVwibkxpbmsubGlua1wiXG4gICAgICAgICBbZGVzY3JpcHRpb25dPVwibmF2aWdhdGlvbi5uZXh0XCJcbiAgICAgICAgIFtsaW5rXT1cIm5MaW5rXCI+XG4gICAgICA8L2E+XG4gICAgfVxuICA8L25hdj5cbn1cblxuIl19","export var EMarkdownContainerType;\n(function (EMarkdownContainerType) {\n EMarkdownContainerType[\"CODE_GROUP\"] = \"code-group\";\n EMarkdownContainerType[\"EXAMPLE_GROUP\"] = \"ng-component\";\n EMarkdownContainerType[\"PREVIEW_GROUP\"] = \"preview-group\";\n EMarkdownContainerType[\"SHOWCASE\"] = \"showcase\";\n EMarkdownContainerType[\"ALERT_TIP\"] = \"tip\";\n EMarkdownContainerType[\"ALERT_INFO\"] = \"info\";\n EMarkdownContainerType[\"ALERT_WARNING\"] = \"warning\";\n EMarkdownContainerType[\"ALERT_DANGER\"] = \"danger\";\n EMarkdownContainerType[\"ALERT_SUCCESS\"] = \"success\";\n})(EMarkdownContainerType || (EMarkdownContainerType = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1tYXJrZG93bi1jb250YWluZXItdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9kb21haW4vZS1tYXJrZG93bi1jb250YWluZXItdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxzQkFtQlg7QUFuQkQsV0FBWSxzQkFBc0I7SUFFaEMsbURBQXlCLENBQUE7SUFFekIsd0RBQThCLENBQUE7SUFFOUIseURBQStCLENBQUE7SUFFL0IsK0NBQXFCLENBQUE7SUFFckIsMkNBQWlCLENBQUE7SUFFakIsNkNBQW1CLENBQUE7SUFFbkIsbURBQXlCLENBQUE7SUFFekIsaURBQXVCLENBQUE7SUFFdkIsbURBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQW5CVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBbUJqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEVNYXJrZG93bkNvbnRhaW5lclR5cGUge1xuXG4gIENPREVfR1JPVVAgPSAnY29kZS1ncm91cCcsXG5cbiAgRVhBTVBMRV9HUk9VUCA9ICduZy1jb21wb25lbnQnLFxuXG4gIFBSRVZJRVdfR1JPVVAgPSAncHJldmlldy1ncm91cCcsXG5cbiAgU0hPV0NBU0UgPSAnc2hvd2Nhc2UnLFxuXG4gIEFMRVJUX1RJUCA9ICd0aXAnLFxuXG4gIEFMRVJUX0lORk8gPSAnaW5mbycsXG5cbiAgQUxFUlRfV0FSTklORyA9ICd3YXJuaW5nJyxcblxuICBBTEVSVF9EQU5HRVIgPSAnZGFuZ2VyJyxcblxuICBBTEVSVF9TVUNDRVNTID0gJ3N1Y2Nlc3MnXG59XG4iXX0=","export var EParsedContainerType;\n(function (EParsedContainerType) {\n EParsedContainerType[\"CODE\"] = \"code\";\n EParsedContainerType[\"EXAMPLE\"] = \"ng-component\";\n})(EParsedContainerType || (EParsedContainerType = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1wYXJzZWQtY29udGFpbmVyLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvdXRpbHMvZG9tYWluL2UtcGFyc2VkLWNvbnRhaW5lci10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLG9CQUtYO0FBTEQsV0FBWSxvQkFBb0I7SUFFOUIscUNBQWEsQ0FBQTtJQUViLGdEQUF3QixDQUFBO0FBQzFCLENBQUMsRUFMVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBSy9CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRVBhcnNlZENvbnRhaW5lclR5cGUge1xuXG4gIENPREUgPSAnY29kZScsXG5cbiAgRVhBTVBMRSA9ICduZy1jb21wb25lbnQnLFxufVxuIl19","import { InjectionToken } from \"@angular/core\";\nexport const F_PREVIEW_NAVIGATION_PROVIDER = new InjectionToken('F_PREVIEW_NAVIGATION_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1wcmV2aWV3LW5hdmlnYXRpb24tc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9kb21haW4vaS1wcmV2aWV3LW5hdmlnYXRpb24tc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTy9DLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLElBQUksY0FBYyxDQUFxRCwrQkFBK0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSVByZXZpZXdOYXZpZ2F0aW9uR3JvdXAgfSBmcm9tIFwiLi9pLXByZXZpZXctbmF2aWdhdGlvbi1ncm91cFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQcmV2aWV3TmF2aWdhdGlvblNlcnZpY2U8VCBleHRlbmRzIElQcmV2aWV3TmF2aWdhdGlvbkdyb3VwPiB7XG4gIGdldE5hdmlnYXRpb24oKTogVFtdO1xufVxuXG5leHBvcnQgY29uc3QgRl9QUkVWSUVXX05BVklHQVRJT05fUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48SVByZXZpZXdOYXZpZ2F0aW9uU2VydmljZTxJUHJldmlld05hdmlnYXRpb25Hcm91cD4+KCdGX1BSRVZJRVdfTkFWSUdBVElPTl9QUk9WSURFUicpO1xuIl19","import { inject, Injectable } from '@angular/core';\nimport { of, switchMap } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport MarkdownIt from 'markdown-it';\nimport { EMarkdownContainerType, ParseAlerts, ParseAngularExampleWithCodeLinks, ParseGroupedCodeItems, ParsePreviewGroup, ParseShowcase, ParseSingleCodeItem, } from './index';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { catchError, take } from 'rxjs/operators';\nimport { Router } from '@angular/router';\nimport { F_PREVIEW_NAVIGATION_PROVIDER } from './domain';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownService {\n _markdown = new MarkdownIt({ html: true, linkify: true });\n _httpClient = inject(HttpClient);\n _domSanitizer = inject(DomSanitizer);\n _router = inject(Router);\n _provider = inject(F_PREVIEW_NAVIGATION_PROVIDER, { optional: true });\n constructor() {\n this._markdown\n .use((x) => new ParseSingleCodeItem().render(x))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_TIP, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_INFO, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_WARNING, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_DANGER, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_DANGER, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_SUCCESS, this._markdown))\n .use(...new ParseGroupedCodeItems().render())\n .use(...new ParsePreviewGroup(this._provider?.getNavigation() || []).render())\n .use(...new ParseShowcase().render())\n .use(...new ParseAngularExampleWithCodeLinks().render());\n }\n parseUrl(src) {\n return this._httpClient.get(src, { responseType: 'text' }).pipe(take(1), catchError(() => of(''))).pipe(switchMap((text) => of(this._markdown.render(text))), switchMap((x) => of(this._cleanupEmptyParagraphs(x))), switchMap((x) => of(this._cleanupWasteParagraphFromExampleView(x))), switchMap((x) => of(this._cleanupWasteParagraphFromPreviewGroup(x))), switchMap((x) => of(this._normalizeLinks(x))), switchMap((x) => of(this._domSanitizer.bypassSecurityTrustHtml(x))));\n }\n parseText(value) {\n return of(this._markdown.render(value)).pipe(switchMap((x) => of(this._cleanupEmptyParagraphs(x))), switchMap((x) => of(this._cleanupWasteParagraphFromExampleView(x))), switchMap((x) => of(this._cleanupWasteParagraphFromPreviewGroup(x))), switchMap((x) => of(this._normalizeLinks(x))), switchMap((x) => of(this._domSanitizer.bypassSecurityTrustHtml(x))));\n }\n _normalizeLinks(html) {\n const currentPath = this._router.url;\n const prefix = currentPath.substring(0, currentPath.lastIndexOf('/'));\n return html.replace(/<a\\s+href=\"([^\"]*)\"/g, (match, href) => {\n if (!this._isExternalLink(href)) {\n let newHref = href.substring(0);\n if (!href.startsWith('./')) {\n newHref = href.startsWith('/') ? `${prefix}${href}` : `${prefix}/${href}`;\n }\n return `<a href=\"${newHref}\"`;\n }\n return match;\n });\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n _cleanupEmptyParagraphs(html) {\n return html.replace(/<p>\\s*<\\/p>/g, '');\n }\n _cleanupWasteParagraphFromExampleView(html) {\n return html.replace(/<div class=\"f-code-group-body\">\\s*<p>[^<]*<\\/p>/g, '<div class=\"f-code-group-body\">');\n }\n _cleanupWasteParagraphFromPreviewGroup(html) {\n return html.replace(/<p>(\\[[^\\]]+\\](\\s*\\[[^\\]]+\\])*)<\\/p>/g, '');\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownService, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9tYXJrZG93bi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLFVBQVUsTUFBTSxhQUFhLENBQUM7QUFFckMsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixXQUFXLEVBQ1gsZ0NBQWdDLEVBQ2hDLHFCQUFxQixFQUNyQixpQkFBaUIsRUFBRSxhQUFhLEVBQ2hDLG1CQUFtQixHQUNwQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsWUFBWSxFQUFZLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUd6RCxNQUFNLE9BQU8sZUFBZTtJQUVULFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUQsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxhQUFhLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3JDLE9BQU8sR0FBRyxNQUFN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ZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IE1hcmtkb3duSXQgZnJvbSAnbWFya2Rvd24taXQnO1xuXG5pbXBvcnQge1xuICBFTWFya2Rvd25Db250YWluZXJUeXBlLFxuICBQYXJzZUFsZXJ0cyxcbiAgUGFyc2VBbmd1bGFyRXhhbXBsZVdpdGhDb2RlTGlua3MsXG4gIFBhcnNlR3JvdXBlZENvZGVJdGVtcyxcbiAgUGFyc2VQcmV2aWV3R3JvdXAsIFBhcnNlU2hvd2Nhc2UsXG4gIFBhcnNlU2luZ2xlQ29kZUl0ZW0sXG59IGZyb20gJy4vaW5kZXgnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGX1BSRVZJRVdfTkFWSUdBVElPTl9QUk9WSURFUiB9IGZyb20gJy4vZG9tYWluJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcmtkb3duU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWFya2Rvd24gPSBuZXcgTWFya2Rvd25JdCh7IGh0bWw6IHRydWUsIGxpbmtpZnk6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2h0dHBDbGllbnQgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvbVNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcHJvdmlkZXIgPSBpbmplY3QoRl9QUkVWSUVXX05BVklHQVRJT05fUFJPVklERVIsIHtvcHRpb25hbDogdHJ1ZX0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX21hcmtkb3duXG4gICAgICAudXNlKCh4KSA9PiBuZXcgUGFyc2VTaW5nbGVDb2RlSXRlbSgpLnJlbmRlcih4KSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfVElQLCB0aGlzLl9tYXJrZG93bikpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFsZXJ0cygpLnJlbmRlcihFTWFya2Rvd25Db250YWluZXJUeXBlLkFMRVJUX0lORk8sIHRoaXMuX21hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfV0FSTklORywgdGhpcy5fbWFya2Rvd24pKVxuICAgICAgLnVzZSguLi5uZXcgUGFyc2VBbGVydHMoKS5yZW5kZXIoRU1hcmtkb3duQ29udGFpbmVyVHlwZS5BTEVSVF9EQU5HRVIsIHRoaXMuX21hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfREFOR0VSLCB0aGlzLl9tYXJrZG93bikpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFsZXJ0cygpLnJlbmRlcihFTWFya2Rvd25Db250YWluZXJUeXBlLkFMRVJUX1NVQ0NFU1MsIHRoaXMuX21hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlR3JvdXBlZENvZGVJdGVtcygpLnJlbmRlcigpKVxuICAgICAgLnVzZSguLi5uZXcgUGFyc2VQcmV2aWV3R3JvdXAodGhpcy5fcHJvdmlkZXI/LmdldE5hdmlnYXRpb24oKSB8fCBbXSkucmVuZGVyKCkpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZVNob3djYXNlKCkucmVuZGVyKCkpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFuZ3VsYXJFeGFtcGxlV2l0aENvZGVMaW5rcygpLnJlbmRlcigpKTtcbiAgfVxuXG4gIHB1YmxpYyBwYXJzZVVybChzcmM6IHN0cmluZyk6IE9ic2VydmFibGU8U2FmZUh0bWw+IHtcbiAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5nZXQoc3JjLCB7IHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pLnBpcGUodGFrZSgxKSwgY2F0Y2hFcnJvcigoKSA9PiBvZignJykpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh0ZXh0KSA9PiBvZih0aGlzLl9tYXJrZG93bi5yZW5kZXIodGV4dCkpKSxcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4gb2YodGhpcy5fY2xlYW51cEVtcHR5UGFyYWdyYXBocyh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9jbGVhbnVwV2FzdGVQYXJhZ3JhcGhGcm9tRXhhbXBsZVZpZXcoeCkpKSxcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4gb2YodGhpcy5fY2xlYW51cFdhc3RlUGFyYWdyYXBoRnJvbVByZXZpZXdHcm91cCh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9ub3JtYWxpemVMaW5rcyh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoeCkpKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHBhcnNlVGV4dCh2YWx1ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxTYWZlSHRtbD4ge1xuICAgIHJldHVybiBvZih0aGlzLl9tYXJrZG93bi5yZW5kZXIodmFsdWUpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9jbGVhbnVwRW1wdHlQYXJhZ3JhcGhzKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuX2NsZWFudXBXYXN0ZVBhcmFncmFwaEZyb21FeGFtcGxlVmlldyh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9jbGVhbnVwV2FzdGVQYXJhZ3JhcGhGcm9tUHJldmlld0dyb3VwKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuX25vcm1hbGl6ZUxpbmtzKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuX2RvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh4KSkpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9ub3JtYWxpemVMaW5rcyhodG1sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gdGhpcy5fcm91dGVyLnVybDtcbiAgICBjb25zdCBwcmVmaXggPSBjdXJyZW50UGF0aC5zdWJzdHJpbmcoMCwgY3VycmVudFBhdGgubGFzdEluZGV4T2YoJy8nKSk7XG5cbiAgICByZXR1cm4gaHRtbC5yZXBsYWNlKC88YVxccytocmVmPVwiKFteXCJdKilcIi9nLCAobWF0Y2gsIGhyZWYpID0+IHtcbiAgICAgIGlmICghdGhpcy5faXNFeHRlcm5hbExpbmsoaHJlZikpIHtcbiAgICAgICAgbGV0IG5ld0hyZWYgPSBocmVmLnN1YnN0cmluZygwKTtcbiAgICAgICAgaWYgKCFocmVmLnN0YXJ0c1dpdGgoJy4vJykpIHtcbiAgICAgICAgICBuZXdIcmVmID0gaHJlZi5zdGFydHNXaXRoKCcvJykgPyBgJHtwcmVmaXh9JHtocmVmfWAgOiBgJHtwcmVmaXh9LyR7aHJlZn1gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgPGEgaHJlZj1cIiR7bmV3SHJlZn1cImA7XG4gICAgICB9XG4gICAgICByZXR1cm4gbWF0Y2g7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9pc0V4dGVybmFsTGluayhocmVmOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaHJlZi5zdGFydHNXaXRoKCd3d3cnKSB8fCBocmVmLnN0YXJ0c1dpdGgoJ2h0dHAnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NsZWFudXBFbXB0eVBhcmFncmFwaHMoaHRtbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaHRtbC5yZXBsYWNlKC88cD5cXHMqPFxcL3A+L2csICcnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NsZWFudXBXYXN0ZVBhcmFncmFwaEZyb21FeGFtcGxlVmlldyhodG1sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBodG1sLnJlcGxhY2UoLzxkaXYgY2xhc3M9XCJmLWNvZGUtZ3JvdXAtYm9keVwiPlxccyo8cD5bXjxdKjxcXC9wPi9nLCAnPGRpdiBjbGFzcz1cImYtY29kZS1ncm91cC1ib2R5XCI+Jyk7XG4gIH1cblxuICBwcml2YXRlIF9jbGVhbnVwV2FzdGVQYXJhZ3JhcGhGcm9tUHJldmlld0dyb3VwKGh0bWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGh0bWwucmVwbGFjZSgvPHA+KFxcW1teXFxdXStcXF0oXFxzKlxcW1teXFxdXStcXF0pKik8XFwvcD4vZywgJycpO1xuICB9XG59XG5cbiJdfQ==","export function getContent(tokens, index, eContainerType) {\n let result;\n for (let i = index + 1; i < tokens.length; i++) {\n if (tokens[i].type === `container_${eContainerType}_close`) {\n break;\n }\n if (isInlineToken(tokens[i])) {\n result = tokens[i].content;\n break;\n }\n }\n return result;\n}\nfunction isInlineToken(token) {\n return token.type === 'inline' && !token.tag;\n}\nexport function encodeDataAttr(data) {\n return JSON.stringify(data).replace(/\"/g, '&quot;');\n}\nexport function isOpeningToken(token) {\n return token.nesting === 1;\n}\nexport function isClosingToken(token) {\n return token.nesting === -1;\n}\nexport function parseFileLinkLine(line) {\n const match = line.match(/\\[(.+?)\\] <<< (.+)/);\n return match ? { fileName: match[1], url: match[2] } : null;\n}\nexport function parseSingleBracketText(line) {\n const match = line.match(/\\[(.+?)\\]/);\n return match ? match[1] : null;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLFVBQVUsQ0FBQyxNQUEwQixFQUFFLEtBQWEsRUFBRSxjQUFzQjtJQUMxRixJQUFJLE1BQTBCLENBQUM7SUFFL0IsS0FBSyxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDL0MsSUFBSSxNQUFNLENBQUUsQ0FBQyxDQUFFLENBQUMsSUFBSSxLQUFLLGFBQWMsY0FBZSxRQUFRLEVBQUUsQ0FBQztZQUMvRCxNQUFNO1FBQ1IsQ0FBQztRQUNELElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxHQUFHLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxPQUFPLENBQUM7WUFDN0IsTUFBTTtRQUNSLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEtBQXVCO0lBQzVDLE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLElBQWE7SUFDMUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDdEQsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsS0FBdUI7SUFDcEQsT0FBTyxLQUFLLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQztBQUM3QixDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUF1QjtJQUNwRCxPQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxJQUFZO0lBQzVDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUMvQyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQzlELENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsSUFBWTtJQUNqRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1hcmtkb3duSXRUb2tlbiB9IGZyb20gJy4vZG9tYWluJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbnRlbnQodG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIsIGVDb250YWluZXJUeXBlOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBsZXQgcmVzdWx0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgZm9yIChsZXQgaSA9IGluZGV4ICsgMTsgaSA8IHRva2Vucy5sZW5ndGg7IGkrKykge1xuICAgIGlmICh0b2tlbnNbIGkgXS50eXBlID09PSBgY29udGFpbmVyXyR7IGVDb250YWluZXJUeXBlIH1fY2xvc2VgKSB7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgaWYgKGlzSW5saW5lVG9rZW4odG9rZW5zWyBpIF0pKSB7XG4gICAgICByZXN1bHQgPSB0b2tlbnNbIGkgXS5jb250ZW50O1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIGlzSW5saW5lVG9rZW4odG9rZW46IElNYXJrZG93bkl0VG9rZW4pOiBib29sZWFuIHtcbiAgcmV0dXJuIHRva2VuLnR5cGUgPT09ICdpbmxpbmUnICYmICF0b2tlbi50YWc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVEYXRhQXR0cihkYXRhOiB1bmtub3duKTogc3RyaW5nIHtcbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGRhdGEpLnJlcGxhY2UoL1wiL2csICcmcXVvdDsnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzT3BlbmluZ1Rva2VuKHRva2VuOiBJTWFya2Rvd25JdFRva2VuKTogYm9vbGVhbiB7XG4gIHJldHVybiB0b2tlbi5uZXN0aW5nID09PSAxO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNDbG9zaW5nVG9rZW4odG9rZW46IElNYXJrZG93bkl0VG9rZW4pOiBib29sZWFuIHtcbiAgcmV0dXJuIHRva2VuLm5lc3RpbmcgPT09IC0xO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VGaWxlTGlua0xpbmUobGluZTogc3RyaW5nKTogeyBmaWxlTmFtZTogc3RyaW5nLCB1cmw6IHN0cmluZyB9IHwgbnVsbCB7XG4gIGNvbnN0IG1hdGNoID0gbGluZS5tYXRjaCgvXFxbKC4rPylcXF0gPDw8ICguKykvKTtcbiAgcmV0dXJuIG1hdGNoID8geyBmaWxlTmFtZTogbWF0Y2hbMV0sIHVybDogbWF0Y2hbMl0gfSA6IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVNpbmdsZUJyYWNrZXRUZXh0KGxpbmU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCBtYXRjaCA9IGxpbmUubWF0Y2goL1xcWyguKz8pXFxdLyk7XG4gIHJldHVybiBtYXRjaCA/IG1hdGNoWzFdIDogbnVsbDtcbn1cbiJdfQ==","import container from 'markdown-it-container';\nimport { isOpeningToken } from './utils';\nexport class ParseAlerts {\n render(type, markdown) {\n return [container, type, {\n render: (tokens, index) => {\n const token = tokens[index];\n const info = token.info.trim().slice(type.length).trim();\n if (isOpeningToken(token)) {\n const title = markdown.renderInline(info);\n return `<div class=\"f-alert ${type}\"><p class=\"f-alert-title\">${title}</p>\\n`;\n }\n else {\n return `</div>\\n`;\n }\n },\n }];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtYWxlcnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL3V0aWxzL3BhcnNlLWFsZXJ0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSXpDLE1BQU0sT0FBTyxXQUFXO0lBRWYsTUFBTSxDQUFDLElBQVksRUFBRSxRQUFvQjtRQUM5QyxPQUFPLENBQUUsU0FBUyxFQUFFLElBQUksRUFBRTtnQkFDeEIsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFFLEtBQUssQ0FBRSxDQUFDO29CQUM5QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3pELElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7d0JBQzFCLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQzFDLE9BQU8sdUJBQXdCLElBQUssOEJBQStCLEtBQU0sUUFBUSxDQUFDO29CQUNwRixDQUFDO3lCQUFNLENBQUM7d0JBQ04sT0FBTyxVQUFVLENBQUM7b0JBQ3BCLENBQUM7Z0JBQ0gsQ0FBQzthQUNGLENBQUUsQ0FBQztJQUNOLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNYXJrZG93bkl0IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCBjb250YWluZXIgZnJvbSAnbWFya2Rvd24taXQtY29udGFpbmVyJztcbmltcG9ydCB7IElNYXJrZG93bkl0VG9rZW4gfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBpc09wZW5pbmdUb2tlbiB9IGZyb20gJy4vdXRpbHMnO1xuXG50eXBlIENvbnRhaW5lckFyZ3MgPSBbIHR5cGVvZiBjb250YWluZXIsIHN0cmluZywgeyByZW5kZXI6IGFueSB9IF1cblxuZXhwb3J0IGNsYXNzIFBhcnNlQWxlcnRzIHtcblxuICBwdWJsaWMgcmVuZGVyKHR5cGU6IHN0cmluZywgbWFya2Rvd246IE1hcmtkb3duSXQpOiBDb250YWluZXJBcmdzIHtcbiAgICByZXR1cm4gWyBjb250YWluZXIsIHR5cGUsIHtcbiAgICAgIHJlbmRlcjogKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gdG9rZW5zWyBpbmRleCBdO1xuICAgICAgICBjb25zdCBpbmZvID0gdG9rZW4uaW5mby50cmltKCkuc2xpY2UodHlwZS5sZW5ndGgpLnRyaW0oKTtcbiAgICAgICAgaWYgKGlzT3BlbmluZ1Rva2VuKHRva2VuKSkge1xuICAgICAgICAgIGNvbnN0IHRpdGxlID0gbWFya2Rvd24ucmVuZGVySW5saW5lKGluZm8pO1xuICAgICAgICAgIHJldHVybiBgPGRpdiBjbGFzcz1cImYtYWxlcnQgJHsgdHlwZSB9XCI+PHAgY2xhc3M9XCJmLWFsZXJ0LXRpdGxlXCI+JHsgdGl0bGUgfTwvcD5cXG5gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBgPC9kaXY+XFxuYDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9IF07XG4gIH1cbn1cbiJdfQ==","import container from 'markdown-it-container';\nimport { EMarkdownContainerType } from './domain';\nimport { EParsedContainerType } from \"./domain\";\nimport { encodeDataAttr, isClosingToken, isOpeningToken } from './utils';\nconst F_CONTAINER_CLOSE_TAG = 'container_code-group_close';\nexport class ParseGroupedCodeItems {\n render() {\n return [container, EMarkdownContainerType.CODE_GROUP, {\n render: (tokens, index) => {\n if (isOpeningToken(tokens[index])) {\n return this._openingExampleGroupHTML(this._generateData(tokens, index));\n }\n return '</f-code-group>';\n },\n }];\n }\n _generateData(tokens, index) {\n const result = [];\n for (let i = index + 1; !this._isClosingToken(tokens, i); i++) {\n if (this._isCodeFenceToken(tokens[i])) {\n result.push({\n tab: this._getCodeBlockTitle(tokens[i].info),\n value: tokens[i].content,\n type: EParsedContainerType.CODE,\n isLink: false,\n height: 'auto',\n language: this._getCodeLanguage(tokens[i].info),\n });\n }\n }\n return result;\n }\n _isClosingToken(token, index) {\n return isClosingToken(token[index]) && token[index].type === F_CONTAINER_CLOSE_TAG;\n }\n _isCodeFenceToken(token) {\n return token.type === 'fence' && token.tag === 'code';\n }\n _openingExampleGroupHTML(data) {\n return `<f-code-group data-data=\"${encodeDataAttr(data)}\">`;\n }\n _getCodeBlockTitle(data) {\n return data.match(/\\[(.*)\\]/)?.[1] || this._getCodeLanguage(data) || 'txt';\n }\n _getCodeLanguage(data) {\n const match = data.trim().match(/^([a-zA-Z0-9_-]+)\\s*\\[.*\\]$/);\n return match ? match[1] : '';\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtZ3JvdXBlZC1jb2RlLWl0ZW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL3V0aWxzL3BhcnNlLWdyb3VwZWQtY29kZS1pdGVtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEQsT0FBTyxFQUFFLG9CQUFvQixFQUF3QixNQUFNLFVBQVUsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHekUsTUFBTSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUUzRCxNQUFNLE9BQU8scUJBQXFCO0lBRXpCLE1BQU07UUFDWCxPQUFPLENBQUMsU0FBUyxFQUFFLHNCQUFzQixDQUFDLFVBQVUsRUFBRTtnQkFDcEQsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDbEMsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztvQkFDMUUsQ0FBQztvQkFDRCxPQUFPLGlCQUFpQixDQUFDO2dCQUMzQixDQUFDO2FBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGFBQWEsQ0FBQyxNQUEwQixFQUFFLEtBQWE7UUFDN0QsTUFBTSxNQUFNLEdBQTJCLEVBQUUsQ0FBQztRQUUxQyxLQUFLLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzlELElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RDLE1BQU0sQ0FBQyxJQUFJLENBQUM7b0JBQ1YsR0FBRyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUM1QyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87b0JBQ3hCLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxJQUFJO29CQUMvQixNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsTUFBTTtvQkFDZCxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7aUJBQ2hELENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUF5QixFQUFFLEtBQWE7UUFDOUQsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyxxQkFBcUIsQ0FBQztJQUNyRixDQUFDO0lBRU8saUJBQWlCLENBQUMsS0FBdUI7UUFDL0MsT0FBTyxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQztJQUN4RCxDQUFDO0lBRU8sd0JBQXdCLENBQUMsSUFBNEI7UUFDM0QsT0FBTyw0QkFBNEIsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDOUQsQ0FBQztJQUVPLGtCQUFrQixDQUFDLElBQVk7UUFDckMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUM3RSxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsSUFBWTtRQUNuQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFDL0QsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQy9CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjb250YWluZXIgZnJvbSAnbWFya2Rvd24taXQtY29udGFpbmVyJztcbmltcG9ydCB7IEVNYXJrZG93bkNvbnRhaW5lclR5cGUgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBJTWFya2Rvd25JdFRva2VuIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgRVBhcnNlZENvbnRhaW5lclR5cGUsIElQYXJzZWRDb250YWluZXJEYXRhIH0gZnJvbSBcIi4vZG9tYWluXCI7XG5pbXBvcnQgeyBlbmNvZGVEYXRhQXR0ciwgaXNDbG9zaW5nVG9rZW4sIGlzT3BlbmluZ1Rva2VuIH0gZnJvbSAnLi91dGlscyc7XG5cbnR5cGUgQ29udGFpbmVyQXJncyA9IFt0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfV1cbmNvbnN0IEZfQ09OVEFJTkVSX0NMT1NFX1RBRyA9ICdjb250YWluZXJfY29kZS1ncm91cF9jbG9zZSc7XG5cbmV4cG9ydCBjbGFzcyBQYXJzZUdyb3VwZWRDb2RlSXRlbXMge1xuXG4gIHB1YmxpYyByZW5kZXIoKTogQ29udGFpbmVyQXJncyB7XG4gICAgcmV0dXJuIFtjb250YWluZXIsIEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQ09ERV9HUk9VUCwge1xuICAgICAgcmVuZGVyOiAodG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgaWYgKGlzT3BlbmluZ1Rva2VuKHRva2Vuc1tpbmRleF0pKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX29wZW5pbmdFeGFtcGxlR3JvdXBIVE1MKHRoaXMuX2dlbmVyYXRlRGF0YSh0b2tlbnMsIGluZGV4KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICc8L2YtY29kZS1ncm91cD4nO1xuICAgICAgfSxcbiAgICB9XTtcbiAgfVxuXG4gIHByaXZhdGUgX2dlbmVyYXRlRGF0YSh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcik6IElQYXJzZWRDb250YWluZXJEYXRhW10ge1xuICAgIGNvbnN0IHJlc3VsdDogSVBhcnNlZENvbnRhaW5lckRhdGFbXSA9IFtdO1xuXG4gICAgZm9yIChsZXQgaSA9IGluZGV4ICsgMTsgIXRoaXMuX2lzQ2xvc2luZ1Rva2VuKHRva2VucywgaSk7IGkrKykge1xuICAgICAgaWYgKHRoaXMuX2lzQ29kZUZlbmNlVG9rZW4odG9rZW5zW2ldKSkge1xuICAgICAgICByZXN1bHQucHVzaCh7XG4gICAgICAgICAgdGFiOiB0aGlzLl9nZXRDb2RlQmxvY2tUaXRsZSh0b2tlbnNbaV0uaW5mbyksXG4gICAgICAgICAgdmFsdWU6IHRva2Vuc1tpXS5jb250ZW50LFxuICAgICAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkNPREUsXG4gICAgICAgICAgaXNMaW5rOiBmYWxzZSxcbiAgICAgICAgICBoZWlnaHQ6ICdhdXRvJyxcbiAgICAgICAgICBsYW5ndWFnZTogdGhpcy5fZ2V0Q29kZUxhbmd1YWdlKHRva2Vuc1tpXS5pbmZvKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgX2lzQ2xvc2luZ1Rva2VuKHRva2VuOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNDbG9zaW5nVG9rZW4odG9rZW5baW5kZXhdKSAmJiB0b2tlbltpbmRleF0udHlwZSA9PT0gRl9DT05UQUlORVJfQ0xPU0VfVEFHO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNDb2RlRmVuY2VUb2tlbih0b2tlbjogSU1hcmtkb3duSXRUb2tlbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0b2tlbi50eXBlID09PSAnZmVuY2UnICYmIHRva2VuLnRhZyA9PT0gJ2NvZGUnO1xuICB9XG5cbiAgcHJpdmF0ZSBfb3BlbmluZ0V4YW1wbGVHcm91cEhUTUwoZGF0YTogSVBhcnNlZENvbnRhaW5lckRhdGFbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGA8Zi1jb2RlLWdyb3VwIGRhdGEtZGF0YT1cIiR7ZW5jb2RlRGF0YUF0dHIoZGF0YSl9XCI+YDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvZGVCbG9ja1RpdGxlKGRhdGE6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRhdGEubWF0Y2goL1xcWyguKilcXF0vKT8uWzFdIHx8IHRoaXMuX2dldENvZGVMYW5ndWFnZShkYXRhKSB8fCAndHh0JztcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvZGVMYW5ndWFnZShkYXRhOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IG1hdGNoID0gZGF0YS50cmltKCkubWF0Y2goL14oW2EtekEtWjAtOV8tXSspXFxzKlxcWy4qXFxdJC8pO1xuICAgIHJldHVybiBtYXRjaCA/IG1hdGNoWzFdIDogJyc7XG4gIH1cbn1cbiJdfQ==","import { EParsedContainerType } from './domain';\nimport { encodeDataAttr } from './utils';\nexport class ParseSingleCodeItem {\n render(markdown) {\n const fence = markdown.renderer.rules.fence;\n if (!fence) {\n throw new Error('Markdown renderer does not have a fence rule.');\n }\n markdown.renderer.rules.fence = (tokens, index) => {\n const data = this._getTokenData(tokens[index]);\n return (`<f-code-group data-data=\"${encodeDataAttr([this._createCodeData(data)])}\"></f-code-group>`);\n };\n }\n _getTokenData(token) {\n return { value: token.content, language: token.info };\n }\n _createCodeData({ value, language }) {\n return {\n tab: '',\n value,\n language,\n type: EParsedContainerType.CODE,\n };\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2Utc2luZ2xlLWNvZGUtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9wYXJzZS1zaW5nbGUtY29kZS1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxvQkFBb0IsRUFBd0IsTUFBTSxVQUFVLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV6QyxNQUFNLE9BQU8sbUJBQW1CO0lBRXZCLE1BQU0sQ0FBQyxRQUFvQjtRQUNoQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDNUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFFRCxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxNQUEwQixFQUFFLEtBQWEsRUFBRSxFQUFFO1lBQzVFLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDL0MsT0FBTyxDQUNMLDRCQUE0QixjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQzVGLENBQUM7UUFDSixDQUFDLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLEtBQXVCO1FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFTyxlQUFlLENBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFjO1FBQ3JELE9BQU87WUFDTCxHQUFHLEVBQUUsRUFBRTtZQUNQLEtBQUs7WUFDTCxRQUFRO1lBQ1IsSUFBSSxFQUFFLG9CQUFvQixDQUFDLElBQUk7U0FDaEMsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNYXJrZG93bkl0IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCB7IElNYXJrZG93bkl0VG9rZW4gfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBFUGFyc2VkQ29udGFpbmVyVHlwZSwgSVBhcnNlZENvbnRhaW5lckRhdGEgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBlbmNvZGVEYXRhQXR0ciB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgUGFyc2VTaW5nbGVDb2RlSXRlbSB7XG5cbiAgcHVibGljIHJlbmRlcihtYXJrZG93bjogTWFya2Rvd25JdCk6IHZvaWQge1xuICAgIGNvbnN0IGZlbmNlID0gbWFya2Rvd24ucmVuZGVyZXIucnVsZXMuZmVuY2U7XG4gICAgaWYgKCFmZW5jZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXJrZG93biByZW5kZXJlciBkb2VzIG5vdCBoYXZlIGEgZmVuY2UgcnVsZS4nKTtcbiAgICB9XG5cbiAgICBtYXJrZG93bi5yZW5kZXJlci5ydWxlcy5mZW5jZSA9ICh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuX2dldFRva2VuRGF0YSh0b2tlbnNbaW5kZXhdKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGA8Zi1jb2RlLWdyb3VwIGRhdGEtZGF0YT1cIiR7ZW5jb2RlRGF0YUF0dHIoW3RoaXMuX2NyZWF0ZUNvZGVEYXRhKGRhdGEpXSl9XCI+PC9mLWNvZGUtZ3JvdXA+YFxuICAgICAgKTtcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VG9rZW5EYXRhKHRva2VuOiBJTWFya2Rvd25JdFRva2VuKTogSVRva2VuRGF0YSB7XG4gICAgcmV0dXJuIHsgdmFsdWU6IHRva2VuLmNvbnRlbnQsIGxhbmd1YWdlOiB0b2tlbi5pbmZvIH07XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVDb2RlRGF0YSh7IHZhbHVlLCBsYW5ndWFnZSB9OiBJVG9rZW5EYXRhKTogSVBhcnNlZENvbnRhaW5lckRhdGEge1xuICAgIHJldHVybiB7XG4gICAgICB0YWI6ICcnLFxuICAgICAgdmFsdWUsXG4gICAgICBsYW5ndWFnZSxcbiAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkNPREUsXG4gICAgfTtcbiAgfVxufVxuXG5pbnRlcmZhY2UgSVRva2VuRGF0YSB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG59XG4iXX0=","import { EMarkdownContainerType } from './domain';\nimport container from 'markdown-it-container';\nimport { EParsedContainerType } from './domain';\nimport { encodeDataAttr, getContent, isOpeningToken, parseFileLinkLine } from './utils';\nexport class ParseAngularExampleWithCodeLinks {\n render() {\n return [container, EMarkdownContainerType.EXAMPLE_GROUP, {\n render: (tokens, index) => {\n return isOpeningToken(tokens[index]) ? this._opening(tokens, index) : '</f-code-group>';\n },\n }];\n }\n _opening(tokens, index) {\n const data = this._collectData(tokens, index);\n return `<f-code-group data-data=\"${encodeDataAttr(data)}\">`;\n }\n _collectData(tokens, index) {\n const result = [];\n const component = this._parseNgComponent(tokens[index]);\n const height = component?.height || 'auto';\n if (component) {\n result.push({\n tab: 'Example',\n value: component.tag,\n type: EParsedContainerType.EXAMPLE,\n height: component.height || 'auto',\n });\n }\n const content = getContent(tokens, index, EMarkdownContainerType.EXAMPLE_GROUP);\n const items = (content || '').split('\\n').map(parseFileLinkLine).filter(Boolean);\n items.forEach(({ fileName, url }) => result.push({\n tab: fileName,\n value: url,\n isLink: true,\n type: EParsedContainerType.CODE,\n height,\n }));\n return result;\n }\n _parseNgComponent(token) {\n const cleanedInput = token.info.replace(/ng-component\\s*/, '');\n const tagMatch = cleanedInput.match(/<([a-zA-Z0-9-]+)>.*<\\/\\1>/);\n const heightMatch = cleanedInput.match(/\\[height\\]=\"(\\d+)\"/);\n if (!tagMatch)\n return null;\n return {\n tag: tagMatch[0],\n height: heightMatch?.[1],\n };\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtYW5ndWxhci1leGFtcGxlLXdpdGgtY29kZS1saW5rcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9wYXJzZS1hbmd1bGFyLWV4YW1wbGUtd2l0aC1jb2RlLWxpbmtzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdsRCxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsb0JBQW9CLEVBQWdELE1BQU0sVUFBVSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUl4RixNQUFNLE9BQU8sZ0NBQWdDO0lBRXBDLE1BQU07UUFDWCxPQUFPLENBQUMsU0FBUyxFQUFFLHNCQUFzQixDQUFDLGFBQWEsRUFBRTtnQkFDdkQsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDMUYsQ0FBQzthQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxRQUFRLENBQUMsTUFBMEIsRUFBRSxLQUFhO1FBQ3hELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlDLE9BQU8sNEJBQTRCLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzlELENBQUM7SUFFTyxZQUFZLENBQUMsTUFBMEIsRUFBRSxLQUFhO1FBQzVELE1BQU0sTUFBTSxHQUEyQixFQUFFLENBQUM7UUFFMUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sTUFBTSxHQUFHLFNBQVMsRUFBRSxNQUFNLElBQUksTUFBTSxDQUFDO1FBQzNDLElBQUksU0FBUyxFQUFFLENBQUM7WUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLEdBQUcsRUFBRSxTQUFTO2dCQUNkLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRztnQkFDcEIsSUFBSSxFQUFFLG9CQUFvQixDQUFDLE9BQU87Z0JBQ2xDLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxJQUFJLE1BQU07YUFDbkMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hGLE1BQU0sS0FBSyxHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUc1RSxDQUFDO1FBQ0osS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQy9DLEdBQUcsRUFBRSxRQUFRO1lBQ2IsS0FBSyxFQUFFLEdBQUc7WUFDVixNQUFNLEVBQUUsSUFBSTtZQUNaLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxJQUFJO1lBQy9CLE1BQU07U0FDUCxDQUFDLENBQUMsQ0FBQztRQUVKLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUF1QjtRQUMvQyxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMvRCxNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDakUsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRTdELElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFM0IsT0FBTztZQUNMLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ2hCLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDekIsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVNYXJrZG93bkNvbnRhaW5lclR5cGUgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBJTWFya2Rvd25JdFRva2VuIH0gZnJvbSAnLi9kb21haW4nO1xuXG5pbXBvcnQgY29udGFpbmVyIGZyb20gJ21hcmtkb3duLWl0LWNvbnRhaW5lcic7XG5pbXBvcnQgeyBFUGFyc2VkQ29udGFpbmVyVHlwZSwgSU1hcmtkb3duQ29udGFpbmVyRGF0YSwgSVBhcnNlZENvbnRhaW5lckRhdGEgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBlbmNvZGVEYXRhQXR0ciwgZ2V0Q29udGVudCwgaXNPcGVuaW5nVG9rZW4sIHBhcnNlRmlsZUxpbmtMaW5lIH0gZnJvbSAnLi91dGlscyc7XG5cbnR5cGUgQ29udGFpbmVyQXJncyA9IFt0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfV07XG5cbmV4cG9ydCBjbGFzcyBQYXJzZUFuZ3VsYXJFeGFtcGxlV2l0aENvZGVMaW5rcyB7XG5cbiAgcHVibGljIHJlbmRlcigpOiBDb250YWluZXJBcmdzIHtcbiAgICByZXR1cm4gW2NvbnRhaW5lciwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5FWEFNUExFX0dST1VQLCB7XG4gICAgICByZW5kZXI6ICh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICByZXR1cm4gaXNPcGVuaW5nVG9rZW4odG9rZW5zW2luZGV4XSkgPyB0aGlzLl9vcGVuaW5nKHRva2VucywgaW5kZXgpIDogJzwvZi1jb2RlLWdyb3VwPic7XG4gICAgICB9LFxuICAgIH1dO1xuICB9XG5cbiAgcHJpdmF0ZSBfb3BlbmluZyh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuX2NvbGxlY3REYXRhKHRva2VucywgaW5kZXgpO1xuICAgIHJldHVybiBgPGYtY29kZS1ncm91cCBkYXRhLWRhdGE9XCIke2VuY29kZURhdGFBdHRyKGRhdGEpfVwiPmA7XG4gIH1cblxuICBwcml2YXRlIF9jb2xsZWN0RGF0YSh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcik6IElQYXJzZWRDb250YWluZXJEYXRhW10ge1xuICAgIGNvbnN0IHJlc3VsdDogSVBhcnNlZENvbnRhaW5lckRhdGFbXSA9IFtdO1xuXG4gICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5fcGFyc2VOZ0NvbXBvbmVudCh0b2tlbnNbaW5kZXhdKTtcbiAgICBjb25zdCBoZWlnaHQgPSBjb21wb25lbnQ/LmhlaWdodCB8fCAnYXV0byc7XG4gICAgaWYgKGNvbXBvbmVudCkge1xuICAgICAgcmVzdWx0LnB1c2goe1xuICAgICAgICB0YWI6ICdFeGFtcGxlJyxcbiAgICAgICAgdmFsdWU6IGNvbXBvbmVudC50YWcsXG4gICAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkVYQU1QTEUsXG4gICAgICAgIGhlaWdodDogY29tcG9uZW50LmhlaWdodCB8fCAnYXV0bycsXG4gICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgY29udGVudCA9IGdldENvbnRlbnQodG9rZW5zLCBpbmRleCwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5FWEFNUExFX0dST1VQKTtcbiAgICBjb25zdCBpdGVtcyA9IChjb250ZW50IHx8ICcnKS5zcGxpdCgnXFxuJykubWFwKHBhcnNlRmlsZUxpbmtMaW5lKS5maWx0ZXIoQm9vbGVhbikgYXMge1xuICAgICAgZmlsZU5hbWU6IHN0cmluZyxcbiAgICAgIHVybDogc3RyaW5nXG4gICAgfVtdO1xuICAgIGl0ZW1zLmZvckVhY2goKHsgZmlsZU5hbWUsIHVybCB9KSA9PiByZXN1bHQucHVzaCh7XG4gICAgICB0YWI6IGZpbGVOYW1lLFxuICAgICAgdmFsdWU6IHVybCxcbiAgICAgIGlzTGluazogdHJ1ZSxcbiAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkNPREUsXG4gICAgICBoZWlnaHQsXG4gICAgfSkpO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcnNlTmdDb21wb25lbnQodG9rZW46IElNYXJrZG93bkl0VG9rZW4pOiBJTWFya2Rvd25Db250YWluZXJEYXRhIHwgbnVsbCB7XG4gICAgY29uc3QgY2xlYW5lZElucHV0ID0gdG9rZW4uaW5mby5yZXBsYWNlKC9uZy1jb21wb25lbnRcXHMqLywgJycpO1xuICAgIGNvbnN0IHRhZ01hdGNoID0gY2xlYW5lZElucHV0Lm1hdGNoKC88KFthLXpBLVowLTktXSspPi4qPFxcL1xcMT4vKTtcbiAgICBjb25zdCBoZWlnaHRNYXRjaCA9IGNsZWFuZWRJbnB1dC5tYXRjaCgvXFxbaGVpZ2h0XFxdPVwiKFxcZCspXCIvKTtcblxuICAgIGlmICghdGFnTWF0Y2gpIHJldHVybiBudWxsO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHRhZzogdGFnTWF0Y2hbMF0sXG4gICAgICBoZWlnaHQ6IGhlaWdodE1hdGNoPy5bMV0sXG4gICAgfTtcbiAgfVxufVxuIl19","import { EMarkdownContainerType } from './domain';\nimport container from 'markdown-it-container';\nimport { getContent, isOpeningToken, parseSingleBracketText } from './utils';\nexport class ParsePreviewGroup {\n _navigation;\n constructor(_navigation) {\n this._navigation = _navigation;\n }\n render() {\n return [container, EMarkdownContainerType.PREVIEW_GROUP, {\n render: (tokens, index) => {\n if (isOpeningToken(tokens[index])) {\n return this._getGroupsHTML(this._generateData(tokens, index));\n }\n return '';\n },\n }];\n }\n _generateData(tokens, index) {\n const groups = [];\n this._parseData(getContent(tokens, index, EMarkdownContainerType.PREVIEW_GROUP) || '').forEach((x) => {\n const group = this._navigation.find((g) => g.text === x || g.id === x);\n if (group) {\n groups.push(group);\n }\n });\n return groups;\n }\n _parseData(data) {\n return data.split('\\n').map(parseSingleBracketText).filter(Boolean);\n }\n _getGroupsHTML(groups) {\n const result = (groups || []).map((x) => {\n return `<h2>${x.text}</h2><div class=\"f-preview-group\">${this._getItemsHTML(x)}</div>`;\n }).join('');\n return this._getGroupFiltersHTML() + result;\n }\n _getGroupFiltersHTML() {\n return `<f-preview-group-filters></f-preview-group-filters>`;\n }\n _getItemsHTML(group) {\n return group.items.map((item) => {\n return `<f-preview data-group=\"${group.text}\" data-item=\"${item.link}\"></f-preview>`;\n }).join('');\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtcHJldmlldy1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9wYXJzZS1wcmV2aWV3LWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBNkMsTUFBTSxVQUFVLENBQUM7QUFFN0YsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFJN0UsTUFBTSxPQUFPLGlCQUFpQjtJQUdsQjtJQURWLFlBQ1UsV0FBc0M7UUFBdEMsZ0JBQVcsR0FBWCxXQUFXLENBQTJCO0lBRWhELENBQUM7SUFFTSxNQUFNO1FBQ1gsT0FBTyxDQUFFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyxhQUFhLEVBQUU7Z0JBQ3hELE1BQU0sRUFBRSxDQUFDLE1BQTBCLEVBQUUsS0FBYSxFQUFFLEVBQUU7b0JBQ3BELElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7d0JBQ2xDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO29CQUNoRSxDQUFDO29CQUNELE9BQU8sRUFBRSxDQUFDO2dCQUNaLENBQUM7YUFDRixDQUFFLENBQUM7SUFDTixDQUFDO0lBRU8sYUFBYSxDQUFDLE1BQTBCLEVBQUUsS0FBYTtRQUM3RCxNQUFNLE1BQU0sR0FBOEIsRUFBRSxDQUFDO1FBRTdDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsc0JBQXNCLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUU7WUFDM0csTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdkUsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDVixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3BCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxVQUFVLENBQUMsSUFBWTtRQUM3QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBYSxDQUFDO0lBQ2xGLENBQUM7SUFFTyxjQUFjLENBQUMsTUFBaUM7UUFDdEQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDdEMsT0FBTyxPQUFRLENBQUMsQ0FBQyxJQUFLLHFDQUFzQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBRSxRQUFRLENBQUM7UUFDN0YsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRVosT0FBTyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDOUMsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixPQUFPLHFEQUFxRCxDQUFDO0lBQy9ELENBQUM7SUFFTyxhQUFhLENBQUMsS0FBOEI7UUFDbEQsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzlCLE9BQU8sMEJBQTJCLEtBQUssQ0FBQyxJQUFLLGdCQUFpQixJQUFJLENBQUMsSUFBSyxnQkFBZ0IsQ0FBQTtRQUMxRixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTWFya2Rvd25Db250YWluZXJUeXBlLCBJTWFya2Rvd25JdFRva2VuLCBJUHJldmlld05hdmlnYXRpb25Hcm91cCB9IGZyb20gJy4vZG9tYWluJztcblxuaW1wb3J0IGNvbnRhaW5lciBmcm9tICdtYXJrZG93bi1pdC1jb250YWluZXInO1xuaW1wb3J0IHsgZ2V0Q29udGVudCwgaXNPcGVuaW5nVG9rZW4sIHBhcnNlU2luZ2xlQnJhY2tldFRleHQgfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBDb250YWluZXJBcmdzID0gWyB0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfSBdXG5cbmV4cG9ydCBjbGFzcyBQYXJzZVByZXZpZXdHcm91cCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfbmF2aWdhdGlvbjogSVByZXZpZXdOYXZpZ2F0aW9uR3JvdXBbXSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgcmVuZGVyKCk6IENvbnRhaW5lckFyZ3Mge1xuICAgIHJldHVybiBbIGNvbnRhaW5lciwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5QUkVWSUVXX0dST1VQLCB7XG4gICAgICByZW5kZXI6ICh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICBpZiAoaXNPcGVuaW5nVG9rZW4odG9rZW5zW2luZGV4XSkpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZ2V0R3JvdXBzSFRNTCh0aGlzLl9nZW5lcmF0ZURhdGEodG9rZW5zLCBpbmRleCkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH0sXG4gICAgfSBdO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2VuZXJhdGVEYXRhKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKTogSVByZXZpZXdOYXZpZ2F0aW9uR3JvdXBbXSB7XG4gICAgY29uc3QgZ3JvdXBzOiBJUHJldmlld05hdmlnYXRpb25Hcm91cFtdID0gW107XG5cbiAgICB0aGlzLl9wYXJzZURhdGEoZ2V0Q29udGVudCh0b2tlbnMsIGluZGV4LCBFTWFya2Rvd25Db250YWluZXJUeXBlLlBSRVZJRVdfR1JPVVApIHx8ICcnKS5mb3JFYWNoKCh4OiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IGdyb3VwID0gdGhpcy5fbmF2aWdhdGlvbi5maW5kKChnKSA9PiBnLnRleHQgPT09IHggfHwgZy5pZCA9PT0geCk7XG4gICAgICBpZiAoZ3JvdXApIHtcbiAgICAgICAgZ3JvdXBzLnB1c2goZ3JvdXApXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZ3JvdXBzO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyc2VEYXRhKGRhdGE6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gZGF0YS5zcGxpdCgnXFxuJykubWFwKHBhcnNlU2luZ2xlQnJhY2tldFRleHQpLmZpbHRlcihCb29sZWFuKSBhcyBzdHJpbmdbXTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEdyb3Vwc0hUTUwoZ3JvdXBzOiBJUHJldmlld05hdmlnYXRpb25Hcm91cFtdKTogc3RyaW5nIHtcbiAgICBjb25zdCByZXN1bHQgPSAoZ3JvdXBzIHx8IFtdKS5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiBgPGgyPiR7IHgudGV4dCB9PC9oMj48ZGl2IGNsYXNzPVwiZi1wcmV2aWV3LWdyb3VwXCI+JHsgdGhpcy5fZ2V0SXRlbXNIVE1MKHgpIH08L2Rpdj5gO1xuICAgIH0pLmpvaW4oJycpO1xuXG4gICAgcmV0dXJuIHRoaXMuX2dldEdyb3VwRmlsdGVyc0hUTUwoKSArIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEdyb3VwRmlsdGVyc0hUTUwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYDxmLXByZXZpZXctZ3JvdXAtZmlsdGVycz48L2YtcHJldmlldy1ncm91cC1maWx0ZXJzPmA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJdGVtc0hUTUwoZ3JvdXA6IElQcmV2aWV3TmF2aWdhdGlvbkdyb3VwKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ3JvdXAuaXRlbXMubWFwKChpdGVtKSA9PiB7XG4gICAgICByZXR1cm4gYDxmLXByZXZpZXcgZGF0YS1ncm91cD1cIiR7IGdyb3VwLnRleHQgfVwiIGRhdGEtaXRlbT1cIiR7IGl0ZW0ubGluayB9XCI+PC9mLXByZXZpZXc+YFxuICAgIH0pLmpvaW4oJycpO1xuICB9XG59XG4iXX0=","import { EMarkdownContainerType } from './domain';\nimport container from 'markdown-it-container';\nimport { isOpeningToken } from './utils';\nexport class ParseShowcase {\n render() {\n return [container, EMarkdownContainerType.SHOWCASE, {\n render: (tokens, index) => {\n if (isOpeningToken(tokens[index])) {\n return `<showcase></showcase>`;\n }\n return '';\n },\n }];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2Utc2hvd2Nhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvdXRpbHMvcGFyc2Utc2hvd2Nhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFvQixNQUFNLFVBQVUsQ0FBQztBQUVwRSxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSXpDLE1BQU0sT0FBTyxhQUFhO0lBRWpCLE1BQU07UUFDWCxPQUFPLENBQUUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLFFBQVEsRUFBRTtnQkFDbkQsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDbEMsT0FBTyx1QkFBdUIsQ0FBQztvQkFDakMsQ0FBQztvQkFDRCxPQUFPLEVBQUUsQ0FBQztnQkFDWixDQUFDO2FBQ0YsQ0FBRSxDQUFDO0lBQ04sQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRU1hcmtkb3duQ29udGFpbmVyVHlwZSwgSU1hcmtkb3duSXRUb2tlbiB9IGZyb20gJy4vZG9tYWluJztcblxuaW1wb3J0IGNvbnRhaW5lciBmcm9tICdtYXJrZG93bi1pdC1jb250YWluZXInO1xuaW1wb3J0IHsgaXNPcGVuaW5nVG9rZW4gfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBDb250YWluZXJBcmdzID0gWyB0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfSBdXG5cbmV4cG9ydCBjbGFzcyBQYXJzZVNob3djYXNlIHtcblxuICBwdWJsaWMgcmVuZGVyKCk6IENvbnRhaW5lckFyZ3Mge1xuICAgIHJldHVybiBbIGNvbnRhaW5lciwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5TSE9XQ0FTRSwge1xuICAgICAgcmVuZGVyOiAodG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgaWYgKGlzT3BlbmluZ1Rva2VuKHRva2Vuc1tpbmRleF0pKSB7XG4gICAgICAgICAgcmV0dXJuIGA8c2hvd2Nhc2U+PC9zaG93Y2FzZT5gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH0sXG4gICAgfSBdO1xuICB9XG59XG4iXX0=","import { inject, Injectable, Injector } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class Mediatr {\n _injector = inject(Injector);\n static _executions = new Map();\n static register(type, handler) {\n if (!type || !type.requestToken) {\n throw new Error('Type must have a fToken static property: ' + JSON.stringify(type));\n }\n Mediatr._executions.set(type?.requestToken, handler);\n }\n execute(request) {\n const token = request.constructor.requestToken;\n const handlerType = Mediatr._executions.get(token);\n if (!handlerType) {\n throw new Error(`No handler registered for token`, token);\n }\n const handler = this._injector.get(handlerType);\n return handler.handle(request);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Mediatr, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Mediatr });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Mediatr, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWF0ci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9tZWRpYXRyL21lZGlhdHIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFRLE1BQU0sZUFBZSxDQUFDOztBQUluRSxNQUFNLE9BQU8sT0FBTztJQUNELFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFdEMsTUFBTSxDQUFDLFdBQVcsR0FBRyxJQUFJLEdBQUcsRUFBc0MsQ0FBQztJQUVwRSxNQUFNLENBQUMsUUFBUSxDQUNwQixJQUFTLEVBQUUsT0FBOEM7UUFFekQsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN0RixDQUFDO1FBQ0QsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0sT0FBTyxDQUFZLE9BQVk7UUFDcEMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUM7UUFFL0MsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDO3VHQXhCVSxPQUFPOzJHQUFQLE9BQU87OzJGQUFQLE9BQU87a0JBRG5CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJRXhlY3V0aW9uIH0gZnJvbSAnLi9pLWV4ZWN1dGlvbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNZWRpYXRyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHByaXZhdGUgc3RhdGljIF9leGVjdXRpb25zID0gbmV3IE1hcDxzeW1ib2wsIFR5cGU8SUV4ZWN1dGlvbjxhbnksIGFueT4+PigpO1xuXG4gIHB1YmxpYyBzdGF0aWMgcmVnaXN0ZXI8VFJlcXVlc3QsIFRSZXNwb25zZT4oXG4gICAgdHlwZTogYW55LCBoYW5kbGVyOiBUeXBlPElFeGVjdXRpb248VFJlcXVlc3QsIFRSZXNwb25zZT4+LFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXR5cGUgfHwgIXR5cGUucmVxdWVzdFRva2VuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1R5cGUgbXVzdCBoYXZlIGEgZlRva2VuIHN0YXRpYyBwcm9wZXJ0eTogJyArIEpTT04uc3RyaW5naWZ5KHR5cGUpKTtcbiAgICB9XG4gICAgTWVkaWF0ci5fZXhlY3V0aW9ucy5zZXQodHlwZT8ucmVxdWVzdFRva2VuLCBoYW5kbGVyKTtcbiAgfVxuXG4gIHB1YmxpYyBleGVjdXRlPFRSZXNwb25zZT4ocmVxdWVzdDogYW55KTogVFJlc3BvbnNlIHtcbiAgICBjb25zdCB0b2tlbiA9IHJlcXVlc3QuY29uc3RydWN0b3IucmVxdWVzdFRva2VuO1xuXG4gICAgY29uc3QgaGFuZGxlclR5cGUgPSBNZWRpYXRyLl9leGVjdXRpb25zLmdldCh0b2tlbik7XG4gICAgaWYgKCFoYW5kbGVyVHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBoYW5kbGVyIHJlZ2lzdGVyZWQgZm9yIHRva2VuYCwgdG9rZW4pO1xuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZXIgPSB0aGlzLl9pbmplY3Rvci5nZXQoaGFuZGxlclR5cGUpO1xuICAgIHJldHVybiBoYW5kbGVyLmhhbmRsZShyZXF1ZXN0KTtcbiAgfVxufVxuIl19","import { Mediatr } from './mediatr';\nexport function MExecution(requestType) {\n return function (constructor) {\n Mediatr.register(requestType, constructor);\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibS1leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvbWVkaWF0ci9tLWV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBS3BDLE1BQU0sVUFBVSxVQUFVLENBQXNCLFdBQTJCO0lBQ3pFLE9BQU8sVUFBVSxXQUF5RDtRQUN4RSxPQUFPLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM3QyxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUV4ZWN1dGlvbiB9IGZyb20gJy4vaS1leGVjdXRpb24nO1xuaW1wb3J0IHsgTWVkaWF0ciB9IGZyb20gJy4vbWVkaWF0cic7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbnR5cGUgQ29uc3RydWN0b3I8VCA9IGFueT4gPSBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBUO1xuXG5leHBvcnQgZnVuY3Rpb24gTUV4ZWN1dGlvbjxUUmVxdWVzdCwgVFJlc3BvbnNlPihyZXF1ZXN0VHlwZTogVHlwZTxUUmVxdWVzdD4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIChjb25zdHJ1Y3RvcjogQ29uc3RydWN0b3I8SUV4ZWN1dGlvbjxUUmVxdWVzdCwgVFJlc3BvbnNlPj4pIHtcbiAgICBNZWRpYXRyLnJlZ2lzdGVyKHJlcXVlc3RUeXBlLCBjb25zdHJ1Y3Rvcik7XG4gIH07XG59XG4iXX0=","export function coerceComponentHeight(value) {\n if (value === undefined) {\n return undefined;\n }\n value = Number(value);\n if (value) {\n return value + 'px';\n }\n return undefined;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNlLWNvbXBvbmVudC1oZWlnaHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvZXh0ZXJuYWwtY29tcG9uZW50L3V0aWxzL2NvZXJjZS1jb21wb25lbnQtaGVpZ2h0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxLQUFrQztJQUN0RSxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN4QixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBQ0QsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QixJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ1YsT0FBTyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZUNvbXBvbmVudEhlaWdodCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIHZhbHVlID0gTnVtYmVyKHZhbHVlKTtcbiAgaWYgKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlICsgJ3B4JztcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuIl19","export function parseComponentTag(html) {\n const regex = /^<([a-zA-Z0-9-]+)(\\s+[^>]+)?><\\/\\1>$/;\n const match = regex.exec(html);\n return match ? match[1] : null;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtY29tcG9uZW50LXRhZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9leHRlcm5hbC1jb21wb25lbnQvdXRpbHMvcGFyc2UtY29tcG9uZW50LXRhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsSUFBWTtJQUM1QyxNQUFNLEtBQUssR0FBRyxzQ0FBc0MsQ0FBQztJQUNyRCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQ29tcG9uZW50VGFnKGh0bWw6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCByZWdleCA9IC9ePChbYS16QS1aMC05LV0rKShcXHMrW14+XSspPz48XFwvXFwxPiQvO1xuICBjb25zdCBtYXRjaCA9IHJlZ2V4LmV4ZWMoaHRtbCk7XG4gIHJldHVybiBtYXRjaCA/IG1hdGNoWzFdIDogbnVsbDtcbn1cbiJdfQ==","export class RenderDynamicComponentRequest {\n item;\n viewContainerRef;\n element;\n static requestToken = Symbol('RenderDynamicComponentRequest');\n constructor(item, viewContainerRef, element) {\n this.item = item;\n this.viewContainerRef = viewContainerRef;\n this.element = element;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWR5bmFtaWMtY29tcG9uZW50LXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2ZlYXR1cmVzL3JlbmRlci1keW5hbWljLWNvbXBvbmVudC9yZW5kZXItZHluYW1pYy1jb21wb25lbnQtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sNkJBQTZCO0lBSXRCO0lBQ0E7SUFDQTtJQUxYLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFFckUsWUFDa0IsSUFBMkIsRUFDM0IsZ0JBQWtDLEVBQ2xDLE9BQXFCO1FBRnJCLFNBQUksR0FBSixJQUFJLENBQXVCO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsWUFBTyxHQUFQLE9BQU8sQ0FBYztJQUV2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUR5bmFtaWNDb21wb25lbnRJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcblxuZXhwb3J0IGNsYXNzIFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0IHtcbiAgcHVibGljIHN0YXRpYyByZXF1ZXN0VG9rZW4gPSBTeW1ib2woJ1JlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGl0ZW06IElEeW5hbWljQ29tcG9uZW50SXRlbSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudD86IEhUTUxFbGVtZW50LFxuICApIHtcbiAgfVxufVxuIl19","import { __decorate } from \"tslib\";\nimport { RenderDynamicComponentRequest } from './render-dynamic-component-request';\nimport { inject, Injectable } from '@angular/core';\nimport { DynamicComponentsStore } from '../../dynamic-components.store';\nimport { MExecution } from '../../../mediatr';\nimport * as i0 from \"@angular/core\";\nlet RenderDynamicComponent = class RenderDynamicComponent {\n _dynamicStore = inject(DynamicComponentsStore);\n handle({ item, viewContainerRef, element }) {\n try {\n this._renderComponent(item, viewContainerRef, element);\n }\n catch (error) {\n this._logError(item.selector, error);\n }\n }\n _renderComponent({ selector, component }, viewContainerRef, element) {\n component.then(extracted => {\n const componentRef = viewContainerRef.createComponent(extracted);\n this._dynamicStore.addComponent(componentRef, element);\n element?.replaceWith(this._extractComponentRoot(componentRef));\n if (!extracted) {\n this._logComponentResolutionError(selector);\n }\n }).catch(error => this._logComponentLoadingError(selector, error));\n }\n _extractComponentRoot(componentRef) {\n componentRef.changeDetectorRef.markForCheck();\n return componentRef.hostView.rootNodes[0];\n }\n _logComponentResolutionError(tag) {\n console.error(`Component for tag \"${tag}\" could not be resolved.`);\n }\n _logComponentLoadingError(tag, error) {\n console.error(`Error while loading component for tag \"${tag}\":`, error);\n }\n _logError(tag, error) {\n console.error(`Error inserting component for <${tag}>:`, error);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderDynamicComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderDynamicComponent });\n};\nRenderDynamicComponent = __decorate([\n MExecution(RenderDynamicComponentRequest)\n], RenderDynamicComponent);\nexport { RenderDynamicComponent };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderDynamicComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWR5bmFtaWMtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9mZWF0dXJlcy9yZW5kZXItZHluYW1pYy1jb21wb25lbnQvcmVuZGVyLWR5bmFtaWMtY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRixPQUFPLEVBQWdCLE1BQU0sRUFBRSxVQUFVLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hFLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFLbkQsSUFBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBc0I7SUFFaEIsYUFBYSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBRXpELE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQWlDO1FBQzlFLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQXlCLEVBQUUsZ0JBQWtDLEVBQUUsT0FBcUI7UUFDaEksU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN6QixNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRXZELE9BQU8sRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFFL0QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNmLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxZQUErQjtRQUMzRCxZQUFZLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDOUMsT0FBUSxZQUFZLENBQUMsUUFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFnQixDQUFDO0lBQ3BFLENBQUM7SUFFTyw0QkFBNEIsQ0FBQyxHQUFXO1FBQzlDLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEdBQUcsMEJBQTBCLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU8seUJBQXlCLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDMUQsT0FBTyxDQUFDLEtBQUssQ0FBQywwQ0FBMEMsR0FBRyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVPLFNBQVMsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxHQUFHLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNsRSxDQUFDO3VHQXhDVSxzQkFBc0I7MkdBQXRCLHNCQUFzQjs7QUFBdEIsc0JBQXNCO0lBRmxDLFVBQVUsQ0FBQyw2QkFBNkIsQ0FBQztHQUU3QixzQkFBc0IsQ0F5Q2xDOzsyRkF6Q1ksc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QgfSBmcm9tICcuL3JlbmRlci1keW5hbWljLWNvbXBvbmVudC1yZXF1ZXN0JztcbmltcG9ydCB7IENvbXBvbmVudFJlZiwgaW5qZWN0LCBJbmplY3RhYmxlLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZHluYW1pYy1jb21wb25lbnRzLnN0b3JlJztcbmltcG9ydCB7IElFeGVjdXRpb24sIE1FeGVjdXRpb24gfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbkBNRXhlY3V0aW9uKFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0KVxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFJlbmRlckR5bmFtaWNDb21wb25lbnQgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0LCB2b2lkPntcblxuICBwcml2YXRlIHJlYWRvbmx5IF9keW5hbWljU3RvcmUgPSBpbmplY3QoRHluYW1pY0NvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZSh7IGl0ZW0sIHZpZXdDb250YWluZXJSZWYsIGVsZW1lbnQgfTogUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5fcmVuZGVyQ29tcG9uZW50KGl0ZW0sIHZpZXdDb250YWluZXJSZWYsIGVsZW1lbnQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLl9sb2dFcnJvcihpdGVtLnNlbGVjdG9yLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyQ29tcG9uZW50KHsgc2VsZWN0b3IsIGNvbXBvbmVudCB9OiBJRHluYW1pY0NvbXBvbmVudEl0ZW0sIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsIGVsZW1lbnQ/OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIGNvbXBvbmVudC50aGVuKGV4dHJhY3RlZCA9PiB7XG4gICAgICBjb25zdCBjb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChleHRyYWN0ZWQpO1xuICAgICAgdGhpcy5fZHluYW1pY1N0b3JlLmFkZENvbXBvbmVudChjb21wb25lbnRSZWYsIGVsZW1lbnQpO1xuXG4gICAgICBlbGVtZW50Py5yZXBsYWNlV2l0aCh0aGlzLl9leHRyYWN0Q29tcG9uZW50Um9vdChjb21wb25lbnRSZWYpKTtcblxuICAgICAgaWYgKCFleHRyYWN0ZWQpIHtcbiAgICAgICAgdGhpcy5fbG9nQ29tcG9uZW50UmVzb2x1dGlvbkVycm9yKHNlbGVjdG9yKTtcbiAgICAgIH1cbiAgICB9KS5jYXRjaChlcnJvciA9PiB0aGlzLl9sb2dDb21wb25lbnRMb2FkaW5nRXJyb3Ioc2VsZWN0b3IsIGVycm9yKSk7XG4gIH1cblxuICBwcml2YXRlIF9leHRyYWN0Q29tcG9uZW50Um9vdChjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+KTogSFRNTEVsZW1lbnQge1xuICAgIGNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICByZXR1cm4gKGNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBhbnkpLnJvb3ROb2Rlc1swXSBhcyBIVE1MRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgX2xvZ0NvbXBvbmVudFJlc29sdXRpb25FcnJvcih0YWc6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnNvbGUuZXJyb3IoYENvbXBvbmVudCBmb3IgdGFnIFwiJHt0YWd9XCIgY291bGQgbm90IGJlIHJlc29sdmVkLmApO1xuICB9XG5cbiAgcHJpdmF0ZSBfbG9nQ29tcG9uZW50TG9hZGluZ0Vycm9yKHRhZzogc3RyaW5nLCBlcnJvcjogb2JqZWN0KTogdm9pZCB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3Igd2hpbGUgbG9hZGluZyBjb21wb25lbnQgZm9yIHRhZyBcIiR7dGFnfVwiOmAsIGVycm9yKTtcbiAgfVxuXG4gIHByaXZhdGUgX2xvZ0Vycm9yKHRhZzogc3RyaW5nLCBlcnJvcjogYW55KTogdm9pZCB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3IgaW5zZXJ0aW5nIGNvbXBvbmVudCBmb3IgPCR7dGFnfT46YCwgZXJyb3IpO1xuICB9XG59XG4iXX0=","export class RenderExternalComponentRequest {\n selector;\n viewContainerRef;\n static requestToken = Symbol('RenderExternalComponentRequest');\n constructor(selector, viewContainerRef) {\n this.selector = selector;\n this.viewContainerRef = viewContainerRef;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9mZWF0dXJlcy9yZW5kZXItZXh0ZXJuYWwtY29tcG9uZW50L3JlbmRlci1leHRlcm5hbC1jb21wb25lbnQtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sOEJBQThCO0lBSXZCO0lBQ0E7SUFKWCxNQUFNLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0lBRXRFLFlBQ2tCLFFBQWdCLEVBQ2hCLGdCQUFrQztRQURsQyxhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNsYXNzIFJlbmRlckV4dGVybmFsQ29tcG9uZW50UmVxdWVzdCB7XG4gIHB1YmxpYyBzdGF0aWMgcmVxdWVzdFRva2VuID0gU3ltYm9sKCdSZW5kZXJFeHRlcm5hbENvbXBvbmVudFJlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0b3I6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgKSB7XG4gIH1cbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const EXTERNAL_COMPONENT_PROVIDER = new InjectionToken('EXTERNAL_COMPONENT_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtY29tcG9uZW50LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9wcm92aWRlcnMvZXh0ZXJuYWwtY29tcG9uZW50LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsSUFBSSxjQUFjLENBQTBCLDZCQUE2QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUR5bmFtaWNDb21wb25lbnRJdGVtIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGNvbnN0IEVYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJRHluYW1pY0NvbXBvbmVudEl0ZW1bXT4oJ0VYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUicpO1xuIl19","import { __decorate } from \"tslib\";\nimport { RenderExternalComponentRequest } from './render-external-component-request';\nimport { inject, Injectable } from '@angular/core';\nimport { Mediatr, MExecution } from '../../../mediatr';\nimport { RenderDynamicComponentRequest } from '../render-dynamic-component';\nimport { EXTERNAL_COMPONENT_PROVIDER } from '../../providers';\nimport * as i0 from \"@angular/core\";\nlet RenderExternalComponent = class RenderExternalComponent {\n _mediatr = inject(Mediatr);\n _componentsMap = inject(EXTERNAL_COMPONENT_PROVIDER, { optional: true }) ?? [];\n handle({ selector, viewContainerRef }) {\n const item = this._componentsMap.find((x) => {\n return x.selector === selector;\n });\n if (!item) {\n throw new Error(`Component for tag \"${selector}\" could not be found in external components map.`);\n }\n this._mediatr.execute(new RenderDynamicComponentRequest(item, viewContainerRef));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderExternalComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderExternalComponent });\n};\nRenderExternalComponent = __decorate([\n MExecution(RenderExternalComponentRequest)\n], RenderExternalComponent);\nexport { RenderExternalComponent };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderExternalComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvZmVhdHVyZXMvcmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC9yZW5kZXItZXh0ZXJuYWwtY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25FLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUl2RCxJQUFNLHVCQUF1QixHQUE3QixNQUFNLHVCQUF1QjtJQUVqQixRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLGNBQWMsR0FBRyxNQUFNLENBQUMsMkJBQTJCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFFekYsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFrQztRQUMxRSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDVCxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixRQUFRLGtEQUFrRCxDQUFDLENBQUE7UUFDbkcsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUNuQixJQUFJLDZCQUE2QixDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUMxRCxDQUFDO0lBQ0osQ0FBQzt1R0FqQlUsdUJBQXVCOzJHQUF2Qix1QkFBdUI7O0FBQXZCLHVCQUF1QjtJQUZuQyxVQUFVLENBQUMsOEJBQThCLENBQUM7R0FFOUIsdUJBQXVCLENBa0JuQzs7MkZBbEJZLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbmRlckV4dGVybmFsQ29tcG9uZW50UmVxdWVzdCB9IGZyb20gJy4vcmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC1yZXF1ZXN0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTWVkaWF0ciwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QgfSBmcm9tICcuLi9yZW5kZXItZHluYW1pYy1jb21wb25lbnQnO1xuaW1wb3J0IHsgRVhURVJOQUxfQ09NUE9ORU5UX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzJztcblxuQE1FeGVjdXRpb24oUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0KVxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFJlbmRlckV4dGVybmFsQ29tcG9uZW50IGltcGxlbWVudHMgSUV4ZWN1dGlvbjxSZW5kZXJFeHRlcm5hbENvbXBvbmVudFJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb21wb25lbnRzTWFwID0gaW5qZWN0KEVYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUiwgeyBvcHRpb25hbDogdHJ1ZSB9KSA/PyBbXTtcblxuICBwdWJsaWMgaGFuZGxlKHsgc2VsZWN0b3IsIHZpZXdDb250YWluZXJSZWYgfTogUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0KTogdm9pZCB7XG4gICAgY29uc3QgaXRlbSA9IHRoaXMuX2NvbXBvbmVudHNNYXAuZmluZCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHguc2VsZWN0b3IgPT09IHNlbGVjdG9yO1xuICAgIH0pXG5cbiAgICBpZighaXRlbSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb21wb25lbnQgZm9yIHRhZyBcIiR7c2VsZWN0b3J9XCIgY291bGQgbm90IGJlIGZvdW5kIGluIGV4dGVybmFsIGNvbXBvbmVudHMgbWFwLmApXG4gICAgfVxuXG4gICAgdGhpcy5fbWVkaWF0ci5leGVjdXRlKFxuICAgICAgbmV3IFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0KGl0ZW0sIHZpZXdDb250YWluZXJSZWYpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","export class RenderInternalComponentsRequest {\n hostElement;\n viewContainerRef;\n static requestToken = Symbol('RenderInternalComponentsRequest');\n constructor(hostElement, viewContainerRef) {\n this.hostElement = hostElement;\n this.viewContainerRef = viewContainerRef;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvZmVhdHVyZXMvcmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMvcmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sK0JBQStCO0lBSXhCO0lBQ0E7SUFKWCxNQUFNLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBRXZFLFlBQ2tCLFdBQXdCLEVBQ3hCLGdCQUFrQztRQURsQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRXBELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHNSZXF1ZXN0IHtcbiAgcHVibGljIHN0YXRpYyByZXF1ZXN0VG9rZW4gPSBTeW1ib2woJ1JlbmRlckludGVybmFsQ29tcG9uZW50c1JlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIHB1YmxpYyByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICApIHtcbiAgfVxufVxuIl19","import { __decorate } from \"tslib\";\nimport { RenderInternalComponentsRequest } from './render-internal-components-request';\nimport { inject, Injectable } from '@angular/core';\nimport { Mediatr, MExecution } from '../../../mediatr';\nimport { DynamicComponentsStore, extractComponent } from '../../../documentation-page';\nimport { RenderDynamicComponentRequest } from '../render-dynamic-component';\nimport * as i0 from \"@angular/core\";\nlet RenderInternalComponents = class RenderInternalComponents {\n _dynamicStore = inject(DynamicComponentsStore);\n _mediatr = inject(Mediatr);\n _componentsMap = [\n {\n selector: 'f-code-group',\n component: extractComponent(() => import('../../components/code-group/code-group')),\n },\n {\n selector: 'f-preview',\n component: extractComponent(() => import('../../components/preview-group/components/preview-card/preview-card')),\n },\n {\n selector: 'f-preview-group-filters',\n component: extractComponent(() => import('../../components/preview-group/components/preview-action-bar/preview-action-bar')),\n },\n {\n selector: 'showcase',\n component: extractComponent(() => import('../../components/showcase/showcase')),\n },\n ];\n handle({ hostElement, viewContainerRef }) {\n this._dynamicStore.dispose();\n this._componentsMap.forEach(({ selector, component }) => {\n this._queryElements(hostElement, selector).forEach((x) => {\n this._mediatr.execute(new RenderDynamicComponentRequest({ selector, component }, viewContainerRef, x));\n });\n });\n }\n _queryElements(hostElement, selector) {\n return Array.from(hostElement.querySelectorAll(selector));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderInternalComponents, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderInternalComponents });\n};\nRenderInternalComponents = __decorate([\n MExecution(RenderInternalComponentsRequest)\n], RenderInternalComponents);\nexport { RenderInternalComponents };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderInternalComponents, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2ZlYXR1cmVzL3JlbmRlci1pbnRlcm5hbC1jb21wb25lbnRzL3JlbmRlci1pbnRlcm5hbC1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUlyRSxJQUFNLHdCQUF3QixHQUE5QixNQUFNLHdCQUF3QjtJQUNsQixhQUFhLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDL0MsUUFBUSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUUzQixjQUFjLEdBQTRCO1FBQ3pEO1lBQ0UsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1NBQ3BGO1FBQ0Q7WUFDRSxRQUFRLEVBQUUsV0FBVztZQUNyQixTQUFTLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7U0FDakg7UUFDRDtZQUNFLFFBQVEsRUFBRSx5QkFBeUI7WUFDbkMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxpRkFBaUYsQ0FBQyxDQUFDO1NBQzdIO1FBQ0Q7WUFDRSxRQUFRLEVBQUUsVUFBVTtZQUNwQixTQUFTLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLG9DQUFvQyxDQUFDLENBQUM7U0FDaEY7S0FDRixDQUFDO0lBRUssTUFBTSxDQUFDLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFtQztRQUM5RSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRTdCLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtZQUN0RCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDdkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQ25CLElBQUksNkJBQTZCLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQ2hGLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWMsQ0FBQyxXQUF3QixFQUFFLFFBQWdCO1FBQy9ELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO3VHQXJDVSx3QkFBd0I7MkdBQXhCLHdCQUF3Qjs7QUFBeEIsd0JBQXdCO0lBRnBDLFVBQVUsQ0FBQywrQkFBK0IsQ0FBQztHQUUvQix3QkFBd0IsQ0FzQ3BDOzsyRkF0Q1ksd0JBQXdCO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdCB9IGZyb20gJy4vcmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMtcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElFeGVjdXRpb24sIE1lZGlhdHIsIE1FeGVjdXRpb24gfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50c1N0b3JlLCBleHRyYWN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZG9jdW1lbnRhdGlvbi1wYWdlJztcbmltcG9ydCB7IFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0IH0gZnJvbSAnLi4vcmVuZGVyLWR5bmFtaWMtY29tcG9uZW50JztcblxuQE1FeGVjdXRpb24oUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdClcbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHMgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbmRlckludGVybmFsQ29tcG9uZW50c1JlcXVlc3QsIHZvaWQ+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHluYW1pY1N0b3JlID0gaW5qZWN0KER5bmFtaWNDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbXBvbmVudHNNYXA6IElEeW5hbWljQ29tcG9uZW50SXRlbVtdID0gW1xuICAgIHtcbiAgICAgIHNlbGVjdG9yOiAnZi1jb2RlLWdyb3VwJyxcbiAgICAgIGNvbXBvbmVudDogZXh0cmFjdENvbXBvbmVudCgoKSA9PiBpbXBvcnQoJy4uLy4uL2NvbXBvbmVudHMvY29kZS1ncm91cC9jb2RlLWdyb3VwJykpLFxuICAgIH0sXG4gICAge1xuICAgICAgc2VsZWN0b3I6ICdmLXByZXZpZXcnLFxuICAgICAgY29tcG9uZW50OiBleHRyYWN0Q29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9wcmV2aWV3LWdyb3VwL2NvbXBvbmVudHMvcHJldmlldy1jYXJkL3ByZXZpZXctY2FyZCcpKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNlbGVjdG9yOiAnZi1wcmV2aWV3LWdyb3VwLWZpbHRlcnMnLFxuICAgICAgY29tcG9uZW50OiBleHRyYWN0Q29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9wcmV2aWV3LWdyb3VwL2NvbXBvbmVudHMvcHJldmlldy1hY3Rpb24tYmFyL3ByZXZpZXctYWN0aW9uLWJhcicpKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNlbGVjdG9yOiAnc2hvd2Nhc2UnLFxuICAgICAgY29tcG9uZW50OiBleHRyYWN0Q29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9zaG93Y2FzZS9zaG93Y2FzZScpKSxcbiAgICB9LFxuICBdO1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBob3N0RWxlbWVudCwgdmlld0NvbnRhaW5lclJlZiB9OiBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHNSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZHluYW1pY1N0b3JlLmRpc3Bvc2UoKTtcblxuICAgIHRoaXMuX2NvbXBvbmVudHNNYXAuZm9yRWFjaCgoeyBzZWxlY3RvciwgY29tcG9uZW50IH0pID0+IHtcbiAgICAgIHRoaXMuX3F1ZXJ5RWxlbWVudHMoaG9zdEVsZW1lbnQsIHNlbGVjdG9yKS5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShcbiAgICAgICAgICBuZXcgUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QoeyBzZWxlY3RvciwgY29tcG9uZW50IH0sIHZpZXdDb250YWluZXJSZWYsIHgpLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9xdWVyeUVsZW1lbnRzKGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCwgc2VsZWN0b3I6IHN0cmluZyk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKGhvc3RFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpKTtcbiAgfVxufVxuIl19","import { ChangeDetectionStrategy, Component, inject, input, viewChild, ViewContainerRef } from '@angular/core';\nimport { coerceComponentHeight } from './utils/coerce-component-height';\nimport { parseComponentTag } from './utils/parse-component-tag';\nimport { Mediatr } from '../../../mediatr';\nimport { RenderExternalComponentRequest } from '../../features';\nimport * as i0 from \"@angular/core\";\nexport class ExternalComponent {\n data = input.required(...(ngDevMode ? [{ debugName: \"data\", transform: (x) => {\n return {\n height: coerceComponentHeight(x.height),\n value: parseComponentTag(x.value) || '',\n };\n } }] : [{\n transform: (x) => {\n return {\n height: coerceComponentHeight(x.height),\n value: parseComponentTag(x.value) || '',\n };\n },\n }]));\n _mediatr = inject(Mediatr);\n _viewContainerRef = viewChild.required('container', { read: ViewContainerRef });\n ngOnInit() {\n this._mediatr.execute(new RenderExternalComponentRequest(this.data().value, this._viewContainerRef()));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ExternalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.2.0\", version: \"20.1.8\", type: ExternalComponent, isStandalone: true, selector: \"external-component\", inputs: { data: { classPropertyName: \"data\", publicName: \"data\", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { \"style.height\": \"data().height\" }, classAttribute: \"external-component\" }, viewQueries: [{ propertyName: \"_viewContainerRef\", first: true, predicate: [\"container\"], descendants: true, read: ViewContainerRef, isSignal: true }], ngImport: i0, template: \"<ng-container #container />\\n\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ExternalComponent, decorators: [{\n type: Component,\n args: [{ selector: 'external-component', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'external-component',\n '[style.height]': 'data().height',\n }, template: \"<ng-container #container />\\n\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL2V4dGVybmFsLWNvbXBvbmVudC9leHRlcm5hbC1jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvZXh0ZXJuYWwtY29tcG9uZW50L2V4dGVybmFsLWNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVloRSxNQUFNLE9BQU8saUJBQWlCO0lBQ1osSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLHVDQUNuQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDZixPQUFPO29CQUNMLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO29CQUN2QyxLQUFLLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7aUJBQ3hDLENBQUM7WUFDSixDQUFDLE9BTjJFO1lBQzVFLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNmLE9BQU87b0JBQ0wsTUFBTSxFQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ3ZDLEtBQUssRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtpQkFDeEMsQ0FBQztZQUNKLENBQUM7U0FDRixHQUFDLENBQUM7SUFFYyxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLGlCQUFpQixHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUUxRixRQUFRO1FBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RyxDQUFDO3VHQWZVLGlCQUFpQjsyRkFBakIsaUJBQWlCLDBZQVdpRCxnQkFBZ0IsNkNDN0IvRixpQ0FFQTs7MkZEZ0JhLGlCQUFpQjtrQkFWN0IsU0FBUzsrQkFDRSxvQkFBb0IsY0FFbEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxvQkFBb0I7d0JBQzNCLGdCQUFnQixFQUFFLGVBQWU7cUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgT25Jbml0LCB2aWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZUNvbXBvbmVudEhlaWdodCB9IGZyb20gJy4vdXRpbHMvY29lcmNlLWNvbXBvbmVudC1oZWlnaHQnO1xuaW1wb3J0IHsgcGFyc2VDb21wb25lbnRUYWcgfSBmcm9tICcuL3V0aWxzL3BhcnNlLWNvbXBvbmVudC10YWcnO1xuaW1wb3J0IHsgSUV4YW1wbGVWaWV3RGF0YSB9IGZyb20gJy4vZG9tYWluL2ktZXhhbXBsZS12aWV3LWRhdGEnO1xuaW1wb3J0IHsgSVBhcnNlZENvbnRhaW5lckRhdGEgfSBmcm9tICcuLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuaW1wb3J0IHsgTWVkaWF0ciB9IGZyb20gJy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZmVhdHVyZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdleHRlcm5hbC1jb21wb25lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZXh0ZXJuYWwtY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXh0ZXJuYWwtY29tcG9uZW50JyxcbiAgICAnW3N0eWxlLmhlaWdodF0nOiAnZGF0YSgpLmhlaWdodCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIHJlYWRvbmx5IGRhdGEgPSBpbnB1dC5yZXF1aXJlZDxJRXhhbXBsZVZpZXdEYXRhLCBJUGFyc2VkQ29udGFpbmVyRGF0YT4oe1xuICAgIHRyYW5zZm9ybTogKHgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogY29lcmNlQ29tcG9uZW50SGVpZ2h0KHguaGVpZ2h0KSxcbiAgICAgICAgdmFsdWU6IHBhcnNlQ29tcG9uZW50VGFnKHgudmFsdWUpIHx8ICcnLFxuICAgICAgfTtcbiAgICB9LFxuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmID0gdmlld0NoaWxkLnJlcXVpcmVkKCdjb250YWluZXInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShuZXcgUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0KHRoaXMuZGF0YSgpLnZhbHVlLCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKCkpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAjY29udGFpbmVyIC8+XG5cbiJdfQ==","import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, input } from '@angular/core';\nimport { take } from 'rxjs/operators';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HighlightService } from '../index';\nimport * as i0 from \"@angular/core\";\nexport class Highlight {\n _highlightService = inject(HighlightService);\n _elementRef = inject(ElementRef);\n _destroyRef = inject(DestroyRef);\n content = input.required(...(ngDevMode ? [{ debugName: \"content\" }] : []));\n language = input.required(...(ngDevMode ? [{ debugName: \"language\" }] : []));\n ngOnInit() {\n queueMicrotask(() => {\n this._highlightService.highlight(this._elementRef.nativeElement, this.language(), this.content())\n .pipe(take(1), takeUntilDestroyed(this._destroyRef)).subscribe();\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Highlight, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.8\", type: Highlight, isStandalone: true, selector: \"highlight\", inputs: { content: { classPropertyName: \"content\", publicName: \"content\", isSignal: true, isRequired: true, transformFunction: null }, language: { classPropertyName: \"language\", publicName: \"language\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Highlight, decorators: [{\n type: Component,\n args: [{\n selector: 'highlight',\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9jb2RlLXZpZXcvaGlnaGxpZ2h0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBUTVDLE1BQU0sT0FBTyxTQUFTO0lBRUgsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDN0MsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxrREFBVSxDQUFDO0lBQ25DLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxtREFBVSxDQUFDO0lBRXBDLFFBQVE7UUFDYixjQUFjLENBQUMsR0FBRyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDOUYsSUFBSSxDQUNILElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzlDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO3VHQWhCVSxTQUFTOzJGQUFULFNBQVMsOFVBSlYsRUFBRTs7MkZBSUQsU0FBUztrQkFOckIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztvQkFDckIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEhpZ2hsaWdodFNlcnZpY2UgfSBmcm9tICcuLi9pbmRleCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hpZ2hsaWdodCcsXG4gIHRlbXBsYXRlOiBgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEhpZ2hsaWdodCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaGlnaGxpZ2h0U2VydmljZSA9IGluamVjdChIaWdobGlnaHRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICBwdWJsaWMgY29udGVudCA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oKTtcbiAgcHVibGljIGxhbmd1YWdlID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiB7XG4gICAgICB0aGlzLl9oaWdobGlnaHRTZXJ2aWNlLmhpZ2hsaWdodCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMubGFuZ3VhZ2UoKSwgdGhpcy5jb250ZW50KCkpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2UoMSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSxcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcbiAgICB9KVxuICB9XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, computed, DestroyRef, inject, input, signal } from '@angular/core';\nimport { catchError, take } from 'rxjs/operators';\nimport { EMPTY } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { AVAILABLE_LANGUAGES, Highlight } from '../index';\nimport { copyToClipboard, PopoverService } from '../../common';\nimport * as i0 from \"@angular/core\";\nexport class CodeView {\n _httpClient = inject(HttpClient);\n _destroyRef = inject(DestroyRef);\n _popoverService = inject(PopoverService);\n data = input(...(ngDevMode ? [undefined, { debugName: \"data\" }] : []));\n height = computed(() => {\n return coerceComponentHeight(this.data()?.height);\n }, ...(ngDevMode ? [{ debugName: \"height\" }] : []));\n content = signal('', ...(ngDevMode ? [{ debugName: \"content\" }] : []));\n visibleLanguage = signal('', ...(ngDevMode ? [{ debugName: \"visibleLanguage\" }] : []));\n syntaxLanguage = signal('', ...(ngDevMode ? [{ debugName: \"syntaxLanguage\" }] : []));\n ngOnInit() {\n this._updateLanguage();\n this._updateNotExistingData(this.data());\n this._updateExistingData(this.data());\n }\n _updateLanguage() {\n const data = this.data();\n const language = data?.language || parseLanguageFromFileExtension(data?.value || '');\n this.syntaxLanguage.set(parseSyntaxLanguage(language));\n this.visibleLanguage.set(language);\n }\n _updateNotExistingData(data) {\n if (data?.isLink) {\n this._loadCodeByLink(data.value);\n }\n }\n _updateExistingData(data) {\n if (!data?.isLink) {\n this.content.set(data?.value || '');\n }\n }\n _loadCodeByLink(link) {\n if (!link)\n return;\n this._httpClient.get(link, { responseType: 'text' }).pipe(take(1), takeUntilDestroyed(this._destroyRef), catchError(() => EMPTY)).subscribe((content) => this.content.set(content));\n }\n onCopyClick() {\n this._copyContentToClipboard(this.content());\n }\n _copyContentToClipboard(content) {\n copyToClipboard(content).pipe(take(1), takeUntilDestroyed(this._destroyRef)).subscribe(() => this._popoverService.show('Copied!'));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeView, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: CodeView, isStandalone: true, selector: \"code-view\", inputs: { data: { classPropertyName: \"data\", publicName: \"data\", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { \"style.height\": \"height()\" }, classAttribute: \"f-code-view\" }, ngImport: i0, template: \"<span class=\\\"f-code-language\\\">{{ visibleLanguage() }}</span>\\n<button class=\\\"f-copy-button\\\" (click)=\\\"onCopyClick()\\\"></button>\\n@if (content()) {\\n <highlight [content]=\\\"content()\\\" [language]=\\\"syntaxLanguage()\\\"/>\\n}\\n\\n\", dependencies: [{ kind: \"component\", type: Highlight, selector: \"highlight\", inputs: [\"content\", \"language\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeView, decorators: [{\n type: Component,\n args: [{ selector: 'code-view', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'f-code-view',\n '[style.height]': 'height()',\n }, imports: [\n Highlight,\n ], template: \"<span class=\\\"f-code-language\\\">{{ visibleLanguage() }}</span>\\n<button class=\\\"f-copy-button\\\" (click)=\\\"onCopyClick()\\\"></button>\\n@if (content()) {\\n <highlight [content]=\\\"content()\\\" [language]=\\\"syntaxLanguage()\\\"/>\\n}\\n\\n\" }]\n }] });\nfunction coerceComponentHeight(value) {\n if (value === undefined) {\n return undefined;\n }\n value = Number(value);\n if (value) {\n return value + 'px';\n }\n return undefined;\n}\nfunction parseLanguageFromFileExtension(url) {\n const match = url.match(/\\.([0-9a-z]+)(?:[\\?#]|$)/i);\n if (match) {\n let extension = match[1];\n if (extension === 'css') {\n extension = 'scss';\n }\n return extension;\n }\n return '';\n}\nfunction parseSyntaxLanguage(language) {\n let result;\n switch (language) {\n case 'js':\n case 'javascript':\n result = 'javascript';\n break;\n case 'ts':\n case 'typescript':\n case 'angular-ts':\n result = 'angular-ts';\n break;\n case 'html':\n case 'angular-html':\n result = 'angular-html';\n break;\n default:\n result = extractLanguage(language);\n }\n if (!AVAILABLE_LANGUAGES.includes(result)) {\n result = 'text';\n }\n return result;\n}\nfunction extractLanguage(language) {\n const match = language.match(/^([^\\s\\[]+)/);\n return match ? match[1].toLowerCase() : language;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS12aWV3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9jb2RlLXZpZXcvY29kZS12aWV3LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9jb2RlLXZpZXcvY29kZS12aWV3Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFzQi9ELE1BQU0sT0FBTyxRQUFRO0lBQ0YsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pDLGVBQWUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFMUMsSUFBSSxHQUFHLEtBQUssMERBQWlCLENBQUM7SUFFM0IsTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDeEMsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsTUFBTSxD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QUFDO0lBQ2xCLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsUUFBZ0I7SUFDdkMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1QyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7QUFDbkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBEZXN0cm95UmVmLCBpbmplY3QsIGlucHV0LCBPbkluaXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVNUFRZIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQVZBSUxBQkxFX0xBTkdVQUdFUywgSGlnaGxpZ2h0IH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IHsgY29weVRvQ2xpcGJvYXJkLCBQb3BvdmVyU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbW1vbic7XG5cbmludGVyZmFjZSBDb250YWluZXJEYXRhIHtcbiAgaGVpZ2h0Pzogc3RyaW5nIHwgbnVtYmVyO1xuICB2YWx1ZTogc3RyaW5nO1xuICBpc0xpbms/OiBib29sZWFuO1xuICBsYW5ndWFnZT86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29kZS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvZGUtdmlldy5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2YtY29kZS12aWV3JyxcbiAgICAnW3N0eWxlLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICBpbXBvcnRzOiBbXG4gICAgSGlnaGxpZ2h0LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RlVmlldyBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2h0dHBDbGllbnQgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3BvcG92ZXJTZXJ2aWNlID0gaW5qZWN0KFBvcG92ZXJTZXJ2aWNlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZGF0YSA9IGlucHV0PENvbnRhaW5lckRhdGE+KCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhlaWdodCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gY29lcmNlQ29tcG9uZW50SGVpZ2h0KHRoaXMuZGF0YSgpPy5oZWlnaHQpO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGVudCA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHZpc2libGVMYW5ndWFnZSA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHN5bnRheExhbmd1YWdlID0gc2lnbmFsPHN0cmluZz4oJycpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVMYW5ndWFnZSgpO1xuICAgIHRoaXMuX3VwZGF0ZU5vdEV4aXN0aW5nRGF0YSh0aGlzLmRhdGEoKSk7XG4gICAgdGhpcy5fdXBkYXRlRXhpc3RpbmdEYXRhKHRoaXMuZGF0YSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUxhbmd1YWdlKCk6IHZvaWQge1xuICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGEoKTtcbiAgICBjb25zdCBsYW5ndWFnZSA9IGRhdGE/Lmxhbmd1YWdlIHx8IHBhcnNlTGFuZ3VhZ2VGcm9tRmlsZUV4dGVuc2lvbihkYXRhPy52YWx1ZSB8fCAnJyk7XG4gICAgdGhpcy5zeW50YXhMYW5ndWFnZS5zZXQocGFyc2VTeW50YXhMYW5ndWFnZShsYW5ndWFnZSkpO1xuICAgIHRoaXMudmlzaWJsZUxhbmd1YWdlLnNldChsYW5ndWFnZSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVOb3RFeGlzdGluZ0RhdGEoZGF0YT86IENvbnRhaW5lckRhdGEpOiB2b2lkIHtcbiAgICBpZiAoZGF0YT8uaXNMaW5rKSB7XG4gICAgICB0aGlzLl9sb2FkQ29kZUJ5TGluayhkYXRhLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVFeGlzdGluZ0RhdGEoZGF0YT86IENvbnRhaW5lckRhdGEpOiB2b2lkIHtcbiAgICBpZiAoIWRhdGE/LmlzTGluaykge1xuICAgICAgdGhpcy5jb250ZW50LnNldChkYXRhPy52YWx1ZSB8fCAnJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfbG9hZENvZGVCeUxpbmsobGluazogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFsaW5rKSByZXR1cm47XG5cbiAgICB0aGlzLl9odHRwQ2xpZW50LmdldChsaW5rLCB7IHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pLnBpcGUoXG4gICAgICB0YWtlKDEpLFxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpLFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBFTVBUWSksXG4gICAgKS5zdWJzY3JpYmUoKGNvbnRlbnQpID0+IHRoaXMuY29udGVudC5zZXQoY29udGVudCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ29weUNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuX2NvcHlDb250ZW50VG9DbGlwYm9hcmQodGhpcy5jb250ZW50KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29weUNvbnRlbnRUb0NsaXBib2FyZChjb250ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb3B5VG9DbGlwYm9hcmQoY29udGVudCkucGlwZShcbiAgICAgIHRha2UoMSksXG4gICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZiksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fcG9wb3ZlclNlcnZpY2Uuc2hvdygnQ29waWVkIScpKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjb2VyY2VDb21wb25lbnRIZWlnaHQodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICB2YWx1ZSA9IE51bWJlcih2YWx1ZSk7XG4gIGlmICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZSArICdweCc7XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuXG5mdW5jdGlvbiBwYXJzZUxhbmd1YWdlRnJvbUZpbGVFeHRlbnNpb24odXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBtYXRjaCA9IHVybC5tYXRjaCgvXFwuKFswLTlhLXpdKykoPzpbXFw/I118JCkvaSk7XG5cbiAgaWYgKG1hdGNoKSB7XG4gICAgbGV0IGV4dGVuc2lvbiA9IG1hdGNoWzFdO1xuICAgIGlmIChleHRlbnNpb24gPT09ICdjc3MnKSB7XG4gICAgICBleHRlbnNpb24gPSAnc2Nzcyc7XG4gICAgfVxuICAgIHJldHVybiBleHRlbnNpb247XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5mdW5jdGlvbiBwYXJzZVN5bnRheExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgcmVzdWx0OiBzdHJpbmc7XG4gIHN3aXRjaCAobGFuZ3VhZ2UpIHtcbiAgICBjYXNlICdqcyc6XG4gICAgY2FzZSAnamF2YXNjcmlwdCc6XG4gICAgICByZXN1bHQgPSAnamF2YXNjcmlwdCc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICd0cyc6XG4gICAgY2FzZSAndHlwZXNjcmlwdCc6XG4gICAgY2FzZSAnYW5ndWxhci10cyc6XG4gICAgICByZXN1bHQgPSAnYW5ndWxhci10cyc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdodG1sJzpcbiAgICBjYXNlICdhbmd1bGFyLWh0bWwnOlxuICAgICAgcmVzdWx0ID0gJ2FuZ3VsYXItaHRtbCc7XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgcmVzdWx0ID0gZXh0cmFjdExhbmd1YWdlKGxhbmd1YWdlKTtcbiAgfVxuICBpZighQVZBSUxBQkxFX0xBTkdVQUdFUy5pbmNsdWRlcyhyZXN1bHQpKSB7XG4gICAgcmVzdWx0ID0gJ3RleHQnO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgbWF0Y2ggPSBsYW5ndWFnZS5tYXRjaCgvXihbXlxcc1xcW10rKS8pO1xuICByZXR1cm4gbWF0Y2ggPyBtYXRjaFsxXS50b0xvd2VyQ2FzZSgpIDogbGFuZ3VhZ2U7XG59XG4iLCI8c3BhbiBjbGFzcz1cImYtY29kZS1sYW5ndWFnZVwiPnt7IHZpc2libGVMYW5ndWFnZSgpIH19PC9zcGFuPlxuPGJ1dHRvbiBjbGFzcz1cImYtY29weS1idXR0b25cIiAoY2xpY2spPVwib25Db3B5Q2xpY2soKVwiPjwvYnV0dG9uPlxuQGlmIChjb250ZW50KCkpIHtcbiAgPGhpZ2hsaWdodCBbY29udGVudF09XCJjb250ZW50KClcIiBbbGFuZ3VhZ2VdPVwic3ludGF4TGFuZ3VhZ2UoKVwiLz5cbn1cblxuIl19","import { of } from 'rxjs';\nexport class MarkCodeFocusedBlocksPostProcessor {\n _window;\n constructor(_window) {\n this._window = _window;\n }\n handle(element) {\n const html = element.innerHTML;\n if (!FOCUS_REGEX.test(html)) {\n return of(element);\n }\n element.innerHTML = html.replace(FOCUS_REGEX, (_match, content) => {\n return `<focus class=\"focused\"><div class=\"inline-focus\">${content}</div></focus>`;\n });\n const focused = element.querySelector('.focused');\n if (focused) {\n this._applyOpacity(element.parentElement);\n }\n return of(element);\n }\n _applyOpacity(element) {\n if (!element.classList.contains('focused')) {\n element.style.color = this._createRgbaString(this._getElementColor(element), 0.5);\n element.childNodes.forEach((child) => {\n if (child.nodeType === Node.ELEMENT_NODE) {\n this._applyOpacity(child);\n }\n });\n }\n else {\n element.style.color = this._createRgbaString(this._getElementColor(element), 1, true);\n }\n }\n _getElementColor(element) {\n return this._window.getComputedStyle(element).color;\n }\n _createRgbaString(color, opacity, isRgb = false) {\n const [r, g, b, a] = this._getRgbValues(color);\n const alpha = Number(a) || 1;\n return isRgb ? `rgb(${r}, ${g}, ${b})` : `rgba(${r}, ${g}, ${b}, ${opacity * alpha})`;\n }\n _getRgbValues(color) {\n return color.match(/\\d+/g);\n }\n}\nconst FOCUS_REGEX = /ƒƒƒ([\\s\\S]*?)¢¢¢/g;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay1jb2RlLWZvY3VzZWQtYmxvY2tzLnBvc3QtcHJvY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9tYXJrLWNvZGUtZm9jdXNlZC1ibG9ja3MucG9zdC1wcm9jZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0QyxNQUFNLE9BQU8sa0NBQWtDO0lBR25DO0lBRFYsWUFDVSxPQUFlO1FBQWYsWUFBTyxHQUFQLE9BQU8sQ0FBUTtJQUV6QixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQW9CO1FBQ2hDLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUM1QixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQixDQUFDO1FBRUQsT0FBTyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNoRSxPQUFPLG9EQUFvRCxPQUFPLGdCQUFnQixDQUFDO1FBQ3JGLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBNEIsQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQW9CO1FBQ3hDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbEYsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDbkMsSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDekMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFvQixDQUFDLENBQUM7Z0JBQzNDLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDeEYsQ0FBQztJQUNILENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxPQUFvQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3RELENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUFhLEVBQUUsT0FBZSxFQUFFLEtBQUssR0FBRyxLQUFLO1FBQ3JFLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUM7SUFDeEYsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFhO1FBQ2pDLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUUsQ0FBQztJQUM5QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBNYXJrQ29kZUZvY3VzZWRCbG9ja3NQb3N0UHJvY2Vzc29yIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF93aW5kb3c6IFdpbmRvdyxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIGNvbnN0IGh0bWwgPSBlbGVtZW50LmlubmVySFRNTDtcbiAgICBpZiAoIUZPQ1VTX1JFR0VYLnRlc3QoaHRtbCkpIHtcbiAgICAgIHJldHVybiBvZihlbGVtZW50KTtcbiAgICB9XG5cbiAgICBlbGVtZW50LmlubmVySFRNTCA9IGh0bWwucmVwbGFjZShGT0NVU19SRUdFWCwgKF9tYXRjaCwgY29udGVudCkgPT4ge1xuICAgICAgcmV0dXJuIGA8Zm9jdXMgY2xhc3M9XCJmb2N1c2VkXCI+PGRpdiBjbGFzcz1cImlubGluZS1mb2N1c1wiPiR7Y29udGVudH08L2Rpdj48L2ZvY3VzPmA7XG4gICAgfSk7XG5cbiAgICBjb25zdCBmb2N1c2VkID0gZWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuZm9jdXNlZCcpO1xuICAgIGlmIChmb2N1c2VkKSB7XG4gICAgICB0aGlzLl9hcHBseU9wYWNpdHkoZWxlbWVudC5wYXJlbnRFbGVtZW50IGFzIEhUTUxFbGVtZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gb2YoZWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF9hcHBseU9wYWNpdHkoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAoIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdmb2N1c2VkJykpIHtcbiAgICAgIGVsZW1lbnQuc3R5bGUuY29sb3IgPSB0aGlzLl9jcmVhdGVSZ2JhU3RyaW5nKHRoaXMuX2dldEVsZW1lbnRDb2xvcihlbGVtZW50KSwgMC41KTtcbiAgICAgIGVsZW1lbnQuY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgICBpZiAoY2hpbGQubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgICAgICAgdGhpcy5fYXBwbHlPcGFjaXR5KGNoaWxkIGFzIEhUTUxFbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVsZW1lbnQuc3R5bGUuY29sb3IgPSB0aGlzLl9jcmVhdGVSZ2JhU3RyaW5nKHRoaXMuX2dldEVsZW1lbnRDb2xvcihlbGVtZW50KSwgMSwgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RWxlbWVudENvbG9yKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkuY29sb3I7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVSZ2JhU3RyaW5nKGNvbG9yOiBzdHJpbmcsIG9wYWNpdHk6IG51bWJlciwgaXNSZ2IgPSBmYWxzZSk6IHN0cmluZyB7XG4gICAgY29uc3QgW3IsIGcsIGIsIGFdID0gdGhpcy5fZ2V0UmdiVmFsdWVzKGNvbG9yKTtcbiAgICBjb25zdCBhbHBoYSA9IE51bWJlcihhKSB8fCAxO1xuICAgIHJldHVybiBpc1JnYiA/IGByZ2IoJHtyfSwgJHtnfSwgJHtifSlgIDogYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHtvcGFjaXR5ICogYWxwaGF9KWA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRSZ2JWYWx1ZXMoY29sb3I6IHN0cmluZyk6IFJlZ0V4cE1hdGNoQXJyYXkge1xuICAgIHJldHVybiBjb2xvci5tYXRjaCgvXFxkKy9nKSE7XG4gIH1cbn1cblxuY29uc3QgRk9DVVNfUkVHRVggPSAvxpLGksaSKFtcXHNcXFNdKj8pwqLCosKiL2c7XG4iXX0=","export const UNIVERSAL_THEME = {\n name: 'universal',\n colors: {\n 'editor.background': 'transparent',\n 'editor.foreground': 'var(--code-view-text-color)',\n },\n settings: [\n {\n scope: ['comment', 'punctuation.definition.comment', 'string.comment'],\n settings: {\n foreground: 'var(--token-comment)',\n },\n },\n {\n scope: ['constant', 'entity.name.constant', 'variable.other.constant', 'variable.other.enummember', 'variable.language'],\n settings: {\n foreground: 'var(--token-number)',\n },\n },\n {\n scope: ['entity', 'entity.name'],\n settings: {\n foreground: 'var(--token-tag)',\n },\n },\n {\n scope: 'variable.parameter.function',\n settings: {\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: 'entity.name.tag',\n settings: {\n foreground: 'var(--token-tag)',\n },\n },\n {\n scope: 'keyword',\n settings: {\n foreground: 'var(--token-keyword)',\n },\n },\n {\n scope: ['storage', 'storage.type'],\n settings: {\n foreground: 'var(--token-keyword)',\n },\n },\n {\n scope: ['storage.modifier.package', 'storage.modifier.import', 'storage.type.java'],\n settings: {\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: ['string', 'punctuation.definition.string', 'string punctuation.section.embedded source'],\n settings: {\n foreground: 'var(--token-string)',\n },\n },\n {\n scope: 'support',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'meta.property-name',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'variable',\n settings: {\n foreground: 'var(--token-variable)',\n },\n },\n {\n scope: 'variable.other',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: [\n 'invalid.broken',\n 'invalid.deprecated',\n 'invalid.illegal',\n 'invalid.unimplemented',\n ],\n settings: {\n fontStyle: 'italic',\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: 'carriage-return',\n settings: {\n fontStyle: 'italic underline',\n foreground: 'var(--background-color)',\n background: 'var(--token-keyword)',\n },\n },\n {\n scope: 'message.error',\n settings: {\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: 'string variable',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: ['source.regexp', 'string.regexp'],\n settings: {\n foreground: 'var(--token-interpolation)',\n },\n },\n {\n scope: [\n 'string.regexp.character-class',\n 'string.regexp constant.character.escape',\n 'string.regexp source.ruby.embedded',\n 'string.regexp string.regexp.arbitrary-repitition',\n ],\n settings: {\n foreground: 'var(--token-interpolation)',\n },\n },\n {\n scope: 'string.regexp constant.character.escape',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-attr-value)',\n },\n },\n {\n scope: ['support.constant', 'support.variable', 'meta.module-reference'],\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'punctuation.definition.list.begin.markdown',\n settings: {\n foreground: 'var(--token-variable)',\n },\n },\n {\n scope: ['markup.heading', 'markup.heading entity.name'],\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'markup.quote',\n settings: {\n foreground: 'var(--token-attr-value)',\n },\n },\n {\n scope: 'markup.italic',\n settings: {\n fontStyle: 'italic',\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: 'markup.bold',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: 'markup.underline',\n settings: {\n fontStyle: 'underline',\n },\n },\n {\n scope: 'markup.strikethrough',\n settings: {\n fontStyle: 'strikethrough',\n },\n },\n {\n scope: 'markup.inline.raw',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: ['markup.deleted', 'meta.diff.header.from-file', 'punctuation.definition.deleted'],\n settings: {\n background: 'var(--danger-3)',\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: ['markup.inserted', 'meta.diff.header.to-file', 'punctuation.definition.inserted'],\n settings: {\n background: 'var(--success-3)',\n foreground: 'var(--token-attr-value)',\n },\n },\n {\n scope: ['markup.changed', 'punctuation.definition.changed'],\n settings: {\n background: 'var(--warning-3)',\n foreground: 'var(--token-variable)',\n },\n },\n {\n scope: ['markup.ignored', 'markup.untracked'],\n settings: {\n background: 'var(--token-function)',\n foreground: 'var(--alt-background)',\n },\n },\n {\n scope: 'meta.diff.range',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-attr-name)',\n },\n },\n {\n scope: 'meta.diff.header',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'meta.separator',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'meta.output',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: [\n 'brackethighlighter.tag',\n 'brackethighlighter.curly',\n 'brackethighlighter.round',\n 'brackethighlighter.square',\n 'brackethighlighter.angle',\n 'brackethighlighter.quote',\n ],\n settings: {\n foreground: 'var(--gray-1)',\n },\n },\n {\n scope: 'brackethighlighter.unmatched',\n settings: {\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: ['constant.other.reference.link', 'string.other.link'],\n settings: {\n fontStyle: 'underline',\n foreground: 'var(--token-interpolation)',\n },\n },\n ],\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaGlnaGxpZ2h0L3RoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBZTtJQUN6QyxJQUFJLEVBQUUsV0FBVztJQUNqQixNQUFNLEVBQUU7UUFDTixtQkFBbUIsRUFBRSxhQUFhO1FBQ2xDLG1CQUFtQixFQUFFLDZCQUE2QjtLQUNuRDtJQUNELFFBQVEsRUFBRTtRQUNSO1lBQ0UsS0FBSyxFQUFFLENBQUMsU0FBUyxFQUFFLGdDQUFnQyxFQUFFLGdCQUFnQixDQUFDO1lBQ3RFLFFBQVEsRUFBRTtnQkFDUixVQUFVLEVBQUUsc0JBQXNCO2FBQ25DO1NBQ0Y7UUFDRDtZQUNFLEtBQUssRUFBRSxDQUFDLFVBQVUsRUFBRSxzQkFBc0IsRUFBRSx5QkFBeUIsRUFBRSwyQkFBMkIsRUFBRSxtQkFBbUIsQ0FBQztZQUN4SCxRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLHFCQUFxQjthQUNsQztTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDO1lBQ2hDLFFBQVEsRUFBRTtnQkFDUixVQUFVLEVBQUUsa0JBQWtCO2FBQy9CO1NBQ0Y7UUFDRDtZQUNFLEtBQUssRUFBRSw2QkFBNkI7WUFDcEMsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLGlCQUFpQjtZQUN4QixRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLGtCQUFrQjthQUMvQjtTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsU0FBUztZQUNoQixRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLHNCQUFzQjthQUNuQztTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDO1lBQ2xDLFFBQVEs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O2dCQUNqQixVQUFVLEVBQUUsd0JBQXdCO2FBQ3JDO1NBQ0Y7UUFDRDtZQUNFLEtBQUssRUFBRSxrQkFBa0I7WUFDekIsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRSx1QkFBdUI7YUFDcEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLGdCQUFnQjtZQUN2QixRQUFRLEVBQUU7Z0JBQ1IsU0FBUyxFQUFFLE1BQU07Z0JBQ2pCLFVBQVUsRUFBRSx1QkFBdUI7YUFDcEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLGFBQWE7WUFDcEIsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRSx1QkFBdUI7YUFDcEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFO2dCQUNMLHdCQUF3QjtnQkFDeEIsMEJBQTBCO2dCQUMxQiwwQkFBMEI7Z0JBQzFCLDJCQUEyQjtnQkFDM0IsMEJBQTBCO2dCQUMxQiwwQkFBMEI7YUFDM0I7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLGVBQWU7YUFDNUI7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLDhCQUE4QjtZQUNyQyxRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLGlCQUFpQjthQUM5QjtTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsQ0FBQywrQkFBK0IsRUFBRSxtQkFBbUIsQ0FBQztZQUM3RCxRQUFRLEVBQUU7Z0JBQ1IsU0FBUyxFQUFFLFdBQVc7Z0JBQ3RCLFVBQVUsRUFBRSw0QkFBNEI7YUFDekM7U0FDRjtLQUNGO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRoZW1lSW5wdXQgfSBmcm9tICdAc2hpa2lqcy90eXBlcydcblxuZXhwb3J0IGNvbnN0IFVOSVZFUlNBTF9USEVNRTogVGhlbWVJbnB1dCA9IHtcbiAgbmFtZTogJ3VuaXZlcnNhbCcsXG4gIGNvbG9yczoge1xuICAgICdlZGl0b3IuYmFja2dyb3VuZCc6ICd0cmFuc3BhcmVudCcsXG4gICAgJ2VkaXRvci5mb3JlZ3JvdW5kJzogJ3ZhcigtLWNvZGUtdmlldy10ZXh0LWNvbG9yKScsXG4gIH0sXG4gIHNldHRpbmdzOiBbXG4gICAge1xuICAgICAgc2NvcGU6IFsnY29tbWVudCcsICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmNvbW1lbnQnLCAnc3RyaW5nLmNvbW1lbnQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1jb21tZW50KScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnY29uc3RhbnQnLCAnZW50aXR5Lm5hbWUuY29uc3RhbnQnLCAndmFyaWFibGUub3RoZXIuY29uc3RhbnQnLCAndmFyaWFibGUub3RoZXIuZW51bW1lbWJlcicsICd2YXJpYWJsZS5sYW5ndWFnZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLW51bWJlciknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiBbJ2VudGl0eScsICdlbnRpdHkubmFtZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXRhZyknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAndmFyaWFibGUucGFyYW1ldGVyLmZ1bmN0aW9uJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS1wcmltYXJ5LXRleHQpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ2VudGl0eS5uYW1lLnRhZycsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tdGFnKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdrZXl3b3JkJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1rZXl3b3JkKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3RvcmFnZScsICdzdG9yYWdlLnR5cGUnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1rZXl3b3JkKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3RvcmFnZS5tb2RpZmllci5wYWNrYWdlJywgJ3N0b3JhZ2UubW9kaWZpZXIuaW1wb3J0JywgJ3N0b3JhZ2UudHlwZS5qYXZhJ10sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tcHJpbWFyeS10ZXh0KScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3RyaW5nJywgJ3B1bmN0dWF0aW9uLmRlZmluaXRpb24uc3RyaW5nJywgJ3N0cmluZyBwdW5jdHVhdGlvbi5zZWN0aW9uLmVtYmVkZGVkIHNvdXJjZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXN0cmluZyknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnc3VwcG9ydCcsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ21ldGEucHJvcGVydHktbmFtZScsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ3ZhcmlhYmxlJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi12YXJpYWJsZSknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAndmFyaWFibGUub3RoZXInLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFtcbiAgICAgICAgJ2ludmFsaWQuYnJva2VuJyxcbiAgICAgICAgJ2ludmFsaWQuZGVwcmVjYXRlZCcsXG4gICAgICAgICdpbnZhbGlkLmlsbGVnYWwnLFxuICAgICAgICAnaW52YWxpZC51bmltcGxlbWVudGVkJyxcbiAgICAgIF0sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdpdGFsaWMnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tZGFuZ2VyLTIpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ2NhcnJpYWdlLXJldHVybicsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdpdGFsaWMgdW5kZXJsaW5lJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLWJhY2tncm91bmQtY29sb3IpJyxcbiAgICAgICAgYmFja2dyb3VuZDogJ3ZhcigtLXRva2VuLWtleXdvcmQpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ21lc3NhZ2UuZXJyb3InLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLWRhbmdlci0yKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdzdHJpbmcgdmFyaWFibGUnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc291cmNlLnJlZ2V4cCcsICdzdHJpbmcucmVnZXhwJ10sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4taW50ZXJwb2xhdGlvbiknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiBbXG4gICAgICAgICdzdHJpbmcucmVnZXhwLmNoYXJhY3Rlci1jbGFzcycsXG4gICAgICAgICdzdHJpbmcucmVnZXhwIGNvbnN0YW50LmNoYXJhY3Rlci5lc2NhcGUnLFxuICAgICAgICAnc3RyaW5nLnJlZ2V4cCBzb3VyY2UucnVieS5lbWJlZGRlZCcsXG4gICAgICAgICdzdHJpbmcucmVnZXhwIHN0cmluZy5yZWdleHAuYXJiaXRyYXJ5LXJlcGl0aXRpb24nLFxuICAgICAgXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1pbnRlcnBvbGF0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdzdHJpbmcucmVnZXhwIGNvbnN0YW50LmNoYXJhY3Rlci5lc2NhcGUnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9udFN0eWxlOiAnYm9sZCcsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1hdHRyLXZhbHVlKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3VwcG9ydC5jb25zdGFudCcsICdzdXBwb3J0LnZhcmlhYmxlJywgJ21ldGEubW9kdWxlLXJlZmVyZW5jZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmxpc3QuYmVnaW4ubWFya2Rvd24nLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXZhcmlhYmxlKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnbWFya3VwLmhlYWRpbmcnLCAnbWFya3VwLmhlYWRpbmcgZW50aXR5Lm5hbWUnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvbnRTdHlsZTogJ2JvbGQnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ21hcmt1cC5xdW90ZScsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tYXR0ci12YWx1ZSknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWFya3VwLml0YWxpYycsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdpdGFsaWMnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tcHJpbWFyeS10ZXh0KScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdtYXJrdXAuYm9sZCcsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdib2xkJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXByaW1hcnktdGV4dCknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWFya3VwLnVuZGVybGluZScsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICd1bmRlcmxpbmUnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWFya3VwLnN0cmlrZXRocm91Z2gnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9udFN0eWxlOiAnc3RyaWtldGhyb3VnaCcsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdtYXJrdXAuaW5saW5lLnJhdycsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogWydtYXJrdXAuZGVsZXRlZCcsICdtZXRhLmRpZmYuaGVhZGVyLmZyb20tZmlsZScsICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmRlbGV0ZWQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1kYW5nZXItMyknLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tZGFuZ2VyLTIpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogWydtYXJrdXAuaW5zZXJ0ZWQnLCAnbWV0YS5kaWZmLmhlYWRlci50by1maWxlJywgJ3B1bmN0dWF0aW9uLmRlZmluaXRpb24uaW5zZXJ0ZWQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1zdWNjZXNzLTMpJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWF0dHItdmFsdWUpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogWydtYXJrdXAuY2hhbmdlZCcsICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmNoYW5nZWQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS13YXJuaW5nLTMpJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXZhcmlhYmxlKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnbWFya3VwLmlnbm9yZWQnLCAnbWFya3VwLnVudHJhY2tlZCddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgYmFja2dyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS1hbHQtYmFja2dyb3VuZCknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWV0YS5kaWZmLnJhbmdlJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvbnRTdHlsZTogJ2JvbGQnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tYXR0ci1uYW1lKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdtZXRhLmRpZmYuaGVhZGVyJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1mdW5jdGlvbiknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWV0YS5zZXBhcmF0b3InLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9udFN0eWxlOiAnYm9sZCcsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1mdW5jdGlvbiknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWV0YS5vdXRwdXQnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFtcbiAgICAgICAgJ2JyYWNrZXRoaWdobGlnaHRlci50YWcnLFxuICAgICAgICAnYnJhY2tldGhpZ2hsaWdodGVyLmN1cmx5JyxcbiAgICAgICAgJ2JyYWNrZXRoaWdobGlnaHRlci5yb3VuZCcsXG4gICAgICAgICdicmFja2V0aGlnaGxpZ2h0ZXIuc3F1YXJlJyxcbiAgICAgICAgJ2JyYWNrZXRoaWdobGlnaHRlci5hbmdsZScsXG4gICAgICAgICdicmFja2V0aGlnaGxpZ2h0ZXIucXVvdGUnLFxuICAgICAgXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS1ncmF5LTEpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ2JyYWNrZXRoaWdobGlnaHRlci51bm1hdGNoZWQnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLWRhbmdlci0yKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnY29uc3RhbnQub3RoZXIucmVmZXJlbmNlLmxpbmsnLCAnc3RyaW5nLm90aGVyLmxpbmsnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvbnRTdHlsZTogJ3VuZGVybGluZScsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1pbnRlcnBvbGF0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gIF0sXG59XG4iXX0=","export const AVAILABLE_LANGUAGES = [\n 'javascript',\n 'typescript',\n 'angular-html',\n 'angular-ts',\n 'shell',\n 'html',\n 'bash',\n 'css',\n 'scss',\n 'markdown',\n 'text',\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9sYW5ndWFnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUc7SUFDakMsWUFBWTtJQUNaLFlBQVk7SUFDWixjQUFjO0lBQ2QsWUFBWTtJQUNaLE9BQU87SUFDUCxNQUFNO0lBQ04sTUFBTTtJQUNOLEtBQUs7SUFDTCxNQUFNO0lBQ04sVUFBVTtJQUNWLE1BQU07Q0FDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFWQUlMQUJMRV9MQU5HVUFHRVMgPSBbXG4gICdqYXZhc2NyaXB0JyxcbiAgJ3R5cGVzY3JpcHQnLFxuICAnYW5ndWxhci1odG1sJyxcbiAgJ2FuZ3VsYXItdHMnLFxuICAnc2hlbGwnLFxuICAnaHRtbCcsXG4gICdiYXNoJyxcbiAgJ2NzcycsXG4gICdzY3NzJyxcbiAgJ21hcmtkb3duJyxcbiAgJ3RleHQnLFxuXTtcbiJdfQ==","import { inject, Injectable } from '@angular/core';\nimport { defer, from, Observable, of, switchMap } from 'rxjs';\nimport { MarkCodeFocusedBlocksPostProcessor } from './mark-code-focused-blocks.post-processor';\nimport { createHighlighter } from 'shiki';\nimport { UNIVERSAL_THEME } from './theme';\nimport { catchError, shareReplay } from 'rxjs/operators';\nimport { AVAILABLE_LANGUAGES } from './languages';\nimport { IS_BROWSER_PLATFORM, WINDOW } from '../common';\nimport * as i0 from \"@angular/core\";\nexport class HighlightService {\n /**\n * Service for highlighting code blocks using Shiki.\n * It supports syntax highlighting and post-processing for focused blocks.\n */\n _isBrowser = inject(IS_BROWSER_PLATFORM);\n _window = inject(WINDOW);\n _highlighter$ = defer(() => from(createHighlighter({ themes: [UNIVERSAL_THEME], langs: AVAILABLE_LANGUAGES }))).pipe(shareReplay(1));\n highlight(element, lang, content) {\n if (!this._isBrowser) {\n console.warn('[HighlightService] Skipping highlight on server.');\n return of(element);\n }\n return this._highlightCodeBlock(element, lang, content).pipe(switchMap((x) => this._postProcess(x)), catchError((err) => {\n console.error('[HighlightService] Failed to highlight:', err);\n return of(element);\n }));\n }\n _highlightCodeBlock(element, lang, content) {\n return this._highlighter$.pipe(switchMap((highlighter) => this._renderCode(element, highlighter, lang, content)));\n }\n _renderCode(element, highlighter, lang, content) {\n return new Observable((observer) => {\n const processedContent = this._preprocessFocus(content);\n element.innerHTML = highlighter.codeToHtml(processedContent, { lang, theme: 'universal', defaultColor: false });\n requestAnimationFrame(() => {\n observer.next(element);\n observer.complete();\n });\n });\n }\n _preprocessFocus(code) {\n return code.replace(/\\|\\:\\|([\\s\\S]*?)\\|\\:\\|/g, (_, p1) => `ƒƒƒ${p1}¢¢¢`);\n }\n _postProcess(element) {\n return of(element).pipe(switchMap((x) => new MarkCodeFocusedBlocksPostProcessor(this._window).handle(x)));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HighlightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HighlightService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HighlightService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaGlnaGxpZ2h0L2hpZ2hsaWdodC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9GLE9BQU8sRUFBaUMsaUJBQWlCLEVBQXNCLE1BQU0sT0FBTyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQzs7QUFPeEQsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQjs7O09BR0c7SUFDYyxVQUFVLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDekMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixhQUFhLEdBQTRCLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FDbkUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxDQUNuRixDQUFDLElBQUksQ0FDSixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVLLFNBQVMsQ0FDZCxPQUFvQixFQUFFLElBQVksRUFBRSxPQUFlO1FBRW5ELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO1lBQ2pFLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDMUQsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3RDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMseUNBQXlDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDOUQsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FDekIsT0FBb0IsRUFBRSxJQUFZLEVBQUUsT0FBZTtRQUVuRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUM1QixTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FDbEYsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXLENBQ2pCLE9BQW9CLEVBQUUsV0FBd0IsRUFBRSxJQUFZLEVBQUUsT0FBZTtRQUU3RSxPQUFPLElBQUksVUFBVSxDQUFjLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDOUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDeEQsT0FBTyxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDaEgscUJBQXFCLENBQUMsR0FBRyxFQUFFO2dCQUN6QixRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN2QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxJQUFZO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU8sWUFBWSxDQUFDLE9BQW9CO1FBQ3ZDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDckIsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGtDQUFrQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDakYsQ0FBQztJQUNKLENBQUM7dUdBMURVLGdCQUFnQjsyR0FBaEIsZ0JBQWdCLGNBRmYsTUFBTTs7MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZGVmZXIsIGZyb20sIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1hcmtDb2RlRm9jdXNlZEJsb2Nrc1Bvc3RQcm9jZXNzb3IgfSBmcm9tICcuL21hcmstY29kZS1mb2N1c2VkLWJsb2Nrcy5wb3N0LXByb2Nlc3Nvcic7XG5pbXBvcnQgeyBCdW5kbGVkTGFuZ3VhZ2UsIEJ1bmRsZWRUaGVtZSwgY3JlYXRlSGlnaGxpZ2h0ZXIsIEhpZ2hsaWdodGVyR2VuZXJpYyB9IGZyb20gJ3NoaWtpJztcbmltcG9ydCB7IFVOSVZFUlNBTF9USEVNRSB9IGZyb20gJy4vdGhlbWUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBVkFJTEFCTEVfTEFOR1VBR0VTIH0gZnJvbSAnLi9sYW5ndWFnZXMnO1xuaW1wb3J0IHsgSVNfQlJPV1NFUl9QTEFURk9STSwgV0lORE9XIH0gZnJvbSAnLi4vY29tbW9uJztcblxudHlwZSBIaWdobGlnaHRlciA9IEhpZ2hsaWdodGVyR2VuZXJpYzxCdW5kbGVkTGFuZ3VhZ2UsIEJ1bmRsZWRUaGVtZT47XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIFNlcnZpY2UgZm9yIGhpZ2hsaWdodGluZyBjb2RlIGJsb2NrcyB1c2luZyBTaGlraS5cbiAgICogSXQgc3VwcG9ydHMgc3ludGF4IGhpZ2hsaWdodGluZyBhbmQgcG9zdC1wcm9jZXNzaW5nIGZvciBmb2N1c2VkIGJsb2Nrcy5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX2lzQnJvd3NlciA9IGluamVjdChJU19CUk9XU0VSX1BMQVRGT1JNKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2hpZ2hsaWdodGVyJDogT2JzZXJ2YWJsZTxIaWdobGlnaHRlcj4gPSBkZWZlcigoKSA9PlxuICAgIGZyb20oY3JlYXRlSGlnaGxpZ2h0ZXIoeyB0aGVtZXM6IFtVTklWRVJTQUxfVEhFTUVdLCBsYW5nczogQVZBSUxBQkxFX0xBTkdVQUdFUyB9KSksXG4gICkucGlwZShcbiAgICBzaGFyZVJlcGxheSgxKSxcbiAgKTtcblxuICBwdWJsaWMgaGlnaGxpZ2h0KFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBsYW5nOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZyxcbiAgKTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIGlmICghdGhpcy5faXNCcm93c2VyKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1tIaWdobGlnaHRTZXJ2aWNlXSBTa2lwcGluZyBoaWdobGlnaHQgb24gc2VydmVyLicpO1xuICAgICAgcmV0dXJuIG9mKGVsZW1lbnQpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5faGlnaGxpZ2h0Q29kZUJsb2NrKGVsZW1lbnQsIGxhbmcsIGNvbnRlbnQpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IHRoaXMuX3Bvc3RQcm9jZXNzKHgpKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdbSGlnaGxpZ2h0U2VydmljZV0gRmFpbGVkIHRvIGhpZ2hsaWdodDonLCBlcnIpO1xuICAgICAgICByZXR1cm4gb2YoZWxlbWVudCk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGlnaGxpZ2h0Q29kZUJsb2NrKFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBsYW5nOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZyxcbiAgKTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIHJldHVybiB0aGlzLl9oaWdobGlnaHRlciQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoaGlnaGxpZ2h0ZXIpID0+IHRoaXMuX3JlbmRlckNvZGUoZWxlbWVudCwgaGlnaGxpZ2h0ZXIsIGxhbmcsIGNvbnRlbnQpKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyQ29kZShcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCwgaGlnaGxpZ2h0ZXI6IEhpZ2hsaWdodGVyLCBsYW5nOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZyxcbiAgKTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4oKG9ic2VydmVyKSA9PiB7XG4gICAgICBjb25zdCBwcm9jZXNzZWRDb250ZW50ID0gdGhpcy5fcHJlcHJvY2Vzc0ZvY3VzKGNvbnRlbnQpO1xuICAgICAgZWxlbWVudC5pbm5lckhUTUwgPSBoaWdobGlnaHRlci5jb2RlVG9IdG1sKHByb2Nlc3NlZENvbnRlbnQsIHsgbGFuZywgdGhlbWU6ICd1bml2ZXJzYWwnLCBkZWZhdWx0Q29sb3I6IGZhbHNlIH0pO1xuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChlbGVtZW50KTtcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfcHJlcHJvY2Vzc0ZvY3VzKGNvZGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNvZGUucmVwbGFjZSgvXFx8XFw6XFx8KFtcXHNcXFNdKj8pXFx8XFw6XFx8L2csIChfLCBwMSkgPT4gYMaSxpLGkiR7cDF9wqLCosKiYCk7XG4gIH1cblxuICBwcml2YXRlIF9wb3N0UHJvY2VzcyhlbGVtZW50OiBIVE1MRWxlbWVudCk6IE9ic2VydmFibGU8SFRNTEVsZW1lbnQ+IHtcbiAgICByZXR1cm4gb2YoZWxlbWVudCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4gbmV3IE1hcmtDb2RlRm9jdXNlZEJsb2Nrc1Bvc3RQcm9jZXNzb3IodGhpcy5fd2luZG93KS5oYW5kbGUoeCkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, signal } from '@angular/core';\nimport { EParsedContainerType } from '../../../documentation-page';\nimport { ExternalComponent } from '../external-component';\nimport { CodeView } from '../../../highlight';\nimport * as i0 from \"@angular/core\";\nexport class CodeGroup {\n data = signal([], ...(ngDevMode ? [{ debugName: \"data\" }] : []));\n index = signal(0, ...(ngDevMode ? [{ debugName: \"index\" }] : []));\n containerType = EParsedContainerType;\n tabClick(index) {\n this.index.set(index);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: CodeGroup, isStandalone: true, selector: \"code-group\", host: { classAttribute: \"f-code-group\" }, ngImport: i0, template: \"@let views = data();\\n\\n@if (views.length > 1) {\\n <div class=\\\"f-code-group-tabs\\\">\\n @for (data of views; track data) {\\n <button class=\\\"f-tab-button\\\" [class.active]=\\\"$index === index()\\\" (click)=\\\"tabClick($index)\\\">\\n {{ data.tab }}\\n </button>\\n }\\n </div>\\n}\\n\\n<div class=\\\"f-code-group-body\\\">\\n @for (data of views; track data) {\\n\\n @let isExampleView = data.type === containerType.EXAMPLE;\\n @let display = $index === index() ? 'block' : 'none';\\n\\n @if (isExampleView) {\\n <external-component [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n } @else {\\n <code-view [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n }\\n }\\n</div>\\n\", dependencies: [{ kind: \"component\", type: ExternalComponent, selector: \"external-component\", inputs: [\"data\"] }, { kind: \"component\", type: CodeView, selector: \"code-view\", inputs: [\"data\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeGroup, decorators: [{\n type: Component,\n args: [{ selector: 'code-group', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'f-code-group',\n }, imports: [\n ExternalComponent,\n CodeView,\n ], template: \"@let views = data();\\n\\n@if (views.length > 1) {\\n <div class=\\\"f-code-group-tabs\\\">\\n @for (data of views; track data) {\\n <button class=\\\"f-tab-button\\\" [class.active]=\\\"$index === index()\\\" (click)=\\\"tabClick($index)\\\">\\n {{ data.tab }}\\n </button>\\n }\\n </div>\\n}\\n\\n<div class=\\\"f-code-group-body\\\">\\n @for (data of views; track data) {\\n\\n @let isExampleView = data.type === containerType.EXAMPLE;\\n @let display = $index === index() ? 'block' : 'none';\\n\\n @if (isExampleView) {\\n <external-component [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n } @else {\\n <code-view [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n }\\n }\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9jb2RlLWdyb3VwL2NvZGUtZ3JvdXAudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvY29kZS1ncm91cC9jb2RlLWdyb3VwLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLG9CQUFvQixFQUF3QixNQUFNLDZCQUE2QixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFlOUMsTUFBTSxPQUFPLFNBQVM7SUFDSixJQUFJLEdBQUcsTUFBTSxDQUF5QixFQUFFLGdEQUFDLENBQUM7SUFFdkMsS0FBSyxHQUFHLE1BQU0sQ0FBUyxDQUFDLGlEQUFDLENBQUM7SUFDMUIsYUFBYSxHQUFHLG9CQUFvQixDQUFDO0lBRTlDLFFBQVEsQ0FBQyxLQUFhO1FBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7dUdBUlUsU0FBUzsyRkFBVCxTQUFTLGdIQ2xCdEIsMHJCQXlCQSw0Q0RYSSxpQkFBaUIsaUZBQ2pCLFFBQVE7OzJGQUdDLFNBQVM7a0JBYnJCLFNBQVM7K0JBQ0UsWUFBWSxjQUVWLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsY0FBYztxQkFDdEIsV0FDUTt3QkFDUCxpQkFBaUI7d0JBQ2pCLFFBQVE7cUJBQ1QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVQYXJzZWRDb250YWluZXJUeXBlLCBJUGFyc2VkQ29udGFpbmVyRGF0YSB9IGZyb20gJy4uLy4uLy4uL2RvY3VtZW50YXRpb24tcGFnZSc7XG5pbXBvcnQgeyBFeHRlcm5hbENvbXBvbmVudCB9IGZyb20gJy4uL2V4dGVybmFsLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2RlVmlldyB9IGZyb20gJy4uLy4uLy4uL2hpZ2hsaWdodCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NvZGUtZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29kZS1ncm91cC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2YtY29kZS1ncm91cCcsXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBFeHRlcm5hbENvbXBvbmVudCxcbiAgICBDb2RlVmlldyxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZUdyb3VwIHtcbiAgcHVibGljIHJlYWRvbmx5IGRhdGEgPSBzaWduYWw8SVBhcnNlZENvbnRhaW5lckRhdGFbXT4oW10pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBpbmRleCA9IHNpZ25hbDxudW1iZXI+KDApO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGFpbmVyVHlwZSA9IEVQYXJzZWRDb250YWluZXJUeXBlO1xuXG4gIHByb3RlY3RlZCB0YWJDbGljayhpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5pbmRleC5zZXQoaW5kZXgpO1xuICB9XG59XG4iLCJAbGV0IHZpZXdzID0gZGF0YSgpO1xuXG5AaWYgKHZpZXdzLmxlbmd0aCA+IDEpIHtcbiAgPGRpdiBjbGFzcz1cImYtY29kZS1ncm91cC10YWJzXCI+XG4gICAgQGZvciAoZGF0YSBvZiB2aWV3czsgdHJhY2sgZGF0YSkge1xuICAgICAgPGJ1dHRvbiBjbGFzcz1cImYtdGFiLWJ1dHRvblwiIFtjbGFzcy5hY3RpdmVdPVwiJGluZGV4ID09PSBpbmRleCgpXCIgKGNsaWNrKT1cInRhYkNsaWNrKCRpbmRleClcIj5cbiAgICAgICAge3sgZGF0YS50YWIgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIH1cbiAgPC9kaXY+XG59XG5cbjxkaXYgY2xhc3M9XCJmLWNvZGUtZ3JvdXAtYm9keVwiPlxuICBAZm9yIChkYXRhIG9mIHZpZXdzOyB0cmFjayBkYXRhKSB7XG5cbiAgICBAbGV0IGlzRXhhbXBsZVZpZXcgPSBkYXRhLnR5cGUgPT09IGNvbnRhaW5lclR5cGUuRVhBTVBMRTtcbiAgICBAbGV0IGRpc3BsYXkgPSAkaW5kZXggPT09IGluZGV4KCkgPyAnYmxvY2snIDogJ25vbmUnO1xuXG4gICAgQGlmIChpc0V4YW1wbGVWaWV3KSB7XG4gICAgICA8ZXh0ZXJuYWwtY29tcG9uZW50IFtzdHlsZS5kaXNwbGF5XT1cImRpc3BsYXlcIiBbZGF0YV09XCJkYXRhXCIgLz5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxjb2RlLXZpZXcgW3N0eWxlLmRpc3BsYXldPVwiZGlzcGxheVwiIFtkYXRhXT1cImRhdGFcIiAvPlxuICAgIH1cbiAgfVxuPC9kaXY+XG4iXX0=","export class PreviewCardBase {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1jYXJkLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvcHJldmlldy1ncm91cC9jb21wb25lbnRzL3ByZXZpZXctY2FyZC9wcmV2aWV3LWNhcmQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQWdCLGVBQWU7Q0FPcEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgYWJzdHJhY3QgY2xhc3MgUHJldmlld0NhcmRCYXNlIHtcblxuICBwdWJsaWMgYWJzdHJhY3QgZGF0ZT86IERhdGU7XG5cbiAgcHVibGljIGFic3RyYWN0IGZpbHRlcktleT86IHN0cmluZztcblxuICBwdWJsaWMgYWJzdHJhY3QgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xufVxuIl19","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class PreviewGroupService {\n _cards = [];\n _originalOrder = null;\n add(card) {\n this._cards.push(card);\n }\n remove(card) {\n this._cards = this._cards.filter(preview => preview !== card);\n }\n sortByDate(sort) {\n if (sort) {\n this._applyByDateOrder();\n }\n else {\n this._applyOriginalOrder();\n }\n }\n _setOriginalOrder() {\n this._originalOrder = new Map();\n this._cards.forEach((x) => {\n const parentElement = x.hostElement.parentElement;\n if (parentElement) {\n const childrenArray = Array.from(parentElement.children);\n this._originalOrder.set(parentElement, childrenArray);\n }\n });\n }\n _getOrderByDate() {\n return this._cards\n .slice()\n .sort((a, b) => {\n const dateA = a.date ? a.date.getTime() : Number.MIN_SAFE_INTEGER;\n const dateB = b.date ? b.date.getTime() : Number.MIN_SAFE_INTEGER;\n return dateB - dateA;\n });\n }\n _applyByDateOrder() {\n this._setOriginalOrder();\n this._getOrderByDate().forEach((x) => {\n const parent = x.hostElement.parentElement;\n parent?.appendChild(x.hostElement);\n });\n }\n _applyOriginalOrder() {\n this._originalOrder.forEach((originalChildren, parentElement) => {\n originalChildren.forEach(child => parentElement.appendChild(child));\n });\n }\n filterBy(filterKey, _allKey) {\n this._resetLastActiveFilter();\n if (filterKey === _allKey) {\n return;\n }\n this._cards.forEach((x) => {\n if (x.filterKey !== filterKey) {\n x.hostElement.style.display = 'none';\n }\n });\n }\n _resetLastActiveFilter() {\n this._cards.forEach((x) => {\n x.hostElement.style.display = 'block';\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewGroupService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewGroupService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewGroupService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1ncm91cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvcHJldmlldy1ncm91cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxtQkFBbUI7SUFFdEIsTUFBTSxHQUFzQixFQUFFLENBQUM7SUFDL0IsY0FBYyxHQUFvQyxJQUFJLENBQUM7SUFFeEQsR0FBRyxDQUFDLElBQXFCO1FBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTSxNQUFNLENBQUMsSUFBcUI7UUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU0sVUFBVSxDQUFDLElBQWE7UUFDN0IsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzNCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEIsTUFBTSxhQUFhLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7WUFDbEQsSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDbEIsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxjQUFlLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztZQUN6RCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxNQUFNO2FBQ2YsS0FBSyxFQUFFO2FBQ1AsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2IsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ2xFLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztZQUNsRSxPQUFPLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNuQyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztZQUMzQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLGNBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsRUFBRTtZQUMvRCxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sUUFBUSxDQUFDLFNBQWlCLEVBQUUsT0FBZTtRQUNoRCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUU5QixJQUFJLFNBQVMsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMxQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEIsSUFBSSxDQUFDLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUM5QixDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1lBQ3ZDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN4QixDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0F6RVUsbUJBQW1COzJHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcmV2aWV3Q2FyZEJhc2UgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJldmlldy1jYXJkJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFByZXZpZXdHcm91cFNlcnZpY2Uge1xuXG4gIHByaXZhdGUgX2NhcmRzOiBQcmV2aWV3Q2FyZEJhc2VbXSA9IFtdO1xuICBwcml2YXRlIF9vcmlnaW5hbE9yZGVyOiBNYXA8SFRNTEVsZW1lbnQsIE5vZGVbXT4gfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgYWRkKGNhcmQ6IFByZXZpZXdDYXJkQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX2NhcmRzLnB1c2goY2FyZCk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlKGNhcmQ6IFByZXZpZXdDYXJkQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX2NhcmRzID0gdGhpcy5fY2FyZHMuZmlsdGVyKHByZXZpZXcgPT4gcHJldmlldyAhPT0gY2FyZCk7XG4gIH1cblxuICBwdWJsaWMgc29ydEJ5RGF0ZShzb3J0OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHNvcnQpIHtcbiAgICAgIHRoaXMuX2FwcGx5QnlEYXRlT3JkZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fYXBwbHlPcmlnaW5hbE9yZGVyKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc2V0T3JpZ2luYWxPcmRlcigpOiB2b2lkIHtcbiAgICB0aGlzLl9vcmlnaW5hbE9yZGVyID0gbmV3IE1hcCgpO1xuICAgIHRoaXMuX2NhcmRzLmZvckVhY2goKHgpID0+IHtcbiAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSB4Lmhvc3RFbGVtZW50LnBhcmVudEVsZW1lbnQ7XG4gICAgICBpZiAocGFyZW50RWxlbWVudCkge1xuICAgICAgICBjb25zdCBjaGlsZHJlbkFycmF5ID0gQXJyYXkuZnJvbShwYXJlbnRFbGVtZW50LmNoaWxkcmVuKTtcbiAgICAgICAgdGhpcy5fb3JpZ2luYWxPcmRlciEuc2V0KHBhcmVudEVsZW1lbnQsIGNoaWxkcmVuQXJyYXkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0T3JkZXJCeURhdGUoKTogUHJldmlld0NhcmRCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLl9jYXJkc1xuICAgICAgLnNsaWNlKClcbiAgICAgIC5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGVBID0gYS5kYXRlID8gYS5kYXRlLmdldFRpbWUoKSA6IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSO1xuICAgICAgICBjb25zdCBkYXRlQiA9IGIuZGF0ZSA/IGIuZGF0ZS5nZXRUaW1lKCkgOiBOdW1iZXIuTUlOX1NBRkVfSU5URUdFUjtcbiAgICAgICAgcmV0dXJuIGRhdGVCIC0gZGF0ZUE7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5QnlEYXRlT3JkZXIoKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0T3JpZ2luYWxPcmRlcigpO1xuICAgIHRoaXMuX2dldE9yZGVyQnlEYXRlKCkuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgY29uc3QgcGFyZW50ID0geC5ob3N0RWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgICAgcGFyZW50Py5hcHBlbmRDaGlsZCh4Lmhvc3RFbGVtZW50KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5T3JpZ2luYWxPcmRlcigpOiB2b2lkIHtcbiAgICB0aGlzLl9vcmlnaW5hbE9yZGVyIS5mb3JFYWNoKChvcmlnaW5hbENoaWxkcmVuLCBwYXJlbnRFbGVtZW50KSA9PiB7XG4gICAgICBvcmlnaW5hbENoaWxkcmVuLmZvckVhY2goY2hpbGQgPT4gcGFyZW50RWxlbWVudC5hcHBlbmRDaGlsZChjaGlsZCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGZpbHRlckJ5KGZpbHRlcktleTogc3RyaW5nLCBfYWxsS2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9yZXNldExhc3RBY3RpdmVGaWx0ZXIoKTtcblxuICAgIGlmIChmaWx0ZXJLZXkgPT09IF9hbGxLZXkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fY2FyZHMuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgaWYgKHguZmlsdGVyS2V5ICE9PSBmaWx0ZXJLZXkpIHtcbiAgICAgICAgeC5ob3N0RWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRMYXN0QWN0aXZlRmlsdGVyKCk6IHZvaWQge1xuICAgIHRoaXMuX2NhcmRzLmZvckVhY2goKHgpID0+IHtcbiAgICAgIHguaG9zdEVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, signal, } from '@angular/core';\nimport { startWith } from 'rxjs';\nimport { Router } from '@angular/router';\nimport { PreviewCardBase } from './preview-card-base';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ThemeService } from '../../../../../theme';\nimport { DocumentationStore } from '../../../../../documentation-page';\nimport { PreviewGroupService } from '../../preview-group.service';\nimport * as i0 from \"@angular/core\";\nexport class PreviewCard extends PreviewCardBase {\n _elementReference = inject(ElementRef);\n _fEnvironment = inject(DocumentationStore);\n _fPreviewGroupService = inject(PreviewGroupService);\n _themeService = inject(ThemeService, { optional: true });\n _router = inject(Router);\n _destroyRef = inject(DestroyRef);\n item;\n group;\n viewModel;\n src = signal(undefined, ...(ngDevMode ? [{ debugName: \"src\" }] : []));\n url;\n get hostElement() {\n return this._elementReference.nativeElement;\n }\n get filterKey() {\n return this.viewModel?.badge?.text.toLowerCase();\n }\n get date() {\n return this.viewModel?.date;\n }\n initialize() {\n this.viewModel = this._getNavigationItem(this._getNavigationGroup());\n this.url = this._normalizeLink(this.viewModel.link, this._getUrlPrefix());\n this._subscribeToThemeChanges();\n }\n _subscribeToThemeChanges() {\n this._themeService?.theme$.pipe(startWith(null), takeUntilDestroyed(this._destroyRef)).subscribe(() => this._updateTheme());\n }\n ngOnInit() {\n this._fPreviewGroupService.add(this);\n }\n _getNavigationGroup() {\n return this._fEnvironment.getNavigation().find((x) => x.text === this.group);\n }\n _getNavigationItem(group) {\n return group.items.find((x) => x.link === this.item);\n }\n _updateTheme() {\n this.src.set(this._themeService?.getPreferredTheme() === 'dark' ? this.viewModel?.image_dark : this.viewModel?.image);\n if (!this.src()) {\n this.src.set(this.viewModel?.image);\n }\n }\n _normalizeLink(link, prefix) {\n if (!this._isExternalLink(link)) {\n return link.startsWith('/') ? `${prefix}${link}` : `${prefix}/${link}`;\n }\n return link;\n }\n _getUrlPrefix() {\n return this._router.url.substring(0, this._router.url.lastIndexOf('/'));\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n ngOnDestroy() {\n this._fPreviewGroupService.remove(this);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewCard, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: PreviewCard, isStandalone: true, selector: \"a[preview-card]\", host: { properties: { \"attr.href\": \"url\", \"attr.title\": \"viewModel?.text\" } }, usesInheritance: true, ngImport: i0, template: \"@if (viewModel) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"viewModel.description\\\" [title]=\\\"viewModel.text\\\">\\n <div class=\\\"title\\\">\\n {{ viewModel.text }}\\n @if (viewModel.badge) {\\n <span class=\\\"f-badge {{viewModel.badge.type}}\\\">{{ viewModel.badge.text }}</span>\\n }\\n </div>\\n <div class=\\\"description\\\">{{ viewModel.description }}</div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px;cursor:pointer}:host:hover img{transform:scale(1.1)}:host img{display:block;margin-bottom:16px;width:100%;height:180px;border-radius:4px;object-fit:cover;transition:transform .3s}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.f-badge{padding:0 6px;line-height:14px;text-transform:none}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewCard, decorators: [{\n type: Component,\n args: [{ selector: 'a[preview-card]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[attr.href]': 'url',\n '[attr.title]': 'viewModel?.text',\n }, template: \"@if (viewModel) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"viewModel.description\\\" [title]=\\\"viewModel.text\\\">\\n <div class=\\\"title\\\">\\n {{ viewModel.text }}\\n @if (viewModel.badge) {\\n <span class=\\\"f-badge {{viewModel.badge.type}}\\\">{{ viewModel.badge.text }}</span>\\n }\\n </div>\\n <div class=\\\"description\\\">{{ viewModel.description }}</div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px;cursor:pointer}:host:hover img{transform:scale(1.1)}:host img{display:block;margin-bottom:16px;width:100%;height:180px;border-radius:4px;object-fit:cover;transition:transform .3s}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.f-badge{padding:0 6px;line-height:14px;text-transform:none}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1jYXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWNhcmQvcHJldmlldy1jYXJkLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWNhcmQvcHJldmlldy1jYXJkLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBR04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFxQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzFHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQWFsRSxNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQWU7SUFDN0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZDLGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMzQyxxQkFBcUIsR0FB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QUUsQ0FBQyxDQUFDLENBQUMsR0FBSSxNQUFPLElBQUssSUFBSyxFQUFFLENBQUM7UUFDakYsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLGFBQWE7UUFDbkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWTtRQUNsQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7dUdBM0VVLFdBQVc7MkZBQVgsV0FBVyxpTEM3QnhCLDZXQWFBOzsyRkRnQmEsV0FBVztrQkFYdkIsU0FBUzsrQkFDRSxpQkFBaUIsY0FHZixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osYUFBYSxFQUFFLEtBQUs7d0JBQ3BCLGNBQWMsRUFBRSxpQkFBaUI7cUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFByZXZpZXdDYXJkQmFzZSB9IGZyb20gJy4vcHJldmlldy1jYXJkLWJhc2UnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdGhlbWUnO1xuaW1wb3J0IHsgRG9jdW1lbnRhdGlvblN0b3JlLCBJTmF2aWdhdGlvbkdyb3VwLCBJTmF2aWdhdGlvbkl0ZW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuaW1wb3J0IHsgUHJldmlld0dyb3VwU2VydmljZSB9IGZyb20gJy4uLy4uL3ByZXZpZXctZ3JvdXAuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FbcHJldmlldy1jYXJkXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcmV2aWV3LWNhcmQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9wcmV2aWV3LWNhcmQuc2NzcycgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuaHJlZl0nOiAndXJsJyxcbiAgICAnW2F0dHIudGl0bGVdJzogJ3ZpZXdNb2RlbD8udGV4dCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFByZXZpZXdDYXJkIGV4dGVuZHMgUHJldmlld0NhcmRCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmZXJlbmNlID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9mRW52aXJvbm1lbnQgPSBpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZlByZXZpZXdHcm91cFNlcnZpY2UgPSBpbmplY3QoUHJldmlld0dyb3VwU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RoZW1lU2VydmljZSA9IGluamVjdChUaGVtZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gIHB1YmxpYyBpdGVtOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBncm91cDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIHByb3RlY3RlZCB2aWV3TW9kZWw6IElOYXZpZ2F0aW9uSXRlbSB8IHVuZGVmaW5lZDtcbiAgcHJvdGVjdGVkIHNyYyA9IHNpZ25hbDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHByb3RlY3RlZCB1cmw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGdldCBmaWx0ZXJLZXkoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy52aWV3TW9kZWw/LmJhZGdlPy50ZXh0LnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGUoKTogRGF0ZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudmlld01vZGVsPy5kYXRlO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgdGhpcy52aWV3TW9kZWwgPSB0aGlzLl9nZXROYXZpZ2F0aW9uSXRlbSh0aGlzLl9nZXROYXZpZ2F0aW9uR3JvdXAoKSEpO1xuICAgIHRoaXMudXJsID0gdGhpcy5fbm9ybWFsaXplTGluayh0aGlzLnZpZXdNb2RlbCEubGluaywgdGhpcy5fZ2V0VXJsUHJlZml4KCkpO1xuICAgIHRoaXMuX3N1YnNjcmliZVRvVGhlbWVDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIF9zdWJzY3JpYmVUb1RoZW1lQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLl90aGVtZVNlcnZpY2U/LnRoZW1lJC5waXBlKFxuICAgICAgc3RhcnRXaXRoKG51bGwpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZiksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fdXBkYXRlVGhlbWUoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZlByZXZpZXdHcm91cFNlcnZpY2UuYWRkKHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TmF2aWdhdGlvbkdyb3VwKCk6IElOYXZpZ2F0aW9uR3JvdXAgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9mRW52aXJvbm1lbnQuZ2V0TmF2aWdhdGlvbigpLmZpbmQoKHgpID0+IHgudGV4dCA9PT0gdGhpcy5ncm91cCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROYXZpZ2F0aW9uSXRlbShncm91cDogSU5hdmlnYXRpb25Hcm91cCk6IElOYXZpZ2F0aW9uSXRlbSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIGdyb3VwLml0ZW1zLmZpbmQoKHgpID0+IHgubGluayA9PT0gdGhpcy5pdGVtKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVRoZW1lKCk6IHZvaWQge1xuICAgIHRoaXMuc3JjLnNldCh0aGlzLl90aGVtZVNlcnZpY2U/LmdldFByZWZlcnJlZFRoZW1lKCkgPT09ICdkYXJrJyA/IHRoaXMudmlld01vZGVsPy5pbWFnZV9kYXJrIDogdGhpcy52aWV3TW9kZWw/LmltYWdlKTtcbiAgICBpZiAoIXRoaXMuc3JjKCkpIHtcbiAgICAgIHRoaXMuc3JjLnNldCh0aGlzLnZpZXdNb2RlbD8uaW1hZ2UpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX25vcm1hbGl6ZUxpbmsobGluazogc3RyaW5nLCBwcmVmaXg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLl9pc0V4dGVybmFsTGluayhsaW5rKSkge1xuICAgICAgcmV0dXJuIGxpbmsuc3RhcnRzV2l0aCgnLycpID8gYCR7IHByZWZpeCB9JHsgbGluayB9YCA6IGAkeyBwcmVmaXggfS8keyBsaW5rIH1gO1xuICAgIH1cbiAgICByZXR1cm4gbGluaztcbiAgfVxuXG4gIHByaXZhdGUgX2dldFVybFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9yb3V0ZXIudXJsLnN1YnN0cmluZygwLCB0aGlzLl9yb3V0ZXIudXJsLmxhc3RJbmRleE9mKCcvJykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNFeHRlcm5hbExpbmsoaHJlZjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGhyZWYuc3RhcnRzV2l0aCgnd3d3JykgfHwgaHJlZi5zdGFydHNXaXRoKCdodHRwJyk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZlByZXZpZXdHcm91cFNlcnZpY2UucmVtb3ZlKHRoaXMpO1xuICB9XG59XG4iLCJAaWYgKHZpZXdNb2RlbCkge1xuICA8aW1nIFtzcmNdPVwic3JjKClcIiBbYWx0XT1cInZpZXdNb2RlbC5kZXNjcmlwdGlvblwiIFt0aXRsZV09XCJ2aWV3TW9kZWwudGV4dFwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICB7eyB2aWV3TW9kZWwudGV4dCB9fVxuICAgIEBpZiAodmlld01vZGVsLmJhZGdlKSB7XG4gICAgICA8c3BhbiBjbGFzcz1cImYtYmFkZ2Uge3t2aWV3TW9kZWwuYmFkZ2UudHlwZX19XCI+e3sgdmlld01vZGVsLmJhZGdlLnRleHQgfX08L3NwYW4+XG4gICAgfVxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uXCI+e3sgdmlld01vZGVsLmRlc2NyaXB0aW9uIH19PC9kaXY+XG59XG5cblxuXG4iXX0=","import { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';\nimport { DocumentationStore } from '../../../../../documentation-page';\nimport { TitleCasePipe } from '@angular/common';\nimport { FCheckboxComponent, FRadioButtonComponent } from '../../../../../common';\nimport { PreviewGroupService } from '../../preview-group.service';\nimport * as i0 from \"@angular/core\";\nexport class PreviewActionBar {\n _allKey = 'all';\n _fEnvironment = inject(DocumentationStore);\n _fPreviewGroupService = inject(PreviewGroupService);\n filters = signal([], ...(ngDevMode ? [{ debugName: \"filters\" }] : []));\n activeFilter = signal(this._allKey, ...(ngDevMode ? [{ debugName: \"activeFilter\" }] : []));\n isSortByDateChecked = signal(false, ...(ngDevMode ? [{ debugName: \"isSortByDateChecked\" }] : []));\n initialize() {\n this.filters.set(this._calculateFiltersMap());\n }\n ngAfterViewInit() {\n this.onFilterChange(this._allKey);\n }\n _calculateFiltersMap() {\n const filters = [];\n this._fEnvironment.getNavigation().forEach((group) => {\n group.items.forEach((item) => {\n if (item.badge && !filters.includes(item.badge.text.toLowerCase())) {\n filters.push(item.badge.text.toLowerCase());\n }\n });\n });\n if (filters.length > 0) {\n filters.unshift(this._allKey);\n }\n return filters;\n }\n onFilterChange(key) {\n this.activeFilter.set(key);\n this._fPreviewGroupService.filterBy(key, this._allKey);\n }\n onSortByDateChange(event) {\n this.isSortByDateChecked.set(event);\n this._fPreviewGroupService.sortByDate(event);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewActionBar, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: PreviewActionBar, isStandalone: true, selector: \"div[preview-action-bar]\", ngImport: i0, template: \"@if (filters().length) {\\n <div class=\\\"filters-row\\\">\\n @for (filter of filters(); track filter) {\\n <f-radio-button [checked]=\\\"activeFilter() === filter\\\"\\n (change)=\\\"onFilterChange(filter)\\\">{{ filter | titlecase }}\\n </f-radio-button>\\n }\\n <div class=\\\"flex-space\\\"></div>\\n <f-checkbox [checked]=\\\"isSortByDateChecked()\\\" (change)=\\\"onSortByDateChange($event)\\\">Sort by Newness</f-checkbox>\\n </div>\\n}\\n\\n\\n\\n\", styles: [\".filters-row{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;padding-top:20px;gap:8px}\\n\"], dependencies: [{ kind: \"component\", type: FCheckboxComponent, selector: \"f-checkbox\", inputs: [\"id\", \"checked\"], outputs: [\"change\"] }, { kind: \"component\", type: FRadioButtonComponent, selector: \"f-radio-button\", inputs: [\"id\", \"checked\"], outputs: [\"change\"] }, { kind: \"pipe\", type: TitleCasePipe, name: \"titlecase\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewActionBar, decorators: [{\n type: Component,\n args: [{ selector: 'div[preview-action-bar]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n FCheckboxComponent,\n FRadioButtonComponent,\n TitleCasePipe,\n ], template: \"@if (filters().length) {\\n <div class=\\\"filters-row\\\">\\n @for (filter of filters(); track filter) {\\n <f-radio-button [checked]=\\\"activeFilter() === filter\\\"\\n (change)=\\\"onFilterChange(filter)\\\">{{ filter | titlecase }}\\n </f-radio-button>\\n }\\n <div class=\\\"flex-space\\\"></div>\\n <f-checkbox [checked]=\\\"isSortByDateChecked()\\\" (change)=\\\"onSortByDateChange($event)\\\">Sort by Newness</f-checkbox>\\n </div>\\n}\\n\\n\\n\\n\", styles: [\".filters-row{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;padding-top:20px;gap:8px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1hY3Rpb24tYmFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWFjdGlvbi1iYXIvcHJldmlldy1hY3Rpb24tYmFyLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWFjdGlvbi1iYXIvcHJldmlldy1hY3Rpb24tYmFyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBY2xFLE1BQU0sT0FBTyxnQkFBZ0I7SUFFVixPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRXpCLGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMzQyxxQkFBcUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUVsRCxPQUFPLEdBQUcsTUFBTSxDQUFXLEVBQUUsbURBQUMsQ0FBQztJQUMvQixZQUFZLEdBQUcsTUFBTSxDQUFTLElBQUksQ0FBQyxPQUFPLHdEQUFDLENBQUM7SUFFNUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFVLEtBQUssK0RBQUMsQ0FBQztJQUVoRCxVQUFVO1FBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLE1BQU0sT0FBTyxHQUFhLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25ELEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzNCLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDO29CQUNuRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQzlDLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hDLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRVMsY0FBYyxDQUFDLEdBQVc7UUFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxLQUFjO1FBQ3pDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO3VHQTNDVSxnQkFBZ0I7MkZBQWhCLGdCQUFnQixtRkNsQjdCLGlkQWNBLHVMRERJLGtCQUFrQix1R0FDbEIscUJBQXFCLHNHQUNyQixhQUFhOzsyRkFHSixnQkFBZ0I7a0JBWjVCLFNBQVM7K0JBQ0UseUJBQXlCLGNBR3ZCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsYUFBYTtxQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuaW1wb3J0IHsgVGl0bGVDYXNlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGQ2hlY2tib3hDb21wb25lbnQsIEZSYWRpb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbW1vbic7XG5pbXBvcnQgeyBQcmV2aWV3R3JvdXBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJldmlldy1ncm91cC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGl2W3ByZXZpZXctYWN0aW9uLWJhcl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJldmlldy1hY3Rpb24tYmFyLmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vcHJldmlldy1hY3Rpb24tYmFyLnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgRkNoZWNrYm94Q29tcG9uZW50LFxuICAgIEZSYWRpb0J1dHRvbkNvbXBvbmVudCxcbiAgICBUaXRsZUNhc2VQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBQcmV2aWV3QWN0aW9uQmFyIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfYWxsS2V5ID0gJ2FsbCc7XG5cbiAgcHJpdmF0ZSBfZkVudmlyb25tZW50ID0gaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSk7XG4gIHByaXZhdGUgX2ZQcmV2aWV3R3JvdXBTZXJ2aWNlID0gaW5qZWN0KFByZXZpZXdHcm91cFNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCBmaWx0ZXJzID0gc2lnbmFsPHN0cmluZ1tdPihbXSk7XG4gIHByb3RlY3RlZCBhY3RpdmVGaWx0ZXIgPSBzaWduYWw8c3RyaW5nPih0aGlzLl9hbGxLZXkpO1xuXG4gIHByb3RlY3RlZCBpc1NvcnRCeURhdGVDaGVja2VkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlcnMuc2V0KHRoaXMuX2NhbGN1bGF0ZUZpbHRlcnNNYXAoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UodGhpcy5fYWxsS2V5KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUZpbHRlcnNNYXAoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZpbHRlcnM6IHN0cmluZ1tdID0gW107XG4gICAgdGhpcy5fZkVudmlyb25tZW50LmdldE5hdmlnYXRpb24oKS5mb3JFYWNoKChncm91cCkgPT4ge1xuICAgICAgZ3JvdXAuaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICBpZiAoaXRlbS5iYWRnZSAmJiAhZmlsdGVycy5pbmNsdWRlcyhpdGVtLmJhZGdlLnRleHQudG9Mb3dlckNhc2UoKSkpIHtcbiAgICAgICAgICBmaWx0ZXJzLnB1c2goaXRlbS5iYWRnZS50ZXh0LnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICBpZiAoZmlsdGVycy5sZW5ndGggPiAwKSB7XG4gICAgICBmaWx0ZXJzLnVuc2hpZnQodGhpcy5fYWxsS2V5KTtcbiAgICB9XG4gICAgcmV0dXJuIGZpbHRlcnM7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25GaWx0ZXJDaGFuZ2Uoa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUZpbHRlci5zZXQoa2V5KTtcbiAgICB0aGlzLl9mUHJldmlld0dyb3VwU2VydmljZS5maWx0ZXJCeShrZXksIHRoaXMuX2FsbEtleSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25Tb3J0QnlEYXRlQ2hhbmdlKGV2ZW50OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pc1NvcnRCeURhdGVDaGVja2VkLnNldChldmVudCk7XG4gICAgdGhpcy5fZlByZXZpZXdHcm91cFNlcnZpY2Uuc29ydEJ5RGF0ZShldmVudCk7XG4gIH1cbn1cbiIsIkBpZiAoZmlsdGVycygpLmxlbmd0aCkge1xuICA8ZGl2IGNsYXNzPVwiZmlsdGVycy1yb3dcIj5cbiAgICBAZm9yIChmaWx0ZXIgb2YgZmlsdGVycygpOyB0cmFjayBmaWx0ZXIpIHtcbiAgICAgIDxmLXJhZGlvLWJ1dHRvbiBbY2hlY2tlZF09XCJhY3RpdmVGaWx0ZXIoKSA9PT0gZmlsdGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKGZpbHRlcilcIj57eyBmaWx0ZXIgfCB0aXRsZWNhc2UgfX1cbiAgICAgIDwvZi1yYWRpby1idXR0b24+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNwYWNlXCI+PC9kaXY+XG4gICAgPGYtY2hlY2tib3ggW2NoZWNrZWRdPVwiaXNTb3J0QnlEYXRlQ2hlY2tlZCgpXCIgKGNoYW5nZSk9XCJvblNvcnRCeURhdGVDaGFuZ2UoJGV2ZW50KVwiPlNvcnQgYnkgTmV3bmVzczwvZi1jaGVja2JveD5cbiAgPC9kaXY+XG59XG5cblxuXG4iXX0=","import { ChangeDetectionStrategy, Component, computed, inject, input, } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { map } from 'rxjs';\nimport { ThemeService } from '../../../../../theme';\nimport * as i0 from \"@angular/core\";\nexport class ShowcaseItem {\n _themeService = inject(ThemeService);\n _themeChanges = toSignal(this._themeService.theme$.pipe(map(() => this._themeService.getPreferredTheme())));\n model = input.required(...(ngDevMode ? [{ debugName: \"model\" }] : []));\n src = computed(() => {\n const theme = this._themeChanges();\n const model = this.model();\n return theme === 'dark' ? (model.imageUrlDark || model.imageUrl) : model.imageUrl;\n }, ...(ngDevMode ? [{ debugName: \"src\" }] : []));\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ShowcaseItem, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: ShowcaseItem, isStandalone: true, selector: \"showcase-item\", inputs: { model: { classPropertyName: \"model\", publicName: \"model\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: \"@let data = model();\\n\\n@if (data) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"data.description\\\" [title]=\\\"data.name\\\">\\n <div class=\\\"title\\\">{{ data.name }}</div>\\n <div class=\\\"description\\\">{{ data.description }}</div>\\n <div class=\\\"links\\\">\\n @for (link of (data.links || []); track link.text) {\\n <a href=\\\"{{ link.url }}\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\">{{ link.text }}</a>\\n }\\n </div>\\n <div class=\\\"tags\\\">\\n @for (tag of (data.tags || []); track tag) {\\n <span class=\\\"f-badge tip\\\">{{ tag }}</span>\\n }\\n </div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px}:host img{display:block;margin-bottom:16px;width:100%;height:240px;border-radius:4px;object-fit:cover}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.links{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.links a{font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.links a:hover,.links a.active{color:var(--primary-1)}.tags{display:flex;flex-wrap:wrap;gap:8px}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ShowcaseItem, decorators: [{\n type: Component,\n args: [{ selector: 'showcase-item', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"@let data = model();\\n\\n@if (data) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"data.description\\\" [title]=\\\"data.name\\\">\\n <div class=\\\"title\\\">{{ data.name }}</div>\\n <div class=\\\"description\\\">{{ data.description }}</div>\\n <div class=\\\"links\\\">\\n @for (link of (data.links || []); track link.text) {\\n <a href=\\\"{{ link.url }}\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\">{{ link.text }}</a>\\n }\\n </div>\\n <div class=\\\"tags\\\">\\n @for (tag of (data.tags || []); track tag) {\\n <span class=\\\"f-badge tip\\\">{{ tag }}</span>\\n }\\n </div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px}:host img{display:block;margin-bottom:16px;width:100%;height:240px;border-radius:4px;object-fit:cover}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.links{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.links a{font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.links a:hover,.links a.active{color:var(--primary-1)}.tags{display:flex;flex-wrap:wrap;gap:8px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd2Nhc2UtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaG93Y2FzZS9jb21wb25lbnRzL3Nob3djYXNlLWl0ZW0vc2hvd2Nhc2UtaXRlbS50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaG93Y2FzZS9jb21wb25lbnRzL3Nob3djYXNlLWl0ZW0vc2hvd2Nhc2UtaXRlbS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLFFBQVEsRUFDbkIsTUFBTSxFQUFFLEtBQUssR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBU3BELE1BQU0sT0FBTyxZQUFZO0lBQ04sYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUVyQyxhQUFhLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdHLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxnREFBaUIsQ0FBQztJQUVyQyxHQUFHLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNyQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLE9BQU8sS0FBSyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUNwRixDQUFDLCtDQUFDLENBQUM7dUdBVlEsWUFBWTsyRkFBWixZQUFZLDRNQ2pCekIsZ2pCQW9CQTs7MkZESGEsWUFBWTtrQkFQeEIsU0FBUzsrQkFDRSxlQUFlLGNBR2IsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgY29tcHV0ZWQsXG4gIGluamVjdCwgaW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElTaG93Y2FzZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdGhlbWUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaG93Y2FzZS1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nob3djYXNlLWl0ZW0uaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9zaG93Y2FzZS1pdGVtLnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTaG93Y2FzZUl0ZW0ge1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVNlcnZpY2UgPSBpbmplY3QoVGhlbWVTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZUNoYW5nZXMgPSB0b1NpZ25hbCh0aGlzLl90aGVtZVNlcnZpY2UudGhlbWUkLnBpcGUobWFwKCgpID0+IHRoaXMuX3RoZW1lU2VydmljZS5nZXRQcmVmZXJyZWRUaGVtZSgpKSkpO1xuICBwdWJsaWMgcmVhZG9ubHkgbW9kZWwgPSBpbnB1dC5yZXF1aXJlZDxJU2hvd2Nhc2VJdGVtPigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBzcmMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdGhlbWUgPSB0aGlzLl90aGVtZUNoYW5nZXMoKTtcbiAgICBjb25zdCBtb2RlbCA9IHRoaXMubW9kZWwoKTtcbiAgICByZXR1cm4gdGhlbWUgPT09ICdkYXJrJyA/IChtb2RlbC5pbWFnZVVybERhcmsgfHwgbW9kZWwuaW1hZ2VVcmwpIDogbW9kZWwuaW1hZ2VVcmw7XG4gIH0pO1xufVxuIiwiQGxldCBkYXRhID0gbW9kZWwoKTtcblxuQGlmIChkYXRhKSB7XG4gIDxpbWcgW3NyY109XCJzcmMoKVwiIFthbHRdPVwiZGF0YS5kZXNjcmlwdGlvblwiIFt0aXRsZV09XCJkYXRhLm5hbWVcIj5cbiAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgZGF0YS5uYW1lIH19PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPnt7IGRhdGEuZGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImxpbmtzXCI+XG4gICAgQGZvciAobGluayBvZiAoZGF0YS5saW5rcyB8fCBbXSk7IHRyYWNrIGxpbmsudGV4dCkge1xuICAgICAgPGEgaHJlZj1cInt7IGxpbmsudXJsIH19XCIgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXJcIj57eyBsaW5rLnRleHQgfX08L2E+XG4gICAgfVxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInRhZ3NcIj5cbiAgICBAZm9yICh0YWcgb2YgKGRhdGEudGFncyB8fCBbXSk7IHRyYWNrIHRhZykge1xuICAgICAgPHNwYW4gY2xhc3M9XCJmLWJhZGdlIHRpcFwiPnt7IHRhZyB9fTwvc3Bhbj5cbiAgICB9XG4gIDwvZGl2PlxufVxuXG5cblxuIl19","import { InjectionToken } from '@angular/core';\nexport const SHOWCASE_DATA = new InjectionToken('SHOWCASE_DATA');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd2Nhc2UtdG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvc2hvd2Nhc2Uvc2hvd2Nhc2UtdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxjQUFjLENBQWtCLGVBQWUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVNob3djYXNlSXRlbSB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBTSE9XQ0FTRV9EQVRBID0gbmV3IEluamVjdGlvblRva2VuPElTaG93Y2FzZUl0ZW1bXT4oJ1NIT1dDQVNFX0RBVEEnKTtcblxuIl19","import { ChangeDetectionStrategy, Component, computed, inject, signal, } from '@angular/core';\nimport { ShowcaseItem } from './components';\nimport { SHOWCASE_DATA } from './showcase-token';\nimport * as i0 from \"@angular/core\";\nexport class Showcase {\n _data = signal(inject(SHOWCASE_DATA), ...(ngDevMode ? [{ debugName: \"_data\" }] : []));\n items = computed(() => {\n const items = this._data();\n const activeTag = this.activeTag();\n return activeTag ? items.filter(item => item.tags?.includes(activeTag)) : items;\n }, ...(ngDevMode ? [{ debugName: \"items\" }] : []));\n tags = computed(() => {\n return this._data().reduce((result, item) => {\n item.tags?.forEach(tag => result.add(tag));\n return result;\n }, new Set());\n }, ...(ngDevMode ? [{ debugName: \"tags\" }] : []));\n activeTag = signal(null, ...(ngDevMode ? [{ debugName: \"activeTag\" }] : []));\n tagClick(tag) {\n this.activeTag.update((x) => x === tag ? null : tag);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Showcase, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: Showcase, isStandalone: true, selector: \"showcase\", ngImport: i0, template: \"<div class=\\\"filters-panel\\\">\\n @for (tag of tags(); track tag) {\\n <span class=\\\"f-badge tip\\\" (click)=\\\"tagClick(tag)\\\" [class.info]=\\\"activeTag() === tag\\\">{{ tag }}</span>\\n }\\n</div>\\n<div class=\\\"showcase-list\\\">\\n @for (item of items(); track item.imageUrl) {\\n <showcase-item [model]=\\\"item\\\"/>\\n }\\n</div>\\n\\n\", styles: [\".filters-panel{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.filters-panel .f-badge{cursor:pointer}.showcase-list{display:flex;justify-content:flex-start;align-items:normal;flex-wrap:wrap;gap:32px;pointer-events:all;overflow:hidden}\\n\"], dependencies: [{ kind: \"component\", type: ShowcaseItem, selector: \"showcase-item\", inputs: [\"model\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Showcase, decorators: [{\n type: Component,\n args: [{ selector: 'showcase', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n ShowcaseItem,\n ], template: \"<div class=\\\"filters-panel\\\">\\n @for (tag of tags(); track tag) {\\n <span class=\\\"f-badge tip\\\" (click)=\\\"tagClick(tag)\\\" [class.info]=\\\"activeTag() === tag\\\">{{ tag }}</span>\\n }\\n</div>\\n<div class=\\\"showcase-list\\\">\\n @for (item of items(); track item.imageUrl) {\\n <showcase-item [model]=\\\"item\\\"/>\\n }\\n</div>\\n\\n\", styles: [\".filters-panel{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.filters-panel .f-badge{cursor:pointer}.showcase-list{display:flex;justify-content:flex-start;align-items:normal;flex-wrap:wrap;gap:32px;pointer-events:all;overflow:hidden}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd2Nhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvc2hvd2Nhc2Uvc2hvd2Nhc2UudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvc2hvd2Nhc2Uvc2hvd2Nhc2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQWFqRCxNQUFNLE9BQU8sUUFBUTtJQUNGLEtBQUssR0FBRyxNQUFNLENBQWtCLE1BQU0sQ0FBQyxhQUFhLENBQUMsaURBQUMsQ0FBQztJQUVyRCxLQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUN2QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2xGLENBQUMsaURBQUMsQ0FBQztJQUVnQixJQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUN0QyxPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDMUMsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDM0MsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxFQUFFLElBQUksR0FBRyxFQUFVLENBQUMsQ0FBQztJQUN4QixDQUFDLGdEQUFDLENBQUM7SUFFZ0IsU0FBUyxHQUFHLE1BQU0sQ0FBZ0IsSUFBSSxxREFBQyxDQUFDO0lBRWpELFFBQVEsQ0FBQyxHQUFrQjtRQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2RCxDQUFDO3VHQXBCVSxRQUFROzJGQUFSLFFBQVEsb0VDZnJCLDBVQVdBLDhTRENJLFlBQVk7OzJGQUdILFFBQVE7a0JBVnBCLFNBQVM7K0JBQ0UsVUFBVSxjQUdSLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxZQUFZO3FCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsLCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2hvd2Nhc2VJdGVtIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFNIT1dDQVNFX0RBVEEgfSBmcm9tICcuL3Nob3djYXNlLXRva2VuJztcbmltcG9ydCB7IElTaG93Y2FzZUl0ZW0gfSBmcm9tICcuL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Nob3djYXNlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nob3djYXNlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vc2hvd2Nhc2Uuc2NzcycgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBTaG93Y2FzZUl0ZW0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNob3djYXNle1xuICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhID0gc2lnbmFsPElTaG93Y2FzZUl0ZW1bXT4oaW5qZWN0KFNIT1dDQVNFX0RBVEEpKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLl9kYXRhKCk7XG4gICAgY29uc3QgYWN0aXZlVGFnID0gdGhpcy5hY3RpdmVUYWcoKTtcbiAgICByZXR1cm4gYWN0aXZlVGFnID8gaXRlbXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS50YWdzPy5pbmNsdWRlcyhhY3RpdmVUYWcpKSA6IGl0ZW1zO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGFncyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YSgpLnJlZHVjZSgocmVzdWx0LCBpdGVtKSA9PiB7XG4gICAgICBpdGVtLnRhZ3M/LmZvckVhY2godGFnID0+IHJlc3VsdC5hZGQodGFnKSk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0sIG5ldyBTZXQ8c3RyaW5nPigpKTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdGl2ZVRhZyA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuICBwcm90ZWN0ZWQgdGFnQ2xpY2sodGFnOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVUYWcudXBkYXRlKCh4KSA9PiB4ID09PSB0YWcgPyBudWxsIDogdGFnKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZpbHRlcnMtcGFuZWxcIj5cbiAgQGZvciAodGFnIG9mIHRhZ3MoKTsgdHJhY2sgdGFnKSB7XG4gICAgPHNwYW4gY2xhc3M9XCJmLWJhZGdlIHRpcFwiIChjbGljayk9XCJ0YWdDbGljayh0YWcpXCIgW2NsYXNzLmluZm9dPVwiYWN0aXZlVGFnKCkgPT09IHRhZ1wiPnt7IHRhZyB9fTwvc3Bhbj5cbiAgfVxuPC9kaXY+XG48ZGl2IGNsYXNzPVwic2hvd2Nhc2UtbGlzdFwiPlxuICBAZm9yIChpdGVtIG9mIGl0ZW1zKCk7IHRyYWNrIGl0ZW0uaW1hZ2VVcmwpIHtcbiAgICA8c2hvd2Nhc2UtaXRlbSBbbW9kZWxdPVwiaXRlbVwiLz5cbiAgfVxuPC9kaXY+XG5cbiJdfQ==","export function provideShowcase(showcaseItems) {\n return {\n showcaseItems,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1zaG93Y2FzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaG93Y2FzZS9wcm92aWRlLXNob3djYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxlQUFlLENBQUMsYUFBOEI7SUFDNUQsT0FBTztRQUNMLGFBQWE7S0FDZCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uLy4uLy4uL2RvY3VtZW50YXRpb24tcGFnZSc7XG5pbXBvcnQgeyBJU2hvd2Nhc2VJdGVtIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVNob3djYXNlKHNob3djYXNlSXRlbXM6IElTaG93Y2FzZUl0ZW1bXSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgc2hvd2Nhc2VJdGVtcyxcbiAgfTtcbn1cblxuIl19","import { DynamicComponentsStore } from './dynamic-components.store';\nimport { PreviewGroupService } from './components';\nimport { RenderDynamicComponent, RenderExternalComponent, RenderInternalComponents } from './features';\nexport const DYNAMIC_COMPONENTS_MODULE_PROVIDERS = [\n DynamicComponentsStore,\n PreviewGroupService,\n RenderDynamicComponent,\n RenderExternalComponent,\n RenderInternalComponents,\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLXByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvbW9kdWxlLXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHdCQUF3QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXZHLE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHO0lBQ2pELHNCQUFzQjtJQUV0QixtQkFBbUI7SUFFbkIsc0JBQXNCO0lBRXRCLHVCQUF1QjtJQUV2Qix3QkFBd0I7Q0FDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER5bmFtaWNDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50cy5zdG9yZSc7XG5pbXBvcnQgeyBQcmV2aWV3R3JvdXBTZXJ2aWNlIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFJlbmRlckR5bmFtaWNDb21wb25lbnQsIFJlbmRlckV4dGVybmFsQ29tcG9uZW50LCBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHMgfSBmcm9tICcuL2ZlYXR1cmVzJztcblxuZXhwb3J0IGNvbnN0IERZTkFNSUNfQ09NUE9ORU5UU19NT0RVTEVfUFJPVklERVJTID0gW1xuICBEeW5hbWljQ29tcG9uZW50c1N0b3JlLFxuXG4gIFByZXZpZXdHcm91cFNlcnZpY2UsXG5cbiAgUmVuZGVyRHluYW1pY0NvbXBvbmVudCxcblxuICBSZW5kZXJFeHRlcm5hbENvbXBvbmVudCxcblxuICBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHMsXG5dO1xuIl19","export class ActivateTocByHashRequest {\n hash;\n static requestToken = Symbol('ActivateTocByHashRequest');\n constructor(hash) {\n this.hash = hash;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZhdGUtdG9jLWJ5LWhhc2gtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2FjdGl2YXRlLXRvYy1ieS1oYXNoL2FjdGl2YXRlLXRvYy1ieS1oYXNoLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLHdCQUF3QjtJQUkxQjtJQUhGLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFFaEUsWUFDUyxJQUF3QjtRQUF4QixTQUFJLEdBQUosSUFBSSxDQUFvQjtJQUVqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdCB7XG4gIHB1YmxpYyBzdGF0aWMgcmVxdWVzdFRva2VuID0gU3ltYm9sKCdBY3RpdmF0ZVRvY0J5SGFzaFJlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaGFzaDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICApIHtcbiAgfVxufVxuIl19","import { __decorate } from \"tslib\";\nimport { ActivateTocByHashRequest } from './activate-toc-by-hash-request';\nimport { inject, Injectable } from '@angular/core';\nimport { MExecution } from '../../../../../mediatr';\nimport { DocumentationStore } from '../../../../services';\nimport * as i0 from \"@angular/core\";\nlet ActivateTocByHash = class ActivateTocByHash {\n _dataProvider = inject(DocumentationStore);\n handle(payload) {\n this._dataProvider.tocData.update((data) => ({\n ...data,\n flat: data.flat.map((x) => ({\n ...x,\n isActive: x.hash === payload.hash,\n })),\n }));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ActivateTocByHash, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ActivateTocByHash });\n};\nActivateTocByHash = __decorate([\n MExecution(ActivateTocByHashRequest)\n], ActivateTocByHash);\nexport { ActivateTocByHash };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ActivateTocByHash, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZhdGUtdG9jLWJ5LWhhc2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9hY3RpdmF0ZS10b2MtYnktaGFzaC9hY3RpdmF0ZS10b2MtYnktaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUluRCxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQUVYLGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUVyRCxNQUFNLENBQUMsT0FBaUM7UUFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLEdBQUcsSUFBSTtZQUNQLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDMUIsR0FBRyxDQUFDO2dCQUNKLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxJQUFJO2FBQ2xDLENBQUMsQ0FBQztTQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQzt1R0FaVSxpQkFBaUI7MkdBQWpCLGlCQUFpQjs7QUFBakIsaUJBQWlCO0lBRDdCLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQztHQUN4QixpQkFBaUIsQ0FhN0I7OzJGQWJZLGlCQUFpQjtrQkFGN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdCB9IGZyb20gJy4vYWN0aXZhdGUtdG9jLWJ5LWhhc2gtcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElFeGVjdXRpb24sIE1FeGVjdXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oQWN0aXZhdGVUb2NCeUhhc2hSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEFjdGl2YXRlVG9jQnlIYXNoIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxBY3RpdmF0ZVRvY0J5SGFzaFJlcXVlc3QsIHZvaWQ+e1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFQcm92aWRlciA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpO1xuXG4gIHB1YmxpYyBoYW5kbGUocGF5bG9hZDogQWN0aXZhdGVUb2NCeUhhc2hSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZGF0YVByb3ZpZGVyLnRvY0RhdGEudXBkYXRlKChkYXRhKSA9PiAoe1xuICAgICAgLi4uZGF0YSxcbiAgICAgIGZsYXQ6IGRhdGEuZmxhdC5tYXAoKHgpID0+ICh7XG4gICAgICAgIC4uLngsXG4gICAgICAgIGlzQWN0aXZlOiB4Lmhhc2ggPT09IHBheWxvYWQuaGFzaCxcbiAgICAgIH0pKSxcbiAgICB9KSk7XG4gIH1cbn1cbiJdfQ==","export class CalculateTableOfContentRequest {\n hostElement;\n static requestToken = Symbol('CalculateTableOfContentRequest');\n constructor(hostElement) {\n this.hostElement = hostElement;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXRhYmxlLW9mLWNvbnRlbnQtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2NhbGN1bGF0ZS10YWJsZS1vZi1jb250ZW50L2NhbGN1bGF0ZS10YWJsZS1vZi1jb250ZW50LXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLDhCQUE4QjtJQUl2QjtJQUhYLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFFdEUsWUFDa0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFFMUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnRSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==","export class TableOfContentData {\n flat;\n tree;\n constructor(flat, tree) {\n this.flat = flat;\n this.tree = tree;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtb2YtY29udGVudC1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvbW9kZWxzL3RhYmxlLW9mLWNvbnRlbnQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBRXBCO0lBQ0E7SUFGVCxZQUNTLElBQTJCLEVBQzNCLElBQTJCO1FBRDNCLFNBQUksR0FBSixJQUFJLENBQXVCO1FBQzNCLFNBQUksR0FBSixJQUFJLENBQXVCO0lBRXBDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUYWJsZU9mQ29udGVudEl0ZW0gfSBmcm9tICcuL2ktdGFibGUtb2YtY29udGVudC1pdGVtJztcblxuZXhwb3J0IGNsYXNzIFRhYmxlT2ZDb250ZW50RGF0YSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBmbGF0OiBJVGFibGVPZkNvbnRlbnRJdGVtW10sXG4gICAgcHVibGljIHRyZWU6IElUYWJsZU9mQ29udGVudEl0ZW1bXSxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==","export class CalculateAbsoluteTopToContainerRequest {\n element;\n static requestToken = Symbol('CalculateAbsoluteTopToContainerRequest');\n constructor(element) {\n this.element = element;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXItcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2NhbGN1bGF0ZS1hYnNvbHV0ZS10b3AtdG8tY29udGFpbmVyL2NhbGN1bGF0ZS1hYnNvbHV0ZS10b3AtdG8tY29udGFpbmVyLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLHNDQUFzQztJQUl4QztJQUhGLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFFOUUsWUFDUyxPQUFvQjtRQUFwQixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBRTdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lclJlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lclJlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gICkge1xuICB9XG59XG4iXX0=","import { __decorate } from \"tslib\";\nimport { CalculateAbsoluteTopToContainerRequest } from './calculate-absolute-top-to-container-request';\nimport { inject, Injectable } from '@angular/core';\nimport { SCROLLABLE_CONTAINER } from '../../../index';\nimport { MExecution } from '../../../../../mediatr';\nimport * as i0 from \"@angular/core\";\nlet CalculateAbsoluteTopToContainer = class CalculateAbsoluteTopToContainer {\n _scrollableContainer = inject(SCROLLABLE_CONTAINER);\n handle(request) {\n let element = request.element;\n let result = 0;\n while (element !== this._scrollableContainer.htmlElement) {\n if (!element)\n return NaN;\n result += element.offsetTop;\n element = element.offsetParent;\n }\n return result;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateAbsoluteTopToContainer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateAbsoluteTopToContainer });\n};\nCalculateAbsoluteTopToContainer = __decorate([\n MExecution(CalculateAbsoluteTopToContainerRequest)\n], CalculateAbsoluteTopToContainer);\nexport { CalculateAbsoluteTopToContainer };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateAbsoluteTopToContainer, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9jYWxjdWxhdGUtYWJzb2x1dGUtdG9wLXRvLWNvbnRhaW5lci9jYWxjdWxhdGUtYWJzb2x1dGUtdG9wLXRvLWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdkcsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUl6RCxJQUFNLCtCQUErQixHQUFyQyxNQUFNLCtCQUErQjtJQUV6QixvQkFBb0IsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUU5RCxNQUFNLENBQUMsT0FBK0M7UUFDM0QsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFFZixPQUFPLE9BQU8sS0FBSyxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLE9BQU87Z0JBQUUsT0FBTyxHQUFHLENBQUM7WUFDekIsTUFBTSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUM7WUFDNUIsT0FBTyxHQUFHLE9BQU8sQ0FBQyxZQUEyQixDQUFDO1FBQ2hELENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO3VHQWZVLCtCQUErQjsyR0FBL0IsK0JBQStCOztBQUEvQiwrQkFBK0I7SUFEM0MsVUFBVSxDQUFDLHNDQUFzQyxDQUFDO0dBQ3RDLCtCQUErQixDQWdCM0M7OzJGQWhCWSwrQkFBK0I7a0JBRjNDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXItcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNDUk9MTEFCTEVfQ09OVEFJTkVSIH0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21lZGlhdHInO1xuXG5ASW5qZWN0YWJsZSgpXG5ATUV4ZWN1dGlvbihDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdCwgbnVtYmVyPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc2Nyb2xsYWJsZUNvbnRhaW5lciA9IGluamVjdChTQ1JPTExBQkxFX0NPTlRBSU5FUik7XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdCk6IG51bWJlciB7XG4gICAgbGV0IGVsZW1lbnQgPSByZXF1ZXN0LmVsZW1lbnQ7XG4gICAgbGV0IHJlc3VsdCA9IDA7XG5cbiAgICB3aGlsZSAoZWxlbWVudCAhPT0gdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudCkge1xuICAgICAgaWYgKCFlbGVtZW50KSByZXR1cm4gTmFOO1xuICAgICAgcmVzdWx0ICs9IGVsZW1lbnQub2Zmc2V0VG9wO1xuICAgICAgZWxlbWVudCA9IGVsZW1lbnQub2Zmc2V0UGFyZW50IGFzIEhUTUxFbGVtZW50O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiJdfQ==","import { __decorate } from \"tslib\";\nimport { CalculateAbsoluteTopToContainerRequest } from '../calculate-absolute-top-to-container';\nimport { inject, Injectable } from '@angular/core';\nimport { ActivateTocByHashRequest, CalculateHashFromScrollPositionAndActivateTocRequest, SCROLLABLE_CONTAINER, } from '../../../index';\nimport { DocumentationStore } from '../../../../services';\nimport { DOCUMENT_ELEMENT, WINDOW } from '../../../../../common';\nimport { Mediatr, MExecution } from '../../../../../mediatr';\nimport * as i0 from \"@angular/core\";\nlet CalculateHashFromScrollPositionAndActivateToc = class CalculateHashFromScrollPositionAndActivateToc {\n _docElement = inject(DOCUMENT_ELEMENT);\n _window = inject(WINDOW);\n _provider = inject(DocumentationStore);\n _scrollableContainer = inject(SCROLLABLE_CONTAINER);\n _mediatr = inject(Mediatr);\n handle() {\n let result;\n const containerScrollTop = this._getContainerScrollTop();\n const elementsWithTopPosition = this._calculateElementsTopPositions();\n if (elementsWithTopPosition.length) {\n if (this._isScrollAtBottom(containerScrollTop)) {\n result = elementsWithTopPosition[elementsWithTopPosition.length - 1].hash;\n }\n else {\n result = this._findTargetHashByPosition(containerScrollTop, elementsWithTopPosition);\n }\n }\n this._mediatr.execute(new ActivateTocByHashRequest(result));\n }\n _getContainerScrollTop() {\n return this._scrollableContainer.htmlElement.scrollTop + this._getHeaderHeight();\n }\n _getHeaderHeight() {\n return parseInt(this._window\n .getComputedStyle(this._docElement)\n .getPropertyValue('--header-height'), 10);\n }\n _calculateElementsTopPositions() {\n return this._provider.tocData().flat.map((x) => {\n return {\n hash: x.hash,\n top: this._calculateAbsoluteTopToContainer(x.element),\n };\n }).filter((x) => !Number.isNaN(x.top));\n }\n _calculateAbsoluteTopToContainer(element) {\n return this._mediatr.execute(new CalculateAbsoluteTopToContainerRequest(element));\n }\n _isScrollAtBottom(containerScrollTop) {\n return Math.abs(containerScrollTop - this._getHeaderHeight() + this._scrollableContainer.htmlElement.clientHeight - this._scrollableContainer.htmlElement.scrollHeight) < 1;\n }\n _findTargetHashByPosition(containerScrollTop, elementsWithTopPosition) {\n let result = elementsWithTopPosition[0].hash;\n for (const { hash, top } of elementsWithTopPosition) {\n if (top > containerScrollTop)\n break;\n result = hash;\n }\n return result;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateHashFromScrollPositionAndActivateToc, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateHashFromScrollPositionAndActivateToc });\n};\nCalculateHashFromScrollPositionAndActivateToc = __decorate([\n MExecution(CalculateHashFromScrollPositionAndActivateTocRequest)\n], CalculateHashFromScrollPositionAndActivateToc);\nexport { CalculateHashFromScrollPositionAndActivateToc };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateHashFromScrollPositionAndActivateToc, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2NhbGN1bGF0ZS1oYXNoLWZyb20tc2Nyb2xsLXBvc2l0aW9uLWFuZC1hY3RpdmF0ZS10b2MvY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEcsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUNMLHdCQUF3QixFQUN4QixvREFBb0QsRUFDcEQsb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pFLE9BQU8sRUFBYyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBU2xFLElBQU0sNkNBQTZDLEdBQW5ELE1BQU0sNkNBQTZDO0lBR3ZDLFdBQVcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN2QyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLFNBQVMsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN2QyxvQkFBb0IsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNwRCxRQUFRLEdBQUcsTUFBTSxD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b250ZW50IjpbImltcG9ydCB7IENhbGN1bGF0ZUFic29sdXRlVG9wVG9Db250YWluZXJSZXF1ZXN0IH0gZnJvbSAnLi4vY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXInO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZVRvY0J5SGFzaFJlcXVlc3QsXG4gIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1JlcXVlc3QsXG4gIFNDUk9MTEFCTEVfQ09OVEFJTkVSLFxufSBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBET0NVTUVOVF9FTEVNRU5ULCBXSU5ET1cgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTWVkaWF0ciwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21lZGlhdHInO1xuXG5pbnRlcmZhY2UgSUhhc1RvcEl0ZW0ge1xuICBoYXNoOiBzdHJpbmc7XG4gIHRvcDogbnVtYmVyO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5ATUV4ZWN1dGlvbihDYWxjdWxhdGVIYXNoRnJvbVNjcm9sbFBvc2l0aW9uQW5kQWN0aXZhdGVUb2NSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1xuICBpbXBsZW1lbnRzIElFeGVjdXRpb248Q2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jUmVxdWVzdCwgbnVtYmVyPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jRWxlbWVudCA9IGluamVjdChET0NVTUVOVF9FTEVNRU5UKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Byb3ZpZGVyID0gaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Njcm9sbGFibGVDb250YWluZXIgPSBpbmplY3QoU0NST0xMQUJMRV9DT05UQUlORVIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHB1YmxpYyBoYW5kbGUoKTogdm9pZCB7XG4gICAgbGV0IHJlc3VsdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IGNvbnRhaW5lclNjcm9sbFRvcCA9IHRoaXMuX2dldENvbnRhaW5lclNjcm9sbFRvcCgpO1xuXG4gICAgY29uc3QgZWxlbWVudHNXaXRoVG9wUG9zaXRpb24gPSB0aGlzLl9jYWxjdWxhdGVFbGVtZW50c1RvcFBvc2l0aW9ucygpO1xuXG4gICAgaWYgKGVsZW1lbnRzV2l0aFRvcFBvc2l0aW9uLmxlbmd0aCkge1xuICAgICAgaWYgKHRoaXMuX2lzU2Nyb2xsQXRCb3R0b20oY29udGFpbmVyU2Nyb2xsVG9wKSkge1xuICAgICAgICByZXN1bHQgPSBlbGVtZW50c1dpdGhUb3BQb3NpdGlvbltlbGVtZW50c1dpdGhUb3BQb3NpdGlvbi5sZW5ndGggLSAxXS5oYXNoO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0ID0gdGhpcy5fZmluZFRhcmdldEhhc2hCeVBvc2l0aW9uKGNvbnRhaW5lclNjcm9sbFRvcCwgZWxlbWVudHNXaXRoVG9wUG9zaXRpb24pO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUobmV3IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdChyZXN1bHQpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvbnRhaW5lclNjcm9sbFRvcCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zY3JvbGxhYmxlQ29udGFpbmVyLmh0bWxFbGVtZW50LnNjcm9sbFRvcCArIHRoaXMuX2dldEhlYWRlckhlaWdodCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0SGVhZGVySGVpZ2h0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHBhcnNlSW50KHRoaXMuX3dpbmRvd1xuICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5fZG9jRWxlbWVudClcbiAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKCctLWhlYWRlci1oZWlnaHQnKSwgMTAsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUVsZW1lbnRzVG9wUG9zaXRpb25zKCk6IElIYXNUb3BJdGVtW10ge1xuICAgIHJldHVybiB0aGlzLl9wcm92aWRlci50b2NEYXRhKCkuZmxhdC5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGhhc2g6IHguaGFzaCxcbiAgICAgICAgdG9wOiB0aGlzLl9jYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyKHguZWxlbWVudCksXG4gICAgICB9O1xuICAgIH0pLmZpbHRlcigoeCkgPT4gIU51bWJlci5pc05hTih4LnRvcCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lcihlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShuZXcgQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lclJlcXVlc3QoZWxlbWVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNTY3JvbGxBdEJvdHRvbShjb250YWluZXJTY3JvbGxUb3A6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBNYXRoLmFicyhjb250YWluZXJTY3JvbGxUb3AgLSB0aGlzLl9nZXRIZWFkZXJIZWlnaHQoKSArIHRoaXMuX3Njcm9sbGFibGVDb250YWluZXIuaHRtbEVsZW1lbnQuY2xpZW50SGVpZ2h0IC0gdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudC5zY3JvbGxIZWlnaHQpIDwgMTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmRUYXJnZXRIYXNoQnlQb3NpdGlvbihjb250YWluZXJTY3JvbGxUb3A6IG51bWJlciwgZWxlbWVudHNXaXRoVG9wUG9zaXRpb246IElIYXNUb3BJdGVtW10pOiBzdHJpbmcge1xuICAgIGxldCByZXN1bHQ6IHN0cmluZyA9IGVsZW1lbnRzV2l0aFRvcFBvc2l0aW9uWzBdLmhhc2g7XG4gICAgZm9yIChjb25zdCB7IGhhc2gsIHRvcCB9IG9mIGVsZW1lbnRzV2l0aFRvcFBvc2l0aW9uKSB7XG4gICAgICBpZiAodG9wID4gY29udGFpbmVyU2Nyb2xsVG9wKSBicmVhaztcbiAgICAgIHJlc3VsdCA9IGhhc2g7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiJdfQ==","export class CalculateHashFromScrollPositionAndActivateTocRequest {\n static requestToken = Symbol('CalculateHashFromScrollPositionAndActivateTocRequest');\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvZmVhdHVyZXMvY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy9jYWxjdWxhdGUtaGFzaC1mcm9tLXNjcm9sbC1wb3NpdGlvbi1hbmQtYWN0aXZhdGUtdG9jLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLG9EQUFvRDtJQUN4RCxNQUFNLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxzREFBc0QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1JlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnQ2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jUmVxdWVzdCcpO1xufVxuIl19","import { __decorate } from \"tslib\";\nimport { CalculateTableOfContentRequest } from './calculate-table-of-content-request';\nimport { inject, Injectable } from '@angular/core';\nimport { DocumentationStore } from '../../../../services';\nimport { TableOfContentData } from '../../models';\nimport { Mediatr, MExecution } from '../../../../../mediatr';\nimport { CalculateHashFromScrollPositionAndActivateTocRequest, } from '../calculate-hash-from-scroll-position-and-activate-toc';\nimport * as i0 from \"@angular/core\";\nlet CalculateTableOfContent = class CalculateTableOfContent {\n _dataProvider = inject(DocumentationStore);\n _mediatr = inject(Mediatr);\n handle(request) {\n const flat = [];\n const tree = [];\n const stack = [];\n this._getNavigationSelectors(request.hostElement, this._dataProvider.getTableOfContent()?.range).forEach((element) => {\n const tocItem = this._createItem(element);\n this._insertItemIntoTree(tocItem, tree, stack);\n flat.push(tocItem);\n });\n this._dataProvider.tocData.set(new TableOfContentData(flat, tree));\n this._mediatr.execute(new CalculateHashFromScrollPositionAndActivateTocRequest());\n }\n _getNavigationSelectors(fMarkdownPage, tocRange) {\n if (!tocRange || tocRange.start < 1 || tocRange.end > 6) {\n tocRange = { start: 2, end: 6 };\n }\n const selectors = [];\n for (let i = tocRange.start; i <= tocRange.end; i++) {\n selectors.push(`h${i}`);\n }\n return Array.from(fMarkdownPage.querySelectorAll(selectors.join(', ')));\n }\n _createItem(element) {\n element.id = this._createNavigationId(element);\n return {\n hash: `#${CSS.escape(element.id)}`,\n title: element.innerHTML,\n element,\n children: [],\n };\n }\n _createNavigationId(element) {\n return element.innerHTML.toLowerCase().replaceAll(' ', '-');\n }\n _getLevel(element) {\n return parseInt(element.tagName.substring(1));\n }\n _insertItemIntoTree(tocItem, tree, stack) {\n while (stack.length > 0 && this._getLevel(stack[stack.length - 1].element) >= this._getLevel(tocItem.element)) {\n stack.pop();\n }\n if (stack.length === 0) {\n tree.push(tocItem);\n }\n else {\n stack[stack.length - 1].children.push(tocItem);\n }\n stack.push(tocItem);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateTableOfContent, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateTableOfContent });\n};\nCalculateTableOfContent = __decorate([\n MExecution(CalculateTableOfContentRequest)\n], CalculateTableOfContent);\nexport { CalculateTableOfContent };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateTableOfContent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXRhYmxlLW9mLWNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9jYWxjdWxhdGUtdGFibGUtb2YtY29udGVudC9jYWxjdWxhdGUtdGFibGUtb2YtY29udGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUF1QixrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RSxPQUFPLEVBQWMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxvREFBb0QsR0FDckQsTUFBTSx5REFBeUQsQ0FBQzs7QUFJMUQsSUFBTSx1QkFBdUIsR0FBN0IsTUFBTSx1QkFBdUI7SUFFakIsYUFBYSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzNDLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFckMsTUFBTSxDQUFDLE9BQXVDO1FBQ25ELE1BQU0sSUFBSSxHQUEwQixFQUFFLENBQUM7UUFDdkMsTUFBTSxJQUFJLEdBQTBCLEVBQUUsQ0FBQztRQUN2QyxNQUFNLEtBQUssR0FBMEIsRUFBRSxDQUFDO1FBRXhDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLENB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QyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEIsQ0FBQzt1R0FoRVUsdUJBQXVCOzJHQUF2Qix1QkFBdUI7O0FBQXZCLHVCQUF1QjtJQURuQyxVQUFVLENBQUMsOEJBQThCLENBQUM7R0FDOUIsdUJBQXVCLENBaUVuQzs7MkZBakVZLHVCQUF1QjtrQkFGbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhbGN1bGF0ZVRhYmxlT2ZDb250ZW50UmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLXRhYmxlLW9mLWNvbnRlbnQtcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IElUYWJsZU9mQ29udGVudEl0ZW0sIFRhYmxlT2ZDb250ZW50RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBJRXhlY3V0aW9uLCBNZWRpYXRyLCBNRXhlY3V0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbWVkaWF0cic7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVIYXNoRnJvbVNjcm9sbFBvc2l0aW9uQW5kQWN0aXZhdGVUb2NSZXF1ZXN0LFxufSBmcm9tICcuLi9jYWxjdWxhdGUtaGFzaC1mcm9tLXNjcm9sbC1wb3NpdGlvbi1hbmQtYWN0aXZhdGUtdG9jJztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZVRhYmxlT2ZDb250ZW50IGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3QsIHZvaWQ+e1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFQcm92aWRlciA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnRSZXF1ZXN0KTogdm9pZCB7XG4gICAgY29uc3QgZmxhdDogSVRhYmxlT2ZDb250ZW50SXRlbVtdID0gW107XG4gICAgY29uc3QgdHJlZTogSVRhYmxlT2ZDb250ZW50SXRlbVtdID0gW107XG4gICAgY29uc3Qgc3RhY2s6IElUYWJsZU9mQ29udGVudEl0ZW1bXSA9IFtdO1xuXG4gICAgdGhpcy5fZ2V0TmF2aWdhdGlvblNlbGVjdG9ycyhyZXF1ZXN0Lmhvc3RFbGVtZW50LCB0aGlzLl9kYXRhUHJvdmlkZXIuZ2V0VGFibGVPZkNvbnRlbnQoKT8ucmFuZ2UpLmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgIGNvbnN0IHRvY0l0ZW0gPSB0aGlzLl9jcmVhdGVJdGVtKGVsZW1lbnQpO1xuICAgICAgdGhpcy5faW5zZXJ0SXRlbUludG9UcmVlKHRvY0l0ZW0sIHRyZWUsIHN0YWNrKTtcbiAgICAgIGZsYXQucHVzaCh0b2NJdGVtKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2RhdGFQcm92aWRlci50b2NEYXRhLnNldChuZXcgVGFibGVPZkNvbnRlbnREYXRhKGZsYXQsIHRyZWUpKTtcbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUobmV3IENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1JlcXVlc3QoKSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROYXZpZ2F0aW9uU2VsZWN0b3JzKGZNYXJrZG93blBhZ2U6IEhUTUxFbGVtZW50LCB0b2NSYW5nZT86IHtcbiAgICBzdGFydDogbnVtYmVyLFxuICAgIGVuZDogbnVtYmVyXG4gIH0pOiBIVE1MRWxlbWVudFtdIHtcbiAgICBpZiAoIXRvY1JhbmdlIHx8IHRvY1JhbmdlLnN0YXJ0IDwgMSB8fCB0b2NSYW5nZS5lbmQgPiA2KSB7XG4gICAgICB0b2NSYW5nZSA9IHsgc3RhcnQ6IDIsIGVuZDogNiB9O1xuICAgIH1cbiAgICBjb25zdCBzZWxlY3RvcnM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChsZXQgaSA9IHRvY1JhbmdlLnN0YXJ0OyBpIDw9IHRvY1JhbmdlLmVuZDsgaSsrKSB7XG4gICAgICBzZWxlY3RvcnMucHVzaChgaCR7aX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIEFycmF5LmZyb20oZk1hcmtkb3duUGFnZS5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9ycy5qb2luKCcsICcpKSk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVJdGVtKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSVRhYmxlT2ZDb250ZW50SXRlbSB7XG4gICAgZWxlbWVudC5pZCA9IHRoaXMuX2NyZWF0ZU5hdmlnYXRpb25JZChlbGVtZW50KTtcbiAgICByZXR1cm4ge1xuICAgICAgaGFzaDogYCMke0NTUy5lc2NhcGUoZWxlbWVudC5pZCl9YCxcbiAgICAgIHRpdGxlOiBlbGVtZW50LmlubmVySFRNTCxcbiAgICAgIGVsZW1lbnQsXG4gICAgICBjaGlsZHJlbjogW10sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU5hdmlnYXRpb25JZChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGVsZW1lbnQuaW5uZXJIVE1MLnRvTG93ZXJDYXNlKCkucmVwbGFjZUFsbCgnICcsICctJyk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRMZXZlbChlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHBhcnNlSW50KGVsZW1lbnQudGFnTmFtZS5zdWJzdHJpbmcoMSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5zZXJ0SXRlbUludG9UcmVlKHRvY0l0ZW06IElUYWJsZU9mQ29udGVudEl0ZW0sIHRyZWU6IElUYWJsZU9mQ29udGVudEl0ZW1bXSwgc3RhY2s6IElUYWJsZU9mQ29udGVudEl0ZW1bXSk6IHZvaWQge1xuICAgIHdoaWxlIChzdGFjay5sZW5ndGggPiAwICYmIHRoaXMuX2dldExldmVsKHN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdLmVsZW1lbnQpID49IHRoaXMuX2dldExldmVsKHRvY0l0ZW0uZWxlbWVudCkpIHtcbiAgICAgIHN0YWNrLnBvcCgpO1xuICAgIH1cblxuICAgIGlmIChzdGFjay5sZW5ndGggPT09IDApIHtcbiAgICAgIHRyZWUucHVzaCh0b2NJdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3RhY2tbc3RhY2subGVuZ3RoIC0gMV0uY2hpbGRyZW4ucHVzaCh0b2NJdGVtKTtcbiAgICB9XG5cbiAgICBzdGFjay5wdXNoKHRvY0l0ZW0pO1xuICB9XG59XG4iXX0=","export class ScrollToElementInContainerRequest {\n hash;\n static requestToken = Symbol('ScrollToElementInContainerRequest');\n constructor(hash) {\n this.hash = hash;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyLXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9zY3JvbGwtdG8tZWxlbWVudC1pbi1jb250YWluZXIvc2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGlDQUFpQztJQUd6QjtJQUZaLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFFekUsWUFBbUIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGhhc2g6IHN0cmluZykge1xuICB9XG59XG4iXX0=","import { __decorate } from \"tslib\";\nimport { ScrollToElementInContainerRequest } from './scroll-to-element-in-container-request';\nimport { inject, Injectable } from '@angular/core';\nimport { SCROLLABLE_CONTAINER } from '../../../index';\nimport { MExecution } from '../../../../../mediatr';\nimport { DOCUMENT_ELEMENT, WINDOW } from '../../../../../common';\nimport * as i0 from \"@angular/core\";\nlet ScrollToElementInContainer = class ScrollToElementInContainer {\n _scrollableContainer = inject(SCROLLABLE_CONTAINER);\n _window = inject(WINDOW);\n _docElement = inject(DOCUMENT_ELEMENT);\n handle(payload) {\n const container = this._scrollableContainer.htmlElement;\n container._ignoreProgrammatic = true;\n this._scrollableContainer.htmlElement.scrollTo({\n top: this._getScrollTo(this._getScrollToElement(payload.hash)) - this._getHeaderHeight(),\n behavior: 'smooth',\n });\n }\n _getHeaderHeight() {\n return parseInt(this._window\n .getComputedStyle(this._docElement)\n .getPropertyValue('--header-height'), 10);\n }\n _getScrollToElement(hash) {\n const element = this._scrollableContainer.htmlElement?.querySelector(hash);\n if (!element) {\n throw new Error(`Element ${hash} not found`);\n }\n return element;\n }\n _getScrollTo(element) {\n return this._isFirstElementInContainer(element) ? 0 : this._calculateScrollTo(element);\n }\n _isFirstElementInContainer(element) {\n return element.parentElement.children[0] === element;\n }\n _calculateScrollTo(element) {\n return this._getElementTop(element) - this._getContainerTop() + this._scrollableContainer.htmlElement.scrollTop;\n }\n _getElementTop(element) {\n return element.getBoundingClientRect().top;\n }\n _getContainerTop() {\n return this._scrollableContainer.htmlElement.getBoundingClientRect().top;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollToElementInContainer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollToElementInContainer });\n};\nScrollToElementInContainer = __decorate([\n MExecution(ScrollToElementInContainerRequest)\n], ScrollToElementInContainer);\nexport { ScrollToElementInContainer };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollToElementInContainer, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvZmVhdHVyZXMvc2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyL3Njcm9sbC10by1lbGVtZW50LWluLWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFJMUQsSUFBTSwwQkFBMEIsR0FBaEMsTUFBTSwwQkFBMEI7SUFFcEIsb0JBQW9CLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDcEQsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixXQUFXLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFakQsTUFBTSxDQUFDLE9BQTBDO1FBQ3RELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUM7UUFDeEQsU0FBUyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztRQUVyQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztZQUM3QyxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3hGLFFBQVEsRUFBRSxRQUFRO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU87YUFDekIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQzthQUNsQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsQ0FDekMsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxJQUFZO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBZ0IsQ0FBQztRQUMxRixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixNQUFNLElBQUksS0FBSyxDQUFDLFdBQVksSUFBSyxZQUFZLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVPLFlBQVksQ0FBQyxPQUFvQjtRQUN2QyxPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVPLDBCQUEwQixDQUFDLE9BQW9CO1FBQ3JELE9BQU8sT0FBTyxDQUFDLGFBQWMsQ0FBQyxRQUFRLENBQUUsQ0FBQyxDQUFFLEtBQUssT0FBTyxDQUFDO0lBQzFELENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxPQUFvQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDbEgsQ0FBQztJQUVPLGNBQWMsQ0FBQyxPQUFvQjtRQUN6QyxPQUFPLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUM3QyxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUMzRSxDQUFDO3VHQWpEVSwwQkFBMEI7MkdBQTFCLDBCQUEwQjs7QUFBMUIsMEJBQTBCO0lBRHRDLFVBQVUsQ0FBQyxpQ0FBaUMsQ0FBQztHQUNqQywwQkFBMEIsQ0FrRHRDOzsyRkFsRFksMEJBQTBCO2tCQUZ0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0IH0gZnJvbSAnLi9zY3JvbGwtdG8tZWxlbWVudC1pbi1jb250YWluZXItcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNDUk9MTEFCTEVfQ09OVEFJTkVSIH0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgRE9DVU1FTlRfRUxFTUVOVCwgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29tbW9uJztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFNjcm9sbFRvRWxlbWVudEluQ29udGFpbmVyIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9zY3JvbGxhYmxlQ29udGFpbmVyID0gaW5qZWN0KFNDUk9MTEFCTEVfQ09OVEFJTkVSKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvY0VsZW1lbnQgPSBpbmplY3QoRE9DVU1FTlRfRUxFTUVOVCk7XG5cbiAgcHVibGljIGhhbmRsZShwYXlsb2FkOiBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9zY3JvbGxhYmxlQ29udGFpbmVyLmh0bWxFbGVtZW50O1xuICAgIGNvbnRhaW5lci5faWdub3JlUHJvZ3JhbW1hdGljID0gdHJ1ZTtcblxuICAgIHRoaXMuX3Njcm9sbGFibGVDb250YWluZXIuaHRtbEVsZW1lbnQuc2Nyb2xsVG8oe1xuICAgICAgdG9wOiB0aGlzLl9nZXRTY3JvbGxUbyh0aGlzLl9nZXRTY3JvbGxUb0VsZW1lbnQocGF5bG9hZC5oYXNoKSkgLSB0aGlzLl9nZXRIZWFkZXJIZWlnaHQoKSxcbiAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEhlYWRlckhlaWdodCgpOiBudW1iZXIge1xuICAgIHJldHVybiBwYXJzZUludCh0aGlzLl93aW5kb3dcbiAgICAgIC5nZXRDb21wdXRlZFN0eWxlKHRoaXMuX2RvY0VsZW1lbnQpXG4gICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnLS1oZWFkZXItaGVpZ2h0JyksIDEwLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTY3JvbGxUb0VsZW1lbnQoaGFzaDogc3RyaW5nKTogSFRNTEVsZW1lbnQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9zY3JvbGxhYmxlQ29udGFpbmVyLmh0bWxFbGVtZW50Py5xdWVyeVNlbGVjdG9yKGhhc2gpIGFzIEhUTUxFbGVtZW50O1xuICAgIGlmICghZWxlbWVudCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFbGVtZW50ICR7IGhhc2ggfSBub3QgZm91bmRgKTtcbiAgICB9XG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTY3JvbGxUbyhlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2lzRmlyc3RFbGVtZW50SW5Db250YWluZXIoZWxlbWVudCkgPyAwIDogdGhpcy5fY2FsY3VsYXRlU2Nyb2xsVG8oZWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF9pc0ZpcnN0RWxlbWVudEluQ29udGFpbmVyKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGVsZW1lbnQucGFyZW50RWxlbWVudCEuY2hpbGRyZW5bIDAgXSA9PT0gZWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZVNjcm9sbFRvKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RWxlbWVudFRvcChlbGVtZW50KSAtIHRoaXMuX2dldENvbnRhaW5lclRvcCgpICsgdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudC5zY3JvbGxUb3A7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFbGVtZW50VG9wKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICByZXR1cm4gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDb250YWluZXJUb3AoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, input, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class TableOfContentItemsComponent {\n items = input.required(...(ngDevMode ? [{ debugName: \"items\" }] : []));\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContentItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: TableOfContentItemsComponent, isStandalone: true, selector: \"ul[f-table-of-content-items]\", inputs: { items: { classPropertyName: \"items\", publicName: \"items\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: \"@for (item of items(); track item.hash) {\\n <li [class.active]=\\\"item.isActive\\\"><a class=\\\"text-ellipsis\\\" [href]=\\\"item.hash\\\">{{ item.title }}</a></li>\\n @if (item.children) {\\n <ul f-table-of-content-items [items]=\\\"item.children\\\"></ul>\\n }\\n}\\n\", styles: [\":host{list-style:none;margin:0;padding:0}:host li{overflow-wrap:break-word;color:var(--secondary-text);max-width:180px}:host li a{display:block;line-height:var(--on-page-navigation-item-height);font-size:14px;color:inherit;font-weight:400}:host li.active{color:var(--primary-text)}:host li+ul{padding:0 16px}\\n\"], dependencies: [{ kind: \"component\", type: TableOfContentItemsComponent, selector: \"ul[f-table-of-content-items]\", inputs: [\"items\"] }], changeDetection: i0.ChangeDetectionStrategy.Default });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContentItemsComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ul[f-table-of-content-items]', changeDetection: ChangeDetectionStrategy.Default, standalone: true, template: \"@for (item of items(); track item.hash) {\\n <li [class.active]=\\\"item.isActive\\\"><a class=\\\"text-ellipsis\\\" [href]=\\\"item.hash\\\">{{ item.title }}</a></li>\\n @if (item.children) {\\n <ul f-table-of-content-items [items]=\\\"item.children\\\"></ul>\\n }\\n}\\n\", styles: [\":host{list-style:none;margin:0;padding:0}:host li{overflow-wrap:break-word;color:var(--secondary-text);max-width:180px}:host li a{display:block;line-height:var(--on-page-navigation-item-height);font-size:14px;color:inherit;font-weight:400}:host li.active{color:var(--primary-text)}:host li+ul{padding:0 16px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtb2YtY29udGVudC1pdGVtcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC90YWJsZS1vZi1jb250ZW50LWl0ZW1zL3RhYmxlLW9mLWNvbnRlbnQtaXRlbXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvdGFibGUtb2YtY29udGVudC1pdGVtcy90YWJsZS1vZi1jb250ZW50LWl0ZW1zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLEtBQUssR0FDakIsTUFBTSxlQUFlLENBQUM7O0FBVXZCLE1BQU0sT0FBTyw0QkFBNEI7SUFDdkIsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLGdEQUF5QixDQUFDO3VHQURyRCw0QkFBNEI7MkZBQTVCLDRCQUE0QiwyTkNiekMsa1FBTUEsZ1hET2EsNEJBQTRCOzsyRkFBNUIsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNFLDhCQUE4QixtQkFHdkIsdUJBQXVCLENBQUMsT0FBTyxjQUNwQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgaW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVRhYmxlT2ZDb250ZW50SXRlbSB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VsW2YtdGFibGUtb2YtY29udGVudC1pdGVtc10nLFxuICBzdHlsZVVybHM6IFsgJy4vdGFibGUtb2YtY29udGVudC1pdGVtcy5jb21wb25lbnQuc2NzcycgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLW9mLWNvbnRlbnQtaXRlbXMuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlT2ZDb250ZW50SXRlbXNDb21wb25lbnQge1xuICBwdWJsaWMgcmVhZG9ubHkgaXRlbXMgPSBpbnB1dC5yZXF1aXJlZDxJVGFibGVPZkNvbnRlbnRJdGVtW10+KCk7XG59XG4iLCJAZm9yIChpdGVtIG9mIGl0ZW1zKCk7IHRyYWNrIGl0ZW0uaGFzaCkge1xuICA8bGkgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCI+PGEgY2xhc3M9XCJ0ZXh0LWVsbGlwc2lzXCIgW2hyZWZdPVwiaXRlbS5oYXNoXCI+e3sgaXRlbS50aXRsZSB9fTwvYT48L2xpPlxuICBAaWYgKGl0ZW0uY2hpbGRyZW4pIHtcbiAgICA8dWwgZi10YWJsZS1vZi1jb250ZW50LWl0ZW1zIFtpdGVtc109XCJpdGVtLmNoaWxkcmVuXCI+PC91bD5cbiAgfVxufVxuIl19","import { ActivateTocByHash, CalculateAbsoluteTopToContainer, CalculateHashFromScrollPositionAndActivateToc, CalculateTableOfContent, ScrollToElementInContainer, } from './features';\nexport const TABLE_OF_CONTENT_MODULE_PROVIDERS = [\n ActivateTocByHash,\n CalculateTableOfContent,\n ScrollToElementInContainer,\n CalculateAbsoluteTopToContainer,\n CalculateHashFromScrollPositionAndActivateToc,\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLXByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L21vZHVsZS1wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQiwrQkFBK0IsRUFDL0IsNkNBQTZDLEVBQzdDLHVCQUF1QixFQUN2QiwwQkFBMEIsR0FDM0IsTUFBTSxZQUFZLENBQUM7QUFFcEIsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUc7SUFDL0MsaUJBQWlCO0lBQ2pCLHVCQUF1QjtJQUN2QiwwQkFBMEI7SUFDMUIsK0JBQStCO0lBQy9CLDZDQUE2QztDQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWN0aXZhdGVUb2NCeUhhc2gsXG4gIENhbGN1bGF0ZUFic29sdXRlVG9wVG9Db250YWluZXIsXG4gIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvYyxcbiAgQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnQsXG4gIFNjcm9sbFRvRWxlbWVudEluQ29udGFpbmVyLFxufSBmcm9tICcuL2ZlYXR1cmVzJztcblxuZXhwb3J0IGNvbnN0IFRBQkxFX09GX0NPTlRFTlRfTU9EVUxFX1BST1ZJREVSUyA9IFtcbiAgQWN0aXZhdGVUb2NCeUhhc2gsXG4gIENhbGN1bGF0ZVRhYmxlT2ZDb250ZW50LFxuICBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lcixcbiAgQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lcixcbiAgQ2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jLFxuXTtcbiJdfQ==","import { ChangeDetectionStrategy, Component, computed, ElementRef, HostListener, inject, untracked, } from '@angular/core';\nimport { TableOfContentItemsComponent } from './table-of-content-items';\nimport { DocumentationStore } from '../../services';\nimport { WINDOW } from '../../../common';\nimport { Mediatr } from '../../../mediatr';\nimport { ActivateTocByHashRequest, ScrollToElementInContainerRequest } from './features';\nimport * as i0 from \"@angular/core\";\nexport class TableOfContent {\n _hostElement = inject((ElementRef)).nativeElement;\n _dataProvider = inject(DocumentationStore);\n _window = inject(WINDOW);\n _mediatr = inject(Mediatr);\n tocData = computed(() => this._dataProvider.tocData(), ...(ngDevMode ? [{ debugName: \"tocData\" }] : []));\n activeMarkerPosition = computed(() => {\n const index = this.tocData()?.flat.findIndex((x) => x.isActive) || 0;\n return untracked(() => this._getActiveMarkerPosition(index));\n }, ...(ngDevMode ? [{ debugName: \"activeMarkerPosition\" }] : []));\n title = inject(DocumentationStore).getTableOfContent().title;\n _getActiveMarkerPosition(activeIndex) {\n const itemHeight = this._getToCItemHeight(this._hostElement);\n return (activeIndex + 1) * itemHeight + itemHeight / 4;\n }\n _getToCItemHeight(element) {\n return parseInt(this._window.getComputedStyle(element).getPropertyValue('--on-page-navigation-item-height'));\n }\n _click(event) {\n const target = event.target;\n if (target.tagName === 'A') {\n event.preventDefault();\n this._scrollTo(target.getAttribute('href'));\n }\n }\n _scrollTo(hash) {\n this._mediatr.execute(new ActivateTocByHashRequest(hash));\n this._mediatr.execute(new ScrollToElementInContainerRequest(hash));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: TableOfContent, isStandalone: true, selector: \"table-of-content\", host: { listeners: { \"click\": \"_click($event)\" } }, ngImport: i0, template: \"@let data = tocData();\\n@if (data) {\\n <div class=\\\"title\\\">{{ title || 'In this article' }}</div>\\n <ul f-table-of-content-items [items]=\\\"data.tree\\\"></ul>\\n <div class=\\\"active-marker\\\" [style.top]=\\\"activeMarkerPosition() + 'px'\\\"></div>\\n}\\n\\n\", styles: [\":host{--on-page-navigation-item-height: 32px;display:none;padding-left:16px;border-left:1px solid var(--divider-color);font-size:13px;font-weight:500;position:relative}:host .title{line-height:32px;font-size:14px;font-weight:600}@media (min-width: 1280px){:host{display:block;width:var(--on-page-navigation-width);position:fixed;top:calc(var(--header-height) + 48px);right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3)}}:host .active-marker{position:absolute;top:0;left:0;width:2px;height:calc(var(--on-page-navigation-item-height) / 2);border-radius:2px;background-color:var(--primary-1);transition:top .25s cubic-bezier(0,1,.5,1),opacity .25s}\\n\"], dependencies: [{ kind: \"component\", type: TableOfContentItemsComponent, selector: \"ul[f-table-of-content-items]\", inputs: [\"items\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContent, decorators: [{\n type: Component,\n args: [{ selector: 'table-of-content', standalone: true, imports: [TableOfContentItemsComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: \"@let data = tocData();\\n@if (data) {\\n <div class=\\\"title\\\">{{ title || 'In this article' }}</div>\\n <ul f-table-of-content-items [items]=\\\"data.tree\\\"></ul>\\n <div class=\\\"active-marker\\\" [style.top]=\\\"activeMarkerPosition() + 'px'\\\"></div>\\n}\\n\\n\", styles: [\":host{--on-page-navigation-item-height: 32px;display:none;padding-left:16px;border-left:1px solid var(--divider-color);font-size:13px;font-weight:500;position:relative}:host .title{line-height:32px;font-size:14px;font-weight:600}@media (min-width: 1280px){:host{display:block;width:var(--on-page-navigation-width);position:fixed;top:calc(var(--header-height) + 48px);right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3)}}:host .active-marker{position:absolute;top:0;left:0;width:2px;height:calc(var(--on-page-navigation-item-height) / 2);border-radius:2px;background-color:var(--primary-1);transition:top .25s cubic-bezier(0,1,.5,1),opacity .25s}\\n\"] }]\n }], propDecorators: { _click: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtb2YtY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L3RhYmxlLW9mLWNvbnRlbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC90YWJsZS1vZi1jb250ZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFVekYsTUFBTSxPQUFPLGNBQWM7SUFFUixZQUFZLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzdELGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMzQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxtREFBQyxDQUFDO0lBRXZELG9CQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDdEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckUsT0FBTyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQyxnRUFBQyxDQUFDO0lBQ2dCLEtBQUssR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxpQkFBaUIsRUFBRyxDQUFDLEtBQUssQ0FBQztJQUV6RSx3QkFBd0IsQ0FBQyxXQUFtQjtRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdELE9BQU8sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEdBQUcsVUFBVSxHQUFHLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE9BQW9CO1FBQzVDLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsa0NBQWtDLENBQUMsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFHUyxNQUFNLENBQUMsS0FBaUI7UUFDaEMsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7UUFDM0MsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQzNCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFFLENBQUMsQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLFNBQVMsQ0FBQyxJQUFZO1FBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLGlDQUFpQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQzt1R0FwQ1UsY0FBYzsyRkFBZCxjQUFjLGdJQ3ZCM0IsNlBBT0Esa3RCRGFZLDRCQUE0Qjs7MkZBRzNCLGNBQWM7a0JBUjFCLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLElBQUksV0FDUCxDQUFDLDRCQUE0QixDQUFDLG1CQUN0Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQTJCckMsTUFBTTtzQkFEZixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgdW50cmFja2VkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRhYmxlT2ZDb250ZW50SXRlbXNDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLW9mLWNvbnRlbnQtaXRlbXMnO1xuaW1wb3J0IHsgRG9jdW1lbnRhdGlvblN0b3JlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IE1lZGlhdHIgfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdCwgU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0IH0gZnJvbSAnLi9mZWF0dXJlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RhYmxlLW9mLWNvbnRlbnQnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS1vZi1jb250ZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLW9mLWNvbnRlbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtUYWJsZU9mQ29udGVudEl0ZW1zQ29tcG9uZW50XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlT2ZDb250ZW50IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmPEhUTUxFbGVtZW50PikubmF0aXZlRWxlbWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGF0YVByb3ZpZGVyID0gaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3dpbmRvdyA9IGluamVjdChXSU5ET1cpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSB0b2NEYXRhID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fZGF0YVByb3ZpZGVyLnRvY0RhdGEoKSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdGl2ZU1hcmtlclBvc2l0aW9uID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy50b2NEYXRhKCk/LmZsYXQuZmluZEluZGV4KCh4KSA9PiB4LmlzQWN0aXZlKSB8fCAwO1xuICAgIHJldHVybiB1bnRyYWNrZWQoKCkgPT4gdGhpcy5fZ2V0QWN0aXZlTWFya2VyUG9zaXRpb24oaW5kZXgpKTtcbiAgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSB0aXRsZSA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpLmdldFRhYmxlT2ZDb250ZW50KCkhLnRpdGxlO1xuXG4gIHByaXZhdGUgX2dldEFjdGl2ZU1hcmtlclBvc2l0aW9uKGFjdGl2ZUluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IGl0ZW1IZWlnaHQgPSB0aGlzLl9nZXRUb0NJdGVtSGVpZ2h0KHRoaXMuX2hvc3RFbGVtZW50KTtcbiAgICByZXR1cm4gKGFjdGl2ZUluZGV4ICsgMSkgKiBpdGVtSGVpZ2h0ICsgaXRlbUhlaWdodCAvIDQ7XG4gIH1cblxuICBwcml2YXRlIF9nZXRUb0NJdGVtSGVpZ2h0KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICByZXR1cm4gcGFyc2VJbnQodGhpcy5fd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZSgnLS1vbi1wYWdlLW5hdmlnYXRpb24taXRlbS1oZWlnaHQnKSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBfY2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgaWYgKHRhcmdldC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLl9zY3JvbGxUbyh0YXJnZXQuZ2V0QXR0cmlidXRlKCdocmVmJykhKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9zY3JvbGxUbyhoYXNoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUobmV3IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdChoYXNoKSk7XG4gICAgdGhpcy5fbWVkaWF0ci5leGVjdXRlKG5ldyBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3QoaGFzaCkpO1xuICB9XG59XG4iLCJAbGV0IGRhdGEgPSB0b2NEYXRhKCk7XG5AaWYgKGRhdGEpIHtcbiAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgdGl0bGUgfHwgJ0luIHRoaXMgYXJ0aWNsZScgfX08L2Rpdj5cbiAgPHVsIGYtdGFibGUtb2YtY29udGVudC1pdGVtcyBbaXRlbXNdPVwiZGF0YS50cmVlXCI+PC91bD5cbiAgPGRpdiBjbGFzcz1cImFjdGl2ZS1tYXJrZXJcIiBbc3R5bGUudG9wXT1cImFjdGl2ZU1hcmtlclBvc2l0aW9uKCkgKyAncHgnXCI+PC9kaXY+XG59XG5cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const SCROLLABLE_CONTAINER = new InjectionToken('SCROLLABLE_CONTAINER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1zY3JvbGxhYmxlLWNvbnRhaW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9zY3JvbGxhYmxlLWNvbnRhaW5lci9tb2RlbHMvaS1zY3JvbGxhYmxlLWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUF1QixzQkFBc0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IFNDUk9MTEFCTEVfQ09OVEFJTkVSID0gbmV3IEluamVjdGlvblRva2VuPElTY3JvbGxhYmxlQ29udGFpbmVyPignU0NST0xMQUJMRV9DT05UQUlORVInKTtcblxuZXhwb3J0IGludGVyZmFjZSBJU2Nyb2xsYWJsZUNvbnRhaW5lciB7XG5cbiAgaHRtbEVsZW1lbnQ6IEhUTUxFbGVtZW50ICYgeyBfaWdub3JlUHJvZ3JhbW1hdGljPzogYm9vbGVhbiB9O1xufVxuXG5cbiJdfQ==","import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, forwardRef, inject, } from '@angular/core';\nimport { SCROLLABLE_CONTAINER } from './models';\nimport { debounceTime, fromEvent, startWith } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { CalculateHashFromScrollPositionAndActivateTocRequest, TABLE_OF_CONTENT_MODULE_PROVIDERS, TableOfContent, } from '../table-of-content';\nimport { Mediatr } from '../../../mediatr';\nimport { DYNAMIC_COMPONENTS_MODULE_PROVIDERS } from '../../../dynamic-components';\nimport { MarkdownService } from '../markdown-renderer';\nimport { filter } from 'rxjs/operators';\nimport { DOCUMENTATION_CONFIGURATION } from '../../domain';\nimport * as i0 from \"@angular/core\";\nexport class ScrollableContainer {\n _destroyRef = inject(DestroyRef);\n _mediatr = inject(Mediatr);\n tableOfContent = inject(DOCUMENTATION_CONFIGURATION).tableOfContent;\n htmlElement = inject((ElementRef)).nativeElement;\n ngOnInit() {\n fromEvent(this.htmlElement, 'scroll', { passive: true })\n .pipe(debounceTime(100), startWith(null), filter((event) => {\n const ignoreProgrammatic = event?.target?._ignoreProgrammatic ?? false;\n this.htmlElement._ignoreProgrammatic = false;\n return !ignoreProgrammatic;\n }), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._calculateHashAndActivate());\n }\n _calculateHashAndActivate() {\n this._mediatr.execute(new CalculateHashFromScrollPositionAndActivateTocRequest());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollableContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: ScrollableContainer, isStandalone: true, selector: \"scrollable-container\", providers: [\n {\n provide: SCROLLABLE_CONTAINER,\n useExisting: forwardRef(() => ScrollableContainer),\n },\n Mediatr,\n ...DYNAMIC_COMPONENTS_MODULE_PROVIDERS,\n ...TABLE_OF_CONTENT_MODULE_PROVIDERS,\n MarkdownService,\n ], ngImport: i0, template: \"<ng-content></ng-content>\\n@if (tableOfContent) {\\n <table-of-content />\\n}\\n\\n\\n\\n\", styles: [\":host{position:relative;width:100%;height:100%;overflow:hidden;overflow-y:auto;scrollbar-gutter:stable}\\n\"], dependencies: [{ kind: \"component\", type: TableOfContent, selector: \"table-of-content\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollableContainer, decorators: [{\n type: Component,\n args: [{ selector: 'scrollable-container', standalone: true, providers: [\n {\n provide: SCROLLABLE_CONTAINER,\n useExisting: forwardRef(() => ScrollableContainer),\n },\n Mediatr,\n ...DYNAMIC_COMPONENTS_MODULE_PROVIDERS,\n ...TABLE_OF_CONTENT_MODULE_PROVIDERS,\n MarkdownService,\n ], changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n TableOfContent,\n ], template: \"<ng-content></ng-content>\\n@if (tableOfContent) {\\n <table-of-content />\\n}\\n\\n\\n\\n\", styles: [\":host{position:relative;width:100%;height:100%;overflow:hidden;overflow-y:auto;scrollbar-gutter:stable}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYWJsZS1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvc2Nyb2xsYWJsZS1jb250YWluZXIvc2Nyb2xsYWJsZS1jb250YWluZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvc2Nyb2xsYWJsZS1jb250YWluZXIvc2Nyb2xsYWJsZS1jb250YWluZXIuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sR0FBVyxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQXdCLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsb0RBQW9ELEVBQ3BELGlDQUFpQyxFQUNqQyxjQUFjLEdBQ2YsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBc0IzRCxNQUFNLE9BQU8sbUJBQW1CO0lBQ2IsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pCLGNBQWMsR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFFdkUsV0FBVyxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUVyRSxRQUFRO1FBQ2IsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO2FBQ3BELElBQUksQ0FDSCxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixNQUFNLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNwQixNQUFNLGtCQUFrQixHQUFHLEtBQUssRUFBRSxNQUFNLEVBQUUsbUJBQW1CLElBQUksS0FBSyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1lBQzdDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztRQUM3QixDQUFDLENBQUMsRUFDRixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQ3JDO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLHlCQUF5QjtRQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLG9EQUFvRCxFQUFFLENBQUMsQ0FBQztJQUNwRixDQUFDO3VHQXhCVSxtQkFBbUI7MkZBQW5CLG1CQUFtQixtRUFmbkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsb0JBQW9CO2dCQUM3QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2FBQ25EO1lBQ0QsT0FBTztZQUNQLEdBQUcsbUNBQW1DO1lBQ3RDLEdBQUcsaUNBQWlDO1lBQ3BDLGVBQWU7U0FDaEIsMEJDN0JILHNGQU9BLG1LRHlCSSxjQUFjOzsyRkFHTCxtQkFBbUI7a0JBcEIvQixTQUFTOytCQUNFLHNCQUFzQixjQUdwQixJQUFJLGFBQ0w7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLG9CQUFvQjs0QkFDN0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7eUJBQ25EO3dCQUNELE9BQU87d0JBQ1AsR0FBRyxtQ0FBbUM7d0JBQ3RDLEdBQUcsaUNBQWlDO3dCQUNwQyxlQUFlO3FCQUNoQixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxjQUFjO3FCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRGVzdHJveVJlZiwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgaW5qZWN0LCBPbkluaXQsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJU2Nyb2xsYWJsZUNvbnRhaW5lciwgU0NST0xMQUJMRV9DT05UQUlORVIgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZyb21FdmVudCwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVIYXNoRnJvbVNjcm9sbFBvc2l0aW9uQW5kQWN0aXZhdGVUb2NSZXF1ZXN0LFxuICBUQUJMRV9PRl9DT05URU5UX01PRFVMRV9QUk9WSURFUlMsXG4gIFRhYmxlT2ZDb250ZW50LFxufSBmcm9tICcuLi90YWJsZS1vZi1jb250ZW50JztcbmltcG9ydCB7IE1lZGlhdHIgfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IERZTkFNSUNfQ09NUE9ORU5UU19NT0RVTEVfUFJPVklERVJTIH0gZnJvbSAnLi4vLi4vLi4vZHluYW1pYy1jb21wb25lbnRzJztcbmltcG9ydCB7IE1hcmtkb3duU2VydmljZSB9IGZyb20gJy4uL21hcmtkb3duLXJlbmRlcmVyJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTiB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Njcm9sbGFibGUtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Njcm9sbGFibGUtY29udGFpbmVyLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY3JvbGxhYmxlLWNvbnRhaW5lci5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNDUk9MTEFCTEVfQ09OVEFJTkVSLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2Nyb2xsYWJsZUNvbnRhaW5lciksXG4gICAgfSxcbiAgICBNZWRpYXRyLFxuICAgIC4uLkRZTkFNSUNfQ09NUE9ORU5UU19NT0RVTEVfUFJPVklERVJTLFxuICAgIC4uLlRBQkxFX09GX0NPTlRFTlRfTU9EVUxFX1BST1ZJREVSUyxcbiAgICBNYXJrZG93blNlcnZpY2UsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgVGFibGVPZkNvbnRlbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNjcm9sbGFibGVDb250YWluZXIgaW1wbGVtZW50cyBPbkluaXQsIElTY3JvbGxhYmxlQ29udGFpbmVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0ciA9IGluamVjdChNZWRpYXRyKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRhYmxlT2ZDb250ZW50ID0gaW5qZWN0KERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTikudGFibGVPZkNvbnRlbnQ7XG5cbiAgcHVibGljIHJlYWRvbmx5IGh0bWxFbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KS5uYXRpdmVFbGVtZW50O1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBmcm9tRXZlbnQodGhpcy5odG1sRWxlbWVudCwgJ3Njcm9sbCcseyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgZmlsdGVyKChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgaWdub3JlUHJvZ3JhbW1hdGljID0gZXZlbnQ/LnRhcmdldD8uX2lnbm9yZVByb2dyYW1tYXRpYyA/PyBmYWxzZTtcbiAgICAgICAgICB0aGlzLmh0bWxFbGVtZW50Ll9pZ25vcmVQcm9ncmFtbWF0aWMgPSBmYWxzZTtcbiAgICAgICAgICByZXR1cm4gIWlnbm9yZVByb2dyYW1tYXRpYztcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fY2FsY3VsYXRlSGFzaEFuZEFjdGl2YXRlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlSGFzaEFuZEFjdGl2YXRlKCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShuZXcgQ2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jUmVxdWVzdCgpKTtcbiAgfVxufVxuXG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5AaWYgKHRhYmxlT2ZDb250ZW50KSB7XG4gIDx0YWJsZS1vZi1jb250ZW50IC8+XG59XG5cblxuXG4iXX0=","import { afterNextRender, ChangeDetectionStrategy, Component, effect, ElementRef, HostListener, inject, Injector, input, untracked, ViewContainerRef, } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { DynamicComponentsStore } from '../../services';\nimport { HandleNavigationLinksHandler, HandleNavigationLinksRequest } from '../../domain';\nimport { IS_BROWSER_PLATFORM, WINDOW } from '../../../common';\nimport { MarkdownFooter } from './markdown-footer';\nimport { Mediatr } from '../../../mediatr';\nimport { RenderInternalComponentsRequest } from '../../../dynamic-components';\nimport { CalculateTableOfContentRequest } from '../table-of-content';\nimport { SCROLLABLE_CONTAINER } from '../scrollable-container';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownRenderer {\n value = input.required(...(ngDevMode ? [{ debugName: \"value\" }] : []));\n _hostElement = inject(ElementRef).nativeElement;\n _router = inject(Router);\n _injector = inject(Injector);\n _isBrowser = inject(IS_BROWSER_PLATFORM);\n _window = inject(WINDOW);\n _dynamicComponents = inject(DynamicComponentsStore);\n _mediatr = inject(Mediatr);\n _viewContainerRef = inject(ViewContainerRef);\n _scrollableContainer = inject(SCROLLABLE_CONTAINER, { optional: true });\n ngOnInit() {\n this._setupValueEffect();\n }\n _setupValueEffect() {\n effect(onCleanup => {\n const html = this.value();\n if (!this._isBrowser || html == null)\n return;\n this._resetScroll();\n const ref = this._schedulePostRenderWork();\n onCleanup(() => ref.destroy());\n }, { injector: this._injector });\n }\n _resetScroll() {\n this._scrollableContainer?.htmlElement?.scrollTo({ top: 0, left: 0 });\n }\n _schedulePostRenderWork() {\n return afterNextRender(() => {\n return untracked(() => {\n this._renderDynamicComponents();\n this._recalculateToc();\n });\n }, { injector: this._injector });\n }\n _renderDynamicComponents() {\n this._mediatr.execute(new RenderInternalComponentsRequest(this._hostElement, this._viewContainerRef));\n }\n _recalculateToc() {\n this._mediatr.execute(new CalculateTableOfContentRequest(this._hostElement));\n }\n _onDocumentClick(event) {\n new HandleNavigationLinksHandler().handle(new HandleNavigationLinksRequest(event, this._window, this._router));\n }\n ngOnDestroy() {\n this._dynamicComponents.dispose();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: MarkdownRenderer, isStandalone: true, selector: \"markdown-renderer\", inputs: { value: { classPropertyName: \"value\", publicName: \"value\", isSignal: true, isRequired: true, transformFunction: null } }, host: { listeners: { \"click\": \"_onDocumentClick($event)\" }, classAttribute: \"m-render\" }, ngImport: i0, template: \"<div [innerHTML]=\\\"value()\\\"></div>\\n@if (value()) {\\n <markdown-footer />\\n}\\n\\n\", styles: [\":host{display:block;width:100%}@media (min-width: 1280px){:host{width:calc(100% - var(--on-page-navigation-width) - var(--page-padding))}}:host.empty-navigation{margin:auto;max-width:900px}\\n\"], dependencies: [{ kind: \"component\", type: MarkdownFooter, selector: \"markdown-footer\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRenderer, decorators: [{\n type: Component,\n args: [{ selector: 'markdown-renderer', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MarkdownFooter], host: {\n class: 'm-render',\n }, template: \"<div [innerHTML]=\\\"value()\\\"></div>\\n@if (value()) {\\n <markdown-footer />\\n}\\n\\n\", styles: [\":host{display:block;width:100%}@media (min-width: 1280px){:host{width:calc(100% - var(--on-page-navigation-width) - var(--page-padding))}}:host.empty-navigation{margin:auto;max-width:900px}\\n\"] }]\n }], propDecorators: { _onDocumentClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tcmVuZGVyZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tcmVuZGVyZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tcmVuZGVyZXIuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBR0wsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLDRCQUE0QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQWEv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akIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsY0FBYyxDQUFDLFFBQ25CO3dCQUNKLEtBQUssRUFBRSxVQUFVO3FCQUNsQjs4QkE0RFMsZ0JBQWdCO3NCQUR6QixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgSW5qZWN0b3IsXG4gIGlucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgdW50cmFja2VkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEhhbmRsZU5hdmlnYXRpb25MaW5rc0hhbmRsZXIsIEhhbmRsZU5hdmlnYXRpb25MaW5rc1JlcXVlc3QgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgSVNfQlJPV1NFUl9QTEFURk9STSwgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IE1hcmtkb3duRm9vdGVyIH0gZnJvbSAnLi9tYXJrZG93bi1mb290ZXInO1xuaW1wb3J0IHsgTWVkaWF0ciB9IGZyb20gJy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2R5bmFtaWMtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3QgfSBmcm9tICcuLi90YWJsZS1vZi1jb250ZW50JztcbmltcG9ydCB7IFNDUk9MTEFCTEVfQ09OVEFJTkVSIH0gZnJvbSAnLi4vc2Nyb2xsYWJsZS1jb250YWluZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXJrZG93bi1yZW5kZXJlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXJrZG93bi1yZW5kZXJlci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFya2Rvd24tcmVuZGVyZXIuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW01hcmtkb3duRm9vdGVyXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnbS1yZW5kZXInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBNYXJrZG93blJlbmRlcmVyIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWUgPSBpbnB1dC5yZXF1aXJlZDxTYWZlSHRtbCB8IHVuZGVmaW5lZD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0Jyb3dzZXIgPSBpbmplY3QoSVNfQlJPV1NFUl9QTEFURk9STSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3dpbmRvdyA9IGluamVjdChXSU5ET1cpXG4gIHByaXZhdGUgcmVhZG9ubHkgX2R5bmFtaWNDb21wb25lbnRzID0gaW5qZWN0KER5bmFtaWNDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zY3JvbGxhYmxlQ29udGFpbmVyID0gaW5qZWN0KFNDUk9MTEFCTEVfQ09OVEFJTkVSLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXR1cFZhbHVlRWZmZWN0KCk7XG4gIH1cblxuICBwcml2YXRlIF9zZXR1cFZhbHVlRWZmZWN0KCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgIG9uQ2xlYW51cCA9PiB7XG4gICAgICAgIGNvbnN0IGh0bWwgPSB0aGlzLnZhbHVlKCk7XG4gICAgICAgIGlmICghdGhpcy5faXNCcm93c2VyIHx8IGh0bWwgPT0gbnVsbCkgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMuX3Jlc2V0U2Nyb2xsKCk7XG5cbiAgICAgICAgY29uc3QgcmVmID0gdGhpcy5fc2NoZWR1bGVQb3N0UmVuZGVyV29yaygpO1xuICAgICAgICBvbkNsZWFudXAoKCkgPT4gcmVmLmRlc3Ryb3koKSk7XG4gICAgICB9LFxuICAgICAgeyBpbmplY3RvcjogdGhpcy5faW5qZWN0b3IgfSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRTY3JvbGwoKTogdm9pZCB7XG4gICAgdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lcj8uaHRtbEVsZW1lbnQ/LnNjcm9sbFRvKHsgdG9wOiAwLCBsZWZ0OiAwIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2NoZWR1bGVQb3N0UmVuZGVyV29yaygpIHtcbiAgICByZXR1cm4gYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgIHJldHVybiB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICB0aGlzLl9yZW5kZXJEeW5hbWljQ29tcG9uZW50cygpO1xuICAgICAgICB0aGlzLl9yZWNhbGN1bGF0ZVRvYygpO1xuICAgICAgfSk7XG4gICAgfSwgeyBpbmplY3RvcjogdGhpcy5faW5qZWN0b3IgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJEeW5hbWljQ29tcG9uZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUoXG4gICAgICBuZXcgUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdCh0aGlzLl9ob3N0RWxlbWVudCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZiksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlY2FsY3VsYXRlVG9jKCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShcbiAgICAgIG5ldyBDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3QodGhpcy5faG9zdEVsZW1lbnQpLFxuICAgICk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBfb25Eb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgbmV3IEhhbmRsZU5hdmlnYXRpb25MaW5rc0hhbmRsZXIoKS5oYW5kbGUoXG4gICAgICBuZXcgSGFuZGxlTmF2aWdhdGlvbkxpbmtzUmVxdWVzdChldmVudCwgdGhpcy5fd2luZG93LCB0aGlzLl9yb3V0ZXIpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZHluYW1pY0NvbXBvbmVudHMuZGlzcG9zZSgpO1xuICB9XG59XG4iLCI8ZGl2IFtpbm5lckhUTUxdPVwidmFsdWUoKVwiPjwvZGl2PlxuQGlmICh2YWx1ZSgpKSB7XG4gIDxtYXJrZG93bi1mb290ZXIgLz5cbn1cblxuIl19","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { distinctUntilChanged, map, of, startWith, switchMap } from 'rxjs';\nimport { catchError, filter } from 'rxjs/operators';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { DocumentationStore } from '../../services';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { MarkdownRenderer, MarkdownService } from '../markdown-renderer';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownRouter {\n _router = inject(Router);\n _activatedRoute = inject(ActivatedRoute);\n _markdown = inject(MarkdownService);\n _dataProvider = inject(DocumentationStore);\n emptyNavigation = !this._dataProvider.getNavigation().length;\n _path$ = this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._activatedRoute.snapshot.url.map(u => u.path).join('/')), distinctUntilChanged());\n html = toSignal(this._path$.pipe(switchMap(path => {\n const url = this._dataProvider.getMarkdownUrl(path);\n return this._markdown.parseUrl(url).pipe(catchError(err => {\n console.error('[MarkdownRouter] parse error:', err, { path, url });\n return of(undefined); // или return EMPTY;\n }));\n })), { initialValue: undefined });\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRouter, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: MarkdownRouter, isStandalone: true, selector: \"markdown-router\", host: { attributes: { \"ngSkipHydration\": \"\" }, properties: { \"class.empty-navigation\": \"emptyNavigation\" } }, ngImport: i0, template: \"<markdown-renderer [value]=\\\"html()\\\" [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n\\n\", styles: [\":host{display:block;width:100%;padding:48px var(--page-padding) 140px}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}\\n\"], dependencies: [{ kind: \"component\", type: MarkdownRenderer, selector: \"markdown-renderer\", inputs: [\"value\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRouter, decorators: [{\n type: Component,\n args: [{ selector: 'markdown-router', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n 'ngSkipHydration': '',\n '[class.empty-navigation]': 'emptyNavigation',\n }, imports: [\n MarkdownRenderer,\n ], template: \"<markdown-renderer [value]=\\\"html()\\\" [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n\\n\", styles: [\":host{display:block;width:100%;padding:48px var(--page-padding) 140px}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tcm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJvdXRlci9tYXJrZG93bi1yb3V0ZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcm91dGVyL21hcmtkb3duLXJvdXRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQWdCekUsTUFBTSxPQUFPLGNBQWM7SUFDUixPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLGVBQWUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNwQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFekMsZUFBZSxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFFL0QsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDaEQsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBNkIsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxZQUFZLGFBQWEsQ0FBQyxFQUNsRixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFDdkUsb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQztJQUVpQixJQUFJLEdBQUcsUUFBUSxDQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDZixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDdEMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsRUFBRSxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNuRSxPQUFPLEVBQUUsQ0FBdUIsU0FBUyxDQUFDLENBQUMsQ0FBQyxvQkFBb0I7UUFDbEUsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUNILEVBQ0QsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLENBQzVCLENBQUM7dUdBNUJTLGNBQWM7MkZBQWQsY0FBYyx5TEN2QjNCLDBGQUVBLHlnQkRrQkksZ0JBQWdCOzsyRkFHUCxjQUFjO2tCQWQxQixTQUFTOytCQUNFLGlCQUFpQixjQUdmLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixpQkFBaUIsRUFBRSxFQUFFO3dCQUNyQiwwQkFBMEIsRUFBRSxpQkFBaUI7cUJBQzlDLFdBQ1E7d0JBQ1AsZ0JBQWdCO3FCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgb2YsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE1hcmtkb3duUmVuZGVyZXIsIE1hcmtkb3duU2VydmljZSB9IGZyb20gJy4uL21hcmtkb3duLXJlbmRlcmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWFya2Rvd24tcm91dGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLXJvdXRlci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFya2Rvd24tcm91dGVyLnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICAnbmdTa2lwSHlkcmF0aW9uJzogJycsXG4gICAgJ1tjbGFzcy5lbXB0eS1uYXZpZ2F0aW9uXSc6ICdlbXB0eU5hdmlnYXRpb24nLFxuICB9LFxuICBpbXBvcnRzOiBbXG4gICAgTWFya2Rvd25SZW5kZXJlcixcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTWFya2Rvd25Sb3V0ZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZhdGVkUm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tYXJrZG93biA9IGluamVjdChNYXJrZG93blNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhUHJvdmlkZXIgPSBpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZW1wdHlOYXZpZ2F0aW9uID0gIXRoaXMuX2RhdGFQcm92aWRlci5nZXROYXZpZ2F0aW9uKCkubGVuZ3RoO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3BhdGgkID0gdGhpcy5fcm91dGVyLmV2ZW50cy5waXBlKFxuICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICBmaWx0ZXIoKGUpOiBlIGlzIE5hdmlnYXRpb25FbmQgfCBudWxsID0+IGUgPT09IG51bGwgfHwgZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxuICAgIG1hcCgoKSA9PiB0aGlzLl9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC51cmwubWFwKHUgPT4gdS5wYXRoKS5qb2luKCcvJykpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGh0bWwgPSB0b1NpZ25hbDxTYWZlSHRtbCB8IHVuZGVmaW5lZD4oXG4gICAgdGhpcy5fcGF0aCQucGlwZShcbiAgICAgIHN3aXRjaE1hcChwYXRoID0+IHtcbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy5fZGF0YVByb3ZpZGVyLmdldE1hcmtkb3duVXJsKHBhdGgpO1xuICAgICAgICByZXR1cm4gdGhpcy5fbWFya2Rvd24ucGFyc2VVcmwodXJsKS5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1tNYXJrZG93blJvdXRlcl0gcGFyc2UgZXJyb3I6JywgZXJyLCB7IHBhdGgsIHVybCB9KTtcbiAgICAgICAgICAgIHJldHVybiBvZjxTYWZlSHRtbCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTsgLy8g0LjQu9C4IHJldHVybiBFTVBUWTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICksXG4gICAgeyBpbml0aWFsVmFsdWU6IHVuZGVmaW5lZCB9LFxuICApO1xufVxuXG4iLCI8bWFya2Rvd24tcmVuZGVyZXIgW3ZhbHVlXT1cImh0bWwoKVwiIFtjbGFzcy5lbXB0eS1uYXZpZ2F0aW9uXT1cImVtcHR5TmF2aWdhdGlvblwiLz5cblxuIl19","import { ChangeDetectionStrategy, Component, DestroyRef, inject, signal, } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { F_PREVIEW_NAVIGATION_PROVIDER, HeaderComponent, MEDIA_LINKS_PROVIDER, NavigationPanelComponent, ScrollableContainer, TOGGLE_NAVIGATION_COMPONENT, } from './components';\nimport { DocumentationStore } from './services';\nimport { HEADER_CONFIGURATION_PROVIDER, IS_BROWSER_PLATFORM, PopoverService, ThemeService, } from '../common';\nimport { FMetaService } from './analytics';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { GTagService } from '../analytics';\nimport { EXTERNAL_COMPONENT_PROVIDER, SHOWCASE_DATA } from '../dynamic-components';\nimport * as i0 from \"@angular/core\";\nexport class Documentation {\n isNavigationVisible = signal(false, ...(ngDevMode ? [{ debugName: \"isNavigationVisible\" }] : []));\n popover = inject(PopoverService).message;\n _metaService = inject(FMetaService);\n _destroyRef = inject(DestroyRef);\n _gTagService = inject(GTagService, { optional: true });\n _themeService = inject(ThemeService, { optional: true });\n emptyNavigation = !inject(DocumentationStore).getNavigation().length;\n isBrowser = inject(IS_BROWSER_PLATFORM);\n ngOnInit() {\n if (!this.isBrowser) {\n return;\n }\n this._themeService?.initialize();\n this._gTagService?.initialize();\n this._metaService.changes().pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe();\n }\n onToggleNavigation(value) {\n this.isNavigationVisible.set(value);\n }\n ngOnDestroy() {\n this._metaService.dispose();\n // Cleanup logic if needed\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Documentation, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: Documentation, isStandalone: true, selector: \"documentation\", providers: [\n DocumentationStore,\n FMetaService,\n {\n provide: F_PREVIEW_NAVIGATION_PROVIDER,\n useExisting: DocumentationStore,\n },\n {\n provide: MEDIA_LINKS_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getMediaLinks(),\n },\n {\n provide: HEADER_CONFIGURATION_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getHeader(),\n },\n {\n provide: TOGGLE_NAVIGATION_COMPONENT,\n useExisting: Documentation,\n },\n {\n provide: EXTERNAL_COMPONENT_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getComponents(),\n },\n {\n provide: SHOWCASE_DATA,\n deps: [DocumentationStore],\n useFactory: (store) => store.getShowcaseItems(),\n },\n ], ngImport: i0, template: \"@if (!emptyNavigation) {\\n <f-navigation-panel [class.visible]=\\\"isNavigationVisible()\\\"/>\\n <div class=\\\"f-backdrop\\\" [class.visible]=\\\"isNavigationVisible()\\\" (click)=\\\"onToggleNavigation(false)\\\"></div>\\n}\\n\\n<scrollable-container>\\n <f-header [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n <router-outlet/>\\n</scrollable-container>\\n\\n@if (popover()) {\\n <div class=\\\"popover\\\">{{ popover() }}</div>\\n}\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:flex-start;height:100%;gap:5px}.f-backdrop{position:fixed;inset:0;opacity:0;z-index:var(--z-index-backdrop);background:var(--backdrop-color);transition:opacity .2s ease-in-out;pointer-events:none}.f-backdrop.visible{opacity:1;pointer-events:all}@media (min-width: 960px){.f-backdrop{position:unset}}.popover{position:fixed;min-width:120px;bottom:50%;left:50%;text-align:center;transform:translate(-50%,-50%);background-color:var(--code-view-copy-button-hover-background);border:1px solid var(--code-view-copy-button-border-color);box-shadow:var(--shadow-3);color:var(--primary-text);font-size:14px;padding:4px 8px;border-radius:4px;z-index:var(--z-index-popover);opacity:1}\\n\"], dependencies: [{ kind: \"component\", type: NavigationPanelComponent, selector: \"f-navigation-panel\" }, { kind: \"component\", type: ScrollableContainer, selector: \"scrollable-container\" }, { kind: \"directive\", type: RouterOutlet, selector: \"router-outlet\", inputs: [\"name\", \"routerOutletData\"], outputs: [\"activate\", \"deactivate\", \"attach\", \"detach\"], exportAs: [\"outlet\"] }, { kind: \"component\", type: HeaderComponent, selector: \"f-header\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)]] });\n}\ni0.ɵɵngDeclareClassMetadataAsync({ minVersion: \"18.0.0\", version: \"20.1.8\", ngImport: i0, type: Documentation, resolveDeferredDeps: () => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)], resolveMetadata: CookiePopupComponent => ({ decorators: [{\n type: Component,\n args: [{ selector: 'documentation', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n DocumentationStore,\n FMetaService,\n {\n provide: F_PREVIEW_NAVIGATION_PROVIDER,\n useExisting: DocumentationStore,\n },\n {\n provide: MEDIA_LINKS_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getMediaLinks(),\n },\n {\n provide: HEADER_CONFIGURATION_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getHeader(),\n },\n {\n provide: TOGGLE_NAVIGATION_COMPONENT,\n useExisting: Documentation,\n },\n {\n provide: EXTERNAL_COMPONENT_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getComponents(),\n },\n {\n provide: SHOWCASE_DATA,\n deps: [DocumentationStore],\n useFactory: (store) => store.getShowcaseItems(),\n },\n ], imports: [\n NavigationPanelComponent,\n ScrollableContainer,\n RouterOutlet,\n HeaderComponent,\n CookiePopupComponent,\n ], template: \"@if (!emptyNavigation) {\\n <f-navigation-panel [class.visible]=\\\"isNavigationVisible()\\\"/>\\n <div class=\\\"f-backdrop\\\" [class.visible]=\\\"isNavigationVisible()\\\" (click)=\\\"onToggleNavigation(false)\\\"></div>\\n}\\n\\n<scrollable-container>\\n <f-header [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n <router-outlet/>\\n</scrollable-container>\\n\\n@if (popover()) {\\n <div class=\\\"popover\\\">{{ popover() }}</div>\\n}\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:flex-start;height:100%;gap:5px}.f-backdrop{position:fixed;inset:0;opacity:0;z-index:var(--z-index-backdrop);background:var(--backdrop-color);transition:opacity .2s ease-in-out;pointer-events:none}.f-backdrop.visible{opacity:1;pointer-events:all}@media (min-width: 960px){.f-backdrop{position:unset}}.popover{position:fixed;min-width:120px;bottom:50%;left:50%;text-align:center;transform:translate(-50%,-50%);background-color:var(--code-view-copy-button-hover-background);border:1px solid var(--code-view-copy-button-border-color);box-shadow:var(--shadow-3);color:var(--primary-text);font-size:14px;padding:4px 8px;border-radius:4px;z-index:var(--z-index-popover);opacity:1}\\n\"] }]\n }], ctorParameters: null, propDecorators: null }) });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9jdW1lbnRhdGlvbi50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9jdW1lbnRhdGlvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBR04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLGVBQWUsRUFDYSxvQkFBb0IsRUFDaEQsd0JBQXdCLEVBQ3hCLG1CQUFtQixFQUNuQiwyQkFBMkIsR0FDNUIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2hELE9BQU8sRUFDTCw2QkFBNkIsRUFBRSxtQkFBbUIsRUFDbEQsY0FBYyxFQUNkLFlBQVksR0FDYixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQWdEbkYsTUFBTSxPQUFPLGFBQWE7SUFDTCxtQkFBbUIsR0FBRyxNQUFNLENBQVUsS0FBSywrREFBQyxDQUFDO0lBQzdDLE9BQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBRTNDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDcEMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELGFBQWEsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFdkQsZUFBZSxHQUFHLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsYUFBYSxFQUFFLENBQUMsTUFBTSxDQUFDO0lBRXJFLFNBQVMsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUVwRCxRQUFRO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDbkUsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVNLGtCQUFrQixDQUFDLEtBQWM7UUFDdEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzVCLDBCQUEwQjtJQUM1QixDQUFDO3VHQTlCVSxhQUFhOzJGQUFiLGFBQWEsNERBeENiO1lBQ1Qsa0JBQWtCO1lBQ2xCLFlBQVk7WUFDWjtnQkFDRSxPQUFPLEVBQUUsNkJBQTZCO2dCQUN0QyxXQUFXLEVBQUUsa0JBQWtCO2FBQ2hDO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLG9CQUFvQjtnQkFDN0IsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0JBQzFCLFVBQVUsRUFBRSxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7YUFDakU7WUFDRDtnQkFDRSxPQUFPLEVBQUUsNkJBQTZCO2dCQUN0QyxJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQkFDMUIsVUFBVSxFQUFFLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRTthQUM3RDtZQUNEO2dCQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFdBQVcsRUFBRSxhQUFhO2FBQzNCO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLDJCQUEyQjtnQkFDcEMsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0JBQzFCLFVBQVUsRUFBRSxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7YUFDakU7WUFDRDtnQkFDRSxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0JBQzFCLFVBQVUsRUFBRSxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTthQUNwRTtTQUNGLDBCQ25FSCxrZEFnQkEsdXhCRHFESSx3QkFBd0IsK0RBQ3hCLG1CQUFtQixpRUFDbkIsWUFBWSwrS0FDWixlQUFlOztnR0FJTixhQUFhO3NCQTlDekIsU0FBUzttQ0FDRSxlQUFlLGNBR2IsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDOzRCQUNULGtCQUFrQjs0QkFDbEIsWUFBWTs0QkFDWjtnQ0FDRSxPQUFPLEVBQUUsNkJBQTZCO2dDQUN0QyxXQUFXLEVBQUUsa0JBQWtCOzZCQUNoQzs0QkFDRDtnQ0FDRSxPQUFPLEVBQUUsb0JBQW9CO2dDQUM3QixJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQ0FDMUIsVUFBVSxFQUFFLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTs2QkFDakU7NEJBQ0Q7Z0NBQ0UsT0FBTyxFQUFFLDZCQUE2QjtnQ0FDdEMsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0NBQzFCLFVBQVUsRUFBRSxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUU7NkJBQzdEOzRCQUNEO2dDQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0NBQ3BDLFdBQVcsZUFBZTs2QkFDM0I7NEJBQ0Q7Z0NBQ0UsT0FBTyxFQUFFLDJCQUEyQjtnQ0FDcEMsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0NBQzFCLFVBQVUsRUFBRSxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7NkJBQ2pFOzRCQUNEO2dDQUNFLE9BQU8sRUFBRSxhQUFhO2dDQUN0QixJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQ0FDMUIsVUFBVSxFQUFFLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFOzZCQUNwRTt5QkFDRixXQUNROzRCQUNQLHdCQUF3Qjs0QkFDeEIsbUJBQW1COzRCQUNuQixZQUFZOzRCQUNaLGVBQWU7NEJBQ2Ysb0JBQW9CO3lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIERlc3Ryb3lSZWYsXG4gIGluamVjdCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgRl9QUkVWSUVXX05BVklHQVRJT05fUFJPVklERVIsXG4gIEhlYWRlckNvbXBvbmVudCxcbiAgSVRvZ2dsZU5hdmlnYXRpb25Db21wb25lbnQsIE1FRElBX0xJTktTX1BST1ZJREVSLFxuICBOYXZpZ2F0aW9uUGFuZWxDb21wb25lbnQsXG4gIFNjcm9sbGFibGVDb250YWluZXIsXG4gIFRPR0dMRV9OQVZJR0FUSU9OX0NPTVBPTkVOVCxcbn0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4vc2VydmljZXMnO1xuaW1wb3J0IHtcbiAgSEVBREVSX0NPTkZJR1VSQVRJT05fUFJPVklERVIsIElTX0JST1dTRVJfUExBVEZPUk0sXG4gIFBvcG92ZXJTZXJ2aWNlLFxuICBUaGVtZVNlcnZpY2UsXG59IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBGTWV0YVNlcnZpY2UgfSBmcm9tICcuL2FuYWx5dGljcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDb29raWVQb3B1cENvbXBvbmVudCB9IGZyb20gJy4uL2FuYWx5dGljcy9jb29raWUtcG9wdXAvY29va2llLXBvcHVwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHVGFnU2VydmljZSB9IGZyb20gJy4uL2FuYWx5dGljcyc7XG5pbXBvcnQgeyBFWFRFUk5BTF9DT01QT05FTlRfUFJPVklERVIsIFNIT1dDQVNFX0RBVEEgfSBmcm9tICcuLi9keW5hbWljLWNvbXBvbmVudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkb2N1bWVudGF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RvY3VtZW50YXRpb24uaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RvY3VtZW50YXRpb24uc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRG9jdW1lbnRhdGlvblN0b3JlLFxuICAgIEZNZXRhU2VydmljZSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBGX1BSRVZJRVdfTkFWSUdBVElPTl9QUk9WSURFUixcbiAgICAgIHVzZUV4aXN0aW5nOiBEb2N1bWVudGF0aW9uU3RvcmUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBNRURJQV9MSU5LU19QUk9WSURFUixcbiAgICAgIGRlcHM6IFtEb2N1bWVudGF0aW9uU3RvcmVdLFxuICAgICAgdXNlRmFjdG9yeTogKHN0b3JlOiBEb2N1bWVudGF0aW9uU3RvcmUpID0+IHN0b3JlLmdldE1lZGlhTGlua3MoKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSLFxuICAgICAgZGVwczogW0RvY3VtZW50YXRpb25TdG9yZV0sXG4gICAgICB1c2VGYWN0b3J5OiAoc3RvcmU6IERvY3VtZW50YXRpb25TdG9yZSkgPT4gc3RvcmUuZ2V0SGVhZGVyKCksXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQsXG4gICAgICB1c2VFeGlzdGluZzogRG9jdW1lbnRhdGlvbixcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUixcbiAgICAgIGRlcHM6IFtEb2N1bWVudGF0aW9uU3RvcmVdLFxuICAgICAgdXNlRmFjdG9yeTogKHN0b3JlOiBEb2N1bWVudGF0aW9uU3RvcmUpID0+IHN0b3JlLmdldENvbXBvbmVudHMoKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNIT1dDQVNFX0RBVEEsXG4gICAgICBkZXBzOiBbRG9jdW1lbnRhdGlvblN0b3JlXSxcbiAgICAgIHVzZUZhY3Rvcnk6IChzdG9yZTogRG9jdW1lbnRhdGlvblN0b3JlKSA9PiBzdG9yZS5nZXRTaG93Y2FzZUl0ZW1zKCksXG4gICAgfSxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIE5hdmlnYXRpb25QYW5lbENvbXBvbmVudCxcbiAgICBTY3JvbGxhYmxlQ29udGFpbmVyLFxuICAgIFJvdXRlck91dGxldCxcbiAgICBIZWFkZXJDb21wb25lbnQsXG4gICAgQ29va2llUG9wdXBDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERvY3VtZW50YXRpb24gaW1wbGVtZW50cyBJVG9nZ2xlTmF2aWdhdGlvbkNvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNOYXZpZ2F0aW9uVmlzaWJsZSA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBwb3BvdmVyID0gaW5qZWN0KFBvcG92ZXJTZXJ2aWNlKS5tZXNzYWdlO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX21ldGFTZXJ2aWNlID0gaW5qZWN0KEZNZXRhU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2dUYWdTZXJ2aWNlID0gaW5qZWN0KEdUYWdTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVNlcnZpY2UgPSBpbmplY3QoVGhlbWVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBlbXB0eU5hdmlnYXRpb24gPSAhaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSkuZ2V0TmF2aWdhdGlvbigpLmxlbmd0aDtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNCcm93c2VyID0gaW5qZWN0KElTX0JST1dTRVJfUExBVEZPUk0pO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuaXNCcm93c2VyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3RoZW1lU2VydmljZT8uaW5pdGlhbGl6ZSgpO1xuICAgIHRoaXMuX2dUYWdTZXJ2aWNlPy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy5fbWV0YVNlcnZpY2UuY2hhbmdlcygpLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG9uVG9nZ2xlTmF2aWdhdGlvbih2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuaXNOYXZpZ2F0aW9uVmlzaWJsZS5zZXQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX21ldGFTZXJ2aWNlLmRpc3Bvc2UoKTtcbiAgICAvLyBDbGVhbnVwIGxvZ2ljIGlmIG5lZWRlZFxuICB9XG59XG4iLCJAaWYgKCFlbXB0eU5hdmlnYXRpb24pIHtcbiAgPGYtbmF2aWdhdGlvbi1wYW5lbCBbY2xhc3MudmlzaWJsZV09XCJpc05hdmlnYXRpb25WaXNpYmxlKClcIi8+XG4gIDxkaXYgY2xhc3M9XCJmLWJhY2tkcm9wXCIgW2NsYXNzLnZpc2libGVdPVwiaXNOYXZpZ2F0aW9uVmlzaWJsZSgpXCIgKGNsaWNrKT1cIm9uVG9nZ2xlTmF2aWdhdGlvbihmYWxzZSlcIj48L2Rpdj5cbn1cblxuPHNjcm9sbGFibGUtY29udGFpbmVyPlxuICA8Zi1oZWFkZXIgW2NsYXNzLmVtcHR5LW5hdmlnYXRpb25dPVwiZW1wdHlOYXZpZ2F0aW9uXCIvPlxuICA8cm91dGVyLW91dGxldC8+XG48L3Njcm9sbGFibGUtY29udGFpbmVyPlxuXG5AaWYgKHBvcG92ZXIoKSkge1xuICA8ZGl2IGNsYXNzPVwicG9wb3ZlclwiPnt7IHBvcG92ZXIoKSB9fTwvZGl2PlxufVxuQGRlZmVyICh3aGVuIGlzQnJvd3Nlcikge1xuICA8Y29va2llLXBvcHVwLz5cbn1cbiJdfQ==","export const DOCUMENTATION_ROUTES = [\n {\n path: '',\n loadComponent: () => import('./index').then(m => m.Documentation),\n children: [\n {\n path: '**',\n loadComponent: () => import('./components/markdown-router').then(m => m.MarkdownRouter),\n },\n ],\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVc7SUFDMUM7UUFDRSxJQUFJLEVBQUUsRUFBRTtRQUNSLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUNqRSxRQUFRLEVBQUU7WUFDUjtnQkFDRSxJQUFJLEVBQUUsSUFBSTtnQkFDVixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDhCQUE4QixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQzthQUN4RjtTQUNGO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuZXhwb3J0IGNvbnN0IERPQ1VNRU5UQVRJT05fUk9VVEVTOiBSb3V0ZXMgPSBbXG4gIHtcbiAgICBwYXRoOiAnJyxcbiAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vaW5kZXgnKS50aGVuKG0gPT4gbS5Eb2N1bWVudGF0aW9uKSxcbiAgICBjaGlsZHJlbjogW1xuICAgICAge1xuICAgICAgICBwYXRoOiAnKionLFxuICAgICAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vY29tcG9uZW50cy9tYXJrZG93bi1yb3V0ZXInKS50aGVuKG0gPT4gbS5NYXJrZG93blJvdXRlciksXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5dO1xuIl19","export function provideBackground(background) {\n return {\n background,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1iYWNrZ3JvdW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1iYWNrZ3JvdW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxVQUFxQjtJQUNyRCxPQUFPO1FBQ0wsVUFBVTtLQUNYLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhvbWVQYWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktaG9tZS1wYWdlLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUJhY2tncm91bmQoYmFja2dyb3VuZDogVHlwZTxhbnk+KTogUGFydGlhbDxJSG9tZVBhZ2VDb25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgYmFja2dyb3VuZCxcbiAgfTtcbn1cbiJdfQ==","export function provideHero(hero) {\n return {\n hero,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZXJvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1oZXJvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBbUI7SUFDN0MsT0FBTztRQUNMLElBQUk7S0FDTCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIb21lUGFnZUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWhvbWUtcGFnZS1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZXJvKGhlcm86IElIb21lUGFnZUhlcm8pOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBoZXJvLFxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElIb21lUGFnZUhlcm8ge1xuICBoZWFkbGluZT86IHN0cmluZztcbiAgdGFnbGluZTE/OiBzdHJpbmc7XG4gIHRhZ2xpbmUyPzogc3RyaW5nO1xuICBzdWJEZXNjcmlwdGlvbj86IHN0cmluZztcbn1cbiJdfQ==","export function provideHomeButtons(buttons) {\n return {\n buttons,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLWJ1dHRvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaG9tZS1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhvbWUtYnV0dG9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsa0JBQWtCLENBQUMsT0FBd0I7SUFDekQsT0FBTztRQUNMLE9BQU87S0FDUixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIb21lUGFnZUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWhvbWUtcGFnZS1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIb21lQnV0dG9ucyhidXR0b25zOiBJSG9tZVBhZ2VMaW5rW10pOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBidXR0b25zLFxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElIb21lUGFnZUxpbmsge1xuXG4gIHByaW1hcnk/OiBib29sZWFuO1xuXG4gIHJvdXRlckxpbms/OiBzdHJpbmc7XG5cbiAgaHJlZj86IHN0cmluZztcblxuICB0ZXh0OiBzdHJpbmc7XG5cbiAgaWNvbj86IHN0cmluZztcbn1cbiJdfQ==","export function provideHomeFeatures(features) {\n return {\n features,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLWZlYXR1cmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1ob21lLWZlYXR1cmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxRQUE0QjtJQUM5RCxPQUFPO1FBQ0wsUUFBUTtLQUNULENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUhvbWVQYWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktaG9tZS1wYWdlLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUhvbWVGZWF0dXJlcyhmZWF0dXJlczogSUhvbWVQYWdlRmVhdHVyZVtdKTogUGFydGlhbDxJSG9tZVBhZ2VDb25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgZmVhdHVyZXMsXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhvbWVQYWdlRmVhdHVyZSB7XG5cbiAgaGVhZGxpbmU6IHN0cmluZztcblxuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xufVxuIl19","export function provideHomeFooter(footer) {\n return {\n footer,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLWZvb3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtaG9tZS1mb290ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE1BQXVCO0lBQ3ZELE9BQU87UUFDTCxNQUFNO0tBQ1AsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSG9tZVBhZ2VDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vaS1ob21lLXBhZ2UtY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlSG9tZUZvb3Rlcihmb290ZXI6IElIb21lUGFnZUZvb3Rlcik6IFBhcnRpYWw8SUhvbWVQYWdlQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIGZvb3RlcixcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSG9tZVBhZ2VGb290ZXIge1xuXG4gIHRleHQ6IHN0cmluZztcbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport function provideHomePage(configuration) {\n const merged = Object.assign({}, ...configuration.providers);\n return [{\n provide: HOME_PAGE_CONFIGURATION, useValue: merged,\n }];\n}\nexport const HOME_PAGE_CONFIGURATION = new InjectionToken('HOME_PAGE_CONFIGURATION');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLXBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaG9tZS1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhvbWUtcGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sVUFBVSxlQUFlLENBQUMsYUFBZ0M7SUFDOUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0QsT0FBTyxDQUFDO1lBQ04sT0FBTyxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxNQUFNO1NBQ25ELENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FBeUIseUJBQXlCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJSG9tZVBhZ2VDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vaS1ob21lLXBhZ2UtY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlSG9tZVBhZ2UoY29uZmlndXJhdGlvbjogSVByb3ZpZGVySW5zdGFuY2UpIHtcbiAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbih7fSwgLi4uY29uZmlndXJhdGlvbi5wcm92aWRlcnMpO1xuICByZXR1cm4gW3tcbiAgICBwcm92aWRlOiBIT01FX1BBR0VfQ09ORklHVVJBVElPTiwgdXNlVmFsdWU6IG1lcmdlZCxcbiAgfV07XG59XG5cbmV4cG9ydCBjb25zdCBIT01FX1BBR0VfQ09ORklHVVJBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJSG9tZVBhZ2VDb25maWd1cmF0aW9uPignSE9NRV9QQUdFX0NPTkZJR1VSQVRJT04nKTtcblxuaW50ZXJmYWNlIElQcm92aWRlckluc3RhbmNlIHtcbiAgcHJvdmlkZXJzOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+W107XG59XG4iXX0=","export function provideImage(image) {\n return {\n image,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1pbWFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtaW1hZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLFlBQVksQ0FBQyxLQUFnQjtJQUMzQyxPQUFPO1FBQ0wsS0FBSztLQUNOLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhvbWVQYWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktaG9tZS1wYWdlLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUltYWdlKGltYWdlOiBUeXBlPGFueT4pOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBpbWFnZSxcbiAgfTtcbn1cbiJdfQ==","import { inject, Injectable } from '@angular/core';\nimport { HOME_PAGE_CONFIGURATION, } from '../domain';\nimport * as i0 from \"@angular/core\";\nexport class HomeStore {\n _configuration = inject(HOME_PAGE_CONFIGURATION);\n getLogo() {\n return this._configuration.logo;\n }\n getTitle() {\n return this._configuration.title;\n }\n getHero() {\n return this._configuration.hero;\n }\n getButtons() {\n return this._configuration.buttons || [];\n }\n getFeatures() {\n return this._configuration.features || [];\n }\n getMemberships() {\n return [];\n }\n getFooter() {\n return this._configuration.footer;\n }\n getBackgroundComponent() {\n return this._configuration.background;\n }\n getImageComponent() {\n return this._configuration.image;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeStore });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeStore, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2Uvc2VydmljZXMvaG9tZS5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsdUJBQXVCLEdBTXhCLE1BQU0sV0FBVyxDQUFDOztBQUduQixNQUFNLE9BQU8sU0FBUztJQUNILGNBQWMsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUUzRCxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVNLE9BQU87UUFDWixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVNLGNBQWM7UUFDbkIsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRU0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDcEMsQ0FBQztJQUVNLHNCQUFzQjtRQUMzQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDO0lBQ3hDLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztJQUNuQyxDQUFDO3VHQXJDVSxTQUFTOzJHQUFULFNBQVM7OzJGQUFULFNBQVM7a0JBRHJCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEhPTUVfUEFHRV9DT05GSUdVUkFUSU9OLFxuICBJSG9tZVBhZ2VGZWF0dXJlLFxuICBJSG9tZVBhZ2VGb290ZXIsXG4gIElIb21lUGFnZUhlcm8sXG4gIElIb21lUGFnZUxpbmssXG4gIElIb21lUGFnZU1lbWJlcnNoaXAsXG59IGZyb20gJy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIb21lU3RvcmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWd1cmF0aW9uID0gaW5qZWN0KEhPTUVfUEFHRV9DT05GSUdVUkFUSU9OKTtcblxuICBwdWJsaWMgZ2V0TG9nbygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmxvZ287XG4gIH1cblxuICBwdWJsaWMgZ2V0VGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi50aXRsZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRIZXJvKCk6IElIb21lUGFnZUhlcm8ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmhlcm87XG4gIH1cblxuICBwdWJsaWMgZ2V0QnV0dG9ucygpOiBJSG9tZVBhZ2VMaW5rW10ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmJ1dHRvbnMgfHwgW107XG4gIH1cblxuICBwdWJsaWMgZ2V0RmVhdHVyZXMoKTogSUhvbWVQYWdlRmVhdHVyZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5mZWF0dXJlcyB8fCBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNZW1iZXJzaGlwcygpOiBJSG9tZVBhZ2VNZW1iZXJzaGlwW10ge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGb290ZXIoKTogSUhvbWVQYWdlRm9vdGVyIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5mb290ZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0QmFja2dyb3VuZENvbXBvbmVudCgpOiBUeXBlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmJhY2tncm91bmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0SW1hZ2VDb21wb25lbnQoKTogVHlwZTxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5pbWFnZTtcbiAgfVxufVxuIl19","import { Component, inject } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageButtonsRowComponent {\n viewModel = inject(HomeStore).getButtons();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageButtonsRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: FHomePageButtonsRowComponent, isStandalone: true, selector: \"f-home-page-buttons-row\", host: { properties: { \"class.display-none\": \"!viewModel.length\" } }, ngImport: i0, template: \"@for (button of viewModel; track button.text) {\\n @if (button.routerLink) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" routerLink=\\\"{{ button.routerLink }}\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n } @else if(button.href) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" href=\\\"{{ button.href }}\\\" target=\\\"_blank\\\" rel=\\\"noopener noreferrer\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n }\\n}\\n\\n\", styles: [\":host{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:fit-content;margin:0 auto;padding:32px 10px 0}@media (min-width: 960px){:host{margin:0;padding:32px 0 0;justify-content:flex-start}}.f-button{display:flex;align-items:center;gap:6px}\\n\"], dependencies: [{ kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageButtonsRowComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-buttons-row', standalone: true, imports: [\n RouterLink,\n ], host: {\n '[class.display-none]': '!viewModel.length',\n }, template: \"@for (button of viewModel; track button.text) {\\n @if (button.routerLink) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" routerLink=\\\"{{ button.routerLink }}\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n } @else if(button.href) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" href=\\\"{{ button.href }}\\\" target=\\\"_blank\\\" rel=\\\"noopener noreferrer\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n }\\n}\\n\\n\", styles: [\":host{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:fit-content;margin:0 auto;padding:32px 10px 0}@media (min-width: 960px){:host{margin:0;padding:32px 0 0;justify-content:flex-start}}.f-button{display:flex;align-items:center;gap:6px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9jb21wb25lbnRzL2YtaG9tZS1wYWdlLWJ1dHRvbnMtcm93L2YtaG9tZS1wYWdlLWJ1dHRvbnMtcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1idXR0b25zLXJvdy9mLWhvbWUtcGFnZS1idXR0b25zLXJvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQWMzQyxNQUFNLE9BQU8sNEJBQTRCO0lBQzdCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7dUdBRDFDLDRCQUE0QjsyRkFBNUIsNEJBQTRCLHdKQ2hCekMsdW1CQWtCQSwwVERSSSxVQUFVOzsyRkFNRCw0QkFBNEI7a0JBWnhDLFNBQVM7K0JBQ0UseUJBQXlCLGNBR3ZCLElBQUksV0FDUDt3QkFDUCxVQUFVO3FCQUNYLFFBQ0s7d0JBQ0osc0JBQXNCLEVBQUUsbUJBQW1CO3FCQUM1QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyTGluayxcbiAgXSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZGlzcGxheS1ub25lXSc6ICchdmlld01vZGVsLmxlbmd0aCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEZIb21lUGFnZUJ1dHRvbnNSb3dDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0QnV0dG9ucygpO1xufVxuIiwiQGZvciAoYnV0dG9uIG9mIHZpZXdNb2RlbDsgdHJhY2sgYnV0dG9uLnRleHQpIHtcbiAgQGlmIChidXR0b24ucm91dGVyTGluaykge1xuICAgIDxhIGNsYXNzPVwiZi1idXR0b25cIiBbY2xhc3MucHJpbWFyeV09XCJidXR0b24ucHJpbWFyeVwiIHJvdXRlckxpbms9XCJ7eyBidXR0b24ucm91dGVyTGluayB9fVwiPlxuICAgICAgQGlmIChidXR0b24uaWNvbikge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImYtaWNvbiB7eyBidXR0b24uaWNvbiB9fVwiPjwvc3Bhbj5cbiAgICAgIH1cbiAgICAgIHt7IGJ1dHRvbi50ZXh0IH19XG4gICAgPC9hPlxuICB9IEBlbHNlIGlmKGJ1dHRvbi5ocmVmKSB7XG4gICAgPGEgY2xhc3M9XCJmLWJ1dHRvblwiIFtjbGFzcy5wcmltYXJ5XT1cImJ1dHRvbi5wcmltYXJ5XCIgaHJlZj1cInt7IGJ1dHRvbi5ocmVmIH19XCIgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiPlxuICAgICAgQGlmIChidXR0b24uaWNvbikge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImYtaWNvbiB7eyBidXR0b24uaWNvbiB9fVwiPjwvc3Bhbj5cbiAgICAgIH1cbiAgICAgIHt7IGJ1dHRvbi50ZXh0IH19XG4gICAgPC9hPlxuICB9XG59XG5cbiJdfQ==","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageFeaturesComponent {\n viewModel = inject(HomeStore).getFeatures();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFeaturesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: FHomePageFeaturesComponent, isStandalone: true, selector: \"f-home-page-features\", host: { properties: { \"class.display-none\": \"!viewModel.length\" } }, ngImport: i0, template: \"<div class=\\\"feature-list\\\">\\n @for (feature of viewModel; track feature.headline) {\\n <div class=\\\"feature\\\">\\n <h2>{{ feature.headline }}</h2>\\n <p>{{ feature.description }}</p>\\n </div>\\n }\\n</div>\\n\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .feature-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .feature{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;pointer-events:all}:host .feature h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .feature p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}@media (min-width: 640px){:host{padding:0 48px}:host .feature{width:calc(50% - 12px)}}@media (min-width: 960px){:host{padding:0 64px}:host .feature{width:calc(25% - 12px)}}\\n\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFeaturesComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-features', standalone: true, host: {\n '[class.display-none]': '!viewModel.length',\n }, template: \"<div class=\\\"feature-list\\\">\\n @for (feature of viewModel; track feature.headline) {\\n <div class=\\\"feature\\\">\\n <h2>{{ feature.headline }}</h2>\\n <p>{{ feature.description }}</p>\\n </div>\\n }\\n</div>\\n\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .feature-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .feature{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;pointer-events:all}:host .feature h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .feature p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}@media (min-width: 640px){:host{padding:0 48px}:host .feature{width:calc(50% - 12px)}}@media (min-width: 960px){:host{padding:0 64px}:host .feature{width:calc(25% - 12px)}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtZmVhdHVyZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9jb21wb25lbnRzL2YtaG9tZS1wYWdlLWZlYXR1cmVzL2YtaG9tZS1wYWdlLWZlYXR1cmVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1mZWF0dXJlcy9mLWhvbWUtcGFnZS1mZWF0dXJlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBVzNDLE1BQU0sT0FBTywwQkFBMEI7SUFDM0IsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQzt1R0FEM0MsMEJBQTBCOzJGQUExQiwwQkFBMEIscUpDWnZDLGdPQVNBOzsyRkRHYSwwQkFBMEI7a0JBVHRDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBR3BCLElBQUksUUFDVjt3QkFDSixzQkFBc0IsRUFBRSxtQkFBbUI7cUJBQzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1ob21lLXBhZ2UtZmVhdHVyZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1ob21lLXBhZ2UtZmVhdHVyZXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtZmVhdHVyZXMuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5kaXNwbGF5LW5vbmVdJzogJyF2aWV3TW9kZWwubGVuZ3RoJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgRkhvbWVQYWdlRmVhdHVyZXNDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0RmVhdHVyZXMoKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJmZWF0dXJlLWxpc3RcIj5cbiAgQGZvciAoZmVhdHVyZSBvZiB2aWV3TW9kZWw7IHRyYWNrIGZlYXR1cmUuaGVhZGxpbmUpIHtcbiAgICA8ZGl2IGNsYXNzPVwiZmVhdHVyZVwiPlxuICAgICAgPGgyPnt7IGZlYXR1cmUuaGVhZGxpbmUgfX08L2gyPlxuICAgICAgPHA+e3sgZmVhdHVyZS5kZXNjcmlwdGlvbiB9fTwvcD5cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG5cbiJdfQ==","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageFooterComponent {\n viewModel = inject(HomeStore).getFooter();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FHomePageFooterComponent, isStandalone: true, selector: \"footer[f-home-page-footer]\", ngImport: i0, template: \"<div class=\\\"content\\\">\\n <div class=\\\"flex-space\\\"></div>\\n <div>\\n <div class=\\\"item\\\">Created with Foblex <a href=\\\"https://m-render.foblex.com/\\\" target=\\\"_blank\\\">MRender</a></div>\\n <div class=\\\"item\\\">{{ viewModel.text }}</div>\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .content{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .item{line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);text-align:right}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}\\n\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFooterComponent, decorators: [{\n type: Component,\n args: [{ selector: 'footer[f-home-page-footer]', standalone: true, template: \"<div class=\\\"content\\\">\\n <div class=\\\"flex-space\\\"></div>\\n <div>\\n <div class=\\\"item\\\">Created with Foblex <a href=\\\"https://m-render.foblex.com/\\\" target=\\\"_blank\\\">MRender</a></div>\\n <div class=\\\"item\\\">{{ viewModel.text }}</div>\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .content{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .item{line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);text-align:right}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1mb290ZXIvZi1ob21lLXBhZ2UtZm9vdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1mb290ZXIvZi1ob21lLXBhZ2UtZm9vdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFRM0MsTUFBTSxPQUFPLHdCQUF3QjtJQUN6QixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO3VHQUR6Qyx3QkFBd0I7MkZBQXhCLHdCQUF3QixzRkNUckMsMFFBUUE7OzJGRENhLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSw0QkFBNEIsY0FHMUIsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIb21lU3RvcmUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvb3RlcltmLWhvbWUtcGFnZS1mb290ZXJdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtaG9tZS1wYWdlLWZvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mLWhvbWUtcGFnZS1mb290ZXIuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBGSG9tZVBhZ2VGb290ZXJDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0Rm9vdGVyKCk7XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleC1zcGFjZVwiPjwvZGl2PlxuICA8ZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpdGVtXCI+Q3JlYXRlZCB3aXRoIEZvYmxleCA8YSBocmVmPVwiaHR0cHM6Ly9tLXJlbmRlci5mb2JsZXguY29tL1wiIHRhcmdldD1cIl9ibGFua1wiPk1SZW5kZXI8L2E+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIml0ZW1cIj57eyB2aWV3TW9kZWwudGV4dCB9fTwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport { ThemeButtonComponent } from '../../../theme';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageHeaderComponent {\n logo = inject(HomeStore).getLogo();\n title = inject(HomeStore).getTitle();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FHomePageHeaderComponent, isStandalone: true, selector: \"header[f-home-page-header]\", ngImport: i0, template: \"<div class=\\\"content\\\">\\n <a class=\\\"logo-link\\\" href=\\\"\\\" aria-label=\\\"Home\\\">\\n <img [src]=\\\"logo\\\" class=\\\"logo\\\" alt=\\\"{{ title }} Logo\\\" width=\\\"24\\\" height=\\\"24\\\"/>\\n <span class=\\\"title\\\">{{ title }}</span>\\n </a>\\n\\n <div class=\\\"flex-space\\\"></div>\\n <button theme-button aria-label=\\\"Change theme\\\"></button>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .logo-link{display:flex;align-items:center;text-decoration:none}:host .content{display:flex;justify-content:flex-start;align-items:center;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .logo{margin-right:8px}:host .title{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;font-size:16px;font-weight:600;color:var(--primary-text)}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}\\n\"], dependencies: [{ kind: \"component\", type: ThemeButtonComponent, selector: \"button[theme-button]\" }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeaderComponent, decorators: [{\n type: Component,\n args: [{ selector: 'header[f-home-page-header]', standalone: true, imports: [\n ThemeButtonComponent,\n ], template: \"<div class=\\\"content\\\">\\n <a class=\\\"logo-link\\\" href=\\\"\\\" aria-label=\\\"Home\\\">\\n <img [src]=\\\"logo\\\" class=\\\"logo\\\" alt=\\\"{{ title }} Logo\\\" width=\\\"24\\\" height=\\\"24\\\"/>\\n <span class=\\\"title\\\">{{ title }}</span>\\n </a>\\n\\n <div class=\\\"flex-space\\\"></div>\\n <button theme-button aria-label=\\\"Change theme\\\"></button>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .logo-link{display:flex;align-items:center;text-decoration:none}:host .content{display:flex;justify-content:flex-start;align-items:center;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .logo{margin-right:8px}:host .title{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;font-size:16px;font-weight:600;color:var(--primary-text)}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1oZWFkZXIvZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1oZWFkZXIvZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFXdEQsTUFBTSxPQUFPLHdCQUF3QjtJQUN6QixJQUFJLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25DLEtBQUssR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7dUdBRnBDLHdCQUF3QjsyRkFBeEIsd0JBQXdCLHNGQ2JyQyxzVkFVQSx3ckJEQUksb0JBQW9COzsyRkFHWCx3QkFBd0I7a0JBVHBDLFNBQVM7K0JBQ0UsNEJBQTRCLGNBRzFCLElBQUksV0FDUDt3QkFDUCxvQkFBb0I7cUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFRoZW1lQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vdGhlbWUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZWFkZXJbZi1ob21lLXBhZ2UtaGVhZGVyXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWhvbWUtcGFnZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFRoZW1lQnV0dG9uQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGSG9tZVBhZ2VIZWFkZXJDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgbG9nbyA9IGluamVjdChIb21lU3RvcmUpLmdldExvZ28oKTtcbiAgcHJvdGVjdGVkIHRpdGxlID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0VGl0bGUoKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gIDxhIGNsYXNzPVwibG9nby1saW5rXCIgaHJlZj1cIlwiIGFyaWEtbGFiZWw9XCJIb21lXCI+XG4gICAgPGltZyBbc3JjXT1cImxvZ29cIiBjbGFzcz1cImxvZ29cIiBhbHQ9XCJ7eyB0aXRsZSB9fSBMb2dvXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIvPlxuICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIj57eyB0aXRsZSB9fTwvc3Bhbj5cbiAgPC9hPlxuXG4gIDxkaXYgY2xhc3M9XCJmbGV4LXNwYWNlXCI+PC9kaXY+XG4gIDxidXR0b24gdGhlbWUtYnV0dG9uIGFyaWEtbGFiZWw9XCJDaGFuZ2UgdGhlbWVcIj48L2J1dHRvbj5cbjwvZGl2PlxuXG4iXX0=","import { Component, inject } from '@angular/core';\nimport { FHomePageButtonsRowComponent } from '../f-home-page-buttons-row';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageHeroComponent {\n viewModel = inject(HomeStore).getHero();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeroComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FHomePageHeroComponent, isStandalone: true, selector: \"f-home-page-hero\", ngImport: i0, template: \"<h1>{{ viewModel.headline }}</h1>\\n<p class=\\\"powered\\\">{{ viewModel.tagline1 }}</p>\\n<p class=\\\"powered\\\">{{ viewModel.tagline2 }}</p>\\n<p class=\\\"second-description\\\">{{ viewModel.subDescription }}</p>\\n<f-home-page-buttons-row></f-home-page-buttons-row>\\n\", styles: [\":host{display:block;width:100%;padding:0 10px}@media (min-width: 640px){:host{padding:0;width:100%}}@media (min-width: 960px){:host{width:50%}}.powered,h1{letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;width:fit-content;margin:0 auto;text-align:center;white-space:pre-wrap;pointer-events:all}@media (min-width: 640px){.powered,h1{line-height:56px;font-size:48px}}@media (min-width: 960px){.powered,h1{line-height:64px;font-size:56px;margin:0;text-align:left}}h1{background:-webkit-linear-gradient(120deg,#bd34fe 30%,#41d1ff);-webkit-background-clip:text;background-clip:text;color:transparent}.second-description{line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--secondary-text);margin:0 auto;width:fit-content;pointer-events:all;text-align:center;padding:8px 16px 0}@media (min-width: 640px){.second-description{padding-top:12px;line-height:32px;font-size:20px}}@media (min-width: 960px){.second-description{line-height:36px;font-size:24px;margin:0;text-align:left;padding:8px 0 0}}\\n\"], dependencies: [{ kind: \"component\", type: FHomePageButtonsRowComponent, selector: \"f-home-page-buttons-row\" }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeroComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-hero', standalone: true, imports: [\n FHomePageButtonsRowComponent,\n ], template: \"<h1>{{ viewModel.headline }}</h1>\\n<p class=\\\"powered\\\">{{ viewModel.tagline1 }}</p>\\n<p class=\\\"powered\\\">{{ viewModel.tagline2 }}</p>\\n<p class=\\\"second-description\\\">{{ viewModel.subDescription }}</p>\\n<f-home-page-buttons-row></f-home-page-buttons-row>\\n\", styles: [\":host{display:block;width:100%;padding:0 10px}@media (min-width: 640px){:host{padding:0;width:100%}}@media (min-width: 960px){:host{width:50%}}.powered,h1{letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;width:fit-content;margin:0 auto;text-align:center;white-space:pre-wrap;pointer-events:all}@media (min-width: 640px){.powered,h1{line-height:56px;font-size:48px}}@media (min-width: 960px){.powered,h1{line-height:64px;font-size:56px;margin:0;text-align:left}}h1{background:-webkit-linear-gradient(120deg,#bd34fe 30%,#41d1ff);-webkit-background-clip:text;background-clip:text;color:transparent}.second-description{line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--secondary-text);margin:0 auto;width:fit-content;pointer-events:all;text-align:center;padding:8px 16px 0}@media (min-width: 640px){.second-description{padding-top:12px;line-height:32px;font-size:20px}}@media (min-width: 960px){.second-description{line-height:36px;font-size:24px;margin:0;text-align:left;padding:8px 0 0}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtaGVyby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaG9tZS1wYWdlL2NvbXBvbmVudHMvZi1ob21lLXBhZ2UtaGVyby9mLWhvbWUtcGFnZS1oZXJvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1oZXJvL2YtaG9tZS1wYWdlLWhlcm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVczQyxNQUFNLE9BQU8sc0JBQXNCO0lBRXZCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7dUdBRnZDLHNCQUFzQjsyRkFBdEIsc0JBQXNCLDRFQ2JuQyxvUUFLQSx3a0NES0ksNEJBQTRCOzsyRkFHbkIsc0JBQXNCO2tCQVRsQyxTQUFTOytCQUNFLGtCQUFrQixjQUdoQixJQUFJLFdBQ1A7d0JBQ1AsNEJBQTRCO3FCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGSG9tZVBhZ2VCdXR0b25zUm93Q29tcG9uZW50IH0gZnJvbSAnLi4vZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cnO1xuaW1wb3J0IHsgSG9tZVN0b3JlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLWhvbWUtcGFnZS1oZXJvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtaG9tZS1wYWdlLWhlcm8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtaGVyby5jb21wb25lbnQuc2NzcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGSG9tZVBhZ2VCdXR0b25zUm93Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGSG9tZVBhZ2VIZXJvQ29tcG9uZW50IHtcblxuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0SGVybygpO1xufVxuIiwiPGgxPnt7IHZpZXdNb2RlbC5oZWFkbGluZSB9fTwvaDE+XG48cCBjbGFzcz1cInBvd2VyZWRcIj57eyB2aWV3TW9kZWwudGFnbGluZTEgfX08L3A+XG48cCBjbGFzcz1cInBvd2VyZWRcIj57eyB2aWV3TW9kZWwudGFnbGluZTIgfX08L3A+XG48cCBjbGFzcz1cInNlY29uZC1kZXNjcmlwdGlvblwiPnt7IHZpZXdNb2RlbC5zdWJEZXNjcmlwdGlvbiB9fTwvcD5cbjxmLWhvbWUtcGFnZS1idXR0b25zLXJvdz48L2YtaG9tZS1wYWdlLWJ1dHRvbnMtcm93PlxuIl19","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageMembershipsComponent {\n viewModel = inject(HomeStore).getMemberships();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageMembershipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: FHomePageMembershipsComponent, isStandalone: true, selector: \"f-home-page-memberships\", host: { properties: { \"class.display-none\": \"!viewModel.length\" } }, ngImport: i0, template: \"<div class=\\\"membership-list\\\">\\n @for (membership of viewModel; track membership.id) {\\n <div class=\\\"membership\\\">\\n <h2>{{ membership.name }}</h2>\\n <p>{{ membership.description }}</p>\\n <div class=\\\"benefit-list\\\">\\n @for (benefit of membership.benefits; track benefit) {\\n <p class=\\\"benefit\\\">\\u2705 {{ benefit }}</p>\\n }\\n </div>\\n <a class=\\\"f-button\\\" [href]=\\\"membership.buttonRef\\\">{{ membership.buttonText }}</a>\\n </div>\\n }\\n</div>\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .membership-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .membership{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;position:relative;pointer-events:all}:host .membership h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .membership p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}:host .membership .price{color:var(--primary-text);font-size:1.2rem;font-weight:700;padding-top:16px}:host .membership .price span{font-weight:600;color:var(--primary-color)}:host .membership .benefit-list{display:flex;flex-direction:column;padding:16px 0}@media (min-width: 640px){:host{padding:0 48px}:host .membership{width:calc(50% - 12px);min-width:unset}}@media (min-width: 960px){:host{padding:0 64px}:host .membership{width:calc(25% - 12px);min-width:300px}}.ribbon{position:absolute;top:-10px;right:-10px;color:var(--button-primary-text);background-color:var(--button-primary-bg);padding:4px 8px;font-size:.8rem;border-radius:2px}\\n\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageMembershipsComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-memberships', standalone: true, host: {\n '[class.display-none]': '!viewModel.length',\n }, template: \"<div class=\\\"membership-list\\\">\\n @for (membership of viewModel; track membership.id) {\\n <div class=\\\"membership\\\">\\n <h2>{{ membership.name }}</h2>\\n <p>{{ membership.description }}</p>\\n <div class=\\\"benefit-list\\\">\\n @for (benefit of membership.benefits; track benefit) {\\n <p class=\\\"benefit\\\">\\u2705 {{ benefit }}</p>\\n }\\n </div>\\n <a class=\\\"f-button\\\" [href]=\\\"membership.buttonRef\\\">{{ membership.buttonText }}</a>\\n </div>\\n }\\n</div>\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .membership-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .membership{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;position:relative;pointer-events:all}:host .membership h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .membership p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}:host .membership .price{color:var(--primary-text);font-size:1.2rem;font-weight:700;padding-top:16px}:host .membership .price span{font-weight:600;color:var(--primary-color)}:host .membership .benefit-list{display:flex;flex-direction:column;padding:16px 0}@media (min-width: 640px){:host{padding:0 48px}:host .membership{width:calc(50% - 12px);min-width:unset}}@media (min-width: 960px){:host{padding:0 64px}:host .membership{width:calc(25% - 12px);min-width:300px}}.ribbon{position:absolute;top:-10px;right:-10px;color:var(--button-primary-text);background-color:var(--button-primary-bg);padding:4px 8px;font-size:.8rem;border-radius:2px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9jb21wb25lbnRzL2YtaG9tZS1wYWdlLW1lbWJlcnNoaXBzL2YtaG9tZS1wYWdlLW1lbWJlcnNoaXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1tZW1iZXJzaGlwcy9mLWhvbWUtcGFnZS1tZW1iZXJzaGlwcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBVzNDLE1BQU0sT0FBTyw2QkFBNkI7SUFDOUIsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQzt1R0FEOUMsNkJBQTZCOzJGQUE3Qiw2QkFBNkIsd0pDWjFDLHlmQWNBOzsyRkRGYSw2QkFBNkI7a0JBVHpDLFNBQVM7K0JBQ0UseUJBQXlCLGNBR3ZCLElBQUksUUFDVjt3QkFDSixzQkFBc0IsRUFBRSxtQkFBbUI7cUJBQzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5kaXNwbGF5LW5vbmVdJzogJyF2aWV3TW9kZWwubGVuZ3RoJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgRkhvbWVQYWdlTWVtYmVyc2hpcHNDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0TWVtYmVyc2hpcHMoKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJtZW1iZXJzaGlwLWxpc3RcIj5cbiAgQGZvciAobWVtYmVyc2hpcCBvZiB2aWV3TW9kZWw7IHRyYWNrIG1lbWJlcnNoaXAuaWQpIHtcbiAgICA8ZGl2IGNsYXNzPVwibWVtYmVyc2hpcFwiPlxuICAgICAgPGgyPnt7IG1lbWJlcnNoaXAubmFtZSB9fTwvaDI+XG4gICAgICA8cD57eyBtZW1iZXJzaGlwLmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImJlbmVmaXQtbGlzdFwiPlxuICAgICAgICBAZm9yIChiZW5lZml0IG9mIG1lbWJlcnNoaXAuYmVuZWZpdHM7IHRyYWNrIGJlbmVmaXQpIHtcbiAgICAgICAgICA8cCBjbGFzcz1cImJlbmVmaXRcIj7inIUge3sgYmVuZWZpdCB9fTwvcD5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgICA8YSBjbGFzcz1cImYtYnV0dG9uXCIgW2hyZWZdPVwibWVtYmVyc2hpcC5idXR0b25SZWZcIj57eyBtZW1iZXJzaGlwLmJ1dHRvblRleHQgfX08L2E+XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuIl19","import { ChangeDetectionStrategy, Component, inject, ViewChild, ViewContainerRef, } from '@angular/core';\nimport { HomeStore } from './services';\nimport { FHomePageFeaturesComponent, FHomePageFooterComponent, FHomePageHeaderComponent, FHomePageHeroComponent, FHomePageMembershipsComponent, } from './components';\nimport { IS_BROWSER_PLATFORM, ThemeService } from '../common';\nimport { GTagService } from '../analytics';\nimport * as i0 from \"@angular/core\";\nexport class HomeRootComponent {\n _environment = inject(HomeStore);\n _gTagService = inject(GTagService, { optional: true });\n _themeService = inject(ThemeService, { optional: true });\n isBrowser = inject(IS_BROWSER_PLATFORM);\n _backgroundContainer;\n _heroImageContainer;\n ngOnInit() {\n if (!this.isBrowser) {\n return;\n }\n this._themeService?.initialize();\n this._gTagService?.initialize();\n }\n ngAfterViewInit() {\n this._renderImageComponent(this._environment.getImageComponent());\n this._renderBackgroundComponent(this._environment.getBackgroundComponent());\n }\n _renderImageComponent(component) {\n if (component) {\n this._requestComponentRedraw(this._getImageComponentReference(component));\n }\n }\n _renderBackgroundComponent(component) {\n if (component) {\n this._requestComponentRedraw(this._getBackgroundComponentReference(component));\n }\n }\n _getBackgroundComponentReference(component) {\n return this._backgroundContainer.createComponent(component);\n }\n _getImageComponentReference(component) {\n return this._heroImageContainer.createComponent(component);\n }\n _requestComponentRedraw(componentRef) {\n componentRef.changeDetectorRef.markForCheck();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeRootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: HomeRootComponent, isStandalone: true, selector: \"home-root\", providers: [\n HomeStore,\n ], viewQueries: [{ propertyName: \"_backgroundContainer\", first: true, predicate: [\"backgroundContainer\"], descendants: true, read: ViewContainerRef }, { propertyName: \"_heroImageContainer\", first: true, predicate: [\"heroImageContainer\"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: \"<ng-container #backgroundContainer></ng-container>\\n<header f-home-page-header></header>\\n\\n<div class=\\\"body\\\">\\n <div class=\\\"hero-row\\\">\\n <f-home-page-hero></f-home-page-hero>\\n <ng-container #heroImageContainer></ng-container>\\n </div>\\n <f-home-page-features></f-home-page-features>\\n <f-home-page-memberships></f-home-page-memberships>\\n</div>\\n\\n<div class=\\\"flex-space\\\"></div>\\n<footer f-home-page-footer></footer>\\n\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;flex-direction:column;position:relative;width:100%;height:100%;min-height:100%;overflow:hidden;overflow-y:auto}.body{position:relative;z-index:3;pointer-events:none}@media (min-width: 960px){.body{margin-top:50px}}@media (min-width: 1376px){.body{margin-top:100px}}.hero-row{display:flex;flex-direction:column-reverse;justify-content:space-between;align-items:center;margin:0 auto}@media (min-width: 960px){.hero-row{flex-direction:row;margin-left:64px;margin-right:64px}}@media (min-width: 1376px){.hero-row{flex-direction:row;margin-left:calc(50% - 624px);margin-right:calc(50% - 624px)}}\\n\"], dependencies: [{ kind: \"component\", type: FHomePageFooterComponent, selector: \"footer[f-home-page-footer]\" }, { kind: \"component\", type: FHomePageHeaderComponent, selector: \"header[f-home-page-header]\" }, { kind: \"component\", type: FHomePageFeaturesComponent, selector: \"f-home-page-features\" }, { kind: \"component\", type: FHomePageHeroComponent, selector: \"f-home-page-hero\" }, { kind: \"component\", type: FHomePageMembershipsComponent, selector: \"f-home-page-memberships\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)]] });\n}\ni0.ɵɵngDeclareClassMetadataAsync({ minVersion: \"18.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeRootComponent, resolveDeferredDeps: () => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)], resolveMetadata: CookiePopupComponent => ({ decorators: [{\n type: Component,\n args: [{ selector: 'home-root', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n HomeStore,\n ], imports: [\n FHomePageFooterComponent,\n FHomePageHeaderComponent,\n FHomePageFeaturesComponent,\n FHomePageHeroComponent,\n FHomePageMembershipsComponent,\n CookiePopupComponent,\n ], template: \"<ng-container #backgroundContainer></ng-container>\\n<header f-home-page-header></header>\\n\\n<div class=\\\"body\\\">\\n <div class=\\\"hero-row\\\">\\n <f-home-page-hero></f-home-page-hero>\\n <ng-container #heroImageContainer></ng-container>\\n </div>\\n <f-home-page-features></f-home-page-features>\\n <f-home-page-memberships></f-home-page-memberships>\\n</div>\\n\\n<div class=\\\"flex-space\\\"></div>\\n<footer f-home-page-footer></footer>\\n\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;flex-direction:column;position:relative;width:100%;height:100%;min-height:100%;overflow:hidden;overflow-y:auto}.body{position:relative;z-index:3;pointer-events:none}@media (min-width: 960px){.body{margin-top:50px}}@media (min-width: 1376px){.body{margin-top:100px}}.hero-row{display:flex;flex-direction:column-reverse;justify-content:space-between;align-items:center;margin:0 auto}@media (min-width: 960px){.hero-row{flex-direction:row;margin-left:64px;margin-right:64px}}@media (min-width: 1376px){.hero-row{flex-direction:row;margin-left:calc(50% - 624px);margin-right:calc(50% - 624px)}}\\n\"] }]\n }], ctorParameters: null, propDecorators: { _backgroundContainer: [{\n type: ViewChild,\n args: ['backgroundContainer', { read: ViewContainerRef }]\n }], _heroImageContainer: [{\n type: ViewChild,\n args: ['heroImageContainer', { read: ViewContainerRef }]\n }] } }) });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS1yb290LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvaG9tZS1yb290LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvaG9tZS1yb290LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULE1BQU0sRUFHTixTQUFTLEVBQ1QsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdkMsT0FBTyxFQUNMLDBCQUEwQixFQUMxQix3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0Qiw2QkFBNkIsR0FDOUIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFpQyxtQkFBbUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFvQjNDLE1BQU0sT0FBTyxpQkFBaUI7SUFDWCxZQUFZLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLFlBQVksR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkQsYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUV2RCxTQUFTLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFHbkQsb0JBQW9CLENBQStCO0lBR25ELG1CQUFtQixDQUErQjtJQUVuRCxRQUFRO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFTyxxQkFBcUIsQ0FBSSxTQUFtQjtRQUNsRCxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ2QsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzVFLENBQUM7SUFDSCxDQUFDO0lBRU8sMEJBQTBCLENBQUksU0FBbUI7UUFDdkQsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNqRixDQUFDO0lBQ0gsQ0FBQztJQUVPLGdDQUFnQyxDQUFJLFNBQWtCO1FBQzVELE9BQU8sSUFBSSxDQUFDLG9CQUFxQixDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU8sMkJBQTJCLENBQUksU0FBa0I7UUFDdkQsT0FBTyxJQUFJLENBQUMsbUJBQW9CLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxZQUErQjtRQUM3RCxZQUFZLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDaEQsQ0FBQzt1R0FoRFUsaUJBQWlCOzJGQUFqQixpQkFBaUIsd0RBWmpCO1lBQ1QsU0FBUztTQUNWLGtJQWlCeUMsZ0JBQWdCLG9IQUdqQixnQkFBZ0IsNkJDbkQzRCx5ZUFrQkEsNnBCRGVJLHdCQUF3Qix1RUFDeEIsd0JBQXdCLHVFQUN4QiwwQkFBMEIsaUVBQzFCLHNCQUFzQiw2REFDdEIsNkJBQTZCOztnR0FJcEIsaUJBQWlCO3NCQWxCN0IsU0FBUzttQ0FDRSxXQUFXLGNBR1QsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDOzRCQUNULFNBQVM7eUJBQ1YsV0FDUTs0QkFDUCx3QkFBd0I7NEJBQ3hCLHdCQUF3Qjs0QkFDeEIsMEJBQTBCOzRCQUMxQixzQkFBc0I7NEJBQ3RCLDZCQUE2Qjs0QkFDN0Isb0JBQW9CO3lCQUNyQjt3REFVTyxvQkFBb0I7MEJBRDNCLFNBQVM7MkJBQUMscUJBQXFCLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7b0JBSXBELG1CQUFtQjswQkFEMUIsU0FBUzsyQkFBQyxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgaW5qZWN0LFxuICBPbkluaXQsXG4gIFR5cGUsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIb21lU3RvcmUgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7XG4gIEZIb21lUGFnZUZlYXR1cmVzQ29tcG9uZW50LFxuICBGSG9tZVBhZ2VGb290ZXJDb21wb25lbnQsXG4gIEZIb21lUGFnZUhlYWRlckNvbXBvbmVudCxcbiAgRkhvbWVQYWdlSGVyb0NvbXBvbmVudCxcbiAgRkhvbWVQYWdlTWVtYmVyc2hpcHNDb21wb25lbnQsXG59IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBIRUFERVJfQ09ORklHVVJBVElPTl9QUk9WSURFUiwgSVNfQlJPV1NFUl9QTEFURk9STSwgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uJztcbmltcG9ydCB7IENvb2tpZVBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi4vYW5hbHl0aWNzL2Nvb2tpZS1wb3B1cC9jb29raWUtcG9wdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEdUYWdTZXJ2aWNlIH0gZnJvbSAnLi4vYW5hbHl0aWNzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaG9tZS1yb290JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hvbWUtcm9vdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hvbWUtcm9vdC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgSG9tZVN0b3JlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgRkhvbWVQYWdlRm9vdGVyQ29tcG9uZW50LFxuICAgIEZIb21lUGFnZUhlYWRlckNvbXBvbmVudCxcbiAgICBGSG9tZVBhZ2VGZWF0dXJlc0NvbXBvbmVudCxcbiAgICBGSG9tZVBhZ2VIZXJvQ29tcG9uZW50LFxuICAgIEZIb21lUGFnZU1lbWJlcnNoaXBzQ29tcG9uZW50LFxuICAgIENvb2tpZVBvcHVwQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBIb21lUm9vdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Vudmlyb25tZW50ID0gaW5qZWN0KEhvbWVTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2dUYWdTZXJ2aWNlID0gaW5qZWN0KEdUYWdTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVNlcnZpY2UgPSBpbmplY3QoVGhlbWVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBpc0Jyb3dzZXIgPSBpbmplY3QoSVNfQlJPV1NFUl9QTEFURk9STSk7XG5cbiAgQFZpZXdDaGlsZCgnYmFja2dyb3VuZENvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxuICBwcml2YXRlIF9iYWNrZ3JvdW5kQ29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoJ2hlcm9JbWFnZUNvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxuICBwcml2YXRlIF9oZXJvSW1hZ2VDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fdGhlbWVTZXJ2aWNlPy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy5fZ1RhZ1NlcnZpY2U/LmluaXRpYWxpemUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fcmVuZGVySW1hZ2VDb21wb25lbnQodGhpcy5fZW52aXJvbm1lbnQuZ2V0SW1hZ2VDb21wb25lbnQoKSk7XG4gICAgdGhpcy5fcmVuZGVyQmFja2dyb3VuZENvbXBvbmVudCh0aGlzLl9lbnZpcm9ubWVudC5nZXRCYWNrZ3JvdW5kQ29tcG9uZW50KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVySW1hZ2VDb21wb25lbnQ8VD4oY29tcG9uZW50PzogVHlwZTxUPik6IHZvaWQge1xuICAgIGlmIChjb21wb25lbnQpIHtcbiAgICAgIHRoaXMuX3JlcXVlc3RDb21wb25lbnRSZWRyYXcodGhpcy5fZ2V0SW1hZ2VDb21wb25lbnRSZWZlcmVuY2UoY29tcG9uZW50KSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyQmFja2dyb3VuZENvbXBvbmVudDxUPihjb21wb25lbnQ/OiBUeXBlPFQ+KTogdm9pZCB7XG4gICAgaWYgKGNvbXBvbmVudCkge1xuICAgICAgdGhpcy5fcmVxdWVzdENvbXBvbmVudFJlZHJhdyh0aGlzLl9nZXRCYWNrZ3JvdW5kQ29tcG9uZW50UmVmZXJlbmNlKGNvbXBvbmVudCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldEJhY2tncm91bmRDb21wb25lbnRSZWZlcmVuY2U8VD4oY29tcG9uZW50OiBUeXBlPFQ+KTogQ29tcG9uZW50UmVmPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fYmFja2dyb3VuZENvbnRhaW5lciEuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJbWFnZUNvbXBvbmVudFJlZmVyZW5jZTxUPihjb21wb25lbnQ6IFR5cGU8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xuICAgIHJldHVybiB0aGlzLl9oZXJvSW1hZ2VDb250YWluZXIhLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVxdWVzdENvbXBvbmVudFJlZHJhdyhjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+KTogdm9pZCB7XG4gICAgY29tcG9uZW50UmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICNiYWNrZ3JvdW5kQ29udGFpbmVyPjwvbmctY29udGFpbmVyPlxuPGhlYWRlciBmLWhvbWUtcGFnZS1oZWFkZXI+PC9oZWFkZXI+XG5cbjxkaXYgY2xhc3M9XCJib2R5XCI+XG4gIDxkaXYgY2xhc3M9XCJoZXJvLXJvd1wiPlxuICAgIDxmLWhvbWUtcGFnZS1oZXJvPjwvZi1ob21lLXBhZ2UtaGVybz5cbiAgICA8bmctY29udGFpbmVyICNoZXJvSW1hZ2VDb250YWluZXI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8Zi1ob21lLXBhZ2UtZmVhdHVyZXM+PC9mLWhvbWUtcGFnZS1mZWF0dXJlcz5cbiAgPGYtaG9tZS1wYWdlLW1lbWJlcnNoaXBzPjwvZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHM+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImZsZXgtc3BhY2VcIj48L2Rpdj5cbjxmb290ZXIgZi1ob21lLXBhZ2UtZm9vdGVyPjwvZm9vdGVyPlxuXG5AZGVmZXIgKHdoZW4gaXNCcm93c2VyKSB7XG4gIDxjb29raWUtcG9wdXAvPlxufVxuIl19","export const HOME_ROUTES = [\n {\n path: '',\n loadComponent: () => import('./index').then(m => m.HomeRootComponent),\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9yb3V0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFXO0lBQ2pDO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztLQUN0RTtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5leHBvcnQgY29uc3QgSE9NRV9ST1VURVM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICcnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9pbmRleCcpLnRoZW4obSA9PiBtLkhvbWVSb290Q29tcG9uZW50KSxcbiAgfSxcbl07XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ibGV4LW0tcmVuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvZm9ibGV4LW0tcmVuZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["uniqueId","filter","coerceComponentHeight"],"mappings":";;;;;;;;;;;;;;;AAMO,MAAM,WAAW,CAAC;AACzB,IAAI,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;AACjC,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChC,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAChD,IAAI,YAAY,GAAG,KAAK;AACxB,IAAI,cAAc,GAAG,IAAI,GAAG,EAAE;AAC9B,IAAI,UAAU,GAAG;AACjB,QAAQ,IAAI,IAAI,CAAC,YAAY;AAC7B,YAAY;AACZ,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;AAC9C,QAAQ,IAAI,CAAC,GAAG,EAAE;AAClB,YAAY;AACZ;AACA,QAAQ,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,EAAE;AAC3C,QAAQ,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtE,QAAQ,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,QAAQ;AACtE,QAAQ,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;AACxC,QAAQ,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE;AACjC,YAAY,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;AAC/C,YAAY,GAAG,CAAC,cAAc,GAAG,IAAI;AACrC;AACA,QAAQ,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;AAClC,QAAQ,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;AAC5E,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,EAAE;AACvD,YAAY,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM;AAC9F,gBAAgB,IAAI,CAAC,QAAQ,EAAE;AAC/B,aAAa,CAAC;AACd;AACA,QAAQ,IAAI,CAAC,YAAY,GAAG,IAAI;AAChC;AACA,IAAI,aAAa,CAAC,OAAO,EAAE;AAC3B,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AACxD;AACA,IAAI,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE;AAC1B,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;AAC9C,QAAQ,GAAG,EAAE,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC;AAClD;AACA,IAAI,QAAQ,CAAC,IAAI,EAAE;AACnB,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;AAC9C,QAAQ,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,IAAI,GAAG;AAClE,QAAQ,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAAE;AACnD,YAAY,GAAG,EAAE,IAAI,GAAG,QAAQ,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;AACvD;AACA;AACA,IAAI,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;AAClC,QAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;AAChE;AACA,IAAI,WAAW,CAAC,KAAK,EAAE;AACvB,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;AAC9C,QAAQ,MAAM,IAAI,GAAG;AACrB,YAAY,YAAY,EAAE,KAAK;AAC/B,YAAY,kBAAkB,EAAE,KAAK;AACrC,YAAY,UAAU,EAAE,KAAK;AAC7B,YAAY,iBAAiB,EAAE,KAAK;AACpC,SAAS;AACT,QAAQ,IAAI,KAAK,KAAK,QAAQ,EAAE;AAChC,YAAY,GAAG,EAAE,IAAI,GAAG,SAAS,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC;AAChF;AACA,aAAa;AACb,YAAY,GAAG,EAAE,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC;AAClD;AACA;AACA,IAAI,aAAa,CAAC,EAAE,EAAE;AACtB,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC;AACxD,YAAY;AACZ,QAAQ,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC;AACxD,QAAQ,CAAC,CAAC,EAAE,GAAG,aAAa;AAC5B,QAAQ,CAAC,CAAC,KAAK,GAAG,IAAI;AACtB,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAC,4CAA4C,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC;AACvF,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;AAC1C;AACA,IAAI,UAAU,CAAC,GAAG,EAAE;AACpB,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;AAC9C,QAAQ,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI;AAC1C,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;AAC3C,gBAAgB;AAChB,YAAY,GAAG,EAAE,IAAI,GAAG,QAAQ,EAAE,EAAE,CAAC;AACrC,YAAY,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;AACvC,SAAS,CAAC;AACV;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;AACvD;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACtK,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AACzH;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AACrH,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC5FN,SAAS,WAAW,CAAC,MAAM,EAAE;AACpC,IAAI,OAAO;AACX,QAAQ;AACR,YAAY,OAAO,EAAE,WAAW;AAChC,YAAY,QAAQ,EAAE,MAAM;AAC5B,SAAS;AACT,QAAQ;AACR,YAAY,OAAO,EAAE,WAAW;AAChC,YAAY,QAAQ,EAAE,WAAW;AACjC,SAAS;AACT,KAAK;AACL;AACY,MAAC,WAAW,GAAG,IAAI,cAAc,CAAC,aAAa;;ACXpD,MAAM,sBAAsB,CAAC;AACpC,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAChL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,2EAA2E,EAAE,MAAM,EAAE,CAAC,sKAAsK,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC9uB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AAC9H,wBAAwB,UAAU;AAClC,qBAAqB,EAAE,QAAQ,EAAE,2EAA2E,EAAE,MAAM,EAAE,CAAC,sKAAsK,CAAC,EAAE;AAChS,SAAS,CAAC,EAAE,CAAC;;ACVb,IAAIA,UAAQ,GAAG,CAAC;AACT,MAAM,kBAAkB,CAAC;AAChC,IAAI,iBAAiB;AACrB,IAAI,EAAE,GAAG,CAAC,WAAW,EAAEA,UAAQ,EAAE,CAAC,CAAC;AACnC,IAAI,MAAM,GAAG,IAAI,YAAY,EAAE;AAC/B,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,IAAI,OAAO,GAAG;AAClB,QAAQ,OAAO,IAAI,CAAC,SAAS;AAC7B;AACA,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE;AACvB,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE;AACnC,YAAY,IAAI,CAAC,SAAS,GAAG,KAAK;AAClC,YAAY,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;AACjD;AACA;AACA,IAAI,SAAS,GAAG,KAAK;AACrB,IAAI,WAAW,CAAC,iBAAiB,EAAE;AACnC,QAAQ,IAAI,CAAC,iBAAiB,GAAG,iBAAiB;AAClD;AACA,IAAI,YAAY,GAAG;AACnB,QAAQ,IAAI,CAAC,gBAAgB,EAAE;AAC/B;AACA,IAAI,kBAAkB,GAAG;AACzB,QAAQ,IAAI,CAAC,gBAAgB,EAAE;AAC/B,QAAQ,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,KAAK,EAAE;AAChD;AACA,IAAI,gBAAgB,GAAG;AACvB,QAAQ,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS;AACxC,QAAQ,IAAI,CAAC,eAAe,EAAE;AAC9B;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;AACxC,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE;AAC/B,YAAY,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS;AACpE;AACA;AACA,IAAI,kBAAkB,CAAC,KAAK,EAAE;AAC9B,QAAQ,KAAK,CAAC,eAAe,EAAE;AAC/B;AACA,IAAI,wBAAwB,CAAC,KAAK,EAAE;AACpC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AACvF,YAAY,KAAK,CAAC,eAAe,EAAE;AACnC;AACA;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,iBAAiB,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC3M,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,kCAAkC,EAAE,EAAE,UAAU,EAAE,EAAE,0BAA0B,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,4hBAA4hB,EAAE,MAAM,EAAE,CAAC,kuCAAkuC,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACx5E;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC;AAC5H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AACtH,wBAAwB,4BAA4B,EAAE,SAAS;AAC/D,qBAAqB,EAAE,QAAQ,EAAE,4hBAA4hB,EAAE,MAAM,EAAE,CAAC,kuCAAkuC,CAAC,EAAE;AAC7yD,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,EAAE,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC;AAC3F,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;AACzB,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;AAC/B,gBAAgB,IAAI,EAAE,SAAS;AAC/B,gBAAgB,IAAI,EAAE,CAAC,OAAO;AAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;AAC/B,gBAAgB,IAAI,EAAE,SAAS;AAC/B,gBAAgB,IAAI,EAAE,CAAC,OAAO;AAC9B,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;AAC1B,gBAAgB,IAAI,EAAE,KAAK;AAC3B,gBAAgB,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;AACtD,aAAa,CAAC,EAAE,wBAAwB,EAAE,CAAC;AAC3C,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;AAC1C,aAAa,CAAC,EAAE,EAAE,CAAC;;ACrEnB,IAAI,QAAQ,GAAG,CAAC;AACT,MAAM,qBAAqB,CAAC;AACnC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC3F,IAAI,MAAM,GAAG,MAAM,EAAE;AACrB,IAAI,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5E,IAAI,YAAY,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5F,IAAI,YAAY,GAAG;AACnB,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAChC;AACA,IAAI,kBAAkB,GAAG;AACzB,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAChC;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,gBAAgB,EAAE;AAC/B;AACA,IAAI,gBAAgB,GAAG;AACvB,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;AAC9B;AACA,IAAI,kBAAkB,CAAC,KAAK,EAAE;AAC9B,QAAQ,KAAK,CAAC,eAAe,EAAE;AAC/B;AACA,IAAI,wBAAwB,CAAC,KAAK,EAAE;AACpC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AACzF,YAAY,KAAK,CAAC,eAAe,EAAE;AACnC;AACA;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC/K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,kCAAkC,EAAE,EAAE,UAAU,EAAE,EAAE,8BAA8B,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,kXAAkX,EAAE,MAAM,EAAE,CAAC,0uCAA0uC,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC32E;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,UAAU,EAAE,CAAC;AAC/H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AAC1H,wBAAwB,gCAAgC,EAAE,WAAW;AACrE,qBAAqB,EAAE,QAAQ,EAAE,kXAAkX,EAAE,MAAM,EAAE,CAAC,0uCAA0uC,CAAC,EAAE;AAC3oD,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,wBAAwB,EAAE,CAAC;AACzD,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;AAC1C,aAAa,CAAC,EAAE,EAAE,CAAC;;ACvCZ,SAAS,aAAa,CAAC,GAAG,aAAa,EAAE;AAChD,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,aAAa,CAAC;AACnD,KAAK;AACL;;ACJO,SAAS,mBAAmB,CAAC,MAAM,EAAE;AAC5C,IAAI,OAAO;AACX,QAAQ,MAAM;AACd,KAAK;AACL;;ACJO,SAAS,uBAAuB,CAAC,UAAU,EAAE;AACpD,IAAI,OAAO;AACX,QAAQ,UAAU;AAClB,KAAK;AACL;;ACJO,SAAS,uBAAuB,CAAC,UAAU,EAAE;AACpD,IAAI,OAAO;AACX,QAAQ,UAAU;AAClB,KAAK;AACL;;ACJO,SAAS,eAAe,CAAC,IAAI,EAAE;AACtC,IAAI,OAAO;AACX,QAAQ,IAAI;AACZ,KAAK;AACL;;ACJO,SAAS,WAAW,CAAC,IAAI,EAAE;AAClC,IAAI,OAAO;AACX,QAAQ,IAAI;AACZ,KAAK;AACL;;ACJO,SAAS,YAAY,CAAC,KAAK,EAAE;AACpC,IAAI,OAAO;AACX,QAAQ,KAAK;AACb,KAAK;AACL;;ACHY,MAAC,6BAA6B,GAAG,IAAI,cAAc,CAAC,+BAA+B;;ACCxF,MAAM,cAAc,CAAC;AAC5B,IAAI,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9E,IAAI,IAAI,OAAO,GAAG;AAClB,QAAQ,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;AACzC;AACA,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,EAAE;AAClC,QAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AAClC,QAAQ,UAAU,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;AAC1D;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACzK,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAChJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACxH,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE,MAAM;AACtC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACfN,MAAM,YAAY,CAAC;AAC1B,IAAI,aAAa,GAAG,MAAM,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC7D,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAChD,IAAI,MAAM,GAAG,IAAI,OAAO,EAAE;AAC1B,IAAI,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC1C,IAAI,IAAI,MAAM,GAAG;AACjB,QAAQ,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;AACzC;AACA,IAAI,UAAU,GAAG;AACjB,QAAQ,IAAI,IAAI,CAAC,iBAAiB,EAAE,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE;AACzF,YAAY,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;AAClD,YAAY,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC;AAClE;AACA;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAC1B;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB;AAC9C,gBAAgB,IAAI,CAAC,WAAW,CAAC,8BAA8B,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;AAC7F;AACA,IAAI,QAAQ,CAAC,GAAG,EAAE;AAClB,QAAQ,OAAO,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,GAAG,CAAC,IAAI,IAAI;AACzD;AACA,IAAI,WAAW,CAAC,KAAK,EAAE;AACvB,QAAQ,OAAO,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE;AACtE;AACA,IAAI,4BAA4B,GAAG;AACnC,QAAQ,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;AAC1D;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACvK,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AAC1H;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AACtH,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACtCN,SAAS,eAAe,CAAC,KAAK,EAAE;AACvC,IAAI,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AAC1D,IAAI,MAAM,IAAI,GAAG,CAAC,IAAI,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC;AAC3D;AACA,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,KAAK,KAAK,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC,SAAS,KAAK;AACpK,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACxD;AACA,QAAQ,OAAO,EAAE,CAAC,SAAS,CAAC;AAC5B,KAAK,CAAC,CAAC;AACP;;ACTY,MAAC,gBAAgB,GAAG,IAAI,cAAc,CAAC,kBAAkB,EAAE;AACvE,IAAI,OAAO,EAAE,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe;AACnD,CAAC;;ACFW,MAAC,MAAM,GAAG,IAAI,cAAc,CAAC,UAAU,EAAE;AACrD,IAAI,OAAO,EAAE,MAAM;AACnB,QAAQ,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChD,QAAQ,IAAI,CAAC,WAAW,EAAE;AAC1B,YAAY,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC;AACtD;AACA,QAAQ,OAAO,WAAW;AAC1B,KAAK;AACL,CAAC;;ACRW,MAAC,aAAa,GAAG,IAAI,cAAc,CAAC,iBAAiB,EAAE;AACnE,IAAI,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY;AAC9C,CAAC;;ACFW,MAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,YAAY,EAAE;AACzD,IAAI,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ;AAC1C,CAAC;;ACFW,MAAC,mBAAmB,GAAG,IAAI,cAAc,CAAC,qBAAqB,EAAE;AAC7E,IAAI,OAAO,GAAG;AACd,QAAQ,OAAO,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AACrD,KAAK;AACL,CAAC;;ACHM,MAAM,eAAe,CAAC;AAC7B,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChC,IAAI,QAAQ,CAAC,KAAK,EAAE;AACpB,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE;AAC1C;AACA,IAAI,cAAc,CAAC,WAAW,EAAE;AAChC,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;AAC1E,QAAQ,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC;AAChD,QAAQ,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC;AACjD;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,wBAAwB,CAAC,CAAC,IAAI,IAAI;AAC/E;AACA,IAAI,YAAY,CAAC,GAAG,EAAE;AACtB,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;AACxE,QAAQ,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC;AAC7C,QAAQ,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC;AACtC;AACA,IAAI,aAAa,GAAG;AACpB,QAAQ,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,IAAI,IAAI;AAC5E;AACA,IAAI,SAAS,CAAC,GAAG,EAAE;AACnB,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;AACzE,QAAQ,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC;AACnD,QAAQ,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC;AACjD;AACA,IAAI,WAAW,CAAC,GAAG,EAAE;AACrB,QAAQ,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,eAAe,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI;AACvF;AACA,IAAI,cAAc,CAAC,GAAG,EAAE;AACxB,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC;AACzD,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACnE,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;AACjC,QAAQ,OAAO,OAAO;AACtB;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC1K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACjJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;AACzC,SAAS,CAAC,EAAE,CAAC;;AC5CN,MAAM,4BAA4B,CAAC;AAC1C,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACvF,QAAQ,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AAC7C,YAAY,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE;AAC1C,YAAY,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;AACpD,YAAY,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;AAC7C,gBAAgB,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC;AAChE;AACA,iBAAiB;AACjB,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;AAC3C;AACA;AACA;AACA,IAAI,iBAAiB,CAAC,KAAK,EAAE;AAC7B,QAAQ,OAAO,KAAK,EAAE,MAAM;AAC5B;AACA,IAAI,oBAAoB,CAAC,OAAO,EAAE;AAClC,QAAQ,OAAO,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;AACpC;AACA,IAAI,QAAQ,CAAC,OAAO,EAAE;AACtB,QAAQ,OAAO,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;AAC3C;AACA,IAAI,eAAe,CAAC,IAAI,EAAE;AAC1B,QAAQ,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;AAChE;AACA,IAAI,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE;AACxC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAClC,YAAY,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AACpC;AACA,QAAQ,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;AACtC;AACA;;AChCO,MAAM,4BAA4B,CAAC;AAC1C,IAAI,KAAK;AACT,IAAI,MAAM;AACV,IAAI,MAAM;AACV,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE;AACvC,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK;AAC1B,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM;AAC5B,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM;AAC5B;AACA;;ACTO,SAAS,kBAAkB,CAAC,gBAAgB,EAAE;AACrD,IAAI,OAAO;AACX,QAAQ,gBAAgB;AACxB,KAAK;AACL;;ACJO,SAAS,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE;AACtD,IAAI,OAAO;AACX,QAAQ,QAAQ;AAChB,QAAQ,SAAS,EAAE,gBAAgB,CAAC,MAAM,CAAC;AAC3C,KAAK;AACL;AACO,SAAS,iBAAiB,CAAC,UAAU,EAAE;AAC9C,IAAI,OAAO;AACX,QAAQ,UAAU;AAClB,KAAK;AACL;AACO,SAAS,gBAAgB,CAAC,MAAM,EAAE;AACzC,IAAI,OAAO,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI;AACnC,QAAQ,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACvI,QAAQ,IAAI,CAAC,SAAS,EAAE;AACxB,YAAY,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC;AAClD;AACA,QAAQ,OAAO,SAAS;AACxB,KAAK,CAAC;AACN;;ACnBO,SAAS,gBAAgB,CAAC,OAAO,EAAE;AAC1C,IAAI,OAAO;AACX,QAAQ,OAAO;AACf,KAAK;AACL;;ACHO,SAAS,oBAAoB,CAAC,aAAa,EAAE;AACpD,IAAI,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,aAAa,CAAC,SAAS,CAAC;AAChE,IAAI,OAAO;AACX,QAAQ,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,MAAM;AAC9D,KAAK;AACL;AACY,MAAC,2BAA2B,GAAG,IAAI,cAAc,CAAC,6BAA6B;;ACPpF,SAAS,WAAW,CAAC,IAAI,EAAE;AAClC,IAAI,OAAO;AACX,QAAQ,IAAI;AACZ,KAAK;AACL;;ACJO,SAAS,uBAAuB,CAAC,UAAU,EAAE;AACpD,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE;AAChB,YAAY,UAAU;AACtB,SAAS;AACT,KAAK;AACL;;ACNO,SAAS,iBAAiB,CAAC,GAAG,UAAU,EAAE;AACjD,IAAI,OAAO;AACX,QAAQ,UAAU;AAClB,KAAK;AACL;AACO,SAAS,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE;AACnD,IAAI,OAAO;AACX,QAAQ,IAAI,EAAE,IAAI;AAClB,QAAQ,KAAK;AACb,KAAK;AACL;;ACVO,SAAS,qBAAqB,CAAC,cAAc,GAAG;AACvD,IAAI,KAAK,EAAE,iBAAiB;AAC5B,IAAI,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;AAC/B,CAAC,EAAE;AACH,IAAI,OAAO;AACX,QAAQ,cAAc;AACtB,KAAK;AACL;;ACCO,MAAM,YAAY,CAAC;AAC1B,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChC,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC;AACtC,IAAI,cAAc,GAAG,MAAM,CAAC,2BAA2B,CAAC;AACxD,IAAI,OAAO,GAAG;AACd,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAEC,QAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,UAAU,KAAK;AACnK,YAAY,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI;AACxD,YAAY,IAAI,CAAC,WAAW;AAC5B,gBAAgB;AAChB,YAAY,MAAM,IAAI,GAAG,EAAE,GAAG,WAAW,EAAE;AAC3C,YAAY,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;AAChG,YAAY,IAAI,IAAI,EAAE;AACtB,gBAAgB,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;AACvF,gBAAgB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;AAC7D,gBAAgB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;AAC/C,gBAAgB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW;AAC9E,gBAAgB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK;AAC5D,gBAAgB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW;AAC9E,gBAAgB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY;AACjF,gBAAgB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,WAAW,CAAC,UAAU;AAC3E;AACA,YAAY,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;AAC3B,gBAAgB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;AAC7D;AACA,YAAY,IAAI,IAAI,CAAC,KAAK,EAAE;AAC5B,gBAAgB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5D;AACA,YAAY,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;AACtC,SAAS,CAAC,CAAC;AACX;AACA,IAAI,OAAO,GAAG;AACd,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;AACvC,YAAY;AACZ;AACA,QAAQ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;AACtD;AACA,IAAI,kBAAkB,CAAC,GAAG,EAAE;AAC5B,QAAQ,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5G;AACA,IAAI,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE;AAClC,QAAQ,OAAO,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACrE;AACA,IAAI,iBAAiB,CAAC,GAAG,EAAE;AAC3B,QAAQ,IAAI;AACZ,YAAY,OAAO,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE;AACjE;AACA,QAAQ,MAAM;AACd,YAAY,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,GAAG;AAC9C;AACA;AACA,IAAI,cAAc,CAAC,aAAa,EAAE;AAClC,QAAQ,IAAI;AACZ,YAAY,OAAO,IAAI,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE;AAC3E;AACA,QAAQ,MAAM;AACd,YAAY,OAAO,aAAa;AAChC;AACA;AACA,IAAI,eAAe,CAAC,IAAI,EAAE;AAC1B,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AAC1C,QAAQ,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC;AACtD,QAAQ,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC;AAC9D,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;AAC1E,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAC5E,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AAC9E,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AAClF,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AAChF,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;AAC1F,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AAC9E,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AACzF,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;AACxF,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC;AACrG,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;AACvG;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACvK,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AAC1H;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AACtH,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACvFD,MAAC,2BAA2B,GAAG,IAAI,cAAc,CAAC,6BAA6B;;ACEpF,MAAM,eAAe,CAAC;AAC7B,IAAI,OAAO,GAAG,MAAM,CAAC,2BAA2B,EAAE;AAClD,QAAQ,QAAQ,EAAE,IAAI;AACtB,KAAK,CAAC;AACN,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC;AAC9C;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACzK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,0BAA0B,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,8CAA8C,EAAE,MAAM,EAAE,CAAC,kLAAkL,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC1hB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,0BAA0B,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AACpI,wBAAwB,SAAS,EAAE,qBAAqB;AACxD,qBAAqB,EAAE,QAAQ,EAAE,8CAA8C,EAAE,MAAM,EAAE,CAAC,kLAAkL,CAAC,EAAE;AAC/Q,SAAS,CAAC,EAAE,CAAC;;ACZN,MAAM,cAAc,CAAC;AAC5B,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,QAAQ,GAAG,MAAM,CAAC,6BAA6B,CAAC,EAAE,UAAU,IAAI,EAAE;AACtE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;AAChN,IAAI,UAAU,GAAG,QAAQ,CAAC,MAAM;AAChC,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAChD,QAAQ,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK;AAC1C,YAAY,GAAG,IAAI;AACnB,YAAY,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;AAC7E,SAAS,CAAC,CAAC;AACX,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC3D,IAAI,UAAU,CAAC,GAAG,EAAE;AACpB,QAAQ,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;AACzF;AACA,IAAI,SAAS,CAAC,WAAW,EAAE,QAAQ,EAAE;AACrC,QAAQ,IAAI,CAAC,QAAQ;AACrB,YAAY,OAAO,KAAK;AACxB,QAAQ,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,UAAU,CAAC,QAAQ,GAAG,GAAG,CAAC;AACjF;AACA;;ACrBO,MAAM,UAAU,SAAS,cAAc,CAAC;AAC/C,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACtK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,kKAAkK,EAAE,MAAM,EAAE,CAAC,gQAAgQ,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACt6B;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AACpH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AAC1H,wBAAwB,UAAU;AAClC,qBAAqB,EAAE,QAAQ,EAAE,kKAAkK,EAAE,MAAM,EAAE,CAAC,gQAAgQ,CAAC,EAAE;AACjd,SAAS,CAAC,EAAE,CAAC;;ACTN,MAAM,oBAAoB,CAAC;AAClC,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;AACjC,IAAI,aAAa,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,IAAI,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;AACzC,IAAI,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC/C,IAAI,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC5C,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,EAAE;AACpD,YAAY,MAAM,IAAI,KAAK,CAAC,oGAAoG,CAAC;AACjI;AACA;AACA,IAAI,4BAA4B,GAAG;AACnC,QAAQ,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;AAC/D;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE;AACzG,YAAY,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC;AAClE,YAAY,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC;AACjE;AACA,aAAa;AACb,YAAY,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC;AACrE,YAAY,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC;AAClE;AACA,QAAQ,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE;AACzC;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC9K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,qHAAqH,EAAE,MAAM,EAAE,CAAC,mxBAAmxB,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC1rC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC;AAC9H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,qHAAqH,EAAE,MAAM,EAAE,CAAC,mxBAAmxB,CAAC,EAAE;AAC1hC,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,CAAC;AACzC,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,OAAO;AAC9B,aAAa,CAAC,EAAE,EAAE,CAAC;;ACrCZ,SAAS,YAAY,GAAG;AAC/B,IAAI,OAAO;AACX,QAAQ;AACR,YAAY,OAAO,EAAE,YAAY;AACjC,YAAY,QAAQ,EAAE,YAAY;AAClC,SAAS;AACT,KAAK;AACL;;ACPY,MAAC,oBAAoB,GAAG,IAAI,cAAc,CAAC,sBAAsB;;ACEtE,MAAM,UAAU,CAAC;AACxB,IAAI,KAAK,GAAG,MAAM,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACpK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,8JAA8J,EAAE,MAAM,EAAE,CAAC,oJAAoJ,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACjiB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AACpH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,8JAA8J,EAAE,MAAM,EAAE,CAAC,oJAAoJ,CAAC,EAAE;AAC3b,SAAS,CAAC,EAAE,CAAC;;ACJN,MAAM,YAAY,SAAS,cAAc,CAAC;AACjD,IAAI,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC3E,IAAI,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE;AAC7D,IAAI,SAAS,GAAG;AAChB,QAAQ;AACR,YAAY,OAAO,EAAE,KAAK;AAC1B,YAAY,OAAO,EAAE,QAAQ;AAC7B,YAAY,QAAQ,EAAE,KAAK;AAC3B,YAAY,QAAQ,EAAE,KAAK;AAC3B,SAAS;AACT,QAAQ;AACR,YAAY,OAAO,EAAE,OAAO;AAC5B,YAAY,OAAO,EAAE,QAAQ;AAC7B,YAAY,QAAQ,EAAE,OAAO;AAC7B,YAAY,QAAQ,EAAE,KAAK;AAC3B,SAAS;AACT,QAAQ;AACR,YAAY,OAAO,EAAE,OAAO;AAC5B,YAAY,OAAO,EAAE,KAAK;AAC1B,YAAY,QAAQ,EAAE,OAAO;AAC7B,YAAY,QAAQ,EAAE,QAAQ;AAC9B,SAAS;AACT,QAAQ;AACR,YAAY,OAAO,EAAE,KAAK;AAC1B,YAAY,OAAO,EAAE,KAAK;AAC1B,YAAY,QAAQ,EAAE,KAAK;AAC3B,YAAY,QAAQ,EAAE,QAAQ;AAC9B,SAAS;AACT,KAAK;AACL,IAAI,aAAa;AACjB,IAAI,UAAU,GAAG;AACjB,QAAQ,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;AACxC,QAAQ,IAAI,CAAC,IAAI,EAAE;AACnB;AACA,IAAI,UAAU,GAAG;AACjB,QAAQ,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;AACxC,QAAQ,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC;AAChE;AACA,IAAI,MAAM,GAAG;AACb,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACnC;AACA,IAAI,IAAI,GAAG;AACX,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;AAC5B,YAAY,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AACjC;AACA;AACA,IAAI,KAAK,GAAG;AACZ,QAAQ,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;AAC9B;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;AACxC;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACxK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,q1CAAq1C,EAAE,MAAM,EAAE,CAAC,qzCAAqzC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,qEAAqE,EAAE,MAAM,EAAE,CAAC,2BAA2B,EAAE,8BAA8B,EAAE,qCAAqC,EAAE,4BAA4B,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,kCAAkC,EAAE,+BAA+B,EAAE,mCAAmC,EAAE,mCAAmC,EAAE,yBAAyB,EAAE,iCAAiC,EAAE,sCAAsC,EAAE,gCAAgC,EAAE,iCAAiC,EAAE,uCAAuC,EAAE,kCAAkC,EAAE,yBAAyB,EAAE,wCAAwC,CAAC,EAAE,OAAO,EAAE,CAAC,eAAe,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,qBAAqB,CAAC,EAAE,QAAQ,EAAE,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,4DAA4D,EAAE,QAAQ,EAAE,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC/7I;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AACtH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AAC5H,wBAAwB,mBAAmB;AAC3C,wBAAwB,gBAAgB;AACxC,wBAAwB,oBAAoB;AAC5C,wBAAwB,UAAU;AAClC,wBAAwB,UAAU;AAClC,qBAAqB,EAAE,QAAQ,EAAE,q1CAAq1C,EAAE,MAAM,EAAE,CAAC,qzCAAqzC,CAAC,EAAE;AACzrF,SAAS,CAAC,EAAE,CAAC;;ACvEN,SAAS,oBAAoB,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,EAAE,EAAE;AACrF,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,EAAE;AACnF,QAAQ,OAAO,UAAU;AACzB;AACA,IAAI,IAAI,GAAG,GAAG,OAAO,GAAG,QAAQ;AAChC,IAAI,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,YAAY,CAAC;AACvD,IAAI,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,oBAAoB,EAAE,cAAc,CAAC;AAC3D,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;AAC9B,QAAQ,GAAG,IAAI,KAAK;AACpB;AACA,IAAI,OAAO,GAAG;AACd;AACA,SAAS,gBAAgB,CAAC,EAAE,EAAE,UAAU,EAAE;AAC1C,IAAI,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;AACvE;;ACTO,MAAM,kBAAkB,CAAC;AAChC,IAAI,cAAc,GAAG,MAAM,CAAC,2BAA2B,CAAC;AACxD,IAAI,OAAO,GAAG,MAAM,CAAC,IAAI,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACtG,IAAI,cAAc,CAAC,QAAQ,EAAE;AAC7B,QAAQ,OAAO,oBAAoB,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;AACxJ;AACA,IAAI,OAAO,GAAG;AACd,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI;AACvC;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK;AACxC;AACA,IAAI,mBAAmB,GAAG;AAC1B,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE;AAC3D;AACA,IAAI,aAAa,GAAG;AACpB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,IAAI,EAAE;AACnD;AACA,IAAI,aAAa,GAAG;AACpB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,IAAI,EAAE;AACnD;AACA,IAAI,mBAAmB,GAAG;AAC1B,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE;AAC3D;AACA,IAAI,aAAa,GAAG;AACpB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE;AAC3D;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc;AACjD;AACA,IAAI,SAAS,GAAG;AAChB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM;AACzC;AACA,IAAI,gBAAgB,GAAG;AACvB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,IAAI,EAAE;AACtD;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC7K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAChI;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC;AAC5H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC5CN,MAAM,sBAAsB,CAAC;AACpC,IAAI,WAAW,GAAG,EAAE;AACpB,IAAI,OAAO,GAAG;AACd,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;AACxD,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE;AAC7B;AACA,IAAI,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE;AACrC,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;AACxC,QAAQ,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC;AAC9C,QAAQ,SAAS,CAAC,QAAQ,EAAE,UAAU,IAAI;AAC1C;AACA,IAAI,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE;AACzC,QAAQ,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO;AACxC,QAAQ,IAAI,CAAC,OAAO;AACpB,YAAY;AACZ,QAAQ,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK;AAC7D,YAAY,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;AAC3D,YAAY,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC;AACrD,YAAY,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,UAAU,EAAE;AAC5D,gBAAgB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;AACjC;AACA,iBAAiB;AACjB,gBAAgB,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK;AAClD;AACA,SAAS,CAAC;AACV;AACA,IAAI,kBAAkB,CAAC,QAAQ,EAAE;AACjC,QAAQ,IAAI,MAAM,GAAG,QAAQ;AAC7B,QAAQ,IAAI,MAAM,EAAE,UAAU,GAAG,GAAG,CAAC,IAAI,MAAM,EAAE,UAAU,GAAG,GAAG,CAAC,EAAE;AACpE,YAAY,IAAI;AAChB,gBAAgB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;AAC3C;AACA;AACA,YAAY,OAAO,CAAC,EAAE;AACtB;AACA;AACA,QAAQ,OAAO,MAAM;AACrB;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACjL,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AACpI;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACnCN,MAAM,eAAe,CAAC;AAC7B,IAAI,KAAK,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;AACjD,IAAI,KAAK,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC,OAAO,EAAE;AAChD,IAAI,MAAM,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAClD,IAAI,eAAe,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,aAAa,EAAE,CAAC,MAAM;AACxE,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;AAC1B,IAAI,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC;AACnD,IAAI,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;AAC7C,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACnF,IAAI,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrF,IAAI,MAAM,GAAG,IAAI;AACjB,IAAI,YAAY;AAChB,IAAI,SAAS;AACb,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;AACnD,YAAY,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;AACrC,YAAY;AACZ;AACA,QAAQ,IAAI,CAAC,cAAc,EAAE;AAC7B,QAAQ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;AAClC;AACA,IAAI,cAAc,GAAG;AACrB,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,aAAa;AAC5D,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,aAAa;AACtD,QAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM;AAC3C,YAAY,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE;AAClD,YAAY,IAAI,CAAC,YAAY,GAAG,IAAI,cAAc,CAAC,EAAE,CAAC;AACtD,YAAY,IAAI,CAAC,SAAS,GAAG,IAAI,cAAc,CAAC,EAAE,CAAC;AACnD,YAAY,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC;AAChD,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;AAC1C,SAAS,CAAC;AACV;AACA,IAAI,cAAc,GAAG;AACrB,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;AAC/B,YAAY;AACZ,QAAQ,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM;AAClD,YAAY,IAAI,CAAC,MAAM,GAAG,IAAI;AAC9B,YAAY,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;AACtC,SAAS,CAAC;AACV;AACA,IAAI,cAAc,CAAC,OAAO,EAAE;AAC5B,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,aAAa;AAC5D,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,aAAa;AACtD,QAAQ,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM;AACjC,YAAY;AACZ,QAAQ,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,SAAS,CAAC,WAAW;AAChE,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;AAC/D,YAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM;AACjC,gBAAgB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzC,gBAAgB,IAAI,OAAO;AAC3B,oBAAoB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;AAC9C,aAAa,CAAC;AACd;AACA;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE;AACvC,QAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE;AACpC,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;AAC/B,YAAY,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7C;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACzK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,sxBAAsxB,EAAE,MAAM,EAAE,CAAC,ulDAAulD,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,0BAA0B,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACl7G;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AACvH,wBAAwB,eAAe;AACvC,wBAAwB,oBAAoB;AAC5C,wBAAwB,UAAU;AAClC,wBAAwB,YAAY;AACpC,wBAAwB,UAAU;AAClC,wBAAwB,UAAU;AAClC,wBAAwB,YAAY;AACpC,wBAAwB,UAAU;AAClC,qBAAqB,EAAE,QAAQ,EAAE,sxBAAsxB,EAAE,MAAM,EAAE,CAAC,ulDAAulD,CAAC,EAAE;AAC55E,SAAS,CAAC,EAAE,CAAC;;ACnFN,MAAM,wBAAwB,CAAC;AACtC,IAAI,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5E,IAAI,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrF,IAAI,MAAM,GAAG;AACb,QAAQ,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AACjD;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,uSAAuS,EAAE,MAAM,EAAE,CAAC,2+BAA2+B,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACtvD;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AAC9H,wBAAwB,mBAAmB,EAAE,eAAe;AAC5D,wBAAwB,kBAAkB,EAAE,UAAU;AACtD,qBAAqB,EAAE,QAAQ,EAAE,uSAAuS,EAAE,MAAM,EAAE,CAAC,2+BAA2+B,CAAC,EAAE;AACj0C,SAAS,CAAC,EAAE,CAAC;;ACfN,MAAM,wBAAwB,CAAC;AACtC,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,mCAAmC,EAAE,MAAM,EAAE,CAAC,ySAAyS,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACllB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,mCAAmC,EAAE,MAAM,EAAE,CAAC,ySAAyS,CAAC,EAAE;AAC9d,SAAS,CAAC,EAAE,CAAC;;ACGN,MAAM,wBAAwB,CAAC;AACtC,IAAI,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC1C,IAAI,OAAO,GAAG,MAAM,CAAC,2BAA2B,EAAE;AAClD,QAAQ,QAAQ,EAAE,IAAI;AACtB,KAAK,CAAC;AACN,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAClD,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,KAAK;AACT,IAAI,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;AAC/C,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;AACrC,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;AACpC,IAAI,QAAQ,GAAG;AACf,QAAQ,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG;AAC5C,QAAQ,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AAC7E,QAAQ,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;AAC1E,QAAQ,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AACtC,YAAY,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC5E,SAAS,CAAC;AACV,QAAQ,IAAI,CAAC,UAAU,GAAG,UAAU;AACpC;AACA,IAAI,UAAU,CAAC,KAAK,EAAE;AACtB,QAAQ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAChD;AACA,IAAI,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE;AACjC,QAAQ,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAC3D,YAAY,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG;AAChD,kBAAkB,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;AACxC,kBAAkB,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1C;AACA;AACA,IAAI,eAAe,CAAC,IAAI,EAAE;AAC1B,QAAQ,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;AAChE;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,wBAAwB,EAAE;AACvC;AACA,IAAI,wBAAwB,GAAG;AAC/B,QAAQ,IAAI,CAAC,OAAO,CAAC;AACrB,aAAa,IAAI,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,aAAa,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;AAClJ,aAAa,SAAS,CAAC,MAAM;AAC7B,YAAY,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;AACjD,YAAY,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,KAAK,CAAC;AACnD,YAAY,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE;AACnD,SAAS,CAAC;AACV;AACA,IAAI,cAAc,CAAC,GAAG,EAAE;AACxB,QAAQ,IAAI,CAAC,KAAK,GAAG,SAAS;AAC9B,QAAQ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AAC3C,YAAY,IAAI,CAAC,KAAK;AACtB,gBAAgB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;AACxC,oBAAoB,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/C,iBAAiB,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC,KAAK;AACtC,SAAS,CAAC;AACV;AACA,IAAI,gBAAgB,CAAC,KAAK,EAAE;AAC5B,QAAQ,IAAI,4BAA4B,EAAE,CAAC,MAAM,CAAC,IAAI,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACtH;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,mmBAAmmB,EAAE,MAAM,EAAE,CAAC,khCAAkhC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACx3E;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AACjI,wBAAwB,wBAAwB;AAChD,wBAAwB,wBAAwB;AAChD,wBAAwB,UAAU;AAClC,qBAAqB,EAAE,QAAQ,EAAE,mmBAAmmB,EAAE,MAAM,EAAE,CAAC,khCAAkhC,CAAC,EAAE;AACpqD,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,gBAAgB,EAAE,CAAC;AACjD,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;AAC1C,aAAa,CAAC,EAAE,EAAE,CAAC;;ACpFZ,MAAM,qCAAqC,CAAC;AACnD,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,IAAI,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE;AACxC,QAAQ,IAAI,CAAC,YAAY,GAAG,YAAY;AACxC,QAAQ,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAChC;AACA;;ACNO,MAAM,oCAAoC,CAAC;AAClD,IAAI,SAAS;AACb,IAAI,WAAW,CAAC,SAAS,EAAE;AAC3B,QAAQ,IAAI,CAAC,SAAS,GAAG,SAAS;AAClC;AACA,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,IAAI,QAAQ,GAAG,SAAS;AAChC,QAAQ,IAAI,IAAI,GAAG,SAAS;AAC5B,QAAQ,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,UAAU,KAAK;AACtE,YAAY,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK;AACzD,gBAAgB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,WAAW,EAAE;AACvD,oBAAoB,IAAI,KAAK,GAAG,CAAC,EAAE;AACnC,wBAAwB,QAAQ,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;AAChE;AACA,yBAAyB;AACzB,wBAAwB,IAAI,UAAU,GAAG,CAAC,EAAE;AAC5C,4BAA4B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,UAAU,GAAG,CAAC,CAAC;AAChG,4BAA4B,QAAQ,GAAG,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;AACjG;AACA;AACA,oBAAoB,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;AACxD,wBAAwB,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;AAC5D;AACA,yBAAyB;AACzB,wBAAwB,IAAI,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;AACpF,4BAA4B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,UAAU,GAAG,CAAC,CAAC;AAC5F,4BAA4B,IAAI,GAAG,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AAC5D;AACA;AACA;AACA,aAAa,CAAC;AACd,SAAS,CAAC;AACV,QAAQ,OAAO,IAAI,qCAAqC,CAAC,QAAQ,EAAE,IAAI,CAAC;AACxE;AACA;;ACnCO,MAAM,oCAAoC,CAAC;AAClD,IAAI,WAAW;AACf,IAAI,WAAW,CAAC,WAAW,EAAE;AAC7B,QAAQ,IAAI,CAAC,WAAW,GAAG,WAAW;AACtC;AACA;;ACHO,MAAM,sBAAsB,CAAC;AACpC,IAAI,WAAW;AACf,IAAI,IAAI;AACR,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAChL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,6BAA6B,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,2GAA2G,EAAE,MAAM,EAAE,CAAC,+kBAA+kB,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC3/B;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,6BAA6B,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,2GAA2G,EAAE,MAAM,EAAE,CAAC,+kBAA+kB,CAAC,EAAE;AACn1B,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,WAAW,EAAE,CAAC;AAC5C,gBAAgB,IAAI,EAAE,KAAK;AAC3B,gBAAgB,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;AACzC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC;AACvB,gBAAgB,IAAI,EAAE,KAAK;AAC3B,gBAAgB,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;AACzC,aAAa,CAAC,EAAE,EAAE,CAAC;;ACNZ,MAAM,cAAc,CAAC;AAC5B,IAAI,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC1C,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC;AAC5C,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE;AACrD,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;AAChN,IAAI,YAAY,GAAG,QAAQ,CAAC,MAAM;AAClC,QAAQ,IAAI,CAAC,IAAI,EAAE;AACnB,QAAQ,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAC3E,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC7D,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM;AAC7B,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;AAC/B,QAAQ,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC;AACxC,QAAQ,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE;AACnD,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACxD,IAAI,QAAQ,GAAG,QAAQ,CAAC,MAAM;AAC9B,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU;AACnC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO;AAClC,YAAY,OAAO,SAAS;AAC5B,QAAQ,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,KAAK;AACjE,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACzD,IAAI,YAAY,GAAG,QAAQ,CAAC,MAAM;AAClC,QAAQ,MAAM,QAAQ,GAAG,IAAI,oCAAoC,CAAC,IAAI,CAAC,SAAS;AAChF,aAAa,MAAM,CAAC,IAAI,oCAAoC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;AAClF,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC;AACzD,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC7D,IAAI,QAAQ,GAAG,QAAQ,CAAC,MAAM;AAC9B,QAAQ,MAAM,QAAQ,GAAG,IAAI,oCAAoC,CAAC,IAAI,CAAC,SAAS;AAChF,aAAa,MAAM,CAAC,IAAI,oCAAoC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;AAClF,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;AACrD,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACzD,IAAI,cAAc,CAAC,IAAI,EAAE;AACzB,QAAQ,IAAI,CAAC,IAAI,EAAE,IAAI;AACvB,YAAY,OAAO,IAAI;AACvB,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;AACvC,YAAY,OAAO,IAAI;AACvB,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE;AACrC,QAAQ,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI;AACrE,aAAa,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;AACpC,QAAQ,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE;AAChF;AACA,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;AACzE;AACA,IAAI,MAAM,CAAC,KAAK,EAAE;AAClB,QAAQ,IAAI,4BAA4B,EAAE,CAAC,MAAM,CAAC,IAAI,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACtH;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACxK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,iuBAAiuB,EAAE,MAAM,EAAE,CAAC,4kBAA4kB,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,6BAA6B,EAAE,MAAM,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACvuD;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACxH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AAC5G,wBAAwB,sBAAsB;AAC9C,qBAAqB,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,iuBAAiuB,EAAE,MAAM,EAAE,CAAC,4kBAA4kB,CAAC,EAAE;AAC92C,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC;AACvC,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;AAC1C,aAAa,CAAC,EAAE,EAAE,CAAC;;ACtET,IAAC;AACX,CAAC,UAAU,sBAAsB,EAAE;AACnC,IAAI,sBAAsB,CAAC,YAAY,CAAC,GAAG,YAAY;AACvD,IAAI,sBAAsB,CAAC,eAAe,CAAC,GAAG,cAAc;AAC5D,IAAI,sBAAsB,CAAC,eAAe,CAAC,GAAG,eAAe;AAC7D,IAAI,sBAAsB,CAAC,UAAU,CAAC,GAAG,UAAU;AACnD,IAAI,sBAAsB,CAAC,WAAW,CAAC,GAAG,KAAK;AAC/C,IAAI,sBAAsB,CAAC,YAAY,CAAC,GAAG,MAAM;AACjD,IAAI,sBAAsB,CAAC,eAAe,CAAC,GAAG,SAAS;AACvD,IAAI,sBAAsB,CAAC,cAAc,CAAC,GAAG,QAAQ;AACrD,IAAI,sBAAsB,CAAC,eAAe,CAAC,GAAG,SAAS;AACvD,CAAC,EAAE,sBAAsB,KAAK,sBAAsB,GAAG,EAAE,CAAC,CAAC;;ACXjD,IAAC;AACX,CAAC,UAAU,oBAAoB,EAAE;AACjC,IAAI,oBAAoB,CAAC,MAAM,CAAC,GAAG,MAAM;AACzC,IAAI,oBAAoB,CAAC,SAAS,CAAC,GAAG,cAAc;AACpD,CAAC,EAAE,oBAAoB,KAAK,oBAAoB,GAAG,EAAE,CAAC,CAAC;;ACH3C,MAAC,6BAA6B,GAAG,IAAI,cAAc,CAAC,+BAA+B;;ACSxF,MAAM,eAAe,CAAC;AAC7B,IAAI,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC7D,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC;AACxC,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,SAAS,GAAG,MAAM,CAAC,6BAA6B,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACzE,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC;AACb,aAAa,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,mBAAmB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAC3D,aAAa,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC;AAC9F,aAAa,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC;AAC/F,aAAa,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC;AAClG,aAAa,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;AACjG,aAAa,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;AACjG,aAAa,GAAG,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC;AAClG,aAAa,GAAG,CAAC,GAAG,IAAI,qBAAqB,EAAE,CAAC,MAAM,EAAE;AACxD,aAAa,GAAG,CAAC,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;AACzF,aAAa,GAAG,CAAC,GAAG,IAAI,aAAa,EAAE,CAAC,MAAM,EAAE;AAChD,aAAa,GAAG,CAAC,GAAG,IAAI,gCAAgC,EAAE,CAAC,MAAM,EAAE,CAAC;AACpE;AACA,IAAI,QAAQ,CAAC,GAAG,EAAE;AAClB,QAAQ,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3d;AACA,IAAI,SAAS,CAAC,KAAK,EAAE;AACrB,QAAQ,OAAO,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1W;AACA,IAAI,eAAe,CAAC,IAAI,EAAE;AAC1B,QAAQ,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG;AAC5C,QAAQ,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AAC7E,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK;AACrE,YAAY,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;AAC7C,gBAAgB,IAAI,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAC/C,gBAAgB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;AAC5C,oBAAoB,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAC7F;AACA,gBAAgB,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AAC7C;AACA,YAAY,OAAO,KAAK;AACxB,SAAS,CAAC;AACV;AACA,IAAI,eAAe,CAAC,IAAI,EAAE;AAC1B,QAAQ,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;AAChE;AACA,IAAI,uBAAuB,CAAC,IAAI,EAAE;AAClC,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;AAC/C;AACA,IAAI,qCAAqC,CAAC,IAAI,EAAE;AAChD,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,kDAAkD,EAAE,iCAAiC,CAAC;AAClH;AACA,IAAI,sCAAsC,CAAC,IAAI,EAAE;AACjD,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,uCAAuC,EAAE,EAAE,CAAC;AACxE;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC1K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AAC7H;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACnEhC,SAAS,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE;AAC1D,IAAI,IAAI,MAAM;AACd,IAAI,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACpD,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE;AACpE,YAAY;AACZ;AACA,QAAQ,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;AACtC,YAAY,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO;AACtC,YAAY;AACZ;AACA;AACA,IAAI,OAAO,MAAM;AACjB;AACA,SAAS,aAAa,CAAC,KAAK,EAAE;AAC9B,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG;AAChD;AACO,SAAS,cAAc,CAAC,IAAI,EAAE;AACrC,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;AACvD;AACO,SAAS,cAAc,CAAC,KAAK,EAAE;AACtC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,CAAC;AAC9B;AACO,SAAS,cAAc,CAAC,KAAK,EAAE;AACtC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAC/B;AACO,SAAS,iBAAiB,CAAC,IAAI,EAAE;AACxC,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC;AAClD,IAAI,OAAO,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI;AAC/D;AACO,SAAS,sBAAsB,CAAC,IAAI,EAAE;AAC7C,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;AACzC,IAAI,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;AAClC;;AC9BO,MAAM,WAAW,CAAC;AACzB,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE;AAC3B,QAAQ,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE;AACjC,gBAAgB,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,KAAK;AAC3C,oBAAoB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;AAC/C,oBAAoB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;AAC5E,oBAAoB,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;AAC/C,wBAAwB,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;AACjE,wBAAwB,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,2BAA2B,EAAE,KAAK,CAAC,MAAM,CAAC;AACrG;AACA,yBAAyB;AACzB,wBAAwB,OAAO,CAAC,QAAQ,CAAC;AACzC;AACA,iBAAiB;AACjB,aAAa,CAAC;AACd;AACA;;ACdA,MAAM,qBAAqB,GAAG,4BAA4B;AACnD,MAAM,qBAAqB,CAAC;AACnC,IAAI,MAAM,GAAG;AACb,QAAQ,OAAO,CAAC,SAAS,EAAE,sBAAsB,CAAC,UAAU,EAAE;AAC9D,gBAAgB,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,KAAK;AAC3C,oBAAoB,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;AACvD,wBAAwB,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC/F;AACA,oBAAoB,OAAO,iBAAiB;AAC5C,iBAAiB;AACjB,aAAa,CAAC;AACd;AACA,IAAI,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE;AACjC,QAAQ,MAAM,MAAM,GAAG,EAAE;AACzB,QAAQ,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;AACvE,YAAY,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;AACnD,gBAAgB,MAAM,CAAC,IAAI,CAAC;AAC5B,oBAAoB,GAAG,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAChE,oBAAoB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO;AAC5C,oBAAoB,IAAI,EAAE,oBAAoB,CAAC,IAAI;AACnD,oBAAoB,MAAM,EAAE,KAAK;AACjC,oBAAoB,MAAM,EAAE,MAAM;AAClC,oBAAoB,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACnE,iBAAiB,CAAC;AAClB;AACA;AACA,QAAQ,OAAO,MAAM;AACrB;AACA,IAAI,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE;AAClC,QAAQ,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,qBAAqB;AAC1F;AACA,IAAI,iBAAiB,CAAC,KAAK,EAAE;AAC7B,QAAQ,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM;AAC7D;AACA,IAAI,wBAAwB,CAAC,IAAI,EAAE;AACnC,QAAQ,OAAO,CAAC,yBAAyB,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AACnE;AACA,IAAI,kBAAkB,CAAC,IAAI,EAAE;AAC7B,QAAQ,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,KAAK;AAClF;AACA,IAAI,gBAAgB,CAAC,IAAI,EAAE;AAC3B,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,6BAA6B,CAAC;AACtE,QAAQ,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE;AACpC;AACA;;AC9CO,MAAM,mBAAmB,CAAC;AACjC,IAAI,MAAM,CAAC,QAAQ,EAAE;AACrB,QAAQ,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK;AACnD,QAAQ,IAAI,CAAC,KAAK,EAAE;AACpB,YAAY,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC;AAC5E;AACA,QAAQ,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,EAAE,KAAK,KAAK;AAC3D,YAAY,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,YAAY,QAAQ,CAAC,yBAAyB,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;AAC/G,SAAS;AACT;AACA,IAAI,aAAa,CAAC,KAAK,EAAE;AACzB,QAAQ,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE;AAC7D;AACA,IAAI,eAAe,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;AACzC,QAAQ,OAAO;AACf,YAAY,GAAG,EAAE,EAAE;AACnB,YAAY,KAAK;AACjB,YAAY,QAAQ;AACpB,YAAY,IAAI,EAAE,oBAAoB,CAAC,IAAI;AAC3C,SAAS;AACT;AACA;;ACpBO,MAAM,gCAAgC,CAAC;AAC9C,IAAI,MAAM,GAAG;AACb,QAAQ,OAAO,CAAC,SAAS,EAAE,sBAAsB,CAAC,aAAa,EAAE;AACjE,gBAAgB,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,KAAK;AAC3C,oBAAoB,OAAO,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,iBAAiB;AAC3G,iBAAiB;AACjB,aAAa,CAAC;AACd;AACA,IAAI,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE;AAC5B,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC;AACrD,QAAQ,OAAO,CAAC,yBAAyB,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AACnE;AACA,IAAI,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE;AAChC,QAAQ,MAAM,MAAM,GAAG,EAAE;AACzB,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/D,QAAQ,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,IAAI,MAAM;AAClD,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,MAAM,CAAC,IAAI,CAAC;AACxB,gBAAgB,GAAG,EAAE,SAAS;AAC9B,gBAAgB,KAAK,EAAE,SAAS,CAAC,GAAG;AACpC,gBAAgB,IAAI,EAAE,oBAAoB,CAAC,OAAO;AAClD,gBAAgB,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,MAAM;AAClD,aAAa,CAAC;AACd;AACA,QAAQ,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,sBAAsB,CAAC,aAAa,CAAC;AACvF,QAAQ,MAAM,KAAK,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;AACxF,QAAQ,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC;AACzD,YAAY,GAAG,EAAE,QAAQ;AACzB,YAAY,KAAK,EAAE,GAAG;AACtB,YAAY,MAAM,EAAE,IAAI;AACxB,YAAY,IAAI,EAAE,oBAAoB,CAAC,IAAI;AAC3C,YAAY,MAAM;AAClB,SAAS,CAAC,CAAC;AACX,QAAQ,OAAO,MAAM;AACrB;AACA,IAAI,iBAAiB,CAAC,KAAK,EAAE;AAC7B,QAAQ,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;AACtE,QAAQ,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,2BAA2B,CAAC;AACxE,QAAQ,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,oBAAoB,CAAC;AACpE,QAAQ,IAAI,CAAC,QAAQ;AACrB,YAAY,OAAO,IAAI;AACvB,QAAQ,OAAO;AACf,YAAY,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC5B,YAAY,MAAM,EAAE,WAAW,GAAG,CAAC,CAAC;AACpC,SAAS;AACT;AACA;;AC/CO,MAAM,iBAAiB,CAAC;AAC/B,IAAI,WAAW;AACf,IAAI,WAAW,CAAC,WAAW,EAAE;AAC7B,QAAQ,IAAI,CAAC,WAAW,GAAG,WAAW;AACtC;AACA,IAAI,MAAM,GAAG;AACb,QAAQ,OAAO,CAAC,SAAS,EAAE,sBAAsB,CAAC,aAAa,EAAE;AACjE,gBAAgB,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,KAAK;AAC3C,oBAAoB,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;AACvD,wBAAwB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrF;AACA,oBAAoB,OAAO,EAAE;AAC7B,iBAAiB;AACjB,aAAa,CAAC;AACd;AACA,IAAI,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE;AACjC,QAAQ,MAAM,MAAM,GAAG,EAAE;AACzB,QAAQ,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,sBAAsB,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AAC9G,YAAY,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAClF,YAAY,IAAI,KAAK,EAAE;AACvB,gBAAgB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AAClC;AACA,SAAS,CAAC;AACV,QAAQ,OAAO,MAAM;AACrB;AACA,IAAI,UAAU,CAAC,IAAI,EAAE;AACrB,QAAQ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;AAC3E;AACA,IAAI,cAAc,CAAC,MAAM,EAAE;AAC3B,QAAQ,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK;AACjD,YAAY,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,kCAAkC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAClG,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AACnB,QAAQ,OAAO,IAAI,CAAC,oBAAoB,EAAE,GAAG,MAAM;AACnD;AACA,IAAI,oBAAoB,GAAG;AAC3B,QAAQ,OAAO,CAAC,mDAAmD,CAAC;AACpE;AACA,IAAI,aAAa,CAAC,KAAK,EAAE;AACzB,QAAQ,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK;AACzC,YAAY,OAAO,CAAC,uBAAuB,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;AAChG,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AACnB;AACA;;AC1CO,MAAM,aAAa,CAAC;AAC3B,IAAI,MAAM,GAAG;AACb,QAAQ,OAAO,CAAC,SAAS,EAAE,sBAAsB,CAAC,QAAQ,EAAE;AAC5D,gBAAgB,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,KAAK;AAC3C,oBAAoB,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;AACvD,wBAAwB,OAAO,CAAC,qBAAqB,CAAC;AACtD;AACA,oBAAoB,OAAO,EAAE;AAC7B,iBAAiB;AACjB,aAAa,CAAC;AACd;AACA;;ACZO,MAAM,OAAO,CAAC;AACrB,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChC,IAAI,OAAO,WAAW,GAAG,IAAI,GAAG,EAAE;AAClC,IAAI,OAAO,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE;AACnC,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACzC,YAAY,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAC/F;AACA,QAAQ,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC;AAC5D;AACA,IAAI,OAAO,CAAC,OAAO,EAAE;AACrB,QAAQ,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY;AACtD,QAAQ,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1D,QAAQ,IAAI,CAAC,WAAW,EAAE;AAC1B,YAAY,MAAM,IAAI,KAAK,CAAC,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC;AACrE;AACA,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;AACvD,QAAQ,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;AACtC;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAClK,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AACrH;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACjH,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACxBN,SAAS,UAAU,CAAC,WAAW,EAAE;AACxC,IAAI,OAAO,UAAU,WAAW,EAAE;AAClC,QAAQ,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;AAClD,KAAK;AACL;;ACLO,SAASC,uBAAqB,CAAC,KAAK,EAAE;AAC7C,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;AAC7B,QAAQ,OAAO,SAAS;AACxB;AACA,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;AACzB,IAAI,IAAI,KAAK,EAAE;AACf,QAAQ,OAAO,KAAK,GAAG,IAAI;AAC3B;AACA,IAAI,OAAO,SAAS;AACpB;;ACTO,SAAS,iBAAiB,CAAC,IAAI,EAAE;AACxC,IAAI,MAAM,KAAK,GAAG,sCAAsC;AACxD,IAAI,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AAClC,IAAI,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;AAClC;;ACJO,MAAM,6BAA6B,CAAC;AAC3C,IAAI,IAAI;AACR,IAAI,gBAAgB;AACpB,IAAI,OAAO;AACX,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,+BAA+B,CAAC;AACjE,IAAI,WAAW,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE;AACjD,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB,QAAQ,IAAI,CAAC,gBAAgB,GAAG,gBAAgB;AAChD,QAAQ,IAAI,CAAC,OAAO,GAAG,OAAO;AAC9B;AACA;;ACJG,IAAC,sBAAsB,GAAG,MAAM,sBAAsB,CAAC;AAC1D,IAAI,aAAa,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAClD,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE;AAChD,QAAQ,IAAI;AACZ,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC;AAClE;AACA,QAAQ,OAAO,KAAK,EAAE;AACtB,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC;AAChD;AACA;AACA,IAAI,gBAAgB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gBAAgB,EAAE,OAAO,EAAE;AACzE,QAAQ,SAAS,CAAC,IAAI,CAAC,SAAS,IAAI;AACpC,YAAY,MAAM,YAAY,GAAG,gBAAgB,CAAC,eAAe,CAAC,SAAS,CAAC;AAC5E,YAAY,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC;AAClE,YAAY,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;AAC1E,YAAY,IAAI,CAAC,SAAS,EAAE;AAC5B,gBAAgB,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC;AAC3D;AACA,SAAS,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC1E;AACA,IAAI,qBAAqB,CAAC,YAAY,EAAE;AACxC,QAAQ,YAAY,CAAC,iBAAiB,CAAC,YAAY,EAAE;AACrD,QAAQ,OAAO,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACjD;AACA,IAAI,4BAA4B,CAAC,GAAG,EAAE;AACtC,QAAQ,OAAO,CAAC,KAAK,CAAC,CAAC,mBAAmB,EAAE,GAAG,CAAC,wBAAwB,CAAC,CAAC;AAC1E;AACA,IAAI,yBAAyB,CAAC,GAAG,EAAE,KAAK,EAAE;AAC1C,QAAQ,OAAO,CAAC,KAAK,CAAC,CAAC,uCAAuC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;AAC/E;AACA,IAAI,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE;AAC1B,QAAQ,OAAO,CAAC,KAAK,CAAC,CAAC,+BAA+B,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;AACvE;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACjL,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AACpI;AACA,sBAAsB,GAAG,UAAU,CAAC;AACpC,IAAI,UAAU,CAAC,6BAA6B;AAC5C,CAAC,EAAE,sBAAsB,CAAC;AAE1B,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AChDN,MAAM,8BAA8B,CAAC;AAC5C,IAAI,QAAQ;AACZ,IAAI,gBAAgB;AACpB,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,gCAAgC,CAAC;AAClE,IAAI,WAAW,CAAC,QAAQ,EAAE,gBAAgB,EAAE;AAC5C,QAAQ,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAChC,QAAQ,IAAI,CAAC,gBAAgB,GAAG,gBAAgB;AAChD;AACA;;ACPY,MAAC,2BAA2B,GAAG,IAAI,cAAc,CAAC,6BAA6B;;ACMxF,IAAC,uBAAuB,GAAG,MAAM,uBAAuB,CAAC;AAC5D,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,cAAc,GAAG,MAAM,CAAC,2BAA2B,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE;AAClF,IAAI,MAAM,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE;AAC3C,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;AACrD,YAAY,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;AAC1C,SAAS,CAAC;AACV,QAAQ,IAAI,CAAC,IAAI,EAAE;AACnB,YAAY,MAAM,IAAI,KAAK,CAAC,CAAC,mBAAmB,EAAE,QAAQ,CAAC,gDAAgD,CAAC,CAAC;AAC7G;AACA,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,6BAA6B,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AACxF;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAClL,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AACrI;AACA,uBAAuB,GAAG,UAAU,CAAC;AACrC,IAAI,UAAU,CAAC,8BAA8B;AAC7C,CAAC,EAAE,uBAAuB,CAAC;AAE3B,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,CAAC;AACjI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC5BN,MAAM,+BAA+B,CAAC;AAC7C,IAAI,WAAW;AACf,IAAI,gBAAgB;AACpB,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,iCAAiC,CAAC;AACnE,IAAI,WAAW,CAAC,WAAW,EAAE,gBAAgB,EAAE;AAC/C,QAAQ,IAAI,CAAC,WAAW,GAAG,WAAW;AACtC,QAAQ,IAAI,CAAC,gBAAgB,GAAG,gBAAgB;AAChD;AACA;;ACDG,IAAC,wBAAwB,GAAG,MAAM,wBAAwB,CAAC;AAC9D,IAAI,aAAa,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAClD,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,cAAc,GAAG;AACrB,QAAQ;AACR,YAAY,QAAQ,EAAE,cAAc;AACpC,YAAY,SAAS,EAAE,gBAAgB,CAAC,MAAM,yDAAgD,CAAC;AAC/F,SAAS;AACT,QAAQ;AACR,YAAY,QAAQ,EAAE,WAAW;AACjC,YAAY,SAAS,EAAE,gBAAgB,CAAC,MAAM,2DAA6E,CAAC;AAC5H,SAAS;AACT,QAAQ;AACR,YAAY,QAAQ,EAAE,yBAAyB;AAC/C,YAAY,SAAS,EAAE,gBAAgB,CAAC,MAAM,gEAAyF,CAAC;AACxI,SAAS;AACT,QAAQ;AACR,YAAY,QAAQ,EAAE,UAAU;AAChC,YAAY,SAAS,EAAE,gBAAgB,CAAC,MAAM,wDAA4C,CAAC;AAC3F,SAAS;AACT,KAAK;AACL,IAAI,MAAM,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,EAAE;AAC9C,QAAQ,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE;AACpC,QAAQ,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK;AACjE,YAAY,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AACtE,gBAAgB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,6BAA6B,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;AACtH,aAAa,CAAC;AACd,SAAS,CAAC;AACV;AACA,IAAI,cAAc,CAAC,WAAW,EAAE,QAAQ,EAAE;AAC1C,QAAQ,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACjE;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACnL,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;AACtI;AACA,wBAAwB,GAAG,UAAU,CAAC;AACtC,IAAI,UAAU,CAAC,+BAA+B;AAC9C,CAAC,EAAE,wBAAwB,CAAC;AAE5B,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC1CN,MAAM,iBAAiB,CAAC;AAC/B,IAAI,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,KAAK;AAClF,gBAAgB,OAAO;AACvB,oBAAoB,MAAM,EAAEA,uBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3D,oBAAoB,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;AAC3D,iBAAiB;AACjB,aAAa,EAAE,CAAC,GAAG,CAAC;AACpB,YAAY,SAAS,EAAE,CAAC,CAAC,KAAK;AAC9B,gBAAgB,OAAO;AACvB,oBAAoB,MAAM,EAAEA,uBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3D,oBAAoB,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;AAC3D,iBAAiB;AACjB,aAAa;AACb,SAAS,CAAC,CAAC,CAAC;AACZ,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,iBAAiB,GAAG,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AACnF,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,8BAA8B,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAC9G;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC3K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,iBAAiB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,EAAE,cAAc,EAAE,oBAAoB,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,iCAAiC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC3oB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;AAC3H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AAC9H,wBAAwB,KAAK,EAAE,oBAAoB;AACnD,wBAAwB,gBAAgB,EAAE,eAAe;AACzD,qBAAqB,EAAE,QAAQ,EAAE,iCAAiC,EAAE;AACpE,SAAS,CAAC,EAAE,CAAC;;AC7BN,MAAM,SAAS,CAAC;AACvB,IAAI,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAChD,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9E,IAAI,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAChF,IAAI,QAAQ,GAAG;AACf,QAAQ,cAAc,CAAC,MAAM;AAC7B,YAAY,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE;AAC5G,iBAAiB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE;AAChF,SAAS,CAAC;AACV;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACnK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC3f;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACnH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,WAAW;AACzC,oBAAoB,QAAQ,EAAE,CAAC,CAAC;AAChC,oBAAoB,UAAU,EAAE,IAAI;AACpC,oBAAoB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AACnE,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACpBN,MAAM,QAAQ,CAAC;AACtB,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC;AAC5C,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,SAAS,GAAG,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1E,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM;AAC5B,QAAQ,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC;AACzD,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACvD,IAAI,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1E,IAAI,eAAe,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1F,IAAI,cAAc,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACxF,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,eAAe,EAAE;AAC9B,QAAQ,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAChD,QAAQ,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC7C;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AAChC,QAAQ,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,8BAA8B,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;AAC5F,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAC9D,QAAQ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC1C;AACA,IAAI,sBAAsB,CAAC,IAAI,EAAE;AACjC,QAAQ,IAAI,IAAI,EAAE,MAAM,EAAE;AAC1B,YAAY,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5C;AACA;AACA,IAAI,mBAAmB,CAAC,IAAI,EAAE;AAC9B,QAAQ,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE;AAC3B,YAAY,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;AAC/C;AACA;AACA,IAAI,eAAe,CAAC,IAAI,EAAE;AAC1B,QAAQ,IAAI,CAAC,IAAI;AACjB,YAAY;AACZ,QAAQ,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC3L;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;AACpD;AACA,IAAI,uBAAuB,CAAC,OAAO,EAAE;AACrC,QAAQ,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC1I;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,uOAAuO,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC5wB;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AAClH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AACrH,wBAAwB,KAAK,EAAE,aAAa;AAC5C,wBAAwB,gBAAgB,EAAE,UAAU;AACpD,qBAAqB,EAAE,OAAO,EAAE;AAChC,wBAAwB,SAAS;AACjC,qBAAqB,EAAE,QAAQ,EAAE,uOAAuO,EAAE;AAC1Q,SAAS,CAAC,EAAE,CAAC;AACb,SAAS,qBAAqB,CAAC,KAAK,EAAE;AACtC,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;AAC7B,QAAQ,OAAO,SAAS;AACxB;AACA,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;AACzB,IAAI,IAAI,KAAK,EAAE;AACf,QAAQ,OAAO,KAAK,GAAG,IAAI;AAC3B;AACA,IAAI,OAAO,SAAS;AACpB;AACA,SAAS,8BAA8B,CAAC,GAAG,EAAE;AAC7C,IAAI,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC;AACxD,IAAI,IAAI,KAAK,EAAE;AACf,QAAQ,IAAI,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC;AAChC,QAAQ,IAAI,SAAS,KAAK,KAAK,EAAE;AACjC,YAAY,SAAS,GAAG,MAAM;AAC9B;AACA,QAAQ,OAAO,SAAS;AACxB;AACA,IAAI,OAAO,EAAE;AACb;AACA,SAAS,mBAAmB,CAAC,QAAQ,EAAE;AACvC,IAAI,IAAI,MAAM;AACd,IAAI,QAAQ,QAAQ;AACpB,QAAQ,KAAK,IAAI;AACjB,QAAQ,KAAK,YAAY;AACzB,YAAY,MAAM,GAAG,YAAY;AACjC,YAAY;AACZ,QAAQ,KAAK,IAAI;AACjB,QAAQ,KAAK,YAAY;AACzB,QAAQ,KAAK,YAAY;AACzB,YAAY,MAAM,GAAG,YAAY;AACjC,YAAY;AACZ,QAAQ,KAAK,MAAM;AACnB,QAAQ,KAAK,cAAc;AAC3B,YAAY,MAAM,GAAG,cAAc;AACnC,YAAY;AACZ,QAAQ;AACR,YAAY,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC;AAC9C;AACA,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AAC/C,QAAQ,MAAM,GAAG,MAAM;AACvB;AACA,IAAI,OAAO,MAAM;AACjB;AACA,SAAS,eAAe,CAAC,QAAQ,EAAE;AACnC,IAAI,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC;AAC/C,IAAI,OAAO,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,QAAQ;AACpD;;AC9GO,MAAM,kCAAkC,CAAC;AAChD,IAAI,OAAO;AACX,IAAI,WAAW,CAAC,OAAO,EAAE;AACzB,QAAQ,IAAI,CAAC,OAAO,GAAG,OAAO;AAC9B;AACA,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS;AACtC,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACrC,YAAY,OAAO,EAAE,CAAC,OAAO,CAAC;AAC9B;AACA,QAAQ,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK;AAC3E,YAAY,OAAO,CAAC,iDAAiD,EAAE,OAAO,CAAC,cAAc,CAAC;AAC9F,SAAS,CAAC;AACV,QAAQ,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC;AACzD,QAAQ,IAAI,OAAO,EAAE;AACrB,YAAY,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC;AACrD;AACA,QAAQ,OAAO,EAAE,CAAC,OAAO,CAAC;AAC1B;AACA,IAAI,aAAa,CAAC,OAAO,EAAE;AAC3B,QAAQ,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;AACpD,YAAY,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC;AAC7F,YAAY,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AAClD,gBAAgB,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;AAC1D,oBAAoB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AAC7C;AACA,aAAa,CAAC;AACd;AACA,aAAa;AACb,YAAY,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC;AACjG;AACA;AACA,IAAI,gBAAgB,CAAC,OAAO,EAAE;AAC9B,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK;AAC3D;AACA,IAAI,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,GAAG,KAAK,EAAE;AACrD,QAAQ,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AACtD,QAAQ,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACpC,QAAQ,OAAO,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;AAC7F;AACA,IAAI,aAAa,CAAC,KAAK,EAAE;AACzB,QAAQ,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;AAClC;AACA;AACA,MAAM,WAAW,GAAG,mBAAmB;;AC7C3B,MAAC,eAAe,GAAG;AAC/B,IAAI,IAAI,EAAE,WAAW;AACrB,IAAI,MAAM,EAAE;AACZ,QAAQ,mBAAmB,EAAE,aAAa;AAC1C,QAAQ,mBAAmB,EAAE,6BAA6B;AAC1D,KAAK;AACL,IAAI,QAAQ,EAAE;AACd,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,SAAS,EAAE,gCAAgC,EAAE,gBAAgB,CAAC;AAClF,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,sBAAsB;AAClD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,UAAU,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,mBAAmB,CAAC;AACpI,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,qBAAqB;AACjD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;AAC5C,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,kBAAkB;AAC9C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,6BAA6B;AAChD,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,qBAAqB;AACjD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,iBAAiB;AACpC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,kBAAkB;AAC9C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,SAAS;AAC5B,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,sBAAsB;AAClD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC;AAC9C,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,sBAAsB;AAClD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,0BAA0B,EAAE,yBAAyB,EAAE,mBAAmB,CAAC;AAC/F,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,qBAAqB;AACjD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,QAAQ,EAAE,+BAA+B,EAAE,4CAA4C,CAAC;AAC5G,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,qBAAqB;AACjD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,SAAS;AAC5B,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,oBAAoB;AACvC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,UAAU;AAC7B,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,gBAAgB;AACnC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE;AACnB,gBAAgB,gBAAgB;AAChC,gBAAgB,oBAAoB;AACpC,gBAAgB,iBAAiB;AACjC,gBAAgB,uBAAuB;AACvC,aAAa;AACb,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,QAAQ;AACnC,gBAAgB,UAAU,EAAE,iBAAiB;AAC7C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,iBAAiB;AACpC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,kBAAkB;AAC7C,gBAAgB,UAAU,EAAE,yBAAyB;AACrD,gBAAgB,UAAU,EAAE,sBAAsB;AAClD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,eAAe;AAClC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,iBAAiB;AAC7C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,iBAAiB;AACpC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;AACrD,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,4BAA4B;AACxD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE;AACnB,gBAAgB,+BAA+B;AAC/C,gBAAgB,yCAAyC;AACzD,gBAAgB,oCAAoC;AACpD,gBAAgB,kDAAkD;AAClE,aAAa;AACb,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,4BAA4B;AACxD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,yCAAyC;AAC5D,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,MAAM;AACjC,gBAAgB,UAAU,EAAE,yBAAyB;AACrD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,uBAAuB,CAAC;AACpF,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,4CAA4C;AAC/D,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;AACnE,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,MAAM;AACjC,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,cAAc;AACjC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,yBAAyB;AACrD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,eAAe;AAClC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,QAAQ;AACnC,gBAAgB,UAAU,EAAE,qBAAqB;AACjD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,aAAa;AAChC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,MAAM;AACjC,gBAAgB,UAAU,EAAE,qBAAqB;AACjD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,kBAAkB;AACrC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,WAAW;AACtC,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,sBAAsB;AACzC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,eAAe;AAC1C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,mBAAmB;AACtC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,gBAAgB,EAAE,4BAA4B,EAAE,gCAAgC,CAAC;AACrG,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,iBAAiB;AAC7C,gBAAgB,UAAU,EAAE,iBAAiB;AAC7C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,iBAAiB,EAAE,0BAA0B,EAAE,iCAAiC,CAAC;AACrG,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,kBAAkB;AAC9C,gBAAgB,UAAU,EAAE,yBAAyB;AACrD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,gBAAgB,EAAE,gCAAgC,CAAC;AACvE,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,kBAAkB;AAC9C,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;AACzD,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,iBAAiB;AACpC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,MAAM;AACjC,gBAAgB,UAAU,EAAE,wBAAwB;AACpD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,kBAAkB;AACrC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,gBAAgB;AACnC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,MAAM;AACjC,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,aAAa;AAChC,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,uBAAuB;AACnD,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE;AACnB,gBAAgB,wBAAwB;AACxC,gBAAgB,0BAA0B;AAC1C,gBAAgB,0BAA0B;AAC1C,gBAAgB,2BAA2B;AAC3C,gBAAgB,0BAA0B;AAC1C,gBAAgB,0BAA0B;AAC1C,aAAa;AACb,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,eAAe;AAC3C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,8BAA8B;AACjD,YAAY,QAAQ,EAAE;AACtB,gBAAgB,UAAU,EAAE,iBAAiB;AAC7C,aAAa;AACb,SAAS;AACT,QAAQ;AACR,YAAY,KAAK,EAAE,CAAC,+BAA+B,EAAE,mBAAmB,CAAC;AACzE,YAAY,QAAQ,EAAE;AACtB,gBAAgB,SAAS,EAAE,WAAW;AACtC,gBAAgB,UAAU,EAAE,4BAA4B;AACxD,aAAa;AACb,SAAS;AACT,KAAK;AACL;;ACvRY,MAAC,mBAAmB,GAAG;AACnC,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,cAAc;AAClB,IAAI,YAAY;AAChB,IAAI,OAAO;AACX,IAAI,MAAM;AACV,IAAI,MAAM;AACV,IAAI,KAAK;AACT,IAAI,MAAM;AACV,IAAI,UAAU;AACd,IAAI,MAAM;AACV;;ACHO,MAAM,gBAAgB,CAAC;AAC9B;AACA;AACA;AACA;AACA,IAAI,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC5C,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,aAAa,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AACxI,IAAI,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;AACtC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC9B,YAAY,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC;AAC5E,YAAY,OAAO,EAAE,CAAC,OAAO,CAAC;AAC9B;AACA,QAAQ,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,KAAK;AACjI,YAAY,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,GAAG,CAAC;AACzE,YAAY,OAAO,EAAE,CAAC,OAAO,CAAC;AAC9B,SAAS,CAAC,CAAC;AACX;AACA,IAAI,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;AAChD,QAAQ,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AACzH;AACA,IAAI,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE;AACrD,QAAQ,OAAO,IAAI,UAAU,CAAC,CAAC,QAAQ,KAAK;AAC5C,YAAY,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;AACnE,YAAY,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;AAC3H,YAAY,qBAAqB,CAAC,MAAM;AACxC,gBAAgB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;AACtC,gBAAgB,QAAQ,CAAC,QAAQ,EAAE;AACnC,aAAa,CAAC;AACd,SAAS,CAAC;AACV;AACA,IAAI,gBAAgB,CAAC,IAAI,EAAE;AAC3B,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;AAChF;AACA,IAAI,YAAY,CAAC,OAAO,EAAE;AAC1B,QAAQ,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,kCAAkC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACjH;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC3K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAClJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;AAC1H,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE,MAAM;AACtC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACjDN,MAAM,SAAS,CAAC;AACvB,IAAI,IAAI,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACpE,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrE,IAAI,aAAa,GAAG,oBAAoB;AACxC,IAAI,QAAQ,CAAC,KAAK,EAAE;AACpB,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AAC7B;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACnK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,cAAc,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,0rBAA0rB,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACvoC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACnH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AACtH,wBAAwB,KAAK,EAAE,cAAc;AAC7C,qBAAqB,EAAE,OAAO,EAAE;AAChC,wBAAwB,iBAAiB;AACzC,wBAAwB,QAAQ;AAChC,qBAAqB,EAAE,QAAQ,EAAE,0rBAA0rB,EAAE;AAC7tB,SAAS,CAAC,EAAE,CAAC;;;;;;;ACvBN,MAAM,eAAe,CAAC;AAC7B;;ACCO,MAAM,mBAAmB,CAAC;AACjC,IAAI,MAAM,GAAG,EAAE;AACf,IAAI,cAAc,GAAG,IAAI;AACzB,IAAI,GAAG,CAAC,IAAI,EAAE;AACd,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;AAC9B;AACA,IAAI,MAAM,CAAC,IAAI,EAAE;AACjB,QAAQ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,KAAK,IAAI,CAAC;AACrE;AACA,IAAI,UAAU,CAAC,IAAI,EAAE;AACrB,QAAQ,IAAI,IAAI,EAAE;AAClB,YAAY,IAAI,CAAC,iBAAiB,EAAE;AACpC;AACA,aAAa;AACb,YAAY,IAAI,CAAC,mBAAmB,EAAE;AACtC;AACA;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,EAAE;AACvC,QAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AACnC,YAAY,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,aAAa;AAC7D,YAAY,IAAI,aAAa,EAAE;AAC/B,gBAAgB,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;AACxE,gBAAgB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC;AACrE;AACA,SAAS,CAAC;AACV;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,OAAO,IAAI,CAAC;AACpB,aAAa,KAAK;AAClB,aAAa,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK;AAC5B,YAAY,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,gBAAgB;AAC7E,YAAY,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,gBAAgB;AAC7E,YAAY,OAAO,KAAK,GAAG,KAAK;AAChC,SAAS,CAAC;AACV;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAChC,QAAQ,IAAI,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AAC9C,YAAY,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,aAAa;AACtD,YAAY,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;AAC9C,SAAS,CAAC;AACV;AACA,IAAI,mBAAmB,GAAG;AAC1B,QAAQ,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,aAAa,KAAK;AACzE,YAAY,gBAAgB,CAAC,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC/E,SAAS,CAAC;AACV;AACA,IAAI,QAAQ,CAAC,SAAS,EAAE,OAAO,EAAE;AACjC,QAAQ,IAAI,CAAC,sBAAsB,EAAE;AACrC,QAAQ,IAAI,SAAS,KAAK,OAAO,EAAE;AACnC,YAAY;AACZ;AACA,QAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AACnC,YAAY,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE;AAC3C,gBAAgB,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM;AACpD;AACA,SAAS,CAAC;AACV;AACA,IAAI,sBAAsB,GAAG;AAC7B,QAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AACnC,YAAY,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO;AACjD,SAAS,CAAC;AACV;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC9K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AACjI;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,UAAU,EAAE,CAAC;AAC7H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC9DN,MAAM,WAAW,SAAS,eAAe,CAAC;AACjD,IAAI,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC;AAC1C,IAAI,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC9C,IAAI,qBAAqB,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACvD,IAAI,aAAa,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,IAAI;AACR,IAAI,KAAK;AACT,IAAI,SAAS;AACb,IAAI,GAAG,GAAG,MAAM,CAAC,SAAS,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACzE,IAAI,GAAG;AACP,IAAI,IAAI,WAAW,GAAG;AACtB,QAAQ,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa;AACnD;AACA,IAAI,IAAI,SAAS,GAAG;AACpB,QAAQ,OAAO,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;AACxD;AACA,IAAI,IAAI,IAAI,GAAG;AACf,QAAQ,OAAO,IAAI,CAAC,SAAS,EAAE,IAAI;AACnC;AACA,IAAI,UAAU,GAAG;AACjB,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;AAC5E,QAAQ,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;AACjF,QAAQ,IAAI,CAAC,wBAAwB,EAAE;AACvC;AACA,IAAI,wBAAwB,GAAG;AAC/B,QAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;AACnI;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC;AAC5C;AACA,IAAI,mBAAmB,GAAG;AAC1B,QAAQ,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC;AACpF;AACA,IAAI,kBAAkB,CAAC,KAAK,EAAE;AAC9B,QAAQ,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;AAC5D;AACA,IAAI,YAAY,GAAG;AACnB,QAAQ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;AAC7H,QAAQ,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE;AACzB,YAAY,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;AAC/C;AACA;AACA,IAAI,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE;AACjC,QAAQ,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;AACzC,YAAY,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAClF;AACA,QAAQ,OAAO,IAAI;AACnB;AACA,IAAI,aAAa,GAAG;AACpB,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AAC/E;AACA,IAAI,eAAe,CAAC,IAAI,EAAE;AAC1B,QAAQ,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;AAChE;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC;AAC/C;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACvK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,6WAA6W,EAAE,MAAM,EAAE,CAAC,w4BAAw4B,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC/kD;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AACrH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AAC3H,wBAAwB,aAAa,EAAE,KAAK;AAC5C,wBAAwB,cAAc,EAAE,iBAAiB;AACzD,qBAAqB,EAAE,QAAQ,EAAE,6WAA6W,EAAE,MAAM,EAAE,CAAC,w4BAAw4B,CAAC,EAAE;AACpyC,SAAS,CAAC,EAAE,CAAC;;;;;;;ACvEN,MAAM,gBAAgB,CAAC;AAC9B,IAAI,OAAO,GAAG,KAAK;AACnB,IAAI,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC9C,IAAI,qBAAqB,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACvD,IAAI,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1E,IAAI,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC9F,IAAI,mBAAmB,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrG,IAAI,UAAU,GAAG;AACjB,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;AACrD;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;AACzC;AACA,IAAI,oBAAoB,GAAG;AAC3B,QAAQ,MAAM,OAAO,GAAG,EAAE;AAC1B,QAAQ,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AAC9D,YAAY,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK;AAC1C,gBAAgB,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE;AACpF,oBAAoB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAC/D;AACA,aAAa,CAAC;AACd,SAAS,CAAC;AACV,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AAChC,YAAY,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;AACzC;AACA,QAAQ,OAAO,OAAO;AACtB;AACA,IAAI,cAAc,CAAC,GAAG,EAAE;AACxB,QAAQ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;AAClC,QAAQ,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;AAC9D;AACA,IAAI,kBAAkB,CAAC,KAAK,EAAE;AAC9B,QAAQ,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;AAC3C,QAAQ,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,KAAK,CAAC;AACpD;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC1K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,idAAid,EAAE,MAAM,EAAE,CAAC,+HAA+H,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACppC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;AAC1H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AACtI,wBAAwB,kBAAkB;AAC1C,wBAAwB,qBAAqB;AAC7C,wBAAwB,aAAa;AACrC,qBAAqB,EAAE,QAAQ,EAAE,idAAid,EAAE,MAAM,EAAE,CAAC,+HAA+H,CAAC,EAAE;AAC/nB,SAAS,CAAC,EAAE,CAAC;;;;;;;AC9CN,MAAM,YAAY,CAAC;AAC1B,IAAI,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC;AACxC,IAAI,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;AAC/G,IAAI,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1E,IAAI,GAAG,GAAG,QAAQ,CAAC,MAAM;AACzB,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE;AAC1C,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAClC,QAAQ,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;AACzF,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACpD,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACtK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,gjBAAgjB,EAAE,MAAM,EAAE,CAAC,yiCAAyiC,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC/8D;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AACtH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,gjBAAgjB,EAAE,MAAM,EAAE,CAAC,yiCAAyiC,CAAC,EAAE;AACpuD,SAAS,CAAC,EAAE,CAAC;;ACnBD,MAAC,aAAa,GAAG,IAAI,cAAc,CAAC,eAAe;;ACGxD,MAAM,QAAQ,CAAC;AACtB,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACzF,IAAI,KAAK,GAAG,QAAQ,CAAC,MAAM;AAC3B,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAClC,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;AAC1C,QAAQ,OAAO,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK;AACvF,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACtD,IAAI,IAAI,GAAG,QAAQ,CAAC,MAAM;AAC1B,QAAQ,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,KAAK;AACrD,YAAY,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACtD,YAAY,OAAO,MAAM;AACzB,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC;AACrB,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrD,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAChF,IAAI,QAAQ,CAAC,GAAG,EAAE;AAClB,QAAQ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;AAC5D;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,0UAA0U,EAAE,MAAM,EAAE,CAAC,sPAAsP,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACn5B;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AAClH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AACvH,wBAAwB,YAAY;AACpC,qBAAqB,EAAE,QAAQ,EAAE,0UAA0U,EAAE,MAAM,EAAE,CAAC,sPAAsP,CAAC,EAAE;AAC/mB,SAAS,CAAC,EAAE,CAAC;;;;;;;AC7BN,SAAS,eAAe,CAAC,aAAa,EAAE;AAC/C,IAAI,OAAO;AACX,QAAQ,aAAa;AACrB,KAAK;AACL;;ACDY,MAAC,mCAAmC,GAAG;AACnD,IAAI,sBAAsB;AAC1B,IAAI,mBAAmB;AACvB,IAAI,sBAAsB;AAC1B,IAAI,uBAAuB;AAC3B,IAAI,wBAAwB;AAC5B;;ACTO,MAAM,wBAAwB,CAAC;AACtC,IAAI,IAAI;AACR,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,0BAA0B,CAAC;AAC5D,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB;AACA;;ACAG,IAAC,iBAAiB,GAAG,MAAM,iBAAiB,CAAC;AAChD,IAAI,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC9C,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,MAAM;AACrD,YAAY,GAAG,IAAI;AACnB,YAAY,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;AACxC,gBAAgB,GAAG,CAAC;AACpB,gBAAgB,QAAQ,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI;AACjD,aAAa,CAAC,CAAC;AACf,SAAS,CAAC,CAAC;AACX;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC5K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC/H;AACA,iBAAiB,GAAG,UAAU,CAAC;AAC/B,IAAI,UAAU,CAAC,wBAAwB;AACvC,CAAC,EAAE,iBAAiB,CAAC;AAErB,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;AAC3H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;AC1BN,MAAM,8BAA8B,CAAC;AAC5C,IAAI,WAAW;AACf,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,gCAAgC,CAAC;AAClE,IAAI,WAAW,CAAC,WAAW,EAAE;AAC7B,QAAQ,IAAI,CAAC,WAAW,GAAG,WAAW;AACtC;AACA;;ACNO,MAAM,kBAAkB,CAAC;AAChC,IAAI,IAAI;AACR,IAAI,IAAI;AACR,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE;AAC5B,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB;AACA;;ACPO,MAAM,sCAAsC,CAAC;AACpD,IAAI,OAAO;AACX,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,wCAAwC,CAAC;AAC1E,IAAI,WAAW,CAAC,OAAO,EAAE;AACzB,QAAQ,IAAI,CAAC,OAAO,GAAG,OAAO;AAC9B;AACA;;ACAG,IAAC,+BAA+B,GAAG,MAAM,+BAA+B,CAAC;AAC5E,IAAI,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AACvD,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO;AACrC,QAAQ,IAAI,MAAM,GAAG,CAAC;AACtB,QAAQ,OAAO,OAAO,KAAK,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE;AAClE,YAAY,IAAI,CAAC,OAAO;AACxB,gBAAgB,OAAO,GAAG;AAC1B,YAAY,MAAM,IAAI,OAAO,CAAC,SAAS;AACvC,YAAY,OAAO,GAAG,OAAO,CAAC,YAAY;AAC1C;AACA,QAAQ,OAAO,MAAM;AACrB;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC1L,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,CAAC;AAC7I;AACA,+BAA+B,GAAG,UAAU,CAAC;AAC7C,IAAI,UAAU,CAAC,sCAAsC;AACrD,CAAC,EAAE,+BAA+B,CAAC;AAEnC,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,UAAU,EAAE,CAAC;AACzI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACpBV,IAAC,6CAA6C,GAAG,MAAM,6CAA6C,CAAC;AACxG,IAAI,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC1C,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC1C,IAAI,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AACvD,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,MAAM,GAAG;AACb,QAAQ,IAAI,MAAM;AAClB,QAAQ,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE;AAChE,QAAQ,MAAM,uBAAuB,GAAG,IAAI,CAAC,8BAA8B,EAAE;AAC7E,QAAQ,IAAI,uBAAuB,CAAC,MAAM,EAAE;AAC5C,YAAY,IAAI,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,EAAE;AAC5D,gBAAgB,MAAM,GAAG,uBAAuB,CAAC,uBAAuB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI;AACzF;AACA,iBAAiB;AACjB,gBAAgB,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;AACpG;AACA;AACA,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACnE;AACA,IAAI,sBAAsB,GAAG;AAC7B,QAAQ,OAAO,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE;AACxF;AACA,IAAI,gBAAgB,GAAG;AACvB,QAAQ,OAAO,QAAQ,CAAC,IAAI,CAAC;AAC7B,aAAa,gBAAgB,CAAC,IAAI,CAAC,WAAW;AAC9C,aAAa,gBAAgB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AACrD;AACA,IAAI,8BAA8B,GAAG;AACrC,QAAQ,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK;AACxD,YAAY,OAAO;AACnB,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI;AAC5B,gBAAgB,GAAG,EAAE,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC,OAAO,CAAC;AACrE,aAAa;AACb,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAC9C;AACA,IAAI,gCAAgC,CAAC,OAAO,EAAE;AAC9C,QAAQ,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,sCAAsC,CAAC,OAAO,CAAC,CAAC;AACzF;AACA,IAAI,iBAAiB,CAAC,kBAAkB,EAAE;AAC1C,QAAQ,OAAO,IAAI,CAAC,GAAG,CAAC,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC;AACnL;AACA,IAAI,yBAAyB,CAAC,kBAAkB,EAAE,uBAAuB,EAAE;AAC3E,QAAQ,IAAI,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,IAAI;AACpD,QAAQ,KAAK,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,uBAAuB,EAAE;AAC7D,YAAY,IAAI,GAAG,GAAG,kBAAkB;AACxC,gBAAgB;AAChB,YAAY,MAAM,GAAG,IAAI;AACzB;AACA,QAAQ,OAAO,MAAM;AACrB;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,6CAA6C,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACxM,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,6CAA6C,EAAE,CAAC;AAC3J;AACA,6CAA6C,GAAG,UAAU,CAAC;AAC3D,IAAI,UAAU,CAAC,oDAAoD;AACnE,CAAC,EAAE,6CAA6C,CAAC;AAEjD,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,6CAA6C,EAAE,UAAU,EAAE,CAAC;AACvJ,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACpEN,MAAM,oDAAoD,CAAC;AAClE,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,sDAAsD,CAAC;AACxF;;ACMG,IAAC,uBAAuB,GAAG,MAAM,uBAAuB,CAAC;AAC5D,IAAI,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC9C,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,MAAM,IAAI,GAAG,EAAE;AACvB,QAAQ,MAAM,IAAI,GAAG,EAAE;AACvB,QAAQ,MAAM,KAAK,GAAG,EAAE;AACxB,QAAQ,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK;AAC9H,YAAY,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;AACrD,YAAY,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC;AAC1D,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;AAC9B,SAAS,CAAC;AACV,QAAQ,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC1E,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,oDAAoD,EAAE,CAAC;AACzF;AACA,IAAI,uBAAuB,CAAC,aAAa,EAAE,QAAQ,EAAE;AACrD,QAAQ,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAI,QAAQ,CAAC,GAAG,GAAG,CAAC,EAAE;AACjE,YAAY,QAAQ,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;AAC3C;AACA,QAAQ,MAAM,SAAS,GAAG,EAAE;AAC5B,QAAQ,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;AAC7D,YAAY,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACnC;AACA,QAAQ,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/E;AACA,IAAI,WAAW,CAAC,OAAO,EAAE;AACzB,QAAQ,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;AACtD,QAAQ,OAAO;AACf,YAAY,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;AAC9C,YAAY,KAAK,EAAE,OAAO,CAAC,SAAS;AACpC,YAAY,OAAO;AACnB,YAAY,QAAQ,EAAE,EAAE;AACxB,SAAS;AACT;AACA,IAAI,mBAAmB,CAAC,OAAO,EAAE;AACjC,QAAQ,OAAO,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;AACnE;AACA,IAAI,SAAS,CAAC,OAAO,EAAE;AACvB,QAAQ,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACrD;AACA,IAAI,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE;AAC9C,QAAQ,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;AACvH,YAAY,KAAK,CAAC,GAAG,EAAE;AACvB;AACA,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AAChC,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;AAC9B;AACA,aAAa;AACb,YAAY,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;AAC1D;AACA,QAAQ,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;AAC3B;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAClL,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AACrI;AACA,uBAAuB,GAAG,UAAU,CAAC;AACrC,IAAI,UAAU,CAAC,8BAA8B;AAC7C,CAAC,EAAE,uBAAuB,CAAC;AAE3B,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,CAAC;AACjI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACrEN,MAAM,iCAAiC,CAAC;AAC/C,IAAI,IAAI;AACR,IAAI,OAAO,YAAY,GAAG,MAAM,CAAC,mCAAmC,CAAC;AACrE,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB;AACA;;ACCG,IAAC,0BAA0B,GAAG,MAAM,0BAA0B,CAAC;AAClE,IAAI,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AACvD,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC1C,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW;AAC/D,QAAQ,SAAS,CAAC,mBAAmB,GAAG,IAAI;AAC5C,QAAQ,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,QAAQ,CAAC;AACvD,YAAY,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE;AACpG,YAAY,QAAQ,EAAE,QAAQ;AAC9B,SAAS,CAAC;AACV;AACA,IAAI,gBAAgB,GAAG;AACvB,QAAQ,OAAO,QAAQ,CAAC,IAAI,CAAC;AAC7B,aAAa,gBAAgB,CAAC,IAAI,CAAC,WAAW;AAC9C,aAAa,gBAAgB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AACrD;AACA,IAAI,mBAAmB,CAAC,IAAI,EAAE;AAC9B,QAAQ,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC;AAClF,QAAQ,IAAI,CAAC,OAAO,EAAE;AACtB,YAAY,MAAM,IAAI,KAAK,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AACxD;AACA,QAAQ,OAAO,OAAO;AACtB;AACA,IAAI,YAAY,CAAC,OAAO,EAAE;AAC1B,QAAQ,OAAO,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;AAC9F;AACA,IAAI,0BAA0B,CAAC,OAAO,EAAE;AACxC,QAAQ,OAAO,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO;AAC5D;AACA,IAAI,kBAAkB,CAAC,OAAO,EAAE;AAChC,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,SAAS;AACvH;AACA,IAAI,cAAc,CAAC,OAAO,EAAE;AAC5B,QAAQ,OAAO,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAAG;AAClD;AACA,IAAI,gBAAgB,GAAG;AACvB,QAAQ,OAAO,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,GAAG;AAChF;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACrL,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC;AACxI;AACA,0BAA0B,GAAG,UAAU,CAAC;AACxC,IAAI,UAAU,CAAC,iCAAiC;AAChD,CAAC,EAAE,0BAA0B,CAAC;AAE9B,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,UAAU,EAAE,CAAC;AACpI,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACrDN,MAAM,4BAA4B,CAAC;AAC1C,IAAI,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1E,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACtL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,4BAA4B,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,8BAA8B,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,kQAAkQ,EAAE,MAAM,EAAE,CAAC,wTAAwT,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,4BAA4B,EAAE,QAAQ,EAAE,8BAA8B,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,OAAO,EAAE,CAAC;AACxlC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,UAAU,EAAE,CAAC;AACtI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,8BAA8B,EAAE,eAAe,EAAE,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,kQAAkQ,EAAE,MAAM,EAAE,CAAC,wTAAwT,CAAC,EAAE;AACrtB,SAAS,CAAC,EAAE,CAAC;;ACTD,MAAC,iCAAiC,GAAG;AACjD,IAAI,iBAAiB;AACrB,IAAI,uBAAuB;AAC3B,IAAI,0BAA0B;AAC9B,IAAI,+BAA+B;AACnC,IAAI,6CAA6C;AACjD;;ACAO,MAAM,cAAc,CAAC;AAC5B,IAAI,YAAY,GAAG,MAAM,EAAE,UAAU,EAAE,CAAC,aAAa;AACrD,IAAI,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC9C,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,OAAO,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5G,IAAI,oBAAoB,GAAG,QAAQ,CAAC,MAAM;AAC1C,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC5E,QAAQ,OAAO,SAAS,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACpE,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,sBAAsB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrE,IAAI,KAAK,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC,iBAAiB,EAAE,CAAC,KAAK;AAChE,IAAI,wBAAwB,CAAC,WAAW,EAAE;AAC1C,QAAQ,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC;AACpE,QAAQ,OAAO,CAAC,WAAW,GAAG,CAAC,IAAI,UAAU,GAAG,UAAU,GAAG,CAAC;AAC9D;AACA,IAAI,iBAAiB,CAAC,OAAO,EAAE;AAC/B,QAAQ,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,kCAAkC,CAAC,CAAC;AACpH;AACA,IAAI,MAAM,CAAC,KAAK,EAAE;AAClB,QAAQ,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM;AACnC,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,GAAG,EAAE;AACpC,YAAY,KAAK,CAAC,cAAc,EAAE;AAClC,YAAY,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AACvD;AACA;AACA,IAAI,SAAS,CAAC,IAAI,EAAE;AACpB,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC;AACjE,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,iCAAiC,CAAC,IAAI,CAAC,CAAC;AAC1E;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACxK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,6PAA6P,EAAE,MAAM,EAAE,CAAC,0pBAA0pB,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,4BAA4B,EAAE,QAAQ,EAAE,8BAA8B,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAC30C;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACxH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,4BAA4B,CAAC,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,6PAA6P,EAAE,MAAM,EAAE,CAAC,0pBAA0pB,CAAC,EAAE;AAC9kC,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC;AACvC,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;AAC1C,aAAa,CAAC,EAAE,EAAE,CAAC;;AC5CP,MAAC,oBAAoB,GAAG,IAAI,cAAc,CAAC,sBAAsB;;ACUtE,MAAM,mBAAmB,CAAC;AACjC,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,cAAc,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC,cAAc;AACvE,IAAI,WAAW,GAAG,MAAM,EAAE,UAAU,EAAE,CAAC,aAAa;AACpD,IAAI,QAAQ,GAAG;AACf,QAAQ,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;AAC/D,aAAa,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,KAAK;AACxE,YAAY,MAAM,kBAAkB,GAAG,KAAK,EAAE,MAAM,EAAE,mBAAmB,IAAI,KAAK;AAClF,YAAY,IAAI,CAAC,WAAW,CAAC,mBAAmB,GAAG,KAAK;AACxD,YAAY,OAAO,CAAC,kBAAkB;AACtC,SAAS,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;AAChD,aAAa,SAAS,CAAC,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;AAC9D;AACA,IAAI,yBAAyB,GAAG;AAChC,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,oDAAoD,EAAE,CAAC;AACzF;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC7K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,SAAS,EAAE;AACjL,YAAY;AACZ,gBAAgB,OAAO,EAAE,oBAAoB;AAC7C,gBAAgB,WAAW,EAAE,UAAU,CAAC,MAAM,mBAAmB,CAAC;AAClE,aAAa;AACb,YAAY,OAAO;AACnB,YAAY,GAAG,mCAAmC;AAClD,YAAY,GAAG,iCAAiC;AAChD,YAAY,eAAe;AAC3B,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,sFAAsF,EAAE,MAAM,EAAE,CAAC,2GAA2G,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AAClY;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,UAAU,EAAE,CAAC;AAC7H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;AACpF,wBAAwB;AACxB,4BAA4B,OAAO,EAAE,oBAAoB;AACzD,4BAA4B,WAAW,EAAE,UAAU,CAAC,MAAM,mBAAmB,CAAC;AAC9E,yBAAyB;AACzB,wBAAwB,OAAO;AAC/B,wBAAwB,GAAG,mCAAmC;AAC9D,wBAAwB,GAAG,iCAAiC;AAC5D,wBAAwB,eAAe;AACvC,qBAAqB,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE;AACjF,wBAAwB,cAAc;AACtC,qBAAqB,EAAE,QAAQ,EAAE,sFAAsF,EAAE,MAAM,EAAE,CAAC,2GAA2G,CAAC,EAAE;AAChP,SAAS,CAAC,EAAE,CAAC;;AC3CN,MAAM,gBAAgB,CAAC;AAC9B,IAAI,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1E,IAAI,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,aAAa;AACnD,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChC,IAAI,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC5C,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,kBAAkB,GAAG,MAAM,CAAC,sBAAsB,CAAC;AACvD,IAAI,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC9B,IAAI,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAChD,IAAI,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC3E,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,iBAAiB,EAAE;AAChC;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,MAAM,CAAC,SAAS,IAAI;AAC5B,YAAY,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE;AACrC,YAAY,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI;AAChD,gBAAgB;AAChB,YAAY,IAAI,CAAC,YAAY,EAAE;AAC/B,YAAY,MAAM,GAAG,GAAG,IAAI,CAAC,uBAAuB,EAAE;AACtD,YAAY,SAAS,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;AAC1C,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;AACxC;AACA,IAAI,YAAY,GAAG;AACnB,QAAQ,IAAI,CAAC,oBAAoB,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC7E;AACA,IAAI,uBAAuB,GAAG;AAC9B,QAAQ,OAAO,eAAe,CAAC,MAAM;AACrC,YAAY,OAAO,SAAS,CAAC,MAAM;AACnC,gBAAgB,IAAI,CAAC,wBAAwB,EAAE;AAC/C,gBAAgB,IAAI,CAAC,eAAe,EAAE;AACtC,aAAa,CAAC;AACd,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;AACxC;AACA,IAAI,wBAAwB,GAAG;AAC/B,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,+BAA+B,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAC7G;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,8BAA8B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACpF;AACA,IAAI,gBAAgB,CAAC,KAAK,EAAE;AAC5B,QAAQ,IAAI,4BAA4B,EAAE,CAAC,MAAM,CAAC,IAAI,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACtH;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;AACzC;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC1K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,oFAAoF,EAAE,MAAM,EAAE,CAAC,iMAAiM,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACv0B;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;AAC1H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE;AACxJ,wBAAwB,KAAK,EAAE,UAAU;AACzC,qBAAqB,EAAE,QAAQ,EAAE,oFAAoF,EAAE,MAAM,EAAE,CAAC,iMAAiM,CAAC,EAAE;AACpU,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,gBAAgB,EAAE,CAAC;AACjD,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;AAC1C,aAAa,CAAC,EAAE,EAAE,CAAC;;AC7DZ,MAAM,cAAc,CAAC;AAC5B,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,IAAI,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC;AAC5C,IAAI,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC;AACvC,IAAI,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC9C,IAAI,eAAe,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,MAAM;AAChE,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC;AAChN,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI;AACvD,QAAQ,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC;AAC3D,QAAQ,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI;AACnE,YAAY,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AAC9E,YAAY,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;AACjC,SAAS,CAAC,CAAC;AACX,KAAK,CAAC,CAAC,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;AACrC,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACxK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,0FAA0F,EAAE,MAAM,EAAE,CAAC,idAAid,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,CAAC;AACjgC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACxH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;AAC3H,wBAAwB,iBAAiB,EAAE,EAAE;AAC7C,wBAAwB,0BAA0B,EAAE,iBAAiB;AACrE,qBAAqB,EAAE,OAAO,EAAE;AAChC,wBAAwB,gBAAgB;AACxC,qBAAqB,EAAE,QAAQ,EAAE,0FAA0F,EAAE,MAAM,EAAE,CAAC,idAAid,CAAC,EAAE;AAC1lB,SAAS,CAAC,EAAE,CAAC;;;;;;;ACvBN,MAAM,aAAa,CAAC;AAC3B,IAAI,mBAAmB,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrG,IAAI,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO;AAC5C,IAAI,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;AACvC,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACpC,IAAI,YAAY,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC1D,IAAI,aAAa,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,IAAI,eAAe,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,aAAa,EAAE,CAAC,MAAM;AACxE,IAAI,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC3C,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAC7B,YAAY;AACZ;AACA,QAAQ,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE;AACxC,QAAQ,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE;AACvC,QAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;AAC7E,aAAa,SAAS,EAAE;AACxB;AACA,IAAI,kBAAkB,CAAC,KAAK,EAAE;AAC9B,QAAQ,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;AAC3C;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;AACnC;AACA;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACvK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE;AACpK,YAAY,kBAAkB;AAC9B,YAAY,YAAY;AACxB,YAAY;AACZ,gBAAgB,OAAO,EAAE,6BAA6B;AACtD,gBAAgB,WAAW,EAAE,kBAAkB;AAC/C,aAAa;AACb,YAAY;AACZ,gBAAgB,OAAO,EAAE,oBAAoB;AAC7C,gBAAgB,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1C,gBAAgB,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,aAAa,EAAE;AAC5D,aAAa;AACb,YAAY;AACZ,gBAAgB,OAAO,EAAE,6BAA6B;AACtD,gBAAgB,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1C,gBAAgB,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,SAAS,EAAE;AACxD,aAAa;AACb,YAAY;AACZ,gBAAgB,OAAO,EAAE,2BAA2B;AACpD,gBAAgB,WAAW,EAAE,aAAa;AAC1C,aAAa;AACb,YAAY;AACZ,gBAAgB,OAAO,EAAE,2BAA2B;AACpD,gBAAgB,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1C,gBAAgB,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,aAAa,EAAE;AAC5D,aAAa;AACb,YAAY;AACZ,gBAAgB,OAAO,EAAE,aAAa;AACtC,gBAAgB,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1C,gBAAgB,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,gBAAgB,EAAE;AAC/D,aAAa;AACb,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,kdAAkd,EAAE,MAAM,EAAE,CAAC,+tBAA+tB,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAAC,MAAM,CAAC,OAAO,uDAAkD,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;AACj1D;AACA,EAAE,CAAC,6BAA6B,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,CAAC,OAAO,uDAAkD,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE,eAAe,EAAE,oBAAoB,KAAK,EAAE,UAAU,EAAE,CAAC;AACnS,gBAAgB,IAAI,EAAE,SAAS;AAC/B,gBAAgB,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE;AAClI,4BAA4B,kBAAkB;AAC9C,4BAA4B,YAAY;AACxC,4BAA4B;AAC5B,gCAAgC,OAAO,EAAE,6BAA6B;AACtE,gCAAgC,WAAW,EAAE,kBAAkB;AAC/D,6BAA6B;AAC7B,4BAA4B;AAC5B,gCAAgC,OAAO,EAAE,oBAAoB;AAC7D,gCAAgC,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1D,gCAAgC,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,aAAa,EAAE;AAC5E,6BAA6B;AAC7B,4BAA4B;AAC5B,gCAAgC,OAAO,EAAE,6BAA6B;AACtE,gCAAgC,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1D,gCAAgC,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,SAAS,EAAE;AACxE,6BAA6B;AAC7B,4BAA4B;AAC5B,gCAAgC,OAAO,EAAE,2BAA2B;AACpE,gCAAgC,WAAW,EAAE,aAAa;AAC1D,6BAA6B;AAC7B,4BAA4B;AAC5B,gCAAgC,OAAO,EAAE,2BAA2B;AACpE,gCAAgC,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1D,gCAAgC,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,aAAa,EAAE;AAC5E,6BAA6B;AAC7B,4BAA4B;AAC5B,gCAAgC,OAAO,EAAE,aAAa;AACtD,gCAAgC,IAAI,EAAE,CAAC,kBAAkB,CAAC;AAC1D,gCAAgC,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,gBAAgB,EAAE;AAC/E,6BAA6B;AAC7B,yBAAyB,EAAE,OAAO,EAAE;AACpC,4BAA4B,wBAAwB;AACpD,4BAA4B,mBAAmB;AAC/C,4BAA4B,YAAY;AACxC,4BAA4B,eAAe;AAC3C,4BAA4B,oBAAoB;AAChD,yBAAyB,EAAE,QAAQ,EAAE,kdAAkd,EAAE,MAAM,EAAE,CAAC,+tBAA+tB,CAAC,EAAE;AACpuC,aAAa,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;;AC7GpD,MAAC,oBAAoB,GAAG;AACpC,IAAI;AACJ,QAAQ,IAAI,EAAE,EAAE;AAChB,QAAQ,aAAa,EAAE,MAAM,uDAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC;AACzE,QAAQ,QAAQ,EAAE;AAClB,YAAY;AACZ,gBAAgB,IAAI,EAAE,IAAI;AAC1B,gBAAgB,aAAa,EAAE,MAAM,uDAAsC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC;AACvG,aAAa;AACb,SAAS;AACT,KAAK;AACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACXO,SAAS,iBAAiB,CAAC,UAAU,EAAE;AAC9C,IAAI,OAAO;AACX,QAAQ,UAAU;AAClB,KAAK;AACL;;ACJO,SAAS,WAAW,CAAC,IAAI,EAAE;AAClC,IAAI,OAAO;AACX,QAAQ,IAAI;AACZ,KAAK;AACL;;ACJO,SAAS,kBAAkB,CAAC,OAAO,EAAE;AAC5C,IAAI,OAAO;AACX,QAAQ,OAAO;AACf,KAAK;AACL;;ACJO,SAAS,mBAAmB,CAAC,QAAQ,EAAE;AAC9C,IAAI,OAAO;AACX,QAAQ,QAAQ;AAChB,KAAK;AACL;;ACJO,SAAS,iBAAiB,CAAC,MAAM,EAAE;AAC1C,IAAI,OAAO;AACX,QAAQ,MAAM;AACd,KAAK;AACL;;ACHO,SAAS,eAAe,CAAC,aAAa,EAAE;AAC/C,IAAI,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,aAAa,CAAC,SAAS,CAAC;AAChE,IAAI,OAAO,CAAC;AACZ,YAAY,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,MAAM;AAC9D,SAAS,CAAC;AACV;AACY,MAAC,uBAAuB,GAAG,IAAI,cAAc,CAAC,yBAAyB;;ACP5E,SAAS,YAAY,CAAC,KAAK,EAAE;AACpC,IAAI,OAAO;AACX,QAAQ,KAAK;AACb,KAAK;AACL;;ACDO,MAAM,SAAS,CAAC;AACvB,IAAI,cAAc,GAAG,MAAM,CAAC,uBAAuB,CAAC;AACpD,IAAI,OAAO,GAAG;AACd,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI;AACvC;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK;AACxC;AACA,IAAI,OAAO,GAAG;AACd,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI;AACvC;AACA,IAAI,UAAU,GAAG;AACjB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,EAAE;AAChD;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,EAAE;AACjD;AACA,IAAI,cAAc,GAAG;AACrB,QAAQ,OAAO,EAAE;AACjB;AACA,IAAI,SAAS,GAAG;AAChB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM;AACzC;AACA,IAAI,sBAAsB,GAAG;AAC7B,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU;AAC7C;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK;AACxC;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AACpK,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AACvH;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACnH,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACjCN,MAAM,4BAA4B,CAAC;AAC1C,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE;AAC9C,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACtL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,4BAA4B,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,umBAAumB,EAAE,MAAM,EAAE,CAAC,kQAAkQ,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;AACr4C;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,UAAU,EAAE,CAAC;AACtI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;AACrF,wBAAwB,UAAU;AAClC,qBAAqB,EAAE,IAAI,EAAE;AAC7B,wBAAwB,sBAAsB,EAAE,mBAAmB;AACnE,qBAAqB,EAAE,QAAQ,EAAE,umBAAumB,EAAE,MAAM,EAAE,CAAC,kQAAkQ,CAAC,EAAE;AACx5B,SAAS,CAAC,EAAE,CAAC;;ACbN,MAAM,0BAA0B,CAAC;AACxC,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;AAC/C,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACpL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,0BAA0B,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,gOAAgO,EAAE,MAAM,EAAE,CAAC,wsBAAwsB,CAAC,EAAE,CAAC;AACjsC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,UAAU,EAAE,CAAC;AACpI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,sBAAsB,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE;AAC/E,wBAAwB,sBAAsB,EAAE,mBAAmB;AACnE,qBAAqB,EAAE,QAAQ,EAAE,gOAAgO,EAAE,MAAM,EAAE,CAAC,wsBAAwsB,CAAC,EAAE;AACv9B,SAAS,CAAC,EAAE,CAAC;;ACVN,MAAM,wBAAwB,CAAC;AACtC,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE;AAC7C,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,4BAA4B,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,0QAA0Q,EAAE,MAAM,EAAE,CAAC,6YAA6Y,CAAC,EAAE,CAAC;AAC/2B;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,4BAA4B,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,0QAA0Q,EAAE,MAAM,EAAE,CAAC,6YAA6Y,CAAC,EAAE;AAC9vB,SAAS,CAAC,EAAE,CAAC;;ACPN,MAAM,wBAAwB,CAAC;AACtC,IAAI,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE;AACtC,IAAI,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;AACxC,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,4BAA4B,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,sVAAsV,EAAE,MAAM,EAAE,CAAC,goBAAgoB,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,CAAC,EAAE,CAAC;AACnxC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,4BAA4B,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;AACxF,wBAAwB,oBAAoB;AAC5C,qBAAqB,EAAE,QAAQ,EAAE,sVAAsV,EAAE,MAAM,EAAE,CAAC,goBAAgoB,CAAC,EAAE;AACrgC,SAAS,CAAC,EAAE,CAAC;;ACXN,MAAM,sBAAsB,CAAC;AACpC,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE;AAC3C,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAChL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,oQAAoQ,EAAE,MAAM,EAAE,CAAC,ghCAAghC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,4BAA4B,EAAE,QAAQ,EAAE,yBAAyB,EAAE,CAAC,EAAE,CAAC;AAChlD;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;AAC9E,wBAAwB,4BAA4B;AACpD,qBAAqB,EAAE,QAAQ,EAAE,oQAAoQ,EAAE,MAAM,EAAE,CAAC,ghCAAghC,CAAC,EAAE;AACn0C,SAAS,CAAC,EAAE,CAAC;;ACXN,MAAM,6BAA6B,CAAC;AAC3C,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE;AAClD,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACvL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,6BAA6B,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,yfAAyf,EAAE,MAAM,EAAE,CAAC,yrCAAyrC,CAAC,EAAE,CAAC;AACj9D;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,UAAU,EAAE,CAAC;AACvI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE;AAClF,wBAAwB,sBAAsB,EAAE,mBAAmB;AACnE,qBAAqB,EAAE,QAAQ,EAAE,yfAAyf,EAAE,MAAM,EAAE,CAAC,yrCAAyrC,CAAC,EAAE;AACjuD,SAAS,CAAC,EAAE,CAAC;;ACPN,MAAM,iBAAiB,CAAC;AAC/B,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC;AACpC,IAAI,YAAY,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC1D,IAAI,aAAa,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,IAAI,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC3C,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAC7B,YAAY;AACZ;AACA,QAAQ,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE;AACxC,QAAQ,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE;AACvC;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,CAAC;AACzE,QAAQ,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,CAAC;AACnF;AACA,IAAI,qBAAqB,CAAC,SAAS,EAAE;AACrC,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;AACrF;AACA;AACA,IAAI,0BAA0B,CAAC,SAAS,EAAE;AAC1C,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,gCAAgC,CAAC,SAAS,CAAC,CAAC;AAC1F;AACA;AACA,IAAI,gCAAgC,CAAC,SAAS,EAAE;AAChD,QAAQ,OAAO,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,SAAS,CAAC;AACnE;AACA,IAAI,2BAA2B,CAAC,SAAS,EAAE;AAC3C,QAAQ,OAAO,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,SAAS,CAAC;AAClE;AACA,IAAI,uBAAuB,CAAC,YAAY,EAAE;AAC1C,QAAQ,YAAY,CAAC,iBAAiB,CAAC,YAAY,EAAE;AACrD;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAC3K,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,iBAAiB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE;AACpK,YAAY,SAAS;AACrB,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,sBAAsB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,qBAAqB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,YAAY,EAAE,qBAAqB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,oBAAoB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,yeAAye,EAAE,MAAM,EAAE,CAAC,qmBAAqmB,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,4BAA4B,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,4BAA4B,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,0BAA0B,EAAE,QAAQ,EAAE,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,6BAA6B,EAAE,QAAQ,EAAE,yBAAyB,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAAC,MAAM,CAAC,OAAO,uDAAkD,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1iE;AACA,EAAE,CAAC,6BAA6B,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,CAAC,OAAO,uDAAkD,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE,eAAe,EAAE,oBAAoB,KAAK,EAAE,UAAU,EAAE,CAAC;AACvS,gBAAgB,IAAI,EAAE,SAAS;AAC/B,gBAAgB,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE;AAC9H,4BAA4B,SAAS;AACrC,yBAAyB,EAAE,OAAO,EAAE;AACpC,4BAA4B,wBAAwB;AACpD,4BAA4B,wBAAwB;AACpD,4BAA4B,0BAA0B;AACtD,4BAA4B,sBAAsB;AAClD,4BAA4B,6BAA6B;AACzD,4BAA4B,oBAAoB;AAChD,yBAAyB,EAAE,QAAQ,EAAE,yeAAye,EAAE,MAAM,EAAE,CAAC,qmBAAqmB,CAAC,EAAE;AACjoC,aAAa,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,oBAAoB,EAAE,CAAC;AAC/E,oBAAoB,IAAI,EAAE,SAAS;AACnC,oBAAoB,IAAI,EAAE,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;AAC5E,iBAAiB,CAAC,EAAE,mBAAmB,EAAE,CAAC;AAC1C,oBAAoB,IAAI,EAAE,SAAS;AACnC,oBAAoB,IAAI,EAAE,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;AAC3E,iBAAiB,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;;AClEd,MAAC,WAAW,GAAG;AAC3B,IAAI;AACJ,QAAQ,IAAI,EAAE,EAAE;AAChB,QAAQ,aAAa,EAAE,MAAM,qDAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC;AAC7E,KAAK;AACL;;;;;;;;;;;;;;;;;;;;;;;ACLA;AACA;AACA;;;;"}
1
+ {"version":3,"file":"foblex-m-render.mjs","sources":["../tmp-esm2022/lib/analytics/g-tag.service.js","../tmp-esm2022/lib/analytics/provide-g-tag.js","../tmp-esm2022/lib/common/components/f-search-button/f-search-button.component.js","../tmp-esm2022/lib/common/components/f-checkbox/f-checkbox.component.js","../tmp-esm2022/lib/common/components/f-radio-button/f-radio-button.component.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header-search.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header-media-links.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-header-navigation.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-language.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-logo.js","../tmp-esm2022/lib/common/domain/configuration-providers/provide-title.js","../tmp-esm2022/lib/common/domain/providers.js","../tmp-esm2022/lib/common/services/popover.service.js","../tmp-esm2022/lib/theme/theme.service.js","../tmp-esm2022/lib/common/utils/copy-to-clipboard.js","../tmp-esm2022/lib/common/utils/document-element.js","../tmp-esm2022/lib/common/utils/window.js","../tmp-esm2022/lib/common/utils/local-storage.js","../tmp-esm2022/lib/common/utils/location.js","../tmp-esm2022/lib/common/utils/platform.js","../tmp-esm2022/lib/documentation-page/analytics/common-services/f-head-tag.service.js","../tmp-esm2022/lib/documentation-page/domain/handle-navigation-links/handle-navigation-links.handler.js","../tmp-esm2022/lib/documentation-page/domain/handle-navigation-links/handle-navigation-links.request.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-404-markdown.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-components.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-directory.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-documentation.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-meta.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-footer-navigation.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-navigation.js","../tmp-esm2022/lib/documentation-page/domain/configuration-providers/provide-table-of-content.js","../tmp-esm2022/lib/documentation-page/analytics/common-services/f-meta.service.js","../tmp-esm2022/lib/documentation-page/components/header/components/hamburger-button/domain/i-toggle-navigation-component.js","../tmp-esm2022/lib/documentation-page/components/header/components/hamburger-button/hamburger-button.js","../tmp-esm2022/lib/documentation-page/components/header/models/header-menu-base.js","../tmp-esm2022/lib/documentation-page/components/header/components/inline-menu/inline-menu.js","../tmp-esm2022/lib/theme/theme-button/theme-button.component.js","../tmp-esm2022/lib/theme/provide-theme.js","../tmp-esm2022/lib/documentation-page/components/header/components/media-links/domain/i-media-links-provider.js","../tmp-esm2022/lib/documentation-page/components/header/components/media-links/media-links.js","../tmp-esm2022/lib/documentation-page/components/header/components/dropdown-menu/dropdown-menu.js","../tmp-esm2022/lib/documentation-page/utils/calculate-markdown-url.js","../tmp-esm2022/lib/documentation-page/services/documentation.store.js","../tmp-esm2022/lib/dynamic-components/dynamic-components.store.js","../tmp-esm2022/lib/documentation-page/components/header/header.component.js","../tmp-esm2022/lib/documentation-page/components/navigation-panel/navigation-group/navigation-group.component.js","../tmp-esm2022/lib/documentation-page/components/navigation-panel/f-navigation-item/f-navigation-item.component.js","../tmp-esm2022/lib/documentation-page/components/navigation-panel/navigation-panel.component.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/domain/get-previous-next-page-navigation/get-previous-next-page-navigation.response.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/domain/get-previous-next-page-navigation/get-previous-next-page-navigation.handler.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/domain/get-previous-next-page-navigation/get-previous-next-page-navigation.request.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/footer-navigation-button/footer-navigation-button.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-footer/markdown-footer.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/domain/e-markdown-container-type.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/domain/e-parsed-container-type.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/domain/i-preview-navigation-service.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/markdown.service.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/utils.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-alerts.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-grouped-code-items.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-single-code-item.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-angular-example-with-code-links.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-preview-group.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/utils/parse-showcase.js","../tmp-esm2022/lib/mediatr/mediatr.js","../tmp-esm2022/lib/mediatr/m-execution.js","../tmp-esm2022/lib/dynamic-components/components/external-component/utils/coerce-component-height.js","../tmp-esm2022/lib/dynamic-components/components/external-component/utils/parse-component-tag.js","../tmp-esm2022/lib/dynamic-components/features/render-dynamic-component/render-dynamic-component-request.js","../tmp-esm2022/lib/dynamic-components/features/render-dynamic-component/render-dynamic-component.js","../tmp-esm2022/lib/dynamic-components/features/render-external-component/render-external-component-request.js","../tmp-esm2022/lib/dynamic-components/providers/external-component.provider.js","../tmp-esm2022/lib/dynamic-components/features/render-external-component/render-external-component.js","../tmp-esm2022/lib/dynamic-components/features/render-internal-components/render-internal-components-request.js","../tmp-esm2022/lib/dynamic-components/features/render-internal-components/render-internal-components.js","../tmp-esm2022/lib/dynamic-components/components/external-component/external-component.js","../tmp-esm2022/lib/highlight/code-view/highlight.js","../tmp-esm2022/lib/highlight/code-view/code-view.js","../tmp-esm2022/lib/highlight/mark-code-focused-blocks.post-processor.js","../tmp-esm2022/lib/highlight/theme.js","../tmp-esm2022/lib/highlight/languages.js","../tmp-esm2022/lib/highlight/highlight.service.js","../tmp-esm2022/lib/dynamic-components/components/code-group/code-group.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/components/preview-card/preview-card-base.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/preview-group.service.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/components/preview-card/preview-card.js","../tmp-esm2022/lib/dynamic-components/components/preview-group/components/preview-action-bar/preview-action-bar.js","../tmp-esm2022/lib/dynamic-components/components/showcase/components/showcase-item/showcase-item.js","../tmp-esm2022/lib/dynamic-components/components/showcase/showcase-token.js","../tmp-esm2022/lib/dynamic-components/components/showcase/showcase.js","../tmp-esm2022/lib/dynamic-components/components/showcase/provide-showcase.js","../tmp-esm2022/lib/dynamic-components/module-providers.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/activate-toc-by-hash/activate-toc-by-hash-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/activate-toc-by-hash/activate-toc-by-hash.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-table-of-content/calculate-table-of-content-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/models/table-of-content-data.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-absolute-top-to-container/calculate-absolute-top-to-container-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-absolute-top-to-container/calculate-absolute-top-to-container.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-hash-from-scroll-position-and-activate-toc/calculate-hash-from-scroll-position-and-activate-toc.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-hash-from-scroll-position-and-activate-toc/calculate-hash-from-scroll-position-and-activate-toc-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/calculate-table-of-content/calculate-table-of-content.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/scroll-to-element-in-container/scroll-to-element-in-container-request.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/features/scroll-to-element-in-container/scroll-to-element-in-container.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/table-of-content-items/table-of-content-items.component.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/module-providers.js","../tmp-esm2022/lib/documentation-page/components/table-of-content/table-of-content.js","../tmp-esm2022/lib/documentation-page/components/scrollable-container/models/i-scrollable-container.js","../tmp-esm2022/lib/documentation-page/components/scrollable-container/scrollable-container.js","../tmp-esm2022/lib/documentation-page/components/markdown-renderer/markdown-renderer.js","../tmp-esm2022/lib/documentation-page/components/markdown-router/markdown-router.js","../tmp-esm2022/lib/documentation-page/documentation.js","../tmp-esm2022/lib/documentation-page/routes.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-background.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-hero.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-buttons.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-features.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-footer.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-home-page.js","../tmp-esm2022/lib/home-page/domain/configuration-providers/provide-image.js","../tmp-esm2022/lib/home-page/services/home.store.js","../tmp-esm2022/lib/home-page/components/f-home-page-buttons-row/f-home-page-buttons-row.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-features/f-home-page-features.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-footer/f-home-page-footer.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-header/f-home-page-header.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-hero/f-home-page-hero.component.js","../tmp-esm2022/lib/home-page/components/f-home-page-memberships/f-home-page-memberships.component.js","../tmp-esm2022/lib/home-page/home-root.component.js","../tmp-esm2022/lib/home-page/router.js","../tmp-esm2022/foblex-m-render.js"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { GTAG_CONFIG } from './provide-g-tag';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nexport class GTagService {\n _config = inject(GTAG_CONFIG);\n _document = inject(DOCUMENT);\n _router = inject(Router, { optional: true });\n _initialized = false;\n _configuredIds = new Set();\n initialize() {\n if (this._initialized)\n return;\n const win = this._document.defaultView;\n if (!win) {\n return;\n }\n win.dataLayer = win.dataLayer || [];\n win.gtag = win.gtag || ((...args) => win.dataLayer.push(args));\n const initialConsent = this._config.initialConsent ?? 'denied';\n this._setConsent(initialConsent);\n if (!win.__gtagLoaded__) {\n this._appendScript(this._config.id);\n win.__gtagLoaded__ = true;\n }\n win.gtag('js', new Date());\n this._configAll([this._config.id, ...(this._config.extraIds ?? [])]);\n if (this._config.autoPageview && this._router) {\n this._router.events.pipe(filter(e => e instanceof NavigationEnd)).subscribe(() => {\n this.pageview();\n });\n }\n this._initialized = true;\n }\n updateConsent(granted) {\n this._setConsent(granted ? 'granted' : 'denied');\n }\n event(action, params) {\n const win = this._document.defaultView;\n win?.gtag?.('event', action, params || {});\n }\n pageview(path) {\n const win = this._document.defaultView;\n const p = path ?? this._document.location?.pathname ?? '/';\n for (const id of this._getConfiguredIds()) {\n win?.gtag?.('config', id, { page_path: p });\n }\n }\n adsConversion(sendTo, params) {\n this.event('conversion', { send_to: sendTo, ...params });\n }\n _setConsent(state) {\n const win = this._document.defaultView;\n const base = {\n ad_user_data: state,\n ad_personalization: state,\n ad_storage: state,\n analytics_storage: state,\n };\n if (state === 'denied') {\n win?.gtag?.('consent', 'default', { ...base, wait_for_update: 500 });\n }\n else {\n win?.gtag?.('consent', 'update', base);\n }\n }\n _appendScript(id) {\n if (this._document.querySelector('#gtag-script'))\n return;\n const s = this._document.createElement('script');\n s.id = 'gtag-script';\n s.async = true;\n s.src = `https://www.googletagmanager.com/gtag/js?id=${encodeURIComponent(id)}`;\n this._document.head.appendChild(s);\n }\n _configAll(ids) {\n const win = this._document.defaultView;\n ids.filter(Boolean).forEach(id => {\n if (this._configuredIds.has(id))\n return;\n win?.gtag?.('config', id);\n this._configuredIds.add(id);\n });\n }\n _getConfiguredIds() {\n return Array.from(this._configuredIds.values());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: GTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: GTagService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: GTagService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZy10YWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9hbmFseXRpY3MvZy10YWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFnQixXQUFXLEVBQWMsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHeEMsTUFBTSxPQUFPLFdBQVc7SUFDTCxPQUFPLEdBQUcsTUFBTSxDQUFhLFdBQVcsQ0FBQyxDQUFDO0lBQzFDLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBRXBDLFVBQVU7UUFDZixJQUFJLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUU5QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBSWxCLENBQUM7UUFFVixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDVCxPQUFPO1FBQ1QsQ0FBQztRQUVELEdBQUcsQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7UUFDcEMsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQWUsRUFB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LElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNsRCxDQUFDO3VHQXBHVSxXQUFXOzJHQUFYLFdBQVc7OzJGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbnNlbnRTdGF0ZSwgR1RBR19DT05GSUcsIEdUYWdDb25maWcgfSBmcm9tICcuL3Byb3ZpZGUtZy10YWcnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdUYWdTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfY29uZmlnID0gaW5qZWN0PEdUYWdDb25maWc+KEdUQUdfQ09ORklHKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIF9pbml0aWFsaXplZCA9IGZhbHNlO1xuICBwcml2YXRlIF9jb25maWd1cmVkSWRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2luaXRpYWxpemVkKSByZXR1cm47XG5cbiAgICBjb25zdCB3aW4gPSB0aGlzLl9kb2N1bWVudC5kZWZhdWx0VmlldyBhcyAoV2luZG93ICYge1xuICAgICAgZGF0YUxheWVyPzogdW5rbm93bltdO1xuICAgICAgZ3RhZz86ICguLi5hcmdzOiB1bmtub3duW10pID0+IHZvaWQ7XG4gICAgICBfX2d0YWdMb2FkZWRfXz86IGJvb2xlYW47XG4gICAgfSkgfCBudWxsO1xuXG4gICAgaWYgKCF3aW4pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB3aW4uZGF0YUxheWVyID0gd2luLmRhdGFMYXllciB8fCBbXTtcbiAgICB3aW4uZ3RhZyA9IHdpbi5ndGFnIHx8ICgoLi4uYXJnczogdW5rbm93bltdKSA9PiB3aW4uZGF0YUxheWVyIS5wdXNoKGFyZ3MpKTtcblxuICAgIGNvbnN0IGluaXRpYWxDb25zZW50OiBDb25zZW50U3RhdGUgPSB0aGlzLl9jb25maWcuaW5pdGlhbENvbnNlbnQgPz8gJ2RlbmllZCc7XG4gICAgdGhpcy5fc2V0Q29uc2VudChpbml0aWFsQ29uc2VudCk7XG5cbiAgICBpZiAoIXdpbi5fX2d0YWdMb2FkZWRfXykge1xuICAgICAgdGhpcy5fYXBwZW5kU2NyaXB0KHRoaXMuX2NvbmZpZy5pZCk7XG4gICAgICB3aW4uX19ndGFnTG9hZGVkX18gPSB0cnVlO1xuICAgIH1cblxuICAgIHdpbi5ndGFnKCdqcycsIG5ldyBEYXRlKCkpO1xuXG4gICAgdGhpcy5fY29uZmlnQWxsKFt0aGlzLl9jb25maWcuaWQsIC4uLih0aGlzLl9jb25maWcuZXh0cmFJZHMgPz8gW10pXSk7XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLmF1dG9QYWdldmlldyAmJiB0aGlzLl9yb3V0ZXIpIHtcbiAgICAgIHRoaXMuX3JvdXRlci5ldmVudHMucGlwZShmaWx0ZXIoZSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMucGFnZXZpZXcoKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVDb25zZW50KGdyYW50ZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9zZXRDb25zZW50KGdyYW50ZWQgPyAnZ3JhbnRlZCcgOiAnZGVuaWVkJyk7XG4gIH1cblxuICBwdWJsaWMgZXZlbnQoYWN0aW9uOiBzdHJpbmcsIHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgY29uc3Qgd2luID0gdGhpcy5fZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgYW55O1xuICAgIHdpbj8uZ3RhZz8uKCdldmVudCcsIGFjdGlvbiwgcGFyYW1zIHx8IHt9KTtcbiAgfVxuXG4gIHB1YmxpYyBwYWdldmlldyhwYXRoPzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgd2luID0gdGhpcy5fZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgYW55O1xuICAgIGNvbnN0IHAgPSBwYXRoID8/IHRoaXMuX2RvY3VtZW50LmxvY2F0aW9uPy5wYXRobmFtZSA/PyAnLyc7XG4gICAgZm9yIChjb25zdCBpZCBvZiB0aGlzLl9nZXRDb25maWd1cmVkSWRzKCkpIHtcbiAgICAgIHdpbj8uZ3RhZz8uKCdjb25maWcnLCBpZCwgeyBwYWdlX3BhdGg6IHAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFkc0NvbnZlcnNpb24oc2VuZFRvOiBzdHJpbmcsIHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgdGhpcy5ldmVudCgnY29udmVyc2lvbicsIHsgc2VuZF90bzogc2VuZFRvLCAuLi5wYXJhbXMgfSk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRDb25zZW50KHN0YXRlOiBDb25zZW50U3RhdGUpOiB2b2lkIHtcbiAgICBjb25zdCB3aW4gPSB0aGlzLl9kb2N1bWVudC5kZWZhdWx0VmlldyBhcyBhbnk7XG4gICAgY29uc3QgYmFzZSA9IHtcbiAgICAgIGFkX3VzZXJfZGF0YTogc3RhdGUsXG4gICAgICBhZF9wZXJzb25hbGl6YXRpb246IHN0YXRlLFxuICAgICAgYWRfc3RvcmFnZTogc3RhdGUsXG4gICAgICBhbmFseXRpY3Nfc3RvcmFnZTogc3RhdGUsXG4gICAgfTtcbiAgICBpZiAoc3RhdGUgPT09ICdkZW5pZWQnKSB7XG4gICAgICB3aW4/Lmd0YWc/LignY29uc2VudCcsICdkZWZhdWx0JywgeyAuLi5iYXNlLCB3YWl0X2Zvcl91cGRhdGU6IDUwMCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgd2luPy5ndGFnPy4oJ2NvbnNlbnQnLCAndXBkYXRlJywgYmFzZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfYXBwZW5kU2NyaXB0KGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2d0YWctc2NyaXB0JykpIHJldHVybjtcbiAgICBjb25zdCBzID0gdGhpcy5fZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgcy5pZCA9ICdndGFnLXNjcmlwdCc7XG4gICAgcy5hc3luYyA9IHRydWU7XG4gICAgcy5zcmMgPSBgaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RhZy9qcz9pZD0ke2VuY29kZVVSSUNvbXBvbmVudChpZCl9YDtcbiAgICB0aGlzLl9kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlnQWxsKGlkczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCB3aW4gPSB0aGlzLl9kb2N1bWVudC5kZWZhdWx0VmlldyBhcyBhbnk7XG4gICAgaWRzLmZpbHRlcihCb29sZWFuKS5mb3JFYWNoKGlkID0+IHtcbiAgICAgIGlmICh0aGlzLl9jb25maWd1cmVkSWRzLmhhcyhpZCkpIHJldHVybjtcbiAgICAgIHdpbj8uZ3RhZz8uKCdjb25maWcnLCBpZCk7XG4gICAgICB0aGlzLl9jb25maWd1cmVkSWRzLmFkZChpZCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDb25maWd1cmVkSWRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLl9jb25maWd1cmVkSWRzLnZhbHVlcygpKTtcbiAgfVxufVxuIl19","import { InjectionToken } from '@angular/core';\nimport { GTagService } from './g-tag.service';\nexport function provideGTag(config) {\n return [\n {\n provide: GTAG_CONFIG,\n useValue: config,\n },\n {\n provide: GTagService,\n useClass: GTagService,\n },\n ];\n}\nexport const GTAG_CONFIG = new InjectionToken('GTAG_CONFIG');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1nLXRhZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9hbmFseXRpY3MvcHJvdmlkZS1nLXRhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU5QyxNQUFNLFVBQVUsV0FBVyxDQUFDLE1BQWtCO0lBQzVDLE9BQU87UUFDTDtZQUNFLE9BQU8sRUFBRSxXQUFXO1lBQ3BCLFFBQVEsRUFBRSxNQUFNO1NBQ2pCO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsV0FBVztZQUNwQixRQUFRLEVBQUUsV0FBVztTQUN0QjtLQUNGLENBQUM7QUFDSixDQUFDO0FBU0QsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFhLGFBQWEsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHVGFnU2VydmljZSB9IGZyb20gJy4vZy10YWcuc2VydmljZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlR1RhZyhjb25maWc6IEdUYWdDb25maWcpOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBHVEFHX0NPTkZJRyxcbiAgICAgIHVzZVZhbHVlOiBjb25maWcsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBHVGFnU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBHVGFnU2VydmljZSxcbiAgICB9LFxuICBdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdUYWdDb25maWcge1xuICBpZDogc3RyaW5nO1xuICBleHRyYUlkcz86IHN0cmluZ1tdO1xuICBhdXRvUGFnZXZpZXc/OiBib29sZWFuO1xuICBpbml0aWFsQ29uc2VudD86IENvbnNlbnRTdGF0ZTtcbn1cblxuZXhwb3J0IGNvbnN0IEdUQUdfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPEdUYWdDb25maWc+KCdHVEFHX0NPTkZJRycpO1xuXG5leHBvcnQgdHlwZSBDb25zZW50U3RhdGUgPSAnZ3JhbnRlZCcgfCAnZGVuaWVkJztcbiJdfQ==","import { ChangeDetectionStrategy, Component, } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class FSearchButtonComponent {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FSearchButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FSearchButtonComponent, isStandalone: true, selector: \"f-search-button\", ngImport: i0, template: \"<a class=\\\"f-icon search\\\" [routerLink]=\\\"[]\\\" fragment=\\\"search\\\"></a>\\n\", styles: [\".f-icon{display:block;width:20px;height:20px;margin-left:8px;color:var(--sponsor);cursor:pointer;transition:transform .2s ease}.f-icon:hover{transform:scale(1.1)}\\n\"], dependencies: [{ kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FSearchButtonComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-search-button', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n RouterLink,\n ], template: \"<a class=\\\"f-icon search\\\" [routerLink]=\\\"[]\\\" fragment=\\\"search\\\"></a>\\n\", styles: [\".f-icon{display:block;width:20px;height:20px;margin-left:8px;color:var(--sponsor);cursor:pointer;transition:transform .2s ease}.f-icon:hover{transform:scale(1.1)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLXNlYXJjaC1idXR0b24vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLXNlYXJjaC1idXR0b24vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFZN0MsTUFBTSxPQUFPLHNCQUFzQjt1R0FBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0IsMkVDaEJuQywyRUFDQSw4TkRZSSxVQUFVOzsyRkFHRCxzQkFBc0I7a0JBVmxDLFNBQVM7K0JBQ0UsaUJBQWlCLGNBR2YsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFVBQVU7cUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLXNlYXJjaC1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZi1zZWFyY2gtYnV0dG9uLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyTGluayxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRlNlYXJjaEJ1dHRvbkNvbXBvbmVudCB7XG59XG4iLCI8YSBjbGFzcz1cImYtaWNvbiBzZWFyY2hcIiBbcm91dGVyTGlua109XCJbXVwiIGZyYWdtZW50PVwic2VhcmNoXCI+PC9hPlxuIl19","import { booleanAttribute, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input, Output, ViewChild, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nlet uniqueId = 0;\nexport class FCheckboxComponent {\n changeDetectorRef;\n id = `f-checkbox-${uniqueId++}`;\n change = new EventEmitter();\n inputElement;\n labelElement;\n get checked() {\n return this.isChecked;\n }\n set checked(value) {\n if (value != this.checked) {\n this.isChecked = value;\n this.changeDetectorRef.markForCheck();\n }\n }\n isChecked = false;\n constructor(changeDetectorRef) {\n this.changeDetectorRef = changeDetectorRef;\n }\n onInputClick() {\n this.handleInputClick();\n }\n onTouchTargetClick() {\n this.handleInputClick();\n this.inputElement?.nativeElement.focus();\n }\n handleInputClick() {\n this.isChecked = !this.isChecked;\n this.emitChangeEvent();\n }\n emitChangeEvent() {\n this.change.emit(this.isChecked);\n if (this.inputElement) {\n this.inputElement.nativeElement.checked = this.isChecked;\n }\n }\n onInteractionEvent(event) {\n event.stopPropagation();\n }\n preventBubblingFromLabel(event) {\n if (!!event.target && this.labelElement?.nativeElement.contains(event.target)) {\n event.stopPropagation();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"16.1.0\", version: \"20.1.8\", type: FCheckboxComponent, isStandalone: true, selector: \"f-checkbox\", inputs: { id: \"id\", checked: [\"checked\", \"checked\", booleanAttribute] }, outputs: { change: \"change\" }, host: { listeners: { \"click\": \"preventBubblingFromLabel($event)\" }, properties: { \"class.f-checkbox-checked\": \"checked\" } }, viewQueries: [{ propertyName: \"inputElement\", first: true, predicate: [\"input\"], descendants: true }, { propertyName: \"labelElement\", first: true, predicate: [\"label\"], descendants: true }], ngImport: i0, template: \"<input #input\\n [id]=\\\"id\\\"\\n type=\\\"checkbox\\\"\\n [checked]=\\\"checked\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-checkbox-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <svg class=\\\"f-checkbox-checkmark\\\" focusable=\\\"false\\\" viewBox=\\\"0 0 24 24\\\" aria-hidden=\\\"true\\\">\\n <path class=\\\"f-checkbox-checkmark-path\\\" fill=\\\"none\\\" d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\"/>\\n </svg>\\n</div>\\n<label [for]=\\\"id\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--checkbox-container-background);border-radius:var(--checkbox-border-radius);padding:0 8px;color:var(--checkbox-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-checkbox-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--checkbox-size);height:var(--checkbox-size);margin-right:6px;border-radius:var(--checkbox-border-radius);background-color:var(--checkbox-background);padding:2px}:host .f-checkbox-container .f-checkbox-checkmark{position:absolute;top:calc(var(--checkbox-size) / 8);right:calc(var(--checkbox-size) / 8);bottom:calc(var(--checkbox-size) / 8);left:calc(var(--checkbox-size) / 8);opacity:0}:host .f-checkbox-container .f-checkbox-checkmark .f-checkbox-checkmark-path{stroke:currentColor;stroke-width:3}:host label{-webkit-user-select:none;user-select:none}:host.f-checkbox-checked .f-checkbox-container{background-color:var(--checkbox-checked-background)}:host.f-checkbox-checked .f-checkbox-container .f-checkbox-checkmark{color:var(--checkbox-checkmark-color);opacity:1}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FCheckboxComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-checkbox', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[class.f-checkbox-checked]': 'checked',\n }, template: \"<input #input\\n [id]=\\\"id\\\"\\n type=\\\"checkbox\\\"\\n [checked]=\\\"checked\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-checkbox-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <svg class=\\\"f-checkbox-checkmark\\\" focusable=\\\"false\\\" viewBox=\\\"0 0 24 24\\\" aria-hidden=\\\"true\\\">\\n <path class=\\\"f-checkbox-checkmark-path\\\" fill=\\\"none\\\" d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\"/>\\n </svg>\\n</div>\\n<label [for]=\\\"id\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--checkbox-container-background);border-radius:var(--checkbox-border-radius);padding:0 8px;color:var(--checkbox-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-checkbox-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--checkbox-size);height:var(--checkbox-size);margin-right:6px;border-radius:var(--checkbox-border-radius);background-color:var(--checkbox-background);padding:2px}:host .f-checkbox-container .f-checkbox-checkmark{position:absolute;top:calc(var(--checkbox-size) / 8);right:calc(var(--checkbox-size) / 8);bottom:calc(var(--checkbox-size) / 8);left:calc(var(--checkbox-size) / 8);opacity:0}:host .f-checkbox-container .f-checkbox-checkmark .f-checkbox-checkmark-path{stroke:currentColor;stroke-width:3}:host label{-webkit-user-select:none;user-select:none}:host.f-checkbox-checked .f-checkbox-container{background-color:var(--checkbox-checked-background)}:host.f-checkbox-checked .f-checkbox-container .f-checkbox-checkmark{color:var(--checkbox-checkmark-color);opacity:1}\\n\"] }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { id: [{\n type: Input\n }], change: [{\n type: Output\n }], inputElement: [{\n type: ViewChild,\n args: ['input']\n }], labelElement: [{\n type: ViewChild,\n args: ['label']\n }], checked: [{\n type: Input,\n args: [{ transform: booleanAttribute }]\n }], preventBubblingFromLabel: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL2NvbXBvbmVudHMvZi1jaGVja2JveC9mLWNoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLWNoZWNrYm94L2YtY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdCQUFnQixFQUNoQix1QkFBdUIsRUFBRSxpQkFBaUIsRUFDMUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxHQUM1RSxNQUFNLGVBQWUsQ0FBQzs7QUFFdkIsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBWWpCLE1BQU0sT0FBTyxrQkFBa0I7SUE4Qm5CO0lBM0JILEVBQUUsR0FBRyxjQUFlLFFBQVEsRUFBRyxFQUFFLENBQUM7SUFHbEMsTUFBTSxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO0lBRzNELFlBQVksQ0FBZ0M7SUFHN0MsWUFBWSxDQUFnQztJQUVuRCxJQUNXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLE9BQU8sQ0FBQyxLQUFjO1FBQy9CLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFTyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRzFCLFlBQ1UsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFFOUMsQ0FBQztJQUVNLFlBQVk7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU8sZUFBZTtRQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDM0QsQ0FBQztJQUNILENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxLQUFZO1FBQ3BDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBR00sd0JBQXdCLENBQUMsS0FBaUI7UUFDL0MsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQXFCLENBQUMsRUFBRSxDQUFDO1lBQzdGLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQzt1R0FoRVUsa0JBQWtCOzJGQUFsQixrQkFBa0Isa0dBY1QsZ0JBQWdCLHdYQ2hDdEMsNGhCQWNBOzsyRkRJYSxrQkFBa0I7a0JBVjlCLFNBQVM7K0JBQ0UsWUFBWSxjQUdWLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSiw0QkFBNEIsRUFBRSxTQUFTO3FCQUN4QztzRkFLTSxFQUFFO3NCQURSLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixNQUFNO2dCQUlDLFlBQVk7c0JBRG5CLFNBQVM7dUJBQUMsT0FBTztnQkFJWCxZQUFZO3NCQURsQixTQUFTO3VCQUFDLE9BQU87Z0JBSVAsT0FBTztzQkFEakIsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkE4Qy9CLHdCQUF3QjtzQkFEOUIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBRSxRQUFRLENBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCB1bmlxdWVJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2YtY2hlY2tib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9mLWNoZWNrYm94LmNvbXBvbmVudC5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZi1jaGVja2JveC1jaGVja2VkXSc6ICdjaGVja2VkJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgRkNoZWNrYm94Q29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaWQgPSBgZi1jaGVja2JveC0keyB1bmlxdWVJZCsrIH1gO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKVxuICBwcml2YXRlIGlucHV0RWxlbWVudD86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnbGFiZWwnKVxuICBwdWJsaWMgbGFiZWxFbGVtZW50PzogRWxlbWVudFJlZjxIVE1MTGFiZWxFbGVtZW50PjtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzQ2hlY2tlZDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh2YWx1ZSAhPSB0aGlzLmNoZWNrZWQpIHtcbiAgICAgIHRoaXMuaXNDaGVja2VkID0gdmFsdWU7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNDaGVja2VkID0gZmFsc2U7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgb25JbnB1dENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuaGFuZGxlSW5wdXRDbGljaygpO1xuICB9XG5cbiAgcHVibGljIG9uVG91Y2hUYXJnZXRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZUlucHV0Q2xpY2soKTtcbiAgICB0aGlzLmlucHV0RWxlbWVudD8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVJbnB1dENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuaXNDaGVja2VkID0gIXRoaXMuaXNDaGVja2VkO1xuICAgIHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRDaGFuZ2VFdmVudCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMuaXNDaGVja2VkKTtcbiAgICBpZiAodGhpcy5pbnB1dEVsZW1lbnQpIHtcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA9IHRoaXMuaXNDaGVja2VkO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkludGVyYWN0aW9uRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsgJyRldmVudCcgXSlcbiAgcHVibGljIHByZXZlbnRCdWJibGluZ0Zyb21MYWJlbChldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmICghIWV2ZW50LnRhcmdldCAmJiB0aGlzLmxhYmVsRWxlbWVudD8ubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpKSB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxpbnB1dCAjaW5wdXRcbiAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gICAgICAgKGNsaWNrKT1cIm9uSW5wdXRDbGljaygpXCJcbiAgICAgICAoY2hhbmdlKT1cIm9uSW50ZXJhY3Rpb25FdmVudCgkZXZlbnQpXCIvPlxuPGRpdiBjbGFzcz1cImYtY2hlY2tib3gtY29udGFpbmVyXCIgKGNsaWNrKT1cIm9uVG91Y2hUYXJnZXRDbGljaygpXCI+XG4gIDxzdmcgY2xhc3M9XCJmLWNoZWNrYm94LWNoZWNrbWFya1wiIGZvY3VzYWJsZT1cImZhbHNlXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgIDxwYXRoIGNsYXNzPVwiZi1jaGVja2JveC1jaGVja21hcmstcGF0aFwiIGZpbGw9XCJub25lXCIgZD1cIk0xLjczLDEyLjkxIDguMSwxOS4yOCAyMi43OSw0LjU5XCIvPlxuICA8L3N2Zz5cbjwvZGl2PlxuPGxhYmVsIFtmb3JdPVwiaWRcIiAjbGFiZWw+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbGFiZWw+XG4iXX0=","import { ChangeDetectionStrategy, Component, HostListener, input, output, viewChild, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nlet uniqueId = 0;\nexport class FRadioButtonComponent {\n id = input(`f-radio-button-${uniqueId++}`, ...(ngDevMode ? [{ debugName: \"id\" }] : []));\n change = output();\n checked = input(false, ...(ngDevMode ? [{ debugName: \"checked\" }] : []));\n labelElement = viewChild('label', ...(ngDevMode ? [{ debugName: \"labelElement\" }] : []));\n onInputClick() {\n this._handleInputClick();\n }\n onTouchTargetClick() {\n this._handleInputClick();\n }\n _handleInputClick() {\n this._emitChangeEvent();\n }\n _emitChangeEvent() {\n this.change.emit(true);\n }\n onInteractionEvent(event) {\n event.stopPropagation();\n }\n preventBubblingFromLabel(event) {\n if (!!event.target && this.labelElement()?.nativeElement.contains(event.target)) {\n event.stopPropagation();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FRadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.2.0\", version: \"20.1.8\", type: FRadioButtonComponent, isStandalone: true, selector: \"f-radio-button\", inputs: { id: { classPropertyName: \"id\", publicName: \"id\", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: \"checked\", publicName: \"checked\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: \"change\" }, host: { listeners: { \"click\": \"preventBubblingFromLabel($event)\" }, properties: { \"class.f-radio-button-checked\": \"checked()\" } }, viewQueries: [{ propertyName: \"labelElement\", first: true, predicate: [\"label\"], descendants: true, isSignal: true }], ngImport: i0, template: \"<input [id]=\\\"id()\\\"\\n type=\\\"radio\\\"\\n [checked]=\\\"checked()\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-radio-button-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <div class=\\\"f-radio-button-inner-circle\\\"></div>\\n</div>\\n<label [for]=\\\"id()\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--radio-button-container-background);border-radius:var(--radio-button-container-border-radius);padding:0 8px;color:var(--radio-button-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-radio-button-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--radio-button-size);height:var(--radio-button-size);margin-right:6px;border-radius:50%;border:1px solid var(--radio-button-border-color);background-color:var(--radio-button-background)}:host .f-radio-button-container .f-radio-button-inner-circle{position:absolute;top:calc(var(--radio-button-size) / 4);right:calc(var(--radio-button-size) / 4);bottom:calc(var(--radio-button-size) / 4);left:calc(var(--radio-button-size) / 4);border-radius:50%}:host label{-webkit-user-select:none;user-select:none}:host.f-radio-button-checked .f-radio-button-container{background-color:var(--radio-button-checked-background)}:host.f-radio-button-checked .f-radio-button-container .f-radio-button-inner-circle{background-color:var(--radio-button-inner-circle-color)}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FRadioButtonComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-radio-button', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[class.f-radio-button-checked]': 'checked()',\n }, template: \"<input [id]=\\\"id()\\\"\\n type=\\\"radio\\\"\\n [checked]=\\\"checked()\\\"\\n (click)=\\\"onInputClick()\\\"\\n (change)=\\\"onInteractionEvent($event)\\\"/>\\n<div class=\\\"f-radio-button-container\\\" (click)=\\\"onTouchTargetClick()\\\">\\n <div class=\\\"f-radio-button-inner-circle\\\"></div>\\n</div>\\n<label [for]=\\\"id()\\\" #label>\\n <ng-content></ng-content>\\n</label>\\n\", styles: [\":host{position:relative;display:flex;align-items:center;font-weight:400;white-space:nowrap;font-size:14px;cursor:pointer;background-color:var(--radio-button-container-background);border-radius:var(--radio-button-container-border-radius);padding:0 8px;color:var(--radio-button-text);transition:color .25s,background-color .25s}:host input{position:absolute;inset:0;opacity:0;cursor:pointer}:host .f-radio-button-container{position:relative;display:flex;align-items:center;justify-content:center;width:var(--radio-button-size);height:var(--radio-button-size);margin-right:6px;border-radius:50%;border:1px solid var(--radio-button-border-color);background-color:var(--radio-button-background)}:host .f-radio-button-container .f-radio-button-inner-circle{position:absolute;top:calc(var(--radio-button-size) / 4);right:calc(var(--radio-button-size) / 4);bottom:calc(var(--radio-button-size) / 4);left:calc(var(--radio-button-size) / 4);border-radius:50%}:host label{-webkit-user-select:none;user-select:none}:host.f-radio-button-checked .f-radio-button-container{background-color:var(--radio-button-checked-background)}:host.f-radio-button-checked .f-radio-button-container .f-radio-button-inner-circle{background-color:var(--radio-button-inner-circle-color)}\\n\"] }]\n }], propDecorators: { preventBubblingFromLabel: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1yYWRpby1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9jb21wb25lbnRzL2YtcmFkaW8tYnV0dG9uL2YtcmFkaW8tYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vY29tcG9uZW50cy9mLXJhZGlvLWJ1dHRvbi9mLXJhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEdBQzlELE1BQU0sZUFBZSxDQUFDOztBQUV2QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFZakIsTUFBTSxPQUFPLHFCQUFxQjtJQUV6QixFQUFFLEdBQUcsS0FBSyxDQUFTLGtCQUFtQixRQUFRLEVBQUcsRUFBRSw4Q0FBQyxDQUFDO0lBRXJELE1BQU0sR0FBRyxNQUFNLEVBQVcsQ0FBQztJQUMzQixPQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssbURBQUMsQ0FBQztJQUU3QixZQUFZLEdBQUcsU0FBUyxDQUFhLE9BQU8sd0RBQUMsQ0FBQztJQUVqRCxZQUFZO1FBQ2pCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTSxrQkFBa0I7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxLQUFZO1FBQ3ZDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBR1Msd0JBQXdCLENBQUMsS0FBaUI7UUFDbEQsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBcUIsQ0FBQyxFQUFFLENBQUM7WUFDL0YsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO3VHQWxDVSxxQkFBcUI7MkZBQXJCLHFCQUFxQiw0bEJDakJsQyxrWEFXQTs7MkZETWEscUJBQXFCO2tCQVZqQyxTQUFTOytCQUNFLGdCQUFnQixjQUdkLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixnQ0FBZ0MsRUFBRSxXQUFXO3FCQUM5Qzs4QkFnQ1Msd0JBQXdCO3NCQURqQyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFFLFFBQVEsQ0FBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgaW5wdXQsIG91dHB1dCwgdmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxubGV0IHVuaXF1ZUlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1yYWRpby1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1yYWRpby1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1yYWRpby1idXR0b24uY29tcG9uZW50LnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5mLXJhZGlvLWJ1dHRvbi1jaGVja2VkXSc6ICdjaGVja2VkKCknLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBGUmFkaW9CdXR0b25Db21wb25lbnQge1xuXG4gIHB1YmxpYyBpZCA9IGlucHV0PHN0cmluZz4oYGYtcmFkaW8tYnV0dG9uLSR7IHVuaXF1ZUlkKysgfWApO1xuXG4gIHB1YmxpYyBjaGFuZ2UgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcbiAgcHVibGljIGNoZWNrZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHJvdGVjdGVkIGxhYmVsRWxlbWVudCA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPignbGFiZWwnKTtcblxuICBwdWJsaWMgb25JbnB1dENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuX2hhbmRsZUlucHV0Q2xpY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBvblRvdWNoVGFyZ2V0Q2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5faGFuZGxlSW5wdXRDbGljaygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlSW5wdXRDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLl9lbWl0Q2hhbmdlRXZlbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VtaXRDaGFuZ2VFdmVudCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uSW50ZXJhY3Rpb25FdmVudChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyAnJGV2ZW50JyBdKVxuICBwcm90ZWN0ZWQgcHJldmVudEJ1YmJsaW5nRnJvbUxhYmVsKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCEhZXZlbnQudGFyZ2V0ICYmIHRoaXMubGFiZWxFbGVtZW50KCk/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSkge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuICB9XG59XG4iLCI8aW5wdXQgW2lkXT1cImlkKClcIlxuICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgW2NoZWNrZWRdPVwiY2hlY2tlZCgpXCJcbiAgICAgICAoY2xpY2spPVwib25JbnB1dENsaWNrKClcIlxuICAgICAgIChjaGFuZ2UpPVwib25JbnRlcmFjdGlvbkV2ZW50KCRldmVudClcIi8+XG48ZGl2IGNsYXNzPVwiZi1yYWRpby1idXR0b24tY29udGFpbmVyXCIgKGNsaWNrKT1cIm9uVG91Y2hUYXJnZXRDbGljaygpXCI+XG4gIDxkaXYgY2xhc3M9XCJmLXJhZGlvLWJ1dHRvbi1pbm5lci1jaXJjbGVcIj48L2Rpdj5cbjwvZGl2PlxuPGxhYmVsIFtmb3JdPVwiaWQoKVwiICNsYWJlbD5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9sYWJlbD5cbiJdfQ==","export function provideHeader(...configuration) {\n return {\n header: Object.assign({}, ...configuration),\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhlYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsYUFBYSxDQUMzQixHQUFHLGFBQThDO0lBRWpELE9BQU87UUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsR0FBRyxhQUFhLENBQUM7S0FDNUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGVhZGVyTWVudUxpbmssIElNZWRpYUxpbmsgfSBmcm9tICcuLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUhlYWRlcihcbiAgLi4uY29uZmlndXJhdGlvbjogUGFydGlhbDxJSGVhZGVyQ29uZmlndXJhdGlvbj5bXVxuKTogUGFydGlhbDxJSGFzSGVhZGVyQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIGhlYWRlcjogT2JqZWN0LmFzc2lnbih7fSwgLi4uY29uZmlndXJhdGlvbiksXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhlYWRlckNvbmZpZ3VyYXRpb24ge1xuXG4gIHNlYXJjaD86IGJvb2xlYW47XG5cbiAgbmF2aWdhdGlvbj86IElIZWFkZXJNZW51TGlua1tdO1xuXG4gIG1lZGlhTGlua3M/OiBJTWVkaWFMaW5rW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhhc0hlYWRlckNvbmZpZ3VyYXRpb24ge1xuXG4gIGhlYWRlcj86IElIZWFkZXJDb25maWd1cmF0aW9uO1xufVxuIl19","export function provideHeaderSearch(search) {\n return {\n search,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXItc2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1oZWFkZXItc2VhcmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxNQUFnQjtJQUNsRCxPQUFPO1FBQ0wsTUFBTTtLQUNQLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUhlYWRlckNvbmZpZ3VyYXRpb24gfSBmcm9tICcuL3Byb3ZpZGUtaGVhZGVyJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZWFkZXJTZWFyY2goc2VhcmNoPzogYm9vbGVhbik6IFBhcnRpYWw8SUhlYWRlckNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBzZWFyY2gsXG4gIH07XG59XG4iXX0=","export function provideHeaderMediaLinks(mediaLinks) {\n return {\n mediaLinks,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXItbWVkaWEtbGlua3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhlYWRlci1tZWRpYS1saW5rcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLFVBQVUsdUJBQXVCLENBQUMsVUFBd0I7SUFDOUQsT0FBTztRQUNMLFVBQVU7S0FDWCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIZWFkZXJDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9wcm92aWRlLWhlYWRlcic7XG5pbXBvcnQgeyBJTWVkaWFMaW5rIH0gZnJvbSAnLi4vLi4vLi4vZG9jdW1lbnRhdGlvbi1wYWdlJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZWFkZXJNZWRpYUxpbmtzKG1lZGlhTGlua3M6IElNZWRpYUxpbmtbXSk6IFBhcnRpYWw8SUhlYWRlckNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBtZWRpYUxpbmtzLFxuICB9O1xufVxuXG4iXX0=","export function provideHeaderNavigation(navigation) {\n return {\n navigation,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZWFkZXItbmF2aWdhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtaGVhZGVyLW5hdmlnYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLHVCQUF1QixDQUFDLFVBQTZCO0lBQ25FLE9BQU87UUFDTCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSGVhZGVyQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vcHJvdmlkZS1oZWFkZXInO1xuaW1wb3J0IHsgSUhlYWRlck1lbnVMaW5rIH0gZnJvbSAnLi4vLi4vLi4vZG9jdW1lbnRhdGlvbi1wYWdlJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZWFkZXJOYXZpZ2F0aW9uKG5hdmlnYXRpb246IElIZWFkZXJNZW51TGlua1tdKTogUGFydGlhbDxJSGVhZGVyQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIG5hdmlnYXRpb24sXG4gIH07XG59XG5cbiJdfQ==","export function provideLanguage(lang) {\n return {\n lang,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1sYW5ndWFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtbGFuZ3VhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLGVBQWUsQ0FBQyxJQUFZO0lBQzFDLE9BQU87UUFDTCxJQUFJO0tBQ0wsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gcHJvdmlkZUxhbmd1YWdlKGxhbmc6IHN0cmluZyk6IElMYW5ndWFnZUNvbmZpZ3VyYXRpb24ge1xuICByZXR1cm4ge1xuICAgIGxhbmcsXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxhbmd1YWdlQ29uZmlndXJhdGlvbiB7XG4gIGxhbmc6IHN0cmluZztcbn1cbiJdfQ==","export function provideLogo(logo) {\n return {\n logo,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1sb2dvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1sb2dvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBWTtJQUN0QyxPQUFPO1FBQ0wsSUFBSTtLQUNMLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVMb2dvKGxvZ286IHN0cmluZyk6IElMb2dvQ29uZmlndXJhdGlvbiB7XG4gIHJldHVybiB7XG4gICAgbG9nbyxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTG9nb0NvbmZpZ3VyYXRpb24ge1xuICBsb2dvOiBzdHJpbmc7XG59XG4iXX0=","export function provideTitle(title) {\n return {\n title,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS10aXRsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtdGl0bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFlBQVksQ0FBQyxLQUFhO0lBQ3hDLE9BQU87UUFDTCxLQUFLO0tBQ04sQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gcHJvdmlkZVRpdGxlKHRpdGxlOiBzdHJpbmcpOiBJVGl0bGVDb25maWd1cmF0aW9uIHtcbiAgcmV0dXJuIHtcbiAgICB0aXRsZSxcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVGl0bGVDb25maWd1cmF0aW9uIHtcbiAgdGl0bGU6IHN0cmluZztcbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const HEADER_CONFIGURATION_PROVIDER = new InjectionToken('HEADER_CONFIGURATION_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9kb21haW4vcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsSUFBSSxjQUFjLENBQXVCLCtCQUErQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhlYWRlckNvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzJztcblxuZXhwb3J0IGNvbnN0IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSID0gbmV3IEluamVjdGlvblRva2VuPElIZWFkZXJDb25maWd1cmF0aW9uPignSEVBREVSX0NPTkZJR1VSQVRJT05fUFJPVklERVInKTtcblxuZXhwb3J0IGludGVyZmFjZSBJSGVhZGVyQ29uZmlndXJhdGlvblN0b3JlIHtcbiAgZ2V0SGVhZGVyKCk6IElIZWFkZXJDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkO1xufVxuIl19","import { Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class PopoverService {\n _message = signal(null, ...(ngDevMode ? [{ debugName: \"_message\" }] : []));\n get message() {\n return this._message.asReadonly();\n }\n show(message, timeout = 2000) {\n this._message.set(message);\n setTimeout(() => this._message.set(null), timeout);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PopoverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PopoverService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PopoverService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi9zZXJ2aWNlcy9wb3BvdmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNELE1BQU0sT0FBTyxjQUFjO0lBQ1IsUUFBUSxHQUFHLE1BQU0sQ0FBZ0IsSUFBSSxvREFBQyxDQUFDO0lBRXhELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLElBQUksQ0FBQyxPQUFlLEVBQUUsT0FBTyxHQUFHLElBQUk7UUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JELENBQUM7dUdBVlUsY0FBYzsyR0FBZCxjQUFjLGNBRmIsTUFBTTs7MkZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBTaWduYWwsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlclNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZXNzYWdlID0gc2lnbmFsPHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG4gIHB1YmxpYyBnZXQgbWVzc2FnZSgpOiBTaWduYWw8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLl9tZXNzYWdlLmFzUmVhZG9ubHkoKTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93KG1lc3NhZ2U6IHN0cmluZywgdGltZW91dCA9IDIwMDApOiB2b2lkIHtcbiAgICB0aGlzLl9tZXNzYWdlLnNldChtZXNzYWdlKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX21lc3NhZ2Uuc2V0KG51bGwpLCB0aW1lb3V0KTtcbiAgfVxufVxuIl19","import { inject, Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { DOCUMENT_ELEMENT, LOCAL_STORAGE, WINDOW } from '../common';\nimport * as i0 from \"@angular/core\";\nexport class ThemeService {\n _localStorage = inject(LOCAL_STORAGE, { optional: true });\n _window = inject(WINDOW, { optional: true });\n _theme = new Subject();\n _docElement = inject(DOCUMENT_ELEMENT);\n get theme$() {\n return this._theme.asObservable();\n }\n initialize() {\n if (this.getPreferredTheme() === 'dark' && !this._isDocumentContainsDarkTheme()) {\n this._docElement.classList.add('dark');\n this._localStorage?.setItem('preferred-theme', 'dark');\n }\n }\n updateTheme() {\n this._theme.next();\n }\n getPreferredTheme() {\n return this._getItem('preferred-theme')\n || (this._matchMedia('(prefers-color-scheme: dark)')?.matches ? 'dark' : 'light');\n }\n _getItem(key) {\n return this._localStorage?.getItem?.(key) || null;\n }\n _matchMedia(query) {\n return this._window?.matchMedia?.(query) || { matches: false };\n }\n _isDocumentContainsDarkTheme() {\n return this._docElement.classList.contains('dark');\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS90aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBR3BFLE1BQU0sT0FBTyxZQUFZO0lBQ04sYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxRCxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLE1BQU0sR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQzdCLFdBQVcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUV4RCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxFQUFFLENBQUM7WUFDaEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pELENBQUM7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDO2VBQ2xDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRU8sUUFBUSxDQUFDLEdBQVc7UUFDMUIsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUNwRCxDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWE7UUFDL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBb0IsQ0FBQztJQUNuRixDQUFDO0lBRU8sNEJBQTRCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELENBQUM7dUdBcENVLFlBQVk7MkdBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRE9DVU1FTlRfRUxFTUVOVCwgTE9DQUxfU1RPUkFHRSwgV0lORE9XIH0gZnJvbSAnLi4vY29tbW9uJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRoZW1lU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2xvY2FsU3RvcmFnZSA9IGluamVjdChMT0NBTF9TVE9SQUdFLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF93aW5kb3cgPSBpbmplY3QoV0lORE9XLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvY0VsZW1lbnQgPSBpbmplY3QoRE9DVU1FTlRfRUxFTUVOVCk7XG5cbiAgcHVibGljIGdldCB0aGVtZSQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3RoZW1lLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZ2V0UHJlZmVycmVkVGhlbWUoKSA9PT0gJ2RhcmsnICYmICF0aGlzLl9pc0RvY3VtZW50Q29udGFpbnNEYXJrVGhlbWUoKSkge1xuICAgICAgdGhpcy5fZG9jRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkYXJrJyk7XG4gICAgICB0aGlzLl9sb2NhbFN0b3JhZ2U/LnNldEl0ZW0oJ3ByZWZlcnJlZC10aGVtZScsICdkYXJrJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZVRoZW1lKCk6IHZvaWQge1xuICAgIHRoaXMuX3RoZW1lLm5leHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRQcmVmZXJyZWRUaGVtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9nZXRJdGVtKCdwcmVmZXJyZWQtdGhlbWUnKVxuICAgICAgfHwgKHRoaXMuX21hdGNoTWVkaWEoJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknKT8ubWF0Y2hlcyA/ICdkYXJrJyA6ICdsaWdodCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0SXRlbShrZXk6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9sb2NhbFN0b3JhZ2U/LmdldEl0ZW0/LihrZXkpIHx8IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9tYXRjaE1lZGlhKHF1ZXJ5OiBzdHJpbmcpOiBNZWRpYVF1ZXJ5TGlzdCB7XG4gICAgcmV0dXJuIHRoaXMuX3dpbmRvdz8ubWF0Y2hNZWRpYT8uKHF1ZXJ5KSB8fCB7IG1hdGNoZXM6IGZhbHNlIH0gYXMgTWVkaWFRdWVyeUxpc3Q7XG4gIH1cblxuICBwcml2YXRlIF9pc0RvY3VtZW50Q29udGFpbnNEYXJrVGhlbWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RvY0VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdkYXJrJyk7XG4gIH1cbn1cbiJdfQ==","import { from, map, of, switchMap } from 'rxjs';\nexport function copyToClipboard(value) {\n const blob = new Blob([value], { type: 'text/plain' });\n const data = [new ClipboardItem({ [blob.type]: blob })];\n // @ts-ignore\n return from(window?.navigator.permissions.query({ name: 'clipboard-write' })).pipe(map((permission) => permission.state !== 'denied'), switchMap((isGranted) => {\n if (isGranted) {\n return from(navigator.clipboard.write(data));\n }\n return of(undefined);\n }));\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS10by1jbGlwYm9hcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL3V0aWxzL2NvcHktdG8tY2xpcGJvYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxLQUFhO0lBQzNDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUUsS0FBSyxDQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN6RCxNQUFNLElBQUksR0FBRyxDQUFFLElBQUksYUFBYSxDQUFDLEVBQUUsQ0FBRSxJQUFJLENBQUMsSUFBSSxDQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBRSxDQUFDO0lBRTVELGFBQWE7SUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoRixHQUFHLENBQUMsQ0FBQyxVQUE0QixFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxFQUNwRSxTQUFTLENBQUMsQ0FBQyxTQUFrQixFQUFFLEVBQUU7UUFDL0IsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZCLENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZnJvbSwgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjb3B5VG9DbGlwYm9hcmQodmFsdWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55IHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbIHZhbHVlIF0sIHsgdHlwZTogJ3RleHQvcGxhaW4nIH0pO1xuICBjb25zdCBkYXRhID0gWyBuZXcgQ2xpcGJvYXJkSXRlbSh7IFsgYmxvYi50eXBlIF06IGJsb2IgfSkgXTtcblxuICAvLyBAdHMtaWdub3JlXG4gIHJldHVybiBmcm9tKHdpbmRvdz8ubmF2aWdhdG9yLnBlcm1pc3Npb25zLnF1ZXJ5KHsgbmFtZTogJ2NsaXBib2FyZC13cml0ZScgfSkpLnBpcGUoXG4gICAgbWFwKChwZXJtaXNzaW9uOiBQZXJtaXNzaW9uU3RhdHVzKSA9PiBwZXJtaXNzaW9uLnN0YXRlICE9PSAnZGVuaWVkJyksXG4gICAgc3dpdGNoTWFwKChpc0dyYW50ZWQ6IGJvb2xlYW4pID0+IHtcbiAgICAgIGlmIChpc0dyYW50ZWQpIHtcbiAgICAgICAgcmV0dXJuIGZyb20obmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZShkYXRhKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICB9KSxcbiAgKTtcbn1cbiJdfQ==","import { inject, InjectionToken } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nexport const DOCUMENT_ELEMENT = new InjectionToken('DOCUMENT_ELEMENT', {\n factory: () => inject(DOCUMENT).documentElement,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vdXRpbHMvZG9jdW1lbnQtZWxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFM0MsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQWMsa0JBQWtCLEVBQUU7SUFDbEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxlQUFlO0NBQ2hELENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5leHBvcnQgY29uc3QgRE9DVU1FTlRfRUxFTUVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxIVE1MRWxlbWVudD4oJ0RPQ1VNRU5UX0VMRU1FTlQnLCB7XG4gIGZhY3Rvcnk6ICgpID0+IGluamVjdChET0NVTUVOVCkuZG9jdW1lbnRFbGVtZW50LFxufSk7XG4iXX0=","import { DOCUMENT } from '@angular/common';\nimport { inject, InjectionToken } from '@angular/core';\nexport const WINDOW = new InjectionToken('F_WINDOW', {\n factory: () => {\n const { defaultView } = inject(DOCUMENT);\n if (!defaultView) {\n throw new Error('Window is not available');\n }\n return defaultView;\n },\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2NvbW1vbi91dGlscy93aW5kb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBUyxVQUFVLEVBQUU7SUFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBRTtRQUNaLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBRUQsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IFdJTkRPVyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxXaW5kb3c+KCdGX1dJTkRPVycsIHtcbiAgZmFjdG9yeTogKCkgPT4ge1xuICAgIGNvbnN0IHsgZGVmYXVsdFZpZXcgfSA9IGluamVjdChET0NVTUVOVCk7XG5cbiAgICBpZiAoIWRlZmF1bHRWaWV3KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1dpbmRvdyBpcyBub3QgYXZhaWxhYmxlJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlZmF1bHRWaWV3O1xuICB9LFxufSk7XG4iXX0=","import { inject, InjectionToken } from '@angular/core';\nimport { WINDOW } from './window';\nexport const LOCAL_STORAGE = new InjectionToken('F_LOCAL_STORAGE', {\n factory: () => inject(WINDOW).localStorage,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9jb21tb24vdXRpbHMvbG9jYWwtc3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWxDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxJQUFJLGNBQWMsQ0FBVSxpQkFBaUIsRUFBRTtJQUMxRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVk7Q0FDM0MsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBXSU5ET1cgfSBmcm9tICcuL3dpbmRvdyc7XG5cbmV4cG9ydCBjb25zdCBMT0NBTF9TVE9SQUdFID0gbmV3IEluamVjdGlvblRva2VuPFN0b3JhZ2U+KCdGX0xPQ0FMX1NUT1JBR0UnLCB7XG4gIGZhY3Rvcnk6ICgpID0+IGluamVjdChXSU5ET1cpLmxvY2FsU3RvcmFnZSxcbn0pO1xuIl19","import { inject, InjectionToken } from '@angular/core';\nimport { WINDOW } from './window';\nexport const LOCATION = new InjectionToken('F_LOCATION', {\n factory: () => inject(WINDOW).location,\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL3V0aWxzL2xvY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFXLFlBQVksRUFBRTtJQUNqRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVE7Q0FDdkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBXSU5ET1cgfSBmcm9tICcuL3dpbmRvdyc7XG5cbmV4cG9ydCBjb25zdCBMT0NBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxMb2NhdGlvbj4oJ0ZfTE9DQVRJT04nLCB7XG4gIGZhY3Rvcnk6ICgpID0+IGluamVjdChXSU5ET1cpLmxvY2F0aW9uLFxufSk7XG4iXX0=","import { inject, InjectionToken, PLATFORM_ID } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nexport const IS_BROWSER_PLATFORM = new InjectionToken('IS_BROWSER_PLATFORM', {\n factory() {\n return isPlatformBrowser(inject(PLATFORM_ID));\n },\n});\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvY29tbW9uL3V0aWxzL3BsYXRmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVwRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FBVSxxQkFBcUIsRUFBRTtJQUNwRixPQUFPO1FBQ0wsT0FBTyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuZXhwb3J0IGNvbnN0IElTX0JST1dTRVJfUExBVEZPUk0gPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oJ0lTX0JST1dTRVJfUExBVEZPUk0nLCB7XG4gIGZhY3RvcnkoKSB7XG4gICAgcmV0dXJuIGlzUGxhdGZvcm1Ccm93c2VyKGluamVjdChQTEFURk9STV9JRCkpO1xuICB9LFxufSk7XG4iXX0=","import { DOCUMENT } from '@angular/common';\nimport { inject, Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class FHeadTagService {\n _document = inject(DOCUMENT);\n setTitle(title) {\n this._document.title = title || '';\n }\n setDescription(description) {\n const meta = this._getDescription() || this._createElement('meta');\n meta.setAttribute('name', 'description');\n meta.setAttribute('content', description);\n }\n _getDescription() {\n return this._document.querySelector(`meta[name=\"description\"]`) || null;\n }\n setCanonical(url) {\n const link = this._getCanonical() || this._createElement('link');\n link.setAttribute('rel', 'canonical');\n link.setAttribute('href', url);\n }\n _getCanonical() {\n return this._document.querySelector(`link[rel=\"canonical\"]`) || null;\n }\n updateTag(tag) {\n const meta = this._getMetaTag(tag) || this._createElement('meta');\n meta.setAttribute('property', tag.property);\n meta.setAttribute('content', tag.content);\n }\n _getMetaTag(tag) {\n return this._document.querySelector(`meta[property=\"${tag.property}\"]`) || null;\n }\n _createElement(tag) {\n const element = this._document.createElement(tag);\n const head = this._document.getElementsByTagName('head')[0];\n head.appendChild(element);\n return element;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHeadTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHeadTagService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHeadTagService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1oZWFkLXRhZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9hbmFseXRpY3MvY29tbW9uLXNlcnZpY2VzL2YtaGVhZC10YWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR25ELE1BQU0sT0FBTyxlQUFlO0lBRVQsU0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV2QyxRQUFRLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFTSxjQUFjLENBQUMsV0FBbUI7UUFDdkMsTUFBTSxJQUFJLEdBQW9CLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFrQixNQUFNLENBQUMsQ0FBQztRQUNyRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sZUFBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLDBCQUEwQixDQUFDLElBQUksSUFBSSxDQUFDO0lBQzFFLENBQUM7SUFFTSxZQUFZLENBQUMsR0FBVztRQUM3QixNQUFNLElBQUksR0FBb0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQWtCLE1BQU0sQ0FBQyxDQUFDO1FBQ25HLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxhQUFhO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDdkUsQ0FBQztJQUVNLFNBQVMsQ0FBQyxHQUFhO1FBQzVCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBa0IsTUFBTSxDQUFDLENBQUM7UUFDbkYsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sV0FBVyxDQUFDLEdBQWE7UUFDL0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxrQkFBbUIsR0FBRyxDQUFDLFFBQVMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3BGLENBQUM7SUFFTyxjQUFjLENBQXdCLEdBQVc7UUFDdkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFTLENBQUM7UUFDMUQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBRSxDQUFDLENBQUUsQ0FBQztRQUM5RCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFCLE9BQU8sT0FBbUIsQ0FBQztJQUM3QixDQUFDO3VHQTVDVSxlQUFlOzJHQUFmLGVBQWUsY0FERixNQUFNOzsyRkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBGSGVhZFRhZ1NlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcblxuICBwdWJsaWMgc2V0VGl0bGUodGl0bGU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX2RvY3VtZW50LnRpdGxlID0gdGl0bGUgfHwgJyc7XG4gIH1cblxuICBwdWJsaWMgc2V0RGVzY3JpcHRpb24oZGVzY3JpcHRpb246IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IG1ldGE6IEhUTUxNZXRhRWxlbWVudCA9IHRoaXMuX2dldERlc2NyaXB0aW9uKCkgfHwgdGhpcy5fY3JlYXRlRWxlbWVudDxIVE1MTWV0YUVsZW1lbnQ+KCdtZXRhJyk7XG4gICAgbWV0YS5zZXRBdHRyaWJ1dGUoJ25hbWUnLCAnZGVzY3JpcHRpb24nKTtcbiAgICBtZXRhLnNldEF0dHJpYnV0ZSgnY29udGVudCcsIGRlc2NyaXB0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldERlc2NyaXB0aW9uKCk6IEhUTUxNZXRhRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBtZXRhW25hbWU9XCJkZXNjcmlwdGlvblwiXWApIHx8IG51bGw7XG4gIH1cblxuICBwdWJsaWMgc2V0Q2Fub25pY2FsKHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgbGluazogSFRNTExpbmtFbGVtZW50ID0gdGhpcy5fZ2V0Q2Fub25pY2FsKCkgfHwgdGhpcy5fY3JlYXRlRWxlbWVudDxIVE1MTGlua0VsZW1lbnQ+KCdsaW5rJyk7XG4gICAgbGluay5zZXRBdHRyaWJ1dGUoJ3JlbCcsICdjYW5vbmljYWwnKTtcbiAgICBsaW5rLnNldEF0dHJpYnV0ZSgnaHJlZicsIHVybCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDYW5vbmljYWwoKTogSFRNTExpbmtFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYGxpbmtbcmVsPVwiY2Fub25pY2FsXCJdYCkgfHwgbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVUYWcodGFnOiBJTWV0YVRhZyk6IHZvaWQge1xuICAgIGNvbnN0IG1ldGEgPSB0aGlzLl9nZXRNZXRhVGFnKHRhZykgfHwgdGhpcy5fY3JlYXRlRWxlbWVudDxIVE1MTWV0YUVsZW1lbnQ+KCdtZXRhJyk7XG4gICAgbWV0YS5zZXRBdHRyaWJ1dGUoJ3Byb3BlcnR5JywgdGFnLnByb3BlcnR5KTtcbiAgICBtZXRhLnNldEF0dHJpYnV0ZSgnY29udGVudCcsIHRhZy5jb250ZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldE1ldGFUYWcodGFnOiBJTWV0YVRhZyk6IEhUTUxNZXRhRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBtZXRhW3Byb3BlcnR5PVwiJHsgdGFnLnByb3BlcnR5IH1cIl1gKSB8fCBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlRWxlbWVudDxURWxlbWVudCBleHRlbmRzIE5vZGU+KHRhZzogc3RyaW5nKTogVEVsZW1lbnQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9kb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZykgYXMgTm9kZTtcbiAgICBjb25zdCBoZWFkID0gdGhpcy5fZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVsgMCBdO1xuICAgIGhlYWQuYXBwZW5kQ2hpbGQoZWxlbWVudCk7XG5cbiAgICByZXR1cm4gZWxlbWVudCBhcyBURWxlbWVudDtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNZXRhVGFnIHtcblxuICBwcm9wZXJ0eTogc3RyaW5nO1xuXG4gIGNvbnRlbnQ6IHN0cmluZztcbn1cbiJdfQ==","export class HandleNavigationLinksHandler {\n handle(request) {\n const target = this._getClosestAnchorTag(this._getTargetElement(request.event));\n if (target && this._hasHref(target)) {\n request.event.preventDefault();\n const href = target.getAttribute('href');\n if (!this._isExternalLink(href)) {\n this._navigateInternalLink(href, request.router);\n }\n else {\n window.open(href, '_blank');\n }\n }\n }\n _getTargetElement(event) {\n return event?.target;\n }\n _getClosestAnchorTag(element) {\n return element?.closest('a');\n }\n _hasHref(element) {\n return element.hasAttribute('href');\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n _navigateInternalLink(href, router) {\n if (href.startsWith('/')) {\n href = href.substring(1);\n }\n router.navigate([href]).then();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLW5hdmlnYXRpb24tbGlua3MuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9tYWluL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLDRCQUE0QjtJQUVoQyxNQUFNLENBQUMsT0FBcUM7UUFDakQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVoRixJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDcEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUUvQixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ25ELENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQTtZQUM3QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUFZO1FBQ3BDLE9BQU8sS0FBSyxFQUFFLE1BQXFCLENBQUM7SUFDdEMsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE9BQTJCO1FBQ3RELE9BQU8sT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU8sUUFBUSxDQUFDLE9BQW9CO1FBQ25DLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU8sZUFBZSxDQUFDLElBQVk7UUFDbEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLHFCQUFxQixDQUFDLElBQVksRUFBRSxNQUFjO1FBQ3hELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFDRCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NSZXF1ZXN0IH0gZnJvbSAnLi9oYW5kbGUtbmF2aWdhdGlvbi1saW5rcy5yZXF1ZXN0JztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCBjbGFzcyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NIYW5kbGVyIHtcblxuICBwdWJsaWMgaGFuZGxlKHJlcXVlc3Q6IEhhbmRsZU5hdmlnYXRpb25MaW5rc1JlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSB0aGlzLl9nZXRDbG9zZXN0QW5jaG9yVGFnKHRoaXMuX2dldFRhcmdldEVsZW1lbnQocmVxdWVzdC5ldmVudCkpO1xuXG4gICAgaWYgKHRhcmdldCAmJiB0aGlzLl9oYXNIcmVmKHRhcmdldCkpIHtcbiAgICAgIHJlcXVlc3QuZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgY29uc3QgaHJlZiA9IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSE7XG4gICAgICBpZiAoIXRoaXMuX2lzRXh0ZXJuYWxMaW5rKGhyZWYpKSB7XG4gICAgICAgIHRoaXMuX25hdmlnYXRlSW50ZXJuYWxMaW5rKGhyZWYsIHJlcXVlc3Qucm91dGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHdpbmRvdy5vcGVuKGhyZWYsICdfYmxhbmsnKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldFRhcmdldEVsZW1lbnQoZXZlbnQ6IEV2ZW50KTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gZXZlbnQ/LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENsb3Nlc3RBbmNob3JUYWcoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsKTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgICByZXR1cm4gZWxlbWVudD8uY2xvc2VzdCgnYScpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFzSHJlZihlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnaHJlZicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNFeHRlcm5hbExpbmsoaHJlZjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGhyZWYuc3RhcnRzV2l0aCgnd3d3JykgfHwgaHJlZi5zdGFydHNXaXRoKCdodHRwJyk7XG4gIH1cblxuICBwcml2YXRlIF9uYXZpZ2F0ZUludGVybmFsTGluayhocmVmOiBzdHJpbmcsIHJvdXRlcjogUm91dGVyKTogdm9pZCB7XG4gICAgaWYgKGhyZWYuc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICBocmVmID0gaHJlZi5zdWJzdHJpbmcoMSk7XG4gICAgfVxuICAgIHJvdXRlci5uYXZpZ2F0ZShbaHJlZl0pLnRoZW4oKTtcbiAgfVxufVxuIl19","export class HandleNavigationLinksRequest {\n event;\n window;\n router;\n constructor(event, window, router) {\n this.event = event;\n this.window = window;\n this.router = router;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLW5hdmlnYXRpb24tbGlua3MucmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9tYWluL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzL2hhbmRsZS1uYXZpZ2F0aW9uLWxpbmtzLnJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLDRCQUE0QjtJQUU5QjtJQUNBO0lBQ0E7SUFIVCxZQUNTLEtBQWlCLEVBQ2pCLE1BQWMsRUFDZCxNQUFjO1FBRmQsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUV2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5leHBvcnQgY2xhc3MgSGFuZGxlTmF2aWdhdGlvbkxpbmtzUmVxdWVzdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBldmVudDogTW91c2VFdmVudCxcbiAgICBwdWJsaWMgd2luZG93OiBXaW5kb3csXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxuICApIHtcbiAgfVxufVxuIl19","export function provide404Markdown(notFoundMarkdown) {\n return {\n notFoundMarkdown,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS00MDQtbWFya2Rvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLTQwNC1tYXJrZG93bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsa0JBQWtCLENBQUMsZ0JBQXdCO0lBQ3pELE9BQU87UUFDTCxnQkFBZ0I7S0FDakIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWRvY3VtZW50YXRpb24tY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlNDA0TWFya2Rvd24obm90Rm91bmRNYXJrZG93bjogc3RyaW5nKTogUGFydGlhbDxJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBub3RGb3VuZE1hcmtkb3duLFxuICB9O1xufVxuIl19","export function defineLazyComponent(selector, loader) {\n return {\n selector,\n component: extractComponent(loader),\n };\n}\nexport function provideComponents(components) {\n return {\n components,\n };\n}\nexport function extractComponent(loader) {\n return loader().then(module => {\n const component = Object.values(module).find((v) => typeof v === 'function' && Object.prototype.hasOwnProperty.call(v, 'ɵcmp'));\n if (!component) {\n throw new Error('Component not found');\n }\n return component;\n });\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsUUFBZ0IsRUFDaEIsTUFBOEM7SUFFOUMsT0FBTztRQUNMLFFBQVE7UUFDUixTQUFTLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDO0tBQ3BDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFVBQW1DO0lBQ25FLE9BQU87UUFDTCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsTUFBOEM7SUFDN0UsT0FBTyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDNUIsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQzFDLENBQUMsQ0FBQyxFQUFrQixFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssVUFBVSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQ2xHLENBQUM7UUFDRixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktZG9jdW1lbnRhdGlvbi1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSB9IGZyb20gJy4uLy4uLy4uL2R5bmFtaWMtY29tcG9uZW50cyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWZpbmVMYXp5Q29tcG9uZW50KFxuICBzZWxlY3Rvcjogc3RyaW5nLFxuICBsb2FkZXI6ICgpID0+IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+LFxuKTogSUR5bmFtaWNDb21wb25lbnRJdGVtIHtcbiAgcmV0dXJuIHtcbiAgICBzZWxlY3RvcixcbiAgICBjb21wb25lbnQ6IGV4dHJhY3RDb21wb25lbnQobG9hZGVyKSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVDb21wb25lbnRzKGNvbXBvbmVudHM6IElEeW5hbWljQ29tcG9uZW50SXRlbVtdKTogUGFydGlhbDxJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBjb21wb25lbnRzLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdENvbXBvbmVudChsb2FkZXI6ICgpID0+IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+KTogUHJvbWlzZTxUeXBlPGFueT4+IHtcbiAgcmV0dXJuIGxvYWRlcigpLnRoZW4obW9kdWxlID0+IHtcbiAgICBjb25zdCBjb21wb25lbnQgPSBPYmplY3QudmFsdWVzKG1vZHVsZSkuZmluZChcbiAgICAgICh2KTogdiBpcyBUeXBlPGFueT4gPT4gdHlwZW9mIHYgPT09ICdmdW5jdGlvbicgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHYsICfJtWNtcCcpLFxuICAgICk7XG4gICAgaWYgKCFjb21wb25lbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ29tcG9uZW50IG5vdCBmb3VuZCcpO1xuICAgIH1cbiAgICByZXR1cm4gY29tcG9uZW50O1xuICB9KTtcbn1cbiJdfQ==","export function provideDirectory(docsDir) {\n return {\n docsDir,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1kaXJlY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWRpcmVjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsT0FBZTtJQUM5QyxPQUFPO1FBQ0wsT0FBTztLQUNSLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uIH0gZnJvbSAnLi4vaS1kb2N1bWVudGF0aW9uLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZURpcmVjdG9yeShkb2NzRGlyOiBzdHJpbmcpOiBQYXJ0aWFsPElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIGRvY3NEaXIsXG4gIH07XG59XG4iXX0=","import { InjectionToken } from '@angular/core';\nexport function provideDocumentation(configuration) {\n const merged = Object.assign({}, ...configuration.providers);\n return {\n provide: DOCUMENTATION_CONFIGURATION, useValue: merged,\n };\n}\nexport const DOCUMENTATION_CONFIGURATION = new InjectionToken('DOCUMENTATION_CONFIGURATION');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1kb2N1bWVudGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1kb2N1bWVudGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxVQUFVLG9CQUFvQixDQUFDLGFBQWdDO0lBQ25FLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdELE9BQU87UUFDTCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsUUFBUSxFQUFFLE1BQU07S0FDdkQsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FBOEIsNkJBQTZCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktZG9jdW1lbnRhdGlvbi1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRG9jdW1lbnRhdGlvbihjb25maWd1cmF0aW9uOiBJUHJvdmlkZXJJbnN0YW5jZSkge1xuICBjb25zdCBtZXJnZWQgPSBPYmplY3QuYXNzaWduKHt9LCAuLi5jb25maWd1cmF0aW9uLnByb3ZpZGVycyk7XG4gIHJldHVybiB7XG4gICAgcHJvdmlkZTogRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OLCB1c2VWYWx1ZTogbWVyZ2VkLFxuICB9O1xufVxuXG5leHBvcnQgY29uc3QgRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OID0gbmV3IEluamVjdGlvblRva2VuPElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbj4oJ0RPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTicpO1xuXG5pbnRlcmZhY2UgSVByb3ZpZGVySW5zdGFuY2Uge1xuICBwcm92aWRlcnM6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPltdO1xufVxuIl19","export function provideMeta(meta) {\n return {\n meta,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1tZXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1tZXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBZTtJQUN6QyxPQUFPO1FBQ0wsSUFBSTtLQUNMLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1ldGFEYXRhIH0gZnJvbSAnLi4vLi4vYW5hbHl0aWNzJztcbmltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktZG9jdW1lbnRhdGlvbi1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVNZXRhKG1ldGE6IElNZXRhRGF0YSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgbWV0YSxcbiAgfTtcbn1cbiJdfQ==","export function provideFooterNavigation(navigation) {\n return {\n footer: {\n navigation,\n },\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1mb290ZXItbmF2aWdhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtZm9vdGVyLW5hdmlnYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxVQUFxQztJQUVyQyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sVUFBVTtTQUNYO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24sIElNYXJrZG93bkZvb3Rlck5hdmlnYXRpb24gfSBmcm9tICcuLi8uLi9pbmRleCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRm9vdGVyTmF2aWdhdGlvbihcbiAgbmF2aWdhdGlvbjogSU1hcmtkb3duRm9vdGVyTmF2aWdhdGlvbixcbik6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgZm9vdGVyOiB7XG4gICAgICBuYXZpZ2F0aW9uLFxuICAgIH0sXG4gIH07XG59XG5cbiJdfQ==","export function provideNavigation(...navigation) {\n return {\n navigation,\n };\n}\nexport function defineNavigationGroup(name, items) {\n return {\n text: name,\n items,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1uYXZpZ2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1uYXZpZ2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxHQUFHLFVBQThCO0lBQ2pFLE9BQU87UUFDTCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUMsSUFBd0IsRUFBRSxLQUF3QjtJQUN0RixPQUFPO1FBQ0wsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLO0tBQ04sQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWRvY3VtZW50YXRpb24tY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBJTmF2aWdhdGlvbkdyb3VwLCBJTmF2aWdhdGlvbkl0ZW0gfSBmcm9tICcuLi8uLi9jb21wb25lbnRzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVOYXZpZ2F0aW9uKC4uLm5hdmlnYXRpb246IElOYXZpZ2F0aW9uR3JvdXBbXSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgbmF2aWdhdGlvbixcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlZmluZU5hdmlnYXRpb25Hcm91cChuYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQsIGl0ZW1zOiBJTmF2aWdhdGlvbkl0ZW1bXSk6IElOYXZpZ2F0aW9uR3JvdXAge1xuICByZXR1cm4ge1xuICAgIHRleHQ6IG5hbWUsXG4gICAgaXRlbXMsXG4gIH07XG59XG4iXX0=","export function provideTableOfContent(tableOfContent = {\n title: 'In this article',\n range: { start: 2, end: 6 },\n}) {\n return {\n tableOfContent,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS10YWJsZS1vZi1jb250ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS10YWJsZS1vZi1jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxpQkFBeUM7SUFDN0UsS0FBSyxFQUFFLGlCQUFpQjtJQUN4QixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUU7Q0FDNUI7SUFDQyxPQUFPO1FBQ0wsY0FBYztLQUNmLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVRhYmxlT2ZDb250ZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBJRG9jdW1lbnRhdGlvbkNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWRvY3VtZW50YXRpb24tY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlVGFibGVPZkNvbnRlbnQodGFibGVPZkNvbnRlbnQ6IElUYWJsZU9mQ29udGVudCB8IG51bGwgPSB7XG4gIHRpdGxlOiAnSW4gdGhpcyBhcnRpY2xlJyxcbiAgcmFuZ2U6IHsgc3RhcnQ6IDIsIGVuZDogNiB9LFxufSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgdGFibGVPZkNvbnRlbnQsXG4gIH07XG59XG4iXX0=","import { inject, Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter, map, startWith } from 'rxjs';\nimport { FHeadTagService } from './f-head-tag.service';\nimport { tap } from 'rxjs/operators';\nimport { DOCUMENTATION_CONFIGURATION } from '../../domain';\nimport { LOCATION } from '../../../common';\nimport * as i0 from \"@angular/core\";\nexport class FMetaService {\n _location = inject(LOCATION);\n _router = inject(Router);\n _headTag = inject(FHeadTagService);\n _configuration = inject(DOCUMENTATION_CONFIGURATION);\n changes() {\n return this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._router.url), tap((currentUrl) => {\n const defaultData = this._configuration.meta;\n if (!defaultData)\n return;\n const data = { ...defaultData };\n const item = this._findDocItemByUrl(this._findDocGroupByUrl(currentUrl), currentUrl);\n if (item) {\n data.title = `${item.pageTitle || item.text} | ${defaultData.app_name}`;\n data.url = this._buildAbsoluteUrl(currentUrl);\n data.canonical = item.canonical;\n data.description = item.description || defaultData.description;\n data.image = item.image || defaultData.image;\n data.image_width = item.image_width || defaultData.image_width;\n data.image_height = item.image_height || defaultData.image_height;\n data.image_type = item.image_type || defaultData.image_type;\n }\n if (!data.url) {\n data.url = this._buildAbsoluteUrl(currentUrl);\n }\n if (data.image) {\n data.image = this._toAbsoluteUrl(data.image);\n }\n this._updateMetaTags(data);\n }));\n }\n dispose() {\n if (!this._configuration.meta) {\n return;\n }\n this._updateMetaTags(this._configuration.meta);\n }\n _findDocGroupByUrl(url) {\n return (this._configuration.navigation || []).find((g) => g.items.find((i) => url.endsWith(i.link)));\n }\n _findDocItemByUrl(group, url) {\n return (group?.items || []).find((i) => url.endsWith(i.link));\n }\n _buildAbsoluteUrl(url) {\n try {\n return new URL(url, this._location.origin).toString();\n }\n catch {\n return this._location.origin + url;\n }\n }\n _toAbsoluteUrl(maybeRelative) {\n try {\n return new URL(maybeRelative, this._location.origin).toString();\n }\n catch {\n return maybeRelative;\n }\n }\n _updateMetaTags(item) {\n this._headTag.setTitle(item.title);\n this._headTag.setDescription(item.description);\n this._headTag.setCanonical(item.canonical || item.url);\n this._headTag.updateTag({ property: 'og:url', content: item.url });\n this._headTag.updateTag({ property: 'og:type', content: item.type });\n this._headTag.updateTag({ property: 'og:title', content: item.title });\n this._headTag.updateTag({ property: 'og:site_name', content: item.title });\n this._headTag.updateTag({ property: 'og:locale', content: item.locale });\n this._headTag.updateTag({ property: 'og:description', content: item.description });\n this._headTag.updateTag({ property: 'og:image', content: item.image });\n this._headTag.updateTag({ property: 'og:image:secure_url', content: item.image });\n this._headTag.updateTag({ property: 'og:image:type', content: item.image_type });\n this._headTag.updateTag({ property: 'og:image:width', content: item.image_width.toString() });\n this._headTag.updateTag({ property: 'og:image:height', content: item.image_height.toString() });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FMetaService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FMetaService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FMetaService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1tZXRhLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2FuYWx5dGljcy9jb21tb24tc2VydmljZXMvZi1tZXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFM0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUczQyxNQUFNLE9BQU8sWUFBWTtJQUNOLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixRQUFRLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ25DLGNBQWMsR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUUvRCxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzdCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQTZCLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxhQUFhLENBQUMsRUFDbEYsR0FBRyxD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eEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBPYnNlcnZhYmxlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElNZXRhRGF0YSB9IGZyb20gJy4vaS1tZXRhLWRhdGEnO1xuaW1wb3J0IHsgRkhlYWRUYWdTZXJ2aWNlIH0gZnJvbSAnLi9mLWhlYWQtdGFnLnNlcnZpY2UnO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OIH0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IElOYXZpZ2F0aW9uR3JvdXAsIElOYXZpZ2F0aW9uSXRlbSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgTE9DQVRJT04gfSBmcm9tICcuLi8uLi8uLi9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRk1ldGFTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9jYXRpb24gPSBpbmplY3QoTE9DQVRJT04pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaGVhZFRhZyA9IGluamVjdChGSGVhZFRhZ1NlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWd1cmF0aW9uID0gaW5qZWN0KERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTik7XG5cbiAgcHVibGljIGNoYW5nZXMoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5fcm91dGVyLmV2ZW50cy5waXBlKFxuICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICAgZmlsdGVyKChlKTogZSBpcyBOYXZpZ2F0aW9uRW5kIHwgbnVsbCA9PiBlID09PSBudWxsIHx8IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICAgIG1hcCgoKSA9PnRoaXMuX3JvdXRlci51cmwpLFxuICAgICAgdGFwKChjdXJyZW50VXJsKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHREYXRhID0gdGhpcy5fY29uZmlndXJhdGlvbi5tZXRhO1xuICAgICAgICBpZiAoIWRlZmF1bHREYXRhKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IHsgLi4uZGVmYXVsdERhdGEgfTtcblxuICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5fZmluZERvY0l0ZW1CeVVybCh0aGlzLl9maW5kRG9jR3JvdXBCeVVybChjdXJyZW50VXJsKSwgY3VycmVudFVybCk7XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgZGF0YS50aXRsZSA9IGAke2l0ZW0ucGFnZVRpdGxlIHx8IGl0ZW0udGV4dH0gfCAke2RlZmF1bHREYXRhLmFwcF9uYW1lfWA7XG4gICAgICAgICAgZGF0YS51cmwgPSB0aGlzLl9idWlsZEFic29sdXRlVXJsKGN1cnJlbnRVcmwpO1xuICAgICAgICAgIGRhdGEuY2Fub25pY2FsID0gaXRlbS5jYW5vbmljYWw7XG4gICAgICAgICAgZGF0YS5kZXNjcmlwdGlvbiA9IGl0ZW0uZGVzY3JpcHRpb24gfHwgZGVmYXVsdERhdGEuZGVzY3JpcHRpb247XG4gICAgICAgICAgZGF0YS5pbWFnZSA9IGl0ZW0uaW1hZ2UgfHwgZGVmYXVsdERhdGEuaW1hZ2U7XG4gICAgICAgICAgZGF0YS5pbWFnZV93aWR0aCA9IGl0ZW0uaW1hZ2Vfd2lkdGggfHwgZGVmYXVsdERhdGEuaW1hZ2Vfd2lkdGg7XG4gICAgICAgICAgZGF0YS5pbWFnZV9oZWlnaHQgPSBpdGVtLmltYWdlX2hlaWdodCB8fCBkZWZhdWx0RGF0YS5pbWFnZV9oZWlnaHQ7XG4gICAgICAgICAgZGF0YS5pbWFnZV90eXBlID0gaXRlbS5pbWFnZV90eXBlIHx8IGRlZmF1bHREYXRhLmltYWdlX3R5cGU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFkYXRhLnVybCkge1xuICAgICAgICAgIGRhdGEudXJsID0gdGhpcy5fYnVpbGRBYnNvbHV0ZVVybChjdXJyZW50VXJsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChkYXRhLmltYWdlKSB7XG4gICAgICAgICAgZGF0YS5pbWFnZSA9IHRoaXMuX3RvQWJzb2x1dGVVcmwoZGF0YS5pbWFnZSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl91cGRhdGVNZXRhVGFncyhkYXRhKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZGlzcG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2NvbmZpZ3VyYXRpb24ubWV0YSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl91cGRhdGVNZXRhVGFncyh0aGlzLl9jb25maWd1cmF0aW9uLm1ldGEpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluZERvY0dyb3VwQnlVcmwodXJsOiBzdHJpbmcpOiBJTmF2aWdhdGlvbkdyb3VwIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKHRoaXMuX2NvbmZpZ3VyYXRpb24ubmF2aWdhdGlvbiB8fCBbXSkuZmluZCgoZzogSU5hdmlnYXRpb25Hcm91cCkgPT4gZy5pdGVtcy5maW5kKChpOiBJTmF2aWdhdGlvbkl0ZW0pID0+IHVybC5lbmRzV2l0aChpLmxpbmspKSk7XG4gIH1cblxuICBwcml2YXRlIF9maW5kRG9jSXRlbUJ5VXJsKGdyb3VwOiBJTmF2aWdhdGlvbkdyb3VwIHwgdW5kZWZpbmVkLCB1cmw6IHN0cmluZyk6IElOYXZpZ2F0aW9uSXRlbSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIChncm91cD8uaXRlbXMgfHwgW10pLmZpbmQoKGk6IElOYXZpZ2F0aW9uSXRlbSkgPT4gdXJsLmVuZHNXaXRoKGkubGluaykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYnVpbGRBYnNvbHV0ZVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgdHJ5IHtcbiAgICAgcmV0dXJuIG5ldyBVUkwodXJsLCB0aGlzLl9sb2NhdGlvbi5vcmlnaW4pLnRvU3RyaW5nKCk7XG4gICAgfSBjYXRjaCB7XG4gICAgIHJldHVybiB0aGlzLl9sb2NhdGlvbi5vcmlnaW4gKyB1cmw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdG9BYnNvbHV0ZVVybChtYXliZVJlbGF0aXZlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHRyeSB7XG4gICAgIHJldHVybiBuZXcgVVJMKG1heWJlUmVsYXRpdmUsIHRoaXMuX2xvY2F0aW9uLm9yaWdpbikudG9TdHJpbmcoKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgcmV0dXJuIG1heWJlUmVsYXRpdmU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlTWV0YVRhZ3MoaXRlbTogSU1ldGFEYXRhKTogdm9pZCB7XG4gICAgdGhpcy5faGVhZFRhZy5zZXRUaXRsZShpdGVtLnRpdGxlKTtcbiAgICB0aGlzLl9oZWFkVGFnLnNldERlc2NyaXB0aW9uKGl0ZW0uZGVzY3JpcHRpb24pO1xuICAgIHRoaXMuX2hlYWRUYWcuc2V0Q2Fub25pY2FsKGl0ZW0uY2Fub25pY2FsIHx8IGl0ZW0udXJsKTtcblxuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzp1cmwnLCBjb250ZW50OiBpdGVtLnVybCB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6dHlwZScsIGNvbnRlbnQ6IGl0ZW0udHlwZSB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6dGl0bGUnLCBjb250ZW50OiBpdGVtLnRpdGxlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzpzaXRlX25hbWUnLCBjb250ZW50OiBpdGVtLnRpdGxlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzpsb2NhbGUnLCBjb250ZW50OiBpdGVtLmxvY2FsZSB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6ZGVzY3JpcHRpb24nLCBjb250ZW50OiBpdGVtLmRlc2NyaXB0aW9uIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzppbWFnZScsIGNvbnRlbnQ6IGl0ZW0uaW1hZ2UgfSk7XG4gICAgdGhpcy5faGVhZFRhZy51cGRhdGVUYWcoeyBwcm9wZXJ0eTogJ29nOmltYWdlOnNlY3VyZV91cmwnLCBjb250ZW50OiBpdGVtLmltYWdlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzppbWFnZTp0eXBlJywgY29udGVudDogaXRlbS5pbWFnZV90eXBlIH0pO1xuICAgIHRoaXMuX2hlYWRUYWcudXBkYXRlVGFnKHsgcHJvcGVydHk6ICdvZzppbWFnZTp3aWR0aCcsIGNvbnRlbnQ6IGl0ZW0uaW1hZ2Vfd2lkdGgudG9TdHJpbmcoKSB9KTtcbiAgICB0aGlzLl9oZWFkVGFnLnVwZGF0ZVRhZyh7IHByb3BlcnR5OiAnb2c6aW1hZ2U6aGVpZ2h0JywgY29udGVudDogaXRlbS5pbWFnZV9oZWlnaHQudG9TdHJpbmcoKSB9KTtcbiAgfVxufVxuXG5cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const TOGGLE_NAVIGATION_COMPONENT = new InjectionToken('TOGGLE_NAVIGATION_COMPONENT');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS10b2dnbGUtbmF2aWdhdGlvbi1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaGFtYnVyZ2VyLWJ1dHRvbi9kb21haW4vaS10b2dnbGUtbmF2aWdhdGlvbi1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8vQyxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FBNkIsNkJBQTZCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRvZ2dsZU5hdmlnYXRpb25Db21wb25lbnQge1xuXG4gIG9uVG9nZ2xlTmF2aWdhdGlvbih2YWx1ZTogYm9vbGVhbik6IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW48SVRvZ2dsZU5hdmlnYXRpb25Db21wb25lbnQ+KCdUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQnKTtcbiJdfQ==","import { ChangeDetectionStrategy, Component, inject, } from '@angular/core';\nimport { TOGGLE_NAVIGATION_COMPONENT } from './domain';\nimport * as i0 from \"@angular/core\";\nexport class HamburgerButton {\n _parent = inject(TOGGLE_NAVIGATION_COMPONENT, {\n optional: true,\n });\n _onShowNavigation() {\n this._parent?.onToggleNavigation(true);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HamburgerButton, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: HamburgerButton, isStandalone: true, selector: \"button[hamburger-button]\", host: { listeners: { \"click\": \"_onShowNavigation()\" } }, ngImport: i0, template: \"<span class=\\\"f-icon hamburger\\\"></span>\\n\\n\", styles: [\":host{background-color:transparent;border:0;display:flex;padding:0;margin-right:16px;color:var(--secondary-text);cursor:pointer}@media (min-width: 960px){:host{display:none}}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HamburgerButton, decorators: [{\n type: Component,\n args: [{ selector: 'button[hamburger-button]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '(click)': '_onShowNavigation()',\n }, template: \"<span class=\\\"f-icon hamburger\\\"></span>\\n\\n\", styles: [\":host{background-color:transparent;border:0;display:flex;padding:0;margin-right:16px;color:var(--secondary-text);cursor:pointer}@media (min-width: 960px){:host{display:none}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFtYnVyZ2VyLWJ1dHRvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvY29tcG9uZW50cy9oYW1idXJnZXItYnV0dG9uL2hhbWJ1cmdlci1idXR0b24udHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaGFtYnVyZ2VyLWJ1dHRvbi9oYW1idXJnZXItYnV0dG9uLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQUUsTUFBTSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBWXZELE1BQU0sT0FBTyxlQUFlO0lBQ1QsT0FBTyxHQUFHLE1BQU0sQ0FBQywyQkFBMkIsRUFBRTtRQUM3RCxRQUFRLEVBQUUsSUFBSTtLQUNmLENBQUMsQ0FBQztJQUVPLGlCQUFpQjtRQUN6QixJQUFJLENBQUMsT0FBTyxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7dUdBUFUsZUFBZTsyRkFBZixlQUFlLDZJQ2hCNUIsOENBRUE7OzJGRGNhLGVBQWU7a0JBVjNCLFNBQVM7K0JBQ0UsMEJBQTBCLGNBR3hCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixTQUFTLEVBQUUscUJBQXFCO3FCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQgfSBmcm9tICcuL2RvbWFpbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2J1dHRvbltoYW1idXJnZXItYnV0dG9uXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9oYW1idXJnZXItYnV0dG9uLmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vaGFtYnVyZ2VyLWJ1dHRvbi5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICcoY2xpY2spJzogJ19vblNob3dOYXZpZ2F0aW9uKCknLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBIYW1idXJnZXJCdXR0b24ge1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQgPSBpbmplY3QoVE9HR0xFX05BVklHQVRJT05fQ09NUE9ORU5ULCB7XG4gICAgb3B0aW9uYWw6IHRydWUsXG4gIH0pO1xuXG4gIHByb3RlY3RlZCBfb25TaG93TmF2aWdhdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9wYXJlbnQ/Lm9uVG9nZ2xlTmF2aWdhdGlvbih0cnVlKTtcbiAgfVxufVxuIiwiPHNwYW4gY2xhc3M9XCJmLWljb24gaGFtYnVyZ2VyXCI+PC9zcGFuPlxuXG4iXX0=","import { computed, inject } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { distinctUntilChanged, map, startWith } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { HEADER_CONFIGURATION_PROVIDER } from '../../../../common';\nexport class HeaderMenuBase {\n _router = inject(Router);\n _baseNav = inject(HEADER_CONFIGURATION_PROVIDER)?.navigation ?? [];\n _url = toSignal(this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._router.url), distinctUntilChanged()), { initialValue: this._router.url });\n navigation = computed(() => {\n const url = this._cleanPath(this._url());\n return this._baseNav.map(item => ({\n ...item,\n isActive: this._isActive(url, this._cleanPath(item.active ?? '')),\n }));\n }, ...(ngDevMode ? [{ debugName: \"navigation\" }] : []));\n _cleanPath(url) {\n return url.split('#')[0].split('?')[0].replace(/\\/{2,}/g, '/').replace(/\\/$/, '');\n }\n _isActive(currentPath, itemLink) {\n if (!itemLink)\n return false;\n return currentPath === itemLink || currentPath.startsWith(itemLink + '/');\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW1lbnUtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvbW9kZWxzL2hlYWRlci1tZW51LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRW5FLE1BQU0sT0FBTyxjQUFjO0lBQ1IsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixRQUFRLEdBQUcsTUFBTSxDQUFDLDZCQUE2QixDQUFDLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztJQUVuRSxJQUFJLEdBQUcsUUFBUSxDQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3RCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQTZCLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxhQUFhLENBQUMsRUFDbEYsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQzNCLG9CQUFvQixFQUFFLENBQ3ZCLEVBQ0QsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FDbkMsQ0FBQztJQUVjLFVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQ3pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEMsR0FBRyxJQUFJO1lBQ1AsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQztTQUNsRSxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUMsc0RBQUMsQ0FBQztJQUVLLFVBQVUsQ0FBQyxHQUFXO1FBQzVCLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFTyxTQUFTLENBQUMsV0FBbUIsRUFBRSxRQUFnQjtRQUNyRCxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzVCLE9BQU8sV0FBVyxLQUFLLFFBQVEsSUFBSSxXQUFXLENBQUMsVUFBVSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUM1RSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIEhlYWRlck1lbnVCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2VOYXYgPSBpbmplY3QoSEVBREVSX0NPTkZJR1VSQVRJT05fUFJPVklERVIpPy5uYXZpZ2F0aW9uID8/IFtdO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3VybCA9IHRvU2lnbmFsKFxuICAgIHRoaXMuX3JvdXRlci5ldmVudHMucGlwZShcbiAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgIGZpbHRlcigoZSk6IGUgaXMgTmF2aWdhdGlvbkVuZCB8IG51bGwgPT4gZSA9PT0gbnVsbCB8fCBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgICBtYXAoKCkgPT4gdGhpcy5fcm91dGVyLnVybCksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICksXG4gICAgeyBpbml0aWFsVmFsdWU6IHRoaXMuX3JvdXRlci51cmwgfSxcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbmF2aWdhdGlvbiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLl9jbGVhblBhdGgodGhpcy5fdXJsKCkpO1xuICAgIHJldHVybiB0aGlzLl9iYXNlTmF2Lm1hcChpdGVtID0+ICh7XG4gICAgICAuLi5pdGVtLFxuICAgICAgaXNBY3RpdmU6IHRoaXMuX2lzQWN0aXZlKHVybCwgdGhpcy5fY2xlYW5QYXRoKGl0ZW0uYWN0aXZlID8/ICcnKSksXG4gICAgfSkpO1xuICB9KTtcblxuICBwcml2YXRlIF9jbGVhblBhdGgodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB1cmwuc3BsaXQoJyMnKVswXS5zcGxpdCgnPycpWzBdLnJlcGxhY2UoL1xcL3syLH0vZywgJy8nKS5yZXBsYWNlKC9cXC8kLywgJycpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNBY3RpdmUoY3VycmVudFBhdGg6IHN0cmluZywgaXRlbUxpbms6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghaXRlbUxpbmspIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gY3VycmVudFBhdGggPT09IGl0ZW1MaW5rIHx8IGN1cnJlbnRQYXRoLnN0YXJ0c1dpdGgoaXRlbUxpbmsgKyAnLycpO1xuICB9XG59XG4iXX0=","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { HeaderMenuBase } from '../../models';\nimport * as i0 from \"@angular/core\";\nexport class InlineMenu extends HeaderMenuBase {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: InlineMenu, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: InlineMenu, isStandalone: true, selector: \"inline-menu\", usesInheritance: true, ngImport: i0, template: \"@for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\">\\n <span>{{ item.text }}</span>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}a{padding:0 12px;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}a:hover,a.active{color:var(--primary-1)}\\n\"], dependencies: [{ kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: InlineMenu, decorators: [{\n type: Component,\n args: [{ selector: 'inline-menu', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n RouterLink,\n ], template: \"@for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\">\\n <span>{{ item.text }}</span>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}a{padding:0 12px;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}a:hover,a.active{color:var(--primary-1)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5saW5lLW1lbnUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaW5saW5lLW1lbnUvaW5saW5lLW1lbnUudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvaW5saW5lLW1lbnUvaW5saW5lLW1lbnUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQVk5QyxNQUFNLE9BQU8sVUFBVyxTQUFRLGNBQWM7dUdBQWpDLFVBQVU7MkZBQVYsVUFBVSw4RkNkdkIsa0tBS0Esd1RETUksVUFBVTs7MkZBR0QsVUFBVTtrQkFWdEIsU0FBUzsrQkFDRSxhQUFhLGNBR1gsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFVBQVU7cUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEhlYWRlck1lbnVCYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5saW5lLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5saW5lLW1lbnUuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9pbmxpbmUtbWVudS5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlckxpbmssXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIElubGluZU1lbnUgZXh0ZW5kcyBIZWFkZXJNZW51QmFzZSB7XG59XG5cbiIsIkBmb3IgKGl0ZW0gb2YgbmF2aWdhdGlvbigpOyB0cmFjayBpdGVtLmxpbmspIHtcbiAgPGEgW3JvdXRlckxpbmtdPVwiaXRlbS5saW5rXCIgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCI+XG4gICAgPHNwYW4+e3sgaXRlbS50ZXh0IH19PC9zcGFuPlxuICA8L2E+XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, HostListener, inject, Renderer2, } from '@angular/core';\nimport { ThemeService } from '../theme.service';\nimport { DOCUMENT_ELEMENT, IS_BROWSER_PLATFORM, LOCAL_STORAGE } from '../../common';\nimport * as i0 from \"@angular/core\";\nexport class ThemeButtonComponent {\n _renderer = inject(Renderer2);\n _themeService = inject(ThemeService, { optional: true });\n _localStorage = inject(LOCAL_STORAGE);\n _documentElement = inject(DOCUMENT_ELEMENT);\n _isBrowser = inject(IS_BROWSER_PLATFORM);\n ngOnInit() {\n if (!this._themeService && this._isBrowser) {\n throw new Error('Theme is not provided. Please provide it using provideTheme() provider in your application config.');\n }\n }\n _isDocumentContainsDarkTheme() {\n return this._documentElement.classList.contains('dark');\n }\n _onClick() {\n if (this._themeService?.getPreferredTheme() === 'light' && !this._isDocumentContainsDarkTheme()) {\n this._renderer.addClass(this._documentElement, 'dark');\n this._localStorage.setItem('preferred-theme', 'dark');\n }\n else {\n this._renderer.removeClass(this._documentElement, 'dark');\n this._localStorage.setItem('preferred-theme', 'light');\n }\n this._themeService?.updateTheme();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: ThemeButtonComponent, isStandalone: true, selector: \"button[theme-button]\", host: { listeners: { \"click\": \"_onClick()\" } }, ngImport: i0, template: \"<div class=\\\"f-icon-container\\\">\\n <div class=\\\"f-icon moon\\\"></div>\\n <div class=\\\"f-icon sun\\\"></div>\\n</div>\\n\", styles: [\":host{margin:0 8px;position:relative;border-radius:11px;display:block;width:44px;min-width:44px;height:22px;border:1px solid var(--theme-button-border-color);background-color:var(--theme-button-background);cursor:pointer}:host:hover{border-color:var(--theme-button-hovered-border-color)}.f-icon-container{position:absolute;top:1px;left:1px;width:18px;height:18px;padding:3px;border-radius:50%;background-color:var(--theme-button-icon-background);transition:transform .4s}.f-icon-container .f-icon{position:absolute;top:3px;left:3px;width:12px;height:12px}.f-icon-container .sun{display:block}.f-icon-container .moon{display:none}.dark :host .f-icon-container{transform:translate(22px)}.dark :host .f-icon-container .sun{display:none}.dark :host .f-icon-container .moon{display:block}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ThemeButtonComponent, decorators: [{\n type: Component,\n args: [{ selector: 'button[theme-button]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"<div class=\\\"f-icon-container\\\">\\n <div class=\\\"f-icon moon\\\"></div>\\n <div class=\\\"f-icon sun\\\"></div>\\n</div>\\n\", styles: [\":host{margin:0 8px;position:relative;border-radius:11px;display:block;width:44px;min-width:44px;height:22px;border:1px solid var(--theme-button-border-color);background-color:var(--theme-button-background);cursor:pointer}:host:hover{border-color:var(--theme-button-hovered-border-color)}.f-icon-container{position:absolute;top:1px;left:1px;width:18px;height:18px;padding:3px;border-radius:50%;background-color:var(--theme-button-icon-background);transition:transform .4s}.f-icon-container .f-icon{position:absolute;top:3px;left:3px;width:12px;height:12px}.f-icon-container .sun{display:block}.f-icon-container .moon{display:none}.dark :host .f-icon-container{transform:translate(22px)}.dark :host .f-icon-container .sun{display:none}.dark :host .f-icon-container .moon{display:block}\\n\"] }]\n }], propDecorators: { _onClick: [{\n type: HostListener,\n args: ['click']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS90aGVtZS1idXR0b24vdGhlbWUtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS90aGVtZS1idXR0b24vdGhlbWUtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFBRSxNQUFNLEVBQ3BCLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFTcEYsTUFBTSxPQUFPLG9CQUFvQjtJQUNkLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RCxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzVDLFVBQVUsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUVuRCxRQUFRO1FBQ2IsSUFBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0dBQW9HLENBQUMsQ0FBQztRQUN4SCxDQUFDO0lBQ0gsQ0FBQztJQUNPLDRCQUE0QjtRQUNsQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFHUyxRQUFRO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxFQUFFLENBQUM7WUFDaEcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7dUdBMUJVLG9CQUFvQjsyRkFBcEIsb0JBQW9CLGdJQ2hCakMscUhBSUE7OzJGRFlhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDRSxzQkFBc0IsY0FHcEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNOzhCQW1CckMsUUFBUTtzQkFEakIsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSG9zdExpc3RlbmVyLCBpbmplY3QsIE9uSW5pdCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4uL3RoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgRE9DVU1FTlRfRUxFTUVOVCwgSVNfQlJPV1NFUl9QTEFURk9STSwgTE9DQUxfU1RPUkFHRSB9IGZyb20gJy4uLy4uL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2J1dHRvblt0aGVtZS1idXR0b25dJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RoZW1lLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi90aGVtZS1idXR0b24uY29tcG9uZW50LnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZUJ1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RoZW1lU2VydmljZSA9IGluamVjdChUaGVtZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2xvY2FsU3RvcmFnZSA9IGluamVjdChMT0NBTF9TVE9SQUdFKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnRFbGVtZW50ID0gaW5qZWN0KERPQ1VNRU5UX0VMRU1FTlQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0Jyb3dzZXIgPSBpbmplY3QoSVNfQlJPV1NFUl9QTEFURk9STSk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKCF0aGlzLl90aGVtZVNlcnZpY2UgJiYgdGhpcy5faXNCcm93c2VyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZW1lIGlzIG5vdCBwcm92aWRlZC4gUGxlYXNlIHByb3ZpZGUgaXQgdXNpbmcgcHJvdmlkZVRoZW1lKCkgcHJvdmlkZXIgaW4geW91ciBhcHBsaWNhdGlvbiBjb25maWcuJyk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2lzRG9jdW1lbnRDb250YWluc0RhcmtUaGVtZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnZGFyaycpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwcm90ZWN0ZWQgX29uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3RoZW1lU2VydmljZT8uZ2V0UHJlZmVycmVkVGhlbWUoKSA9PT0gJ2xpZ2h0JyAmJiAhdGhpcy5faXNEb2N1bWVudENvbnRhaW5zRGFya1RoZW1lKCkpIHtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2RvY3VtZW50RWxlbWVudCwgJ2RhcmsnKTtcbiAgICAgIHRoaXMuX2xvY2FsU3RvcmFnZS5zZXRJdGVtKCdwcmVmZXJyZWQtdGhlbWUnLCAnZGFyaycpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLl9kb2N1bWVudEVsZW1lbnQsICdkYXJrJyk7XG4gICAgICB0aGlzLl9sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncHJlZmVycmVkLXRoZW1lJywgJ2xpZ2h0Jyk7XG4gICAgfVxuICAgIHRoaXMuX3RoZW1lU2VydmljZT8udXBkYXRlVGhlbWUoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImYtaWNvbi1jb250YWluZXJcIj5cbiAgPGRpdiBjbGFzcz1cImYtaWNvbiBtb29uXCI+PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmLWljb24gc3VuXCI+PC9kaXY+XG48L2Rpdj5cbiJdfQ==","import { ThemeService } from './theme.service';\nexport function provideTheme() {\n return [\n {\n provide: ThemeService,\n useClass: ThemeService,\n },\n ];\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS10aGVtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi90aGVtZS9wcm92aWRlLXRoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxNQUFNLFVBQVUsWUFBWTtJQUMxQixPQUFPO1FBQ0w7WUFDRSxPQUFPLEVBQUUsWUFBWTtZQUNyQixRQUFRLEVBQUUsWUFBWTtTQUN2QjtLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4vdGhlbWUuc2VydmljZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlVGhlbWUoKTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogVGhlbWVTZXJ2aWNlLFxuICAgICAgdXNlQ2xhc3M6IFRoZW1lU2VydmljZSxcbiAgICB9LFxuICBdO1xufVxuIl19","import { InjectionToken } from '@angular/core';\nexport const MEDIA_LINKS_PROVIDER = new InjectionToken('MEDIA_LINKS_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1tZWRpYS1saW5rcy1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvY29tcG9uZW50cy9tZWRpYS1saW5rcy9kb21haW4vaS1tZWRpYS1saW5rcy1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUS9DLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUFlLHNCQUFzQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSU1lZGlhTGluayB9IGZyb20gJy4vaS1tZWRpYS1saW5rJztcblxuZXhwb3J0IGludGVyZmFjZSBJTWVkaWFMaW5rc1Byb3ZpZGVyIHtcblxuICBnZXRNZWRpYUxpbmtzKCk6IElNZWRpYUxpbmtbXTtcbn1cblxuZXhwb3J0IGNvbnN0IE1FRElBX0xJTktTX1BST1ZJREVSID0gbmV3IEluamVjdGlvblRva2VuPElNZWRpYUxpbmtbXT4oJ01FRElBX0xJTktTX1BST1ZJREVSJyk7XG4iXX0=","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { MEDIA_LINKS_PROVIDER } from './domain';\nimport * as i0 from \"@angular/core\";\nexport class MediaLinks {\n links = inject(MEDIA_LINKS_PROVIDER, { optional: true });\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MediaLinks, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: MediaLinks, isStandalone: true, selector: \"media-links\", ngImport: i0, template: \"@for (link of links; track link.link) {\\n <a href=\\\"{{ link.link }}\\\" class=\\\"header-link\\\">\\n <div class=\\\"f-icon {{ link.icon }}\\\"></div>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}.header-link{width:36px;height:36px;padding:8px}.f-icon{width:20px;height:20px}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MediaLinks, decorators: [{\n type: Component,\n args: [{ selector: 'media-links', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"@for (link of links; track link.link) {\\n <a href=\\\"{{ link.link }}\\\" class=\\\"header-link\\\">\\n <div class=\\\"f-icon {{ link.icon }}\\\"></div>\\n </a>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:center}.header-link{width:36px;height:36px;padding:8px}.f-icon{width:20px;height:20px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtbGlua3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvbWVkaWEtbGlua3MvbWVkaWEtbGlua3MudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvbWVkaWEtbGlua3MvbWVkaWEtbGlua3MuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBU2hELE1BQU0sT0FBTyxVQUFVO0lBRVgsS0FBSyxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3VHQUZ4RCxVQUFVOzJGQUFWLFVBQVUsdUVDVnZCLDhKQUtBOzsyRkRLYSxVQUFVO2tCQVB0QixTQUFTOytCQUNFLGFBQWEsY0FHWCxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1FRElBX0xJTktTX1BST1ZJREVSIH0gZnJvbSAnLi9kb21haW4nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtZWRpYS1saW5rcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZWRpYS1saW5rcy5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL21lZGlhLWxpbmtzLnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBNZWRpYUxpbmtzIHtcblxuICBwcm90ZWN0ZWQgbGlua3MgPSBpbmplY3QoTUVESUFfTElOS1NfUFJPVklERVIsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG59XG4iLCJAZm9yIChsaW5rIG9mIGxpbmtzOyB0cmFjayBsaW5rLmxpbmspIHtcbiAgPGEgaHJlZj1cInt7IGxpbmsubGluayB9fVwiIGNsYXNzPVwiaGVhZGVyLWxpbmtcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZi1pY29uIHt7IGxpbmsuaWNvbiB9fVwiPjwvZGl2PlxuICA8L2E+XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';\nimport { CdkConnectedOverlay, CdkOverlayOrigin, Overlay } from '@angular/cdk/overlay';\nimport { ThemeButtonComponent } from '../../../../../theme';\nimport { HeaderMenuBase } from '../../models';\nimport { RouterLink } from '@angular/router';\nimport { MediaLinks } from '../media-links';\nimport * as i0 from \"@angular/core\";\nexport class DropdownMenu extends HeaderMenuBase {\n isOpen = signal(false, ...(ngDevMode ? [{ debugName: \"isOpen\" }] : []));\n scrollStrategy = inject(Overlay).scrollStrategies.block();\n positions = [\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n ];\n _hoverTimeout;\n mouseEnter() {\n clearTimeout(this._hoverTimeout);\n this.open();\n }\n mouseLeave() {\n clearTimeout(this._hoverTimeout);\n this._hoverTimeout = setTimeout(() => this.close(), 200);\n }\n toggle() {\n this.isOpen.update(x => !x);\n }\n open() {\n if (!this.isOpen()) {\n this.isOpen.set(true);\n }\n }\n close() {\n this.isOpen.set(false);\n }\n ngOnDestroy() {\n clearTimeout(this._hoverTimeout);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DropdownMenu, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: DropdownMenu, isStandalone: true, selector: \"dropdown-menu\", usesInheritance: true, ngImport: i0, template: \"<span class=\\\"label\\\" cdk-overlay-origin\\n (click)=\\\"toggle()\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\"\\n #overlayOrigin=\\\"cdkOverlayOrigin\\\">\\n <span class=\\\"f-icon more-horizontal\\\"></span>\\n</span>\\n\\n<ng-template\\n cdk-connected-overlay\\n [cdkConnectedOverlayLockPosition]=\\\"true\\\"\\n [cdkConnectedOverlayHasBackdrop]=\\\"false\\\"\\n cdkConnectedOverlayBackdropClass=\\\"cdk-overlay-transparent-backdrop\\\"\\n [cdkConnectedOverlayDisableClose]=\\\"false\\\"\\n [cdkConnectedOverlayScrollStrategy]=\\\"scrollStrategy\\\"\\n [cdkConnectedOverlayOrigin]=\\\"overlayOrigin\\\"\\n [cdkConnectedOverlayPositions]=\\\"positions\\\"\\n [cdkConnectedOverlayOpen]=\\\"isOpen()\\\"\\n [cdkConnectedOverlayOffsetY]=\\\"-10\\\"\\n (backdropClick)=\\\"close()\\\"\\n>\\n <div class=\\\"dropdown-panel\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\">\\n @if (navigation().length) {\\n <div class=\\\"navigation-wrapper\\\">\\n @for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\"><span>{{ item.text }}</span></a>\\n }\\n </div>\\n }\\n <div class=\\\"appearance\\\">\\n <span>Appearance</span>\\n <button theme-button></button>\\n </div>\\n <div class=\\\"social-links\\\">\\n <media-links/>\\n </div>\\n\\n </div>\\n</ng-template>\\n\\n\", styles: [\":host{overflow:hidden}.label{margin-left:8px;margin-right:8px;display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;line-height:64px}.label .f-icon{margin-left:4px;width:14px;min-width:14px;height:14px;color:inherit}.label:hover{color:var(--secondary-text)}.dropdown-panel{border-radius:6px;min-width:202px;border:1px solid var(--divider-color);background-color:var(--background-color);box-shadow:var(--shadow-3);max-height:calc(100vh - var(--header-height));overflow-y:auto}.navigation-wrapper{display:flex;flex-direction:column;justify-content:flex-start;padding:12px;border-bottom:1px solid var(--divider-color)}.navigation-wrapper a{color:var(--primary-text);white-space:nowrap;border-radius:6px;padding:0 12px;font-size:14px;font-weight:500;line-height:32px;display:block;cursor:pointer;overflow:hidden;text-overflow:ellipsis}.navigation-wrapper a:hover{color:var(--primary-1);background-color:var(--default-3)}.navigation-wrapper a.active{color:var(--primary-1)}.appearance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px 8px 24px;border-bottom:1px solid var(--divider-color)}.appearance span{color:var(--secondary-text);flex-grow:1;font-size:12px;font-weight:500;line-height:28px;transition:color .5s}.social-links{padding:6px 12px}\\n\"], dependencies: [{ kind: \"directive\", type: CdkConnectedOverlay, selector: \"[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]\", inputs: [\"cdkConnectedOverlayOrigin\", \"cdkConnectedOverlayPositions\", \"cdkConnectedOverlayPositionStrategy\", \"cdkConnectedOverlayOffsetX\", \"cdkConnectedOverlayOffsetY\", \"cdkConnectedOverlayWidth\", \"cdkConnectedOverlayHeight\", \"cdkConnectedOverlayMinWidth\", \"cdkConnectedOverlayMinHeight\", \"cdkConnectedOverlayBackdropClass\", \"cdkConnectedOverlayPanelClass\", \"cdkConnectedOverlayViewportMargin\", \"cdkConnectedOverlayScrollStrategy\", \"cdkConnectedOverlayOpen\", \"cdkConnectedOverlayDisableClose\", \"cdkConnectedOverlayTransformOriginOn\", \"cdkConnectedOverlayHasBackdrop\", \"cdkConnectedOverlayLockPosition\", \"cdkConnectedOverlayFlexibleDimensions\", \"cdkConnectedOverlayGrowAfterOpen\", \"cdkConnectedOverlayPush\", \"cdkConnectedOverlayDisposeOnNavigation\"], outputs: [\"backdropClick\", \"positionChange\", \"attach\", \"detach\", \"overlayKeydown\", \"overlayOutsideClick\"], exportAs: [\"cdkConnectedOverlay\"] }, { kind: \"directive\", type: CdkOverlayOrigin, selector: \"[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]\", exportAs: [\"cdkOverlayOrigin\"] }, { kind: \"component\", type: ThemeButtonComponent, selector: \"button[theme-button]\" }, { kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }, { kind: \"component\", type: MediaLinks, selector: \"media-links\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DropdownMenu, decorators: [{\n type: Component,\n args: [{ selector: 'dropdown-menu', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n CdkConnectedOverlay,\n CdkOverlayOrigin,\n ThemeButtonComponent,\n RouterLink,\n MediaLinks,\n ], template: \"<span class=\\\"label\\\" cdk-overlay-origin\\n (click)=\\\"toggle()\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\"\\n #overlayOrigin=\\\"cdkOverlayOrigin\\\">\\n <span class=\\\"f-icon more-horizontal\\\"></span>\\n</span>\\n\\n<ng-template\\n cdk-connected-overlay\\n [cdkConnectedOverlayLockPosition]=\\\"true\\\"\\n [cdkConnectedOverlayHasBackdrop]=\\\"false\\\"\\n cdkConnectedOverlayBackdropClass=\\\"cdk-overlay-transparent-backdrop\\\"\\n [cdkConnectedOverlayDisableClose]=\\\"false\\\"\\n [cdkConnectedOverlayScrollStrategy]=\\\"scrollStrategy\\\"\\n [cdkConnectedOverlayOrigin]=\\\"overlayOrigin\\\"\\n [cdkConnectedOverlayPositions]=\\\"positions\\\"\\n [cdkConnectedOverlayOpen]=\\\"isOpen()\\\"\\n [cdkConnectedOverlayOffsetY]=\\\"-10\\\"\\n (backdropClick)=\\\"close()\\\"\\n>\\n <div class=\\\"dropdown-panel\\\"\\n (mouseenter)=\\\"mouseEnter()\\\"\\n (mouseleave)=\\\"mouseLeave()\\\">\\n @if (navigation().length) {\\n <div class=\\\"navigation-wrapper\\\">\\n @for (item of navigation(); track item.link) {\\n <a [routerLink]=\\\"item.link\\\" [class.active]=\\\"item.isActive\\\"><span>{{ item.text }}</span></a>\\n }\\n </div>\\n }\\n <div class=\\\"appearance\\\">\\n <span>Appearance</span>\\n <button theme-button></button>\\n </div>\\n <div class=\\\"social-links\\\">\\n <media-links/>\\n </div>\\n\\n </div>\\n</ng-template>\\n\\n\", styles: [\":host{overflow:hidden}.label{margin-left:8px;margin-right:8px;display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;line-height:64px}.label .f-icon{margin-left:4px;width:14px;min-width:14px;height:14px;color:inherit}.label:hover{color:var(--secondary-text)}.dropdown-panel{border-radius:6px;min-width:202px;border:1px solid var(--divider-color);background-color:var(--background-color);box-shadow:var(--shadow-3);max-height:calc(100vh - var(--header-height));overflow-y:auto}.navigation-wrapper{display:flex;flex-direction:column;justify-content:flex-start;padding:12px;border-bottom:1px solid var(--divider-color)}.navigation-wrapper a{color:var(--primary-text);white-space:nowrap;border-radius:6px;padding:0 12px;font-size:14px;font-weight:500;line-height:32px;display:block;cursor:pointer;overflow:hidden;text-overflow:ellipsis}.navigation-wrapper a:hover{color:var(--primary-1);background-color:var(--default-3)}.navigation-wrapper a.active{color:var(--primary-1)}.appearance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px 8px 24px;border-bottom:1px solid var(--divider-color)}.appearance span{color:var(--secondary-text);flex-grow:1;font-size:12px;font-weight:500;line-height:28px;transition:color .5s}.social-links{padding:6px 12px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvY29tcG9uZW50cy9kcm9wZG93bi1tZW51L2Ryb3Bkb3duLW1lbnUudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvaGVhZGVyL2NvbXBvbmVudHMvZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBcUIsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQWdCNUMsTUFBTSxPQUFPLFlBQWEsU0FBUSxjQUFjO0lBQzNCLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxrREFBQyxDQUFDO0lBQ3ZCLGNBQWMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDMUQsU0FBUyxHQUF3QjtRQUNsRDtZQUNFLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLEtBQUs7WUFDZixRQUFRLEVBQUUsS0FBSztTQUNoQjtRQUNEO1lBQ0UsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLEtBQUs7U0FDaEI7UUFDRDtZQUNFLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLFFBQVE7U0FDbkI7UUFDRDtZQUNFLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxRQUFRO1NBQ25CO0tBQ0YsQ0FBQztJQUVNLGFBQWEsQ0FBa0I7SUFFN0IsVUFBVTtRQUNsQixZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFUyxVQUFVO1FBQ2xCLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFUyxNQUFNO1FBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFUyxJQUFJO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0lBRVMsS0FBSztRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbkMsQ0FBQzt1R0ExRFUsWUFBWTsyRkFBWixZQUFZLGdHQ3JCekIscTFDQTBDQSw2MkNENUJJLG1CQUFtQiw0K0JBQ25CLGdCQUFnQix1SUFDaEIsb0JBQW9CLGlFQUNwQixVQUFVLG9PQUNWLFVBQVU7OzJGQUdELFlBQVk7a0JBZHhCLFNBQVM7K0JBQ0UsZUFBZSxjQUdiLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3dCQUNwQixVQUFVO3dCQUNWLFVBQVU7cUJBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIE9uRGVzdHJveSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDZGtDb25uZWN0ZWRPdmVybGF5LCBDZGtPdmVybGF5T3JpZ2luLCBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFRoZW1lQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdGhlbWUnO1xuaW1wb3J0IHsgSGVhZGVyTWVudUJhc2UgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNZWRpYUxpbmtzIH0gZnJvbSAnLi4vbWVkaWEtbGlua3MnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkcm9wZG93bi1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLW1lbnUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLW1lbnUuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIENka0Nvbm5lY3RlZE92ZXJsYXksXG4gICAgQ2RrT3ZlcmxheU9yaWdpbixcbiAgICBUaGVtZUJ1dHRvbkNvbXBvbmVudCxcbiAgICBSb3V0ZXJMaW5rLFxuICAgIE1lZGlhTGlua3MsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duTWVudSBleHRlbmRzIEhlYWRlck1lbnVCYXNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzT3BlbiA9IHNpZ25hbChmYWxzZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBzY3JvbGxTdHJhdGVneSA9IGluamVjdChPdmVybGF5KS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBwb3NpdGlvbnM6IENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgIH0sXG4gICAge1xuICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgfSxcbiAgICB7XG4gICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgIH0sXG4gIF07XG5cbiAgcHJpdmF0ZSBfaG92ZXJUaW1lb3V0OiBhbnkgfCB1bmRlZmluZWQ7XG5cbiAgcHJvdGVjdGVkIG1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX2hvdmVyVGltZW91dCk7XG4gICAgdGhpcy5vcGVuKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5faG92ZXJUaW1lb3V0KTtcbiAgICB0aGlzLl9ob3ZlclRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2xvc2UoKSwgMjAwKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB0b2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4udXBkYXRlKHggPT4gIXgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9wZW4oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzT3BlbigpKSB7XG4gICAgICB0aGlzLmlzT3Blbi5zZXQodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuaXNPcGVuLnNldChmYWxzZSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX2hvdmVyVGltZW91dCk7XG4gIH1cbn1cbiIsIjxzcGFuIGNsYXNzPVwibGFiZWxcIiBjZGstb3ZlcmxheS1vcmlnaW5cbiAgICAgIChjbGljayk9XCJ0b2dnbGUoKVwiXG4gICAgICAobW91c2VlbnRlcik9XCJtb3VzZUVudGVyKClcIlxuICAgICAgKG1vdXNlbGVhdmUpPVwibW91c2VMZWF2ZSgpXCJcbiAgICAgICNvdmVybGF5T3JpZ2luPVwiY2RrT3ZlcmxheU9yaWdpblwiPlxuICAgPHNwYW4gY2xhc3M9XCJmLWljb24gbW9yZS1ob3Jpem9udGFsXCI+PC9zcGFuPlxuPC9zcGFuPlxuXG48bmctdGVtcGxhdGVcbiAgY2RrLWNvbm5lY3RlZC1vdmVybGF5XG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5TG9ja1Bvc2l0aW9uXT1cInRydWVcIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheUhhc0JhY2tkcm9wXT1cImZhbHNlXCJcbiAgY2RrQ29ubmVjdGVkT3ZlcmxheUJhY2tkcm9wQ2xhc3M9XCJjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcFwiXG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5RGlzYWJsZUNsb3NlXT1cImZhbHNlXCJcbiAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlTY3JvbGxTdHJhdGVneV09XCJzY3JvbGxTdHJhdGVneVwiXG4gIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cIm92ZXJsYXlPcmlnaW5cIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uc109XCJwb3NpdGlvbnNcIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9wZW5dPVwiaXNPcGVuKClcIlxuICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9mZnNldFldPVwiLTEwXCJcbiAgKGJhY2tkcm9wQ2xpY2spPVwiY2xvc2UoKVwiXG4+XG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1wYW5lbFwiXG4gICAgICAgKG1vdXNlZW50ZXIpPVwibW91c2VFbnRlcigpXCJcbiAgICAgICAobW91c2VsZWF2ZSk9XCJtb3VzZUxlYXZlKClcIj5cbiAgICBAaWYgKG5hdmlnYXRpb24oKS5sZW5ndGgpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJuYXZpZ2F0aW9uLXdyYXBwZXJcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBuYXZpZ2F0aW9uKCk7IHRyYWNrIGl0ZW0ubGluaykge1xuICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIml0ZW0ubGlua1wiIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5pc0FjdGl2ZVwiPjxzcGFuPnt7IGl0ZW0udGV4dCB9fTwvc3Bhbj48L2E+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwiYXBwZWFyYW5jZVwiPlxuICAgICAgPHNwYW4+QXBwZWFyYW5jZTwvc3Bhbj5cbiAgICAgIDxidXR0b24gdGhlbWUtYnV0dG9uPjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJzb2NpYWwtbGlua3NcIj5cbiAgICAgIDxtZWRpYS1saW5rcy8+XG4gICAgPC9kaXY+XG5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG4iXX0=","export function calculateMarkdownUrl(markdown, navigation, docsDir, notFoundMd = '') {\n if (!markdown || !_isMarkdownExist(markdown, navigation) && navigation.length) {\n return notFoundMd;\n }\n let url = docsDir + markdown;\n url = url.replace(/(\\/en\\/guides)+/g, '/en/guides');\n url = url.replace(/(\\/en\\/examples)+/g, '/en/examples');\n if (!url.endsWith('.md')) {\n url += '.md';\n }\n return url;\n}\nfunction _isMarkdownExist(id, navigation) {\n return !!navigation.find((x) => x.items.some((i) => i.link === id));\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLW1hcmtkb3duLXVybC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvdXRpbHMvY2FsY3VsYXRlLW1hcmtkb3duLXVybC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsUUFBZ0IsRUFBRSxVQUE4QixFQUFFLE9BQWUsRUFBRSxVQUFVLEdBQUcsRUFBRTtJQUNySCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM5RSxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxHQUFHLEdBQUcsT0FBTyxHQUFHLFFBQVEsQ0FBQztJQUU3QixHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNwRCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUV4RCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3pCLEdBQUcsSUFBSSxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxFQUFVLEVBQUUsVUFBOEI7SUFDbEUsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQzdCLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBb0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsQ0FDdEQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTmF2aWdhdGlvbkdyb3VwIH0gZnJvbSAnLi4vY29tcG9uZW50cyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVNYXJrZG93blVybChtYXJrZG93bjogc3RyaW5nLCBuYXZpZ2F0aW9uOiBJTmF2aWdhdGlvbkdyb3VwW10sIGRvY3NEaXI6IHN0cmluZywgbm90Rm91bmRNZCA9ICcnKTogc3RyaW5nIHtcbiAgaWYgKCFtYXJrZG93biB8fCAhX2lzTWFya2Rvd25FeGlzdChtYXJrZG93biwgbmF2aWdhdGlvbikgJiYgbmF2aWdhdGlvbi5sZW5ndGgpIHtcbiAgICByZXR1cm4gbm90Rm91bmRNZDtcbiAgfVxuICBsZXQgdXJsID0gZG9jc0RpciArIG1hcmtkb3duO1xuXG4gIHVybCA9IHVybC5yZXBsYWNlKC8oXFwvZW5cXC9ndWlkZXMpKy9nLCAnL2VuL2d1aWRlcycpO1xuICB1cmwgPSB1cmwucmVwbGFjZSgvKFxcL2VuXFwvZXhhbXBsZXMpKy9nLCAnL2VuL2V4YW1wbGVzJyk7XG5cbiAgaWYgKCF1cmwuZW5kc1dpdGgoJy5tZCcpKSB7XG4gICAgdXJsICs9ICcubWQnO1xuICB9XG5cbiAgcmV0dXJuIHVybDtcbn1cblxuZnVuY3Rpb24gX2lzTWFya2Rvd25FeGlzdChpZDogc3RyaW5nLCBuYXZpZ2F0aW9uOiBJTmF2aWdhdGlvbkdyb3VwW10pOiBib29sZWFuIHtcbiAgcmV0dXJuICEhbmF2aWdhdGlvbi5maW5kKCh4KSA9PlxuICAgIHguaXRlbXMuc29tZSgoaTogeyBsaW5rOiBzdHJpbmc7IH0pID0+IGkubGluayA9PT0gaWQpLFxuICApO1xufVxuIl19","import { inject, Injectable, signal } from '@angular/core';\nimport { TableOfContentData, } from '../components';\nimport { DOCUMENTATION_CONFIGURATION } from '../domain';\nimport { calculateMarkdownUrl } from '../utils';\nimport * as i0 from \"@angular/core\";\nexport class DocumentationStore {\n _configuration = inject(DOCUMENTATION_CONFIGURATION);\n tocData = signal(new TableOfContentData([], []), ...(ngDevMode ? [{ debugName: \"tocData\" }] : []));\n getMarkdownUrl(markdown) {\n return calculateMarkdownUrl(markdown, (this._configuration.navigation || []), this._configuration.docsDir, this._configuration.notFoundMarkdown);\n }\n getLogo() {\n return this._configuration.logo;\n }\n getTitle() {\n return this._configuration.title;\n }\n getHeaderNavigation() {\n return this._configuration.header?.navigation || [];\n }\n getComponents() {\n return this._configuration.components || [];\n }\n getNavigation() {\n return this._configuration.navigation || [];\n }\n getFooterNavigation() {\n return this._configuration.footer?.navigation || {};\n }\n getMediaLinks() {\n return this._configuration.header?.mediaLinks || [];\n }\n getTableOfContent() {\n return this._configuration.tableOfContent;\n }\n getHeader() {\n return this._configuration.header;\n }\n getShowcaseItems() {\n return this._configuration.showcaseItems || [];\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentationStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentationStore });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DocumentationStore, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2Uvc2VydmljZXMvZG9jdW1lbnRhdGlvbi5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQU9MLGtCQUFrQixHQUNuQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUdoRCxNQUFNLE9BQU8sa0JBQWtCO0lBRVosY0FBYyxHQUFHLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBRXRELE9BQU8sR0FBRyxNQUFNLENBQXFCLElBQUksa0JBQWtCLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxtREFBQyxDQUFDO0lBRTlFLGNBQWMsQ0FBQyxRQUFnQjtRQUNwQyxPQUFPLG9CQUFvQixDQUN6QixRQUFRLEVBQ1IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFDdEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQ3JDLENBQUM7SUFDSixDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7SUFDbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO0lBQ25DLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFTSxhQUFhO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUM7SUFDNUMsQ0FBQztJQUVNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO0lBQ3BDLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUM7SUFDakQsQ0FBQzt1R0FyRFUsa0JBQWtCOzJHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSUhlYWRlck1lbnVMaW5rLFxuICBJTWFya2Rvd25Gb290ZXJOYXZpZ2F0aW9uLFxuICBJTWVkaWFMaW5rLFxuICBJTWVkaWFMaW5rc1Byb3ZpZGVyLFxuICBJTmF2aWdhdGlvbkdyb3VwLFxuICBJVGFibGVPZkNvbnRlbnQsXG4gIFRhYmxlT2ZDb250ZW50RGF0YSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBJSGVhZGVyQ29uZmlndXJhdGlvbiwgSUhlYWRlckNvbmZpZ3VyYXRpb25TdG9yZSwgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgRE9DVU1FTlRBVElPTl9DT05GSUdVUkFUSU9OIH0gZnJvbSAnLi4vZG9tYWluJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSwgSVNob3djYXNlSXRlbSB9IGZyb20gJy4uLy4uL2R5bmFtaWMtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBjYWxjdWxhdGVNYXJrZG93blVybCB9IGZyb20gJy4uL3V0aWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERvY3VtZW50YXRpb25TdG9yZVxuICBpbXBsZW1lbnRzIElNZWRpYUxpbmtzUHJvdmlkZXIsIElIZWFkZXJDb25maWd1cmF0aW9uU3RvcmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWd1cmF0aW9uID0gaW5qZWN0KERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTik7XG5cbiAgcHVibGljIHJlYWRvbmx5IHRvY0RhdGEgPSBzaWduYWw8VGFibGVPZkNvbnRlbnREYXRhPihuZXcgVGFibGVPZkNvbnRlbnREYXRhKFtdLCBbXSkpO1xuXG4gIHB1YmxpYyBnZXRNYXJrZG93blVybChtYXJrZG93bjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gY2FsY3VsYXRlTWFya2Rvd25VcmwoXG4gICAgICBtYXJrZG93bixcbiAgICAgICh0aGlzLl9jb25maWd1cmF0aW9uLm5hdmlnYXRpb24gfHwgW10pLFxuICAgICAgdGhpcy5fY29uZmlndXJhdGlvbi5kb2NzRGlyLFxuICAgICAgdGhpcy5fY29uZmlndXJhdGlvbi5ub3RGb3VuZE1hcmtkb3duLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TG9nbygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmxvZ287XG4gIH1cblxuICBwdWJsaWMgZ2V0VGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi50aXRsZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRIZWFkZXJOYXZpZ2F0aW9uKCk6IElIZWFkZXJNZW51TGlua1tdIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5oZWFkZXI/Lm5hdmlnYXRpb24gfHwgW107XG4gIH1cblxuICBwdWJsaWMgZ2V0Q29tcG9uZW50cygpOiBJRHluYW1pY0NvbXBvbmVudEl0ZW1bXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24uY29tcG9uZW50cyB8fCBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXROYXZpZ2F0aW9uKCk6IElOYXZpZ2F0aW9uR3JvdXBbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24ubmF2aWdhdGlvbiB8fCBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGb290ZXJOYXZpZ2F0aW9uKCk6IElNYXJrZG93bkZvb3Rlck5hdmlnYXRpb24ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmZvb3Rlcj8ubmF2aWdhdGlvbiB8fCB7fTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNZWRpYUxpbmtzKCk6IElNZWRpYUxpbmtbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24uaGVhZGVyPy5tZWRpYUxpbmtzIHx8IFtdO1xuICB9XG5cbiAgcHVibGljIGdldFRhYmxlT2ZDb250ZW50KCk6IElUYWJsZU9mQ29udGVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLnRhYmxlT2ZDb250ZW50O1xuICB9XG5cbiAgcHVibGljIGdldEhlYWRlcigpOiBJSGVhZGVyQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb24uaGVhZGVyO1xuICB9XG5cbiAgcHVibGljIGdldFNob3djYXNlSXRlbXMoKTogSVNob3djYXNlSXRlbVtdIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5zaG93Y2FzZUl0ZW1zIHx8IFtdO1xuICB9XG59XG4iXX0=","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class DynamicComponentsStore {\n _components = [];\n dispose() {\n this._components.forEach((ref) => ref.destroy());\n this._components = [];\n }\n addComponent(reference, element) {\n this._components.push(reference);\n this._assignInputs(reference, element);\n reference.instance?.initialize?.();\n }\n _assignInputs(componentRef, element) {\n const dataset = element?.dataset;\n if (!dataset)\n return;\n Object.entries(dataset).forEach(([key, rawValue]) => {\n const value = this._parseDatasetValue(rawValue);\n const member = componentRef.instance[key];\n if (member && typeof member.set === 'function') {\n member.set(value);\n }\n else {\n componentRef.instance[key] = value;\n }\n });\n }\n _parseDatasetValue(rawValue) {\n let result = rawValue;\n if (result?.startsWith?.('{') || result?.startsWith?.('[')) {\n try {\n result = JSON.parse(result);\n // eslint-disable-next-line no-unused-vars,@typescript-eslint/no-unused-vars\n }\n catch (e) { /* empty */\n }\n }\n return result;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DynamicComponentsStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DynamicComponentsStore });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: DynamicComponentsStore, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnRzLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9keW5hbWljLWNvbXBvbmVudHMuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSXpELE1BQU0sT0FBTyxzQkFBc0I7SUFDekIsV0FBVyxHQUE4QyxFQUFFLENBQUM7SUFFN0QsT0FBTztRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sWUFBWSxDQUFDLFNBQWtELEVBQUUsT0FBcUI7UUFDM0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdkMsU0FBUyxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFTyxhQUFhLENBQUMsWUFBcUQsRUFBRSxPQUFxQjtRQUNoRyxNQUFNLE9BQU8sR0FBRyxPQUFPLEVBQUUsT0FBTyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUVyQixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUU7WUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2hELE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFMUMsSUFBSSxNQUFNLElBQUksT0FBUSxNQUFjLENBQUMsR0FBRyxLQUFLLFVBQVUsRUFBRSxDQUFDO2dCQUN2RCxNQUFvQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuRCxDQUFDO2lCQUFNLENBQUM7Z0JBQ0wsWUFBWSxDQUFDLFFBQWdCLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQzlDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxRQUFpQjtRQUMxQyxJQUFJLE1BQU0sR0FBdUIsUUFBUSxDQUFDO1FBQzFDLElBQUksTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNELElBQUksQ0FBQztnQkFDSCxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDNUIsNEVBQTRFO1lBQzlFLENBQUM7WUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVztZQUN6QixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7dUdBekNVLHNCQUFzQjsyR0FBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJRHluYW1pY0NvbXBvbmVudEluc3RhbmNlIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRHluYW1pY0NvbXBvbmVudHNTdG9yZSB7XG4gIHByaXZhdGUgX2NvbXBvbmVudHM6IENvbXBvbmVudFJlZjxJRHluYW1pY0NvbXBvbmVudEluc3RhbmNlPltdID0gW107XG5cbiAgcHVibGljIGRpc3Bvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5fY29tcG9uZW50cy5mb3JFYWNoKChyZWYpID0+IHJlZi5kZXN0cm95KCkpO1xuICAgIHRoaXMuX2NvbXBvbmVudHMgPSBbXTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRDb21wb25lbnQocmVmZXJlbmNlOiBDb21wb25lbnRSZWY8SUR5bmFtaWNDb21wb25lbnRJbnN0YW5jZT4sIGVsZW1lbnQ/OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIHRoaXMuX2NvbXBvbmVudHMucHVzaChyZWZlcmVuY2UpO1xuXG4gICAgdGhpcy5fYXNzaWduSW5wdXRzKHJlZmVyZW5jZSwgZWxlbWVudCk7XG4gICAgcmVmZXJlbmNlLmluc3RhbmNlPy5pbml0aWFsaXplPy4oKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Fzc2lnbklucHV0cyhjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxJRHluYW1pY0NvbXBvbmVudEluc3RhbmNlPiwgZWxlbWVudD86IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgY29uc3QgZGF0YXNldCA9IGVsZW1lbnQ/LmRhdGFzZXQ7XG4gICAgaWYgKCFkYXRhc2V0KSByZXR1cm47XG5cbiAgICBPYmplY3QuZW50cmllcyhkYXRhc2V0KS5mb3JFYWNoKChba2V5LCByYXdWYWx1ZV0pID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fcGFyc2VEYXRhc2V0VmFsdWUocmF3VmFsdWUpO1xuICAgICAgY29uc3QgbWVtYmVyID0gY29tcG9uZW50UmVmLmluc3RhbmNlW2tleV07XG5cbiAgICAgIGlmIChtZW1iZXIgJiYgdHlwZW9mIChtZW1iZXIgYXMgYW55KS5zZXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgKG1lbWJlciBhcyB7IHNldCh2OiB1bmtub3duKTogdm9pZCB9KS5zZXQodmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgKGNvbXBvbmVudFJlZi5pbnN0YW5jZSBhcyBhbnkpW2tleV0gPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcnNlRGF0YXNldFZhbHVlKHJhd1ZhbHVlPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgcmVzdWx0OiBzdHJpbmcgfCB1bmRlZmluZWQgPSByYXdWYWx1ZTtcbiAgICBpZiAocmVzdWx0Py5zdGFydHNXaXRoPy4oJ3snKSB8fCByZXN1bHQ/LnN0YXJ0c1dpdGg/LignWycpKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdCk7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFycyxAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIH0gY2F0Y2ggKGUpIHsgLyogZW1wdHkgKi9cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19","import { ChangeDetectionStrategy, Component, inject, NgZone, signal, viewChild, } from '@angular/core';\nimport { HamburgerButton } from './components/hamburger-button';\nimport { DocumentationStore } from '../../services';\nimport { ThemeButtonComponent } from '../../../theme';\nimport { InlineMenu } from './components/inline-menu';\nimport { MediaLinks } from './components/media-links';\nimport { DropdownMenu } from './components/dropdown-menu';\nimport { HEADER_CONFIGURATION_PROVIDER } from '../../../common';\nimport { RouterLink } from '@angular/router';\nimport * as i0 from \"@angular/core\";\nexport class HeaderComponent {\n title = inject(DocumentationStore).getTitle();\n image = inject(DocumentationStore).getLogo();\n config = inject(HEADER_CONFIGURATION_PROVIDER);\n emptyNavigation = !inject(DocumentationStore).getNavigation().length;\n _zone = inject(NgZone);\n _containerRef = viewChild.required('container');\n _targetRef = viewChild.required('target');\n overflowed = signal(false, ...(ngDevMode ? [{ debugName: \"overflowed\" }] : []));\n initialized = signal(false, ...(ngDevMode ? [{ debugName: \"initialized\" }] : []));\n _rafId = null;\n _roContainer;\n _roTarget;\n ngAfterViewInit() {\n if (typeof ResizeObserver === 'undefined') {\n this._checkOverflow(true);\n return;\n }\n this._initObservers();\n this._checkOverflow(true); // первый замер синхронно\n }\n _initObservers() {\n const container = this._containerRef().nativeElement;\n const target = this._targetRef().nativeElement;\n this._zone.runOutsideAngular(() => {\n const cb = () => this._scheduleCheck();\n this._roContainer = new ResizeObserver(cb);\n this._roTarget = new ResizeObserver(cb);\n this._roContainer.observe(container);\n this._roTarget.observe(target);\n });\n }\n _scheduleCheck() {\n if (this._rafId != null)\n return;\n this._rafId = requestAnimationFrame(() => {\n this._rafId = null;\n this._checkOverflow(false);\n });\n }\n _checkOverflow(isFirst) {\n const container = this._containerRef().nativeElement;\n const target = this._targetRef().nativeElement;\n if (!container || !target)\n return;\n const next = target.scrollWidth >= container.clientWidth;\n if (next !== this.overflowed() || !this.initialized()) {\n this._zone.run(() => {\n this.overflowed.set(next);\n if (isFirst)\n this.initialized.set(true);\n });\n }\n }\n ngOnDestroy() {\n this._roContainer?.disconnect();\n this._roTarget?.disconnect();\n if (this._rafId != null)\n cancelAnimationFrame(this._rafId);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: HeaderComponent, isStandalone: true, selector: \"f-header\", viewQueries: [{ propertyName: \"_containerRef\", first: true, predicate: [\"container\"], descendants: true, isSignal: true }, { propertyName: \"_targetRef\", first: true, predicate: [\"target\"], descendants: true, isSignal: true }], ngImport: i0, template: \"@if (emptyNavigation) {\\n <a routerLink class=\\\"empty-navigation-title\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n </a>\\n} @else {\\n <div class=\\\"portal-title\\\">\\n <button hamburger-button></button>\\n <div class=\\\"title text-ellipsis\\\">{{ title }}</div>\\n </div>\\n}\\n\\n<div class=\\\"collapsable-row\\\" #container>\\n <div #target class=\\\"target\\\" [class.hidden]=\\\"initialized() && overflowed()\\\">\\n @if (config.navigation) {\\n <inline-menu />\\n <div class=\\\"divider\\\"></div>\\n }\\n\\n <button theme-button></button>\\n <div class=\\\"divider\\\"></div>\\n <media-links />\\n </div>\\n\\n <div class=\\\"fallback\\\" [class.hidden]=\\\"!initialized() || !overflowed()\\\">\\n <dropdown-menu />\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:sticky;width:100%;top:0;display:flex;justify-content:flex-start;align-items:center;padding:0 32px;font-weight:600;color:var(--primary-text);height:calc(var(--header-height) + 1px);background-color:var(--background-color);border-bottom:1px solid var(--divider-color);z-index:var(--z-index-header)}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}.empty-navigation-title{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.empty-navigation-title img{margin-right:8px}.portal-title{display:flex;justify-content:flex-start;align-items:center}@media (min-width: 960px){.portal-title{display:none}}.portal-title .title{font-weight:600;color:var(--primary-text)}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}.collapsable-row{position:relative;width:100%;display:flex;justify-content:flex-end}.collapsable-row .target{display:flex;justify-content:flex-start;align-items:center;width:fit-content}.collapsable-row .target.hidden{position:absolute;left:-99999px;top:0;visibility:hidden;white-space:nowrap}.collapsable-row .fallback.hidden{display:none}\\n\"], dependencies: [{ kind: \"component\", type: HamburgerButton, selector: \"button[hamburger-button]\" }, { kind: \"component\", type: ThemeButtonComponent, selector: \"button[theme-button]\" }, { kind: \"component\", type: InlineMenu, selector: \"inline-menu\" }, { kind: \"component\", type: DropdownMenu, selector: \"dropdown-menu\" }, { kind: \"component\", type: MediaLinks, selector: \"media-links\" }, { kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HeaderComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-header', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n HamburgerButton,\n ThemeButtonComponent,\n InlineMenu,\n DropdownMenu,\n InlineMenu,\n MediaLinks,\n DropdownMenu,\n RouterLink,\n ], template: \"@if (emptyNavigation) {\\n <a routerLink class=\\\"empty-navigation-title\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n </a>\\n} @else {\\n <div class=\\\"portal-title\\\">\\n <button hamburger-button></button>\\n <div class=\\\"title text-ellipsis\\\">{{ title }}</div>\\n </div>\\n}\\n\\n<div class=\\\"collapsable-row\\\" #container>\\n <div #target class=\\\"target\\\" [class.hidden]=\\\"initialized() && overflowed()\\\">\\n @if (config.navigation) {\\n <inline-menu />\\n <div class=\\\"divider\\\"></div>\\n }\\n\\n <button theme-button></button>\\n <div class=\\\"divider\\\"></div>\\n <media-links />\\n </div>\\n\\n <div class=\\\"fallback\\\" [class.hidden]=\\\"!initialized() || !overflowed()\\\">\\n <dropdown-menu />\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:sticky;width:100%;top:0;display:flex;justify-content:flex-start;align-items:center;padding:0 32px;font-weight:600;color:var(--primary-text);height:calc(var(--header-height) + 1px);background-color:var(--background-color);border-bottom:1px solid var(--divider-color);z-index:var(--z-index-header)}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}.empty-navigation-title{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.empty-navigation-title img{margin-right:8px}.portal-title{display:flex;justify-content:flex-start;align-items:center}@media (min-width: 960px){.portal-title{display:none}}.portal-title .title{font-weight:600;color:var(--primary-text)}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}.collapsable-row{position:relative;width:100%;display:flex;justify-content:flex-end}.collapsable-row .target{display:flex;justify-content:flex-start;align-items:center;width:fit-content}.collapsable-row .target.hidden{position:absolute;left:-99999px;top:0;visibility:hidden;white-space:nowrap}.collapsable-row .fallback.hidden{display:none}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULE1BQU0sRUFDTixNQUFNLEVBRU4sTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQW1CN0MsTUFBTSxPQUFPLGVBQWU7SUFDaEIsS0FBSyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlDLEtBQUssR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QyxNQUFNLEdB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TCxDQUFDO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzdCLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJO1lBQUUsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdELENBQUM7dUdBckVVLGVBQWU7MkZBQWYsZUFBZSx1U0NyQzVCLHN4QkE0QkEsK29ERERJLGVBQWUscUVBQ2Ysb0JBQW9CLGlFQUNwQixVQUFVLHdEQUNWLFlBQVksMERBRVosVUFBVSx3REFFVixVQUFVOzsyRkFHRCxlQUFlO2tCQWpCM0IsU0FBUzsrQkFDRSxVQUFVLGNBR1IsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osVUFBVTt3QkFDVixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osVUFBVTtxQkFDWCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIHNpZ25hbCxcbiAgdmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhhbWJ1cmdlckJ1dHRvbiB9IGZyb20gJy4vY29tcG9uZW50cy9oYW1idXJnZXItYnV0dG9uJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFRoZW1lQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vdGhlbWUnO1xuaW1wb3J0IHsgSW5saW5lTWVudSB9IGZyb20gJy4vY29tcG9uZW50cy9pbmxpbmUtbWVudSc7XG5pbXBvcnQgeyBNZWRpYUxpbmtzIH0gZnJvbSAnLi9jb21wb25lbnRzL21lZGlhLWxpbmtzJztcbmltcG9ydCB7IERyb3Bkb3duTWVudSB9IGZyb20gJy4vY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcbmltcG9ydCB7IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vaGVhZGVyLmNvbXBvbmVudC5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIEhhbWJ1cmdlckJ1dHRvbixcbiAgICBUaGVtZUJ1dHRvbkNvbXBvbmVudCxcbiAgICBJbmxpbmVNZW51LFxuICAgIERyb3Bkb3duTWVudSxcbiAgICBJbmxpbmVNZW51LFxuICAgIE1lZGlhTGlua3MsXG4gICAgRHJvcGRvd25NZW51LFxuICAgIFJvdXRlckxpbmssXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCB0aXRsZSA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpLmdldFRpdGxlKCk7XG4gIHByb3RlY3RlZCBpbWFnZSA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpLmdldExvZ28oKTtcbiAgcHJvdGVjdGVkIGNvbmZpZyA9IGluamVjdChIRUFERVJfQ09ORklHVVJBVElPTl9QUk9WSURFUik7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVtcHR5TmF2aWdhdGlvbiA9ICFpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKS5nZXROYXZpZ2F0aW9uKCkubGVuZ3RoO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3pvbmUgPSBpbmplY3QoTmdab25lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jb250YWluZXJSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KCdjb250YWluZXInKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdGFyZ2V0UmVmID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PigndGFyZ2V0Jyk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG92ZXJmbG93ZWQgPSBzaWduYWwoZmFsc2UpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW5pdGlhbGl6ZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByaXZhdGUgX3JhZklkOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfcm9Db250YWluZXI/OiBSZXNpemVPYnNlcnZlcjtcbiAgcHJpdmF0ZSBfcm9UYXJnZXQ/OiBSZXNpemVPYnNlcnZlcjtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0eXBlb2YgUmVzaXplT2JzZXJ2ZXIgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLl9jaGVja092ZXJmbG93KHRydWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9pbml0T2JzZXJ2ZXJzKCk7XG4gICAgdGhpcy5fY2hlY2tPdmVyZmxvdyh0cnVlKTsgLy8g0L/QtdGA0LLRi9C5INC30LDQvNC10YAg0YHQuNC90YXRgNC+0L3QvdC+XG4gIH1cblxuICBwcml2YXRlIF9pbml0T2JzZXJ2ZXJzKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2NvbnRhaW5lclJlZigpLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0UmVmKCkubmF0aXZlRWxlbWVudDtcblxuICAgIHRoaXMuX3pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgY29uc3QgY2IgPSAoKSA9PiB0aGlzLl9zY2hlZHVsZUNoZWNrKCk7XG4gICAgICB0aGlzLl9yb0NvbnRhaW5lciA9IG5ldyBSZXNpemVPYnNlcnZlcihjYik7XG4gICAgICB0aGlzLl9yb1RhcmdldCA9IG5ldyBSZXNpemVPYnNlcnZlcihjYik7XG5cbiAgICAgIHRoaXMuX3JvQ29udGFpbmVyLm9ic2VydmUoY29udGFpbmVyKTtcbiAgICAgIHRoaXMuX3JvVGFyZ2V0Lm9ic2VydmUodGFyZ2V0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3NjaGVkdWxlQ2hlY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JhZklkICE9IG51bGwpIHJldHVybjtcbiAgICB0aGlzLl9yYWZJZCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICB0aGlzLl9yYWZJZCA9IG51bGw7XG4gICAgICB0aGlzLl9jaGVja092ZXJmbG93KGZhbHNlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrT3ZlcmZsb3coaXNGaXJzdDogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2NvbnRhaW5lclJlZigpLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5fdGFyZ2V0UmVmKCkubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhdGFyZ2V0KSByZXR1cm47XG5cbiAgICBjb25zdCBuZXh0ID0gdGFyZ2V0LnNjcm9sbFdpZHRoID49IGNvbnRhaW5lci5jbGllbnRXaWR0aDtcblxuICAgIGlmIChuZXh0ICE9PSB0aGlzLm92ZXJmbG93ZWQoKSB8fCAhdGhpcy5pbml0aWFsaXplZCgpKSB7XG4gICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgIHRoaXMub3ZlcmZsb3dlZC5zZXQobmV4dCk7XG4gICAgICAgIGlmIChpc0ZpcnN0KSB0aGlzLmluaXRpYWxpemVkLnNldCh0cnVlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9yb0NvbnRhaW5lcj8uZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX3JvVGFyZ2V0Py5kaXNjb25uZWN0KCk7XG4gICAgaWYgKHRoaXMuX3JhZklkICE9IG51bGwpIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX3JhZklkKTtcbiAgfVxufVxuIiwiQGlmIChlbXB0eU5hdmlnYXRpb24pIHtcbiAgPGEgcm91dGVyTGluayBjbGFzcz1cImVtcHR5LW5hdmlnYXRpb24tdGl0bGVcIj5cbiAgICA8aW1nIFtzcmNdPVwiaW1hZ2VcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBhbHQ9XCJsb2dvXCIgY2xhc3M9XCJsb2dvXCIvPiB7eyB0aXRsZSB9fVxuICA8L2E+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cInBvcnRhbC10aXRsZVwiPlxuICAgIDxidXR0b24gaGFtYnVyZ2VyLWJ1dHRvbj48L2J1dHRvbj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGUgdGV4dC1lbGxpcHNpc1wiPnt7IHRpdGxlIH19PC9kaXY+XG4gIDwvZGl2PlxufVxuXG48ZGl2IGNsYXNzPVwiY29sbGFwc2FibGUtcm93XCIgI2NvbnRhaW5lcj5cbiAgPGRpdiAjdGFyZ2V0IGNsYXNzPVwidGFyZ2V0XCIgW2NsYXNzLmhpZGRlbl09XCJpbml0aWFsaXplZCgpICYmIG92ZXJmbG93ZWQoKVwiPlxuICAgIEBpZiAoY29uZmlnLm5hdmlnYXRpb24pIHtcbiAgICAgIDxpbmxpbmUtbWVudSAvPlxuICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIj48L2Rpdj5cbiAgICB9XG5cbiAgICA8YnV0dG9uIHRoZW1lLWJ1dHRvbj48L2J1dHRvbj5cbiAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiPjwvZGl2PlxuICAgIDxtZWRpYS1saW5rcyAvPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZmFsbGJhY2tcIiBbY2xhc3MuaGlkZGVuXT1cIiFpbml0aWFsaXplZCgpIHx8ICFvdmVyZmxvd2VkKClcIj5cbiAgICA8ZHJvcGRvd24tbWVudSAvPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=","import { ChangeDetectionStrategy, Component, input, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NavigationGroupComponent {\n title = input(undefined, ...(ngDevMode ? [{ debugName: \"title\" }] : []));\n isCollapsed = signal(false, ...(ngDevMode ? [{ debugName: \"isCollapsed\" }] : []));\n toggle() {\n this.isCollapsed.set(!this.isCollapsed());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: NavigationGroupComponent, isStandalone: true, selector: \"f-navigation-group\", inputs: { title: { classPropertyName: \"title\", publicName: \"title\", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { \"class.collapsed\": \"isCollapsed()\", \"class.no-title\": \"!title()\" } }, ngImport: i0, template: \"@if (title()) {\\n <header (click)=\\\"toggle()\\\">\\n <span>{{ title() }}</span>\\n <div class=\\\"flex-space\\\"></div>\\n <div class=\\\"caret\\\">\\n <span class=\\\"chevron-right caret-icon\\\"></span>\\n </div>\\n </header>\\n}\\n@if (!isCollapsed()) {\\n <ng-content></ng-content>\\n}\\n\\n\\n\\n\", styles: [\":host{padding-top:10px;padding-bottom:24px;border-top:1px solid var(--divider-color);display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:100%;max-width:240px;margin-left:auto}:host.collapsed,:host.no-title{padding-top:10px;padding-bottom:10px}header{font-weight:600;color:var(--primary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;display:flex;justify-content:flex-start;align-items:center;width:100%}.caret{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--tertiary-text);cursor:pointer;transition:color .25s;flex-shrink:0}:host:hover .caret{color:var(--secondary-text)}:host:hover .caret:hover{color:var(--primary-text)}:host .caret-icon{font-size:18px;transform:rotate(90deg);transition:transform .25s;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:18px;height:18px}:host.collapsed .caret-icon{transform:rotate(0)}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationGroupComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-navigation-group', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[class.collapsed]': 'isCollapsed()',\n '[class.no-title]': '!title()',\n }, template: \"@if (title()) {\\n <header (click)=\\\"toggle()\\\">\\n <span>{{ title() }}</span>\\n <div class=\\\"flex-space\\\"></div>\\n <div class=\\\"caret\\\">\\n <span class=\\\"chevron-right caret-icon\\\"></span>\\n </div>\\n </header>\\n}\\n@if (!isCollapsed()) {\\n <ng-content></ng-content>\\n}\\n\\n\\n\\n\", styles: [\":host{padding-top:10px;padding-bottom:24px;border-top:1px solid var(--divider-color);display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:100%;max-width:240px;margin-left:auto}:host.collapsed,:host.no-title{padding-top:10px;padding-bottom:10px}header{font-weight:600;color:var(--primary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;display:flex;justify-content:flex-start;align-items:center;width:100%}.caret{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--tertiary-text);cursor:pointer;transition:color .25s;flex-shrink:0}:host:hover .caret{color:var(--secondary-text)}:host:hover .caret:hover{color:var(--primary-text)}:host .caret-icon{font-size:18px;transform:rotate(90deg);transition:transform .25s;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;width:18px;height:18px}:host.collapsed .caret-icon{transform:rotate(0)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1wYW5lbC9uYXZpZ2F0aW9uLWdyb3VwL25hdmlnYXRpb24tZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL25hdmlnYXRpb24tcGFuZWwvbmF2aWdhdGlvbi1ncm91cC9uYXZpZ2F0aW9uLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFhbEYsTUFBTSxPQUFPLHdCQUF3QjtJQUNuQixLQUFLLEdBQUcsS0FBSyxDQUFxQixTQUFTLGlEQUFDLENBQUM7SUFFMUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLHVEQUFDLENBQUM7SUFFckMsTUFBTTtRQUNkLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQzt1R0FQVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qiw4U0NickMsdVNBZUE7OzJGREZhLHdCQUF3QjtrQkFYcEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FHbEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLG1CQUFtQixFQUFFLGVBQWU7d0JBQ3BDLGtCQUFrQixFQUFFLFVBQVU7cUJBQy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLW5hdmlnYXRpb24tZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2aWdhdGlvbi1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9uYXZpZ2F0aW9uLWdyb3VwLmNvbXBvbmVudC5zY3NzJyBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuY29sbGFwc2VkXSc6ICdpc0NvbGxhcHNlZCgpJyxcbiAgICAnW2NsYXNzLm5vLXRpdGxlXSc6ICchdGl0bGUoKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE5hdmlnYXRpb25Hcm91cENvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSB0aXRsZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNDb2xsYXBzZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCB0b2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5pc0NvbGxhcHNlZC5zZXQoIXRoaXMuaXNDb2xsYXBzZWQoKSk7XG4gIH1cbn1cbiIsIkBpZiAodGl0bGUoKSkge1xuICA8aGVhZGVyIChjbGljayk9XCJ0b2dnbGUoKVwiPlxuICAgIDxzcGFuPnt7IHRpdGxlKCkgfX08L3NwYW4+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgtc3BhY2VcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZXRcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiY2hldnJvbi1yaWdodCBjYXJldC1pY29uXCI+PC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2hlYWRlcj5cbn1cbkBpZiAoIWlzQ29sbGFwc2VkKCkpIHtcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxufVxuXG5cblxuIl19","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class FNavigationItemComponent {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FNavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FNavigationItemComponent, isStandalone: true, selector: \"a[f-navigation-item]\", ngImport: i0, template: \"<ng-content></ng-content>\\n\\n\\n\\n\", styles: [\":host{font-weight:500;color:var(--secondary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:flex-start;gap:2px}:host:hover{text-decoration:none;color:var(--primary-1)}:host.active{color:var(--primary-1)}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FNavigationItemComponent, decorators: [{\n type: Component,\n args: [{ selector: 'a[f-navigation-item]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"<ng-content></ng-content>\\n\\n\\n\\n\", styles: [\":host{font-weight:500;color:var(--secondary-text);flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:flex-start;gap:2px}:host:hover{text-decoration:none;color:var(--primary-1)}:host.active{color:var(--primary-1)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL25hdmlnYXRpb24tcGFuZWwvZi1uYXZpZ2F0aW9uLWl0ZW0vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL25hdmlnYXRpb24tcGFuZWwvZi1uYXZpZ2F0aW9uLWl0ZW0vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTbkUsTUFBTSxPQUFPLHdCQUF3Qjt1R0FBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0IsZ0ZDVHJDLG1DQUlBOzsyRkRLYSx3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBR3BCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYVtmLW5hdmlnYXRpb24taXRlbV0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1uYXZpZ2F0aW9uLWl0ZW0uY29tcG9uZW50LnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQge1xuXG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cblxuXG4iXX0=","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, DestroyRef, HostListener, inject, } from '@angular/core';\nimport { NavigationEnd, Router, RouterLink } from '@angular/router';\nimport { startWith } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { FNavigationItemComponent } from './f-navigation-item/f-navigation-item.component';\nimport { NavigationGroupComponent } from './navigation-group/navigation-group.component';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { TOGGLE_NAVIGATION_COMPONENT } from '../header';\nimport { DocumentationStore } from '../../services';\nimport { HandleNavigationLinksHandler, HandleNavigationLinksRequest } from '../../domain';\nimport { WINDOW } from '../../../common';\nimport * as i0 from \"@angular/core\";\nexport class NavigationPanelComponent {\n _provider = inject(DocumentationStore);\n _parent = inject(TOGGLE_NAVIGATION_COMPONENT, {\n optional: true,\n });\n _router = inject(Router);\n _changeDetectorRef = inject(ChangeDetectorRef);\n _destroyRef = inject(DestroyRef);\n _window = inject(WINDOW);\n value;\n navigation = this._provider.getNavigation();\n title = this._provider.getTitle();\n image = this._provider.getLogo();\n ngOnInit() {\n const currentPath = this._router.url;\n const prefix = currentPath.substring(0, currentPath.lastIndexOf('/'));\n const navigation = this._deepClone(this._provider.getNavigation());\n navigation.forEach((group) => {\n group.items.forEach((item) => this._normalizeLink(item, prefix));\n });\n this.navigation = navigation;\n }\n _deepClone(value) {\n return JSON.parse(JSON.stringify(value));\n }\n _normalizeLink(item, prefix) {\n if (item.link && !this._isExternalLink(item.link)) {\n item.link = item.link.startsWith('/')\n ? `${prefix}${item.link}`\n : `${prefix}/${item.link}`;\n }\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n ngAfterViewInit() {\n this._subscribeOnRouteChanges();\n }\n _subscribeOnRouteChanges() {\n this._router.events\n .pipe(startWith(new NavigationEnd(1, '', '')), filter((event) => event instanceof NavigationEnd), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => {\n this._highlightLink(this._router.url);\n this._parent?.onToggleNavigation(false);\n this._changeDetectorRef.detectChanges();\n });\n }\n _highlightLink(url) {\n this.value = undefined;\n this.navigation.forEach((group) => {\n this.value =\n group.items.find((x) => {\n return url.endsWith(x.link);\n })?.link || this.value;\n });\n }\n _onDocumentClick(event) {\n new HandleNavigationLinksHandler().handle(new HandleNavigationLinksRequest(event, this._window, this._router));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: NavigationPanelComponent, isStandalone: true, selector: \"f-navigation-panel\", host: { listeners: { \"click\": \"_onDocumentClick($event)\" } }, ngImport: i0, template: \"<a routerLink class=\\\"navigation-header\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n</a>\\n\\n@for (group of navigation; track group) {\\n <f-navigation-group [title]=\\\"group.text\\\">\\n @for (item of group.items; track item.link) {\\n <a f-navigation-item [href]=\\\"item.link\\\" [class.active]=\\\"item.link === value\\\">\\n <div class=\\\"text-ellipsis\\\">{{ item.text }}</div>\\n @if (item.badge) {\\n <span class=\\\"f-badge {{ item.badge.type }}\\\">{{ item.badge.text }}</span>\\n }\\n </a>\\n }\\n </f-navigation-group>\\n}\\n\\n\", styles: [\":host{height:100%;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:0 var(--navigation-panel-padding);background-color:var(--navigation-panel-background);overflow:hidden;overflow-y:auto;position:fixed;width:var(--navigation-panel-width);top:0;left:calc(-1 * var(--navigation-panel-width));transition:transform .2s ease-in-out;z-index:var(--z-index-navigation);transform:none}@media (min-width: 960px){:host{position:unset;display:flex;min-width:var(--navigation-panel-width);width:fit-content;transform:none!important}}@media (min-width: 1440px){:host{min-width:calc((100% - (var(--layout-max-width) - 64px)) / 3 + var(--navigation-panel-width) - var(--navigation-panel-padding))}}:host.visible{transform:translate(var(--navigation-panel-width))}.navigation-header{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.navigation-header img{margin-right:8px}\\n\"], dependencies: [{ kind: \"component\", type: FNavigationItemComponent, selector: \"a[f-navigation-item]\" }, { kind: \"component\", type: NavigationGroupComponent, selector: \"f-navigation-group\", inputs: [\"title\"] }, { kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: NavigationPanelComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-navigation-panel', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n FNavigationItemComponent,\n NavigationGroupComponent,\n RouterLink,\n ], template: \"<a routerLink class=\\\"navigation-header\\\">\\n <img [src]=\\\"image\\\" width=\\\"24\\\" height=\\\"24\\\" alt=\\\"logo\\\" class=\\\"logo\\\"/> {{ title }}\\n</a>\\n\\n@for (group of navigation; track group) {\\n <f-navigation-group [title]=\\\"group.text\\\">\\n @for (item of group.items; track item.link) {\\n <a f-navigation-item [href]=\\\"item.link\\\" [class.active]=\\\"item.link === value\\\">\\n <div class=\\\"text-ellipsis\\\">{{ item.text }}</div>\\n @if (item.badge) {\\n <span class=\\\"f-badge {{ item.badge.type }}\\\">{{ item.badge.text }}</span>\\n }\\n </a>\\n }\\n </f-navigation-group>\\n}\\n\\n\", styles: [\":host{height:100%;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:0 var(--navigation-panel-padding);background-color:var(--navigation-panel-background);overflow:hidden;overflow-y:auto;position:fixed;width:var(--navigation-panel-width);top:0;left:calc(-1 * var(--navigation-panel-width));transition:transform .2s ease-in-out;z-index:var(--z-index-navigation);transform:none}@media (min-width: 960px){:host{position:unset;display:flex;min-width:var(--navigation-panel-width);width:fit-content;transform:none!important}}@media (min-width: 1440px){:host{min-width:calc((100% - (var(--layout-max-width) - 64px)) / 3 + var(--navigation-panel-width) - var(--navigation-panel-padding))}}:host.visible{transform:translate(var(--navigation-panel-width))}.navigation-header{display:flex;justify-content:flex-start;align-items:center;padding:20px 0;font-weight:600;color:var(--primary-text);height:var(--header-height);width:100%;max-width:240px;margin-left:auto;cursor:pointer}.navigation-header img{margin-right:8px}\\n\"] }]\n }], propDecorators: { _onDocumentClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1wYW5lbC9uYXZpZ2F0aW9uLXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9uYXZpZ2F0aW9uLXBhbmVsL25hdmlnYXRpb24tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWN6QyxNQUFNLE9BQU8sd0JBQXdCO0lBQ2xCLFNBQVMsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN2QyxPQUFPLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixFQUFFO1FBQzdELFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FBQyxDQUFDO0lBQ2MsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixrQkFBa0IsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMvQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFaEMsS0FBSyxDQUFxQjtJQUMxQixVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUVwQyxRQUFRO1FBQ2IsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDckMsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMzQixLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNuRSxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFTyxVQUFVLENBQUksS0FBUTtRQUM1QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTyxjQUFjLENBQUMsSUFBcUIsRUFBRSxNQUFjO1FBQzFELElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDbEQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUM7Z0JBQ25DLENBQUMsQ0FBQyxHQUFHLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUN6QixDQUFDLENBQUMsR0FBRyxNQUFNLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRU8sZUFBZSxDQUFDLElBQVk7UUFDbEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVNLGVBQWU7UUFDcEIsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVPLHdCQUF3QjtRQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU07YUFDaEIsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQ3ZDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxZQUFZLGFBQWEsQ0FBQyxFQUNqRCxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQ3JDO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QyxJQUFJLENBQUMsT0FBTyxFQUFFLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxjQUFjLENBQUMsR0FBVztRQUNoQyxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxLQUFLO2dCQUNSLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ3JCLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzlCLENBQUMsQ0FBQyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdTLGdCQUFnQixDQUFDLEtBQWlCO1FBQzFDLElBQUksNEJBQTRCLEVBQUUsQ0FBQyxNQUFNLENBQ3ZDLElBQUksNEJBQTRCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUNwRSxDQUFDO0lBQ0osQ0FBQzt1R0ExRVUsd0JBQXdCOzJGQUF4Qix3QkFBd0IsNElDbENyQyxtbUJBaUJBLDBrQ0RZSSx3QkFBd0IsaUVBQ3hCLHdCQUF3QixrRkFDeEIsVUFBVTs7MkZBR0Qsd0JBQXdCO2tCQVpwQyxTQUFTOytCQUNFLG9CQUFvQixjQUdsQixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0sV0FDdEM7d0JBQ1Asd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLFVBQVU7cUJBQ1g7OEJBd0VTLGdCQUFnQjtzQkFEekIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIsIFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2YtbmF2aWdhdGlvbi1pdGVtL2YtbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL25hdmlnYXRpb24tZ3JvdXAvbmF2aWdhdGlvbi1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSU5hdmlnYXRpb25JdGVtIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgVE9HR0xFX05BVklHQVRJT05fQ09NUE9ORU5UIH0gZnJvbSAnLi4vaGVhZGVyJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEhhbmRsZU5hdmlnYXRpb25MaW5rc0hhbmRsZXIsIEhhbmRsZU5hdmlnYXRpb25MaW5rc1JlcXVlc3QgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1uYXZpZ2F0aW9uLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmlnYXRpb24tcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uYXZpZ2F0aW9uLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgRk5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIE5hdmlnYXRpb25Hcm91cENvbXBvbmVudCxcbiAgICBSb3V0ZXJMaW5rLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXZpZ2F0aW9uUGFuZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9wcm92aWRlciA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9wYXJlbnQgPSBpbmplY3QoVE9HR0xFX05BVklHQVRJT05fQ09NUE9ORU5ULCB7XG4gICAgb3B0aW9uYWw6IHRydWUsXG4gIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF93aW5kb3cgPSBpbmplY3QoV0lORE9XKTtcblxuICBwcm90ZWN0ZWQgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHJvdGVjdGVkIG5hdmlnYXRpb24gPSB0aGlzLl9wcm92aWRlci5nZXROYXZpZ2F0aW9uKCk7XG4gIHByb3RlY3RlZCB0aXRsZSA9IHRoaXMuX3Byb3ZpZGVyLmdldFRpdGxlKCk7XG4gIHByb3RlY3RlZCBpbWFnZSA9IHRoaXMuX3Byb3ZpZGVyLmdldExvZ28oKTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFBhdGggPSB0aGlzLl9yb3V0ZXIudXJsO1xuICAgIGNvbnN0IHByZWZpeCA9IGN1cnJlbnRQYXRoLnN1YnN0cmluZygwLCBjdXJyZW50UGF0aC5sYXN0SW5kZXhPZignLycpKTtcbiAgICBjb25zdCBuYXZpZ2F0aW9uID0gdGhpcy5fZGVlcENsb25lKHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKSk7XG4gICAgbmF2aWdhdGlvbi5mb3JFYWNoKChncm91cCkgPT4ge1xuICAgICAgZ3JvdXAuaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4gdGhpcy5fbm9ybWFsaXplTGluayhpdGVtLCBwcmVmaXgpKTtcbiAgICB9KTtcbiAgICB0aGlzLm5hdmlnYXRpb24gPSBuYXZpZ2F0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGVlcENsb25lPFQ+KHZhbHVlOiBUKTogVCB7XG4gICAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcbiAgfVxuXG4gIHByaXZhdGUgX25vcm1hbGl6ZUxpbmsoaXRlbTogSU5hdmlnYXRpb25JdGVtLCBwcmVmaXg6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChpdGVtLmxpbmsgJiYgIXRoaXMuX2lzRXh0ZXJuYWxMaW5rKGl0ZW0ubGluaykpIHtcbiAgICAgIGl0ZW0ubGluayA9IGl0ZW0ubGluay5zdGFydHNXaXRoKCcvJylcbiAgICAgICAgPyBgJHtwcmVmaXh9JHtpdGVtLmxpbmt9YFxuICAgICAgICA6IGAke3ByZWZpeH0vJHtpdGVtLmxpbmt9YDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0V4dGVybmFsTGluayhocmVmOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaHJlZi5zdGFydHNXaXRoKCd3d3cnKSB8fCBocmVmLnN0YXJ0c1dpdGgoJ2h0dHAnKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaWJlT25Sb3V0ZUNoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3N1YnNjcmliZU9uUm91dGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX3JvdXRlci5ldmVudHNcbiAgICAgIC5waXBlKFxuICAgICAgICBzdGFydFdpdGgobmV3IE5hdmlnYXRpb25FbmQoMSwgJycsICcnKSksXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9oaWdobGlnaHRMaW5rKHRoaXMuX3JvdXRlci51cmwpO1xuICAgICAgICB0aGlzLl9wYXJlbnQ/Lm9uVG9nZ2xlTmF2aWdhdGlvbihmYWxzZSk7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGlnaGxpZ2h0TGluayh1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5uYXZpZ2F0aW9uLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgICB0aGlzLnZhbHVlID1cbiAgICAgICAgZ3JvdXAuaXRlbXMuZmluZCgoeCkgPT4ge1xuICAgICAgICAgIHJldHVybiB1cmwuZW5kc1dpdGgoeC5saW5rKTtcbiAgICAgICAgfSk/LmxpbmsgfHwgdGhpcy52YWx1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgcHJvdGVjdGVkIF9vbkRvY3VtZW50Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBuZXcgSGFuZGxlTmF2aWdhdGlvbkxpbmtzSGFuZGxlcigpLmhhbmRsZShcbiAgICAgIG5ldyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NSZXF1ZXN0KGV2ZW50LCB0aGlzLl93aW5kb3csIHRoaXMuX3JvdXRlciksXG4gICAgKTtcbiAgfVxufVxuIiwiPGEgcm91dGVyTGluayBjbGFzcz1cIm5hdmlnYXRpb24taGVhZGVyXCI+XG4gIDxpbWcgW3NyY109XCJpbWFnZVwiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIGFsdD1cImxvZ29cIiBjbGFzcz1cImxvZ29cIi8+IHt7IHRpdGxlIH19XG48L2E+XG5cbkBmb3IgKGdyb3VwIG9mIG5hdmlnYXRpb247IHRyYWNrIGdyb3VwKSB7XG4gIDxmLW5hdmlnYXRpb24tZ3JvdXAgW3RpdGxlXT1cImdyb3VwLnRleHRcIj5cbiAgICBAZm9yIChpdGVtIG9mIGdyb3VwLml0ZW1zOyB0cmFjayBpdGVtLmxpbmspIHtcbiAgICAgIDxhIGYtbmF2aWdhdGlvbi1pdGVtIFtocmVmXT1cIml0ZW0ubGlua1wiIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5saW5rID09PSB2YWx1ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbGxpcHNpc1wiPnt7IGl0ZW0udGV4dCB9fTwvZGl2PlxuICAgICAgICBAaWYgKGl0ZW0uYmFkZ2UpIHtcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImYtYmFkZ2Uge3sgaXRlbS5iYWRnZS50eXBlIH19XCI+e3sgaXRlbS5iYWRnZS50ZXh0IH19PC9zcGFuPlxuICAgICAgICB9XG4gICAgICA8L2E+XG4gICAgfVxuICA8L2YtbmF2aWdhdGlvbi1ncm91cD5cbn1cblxuIl19","export class GetPreviousNextPageNavigationResponse {\n previousLink;\n nextLink;\n constructor(previousLink, nextLink) {\n this.previousLink = previousLink;\n this.nextLink = nextLink;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLnJlc3BvbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9kb21haW4vZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uL2dldC1wcmV2aW91cy1uZXh0LXBhZ2UtbmF2aWdhdGlvbi5yZXNwb25zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8scUNBQXFDO0lBR3ZDO0lBQ0E7SUFGVCxZQUNTLFlBQTZDLEVBQzdDLFFBQXlDO1FBRHpDLGlCQUFZLEdBQVosWUFBWSxDQUFpQztRQUM3QyxhQUFRLEdBQVIsUUFBUSxDQUFpQztJQUdsRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTWFya2Rvd25Gb290ZXJMaW5rIH0gZnJvbSAnLi4vaS1tYXJrZG93bi1mb290ZXItbGluayc7XG5cbmV4cG9ydCBjbGFzcyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlc3BvbnNlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcHJldmlvdXNMaW5rOiBJTWFya2Rvd25Gb290ZXJMaW5rIHwgdW5kZWZpbmVkLFxuICAgIHB1YmxpYyBuZXh0TGluazogSU1hcmtkb3duRm9vdGVyTGluayB8IHVuZGVmaW5lZCxcbiAgKSB7XG5cbiAgfVxufVxuIl19","import { GetPreviousNextPageNavigationResponse } from './get-previous-next-page-navigation.response';\nexport class GetPreviousNextPageNavigationHandler {\n _provider;\n constructor(_provider) {\n this._provider = _provider;\n }\n handle(request) {\n let previous = undefined;\n let next = undefined;\n this._provider.getNavigation().forEach((group, groupIndex) => {\n (group.items || []).forEach((item, index) => {\n if (item.link === request.currentLink) {\n if (index > 0) {\n previous = { ...group.items[index - 1] };\n }\n else {\n if (groupIndex > 0) {\n const previousGroup = this._provider.getNavigation()[groupIndex - 1];\n previous = { ...previousGroup.items[previousGroup.items.length - 1] };\n }\n }\n if (index < group.items.length - 1) {\n next = { ...group.items[index + 1] };\n }\n else {\n if (groupIndex < this._provider.getNavigation().length - 1) {\n const nextGroup = this._provider.getNavigation()[groupIndex + 1];\n next = { ...nextGroup.items[0] };\n }\n }\n }\n });\n });\n return new GetPreviousNextPageNavigationResponse(previous, next);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tZm9vdGVyL2RvbWFpbi9nZXQtcHJldmlvdXMtbmV4dC1wYWdlLW5hdmlnYXRpb24vZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFJckcsTUFBTSxPQUFPLG9DQUFvQztJQUdyQztJQURWLFlBQ1UsU0FBNkI7UUFBN0IsY0FBUyxHQUFULFNBQVMsQ0FBb0I7SUFFdkMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUE2QztRQUN6RCxJQUFJLFFBQVEsR0FBb0MsU0FBUyxDQUFDO1FBQzFELElBQUksSUFBSSxHQUFvQyxTQUFTLENBQUM7UUFFdEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsVUFBa0IsRUFBRSxFQUFFO1lBQ25FLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQzFDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3RDLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNkLFFBQVEsR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBRSxLQUFLLEdBQUcsQ0FBQyxDQUFFLEVBQUUsQ0FBQztvQkFDN0MsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLElBQUksVUFBVSxHQUFHLENBQUMsRUFBRSxDQUFDOzRCQUNuQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxDQUFFLFVBQVUsR0FBRyxDQUFDLENBQUUsQ0FBQzs0QkFDdkUsUUFBUSxHQUFHLEVBQUUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFFLGFBQWEsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBRSxFQUFFLENBQUM7d0JBQzFFLENBQUM7b0JBQ0gsQ0FBQztvQkFDRCxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQzt3QkFDbkMsSUFBSSxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFFLEtBQUssR0FBRyxDQUFDLENBQUUsRUFBRSxDQUFDO29CQUN6QyxDQUFDO3lCQUFNLENBQUM7d0JBQ04sSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7NEJBQzNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUUsVUFBVSxHQUFHLENBQUMsQ0FBRSxDQUFDOzRCQUNuRSxJQUFJLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUUsQ0FBQyxDQUFFLEVBQUUsQ0FBQzt3QkFDckMsQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLHFDQUFxQyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QgfSBmcm9tICcuL2dldC1wcmV2aW91cy1uZXh0LXBhZ2UtbmF2aWdhdGlvbi5yZXF1ZXN0JztcbmltcG9ydCB7IEdldFByZXZpb3VzTmV4dFBhZ2VOYXZpZ2F0aW9uUmVzcG9uc2UgfSBmcm9tICcuL2dldC1wcmV2aW91cy1uZXh0LXBhZ2UtbmF2aWdhdGlvbi5yZXNwb25zZSc7XG5pbXBvcnQgeyBJTWFya2Rvd25Gb290ZXJMaW5rIH0gZnJvbSAnLi4vaS1tYXJrZG93bi1mb290ZXItbGluayc7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcyc7XG5cbmV4cG9ydCBjbGFzcyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvbkhhbmRsZXIge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3Byb3ZpZGVyOiBEb2N1bWVudGF0aW9uU3RvcmUsXG4gICkge1xuICB9XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QpOiBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlc3BvbnNlIHtcbiAgICBsZXQgcHJldmlvdXM6IElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbGV0IG5leHQ6IElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgICB0aGlzLl9wcm92aWRlci5nZXROYXZpZ2F0aW9uKCkuZm9yRWFjaCgoZ3JvdXAsIGdyb3VwSW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgKGdyb3VwLml0ZW1zIHx8IFtdKS5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICBpZiAoaXRlbS5saW5rID09PSByZXF1ZXN0LmN1cnJlbnRMaW5rKSB7XG4gICAgICAgICAgaWYgKGluZGV4ID4gMCkge1xuICAgICAgICAgICAgcHJldmlvdXMgPSB7IC4uLmdyb3VwLml0ZW1zWyBpbmRleCAtIDEgXSB9O1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoZ3JvdXBJbmRleCA+IDApIHtcbiAgICAgICAgICAgICAgY29uc3QgcHJldmlvdXNHcm91cCA9IHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKVsgZ3JvdXBJbmRleCAtIDEgXTtcbiAgICAgICAgICAgICAgcHJldmlvdXMgPSB7IC4uLnByZXZpb3VzR3JvdXAuaXRlbXNbIHByZXZpb3VzR3JvdXAuaXRlbXMubGVuZ3RoIC0gMSBdIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChpbmRleCA8IGdyb3VwLml0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIG5leHQgPSB7IC4uLmdyb3VwLml0ZW1zWyBpbmRleCArIDEgXSB9O1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoZ3JvdXBJbmRleCA8IHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKS5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG5leHRHcm91cCA9IHRoaXMuX3Byb3ZpZGVyLmdldE5hdmlnYXRpb24oKVsgZ3JvdXBJbmRleCArIDEgXTtcbiAgICAgICAgICAgICAgbmV4dCA9IHsgLi4ubmV4dEdyb3VwLml0ZW1zWyAwIF0gfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiBuZXcgR2V0UHJldmlvdXNOZXh0UGFnZU5hdmlnYXRpb25SZXNwb25zZShwcmV2aW91cywgbmV4dCk7XG4gIH1cbn1cbiJdfQ==","export class GetPreviousNextPageNavigationRequest {\n currentLink;\n constructor(currentLink) {\n this.currentLink = currentLink;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLnJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tZm9vdGVyL2RvbWFpbi9nZXQtcHJldmlvdXMtbmV4dC1wYWdlLW5hdmlnYXRpb24vZ2V0LXByZXZpb3VzLW5leHQtcGFnZS1uYXZpZ2F0aW9uLnJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLG9DQUFvQztJQUd0QztJQURULFlBQ1MsV0FBbUI7UUFBbkIsZ0JBQVcsR0FBWCxXQUFXLENBQVE7SUFDekIsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEdldFByZXZpb3VzTmV4dFBhZ2VOYXZpZ2F0aW9uUmVxdWVzdCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGN1cnJlbnRMaW5rOiBzdHJpbmcsXG4gICkge31cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class FooterNavigationButton {\n description;\n link;\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FooterNavigationButton, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FooterNavigationButton, isStandalone: true, selector: \"a[footer-navigation-button]\", inputs: { description: \"description\", link: \"link\" }, ngImport: i0, template: \"<span class=\\\"description\\\">{{ description }}</span>\\n<span class=\\\"page-title\\\">{{ link.text }}</span>\\n\", styles: [\":host{display:block;border:1px solid var(--divider-color);border-radius:2px;padding:12px 16px;flex:1;max-width:50%;min-width:260px;text-decoration:none!important;cursor:pointer;pointer-events:all}:host:hover{border-color:var(--dark-divider-color)}:host:active{border-color:var(--primary-1)}:host.next{margin-left:auto;text-align:right}:host .description{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);pointer-events:none}:host .page-title{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--primary-1);pointer-events:none}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FooterNavigationButton, decorators: [{\n type: Component,\n args: [{ selector: 'a[footer-navigation-button]', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: \"<span class=\\\"description\\\">{{ description }}</span>\\n<span class=\\\"page-title\\\">{{ link.text }}</span>\\n\", styles: [\":host{display:block;border:1px solid var(--divider-color);border-radius:2px;padding:12px 16px;flex:1;max-width:50%;min-width:260px;text-decoration:none!important;cursor:pointer;pointer-events:all}:host:hover{border-color:var(--dark-divider-color)}:host:active{border-color:var(--primary-1)}:host.next{margin-left:auto;text-align:right}:host .description{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);pointer-events:none}:host .page-title{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--primary-1);pointer-events:none}\\n\"] }]\n }], propDecorators: { description: [{\n type: Input,\n args: [{ required: true }]\n }], link: [{\n type: Input,\n args: [{ required: true }]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9mb290ZXItbmF2aWdhdGlvbi1idXR0b24vZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9mb290ZXItbmF2aWdhdGlvbi1idXR0b24vZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQUUsS0FBSyxHQUNqQixNQUFNLGVBQWUsQ0FBQzs7QUFVdkIsTUFBTSxPQUFPLHNCQUFzQjtJQUcxQixXQUFXLENBQXFCO0lBR2hDLElBQUksQ0FBdUI7dUdBTnZCLHNCQUFzQjsyRkFBdEIsc0JBQXNCLDZJQ2JuQywyR0FFQTs7MkZEV2Esc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLDZCQUE2QixtQkFHdEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJOzhCQUtULFdBQVc7c0JBRGpCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUlsQixJQUFJO3NCQURWLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSU1hcmtkb3duRm9vdGVyTGluayB9IGZyb20gJy4uL2RvbWFpbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FbZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb290ZXItbmF2aWdhdGlvbi1idXR0b24uaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9mb290ZXItbmF2aWdhdGlvbi1idXR0b24uc2NzcycgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEZvb3Rlck5hdmlnYXRpb25CdXR0b24ge1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBkZXNjcmlwdGlvbjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBsaW5rITogSU1hcmtkb3duRm9vdGVyTGluaztcbn1cbiIsIjxzcGFuIGNsYXNzPVwiZGVzY3JpcHRpb25cIj57eyBkZXNjcmlwdGlvbiB9fTwvc3Bhbj5cbjxzcGFuIGNsYXNzPVwicGFnZS10aXRsZVwiPnt7IGxpbmsudGV4dCB9fTwvc3Bhbj5cbiJdfQ==","import { ChangeDetectionStrategy, Component, computed, HostListener, inject, } from '@angular/core';\nimport { distinctUntilChanged, map, startWith } from 'rxjs';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { GetPreviousNextPageNavigationHandler, GetPreviousNextPageNavigationRequest, } from './domain';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { DocumentationStore } from '../../../services';\nimport { HandleNavigationLinksHandler, HandleNavigationLinksRequest } from '../../../domain';\nimport { WINDOW } from '../../../../common';\nimport { FooterNavigationButton } from './footer-navigation-button';\nimport { filter } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownFooter {\n _provider = inject(DocumentationStore);\n _router = inject(Router);\n _activatedRoute = inject(ActivatedRoute);\n _window = inject(WINDOW);\n navigation = this._provider.getFooterNavigation();\n _url = toSignal(this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._router.url), distinctUntilChanged()), { initialValue: this._router.url });\n _currentLink = computed(() => {\n this._url();\n return this._activatedRoute.snapshot.url.map(s => s.path).join('/');\n }, ...(ngDevMode ? [{ debugName: \"_currentLink\" }] : []));\n _prefix = computed(() => {\n const url = this._url();\n const idx = url.lastIndexOf('/');\n return idx > 0 ? url.substring(0, idx) : '';\n }, ...(ngDevMode ? [{ debugName: \"_prefix\" }] : []));\n editLink = computed(() => {\n const nav = this.navigation;\n if (!nav.editLink?.pattern)\n return undefined;\n return nav.editLink.pattern + this._currentLink() + '.md';\n }, ...(ngDevMode ? [{ debugName: \"editLink\" }] : []));\n previousLink = computed(() => {\n const prevNext = new GetPreviousNextPageNavigationHandler(this._provider)\n .handle(new GetPreviousNextPageNavigationRequest(this._currentLink()));\n return this._normalizeLink(prevNext.previousLink);\n }, ...(ngDevMode ? [{ debugName: \"previousLink\" }] : []));\n nextLink = computed(() => {\n const prevNext = new GetPreviousNextPageNavigationHandler(this._provider)\n .handle(new GetPreviousNextPageNavigationRequest(this._currentLink()));\n return this._normalizeLink(prevNext.nextLink);\n }, ...(ngDevMode ? [{ debugName: \"nextLink\" }] : []));\n _normalizeLink(item) {\n if (!item?.link)\n return item;\n if (this._isExternal(item.link))\n return item;\n const prefix = this._prefix();\n const joined = (prefix ? `${prefix}/${item.link}` : item.link)\n .replace(/\\/{2,}/g, '/');\n return { ...item, link: joined.startsWith('/') ? joined : `/${joined}` };\n }\n _isExternal(href) {\n return /^(?:[a-z]+:)?\\/\\//i.test(href) || href.startsWith('www.');\n }\n _click(event) {\n new HandleNavigationLinksHandler().handle(new HandleNavigationLinksRequest(event, this._window, this._router));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownFooter, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: MarkdownFooter, isStandalone: true, selector: \"markdown-footer\", host: { listeners: { \"click\": \"_click($event)\" } }, ngImport: i0, template: \"@let eLink = editLink();\\n@let pLink = previousLink();\\n@let nLink = nextLink();\\n\\n@if (eLink) {\\n <a class=\\\"footer-edit-link\\\" [href]=\\\"eLink\\\">\\n <span class=\\\"edit-link-icon f-icon edit\\\"></span>\\n {{ navigation.editLink?.text || 'Edit this page on GitHub' }}\\n </a>\\n}\\n\\n@if (pLink || nLink) {\\n <nav class=\\\"footer-navigation\\\">\\n @if (pLink) {\\n <a footer-navigation-button\\n [href]=\\\"pLink.link\\\"\\n [description]=\\\"navigation.previous\\\"\\n [link]=\\\"pLink\\\">\\n </a>\\n }\\n @if (nLink) {\\n <a footer-navigation-button class=\\\"next\\\"\\n [href]=\\\"nLink.link\\\"\\n [description]=\\\"navigation.next\\\"\\n [link]=\\\"nLink\\\">\\n </a>\\n }\\n </nav>\\n}\\n\\n\", styles: [\":host{display:block;margin-top:64px}.footer-edit-link{display:flex;width:fit-content;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--primary-1);cursor:pointer;padding-bottom:18px}.footer-edit-link .edit-link-icon{margin-right:8px;width:14px;height:14px;color:inherit}.footer-edit-link:hover{color:var(--primary-2)}@media (min-width: 640px){.footer-edit-link{padding-bottom:14px}}.footer-navigation{border-top:1px solid var(--divider-color);padding-top:24px;display:flex;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:16px}\\n\"], dependencies: [{ kind: \"component\", type: FooterNavigationButton, selector: \"a[footer-navigation-button]\", inputs: [\"description\", \"link\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownFooter, decorators: [{\n type: Component,\n args: [{ selector: 'markdown-footer', changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n FooterNavigationButton,\n ], standalone: true, template: \"@let eLink = editLink();\\n@let pLink = previousLink();\\n@let nLink = nextLink();\\n\\n@if (eLink) {\\n <a class=\\\"footer-edit-link\\\" [href]=\\\"eLink\\\">\\n <span class=\\\"edit-link-icon f-icon edit\\\"></span>\\n {{ navigation.editLink?.text || 'Edit this page on GitHub' }}\\n </a>\\n}\\n\\n@if (pLink || nLink) {\\n <nav class=\\\"footer-navigation\\\">\\n @if (pLink) {\\n <a footer-navigation-button\\n [href]=\\\"pLink.link\\\"\\n [description]=\\\"navigation.previous\\\"\\n [link]=\\\"pLink\\\">\\n </a>\\n }\\n @if (nLink) {\\n <a footer-navigation-button class=\\\"next\\\"\\n [href]=\\\"nLink.link\\\"\\n [description]=\\\"navigation.next\\\"\\n [link]=\\\"nLink\\\">\\n </a>\\n }\\n </nav>\\n}\\n\\n\", styles: [\":host{display:block;margin-top:64px}.footer-edit-link{display:flex;width:fit-content;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--primary-1);cursor:pointer;padding-bottom:18px}.footer-edit-link .edit-link-icon{margin-right:8px;width:14px;height:14px;color:inherit}.footer-edit-link:hover{color:var(--primary-2)}@media (min-width: 640px){.footer-edit-link{padding-bottom:14px}}.footer-navigation{border-top:1px solid var(--divider-color);padding-top:24px;display:flex;justify-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:16px}\\n\"] }]\n }], propDecorators: { _click: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tZm9vdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL21hcmtkb3duLWZvb3Rlci9tYXJrZG93bi1mb290ZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tZm9vdGVyL21hcmtkb3duLWZvb3Rlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLFFBQVEsRUFDbkIsWUFBWSxFQUNaLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQ0wsb0NBQW9DLEVBQ3BDLG9DQUFvQyxHQUVyQyxNQUFNLFVBQVUsQ0FBQztBQUNsQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLDRCQUE0QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0Is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QUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIGNvbXB1dGVkLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgR2V0UHJldmlvdXNOZXh0UGFnZU5hdmlnYXRpb25IYW5kbGVyLFxuICBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QsXG4gIElNYXJrZG93bkZvb3RlckxpbmssXG59IGZyb20gJy4vZG9tYWluJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRG9jdW1lbnRhdGlvblN0b3JlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgSGFuZGxlTmF2aWdhdGlvbkxpbmtzSGFuZGxlciwgSGFuZGxlTmF2aWdhdGlvbkxpbmtzUmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbic7XG5pbXBvcnQgeyBXSU5ET1cgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgRm9vdGVyTmF2aWdhdGlvbkJ1dHRvbiB9IGZyb20gJy4vZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWFya2Rvd24tZm9vdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLWZvb3Rlci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFya2Rvd24tZm9vdGVyLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBGb290ZXJOYXZpZ2F0aW9uQnV0dG9uLFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBNYXJrZG93bkZvb3RlciB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcHJvdmlkZXIgPSBpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5hdmlnYXRpb24gPSB0aGlzLl9wcm92aWRlci5nZXRGb290ZXJOYXZpZ2F0aW9uKCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdXJsID0gdG9TaWduYWwodGhpcy5fcm91dGVyLmV2ZW50cy5waXBlKFxuICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICBmaWx0ZXIoKGUpOiBlIGlzIE5hdmlnYXRpb25FbmQgfCBudWxsID0+IGUgPT09IG51bGwgfHwgZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxuICAgIG1hcCgoKSA9PiB0aGlzLl9yb3V0ZXIudXJsKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICApLCB7IGluaXRpYWxWYWx1ZTogdGhpcy5fcm91dGVyLnVybCB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jdXJyZW50TGluayA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICB0aGlzLl91cmwoKTtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZhdGVkUm91dGUuc25hcHNob3QudXJsLm1hcChzID0+IHMucGF0aCkuam9pbignLycpO1xuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9wcmVmaXggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5fdXJsKCk7XG4gICAgY29uc3QgaWR4ID0gdXJsLmxhc3RJbmRleE9mKCcvJyk7XG4gICAgcmV0dXJuIGlkeCA+IDAgPyB1cmwuc3Vic3RyaW5nKDAsIGlkeCkgOiAnJztcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVkaXRMaW5rID0gY29tcHV0ZWQ8c3RyaW5nIHwgdW5kZWZpbmVkPigoKSA9PiB7XG4gICAgY29uc3QgbmF2ID0gdGhpcy5uYXZpZ2F0aW9uO1xuICAgIGlmICghbmF2LmVkaXRMaW5rPy5wYXR0ZXJuKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBuYXYuZWRpdExpbmsucGF0dGVybiArIHRoaXMuX2N1cnJlbnRMaW5rKCkgKyAnLm1kJztcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHByZXZpb3VzTGluayA9IGNvbXB1dGVkPElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBwcmV2TmV4dCA9IG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvbkhhbmRsZXIodGhpcy5fcHJvdmlkZXIpXG4gICAgICAuaGFuZGxlKG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QodGhpcy5fY3VycmVudExpbmsoKSkpO1xuICAgIHJldHVybiB0aGlzLl9ub3JtYWxpemVMaW5rKHByZXZOZXh0LnByZXZpb3VzTGluayk7XG4gIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBuZXh0TGluayA9IGNvbXB1dGVkPElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQ+KCgpID0+IHtcbiAgICBjb25zdCBwcmV2TmV4dCA9IG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvbkhhbmRsZXIodGhpcy5fcHJvdmlkZXIpXG4gICAgICAuaGFuZGxlKG5ldyBHZXRQcmV2aW91c05leHRQYWdlTmF2aWdhdGlvblJlcXVlc3QodGhpcy5fY3VycmVudExpbmsoKSkpO1xuICAgIHJldHVybiB0aGlzLl9ub3JtYWxpemVMaW5rKHByZXZOZXh0Lm5leHRMaW5rKTtcbiAgfSk7XG5cbiAgcHJpdmF0ZSBfbm9ybWFsaXplTGluayhpdGVtPzogSU1hcmtkb3duRm9vdGVyTGluayk6IElNYXJrZG93bkZvb3RlckxpbmsgfCB1bmRlZmluZWQge1xuICAgIGlmICghaXRlbT8ubGluaykgcmV0dXJuIGl0ZW07XG4gICAgaWYgKHRoaXMuX2lzRXh0ZXJuYWwoaXRlbS5saW5rKSkgcmV0dXJuIGl0ZW07XG5cbiAgICBjb25zdCBwcmVmaXggPSB0aGlzLl9wcmVmaXgoKTtcbiAgICBjb25zdCBqb2luZWQgPSAocHJlZml4ID8gYCR7cHJlZml4fS8ke2l0ZW0ubGlua31gIDogaXRlbS5saW5rKVxuICAgICAgLnJlcGxhY2UoL1xcL3syLH0vZywgJy8nKTtcblxuICAgIHJldHVybiB7IC4uLml0ZW0sIGxpbms6IGpvaW5lZC5zdGFydHNXaXRoKCcvJykgPyBqb2luZWQgOiBgLyR7am9pbmVkfWAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzRXh0ZXJuYWwoaHJlZjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIC9eKD86W2Etel0rOik/XFwvXFwvL2kudGVzdChocmVmKSB8fCBocmVmLnN0YXJ0c1dpdGgoJ3d3dy4nKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgcHJpdmF0ZSBfY2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBuZXcgSGFuZGxlTmF2aWdhdGlvbkxpbmtzSGFuZGxlcigpLmhhbmRsZShcbiAgICAgIG5ldyBIYW5kbGVOYXZpZ2F0aW9uTGlua3NSZXF1ZXN0KGV2ZW50LCB0aGlzLl93aW5kb3csIHRoaXMuX3JvdXRlciksXG4gICAgKTtcbiAgfVxufVxuIiwiQGxldCBlTGluayA9IGVkaXRMaW5rKCk7XG5AbGV0IHBMaW5rID0gcHJldmlvdXNMaW5rKCk7XG5AbGV0IG5MaW5rID0gbmV4dExpbmsoKTtcblxuQGlmIChlTGluaykge1xuICA8YSBjbGFzcz1cImZvb3Rlci1lZGl0LWxpbmtcIiBbaHJlZl09XCJlTGlua1wiPlxuICAgIDxzcGFuIGNsYXNzPVwiZWRpdC1saW5rLWljb24gZi1pY29uIGVkaXRcIj48L3NwYW4+XG4gICAge3sgbmF2aWdhdGlvbi5lZGl0TGluaz8udGV4dCB8fCAnRWRpdCB0aGlzIHBhZ2Ugb24gR2l0SHViJyB9fVxuICA8L2E+XG59XG5cbkBpZiAocExpbmsgfHwgbkxpbmspIHtcbiAgPG5hdiBjbGFzcz1cImZvb3Rlci1uYXZpZ2F0aW9uXCI+XG4gICAgQGlmIChwTGluaykge1xuICAgICAgPGEgZm9vdGVyLW5hdmlnYXRpb24tYnV0dG9uXG4gICAgICAgICBbaHJlZl09XCJwTGluay5saW5rXCJcbiAgICAgICAgIFtkZXNjcmlwdGlvbl09XCJuYXZpZ2F0aW9uLnByZXZpb3VzXCJcbiAgICAgICAgIFtsaW5rXT1cInBMaW5rXCI+XG4gICAgICA8L2E+XG4gICAgfVxuICAgIEBpZiAobkxpbmspIHtcbiAgICAgIDxhIGZvb3Rlci1uYXZpZ2F0aW9uLWJ1dHRvbiBjbGFzcz1cIm5leHRcIlxuICAgICAgICAgW2hyZWZdPVwibkxpbmsubGlua1wiXG4gICAgICAgICBbZGVzY3JpcHRpb25dPVwibmF2aWdhdGlvbi5uZXh0XCJcbiAgICAgICAgIFtsaW5rXT1cIm5MaW5rXCI+XG4gICAgICA8L2E+XG4gICAgfVxuICA8L25hdj5cbn1cblxuIl19","export var EMarkdownContainerType;\n(function (EMarkdownContainerType) {\n EMarkdownContainerType[\"CODE_GROUP\"] = \"code-group\";\n EMarkdownContainerType[\"EXAMPLE_GROUP\"] = \"ng-component\";\n EMarkdownContainerType[\"PREVIEW_GROUP\"] = \"preview-group\";\n EMarkdownContainerType[\"SHOWCASE\"] = \"showcase\";\n EMarkdownContainerType[\"ALERT_TIP\"] = \"tip\";\n EMarkdownContainerType[\"ALERT_INFO\"] = \"info\";\n EMarkdownContainerType[\"ALERT_WARNING\"] = \"warning\";\n EMarkdownContainerType[\"ALERT_DANGER\"] = \"danger\";\n EMarkdownContainerType[\"ALERT_SUCCESS\"] = \"success\";\n})(EMarkdownContainerType || (EMarkdownContainerType = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1tYXJrZG93bi1jb250YWluZXItdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9kb21haW4vZS1tYXJrZG93bi1jb250YWluZXItdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxzQkFtQlg7QUFuQkQsV0FBWSxzQkFBc0I7SUFFaEMsbURBQXlCLENBQUE7SUFFekIsd0RBQThCLENBQUE7SUFFOUIseURBQStCLENBQUE7SUFFL0IsK0NBQXFCLENBQUE7SUFFckIsMkNBQWlCLENBQUE7SUFFakIsNkNBQW1CLENBQUE7SUFFbkIsbURBQXlCLENBQUE7SUFFekIsaURBQXVCLENBQUE7SUFFdkIsbURBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQW5CVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBbUJqQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEVNYXJrZG93bkNvbnRhaW5lclR5cGUge1xuXG4gIENPREVfR1JPVVAgPSAnY29kZS1ncm91cCcsXG5cbiAgRVhBTVBMRV9HUk9VUCA9ICduZy1jb21wb25lbnQnLFxuXG4gIFBSRVZJRVdfR1JPVVAgPSAncHJldmlldy1ncm91cCcsXG5cbiAgU0hPV0NBU0UgPSAnc2hvd2Nhc2UnLFxuXG4gIEFMRVJUX1RJUCA9ICd0aXAnLFxuXG4gIEFMRVJUX0lORk8gPSAnaW5mbycsXG5cbiAgQUxFUlRfV0FSTklORyA9ICd3YXJuaW5nJyxcblxuICBBTEVSVF9EQU5HRVIgPSAnZGFuZ2VyJyxcblxuICBBTEVSVF9TVUNDRVNTID0gJ3N1Y2Nlc3MnXG59XG4iXX0=","export var EParsedContainerType;\n(function (EParsedContainerType) {\n EParsedContainerType[\"CODE\"] = \"code\";\n EParsedContainerType[\"EXAMPLE\"] = \"ng-component\";\n})(EParsedContainerType || (EParsedContainerType = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1wYXJzZWQtY29udGFpbmVyLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvdXRpbHMvZG9tYWluL2UtcGFyc2VkLWNvbnRhaW5lci10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLG9CQUtYO0FBTEQsV0FBWSxvQkFBb0I7SUFFOUIscUNBQWEsQ0FBQTtJQUViLGdEQUF3QixDQUFBO0FBQzFCLENBQUMsRUFMVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBSy9CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRVBhcnNlZENvbnRhaW5lclR5cGUge1xuXG4gIENPREUgPSAnY29kZScsXG5cbiAgRVhBTVBMRSA9ICduZy1jb21wb25lbnQnLFxufVxuIl19","import { InjectionToken } from \"@angular/core\";\nexport const F_PREVIEW_NAVIGATION_PROVIDER = new InjectionToken('F_PREVIEW_NAVIGATION_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1wcmV2aWV3LW5hdmlnYXRpb24tc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9kb21haW4vaS1wcmV2aWV3LW5hdmlnYXRpb24tc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTy9DLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLElBQUksY0FBYyxDQUFxRCwrQkFBK0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSVByZXZpZXdOYXZpZ2F0aW9uR3JvdXAgfSBmcm9tIFwiLi9pLXByZXZpZXctbmF2aWdhdGlvbi1ncm91cFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQcmV2aWV3TmF2aWdhdGlvblNlcnZpY2U8VCBleHRlbmRzIElQcmV2aWV3TmF2aWdhdGlvbkdyb3VwPiB7XG4gIGdldE5hdmlnYXRpb24oKTogVFtdO1xufVxuXG5leHBvcnQgY29uc3QgRl9QUkVWSUVXX05BVklHQVRJT05fUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48SVByZXZpZXdOYXZpZ2F0aW9uU2VydmljZTxJUHJldmlld05hdmlnYXRpb25Hcm91cD4+KCdGX1BSRVZJRVdfTkFWSUdBVElPTl9QUk9WSURFUicpO1xuIl19","import { inject, Injectable } from '@angular/core';\nimport { of, switchMap } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport MarkdownIt from 'markdown-it';\nimport { EMarkdownContainerType, ParseAlerts, ParseAngularExampleWithCodeLinks, ParseGroupedCodeItems, ParsePreviewGroup, ParseShowcase, ParseSingleCodeItem, } from './index';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { catchError, take } from 'rxjs/operators';\nimport { Router } from '@angular/router';\nimport { F_PREVIEW_NAVIGATION_PROVIDER } from './domain';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownService {\n _markdown = new MarkdownIt({ html: true, linkify: true });\n _httpClient = inject(HttpClient);\n _domSanitizer = inject(DomSanitizer);\n _router = inject(Router);\n _provider = inject(F_PREVIEW_NAVIGATION_PROVIDER, { optional: true });\n constructor() {\n this._markdown\n .use((x) => new ParseSingleCodeItem().render(x))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_TIP, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_INFO, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_WARNING, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_DANGER, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_DANGER, this._markdown))\n .use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_SUCCESS, this._markdown))\n .use(...new ParseGroupedCodeItems().render())\n .use(...new ParsePreviewGroup(this._provider?.getNavigation() || []).render())\n .use(...new ParseShowcase().render())\n .use(...new ParseAngularExampleWithCodeLinks().render());\n }\n parseUrl(src) {\n return this._httpClient.get(src, { responseType: 'text' }).pipe(take(1), catchError(() => of(''))).pipe(switchMap((text) => of(this._markdown.render(text))), switchMap((x) => of(this._cleanupEmptyParagraphs(x))), switchMap((x) => of(this._cleanupWasteParagraphFromExampleView(x))), switchMap((x) => of(this._cleanupWasteParagraphFromPreviewGroup(x))), switchMap((x) => of(this._normalizeLinks(x))), switchMap((x) => of(this._domSanitizer.bypassSecurityTrustHtml(x))));\n }\n parseText(value) {\n return of(this._markdown.render(value)).pipe(switchMap((x) => of(this._cleanupEmptyParagraphs(x))), switchMap((x) => of(this._cleanupWasteParagraphFromExampleView(x))), switchMap((x) => of(this._cleanupWasteParagraphFromPreviewGroup(x))), switchMap((x) => of(this._normalizeLinks(x))), switchMap((x) => of(this._domSanitizer.bypassSecurityTrustHtml(x))));\n }\n _normalizeLinks(html) {\n const currentPath = this._router.url;\n const prefix = currentPath.substring(0, currentPath.lastIndexOf('/'));\n return html.replace(/<a\\s+href=\"([^\"]*)\"/g, (match, href) => {\n if (!this._isExternalLink(href)) {\n let newHref = href.substring(0);\n if (!href.startsWith('./')) {\n newHref = href.startsWith('/') ? `${prefix}${href}` : `${prefix}/${href}`;\n }\n return `<a href=\"${newHref}\"`;\n }\n return match;\n });\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n _cleanupEmptyParagraphs(html) {\n return html.replace(/<p>\\s*<\\/p>/g, '');\n }\n _cleanupWasteParagraphFromExampleView(html) {\n return html.replace(/<div class=\"f-code-group-body\">\\s*<p>[^<]*<\\/p>/g, '<div class=\"f-code-group-body\">');\n }\n _cleanupWasteParagraphFromPreviewGroup(html) {\n return html.replace(/<p>(\\[[^\\]]+\\](\\s*\\[[^\\]]+\\])*)<\\/p>/g, '');\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownService, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9tYXJrZG93bi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLFVBQVUsTUFBTSxhQUFhLENBQUM7QUFFckMsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixXQUFXLEVBQ1gsZ0NBQWdDLEVBQ2hDLHFCQUFxQixFQUNyQixpQkFBaUIsRUFBRSxhQUFhLEVBQ2hDLG1CQUFtQixHQUNwQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsWUFBWSxFQUFZLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUd6RCxNQUFNLE9BQU8sZUFBZTtJQUVULFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUQsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxhQUFhLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3JDLE9BQU8sR0FBRyxNQUFN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ZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IE1hcmtkb3duSXQgZnJvbSAnbWFya2Rvd24taXQnO1xuXG5pbXBvcnQge1xuICBFTWFya2Rvd25Db250YWluZXJUeXBlLFxuICBQYXJzZUFsZXJ0cyxcbiAgUGFyc2VBbmd1bGFyRXhhbXBsZVdpdGhDb2RlTGlua3MsXG4gIFBhcnNlR3JvdXBlZENvZGVJdGVtcyxcbiAgUGFyc2VQcmV2aWV3R3JvdXAsIFBhcnNlU2hvd2Nhc2UsXG4gIFBhcnNlU2luZ2xlQ29kZUl0ZW0sXG59IGZyb20gJy4vaW5kZXgnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGX1BSRVZJRVdfTkFWSUdBVElPTl9QUk9WSURFUiB9IGZyb20gJy4vZG9tYWluJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcmtkb3duU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbWFya2Rvd24gPSBuZXcgTWFya2Rvd25JdCh7IGh0bWw6IHRydWUsIGxpbmtpZnk6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2h0dHBDbGllbnQgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvbVNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcHJvdmlkZXIgPSBpbmplY3QoRl9QUkVWSUVXX05BVklHQVRJT05fUFJPVklERVIsIHtvcHRpb25hbDogdHJ1ZX0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX21hcmtkb3duXG4gICAgICAudXNlKCh4KSA9PiBuZXcgUGFyc2VTaW5nbGVDb2RlSXRlbSgpLnJlbmRlcih4KSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfVElQLCB0aGlzLl9tYXJrZG93bikpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFsZXJ0cygpLnJlbmRlcihFTWFya2Rvd25Db250YWluZXJUeXBlLkFMRVJUX0lORk8sIHRoaXMuX21hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfV0FSTklORywgdGhpcy5fbWFya2Rvd24pKVxuICAgICAgLnVzZSguLi5uZXcgUGFyc2VBbGVydHMoKS5yZW5kZXIoRU1hcmtkb3duQ29udGFpbmVyVHlwZS5BTEVSVF9EQU5HRVIsIHRoaXMuX21hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfREFOR0VSLCB0aGlzLl9tYXJrZG93bikpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFsZXJ0cygpLnJlbmRlcihFTWFya2Rvd25Db250YWluZXJUeXBlLkFMRVJUX1NVQ0NFU1MsIHRoaXMuX21hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlR3JvdXBlZENvZGVJdGVtcygpLnJlbmRlcigpKVxuICAgICAgLnVzZSguLi5uZXcgUGFyc2VQcmV2aWV3R3JvdXAodGhpcy5fcHJvdmlkZXI/LmdldE5hdmlnYXRpb24oKSB8fCBbXSkucmVuZGVyKCkpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZVNob3djYXNlKCkucmVuZGVyKCkpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFuZ3VsYXJFeGFtcGxlV2l0aENvZGVMaW5rcygpLnJlbmRlcigpKTtcbiAgfVxuXG4gIHB1YmxpYyBwYXJzZVVybChzcmM6IHN0cmluZyk6IE9ic2VydmFibGU8U2FmZUh0bWw+IHtcbiAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5nZXQoc3JjLCB7IHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pLnBpcGUodGFrZSgxKSwgY2F0Y2hFcnJvcigoKSA9PiBvZignJykpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh0ZXh0KSA9PiBvZih0aGlzLl9tYXJrZG93bi5yZW5kZXIodGV4dCkpKSxcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4gb2YodGhpcy5fY2xlYW51cEVtcHR5UGFyYWdyYXBocyh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9jbGVhbnVwV2FzdGVQYXJhZ3JhcGhGcm9tRXhhbXBsZVZpZXcoeCkpKSxcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4gb2YodGhpcy5fY2xlYW51cFdhc3RlUGFyYWdyYXBoRnJvbVByZXZpZXdHcm91cCh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9ub3JtYWxpemVMaW5rcyh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoeCkpKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHBhcnNlVGV4dCh2YWx1ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxTYWZlSHRtbD4ge1xuICAgIHJldHVybiBvZih0aGlzLl9tYXJrZG93bi5yZW5kZXIodmFsdWUpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9jbGVhbnVwRW1wdHlQYXJhZ3JhcGhzKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuX2NsZWFudXBXYXN0ZVBhcmFncmFwaEZyb21FeGFtcGxlVmlldyh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLl9jbGVhbnVwV2FzdGVQYXJhZ3JhcGhGcm9tUHJldmlld0dyb3VwKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuX25vcm1hbGl6ZUxpbmtzKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuX2RvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh4KSkpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9ub3JtYWxpemVMaW5rcyhodG1sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gdGhpcy5fcm91dGVyLnVybDtcbiAgICBjb25zdCBwcmVmaXggPSBjdXJyZW50UGF0aC5zdWJzdHJpbmcoMCwgY3VycmVudFBhdGgubGFzdEluZGV4T2YoJy8nKSk7XG5cbiAgICByZXR1cm4gaHRtbC5yZXBsYWNlKC88YVxccytocmVmPVwiKFteXCJdKilcIi9nLCAobWF0Y2gsIGhyZWYpID0+IHtcbiAgICAgIGlmICghdGhpcy5faXNFeHRlcm5hbExpbmsoaHJlZikpIHtcbiAgICAgICAgbGV0IG5ld0hyZWYgPSBocmVmLnN1YnN0cmluZygwKTtcbiAgICAgICAgaWYgKCFocmVmLnN0YXJ0c1dpdGgoJy4vJykpIHtcbiAgICAgICAgICBuZXdIcmVmID0gaHJlZi5zdGFydHNXaXRoKCcvJykgPyBgJHtwcmVmaXh9JHtocmVmfWAgOiBgJHtwcmVmaXh9LyR7aHJlZn1gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgPGEgaHJlZj1cIiR7bmV3SHJlZn1cImA7XG4gICAgICB9XG4gICAgICByZXR1cm4gbWF0Y2g7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9pc0V4dGVybmFsTGluayhocmVmOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaHJlZi5zdGFydHNXaXRoKCd3d3cnKSB8fCBocmVmLnN0YXJ0c1dpdGgoJ2h0dHAnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NsZWFudXBFbXB0eVBhcmFncmFwaHMoaHRtbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaHRtbC5yZXBsYWNlKC88cD5cXHMqPFxcL3A+L2csICcnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NsZWFudXBXYXN0ZVBhcmFncmFwaEZyb21FeGFtcGxlVmlldyhodG1sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBodG1sLnJlcGxhY2UoLzxkaXYgY2xhc3M9XCJmLWNvZGUtZ3JvdXAtYm9keVwiPlxccyo8cD5bXjxdKjxcXC9wPi9nLCAnPGRpdiBjbGFzcz1cImYtY29kZS1ncm91cC1ib2R5XCI+Jyk7XG4gIH1cblxuICBwcml2YXRlIF9jbGVhbnVwV2FzdGVQYXJhZ3JhcGhGcm9tUHJldmlld0dyb3VwKGh0bWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGh0bWwucmVwbGFjZSgvPHA+KFxcW1teXFxdXStcXF0oXFxzKlxcW1teXFxdXStcXF0pKik8XFwvcD4vZywgJycpO1xuICB9XG59XG5cbiJdfQ==","export function getContent(tokens, index, eContainerType) {\n let result;\n for (let i = index + 1; i < tokens.length; i++) {\n if (tokens[i].type === `container_${eContainerType}_close`) {\n break;\n }\n if (isInlineToken(tokens[i])) {\n result = tokens[i].content;\n break;\n }\n }\n return result;\n}\nfunction isInlineToken(token) {\n return token.type === 'inline' && !token.tag;\n}\nexport function encodeDataAttr(data) {\n return JSON.stringify(data).replace(/\"/g, '&quot;');\n}\nexport function isOpeningToken(token) {\n return token.nesting === 1;\n}\nexport function isClosingToken(token) {\n return token.nesting === -1;\n}\nexport function parseFileLinkLine(line) {\n const match = line.match(/\\[(.+?)\\] <<< (.+)/);\n return match ? { fileName: match[1], url: match[2] } : null;\n}\nexport function parseSingleBracketText(line) {\n const match = line.match(/\\[(.+?)\\]/);\n return match ? match[1] : null;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLFVBQVUsQ0FBQyxNQUEwQixFQUFFLEtBQWEsRUFBRSxjQUFzQjtJQUMxRixJQUFJLE1BQTBCLENBQUM7SUFFL0IsS0FBSyxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDL0MsSUFBSSxNQUFNLENBQUUsQ0FBQyxDQUFFLENBQUMsSUFBSSxLQUFLLGFBQWMsY0FBZSxRQUFRLEVBQUUsQ0FBQztZQUMvRCxNQUFNO1FBQ1IsQ0FBQztRQUNELElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxHQUFHLE1BQU0sQ0FBRSxDQUFDLENBQUUsQ0FBQyxPQUFPLENBQUM7WUFDN0IsTUFBTTtRQUNSLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEtBQXVCO0lBQzVDLE9BQU8sS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLElBQWE7SUFDMUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDdEQsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsS0FBdUI7SUFDcEQsT0FBTyxLQUFLLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQztBQUM3QixDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUF1QjtJQUNwRCxPQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxJQUFZO0lBQzVDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUMvQyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQzlELENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsSUFBWTtJQUNqRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1hcmtkb3duSXRUb2tlbiB9IGZyb20gJy4vZG9tYWluJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbnRlbnQodG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIsIGVDb250YWluZXJUeXBlOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBsZXQgcmVzdWx0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgZm9yIChsZXQgaSA9IGluZGV4ICsgMTsgaSA8IHRva2Vucy5sZW5ndGg7IGkrKykge1xuICAgIGlmICh0b2tlbnNbIGkgXS50eXBlID09PSBgY29udGFpbmVyXyR7IGVDb250YWluZXJUeXBlIH1fY2xvc2VgKSB7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgaWYgKGlzSW5saW5lVG9rZW4odG9rZW5zWyBpIF0pKSB7XG4gICAgICByZXN1bHQgPSB0b2tlbnNbIGkgXS5jb250ZW50O1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIGlzSW5saW5lVG9rZW4odG9rZW46IElNYXJrZG93bkl0VG9rZW4pOiBib29sZWFuIHtcbiAgcmV0dXJuIHRva2VuLnR5cGUgPT09ICdpbmxpbmUnICYmICF0b2tlbi50YWc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVEYXRhQXR0cihkYXRhOiB1bmtub3duKTogc3RyaW5nIHtcbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGRhdGEpLnJlcGxhY2UoL1wiL2csICcmcXVvdDsnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzT3BlbmluZ1Rva2VuKHRva2VuOiBJTWFya2Rvd25JdFRva2VuKTogYm9vbGVhbiB7XG4gIHJldHVybiB0b2tlbi5uZXN0aW5nID09PSAxO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNDbG9zaW5nVG9rZW4odG9rZW46IElNYXJrZG93bkl0VG9rZW4pOiBib29sZWFuIHtcbiAgcmV0dXJuIHRva2VuLm5lc3RpbmcgPT09IC0xO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VGaWxlTGlua0xpbmUobGluZTogc3RyaW5nKTogeyBmaWxlTmFtZTogc3RyaW5nLCB1cmw6IHN0cmluZyB9IHwgbnVsbCB7XG4gIGNvbnN0IG1hdGNoID0gbGluZS5tYXRjaCgvXFxbKC4rPylcXF0gPDw8ICguKykvKTtcbiAgcmV0dXJuIG1hdGNoID8geyBmaWxlTmFtZTogbWF0Y2hbMV0sIHVybDogbWF0Y2hbMl0gfSA6IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVNpbmdsZUJyYWNrZXRUZXh0KGxpbmU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCBtYXRjaCA9IGxpbmUubWF0Y2goL1xcWyguKz8pXFxdLyk7XG4gIHJldHVybiBtYXRjaCA/IG1hdGNoWzFdIDogbnVsbDtcbn1cbiJdfQ==","import container from 'markdown-it-container';\nimport { isOpeningToken } from './utils';\nexport class ParseAlerts {\n render(type, markdown) {\n return [container, type, {\n render: (tokens, index) => {\n const token = tokens[index];\n const info = token.info.trim().slice(type.length).trim();\n if (isOpeningToken(token)) {\n const title = markdown.renderInline(info);\n return `<div class=\"f-alert ${type}\"><p class=\"f-alert-title\">${title}</p>\\n`;\n }\n else {\n return `</div>\\n`;\n }\n },\n }];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtYWxlcnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL3V0aWxzL3BhcnNlLWFsZXJ0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSXpDLE1BQU0sT0FBTyxXQUFXO0lBRWYsTUFBTSxDQUFDLElBQVksRUFBRSxRQUFvQjtRQUM5QyxPQUFPLENBQUUsU0FBUyxFQUFFLElBQUksRUFBRTtnQkFDeEIsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFFLEtBQUssQ0FBRSxDQUFDO29CQUM5QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3pELElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7d0JBQzFCLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQzFDLE9BQU8sdUJBQXdCLElBQUssOEJBQStCLEtBQU0sUUFBUSxDQUFDO29CQUNwRixDQUFDO3lCQUFNLENBQUM7d0JBQ04sT0FBTyxVQUFVLENBQUM7b0JBQ3BCLENBQUM7Z0JBQ0gsQ0FBQzthQUNGLENBQUUsQ0FBQztJQUNOLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNYXJrZG93bkl0IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCBjb250YWluZXIgZnJvbSAnbWFya2Rvd24taXQtY29udGFpbmVyJztcbmltcG9ydCB7IElNYXJrZG93bkl0VG9rZW4gfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBpc09wZW5pbmdUb2tlbiB9IGZyb20gJy4vdXRpbHMnO1xuXG50eXBlIENvbnRhaW5lckFyZ3MgPSBbIHR5cGVvZiBjb250YWluZXIsIHN0cmluZywgeyByZW5kZXI6IGFueSB9IF1cblxuZXhwb3J0IGNsYXNzIFBhcnNlQWxlcnRzIHtcblxuICBwdWJsaWMgcmVuZGVyKHR5cGU6IHN0cmluZywgbWFya2Rvd246IE1hcmtkb3duSXQpOiBDb250YWluZXJBcmdzIHtcbiAgICByZXR1cm4gWyBjb250YWluZXIsIHR5cGUsIHtcbiAgICAgIHJlbmRlcjogKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gdG9rZW5zWyBpbmRleCBdO1xuICAgICAgICBjb25zdCBpbmZvID0gdG9rZW4uaW5mby50cmltKCkuc2xpY2UodHlwZS5sZW5ndGgpLnRyaW0oKTtcbiAgICAgICAgaWYgKGlzT3BlbmluZ1Rva2VuKHRva2VuKSkge1xuICAgICAgICAgIGNvbnN0IHRpdGxlID0gbWFya2Rvd24ucmVuZGVySW5saW5lKGluZm8pO1xuICAgICAgICAgIHJldHVybiBgPGRpdiBjbGFzcz1cImYtYWxlcnQgJHsgdHlwZSB9XCI+PHAgY2xhc3M9XCJmLWFsZXJ0LXRpdGxlXCI+JHsgdGl0bGUgfTwvcD5cXG5gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBgPC9kaXY+XFxuYDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9IF07XG4gIH1cbn1cbiJdfQ==","import container from 'markdown-it-container';\nimport { EMarkdownContainerType } from './domain';\nimport { EParsedContainerType } from \"./domain\";\nimport { encodeDataAttr, isClosingToken, isOpeningToken } from './utils';\nconst F_CONTAINER_CLOSE_TAG = 'container_code-group_close';\nexport class ParseGroupedCodeItems {\n render() {\n return [container, EMarkdownContainerType.CODE_GROUP, {\n render: (tokens, index) => {\n if (isOpeningToken(tokens[index])) {\n return this._openingExampleGroupHTML(this._generateData(tokens, index));\n }\n return '</f-code-group>';\n },\n }];\n }\n _generateData(tokens, index) {\n const result = [];\n for (let i = index + 1; !this._isClosingToken(tokens, i); i++) {\n if (this._isCodeFenceToken(tokens[i])) {\n result.push({\n tab: this._getCodeBlockTitle(tokens[i].info),\n value: tokens[i].content,\n type: EParsedContainerType.CODE,\n isLink: false,\n height: 'auto',\n language: this._getCodeLanguage(tokens[i].info),\n });\n }\n }\n return result;\n }\n _isClosingToken(token, index) {\n return isClosingToken(token[index]) && token[index].type === F_CONTAINER_CLOSE_TAG;\n }\n _isCodeFenceToken(token) {\n return token.type === 'fence' && token.tag === 'code';\n }\n _openingExampleGroupHTML(data) {\n return `<f-code-group data-data=\"${encodeDataAttr(data)}\">`;\n }\n _getCodeBlockTitle(data) {\n return data.match(/\\[(.*)\\]/)?.[1] || this._getCodeLanguage(data) || 'txt';\n }\n _getCodeLanguage(data) {\n const match = data.trim().match(/^([a-zA-Z0-9_-]+)\\s*\\[.*\\]$/);\n return match ? match[1] : '';\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtZ3JvdXBlZC1jb2RlLWl0ZW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJlbmRlcmVyL3V0aWxzL3BhcnNlLWdyb3VwZWQtY29kZS1pdGVtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEQsT0FBTyxFQUFFLG9CQUFvQixFQUF3QixNQUFNLFVBQVUsQ0FBQztBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHekUsTUFBTSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUUzRCxNQUFNLE9BQU8scUJBQXFCO0lBRXpCLE1BQU07UUFDWCxPQUFPLENBQUMsU0FBUyxFQUFFLHNCQUFzQixDQUFDLFVBQVUsRUFBRTtnQkFDcEQsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDbEMsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztvQkFDMUUsQ0FBQztvQkFDRCxPQUFPLGlCQUFpQixDQUFDO2dCQUMzQixDQUFDO2FBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGFBQWEsQ0FBQyxNQUEwQixFQUFFLEtBQWE7UUFDN0QsTUFBTSxNQUFNLEdBQTJCLEVBQUUsQ0FBQztRQUUxQyxLQUFLLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzlELElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RDLE1BQU0sQ0FBQyxJQUFJLENBQUM7b0JBQ1YsR0FBRyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUM1QyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87b0JBQ3hCLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxJQUFJO29CQUMvQixNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsTUFBTTtvQkFDZCxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7aUJBQ2hELENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUF5QixFQUFFLEtBQWE7UUFDOUQsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyxxQkFBcUIsQ0FBQztJQUNyRixDQUFDO0lBRU8saUJBQWlCLENBQUMsS0FBdUI7UUFDL0MsT0FBTyxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE1BQU0sQ0FBQztJQUN4RCxDQUFDO0lBRU8sd0JBQXdCLENBQUMsSUFBNEI7UUFDM0QsT0FBTyw0QkFBNEIsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDOUQsQ0FBQztJQUVPLGtCQUFrQixDQUFDLElBQVk7UUFDckMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUM3RSxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsSUFBWTtRQUNuQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFDL0QsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQy9CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjb250YWluZXIgZnJvbSAnbWFya2Rvd24taXQtY29udGFpbmVyJztcbmltcG9ydCB7IEVNYXJrZG93bkNvbnRhaW5lclR5cGUgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBJTWFya2Rvd25JdFRva2VuIH0gZnJvbSAnLi9kb21haW4nO1xuaW1wb3J0IHsgRVBhcnNlZENvbnRhaW5lclR5cGUsIElQYXJzZWRDb250YWluZXJEYXRhIH0gZnJvbSBcIi4vZG9tYWluXCI7XG5pbXBvcnQgeyBlbmNvZGVEYXRhQXR0ciwgaXNDbG9zaW5nVG9rZW4sIGlzT3BlbmluZ1Rva2VuIH0gZnJvbSAnLi91dGlscyc7XG5cbnR5cGUgQ29udGFpbmVyQXJncyA9IFt0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfV1cbmNvbnN0IEZfQ09OVEFJTkVSX0NMT1NFX1RBRyA9ICdjb250YWluZXJfY29kZS1ncm91cF9jbG9zZSc7XG5cbmV4cG9ydCBjbGFzcyBQYXJzZUdyb3VwZWRDb2RlSXRlbXMge1xuXG4gIHB1YmxpYyByZW5kZXIoKTogQ29udGFpbmVyQXJncyB7XG4gICAgcmV0dXJuIFtjb250YWluZXIsIEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQ09ERV9HUk9VUCwge1xuICAgICAgcmVuZGVyOiAodG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgaWYgKGlzT3BlbmluZ1Rva2VuKHRva2Vuc1tpbmRleF0pKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX29wZW5pbmdFeGFtcGxlR3JvdXBIVE1MKHRoaXMuX2dlbmVyYXRlRGF0YSh0b2tlbnMsIGluZGV4KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICc8L2YtY29kZS1ncm91cD4nO1xuICAgICAgfSxcbiAgICB9XTtcbiAgfVxuXG4gIHByaXZhdGUgX2dlbmVyYXRlRGF0YSh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcik6IElQYXJzZWRDb250YWluZXJEYXRhW10ge1xuICAgIGNvbnN0IHJlc3VsdDogSVBhcnNlZENvbnRhaW5lckRhdGFbXSA9IFtdO1xuXG4gICAgZm9yIChsZXQgaSA9IGluZGV4ICsgMTsgIXRoaXMuX2lzQ2xvc2luZ1Rva2VuKHRva2VucywgaSk7IGkrKykge1xuICAgICAgaWYgKHRoaXMuX2lzQ29kZUZlbmNlVG9rZW4odG9rZW5zW2ldKSkge1xuICAgICAgICByZXN1bHQucHVzaCh7XG4gICAgICAgICAgdGFiOiB0aGlzLl9nZXRDb2RlQmxvY2tUaXRsZSh0b2tlbnNbaV0uaW5mbyksXG4gICAgICAgICAgdmFsdWU6IHRva2Vuc1tpXS5jb250ZW50LFxuICAgICAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkNPREUsXG4gICAgICAgICAgaXNMaW5rOiBmYWxzZSxcbiAgICAgICAgICBoZWlnaHQ6ICdhdXRvJyxcbiAgICAgICAgICBsYW5ndWFnZTogdGhpcy5fZ2V0Q29kZUxhbmd1YWdlKHRva2Vuc1tpXS5pbmZvKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgX2lzQ2xvc2luZ1Rva2VuKHRva2VuOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNDbG9zaW5nVG9rZW4odG9rZW5baW5kZXhdKSAmJiB0b2tlbltpbmRleF0udHlwZSA9PT0gRl9DT05UQUlORVJfQ0xPU0VfVEFHO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNDb2RlRmVuY2VUb2tlbih0b2tlbjogSU1hcmtkb3duSXRUb2tlbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0b2tlbi50eXBlID09PSAnZmVuY2UnICYmIHRva2VuLnRhZyA9PT0gJ2NvZGUnO1xuICB9XG5cbiAgcHJpdmF0ZSBfb3BlbmluZ0V4YW1wbGVHcm91cEhUTUwoZGF0YTogSVBhcnNlZENvbnRhaW5lckRhdGFbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGA8Zi1jb2RlLWdyb3VwIGRhdGEtZGF0YT1cIiR7ZW5jb2RlRGF0YUF0dHIoZGF0YSl9XCI+YDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvZGVCbG9ja1RpdGxlKGRhdGE6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRhdGEubWF0Y2goL1xcWyguKilcXF0vKT8uWzFdIHx8IHRoaXMuX2dldENvZGVMYW5ndWFnZShkYXRhKSB8fCAndHh0JztcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvZGVMYW5ndWFnZShkYXRhOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IG1hdGNoID0gZGF0YS50cmltKCkubWF0Y2goL14oW2EtekEtWjAtOV8tXSspXFxzKlxcWy4qXFxdJC8pO1xuICAgIHJldHVybiBtYXRjaCA/IG1hdGNoWzFdIDogJyc7XG4gIH1cbn1cbiJdfQ==","import { EParsedContainerType } from './domain';\nimport { encodeDataAttr } from './utils';\nexport class ParseSingleCodeItem {\n render(markdown) {\n const fence = markdown.renderer.rules.fence;\n if (!fence) {\n throw new Error('Markdown renderer does not have a fence rule.');\n }\n markdown.renderer.rules.fence = (tokens, index) => {\n const data = this._getTokenData(tokens[index]);\n return (`<f-code-group data-data=\"${encodeDataAttr([this._createCodeData(data)])}\"></f-code-group>`);\n };\n }\n _getTokenData(token) {\n return { value: token.content, language: token.info };\n }\n _createCodeData({ value, language }) {\n return {\n tab: '',\n value,\n language,\n type: EParsedContainerType.CODE,\n };\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2Utc2luZ2xlLWNvZGUtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9wYXJzZS1zaW5nbGUtY29kZS1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxvQkFBb0IsRUFBd0IsTUFBTSxVQUFVLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV6QyxNQUFNLE9BQU8sbUJBQW1CO0lBRXZCLE1BQU0sQ0FBQyxRQUFvQjtRQUNoQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDNUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFFRCxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxNQUEwQixFQUFFLEtBQWEsRUFBRSxFQUFFO1lBQzVFLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDL0MsT0FBTyxDQUNMLDRCQUE0QixjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQzVGLENBQUM7UUFDSixDQUFDLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLEtBQXVCO1FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFTyxlQUFlLENBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFjO1FBQ3JELE9BQU87WUFDTCxHQUFHLEVBQUUsRUFBRTtZQUNQLEtBQUs7WUFDTCxRQUFRO1lBQ1IsSUFBSSxFQUFFLG9CQUFvQixDQUFDLElBQUk7U0FDaEMsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNYXJrZG93bkl0IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCB7IElNYXJrZG93bkl0VG9rZW4gfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBFUGFyc2VkQ29udGFpbmVyVHlwZSwgSVBhcnNlZENvbnRhaW5lckRhdGEgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBlbmNvZGVEYXRhQXR0ciB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgUGFyc2VTaW5nbGVDb2RlSXRlbSB7XG5cbiAgcHVibGljIHJlbmRlcihtYXJrZG93bjogTWFya2Rvd25JdCk6IHZvaWQge1xuICAgIGNvbnN0IGZlbmNlID0gbWFya2Rvd24ucmVuZGVyZXIucnVsZXMuZmVuY2U7XG4gICAgaWYgKCFmZW5jZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXJrZG93biByZW5kZXJlciBkb2VzIG5vdCBoYXZlIGEgZmVuY2UgcnVsZS4nKTtcbiAgICB9XG5cbiAgICBtYXJrZG93bi5yZW5kZXJlci5ydWxlcy5mZW5jZSA9ICh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuX2dldFRva2VuRGF0YSh0b2tlbnNbaW5kZXhdKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGA8Zi1jb2RlLWdyb3VwIGRhdGEtZGF0YT1cIiR7ZW5jb2RlRGF0YUF0dHIoW3RoaXMuX2NyZWF0ZUNvZGVEYXRhKGRhdGEpXSl9XCI+PC9mLWNvZGUtZ3JvdXA+YFxuICAgICAgKTtcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0VG9rZW5EYXRhKHRva2VuOiBJTWFya2Rvd25JdFRva2VuKTogSVRva2VuRGF0YSB7XG4gICAgcmV0dXJuIHsgdmFsdWU6IHRva2VuLmNvbnRlbnQsIGxhbmd1YWdlOiB0b2tlbi5pbmZvIH07XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVDb2RlRGF0YSh7IHZhbHVlLCBsYW5ndWFnZSB9OiBJVG9rZW5EYXRhKTogSVBhcnNlZENvbnRhaW5lckRhdGEge1xuICAgIHJldHVybiB7XG4gICAgICB0YWI6ICcnLFxuICAgICAgdmFsdWUsXG4gICAgICBsYW5ndWFnZSxcbiAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkNPREUsXG4gICAgfTtcbiAgfVxufVxuXG5pbnRlcmZhY2UgSVRva2VuRGF0YSB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG59XG4iXX0=","import { EMarkdownContainerType } from './domain';\nimport container from 'markdown-it-container';\nimport { EParsedContainerType } from './domain';\nimport { encodeDataAttr, getContent, isOpeningToken, parseFileLinkLine } from './utils';\nexport class ParseAngularExampleWithCodeLinks {\n render() {\n return [container, EMarkdownContainerType.EXAMPLE_GROUP, {\n render: (tokens, index) => {\n return isOpeningToken(tokens[index]) ? this._opening(tokens, index) : '</f-code-group>';\n },\n }];\n }\n _opening(tokens, index) {\n const data = this._collectData(tokens, index);\n return `<f-code-group data-data=\"${encodeDataAttr(data)}\">`;\n }\n _collectData(tokens, index) {\n const result = [];\n const component = this._parseNgComponent(tokens[index]);\n const height = component?.height || 'auto';\n if (component) {\n result.push({\n tab: 'Example',\n value: component.tag,\n type: EParsedContainerType.EXAMPLE,\n height: component.height || 'auto',\n });\n }\n const content = getContent(tokens, index, EMarkdownContainerType.EXAMPLE_GROUP);\n const items = (content || '').split('\\n').map(parseFileLinkLine).filter(Boolean);\n items.forEach(({ fileName, url }) => result.push({\n tab: fileName,\n value: url,\n isLink: true,\n type: EParsedContainerType.CODE,\n height,\n }));\n return result;\n }\n _parseNgComponent(token) {\n const cleanedInput = token.info.replace(/ng-component\\s*/, '');\n const tagMatch = cleanedInput.match(/<([a-zA-Z0-9-]+)>.*<\\/\\1>/);\n const heightMatch = cleanedInput.match(/\\[height\\]=\"(\\d+)\"/);\n if (!tagMatch)\n return null;\n return {\n tag: tagMatch[0],\n height: heightMatch?.[1],\n };\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtYW5ndWxhci1leGFtcGxlLXdpdGgtY29kZS1saW5rcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9wYXJzZS1hbmd1bGFyLWV4YW1wbGUtd2l0aC1jb2RlLWxpbmtzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdsRCxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsb0JBQW9CLEVBQWdELE1BQU0sVUFBVSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUl4RixNQUFNLE9BQU8sZ0NBQWdDO0lBRXBDLE1BQU07UUFDWCxPQUFPLENBQUMsU0FBUyxFQUFFLHNCQUFzQixDQUFDLGFBQWEsRUFBRTtnQkFDdkQsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDMUYsQ0FBQzthQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxRQUFRLENBQUMsTUFBMEIsRUFBRSxLQUFhO1FBQ3hELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlDLE9BQU8sNEJBQTRCLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzlELENBQUM7SUFFTyxZQUFZLENBQUMsTUFBMEIsRUFBRSxLQUFhO1FBQzVELE1BQU0sTUFBTSxHQUEyQixFQUFFLENBQUM7UUFFMUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sTUFBTSxHQUFHLFNBQVMsRUFBRSxNQUFNLElBQUksTUFBTSxDQUFDO1FBQzNDLElBQUksU0FBUyxFQUFFLENBQUM7WUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLEdBQUcsRUFBRSxTQUFTO2dCQUNkLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRztnQkFDcEIsSUFBSSxFQUFFLG9CQUFvQixDQUFDLE9BQU87Z0JBQ2xDLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxJQUFJLE1BQU07YUFDbkMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hGLE1BQU0sS0FBSyxHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUc1RSxDQUFDO1FBQ0osS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQy9DLEdBQUcsRUFBRSxRQUFRO1lBQ2IsS0FBSyxFQUFFLEdBQUc7WUFDVixNQUFNLEVBQUUsSUFBSTtZQUNaLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxJQUFJO1lBQy9CLE1BQU07U0FDUCxDQUFDLENBQUMsQ0FBQztRQUVKLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUF1QjtRQUMvQyxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMvRCxNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDakUsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBRTdELElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFM0IsT0FBTztZQUNMLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ2hCLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDekIsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVNYXJrZG93bkNvbnRhaW5lclR5cGUgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBJTWFya2Rvd25JdFRva2VuIH0gZnJvbSAnLi9kb21haW4nO1xuXG5pbXBvcnQgY29udGFpbmVyIGZyb20gJ21hcmtkb3duLWl0LWNvbnRhaW5lcic7XG5pbXBvcnQgeyBFUGFyc2VkQ29udGFpbmVyVHlwZSwgSU1hcmtkb3duQ29udGFpbmVyRGF0YSwgSVBhcnNlZENvbnRhaW5lckRhdGEgfSBmcm9tICcuL2RvbWFpbic7XG5pbXBvcnQgeyBlbmNvZGVEYXRhQXR0ciwgZ2V0Q29udGVudCwgaXNPcGVuaW5nVG9rZW4sIHBhcnNlRmlsZUxpbmtMaW5lIH0gZnJvbSAnLi91dGlscyc7XG5cbnR5cGUgQ29udGFpbmVyQXJncyA9IFt0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfV07XG5cbmV4cG9ydCBjbGFzcyBQYXJzZUFuZ3VsYXJFeGFtcGxlV2l0aENvZGVMaW5rcyB7XG5cbiAgcHVibGljIHJlbmRlcigpOiBDb250YWluZXJBcmdzIHtcbiAgICByZXR1cm4gW2NvbnRhaW5lciwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5FWEFNUExFX0dST1VQLCB7XG4gICAgICByZW5kZXI6ICh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICByZXR1cm4gaXNPcGVuaW5nVG9rZW4odG9rZW5zW2luZGV4XSkgPyB0aGlzLl9vcGVuaW5nKHRva2VucywgaW5kZXgpIDogJzwvZi1jb2RlLWdyb3VwPic7XG4gICAgICB9LFxuICAgIH1dO1xuICB9XG5cbiAgcHJpdmF0ZSBfb3BlbmluZyh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuX2NvbGxlY3REYXRhKHRva2VucywgaW5kZXgpO1xuICAgIHJldHVybiBgPGYtY29kZS1ncm91cCBkYXRhLWRhdGE9XCIke2VuY29kZURhdGFBdHRyKGRhdGEpfVwiPmA7XG4gIH1cblxuICBwcml2YXRlIF9jb2xsZWN0RGF0YSh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcik6IElQYXJzZWRDb250YWluZXJEYXRhW10ge1xuICAgIGNvbnN0IHJlc3VsdDogSVBhcnNlZENvbnRhaW5lckRhdGFbXSA9IFtdO1xuXG4gICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5fcGFyc2VOZ0NvbXBvbmVudCh0b2tlbnNbaW5kZXhdKTtcbiAgICBjb25zdCBoZWlnaHQgPSBjb21wb25lbnQ/LmhlaWdodCB8fCAnYXV0byc7XG4gICAgaWYgKGNvbXBvbmVudCkge1xuICAgICAgcmVzdWx0LnB1c2goe1xuICAgICAgICB0YWI6ICdFeGFtcGxlJyxcbiAgICAgICAgdmFsdWU6IGNvbXBvbmVudC50YWcsXG4gICAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkVYQU1QTEUsXG4gICAgICAgIGhlaWdodDogY29tcG9uZW50LmhlaWdodCB8fCAnYXV0bycsXG4gICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgY29udGVudCA9IGdldENvbnRlbnQodG9rZW5zLCBpbmRleCwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5FWEFNUExFX0dST1VQKTtcbiAgICBjb25zdCBpdGVtcyA9IChjb250ZW50IHx8ICcnKS5zcGxpdCgnXFxuJykubWFwKHBhcnNlRmlsZUxpbmtMaW5lKS5maWx0ZXIoQm9vbGVhbikgYXMge1xuICAgICAgZmlsZU5hbWU6IHN0cmluZyxcbiAgICAgIHVybDogc3RyaW5nXG4gICAgfVtdO1xuICAgIGl0ZW1zLmZvckVhY2goKHsgZmlsZU5hbWUsIHVybCB9KSA9PiByZXN1bHQucHVzaCh7XG4gICAgICB0YWI6IGZpbGVOYW1lLFxuICAgICAgdmFsdWU6IHVybCxcbiAgICAgIGlzTGluazogdHJ1ZSxcbiAgICAgIHR5cGU6IEVQYXJzZWRDb250YWluZXJUeXBlLkNPREUsXG4gICAgICBoZWlnaHQsXG4gICAgfSkpO1xuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcnNlTmdDb21wb25lbnQodG9rZW46IElNYXJrZG93bkl0VG9rZW4pOiBJTWFya2Rvd25Db250YWluZXJEYXRhIHwgbnVsbCB7XG4gICAgY29uc3QgY2xlYW5lZElucHV0ID0gdG9rZW4uaW5mby5yZXBsYWNlKC9uZy1jb21wb25lbnRcXHMqLywgJycpO1xuICAgIGNvbnN0IHRhZ01hdGNoID0gY2xlYW5lZElucHV0Lm1hdGNoKC88KFthLXpBLVowLTktXSspPi4qPFxcL1xcMT4vKTtcbiAgICBjb25zdCBoZWlnaHRNYXRjaCA9IGNsZWFuZWRJbnB1dC5tYXRjaCgvXFxbaGVpZ2h0XFxdPVwiKFxcZCspXCIvKTtcblxuICAgIGlmICghdGFnTWF0Y2gpIHJldHVybiBudWxsO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHRhZzogdGFnTWF0Y2hbMF0sXG4gICAgICBoZWlnaHQ6IGhlaWdodE1hdGNoPy5bMV0sXG4gICAgfTtcbiAgfVxufVxuIl19","import { EMarkdownContainerType } from './domain';\nimport container from 'markdown-it-container';\nimport { getContent, isOpeningToken, parseSingleBracketText } from './utils';\nexport class ParsePreviewGroup {\n _navigation;\n constructor(_navigation) {\n this._navigation = _navigation;\n }\n render() {\n return [container, EMarkdownContainerType.PREVIEW_GROUP, {\n render: (tokens, index) => {\n if (isOpeningToken(tokens[index])) {\n return this._getGroupsHTML(this._generateData(tokens, index));\n }\n return '';\n },\n }];\n }\n _generateData(tokens, index) {\n const groups = [];\n this._parseData(getContent(tokens, index, EMarkdownContainerType.PREVIEW_GROUP) || '').forEach((x) => {\n const group = this._navigation.find((g) => g.text === x || g.id === x);\n if (group) {\n groups.push(group);\n }\n });\n return groups;\n }\n _parseData(data) {\n return data.split('\\n').map(parseSingleBracketText).filter(Boolean);\n }\n _getGroupsHTML(groups) {\n const result = (groups || []).map((x) => {\n return `<h2>${x.text}</h2><div class=\"f-preview-group\">${this._getItemsHTML(x)}</div>`;\n }).join('');\n return this._getGroupFiltersHTML() + result;\n }\n _getGroupFiltersHTML() {\n return `<f-preview-group-filters></f-preview-group-filters>`;\n }\n _getItemsHTML(group) {\n return group.items.map((item) => {\n return `<f-preview data-group=\"${group.text}\" data-item=\"${item.link}\"></f-preview>`;\n }).join('');\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtcHJldmlldy1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9tYXJrZG93bi1yZW5kZXJlci91dGlscy9wYXJzZS1wcmV2aWV3LWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBNkMsTUFBTSxVQUFVLENBQUM7QUFFN0YsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFJN0UsTUFBTSxPQUFPLGlCQUFpQjtJQUdsQjtJQURWLFlBQ1UsV0FBc0M7UUFBdEMsZ0JBQVcsR0FBWCxXQUFXLENBQTJCO0lBRWhELENBQUM7SUFFTSxNQUFNO1FBQ1gsT0FBTyxDQUFFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyxhQUFhLEVBQUU7Z0JBQ3hELE1BQU0sRUFBRSxDQUFDLE1BQTBCLEVBQUUsS0FBYSxFQUFFLEVBQUU7b0JBQ3BELElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7d0JBQ2xDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO29CQUNoRSxDQUFDO29CQUNELE9BQU8sRUFBRSxDQUFDO2dCQUNaLENBQUM7YUFDRixDQUFFLENBQUM7SUFDTixDQUFDO0lBRU8sYUFBYSxDQUFDLE1BQTBCLEVBQUUsS0FBYTtRQUM3RCxNQUFNLE1BQU0sR0FBOEIsRUFBRSxDQUFDO1FBRTdDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsc0JBQXNCLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUU7WUFDM0csTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdkUsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDVixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3BCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxVQUFVLENBQUMsSUFBWTtRQUM3QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBYSxDQUFDO0lBQ2xGLENBQUM7SUFFTyxjQUFjLENBQUMsTUFBaUM7UUFDdEQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDdEMsT0FBTyxPQUFRLENBQUMsQ0FBQyxJQUFLLHFDQUFzQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBRSxRQUFRLENBQUM7UUFDN0YsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRVosT0FBTyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDOUMsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixPQUFPLHFEQUFxRCxDQUFDO0lBQy9ELENBQUM7SUFFTyxhQUFhLENBQUMsS0FBOEI7UUFDbEQsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzlCLE9BQU8sMEJBQTJCLEtBQUssQ0FBQyxJQUFLLGdCQUFpQixJQUFJLENBQUMsSUFBSyxnQkFBZ0IsQ0FBQTtRQUMxRixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTWFya2Rvd25Db250YWluZXJUeXBlLCBJTWFya2Rvd25JdFRva2VuLCBJUHJldmlld05hdmlnYXRpb25Hcm91cCB9IGZyb20gJy4vZG9tYWluJztcblxuaW1wb3J0IGNvbnRhaW5lciBmcm9tICdtYXJrZG93bi1pdC1jb250YWluZXInO1xuaW1wb3J0IHsgZ2V0Q29udGVudCwgaXNPcGVuaW5nVG9rZW4sIHBhcnNlU2luZ2xlQnJhY2tldFRleHQgfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBDb250YWluZXJBcmdzID0gWyB0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfSBdXG5cbmV4cG9ydCBjbGFzcyBQYXJzZVByZXZpZXdHcm91cCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfbmF2aWdhdGlvbjogSVByZXZpZXdOYXZpZ2F0aW9uR3JvdXBbXSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgcmVuZGVyKCk6IENvbnRhaW5lckFyZ3Mge1xuICAgIHJldHVybiBbIGNvbnRhaW5lciwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5QUkVWSUVXX0dST1VQLCB7XG4gICAgICByZW5kZXI6ICh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICBpZiAoaXNPcGVuaW5nVG9rZW4odG9rZW5zW2luZGV4XSkpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fZ2V0R3JvdXBzSFRNTCh0aGlzLl9nZW5lcmF0ZURhdGEodG9rZW5zLCBpbmRleCkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH0sXG4gICAgfSBdO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2VuZXJhdGVEYXRhKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKTogSVByZXZpZXdOYXZpZ2F0aW9uR3JvdXBbXSB7XG4gICAgY29uc3QgZ3JvdXBzOiBJUHJldmlld05hdmlnYXRpb25Hcm91cFtdID0gW107XG5cbiAgICB0aGlzLl9wYXJzZURhdGEoZ2V0Q29udGVudCh0b2tlbnMsIGluZGV4LCBFTWFya2Rvd25Db250YWluZXJUeXBlLlBSRVZJRVdfR1JPVVApIHx8ICcnKS5mb3JFYWNoKCh4OiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IGdyb3VwID0gdGhpcy5fbmF2aWdhdGlvbi5maW5kKChnKSA9PiBnLnRleHQgPT09IHggfHwgZy5pZCA9PT0geCk7XG4gICAgICBpZiAoZ3JvdXApIHtcbiAgICAgICAgZ3JvdXBzLnB1c2goZ3JvdXApXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZ3JvdXBzO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyc2VEYXRhKGRhdGE6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gZGF0YS5zcGxpdCgnXFxuJykubWFwKHBhcnNlU2luZ2xlQnJhY2tldFRleHQpLmZpbHRlcihCb29sZWFuKSBhcyBzdHJpbmdbXTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEdyb3Vwc0hUTUwoZ3JvdXBzOiBJUHJldmlld05hdmlnYXRpb25Hcm91cFtdKTogc3RyaW5nIHtcbiAgICBjb25zdCByZXN1bHQgPSAoZ3JvdXBzIHx8IFtdKS5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiBgPGgyPiR7IHgudGV4dCB9PC9oMj48ZGl2IGNsYXNzPVwiZi1wcmV2aWV3LWdyb3VwXCI+JHsgdGhpcy5fZ2V0SXRlbXNIVE1MKHgpIH08L2Rpdj5gO1xuICAgIH0pLmpvaW4oJycpO1xuXG4gICAgcmV0dXJuIHRoaXMuX2dldEdyb3VwRmlsdGVyc0hUTUwoKSArIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEdyb3VwRmlsdGVyc0hUTUwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYDxmLXByZXZpZXctZ3JvdXAtZmlsdGVycz48L2YtcHJldmlldy1ncm91cC1maWx0ZXJzPmA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJdGVtc0hUTUwoZ3JvdXA6IElQcmV2aWV3TmF2aWdhdGlvbkdyb3VwKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ3JvdXAuaXRlbXMubWFwKChpdGVtKSA9PiB7XG4gICAgICByZXR1cm4gYDxmLXByZXZpZXcgZGF0YS1ncm91cD1cIiR7IGdyb3VwLnRleHQgfVwiIGRhdGEtaXRlbT1cIiR7IGl0ZW0ubGluayB9XCI+PC9mLXByZXZpZXc+YFxuICAgIH0pLmpvaW4oJycpO1xuICB9XG59XG4iXX0=","import { EMarkdownContainerType } from './domain';\nimport container from 'markdown-it-container';\nimport { isOpeningToken } from './utils';\nexport class ParseShowcase {\n render() {\n return [container, EMarkdownContainerType.SHOWCASE, {\n render: (tokens, index) => {\n if (isOpeningToken(tokens[index])) {\n return `<showcase></showcase>`;\n }\n return '';\n },\n }];\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2Utc2hvd2Nhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvdXRpbHMvcGFyc2Utc2hvd2Nhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFvQixNQUFNLFVBQVUsQ0FBQztBQUVwRSxPQUFPLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSXpDLE1BQU0sT0FBTyxhQUFhO0lBRWpCLE1BQU07UUFDWCxPQUFPLENBQUUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLFFBQVEsRUFBRTtnQkFDbkQsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDbEMsT0FBTyx1QkFBdUIsQ0FBQztvQkFDakMsQ0FBQztvQkFDRCxPQUFPLEVBQUUsQ0FBQztnQkFDWixDQUFDO2FBQ0YsQ0FBRSxDQUFDO0lBQ04sQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRU1hcmtkb3duQ29udGFpbmVyVHlwZSwgSU1hcmtkb3duSXRUb2tlbiB9IGZyb20gJy4vZG9tYWluJztcblxuaW1wb3J0IGNvbnRhaW5lciBmcm9tICdtYXJrZG93bi1pdC1jb250YWluZXInO1xuaW1wb3J0IHsgaXNPcGVuaW5nVG9rZW4gfSBmcm9tICcuL3V0aWxzJztcblxudHlwZSBDb250YWluZXJBcmdzID0gWyB0eXBlb2YgY29udGFpbmVyLCBzdHJpbmcsIHsgcmVuZGVyOiBhbnkgfSBdXG5cbmV4cG9ydCBjbGFzcyBQYXJzZVNob3djYXNlIHtcblxuICBwdWJsaWMgcmVuZGVyKCk6IENvbnRhaW5lckFyZ3Mge1xuICAgIHJldHVybiBbIGNvbnRhaW5lciwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5TSE9XQ0FTRSwge1xuICAgICAgcmVuZGVyOiAodG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgaWYgKGlzT3BlbmluZ1Rva2VuKHRva2Vuc1tpbmRleF0pKSB7XG4gICAgICAgICAgcmV0dXJuIGA8c2hvd2Nhc2U+PC9zaG93Y2FzZT5gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICAgIH0sXG4gICAgfSBdO1xuICB9XG59XG4iXX0=","import { inject, Injectable, Injector } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class Mediatr {\n _injector = inject(Injector);\n static _executions = new Map();\n static register(type, handler) {\n if (!type || !type.requestToken) {\n throw new Error('Type must have a fToken static property: ' + JSON.stringify(type));\n }\n Mediatr._executions.set(type?.requestToken, handler);\n }\n execute(request) {\n const token = request.constructor.requestToken;\n const handlerType = Mediatr._executions.get(token);\n if (!handlerType) {\n throw new Error(`No handler registered for token`, token);\n }\n const handler = this._injector.get(handlerType);\n return handler.handle(request);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Mediatr, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Mediatr });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Mediatr, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWF0ci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9tZWRpYXRyL21lZGlhdHIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFRLE1BQU0sZUFBZSxDQUFDOztBQUluRSxNQUFNLE9BQU8sT0FBTztJQUNELFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFdEMsTUFBTSxDQUFDLFdBQVcsR0FBRyxJQUFJLEdBQUcsRUFBc0MsQ0FBQztJQUVwRSxNQUFNLENBQUMsUUFBUSxDQUNwQixJQUFTLEVBQUUsT0FBOEM7UUFFekQsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN0RixDQUFDO1FBQ0QsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0sT0FBTyxDQUFZLE9BQVk7UUFDcEMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUM7UUFFL0MsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDO3VHQXhCVSxPQUFPOzJHQUFQLE9BQU87OzJGQUFQLE9BQU87a0JBRG5CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJRXhlY3V0aW9uIH0gZnJvbSAnLi9pLWV4ZWN1dGlvbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNZWRpYXRyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gIHByaXZhdGUgc3RhdGljIF9leGVjdXRpb25zID0gbmV3IE1hcDxzeW1ib2wsIFR5cGU8SUV4ZWN1dGlvbjxhbnksIGFueT4+PigpO1xuXG4gIHB1YmxpYyBzdGF0aWMgcmVnaXN0ZXI8VFJlcXVlc3QsIFRSZXNwb25zZT4oXG4gICAgdHlwZTogYW55LCBoYW5kbGVyOiBUeXBlPElFeGVjdXRpb248VFJlcXVlc3QsIFRSZXNwb25zZT4+LFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXR5cGUgfHwgIXR5cGUucmVxdWVzdFRva2VuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1R5cGUgbXVzdCBoYXZlIGEgZlRva2VuIHN0YXRpYyBwcm9wZXJ0eTogJyArIEpTT04uc3RyaW5naWZ5KHR5cGUpKTtcbiAgICB9XG4gICAgTWVkaWF0ci5fZXhlY3V0aW9ucy5zZXQodHlwZT8ucmVxdWVzdFRva2VuLCBoYW5kbGVyKTtcbiAgfVxuXG4gIHB1YmxpYyBleGVjdXRlPFRSZXNwb25zZT4ocmVxdWVzdDogYW55KTogVFJlc3BvbnNlIHtcbiAgICBjb25zdCB0b2tlbiA9IHJlcXVlc3QuY29uc3RydWN0b3IucmVxdWVzdFRva2VuO1xuXG4gICAgY29uc3QgaGFuZGxlclR5cGUgPSBNZWRpYXRyLl9leGVjdXRpb25zLmdldCh0b2tlbik7XG4gICAgaWYgKCFoYW5kbGVyVHlwZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBoYW5kbGVyIHJlZ2lzdGVyZWQgZm9yIHRva2VuYCwgdG9rZW4pO1xuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZXIgPSB0aGlzLl9pbmplY3Rvci5nZXQoaGFuZGxlclR5cGUpO1xuICAgIHJldHVybiBoYW5kbGVyLmhhbmRsZShyZXF1ZXN0KTtcbiAgfVxufVxuIl19","import { Mediatr } from './mediatr';\nexport function MExecution(requestType) {\n return function (constructor) {\n Mediatr.register(requestType, constructor);\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibS1leGVjdXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvbWVkaWF0ci9tLWV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBS3BDLE1BQU0sVUFBVSxVQUFVLENBQXNCLFdBQTJCO0lBQ3pFLE9BQU8sVUFBVSxXQUF5RDtRQUN4RSxPQUFPLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM3QyxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUV4ZWN1dGlvbiB9IGZyb20gJy4vaS1leGVjdXRpb24nO1xuaW1wb3J0IHsgTWVkaWF0ciB9IGZyb20gJy4vbWVkaWF0cic7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbnR5cGUgQ29uc3RydWN0b3I8VCA9IGFueT4gPSBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBUO1xuXG5leHBvcnQgZnVuY3Rpb24gTUV4ZWN1dGlvbjxUUmVxdWVzdCwgVFJlc3BvbnNlPihyZXF1ZXN0VHlwZTogVHlwZTxUUmVxdWVzdD4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIChjb25zdHJ1Y3RvcjogQ29uc3RydWN0b3I8SUV4ZWN1dGlvbjxUUmVxdWVzdCwgVFJlc3BvbnNlPj4pIHtcbiAgICBNZWRpYXRyLnJlZ2lzdGVyKHJlcXVlc3RUeXBlLCBjb25zdHJ1Y3Rvcik7XG4gIH07XG59XG4iXX0=","export function coerceComponentHeight(value) {\n if (value === undefined) {\n return undefined;\n }\n value = Number(value);\n if (value) {\n return value + 'px';\n }\n return undefined;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29lcmNlLWNvbXBvbmVudC1oZWlnaHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvZXh0ZXJuYWwtY29tcG9uZW50L3V0aWxzL2NvZXJjZS1jb21wb25lbnQtaGVpZ2h0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxLQUFrQztJQUN0RSxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN4QixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBQ0QsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QixJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ1YsT0FBTyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGNvZXJjZUNvbXBvbmVudEhlaWdodCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIHZhbHVlID0gTnVtYmVyKHZhbHVlKTtcbiAgaWYgKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlICsgJ3B4JztcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuIl19","export function parseComponentTag(html) {\n const regex = /^<([a-zA-Z0-9-]+)(\\s+[^>]+)?><\\/\\1>$/;\n const match = regex.exec(html);\n return match ? match[1] : null;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtY29tcG9uZW50LXRhZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9leHRlcm5hbC1jb21wb25lbnQvdXRpbHMvcGFyc2UtY29tcG9uZW50LXRhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsSUFBWTtJQUM1QyxNQUFNLEtBQUssR0FBRyxzQ0FBc0MsQ0FBQztJQUNyRCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQ29tcG9uZW50VGFnKGh0bWw6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCByZWdleCA9IC9ePChbYS16QS1aMC05LV0rKShcXHMrW14+XSspPz48XFwvXFwxPiQvO1xuICBjb25zdCBtYXRjaCA9IHJlZ2V4LmV4ZWMoaHRtbCk7XG4gIHJldHVybiBtYXRjaCA/IG1hdGNoWzFdIDogbnVsbDtcbn1cbiJdfQ==","export class RenderDynamicComponentRequest {\n item;\n viewContainerRef;\n element;\n static requestToken = Symbol('RenderDynamicComponentRequest');\n constructor(item, viewContainerRef, element) {\n this.item = item;\n this.viewContainerRef = viewContainerRef;\n this.element = element;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWR5bmFtaWMtY29tcG9uZW50LXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2ZlYXR1cmVzL3JlbmRlci1keW5hbWljLWNvbXBvbmVudC9yZW5kZXItZHluYW1pYy1jb21wb25lbnQtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sNkJBQTZCO0lBSXRCO0lBQ0E7SUFDQTtJQUxYLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFFckUsWUFDa0IsSUFBMkIsRUFDM0IsZ0JBQWtDLEVBQ2xDLE9BQXFCO1FBRnJCLFNBQUksR0FBSixJQUFJLENBQXVCO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsWUFBTyxHQUFQLE9BQU8sQ0FBYztJQUV2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUR5bmFtaWNDb21wb25lbnRJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcblxuZXhwb3J0IGNsYXNzIFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0IHtcbiAgcHVibGljIHN0YXRpYyByZXF1ZXN0VG9rZW4gPSBTeW1ib2woJ1JlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGl0ZW06IElEeW5hbWljQ29tcG9uZW50SXRlbSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudD86IEhUTUxFbGVtZW50LFxuICApIHtcbiAgfVxufVxuIl19","import { __decorate } from \"tslib\";\nimport { RenderDynamicComponentRequest } from './render-dynamic-component-request';\nimport { inject, Injectable } from '@angular/core';\nimport { DynamicComponentsStore } from '../../dynamic-components.store';\nimport { MExecution } from '../../../mediatr';\nimport * as i0 from \"@angular/core\";\nlet RenderDynamicComponent = class RenderDynamicComponent {\n _dynamicStore = inject(DynamicComponentsStore);\n handle({ item, viewContainerRef, element }) {\n try {\n this._renderComponent(item, viewContainerRef, element);\n }\n catch (error) {\n this._logError(item.selector, error);\n }\n }\n _renderComponent({ selector, component }, viewContainerRef, element) {\n component.then(extracted => {\n const componentRef = viewContainerRef.createComponent(extracted);\n this._dynamicStore.addComponent(componentRef, element);\n element?.replaceWith(this._extractComponentRoot(componentRef));\n if (!extracted) {\n this._logComponentResolutionError(selector);\n }\n }).catch(error => this._logComponentLoadingError(selector, error));\n }\n _extractComponentRoot(componentRef) {\n componentRef.changeDetectorRef.markForCheck();\n return componentRef.hostView.rootNodes[0];\n }\n _logComponentResolutionError(tag) {\n console.error(`Component for tag \"${tag}\" could not be resolved.`);\n }\n _logComponentLoadingError(tag, error) {\n console.error(`Error while loading component for tag \"${tag}\":`, error);\n }\n _logError(tag, error) {\n console.error(`Error inserting component for <${tag}>:`, error);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderDynamicComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderDynamicComponent });\n};\nRenderDynamicComponent = __decorate([\n MExecution(RenderDynamicComponentRequest)\n], RenderDynamicComponent);\nexport { RenderDynamicComponent };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderDynamicComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWR5bmFtaWMtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9mZWF0dXJlcy9yZW5kZXItZHluYW1pYy1jb21wb25lbnQvcmVuZGVyLWR5bmFtaWMtY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRixPQUFPLEVBQWdCLE1BQU0sRUFBRSxVQUFVLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hFLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFLbkQsSUFBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBc0I7SUFFaEIsYUFBYSxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBRXpELE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQWlDO1FBQzlFLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQXlCLEVBQUUsZ0JBQWtDLEVBQUUsT0FBcUI7UUFDaEksU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN6QixNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRXZELE9BQU8sRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFFL0QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNmLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxZQUErQjtRQUMzRCxZQUFZLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDOUMsT0FBUSxZQUFZLENBQUMsUUFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFnQixDQUFDO0lBQ3BFLENBQUM7SUFFTyw0QkFBNEIsQ0FBQyxHQUFXO1FBQzlDLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0JBQXNCLEdBQUcsMEJBQTBCLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU8seUJBQXlCLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDMUQsT0FBTyxDQUFDLEtBQUssQ0FBQywwQ0FBMEMsR0FBRyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVPLFNBQVMsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxHQUFHLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNsRSxDQUFDO3VHQXhDVSxzQkFBc0I7MkdBQXRCLHNCQUFzQjs7QUFBdEIsc0JBQXNCO0lBRGxDLFVBQVUsQ0FBQyw2QkFBNkIsQ0FBQztHQUM3QixzQkFBc0IsQ0F5Q2xDOzsyRkF6Q1ksc0JBQXNCO2tCQUZsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QgfSBmcm9tICcuL3JlbmRlci1keW5hbWljLWNvbXBvbmVudC1yZXF1ZXN0JztcbmltcG9ydCB7IENvbXBvbmVudFJlZiwgaW5qZWN0LCBJbmplY3RhYmxlLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZHluYW1pYy1jb21wb25lbnRzLnN0b3JlJztcbmltcG9ydCB7IElFeGVjdXRpb24sIE1FeGVjdXRpb24gfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKClcbkBNRXhlY3V0aW9uKFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbmRlckR5bmFtaWNDb21wb25lbnQgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0LCB2b2lkPntcblxuICBwcml2YXRlIHJlYWRvbmx5IF9keW5hbWljU3RvcmUgPSBpbmplY3QoRHluYW1pY0NvbXBvbmVudHNTdG9yZSk7XG5cbiAgcHVibGljIGhhbmRsZSh7IGl0ZW0sIHZpZXdDb250YWluZXJSZWYsIGVsZW1lbnQgfTogUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5fcmVuZGVyQ29tcG9uZW50KGl0ZW0sIHZpZXdDb250YWluZXJSZWYsIGVsZW1lbnQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLl9sb2dFcnJvcihpdGVtLnNlbGVjdG9yLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyQ29tcG9uZW50KHsgc2VsZWN0b3IsIGNvbXBvbmVudCB9OiBJRHluYW1pY0NvbXBvbmVudEl0ZW0sIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsIGVsZW1lbnQ/OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgIGNvbXBvbmVudC50aGVuKGV4dHJhY3RlZCA9PiB7XG4gICAgICBjb25zdCBjb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChleHRyYWN0ZWQpO1xuICAgICAgdGhpcy5fZHluYW1pY1N0b3JlLmFkZENvbXBvbmVudChjb21wb25lbnRSZWYsIGVsZW1lbnQpO1xuXG4gICAgICBlbGVtZW50Py5yZXBsYWNlV2l0aCh0aGlzLl9leHRyYWN0Q29tcG9uZW50Um9vdChjb21wb25lbnRSZWYpKTtcblxuICAgICAgaWYgKCFleHRyYWN0ZWQpIHtcbiAgICAgICAgdGhpcy5fbG9nQ29tcG9uZW50UmVzb2x1dGlvbkVycm9yKHNlbGVjdG9yKTtcbiAgICAgIH1cbiAgICB9KS5jYXRjaChlcnJvciA9PiB0aGlzLl9sb2dDb21wb25lbnRMb2FkaW5nRXJyb3Ioc2VsZWN0b3IsIGVycm9yKSk7XG4gIH1cblxuICBwcml2YXRlIF9leHRyYWN0Q29tcG9uZW50Um9vdChjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+KTogSFRNTEVsZW1lbnQge1xuICAgIGNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICByZXR1cm4gKGNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBhbnkpLnJvb3ROb2Rlc1swXSBhcyBIVE1MRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgX2xvZ0NvbXBvbmVudFJlc29sdXRpb25FcnJvcih0YWc6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnNvbGUuZXJyb3IoYENvbXBvbmVudCBmb3IgdGFnIFwiJHt0YWd9XCIgY291bGQgbm90IGJlIHJlc29sdmVkLmApO1xuICB9XG5cbiAgcHJpdmF0ZSBfbG9nQ29tcG9uZW50TG9hZGluZ0Vycm9yKHRhZzogc3RyaW5nLCBlcnJvcjogb2JqZWN0KTogdm9pZCB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3Igd2hpbGUgbG9hZGluZyBjb21wb25lbnQgZm9yIHRhZyBcIiR7dGFnfVwiOmAsIGVycm9yKTtcbiAgfVxuXG4gIHByaXZhdGUgX2xvZ0Vycm9yKHRhZzogc3RyaW5nLCBlcnJvcjogYW55KTogdm9pZCB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3IgaW5zZXJ0aW5nIGNvbXBvbmVudCBmb3IgPCR7dGFnfT46YCwgZXJyb3IpO1xuICB9XG59XG4iXX0=","export class RenderExternalComponentRequest {\n selector;\n viewContainerRef;\n static requestToken = Symbol('RenderExternalComponentRequest');\n constructor(selector, viewContainerRef) {\n this.selector = selector;\n this.viewContainerRef = viewContainerRef;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9mZWF0dXJlcy9yZW5kZXItZXh0ZXJuYWwtY29tcG9uZW50L3JlbmRlci1leHRlcm5hbC1jb21wb25lbnQtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sOEJBQThCO0lBSXZCO0lBQ0E7SUFKWCxNQUFNLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0lBRXRFLFlBQ2tCLFFBQWdCLEVBQ2hCLGdCQUFrQztRQURsQyxhQUFRLEdBQVIsUUFBUSxDQUFRO1FBQ2hCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNsYXNzIFJlbmRlckV4dGVybmFsQ29tcG9uZW50UmVxdWVzdCB7XG4gIHB1YmxpYyBzdGF0aWMgcmVxdWVzdFRva2VuID0gU3ltYm9sKCdSZW5kZXJFeHRlcm5hbENvbXBvbmVudFJlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0b3I6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgKSB7XG4gIH1cbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const EXTERNAL_COMPONENT_PROVIDER = new InjectionToken('EXTERNAL_COMPONENT_PROVIDER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtY29tcG9uZW50LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9wcm92aWRlcnMvZXh0ZXJuYWwtY29tcG9uZW50LnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsSUFBSSxjQUFjLENBQTBCLDZCQUE2QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUR5bmFtaWNDb21wb25lbnRJdGVtIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuZXhwb3J0IGNvbnN0IEVYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJRHluYW1pY0NvbXBvbmVudEl0ZW1bXT4oJ0VYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUicpO1xuIl19","import { __decorate } from \"tslib\";\nimport { RenderExternalComponentRequest } from './render-external-component-request';\nimport { inject, Injectable } from '@angular/core';\nimport { Mediatr, MExecution } from '../../../mediatr';\nimport { RenderDynamicComponentRequest } from '../render-dynamic-component';\nimport { EXTERNAL_COMPONENT_PROVIDER } from '../../providers';\nimport * as i0 from \"@angular/core\";\nlet RenderExternalComponent = class RenderExternalComponent {\n _mediatr = inject(Mediatr);\n _componentsMap = inject(EXTERNAL_COMPONENT_PROVIDER, { optional: true }) ?? [];\n handle({ selector, viewContainerRef }) {\n const item = this._componentsMap.find((x) => {\n return x.selector === selector;\n });\n if (!item) {\n throw new Error(`Component for tag \"${selector}\" could not be found in external components map.`);\n }\n this._mediatr.execute(new RenderDynamicComponentRequest(item, viewContainerRef));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderExternalComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderExternalComponent });\n};\nRenderExternalComponent = __decorate([\n MExecution(RenderExternalComponentRequest)\n], RenderExternalComponent);\nexport { RenderExternalComponent };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderExternalComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvZmVhdHVyZXMvcmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC9yZW5kZXItZXh0ZXJuYWwtY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25FLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUl2RCxJQUFNLHVCQUF1QixHQUE3QixNQUFNLHVCQUF1QjtJQUVqQixRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLGNBQWMsR0FBRyxNQUFNLENBQUMsMkJBQTJCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFFekYsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFrQztRQUMxRSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDVCxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixRQUFRLGtEQUFrRCxDQUFDLENBQUE7UUFDbkcsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUNuQixJQUFJLDZCQUE2QixDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUMxRCxDQUFDO0lBQ0osQ0FBQzt1R0FqQlUsdUJBQXVCOzJHQUF2Qix1QkFBdUI7O0FBQXZCLHVCQUF1QjtJQURuQyxVQUFVLENBQUMsOEJBQThCLENBQUM7R0FDOUIsdUJBQXVCLENBa0JuQzs7MkZBbEJZLHVCQUF1QjtrQkFGbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbmRlckV4dGVybmFsQ29tcG9uZW50UmVxdWVzdCB9IGZyb20gJy4vcmVuZGVyLWV4dGVybmFsLWNvbXBvbmVudC1yZXF1ZXN0JztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTWVkaWF0ciwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QgfSBmcm9tICcuLi9yZW5kZXItZHluYW1pYy1jb21wb25lbnQnO1xuaW1wb3J0IHsgRVhURVJOQUxfQ09NUE9ORU5UX1BST1ZJREVSIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzJztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFJlbmRlckV4dGVybmFsQ29tcG9uZW50IGltcGxlbWVudHMgSUV4ZWN1dGlvbjxSZW5kZXJFeHRlcm5hbENvbXBvbmVudFJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb21wb25lbnRzTWFwID0gaW5qZWN0KEVYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUiwgeyBvcHRpb25hbDogdHJ1ZSB9KSA/PyBbXTtcblxuICBwdWJsaWMgaGFuZGxlKHsgc2VsZWN0b3IsIHZpZXdDb250YWluZXJSZWYgfTogUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0KTogdm9pZCB7XG4gICAgY29uc3QgaXRlbSA9IHRoaXMuX2NvbXBvbmVudHNNYXAuZmluZCgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHguc2VsZWN0b3IgPT09IHNlbGVjdG9yO1xuICAgIH0pXG5cbiAgICBpZighaXRlbSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb21wb25lbnQgZm9yIHRhZyBcIiR7c2VsZWN0b3J9XCIgY291bGQgbm90IGJlIGZvdW5kIGluIGV4dGVybmFsIGNvbXBvbmVudHMgbWFwLmApXG4gICAgfVxuXG4gICAgdGhpcy5fbWVkaWF0ci5leGVjdXRlKFxuICAgICAgbmV3IFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0KGl0ZW0sIHZpZXdDb250YWluZXJSZWYpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","export class RenderInternalComponentsRequest {\n hostElement;\n viewContainerRef;\n static requestToken = Symbol('RenderInternalComponentsRequest');\n constructor(hostElement, viewContainerRef) {\n this.hostElement = hostElement;\n this.viewContainerRef = viewContainerRef;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvZmVhdHVyZXMvcmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMvcmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMtcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sK0JBQStCO0lBSXhCO0lBQ0E7SUFKWCxNQUFNLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBRXZFLFlBQ2tCLFdBQXdCLEVBQ3hCLGdCQUFrQztRQURsQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBRXBELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHNSZXF1ZXN0IHtcbiAgcHVibGljIHN0YXRpYyByZXF1ZXN0VG9rZW4gPSBTeW1ib2woJ1JlbmRlckludGVybmFsQ29tcG9uZW50c1JlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIHB1YmxpYyByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICApIHtcbiAgfVxufVxuIl19","import { __decorate } from \"tslib\";\nimport { RenderInternalComponentsRequest } from './render-internal-components-request';\nimport { inject, Injectable } from '@angular/core';\nimport { Mediatr, MExecution } from '../../../mediatr';\nimport { DynamicComponentsStore, extractComponent } from '../../../documentation-page';\nimport { RenderDynamicComponentRequest } from '../render-dynamic-component';\nimport * as i0 from \"@angular/core\";\nlet RenderInternalComponents = class RenderInternalComponents {\n _dynamicStore = inject(DynamicComponentsStore);\n _mediatr = inject(Mediatr);\n _componentsMap = [\n {\n selector: 'f-code-group',\n component: extractComponent(() => import('../../components/code-group/code-group')),\n },\n {\n selector: 'f-preview',\n component: extractComponent(() => import('../../components/preview-group/components/preview-card/preview-card')),\n },\n {\n selector: 'f-preview-group-filters',\n component: extractComponent(() => import('../../components/preview-group/components/preview-action-bar/preview-action-bar')),\n },\n {\n selector: 'showcase',\n component: extractComponent(() => import('../../components/showcase/showcase')),\n },\n ];\n handle({ hostElement, viewContainerRef }) {\n this._dynamicStore.dispose();\n this._componentsMap.forEach(({ selector, component }) => {\n this._queryElements(hostElement, selector).forEach((x) => {\n this._mediatr.execute(new RenderDynamicComponentRequest({ selector, component }, viewContainerRef, x));\n });\n });\n }\n _queryElements(hostElement, selector) {\n return Array.from(hostElement.querySelectorAll(selector));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderInternalComponents, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderInternalComponents });\n};\nRenderInternalComponents = __decorate([\n MExecution(RenderInternalComponentsRequest)\n], RenderInternalComponents);\nexport { RenderInternalComponents };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: RenderInternalComponents, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2ZlYXR1cmVzL3JlbmRlci1pbnRlcm5hbC1jb21wb25lbnRzL3JlbmRlci1pbnRlcm5hbC1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUlyRSxJQUFNLHdCQUF3QixHQUE5QixNQUFNLHdCQUF3QjtJQUNsQixhQUFhLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDL0MsUUFBUSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUUzQixjQUFjLEdBQTRCO1FBQ3pEO1lBQ0UsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1NBQ3BGO1FBQ0Q7WUFDRSxRQUFRLEVBQUUsV0FBVztZQUNyQixTQUFTLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHFFQUFxRSxDQUFDLENBQUM7U0FDakg7UUFDRDtZQUNFLFFBQVEsRUFBRSx5QkFBeUI7WUFDbkMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxpRkFBaUYsQ0FBQyxDQUFDO1NBQzdIO1FBQ0Q7WUFDRSxRQUFRLEVBQUUsVUFBVTtZQUNwQixTQUFTLEVBQUUsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLG9DQUFvQyxDQUFDLENBQUM7U0FDaEY7S0FDRixDQUFDO0lBRUssTUFBTSxDQUFDLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFtQztRQUM5RSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRTdCLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtZQUN0RCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDdkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQ25CLElBQUksNkJBQTZCLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQ2hGLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWMsQ0FBQyxXQUF3QixFQUFFLFFBQWdCO1FBQy9ELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO3VHQXJDVSx3QkFBd0I7MkdBQXhCLHdCQUF3Qjs7QUFBeEIsd0JBQXdCO0lBRHBDLFVBQVUsQ0FBQywrQkFBK0IsQ0FBQztHQUMvQix3QkFBd0IsQ0FzQ3BDOzsyRkF0Q1ksd0JBQXdCO2tCQUZwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdCB9IGZyb20gJy4vcmVuZGVyLWludGVybmFsLWNvbXBvbmVudHMtcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElFeGVjdXRpb24sIE1lZGlhdHIsIE1FeGVjdXRpb24gfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IElEeW5hbWljQ29tcG9uZW50SXRlbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBEeW5hbWljQ29tcG9uZW50c1N0b3JlLCBleHRyYWN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZG9jdW1lbnRhdGlvbi1wYWdlJztcbmltcG9ydCB7IFJlbmRlckR5bmFtaWNDb21wb25lbnRSZXF1ZXN0IH0gZnJvbSAnLi4vcmVuZGVyLWR5bmFtaWMtY29tcG9uZW50JztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHMgaW1wbGVtZW50cyBJRXhlY3V0aW9uPFJlbmRlckludGVybmFsQ29tcG9uZW50c1JlcXVlc3QsIHZvaWQ+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZHluYW1pY1N0b3JlID0gaW5qZWN0KER5bmFtaWNDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2NvbXBvbmVudHNNYXA6IElEeW5hbWljQ29tcG9uZW50SXRlbVtdID0gW1xuICAgIHtcbiAgICAgIHNlbGVjdG9yOiAnZi1jb2RlLWdyb3VwJyxcbiAgICAgIGNvbXBvbmVudDogZXh0cmFjdENvbXBvbmVudCgoKSA9PiBpbXBvcnQoJy4uLy4uL2NvbXBvbmVudHMvY29kZS1ncm91cC9jb2RlLWdyb3VwJykpLFxuICAgIH0sXG4gICAge1xuICAgICAgc2VsZWN0b3I6ICdmLXByZXZpZXcnLFxuICAgICAgY29tcG9uZW50OiBleHRyYWN0Q29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9wcmV2aWV3LWdyb3VwL2NvbXBvbmVudHMvcHJldmlldy1jYXJkL3ByZXZpZXctY2FyZCcpKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNlbGVjdG9yOiAnZi1wcmV2aWV3LWdyb3VwLWZpbHRlcnMnLFxuICAgICAgY29tcG9uZW50OiBleHRyYWN0Q29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9wcmV2aWV3LWdyb3VwL2NvbXBvbmVudHMvcHJldmlldy1hY3Rpb24tYmFyL3ByZXZpZXctYWN0aW9uLWJhcicpKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNlbGVjdG9yOiAnc2hvd2Nhc2UnLFxuICAgICAgY29tcG9uZW50OiBleHRyYWN0Q29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vLi4vY29tcG9uZW50cy9zaG93Y2FzZS9zaG93Y2FzZScpKSxcbiAgICB9LFxuICBdO1xuXG4gIHB1YmxpYyBoYW5kbGUoeyBob3N0RWxlbWVudCwgdmlld0NvbnRhaW5lclJlZiB9OiBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHNSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZHluYW1pY1N0b3JlLmRpc3Bvc2UoKTtcblxuICAgIHRoaXMuX2NvbXBvbmVudHNNYXAuZm9yRWFjaCgoeyBzZWxlY3RvciwgY29tcG9uZW50IH0pID0+IHtcbiAgICAgIHRoaXMuX3F1ZXJ5RWxlbWVudHMoaG9zdEVsZW1lbnQsIHNlbGVjdG9yKS5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShcbiAgICAgICAgICBuZXcgUmVuZGVyRHluYW1pY0NvbXBvbmVudFJlcXVlc3QoeyBzZWxlY3RvciwgY29tcG9uZW50IH0sIHZpZXdDb250YWluZXJSZWYsIHgpLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9xdWVyeUVsZW1lbnRzKGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCwgc2VsZWN0b3I6IHN0cmluZyk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKGhvc3RFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc2VsZWN0b3IpKTtcbiAgfVxufVxuIl19","import { ChangeDetectionStrategy, Component, inject, input, viewChild, ViewContainerRef } from '@angular/core';\nimport { coerceComponentHeight } from './utils/coerce-component-height';\nimport { parseComponentTag } from './utils/parse-component-tag';\nimport { Mediatr } from '../../../mediatr';\nimport { RenderExternalComponentRequest } from '../../features';\nimport * as i0 from \"@angular/core\";\nexport class ExternalComponent {\n data = input.required(...(ngDevMode ? [{ debugName: \"data\", transform: (x) => {\n return {\n height: coerceComponentHeight(x.height),\n value: parseComponentTag(x.value) || '',\n };\n } }] : [{\n transform: (x) => {\n return {\n height: coerceComponentHeight(x.height),\n value: parseComponentTag(x.value) || '',\n };\n },\n }]));\n _mediatr = inject(Mediatr);\n _viewContainerRef = viewChild.required('container', { read: ViewContainerRef });\n ngOnInit() {\n this._mediatr.execute(new RenderExternalComponentRequest(this.data().value, this._viewContainerRef()));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ExternalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.2.0\", version: \"20.1.8\", type: ExternalComponent, isStandalone: true, selector: \"external-component\", inputs: { data: { classPropertyName: \"data\", publicName: \"data\", isSignal: true, isRequired: true, transformFunction: null } }, host: { properties: { \"style.height\": \"data().height\" }, classAttribute: \"external-component\" }, viewQueries: [{ propertyName: \"_viewContainerRef\", first: true, predicate: [\"container\"], descendants: true, read: ViewContainerRef, isSignal: true }], ngImport: i0, template: \"<ng-container #container />\\n\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ExternalComponent, decorators: [{\n type: Component,\n args: [{ selector: 'external-component', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'external-component',\n '[style.height]': 'data().height',\n }, template: \"<ng-container #container />\\n\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL2V4dGVybmFsLWNvbXBvbmVudC9leHRlcm5hbC1jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvZXh0ZXJuYWwtY29tcG9uZW50L2V4dGVybmFsLWNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVloRSxNQUFNLE9BQU8saUJBQWlCO0lBQ1osSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLHVDQUNuQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDZixPQUFPO29CQUNMLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO29CQUN2QyxLQUFLLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7aUJBQ3hDLENBQUM7WUFDSixDQUFDLE9BTjJFO1lBQzVFLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNmLE9BQU87b0JBQ0wsTUFBTSxFQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ3ZDLEtBQUssRUFBRSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtpQkFDeEMsQ0FBQztZQUNKLENBQUM7U0FDRixHQUFDLENBQUM7SUFFYyxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLGlCQUFpQixHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUUxRixRQUFRO1FBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RyxDQUFDO3VHQWZVLGlCQUFpQjsyRkFBakIsaUJBQWlCLDBZQVdpRCxnQkFBZ0IsNkNDN0IvRixpQ0FFQTs7MkZEZ0JhLGlCQUFpQjtrQkFWN0IsU0FBUzsrQkFDRSxvQkFBb0IsY0FFbEIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxvQkFBb0I7d0JBQzNCLGdCQUFnQixFQUFFLGVBQWU7cUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgT25Jbml0LCB2aWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZUNvbXBvbmVudEhlaWdodCB9IGZyb20gJy4vdXRpbHMvY29lcmNlLWNvbXBvbmVudC1oZWlnaHQnO1xuaW1wb3J0IHsgcGFyc2VDb21wb25lbnRUYWcgfSBmcm9tICcuL3V0aWxzL3BhcnNlLWNvbXBvbmVudC10YWcnO1xuaW1wb3J0IHsgSUV4YW1wbGVWaWV3RGF0YSB9IGZyb20gJy4vZG9tYWluL2ktZXhhbXBsZS12aWV3LWRhdGEnO1xuaW1wb3J0IHsgSVBhcnNlZENvbnRhaW5lckRhdGEgfSBmcm9tICcuLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuaW1wb3J0IHsgTWVkaWF0ciB9IGZyb20gJy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZmVhdHVyZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdleHRlcm5hbC1jb21wb25lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZXh0ZXJuYWwtY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXh0ZXJuYWwtY29tcG9uZW50JyxcbiAgICAnW3N0eWxlLmhlaWdodF0nOiAnZGF0YSgpLmhlaWdodCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEV4dGVybmFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIHJlYWRvbmx5IGRhdGEgPSBpbnB1dC5yZXF1aXJlZDxJRXhhbXBsZVZpZXdEYXRhLCBJUGFyc2VkQ29udGFpbmVyRGF0YT4oe1xuICAgIHRyYW5zZm9ybTogKHgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogY29lcmNlQ29tcG9uZW50SGVpZ2h0KHguaGVpZ2h0KSxcbiAgICAgICAgdmFsdWU6IHBhcnNlQ29tcG9uZW50VGFnKHgudmFsdWUpIHx8ICcnLFxuICAgICAgfTtcbiAgICB9LFxuICB9KTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmID0gdmlld0NoaWxkLnJlcXVpcmVkKCdjb250YWluZXInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShuZXcgUmVuZGVyRXh0ZXJuYWxDb21wb25lbnRSZXF1ZXN0KHRoaXMuZGF0YSgpLnZhbHVlLCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKCkpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAjY29udGFpbmVyIC8+XG5cbiJdfQ==","import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, input } from '@angular/core';\nimport { take } from 'rxjs/operators';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HighlightService } from '../index';\nimport * as i0 from \"@angular/core\";\nexport class Highlight {\n _highlightService = inject(HighlightService);\n _elementRef = inject(ElementRef);\n _destroyRef = inject(DestroyRef);\n content = input.required(...(ngDevMode ? [{ debugName: \"content\" }] : []));\n language = input.required(...(ngDevMode ? [{ debugName: \"language\" }] : []));\n ngOnInit() {\n queueMicrotask(() => {\n this._highlightService.highlight(this._elementRef.nativeElement, this.language(), this.content())\n .pipe(take(1), takeUntilDestroyed(this._destroyRef)).subscribe();\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Highlight, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.8\", type: Highlight, isStandalone: true, selector: \"highlight\", inputs: { content: { classPropertyName: \"content\", publicName: \"content\", isSignal: true, isRequired: true, transformFunction: null }, language: { classPropertyName: \"language\", publicName: \"language\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Highlight, decorators: [{\n type: Component,\n args: [{\n selector: 'highlight',\n template: ``,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9jb2RlLXZpZXcvaGlnaGxpZ2h0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBUTVDLE1BQU0sT0FBTyxTQUFTO0lBRUgsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDN0MsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxrREFBVSxDQUFDO0lBQ25DLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxtREFBVSxDQUFDO0lBRXBDLFFBQVE7UUFDYixjQUFjLENBQUMsR0FBRyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDOUYsSUFBSSxDQUNILElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzlDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO3VHQWhCVSxTQUFTOzJGQUFULFNBQVMsOFVBSlYsRUFBRTs7MkZBSUQsU0FBUztrQkFOckIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztvQkFDckIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIEVsZW1lbnRSZWYsIGluamVjdCwgaW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEhpZ2hsaWdodFNlcnZpY2UgfSBmcm9tICcuLi9pbmRleCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hpZ2hsaWdodCcsXG4gIHRlbXBsYXRlOiBgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEhpZ2hsaWdodCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaGlnaGxpZ2h0U2VydmljZSA9IGluamVjdChIaWdobGlnaHRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICBwdWJsaWMgY29udGVudCA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oKTtcbiAgcHVibGljIGxhbmd1YWdlID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiB7XG4gICAgICB0aGlzLl9oaWdobGlnaHRTZXJ2aWNlLmhpZ2hsaWdodCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRoaXMubGFuZ3VhZ2UoKSwgdGhpcy5jb250ZW50KCkpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2UoMSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSxcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcbiAgICB9KVxuICB9XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, computed, DestroyRef, inject, input, signal } from '@angular/core';\nimport { catchError, take } from 'rxjs/operators';\nimport { EMPTY } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { AVAILABLE_LANGUAGES, Highlight } from '../index';\nimport { copyToClipboard, PopoverService } from '../../common';\nimport * as i0 from \"@angular/core\";\nexport class CodeView {\n _httpClient = inject(HttpClient);\n _destroyRef = inject(DestroyRef);\n _popoverService = inject(PopoverService);\n data = input(...(ngDevMode ? [undefined, { debugName: \"data\" }] : []));\n height = computed(() => {\n return coerceComponentHeight(this.data()?.height);\n }, ...(ngDevMode ? [{ debugName: \"height\" }] : []));\n content = signal('', ...(ngDevMode ? [{ debugName: \"content\" }] : []));\n visibleLanguage = signal('', ...(ngDevMode ? [{ debugName: \"visibleLanguage\" }] : []));\n syntaxLanguage = signal('', ...(ngDevMode ? [{ debugName: \"syntaxLanguage\" }] : []));\n ngOnInit() {\n this._updateLanguage();\n this._updateNotExistingData(this.data());\n this._updateExistingData(this.data());\n }\n _updateLanguage() {\n const data = this.data();\n const language = data?.language || parseLanguageFromFileExtension(data?.value || '');\n this.syntaxLanguage.set(parseSyntaxLanguage(language));\n this.visibleLanguage.set(language);\n }\n _updateNotExistingData(data) {\n if (data?.isLink) {\n this._loadCodeByLink(data.value);\n }\n }\n _updateExistingData(data) {\n if (!data?.isLink) {\n this.content.set(data?.value || '');\n }\n }\n _loadCodeByLink(link) {\n if (!link)\n return;\n this._httpClient.get(link, { responseType: 'text' }).pipe(take(1), takeUntilDestroyed(this._destroyRef), catchError(() => EMPTY)).subscribe((content) => this.content.set(content));\n }\n onCopyClick() {\n this._copyContentToClipboard(this.content());\n }\n _copyContentToClipboard(content) {\n copyToClipboard(content).pipe(take(1), takeUntilDestroyed(this._destroyRef)).subscribe(() => this._popoverService.show('Copied!'));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeView, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: CodeView, isStandalone: true, selector: \"code-view\", inputs: { data: { classPropertyName: \"data\", publicName: \"data\", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { \"style.height\": \"height()\" }, classAttribute: \"f-code-view\" }, ngImport: i0, template: \"<span class=\\\"f-code-language\\\">{{ visibleLanguage() }}</span>\\n<button class=\\\"f-copy-button\\\" (click)=\\\"onCopyClick()\\\"></button>\\n@if (content()) {\\n <highlight [content]=\\\"content()\\\" [language]=\\\"syntaxLanguage()\\\"/>\\n}\\n\\n\", dependencies: [{ kind: \"component\", type: Highlight, selector: \"highlight\", inputs: [\"content\", \"language\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeView, decorators: [{\n type: Component,\n args: [{ selector: 'code-view', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'f-code-view',\n '[style.height]': 'height()',\n }, imports: [\n Highlight,\n ], template: \"<span class=\\\"f-code-language\\\">{{ visibleLanguage() }}</span>\\n<button class=\\\"f-copy-button\\\" (click)=\\\"onCopyClick()\\\"></button>\\n@if (content()) {\\n <highlight [content]=\\\"content()\\\" [language]=\\\"syntaxLanguage()\\\"/>\\n}\\n\\n\" }]\n }] });\nfunction coerceComponentHeight(value) {\n if (value === undefined) {\n return undefined;\n }\n value = Number(value);\n if (value) {\n return value + 'px';\n }\n return undefined;\n}\nfunction parseLanguageFromFileExtension(url) {\n const match = url.match(/\\.([0-9a-z]+)(?:[\\?#]|$)/i);\n if (match) {\n let extension = match[1];\n if (extension === 'css') {\n extension = 'scss';\n }\n return extension;\n }\n return '';\n}\nfunction parseSyntaxLanguage(language) {\n let result;\n switch (language) {\n case 'js':\n case 'javascript':\n result = 'javascript';\n break;\n case 'ts':\n case 'typescript':\n case 'angular-ts':\n result = 'angular-ts';\n break;\n case 'html':\n case 'angular-html':\n result = 'angular-html';\n break;\n default:\n result = extractLanguage(language);\n }\n if (!AVAILABLE_LANGUAGES.includes(result)) {\n result = 'text';\n }\n return result;\n}\nfunction extractLanguage(language) {\n const match = language.match(/^([^\\s\\[]+)/);\n return match ? match[1].toLowerCase() : language;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS12aWV3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9jb2RlLXZpZXcvY29kZS12aWV3LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9jb2RlLXZpZXcvY29kZS12aWV3Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFzQi9ELE1BQU0sT0FBTyxRQUFRO0lBQ0YsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pDLGVBQWUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFMUMsSUFBSSxHQUFHLEtBQUssMERBQWlCLENBQUM7SUFFM0IsTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDeEMsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsTUFBTSxD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QUFDO0lBQ2xCLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsUUFBZ0I7SUFDdkMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1QyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7QUFDbkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBEZXN0cm95UmVmLCBpbmplY3QsIGlucHV0LCBPbkluaXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVNUFRZIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQVZBSUxBQkxFX0xBTkdVQUdFUywgSGlnaGxpZ2h0IH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IHsgY29weVRvQ2xpcGJvYXJkLCBQb3BvdmVyU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbW1vbic7XG5cbmludGVyZmFjZSBDb250YWluZXJEYXRhIHtcbiAgaGVpZ2h0Pzogc3RyaW5nIHwgbnVtYmVyO1xuICB2YWx1ZTogc3RyaW5nO1xuICBpc0xpbms/OiBib29sZWFuO1xuICBsYW5ndWFnZT86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29kZS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvZGUtdmlldy5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2YtY29kZS12aWV3JyxcbiAgICAnW3N0eWxlLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICBpbXBvcnRzOiBbXG4gICAgSGlnaGxpZ2h0LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RlVmlldyBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2h0dHBDbGllbnQgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3BvcG92ZXJTZXJ2aWNlID0gaW5qZWN0KFBvcG92ZXJTZXJ2aWNlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZGF0YSA9IGlucHV0PENvbnRhaW5lckRhdGE+KCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhlaWdodCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gY29lcmNlQ29tcG9uZW50SGVpZ2h0KHRoaXMuZGF0YSgpPy5oZWlnaHQpO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGVudCA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHZpc2libGVMYW5ndWFnZSA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHN5bnRheExhbmd1YWdlID0gc2lnbmFsPHN0cmluZz4oJycpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVMYW5ndWFnZSgpO1xuICAgIHRoaXMuX3VwZGF0ZU5vdEV4aXN0aW5nRGF0YSh0aGlzLmRhdGEoKSk7XG4gICAgdGhpcy5fdXBkYXRlRXhpc3RpbmdEYXRhKHRoaXMuZGF0YSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUxhbmd1YWdlKCk6IHZvaWQge1xuICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGEoKTtcbiAgICBjb25zdCBsYW5ndWFnZSA9IGRhdGE/Lmxhbmd1YWdlIHx8IHBhcnNlTGFuZ3VhZ2VGcm9tRmlsZUV4dGVuc2lvbihkYXRhPy52YWx1ZSB8fCAnJyk7XG4gICAgdGhpcy5zeW50YXhMYW5ndWFnZS5zZXQocGFyc2VTeW50YXhMYW5ndWFnZShsYW5ndWFnZSkpO1xuICAgIHRoaXMudmlzaWJsZUxhbmd1YWdlLnNldChsYW5ndWFnZSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVOb3RFeGlzdGluZ0RhdGEoZGF0YT86IENvbnRhaW5lckRhdGEpOiB2b2lkIHtcbiAgICBpZiAoZGF0YT8uaXNMaW5rKSB7XG4gICAgICB0aGlzLl9sb2FkQ29kZUJ5TGluayhkYXRhLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVFeGlzdGluZ0RhdGEoZGF0YT86IENvbnRhaW5lckRhdGEpOiB2b2lkIHtcbiAgICBpZiAoIWRhdGE/LmlzTGluaykge1xuICAgICAgdGhpcy5jb250ZW50LnNldChkYXRhPy52YWx1ZSB8fCAnJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfbG9hZENvZGVCeUxpbmsobGluazogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFsaW5rKSByZXR1cm47XG5cbiAgICB0aGlzLl9odHRwQ2xpZW50LmdldChsaW5rLCB7IHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pLnBpcGUoXG4gICAgICB0YWtlKDEpLFxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpLFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBFTVBUWSksXG4gICAgKS5zdWJzY3JpYmUoKGNvbnRlbnQpID0+IHRoaXMuY29udGVudC5zZXQoY29udGVudCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ29weUNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuX2NvcHlDb250ZW50VG9DbGlwYm9hcmQodGhpcy5jb250ZW50KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29weUNvbnRlbnRUb0NsaXBib2FyZChjb250ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb3B5VG9DbGlwYm9hcmQoY29udGVudCkucGlwZShcbiAgICAgIHRha2UoMSksXG4gICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZiksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fcG9wb3ZlclNlcnZpY2Uuc2hvdygnQ29waWVkIScpKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjb2VyY2VDb21wb25lbnRIZWlnaHQodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICB2YWx1ZSA9IE51bWJlcih2YWx1ZSk7XG4gIGlmICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZSArICdweCc7XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuXG5mdW5jdGlvbiBwYXJzZUxhbmd1YWdlRnJvbUZpbGVFeHRlbnNpb24odXJsOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBtYXRjaCA9IHVybC5tYXRjaCgvXFwuKFswLTlhLXpdKykoPzpbXFw/I118JCkvaSk7XG5cbiAgaWYgKG1hdGNoKSB7XG4gICAgbGV0IGV4dGVuc2lvbiA9IG1hdGNoWzFdO1xuICAgIGlmIChleHRlbnNpb24gPT09ICdjc3MnKSB7XG4gICAgICBleHRlbnNpb24gPSAnc2Nzcyc7XG4gICAgfVxuICAgIHJldHVybiBleHRlbnNpb247XG4gIH1cbiAgcmV0dXJuICcnO1xufVxuXG5mdW5jdGlvbiBwYXJzZVN5bnRheExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgcmVzdWx0OiBzdHJpbmc7XG4gIHN3aXRjaCAobGFuZ3VhZ2UpIHtcbiAgICBjYXNlICdqcyc6XG4gICAgY2FzZSAnamF2YXNjcmlwdCc6XG4gICAgICByZXN1bHQgPSAnamF2YXNjcmlwdCc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICd0cyc6XG4gICAgY2FzZSAndHlwZXNjcmlwdCc6XG4gICAgY2FzZSAnYW5ndWxhci10cyc6XG4gICAgICByZXN1bHQgPSAnYW5ndWxhci10cyc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdodG1sJzpcbiAgICBjYXNlICdhbmd1bGFyLWh0bWwnOlxuICAgICAgcmVzdWx0ID0gJ2FuZ3VsYXItaHRtbCc7XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgcmVzdWx0ID0gZXh0cmFjdExhbmd1YWdlKGxhbmd1YWdlKTtcbiAgfVxuICBpZighQVZBSUxBQkxFX0xBTkdVQUdFUy5pbmNsdWRlcyhyZXN1bHQpKSB7XG4gICAgcmVzdWx0ID0gJ3RleHQnO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgbWF0Y2ggPSBsYW5ndWFnZS5tYXRjaCgvXihbXlxcc1xcW10rKS8pO1xuICByZXR1cm4gbWF0Y2ggPyBtYXRjaFsxXS50b0xvd2VyQ2FzZSgpIDogbGFuZ3VhZ2U7XG59XG4iLCI8c3BhbiBjbGFzcz1cImYtY29kZS1sYW5ndWFnZVwiPnt7IHZpc2libGVMYW5ndWFnZSgpIH19PC9zcGFuPlxuPGJ1dHRvbiBjbGFzcz1cImYtY29weS1idXR0b25cIiAoY2xpY2spPVwib25Db3B5Q2xpY2soKVwiPjwvYnV0dG9uPlxuQGlmIChjb250ZW50KCkpIHtcbiAgPGhpZ2hsaWdodCBbY29udGVudF09XCJjb250ZW50KClcIiBbbGFuZ3VhZ2VdPVwic3ludGF4TGFuZ3VhZ2UoKVwiLz5cbn1cblxuIl19","import { of } from 'rxjs';\nexport class MarkCodeFocusedBlocksPostProcessor {\n _window;\n constructor(_window) {\n this._window = _window;\n }\n handle(element) {\n const html = element.innerHTML;\n if (!FOCUS_REGEX.test(html)) {\n return of(element);\n }\n element.innerHTML = html.replace(FOCUS_REGEX, (_match, content) => {\n return `<focus class=\"focused\"><div class=\"inline-focus\">${content}</div></focus>`;\n });\n const focused = element.querySelector('.focused');\n if (focused) {\n this._applyOpacity(element.parentElement);\n }\n return of(element);\n }\n _applyOpacity(element) {\n if (!element.classList.contains('focused')) {\n element.style.color = this._createRgbaString(this._getElementColor(element), 0.5);\n element.childNodes.forEach((child) => {\n if (child.nodeType === Node.ELEMENT_NODE) {\n this._applyOpacity(child);\n }\n });\n }\n else {\n element.style.color = this._createRgbaString(this._getElementColor(element), 1, true);\n }\n }\n _getElementColor(element) {\n return this._window.getComputedStyle(element).color;\n }\n _createRgbaString(color, opacity, isRgb = false) {\n const [r, g, b, a] = this._getRgbValues(color);\n const alpha = Number(a) || 1;\n return isRgb ? `rgb(${r}, ${g}, ${b})` : `rgba(${r}, ${g}, ${b}, ${opacity * alpha})`;\n }\n _getRgbValues(color) {\n return color.match(/\\d+/g);\n }\n}\nconst FOCUS_REGEX = /ƒƒƒ([\\s\\S]*?)¢¢¢/g;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay1jb2RlLWZvY3VzZWQtYmxvY2tzLnBvc3QtcHJvY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9tYXJrLWNvZGUtZm9jdXNlZC1ibG9ja3MucG9zdC1wcm9jZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0QyxNQUFNLE9BQU8sa0NBQWtDO0lBR25DO0lBRFYsWUFDVSxPQUFlO1FBQWYsWUFBTyxHQUFQLE9BQU8sQ0FBUTtJQUV6QixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQW9CO1FBQ2hDLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUM1QixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQixDQUFDO1FBRUQsT0FBTyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNoRSxPQUFPLG9EQUFvRCxPQUFPLGdCQUFnQixDQUFDO1FBQ3JGLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBNEIsQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQW9CO1FBQ3hDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbEYsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDbkMsSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDekMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFvQixDQUFDLENBQUM7Z0JBQzNDLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDeEYsQ0FBQztJQUNILENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxPQUFvQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3RELENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUFhLEVBQUUsT0FBZSxFQUFFLEtBQUssR0FBRyxLQUFLO1FBQ3JFLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUM7SUFDeEYsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFhO1FBQ2pDLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUUsQ0FBQztJQUM5QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBNYXJrQ29kZUZvY3VzZWRCbG9ja3NQb3N0UHJvY2Vzc29yIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF93aW5kb3c6IFdpbmRvdyxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIGNvbnN0IGh0bWwgPSBlbGVtZW50LmlubmVySFRNTDtcbiAgICBpZiAoIUZPQ1VTX1JFR0VYLnRlc3QoaHRtbCkpIHtcbiAgICAgIHJldHVybiBvZihlbGVtZW50KTtcbiAgICB9XG5cbiAgICBlbGVtZW50LmlubmVySFRNTCA9IGh0bWwucmVwbGFjZShGT0NVU19SRUdFWCwgKF9tYXRjaCwgY29udGVudCkgPT4ge1xuICAgICAgcmV0dXJuIGA8Zm9jdXMgY2xhc3M9XCJmb2N1c2VkXCI+PGRpdiBjbGFzcz1cImlubGluZS1mb2N1c1wiPiR7Y29udGVudH08L2Rpdj48L2ZvY3VzPmA7XG4gICAgfSk7XG5cbiAgICBjb25zdCBmb2N1c2VkID0gZWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuZm9jdXNlZCcpO1xuICAgIGlmIChmb2N1c2VkKSB7XG4gICAgICB0aGlzLl9hcHBseU9wYWNpdHkoZWxlbWVudC5wYXJlbnRFbGVtZW50IGFzIEhUTUxFbGVtZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gb2YoZWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF9hcHBseU9wYWNpdHkoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAoIWVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdmb2N1c2VkJykpIHtcbiAgICAgIGVsZW1lbnQuc3R5bGUuY29sb3IgPSB0aGlzLl9jcmVhdGVSZ2JhU3RyaW5nKHRoaXMuX2dldEVsZW1lbnRDb2xvcihlbGVtZW50KSwgMC41KTtcbiAgICAgIGVsZW1lbnQuY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgICBpZiAoY2hpbGQubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgICAgICAgdGhpcy5fYXBwbHlPcGFjaXR5KGNoaWxkIGFzIEhUTUxFbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVsZW1lbnQuc3R5bGUuY29sb3IgPSB0aGlzLl9jcmVhdGVSZ2JhU3RyaW5nKHRoaXMuX2dldEVsZW1lbnRDb2xvcihlbGVtZW50KSwgMSwgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0RWxlbWVudENvbG9yKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkuY29sb3I7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVSZ2JhU3RyaW5nKGNvbG9yOiBzdHJpbmcsIG9wYWNpdHk6IG51bWJlciwgaXNSZ2IgPSBmYWxzZSk6IHN0cmluZyB7XG4gICAgY29uc3QgW3IsIGcsIGIsIGFdID0gdGhpcy5fZ2V0UmdiVmFsdWVzKGNvbG9yKTtcbiAgICBjb25zdCBhbHBoYSA9IE51bWJlcihhKSB8fCAxO1xuICAgIHJldHVybiBpc1JnYiA/IGByZ2IoJHtyfSwgJHtnfSwgJHtifSlgIDogYHJnYmEoJHtyfSwgJHtnfSwgJHtifSwgJHtvcGFjaXR5ICogYWxwaGF9KWA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRSZ2JWYWx1ZXMoY29sb3I6IHN0cmluZyk6IFJlZ0V4cE1hdGNoQXJyYXkge1xuICAgIHJldHVybiBjb2xvci5tYXRjaCgvXFxkKy9nKSE7XG4gIH1cbn1cblxuY29uc3QgRk9DVVNfUkVHRVggPSAvxpLGksaSKFtcXHNcXFNdKj8pwqLCosKiL2c7XG4iXX0=","export const UNIVERSAL_THEME = {\n name: 'universal',\n colors: {\n 'editor.background': 'transparent',\n 'editor.foreground': 'var(--code-view-text-color)',\n },\n settings: [\n {\n scope: ['comment', 'punctuation.definition.comment', 'string.comment'],\n settings: {\n foreground: 'var(--token-comment)',\n },\n },\n {\n scope: ['constant', 'entity.name.constant', 'variable.other.constant', 'variable.other.enummember', 'variable.language'],\n settings: {\n foreground: 'var(--token-number)',\n },\n },\n {\n scope: ['entity', 'entity.name'],\n settings: {\n foreground: 'var(--token-tag)',\n },\n },\n {\n scope: 'variable.parameter.function',\n settings: {\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: 'entity.name.tag',\n settings: {\n foreground: 'var(--token-tag)',\n },\n },\n {\n scope: 'keyword',\n settings: {\n foreground: 'var(--token-keyword)',\n },\n },\n {\n scope: ['storage', 'storage.type'],\n settings: {\n foreground: 'var(--token-keyword)',\n },\n },\n {\n scope: ['storage.modifier.package', 'storage.modifier.import', 'storage.type.java'],\n settings: {\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: ['string', 'punctuation.definition.string', 'string punctuation.section.embedded source'],\n settings: {\n foreground: 'var(--token-string)',\n },\n },\n {\n scope: 'support',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'meta.property-name',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'variable',\n settings: {\n foreground: 'var(--token-variable)',\n },\n },\n {\n scope: 'variable.other',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: [\n 'invalid.broken',\n 'invalid.deprecated',\n 'invalid.illegal',\n 'invalid.unimplemented',\n ],\n settings: {\n fontStyle: 'italic',\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: 'carriage-return',\n settings: {\n fontStyle: 'italic underline',\n foreground: 'var(--background-color)',\n background: 'var(--token-keyword)',\n },\n },\n {\n scope: 'message.error',\n settings: {\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: 'string variable',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: ['source.regexp', 'string.regexp'],\n settings: {\n foreground: 'var(--token-interpolation)',\n },\n },\n {\n scope: [\n 'string.regexp.character-class',\n 'string.regexp constant.character.escape',\n 'string.regexp source.ruby.embedded',\n 'string.regexp string.regexp.arbitrary-repitition',\n ],\n settings: {\n foreground: 'var(--token-interpolation)',\n },\n },\n {\n scope: 'string.regexp constant.character.escape',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-attr-value)',\n },\n },\n {\n scope: ['support.constant', 'support.variable', 'meta.module-reference'],\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'punctuation.definition.list.begin.markdown',\n settings: {\n foreground: 'var(--token-variable)',\n },\n },\n {\n scope: ['markup.heading', 'markup.heading entity.name'],\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'markup.quote',\n settings: {\n foreground: 'var(--token-attr-value)',\n },\n },\n {\n scope: 'markup.italic',\n settings: {\n fontStyle: 'italic',\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: 'markup.bold',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--primary-text)',\n },\n },\n {\n scope: 'markup.underline',\n settings: {\n fontStyle: 'underline',\n },\n },\n {\n scope: 'markup.strikethrough',\n settings: {\n fontStyle: 'strikethrough',\n },\n },\n {\n scope: 'markup.inline.raw',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: ['markup.deleted', 'meta.diff.header.from-file', 'punctuation.definition.deleted'],\n settings: {\n background: 'var(--danger-3)',\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: ['markup.inserted', 'meta.diff.header.to-file', 'punctuation.definition.inserted'],\n settings: {\n background: 'var(--success-3)',\n foreground: 'var(--token-attr-value)',\n },\n },\n {\n scope: ['markup.changed', 'punctuation.definition.changed'],\n settings: {\n background: 'var(--warning-3)',\n foreground: 'var(--token-variable)',\n },\n },\n {\n scope: ['markup.ignored', 'markup.untracked'],\n settings: {\n background: 'var(--token-function)',\n foreground: 'var(--alt-background)',\n },\n },\n {\n scope: 'meta.diff.range',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-attr-name)',\n },\n },\n {\n scope: 'meta.diff.header',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'meta.separator',\n settings: {\n fontStyle: 'bold',\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: 'meta.output',\n settings: {\n foreground: 'var(--token-function)',\n },\n },\n {\n scope: [\n 'brackethighlighter.tag',\n 'brackethighlighter.curly',\n 'brackethighlighter.round',\n 'brackethighlighter.square',\n 'brackethighlighter.angle',\n 'brackethighlighter.quote',\n ],\n settings: {\n foreground: 'var(--gray-1)',\n },\n },\n {\n scope: 'brackethighlighter.unmatched',\n settings: {\n foreground: 'var(--danger-2)',\n },\n },\n {\n scope: ['constant.other.reference.link', 'string.other.link'],\n settings: {\n fontStyle: 'underline',\n foreground: 'var(--token-interpolation)',\n },\n },\n ],\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaGlnaGxpZ2h0L3RoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBZTtJQUN6QyxJQUFJLEVBQUUsV0FBVztJQUNqQixNQUFNLEVBQUU7UUFDTixtQkFBbUIsRUFBRSxhQUFhO1FBQ2xDLG1CQUFtQixFQUFFLDZCQUE2QjtLQUNuRDtJQUNELFFBQVEsRUFBRTtRQUNSO1lBQ0UsS0FBSyxFQUFFLENBQUMsU0FBUyxFQUFFLGdDQUFnQyxFQUFFLGdCQUFnQixDQUFDO1lBQ3RFLFFBQVEsRUFBRTtnQkFDUixVQUFVLEVBQUUsc0JBQXNCO2FBQ25DO1NBQ0Y7UUFDRDtZQUNFLEtBQUssRUFBRSxDQUFDLFVBQVUsRUFBRSxzQkFBc0IsRUFBRSx5QkFBeUIsRUFBRSwyQkFBMkIsRUFBRSxtQkFBbUIsQ0FBQztZQUN4SCxRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLHFCQUFxQjthQUNsQztTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDO1lBQ2hDLFFBQVEsRUFBRTtnQkFDUixVQUFVLEVBQUUsa0JBQWtCO2FBQy9CO1NBQ0Y7UUFDRDtZQUNFLEtBQUssRUFBRSw2QkFBNkI7WUFDcEMsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLGlCQUFpQjtZQUN4QixRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLGtCQUFrQjthQUMvQjtTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsU0FBUztZQUNoQixRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLHNCQUFzQjthQUNuQztTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDO1lBQ2xDLFFBQVEs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O2dCQUNqQixVQUFVLEVBQUUsd0JBQXdCO2FBQ3JDO1NBQ0Y7UUFDRDtZQUNFLEtBQUssRUFBRSxrQkFBa0I7WUFDekIsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRSx1QkFBdUI7YUFDcEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLGdCQUFnQjtZQUN2QixRQUFRLEVBQUU7Z0JBQ1IsU0FBUyxFQUFFLE1BQU07Z0JBQ2pCLFVBQVUsRUFBRSx1QkFBdUI7YUFDcEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLGFBQWE7WUFDcEIsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRSx1QkFBdUI7YUFDcEM7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFO2dCQUNMLHdCQUF3QjtnQkFDeEIsMEJBQTBCO2dCQUMxQiwwQkFBMEI7Z0JBQzFCLDJCQUEyQjtnQkFDM0IsMEJBQTBCO2dCQUMxQiwwQkFBMEI7YUFDM0I7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLGVBQWU7YUFDNUI7U0FDRjtRQUNEO1lBQ0UsS0FBSyxFQUFFLDhCQUE4QjtZQUNyQyxRQUFRLEVBQUU7Z0JBQ1IsVUFBVSxFQUFFLGlCQUFpQjthQUM5QjtTQUNGO1FBQ0Q7WUFDRSxLQUFLLEVBQUUsQ0FBQywrQkFBK0IsRUFBRSxtQkFBbUIsQ0FBQztZQUM3RCxRQUFRLEVBQUU7Z0JBQ1IsU0FBUyxFQUFFLFdBQVc7Z0JBQ3RCLFVBQVUsRUFBRSw0QkFBNEI7YUFDekM7U0FDRjtLQUNGO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRoZW1lSW5wdXQgfSBmcm9tICdAc2hpa2lqcy90eXBlcydcblxuZXhwb3J0IGNvbnN0IFVOSVZFUlNBTF9USEVNRTogVGhlbWVJbnB1dCA9IHtcbiAgbmFtZTogJ3VuaXZlcnNhbCcsXG4gIGNvbG9yczoge1xuICAgICdlZGl0b3IuYmFja2dyb3VuZCc6ICd0cmFuc3BhcmVudCcsXG4gICAgJ2VkaXRvci5mb3JlZ3JvdW5kJzogJ3ZhcigtLWNvZGUtdmlldy10ZXh0LWNvbG9yKScsXG4gIH0sXG4gIHNldHRpbmdzOiBbXG4gICAge1xuICAgICAgc2NvcGU6IFsnY29tbWVudCcsICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmNvbW1lbnQnLCAnc3RyaW5nLmNvbW1lbnQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1jb21tZW50KScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnY29uc3RhbnQnLCAnZW50aXR5Lm5hbWUuY29uc3RhbnQnLCAndmFyaWFibGUub3RoZXIuY29uc3RhbnQnLCAndmFyaWFibGUub3RoZXIuZW51bW1lbWJlcicsICd2YXJpYWJsZS5sYW5ndWFnZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLW51bWJlciknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiBbJ2VudGl0eScsICdlbnRpdHkubmFtZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXRhZyknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAndmFyaWFibGUucGFyYW1ldGVyLmZ1bmN0aW9uJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS1wcmltYXJ5LXRleHQpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ2VudGl0eS5uYW1lLnRhZycsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tdGFnKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdrZXl3b3JkJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1rZXl3b3JkKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3RvcmFnZScsICdzdG9yYWdlLnR5cGUnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1rZXl3b3JkKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3RvcmFnZS5tb2RpZmllci5wYWNrYWdlJywgJ3N0b3JhZ2UubW9kaWZpZXIuaW1wb3J0JywgJ3N0b3JhZ2UudHlwZS5qYXZhJ10sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tcHJpbWFyeS10ZXh0KScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3RyaW5nJywgJ3B1bmN0dWF0aW9uLmRlZmluaXRpb24uc3RyaW5nJywgJ3N0cmluZyBwdW5jdHVhdGlvbi5zZWN0aW9uLmVtYmVkZGVkIHNvdXJjZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXN0cmluZyknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnc3VwcG9ydCcsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ21ldGEucHJvcGVydHktbmFtZScsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ3ZhcmlhYmxlJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi12YXJpYWJsZSknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAndmFyaWFibGUub3RoZXInLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFtcbiAgICAgICAgJ2ludmFsaWQuYnJva2VuJyxcbiAgICAgICAgJ2ludmFsaWQuZGVwcmVjYXRlZCcsXG4gICAgICAgICdpbnZhbGlkLmlsbGVnYWwnLFxuICAgICAgICAnaW52YWxpZC51bmltcGxlbWVudGVkJyxcbiAgICAgIF0sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdpdGFsaWMnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tZGFuZ2VyLTIpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ2NhcnJpYWdlLXJldHVybicsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdpdGFsaWMgdW5kZXJsaW5lJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLWJhY2tncm91bmQtY29sb3IpJyxcbiAgICAgICAgYmFja2dyb3VuZDogJ3ZhcigtLXRva2VuLWtleXdvcmQpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ21lc3NhZ2UuZXJyb3InLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLWRhbmdlci0yKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdzdHJpbmcgdmFyaWFibGUnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc291cmNlLnJlZ2V4cCcsICdzdHJpbmcucmVnZXhwJ10sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4taW50ZXJwb2xhdGlvbiknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiBbXG4gICAgICAgICdzdHJpbmcucmVnZXhwLmNoYXJhY3Rlci1jbGFzcycsXG4gICAgICAgICdzdHJpbmcucmVnZXhwIGNvbnN0YW50LmNoYXJhY3Rlci5lc2NhcGUnLFxuICAgICAgICAnc3RyaW5nLnJlZ2V4cCBzb3VyY2UucnVieS5lbWJlZGRlZCcsXG4gICAgICAgICdzdHJpbmcucmVnZXhwIHN0cmluZy5yZWdleHAuYXJiaXRyYXJ5LXJlcGl0aXRpb24nLFxuICAgICAgXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1pbnRlcnBvbGF0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdzdHJpbmcucmVnZXhwIGNvbnN0YW50LmNoYXJhY3Rlci5lc2NhcGUnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9udFN0eWxlOiAnYm9sZCcsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1hdHRyLXZhbHVlKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnc3VwcG9ydC5jb25zdGFudCcsICdzdXBwb3J0LnZhcmlhYmxlJywgJ21ldGEubW9kdWxlLXJlZmVyZW5jZSddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmxpc3QuYmVnaW4ubWFya2Rvd24nLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXZhcmlhYmxlKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnbWFya3VwLmhlYWRpbmcnLCAnbWFya3VwLmhlYWRpbmcgZW50aXR5Lm5hbWUnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvbnRTdHlsZTogJ2JvbGQnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ21hcmt1cC5xdW90ZScsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tYXR0ci12YWx1ZSknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWFya3VwLml0YWxpYycsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdpdGFsaWMnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tcHJpbWFyeS10ZXh0KScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdtYXJrdXAuYm9sZCcsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICdib2xkJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXByaW1hcnktdGV4dCknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWFya3VwLnVuZGVybGluZScsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb250U3R5bGU6ICd1bmRlcmxpbmUnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWFya3VwLnN0cmlrZXRocm91Z2gnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9udFN0eWxlOiAnc3RyaWtldGhyb3VnaCcsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdtYXJrdXAuaW5saW5lLnJhdycsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tZnVuY3Rpb24pJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogWydtYXJrdXAuZGVsZXRlZCcsICdtZXRhLmRpZmYuaGVhZGVyLmZyb20tZmlsZScsICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmRlbGV0ZWQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1kYW5nZXItMyknLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tZGFuZ2VyLTIpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogWydtYXJrdXAuaW5zZXJ0ZWQnLCAnbWV0YS5kaWZmLmhlYWRlci50by1maWxlJywgJ3B1bmN0dWF0aW9uLmRlZmluaXRpb24uaW5zZXJ0ZWQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1zdWNjZXNzLTMpJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWF0dHItdmFsdWUpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogWydtYXJrdXAuY2hhbmdlZCcsICdwdW5jdHVhdGlvbi5kZWZpbml0aW9uLmNoYW5nZWQnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS13YXJuaW5nLTMpJyxcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLXZhcmlhYmxlKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnbWFya3VwLmlnbm9yZWQnLCAnbWFya3VwLnVudHJhY2tlZCddLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgYmFja2dyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS1hbHQtYmFja2dyb3VuZCknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWV0YS5kaWZmLnJhbmdlJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvbnRTdHlsZTogJ2JvbGQnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAndmFyKC0tdG9rZW4tYXR0ci1uYW1lKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6ICdtZXRhLmRpZmYuaGVhZGVyJyxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1mdW5jdGlvbiknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWV0YS5zZXBhcmF0b3InLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9udFN0eWxlOiAnYm9sZCcsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1mdW5jdGlvbiknLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHNjb3BlOiAnbWV0YS5vdXRwdXQnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLXRva2VuLWZ1bmN0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFtcbiAgICAgICAgJ2JyYWNrZXRoaWdobGlnaHRlci50YWcnLFxuICAgICAgICAnYnJhY2tldGhpZ2hsaWdodGVyLmN1cmx5JyxcbiAgICAgICAgJ2JyYWNrZXRoaWdobGlnaHRlci5yb3VuZCcsXG4gICAgICAgICdicmFja2V0aGlnaGxpZ2h0ZXIuc3F1YXJlJyxcbiAgICAgICAgJ2JyYWNrZXRoaWdobGlnaHRlci5hbmdsZScsXG4gICAgICAgICdicmFja2V0aGlnaGxpZ2h0ZXIucXVvdGUnLFxuICAgICAgXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS1ncmF5LTEpJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBzY29wZTogJ2JyYWNrZXRoaWdobGlnaHRlci51bm1hdGNoZWQnLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgZm9yZWdyb3VuZDogJ3ZhcigtLWRhbmdlci0yKScsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgc2NvcGU6IFsnY29uc3RhbnQub3RoZXIucmVmZXJlbmNlLmxpbmsnLCAnc3RyaW5nLm90aGVyLmxpbmsnXSxcbiAgICAgIHNldHRpbmdzOiB7XG4gICAgICAgIGZvbnRTdHlsZTogJ3VuZGVybGluZScsXG4gICAgICAgIGZvcmVncm91bmQ6ICd2YXIoLS10b2tlbi1pbnRlcnBvbGF0aW9uKScsXG4gICAgICB9LFxuICAgIH0sXG4gIF0sXG59XG4iXX0=","export const AVAILABLE_LANGUAGES = [\n 'javascript',\n 'typescript',\n 'angular-html',\n 'angular-ts',\n 'shell',\n 'html',\n 'bash',\n 'css',\n 'scss',\n 'markdown',\n 'text',\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hpZ2hsaWdodC9sYW5ndWFnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUc7SUFDakMsWUFBWTtJQUNaLFlBQVk7SUFDWixjQUFjO0lBQ2QsWUFBWTtJQUNaLE9BQU87SUFDUCxNQUFNO0lBQ04sTUFBTTtJQUNOLEtBQUs7SUFDTCxNQUFNO0lBQ04sVUFBVTtJQUNWLE1BQU07Q0FDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEFWQUlMQUJMRV9MQU5HVUFHRVMgPSBbXG4gICdqYXZhc2NyaXB0JyxcbiAgJ3R5cGVzY3JpcHQnLFxuICAnYW5ndWxhci1odG1sJyxcbiAgJ2FuZ3VsYXItdHMnLFxuICAnc2hlbGwnLFxuICAnaHRtbCcsXG4gICdiYXNoJyxcbiAgJ2NzcycsXG4gICdzY3NzJyxcbiAgJ21hcmtkb3duJyxcbiAgJ3RleHQnLFxuXTtcbiJdfQ==","import { inject, Injectable } from '@angular/core';\nimport { defer, from, Observable, of, switchMap } from 'rxjs';\nimport { MarkCodeFocusedBlocksPostProcessor } from './mark-code-focused-blocks.post-processor';\nimport { createHighlighter } from 'shiki';\nimport { UNIVERSAL_THEME } from './theme';\nimport { catchError, shareReplay } from 'rxjs/operators';\nimport { AVAILABLE_LANGUAGES } from './languages';\nimport { IS_BROWSER_PLATFORM, WINDOW } from '../common';\nimport * as i0 from \"@angular/core\";\nexport class HighlightService {\n /**\n * Service for highlighting code blocks using Shiki.\n * It supports syntax highlighting and post-processing for focused blocks.\n */\n _isBrowser = inject(IS_BROWSER_PLATFORM);\n _window = inject(WINDOW);\n _highlighter$ = defer(() => from(createHighlighter({ themes: [UNIVERSAL_THEME], langs: AVAILABLE_LANGUAGES }))).pipe(shareReplay(1));\n highlight(element, lang, content) {\n if (!this._isBrowser) {\n console.warn('[HighlightService] Skipping highlight on server.');\n return of(element);\n }\n return this._highlightCodeBlock(element, lang, content).pipe(switchMap((x) => this._postProcess(x)), catchError((err) => {\n console.error('[HighlightService] Failed to highlight:', err);\n return of(element);\n }));\n }\n _highlightCodeBlock(element, lang, content) {\n return this._highlighter$.pipe(switchMap((highlighter) => this._renderCode(element, highlighter, lang, content)));\n }\n _renderCode(element, highlighter, lang, content) {\n return new Observable((observer) => {\n const processedContent = this._preprocessFocus(content);\n element.innerHTML = highlighter.codeToHtml(processedContent, { lang, theme: 'universal', defaultColor: false });\n requestAnimationFrame(() => {\n observer.next(element);\n observer.complete();\n });\n });\n }\n _preprocessFocus(code) {\n return code.replace(/\\|\\:\\|([\\s\\S]*?)\\|\\:\\|/g, (_, p1) => `ƒƒƒ${p1}¢¢¢`);\n }\n _postProcess(element) {\n return of(element).pipe(switchMap((x) => new MarkCodeFocusedBlocksPostProcessor(this._window).handle(x)));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HighlightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HighlightService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HighlightService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaGlnaGxpZ2h0L2hpZ2hsaWdodC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9GLE9BQU8sRUFBaUMsaUJBQWlCLEVBQXNCLE1BQU0sT0FBTyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQzs7QUFPeEQsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQjs7O09BR0c7SUFDYyxVQUFVLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDekMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixhQUFhLEdBQTRCLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FDbkUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxDQUNuRixDQUFDLElBQUksQ0FDSixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUVLLFNBQVMsQ0FDZCxPQUFvQixFQUFFLElBQVksRUFBRSxPQUFlO1FBRW5ELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO1lBQ2pFLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDMUQsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3RDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMseUNBQXlDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDOUQsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FDekIsT0FBb0IsRUFBRSxJQUFZLEVBQUUsT0FBZTtRQUVuRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUM1QixTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FDbEYsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXLENBQ2pCLE9BQW9CLEVBQUUsV0FBd0IsRUFBRSxJQUFZLEVBQUUsT0FBZTtRQUU3RSxPQUFPLElBQUksVUFBVSxDQUFjLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDOUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDeEQsT0FBTyxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDaEgscUJBQXFCLENBQUMsR0FBRyxFQUFFO2dCQUN6QixRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN2QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxJQUFZO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU8sWUFBWSxDQUFDLE9BQW9CO1FBQ3ZDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDckIsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGtDQUFrQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDakYsQ0FBQztJQUNKLENBQUM7dUdBMURVLGdCQUFnQjsyR0FBaEIsZ0JBQWdCLGNBRmYsTUFBTTs7MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZGVmZXIsIGZyb20sIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1hcmtDb2RlRm9jdXNlZEJsb2Nrc1Bvc3RQcm9jZXNzb3IgfSBmcm9tICcuL21hcmstY29kZS1mb2N1c2VkLWJsb2Nrcy5wb3N0LXByb2Nlc3Nvcic7XG5pbXBvcnQgeyBCdW5kbGVkTGFuZ3VhZ2UsIEJ1bmRsZWRUaGVtZSwgY3JlYXRlSGlnaGxpZ2h0ZXIsIEhpZ2hsaWdodGVyR2VuZXJpYyB9IGZyb20gJ3NoaWtpJztcbmltcG9ydCB7IFVOSVZFUlNBTF9USEVNRSB9IGZyb20gJy4vdGhlbWUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBVkFJTEFCTEVfTEFOR1VBR0VTIH0gZnJvbSAnLi9sYW5ndWFnZXMnO1xuaW1wb3J0IHsgSVNfQlJPV1NFUl9QTEFURk9STSwgV0lORE9XIH0gZnJvbSAnLi4vY29tbW9uJztcblxudHlwZSBIaWdobGlnaHRlciA9IEhpZ2hsaWdodGVyR2VuZXJpYzxCdW5kbGVkTGFuZ3VhZ2UsIEJ1bmRsZWRUaGVtZT47XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIFNlcnZpY2UgZm9yIGhpZ2hsaWdodGluZyBjb2RlIGJsb2NrcyB1c2luZyBTaGlraS5cbiAgICogSXQgc3VwcG9ydHMgc3ludGF4IGhpZ2hsaWdodGluZyBhbmQgcG9zdC1wcm9jZXNzaW5nIGZvciBmb2N1c2VkIGJsb2Nrcy5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX2lzQnJvd3NlciA9IGluamVjdChJU19CUk9XU0VSX1BMQVRGT1JNKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2hpZ2hsaWdodGVyJDogT2JzZXJ2YWJsZTxIaWdobGlnaHRlcj4gPSBkZWZlcigoKSA9PlxuICAgIGZyb20oY3JlYXRlSGlnaGxpZ2h0ZXIoeyB0aGVtZXM6IFtVTklWRVJTQUxfVEhFTUVdLCBsYW5nczogQVZBSUxBQkxFX0xBTkdVQUdFUyB9KSksXG4gICkucGlwZShcbiAgICBzaGFyZVJlcGxheSgxKSxcbiAgKTtcblxuICBwdWJsaWMgaGlnaGxpZ2h0KFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBsYW5nOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZyxcbiAgKTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIGlmICghdGhpcy5faXNCcm93c2VyKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1tIaWdobGlnaHRTZXJ2aWNlXSBTa2lwcGluZyBoaWdobGlnaHQgb24gc2VydmVyLicpO1xuICAgICAgcmV0dXJuIG9mKGVsZW1lbnQpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5faGlnaGxpZ2h0Q29kZUJsb2NrKGVsZW1lbnQsIGxhbmcsIGNvbnRlbnQpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IHRoaXMuX3Bvc3RQcm9jZXNzKHgpKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdbSGlnaGxpZ2h0U2VydmljZV0gRmFpbGVkIHRvIGhpZ2hsaWdodDonLCBlcnIpO1xuICAgICAgICByZXR1cm4gb2YoZWxlbWVudCk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGlnaGxpZ2h0Q29kZUJsb2NrKFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBsYW5nOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZyxcbiAgKTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIHJldHVybiB0aGlzLl9oaWdobGlnaHRlciQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoaGlnaGxpZ2h0ZXIpID0+IHRoaXMuX3JlbmRlckNvZGUoZWxlbWVudCwgaGlnaGxpZ2h0ZXIsIGxhbmcsIGNvbnRlbnQpKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyQ29kZShcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCwgaGlnaGxpZ2h0ZXI6IEhpZ2hsaWdodGVyLCBsYW5nOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZyxcbiAgKTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4oKG9ic2VydmVyKSA9PiB7XG4gICAgICBjb25zdCBwcm9jZXNzZWRDb250ZW50ID0gdGhpcy5fcHJlcHJvY2Vzc0ZvY3VzKGNvbnRlbnQpO1xuICAgICAgZWxlbWVudC5pbm5lckhUTUwgPSBoaWdobGlnaHRlci5jb2RlVG9IdG1sKHByb2Nlc3NlZENvbnRlbnQsIHsgbGFuZywgdGhlbWU6ICd1bml2ZXJzYWwnLCBkZWZhdWx0Q29sb3I6IGZhbHNlIH0pO1xuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChlbGVtZW50KTtcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfcHJlcHJvY2Vzc0ZvY3VzKGNvZGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNvZGUucmVwbGFjZSgvXFx8XFw6XFx8KFtcXHNcXFNdKj8pXFx8XFw6XFx8L2csIChfLCBwMSkgPT4gYMaSxpLGkiR7cDF9wqLCosKiYCk7XG4gIH1cblxuICBwcml2YXRlIF9wb3N0UHJvY2VzcyhlbGVtZW50OiBIVE1MRWxlbWVudCk6IE9ic2VydmFibGU8SFRNTEVsZW1lbnQ+IHtcbiAgICByZXR1cm4gb2YoZWxlbWVudCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4gbmV3IE1hcmtDb2RlRm9jdXNlZEJsb2Nrc1Bvc3RQcm9jZXNzb3IodGhpcy5fd2luZG93KS5oYW5kbGUoeCkpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, signal } from '@angular/core';\nimport { EParsedContainerType } from '../../../documentation-page';\nimport { ExternalComponent } from '../external-component';\nimport { CodeView } from '../../../highlight';\nimport * as i0 from \"@angular/core\";\nexport class CodeGroup {\n data = signal([], ...(ngDevMode ? [{ debugName: \"data\" }] : []));\n index = signal(0, ...(ngDevMode ? [{ debugName: \"index\" }] : []));\n containerType = EParsedContainerType;\n tabClick(index) {\n this.index.set(index);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: CodeGroup, isStandalone: true, selector: \"code-group\", host: { classAttribute: \"f-code-group\" }, ngImport: i0, template: \"@let views = data();\\n\\n@if (views.length > 1) {\\n <div class=\\\"f-code-group-tabs\\\">\\n @for (data of views; track data) {\\n <button class=\\\"f-tab-button\\\" [class.active]=\\\"$index === index()\\\" (click)=\\\"tabClick($index)\\\">\\n {{ data.tab }}\\n </button>\\n }\\n </div>\\n}\\n\\n<div class=\\\"f-code-group-body\\\">\\n @for (data of views; track data) {\\n\\n @let isExampleView = data.type === containerType.EXAMPLE;\\n @let display = $index === index() ? 'block' : 'none';\\n\\n @if (isExampleView) {\\n <external-component [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n } @else {\\n <code-view [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n }\\n }\\n</div>\\n\", dependencies: [{ kind: \"component\", type: ExternalComponent, selector: \"external-component\", inputs: [\"data\"] }, { kind: \"component\", type: CodeView, selector: \"code-view\", inputs: [\"data\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CodeGroup, decorators: [{\n type: Component,\n args: [{ selector: 'code-group', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'f-code-group',\n }, imports: [\n ExternalComponent,\n CodeView,\n ], template: \"@let views = data();\\n\\n@if (views.length > 1) {\\n <div class=\\\"f-code-group-tabs\\\">\\n @for (data of views; track data) {\\n <button class=\\\"f-tab-button\\\" [class.active]=\\\"$index === index()\\\" (click)=\\\"tabClick($index)\\\">\\n {{ data.tab }}\\n </button>\\n }\\n </div>\\n}\\n\\n<div class=\\\"f-code-group-body\\\">\\n @for (data of views; track data) {\\n\\n @let isExampleView = data.type === containerType.EXAMPLE;\\n @let display = $index === index() ? 'block' : 'none';\\n\\n @if (isExampleView) {\\n <external-component [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n } @else {\\n <code-view [style.display]=\\\"display\\\" [data]=\\\"data\\\" />\\n }\\n }\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9jb2RlLWdyb3VwL2NvZGUtZ3JvdXAudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvY29kZS1ncm91cC9jb2RlLWdyb3VwLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLG9CQUFvQixFQUF3QixNQUFNLDZCQUE2QixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFlOUMsTUFBTSxPQUFPLFNBQVM7SUFDSixJQUFJLEdBQUcsTUFBTSxDQUF5QixFQUFFLGdEQUFDLENBQUM7SUFFdkMsS0FBSyxHQUFHLE1BQU0sQ0FBUyxDQUFDLGlEQUFDLENBQUM7SUFDMUIsYUFBYSxHQUFHLG9CQUFvQixDQUFDO0lBRTlDLFFBQVEsQ0FBQyxLQUFhO1FBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hCLENBQUM7dUdBUlUsU0FBUzsyRkFBVCxTQUFTLGdIQ2xCdEIsMHJCQXlCQSw0Q0RYSSxpQkFBaUIsaUZBQ2pCLFFBQVE7OzJGQUdDLFNBQVM7a0JBYnJCLFNBQVM7K0JBQ0UsWUFBWSxjQUVWLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUsY0FBYztxQkFDdEIsV0FDUTt3QkFDUCxpQkFBaUI7d0JBQ2pCLFFBQVE7cUJBQ1QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVQYXJzZWRDb250YWluZXJUeXBlLCBJUGFyc2VkQ29udGFpbmVyRGF0YSB9IGZyb20gJy4uLy4uLy4uL2RvY3VtZW50YXRpb24tcGFnZSc7XG5pbXBvcnQgeyBFeHRlcm5hbENvbXBvbmVudCB9IGZyb20gJy4uL2V4dGVybmFsLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2RlVmlldyB9IGZyb20gJy4uLy4uLy4uL2hpZ2hsaWdodCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NvZGUtZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29kZS1ncm91cC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2YtY29kZS1ncm91cCcsXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBFeHRlcm5hbENvbXBvbmVudCxcbiAgICBDb2RlVmlldyxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZUdyb3VwIHtcbiAgcHVibGljIHJlYWRvbmx5IGRhdGEgPSBzaWduYWw8SVBhcnNlZENvbnRhaW5lckRhdGFbXT4oW10pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBpbmRleCA9IHNpZ25hbDxudW1iZXI+KDApO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGFpbmVyVHlwZSA9IEVQYXJzZWRDb250YWluZXJUeXBlO1xuXG4gIHByb3RlY3RlZCB0YWJDbGljayhpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5pbmRleC5zZXQoaW5kZXgpO1xuICB9XG59XG4iLCJAbGV0IHZpZXdzID0gZGF0YSgpO1xuXG5AaWYgKHZpZXdzLmxlbmd0aCA+IDEpIHtcbiAgPGRpdiBjbGFzcz1cImYtY29kZS1ncm91cC10YWJzXCI+XG4gICAgQGZvciAoZGF0YSBvZiB2aWV3czsgdHJhY2sgZGF0YSkge1xuICAgICAgPGJ1dHRvbiBjbGFzcz1cImYtdGFiLWJ1dHRvblwiIFtjbGFzcy5hY3RpdmVdPVwiJGluZGV4ID09PSBpbmRleCgpXCIgKGNsaWNrKT1cInRhYkNsaWNrKCRpbmRleClcIj5cbiAgICAgICAge3sgZGF0YS50YWIgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIH1cbiAgPC9kaXY+XG59XG5cbjxkaXYgY2xhc3M9XCJmLWNvZGUtZ3JvdXAtYm9keVwiPlxuICBAZm9yIChkYXRhIG9mIHZpZXdzOyB0cmFjayBkYXRhKSB7XG5cbiAgICBAbGV0IGlzRXhhbXBsZVZpZXcgPSBkYXRhLnR5cGUgPT09IGNvbnRhaW5lclR5cGUuRVhBTVBMRTtcbiAgICBAbGV0IGRpc3BsYXkgPSAkaW5kZXggPT09IGluZGV4KCkgPyAnYmxvY2snIDogJ25vbmUnO1xuXG4gICAgQGlmIChpc0V4YW1wbGVWaWV3KSB7XG4gICAgICA8ZXh0ZXJuYWwtY29tcG9uZW50IFtzdHlsZS5kaXNwbGF5XT1cImRpc3BsYXlcIiBbZGF0YV09XCJkYXRhXCIgLz5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxjb2RlLXZpZXcgW3N0eWxlLmRpc3BsYXldPVwiZGlzcGxheVwiIFtkYXRhXT1cImRhdGFcIiAvPlxuICAgIH1cbiAgfVxuPC9kaXY+XG4iXX0=","export class PreviewCardBase {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1jYXJkLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvcHJldmlldy1ncm91cC9jb21wb25lbnRzL3ByZXZpZXctY2FyZC9wcmV2aWV3LWNhcmQtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQWdCLGVBQWU7Q0FPcEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgYWJzdHJhY3QgY2xhc3MgUHJldmlld0NhcmRCYXNlIHtcblxuICBwdWJsaWMgYWJzdHJhY3QgZGF0ZT86IERhdGU7XG5cbiAgcHVibGljIGFic3RyYWN0IGZpbHRlcktleT86IHN0cmluZztcblxuICBwdWJsaWMgYWJzdHJhY3QgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xufVxuIl19","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class PreviewGroupService {\n _cards = [];\n _originalOrder = null;\n add(card) {\n this._cards.push(card);\n }\n remove(card) {\n this._cards = this._cards.filter(preview => preview !== card);\n }\n sortByDate(sort) {\n if (sort) {\n this._applyByDateOrder();\n }\n else {\n this._applyOriginalOrder();\n }\n }\n _setOriginalOrder() {\n this._originalOrder = new Map();\n this._cards.forEach((x) => {\n const parentElement = x.hostElement.parentElement;\n if (parentElement) {\n const childrenArray = Array.from(parentElement.children);\n this._originalOrder.set(parentElement, childrenArray);\n }\n });\n }\n _getOrderByDate() {\n return this._cards\n .slice()\n .sort((a, b) => {\n const dateA = a.date ? a.date.getTime() : Number.MIN_SAFE_INTEGER;\n const dateB = b.date ? b.date.getTime() : Number.MIN_SAFE_INTEGER;\n return dateB - dateA;\n });\n }\n _applyByDateOrder() {\n this._setOriginalOrder();\n this._getOrderByDate().forEach((x) => {\n const parent = x.hostElement.parentElement;\n parent?.appendChild(x.hostElement);\n });\n }\n _applyOriginalOrder() {\n this._originalOrder.forEach((originalChildren, parentElement) => {\n originalChildren.forEach(child => parentElement.appendChild(child));\n });\n }\n filterBy(filterKey, _allKey) {\n this._resetLastActiveFilter();\n if (filterKey === _allKey) {\n return;\n }\n this._cards.forEach((x) => {\n if (x.filterKey !== filterKey) {\n x.hostElement.style.display = 'none';\n }\n });\n }\n _resetLastActiveFilter() {\n this._cards.forEach((x) => {\n x.hostElement.style.display = 'block';\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewGroupService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewGroupService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewGroupService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1ncm91cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvcHJldmlldy1ncm91cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxtQkFBbUI7SUFFdEIsTUFBTSxHQUFzQixFQUFFLENBQUM7SUFDL0IsY0FBYyxHQUFvQyxJQUFJLENBQUM7SUFFeEQsR0FBRyxDQUFDLElBQXFCO1FBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTSxNQUFNLENBQUMsSUFBcUI7UUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU0sVUFBVSxDQUFDLElBQWE7UUFDN0IsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzNCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEIsTUFBTSxhQUFhLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7WUFDbEQsSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDbEIsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxjQUFlLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztZQUN6RCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxNQUFNO2FBQ2YsS0FBSyxFQUFFO2FBQ1AsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2IsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ2xFLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztZQUNsRSxPQUFPLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNuQyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztZQUMzQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLGNBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsRUFBRTtZQUMvRCxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sUUFBUSxDQUFDLFNBQWlCLEVBQUUsT0FBZTtRQUNoRCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUU5QixJQUFJLFNBQVMsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMxQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEIsSUFBSSxDQUFDLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUM5QixDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1lBQ3ZDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN4QixDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0F6RVUsbUJBQW1COzJHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcmV2aWV3Q2FyZEJhc2UgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJldmlldy1jYXJkJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFByZXZpZXdHcm91cFNlcnZpY2Uge1xuXG4gIHByaXZhdGUgX2NhcmRzOiBQcmV2aWV3Q2FyZEJhc2VbXSA9IFtdO1xuICBwcml2YXRlIF9vcmlnaW5hbE9yZGVyOiBNYXA8SFRNTEVsZW1lbnQsIE5vZGVbXT4gfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgYWRkKGNhcmQ6IFByZXZpZXdDYXJkQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX2NhcmRzLnB1c2goY2FyZCk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlKGNhcmQ6IFByZXZpZXdDYXJkQmFzZSk6IHZvaWQge1xuICAgIHRoaXMuX2NhcmRzID0gdGhpcy5fY2FyZHMuZmlsdGVyKHByZXZpZXcgPT4gcHJldmlldyAhPT0gY2FyZCk7XG4gIH1cblxuICBwdWJsaWMgc29ydEJ5RGF0ZShzb3J0OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHNvcnQpIHtcbiAgICAgIHRoaXMuX2FwcGx5QnlEYXRlT3JkZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fYXBwbHlPcmlnaW5hbE9yZGVyKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc2V0T3JpZ2luYWxPcmRlcigpOiB2b2lkIHtcbiAgICB0aGlzLl9vcmlnaW5hbE9yZGVyID0gbmV3IE1hcCgpO1xuICAgIHRoaXMuX2NhcmRzLmZvckVhY2goKHgpID0+IHtcbiAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSB4Lmhvc3RFbGVtZW50LnBhcmVudEVsZW1lbnQ7XG4gICAgICBpZiAocGFyZW50RWxlbWVudCkge1xuICAgICAgICBjb25zdCBjaGlsZHJlbkFycmF5ID0gQXJyYXkuZnJvbShwYXJlbnRFbGVtZW50LmNoaWxkcmVuKTtcbiAgICAgICAgdGhpcy5fb3JpZ2luYWxPcmRlciEuc2V0KHBhcmVudEVsZW1lbnQsIGNoaWxkcmVuQXJyYXkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0T3JkZXJCeURhdGUoKTogUHJldmlld0NhcmRCYXNlW10ge1xuICAgIHJldHVybiB0aGlzLl9jYXJkc1xuICAgICAgLnNsaWNlKClcbiAgICAgIC5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGVBID0gYS5kYXRlID8gYS5kYXRlLmdldFRpbWUoKSA6IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSO1xuICAgICAgICBjb25zdCBkYXRlQiA9IGIuZGF0ZSA/IGIuZGF0ZS5nZXRUaW1lKCkgOiBOdW1iZXIuTUlOX1NBRkVfSU5URUdFUjtcbiAgICAgICAgcmV0dXJuIGRhdGVCIC0gZGF0ZUE7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5QnlEYXRlT3JkZXIoKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0T3JpZ2luYWxPcmRlcigpO1xuICAgIHRoaXMuX2dldE9yZGVyQnlEYXRlKCkuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgY29uc3QgcGFyZW50ID0geC5ob3N0RWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgICAgcGFyZW50Py5hcHBlbmRDaGlsZCh4Lmhvc3RFbGVtZW50KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FwcGx5T3JpZ2luYWxPcmRlcigpOiB2b2lkIHtcbiAgICB0aGlzLl9vcmlnaW5hbE9yZGVyIS5mb3JFYWNoKChvcmlnaW5hbENoaWxkcmVuLCBwYXJlbnRFbGVtZW50KSA9PiB7XG4gICAgICBvcmlnaW5hbENoaWxkcmVuLmZvckVhY2goY2hpbGQgPT4gcGFyZW50RWxlbWVudC5hcHBlbmRDaGlsZChjaGlsZCkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGZpbHRlckJ5KGZpbHRlcktleTogc3RyaW5nLCBfYWxsS2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9yZXNldExhc3RBY3RpdmVGaWx0ZXIoKTtcblxuICAgIGlmIChmaWx0ZXJLZXkgPT09IF9hbGxLZXkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fY2FyZHMuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgaWYgKHguZmlsdGVyS2V5ICE9PSBmaWx0ZXJLZXkpIHtcbiAgICAgICAgeC5ob3N0RWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRMYXN0QWN0aXZlRmlsdGVyKCk6IHZvaWQge1xuICAgIHRoaXMuX2NhcmRzLmZvckVhY2goKHgpID0+IHtcbiAgICAgIHguaG9zdEVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, signal, } from '@angular/core';\nimport { startWith } from 'rxjs';\nimport { Router } from '@angular/router';\nimport { PreviewCardBase } from './preview-card-base';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ThemeService } from '../../../../../theme';\nimport { DocumentationStore } from '../../../../../documentation-page';\nimport { PreviewGroupService } from '../../preview-group.service';\nimport * as i0 from \"@angular/core\";\nexport class PreviewCard extends PreviewCardBase {\n _elementReference = inject(ElementRef);\n _fEnvironment = inject(DocumentationStore);\n _fPreviewGroupService = inject(PreviewGroupService);\n _themeService = inject(ThemeService, { optional: true });\n _router = inject(Router);\n _destroyRef = inject(DestroyRef);\n item;\n group;\n viewModel;\n src = signal(undefined, ...(ngDevMode ? [{ debugName: \"src\" }] : []));\n url;\n get hostElement() {\n return this._elementReference.nativeElement;\n }\n get filterKey() {\n return this.viewModel?.badge?.text.toLowerCase();\n }\n get date() {\n return this.viewModel?.date;\n }\n initialize() {\n this.viewModel = this._getNavigationItem(this._getNavigationGroup());\n this.url = this._normalizeLink(this.viewModel.link, this._getUrlPrefix());\n this._subscribeToThemeChanges();\n }\n _subscribeToThemeChanges() {\n this._themeService?.theme$.pipe(startWith(null), takeUntilDestroyed(this._destroyRef)).subscribe(() => this._updateTheme());\n }\n ngOnInit() {\n this._fPreviewGroupService.add(this);\n }\n _getNavigationGroup() {\n return this._fEnvironment.getNavigation().find((x) => x.text === this.group);\n }\n _getNavigationItem(group) {\n return group.items.find((x) => x.link === this.item);\n }\n _updateTheme() {\n this.src.set(this._themeService?.getPreferredTheme() === 'dark' ? this.viewModel?.image_dark : this.viewModel?.image);\n if (!this.src()) {\n this.src.set(this.viewModel?.image);\n }\n }\n _normalizeLink(link, prefix) {\n if (!this._isExternalLink(link)) {\n return link.startsWith('/') ? `${prefix}${link}` : `${prefix}/${link}`;\n }\n return link;\n }\n _getUrlPrefix() {\n return this._router.url.substring(0, this._router.url.lastIndexOf('/'));\n }\n _isExternalLink(href) {\n return href.startsWith('www') || href.startsWith('http');\n }\n ngOnDestroy() {\n this._fPreviewGroupService.remove(this);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewCard, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: PreviewCard, isStandalone: true, selector: \"a[preview-card]\", host: { properties: { \"attr.href\": \"url\", \"attr.title\": \"viewModel?.text\" } }, usesInheritance: true, ngImport: i0, template: \"@if (viewModel) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"viewModel.description\\\" [title]=\\\"viewModel.text\\\">\\n <div class=\\\"title\\\">\\n {{ viewModel.text }}\\n @if (viewModel.badge) {\\n <span class=\\\"f-badge {{viewModel.badge.type}}\\\">{{ viewModel.badge.text }}</span>\\n }\\n </div>\\n <div class=\\\"description\\\">{{ viewModel.description }}</div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px;cursor:pointer}:host:hover img{transform:scale(1.1)}:host img{display:block;margin-bottom:16px;width:100%;height:180px;border-radius:4px;object-fit:cover;transition:transform .3s}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.f-badge{padding:0 6px;line-height:14px;text-transform:none}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewCard, decorators: [{\n type: Component,\n args: [{ selector: 'a[preview-card]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n '[attr.href]': 'url',\n '[attr.title]': 'viewModel?.text',\n }, template: \"@if (viewModel) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"viewModel.description\\\" [title]=\\\"viewModel.text\\\">\\n <div class=\\\"title\\\">\\n {{ viewModel.text }}\\n @if (viewModel.badge) {\\n <span class=\\\"f-badge {{viewModel.badge.type}}\\\">{{ viewModel.badge.text }}</span>\\n }\\n </div>\\n <div class=\\\"description\\\">{{ viewModel.description }}</div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px;cursor:pointer}:host:hover img{transform:scale(1.1)}:host img{display:block;margin-bottom:16px;width:100%;height:180px;border-radius:4px;object-fit:cover;transition:transform .3s}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.f-badge{padding:0 6px;line-height:14px;text-transform:none}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1jYXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWNhcmQvcHJldmlldy1jYXJkLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWNhcmQvcHJldmlldy1jYXJkLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBR04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFxQyxNQUFNLG1DQUFtQyxDQUFDO0FBQzFHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQWFsRSxNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQWU7SUFDN0IsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZDLGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMzQyxxQkFBcUIsR0FB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QUUsQ0FBQyxDQUFDLENBQUMsR0FBSSxNQUFPLElBQUssSUFBSyxFQUFFLENBQUM7UUFDakYsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLGFBQWE7UUFDbkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWTtRQUNsQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7dUdBM0VVLFdBQVc7MkZBQVgsV0FBVyxpTEM3QnhCLDZXQWFBOzsyRkRnQmEsV0FBVztrQkFYdkIsU0FBUzsrQkFDRSxpQkFBaUIsY0FHZixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osYUFBYSxFQUFFLEtBQUs7d0JBQ3BCLGNBQWMsRUFBRSxpQkFBaUI7cUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFByZXZpZXdDYXJkQmFzZSB9IGZyb20gJy4vcHJldmlldy1jYXJkLWJhc2UnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdGhlbWUnO1xuaW1wb3J0IHsgRG9jdW1lbnRhdGlvblN0b3JlLCBJTmF2aWdhdGlvbkdyb3VwLCBJTmF2aWdhdGlvbkl0ZW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuaW1wb3J0IHsgUHJldmlld0dyb3VwU2VydmljZSB9IGZyb20gJy4uLy4uL3ByZXZpZXctZ3JvdXAuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FbcHJldmlldy1jYXJkXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcmV2aWV3LWNhcmQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9wcmV2aWV3LWNhcmQuc2NzcycgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuaHJlZl0nOiAndXJsJyxcbiAgICAnW2F0dHIudGl0bGVdJzogJ3ZpZXdNb2RlbD8udGV4dCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFByZXZpZXdDYXJkIGV4dGVuZHMgUHJldmlld0NhcmRCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmZXJlbmNlID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9mRW52aXJvbm1lbnQgPSBpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZlByZXZpZXdHcm91cFNlcnZpY2UgPSBpbmplY3QoUHJldmlld0dyb3VwU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RoZW1lU2VydmljZSA9IGluamVjdChUaGVtZVNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3JvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gIHB1YmxpYyBpdGVtOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBncm91cDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIHByb3RlY3RlZCB2aWV3TW9kZWw6IElOYXZpZ2F0aW9uSXRlbSB8IHVuZGVmaW5lZDtcbiAgcHJvdGVjdGVkIHNyYyA9IHNpZ25hbDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHByb3RlY3RlZCB1cmw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZ2V0IGhvc3RFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGdldCBmaWx0ZXJLZXkoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy52aWV3TW9kZWw/LmJhZGdlPy50ZXh0LnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGUoKTogRGF0ZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudmlld01vZGVsPy5kYXRlO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgdGhpcy52aWV3TW9kZWwgPSB0aGlzLl9nZXROYXZpZ2F0aW9uSXRlbSh0aGlzLl9nZXROYXZpZ2F0aW9uR3JvdXAoKSEpO1xuICAgIHRoaXMudXJsID0gdGhpcy5fbm9ybWFsaXplTGluayh0aGlzLnZpZXdNb2RlbCEubGluaywgdGhpcy5fZ2V0VXJsUHJlZml4KCkpO1xuICAgIHRoaXMuX3N1YnNjcmliZVRvVGhlbWVDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIF9zdWJzY3JpYmVUb1RoZW1lQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLl90aGVtZVNlcnZpY2U/LnRoZW1lJC5waXBlKFxuICAgICAgc3RhcnRXaXRoKG51bGwpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZiksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fdXBkYXRlVGhlbWUoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZlByZXZpZXdHcm91cFNlcnZpY2UuYWRkKHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0TmF2aWdhdGlvbkdyb3VwKCk6IElOYXZpZ2F0aW9uR3JvdXAgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9mRW52aXJvbm1lbnQuZ2V0TmF2aWdhdGlvbigpLmZpbmQoKHgpID0+IHgudGV4dCA9PT0gdGhpcy5ncm91cCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROYXZpZ2F0aW9uSXRlbShncm91cDogSU5hdmlnYXRpb25Hcm91cCk6IElOYXZpZ2F0aW9uSXRlbSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIGdyb3VwLml0ZW1zLmZpbmQoKHgpID0+IHgubGluayA9PT0gdGhpcy5pdGVtKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVRoZW1lKCk6IHZvaWQge1xuICAgIHRoaXMuc3JjLnNldCh0aGlzLl90aGVtZVNlcnZpY2U/LmdldFByZWZlcnJlZFRoZW1lKCkgPT09ICdkYXJrJyA/IHRoaXMudmlld01vZGVsPy5pbWFnZV9kYXJrIDogdGhpcy52aWV3TW9kZWw/LmltYWdlKTtcbiAgICBpZiAoIXRoaXMuc3JjKCkpIHtcbiAgICAgIHRoaXMuc3JjLnNldCh0aGlzLnZpZXdNb2RlbD8uaW1hZ2UpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX25vcm1hbGl6ZUxpbmsobGluazogc3RyaW5nLCBwcmVmaXg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLl9pc0V4dGVybmFsTGluayhsaW5rKSkge1xuICAgICAgcmV0dXJuIGxpbmsuc3RhcnRzV2l0aCgnLycpID8gYCR7IHByZWZpeCB9JHsgbGluayB9YCA6IGAkeyBwcmVmaXggfS8keyBsaW5rIH1gO1xuICAgIH1cbiAgICByZXR1cm4gbGluaztcbiAgfVxuXG4gIHByaXZhdGUgX2dldFVybFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9yb3V0ZXIudXJsLnN1YnN0cmluZygwLCB0aGlzLl9yb3V0ZXIudXJsLmxhc3RJbmRleE9mKCcvJykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNFeHRlcm5hbExpbmsoaHJlZjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGhyZWYuc3RhcnRzV2l0aCgnd3d3JykgfHwgaHJlZi5zdGFydHNXaXRoKCdodHRwJyk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZlByZXZpZXdHcm91cFNlcnZpY2UucmVtb3ZlKHRoaXMpO1xuICB9XG59XG4iLCJAaWYgKHZpZXdNb2RlbCkge1xuICA8aW1nIFtzcmNdPVwic3JjKClcIiBbYWx0XT1cInZpZXdNb2RlbC5kZXNjcmlwdGlvblwiIFt0aXRsZV09XCJ2aWV3TW9kZWwudGV4dFwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICB7eyB2aWV3TW9kZWwudGV4dCB9fVxuICAgIEBpZiAodmlld01vZGVsLmJhZGdlKSB7XG4gICAgICA8c3BhbiBjbGFzcz1cImYtYmFkZ2Uge3t2aWV3TW9kZWwuYmFkZ2UudHlwZX19XCI+e3sgdmlld01vZGVsLmJhZGdlLnRleHQgfX08L3NwYW4+XG4gICAgfVxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uXCI+e3sgdmlld01vZGVsLmRlc2NyaXB0aW9uIH19PC9kaXY+XG59XG5cblxuXG4iXX0=","import { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';\nimport { DocumentationStore } from '../../../../../documentation-page';\nimport { TitleCasePipe } from '@angular/common';\nimport { FCheckboxComponent, FRadioButtonComponent } from '../../../../../common';\nimport { PreviewGroupService } from '../../preview-group.service';\nimport * as i0 from \"@angular/core\";\nexport class PreviewActionBar {\n _allKey = 'all';\n _fEnvironment = inject(DocumentationStore);\n _fPreviewGroupService = inject(PreviewGroupService);\n filters = signal([], ...(ngDevMode ? [{ debugName: \"filters\" }] : []));\n activeFilter = signal(this._allKey, ...(ngDevMode ? [{ debugName: \"activeFilter\" }] : []));\n isSortByDateChecked = signal(false, ...(ngDevMode ? [{ debugName: \"isSortByDateChecked\" }] : []));\n initialize() {\n this.filters.set(this._calculateFiltersMap());\n }\n ngAfterViewInit() {\n this.onFilterChange(this._allKey);\n }\n _calculateFiltersMap() {\n const filters = [];\n this._fEnvironment.getNavigation().forEach((group) => {\n group.items.forEach((item) => {\n if (item.badge && !filters.includes(item.badge.text.toLowerCase())) {\n filters.push(item.badge.text.toLowerCase());\n }\n });\n });\n if (filters.length > 0) {\n filters.unshift(this._allKey);\n }\n return filters;\n }\n onFilterChange(key) {\n this.activeFilter.set(key);\n this._fPreviewGroupService.filterBy(key, this._allKey);\n }\n onSortByDateChange(event) {\n this.isSortByDateChecked.set(event);\n this._fPreviewGroupService.sortByDate(event);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewActionBar, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: PreviewActionBar, isStandalone: true, selector: \"div[preview-action-bar]\", ngImport: i0, template: \"@if (filters().length) {\\n <div class=\\\"filters-row\\\">\\n @for (filter of filters(); track filter) {\\n <f-radio-button [checked]=\\\"activeFilter() === filter\\\"\\n (change)=\\\"onFilterChange(filter)\\\">{{ filter | titlecase }}\\n </f-radio-button>\\n }\\n <div class=\\\"flex-space\\\"></div>\\n <f-checkbox [checked]=\\\"isSortByDateChecked()\\\" (change)=\\\"onSortByDateChange($event)\\\">Sort by Newness</f-checkbox>\\n </div>\\n}\\n\\n\\n\\n\", styles: [\".filters-row{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;padding-top:20px;gap:8px}\\n\"], dependencies: [{ kind: \"component\", type: FCheckboxComponent, selector: \"f-checkbox\", inputs: [\"id\", \"checked\"], outputs: [\"change\"] }, { kind: \"component\", type: FRadioButtonComponent, selector: \"f-radio-button\", inputs: [\"id\", \"checked\"], outputs: [\"change\"] }, { kind: \"pipe\", type: TitleCasePipe, name: \"titlecase\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: PreviewActionBar, decorators: [{\n type: Component,\n args: [{ selector: 'div[preview-action-bar]', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n FCheckboxComponent,\n FRadioButtonComponent,\n TitleCasePipe,\n ], template: \"@if (filters().length) {\\n <div class=\\\"filters-row\\\">\\n @for (filter of filters(); track filter) {\\n <f-radio-button [checked]=\\\"activeFilter() === filter\\\"\\n (change)=\\\"onFilterChange(filter)\\\">{{ filter | titlecase }}\\n </f-radio-button>\\n }\\n <div class=\\\"flex-space\\\"></div>\\n <f-checkbox [checked]=\\\"isSortByDateChecked()\\\" (change)=\\\"onSortByDateChange($event)\\\">Sort by Newness</f-checkbox>\\n </div>\\n}\\n\\n\\n\\n\", styles: [\".filters-row{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;padding-top:20px;gap:8px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy1hY3Rpb24tYmFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWFjdGlvbi1iYXIvcHJldmlldy1hY3Rpb24tYmFyLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2R5bmFtaWMtY29tcG9uZW50cy9jb21wb25lbnRzL3ByZXZpZXctZ3JvdXAvY29tcG9uZW50cy9wcmV2aWV3LWFjdGlvbi1iYXIvcHJldmlldy1hY3Rpb24tYmFyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBY2xFLE1BQU0sT0FBTyxnQkFBZ0I7SUFFVixPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRXpCLGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMzQyxxQkFBcUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUVsRCxPQUFPLEdBQUcsTUFBTSxDQUFXLEVBQUUsbURBQUMsQ0FBQztJQUMvQixZQUFZLEdBQUcsTUFBTSxDQUFTLElBQUksQ0FBQyxPQUFPLHdEQUFDLENBQUM7SUFFNUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFVLEtBQUssK0RBQUMsQ0FBQztJQUVoRCxVQUFVO1FBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLE1BQU0sT0FBTyxHQUFhLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25ELEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzNCLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDO29CQUNuRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQzlDLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hDLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRVMsY0FBYyxDQUFDLEdBQVc7UUFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxLQUFjO1FBQ3pDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO3VHQTNDVSxnQkFBZ0I7MkZBQWhCLGdCQUFnQixtRkNsQjdCLGlkQWNBLHVMRERJLGtCQUFrQix1R0FDbEIscUJBQXFCLHNHQUNyQixhQUFhOzsyRkFHSixnQkFBZ0I7a0JBWjVCLFNBQVM7K0JBQ0UseUJBQXlCLGNBR3ZCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsYUFBYTtxQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kb2N1bWVudGF0aW9uLXBhZ2UnO1xuaW1wb3J0IHsgVGl0bGVDYXNlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGQ2hlY2tib3hDb21wb25lbnQsIEZSYWRpb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2NvbW1vbic7XG5pbXBvcnQgeyBQcmV2aWV3R3JvdXBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJldmlldy1ncm91cC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGl2W3ByZXZpZXctYWN0aW9uLWJhcl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJldmlldy1hY3Rpb24tYmFyLmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vcHJldmlldy1hY3Rpb24tYmFyLnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgRkNoZWNrYm94Q29tcG9uZW50LFxuICAgIEZSYWRpb0J1dHRvbkNvbXBvbmVudCxcbiAgICBUaXRsZUNhc2VQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBQcmV2aWV3QWN0aW9uQmFyIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfYWxsS2V5ID0gJ2FsbCc7XG5cbiAgcHJpdmF0ZSBfZkVudmlyb25tZW50ID0gaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSk7XG4gIHByaXZhdGUgX2ZQcmV2aWV3R3JvdXBTZXJ2aWNlID0gaW5qZWN0KFByZXZpZXdHcm91cFNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCBmaWx0ZXJzID0gc2lnbmFsPHN0cmluZ1tdPihbXSk7XG4gIHByb3RlY3RlZCBhY3RpdmVGaWx0ZXIgPSBzaWduYWw8c3RyaW5nPih0aGlzLl9hbGxLZXkpO1xuXG4gIHByb3RlY3RlZCBpc1NvcnRCeURhdGVDaGVja2VkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZpbHRlcnMuc2V0KHRoaXMuX2NhbGN1bGF0ZUZpbHRlcnNNYXAoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UodGhpcy5fYWxsS2V5KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUZpbHRlcnNNYXAoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGZpbHRlcnM6IHN0cmluZ1tdID0gW107XG4gICAgdGhpcy5fZkVudmlyb25tZW50LmdldE5hdmlnYXRpb24oKS5mb3JFYWNoKChncm91cCkgPT4ge1xuICAgICAgZ3JvdXAuaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICBpZiAoaXRlbS5iYWRnZSAmJiAhZmlsdGVycy5pbmNsdWRlcyhpdGVtLmJhZGdlLnRleHQudG9Mb3dlckNhc2UoKSkpIHtcbiAgICAgICAgICBmaWx0ZXJzLnB1c2goaXRlbS5iYWRnZS50ZXh0LnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICBpZiAoZmlsdGVycy5sZW5ndGggPiAwKSB7XG4gICAgICBmaWx0ZXJzLnVuc2hpZnQodGhpcy5fYWxsS2V5KTtcbiAgICB9XG4gICAgcmV0dXJuIGZpbHRlcnM7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25GaWx0ZXJDaGFuZ2Uoa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUZpbHRlci5zZXQoa2V5KTtcbiAgICB0aGlzLl9mUHJldmlld0dyb3VwU2VydmljZS5maWx0ZXJCeShrZXksIHRoaXMuX2FsbEtleSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25Tb3J0QnlEYXRlQ2hhbmdlKGV2ZW50OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pc1NvcnRCeURhdGVDaGVja2VkLnNldChldmVudCk7XG4gICAgdGhpcy5fZlByZXZpZXdHcm91cFNlcnZpY2Uuc29ydEJ5RGF0ZShldmVudCk7XG4gIH1cbn1cbiIsIkBpZiAoZmlsdGVycygpLmxlbmd0aCkge1xuICA8ZGl2IGNsYXNzPVwiZmlsdGVycy1yb3dcIj5cbiAgICBAZm9yIChmaWx0ZXIgb2YgZmlsdGVycygpOyB0cmFjayBmaWx0ZXIpIHtcbiAgICAgIDxmLXJhZGlvLWJ1dHRvbiBbY2hlY2tlZF09XCJhY3RpdmVGaWx0ZXIoKSA9PT0gZmlsdGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uRmlsdGVyQ2hhbmdlKGZpbHRlcilcIj57eyBmaWx0ZXIgfCB0aXRsZWNhc2UgfX1cbiAgICAgIDwvZi1yYWRpby1idXR0b24+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LXNwYWNlXCI+PC9kaXY+XG4gICAgPGYtY2hlY2tib3ggW2NoZWNrZWRdPVwiaXNTb3J0QnlEYXRlQ2hlY2tlZCgpXCIgKGNoYW5nZSk9XCJvblNvcnRCeURhdGVDaGFuZ2UoJGV2ZW50KVwiPlNvcnQgYnkgTmV3bmVzczwvZi1jaGVja2JveD5cbiAgPC9kaXY+XG59XG5cblxuXG4iXX0=","import { ChangeDetectionStrategy, Component, computed, inject, input, } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { map } from 'rxjs';\nimport { ThemeService } from '../../../../../theme';\nimport * as i0 from \"@angular/core\";\nexport class ShowcaseItem {\n _themeService = inject(ThemeService);\n _themeChanges = toSignal(this._themeService.theme$.pipe(map(() => this._themeService.getPreferredTheme())));\n model = input.required(...(ngDevMode ? [{ debugName: \"model\" }] : []));\n src = computed(() => {\n const theme = this._themeChanges();\n const model = this.model();\n return theme === 'dark' ? (model.imageUrlDark || model.imageUrl) : model.imageUrl;\n }, ...(ngDevMode ? [{ debugName: \"src\" }] : []));\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ShowcaseItem, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: ShowcaseItem, isStandalone: true, selector: \"showcase-item\", inputs: { model: { classPropertyName: \"model\", publicName: \"model\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: \"@let data = model();\\n\\n@if (data) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"data.description\\\" [title]=\\\"data.name\\\">\\n <div class=\\\"title\\\">{{ data.name }}</div>\\n <div class=\\\"description\\\">{{ data.description }}</div>\\n <div class=\\\"links\\\">\\n @for (link of (data.links || []); track link.text) {\\n <a href=\\\"{{ link.url }}\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\">{{ link.text }}</a>\\n }\\n </div>\\n <div class=\\\"tags\\\">\\n @for (tag of (data.tags || []); track tag) {\\n <span class=\\\"f-badge tip\\\">{{ tag }}</span>\\n }\\n </div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px}:host img{display:block;margin-bottom:16px;width:100%;height:240px;border-radius:4px;object-fit:cover}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.links{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.links a{font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.links a:hover,.links a.active{color:var(--primary-1)}.tags{display:flex;flex-wrap:wrap;gap:8px}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ShowcaseItem, decorators: [{\n type: Component,\n args: [{ selector: 'showcase-item', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: \"@let data = model();\\n\\n@if (data) {\\n <img [src]=\\\"src()\\\" [alt]=\\\"data.description\\\" [title]=\\\"data.name\\\">\\n <div class=\\\"title\\\">{{ data.name }}</div>\\n <div class=\\\"description\\\">{{ data.description }}</div>\\n <div class=\\\"links\\\">\\n @for (link of (data.links || []); track link.text) {\\n <a href=\\\"{{ link.url }}\\\" target=\\\"_blank\\\" rel=\\\"noopener\\\">{{ link.text }}</a>\\n }\\n </div>\\n <div class=\\\"tags\\\">\\n @for (tag of (data.tags || []); track tag) {\\n <span class=\\\"f-badge tip\\\">{{ tag }}</span>\\n }\\n </div>\\n}\\n\\n\\n\\n\", styles: [\":host{display:block;border-radius:4px;background-color:var(--soft-background);padding:24px;width:100%;text-decoration:none!important;color:inherit!important;line-height:24px;font-size:14px}:host img{display:block;margin-bottom:16px;width:100%;height:240px;border-radius:4px;object-fit:cover}:host .title{line-height:inherit;font-weight:600;text-transform:uppercase;color:var(--primary-text);display:flex;justify-content:space-between;align-items:center}:host .description{margin:8px 0!important;line-height:inherit;color:var(--secondary-text);width:100%;word-wrap:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (min-width: 640px){:host{width:calc((100% - 32px)/2)}}.links{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.links a{font-size:14px;font-weight:500;color:var(--primary-text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.links a:hover,.links a.active{color:var(--primary-1)}.tags{display:flex;flex-wrap:wrap;gap:8px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd2Nhc2UtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaG93Y2FzZS9jb21wb25lbnRzL3Nob3djYXNlLWl0ZW0vc2hvd2Nhc2UtaXRlbS50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaG93Y2FzZS9jb21wb25lbnRzL3Nob3djYXNlLWl0ZW0vc2hvd2Nhc2UtaXRlbS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLFFBQVEsRUFDbkIsTUFBTSxFQUFFLEtBQUssR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBU3BELE1BQU0sT0FBTyxZQUFZO0lBQ04sYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUVyQyxhQUFhLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdHLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxnREFBaUIsQ0FBQztJQUVyQyxHQUFHLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNyQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLE9BQU8sS0FBSyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztJQUNwRixDQUFDLCtDQUFDLENBQUM7dUdBVlEsWUFBWTsyRkFBWixZQUFZLDRNQ2pCekIsZ2pCQW9CQTs7MkZESGEsWUFBWTtrQkFQeEIsU0FBUzsrQkFDRSxlQUFlLGNBR2IsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgY29tcHV0ZWQsXG4gIGluamVjdCwgaW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElTaG93Y2FzZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdGhlbWUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaG93Y2FzZS1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nob3djYXNlLWl0ZW0uaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9zaG93Y2FzZS1pdGVtLnNjc3MnIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTaG93Y2FzZUl0ZW0ge1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVNlcnZpY2UgPSBpbmplY3QoVGhlbWVTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZUNoYW5nZXMgPSB0b1NpZ25hbCh0aGlzLl90aGVtZVNlcnZpY2UudGhlbWUkLnBpcGUobWFwKCgpID0+IHRoaXMuX3RoZW1lU2VydmljZS5nZXRQcmVmZXJyZWRUaGVtZSgpKSkpO1xuICBwdWJsaWMgcmVhZG9ubHkgbW9kZWwgPSBpbnB1dC5yZXF1aXJlZDxJU2hvd2Nhc2VJdGVtPigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBzcmMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdGhlbWUgPSB0aGlzLl90aGVtZUNoYW5nZXMoKTtcbiAgICBjb25zdCBtb2RlbCA9IHRoaXMubW9kZWwoKTtcbiAgICByZXR1cm4gdGhlbWUgPT09ICdkYXJrJyA/IChtb2RlbC5pbWFnZVVybERhcmsgfHwgbW9kZWwuaW1hZ2VVcmwpIDogbW9kZWwuaW1hZ2VVcmw7XG4gIH0pO1xufVxuIiwiQGxldCBkYXRhID0gbW9kZWwoKTtcblxuQGlmIChkYXRhKSB7XG4gIDxpbWcgW3NyY109XCJzcmMoKVwiIFthbHRdPVwiZGF0YS5kZXNjcmlwdGlvblwiIFt0aXRsZV09XCJkYXRhLm5hbWVcIj5cbiAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgZGF0YS5uYW1lIH19PC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPnt7IGRhdGEuZGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImxpbmtzXCI+XG4gICAgQGZvciAobGluayBvZiAoZGF0YS5saW5rcyB8fCBbXSk7IHRyYWNrIGxpbmsudGV4dCkge1xuICAgICAgPGEgaHJlZj1cInt7IGxpbmsudXJsIH19XCIgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXJcIj57eyBsaW5rLnRleHQgfX08L2E+XG4gICAgfVxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInRhZ3NcIj5cbiAgICBAZm9yICh0YWcgb2YgKGRhdGEudGFncyB8fCBbXSk7IHRyYWNrIHRhZykge1xuICAgICAgPHNwYW4gY2xhc3M9XCJmLWJhZGdlIHRpcFwiPnt7IHRhZyB9fTwvc3Bhbj5cbiAgICB9XG4gIDwvZGl2PlxufVxuXG5cblxuIl19","import { InjectionToken } from '@angular/core';\nexport const SHOWCASE_DATA = new InjectionToken('SHOWCASE_DATA');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd2Nhc2UtdG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvc2hvd2Nhc2Uvc2hvd2Nhc2UtdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxjQUFjLENBQWtCLGVBQWUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVNob3djYXNlSXRlbSB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBTSE9XQ0FTRV9EQVRBID0gbmV3IEluamVjdGlvblRva2VuPElTaG93Y2FzZUl0ZW1bXT4oJ1NIT1dDQVNFX0RBVEEnKTtcblxuIl19","import { ChangeDetectionStrategy, Component, computed, inject, signal, } from '@angular/core';\nimport { ShowcaseItem } from './components';\nimport { SHOWCASE_DATA } from './showcase-token';\nimport * as i0 from \"@angular/core\";\nexport class Showcase {\n _data = signal(inject(SHOWCASE_DATA), ...(ngDevMode ? [{ debugName: \"_data\" }] : []));\n items = computed(() => {\n const items = this._data();\n const activeTag = this.activeTag();\n return activeTag ? items.filter(item => item.tags?.includes(activeTag)) : items;\n }, ...(ngDevMode ? [{ debugName: \"items\" }] : []));\n tags = computed(() => {\n return this._data().reduce((result, item) => {\n item.tags?.forEach(tag => result.add(tag));\n return result;\n }, new Set());\n }, ...(ngDevMode ? [{ debugName: \"tags\" }] : []));\n activeTag = signal(null, ...(ngDevMode ? [{ debugName: \"activeTag\" }] : []));\n tagClick(tag) {\n this.activeTag.update((x) => x === tag ? null : tag);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Showcase, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: Showcase, isStandalone: true, selector: \"showcase\", ngImport: i0, template: \"<div class=\\\"filters-panel\\\">\\n @for (tag of tags(); track tag) {\\n <span class=\\\"f-badge tip\\\" (click)=\\\"tagClick(tag)\\\" [class.info]=\\\"activeTag() === tag\\\">{{ tag }}</span>\\n }\\n</div>\\n<div class=\\\"showcase-list\\\">\\n @for (item of items(); track item.imageUrl) {\\n <showcase-item [model]=\\\"item\\\"/>\\n }\\n</div>\\n\\n\", styles: [\".filters-panel{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.filters-panel .f-badge{cursor:pointer}.showcase-list{display:flex;justify-content:flex-start;align-items:normal;flex-wrap:wrap;gap:32px;pointer-events:all;overflow:hidden}\\n\"], dependencies: [{ kind: \"component\", type: ShowcaseItem, selector: \"showcase-item\", inputs: [\"model\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Showcase, decorators: [{\n type: Component,\n args: [{ selector: 'showcase', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n ShowcaseItem,\n ], template: \"<div class=\\\"filters-panel\\\">\\n @for (tag of tags(); track tag) {\\n <span class=\\\"f-badge tip\\\" (click)=\\\"tagClick(tag)\\\" [class.info]=\\\"activeTag() === tag\\\">{{ tag }}</span>\\n }\\n</div>\\n<div class=\\\"showcase-list\\\">\\n @for (item of items(); track item.imageUrl) {\\n <showcase-item [model]=\\\"item\\\"/>\\n }\\n</div>\\n\\n\", styles: [\".filters-panel{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.filters-panel .f-badge{cursor:pointer}.showcase-list{display:flex;justify-content:flex-start;align-items:normal;flex-wrap:wrap;gap:32px;pointer-events:all;overflow:hidden}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvd2Nhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvc2hvd2Nhc2Uvc2hvd2Nhc2UudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZHluYW1pYy1jb21wb25lbnRzL2NvbXBvbmVudHMvc2hvd2Nhc2Uvc2hvd2Nhc2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQWFqRCxNQUFNLE9BQU8sUUFBUTtJQUNGLEtBQUssR0FBRyxNQUFNLENBQWtCLE1BQU0sQ0FBQyxhQUFhLENBQUMsaURBQUMsQ0FBQztJQUVyRCxLQUFLLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUN2QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDM0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2xGLENBQUMsaURBQUMsQ0FBQztJQUVnQixJQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUN0QyxPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDMUMsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDM0MsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxFQUFFLElBQUksR0FBRyxFQUFVLENBQUMsQ0FBQztJQUN4QixDQUFDLGdEQUFDLENBQUM7SUFFZ0IsU0FBUyxHQUFHLE1BQU0sQ0FBZ0IsSUFBSSxxREFBQyxDQUFDO0lBRWpELFFBQVEsQ0FBQyxHQUFrQjtRQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2RCxDQUFDO3VHQXBCVSxRQUFROzJGQUFSLFFBQVEsb0VDZnJCLDBVQVdBLDhTRENJLFlBQVk7OzJGQUdILFFBQVE7a0JBVnBCLFNBQVM7K0JBQ0UsVUFBVSxjQUdSLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxZQUFZO3FCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsLCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2hvd2Nhc2VJdGVtIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFNIT1dDQVNFX0RBVEEgfSBmcm9tICcuL3Nob3djYXNlLXRva2VuJztcbmltcG9ydCB7IElTaG93Y2FzZUl0ZW0gfSBmcm9tICcuL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Nob3djYXNlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nob3djYXNlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vc2hvd2Nhc2Uuc2NzcycgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBTaG93Y2FzZUl0ZW0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNob3djYXNle1xuICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhID0gc2lnbmFsPElTaG93Y2FzZUl0ZW1bXT4oaW5qZWN0KFNIT1dDQVNFX0RBVEEpKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLl9kYXRhKCk7XG4gICAgY29uc3QgYWN0aXZlVGFnID0gdGhpcy5hY3RpdmVUYWcoKTtcbiAgICByZXR1cm4gYWN0aXZlVGFnID8gaXRlbXMuZmlsdGVyKGl0ZW0gPT4gaXRlbS50YWdzPy5pbmNsdWRlcyhhY3RpdmVUYWcpKSA6IGl0ZW1zO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGFncyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YSgpLnJlZHVjZSgocmVzdWx0LCBpdGVtKSA9PiB7XG4gICAgICBpdGVtLnRhZ3M/LmZvckVhY2godGFnID0+IHJlc3VsdC5hZGQodGFnKSk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0sIG5ldyBTZXQ8c3RyaW5nPigpKTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdGl2ZVRhZyA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuICBwcm90ZWN0ZWQgdGFnQ2xpY2sodGFnOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVUYWcudXBkYXRlKCh4KSA9PiB4ID09PSB0YWcgPyBudWxsIDogdGFnKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZpbHRlcnMtcGFuZWxcIj5cbiAgQGZvciAodGFnIG9mIHRhZ3MoKTsgdHJhY2sgdGFnKSB7XG4gICAgPHNwYW4gY2xhc3M9XCJmLWJhZGdlIHRpcFwiIChjbGljayk9XCJ0YWdDbGljayh0YWcpXCIgW2NsYXNzLmluZm9dPVwiYWN0aXZlVGFnKCkgPT09IHRhZ1wiPnt7IHRhZyB9fTwvc3Bhbj5cbiAgfVxuPC9kaXY+XG48ZGl2IGNsYXNzPVwic2hvd2Nhc2UtbGlzdFwiPlxuICBAZm9yIChpdGVtIG9mIGl0ZW1zKCk7IHRyYWNrIGl0ZW0uaW1hZ2VVcmwpIHtcbiAgICA8c2hvd2Nhc2UtaXRlbSBbbW9kZWxdPVwiaXRlbVwiLz5cbiAgfVxuPC9kaXY+XG5cbiJdfQ==","export function provideShowcase(showcaseItems) {\n return {\n showcaseItems,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1zaG93Y2FzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvY29tcG9uZW50cy9zaG93Y2FzZS9wcm92aWRlLXNob3djYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxlQUFlLENBQUMsYUFBOEI7SUFDNUQsT0FBTztRQUNMLGFBQWE7S0FDZCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEb2N1bWVudGF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uLy4uLy4uL2RvY3VtZW50YXRpb24tcGFnZSc7XG5pbXBvcnQgeyBJU2hvd2Nhc2VJdGVtIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVNob3djYXNlKHNob3djYXNlSXRlbXM6IElTaG93Y2FzZUl0ZW1bXSk6IFBhcnRpYWw8SURvY3VtZW50YXRpb25Db25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgc2hvd2Nhc2VJdGVtcyxcbiAgfTtcbn1cblxuIl19","import { DynamicComponentsStore } from './dynamic-components.store';\nimport { PreviewGroupService } from './components';\nimport { RenderDynamicComponent, RenderExternalComponent, RenderInternalComponents } from './features';\nexport const DYNAMIC_COMPONENTS_MODULE_PROVIDERS = [\n DynamicComponentsStore,\n PreviewGroupService,\n RenderDynamicComponent,\n RenderExternalComponent,\n RenderInternalComponents,\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLXByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9keW5hbWljLWNvbXBvbmVudHMvbW9kdWxlLXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHdCQUF3QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXZHLE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHO0lBQ2pELHNCQUFzQjtJQUV0QixtQkFBbUI7SUFFbkIsc0JBQXNCO0lBRXRCLHVCQUF1QjtJQUV2Qix3QkFBd0I7Q0FDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER5bmFtaWNDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50cy5zdG9yZSc7XG5pbXBvcnQgeyBQcmV2aWV3R3JvdXBTZXJ2aWNlIH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFJlbmRlckR5bmFtaWNDb21wb25lbnQsIFJlbmRlckV4dGVybmFsQ29tcG9uZW50LCBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHMgfSBmcm9tICcuL2ZlYXR1cmVzJztcblxuZXhwb3J0IGNvbnN0IERZTkFNSUNfQ09NUE9ORU5UU19NT0RVTEVfUFJPVklERVJTID0gW1xuICBEeW5hbWljQ29tcG9uZW50c1N0b3JlLFxuXG4gIFByZXZpZXdHcm91cFNlcnZpY2UsXG5cbiAgUmVuZGVyRHluYW1pY0NvbXBvbmVudCxcblxuICBSZW5kZXJFeHRlcm5hbENvbXBvbmVudCxcblxuICBSZW5kZXJJbnRlcm5hbENvbXBvbmVudHMsXG5dO1xuIl19","export class ActivateTocByHashRequest {\n hash;\n static requestToken = Symbol('ActivateTocByHashRequest');\n constructor(hash) {\n this.hash = hash;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZhdGUtdG9jLWJ5LWhhc2gtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2FjdGl2YXRlLXRvYy1ieS1oYXNoL2FjdGl2YXRlLXRvYy1ieS1oYXNoLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLHdCQUF3QjtJQUkxQjtJQUhGLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFFaEUsWUFDUyxJQUF3QjtRQUF4QixTQUFJLEdBQUosSUFBSSxDQUFvQjtJQUVqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdCB7XG4gIHB1YmxpYyBzdGF0aWMgcmVxdWVzdFRva2VuID0gU3ltYm9sKCdBY3RpdmF0ZVRvY0J5SGFzaFJlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaGFzaDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICApIHtcbiAgfVxufVxuIl19","import { __decorate } from \"tslib\";\nimport { ActivateTocByHashRequest } from './activate-toc-by-hash-request';\nimport { inject, Injectable } from '@angular/core';\nimport { MExecution } from '../../../../../mediatr';\nimport { DocumentationStore } from '../../../../services';\nimport * as i0 from \"@angular/core\";\nlet ActivateTocByHash = class ActivateTocByHash {\n _dataProvider = inject(DocumentationStore);\n handle(payload) {\n this._dataProvider.tocData.update((data) => ({\n ...data,\n flat: data.flat.map((x) => ({\n ...x,\n isActive: x.hash === payload.hash,\n })),\n }));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ActivateTocByHash, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ActivateTocByHash });\n};\nActivateTocByHash = __decorate([\n MExecution(ActivateTocByHashRequest)\n], ActivateTocByHash);\nexport { ActivateTocByHash };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ActivateTocByHash, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZhdGUtdG9jLWJ5LWhhc2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9hY3RpdmF0ZS10b2MtYnktaGFzaC9hY3RpdmF0ZS10b2MtYnktaGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUluRCxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQUVYLGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUVyRCxNQUFNLENBQUMsT0FBaUM7UUFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLEdBQUcsSUFBSTtZQUNQLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDMUIsR0FBRyxDQUFDO2dCQUNKLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxJQUFJO2FBQ2xDLENBQUMsQ0FBQztTQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQzt1R0FaVSxpQkFBaUI7MkdBQWpCLGlCQUFpQjs7QUFBakIsaUJBQWlCO0lBRDdCLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQztHQUN4QixpQkFBaUIsQ0FhN0I7OzJGQWJZLGlCQUFpQjtrQkFGN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdCB9IGZyb20gJy4vYWN0aXZhdGUtdG9jLWJ5LWhhc2gtcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElFeGVjdXRpb24sIE1FeGVjdXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oQWN0aXZhdGVUb2NCeUhhc2hSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIEFjdGl2YXRlVG9jQnlIYXNoIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxBY3RpdmF0ZVRvY0J5SGFzaFJlcXVlc3QsIHZvaWQ+e1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFQcm92aWRlciA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpO1xuXG4gIHB1YmxpYyBoYW5kbGUocGF5bG9hZDogQWN0aXZhdGVUb2NCeUhhc2hSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5fZGF0YVByb3ZpZGVyLnRvY0RhdGEudXBkYXRlKChkYXRhKSA9PiAoe1xuICAgICAgLi4uZGF0YSxcbiAgICAgIGZsYXQ6IGRhdGEuZmxhdC5tYXAoKHgpID0+ICh7XG4gICAgICAgIC4uLngsXG4gICAgICAgIGlzQWN0aXZlOiB4Lmhhc2ggPT09IHBheWxvYWQuaGFzaCxcbiAgICAgIH0pKSxcbiAgICB9KSk7XG4gIH1cbn1cbiJdfQ==","export class CalculateTableOfContentRequest {\n hostElement;\n static requestToken = Symbol('CalculateTableOfContentRequest');\n constructor(hostElement) {\n this.hostElement = hostElement;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXRhYmxlLW9mLWNvbnRlbnQtcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2NhbGN1bGF0ZS10YWJsZS1vZi1jb250ZW50L2NhbGN1bGF0ZS10YWJsZS1vZi1jb250ZW50LXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLDhCQUE4QjtJQUl2QjtJQUhYLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFFdEUsWUFDa0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFFMUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnRSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==","export class TableOfContentData {\n flat;\n tree;\n constructor(flat, tree) {\n this.flat = flat;\n this.tree = tree;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtb2YtY29udGVudC1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvbW9kZWxzL3RhYmxlLW9mLWNvbnRlbnQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBRXBCO0lBQ0E7SUFGVCxZQUNTLElBQTJCLEVBQzNCLElBQTJCO1FBRDNCLFNBQUksR0FBSixJQUFJLENBQXVCO1FBQzNCLFNBQUksR0FBSixJQUFJLENBQXVCO0lBRXBDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUYWJsZU9mQ29udGVudEl0ZW0gfSBmcm9tICcuL2ktdGFibGUtb2YtY29udGVudC1pdGVtJztcblxuZXhwb3J0IGNsYXNzIFRhYmxlT2ZDb250ZW50RGF0YSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBmbGF0OiBJVGFibGVPZkNvbnRlbnRJdGVtW10sXG4gICAgcHVibGljIHRyZWU6IElUYWJsZU9mQ29udGVudEl0ZW1bXSxcbiAgKSB7XG4gIH1cbn1cbiJdfQ==","export class CalculateAbsoluteTopToContainerRequest {\n element;\n static requestToken = Symbol('CalculateAbsoluteTopToContainerRequest');\n constructor(element) {\n this.element = element;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXItcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2NhbGN1bGF0ZS1hYnNvbHV0ZS10b3AtdG8tY29udGFpbmVyL2NhbGN1bGF0ZS1hYnNvbHV0ZS10b3AtdG8tY29udGFpbmVyLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLHNDQUFzQztJQUl4QztJQUhGLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFFOUUsWUFDUyxPQUFvQjtRQUFwQixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBRTdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lclJlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lclJlcXVlc3QnKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gICkge1xuICB9XG59XG4iXX0=","import { __decorate } from \"tslib\";\nimport { CalculateAbsoluteTopToContainerRequest } from './calculate-absolute-top-to-container-request';\nimport { inject, Injectable } from '@angular/core';\nimport { SCROLLABLE_CONTAINER } from '../../../index';\nimport { MExecution } from '../../../../../mediatr';\nimport * as i0 from \"@angular/core\";\nlet CalculateAbsoluteTopToContainer = class CalculateAbsoluteTopToContainer {\n _scrollableContainer = inject(SCROLLABLE_CONTAINER);\n handle(request) {\n let element = request.element;\n let result = 0;\n while (element !== this._scrollableContainer.htmlElement) {\n if (!element)\n return NaN;\n result += element.offsetTop;\n element = element.offsetParent;\n }\n return result;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateAbsoluteTopToContainer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateAbsoluteTopToContainer });\n};\nCalculateAbsoluteTopToContainer = __decorate([\n MExecution(CalculateAbsoluteTopToContainerRequest)\n], CalculateAbsoluteTopToContainer);\nexport { CalculateAbsoluteTopToContainer };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateAbsoluteTopToContainer, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9jYWxjdWxhdGUtYWJzb2x1dGUtdG9wLXRvLWNvbnRhaW5lci9jYWxjdWxhdGUtYWJzb2x1dGUtdG9wLXRvLWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdkcsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUl6RCxJQUFNLCtCQUErQixHQUFyQyxNQUFNLCtCQUErQjtJQUV6QixvQkFBb0IsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUU5RCxNQUFNLENBQUMsT0FBK0M7UUFDM0QsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFFZixPQUFPLE9BQU8sS0FBSyxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLE9BQU87Z0JBQUUsT0FBTyxHQUFHLENBQUM7WUFDekIsTUFBTSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUM7WUFDNUIsT0FBTyxHQUFHLE9BQU8sQ0FBQyxZQUEyQixDQUFDO1FBQ2hELENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO3VHQWZVLCtCQUErQjsyR0FBL0IsK0JBQStCOztBQUEvQiwrQkFBK0I7SUFEM0MsVUFBVSxDQUFDLHNDQUFzQyxDQUFDO0dBQ3RDLCtCQUErQixDQWdCM0M7OzJGQWhCWSwrQkFBK0I7a0JBRjNDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXItcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNDUk9MTEFCTEVfQ09OVEFJTkVSIH0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21lZGlhdHInO1xuXG5ASW5qZWN0YWJsZSgpXG5ATUV4ZWN1dGlvbihDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdCwgbnVtYmVyPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfc2Nyb2xsYWJsZUNvbnRhaW5lciA9IGluamVjdChTQ1JPTExBQkxFX0NPTlRBSU5FUik7XG5cbiAgcHVibGljIGhhbmRsZShyZXF1ZXN0OiBDYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyUmVxdWVzdCk6IG51bWJlciB7XG4gICAgbGV0IGVsZW1lbnQgPSByZXF1ZXN0LmVsZW1lbnQ7XG4gICAgbGV0IHJlc3VsdCA9IDA7XG5cbiAgICB3aGlsZSAoZWxlbWVudCAhPT0gdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudCkge1xuICAgICAgaWYgKCFlbGVtZW50KSByZXR1cm4gTmFOO1xuICAgICAgcmVzdWx0ICs9IGVsZW1lbnQub2Zmc2V0VG9wO1xuICAgICAgZWxlbWVudCA9IGVsZW1lbnQub2Zmc2V0UGFyZW50IGFzIEhUTUxFbGVtZW50O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiJdfQ==","import { __decorate } from \"tslib\";\nimport { CalculateAbsoluteTopToContainerRequest } from '../calculate-absolute-top-to-container';\nimport { inject, Injectable } from '@angular/core';\nimport { ActivateTocByHashRequest, CalculateHashFromScrollPositionAndActivateTocRequest, SCROLLABLE_CONTAINER, } from '../../../index';\nimport { DocumentationStore } from '../../../../services';\nimport { DOCUMENT_ELEMENT, WINDOW } from '../../../../../common';\nimport { Mediatr, MExecution } from '../../../../../mediatr';\nimport * as i0 from \"@angular/core\";\nlet CalculateHashFromScrollPositionAndActivateToc = class CalculateHashFromScrollPositionAndActivateToc {\n _docElement = inject(DOCUMENT_ELEMENT);\n _window = inject(WINDOW);\n _provider = inject(DocumentationStore);\n _scrollableContainer = inject(SCROLLABLE_CONTAINER);\n _mediatr = inject(Mediatr);\n handle() {\n let result;\n const containerScrollTop = this._getContainerScrollTop();\n const elementsWithTopPosition = this._calculateElementsTopPositions();\n if (elementsWithTopPosition.length) {\n if (this._isScrollAtBottom(containerScrollTop)) {\n result = elementsWithTopPosition[elementsWithTopPosition.length - 1].hash;\n }\n else {\n result = this._findTargetHashByPosition(containerScrollTop, elementsWithTopPosition);\n }\n }\n this._mediatr.execute(new ActivateTocByHashRequest(result));\n }\n _getContainerScrollTop() {\n return this._scrollableContainer.htmlElement.scrollTop + this._getHeaderHeight();\n }\n _getHeaderHeight() {\n return parseInt(this._window\n .getComputedStyle(this._docElement)\n .getPropertyValue('--header-height'), 10);\n }\n _calculateElementsTopPositions() {\n return this._provider.tocData().flat.map((x) => {\n return {\n hash: x.hash,\n top: this._calculateAbsoluteTopToContainer(x.element),\n };\n }).filter((x) => !Number.isNaN(x.top));\n }\n _calculateAbsoluteTopToContainer(element) {\n return this._mediatr.execute(new CalculateAbsoluteTopToContainerRequest(element));\n }\n _isScrollAtBottom(containerScrollTop) {\n return Math.abs(containerScrollTop - this._getHeaderHeight() + this._scrollableContainer.htmlElement.clientHeight - this._scrollableContainer.htmlElement.scrollHeight) < 1;\n }\n _findTargetHashByPosition(containerScrollTop, elementsWithTopPosition) {\n let result = elementsWithTopPosition[0].hash;\n for (const { hash, top } of elementsWithTopPosition) {\n if (top > containerScrollTop)\n break;\n result = hash;\n }\n return result;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateHashFromScrollPositionAndActivateToc, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateHashFromScrollPositionAndActivateToc });\n};\nCalculateHashFromScrollPositionAndActivateToc = __decorate([\n MExecution(CalculateHashFromScrollPositionAndActivateTocRequest)\n], CalculateHashFromScrollPositionAndActivateToc);\nexport { CalculateHashFromScrollPositionAndActivateToc };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateHashFromScrollPositionAndActivateToc, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L2ZlYXR1cmVzL2NhbGN1bGF0ZS1oYXNoLWZyb20tc2Nyb2xsLXBvc2l0aW9uLWFuZC1hY3RpdmF0ZS10b2MvY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEcsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUNMLHdCQUF3QixFQUN4QixvREFBb0QsRUFDcEQsb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pFLE9BQU8sRUFBYyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBU2xFLElBQU0sNkNBQTZDLEdBQW5ELE1BQU0sNkNBQTZDO0lBR3ZDLFdBQVcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN2QyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLFNBQVMsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN2QyxvQkFBb0IsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNwRCxRQUFRLEdBQUcsTUFBTSxD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b250ZW50IjpbImltcG9ydCB7IENhbGN1bGF0ZUFic29sdXRlVG9wVG9Db250YWluZXJSZXF1ZXN0IH0gZnJvbSAnLi4vY2FsY3VsYXRlLWFic29sdXRlLXRvcC10by1jb250YWluZXInO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZVRvY0J5SGFzaFJlcXVlc3QsXG4gIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1JlcXVlc3QsXG4gIFNDUk9MTEFCTEVfQ09OVEFJTkVSLFxufSBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBET0NVTUVOVF9FTEVNRU5ULCBXSU5ET1cgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTWVkaWF0ciwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21lZGlhdHInO1xuXG5pbnRlcmZhY2UgSUhhc1RvcEl0ZW0ge1xuICBoYXNoOiBzdHJpbmc7XG4gIHRvcDogbnVtYmVyO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5ATUV4ZWN1dGlvbihDYWxjdWxhdGVIYXNoRnJvbVNjcm9sbFBvc2l0aW9uQW5kQWN0aXZhdGVUb2NSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1xuICBpbXBsZW1lbnRzIElFeGVjdXRpb248Q2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jUmVxdWVzdCwgbnVtYmVyPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZG9jRWxlbWVudCA9IGluamVjdChET0NVTUVOVF9FTEVNRU5UKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Byb3ZpZGVyID0gaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Njcm9sbGFibGVDb250YWluZXIgPSBpbmplY3QoU0NST0xMQUJMRV9DT05UQUlORVIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHB1YmxpYyBoYW5kbGUoKTogdm9pZCB7XG4gICAgbGV0IHJlc3VsdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IGNvbnRhaW5lclNjcm9sbFRvcCA9IHRoaXMuX2dldENvbnRhaW5lclNjcm9sbFRvcCgpO1xuXG4gICAgY29uc3QgZWxlbWVudHNXaXRoVG9wUG9zaXRpb24gPSB0aGlzLl9jYWxjdWxhdGVFbGVtZW50c1RvcFBvc2l0aW9ucygpO1xuXG4gICAgaWYgKGVsZW1lbnRzV2l0aFRvcFBvc2l0aW9uLmxlbmd0aCkge1xuICAgICAgaWYgKHRoaXMuX2lzU2Nyb2xsQXRCb3R0b20oY29udGFpbmVyU2Nyb2xsVG9wKSkge1xuICAgICAgICByZXN1bHQgPSBlbGVtZW50c1dpdGhUb3BQb3NpdGlvbltlbGVtZW50c1dpdGhUb3BQb3NpdGlvbi5sZW5ndGggLSAxXS5oYXNoO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0ID0gdGhpcy5fZmluZFRhcmdldEhhc2hCeVBvc2l0aW9uKGNvbnRhaW5lclNjcm9sbFRvcCwgZWxlbWVudHNXaXRoVG9wUG9zaXRpb24pO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUobmV3IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdChyZXN1bHQpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvbnRhaW5lclNjcm9sbFRvcCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zY3JvbGxhYmxlQ29udGFpbmVyLmh0bWxFbGVtZW50LnNjcm9sbFRvcCArIHRoaXMuX2dldEhlYWRlckhlaWdodCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0SGVhZGVySGVpZ2h0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHBhcnNlSW50KHRoaXMuX3dpbmRvd1xuICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5fZG9jRWxlbWVudClcbiAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKCctLWhlYWRlci1oZWlnaHQnKSwgMTAsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUVsZW1lbnRzVG9wUG9zaXRpb25zKCk6IElIYXNUb3BJdGVtW10ge1xuICAgIHJldHVybiB0aGlzLl9wcm92aWRlci50b2NEYXRhKCkuZmxhdC5tYXAoKHgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGhhc2g6IHguaGFzaCxcbiAgICAgICAgdG9wOiB0aGlzLl9jYWxjdWxhdGVBYnNvbHV0ZVRvcFRvQ29udGFpbmVyKHguZWxlbWVudCksXG4gICAgICB9O1xuICAgIH0pLmZpbHRlcigoeCkgPT4gIU51bWJlci5pc05hTih4LnRvcCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lcihlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShuZXcgQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lclJlcXVlc3QoZWxlbWVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNTY3JvbGxBdEJvdHRvbShjb250YWluZXJTY3JvbGxUb3A6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBNYXRoLmFicyhjb250YWluZXJTY3JvbGxUb3AgLSB0aGlzLl9nZXRIZWFkZXJIZWlnaHQoKSArIHRoaXMuX3Njcm9sbGFibGVDb250YWluZXIuaHRtbEVsZW1lbnQuY2xpZW50SGVpZ2h0IC0gdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudC5zY3JvbGxIZWlnaHQpIDwgMTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmRUYXJnZXRIYXNoQnlQb3NpdGlvbihjb250YWluZXJTY3JvbGxUb3A6IG51bWJlciwgZWxlbWVudHNXaXRoVG9wUG9zaXRpb246IElIYXNUb3BJdGVtW10pOiBzdHJpbmcge1xuICAgIGxldCByZXN1bHQ6IHN0cmluZyA9IGVsZW1lbnRzV2l0aFRvcFBvc2l0aW9uWzBdLmhhc2g7XG4gICAgZm9yIChjb25zdCB7IGhhc2gsIHRvcCB9IG9mIGVsZW1lbnRzV2l0aFRvcFBvc2l0aW9uKSB7XG4gICAgICBpZiAodG9wID4gY29udGFpbmVyU2Nyb2xsVG9wKSBicmVhaztcbiAgICAgIHJlc3VsdCA9IGhhc2g7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiJdfQ==","export class CalculateHashFromScrollPositionAndActivateTocRequest {\n static requestToken = Symbol('CalculateHashFromScrollPositionAndActivateTocRequest');\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvZmVhdHVyZXMvY2FsY3VsYXRlLWhhc2gtZnJvbS1zY3JvbGwtcG9zaXRpb24tYW5kLWFjdGl2YXRlLXRvYy9jYWxjdWxhdGUtaGFzaC1mcm9tLXNjcm9sbC1wb3NpdGlvbi1hbmQtYWN0aXZhdGUtdG9jLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLG9EQUFvRDtJQUN4RCxNQUFNLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxzREFBc0QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1JlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnQ2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jUmVxdWVzdCcpO1xufVxuIl19","import { __decorate } from \"tslib\";\nimport { CalculateTableOfContentRequest } from './calculate-table-of-content-request';\nimport { inject, Injectable } from '@angular/core';\nimport { DocumentationStore } from '../../../../services';\nimport { TableOfContentData } from '../../models';\nimport { Mediatr, MExecution } from '../../../../../mediatr';\nimport { CalculateHashFromScrollPositionAndActivateTocRequest, } from '../calculate-hash-from-scroll-position-and-activate-toc';\nimport * as i0 from \"@angular/core\";\nlet CalculateTableOfContent = class CalculateTableOfContent {\n _dataProvider = inject(DocumentationStore);\n _mediatr = inject(Mediatr);\n handle(request) {\n const flat = [];\n const tree = [];\n const stack = [];\n this._getNavigationSelectors(request.hostElement, this._dataProvider.getTableOfContent()?.range).forEach((element) => {\n const tocItem = this._createItem(element);\n this._insertItemIntoTree(tocItem, tree, stack);\n flat.push(tocItem);\n });\n this._dataProvider.tocData.set(new TableOfContentData(flat, tree));\n this._mediatr.execute(new CalculateHashFromScrollPositionAndActivateTocRequest());\n }\n _getNavigationSelectors(fMarkdownPage, tocRange) {\n if (!tocRange || tocRange.start < 1 || tocRange.end > 6) {\n tocRange = { start: 2, end: 6 };\n }\n const selectors = [];\n for (let i = tocRange.start; i <= tocRange.end; i++) {\n selectors.push(`h${i}`);\n }\n return Array.from(fMarkdownPage.querySelectorAll(selectors.join(', ')));\n }\n _createItem(element) {\n element.id = this._createNavigationId(element);\n return {\n hash: `#${CSS.escape(element.id)}`,\n title: element.innerHTML,\n element,\n children: [],\n };\n }\n _createNavigationId(element) {\n return element.innerHTML.toLowerCase().replaceAll(' ', '-');\n }\n _getLevel(element) {\n return parseInt(element.tagName.substring(1));\n }\n _insertItemIntoTree(tocItem, tree, stack) {\n while (stack.length > 0 && this._getLevel(stack[stack.length - 1].element) >= this._getLevel(tocItem.element)) {\n stack.pop();\n }\n if (stack.length === 0) {\n tree.push(tocItem);\n }\n else {\n stack[stack.length - 1].children.push(tocItem);\n }\n stack.push(tocItem);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateTableOfContent, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateTableOfContent });\n};\nCalculateTableOfContent = __decorate([\n MExecution(CalculateTableOfContentRequest)\n], CalculateTableOfContent);\nexport { CalculateTableOfContent };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: CalculateTableOfContent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLXRhYmxlLW9mLWNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9jYWxjdWxhdGUtdGFibGUtb2YtY29udGVudC9jYWxjdWxhdGUtdGFibGUtb2YtY29udGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUF1QixrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RSxPQUFPLEVBQWMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxvREFBb0QsR0FDckQsTUFBTSx5REFBeUQsQ0FBQzs7QUFJMUQsSUFBTSx1QkFBdUIsR0FBN0IsTUFBTSx1QkFBdUI7SUFFakIsYUFBYSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzNDLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFckMsTUFBTSxDQUFDLE9BQXVDO1FBQ25ELE1BQU0sSUFBSSxHQUEwQixFQUFFLENBQUM7UUFDdkMsTUFBTSxJQUFJLEdBQTBCLEVBQUUsQ0FBQztRQUN2QyxNQUFNLEtBQUssR0FBMEIsRUFBRSxDQUFDO1FBRXhDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLENB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QyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEIsQ0FBQzt1R0FoRVUsdUJBQXVCOzJHQUF2Qix1QkFBdUI7O0FBQXZCLHVCQUF1QjtJQURuQyxVQUFVLENBQUMsOEJBQThCLENBQUM7R0FDOUIsdUJBQXVCLENBaUVuQzs7MkZBakVZLHVCQUF1QjtrQkFGbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhbGN1bGF0ZVRhYmxlT2ZDb250ZW50UmVxdWVzdCB9IGZyb20gJy4vY2FsY3VsYXRlLXRhYmxlLW9mLWNvbnRlbnQtcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IElUYWJsZU9mQ29udGVudEl0ZW0sIFRhYmxlT2ZDb250ZW50RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBJRXhlY3V0aW9uLCBNZWRpYXRyLCBNRXhlY3V0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbWVkaWF0cic7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVIYXNoRnJvbVNjcm9sbFBvc2l0aW9uQW5kQWN0aXZhdGVUb2NSZXF1ZXN0LFxufSBmcm9tICcuLi9jYWxjdWxhdGUtaGFzaC1mcm9tLXNjcm9sbC1wb3NpdGlvbi1hbmQtYWN0aXZhdGUtdG9jJztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnRSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIENhbGN1bGF0ZVRhYmxlT2ZDb250ZW50IGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3QsIHZvaWQ+e1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFQcm92aWRlciA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnRSZXF1ZXN0KTogdm9pZCB7XG4gICAgY29uc3QgZmxhdDogSVRhYmxlT2ZDb250ZW50SXRlbVtdID0gW107XG4gICAgY29uc3QgdHJlZTogSVRhYmxlT2ZDb250ZW50SXRlbVtdID0gW107XG4gICAgY29uc3Qgc3RhY2s6IElUYWJsZU9mQ29udGVudEl0ZW1bXSA9IFtdO1xuXG4gICAgdGhpcy5fZ2V0TmF2aWdhdGlvblNlbGVjdG9ycyhyZXF1ZXN0Lmhvc3RFbGVtZW50LCB0aGlzLl9kYXRhUHJvdmlkZXIuZ2V0VGFibGVPZkNvbnRlbnQoKT8ucmFuZ2UpLmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgIGNvbnN0IHRvY0l0ZW0gPSB0aGlzLl9jcmVhdGVJdGVtKGVsZW1lbnQpO1xuICAgICAgdGhpcy5faW5zZXJ0SXRlbUludG9UcmVlKHRvY0l0ZW0sIHRyZWUsIHN0YWNrKTtcbiAgICAgIGZsYXQucHVzaCh0b2NJdGVtKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX2RhdGFQcm92aWRlci50b2NEYXRhLnNldChuZXcgVGFibGVPZkNvbnRlbnREYXRhKGZsYXQsIHRyZWUpKTtcbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUobmV3IENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvY1JlcXVlc3QoKSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXROYXZpZ2F0aW9uU2VsZWN0b3JzKGZNYXJrZG93blBhZ2U6IEhUTUxFbGVtZW50LCB0b2NSYW5nZT86IHtcbiAgICBzdGFydDogbnVtYmVyLFxuICAgIGVuZDogbnVtYmVyXG4gIH0pOiBIVE1MRWxlbWVudFtdIHtcbiAgICBpZiAoIXRvY1JhbmdlIHx8IHRvY1JhbmdlLnN0YXJ0IDwgMSB8fCB0b2NSYW5nZS5lbmQgPiA2KSB7XG4gICAgICB0b2NSYW5nZSA9IHsgc3RhcnQ6IDIsIGVuZDogNiB9O1xuICAgIH1cbiAgICBjb25zdCBzZWxlY3RvcnM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChsZXQgaSA9IHRvY1JhbmdlLnN0YXJ0OyBpIDw9IHRvY1JhbmdlLmVuZDsgaSsrKSB7XG4gICAgICBzZWxlY3RvcnMucHVzaChgaCR7aX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIEFycmF5LmZyb20oZk1hcmtkb3duUGFnZS5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9ycy5qb2luKCcsICcpKSk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVJdGVtKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSVRhYmxlT2ZDb250ZW50SXRlbSB7XG4gICAgZWxlbWVudC5pZCA9IHRoaXMuX2NyZWF0ZU5hdmlnYXRpb25JZChlbGVtZW50KTtcbiAgICByZXR1cm4ge1xuICAgICAgaGFzaDogYCMke0NTUy5lc2NhcGUoZWxlbWVudC5pZCl9YCxcbiAgICAgIHRpdGxlOiBlbGVtZW50LmlubmVySFRNTCxcbiAgICAgIGVsZW1lbnQsXG4gICAgICBjaGlsZHJlbjogW10sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU5hdmlnYXRpb25JZChlbGVtZW50OiBIVE1MRWxlbWVudCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGVsZW1lbnQuaW5uZXJIVE1MLnRvTG93ZXJDYXNlKCkucmVwbGFjZUFsbCgnICcsICctJyk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRMZXZlbChlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHBhcnNlSW50KGVsZW1lbnQudGFnTmFtZS5zdWJzdHJpbmcoMSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5zZXJ0SXRlbUludG9UcmVlKHRvY0l0ZW06IElUYWJsZU9mQ29udGVudEl0ZW0sIHRyZWU6IElUYWJsZU9mQ29udGVudEl0ZW1bXSwgc3RhY2s6IElUYWJsZU9mQ29udGVudEl0ZW1bXSk6IHZvaWQge1xuICAgIHdoaWxlIChzdGFjay5sZW5ndGggPiAwICYmIHRoaXMuX2dldExldmVsKHN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdLmVsZW1lbnQpID49IHRoaXMuX2dldExldmVsKHRvY0l0ZW0uZWxlbWVudCkpIHtcbiAgICAgIHN0YWNrLnBvcCgpO1xuICAgIH1cblxuICAgIGlmIChzdGFjay5sZW5ndGggPT09IDApIHtcbiAgICAgIHRyZWUucHVzaCh0b2NJdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3RhY2tbc3RhY2subGVuZ3RoIC0gMV0uY2hpbGRyZW4ucHVzaCh0b2NJdGVtKTtcbiAgICB9XG5cbiAgICBzdGFjay5wdXNoKHRvY0l0ZW0pO1xuICB9XG59XG4iXX0=","export class ScrollToElementInContainerRequest {\n hash;\n static requestToken = Symbol('ScrollToElementInContainerRequest');\n constructor(hash) {\n this.hash = hash;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyLXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC9mZWF0dXJlcy9zY3JvbGwtdG8tZWxlbWVudC1pbi1jb250YWluZXIvc2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyLXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLGlDQUFpQztJQUd6QjtJQUZaLE1BQU0sQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFFekUsWUFBbUIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3Qge1xuICBwdWJsaWMgc3RhdGljIHJlcXVlc3RUb2tlbiA9IFN5bWJvbCgnU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0Jyk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGhhc2g6IHN0cmluZykge1xuICB9XG59XG4iXX0=","import { __decorate } from \"tslib\";\nimport { ScrollToElementInContainerRequest } from './scroll-to-element-in-container-request';\nimport { inject, Injectable } from '@angular/core';\nimport { SCROLLABLE_CONTAINER } from '../../../index';\nimport { MExecution } from '../../../../../mediatr';\nimport { DOCUMENT_ELEMENT, WINDOW } from '../../../../../common';\nimport * as i0 from \"@angular/core\";\nlet ScrollToElementInContainer = class ScrollToElementInContainer {\n _scrollableContainer = inject(SCROLLABLE_CONTAINER);\n _window = inject(WINDOW);\n _docElement = inject(DOCUMENT_ELEMENT);\n handle(payload) {\n const container = this._scrollableContainer.htmlElement;\n container._ignoreProgrammatic = true;\n this._scrollableContainer.htmlElement.scrollTo({\n top: this._getScrollTo(this._getScrollToElement(payload.hash)) - this._getHeaderHeight(),\n behavior: 'smooth',\n });\n }\n _getHeaderHeight() {\n return parseInt(this._window\n .getComputedStyle(this._docElement)\n .getPropertyValue('--header-height'), 10);\n }\n _getScrollToElement(hash) {\n const element = this._scrollableContainer.htmlElement?.querySelector(hash);\n if (!element) {\n throw new Error(`Element ${hash} not found`);\n }\n return element;\n }\n _getScrollTo(element) {\n return this._isFirstElementInContainer(element) ? 0 : this._calculateScrollTo(element);\n }\n _isFirstElementInContainer(element) {\n return element.parentElement.children[0] === element;\n }\n _calculateScrollTo(element) {\n return this._getElementTop(element) - this._getContainerTop() + this._scrollableContainer.htmlElement.scrollTop;\n }\n _getElementTop(element) {\n return element.getBoundingClientRect().top;\n }\n _getContainerTop() {\n return this._scrollableContainer.htmlElement.getBoundingClientRect().top;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollToElementInContainer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollToElementInContainer });\n};\nScrollToElementInContainer = __decorate([\n MExecution(ScrollToElementInContainerRequest)\n], ScrollToElementInContainer);\nexport { ScrollToElementInContainer };\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollToElementInContainer, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvZmVhdHVyZXMvc2Nyb2xsLXRvLWVsZW1lbnQtaW4tY29udGFpbmVyL3Njcm9sbC10by1lbGVtZW50LWluLWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0YsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFJMUQsSUFBTSwwQkFBMEIsR0FBaEMsTUFBTSwwQkFBMEI7SUFFcEIsb0JBQW9CLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDcEQsT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixXQUFXLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFakQsTUFBTSxDQUFDLE9BQTBDO1FBQ3RELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUM7UUFDeEQsU0FBUyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztRQUVyQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztZQUM3QyxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3hGLFFBQVEsRUFBRSxRQUFRO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU87YUFDekIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQzthQUNsQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsQ0FDekMsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxJQUFZO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBZ0IsQ0FBQztRQUMxRixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixNQUFNLElBQUksS0FBSyxDQUFDLFdBQVksSUFBSyxZQUFZLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVPLFlBQVksQ0FBQyxPQUFvQjtRQUN2QyxPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVPLDBCQUEwQixDQUFDLE9BQW9CO1FBQ3JELE9BQU8sT0FBTyxDQUFDLGFBQWMsQ0FBQyxRQUFRLENBQUUsQ0FBQyxDQUFFLEtBQUssT0FBTyxDQUFDO0lBQzFELENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxPQUFvQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDbEgsQ0FBQztJQUVPLGNBQWMsQ0FBQyxPQUFvQjtRQUN6QyxPQUFPLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUM3QyxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUMzRSxDQUFDO3VHQWpEVSwwQkFBMEI7MkdBQTFCLDBCQUEwQjs7QUFBMUIsMEJBQTBCO0lBRHRDLFVBQVUsQ0FBQyxpQ0FBaUMsQ0FBQztHQUNqQywwQkFBMEIsQ0FrRHRDOzsyRkFsRFksMEJBQTBCO2tCQUZ0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0IH0gZnJvbSAnLi9zY3JvbGwtdG8tZWxlbWVudC1pbi1jb250YWluZXItcmVxdWVzdCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNDUk9MTEFCTEVfQ09OVEFJTkVSIH0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHsgSUV4ZWN1dGlvbiwgTUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgRE9DVU1FTlRfRUxFTUVOVCwgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29tbW9uJztcblxuQEluamVjdGFibGUoKVxuQE1FeGVjdXRpb24oU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0KVxuZXhwb3J0IGNsYXNzIFNjcm9sbFRvRWxlbWVudEluQ29udGFpbmVyIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3QsIHZvaWQ+IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9zY3JvbGxhYmxlQ29udGFpbmVyID0gaW5qZWN0KFNDUk9MTEFCTEVfQ09OVEFJTkVSKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfd2luZG93ID0gaW5qZWN0KFdJTkRPVyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2RvY0VsZW1lbnQgPSBpbmplY3QoRE9DVU1FTlRfRUxFTUVOVCk7XG5cbiAgcHVibGljIGhhbmRsZShwYXlsb2FkOiBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3QpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9zY3JvbGxhYmxlQ29udGFpbmVyLmh0bWxFbGVtZW50O1xuICAgIGNvbnRhaW5lci5faWdub3JlUHJvZ3JhbW1hdGljID0gdHJ1ZTtcblxuICAgIHRoaXMuX3Njcm9sbGFibGVDb250YWluZXIuaHRtbEVsZW1lbnQuc2Nyb2xsVG8oe1xuICAgICAgdG9wOiB0aGlzLl9nZXRTY3JvbGxUbyh0aGlzLl9nZXRTY3JvbGxUb0VsZW1lbnQocGF5bG9hZC5oYXNoKSkgLSB0aGlzLl9nZXRIZWFkZXJIZWlnaHQoKSxcbiAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEhlYWRlckhlaWdodCgpOiBudW1iZXIge1xuICAgIHJldHVybiBwYXJzZUludCh0aGlzLl93aW5kb3dcbiAgICAgIC5nZXRDb21wdXRlZFN0eWxlKHRoaXMuX2RvY0VsZW1lbnQpXG4gICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnLS1oZWFkZXItaGVpZ2h0JyksIDEwLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTY3JvbGxUb0VsZW1lbnQoaGFzaDogc3RyaW5nKTogSFRNTEVsZW1lbnQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9zY3JvbGxhYmxlQ29udGFpbmVyLmh0bWxFbGVtZW50Py5xdWVyeVNlbGVjdG9yKGhhc2gpIGFzIEhUTUxFbGVtZW50O1xuICAgIGlmICghZWxlbWVudCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBFbGVtZW50ICR7IGhhc2ggfSBub3QgZm91bmRgKTtcbiAgICB9XG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH1cblxuICBwcml2YXRlIF9nZXRTY3JvbGxUbyhlbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2lzRmlyc3RFbGVtZW50SW5Db250YWluZXIoZWxlbWVudCkgPyAwIDogdGhpcy5fY2FsY3VsYXRlU2Nyb2xsVG8oZWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF9pc0ZpcnN0RWxlbWVudEluQ29udGFpbmVyKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGVsZW1lbnQucGFyZW50RWxlbWVudCEuY2hpbGRyZW5bIDAgXSA9PT0gZWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGN1bGF0ZVNjcm9sbFRvKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RWxlbWVudFRvcChlbGVtZW50KSAtIHRoaXMuX2dldENvbnRhaW5lclRvcCgpICsgdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudC5zY3JvbGxUb3A7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFbGVtZW50VG9wKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICByZXR1cm4gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDb250YWluZXJUb3AoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lci5odG1sRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectionStrategy, Component, input, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class TableOfContentItemsComponent {\n items = input.required(...(ngDevMode ? [{ debugName: \"items\" }] : []));\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContentItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: TableOfContentItemsComponent, isStandalone: true, selector: \"ul[f-table-of-content-items]\", inputs: { items: { classPropertyName: \"items\", publicName: \"items\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: \"@for (item of items(); track item.hash) {\\n <li [class.active]=\\\"item.isActive\\\"><a class=\\\"text-ellipsis\\\" [href]=\\\"item.hash\\\">{{ item.title }}</a></li>\\n @if (item.children) {\\n <ul f-table-of-content-items [items]=\\\"item.children\\\"></ul>\\n }\\n}\\n\", styles: [\":host{list-style:none;margin:0;padding:0}:host li{overflow-wrap:break-word;color:var(--secondary-text);max-width:180px}:host li a{display:block;line-height:var(--on-page-navigation-item-height);font-size:14px;color:inherit;font-weight:400}:host li.active{color:var(--primary-text)}:host li+ul{padding:0 16px}\\n\"], dependencies: [{ kind: \"component\", type: TableOfContentItemsComponent, selector: \"ul[f-table-of-content-items]\", inputs: [\"items\"] }], changeDetection: i0.ChangeDetectionStrategy.Default });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContentItemsComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ul[f-table-of-content-items]', changeDetection: ChangeDetectionStrategy.Default, standalone: true, template: \"@for (item of items(); track item.hash) {\\n <li [class.active]=\\\"item.isActive\\\"><a class=\\\"text-ellipsis\\\" [href]=\\\"item.hash\\\">{{ item.title }}</a></li>\\n @if (item.children) {\\n <ul f-table-of-content-items [items]=\\\"item.children\\\"></ul>\\n }\\n}\\n\", styles: [\":host{list-style:none;margin:0;padding:0}:host li{overflow-wrap:break-word;color:var(--secondary-text);max-width:180px}:host li a{display:block;line-height:var(--on-page-navigation-item-height);font-size:14px;color:inherit;font-weight:400}:host li.active{color:var(--primary-text)}:host li+ul{padding:0 16px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtb2YtY29udGVudC1pdGVtcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC90YWJsZS1vZi1jb250ZW50LWl0ZW1zL3RhYmxlLW9mLWNvbnRlbnQtaXRlbXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL3RhYmxlLW9mLWNvbnRlbnQvdGFibGUtb2YtY29udGVudC1pdGVtcy90YWJsZS1vZi1jb250ZW50LWl0ZW1zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLEtBQUssR0FDakIsTUFBTSxlQUFlLENBQUM7O0FBVXZCLE1BQU0sT0FBTyw0QkFBNEI7SUFDdkIsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLGdEQUF5QixDQUFDO3VHQURyRCw0QkFBNEI7MkZBQTVCLDRCQUE0QiwyTkNiekMsa1FBTUEsZ1hET2EsNEJBQTRCOzsyRkFBNUIsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNFLDhCQUE4QixtQkFHdkIsdUJBQXVCLENBQUMsT0FBTyxjQUNwQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgaW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVRhYmxlT2ZDb250ZW50SXRlbSB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VsW2YtdGFibGUtb2YtY29udGVudC1pdGVtc10nLFxuICBzdHlsZVVybHM6IFsgJy4vdGFibGUtb2YtY29udGVudC1pdGVtcy5jb21wb25lbnQuc2NzcycgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLW9mLWNvbnRlbnQtaXRlbXMuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlT2ZDb250ZW50SXRlbXNDb21wb25lbnQge1xuICBwdWJsaWMgcmVhZG9ubHkgaXRlbXMgPSBpbnB1dC5yZXF1aXJlZDxJVGFibGVPZkNvbnRlbnRJdGVtW10+KCk7XG59XG4iLCJAZm9yIChpdGVtIG9mIGl0ZW1zKCk7IHRyYWNrIGl0ZW0uaGFzaCkge1xuICA8bGkgW2NsYXNzLmFjdGl2ZV09XCJpdGVtLmlzQWN0aXZlXCI+PGEgY2xhc3M9XCJ0ZXh0LWVsbGlwc2lzXCIgW2hyZWZdPVwiaXRlbS5oYXNoXCI+e3sgaXRlbS50aXRsZSB9fTwvYT48L2xpPlxuICBAaWYgKGl0ZW0uY2hpbGRyZW4pIHtcbiAgICA8dWwgZi10YWJsZS1vZi1jb250ZW50LWl0ZW1zIFtpdGVtc109XCJpdGVtLmNoaWxkcmVuXCI+PC91bD5cbiAgfVxufVxuIl19","import { ActivateTocByHash, CalculateAbsoluteTopToContainer, CalculateHashFromScrollPositionAndActivateToc, CalculateTableOfContent, ScrollToElementInContainer, } from './features';\nexport const TABLE_OF_CONTENT_MODULE_PROVIDERS = [\n ActivateTocByHash,\n CalculateTableOfContent,\n ScrollToElementInContainer,\n CalculateAbsoluteTopToContainer,\n CalculateHashFromScrollPositionAndActivateToc,\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLXByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L21vZHVsZS1wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQiwrQkFBK0IsRUFDL0IsNkNBQTZDLEVBQzdDLHVCQUF1QixFQUN2QiwwQkFBMEIsR0FDM0IsTUFBTSxZQUFZLENBQUM7QUFFcEIsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUc7SUFDL0MsaUJBQWlCO0lBQ2pCLHVCQUF1QjtJQUN2QiwwQkFBMEI7SUFDMUIsK0JBQStCO0lBQy9CLDZDQUE2QztDQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWN0aXZhdGVUb2NCeUhhc2gsXG4gIENhbGN1bGF0ZUFic29sdXRlVG9wVG9Db250YWluZXIsXG4gIENhbGN1bGF0ZUhhc2hGcm9tU2Nyb2xsUG9zaXRpb25BbmRBY3RpdmF0ZVRvYyxcbiAgQ2FsY3VsYXRlVGFibGVPZkNvbnRlbnQsXG4gIFNjcm9sbFRvRWxlbWVudEluQ29udGFpbmVyLFxufSBmcm9tICcuL2ZlYXR1cmVzJztcblxuZXhwb3J0IGNvbnN0IFRBQkxFX09GX0NPTlRFTlRfTU9EVUxFX1BST1ZJREVSUyA9IFtcbiAgQWN0aXZhdGVUb2NCeUhhc2gsXG4gIENhbGN1bGF0ZVRhYmxlT2ZDb250ZW50LFxuICBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lcixcbiAgQ2FsY3VsYXRlQWJzb2x1dGVUb3BUb0NvbnRhaW5lcixcbiAgQ2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jLFxuXTtcbiJdfQ==","import { ChangeDetectionStrategy, Component, computed, ElementRef, HostListener, inject, untracked, } from '@angular/core';\nimport { TableOfContentItemsComponent } from './table-of-content-items';\nimport { DocumentationStore } from '../../services';\nimport { WINDOW } from '../../../common';\nimport { Mediatr } from '../../../mediatr';\nimport { ActivateTocByHashRequest, ScrollToElementInContainerRequest } from './features';\nimport * as i0 from \"@angular/core\";\nexport class TableOfContent {\n _hostElement = inject((ElementRef)).nativeElement;\n _dataProvider = inject(DocumentationStore);\n _window = inject(WINDOW);\n _mediatr = inject(Mediatr);\n tocData = computed(() => this._dataProvider.tocData(), ...(ngDevMode ? [{ debugName: \"tocData\" }] : []));\n activeMarkerPosition = computed(() => {\n const index = this.tocData()?.flat.findIndex((x) => x.isActive) || 0;\n return untracked(() => this._getActiveMarkerPosition(index));\n }, ...(ngDevMode ? [{ debugName: \"activeMarkerPosition\" }] : []));\n title = inject(DocumentationStore).getTableOfContent().title;\n _getActiveMarkerPosition(activeIndex) {\n const itemHeight = this._getToCItemHeight(this._hostElement);\n return (activeIndex + 1) * itemHeight + itemHeight / 4;\n }\n _getToCItemHeight(element) {\n return parseInt(this._window.getComputedStyle(element).getPropertyValue('--on-page-navigation-item-height'));\n }\n _click(event) {\n const target = event.target;\n if (target.tagName === 'A') {\n event.preventDefault();\n this._scrollTo(target.getAttribute('href'));\n }\n }\n _scrollTo(hash) {\n this._mediatr.execute(new ActivateTocByHashRequest(hash));\n this._mediatr.execute(new ScrollToElementInContainerRequest(hash));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: TableOfContent, isStandalone: true, selector: \"table-of-content\", host: { listeners: { \"click\": \"_click($event)\" } }, ngImport: i0, template: \"@let data = tocData();\\n@if (data) {\\n <div class=\\\"title\\\">{{ title || 'In this article' }}</div>\\n <ul f-table-of-content-items [items]=\\\"data.tree\\\"></ul>\\n <div class=\\\"active-marker\\\" [style.top]=\\\"activeMarkerPosition() + 'px'\\\"></div>\\n}\\n\\n\", styles: [\":host{--on-page-navigation-item-height: 32px;display:none;padding-left:16px;border-left:1px solid var(--divider-color);font-size:13px;font-weight:500;position:relative}:host .title{line-height:32px;font-size:14px;font-weight:600}@media (min-width: 1280px){:host{display:block;width:var(--on-page-navigation-width);position:fixed;top:calc(var(--header-height) + 48px);right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3)}}:host .active-marker{position:absolute;top:0;left:0;width:2px;height:calc(var(--on-page-navigation-item-height) / 2);border-radius:2px;background-color:var(--primary-1);transition:top .25s cubic-bezier(0,1,.5,1),opacity .25s}\\n\"], dependencies: [{ kind: \"component\", type: TableOfContentItemsComponent, selector: \"ul[f-table-of-content-items]\", inputs: [\"items\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: TableOfContent, decorators: [{\n type: Component,\n args: [{ selector: 'table-of-content', standalone: true, imports: [TableOfContentItemsComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: \"@let data = tocData();\\n@if (data) {\\n <div class=\\\"title\\\">{{ title || 'In this article' }}</div>\\n <ul f-table-of-content-items [items]=\\\"data.tree\\\"></ul>\\n <div class=\\\"active-marker\\\" [style.top]=\\\"activeMarkerPosition() + 'px'\\\"></div>\\n}\\n\\n\", styles: [\":host{--on-page-navigation-item-height: 32px;display:none;padding-left:16px;border-left:1px solid var(--divider-color);font-size:13px;font-weight:500;position:relative}:host .title{line-height:32px;font-size:14px;font-weight:600}@media (min-width: 1280px){:host{display:block;width:var(--on-page-navigation-width);position:fixed;top:calc(var(--header-height) + 48px);right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 3)}}:host .active-marker{position:absolute;top:0;left:0;width:2px;height:calc(var(--on-page-navigation-item-height) / 2);border-radius:2px;background-color:var(--primary-1);transition:top .25s cubic-bezier(0,1,.5,1),opacity .25s}\\n\"] }]\n }], propDecorators: { _click: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtb2YtY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy90YWJsZS1vZi1jb250ZW50L3RhYmxlLW9mLWNvbnRlbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvdGFibGUtb2YtY29udGVudC90YWJsZS1vZi1jb250ZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFVekYsTUFBTSxPQUFPLGNBQWM7SUFFUixZQUFZLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzdELGFBQWEsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMzQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLFFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekIsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxtREFBQyxDQUFDO0lBRXZELG9CQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDdEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckUsT0FBTyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQyxnRUFBQyxDQUFDO0lBQ2dCLEtBQUssR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxpQkFBaUIsRUFBRyxDQUFDLEtBQUssQ0FBQztJQUV6RSx3QkFBd0IsQ0FBQyxXQUFtQjtRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdELE9BQU8sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEdBQUcsVUFBVSxHQUFHLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE9BQW9CO1FBQzVDLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsa0NBQWtDLENBQUMsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFHUyxNQUFNLENBQUMsS0FBaUI7UUFDaEMsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7UUFDM0MsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQzNCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFFLENBQUMsQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLFNBQVMsQ0FBQyxJQUFZO1FBQzVCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLGlDQUFpQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQzt1R0FwQ1UsY0FBYzsyRkFBZCxjQUFjLGdJQ3ZCM0IsNlBBT0Esa3RCRGFZLDRCQUE0Qjs7MkZBRzNCLGNBQWM7a0JBUjFCLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLElBQUksV0FDUCxDQUFDLDRCQUE0QixDQUFDLG1CQUN0Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQTJCckMsTUFBTTtzQkFEZixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgdW50cmFja2VkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRhYmxlT2ZDb250ZW50SXRlbXNDb21wb25lbnQgfSBmcm9tICcuL3RhYmxlLW9mLWNvbnRlbnQtaXRlbXMnO1xuaW1wb3J0IHsgRG9jdW1lbnRhdGlvblN0b3JlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IE1lZGlhdHIgfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdCwgU2Nyb2xsVG9FbGVtZW50SW5Db250YWluZXJSZXF1ZXN0IH0gZnJvbSAnLi9mZWF0dXJlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RhYmxlLW9mLWNvbnRlbnQnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS1vZi1jb250ZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLW9mLWNvbnRlbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtUYWJsZU9mQ29udGVudEl0ZW1zQ29tcG9uZW50XSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlT2ZDb250ZW50IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmPEhUTUxFbGVtZW50PikubmF0aXZlRWxlbWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGF0YVByb3ZpZGVyID0gaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3dpbmRvdyA9IGluamVjdChXSU5ET1cpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSB0b2NEYXRhID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fZGF0YVByb3ZpZGVyLnRvY0RhdGEoKSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdGl2ZU1hcmtlclBvc2l0aW9uID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy50b2NEYXRhKCk/LmZsYXQuZmluZEluZGV4KCh4KSA9PiB4LmlzQWN0aXZlKSB8fCAwO1xuICAgIHJldHVybiB1bnRyYWNrZWQoKCkgPT4gdGhpcy5fZ2V0QWN0aXZlTWFya2VyUG9zaXRpb24oaW5kZXgpKTtcbiAgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSB0aXRsZSA9IGluamVjdChEb2N1bWVudGF0aW9uU3RvcmUpLmdldFRhYmxlT2ZDb250ZW50KCkhLnRpdGxlO1xuXG4gIHByaXZhdGUgX2dldEFjdGl2ZU1hcmtlclBvc2l0aW9uKGFjdGl2ZUluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IGl0ZW1IZWlnaHQgPSB0aGlzLl9nZXRUb0NJdGVtSGVpZ2h0KHRoaXMuX2hvc3RFbGVtZW50KTtcbiAgICByZXR1cm4gKGFjdGl2ZUluZGV4ICsgMSkgKiBpdGVtSGVpZ2h0ICsgaXRlbUhlaWdodCAvIDQ7XG4gIH1cblxuICBwcml2YXRlIF9nZXRUb0NJdGVtSGVpZ2h0KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHtcbiAgICByZXR1cm4gcGFyc2VJbnQodGhpcy5fd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZSgnLS1vbi1wYWdlLW5hdmlnYXRpb24taXRlbS1oZWlnaHQnKSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBfY2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgaWYgKHRhcmdldC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLl9zY3JvbGxUbyh0YXJnZXQuZ2V0QXR0cmlidXRlKCdocmVmJykhKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9zY3JvbGxUbyhoYXNoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUobmV3IEFjdGl2YXRlVG9jQnlIYXNoUmVxdWVzdChoYXNoKSk7XG4gICAgdGhpcy5fbWVkaWF0ci5leGVjdXRlKG5ldyBTY3JvbGxUb0VsZW1lbnRJbkNvbnRhaW5lclJlcXVlc3QoaGFzaCkpO1xuICB9XG59XG4iLCJAbGV0IGRhdGEgPSB0b2NEYXRhKCk7XG5AaWYgKGRhdGEpIHtcbiAgPGRpdiBjbGFzcz1cInRpdGxlXCI+e3sgdGl0bGUgfHwgJ0luIHRoaXMgYXJ0aWNsZScgfX08L2Rpdj5cbiAgPHVsIGYtdGFibGUtb2YtY29udGVudC1pdGVtcyBbaXRlbXNdPVwiZGF0YS50cmVlXCI+PC91bD5cbiAgPGRpdiBjbGFzcz1cImFjdGl2ZS1tYXJrZXJcIiBbc3R5bGUudG9wXT1cImFjdGl2ZU1hcmtlclBvc2l0aW9uKCkgKyAncHgnXCI+PC9kaXY+XG59XG5cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const SCROLLABLE_CONTAINER = new InjectionToken('SCROLLABLE_CONTAINER');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1zY3JvbGxhYmxlLWNvbnRhaW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvY29tcG9uZW50cy9zY3JvbGxhYmxlLWNvbnRhaW5lci9tb2RlbHMvaS1zY3JvbGxhYmxlLWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUF1QixzQkFBc0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IFNDUk9MTEFCTEVfQ09OVEFJTkVSID0gbmV3IEluamVjdGlvblRva2VuPElTY3JvbGxhYmxlQ29udGFpbmVyPignU0NST0xMQUJMRV9DT05UQUlORVInKTtcblxuZXhwb3J0IGludGVyZmFjZSBJU2Nyb2xsYWJsZUNvbnRhaW5lciB7XG5cbiAgaHRtbEVsZW1lbnQ6IEhUTUxFbGVtZW50ICYgeyBfaWdub3JlUHJvZ3JhbW1hdGljPzogYm9vbGVhbiB9O1xufVxuXG5cbiJdfQ==","import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, forwardRef, inject, } from '@angular/core';\nimport { SCROLLABLE_CONTAINER } from './models';\nimport { debounceTime, fromEvent, startWith } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { CalculateHashFromScrollPositionAndActivateTocRequest, TABLE_OF_CONTENT_MODULE_PROVIDERS, TableOfContent, } from '../table-of-content';\nimport { Mediatr } from '../../../mediatr';\nimport { DYNAMIC_COMPONENTS_MODULE_PROVIDERS } from '../../../dynamic-components';\nimport { MarkdownService } from '../markdown-renderer';\nimport { filter } from 'rxjs/operators';\nimport { DOCUMENTATION_CONFIGURATION } from '../../domain';\nimport * as i0 from \"@angular/core\";\nexport class ScrollableContainer {\n _destroyRef = inject(DestroyRef);\n _mediatr = inject(Mediatr);\n tableOfContent = inject(DOCUMENTATION_CONFIGURATION).tableOfContent;\n htmlElement = inject((ElementRef)).nativeElement;\n ngOnInit() {\n fromEvent(this.htmlElement, 'scroll', { passive: true })\n .pipe(debounceTime(100), startWith(null), filter((event) => {\n const ignoreProgrammatic = event?.target?._ignoreProgrammatic ?? false;\n this.htmlElement._ignoreProgrammatic = false;\n return !ignoreProgrammatic;\n }), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._calculateHashAndActivate());\n }\n _calculateHashAndActivate() {\n this._mediatr.execute(new CalculateHashFromScrollPositionAndActivateTocRequest());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollableContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: ScrollableContainer, isStandalone: true, selector: \"scrollable-container\", providers: [\n {\n provide: SCROLLABLE_CONTAINER,\n useExisting: forwardRef(() => ScrollableContainer),\n },\n Mediatr,\n ...DYNAMIC_COMPONENTS_MODULE_PROVIDERS,\n ...TABLE_OF_CONTENT_MODULE_PROVIDERS,\n MarkdownService,\n ], ngImport: i0, template: \"<ng-content></ng-content>\\n@if (tableOfContent) {\\n <table-of-content />\\n}\\n\\n\\n\\n\", styles: [\":host{position:relative;width:100%;height:100%;overflow:hidden;overflow-y:auto;scrollbar-gutter:stable}\\n\"], dependencies: [{ kind: \"component\", type: TableOfContent, selector: \"table-of-content\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: ScrollableContainer, decorators: [{\n type: Component,\n args: [{ selector: 'scrollable-container', standalone: true, providers: [\n {\n provide: SCROLLABLE_CONTAINER,\n useExisting: forwardRef(() => ScrollableContainer),\n },\n Mediatr,\n ...DYNAMIC_COMPONENTS_MODULE_PROVIDERS,\n ...TABLE_OF_CONTENT_MODULE_PROVIDERS,\n MarkdownService,\n ], changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n TableOfContent,\n ], template: \"<ng-content></ng-content>\\n@if (tableOfContent) {\\n <table-of-content />\\n}\\n\\n\\n\\n\", styles: [\":host{position:relative;width:100%;height:100%;overflow:hidden;overflow-y:auto;scrollbar-gutter:stable}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsYWJsZS1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvc2Nyb2xsYWJsZS1jb250YWluZXIvc2Nyb2xsYWJsZS1jb250YWluZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvc2Nyb2xsYWJsZS1jb250YWluZXIvc2Nyb2xsYWJsZS1jb250YWluZXIuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sR0FBVyxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQXdCLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsb0RBQW9ELEVBQ3BELGlDQUFpQyxFQUNqQyxjQUFjLEdBQ2YsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBc0IzRCxNQUFNLE9BQU8sbUJBQW1CO0lBQ2IsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pCLGNBQWMsR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFFdkUsV0FBVyxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUVyRSxRQUFRO1FBQ2IsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO2FBQ3BELElBQUksQ0FDSCxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixNQUFNLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNwQixNQUFNLGtCQUFrQixHQUFHLEtBQUssRUFBRSxNQUFNLEVBQUUsbUJBQW1CLElBQUksS0FBSyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1lBQzdDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztRQUM3QixDQUFDLENBQUMsRUFDRixrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQ3JDO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLHlCQUF5QjtRQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLG9EQUFvRCxFQUFFLENBQUMsQ0FBQztJQUNwRixDQUFDO3VHQXhCVSxtQkFBbUI7MkZBQW5CLG1CQUFtQixtRUFmbkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsb0JBQW9CO2dCQUM3QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2FBQ25EO1lBQ0QsT0FBTztZQUNQLEdBQUcsbUNBQW1DO1lBQ3RDLEdBQUcsaUNBQWlDO1lBQ3BDLGVBQWU7U0FDaEIsMEJDN0JILHNGQU9BLG1LRHlCSSxjQUFjOzsyRkFHTCxtQkFBbUI7a0JBcEIvQixTQUFTOytCQUNFLHNCQUFzQixjQUdwQixJQUFJLGFBQ0w7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLG9CQUFvQjs0QkFDN0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7eUJBQ25EO3dCQUNELE9BQU87d0JBQ1AsR0FBRyxtQ0FBbUM7d0JBQ3RDLEdBQUcsaUNBQWlDO3dCQUNwQyxlQUFlO3FCQUNoQixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxjQUFjO3FCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRGVzdHJveVJlZiwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgaW5qZWN0LCBPbkluaXQsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJU2Nyb2xsYWJsZUNvbnRhaW5lciwgU0NST0xMQUJMRV9DT05UQUlORVIgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZyb21FdmVudCwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge1xuICBDYWxjdWxhdGVIYXNoRnJvbVNjcm9sbFBvc2l0aW9uQW5kQWN0aXZhdGVUb2NSZXF1ZXN0LFxuICBUQUJMRV9PRl9DT05URU5UX01PRFVMRV9QUk9WSURFUlMsXG4gIFRhYmxlT2ZDb250ZW50LFxufSBmcm9tICcuLi90YWJsZS1vZi1jb250ZW50JztcbmltcG9ydCB7IE1lZGlhdHIgfSBmcm9tICcuLi8uLi8uLi9tZWRpYXRyJztcbmltcG9ydCB7IERZTkFNSUNfQ09NUE9ORU5UU19NT0RVTEVfUFJPVklERVJTIH0gZnJvbSAnLi4vLi4vLi4vZHluYW1pYy1jb21wb25lbnRzJztcbmltcG9ydCB7IE1hcmtkb3duU2VydmljZSB9IGZyb20gJy4uL21hcmtkb3duLXJlbmRlcmVyJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTiB9IGZyb20gJy4uLy4uL2RvbWFpbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Njcm9sbGFibGUtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Njcm9sbGFibGUtY29udGFpbmVyLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY3JvbGxhYmxlLWNvbnRhaW5lci5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNDUk9MTEFCTEVfQ09OVEFJTkVSLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2Nyb2xsYWJsZUNvbnRhaW5lciksXG4gICAgfSxcbiAgICBNZWRpYXRyLFxuICAgIC4uLkRZTkFNSUNfQ09NUE9ORU5UU19NT0RVTEVfUFJPVklERVJTLFxuICAgIC4uLlRBQkxFX09GX0NPTlRFTlRfTU9EVUxFX1BST1ZJREVSUyxcbiAgICBNYXJrZG93blNlcnZpY2UsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgVGFibGVPZkNvbnRlbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNjcm9sbGFibGVDb250YWluZXIgaW1wbGVtZW50cyBPbkluaXQsIElTY3JvbGxhYmxlQ29udGFpbmVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWVkaWF0ciA9IGluamVjdChNZWRpYXRyKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRhYmxlT2ZDb250ZW50ID0gaW5qZWN0KERPQ1VNRU5UQVRJT05fQ09ORklHVVJBVElPTikudGFibGVPZkNvbnRlbnQ7XG5cbiAgcHVibGljIHJlYWRvbmx5IGh0bWxFbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KS5uYXRpdmVFbGVtZW50O1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBmcm9tRXZlbnQodGhpcy5odG1sRWxlbWVudCwgJ3Njcm9sbCcseyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgICAgZmlsdGVyKChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgaWdub3JlUHJvZ3JhbW1hdGljID0gZXZlbnQ/LnRhcmdldD8uX2lnbm9yZVByb2dyYW1tYXRpYyA/PyBmYWxzZTtcbiAgICAgICAgICB0aGlzLmh0bWxFbGVtZW50Ll9pZ25vcmVQcm9ncmFtbWF0aWMgPSBmYWxzZTtcbiAgICAgICAgICByZXR1cm4gIWlnbm9yZVByb2dyYW1tYXRpYztcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fY2FsY3VsYXRlSGFzaEFuZEFjdGl2YXRlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2FsY3VsYXRlSGFzaEFuZEFjdGl2YXRlKCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShuZXcgQ2FsY3VsYXRlSGFzaEZyb21TY3JvbGxQb3NpdGlvbkFuZEFjdGl2YXRlVG9jUmVxdWVzdCgpKTtcbiAgfVxufVxuXG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5AaWYgKHRhYmxlT2ZDb250ZW50KSB7XG4gIDx0YWJsZS1vZi1jb250ZW50IC8+XG59XG5cblxuXG4iXX0=","import { afterNextRender, ChangeDetectionStrategy, Component, effect, ElementRef, HostListener, inject, Injector, input, untracked, ViewContainerRef, } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { DynamicComponentsStore } from '../../services';\nimport { HandleNavigationLinksHandler, HandleNavigationLinksRequest } from '../../domain';\nimport { IS_BROWSER_PLATFORM, WINDOW } from '../../../common';\nimport { MarkdownFooter } from './markdown-footer';\nimport { Mediatr } from '../../../mediatr';\nimport { RenderInternalComponentsRequest } from '../../../dynamic-components';\nimport { CalculateTableOfContentRequest } from '../table-of-content';\nimport { SCROLLABLE_CONTAINER } from '../scrollable-container';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownRenderer {\n value = input.required(...(ngDevMode ? [{ debugName: \"value\" }] : []));\n _hostElement = inject(ElementRef).nativeElement;\n _router = inject(Router);\n _injector = inject(Injector);\n _isBrowser = inject(IS_BROWSER_PLATFORM);\n _window = inject(WINDOW);\n _dynamicComponents = inject(DynamicComponentsStore);\n _mediatr = inject(Mediatr);\n _viewContainerRef = inject(ViewContainerRef);\n _scrollableContainer = inject(SCROLLABLE_CONTAINER, { optional: true });\n ngOnInit() {\n this._setupValueEffect();\n }\n _setupValueEffect() {\n effect(onCleanup => {\n const html = this.value();\n if (!this._isBrowser || html == null)\n return;\n this._resetScroll();\n const ref = this._schedulePostRenderWork();\n onCleanup(() => ref.destroy());\n }, { injector: this._injector });\n }\n _resetScroll() {\n this._scrollableContainer?.htmlElement?.scrollTo({ top: 0, left: 0 });\n }\n _schedulePostRenderWork() {\n return afterNextRender(() => {\n return untracked(() => {\n this._renderDynamicComponents();\n this._recalculateToc();\n });\n }, { injector: this._injector });\n }\n _renderDynamicComponents() {\n this._mediatr.execute(new RenderInternalComponentsRequest(this._hostElement, this._viewContainerRef));\n }\n _recalculateToc() {\n this._mediatr.execute(new CalculateTableOfContentRequest(this._hostElement));\n }\n _onDocumentClick(event) {\n new HandleNavigationLinksHandler().handle(new HandleNavigationLinksRequest(event, this._window, this._router));\n }\n ngOnDestroy() {\n this._dynamicComponents.dispose();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: MarkdownRenderer, isStandalone: true, selector: \"markdown-renderer\", inputs: { value: { classPropertyName: \"value\", publicName: \"value\", isSignal: true, isRequired: true, transformFunction: null } }, host: { listeners: { \"click\": \"_onDocumentClick($event)\" }, classAttribute: \"m-render\" }, ngImport: i0, template: \"<div [innerHTML]=\\\"value()\\\"></div>\\n@if (value()) {\\n <markdown-footer />\\n}\\n\\n\", styles: [\":host{display:block;width:100%}@media (min-width: 1280px){:host{width:calc(100% - var(--on-page-navigation-width) - var(--page-padding))}}:host.empty-navigation{margin:auto;max-width:900px}\\n\"], dependencies: [{ kind: \"component\", type: MarkdownFooter, selector: \"markdown-footer\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRenderer, decorators: [{\n type: Component,\n args: [{ selector: 'markdown-renderer', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [MarkdownFooter], host: {\n class: 'm-render',\n }, template: \"<div [innerHTML]=\\\"value()\\\"></div>\\n@if (value()) {\\n <markdown-footer />\\n}\\n\\n\", styles: [\":host{display:block;width:100%}@media (min-width: 1280px){:host{width:calc(100% - var(--on-page-navigation-width) - var(--page-padding))}}:host.empty-navigation{margin:auto;max-width:900px}\\n\"] }]\n }], propDecorators: { _onDocumentClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tcmVuZGVyZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tcmVuZGVyZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcmVuZGVyZXIvbWFya2Rvd24tcmVuZGVyZXIuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBR0wsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLDRCQUE0QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQWEv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akIsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsY0FBYyxDQUFDLFFBQ25CO3dCQUNKLEtBQUssRUFBRSxVQUFVO3FCQUNsQjs4QkE0RFMsZ0JBQWdCO3NCQUR6QixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbiAgSW5qZWN0b3IsXG4gIGlucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgdW50cmFja2VkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEhhbmRsZU5hdmlnYXRpb25MaW5rc0hhbmRsZXIsIEhhbmRsZU5hdmlnYXRpb25MaW5rc1JlcXVlc3QgfSBmcm9tICcuLi8uLi9kb21haW4nO1xuaW1wb3J0IHsgSVNfQlJPV1NFUl9QTEFURk9STSwgV0lORE9XIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IE1hcmtkb3duRm9vdGVyIH0gZnJvbSAnLi9tYXJrZG93bi1mb290ZXInO1xuaW1wb3J0IHsgTWVkaWF0ciB9IGZyb20gJy4uLy4uLy4uL21lZGlhdHInO1xuaW1wb3J0IHsgUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uL2R5bmFtaWMtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3QgfSBmcm9tICcuLi90YWJsZS1vZi1jb250ZW50JztcbmltcG9ydCB7IFNDUk9MTEFCTEVfQ09OVEFJTkVSIH0gZnJvbSAnLi4vc2Nyb2xsYWJsZS1jb250YWluZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXJrZG93bi1yZW5kZXJlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXJrZG93bi1yZW5kZXJlci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFya2Rvd24tcmVuZGVyZXIuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW01hcmtkb3duRm9vdGVyXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnbS1yZW5kZXInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBNYXJrZG93blJlbmRlcmVyIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWUgPSBpbnB1dC5yZXF1aXJlZDxTYWZlSHRtbCB8IHVuZGVmaW5lZD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0Jyb3dzZXIgPSBpbmplY3QoSVNfQlJPV1NFUl9QTEFURk9STSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3dpbmRvdyA9IGluamVjdChXSU5ET1cpXG4gIHByaXZhdGUgcmVhZG9ubHkgX2R5bmFtaWNDb21wb25lbnRzID0gaW5qZWN0KER5bmFtaWNDb21wb25lbnRzU3RvcmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tZWRpYXRyID0gaW5qZWN0KE1lZGlhdHIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3Q29udGFpbmVyUmVmID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zY3JvbGxhYmxlQ29udGFpbmVyID0gaW5qZWN0KFNDUk9MTEFCTEVfQ09OVEFJTkVSLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXR1cFZhbHVlRWZmZWN0KCk7XG4gIH1cblxuICBwcml2YXRlIF9zZXR1cFZhbHVlRWZmZWN0KCk6IHZvaWQge1xuICAgIGVmZmVjdChcbiAgICAgIG9uQ2xlYW51cCA9PiB7XG4gICAgICAgIGNvbnN0IGh0bWwgPSB0aGlzLnZhbHVlKCk7XG4gICAgICAgIGlmICghdGhpcy5faXNCcm93c2VyIHx8IGh0bWwgPT0gbnVsbCkgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMuX3Jlc2V0U2Nyb2xsKCk7XG5cbiAgICAgICAgY29uc3QgcmVmID0gdGhpcy5fc2NoZWR1bGVQb3N0UmVuZGVyV29yaygpO1xuICAgICAgICBvbkNsZWFudXAoKCkgPT4gcmVmLmRlc3Ryb3koKSk7XG4gICAgICB9LFxuICAgICAgeyBpbmplY3RvcjogdGhpcy5faW5qZWN0b3IgfSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRTY3JvbGwoKTogdm9pZCB7XG4gICAgdGhpcy5fc2Nyb2xsYWJsZUNvbnRhaW5lcj8uaHRtbEVsZW1lbnQ/LnNjcm9sbFRvKHsgdG9wOiAwLCBsZWZ0OiAwIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2NoZWR1bGVQb3N0UmVuZGVyV29yaygpIHtcbiAgICByZXR1cm4gYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgIHJldHVybiB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICB0aGlzLl9yZW5kZXJEeW5hbWljQ29tcG9uZW50cygpO1xuICAgICAgICB0aGlzLl9yZWNhbGN1bGF0ZVRvYygpO1xuICAgICAgfSk7XG4gICAgfSwgeyBpbmplY3RvcjogdGhpcy5faW5qZWN0b3IgfSk7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJEeW5hbWljQ29tcG9uZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl9tZWRpYXRyLmV4ZWN1dGUoXG4gICAgICBuZXcgUmVuZGVySW50ZXJuYWxDb21wb25lbnRzUmVxdWVzdCh0aGlzLl9ob3N0RWxlbWVudCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZiksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlY2FsY3VsYXRlVG9jKCk6IHZvaWQge1xuICAgIHRoaXMuX21lZGlhdHIuZXhlY3V0ZShcbiAgICAgIG5ldyBDYWxjdWxhdGVUYWJsZU9mQ29udGVudFJlcXVlc3QodGhpcy5faG9zdEVsZW1lbnQpLFxuICAgICk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBfb25Eb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgbmV3IEhhbmRsZU5hdmlnYXRpb25MaW5rc0hhbmRsZXIoKS5oYW5kbGUoXG4gICAgICBuZXcgSGFuZGxlTmF2aWdhdGlvbkxpbmtzUmVxdWVzdChldmVudCwgdGhpcy5fd2luZG93LCB0aGlzLl9yb3V0ZXIpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZHluYW1pY0NvbXBvbmVudHMuZGlzcG9zZSgpO1xuICB9XG59XG4iLCI8ZGl2IFtpbm5lckhUTUxdPVwidmFsdWUoKVwiPjwvZGl2PlxuQGlmICh2YWx1ZSgpKSB7XG4gIDxtYXJrZG93bi1mb290ZXIgLz5cbn1cblxuIl19","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { distinctUntilChanged, map, of, startWith, switchMap } from 'rxjs';\nimport { catchError, filter } from 'rxjs/operators';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { DocumentationStore } from '../../services';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { MarkdownRenderer, MarkdownService } from '../markdown-renderer';\nimport * as i0 from \"@angular/core\";\nexport class MarkdownRouter {\n _router = inject(Router);\n _activatedRoute = inject(ActivatedRoute);\n _markdown = inject(MarkdownService);\n _dataProvider = inject(DocumentationStore);\n emptyNavigation = !this._dataProvider.getNavigation().length;\n _path$ = this._router.events.pipe(startWith(null), filter((e) => e === null || e instanceof NavigationEnd), map(() => this._activatedRoute.snapshot.url.map(u => u.path).join('/')), distinctUntilChanged());\n html = toSignal(this._path$.pipe(switchMap(path => {\n const url = this._dataProvider.getMarkdownUrl(path);\n return this._markdown.parseUrl(url).pipe(catchError(err => {\n console.error('[MarkdownRouter] parse error:', err, { path, url });\n return of(undefined); // или return EMPTY;\n }));\n })), { initialValue: undefined });\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRouter, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: MarkdownRouter, isStandalone: true, selector: \"markdown-router\", host: { attributes: { \"ngSkipHydration\": \"\" }, properties: { \"class.empty-navigation\": \"emptyNavigation\" } }, ngImport: i0, template: \"<markdown-renderer [value]=\\\"html()\\\" [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n\\n\", styles: [\":host{display:block;width:100%;padding:48px var(--page-padding) 140px}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}\\n\"], dependencies: [{ kind: \"component\", type: MarkdownRenderer, selector: \"markdown-renderer\", inputs: [\"value\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: MarkdownRouter, decorators: [{\n type: Component,\n args: [{ selector: 'markdown-router', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, host: {\n 'ngSkipHydration': '',\n '[class.empty-navigation]': 'emptyNavigation',\n }, imports: [\n MarkdownRenderer,\n ], template: \"<markdown-renderer [value]=\\\"html()\\\" [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n\\n\", styles: [\":host{display:block;width:100%;padding:48px var(--page-padding) 140px}@media (min-width: 1280px){:host{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 4)}}@media (min-width: 1280px){:host.empty-navigation{padding-right:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2);padding-left:max(var(--page-padding),(100vw - var(--layout-max-width)) / 2)}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24tcm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9jb21wb25lbnRzL21hcmtkb3duLXJvdXRlci9tYXJrZG93bi1yb3V0ZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvZG9jdW1lbnRhdGlvbi1wYWdlL2NvbXBvbmVudHMvbWFya2Rvd24tcm91dGVyL21hcmtkb3duLXJvdXRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQWdCekUsTUFBTSxPQUFPLGNBQWM7SUFDUixPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLGVBQWUsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNwQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFekMsZUFBZSxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFFL0QsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDaEQsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBNkIsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxZQUFZLGFBQWEsQ0FBQyxFQUNsRixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFDdkUsb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQztJQUVpQixJQUFJLEdBQUcsUUFBUSxDQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDZixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDdEMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsRUFBRSxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNuRSxPQUFPLEVBQUUsQ0FBdUIsU0FBUyxDQUFDLENBQUMsQ0FBQyxvQkFBb0I7UUFDbEUsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUNILEVBQ0QsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLENBQzVCLENBQUM7dUdBNUJTLGNBQWM7MkZBQWQsY0FBYyx5TEN2QjNCLDBGQUVBLHlnQkRrQkksZ0JBQWdCOzsyRkFHUCxjQUFjO2tCQWQxQixTQUFTOytCQUNFLGlCQUFpQixjQUdmLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixpQkFBaUIsRUFBRSxFQUFFO3dCQUNyQiwwQkFBMEIsRUFBRSxpQkFBaUI7cUJBQzlDLFdBQ1E7d0JBQ1AsZ0JBQWdCO3FCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgb2YsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBEb2N1bWVudGF0aW9uU3RvcmUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE1hcmtkb3duUmVuZGVyZXIsIE1hcmtkb3duU2VydmljZSB9IGZyb20gJy4uL21hcmtkb3duLXJlbmRlcmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWFya2Rvd24tcm91dGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcmtkb3duLXJvdXRlci5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFya2Rvd24tcm91dGVyLnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICAnbmdTa2lwSHlkcmF0aW9uJzogJycsXG4gICAgJ1tjbGFzcy5lbXB0eS1uYXZpZ2F0aW9uXSc6ICdlbXB0eU5hdmlnYXRpb24nLFxuICB9LFxuICBpbXBvcnRzOiBbXG4gICAgTWFya2Rvd25SZW5kZXJlcixcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTWFya2Rvd25Sb3V0ZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZhdGVkUm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9tYXJrZG93biA9IGluamVjdChNYXJrZG93blNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhUHJvdmlkZXIgPSBpbmplY3QoRG9jdW1lbnRhdGlvblN0b3JlKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZW1wdHlOYXZpZ2F0aW9uID0gIXRoaXMuX2RhdGFQcm92aWRlci5nZXROYXZpZ2F0aW9uKCkubGVuZ3RoO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3BhdGgkID0gdGhpcy5fcm91dGVyLmV2ZW50cy5waXBlKFxuICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICBmaWx0ZXIoKGUpOiBlIGlzIE5hdmlnYXRpb25FbmQgfCBudWxsID0+IGUgPT09IG51bGwgfHwgZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxuICAgIG1hcCgoKSA9PiB0aGlzLl9hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC51cmwubWFwKHUgPT4gdS5wYXRoKS5qb2luKCcvJykpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGh0bWwgPSB0b1NpZ25hbDxTYWZlSHRtbCB8IHVuZGVmaW5lZD4oXG4gICAgdGhpcy5fcGF0aCQucGlwZShcbiAgICAgIHN3aXRjaE1hcChwYXRoID0+IHtcbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy5fZGF0YVByb3ZpZGVyLmdldE1hcmtkb3duVXJsKHBhdGgpO1xuICAgICAgICByZXR1cm4gdGhpcy5fbWFya2Rvd24ucGFyc2VVcmwodXJsKS5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1tNYXJrZG93blJvdXRlcl0gcGFyc2UgZXJyb3I6JywgZXJyLCB7IHBhdGgsIHVybCB9KTtcbiAgICAgICAgICAgIHJldHVybiBvZjxTYWZlSHRtbCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTsgLy8g0LjQu9C4IHJldHVybiBFTVBUWTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICksXG4gICAgeyBpbml0aWFsVmFsdWU6IHVuZGVmaW5lZCB9LFxuICApO1xufVxuXG4iLCI8bWFya2Rvd24tcmVuZGVyZXIgW3ZhbHVlXT1cImh0bWwoKVwiIFtjbGFzcy5lbXB0eS1uYXZpZ2F0aW9uXT1cImVtcHR5TmF2aWdhdGlvblwiLz5cblxuIl19","import { ChangeDetectionStrategy, Component, DestroyRef, inject, signal, } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { F_PREVIEW_NAVIGATION_PROVIDER, HeaderComponent, MEDIA_LINKS_PROVIDER, NavigationPanelComponent, ScrollableContainer, TOGGLE_NAVIGATION_COMPONENT, } from './components';\nimport { DocumentationStore } from './services';\nimport { HEADER_CONFIGURATION_PROVIDER, IS_BROWSER_PLATFORM, PopoverService, ThemeService, } from '../common';\nimport { FMetaService } from './analytics';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { GTagService } from '../analytics';\nimport { EXTERNAL_COMPONENT_PROVIDER, SHOWCASE_DATA } from '../dynamic-components';\nimport * as i0 from \"@angular/core\";\nexport class Documentation {\n isNavigationVisible = signal(false, ...(ngDevMode ? [{ debugName: \"isNavigationVisible\" }] : []));\n popover = inject(PopoverService).message;\n _metaService = inject(FMetaService);\n _destroyRef = inject(DestroyRef);\n _gTagService = inject(GTagService, { optional: true });\n _themeService = inject(ThemeService, { optional: true });\n emptyNavigation = !inject(DocumentationStore).getNavigation().length;\n isBrowser = inject(IS_BROWSER_PLATFORM);\n ngOnInit() {\n if (!this.isBrowser) {\n return;\n }\n this._themeService?.initialize();\n this._gTagService?.initialize();\n this._metaService.changes().pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe();\n }\n onToggleNavigation(value) {\n this.isNavigationVisible.set(value);\n }\n ngOnDestroy() {\n this._metaService.dispose();\n // Cleanup logic if needed\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: Documentation, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: Documentation, isStandalone: true, selector: \"documentation\", providers: [\n DocumentationStore,\n FMetaService,\n {\n provide: F_PREVIEW_NAVIGATION_PROVIDER,\n useExisting: DocumentationStore,\n },\n {\n provide: MEDIA_LINKS_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getMediaLinks(),\n },\n {\n provide: HEADER_CONFIGURATION_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getHeader(),\n },\n {\n provide: TOGGLE_NAVIGATION_COMPONENT,\n useExisting: Documentation,\n },\n {\n provide: EXTERNAL_COMPONENT_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getComponents(),\n },\n {\n provide: SHOWCASE_DATA,\n deps: [DocumentationStore],\n useFactory: (store) => store.getShowcaseItems(),\n },\n ], ngImport: i0, template: \"@if (!emptyNavigation) {\\n <f-navigation-panel [class.visible]=\\\"isNavigationVisible()\\\"/>\\n <div class=\\\"f-backdrop\\\" [class.visible]=\\\"isNavigationVisible()\\\" (click)=\\\"onToggleNavigation(false)\\\"></div>\\n}\\n\\n<scrollable-container>\\n <f-header [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n <router-outlet/>\\n</scrollable-container>\\n\\n@if (popover()) {\\n <div class=\\\"popover\\\">{{ popover() }}</div>\\n}\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:flex-start;height:100%;gap:5px}.f-backdrop{position:fixed;inset:0;opacity:0;z-index:var(--z-index-backdrop);background:var(--backdrop-color);transition:opacity .2s ease-in-out;pointer-events:none}.f-backdrop.visible{opacity:1;pointer-events:all}@media (min-width: 960px){.f-backdrop{position:unset}}.popover{position:fixed;min-width:120px;bottom:50%;left:50%;text-align:center;transform:translate(-50%,-50%);background-color:var(--code-view-copy-button-hover-background);border:1px solid var(--code-view-copy-button-border-color);box-shadow:var(--shadow-3);color:var(--primary-text);font-size:14px;padding:4px 8px;border-radius:4px;z-index:var(--z-index-popover);opacity:1}\\n\"], dependencies: [{ kind: \"component\", type: NavigationPanelComponent, selector: \"f-navigation-panel\" }, { kind: \"component\", type: ScrollableContainer, selector: \"scrollable-container\" }, { kind: \"directive\", type: RouterOutlet, selector: \"router-outlet\", inputs: [\"name\", \"routerOutletData\"], outputs: [\"activate\", \"deactivate\", \"attach\", \"detach\"], exportAs: [\"outlet\"] }, { kind: \"component\", type: HeaderComponent, selector: \"f-header\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)]] });\n}\ni0.ɵɵngDeclareClassMetadataAsync({ minVersion: \"18.0.0\", version: \"20.1.8\", ngImport: i0, type: Documentation, resolveDeferredDeps: () => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)], resolveMetadata: CookiePopupComponent => ({ decorators: [{\n type: Component,\n args: [{ selector: 'documentation', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n DocumentationStore,\n FMetaService,\n {\n provide: F_PREVIEW_NAVIGATION_PROVIDER,\n useExisting: DocumentationStore,\n },\n {\n provide: MEDIA_LINKS_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getMediaLinks(),\n },\n {\n provide: HEADER_CONFIGURATION_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getHeader(),\n },\n {\n provide: TOGGLE_NAVIGATION_COMPONENT,\n useExisting: Documentation,\n },\n {\n provide: EXTERNAL_COMPONENT_PROVIDER,\n deps: [DocumentationStore],\n useFactory: (store) => store.getComponents(),\n },\n {\n provide: SHOWCASE_DATA,\n deps: [DocumentationStore],\n useFactory: (store) => store.getShowcaseItems(),\n },\n ], imports: [\n NavigationPanelComponent,\n ScrollableContainer,\n RouterOutlet,\n HeaderComponent,\n CookiePopupComponent,\n ], template: \"@if (!emptyNavigation) {\\n <f-navigation-panel [class.visible]=\\\"isNavigationVisible()\\\"/>\\n <div class=\\\"f-backdrop\\\" [class.visible]=\\\"isNavigationVisible()\\\" (click)=\\\"onToggleNavigation(false)\\\"></div>\\n}\\n\\n<scrollable-container>\\n <f-header [class.empty-navigation]=\\\"emptyNavigation\\\"/>\\n <router-outlet/>\\n</scrollable-container>\\n\\n@if (popover()) {\\n <div class=\\\"popover\\\">{{ popover() }}</div>\\n}\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;justify-content:flex-start;align-items:flex-start;height:100%;gap:5px}.f-backdrop{position:fixed;inset:0;opacity:0;z-index:var(--z-index-backdrop);background:var(--backdrop-color);transition:opacity .2s ease-in-out;pointer-events:none}.f-backdrop.visible{opacity:1;pointer-events:all}@media (min-width: 960px){.f-backdrop{position:unset}}.popover{position:fixed;min-width:120px;bottom:50%;left:50%;text-align:center;transform:translate(-50%,-50%);background-color:var(--code-view-copy-button-hover-background);border:1px solid var(--code-view-copy-button-border-color);box-shadow:var(--shadow-3);color:var(--primary-text);font-size:14px;padding:4px 8px;border-radius:4px;z-index:var(--z-index-popover);opacity:1}\\n\"] }]\n }], ctorParameters: null, propDecorators: null }) });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9jdW1lbnRhdGlvbi50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9kb2N1bWVudGF0aW9uLXBhZ2UvZG9jdW1lbnRhdGlvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBR04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLGVBQWUsRUFDYSxvQkFBb0IsRUFDaEQsd0JBQXdCLEVBQ3hCLG1CQUFtQixFQUNuQiwyQkFBMkIsR0FDNUIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2hELE9BQU8sRUFDTCw2QkFBNkIsRUFBRSxtQkFBbUIsRUFDbEQsY0FBYyxFQUNkLFlBQVksR0FDYixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQWdEbkYsTUFBTSxPQUFPLGFBQWE7SUFDTCxtQkFBbUIsR0FBRyxNQUFNLENBQVUsS0FBSywrREFBQyxDQUFDO0lBQzdDLE9BQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDO0lB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S0FBSyxDQUFDLGFBQWEsRUFBRTs2QkFDakU7NEJBQ0Q7Z0NBQ0UsT0FBTyxFQUFFLDZCQUE2QjtnQ0FDdEMsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0NBQzFCLFVBQVUsRUFBRSxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUU7NkJBQzdEOzRCQUNEO2dDQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0NBQ3BDLFdBQVcsZUFBZTs2QkFDM0I7NEJBQ0Q7Z0NBQ0UsT0FBTyxFQUFFLDJCQUEyQjtnQ0FDcEMsSUFBSSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0NBQzFCLFVBQVUsRUFBRSxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7NkJBQ2pFOzRCQUNEO2dDQUNFLE9BQU8sRUFBRSxhQUFhO2dDQUN0QixJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQ0FDMUIsVUFBVSxFQUFFLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFOzZCQUNwRTt5QkFDRixXQUNROzRCQUNQLHdCQUF3Qjs0QkFDeEIsbUJBQW1COzRCQUNuQixZQUFZOzRCQUNaLGVBQWU7NEJBQ2Ysb0JBQW9CO3lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIERlc3Ryb3lSZWYsXG4gIGluamVjdCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgRl9QUkVWSUVXX05BVklHQVRJT05fUFJPVklERVIsXG4gIEhlYWRlckNvbXBvbmVudCxcbiAgSVRvZ2dsZU5hdmlnYXRpb25Db21wb25lbnQsIE1FRElBX0xJTktTX1BST1ZJREVSLFxuICBOYXZpZ2F0aW9uUGFuZWxDb21wb25lbnQsXG4gIFNjcm9sbGFibGVDb250YWluZXIsXG4gIFRPR0dMRV9OQVZJR0FUSU9OX0NPTVBPTkVOVCxcbn0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IERvY3VtZW50YXRpb25TdG9yZSB9IGZyb20gJy4vc2VydmljZXMnO1xuaW1wb3J0IHtcbiAgSEVBREVSX0NPTkZJR1VSQVRJT05fUFJPVklERVIsIElTX0JST1dTRVJfUExBVEZPUk0sXG4gIFBvcG92ZXJTZXJ2aWNlLFxuICBUaGVtZVNlcnZpY2UsXG59IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBGTWV0YVNlcnZpY2UgfSBmcm9tICcuL2FuYWx5dGljcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDb29raWVQb3B1cENvbXBvbmVudCB9IGZyb20gJy4uL2FuYWx5dGljcy9jb29raWUtcG9wdXAvY29va2llLXBvcHVwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHVGFnU2VydmljZSB9IGZyb20gJy4uL2FuYWx5dGljcyc7XG5pbXBvcnQgeyBFWFRFUk5BTF9DT01QT05FTlRfUFJPVklERVIsIFNIT1dDQVNFX0RBVEEgfSBmcm9tICcuLi9keW5hbWljLWNvbXBvbmVudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkb2N1bWVudGF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RvY3VtZW50YXRpb24uaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RvY3VtZW50YXRpb24uc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRG9jdW1lbnRhdGlvblN0b3JlLFxuICAgIEZNZXRhU2VydmljZSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBGX1BSRVZJRVdfTkFWSUdBVElPTl9QUk9WSURFUixcbiAgICAgIHVzZUV4aXN0aW5nOiBEb2N1bWVudGF0aW9uU3RvcmUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBNRURJQV9MSU5LU19QUk9WSURFUixcbiAgICAgIGRlcHM6IFtEb2N1bWVudGF0aW9uU3RvcmVdLFxuICAgICAgdXNlRmFjdG9yeTogKHN0b3JlOiBEb2N1bWVudGF0aW9uU3RvcmUpID0+IHN0b3JlLmdldE1lZGlhTGlua3MoKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEhFQURFUl9DT05GSUdVUkFUSU9OX1BST1ZJREVSLFxuICAgICAgZGVwczogW0RvY3VtZW50YXRpb25TdG9yZV0sXG4gICAgICB1c2VGYWN0b3J5OiAoc3RvcmU6IERvY3VtZW50YXRpb25TdG9yZSkgPT4gc3RvcmUuZ2V0SGVhZGVyKCksXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBUT0dHTEVfTkFWSUdBVElPTl9DT01QT05FTlQsXG4gICAgICB1c2VFeGlzdGluZzogRG9jdW1lbnRhdGlvbixcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVYVEVSTkFMX0NPTVBPTkVOVF9QUk9WSURFUixcbiAgICAgIGRlcHM6IFtEb2N1bWVudGF0aW9uU3RvcmVdLFxuICAgICAgdXNlRmFjdG9yeTogKHN0b3JlOiBEb2N1bWVudGF0aW9uU3RvcmUpID0+IHN0b3JlLmdldENvbXBvbmVudHMoKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNIT1dDQVNFX0RBVEEsXG4gICAgICBkZXBzOiBbRG9jdW1lbnRhdGlvblN0b3JlXSxcbiAgICAgIHVzZUZhY3Rvcnk6IChzdG9yZTogRG9jdW1lbnRhdGlvblN0b3JlKSA9PiBzdG9yZS5nZXRTaG93Y2FzZUl0ZW1zKCksXG4gICAgfSxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIE5hdmlnYXRpb25QYW5lbENvbXBvbmVudCxcbiAgICBTY3JvbGxhYmxlQ29udGFpbmVyLFxuICAgIFJvdXRlck91dGxldCxcbiAgICBIZWFkZXJDb21wb25lbnQsXG4gICAgQ29va2llUG9wdXBDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERvY3VtZW50YXRpb24gaW1wbGVtZW50cyBJVG9nZ2xlTmF2aWdhdGlvbkNvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNOYXZpZ2F0aW9uVmlzaWJsZSA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBwb3BvdmVyID0gaW5qZWN0KFBvcG92ZXJTZXJ2aWNlKS5tZXNzYWdlO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX21ldGFTZXJ2aWNlID0gaW5qZWN0KEZNZXRhU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2dUYWdTZXJ2aWNlID0gaW5qZWN0KEdUYWdTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVNlcnZpY2UgPSBpbmplY3QoVGhlbWVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBlbXB0eU5hdmlnYXRpb24gPSAhaW5qZWN0KERvY3VtZW50YXRpb25TdG9yZSkuZ2V0TmF2aWdhdGlvbigpLmxlbmd0aDtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNCcm93c2VyID0gaW5qZWN0KElTX0JST1dTRVJfUExBVEZPUk0pO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuaXNCcm93c2VyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3RoZW1lU2VydmljZT8uaW5pdGlhbGl6ZSgpO1xuICAgIHRoaXMuX2dUYWdTZXJ2aWNlPy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy5fbWV0YVNlcnZpY2UuY2hhbmdlcygpLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG9uVG9nZ2xlTmF2aWdhdGlvbih2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuaXNOYXZpZ2F0aW9uVmlzaWJsZS5zZXQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX21ldGFTZXJ2aWNlLmRpc3Bvc2UoKTtcbiAgICAvLyBDbGVhbnVwIGxvZ2ljIGlmIG5lZWRlZFxuICB9XG59XG4iLCJAaWYgKCFlbXB0eU5hdmlnYXRpb24pIHtcbiAgPGYtbmF2aWdhdGlvbi1wYW5lbCBbY2xhc3MudmlzaWJsZV09XCJpc05hdmlnYXRpb25WaXNpYmxlKClcIi8+XG4gIDxkaXYgY2xhc3M9XCJmLWJhY2tkcm9wXCIgW2NsYXNzLnZpc2libGVdPVwiaXNOYXZpZ2F0aW9uVmlzaWJsZSgpXCIgKGNsaWNrKT1cIm9uVG9nZ2xlTmF2aWdhdGlvbihmYWxzZSlcIj48L2Rpdj5cbn1cblxuPHNjcm9sbGFibGUtY29udGFpbmVyPlxuICA8Zi1oZWFkZXIgW2NsYXNzLmVtcHR5LW5hdmlnYXRpb25dPVwiZW1wdHlOYXZpZ2F0aW9uXCIvPlxuICA8cm91dGVyLW91dGxldC8+XG48L3Njcm9sbGFibGUtY29udGFpbmVyPlxuXG5AaWYgKHBvcG92ZXIoKSkge1xuICA8ZGl2IGNsYXNzPVwicG9wb3ZlclwiPnt7IHBvcG92ZXIoKSB9fTwvZGl2PlxufVxuQGRlZmVyICh3aGVuIGlzQnJvd3Nlcikge1xuICA8Y29va2llLXBvcHVwLz5cbn1cbiJdfQ==","export const DOCUMENTATION_ROUTES = [\n {\n path: '',\n loadComponent: () => import('./index').then(m => m.Documentation),\n children: [\n {\n path: '**',\n loadComponent: () => import('./components/markdown-router').then(m => m.MarkdownRouter),\n },\n ],\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2RvY3VtZW50YXRpb24tcGFnZS9yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVc7SUFDMUM7UUFDRSxJQUFJLEVBQUUsRUFBRTtRQUNSLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUNqRSxRQUFRLEVBQUU7WUFDUjtnQkFDRSxJQUFJLEVBQUUsSUFBSTtnQkFDVixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDhCQUE4QixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQzthQUN4RjtTQUNGO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuZXhwb3J0IGNvbnN0IERPQ1VNRU5UQVRJT05fUk9VVEVTOiBSb3V0ZXMgPSBbXG4gIHtcbiAgICBwYXRoOiAnJyxcbiAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vaW5kZXgnKS50aGVuKG0gPT4gbS5Eb2N1bWVudGF0aW9uKSxcbiAgICBjaGlsZHJlbjogW1xuICAgICAge1xuICAgICAgICBwYXRoOiAnKionLFxuICAgICAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vY29tcG9uZW50cy9tYXJrZG93bi1yb3V0ZXInKS50aGVuKG0gPT4gbS5NYXJrZG93blJvdXRlciksXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5dO1xuIl19","export function provideBackground(background) {\n return {\n background,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1iYWNrZ3JvdW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1iYWNrZ3JvdW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxVQUFxQjtJQUNyRCxPQUFPO1FBQ0wsVUFBVTtLQUNYLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhvbWVQYWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktaG9tZS1wYWdlLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUJhY2tncm91bmQoYmFja2dyb3VuZDogVHlwZTxhbnk+KTogUGFydGlhbDxJSG9tZVBhZ2VDb25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgYmFja2dyb3VuZCxcbiAgfTtcbn1cbiJdfQ==","export function provideHero(hero) {\n return {\n hero,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1oZXJvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1oZXJvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBbUI7SUFDN0MsT0FBTztRQUNMLElBQUk7S0FDTCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIb21lUGFnZUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWhvbWUtcGFnZS1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIZXJvKGhlcm86IElIb21lUGFnZUhlcm8pOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBoZXJvLFxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElIb21lUGFnZUhlcm8ge1xuICBoZWFkbGluZT86IHN0cmluZztcbiAgdGFnbGluZTE/OiBzdHJpbmc7XG4gIHRhZ2xpbmUyPzogc3RyaW5nO1xuICBzdWJEZXNjcmlwdGlvbj86IHN0cmluZztcbn1cbiJdfQ==","export function provideHomeButtons(buttons) {\n return {\n buttons,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLWJ1dHRvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaG9tZS1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhvbWUtYnV0dG9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsa0JBQWtCLENBQUMsT0FBd0I7SUFDekQsT0FBTztRQUNMLE9BQU87S0FDUixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElIb21lUGFnZUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9pLWhvbWUtcGFnZS1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVIb21lQnV0dG9ucyhidXR0b25zOiBJSG9tZVBhZ2VMaW5rW10pOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBidXR0b25zLFxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElIb21lUGFnZUxpbmsge1xuXG4gIHByaW1hcnk/OiBib29sZWFuO1xuXG4gIHJvdXRlckxpbms/OiBzdHJpbmc7XG5cbiAgaHJlZj86IHN0cmluZztcblxuICB0ZXh0OiBzdHJpbmc7XG5cbiAgaWNvbj86IHN0cmluZztcbn1cbiJdfQ==","export function provideHomeFeatures(features) {\n return {\n features,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLWZlYXR1cmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9kb21haW4vY29uZmlndXJhdGlvbi1wcm92aWRlcnMvcHJvdmlkZS1ob21lLWZlYXR1cmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxRQUE0QjtJQUM5RCxPQUFPO1FBQ0wsUUFBUTtLQUNULENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUhvbWVQYWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktaG9tZS1wYWdlLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUhvbWVGZWF0dXJlcyhmZWF0dXJlczogSUhvbWVQYWdlRmVhdHVyZVtdKTogUGFydGlhbDxJSG9tZVBhZ2VDb25maWd1cmF0aW9uPiB7XG4gIHJldHVybiB7XG4gICAgZmVhdHVyZXMsXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhvbWVQYWdlRmVhdHVyZSB7XG5cbiAgaGVhZGxpbmU6IHN0cmluZztcblxuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xufVxuIl19","export function provideHomeFooter(footer) {\n return {\n footer,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLWZvb3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtaG9tZS1mb290ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE1BQXVCO0lBQ3ZELE9BQU87UUFDTCxNQUFNO0tBQ1AsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJSG9tZVBhZ2VDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vaS1ob21lLXBhZ2UtY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlSG9tZUZvb3Rlcihmb290ZXI6IElIb21lUGFnZUZvb3Rlcik6IFBhcnRpYWw8SUhvbWVQYWdlQ29uZmlndXJhdGlvbj4ge1xuICByZXR1cm4ge1xuICAgIGZvb3RlcixcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSG9tZVBhZ2VGb290ZXIge1xuXG4gIHRleHQ6IHN0cmluZztcbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport function provideHomePage(configuration) {\n const merged = Object.assign({}, ...configuration.providers);\n return [{\n provide: HOME_PAGE_CONFIGURATION, useValue: merged,\n }];\n}\nexport const HOME_PAGE_CONFIGURATION = new InjectionToken('HOME_PAGE_CONFIGURATION');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1ob21lLXBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaG9tZS1wYWdlL2RvbWFpbi9jb25maWd1cmF0aW9uLXByb3ZpZGVycy9wcm92aWRlLWhvbWUtcGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sVUFBVSxlQUFlLENBQUMsYUFBZ0M7SUFDOUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0QsT0FBTyxDQUFDO1lBQ04sT0FBTyxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxNQUFNO1NBQ25ELENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FBeUIseUJBQXlCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJSG9tZVBhZ2VDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vaS1ob21lLXBhZ2UtY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlSG9tZVBhZ2UoY29uZmlndXJhdGlvbjogSVByb3ZpZGVySW5zdGFuY2UpIHtcbiAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbih7fSwgLi4uY29uZmlndXJhdGlvbi5wcm92aWRlcnMpO1xuICByZXR1cm4gW3tcbiAgICBwcm92aWRlOiBIT01FX1BBR0VfQ09ORklHVVJBVElPTiwgdXNlVmFsdWU6IG1lcmdlZCxcbiAgfV07XG59XG5cbmV4cG9ydCBjb25zdCBIT01FX1BBR0VfQ09ORklHVVJBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJSG9tZVBhZ2VDb25maWd1cmF0aW9uPignSE9NRV9QQUdFX0NPTkZJR1VSQVRJT04nKTtcblxuaW50ZXJmYWNlIElQcm92aWRlckluc3RhbmNlIHtcbiAgcHJvdmlkZXJzOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+W107XG59XG4iXX0=","export function provideImage(image) {\n return {\n image,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1pbWFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvZG9tYWluL2NvbmZpZ3VyYXRpb24tcHJvdmlkZXJzL3Byb3ZpZGUtaW1hZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLFlBQVksQ0FBQyxLQUFnQjtJQUMzQyxPQUFPO1FBQ0wsS0FBSztLQUNOLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUhvbWVQYWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2ktaG9tZS1wYWdlLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZUltYWdlKGltYWdlOiBUeXBlPGFueT4pOiBQYXJ0aWFsPElIb21lUGFnZUNvbmZpZ3VyYXRpb24+IHtcbiAgcmV0dXJuIHtcbiAgICBpbWFnZSxcbiAgfTtcbn1cbiJdfQ==","import { inject, Injectable } from '@angular/core';\nimport { HOME_PAGE_CONFIGURATION, } from '../domain';\nimport * as i0 from \"@angular/core\";\nexport class HomeStore {\n _configuration = inject(HOME_PAGE_CONFIGURATION);\n getLogo() {\n return this._configuration.logo;\n }\n getTitle() {\n return this._configuration.title;\n }\n getHero() {\n return this._configuration.hero;\n }\n getButtons() {\n return this._configuration.buttons || [];\n }\n getFeatures() {\n return this._configuration.features || [];\n }\n getMemberships() {\n return [];\n }\n getFooter() {\n return this._configuration.footer;\n }\n getBackgroundComponent() {\n return this._configuration.background;\n }\n getImageComponent() {\n return this._configuration.image;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeStore });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeStore, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2Uvc2VydmljZXMvaG9tZS5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsdUJBQXVCLEdBTXhCLE1BQU0sV0FBVyxDQUFDOztBQUduQixNQUFNLE9BQU8sU0FBUztJQUNILGNBQWMsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUUzRCxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVNLE9BQU87UUFDWixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVNLGNBQWM7UUFDbkIsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRU0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDcEMsQ0FBQztJQUVNLHNCQUFzQjtRQUMzQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDO0lBQ3hDLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztJQUNuQyxDQUFDO3VHQXJDVSxTQUFTOzJHQUFULFNBQVM7OzJGQUFULFNBQVM7a0JBRHJCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEhPTUVfUEFHRV9DT05GSUdVUkFUSU9OLFxuICBJSG9tZVBhZ2VGZWF0dXJlLFxuICBJSG9tZVBhZ2VGb290ZXIsXG4gIElIb21lUGFnZUhlcm8sXG4gIElIb21lUGFnZUxpbmssXG4gIElIb21lUGFnZU1lbWJlcnNoaXAsXG59IGZyb20gJy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIb21lU3RvcmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jb25maWd1cmF0aW9uID0gaW5qZWN0KEhPTUVfUEFHRV9DT05GSUdVUkFUSU9OKTtcblxuICBwdWJsaWMgZ2V0TG9nbygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmxvZ287XG4gIH1cblxuICBwdWJsaWMgZ2V0VGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi50aXRsZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRIZXJvKCk6IElIb21lUGFnZUhlcm8ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmhlcm87XG4gIH1cblxuICBwdWJsaWMgZ2V0QnV0dG9ucygpOiBJSG9tZVBhZ2VMaW5rW10ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmJ1dHRvbnMgfHwgW107XG4gIH1cblxuICBwdWJsaWMgZ2V0RmVhdHVyZXMoKTogSUhvbWVQYWdlRmVhdHVyZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5mZWF0dXJlcyB8fCBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNZW1iZXJzaGlwcygpOiBJSG9tZVBhZ2VNZW1iZXJzaGlwW10ge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGb290ZXIoKTogSUhvbWVQYWdlRm9vdGVyIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5mb290ZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0QmFja2dyb3VuZENvbXBvbmVudCgpOiBUeXBlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uLmJhY2tncm91bmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0SW1hZ2VDb21wb25lbnQoKTogVHlwZTxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlndXJhdGlvbi5pbWFnZTtcbiAgfVxufVxuIl19","import { Component, inject } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageButtonsRowComponent {\n viewModel = inject(HomeStore).getButtons();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageButtonsRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: FHomePageButtonsRowComponent, isStandalone: true, selector: \"f-home-page-buttons-row\", host: { properties: { \"class.display-none\": \"!viewModel.length\" } }, ngImport: i0, template: \"@for (button of viewModel; track button.text) {\\n @if (button.routerLink) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" routerLink=\\\"{{ button.routerLink }}\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n } @else if(button.href) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" href=\\\"{{ button.href }}\\\" target=\\\"_blank\\\" rel=\\\"noopener noreferrer\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n }\\n}\\n\\n\", styles: [\":host{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:fit-content;margin:0 auto;padding:32px 10px 0}@media (min-width: 960px){:host{margin:0;padding:32px 0 0;justify-content:flex-start}}.f-button{display:flex;align-items:center;gap:6px}\\n\"], dependencies: [{ kind: \"directive\", type: RouterLink, selector: \"[routerLink]\", inputs: [\"target\", \"queryParams\", \"fragment\", \"queryParamsHandling\", \"state\", \"info\", \"relativeTo\", \"preserveFragment\", \"skipLocationChange\", \"replaceUrl\", \"routerLink\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageButtonsRowComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-buttons-row', standalone: true, imports: [\n RouterLink,\n ], host: {\n '[class.display-none]': '!viewModel.length',\n }, template: \"@for (button of viewModel; track button.text) {\\n @if (button.routerLink) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" routerLink=\\\"{{ button.routerLink }}\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n } @else if(button.href) {\\n <a class=\\\"f-button\\\" [class.primary]=\\\"button.primary\\\" href=\\\"{{ button.href }}\\\" target=\\\"_blank\\\" rel=\\\"noopener noreferrer\\\">\\n @if (button.icon) {\\n <span class=\\\"f-icon {{ button.icon }}\\\"></span>\\n }\\n {{ button.text }}\\n </a>\\n }\\n}\\n\\n\", styles: [\":host{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:fit-content;margin:0 auto;padding:32px 10px 0}@media (min-width: 960px){:host{margin:0;padding:32px 0 0;justify-content:flex-start}}.f-button{display:flex;align-items:center;gap:6px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9jb21wb25lbnRzL2YtaG9tZS1wYWdlLWJ1dHRvbnMtcm93L2YtaG9tZS1wYWdlLWJ1dHRvbnMtcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1idXR0b25zLXJvdy9mLWhvbWUtcGFnZS1idXR0b25zLXJvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQWMzQyxNQUFNLE9BQU8sNEJBQTRCO0lBQzdCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7dUdBRDFDLDRCQUE0QjsyRkFBNUIsNEJBQTRCLHdKQ2hCekMsdW1CQWtCQSwwVERSSSxVQUFVOzsyRkFNRCw0QkFBNEI7a0JBWnhDLFNBQVM7K0JBQ0UseUJBQXlCLGNBR3ZCLElBQUksV0FDUDt3QkFDUCxVQUFVO3FCQUNYLFFBQ0s7d0JBQ0osc0JBQXNCLEVBQUUsbUJBQW1CO3FCQUM1QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyTGluayxcbiAgXSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZGlzcGxheS1ub25lXSc6ICchdmlld01vZGVsLmxlbmd0aCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEZIb21lUGFnZUJ1dHRvbnNSb3dDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0QnV0dG9ucygpO1xufVxuIiwiQGZvciAoYnV0dG9uIG9mIHZpZXdNb2RlbDsgdHJhY2sgYnV0dG9uLnRleHQpIHtcbiAgQGlmIChidXR0b24ucm91dGVyTGluaykge1xuICAgIDxhIGNsYXNzPVwiZi1idXR0b25cIiBbY2xhc3MucHJpbWFyeV09XCJidXR0b24ucHJpbWFyeVwiIHJvdXRlckxpbms9XCJ7eyBidXR0b24ucm91dGVyTGluayB9fVwiPlxuICAgICAgQGlmIChidXR0b24uaWNvbikge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImYtaWNvbiB7eyBidXR0b24uaWNvbiB9fVwiPjwvc3Bhbj5cbiAgICAgIH1cbiAgICAgIHt7IGJ1dHRvbi50ZXh0IH19XG4gICAgPC9hPlxuICB9IEBlbHNlIGlmKGJ1dHRvbi5ocmVmKSB7XG4gICAgPGEgY2xhc3M9XCJmLWJ1dHRvblwiIFtjbGFzcy5wcmltYXJ5XT1cImJ1dHRvbi5wcmltYXJ5XCIgaHJlZj1cInt7IGJ1dHRvbi5ocmVmIH19XCIgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiPlxuICAgICAgQGlmIChidXR0b24uaWNvbikge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImYtaWNvbiB7eyBidXR0b24uaWNvbiB9fVwiPjwvc3Bhbj5cbiAgICAgIH1cbiAgICAgIHt7IGJ1dHRvbi50ZXh0IH19XG4gICAgPC9hPlxuICB9XG59XG5cbiJdfQ==","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageFeaturesComponent {\n viewModel = inject(HomeStore).getFeatures();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFeaturesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: FHomePageFeaturesComponent, isStandalone: true, selector: \"f-home-page-features\", host: { properties: { \"class.display-none\": \"!viewModel.length\" } }, ngImport: i0, template: \"<div class=\\\"feature-list\\\">\\n @for (feature of viewModel; track feature.headline) {\\n <div class=\\\"feature\\\">\\n <h2>{{ feature.headline }}</h2>\\n <p>{{ feature.description }}</p>\\n </div>\\n }\\n</div>\\n\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .feature-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .feature{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;pointer-events:all}:host .feature h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .feature p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}@media (min-width: 640px){:host{padding:0 48px}:host .feature{width:calc(50% - 12px)}}@media (min-width: 960px){:host{padding:0 64px}:host .feature{width:calc(25% - 12px)}}\\n\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFeaturesComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-features', standalone: true, host: {\n '[class.display-none]': '!viewModel.length',\n }, template: \"<div class=\\\"feature-list\\\">\\n @for (feature of viewModel; track feature.headline) {\\n <div class=\\\"feature\\\">\\n <h2>{{ feature.headline }}</h2>\\n <p>{{ feature.description }}</p>\\n </div>\\n }\\n</div>\\n\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .feature-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .feature{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;pointer-events:all}:host .feature h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .feature p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}@media (min-width: 640px){:host{padding:0 48px}:host .feature{width:calc(50% - 12px)}}@media (min-width: 960px){:host{padding:0 64px}:host .feature{width:calc(25% - 12px)}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtZmVhdHVyZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9jb21wb25lbnRzL2YtaG9tZS1wYWdlLWZlYXR1cmVzL2YtaG9tZS1wYWdlLWZlYXR1cmVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1mZWF0dXJlcy9mLWhvbWUtcGFnZS1mZWF0dXJlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBVzNDLE1BQU0sT0FBTywwQkFBMEI7SUFDM0IsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQzt1R0FEM0MsMEJBQTBCOzJGQUExQiwwQkFBMEIscUpDWnZDLGdPQVNBOzsyRkRHYSwwQkFBMEI7a0JBVHRDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBR3BCLElBQUksUUFDVjt3QkFDSixzQkFBc0IsRUFBRSxtQkFBbUI7cUJBQzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1ob21lLXBhZ2UtZmVhdHVyZXMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1ob21lLXBhZ2UtZmVhdHVyZXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtZmVhdHVyZXMuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5kaXNwbGF5LW5vbmVdJzogJyF2aWV3TW9kZWwubGVuZ3RoJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgRkhvbWVQYWdlRmVhdHVyZXNDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0RmVhdHVyZXMoKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJmZWF0dXJlLWxpc3RcIj5cbiAgQGZvciAoZmVhdHVyZSBvZiB2aWV3TW9kZWw7IHRyYWNrIGZlYXR1cmUuaGVhZGxpbmUpIHtcbiAgICA8ZGl2IGNsYXNzPVwiZmVhdHVyZVwiPlxuICAgICAgPGgyPnt7IGZlYXR1cmUuaGVhZGxpbmUgfX08L2gyPlxuICAgICAgPHA+e3sgZmVhdHVyZS5kZXNjcmlwdGlvbiB9fTwvcD5cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG5cbiJdfQ==","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageFooterComponent {\n viewModel = inject(HomeStore).getFooter();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FHomePageFooterComponent, isStandalone: true, selector: \"footer[f-home-page-footer]\", ngImport: i0, template: \"<div class=\\\"content\\\">\\n <div class=\\\"flex-space\\\"></div>\\n <div>\\n <div class=\\\"item\\\">Created with Foblex <a href=\\\"https://m-render.foblex.com/\\\" target=\\\"_blank\\\">MRender</a></div>\\n <div class=\\\"item\\\">{{ viewModel.text }}</div>\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .content{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .item{line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);text-align:right}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}\\n\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageFooterComponent, decorators: [{\n type: Component,\n args: [{ selector: 'footer[f-home-page-footer]', standalone: true, template: \"<div class=\\\"content\\\">\\n <div class=\\\"flex-space\\\"></div>\\n <div>\\n <div class=\\\"item\\\">Created with Foblex <a href=\\\"https://m-render.foblex.com/\\\" target=\\\"_blank\\\">MRender</a></div>\\n <div class=\\\"item\\\">{{ viewModel.text }}</div>\\n </div>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .content{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .item{line-height:20px;font-size:12px;font-weight:500;color:var(--secondary-text);text-align:right}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1mb290ZXIvZi1ob21lLXBhZ2UtZm9vdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1mb290ZXIvZi1ob21lLXBhZ2UtZm9vdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFRM0MsTUFBTSxPQUFPLHdCQUF3QjtJQUN6QixTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO3VHQUR6Qyx3QkFBd0I7MkZBQXhCLHdCQUF3QixzRkNUckMsMFFBUUE7OzJGRENhLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSw0QkFBNEIsY0FHMUIsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIb21lU3RvcmUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvb3RlcltmLWhvbWUtcGFnZS1mb290ZXJdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtaG9tZS1wYWdlLWZvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mLWhvbWUtcGFnZS1mb290ZXIuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBGSG9tZVBhZ2VGb290ZXJDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0Rm9vdGVyKCk7XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleC1zcGFjZVwiPjwvZGl2PlxuICA8ZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpdGVtXCI+Q3JlYXRlZCB3aXRoIEZvYmxleCA8YSBocmVmPVwiaHR0cHM6Ly9tLXJlbmRlci5mb2JsZXguY29tL1wiIHRhcmdldD1cIl9ibGFua1wiPk1SZW5kZXI8L2E+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIml0ZW1cIj57eyB2aWV3TW9kZWwudGV4dCB9fTwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport { ThemeButtonComponent } from '../../../theme';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageHeaderComponent {\n logo = inject(HomeStore).getLogo();\n title = inject(HomeStore).getTitle();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FHomePageHeaderComponent, isStandalone: true, selector: \"header[f-home-page-header]\", ngImport: i0, template: \"<div class=\\\"content\\\">\\n <a class=\\\"logo-link\\\" href=\\\"\\\" aria-label=\\\"Home\\\">\\n <img [src]=\\\"logo\\\" class=\\\"logo\\\" alt=\\\"{{ title }} Logo\\\" width=\\\"24\\\" height=\\\"24\\\"/>\\n <span class=\\\"title\\\">{{ title }}</span>\\n </a>\\n\\n <div class=\\\"flex-space\\\"></div>\\n <button theme-button aria-label=\\\"Change theme\\\"></button>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .logo-link{display:flex;align-items:center;text-decoration:none}:host .content{display:flex;justify-content:flex-start;align-items:center;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .logo{margin-right:8px}:host .title{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;font-size:16px;font-weight:600;color:var(--primary-text)}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}\\n\"], dependencies: [{ kind: \"component\", type: ThemeButtonComponent, selector: \"button[theme-button]\" }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeaderComponent, decorators: [{\n type: Component,\n args: [{ selector: 'header[f-home-page-header]', standalone: true, imports: [\n ThemeButtonComponent,\n ], template: \"<div class=\\\"content\\\">\\n <a class=\\\"logo-link\\\" href=\\\"\\\" aria-label=\\\"Home\\\">\\n <img [src]=\\\"logo\\\" class=\\\"logo\\\" alt=\\\"{{ title }} Logo\\\" width=\\\"24\\\" height=\\\"24\\\"/>\\n <span class=\\\"title\\\">{{ title }}</span>\\n </a>\\n\\n <div class=\\\"flex-space\\\"></div>\\n <button theme-button aria-label=\\\"Change theme\\\"></button>\\n</div>\\n\\n\", styles: [\":host{position:relative;z-index:5;padding:0 24px}:host .logo-link{display:flex;align-items:center;text-decoration:none}:host .content{display:flex;justify-content:flex-start;align-items:center;width:100%;height:64px;max-width:1376px;margin:0 auto}:host .logo{margin-right:8px}:host .title{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;font-size:16px;font-weight:600;color:var(--primary-text)}@media (min-width: 640px){:host{padding:0 48px}}@media (min-width: 960px){:host{padding:0 64px}}.divider{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--divider-color);content:\\\"\\\"}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1oZWFkZXIvZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1oZWFkZXIvZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFXdEQsTUFBTSxPQUFPLHdCQUF3QjtJQUN6QixJQUFJLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25DLEtBQUssR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7dUdBRnBDLHdCQUF3QjsyRkFBeEIsd0JBQXdCLHNGQ2JyQyxzVkFVQSx3ckJEQUksb0JBQW9COzsyRkFHWCx3QkFBd0I7a0JBVHBDLFNBQVM7K0JBQ0UsNEJBQTRCLGNBRzFCLElBQUksV0FDUDt3QkFDUCxvQkFBb0I7cUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFRoZW1lQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vdGhlbWUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZWFkZXJbZi1ob21lLXBhZ2UtaGVhZGVyXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWhvbWUtcGFnZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtaGVhZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFRoZW1lQnV0dG9uQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGSG9tZVBhZ2VIZWFkZXJDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgbG9nbyA9IGluamVjdChIb21lU3RvcmUpLmdldExvZ28oKTtcbiAgcHJvdGVjdGVkIHRpdGxlID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0VGl0bGUoKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gIDxhIGNsYXNzPVwibG9nby1saW5rXCIgaHJlZj1cIlwiIGFyaWEtbGFiZWw9XCJIb21lXCI+XG4gICAgPGltZyBbc3JjXT1cImxvZ29cIiBjbGFzcz1cImxvZ29cIiBhbHQ9XCJ7eyB0aXRsZSB9fSBMb2dvXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIvPlxuICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIj57eyB0aXRsZSB9fTwvc3Bhbj5cbiAgPC9hPlxuXG4gIDxkaXYgY2xhc3M9XCJmbGV4LXNwYWNlXCI+PC9kaXY+XG4gIDxidXR0b24gdGhlbWUtYnV0dG9uIGFyaWEtbGFiZWw9XCJDaGFuZ2UgdGhlbWVcIj48L2J1dHRvbj5cbjwvZGl2PlxuXG4iXX0=","import { Component, inject } from '@angular/core';\nimport { FHomePageButtonsRowComponent } from '../f-home-page-buttons-row';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageHeroComponent {\n viewModel = inject(HomeStore).getHero();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeroComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.8\", type: FHomePageHeroComponent, isStandalone: true, selector: \"f-home-page-hero\", ngImport: i0, template: \"<h1>{{ viewModel.headline }}</h1>\\n<p class=\\\"powered\\\">{{ viewModel.tagline1 }}</p>\\n<p class=\\\"powered\\\">{{ viewModel.tagline2 }}</p>\\n<p class=\\\"second-description\\\">{{ viewModel.subDescription }}</p>\\n<f-home-page-buttons-row></f-home-page-buttons-row>\\n\", styles: [\":host{display:block;width:100%;padding:0 10px}@media (min-width: 640px){:host{padding:0;width:100%}}@media (min-width: 960px){:host{width:50%}}.powered,h1{letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;width:fit-content;margin:0 auto;text-align:center;white-space:pre-wrap;pointer-events:all}@media (min-width: 640px){.powered,h1{line-height:56px;font-size:48px}}@media (min-width: 960px){.powered,h1{line-height:64px;font-size:56px;margin:0;text-align:left}}h1{background:-webkit-linear-gradient(120deg,#bd34fe 30%,#41d1ff);-webkit-background-clip:text;background-clip:text;color:transparent}.second-description{line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--secondary-text);margin:0 auto;width:fit-content;pointer-events:all;text-align:center;padding:8px 16px 0}@media (min-width: 640px){.second-description{padding-top:12px;line-height:32px;font-size:20px}}@media (min-width: 960px){.second-description{line-height:36px;font-size:24px;margin:0;text-align:left;padding:8px 0 0}}\\n\"], dependencies: [{ kind: \"component\", type: FHomePageButtonsRowComponent, selector: \"f-home-page-buttons-row\" }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageHeroComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-hero', standalone: true, imports: [\n FHomePageButtonsRowComponent,\n ], template: \"<h1>{{ viewModel.headline }}</h1>\\n<p class=\\\"powered\\\">{{ viewModel.tagline1 }}</p>\\n<p class=\\\"powered\\\">{{ viewModel.tagline2 }}</p>\\n<p class=\\\"second-description\\\">{{ viewModel.subDescription }}</p>\\n<f-home-page-buttons-row></f-home-page-buttons-row>\\n\", styles: [\":host{display:block;width:100%;padding:0 10px}@media (min-width: 640px){:host{padding:0;width:100%}}@media (min-width: 960px){:host{width:50%}}.powered,h1{letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;width:fit-content;margin:0 auto;text-align:center;white-space:pre-wrap;pointer-events:all}@media (min-width: 640px){.powered,h1{line-height:56px;font-size:48px}}@media (min-width: 960px){.powered,h1{line-height:64px;font-size:56px;margin:0;text-align:left}}h1{background:-webkit-linear-gradient(120deg,#bd34fe 30%,#41d1ff);-webkit-background-clip:text;background-clip:text;color:transparent}.second-description{line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--secondary-text);margin:0 auto;width:fit-content;pointer-events:all;text-align:center;padding:8px 16px 0}@media (min-width: 640px){.second-description{padding-top:12px;line-height:32px;font-size:20px}}@media (min-width: 960px){.second-description{line-height:36px;font-size:24px;margin:0;text-align:left;padding:8px 0 0}}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtaGVyby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL20tcmVuZGVyL3NyYy9saWIvaG9tZS1wYWdlL2NvbXBvbmVudHMvZi1ob21lLXBhZ2UtaGVyby9mLWhvbWUtcGFnZS1oZXJvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1oZXJvL2YtaG9tZS1wYWdlLWhlcm8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVczQyxNQUFNLE9BQU8sc0JBQXNCO0lBRXZCLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7dUdBRnZDLHNCQUFzQjsyRkFBdEIsc0JBQXNCLDRFQ2JuQyxvUUFLQSx3a0NES0ksNEJBQTRCOzsyRkFHbkIsc0JBQXNCO2tCQVRsQyxTQUFTOytCQUNFLGtCQUFrQixjQUdoQixJQUFJLFdBQ1A7d0JBQ1AsNEJBQTRCO3FCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGSG9tZVBhZ2VCdXR0b25zUm93Q29tcG9uZW50IH0gZnJvbSAnLi4vZi1ob21lLXBhZ2UtYnV0dG9ucy1yb3cnO1xuaW1wb3J0IHsgSG9tZVN0b3JlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmLWhvbWUtcGFnZS1oZXJvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2YtaG9tZS1wYWdlLWhlcm8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtaGVyby5jb21wb25lbnQuc2NzcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGSG9tZVBhZ2VCdXR0b25zUm93Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGSG9tZVBhZ2VIZXJvQ29tcG9uZW50IHtcblxuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0SGVybygpO1xufVxuIiwiPGgxPnt7IHZpZXdNb2RlbC5oZWFkbGluZSB9fTwvaDE+XG48cCBjbGFzcz1cInBvd2VyZWRcIj57eyB2aWV3TW9kZWwudGFnbGluZTEgfX08L3A+XG48cCBjbGFzcz1cInBvd2VyZWRcIj57eyB2aWV3TW9kZWwudGFnbGluZTIgfX08L3A+XG48cCBjbGFzcz1cInNlY29uZC1kZXNjcmlwdGlvblwiPnt7IHZpZXdNb2RlbC5zdWJEZXNjcmlwdGlvbiB9fTwvcD5cbjxmLWhvbWUtcGFnZS1idXR0b25zLXJvdz48L2YtaG9tZS1wYWdlLWJ1dHRvbnMtcm93PlxuIl19","import { Component, inject } from '@angular/core';\nimport { HomeStore } from '../../services';\nimport * as i0 from \"@angular/core\";\nexport class FHomePageMembershipsComponent {\n viewModel = inject(HomeStore).getMemberships();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageMembershipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: FHomePageMembershipsComponent, isStandalone: true, selector: \"f-home-page-memberships\", host: { properties: { \"class.display-none\": \"!viewModel.length\" } }, ngImport: i0, template: \"<div class=\\\"membership-list\\\">\\n @for (membership of viewModel; track membership.id) {\\n <div class=\\\"membership\\\">\\n <h2>{{ membership.name }}</h2>\\n <p>{{ membership.description }}</p>\\n <div class=\\\"benefit-list\\\">\\n @for (benefit of membership.benefits; track benefit) {\\n <p class=\\\"benefit\\\">\\u2705 {{ benefit }}</p>\\n }\\n </div>\\n <a class=\\\"f-button\\\" [href]=\\\"membership.buttonRef\\\">{{ membership.buttonText }}</a>\\n </div>\\n }\\n</div>\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .membership-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .membership{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;position:relative;pointer-events:all}:host .membership h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .membership p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}:host .membership .price{color:var(--primary-text);font-size:1.2rem;font-weight:700;padding-top:16px}:host .membership .price span{font-weight:600;color:var(--primary-color)}:host .membership .benefit-list{display:flex;flex-direction:column;padding:16px 0}@media (min-width: 640px){:host{padding:0 48px}:host .membership{width:calc(50% - 12px);min-width:unset}}@media (min-width: 960px){:host{padding:0 64px}:host .membership{width:calc(25% - 12px);min-width:300px}}.ribbon{position:absolute;top:-10px;right:-10px;color:var(--button-primary-text);background-color:var(--button-primary-bg);padding:4px 8px;font-size:.8rem;border-radius:2px}\\n\"] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: FHomePageMembershipsComponent, decorators: [{\n type: Component,\n args: [{ selector: 'f-home-page-memberships', standalone: true, host: {\n '[class.display-none]': '!viewModel.length',\n }, template: \"<div class=\\\"membership-list\\\">\\n @for (membership of viewModel; track membership.id) {\\n <div class=\\\"membership\\\">\\n <h2>{{ membership.name }}</h2>\\n <p>{{ membership.description }}</p>\\n <div class=\\\"benefit-list\\\">\\n @for (benefit of membership.benefits; track benefit) {\\n <p class=\\\"benefit\\\">\\u2705 {{ benefit }}</p>\\n }\\n </div>\\n <a class=\\\"f-button\\\" [href]=\\\"membership.buttonRef\\\">{{ membership.buttonText }}</a>\\n </div>\\n }\\n</div>\\n\", styles: [\":host{margin-top:64px;margin-bottom:64px;width:100%;display:block;padding:0 24px}:host .membership-list{margin:0 auto;display:flex;flex-wrap:wrap;gap:16px;max-width:1248px;pointer-events:none}:host .membership{width:100%;border-radius:4px;background-color:var(--soft-background);display:flex;flex-direction:column;padding:24px;position:relative;pointer-events:all}:host .membership h2{margin:0;line-height:24px;font-size:16px;font-weight:600}:host .membership p{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--secondary-text)}:host .membership .price{color:var(--primary-text);font-size:1.2rem;font-weight:700;padding-top:16px}:host .membership .price span{font-weight:600;color:var(--primary-color)}:host .membership .benefit-list{display:flex;flex-direction:column;padding:16px 0}@media (min-width: 640px){:host{padding:0 48px}:host .membership{width:calc(50% - 12px);min-width:unset}}@media (min-width: 960px){:host{padding:0 64px}:host .membership{width:calc(25% - 12px);min-width:300px}}.ribbon{position:absolute;top:-10px;right:-10px;color:var(--button-primary-text);background-color:var(--button-primary-bg);padding:4px 8px;font-size:.8rem;border-radius:2px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9jb21wb25lbnRzL2YtaG9tZS1wYWdlLW1lbWJlcnNoaXBzL2YtaG9tZS1wYWdlLW1lbWJlcnNoaXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvY29tcG9uZW50cy9mLWhvbWUtcGFnZS1tZW1iZXJzaGlwcy9mLWhvbWUtcGFnZS1tZW1iZXJzaGlwcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBVzNDLE1BQU0sT0FBTyw2QkFBNkI7SUFDOUIsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQzt1R0FEOUMsNkJBQTZCOzJGQUE3Qiw2QkFBNkIsd0pDWjFDLHlmQWNBOzsyRkRGYSw2QkFBNkI7a0JBVHpDLFNBQVM7K0JBQ0UseUJBQXlCLGNBR3ZCLElBQUksUUFDVjt3QkFDSixzQkFBc0IsRUFBRSxtQkFBbUI7cUJBQzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhvbWVTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHMuY29tcG9uZW50LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5kaXNwbGF5LW5vbmVdJzogJyF2aWV3TW9kZWwubGVuZ3RoJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgRkhvbWVQYWdlTWVtYmVyc2hpcHNDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgdmlld01vZGVsID0gaW5qZWN0KEhvbWVTdG9yZSkuZ2V0TWVtYmVyc2hpcHMoKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJtZW1iZXJzaGlwLWxpc3RcIj5cbiAgQGZvciAobWVtYmVyc2hpcCBvZiB2aWV3TW9kZWw7IHRyYWNrIG1lbWJlcnNoaXAuaWQpIHtcbiAgICA8ZGl2IGNsYXNzPVwibWVtYmVyc2hpcFwiPlxuICAgICAgPGgyPnt7IG1lbWJlcnNoaXAubmFtZSB9fTwvaDI+XG4gICAgICA8cD57eyBtZW1iZXJzaGlwLmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImJlbmVmaXQtbGlzdFwiPlxuICAgICAgICBAZm9yIChiZW5lZml0IG9mIG1lbWJlcnNoaXAuYmVuZWZpdHM7IHRyYWNrIGJlbmVmaXQpIHtcbiAgICAgICAgICA8cCBjbGFzcz1cImJlbmVmaXRcIj7inIUge3sgYmVuZWZpdCB9fTwvcD5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgICA8YSBjbGFzcz1cImYtYnV0dG9uXCIgW2hyZWZdPVwibWVtYmVyc2hpcC5idXR0b25SZWZcIj57eyBtZW1iZXJzaGlwLmJ1dHRvblRleHQgfX08L2E+XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuIl19","import { ChangeDetectionStrategy, Component, inject, ViewChild, ViewContainerRef, } from '@angular/core';\nimport { HomeStore } from './services';\nimport { FHomePageFeaturesComponent, FHomePageFooterComponent, FHomePageHeaderComponent, FHomePageHeroComponent, FHomePageMembershipsComponent, } from './components';\nimport { IS_BROWSER_PLATFORM, ThemeService } from '../common';\nimport { GTagService } from '../analytics';\nimport * as i0 from \"@angular/core\";\nexport class HomeRootComponent {\n _environment = inject(HomeStore);\n _gTagService = inject(GTagService, { optional: true });\n _themeService = inject(ThemeService, { optional: true });\n isBrowser = inject(IS_BROWSER_PLATFORM);\n _backgroundContainer;\n _heroImageContainer;\n ngOnInit() {\n if (!this.isBrowser) {\n return;\n }\n this._themeService?.initialize();\n this._gTagService?.initialize();\n }\n ngAfterViewInit() {\n this._renderImageComponent(this._environment.getImageComponent());\n this._renderBackgroundComponent(this._environment.getBackgroundComponent());\n }\n _renderImageComponent(component) {\n if (component) {\n this._requestComponentRedraw(this._getImageComponentReference(component));\n }\n }\n _renderBackgroundComponent(component) {\n if (component) {\n this._requestComponentRedraw(this._getBackgroundComponentReference(component));\n }\n }\n _getBackgroundComponentReference(component) {\n return this._backgroundContainer.createComponent(component);\n }\n _getImageComponentReference(component) {\n return this._heroImageContainer.createComponent(component);\n }\n _requestComponentRedraw(componentRef) {\n componentRef.changeDetectorRef.markForCheck();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeRootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: HomeRootComponent, isStandalone: true, selector: \"home-root\", providers: [\n HomeStore,\n ], viewQueries: [{ propertyName: \"_backgroundContainer\", first: true, predicate: [\"backgroundContainer\"], descendants: true, read: ViewContainerRef }, { propertyName: \"_heroImageContainer\", first: true, predicate: [\"heroImageContainer\"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: \"<ng-container #backgroundContainer></ng-container>\\n<header f-home-page-header></header>\\n\\n<div class=\\\"body\\\">\\n <div class=\\\"hero-row\\\">\\n <f-home-page-hero></f-home-page-hero>\\n <ng-container #heroImageContainer></ng-container>\\n </div>\\n <f-home-page-features></f-home-page-features>\\n <f-home-page-memberships></f-home-page-memberships>\\n</div>\\n\\n<div class=\\\"flex-space\\\"></div>\\n<footer f-home-page-footer></footer>\\n\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;flex-direction:column;position:relative;width:100%;height:100%;min-height:100%;overflow:hidden;overflow-y:auto}.body{position:relative;z-index:3;pointer-events:none}@media (min-width: 960px){.body{margin-top:50px}}@media (min-width: 1376px){.body{margin-top:100px}}.hero-row{display:flex;flex-direction:column-reverse;justify-content:space-between;align-items:center;margin:0 auto}@media (min-width: 960px){.hero-row{flex-direction:row;margin-left:64px;margin-right:64px}}@media (min-width: 1376px){.hero-row{flex-direction:row;margin-left:calc(50% - 624px);margin-right:calc(50% - 624px)}}\\n\"], dependencies: [{ kind: \"component\", type: FHomePageFooterComponent, selector: \"footer[f-home-page-footer]\" }, { kind: \"component\", type: FHomePageHeaderComponent, selector: \"header[f-home-page-header]\" }, { kind: \"component\", type: FHomePageFeaturesComponent, selector: \"f-home-page-features\" }, { kind: \"component\", type: FHomePageHeroComponent, selector: \"f-home-page-hero\" }, { kind: \"component\", type: FHomePageMembershipsComponent, selector: \"f-home-page-memberships\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)]] });\n}\ni0.ɵɵngDeclareClassMetadataAsync({ minVersion: \"18.0.0\", version: \"20.1.8\", ngImport: i0, type: HomeRootComponent, resolveDeferredDeps: () => [import(\"../analytics/cookie-popup/cookie-popup.component\").then(m => m.CookiePopupComponent)], resolveMetadata: CookiePopupComponent => ({ decorators: [{\n type: Component,\n args: [{ selector: 'home-root', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n HomeStore,\n ], imports: [\n FHomePageFooterComponent,\n FHomePageHeaderComponent,\n FHomePageFeaturesComponent,\n FHomePageHeroComponent,\n FHomePageMembershipsComponent,\n CookiePopupComponent,\n ], template: \"<ng-container #backgroundContainer></ng-container>\\n<header f-home-page-header></header>\\n\\n<div class=\\\"body\\\">\\n <div class=\\\"hero-row\\\">\\n <f-home-page-hero></f-home-page-hero>\\n <ng-container #heroImageContainer></ng-container>\\n </div>\\n <f-home-page-features></f-home-page-features>\\n <f-home-page-memberships></f-home-page-memberships>\\n</div>\\n\\n<div class=\\\"flex-space\\\"></div>\\n<footer f-home-page-footer></footer>\\n\\n@defer (when isBrowser) {\\n <cookie-popup/>\\n}\\n\", styles: [\":host{display:flex;flex-direction:column;position:relative;width:100%;height:100%;min-height:100%;overflow:hidden;overflow-y:auto}.body{position:relative;z-index:3;pointer-events:none}@media (min-width: 960px){.body{margin-top:50px}}@media (min-width: 1376px){.body{margin-top:100px}}.hero-row{display:flex;flex-direction:column-reverse;justify-content:space-between;align-items:center;margin:0 auto}@media (min-width: 960px){.hero-row{flex-direction:row;margin-left:64px;margin-right:64px}}@media (min-width: 1376px){.hero-row{flex-direction:row;margin-left:calc(50% - 624px);margin-right:calc(50% - 624px)}}\\n\"] }]\n }], ctorParameters: null, propDecorators: { _backgroundContainer: [{\n type: ViewChild,\n args: ['backgroundContainer', { read: ViewContainerRef }]\n }], _heroImageContainer: [{\n type: ViewChild,\n args: ['heroImageContainer', { read: ViewContainerRef }]\n }] } }) });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS1yb290LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvaG9tZS1yb290LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbS1yZW5kZXIvc3JjL2xpYi9ob21lLXBhZ2UvaG9tZS1yb290LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULE1BQU0sRUFHTixTQUFTLEVBQ1QsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdkMsT0FBTyxFQUNMLDBCQUEwQixFQUMxQix3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0Qiw2QkFBNkIsR0FDOUIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFpQyxtQkFBbUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFvQjNDLE1BQU0sT0FBTyxpQkFBaUI7SUFDWCxZQUFZLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLFlBQVksR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkQsYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUV2RCxTQUFTLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFHbkQsb0JBQW9CLENBQStCO0lBR25ELG1CQUFtQixDQUErQjtJQUVuRCxRQUFRO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFTyxxQkFBcUIsQ0FBSSxTQUFtQjtRQUNsRCxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ2QsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzVFLENBQUM7SUFDSCxDQUFDO0lBRU8sMEJBQTBCLENBQUksU0FBbUI7UUFDdkQsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNqRixDQUFDO0lBQ0gsQ0FBQztJQUVPLGdDQUFnQyxDQUFJLFNBQWtCO1FBQzVELE9BQU8sSUFBSSxDQUFDLG9CQUFxQixDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU8sMkJBQTJCLENBQUksU0FBa0I7UUFDdkQsT0FBTyxJQUFJLENBQUMsbUJBQW9CLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxZQUErQjtRQUM3RCxZQUFZLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDaEQsQ0FBQzt1R0FoRFUsaUJBQWlCOzJGQUFqQixpQkFBaUIsd0RBWmpCO1lBQ1QsU0FBUztTQUNWLGtJQWlCeUMsZ0JBQWdCLG9IQUdqQixnQkFBZ0IsNkJDbkQzRCx5ZUFrQkEsNnBCRGVJLHdCQUF3Qix1RUFDeEIsd0JBQXdCLHVFQUN4QiwwQkFBMEIsaUVBQzFCLHNCQUFzQiw2REFDdEIsNkJBQTZCOztnR0FJcEIsaUJBQWlCO3NCQWxCN0IsU0FBUzttQ0FDRSxXQUFXLGNBR1QsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDOzRCQUNULFNBQVM7eUJBQ1YsV0FDUTs0QkFDUCx3QkFBd0I7NEJBQ3hCLHdCQUF3Qjs0QkFDeEIsMEJBQTBCOzRCQUMxQixzQkFBc0I7NEJBQ3RCLDZCQUE2Qjs0QkFDN0Isb0JBQW9CO3lCQUNyQjt3REFVTyxvQkFBb0I7MEJBRDNCLFNBQVM7MkJBQUMscUJBQXFCLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7b0JBSXBELG1CQUFtQjswQkFEMUIsU0FBUzsyQkFBQyxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgaW5qZWN0LFxuICBPbkluaXQsXG4gIFR5cGUsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIb21lU3RvcmUgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7XG4gIEZIb21lUGFnZUZlYXR1cmVzQ29tcG9uZW50LFxuICBGSG9tZVBhZ2VGb290ZXJDb21wb25lbnQsXG4gIEZIb21lUGFnZUhlYWRlckNvbXBvbmVudCxcbiAgRkhvbWVQYWdlSGVyb0NvbXBvbmVudCxcbiAgRkhvbWVQYWdlTWVtYmVyc2hpcHNDb21wb25lbnQsXG59IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBIRUFERVJfQ09ORklHVVJBVElPTl9QUk9WSURFUiwgSVNfQlJPV1NFUl9QTEFURk9STSwgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uJztcbmltcG9ydCB7IENvb2tpZVBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi4vYW5hbHl0aWNzL2Nvb2tpZS1wb3B1cC9jb29raWUtcG9wdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEdUYWdTZXJ2aWNlIH0gZnJvbSAnLi4vYW5hbHl0aWNzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaG9tZS1yb290JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hvbWUtcm9vdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hvbWUtcm9vdC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgSG9tZVN0b3JlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgRkhvbWVQYWdlRm9vdGVyQ29tcG9uZW50LFxuICAgIEZIb21lUGFnZUhlYWRlckNvbXBvbmVudCxcbiAgICBGSG9tZVBhZ2VGZWF0dXJlc0NvbXBvbmVudCxcbiAgICBGSG9tZVBhZ2VIZXJvQ29tcG9uZW50LFxuICAgIEZIb21lUGFnZU1lbWJlcnNoaXBzQ29tcG9uZW50LFxuICAgIENvb2tpZVBvcHVwQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBIb21lUm9vdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Vudmlyb25tZW50ID0gaW5qZWN0KEhvbWVTdG9yZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2dUYWdTZXJ2aWNlID0gaW5qZWN0KEdUYWdTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IF90aGVtZVNlcnZpY2UgPSBpbmplY3QoVGhlbWVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBpc0Jyb3dzZXIgPSBpbmplY3QoSVNfQlJPV1NFUl9QTEFURk9STSk7XG5cbiAgQFZpZXdDaGlsZCgnYmFja2dyb3VuZENvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxuICBwcml2YXRlIF9iYWNrZ3JvdW5kQ29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoJ2hlcm9JbWFnZUNvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxuICBwcml2YXRlIF9oZXJvSW1hZ2VDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fdGhlbWVTZXJ2aWNlPy5pbml0aWFsaXplKCk7XG4gICAgdGhpcy5fZ1RhZ1NlcnZpY2U/LmluaXRpYWxpemUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fcmVuZGVySW1hZ2VDb21wb25lbnQodGhpcy5fZW52aXJvbm1lbnQuZ2V0SW1hZ2VDb21wb25lbnQoKSk7XG4gICAgdGhpcy5fcmVuZGVyQmFja2dyb3VuZENvbXBvbmVudCh0aGlzLl9lbnZpcm9ubWVudC5nZXRCYWNrZ3JvdW5kQ29tcG9uZW50KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVySW1hZ2VDb21wb25lbnQ8VD4oY29tcG9uZW50PzogVHlwZTxUPik6IHZvaWQge1xuICAgIGlmIChjb21wb25lbnQpIHtcbiAgICAgIHRoaXMuX3JlcXVlc3RDb21wb25lbnRSZWRyYXcodGhpcy5fZ2V0SW1hZ2VDb21wb25lbnRSZWZlcmVuY2UoY29tcG9uZW50KSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVuZGVyQmFja2dyb3VuZENvbXBvbmVudDxUPihjb21wb25lbnQ/OiBUeXBlPFQ+KTogdm9pZCB7XG4gICAgaWYgKGNvbXBvbmVudCkge1xuICAgICAgdGhpcy5fcmVxdWVzdENvbXBvbmVudFJlZHJhdyh0aGlzLl9nZXRCYWNrZ3JvdW5kQ29tcG9uZW50UmVmZXJlbmNlKGNvbXBvbmVudCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldEJhY2tncm91bmRDb21wb25lbnRSZWZlcmVuY2U8VD4oY29tcG9uZW50OiBUeXBlPFQ+KTogQ29tcG9uZW50UmVmPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fYmFja2dyb3VuZENvbnRhaW5lciEuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudCk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRJbWFnZUNvbXBvbmVudFJlZmVyZW5jZTxUPihjb21wb25lbnQ6IFR5cGU8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xuICAgIHJldHVybiB0aGlzLl9oZXJvSW1hZ2VDb250YWluZXIhLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVxdWVzdENvbXBvbmVudFJlZHJhdyhjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+KTogdm9pZCB7XG4gICAgY29tcG9uZW50UmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICNiYWNrZ3JvdW5kQ29udGFpbmVyPjwvbmctY29udGFpbmVyPlxuPGhlYWRlciBmLWhvbWUtcGFnZS1oZWFkZXI+PC9oZWFkZXI+XG5cbjxkaXYgY2xhc3M9XCJib2R5XCI+XG4gIDxkaXYgY2xhc3M9XCJoZXJvLXJvd1wiPlxuICAgIDxmLWhvbWUtcGFnZS1oZXJvPjwvZi1ob21lLXBhZ2UtaGVybz5cbiAgICA8bmctY29udGFpbmVyICNoZXJvSW1hZ2VDb250YWluZXI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8Zi1ob21lLXBhZ2UtZmVhdHVyZXM+PC9mLWhvbWUtcGFnZS1mZWF0dXJlcz5cbiAgPGYtaG9tZS1wYWdlLW1lbWJlcnNoaXBzPjwvZi1ob21lLXBhZ2UtbWVtYmVyc2hpcHM+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImZsZXgtc3BhY2VcIj48L2Rpdj5cbjxmb290ZXIgZi1ob21lLXBhZ2UtZm9vdGVyPjwvZm9vdGVyPlxuXG5AZGVmZXIgKHdoZW4gaXNCcm93c2VyKSB7XG4gIDxjb29raWUtcG9wdXAvPlxufVxuIl19","export const HOME_ROUTES = [\n {\n path: '',\n loadComponent: () => import('./index').then(m => m.HomeRootComponent),\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvbGliL2hvbWUtcGFnZS9yb3V0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFXO0lBQ2pDO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztLQUN0RTtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5leHBvcnQgY29uc3QgSE9NRV9ST1VURVM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICcnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9pbmRleCcpLnRoZW4obSA9PiBtLkhvbWVSb290Q29tcG9uZW50KSxcbiAgfSxcbl07XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ibGV4LW0tcmVuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9tLXJlbmRlci9zcmMvZm9ibGV4LW0tcmVuZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["uniqueId","filter","coerceComponentHeight"],"mappings":"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"}