@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.
- package/dist/cli/checks/lighthouse.d.ts +26 -0
- package/dist/cli/checks/lighthouse.d.ts.map +1 -0
- package/dist/cli/checks/lighthouse.js +121 -0
- package/dist/cli/checks/lighthouse.js.map +1 -0
- package/dist/cli/checks/links.d.ts +12 -0
- package/dist/cli/checks/links.d.ts.map +1 -0
- package/dist/cli/checks/links.js +89 -0
- package/dist/cli/checks/links.js.map +1 -0
- package/dist/cli/checks/performance.d.ts +17 -0
- package/dist/cli/checks/performance.d.ts.map +1 -0
- package/dist/cli/checks/performance.js +61 -0
- package/dist/cli/checks/performance.js.map +1 -0
- package/dist/cli/commands/check.d.ts +3 -0
- package/dist/cli/commands/check.d.ts.map +1 -0
- package/dist/cli/commands/check.js +85 -0
- package/dist/cli/commands/check.js.map +1 -0
- package/dist/cli/create/index.d.ts +11 -1
- package/dist/cli/create/index.d.ts.map +1 -1
- package/dist/cli/create/index.js +135 -65
- package/dist/cli/create/index.js.map +1 -1
- package/dist/cli/create/templates/spa/package.json.tpl +5 -3
- package/dist/cli/create/templates/ssg/cer.config.ts.tpl +2 -0
- package/dist/cli/create/templates/ssg/package.json.tpl +5 -3
- package/dist/cli/create/templates/ssr/package.json.tpl +5 -3
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/plugin/build-ssg.d.ts +22 -6
- package/dist/plugin/build-ssg.d.ts.map +1 -1
- package/dist/plugin/build-ssg.js +227 -17
- package/dist/plugin/build-ssg.js.map +1 -1
- package/dist/plugin/content/parser.d.ts.map +1 -1
- package/dist/plugin/content/parser.js +54 -10
- package/dist/plugin/content/parser.js.map +1 -1
- package/dist/plugin/dev-server.d.ts +4 -1
- package/dist/plugin/dev-server.d.ts.map +1 -1
- package/dist/plugin/dev-server.js.map +1 -1
- package/dist/plugin/dts-generator.d.ts.map +1 -1
- package/dist/plugin/dts-generator.js +50 -8
- package/dist/plugin/dts-generator.js.map +1 -1
- package/dist/plugin/generated-dir.d.ts +2 -0
- package/dist/plugin/generated-dir.d.ts.map +1 -1
- package/dist/plugin/generated-dir.js +17 -6
- package/dist/plugin/generated-dir.js.map +1 -1
- package/dist/plugin/html-post-process.d.ts +6 -0
- package/dist/plugin/html-post-process.d.ts.map +1 -1
- package/dist/plugin/html-post-process.js +24 -0
- package/dist/plugin/html-post-process.js.map +1 -1
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +60 -13
- package/dist/plugin/index.js.map +1 -1
- package/dist/plugin/transforms/auto-import.d.ts.map +1 -1
- package/dist/plugin/transforms/auto-import.js +7 -0
- package/dist/plugin/transforms/auto-import.js.map +1 -1
- package/dist/plugin/transforms/prune-runtime-css.d.ts +8 -0
- package/dist/plugin/transforms/prune-runtime-css.d.ts.map +1 -0
- package/dist/plugin/transforms/prune-runtime-css.js +40 -0
- package/dist/plugin/transforms/prune-runtime-css.js.map +1 -0
- package/dist/runtime/app-template.d.ts +1 -1
- package/dist/runtime/app-template.d.ts.map +1 -1
- package/dist/runtime/app-template.js +206 -36
- package/dist/runtime/app-template.js.map +1 -1
- package/dist/runtime/composables/index.d.ts +4 -0
- package/dist/runtime/composables/index.d.ts.map +1 -1
- package/dist/runtime/composables/index.js +2 -0
- package/dist/runtime/composables/index.js.map +1 -1
- package/dist/runtime/composables/use-active-headings.d.ts +24 -0
- package/dist/runtime/composables/use-active-headings.d.ts.map +1 -0
- package/dist/runtime/composables/use-active-headings.js +112 -0
- package/dist/runtime/composables/use-active-headings.js.map +1 -0
- package/dist/runtime/composables/use-content-page.d.ts +45 -0
- package/dist/runtime/composables/use-content-page.d.ts.map +1 -0
- package/dist/runtime/composables/use-content-page.js +179 -0
- package/dist/runtime/composables/use-content-page.js.map +1 -0
- package/dist/runtime/composables/use-content-search.d.ts.map +1 -1
- package/dist/runtime/composables/use-content-search.js +1 -5
- package/dist/runtime/composables/use-content-search.js.map +1 -1
- package/dist/runtime/composables/use-fetch.d.ts +2 -1
- package/dist/runtime/composables/use-fetch.d.ts.map +1 -1
- package/dist/runtime/composables/use-fetch.js +112 -43
- package/dist/runtime/composables/use-fetch.js.map +1 -1
- package/dist/runtime/composables/use-route.d.ts.map +1 -1
- package/dist/runtime/composables/use-route.js +39 -11
- package/dist/runtime/composables/use-route.js.map +1 -1
- package/dist/runtime/content/client.js +2 -2
- package/dist/runtime/content/client.js.map +1 -1
- package/dist/runtime/entry-server-template.d.ts +16 -1
- package/dist/runtime/entry-server-template.d.ts.map +1 -1
- package/dist/runtime/entry-server-template.js +120 -13
- package/dist/runtime/entry-server-template.js.map +1 -1
- package/dist/types/config.d.ts +45 -4
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js.map +1 -1
- package/dist/types/middleware.d.ts +2 -2
- package/dist/types/middleware.d.ts.map +1 -1
- package/package.json +22 -19
- package/.github/copilot-instructions.md +0 -169
- package/.github/workflows/publish.yml +0 -257
- package/.nvmrc +0 -1
- package/CHANGELOG.md +0 -236
- package/CLAUDE.md +0 -113
- package/commits.txt +0 -1
- package/cypress.config.ts +0 -16
- package/docs/authentication.md +0 -285
- package/docs/cli.md +0 -324
- package/docs/components.md +0 -237
- package/docs/composables.md +0 -907
- package/docs/configuration.md +0 -696
- package/docs/content.md +0 -570
- package/docs/data-loading.md +0 -336
- package/docs/getting-started.md +0 -237
- package/docs/head-management.md +0 -212
- package/docs/i18n.md +0 -159
- package/docs/layouts.md +0 -224
- package/docs/middleware.md +0 -234
- package/docs/plugins.md +0 -170
- package/docs/rendering-modes.md +0 -377
- package/docs/routing.md +0 -485
- package/docs/server-api.md +0 -253
- package/docs/testing.md +0 -455
- package/docs/use-fetch.md +0 -183
- package/e2e/cypress/e2e/api.cy.ts +0 -123
- package/e2e/cypress/e2e/async-component.cy.ts +0 -27
- package/e2e/cypress/e2e/component-splitting.cy.ts +0 -50
- package/e2e/cypress/e2e/content.cy.ts +0 -425
- package/e2e/cypress/e2e/cookie.cy.ts +0 -85
- package/e2e/cypress/e2e/data.cy.ts +0 -158
- package/e2e/cypress/e2e/error-boundary.cy.ts +0 -88
- package/e2e/cypress/e2e/fouc.cy.ts +0 -254
- package/e2e/cypress/e2e/group-meta.cy.ts +0 -36
- package/e2e/cypress/e2e/head.cy.ts +0 -89
- package/e2e/cypress/e2e/i18n.cy.ts +0 -79
- package/e2e/cypress/e2e/interactive.cy.ts +0 -137
- package/e2e/cypress/e2e/isr-nested-runtime.cy.ts +0 -102
- package/e2e/cypress/e2e/jit-css-custom-colors.cy.ts +0 -43
- package/e2e/cypress/e2e/middleware-chain.cy.ts +0 -89
- package/e2e/cypress/e2e/middleware-status.cy.ts +0 -30
- package/e2e/cypress/e2e/middleware.cy.ts +0 -45
- package/e2e/cypress/e2e/navigate.cy.ts +0 -39
- package/e2e/cypress/e2e/observability.cy.ts +0 -77
- package/e2e/cypress/e2e/per-route-error.cy.ts +0 -42
- package/e2e/cypress/e2e/per-route-render.cy.ts +0 -70
- package/e2e/cypress/e2e/preview-hardening.cy.ts +0 -88
- package/e2e/cypress/e2e/routes.cy.ts +0 -128
- package/e2e/cypress/e2e/seo-meta.cy.ts +0 -108
- package/e2e/cypress/e2e/server-middleware.cy.ts +0 -46
- package/e2e/cypress/e2e/session-rotation.cy.ts +0 -25
- package/e2e/cypress/e2e/session.cy.ts +0 -73
- package/e2e/cypress/e2e/ssr-render-error.cy.ts +0 -68
- package/e2e/cypress/e2e/synthetic-404.cy.ts +0 -45
- package/e2e/cypress/e2e/use-page-data.cy.ts +0 -122
- package/e2e/cypress/e2e/use-state.cy.ts +0 -138
- package/e2e/cypress/support/commands.ts +0 -120
- package/e2e/cypress/support/e2e.ts +0 -10
- package/e2e/cypress/tsconfig.json +0 -14
- package/e2e/kitchen-sink/app/components/ks-badge.ts +0 -8
- package/e2e/kitchen-sink/app/composables/useKsCounter.ts +0 -9
- package/e2e/kitchen-sink/app/error.ts +0 -18
- package/e2e/kitchen-sink/app/layouts/admin.ts +0 -13
- package/e2e/kitchen-sink/app/layouts/default.ts +0 -25
- package/e2e/kitchen-sink/app/layouts/group.ts +0 -9
- package/e2e/kitchen-sink/app/layouts/minimal.ts +0 -7
- package/e2e/kitchen-sink/app/loading.ts +0 -9
- package/e2e/kitchen-sink/app/middleware/auth.ts +0 -9
- package/e2e/kitchen-sink/app/middleware/custom-log.ts +0 -4
- package/e2e/kitchen-sink/app/middleware/group-auth.ts +0 -7
- package/e2e/kitchen-sink/app/middleware/logger.ts +0 -14
- package/e2e/kitchen-sink/app/pages/(auth)/login.ts +0 -13
- package/e2e/kitchen-sink/app/pages/(auth)/protected.ts +0 -16
- package/e2e/kitchen-sink/app/pages/404.ts +0 -9
- package/e2e/kitchen-sink/app/pages/about.ts +0 -17
- package/e2e/kitchen-sink/app/pages/admin/_layout.ts +0 -1
- package/e2e/kitchen-sink/app/pages/admin/dashboard.ts +0 -11
- package/e2e/kitchen-sink/app/pages/async-component-error-test.ts +0 -18
- package/e2e/kitchen-sink/app/pages/async-component-test.ts +0 -18
- package/e2e/kitchen-sink/app/pages/blog/[slug].ts +0 -59
- package/e2e/kitchen-sink/app/pages/blog/index.ts +0 -51
- package/e2e/kitchen-sink/app/pages/content-blog.ts +0 -37
- package/e2e/kitchen-sink/app/pages/content-doc.ts +0 -42
- package/e2e/kitchen-sink/app/pages/content-fallback.ts +0 -36
- package/e2e/kitchen-sink/app/pages/content-guides.ts +0 -35
- package/e2e/kitchen-sink/app/pages/content-index.ts +0 -39
- package/e2e/kitchen-sink/app/pages/content-search.ts +0 -36
- package/e2e/kitchen-sink/app/pages/cookie-test.ts +0 -22
- package/e2e/kitchen-sink/app/pages/counter.ts +0 -17
- package/e2e/kitchen-sink/app/pages/group-auth-blocked.ts +0 -9
- package/e2e/kitchen-sink/app/pages/group-meta-test/_layout.ts +0 -6
- package/e2e/kitchen-sink/app/pages/group-meta-test/custom-mw.ts +0 -14
- package/e2e/kitchen-sink/app/pages/group-meta-test/page.ts +0 -9
- package/e2e/kitchen-sink/app/pages/group-meta-test/protected.ts +0 -8
- package/e2e/kitchen-sink/app/pages/head.ts +0 -20
- package/e2e/kitchen-sink/app/pages/i18n-test.ts +0 -14
- package/e2e/kitchen-sink/app/pages/index.ts +0 -27
- package/e2e/kitchen-sink/app/pages/isr-test.ts +0 -17
- package/e2e/kitchen-sink/app/pages/items/[id].ts +0 -20
- package/e2e/kitchen-sink/app/pages/jit-css-custom-colors-test.ts +0 -14
- package/e2e/kitchen-sink/app/pages/loader-error-test.ts +0 -13
- package/e2e/kitchen-sink/app/pages/loader-props-test.ts +0 -19
- package/e2e/kitchen-sink/app/pages/loader-response-error-test.ts +0 -13
- package/e2e/kitchen-sink/app/pages/middleware-chain-test.ts +0 -12
- package/e2e/kitchen-sink/app/pages/middleware-status-test.ts +0 -9
- package/e2e/kitchen-sink/app/pages/navigate-test.ts +0 -16
- package/e2e/kitchen-sink/app/pages/observability-test.ts +0 -25
- package/e2e/kitchen-sink/app/pages/per-route-error-test.error.ts +0 -13
- package/e2e/kitchen-sink/app/pages/per-route-error-test.ts +0 -15
- package/e2e/kitchen-sink/app/pages/plugin-dsd-test.ts +0 -10
- package/e2e/kitchen-sink/app/pages/render-error-test.ts +0 -12
- package/e2e/kitchen-sink/app/pages/render-server-test.ts +0 -12
- package/e2e/kitchen-sink/app/pages/render-spa-test.ts +0 -12
- package/e2e/kitchen-sink/app/pages/route-info.ts +0 -14
- package/e2e/kitchen-sink/app/pages/seo-test.ts +0 -23
- package/e2e/kitchen-sink/app/pages/session-rotation-test.ts +0 -25
- package/e2e/kitchen-sink/app/pages/use-state-test.ts +0 -37
- package/e2e/kitchen-sink/app/plugins/01.setup.ts +0 -7
- package/e2e/kitchen-sink/app/plugins/02.ks-plugin-components.ts +0 -27
- package/e2e/kitchen-sink/cer-auto-imports.d.ts +0 -51
- package/e2e/kitchen-sink/cer-env.d.ts +0 -35
- package/e2e/kitchen-sink/cer-tsconfig.json +0 -30
- package/e2e/kitchen-sink/cer.config.ts +0 -43
- package/e2e/kitchen-sink/content/01.guides/01.index.md +0 -8
- package/e2e/kitchen-sink/content/01.guides/02.intro.md +0 -8
- package/e2e/kitchen-sink/content/01.guides/10.advanced.md +0 -8
- package/e2e/kitchen-sink/content/blog/2026-04-01-hello.md +0 -26
- package/e2e/kitchen-sink/content/blog/2026-04-02-draft.md +0 -10
- package/e2e/kitchen-sink/content/blog/index.md +0 -8
- package/e2e/kitchen-sink/content/blog/no-frontmatter.md +0 -7
- package/e2e/kitchen-sink/content/docs/getting-started.md +0 -48
- package/e2e/kitchen-sink/content/index.md +0 -16
- package/e2e/kitchen-sink/server/api/echo.ts +0 -12
- package/e2e/kitchen-sink/server/api/health.ts +0 -3
- package/e2e/kitchen-sink/server/api/posts/[slug].ts +0 -11
- package/e2e/kitchen-sink/server/api/posts/index.ts +0 -5
- package/e2e/kitchen-sink/server/api/session.ts +0 -23
- package/e2e/kitchen-sink/server/data/posts.ts +0 -21
- package/e2e/kitchen-sink/server/middleware/01-headers.ts +0 -6
- package/e2e/kitchen-sink/server/middleware/02-status-test.ts +0 -10
- package/e2e/kitchen-sink/tsconfig.json +0 -3
- package/e2e/scripts/clean.mjs +0 -14
- package/eslint.config.ts +0 -22
- package/src/__tests__/cli/adapters/cloudflare-worker.integration.test.ts +0 -132
- package/src/__tests__/cli/adapters/cloudflare.test.ts +0 -332
- package/src/__tests__/cli/adapters/netlify-bridge.integration.test.ts +0 -139
- package/src/__tests__/cli/adapters/netlify.test.ts +0 -286
- package/src/__tests__/cli/adapters/vercel-launcher.integration.test.ts +0 -129
- package/src/__tests__/cli/adapters/vercel.test.ts +0 -263
- package/src/__tests__/cli/preview-hardening.test.ts +0 -265
- package/src/__tests__/cli/preview-isr.test.ts +0 -320
- package/src/__tests__/index.test.ts +0 -21
- package/src/__tests__/plugin/app-template.test.ts +0 -166
- package/src/__tests__/plugin/build-ssg-render.test.ts +0 -155
- package/src/__tests__/plugin/build-ssg.test.ts +0 -598
- package/src/__tests__/plugin/build-ssr.test.ts +0 -192
- package/src/__tests__/plugin/cer-app-plugin.test.ts +0 -552
- package/src/__tests__/plugin/content/emitter.test.ts +0 -117
- package/src/__tests__/plugin/content/loader.test.ts +0 -154
- package/src/__tests__/plugin/content/parser.test.ts +0 -381
- package/src/__tests__/plugin/content/path-utils.test.ts +0 -69
- package/src/__tests__/plugin/content/search.test.ts +0 -119
- package/src/__tests__/plugin/dev-server.test.ts +0 -813
- package/src/__tests__/plugin/dts-generator.test.ts +0 -394
- package/src/__tests__/plugin/entry-server-template.test.ts +0 -385
- package/src/__tests__/plugin/generated-dir.test.ts +0 -144
- package/src/__tests__/plugin/html-post-process.test.ts +0 -146
- package/src/__tests__/plugin/path-utils.test.ts +0 -411
- package/src/__tests__/plugin/resolve-config.test.ts +0 -233
- package/src/__tests__/plugin/scanner.test.ts +0 -186
- package/src/__tests__/plugin/transforms/auto-import.test.ts +0 -510
- package/src/__tests__/plugin/transforms/head-inject.test.ts +0 -178
- package/src/__tests__/plugin/virtual/composables.test.ts +0 -57
- package/src/__tests__/plugin/virtual/content-components.test.ts +0 -66
- package/src/__tests__/plugin/virtual/error.test.ts +0 -71
- package/src/__tests__/plugin/virtual/layouts.test.ts +0 -70
- package/src/__tests__/plugin/virtual/loading.test.ts +0 -72
- package/src/__tests__/plugin/virtual/middleware.test.ts +0 -83
- package/src/__tests__/plugin/virtual/plugins.test.ts +0 -129
- package/src/__tests__/plugin/virtual/routes.test.ts +0 -884
- package/src/__tests__/plugin/virtual/server-api.test.ts +0 -164
- package/src/__tests__/plugin/virtual/server-middleware.test.ts +0 -102
- package/src/__tests__/runtime/app-template.test.ts +0 -208
- package/src/__tests__/runtime/define-middleware.test.ts +0 -64
- package/src/__tests__/runtime/define-server-middleware.test.ts +0 -54
- package/src/__tests__/runtime/entry-client-template.test.ts +0 -61
- package/src/__tests__/runtime/isr-handler.test.ts +0 -338
- package/src/__tests__/runtime/oauth/handler.test.ts +0 -358
- package/src/__tests__/runtime/oauth/providers.test.ts +0 -47
- package/src/__tests__/runtime/oauth-index.test.ts +0 -43
- package/src/__tests__/runtime/use-auth.test.ts +0 -169
- package/src/__tests__/runtime/use-content-search-composable.test.ts +0 -405
- package/src/__tests__/runtime/use-content-search.test.ts +0 -163
- package/src/__tests__/runtime/use-content.test.ts +0 -226
- package/src/__tests__/runtime/use-cookie.test.ts +0 -277
- package/src/__tests__/runtime/use-fetch-component.test.ts +0 -214
- package/src/__tests__/runtime/use-fetch.test.ts +0 -377
- package/src/__tests__/runtime/use-head.test.ts +0 -311
- package/src/__tests__/runtime/use-inject-client.test.ts +0 -67
- package/src/__tests__/runtime/use-inject.test.ts +0 -66
- package/src/__tests__/runtime/use-locale.test.ts +0 -152
- package/src/__tests__/runtime/use-navigate.test.ts +0 -121
- package/src/__tests__/runtime/use-page-data.test.ts +0 -298
- package/src/__tests__/runtime/use-route.test.ts +0 -156
- package/src/__tests__/runtime/use-runtime-config.test.ts +0 -182
- package/src/__tests__/runtime/use-seo-meta.test.ts +0 -109
- package/src/__tests__/runtime/use-session.test.ts +0 -320
- package/src/__tests__/runtime/use-state.test.ts +0 -340
- package/src/__tests__/types/config.test.ts +0 -18
- package/src/cli/adapters/cloudflare.ts +0 -335
- package/src/cli/adapters/netlify.ts +0 -326
- package/src/cli/adapters/vercel.ts +0 -311
- package/src/cli/commands/adapt.ts +0 -84
- package/src/cli/commands/build.ts +0 -165
- package/src/cli/commands/dev.ts +0 -125
- package/src/cli/commands/generate.ts +0 -91
- package/src/cli/commands/preview-isr.ts +0 -172
- package/src/cli/commands/preview.ts +0 -523
- package/src/cli/create/index.ts +0 -275
- package/src/cli/create/templates/shared/.gitignore.tpl +0 -25
- package/src/cli/create/templates/shared/app/layouts/default.ts.tpl +0 -15
- package/src/cli/create/templates/shared/app/pages/index.ts.tpl +0 -8
- package/src/cli/create/templates/shared/index.html.tpl +0 -12
- package/src/cli/create/templates/shared/tsconfig.json.tpl +0 -6
- package/src/cli/create/templates/spa/cer.config.ts.tpl +0 -6
- package/src/cli/create/templates/spa/package.json.tpl +0 -18
- package/src/cli/create/templates/ssg/cer.config.ts.tpl +0 -10
- package/src/cli/create/templates/ssg/package.json.tpl +0 -19
- package/src/cli/create/templates/ssr/cer.config.ts.tpl +0 -6
- package/src/cli/create/templates/ssr/package.json.tpl +0 -18
- package/src/cli/index.ts +0 -22
- package/src/index.ts +0 -20
- package/src/plugin/build-ssg.ts +0 -403
- package/src/plugin/build-ssr.ts +0 -134
- package/src/plugin/content/emitter.ts +0 -50
- package/src/plugin/content/index.ts +0 -233
- package/src/plugin/content/parser.ts +0 -259
- package/src/plugin/content/path-utils.ts +0 -55
- package/src/plugin/content/scanner.ts +0 -26
- package/src/plugin/content/search.ts +0 -28
- package/src/plugin/dev-server.ts +0 -379
- package/src/plugin/dts-generator.ts +0 -273
- package/src/plugin/generated-dir.ts +0 -121
- package/src/plugin/html-post-process.ts +0 -96
- package/src/plugin/index.ts +0 -584
- package/src/plugin/path-utils.ts +0 -186
- package/src/plugin/scanner.ts +0 -65
- package/src/plugin/transforms/auto-import.ts +0 -206
- package/src/plugin/transforms/head-inject.ts +0 -161
- package/src/plugin/virtual/composables.ts +0 -28
- package/src/plugin/virtual/content-components.ts +0 -83
- package/src/plugin/virtual/error.ts +0 -34
- package/src/plugin/virtual/layouts.ts +0 -41
- package/src/plugin/virtual/loading.ts +0 -32
- package/src/plugin/virtual/middleware.ts +0 -45
- package/src/plugin/virtual/plugins.ts +0 -46
- package/src/plugin/virtual/routes.ts +0 -514
- package/src/plugin/virtual/server-api.ts +0 -85
- package/src/plugin/virtual/server-middleware.ts +0 -44
- package/src/runtime/app-template.ts +0 -377
- package/src/runtime/composables/define-middleware.ts +0 -17
- package/src/runtime/composables/define-server-middleware.ts +0 -18
- package/src/runtime/composables/index.ts +0 -27
- package/src/runtime/composables/use-auth.ts +0 -125
- package/src/runtime/composables/use-content-search.ts +0 -205
- package/src/runtime/composables/use-content.ts +0 -146
- package/src/runtime/composables/use-cookie.ts +0 -135
- package/src/runtime/composables/use-fetch.ts +0 -438
- package/src/runtime/composables/use-head.ts +0 -234
- package/src/runtime/composables/use-inject.ts +0 -49
- package/src/runtime/composables/use-locale.ts +0 -109
- package/src/runtime/composables/use-navigate.ts +0 -58
- package/src/runtime/composables/use-page-data.ts +0 -93
- package/src/runtime/composables/use-route.ts +0 -71
- package/src/runtime/composables/use-runtime-config.ts +0 -123
- package/src/runtime/composables/use-seo-meta.ts +0 -80
- package/src/runtime/composables/use-session.ts +0 -186
- package/src/runtime/composables/use-state.ts +0 -92
- package/src/runtime/content/client.ts +0 -168
- package/src/runtime/entry-client-template.ts +0 -39
- package/src/runtime/entry-server-template.ts +0 -493
- package/src/runtime/isr-handler.ts +0 -184
- package/src/runtime/oauth/handler.ts +0 -407
- package/src/runtime/oauth/index.ts +0 -49
- package/src/runtime/oauth/providers.ts +0 -38
- package/src/types/api.ts +0 -40
- package/src/types/config.ts +0 -379
- package/src/types/content.ts +0 -66
- package/src/types/index.ts +0 -7
- package/src/types/middleware.ts +0 -63
- package/src/types/page.ts +0 -117
- package/src/types/plugin.ts +0 -34
- package/tsconfig.build.json +0 -10
- package/tsconfig.json +0 -19
- 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
|
-
|