/
default-source.ts
68 lines (63 loc) · 1.37 KB
/
default-source.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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import outdent from 'outdent'
import {PackageJson} from '../actions/verify/types'
export function defaultSourceJs(pkg: PackageJson) {
return (
outdent`
import {definePlugin} from 'sanity'
/**
* Usage in sanity.config.js (or .ts)
*
* \`\`\`js
* import {defineConfig} from 'sanity'
* import {myPlugin} from '${pkg.name}'
*
* export default defineConfig({
* // ...
* plugins: [
* myPlugin({}),
* ],
* })
* \`\`\`
*/
export const myPlugin = definePlugin((config = {}) => {
// eslint-disable-next-line no-console
console.log(\`hello from ${pkg.name}\`)
return {
name: '${pkg.name}',
}
})
`.trimStart() + '\n'
)
}
export function defaultSourceTs(pkg: PackageJson) {
return (
outdent`
import {definePlugin} from 'sanity'
interface MyPluginConfig {
/* nothing here yet */
}
/**
* Usage in sanity.config.ts (or .js)
*
* \`\`\`ts
* import {defineConfig} from 'sanity'
* import {myPlugin} from '${pkg.name}'
*
* export default defineConfig({
* // ...
* plugins: [
* myPlugin(),
* ],
* })
* \`\`\`
*/
export const myPlugin = definePlugin<MyPluginConfig | void>((config = {}) => {
// eslint-disable-next-line no-console
console.log('hello from ${pkg.name}')
return {
name: '${pkg.name}',
}
})
`.trimStart() + '\n'
)
}