next-sanity 4.2.2-dev.2 → 4.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +41 -15
- package/dist/_chunks/NextStudioLoading-2003f32a.js.map +1 -1
- package/dist/_chunks/NextStudioLoading-225bb240.cjs.map +1 -1
- package/dist/studio/head.cjs.map +1 -1
- package/dist/studio/head.d.ts +0 -2
- package/dist/studio/head.js.map +1 -1
- package/dist/studio/index.cjs.map +1 -1
- package/dist/studio/index.js.map +1 -1
- package/dist/studio/loading.d.ts +0 -2
- package/dist/webhook.cjs.map +1 -1
- package/dist/webhook.js.map +1 -1
- package/package.json +22 -22
package/README.md
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
- [Installation](#installation)
|
|
15
15
|
- [`next-sanity` Running groq queries](#next-sanity-running-groq-queries)
|
|
16
16
|
- [`appDir`, React Server Components and caching](#appdir-react-server-components-and-caching)
|
|
17
|
+
- [`next-sanity` Visual Editing with Content Source Maps](#next-sanity-visual-editing-with-content-source-maps)
|
|
17
18
|
- [`next-sanity/preview` Live real-time preview](#next-sanitypreview-live-real-time-preview)
|
|
18
19
|
- [Examples](#examples)
|
|
19
20
|
- [Built-in Sanity auth](#built-in-sanity-auth)
|
|
@@ -64,22 +65,12 @@ pnpm install next-sanity @portabletext/react @sanity/image-url
|
|
|
64
65
|
|
|
65
66
|
### `next-sanity/studio` peer dependencies
|
|
66
67
|
|
|
67
|
-
When using `npm` newer than `v7` you should end up with needed dependencies like `sanity` and `styled-components` when you `npm install next-sanity`.
|
|
68
|
-
|
|
69
|
-
#### Yarn
|
|
68
|
+
When using `npm` newer than `v7`, or `pnpm` newer than `v8`, you should end up with needed dependencies like `sanity` and `styled-components` when you `npm install next-sanity`. It also works in `yarn` `v1` using `install-peerdeps`:
|
|
70
69
|
|
|
71
70
|
```bash
|
|
72
71
|
npx install-peerdeps --yarn next-sanity
|
|
73
72
|
```
|
|
74
73
|
|
|
75
|
-
#### pnpm
|
|
76
|
-
|
|
77
|
-
You can either setup [`auto-install-peers`](https://stackoverflow.com/questions/72468635/pnpm-peer-dependencies-auto-install/74835069#74835069) and `pnpm install next-sanity` is enough, or:
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
npx install-peerdeps --pnpm next-sanity
|
|
81
|
-
```
|
|
82
|
-
|
|
83
74
|
## `next-sanity` Running groq queries
|
|
84
75
|
|
|
85
76
|
```ts
|
|
@@ -87,7 +78,7 @@ import {createClient, groq} from 'next-sanity'
|
|
|
87
78
|
|
|
88
79
|
const projectId = process.env.NEXT_PUBLIC_SANITY_PROJECT_ID // "pv8y60vp"
|
|
89
80
|
const dataset = process.env.NEXT_PUBLIC_SANITY_DATASET // "production"
|
|
90
|
-
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "
|
|
81
|
+
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "2023-05-03"
|
|
91
82
|
|
|
92
83
|
const client = createClient({
|
|
93
84
|
projectId,
|
|
@@ -109,7 +100,7 @@ import {cache} from 'react'
|
|
|
109
100
|
|
|
110
101
|
const projectId = process.env.NEXT_PUBLIC_SANITY_PROJECT_ID // "pv8y60vp"
|
|
111
102
|
const dataset = process.env.NEXT_PUBLIC_SANITY_DATASET // "production"
|
|
112
|
-
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "
|
|
103
|
+
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "2023-05-03"
|
|
113
104
|
|
|
114
105
|
const client = createClient({
|
|
115
106
|
projectId,
|
|
@@ -127,6 +118,33 @@ const data = await clientFetch(groq`*[]`)
|
|
|
127
118
|
const total = await clientFetch<number>(groq`count*()`)
|
|
128
119
|
```
|
|
129
120
|
|
|
121
|
+
## `next-sanity` Visual Editing with Content Source Maps
|
|
122
|
+
|
|
123
|
+
> **Note**
|
|
124
|
+
>
|
|
125
|
+
> [Content Source Maps][content-source-maps-intro] are available [as an API][content-source-maps] for select [Sanity enterprise customers][enterprise-cta]. [Contact our sales team for more information.][sales-cta]
|
|
126
|
+
|
|
127
|
+
The `createClient` method in `next-sanity` supports [visual editing][visual-editing-intro], it supports all the same options as [`@sanity/preview-kit/client`][preview-kit-client]. Add `studioUrl` to your client configuration and it'll automatically show up on Vercel Preview Deployments:
|
|
128
|
+
|
|
129
|
+
```tsx
|
|
130
|
+
import {createClient, groq} from 'next-sanity'
|
|
131
|
+
|
|
132
|
+
const projectId = process.env.NEXT_PUBLIC_SANITY_PROJECT_ID // "pv8y60vp"
|
|
133
|
+
const dataset = process.env.NEXT_PUBLIC_SANITY_DATASET // "production"
|
|
134
|
+
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "2023-05-03"
|
|
135
|
+
|
|
136
|
+
const client = createClient({
|
|
137
|
+
projectId,
|
|
138
|
+
dataset,
|
|
139
|
+
apiVersion, // https://www.sanity.io/docs/api-versioning
|
|
140
|
+
useCdn: true, // if you're using ISR or only static generation at build time then you can set this to `false` to guarantee no stale content
|
|
141
|
+
studioUrl: '/studio', // Or: 'https://my-cool-project.sanity.studio'
|
|
142
|
+
encodeSourceMap: true, // Optional. Default to: process.env.NEXT_PUBLIC_VERCEL_ENV === 'preview',
|
|
143
|
+
})
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
[Our setup guide walks you through how to customize the experience.][visual-editing]
|
|
147
|
+
|
|
130
148
|
## `next-sanity/preview` Live real-time preview
|
|
131
149
|
|
|
132
150
|
You can implement real-time client side preview using `definePreview`. It works by streaming the whole dataset to the browser, which it keeps updated using [listeners](https://www.sanity.io/docs/realtime-updates) and Mendoza patches. When it receives updates, then the query is run against the client-side datastore using [groq-js](https://github.com/sanity-io/groq-js).
|
|
@@ -195,7 +213,7 @@ import {createClient} from 'next-sanity'
|
|
|
195
213
|
|
|
196
214
|
const projectId = process.env.NEXT_PUBLIC_SANITY_PROJECT_ID // "pv8y60vp"
|
|
197
215
|
const dataset = process.env.NEXT_PUBLIC_SANITY_DATASET // "production"
|
|
198
|
-
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "
|
|
216
|
+
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "2023-05-03"
|
|
199
217
|
|
|
200
218
|
export const client = createClient({projectId, dataset, apiVersion})
|
|
201
219
|
```
|
|
@@ -372,7 +390,7 @@ import {createClient} from 'next-sanity'
|
|
|
372
390
|
|
|
373
391
|
const projectId = process.env.NEXT_PUBLIC_SANITY_PROJECT_ID // "pv8y60vp"
|
|
374
392
|
const dataset = process.env.NEXT_PUBLIC_SANITY_DATASET // "production"
|
|
375
|
-
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "
|
|
393
|
+
const apiVersion = process.env.NEXT_PUBLIC_SANITY_API_VERSION // "2023-05-03"
|
|
376
394
|
|
|
377
395
|
export const client = createClient({projectId, dataset, apiVersion})
|
|
378
396
|
```
|
|
@@ -897,3 +915,11 @@ Semantic release will only release on configured branches, so it is safe to run
|
|
|
897
915
|
## License
|
|
898
916
|
|
|
899
917
|
MIT-licensed. See [LICENSE](LICENSE).
|
|
918
|
+
|
|
919
|
+
[visual-editing]: https://www.sanity.io/docs/vercel-visual-editing?utm_source=github.com&utm_medium=referral&utm_campaign=may-vercel-launch
|
|
920
|
+
[visual-editing-intro]: https://www.sanity.io/blog/visual-editing-sanity-vercel?utm_source=github.com&utm_medium=referral&utm_campaign=may-vercel-launch
|
|
921
|
+
[content-source-maps]: https://www.sanity.io/docs/content-source-maps?utm_source=github.com&utm_medium=referral&utm_campaign=may-vercel-launch
|
|
922
|
+
[content-source-maps-intro]: https://www.sanity.io/blog/content-source-maps-announce?utm_source=github.com&utm_medium=referral&utm_campaign=may-vercel-launch
|
|
923
|
+
[preview-kit-client]: https://github.com/sanity-io/preview-kit#sanitypreview-kitclient
|
|
924
|
+
[sales-cta]: https://www.sanity.io/contact/sales?utm_source=github.com&utm_medium=referral&utm_campaign=may-vercel-launch
|
|
925
|
+
[enterprise-cta]: https://www.sanity.io/enterprise?utm_source=github.com&utm_medium=referral&utm_campaign=may-vercel-launch
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NextStudioLoading-2003f32a.js","sources":["../../src/studio/useTheme.ts","../../src/studio/NextStudioNoScript.tsx","../../src/studio/NextStudioLoading.tsx"],"sourcesContent":["import {studioTheme} from '@sanity/ui'\nimport {useMemo} from 'react'\nimport type {Config, SingleWorkspace, StudioTheme} from 'sanity'\n\n/** @alpha */\nexport function useTheme(\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n): StudioTheme {\n const workspace = useMemo<\n SingleWorkspace | Required<Pick<SingleWorkspace, 'theme'>> | undefined\n >(() => (Array.isArray(config) ? config[0] : config), [config])\n return useMemo<StudioTheme>(() => workspace?.theme || studioTheme, [workspace])\n}\n","/* eslint-disable react/no-danger */\n\nconst style = {\n __html: `\n.sanity-app-no-js__root {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n background: #fff;\n z-index: 1;\n}\n\n.sanity-app-no-js__content {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n font-family: helvetica, arial, sans-serif;\n}\n`,\n} as const\n\n/** @alpha */\nexport const NextStudioNoScript = () => (\n <noscript>\n <div className=\"sanity-app-no-js__root\">\n <div className=\"sanity-app-no-js__content\">\n <style type=\"text/css\" dangerouslySetInnerHTML={style} />\n <h1>JavaScript disabled</h1>\n <p>\n Please <a href=\"https://www.enable-javascript.com/\">enable JavaScript</a> in your\n browser and reload the page to proceed.\n </p>\n </div>\n </div>\n </noscript>\n)\n","/* eslint-disable no-warning-comments */\n// Intentionally not using `styled-components` to ensure it works in any `next` setup.\n// Whether 'styled-components' SSR is setup or not.\n\nimport {SpinnerIcon} from '@sanity/icons'\nimport {_responsive, rem} from '@sanity/ui'\nimport type {Config, SingleWorkspace, StudioProps} from 'sanity'\n\nimport {NextStudioNoScript} from './NextStudioNoScript'\nimport {useTheme} from './useTheme'\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport interface NextStudioLoadingProps extends Pick<StudioProps, 'scheme'> {\n /**\n * If your Studio Config has a custom theme you can pass it here to ensure the loading screen matches your theme.\n */\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n}\n\nconst keyframes = `\nfrom {\n transform: rotate(0deg);\n}\n\nto {\n transform: rotate(360deg);\n}\n`\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport function NextStudioLoading(props: NextStudioLoadingProps) {\n const {config, scheme = 'light', unstable__noScript = true} = props\n const id = 'next-sanity-spinner'\n const theme = useTheme(config)\n const {fonts, media} = theme\n\n const styles: any = _responsive(media, [2], (size: number) => {\n const {ascenderHeight, descenderHeight, lineHeight, iconSize} = fonts.text.sizes[size]\n const capHeight = lineHeight - ascenderHeight - descenderHeight\n\n return {\n wrapper: {\n display: 'block',\n animation: `${id} 500ms linear infinite`,\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled.muted\n .fg,\n width: rem(capHeight),\n height: rem(capHeight),\n },\n svg: {\n display: 'block',\n width: rem(iconSize),\n height: rem(iconSize),\n margin: (capHeight - iconSize) / 2,\n },\n }\n })[0]\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <div\n style={{\n fontFamily: fonts.text.family,\n backgroundColor: theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg,\n height: '100vh',\n maxHeight: '100dvh',\n overscrollBehavior: 'none',\n WebkitFontSmoothing: 'antialiased',\n overflow: 'auto',\n }}\n >\n <div\n data-ui=\"Flex\"\n style={{\n display: 'flex',\n minWidth: 0,\n minHeight: 0,\n alignItems: 'center',\n justifyContent: 'center',\n flexDirection: 'column',\n height: '100%',\n margin: 0,\n padding: 0,\n // @TODO use rem calc\n gap: '10px',\n }}\n >\n <style key={scheme}>{`@keyframes ${id} {${keyframes}}`}</style>\n <div\n data-ui=\"Text\"\n style={{\n position: 'relative',\n // @TODO read from theme\n fontWeight: 400,\n // @TODO read from theme\n padding: '1px 0px',\n // @TODO use rem calc\n fontSize: '1rem',\n // @TODO use rem calc\n lineHeight: 'calc(1.3125)',\n // @TODO use rem calc\n transform: 'translateY(-5px)',\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled\n .muted.fg,\n }}\n >\n <span>Loading…</span>\n </div>\n <div data-ui=\"Spinner\" style={styles.wrapper}>\n <SpinnerIcon style={styles.svg} />\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"names":["useTheme","config","workspace","useMemo","Array","isArray","theme","studioTheme","style","__html","NextStudioNoScript","jsx","children","className","jsxs","type","dangerouslySetInnerHTML","href","keyframes","NextStudioLoading","props","scheme","unstable__noScript","id","fonts","media","styles","_responsive","size","ascenderHeight","descenderHeight","lineHeight","iconSize","text","sizes","capHeight","wrapper","display","animation","color","default","muted","enabled","fg","width","rem","height","svg","margin","Fragment","fontFamily","family","backgroundColor","base","bg","maxHeight","overscrollBehavior","WebkitFontSmoothing","overflow","minWidth","minHeight","alignItems","justifyContent","flexDirection","padding","gap","concat","position","fontWeight","fontSize","transform","SpinnerIcon"],"mappings":";;;;AAKO,SAASA,SACdC,MACa,EAAA;EACb,MAAMC,SAAY,GAAAC,OAAA,CAEhB,MAAOC,KAAA,CAAMC,OAAQ,CAAAJ,MAAM,CAAI,GAAAA,MAAA,CAAO,CAAC,CAAA,GAAIA,MAAS,EAAA,CAACA,MAAM,CAAC,CAAA;EAC9D,OAAOE,QAAqB,MAAM,CAAAD,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,SAAA,CAAWI,UAASC,WAAa,EAAA,CAACL,SAAS,CAAC,CAAA;AAChF;ACVA,MAAMM,KAAQ,GAAA;EACZC,MAAQ;AAoBV,CAAA;AAGa,MAAAC,kBAAA,GAAqBA,CAAA,KAChC,eAAAC,GAAA,CAAC,UACC,EAAA;EAAAC,QAAA,EAAA,eAAAD,GAAA,CAAC,KAAI,EAAA;IAAAE,SAAA,EAAU,wBACb;IAAAD,QAAA,EAAA,eAAAE,IAAA,CAAC,KAAI,EAAA;MAAAD,SAAA,EAAU,2BACb;MAAAD,QAAA,EAAA,CAAA,eAAAD,GAAA,CAAC,OAAM,EAAA;QAAAI,IAAA,EAAK,UAAW;QAAAC,uBAAA,EAAyBR;OAAO,CAAA,EACvD,eAAAG,GAAA,CAAC;QAAGC,QAAmB,EAAA;MAAA,CAAA,CAAA,EAAA,oBACtB,GAAE,EAAA;QAAAA,QAAA,EAAA,CAAA,SAAA,EAAA,eACOD,GAAA,CAAA,GAAA,EAAA;UAAEM,IAAK,EAAA,oCAAA;UAAqCL,QAAiB,EAAA;SAAA,CAAA,EAAI,kDAAA;OAE3E,CAAA;IACF,CAAA;EACF,CAAA;AACF,CAAA,CAAA;ACVF,MAAMM,SAAY,uFAAA;AAcX,SAASC,kBAAkBC,KAA+B,EAAA;EAC/D,MAAM;IAACnB,MAAQ;IAAAoB,MAAA,GAAS,OAAS;IAAAC,kBAAA,GAAqB;EAAQ,CAAA,GAAAF,KAAA;EAC9D,MAAMG,EAAK,GAAA,qBAAA;EACL,MAAAjB,KAAA,GAAQN,SAASC,MAAM,CAAA;EACvB,MAAA;IAACuB,KAAO;IAAAC;EAAS,CAAA,GAAAnB,KAAA;EAEvB,MAAMoB,SAAcC,WAAY,CAAAF,KAAA,EAAO,CAAC,CAAC,CAAA,EAAIG,IAAiB,IAAA;IACtD,MAAA;MAACC;MAAgBC,eAAiB;MAAAC,UAAA;MAAYC;KAAY,GAAAR,KAAA,CAAMS,IAAK,CAAAC,KAAA,CAAMN,IAAI,CAAA;IAC/E,MAAAO,SAAA,GAAYJ,aAAaF,cAAiB,GAAAC,eAAA;IAEzC,OAAA;MACLM,OAAS,EAAA;QACPC,OAAS,EAAA,OAAA;QACTC,qBAAcf,EAAA,2BAAA;QACdgB,KACE,EAAAjC,KAAA,CAAMiC,KAAM,CAAAlB,MAAA,KAAW,MAAS,GAAA,MAAA,GAAS,OAAO,CAAA,CAAEmB,OAAQ,CAAAC,KAAA,CAAMD,OAAQ,CAAAE,OAAA,CAAQD,KAC7E,CAAAE,EAAA;QACLC,KAAA,EAAOC,IAAIV,SAAS,CAAA;QACpBW,MAAA,EAAQD,IAAIV,SAAS;MACvB,CAAA;MACAY,GAAK,EAAA;QACHV,OAAS,EAAA,OAAA;QACTO,KAAA,EAAOC,IAAIb,QAAQ,CAAA;QACnBc,MAAA,EAAQD,IAAIb,QAAQ,CAAA;QACpBgB,MAAA,EAAA,CAASb,YAAYH,QAAY,IAAA;MACnC;IAAA,CACF;EAAA,CACD,EAAE,CAAC,CAAA;EAEJ,sBAEKlB,IAAA,CAAAmC,QAAA,EAAA;IAAArC,QAAA,EAAA,CAAAU,kBAAA,uBAAuBZ,kBAAmB,EAAA,EAAA,CAAA,EAAA,eAC3CC,GAAA,CAAC,KAAA,EAAA;MACCH,KAAO,EAAA;QACL0C,UAAA,EAAY1B,MAAMS,IAAK,CAAAkB,MAAA;QACvBC,eAAA,EAAiB9C,MAAMiC,KAAM,CAAAlB,MAAA,KAAW,SAAS,MAAS,GAAA,OAAO,CAAE,CAAAmB,OAAA,CAAQa,IAAK,CAAAC,EAAA;QAChFR,MAAQ,EAAA,OAAA;QACRS,SAAW,EAAA,QAAA;QACXC,kBAAoB,EAAA,MAAA;QACpBC,mBAAqB,EAAA,aAAA;QACrBC,QAAU,EAAA;MACZ,CAAA;MAEA9C,QAAA,iBAAAE,IAAA,CAAC,KAAA,EAAA;QACC,SAAQ,EAAA,MAAA;QACRN,KAAO,EAAA;UACL6B,OAAS,EAAA,MAAA;UACTsB,QAAU,EAAA,CAAA;UACVC,SAAW,EAAA,CAAA;UACXC,UAAY,EAAA,QAAA;UACZC,cAAgB,EAAA,QAAA;UAChBC,aAAe,EAAA,QAAA;UACfjB,MAAQ,EAAA,MAAA;UACRE,MAAQ,EAAA,CAAA;UACRgB,OAAS,EAAA,CAAA;UAAA;UAETC,GAAK,EAAA;QACP,CAAA;QAEArD,QAAA,EAAA,CAAA,eAAAD,GAAA,CAAC,OAAoB,EAAA;UAAAC,QAAA,gBAAAsD,MAAA,CAAc3C,EAAO,QAAA2C,MAAA,CAAAhD,SAAA;QAAA,CAAA,EAA9BG,MAA2C,CAAA,EAAA,eACvDV,GAAA,CAAC,KAAA,EAAA;UACC,SAAQ,EAAA,MAAA;UACRH,KAAO,EAAA;YACL2D,QAAU,EAAA,UAAA;YAAA;YAEVC,UAAY,EAAA,GAAA;YAAA;YAEZJ,OAAS,EAAA,SAAA;YAAA;YAETK,QAAU,EAAA,MAAA;YAAA;YAEVtC,UAAY,EAAA,cAAA;YAAA;YAEZuC,SAAW,EAAA,kBAAA;YACX/B,KACE,EAAAjC,KAAA,CAAMiC,KAAM,CAAAlB,MAAA,KAAW,MAAS,GAAA,MAAA,GAAS,OAAO,CAAA,CAAEmB,OAAQ,CAAAC,KAAA,CAAMD,OAAQ,CAAAE,OAAA,CACrED,KAAM,CAAAE;UACb,CAAA;UAEA/B,QAAA,EAAA,eAAAD,GAAA,CAAC;YAAKC,QAAQ,EAAA;UAAA,CAAA;QAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"NextStudioLoading-2003f32a.js","sources":["../../src/studio/useTheme.ts","../../src/studio/NextStudioNoScript.tsx","../../src/studio/NextStudioLoading.tsx"],"sourcesContent":["import {studioTheme} from '@sanity/ui'\nimport {useMemo} from 'react'\nimport type {Config, SingleWorkspace, StudioTheme} from 'sanity'\n\n/** @alpha */\nexport function useTheme(\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n): StudioTheme {\n const workspace = useMemo<\n SingleWorkspace | Required<Pick<SingleWorkspace, 'theme'>> | undefined\n >(() => (Array.isArray(config) ? config[0] : config), [config])\n return useMemo<StudioTheme>(() => workspace?.theme || studioTheme, [workspace])\n}\n","/* eslint-disable react/no-danger */\n\nconst style = {\n __html: `\n.sanity-app-no-js__root {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n background: #fff;\n z-index: 1;\n}\n\n.sanity-app-no-js__content {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n font-family: helvetica, arial, sans-serif;\n}\n`,\n} as const\n\n/** @alpha */\nexport const NextStudioNoScript = () => (\n <noscript>\n <div className=\"sanity-app-no-js__root\">\n <div className=\"sanity-app-no-js__content\">\n <style type=\"text/css\" dangerouslySetInnerHTML={style} />\n <h1>JavaScript disabled</h1>\n <p>\n Please <a href=\"https://www.enable-javascript.com/\">enable JavaScript</a> in your\n browser and reload the page to proceed.\n </p>\n </div>\n </div>\n </noscript>\n)\n","/* eslint-disable no-warning-comments */\n// Intentionally not using `styled-components` to ensure it works in any `next` setup.\n// Whether 'styled-components' SSR is setup or not.\n\nimport {SpinnerIcon} from '@sanity/icons'\nimport {_responsive, rem} from '@sanity/ui'\nimport type {Config, SingleWorkspace, StudioProps} from 'sanity'\n\nimport {NextStudioNoScript} from './NextStudioNoScript'\nimport {useTheme} from './useTheme'\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport interface NextStudioLoadingProps extends Pick<StudioProps, 'scheme'> {\n /**\n * If your Studio Config has a custom theme you can pass it here to ensure the loading screen matches your theme.\n */\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n}\n\nconst keyframes = `\nfrom {\n transform: rotate(0deg);\n}\n\nto {\n transform: rotate(360deg);\n}\n`\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport function NextStudioLoading(props: NextStudioLoadingProps) {\n const {config, scheme = 'light', unstable__noScript = true} = props\n const id = 'next-sanity-spinner'\n const theme = useTheme(config)\n const {fonts, media} = theme\n\n const styles: any = _responsive(media, [2], (size: number) => {\n const {ascenderHeight, descenderHeight, lineHeight, iconSize} = fonts.text.sizes[size]\n const capHeight = lineHeight - ascenderHeight - descenderHeight\n\n return {\n wrapper: {\n display: 'block',\n animation: `${id} 500ms linear infinite`,\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled.muted\n .fg,\n width: rem(capHeight),\n height: rem(capHeight),\n },\n svg: {\n display: 'block',\n width: rem(iconSize),\n height: rem(iconSize),\n margin: (capHeight - iconSize) / 2,\n },\n }\n })[0]\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <div\n style={{\n fontFamily: fonts.text.family,\n backgroundColor: theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg,\n height: '100vh',\n maxHeight: '100dvh',\n overscrollBehavior: 'none',\n WebkitFontSmoothing: 'antialiased',\n overflow: 'auto',\n }}\n >\n <div\n data-ui=\"Flex\"\n style={{\n display: 'flex',\n minWidth: 0,\n minHeight: 0,\n alignItems: 'center',\n justifyContent: 'center',\n flexDirection: 'column',\n height: '100%',\n margin: 0,\n padding: 0,\n // @TODO use rem calc\n gap: '10px',\n }}\n >\n <style key={scheme}>{`@keyframes ${id} {${keyframes}}`}</style>\n <div\n data-ui=\"Text\"\n style={{\n position: 'relative',\n // @TODO read from theme\n fontWeight: 400,\n // @TODO read from theme\n padding: '1px 0px',\n // @TODO use rem calc\n fontSize: '1rem',\n // @TODO use rem calc\n lineHeight: 'calc(1.3125)',\n // @TODO use rem calc\n transform: 'translateY(-5px)',\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled\n .muted.fg,\n }}\n >\n <span>Loading…</span>\n </div>\n <div data-ui=\"Spinner\" style={styles.wrapper}>\n <SpinnerIcon style={styles.svg} />\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"names":["useTheme","config","workspace","useMemo","Array","isArray","theme","studioTheme","style","__html","NextStudioNoScript","jsx","children","className","jsxs","type","dangerouslySetInnerHTML","href","keyframes","NextStudioLoading","props","scheme","unstable__noScript","id","fonts","media","styles","_responsive","size","ascenderHeight","descenderHeight","lineHeight","iconSize","text","sizes","capHeight","wrapper","display","animation","color","default","muted","enabled","fg","width","rem","height","svg","margin","Fragment","fontFamily","family","backgroundColor","base","bg","maxHeight","overscrollBehavior","WebkitFontSmoothing","overflow","minWidth","minHeight","alignItems","justifyContent","flexDirection","padding","gap","concat","position","fontWeight","fontSize","transform","SpinnerIcon"],"mappings":";;;;AAKO,SAASA,SACdC,MACa,EAAA;EACb,MAAMC,SAAY,GAAAC,OAAA,CAEhB,MAAOC,KAAA,CAAMC,OAAQ,CAAAJ,MAAM,CAAI,GAAAA,MAAA,CAAO,CAAC,CAAA,GAAIA,MAAS,EAAA,CAACA,MAAM,CAAC,CAAA;EAC9D,OAAOE,QAAqB,MAAM,CAAAD,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,SAAA,CAAWI,UAASC,WAAa,EAAA,CAACL,SAAS,CAAC,CAAA;AAChF;ACVA,MAAMM,KAAQ,GAAA;EACZC,MAAQ;AAoBV,CAAA;AAGa,MAAAC,kBAAA,GAAqBA,CAAA,KAChC,eAAAC,GAAA,CAAC,UACC,EAAA;EAAAC,QAAA,EAAA,eAAAD,GAAA,CAAC,KAAI,EAAA;IAAAE,SAAA,EAAU,wBACb;IAAAD,QAAA,EAAA,eAAAE,IAAA,CAAC,KAAI,EAAA;MAAAD,SAAA,EAAU,2BACb;MAAAD,QAAA,EAAA,CAAA,eAAAD,GAAA,CAAC,OAAM,EAAA;QAAAI,IAAA,EAAK,UAAW;QAAAC,uBAAA,EAAyBR;OAAO,CAAA,EACvD,eAAAG,GAAA,CAAC;QAAGC,QAAmB,EAAA;MAAA,CAAA,CAAA,EAAA,oBACtB,GAAE,EAAA;QAAAA,QAAA,EAAA,CAAA,SAAA,EAAA,eACOD,GAAA,CAAA,GAAA,EAAA;UAAEM,IAAK,EAAA,oCAAA;UAAqCL,QAAiB,EAAA;SAAA,CAAA,EAAI,kDAAA;OAE3E,CAAA;IACF,CAAA;EACF,CAAA;AACF,CAAA,CAAA;ACVF,MAAMM,SAAY,uFAAA;AAcX,SAASC,kBAAkBC,KAA+B,EAAA;EAC/D,MAAM;IAACnB,MAAQ;IAAAoB,MAAA,GAAS,OAAS;IAAAC,kBAAA,GAAqB;EAAQ,CAAA,GAAAF,KAAA;EAC9D,MAAMG,EAAK,GAAA,qBAAA;EACL,MAAAjB,KAAA,GAAQN,SAASC,MAAM,CAAA;EACvB,MAAA;IAACuB,KAAO;IAAAC;EAAS,CAAA,GAAAnB,KAAA;EAEvB,MAAMoB,SAAcC,WAAY,CAAAF,KAAA,EAAO,CAAC,CAAC,CAAA,EAAIG,IAAiB,IAAA;IACtD,MAAA;MAACC;MAAgBC,eAAiB;MAAAC,UAAA;MAAYC;KAAY,GAAAR,KAAA,CAAMS,IAAK,CAAAC,KAAA,CAAMN,IAAI,CAAA;IAC/E,MAAAO,SAAA,GAAYJ,aAAaF,cAAiB,GAAAC,eAAA;IAEzC,OAAA;MACLM,OAAS,EAAA;QACPC,OAAS,EAAA,OAAA;QACTC,qBAAcf,EAAA,2BAAA;QACdgB,KACE,EAAAjC,KAAA,CAAMiC,KAAM,CAAAlB,MAAA,KAAW,MAAS,GAAA,MAAA,GAAS,OAAO,CAAA,CAAEmB,OAAQ,CAAAC,KAAA,CAAMD,OAAQ,CAAAE,OAAA,CAAQD,KAC7E,CAAAE,EAAA;QACLC,KAAA,EAAOC,IAAIV,SAAS,CAAA;QACpBW,MAAA,EAAQD,IAAIV,SAAS;MACvB,CAAA;MACAY,GAAK,EAAA;QACHV,OAAS,EAAA,OAAA;QACTO,KAAA,EAAOC,IAAIb,QAAQ,CAAA;QACnBc,MAAA,EAAQD,IAAIb,QAAQ,CAAA;QACpBgB,MAAA,EAAA,CAASb,YAAYH,QAAY,IAAA;MACnC;IAAA,CACF;EAAA,CACD,EAAE,CAAC,CAAA;EAEJ,sBAEKlB,IAAA,CAAAmC,QAAA,EAAA;IAAArC,QAAA,EAAA,CAAAU,kBAAA,uBAAuBZ,kBAAmB,EAAA,EAAA,CAAA,EAAA,eAC3CC,GAAA,CAAC,KAAA,EAAA;MACCH,KAAO,EAAA;QACL0C,UAAA,EAAY1B,MAAMS,IAAK,CAAAkB,MAAA;QACvBC,eAAA,EAAiB9C,MAAMiC,KAAM,CAAAlB,MAAA,KAAW,SAAS,MAAS,GAAA,OAAO,CAAE,CAAAmB,OAAA,CAAQa,IAAK,CAAAC,EAAA;QAChFR,MAAQ,EAAA,OAAA;QACRS,SAAW,EAAA,QAAA;QACXC,kBAAoB,EAAA,MAAA;QACpBC,mBAAqB,EAAA,aAAA;QACrBC,QAAU,EAAA;MACZ,CAAA;MAEA9C,QAAA,iBAAAE,IAAA,CAAC,KAAA,EAAA;QACC,SAAQ,EAAA,MAAA;QACRN,KAAO,EAAA;UACL6B,OAAS,EAAA,MAAA;UACTsB,QAAU,EAAA,CAAA;UACVC,SAAW,EAAA,CAAA;UACXC,UAAY,EAAA,QAAA;UACZC,cAAgB,EAAA,QAAA;UAChBC,aAAe,EAAA,QAAA;UACfjB,MAAQ,EAAA,MAAA;UACRE,MAAQ,EAAA,CAAA;UACRgB,OAAS,EAAA,CAAA;UAAA;UAETC,GAAK,EAAA;QACP,CAAA;QAEArD,QAAA,EAAA,CAAA,eAAAD,GAAA,CAAC,OAAoB,EAAA;UAAAC,QAAA,gBAAAsD,MAAA,CAAc3C,EAAO,QAAA2C,MAAA,CAAAhD,SAAA;QAAA,CAAA,EAA9BG,MAA2C,CAAA,EAAA,eACvDV,GAAA,CAAC,KAAA,EAAA;UACC,SAAQ,EAAA,MAAA;UACRH,KAAO,EAAA;YACL2D,QAAU,EAAA,UAAA;YAAA;YAEVC,UAAY,EAAA,GAAA;YAAA;YAEZJ,OAAS,EAAA,SAAA;YAAA;YAETK,QAAU,EAAA,MAAA;YAAA;YAEVtC,UAAY,EAAA,cAAA;YAAA;YAEZuC,SAAW,EAAA,kBAAA;YACX/B,KACE,EAAAjC,KAAA,CAAMiC,KAAM,CAAAlB,MAAA,KAAW,MAAS,GAAA,MAAA,GAAS,OAAO,CAAA,CAAEmB,OAAQ,CAAAC,KAAA,CAAMD,OAAQ,CAAAE,OAAA,CACrED,KAAM,CAAAE;UACb,CAAA;UAEA/B,QAAA,EAAA,eAAAD,GAAA,CAAC;YAAKC,QAAQ,EAAA;UAAA,CAAA;QAAA,CAChB,CAAA,EAAA,eACCD,GAAA,CAAA,KAAA,EAAA;UAAI,SAAQ,EAAA,SAAA;UAAUH,KAAO,EAAAkB,MAAA,CAAOU,OACnC;UAAAxB,QAAA,EAAA,eAAAD,GAAA,CAAC4D,WAAY,EAAA;YAAA/D,KAAA,EAAOkB,MAAO,CAAAqB;UAAK,CAAA;SAClC,CAAA;MAAA,CACF;IAAA,CACF,CAAA;EACF,CAAA,CAAA;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NextStudioLoading-225bb240.cjs","sources":["../../src/studio/useTheme.ts","../../src/studio/NextStudioNoScript.tsx","../../src/studio/NextStudioLoading.tsx"],"sourcesContent":["import {studioTheme} from '@sanity/ui'\nimport {useMemo} from 'react'\nimport type {Config, SingleWorkspace, StudioTheme} from 'sanity'\n\n/** @alpha */\nexport function useTheme(\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n): StudioTheme {\n const workspace = useMemo<\n SingleWorkspace | Required<Pick<SingleWorkspace, 'theme'>> | undefined\n >(() => (Array.isArray(config) ? config[0] : config), [config])\n return useMemo<StudioTheme>(() => workspace?.theme || studioTheme, [workspace])\n}\n","/* eslint-disable react/no-danger */\n\nconst style = {\n __html: `\n.sanity-app-no-js__root {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n background: #fff;\n z-index: 1;\n}\n\n.sanity-app-no-js__content {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n font-family: helvetica, arial, sans-serif;\n}\n`,\n} as const\n\n/** @alpha */\nexport const NextStudioNoScript = () => (\n <noscript>\n <div className=\"sanity-app-no-js__root\">\n <div className=\"sanity-app-no-js__content\">\n <style type=\"text/css\" dangerouslySetInnerHTML={style} />\n <h1>JavaScript disabled</h1>\n <p>\n Please <a href=\"https://www.enable-javascript.com/\">enable JavaScript</a> in your\n browser and reload the page to proceed.\n </p>\n </div>\n </div>\n </noscript>\n)\n","/* eslint-disable no-warning-comments */\n// Intentionally not using `styled-components` to ensure it works in any `next` setup.\n// Whether 'styled-components' SSR is setup or not.\n\nimport {SpinnerIcon} from '@sanity/icons'\nimport {_responsive, rem} from '@sanity/ui'\nimport type {Config, SingleWorkspace, StudioProps} from 'sanity'\n\nimport {NextStudioNoScript} from './NextStudioNoScript'\nimport {useTheme} from './useTheme'\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport interface NextStudioLoadingProps extends Pick<StudioProps, 'scheme'> {\n /**\n * If your Studio Config has a custom theme you can pass it here to ensure the loading screen matches your theme.\n */\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n}\n\nconst keyframes = `\nfrom {\n transform: rotate(0deg);\n}\n\nto {\n transform: rotate(360deg);\n}\n`\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport function NextStudioLoading(props: NextStudioLoadingProps) {\n const {config, scheme = 'light', unstable__noScript = true} = props\n const id = 'next-sanity-spinner'\n const theme = useTheme(config)\n const {fonts, media} = theme\n\n const styles: any = _responsive(media, [2], (size: number) => {\n const {ascenderHeight, descenderHeight, lineHeight, iconSize} = fonts.text.sizes[size]\n const capHeight = lineHeight - ascenderHeight - descenderHeight\n\n return {\n wrapper: {\n display: 'block',\n animation: `${id} 500ms linear infinite`,\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled.muted\n .fg,\n width: rem(capHeight),\n height: rem(capHeight),\n },\n svg: {\n display: 'block',\n width: rem(iconSize),\n height: rem(iconSize),\n margin: (capHeight - iconSize) / 2,\n },\n }\n })[0]\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <div\n style={{\n fontFamily: fonts.text.family,\n backgroundColor: theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg,\n height: '100vh',\n maxHeight: '100dvh',\n overscrollBehavior: 'none',\n WebkitFontSmoothing: 'antialiased',\n overflow: 'auto',\n }}\n >\n <div\n data-ui=\"Flex\"\n style={{\n display: 'flex',\n minWidth: 0,\n minHeight: 0,\n alignItems: 'center',\n justifyContent: 'center',\n flexDirection: 'column',\n height: '100%',\n margin: 0,\n padding: 0,\n // @TODO use rem calc\n gap: '10px',\n }}\n >\n <style key={scheme}>{`@keyframes ${id} {${keyframes}}`}</style>\n <div\n data-ui=\"Text\"\n style={{\n position: 'relative',\n // @TODO read from theme\n fontWeight: 400,\n // @TODO read from theme\n padding: '1px 0px',\n // @TODO use rem calc\n fontSize: '1rem',\n // @TODO use rem calc\n lineHeight: 'calc(1.3125)',\n // @TODO use rem calc\n transform: 'translateY(-5px)',\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled\n .muted.fg,\n }}\n >\n <span>Loading…</span>\n </div>\n <div data-ui=\"Spinner\" style={styles.wrapper}>\n <SpinnerIcon style={styles.svg} />\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"names":["useTheme","config","workspace","useMemo","Array","isArray","theme","studioTheme","style","__html","NextStudioNoScript","jsx","children","className","jsxs","type","dangerouslySetInnerHTML","href","keyframes","NextStudioLoading","props","scheme","unstable__noScript","id","fonts","media","styles","_responsive","size","ascenderHeight","descenderHeight","lineHeight","iconSize","text","sizes","capHeight","wrapper","display","animation","color","default","muted","enabled","fg","width","rem","height","svg","margin","Fragment","fontFamily","family","backgroundColor","base","bg","maxHeight","overscrollBehavior","WebkitFontSmoothing","overflow","minWidth","minHeight","alignItems","justifyContent","flexDirection","padding","gap","concat","position","fontWeight","fontSize","transform","SpinnerIcon"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"NextStudioLoading-225bb240.cjs","sources":["../../src/studio/useTheme.ts","../../src/studio/NextStudioNoScript.tsx","../../src/studio/NextStudioLoading.tsx"],"sourcesContent":["import {studioTheme} from '@sanity/ui'\nimport {useMemo} from 'react'\nimport type {Config, SingleWorkspace, StudioTheme} from 'sanity'\n\n/** @alpha */\nexport function useTheme(\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n): StudioTheme {\n const workspace = useMemo<\n SingleWorkspace | Required<Pick<SingleWorkspace, 'theme'>> | undefined\n >(() => (Array.isArray(config) ? config[0] : config), [config])\n return useMemo<StudioTheme>(() => workspace?.theme || studioTheme, [workspace])\n}\n","/* eslint-disable react/no-danger */\n\nconst style = {\n __html: `\n.sanity-app-no-js__root {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n background: #fff;\n z-index: 1;\n}\n\n.sanity-app-no-js__content {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n font-family: helvetica, arial, sans-serif;\n}\n`,\n} as const\n\n/** @alpha */\nexport const NextStudioNoScript = () => (\n <noscript>\n <div className=\"sanity-app-no-js__root\">\n <div className=\"sanity-app-no-js__content\">\n <style type=\"text/css\" dangerouslySetInnerHTML={style} />\n <h1>JavaScript disabled</h1>\n <p>\n Please <a href=\"https://www.enable-javascript.com/\">enable JavaScript</a> in your\n browser and reload the page to proceed.\n </p>\n </div>\n </div>\n </noscript>\n)\n","/* eslint-disable no-warning-comments */\n// Intentionally not using `styled-components` to ensure it works in any `next` setup.\n// Whether 'styled-components' SSR is setup or not.\n\nimport {SpinnerIcon} from '@sanity/icons'\nimport {_responsive, rem} from '@sanity/ui'\nimport type {Config, SingleWorkspace, StudioProps} from 'sanity'\n\nimport {NextStudioNoScript} from './NextStudioNoScript'\nimport {useTheme} from './useTheme'\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport interface NextStudioLoadingProps extends Pick<StudioProps, 'scheme'> {\n /**\n * If your Studio Config has a custom theme you can pass it here to ensure the loading screen matches your theme.\n */\n config?: Config | Required<Pick<SingleWorkspace, 'theme'>>\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n}\n\nconst keyframes = `\nfrom {\n transform: rotate(0deg);\n}\n\nto {\n transform: rotate(360deg);\n}\n`\n\n/**\n * @alpha\n * @deprecated Will be removed in the next major release\n */\nexport function NextStudioLoading(props: NextStudioLoadingProps) {\n const {config, scheme = 'light', unstable__noScript = true} = props\n const id = 'next-sanity-spinner'\n const theme = useTheme(config)\n const {fonts, media} = theme\n\n const styles: any = _responsive(media, [2], (size: number) => {\n const {ascenderHeight, descenderHeight, lineHeight, iconSize} = fonts.text.sizes[size]\n const capHeight = lineHeight - ascenderHeight - descenderHeight\n\n return {\n wrapper: {\n display: 'block',\n animation: `${id} 500ms linear infinite`,\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled.muted\n .fg,\n width: rem(capHeight),\n height: rem(capHeight),\n },\n svg: {\n display: 'block',\n width: rem(iconSize),\n height: rem(iconSize),\n margin: (capHeight - iconSize) / 2,\n },\n }\n })[0]\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <div\n style={{\n fontFamily: fonts.text.family,\n backgroundColor: theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg,\n height: '100vh',\n maxHeight: '100dvh',\n overscrollBehavior: 'none',\n WebkitFontSmoothing: 'antialiased',\n overflow: 'auto',\n }}\n >\n <div\n data-ui=\"Flex\"\n style={{\n display: 'flex',\n minWidth: 0,\n minHeight: 0,\n alignItems: 'center',\n justifyContent: 'center',\n flexDirection: 'column',\n height: '100%',\n margin: 0,\n padding: 0,\n // @TODO use rem calc\n gap: '10px',\n }}\n >\n <style key={scheme}>{`@keyframes ${id} {${keyframes}}`}</style>\n <div\n data-ui=\"Text\"\n style={{\n position: 'relative',\n // @TODO read from theme\n fontWeight: 400,\n // @TODO read from theme\n padding: '1px 0px',\n // @TODO use rem calc\n fontSize: '1rem',\n // @TODO use rem calc\n lineHeight: 'calc(1.3125)',\n // @TODO use rem calc\n transform: 'translateY(-5px)',\n color:\n theme.color[scheme === 'dark' ? 'dark' : 'light'].default.muted.default.enabled\n .muted.fg,\n }}\n >\n <span>Loading…</span>\n </div>\n <div data-ui=\"Spinner\" style={styles.wrapper}>\n <SpinnerIcon style={styles.svg} />\n </div>\n </div>\n </div>\n </>\n )\n}\n"],"names":["useTheme","config","workspace","useMemo","Array","isArray","theme","studioTheme","style","__html","NextStudioNoScript","jsx","children","className","jsxs","type","dangerouslySetInnerHTML","href","keyframes","NextStudioLoading","props","scheme","unstable__noScript","id","fonts","media","styles","_responsive","size","ascenderHeight","descenderHeight","lineHeight","iconSize","text","sizes","capHeight","wrapper","display","animation","color","default","muted","enabled","fg","width","rem","height","svg","margin","Fragment","fontFamily","family","backgroundColor","base","bg","maxHeight","overscrollBehavior","WebkitFontSmoothing","overflow","minWidth","minHeight","alignItems","justifyContent","flexDirection","padding","gap","concat","position","fontWeight","fontSize","transform","SpinnerIcon"],"mappings":"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"}
|
package/dist/studio/head.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"head.cjs","sources":["../../src/studio/head/apple-touch-icon.png","../../src/studio/head/favicon.ico","../../src/studio/head/favicon.svg","../../src/studio/head/NextStudioHead.tsx"],"sourcesContent":["export default \"data:image/png;base64,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\"","export default \"data:image/vnd.microsoft.icon;base64,AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAlL7VMLz7w6y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPfDrJSy1TC8+8OsvPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/M0Lw/zdF8P8zQvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNC8P9dafP/ho/2/6Go+P+rsfn/q7H5/6ux+f+dpPj/foj2/05b8v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9MWfL/nKP4/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/4SN9v81Q/D/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/UFzy/6et+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/5Ka9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zdF8P+epPj/q7H5/6ux+f+rsfn/q7H5/4aP9v9jbvT/WGTz/2Vw9P+IkPb/q7H5/6ux+f+rsfn/w8j7/4qS9v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Z3L0/6ux+f+rsfn/q7H5/6mv+f9RXvL/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9dafP/q7H5/6ux+f/X2vz/ztL7/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9+iPX/m6L4/5ui+P+bovj/d4D1/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P+Ikfb/t7z6//v7///19v7/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/4WO9v/09f7///////j5/v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/NkTw/2p09P++wvr/////////////////1df8/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0JQ8f9zffX/pKv4/9LV+//4+f7///////////////////////////+EjPb/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/32G9v/S1fz/////////////////////////////////////////////////xMn7/zJB8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zZE8P/Eyfv/////////////////////////////////////////////////+Pn+/56k+P82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/rrT5///////////////////////////////////////r7f7/u8D6/4SM9v9CUPH/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zxK8f/8/P//////////////////7/D+/7G2+f96hPX/TFny/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/ZnH0////////////+Pn+/5CY9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9td/T///////b2/v+1u/r/Tlvy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0RS8f9lcfT/ZXH0/2Vx9P9aZvP/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/1Nf8v//////ys77/6ux+f+MlPf/MUDw/y8+8P8vPvD/Lz7w/y8+8P8zQvD/kJj3/6ux+f+rsfn/q7H5/3R/9f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/9jb/P+ssvn/q7H5/6ux+f+QmPf/VGDy/zlH8P87SfH/VGDy/5Ka9/+rsfn/q7H5/6ux+f+pr/n/QE7x/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Xmr0/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/2959f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Ymz0/6mv+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f9xe/X/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/RFLy/4CJ9v+nrvn/q7H5/6ux+f+rsfn/q7H5/6eu+f+Ikfb/Slfy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNB8P9KV/L/VmLz/1Rg8/9IVfL/NUPw/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w6yUvtUwvPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8OslLLVMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Crect%20width%3D%22512%22%20height%3D%22512%22%20fill%3D%22%23F03E2F%22%20rx%3D%2230%22%20%2F%3E%20%3Cpath%20d%3D%22M161.527%20136.723C161.527%20179.76%20187.738%20205.443%20240.388%20219.095L296%20232.283C345.687%20243.852%20376%20272.775%20376%20319.514C376%20341.727%20369.162%20360.931%20357.538%20375.971C357.538%20329.232%20333.607%20303.78%20276.171%20288.74L221.47%20276.246C177.709%20266.065%20143.977%20242.464%20143.977%20191.56C143.977%20170.505%20150.359%20151.994%20161.527%20136.723Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M323.35%20308.176C347.054%20323.679%20357.538%20345.197%20357.538%20376.202C337.709%20401.654%20303.293%20416%20262.724%20416C194.575%20416%20146.484%20381.756%20136%20322.753H201.641C210.074%20350.056%20232.41%20362.551%20262.268%20362.551C298.735%20362.32%20322.895%20342.652%20323.35%20308.176Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M195.715%20200.816C172.923%20186.007%20161.527%20165.183%20161.527%20136.954C180.672%20111.503%20213.493%2096%20253.835%2096C323.35%2096%20363.692%20133.252%20373.721%20185.776H310.359C303.293%20165.183%20285.971%20148.986%20254.291%20148.986C220.33%20148.986%20197.311%20169.116%20195.715%20200.816Z%22%20fill%3D%22white%22%20%2F%3E%3C%2Fsvg%3E\"","import _faviconPng from './apple-touch-icon.png'\nimport _faviconIco from './favicon.ico'\nimport _faviconSvg from './favicon.svg'\n\nconst faviconPng = typeof _faviconPng === 'string' ? _faviconPng : _faviconPng.default\nconst faviconIco = typeof _faviconIco === 'string' ? _faviconIco : _faviconIco.default\nconst faviconSvg = typeof _faviconSvg === 'string' ? _faviconSvg : _faviconSvg.default\n\n/** @public */\nexport interface NextStudioHeadProps {\n /**\n * @defaultValue 'utf-8'\n */\n charSet?: false | string\n /**\n * Sets the viewport to `viewport-fit=cover` to integrate with iOS devices with display cutouts (The Notch, Dynamic Island).\n * Also sets `width=device-width, initial-scale=1` to make the studio page responsive.\n * @defaultValue true\n */\n viewport?: boolean\n /**\n * It's common practice to hide the address to your Sanity Studio from search engines by setting `robots` to `noindex`\n * @defaultValue 'noindex'\n */\n robots?: false | string\n /**\n * @defaultValue 'same-origin'\n */\n referrer?: false | string\n /**\n * Adds the same favicons as the `npx sanity dev` pipeline.\n * @defaultValue true\n */\n favicons?: boolean\n /**\n * @defaultValue 'Sanity'\n */\n title?: false | string\n}\n\n/**\n * In Next 13 appDir mode (`/app/studio/[[...index]]/head.tsx`):\n * ```tsx\n * // If you don't want to change any defaults you can just re-export the head component directly:\n * export {NextStudioHead as default} from 'next-sanity/studio/head'\n *\n * // To customize it, use it as a children component:\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function CustomStudioHead() {\n * return (\n * <>\n * <NextStudioHead favicons={false} />\n * <link\n * rel=\"icon\"\n * type=\"image/png\"\n * sizes=\"32x32\"\n * href=\"https://www.sanity.io/static/images/favicons/favicon-32x32.png\"\n * />\n * </>\n * )\n * }\n * ```\n * If you're using Next 12 or the `pages` folder (`/pages/studio/[[...index]].tsx`):\n * ```tsx\n * import Head from 'next/head'\n * import {NextStudio} from 'next-sanity/studio'\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function StudioPage() {\n * return (\n * <>\n * <Head>\n * <NextStudioHead />\n * </Head>\n * <NextStudio config={config} />\n * </>\n * )\n * }\n * ```\n * @public\n * @deprecated Use `import {metadata} from 'next-sanity/studio'` instead, this component will be removed in the next major release.\n */\nexport function NextStudioHead(props: NextStudioHeadProps) {\n const {\n charSet = 'utf-8',\n viewport = true,\n robots = 'noindex',\n referrer = 'same-origin',\n favicons = true,\n title = 'Sanity',\n } = props\n\n return (\n <>\n {charSet && <meta key=\"charset\" charSet={charSet} />}\n {viewport && (\n <meta\n key=\"viewport\"\n name=\"viewport\"\n // Studio implements display cutouts CSS (The iPhone Notch ™ ) and needs `viewport-fit=covered` for it to work correctly\n content=\"width=device-width,initial-scale=1,viewport-fit=cover\"\n />\n )}\n {robots && <meta key=\"robots\" name=\"robots\" content={robots} />}\n {referrer && <meta key=\"referrer\" name=\"referrer\" content={referrer} />}\n {title && <title>{title}</title>}\n {favicons && <link key=\"favicon.ico\" rel=\"icon\" href={faviconIco} sizes=\"any\" />}\n {favicons && <link key=\"apple-touch-icon.png\" rel=\"apple-touch-icon\" href={faviconPng} />}\n {favicons && <link key=\"favicon.svg\" rel=\"icon\" href={faviconSvg} type=\"image/svg+xml\" />}\n </>\n )\n}\n"],"names":["_faviconPng","_faviconIco","_faviconSvg","faviconPng","faviconIco","faviconSvg","NextStudioHead","props","charSet","viewport","robots","referrer","favicons","title","jsxs","Fragment","children","jsx","name","content","rel","href","sizes","type"],"mappings":";;;;;;AAAA,IAAeA,WAAA,GAAA,w0JAAA;ACAf,IAAeC,WAAA,GAAA,2nLAAA;ACAf,IAAeC,WAAA,GAAA,igDAAA;ACIf,MAAMC,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AA6E9C,SAASI,eAAeC,KAA4B,EAAA;EACnD,MAAA;IACJC,OAAU,GAAA,OAAA;IACVC,QAAW,GAAA,IAAA;IACXC,MAAS,GAAA,SAAA;IACTC,QAAW,GAAA,aAAA;IACXC,QAAW,GAAA,IAAA;IACXC,KAAQ,GAAA;EACN,CAAA,GAAAN,KAAA;EAEJ,sBAEKO,UAAA,CAAAA,IAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,CAAWR,OAAA,IAAAS,eAAAA,UAAAA,CAAAA,GAAA,CAAC,MAAmB,EAAA;MAAAT;IAAA,CAAA,EAAV,SAA4B,CAAA,EACjDC,QACC,mBAAAQ,UAAA,CAAAA,GAAA,CAAC,MAAA,EAAA;MAECC,IAAK,EAAA,UAAA;MAELC,OAAQ,EAAA;IAAA,CAAA,EAHJ,UAAA,CAIN,EAEDT,UAAWO,eAAAA,UAAAA,CAAAA,GAAA,CAAA,MAAA,EAAA;MAAkBC,MAAK,QAAS;MAAAC,OAAA,EAAST;OAAhC,QAAwC,CAAA,EAC5DC,YAAaM,eAAAA,UAAAA,CAAAA,GAAA,CAAA,MAAA,EAAA;MAAoBC,MAAK,UAAW;MAAAC,OAAA,EAASR;OAApC,UAA8C,CAAA,EACpEE,KAAA,IAAUI,eAAAA,UAAAA,CAAAA,GAAA,CAAA,OAAA,EAAA;MAAOD,QAAM,EAAAH;IAAA,CAAA,CAAA,EACvBD,QAAA,kCAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAjB,UAAA;MAAYkB,KAAM,EAAA;IAAA,CAAA,EAAjD,aAAuD,CAAA,EAC7EV,YAAaK,eAAAA,UAAAA,CAAAA,GAAA,CAAA,MAAA,EAAA;MAAgCG,KAAI,kBAAmB;MAAAC,IAAA,EAAMlB;OAApD,sBAAgE,CAAA,EACtFS,QAAA,kCAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAhB,UAAA;MAAYkB,IAAK,EAAA;IAAA,CAAA,EAAhD,aAAgE,CAAA;EACzF,CAAA,CAAA;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"head.cjs","sources":["../../src/studio/head/apple-touch-icon.png","../../src/studio/head/favicon.ico","../../src/studio/head/favicon.svg","../../src/studio/head/NextStudioHead.tsx"],"sourcesContent":["export default \"data:image/png;base64,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\"","export default \"data:image/vnd.microsoft.icon;base64,AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAlL7VMLz7w6y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPfDrJSy1TC8+8OsvPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/M0Lw/zdF8P8zQvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNC8P9dafP/ho/2/6Go+P+rsfn/q7H5/6ux+f+dpPj/foj2/05b8v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9MWfL/nKP4/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/4SN9v81Q/D/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/UFzy/6et+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/5Ka9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zdF8P+epPj/q7H5/6ux+f+rsfn/q7H5/4aP9v9jbvT/WGTz/2Vw9P+IkPb/q7H5/6ux+f+rsfn/w8j7/4qS9v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Z3L0/6ux+f+rsfn/q7H5/6mv+f9RXvL/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9dafP/q7H5/6ux+f/X2vz/ztL7/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9+iPX/m6L4/5ui+P+bovj/d4D1/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P+Ikfb/t7z6//v7///19v7/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/4WO9v/09f7///////j5/v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/NkTw/2p09P++wvr/////////////////1df8/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0JQ8f9zffX/pKv4/9LV+//4+f7///////////////////////////+EjPb/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/32G9v/S1fz/////////////////////////////////////////////////xMn7/zJB8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zZE8P/Eyfv/////////////////////////////////////////////////+Pn+/56k+P82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/rrT5///////////////////////////////////////r7f7/u8D6/4SM9v9CUPH/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zxK8f/8/P//////////////////7/D+/7G2+f96hPX/TFny/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/ZnH0////////////+Pn+/5CY9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9td/T///////b2/v+1u/r/Tlvy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0RS8f9lcfT/ZXH0/2Vx9P9aZvP/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/1Nf8v//////ys77/6ux+f+MlPf/MUDw/y8+8P8vPvD/Lz7w/y8+8P8zQvD/kJj3/6ux+f+rsfn/q7H5/3R/9f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/9jb/P+ssvn/q7H5/6ux+f+QmPf/VGDy/zlH8P87SfH/VGDy/5Ka9/+rsfn/q7H5/6ux+f+pr/n/QE7x/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Xmr0/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/2959f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Ymz0/6mv+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f9xe/X/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/RFLy/4CJ9v+nrvn/q7H5/6ux+f+rsfn/q7H5/6eu+f+Ikfb/Slfy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNB8P9KV/L/VmLz/1Rg8/9IVfL/NUPw/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w6yUvtUwvPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8OslLLVMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Crect%20width%3D%22512%22%20height%3D%22512%22%20fill%3D%22%23F03E2F%22%20rx%3D%2230%22%20%2F%3E%20%3Cpath%20d%3D%22M161.527%20136.723C161.527%20179.76%20187.738%20205.443%20240.388%20219.095L296%20232.283C345.687%20243.852%20376%20272.775%20376%20319.514C376%20341.727%20369.162%20360.931%20357.538%20375.971C357.538%20329.232%20333.607%20303.78%20276.171%20288.74L221.47%20276.246C177.709%20266.065%20143.977%20242.464%20143.977%20191.56C143.977%20170.505%20150.359%20151.994%20161.527%20136.723Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M323.35%20308.176C347.054%20323.679%20357.538%20345.197%20357.538%20376.202C337.709%20401.654%20303.293%20416%20262.724%20416C194.575%20416%20146.484%20381.756%20136%20322.753H201.641C210.074%20350.056%20232.41%20362.551%20262.268%20362.551C298.735%20362.32%20322.895%20342.652%20323.35%20308.176Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M195.715%20200.816C172.923%20186.007%20161.527%20165.183%20161.527%20136.954C180.672%20111.503%20213.493%2096%20253.835%2096C323.35%2096%20363.692%20133.252%20373.721%20185.776H310.359C303.293%20165.183%20285.971%20148.986%20254.291%20148.986C220.33%20148.986%20197.311%20169.116%20195.715%20200.816Z%22%20fill%3D%22white%22%20%2F%3E%3C%2Fsvg%3E\"","import _faviconPng from './apple-touch-icon.png'\nimport _faviconIco from './favicon.ico'\nimport _faviconSvg from './favicon.svg'\n\nconst faviconPng = typeof _faviconPng === 'string' ? _faviconPng : _faviconPng.default\nconst faviconIco = typeof _faviconIco === 'string' ? _faviconIco : _faviconIco.default\nconst faviconSvg = typeof _faviconSvg === 'string' ? _faviconSvg : _faviconSvg.default\n\n/** @public */\nexport interface NextStudioHeadProps {\n /**\n * @defaultValue 'utf-8'\n */\n charSet?: false | string\n /**\n * Sets the viewport to `viewport-fit=cover` to integrate with iOS devices with display cutouts (The Notch, Dynamic Island).\n * Also sets `width=device-width, initial-scale=1` to make the studio page responsive.\n * @defaultValue true\n */\n viewport?: boolean\n /**\n * It's common practice to hide the address to your Sanity Studio from search engines by setting `robots` to `noindex`\n * @defaultValue 'noindex'\n */\n robots?: false | string\n /**\n * @defaultValue 'same-origin'\n */\n referrer?: false | string\n /**\n * Adds the same favicons as the `npx sanity dev` pipeline.\n * @defaultValue true\n */\n favicons?: boolean\n /**\n * @defaultValue 'Sanity'\n */\n title?: false | string\n}\n\n/**\n * In Next 13 appDir mode (`/app/studio/[[...index]]/head.tsx`):\n * ```tsx\n * // If you don't want to change any defaults you can just re-export the head component directly:\n * export {NextStudioHead as default} from 'next-sanity/studio/head'\n *\n * // To customize it, use it as a children component:\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function CustomStudioHead() {\n * return (\n * <>\n * <NextStudioHead favicons={false} />\n * <link\n * rel=\"icon\"\n * type=\"image/png\"\n * sizes=\"32x32\"\n * href=\"https://www.sanity.io/static/images/favicons/favicon-32x32.png\"\n * />\n * </>\n * )\n * }\n * ```\n * If you're using Next 12 or the `pages` folder (`/pages/studio/[[...index]].tsx`):\n * ```tsx\n * import Head from 'next/head'\n * import {NextStudio} from 'next-sanity/studio'\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function StudioPage() {\n * return (\n * <>\n * <Head>\n * <NextStudioHead />\n * </Head>\n * <NextStudio config={config} />\n * </>\n * )\n * }\n * ```\n * @public\n * @deprecated Use `import {metadata} from 'next-sanity/studio'` instead, this component will be removed in the next major release.\n */\nexport function NextStudioHead(props: NextStudioHeadProps) {\n const {\n charSet = 'utf-8',\n viewport = true,\n robots = 'noindex',\n referrer = 'same-origin',\n favicons = true,\n title = 'Sanity',\n } = props\n\n return (\n <>\n {charSet && <meta key=\"charset\" charSet={charSet} />}\n {viewport && (\n <meta\n key=\"viewport\"\n name=\"viewport\"\n // Studio implements display cutouts CSS (The iPhone Notch ™ ) and needs `viewport-fit=covered` for it to work correctly\n content=\"width=device-width,initial-scale=1,viewport-fit=cover\"\n />\n )}\n {robots && <meta key=\"robots\" name=\"robots\" content={robots} />}\n {referrer && <meta key=\"referrer\" name=\"referrer\" content={referrer} />}\n {title && <title>{title}</title>}\n {favicons && <link key=\"favicon.ico\" rel=\"icon\" href={faviconIco} sizes=\"any\" />}\n {favicons && <link key=\"apple-touch-icon.png\" rel=\"apple-touch-icon\" href={faviconPng} />}\n {favicons && <link key=\"favicon.svg\" rel=\"icon\" href={faviconSvg} type=\"image/svg+xml\" />}\n </>\n )\n}\n"],"names":["_faviconPng","_faviconIco","_faviconSvg","faviconPng","faviconIco","faviconSvg","NextStudioHead","props","charSet","viewport","robots","referrer","favicons","title","jsxs","Fragment","children","jsx","name","content","rel","href","sizes","type"],"mappings":";;;;;;AAAA,IAAeA,WAAA,GAAA,w0JAAA;ACAf,IAAeC,WAAA,GAAA,2nLAAA;ACAf,IAAeC,WAAA,GAAA,igDAAA;ACIf,MAAMC,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AA6E9C,SAASI,eAAeC,KAA4B,EAAA;EACnD,MAAA;IACJC,OAAU,GAAA,OAAA;IACVC,QAAW,GAAA,IAAA;IACXC,MAAS,GAAA,SAAA;IACTC,QAAW,GAAA,aAAA;IACXC,QAAW,GAAA,IAAA;IACXC,KAAQ,GAAA;EACN,CAAA,GAAAN,KAAA;EAEJ,sBAEKO,UAAA,CAAAA,IAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,CAAWR,OAAA,IAAAS,eAAAA,UAAAA,CAAAA,GAAA,CAAC,MAAmB,EAAA;MAAAT;IAAA,CAAA,EAAV,SAA4B,CAAA,EACjDC,QACC,mBAAAQ,UAAA,CAAAA,GAAA,CAAC,MAAA,EAAA;MAECC,IAAK,EAAA,UAAA;MAELC,OAAQ,EAAA;IAAA,CAAA,EAHJ,UAIN,CAAA,EAEDT,UAAWO,eAAAA,UAAAA,CAAAA,GAAA,CAAA,MAAA,EAAA;MAAkBC,MAAK,QAAS;MAAAC,OAAA,EAAST;OAAhC,QAAwC,CAAA,EAC5DC,YAAaM,eAAAA,UAAAA,CAAAA,GAAA,CAAA,MAAA,EAAA;MAAoBC,MAAK,UAAW;MAAAC,OAAA,EAASR;OAApC,UAA8C,CAAA,EACpEE,KAAA,IAAUI,eAAAA,UAAAA,CAAAA,GAAA,CAAA,OAAA,EAAA;MAAOD,QAAM,EAAAH;IAAA,CAAA,CAAA,EACvBD,QAAA,kCAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAjB,UAAA;MAAYkB,KAAM,EAAA;IAAA,CAAA,EAAjD,aAAuD,CAAA,EAC7EV,YAAaK,eAAAA,UAAAA,CAAAA,GAAA,CAAA,MAAA,EAAA;MAAgCG,KAAI,kBAAmB;MAAAC,IAAA,EAAMlB;OAApD,sBAAgE,CAAA,EACtFS,QAAA,kCAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAhB,UAAA;MAAYkB,IAAK,EAAA;IAAA,CAAA,EAAhD,aAAgE,CAAA;EACzF,CAAA,CAAA;AAEJ;"}
|
package/dist/studio/head.d.ts
CHANGED
package/dist/studio/head.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"head.js","sources":["../../src/studio/head/apple-touch-icon.png","../../src/studio/head/favicon.ico","../../src/studio/head/favicon.svg","../../src/studio/head/NextStudioHead.tsx"],"sourcesContent":["export default \"data:image/png;base64,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\"","export default \"data:image/vnd.microsoft.icon;base64,AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAlL7VMLz7w6y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPfDrJSy1TC8+8OsvPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/M0Lw/zdF8P8zQvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNC8P9dafP/ho/2/6Go+P+rsfn/q7H5/6ux+f+dpPj/foj2/05b8v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9MWfL/nKP4/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/4SN9v81Q/D/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/UFzy/6et+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/5Ka9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zdF8P+epPj/q7H5/6ux+f+rsfn/q7H5/4aP9v9jbvT/WGTz/2Vw9P+IkPb/q7H5/6ux+f+rsfn/w8j7/4qS9v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Z3L0/6ux+f+rsfn/q7H5/6mv+f9RXvL/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9dafP/q7H5/6ux+f/X2vz/ztL7/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9+iPX/m6L4/5ui+P+bovj/d4D1/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P+Ikfb/t7z6//v7///19v7/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/4WO9v/09f7///////j5/v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/NkTw/2p09P++wvr/////////////////1df8/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0JQ8f9zffX/pKv4/9LV+//4+f7///////////////////////////+EjPb/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/32G9v/S1fz/////////////////////////////////////////////////xMn7/zJB8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zZE8P/Eyfv/////////////////////////////////////////////////+Pn+/56k+P82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/rrT5///////////////////////////////////////r7f7/u8D6/4SM9v9CUPH/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zxK8f/8/P//////////////////7/D+/7G2+f96hPX/TFny/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/ZnH0////////////+Pn+/5CY9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9td/T///////b2/v+1u/r/Tlvy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0RS8f9lcfT/ZXH0/2Vx9P9aZvP/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/1Nf8v//////ys77/6ux+f+MlPf/MUDw/y8+8P8vPvD/Lz7w/y8+8P8zQvD/kJj3/6ux+f+rsfn/q7H5/3R/9f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/9jb/P+ssvn/q7H5/6ux+f+QmPf/VGDy/zlH8P87SfH/VGDy/5Ka9/+rsfn/q7H5/6ux+f+pr/n/QE7x/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Xmr0/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/2959f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Ymz0/6mv+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f9xe/X/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/RFLy/4CJ9v+nrvn/q7H5/6ux+f+rsfn/q7H5/6eu+f+Ikfb/Slfy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNB8P9KV/L/VmLz/1Rg8/9IVfL/NUPw/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w6yUvtUwvPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8OslLLVMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Crect%20width%3D%22512%22%20height%3D%22512%22%20fill%3D%22%23F03E2F%22%20rx%3D%2230%22%20%2F%3E%20%3Cpath%20d%3D%22M161.527%20136.723C161.527%20179.76%20187.738%20205.443%20240.388%20219.095L296%20232.283C345.687%20243.852%20376%20272.775%20376%20319.514C376%20341.727%20369.162%20360.931%20357.538%20375.971C357.538%20329.232%20333.607%20303.78%20276.171%20288.74L221.47%20276.246C177.709%20266.065%20143.977%20242.464%20143.977%20191.56C143.977%20170.505%20150.359%20151.994%20161.527%20136.723Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M323.35%20308.176C347.054%20323.679%20357.538%20345.197%20357.538%20376.202C337.709%20401.654%20303.293%20416%20262.724%20416C194.575%20416%20146.484%20381.756%20136%20322.753H201.641C210.074%20350.056%20232.41%20362.551%20262.268%20362.551C298.735%20362.32%20322.895%20342.652%20323.35%20308.176Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M195.715%20200.816C172.923%20186.007%20161.527%20165.183%20161.527%20136.954C180.672%20111.503%20213.493%2096%20253.835%2096C323.35%2096%20363.692%20133.252%20373.721%20185.776H310.359C303.293%20165.183%20285.971%20148.986%20254.291%20148.986C220.33%20148.986%20197.311%20169.116%20195.715%20200.816Z%22%20fill%3D%22white%22%20%2F%3E%3C%2Fsvg%3E\"","import _faviconPng from './apple-touch-icon.png'\nimport _faviconIco from './favicon.ico'\nimport _faviconSvg from './favicon.svg'\n\nconst faviconPng = typeof _faviconPng === 'string' ? _faviconPng : _faviconPng.default\nconst faviconIco = typeof _faviconIco === 'string' ? _faviconIco : _faviconIco.default\nconst faviconSvg = typeof _faviconSvg === 'string' ? _faviconSvg : _faviconSvg.default\n\n/** @public */\nexport interface NextStudioHeadProps {\n /**\n * @defaultValue 'utf-8'\n */\n charSet?: false | string\n /**\n * Sets the viewport to `viewport-fit=cover` to integrate with iOS devices with display cutouts (The Notch, Dynamic Island).\n * Also sets `width=device-width, initial-scale=1` to make the studio page responsive.\n * @defaultValue true\n */\n viewport?: boolean\n /**\n * It's common practice to hide the address to your Sanity Studio from search engines by setting `robots` to `noindex`\n * @defaultValue 'noindex'\n */\n robots?: false | string\n /**\n * @defaultValue 'same-origin'\n */\n referrer?: false | string\n /**\n * Adds the same favicons as the `npx sanity dev` pipeline.\n * @defaultValue true\n */\n favicons?: boolean\n /**\n * @defaultValue 'Sanity'\n */\n title?: false | string\n}\n\n/**\n * In Next 13 appDir mode (`/app/studio/[[...index]]/head.tsx`):\n * ```tsx\n * // If you don't want to change any defaults you can just re-export the head component directly:\n * export {NextStudioHead as default} from 'next-sanity/studio/head'\n *\n * // To customize it, use it as a children component:\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function CustomStudioHead() {\n * return (\n * <>\n * <NextStudioHead favicons={false} />\n * <link\n * rel=\"icon\"\n * type=\"image/png\"\n * sizes=\"32x32\"\n * href=\"https://www.sanity.io/static/images/favicons/favicon-32x32.png\"\n * />\n * </>\n * )\n * }\n * ```\n * If you're using Next 12 or the `pages` folder (`/pages/studio/[[...index]].tsx`):\n * ```tsx\n * import Head from 'next/head'\n * import {NextStudio} from 'next-sanity/studio'\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function StudioPage() {\n * return (\n * <>\n * <Head>\n * <NextStudioHead />\n * </Head>\n * <NextStudio config={config} />\n * </>\n * )\n * }\n * ```\n * @public\n * @deprecated Use `import {metadata} from 'next-sanity/studio'` instead, this component will be removed in the next major release.\n */\nexport function NextStudioHead(props: NextStudioHeadProps) {\n const {\n charSet = 'utf-8',\n viewport = true,\n robots = 'noindex',\n referrer = 'same-origin',\n favicons = true,\n title = 'Sanity',\n } = props\n\n return (\n <>\n {charSet && <meta key=\"charset\" charSet={charSet} />}\n {viewport && (\n <meta\n key=\"viewport\"\n name=\"viewport\"\n // Studio implements display cutouts CSS (The iPhone Notch ™ ) and needs `viewport-fit=covered` for it to work correctly\n content=\"width=device-width,initial-scale=1,viewport-fit=cover\"\n />\n )}\n {robots && <meta key=\"robots\" name=\"robots\" content={robots} />}\n {referrer && <meta key=\"referrer\" name=\"referrer\" content={referrer} />}\n {title && <title>{title}</title>}\n {favicons && <link key=\"favicon.ico\" rel=\"icon\" href={faviconIco} sizes=\"any\" />}\n {favicons && <link key=\"apple-touch-icon.png\" rel=\"apple-touch-icon\" href={faviconPng} />}\n {favicons && <link key=\"favicon.svg\" rel=\"icon\" href={faviconSvg} type=\"image/svg+xml\" />}\n </>\n )\n}\n"],"names":["_faviconPng","_faviconIco","_faviconSvg","faviconPng","faviconIco","faviconSvg","NextStudioHead","props","charSet","viewport","robots","referrer","favicons","title","jsxs","Fragment","children","jsx","name","content","rel","href","sizes","type"],"mappings":";AAAA,IAAeA,WAAA,GAAA,w0JAAA;ACAf,IAAeC,WAAA,GAAA,2nLAAA;ACAf,IAAeC,WAAA,GAAA,igDAAA;ACIf,MAAMC,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AA6E9C,SAASI,eAAeC,KAA4B,EAAA;EACnD,MAAA;IACJC,OAAU,GAAA,OAAA;IACVC,QAAW,GAAA,IAAA;IACXC,MAAS,GAAA,SAAA;IACTC,QAAW,GAAA,aAAA;IACXC,QAAW,GAAA,IAAA;IACXC,KAAQ,GAAA;EACN,CAAA,GAAAN,KAAA;EAEJ,sBAEKO,IAAA,CAAAC,QAAA,EAAA;IAAAC,QAAA,EAAA,CAAWR,OAAA,IAAA,eAAAS,GAAA,CAAC,MAAmB,EAAA;MAAAT;IAAA,CAAA,EAAV,SAA4B,CAAA,EACjDC,QACC,mBAAAQ,GAAA,CAAC,MAAA,EAAA;MAECC,IAAK,EAAA,UAAA;MAELC,OAAQ,EAAA;IAAA,CAAA,EAHJ,UAAA,CAIN,EAEDT,UAAW,eAAAO,GAAA,CAAA,MAAA,EAAA;MAAkBC,MAAK,QAAS;MAAAC,OAAA,EAAST;OAAhC,QAAwC,CAAA,EAC5DC,YAAa,eAAAM,GAAA,CAAA,MAAA,EAAA;MAAoBC,MAAK,UAAW;MAAAC,OAAA,EAASR;OAApC,UAA8C,CAAA,EACpEE,KAAA,IAAU,eAAAI,GAAA,CAAA,OAAA,EAAA;MAAOD,QAAM,EAAAH;IAAA,CAAA,CAAA,EACvBD,QAAA,uBAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAjB,UAAA;MAAYkB,KAAM,EAAA;IAAA,CAAA,EAAjD,aAAuD,CAAA,EAC7EV,YAAa,eAAAK,GAAA,CAAA,MAAA,EAAA;MAAgCG,KAAI,kBAAmB;MAAAC,IAAA,EAAMlB;OAApD,sBAAgE,CAAA,EACtFS,QAAA,uBAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAhB,UAAA;MAAYkB,IAAK,EAAA;IAAA,CAAA,EAAhD,aAAgE,CAAA;EACzF,CAAA,CAAA;AAEJ;"}
|
|
1
|
+
{"version":3,"file":"head.js","sources":["../../src/studio/head/apple-touch-icon.png","../../src/studio/head/favicon.ico","../../src/studio/head/favicon.svg","../../src/studio/head/NextStudioHead.tsx"],"sourcesContent":["export default \"data:image/png;base64,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\"","export default \"data:image/vnd.microsoft.icon;base64,AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAlL7VMLz7w6y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPfDrJSy1TC8+8OsvPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/M0Lw/zdF8P8zQvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNC8P9dafP/ho/2/6Go+P+rsfn/q7H5/6ux+f+dpPj/foj2/05b8v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9MWfL/nKP4/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/4SN9v81Q/D/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/UFzy/6et+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/5Ka9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zdF8P+epPj/q7H5/6ux+f+rsfn/q7H5/4aP9v9jbvT/WGTz/2Vw9P+IkPb/q7H5/6ux+f+rsfn/w8j7/4qS9v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Z3L0/6ux+f+rsfn/q7H5/6mv+f9RXvL/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9dafP/q7H5/6ux+f/X2vz/ztL7/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9+iPX/m6L4/5ui+P+bovj/d4D1/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P+Ikfb/t7z6//v7///19v7/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/4WO9v/09f7///////j5/v8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/NkTw/2p09P++wvr/////////////////1df8/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0JQ8f9zffX/pKv4/9LV+//4+f7///////////////////////////+EjPb/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/32G9v/S1fz/////////////////////////////////////////////////xMn7/zJB8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zZE8P/Eyfv/////////////////////////////////////////////////+Pn+/56k+P82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/rrT5///////////////////////////////////////r7f7/u8D6/4SM9v9CUPH/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zxK8f/8/P//////////////////7/D+/7G2+f96hPX/TFny/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/ZnH0////////////+Pn+/5CY9/82RPD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P9td/T///////b2/v+1u/r/Tlvy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/0RS8f9lcfT/ZXH0/2Vx9P9aZvP/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/1Nf8v//////ys77/6ux+f+MlPf/MUDw/y8+8P8vPvD/Lz7w/y8+8P8zQvD/kJj3/6ux+f+rsfn/q7H5/3R/9f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/9jb/P+ssvn/q7H5/6ux+f+QmPf/VGDy/zlH8P87SfH/VGDy/5Ka9/+rsfn/q7H5/6ux+f+pr/n/QE7x/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Xmr0/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/2959f8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Ymz0/6mv+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f+rsfn/q7H5/6ux+f9xe/X/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/RFLy/4CJ9v+nrvn/q7H5/6ux+f+rsfn/q7H5/6eu+f+Ikfb/Slfy/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/zNB8P9KV/L/VmLz/1Rg8/9IVfL/NUPw/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w6yUvtUwvPvDrLz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8P8vPvD/Lz7w/y8+8OslLLVMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20width%3D%22512%22%20height%3D%22512%22%20viewBox%3D%220%200%20512%20512%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Crect%20width%3D%22512%22%20height%3D%22512%22%20fill%3D%22%23F03E2F%22%20rx%3D%2230%22%20%2F%3E%20%3Cpath%20d%3D%22M161.527%20136.723C161.527%20179.76%20187.738%20205.443%20240.388%20219.095L296%20232.283C345.687%20243.852%20376%20272.775%20376%20319.514C376%20341.727%20369.162%20360.931%20357.538%20375.971C357.538%20329.232%20333.607%20303.78%20276.171%20288.74L221.47%20276.246C177.709%20266.065%20143.977%20242.464%20143.977%20191.56C143.977%20170.505%20150.359%20151.994%20161.527%20136.723Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M323.35%20308.176C347.054%20323.679%20357.538%20345.197%20357.538%20376.202C337.709%20401.654%20303.293%20416%20262.724%20416C194.575%20416%20146.484%20381.756%20136%20322.753H201.641C210.074%20350.056%20232.41%20362.551%20262.268%20362.551C298.735%20362.32%20322.895%20342.652%20323.35%20308.176Z%22%20fill%3D%22white%22%20%2F%3E%20%3Cpath%20opacity%3D%220.5%22%20d%3D%22M195.715%20200.816C172.923%20186.007%20161.527%20165.183%20161.527%20136.954C180.672%20111.503%20213.493%2096%20253.835%2096C323.35%2096%20363.692%20133.252%20373.721%20185.776H310.359C303.293%20165.183%20285.971%20148.986%20254.291%20148.986C220.33%20148.986%20197.311%20169.116%20195.715%20200.816Z%22%20fill%3D%22white%22%20%2F%3E%3C%2Fsvg%3E\"","import _faviconPng from './apple-touch-icon.png'\nimport _faviconIco from './favicon.ico'\nimport _faviconSvg from './favicon.svg'\n\nconst faviconPng = typeof _faviconPng === 'string' ? _faviconPng : _faviconPng.default\nconst faviconIco = typeof _faviconIco === 'string' ? _faviconIco : _faviconIco.default\nconst faviconSvg = typeof _faviconSvg === 'string' ? _faviconSvg : _faviconSvg.default\n\n/** @public */\nexport interface NextStudioHeadProps {\n /**\n * @defaultValue 'utf-8'\n */\n charSet?: false | string\n /**\n * Sets the viewport to `viewport-fit=cover` to integrate with iOS devices with display cutouts (The Notch, Dynamic Island).\n * Also sets `width=device-width, initial-scale=1` to make the studio page responsive.\n * @defaultValue true\n */\n viewport?: boolean\n /**\n * It's common practice to hide the address to your Sanity Studio from search engines by setting `robots` to `noindex`\n * @defaultValue 'noindex'\n */\n robots?: false | string\n /**\n * @defaultValue 'same-origin'\n */\n referrer?: false | string\n /**\n * Adds the same favicons as the `npx sanity dev` pipeline.\n * @defaultValue true\n */\n favicons?: boolean\n /**\n * @defaultValue 'Sanity'\n */\n title?: false | string\n}\n\n/**\n * In Next 13 appDir mode (`/app/studio/[[...index]]/head.tsx`):\n * ```tsx\n * // If you don't want to change any defaults you can just re-export the head component directly:\n * export {NextStudioHead as default} from 'next-sanity/studio/head'\n *\n * // To customize it, use it as a children component:\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function CustomStudioHead() {\n * return (\n * <>\n * <NextStudioHead favicons={false} />\n * <link\n * rel=\"icon\"\n * type=\"image/png\"\n * sizes=\"32x32\"\n * href=\"https://www.sanity.io/static/images/favicons/favicon-32x32.png\"\n * />\n * </>\n * )\n * }\n * ```\n * If you're using Next 12 or the `pages` folder (`/pages/studio/[[...index]].tsx`):\n * ```tsx\n * import Head from 'next/head'\n * import {NextStudio} from 'next-sanity/studio'\n * import {NextStudioHead} from 'next-sanity/studio/head'\n *\n * export default function StudioPage() {\n * return (\n * <>\n * <Head>\n * <NextStudioHead />\n * </Head>\n * <NextStudio config={config} />\n * </>\n * )\n * }\n * ```\n * @public\n * @deprecated Use `import {metadata} from 'next-sanity/studio'` instead, this component will be removed in the next major release.\n */\nexport function NextStudioHead(props: NextStudioHeadProps) {\n const {\n charSet = 'utf-8',\n viewport = true,\n robots = 'noindex',\n referrer = 'same-origin',\n favicons = true,\n title = 'Sanity',\n } = props\n\n return (\n <>\n {charSet && <meta key=\"charset\" charSet={charSet} />}\n {viewport && (\n <meta\n key=\"viewport\"\n name=\"viewport\"\n // Studio implements display cutouts CSS (The iPhone Notch ™ ) and needs `viewport-fit=covered` for it to work correctly\n content=\"width=device-width,initial-scale=1,viewport-fit=cover\"\n />\n )}\n {robots && <meta key=\"robots\" name=\"robots\" content={robots} />}\n {referrer && <meta key=\"referrer\" name=\"referrer\" content={referrer} />}\n {title && <title>{title}</title>}\n {favicons && <link key=\"favicon.ico\" rel=\"icon\" href={faviconIco} sizes=\"any\" />}\n {favicons && <link key=\"apple-touch-icon.png\" rel=\"apple-touch-icon\" href={faviconPng} />}\n {favicons && <link key=\"favicon.svg\" rel=\"icon\" href={faviconSvg} type=\"image/svg+xml\" />}\n </>\n )\n}\n"],"names":["_faviconPng","_faviconIco","_faviconSvg","faviconPng","faviconIco","faviconSvg","NextStudioHead","props","charSet","viewport","robots","referrer","favicons","title","jsxs","Fragment","children","jsx","name","content","rel","href","sizes","type"],"mappings":";AAAA,IAAeA,WAAA,GAAA,w0JAAA;ACAf,IAAeC,WAAA,GAAA,2nLAAA;ACAf,IAAeC,WAAA,GAAA,igDAAA;ACIf,MAAMC,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AACrD,MAAMI,UAAa,GAAkCH;AA6E9C,SAASI,eAAeC,KAA4B,EAAA;EACnD,MAAA;IACJC,OAAU,GAAA,OAAA;IACVC,QAAW,GAAA,IAAA;IACXC,MAAS,GAAA,SAAA;IACTC,QAAW,GAAA,aAAA;IACXC,QAAW,GAAA,IAAA;IACXC,KAAQ,GAAA;EACN,CAAA,GAAAN,KAAA;EAEJ,sBAEKO,IAAA,CAAAC,QAAA,EAAA;IAAAC,QAAA,EAAA,CAAWR,OAAA,IAAA,eAAAS,GAAA,CAAC,MAAmB,EAAA;MAAAT;IAAA,CAAA,EAAV,SAA4B,CAAA,EACjDC,QACC,mBAAAQ,GAAA,CAAC,MAAA,EAAA;MAECC,IAAK,EAAA,UAAA;MAELC,OAAQ,EAAA;IAAA,CAAA,EAHJ,UAIN,CAAA,EAEDT,UAAW,eAAAO,GAAA,CAAA,MAAA,EAAA;MAAkBC,MAAK,QAAS;MAAAC,OAAA,EAAST;OAAhC,QAAwC,CAAA,EAC5DC,YAAa,eAAAM,GAAA,CAAA,MAAA,EAAA;MAAoBC,MAAK,UAAW;MAAAC,OAAA,EAASR;OAApC,UAA8C,CAAA,EACpEE,KAAA,IAAU,eAAAI,GAAA,CAAA,OAAA,EAAA;MAAOD,QAAM,EAAAH;IAAA,CAAA,CAAA,EACvBD,QAAA,uBAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAjB,UAAA;MAAYkB,KAAM,EAAA;IAAA,CAAA,EAAjD,aAAuD,CAAA,EAC7EV,YAAa,eAAAK,GAAA,CAAA,MAAA,EAAA;MAAgCG,KAAI,kBAAmB;MAAAC,IAAA,EAAMlB;OAApD,sBAAgE,CAAA,EACtFS,QAAA,uBAAa,MAAuB,EAAA;MAAAQ,GAAA,EAAI;MAAOC,IAAM,EAAAhB,UAAA;MAAYkB,IAAK,EAAA;IAAA,CAAA,EAAhD,aAAgE,CAAA;EACzF,CAAA,CAAA;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../src/studio/NextStudioClientOnly.tsx","../../src/studio/NextStudioLayout.tsx","../../src/studio/NextStudio.tsx","../../src/studio/usePrefersColorScheme.ts"],"sourcesContent":["import {type ReactNode, startTransition, useEffect, useState} from 'react'\n\n/** @alpha */\nexport type NextStudioClientOnlyProps = {\n children: ReactNode\n fallback: ReactNode\n}\n\n/** @alpha */\nexport function NextStudioClientOnly({children, fallback}: NextStudioClientOnlyProps) {\n const [mounted, setMounted] = useState(false)\n useEffect(() => startTransition(() => setMounted(true)), [])\n\n return <>{mounted ? children : fallback}</>\n}\n","/* eslint-disable camelcase */\nimport {memo} from 'react'\nimport type {StudioProps} from 'sanity'\nimport styled from 'styled-components'\n\nimport {useTheme} from './useTheme'\n\n/** @alpha */\nexport interface NextStudioLayoutProps extends Pick<StudioProps, 'config' | 'scheme'> {\n children: React.ReactNode\n}\n\ntype LayoutProps = {\n $bg: string\n $fontFamily: string\n}\nconst Layout = styled.div<LayoutProps>`\n font-family: ${({$fontFamily}) => $fontFamily};\n background-color: ${({$bg}: any) => $bg};\n height: 100vh;\n max-height: 100dvh;\n overscroll-behavior: none;\n -webkit-font-smoothing: antialiased;\n overflow: auto;\n`\n\nconst NextStudioLayoutComponent = ({\n children,\n config,\n scheme = 'light',\n}: NextStudioLayoutProps) => {\n const theme = useTheme(config)\n\n return (\n <Layout\n data-ui=\"NextStudioLayout\"\n $fontFamily={theme.fonts.text.family}\n $bg={theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg}\n >\n {children}\n </Layout>\n )\n}\n\n/** @alpha */\nexport const NextStudioLayout = memo(NextStudioLayoutComponent)\n","import {memo} from 'react'\nimport {Studio, type StudioProps} from 'sanity'\n\nimport {NextStudioClientOnly} from './NextStudioClientOnly'\nimport {NextStudioLayout} from './NextStudioLayout'\nimport {NextStudioLoading} from './NextStudioLoading'\nimport {NextStudioNoScript} from './NextStudioNoScript'\n\nexport type {NextStudioLoadingProps} from './NextStudioLoading'\n\n/** @beta */\nexport interface NextStudioProps extends StudioProps {\n children?: React.ReactNode\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n /**\n * Render in a faster mode that requires `styled-components` SSR to be setup.\n * @defaultValue false\n * @alpha\n */\n unstable__fastRender?: boolean\n}\n/**\n * Intended to render at the root of a page, letting the Studio own that page and render much like it would if you used `npx sanity start` to render\n * It's a drop-in replacement for `import {Studio} from 'sanity'`\n */\nconst NextStudioComponent = ({\n children,\n config,\n unstable__noScript = true,\n unstable__fastRender,\n scheme,\n ...props\n}: NextStudioProps) => {\n if (unstable__fastRender) {\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </>\n )\n }\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioClientOnly\n fallback={\n <NextStudioLoading\n unstable__noScript={unstable__noScript}\n config={config}\n scheme={scheme}\n />\n }\n >\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </NextStudioClientOnly>\n </>\n )\n}\n\n/**\n * Override how the Studio renders by passing children.\n * This is useful for advanced use cases where you're using StudioProvider and StudioLayout instead of Studio:\n * ```\n * import {StudioProvider, StudioLayout} from 'sanity'\n * import {NextStudio} from 'next-sanity/studio'\n * <NextStudio config={config}>\n * <StudioProvider config={config}>\n * <CustomComponentThatUsesContextFromStudioProvider />\n * <StudioLayout />\n * </StudioProvider>\n * </NextStudio>\n * ```\n * @beta\n */\nexport const NextStudio = memo(NextStudioComponent)\n","/* eslint-disable @typescript-eslint/no-empty-function */\nimport type {ThemeColorSchemeKey} from '@sanity/ui'\nimport {useSyncExternalStore} from 'react'\n\nfunction createStore() {\n if (typeof document === 'undefined') {\n return {\n subscribe: () => () => {},\n getSnapshot: () => 'light' as const,\n getServerSnapshot: () => 'light' as const,\n }\n }\n\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)')\n\n return {\n subscribe: (onStoreChange: () => void) => {\n matchMedia.addEventListener('change', onStoreChange)\n return () => matchMedia.removeEventListener('change', onStoreChange)\n },\n getSnapshot: () => (matchMedia.matches ? 'dark' : 'light'),\n getServerSnapshot: () => 'light' as const,\n }\n}\nconst store = createStore()\n\n/** @alpha */\nexport function usePrefersColorScheme(): ThemeColorSchemeKey {\n return useSyncExternalStore(store.subscribe, store.getSnapshot, store.getServerSnapshot)\n}\n"],"names":["NextStudioClientOnly","_ref","children","fallback","mounted","setMounted","useState","useEffect","startTransition","jsx","Fragment","Layout","styled","default","div","_templateObject","_taggedTemplateLiteral","_ref2","$fontFamily","_ref3","$bg","NextStudioLayoutComponent","_ref4","config","scheme","theme","useTheme","fonts","text","family","color","base","bg","NextStudioLayout","memo","NextStudioComponent","_ref5","unstable__noScript","unstable__fastRender","props","jsxs","NextStudioNoScript","Studio","unstable_globalStyles","NextStudioLoading","NextStudio","createStore","document","subscribe","getSnapshot","getServerSnapshot","matchMedia","window","onStoreChange","addEventListener","removeEventListener","matches","store","usePrefersColorScheme","useSyncExternalStore"],"mappings":";;;;;;;;;;;;;;;;;;AASO,SAASA,oBAAqBA,CAAAC,IAAA,EAAiD;EAAA,IAAjD;IAACC,QAAU;IAAAC;GAAsC,GAAAF,IAAA;EACpF,MAAM,CAACG,OAAA,EAASC,UAAU,CAAA,GAAIC,eAAS,KAAK,CAAA;EAClCC,KAAA,CAAAA,SAAA,CAAA,MAAMC,KAAAA,CAAAA,gBAAgB,MAAMH,UAAA,CAAW,IAAI,CAAC,CAAA,EAAG,EAAE,CAAA;EAEpD,OAAAI,eAAAA,UAAAA,CAAAA,GAAA,CAAAC,UAAAA,CAAAA,QAAA,EAAA;IAAGR,QAAU,EAAAE,OAAA,GAAAF,QAAA,GAAWC;EAAS,CAAA,CAAA;AAC1C;ACEA,MAAMQ,SAASC,eAAO,CAAAC,OAAA,CAAAC,GAAA,CAAAC,eAAA,KAAAA,eAAA,GAAAC,sBAAA,8LACLC,KAAA;EAAA,IAAC;IAACC;EAAiB,CAAA,GAAAD,KAAA;EAAA,OAAAC,WAAA;AAAA,GACdC,KAAA;EAAA,IAAC;IAACC;EAAc,CAAA,GAAAD,KAAA;EAAA,OAAAC,GAAA;AAAA,EAAA;AAQtC,MAAMC,4BAA4BC,KAAA,IAIL;EAAA,IAJM;IACjCpB,QAAA;IACAqB,MAAA;IACAC,MAAS,GAAA;EACX,CAA6B,GAAAF,KAAA;EACrB,MAAAG,KAAA,GAAQC,2BAASH,MAAM,CAAA;EAG3B,sBAAAd,UAAA,CAAAA,GAAA,CAACE,MAAA,EAAA;IACC,SAAQ,EAAA,kBAAA;IACRO,WAAA,EAAaO,KAAM,CAAAE,KAAA,CAAMC,IAAK,CAAAC,MAAA;IAC9BT,GAAA,EAAKK,MAAMK,KAAM,CAAAN,MAAA,KAAW,SAAS,MAAS,GAAA,OAAO,CAAE,CAAAX,OAAA,CAAQkB,IAAK,CAAAC,EAAA;IAEnE9B;EAAA,CAAA,CACH;AAEJ,CAAA;AAGa,MAAA+B,gBAAA,GAAmBC,WAAKb,yBAAyB,CAAA;ACf9D,MAAMc,sBAAsBC,KAAA,IAOL;EAAA,IAPM;IAC3BlC,QAAA;IACAqB,MAAA;IACAc,kBAAqB,GAAA,IAAA;IACrBC,oBAAA;IACAd,MAAA;IACA,GAAGe;EACL,CAAuB,GAAAH,KAAA;EACrB,IAAIE,oBAAsB,EAAA;IACxB,sBAEKE,UAAA,CAAAA,IAAA,CAAA9B,mBAAA,EAAA;MAAAR,QAAA,EAAA,CAAAmC,kBAAA,kCAAuBI,iBAAmB,CAAAA,kBAAA,EAAA,EAAA,CAAA,EAAA,eAC1ChC,UAAA,CAAAA,GAAA,CAAAwB,gBAAA,EAAA;QAAiBV,MAAgB;QAAAC,MAAA;QAC/BtB,QACC,EAAAA,QAAA,mBAAAO,UAAA,CAAAA,GAAA,CAACiC,MAAO,CAAAA,MAAA,EAAA;UAAAnB,MAAA;UAAgBC,MAAgB;UAAAmB,qBAAA,EAAqB,IAAE;UAAA,GAAGJ;QAAO,CAAA;OAE7E,CAAA;IACF,CAAA,CAAA;EAEJ;EAEA,sBAEKC,UAAA,CAAAA,IAAA,CAAA9B,mBAAA,EAAA;IAAAR,QAAA,EAAA,CAAAmC,kBAAA,kCAAuBI,iBAAmB,CAAAA,kBAAA,EAAA,EAAA,CAAA,EAAA,eAC3ChC,UAAA,CAAAA,GAAA,CAACT,oBAAA,EAAA;MACCG,QACE,iBAAAM,UAAA,CAAAA,GAAA,CAACmC,iBAAA,CAAAA,iBAAA,EAAA;QACCP,kBAAA;QACAd,MAAA;QACAC;MAAA,CAAA
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../src/studio/NextStudioClientOnly.tsx","../../src/studio/NextStudioLayout.tsx","../../src/studio/NextStudio.tsx","../../src/studio/usePrefersColorScheme.ts"],"sourcesContent":["import {type ReactNode, startTransition, useEffect, useState} from 'react'\n\n/** @alpha */\nexport type NextStudioClientOnlyProps = {\n children: ReactNode\n fallback: ReactNode\n}\n\n/** @alpha */\nexport function NextStudioClientOnly({children, fallback}: NextStudioClientOnlyProps) {\n const [mounted, setMounted] = useState(false)\n useEffect(() => startTransition(() => setMounted(true)), [])\n\n return <>{mounted ? children : fallback}</>\n}\n","/* eslint-disable camelcase */\nimport {memo} from 'react'\nimport type {StudioProps} from 'sanity'\nimport styled from 'styled-components'\n\nimport {useTheme} from './useTheme'\n\n/** @alpha */\nexport interface NextStudioLayoutProps extends Pick<StudioProps, 'config' | 'scheme'> {\n children: React.ReactNode\n}\n\ntype LayoutProps = {\n $bg: string\n $fontFamily: string\n}\nconst Layout = styled.div<LayoutProps>`\n font-family: ${({$fontFamily}) => $fontFamily};\n background-color: ${({$bg}: any) => $bg};\n height: 100vh;\n max-height: 100dvh;\n overscroll-behavior: none;\n -webkit-font-smoothing: antialiased;\n overflow: auto;\n`\n\nconst NextStudioLayoutComponent = ({\n children,\n config,\n scheme = 'light',\n}: NextStudioLayoutProps) => {\n const theme = useTheme(config)\n\n return (\n <Layout\n data-ui=\"NextStudioLayout\"\n $fontFamily={theme.fonts.text.family}\n $bg={theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg}\n >\n {children}\n </Layout>\n )\n}\n\n/** @alpha */\nexport const NextStudioLayout = memo(NextStudioLayoutComponent)\n","import {memo} from 'react'\nimport {Studio, type StudioProps} from 'sanity'\n\nimport {NextStudioClientOnly} from './NextStudioClientOnly'\nimport {NextStudioLayout} from './NextStudioLayout'\nimport {NextStudioLoading} from './NextStudioLoading'\nimport {NextStudioNoScript} from './NextStudioNoScript'\n\nexport type {NextStudioLoadingProps} from './NextStudioLoading'\n\n/** @beta */\nexport interface NextStudioProps extends StudioProps {\n children?: React.ReactNode\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n /**\n * Render in a faster mode that requires `styled-components` SSR to be setup.\n * @defaultValue false\n * @alpha\n */\n unstable__fastRender?: boolean\n}\n/**\n * Intended to render at the root of a page, letting the Studio own that page and render much like it would if you used `npx sanity start` to render\n * It's a drop-in replacement for `import {Studio} from 'sanity'`\n */\nconst NextStudioComponent = ({\n children,\n config,\n unstable__noScript = true,\n unstable__fastRender,\n scheme,\n ...props\n}: NextStudioProps) => {\n if (unstable__fastRender) {\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </>\n )\n }\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioClientOnly\n fallback={\n <NextStudioLoading\n unstable__noScript={unstable__noScript}\n config={config}\n scheme={scheme}\n />\n }\n >\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </NextStudioClientOnly>\n </>\n )\n}\n\n/**\n * Override how the Studio renders by passing children.\n * This is useful for advanced use cases where you're using StudioProvider and StudioLayout instead of Studio:\n * ```\n * import {StudioProvider, StudioLayout} from 'sanity'\n * import {NextStudio} from 'next-sanity/studio'\n * <NextStudio config={config}>\n * <StudioProvider config={config}>\n * <CustomComponentThatUsesContextFromStudioProvider />\n * <StudioLayout />\n * </StudioProvider>\n * </NextStudio>\n * ```\n * @beta\n */\nexport const NextStudio = memo(NextStudioComponent)\n","/* eslint-disable @typescript-eslint/no-empty-function */\nimport type {ThemeColorSchemeKey} from '@sanity/ui'\nimport {useSyncExternalStore} from 'react'\n\nfunction createStore() {\n if (typeof document === 'undefined') {\n return {\n subscribe: () => () => {},\n getSnapshot: () => 'light' as const,\n getServerSnapshot: () => 'light' as const,\n }\n }\n\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)')\n\n return {\n subscribe: (onStoreChange: () => void) => {\n matchMedia.addEventListener('change', onStoreChange)\n return () => matchMedia.removeEventListener('change', onStoreChange)\n },\n getSnapshot: () => (matchMedia.matches ? 'dark' : 'light'),\n getServerSnapshot: () => 'light' as const,\n }\n}\nconst store = createStore()\n\n/** @alpha */\nexport function usePrefersColorScheme(): ThemeColorSchemeKey {\n return useSyncExternalStore(store.subscribe, store.getSnapshot, store.getServerSnapshot)\n}\n"],"names":["NextStudioClientOnly","_ref","children","fallback","mounted","setMounted","useState","useEffect","startTransition","jsx","Fragment","Layout","styled","default","div","_templateObject","_taggedTemplateLiteral","_ref2","$fontFamily","_ref3","$bg","NextStudioLayoutComponent","_ref4","config","scheme","theme","useTheme","fonts","text","family","color","base","bg","NextStudioLayout","memo","NextStudioComponent","_ref5","unstable__noScript","unstable__fastRender","props","jsxs","NextStudioNoScript","Studio","unstable_globalStyles","NextStudioLoading","NextStudio","createStore","document","subscribe","getSnapshot","getServerSnapshot","matchMedia","window","onStoreChange","addEventListener","removeEventListener","matches","store","usePrefersColorScheme","useSyncExternalStore"],"mappings":"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"}
|
package/dist/studio/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/studio/NextStudioClientOnly.tsx","../../src/studio/NextStudioLayout.tsx","../../src/studio/NextStudio.tsx","../../src/studio/usePrefersColorScheme.ts"],"sourcesContent":["import {type ReactNode, startTransition, useEffect, useState} from 'react'\n\n/** @alpha */\nexport type NextStudioClientOnlyProps = {\n children: ReactNode\n fallback: ReactNode\n}\n\n/** @alpha */\nexport function NextStudioClientOnly({children, fallback}: NextStudioClientOnlyProps) {\n const [mounted, setMounted] = useState(false)\n useEffect(() => startTransition(() => setMounted(true)), [])\n\n return <>{mounted ? children : fallback}</>\n}\n","/* eslint-disable camelcase */\nimport {memo} from 'react'\nimport type {StudioProps} from 'sanity'\nimport styled from 'styled-components'\n\nimport {useTheme} from './useTheme'\n\n/** @alpha */\nexport interface NextStudioLayoutProps extends Pick<StudioProps, 'config' | 'scheme'> {\n children: React.ReactNode\n}\n\ntype LayoutProps = {\n $bg: string\n $fontFamily: string\n}\nconst Layout = styled.div<LayoutProps>`\n font-family: ${({$fontFamily}) => $fontFamily};\n background-color: ${({$bg}: any) => $bg};\n height: 100vh;\n max-height: 100dvh;\n overscroll-behavior: none;\n -webkit-font-smoothing: antialiased;\n overflow: auto;\n`\n\nconst NextStudioLayoutComponent = ({\n children,\n config,\n scheme = 'light',\n}: NextStudioLayoutProps) => {\n const theme = useTheme(config)\n\n return (\n <Layout\n data-ui=\"NextStudioLayout\"\n $fontFamily={theme.fonts.text.family}\n $bg={theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg}\n >\n {children}\n </Layout>\n )\n}\n\n/** @alpha */\nexport const NextStudioLayout = memo(NextStudioLayoutComponent)\n","import {memo} from 'react'\nimport {Studio, type StudioProps} from 'sanity'\n\nimport {NextStudioClientOnly} from './NextStudioClientOnly'\nimport {NextStudioLayout} from './NextStudioLayout'\nimport {NextStudioLoading} from './NextStudioLoading'\nimport {NextStudioNoScript} from './NextStudioNoScript'\n\nexport type {NextStudioLoadingProps} from './NextStudioLoading'\n\n/** @beta */\nexport interface NextStudioProps extends StudioProps {\n children?: React.ReactNode\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n /**\n * Render in a faster mode that requires `styled-components` SSR to be setup.\n * @defaultValue false\n * @alpha\n */\n unstable__fastRender?: boolean\n}\n/**\n * Intended to render at the root of a page, letting the Studio own that page and render much like it would if you used `npx sanity start` to render\n * It's a drop-in replacement for `import {Studio} from 'sanity'`\n */\nconst NextStudioComponent = ({\n children,\n config,\n unstable__noScript = true,\n unstable__fastRender,\n scheme,\n ...props\n}: NextStudioProps) => {\n if (unstable__fastRender) {\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </>\n )\n }\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioClientOnly\n fallback={\n <NextStudioLoading\n unstable__noScript={unstable__noScript}\n config={config}\n scheme={scheme}\n />\n }\n >\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </NextStudioClientOnly>\n </>\n )\n}\n\n/**\n * Override how the Studio renders by passing children.\n * This is useful for advanced use cases where you're using StudioProvider and StudioLayout instead of Studio:\n * ```\n * import {StudioProvider, StudioLayout} from 'sanity'\n * import {NextStudio} from 'next-sanity/studio'\n * <NextStudio config={config}>\n * <StudioProvider config={config}>\n * <CustomComponentThatUsesContextFromStudioProvider />\n * <StudioLayout />\n * </StudioProvider>\n * </NextStudio>\n * ```\n * @beta\n */\nexport const NextStudio = memo(NextStudioComponent)\n","/* eslint-disable @typescript-eslint/no-empty-function */\nimport type {ThemeColorSchemeKey} from '@sanity/ui'\nimport {useSyncExternalStore} from 'react'\n\nfunction createStore() {\n if (typeof document === 'undefined') {\n return {\n subscribe: () => () => {},\n getSnapshot: () => 'light' as const,\n getServerSnapshot: () => 'light' as const,\n }\n }\n\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)')\n\n return {\n subscribe: (onStoreChange: () => void) => {\n matchMedia.addEventListener('change', onStoreChange)\n return () => matchMedia.removeEventListener('change', onStoreChange)\n },\n getSnapshot: () => (matchMedia.matches ? 'dark' : 'light'),\n getServerSnapshot: () => 'light' as const,\n }\n}\nconst store = createStore()\n\n/** @alpha */\nexport function usePrefersColorScheme(): ThemeColorSchemeKey {\n return useSyncExternalStore(store.subscribe, store.getSnapshot, store.getServerSnapshot)\n}\n"],"names":["NextStudioClientOnly","_ref","children","fallback","mounted","setMounted","useState","useEffect","startTransition","jsx","Fragment","Layout","styled","div","_templateObject","_taggedTemplateLiteral","_ref2","$fontFamily","_ref3","$bg","NextStudioLayoutComponent","_ref4","config","scheme","theme","useTheme","fonts","text","family","color","default","base","bg","NextStudioLayout","memo","NextStudioComponent","_ref5","unstable__noScript","unstable__fastRender","props","jsxs","NextStudioNoScript","Studio","unstable_globalStyles","NextStudioLoading","NextStudio","createStore","document","subscribe","getSnapshot","getServerSnapshot","matchMedia","window","onStoreChange","addEventListener","removeEventListener","matches","store","usePrefersColorScheme","useSyncExternalStore"],"mappings":";;;;;;;AASO,SAASA,oBAAqBA,CAAAC,IAAA,EAAiD;EAAA,IAAjD;IAACC,QAAU;IAAAC;GAAsC,GAAAF,IAAA;EACpF,MAAM,CAACG,OAAA,EAASC,UAAU,CAAA,GAAIC,SAAS,KAAK,CAAA;EAClCC,SAAA,CAAA,MAAMC,gBAAgB,MAAMH,UAAA,CAAW,IAAI,CAAC,CAAA,EAAG,EAAE,CAAA;EAEpD,OAAA,eAAAI,GAAA,CAAAC,QAAA,EAAA;IAAGR,QAAU,EAAAE,OAAA,GAAAF,QAAA,GAAWC;EAAS,CAAA,CAAA;AAC1C;ACEA,MAAMQ,SAASC,MAAO,CAAAC,GAAA,CAAAC,eAAA,KAAAA,eAAA,GAAAC,sBAAA,8LACLC,KAAA;EAAA,IAAC;IAACC;EAAiB,CAAA,GAAAD,KAAA;EAAA,OAAAC,WAAA;AAAA,GACdC,KAAA;EAAA,IAAC;IAACC;EAAc,CAAA,GAAAD,KAAA;EAAA,OAAAC,GAAA;AAAA,EAAA;AAQtC,MAAMC,4BAA4BC,KAAA,IAIL;EAAA,IAJM;IACjCnB,QAAA;IACAoB,MAAA;IACAC,MAAS,GAAA;EACX,CAA6B,GAAAF,KAAA;EACrB,MAAAG,KAAA,GAAQC,SAASH,MAAM,CAAA;EAG3B,sBAAAb,GAAA,CAACE,MAAA,EAAA;IACC,SAAQ,EAAA,kBAAA;IACRM,WAAA,EAAaO,KAAM,CAAAE,KAAA,CAAMC,IAAK,CAAAC,MAAA;IAC9BT,GAAA,EAAKK,MAAMK,KAAM,CAAAN,MAAA,KAAW,SAAS,MAAS,GAAA,OAAO,CAAE,CAAAO,OAAA,CAAQC,IAAK,CAAAC,EAAA;IAEnE9B;EAAA,CAAA,CACH;AAEJ,CAAA;AAGa,MAAA+B,gBAAA,GAAmBC,KAAKd,yBAAyB,CAAA;ACf9D,MAAMe,sBAAsBC,KAAA,IAOL;EAAA,IAPM;IAC3BlC,QAAA;IACAoB,MAAA;IACAe,kBAAqB,GAAA,IAAA;IACrBC,oBAAA;IACAf,MAAA;IACA,GAAGgB;EACL,CAAuB,GAAAH,KAAA;EACrB,IAAIE,oBAAsB,EAAA;IACxB,sBAEKE,IAAA,CAAA9B,QAAA,EAAA;MAAAR,QAAA,EAAA,CAAAmC,kBAAA,uBAAuBI,kBAAmB,EAAA,EAAA,CAAA,EAAA,eAC1ChC,GAAA,CAAAwB,gBAAA,EAAA;QAAiBX,MAAgB;QAAAC,MAAA;QAC/BrB,QACC,EAAAA,QAAA,mBAAAO,GAAA,CAACiC,MAAO,EAAA;UAAApB,MAAA;UAAgBC,MAAgB;UAAAoB,qBAAA,EAAqB,IAAE;UAAA,GAAGJ;QAAO,CAAA;OAE7E,CAAA;IACF,CAAA,CAAA;EAEJ;EAEA,sBAEKC,IAAA,CAAA9B,QAAA,EAAA;IAAAR,QAAA,EAAA,CAAAmC,kBAAA,uBAAuBI,kBAAmB,EAAA,EAAA,CAAA,EAAA,eAC3ChC,GAAA,CAACT,oBAAA,EAAA;MACCG,QACE,iBAAAM,GAAA,CAACmC,iBAAA,EAAA;QACCP,kBAAA;QACAf,MAAA;QACAC;MAAA,CAAA
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/studio/NextStudioClientOnly.tsx","../../src/studio/NextStudioLayout.tsx","../../src/studio/NextStudio.tsx","../../src/studio/usePrefersColorScheme.ts"],"sourcesContent":["import {type ReactNode, startTransition, useEffect, useState} from 'react'\n\n/** @alpha */\nexport type NextStudioClientOnlyProps = {\n children: ReactNode\n fallback: ReactNode\n}\n\n/** @alpha */\nexport function NextStudioClientOnly({children, fallback}: NextStudioClientOnlyProps) {\n const [mounted, setMounted] = useState(false)\n useEffect(() => startTransition(() => setMounted(true)), [])\n\n return <>{mounted ? children : fallback}</>\n}\n","/* eslint-disable camelcase */\nimport {memo} from 'react'\nimport type {StudioProps} from 'sanity'\nimport styled from 'styled-components'\n\nimport {useTheme} from './useTheme'\n\n/** @alpha */\nexport interface NextStudioLayoutProps extends Pick<StudioProps, 'config' | 'scheme'> {\n children: React.ReactNode\n}\n\ntype LayoutProps = {\n $bg: string\n $fontFamily: string\n}\nconst Layout = styled.div<LayoutProps>`\n font-family: ${({$fontFamily}) => $fontFamily};\n background-color: ${({$bg}: any) => $bg};\n height: 100vh;\n max-height: 100dvh;\n overscroll-behavior: none;\n -webkit-font-smoothing: antialiased;\n overflow: auto;\n`\n\nconst NextStudioLayoutComponent = ({\n children,\n config,\n scheme = 'light',\n}: NextStudioLayoutProps) => {\n const theme = useTheme(config)\n\n return (\n <Layout\n data-ui=\"NextStudioLayout\"\n $fontFamily={theme.fonts.text.family}\n $bg={theme.color[scheme === 'dark' ? 'dark' : 'light'].default.base.bg}\n >\n {children}\n </Layout>\n )\n}\n\n/** @alpha */\nexport const NextStudioLayout = memo(NextStudioLayoutComponent)\n","import {memo} from 'react'\nimport {Studio, type StudioProps} from 'sanity'\n\nimport {NextStudioClientOnly} from './NextStudioClientOnly'\nimport {NextStudioLayout} from './NextStudioLayout'\nimport {NextStudioLoading} from './NextStudioLoading'\nimport {NextStudioNoScript} from './NextStudioNoScript'\n\nexport type {NextStudioLoadingProps} from './NextStudioLoading'\n\n/** @beta */\nexport interface NextStudioProps extends StudioProps {\n children?: React.ReactNode\n /**\n * Render the <noscript> tag\n * @defaultValue true\n * @alpha\n */\n unstable__noScript?: boolean\n /**\n * Render in a faster mode that requires `styled-components` SSR to be setup.\n * @defaultValue false\n * @alpha\n */\n unstable__fastRender?: boolean\n}\n/**\n * Intended to render at the root of a page, letting the Studio own that page and render much like it would if you used `npx sanity start` to render\n * It's a drop-in replacement for `import {Studio} from 'sanity'`\n */\nconst NextStudioComponent = ({\n children,\n config,\n unstable__noScript = true,\n unstable__fastRender,\n scheme,\n ...props\n}: NextStudioProps) => {\n if (unstable__fastRender) {\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </>\n )\n }\n\n return (\n <>\n {unstable__noScript && <NextStudioNoScript />}\n <NextStudioClientOnly\n fallback={\n <NextStudioLoading\n unstable__noScript={unstable__noScript}\n config={config}\n scheme={scheme}\n />\n }\n >\n <NextStudioLayout config={config} scheme={scheme}>\n {children || (\n <Studio config={config} scheme={scheme} unstable_globalStyles {...props} />\n )}\n </NextStudioLayout>\n </NextStudioClientOnly>\n </>\n )\n}\n\n/**\n * Override how the Studio renders by passing children.\n * This is useful for advanced use cases where you're using StudioProvider and StudioLayout instead of Studio:\n * ```\n * import {StudioProvider, StudioLayout} from 'sanity'\n * import {NextStudio} from 'next-sanity/studio'\n * <NextStudio config={config}>\n * <StudioProvider config={config}>\n * <CustomComponentThatUsesContextFromStudioProvider />\n * <StudioLayout />\n * </StudioProvider>\n * </NextStudio>\n * ```\n * @beta\n */\nexport const NextStudio = memo(NextStudioComponent)\n","/* eslint-disable @typescript-eslint/no-empty-function */\nimport type {ThemeColorSchemeKey} from '@sanity/ui'\nimport {useSyncExternalStore} from 'react'\n\nfunction createStore() {\n if (typeof document === 'undefined') {\n return {\n subscribe: () => () => {},\n getSnapshot: () => 'light' as const,\n getServerSnapshot: () => 'light' as const,\n }\n }\n\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)')\n\n return {\n subscribe: (onStoreChange: () => void) => {\n matchMedia.addEventListener('change', onStoreChange)\n return () => matchMedia.removeEventListener('change', onStoreChange)\n },\n getSnapshot: () => (matchMedia.matches ? 'dark' : 'light'),\n getServerSnapshot: () => 'light' as const,\n }\n}\nconst store = createStore()\n\n/** @alpha */\nexport function usePrefersColorScheme(): ThemeColorSchemeKey {\n return useSyncExternalStore(store.subscribe, store.getSnapshot, store.getServerSnapshot)\n}\n"],"names":["NextStudioClientOnly","_ref","children","fallback","mounted","setMounted","useState","useEffect","startTransition","jsx","Fragment","Layout","styled","div","_templateObject","_taggedTemplateLiteral","_ref2","$fontFamily","_ref3","$bg","NextStudioLayoutComponent","_ref4","config","scheme","theme","useTheme","fonts","text","family","color","default","base","bg","NextStudioLayout","memo","NextStudioComponent","_ref5","unstable__noScript","unstable__fastRender","props","jsxs","NextStudioNoScript","Studio","unstable_globalStyles","NextStudioLoading","NextStudio","createStore","document","subscribe","getSnapshot","getServerSnapshot","matchMedia","window","onStoreChange","addEventListener","removeEventListener","matches","store","usePrefersColorScheme","useSyncExternalStore"],"mappings":"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"}
|
package/dist/studio/loading.d.ts
CHANGED
package/dist/webhook.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.cjs","sources":["../src/webhook/config.ts","../src/webhook/readBody.ts","../src/webhook/parseBody.ts"],"sourcesContent":["import type {PageConfig} from 'next/types'\n\n/**\n * Configurates the API function with the right runtime and body parsing to handle Sanity Webhook events.\n * @public\n */\nexport const config: PageConfig = {\n api: {\n /**\n * Next.js will by default parse the body, which can lead to invalid signatures.\n */\n bodyParser: false,\n },\n /**\n * `@sanity/webhook` isn't updated to support the edge runtime yet, and currently requires Node.js APIs such as Buffer.\n */\n runtime: 'nodejs',\n}\n","import type {NextApiRequest} from 'next'\n\n/** @internal */\nexport async function _readBody(readable: NextApiRequest): Promise<string> {\n const chunks = []\n for await (const chunk of readable) {\n chunks.push(typeof chunk === 'string' ? Buffer.from(chunk) : chunk)\n }\n return Buffer.concat(chunks).toString('utf8')\n}\n","import type {SanityDocument} from '@sanity/types'\nimport sanityWebhook from '@sanity/webhook'\nimport type {NextApiRequest} from 'next'\n\n// As `@sanity/webhook` isn't shipping ESM, extracting from the default export have the best ecosystem support\nconst {isValidSignature, SIGNATURE_HEADER_NAME} = sanityWebhook\n\nimport {_readBody as readBody} from './readBody'\n\n/** @public */\nexport type ParseBody = {\n /**\n * If a secret is given then it returns a boolean. If no secret is provided then no validation is done on the signature, and it'll return `null`\n */\n isValidSignature: boolean | null\n body: SanityDocument\n}\n/**\n * Handles parsing the body JSON, and validating its signature. Also waits for Content Lake eventual consistency so you can run your queries\n * without worrying about getting stale data.\n * @public\n */\nexport async function parseBody(\n req: NextApiRequest,\n secret?: string,\n waitForContentLakeEventualConsistency: boolean = true\n): Promise<ParseBody> {\n let signature = req.headers[SIGNATURE_HEADER_NAME]!\n if (Array.isArray(signature)) {\n signature = signature[0]\n }\n\n const body = await readBody(req)\n const validSignature = secret ? isValidSignature(body, signature, secret.trim()) : null\n\n if (validSignature !== false && waitForContentLakeEventualConsistency) {\n await new Promise((resolve) => setTimeout(resolve, 1000))\n }\n\n return {\n body: body.trim() && JSON.parse(body),\n isValidSignature: validSignature,\n }\n}\n"],"names":["config","api","bodyParser","runtime","_readBody","readable","chunks","chunk","push","Buffer","from","concat","toString","isValidSignature","SIGNATURE_HEADER_NAME","sanityWebhook","parseBody","req","secret","waitForContentLakeEventualConsistency","arguments","length","undefined","signature","headers","Array","isArray","body","readBody","validSignature","trim","Promise","resolve","setTimeout","JSON","parse"],"mappings":";;;;;;;;;;;;AAMO,MAAMA,MAAqB,GAAA;EAChCC,GAAK,EAAA;IAAA;AAAA;AAAA;IAIHC,UAAY,EAAA;EACd,CAAA;EAAA;AAAA;AAAA;EAIAC,OAAS,EAAA;AACX,CAAA;ACdA,eAAsBC,UAAUC,QAA2C,EAAA;EACzE,MAAMC,SAAS,EAAC;EAChB,WAAA,MAAiBC,SAASF,QAAU,EAAA;IAC3BC,MAAA,CAAAE,IAAA,CAAK,OAAOD,KAAU,KAAA,QAAA,GAAWE,OAAOC,IAAK,CAAAH,KAAK,IAAIA,KAAK,CAAA;EACpE;EACA,OAAOE,MAAO,CAAAE,MAAA,CAAOL,MAAM,CAAA,CAAEM,SAAS,MAAM,CAAA;AAC9C;ACJA,MAAM;EAACC,gBAAkB;EAAAC;AAAyB,CAAA,GAAAC,8BAAA;AAiBlD,eAAsBC,SACpBA,CAAAC,GAAA,EACAC,MACA,EACoB;EAAA,IADpBC,qCAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAiD,IAC7B;EAChB,IAAAG,SAAA,GAAYN,GAAI,CAAAO,OAAA,CAAQV,qBAAqB,CAAA;EAC7C,IAAAW,KAAA,CAAMC,OAAQ,CAAAH,SAAS,CAAG,EAAA;IAC5BA,SAAA,GAAYA,UAAU,CAAC,CAAA;EACzB;EAEM,MAAAI,IAAA,GAAO,MAAMC,SAAA,CAASX,GAAG,CAAA;EACzB,MAAAY,cAAA,GAAiBX,SAASL,gBAAiB,CAAAc,IAAA,EAAMJ,WAAWL,MAAO,CAAAY,IAAA,EAAM,CAAI,GAAA,IAAA;EAE/E,IAAAD,cAAA,KAAmB,SAASV,qCAAuC,EAAA;IACrE,MAAM,IAAIY,OAAQ,CAACC,WAAYC,UAAW,CAAAD,OAAA,EAAS,GAAI,CAAC,CAAA;EAC1D;EAEO,OAAA;IACLL,MAAMA,IAAK,CAAAG,IAAA,
|
|
1
|
+
{"version":3,"file":"webhook.cjs","sources":["../src/webhook/config.ts","../src/webhook/readBody.ts","../src/webhook/parseBody.ts"],"sourcesContent":["import type {PageConfig} from 'next/types'\n\n/**\n * Configurates the API function with the right runtime and body parsing to handle Sanity Webhook events.\n * @public\n */\nexport const config: PageConfig = {\n api: {\n /**\n * Next.js will by default parse the body, which can lead to invalid signatures.\n */\n bodyParser: false,\n },\n /**\n * `@sanity/webhook` isn't updated to support the edge runtime yet, and currently requires Node.js APIs such as Buffer.\n */\n runtime: 'nodejs',\n}\n","import type {NextApiRequest} from 'next'\n\n/** @internal */\nexport async function _readBody(readable: NextApiRequest): Promise<string> {\n const chunks = []\n for await (const chunk of readable) {\n chunks.push(typeof chunk === 'string' ? Buffer.from(chunk) : chunk)\n }\n return Buffer.concat(chunks).toString('utf8')\n}\n","import type {SanityDocument} from '@sanity/types'\nimport sanityWebhook from '@sanity/webhook'\nimport type {NextApiRequest} from 'next'\n\n// As `@sanity/webhook` isn't shipping ESM, extracting from the default export have the best ecosystem support\nconst {isValidSignature, SIGNATURE_HEADER_NAME} = sanityWebhook\n\nimport {_readBody as readBody} from './readBody'\n\n/** @public */\nexport type ParseBody = {\n /**\n * If a secret is given then it returns a boolean. If no secret is provided then no validation is done on the signature, and it'll return `null`\n */\n isValidSignature: boolean | null\n body: SanityDocument\n}\n/**\n * Handles parsing the body JSON, and validating its signature. Also waits for Content Lake eventual consistency so you can run your queries\n * without worrying about getting stale data.\n * @public\n */\nexport async function parseBody(\n req: NextApiRequest,\n secret?: string,\n waitForContentLakeEventualConsistency: boolean = true\n): Promise<ParseBody> {\n let signature = req.headers[SIGNATURE_HEADER_NAME]!\n if (Array.isArray(signature)) {\n signature = signature[0]\n }\n\n const body = await readBody(req)\n const validSignature = secret ? isValidSignature(body, signature, secret.trim()) : null\n\n if (validSignature !== false && waitForContentLakeEventualConsistency) {\n await new Promise((resolve) => setTimeout(resolve, 1000))\n }\n\n return {\n body: body.trim() && JSON.parse(body),\n isValidSignature: validSignature,\n }\n}\n"],"names":["config","api","bodyParser","runtime","_readBody","readable","chunks","chunk","push","Buffer","from","concat","toString","isValidSignature","SIGNATURE_HEADER_NAME","sanityWebhook","parseBody","req","secret","waitForContentLakeEventualConsistency","arguments","length","undefined","signature","headers","Array","isArray","body","readBody","validSignature","trim","Promise","resolve","setTimeout","JSON","parse"],"mappings":";;;;;;;;;;;;AAMO,MAAMA,MAAqB,GAAA;EAChCC,GAAK,EAAA;IAAA;AAAA;AAAA;IAIHC,UAAY,EAAA;EACd,CAAA;EAAA;AAAA;AAAA;EAIAC,OAAS,EAAA;AACX,CAAA;ACdA,eAAsBC,UAAUC,QAA2C,EAAA;EACzE,MAAMC,SAAS,EAAC;EAChB,WAAA,MAAiBC,SAASF,QAAU,EAAA;IAC3BC,MAAA,CAAAE,IAAA,CAAK,OAAOD,KAAU,KAAA,QAAA,GAAWE,OAAOC,IAAK,CAAAH,KAAK,IAAIA,KAAK,CAAA;EACpE;EACA,OAAOE,MAAO,CAAAE,MAAA,CAAOL,MAAM,CAAA,CAAEM,SAAS,MAAM,CAAA;AAC9C;ACJA,MAAM;EAACC,gBAAkB;EAAAC;AAAyB,CAAA,GAAAC,8BAAA;AAiBlD,eAAsBC,SACpBA,CAAAC,GAAA,EACAC,MACA,EACoB;EAAA,IADpBC,qCAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAiD,IAC7B;EAChB,IAAAG,SAAA,GAAYN,GAAI,CAAAO,OAAA,CAAQV,qBAAqB,CAAA;EAC7C,IAAAW,KAAA,CAAMC,OAAQ,CAAAH,SAAS,CAAG,EAAA;IAC5BA,SAAA,GAAYA,UAAU,CAAC,CAAA;EACzB;EAEM,MAAAI,IAAA,GAAO,MAAMC,SAAA,CAASX,GAAG,CAAA;EACzB,MAAAY,cAAA,GAAiBX,SAASL,gBAAiB,CAAAc,IAAA,EAAMJ,WAAWL,MAAO,CAAAY,IAAA,EAAM,CAAI,GAAA,IAAA;EAE/E,IAAAD,cAAA,KAAmB,SAASV,qCAAuC,EAAA;IACrE,MAAM,IAAIY,OAAQ,CAACC,WAAYC,UAAW,CAAAD,OAAA,EAAS,GAAI,CAAC,CAAA;EAC1D;EAEO,OAAA;IACLL,MAAMA,IAAK,CAAAG,IAAA,CAAA,CAAU,IAAAI,IAAA,CAAKC,MAAMR,IAAI,CAAA;IACpCd,gBAAkB,EAAAgB;EAAA,CACpB;AACF;;"}
|
package/dist/webhook.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.js","sources":["../src/webhook/config.ts","../src/webhook/readBody.ts","../src/webhook/parseBody.ts"],"sourcesContent":["import type {PageConfig} from 'next/types'\n\n/**\n * Configurates the API function with the right runtime and body parsing to handle Sanity Webhook events.\n * @public\n */\nexport const config: PageConfig = {\n api: {\n /**\n * Next.js will by default parse the body, which can lead to invalid signatures.\n */\n bodyParser: false,\n },\n /**\n * `@sanity/webhook` isn't updated to support the edge runtime yet, and currently requires Node.js APIs such as Buffer.\n */\n runtime: 'nodejs',\n}\n","import type {NextApiRequest} from 'next'\n\n/** @internal */\nexport async function _readBody(readable: NextApiRequest): Promise<string> {\n const chunks = []\n for await (const chunk of readable) {\n chunks.push(typeof chunk === 'string' ? Buffer.from(chunk) : chunk)\n }\n return Buffer.concat(chunks).toString('utf8')\n}\n","import type {SanityDocument} from '@sanity/types'\nimport sanityWebhook from '@sanity/webhook'\nimport type {NextApiRequest} from 'next'\n\n// As `@sanity/webhook` isn't shipping ESM, extracting from the default export have the best ecosystem support\nconst {isValidSignature, SIGNATURE_HEADER_NAME} = sanityWebhook\n\nimport {_readBody as readBody} from './readBody'\n\n/** @public */\nexport type ParseBody = {\n /**\n * If a secret is given then it returns a boolean. If no secret is provided then no validation is done on the signature, and it'll return `null`\n */\n isValidSignature: boolean | null\n body: SanityDocument\n}\n/**\n * Handles parsing the body JSON, and validating its signature. Also waits for Content Lake eventual consistency so you can run your queries\n * without worrying about getting stale data.\n * @public\n */\nexport async function parseBody(\n req: NextApiRequest,\n secret?: string,\n waitForContentLakeEventualConsistency: boolean = true\n): Promise<ParseBody> {\n let signature = req.headers[SIGNATURE_HEADER_NAME]!\n if (Array.isArray(signature)) {\n signature = signature[0]\n }\n\n const body = await readBody(req)\n const validSignature = secret ? isValidSignature(body, signature, secret.trim()) : null\n\n if (validSignature !== false && waitForContentLakeEventualConsistency) {\n await new Promise((resolve) => setTimeout(resolve, 1000))\n }\n\n return {\n body: body.trim() && JSON.parse(body),\n isValidSignature: validSignature,\n }\n}\n"],"names":["config","api","bodyParser","runtime","_readBody","readable","chunks","chunk","push","Buffer","from","concat","toString","isValidSignature","SIGNATURE_HEADER_NAME","sanityWebhook","parseBody","req","secret","waitForContentLakeEventualConsistency","arguments","length","undefined","signature","headers","Array","isArray","body","readBody","validSignature","trim","Promise","resolve","setTimeout","JSON","parse"],"mappings":";AAMO,MAAMA,MAAqB,GAAA;EAChCC,GAAK,EAAA;IAAA;AAAA;AAAA;IAIHC,UAAY,EAAA;EACd,CAAA;EAAA;AAAA;AAAA;EAIAC,OAAS,EAAA;AACX,CAAA;ACdA,eAAsBC,UAAUC,QAA2C,EAAA;EACzE,MAAMC,SAAS,EAAC;EAChB,WAAA,MAAiBC,SAASF,QAAU,EAAA;IAC3BC,MAAA,CAAAE,IAAA,CAAK,OAAOD,KAAU,KAAA,QAAA,GAAWE,OAAOC,IAAK,CAAAH,KAAK,IAAIA,KAAK,CAAA;EACpE;EACA,OAAOE,MAAO,CAAAE,MAAA,CAAOL,MAAM,CAAA,CAAEM,SAAS,MAAM,CAAA;AAC9C;ACJA,MAAM;EAACC,gBAAkB;EAAAC;AAAyB,CAAA,GAAAC,aAAA;AAiBlD,eAAsBC,SACpBA,CAAAC,GAAA,EACAC,MACA,EACoB;EAAA,IADpBC,qCAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAiD,IAC7B;EAChB,IAAAG,SAAA,GAAYN,GAAI,CAAAO,OAAA,CAAQV,qBAAqB,CAAA;EAC7C,IAAAW,KAAA,CAAMC,OAAQ,CAAAH,SAAS,CAAG,EAAA;IAC5BA,SAAA,GAAYA,UAAU,CAAC,CAAA;EACzB;EAEM,MAAAI,IAAA,GAAO,MAAMC,SAAA,CAASX,GAAG,CAAA;EACzB,MAAAY,cAAA,GAAiBX,SAASL,gBAAiB,CAAAc,IAAA,EAAMJ,WAAWL,MAAO,CAAAY,IAAA,EAAM,CAAI,GAAA,IAAA;EAE/E,IAAAD,cAAA,KAAmB,SAASV,qCAAuC,EAAA;IACrE,MAAM,IAAIY,OAAQ,CAACC,WAAYC,UAAW,CAAAD,OAAA,EAAS,GAAI,CAAC,CAAA;EAC1D;EAEO,OAAA;IACLL,MAAMA,IAAK,CAAAG,IAAA,
|
|
1
|
+
{"version":3,"file":"webhook.js","sources":["../src/webhook/config.ts","../src/webhook/readBody.ts","../src/webhook/parseBody.ts"],"sourcesContent":["import type {PageConfig} from 'next/types'\n\n/**\n * Configurates the API function with the right runtime and body parsing to handle Sanity Webhook events.\n * @public\n */\nexport const config: PageConfig = {\n api: {\n /**\n * Next.js will by default parse the body, which can lead to invalid signatures.\n */\n bodyParser: false,\n },\n /**\n * `@sanity/webhook` isn't updated to support the edge runtime yet, and currently requires Node.js APIs such as Buffer.\n */\n runtime: 'nodejs',\n}\n","import type {NextApiRequest} from 'next'\n\n/** @internal */\nexport async function _readBody(readable: NextApiRequest): Promise<string> {\n const chunks = []\n for await (const chunk of readable) {\n chunks.push(typeof chunk === 'string' ? Buffer.from(chunk) : chunk)\n }\n return Buffer.concat(chunks).toString('utf8')\n}\n","import type {SanityDocument} from '@sanity/types'\nimport sanityWebhook from '@sanity/webhook'\nimport type {NextApiRequest} from 'next'\n\n// As `@sanity/webhook` isn't shipping ESM, extracting from the default export have the best ecosystem support\nconst {isValidSignature, SIGNATURE_HEADER_NAME} = sanityWebhook\n\nimport {_readBody as readBody} from './readBody'\n\n/** @public */\nexport type ParseBody = {\n /**\n * If a secret is given then it returns a boolean. If no secret is provided then no validation is done on the signature, and it'll return `null`\n */\n isValidSignature: boolean | null\n body: SanityDocument\n}\n/**\n * Handles parsing the body JSON, and validating its signature. Also waits for Content Lake eventual consistency so you can run your queries\n * without worrying about getting stale data.\n * @public\n */\nexport async function parseBody(\n req: NextApiRequest,\n secret?: string,\n waitForContentLakeEventualConsistency: boolean = true\n): Promise<ParseBody> {\n let signature = req.headers[SIGNATURE_HEADER_NAME]!\n if (Array.isArray(signature)) {\n signature = signature[0]\n }\n\n const body = await readBody(req)\n const validSignature = secret ? isValidSignature(body, signature, secret.trim()) : null\n\n if (validSignature !== false && waitForContentLakeEventualConsistency) {\n await new Promise((resolve) => setTimeout(resolve, 1000))\n }\n\n return {\n body: body.trim() && JSON.parse(body),\n isValidSignature: validSignature,\n }\n}\n"],"names":["config","api","bodyParser","runtime","_readBody","readable","chunks","chunk","push","Buffer","from","concat","toString","isValidSignature","SIGNATURE_HEADER_NAME","sanityWebhook","parseBody","req","secret","waitForContentLakeEventualConsistency","arguments","length","undefined","signature","headers","Array","isArray","body","readBody","validSignature","trim","Promise","resolve","setTimeout","JSON","parse"],"mappings":";AAMO,MAAMA,MAAqB,GAAA;EAChCC,GAAK,EAAA;IAAA;AAAA;AAAA;IAIHC,UAAY,EAAA;EACd,CAAA;EAAA;AAAA;AAAA;EAIAC,OAAS,EAAA;AACX,CAAA;ACdA,eAAsBC,UAAUC,QAA2C,EAAA;EACzE,MAAMC,SAAS,EAAC;EAChB,WAAA,MAAiBC,SAASF,QAAU,EAAA;IAC3BC,MAAA,CAAAE,IAAA,CAAK,OAAOD,KAAU,KAAA,QAAA,GAAWE,OAAOC,IAAK,CAAAH,KAAK,IAAIA,KAAK,CAAA;EACpE;EACA,OAAOE,MAAO,CAAAE,MAAA,CAAOL,MAAM,CAAA,CAAEM,SAAS,MAAM,CAAA;AAC9C;ACJA,MAAM;EAACC,gBAAkB;EAAAC;AAAyB,CAAA,GAAAC,aAAA;AAiBlD,eAAsBC,SACpBA,CAAAC,GAAA,EACAC,MACA,EACoB;EAAA,IADpBC,qCAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAiD,IAC7B;EAChB,IAAAG,SAAA,GAAYN,GAAI,CAAAO,OAAA,CAAQV,qBAAqB,CAAA;EAC7C,IAAAW,KAAA,CAAMC,OAAQ,CAAAH,SAAS,CAAG,EAAA;IAC5BA,SAAA,GAAYA,UAAU,CAAC,CAAA;EACzB;EAEM,MAAAI,IAAA,GAAO,MAAMC,SAAA,CAASX,GAAG,CAAA;EACzB,MAAAY,cAAA,GAAiBX,SAASL,gBAAiB,CAAAc,IAAA,EAAMJ,WAAWL,MAAO,CAAAY,IAAA,EAAM,CAAI,GAAA,IAAA;EAE/E,IAAAD,cAAA,KAAmB,SAASV,qCAAuC,EAAA;IACrE,MAAM,IAAIY,OAAQ,CAACC,WAAYC,UAAW,CAAAD,OAAA,EAAS,GAAI,CAAC,CAAA;EAC1D;EAEO,OAAA;IACLL,MAAMA,IAAK,CAAAG,IAAA,CAAA,CAAU,IAAAI,IAAA,CAAKC,MAAMR,IAAI,CAAA;IACpCd,gBAAkB,EAAAgB;EAAA,CACpB;AACF;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "next-sanity",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.1",
|
|
4
4
|
"description": "Sanity.io toolkit for Next.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sanity",
|
|
@@ -160,8 +160,8 @@
|
|
|
160
160
|
"singleQuote": true
|
|
161
161
|
},
|
|
162
162
|
"dependencies": {
|
|
163
|
-
"@sanity/client": "
|
|
164
|
-
"@sanity/preview-kit": "1.
|
|
163
|
+
"@sanity/client": "^6.0.0",
|
|
164
|
+
"@sanity/preview-kit": "^1.5.0",
|
|
165
165
|
"@sanity/webhook": "^2.0.0",
|
|
166
166
|
"groq": "^3.0.0"
|
|
167
167
|
},
|
|
@@ -169,41 +169,41 @@
|
|
|
169
169
|
"@rollup/plugin-url": "^8.0.1",
|
|
170
170
|
"@sanity/eslint-config-studio": "^2.0.1",
|
|
171
171
|
"@sanity/image-url": "^1.0.2",
|
|
172
|
-
"@sanity/pkg-utils": "^2.2.
|
|
173
|
-
"@sanity/semantic-release-preset": "^4.
|
|
174
|
-
"@sanity/ui": "^1.3.
|
|
175
|
-
"@sanity/vision": "^3.
|
|
172
|
+
"@sanity/pkg-utils": "^2.2.14",
|
|
173
|
+
"@sanity/semantic-release-preset": "^4.1.1",
|
|
174
|
+
"@sanity/ui": "^1.3.2",
|
|
175
|
+
"@sanity/vision": "^3.9.1",
|
|
176
176
|
"@types/eventsource": "^1.1.11",
|
|
177
|
-
"@types/jest": "^29.5.
|
|
178
|
-
"@types/react": "^18.0
|
|
179
|
-
"@types/react-dom": "^18.
|
|
177
|
+
"@types/jest": "^29.5.1",
|
|
178
|
+
"@types/react": "^18.2.0",
|
|
179
|
+
"@types/react-dom": "^18.2.1",
|
|
180
180
|
"@types/styled-components": "^5.1.26",
|
|
181
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
181
|
+
"@typescript-eslint/eslint-plugin": "^5.59.2",
|
|
182
182
|
"autoprefixer": "^10.4.14",
|
|
183
|
-
"eslint": "^8.
|
|
183
|
+
"eslint": "^8.39.0",
|
|
184
184
|
"eslint-config-next": "13.3.5-canary.5",
|
|
185
|
-
"eslint-config-prettier": "^8.
|
|
185
|
+
"eslint-config-prettier": "^8.8.0",
|
|
186
186
|
"eslint-config-sanity": "^6.0.0",
|
|
187
187
|
"eslint-gitignore": "^0.1.0",
|
|
188
188
|
"eslint-plugin-prettier": "^4.2.1",
|
|
189
189
|
"eslint-plugin-simple-import-sort": "^10.0.0",
|
|
190
|
-
"groqd": "^0.15.
|
|
190
|
+
"groqd": "^0.15.4",
|
|
191
191
|
"jest": "^29.5.0",
|
|
192
192
|
"jest-environment-jsdom": "^29.5.0",
|
|
193
193
|
"ls-engines": "^0.9.0",
|
|
194
194
|
"next": "13.3.5-canary.5",
|
|
195
|
-
"postcss": "^8.4.
|
|
196
|
-
"prettier": "^2.8.
|
|
195
|
+
"postcss": "^8.4.23",
|
|
196
|
+
"prettier": "^2.8.8",
|
|
197
197
|
"prettier-plugin-packagejson": "^2.4.3",
|
|
198
|
-
"prettier-plugin-tailwindcss": "^0.2.
|
|
198
|
+
"prettier-plugin-tailwindcss": "^0.2.8",
|
|
199
199
|
"react": "^18.2.0",
|
|
200
200
|
"react-dom": "^18.2.0",
|
|
201
201
|
"react-is": "^18.2.0",
|
|
202
|
-
"rollup": "^3.
|
|
203
|
-
"sanity": "^3.
|
|
204
|
-
"styled-components": "^5.3.
|
|
205
|
-
"tailwindcss": "^3.2
|
|
206
|
-
"typescript": "^5.0.
|
|
202
|
+
"rollup": "^3.21.3",
|
|
203
|
+
"sanity": "^3.9.1",
|
|
204
|
+
"styled-components": "^5.3.10",
|
|
205
|
+
"tailwindcss": "^3.3.2",
|
|
206
|
+
"typescript": "^5.0.4",
|
|
207
207
|
"url-loader": "^4.1.1"
|
|
208
208
|
},
|
|
209
209
|
"peerDependencies": {
|