commerce/lib/sanity/desk/category-structure.ts
2023-08-14 12:24:07 +02:00

34 lines
960 B
TypeScript

import {ListItemBuilder} from 'sanity/desk'
import defineStructure from '../utils/define-structure'
import Iframe from 'sanity-plugin-iframe-pane'
import {SanityDocument} from 'sanity'
import {EyeOpenIcon, MasterDetailIcon} from '@sanity/icons'
import getPreviewUrl from '../utils/get-preview-url'
export default defineStructure<ListItemBuilder>((S) =>
S.listItem()
.title('Categories')
.schemaType('category')
.child (
S.documentTypeList('category')
.child (id =>
S.document()
.schemaType("category")
.id(id)
.views([
S.view
.form()
.icon(MasterDetailIcon),
S.view
.component(Iframe)
.icon(EyeOpenIcon)
.options({
url: (doc: SanityDocument) => getPreviewUrl(doc),
})
.title('Preview')
])
)
)
)