sanity-plugin-internationalized-array

5.1.255.1.26
~

Modified (5 files)

Index: package/dist/index.js
===================================================================
--- package/dist/index.js
+++ package/dist/index.js
@@ -1,8 +1,10 @@
+import "@sanity/ui/styles.css";
 import { languageFilter, useLanguageFilterStudioContext } from "@sanity/language-filter";
 import { ArrayOfObjectsItem, MemberItemError, PatchEvent, defineDocumentFieldAction, defineField, definePlugin, insert, isDocumentSchemaType, isObjectInputProps, isSanityDocument, set, setIfMissing, unset, useClient, useFormValue, useGetFormValue, useSchema, useWorkspace } from "sanity";
 import { c } from "react/compiler-runtime";
-import { Box, Button, Card, Code, Flex, Grid, Label, Menu, MenuButton, MenuItem, Spinner, Stack, Text, Tooltip, useToast } from "@sanity/ui";
+import { Box, Button, Card, Flex, Grid, Label, Spinner, Stack, Text } from "@sanity/ui";
+import { useToast } from "@sanity/ui/toast";
 import { randomKey } from "@sanity/util/content";
 import { createContext, createElement, use, useCallback, useContext, useDeferredValue, useEffect } from "react";
 import { useDocumentPane } from "sanity/structure";
 import { AddIcon } from "@sanity/icons/Add";
@@ -10,10 +12,13 @@
 import { Fragment, jsx, jsxs } from "react/jsx-runtime";
 import { TranslateIcon } from "@sanity/icons/Translate";
 import camelCase from "lodash-es/camelCase.js";
 import upperFirst from "lodash-es/upperFirst.js";
+import { Code } from "@sanity/ui/code";
 import { WarningOutlineIcon } from "@sanity/icons/WarningOutline";
 import { RemoveCircleIcon } from "@sanity/icons/RemoveCircle";
+import { Menu, MenuButton, MenuItem } from "@sanity/ui/menu";
+import { Tooltip } from "@sanity/ui/tooltip";
 const namespace = "sanity-plugin-internationalized-array", functionKeyCache = /* @__PURE__ */ new WeakMap(), promiseCache = /* @__PURE__ */ new Map(), functionCache = /* @__PURE__ */ new Map();
 function stringifyCacheKey(key) {
 	return JSON.stringify(key);
 }
@@ -466,53 +471,53 @@
 		return nextLanguageIndex < 0 ? languagesInUse.push(item) : languagesInUse.splice(nextLanguageIndex, 0, item), nextLanguageIndex < 0 ? insert([item], "after", [...path, nextLanguageIndex]) : insert([item], "before", [...path, nextLanguageIndex]);
 	});
 }
 const createTranslateFieldActions = (fieldActionProps, { languages, filteredLanguages }) => languages.map((language) => {
-	let value = useFormValue(fieldActionProps.path), { onChange, formState } = useDocumentPane(), disabled = !!formState?.readOnly || (value && Array.isArray(value) ? !!value?.find((item) => item.language === language.id) : !1), hidden = !filteredLanguages.some((f) => f.id === language.id);
+	let value = useFormValue(fieldActionProps.path), { onChange, formState } = useDocumentPane(), disabled = !!formState?.readOnly || (value && Array.isArray(value) ? !!value?.find((item) => item.language === language.id) : !1), hidden = !filteredLanguages.some((f) => f.id === language.id), onAction = useCallback(() => {
+		let { schemaType, path } = fieldActionProps, patches = createAddLanguagePatches({
+			addLanguageKeys: [language.id],
+			schemaTypeName: schemaType.name,
+			languages,
+			filteredLanguages,
+			value,
+			path
+		});
+		onChange(PatchEvent.from([setIfMissing([], path), ...patches]));
+	}, [
+		language.id,
+		value,
+		onChange
+	]);
 	return {
 		type: "action",
 		icon: AddIcon,
-		onAction: useCallback(() => {
-			let { schemaType, path } = fieldActionProps, patches = createAddLanguagePatches({
-				addLanguageKeys: [language.id],
-				schemaTypeName: schemaType.name,
-				languages,
-				filteredLanguages,
-				value,
-				path
-			});
-			onChange(PatchEvent.from([setIfMissing([], path), ...patches]));
-		}, [
-			language.id,
-			value,
-			onChange
-		]),
+		onAction,
 		title: language.title,
 		hidden,
 		disabled
 	};
 }), AddMissingTranslationsFieldAction = (fieldActionProps, { languages, filteredLanguages }) => {
-	let value = useFormValue(fieldActionProps.path), { onChange, formState } = useDocumentPane(), disabled = !!formState?.readOnly || value && value.length === filteredLanguages.length, hidden = checkAllLanguagesArePresent(filteredLanguages, value);
+	let value = useFormValue(fieldActionProps.path), { onChange, formState } = useDocumentPane(), disabled = !!formState?.readOnly || value && value.length === filteredLanguages.length, hidden = checkAllLanguagesArePresent(filteredLanguages, value), onAction = useCallback(() => {
+		let { schemaType, path } = fieldActionProps, patches = createAddLanguagePatches({
+			addLanguageKeys: [],
+			schemaTypeName: schemaType.name,
+			languages,
+			filteredLanguages,
+			value,
+			path
+		});
+		onChange(PatchEvent.from([setIfMissing([], path), ...patches]));
+	}, [
+		fieldActionProps,
+		filteredLanguages,
+		languages,
+		onChange,
+		value
+	]);
 	return {
 		type: "action",
 		icon: AddIcon,
-		onAction: useCallback(() => {
-			let { schemaType, path } = fieldActionProps, patches = createAddLanguagePatches({
-				addLanguageKeys: [],
-				schemaTypeName: schemaType.name,
-				languages,
-				filteredLanguages,
-				value,
-				path
-			});
-			onChange(PatchEvent.from([setIfMissing([], path), ...patches]));
-		}, [
-			fieldActionProps,
-			filteredLanguages,
-			languages,
-			onChange,
-			value
-		]),
+		onAction,
 		title: createAddAllTitle(value, filteredLanguages),
 		disabled,
 		hidden
 	};
@@ -1176,11 +1181,11 @@
 function _temp2(patch) {
 	return !patch || typeof patch != "object" ? !1 : patch.type === "insert" && patch.path && Array.isArray(patch.path) && patch.path.length > 0 ? patch.path[0] === "value" || typeof patch.path[0] == "number" : !1;
 }
 var object_default = (config) => {
-	let { type } = config, typeName = typeof type == "string" ? type : type.name;
+	let { type } = config, typeName = typeof type == "string" ? type : type.name, objectName = createFieldName(typeName, !0);
 	return defineField({
-		name: createFieldName(typeName, !0),
+		name: objectName,
 		title: `Internationalized array ${typeName}`,
 		type: "object",
 		components: {
 			item: InternationalizedInput,
Index: package/package.json
===================================================================
--- package/package.json
+++ package/package.json
@@ -1,7 +1,7 @@
 {
   "name": "sanity-plugin-internationalized-array",
-  "version": "5.1.25",
+  "version": "5.1.26",
   "description": "Store localized fields in an array to save on attributes",
   "keywords": [
     "sanity",
     "sanity-plugin"
@@ -28,10 +28,10 @@
     "./package.json": "./package.json"
   },
   "dependencies": {
     "@sanity/icons": "^5.2.1",
-    "@sanity/ui": "^3.5.1",
-    "@sanity/util": "^6.7.0",
+    "@sanity/ui": "^4.0.0",
+    "@sanity/util": "^6.9.0",
     "lodash-es": "^4.18.1"
   },
   "devDependencies": {
     "@sanity/tsconfig": "^2.2.1",
@@ -45,19 +45,19 @@
     "babel-plugin-react-compiler": "^1.0.0",
     "jsdom": "^29.1.1",
     "react": "^19.2.8",
     "react-dom": "^19.2.8",
-    "sanity": "^6.7.0",
+    "sanity": "^6.9.0",
     "styled-components": "^6.4.4",
     "tsdown": "^0.22.14",
-    "@sanity/language-filter": "5.0.14"
+    "@sanity/language-filter": "5.0.15"
   },
   "peerDependencies": {
     "react": "^19.2",
     "react-dom": "^19.2",
     "sanity": "^5 || ^6.0.0-0",
-    "@sanity/assist": "^6.1.17",
-    "@sanity/language-filter": "^5.0.14"
+    "@sanity/language-filter": "^5.0.15",
+    "@sanity/assist": "^6.1.18"
   },
   "peerDependenciesMeta": {
     "@sanity/assist": {
       "optional": true
Index: package/dist/index.d.ts.map
===================================================================
--- package/dist/index.d.ts.map
+++ package/dist/index.d.ts.map
@@ -1,1 +1,1 @@
-{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/cache.ts","../src/constants.ts","../src/plugin.tsx","../src/utils/internationalizedArrayLanguageFilter.ts"],"mappings":";;KAEY;EACV,IAAI,KAAK;EACT;;KAGU;KAEA;EACV;EACA,MAAM;EACN,WAAW;EACX;EACA;EACA;EACA;EACA,aAAa,OAAO;EACpB;KAAU;IAAuB;OAAW;;;;;;;KAMlC;EACV;;EAEA;EACA;;iBAGc,iCACd,eACC,QAAQ;KAIC,2BAA2B;EACrC;EACA,QAAQ;;EAER;;;;EAIA;;KAGU,oBACV,QAAQ,cACR,eAAe,4BACZ,QAAQ;KAED;KAEA;;;;;EAKV;;;;;;;;;;;;;EAaA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BT,WAAW,aAAa;;;;;;;;;EASxB;;;;;;;;;;;;;;;;;;;;;;;;EAyBA,sBAAsB,qBAAqB;;;;;EAK3C;;;;;EAKA;;;;;EAKA,kBAAkB;;;;;;;;;;EAUlB,0BAA0B;;;;;;;;;;;;EAY1B;IACE,eAAe,SAAS;IACxB,mBAAmB;;;cCjJV;;;;;;;;;;;;;;;;;;;;;;;;cCJA;cCZA,yCAAsB,OAAA;;;;;cCJtB,uCAAoC,eAChC,kBAAgB,SACtB,cAAc,eAAa,+BACP,aAChB,qCAAmC,WACrC"}
\ No newline at end of file
+{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/cache.ts","../src/constants.ts","../src/plugin.tsx","../src/utils/internationalizedArrayLanguageFilter.ts"],"mappings":";;;KAEY;EACV,IAAI,KAAK;EACT;;KAGU;KAEA;EACV;EACA,MAAM;EACN,WAAW;EACX;EACA;EACA;EACA;EACA,aAAa,OAAO;EACpB;KAAU;IAAuB;OAAW;;;;;;;KAMlC;EACV;;EAEA;EACA;;iBAGc,iCACd,eACC,QAAQ;KAIC,2BAA2B;EACrC;EACA,QAAQ;;EAER;;;;EAIA;;KAGU,oBACV,QAAQ,cACR,eAAe,4BACZ,QAAQ;KAED;KAEA;;;;;EAKV;;;;;;;;;;;;;EAaA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BT,WAAW,aAAa;;;;;;;;;EASxB;;;;;;;;;;;;;;;;;;;;;;;;EAyBA,sBAAsB,qBAAqB;;;;;EAK3C;;;;;EAKA;;;;;EAKA,kBAAkB;;;;;;;;;;EAUlB,0BAA0B;;;;;;;;;;;;EAY1B;IACE,eAAe,SAAS;IACxB,mBAAmB;;;cCjJV;;;;;;;;;;;;;;;;;;;;;;;;cCJA;cCZA,yCAAsB,OAAA;;;;;cCJtB,uCAAoC,eAChC,kBAAgB,SACtB,cAAc,eAAa,+BACP,aAChB,qCAAmC,WACrC"}
\ No newline at end of file
File too large for inline diff
Index: package/dist/index.d.ts
===================================================================
--- package/dist/index.d.ts
+++ package/dist/index.d.ts
@@ -1,4 +1,5 @@
+import "@sanity/ui/styles.css";
 import { LanguageFilterConfig } from "@sanity/language-filter";
 import { FieldDefinition, FieldMember, FieldsetState, ObjectSchemaType, Rule, RuleTypeConstraint, SanityClient } from "sanity";
 type Language = {
   id: Intl.UnicodeBCP47LocaleIdentifier;