Skip to content

Breaking changes

Features get added and removed, and breaking changes are introduced! This documents how to migrate.

addVirtualImport

addVirtualImport was removed in 0.5.0. Here is how to migrate:

my-integration/index.ts
import { defineIntegration } from "astro-integration-kit";
import { addVirtualImportPlugin } from "astro-integration-kit/plugins";
import { addVirtualImportsPlugin } from "astro-integration-kit/plugins";
export default defineIntegration({
name: "my-integration",
plugins: [addVirtualImportPlugin],
plugins: [addVirtualImportsPlugin],
setup() {
return {
"astro:config:setup": ({ addVirtualImport }) => {
"astro:config:setup": ({ addVirtualImports }) => {
addVirtualImport({
name: 'virtual:my-integration/config',
content: `export default ${JSON.stringify({ foo: "bar" })}`,
})
addVirtualImport({
name: 'virtual:my-integration/context',
content: `export default ${JSON.stringify({ entrypoint: import.meta.url })}`,
})
addVirtualImports({
'virtual:my-integration/config': `export default ${JSON.stringify({ foo: "bar" })}`,
'virtual:my-integration/context': `export default ${JSON.stringify({ entrypoint: import.meta.url })}`
})
}
}
}
})

defineOptions

defineOptions has been removed in 0.2.0. Here is how to migrate:

my-integration/index.ts
import { defineIntegration, defineOptions } from "astro-integration-kit";
import { defineIntegration } from "astro-integration-kit";
import { z } from "astro/zod";
type Options = {
/**
* A comment
*
* @default `"bar"`
*/
foo?: string | undefined;
}
export default defineIntegration({
// ...
options: defineOptions<Options>({ foo: "bar" }),
optionsSchema: z.object({
/**
* A comment
*
* @default `"bar"`
*/
foo: z.string().optional().default("bar"),
}),
})