Socket
Socket
Sign inDemoInstall

next-sanity

Package Overview
Dependencies
Maintainers
33
Versions
323
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

next-sanity - npm Package Compare versions

Comparing version 0.7.1-new-preview-mode.1 to 0.7.1-new-preview-mode.2

lib/cjs/PreviewSubscriptionWithToken.ff543b31.js

4

dist/preview/index.d.ts

@@ -0,1 +1,2 @@

/// <reference types="react" />
import { PreviewMode } from './PreviewMode';

@@ -5,5 +6,6 @@ export default PreviewMode;

export * from './PreviewSubscription';
export * from './PreviewSubscriptionWithToken';
export type { PreviewSubscriptionWithTokenProps } from './PreviewSubscriptionWithToken';
export * from './useAuthenticated';
export * from './useGroqStore';
export * from './useSyncGroqStore';
export declare const PreviewSubscriptionWithToken: import("react").LazyExoticComponent<import("react").MemoExoticComponent<({ token, ...props }: import("./PreviewSubscriptionWithToken").PreviewSubscriptionWithTokenProps) => JSX.Element>>;
/// <reference types="react" />
import { PreviewSubscriptionProps } from './PreviewSubscription';
import { PreviewSubscriptionProps } from '.';
export interface PreviewModeProps extends PreviewSubscriptionProps {

@@ -4,0 +4,0 @@ authMode: 'dual' | 'token' | 'cookie';

/// <reference types="react" />
import { SyncGroqStoreHookProps } from './useSyncGroqStore';
import { SyncGroqStoreHookProps } from '.';
export interface PreviewSubscriptionProps extends SyncGroqStoreHookProps {

@@ -4,0 +4,0 @@ onChange: (data: any) => void;

/// <reference types="react" />
import { PreviewSubscriptionProps } from './PreviewSubscription';
import { PreviewSubscriptionProps } from '.';
export interface PreviewSubscriptionWithTokenProps extends Omit<PreviewSubscriptionProps, 'EventSource' | 'token'> {

@@ -7,1 +7,2 @@ token: string;

export declare const PreviewSubscriptionWithToken: import("react").MemoExoticComponent<({ token, ...props }: PreviewSubscriptionWithTokenProps) => JSX.Element>;
export default PreviewSubscriptionWithToken;

@@ -1,3 +0,3 @@

import { GroqStoreHookProps } from './useGroqStore';
import { GroqStoreHookProps } from '.';
export declare type SyncGroqStoreHookProps = GroqStoreHookProps;
export declare const useSyncGroqStore: (props: SyncGroqStoreHookProps) => any;

@@ -0,8 +1,7 @@

var $fiJTV$react = require("react");
var $fiJTV$reactjsxruntime = require("react/jsx-runtime");
var $fiJTV$react = require("react");
var $fiJTV$reactdom = require("react-dom");
require("@swc/helpers/lib/_define_property.js");
var $fiJTV$sanitygroqstore = require("@sanity/groq-store");
var $fiJTV$usesyncexternalstoreshim = require("use-sync-external-store/shim");
var $fiJTV$sanitygroqstore = require("@sanity/groq-store");
require("@swc/helpers/lib/_define_property.js");
var $fiJTV$eventsource = require("eventsource");

@@ -31,5 +30,41 @@ function $parcel$defineInteropFlag(a) {

}
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
var $parcel$global =
typeof globalThis !== 'undefined'
? globalThis
: typeof self !== 'undefined'
? self
: typeof window !== 'undefined'
? window
: typeof global !== 'undefined'
? global
: {};
var $parcel$modules = {};
var $parcel$inits = {};
var parcelRequire = $parcel$global["parcelRequiree511"];
if (parcelRequire == null) {
parcelRequire = function(id) {
if (id in $parcel$modules) {
return $parcel$modules[id].exports;
}
if (id in $parcel$inits) {
var init = $parcel$inits[id];
delete $parcel$inits[id];
var module = {id: id, exports: {}};
$parcel$modules[id] = module;
init.call(module.exports, module, module.exports);
return module.exports;
}
var err = new Error("Cannot find module '" + id + "'");
err.code = 'MODULE_NOT_FOUND';
throw err;
};
parcelRequire.register = function register(id, init) {
$parcel$inits[id] = init;
};
$parcel$global["parcelRequiree511"] = parcelRequire;
}
parcelRequire.register("lYjOo", function(module, exports) {

@@ -39,22 +74,158 @@ $parcel$defineInteropFlag(module.exports);

$parcel$export(module.exports, "default", () => $b1a2cd61636c66d9$export$2e2bcd8739ae039);
var $1a8a46ea302ca28f$exports = {};
$parcel$export(module.exports, "PreviewSubscriptionWithToken", () => $b1a2cd61636c66d9$export$c3041caee37eb97c);
$parcel$export($1a8a46ea302ca28f$exports, "PreviewMode", () => $1a8a46ea302ca28f$export$8ccc73437257ffb);
var $8yotc = parcelRequire("8yotc");
var $57e31b9d250628f9$exports = {};
var $8yotc = parcelRequire("8yotc");
$parcel$export($57e31b9d250628f9$exports, "PreviewSubscription", () => $57e31b9d250628f9$export$12300834c5825eaf);
var $dZwpt = parcelRequire("dZwpt");
var $925A1 = parcelRequire("925A1");
var $fae8758d5d9b1f1c$exports = {};
var $7ZmOc = parcelRequire("7ZmOc");
$parcel$export($fae8758d5d9b1f1c$exports, "useSyncGroqStore", () => $fae8758d5d9b1f1c$export$33d372cf71c0e4d6);
var $6A4Jr = parcelRequire("6A4Jr");
var $b1a2cd61636c66d9$export$2e2bcd8739ae039 = (0, $8yotc.PreviewMode);
var $5517a888e75ec1a7$exports = {};
const $b1a2cd61636c66d9$export$c3041caee37eb97c = (0, $fiJTV$react.lazy)(()=>(parcelRequire("a0AVd")));
$parcel$exportWildcard(module.exports, $8yotc);
$parcel$exportWildcard(module.exports, $dZwpt);
$parcel$exportWildcard(module.exports, $925A1);
$parcel$exportWildcard(module.exports, $7ZmOc);
$parcel$exportWildcard(module.exports, $6A4Jr);
$parcel$export($5517a888e75ec1a7$exports, "useGroqStore", () => $5517a888e75ec1a7$export$a53c83274731f245);
});
parcelRequire.register("8yotc", function(module, exports) {
$parcel$export(module.exports, "PreviewMode", () => $1a8a46ea302ca28f$export$8ccc73437257ffb);
parcelRequire("lYjOo");
var $925A1 = parcelRequire("925A1");
var $lYjOo = parcelRequire("lYjOo");
var $dZwpt = parcelRequire("dZwpt");
const $1a8a46ea302ca28f$var$PreviewModeComponent = ({ authMode: authMode , onAuth: onAuth , ...props })=>{
const { projectId: projectId , token: token } = props;
const authState = (0, $925A1.useAuthenticated)({
projectId: projectId,
authMode: authMode,
token: token
});
(0, $fiJTV$react.useEffect)(()=>{
if (onAuth && authState !== "checking") onAuth(authState);
}, [
authState,
onAuth
]);
if (authState === "failed" && !onAuth) throw new Error("Failed to authenticate, provide an onAuth callback to silence this error");
switch(authState){
case "checking":
case "failed":
return null;
case "token":
return !props.EventSource && props.token ? /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $fiJTV$react.Suspense), {
fallback: null,
children: /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $lYjOo.PreviewSubscriptionWithToken), {
...props,
token: props.token
})
}) : /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $dZwpt.PreviewSubscription), {
...props
});
case "cookie":
return /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $dZwpt.PreviewSubscription), {
...props
});
default:
throw new Error(`Unknown auth state: ${authState}`);
}
};
const $1a8a46ea302ca28f$export$8ccc73437257ffb = /*#__PURE__*/ (0, $fiJTV$react.memo)($1a8a46ea302ca28f$var$PreviewModeComponent);
});
parcelRequire.register("dZwpt", function(module, exports) {
$parcel$export(module.exports, "PreviewSubscription", () => $57e31b9d250628f9$export$12300834c5825eaf);
parcelRequire("lYjOo");
var $6A4Jr = parcelRequire("6A4Jr");
const $57e31b9d250628f9$var$PreviewSubscriptionComponent = ({ onChange: onChange , ...props })=>{
const data = (0, $6A4Jr.useSyncGroqStore)(props);
(0, $fiJTV$react.useEffect)(()=>{
(0, $fiJTV$reactdom.unstable_batchedUpdates)(()=>onChange(data));
}, [
data,
onChange
]);
return null;
};
const $57e31b9d250628f9$export$12300834c5825eaf = /*#__PURE__*/ (0, $fiJTV$react.memo)($57e31b9d250628f9$var$PreviewSubscriptionComponent);
});
parcelRequire.register("925A1", function(module, exports) {
$parcel$export(module.exports, "getAuthMode", () => $e2a2e937c3fa066f$export$a0904744865bcea7);
$parcel$export(module.exports, "useAuthenticated", () => $e2a2e937c3fa066f$export$7b67165f191725c6);
var $57dEz = parcelRequire("57dEz");
var $9sSWX = parcelRequire("9sSWX");
const $e2a2e937c3fa066f$export$a0904744865bcea7 = (authMode)=>{
switch(authMode){
case "cookie":
case "dual":
case "token":
return authMode;
default:
return "dual";
}
};
const $e2a2e937c3fa066f$export$7b67165f191725c6 = ({ projectId: projectId , authMode: _authMode , token: token })=>{
const authMode = $e2a2e937c3fa066f$export$a0904744865bcea7(_authMode);
const [, checked] = (0, $fiJTV$react.useReducer)(()=>true, false);
const ref = (0, $fiJTV$react.useRef)("checking");
if ((authMode === "dual" || authMode === "token") && !token) throw new Error(`Token is required for token auth mode: ${JSON.stringify(authMode)}`);
(0, $fiJTV$react.useEffect)(()=>{
if (ref.current !== "checking") return;
const aborter = (0, $57dEz.getAborter)();
async function check() {
if (authMode === "dual" || authMode === "cookie") {
const user = await (0, $9sSWX.getCurrentUser)(projectId, aborter);
if (user) {
ref.current = "cookie";
return;
}
}
if (authMode === "dual" || authMode === "token") {
const user1 = await (0, $9sSWX.getCurrentUser)(projectId, aborter, token);
if (user1) {
ref.current = "token";
return;
}
}
ref.current = "failed";
}
check().catch((reason)=>{
console.error("Failed to check auth", reason);
ref.current = "failed";
}).finally(checked);
// eslint-disable-next-line consistent-return
return ()=>aborter.abort();
}, [
authMode,
projectId,
token
]);
return ref.current;
};
});
parcelRequire.register("57dEz", function(module, exports) {
$parcel$export(module.exports, "getAborter", () => $47350dcd847fcd3c$export$c17a0b6b23fbceb);
import "47350dcd847fcd3c:@swc/helpers/lib/_define_property.js:esm";

@@ -78,5 +249,10 @@ class $47350dcd847fcd3c$var$MockAbortController {

});
parcelRequire.register("9sSWX", function(module, exports) {
$parcel$export(module.exports, "getCurrentUser", () => $bc370387db0433d2$export$e5432d4c8eb97ea7);
var $57dEz = parcelRequire("57dEz");
function $bc370387db0433d2$export$dff4cd7257d31f9e({ projectId: projectId }) {

@@ -102,3 +278,3 @@ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types

(0, $fiJTV$react.useEffect)(()=>{
const aborter = (0, $47350dcd847fcd3c$export$c17a0b6b23fbceb)();
const aborter = (0, $57dEz.getAborter)();
$bc370387db0433d2$export$e5432d4c8eb97ea7(projectId, aborter).then(setUser).catch((err)=>err.name !== "AbortError" && setError(err));

@@ -118,3 +294,65 @@ return ()=>{

});
parcelRequire.register("7ZmOc", function(module, exports) {
$parcel$export(module.exports, "useGroqStore", () => $5517a888e75ec1a7$export$a53c83274731f245);
var $gvIUw = parcelRequire("gvIUw");
const $5517a888e75ec1a7$var$EMPTY_PARAMS = {};
const $5517a888e75ec1a7$export$a53c83274731f245 = ({ projectId: projectId , dataset: dataset , documentLimit: documentLimit , token: token , EventSource: EventSource , query: query , onError: onError , ...props })=>{
const [initial] = (0, $fiJTV$react.useState)(props.initial);
const params = (0, $gvIUw.useParams)(props.params || $5517a888e75ec1a7$var$EMPTY_PARAMS);
return (0, $fiJTV$react.useMemo)(()=>{
let snapshot = initial;
return {
getSnapshot: ()=>snapshot,
getServerSnapshot: ()=>initial,
subscribe: (onStoreChange)=>{
const store = (0, $fiJTV$sanitygroqstore.groqStore)({
projectId: projectId,
dataset: dataset,
documentLimit: documentLimit,
token: token,
EventSource: EventSource,
listen: true,
overlayDrafts: true,
subscriptionThrottleMs: 1
});
const subscription = store.subscribe(query, params, (err, result)=>{
if (err) // eslint-disable-next-line no-warning-comments
// @TODO implement onError
throw err;
else {
snapshot = result;
onStoreChange();
}
});
return ()=>subscription.unsubscribe();
}
};
}, [
EventSource,
dataset,
documentLimit,
initial,
params,
projectId,
query,
token
]);
};
});
parcelRequire.register("gvIUw", function(module, exports) {
$parcel$export(module.exports, "useParams", () => $d6780e2afb7f7ec2$export$99eaa27ddbbb95ef);
var $57dEz = parcelRequire("57dEz");
var $9sSWX = parcelRequire("9sSWX");
const $d6780e2afb7f7ec2$var$EMPTY_PARAMS = {};

@@ -173,5 +411,5 @@

setLoading(true);
const aborter = (0, $47350dcd847fcd3c$export$c17a0b6b23fbceb)();
const aborter = (0, $57dEz.getAborter)();
let subscription;
(0, $bc370387db0433d2$export$e5432d4c8eb97ea7)(projectId, aborter, token).then((user)=>{
(0, $9sSWX.getCurrentUser)(projectId, aborter, token).then((user)=>{
if (user) return;

@@ -215,193 +453,25 @@ // eslint-disable-next-line no-console

});
const $5517a888e75ec1a7$var$EMPTY_PARAMS = {};
const $5517a888e75ec1a7$export$a53c83274731f245 = ({ projectId: projectId , dataset: dataset , documentLimit: documentLimit , token: token , EventSource: EventSource , query: query , onError: onError , ...props })=>{
const [initial] = (0, $fiJTV$react.useState)(props.initial);
const params = (0, $d6780e2afb7f7ec2$export$99eaa27ddbbb95ef)(props.params || $5517a888e75ec1a7$var$EMPTY_PARAMS);
return (0, $fiJTV$react.useMemo)(()=>{
let snapshot = initial;
return {
getSnapshot: ()=>snapshot,
getServerSnapshot: ()=>initial,
subscribe: (onStoreChange)=>{
const store = (0, $fiJTV$sanitygroqstore.groqStore)({
projectId: projectId,
dataset: dataset,
documentLimit: documentLimit,
token: token,
EventSource: EventSource,
listen: true,
overlayDrafts: true,
subscriptionThrottleMs: 1
});
const subscription = store.subscribe(query, params, (err, result)=>{
if (err) // eslint-disable-next-line no-warning-comments
// @TODO implement onError
throw err;
else {
snapshot = result;
onStoreChange();
}
});
return ()=>subscription.unsubscribe();
}
};
}, [
EventSource,
dataset,
documentLimit,
initial,
params,
projectId,
query,
token
]);
};
parcelRequire.register("6A4Jr", function(module, exports) {
$parcel$export(module.exports, "useSyncGroqStore", () => $fae8758d5d9b1f1c$export$33d372cf71c0e4d6);
parcelRequire("lYjOo");
var $7ZmOc = parcelRequire("7ZmOc");
const $fae8758d5d9b1f1c$export$33d372cf71c0e4d6 = (props)=>{
const store = (0, $5517a888e75ec1a7$export$a53c83274731f245)(props);
const store = (0, $7ZmOc.useGroqStore)(props);
return (0, $fiJTV$usesyncexternalstoreshim.useSyncExternalStore)(store.subscribe, store.getSnapshot, store.getServerSnapshot);
};
});
const $57e31b9d250628f9$var$PreviewSubscriptionComponent = ({ onChange: onChange , ...props })=>{
const data = (0, $fae8758d5d9b1f1c$export$33d372cf71c0e4d6)(props);
(0, $fiJTV$react.useEffect)(()=>{
(0, $fiJTV$reactdom.unstable_batchedUpdates)(()=>onChange(data));
}, [
data,
onChange
]);
return null;
};
const $57e31b9d250628f9$export$12300834c5825eaf = /*#__PURE__*/ (0, $fiJTV$react.memo)($57e31b9d250628f9$var$PreviewSubscriptionComponent);
parcelRequire.register("a0AVd", function(module, exports) {
module.exports = Promise.resolve(require("./../PreviewSubscriptionWithToken.ff543b31.js")).then(()=>parcelRequire("SpOzU"));
});
var $1234ab6666424a53$exports = {};
$parcel$export($1234ab6666424a53$exports, "PreviewSubscriptionWithToken", () => $1234ab6666424a53$export$c3041caee37eb97c);
const $1234ab6666424a53$var$PreviewSubscriptionWithTokenComponent = ({ token: token , ...props })=>{
if (!token) throw new TypeError("token is required");
return /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $57e31b9d250628f9$export$12300834c5825eaf), {
...props,
token: token,
EventSource: (0, ($parcel$interopDefault($fiJTV$eventsource)))
});
};
const $1234ab6666424a53$export$c3041caee37eb97c = /*#__PURE__*/ (0, $fiJTV$react.memo)($1234ab6666424a53$var$PreviewSubscriptionWithTokenComponent);
var $e2a2e937c3fa066f$exports = {};
$parcel$export($e2a2e937c3fa066f$exports, "getAuthMode", () => $e2a2e937c3fa066f$export$a0904744865bcea7);
$parcel$export($e2a2e937c3fa066f$exports, "useAuthenticated", () => $e2a2e937c3fa066f$export$7b67165f191725c6);
const $e2a2e937c3fa066f$export$a0904744865bcea7 = (authMode)=>{
switch(authMode){
case "cookie":
case "dual":
case "token":
return authMode;
default:
return "dual";
}
};
const $e2a2e937c3fa066f$export$7b67165f191725c6 = ({ projectId: projectId , authMode: _authMode , token: token })=>{
const authMode = $e2a2e937c3fa066f$export$a0904744865bcea7(_authMode);
const [, checked] = (0, $fiJTV$react.useReducer)(()=>true, false);
const ref = (0, $fiJTV$react.useRef)("checking");
if ((authMode === "dual" || authMode === "token") && !token) throw new Error(`Token is required for token auth mode: ${JSON.stringify(authMode)}`);
(0, $fiJTV$react.useEffect)(()=>{
if (ref.current !== "checking") return;
const aborter = (0, $47350dcd847fcd3c$export$c17a0b6b23fbceb)();
async function check() {
if (authMode === "dual" || authMode === "cookie") {
const user = await (0, $bc370387db0433d2$export$e5432d4c8eb97ea7)(projectId, aborter);
if (user) {
ref.current = "cookie";
return;
}
}
if (authMode === "dual" || authMode === "token") {
const user1 = await (0, $bc370387db0433d2$export$e5432d4c8eb97ea7)(projectId, aborter, token);
if (user1) {
ref.current = "token";
return;
}
}
ref.current = "failed";
}
check().catch((reason)=>{
console.error("Failed to check auth", reason);
ref.current = "failed";
}).finally(checked);
// eslint-disable-next-line consistent-return
return ()=>aborter.abort();
}, [
authMode,
projectId,
token
]);
return ref.current;
};
const $1a8a46ea302ca28f$var$PreviewModeComponent = ({ authMode: authMode , onAuth: onAuth , ...props })=>{
const { projectId: projectId , token: token } = props;
const authState = (0, $e2a2e937c3fa066f$export$7b67165f191725c6)({
projectId: projectId,
authMode: authMode,
token: token
});
(0, $fiJTV$react.useEffect)(()=>{
if (onAuth && authState !== "checking") onAuth(authState);
}, [
authState,
onAuth
]);
if (authState === "failed" && !onAuth) throw new Error("Failed to authenticate, provide an onAuth callback to silence this error");
switch(authState){
case "checking":
case "failed":
return null;
case "token":
return !props.EventSource && props.token ? /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $1234ab6666424a53$export$c3041caee37eb97c), {
...props,
token: props.token
}) : /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $57e31b9d250628f9$export$12300834c5825eaf), {
...props
});
case "cookie":
return /*#__PURE__*/ (0, $fiJTV$reactjsxruntime.jsx)((0, $57e31b9d250628f9$export$12300834c5825eaf), {
...props
});
default:
throw new Error(`Unknown auth state: ${authState}`);
}
};
const $1a8a46ea302ca28f$export$8ccc73437257ffb = /*#__PURE__*/ (0, $fiJTV$react.memo)($1a8a46ea302ca28f$var$PreviewModeComponent);
var $b1a2cd61636c66d9$export$2e2bcd8739ae039 = (0, $1a8a46ea302ca28f$export$8ccc73437257ffb);
$parcel$exportWildcard(module.exports, $1a8a46ea302ca28f$exports);
$parcel$exportWildcard(module.exports, $57e31b9d250628f9$exports);
$parcel$exportWildcard(module.exports, $1234ab6666424a53$exports);
$parcel$exportWildcard(module.exports, $e2a2e937c3fa066f$exports);
$parcel$exportWildcard(module.exports, $5517a888e75ec1a7$exports);
$parcel$exportWildcard(module.exports, $fae8758d5d9b1f1c$exports);
//# sourceMappingURL=index.js.map

@@ -0,1 +1,2 @@

/// <reference types="react" />
import { PreviewMode } from './PreviewMode';

@@ -5,5 +6,6 @@ export default PreviewMode;

export * from './PreviewSubscription';
export * from './PreviewSubscriptionWithToken';
export type { PreviewSubscriptionWithTokenProps } from './PreviewSubscriptionWithToken';
export * from './useAuthenticated';
export * from './useGroqStore';
export * from './useSyncGroqStore';
export declare const PreviewSubscriptionWithToken: import("react").LazyExoticComponent<import("react").MemoExoticComponent<({ token, ...props }: import("./PreviewSubscriptionWithToken").PreviewSubscriptionWithTokenProps) => JSX.Element>>;
/// <reference types="react" />
import { type PreviewSubscriptionProps } from './PreviewSubscription';
import { type PreviewSubscriptionProps } from '.';
export interface PreviewModeProps extends PreviewSubscriptionProps {

@@ -4,0 +4,0 @@ authMode: 'dual' | 'token' | 'cookie';

/// <reference types="react" />
import { type SyncGroqStoreHookProps } from './useSyncGroqStore';
import { type SyncGroqStoreHookProps } from '.';
export interface PreviewSubscriptionProps extends SyncGroqStoreHookProps {

@@ -4,0 +4,0 @@ onChange: (data: any) => void;

/// <reference types="react" />
import { type PreviewSubscriptionProps } from './PreviewSubscription';
import { type PreviewSubscriptionProps } from '.';
export interface PreviewSubscriptionWithTokenProps extends Omit<PreviewSubscriptionProps, 'EventSource' | 'token'> {

@@ -7,1 +7,2 @@ token: string;

export declare const PreviewSubscriptionWithToken: import("react").MemoExoticComponent<({ token, ...props }: PreviewSubscriptionWithTokenProps) => JSX.Element>;
export default PreviewSubscriptionWithToken;

@@ -1,3 +0,3 @@

import { type GroqStoreHookProps } from './useGroqStore';
import { type GroqStoreHookProps } from '.';
export declare type SyncGroqStoreHookProps = GroqStoreHookProps;
export declare const useSyncGroqStore: (props: SyncGroqStoreHookProps) => any;

@@ -0,33 +1,230 @@

import {lazy as $dUhZF$lazy, useEffect as $dUhZF$useEffect, Suspense as $dUhZF$Suspense, memo as $dUhZF$memo, useReducer as $dUhZF$useReducer, useRef as $dUhZF$useRef, useState as $dUhZF$useState, useMemo as $dUhZF$useMemo} from "react";
import {jsx as $dUhZF$jsx} from "react/jsx-runtime";
import {useEffect as $dUhZF$useEffect, memo as $dUhZF$memo, useState as $dUhZF$useState, useMemo as $dUhZF$useMemo, useReducer as $dUhZF$useReducer, useRef as $dUhZF$useRef} from "react";
import {unstable_batchedUpdates as $dUhZF$unstable_batchedUpdates} from "react-dom";
import $dUhZF$swchelperssrc_define_propertymjs from "@swc/helpers/src/_define_property.mjs";
import {groqStore as $dUhZF$groqStore} from "@sanity/groq-store";
import {useSyncExternalStore as $dUhZF$useSyncExternalStore} from "use-sync-external-store/shim";
import {groqStore as $dUhZF$groqStore} from "@sanity/groq-store";
import $dUhZF$swchelperssrc_define_propertymjs from "@swc/helpers/src/_define_property.mjs";
import $dUhZF$eventsource from "eventsource";
function $parcel$defineInteropFlag(a) {
Object.defineProperty(a, '__esModule', {value: true, configurable: true});
}
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
var $2e87556581a5c3a0$exports = {};
function $parcel$exportWildcard(dest, source) {
Object.keys(source).forEach(function(key) {
if (key === 'default' || key === '__esModule' || dest.hasOwnProperty(key)) {
return;
}
$parcel$export($2e87556581a5c3a0$exports, "PreviewMode", () => $2e87556581a5c3a0$export$8ccc73437257ffb);
Object.defineProperty(dest, key, {
enumerable: true,
get: function get() {
return source[key];
}
});
});
return dest;
}
var $parcel$global =
typeof globalThis !== 'undefined'
? globalThis
: typeof self !== 'undefined'
? self
: typeof window !== 'undefined'
? window
: typeof global !== 'undefined'
? global
: {};
var $parcel$modules = {};
var $parcel$inits = {};
var $d7b47e7ef80cacdb$exports = {};
var parcelRequire = $parcel$global["parcelRequiree511"];
if (parcelRequire == null) {
parcelRequire = function(id) {
if (id in $parcel$modules) {
return $parcel$modules[id].exports;
}
if (id in $parcel$inits) {
var init = $parcel$inits[id];
delete $parcel$inits[id];
var module = {id: id, exports: {}};
$parcel$modules[id] = module;
init.call(module.exports, module, module.exports);
return module.exports;
}
var err = new Error("Cannot find module '" + id + "'");
err.code = 'MODULE_NOT_FOUND';
throw err;
};
$parcel$export($d7b47e7ef80cacdb$exports, "PreviewSubscription", () => $d7b47e7ef80cacdb$export$12300834c5825eaf);
parcelRequire.register = function register(id, init) {
$parcel$inits[id] = init;
};
$parcel$global["parcelRequiree511"] = parcelRequire;
}
parcelRequire.register("wVCV0", function(module, exports) {
var $ec544cdebc1cc4b1$exports = {};
$parcel$defineInteropFlag(module.exports);
$parcel$export($ec544cdebc1cc4b1$exports, "useSyncGroqStore", () => $ec544cdebc1cc4b1$export$33d372cf71c0e4d6);
$parcel$export(module.exports, "default", () => $01d13170426ef5f2$export$2e2bcd8739ae039);
$parcel$export(module.exports, "PreviewSubscriptionWithToken", () => $01d13170426ef5f2$export$c3041caee37eb97c);
var $17f8d3a3be29400c$exports = {};
$parcel$export($17f8d3a3be29400c$exports, "useGroqStore", () => $17f8d3a3be29400c$export$a53c83274731f245);
var $l3oxH = parcelRequire("l3oxH");
var $l3oxH = parcelRequire("l3oxH");
var $4L0MH = parcelRequire("4L0MH");
var $8OAGz = parcelRequire("8OAGz");
var $1y0ak = parcelRequire("1y0ak");
var $hj3ed = parcelRequire("hj3ed");
var $01d13170426ef5f2$export$2e2bcd8739ae039 = (0, $l3oxH.PreviewMode);
const $01d13170426ef5f2$export$c3041caee37eb97c = (0, $dUhZF$lazy)(()=>(parcelRequire("5JVCy")));
$parcel$exportWildcard(module.exports, $l3oxH);
$parcel$exportWildcard(module.exports, $4L0MH);
$parcel$exportWildcard(module.exports, $8OAGz);
$parcel$exportWildcard(module.exports, $1y0ak);
$parcel$exportWildcard(module.exports, $hj3ed);
});
parcelRequire.register("l3oxH", function(module, exports) {
$parcel$export(module.exports, "PreviewMode", () => $2e87556581a5c3a0$export$8ccc73437257ffb);
parcelRequire("wVCV0");
var $8OAGz = parcelRequire("8OAGz");
var $wVCV0 = parcelRequire("wVCV0");
var $4L0MH = parcelRequire("4L0MH");
const $2e87556581a5c3a0$var$PreviewModeComponent = ({ authMode: authMode , onAuth: onAuth , ...props })=>{
const { projectId: projectId , token: token } = props;
const authState = (0, $8OAGz.useAuthenticated)({
projectId: projectId,
authMode: authMode,
token: token
});
(0, $dUhZF$useEffect)(()=>{
if (onAuth && authState !== "checking") onAuth(authState);
}, [
authState,
onAuth
]);
if (authState === "failed" && !onAuth) throw new Error("Failed to authenticate, provide an onAuth callback to silence this error");
switch(authState){
case "checking":
case "failed":
return null;
case "token":
return !props.EventSource && props.token ? /*#__PURE__*/ (0, $dUhZF$jsx)((0, $dUhZF$Suspense), {
fallback: null,
children: /*#__PURE__*/ (0, $dUhZF$jsx)((0, $wVCV0.PreviewSubscriptionWithToken), {
...props,
token: props.token
})
}) : /*#__PURE__*/ (0, $dUhZF$jsx)((0, $4L0MH.PreviewSubscription), {
...props
});
case "cookie":
return /*#__PURE__*/ (0, $dUhZF$jsx)((0, $4L0MH.PreviewSubscription), {
...props
});
default:
throw new Error(`Unknown auth state: ${authState}`);
}
};
const $2e87556581a5c3a0$export$8ccc73437257ffb = /*#__PURE__*/ (0, $dUhZF$memo)($2e87556581a5c3a0$var$PreviewModeComponent);
});
parcelRequire.register("4L0MH", function(module, exports) {
$parcel$export(module.exports, "PreviewSubscription", () => $d7b47e7ef80cacdb$export$12300834c5825eaf);
parcelRequire("wVCV0");
var $hj3ed = parcelRequire("hj3ed");
const $d7b47e7ef80cacdb$var$PreviewSubscriptionComponent = ({ onChange: onChange , ...props })=>{
const data = (0, $hj3ed.useSyncGroqStore)(props);
(0, $dUhZF$useEffect)(()=>{
(0, $dUhZF$unstable_batchedUpdates)(()=>onChange(data));
}, [
data,
onChange
]);
return null;
};
const $d7b47e7ef80cacdb$export$12300834c5825eaf = /*#__PURE__*/ (0, $dUhZF$memo)($d7b47e7ef80cacdb$var$PreviewSubscriptionComponent);
});
parcelRequire.register("8OAGz", function(module, exports) {
$parcel$export(module.exports, "getAuthMode", () => $b787ff0334b0a19b$export$a0904744865bcea7);
$parcel$export(module.exports, "useAuthenticated", () => $b787ff0334b0a19b$export$7b67165f191725c6);
var $5FxGR = parcelRequire("5FxGR");
var $1jKs6 = parcelRequire("1jKs6");
const $b787ff0334b0a19b$export$a0904744865bcea7 = (authMode)=>{
switch(authMode){
case "cookie":
case "dual":
case "token":
return authMode;
default:
return "dual";
}
};
const $b787ff0334b0a19b$export$7b67165f191725c6 = ({ projectId: projectId , authMode: _authMode , token: token })=>{
const authMode = $b787ff0334b0a19b$export$a0904744865bcea7(_authMode);
const [, checked] = (0, $dUhZF$useReducer)(()=>true, false);
const ref = (0, $dUhZF$useRef)("checking");
if ((authMode === "dual" || authMode === "token") && !token) throw new Error(`Token is required for token auth mode: ${JSON.stringify(authMode)}`);
(0, $dUhZF$useEffect)(()=>{
if (ref.current !== "checking") return;
const aborter = (0, $5FxGR.getAborter)();
async function check() {
if (authMode === "dual" || authMode === "cookie") {
const user = await (0, $1jKs6.getCurrentUser)(projectId, aborter);
if (user) {
ref.current = "cookie";
return;
}
}
if (authMode === "dual" || authMode === "token") {
const user1 = await (0, $1jKs6.getCurrentUser)(projectId, aborter, token);
if (user1) {
ref.current = "token";
return;
}
}
ref.current = "failed";
}
check().catch((reason)=>{
console.error("Failed to check auth", reason);
ref.current = "failed";
}).finally(checked);
// eslint-disable-next-line consistent-return
return ()=>aborter.abort();
}, [
authMode,
projectId,
token
]);
return ref.current;
};
});
parcelRequire.register("5FxGR", function(module, exports) {
$parcel$export(module.exports, "getAborter", () => $0085952ece21d3ba$export$c17a0b6b23fbceb);
class $0085952ece21d3ba$var$MockAbortController {

@@ -50,5 +247,10 @@ get signal() {

});
parcelRequire.register("1jKs6", function(module, exports) {
$parcel$export(module.exports, "getCurrentUser", () => $08d3f2f5648dcc3d$export$e5432d4c8eb97ea7);
var $5FxGR = parcelRequire("5FxGR");
function $08d3f2f5648dcc3d$export$dff4cd7257d31f9e({ projectId: projectId }) {

@@ -74,3 +276,3 @@ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types

(0, $dUhZF$useEffect)(()=>{
const aborter = (0, $0085952ece21d3ba$export$c17a0b6b23fbceb)();
const aborter = (0, $5FxGR.getAborter)();
$08d3f2f5648dcc3d$export$e5432d4c8eb97ea7(projectId, aborter).then(setUser).catch((err)=>err.name !== "AbortError" && setError(err));

@@ -90,3 +292,65 @@ return ()=>{

});
parcelRequire.register("1y0ak", function(module, exports) {
$parcel$export(module.exports, "useGroqStore", () => $17f8d3a3be29400c$export$a53c83274731f245);
var $3AgBX = parcelRequire("3AgBX");
const $17f8d3a3be29400c$var$EMPTY_PARAMS = {};
const $17f8d3a3be29400c$export$a53c83274731f245 = ({ projectId: projectId , dataset: dataset , documentLimit: documentLimit , token: token , EventSource: EventSource , query: query , onError: onError , ...props })=>{
const [initial] = (0, $dUhZF$useState)(props.initial);
const params = (0, $3AgBX.useParams)(props.params || $17f8d3a3be29400c$var$EMPTY_PARAMS);
return (0, $dUhZF$useMemo)(()=>{
let snapshot = initial;
return {
getSnapshot: ()=>snapshot,
getServerSnapshot: ()=>initial,
subscribe: (onStoreChange)=>{
const store = (0, $dUhZF$groqStore)({
projectId: projectId,
dataset: dataset,
documentLimit: documentLimit,
token: token,
EventSource: EventSource,
listen: true,
overlayDrafts: true,
subscriptionThrottleMs: 1
});
const subscription = store.subscribe(query, params, (err, result)=>{
if (err) // eslint-disable-next-line no-warning-comments
// @TODO implement onError
throw err;
else {
snapshot = result;
onStoreChange();
}
});
return ()=>subscription.unsubscribe();
}
};
}, [
EventSource,
dataset,
documentLimit,
initial,
params,
projectId,
query,
token
]);
};
});
parcelRequire.register("3AgBX", function(module, exports) {
$parcel$export(module.exports, "useParams", () => $3c3166547818b8e4$export$99eaa27ddbbb95ef);
var $5FxGR = parcelRequire("5FxGR");
var $1jKs6 = parcelRequire("1jKs6");
const $3c3166547818b8e4$var$EMPTY_PARAMS = {};

@@ -145,5 +409,5 @@

setLoading(true);
const aborter = (0, $0085952ece21d3ba$export$c17a0b6b23fbceb)();
const aborter = (0, $5FxGR.getAborter)();
let subscription;
(0, $08d3f2f5648dcc3d$export$e5432d4c8eb97ea7)(projectId, aborter, token).then((user)=>{
(0, $1jKs6.getCurrentUser)(projectId, aborter, token).then((user)=>{
if (user) return;

@@ -187,188 +451,25 @@ // eslint-disable-next-line no-console

});
const $17f8d3a3be29400c$var$EMPTY_PARAMS = {};
const $17f8d3a3be29400c$export$a53c83274731f245 = ({ projectId: projectId , dataset: dataset , documentLimit: documentLimit , token: token , EventSource: EventSource , query: query , onError: onError , ...props })=>{
const [initial] = (0, $dUhZF$useState)(props.initial);
const params = (0, $3c3166547818b8e4$export$99eaa27ddbbb95ef)(props.params || $17f8d3a3be29400c$var$EMPTY_PARAMS);
return (0, $dUhZF$useMemo)(()=>{
let snapshot = initial;
return {
getSnapshot: ()=>snapshot,
getServerSnapshot: ()=>initial,
subscribe: (onStoreChange)=>{
const store = (0, $dUhZF$groqStore)({
projectId: projectId,
dataset: dataset,
documentLimit: documentLimit,
token: token,
EventSource: EventSource,
listen: true,
overlayDrafts: true,
subscriptionThrottleMs: 1
});
const subscription = store.subscribe(query, params, (err, result)=>{
if (err) // eslint-disable-next-line no-warning-comments
// @TODO implement onError
throw err;
else {
snapshot = result;
onStoreChange();
}
});
return ()=>subscription.unsubscribe();
}
};
}, [
EventSource,
dataset,
documentLimit,
initial,
params,
projectId,
query,
token
]);
};
parcelRequire.register("hj3ed", function(module, exports) {
$parcel$export(module.exports, "useSyncGroqStore", () => $ec544cdebc1cc4b1$export$33d372cf71c0e4d6);
parcelRequire("wVCV0");
var $1y0ak = parcelRequire("1y0ak");
const $ec544cdebc1cc4b1$export$33d372cf71c0e4d6 = (props)=>{
const store = (0, $17f8d3a3be29400c$export$a53c83274731f245)(props);
const store = (0, $1y0ak.useGroqStore)(props);
return (0, $dUhZF$useSyncExternalStore)(store.subscribe, store.getSnapshot, store.getServerSnapshot);
};
});
const $d7b47e7ef80cacdb$var$PreviewSubscriptionComponent = ({ onChange: onChange , ...props })=>{
const data = (0, $ec544cdebc1cc4b1$export$33d372cf71c0e4d6)(props);
(0, $dUhZF$useEffect)(()=>{
(0, $dUhZF$unstable_batchedUpdates)(()=>onChange(data));
}, [
data,
onChange
]);
return null;
};
const $d7b47e7ef80cacdb$export$12300834c5825eaf = /*#__PURE__*/ (0, $dUhZF$memo)($d7b47e7ef80cacdb$var$PreviewSubscriptionComponent);
parcelRequire.register("5JVCy", function(module, exports) {
module.exports = import("./../PreviewSubscriptionWithToken.f8cf2278.js").then(()=>parcelRequire("1Mcgd"));
});
var $2c56130607e1b5a3$exports = {};
$parcel$export($2c56130607e1b5a3$exports, "PreviewSubscriptionWithToken", () => $2c56130607e1b5a3$export$c3041caee37eb97c);
const $2c56130607e1b5a3$var$PreviewSubscriptionWithTokenComponent = ({ token: token , ...props })=>{
if (!token) throw new TypeError("token is required");
return /*#__PURE__*/ (0, $dUhZF$jsx)((0, $d7b47e7ef80cacdb$export$12300834c5825eaf), {
...props,
token: token,
EventSource: (0, $dUhZF$eventsource)
});
};
const $2c56130607e1b5a3$export$c3041caee37eb97c = /*#__PURE__*/ (0, $dUhZF$memo)($2c56130607e1b5a3$var$PreviewSubscriptionWithTokenComponent);
var $b787ff0334b0a19b$exports = {};
$parcel$export($b787ff0334b0a19b$exports, "getAuthMode", () => $b787ff0334b0a19b$export$a0904744865bcea7);
$parcel$export($b787ff0334b0a19b$exports, "useAuthenticated", () => $b787ff0334b0a19b$export$7b67165f191725c6);
const $b787ff0334b0a19b$export$a0904744865bcea7 = (authMode)=>{
switch(authMode){
case "cookie":
case "dual":
case "token":
return authMode;
default:
return "dual";
}
};
const $b787ff0334b0a19b$export$7b67165f191725c6 = ({ projectId: projectId , authMode: _authMode , token: token })=>{
const authMode = $b787ff0334b0a19b$export$a0904744865bcea7(_authMode);
const [, checked] = (0, $dUhZF$useReducer)(()=>true, false);
const ref = (0, $dUhZF$useRef)("checking");
if ((authMode === "dual" || authMode === "token") && !token) throw new Error(`Token is required for token auth mode: ${JSON.stringify(authMode)}`);
(0, $dUhZF$useEffect)(()=>{
if (ref.current !== "checking") return;
const aborter = (0, $0085952ece21d3ba$export$c17a0b6b23fbceb)();
async function check() {
if (authMode === "dual" || authMode === "cookie") {
const user = await (0, $08d3f2f5648dcc3d$export$e5432d4c8eb97ea7)(projectId, aborter);
if (user) {
ref.current = "cookie";
return;
}
}
if (authMode === "dual" || authMode === "token") {
const user1 = await (0, $08d3f2f5648dcc3d$export$e5432d4c8eb97ea7)(projectId, aborter, token);
if (user1) {
ref.current = "token";
return;
}
}
ref.current = "failed";
}
check().catch((reason)=>{
console.error("Failed to check auth", reason);
ref.current = "failed";
}).finally(checked);
// eslint-disable-next-line consistent-return
return ()=>aborter.abort();
}, [
authMode,
projectId,
token
]);
return ref.current;
};
const $2e87556581a5c3a0$var$PreviewModeComponent = ({ authMode: authMode , onAuth: onAuth , ...props })=>{
const { projectId: projectId , token: token } = props;
const authState = (0, $b787ff0334b0a19b$export$7b67165f191725c6)({
projectId: projectId,
authMode: authMode,
token: token
});
(0, $dUhZF$useEffect)(()=>{
if (onAuth && authState !== "checking") onAuth(authState);
}, [
authState,
onAuth
]);
if (authState === "failed" && !onAuth) throw new Error("Failed to authenticate, provide an onAuth callback to silence this error");
switch(authState){
case "checking":
case "failed":
return null;
case "token":
return !props.EventSource && props.token ? /*#__PURE__*/ (0, $dUhZF$jsx)((0, $2c56130607e1b5a3$export$c3041caee37eb97c), {
...props,
token: props.token
}) : /*#__PURE__*/ (0, $dUhZF$jsx)((0, $d7b47e7ef80cacdb$export$12300834c5825eaf), {
...props
});
case "cookie":
return /*#__PURE__*/ (0, $dUhZF$jsx)((0, $d7b47e7ef80cacdb$export$12300834c5825eaf), {
...props
});
default:
throw new Error(`Unknown auth state: ${authState}`);
}
};
const $2e87556581a5c3a0$export$8ccc73437257ffb = /*#__PURE__*/ (0, $dUhZF$memo)($2e87556581a5c3a0$var$PreviewModeComponent);
var $01d13170426ef5f2$export$2e2bcd8739ae039 = (0, $2e87556581a5c3a0$export$8ccc73437257ffb);
export {$01d13170426ef5f2$export$2e2bcd8739ae039 as default, $2e87556581a5c3a0$export$8ccc73437257ffb as PreviewMode, $d7b47e7ef80cacdb$export$12300834c5825eaf as PreviewSubscription, $2c56130607e1b5a3$export$c3041caee37eb97c as PreviewSubscriptionWithToken, $b787ff0334b0a19b$export$a0904744865bcea7 as getAuthMode, $b787ff0334b0a19b$export$7b67165f191725c6 as useAuthenticated, $17f8d3a3be29400c$export$a53c83274731f245 as useGroqStore, $ec544cdebc1cc4b1$export$33d372cf71c0e4d6 as useSyncGroqStore};
//# sourceMappingURL=index.js.map
{
"name": "next-sanity",
"version": "0.7.1-new-preview-mode.1",
"version": "0.7.1-new-preview-mode.2",
"description": "Sanity.io toolkit for Next.js",

@@ -5,0 +5,0 @@ "keywords": [

@@ -0,1 +1,3 @@

import {lazy} from 'react'
import {PreviewMode} from './PreviewMode'

@@ -6,5 +8,7 @@

export * from './PreviewSubscription'
export * from './PreviewSubscriptionWithToken'
export type {PreviewSubscriptionWithTokenProps} from './PreviewSubscriptionWithToken'
export * from './useAuthenticated'
export * from './useGroqStore'
export * from './useSyncGroqStore'
export const PreviewSubscriptionWithToken = lazy(() => import('./PreviewSubscriptionWithToken'))
import {useSyncExternalStore} from 'use-sync-external-store/shim'
import {type GroqStoreHookProps, useGroqStore} from './useGroqStore'
import {type GroqStoreHookProps, useGroqStore} from '.'

@@ -5,0 +5,0 @@ export type SyncGroqStoreHookProps = GroqStoreHookProps

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc