aboutsummaryrefslogtreecommitdiff
path: root/benchmark/packages/timer/src/index.ts
diff options
context:
space:
mode:
authorGravatar github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> 2025-06-05 14:25:23 +0000
committerGravatar github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> 2025-06-05 14:25:23 +0000
commite586d7d704d475afe3373a1de6ae20d504f79d6d (patch)
tree7e3fa24807cebd48a86bd40f866d792181191ee9 /benchmark/packages/timer/src/index.ts
downloadastro-latest.tar.gz
astro-latest.tar.zst
astro-latest.zip
Sync from a8e1c0a7402940e0fc5beef669522b315052df1blatest
Diffstat (limited to 'benchmark/packages/timer/src/index.ts')
-rw-r--r--benchmark/packages/timer/src/index.ts37
1 files changed, 37 insertions, 0 deletions
diff --git a/benchmark/packages/timer/src/index.ts b/benchmark/packages/timer/src/index.ts
new file mode 100644
index 000000000..f83a61c36
--- /dev/null
+++ b/benchmark/packages/timer/src/index.ts
@@ -0,0 +1,37 @@
+import type { AstroAdapter, AstroIntegration } from 'astro';
+
+export function getAdapter(): AstroAdapter {
+ return {
+ name: '@benchmark/timer',
+ serverEntrypoint: '@benchmark/timer/server.js',
+ previewEntrypoint: '@benchmark/timer/preview.js',
+ exports: ['handler'],
+ supportedAstroFeatures: {
+ serverOutput: 'stable',
+ },
+ };
+}
+
+export default function createIntegration(): AstroIntegration {
+ return {
+ name: '@benchmark/timer',
+ hooks: {
+ 'astro:config:setup': ({ updateConfig }) => {
+ updateConfig({
+ vite: {
+ ssr: {
+ noExternal: ['@benchmark/timer'],
+ },
+ },
+ });
+ },
+ 'astro:config:done': ({ setAdapter, config }) => {
+ setAdapter(getAdapter());
+
+ if (config.output === 'static') {
+ console.warn(`[@benchmark/timer] \`output: "server"\` is required to use this adapter.`);
+ }
+ },
+ },
+ };
+}