@analogjs/platform 3.0.0-alpha.8 → 3.0.0-alpha.9
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/package.json +5 -13
- package/src/index.d.ts +1 -1
- package/src/index.js +7 -3
- package/src/index.js.map +1 -0
- package/src/lib/clear-client-page-endpoint.js +22 -34
- package/src/lib/clear-client-page-endpoint.js.map +1 -0
- package/src/lib/content/marked/index.js +10 -6
- package/src/lib/content/marked/index.js.map +1 -0
- package/src/lib/content/marked/marked-content-highlighter.js +6 -3
- package/src/lib/content/marked/marked-content-highlighter.js.map +1 -0
- package/src/lib/content/marked/marked-setup.service.js +44 -54
- package/src/lib/content/marked/marked-setup.service.js.map +1 -0
- package/src/lib/content/prism/angular.js +18 -19
- package/src/lib/content/prism/angular.js.map +1 -0
- package/src/lib/content/prism/index.js +10 -7
- package/src/lib/content/prism/index.js.map +1 -0
- package/src/lib/content/prism/prism-highlighter.js +33 -33
- package/src/lib/content/prism/prism-highlighter.js.map +1 -0
- package/src/lib/content/shiki/index.js +19 -28
- package/src/lib/content/shiki/index.js.map +1 -0
- package/src/lib/content/shiki/shiki-highlighter.js +45 -44
- package/src/lib/content/shiki/shiki-highlighter.js.map +1 -0
- package/src/lib/content-plugin.js +155 -222
- package/src/lib/content-plugin.js.map +1 -0
- package/src/lib/deps-plugin.js +71 -78
- package/src/lib/deps-plugin.js.map +1 -0
- package/src/lib/nx-plugin/package.json +2 -4
- package/src/lib/nx-plugin/src/executors/vite/compat.js +7 -7
- package/src/lib/nx-plugin/src/executors/vite/compat.js.map +1 -1
- package/src/lib/nx-plugin/src/executors/vite/schema.d.ts +1 -1
- package/src/lib/nx-plugin/src/executors/vite/vite.impl.js +6 -4
- package/src/lib/nx-plugin/src/executors/vite/vite.impl.js.map +1 -1
- package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.js +7 -7
- package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.js.map +1 -1
- package/src/lib/nx-plugin/src/executors/vite-dev-server/schema.d.ts +1 -1
- package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.js +6 -4
- package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.js.map +1 -1
- package/src/lib/nx-plugin/src/executors/vitest/compat.js +7 -7
- package/src/lib/nx-plugin/src/executors/vitest/compat.js.map +1 -1
- package/src/lib/nx-plugin/src/executors/vitest/schema.d.ts +1 -1
- package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.js +6 -4
- package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/compat.js +7 -7
- package/src/lib/nx-plugin/src/generators/app/compat.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/main.ts__template__ +0 -6
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/vite.config.ts__template__ +0 -8
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/src/app/app.config.ts__template__ +0 -6
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/vite.config.ts__template__ +0 -17
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/src/app/app.config.ts__template__ +0 -6
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/vite.config.ts__template__ +0 -17
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/src/app/app.config.ts__template__ +0 -6
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/vite.config.ts__template__ +0 -8
- package/src/lib/nx-plugin/src/generators/app/generator.js +78 -92
- package/src/lib/nx-plugin/src/generators/app/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.js +11 -12
- package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js +72 -81
- package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js +23 -58
- package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.js +12 -55
- package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-files.js +15 -16
- package/src/lib/nx-plugin/src/generators/app/lib/add-files.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.js +14 -13
- package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.js +17 -29
- package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.js +59 -95
- package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js +8 -44
- package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js +17 -20
- package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js +59 -105
- package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js +14 -18
- package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js +35 -54
- package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js +41 -68
- package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.d.ts +0 -1
- package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.js +9 -11
- package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js +24 -43
- package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.d.ts +0 -5
- package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js +29 -36
- package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.d.ts +5 -10
- package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js +30 -37
- package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.js +11 -16
- package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions.d.ts +0 -10
- package/src/lib/nx-plugin/src/generators/app/versions.js +28 -42
- package/src/lib/nx-plugin/src/generators/app/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/compat.js +7 -7
- package/src/lib/nx-plugin/src/generators/init/compat.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/generator.js +54 -65
- package/src/lib/nx-plugin/src/generators/init/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js +19 -20
- package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js +20 -21
- package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js +56 -66
- package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.js +12 -11
- package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js +17 -21
- package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-main.js +12 -15
- package/src/lib/nx-plugin/src/generators/init/lib/update-main.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js +19 -31
- package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js +43 -51
- package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.js +27 -34
- package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js +19 -20
- package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/page/generator.js +34 -44
- package/src/lib/nx-plugin/src/generators/page/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/preset/generator.js +11 -43
- package/src/lib/nx-plugin/src/generators/preset/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/setup-vitest/compat.js +7 -7
- package/src/lib/nx-plugin/src/generators/setup-vitest/compat.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js +35 -42
- package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.js +7 -7
- package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.js +20 -27
- package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js +19 -22
- package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js.map +1 -1
- package/src/lib/nx-plugin/src/index.js +0 -2
- package/src/lib/nx-plugin/src/utils/version-utils.js +20 -27
- package/src/lib/nx-plugin/src/utils/version-utils.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/dependencies.js +42 -62
- package/src/lib/nx-plugin/src/utils/versions/dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js +49 -83
- package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js +19 -20
- package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js +19 -20
- package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.d.ts +5 -5
- package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js +22 -23
- package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js.map +1 -1
- package/src/lib/platform-plugin.js +57 -63
- package/src/lib/platform-plugin.js.map +1 -0
- package/src/lib/router-plugin.js +135 -185
- package/src/lib/router-plugin.js.map +1 -0
- package/src/lib/ssr/inject-html-plugin.js +25 -25
- package/src/lib/ssr/inject-html-plugin.js.map +1 -0
- package/src/lib/ssr/ssr-build-plugin.js +53 -88
- package/src/lib/ssr/ssr-build-plugin.js.map +1 -0
- package/src/lib/utils/rolldown.js +12 -8
- package/src/lib/utils/rolldown.js.map +1 -0
- package/src/server-mode-plugin.js +16 -20
- package/src/server-mode-plugin.js.map +1 -0
- package/README.md +0 -5
- package/src/lib/content/prism/options.js +0 -1
- package/src/lib/content/shiki/options.js +0 -1
- package/src/lib/nx-plugin/README.md +0 -23
- package/src/lib/nx-plugin/src/index.js.map +0 -1
- package/src/lib/options.js +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@analogjs/platform",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.9",
|
|
4
4
|
"description": "The fullstack meta-framework for Angular",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": "Brandon Roberts <robertsbt@gmail.com>",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"nitro": "3.0.260311-beta",
|
|
32
|
-
"@analogjs/vite-plugin-angular": "^3.0.0-alpha.
|
|
33
|
-
"@analogjs/vite-plugin-nitro": "^3.0.0-alpha.
|
|
32
|
+
"@analogjs/vite-plugin-angular": "^3.0.0-alpha.9",
|
|
33
|
+
"@analogjs/vite-plugin-nitro": "^3.0.0-alpha.9",
|
|
34
34
|
"rolldown": "^1.0.0-rc.9",
|
|
35
35
|
"vitefu": "^1.1.2"
|
|
36
36
|
},
|
|
@@ -46,11 +46,6 @@
|
|
|
46
46
|
"shiki": "^1.29.2",
|
|
47
47
|
"vite": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"
|
|
48
48
|
},
|
|
49
|
-
"overrides": {
|
|
50
|
-
"@nx/vite": {
|
|
51
|
-
"vite": "$vite"
|
|
52
|
-
}
|
|
53
|
-
},
|
|
54
49
|
"peerDependenciesMeta": {
|
|
55
50
|
"@nx/angular": {
|
|
56
51
|
"optional": true
|
|
@@ -93,8 +88,5 @@
|
|
|
93
88
|
"publishConfig": {
|
|
94
89
|
"access": "public",
|
|
95
90
|
"provenance": true
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
"module": "./src/index.js",
|
|
99
|
-
"main": "./src/index.js"
|
|
100
|
-
}
|
|
91
|
+
}
|
|
92
|
+
}
|
package/src/index.d.ts
CHANGED
package/src/index.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
import { platformPlugin } from
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { platformPlugin } from "./lib/platform-plugin.js";
|
|
2
|
+
//#region packages/platform/src/index.ts
|
|
3
|
+
var src_default = platformPlugin;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { src_default as default };
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../packages/platform/src/index.ts"],"sourcesContent":["import { platformPlugin } from './lib/platform-plugin.js';\n\nexport type { Options, PrerenderContentFile } from './lib/options';\nexport default platformPlugin;\n"],"mappings":";;AAGA,IAAA,cAAe"}
|
|
@@ -1,35 +1,23 @@
|
|
|
1
|
-
import { normalizePath } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
};
|
|
20
|
-
},
|
|
21
|
-
transform(_code, id, options) {
|
|
22
|
-
if (!options?.ssr &&
|
|
23
|
-
id.includes(normalizePath('src/app/pages')) &&
|
|
24
|
-
id.endsWith('.server.ts')) {
|
|
25
|
-
return {
|
|
26
|
-
code: 'export default undefined;',
|
|
27
|
-
map: null,
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
return;
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
];
|
|
1
|
+
import { normalizePath } from "vite";
|
|
2
|
+
//#region packages/platform/src/lib/clear-client-page-endpoint.ts
|
|
3
|
+
function clearClientPageEndpointsPlugin() {
|
|
4
|
+
return [{
|
|
5
|
+
name: "analogjs-platform-clear-client-page-endpoint",
|
|
6
|
+
apply: "build",
|
|
7
|
+
config() {
|
|
8
|
+
return { build: { rollupOptions: { onwarn(warning) {
|
|
9
|
+
if (warning.message.includes("empty chunk") && warning.message.endsWith(".server")) return;
|
|
10
|
+
} } } };
|
|
11
|
+
},
|
|
12
|
+
transform(_code, id, options) {
|
|
13
|
+
if (!options?.ssr && id.includes(normalizePath("src/app/pages")) && id.endsWith(".server.ts")) return {
|
|
14
|
+
code: "export default undefined;",
|
|
15
|
+
map: null
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
}];
|
|
34
19
|
}
|
|
35
|
-
//#
|
|
20
|
+
//#endregion
|
|
21
|
+
export { clearClientPageEndpointsPlugin };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=clear-client-page-endpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-client-page-endpoint.js","names":[],"sources":["../../../../../packages/platform/src/lib/clear-client-page-endpoint.ts"],"sourcesContent":["import { Plugin, normalizePath } from 'vite';\n\nexport function clearClientPageEndpointsPlugin(): Plugin[] {\n return [\n {\n name: 'analogjs-platform-clear-client-page-endpoint',\n apply: 'build',\n config() {\n return {\n build: {\n rollupOptions: {\n onwarn(warning) {\n if (\n warning.message.includes('empty chunk') &&\n warning.message.endsWith('.server')\n ) {\n return;\n }\n },\n },\n },\n };\n },\n transform(_code, id, options) {\n if (\n !options?.ssr &&\n id.includes(normalizePath('src/app/pages')) &&\n id.endsWith('.server.ts')\n ) {\n return {\n code: 'export default undefined;',\n map: null,\n };\n }\n\n return;\n },\n },\n ];\n}\n"],"mappings":";;AAEA,SAAgB,iCAA2C;AACzD,QAAO,CACL;EACE,MAAM;EACN,OAAO;EACP,SAAS;AACP,UAAO,EACL,OAAO,EACL,eAAe,EACb,OAAO,SAAS;AACd,QACE,QAAQ,QAAQ,SAAS,cAAc,IACvC,QAAQ,QAAQ,SAAS,UAAU,CAEnC;MAGL,EACF,EACF;;EAEH,UAAU,OAAO,IAAI,SAAS;AAC5B,OACE,CAAC,SAAS,OACV,GAAG,SAAS,cAAc,gBAAgB,CAAC,IAC3C,GAAG,SAAS,aAAa,CAEzB,QAAO;IACL,MAAM;IACN,KAAK;IACN;;EAKN,CACF"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import { MarkedSetupService } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { MarkedSetupService } from "./marked-setup.service.js";
|
|
2
|
+
//#region packages/platform/src/lib/content/marked/index.ts
|
|
3
|
+
var markedSetupInstance;
|
|
4
|
+
function getMarkedSetup(options, highlighter) {
|
|
5
|
+
markedSetupInstance ??= new MarkedSetupService(options, highlighter);
|
|
6
|
+
return markedSetupInstance;
|
|
6
7
|
}
|
|
7
|
-
//#
|
|
8
|
+
//#endregion
|
|
9
|
+
export { getMarkedSetup };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../../packages/platform/src/lib/content/marked/index.ts"],"sourcesContent":["import { MarkedExtension } from 'marked';\nimport { MarkedSetupService } from './marked-setup.service.js';\nimport { MarkedContentHighlighter } from './marked-content-highlighter.js';\n\nexport type WithMarkedOptions = {\n mangle?: boolean;\n extensions?: MarkedExtension[];\n};\n\nlet markedSetupInstance: MarkedSetupService;\n\nexport function getMarkedSetup(\n options?: WithMarkedOptions,\n highlighter?: MarkedContentHighlighter,\n): MarkedSetupService {\n markedSetupInstance ??= new MarkedSetupService(options, highlighter);\n return markedSetupInstance;\n}\n"],"mappings":";;AASA,IAAI;AAEJ,SAAgB,eACd,SACA,aACoB;AACpB,yBAAwB,IAAI,mBAAmB,SAAS,YAAY;AACpE,QAAO"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
}
|
|
3
|
-
//#
|
|
1
|
+
//#region packages/platform/src/lib/content/marked/marked-content-highlighter.ts
|
|
2
|
+
var MarkedContentHighlighter = class {};
|
|
3
|
+
//#endregion
|
|
4
|
+
export { MarkedContentHighlighter };
|
|
5
|
+
|
|
6
|
+
//# sourceMappingURL=marked-content-highlighter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marked-content-highlighter.js","names":[],"sources":["../../../../../../../packages/platform/src/lib/content/marked/marked-content-highlighter.ts"],"sourcesContent":["export abstract class MarkedContentHighlighter {\n augmentCodeBlock?(code: string, lang: string): string;\n abstract getHighlightExtension(): import('marked').MarkedExtension;\n}\n"],"mappings":";AAAA,IAAsB,2BAAtB,MAA+C"}
|
|
@@ -1,54 +1,44 @@
|
|
|
1
|
-
import { marked } from
|
|
2
|
-
import { gfmHeadingId } from
|
|
3
|
-
import { mangle } from
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
extensions.push(this.highlighter.getHighlightExtension());
|
|
46
|
-
}
|
|
47
|
-
marked.use(...extensions);
|
|
48
|
-
this.marked = marked;
|
|
49
|
-
}
|
|
50
|
-
getMarkedInstance() {
|
|
51
|
-
return this.marked;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VkLXNldHVwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvbWFya2VkL21hcmtlZC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQTJCLE1BQU0sUUFBUSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3ZDLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFDbUIsT0FBdUMsRUFDdkMsV0FBa0Q7UUFEbEQsWUFBTyxHQUFQLE9BQU8sQ0FBZ0M7UUFDdkMsZ0JBQVcsR0FBWCxXQUFXLENBQXVDO1FBRW5FLE1BQU0scUJBQXFCLEdBQW9CO1lBQzdDLFFBQVEsRUFBRSxLQUFLO1lBQ2YsR0FBRyxFQUFFLElBQUk7WUFDVCxNQUFNLEVBQUUsS0FBSztZQUNiLFFBQVEsRUFBRTtnQkFDUixJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO29CQUNqQixxREFBcUQ7b0JBQ3JELG9EQUFvRDtvQkFDcEQsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7d0JBQ3ZCLE9BQU8sdUJBQXVCLEdBQUcsSUFBSSxHQUFHLFFBQVEsQ0FBQztvQkFDbkQsQ0FBQztvQkFFRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ1YsT0FBTyxhQUFhLEdBQUcsSUFBSSxHQUFHLGVBQWUsQ0FBQztvQkFDaEQsQ0FBQztvQkFFRCxJQUFJLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDO3dCQUNsQyxPQUFPLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ25ELENBQUM7b0JBRUQsT0FBTyx3QkFBd0IsSUFBSSwyQkFBMkIsSUFBSSxLQUFLLElBQUksZUFBZSxDQUFDO2dCQUM3RixDQUFDO2dCQUNELFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRTtvQkFDZixPQUFPLFNBQVMsSUFBSSxTQUFTLENBQUM7Z0JBQ2hDLENBQUM7Z0JBQ0QsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFO29CQUNsQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDN0MsT0FBTyxNQUFNLElBQUksTUFBTSxDQUFDO2dCQUMxQixDQUFDO2FBQ0Y7U0FDRixDQUFDO1FBRUYsTUFBTSxVQUFVLEdBQUc7WUFDakIscUJBQXFCO1lBQ3JCLFlBQVksRUFBRTtZQUNkLEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztTQUMvQixDQUFDO1FBRUYsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3pCLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUM1QixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUM1RCxDQUFDO1FBRUQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBRTFCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztDQUNGIn0=
|
|
1
|
+
import { marked } from "marked";
|
|
2
|
+
import { gfmHeadingId } from "marked-gfm-heading-id";
|
|
3
|
+
import { mangle } from "marked-mangle";
|
|
4
|
+
//#region packages/platform/src/lib/content/marked/marked-setup.service.ts
|
|
5
|
+
var MarkedSetupService = class {
|
|
6
|
+
constructor(options, highlighter) {
|
|
7
|
+
this.options = options;
|
|
8
|
+
this.highlighter = highlighter;
|
|
9
|
+
const extensions = [
|
|
10
|
+
{
|
|
11
|
+
pedantic: false,
|
|
12
|
+
gfm: true,
|
|
13
|
+
breaks: false,
|
|
14
|
+
renderer: {
|
|
15
|
+
code({ text, lang }) {
|
|
16
|
+
if (lang === "mermaid") return "<pre class=\"mermaid\">" + text + "</pre>";
|
|
17
|
+
if (!lang) return "<pre><code>" + text + "</code></pre>";
|
|
18
|
+
if (highlighter?.augmentCodeBlock) return highlighter?.augmentCodeBlock(text, lang);
|
|
19
|
+
return `<pre class="language-${lang}"><code class="language-${lang}">${text}</code></pre>`;
|
|
20
|
+
},
|
|
21
|
+
codespan({ text }) {
|
|
22
|
+
return `<code>${text}</code>`;
|
|
23
|
+
},
|
|
24
|
+
paragraph({ tokens }) {
|
|
25
|
+
return `<p>${this.parser.parseInline(tokens)}</p>`;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
gfmHeadingId(),
|
|
30
|
+
...options?.extensions || []
|
|
31
|
+
];
|
|
32
|
+
if (this.options?.mangle) extensions.push(mangle());
|
|
33
|
+
if (this.highlighter) extensions.push(this.highlighter.getHighlightExtension());
|
|
34
|
+
marked.use(...extensions);
|
|
35
|
+
this.marked = marked;
|
|
36
|
+
}
|
|
37
|
+
getMarkedInstance() {
|
|
38
|
+
return this.marked;
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
//#endregion
|
|
42
|
+
export { MarkedSetupService };
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=marked-setup.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marked-setup.service.js","names":[],"sources":["../../../../../../../packages/platform/src/lib/content/marked/marked-setup.service.ts"],"sourcesContent":["import { marked, Parser, MarkedExtension } from 'marked';\nimport { gfmHeadingId } from 'marked-gfm-heading-id';\nimport { mangle } from 'marked-mangle';\n\nimport { MarkedContentHighlighter } from './marked-content-highlighter.js';\nimport { WithMarkedOptions } from './index.js';\n\nexport class MarkedSetupService {\n private readonly marked: typeof marked;\n\n constructor(\n private readonly options?: WithMarkedOptions | undefined,\n private readonly highlighter?: MarkedContentHighlighter | undefined,\n ) {\n const analogMarkedExtension: MarkedExtension = {\n pedantic: false,\n gfm: true,\n breaks: false,\n renderer: {\n code({ text, lang }) {\n // Let's do a language based detection like on GitHub\n // So we can still have non-interpreted mermaid code\n if (lang === 'mermaid') {\n return '<pre class=\"mermaid\">' + text + '</pre>';\n }\n\n if (!lang) {\n return '<pre><code>' + text + '</code></pre>';\n }\n\n if (highlighter?.augmentCodeBlock) {\n return highlighter?.augmentCodeBlock(text, lang);\n }\n\n return `<pre class=\"language-${lang}\"><code class=\"language-${lang}\">${text}</code></pre>`;\n },\n codespan({ text }) {\n return `<code>${text}</code>`;\n },\n paragraph({ tokens }) {\n const text = this.parser.parseInline(tokens);\n return `<p>${text}</p>`;\n },\n },\n };\n\n const extensions = [\n analogMarkedExtension,\n gfmHeadingId(),\n ...(options?.extensions || []),\n ];\n\n if (this.options?.mangle) {\n extensions.push(mangle());\n }\n\n if (this.highlighter) {\n extensions.push(this.highlighter.getHighlightExtension());\n }\n\n marked.use(...extensions);\n\n this.marked = marked;\n }\n\n getMarkedInstance(): typeof marked {\n return this.marked;\n }\n}\n"],"mappings":";;;;AAOA,IAAa,qBAAb,MAAgC;CAG9B,YACE,SACA,aACA;AAFiB,OAAA,UAAA;AACA,OAAA,cAAA;EAkCjB,MAAM,aAAa;GAhC4B;IAC7C,UAAU;IACV,KAAK;IACL,QAAQ;IACR,UAAU;KACR,KAAK,EAAE,MAAM,QAAQ;AAGnB,UAAI,SAAS,UACX,QAAO,4BAA0B,OAAO;AAG1C,UAAI,CAAC,KACH,QAAO,gBAAgB,OAAO;AAGhC,UAAI,aAAa,iBACf,QAAO,aAAa,iBAAiB,MAAM,KAAK;AAGlD,aAAO,wBAAwB,KAAK,0BAA0B,KAAK,IAAI,KAAK;;KAE9E,SAAS,EAAE,QAAQ;AACjB,aAAO,SAAS,KAAK;;KAEvB,UAAU,EAAE,UAAU;AAEpB,aAAO,MADM,KAAK,OAAO,YAAY,OAAO,CAC1B;;KAErB;IACF;GAIC,cAAc;GACd,GAAI,SAAS,cAAc,EAAE;GAC9B;AAED,MAAI,KAAK,SAAS,OAChB,YAAW,KAAK,QAAQ,CAAC;AAG3B,MAAI,KAAK,YACP,YAAW,KAAK,KAAK,YAAY,uBAAuB,CAAC;AAG3D,SAAO,IAAI,GAAG,WAAW;AAEzB,OAAK,SAAS;;CAGhB,oBAAmC;AACjC,SAAO,KAAK"}
|
|
@@ -1,20 +1,19 @@
|
|
|
1
|
-
import Prism from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
function: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
|
|
17
|
-
});
|
|
18
|
-
Prism.languages['ng'] = Prism.languages['angular'];
|
|
1
|
+
import Prism from "prismjs";
|
|
2
|
+
//#region packages/platform/src/lib/content/prism/angular.ts
|
|
3
|
+
(function() {
|
|
4
|
+
if (typeof Prism === "undefined") return;
|
|
5
|
+
Prism.languages["angular"] = Prism.languages.extend("markup", {
|
|
6
|
+
keyword: /(?:@if|@for|@switch|@defer|@loading|@error|@placeholder|prefetch)\b/,
|
|
7
|
+
operator: /\b(?:on|when)\b/,
|
|
8
|
+
number: {
|
|
9
|
+
pattern: /\b(minimum|after)\s+\d+(?:s|ms|)/gi,
|
|
10
|
+
lookbehind: true
|
|
11
|
+
},
|
|
12
|
+
builtin: { pattern: /\b(?:viewport|timer|minimum|after|hover|idle|immediate|interaction)/ },
|
|
13
|
+
function: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/
|
|
14
|
+
});
|
|
15
|
+
Prism.languages["ng"] = Prism.languages["angular"];
|
|
19
16
|
})();
|
|
20
|
-
//#
|
|
17
|
+
//#endregion
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=angular.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"angular.js","names":[],"sources":["../../../../../../../packages/platform/src/lib/content/prism/angular.ts"],"sourcesContent":["import Prism from 'prismjs';\n\n(function () {\n if (typeof Prism === 'undefined') {\n return;\n }\n\n Prism.languages['angular'] = Prism.languages.extend('markup', {\n keyword:\n /(?:@if|@for|@switch|@defer|@loading|@error|@placeholder|prefetch)\\b/,\n operator: /\\b(?:on|when)\\b/,\n number: {\n pattern: /\\b(minimum|after)\\s+\\d+(?:s|ms|)/gi,\n lookbehind: true,\n },\n builtin: {\n pattern:\n /\\b(?:viewport|timer|minimum|after|hover|idle|immediate|interaction)/,\n },\n function:\n /#?(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*(?:\\.\\s*(?:apply|bind|call)\\s*)?\\()/,\n });\n\n Prism.languages['ng'] = Prism.languages['angular'];\n})();\n"],"mappings":";;CAEC,WAAY;AACX,KAAI,OAAO,UAAU,YACnB;AAGF,OAAM,UAAU,aAAa,MAAM,UAAU,OAAO,UAAU;EAC5D,SACE;EACF,UAAU;EACV,QAAQ;GACN,SAAS;GACT,YAAY;GACb;EACD,SAAS,EACP,SACE,uEACH;EACD,UACE;EACH,CAAC;AAEF,OAAM,UAAU,QAAQ,MAAM,UAAU;IACtC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import { PrismHighlighter } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { PrismHighlighter } from "./prism-highlighter.js";
|
|
2
|
+
//#region packages/platform/src/lib/content/prism/index.ts
|
|
3
|
+
var highlighterInstance;
|
|
4
|
+
function getPrismHighlighter() {
|
|
5
|
+
highlighterInstance ??= new PrismHighlighter();
|
|
6
|
+
return highlighterInstance;
|
|
7
7
|
}
|
|
8
|
-
//#
|
|
8
|
+
//#endregion
|
|
9
|
+
export { getPrismHighlighter };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../../packages/platform/src/lib/content/prism/index.ts"],"sourcesContent":["import { PrismHighlighter } from './prism-highlighter.js';\n\nexport { PrismHighlighter };\n\nlet highlighterInstance: PrismHighlighter;\n\nexport function getPrismHighlighter(): PrismHighlighter {\n highlighterInstance ??= new PrismHighlighter();\n return highlighterInstance;\n}\n"],"mappings":";;AAIA,IAAI;AAEJ,SAAgB,sBAAwC;AACtD,yBAAwB,IAAI,kBAAkB;AAC9C,QAAO"}
|
|
@@ -1,23 +1,22 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
console.warn(`Notice:
|
|
1
|
+
import "./angular.js";
|
|
2
|
+
import { MarkedContentHighlighter } from "../marked/marked-content-highlighter.js";
|
|
3
|
+
import { markedHighlight } from "marked-highlight";
|
|
4
|
+
import "prismjs";
|
|
5
|
+
//#region packages/platform/src/lib/content/prism/prism-highlighter.ts
|
|
6
|
+
var PrismHighlighter = class extends MarkedContentHighlighter {
|
|
7
|
+
augmentCodeBlock(code, lang) {
|
|
8
|
+
const classes = lang.startsWith("diff") && Prism.languages["diff"] ? `language-${lang} diff-highlight` : `language-${lang.replace("diff-", "")}`;
|
|
9
|
+
return `<pre class="${classes}"><code class="${classes}">${code}</code></pre>`;
|
|
10
|
+
}
|
|
11
|
+
getHighlightExtension() {
|
|
12
|
+
return markedHighlight({
|
|
13
|
+
async: true,
|
|
14
|
+
highlight: (code, lang) => {
|
|
15
|
+
let diff = lang?.startsWith("diff-");
|
|
16
|
+
lang = diff ? lang.replace("diff-", "") : lang || "typescript";
|
|
17
|
+
if (diff && !Prism.languages["diff"]) {
|
|
18
|
+
diff = false;
|
|
19
|
+
console.warn(`Notice:
|
|
21
20
|
---------------------------------------------------------------------------------------
|
|
22
21
|
The \`diff\` language and plugin are not available in the provided setup.
|
|
23
22
|
|
|
@@ -36,10 +35,9 @@ export class PrismHighlighter extends MarkedContentHighlighter {
|
|
|
36
35
|
import 'prismjs/plugins/diff-highlight/prism-diff-highlight.js';
|
|
37
36
|
---------------------------------------------------------------------------------------
|
|
38
37
|
`);
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
console.warn(`Notice:
|
|
38
|
+
}
|
|
39
|
+
if (!Prism.languages[lang]) {
|
|
40
|
+
if (lang !== "mermaid") console.warn(`Notice:
|
|
43
41
|
---------------------------------------------------------------------------------------
|
|
44
42
|
The requested language '${lang}' is not available in the provided setup.
|
|
45
43
|
To enable, add it to the \`analog\` plugin in your \`vite.config.ts\`:
|
|
@@ -54,12 +52,14 @@ export class PrismHighlighter extends MarkedContentHighlighter {
|
|
|
54
52
|
})
|
|
55
53
|
---------------------------------------------------------------------------------------
|
|
56
54
|
`);
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
55
|
+
return code;
|
|
56
|
+
}
|
|
57
|
+
return Prism.highlight(code, diff ? Prism.languages["diff"] : Prism.languages[lang], lang);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
//#endregion
|
|
63
|
+
export { PrismHighlighter };
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=prism-highlighter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prism-highlighter.js","names":[],"sources":["../../../../../../../packages/platform/src/lib/content/prism/prism-highlighter.ts"],"sourcesContent":["import { markedHighlight } from 'marked-highlight';\n\nimport 'prismjs';\nimport './angular.js';\n\nimport { MarkedContentHighlighter } from '../marked/marked-content-highlighter.js';\n\ndeclare const Prism: typeof import('prismjs');\n\nexport class PrismHighlighter extends MarkedContentHighlighter {\n override augmentCodeBlock(code: string, lang: string): string {\n const classes =\n lang.startsWith('diff') && Prism.languages['diff']\n ? `language-${lang} diff-highlight`\n : `language-${lang.replace('diff-', '')}`;\n return `<pre class=\"${classes}\"><code class=\"${classes}\">${code}</code></pre>`;\n }\n\n override getHighlightExtension(): import('marked').MarkedExtension {\n return markedHighlight({\n async: true,\n highlight: (code: string, lang: string) => {\n let diff = lang?.startsWith('diff-');\n lang = diff ? lang.replace('diff-', '') : lang || 'typescript';\n\n if (diff && !Prism.languages['diff']) {\n diff = false;\n console.warn(`Notice:\n ---------------------------------------------------------------------------------------\n The \\`diff\\` language and plugin are not available in the provided setup.\n\n To enable, add it to the \\`analog\\` plugin in your \\`vite.config.ts\\`:\n analog({\n content: {\n prismOptions: {\n additionalLangs: [\n 'prism-diff'\n ]\n }\n }\n })\n\n Add the plugin import to your \\`app.config.ts\\`\n import 'prismjs/plugins/diff-highlight/prism-diff-highlight.js';\n ---------------------------------------------------------------------------------------\n `);\n }\n\n if (!Prism.languages[lang]) {\n if (lang !== 'mermaid') {\n console.warn(`Notice:\n ---------------------------------------------------------------------------------------\n The requested language '${lang}' is not available in the provided setup.\n To enable, add it to the \\`analog\\` plugin in your \\`vite.config.ts\\`:\n analog({\n content: {\n prismOptions: {\n additionalLangs: [\n '${lang}',\n ]\n }\n }\n })\n ---------------------------------------------------------------------------------------\n `);\n }\n return code;\n }\n return Prism.highlight(\n code,\n diff ? Prism.languages['diff'] : Prism.languages[lang],\n lang,\n );\n },\n });\n }\n}\n"],"mappings":";;;;;AASA,IAAa,mBAAb,cAAsC,yBAAyB;CAC7D,iBAA0B,MAAc,MAAsB;EAC5D,MAAM,UACJ,KAAK,WAAW,OAAO,IAAI,MAAM,UAAU,UACvC,YAAY,KAAK,mBACjB,YAAY,KAAK,QAAQ,SAAS,GAAG;AAC3C,SAAO,eAAe,QAAQ,iBAAiB,QAAQ,IAAI,KAAK;;CAGlE,wBAAmE;AACjE,SAAO,gBAAgB;GACrB,OAAO;GACP,YAAY,MAAc,SAAiB;IACzC,IAAI,OAAO,MAAM,WAAW,QAAQ;AACpC,WAAO,OAAO,KAAK,QAAQ,SAAS,GAAG,GAAG,QAAQ;AAElD,QAAI,QAAQ,CAAC,MAAM,UAAU,SAAS;AACpC,YAAO;AACP,aAAQ,KAAK;;;;;;;;;;;;;;;;;;cAkBT;;AAGN,QAAI,CAAC,MAAM,UAAU,OAAO;AAC1B,SAAI,SAAS,UACX,SAAQ,KAAK;;8BAEK,KAAK;;;;;;iBAMlB,KAAK;;;;;;gBAMN;AAEN,YAAO;;AAET,WAAO,MAAM,UACX,MACA,OAAO,MAAM,UAAU,UAAU,MAAM,UAAU,OACjD,KACD;;GAEJ,CAAC"}
|
|
@@ -1,29 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
highlighter.themes = defaultHighlighterOptions.themes;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
if (!highlighter.langs) {
|
|
20
|
-
highlighter.langs = defaultHighlighterOptions.langs;
|
|
21
|
-
}
|
|
22
|
-
if (highlighter.additionalLangs) {
|
|
23
|
-
highlighter.langs.push(...highlighter.additionalLangs);
|
|
24
|
-
delete highlighter.additionalLangs;
|
|
25
|
-
}
|
|
26
|
-
highlighterInstance = new ShikiHighlighter(highlighter, highlight, container, !!highlighter.langs.includes('mermaid'));
|
|
27
|
-
return highlighterInstance;
|
|
1
|
+
import { ShikiHighlighter, defaultHighlighterOptions } from "./shiki-highlighter.js";
|
|
2
|
+
//#region packages/platform/src/lib/content/shiki/index.ts
|
|
3
|
+
var highlighterInstance;
|
|
4
|
+
function getShikiHighlighter({ highlighter = {}, highlight = {}, container = "%s" } = {}) {
|
|
5
|
+
if (highlighterInstance) return highlighterInstance;
|
|
6
|
+
if (!highlighter.themes) if (highlight.theme) highlighter.themes = [highlight.theme];
|
|
7
|
+
else if (highlight.themes && typeof highlight.themes === "object") highlighter.themes = Object.values(highlight.themes);
|
|
8
|
+
else highlighter.themes = defaultHighlighterOptions.themes;
|
|
9
|
+
if (!highlighter.langs) highlighter.langs = defaultHighlighterOptions.langs;
|
|
10
|
+
if (highlighter.additionalLangs) {
|
|
11
|
+
highlighter.langs.push(...highlighter.additionalLangs);
|
|
12
|
+
delete highlighter.additionalLangs;
|
|
13
|
+
}
|
|
14
|
+
highlighterInstance = new ShikiHighlighter(highlighter, highlight, container, !!highlighter.langs.includes("mermaid"));
|
|
15
|
+
return highlighterInstance;
|
|
28
16
|
}
|
|
29
|
-
//#
|
|
17
|
+
//#endregion
|
|
18
|
+
export { getShikiHighlighter };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../../packages/platform/src/lib/content/shiki/index.ts"],"sourcesContent":["import { WithShikiHighlighterOptions } from './options.js';\nimport {\n defaultHighlighterOptions,\n ShikiHighlighter,\n ShikiHighlighterOptions,\n} from './shiki-highlighter.js';\n\nexport { ShikiHighlighter };\n\nlet highlighterInstance: ShikiHighlighter;\n\nexport function getShikiHighlighter({\n highlighter = {},\n highlight = {},\n container = '%s',\n}: WithShikiHighlighterOptions = {}): ShikiHighlighter {\n if (highlighterInstance) {\n return highlighterInstance;\n }\n\n if (!highlighter.themes) {\n if (highlight.theme) {\n highlighter.themes = [highlight.theme];\n } else if (highlight.themes && typeof highlight.themes === 'object') {\n highlighter.themes = Object.values(highlight.themes) as string[];\n } else {\n highlighter.themes = defaultHighlighterOptions.themes;\n }\n }\n\n if (!highlighter.langs) {\n highlighter.langs = defaultHighlighterOptions.langs;\n }\n\n if (highlighter.additionalLangs) {\n highlighter.langs.push(...highlighter.additionalLangs);\n delete highlighter.additionalLangs;\n }\n\n highlighterInstance = new ShikiHighlighter(\n highlighter as ShikiHighlighterOptions,\n highlight,\n container,\n !!highlighter.langs.includes('mermaid'),\n );\n\n return highlighterInstance;\n}\n"],"mappings":";;AASA,IAAI;AAEJ,SAAgB,oBAAoB,EAClC,cAAc,EAAE,EAChB,YAAY,EAAE,EACd,YAAY,SACmB,EAAE,EAAoB;AACrD,KAAI,oBACF,QAAO;AAGT,KAAI,CAAC,YAAY,OACf,KAAI,UAAU,MACZ,aAAY,SAAS,CAAC,UAAU,MAAM;UAC7B,UAAU,UAAU,OAAO,UAAU,WAAW,SACzD,aAAY,SAAS,OAAO,OAAO,UAAU,OAAO;KAEpD,aAAY,SAAS,0BAA0B;AAInD,KAAI,CAAC,YAAY,MACf,aAAY,QAAQ,0BAA0B;AAGhD,KAAI,YAAY,iBAAiB;AAC/B,cAAY,MAAM,KAAK,GAAG,YAAY,gBAAgB;AACtD,SAAO,YAAY;;AAGrB,uBAAsB,IAAI,iBACxB,aACA,WACA,WACA,CAAC,CAAC,YAAY,MAAM,SAAS,UAAU,CACxC;AAED,QAAO"}
|
|
@@ -1,45 +1,46 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
import { MarkedContentHighlighter } from "../marked/marked-content-highlighter.js";
|
|
2
|
+
import markedShiki from "marked-shiki";
|
|
3
|
+
import { getHighlighter } from "shiki";
|
|
4
|
+
//#region packages/platform/src/lib/content/shiki/shiki-highlighter.ts
|
|
5
|
+
var defaultHighlighterOptions = {
|
|
6
|
+
langs: [
|
|
7
|
+
"json",
|
|
8
|
+
"ts",
|
|
9
|
+
"tsx",
|
|
10
|
+
"js",
|
|
11
|
+
"jsx",
|
|
12
|
+
"html",
|
|
13
|
+
"css",
|
|
14
|
+
"angular-html",
|
|
15
|
+
"angular-ts"
|
|
16
|
+
],
|
|
17
|
+
themes: ["github-dark", "github-light"]
|
|
17
18
|
};
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
//# sourceMappingURL=
|
|
19
|
+
var ShikiHighlighter = class extends MarkedContentHighlighter {
|
|
20
|
+
constructor(highlighterOptions, highlightOptions, container, hasLoadMermaid = false) {
|
|
21
|
+
super();
|
|
22
|
+
this.highlighterOptions = highlighterOptions;
|
|
23
|
+
this.highlightOptions = highlightOptions;
|
|
24
|
+
this.container = container;
|
|
25
|
+
this.hasLoadMermaid = hasLoadMermaid;
|
|
26
|
+
this.highlighter = getHighlighter(this.highlighterOptions);
|
|
27
|
+
}
|
|
28
|
+
getHighlightExtension() {
|
|
29
|
+
return markedShiki({
|
|
30
|
+
container: this.container,
|
|
31
|
+
highlight: async (code, lang, props) => {
|
|
32
|
+
if (this.hasLoadMermaid && lang === "mermaid") return `<pre class="mermaid">${code}</pre>`;
|
|
33
|
+
const { codeToHtml } = await this.highlighter;
|
|
34
|
+
return codeToHtml(code, Object.assign({
|
|
35
|
+
lang,
|
|
36
|
+
meta: { __raw: props.join(" ") },
|
|
37
|
+
theme: "github-dark"
|
|
38
|
+
}, this.highlightOptions));
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
//#endregion
|
|
44
|
+
export { ShikiHighlighter, defaultHighlighterOptions };
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=shiki-highlighter.js.map
|