@madebywild/sanity-link-field
v1.0.1
Published
> [!IMPORTANT] > This package is primarily intended for internal use.
Downloads
1,222
Readme
[!IMPORTANT] This package is primarily intended for internal use.
@madebywild/sanity-link-field
Sanity object field for internal, external, email, phone, and file links.
Install
pnpm add @madebywild/sanity-link-fieldConfigure Plugin
import { defineConfig } from "sanity";
import { wildSanityLinkFieldPlugin } from "@madebywild/sanity-link-field";
export default defineConfig({
plugins: [
wildSanityLinkFieldPlugin({
internalLinkSchemaTypes: [{ type: "page" }, { type: "post" }],
weakReferences: true,
// `true`/`false` or object form.
sectionTarget: {
enabled: true,
query: `
*[_id == $pageId][0]{
"sections": array::compact(pageBuilder.sectionsArray[]{
"value": _key,
"label": coalesce(sectionSettings.sectionTitle, _type),
})
}.sections
`,
},
}),
],
});Use in Schema
import { defineField } from "sanity";
import { requireLink } from "@madebywild/sanity-link-field";
defineField({
name: "cta",
type: "wild.link",
options: {
extensions: {
// `true` or { enabled: true/false }
customText: { enabled: true },
},
},
validation: (R) => requireLink(R),
});