@sanity/language-filter

5.0.205.0.21
dist/index.js
~dist/index.jsModified
+20−23
Index: package/dist/index.js
===================================================================
--- package/dist/index.js
+++ package/dist/index.js
@@ -1,9 +1,9 @@
 import "@sanity/ui/styles.css";
 import { c } from "react/compiler-runtime";
 import { createContext, useContext, useState } from "react";
 import { useObservable } from "react-rx";
-import { catchError, defer, from, of, tap } from "rxjs";
+import { catchError, defer, from, of } from "rxjs";
 import { TextWithTone, definePlugin, isObjectSchemaType, useClient, useFormValue, useSchema } from "sanity";
 import { Fragment, jsx, jsxs } from "react/jsx-runtime";
 import { CheckmarkCircleIcon } from "@sanity/icons/CheckmarkCircle";
 import { CircleIcon } from "@sanity/icons/Circle";
@@ -65,43 +65,40 @@
 * but it used to listen to changes to the selected language IDs inside it
 * and provide them to a Studio-wide context
 */
 function LanguageFilterStudioProvider(props) {
-	let $ = c(18), t0;
+	let $ = c(19), t0;
 	$[0] === Symbol.for("react.memo_cache_sentinel") ? (t0 = { apiVersion: "2023-01-01" }, $[0] = t0) : t0 = $[0];
 	let client = useClient(t0), supportedLanguages = props.options.supportedLanguages, defaultLanguages = props.options.defaultLanguages, t1;
-	$[1] === Symbol.for("react.memo_cache_sentinel") ? (t1 = [], $[1] = t1) : t1 = $[1];
-	let [selectedLanguageIds, setSelectedLanguageIds] = useState(t1), t2;
-	$[2] !== client || $[3] !== defaultLanguages || $[4] !== supportedLanguages ? (t2 = () => (Array.isArray(supportedLanguages) ? of(supportedLanguages) : defer(() => from(supportedLanguages(client, {}))).pipe(catchError(_temp$2))).pipe(tap((languages) => {
-		let persistedLanguageIds = getPersistedLanguageIds({
-			supportedLanguages: languages,
-			defaultLanguages
-		});
-		setSelectedLanguageIds(persistedLanguageIds);
-	})), $[2] = client, $[3] = defaultLanguages, $[4] = supportedLanguages, $[5] = t2) : t2 = $[5];
-	let [languages$] = useState(t2), languages_0 = useObservable(languages$, INITIAL_VALUE), t3;
-	$[6] !== languages_0 || $[7] !== props.options ? (t3 = {
+	$[1] !== client || $[2] !== supportedLanguages ? (t1 = () => Array.isArray(supportedLanguages) ? of(supportedLanguages) : defer(() => from(supportedLanguages(client, {}))).pipe(catchError(_temp$2)), $[1] = client, $[2] = supportedLanguages, $[3] = t1) : t1 = $[3];
+	let [languages$] = useState(t1), languages = useObservable(languages$, INITIAL_VALUE), [sessionLanguageIds, setSessionLanguageIds] = useState(null), t2;
+	$[4] !== defaultLanguages || $[5] !== languages ? (t2 = getPersistedLanguageIds({
+		supportedLanguages: languages,
+		defaultLanguages
+	}), $[4] = defaultLanguages, $[5] = languages, $[6] = t2) : t2 = $[6];
+	let selectedLanguageIds = sessionLanguageIds ?? t2, t3;
+	$[7] !== languages || $[8] !== props.options ? (t3 = {
 		...defaultContextValue.options,
 		...props.options,
-		supportedLanguages: languages_0
-	}, $[6] = languages_0, $[7] = props.options, $[8] = t3) : t3 = $[8];
+		supportedLanguages: languages
+	}, $[7] = languages, $[8] = props.options, $[9] = t3) : t3 = $[9];
 	let options = t3, t4;
-	$[9] === Symbol.for("react.memo_cache_sentinel") ? (t4 = (ids) => {
-		setSelectedLanguageIds(ids), setPersistedLanguageIds(ids);
-	}, $[9] = t4) : t4 = $[9];
+	$[10] === Symbol.for("react.memo_cache_sentinel") ? (t4 = (ids) => {
+		setSessionLanguageIds(ids), setPersistedLanguageIds(ids);
+	}, $[10] = t4) : t4 = $[10];
 	let onSelectedLanguageIdsChange = t4, t5;
-	$[10] !== options || $[11] !== selectedLanguageIds ? (t5 = {
+	$[11] !== options || $[12] !== selectedLanguageIds ? (t5 = {
 		options,
 		selectedLanguageIds,
 		setSelectedLanguageIds: onSelectedLanguageIdsChange
-	}, $[10] = options, $[11] = selectedLanguageIds, $[12] = t5) : t5 = $[12];
+	}, $[11] = options, $[12] = selectedLanguageIds, $[13] = t5) : t5 = $[13];
 	let value = t5, t6;
-	$[13] === props ? t6 = $[14] : (t6 = props.renderDefault(props), $[13] = props, $[14] = t6);
+	$[14] === props ? t6 = $[15] : (t6 = props.renderDefault(props), $[14] = props, $[15] = t6);
 	let t7;
-	return $[15] !== t6 || $[16] !== value ? (t7 = /* @__PURE__ */ jsx(LanguageFilterStudioContext.Provider, {
+	return $[16] !== t6 || $[17] !== value ? (t7 = /* @__PURE__ */ jsx(LanguageFilterStudioContext.Provider, {
 		value,
 		children: t6
-	}), $[15] = t6, $[16] = value, $[17] = t7) : t7 = $[17], t7;
+	}), $[16] = t6, $[17] = value, $[18] = t7) : t7 = $[18], t7;
 }
 function _temp$2() {
 	return of([]);
 }