@sanity/sdk-react 2.14.1 → 2.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -29
- package/dist/index.d.ts +459 -335
- package/dist/index.js +22 -6
- package/dist/index.js.map +1 -1
- package/package.json +32 -34
- package/src/_exports/sdk-react.ts +1 -0
- package/src/components/auth/AuthBoundary.recovery.test.tsx +86 -0
- package/src/components/auth/AuthBoundary.tsx +11 -1
- package/src/hooks/document/useCreateDocument.test.tsx +83 -0
- package/src/hooks/document/useCreateDocument.ts +117 -0
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { c } from "react-compiler-runtime";
|
|
3
3
|
import { ClientError, CorsOriginError } from "@sanity/client";
|
|
4
|
-
import { getAuthState, getNodeState, getIsInDashboardState, isStudioConfig, setAuthToken, AuthStateType, getLoginUrlState, observeOrganizationVerificationState, handleAuthCallback, logout, isProjectUserNotFoundClientError, getClientErrorApiDescription, getClientErrorApiBody, isImportError, getCorsErrorProjectId, createSanityInstance, isDatasetResource, agentGenerate, agentPatch, agentPrompt, agentTransform, agentTranslate, getTokenState, getCurrentUserState, getDashboardOrganizationId, getClientState, getOrCreateController, getOrCreateChannel, releaseChannel, isMediaLibraryResource, isCanvasResource, getFavoritesState, resolveFavoritesState, resolveDatasets, getDatasetsState, applyDocumentActions, resolveDocument, getDocumentState, subscribeDocumentEvents, getPermissionsState, getDocumentSyncStatus, editDocument, getQueryKey, parseQueryKey, getQueryState, resolveQuery, createGroqSearchFilter, resolveOrganization, getOrganizationState, resolveOrganizations, getOrganizationsState, getPresence, getProjectionState, resolveProjection, transformProjectionToPreview, PREVIEW_PROJECTION, resolveProject, getProjectState, resolveProjects, getProjectsState, getActiveReleasesState, getAllReleasesState, getPerspectiveState, getUsersKey, parseUsersKey, getUsersState, resolveUsers, loadMoreUsers } from "@sanity/sdk";
|
|
4
|
+
import { getAuthState, getNodeState, getIsInDashboardState, isStudioConfig, setAuthToken, AuthStateType, getLoginUrlState, observeOrganizationVerificationState, handleAuthCallback, logout, isProjectUserNotFoundClientError, getClientErrorApiDescription, getClientErrorApiBody, isImportError, getCorsErrorProjectId, createSanityInstance, isDatasetResource, agentGenerate, agentPatch, agentPrompt, agentTransform, agentTranslate, getTokenState, getCurrentUserState, getDashboardOrganizationId, getClientState, getOrCreateController, getOrCreateChannel, releaseChannel, isMediaLibraryResource, isCanvasResource, getFavoritesState, resolveFavoritesState, resolveDatasets, getDatasetsState, applyDocumentActions, createDocument, resolveDocument, getDocumentState, subscribeDocumentEvents, getPermissionsState, getDocumentSyncStatus, editDocument, getQueryKey, parseQueryKey, getQueryState, resolveQuery, createGroqSearchFilter, resolveOrganization, getOrganizationState, resolveOrganizations, getOrganizationsState, getPresence, getProjectionState, resolveProjection, transformProjectionToPreview, PREVIEW_PROJECTION, resolveProject, getProjectState, resolveProjects, getProjectsState, getActiveReleasesState, getAllReleasesState, getPerspectiveState, getUsersKey, parseUsersKey, getUsersState, resolveUsers, loadMoreUsers } from "@sanity/sdk";
|
|
5
5
|
export * from "@sanity/sdk";
|
|
6
6
|
import { createContext, useContext, useSyncExternalStore, useRef, useEffect, useState, Suspense, StrictMode, useCallback, useMemo, useInsertionEffect, useTransition } from "react";
|
|
7
7
|
import { getErrorMessage, ErrorBoundary } from "react-error-boundary";
|
|
@@ -430,22 +430,24 @@ if (isInIframe() && !document.querySelector("[data-sanity-core]")) {
|
|
|
430
430
|
script.src = mode === "core-ui--staging" ? "https://core.sanity-cdn.work/bridge.js" : "https://core.sanity-cdn.com/bridge.js", script.type = "module", script.async = !0, document.head.appendChild(script);
|
|
431
431
|
}
|
|
432
432
|
function AuthBoundary(t0) {
|
|
433
|
-
const $ = c(
|
|
433
|
+
const $ = c(13);
|
|
434
434
|
let props, t1;
|
|
435
435
|
$[0] !== t0 ? ({
|
|
436
436
|
LoginErrorComponent: t1,
|
|
437
437
|
...props
|
|
438
438
|
} = t0, $[0] = t0, $[1] = props, $[2] = t1) : (props = $[1], t1 = $[2]);
|
|
439
|
-
const LoginErrorComponent = t1 === void 0 ? LoginError : t1;
|
|
439
|
+
const LoginErrorComponent = t1 === void 0 ? LoginError : t1, authState = useAuthState(), sessionResetKey = authState.type === AuthStateType.LOGGED_IN ? authState.token : authState.type;
|
|
440
440
|
let t2, t3;
|
|
441
441
|
$[3] !== LoginErrorComponent ? (t3 = function(fallbackProps) {
|
|
442
442
|
return isImportError(fallbackProps.error) ? /* @__PURE__ */ jsx(ChunkLoadError, { ...fallbackProps }) : fallbackProps.error instanceof CorsOriginError ? /* @__PURE__ */ jsx(CorsErrorComponent, { ...fallbackProps, projectId: getCorsErrorProjectId(fallbackProps.error) }) : /* @__PURE__ */ jsx(LoginErrorComponent, { ...fallbackProps });
|
|
443
443
|
}, $[3] = LoginErrorComponent, $[4] = t3) : t3 = $[4], t2 = t3;
|
|
444
444
|
const FallbackComponent = t2;
|
|
445
445
|
let t4;
|
|
446
|
-
$[5] !==
|
|
446
|
+
$[5] !== sessionResetKey ? (t4 = [sessionResetKey], $[5] = sessionResetKey, $[6] = t4) : t4 = $[6];
|
|
447
447
|
let t5;
|
|
448
|
-
|
|
448
|
+
$[7] !== props ? (t5 = /* @__PURE__ */ jsx(AuthSwitch, { ...props }), $[7] = props, $[8] = t5) : t5 = $[8];
|
|
449
|
+
let t6;
|
|
450
|
+
return $[9] !== FallbackComponent || $[10] !== t4 || $[11] !== t5 ? (t6 = /* @__PURE__ */ jsx(ComlinkTokenRefreshProvider, { children: /* @__PURE__ */ jsx(ErrorBoundary, { FallbackComponent, resetKeys: t4, children: t5 }) }), $[9] = FallbackComponent, $[10] = t4, $[11] = t5, $[12] = t6) : t6 = $[12], t6;
|
|
449
451
|
}
|
|
450
452
|
function AuthSwitch(t0) {
|
|
451
453
|
const $ = c(16);
|
|
@@ -1275,6 +1277,19 @@ function useTrackHookUsage(hookName) {
|
|
|
1275
1277
|
function trackHookUsage(instance, hookName) {
|
|
1276
1278
|
trackHookMounted(instance, hookName);
|
|
1277
1279
|
}
|
|
1280
|
+
function useCreateDocument(options) {
|
|
1281
|
+
const $ = c(3), instance = useSanityInstance();
|
|
1282
|
+
trackHookUsage(instance, "useCreateDocument");
|
|
1283
|
+
const apply = useApplyDocumentActions();
|
|
1284
|
+
let t0;
|
|
1285
|
+
return $[0] !== apply || $[1] !== options ? (t0 = async (initialValue, overrides) => {
|
|
1286
|
+
const documentId = overrides?.documentId ?? options.documentId ?? crypto.randomUUID(), handle = {
|
|
1287
|
+
...options,
|
|
1288
|
+
documentId
|
|
1289
|
+
};
|
|
1290
|
+
return await apply(createDocument(handle, initialValue)), handle;
|
|
1291
|
+
}, $[0] = apply, $[1] = options, $[2] = t0) : t0 = $[2], t0;
|
|
1292
|
+
}
|
|
1278
1293
|
const useDocumentValue = createStateSourceHook({
|
|
1279
1294
|
// Pass options directly to getDocumentState
|
|
1280
1295
|
getState: (instance, options) => getDocumentState(instance, options),
|
|
@@ -1817,7 +1832,7 @@ function useUsers(options) {
|
|
|
1817
1832
|
loadMore
|
|
1818
1833
|
};
|
|
1819
1834
|
}
|
|
1820
|
-
var version = "2.
|
|
1835
|
+
var version = "2.15.0";
|
|
1821
1836
|
function getEnv(key) {
|
|
1822
1837
|
if (typeof import.meta < "u" && import.meta.env)
|
|
1823
1838
|
return import.meta.env[key];
|
|
@@ -1850,6 +1865,7 @@ export {
|
|
|
1850
1865
|
useAuthState,
|
|
1851
1866
|
useAuthToken,
|
|
1852
1867
|
useClient,
|
|
1868
|
+
useCreateDocument,
|
|
1853
1869
|
useCurrentUser,
|
|
1854
1870
|
useDashboardNavigate,
|
|
1855
1871
|
useDashboardOrganizationId,
|