@foblex/m-render 2.5.1 → 2.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/esm2022/lib/common-components/f-checkbox/f-checkbox.component.mjs +73 -0
- package/esm2022/lib/{f-documentation → common-components}/f-cookie-popup/f-cookie-popup.component.mjs +6 -6
- package/esm2022/lib/common-components/f-theme-button/f-theme-button.component.mjs +44 -0
- package/esm2022/lib/common-components/index.mjs +4 -0
- package/esm2022/lib/common-services/analytics/f-analytics.service.mjs +6 -8
- package/esm2022/lib/common-services/f-head-tag.service.mjs +6 -4
- package/esm2022/lib/common-services/f-meta.service.mjs +80 -0
- package/esm2022/lib/common-services/f-popover.service.mjs +25 -0
- package/esm2022/lib/common-services/index.mjs +3 -1
- package/esm2022/lib/common-services/json-ld/f-json-ld.service.mjs +6 -4
- package/esm2022/lib/domain/f-state.service.mjs +6 -5
- package/esm2022/lib/domain/get-version-handler/get-version.handler.mjs +28 -0
- package/esm2022/lib/domain/get-version-handler/get-version.request.mjs +7 -0
- package/esm2022/lib/domain/get-version-handler/index.mjs +3 -0
- package/esm2022/lib/domain/handle-navigation-links/handle-navigation-links.handler.mjs +53 -0
- package/esm2022/lib/domain/handle-navigation-links/handle-navigation-links.request.mjs +7 -0
- package/esm2022/lib/domain/handle-navigation-links/index.mjs +3 -0
- package/esm2022/lib/domain/i-environment-service.mjs +3 -0
- package/esm2022/lib/domain/index.mjs +4 -8
- package/esm2022/lib/f-documentation/domain/i-docs-environment.mjs +2 -0
- package/esm2022/lib/f-documentation/domain/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-badge/f-badge.component.mjs +6 -8
- package/esm2022/lib/f-documentation/f-documentation-environment.service.mjs +69 -0
- package/esm2022/lib/f-documentation/f-documentation.component.mjs +28 -30
- package/esm2022/lib/f-documentation/f-hamburger-button/f-hamburger-button.component.mjs +6 -5
- package/esm2022/lib/f-documentation/f-header/f-header.component.mjs +10 -16
- package/esm2022/lib/f-documentation/f-header-menu/f-header-menu.component.mjs +13 -16
- package/esm2022/lib/f-documentation/f-navigation-panel/domain/i-navigation-group.mjs +2 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/domain/i-navigation-item-badge.mjs +2 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/domain/i-navigation-item.mjs +2 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/domain/index.mjs +4 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/f-navigation-group/f-navigation-group.component.mjs +21 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/f-navigation-header/f-navigation-header.component.mjs +26 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/f-navigation-item/f-navigation-item.component.mjs +11 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/f-navigation-panel.component.mjs +101 -0
- package/esm2022/lib/f-documentation/f-navigation-panel/index.mjs +6 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-dynamic-components/handle-dynamic-components.handler.mjs +104 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-dynamic-components/handle-dynamic-components.request.mjs +7 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-dynamic-components/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/handle-parsed-containers.handler.mjs +35 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/handle-parsed-containers.request.mjs +7 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/i-parsed-container.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/index.mjs +5 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/clipboard/copy-to-clipboard.mjs +15 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/clipboard/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-async-code-view-handler.mjs +46 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/f-code-group.handler.mjs +54 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/i-code-group-view.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/index.mjs +3 -0
- package/esm2022/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group-body.handler.mjs +4 -1
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-view-handler.mjs +63 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-example-view-handler.mjs +10 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/index.mjs +7 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/highlight/change-code-focused-syntax.pre-processor.mjs +23 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/highlight/highlight.service.mjs +56 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/highlight/index.mjs +6 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/highlight/mark-code-focused-blocks.post-processor.mjs +53 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/highlight/modify-punctuation-highlight.post-processor.mjs +22 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/highlight/separate-code-by-lines.post-processor.mjs +28 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/index.mjs +5 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/index.mjs +4 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/markdown.service.mjs +69 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/e-markdown-container-type.mjs +13 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/i-markdown-it-token.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/index.mjs +8 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/parse-alerts.mjs +19 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/parse-code-group.mjs +54 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/parse-code-view.mjs +15 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/parse-example-group.mjs +92 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/parse-markdown/parse-preview-group.mjs +50 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/utils/get-content.mjs +17 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/domain/markdown/utils/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/f-markdown-renderer.component.mjs +84 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.handler.mjs +37 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.request.mjs +7 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.response.mjs +9 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/index.mjs +4 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/domain/features/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/domain/i-page-link.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/domain/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-edit-information/f-footer-edit-information.component.mjs +11 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-edit-information/f-footer-edit-link/f-footer-edit-link.component.mjs +11 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-edit-information/f-footer-edit-link/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-edit-information/f-footer-last-updated/f-footer-last-updated.component.mjs +11 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-edit-information/f-footer-last-updated/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-edit-information/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-navigation/f-footer-navigation-button/f-footer-navigation-button.component.mjs +19 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-navigation/f-footer-navigation-button/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-navigation/f-footer-navigation.component.mjs +11 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-footer-navigation/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/f-markdown-footer.component.mjs +89 -0
- package/esm2022/lib/f-documentation/f-page/f-markdown-footer/index.mjs +5 -0
- package/esm2022/lib/f-documentation/f-page/f-page.component.mjs +18 -0
- package/esm2022/lib/f-documentation/f-page/f-table-of-content/f-table-of-content-items/f-table-of-content-items.component.mjs +14 -0
- package/esm2022/lib/f-documentation/f-page/f-table-of-content/f-table-of-content-items/index.mjs +2 -0
- package/esm2022/lib/f-documentation/f-page/f-table-of-content/f-table-of-content.component.mjs +69 -0
- package/esm2022/lib/f-documentation/f-page/f-table-of-content/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-page/index.mjs +5 -0
- package/esm2022/lib/f-documentation/f-preview/f-preview.component.mjs +16 -7
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/calculate-hash-from-scroll-position/calculate-hash-from-scroll-position.handler.mjs +53 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/calculate-hash-from-scroll-position/calculate-hash-from-scroll-position.request.mjs +7 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/calculate-hash-from-scroll-position/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/get-absolute-top-to-container/get-absolute-top-to-container.handler.mjs +14 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/get-absolute-top-to-container/get-absolute-top-to-container.request.mjs +9 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/get-absolute-top-to-container/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/get-table-of-content-data/get-table-of-content-data.handler.mjs +52 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/get-table-of-content-data/get-table-of-content-data.request.mjs +9 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/get-table-of-content-data/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/i-table-of-content-item.mjs +2 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/index.mjs +7 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/scroll-to-element-in-container.mjs +35 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/domain/table-of-content-data.mjs +9 -0
- package/esm2022/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/f-scrollable-container.component.mjs +7 -5
- package/esm2022/lib/f-documentation/f-scrollable-container/f-scrollable.service.mjs +60 -0
- package/esm2022/lib/f-documentation/f-scrollable-container/index.mjs +3 -0
- package/esm2022/lib/f-documentation/f-social-links/f-social-links.component.mjs +8 -13
- package/esm2022/lib/f-documentation/f-version/f-version.component.mjs +8 -11
- package/esm2022/lib/f-documentation/index.mjs +9 -5
- package/esm2022/lib/f-documentation/providers.mjs +3 -0
- package/esm2022/lib/f-documentation/router.mjs +13 -0
- package/esm2022/lib/f-home-page/domain/i-home-page-environment.mjs +2 -0
- package/esm2022/lib/f-home-page/domain/i-home-page-feature.mjs +2 -0
- package/esm2022/lib/f-home-page/domain/i-home-page-footer.mjs +2 -0
- package/esm2022/lib/f-home-page/domain/i-home-page-hero.mjs +2 -0
- package/esm2022/lib/f-home-page/domain/i-home-page-link.mjs +2 -0
- package/esm2022/lib/f-home-page/domain/index.mjs +6 -0
- package/esm2022/lib/f-home-page/f-home-page-environment.service.mjs +47 -0
- package/esm2022/lib/f-home-page/f-home-page-features/f-home-page-features.component.mjs +13 -0
- package/esm2022/lib/f-home-page/f-home-page-footer/f-home-page-footer.component.mjs +13 -0
- package/esm2022/lib/f-home-page/f-home-page-header/f-home-page-header.component.mjs +17 -0
- package/esm2022/lib/f-home-page/f-home-page-hero/f-home-page-buttons-row/f-home-page-buttons-row.component.mjs +16 -0
- package/esm2022/lib/f-home-page/f-home-page-hero/f-home-page-hero.component.mjs +16 -0
- package/esm2022/lib/f-home-page/f-home-page.component.mjs +63 -0
- package/esm2022/lib/f-home-page/index.mjs +9 -0
- package/esm2022/lib/f-home-page/providers.mjs +3 -0
- package/esm2022/lib/f-home-page/router.mjs +7 -0
- package/esm2022/lib/index.mjs +3 -4
- package/fesm2022/foblex-m-render.mjs +1203 -902
- package/fesm2022/foblex-m-render.mjs.map +1 -1
- package/lib/common-components/index.d.ts +3 -0
- package/lib/common-services/analytics/set-cookie-consent.d.ts +1 -1
- package/lib/{domain → common-services}/f-meta.service.d.ts +3 -3
- package/lib/{domain → common-services}/f-popover.service.d.ts +2 -1
- package/lib/common-services/index.d.ts +2 -0
- package/lib/domain/{features/get-version-handler → get-version-handler}/get-version.request.d.ts +1 -1
- package/lib/domain/i-environment-service.d.ts +6 -0
- package/lib/domain/index.d.ts +3 -7
- package/lib/{domain → f-documentation/domain}/i-docs-environment.d.ts +6 -6
- package/lib/f-documentation/domain/index.d.ts +1 -0
- package/lib/{domain/f-environment.service.d.ts → f-documentation/f-documentation-environment.service.d.ts} +5 -5
- package/lib/f-documentation/f-documentation.component.d.ts +6 -9
- package/lib/f-documentation/f-hamburger-button/f-hamburger-button.component.d.ts +1 -1
- package/lib/f-documentation/f-header/f-header.component.d.ts +0 -3
- package/lib/f-documentation/f-header-menu/f-header-menu.component.d.ts +3 -5
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/f-navigation-header/f-navigation-header.component.d.ts +2 -2
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/f-navigation-panel.component.d.ts +2 -3
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-dynamic-components/handle-dynamic-components.handler.d.ts +2 -2
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/markdown.service.d.ts +2 -2
- package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.handler.d.ts +2 -2
- package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-markdown-footer.component.d.ts +3 -2
- package/lib/{f-page → f-documentation/f-page}/f-table-of-content/f-table-of-content.component.d.ts +2 -2
- package/lib/f-documentation/f-preview/f-preview.component.d.ts +3 -3
- package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/f-scrollable.service.d.ts +2 -2
- package/lib/f-documentation/f-social-links/f-social-links.component.d.ts +1 -4
- package/lib/f-documentation/f-version/f-version.component.d.ts +0 -3
- package/lib/f-documentation/index.d.ts +8 -4
- package/lib/f-documentation/providers.d.ts +3 -0
- package/lib/f-documentation/router.d.ts +2 -0
- package/lib/f-home-page/domain/i-home-page-environment.d.ts +18 -0
- package/lib/f-home-page/domain/i-home-page-feature.d.ts +4 -0
- package/lib/f-home-page/domain/i-home-page-footer.d.ts +3 -0
- package/lib/f-home-page/domain/i-home-page-hero.d.ts +6 -0
- package/lib/f-home-page/domain/i-home-page-link.d.ts +6 -0
- package/lib/f-home-page/domain/index.d.ts +5 -0
- package/lib/f-home-page/f-home-page-environment.service.d.ts +20 -0
- package/lib/f-home-page/f-home-page-features/f-home-page-features.component.d.ts +6 -0
- package/lib/f-home-page/f-home-page-footer/f-home-page-footer.component.d.ts +6 -0
- package/lib/f-home-page/f-home-page-header/f-home-page-header.component.d.ts +7 -0
- package/lib/f-home-page/f-home-page-hero/f-home-page-buttons-row/f-home-page-buttons-row.component.d.ts +6 -0
- package/lib/f-home-page/f-home-page-hero/f-home-page-hero.component.d.ts +6 -0
- package/lib/f-home-page/f-home-page.component.d.ts +17 -0
- package/lib/f-home-page/index.d.ts +8 -0
- package/lib/f-home-page/providers.d.ts +3 -0
- package/lib/f-home-page/router.d.ts +2 -0
- package/lib/index.d.ts +2 -3
- package/package.json +3 -3
- package/esm2022/lib/domain/f-environment.service.mjs +0 -66
- package/esm2022/lib/domain/f-meta.service.mjs +0 -77
- package/esm2022/lib/domain/f-popover.service.mjs +0 -25
- package/esm2022/lib/domain/features/get-version-handler/get-version.handler.mjs +0 -27
- package/esm2022/lib/domain/features/get-version-handler/get-version.request.mjs +0 -6
- package/esm2022/lib/domain/features/get-version-handler/index.mjs +0 -3
- package/esm2022/lib/domain/features/handle-navigation-links/handle-navigation-links.handler.mjs +0 -51
- package/esm2022/lib/domain/features/handle-navigation-links/handle-navigation-links.request.mjs +0 -6
- package/esm2022/lib/domain/features/handle-navigation-links/index.mjs +0 -3
- package/esm2022/lib/domain/features/index.mjs +0 -3
- package/esm2022/lib/domain/i-docs-environment.mjs +0 -2
- package/esm2022/lib/domain/providers.mjs +0 -3
- package/esm2022/lib/domain/router.mjs +0 -13
- package/esm2022/lib/f-documentation/f-checkbox/f-checkbox.component.mjs +0 -70
- package/esm2022/lib/f-documentation/f-theme-button/f-theme-button.component.mjs +0 -41
- package/esm2022/lib/f-navigation-panel/domain/i-navigation-group.mjs +0 -2
- package/esm2022/lib/f-navigation-panel/domain/i-navigation-item-badge.mjs +0 -2
- package/esm2022/lib/f-navigation-panel/domain/i-navigation-item.mjs +0 -2
- package/esm2022/lib/f-navigation-panel/domain/index.mjs +0 -4
- package/esm2022/lib/f-navigation-panel/f-navigation-group/f-navigation-group.component.mjs +0 -22
- package/esm2022/lib/f-navigation-panel/f-navigation-header/f-navigation-header.component.mjs +0 -24
- package/esm2022/lib/f-navigation-panel/f-navigation-item/f-navigation-item.component.mjs +0 -11
- package/esm2022/lib/f-navigation-panel/f-navigation-panel.component.mjs +0 -94
- package/esm2022/lib/f-navigation-panel/index.mjs +0 -6
- package/esm2022/lib/f-page/f-markdown/domain/handle-dynamic-components/handle-dynamic-components.handler.mjs +0 -102
- package/esm2022/lib/f-page/f-markdown/domain/handle-dynamic-components/handle-dynamic-components.request.mjs +0 -6
- package/esm2022/lib/f-page/f-markdown/domain/handle-dynamic-components/index.mjs +0 -3
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/handle-parsed-containers.handler.mjs +0 -34
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/handle-parsed-containers.request.mjs +0 -6
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/i-parsed-container.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/index.mjs +0 -5
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/clipboard/copy-to-clipboard.mjs +0 -15
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/clipboard/index.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-async-code-view-handler.mjs +0 -46
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/f-code-group.handler.mjs +0 -51
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/i-code-group-view.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/index.mjs +0 -3
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-view-handler.mjs +0 -60
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/f-example-view-handler.mjs +0 -9
- package/esm2022/lib/f-page/f-markdown/domain/handle-parsed-containers/pseudo-components/index.mjs +0 -7
- package/esm2022/lib/f-page/f-markdown/domain/highlight/change-code-focused-syntax.pre-processor.mjs +0 -23
- package/esm2022/lib/f-page/f-markdown/domain/highlight/highlight.service.mjs +0 -54
- package/esm2022/lib/f-page/f-markdown/domain/highlight/index.mjs +0 -6
- package/esm2022/lib/f-page/f-markdown/domain/highlight/mark-code-focused-blocks.post-processor.mjs +0 -52
- package/esm2022/lib/f-page/f-markdown/domain/highlight/modify-punctuation-highlight.post-processor.mjs +0 -22
- package/esm2022/lib/f-page/f-markdown/domain/highlight/separate-code-by-lines.post-processor.mjs +0 -28
- package/esm2022/lib/f-page/f-markdown/domain/index.mjs +0 -5
- package/esm2022/lib/f-page/f-markdown/domain/markdown/index.mjs +0 -4
- package/esm2022/lib/f-page/f-markdown/domain/markdown/markdown.service.mjs +0 -65
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/e-markdown-container-type.mjs +0 -13
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/i-markdown-it-token.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/index.mjs +0 -8
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/parse-alerts.mjs +0 -19
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/parse-code-group.mjs +0 -54
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/parse-code-view.mjs +0 -15
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/parse-example-group.mjs +0 -92
- package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/parse-preview-group.mjs +0 -49
- package/esm2022/lib/f-page/f-markdown/domain/markdown/utils/get-content.mjs +0 -17
- package/esm2022/lib/f-page/f-markdown/domain/markdown/utils/index.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown/f-markdown-renderer.component.mjs +0 -80
- package/esm2022/lib/f-page/f-markdown/index.mjs +0 -3
- package/esm2022/lib/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.handler.mjs +0 -36
- package/esm2022/lib/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.request.mjs +0 -6
- package/esm2022/lib/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.response.mjs +0 -7
- package/esm2022/lib/f-page/f-markdown-footer/domain/features/get-previous-next-page-navigation/index.mjs +0 -4
- package/esm2022/lib/f-page/f-markdown-footer/domain/features/index.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown-footer/domain/i-page-link.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown-footer/domain/index.mjs +0 -3
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-edit-information/f-footer-edit-information.component.mjs +0 -11
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-edit-information/f-footer-edit-link/f-footer-edit-link.component.mjs +0 -11
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-edit-information/f-footer-edit-link/index.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-edit-information/f-footer-last-updated/f-footer-last-updated.component.mjs +0 -11
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-edit-information/f-footer-last-updated/index.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-edit-information/index.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-navigation/f-footer-navigation-button/f-footer-navigation-button.component.mjs +0 -17
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-navigation/f-footer-navigation-button/index.mjs +0 -2
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-navigation/f-footer-navigation.component.mjs +0 -11
- package/esm2022/lib/f-page/f-markdown-footer/f-footer-navigation/index.mjs +0 -3
- package/esm2022/lib/f-page/f-markdown-footer/f-markdown-footer.component.mjs +0 -82
- package/esm2022/lib/f-page/f-markdown-footer/index.mjs +0 -5
- package/esm2022/lib/f-page/f-page.component.mjs +0 -18
- package/esm2022/lib/f-page/f-table-of-content/f-table-of-content-items/f-table-of-content-items.component.mjs +0 -16
- package/esm2022/lib/f-page/f-table-of-content/f-table-of-content-items/index.mjs +0 -2
- package/esm2022/lib/f-page/f-table-of-content/f-table-of-content.component.mjs +0 -63
- package/esm2022/lib/f-page/f-table-of-content/index.mjs +0 -3
- package/esm2022/lib/f-page/index.mjs +0 -5
- package/esm2022/lib/f-scrollable-container/domain/calculate-hash-from-scroll-position/calculate-hash-from-scroll-position.handler.mjs +0 -51
- package/esm2022/lib/f-scrollable-container/domain/calculate-hash-from-scroll-position/calculate-hash-from-scroll-position.request.mjs +0 -6
- package/esm2022/lib/f-scrollable-container/domain/calculate-hash-from-scroll-position/index.mjs +0 -3
- package/esm2022/lib/f-scrollable-container/domain/get-absolute-top-to-container/get-absolute-top-to-container.handler.mjs +0 -14
- package/esm2022/lib/f-scrollable-container/domain/get-absolute-top-to-container/get-absolute-top-to-container.request.mjs +0 -7
- package/esm2022/lib/f-scrollable-container/domain/get-absolute-top-to-container/index.mjs +0 -3
- package/esm2022/lib/f-scrollable-container/domain/get-table-of-content-data/get-table-of-content-data.handler.mjs +0 -52
- package/esm2022/lib/f-scrollable-container/domain/get-table-of-content-data/get-table-of-content-data.request.mjs +0 -7
- package/esm2022/lib/f-scrollable-container/domain/get-table-of-content-data/index.mjs +0 -3
- package/esm2022/lib/f-scrollable-container/domain/i-table-of-content-item.mjs +0 -2
- package/esm2022/lib/f-scrollable-container/domain/index.mjs +0 -7
- package/esm2022/lib/f-scrollable-container/domain/scroll-to-element-in-container.mjs +0 -34
- package/esm2022/lib/f-scrollable-container/domain/table-of-content-data.mjs +0 -7
- package/esm2022/lib/f-scrollable-container/f-scrollable.service.mjs +0 -57
- package/esm2022/lib/f-scrollable-container/index.mjs +0 -3
- package/lib/domain/features/index.d.ts +0 -2
- package/lib/domain/providers.d.ts +0 -3
- package/lib/domain/router.d.ts +0 -2
- package/lib/{f-documentation → common-components}/f-checkbox/f-checkbox.component.d.ts +0 -0
- package/lib/{f-documentation → common-components}/f-cookie-popup/f-cookie-popup.component.d.ts +0 -0
- package/lib/{f-documentation → common-components}/f-theme-button/f-theme-button.component.d.ts +0 -0
- package/lib/domain/{features/get-version-handler → get-version-handler}/get-version.handler.d.ts +0 -0
- package/lib/domain/{features/get-version-handler → get-version-handler}/index.d.ts +0 -0
- package/lib/domain/{features/handle-navigation-links → handle-navigation-links}/handle-navigation-links.handler.d.ts +0 -0
- package/lib/domain/{features/handle-navigation-links → handle-navigation-links}/handle-navigation-links.request.d.ts +0 -0
- package/lib/domain/{features/handle-navigation-links → handle-navigation-links}/index.d.ts +0 -0
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/domain/i-navigation-group.d.ts +0 -0
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/domain/i-navigation-item-badge.d.ts +0 -0
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/domain/i-navigation-item.d.ts +0 -0
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/domain/index.d.ts +0 -0
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/f-navigation-group/f-navigation-group.component.d.ts +0 -0
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/f-navigation-item/f-navigation-item.component.d.ts +0 -0
- package/lib/{f-navigation-panel → f-documentation/f-navigation-panel}/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-dynamic-components/handle-dynamic-components.request.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-dynamic-components/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/handle-parsed-containers.handler.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/handle-parsed-containers.request.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/i-parsed-container.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/clipboard/copy-to-clipboard.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/clipboard/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-async-code-view-handler.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/f-code-group.handler.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/i-code-group-view.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-group-body.handler.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-code-view-handler.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/f-example-view-handler.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/handle-parsed-containers/pseudo-components/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/highlight/change-code-focused-syntax.pre-processor.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/highlight/highlight.service.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/highlight/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/highlight/mark-code-focused-blocks.post-processor.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/highlight/modify-punctuation-highlight.post-processor.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/highlight/separate-code-by-lines.post-processor.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/e-markdown-container-type.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/i-markdown-it-token.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/index.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/parse-alerts.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/parse-code-group.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/parse-code-view.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/parse-example-group.d.ts +0 -0
- package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/parse-markdown/parse-preview-group.d.ts +1 -1
- /package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/utils/get-content.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown/domain/markdown/utils/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown/f-markdown-renderer.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.request.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/domain/features/get-previous-next-page-navigation/get-previous-next-page-navigation.response.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/domain/features/get-previous-next-page-navigation/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/domain/features/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/domain/i-page-link.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/domain/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-edit-information/f-footer-edit-information.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-edit-information/f-footer-edit-link/f-footer-edit-link.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-edit-information/f-footer-edit-link/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-edit-information/f-footer-last-updated/f-footer-last-updated.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-edit-information/f-footer-last-updated/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-edit-information/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-navigation/f-footer-navigation-button/f-footer-navigation-button.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-navigation/f-footer-navigation-button/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-navigation/f-footer-navigation.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/f-footer-navigation/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-markdown-footer/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-page.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-table-of-content/f-table-of-content-items/f-table-of-content-items.component.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-table-of-content/f-table-of-content-items/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/f-table-of-content/index.d.ts +0 -0
- /package/lib/{f-page → f-documentation/f-page}/index.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/calculate-hash-from-scroll-position/calculate-hash-from-scroll-position.handler.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/calculate-hash-from-scroll-position/calculate-hash-from-scroll-position.request.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/calculate-hash-from-scroll-position/index.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/get-absolute-top-to-container/get-absolute-top-to-container.handler.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/get-absolute-top-to-container/get-absolute-top-to-container.request.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/get-absolute-top-to-container/index.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/get-table-of-content-data/get-table-of-content-data.handler.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/get-table-of-content-data/get-table-of-content-data.request.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/get-table-of-content-data/index.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/i-table-of-content-item.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/index.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/scroll-to-element-in-container.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/domain/table-of-content-data.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/f-scrollable-container.component.d.ts +0 -0
- /package/lib/{f-scrollable-container → f-documentation/f-scrollable-container}/index.d.ts +0 -0
package/esm2022/lib/f-page/f-markdown/domain/highlight/change-code-focused-syntax.pre-processor.mjs
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
import { of } from 'rxjs';
|
2
|
-
//To prevent replacing the focus syntax (Prism) in the code blocks, we need to change from the default syntax to a custom one.
|
3
|
-
export class ChangeCodeFocusedSyntaxPreProcessor {
|
4
|
-
handle(element) {
|
5
|
-
this.getCodeBlocks(element).forEach((block) => {
|
6
|
-
block.innerHTML = this.replaceFocus(block.innerHTML);
|
7
|
-
});
|
8
|
-
return of(element);
|
9
|
-
}
|
10
|
-
getCodeBlocks(element) {
|
11
|
-
return Array.from(element.querySelectorAll('pre code'));
|
12
|
-
}
|
13
|
-
replaceFocus(text) {
|
14
|
-
return text.replace(RULE.regex, RULE.replacer);
|
15
|
-
}
|
16
|
-
}
|
17
|
-
const RULE = {
|
18
|
-
regex: /\|:\|(.*?)\|:\|/g,
|
19
|
-
replacer: (match, p1) => {
|
20
|
-
return `|foc-|${p1}|-foc|`;
|
21
|
-
}
|
22
|
-
};
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLWNvZGUtZm9jdXNlZC1zeW50YXgucHJlLXByb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL2hpZ2hsaWdodC9jaGFuZ2UtY29kZS1mb2N1c2VkLXN5bnRheC5wcmUtcHJvY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHdEMsOEhBQThIO0FBQzlILE1BQU0sT0FBTyxtQ0FBbUM7SUFFdkMsTUFBTSxDQUFDLE9BQW9CO1FBQ2hDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDNUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFTyxhQUFhLENBQUMsT0FBb0I7UUFDeEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTyxZQUFZLENBQUMsSUFBWTtRQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakQsQ0FBQztDQUNGO0FBRUQsTUFBTSxJQUFJLEdBQUc7SUFDWCxLQUFLLEVBQUUsa0JBQWtCO0lBQ3pCLFFBQVEsRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFPLEVBQUUsRUFBRTtRQUNoQyxPQUFPLFNBQVUsRUFBRyxRQUFRLENBQUM7SUFDL0IsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSUhhbmRsZXIgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcblxuLy9UbyBwcmV2ZW50IHJlcGxhY2luZyB0aGUgZm9jdXMgc3ludGF4IChQcmlzbSkgaW4gdGhlIGNvZGUgYmxvY2tzLCB3ZSBuZWVkIHRvIGNoYW5nZSBmcm9tIHRoZSBkZWZhdWx0IHN5bnRheCB0byBhIGN1c3RvbSBvbmUuXG5leHBvcnQgY2xhc3MgQ2hhbmdlQ29kZUZvY3VzZWRTeW50YXhQcmVQcm9jZXNzb3IgaW1wbGVtZW50cyBJSGFuZGxlcjxIVE1MRWxlbWVudCwgT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4+IHtcblxuICBwdWJsaWMgaGFuZGxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIHRoaXMuZ2V0Q29kZUJsb2NrcyhlbGVtZW50KS5mb3JFYWNoKChibG9jaykgPT4ge1xuICAgICAgYmxvY2suaW5uZXJIVE1MID0gdGhpcy5yZXBsYWNlRm9jdXMoYmxvY2suaW5uZXJIVE1MKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBvZihlbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29kZUJsb2NrcyhlbGVtZW50OiBIVE1MRWxlbWVudCk6IEhUTUxFbGVtZW50W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKGVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgncHJlIGNvZGUnKSk7XG4gIH1cblxuICBwcml2YXRlIHJlcGxhY2VGb2N1cyh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0ZXh0LnJlcGxhY2UoUlVMRS5yZWdleCwgUlVMRS5yZXBsYWNlcik7XG4gIH1cbn1cblxuY29uc3QgUlVMRSA9IHtcbiAgcmVnZXg6IC9cXHw6XFx8KC4qPylcXHw6XFx8L2csXG4gIHJlcGxhY2VyOiAobWF0Y2g6IGFueSwgcDE6IGFueSkgPT4ge1xuICAgIHJldHVybiBgfGZvYy18JHsgcDEgfXwtZm9jfGA7XG4gIH1cbn07XG4iXX0=
|
@@ -1,54 +0,0 @@
|
|
1
|
-
import { Injectable } from '@angular/core';
|
2
|
-
import { Observable, of, switchMap } from 'rxjs';
|
3
|
-
import { ChangeCodeFocusedSyntaxPreProcessor } from './change-code-focused-syntax.pre-processor';
|
4
|
-
import { SeparateCodeByLinesPostProcessor } from './separate-code-by-lines.post-processor';
|
5
|
-
import { ModifyPunctuationHighlightPostProcessor } from './modify-punctuation-highlight.post-processor';
|
6
|
-
import { MarkCodeFocusedBlocksPostProcessor } from './mark-code-focused-blocks.post-processor';
|
7
|
-
import * as i0 from "@angular/core";
|
8
|
-
import * as i1 from "@foblex/platform";
|
9
|
-
export class HighlightService {
|
10
|
-
constructor(fBrowser) {
|
11
|
-
this.fBrowser = fBrowser;
|
12
|
-
}
|
13
|
-
highlight(element) {
|
14
|
-
return this.fBrowser.isBrowser() ? this.markNoneLanguage(element).pipe(switchMap((x) => new ChangeCodeFocusedSyntaxPreProcessor().handle(x)), switchMap((x) => this.highlightCodeWithPrism(x)), switchMap((x) => new ModifyPunctuationHighlightPostProcessor().handle(x)), switchMap((x) => new SeparateCodeByLinesPostProcessor().handle(x)), switchMap((x) => new MarkCodeFocusedBlocksPostProcessor(this.fBrowser).handle(x))) : of(element);
|
15
|
-
}
|
16
|
-
highlightCodeWithPrism(element) {
|
17
|
-
return new Observable((observer) => {
|
18
|
-
setTimeout(() => {
|
19
|
-
this.loadPrism().then((x) => {
|
20
|
-
this.highlightAllUnder(x, observer, element);
|
21
|
-
});
|
22
|
-
});
|
23
|
-
});
|
24
|
-
}
|
25
|
-
highlightAllUnder(prism, observer, element) {
|
26
|
-
try {
|
27
|
-
prism?.highlightAllUnder(element);
|
28
|
-
}
|
29
|
-
catch (e) {
|
30
|
-
}
|
31
|
-
observer.next(element);
|
32
|
-
observer.complete();
|
33
|
-
}
|
34
|
-
async loadPrism() {
|
35
|
-
if (!this.Prism) {
|
36
|
-
this.Prism = await import('prismjs');
|
37
|
-
await Promise.all([
|
38
|
-
// @ts-ignore
|
39
|
-
import('prismjs/components/prism-bash'), import('prismjs/components/prism-css'), import('prismjs/components/prism-typescript')
|
40
|
-
]);
|
41
|
-
}
|
42
|
-
return this.Prism;
|
43
|
-
}
|
44
|
-
markNoneLanguage(element) {
|
45
|
-
element.querySelectorAll('pre code:not([class*="language-"])').forEach((x) => x.classList.add('language-none'));
|
46
|
-
return of(element);
|
47
|
-
}
|
48
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HighlightService, deps: [{ token: i1.BrowserService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
49
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HighlightService }); }
|
50
|
-
}
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HighlightService, decorators: [{
|
52
|
-
type: Injectable
|
53
|
-
}], ctorParameters: () => [{ type: i1.BrowserService }] });
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tLXJlbmRlci9zcmMvbGliL2YtcGFnZS9mLW1hcmtkb3duL2RvbWFpbi9oaWdobGlnaHQvaGlnaGxpZ2h0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDakcsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDM0YsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7OztBQUkvRixNQUFNLE9BQU8sZ0JBQWdCO0lBSTNCLFlBQ1UsUUFBd0I7UUFBeEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7SUFFbEMsQ0FBQztJQUVNLFNBQVMsQ0FBQyxPQUFvQjtRQUNuQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ3BFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxtQ0FBbUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNyRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNoRCxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksdUNBQXVDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDekUsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGdDQUFnQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2xFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxrQ0FBa0MsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2pGLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBRU8sc0JBQXNCLENBQUMsT0FBb0I7UUFDakQsT0FBTyxJQUFJLFVBQVUsQ0FBYyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQzlDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDL0MsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQXNCLEVBQUUsUUFBaUMsRUFBRSxPQUFvQjtRQUN2RyxJQUFJLENBQUM7WUFDSCxLQUFLLEVBQUUsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDYixDQUFDO1FBQ0QsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVPLEtBQUssQ0FBQyxTQUFTO1FBQ3JCLElBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JDLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFDaEIsYUFBYTtnQkFDYixNQUFNLENBQUMsK0JBQStCLENBQUMsRUFBRSxNQUFNLENBQUMsOEJBQThCLENBQUMsRUFBRSxNQUFNLENBQUMscUNBQXFDLENBQUM7YUFDL0gsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRU8sZ0JBQWdCLENBQUMsT0FBb0I7UUFDM0MsT0FBTyxDQUFDLGdCQUFnQixDQUFDLG9DQUFvQyxDQUFDLENBQUMsT0FBTyxDQUNwRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQ3hDLENBQUM7UUFDRixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQixDQUFDOytHQXREVSxnQkFBZ0I7bUhBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBTdWJzY3JpYmVyLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENoYW5nZUNvZGVGb2N1c2VkU3ludGF4UHJlUHJvY2Vzc29yIH0gZnJvbSAnLi9jaGFuZ2UtY29kZS1mb2N1c2VkLXN5bnRheC5wcmUtcHJvY2Vzc29yJztcbmltcG9ydCB7IFNlcGFyYXRlQ29kZUJ5TGluZXNQb3N0UHJvY2Vzc29yIH0gZnJvbSAnLi9zZXBhcmF0ZS1jb2RlLWJ5LWxpbmVzLnBvc3QtcHJvY2Vzc29yJztcbmltcG9ydCB7IE1vZGlmeVB1bmN0dWF0aW9uSGlnaGxpZ2h0UG9zdFByb2Nlc3NvciB9IGZyb20gJy4vbW9kaWZ5LXB1bmN0dWF0aW9uLWhpZ2hsaWdodC5wb3N0LXByb2Nlc3Nvcic7XG5pbXBvcnQgeyBNYXJrQ29kZUZvY3VzZWRCbG9ja3NQb3N0UHJvY2Vzc29yIH0gZnJvbSAnLi9tYXJrLWNvZGUtZm9jdXNlZC1ibG9ja3MucG9zdC1wcm9jZXNzb3InO1xuaW1wb3J0IHsgQnJvd3NlclNlcnZpY2UgfSBmcm9tICdAZm9ibGV4L3BsYXRmb3JtJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEhpZ2hsaWdodFNlcnZpY2Uge1xuXG4gIHByaXZhdGUgUHJpc206IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZCcm93c2VyOiBCcm93c2VyU2VydmljZVxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoaWdobGlnaHQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmZCcm93c2VyLmlzQnJvd3NlcigpID8gdGhpcy5tYXJrTm9uZUxhbmd1YWdlKGVsZW1lbnQpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG5ldyBDaGFuZ2VDb2RlRm9jdXNlZFN5bnRheFByZVByb2Nlc3NvcigpLmhhbmRsZSh4KSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IHRoaXMuaGlnaGxpZ2h0Q29kZVdpdGhQcmlzbSh4KSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG5ldyBNb2RpZnlQdW5jdHVhdGlvbkhpZ2hsaWdodFBvc3RQcm9jZXNzb3IoKS5oYW5kbGUoeCkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBuZXcgU2VwYXJhdGVDb2RlQnlMaW5lc1Bvc3RQcm9jZXNzb3IoKS5oYW5kbGUoeCkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBuZXcgTWFya0NvZGVGb2N1c2VkQmxvY2tzUG9zdFByb2Nlc3Nvcih0aGlzLmZCcm93c2VyKS5oYW5kbGUoeCkpXG4gICAgICkgOiBvZihlbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgaGlnaGxpZ2h0Q29kZVdpdGhQcmlzbShlbGVtZW50OiBIVE1MRWxlbWVudCk6IE9ic2VydmFibGU8SFRNTEVsZW1lbnQ+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8SFRNTEVsZW1lbnQ+KChvYnNlcnZlcikgPT4ge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMubG9hZFByaXNtKCkudGhlbigoeCkgPT4ge1xuICAgICAgICAgIHRoaXMuaGlnaGxpZ2h0QWxsVW5kZXIoeCwgb2JzZXJ2ZXIsIGVsZW1lbnQpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoaWdobGlnaHRBbGxVbmRlcihwcmlzbTogYW55IHwgdW5kZWZpbmVkLCBvYnNlcnZlcjogU3Vic2NyaWJlcjxIVE1MRWxlbWVudD4sIGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIHByaXNtPy5oaWdobGlnaHRBbGxVbmRlcihlbGVtZW50KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgfVxuICAgIG9ic2VydmVyLm5leHQoZWxlbWVudCk7XG4gICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZFByaXNtKCk6IFByb21pc2U8YW55PiB7XG4gICAgaWYoIXRoaXMuUHJpc20pIHtcbiAgICAgIHRoaXMuUHJpc20gPSBhd2FpdCBpbXBvcnQoJ3ByaXNtanMnKTtcbiAgICAgIGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBpbXBvcnQoJ3ByaXNtanMvY29tcG9uZW50cy9wcmlzbS1iYXNoJyksIGltcG9ydCgncHJpc21qcy9jb21wb25lbnRzL3ByaXNtLWNzcycpLCBpbXBvcnQoJ3ByaXNtanMvY29tcG9uZW50cy9wcmlzbS10eXBlc2NyaXB0JylcbiAgICAgIF0pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5QcmlzbTtcbiAgfVxuXG4gIHByaXZhdGUgbWFya05vbmVMYW5ndWFnZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IE9ic2VydmFibGU8SFRNTEVsZW1lbnQ+IHtcbiAgICBlbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZSBjb2RlOm5vdChbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdKScpLmZvckVhY2goXG4gICAgICAoeCkgPT4geC5jbGFzc0xpc3QuYWRkKCdsYW5ndWFnZS1ub25lJylcbiAgICApO1xuICAgIHJldHVybiBvZihlbGVtZW50KTtcbiAgfVxufVxuIl19
|
@@ -1,6 +0,0 @@
|
|
1
|
-
export * from './change-code-focused-syntax.pre-processor';
|
2
|
-
export * from './highlight.service';
|
3
|
-
export * from './mark-code-focused-blocks.post-processor';
|
4
|
-
export * from './modify-punctuation-highlight.post-processor';
|
5
|
-
export * from './separate-code-by-lines.post-processor';
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tLXJlbmRlci9zcmMvbGliL2YtcGFnZS9mLW1hcmtkb3duL2RvbWFpbi9oaWdobGlnaHQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0Q0FBNEMsQ0FBQztBQUUzRCxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMsMkNBQTJDLENBQUM7QUFFMUQsY0FBYywrQ0FBK0MsQ0FBQztBQUU5RCxjQUFjLHlDQUF5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jaGFuZ2UtY29kZS1mb2N1c2VkLXN5bnRheC5wcmUtcHJvY2Vzc29yJztcblxuZXhwb3J0ICogZnJvbSAnLi9oaWdobGlnaHQuc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbWFyay1jb2RlLWZvY3VzZWQtYmxvY2tzLnBvc3QtcHJvY2Vzc29yJztcblxuZXhwb3J0ICogZnJvbSAnLi9tb2RpZnktcHVuY3R1YXRpb24taGlnaGxpZ2h0LnBvc3QtcHJvY2Vzc29yJztcblxuZXhwb3J0ICogZnJvbSAnLi9zZXBhcmF0ZS1jb2RlLWJ5LWxpbmVzLnBvc3QtcHJvY2Vzc29yJztcbiJdfQ==
|
package/esm2022/lib/f-page/f-markdown/domain/highlight/mark-code-focused-blocks.post-processor.mjs
DELETED
@@ -1,52 +0,0 @@
|
|
1
|
-
import { of } from 'rxjs';
|
2
|
-
export class MarkCodeFocusedBlocksPostProcessor {
|
3
|
-
constructor(fBrowser) {
|
4
|
-
this.fBrowser = fBrowser;
|
5
|
-
}
|
6
|
-
handle(element) {
|
7
|
-
this.getCodeBlocks(element).forEach((block) => {
|
8
|
-
block.innerHTML = this.replaceFocus(block.innerHTML);
|
9
|
-
if (block.querySelector('.focused')) {
|
10
|
-
this.applyOpacity(block.parentElement);
|
11
|
-
}
|
12
|
-
});
|
13
|
-
return of(element);
|
14
|
-
}
|
15
|
-
getCodeBlocks(element) {
|
16
|
-
return Array.from(element.querySelectorAll('pre code'));
|
17
|
-
}
|
18
|
-
replaceFocus(text) {
|
19
|
-
return text.replace(RULE.regex, RULE.replacer);
|
20
|
-
}
|
21
|
-
applyOpacity(element) {
|
22
|
-
if (!element.classList.contains('focused')) {
|
23
|
-
element.style.color = this.createRgbaString(this.getElementColor(element), 0.5);
|
24
|
-
element.childNodes.forEach((child) => {
|
25
|
-
if (child.nodeType === Node.ELEMENT_NODE) {
|
26
|
-
this.applyOpacity(child);
|
27
|
-
}
|
28
|
-
});
|
29
|
-
}
|
30
|
-
else {
|
31
|
-
element.style.color = this.createRgbaString(this.getElementColor(element), 1, true);
|
32
|
-
}
|
33
|
-
}
|
34
|
-
getElementColor(element) {
|
35
|
-
return this.fBrowser.window.getComputedStyle(element).color;
|
36
|
-
}
|
37
|
-
createRgbaString(color, opacity, isRgb = false) {
|
38
|
-
const [r, g, b, a] = this.getRgbValues(color);
|
39
|
-
const alpha = Number(a) || 1;
|
40
|
-
return isRgb ? `rgb(${r}, ${g}, ${b})` : `rgba(${r}, ${g}, ${b}, ${opacity * alpha})`;
|
41
|
-
}
|
42
|
-
getRgbValues(color) {
|
43
|
-
return color.match(/\d+/g);
|
44
|
-
}
|
45
|
-
}
|
46
|
-
const RULE = {
|
47
|
-
regex: /\|foc-\|(.*?)\|-foc\|/g,
|
48
|
-
replacer: (match, p1) => {
|
49
|
-
return `<focus class="focused">${p1}</focus>`;
|
50
|
-
}
|
51
|
-
};
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay1jb2RlLWZvY3VzZWQtYmxvY2tzLnBvc3QtcHJvY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbS1yZW5kZXIvc3JjL2xpYi9mLXBhZ2UvZi1tYXJrZG93bi9kb21haW4vaGlnaGxpZ2h0L21hcmstY29kZS1mb2N1c2VkLWJsb2Nrcy5wb3N0LXByb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSXRDLE1BQU0sT0FBTyxrQ0FBa0M7SUFFN0MsWUFDVSxRQUF3QjtRQUF4QixhQUFRLEdBQVIsUUFBUSxDQUFnQjtJQUVsQyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQW9CO1FBQ2hDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDNUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNyRCxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsYUFBNEIsQ0FBQyxDQUFDO1lBQ3hELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFTyxhQUFhLENBQUMsT0FBb0I7UUFDeEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTyxZQUFZLENBQUMsSUFBWTtRQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVPLFlBQVksQ0FBQyxPQUFvQjtRQUN2QyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUMzQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNoRixPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNuQyxJQUFJLEtBQUssQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQW9CLENBQUMsQ0FBQztnQkFDMUMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdEYsQ0FBQztJQUNILENBQUM7SUFFTyxlQUFlLENBQUMsT0FBb0I7UUFDMUMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDOUQsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQWEsRUFBRSxPQUFlLEVBQUUsUUFBaUIsS0FBSztRQUM3RSxNQUFNLENBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFRLENBQUUsS0FBTSxDQUFFLEtBQU0sQ0FBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVMsQ0FBRSxLQUFNLENBQUUsS0FBTSxDQUFFLEtBQU0sT0FBTyxHQUFHLEtBQU0sR0FBRyxDQUFDO0lBQ3RHLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBYTtRQUNoQyxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFFLENBQUM7SUFDOUIsQ0FBQztDQUNGO0FBRUQsTUFBTSxJQUFJLEdBQUc7SUFDWCxLQUFLLEVBQUUsd0JBQXdCO0lBQy9CLFFBQVEsRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFPLEVBQUUsRUFBRTtRQUNoQyxPQUFPLDBCQUEyQixFQUFHLFVBQVUsQ0FBQztJQUNsRCxDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuaW1wb3J0IHsgQnJvd3NlclNlcnZpY2UgfSBmcm9tICdAZm9ibGV4L3BsYXRmb3JtJztcblxuZXhwb3J0IGNsYXNzIE1hcmtDb2RlRm9jdXNlZEJsb2Nrc1Bvc3RQcm9jZXNzb3IgaW1wbGVtZW50cyBJSGFuZGxlcjxIVE1MRWxlbWVudCwgT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZCcm93c2VyOiBCcm93c2VyU2VydmljZVxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBPYnNlcnZhYmxlPEhUTUxFbGVtZW50PiB7XG4gICAgdGhpcy5nZXRDb2RlQmxvY2tzKGVsZW1lbnQpLmZvckVhY2goKGJsb2NrKSA9PiB7XG4gICAgICBibG9jay5pbm5lckhUTUwgPSB0aGlzLnJlcGxhY2VGb2N1cyhibG9jay5pbm5lckhUTUwpO1xuICAgICAgaWYgKGJsb2NrLnF1ZXJ5U2VsZWN0b3IoJy5mb2N1c2VkJykpIHtcbiAgICAgICAgdGhpcy5hcHBseU9wYWNpdHkoYmxvY2sucGFyZW50RWxlbWVudCBhcyBIVE1MRWxlbWVudCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG9mKGVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2RlQmxvY2tzKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdwcmUgY29kZScpKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVwbGFjZUZvY3VzKHRleHQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRleHQucmVwbGFjZShSVUxFLnJlZ2V4LCBSVUxFLnJlcGxhY2VyKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlPcGFjaXR5KGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgaWYgKCFlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygnZm9jdXNlZCcpKSB7XG4gICAgICBlbGVtZW50LnN0eWxlLmNvbG9yID0gdGhpcy5jcmVhdGVSZ2JhU3RyaW5nKHRoaXMuZ2V0RWxlbWVudENvbG9yKGVsZW1lbnQpLCAwLjUpO1xuICAgICAgZWxlbWVudC5jaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICAgIGlmIChjaGlsZC5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREUpIHtcbiAgICAgICAgICB0aGlzLmFwcGx5T3BhY2l0eShjaGlsZCBhcyBIVE1MRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbGVtZW50LnN0eWxlLmNvbG9yID0gdGhpcy5jcmVhdGVSZ2JhU3RyaW5nKHRoaXMuZ2V0RWxlbWVudENvbG9yKGVsZW1lbnQpLCAxLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEVsZW1lbnRDb2xvcihlbGVtZW50OiBIVE1MRWxlbWVudCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZkJyb3dzZXIud2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkuY29sb3I7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVJnYmFTdHJpbmcoY29sb3I6IHN0cmluZywgb3BhY2l0eTogbnVtYmVyLCBpc1JnYjogYm9vbGVhbiA9IGZhbHNlKTogc3RyaW5nIHtcbiAgICBjb25zdCBbIHIsIGcsIGIsIGEgXSA9IHRoaXMuZ2V0UmdiVmFsdWVzKGNvbG9yKTtcbiAgICBjb25zdCBhbHBoYSA9IE51bWJlcihhKSB8fCAxO1xuICAgIHJldHVybiBpc1JnYiA/IGByZ2IoJHsgciB9LCAkeyBnIH0sICR7IGIgfSlgIDogYHJnYmEoJHsgciB9LCAkeyBnIH0sICR7IGIgfSwgJHsgb3BhY2l0eSAqIGFscGhhIH0pYDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmdiVmFsdWVzKGNvbG9yOiBzdHJpbmcpOiBSZWdFeHBNYXRjaEFycmF5IHtcbiAgICByZXR1cm4gY29sb3IubWF0Y2goL1xcZCsvZykhO1xuICB9XG59XG5cbmNvbnN0IFJVTEUgPSB7XG4gIHJlZ2V4OiAvXFx8Zm9jLVxcfCguKj8pXFx8LWZvY1xcfC9nLFxuICByZXBsYWNlcjogKG1hdGNoOiBhbnksIHAxOiBhbnkpID0+IHtcbiAgICByZXR1cm4gYDxmb2N1cyBjbGFzcz1cImZvY3VzZWRcIj4keyBwMSB9PC9mb2N1cz5gO1xuICB9XG59O1xuIl19
|
@@ -1,22 +0,0 @@
|
|
1
|
-
import { of } from 'rxjs';
|
2
|
-
export class ModifyPunctuationHighlightPostProcessor {
|
3
|
-
handle(element) {
|
4
|
-
element.querySelectorAll('span.token.attr-name').forEach((node) => {
|
5
|
-
const text = node.textContent;
|
6
|
-
if (text && text.startsWith('[') && text.endsWith(']')) {
|
7
|
-
node.innerHTML = this.replacePunctuation(text);
|
8
|
-
}
|
9
|
-
});
|
10
|
-
return of(element);
|
11
|
-
}
|
12
|
-
replacePunctuation(text) {
|
13
|
-
return text.replace(RULE.regex, RULE.replacer);
|
14
|
-
}
|
15
|
-
}
|
16
|
-
const RULE = {
|
17
|
-
regex: /(\[|\])/g,
|
18
|
-
replacer: (match) => {
|
19
|
-
return `<span class="token punctuation">${match}</span>`;
|
20
|
-
}
|
21
|
-
};
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kaWZ5LXB1bmN0dWF0aW9uLWhpZ2hsaWdodC5wb3N0LXByb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL2hpZ2hsaWdodC9tb2RpZnktcHVuY3R1YXRpb24taGlnaGxpZ2h0LnBvc3QtcHJvY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHdEMsTUFBTSxPQUFPLHVDQUF1QztJQUUzQyxNQUFNLENBQUMsT0FBb0I7UUFDaEMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDaEUsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUM5QixJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDdkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVPLGtCQUFrQixDQUFDLElBQVk7UUFDckMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pELENBQUM7Q0FDRjtBQUVELE1BQU0sSUFBSSxHQUFHO0lBQ1gsS0FBSyxFQUFFLFVBQVU7SUFDakIsUUFBUSxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7UUFDdkIsT0FBTyxtQ0FBb0MsS0FBTSxTQUFTLENBQUM7SUFDN0QsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSUhhbmRsZXIgfSBmcm9tICdAZm9ibGV4L21lZGlhdG9yJztcblxuZXhwb3J0IGNsYXNzIE1vZGlmeVB1bmN0dWF0aW9uSGlnaGxpZ2h0UG9zdFByb2Nlc3NvciBpbXBsZW1lbnRzIElIYW5kbGVyPEhUTUxFbGVtZW50LCBPYnNlcnZhYmxlPEhUTUxFbGVtZW50Pj4ge1xuXG4gIHB1YmxpYyBoYW5kbGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBPYnNlcnZhYmxlPEhUTUxFbGVtZW50PiB7XG4gICAgZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzcGFuLnRva2VuLmF0dHItbmFtZScpLmZvckVhY2goKG5vZGUpID0+IHtcbiAgICAgIGNvbnN0IHRleHQgPSBub2RlLnRleHRDb250ZW50O1xuICAgICAgaWYgKHRleHQgJiYgdGV4dC5zdGFydHNXaXRoKCdbJykgJiYgdGV4dC5lbmRzV2l0aCgnXScpKSB7XG4gICAgICAgIG5vZGUuaW5uZXJIVE1MID0gdGhpcy5yZXBsYWNlUHVuY3R1YXRpb24odGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG9mKGVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXBsYWNlUHVuY3R1YXRpb24odGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGV4dC5yZXBsYWNlKFJVTEUucmVnZXgsIFJVTEUucmVwbGFjZXIpO1xuICB9XG59XG5cbmNvbnN0IFJVTEUgPSB7XG4gIHJlZ2V4OiAvKFxcW3xcXF0pL2csXG4gIHJlcGxhY2VyOiAobWF0Y2g6IGFueSkgPT4ge1xuICAgIHJldHVybiBgPHNwYW4gY2xhc3M9XCJ0b2tlbiBwdW5jdHVhdGlvblwiPiR7IG1hdGNoIH08L3NwYW4+YDtcbiAgfVxufTtcbiJdfQ==
|
package/esm2022/lib/f-page/f-markdown/domain/highlight/separate-code-by-lines.post-processor.mjs
DELETED
@@ -1,28 +0,0 @@
|
|
1
|
-
import { of } from 'rxjs';
|
2
|
-
export class SeparateCodeByLinesPostProcessor {
|
3
|
-
handle(element) {
|
4
|
-
element.querySelectorAll("pre code").forEach((code) => {
|
5
|
-
code.innerHTML = this.getCodeDividedByLines(code);
|
6
|
-
});
|
7
|
-
return of(element);
|
8
|
-
}
|
9
|
-
getCodeDividedByLines(code) {
|
10
|
-
let result = '';
|
11
|
-
this.getLines(code).forEach(line => {
|
12
|
-
if (!this.isLineEmpty(line)) {
|
13
|
-
result += this.getLine(line);
|
14
|
-
}
|
15
|
-
});
|
16
|
-
return result;
|
17
|
-
}
|
18
|
-
getLines(code) {
|
19
|
-
return code.innerHTML.split('\n');
|
20
|
-
}
|
21
|
-
isLineEmpty(line) {
|
22
|
-
return line.trim() === '';
|
23
|
-
}
|
24
|
-
getLine(content) {
|
25
|
-
return `<line class="line">${content}</line>\n`;
|
26
|
-
}
|
27
|
-
}
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VwYXJhdGUtY29kZS1ieS1saW5lcy5wb3N0LXByb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL2hpZ2hsaWdodC9zZXBhcmF0ZS1jb2RlLWJ5LWxpbmVzLnBvc3QtcHJvY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHdEMsTUFBTSxPQUFPLGdDQUFnQztJQUVwQyxNQUFNLENBQUMsT0FBb0I7UUFDaEMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3BELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVPLHFCQUFxQixDQUFDLElBQWE7UUFDekMsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQzVCLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxRQUFRLENBQUMsSUFBYTtRQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTyxXQUFXLENBQUMsSUFBWTtRQUM5QixPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLE9BQU8sQ0FBQyxPQUFlO1FBQzdCLE9BQU8sc0JBQXVCLE9BQVEsV0FBVyxDQUFDO0lBQ3BELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJSGFuZGxlciB9IGZyb20gJ0Bmb2JsZXgvbWVkaWF0b3InO1xuXG5leHBvcnQgY2xhc3MgU2VwYXJhdGVDb2RlQnlMaW5lc1Bvc3RQcm9jZXNzb3IgaW1wbGVtZW50cyBJSGFuZGxlcjxIVE1MRWxlbWVudCwgT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4+IHtcblxuICBwdWJsaWMgaGFuZGxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIGVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChcInByZSBjb2RlXCIpLmZvckVhY2goKGNvZGUpID0+IHtcbiAgICAgIGNvZGUuaW5uZXJIVE1MID0gdGhpcy5nZXRDb2RlRGl2aWRlZEJ5TGluZXMoY29kZSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIG9mKGVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2RlRGl2aWRlZEJ5TGluZXMoY29kZTogRWxlbWVudCk6IHN0cmluZyB7XG4gICAgbGV0IHJlc3VsdCA9ICcnO1xuICAgIHRoaXMuZ2V0TGluZXMoY29kZSkuZm9yRWFjaChsaW5lID0+IHtcbiAgICAgIGlmICghdGhpcy5pc0xpbmVFbXB0eShsaW5lKSkge1xuICAgICAgICByZXN1bHQgKz0gdGhpcy5nZXRMaW5lKGxpbmUpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwcml2YXRlIGdldExpbmVzKGNvZGU6IEVsZW1lbnQpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIGNvZGUuaW5uZXJIVE1MLnNwbGl0KCdcXG4nKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNMaW5lRW1wdHkobGluZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGxpbmUudHJpbSgpID09PSAnJztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGluZShjb250ZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgPGxpbmUgY2xhc3M9XCJsaW5lXCI+JHsgY29udGVudCB9PC9saW5lPlxcbmA7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,5 +0,0 @@
|
|
1
|
-
export * from './handle-dynamic-components';
|
2
|
-
export * from './handle-parsed-containers';
|
3
|
-
export * from './highlight';
|
4
|
-
export * from './markdown';
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tLXJlbmRlci9zcmMvbGliL2YtcGFnZS9mLW1hcmtkb3duL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hhbmRsZS1keW5hbWljLWNvbXBvbmVudHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2hhbmRsZS1wYXJzZWQtY29udGFpbmVycyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaGlnaGxpZ2h0JztcblxuZXhwb3J0ICogZnJvbSAnLi9tYXJrZG93bic7XG5cbiJdfQ==
|
@@ -1,4 +0,0 @@
|
|
1
|
-
export * from './parse-markdown';
|
2
|
-
export * from './utils';
|
3
|
-
export * from './markdown.service';
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tLXJlbmRlci9zcmMvbGliL2YtcGFnZS9mLW1hcmtkb3duL2RvbWFpbi9tYXJrZG93bi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBRWpDLGNBQWMsU0FBUyxDQUFDO0FBRXhCLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BhcnNlLW1hcmtkb3duJztcblxuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbWFya2Rvd24uc2VydmljZSc7XG4iXX0=
|
@@ -1,65 +0,0 @@
|
|
1
|
-
import { Injectable } from '@angular/core';
|
2
|
-
import { of, switchMap } from 'rxjs';
|
3
|
-
import MarkdownIt from 'markdown-it';
|
4
|
-
import { EMarkdownContainerType, ParseAlerts, ParseCodeGroup, ParseCodeView, ParseExampleGroup, ParsePreviewGroup } from './parse-markdown';
|
5
|
-
import { catchError, take } from 'rxjs/operators';
|
6
|
-
import * as i0 from "@angular/core";
|
7
|
-
import * as i1 from "@angular/common/http";
|
8
|
-
import * as i2 from "@angular/platform-browser";
|
9
|
-
import * as i3 from "../../../../domain";
|
10
|
-
import * as i4 from "@angular/router";
|
11
|
-
export class MarkdownService {
|
12
|
-
constructor(httpClient, domSanitizer, fEnvironment, router) {
|
13
|
-
this.httpClient = httpClient;
|
14
|
-
this.domSanitizer = domSanitizer;
|
15
|
-
this.fEnvironment = fEnvironment;
|
16
|
-
this.router = router;
|
17
|
-
this.markdown = new MarkdownIt({ html: true, linkify: true });
|
18
|
-
this.markdown
|
19
|
-
.use((x) => new ParseCodeView().render(x))
|
20
|
-
.use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_TIP, this.markdown))
|
21
|
-
.use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_INFO, this.markdown))
|
22
|
-
.use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_WARNING, this.markdown))
|
23
|
-
.use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_DANGER, this.markdown))
|
24
|
-
.use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_DANGER, this.markdown))
|
25
|
-
.use(...new ParseAlerts().render(EMarkdownContainerType.ALERT_SUCCESS, this.markdown))
|
26
|
-
.use(...new ParseCodeGroup().render())
|
27
|
-
.use(...new ParsePreviewGroup(this.fEnvironment.getNavigation()).render())
|
28
|
-
.use(...new ParseExampleGroup().render());
|
29
|
-
}
|
30
|
-
parse(src) {
|
31
|
-
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))));
|
32
|
-
}
|
33
|
-
normalizeLinks(html) {
|
34
|
-
const currentPath = this.router.url;
|
35
|
-
const prefix = currentPath.substring(0, currentPath.lastIndexOf('/'));
|
36
|
-
return html.replace(/<a\s+href="([^"]*)"/g, (match, href) => {
|
37
|
-
if (!this.isExternalLink(href)) {
|
38
|
-
let newHref = href.substring(0);
|
39
|
-
if (!href.startsWith('./')) {
|
40
|
-
newHref = href.startsWith('/') ? `${prefix}${href}` : `${prefix}/${href}`;
|
41
|
-
}
|
42
|
-
return `<a href="${newHref}"`;
|
43
|
-
}
|
44
|
-
return match;
|
45
|
-
});
|
46
|
-
}
|
47
|
-
isExternalLink(href) {
|
48
|
-
return href.startsWith('www') || href.startsWith('http');
|
49
|
-
}
|
50
|
-
cleanupEmptyParagraphs(html) {
|
51
|
-
return html.replace(/<p>\s*<\/p>/g, '');
|
52
|
-
}
|
53
|
-
cleanupWasteParagraphFromExampleView(html) {
|
54
|
-
return html.replace(/<div class="f-code-group-body">\s*<p>[^<]*<\/p>/g, '<div class="f-code-group-body">');
|
55
|
-
}
|
56
|
-
cleanupWasteParagraphFromPreviewGroup(html) {
|
57
|
-
return html.replace(/<p>(\[[^\]]+\](\s*\[[^\]]+\])*)<\/p>/g, '');
|
58
|
-
}
|
59
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MarkdownService, deps: [{ token: i1.HttpClient }, { token: i2.DomSanitizer }, { token: i3.FEnvironmentService }, { token: i4.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
60
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MarkdownService }); }
|
61
|
-
}
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MarkdownService, decorators: [{
|
63
|
-
type: Injectable
|
64
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.DomSanitizer }, { type: i3.FEnvironmentService }, { type: i4.Router }] });
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL21hcmtkb3duL21hcmtkb3duLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqRCxPQUFPLFVBQVUsTUFBTSxhQUFhLENBQUM7QUFDckMsT0FBTyxFQUNMLHNCQUFzQixFQUN0QixXQUFXLEVBQ1gsY0FBYyxFQUNkLGFBQWEsRUFDYixpQkFBaUIsRUFBRSxpQkFBaUIsRUFDckMsTUFBTSxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFLbEQsTUFBTSxPQUFPLGVBQWU7SUFJMUIsWUFDVSxVQUFzQixFQUN0QixZQUEwQixFQUMxQixZQUFpQyxFQUNqQyxNQUFjO1FBSGQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQU5oQixhQUFRLEdBQWUsSUFBSSxVQUFVLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBUTNFLElBQUksQ0FBQyxRQUFRO2FBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGFBQWEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUN6QyxHQUFHLENBQUMsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ2pGLEdBQUcsQ0FBQyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDbEYsR0FBRyxDQUFDLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNyRixHQUFHLENBQUMsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3BGLEdBQUcsQ0FBQyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDcEYsR0FBRyxDQUFDLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNyRixHQUFHLENBQUMsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ3JDLEdBQUcsQ0FBQyxHQUFHLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ3pFLEdBQUcsQ0FBQyxHQUFHLElBQUksaUJBQWlCLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxLQUFLLENBQUMsR0FBVztRQUN0QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNwRyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ25ELFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3BELFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2xFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ25FLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM1QyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDbkUsQ0FBQztJQUNKLENBQUM7SUFFTyxjQUFjLENBQUMsSUFBWTtRQUNqQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUNwQyxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFdEUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLHNCQUFzQixFQUFFLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFO1lBQzFELElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQy9CLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7b0JBQzNCLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFJLE1BQU8sR0FBSSxJQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBSSxNQUFPLElBQUssSUFBSyxFQUFFLENBQUM7Z0JBQ3BGLENBQUM7Z0JBQ0QsT0FBTyxZQUFhLE9BQVEsR0FBRyxDQUFDO1lBQ2xDLENBQUM7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWMsQ0FBQyxJQUFZO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxJQUFZO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVPLG9DQUFvQyxDQUFDLElBQVk7UUFDdkQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGtEQUFrRCxFQUFFLGlDQUFpQyxDQUFDLENBQUM7SUFDN0csQ0FBQztJQUVPLHFDQUFxQyxDQUFDLElBQVk7UUFDeEQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLHVDQUF1QyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7K0dBaEVVLGVBQWU7bUhBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgTWFya2Rvd25JdCBmcm9tICdtYXJrZG93bi1pdCc7XG5pbXBvcnQge1xuICBFTWFya2Rvd25Db250YWluZXJUeXBlLFxuICBQYXJzZUFsZXJ0cyxcbiAgUGFyc2VDb2RlR3JvdXAsXG4gIFBhcnNlQ29kZVZpZXcsXG4gIFBhcnNlRXhhbXBsZUdyb3VwLCBQYXJzZVByZXZpZXdHcm91cFxufSBmcm9tICcuL3BhcnNlLW1hcmtkb3duJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRkVudmlyb25tZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RvbWFpbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXJrZG93blNlcnZpY2Uge1xuXG4gIHByaXZhdGUgbWFya2Rvd246IE1hcmtkb3duSXQgPSBuZXcgTWFya2Rvd25JdCh7IGh0bWw6IHRydWUsIGxpbmtpZnk6IHRydWUgfSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgZG9tU2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgcHJpdmF0ZSBmRW52aXJvbm1lbnQ6IEZFbnZpcm9ubWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgKSB7XG4gICAgdGhpcy5tYXJrZG93blxuICAgICAgLnVzZSgoeCkgPT4gbmV3IFBhcnNlQ29kZVZpZXcoKS5yZW5kZXIoeCkpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFsZXJ0cygpLnJlbmRlcihFTWFya2Rvd25Db250YWluZXJUeXBlLkFMRVJUX1RJUCwgdGhpcy5tYXJrZG93bikpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUFsZXJ0cygpLnJlbmRlcihFTWFya2Rvd25Db250YWluZXJUeXBlLkFMRVJUX0lORk8sIHRoaXMubWFya2Rvd24pKVxuICAgICAgLnVzZSguLi5uZXcgUGFyc2VBbGVydHMoKS5yZW5kZXIoRU1hcmtkb3duQ29udGFpbmVyVHlwZS5BTEVSVF9XQVJOSU5HLCB0aGlzLm1hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfREFOR0VSLCB0aGlzLm1hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfREFOR0VSLCB0aGlzLm1hcmtkb3duKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlQWxlcnRzKCkucmVuZGVyKEVNYXJrZG93bkNvbnRhaW5lclR5cGUuQUxFUlRfU1VDQ0VTUywgdGhpcy5tYXJrZG93bikpXG4gICAgICAudXNlKC4uLm5ldyBQYXJzZUNvZGVHcm91cCgpLnJlbmRlcigpKVxuICAgICAgLnVzZSguLi5uZXcgUGFyc2VQcmV2aWV3R3JvdXAodGhpcy5mRW52aXJvbm1lbnQuZ2V0TmF2aWdhdGlvbigpKS5yZW5kZXIoKSlcbiAgICAgIC51c2UoLi4ubmV3IFBhcnNlRXhhbXBsZUdyb3VwKCkucmVuZGVyKCkpO1xuICB9XG5cbiAgcHVibGljIHBhcnNlKHNyYzogc3RyaW5nKTogT2JzZXJ2YWJsZTxTYWZlSHRtbD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHNyYywgeyByZXNwb25zZVR5cGU6ICd0ZXh0JyB9KS5waXBlKHRha2UoMSksIGNhdGNoRXJyb3IoKCkgPT4gb2YoJycpKSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgodGV4dCkgPT4gb2YodGhpcy5tYXJrZG93bi5yZW5kZXIodGV4dCkpKSxcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4gb2YodGhpcy5jbGVhbnVwRW1wdHlQYXJhZ3JhcGhzKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuY2xlYW51cFdhc3RlUGFyYWdyYXBoRnJvbUV4YW1wbGVWaWV3KHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuY2xlYW51cFdhc3RlUGFyYWdyYXBoRnJvbVByZXZpZXdHcm91cCh4KSkpLFxuICAgICAgc3dpdGNoTWFwKCh4KSA9PiBvZih0aGlzLm5vcm1hbGl6ZUxpbmtzKHgpKSksXG4gICAgICBzd2l0Y2hNYXAoKHgpID0+IG9mKHRoaXMuZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHgpKSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgbm9ybWFsaXplTGlua3MoaHRtbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBjdXJyZW50UGF0aCA9IHRoaXMucm91dGVyLnVybDtcbiAgICBjb25zdCBwcmVmaXggPSBjdXJyZW50UGF0aC5zdWJzdHJpbmcoMCwgY3VycmVudFBhdGgubGFzdEluZGV4T2YoJy8nKSk7XG5cbiAgICByZXR1cm4gaHRtbC5yZXBsYWNlKC88YVxccytocmVmPVwiKFteXCJdKilcIi9nLCAobWF0Y2gsIGhyZWYpID0+IHtcbiAgICAgIGlmICghdGhpcy5pc0V4dGVybmFsTGluayhocmVmKSkge1xuICAgICAgICBsZXQgbmV3SHJlZiA9IGhyZWYuc3Vic3RyaW5nKDApO1xuICAgICAgICBpZiAoIWhyZWYuc3RhcnRzV2l0aCgnLi8nKSkge1xuICAgICAgICAgIG5ld0hyZWYgPSBocmVmLnN0YXJ0c1dpdGgoJy8nKSA/IGAkeyBwcmVmaXggfSR7IGhyZWYgfWAgOiBgJHsgcHJlZml4IH0vJHsgaHJlZiB9YDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYDxhIGhyZWY9XCIkeyBuZXdIcmVmIH1cImA7XG4gICAgICB9XG4gICAgICByZXR1cm4gbWF0Y2g7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGlzRXh0ZXJuYWxMaW5rKGhyZWY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBocmVmLnN0YXJ0c1dpdGgoJ3d3dycpIHx8IGhyZWYuc3RhcnRzV2l0aCgnaHR0cCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhbnVwRW1wdHlQYXJhZ3JhcGhzKGh0bWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGh0bWwucmVwbGFjZSgvPHA+XFxzKjxcXC9wPi9nLCAnJyk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFudXBXYXN0ZVBhcmFncmFwaEZyb21FeGFtcGxlVmlldyhodG1sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBodG1sLnJlcGxhY2UoLzxkaXYgY2xhc3M9XCJmLWNvZGUtZ3JvdXAtYm9keVwiPlxccyo8cD5bXjxdKjxcXC9wPi9nLCAnPGRpdiBjbGFzcz1cImYtY29kZS1ncm91cC1ib2R5XCI+Jyk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFudXBXYXN0ZVBhcmFncmFwaEZyb21QcmV2aWV3R3JvdXAoaHRtbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaHRtbC5yZXBsYWNlKC88cD4oXFxbW15cXF1dK1xcXShcXHMqXFxbW15cXF1dK1xcXSkqKTxcXC9wPi9nLCAnJyk7XG4gIH1cbn1cblxuIl19
|
package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/e-markdown-container-type.mjs
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
export var EMarkdownContainerType;
|
2
|
-
(function (EMarkdownContainerType) {
|
3
|
-
EMarkdownContainerType["CODE_GROUP"] = "code-group";
|
4
|
-
EMarkdownContainerType["EXAMPLE_GROUP"] = "ng-component";
|
5
|
-
EMarkdownContainerType["PREVIEW_GROUP"] = "preview-group";
|
6
|
-
EMarkdownContainerType["CODE_VIEW"] = "code-view";
|
7
|
-
EMarkdownContainerType["ALERT_TIP"] = "tip";
|
8
|
-
EMarkdownContainerType["ALERT_INFO"] = "info";
|
9
|
-
EMarkdownContainerType["ALERT_WARNING"] = "warning";
|
10
|
-
EMarkdownContainerType["ALERT_DANGER"] = "danger";
|
11
|
-
EMarkdownContainerType["ALERT_SUCCESS"] = "success";
|
12
|
-
})(EMarkdownContainerType || (EMarkdownContainerType = {}));
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZS1tYXJrZG93bi1jb250YWluZXItdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL21hcmtkb3duL3BhcnNlLW1hcmtkb3duL2UtbWFya2Rvd24tY29udGFpbmVyLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksc0JBbUJYO0FBbkJELFdBQVksc0JBQXNCO0lBRWhDLG1EQUF5QixDQUFBO0lBRXpCLHdEQUE4QixDQUFBO0lBRTlCLHlEQUErQixDQUFBO0lBRS9CLGlEQUF1QixDQUFBO0lBRXZCLDJDQUFpQixDQUFBO0lBRWpCLDZDQUFtQixDQUFBO0lBRW5CLG1EQUF5QixDQUFBO0lBRXpCLGlEQUF1QixDQUFBO0lBRXZCLG1EQUF5QixDQUFBO0FBQzNCLENBQUMsRUFuQlcsc0JBQXNCLEtBQXRCLHNCQUFzQixRQW1CakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFTWFya2Rvd25Db250YWluZXJUeXBlIHtcblxuICBDT0RFX0dST1VQID0gJ2NvZGUtZ3JvdXAnLFxuXG4gIEVYQU1QTEVfR1JPVVAgPSAnbmctY29tcG9uZW50JyxcblxuICBQUkVWSUVXX0dST1VQID0gJ3ByZXZpZXctZ3JvdXAnLFxuXG4gIENPREVfVklFVyA9ICdjb2RlLXZpZXcnLFxuXG4gIEFMRVJUX1RJUCA9ICd0aXAnLFxuXG4gIEFMRVJUX0lORk8gPSAnaW5mbycsXG5cbiAgQUxFUlRfV0FSTklORyA9ICd3YXJuaW5nJyxcblxuICBBTEVSVF9EQU5HRVIgPSAnZGFuZ2VyJyxcblxuICBBTEVSVF9TVUNDRVNTID0gJ3N1Y2Nlc3MnXG59XG4iXX0=
|
package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/i-markdown-it-token.mjs
DELETED
@@ -1,2 +0,0 @@
|
|
1
|
-
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1tYXJrZG93bi1pdC10b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL21hcmtkb3duL3BhcnNlLW1hcmtkb3duL2ktbWFya2Rvd24taXQtdG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGludGVyZmFjZSBJTWFya2Rvd25JdFRva2VuIHtcblxuICB0eXBlOiBzdHJpbmc7XG5cbiAgdGFnOiBzdHJpbmc7XG5cbiAgYXR0cnM6IEFycmF5PFtzdHJpbmcsIHN0cmluZ10+IHwgbnVsbDtcblxuICBtYXA6IFtudW1iZXIsIG51bWJlcl0gfCBudWxsO1xuXG4gIG5lc3Rpbmc6IC0xIHwgMCB8IDE7XG5cbiAgbGV2ZWw6IG51bWJlcjtcblxuICBjaGlsZHJlbjogSU1hcmtkb3duSXRUb2tlbltdIHwgbnVsbDtcblxuICBjb250ZW50OiBzdHJpbmc7XG5cbiAgbWFya3VwOiBzdHJpbmc7XG5cbiAgaW5mbzogc3RyaW5nO1xuXG4gIG1ldGE6IGFueTtcblxuICBibG9jazogYm9vbGVhbjtcblxuICBoaWRkZW46IGJvb2xlYW47XG59XG5cblxuIl19
|
@@ -1,8 +0,0 @@
|
|
1
|
-
export * from './e-markdown-container-type';
|
2
|
-
export * from './i-markdown-it-token';
|
3
|
-
export * from './parse-alerts';
|
4
|
-
export * from './parse-code-group';
|
5
|
-
export * from './parse-code-view';
|
6
|
-
export * from './parse-example-group';
|
7
|
-
export * from './parse-preview-group';
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tLXJlbmRlci9zcmMvbGliL2YtcGFnZS9mLW1hcmtkb3duL2RvbWFpbi9tYXJrZG93bi9wYXJzZS1tYXJrZG93bi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsdUJBQXVCLENBQUM7QUFFdEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsbUJBQW1CLENBQUM7QUFFbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lLW1hcmtkb3duLWNvbnRhaW5lci10eXBlJztcblxuZXhwb3J0ICogZnJvbSAnLi9pLW1hcmtkb3duLWl0LXRva2VuJztcblxuZXhwb3J0ICogZnJvbSAnLi9wYXJzZS1hbGVydHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL3BhcnNlLWNvZGUtZ3JvdXAnO1xuXG5leHBvcnQgKiBmcm9tICcuL3BhcnNlLWNvZGUtdmlldyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcGFyc2UtZXhhbXBsZS1ncm91cCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcGFyc2UtcHJldmlldy1ncm91cCc7XG4iXX0=
|
@@ -1,19 +0,0 @@
|
|
1
|
-
import container from 'markdown-it-container';
|
2
|
-
export class ParseAlerts {
|
3
|
-
render(type, markdown) {
|
4
|
-
return [container, type, {
|
5
|
-
render: (tokens, index) => {
|
6
|
-
const token = tokens[index];
|
7
|
-
const info = token.info.trim().slice(type.length).trim();
|
8
|
-
if (token.nesting === 1) {
|
9
|
-
const title = markdown.renderInline(info);
|
10
|
-
return `<div class="f-alert ${type}"><p class="f-alert-title">${title}</p>\n`;
|
11
|
-
}
|
12
|
-
else {
|
13
|
-
return `</div>\n`;
|
14
|
-
}
|
15
|
-
}
|
16
|
-
}];
|
17
|
-
}
|
18
|
-
}
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtYWxlcnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbS1yZW5kZXIvc3JjL2xpYi9mLXBhZ2UvZi1tYXJrZG93bi9kb21haW4vbWFya2Rvd24vcGFyc2UtbWFya2Rvd24vcGFyc2UtYWxlcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBSzlDLE1BQU0sT0FBTyxXQUFXO0lBRWYsTUFBTSxDQUFDLElBQVksRUFBRSxRQUFvQjtRQUM5QyxPQUFPLENBQUUsU0FBUyxFQUFFLElBQUksRUFBRTtnQkFDeEIsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFFLEtBQUssQ0FBRSxDQUFDO29CQUM5QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxDQUFDLEVBQUUsQ0FBQzt3QkFDeEIsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDMUMsT0FBTyx1QkFBd0IsSUFBSyw4QkFBK0IsS0FBTSxRQUFRLENBQUM7b0JBQ3BGLENBQUM7eUJBQU0sQ0FBQzt3QkFDTixPQUFPLFVBQVUsQ0FBQztvQkFDcEIsQ0FBQztnQkFDSCxDQUFDO2FBQ0YsQ0FBRSxDQUFDO0lBQ04sQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1hcmtkb3duSXQgZnJvbSAnbWFya2Rvd24taXQnO1xuaW1wb3J0IGNvbnRhaW5lciBmcm9tICdtYXJrZG93bi1pdC1jb250YWluZXInO1xuaW1wb3J0IHsgSU1hcmtkb3duSXRUb2tlbiB9IGZyb20gJy4vaS1tYXJrZG93bi1pdC10b2tlbic7XG5cbnR5cGUgQ29udGFpbmVyQXJncyA9IFsgdHlwZW9mIGNvbnRhaW5lciwgc3RyaW5nLCB7IHJlbmRlcjogYW55IH0gXVxuXG5leHBvcnQgY2xhc3MgUGFyc2VBbGVydHMge1xuXG4gIHB1YmxpYyByZW5kZXIodHlwZTogc3RyaW5nLCBtYXJrZG93bjogTWFya2Rvd25JdCk6IENvbnRhaW5lckFyZ3Mge1xuICAgIHJldHVybiBbIGNvbnRhaW5lciwgdHlwZSwge1xuICAgICAgcmVuZGVyOiAodG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgY29uc3QgdG9rZW4gPSB0b2tlbnNbIGluZGV4IF07XG4gICAgICAgIGNvbnN0IGluZm8gPSB0b2tlbi5pbmZvLnRyaW0oKS5zbGljZSh0eXBlLmxlbmd0aCkudHJpbSgpO1xuICAgICAgICBpZiAodG9rZW4ubmVzdGluZyA9PT0gMSkge1xuICAgICAgICAgIGNvbnN0IHRpdGxlID0gbWFya2Rvd24ucmVuZGVySW5saW5lKGluZm8pO1xuICAgICAgICAgIHJldHVybiBgPGRpdiBjbGFzcz1cImYtYWxlcnQgJHsgdHlwZSB9XCI+PHAgY2xhc3M9XCJmLWFsZXJ0LXRpdGxlXCI+JHsgdGl0bGUgfTwvcD5cXG5gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBgPC9kaXY+XFxuYDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gXTtcbiAgfVxufVxuIl19
|
@@ -1,54 +0,0 @@
|
|
1
|
-
import container from 'markdown-it-container';
|
2
|
-
import { EMarkdownContainerType } from './e-markdown-container-type';
|
3
|
-
const F_CONTAINER_CLOSE_TAG = 'container_code-group_close';
|
4
|
-
export class ParseCodeGroup {
|
5
|
-
render() {
|
6
|
-
return [container, EMarkdownContainerType.CODE_GROUP, {
|
7
|
-
render: (tokens, index) => {
|
8
|
-
if (this.isOpeningToken(tokens, index)) {
|
9
|
-
return this.openingGroupHTML(this.generateTabs(tokens, index));
|
10
|
-
}
|
11
|
-
return this.closingGroupHTML();
|
12
|
-
}
|
13
|
-
}];
|
14
|
-
}
|
15
|
-
isOpeningToken(tokens, index) {
|
16
|
-
return tokens[index].nesting === 1;
|
17
|
-
}
|
18
|
-
generateTabs(tokens, index) {
|
19
|
-
let result = '';
|
20
|
-
for (let i = index + 1; !this.isClosingToken(tokens, i); i++) {
|
21
|
-
if (this.isCodeFenceToken(tokens[i])) {
|
22
|
-
const title = this.getCodeBlockTitle(tokens[i].info);
|
23
|
-
if (title) {
|
24
|
-
result += this.generateTabButton(title);
|
25
|
-
}
|
26
|
-
}
|
27
|
-
}
|
28
|
-
return result;
|
29
|
-
}
|
30
|
-
isClosingToken(token, index) {
|
31
|
-
return token[index].nesting === -1 && token[index].type === F_CONTAINER_CLOSE_TAG;
|
32
|
-
}
|
33
|
-
isCodeFenceToken(token) {
|
34
|
-
return token.type === 'fence' && token.tag === 'code';
|
35
|
-
}
|
36
|
-
generateTabButton(title) {
|
37
|
-
return `<button class="f-tab-button">${title}</button>`;
|
38
|
-
}
|
39
|
-
openingGroupHTML(tabs) {
|
40
|
-
return `<div class="f-code-group"><div class="f-code-group-tabs">${tabs}</div><div class="f-code-group-body">\n`;
|
41
|
-
}
|
42
|
-
closingGroupHTML() {
|
43
|
-
return `</div></div>\n`;
|
44
|
-
}
|
45
|
-
getCodeBlockTitle(data) {
|
46
|
-
return data.match(/\[(.*)\]/)?.[1] || this.getCodeLanguage(data) || 'txt';
|
47
|
-
}
|
48
|
-
getCodeLanguage(data) {
|
49
|
-
return data.trim()
|
50
|
-
.replace(/=(\d*)/, '')
|
51
|
-
.replace(/^ansi$/, '');
|
52
|
-
}
|
53
|
-
}
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtY29kZS1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL21hcmtkb3duL3BhcnNlLW1hcmtkb3duL3BhcnNlLWNvZGUtZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFJckUsTUFBTSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUUzRCxNQUFNLE9BQU8sY0FBYztJQUVsQixNQUFNO1FBQ1gsT0FBTyxDQUFFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyxVQUFVLEVBQUU7Z0JBQ3JELE1BQU0sRUFBRSxDQUFDLE1BQTBCLEVBQUUsS0FBYSxFQUFFLEVBQUU7b0JBQ3BELElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQzt3QkFDdkMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztvQkFDakUsQ0FBQztvQkFDRCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUNqQyxDQUFDO2FBQ0YsQ0FBRSxDQUFDO0lBQ04sQ0FBQztJQUVPLGNBQWMsQ0FBQyxNQUEwQixFQUFFLEtBQWE7UUFDOUQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU8sWUFBWSxDQUFDLE1BQTBCLEVBQUUsS0FBYTtRQUM1RCxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFFaEIsS0FBSyxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUM3RCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNyQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNyRCxJQUFJLEtBQUssRUFBRSxDQUFDO29CQUNWLE1BQU0sSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFDLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxjQUFjLENBQUMsS0FBeUIsRUFBRSxLQUFhO1FBQzdELE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLHFCQUFxQixDQUFDO0lBQ3BGLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxLQUF1QjtRQUM5QyxPQUFPLEtBQUssQ0FBQyxJQUFJLEtBQUssT0FBTyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssTUFBTSxDQUFDO0lBQ3hELENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUFhO1FBQ3JDLE9BQU8sZ0NBQWdDLEtBQUssV0FBVyxDQUFDO0lBQzFELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxJQUFZO1FBQ25DLE9BQU8sNERBQTRELElBQUkseUNBQXlDLENBQUM7SUFDbkgsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixPQUFPLGdCQUFnQixDQUFDO0lBQzFCLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxJQUFZO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFFLENBQUMsQ0FBRSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDO0lBQzlFLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWTtRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUU7YUFDZixPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQzthQUNyQixPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjb250YWluZXIgZnJvbSAnbWFya2Rvd24taXQtY29udGFpbmVyJztcbmltcG9ydCB7IEVNYXJrZG93bkNvbnRhaW5lclR5cGUgfSBmcm9tICcuL2UtbWFya2Rvd24tY29udGFpbmVyLXR5cGUnO1xuaW1wb3J0IHsgSU1hcmtkb3duSXRUb2tlbiB9IGZyb20gJy4vaS1tYXJrZG93bi1pdC10b2tlbic7XG5cbnR5cGUgQ29udGFpbmVyQXJncyA9IFsgdHlwZW9mIGNvbnRhaW5lciwgc3RyaW5nLCB7IHJlbmRlcjogYW55IH0gXVxuY29uc3QgRl9DT05UQUlORVJfQ0xPU0VfVEFHID0gJ2NvbnRhaW5lcl9jb2RlLWdyb3VwX2Nsb3NlJztcblxuZXhwb3J0IGNsYXNzIFBhcnNlQ29kZUdyb3VwIHtcblxuICBwdWJsaWMgcmVuZGVyKCk6IENvbnRhaW5lckFyZ3Mge1xuICAgIHJldHVybiBbIGNvbnRhaW5lciwgRU1hcmtkb3duQ29udGFpbmVyVHlwZS5DT0RFX0dST1VQLCB7XG4gICAgICByZW5kZXI6ICh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICBpZiAodGhpcy5pc09wZW5pbmdUb2tlbih0b2tlbnMsIGluZGV4KSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLm9wZW5pbmdHcm91cEhUTUwodGhpcy5nZW5lcmF0ZVRhYnModG9rZW5zLCBpbmRleCkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmNsb3NpbmdHcm91cEhUTUwoKTtcbiAgICAgIH1cbiAgICB9IF07XG4gIH1cblxuICBwcml2YXRlIGlzT3BlbmluZ1Rva2VuKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRva2Vuc1tpbmRleF0ubmVzdGluZyA9PT0gMTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVUYWJzKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBsZXQgcmVzdWx0ID0gJyc7XG5cbiAgICBmb3IgKGxldCBpID0gaW5kZXggKyAxOyAhdGhpcy5pc0Nsb3NpbmdUb2tlbih0b2tlbnMsIGkpOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLmlzQ29kZUZlbmNlVG9rZW4odG9rZW5zW2ldKSkge1xuICAgICAgICBjb25zdCB0aXRsZSA9IHRoaXMuZ2V0Q29kZUJsb2NrVGl0bGUodG9rZW5zW2ldLmluZm8pO1xuICAgICAgICBpZiAodGl0bGUpIHtcbiAgICAgICAgICByZXN1bHQgKz0gdGhpcy5nZW5lcmF0ZVRhYkJ1dHRvbih0aXRsZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBpc0Nsb3NpbmdUb2tlbih0b2tlbjogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRva2VuW2luZGV4XS5uZXN0aW5nID09PSAtMSAmJiB0b2tlbltpbmRleF0udHlwZSA9PT0gRl9DT05UQUlORVJfQ0xPU0VfVEFHO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0NvZGVGZW5jZVRva2VuKHRva2VuOiBJTWFya2Rvd25JdFRva2VuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRva2VuLnR5cGUgPT09ICdmZW5jZScgJiYgdG9rZW4udGFnID09PSAnY29kZSc7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlVGFiQnV0dG9uKHRpdGxlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgPGJ1dHRvbiBjbGFzcz1cImYtdGFiLWJ1dHRvblwiPiR7dGl0bGV9PC9idXR0b24+YDtcbiAgfVxuXG4gIHByaXZhdGUgb3BlbmluZ0dyb3VwSFRNTCh0YWJzOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgPGRpdiBjbGFzcz1cImYtY29kZS1ncm91cFwiPjxkaXYgY2xhc3M9XCJmLWNvZGUtZ3JvdXAtdGFic1wiPiR7dGFic308L2Rpdj48ZGl2IGNsYXNzPVwiZi1jb2RlLWdyb3VwLWJvZHlcIj5cXG5gO1xuICB9XG5cbiAgcHJpdmF0ZSBjbG9zaW5nR3JvdXBIVE1MKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGA8L2Rpdj48L2Rpdj5cXG5gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2RlQmxvY2tUaXRsZShkYXRhOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBkYXRhLm1hdGNoKC9cXFsoLiopXFxdLyk/LlsgMSBdIHx8IHRoaXMuZ2V0Q29kZUxhbmd1YWdlKGRhdGEpIHx8ICd0eHQnO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2RlTGFuZ3VhZ2UoZGF0YTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZGF0YS50cmltKClcbiAgICAgIC5yZXBsYWNlKC89KFxcZCopLywgJycpXG4gICAgICAucmVwbGFjZSgvXmFuc2kkLywgJycpO1xuICB9XG59XG4iXX0=
|
@@ -1,15 +0,0 @@
|
|
1
|
-
export class ParseCodeView {
|
2
|
-
render(markdown) {
|
3
|
-
const fence = markdown.renderer.rules.fence;
|
4
|
-
if (!fence) {
|
5
|
-
throw new Error('Markdown renderer does not have a fence rule.');
|
6
|
-
}
|
7
|
-
markdown.renderer.rules.fence = (tokens, index, ...rest) => {
|
8
|
-
return (`<div class="f-code-view">${fence(tokens, index, ...rest)}</div>`);
|
9
|
-
};
|
10
|
-
}
|
11
|
-
cleanTokenInfo(info) {
|
12
|
-
return info.replace(/\[.*\]/, '');
|
13
|
-
}
|
14
|
-
}
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtY29kZS12aWV3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbS1yZW5kZXIvc3JjL2xpYi9mLXBhZ2UvZi1tYXJrZG93bi9kb21haW4vbWFya2Rvd24vcGFyc2UtbWFya2Rvd24vcGFyc2UtY29kZS12aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxhQUFhO0lBRWpCLE1BQU0sQ0FBQyxRQUFvQjtRQUNoQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUE0QixDQUFDO1FBQ25FLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztRQUNuRSxDQUFDO1FBRUQsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsR0FBRyxJQUFJLEVBQUUsRUFBRTtZQUNyRixPQUFPLENBQ0wsNEJBQTZCLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFFLFFBQVEsQ0FDcEUsQ0FBQztRQUNKLENBQUMsQ0FBQTtJQUNILENBQUM7SUFFTyxjQUFjLENBQUMsSUFBWTtRQUNqQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNYXJrZG93bkl0IGZyb20gJ21hcmtkb3duLWl0JztcbmltcG9ydCB7IElNYXJrZG93bkl0VG9rZW4gfSBmcm9tICcuL2ktbWFya2Rvd24taXQtdG9rZW4nO1xuXG5leHBvcnQgY2xhc3MgUGFyc2VDb2RlVmlldyB7XG5cbiAgcHVibGljIHJlbmRlcihtYXJrZG93bjogTWFya2Rvd25JdCk6IHZvaWQge1xuICAgIGNvbnN0IGZlbmNlID0gbWFya2Rvd24ucmVuZGVyZXIucnVsZXMuZmVuY2UgYXMgdW5rbm93biBhcyBGdW5jdGlvbjtcbiAgICBpZiAoIWZlbmNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01hcmtkb3duIHJlbmRlcmVyIGRvZXMgbm90IGhhdmUgYSBmZW5jZSBydWxlLicpO1xuICAgIH1cblxuICAgIG1hcmtkb3duLnJlbmRlcmVyLnJ1bGVzLmZlbmNlID0gKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyLCAuLi5yZXN0KSA9PiB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBgPGRpdiBjbGFzcz1cImYtY29kZS12aWV3XCI+JHsgZmVuY2UodG9rZW5zLCBpbmRleCwgLi4ucmVzdCkgfTwvZGl2PmBcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjbGVhblRva2VuSW5mbyhpbmZvOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBpbmZvLnJlcGxhY2UoL1xcWy4qXFxdLywgJycpO1xuICB9XG59XG4iXX0=
|
package/esm2022/lib/f-page/f-markdown/domain/markdown/parse-markdown/parse-example-group.mjs
DELETED
@@ -1,92 +0,0 @@
|
|
1
|
-
import container from 'markdown-it-container';
|
2
|
-
import { EMarkdownContainerType } from './e-markdown-container-type';
|
3
|
-
import { getContent } from '../utils';
|
4
|
-
export class ParseExampleGroup {
|
5
|
-
render() {
|
6
|
-
return [container, EMarkdownContainerType.EXAMPLE_GROUP, {
|
7
|
-
render: (tokens, index) => {
|
8
|
-
if (this.isOpeningToken(tokens, index)) {
|
9
|
-
return this.openingExampleGroupHTML(this.generateData(tokens, index));
|
10
|
-
}
|
11
|
-
return this.closingExampleGroupHTML();
|
12
|
-
}
|
13
|
-
}];
|
14
|
-
}
|
15
|
-
isNgComponent(token) {
|
16
|
-
return token.info.trim().startsWith(EMarkdownContainerType.EXAMPLE_GROUP);
|
17
|
-
}
|
18
|
-
isOpeningToken(tokens, index) {
|
19
|
-
return tokens[index].nesting === 1;
|
20
|
-
}
|
21
|
-
generateData(tokens, index) {
|
22
|
-
let tabs = '';
|
23
|
-
let views = '';
|
24
|
-
const component = this.parseComponentTags(tokens[index]);
|
25
|
-
if (component) {
|
26
|
-
tabs += this.generateTabButton('Example');
|
27
|
-
views += this.generateExampleView(component);
|
28
|
-
}
|
29
|
-
const content = getContent(tokens, index, EMarkdownContainerType.EXAMPLE_GROUP);
|
30
|
-
if (content) {
|
31
|
-
this.parseData(content).forEach((x) => {
|
32
|
-
tabs += this.generateTabButton(x.fileName);
|
33
|
-
views += this.generateAsyncCodeView(x.url);
|
34
|
-
});
|
35
|
-
}
|
36
|
-
else {
|
37
|
-
tabs = '';
|
38
|
-
}
|
39
|
-
return { tabs, views };
|
40
|
-
}
|
41
|
-
parseComponentTags(token) {
|
42
|
-
if (!this.isNgComponent(token)) {
|
43
|
-
return { tag: '', height: '' };
|
44
|
-
}
|
45
|
-
let cleanedInput = token.info.replace(/ng-component\s*/, '');
|
46
|
-
const tagMatch = cleanedInput.match(/<([a-zA-Z0-9-]+)>.*<\/\1>/);
|
47
|
-
const heightMatch = cleanedInput.match(/\[height\]="(\d+)"/);
|
48
|
-
if (!tagMatch) {
|
49
|
-
throw new Error("Invalid input: no valid tag found");
|
50
|
-
}
|
51
|
-
const tag = tagMatch[0];
|
52
|
-
const height = heightMatch ? heightMatch[1] : undefined;
|
53
|
-
return { tag, height };
|
54
|
-
}
|
55
|
-
parseData(data) {
|
56
|
-
return data.split('\n').map(this.extractFileData).filter(Boolean);
|
57
|
-
}
|
58
|
-
extractFileData(line) {
|
59
|
-
const match = line.match(/\[(.+?)\] <<< (.+)/);
|
60
|
-
return match ? { fileName: match[1], url: match[2] } : null;
|
61
|
-
}
|
62
|
-
openingExampleGroupHTML(data) {
|
63
|
-
return `<div class="f-code-group">${this.groupTabsHTML(data.tabs)}${this.groupBodyHTML(data.views)}`;
|
64
|
-
}
|
65
|
-
groupTabsHTML(content) {
|
66
|
-
let result = `<div class="f-code-group-tabs">${content}</div>`;
|
67
|
-
if (!content) {
|
68
|
-
result = '';
|
69
|
-
}
|
70
|
-
return result;
|
71
|
-
}
|
72
|
-
generateTabButton(content) {
|
73
|
-
return `<button class="f-tab-button">${content}</button>`;
|
74
|
-
}
|
75
|
-
groupBodyHTML(content) {
|
76
|
-
return `<div class="f-code-group-body">${content}`;
|
77
|
-
}
|
78
|
-
generateExampleView(content) {
|
79
|
-
let height = '';
|
80
|
-
if (content.height) {
|
81
|
-
height = `style="height: ${content.height}px"`;
|
82
|
-
}
|
83
|
-
return `<div class="f-example-view" ${height}>${content.tag}</div>`;
|
84
|
-
}
|
85
|
-
generateAsyncCodeView(content) {
|
86
|
-
return `<div class="f-async-code-view">${content}</div>`;
|
87
|
-
}
|
88
|
-
closingExampleGroupHTML() {
|
89
|
-
return `</div></div>\n`;
|
90
|
-
}
|
91
|
-
}
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtZXhhbXBsZS1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL20tcmVuZGVyL3NyYy9saWIvZi1wYWdlL2YtbWFya2Rvd24vZG9tYWluL21hcmtkb3duL3BhcnNlLW1hcmtkb3duL3BhcnNlLWV4YW1wbGUtZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFckUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUl0QyxNQUFNLE9BQU8saUJBQWlCO0lBRXJCLE1BQU07UUFDWCxPQUFPLENBQUUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLGFBQWEsRUFBRTtnQkFDeEQsTUFBTSxFQUFFLENBQUMsTUFBMEIsRUFBRSxLQUFhLEVBQUUsRUFBRTtvQkFDcEQsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDO3dCQUN2QyxPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO29CQUN4RSxDQUFDO29CQUNELE9BQU8sSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7Z0JBQ3hDLENBQUM7YUFDRixDQUFFLENBQUM7SUFDTixDQUFDO0lBRU8sYUFBYSxDQUFDLEtBQXVCO1FBQzNDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVPLGNBQWMsQ0FBQyxNQUEwQixFQUFFLEtBQWE7UUFDOUQsT0FBTyxNQUFNLENBQUUsS0FBSyxDQUFFLENBQUMsT0FBTyxLQUFLLENBQUMs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R0FBSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUUsRUFBRSxDQUFDO0lBQzNHLENBQUM7SUFFTyxhQUFhLENBQUMsT0FBZTtRQUNuQyxJQUFJLE1BQU0sR0FBRyxrQ0FBbUMsT0FBUSxRQUFRLENBQUM7UUFDakUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU8saUJBQWlCLENBQUMsT0FBZTtRQUN2QyxPQUFPLGdDQUFpQyxPQUFRLFdBQVcsQ0FBQztJQUM5RCxDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQWU7UUFDbkMsT0FBTyxrQ0FBbUMsT0FBUSxFQUFFLENBQUM7SUFDdkQsQ0FBQztJQUVPLG1CQUFtQixDQUFDLE9BQXlDO1FBQ25FLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuQixNQUFNLEdBQUcsa0JBQW1CLE9BQU8sQ0FBQyxNQUFPLEtBQUssQ0FBQztRQUNuRCxDQUFDO1FBQ0QsT0FBTywrQkFBZ0MsTUFBTyxJQUFLLE9BQU8sQ0FBQyxHQUFJLFFBQVEsQ0FBQztJQUMxRSxDQUFDO0lBRU8scUJBQXFCLENBQUMsT0FBZTtRQUMzQyxPQUFPLGtDQUFtQyxPQUFRLFFBQVEsQ0FBQztJQUM3RCxDQUFDO0lBRU8sdUJBQXVCO1FBQzdCLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbnRhaW5lciBmcm9tICdtYXJrZG93bi1pdC1jb250YWluZXInO1xuaW1wb3J0IHsgRU1hcmtkb3duQ29udGFpbmVyVHlwZSB9IGZyb20gJy4vZS1tYXJrZG93bi1jb250YWluZXItdHlwZSc7XG5pbXBvcnQgeyBJTWFya2Rvd25JdFRva2VuIH0gZnJvbSAnLi9pLW1hcmtkb3duLWl0LXRva2VuJztcbmltcG9ydCB7IGdldENvbnRlbnQgfSBmcm9tICcuLi91dGlscyc7XG5cbnR5cGUgQ29udGFpbmVyQXJncyA9IFsgdHlwZW9mIGNvbnRhaW5lciwgc3RyaW5nLCB7IHJlbmRlcjogYW55IH0gXVxuXG5leHBvcnQgY2xhc3MgUGFyc2VFeGFtcGxlR3JvdXAge1xuXG4gIHB1YmxpYyByZW5kZXIoKTogQ29udGFpbmVyQXJncyB7XG4gICAgcmV0dXJuIFsgY29udGFpbmVyLCBFTWFya2Rvd25Db250YWluZXJUeXBlLkVYQU1QTEVfR1JPVVAsIHtcbiAgICAgIHJlbmRlcjogKHRva2VuczogSU1hcmtkb3duSXRUb2tlbltdLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmlzT3BlbmluZ1Rva2VuKHRva2VucywgaW5kZXgpKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMub3BlbmluZ0V4YW1wbGVHcm91cEhUTUwodGhpcy5nZW5lcmF0ZURhdGEodG9rZW5zLCBpbmRleCkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmNsb3NpbmdFeGFtcGxlR3JvdXBIVE1MKCk7XG4gICAgICB9XG4gICAgfSBdO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05nQ29tcG9uZW50KHRva2VuOiBJTWFya2Rvd25JdFRva2VuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRva2VuLmluZm8udHJpbSgpLnN0YXJ0c1dpdGgoRU1hcmtkb3duQ29udGFpbmVyVHlwZS5FWEFNUExFX0dST1VQKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNPcGVuaW5nVG9rZW4odG9rZW5zOiBJTWFya2Rvd25JdFRva2VuW10sIGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdG9rZW5zWyBpbmRleCBdLm5lc3RpbmcgPT09IDE7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlRGF0YSh0b2tlbnM6IElNYXJrZG93bkl0VG9rZW5bXSwgaW5kZXg6IG51bWJlcik6IHsgdGFiczogc3RyaW5nLCB2aWV3czogc3RyaW5nIH0ge1xuICAgIGxldCB0YWJzID0gJyc7XG4gICAgbGV0IHZpZXdzID0gJyc7XG4gICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5wYXJzZUNvbXBvbmVudFRhZ3ModG9rZW5zWyBpbmRleCBdKTtcbiAgICBpZiAoY29tcG9uZW50KSB7XG4gICAgICB0YWJzICs9IHRoaXMuZ2VuZXJhdGVUYWJCdXR0b24oJ0V4YW1wbGUnKTtcbiAgICAgIHZpZXdzICs9IHRoaXMuZ2VuZXJhdGVFeGFtcGxlVmlldyhjb21wb25lbnQpO1xuICAgIH1cbiAgICBjb25zdCBjb250ZW50ID0gZ2V0Q29udGVudCh0b2tlbnMsIGluZGV4LCBFTWFya2Rvd25Db250YWluZXJUeXBlLkVYQU1QTEVfR1JPVVApO1xuICAgIGlmIChjb250ZW50KSB7XG4gICAgICB0aGlzLnBhcnNlRGF0YShjb250ZW50KS5mb3JFYWNoKCh4KSA9PiB7XG4gICAgICAgIHRhYnMgKz0gdGhpcy5nZW5lcmF0ZVRhYkJ1dHRvbih4LmZpbGVOYW1lKTtcbiAgICAgICAgdmlld3MgKz0gdGhpcy5nZW5lcmF0ZUFzeW5jQ29kZVZpZXcoeC51cmwpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRhYnMgPSAnJztcbiAgICB9XG5cbiAgICByZXR1cm4geyB0YWJzLCB2aWV3cyB9O1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZUNvbXBvbmVudFRhZ3ModG9rZW46IElNYXJrZG93bkl0VG9rZW4pOiB7IHRhZzogc3RyaW5nLCBoZWlnaHQ/OiBzdHJpbmcgfSB7XG4gICAgaWYgKCF0aGlzLmlzTmdDb21wb25lbnQodG9rZW4pKSB7XG4gICAgICByZXR1cm4geyB0YWc6ICcnLCBoZWlnaHQ6ICcnIH07XG4gICAgfVxuXG4gICAgbGV0IGNsZWFuZWRJbnB1dCA9IHRva2VuLmluZm8ucmVwbGFjZSgvbmctY29tcG9uZW50XFxzKi8sICcnKTtcblxuICAgIGNvbnN0IHRhZ01hdGNoID0gY2xlYW5lZElucHV0Lm1hdGNoKC88KFthLXpBLVowLTktXSspPi4qPFxcL1xcMT4vKTtcbiAgICBjb25zdCBoZWlnaHRNYXRjaCA9IGNsZWFuZWRJbnB1dC5tYXRjaCgvXFxbaGVpZ2h0XFxdPVwiKFxcZCspXCIvKTtcblxuICAgIGlmICghdGFnTWF0Y2gpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgaW5wdXQ6IG5vIHZhbGlkIHRhZyBmb3VuZFwiKTtcbiAgICB9XG5cbiAgICBjb25zdCB0YWcgPSB0YWdNYXRjaFsgMCBdO1xuICAgIGNvbnN0IGhlaWdodCA9IGhlaWdodE1hdGNoID8gaGVpZ2h0TWF0Y2hbIDEgXSA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiB7IHRhZywgaGVpZ2h0IH07XG4gIH1cblxuICBwcml2YXRlIHBhcnNlRGF0YShkYXRhOiBzdHJpbmcpOiB7IGZpbGVOYW1lOiBzdHJpbmcsIHVybDogc3RyaW5nIH1bXSB7XG4gICAgcmV0dXJuIGRhdGEuc3BsaXQoJ1xcbicpLm1hcCh0aGlzLmV4dHJhY3RGaWxlRGF0YSkuZmlsdGVyKEJvb2xlYW4pIGFzIHsgZmlsZU5hbWU6IHN0cmluZywgdXJsOiBzdHJpbmcgfVtdO1xuICB9XG5cbiAgcHJpdmF0ZSBleHRyYWN0RmlsZURhdGEobGluZTogc3RyaW5nKTogeyBmaWxlTmFtZTogc3RyaW5nLCB1cmw6IHN0cmluZyB9IHwgbnVsbCB7XG4gICAgY29uc3QgbWF0Y2ggPSBsaW5lLm1hdGNoKC9cXFsoLis/KVxcXSA8PDwgKC4rKS8pO1xuICAgIHJldHVybiBtYXRjaCA/IHsgZmlsZU5hbWU6IG1hdGNoWyAxIF0sIHVybDogbWF0Y2hbIDIgXSB9IDogbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgb3BlbmluZ0V4YW1wbGVHcm91cEhUTUwoZGF0YTogeyB0YWJzOiBzdHJpbmcsIHZpZXdzOiBzdHJpbmcgfSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGA8ZGl2IGNsYXNzPVwiZi1jb2RlLWdyb3VwXCI+JHsgdGhpcy5ncm91cFRhYnNIVE1MKGRhdGEudGFicykgfSR7IHRoaXMuZ3JvdXBCb2R5SFRNTChkYXRhLnZpZXdzKSB9YDtcbiAgfVxuXG4gIHByaXZhdGUgZ3JvdXBUYWJzSFRNTChjb250ZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCByZXN1bHQgPSBgPGRpdiBjbGFzcz1cImYtY29kZS1ncm91cC10YWJzXCI+JHsgY29udGVudCB9PC9kaXY+YDtcbiAgICBpZiAoIWNvbnRlbnQpIHtcbiAgICAgIHJlc3VsdCA9ICcnO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZVRhYkJ1dHRvbihjb250ZW50OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgPGJ1dHRvbiBjbGFzcz1cImYtdGFiLWJ1dHRvblwiPiR7IGNvbnRlbnQgfTwvYnV0dG9uPmA7XG4gIH1cblxuICBwcml2YXRlIGdyb3VwQm9keUhUTUwoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYDxkaXYgY2xhc3M9XCJmLWNvZGUtZ3JvdXAtYm9keVwiPiR7IGNvbnRlbnQgfWA7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlRXhhbXBsZVZpZXcoY29udGVudDogeyB0YWc6IHN0cmluZywgaGVpZ2h0Pzogc3RyaW5nIH0pOiBzdHJpbmcge1xuICAgIGxldCBoZWlnaHQgPSAnJztcbiAgICBpZiAoY29udGVudC5oZWlnaHQpIHtcbiAgICAgIGhlaWdodCA9IGBzdHlsZT1cImhlaWdodDogJHsgY29udGVudC5oZWlnaHQgfXB4XCJgO1xuICAgIH1cbiAgICByZXR1cm4gYDxkaXYgY2xhc3M9XCJmLWV4YW1wbGUtdmlld1wiICR7IGhlaWdodCB9PiR7IGNvbnRlbnQudGFnIH08L2Rpdj5gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZUFzeW5jQ29kZVZpZXcoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYDxkaXYgY2xhc3M9XCJmLWFzeW5jLWNvZGUtdmlld1wiPiR7IGNvbnRlbnQgfTwvZGl2PmA7XG4gIH1cblxuICBwcml2YXRlIGNsb3NpbmdFeGFtcGxlR3JvdXBIVE1MKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGA8L2Rpdj48L2Rpdj5cXG5gO1xuICB9XG59XG4iXX0=
|