@analogjs/platform 3.0.0-alpha.2 → 3.0.0-alpha.21

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 (292) hide show
  1. package/package.json +16 -18
  2. package/src/index.d.ts +5 -2
  3. package/src/index.js +9 -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 -4
  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.d.ts +1 -0
  18. package/src/lib/content/prism/angular.js +18 -19
  19. package/src/lib/content/prism/angular.js.map +1 -0
  20. package/src/lib/content/prism/index.d.ts +1 -1
  21. package/src/lib/content/prism/index.js +10 -7
  22. package/src/lib/content/prism/index.js.map +1 -0
  23. package/src/lib/content/prism/options.d.ts +1 -1
  24. package/src/lib/content/prism/prism-highlighter.d.ts +5 -5
  25. package/src/lib/content/prism/prism-highlighter.js +33 -33
  26. package/src/lib/content/prism/prism-highlighter.js.map +1 -0
  27. package/src/lib/content/shiki/index.d.ts +3 -3
  28. package/src/lib/content/shiki/index.js +19 -28
  29. package/src/lib/content/shiki/index.js.map +1 -0
  30. package/src/lib/content/shiki/options.d.ts +7 -7
  31. package/src/lib/content/shiki/shiki-highlighter.d.ts +13 -13
  32. package/src/lib/content/shiki/shiki-highlighter.js +45 -44
  33. package/src/lib/content/shiki/shiki-highlighter.js.map +1 -0
  34. package/src/lib/content-plugin.d.ts +19 -19
  35. package/src/lib/content-plugin.js +178 -196
  36. package/src/lib/content-plugin.js.map +1 -0
  37. package/src/lib/deps-plugin.d.ts +2 -2
  38. package/src/lib/deps-plugin.js +73 -82
  39. package/src/lib/deps-plugin.js.map +1 -0
  40. package/src/lib/json-ld-manifest-plugin.d.ts +41 -0
  41. package/src/lib/json-ld-manifest-plugin.js +84 -0
  42. package/src/lib/json-ld-manifest-plugin.js.map +1 -0
  43. package/src/lib/nx-plugin/builders.json +7 -0
  44. package/src/lib/nx-plugin/executors.json +5 -0
  45. package/src/lib/nx-plugin/generators.json +25 -0
  46. package/src/lib/nx-plugin/package.json +1 -5
  47. package/src/lib/nx-plugin/src/executors/vite/compat.d.ts +3 -2
  48. package/src/lib/nx-plugin/src/executors/vite/compat.js +6 -6
  49. package/src/lib/nx-plugin/src/executors/vite/compat.js.map +1 -1
  50. package/src/lib/nx-plugin/src/executors/vite/schema.d.ts +1 -1
  51. package/src/lib/nx-plugin/src/executors/vite/vite.impl.d.ts +1 -1
  52. package/src/lib/nx-plugin/src/executors/vite/vite.impl.js +5 -4
  53. package/src/lib/nx-plugin/src/executors/vite/vite.impl.js.map +1 -1
  54. package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.d.ts +3 -2
  55. package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.js +6 -6
  56. package/src/lib/nx-plugin/src/executors/vite-dev-server/compat.js.map +1 -1
  57. package/src/lib/nx-plugin/src/executors/vite-dev-server/schema.d.ts +1 -1
  58. package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.d.ts +1 -1
  59. package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.js +5 -4
  60. package/src/lib/nx-plugin/src/executors/vite-dev-server/vite-dev-server.impl.js.map +1 -1
  61. package/src/lib/nx-plugin/src/executors/vitest/compat.d.ts +3 -2
  62. package/src/lib/nx-plugin/src/executors/vitest/compat.js +6 -6
  63. package/src/lib/nx-plugin/src/executors/vitest/compat.js.map +1 -1
  64. package/src/lib/nx-plugin/src/executors/vitest/schema.d.ts +1 -1
  65. package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.d.ts +1 -1
  66. package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.js +5 -4
  67. package/src/lib/nx-plugin/src/executors/vitest/vitest.impl.js.map +1 -1
  68. package/src/lib/nx-plugin/src/generators/app/compat.d.ts +9 -2
  69. package/src/lib/nx-plugin/src/generators/app/compat.js +17 -6
  70. package/src/lib/nx-plugin/src/generators/app/compat.js.map +1 -1
  71. package/src/lib/nx-plugin/src/generators/app/files/root/tsconfig.base.json +3 -6
  72. package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/test-setup.ts__template__ +1 -0
  73. package/src/lib/nx-plugin/src/generators/app/files/template-angular/tsconfig.app.json__template__ +1 -3
  74. package/src/lib/nx-plugin/src/generators/app/files/template-angular/tsconfig.json__template__ +2 -1
  75. package/src/lib/nx-plugin/src/generators/app/files/template-angular/vite.config.ts__template__ +6 -0
  76. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/src/app/app.config.ts__template__ +0 -6
  77. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/tsconfig.json__template__ +4 -2
  78. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/vite.config.ts__template__ +0 -18
  79. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/src/app/app.config.ts__template__ +0 -6
  80. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/tsconfig.json__template__ +4 -2
  81. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/vite.config.ts__template__ +0 -18
  82. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/src/app/app.config.ts__template__ +0 -6
  83. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/tsconfig.app.json__template__ +1 -3
  84. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/tsconfig.json__template__ +4 -2
  85. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/vite.config.ts__template__ +0 -9
  86. package/src/lib/nx-plugin/src/generators/app/generator.d.ts +11 -11
  87. package/src/lib/nx-plugin/src/generators/app/generator.js +78 -88
  88. package/src/lib/nx-plugin/src/generators/app/generator.js.map +1 -1
  89. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.d.ts +1 -1
  90. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.d.ts +1 -1
  91. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js +72 -89
  92. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js.map +1 -1
  93. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.d.ts +2 -2
  94. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js +24 -58
  95. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js.map +1 -1
  96. package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.d.ts +2 -2
  97. package/src/lib/nx-plugin/src/generators/app/lib/add-files.d.ts +2 -2
  98. package/src/lib/nx-plugin/src/generators/app/lib/add-files.js +15 -16
  99. package/src/lib/nx-plugin/src/generators/app/lib/add-files.js.map +1 -1
  100. package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.d.ts +2 -2
  101. package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.js +14 -13
  102. package/src/lib/nx-plugin/src/generators/app/lib/add-home-page.js.map +1 -1
  103. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.d.ts +7 -7
  104. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.js +15 -30
  105. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-config.js.map +1 -1
  106. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.d.ts +3 -5
  107. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.js +49 -147
  108. package/src/lib/nx-plugin/src/generators/app/lib/add-tailwind-helpers.js.map +1 -1
  109. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.d.ts +1 -1
  110. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.d.ts +2 -2
  111. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js +17 -20
  112. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js.map +1 -1
  113. package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.d.ts +2 -2
  114. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.d.ts +1 -1
  115. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js +14 -12
  116. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js.map +1 -1
  117. package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.d.ts +4 -5
  118. package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.js +6 -10
  119. package/src/lib/nx-plugin/src/generators/app/versions/minimum-supported-versions.js.map +1 -1
  120. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.d.ts +0 -3
  121. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.d.ts +0 -5
  122. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.d.ts +9 -16
  123. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js +7 -37
  124. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js.map +1 -1
  125. package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.d.ts +1 -1
  126. package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.js +9 -15
  127. package/src/lib/nx-plugin/src/generators/app/versions/tailwind-dependencies.js.map +1 -1
  128. package/src/lib/nx-plugin/src/generators/app/versions.d.ts +0 -28
  129. package/src/lib/nx-plugin/src/generators/init/compat.d.ts +9 -2
  130. package/src/lib/nx-plugin/src/generators/init/compat.js +17 -6
  131. package/src/lib/nx-plugin/src/generators/init/compat.js.map +1 -1
  132. package/src/lib/nx-plugin/src/generators/init/generator.d.ts +3 -3
  133. package/src/lib/nx-plugin/src/generators/init/generator.js +54 -55
  134. package/src/lib/nx-plugin/src/generators/init/generator.js.map +1 -1
  135. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.d.ts +1 -1
  136. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js +19 -20
  137. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js.map +1 -1
  138. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.d.ts +2 -2
  139. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js +20 -18
  140. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js.map +1 -1
  141. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.d.ts +2 -2
  142. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js +56 -57
  143. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js.map +1 -1
  144. package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.d.ts +1 -1
  145. package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.js +12 -11
  146. package/src/lib/nx-plugin/src/generators/init/lib/update-git-ignore.js.map +1 -1
  147. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.d.ts +2 -2
  148. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js +17 -15
  149. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js.map +1 -1
  150. package/src/lib/nx-plugin/src/generators/init/lib/update-main.d.ts +2 -2
  151. package/src/lib/nx-plugin/src/generators/init/lib/update-main.js +12 -12
  152. package/src/lib/nx-plugin/src/generators/init/lib/update-main.js.map +1 -1
  153. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.d.ts +2 -2
  154. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js +19 -25
  155. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js.map +1 -1
  156. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.d.ts +2 -2
  157. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js +43 -45
  158. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js.map +1 -1
  159. package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.d.ts +2 -2
  160. package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.js +27 -28
  161. package/src/lib/nx-plugin/src/generators/init/lib/update-test-target.js.map +1 -1
  162. package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.d.ts +2 -2
  163. package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js +19 -17
  164. package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js.map +1 -1
  165. package/src/lib/nx-plugin/src/generators/init/test-files/src/test-setup.ts__template__ +1 -0
  166. package/src/lib/nx-plugin/src/generators/page/compat.d.ts +9 -0
  167. package/src/lib/nx-plugin/src/generators/page/compat.js +18 -0
  168. package/src/lib/nx-plugin/src/generators/page/compat.js.map +1 -0
  169. package/src/lib/nx-plugin/src/generators/page/generator.d.ts +3 -4
  170. package/src/lib/nx-plugin/src/generators/page/generator.js +33 -44
  171. package/src/lib/nx-plugin/src/generators/page/generator.js.map +1 -1
  172. package/src/lib/nx-plugin/src/generators/preset/__snapshots__/generator.spec.ts.snap +5 -3
  173. package/src/lib/nx-plugin/src/generators/preset/generator.d.ts +3 -3
  174. package/src/lib/nx-plugin/src/generators/preset/generator.js +17 -43
  175. package/src/lib/nx-plugin/src/generators/preset/generator.js.map +1 -1
  176. package/src/lib/nx-plugin/src/generators/setup-vitest/compat.d.ts +9 -2
  177. package/src/lib/nx-plugin/src/generators/setup-vitest/compat.js +17 -6
  178. package/src/lib/nx-plugin/src/generators/setup-vitest/compat.js.map +1 -1
  179. package/src/lib/nx-plugin/src/generators/setup-vitest/files/src/test-setup.ts__template__ +1 -0
  180. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.d.ts +3 -3
  181. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js +35 -32
  182. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js.map +1 -1
  183. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.d.ts +1 -1
  184. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.js +7 -7
  185. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/add-analog-dependencies.js.map +1 -1
  186. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.d.ts +2 -2
  187. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.js +20 -21
  188. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-test-target.js.map +1 -1
  189. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.d.ts +2 -2
  190. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js +19 -19
  191. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js.map +1 -1
  192. package/src/lib/nx-plugin/src/index.js +0 -1
  193. package/src/lib/nx-plugin/src/utils/version-utils.d.ts +1 -1
  194. package/src/lib/nx-plugin/src/utils/version-utils.js +20 -18
  195. package/src/lib/nx-plugin/src/utils/version-utils.js.map +1 -1
  196. package/src/lib/nx-plugin/src/utils/versions/dependencies.js +42 -62
  197. package/src/lib/nx-plugin/src/utils/versions/dependencies.js.map +1 -1
  198. package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js +49 -83
  199. package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js.map +1 -1
  200. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js +33 -20
  201. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js.map +1 -1
  202. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js +33 -20
  203. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js.map +1 -1
  204. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.d.ts +7 -7
  205. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js +37 -23
  206. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js.map +1 -1
  207. package/src/lib/options.d.ts +158 -80
  208. package/src/lib/platform-plugin.d.ts +2 -2
  209. package/src/lib/platform-plugin.js +67 -61
  210. package/src/lib/platform-plugin.js.map +1 -0
  211. package/src/lib/route-file-discovery.d.ts +23 -0
  212. package/src/lib/route-file-discovery.js +114 -0
  213. package/src/lib/route-file-discovery.js.map +1 -0
  214. package/src/lib/route-generation-plugin.d.ts +3 -0
  215. package/src/lib/route-generation-plugin.js +34 -0
  216. package/src/lib/route-generation-plugin.js.map +1 -0
  217. package/src/lib/route-manifest.d.ts +120 -0
  218. package/src/lib/route-manifest.js +411 -0
  219. package/src/lib/route-manifest.js.map +1 -0
  220. package/src/lib/router-plugin.d.ts +19 -19
  221. package/src/lib/router-plugin.js +193 -150
  222. package/src/lib/router-plugin.js.map +1 -0
  223. package/src/lib/ssr/inject-html-plugin.d.ts +1 -1
  224. package/src/lib/ssr/inject-html-plugin.js +25 -25
  225. package/src/lib/ssr/inject-html-plugin.js.map +1 -0
  226. package/src/lib/ssr/ssr-build-plugin.d.ts +18 -2
  227. package/src/lib/ssr/ssr-build-plugin.js +54 -30
  228. package/src/lib/ssr/ssr-build-plugin.js.map +1 -0
  229. package/src/lib/tailwind-preprocessor.d.ts +23 -0
  230. package/src/lib/tailwind-preprocessor.js +33 -0
  231. package/src/lib/tailwind-preprocessor.js.map +1 -0
  232. package/src/lib/typed-routes-plugin.d.ts +50 -0
  233. package/src/lib/typed-routes-plugin.js +204 -0
  234. package/src/lib/typed-routes-plugin.js.map +1 -0
  235. package/src/lib/utils/rolldown.d.ts +3 -0
  236. package/src/lib/utils/rolldown.js +15 -0
  237. package/src/lib/utils/rolldown.js.map +1 -0
  238. package/src/server-mode-plugin.d.ts +6 -6
  239. package/src/server-mode-plugin.js +16 -18
  240. package/src/server-mode-plugin.js.map +1 -0
  241. package/README.md +0 -5
  242. package/src/lib/content/prism/options.js +0 -1
  243. package/src/lib/content/shiki/options.js +0 -1
  244. package/src/lib/nx-plugin/README.md +0 -23
  245. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v2/postcss.config.cjs__template__ +0 -10
  246. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v2/tailwind.config.cjs__template__ +0 -14
  247. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v3/postcss.config.cjs__template__ +0 -10
  248. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v3/tailwind.config.ts__template__ +0 -14
  249. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v4/.postcssrc.json +0 -5
  250. package/src/lib/nx-plugin/src/generators/app/files/tailwind/v4/tailwind.config.ts__template__ +0 -14
  251. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/index.html__template__ +0 -15
  252. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/app/app.component.spec.ts__template__ +0 -17
  253. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/app/app.component.ts__template__ +0 -10
  254. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/favicon.ico__template__ +0 -0
  255. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/main.providers.ts__template__ +0 -5
  256. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/main.server.ts__template__ +0 -23
  257. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/main.ts__template__ +0 -17
  258. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/public/assets/.gitkeep__template__ +0 -0
  259. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/public/assets/analog.svg__template__ +0 -1
  260. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/public/assets/vite.svg__template__ +0 -1
  261. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/server/routes/v1/hello.ts__template__ +0 -3
  262. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/styles.css__template__ +0 -4
  263. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/test-setup.ts__template__ +0 -12
  264. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/src/vite-env.d.ts__template__ +0 -1
  265. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.app.json__template__ +0 -16
  266. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.editor.json__template__ +0 -7
  267. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.json__template__ +0 -32
  268. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/tsconfig.spec.json__template__ +0 -14
  269. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/vite.config.ts__template__ +0 -69
  270. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.js +0 -15
  271. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-dependencies.js.map +0 -1
  272. package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.js +0 -58
  273. package/src/lib/nx-plugin/src/generators/app/lib/add-eslint.js.map +0 -1
  274. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js +0 -47
  275. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js.map +0 -1
  276. package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js +0 -107
  277. package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js.map +0 -1
  278. package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js +0 -56
  279. package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js.map +0 -1
  280. package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js +0 -72
  281. package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js.map +0 -1
  282. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js +0 -46
  283. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js.map +0 -1
  284. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js +0 -37
  285. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js.map +0 -1
  286. package/src/lib/nx-plugin/src/generators/app/versions.js +0 -43
  287. package/src/lib/nx-plugin/src/generators/app/versions.js.map +0 -1
  288. package/src/lib/nx-plugin/src/index.d.ts +0 -0
  289. package/src/lib/nx-plugin/src/index.js.map +0 -1
  290. package/src/lib/options.js +0 -1
  291. package/src/lib/ssr/ssr-xhr-plugin.d.ts +0 -2
  292. package/src/lib/ssr/ssr-xhr-plugin.js +0 -28
package/package.json CHANGED
@@ -1,11 +1,14 @@
1
1
  {
2
2
  "name": "@analogjs/platform",
3
- "version": "3.0.0-alpha.2",
3
+ "version": "3.0.0-alpha.21",
4
4
  "description": "The fullstack meta-framework for Angular",
5
5
  "type": "module",
6
6
  "author": "Brandon Roberts <robertsbt@gmail.com>",
7
7
  "exports": {
8
- ".": "./src/index.js",
8
+ ".": {
9
+ "types": "./src/index.d.ts",
10
+ "default": "./src/index.js"
11
+ },
9
12
  "./package.json": "./package.json"
10
13
  },
11
14
  "keywords": [
@@ -28,27 +31,25 @@
28
31
  "url": "https://github.com/sponsors/brandonroberts"
29
32
  },
30
33
  "dependencies": {
34
+ "front-matter": "^4.0.2",
35
+ "tinyglobby": "^0.2.15",
31
36
  "nitro": "3.0.260311-beta",
32
- "@analogjs/vite-plugin-angular": "^3.0.0-alpha.2",
33
- "@analogjs/vite-plugin-nitro": "^3.0.0-alpha.2",
37
+ "@analogjs/vite-plugin-angular": "^3.0.0-alpha.21",
38
+ "@analogjs/vite-plugin-nitro": "^3.0.0-alpha.21",
39
+ "rolldown": "^1.0.0-rc.12",
34
40
  "vitefu": "^1.1.2"
35
41
  },
36
42
  "peerDependencies": {
37
43
  "@nx/angular": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0 || ^22",
38
44
  "@nx/devkit": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0 || ^22",
39
45
  "@nx/vite": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0 || ^22",
40
- "marked": "^15.0.12",
46
+ "marked": "^17.0.5",
41
47
  "marked-gfm-heading-id": "^4.1.3",
42
48
  "marked-highlight": "^2.2.3",
43
49
  "marked-mangle": "^1.1.12",
44
50
  "marked-shiki": "^1.2.1",
45
- "shiki": "^1.29.2",
46
- "vite": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"
47
- },
48
- "overrides": {
49
- "@nx/vite": {
50
- "vite": "$vite"
51
- }
51
+ "shiki": "^1.29.2 || ^4.0.2",
52
+ "vite": "^6.0.0 || ^7.0.0 || ^8.0.0"
52
53
  },
53
54
  "peerDependenciesMeta": {
54
55
  "@nx/angular": {
@@ -73,7 +74,7 @@
73
74
  "optional": true
74
75
  }
75
76
  },
76
- "builders": "./src/lib/nx-plugin/executors.json",
77
+ "builders": "./src/lib/nx-plugin/builders.json",
77
78
  "executors": "./src/lib/nx-plugin/executors.json",
78
79
  "generators": "./src/lib/nx-plugin/generators.json",
79
80
  "schematics": "./src/lib/nx-plugin/generators.json",
@@ -92,8 +93,5 @@
92
93
  "publishConfig": {
93
94
  "access": "public",
94
95
  "provenance": true
95
- },
96
- "types": "./src/index.d.ts",
97
- "module": "./src/index.js",
98
- "main": "./src/index.js"
99
- }
96
+ }
97
+ }
package/src/index.d.ts CHANGED
@@ -1,3 +1,6 @@
1
- import { platformPlugin } from './lib/platform-plugin.js';
2
- export { Options, PrerenderContentFile } from './lib/options';
1
+ import { platformPlugin } from "./lib/platform-plugin.js";
2
+ export type { Options, PrerenderSitemapConfig, TypedRouterOptions, PrerenderContentFile, SitemapConfig, SitemapEntry, SitemapExcludeRule, SitemapPriority, SitemapRouteDefinition, SitemapRouteInput, SitemapRouteSource, SitemapTransform } from "./lib/options.js";
3
+ export { routeGenerationPlugin } from "./lib/route-generation-plugin.js";
4
+ export { tailwindPreprocessor } from "./lib/tailwind-preprocessor.js";
5
+ export type { TailwindPreprocessorMode, TailwindPreprocessorOptions } from "./lib/tailwind-preprocessor.js";
3
6
  export default platformPlugin;
package/src/index.js CHANGED
@@ -1,3 +1,9 @@
1
- import { platformPlugin } from './lib/platform-plugin.js';
2
- export default platformPlugin;
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRzFELGVBQWUsY0FBYyxDQUFDIn0=
1
+ import { routeGenerationPlugin } from "./lib/route-generation-plugin.js";
2
+ import { platformPlugin } from "./lib/platform-plugin.js";
3
+ import { tailwindPreprocessor } from "./lib/tailwind-preprocessor.js";
4
+ //#region packages/platform/src/index.ts
5
+ var src_default = platformPlugin;
6
+ //#endregion
7
+ export { src_default as default, routeGenerationPlugin, tailwindPreprocessor };
8
+
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["import { platformPlugin } from './lib/platform-plugin.js';\n\nexport type {\n Options,\n PrerenderSitemapConfig,\n TypedRouterOptions,\n PrerenderContentFile,\n SitemapConfig,\n SitemapEntry,\n SitemapExcludeRule,\n SitemapPriority,\n SitemapRouteDefinition,\n SitemapRouteInput,\n SitemapRouteSource,\n SitemapTransform,\n} from './lib/options.js';\nexport { routeGenerationPlugin } from './lib/route-generation-plugin.js';\nexport { tailwindPreprocessor } from './lib/tailwind-preprocessor.js';\nexport type {\n TailwindPreprocessorMode,\n TailwindPreprocessorOptions,\n} from './lib/tailwind-preprocessor.js';\nexport default platformPlugin;\n"],"mappings":";;;;AAsBA,IAAA,cAAe"}
@@ -1,2 +1,2 @@
1
- import { Plugin } from 'vite';
2
- export declare function clearClientPageEndpointsPlugin(): Plugin;
1
+ import { Plugin } from "vite";
2
+ export declare function clearClientPageEndpointsPlugin(): Plugin[];
@@ -1,33 +1,23 @@
1
- import { normalizePath } from 'vite';
2
- export function clearClientPageEndpointsPlugin() {
3
- return {
4
- name: 'analogjs-platform-clear-client-page-endpoint',
5
- apply: 'build',
6
- config() {
7
- return {
8
- build: {
9
- rollupOptions: {
10
- onwarn(warning) {
11
- if (warning.message.includes('empty chunk') &&
12
- warning.message.endsWith('.server')) {
13
- return;
14
- }
15
- },
16
- },
17
- },
18
- };
19
- },
20
- transform(_code, id, options) {
21
- if (!options?.ssr &&
22
- id.includes(normalizePath('src/app/pages')) &&
23
- id.endsWith('.server.ts')) {
24
- return {
25
- code: 'export default undefined;',
26
- map: null,
27
- };
28
- }
29
- return;
30
- },
31
- };
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
+ }];
32
19
  }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXItY2xpZW50LXBhZ2UtZW5kcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NsZWFyLWNsaWVudC1wYWdlLWVuZHBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFN0MsTUFBTSxVQUFVLDhCQUE4QjtJQUM1QyxPQUFPO1FBQ0wsSUFBSSxFQUFFLDhDQUE4QztRQUNwRCxLQUFLLEVBQUUsT0FBTztRQUNkLE1BQU07WUFDSixPQUFPO2dCQUNMLEtBQUssRUFBRTtvQkFDTCxhQUFhLEVBQUU7d0JBQ2IsTUFBTSxDQUFDLE9BQU87NEJBQ1osSUFDRSxPQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7Z0NBQ3ZDLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUNuQyxDQUFDO2dDQUNELE9BQU87NEJBQ1QsQ0FBQzt3QkFDSCxDQUFDO3FCQUNGO2lCQUNGO2FBQ0YsQ0FBQztRQUNKLENBQUM7UUFDRCxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPO1lBQzFCLElBQ0UsQ0FBQyxPQUFPLEVBQUUsR0FBRztnQkFDYixFQUFFLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDM0MsRUFBRSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsRUFDekIsQ0FBQztnQkFDRCxPQUFPO29CQUNMLElBQUksRUFBRSwyQkFBMkI7b0JBQ2pDLEdBQUcsRUFBRSxJQUFJO2lCQUNWLENBQUM7WUFDSixDQUFDO1lBRUQsT0FBTztRQUNULENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyJ9
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":["../../../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,8 +1,8 @@
1
- import { MarkedExtension } from 'marked';
2
- import { MarkedSetupService } from './marked-setup.service.js';
3
- import { MarkedContentHighlighter } from './marked-content-highlighter.js';
1
+ import { MarkedExtension } from "marked";
2
+ import { MarkedSetupService } from "./marked-setup.service.js";
3
+ import { MarkedContentHighlighter } from "./marked-content-highlighter.js";
4
4
  export type WithMarkedOptions = {
5
- mangle?: boolean;
6
- extensions?: MarkedExtension[];
5
+ mangle?: boolean;
6
+ extensions?: MarkedExtension[];
7
7
  };
8
8
  export declare function getMarkedSetup(options?: WithMarkedOptions, highlighter?: MarkedContentHighlighter): MarkedSetupService;
@@ -1,7 +1,11 @@
1
- import { MarkedSetupService } from './marked-setup.service.js';
2
- let markedSetupInstance;
3
- export function getMarkedSetup(options, highlighter) {
4
- markedSetupInstance ?? (markedSetupInstance = new MarkedSetupService(options, highlighter));
5
- return markedSetupInstance;
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
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvbWFya2VkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUS9ELElBQUksbUJBQXVDLENBQUM7QUFFNUMsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsT0FBMkIsRUFDM0IsV0FBc0M7SUFFdEMsbUJBQW1CLEtBQW5CLG1CQUFtQixHQUFLLElBQUksa0JBQWtCLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxFQUFDO0lBQ3JFLE9BQU8sbUJBQW1CLENBQUM7QUFDN0IsQ0FBQyJ9
8
+ //#endregion
9
+ export { getMarkedSetup };
10
+
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../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,6 +1,4 @@
1
- export interface MarkedContentHighlighter {
2
- augmentCodeBlock?(code: string, lang: string): string;
3
- }
4
1
  export declare abstract class MarkedContentHighlighter {
5
- abstract getHighlightExtension(): import('marked').MarkedExtension;
2
+ augmentCodeBlock?(code: string, lang: string): string;
3
+ abstract getHighlightExtension(): import("marked").MarkedExtension;
6
4
  }
@@ -1,3 +1,6 @@
1
- export class MarkedContentHighlighter {
2
- }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VkLWNvbnRlbnQtaGlnaGxpZ2h0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvbWFya2VkL21hcmtlZC1jb250ZW50LWhpZ2hsaWdodGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBZ0Isd0JBQXdCO0NBRTdDIn0=
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":["../../../../../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,10 +1,10 @@
1
- import { marked } from 'marked';
2
- import { MarkedContentHighlighter } from './marked-content-highlighter.js';
3
- import { WithMarkedOptions } from './index.js';
1
+ import { marked } from "marked";
2
+ import { MarkedContentHighlighter } from "./marked-content-highlighter.js";
3
+ import { WithMarkedOptions } from "./index.js";
4
4
  export declare class MarkedSetupService {
5
- private readonly options?;
6
- private readonly highlighter?;
7
- private readonly marked;
8
- constructor(options?: WithMarkedOptions | undefined, highlighter?: MarkedContentHighlighter | undefined);
9
- getMarkedInstance(): typeof marked;
5
+ private readonly options?;
6
+ private readonly highlighter?;
7
+ private readonly marked;
8
+ constructor(options?: WithMarkedOptions | undefined, highlighter?: MarkedContentHighlighter | undefined);
9
+ getMarkedInstance(): typeof marked;
10
10
  }
@@ -1,54 +1,44 @@
1
- import { marked } from 'marked';
2
- import { gfmHeadingId } from 'marked-gfm-heading-id';
3
- import { mangle } from 'marked-mangle';
4
- export class MarkedSetupService {
5
- constructor(options, highlighter) {
6
- this.options = options;
7
- this.highlighter = highlighter;
8
- const analogMarkedExtension = {
9
- pedantic: false,
10
- gfm: true,
11
- breaks: false,
12
- renderer: {
13
- code({ text, lang }) {
14
- // Let's do a language based detection like on GitHub
15
- // So we can still have non-interpreted mermaid code
16
- if (lang === 'mermaid') {
17
- return '<pre class="mermaid">' + text + '</pre>';
18
- }
19
- if (!lang) {
20
- return '<pre><code>' + text + '</code></pre>';
21
- }
22
- if (highlighter?.augmentCodeBlock) {
23
- return highlighter?.augmentCodeBlock(text, lang);
24
- }
25
- return `<pre class="language-${lang}"><code class="language-${lang}">${text}</code></pre>`;
26
- },
27
- codespan({ text }) {
28
- return `<code>${text}</code>`;
29
- },
30
- paragraph({ tokens }) {
31
- const text = this.parser.parseInline(tokens);
32
- return `<p>${text}</p>`;
33
- },
34
- },
35
- };
36
- const extensions = [
37
- analogMarkedExtension,
38
- gfmHeadingId(),
39
- ...(options?.extensions || []),
40
- ];
41
- if (this.options?.mangle) {
42
- extensions.push(mangle());
43
- }
44
- if (this.highlighter) {
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VkLXNldHVwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvbWFya2VkL21hcmtlZC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQTJCLE1BQU0sUUFBUSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3ZDLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFDbUIsT0FBMkIsRUFDM0IsV0FBc0M7UUFEdEMsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQTJCO1FBRXZELE1BQU0scUJBQXFCLEdBQW9CO1lBQzdDLFFBQVEsRUFBRSxLQUFLO1lBQ2YsR0FBRyxFQUFFLElBQUk7WUFDVCxNQUFNLEVBQUUsS0FBSztZQUNiLFFBQVEsRUFBRTtnQkFDUixJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO29CQUNqQixxREFBcUQ7b0JBQ3JELG9EQUFvRDtvQkFDcEQsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7d0JBQ3ZCLE9BQU8sdUJBQXVCLEdBQUcsSUFBSSxHQUFHLFFBQVEsQ0FBQztvQkFDbkQsQ0FBQztvQkFFRCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ1YsT0FBTyxhQUFhLEdBQUcsSUFBSSxHQUFHLGVBQWUsQ0FBQztvQkFDaEQsQ0FBQztvQkFFRCxJQUFJLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDO3dCQUNsQyxPQUFPLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ25ELENBQUM7b0JBRUQsT0FBTyx3QkFBd0IsSUFBSSwyQkFBMkIsSUFBSSxLQUFLLElBQUksZUFBZSxDQUFDO2dCQUM3RixDQUFDO2dCQUNELFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRTtvQkFDZixPQUFPLFNBQVMsSUFBSSxTQUFTLENBQUM7Z0JBQ2hDLENBQUM7Z0JBQ0QsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFO29CQUNsQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDN0MsT0FBTyxNQUFNLElBQUksTUFBTSxDQUFDO2dCQUMxQixDQUFDO2FBQ0Y7U0FDRixDQUFDO1FBRUYsTUFBTSxVQUFVLEdBQUc7WUFDakIscUJBQXFCO1lBQ3JCLFlBQVksRUFBRTtZQUNkLEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztTQUMvQixDQUFDO1FBRUYsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3pCLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUM1QixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztRQUM1RCxDQUFDO1FBRUQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBRTFCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztDQUNGIn0=
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":["../../../../../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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,20 +1,19 @@
1
- "use strict";
2
- (function () {
3
- if (typeof Prism === 'undefined') {
4
- return;
5
- }
6
- Prism.languages.angular = Prism.languages.extend('markup', {
7
- keyword: /(?:@if|@for|@switch|@defer|@loading|@error|@placeholder|prefetch)\b/,
8
- operator: /\b(?:on|when)\b/,
9
- number: {
10
- pattern: /\b(minimum|after)\s+\d+(?:s|ms|)/gi,
11
- lookbehind: true,
12
- },
13
- builtin: {
14
- pattern: /\b(?:viewport|timer|minimum|after|hover|idle|immediate|interaction)/,
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
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYXRmb3JtL3NyYy9saWIvY29udGVudC9wcmlzbS9hbmd1bGFyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxDQUFDO0lBQ0MsSUFBSSxPQUFPLEtBQUssS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxPQUFPO0lBQ1QsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtRQUN6RCxPQUFPLEVBQ0wscUVBQXFFO1FBQ3ZFLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsTUFBTSxFQUFFO1lBQ04sT0FBTyxFQUFFLG9DQUFvQztZQUM3QyxVQUFVLEVBQUUsSUFBSTtTQUNqQjtRQUNELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFDTCxxRUFBcUU7U0FDeEU7UUFDRCxRQUFRLEVBQ04sbUdBQW1HO0tBQ3RHLENBQUMsQ0FBQztJQUVILEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO0FBQy9DLENBQUMsQ0FBQyxFQUFFLENBQUMifQ==
17
+ //#endregion
18
+
19
+ //# sourceMappingURL=angular.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular.js","names":[],"sources":["../../../../../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,3 +1,3 @@
1
- import { PrismHighlighter } from './prism-highlighter.js';
1
+ import { PrismHighlighter } from "./prism-highlighter.js";
2
2
  export { PrismHighlighter };
3
3
  export declare function getPrismHighlighter(): PrismHighlighter;
@@ -1,8 +1,11 @@
1
- import { PrismHighlighter } from './prism-highlighter.js';
2
- export { PrismHighlighter };
3
- let highlighterInstance;
4
- export function getPrismHighlighter() {
5
- highlighterInstance ?? (highlighterInstance = new PrismHighlighter());
6
- return highlighterInstance;
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
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvcHJpc20vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLENBQUM7QUFFNUIsSUFBSSxtQkFBcUMsQ0FBQztBQUUxQyxNQUFNLFVBQVUsbUJBQW1CO0lBQ2pDLG1CQUFtQixLQUFuQixtQkFBbUIsR0FBSyxJQUFJLGdCQUFnQixFQUFFLEVBQUM7SUFDL0MsT0FBTyxtQkFBbUIsQ0FBQztBQUM3QixDQUFDIn0=
8
+ //#endregion
9
+ export { getPrismHighlighter };
10
+
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../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,3 +1,3 @@
1
1
  export type WithPrismHighlighterOptions = {
2
- additionalLangs?: string[];
2
+ additionalLangs?: string[];
3
3
  };
@@ -1,7 +1,7 @@
1
- import 'prismjs';
2
- import './angular.js';
3
- import { MarkedContentHighlighter } from '../marked/marked-content-highlighter.js';
1
+ import "prismjs";
2
+ import "./angular.js";
3
+ import { MarkedContentHighlighter } from "../marked/marked-content-highlighter.js";
4
4
  export declare class PrismHighlighter extends MarkedContentHighlighter {
5
- augmentCodeBlock(code: string, lang: string): string;
6
- getHighlightExtension(): import("marked").MarkedExtension;
5
+ override augmentCodeBlock(code: string, lang: string): string;
6
+ override getHighlightExtension(): import("marked").MarkedExtension;
7
7
  }
@@ -1,23 +1,22 @@
1
- import { markedHighlight } from 'marked-highlight';
2
- import 'prismjs';
3
- import './angular.js';
4
- import { MarkedContentHighlighter } from '../marked/marked-content-highlighter.js';
5
- export class PrismHighlighter extends MarkedContentHighlighter {
6
- augmentCodeBlock(code, lang) {
7
- const classes = lang.startsWith('diff') && Prism.languages['diff']
8
- ? `language-${lang} diff-highlight`
9
- : `language-${lang.replace('diff-', '')}`;
10
- return `<pre class="${classes}"><code class="${classes}">${code}</code></pre>`;
11
- }
12
- getHighlightExtension() {
13
- return markedHighlight({
14
- async: true,
15
- highlight: (code, lang) => {
16
- let diff = lang?.startsWith('diff-');
17
- lang = diff ? lang.replace('diff-', '') : lang || 'typescript';
18
- if (diff && !Prism.languages['diff']) {
19
- diff = false;
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
- if (!Prism.languages[lang]) {
41
- if (lang !== 'mermaid') {
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
- return code;
59
- }
60
- return Prism.highlight(code, diff ? Prism.languages['diff'] : Prism.languages[lang], lang);
61
- },
62
- });
63
- }
64
- }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpc20taGlnaGxpZ2h0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQvcHJpc20vcHJpc20taGlnaGxpZ2h0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRW5ELE9BQU8sU0FBUyxDQUFDO0FBQ2pCLE9BQU8sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBSW5GLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx3QkFBd0I7SUFDbkQsZ0JBQWdCLENBQUMsSUFBWSxFQUFFLElBQVk7UUFDbEQsTUFBTSxPQUFPLEdBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztZQUNoRCxDQUFDLENBQUMsWUFBWSxJQUFJLGlCQUFpQjtZQUNuQyxDQUFDLENBQUMsWUFBWSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQzlDLE9BQU8sZUFBZSxPQUFPLGtCQUFrQixPQUFPLEtBQUssSUFBSSxlQUFlLENBQUM7SUFDakYsQ0FBQztJQUVRLHFCQUFxQjtRQUM1QixPQUFPLGVBQWUsQ0FBQztZQUNyQixLQUFLLEVBQUUsSUFBSTtZQUNYLFNBQVMsRUFBRSxDQUFDLElBQVksRUFBRSxJQUFZLEVBQUUsRUFBRTtnQkFDeEMsSUFBSSxJQUFJLEdBQUcsSUFBSSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDckMsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxZQUFZLENBQUM7Z0JBRS9ELElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO29CQUNyQyxJQUFJLEdBQUcsS0FBSyxDQUFDO29CQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OzthQWtCVixDQUFDLENBQUM7Z0JBQ1AsQ0FBQztnQkFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUMzQixJQUFJLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQzt3QkFDdkIsT0FBTyxDQUFDLElBQUksQ0FBQzs7OEJBRUssSUFBSTs7Ozs7O2lCQU1qQixJQUFJOzs7Ozs7ZUFNTixDQUFDLENBQUM7b0JBQ1AsQ0FBQztvQkFDRCxPQUFPLElBQUksQ0FBQztnQkFDZCxDQUFDO2dCQUNELE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FDcEIsSUFBSSxFQUNKLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDdEQsSUFBSSxDQUNMLENBQUM7WUFDSixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIn0=
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":["../../../../../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,4 +1,4 @@
1
- import { WithShikiHighlighterOptions } from './options.js';
2
- import { ShikiHighlighter } from './shiki-highlighter.js';
1
+ import { WithShikiHighlighterOptions } from "./options.js";
2
+ import { ShikiHighlighter } from "./shiki-highlighter.js";
3
3
  export { ShikiHighlighter };
4
- export declare function getShikiHighlighter({ highlighter, highlight, container, }?: WithShikiHighlighterOptions): ShikiHighlighter;
4
+ export declare function getShikiHighlighter({ highlighter, highlight, container }?: WithShikiHighlighterOptions): ShikiHighlighter;