@sanity/assist 4.4.2 → 4.4.4
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 +0 -2
- package/dist/index.esm.js +24 -7
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +23 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +24 -7
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/assistDocument/components/AssistDocumentForm.tsx +15 -1
- package/src/assistDocument/hooks/useAssistDocumentContextValue.tsx +11 -3
package/README.md
CHANGED
package/dist/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { pathToString, getVersionFromId, getPublishedId, isVersionId, useEditState, useCurrentUser, useClient, typed, isObjectSchemaType, stringToPath, isKeySegment, isArraySchemaType, useSchema, FormFieldHeaderText, PatchEvent, unset, getVersionId, getDraftId, useColorSchemeValue, useFormCallbacks, useDocumentStore, useDocumentPresence, createPatchChannel, FormBuilder, fromMutationPatches, StatusButton, PresenceOverlay, VirtualizerScrollInstanceProvider, isDocumentSchemaType, useSyncState, set, useWorkspaceSchemaId, FormCallbacksProvider, FormInput, setIfMissing, insert, ObjectInputMember, isArrayOfObjectsSchemaType, defineType, defineField, defineArrayMember, definePlugin } from "sanity";
|
|
2
|
+
import { pathToString, getVersionFromId, getPublishedId, isVersionId, useEditState, useCurrentUser, useClient, typed, isObjectSchemaType, stringToPath, isKeySegment, isArraySchemaType, useSchema, FormFieldHeaderText, PatchEvent, unset, getVersionId, getDraftId, useColorSchemeValue, useFormCallbacks, useDocumentStore, useDocumentPresence, createPatchChannel, FormBuilder, fromMutationPatches, StatusButton, PresenceOverlay, VirtualizerScrollInstanceProvider, isDocumentSchemaType, useSyncState, set, useWorkspaceSchemaId, MemberFieldError, FormCallbacksProvider, FormInput, setIfMissing, insert, ObjectInputMember, isArrayOfObjectsSchemaType, defineType, defineField, defineArrayMember, definePlugin } from "sanity";
|
|
3
3
|
import { useToast, useLayer, Dialog, Stack, Flex, Tooltip, Text, TextArea, Button, Badge, Popover, Card, Box, ErrorBoundary, focusFirstDescendant, Spinner, Container, Autocomplete, Breadcrumbs, useClickOutside, useGlobalKeyDown, useTheme, rgba, Radio, Checkbox, ThemeProvider, MenuButton, Menu, MenuItem, Switch, Label } from "@sanity/ui";
|
|
4
4
|
import { useRef, useState, useEffect, useMemo, createContext, useContext, useCallback, useId, forwardRef, createElement, useReducer } from "react";
|
|
5
5
|
import { useDocumentPane, usePaneRouter, DocumentInspectorHeader, DocumentPaneProvider } from "sanity/structure";
|
|
@@ -1024,7 +1024,13 @@ function useAssistDocumentContextValue(documentId, documentType) {
|
|
|
1024
1024
|
if (!schemaType)
|
|
1025
1025
|
throw new Error(`Schema type "${documentType}" not found`);
|
|
1026
1026
|
return schemaType;
|
|
1027
|
-
}, [documentType, schema]), {
|
|
1027
|
+
}, [documentType, schema]), { fieldRefs, fieldRefsByTypePath } = useMemo(() => {
|
|
1028
|
+
const fieldRefs2 = getFieldRefs(documentSchemaType), fieldRefsByTypePath2 = asFieldRefsByTypePath(fieldRefs2);
|
|
1029
|
+
return {
|
|
1030
|
+
fieldRefs: fieldRefs2,
|
|
1031
|
+
fieldRefsByTypePath: fieldRefsByTypePath2
|
|
1032
|
+
};
|
|
1033
|
+
}, [documentSchemaType]), {
|
|
1028
1034
|
openInspector,
|
|
1029
1035
|
closeInspector,
|
|
1030
1036
|
inspector,
|
|
@@ -1036,7 +1042,7 @@ function useAssistDocumentContextValue(documentId, documentType) {
|
|
|
1036
1042
|
} = useDocumentPane(), { draft, published, version } = editState || {}, assistableDocumentId = selectedReleaseId ? getVersionId(documentId, selectedReleaseId) : documentSchemaType.liveEdit ? documentId : getDraftId(documentId), documentIsNew = selectedReleaseId ? !version?._id : !draft?._id && !published?._id, documentIsAssistable = selectedReleaseId ? !!version : isDocAssistable(documentSchemaType, published, draft), { params } = useAiPaneRouter(), selectedPath = params[fieldPathParam], assistDocument = useStudioAssistDocument({
|
|
1037
1043
|
documentId: assistableDocumentId,
|
|
1038
1044
|
schemaType: documentSchemaType
|
|
1039
|
-
}), { syntheticTasks, addSyntheticTask, removeSyntheticTask } = useSyntheticTasks(assistableDocumentId)
|
|
1045
|
+
}), { syntheticTasks, addSyntheticTask, removeSyntheticTask } = useSyntheticTasks(assistableDocumentId);
|
|
1040
1046
|
return useMemo(() => {
|
|
1041
1047
|
const base = {
|
|
1042
1048
|
assistableDocumentId,
|
|
@@ -1072,7 +1078,9 @@ function useAssistDocumentContextValue(documentId, documentType) {
|
|
|
1072
1078
|
selectedPath,
|
|
1073
1079
|
syntheticTasks,
|
|
1074
1080
|
addSyntheticTask,
|
|
1075
|
-
removeSyntheticTask
|
|
1081
|
+
removeSyntheticTask,
|
|
1082
|
+
fieldRefs,
|
|
1083
|
+
fieldRefsByTypePath
|
|
1076
1084
|
]);
|
|
1077
1085
|
}
|
|
1078
1086
|
function useSyntheticTasks(assistableDocumentId) {
|
|
@@ -3215,9 +3223,17 @@ function AssistDocumentFormEditable(props) {
|
|
|
3215
3223
|
}),
|
|
3216
3224
|
[formCallbacks, onPathOpen, params, setParams, instruction2]
|
|
3217
3225
|
);
|
|
3218
|
-
|
|
3226
|
+
useEffect(() => {
|
|
3219
3227
|
activePath && !instruction2 && onPathOpen([]);
|
|
3220
|
-
}, [activePath, instruction2, onPathOpen])
|
|
3228
|
+
}, [activePath, instruction2, onPathOpen]);
|
|
3229
|
+
const fieldError = useMemo(() => {
|
|
3230
|
+
const fieldError2 = props.members.find(
|
|
3231
|
+
(m) => m.kind === "error" && m.fieldName === "fields"
|
|
3232
|
+
);
|
|
3233
|
+
if (fieldError2)
|
|
3234
|
+
return /* @__PURE__ */ jsx(MemberFieldError, { member: fieldError2 });
|
|
3235
|
+
}, [props.members]);
|
|
3236
|
+
return /* @__PURE__ */ jsx(SelectedFieldContextProvider, { value: context, children: /* @__PURE__ */ jsxs(Stack, { space: 5, children: [
|
|
3221
3237
|
/* @__PURE__ */ jsx(
|
|
3222
3238
|
FieldsInitializer,
|
|
3223
3239
|
{
|
|
@@ -3230,7 +3246,8 @@ function AssistDocumentFormEditable(props) {
|
|
|
3230
3246
|
typePath
|
|
3231
3247
|
),
|
|
3232
3248
|
instruction2 && /* @__PURE__ */ jsx(BackToInstructionListLink, {}),
|
|
3233
|
-
activePath && /* @__PURE__ */ jsx(FormCallbacksProvider, { ...newCallbacks, children: /* @__PURE__ */ jsx("div", { style: { lineHeight: "1.25em" }, children: /* @__PURE__ */ jsx(FormInput, { ...props, absolutePath: activePath }) }) }),
|
|
3249
|
+
activePath && !fieldError && /* @__PURE__ */ jsx(FormCallbacksProvider, { ...newCallbacks, children: /* @__PURE__ */ jsx("div", { style: { lineHeight: "1.25em" }, children: /* @__PURE__ */ jsx(FormInput, { ...props, absolutePath: activePath }) }) }),
|
|
3250
|
+
fieldError,
|
|
3234
3251
|
!activePath && props.renderDefault(props)
|
|
3235
3252
|
] }) });
|
|
3236
3253
|
}
|