forked from focusreactive/Demo-NextJS13-Sanity
-
Notifications
You must be signed in to change notification settings - Fork 3
/
sanity.config.ts
52 lines (44 loc) · 1.3 KB
/
sanity.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import { defineConfig } from 'sanity';
import { structureTool } from 'sanity/structure';
import { presentationTool } from 'sanity/presentation';
import { visionTool } from '@sanity/vision';
import { colorInput } from '@sanity/color-input';
import { media } from 'sanity-plugin-media';
import { locate } from '@/sanity/utils/locate';
import { schemaTypes } from '@/sanity/schemas';
import config from '@/sanity/config';
import { defaultDocumentNode, structure } from '@/sanity/structure';
import { client } from '@/sanity/client';
import { createQueryStore } from '@sanity/react-loader';
const SANITY_STUDIO_PREVIEW_URL = process.env.SANITY_STUDIO_PREVIEW_URL || 'http://localhost:3000';
export default defineConfig({
name: 'default',
title: 'Next.js + Sanity MVP',
basePath: '/admin',
...config,
plugins: [
structureTool({
structure,
defaultDocumentNode,
}),
presentationTool({
previewUrl: {
origin: typeof location === 'undefined' ? 'http://localhost:3000' : location.origin,
previewMode: {
enable: '/api/draft',
},
},
locate,
}),
visionTool(),
media(),
colorInput(),
],
schema: {
// @ts-ignore
types: schemaTypes,
},
});
export const { loadQuery, useQuery, useLiveMode } = createQueryStore({
client,
});