sanity 5.3.0-next.11 → 5.3.0-next.12
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.
|
@@ -96,7 +96,7 @@ function shouldAutoUpdate({
|
|
|
96
96
|
return hasOldCliConfigFlag && output?.warn(chalk.yellow(`The \`autoUpdates\` config has moved to \`deployment.autoUpdates\`.
|
|
97
97
|
Please update \`sanity.cli.ts\` or \`sanity.cli.js\` and make the following change:
|
|
98
98
|
${chalk.red(`- autoUpdates: ${cliConfig.autoUpdates},`)}
|
|
99
|
-
${chalk.green(`+ deployment: {autoUpdates: ${cliConfig.autoUpdates}}
|
|
99
|
+
${chalk.green(`+ deployment: {autoUpdates: ${cliConfig.autoUpdates}},`)}
|
|
100
100
|
`)), !!(hasOldCliConfigFlag ? cliConfig.autoUpdates : cliConfig?.deployment?.autoUpdates);
|
|
101
101
|
}
|
|
102
102
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shouldAutoUpdate.js","sources":["../../src/_internal/cli/util/getAutoUpdatesImportMap.ts","../../src/_internal/cli/util/compareDependencyVersions.ts","../../src/_internal/cli/util/shouldAutoUpdate.ts"],"sourcesContent":["const MODULES_HOST =\n process.env.SANITY_MODULES_HOST ||\n (process.env.SANITY_INTERNAL_ENV === 'staging'\n ? 'https://sanity-cdn.work'\n : 'https://sanity-cdn.com')\n\nfunction currentUnixTime(): number {\n return Math.floor(Date.now() / 1000)\n}\n\ntype Package = {version: string; name: string}\n/**\n * @internal\n */\nexport function getAutoUpdatesImportMap<const Pkg extends Package>(\n packages: Pkg[],\n options: {timestamp?: number; baseUrl?: string; appId?: string} = {},\n) {\n return Object.fromEntries(\n packages.flatMap((pkg) => getAppAutoUpdateImportMapForPackage(pkg, options)),\n ) as {[K in Pkg['name'] | `${Pkg['name']}/`]: string}\n}\n\nfunction getAppAutoUpdateImportMapForPackage<const Pkg extends Package>(\n pkg: Pkg,\n options: {timestamp?: number; baseUrl?: string; appId?: string} = {},\n): [[Pkg['name'], string], [`${Pkg['name']}/`, string]] {\n const moduleUrl = getModuleUrl(pkg, options)\n\n return [\n [pkg.name, moduleUrl],\n [`${pkg.name}/`, `${moduleUrl}/`],\n ]\n}\n\nexport function getModuleUrl(\n pkg: Package,\n options: {timestamp?: number; baseUrl?: string; appId?: string} = {},\n) {\n const {timestamp = currentUnixTime()} = options\n return options.appId\n ? getByAppModuleUrl(pkg, {appId: options.appId, baseUrl: options.baseUrl, timestamp})\n : getLegacyModuleUrl(pkg, {timestamp, baseUrl: options.baseUrl})\n}\n\nfunction getLegacyModuleUrl(pkg: Package, options: {timestamp: number; baseUrl?: string}) {\n const encodedMinVer = encodeURIComponent(`^${pkg.version}`)\n return `${options.baseUrl || MODULES_HOST}/v1/modules/${rewriteScopedPackage(pkg.name)}/default/${encodedMinVer}/t${options.timestamp}`\n}\n\nfunction getByAppModuleUrl(\n pkg: Package,\n options: {appId: string; baseUrl?: string; timestamp: number},\n) {\n const encodedMinVer = encodeURIComponent(`^${pkg.version}`)\n return `${options.baseUrl || MODULES_HOST}/v1/modules/by-app/${options.appId}/t${options.timestamp}/${encodedMinVer}/${rewriteScopedPackage(pkg.name)}`\n}\n\n/**\n * replaces '/' with '__' similar to how eg `@types/scope__pkg` are rewritten\n * scoped packages are stored this way both in the manifest and in the cloud storage bucket\n */\nfunction rewriteScopedPackage(pkgName: string) {\n if (!pkgName.includes('@')) {\n return pkgName\n }\n const [scope, ...pkg] = pkgName.split('/')\n return `${scope}__${pkg.join('')}`\n}\n","import path from 'node:path'\n\nimport resolveFrom from 'resolve-from'\nimport semver from 'semver'\n\nimport {getModuleUrl} from './getAutoUpdatesImportMap'\nimport {readPackageManifest} from './readPackageManifest'\n\nfunction getRemoteResolvedVersion(fetchFn: typeof fetch, url: string) {\n return fetchFn(url, {\n method: 'HEAD',\n redirect: 'manual',\n }).then(\n (res) => {\n // 302 is expected, but lets also handle 2xx\n if (res.ok || res.status < 400) {\n const resolved = res.headers.get('x-resolved-version')\n if (!resolved) {\n throw new Error(`Missing 'x-resolved-version' header on response from HEAD ${url}`)\n }\n return resolved\n }\n throw new Error(`Unexpected HTTP response: ${res.status} ${res.statusText}`)\n },\n (err) => {\n throw new Error(`Failed to fetch remote version for ${url}: ${err.message}`, {cause: err})\n },\n )\n}\n\ninterface CompareDependencyVersions {\n pkg: string\n installed: string\n remote: string\n}\n\n/**\n * Compares the versions of dependencies in the studio or app with their remote versions.\n *\n * This function reads the package.json file in the provided working directory, and compares the versions of the dependencies\n * specified in the `autoUpdatesImports` parameter with their remote versions. If the versions do not match, the dependency is\n * added to a list of failed dependencies, which is returned by the function.\n *\n * The failed dependencies are anything that does not strictly match the remote version.\n * This means that if a version is lower or greater by even a patch it will be marked as failed.\n *\n * @param autoUpdatesImports - An object mapping package names to their remote import URLs.\n * @param workDir - The path to the working directory containing the package.json file.\n * @param fetchFn - Optional {@link https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API | Fetch}-compatible function to use for requesting the current remote version of a module\n *\n * @returns A promise that resolves to an array of objects, each containing\n * the name of a package whose local and remote versions do not match, along with the local and remote versions.\n *\n * @throws Throws an error if the remote version of a package cannot be fetched, or if the local version of a package\n * cannot be parsed.\n */\nexport async function compareDependencyVersions(\n packages: {version: string; name: string}[],\n workDir: string,\n {fetchFn = globalThis.fetch}: {appId?: string; fetchFn?: typeof fetch} = {},\n): Promise<Array<CompareDependencyVersions>> {\n const manifest = await readPackageManifest(path.join(workDir, 'package.json'))\n const dependencies = {...manifest.dependencies, ...manifest.devDependencies}\n\n const failedDependencies: Array<CompareDependencyVersions> = []\n\n for (const pkg of packages) {\n const resolvedVersion = await getRemoteResolvedVersion(fetchFn, getModuleUrl(pkg))\n\n const manifestPath = resolveFrom.silent(workDir, path.join(pkg.name, 'package.json'))\n\n const manifestVersion = dependencies[pkg.name]\n\n const installed = semver.coerce(\n manifestPath\n ? semver.parse((await readPackageManifest(manifestPath)).version)\n : semver.coerce(manifestVersion),\n )\n\n if (!installed) {\n throw new Error(`Failed to parse installed version for ${pkg}`)\n }\n\n if (!semver.eq(resolvedVersion, installed.version)) {\n failedDependencies.push({\n pkg: pkg.name,\n installed: installed.version,\n remote: resolvedVersion,\n })\n }\n }\n\n return failedDependencies\n}\n","import {type CliConfig} from '@sanity/cli'\nimport chalk from 'chalk'\n\ninterface AutoUpdateSources {\n flags: {['auto-updates']?: boolean}\n cliConfig?: CliConfig\n output?: {warn: (message: string) => void}\n}\n\n/**\n * Compares parameters from various sources to determine whether or not to auto-update\n * @param sources - The sources of the auto-update parameter, including CLI flags and the CLI config\n * @returns boolean\n * @internal\n */\nexport function shouldAutoUpdate({flags, cliConfig, output}: AutoUpdateSources): boolean {\n // cli flags (for example, '--no-auto-updates') should take precedence\n if ('auto-updates' in flags) {\n if (output) {\n const flagUsed = flags['auto-updates'] ? '--auto-updates' : '--no-auto-updates'\n output.warn(\n chalk.yellow(\n `The ${flagUsed} flag is deprecated for \\`deploy\\` and \\`build\\` commands. Set the \\`autoUpdates\\` option in \\`sanity.cli.ts\\` or \\`sanity.cli.js\\` instead.`,\n ),\n )\n }\n return Boolean(flags['auto-updates'])\n }\n\n const hasOldCliConfigFlag = cliConfig && 'autoUpdates' in cliConfig\n const hasNewCliConfigFlag =\n cliConfig &&\n 'deployment' in cliConfig &&\n cliConfig.deployment &&\n 'autoUpdates' in cliConfig.deployment\n\n if (hasOldCliConfigFlag && hasNewCliConfigFlag) {\n throw new Error(\n 'Found both `autoUpdates` (deprecated) and `deployment.autoUpdates` in sanity.cli.js. Please remove the deprecated top level `autoUpdates` config.',\n )\n }\n if (hasOldCliConfigFlag) {\n output?.warn(\n chalk.yellow(\n `The \\`autoUpdates\\` config has moved to \\`deployment.autoUpdates\\`.\nPlease update \\`sanity.cli.ts\\` or \\`sanity.cli.js\\` and make the following change:\n${chalk.red(`- autoUpdates: ${cliConfig.autoUpdates},`)}\n${chalk.green(`+ deployment: {autoUpdates: ${cliConfig.autoUpdates}}}`)}\n`,\n ),\n )\n }\n return Boolean(hasOldCliConfigFlag ? cliConfig.autoUpdates : cliConfig?.deployment?.autoUpdates)\n}\n"],"names":["MODULES_HOST","process","env","SANITY_MODULES_HOST","SANITY_INTERNAL_ENV","currentUnixTime","Math","floor","Date","now","getAutoUpdatesImportMap","packages","options","Object","fromEntries","flatMap","pkg","getAppAutoUpdateImportMapForPackage","moduleUrl","getModuleUrl","name","timestamp","appId","getByAppModuleUrl","baseUrl","getLegacyModuleUrl","encodedMinVer","encodeURIComponent","version","rewriteScopedPackage","pkgName","includes","scope","split","join","getRemoteResolvedVersion","fetchFn","url","method","redirect","then","res","ok","status","resolved","headers","get","Error","statusText","err","message","cause","compareDependencyVersions","workDir","globalThis","fetch","manifest","readPackageManifest","path","dependencies","devDependencies","failedDependencies","resolvedVersion","manifestPath","resolveFrom","silent","manifestVersion","installed","semver","coerce","parse","eq","push","remote","shouldAutoUpdate","flags","cliConfig","output","flagUsed","warn","chalk","yellow","Boolean","hasOldCliConfigFlag","hasNewCliConfigFlag","deployment","red","autoUpdates","green"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shouldAutoUpdate.js","sources":["../../src/_internal/cli/util/getAutoUpdatesImportMap.ts","../../src/_internal/cli/util/compareDependencyVersions.ts","../../src/_internal/cli/util/shouldAutoUpdate.ts"],"sourcesContent":["const MODULES_HOST =\n process.env.SANITY_MODULES_HOST ||\n (process.env.SANITY_INTERNAL_ENV === 'staging'\n ? 'https://sanity-cdn.work'\n : 'https://sanity-cdn.com')\n\nfunction currentUnixTime(): number {\n return Math.floor(Date.now() / 1000)\n}\n\ntype Package = {version: string; name: string}\n/**\n * @internal\n */\nexport function getAutoUpdatesImportMap<const Pkg extends Package>(\n packages: Pkg[],\n options: {timestamp?: number; baseUrl?: string; appId?: string} = {},\n) {\n return Object.fromEntries(\n packages.flatMap((pkg) => getAppAutoUpdateImportMapForPackage(pkg, options)),\n ) as {[K in Pkg['name'] | `${Pkg['name']}/`]: string}\n}\n\nfunction getAppAutoUpdateImportMapForPackage<const Pkg extends Package>(\n pkg: Pkg,\n options: {timestamp?: number; baseUrl?: string; appId?: string} = {},\n): [[Pkg['name'], string], [`${Pkg['name']}/`, string]] {\n const moduleUrl = getModuleUrl(pkg, options)\n\n return [\n [pkg.name, moduleUrl],\n [`${pkg.name}/`, `${moduleUrl}/`],\n ]\n}\n\nexport function getModuleUrl(\n pkg: Package,\n options: {timestamp?: number; baseUrl?: string; appId?: string} = {},\n) {\n const {timestamp = currentUnixTime()} = options\n return options.appId\n ? getByAppModuleUrl(pkg, {appId: options.appId, baseUrl: options.baseUrl, timestamp})\n : getLegacyModuleUrl(pkg, {timestamp, baseUrl: options.baseUrl})\n}\n\nfunction getLegacyModuleUrl(pkg: Package, options: {timestamp: number; baseUrl?: string}) {\n const encodedMinVer = encodeURIComponent(`^${pkg.version}`)\n return `${options.baseUrl || MODULES_HOST}/v1/modules/${rewriteScopedPackage(pkg.name)}/default/${encodedMinVer}/t${options.timestamp}`\n}\n\nfunction getByAppModuleUrl(\n pkg: Package,\n options: {appId: string; baseUrl?: string; timestamp: number},\n) {\n const encodedMinVer = encodeURIComponent(`^${pkg.version}`)\n return `${options.baseUrl || MODULES_HOST}/v1/modules/by-app/${options.appId}/t${options.timestamp}/${encodedMinVer}/${rewriteScopedPackage(pkg.name)}`\n}\n\n/**\n * replaces '/' with '__' similar to how eg `@types/scope__pkg` are rewritten\n * scoped packages are stored this way both in the manifest and in the cloud storage bucket\n */\nfunction rewriteScopedPackage(pkgName: string) {\n if (!pkgName.includes('@')) {\n return pkgName\n }\n const [scope, ...pkg] = pkgName.split('/')\n return `${scope}__${pkg.join('')}`\n}\n","import path from 'node:path'\n\nimport resolveFrom from 'resolve-from'\nimport semver from 'semver'\n\nimport {getModuleUrl} from './getAutoUpdatesImportMap'\nimport {readPackageManifest} from './readPackageManifest'\n\nfunction getRemoteResolvedVersion(fetchFn: typeof fetch, url: string) {\n return fetchFn(url, {\n method: 'HEAD',\n redirect: 'manual',\n }).then(\n (res) => {\n // 302 is expected, but lets also handle 2xx\n if (res.ok || res.status < 400) {\n const resolved = res.headers.get('x-resolved-version')\n if (!resolved) {\n throw new Error(`Missing 'x-resolved-version' header on response from HEAD ${url}`)\n }\n return resolved\n }\n throw new Error(`Unexpected HTTP response: ${res.status} ${res.statusText}`)\n },\n (err) => {\n throw new Error(`Failed to fetch remote version for ${url}: ${err.message}`, {cause: err})\n },\n )\n}\n\ninterface CompareDependencyVersions {\n pkg: string\n installed: string\n remote: string\n}\n\n/**\n * Compares the versions of dependencies in the studio or app with their remote versions.\n *\n * This function reads the package.json file in the provided working directory, and compares the versions of the dependencies\n * specified in the `autoUpdatesImports` parameter with their remote versions. If the versions do not match, the dependency is\n * added to a list of failed dependencies, which is returned by the function.\n *\n * The failed dependencies are anything that does not strictly match the remote version.\n * This means that if a version is lower or greater by even a patch it will be marked as failed.\n *\n * @param autoUpdatesImports - An object mapping package names to their remote import URLs.\n * @param workDir - The path to the working directory containing the package.json file.\n * @param fetchFn - Optional {@link https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API | Fetch}-compatible function to use for requesting the current remote version of a module\n *\n * @returns A promise that resolves to an array of objects, each containing\n * the name of a package whose local and remote versions do not match, along with the local and remote versions.\n *\n * @throws Throws an error if the remote version of a package cannot be fetched, or if the local version of a package\n * cannot be parsed.\n */\nexport async function compareDependencyVersions(\n packages: {version: string; name: string}[],\n workDir: string,\n {fetchFn = globalThis.fetch}: {appId?: string; fetchFn?: typeof fetch} = {},\n): Promise<Array<CompareDependencyVersions>> {\n const manifest = await readPackageManifest(path.join(workDir, 'package.json'))\n const dependencies = {...manifest.dependencies, ...manifest.devDependencies}\n\n const failedDependencies: Array<CompareDependencyVersions> = []\n\n for (const pkg of packages) {\n const resolvedVersion = await getRemoteResolvedVersion(fetchFn, getModuleUrl(pkg))\n\n const manifestPath = resolveFrom.silent(workDir, path.join(pkg.name, 'package.json'))\n\n const manifestVersion = dependencies[pkg.name]\n\n const installed = semver.coerce(\n manifestPath\n ? semver.parse((await readPackageManifest(manifestPath)).version)\n : semver.coerce(manifestVersion),\n )\n\n if (!installed) {\n throw new Error(`Failed to parse installed version for ${pkg}`)\n }\n\n if (!semver.eq(resolvedVersion, installed.version)) {\n failedDependencies.push({\n pkg: pkg.name,\n installed: installed.version,\n remote: resolvedVersion,\n })\n }\n }\n\n return failedDependencies\n}\n","import {type CliConfig} from '@sanity/cli'\nimport chalk from 'chalk'\n\ninterface AutoUpdateSources {\n flags: {['auto-updates']?: boolean}\n cliConfig?: CliConfig\n output?: {warn: (message: string) => void}\n}\n\n/**\n * Compares parameters from various sources to determine whether or not to auto-update\n * @param sources - The sources of the auto-update parameter, including CLI flags and the CLI config\n * @returns boolean\n * @internal\n */\nexport function shouldAutoUpdate({flags, cliConfig, output}: AutoUpdateSources): boolean {\n // cli flags (for example, '--no-auto-updates') should take precedence\n if ('auto-updates' in flags) {\n if (output) {\n const flagUsed = flags['auto-updates'] ? '--auto-updates' : '--no-auto-updates'\n output.warn(\n chalk.yellow(\n `The ${flagUsed} flag is deprecated for \\`deploy\\` and \\`build\\` commands. Set the \\`autoUpdates\\` option in \\`sanity.cli.ts\\` or \\`sanity.cli.js\\` instead.`,\n ),\n )\n }\n return Boolean(flags['auto-updates'])\n }\n\n const hasOldCliConfigFlag = cliConfig && 'autoUpdates' in cliConfig\n const hasNewCliConfigFlag =\n cliConfig &&\n 'deployment' in cliConfig &&\n cliConfig.deployment &&\n 'autoUpdates' in cliConfig.deployment\n\n if (hasOldCliConfigFlag && hasNewCliConfigFlag) {\n throw new Error(\n 'Found both `autoUpdates` (deprecated) and `deployment.autoUpdates` in sanity.cli.js. Please remove the deprecated top level `autoUpdates` config.',\n )\n }\n if (hasOldCliConfigFlag) {\n output?.warn(\n chalk.yellow(\n `The \\`autoUpdates\\` config has moved to \\`deployment.autoUpdates\\`.\nPlease update \\`sanity.cli.ts\\` or \\`sanity.cli.js\\` and make the following change:\n${chalk.red(`- autoUpdates: ${cliConfig.autoUpdates},`)}\n${chalk.green(`+ deployment: {autoUpdates: ${cliConfig.autoUpdates}},`)}\n`,\n ),\n )\n }\n return Boolean(hasOldCliConfigFlag ? cliConfig.autoUpdates : cliConfig?.deployment?.autoUpdates)\n}\n"],"names":["MODULES_HOST","process","env","SANITY_MODULES_HOST","SANITY_INTERNAL_ENV","currentUnixTime","Math","floor","Date","now","getAutoUpdatesImportMap","packages","options","Object","fromEntries","flatMap","pkg","getAppAutoUpdateImportMapForPackage","moduleUrl","getModuleUrl","name","timestamp","appId","getByAppModuleUrl","baseUrl","getLegacyModuleUrl","encodedMinVer","encodeURIComponent","version","rewriteScopedPackage","pkgName","includes","scope","split","join","getRemoteResolvedVersion","fetchFn","url","method","redirect","then","res","ok","status","resolved","headers","get","Error","statusText","err","message","cause","compareDependencyVersions","workDir","globalThis","fetch","manifest","readPackageManifest","path","dependencies","devDependencies","failedDependencies","resolvedVersion","manifestPath","resolveFrom","silent","manifestVersion","installed","semver","coerce","parse","eq","push","remote","shouldAutoUpdate","flags","cliConfig","output","flagUsed","warn","chalk","yellow","Boolean","hasOldCliConfigFlag","hasNewCliConfigFlag","deployment","red","autoUpdates","green"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ try {
|
|
|
7
7
|
try {
|
|
8
8
|
buildVersion = buildVersion || // This is replaced by `@sanity/pkg-utils` at build time
|
|
9
9
|
// and must always be references by its full static name, e.g. no optional chaining, no `if (process && process.env)` etc.
|
|
10
|
-
"5.3.0-next.
|
|
10
|
+
"5.3.0-next.12+5e9770d032";
|
|
11
11
|
} catch {
|
|
12
12
|
}
|
|
13
13
|
const SANITY_VERSION = buildVersion || `${version}-dev`;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sanity",
|
|
3
|
-
"version": "5.3.0-next.
|
|
3
|
+
"version": "5.3.0-next.12+5e9770d032",
|
|
4
4
|
"description": "Sanity is a real-time content infrastructure with a scalable, hosted backend featuring a Graph Oriented Query Language (GROQ), asset pipelines and fast edge caches",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sanity",
|
|
@@ -250,12 +250,12 @@
|
|
|
250
250
|
"which": "^5.0.0",
|
|
251
251
|
"xstate": "^5.25.0",
|
|
252
252
|
"yargs": "^17.7.2",
|
|
253
|
-
"@sanity/cli": "5.3.0-next.
|
|
254
|
-
"@sanity/
|
|
255
|
-
"@sanity/
|
|
256
|
-
"@sanity/
|
|
253
|
+
"@sanity/cli": "5.3.0-next.12+5e9770d032",
|
|
254
|
+
"@sanity/diff": "5.3.0-next.12+5e9770d032",
|
|
255
|
+
"@sanity/mutator": "5.3.0-next.12+5e9770d032",
|
|
256
|
+
"@sanity/schema": "5.3.0-next.12+5e9770d032",
|
|
257
257
|
"@sanity/types": "5.2.0",
|
|
258
|
-
"@sanity/util": "5.3.0-next.
|
|
258
|
+
"@sanity/util": "5.3.0-next.12+5e9770d032"
|
|
259
259
|
},
|
|
260
260
|
"devDependencies": {
|
|
261
261
|
"@playwright/experimental-ct-react": "1.56.1",
|
|
@@ -301,13 +301,13 @@
|
|
|
301
301
|
"swr": "2.2.5",
|
|
302
302
|
"vitest": "^3.2.4",
|
|
303
303
|
"vitest-package-exports": "^1.1.1",
|
|
304
|
-
"@repo/
|
|
305
|
-
"@repo/
|
|
306
|
-
"@repo/package.
|
|
307
|
-
"@repo/
|
|
308
|
-
"@repo/
|
|
309
|
-
"@repo/
|
|
310
|
-
"@sanity/codegen": "5.3.0-next.
|
|
304
|
+
"@repo/dev-aliases": "5.3.0-next.12+5e9770d032",
|
|
305
|
+
"@repo/eslint-config": "5.3.0-next.12+5e9770d032",
|
|
306
|
+
"@repo/package.bundle": "5.3.0-next.12+5e9770d032",
|
|
307
|
+
"@repo/package.config": "5.3.0-next.12+5e9770d032",
|
|
308
|
+
"@repo/test-config": "5.3.0-next.12+5e9770d032",
|
|
309
|
+
"@repo/tsconfig": "5.3.0-next.12+5e9770d032",
|
|
310
|
+
"@sanity/codegen": "5.3.0-next.12+5e9770d032"
|
|
311
311
|
},
|
|
312
312
|
"peerDependencies": {
|
|
313
313
|
"react": "^19.2.2",
|