{"version":3,"file":"ng-doc-app-services-highlighter.mjs","sources":["../tmp-esm2022/services/highlighter/highlighter.service.js","../tmp-esm2022/services/highlighter/ng-doc-app-services-highlighter.js"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { NG_DOC_SHIKI_THEME } from '@ng-doc/app/tokens';\nimport { createHighlighterCore } from 'shiki/core';\nimport getWasm from 'shiki/wasm';\nimport * as i0 from \"@angular/core\";\nexport class NgDocHighlighterService {\n    constructor() {\n        this.theme = inject(NG_DOC_SHIKI_THEME);\n    }\n    async initialize(config) {\n        if (NgDocHighlighterService.highlighter) {\n            return;\n        }\n        NgDocHighlighterService.highlighter = (await createHighlighterCore({\n            themes: [\n                import('shiki/themes/github-light.mjs'),\n                import('shiki/themes/ayu-dark.mjs'),\n                ...(config?.themes ?? []),\n            ],\n            langs: [import('shiki/langs/angular-html.mjs')],\n            loadWasm: getWasm,\n        }));\n    }\n    highlight(code) {\n        return (NgDocHighlighterService.highlighter?.codeToHtml(code, {\n            lang: 'angular-html',\n            themes: {\n                light: this.theme.light || 'github-light',\n                dark: this.theme.dark || 'ayu-dark',\n            },\n        }) ?? '');\n    }\n    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: NgDocHighlighterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n    static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: NgDocHighlighterService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: NgDocHighlighterService, decorators: [{\n            type: Injectable,\n            args: [{\n                    providedIn: 'root',\n                }]\n        }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL3NlcnZpY2VzL2hpZ2hsaWdodGVyL2hpZ2hsaWdodGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHeEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ25ELE9BQU8sT0FBTyxNQUFNLFlBQVksQ0FBQzs7QUFtQmpDLE1BQU0sT0FBTyx1QkFBdUI7SUFIcEM7UUFNcUIsVUFBSyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0tBNEJ2RDtJQTFCQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQStCO1FBQzlDLElBQUksdUJBQXVCLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDeEMsT0FBTztRQUNULENBQUM7UUFDRCx1QkFBdUIsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxNQUFNLHFCQUFxQixDQUFDO1lBQ2pFLE1BQU0sRUFBRTtnQkFDTixNQUFNLENBQUMsK0JBQStCLENBQUM7Z0JBQ3ZDLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQztnQkFDbkMsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDO2FBQzFCO1lBQ0QsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLDhCQUE4QixDQUFDLENBQUM7WUFDL0MsUUFBUSxFQUFFLE9BQU87U0FDbEIsQ0FBQyxDQUF1QyxDQUFDO0lBQzVDLENBQUM7SUFFRCxTQUFTLENBQUMsSUFBWTtRQUNwQixPQUFPLENBQ0wsdUJBQXVCLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxJQUFJLEVBQUU7WUFDcEQsSUFBSSxFQUFFLGNBQWM7WUFDcEIsTUFBTSxFQUFFO2dCQUNOLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxjQUFjO2dCQUN6QyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksVUFBVTthQUNwQztTQUNGLENBQUMsSUFBSSxFQUFFLENBQ1QsQ0FBQztJQUNKLENBQUM7OEdBOUJVLHVCQUF1QjtrSEFBdkIsdUJBQXVCLGNBRnRCLE1BQU07OzJGQUVQLHVCQUF1QjtrQkFIbkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX0RPQ19TSElLSV9USEVNRSB9IGZyb20gJ0BuZy1kb2MvYXBwL3Rva2Vucyc7XG5pbXBvcnQgeyBIaWdobGlnaHRlckdlbmVyaWMgfSBmcm9tICdAc2hpa2lqcy9jb3JlL3R5cGVzJztcbmltcG9ydCB7IFRoZW1lSW5wdXQgfSBmcm9tICdzaGlraSc7XG5pbXBvcnQgeyBjcmVhdGVIaWdobGlnaHRlckNvcmUgfSBmcm9tICdzaGlraS9jb3JlJztcbmltcG9ydCBnZXRXYXNtIGZyb20gJ3NoaWtpL3dhc20nO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5nRG9jSGlnaGxpZ2h0ZXJDb25maWcge1xuICAvKipcbiAgICogVGhlbWVzIHNvdXJjZXMuXG4gICAqL1xuICB0aGVtZXM/OiBUaGVtZUlucHV0W107XG4gIC8qKlxuICAgKiBUaGVtZSB0aGF0IHdpbGwgYmUgdXNlZCBmb3IgcmVuZGVyaW5nIHRoZSBjb2RlIGJsb2Nrcy5cbiAgICovXG4gIHRoZW1lPzoge1xuICAgIGxpZ2h0OiBzdHJpbmc7XG4gICAgZGFyazogc3RyaW5nO1xuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmdEb2NIaWdobGlnaHRlclNlcnZpY2Uge1xuICBwcml2YXRlIHN0YXRpYyBoaWdobGlnaHRlcj86IEhpZ2hsaWdodGVyR2VuZXJpYzxzdHJpbmcsIHN0cmluZz47XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRoZW1lID0gaW5qZWN0KE5HX0RPQ19TSElLSV9USEVNRSk7XG5cbiAgYXN5bmMgaW5pdGlhbGl6ZShjb25maWc/OiBOZ0RvY0hpZ2hsaWdodGVyQ29uZmlnKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKE5nRG9jSGlnaGxpZ2h0ZXJTZXJ2aWNlLmhpZ2hsaWdodGVyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIE5nRG9jSGlnaGxpZ2h0ZXJTZXJ2aWNlLmhpZ2hsaWdodGVyID0gKGF3YWl0IGNyZWF0ZUhpZ2hsaWdodGVyQ29yZSh7XG4gICAgICB0aGVtZXM6IFtcbiAgICAgICAgaW1wb3J0KCdzaGlraS90aGVtZXMvZ2l0aHViLWxpZ2h0Lm1qcycpLFxuICAgICAgICBpbXBvcnQoJ3NoaWtpL3RoZW1lcy9heXUtZGFyay5tanMnKSxcbiAgICAgICAgLi4uKGNvbmZpZz8udGhlbWVzID8/IFtdKSxcbiAgICAgIF0sXG4gICAgICBsYW5nczogW2ltcG9ydCgnc2hpa2kvbGFuZ3MvYW5ndWxhci1odG1sLm1qcycpXSxcbiAgICAgIGxvYWRXYXNtOiBnZXRXYXNtLFxuICAgIH0pKSBhcyBIaWdobGlnaHRlckdlbmVyaWM8c3RyaW5nLCBzdHJpbmc+O1xuICB9XG5cbiAgaGlnaGxpZ2h0KGNvZGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIChcbiAgICAgIE5nRG9jSGlnaGxpZ2h0ZXJTZXJ2aWNlLmhpZ2hsaWdodGVyPy5jb2RlVG9IdG1sKGNvZGUsIHtcbiAgICAgICAgbGFuZzogJ2FuZ3VsYXItaHRtbCcsXG4gICAgICAgIHRoZW1lczoge1xuICAgICAgICAgIGxpZ2h0OiB0aGlzLnRoZW1lLmxpZ2h0IHx8ICdnaXRodWItbGlnaHQnLFxuICAgICAgICAgIGRhcms6IHRoaXMudGhlbWUuZGFyayB8fCAnYXl1LWRhcmsnLFxuICAgICAgICB9LFxuICAgICAgfSkgPz8gJydcbiAgICApO1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctZG9jLWFwcC1zZXJ2aWNlcy1oaWdobGlnaHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL3NlcnZpY2VzL2hpZ2hsaWdodGVyL25nLWRvYy1hcHAtc2VydmljZXMtaGlnaGxpZ2h0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":";;;;;;AAKO,MAAM,uBAAuB,CAAC;AACrC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC/C;AACA,IAAI,MAAM,UAAU,CAAC,MAAM,EAAE;AAC7B,QAAQ,IAAI,uBAAuB,CAAC,WAAW,EAAE;AACjD,YAAY;AACZ;AACA,QAAQ,uBAAuB,CAAC,WAAW,IAAI,MAAM,qBAAqB,CAAC;AAC3E,YAAY,MAAM,EAAE;AACpB,gBAAgB,OAAO,+BAA+B,CAAC;AACvD,gBAAgB,OAAO,2BAA2B,CAAC;AACnD,gBAAgB,IAAI,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC;AACzC,aAAa;AACb,YAAY,KAAK,EAAE,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAC3D,YAAY,QAAQ,EAAE,OAAO;AAC7B,SAAS,CAAC,CAAC;AACX;AACA,IAAI,SAAS,CAAC,IAAI,EAAE;AACpB,QAAQ,QAAQ,uBAAuB,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,EAAE;AACtE,YAAY,IAAI,EAAE,cAAc;AAChC,YAAY,MAAM,EAAE;AACpB,gBAAgB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,cAAc;AACzD,gBAAgB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,UAAU;AACnD,aAAa;AACb,SAAS,CAAC,IAAI,EAAE;AAChB;AACA,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AAC1L,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACjK;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,CAAC;AACjI,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE,MAAM;AACtC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACxCb;AACA;AACA;;;;"}