fimo 2.1.0 → 2.2.0-staging.10
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/README.md +3 -2
- package/assets/agent-templates/_default/config.yaml +1 -0
- package/assets/agent-templates/broken-link-sweeper/config.yaml +1 -0
- package/assets/agent-templates/content-translator/config.yaml +1 -0
- package/assets/agent-templates/content-translator/scripts/translate-entries.ts +1 -1
- package/assets/agent-templates/post-deploy-check/config.yaml +1 -0
- package/assets/agent-templates/post-deploy-check/scripts/check-logs.ts +1 -1
- package/assets/agent-templates/seo-audit/config.yaml +1 -0
- package/assets/agent-templates/seo-audit/scripts/list-routes.ts +3 -3
- package/assets/skills/fimo-cli/SKILL.md +5 -5
- package/assets/skills/fimo-cli/references/agents.md +2 -1
- package/assets/skills/fimo-cli/references/assets.md +4 -1
- package/assets/skills/fimo-cli/references/branches.md +1 -1
- package/assets/skills/fimo-cli/references/content.md +3 -3
- package/assets/skills/fimo-cli/references/deploy.md +2 -2
- package/assets/skills/fimo-cli/references/forms.md +3 -1
- package/assets/skills/fimo-cli/references/history.md +1 -0
- package/assets/skills/fimo-cli/references/init.md +30 -39
- package/assets/skills/fimo-cli/references/preview.md +5 -3
- package/assets/skills/fimo-cli/references/schedules.md +4 -2
- package/assets/skills/fimo-cli/references/webhooks.md +2 -0
- package/assets/skills/fimo-code/references/frameworks/next.md +4 -1
- package/assets/skills/fimo-code/references/frameworks/react-router.md +4 -3
- package/assets/skills/fimo-migration/SKILL.md +3 -3
- package/assets/skills/fimo-studio/references/preview-and-responsive.md +4 -1
- package/assets/skills/fimo-studio/references/visual-editing.md +9 -1
- package/dist/build/astro/config.js +2 -1
- package/dist/build/vite/plugins/preview-health.d.ts +4 -0
- package/dist/build/vite/plugins/preview-health.js +40 -0
- package/dist/cli/bundle.json +1 -1
- package/dist/cli/index.js +136 -137
- package/dist/runtime/astro/server-runtime.js +7 -3
- package/dist/runtime/content/client/collection-core.js +3 -2
- package/dist/runtime/content/client/core-types.d.ts +4 -3
- package/dist/runtime/content/client/internal.d.ts +2 -0
- package/dist/runtime/content/client/internal.js +54 -25
- package/dist/runtime/content/client/singleton-core.js +2 -1
- package/dist/runtime/content/index.d.ts +1 -1
- package/dist/runtime/content/index.js +1 -1
- package/dist/runtime/paths/get-fimo-paths.js +7 -3
- package/dist/runtime/primitives/lib/index.d.ts +1 -1
- package/dist/runtime/primitives/lib/index.js +1 -1
- package/dist/runtime/primitives/lib/primitives.d.ts +24 -5
- package/dist/runtime/primitives/lib/primitives.js +69 -16
- package/dist/runtime/primitives/lib/template.js +2 -2
- package/dist/runtime/shared/branch-identity.d.ts +56 -0
- package/dist/runtime/shared/{env-identity.js → branch-identity.js} +40 -27
- package/dist/runtime/shared/local-runtime-env.d.ts +2 -2
- package/dist/runtime/shared/local-runtime-env.js +12 -10
- package/dist/runtime/templates.d.ts +8 -2
- package/dist/runtime/templates.js +34 -8
- package/package.json +13 -9
- package/release.json +2 -2
- package/templates/astro/package.json +2 -2
- package/templates/nextjs/AGENTS.md +1 -1
- package/templates/nextjs/package.json +4 -4
- package/templates/react-router/.fimo/config.json +1 -2
- package/templates/react-router/AGENTS.md +1 -1
- package/templates/react-router/package.json +4 -4
- package/templates/sveltekit/package.json +2 -2
- package/templates/vite/package.json +4 -4
- package/assets/starters/fimo-site/manifest.json +0 -64
- package/assets/starters/fimo-site/template/.fimo/agents/content-guide/GOAL.md +0 -8
- package/assets/starters/fimo-site/template/.fimo/agents/content-guide/capabilities.yaml +0 -1
- package/assets/starters/fimo-site/template/.fimo/agents/content-guide/config.yaml +0 -9
- package/assets/starters/fimo-site/template/.fimo/agents/site-review/GOAL.md +0 -14
- package/assets/starters/fimo-site/template/.fimo/agents/site-review/capabilities.yaml +0 -3
- package/assets/starters/fimo-site/template/.fimo/agents/site-review/config.yaml +0 -9
- package/assets/starters/fimo-site/template/src/forms/contact.json +0 -14
- package/assets/starters/fimo-site/template/src/forms/contact.ts +0 -46
- package/assets/starters/fimo-site/template/src/pages/Contact.tsx +0 -193
- package/assets/starters/fimo-site/template/src/pages/Index.tsx +0 -27
- package/assets/starters/fimo-site/template/src/pages/SiteContent.tsx +0 -191
- package/assets/starters/fimo-site/template/src/schemas/HomePage.json +0 -28
- package/assets/starters/fimo-site/template/src/schemas/HomePage.ts +0 -29
- package/assets/starters/fimo-site/template/src/schemas/HomePage.types.ts +0 -64
- package/dist/runtime/shared/env-identity.d.ts +0 -43
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export const PREVIEW_HEALTH_PATH = '/__fimo/preview-health';
|
|
2
|
+
const OPTIMIZED_DEP_PATH = '/node_modules/.vite/deps/';
|
|
3
|
+
export default function previewHealthPlugin() {
|
|
4
|
+
let failure = null;
|
|
5
|
+
return {
|
|
6
|
+
name: 'fimo:preview-health',
|
|
7
|
+
apply: 'serve',
|
|
8
|
+
configureServer(server) {
|
|
9
|
+
// FIMO-1589: the sandbox watcher needs a durable signal because Vite's
|
|
10
|
+
// one-shot HMR reload can fire before the hosted preview socket connects.
|
|
11
|
+
if (!process.env.FIMO_PREVIEW_ALLOWED_ORIGINS) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
server.middlewares.use((req, res, next) => {
|
|
15
|
+
const url = new URL(req.url ?? '/', 'http://127.0.0.1');
|
|
16
|
+
if (url.pathname === PREVIEW_HEALTH_PATH) {
|
|
17
|
+
res.statusCode = 200;
|
|
18
|
+
res.setHeader('content-type', 'application/json');
|
|
19
|
+
res.end(JSON.stringify({
|
|
20
|
+
failureGeneration: failure?.generation ?? 0,
|
|
21
|
+
lastFailure: failure,
|
|
22
|
+
}));
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
if (url.pathname.includes(OPTIMIZED_DEP_PATH) && url.searchParams.has('v')) {
|
|
26
|
+
res.once('finish', () => {
|
|
27
|
+
if (res.statusCode >= 500) {
|
|
28
|
+
failure = {
|
|
29
|
+
generation: (failure?.generation ?? 0) + 1,
|
|
30
|
+
status: res.statusCode,
|
|
31
|
+
at: Date.now(),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
next();
|
|
37
|
+
});
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
}
|