next-sanity 1.0.4 → 1.0.5
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/dist/{index.esm.js → index.cjs} +57 -16
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +15 -56
- package/dist/index.js.map +1 -1
- package/dist/{studio.esm.js → studio.cjs} +75 -52
- package/dist/studio.cjs.map +1 -0
- package/dist/studio.js +51 -74
- package/dist/studio.js.map +1 -1
- package/package.json +11 -9
- package/dist/index.esm.js.map +0 -1
- package/dist/studio.esm.js.map +0 -1
|
@@ -1,8 +1,39 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var sanityClient = require('@sanity/client');
|
|
7
|
+
var react = require('react');
|
|
8
|
+
var groq = require('groq');
|
|
9
|
+
function _interopDefaultLegacy(e) {
|
|
10
|
+
return e && typeof e === 'object' && 'default' in e ? e : {
|
|
11
|
+
'default': e
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
function _interopNamespace(e) {
|
|
15
|
+
if (e && e.__esModule) return e;
|
|
16
|
+
var n = Object.create(null);
|
|
17
|
+
if (e) {
|
|
18
|
+
Object.keys(e).forEach(function (k) {
|
|
19
|
+
if (k !== 'default') {
|
|
20
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
21
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return e[k];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
n["default"] = e;
|
|
31
|
+
return Object.freeze(n);
|
|
32
|
+
}
|
|
33
|
+
var sanityClient__default = /*#__PURE__*/_interopDefaultLegacy(sanityClient);
|
|
34
|
+
var groq__default = /*#__PURE__*/_interopDefaultLegacy(groq);
|
|
4
35
|
function createClient(config) {
|
|
5
|
-
return
|
|
36
|
+
return sanityClient__default["default"](config);
|
|
6
37
|
}
|
|
7
38
|
class MockAbortController {
|
|
8
39
|
constructor() {
|
|
@@ -37,9 +68,9 @@ function getCurrentUser(projectId, abort, token) {
|
|
|
37
68
|
}).then(res => res.json()).then(res => (res == null ? void 0 : res.id) ? res : null);
|
|
38
69
|
}
|
|
39
70
|
function useCurrentUser(projectId) {
|
|
40
|
-
const [data, setUser] = useState();
|
|
41
|
-
const [error, setError] = useState();
|
|
42
|
-
useEffect(() => {
|
|
71
|
+
const [data, setUser] = react.useState();
|
|
72
|
+
const [error, setError] = react.useState();
|
|
73
|
+
react.useEffect(() => {
|
|
43
74
|
const aborter = getAborter();
|
|
44
75
|
getCurrentUser(projectId, aborter).then(setUser).catch(err => err.name !== "AbortError" && setError(err));
|
|
45
76
|
return () => {
|
|
@@ -81,7 +112,9 @@ function createPreviewSubscriptionHook(_ref2) {
|
|
|
81
112
|
};
|
|
82
113
|
function getStore(abort) {
|
|
83
114
|
if (!store) {
|
|
84
|
-
store =
|
|
115
|
+
store = Promise.resolve().then(function () {
|
|
116
|
+
return /*#__PURE__*/_interopNamespace(require('@sanity/groq-store'));
|
|
117
|
+
}).then(_ref3 => {
|
|
85
118
|
let {
|
|
86
119
|
groqStore
|
|
87
120
|
} = _ref3;
|
|
@@ -114,11 +147,11 @@ function useQuerySubscription(options) {
|
|
|
114
147
|
enabled = false,
|
|
115
148
|
token
|
|
116
149
|
} = options;
|
|
117
|
-
const [error, setError] = useState();
|
|
118
|
-
const [loading, setLoading] = useState(false);
|
|
119
|
-
const [data, setData] = useState();
|
|
150
|
+
const [error, setError] = react.useState();
|
|
151
|
+
const [loading, setLoading] = react.useState(false);
|
|
152
|
+
const [data, setData] = react.useState();
|
|
120
153
|
const params = useParams(options.params);
|
|
121
|
-
useEffect(() => {
|
|
154
|
+
react.useEffect(() => {
|
|
122
155
|
if (!enabled) {
|
|
123
156
|
return;
|
|
124
157
|
}
|
|
@@ -154,8 +187,16 @@ function useQuerySubscription(options) {
|
|
|
154
187
|
};
|
|
155
188
|
}
|
|
156
189
|
function useParams(params) {
|
|
157
|
-
const stringifiedParams = useMemo(() => JSON.stringify(params), [params]);
|
|
158
|
-
return useMemo(() => JSON.parse(stringifiedParams), [stringifiedParams]);
|
|
190
|
+
const stringifiedParams = react.useMemo(() => JSON.stringify(params), [params]);
|
|
191
|
+
return react.useMemo(() => JSON.parse(stringifiedParams), [stringifiedParams]);
|
|
159
192
|
}
|
|
160
|
-
|
|
161
|
-
|
|
193
|
+
Object.defineProperty(exports, 'groq', {
|
|
194
|
+
enumerable: true,
|
|
195
|
+
get: function () {
|
|
196
|
+
return groq__default["default"];
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
exports.createClient = createClient;
|
|
200
|
+
exports.createCurrentUserHook = createCurrentUserHook;
|
|
201
|
+
exports.createPreviewSubscriptionHook = createPreviewSubscriptionHook;
|
|
202
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/client.ts","../src/aborter.ts","../src/currentUser.ts","../src/useSubscription.ts"],"sourcesContent":["import type {ClientConfig, SanityClient} from '@sanity/client'\nimport sanityClient from '@sanity/client'\n\n/** @public */\nexport function createClient(config: ClientConfig): SanityClient {\n return sanityClient(config)\n}\n","/** @public */\nexport interface Aborter {\n abort(): void\n signal: AbortSignal\n}\n\nclass MockAbortController {\n _signal = {aborted: false}\n get signal() {\n return this._signal as AbortSignal\n }\n abort() {\n this._signal.aborted = true\n }\n}\n\n/** @internal */\nexport function getAborter(): Aborter {\n return typeof AbortController === 'undefined'\n ? new MockAbortController()\n : new AbortController()\n}\n","import {useEffect, useState} from 'react'\n\nimport {Aborter, getAborter} from './aborter'\nimport {CurrentUser} from './types'\n\n/** @public */\nexport function createCurrentUserHook({projectId}: {projectId: string; dataset?: string}) {\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n return () => useCurrentUser(projectId)\n}\n\n/** @internal */\nexport function getCurrentUser(\n projectId: string,\n abort: Aborter,\n token?: string\n): Promise<CurrentUser | null> {\n const headers = token ? {Authorization: `Bearer ${token}`} : undefined\n return fetch(`https://${projectId}.api.sanity.io/v1/users/me`, {\n credentials: 'include',\n signal: abort.signal,\n headers,\n })\n .then((res) => res.json())\n .then((res) => (res?.id ? res : null))\n}\n\nfunction useCurrentUser(projectId: string) {\n const [data, setUser] = useState<CurrentUser | null>()\n const [error, setError] = useState<Error>()\n\n useEffect(() => {\n const aborter = getAborter()\n getCurrentUser(projectId, aborter)\n .then(setUser)\n .catch((err: Error) => err.name !== 'AbortError' && setError(err))\n\n return () => {\n aborter.abort()\n }\n }, [projectId])\n\n return {data, error, loading: data !== null || !error}\n}\n","import {GroqStore, Subscription} from '@sanity/groq-store'\nimport {useEffect, useMemo, useState} from 'react'\n\nimport {Aborter, getAborter} from './aborter'\nimport {getCurrentUser} from './currentUser'\nimport {Params, ProjectConfig, SubscriptionOptions} from './types'\n\nconst EMPTY_PARAMS = {}\n\n/** @public */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function createPreviewSubscriptionHook({\n projectId,\n dataset,\n token,\n EventSource,\n documentLimit = 3000,\n}: ProjectConfig & {documentLimit?: number}) {\n // Only construct/setup the store when `getStore()` is called\n let store: Promise<GroqStore>\n\n return function usePreviewSubscription<R = any>(\n query: string,\n options: SubscriptionOptions<R> = {}\n ) {\n const {params = EMPTY_PARAMS, initialData, enabled} = options\n return useQuerySubscription<R>({\n getStore,\n projectId,\n query,\n params,\n initialData: initialData as any,\n enabled: enabled ? typeof window !== 'undefined' : false,\n token,\n })\n }\n\n function getStore(abort: Aborter) {\n if (!store) {\n store = import('@sanity/groq-store').then(({groqStore}) => {\n // Skip creating the groq store if we've been unmounted to save memory and reduce gc pressure\n if (abort.signal.aborted) {\n const error = new Error('Cancelling groq store creation')\n // This ensures we can skip it in the catch block same way\n error.name = 'AbortError'\n return Promise.reject(error)\n }\n\n return groqStore({\n projectId,\n dataset,\n documentLimit,\n token,\n EventSource,\n listen: true,\n overlayDrafts: true,\n subscriptionThrottleMs: 10,\n })\n })\n }\n return store\n }\n}\n\nfunction useQuerySubscription<R = any>(options: {\n getStore: (abort: Aborter) => Promise<GroqStore>\n projectId: string\n query: string\n params: Params\n initialData: R\n enabled: boolean\n token?: string\n}) {\n const {getStore, projectId, query, initialData, enabled = false, token} = options\n const [error, setError] = useState<Error>()\n const [loading, setLoading] = useState(false)\n const [data, setData] = useState<R>()\n const params = useParams(options.params)\n\n // Use \"deep\" dependency comparison because params are often not _referentially_ equal,\n // but contains the same shallow properties, eg `{\"slug\": \"some-slug\"}`\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n setLoading(true)\n\n const aborter = getAborter()\n let subscription: Subscription | undefined\n getCurrentUser(projectId, aborter, token)\n .then((user) => {\n if (user) {\n return\n }\n\n // eslint-disable-next-line no-console\n console.warn('Not authenticated - preview not available')\n throw new Error('Not authenticated - preview not available')\n })\n .then(() => getStore(aborter))\n .then((store) => {\n subscription = store.subscribe(query, params, (err, result) => {\n if (err) {\n setError(err)\n } else {\n setData(result)\n }\n })\n })\n .catch((err: Error) => (err.name === 'AbortError' ? null : setError(err)))\n .finally(() => setLoading(false))\n\n // eslint-disable-next-line consistent-return\n return () => {\n if (subscription) {\n subscription.unsubscribe()\n }\n\n aborter.abort()\n }\n }, [getStore, query, params, enabled, projectId, token])\n\n return {\n data: typeof data === 'undefined' ? initialData : data,\n loading,\n error,\n }\n}\n\n// Return params that are stable with deep equal as long as the key order is the same\nexport function useParams(params: Params): Params {\n const stringifiedParams = useMemo(() => JSON.stringify(params), [params])\n return useMemo(() => JSON.parse(stringifiedParams), [stringifiedParams])\n}\n"],"names":["createClient","config","sanityClient","MockAbortController","constructor","_signal","aborted","signal","abort","getAborter","AbortController","createCurrentUserHook","projectId","useCurrentUser","getCurrentUser","token","headers","Authorization","fetch","credentials","then","res","json","id","data","setUser","useState","error","setError","useEffect","aborter","catch","err","name","loading","EMPTY_PARAMS","createPreviewSubscriptionHook","dataset","EventSource","documentLimit","store","usePreviewSubscription","query","options","params","initialData","enabled","useQuerySubscription","getStore","window","Promise","resolve","_interopNamespace","require","groqStore","Error","reject","listen","overlayDrafts","subscriptionThrottleMs","setLoading","setData","useParams","subscription","user","console","warn","subscribe","result","finally","unsubscribe","stringifiedParams","useMemo","JSON","stringify","parse"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,39 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var sanityClient = require('@sanity/client');
|
|
7
|
-
var react = require('react');
|
|
8
|
-
var groq = require('groq');
|
|
9
|
-
function _interopDefaultLegacy(e) {
|
|
10
|
-
return e && typeof e === 'object' && 'default' in e ? e : {
|
|
11
|
-
'default': e
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
function _interopNamespace(e) {
|
|
15
|
-
if (e && e.__esModule) return e;
|
|
16
|
-
var n = Object.create(null);
|
|
17
|
-
if (e) {
|
|
18
|
-
Object.keys(e).forEach(function (k) {
|
|
19
|
-
if (k !== 'default') {
|
|
20
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
21
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
get: function () {
|
|
24
|
-
return e[k];
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
n["default"] = e;
|
|
31
|
-
return Object.freeze(n);
|
|
32
|
-
}
|
|
33
|
-
var sanityClient__default = /*#__PURE__*/_interopDefaultLegacy(sanityClient);
|
|
34
|
-
var groq__default = /*#__PURE__*/_interopDefaultLegacy(groq);
|
|
1
|
+
import sanityClient from '@sanity/client';
|
|
2
|
+
import { useState, useEffect, useMemo } from 'react';
|
|
3
|
+
export { default as groq } from 'groq';
|
|
35
4
|
function createClient(config) {
|
|
36
|
-
return
|
|
5
|
+
return sanityClient(config);
|
|
37
6
|
}
|
|
38
7
|
class MockAbortController {
|
|
39
8
|
constructor() {
|
|
@@ -68,9 +37,9 @@ function getCurrentUser(projectId, abort, token) {
|
|
|
68
37
|
}).then(res => res.json()).then(res => (res == null ? void 0 : res.id) ? res : null);
|
|
69
38
|
}
|
|
70
39
|
function useCurrentUser(projectId) {
|
|
71
|
-
const [data, setUser] =
|
|
72
|
-
const [error, setError] =
|
|
73
|
-
|
|
40
|
+
const [data, setUser] = useState();
|
|
41
|
+
const [error, setError] = useState();
|
|
42
|
+
useEffect(() => {
|
|
74
43
|
const aborter = getAborter();
|
|
75
44
|
getCurrentUser(projectId, aborter).then(setUser).catch(err => err.name !== "AbortError" && setError(err));
|
|
76
45
|
return () => {
|
|
@@ -112,9 +81,7 @@ function createPreviewSubscriptionHook(_ref2) {
|
|
|
112
81
|
};
|
|
113
82
|
function getStore(abort) {
|
|
114
83
|
if (!store) {
|
|
115
|
-
store =
|
|
116
|
-
return /*#__PURE__*/_interopNamespace(require('@sanity/groq-store'));
|
|
117
|
-
}).then(_ref3 => {
|
|
84
|
+
store = import('@sanity/groq-store').then(_ref3 => {
|
|
118
85
|
let {
|
|
119
86
|
groqStore
|
|
120
87
|
} = _ref3;
|
|
@@ -147,11 +114,11 @@ function useQuerySubscription(options) {
|
|
|
147
114
|
enabled = false,
|
|
148
115
|
token
|
|
149
116
|
} = options;
|
|
150
|
-
const [error, setError] =
|
|
151
|
-
const [loading, setLoading] =
|
|
152
|
-
const [data, setData] =
|
|
117
|
+
const [error, setError] = useState();
|
|
118
|
+
const [loading, setLoading] = useState(false);
|
|
119
|
+
const [data, setData] = useState();
|
|
153
120
|
const params = useParams(options.params);
|
|
154
|
-
|
|
121
|
+
useEffect(() => {
|
|
155
122
|
if (!enabled) {
|
|
156
123
|
return;
|
|
157
124
|
}
|
|
@@ -187,16 +154,8 @@ function useQuerySubscription(options) {
|
|
|
187
154
|
};
|
|
188
155
|
}
|
|
189
156
|
function useParams(params) {
|
|
190
|
-
const stringifiedParams =
|
|
191
|
-
return
|
|
157
|
+
const stringifiedParams = useMemo(() => JSON.stringify(params), [params]);
|
|
158
|
+
return useMemo(() => JSON.parse(stringifiedParams), [stringifiedParams]);
|
|
192
159
|
}
|
|
193
|
-
|
|
194
|
-
enumerable: true,
|
|
195
|
-
get: function () {
|
|
196
|
-
return groq__default["default"];
|
|
197
|
-
}
|
|
198
|
-
});
|
|
199
|
-
exports.createClient = createClient;
|
|
200
|
-
exports.createCurrentUserHook = createCurrentUserHook;
|
|
201
|
-
exports.createPreviewSubscriptionHook = createPreviewSubscriptionHook;
|
|
160
|
+
export { createClient, createCurrentUserHook, createPreviewSubscriptionHook };
|
|
202
161
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/client.ts","../src/aborter.ts","../src/currentUser.ts","../src/useSubscription.ts"],"sourcesContent":["import type {ClientConfig, SanityClient} from '@sanity/client'\nimport sanityClient from '@sanity/client'\n\n/** @public */\nexport function createClient(config: ClientConfig): SanityClient {\n return sanityClient(config)\n}\n","/** @public */\nexport interface Aborter {\n abort(): void\n signal: AbortSignal\n}\n\nclass MockAbortController {\n _signal = {aborted: false}\n get signal() {\n return this._signal as AbortSignal\n }\n abort() {\n this._signal.aborted = true\n }\n}\n\n/** @internal */\nexport function getAborter(): Aborter {\n return typeof AbortController === 'undefined'\n ? new MockAbortController()\n : new AbortController()\n}\n","import {useEffect, useState} from 'react'\n\nimport {Aborter, getAborter} from './aborter'\nimport {CurrentUser} from './types'\n\n/** @public */\nexport function createCurrentUserHook({projectId}: {projectId: string; dataset?: string}) {\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n return () => useCurrentUser(projectId)\n}\n\n/** @internal */\nexport function getCurrentUser(\n projectId: string,\n abort: Aborter,\n token?: string\n): Promise<CurrentUser | null> {\n const headers = token ? {Authorization: `Bearer ${token}`} : undefined\n return fetch(`https://${projectId}.api.sanity.io/v1/users/me`, {\n credentials: 'include',\n signal: abort.signal,\n headers,\n })\n .then((res) => res.json())\n .then((res) => (res?.id ? res : null))\n}\n\nfunction useCurrentUser(projectId: string) {\n const [data, setUser] = useState<CurrentUser | null>()\n const [error, setError] = useState<Error>()\n\n useEffect(() => {\n const aborter = getAborter()\n getCurrentUser(projectId, aborter)\n .then(setUser)\n .catch((err: Error) => err.name !== 'AbortError' && setError(err))\n\n return () => {\n aborter.abort()\n }\n }, [projectId])\n\n return {data, error, loading: data !== null || !error}\n}\n","import {GroqStore, Subscription} from '@sanity/groq-store'\nimport {useEffect, useMemo, useState} from 'react'\n\nimport {Aborter, getAborter} from './aborter'\nimport {getCurrentUser} from './currentUser'\nimport {Params, ProjectConfig, SubscriptionOptions} from './types'\n\nconst EMPTY_PARAMS = {}\n\n/** @public */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function createPreviewSubscriptionHook({\n projectId,\n dataset,\n token,\n EventSource,\n documentLimit = 3000,\n}: ProjectConfig & {documentLimit?: number}) {\n // Only construct/setup the store when `getStore()` is called\n let store: Promise<GroqStore>\n\n return function usePreviewSubscription<R = any>(\n query: string,\n options: SubscriptionOptions<R> = {}\n ) {\n const {params = EMPTY_PARAMS, initialData, enabled} = options\n return useQuerySubscription<R>({\n getStore,\n projectId,\n query,\n params,\n initialData: initialData as any,\n enabled: enabled ? typeof window !== 'undefined' : false,\n token,\n })\n }\n\n function getStore(abort: Aborter) {\n if (!store) {\n store = import('@sanity/groq-store').then(({groqStore}) => {\n // Skip creating the groq store if we've been unmounted to save memory and reduce gc pressure\n if (abort.signal.aborted) {\n const error = new Error('Cancelling groq store creation')\n // This ensures we can skip it in the catch block same way\n error.name = 'AbortError'\n return Promise.reject(error)\n }\n\n return groqStore({\n projectId,\n dataset,\n documentLimit,\n token,\n EventSource,\n listen: true,\n overlayDrafts: true,\n subscriptionThrottleMs: 10,\n })\n })\n }\n return store\n }\n}\n\nfunction useQuerySubscription<R = any>(options: {\n getStore: (abort: Aborter) => Promise<GroqStore>\n projectId: string\n query: string\n params: Params\n initialData: R\n enabled: boolean\n token?: string\n}) {\n const {getStore, projectId, query, initialData, enabled = false, token} = options\n const [error, setError] = useState<Error>()\n const [loading, setLoading] = useState(false)\n const [data, setData] = useState<R>()\n const params = useParams(options.params)\n\n // Use \"deep\" dependency comparison because params are often not _referentially_ equal,\n // but contains the same shallow properties, eg `{\"slug\": \"some-slug\"}`\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n setLoading(true)\n\n const aborter = getAborter()\n let subscription: Subscription | undefined\n getCurrentUser(projectId, aborter, token)\n .then((user) => {\n if (user) {\n return\n }\n\n // eslint-disable-next-line no-console\n console.warn('Not authenticated - preview not available')\n throw new Error('Not authenticated - preview not available')\n })\n .then(() => getStore(aborter))\n .then((store) => {\n subscription = store.subscribe(query, params, (err, result) => {\n if (err) {\n setError(err)\n } else {\n setData(result)\n }\n })\n })\n .catch((err: Error) => (err.name === 'AbortError' ? null : setError(err)))\n .finally(() => setLoading(false))\n\n // eslint-disable-next-line consistent-return\n return () => {\n if (subscription) {\n subscription.unsubscribe()\n }\n\n aborter.abort()\n }\n }, [getStore, query, params, enabled, projectId, token])\n\n return {\n data: typeof data === 'undefined' ? initialData : data,\n loading,\n error,\n }\n}\n\n// Return params that are stable with deep equal as long as the key order is the same\nexport function useParams(params: Params): Params {\n const stringifiedParams = useMemo(() => JSON.stringify(params), [params])\n return useMemo(() => JSON.parse(stringifiedParams), [stringifiedParams])\n}\n"],"names":["createClient","config","sanityClient","MockAbortController","constructor","_signal","aborted","signal","abort","getAborter","AbortController","createCurrentUserHook","projectId","useCurrentUser","getCurrentUser","token","headers","Authorization","fetch","credentials","then","res","json","id","data","setUser","useState","error","setError","useEffect","aborter","catch","err","name","loading","EMPTY_PARAMS","createPreviewSubscriptionHook","dataset","EventSource","documentLimit","store","usePreviewSubscription","query","options","params","initialData","enabled","useQuerySubscription","getStore","window","Promise","resolve","_interopNamespace","require","groqStore","Error","reject","listen","overlayDrafts","subscriptionThrottleMs","setLoading","setData","useParams","subscription","user","console","warn","subscribe","result","finally","unsubscribe","stringifiedParams","useMemo","JSON","stringify","parse"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/client.ts","../src/aborter.ts","../src/currentUser.ts","../src/useSubscription.ts"],"sourcesContent":["import type {ClientConfig, SanityClient} from '@sanity/client'\nimport sanityClient from '@sanity/client'\n\n/** @public */\nexport function createClient(config: ClientConfig): SanityClient {\n return sanityClient(config)\n}\n","/** @public */\nexport interface Aborter {\n abort(): void\n signal: AbortSignal\n}\n\nclass MockAbortController {\n _signal = {aborted: false}\n get signal() {\n return this._signal as AbortSignal\n }\n abort() {\n this._signal.aborted = true\n }\n}\n\n/** @internal */\nexport function getAborter(): Aborter {\n return typeof AbortController === 'undefined'\n ? new MockAbortController()\n : new AbortController()\n}\n","import {useEffect, useState} from 'react'\n\nimport {Aborter, getAborter} from './aborter'\nimport {CurrentUser} from './types'\n\n/** @public */\nexport function createCurrentUserHook({projectId}: {projectId: string; dataset?: string}) {\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n return () => useCurrentUser(projectId)\n}\n\n/** @internal */\nexport function getCurrentUser(\n projectId: string,\n abort: Aborter,\n token?: string\n): Promise<CurrentUser | null> {\n const headers = token ? {Authorization: `Bearer ${token}`} : undefined\n return fetch(`https://${projectId}.api.sanity.io/v1/users/me`, {\n credentials: 'include',\n signal: abort.signal,\n headers,\n })\n .then((res) => res.json())\n .then((res) => (res?.id ? res : null))\n}\n\nfunction useCurrentUser(projectId: string) {\n const [data, setUser] = useState<CurrentUser | null>()\n const [error, setError] = useState<Error>()\n\n useEffect(() => {\n const aborter = getAborter()\n getCurrentUser(projectId, aborter)\n .then(setUser)\n .catch((err: Error) => err.name !== 'AbortError' && setError(err))\n\n return () => {\n aborter.abort()\n }\n }, [projectId])\n\n return {data, error, loading: data !== null || !error}\n}\n","import {GroqStore, Subscription} from '@sanity/groq-store'\nimport {useEffect, useMemo, useState} from 'react'\n\nimport {Aborter, getAborter} from './aborter'\nimport {getCurrentUser} from './currentUser'\nimport {Params, ProjectConfig, SubscriptionOptions} from './types'\n\nconst EMPTY_PARAMS = {}\n\n/** @public */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function createPreviewSubscriptionHook({\n projectId,\n dataset,\n token,\n EventSource,\n documentLimit = 3000,\n}: ProjectConfig & {documentLimit?: number}) {\n // Only construct/setup the store when `getStore()` is called\n let store: Promise<GroqStore>\n\n return function usePreviewSubscription<R = any>(\n query: string,\n options: SubscriptionOptions<R> = {}\n ) {\n const {params = EMPTY_PARAMS, initialData, enabled} = options\n return useQuerySubscription<R>({\n getStore,\n projectId,\n query,\n params,\n initialData: initialData as any,\n enabled: enabled ? typeof window !== 'undefined' : false,\n token,\n })\n }\n\n function getStore(abort: Aborter) {\n if (!store) {\n store = import('@sanity/groq-store').then(({groqStore}) => {\n // Skip creating the groq store if we've been unmounted to save memory and reduce gc pressure\n if (abort.signal.aborted) {\n const error = new Error('Cancelling groq store creation')\n // This ensures we can skip it in the catch block same way\n error.name = 'AbortError'\n return Promise.reject(error)\n }\n\n return groqStore({\n projectId,\n dataset,\n documentLimit,\n token,\n EventSource,\n listen: true,\n overlayDrafts: true,\n subscriptionThrottleMs: 10,\n })\n })\n }\n return store\n }\n}\n\nfunction useQuerySubscription<R = any>(options: {\n getStore: (abort: Aborter) => Promise<GroqStore>\n projectId: string\n query: string\n params: Params\n initialData: R\n enabled: boolean\n token?: string\n}) {\n const {getStore, projectId, query, initialData, enabled = false, token} = options\n const [error, setError] = useState<Error>()\n const [loading, setLoading] = useState(false)\n const [data, setData] = useState<R>()\n const params = useParams(options.params)\n\n // Use \"deep\" dependency comparison because params are often not _referentially_ equal,\n // but contains the same shallow properties, eg `{\"slug\": \"some-slug\"}`\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n setLoading(true)\n\n const aborter = getAborter()\n let subscription: Subscription | undefined\n getCurrentUser(projectId, aborter, token)\n .then((user) => {\n if (user) {\n return\n }\n\n // eslint-disable-next-line no-console\n console.warn('Not authenticated - preview not available')\n throw new Error('Not authenticated - preview not available')\n })\n .then(() => getStore(aborter))\n .then((store) => {\n subscription = store.subscribe(query, params, (err, result) => {\n if (err) {\n setError(err)\n } else {\n setData(result)\n }\n })\n })\n .catch((err: Error) => (err.name === 'AbortError' ? null : setError(err)))\n .finally(() => setLoading(false))\n\n // eslint-disable-next-line consistent-return\n return () => {\n if (subscription) {\n subscription.unsubscribe()\n }\n\n aborter.abort()\n }\n }, [getStore, query, params, enabled, projectId, token])\n\n return {\n data: typeof data === 'undefined' ? initialData : data,\n loading,\n error,\n }\n}\n\n// Return params that are stable with deep equal as long as the key order is the same\nexport function useParams(params: Params): Params {\n const stringifiedParams = useMemo(() => JSON.stringify(params), [params])\n return useMemo(() => JSON.parse(stringifiedParams), [stringifiedParams])\n}\n"],"names":["createClient","config","sanityClient","MockAbortController","constructor","_signal","aborted","signal","abort","getAborter","AbortController","createCurrentUserHook","projectId","useCurrentUser","getCurrentUser","token","headers","Authorization","fetch","credentials","then","res","json","id","data","setUser","useState","error","setError","useEffect","aborter","catch","err","name","loading","EMPTY_PARAMS","createPreviewSubscriptionHook","dataset","EventSource","documentLimit","store","usePreviewSubscription","query","options","params","initialData","enabled","useQuerySubscription","getStore","window","groqStore","Error","Promise","reject","listen","overlayDrafts","subscriptionThrottleMs","setLoading","setData","useParams","subscription","user","console","warn","subscribe","result","finally","unsubscribe","stringifiedParams","useMemo","JSON","stringify","parse"],"mappings":";;;AAIO,SAASA,aAAaC,MAAoC,EAAA;EAC/D,OAAOC,aAAaD,MAAM,CAAA;AAC5B;ACAA,MAAME,mBAAoB,CAAA;EAA1BC,WAAA,GAAA;IACY,IAAA,CAAAC,OAAA,GAAA;MAACC,SAAS;IAAK,CAAA;EAAA;EACzB,IAAIC,MAAS,GAAA;IACX,OAAO,IAAK,CAAAF,OAAA;EACd;EACAG,KAAQ,GAAA;IACN,IAAA,CAAKH,QAAQC,OAAU,GAAA,IAAA;EACzB;AACF;AAGO,SAASG,UAAsB,GAAA;EACpC,OAAO,OAAOC,eAAoB,KAAA,WAAA,GAC9B,IAAIP,mBAAoB,EAAA,GACxB,IAAIO,eAAgB,EAAA;AAC1B;ACfgB,SAAAC,qBAAA,OAA0E;EAAA,IAApD;IAACC;GAAmD;EAEjF,OAAA,MAAMC,eAAeD,SAAS,CAAA;AACvC;AAGgB,SAAAE,cAAA,CACdF,SACA,EAAAJ,KAAA,EACAO,KAC6B,EAAA;EAC7B,MAAMC,UAAUD,KAAQ,GAAA;IAACE,aAAe,mBAAUF;GAAW,GAAA,KAAA,CAAA;EACtD,OAAAG,KAAA,mBAAiBN,SAAuC,iCAAA;IAC7DO,WAAa,EAAA,SAAA;IACbZ,QAAQC,KAAM,CAAAD,MAAA;IACdS;EAAA,CACD,CAAA,CACEI,IAAK,CAACC,OAAQA,GAAI,CAAAC,IAAA,EAAM,CAAA,CACxBF,KAAMC,GAAA,IAAA,CAASA,GAAK,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,GAAA,CAAAE,EAAA,IAAKF,MAAM,IAAK,CAAA;AACzC;AAEA,SAASR,eAAeD,SAAmB,EAAA;EACzC,MAAM,CAACY,IAAA,EAAMC,OAAO,CAAA,GAAIC,QAA6B,EAAA;EACrD,MAAM,CAACC,KAAA,EAAOC,QAAQ,CAAA,GAAIF,QAAgB,EAAA;EAE1CG,SAAA,CAAU,MAAM;IACd,MAAMC,UAAUrB,UAAW,EAAA;IAC3BK,cAAA,CAAeF,SAAW,EAAAkB,OAAO,CAC9B,CAAAV,IAAA,CAAKK,OAAO,CACZ,CAAAM,KAAA,CAAOC,GAAA,IAAeA,GAAI,CAAAC,IAAA,KAAS,YAAgB,IAAAL,QAAA,CAASI,GAAG,CAAC,CAAA;IAEnE,OAAO,MAAM;MACXF,OAAA,CAAQtB,KAAM,EAAA;IAAA,CAChB;EAAA,CACF,EAAG,CAACI,SAAS,CAAC,CAAA;EAEd,OAAO;IAACY,IAAM;IAAAG,KAAA;IAAOO,SAASV,IAAS,KAAA,IAAA,IAAQ,CAACG;GAAK;AACvD;ACpCA,MAAMQ,eAAe,CAAA,CAAC;AAIf,SAASC,6BAA8B,QAMD;EAAA,IANC;IAC5CxB,SAAA;IACAyB,OAAA;IACAtB,KAAA;IACAuB,WAAA;IACAC,aAAgB,GAAA;EAClB,CAA6C;EAEvC,IAAAC,KAAA;EAEJ,OAAO,SAASC,sBAAA,CACdC,KACA,EACA;IAAA,IADAC,OAAA,uEAAkC,CAAA,CAClC;IACA,MAAM;MAACC,MAAA,GAAST,YAAc;MAAAU,WAAA;MAAaC;KAAW,GAAAH,OAAA;IACtD,OAAOI,oBAAwB,CAAA;MAC7BC,QAAA;MACApC,SAAA;MACA8B,KAAA;MACAE,MAAA;MACAC,WAAA;MACAC,OAAS,EAAAA,OAAA,GAAU,OAAOG,MAAA,KAAW,WAAc,GAAA,KAAA;MACnDlC;IAAA,CACD,CAAA;EAAA,CACH;EAEA,SAASiC,SAASxC,KAAgB,EAAA;IAChC,IAAI,CAACgC,KAAO,EAAA;MACVA,KAAA,GAAQ,MAAO,CAAA,oBAAsB,CAAA,CAAApB,IAAA,CAAK,SAAiB;QAAA,IAAhB;UAAC8B;SAAe;QAErD,IAAA1C,KAAA,CAAMD,OAAOD,OAAS,EAAA;UAClB,MAAAqB,KAAA,GAAQ,IAAIwB,KAAA,CAAM,gCAAgC,CAAA;UAExDxB,KAAA,CAAMM,IAAO,GAAA,YAAA;UACN,OAAAmB,OAAA,CAAQC,OAAO1B,KAAK,CAAA;QAC7B;QAEA,OAAOuB,SAAU,CAAA;UACftC,SAAA;UACAyB,OAAA;UACAE,aAAA;UACAxB,KAAA;UACAuB,WAAA;UACAgB,MAAQ,EAAA,IAAA;UACRC,aAAe,EAAA,IAAA;UACfC,sBAAwB,EAAA;QAAA,CACzB,CAAA;MAAA,CACF,CAAA;IACH;IACO,OAAAhB,KAAA;EACT;AACF;AAEA,SAASO,qBAA8BJ,OAQpC,EAAA;EACK,MAAA;IAACK;IAAUpC,SAAW;IAAA8B,KAAA;IAAOG;IAAaC,OAAU,GAAA,KAAA;IAAO/B;EAAS,CAAA,GAAA4B,OAAA;EAC1E,MAAM,CAAChB,KAAA,EAAOC,QAAQ,CAAA,GAAIF,QAAgB,EAAA;EAC1C,MAAM,CAACQ,OAAA,EAASuB,UAAU,CAAA,GAAI/B,SAAS,KAAK,CAAA;EAC5C,MAAM,CAACF,IAAA,EAAMkC,OAAO,CAAA,GAAIhC,QAAY,EAAA;EAC9B,MAAAkB,MAAA,GAASe,SAAU,CAAAhB,OAAA,CAAQC,MAAM,CAAA;EAIvCf,SAAA,CAAU,MAAM;IACd,IAAI,CAACiB,OAAS,EAAA;MACZ;IACF;IAEAW,UAAA,CAAW,IAAI,CAAA;IAEf,MAAM3B,UAAUrB,UAAW,EAAA;IACvB,IAAAmD,YAAA;IACJ9C,cAAA,CAAeF,WAAWkB,OAAS,EAAAf,KAAK,CACrC,CAAAK,IAAA,CAAMyC,IAAS,IAAA;MACd,IAAIA,IAAM,EAAA;QACR;MACF;MAGAC,OAAA,CAAQC,KAAK,2CAA2C,CAAA;MAClD,MAAA,IAAIZ,MAAM,2CAA2C,CAAA;IAAA,CAC5D,CACA,CAAA/B,IAAA,CAAK,MAAM4B,QAAA,CAASlB,OAAO,CAAC,CAAA,CAC5BV,IAAK,CAACoB,KAAU,IAAA;MACfoB,YAAA,GAAepB,MAAMwB,SAAU,CAAAtB,KAAA,EAAOE,MAAQ,EAAA,CAACZ,KAAKiC,MAAW,KAAA;QAC7D,IAAIjC,GAAK,EAAA;UACPJ,QAAA,CAASI,GAAG,CAAA;QAAA,CACP,MAAA;UACL0B,OAAA,CAAQO,MAAM,CAAA;QAChB;MAAA,CACD,CAAA;IAAA,CACF,CACA,CAAAlC,KAAA,CAAOC,GAAA,IAAgBA,IAAIC,IAAS,KAAA,YAAA,GAAe,IAAO,GAAAL,QAAA,CAASI,GAAG,CAAE,CAAA,CACxEkC,QAAQ,MAAMT,UAAA,CAAW,KAAK,CAAC,CAAA;IAGlC,OAAO,MAAM;MACX,IAAIG,YAAc,EAAA;QAChBA,YAAA,CAAaO,WAAY,EAAA;MAC3B;MAEArC,OAAA,CAAQtB,KAAM,EAAA;IAAA,CAChB;EAAA,CACF,EAAG,CAACwC,QAAU,EAAAN,KAAA,EAAOE,QAAQE,OAAS,EAAAlC,SAAA,EAAWG,KAAK,CAAC,CAAA;EAEhD,OAAA;IACLS,IAAM,EAAA,OAAOA,IAAS,KAAA,WAAA,GAAcqB,WAAc,GAAArB,IAAA;IAClDU,OAAA;IACAP;EAAA,CACF;AACF;AAGO,SAASgC,UAAUf,MAAwB,EAAA;EAC1C,MAAAwB,iBAAA,GAAoBC,QAAQ,MAAMC,IAAA,CAAKC,UAAU3B,MAAM,CAAA,EAAG,CAACA,MAAM,CAAC,CAAA;EACjE,OAAAyB,OAAA,CAAQ,MAAMC,IAAK,CAAAE,KAAA,CAAMJ,iBAAiB,CAAG,EAAA,CAACA,iBAAiB,CAAC,CAAA;AACzE;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
1
3
|
const _excluded = ["children", "config", "unstable__noGlobalStyle", "unstable__noTailwindSvgFix", "unstable__head", "unstable__document_title", "unstable__bg", "unstable__fontFamily", "unstable__noFavicons", "unstable__noNoScript"];
|
|
2
4
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
3
5
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
@@ -6,28 +8,38 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
6
8
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7
9
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
10
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
Object.defineProperty(exports, '__esModule', {
|
|
12
|
+
value: true
|
|
13
|
+
});
|
|
14
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
15
|
+
var react = require('react');
|
|
16
|
+
var sanity = require('sanity');
|
|
17
|
+
var styledComponents = require('styled-components');
|
|
18
|
+
var Head = require('next/head');
|
|
19
|
+
var router = require('next/router');
|
|
20
|
+
var Document = require('next/document');
|
|
21
|
+
function _interopDefaultLegacy(e) {
|
|
22
|
+
return e && typeof e === 'object' && 'default' in e ? e : {
|
|
23
|
+
'default': e
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
var Head__default = /*#__PURE__*/_interopDefaultLegacy(Head);
|
|
27
|
+
var Document__default = /*#__PURE__*/_interopDefaultLegacy(Document);
|
|
28
|
+
const NextStudioGlobalStyle = styledComponents.createGlobalStyle(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n", "\nhtml,\nbody,\n#__next {\n height: 100%;\n}\nbody {\n margin: 0;\n overscroll-behavior: none;\n -webkit-font-smoothing: antialiased;\n}\n", "\n", ""])), _ref => {
|
|
17
29
|
let {
|
|
18
30
|
bg
|
|
19
31
|
} = _ref;
|
|
20
|
-
return bg ? css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n html {\n background-color: ", ";\n }\n "])), bg) : "";
|
|
32
|
+
return bg ? styledComponents.css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n html {\n background-color: ", ";\n }\n "])), bg) : "";
|
|
21
33
|
}, _ref2 => {
|
|
22
34
|
let {
|
|
23
35
|
fontFamily
|
|
24
36
|
} = _ref2;
|
|
25
|
-
return fontFamily ? css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n #__next {\n font-family: ", ";\n }\n "])), fontFamily) : "";
|
|
37
|
+
return fontFamily ? styledComponents.css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n #__next {\n font-family: ", ";\n }\n "])), fontFamily) : "";
|
|
26
38
|
}, _ref3 => {
|
|
27
39
|
let {
|
|
28
40
|
unstable__tailwindSvgFix
|
|
29
41
|
} = _ref3;
|
|
30
|
-
return unstable__tailwindSvgFix ? css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n /* override tailwind reset */\n :root svg {\n display: inline;\n }\n "]))) : "";
|
|
42
|
+
return unstable__tailwindSvgFix ? styledComponents.css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n /* override tailwind reset */\n :root svg {\n display: inline;\n }\n "]))) : "";
|
|
31
43
|
});
|
|
32
44
|
var iconApple = "data:image/png;base64,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";
|
|
33
45
|
var iconIco = "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=";
|
|
@@ -55,7 +67,7 @@ const NextStudioHeadComponent = _ref4 => {
|
|
|
55
67
|
title = "Sanity Studio",
|
|
56
68
|
favicons
|
|
57
69
|
} = _ref4;
|
|
58
|
-
const inlineWebmanifest = useCallback(() => {
|
|
70
|
+
const inlineWebmanifest = react.useCallback(() => {
|
|
59
71
|
const manifest = JSON.parse(JSON.stringify(webmanifest));
|
|
60
72
|
const icons = manifest.icons.map(icon => {
|
|
61
73
|
const src = icon.src === "./favicon-192.png" ? interop(icon192) : icon.src === "./favicon-512.png" ? interop(icon512) : icon.src;
|
|
@@ -67,59 +79,59 @@ const NextStudioHeadComponent = _ref4 => {
|
|
|
67
79
|
icons
|
|
68
80
|
}))));
|
|
69
81
|
}, []);
|
|
70
|
-
return /* @__PURE__ */jsxs(
|
|
71
|
-
children: [/* @__PURE__ */jsx("meta", {
|
|
82
|
+
return /* @__PURE__ */jsxRuntime.jsxs(Head__default["default"], {
|
|
83
|
+
children: [/* @__PURE__ */jsxRuntime.jsx("meta", {
|
|
72
84
|
name: "viewport",
|
|
73
85
|
content: "width=device-width, initial-scale=1, viewport-fit=cover"
|
|
74
|
-
}), /* @__PURE__ */jsx("meta", {
|
|
86
|
+
}), /* @__PURE__ */jsxRuntime.jsx("meta", {
|
|
75
87
|
name: "robots",
|
|
76
88
|
content: "noindex"
|
|
77
|
-
}), /* @__PURE__ */jsx("meta", {
|
|
89
|
+
}), /* @__PURE__ */jsxRuntime.jsx("meta", {
|
|
78
90
|
name: "referrer",
|
|
79
91
|
content: "same-origin"
|
|
80
|
-
}), title && /* @__PURE__ */jsx("title", {
|
|
92
|
+
}), title && /* @__PURE__ */jsxRuntime.jsx("title", {
|
|
81
93
|
children: title
|
|
82
|
-
}), favicons && /* @__PURE__ */jsx("link", {
|
|
94
|
+
}), favicons && /* @__PURE__ */jsxRuntime.jsx("link", {
|
|
83
95
|
rel: "icon",
|
|
84
96
|
href: interop(iconIco),
|
|
85
97
|
sizes: "any"
|
|
86
|
-
}), favicons && /* @__PURE__ */jsx("link", {
|
|
98
|
+
}), favicons && /* @__PURE__ */jsxRuntime.jsx("link", {
|
|
87
99
|
rel: "icon",
|
|
88
100
|
href: interop(iconSvg),
|
|
89
101
|
type: "image/svg+xml"
|
|
90
|
-
}), favicons && /* @__PURE__ */jsx("link", {
|
|
102
|
+
}), favicons && /* @__PURE__ */jsxRuntime.jsx("link", {
|
|
91
103
|
rel: "apple-touch-icon",
|
|
92
104
|
href: interop(iconApple)
|
|
93
|
-
}), favicons && /* @__PURE__ */jsx("link", {
|
|
105
|
+
}), favicons && /* @__PURE__ */jsxRuntime.jsx("link", {
|
|
94
106
|
rel: "manifest",
|
|
95
107
|
href: process.env.NEXT_PUBLIC_VERCEL_URL ? inlineWebmanifest() : "https://next.sanity.build/manifest.webmanifest"
|
|
96
|
-
}), themeColorLight && /* @__PURE__ */jsx("meta", {
|
|
108
|
+
}), themeColorLight && /* @__PURE__ */jsxRuntime.jsx("meta", {
|
|
97
109
|
name: "theme-color",
|
|
98
110
|
content: themeColorLight,
|
|
99
111
|
media: "(prefers-color-scheme: light)"
|
|
100
|
-
}, "theme-color-light"), themeColorDark && /* @__PURE__ */jsx("meta", {
|
|
112
|
+
}, "theme-color-light"), themeColorDark && /* @__PURE__ */jsxRuntime.jsx("meta", {
|
|
101
113
|
name: "theme-color",
|
|
102
114
|
content: themeColorDark,
|
|
103
115
|
media: "(prefers-color-scheme: dark)"
|
|
104
116
|
}, "theme-color-dark"), children]
|
|
105
117
|
});
|
|
106
118
|
};
|
|
107
|
-
const NextStudioHead = memo(NextStudioHeadComponent);
|
|
119
|
+
const NextStudioHead = react.memo(NextStudioHeadComponent);
|
|
108
120
|
const style = {
|
|
109
121
|
__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}\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"
|
|
110
122
|
};
|
|
111
|
-
const NextStudioNoScript = () => /* @__PURE__ */jsx("noscript", {
|
|
112
|
-
children: /* @__PURE__ */jsx("div", {
|
|
123
|
+
const NextStudioNoScript = () => /* @__PURE__ */jsxRuntime.jsx("noscript", {
|
|
124
|
+
children: /* @__PURE__ */jsxRuntime.jsx("div", {
|
|
113
125
|
className: "sanity-app-no-js__root",
|
|
114
|
-
children: /* @__PURE__ */jsxs("div", {
|
|
126
|
+
children: /* @__PURE__ */jsxRuntime.jsxs("div", {
|
|
115
127
|
className: "sanity-app-no-js__content",
|
|
116
|
-
children: [/* @__PURE__ */jsx("style", {
|
|
128
|
+
children: [/* @__PURE__ */jsxRuntime.jsx("style", {
|
|
117
129
|
type: "text/css",
|
|
118
130
|
dangerouslySetInnerHTML: style
|
|
119
|
-
}), /* @__PURE__ */jsx("h1", {
|
|
131
|
+
}), /* @__PURE__ */jsxRuntime.jsx("h1", {
|
|
120
132
|
children: "JavaScript disabled"
|
|
121
|
-
}), /* @__PURE__ */jsxs("p", {
|
|
122
|
-
children: ["Please ", /* @__PURE__ */jsx("a", {
|
|
133
|
+
}), /* @__PURE__ */jsxRuntime.jsxs("p", {
|
|
134
|
+
children: ["Please ", /* @__PURE__ */jsxRuntime.jsx("a", {
|
|
123
135
|
href: "https://www.enable-javascript.com/",
|
|
124
136
|
children: "enable JavaScript"
|
|
125
137
|
}), " in your browser and reload the page to proceed."]
|
|
@@ -134,28 +146,28 @@ function isWorkspaceWithTheme(workspace) {
|
|
|
134
146
|
return Boolean(workspace.theme);
|
|
135
147
|
}
|
|
136
148
|
function useTheme(config) {
|
|
137
|
-
const workspace = useMemo(() => isWorkspaces(config) ? config[0] : config, [config]);
|
|
138
|
-
return useMemo(() => isWorkspaceWithTheme(workspace) ? workspace.theme : defaultTheme, [workspace]);
|
|
149
|
+
const workspace = react.useMemo(() => isWorkspaces(config) ? config[0] : config, [config]);
|
|
150
|
+
return react.useMemo(() => isWorkspaceWithTheme(workspace) ? workspace.theme : sanity.defaultTheme, [workspace]);
|
|
139
151
|
}
|
|
140
152
|
const useBackgroundColorsFromTheme = theme => {
|
|
141
|
-
return useMemo(() => ({
|
|
153
|
+
return react.useMemo(() => ({
|
|
142
154
|
themeColorLight: theme.color.light.default.base.bg,
|
|
143
155
|
themeColorDark: theme.color.dark.default.base.bg
|
|
144
156
|
}), [theme]);
|
|
145
157
|
};
|
|
146
158
|
const useTextFontFamilyFromTheme = theme => {
|
|
147
|
-
return useMemo(() => theme.fonts.text.family, [theme]);
|
|
159
|
+
return react.useMemo(() => theme.fonts.text.family, [theme]);
|
|
148
160
|
};
|
|
149
161
|
function useBasePath() {
|
|
150
|
-
const router = useRouter();
|
|
151
|
-
return useMemo(() => {
|
|
152
|
-
const [basePath = "/"] = router.route.split("/[");
|
|
162
|
+
const router$1 = router.useRouter();
|
|
163
|
+
return react.useMemo(() => {
|
|
164
|
+
const [basePath = "/"] = router$1.route.split("/[");
|
|
153
165
|
return basePath;
|
|
154
|
-
}, [router.route]);
|
|
166
|
+
}, [router$1.route]);
|
|
155
167
|
}
|
|
156
168
|
function useConfigWithBasePath(config) {
|
|
157
169
|
const basePath = useBasePath();
|
|
158
|
-
return useMemo(() => {
|
|
170
|
+
return react.useMemo(() => {
|
|
159
171
|
if (isWorkspaces(config)) {
|
|
160
172
|
return config.map(workspace => _objectSpread(_objectSpread({}, workspace), {}, {
|
|
161
173
|
basePath: workspace.basePath === "/" ? basePath : "".concat(basePath).concat(workspace.basePath)
|
|
@@ -186,32 +198,32 @@ const NextStudioComponent = _ref5 => {
|
|
|
186
198
|
themeColorDark
|
|
187
199
|
} = useBackgroundColorsFromTheme(theme);
|
|
188
200
|
const themeFontFamily = useTextFontFamilyFromTheme(theme);
|
|
189
|
-
return /* @__PURE__ */jsxs(Fragment, {
|
|
190
|
-
children: [children || /* @__PURE__ */jsx(Studio, _objectSpread({
|
|
201
|
+
return /* @__PURE__ */jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
202
|
+
children: [children || /* @__PURE__ */jsxRuntime.jsx(sanity.Studio, _objectSpread({
|
|
191
203
|
config
|
|
192
|
-
}, props)), /* @__PURE__ */jsx(NextStudioHead, {
|
|
204
|
+
}, props)), /* @__PURE__ */jsxRuntime.jsx(NextStudioHead, {
|
|
193
205
|
themeColorLight,
|
|
194
206
|
themeColorDark,
|
|
195
207
|
title: unstable__document_title,
|
|
196
208
|
favicons: !unstable__noFavicons,
|
|
197
209
|
children: unstable__head
|
|
198
|
-
}), !unstable__noGlobalStyle && /* @__PURE__ */jsx(NextStudioGlobalStyle, {
|
|
210
|
+
}), !unstable__noGlobalStyle && /* @__PURE__ */jsxRuntime.jsx(NextStudioGlobalStyle, {
|
|
199
211
|
bg: unstable__bg != null ? unstable__bg : themeColorLight,
|
|
200
212
|
fontFamily: unstable__fontFamily != null ? unstable__fontFamily : themeFontFamily,
|
|
201
213
|
unstable__tailwindSvgFix: !unstable__noTailwindSvgFix
|
|
202
|
-
}), !unstable__noNoScript && /* @__PURE__ */jsx(NextStudioNoScript, {})]
|
|
214
|
+
}), !unstable__noNoScript && /* @__PURE__ */jsxRuntime.jsx(NextStudioNoScript, {})]
|
|
203
215
|
});
|
|
204
216
|
};
|
|
205
|
-
const NextStudio = memo(NextStudioComponent);
|
|
206
|
-
class ServerStyleSheetDocument extends
|
|
217
|
+
const NextStudio = react.memo(NextStudioComponent);
|
|
218
|
+
class ServerStyleSheetDocument extends Document__default["default"] {
|
|
207
219
|
static async getInitialProps(ctx) {
|
|
208
|
-
const sheet = new ServerStyleSheet();
|
|
220
|
+
const sheet = new styledComponents.ServerStyleSheet();
|
|
209
221
|
const originalRenderPage = ctx.renderPage;
|
|
210
222
|
try {
|
|
211
223
|
ctx.renderPage = () => originalRenderPage({
|
|
212
|
-
enhanceApp: App => props => sheet.collectStyles( /* @__PURE__ */jsx(App, _objectSpread({}, props)))
|
|
224
|
+
enhanceApp: App => props => sheet.collectStyles( /* @__PURE__ */jsxRuntime.jsx(App, _objectSpread({}, props)))
|
|
213
225
|
});
|
|
214
|
-
const initialProps = await
|
|
226
|
+
const initialProps = await Document__default["default"].getInitialProps(ctx);
|
|
215
227
|
return _objectSpread(_objectSpread({}, initialProps), {}, {
|
|
216
228
|
styles: [initialProps.styles, sheet.getStyleElement()]
|
|
217
229
|
});
|
|
@@ -220,5 +232,16 @@ class ServerStyleSheetDocument extends Document {
|
|
|
220
232
|
}
|
|
221
233
|
}
|
|
222
234
|
}
|
|
223
|
-
|
|
224
|
-
|
|
235
|
+
exports.NextStudio = NextStudio;
|
|
236
|
+
exports.NextStudioGlobalStyle = NextStudioGlobalStyle;
|
|
237
|
+
exports.NextStudioHead = NextStudioHead;
|
|
238
|
+
exports.NextStudioNoScript = NextStudioNoScript;
|
|
239
|
+
exports.ServerStyleSheetDocument = ServerStyleSheetDocument;
|
|
240
|
+
exports.isWorkspaceWithTheme = isWorkspaceWithTheme;
|
|
241
|
+
exports.isWorkspaces = isWorkspaces;
|
|
242
|
+
exports.useBackgroundColorsFromTheme = useBackgroundColorsFromTheme;
|
|
243
|
+
exports.useBasePath = useBasePath;
|
|
244
|
+
exports.useConfigWithBasePath = useConfigWithBasePath;
|
|
245
|
+
exports.useTextFontFamilyFromTheme = useTextFontFamilyFromTheme;
|
|
246
|
+
exports.useTheme = useTheme;
|
|
247
|
+
//# sourceMappingURL=studio.cjs.map
|