@analogjs/platform 3.0.0-alpha.4 → 3.0.0-alpha.40

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.
Files changed (328) hide show
  1. package/package.json +29 -19
  2. package/src/index.d.ts +9 -2
  3. package/src/index.js +11 -3
  4. package/src/index.js.map +1 -0
  5. package/src/lib/clear-client-page-endpoint.d.ts +2 -2
  6. package/src/lib/clear-client-page-endpoint.js +22 -32
  7. package/src/lib/clear-client-page-endpoint.js.map +1 -0
  8. package/src/lib/content/marked/index.d.ts +5 -5
  9. package/src/lib/content/marked/index.js +10 -6
  10. package/src/lib/content/marked/index.js.map +1 -0
  11. package/src/lib/content/marked/marked-content-highlighter.d.ts +2 -2
  12. package/src/lib/content/marked/marked-content-highlighter.js +6 -3
  13. package/src/lib/content/marked/marked-content-highlighter.js.map +1 -0
  14. package/src/lib/content/marked/marked-setup.service.d.ts +8 -8
  15. package/src/lib/content/marked/marked-setup.service.js +44 -54
  16. package/src/lib/content/marked/marked-setup.service.js.map +1 -0
  17. package/src/lib/content/prism/angular.js +18 -19
  18. package/src/lib/content/prism/angular.js.map +1 -0
  19. package/src/lib/content/prism/index.d.ts +1 -1
  20. package/src/lib/content/prism/index.js +10 -7
  21. package/src/lib/content/prism/index.js.map +1 -0
  22. package/src/lib/content/prism/options.d.ts +1 -1
  23. package/src/lib/content/prism/prism-highlighter.d.ts +5 -5
  24. package/src/lib/content/prism/prism-highlighter.js +33 -33
  25. package/src/lib/content/prism/prism-highlighter.js.map +1 -0
  26. package/src/lib/content/shiki/index.d.ts +3 -3
  27. package/src/lib/content/shiki/index.js +22 -28
  28. package/src/lib/content/shiki/index.js.map +1 -0
  29. package/src/lib/content/shiki/options.d.ts +8 -7
  30. package/src/lib/content/shiki/shiki-highlighter.d.ts +14 -13
  31. package/src/lib/content/shiki/shiki-highlighter.js +49 -43
  32. package/src/lib/content/shiki/shiki-highlighter.js.map +1 -0
  33. package/src/lib/content-plugin.d.ts +19 -19
  34. package/src/lib/content-plugin.js +183 -196
  35. package/src/lib/content-plugin.js.map +1 -0
  36. package/src/lib/deps-plugin.d.ts +2 -2
  37. package/src/lib/deps-plugin.js +80 -82
  38. package/src/lib/deps-plugin.js.map +1 -0
  39. package/src/lib/discover-library-routes.d.ts +13 -0
  40. package/src/lib/discover-library-routes.js +64 -0
  41. package/src/lib/discover-library-routes.js.map +1 -0
  42. package/src/lib/i18n-component-registry-plugin.d.ts +17 -0
  43. package/src/lib/i18n-component-registry-plugin.js +100 -0
  44. package/src/lib/i18n-component-registry-plugin.js.map +1 -0
  45. package/src/lib/i18n-extract-plugin.d.ts +33 -0
  46. package/src/lib/json-ld-manifest-plugin.d.ts +41 -0
  47. package/src/lib/json-ld-manifest-plugin.js +84 -0
  48. package/src/lib/json-ld-manifest-plugin.js.map +1 -0
  49. package/src/lib/nx-plugin/builders.json +7 -0
  50. package/src/lib/nx-plugin/executors.json +5 -0
  51. package/src/lib/nx-plugin/generators.json +25 -0
  52. package/src/lib/nx-plugin/node_modules/.pnpm/es-toolkit@1.45.1/node_modules/es-toolkit/dist/string/camelCase.js +13 -0
  53. package/src/lib/nx-plugin/node_modules/.pnpm/es-toolkit@1.45.1/node_modules/es-toolkit/dist/string/camelCase.js.map +1 -0
  54. package/src/lib/nx-plugin/node_modules/.pnpm/es-toolkit@1.45.1/node_modules/es-toolkit/dist/string/capitalize.js +8 -0
  55. package/src/lib/nx-plugin/node_modules/.pnpm/es-toolkit@1.45.1/node_modules/es-toolkit/dist/string/capitalize.js.map +1 -0
  56. package/src/lib/nx-plugin/node_modules/.pnpm/es-toolkit@1.45.1/node_modules/es-toolkit/dist/string/words.js +9 -0
  57. package/src/lib/nx-plugin/node_modules/.pnpm/es-toolkit@1.45.1/node_modules/es-toolkit/dist/string/words.js.map +1 -0
  58. package/src/lib/nx-plugin/package.json +1 -5
  59. package/src/lib/nx-plugin/src/executors/vite/compat.d.ts +1 -1
  60. package/src/lib/nx-plugin/src/executors/vite/compat.js +6 -7
  61. package/src/lib/nx-plugin/src/executors/vite/compat.js.map +1 -1
  62. package/src/lib/nx-plugin/src/executors/vite/schema.d.ts +1 -1
  63. package/src/lib/nx-plugin/src/executors/vite/vite.impl.d.ts +1 -1
  64. package/src/lib/nx-plugin/src/executors/vite/vite.impl.js +5 -4
  65. package/src/lib/nx-plugin/src/executors/vite/vite.impl.js.map +1 -1
  66. package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.d.ts +1 -1
  67. package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.js +6 -7
  68. package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.js.map +1 -1
  69. package/src/lib/nx-plugin/src/executors/vite-dev-server/schema.d.ts +1 -1
  70. package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.d.ts +1 -1
  71. package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.js +5 -4
  72. package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.js.map +1 -1
  73. package/src/lib/nx-plugin/src/executors/vitest/compat.d.ts +1 -1
  74. package/src/lib/nx-plugin/src/executors/vitest/compat.js +6 -7
  75. package/src/lib/nx-plugin/src/executors/vitest/compat.js.map +1 -1
  76. package/src/lib/nx-plugin/src/executors/vitest/schema.d.ts +1 -1
  77. package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.d.ts +1 -1
  78. package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.js +5 -4
  79. package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.js.map +1 -1
  80. package/src/lib/nx-plugin/src/generators/app/compat.d.ts +9 -3
  81. package/src/lib/nx-plugin/src/generators/app/compat.js +17 -7
  82. package/src/lib/nx-plugin/src/generators/app/compat.js.map +1 -1
  83. package/src/lib/nx-plugin/src/generators/app/files/root/tsconfig.base.json +3 -6
  84. package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/test-setup.ts__template__ +1 -0
  85. package/src/lib/nx-plugin/src/generators/app/files/template-angular/tsconfig.app.json__template__ +1 -3
  86. package/src/lib/nx-plugin/src/generators/app/files/template-angular/tsconfig.json__template__ +2 -1
  87. package/src/lib/nx-plugin/src/generators/app/files/template-angular/vite.config.ts__template__ +6 -2
  88. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/src/app/app.config.ts__template__ +0 -6
  89. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/tsconfig.json__template__ +4 -2
  90. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/vite.config.ts__template__ +1 -21
  91. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/src/app/app.config.ts__template__ +0 -6
  92. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/tsconfig.json__template__ +4 -2
  93. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/vite.config.ts__template__ +2 -22
  94. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/src/app/app.config.ts__template__ +0 -6
  95. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/tsconfig.app.json__template__ +1 -3
  96. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/tsconfig.json__template__ +4 -2
  97. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/vite.config.ts__template__ +1 -12
  98. package/src/lib/nx-plugin/src/generators/app/generator.d.ts +11 -11
  99. package/src/lib/nx-plugin/src/generators/app/generator.js +78 -92
  100. package/src/lib/nx-plugin/src/generators/app/generator.js.map +1 -1
  101. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.d.ts +1 -1
  102. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.d.ts +1 -1
  103. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js +72 -81
  104. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js.map +1 -1
  105. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.d.ts +2 -2
  106. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js +24 -58
  107. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js.map +1 -1
  108. package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.d.ts +2 -2
  109. package/src/lib/nx-plugin/src/generators/app/lib/add-files.d.ts +2 -2
  110. package/src/lib/nx-plugin/src/generators/app/lib/add-files.js +15 -16
  111. package/src/lib/nx-plugin/src/generators/app/lib/add-files.js.map +1 -1
  112. package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.d.ts +2 -2
  113. package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.js +14 -13
  114. package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.js.map +1 -1
  115. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.d.ts +7 -7
  116. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.js +18 -29
  117. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.js.map +1 -1
  118. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.d.ts +4 -5
  119. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.js +60 -103
  120. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.js.map +1 -1
  121. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.d.ts +1 -1
  122. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.d.ts +2 -2
  123. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js +17 -20
  124. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js.map +1 -1
  125. package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.d.ts +2 -2
  126. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.d.ts +1 -1
  127. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js +14 -18
  128. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js.map +1 -1
  129. package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.d.ts +2 -3
  130. package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.js +6 -10
  131. package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.js.map +1 -1
  132. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.d.ts +0 -3
  133. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.d.ts +1 -6
  134. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.d.ts +12 -17
  135. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js +11 -37
  136. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js.map +1 -1
  137. package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.d.ts +1 -1
  138. package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.js +11 -15
  139. package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.js.map +1 -1
  140. package/src/lib/nx-plugin/src/generators/app/versions.d.ts +0 -28
  141. package/src/lib/nx-plugin/src/generators/init/compat.d.ts +9 -3
  142. package/src/lib/nx-plugin/src/generators/init/compat.js +17 -7
  143. package/src/lib/nx-plugin/src/generators/init/compat.js.map +1 -1
  144. package/src/lib/nx-plugin/src/generators/init/files/vite.config.ts__template__ +2 -6
  145. package/src/lib/nx-plugin/src/generators/init/generator.d.ts +3 -3
  146. package/src/lib/nx-plugin/src/generators/init/generator.js +54 -65
  147. package/src/lib/nx-plugin/src/generators/init/generator.js.map +1 -1
  148. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.d.ts +1 -1
  149. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js +19 -20
  150. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js.map +1 -1
  151. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.d.ts +2 -2
  152. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js +20 -21
  153. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js.map +1 -1
  154. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.d.ts +2 -2
  155. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js +56 -66
  156. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js.map +1 -1
  157. package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.d.ts +1 -1
  158. package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.js +12 -11
  159. package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.js.map +1 -1
  160. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.d.ts +2 -2
  161. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js +17 -21
  162. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js.map +1 -1
  163. package/src/lib/nx-plugin/src/generators/init/lib/update-main.d.ts +2 -2
  164. package/src/lib/nx-plugin/src/generators/init/lib/update-main.js +12 -15
  165. package/src/lib/nx-plugin/src/generators/init/lib/update-main.js.map +1 -1
  166. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.d.ts +2 -2
  167. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js +19 -31
  168. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js.map +1 -1
  169. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.d.ts +2 -2
  170. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js +43 -51
  171. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js.map +1 -1
  172. package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.d.ts +2 -2
  173. package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.js +27 -34
  174. package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.js.map +1 -1
  175. package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.d.ts +2 -2
  176. package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js +19 -20
  177. package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js.map +1 -1
  178. package/src/lib/nx-plugin/src/generators/init/test-files/src/test-setup.ts__template__ +1 -0
  179. package/src/lib/nx-plugin/src/generators/page/__snapshots__/generator.spec.ts.snap +0 -7
  180. package/src/lib/nx-plugin/src/generators/page/compat.d.ts +9 -0
  181. package/src/lib/nx-plugin/src/generators/page/compat.js +18 -0
  182. package/src/lib/nx-plugin/src/generators/page/compat.js.map +1 -0
  183. package/src/lib/nx-plugin/src/generators/page/files/__fileName__.page.ts__template__ +0 -1
  184. package/src/lib/nx-plugin/src/generators/page/generator.d.ts +3 -4
  185. package/src/lib/nx-plugin/src/generators/page/generator.js +34 -44
  186. package/src/lib/nx-plugin/src/generators/page/generator.js.map +1 -1
  187. package/src/lib/nx-plugin/src/generators/preset/__snapshots__/generator.spec.ts.snap +5 -4
  188. package/src/lib/nx-plugin/src/generators/preset/generator.d.ts +3 -3
  189. package/src/lib/nx-plugin/src/generators/preset/generator.js +17 -43
  190. package/src/lib/nx-plugin/src/generators/preset/generator.js.map +1 -1
  191. package/src/lib/nx-plugin/src/generators/setup-vitest/compat.d.ts +9 -3
  192. package/src/lib/nx-plugin/src/generators/setup-vitest/compat.js +17 -7
  193. package/src/lib/nx-plugin/src/generators/setup-vitest/compat.js.map +1 -1
  194. package/src/lib/nx-plugin/src/generators/setup-vitest/files/src/test-setup.ts__template__ +1 -0
  195. package/src/lib/nx-plugin/src/generators/setup-vitest/files/vite.config.mts__template__ +0 -6
  196. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.d.ts +3 -3
  197. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js +32 -42
  198. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js.map +1 -1
  199. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.d.ts +1 -1
  200. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.js +7 -7
  201. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.js.map +1 -1
  202. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.d.ts +2 -2
  203. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.js +20 -27
  204. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.js.map +1 -1
  205. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.d.ts +2 -2
  206. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js +19 -22
  207. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js.map +1 -1
  208. package/src/lib/nx-plugin/src/index.js +0 -2
  209. package/src/lib/nx-plugin/src/utils/version-utils.d.ts +1 -1
  210. package/src/lib/nx-plugin/src/utils/version-utils.js +20 -27
  211. package/src/lib/nx-plugin/src/utils/version-utils.js.map +1 -1
  212. package/src/lib/nx-plugin/src/utils/versions/dependencies.js +42 -62
  213. package/src/lib/nx-plugin/src/utils/versions/dependencies.js.map +1 -1
  214. package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js +49 -83
  215. package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js.map +1 -1
  216. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.d.ts +1 -1
  217. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js +33 -20
  218. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js.map +1 -1
  219. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.d.ts +1 -1
  220. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js +33 -20
  221. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js.map +1 -1
  222. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.d.ts +8 -8
  223. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js +37 -23
  224. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js.map +1 -1
  225. package/src/lib/options.d.ts +240 -80
  226. package/src/lib/platform-plugin.d.ts +2 -2
  227. package/src/lib/platform-plugin.js +91 -62
  228. package/src/lib/platform-plugin.js.map +1 -0
  229. package/src/lib/route-file-discovery.d.ts +23 -0
  230. package/src/lib/route-file-discovery.js +114 -0
  231. package/src/lib/route-file-discovery.js.map +1 -0
  232. package/src/lib/route-generation-plugin.d.ts +3 -0
  233. package/src/lib/route-generation-plugin.js +45 -0
  234. package/src/lib/route-generation-plugin.js.map +1 -0
  235. package/src/lib/route-idiom-diagnostics.d.ts +13 -0
  236. package/src/lib/route-idiom-diagnostics.js +160 -0
  237. package/src/lib/route-idiom-diagnostics.js.map +1 -0
  238. package/src/lib/route-manifest.d.ts +122 -0
  239. package/src/lib/route-manifest.js +431 -0
  240. package/src/lib/route-manifest.js.map +1 -0
  241. package/src/lib/router-plugin.d.ts +19 -19
  242. package/src/lib/router-plugin.js +234 -150
  243. package/src/lib/router-plugin.js.map +1 -0
  244. package/src/lib/ssr/inject-html-plugin.d.ts +1 -1
  245. package/src/lib/ssr/inject-html-plugin.js +25 -25
  246. package/src/lib/ssr/inject-html-plugin.js.map +1 -0
  247. package/src/lib/ssr/ssr-build-plugin.d.ts +31 -2
  248. package/src/lib/ssr/ssr-build-plugin.js +54 -30
  249. package/src/lib/ssr/ssr-build-plugin.js.map +1 -0
  250. package/src/lib/style-pipeline.d.ts +34 -0
  251. package/src/lib/style-pipeline.js +32 -0
  252. package/src/lib/style-pipeline.js.map +1 -0
  253. package/src/lib/style-preprocessor.d.ts +28 -0
  254. package/src/lib/style-preprocessor.js +35 -0
  255. package/src/lib/style-preprocessor.js.map +1 -0
  256. package/src/lib/tailwind-preprocessor.d.ts +23 -0
  257. package/src/lib/tailwind-preprocessor.js +153 -0
  258. package/src/lib/tailwind-preprocessor.js.map +1 -0
  259. package/src/lib/typed-routes-plugin.d.ts +50 -0
  260. package/src/lib/typed-routes-plugin.js +234 -0
  261. package/src/lib/typed-routes-plugin.js.map +1 -0
  262. package/src/lib/utils/debug-harness.d.ts +23 -0
  263. package/src/lib/utils/debug-harness.js +88 -0
  264. package/src/lib/utils/debug-harness.js.map +1 -0
  265. package/src/lib/utils/debug-log-file.d.ts +5 -0
  266. package/src/lib/utils/debug-log-file.js +56 -0
  267. package/src/lib/utils/debug-log-file.js.map +1 -0
  268. package/src/lib/utils/debug.d.ts +22 -0
  269. package/src/lib/utils/debug.js +27 -0
  270. package/src/lib/utils/debug.js.map +1 -0
  271. package/src/lib/utils/rolldown.d.ts +3 -0
  272. package/src/lib/utils/rolldown.js +15 -0
  273. package/src/lib/utils/rolldown.js.map +1 -0
  274. package/src/server-mode-plugin.d.ts +6 -6
  275. package/src/server-mode-plugin.js +16 -18
  276. package/src/server-mode-plugin.js.map +1 -0
  277. package/src/style-pipeline.d.ts +1 -0
  278. package/src/style-pipeline.js +2 -0
  279. package/src/style-preprocessor.d.ts +1 -0
  280. package/src/style-preprocessor.js +2 -0
  281. package/README.md +0 -5
  282. package/src/lib/content/prism/options.js +0 -1
  283. package/src/lib/content/shiki/options.js +0 -1
  284. package/src/lib/nx-plugin/README.md +0 -23
  285. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v4/.postcssrc.json +0 -5
  286. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v4/tailwind.config.ts__template__ +0 -14
  287. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/index.html__template__ +0 -15
  288. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/app/app.component.spec.ts__template__ +0 -17
  289. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/app/app.component.ts__template__ +0 -10
  290. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/favicon.ico__template__ +0 -0
  291. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/main.providers.ts__template__ +0 -5
  292. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/main.server.ts__template__ +0 -23
  293. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/main.ts__template__ +0 -17
  294. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/public/assets/.gitkeep__template__ +0 -0
  295. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/public/assets/analog.svg__template__ +0 -1
  296. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/public/assets/vite.svg__template__ +0 -1
  297. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/server/routes/v1/hello.ts__template__ +0 -3
  298. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/styles.css__template__ +0 -4
  299. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/test-setup.ts__template__ +0 -12
  300. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/vite-env.d.ts__template__ +0 -1
  301. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.app.json__template__ +0 -16
  302. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.editor.json__template__ +0 -7
  303. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.json__template__ +0 -32
  304. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.spec.json__template__ +0 -14
  305. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/vite.config.ts__template__ +0 -69
  306. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.js +0 -15
  307. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.js.map +0 -1
  308. package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.js +0 -58
  309. package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.js.map +0 -1
  310. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js +0 -47
  311. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js.map +0 -1
  312. package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js +0 -110
  313. package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js.map +0 -1
  314. package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js +0 -56
  315. package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js.map +0 -1
  316. package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js +0 -72
  317. package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js.map +0 -1
  318. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js +0 -46
  319. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js.map +0 -1
  320. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js +0 -37
  321. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js.map +0 -1
  322. package/src/lib/nx-plugin/src/generators/app/versions.js +0 -43
  323. package/src/lib/nx-plugin/src/generators/app/versions.js.map +0 -1
  324. package/src/lib/nx-plugin/src/index.d.ts +0 -0
  325. package/src/lib/nx-plugin/src/index.js.map +0 -1
  326. package/src/lib/options.js +0 -1
  327. package/src/lib/ssr/ssr-xhr-plugin.d.ts +0 -2
  328. package/src/lib/ssr/ssr-xhr-plugin.js +0 -28
@@ -1,29 +1,23 @@
1
- import { defaultHighlighterOptions, ShikiHighlighter, } from './shiki-highlighter.js';
2
- export { ShikiHighlighter };
3
- let highlighterInstance;
4
- export function getShikiHighlighter({ highlighter = {}, highlight = {}, container = '%s', } = {}) {
5
- if (highlighterInstance) {
6
- return highlighterInstance;
7
- }
8
- if (!highlighter.themes) {
9
- if (highlight.theme) {
10
- highlighter.themes = [highlight.theme];
11
- }
12
- else if (highlight.themes && typeof highlight.themes === 'object') {
13
- highlighter.themes = Object.values(highlight.themes);
14
- }
15
- else {
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
+ const additionalLangs = highlighter.additionalLangs ?? [];
7
+ const skipLangs = highlighter.skipLangs ?? [];
8
+ const hasMermaidSupport = highlighter.langs?.includes("mermaid") || additionalLangs.includes("mermaid");
9
+ if (!highlighter.themes) if (highlight.theme) highlighter.themes = [highlight.theme];
10
+ else if (highlight.themes && typeof highlight.themes === "object") highlighter.themes = Object.values(highlight.themes);
11
+ else highlighter.themes = defaultHighlighterOptions.themes;
12
+ if (!highlighter.langs) highlighter.langs = [...defaultHighlighterOptions.langs];
13
+ if (additionalLangs.length > 0) highlighter.langs.push(...additionalLangs);
14
+ if (skipLangs.length > 0) highlighter.langs = highlighter.langs.filter((lang) => !skipLangs.includes(lang));
15
+ delete highlighter.additionalLangs;
16
+ delete highlighter.skipLangs;
17
+ highlighterInstance = new ShikiHighlighter(highlighter, highlight, container, hasMermaidSupport, skipLangs);
18
+ return highlighterInstance;
28
19
  }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvc2hpa2kvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixnQkFBZ0IsR0FFakIsTUFBTSx3QkFBd0IsQ0FBQztBQUVoQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQztBQUU1QixJQUFJLG1CQUFxQyxDQUFDO0FBRTFDLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxFQUNsQyxXQUFXLEdBQUcsRUFBRSxFQUNoQixTQUFTLEdBQUcsRUFBRSxFQUNkLFNBQVMsR0FBRyxJQUFJLE1BQ2UsRUFBRTtJQUNqQyxJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFDeEIsT0FBTyxtQkFBbUIsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN4QixJQUFJLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNwQixXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLENBQUM7YUFBTSxJQUFJLFNBQVMsQ0FBQyxNQUFNLElBQUksT0FBTyxTQUFTLENBQUMsTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3BFLFdBQVcsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFhLENBQUM7UUFDbkUsQ0FBQzthQUFNLENBQUM7WUFDTixXQUFXLENBQUMsTUFBTSxHQUFHLHlCQUF5QixDQUFDLE1BQU0sQ0FBQztRQUN4RCxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdkIsV0FBVyxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxLQUFLLENBQUM7SUFDdEQsQ0FBQztJQUVELElBQUksV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2hDLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sV0FBVyxDQUFDLGVBQWUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsbUJBQW1CLEdBQUcsSUFBSSxnQkFBZ0IsQ0FDeEMsV0FBc0MsRUFDdEMsU0FBUyxFQUNULFNBQVMsRUFDVCxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQ3hDLENBQUM7SUFFRixPQUFPLG1CQUFtQixDQUFDO0FBQzdCLENBQUMifQ==
20
+ //#endregion
21
+ export { getShikiHighlighter };
22
+
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../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 const additionalLangs = highlighter.additionalLangs ?? [];\n const skipLangs = highlighter.skipLangs ?? [];\n const hasMermaidSupport =\n highlighter.langs?.includes('mermaid') ||\n additionalLangs.includes('mermaid');\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 (additionalLangs.length > 0) {\n highlighter.langs.push(...additionalLangs);\n }\n\n if (skipLangs.length > 0) {\n highlighter.langs = highlighter.langs.filter(\n (lang) => !skipLangs.includes(lang),\n );\n }\n\n delete highlighter.additionalLangs;\n delete highlighter.skipLangs;\n\n highlighterInstance = new ShikiHighlighter(\n highlighter as ShikiHighlighterOptions,\n highlight,\n container,\n hasMermaidSupport,\n skipLangs,\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;CAGT,MAAM,kBAAkB,YAAY,mBAAmB,EAAE;CACzD,MAAM,YAAY,YAAY,aAAa,EAAE;CAC7C,MAAM,oBACJ,YAAY,OAAO,SAAS,UAAU,IACtC,gBAAgB,SAAS,UAAU;AAErC,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,CAAC,GAAG,0BAA0B,MAAM;AAG1D,KAAI,gBAAgB,SAAS,EAC3B,aAAY,MAAM,KAAK,GAAG,gBAAgB;AAG5C,KAAI,UAAU,SAAS,EACrB,aAAY,QAAQ,YAAY,MAAM,QACnC,SAAS,CAAC,UAAU,SAAS,KAAK,CACpC;AAGH,QAAO,YAAY;AACnB,QAAO,YAAY;AAEnB,uBAAsB,IAAI,iBACxB,aACA,WACA,WACA,mBACA,UACD;AAED,QAAO"}
@@ -1,9 +1,10 @@
1
- import { ShikiHighlighterOptions, ShikiHighlightOptions } from './shiki-highlighter.js';
2
- import { BundledLanguage } from 'shiki/langs';
1
+ import { ShikiHighlighterOptions, ShikiHighlightOptions } from "./shiki-highlighter.js";
2
+ import { BundledLanguage } from "shiki/langs";
3
3
  export interface WithShikiHighlighterOptions {
4
- highlighter?: Partial<ShikiHighlighterOptions> & {
5
- additionalLangs?: BundledLanguage[];
6
- };
7
- highlight?: ShikiHighlightOptions;
8
- container?: string;
4
+ highlighter?: Partial<ShikiHighlighterOptions> & {
5
+ additionalLangs?: BundledLanguage[];
6
+ skipLangs?: BundledLanguage[];
7
+ };
8
+ highlight?: ShikiHighlightOptions;
9
+ container?: string;
9
10
  }
@@ -1,17 +1,18 @@
1
- import { type BundledLanguage, type BundledTheme, type CodeOptionsMeta, type CodeOptionsMultipleThemes, type CodeOptionsSingleTheme, type CodeToHastOptionsCommon, getHighlighter } from 'shiki';
2
- import { MarkedContentHighlighter } from '../marked/marked-content-highlighter.js';
3
- export type ShikiHighlighterOptions = Parameters<typeof getHighlighter>[0];
4
- export type ShikiHighlightOptions = Partial<Omit<CodeToHastOptionsCommon<BundledLanguage>, 'lang'>> & CodeOptionsMeta & Partial<CodeOptionsSingleTheme<BundledTheme>> & Partial<CodeOptionsMultipleThemes<BundledTheme>>;
1
+ import { type BundledLanguage, type BundledTheme, type CodeOptionsMeta, type CodeOptionsMultipleThemes, type CodeOptionsSingleTheme, type CodeToHastOptionsCommon, createHighlighter } from "shiki";
2
+ import { MarkedContentHighlighter } from "../marked/marked-content-highlighter.js";
3
+ export type ShikiHighlighterOptions = Parameters<typeof createHighlighter>[0];
4
+ export type ShikiHighlightOptions = Partial<Omit<CodeToHastOptionsCommon<BundledLanguage>, "lang">> & CodeOptionsMeta & Partial<CodeOptionsSingleTheme<BundledTheme>> & Partial<CodeOptionsMultipleThemes<BundledTheme>>;
5
5
  export declare const defaultHighlighterOptions: {
6
- langs: string[];
7
- themes: string[];
6
+ langs: string[];
7
+ themes: string[];
8
8
  };
9
9
  export declare class ShikiHighlighter extends MarkedContentHighlighter {
10
- private highlighterOptions;
11
- private highlightOptions;
12
- private container;
13
- private hasLoadMermaid;
14
- private readonly highlighter;
15
- constructor(highlighterOptions: ShikiHighlighterOptions, highlightOptions: ShikiHighlightOptions, container: string, hasLoadMermaid?: boolean);
16
- getHighlightExtension(): import('marked').MarkedExtension;
10
+ private highlighterOptions;
11
+ private highlightOptions;
12
+ private container;
13
+ private hasLoadMermaid;
14
+ private skipLangs;
15
+ private readonly highlighter;
16
+ constructor(highlighterOptions: ShikiHighlighterOptions, highlightOptions: ShikiHighlightOptions, container: string, hasLoadMermaid?: boolean, skipLangs?: string[]);
17
+ getHighlightExtension(): import("marked").MarkedExtension;
17
18
  }
@@ -1,45 +1,51 @@
1
- import markedShiki from 'marked-shiki';
2
- import { getHighlighter, } from 'shiki';
3
- import { MarkedContentHighlighter } from '../marked/marked-content-highlighter.js';
4
- export const defaultHighlighterOptions = {
5
- langs: [
6
- 'json',
7
- 'ts',
8
- 'tsx',
9
- 'js',
10
- 'jsx',
11
- 'html',
12
- 'css',
13
- 'angular-html',
14
- 'angular-ts',
15
- ],
16
- themes: ['github-dark', 'github-light'],
1
+ import { MarkedContentHighlighter } from "../marked/marked-content-highlighter.js";
2
+ import markedShiki from "marked-shiki";
3
+ import { createHighlighter } 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
- export class ShikiHighlighter extends MarkedContentHighlighter {
19
- constructor(highlighterOptions, highlightOptions, container, hasLoadMermaid = false) {
20
- super();
21
- this.highlighterOptions = highlighterOptions;
22
- this.highlightOptions = highlightOptions;
23
- this.container = container;
24
- this.hasLoadMermaid = hasLoadMermaid;
25
- this.highlighter = getHighlighter(this.highlighterOptions);
26
- }
27
- getHighlightExtension() {
28
- return markedShiki({
29
- container: this.container,
30
- highlight: async (code, lang, props) => {
31
- if (this.hasLoadMermaid && lang === 'mermaid') {
32
- return `<pre class="mermaid">${code}</pre>`;
33
- }
34
- const { codeToHtml } = await this.highlighter;
35
- return codeToHtml(code, Object.assign({
36
- lang,
37
- // required by `transformerMeta*`
38
- meta: { __raw: props.join(' ') },
39
- theme: 'github-dark',
40
- }, this.highlightOptions));
41
- },
42
- });
43
- }
19
+ function escapeHtml(code) {
20
+ return code.replaceAll("&", "&amp;").replaceAll("<", "&lt;").replaceAll(">", "&gt;").replaceAll("\"", "&quot;").replaceAll("'", "&#39;");
44
21
  }
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hpa2ktaGlnaGxpZ2h0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvc2hpa2kvc2hpa2ktaGlnaGxpZ2h0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxXQUFXLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFPTCxjQUFjLEdBQ2YsTUFBTSxPQUFPLENBQUM7QUFFZixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQVVuRixNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FHbEM7SUFDRixLQUFLLEVBQUU7UUFDTCxNQUFNO1FBQ04sSUFBSTtRQUNKLEtBQUs7UUFDTCxJQUFJO1FBQ0osS0FBSztRQUNMLE1BQU07UUFDTixLQUFLO1FBQ0wsY0FBYztRQUNkLFlBQVk7S0FDYjtJQUNELE1BQU0sRUFBRSxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUM7Q0FDeEMsQ0FBQztBQUVGLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx3QkFBd0I7SUFHNUQsWUFDVSxrQkFBMkMsRUFDM0MsZ0JBQXVDLEVBQ3ZDLFNBQWlCLEVBQ2pCLGlCQUFpQixLQUFLO1FBRTlCLEtBQUssRUFBRSxDQUFDO1FBTEEsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF5QjtRQUMzQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXVCO1FBQ3ZDLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsbUJBQWMsR0FBZCxjQUFjLENBQVE7UUFOZixnQkFBVyxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQVN2RSxDQUFDO0lBQ0QscUJBQXFCO1FBQ25CLE9BQU8sV0FBVyxDQUFDO1lBQ2pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQ3JDLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQzlDLE9BQU8sd0JBQXdCLElBQUksUUFBUSxDQUFDO2dCQUM5QyxDQUFDO2dCQUVELE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUM7Z0JBQzlDLE9BQU8sVUFBVSxDQUNmLElBQUksRUFDSixNQUFNLENBQUMsTUFBTSxDQUNYO29CQUNFLElBQUk7b0JBQ0osaUNBQWlDO29CQUNqQyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDaEMsS0FBSyxFQUFFLGFBQWE7aUJBQ3JCLEVBQ0QsSUFBSSxDQUFDLGdCQUFnQixDQUN0QixDQUNGLENBQUM7WUFDSixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIn0=
22
+ var ShikiHighlighter = class extends MarkedContentHighlighter {
23
+ constructor(highlighterOptions, highlightOptions, container, hasLoadMermaid = false, skipLangs = []) {
24
+ super();
25
+ this.highlighterOptions = highlighterOptions;
26
+ this.highlightOptions = highlightOptions;
27
+ this.container = container;
28
+ this.hasLoadMermaid = hasLoadMermaid;
29
+ this.skipLangs = skipLangs;
30
+ this.highlighter = createHighlighter(this.highlighterOptions);
31
+ }
32
+ getHighlightExtension() {
33
+ return markedShiki({
34
+ container: this.container,
35
+ highlight: async (code, lang, props) => {
36
+ if (this.hasLoadMermaid && lang === "mermaid") return `<pre class="mermaid">${code}</pre>`;
37
+ if (this.skipLangs.includes(lang)) return `<pre class="language-${lang}"><code class="language-${lang}">${escapeHtml(code)}</code></pre>`;
38
+ const { codeToHtml } = await this.highlighter;
39
+ return codeToHtml(code, Object.assign({
40
+ lang,
41
+ meta: { __raw: props.join(" ") },
42
+ theme: "github-dark"
43
+ }, this.highlightOptions));
44
+ }
45
+ });
46
+ }
47
+ };
48
+ //#endregion
49
+ export { ShikiHighlighter, defaultHighlighterOptions };
50
+
51
+ //# sourceMappingURL=shiki-highlighter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shiki-highlighter.js","names":[],"sources":["../../../../../src/lib/content/shiki/shiki-highlighter.ts"],"sourcesContent":["import markedShiki from 'marked-shiki';\nimport {\n type BundledLanguage,\n type BundledTheme,\n type CodeOptionsMeta,\n type CodeOptionsMultipleThemes,\n type CodeOptionsSingleTheme,\n type CodeToHastOptionsCommon,\n createHighlighter,\n} from 'shiki';\n\nimport { MarkedContentHighlighter } from '../marked/marked-content-highlighter.js';\n\nexport type ShikiHighlighterOptions = Parameters<typeof createHighlighter>[0];\nexport type ShikiHighlightOptions = Partial<\n Omit<CodeToHastOptionsCommon<BundledLanguage>, 'lang'>\n> &\n CodeOptionsMeta &\n Partial<CodeOptionsSingleTheme<BundledTheme>> &\n Partial<CodeOptionsMultipleThemes<BundledTheme>>;\n\nexport const defaultHighlighterOptions: {\n langs: string[];\n themes: string[];\n} = {\n langs: [\n 'json',\n 'ts',\n 'tsx',\n 'js',\n 'jsx',\n 'html',\n 'css',\n 'angular-html',\n 'angular-ts',\n ],\n themes: ['github-dark', 'github-light'],\n};\n\nfunction escapeHtml(code: string): string {\n return code\n .replaceAll('&', '&amp;')\n .replaceAll('<', '&lt;')\n .replaceAll('>', '&gt;')\n .replaceAll('\"', '&quot;')\n .replaceAll(\"'\", '&#39;');\n}\n\nexport class ShikiHighlighter extends MarkedContentHighlighter {\n private readonly highlighter: ReturnType<typeof createHighlighter>;\n\n constructor(\n private highlighterOptions: ShikiHighlighterOptions,\n private highlightOptions: ShikiHighlightOptions,\n private container: string,\n private hasLoadMermaid = false,\n private skipLangs: string[] = [],\n ) {\n super();\n this.highlighter = createHighlighter(this.highlighterOptions);\n }\n getHighlightExtension(): import('marked').MarkedExtension {\n return markedShiki({\n container: this.container,\n highlight: async (code, lang, props) => {\n if (this.hasLoadMermaid && lang === 'mermaid') {\n return `<pre class=\"mermaid\">${code}</pre>`;\n }\n\n if (this.skipLangs.includes(lang as string)) {\n const escapedCode = escapeHtml(code);\n\n return `<pre class=\"language-${lang}\"><code class=\"language-${lang}\">${escapedCode}</code></pre>`;\n }\n\n const { codeToHtml } = await this.highlighter;\n return codeToHtml(\n code,\n Object.assign(\n {\n lang,\n // required by `transformerMeta*`\n meta: { __raw: props.join(' ') },\n theme: 'github-dark',\n },\n this.highlightOptions,\n ),\n );\n },\n });\n }\n}\n"],"mappings":";;;;AAqBA,IAAa,4BAGT;CACF,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;CACD,QAAQ,CAAC,eAAe,eAAe;CACxC;AAED,SAAS,WAAW,MAAsB;AACxC,QAAO,KACJ,WAAW,KAAK,QAAQ,CACxB,WAAW,KAAK,OAAO,CACvB,WAAW,KAAK,OAAO,CACvB,WAAW,MAAK,SAAS,CACzB,WAAW,KAAK,QAAQ;;AAG7B,IAAa,mBAAb,cAAsC,yBAAyB;CAG7D,YACE,oBACA,kBACA,WACA,iBAAyB,OACzB,YAA8B,EAAE,EAChC;AACA,SAAO;AANC,OAAA,qBAAA;AACA,OAAA,mBAAA;AACA,OAAA,YAAA;AACA,OAAA,iBAAA;AACA,OAAA,YAAA;AAGR,OAAK,cAAc,kBAAkB,KAAK,mBAAmB;;CAE/D,wBAA0D;AACxD,SAAO,YAAY;GACjB,WAAW,KAAK;GAChB,WAAW,OAAO,MAAM,MAAM,UAAU;AACtC,QAAI,KAAK,kBAAkB,SAAS,UAClC,QAAO,wBAAwB,KAAK;AAGtC,QAAI,KAAK,UAAU,SAAS,KAAe,CAGzC,QAAO,wBAAwB,KAAK,0BAA0B,KAAK,IAF/C,WAAW,KAAK,CAE+C;IAGrF,MAAM,EAAE,eAAe,MAAM,KAAK;AAClC,WAAO,WACL,MACA,OAAO,OACL;KACE;KAEA,MAAM,EAAE,OAAO,MAAM,KAAK,IAAI,EAAE;KAChC,OAAO;KACR,EACD,KAAK,iBACN,CACF;;GAEJ,CAAC"}
@@ -1,22 +1,22 @@
1
- import type { Plugin } from 'vite';
2
- import type { WithShikiHighlighterOptions } from './content/shiki/options.js';
3
- import type { WithPrismHighlighterOptions } from './content/prism/options.js';
4
- import type { WithMarkedOptions } from './content/marked/index.js';
5
- import type { Options } from './options.js';
1
+ import * as vite from "vite";
2
+ import type { WithShikiHighlighterOptions } from "./content/shiki/options.js";
3
+ import type { WithPrismHighlighterOptions } from "./content/prism/options.js";
4
+ import type { WithMarkedOptions } from "./content/marked/index.js";
5
+ import type { Options } from "./options.js";
6
6
  export type ContentPluginOptions = {
7
- highlighter?: 'shiki' | 'prism';
8
- markedOptions?: WithMarkedOptions;
9
- shikiOptions?: WithShikiHighlighterOptions;
10
- prismOptions?: WithPrismHighlighterOptions;
7
+ highlighter?: "shiki" | "prism";
8
+ markedOptions?: WithMarkedOptions;
9
+ shikiOptions?: WithShikiHighlighterOptions;
10
+ prismOptions?: WithPrismHighlighterOptions;
11
11
  };
12
12
  /**
13
- * Content plugin that provides markdown and content file processing for Analog.
14
- *
15
- * IMPORTANT: This plugin uses tinyglobby for file discovery.
16
- * Key pitfall with { dot: true }:
17
- * - Returns relative paths from cwd (e.g., "apps/blog-app/src/content/...")
18
- * - These paths CANNOT be used directly in ES module imports
19
- * - Relative paths without ./ or ../ are treated as package names
20
- * - Must convert to absolute paths for imports to work correctly
21
- */
22
- export declare function contentPlugin({ highlighter, markedOptions, shikiOptions, prismOptions, }?: ContentPluginOptions, options?: Options): Plugin[];
13
+ * Content plugin that provides markdown and content file processing for Analog.
14
+ *
15
+ * IMPORTANT: This plugin uses tinyglobby for file discovery.
16
+ * Key pitfall with { dot: true }:
17
+ * - Returns relative paths from cwd (e.g., "apps/blog-app/src/content/...")
18
+ * - These paths CANNOT be used directly in ES module imports
19
+ * - Relative paths without ./ or ../ are treated as package names
20
+ * - Must convert to absolute paths for imports to work correctly
21
+ */
22
+ export declare function contentPlugin({ highlighter, markedOptions, shikiOptions, prismOptions }?: ContentPluginOptions, options?: Options): vite.Plugin[];