@jasonshimmy/vite-plugin-cer-app 0.23.2 → 0.24.0

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 (392) hide show
  1. package/dist/cli/checks/lighthouse.d.ts +26 -0
  2. package/dist/cli/checks/lighthouse.d.ts.map +1 -0
  3. package/dist/cli/checks/lighthouse.js +121 -0
  4. package/dist/cli/checks/lighthouse.js.map +1 -0
  5. package/dist/cli/checks/links.d.ts +12 -0
  6. package/dist/cli/checks/links.d.ts.map +1 -0
  7. package/dist/cli/checks/links.js +89 -0
  8. package/dist/cli/checks/links.js.map +1 -0
  9. package/dist/cli/checks/performance.d.ts +17 -0
  10. package/dist/cli/checks/performance.d.ts.map +1 -0
  11. package/dist/cli/checks/performance.js +61 -0
  12. package/dist/cli/checks/performance.js.map +1 -0
  13. package/dist/cli/commands/check.d.ts +3 -0
  14. package/dist/cli/commands/check.d.ts.map +1 -0
  15. package/dist/cli/commands/check.js +85 -0
  16. package/dist/cli/commands/check.js.map +1 -0
  17. package/dist/cli/create/index.d.ts +11 -1
  18. package/dist/cli/create/index.d.ts.map +1 -1
  19. package/dist/cli/create/index.js +135 -65
  20. package/dist/cli/create/index.js.map +1 -1
  21. package/dist/cli/create/templates/spa/package.json.tpl +5 -3
  22. package/dist/cli/create/templates/ssg/cer.config.ts.tpl +2 -0
  23. package/dist/cli/create/templates/ssg/package.json.tpl +5 -3
  24. package/dist/cli/create/templates/ssr/package.json.tpl +5 -3
  25. package/dist/cli/index.js +2 -0
  26. package/dist/cli/index.js.map +1 -1
  27. package/dist/index.d.ts +3 -1
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/plugin/build-ssg.d.ts +22 -6
  30. package/dist/plugin/build-ssg.d.ts.map +1 -1
  31. package/dist/plugin/build-ssg.js +227 -17
  32. package/dist/plugin/build-ssg.js.map +1 -1
  33. package/dist/plugin/content/parser.d.ts.map +1 -1
  34. package/dist/plugin/content/parser.js +54 -10
  35. package/dist/plugin/content/parser.js.map +1 -1
  36. package/dist/plugin/dev-server.d.ts +4 -1
  37. package/dist/plugin/dev-server.d.ts.map +1 -1
  38. package/dist/plugin/dev-server.js.map +1 -1
  39. package/dist/plugin/dts-generator.d.ts.map +1 -1
  40. package/dist/plugin/dts-generator.js +50 -8
  41. package/dist/plugin/dts-generator.js.map +1 -1
  42. package/dist/plugin/generated-dir.d.ts +2 -0
  43. package/dist/plugin/generated-dir.d.ts.map +1 -1
  44. package/dist/plugin/generated-dir.js +17 -6
  45. package/dist/plugin/generated-dir.js.map +1 -1
  46. package/dist/plugin/html-post-process.d.ts +6 -0
  47. package/dist/plugin/html-post-process.d.ts.map +1 -1
  48. package/dist/plugin/html-post-process.js +24 -0
  49. package/dist/plugin/html-post-process.js.map +1 -1
  50. package/dist/plugin/index.d.ts.map +1 -1
  51. package/dist/plugin/index.js +60 -13
  52. package/dist/plugin/index.js.map +1 -1
  53. package/dist/plugin/transforms/auto-import.d.ts.map +1 -1
  54. package/dist/plugin/transforms/auto-import.js +7 -0
  55. package/dist/plugin/transforms/auto-import.js.map +1 -1
  56. package/dist/plugin/transforms/prune-runtime-css.d.ts +8 -0
  57. package/dist/plugin/transforms/prune-runtime-css.d.ts.map +1 -0
  58. package/dist/plugin/transforms/prune-runtime-css.js +40 -0
  59. package/dist/plugin/transforms/prune-runtime-css.js.map +1 -0
  60. package/dist/runtime/app-template.d.ts +1 -1
  61. package/dist/runtime/app-template.d.ts.map +1 -1
  62. package/dist/runtime/app-template.js +206 -36
  63. package/dist/runtime/app-template.js.map +1 -1
  64. package/dist/runtime/composables/index.d.ts +4 -0
  65. package/dist/runtime/composables/index.d.ts.map +1 -1
  66. package/dist/runtime/composables/index.js +2 -0
  67. package/dist/runtime/composables/index.js.map +1 -1
  68. package/dist/runtime/composables/use-active-headings.d.ts +24 -0
  69. package/dist/runtime/composables/use-active-headings.d.ts.map +1 -0
  70. package/dist/runtime/composables/use-active-headings.js +112 -0
  71. package/dist/runtime/composables/use-active-headings.js.map +1 -0
  72. package/dist/runtime/composables/use-content-page.d.ts +45 -0
  73. package/dist/runtime/composables/use-content-page.d.ts.map +1 -0
  74. package/dist/runtime/composables/use-content-page.js +179 -0
  75. package/dist/runtime/composables/use-content-page.js.map +1 -0
  76. package/dist/runtime/composables/use-content-search.d.ts.map +1 -1
  77. package/dist/runtime/composables/use-content-search.js +1 -5
  78. package/dist/runtime/composables/use-content-search.js.map +1 -1
  79. package/dist/runtime/composables/use-fetch.d.ts +2 -1
  80. package/dist/runtime/composables/use-fetch.d.ts.map +1 -1
  81. package/dist/runtime/composables/use-fetch.js +112 -43
  82. package/dist/runtime/composables/use-fetch.js.map +1 -1
  83. package/dist/runtime/composables/use-route.d.ts.map +1 -1
  84. package/dist/runtime/composables/use-route.js +39 -11
  85. package/dist/runtime/composables/use-route.js.map +1 -1
  86. package/dist/runtime/content/client.js +2 -2
  87. package/dist/runtime/content/client.js.map +1 -1
  88. package/dist/runtime/entry-server-template.d.ts +16 -1
  89. package/dist/runtime/entry-server-template.d.ts.map +1 -1
  90. package/dist/runtime/entry-server-template.js +120 -13
  91. package/dist/runtime/entry-server-template.js.map +1 -1
  92. package/dist/types/config.d.ts +45 -4
  93. package/dist/types/config.d.ts.map +1 -1
  94. package/dist/types/config.js.map +1 -1
  95. package/dist/types/middleware.d.ts +2 -2
  96. package/dist/types/middleware.d.ts.map +1 -1
  97. package/package.json +22 -19
  98. package/.github/copilot-instructions.md +0 -169
  99. package/.github/workflows/publish.yml +0 -257
  100. package/.nvmrc +0 -1
  101. package/CHANGELOG.md +0 -236
  102. package/CLAUDE.md +0 -113
  103. package/commits.txt +0 -1
  104. package/cypress.config.ts +0 -16
  105. package/docs/authentication.md +0 -285
  106. package/docs/cli.md +0 -324
  107. package/docs/components.md +0 -237
  108. package/docs/composables.md +0 -907
  109. package/docs/configuration.md +0 -696
  110. package/docs/content.md +0 -570
  111. package/docs/data-loading.md +0 -336
  112. package/docs/getting-started.md +0 -237
  113. package/docs/head-management.md +0 -212
  114. package/docs/i18n.md +0 -159
  115. package/docs/layouts.md +0 -224
  116. package/docs/middleware.md +0 -234
  117. package/docs/plugins.md +0 -170
  118. package/docs/rendering-modes.md +0 -377
  119. package/docs/routing.md +0 -485
  120. package/docs/server-api.md +0 -253
  121. package/docs/testing.md +0 -455
  122. package/docs/use-fetch.md +0 -183
  123. package/e2e/cypress/e2e/api.cy.ts +0 -123
  124. package/e2e/cypress/e2e/async-component.cy.ts +0 -27
  125. package/e2e/cypress/e2e/component-splitting.cy.ts +0 -50
  126. package/e2e/cypress/e2e/content.cy.ts +0 -425
  127. package/e2e/cypress/e2e/cookie.cy.ts +0 -85
  128. package/e2e/cypress/e2e/data.cy.ts +0 -158
  129. package/e2e/cypress/e2e/error-boundary.cy.ts +0 -88
  130. package/e2e/cypress/e2e/fouc.cy.ts +0 -254
  131. package/e2e/cypress/e2e/group-meta.cy.ts +0 -36
  132. package/e2e/cypress/e2e/head.cy.ts +0 -89
  133. package/e2e/cypress/e2e/i18n.cy.ts +0 -79
  134. package/e2e/cypress/e2e/interactive.cy.ts +0 -137
  135. package/e2e/cypress/e2e/isr-nested-runtime.cy.ts +0 -102
  136. package/e2e/cypress/e2e/jit-css-custom-colors.cy.ts +0 -43
  137. package/e2e/cypress/e2e/middleware-chain.cy.ts +0 -89
  138. package/e2e/cypress/e2e/middleware-status.cy.ts +0 -30
  139. package/e2e/cypress/e2e/middleware.cy.ts +0 -45
  140. package/e2e/cypress/e2e/navigate.cy.ts +0 -39
  141. package/e2e/cypress/e2e/observability.cy.ts +0 -77
  142. package/e2e/cypress/e2e/per-route-error.cy.ts +0 -42
  143. package/e2e/cypress/e2e/per-route-render.cy.ts +0 -70
  144. package/e2e/cypress/e2e/preview-hardening.cy.ts +0 -88
  145. package/e2e/cypress/e2e/routes.cy.ts +0 -128
  146. package/e2e/cypress/e2e/seo-meta.cy.ts +0 -108
  147. package/e2e/cypress/e2e/server-middleware.cy.ts +0 -46
  148. package/e2e/cypress/e2e/session-rotation.cy.ts +0 -25
  149. package/e2e/cypress/e2e/session.cy.ts +0 -73
  150. package/e2e/cypress/e2e/ssr-render-error.cy.ts +0 -68
  151. package/e2e/cypress/e2e/synthetic-404.cy.ts +0 -45
  152. package/e2e/cypress/e2e/use-page-data.cy.ts +0 -122
  153. package/e2e/cypress/e2e/use-state.cy.ts +0 -138
  154. package/e2e/cypress/support/commands.ts +0 -120
  155. package/e2e/cypress/support/e2e.ts +0 -10
  156. package/e2e/cypress/tsconfig.json +0 -14
  157. package/e2e/kitchen-sink/app/components/ks-badge.ts +0 -8
  158. package/e2e/kitchen-sink/app/composables/useKsCounter.ts +0 -9
  159. package/e2e/kitchen-sink/app/error.ts +0 -18
  160. package/e2e/kitchen-sink/app/layouts/admin.ts +0 -13
  161. package/e2e/kitchen-sink/app/layouts/default.ts +0 -25
  162. package/e2e/kitchen-sink/app/layouts/group.ts +0 -9
  163. package/e2e/kitchen-sink/app/layouts/minimal.ts +0 -7
  164. package/e2e/kitchen-sink/app/loading.ts +0 -9
  165. package/e2e/kitchen-sink/app/middleware/auth.ts +0 -9
  166. package/e2e/kitchen-sink/app/middleware/custom-log.ts +0 -4
  167. package/e2e/kitchen-sink/app/middleware/group-auth.ts +0 -7
  168. package/e2e/kitchen-sink/app/middleware/logger.ts +0 -14
  169. package/e2e/kitchen-sink/app/pages/(auth)/login.ts +0 -13
  170. package/e2e/kitchen-sink/app/pages/(auth)/protected.ts +0 -16
  171. package/e2e/kitchen-sink/app/pages/404.ts +0 -9
  172. package/e2e/kitchen-sink/app/pages/about.ts +0 -17
  173. package/e2e/kitchen-sink/app/pages/admin/_layout.ts +0 -1
  174. package/e2e/kitchen-sink/app/pages/admin/dashboard.ts +0 -11
  175. package/e2e/kitchen-sink/app/pages/async-component-error-test.ts +0 -18
  176. package/e2e/kitchen-sink/app/pages/async-component-test.ts +0 -18
  177. package/e2e/kitchen-sink/app/pages/blog/[slug].ts +0 -59
  178. package/e2e/kitchen-sink/app/pages/blog/index.ts +0 -51
  179. package/e2e/kitchen-sink/app/pages/content-blog.ts +0 -37
  180. package/e2e/kitchen-sink/app/pages/content-doc.ts +0 -42
  181. package/e2e/kitchen-sink/app/pages/content-fallback.ts +0 -36
  182. package/e2e/kitchen-sink/app/pages/content-guides.ts +0 -35
  183. package/e2e/kitchen-sink/app/pages/content-index.ts +0 -39
  184. package/e2e/kitchen-sink/app/pages/content-search.ts +0 -36
  185. package/e2e/kitchen-sink/app/pages/cookie-test.ts +0 -22
  186. package/e2e/kitchen-sink/app/pages/counter.ts +0 -17
  187. package/e2e/kitchen-sink/app/pages/group-auth-blocked.ts +0 -9
  188. package/e2e/kitchen-sink/app/pages/group-meta-test/_layout.ts +0 -6
  189. package/e2e/kitchen-sink/app/pages/group-meta-test/custom-mw.ts +0 -14
  190. package/e2e/kitchen-sink/app/pages/group-meta-test/page.ts +0 -9
  191. package/e2e/kitchen-sink/app/pages/group-meta-test/protected.ts +0 -8
  192. package/e2e/kitchen-sink/app/pages/head.ts +0 -20
  193. package/e2e/kitchen-sink/app/pages/i18n-test.ts +0 -14
  194. package/e2e/kitchen-sink/app/pages/index.ts +0 -27
  195. package/e2e/kitchen-sink/app/pages/isr-test.ts +0 -17
  196. package/e2e/kitchen-sink/app/pages/items/[id].ts +0 -20
  197. package/e2e/kitchen-sink/app/pages/jit-css-custom-colors-test.ts +0 -14
  198. package/e2e/kitchen-sink/app/pages/loader-error-test.ts +0 -13
  199. package/e2e/kitchen-sink/app/pages/loader-props-test.ts +0 -19
  200. package/e2e/kitchen-sink/app/pages/loader-response-error-test.ts +0 -13
  201. package/e2e/kitchen-sink/app/pages/middleware-chain-test.ts +0 -12
  202. package/e2e/kitchen-sink/app/pages/middleware-status-test.ts +0 -9
  203. package/e2e/kitchen-sink/app/pages/navigate-test.ts +0 -16
  204. package/e2e/kitchen-sink/app/pages/observability-test.ts +0 -25
  205. package/e2e/kitchen-sink/app/pages/per-route-error-test.error.ts +0 -13
  206. package/e2e/kitchen-sink/app/pages/per-route-error-test.ts +0 -15
  207. package/e2e/kitchen-sink/app/pages/plugin-dsd-test.ts +0 -10
  208. package/e2e/kitchen-sink/app/pages/render-error-test.ts +0 -12
  209. package/e2e/kitchen-sink/app/pages/render-server-test.ts +0 -12
  210. package/e2e/kitchen-sink/app/pages/render-spa-test.ts +0 -12
  211. package/e2e/kitchen-sink/app/pages/route-info.ts +0 -14
  212. package/e2e/kitchen-sink/app/pages/seo-test.ts +0 -23
  213. package/e2e/kitchen-sink/app/pages/session-rotation-test.ts +0 -25
  214. package/e2e/kitchen-sink/app/pages/use-state-test.ts +0 -37
  215. package/e2e/kitchen-sink/app/plugins/01.setup.ts +0 -7
  216. package/e2e/kitchen-sink/app/plugins/02.ks-plugin-components.ts +0 -27
  217. package/e2e/kitchen-sink/cer-auto-imports.d.ts +0 -51
  218. package/e2e/kitchen-sink/cer-env.d.ts +0 -35
  219. package/e2e/kitchen-sink/cer-tsconfig.json +0 -30
  220. package/e2e/kitchen-sink/cer.config.ts +0 -43
  221. package/e2e/kitchen-sink/content/01.guides/01.index.md +0 -8
  222. package/e2e/kitchen-sink/content/01.guides/02.intro.md +0 -8
  223. package/e2e/kitchen-sink/content/01.guides/10.advanced.md +0 -8
  224. package/e2e/kitchen-sink/content/blog/2026-04-01-hello.md +0 -26
  225. package/e2e/kitchen-sink/content/blog/2026-04-02-draft.md +0 -10
  226. package/e2e/kitchen-sink/content/blog/index.md +0 -8
  227. package/e2e/kitchen-sink/content/blog/no-frontmatter.md +0 -7
  228. package/e2e/kitchen-sink/content/docs/getting-started.md +0 -48
  229. package/e2e/kitchen-sink/content/index.md +0 -16
  230. package/e2e/kitchen-sink/server/api/echo.ts +0 -12
  231. package/e2e/kitchen-sink/server/api/health.ts +0 -3
  232. package/e2e/kitchen-sink/server/api/posts/[slug].ts +0 -11
  233. package/e2e/kitchen-sink/server/api/posts/index.ts +0 -5
  234. package/e2e/kitchen-sink/server/api/session.ts +0 -23
  235. package/e2e/kitchen-sink/server/data/posts.ts +0 -21
  236. package/e2e/kitchen-sink/server/middleware/01-headers.ts +0 -6
  237. package/e2e/kitchen-sink/server/middleware/02-status-test.ts +0 -10
  238. package/e2e/kitchen-sink/tsconfig.json +0 -3
  239. package/e2e/scripts/clean.mjs +0 -14
  240. package/eslint.config.ts +0 -22
  241. package/src/__tests__/cli/adapters/cloudflare-worker.integration.test.ts +0 -132
  242. package/src/__tests__/cli/adapters/cloudflare.test.ts +0 -332
  243. package/src/__tests__/cli/adapters/netlify-bridge.integration.test.ts +0 -139
  244. package/src/__tests__/cli/adapters/netlify.test.ts +0 -286
  245. package/src/__tests__/cli/adapters/vercel-launcher.integration.test.ts +0 -129
  246. package/src/__tests__/cli/adapters/vercel.test.ts +0 -263
  247. package/src/__tests__/cli/preview-hardening.test.ts +0 -265
  248. package/src/__tests__/cli/preview-isr.test.ts +0 -320
  249. package/src/__tests__/index.test.ts +0 -21
  250. package/src/__tests__/plugin/app-template.test.ts +0 -166
  251. package/src/__tests__/plugin/build-ssg-render.test.ts +0 -155
  252. package/src/__tests__/plugin/build-ssg.test.ts +0 -598
  253. package/src/__tests__/plugin/build-ssr.test.ts +0 -192
  254. package/src/__tests__/plugin/cer-app-plugin.test.ts +0 -552
  255. package/src/__tests__/plugin/content/emitter.test.ts +0 -117
  256. package/src/__tests__/plugin/content/loader.test.ts +0 -154
  257. package/src/__tests__/plugin/content/parser.test.ts +0 -381
  258. package/src/__tests__/plugin/content/path-utils.test.ts +0 -69
  259. package/src/__tests__/plugin/content/search.test.ts +0 -119
  260. package/src/__tests__/plugin/dev-server.test.ts +0 -813
  261. package/src/__tests__/plugin/dts-generator.test.ts +0 -394
  262. package/src/__tests__/plugin/entry-server-template.test.ts +0 -385
  263. package/src/__tests__/plugin/generated-dir.test.ts +0 -144
  264. package/src/__tests__/plugin/html-post-process.test.ts +0 -146
  265. package/src/__tests__/plugin/path-utils.test.ts +0 -411
  266. package/src/__tests__/plugin/resolve-config.test.ts +0 -233
  267. package/src/__tests__/plugin/scanner.test.ts +0 -186
  268. package/src/__tests__/plugin/transforms/auto-import.test.ts +0 -510
  269. package/src/__tests__/plugin/transforms/head-inject.test.ts +0 -178
  270. package/src/__tests__/plugin/virtual/composables.test.ts +0 -57
  271. package/src/__tests__/plugin/virtual/content-components.test.ts +0 -66
  272. package/src/__tests__/plugin/virtual/error.test.ts +0 -71
  273. package/src/__tests__/plugin/virtual/layouts.test.ts +0 -70
  274. package/src/__tests__/plugin/virtual/loading.test.ts +0 -72
  275. package/src/__tests__/plugin/virtual/middleware.test.ts +0 -83
  276. package/src/__tests__/plugin/virtual/plugins.test.ts +0 -129
  277. package/src/__tests__/plugin/virtual/routes.test.ts +0 -884
  278. package/src/__tests__/plugin/virtual/server-api.test.ts +0 -164
  279. package/src/__tests__/plugin/virtual/server-middleware.test.ts +0 -102
  280. package/src/__tests__/runtime/app-template.test.ts +0 -208
  281. package/src/__tests__/runtime/define-middleware.test.ts +0 -64
  282. package/src/__tests__/runtime/define-server-middleware.test.ts +0 -54
  283. package/src/__tests__/runtime/entry-client-template.test.ts +0 -61
  284. package/src/__tests__/runtime/isr-handler.test.ts +0 -338
  285. package/src/__tests__/runtime/oauth/handler.test.ts +0 -358
  286. package/src/__tests__/runtime/oauth/providers.test.ts +0 -47
  287. package/src/__tests__/runtime/oauth-index.test.ts +0 -43
  288. package/src/__tests__/runtime/use-auth.test.ts +0 -169
  289. package/src/__tests__/runtime/use-content-search-composable.test.ts +0 -405
  290. package/src/__tests__/runtime/use-content-search.test.ts +0 -163
  291. package/src/__tests__/runtime/use-content.test.ts +0 -226
  292. package/src/__tests__/runtime/use-cookie.test.ts +0 -277
  293. package/src/__tests__/runtime/use-fetch-component.test.ts +0 -214
  294. package/src/__tests__/runtime/use-fetch.test.ts +0 -377
  295. package/src/__tests__/runtime/use-head.test.ts +0 -311
  296. package/src/__tests__/runtime/use-inject-client.test.ts +0 -67
  297. package/src/__tests__/runtime/use-inject.test.ts +0 -66
  298. package/src/__tests__/runtime/use-locale.test.ts +0 -152
  299. package/src/__tests__/runtime/use-navigate.test.ts +0 -121
  300. package/src/__tests__/runtime/use-page-data.test.ts +0 -298
  301. package/src/__tests__/runtime/use-route.test.ts +0 -156
  302. package/src/__tests__/runtime/use-runtime-config.test.ts +0 -182
  303. package/src/__tests__/runtime/use-seo-meta.test.ts +0 -109
  304. package/src/__tests__/runtime/use-session.test.ts +0 -320
  305. package/src/__tests__/runtime/use-state.test.ts +0 -340
  306. package/src/__tests__/types/config.test.ts +0 -18
  307. package/src/cli/adapters/cloudflare.ts +0 -335
  308. package/src/cli/adapters/netlify.ts +0 -326
  309. package/src/cli/adapters/vercel.ts +0 -311
  310. package/src/cli/commands/adapt.ts +0 -84
  311. package/src/cli/commands/build.ts +0 -165
  312. package/src/cli/commands/dev.ts +0 -125
  313. package/src/cli/commands/generate.ts +0 -91
  314. package/src/cli/commands/preview-isr.ts +0 -172
  315. package/src/cli/commands/preview.ts +0 -523
  316. package/src/cli/create/index.ts +0 -275
  317. package/src/cli/create/templates/shared/.gitignore.tpl +0 -25
  318. package/src/cli/create/templates/shared/app/layouts/default.ts.tpl +0 -15
  319. package/src/cli/create/templates/shared/app/pages/index.ts.tpl +0 -8
  320. package/src/cli/create/templates/shared/index.html.tpl +0 -12
  321. package/src/cli/create/templates/shared/tsconfig.json.tpl +0 -6
  322. package/src/cli/create/templates/spa/cer.config.ts.tpl +0 -6
  323. package/src/cli/create/templates/spa/package.json.tpl +0 -18
  324. package/src/cli/create/templates/ssg/cer.config.ts.tpl +0 -10
  325. package/src/cli/create/templates/ssg/package.json.tpl +0 -19
  326. package/src/cli/create/templates/ssr/cer.config.ts.tpl +0 -6
  327. package/src/cli/create/templates/ssr/package.json.tpl +0 -18
  328. package/src/cli/index.ts +0 -22
  329. package/src/index.ts +0 -20
  330. package/src/plugin/build-ssg.ts +0 -403
  331. package/src/plugin/build-ssr.ts +0 -134
  332. package/src/plugin/content/emitter.ts +0 -50
  333. package/src/plugin/content/index.ts +0 -233
  334. package/src/plugin/content/parser.ts +0 -259
  335. package/src/plugin/content/path-utils.ts +0 -55
  336. package/src/plugin/content/scanner.ts +0 -26
  337. package/src/plugin/content/search.ts +0 -28
  338. package/src/plugin/dev-server.ts +0 -379
  339. package/src/plugin/dts-generator.ts +0 -273
  340. package/src/plugin/generated-dir.ts +0 -121
  341. package/src/plugin/html-post-process.ts +0 -96
  342. package/src/plugin/index.ts +0 -584
  343. package/src/plugin/path-utils.ts +0 -186
  344. package/src/plugin/scanner.ts +0 -65
  345. package/src/plugin/transforms/auto-import.ts +0 -206
  346. package/src/plugin/transforms/head-inject.ts +0 -161
  347. package/src/plugin/virtual/composables.ts +0 -28
  348. package/src/plugin/virtual/content-components.ts +0 -83
  349. package/src/plugin/virtual/error.ts +0 -34
  350. package/src/plugin/virtual/layouts.ts +0 -41
  351. package/src/plugin/virtual/loading.ts +0 -32
  352. package/src/plugin/virtual/middleware.ts +0 -45
  353. package/src/plugin/virtual/plugins.ts +0 -46
  354. package/src/plugin/virtual/routes.ts +0 -514
  355. package/src/plugin/virtual/server-api.ts +0 -85
  356. package/src/plugin/virtual/server-middleware.ts +0 -44
  357. package/src/runtime/app-template.ts +0 -377
  358. package/src/runtime/composables/define-middleware.ts +0 -17
  359. package/src/runtime/composables/define-server-middleware.ts +0 -18
  360. package/src/runtime/composables/index.ts +0 -27
  361. package/src/runtime/composables/use-auth.ts +0 -125
  362. package/src/runtime/composables/use-content-search.ts +0 -205
  363. package/src/runtime/composables/use-content.ts +0 -146
  364. package/src/runtime/composables/use-cookie.ts +0 -135
  365. package/src/runtime/composables/use-fetch.ts +0 -438
  366. package/src/runtime/composables/use-head.ts +0 -234
  367. package/src/runtime/composables/use-inject.ts +0 -49
  368. package/src/runtime/composables/use-locale.ts +0 -109
  369. package/src/runtime/composables/use-navigate.ts +0 -58
  370. package/src/runtime/composables/use-page-data.ts +0 -93
  371. package/src/runtime/composables/use-route.ts +0 -71
  372. package/src/runtime/composables/use-runtime-config.ts +0 -123
  373. package/src/runtime/composables/use-seo-meta.ts +0 -80
  374. package/src/runtime/composables/use-session.ts +0 -186
  375. package/src/runtime/composables/use-state.ts +0 -92
  376. package/src/runtime/content/client.ts +0 -168
  377. package/src/runtime/entry-client-template.ts +0 -39
  378. package/src/runtime/entry-server-template.ts +0 -493
  379. package/src/runtime/isr-handler.ts +0 -184
  380. package/src/runtime/oauth/handler.ts +0 -407
  381. package/src/runtime/oauth/index.ts +0 -49
  382. package/src/runtime/oauth/providers.ts +0 -38
  383. package/src/types/api.ts +0 -40
  384. package/src/types/config.ts +0 -379
  385. package/src/types/content.ts +0 -66
  386. package/src/types/index.ts +0 -7
  387. package/src/types/middleware.ts +0 -63
  388. package/src/types/page.ts +0 -117
  389. package/src/types/plugin.ts +0 -34
  390. package/tsconfig.build.json +0 -10
  391. package/tsconfig.json +0 -19
  392. package/vitest.config.ts +0 -33
@@ -1,169 +0,0 @@
1
- ---
2
- applyTo: '**'
3
- ---
4
-
5
- You are an expert in TypeScript, JavaScript, HTML, CSS. Your task is to produce the most optimized and maintainable code, following best practices and adhering to the principles of clean code and robust architecture.
6
-
7
- ## Objective
8
-
9
- - Create a Web Component Runtime solution that is not only functional but also adheres to the best practices in performance, security, and maintainability.
10
- - When implementing features, prioritize simplicity and clarity in the codebase.
11
- - When communicating with the user, you don't need to ask for permission before making cleanups or optimizations. Instead, focus on delivering a solution that is efficient and easy to understand.
12
-
13
- ## Commands to Know
14
-
15
- - `npm run build`: Builds the project for production.
16
- - `npm run dev`: Starts the development server with hot-reloading.
17
- - `npm test`: Runs the test suite using Vitest.
18
- - `npm test:watch`: Runs the test suite using Vitest in development watch mode.
19
- - `npm run test:coverage`: Generates a code coverage report.
20
-
21
- ## Code Style and Structure
22
-
23
- - ALL CODE MUST BE: lightweight, developer friendly, strongly typed, performant, and scalable.
24
- - Write concise, technical TypeScript code with accurate examples.
25
- - Use functional and declarative programming patterns; avoid classes.
26
- - Prefer iteration and modularization over code duplication.
27
- - Use descriptive variable names with auxiliary verbs (e.g., isLoading, hasError).
28
- - Structure files: exported component, subcomponents, helpers, static content, types.
29
- - Use lowercase with dashes for directory names (e.g., `components/auth-wizard`).
30
- - Use kebab-case for file names (e.g., `auth-wizard.ts`).
31
- - Avoid using "this" keyword in functional components.
32
- - Prefer pure functions and avoid side effects.
33
- - Use immutable data structures where possible.
34
- - Use JSDoc comments for functions and components to improve IDE intellisense.
35
-
36
- ## Markdown Documentation
37
-
38
- All documentation written in the docs directory should be:
39
-
40
- - In Markdown format
41
- - Structured with clear headings and subheadings
42
- - Include code examples where applicable
43
- - Use consistent terminology and phrasing
44
- - Be 100% accurate with the actual code implementation
45
- - Be easy to read and understand
46
- - Be concise and to the point
47
- - Use emojis for titles
48
-
49
- ## Naming Conventions
50
-
51
- - Use lowercase with dashes for directories (e.g., components/auth-wizard).
52
- - Favor named exports for components.
53
-
54
- ## TypeScript Usage
55
-
56
- - Use strict TypeScript for all code; prefer interfaces over types.
57
- - Avoid enums; use maps instead.
58
- - Use functional components with TypeScript interfaces.
59
- - Never use "any" type; always prefer strongly typed definitions.
60
-
61
- ## Syntax and Formatting
62
-
63
- - Use the "function" keyword for pure functions.
64
- - Avoid unnecessary curly braces in conditionals; use concise syntax for simple statements.
65
-
66
- ## UI and Styling
67
-
68
- - Generate Custom Elements using our lib/index.ts for components and styling.
69
- - Implement responsive design; use a mobile-first approach.
70
-
71
- ## Performance Optimization
72
-
73
- - Use TypeScript and JavaScript best practices to ensure high performance.
74
- - Always favor tree-shaking and code splitting.
75
- - Optimize images: use WebP format, include size data, implement lazy loading.
76
-
77
- ## Security and Performance
78
-
79
- - Implement proper error handling, user input validation, and secure coding practices.
80
- - Follow performance optimization techniques, such as reducing load times and improving rendering efficiency.
81
-
82
- ## Testing and Documentation
83
-
84
- - Write unit tests for components using Vitest.
85
- - Provide clear and concise comments for complex logic.
86
- - Use JSDoc comments for functions and components to improve IDE intellisense.
87
-
88
- ## Error Handling and Validation
89
-
90
- - Prioritize error handling and edge cases:
91
- - Use early returns for error conditions.
92
- - Implement guard clauses to handle preconditions and invalid states early.
93
- - Use custom error types for consistent error handling.
94
-
95
- ## Key Conventions - NON-NEGOTIABLE
96
-
97
- - NEVER GUESS OR ASSUME! Always make informed decisions based on available data in a project.
98
- - Always use strongly typed TypeScript.
99
- - Keep code lightweight and modular.
100
- - Do not use external dependencies.
101
- - Keep code performant.
102
- - Keep code secure.
103
- - Keep code developer friendly and easy to use.
104
- - Keep code easy to read and understand.
105
- - Keep code maintainable and scalable.
106
- - Always write tests for your code.
107
- - Always follow best practices in coding, security, and performance.
108
- - Always validate assumptions with actual data.
109
- - ALWAYS add new unit and e2e/integration tests for any new functionality.
110
- - ALWAYS document new functionality in the project's documentation files.
111
- - ALWAYS have the user validate all changes with `npm run validate` and report results back to you.
112
- - NEVER run Cypress tests yourself. ONLY the user runs Cypress. Always ask the user to run Cypress and report the results.
113
- - A change can only be considered complete when it meets all the above criteria and has been thoroughly tested and reviewed. THIS IS NON-NEGOTIABLE.
114
-
115
- ## Feature completion checklist (apply to every new feature or fix)
116
-
117
- Before declaring any change complete, ALL of the following must be satisfied:
118
-
119
- ### Documentation
120
- - [ ] All new features are documented in the relevant `docs/*.md` file with options, API reference, and examples.
121
- - [ ] If a composable was added, it has a full entry in `docs/composables.md`.
122
- - [ ] If the feature affects auto-imports, `docs/configuration.md` is updated.
123
- - [ ] If the feature affects routing, `docs/routing.md` is updated.
124
- - [ ] If the feature affects middleware, `docs/middleware.md` is updated.
125
- - [ ] Documentation is 100% accurate with the actual implementation.
126
-
127
- ### Unit tests
128
- - [ ] Vitest unit tests in `src/__tests__/` cover typical usage, edge cases, and error paths.
129
- - [ ] Existing test coverage has not been reduced.
130
-
131
- ### E2e tests
132
- - [ ] Cypress specs in `e2e/cypress/e2e/` cover the feature across all applicable build modes (SPA, SSR, SSG, dev).
133
- - [ ] Required kitchen-sink fixtures are added to `e2e/kitchen-sink/`.
134
- - [ ] Cypress is NOT run by the AI — the user runs `npm run e2e` and reports results.
135
-
136
- ### Auto-imports
137
- - [ ] New framework composables are added to `FRAMEWORK_IMPORTS` and `FRAMEWORK_IDENTIFIERS` in `src/plugin/transforms/auto-import.ts`.
138
- - [ ] Auto-import behavior is tested in `src/__tests__/plugin/transforms/auto-import.test.ts`.
139
-
140
- ### TypeScript
141
- - [ ] All new code uses strict TypeScript — no `any`, no implicit `any`.
142
- - [ ] New public types are exported from `src/types/`.
143
- - [ ] `npm run build` completes without TypeScript errors.
144
-
145
- ### Validation
146
- - [ ] `npm run lint && npm test && npm run build` passes clean before asking the user to run Cypress.
147
- - [ ] User runs `npm run validate` to confirm the full pipeline passes.
148
-
149
- ## Methodology
150
-
151
- 1. **System 2 Thinking**: Approach the problem with analytical rigor. Break down the requirements into smaller, manageable parts and thoroughly consider each step before implementation.
152
- 2. **Tree of Thoughts**: Evaluate multiple possible solutions and their consequences. Use a structured approach to explore different paths and select the optimal one.
153
- 3. **Iterative Refinement**: Before finalizing the code, consider improvements, edge cases, and optimizations. Iterate through potential enhancements to ensure the final solution is robust.
154
-
155
- ## Process:
156
-
157
- 1. **Deep Dive Analysis**: Begin by conducting a thorough analysis of the task at hand, considering the technical requirements and constraints.
158
- 2. **Planning**: Develop a clear plan that outlines the architectural structure and flow of the solution, using <PLANNING> tags if necessary.
159
- 3. **Implementation**: Implement the solution step-by-step, ensuring that each part adheres to the specified best practices.
160
- 4. **Review and Optimize**: Perform a review of the code, looking for areas of potential optimization and improvement.
161
- 5. **Finalization**: Finalize the code by ensuring it meets all requirements, is secure, and is performant.
162
-
163
- ### Coding Environment
164
-
165
- The user asks questions about the following coding languages:
166
-
167
- - TypeScript
168
- - HTML
169
- - CSS
@@ -1,257 +0,0 @@
1
- name: Publish to npm
2
-
3
- on:
4
- push:
5
- branches:
6
- - main
7
- - develop
8
-
9
- permissions:
10
- contents: write
11
-
12
- concurrency:
13
- group: release-${{ github.ref_name }}
14
- cancel-in-progress: false
15
-
16
- env:
17
- FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: 'true'
18
-
19
- jobs:
20
- validate:
21
- name: Lint, test, build & e2e
22
- runs-on: ubuntu-latest
23
- timeout-minutes: 20
24
-
25
- steps:
26
- - name: Checkout code
27
- uses: actions/checkout@v4
28
- with:
29
- fetch-depth: 0
30
-
31
- - name: Use Node.js version from .nvmrc
32
- uses: actions/setup-node@v4
33
- with:
34
- node-version-file: .nvmrc
35
- registry-url: 'https://registry.npmjs.org/'
36
-
37
- - name: Cache node modules
38
- uses: actions/cache@v4
39
- with:
40
- path: node_modules
41
- key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
42
- restore-keys: |
43
- ${{ runner.os }}-node-
44
-
45
- - name: Install dependencies
46
- run: npm ci
47
-
48
- - name: Install Cypress system dependencies
49
- run: |
50
- sudo apt-get update -y
51
- sudo apt-get install -y \
52
- libgtk2.0-0t64 libgtk-3-0t64 libgbm-dev libnotify-dev \
53
- libnss3 libxss1 libasound2t64 libxtst6 xauth xvfb
54
-
55
- - name: Lint
56
- run: npm run lint
57
-
58
- - name: Unit tests
59
- run: npm test
60
-
61
- - name: Build library
62
- run: npm run build
63
-
64
- - name: E2E tests (SSR)
65
- run: xvfb-run --auto-servernum npm run e2e:ssr
66
-
67
- - name: E2E tests (SSG)
68
- run: xvfb-run --auto-servernum npm run e2e:ssg
69
-
70
- - name: E2E tests (SPA)
71
- run: xvfb-run --auto-servernum npm run e2e:spa
72
-
73
- release:
74
- name: Version & publish
75
- needs: validate
76
- runs-on: ubuntu-latest
77
- timeout-minutes: 15
78
-
79
- steps:
80
- - name: Checkout code
81
- uses: actions/checkout@v4
82
- with:
83
- fetch-depth: 0
84
-
85
- # Resolve the latest tag once so all subsequent steps share the same baseline.
86
- - name: Resolve baseline tag
87
- id: base
88
- run: |
89
- LATEST_TAG=$(git tag --sort=-version:refname | head -n1)
90
- if [ -z "$LATEST_TAG" ]; then
91
- COMMIT_RANGE="HEAD"
92
- else
93
- COMMIT_RANGE="${LATEST_TAG}..HEAD"
94
- fi
95
- echo "latest_tag=$LATEST_TAG" >> $GITHUB_OUTPUT
96
- echo "commit_range=$COMMIT_RANGE" >> $GITHUB_OUTPUT
97
- echo "Baseline tag: ${LATEST_TAG:-'(none - first release)'}"
98
- echo "Commit range: $COMMIT_RANGE"
99
-
100
- # Skip release if every commit since the last tag is chore: or docs:
101
- # Breaking variants (chore!: / docs!:) are intentionally not excluded.
102
- - name: Check if release is needed
103
- id: should_release
104
- run: |
105
- COMMIT_RANGE="${{ steps.base.outputs.commit_range }}"
106
- RELEASE_COMMITS=$(git log "$COMMIT_RANGE" --pretty=format:"%s" --no-merges \
107
- | grep -vE "^(chore|docs)(\([^)]+\))?:" || true)
108
- if [ -z "$RELEASE_COMMITS" ]; then
109
- echo "value=false" >> $GITHUB_OUTPUT
110
- echo "## Release skipped" >> $GITHUB_STEP_SUMMARY
111
- echo "All commits since the last release use \`chore:\` or \`docs:\` prefixes — nothing to publish." >> $GITHUB_STEP_SUMMARY
112
- else
113
- echo "value=true" >> $GITHUB_OUTPUT
114
- fi
115
-
116
- - name: Use Node.js version from .nvmrc
117
- if: steps.should_release.outputs.value == 'true'
118
- uses: actions/setup-node@v4
119
- with:
120
- node-version-file: .nvmrc
121
- registry-url: 'https://registry.npmjs.org/'
122
-
123
- - name: Cache node modules
124
- if: steps.should_release.outputs.value == 'true'
125
- uses: actions/cache@v4
126
- with:
127
- path: node_modules
128
- key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }}
129
- restore-keys: |
130
- ${{ runner.os }}-node-
131
-
132
- - name: Install dependencies
133
- if: steps.should_release.outputs.value == 'true'
134
- run: npm ci
135
-
136
- - name: Build library
137
- if: steps.should_release.outputs.value == 'true'
138
- run: npm run build
139
-
140
- - name: Configure Git
141
- if: steps.should_release.outputs.value == 'true'
142
- run: |
143
- git config user.name "GitHub Actions"
144
- git config user.email "actions@github.com"
145
- git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}
146
-
147
- # Scan ALL commits since the last tag (not just HEAD) and handle the full
148
- # conventional-commits spec: type(scope)!: and BREAKING CHANGE: in body.
149
- - name: Determine version bump
150
- id: bump
151
- if: steps.should_release.outputs.value == 'true'
152
- run: |
153
- COMMIT_RANGE="${{ steps.base.outputs.commit_range }}"
154
-
155
- SUBJECTS=$(git log "$COMMIT_RANGE" --pretty=format:"%s" --no-merges)
156
- FULL_LOG=$(git log "$COMMIT_RANGE" --pretty=format:"%s%n%b" --no-merges)
157
-
158
- BUMP="patch"
159
-
160
- # Major: explicit BREAKING CHANGE footer OR ! after type/scope (e.g. feat!: / feat(scope)!:)
161
- if echo "$FULL_LOG" | grep -qE "^BREAKING CHANGE:" || \
162
- echo "$SUBJECTS" | grep -qE "^[a-z]+(\([^)]+\))?!:"; then
163
- BUMP="major"
164
- # Minor: feat: or feat(scope):
165
- elif echo "$SUBJECTS" | grep -qE "^feat(\([^)]+\))?:"; then
166
- BUMP="minor"
167
- fi
168
-
169
- echo "Bump type: $BUMP"
170
- echo "bump=$BUMP" >> $GITHUB_OUTPUT
171
-
172
- - name: Generate release notes
173
- if: steps.should_release.outputs.value == 'true'
174
- run: |
175
- COMMIT_RANGE="${{ steps.base.outputs.commit_range }}"
176
-
177
- COMMITS=$(git log "$COMMIT_RANGE" --pretty=format:"- %s (%h)" --no-merges \
178
- | grep -vE "^- (release:|chore: update changelog)" || true)
179
-
180
- if [ -z "$COMMITS" ]; then
181
- COMMITS="- No changes since last release"
182
- fi
183
-
184
- echo "$COMMITS" > commits.txt
185
-
186
- - name: Bump version
187
- id: version
188
- if: steps.should_release.outputs.value == 'true'
189
- run: |
190
- BUMP="${{ steps.bump.outputs.bump }}"
191
- if [[ "${{ github.ref_name }}" == "develop" ]]; then
192
- NEW_VERSION=$(npm version prerelease --preid=beta -m "release: %s [skip ci]")
193
- else
194
- NEW_VERSION=$(npm version "$BUMP" -m "release: %s [skip ci]")
195
- fi
196
- echo "version=$NEW_VERSION" >> $GITHUB_OUTPUT
197
- git push --follow-tags
198
-
199
- - name: Create release and update changelog
200
- if: steps.should_release.outputs.value == 'true'
201
- run: |
202
- VERSION="${{ steps.version.outputs.version }}"
203
- PREV_TAG="${{ steps.base.outputs.latest_tag }}"
204
- COMMITS=$(cat commits.txt)
205
- DATE=$(date +"%Y-%m-%d")
206
-
207
- if [ -n "$PREV_TAG" ]; then
208
- CHANGELOG_LINK="**Full Changelog**: https://github.com/${{ github.repository }}/compare/${PREV_TAG}...${VERSION}"
209
- else
210
- CHANGELOG_LINK="**Full Changelog**: https://github.com/${{ github.repository }}/commits/${VERSION}"
211
- fi
212
-
213
- RELEASE_NOTES=$(printf '## Release %s\n\n### Changes\n%s\n\n%s' \
214
- "$VERSION" "$COMMITS" "$CHANGELOG_LINK")
215
-
216
- # Update or create CHANGELOG.md
217
- if [ ! -f CHANGELOG.md ]; then
218
- printf "# Changelog\n\nAll notable changes to this project will be documented in this file.\n\n" > CHANGELOG.md
219
- fi
220
-
221
- {
222
- head -3 CHANGELOG.md
223
- printf "## [%s] - %s\n\n%s\n\n" "$VERSION" "$DATE" "$COMMITS"
224
- tail -n +4 CHANGELOG.md
225
- } > CHANGELOG.tmp && mv CHANGELOG.tmp CHANGELOG.md
226
-
227
- git add CHANGELOG.md
228
- git commit -m "chore: update changelog for ${VERSION} [skip ci]" || true
229
- git push
230
-
231
- # Use python3 for safe multi-line JSON encoding (avoids sed escaping pitfalls)
232
- ESCAPED_BODY=$(printf '%s' "$RELEASE_NOTES" | python3 -c "import sys,json; print(json.dumps(sys.stdin.read()))")
233
-
234
- if [[ "${{ github.ref_name }}" == "develop" ]]; then
235
- PRERELEASE="true"
236
- RELEASE_NAME="${VERSION} (Beta)"
237
- else
238
- PRERELEASE="false"
239
- RELEASE_NAME="${VERSION}"
240
- fi
241
-
242
- curl -fsSL -X POST \
243
- -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
244
- -H "Accept: application/vnd.github.v3+json" \
245
- https://api.github.com/repos/${{ github.repository }}/releases \
246
- -d "{\"tag_name\":\"${VERSION}\",\"name\":\"${RELEASE_NAME}\",\"body\":${ESCAPED_BODY},\"prerelease\":${PRERELEASE}}"
247
-
248
- - name: Publish to npm
249
- if: steps.should_release.outputs.value == 'true'
250
- run: |
251
- if [[ "${{ github.ref_name }}" == "develop" ]]; then
252
- npm publish --tag beta
253
- else
254
- npm publish
255
- fi
256
- env:
257
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
package/.nvmrc DELETED
@@ -1 +0,0 @@
1
- v22.18.0
package/CHANGELOG.md DELETED
@@ -1,236 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
- ## [v0.23.2] - 2026-04-25
5
-
6
- - fix: add siteUrl configuration for canonical links and robots.txt generation (05c53ca)
7
-
8
- ## [v0.23.1] - 2026-04-17
9
-
10
- - fix: fix useContentSearch loading state, debounce, and automatic retry on fetch failure (4d0207a)
11
-
12
- ## [v0.23.0] - 2026-04-17
13
-
14
- - feat: enhance useContentSearch with loading state and update related tests (d1cee0e)
15
-
16
- ## [v0.22.0] - 2026-04-16
17
-
18
- - feat: add customColors support for jitCss configuration and implement related tests (b8061ef)
19
-
20
- ## [v0.21.4] - 2026-04-16
21
-
22
- - fix: update path resolution for auto-imported components to be relative from .cer/ (633a241)
23
-
24
- ## [v0.21.3] - 2026-04-13
25
-
26
- - fix: enhance content layer with automatic component registration from markdown (62bcc04)
27
-
28
- ## [v0.21.2] - 2026-04-13
29
-
30
- - fix: enhance dev mode logging in runtime and update dependencies (57a5a7c)
31
-
32
- ## [v0.21.1] - 2026-04-13
33
-
34
- - fix: broken test (19540bd)
35
- - fix: ensure catch all only throws errors if one is actually encountered, enhance content-driven routing and catch-all page handling in documentation (a1ea900)
36
-
37
- ## [v0.21.0] - 2026-04-12
38
-
39
- - feat: add support for numeric ordering prefixes in content paths and update related tests (ffb0bc8)
40
-
41
- ## [v0.20.5] - 2026-04-12
42
-
43
- - fix: enhance hydration handling and data caching in usePageData and routing middleware (305ae7f)
44
-
45
- ## [v0.20.4] - 2026-04-11
46
-
47
- - fix: enhance SSR and SSG support with improved data handling and dev mode configurations (d1783af)
48
-
49
- ## [v0.20.3] - 2026-04-11
50
-
51
- - fix: update content layer documentation and enhance plugin generation logic for SSR compatibility (a5bca33)
52
-
53
- ## [v0.20.2] - 2026-04-11
54
-
55
- - fix: correct loader error handling and improve data fetching in SSR/SSG modes (d225a99)
56
- - docs: add Content Layer section to README for Markdown/JSON support (376a990)
57
-
58
- ## [v0.20.1] - 2026-04-11
59
-
60
- - fix(content): add fallback title and description extraction from Markdown body (9bab321)
61
-
62
- ## [v0.20.0] - 2026-04-11
63
-
64
- - feat(content): implement file-based content layer with Markdown/JSON support (#1) (c6ef0f7)
65
- - chore: update dependencies for @jasonshimmy/custom-elements-runtime and typescript-eslint (15095bc)
66
-
67
- ## [v0.19.3] - 2026-03-29
68
-
69
- - fix: bump versions in generated package.json files and update the cer dependency for development (bf1014d)
70
-
71
- ## [v0.19.2] - 2026-03-28
72
-
73
- - fix: add plugin DSD test cases and ensure shared component registry in SSR (ee3fffb)
74
-
75
- ## [v0.19.1] - 2026-03-28
76
-
77
- - fix: add entry-server.ts generation for SSR support in dev server (2f102c8)
78
-
79
- ## [v0.19.0] - 2026-03-28
80
-
81
- - feat: implement observability hooks for SSR requests and responses, including error handling feat: inform developers when private config is used in a public context (44b592c)
82
- - chore: enhance type definitions with detailed comments across composables and types (e5c1963)
83
-
84
- ## [v0.18.2] - 2026-03-28
85
-
86
- - fix: correct vite-plugin-cer-app version in generated package.json files (ae1ccc1)
87
-
88
- ## [v0.18.1] - 2026-03-28
89
-
90
- - fix: update dependencies in package.json templates for SPA, SSG, and SSR (5729fe1)
91
-
92
- ## [v0.18.0] - 2026-03-28
93
-
94
- - chore: remove dead file (e01aab3)
95
- - feat: production readiness hardening (5f64c49)
96
-
97
- ## [v0.17.1] - 2026-03-28
98
-
99
- - fix: update dependencies and improve error handling in server templates (0f12ef5)
100
-
101
- ## [v0.17.0] - 2026-03-27
102
-
103
- - feat: add component code-splitting and tests (db7c4c7)
104
-
105
- ## [v0.16.0] - 2026-03-27
106
-
107
- - feat: add internationalization (i18n) support with locale-aware routing (a38407c)
108
- - docs: add defineOAuthProvider helper and tests for OAuth configuration test: enhance useRoute and useCookie tests for better error handling test: implement tests for defineServerMiddleware functionality test: add tests for OAuth routes in generateServerApiCode test: improve useFetch tests with refresh functionality test: update useHead tests for new script handling (797ef05)
109
- - docs: update authentication, components, composables, configuration, data loading, head management, middleware, plugins, routing, testing, use-fetch, and use-state documentation for clarity and accuracy (322d181)
110
-
111
- ## [v0.15.0] - 2026-03-26
112
-
113
- - feat: implement useState composable for globally-keyed reactive state management (f8aae38)
114
- - docs: update inaccuracies (69b807d)
115
-
116
- ## [v0.14.1] - 2026-03-26
117
-
118
- - fix: downgrade typescript (0278d24)
119
- - fix: add missing dts definitions for composables chore: update dependencies and improve type declarations (546c99c)
120
-
121
- ## [v0.14.0] - 2026-03-25
122
-
123
- - feat: add programmatic navigation and route handling (37a583b)
124
-
125
- ## [v0.13.1] - 2026-03-22
126
-
127
- - fix: optimize imports in Cloudflare and Netlify adapters to remove unused handler export (cc74ce3)
128
-
129
- ## [v0.13.0] - 2026-03-22
130
-
131
- - feat: implement streaming Web API Response support in Cloudflare and Netlify adapters (bfe00e3)
132
-
133
- ## [v0.12.1] - 2026-03-22
134
-
135
- - fix: add meta.hydrate support for route hydration strategies and implement related tests (0513743)
136
-
137
- ## [v0.12.0] - 2026-03-22
138
-
139
- - feat: implement ISR support with isrHandler for SSR fallback in Cloudflare, Netlify, and Vercel adapters (ddcc4d4)
140
-
141
- ## [v0.11.0] - 2026-03-22
142
-
143
- - feat: add Cloudflare Pages adapter for SSR and SSG support (2734c26)
144
-
145
- ## [v0.10.0] - 2026-03-22
146
-
147
- - feat: add adapters for Vercel and Netlify deployment platforms (7112bf6)
148
-
149
- ## [v0.9.0] - 2026-03-21
150
-
151
- - feat: add useCookie and useSeoMeta composables with tests (6536902)
152
-
153
- ## [v0.8.0] - 2026-03-21
154
-
155
- - feat: add middleware support and enhance runtime configuration (78ef4d2)
156
-
157
- ## [v0.7.0] - 2026-03-21
158
-
159
- - feat: add per-route render strategies and error handling in ISR (d76fb89)
160
-
161
- ## [v0.6.0] - 2026-03-21
162
-
163
- - feat(ssr): switch server entry from renderToStringWithJITCSSDSD to renderToStreamWithJITCSSDSD for true incremental streaming (cca67d8)
164
-
165
- ## [v0.5.0] - 2026-03-21
166
-
167
- - feat: add runtime configuration support and ISR enhancements (847cd25)
168
-
169
- ## [v0.4.6] - 2026-03-21
170
-
171
- - fix: merge extraneous templates (7a859bd)
172
-
173
- ## [v0.4.5] - 2026-03-21
174
-
175
- - fix: remove the dsd config option since we always want it on anyway. (3698886)
176
-
177
- ## [v0.4.4] - 2026-03-21
178
-
179
- - fix: bootstrap .cer/tsconfig.json during config loading for improved resolution (f8bda65)
180
-
181
- ## [v0.4.3] - 2026-03-21
182
-
183
- - fix: fix DSD config and update FOUC tests to DSD correctness tests and enhance assertions (a8d36a3)
184
- - chore: update eslint (5a367e0)
185
-
186
- ## [v0.4.2] - 2026-03-21
187
-
188
- - fix: update dependencies in project templates to latest versions (1390724)
189
-
190
- ## [v0.4.1] - 2026-03-21
191
-
192
- - fix: update app entry point to use virtual module path /@cer/app.ts across templates and tests (139abaf)
193
-
194
- ## [v0.4.0] - 2026-03-20
195
-
196
- - feat: implement useInject composable for consistent value injection across SPA, SSR, and SSG fix: cer app hidden directory issue (f614e92)
197
-
198
- ## [v0.3.0] - 2026-03-20
199
-
200
- - feat: add default .gitignore templates for SPA, SSR, and SSG projects fix: remove unused streaming ssr option fix: generated .cer directory to get out of the way of the user (8656788)
201
-
202
- ## [v0.2.0] - 2026-03-20
203
-
204
- - feat: introduce generated directory for app files and HTML (c8fdcdd)
205
-
206
- ## [v0.1.6] - 2026-03-20
207
-
208
- - fix: update CLI usage instructions to include --package flag for create-cer-app (457114d)
209
-
210
- ## [v0.1.5] - 2026-03-20
211
-
212
- - fix: use vite plugin for light dom jit css fix: update incorrect docs fix: fix the plugin config (c32cf6a)
213
-
214
- ## [v0.1.4] - 2026-03-20
215
-
216
- - fix: fixed many issues across the plugin fix: added e2e tests to ensure functionality works across build types fix:improve documentation (fb24d84)
217
-
218
- ## [v0.1.3] - 2026-03-19
219
-
220
- - fix: FOUC in ssr and ssg (e4fb53d)
221
-
222
- ## [v0.1.2] - 2026-03-19
223
-
224
- - fix(build): fix SSR and SSG build modes (23d5363)
225
-
226
- ## [v0.1.1] - 2026-03-18
227
-
228
- - fix: rename vite-plugin-cer-app usage to @jasonshimmy/vite-plugin-cer-app (60c4bdf)
229
-
230
- ## [v0.1.0] - 2026-03-18
231
-
232
- - fix: add nvmrc (7065201)
233
- - feat: add publishing capability (812152b)
234
- - initial commit (43a8365)
235
-
236
-