@sanity/document-internationalization 1.1.0 → 1.1.2
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/lib/index.esm.js +1 -1
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/package.json +5 -5
- package/src/actions/DuplicateWithi18nAction.tsx +44 -6
package/lib/index.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=["config"];var t,a,n,i,l,r,s,o,u,c,d;function h(e,t){if(null==e)return{};var a,n,i=function(e,t){if(null==e)return{};var a,n,i={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}function m(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function g(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function p(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?g(Object(a),!0).forEach((function(t){f(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):g(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function f(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}import{useClient as v,isKeyedObject as b,useSchema as y,useEditState as S,useDocumentOperation as _,useValidationStatus as C,useSyncState as w,DefaultPreview as M,useDocumentStore as I,definePlugin as A}from"sanity";import E from"just-safe-get";import T from"lodash/compact";import*as L from"react";import N,{useState as k,useEffect as B,useMemo as D,forwardRef as R,useCallback as O,createContext as P,useContext as j,useRef as G}from"react";import{useToast as K,Stack as z,Text as F,Card as U,Autocomplete as x,Flex as H,Box as W,Button as Z,Code as V,Container as Y,Dialog as J,Grid as $,MenuItem as q,Badge as Q,MenuButton as X,Menu as ee}from"@sanity/ui";import{CheckmarkIcon as te,PublishIcon as ae,TrashIcon as ne,CopyIcon as ie,EarthGlobeIcon as le,SpinnerIcon as re,AddIcon as se,ChevronDownIcon as oe}from"@sanity/icons";import{jsx as ue,jsxs as ce}from"react/jsx-runtime";import{ConfirmDeleteDialog as de,usePaneRouter as he,deskTool as me}from"sanity/desk";import{uuid as ge}from"@sanity/uuid";import pe,{keyframes as fe,css as ve}from"styled-components";import be from"just-split";import ye from"lodash/chunk";import Se from"twemoji";import _e from"html-react-parser";import{getEmojiFlag as Ce}from"@cprecioso/country-flag-emoji";import{distinctUntilChanged as we,catchError as Me}from"rxjs/operators";import Ie from"react-fast-compare";import Ae from"just-omit";import{hues as Ee}from"@sanity/color";import{RouterContext as Te}from"sanity/router";const Le=["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"],Ne=[{value:"af",title:"Afrikaans"},{value:"af-ZA",title:"Afrikaans (South Africa)"},{value:"ar",title:"Arabic"},{value:"ar-AE",title:"Arabic (U.A.E.)"},{value:"ar-BH",title:"Arabic (Bahrain)"},{value:"ar-DZ",title:"Arabic (Algeria)"},{value:"ar-EG",title:"Arabic (Egypt)"},{value:"ar-IQ",title:"Arabic (Iraq)"},{value:"ar-JO",title:"Arabic (Jordan)"},{value:"ar-KW",title:"Arabic (Kuwait)"},{value:"ar-LB",title:"Arabic (Lebanon)"},{value:"ar-LY",title:"Arabic (Libya)"},{value:"ar-MA",title:"Arabic (Morocco)"},{value:"ar-OM",title:"Arabic (Oman)"},{value:"ar-QA",title:"Arabic (Qatar)"},{value:"ar-SA",title:"Arabic (Saudi Arabia)"},{value:"ar-SY",title:"Arabic (Syria)"},{value:"ar-TN",title:"Arabic (Tunisia)"},{value:"ar-YE",title:"Arabic (Yemen)"},{value:"az",title:"Azeri"},{value:"az-Cyrl-AZ",title:"Azeri (Cyrillic, Azerbaijan)"},{value:"az-Latn-AZ",title:"Azeri (Latin, Azerbaijan)"},{value:"be",title:"Belarusian"},{value:"be-BY",title:"Belarusian (Belarus)"},{value:"bg",title:"Bulgarian"},{value:"bg-BG",title:"Bulgarian (Bulgaria)"},{value:"bs-Latn-BA",title:"Bosnian (Bosnia and Herzegovina)"},{value:"ca",title:"Catalan"},{value:"ca-ES",title:"Catalan (Catalan)"},{value:"cs",title:"Czech"},{value:"cs-CZ",title:"Czech (Czech Republic)"},{value:"cy-GB",title:"Welsh (United Kingdom)"},{value:"da",title:"Danish"},{value:"da-DK",title:"Danish (Denmark)"},{value:"de",title:"German"},{value:"de-AT",title:"German (Austria)"},{value:"de-DE",title:"German (Germany)"},{value:"de-CH",title:"German (Switzerland)"},{value:"de-LI",title:"German (Liechtenstein)"},{value:"de-LU",title:"German (Luxembourg)"},{value:"dv",title:"Divehi"},{value:"dv-MV",title:"Divehi (Maldives)"},{value:"el",title:"Greek"},{value:"el-GR",title:"Greek (Greece)"},{value:"en",title:"English"},{value:"en-029",title:"English (Caribbean)"},{value:"en-AU",title:"English (Australia)"},{value:"en-BZ",title:"English (Belize)"},{value:"en-CA",title:"English (Canada)"},{value:"en-GB",title:"English (United Kingdom)"},{value:"en-IE",title:"English (Ireland)"},{value:"en-JM",title:"English (Jamaica)"},{value:"en-NZ",title:"English (New Zealand)"},{value:"en-PH",title:"English (Republic of the Philippines)"},{value:"en-TT",title:"English (Trinidad and Tobago)"},{value:"en-US",title:"English (United States)"},{value:"en-ZA",title:"English (South Africa)"},{value:"en-ZW",title:"English (Zimbabwe)"},{value:"es",title:"Spanish"},{value:"es-AR",title:"Spanish (Argentina)"},{value:"es-BO",title:"Spanish (Bolivia)"},{value:"es-CL",title:"Spanish (Chile)"},{value:"es-CO",title:"Spanish (Colombia)"},{value:"es-CR",title:"Spanish (Costa Rica)"},{value:"es-DO",title:"Spanish (Dominican Republic)"},{value:"es-EC",title:"Spanish (Ecuador)"},{value:"es-ES",title:"Spanish (Spain)"},{value:"es-GT",title:"Spanish (Guatemala)"},{value:"es-HN",title:"Spanish (Honduras)"},{value:"es-MX",title:"Spanish (Mexico)"},{value:"es-NI",title:"Spanish (Nicaragua)"},{value:"es-PA",title:"Spanish (Panama)"},{value:"es-PE",title:"Spanish (Peru)"},{value:"es-PR",title:"Spanish (Puerto Rico)"},{value:"es-PY",title:"Spanish (Paraguay)"},{value:"es-SV",title:"Spanish (El Salvador)"},{value:"es-UY",title:"Spanish (Uruguay)"},{value:"es-VE",title:"Spanish (Venezuela)"},{value:"et",title:"Estonian"},{value:"et-EE",title:"Estonian (Estonia)"},{value:"eu",title:"Basque"},{value:"eu-ES",title:"Basque (Basque)"},{value:"fa",title:"Persian"},{value:"fa-IR",title:"Persian (Iran)"},{value:"fi",title:"Finnish"},{value:"fi-FI",title:"Finnish (Finland)"},{value:"fo",title:"Faroese"},{value:"fo-FO",title:"Faroese (Faroe Islands)"},{value:"fr",title:"French"},{value:"fr-BE",title:"French (Belgium)"},{value:"fr-CA",title:"French (Canada)"},{value:"fr-FR",title:"French (France)"},{value:"fr-CH",title:"French (Switzerland)"},{value:"fr-LU",title:"French (Luxembourg)"},{value:"fr-MC",title:"French (Principality of Monaco)"},{value:"gl",title:"Galician"},{value:"gl-ES",title:"Galician (Galician)"},{value:"gu",title:"Gujarati"},{value:"gu-IN",title:"Gujarati (India)"},{value:"he",title:"Hebrew"},{value:"he-IL",title:"Hebrew (Israel)"},{value:"hi",title:"Hindi"},{value:"hi-IN",title:"Hindi (India)"},{value:"hr",title:"Croatian"},{value:"hr-BA",title:"Croatian (Bosnia and Herzegovina)"},{value:"hr-HR",title:"Croatian (Croatia)"},{value:"hu",title:"Hungarian"},{value:"hu-HU",title:"Hungarian (Hungary)"},{value:"hy",title:"Armenian"},{value:"hy-AM",title:"Armenian (Armenia)"},{value:"id",title:"Indonesian"},{value:"id-ID",title:"Indonesian (Indonesia)"},{value:"is",title:"Icelandic"},{value:"is-IS",title:"Icelandic (Iceland)"},{value:"it",title:"Italian"},{value:"it-CH",title:"Italian (Switzerland)"},{value:"it-IT",title:"Italian (Italy)"},{value:"ja",title:"Japanese"},{value:"ja-JP",title:"Japanese (Japan)"},{value:"ka",title:"Georgian"},{value:"ka-GE",title:"Georgian (Georgia)"},{value:"kk",title:"Kazakh"},{value:"kk-KZ",title:"Kazakh (Kazakhstan)"},{value:"kn",title:"Kannada"},{value:"kn-IN",title:"Kannada (India)"},{value:"ko",title:"Korean"},{value:"kok",title:"Konkani"},{value:"kok-IN",title:"Konkani (India)"},{value:"ko-KR",title:"Korean (Korea)"},{value:"ky",title:"Kyrgyz"},{value:"ky-KG",title:"Kyrgyz (Kyrgyzstan)"},{value:"lt",title:"Lithuanian"},{value:"lt-LT",title:"Lithuanian (Lithuania)"},{value:"lv",title:"Latvian"},{value:"lv-LV",title:"Latvian (Latvia)"},{value:"mi-NZ",title:"Maori (New Zealand)"},{value:"mk",title:"Macedonian"},{value:"mk-MK",title:"Macedonian (Former Yugoslav Republic of Macedonia)"},{value:"mn",title:"Mongolian"},{value:"mn-MN",title:"Mongolian (Cyrillic, Mongolia)"},{value:"mr",title:"Marathi"},{value:"mr-IN",title:"Marathi (India)"},{value:"ms",title:"Malay"},{value:"ms-BN",title:"Malay (Brunei Darussalam)"},{value:"ms-MY",title:"Malay (Malaysia)"},{value:"mt-MT",title:"Maltese (Malta)"},{value:"nb-NO",title:"Norwegian, Bokmal (Norway)"},{value:"nl",title:"Dutch"},{value:"nl-BE",title:"Dutch (Belgium)"},{value:"nl-NL",title:"Dutch (Netherlands)"},{value:"nn-NO",title:"Norwegian, Nynorsk (Norway)"},{value:"no",title:"Norwegian"},{value:"ns-ZA",title:"Northern Sotho (South Africa)"},{value:"pa",title:"Punjabi"},{value:"pa-IN",title:"Punjabi (India)"},{value:"pl",title:"Polish"},{value:"pl-PL",title:"Polish (Poland)"},{value:"pt",title:"Portuguese"},{value:"pt-BR",title:"Portuguese (Brazil)"},{value:"pt-PT",title:"Portuguese (Portugal)"},{value:"quz-BO",title:"Quechua (Bolivia)"},{value:"quz-EC",title:"Quechua (Ecuador)"},{value:"quz-PE",title:"Quechua (Peru)"},{value:"ro",title:"Romanian"},{value:"ro-RO",title:"Romanian (Romania)"},{value:"ru",title:"Russian"},{value:"ru-RU",title:"Russian (Russia)"},{value:"sa",title:"Sanskrit"},{value:"sa-IN",title:"Sanskrit (India)"},{value:"se-FI",title:"Sami (Northern) (Finland)"},{value:"se-NO",title:"Sami (Northern) (Norway)"},{value:"se-SE",title:"Sami (Northern) (Sweden)"},{value:"sk",title:"Slovak"},{value:"sk-SK",title:"Slovak (Slovakia)"},{value:"sl",title:"Slovenian"},{value:"sl-SI",title:"Slovenian (Slovenia)"},{value:"sma-NO",title:"Sami (Southern) (Norway)"},{value:"sma-SE",title:"Sami (Southern) (Sweden)"},{value:"smj-NO",title:"Sami (Lule) (Norway)"},{value:"smj-SE",title:"Sami (Lule) (Sweden)"},{value:"smn-FI",title:"Sami (Inari) (Finland)"},{value:"sms-FI",title:"Sami (Skolt) (Finland)"},{value:"sq",title:"Albanian"},{value:"sq-AL",title:"Albanian (Albania)"},{value:"sr",title:"Serbian"},{value:"sr-Cyrl-BA",title:"Serbian (Cyrillic) (Bosnia and Herzegovina)"},{value:"sr-Cyrl-CS",title:"Serbian (Cyrillic, Serbia)"},{value:"sr-Latn-BA",title:"Serbian (Latin) (Bosnia and Herzegovina)"},{value:"sr-Latn-CS",title:"Serbian (Latin, Serbia)"},{value:"sv",title:"Swedish"},{value:"sv-FI",title:"Swedish (Finland)"},{value:"sv-SE",title:"Swedish (Sweden)"},{value:"sw",title:"Kiswahili"},{value:"sw-KE",title:"Kiswahili (Kenya)"},{value:"syr",title:"Syriac"},{value:"syr-SY",title:"Syriac (Syria)"},{value:"ta",title:"Tamil"},{value:"ta-IN",title:"Tamil (India)"},{value:"te",title:"Telugu"},{value:"te-IN",title:"Telugu (India)"},{value:"th",title:"Thai"},{value:"th-TH",title:"Thai (Thailand)"},{value:"tn-ZA",title:"Tswana (South Africa)"},{value:"tr",title:"Turkish"},{value:"tr-TR",title:"Turkish (Turkey)"},{value:"tt",title:"Tatar"},{value:"tt-RU",title:"Tatar (Russia)"},{value:"uk",title:"Ukrainian"},{value:"uk-UA",title:"Ukrainian (Ukraine)"},{value:"ur",title:"Urdu"},{value:"ur-PK",title:"Urdu (Islamic Republic of Pakistan)"},{value:"uz",title:"Uzbek"},{value:"uz-Cyrl-UZ",title:"Uzbek (Cyrillic, Uzbekistan)"},{value:"uz-Latn-UZ",title:"Uzbek (Latin, Uzbekistan)"},{value:"vi",title:"Vietnamese"},{value:"vi-VN",title:"Vietnamese (Vietnam)"},{value:"xh-ZA",title:"Xhosa (South Africa)"},{value:"zh-CN",title:"Chinese (People's Republic of China)"},{value:"zh-HK",title:"Chinese (Hong Kong S.A.R.)"},{value:"zh-CHS",title:"Chinese (Simplified)"},{value:"zh-CHT",title:"Chinese (Traditional)"},{value:"zh-MO",title:"Chinese (Macao S.A.R.)"},{value:"zh-SG",title:"Chinese (Singapore)"},{value:"zh-TW",title:"Chinese (Taiwan)"},{value:"zu-ZA",title:"Zulu (South Africa)"}],ke="i18n",Be="__i18n_";var De=(e=>(e.STRONG="strong",e.WEAK="weak",e.DISABLED="disabled",e))(De||{}),Re=(e=>(e.SUBPATH="subpath",e.DELIMITER="delimiter",e))(Re||{});const Oe={publishing:"Publishing...",publish:"Publish",updatingIntlFields:"Updating i18n fields",intlFieldsUpdated:"i18n fields updated",baseDocumentCopied:"Base document copied",translationCreatedToast:{title:e=>"Translation created: ".concat(e),description:e=>"The content from ‘".concat(e,"’ is copied into the new document translation.")},loading:"Loading languages...",draft:"Draft",missingTranslations:"Following languages are missing some translations compared to the base language",base:"Base",missing:"Missing",deleteAll:{buttonTitle:"Delete (incl. translations)",deleting:"Deleting..."},duplicateAll:{buttonTitle:"Duplicate (incl. translations)",duplicating:"Duplicating..."},translationsMaintenance:{title:"Translation Maintenance",selectSchemaPlaceholder:"Select schema type",idStructureMismatch:"document(s) with mismatched ID structures",missingLanguageField:"document(s) are missing the language field",missingDocumentRefs:"document(s) have missing translation references",missingBaseDocumentRefs:"document(s) have missing base document references",orphanDocuments:"orphaned translation document(s)",referenceBehaviorMismatch:"document(s) with mismatched reference behaviors",baseLanguageMismatch:"base document(s) with mismatched language field",fix:"Fix",pendingTransactionDialog:{header:"Confirm pending transaction",caution:"Before continuing please review the transactions. Keep in mind, the translation maintenance functionality may remove or update many documents at once. It is recommended to back-up your dataset before performing data maintenance",cancel:"Cancel",confirm:"Confirm operation"}},errors:{baseDocumentNotPublished:"It looks like you have not published your base translation yet. When using strong references it is required to publish the base document before publishing any translated entries"},languageSelect:{placeholder:"Switch language",listLabels:{existing:"Select document translations",missing:"Create new document translations"}}},Pe=(e,t,a)=>e.idStructure===Re.DELIMITER?"".concat(t).concat("__i18n_").concat(a||"*"):"".concat("i18n",".").concat(t,".").concat(a||"*"),je=(e,t)=>t?e.find((e=>e.id===t))||null:e.length>0?e[0]:null;function Ge(){return v({apiVersion:"2021-10-01"})}const Ke=async(e,t,a,n)=>{const i=(e=>e.map((e=>{if("string"==typeof e){const t=Ne.find((t=>t.value===e));return t?{title:t.title,id:e}:{title:e,id:e}}return"name"in e?(console.warn('The "name" field in your language configuration is deprecated, please replace it with "id".'),{title:e.title,id:e.name}):{title:e.title,id:e.id}})))(await(async()=>{if(Array.isArray(a))return a;const t=await e.fetch(a.query),n=a.value;return"string"==typeof n?t.map((e=>E(e,n))):t.map((e=>"name"in n?{name:E(e,n.name),title:E(e,n.title)}:{id:E(e,n.id),title:E(e,n.title)}))})());return t.languagesLoader?t.languagesLoader(i,null!=n?n:void 0):i},ze=e=>{if(!e)return;const t=e.replace(/^drafts\./,""),a=new RegExp("".concat("i18n","\\.([^.]+)\\.[^.]+")),n=t.match(a);if(n&&2===n.length)return n[1];const i=t.split("__i18n_");return i.length>0?i[0]:t},Fe=async function(e,t,a){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(t.idStructure===Re.DELIMITER){const t=a.split("-");t[t.length-1]="".concat(t[t.length-1]).concat("__i18n_","*");const i=await e.fetch(n?"*[_id match $segments]":"*[_id match $segments && !(_id in path('drafts.**'))]",{segments:t});return i?i.filter((e=>e._id.startsWith(a)||n&&e._id.startsWith("drafts.".concat(a)))):[]}const i=await e.fetch(n?"*[_id in path($path) || _id in path($draftPath)]":"*[_id in path($path)]",{path:Pe(t,a,"*"),draftPath:"drafts.".concat(Pe(t,a,"*"))});return null!=i?i:[]};function Ue(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return p({_type:"reference",_ref:e.replace("drafts.","")},!0===t?{_weak:!0}:{})}function xe(e,t){return(null==e?void 0:e[t.fieldNames.lang])||t.base||null}async function He(e,t,a,n){var i;const{_type:l,_id:r}=a,s=ze(r),o=r!==s,u=t.fieldNames.lang,c=t.fieldNames.references,d=t.fieldNames.baseReference,h=await Ke(e,t,t.languages,a),m=xe(a,t)||(null==(i=je(h,t.base))?void 0:i.id),g=e.transaction();if(g.createIfNotExists({_id:r,_type:l}),g.patch(r,{set:p({[u]:m},o&&t.referenceBehavior!==De.DISABLED?{[d]:Ue(s,t.referenceBehavior===De.WEAK)}:{})}),await g.commit(),o&&n){const a=await Fe(e,t,s);if(a.length>0){const n=e.transaction();let i=[];t.referenceBehavior!==De.DISABLED&&(i=T(a.map((e=>{const a=xe(e,t);return a?p({_key:a},Ue(e._id,t.referenceBehavior===De.WEAK)):null}),{}))),n.patch(s,{set:{[c]:i}}),await n.commit()}}}function We(e){return e.reduce(((e,t,a)=>{const n="number"==typeof t,i=b(t),l=n||i?"[]":"".concat(0===a?"":".").concat(t);return"".concat(e).concat(l)}),"")}function Ze(e,t){var a,n,i,l,r,s;return{base:(null==t?void 0:t.base)||(null==e?void 0:e.base)||"",languages:(null==t?void 0:t.languages)||(null==e?void 0:e.languages)||[],idStructure:(null==e?void 0:e.idStructure)||Re.DELIMITER,referenceBehavior:(null==e?void 0:e.referenceBehavior)||De.STRONG,withTranslationsMaintenance:!0===(null==e?void 0:e.withTranslationsMaintenance),shouldReload:null==e?void 0:e.shouldReload,languagesLoader:null==e?void 0:e.languagesLoader,fallbackLanguageSelect:null==e?void 0:e.fallbackLanguageSelect,customFlagComponents:null==e?void 0:e.customFlagComponents,fieldNames:{lang:(null==(a=null==t?void 0:t.fieldNames)?void 0:a.lang)||(null==(n=null==e?void 0:e.fieldNames)?void 0:n.lang)||"__i18n_lang",references:(null==(i=null==t?void 0:t.fieldNames)?void 0:i.references)||(null==(l=null==e?void 0:e.fieldNames)?void 0:l.references)||"__i18n_refs",baseReference:(null==(r=null==t?void 0:t.fieldNames)?void 0:r.baseReference)||(null==(s=null==e?void 0:e.fieldNames)?void 0:s.baseReference)||"__i18n_base"}}}function Ve(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];const[i,l]=k(e);return B((()=>{if(i!==e)if(e){if(a){const e=setTimeout((()=>l(!0)),t);return()=>clearTimeout(e)}l(!0)}else if(!e){if(n){const e=setTimeout((()=>l(!1)),t);return()=>clearTimeout(e)}l(!1)}}),[i,e,t,a,n]),i}function Ye(e,t){const a=y(),n=D((()=>{if(t){const e=a.get(t);if(e&&"boolean"!=typeof e.i18n)return null==e?void 0:e.i18n}return null}),[t,a]);return D((()=>Ze(e,n)),[n,e])}function Je(e){const t=t=>{let{type:a,id:n,onComplete:i}=t;const l=K(),r=Ge(),s=Ye(e,a),o=ze(n),u=L.useRef(null),[c,d]=L.useState(null),[h,m]=L.useState(!1),{draft:g,published:p}=S(n,a),f=S(o,a),{publish:v}=_(n,a),{isValidating:b,validation:y}=C(n,a),M=w(n,a),I=w(o,a),A=Ve(!!("published"===c||"publishing"===c||h||v.disabled||M.isSyncing||I.isSyncing||b||y.some((e=>"error"===e.level)))),E=L.useMemo((()=>"publishing"===c?Oe.publishing:h?Oe.updatingIntlFields:Oe.publish),[c,h]),T=L.useCallback((async()=>{m(!0);try{const e=g||p;e&&await He(r,s,e,f.published),l.push({closable:!0,status:"success",title:Oe.intlFieldsUpdated})}catch(e){console.error(e),l.push({closable:!0,status:"error",title:e.toString()})}m(!1)}),[l,g,p,r,f.published,s]),N=L.useCallback((()=>{d("publishing");if(n!==o&&!f.published&&s.referenceBehavior===De.STRONG)throw new Error(Oe.errors.baseDocumentNotPublished);v.execute()}),[n,o,v,s,f.published]);return L.useEffect((()=>{const e="publishing"===c&&!g,t=e?"published":null,a=setTimeout((()=>{d(t)}),e?200:4e3);return()=>clearTimeout(a)}),[c,g]),L.useEffect((()=>{"published"===c&&(u.current||(u.current=T().then((()=>i&&i())).finally((()=>u.current=null))))}),[c,i,T]),{disabled:A,label:E,icon:"published"===c?te:ae,shortcut:A?null:"Ctrl+Alt+P",onHandle:N}};return t.action="publish",t}const $e={NOTHING_TO_DELETE:"This document doesn't yet exist or is already deleted"};function qe(e){const t=t=>{let{id:a,type:n,onComplete:i}=t;const l=K(),r=Ge(),s=Ye(e,n),o=N.useMemo((()=>ze(a)),[a]),u=S(o,n),c=w(a,n),d=w(o,n),{delete:h}=_(a,n),[m,g]=N.useState(!1),[p,f]=N.useState(!1),v=N.useCallback((()=>{f(!0)}),[]),b=N.useCallback((()=>{f(!1),i&&i()}),[i]),y=N.useCallback((async()=>{try{if(g(!0),f(!1),u.draft||u.published){const e=r.transaction();u.draft&&e.delete("drafts.".concat(o)),u.published&&e.patch(o,{unset:[s.fieldNames.references]}),await e.commit()}const e=await Fe(r,s,o,!0),t=r.transaction();e.forEach((e=>{t.delete(e._id)})),await t.commit(),h.execute(),i&&i()}catch(e){l.push({closable:!0,status:"error",title:e.toString()})}finally{g(!0)}}),[l,s,r,o,u.draft,u.published,h,i]);return{onHandle:v,tone:"critical",icon:ne,disabled:m||Boolean(h.disabled)||c.isSyncing||d.isSyncing,shortcut:"CTRL+ALT+D",title:h.disabled&&$e[h.disabled]||"",label:m?Oe.deleteAll.deleting:Oe.deleteAll.buttonTitle,dialog:p&&{type:"dialog",onClose:i,content:ue(de,{action:"delete",id:a,type:n,onCancel:b,onConfirm:y})}}};return t.action="delete",t}const Qe={NOTHING_TO_DUPLICATE:"This document doesn't yet exist so there's nothing to duplicate"};function Xe(e){const t=t=>{let{id:a,type:n,draft:i,published:l}=t;const r=K(),s=Ge(),o=Ye(e,n),u=ze(a),{duplicate:c}=_(a,n),[d,h]=N.useState(!1),m=N.useCallback((async()=>{h(!0);try{const e=ge(),t=await Fe(s,o,u),a=s.transaction();a.create(p(p({},null!=i?i:l),{},{_id:e,_type:n})),t.forEach((t=>{const n=t._id.startsWith("drafts."),i=Pe(o,e,xe(t,o));a.create(p(p({},t),{},{_id:n?"drafts.".concat(i):i}))})),await a.commit()}catch(e){console.error(e),r.push({description:e.message})}h(!1)}),[s,o,r,u,n,i,l]);return{icon:ie,disabled:Boolean(c.disabled)||d,title:c.disabled&&Qe[c.disabled]||"",label:d?Oe.duplicateAll.duplicating:Oe.duplicateAll.buttonTitle,onHandle:m}};return t.action="duplicate",t}const et=(e,t,a)=>{let{schema:n,schemaType:i,documentId:l}=t;const r=n.get(i),s=r&&r.i18n,o=l===ze(l);let u=e;return s&&(u=u.map((e=>{const t="publish"===e.action,n="delete"===e.action;return t?Je(a):n&&o?qe(a):e})),o&&u.push(Xe(a))),u},tt=R((function(e,t){let{value:a,onChange:n,onOpen:i}=e;const l=y(),r=D((()=>{var e;return null==(e=l._original)?void 0:e.types.filter((e=>!!e.i18n))}),[l]);return ce(z,{space:4,children:[ue(F,{children:Oe.translationsMaintenance.selectSchemaPlaceholder}),ue(U,{children:ue(x,{ref:t,fontSize:[2,2,3],icon:le,id:"i18n-schema-selector",options:null==r?void 0:r.map((e=>({value:e.name,payload:e}))),value:a,placeholder:"Search",openButton:{onClick:()=>i},onChange:n,renderValue:(e,t)=>(null==t?void 0:t.payload.title)||e,renderOption:e=>{let{payload:t}=e;return ue(U,{padding:2,radius:2,as:"button",children:ue(M,{layout:"default",title:t.title,media:t.icon})})}})})]})})),at=e=>{let{pending:t,count:a,labelName:n,children:i,onClick:l}=e;return ue(U,{padding:3,radius:2,shadow:1,tone:a>0?"caution":"default",children:ce(H,{align:"center",children:[ue(W,{flex:1,children:ce(F,{muted:a<=0,children:[ue("span",{children:a}),ue("span",{children:" "}),ue("span",{children:n?String(Oe.translationsMaintenance[n]):i})]})}),a>0&&ue(Z,{padding:2,fontSize:2,disabled:t,onClick:l,text:Oe.translationsMaintenance.fix})]})})},nt=(e,t,a,n)=>{var i;const l=null==(i=t.fieldNames)?void 0:i.lang,r=e.transaction();return n.forEach((e=>{const n=a.get(e._type),i=("object"==typeof n.i18n?n.i18n.base:void 0)||t.base;if(!e[l]){const t=(e=>{const t=new RegExp("".concat("i18n","\\.[^.]+\\.([^.]+)")),a=e.match(t);if(a&&2===a.length)return a[1];const n=e.split("__i18n_");return n.length>1?n[1]:void 0})(e._id)||i;r.patch(e._id,{set:{[l]:t}})}})),r},it=(e,t,a,n)=>{const i=t.fieldNames.references;return ye(a,50).map((a=>{const l=e.transaction();return a.forEach((e=>{let a=[];const r=n.filter((t=>ze(t._id)===e._id));t.referenceBehavior!==De.DISABLED&&(a=T(r.map((e=>{const a=xe(e,t);return a?p({_key:a},Ue(e._id,t.referenceBehavior===De.WEAK)):null}),{}))),l.patch(e._id,{set:{[i]:a}})})),l}))},lt=(e,t,a,n)=>{const i=e.transaction();return n.forEach((e=>{a.find((a=>{var n,i;return Array.isArray(null==e?void 0:e[t.fieldNames.references])&&(null==(n=null==e?void 0:e[t.fieldNames.references])?void 0:n.some((t=>t._ref===e._id)))||a._id===(null==(i=null==e?void 0:e[t.fieldNames.baseReference])?void 0:i._ref)}))||i.delete(e._id)})),i},rt=async(e,t,a)=>{const n=await Ke(e,t,t.languages),i=je(n,t.base),l=t.fieldNames.lang,r=e.transaction();return a.forEach((e=>{e[l]!==(null==i?void 0:i.id)&&r.patch(e._id,{set:{[l]:null==i?void 0:i.id}})})),r},st=(e,t,a)=>{const n=e.transaction();if(t.referenceBehavior!==De.DISABLED){const e=t.fieldNames.baseReference;a.forEach((a=>{if(!a[e]){const i=ze(a._id);n.patch(a._id,{set:{[e]:Ue(i,t.referenceBehavior===De.WEAK)}})}}))}return n},ot=pe(U)(t||(t=m(["\n grid-column-start: 1;\n grid-row-start: 1;\n"]))),ut=pe(V)(a||(a=m(["\n word-break: break-word;\n white-space: break-spaces;\n"]))),ct=pe(H)(n||(n=m(["\n grid-column-start: 1;\n grid-row-start: 1;\n"]))),dt=R((function(e,t){let{config:a}=e;const[n,i]=k(""),l=Ge(),{pending:r,setPending:s,documents:o,baseDocuments:u,translatedDocuments:c,documentsSummaryInformation:d,fetchInformation:h}=((e,t)=>{const a=Ge(),n=Ye(e,t),[i,l]=N.useState(!1),[r,s]=N.useState([]),[o,u]=N.useState([]),c=N.useMemo((()=>n.idStructure===Re.DELIMITER?r.filter((e=>!e._id.includes("__i18n_"))):r.filter((e=>!e._id.startsWith("i18n")))),[n,r]),d=N.useMemo((()=>n.idStructure===Re.DELIMITER?r.filter((e=>e._id.includes("__i18n_"))):r.filter((e=>e._id.startsWith("i18n")))),[n,r]),h=N.useMemo((()=>n.idStructure===Re.DELIMITER?r.filter((e=>e._id.startsWith("i18n"))):r.filter((e=>e._id.includes("__i18n_")))),[n,r]),m=N.useCallback((async e=>{l(!0);const[t,i]=await Promise.all([Ke(a,n,n.languages),a.fetch("*[_type == $type && !(_id in path('drafts.**'))]",{type:e})]);u(t),s(i),l(!1)}),[n,a]),g=N.useMemo((()=>{var e,t,a;const i=je(o,n.base),l=c,s=d,u=null==(e=n.fieldNames)?void 0:e.lang,m=null==(t=n.fieldNames)?void 0:t.references,g=null==(a=n.fieldNames)?void 0:a.baseReference;return{idStructureMismatch:h,missingLanguageField:r.filter((e=>!e[u])),missingDocumentRefs:l.filter((e=>{const t=s.filter((t=>ze(t._id)===e._id));return Object.values(e[m]||[]).filter((e=>"reference"===e._type&&!!e._ref)).length!=t.length})),missingBaseDocumentRefs:s.filter((e=>!e[g])),orphanDocuments:s.filter((e=>!l.find((t=>ze(e._id)===t._id)))),referenceBehaviorMismatch:l.filter((e=>{const t=e[m]||[];return n.referenceBehavior===De.DISABLED?Object.keys(t).length>0:n.referenceBehavior===De.WEAK?Object.values(t).some((e=>!e._weak)):Object.values(t).some((e=>!!e._weak))})),baseLanguageMismatch:l.filter((e=>(null==i?void 0:i.id)&&e[u]!==i.id))}}),[n,r,o,c,d,h]);return N.useEffect((()=>{t&&m(t)}),[t]),{pending:i,setPending:l,documents:r,baseDocuments:c,translatedDocuments:d,idStructureMismatchDocuments:h,documentsSummaryInformation:g,fetchInformation:m}})(a,n),[m,g]=k(null),f=y(),v=Ye(a,n),b=O((e=>i(e)),[]),S=O((()=>i("")),[]),_=O((()=>{g(((e,t,a,n)=>{const i=t.fieldNames.references,l=new Set(n.map((e=>ze(e._id)))),r=e.transaction();l.forEach((e=>{r.patch(e,{set:{[i]:[]}})}));const s=be(n.filter((e=>e._id!==ze(e._id))),100).map((n=>{const l=e.transaction();return n.forEach((e=>{const n=ze(e._id),r=xe(e,t);if(r){const s=Pe(t,n,r);l.createIfNotExists(p(p({},e),{},{_id:s,_type:a})),l.delete(e._id),t.referenceBehavior!==De.DISABLED&&(l.patch(n,{setIfMissing:{[i]:[]}}),l.patch(n,{insert:{after:"".concat(i,"[-1]"),items:[p({_key:r},Ue(s,t.referenceBehavior===De.WEAK))]}}))}})),l}));return[r,...s]})(l,v,n,o))}),[l,v,n,o]),C=O((()=>{g([nt(l,v,f,o)])}),[l,f,v,o]),w=O((()=>{g(it(l,v,u,c))}),[l,v,u,c]),M=O((()=>{g([st(l,v,c)])}),[l,v,c]),I=O((()=>{g([lt(l,v,u,c)])}),[l,v,u,c]),A=O((()=>{g(it(l,v,u,c))}),[l,v,u,c]),E=O((async()=>{g([await rt(l,v,u)])}),[l,v,u]),T=O((()=>{if(m){const e=JSON.stringify(m.map((e=>e.toJSON())),null,2),t=new Blob([e],{type:"application/json"}),a=URL.createObjectURL(t),n=document.createElement("a");n.href=a,n.download="transactions.json",n.style.display="none",document.body.appendChild(n),n.click(),URL.revokeObjectURL(a)}}),[m]),L=O((()=>{g(null)}),[g]),B=O((async()=>{s(!0);try{m&&(await m.reduce((async(e,t)=>{await e,await t.commit()}),Promise.resolve()),await h(n),g(null))}catch(e){console.error(e)}finally{s(!1)}}),[s,h,n,m]);return ce(Y,{width:1,children:[ce(z,{space:2,children:[ue(W,{padding:4,children:ue(tt,{value:n,onChange:b,onOpen:S,ref:t})}),!!n&&ue(W,{paddingX:4,children:ce(z,{space:2,children:[ue(at,{pending:r,count:d.idStructureMismatch.length,labelName:"idStructureMismatch",onClick:_}),ue(at,{pending:r,count:d.missingLanguageField.length,labelName:"missingLanguageField",onClick:C}),ue(at,{pending:r,count:d.missingDocumentRefs.length,labelName:"missingDocumentRefs",onClick:w}),ue(at,{pending:r,count:d.missingBaseDocumentRefs.length,labelName:"missingBaseDocumentRefs",onClick:M}),ue(at,{pending:r,count:d.orphanDocuments.length,labelName:"orphanDocuments",onClick:I}),ue(at,{pending:r,count:d.referenceBehaviorMismatch.length,labelName:"referenceBehaviorMismatch",onClick:A}),ue(at,{pending:r,count:d.baseLanguageMismatch.length,labelName:"baseLanguageMismatch",onClick:E})]})})]}),!!(null==m?void 0:m.length)&&ue(J,{id:"confirm-pending-transactions",width:2,header:Oe.translationsMaintenance.pendingTransactionDialog.header,onClose:L,footer:ue(H,{padding:3,justify:"flex-end",children:ce($,{autoFlow:"column",autoCols:"auto",gap:2,children:[ue(Z,{tone:"default",loading:r,disabled:r,text:Oe.translationsMaintenance.pendingTransactionDialog.cancel,onClick:L}),ue(Z,{tone:"critical",loading:r,disabled:r,text:Oe.translationsMaintenance.pendingTransactionDialog.confirm,onClick:B})]})}),children:ce(z,{padding:3,space:3,children:[ue(U,{padding:3,radius:2,shadow:1,tone:"caution",children:ue(F,{size:2,children:Oe.translationsMaintenance.pendingTransactionDialog.caution})}),ce($,{cols:1,children:[ue(ot,{padding:3,radius:2,shadow:1,tone:"default",children:ue(ut,{language:"json",children:JSON.stringify(m.map((e=>e.toJSON())),null,2)})}),ue(ct,{padding:2,justify:"flex-end",align:"flex-start",onClick:T,children:ue(Z,{text:"Download"})})]})]})})]})}));const ht=e=>e.document(),mt=e=>{const{S:t,schema:a}=e,n=[],i=t.documentTypeListItems().filter((e=>{let t=e.getSchemaType();t="string"==typeof t?a.get(t):t;const i=t&&t.i18n;return i||n.push(e),i}));return{withoutI18n:n,withI18n:i}},gt=e=>{const{S:t}=e,a=function(e){return R((function(t,a){return ue(dt,p(p({},e),{},{ref:a}))}))}(e);return t.component(a).title(Oe.translationsMaintenance.title).id("__i18n_translations_maintenance_tab")},pt=e=>{const{S:t}=e;return t.listItem().id("__i18n_translations_maintenance_tab").title(Oe.translationsMaintenance.title).icon(le).child(gt(e))},ft=e=>{const{S:t,config:a,schema:n}=e,i=Ze(a,"object"==typeof n.i18n?n.i18n:void 0),l=mt(e),r={[Re.SUBPATH]:(e,t)=>t.filter("!(_id in path($path)) && !(_id in path($drafts)) && _type == $type").params({path:"".concat("i18n",".**"),drafts:"drafts.".concat("i18n",".**"),type:e.getId()}),[Re.DELIMITER]:(e,t)=>t.filter("!(_id match $id) && _type == $type").params({id:"*".concat("__i18n_","*"),type:e.getId()})},s=[...l.withoutI18n,...l.withI18n.map((e=>{const a=e.getSchemaType(),n="string"==typeof a?a:null==a?void 0:a.name;return e.child(r[i.idStructure](e,t.documentList().id(e.getId()||"").title(e.getTitle()||"").schemaType(null!=n?n:"").menuItems([...n?t.orderingMenuItemsForType(n):[]])))}))];return i.withTranslationsMaintenance&&s.splice(0,0,pt(e)),s.map((e=>e.serialize()))};function vt(e){const{S:t}=e;if(0===mt(e).withI18n.length)return t.defaults();const a=ft(e);return t.list().id("__root__").title("Content").items(a).showIcons(a.some((e=>{return!(!(t=e.schemaType)||"string"==typeof t)&&Boolean(t.icon);var t})))}function bt(e){return(t,a)=>{const{document:n,path:i,type:l}=a,r=null==l?void 0:l.options;if(!n)throw new Error("`document` was not provided in validation context.");if(!i)throw new Error("`path` was not provided in validation context.");const s=(null==r?void 0:r.disableArrayWarning)||!1,o=ze(n._id),u=n._type,c=We(i.concat("current"));if(!s&&c.includes("[]")){const e=We(i);console.warn(["Slug field at path ".concat(e," is within an array and cannot be automatically checked for uniqueness"),'If you need to check for uniqueness, provide your own "isUnique" method',"To disable this message, set `disableArrayWarning: true` on the slug `options` field"].join("\n"))}const d=["_type == $docType",'!(_id in path("drafts.**"))',"_id != $baseId",'!(_id in path("i18n." + $baseId + ".*"))','!(_id match $baseId + "'.concat("__i18n_",'*")'),"".concat(c," == $slug")].join(" && ");return e.fetch("!defined(*[".concat(d,"][0]._id)"),{docType:u,baseId:o,slug:t},{tag:"validation.slug-is-unique"})}}const yt=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(!e)return"";switch(e.toLocaleLowerCase()){case"en":return"gb";case"sq":return"al";case"da":return"dk";default:return e}},St=P({}),_t=pe(W)(i||(i=m(["\n min-width: 24px;\n transform: translateY(1px);\n"])));const Ct=e=>{let{code:t,langCulture:a}=e;const n=function(e){const t=Se.parse(null!=e?e:"🇺🇳",{folder:"svg",ext:".svg"});return _e(t.replace("twemoji.maxcdn.com/v","cdnjs.cloudflare.com/ajax/libs/twemoji"))}(D((()=>t&&function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(!e)return"";const t=yt(e);if(!Le.includes(t.toUpperCase()))return"";return Ce(t)}(t)),[t])),{customFlagComponents:i}=j(St),l=D((()=>{if(a&&i){const e=a.replace(/[^a-zA-Z0-9_]/g,"_");if(e in i)return i[e]}return null}),[a,i]);return ue(W,{"aria-label":t,children:l&&t?ue(l,{code:t}):ue(_t,{children:n})})};const wt={},Mt={apiVersion:"v2022-05-09"};const It=(e,t)=>{var a,n;return Number(null!=(a=e.isBase)?a:0)-Number(null!=(n=t.isBase)?n:0)};function At(e){let{children:t}=e;return ue(W,{padding:2,children:ue(F,{muted:!0,size:1,children:t})})}const Et=R((function(e,t){return ue("svg",p(p({"data-sanity-icon":"splitPane",width:"1em",height:"1em",viewBox:"0 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:t},e),{},{children:ue("path",{d:"M10.5 5.5V19.5M13 12.5H15.5M18 12.5H15.5M15.5 12.5V15M15.5 12.5V10M4.5 5.5H20.5V19.5H4.5V5.5Z",stroke:"currentColor",strokeWidth:1.2})}))})),Tt=P({currentDocumentId:null,currentDocumentType:null,baseLanguage:null,currentLanguage:null}),Lt=fe(l||(l=m(["\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n"]))),Nt=pe(re)(r||(r=m(["\n animation: "," 500ms linear infinite;\n"])),Lt),kt=pe(Z)(s||(s=m(["\n display: none;\n flex-shrink: 0;\n margin-left: 4px;\n\n & svg {\n display: block;\n color: ",";\n }\n\n ","\n"])),Ee.gray[700].hex,(e=>{let{theme:t}=e;return ve(o||(o=m(["\n @media (min-width: ","em) {\n display: block;\n }\n "])),t.sanity.media[1]/16)})),Bt=N.forwardRef(((e,t)=>ue("button",p({type:"button",ref:t},e)))),Dt=pe.button(u||(u=m(["\n color: ",";\n background-color: ",";\n\n span {\n color: ",";\n }\n"])),(e=>{let{theme:t}=e;return t.sanity.color.button.default.primary.enabled.fg}),(e=>{let{theme:t}=e;return t.sanity.color.button.default.primary.enabled.bg}),(e=>{let{theme:t}=e;return t.sanity.color.button.default.primary.enabled.fg})),Rt=e=>{let{status:t,language:a}=e;const n=K(),i=j(St),l=Ge(),{currentDocumentId:r,currentDocumentType:s,baseLanguage:o}=N.useContext(Tt);if(!r||!s)throw new Error("No document in view");const u=Ye(i,s),c=N.useContext(Te),{routerPanesState:d,groupIndex:h,replaceCurrent:m}=he(),[g,f]=N.useState(!1),v=N.useMemo((()=>ze(r)),[r]),b=N.useMemo((()=>a.id.split(/[_-]/).pop()),[a.id]),y=N.useMemo((()=>a.id===(null==o?void 0:o.id)?v:Pe(u,v,a.id)),[u,v,a.id,o]),_=S(v,s),C=N.useMemo((()=>a.isBase?a.title.length>=20?Oe.base.split(" ")[0]:Oe.base:null),[a]),w=N.useCallback(((e,t)=>{m({id:e,params:{type:t}})}),[m]),M=N.useCallback(((e,t)=>{if(!c)return;const a=[...d];a.splice(h+1,0,[{id:e,params:{type:t}}]);const n=c.resolvePathFromState({panes:a});c.navigateUrl({path:n})}),[c,d,h]),I=N.useCallback((async()=>{try{f(!0);const e=_.draft||_.published,t=u.fieldNames.lang,i=u.fieldNames.references,r=u.fieldNames.baseReference,c=u.referenceBehavior;await l.createIfNotExists(p(p({_id:"drafts.".concat(y),_type:s},e?Ae(e,["_id","_type",i]):{}),{},{[t]:a.id},(null==e?void 0:e._id)&&c!==De.DISABLED?{[r]:{_type:"reference",_ref:e._id.replace("drafts.",""),_weak:!0,_strengthenOnPublish:{type:s,weak:"weak"===c,template:{id:s,params:void 0}}}}:{})),n.push({closable:!0,status:"success",title:Oe.translationCreatedToast.title(a.title),description:o?Oe.translationCreatedToast.description(o.title):void 0}),w(y,s)}catch(e){n.push({closable:!0,status:"error",title:e.toString()})}finally{f(!1)}}),[u,_,y,s,a.id,a.title,n,o,w,l]),A=N.useCallback((()=>{w(y,s)}),[w,y,s]),E=N.useCallback((()=>{M(y,s)}),[M,y,s]);return"missing"===t?ue(q,{as:Bt,"data-as":"button",disabled:g,icon:g?Nt:se,text:a.title,onClick:I}):ce(H,{children:[ue(q,{as:a.isCurrentLanguage?Dt:Bt,"data-as":"button","data-selected":a.isCurrentLanguage,selected:a.isCurrentLanguage,onClick:A,paddingY:1,paddingX:2,children:ce(H,{align:"center",gap:2,children:[ue(Ct,{code:b,langCulture:a.id}),ue(W,{flex:1,children:ue(F,{children:a.title})}),C?ue(Q,{fontSize:0,children:C}):null]})}),!a.isCurrentLanguage&&ue(kt,{type:"button",tone:"default",mode:"bleed",padding:2,onClick:E,children:ue(Et,{width:19,height:19})})]})},Ot=pe(W)(c||(c=m(["\n border-bottom: 1px solid var(--card-shadow-outline-color);\n"]))),Pt=pe(W)(d||(d=m(["\n minwidth: 250;\n"]))),jt=e=>{let{draftLanguageObjects:t,publishedLanguageObjects:a,missingLanguageObjects:n}=e;const i=N.useMemo((()=>Boolean(!(!t.length&&!a.length)&&n.length)),[t,a,n]),l=N.useMemo((()=>[...t.map((e=>p(p({},e),{},{status:"draft"}))),...a.map((e=>p(p({},e),{},{status:"published"})))].sort(It).reverse()),[t,a]);return ce(Pt,{children:[!!l.length&&ce(W,{children:[ue(At,{children:Oe.languageSelect.listLabels.existing}),ue($,{columns:1,gap:1,children:l.map((e=>ue(Rt,{status:e.status,language:e},e.id)))})]}),i&&ue(Ot,{marginY:1}),!!n.length&&ce(W,{children:[ue(At,{children:Oe.languageSelect.listLabels.missing}),ue($,{columns:1,gap:1,children:n.map((e=>ue(Rt,{status:"missing",language:e},e.id)))})]})]})},Gt={constrainSize:!0,placement:"bottom",portal:!0},Kt=e=>{let{schemaType:t,document:a}=e;var n,i;const l=Ye(j(St),t.name),[r,s]=function(e,t){const a=Ge(),{draft:n,published:i}=S(t._id.replace(/^drafts\./,""),t._type),[l,r]=k(!1),[s,o]=k([]),u=O((async()=>{if(0===s.length||e.shouldReload&&e.shouldReload(null!=n?n:i)){r(!0);const t=await Ke(a,e,e.languages,null!=n?n:i);o(t),r(!1)}}),[a,e,n,i,s]);return B((()=>{u()}),[n,i,s,e,u]),[l,s]}(l,a),o=N.useMemo((()=>je(s,l.base)),[s,l.base]),u=N.useMemo((()=>xe(a,l)||(o?o.id:null)),[a,o,l]),c=N.useMemo((()=>s.find((e=>e.id===u))),[s,u]),d=N.useMemo((()=>null==u?void 0:u.split(/[-_]/).pop()),[u]),h='*[_type == $type && _id in $ids]{\n _id,\n "'.concat(l.fieldNames.lang,'": ').concat(l.fieldNames.lang,"\n }"),m=N.useMemo((()=>{const e=ze(a._id),t=s.map((t=>t===o?e:Pe(l,e,t.id))),n=t.map((e=>"drafts.".concat(e)));return{ids:[...t,...n],type:a._type}}),[l,o,s,a._id,a._type]),{loading:g,data:f}=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:wt,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Mt;const[n,i]=k(!0),[l,r]=k(!1),[s,o]=k(null),u=G(null),c=I();return B((()=>(e&&(u.current=c.listenQuery(e,t,a).pipe(we(Ie),Me((e=>(console.error(e),r(e),i(!1),o(null),e)))).subscribe((e=>{o((t=>Ie(t,e)?t:e)),i(!1),r(!1)}))),()=>u.current?u.current.unsubscribe():void 0)),[e,t,a]),{loading:n,error:l,data:s}}(h,m),v=N.useMemo((()=>{const e=[],t=[],a=[];if(!(null==f?void 0:f.length))return{draftLanguageObjects:e,publishedLanguageObjects:t,missingLanguageObjects:a};const n=f.reduce(((e,t)=>{if(!t._id.startsWith("drafts.")){return f.some((e=>e._id==="drafts.".concat(t._id)))?e:[...e,t]}return[...e,t]}),[]),i=new Map;return n.forEach((e=>{const t=E(null!=e?e:{},l.fieldNames.lang),a=e&&e._id.replace(/^drafts\./,"")===ze(e._id);t?i.set(t,e):a&&(null==o?void 0:o.id)&&i.set(o.id,e)})),s.forEach(((n,l)=>{const r=p(p({},n),{},{isBase:o?n.id===o.id:0===l,isCurrentLanguage:n.id===u}),s=i.get(n.id);(null==s?void 0:s._id)&&!s._id.startsWith("drafts.")?t.push(r):(null==s?void 0:s._id)&&s._id.startsWith("drafts.")?e.push(r):a.push(r)})),{draftLanguageObjects:e,publishedLanguageObjects:t,missingLanguageObjects:a}}),[l,s,o,f,u]);return!c||!u||r||g||0===s.length?ue(Z,{disabled:!0,mode:"bleed",padding:3,loading:r||g,iconRight:oe,text:Oe.languageSelect.placeholder}):ue(Tt.Provider,{value:{baseLanguage:o,currentLanguage:c,currentDocumentType:a._type,currentDocumentId:a._id},children:ue(X,{id:"document-internationalization/language-select",popover:Gt,button:ue(Z,{paddingY:1,paddingX:2,mode:"bleed",title:null!=(n=c.title)?n:c.id,children:ce(H,{align:"center",gap:2,children:[ue(Ct,{code:d,langCulture:u}),ue(W,{flex:1,children:ue(F,{children:null!=(i=c.title)?i:c.id})}),ue(oe,{width:19,height:19})]})}),menu:ue(ee,{children:ue(jt,p({},v))})})})};function zt(t){const{config:a}=t,n=h(t,e),i=t.value;return ce(St.Provider,{value:a,children:[i._id&&ue(H,{flex:1,justify:"flex-end",children:ue(Kt,{schemaType:t.schemaType,document:i})}),t.renderDefault(n)]})}const Ft=A((e=>({name:"document-i18n",document:{actions:(t,a)=>et(t,a,e),badges:t=>{return[...t,(a=e,e=>{const t=Ye(a,e.type),n=e.draft||e.published,i=n?xe(n,t):null;return i?{label:i,color:"success"}:null})];var a}},form:{components:{input(t){const{value:a}=t;return t.schemaType.i18n&&"object"==typeof a&&(null==a?void 0:a._id)?ue(zt,p({config:e},t)):t.renderDefault(t)}}}})));function Ut(e,t){var a;const n=Ft(t);return T([...Array.isArray(e)?e:e(t),null==(a=t.includeDeskTool)||a?me({structure:(e,a)=>{let{schema:n}=a;return vt({S:e,schema:n,config:t})}}):null,n])}export{Be as I18nDelimiter,ke as I18nPrefix,Re as IdStructure,Ne as LanguageCultures,De as ReferenceBehavior,Le as SupportedEmojiFlagCodes,Oe as UiMessages,qe as createDeleteAction,Xe as createDuplicateAction,bt as createIsSlugUnique,Je as createPublishAction,Ft as documentI18n,ze as getBaseIdFromId,ht as getDefaultDocumentNode,vt as getDocumentList,mt as getDocumentTypes,ft as getFilteredDocumentTypeListItems,pt as getMaintenanceListItem,gt as getMaintenanceTabComponent,et as resolveActions,He as updateIntlFieldsForDocument,Ye as useConfig,Ve as useDelayedFlag,Ut as withDocumentI18nPlugin};
|
|
1
|
+
const e=["config"];var t,n,a,i,l,r,s,o,u,c,d;function h(e,t){if(null==e)return{};var n,a,i=function(e,t){if(null==e)return{};var n,a,i={},l=Object.keys(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function m(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function g(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?f(Object(n),!0).forEach((function(t){p(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):f(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function p(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}import{useClient as v,isKeyedObject as b,useSchema as y,useEditState as S,useDocumentOperation as _,useValidationStatus as C,useSyncState as w,DefaultPreview as M,useDocumentStore as I,definePlugin as A}from"sanity";import E from"just-safe-get";import T from"lodash/compact";import*as N from"react";import L,{useState as k,useEffect as B,useMemo as D,forwardRef as R,useCallback as O,createContext as P,useContext as j,useRef as G}from"react";import{useToast as K,Stack as z,Text as F,Card as U,Autocomplete as x,Flex as H,Box as W,Button as Z,Code as V,Container as Y,Dialog as J,Grid as $,MenuItem as q,Badge as Q,MenuButton as X,Menu as ee}from"@sanity/ui";import{CheckmarkIcon as te,PublishIcon as ne,TrashIcon as ae,CopyIcon as ie,EarthGlobeIcon as le,SpinnerIcon as re,AddIcon as se,ChevronDownIcon as oe}from"@sanity/icons";import{jsx as ue,jsxs as ce}from"react/jsx-runtime";import{ConfirmDeleteDialog as de,usePaneRouter as he,deskTool as me}from"sanity/desk";import{uuid as fe}from"@sanity/uuid";import ge,{keyframes as pe,css as ve}from"styled-components";import be from"just-split";import ye from"lodash/chunk";import Se from"twemoji";import _e from"html-react-parser";import{getEmojiFlag as Ce}from"@cprecioso/country-flag-emoji";import{distinctUntilChanged as we,catchError as Me}from"rxjs/operators";import Ie from"react-fast-compare";import Ae from"just-omit";import{hues as Ee}from"@sanity/color";import{RouterContext as Te}from"sanity/router";const Ne=["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"],Le=[{value:"af",title:"Afrikaans"},{value:"af-ZA",title:"Afrikaans (South Africa)"},{value:"ar",title:"Arabic"},{value:"ar-AE",title:"Arabic (U.A.E.)"},{value:"ar-BH",title:"Arabic (Bahrain)"},{value:"ar-DZ",title:"Arabic (Algeria)"},{value:"ar-EG",title:"Arabic (Egypt)"},{value:"ar-IQ",title:"Arabic (Iraq)"},{value:"ar-JO",title:"Arabic (Jordan)"},{value:"ar-KW",title:"Arabic (Kuwait)"},{value:"ar-LB",title:"Arabic (Lebanon)"},{value:"ar-LY",title:"Arabic (Libya)"},{value:"ar-MA",title:"Arabic (Morocco)"},{value:"ar-OM",title:"Arabic (Oman)"},{value:"ar-QA",title:"Arabic (Qatar)"},{value:"ar-SA",title:"Arabic (Saudi Arabia)"},{value:"ar-SY",title:"Arabic (Syria)"},{value:"ar-TN",title:"Arabic (Tunisia)"},{value:"ar-YE",title:"Arabic (Yemen)"},{value:"az",title:"Azeri"},{value:"az-Cyrl-AZ",title:"Azeri (Cyrillic, Azerbaijan)"},{value:"az-Latn-AZ",title:"Azeri (Latin, Azerbaijan)"},{value:"be",title:"Belarusian"},{value:"be-BY",title:"Belarusian (Belarus)"},{value:"bg",title:"Bulgarian"},{value:"bg-BG",title:"Bulgarian (Bulgaria)"},{value:"bs-Latn-BA",title:"Bosnian (Bosnia and Herzegovina)"},{value:"ca",title:"Catalan"},{value:"ca-ES",title:"Catalan (Catalan)"},{value:"cs",title:"Czech"},{value:"cs-CZ",title:"Czech (Czech Republic)"},{value:"cy-GB",title:"Welsh (United Kingdom)"},{value:"da",title:"Danish"},{value:"da-DK",title:"Danish (Denmark)"},{value:"de",title:"German"},{value:"de-AT",title:"German (Austria)"},{value:"de-DE",title:"German (Germany)"},{value:"de-CH",title:"German (Switzerland)"},{value:"de-LI",title:"German (Liechtenstein)"},{value:"de-LU",title:"German (Luxembourg)"},{value:"dv",title:"Divehi"},{value:"dv-MV",title:"Divehi (Maldives)"},{value:"el",title:"Greek"},{value:"el-GR",title:"Greek (Greece)"},{value:"en",title:"English"},{value:"en-029",title:"English (Caribbean)"},{value:"en-AU",title:"English (Australia)"},{value:"en-BZ",title:"English (Belize)"},{value:"en-CA",title:"English (Canada)"},{value:"en-GB",title:"English (United Kingdom)"},{value:"en-IE",title:"English (Ireland)"},{value:"en-JM",title:"English (Jamaica)"},{value:"en-NZ",title:"English (New Zealand)"},{value:"en-PH",title:"English (Republic of the Philippines)"},{value:"en-TT",title:"English (Trinidad and Tobago)"},{value:"en-US",title:"English (United States)"},{value:"en-ZA",title:"English (South Africa)"},{value:"en-ZW",title:"English (Zimbabwe)"},{value:"es",title:"Spanish"},{value:"es-AR",title:"Spanish (Argentina)"},{value:"es-BO",title:"Spanish (Bolivia)"},{value:"es-CL",title:"Spanish (Chile)"},{value:"es-CO",title:"Spanish (Colombia)"},{value:"es-CR",title:"Spanish (Costa Rica)"},{value:"es-DO",title:"Spanish (Dominican Republic)"},{value:"es-EC",title:"Spanish (Ecuador)"},{value:"es-ES",title:"Spanish (Spain)"},{value:"es-GT",title:"Spanish (Guatemala)"},{value:"es-HN",title:"Spanish (Honduras)"},{value:"es-MX",title:"Spanish (Mexico)"},{value:"es-NI",title:"Spanish (Nicaragua)"},{value:"es-PA",title:"Spanish (Panama)"},{value:"es-PE",title:"Spanish (Peru)"},{value:"es-PR",title:"Spanish (Puerto Rico)"},{value:"es-PY",title:"Spanish (Paraguay)"},{value:"es-SV",title:"Spanish (El Salvador)"},{value:"es-UY",title:"Spanish (Uruguay)"},{value:"es-VE",title:"Spanish (Venezuela)"},{value:"et",title:"Estonian"},{value:"et-EE",title:"Estonian (Estonia)"},{value:"eu",title:"Basque"},{value:"eu-ES",title:"Basque (Basque)"},{value:"fa",title:"Persian"},{value:"fa-IR",title:"Persian (Iran)"},{value:"fi",title:"Finnish"},{value:"fi-FI",title:"Finnish (Finland)"},{value:"fo",title:"Faroese"},{value:"fo-FO",title:"Faroese (Faroe Islands)"},{value:"fr",title:"French"},{value:"fr-BE",title:"French (Belgium)"},{value:"fr-CA",title:"French (Canada)"},{value:"fr-FR",title:"French (France)"},{value:"fr-CH",title:"French (Switzerland)"},{value:"fr-LU",title:"French (Luxembourg)"},{value:"fr-MC",title:"French (Principality of Monaco)"},{value:"gl",title:"Galician"},{value:"gl-ES",title:"Galician (Galician)"},{value:"gu",title:"Gujarati"},{value:"gu-IN",title:"Gujarati (India)"},{value:"he",title:"Hebrew"},{value:"he-IL",title:"Hebrew (Israel)"},{value:"hi",title:"Hindi"},{value:"hi-IN",title:"Hindi (India)"},{value:"hr",title:"Croatian"},{value:"hr-BA",title:"Croatian (Bosnia and Herzegovina)"},{value:"hr-HR",title:"Croatian (Croatia)"},{value:"hu",title:"Hungarian"},{value:"hu-HU",title:"Hungarian (Hungary)"},{value:"hy",title:"Armenian"},{value:"hy-AM",title:"Armenian (Armenia)"},{value:"id",title:"Indonesian"},{value:"id-ID",title:"Indonesian (Indonesia)"},{value:"is",title:"Icelandic"},{value:"is-IS",title:"Icelandic (Iceland)"},{value:"it",title:"Italian"},{value:"it-CH",title:"Italian (Switzerland)"},{value:"it-IT",title:"Italian (Italy)"},{value:"ja",title:"Japanese"},{value:"ja-JP",title:"Japanese (Japan)"},{value:"ka",title:"Georgian"},{value:"ka-GE",title:"Georgian (Georgia)"},{value:"kk",title:"Kazakh"},{value:"kk-KZ",title:"Kazakh (Kazakhstan)"},{value:"kn",title:"Kannada"},{value:"kn-IN",title:"Kannada (India)"},{value:"ko",title:"Korean"},{value:"kok",title:"Konkani"},{value:"kok-IN",title:"Konkani (India)"},{value:"ko-KR",title:"Korean (Korea)"},{value:"ky",title:"Kyrgyz"},{value:"ky-KG",title:"Kyrgyz (Kyrgyzstan)"},{value:"lt",title:"Lithuanian"},{value:"lt-LT",title:"Lithuanian (Lithuania)"},{value:"lv",title:"Latvian"},{value:"lv-LV",title:"Latvian (Latvia)"},{value:"mi-NZ",title:"Maori (New Zealand)"},{value:"mk",title:"Macedonian"},{value:"mk-MK",title:"Macedonian (Former Yugoslav Republic of Macedonia)"},{value:"mn",title:"Mongolian"},{value:"mn-MN",title:"Mongolian (Cyrillic, Mongolia)"},{value:"mr",title:"Marathi"},{value:"mr-IN",title:"Marathi (India)"},{value:"ms",title:"Malay"},{value:"ms-BN",title:"Malay (Brunei Darussalam)"},{value:"ms-MY",title:"Malay (Malaysia)"},{value:"mt-MT",title:"Maltese (Malta)"},{value:"nb-NO",title:"Norwegian, Bokmal (Norway)"},{value:"nl",title:"Dutch"},{value:"nl-BE",title:"Dutch (Belgium)"},{value:"nl-NL",title:"Dutch (Netherlands)"},{value:"nn-NO",title:"Norwegian, Nynorsk (Norway)"},{value:"no",title:"Norwegian"},{value:"ns-ZA",title:"Northern Sotho (South Africa)"},{value:"pa",title:"Punjabi"},{value:"pa-IN",title:"Punjabi (India)"},{value:"pl",title:"Polish"},{value:"pl-PL",title:"Polish (Poland)"},{value:"pt",title:"Portuguese"},{value:"pt-BR",title:"Portuguese (Brazil)"},{value:"pt-PT",title:"Portuguese (Portugal)"},{value:"quz-BO",title:"Quechua (Bolivia)"},{value:"quz-EC",title:"Quechua (Ecuador)"},{value:"quz-PE",title:"Quechua (Peru)"},{value:"ro",title:"Romanian"},{value:"ro-RO",title:"Romanian (Romania)"},{value:"ru",title:"Russian"},{value:"ru-RU",title:"Russian (Russia)"},{value:"sa",title:"Sanskrit"},{value:"sa-IN",title:"Sanskrit (India)"},{value:"se-FI",title:"Sami (Northern) (Finland)"},{value:"se-NO",title:"Sami (Northern) (Norway)"},{value:"se-SE",title:"Sami (Northern) (Sweden)"},{value:"sk",title:"Slovak"},{value:"sk-SK",title:"Slovak (Slovakia)"},{value:"sl",title:"Slovenian"},{value:"sl-SI",title:"Slovenian (Slovenia)"},{value:"sma-NO",title:"Sami (Southern) (Norway)"},{value:"sma-SE",title:"Sami (Southern) (Sweden)"},{value:"smj-NO",title:"Sami (Lule) (Norway)"},{value:"smj-SE",title:"Sami (Lule) (Sweden)"},{value:"smn-FI",title:"Sami (Inari) (Finland)"},{value:"sms-FI",title:"Sami (Skolt) (Finland)"},{value:"sq",title:"Albanian"},{value:"sq-AL",title:"Albanian (Albania)"},{value:"sr",title:"Serbian"},{value:"sr-Cyrl-BA",title:"Serbian (Cyrillic) (Bosnia and Herzegovina)"},{value:"sr-Cyrl-CS",title:"Serbian (Cyrillic, Serbia)"},{value:"sr-Latn-BA",title:"Serbian (Latin) (Bosnia and Herzegovina)"},{value:"sr-Latn-CS",title:"Serbian (Latin, Serbia)"},{value:"sv",title:"Swedish"},{value:"sv-FI",title:"Swedish (Finland)"},{value:"sv-SE",title:"Swedish (Sweden)"},{value:"sw",title:"Kiswahili"},{value:"sw-KE",title:"Kiswahili (Kenya)"},{value:"syr",title:"Syriac"},{value:"syr-SY",title:"Syriac (Syria)"},{value:"ta",title:"Tamil"},{value:"ta-IN",title:"Tamil (India)"},{value:"te",title:"Telugu"},{value:"te-IN",title:"Telugu (India)"},{value:"th",title:"Thai"},{value:"th-TH",title:"Thai (Thailand)"},{value:"tn-ZA",title:"Tswana (South Africa)"},{value:"tr",title:"Turkish"},{value:"tr-TR",title:"Turkish (Turkey)"},{value:"tt",title:"Tatar"},{value:"tt-RU",title:"Tatar (Russia)"},{value:"uk",title:"Ukrainian"},{value:"uk-UA",title:"Ukrainian (Ukraine)"},{value:"ur",title:"Urdu"},{value:"ur-PK",title:"Urdu (Islamic Republic of Pakistan)"},{value:"uz",title:"Uzbek"},{value:"uz-Cyrl-UZ",title:"Uzbek (Cyrillic, Uzbekistan)"},{value:"uz-Latn-UZ",title:"Uzbek (Latin, Uzbekistan)"},{value:"vi",title:"Vietnamese"},{value:"vi-VN",title:"Vietnamese (Vietnam)"},{value:"xh-ZA",title:"Xhosa (South Africa)"},{value:"zh-CN",title:"Chinese (People's Republic of China)"},{value:"zh-HK",title:"Chinese (Hong Kong S.A.R.)"},{value:"zh-CHS",title:"Chinese (Simplified)"},{value:"zh-CHT",title:"Chinese (Traditional)"},{value:"zh-MO",title:"Chinese (Macao S.A.R.)"},{value:"zh-SG",title:"Chinese (Singapore)"},{value:"zh-TW",title:"Chinese (Taiwan)"},{value:"zu-ZA",title:"Zulu (South Africa)"}],ke="i18n",Be="__i18n_";var De=(e=>(e.STRONG="strong",e.WEAK="weak",e.DISABLED="disabled",e))(De||{}),Re=(e=>(e.SUBPATH="subpath",e.DELIMITER="delimiter",e))(Re||{});const Oe={publishing:"Publishing...",publish:"Publish",updatingIntlFields:"Updating i18n fields",intlFieldsUpdated:"i18n fields updated",baseDocumentCopied:"Base document copied",translationCreatedToast:{title:e=>"Translation created: ".concat(e),description:e=>"The content from ‘".concat(e,"’ is copied into the new document translation.")},loading:"Loading languages...",draft:"Draft",missingTranslations:"Following languages are missing some translations compared to the base language",base:"Base",missing:"Missing",deleteAll:{buttonTitle:"Delete (incl. translations)",deleting:"Deleting..."},duplicateAll:{buttonTitle:"Duplicate (incl. translations)",duplicating:"Duplicating..."},translationsMaintenance:{title:"Translation Maintenance",selectSchemaPlaceholder:"Select schema type",idStructureMismatch:"document(s) with mismatched ID structures",missingLanguageField:"document(s) are missing the language field",missingDocumentRefs:"document(s) have missing translation references",missingBaseDocumentRefs:"document(s) have missing base document references",orphanDocuments:"orphaned translation document(s)",referenceBehaviorMismatch:"document(s) with mismatched reference behaviors",baseLanguageMismatch:"base document(s) with mismatched language field",fix:"Fix",pendingTransactionDialog:{header:"Confirm pending transaction",caution:"Before continuing please review the transactions. Keep in mind, the translation maintenance functionality may remove or update many documents at once. It is recommended to back-up your dataset before performing data maintenance",cancel:"Cancel",confirm:"Confirm operation"}},errors:{baseDocumentNotPublished:"It looks like you have not published your base translation yet. When using strong references it is required to publish the base document before publishing any translated entries"},languageSelect:{placeholder:"Switch language",listLabels:{existing:"Select document translations",missing:"Create new document translations"}}},Pe=(e,t,n)=>e.idStructure===Re.DELIMITER?"".concat(t).concat("__i18n_").concat(n||"*"):"".concat("i18n",".").concat(t,".").concat(n||"*"),je=(e,t)=>t?e.find((e=>e.id===t))||null:e.length>0?e[0]:null;function Ge(){return v({apiVersion:"2021-10-01"})}const Ke=async(e,t,n,a)=>{const i=(e=>e.map((e=>{if("string"==typeof e){const t=Le.find((t=>t.value===e));return t?{title:t.title,id:e}:{title:e,id:e}}return"name"in e?(console.warn('The "name" field in your language configuration is deprecated, please replace it with "id".'),{title:e.title,id:e.name}):{title:e.title,id:e.id}})))(await(async()=>{if(Array.isArray(n))return n;const t=await e.fetch(n.query),a=n.value;return"string"==typeof a?t.map((e=>E(e,a))):t.map((e=>"name"in a?{name:E(e,a.name),title:E(e,a.title)}:{id:E(e,a.id),title:E(e,a.title)}))})());return t.languagesLoader?t.languagesLoader(i,null!=a?a:void 0):i},ze=e=>{if(!e)return;const t=e.replace(/^drafts\./,""),n=new RegExp("".concat("i18n","\\.([^.]+)\\.[^.]+")),a=t.match(n);if(a&&2===a.length)return a[1];const i=t.split("__i18n_");return i.length>0?i[0]:t},Fe=async function(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(t.idStructure===Re.DELIMITER){const t=n.split("-");t[t.length-1]="".concat(t[t.length-1]).concat("__i18n_","*");const i=await e.fetch(a?"*[_id match $segments]":"*[_id match $segments && !(_id in path('drafts.**'))]",{segments:t});return i?i.filter((e=>e._id.startsWith(n)||a&&e._id.startsWith("drafts.".concat(n)))):[]}const i=await e.fetch(a?"*[_id in path($path) || _id in path($draftPath)]":"*[_id in path($path)]",{path:Pe(t,n,"*"),draftPath:"drafts.".concat(Pe(t,n,"*"))});return null!=i?i:[]};function Ue(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return g({_type:"reference",_ref:e.replace("drafts.","")},!0===t?{_weak:!0}:{})}function xe(e,t){return(null==e?void 0:e[t.fieldNames.lang])||t.base||null}async function He(e,t,n,a){var i;const{_type:l,_id:r}=n,s=ze(r),o=r!==s,u=t.fieldNames.lang,c=t.fieldNames.references,d=t.fieldNames.baseReference,h=await Ke(e,t,t.languages,n),m=xe(n,t)||(null==(i=je(h,t.base))?void 0:i.id),f=e.transaction();if(f.createIfNotExists({_id:r,_type:l}),f.patch(r,{set:g({[u]:m},o&&t.referenceBehavior!==De.DISABLED?{[d]:Ue(s,t.referenceBehavior===De.WEAK)}:{})}),await f.commit(),o&&a){const n=await Fe(e,t,s);if(n.length>0){const a=e.transaction();let i=[];t.referenceBehavior!==De.DISABLED&&(i=T(n.map((e=>{const n=xe(e,t);return n?g({_key:n},Ue(e._id,t.referenceBehavior===De.WEAK)):null}),{}))),a.patch(s,{set:{[c]:i}}),await a.commit()}}}function We(e){return e.reduce(((e,t,n)=>{const a="number"==typeof t,i=b(t),l=a||i?"[]":"".concat(0===n?"":".").concat(t);return"".concat(e).concat(l)}),"")}function Ze(e,t){var n,a,i,l,r,s;return{base:(null==t?void 0:t.base)||(null==e?void 0:e.base)||"",languages:(null==t?void 0:t.languages)||(null==e?void 0:e.languages)||[],idStructure:(null==e?void 0:e.idStructure)||Re.DELIMITER,referenceBehavior:(null==e?void 0:e.referenceBehavior)||De.STRONG,withTranslationsMaintenance:!0===(null==e?void 0:e.withTranslationsMaintenance),shouldReload:null==e?void 0:e.shouldReload,languagesLoader:null==e?void 0:e.languagesLoader,fallbackLanguageSelect:null==e?void 0:e.fallbackLanguageSelect,customFlagComponents:null==e?void 0:e.customFlagComponents,fieldNames:{lang:(null==(n=null==t?void 0:t.fieldNames)?void 0:n.lang)||(null==(a=null==e?void 0:e.fieldNames)?void 0:a.lang)||"__i18n_lang",references:(null==(i=null==t?void 0:t.fieldNames)?void 0:i.references)||(null==(l=null==e?void 0:e.fieldNames)?void 0:l.references)||"__i18n_refs",baseReference:(null==(r=null==t?void 0:t.fieldNames)?void 0:r.baseReference)||(null==(s=null==e?void 0:e.fieldNames)?void 0:s.baseReference)||"__i18n_base"}}}function Ve(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];const[i,l]=k(e);return B((()=>{if(i!==e)if(e){if(n){const e=setTimeout((()=>l(!0)),t);return()=>clearTimeout(e)}l(!0)}else if(!e){if(a){const e=setTimeout((()=>l(!1)),t);return()=>clearTimeout(e)}l(!1)}}),[i,e,t,n,a]),i}function Ye(e,t){const n=y(),a=D((()=>{if(t){const e=n.get(t);if(e&&"boolean"!=typeof e.i18n)return null==e?void 0:e.i18n}return null}),[t,n]);return D((()=>Ze(e,a)),[a,e])}function Je(e){const t=t=>{let{type:n,id:a,onComplete:i}=t;const l=K(),r=Ge(),s=Ye(e,n),o=ze(a),u=N.useRef(null),[c,d]=N.useState(null),[h,m]=N.useState(!1),{draft:f,published:g}=S(a,n),p=S(o,n),{publish:v}=_(a,n),{isValidating:b,validation:y}=C(a,n),M=w(a,n),I=w(o,n),A=Ve(!!("published"===c||"publishing"===c||h||v.disabled||M.isSyncing||I.isSyncing||b||y.some((e=>"error"===e.level)))),E=N.useMemo((()=>"publishing"===c?Oe.publishing:h?Oe.updatingIntlFields:Oe.publish),[c,h]),T=N.useCallback((async()=>{m(!0);try{const e=f||g;e&&await He(r,s,e,p.published),l.push({closable:!0,status:"success",title:Oe.intlFieldsUpdated})}catch(e){console.error(e),l.push({closable:!0,status:"error",title:e.toString()})}m(!1)}),[l,f,g,r,p.published,s]),L=N.useCallback((()=>{d("publishing");if(a!==o&&!p.published&&s.referenceBehavior===De.STRONG)throw new Error(Oe.errors.baseDocumentNotPublished);v.execute()}),[a,o,v,s,p.published]);return N.useEffect((()=>{const e="publishing"===c&&!f,t=e?"published":null,n=setTimeout((()=>{d(t)}),e?200:4e3);return()=>clearTimeout(n)}),[c,f]),N.useEffect((()=>{"published"===c&&(u.current||(u.current=T().then((()=>i&&i())).finally((()=>u.current=null))))}),[c,i,T]),{disabled:A,label:E,icon:"published"===c?te:ne,shortcut:A?null:"Ctrl+Alt+P",onHandle:L}};return t.action="publish",t}const $e={NOTHING_TO_DELETE:"This document doesn't yet exist or is already deleted"};function qe(e){const t=t=>{let{id:n,type:a,onComplete:i}=t;const l=K(),r=Ge(),s=Ye(e,a),o=L.useMemo((()=>ze(n)),[n]),u=S(o,a),c=w(n,a),d=w(o,a),{delete:h}=_(n,a),[m,f]=L.useState(!1),[g,p]=L.useState(!1),v=L.useCallback((()=>{p(!0)}),[]),b=L.useCallback((()=>{p(!1),i&&i()}),[i]),y=L.useCallback((async()=>{try{if(f(!0),p(!1),u.draft||u.published){const e=r.transaction();u.draft&&e.delete("drafts.".concat(o)),u.published&&e.patch(o,{unset:[s.fieldNames.references]}),await e.commit()}const e=await Fe(r,s,o,!0),t=r.transaction();e.forEach((e=>{t.delete(e._id)})),await t.commit(),h.execute(),i&&i()}catch(e){l.push({closable:!0,status:"error",title:e.toString()})}finally{f(!0)}}),[l,s,r,o,u.draft,u.published,h,i]);return{onHandle:v,tone:"critical",icon:ae,disabled:m||Boolean(h.disabled)||c.isSyncing||d.isSyncing,shortcut:"CTRL+ALT+D",title:h.disabled&&$e[h.disabled]||"",label:m?Oe.deleteAll.deleting:Oe.deleteAll.buttonTitle,dialog:g&&{type:"dialog",onClose:i,content:ue(de,{action:"delete",id:n,type:a,onCancel:b,onConfirm:y})}}};return t.action="delete",t}const Qe={NOTHING_TO_DUPLICATE:"This document doesn't yet exist so there's nothing to duplicate"};function Xe(e){const t=t=>{let{id:n,type:a,draft:i,published:l}=t;const r=K(),s=Ge(),o=Ye(e,a),u=ze(n),{duplicate:c}=_(n,a),[d,h]=L.useState(!1),m=L.useCallback((async()=>{h(!0);try{const e=fe(),t=await Fe(s,o,u),n=s.transaction(),r=null!=i?i:l;if(!r)throw new Error("no base doc defined");n.create(function(e,t,n,a){const i=t.fieldNames.references,l=e[i].map((e=>g(g({},e),{},{_ref:Pe(t,n,e._key)})));return g(g({},e),{},{[i]:l,_id:n,_type:a})}(g(g({},r),{},{_id:e,_type:a}),o,e,a)),t.forEach((t=>{const a=t._id.startsWith("drafts."),i=Pe(o,e,xe(t,o));n.create(g(g({},t),{},{[o.fieldNames.baseReference]:{_ref:e,_type:"reference",_key:fe()},_id:a?"drafts.".concat(i):i}))})),await n.commit()}catch(e){console.error(e),r.push({description:e.message})}h(!1)}),[s,o,r,u,a,i,l]);return{icon:ie,disabled:Boolean(c.disabled)||d,title:c.disabled&&Qe[c.disabled]||"",label:d?Oe.duplicateAll.duplicating:Oe.duplicateAll.buttonTitle,onHandle:m}};return t.action="duplicate",t}const et=(e,t,n)=>{let{schema:a,schemaType:i,documentId:l}=t;const r=a.get(i),s=r&&r.i18n,o=l===ze(l);let u=e;return s&&(u=u.map((e=>{const t="publish"===e.action,a="delete"===e.action;return t?Je(n):a&&o?qe(n):e})),o&&u.push(Xe(n))),u},tt=R((function(e,t){let{value:n,onChange:a,onOpen:i}=e;const l=y(),r=D((()=>{var e;return null==(e=l._original)?void 0:e.types.filter((e=>!!e.i18n))}),[l]);return ce(z,{space:4,children:[ue(F,{children:Oe.translationsMaintenance.selectSchemaPlaceholder}),ue(U,{children:ue(x,{ref:t,fontSize:[2,2,3],icon:le,id:"i18n-schema-selector",options:null==r?void 0:r.map((e=>({value:e.name,payload:e}))),value:n,placeholder:"Search",openButton:{onClick:()=>i},onChange:a,renderValue:(e,t)=>(null==t?void 0:t.payload.title)||e,renderOption:e=>{let{payload:t}=e;return ue(U,{padding:2,radius:2,as:"button",children:ue(M,{layout:"default",title:t.title,media:t.icon})})}})})]})})),nt=e=>{let{pending:t,count:n,labelName:a,children:i,onClick:l}=e;return ue(U,{padding:3,radius:2,shadow:1,tone:n>0?"caution":"default",children:ce(H,{align:"center",children:[ue(W,{flex:1,children:ce(F,{muted:n<=0,children:[ue("span",{children:n}),ue("span",{children:" "}),ue("span",{children:a?String(Oe.translationsMaintenance[a]):i})]})}),n>0&&ue(Z,{padding:2,fontSize:2,disabled:t,onClick:l,text:Oe.translationsMaintenance.fix})]})})},at=(e,t,n,a)=>{var i;const l=null==(i=t.fieldNames)?void 0:i.lang,r=e.transaction();return a.forEach((e=>{const a=n.get(e._type),i=("object"==typeof a.i18n?a.i18n.base:void 0)||t.base;if(!e[l]){const t=(e=>{const t=new RegExp("".concat("i18n","\\.[^.]+\\.([^.]+)")),n=e.match(t);if(n&&2===n.length)return n[1];const a=e.split("__i18n_");return a.length>1?a[1]:void 0})(e._id)||i;r.patch(e._id,{set:{[l]:t}})}})),r},it=(e,t,n,a)=>{const i=t.fieldNames.references;return ye(n,50).map((n=>{const l=e.transaction();return n.forEach((e=>{let n=[];const r=a.filter((t=>ze(t._id)===e._id));t.referenceBehavior!==De.DISABLED&&(n=T(r.map((e=>{const n=xe(e,t);return n?g({_key:n},Ue(e._id,t.referenceBehavior===De.WEAK)):null}),{}))),l.patch(e._id,{set:{[i]:n}})})),l}))},lt=(e,t,n,a)=>{const i=e.transaction();return a.forEach((e=>{n.find((n=>{var a,i;return Array.isArray(null==e?void 0:e[t.fieldNames.references])&&(null==(a=null==e?void 0:e[t.fieldNames.references])?void 0:a.some((t=>t._ref===e._id)))||n._id===(null==(i=null==e?void 0:e[t.fieldNames.baseReference])?void 0:i._ref)}))||i.delete(e._id)})),i},rt=async(e,t,n)=>{const a=await Ke(e,t,t.languages),i=je(a,t.base),l=t.fieldNames.lang,r=e.transaction();return n.forEach((e=>{e[l]!==(null==i?void 0:i.id)&&r.patch(e._id,{set:{[l]:null==i?void 0:i.id}})})),r},st=(e,t,n)=>{const a=e.transaction();if(t.referenceBehavior!==De.DISABLED){const e=t.fieldNames.baseReference;n.forEach((n=>{if(!n[e]){const i=ze(n._id);a.patch(n._id,{set:{[e]:Ue(i,t.referenceBehavior===De.WEAK)}})}}))}return a},ot=ge(U)(t||(t=m(["\n grid-column-start: 1;\n grid-row-start: 1;\n"]))),ut=ge(V)(n||(n=m(["\n word-break: break-word;\n white-space: break-spaces;\n"]))),ct=ge(H)(a||(a=m(["\n grid-column-start: 1;\n grid-row-start: 1;\n"]))),dt=R((function(e,t){let{config:n}=e;const[a,i]=k(""),l=Ge(),{pending:r,setPending:s,documents:o,baseDocuments:u,translatedDocuments:c,documentsSummaryInformation:d,fetchInformation:h}=((e,t)=>{const n=Ge(),a=Ye(e,t),[i,l]=L.useState(!1),[r,s]=L.useState([]),[o,u]=L.useState([]),c=L.useMemo((()=>a.idStructure===Re.DELIMITER?r.filter((e=>!e._id.includes("__i18n_"))):r.filter((e=>!e._id.startsWith("i18n")))),[a,r]),d=L.useMemo((()=>a.idStructure===Re.DELIMITER?r.filter((e=>e._id.includes("__i18n_"))):r.filter((e=>e._id.startsWith("i18n")))),[a,r]),h=L.useMemo((()=>a.idStructure===Re.DELIMITER?r.filter((e=>e._id.startsWith("i18n"))):r.filter((e=>e._id.includes("__i18n_")))),[a,r]),m=L.useCallback((async e=>{l(!0);const[t,i]=await Promise.all([Ke(n,a,a.languages),n.fetch("*[_type == $type && !(_id in path('drafts.**'))]",{type:e})]);u(t),s(i),l(!1)}),[a,n]),f=L.useMemo((()=>{var e,t,n;const i=je(o,a.base),l=c,s=d,u=null==(e=a.fieldNames)?void 0:e.lang,m=null==(t=a.fieldNames)?void 0:t.references,f=null==(n=a.fieldNames)?void 0:n.baseReference;return{idStructureMismatch:h,missingLanguageField:r.filter((e=>!e[u])),missingDocumentRefs:l.filter((e=>{const t=s.filter((t=>ze(t._id)===e._id));return Object.values(e[m]||[]).filter((e=>"reference"===e._type&&!!e._ref)).length!=t.length})),missingBaseDocumentRefs:s.filter((e=>!e[f])),orphanDocuments:s.filter((e=>!l.find((t=>ze(e._id)===t._id)))),referenceBehaviorMismatch:l.filter((e=>{const t=e[m]||[];return a.referenceBehavior===De.DISABLED?Object.keys(t).length>0:a.referenceBehavior===De.WEAK?Object.values(t).some((e=>!e._weak)):Object.values(t).some((e=>!!e._weak))})),baseLanguageMismatch:l.filter((e=>(null==i?void 0:i.id)&&e[u]!==i.id))}}),[a,r,o,c,d,h]);return L.useEffect((()=>{t&&m(t)}),[t]),{pending:i,setPending:l,documents:r,baseDocuments:c,translatedDocuments:d,idStructureMismatchDocuments:h,documentsSummaryInformation:f,fetchInformation:m}})(n,a),[m,f]=k(null),p=y(),v=Ye(n,a),b=O((e=>i(e)),[]),S=O((()=>i("")),[]),_=O((()=>{f(((e,t,n,a)=>{const i=t.fieldNames.references,l=new Set(a.map((e=>ze(e._id)))),r=e.transaction();l.forEach((e=>{r.patch(e,{set:{[i]:[]}})}));const s=be(a.filter((e=>e._id!==ze(e._id))),100).map((a=>{const l=e.transaction();return a.forEach((e=>{const a=ze(e._id),r=xe(e,t);if(r){const s=Pe(t,a,r);l.createIfNotExists(g(g({},e),{},{_id:s,_type:n})),l.delete(e._id),t.referenceBehavior!==De.DISABLED&&(l.patch(a,{setIfMissing:{[i]:[]}}),l.patch(a,{insert:{after:"".concat(i,"[-1]"),items:[g({_key:r},Ue(s,t.referenceBehavior===De.WEAK))]}}))}})),l}));return[r,...s]})(l,v,a,o))}),[l,v,a,o]),C=O((()=>{f([at(l,v,p,o)])}),[l,p,v,o]),w=O((()=>{f(it(l,v,u,c))}),[l,v,u,c]),M=O((()=>{f([st(l,v,c)])}),[l,v,c]),I=O((()=>{f([lt(l,v,u,c)])}),[l,v,u,c]),A=O((()=>{f(it(l,v,u,c))}),[l,v,u,c]),E=O((async()=>{f([await rt(l,v,u)])}),[l,v,u]),T=O((()=>{if(m){const e=JSON.stringify(m.map((e=>e.toJSON())),null,2),t=new Blob([e],{type:"application/json"}),n=URL.createObjectURL(t),a=document.createElement("a");a.href=n,a.download="transactions.json",a.style.display="none",document.body.appendChild(a),a.click(),URL.revokeObjectURL(n)}}),[m]),N=O((()=>{f(null)}),[f]),B=O((async()=>{s(!0);try{m&&(await m.reduce((async(e,t)=>{await e,await t.commit()}),Promise.resolve()),await h(a),f(null))}catch(e){console.error(e)}finally{s(!1)}}),[s,h,a,m]);return ce(Y,{width:1,children:[ce(z,{space:2,children:[ue(W,{padding:4,children:ue(tt,{value:a,onChange:b,onOpen:S,ref:t})}),!!a&&ue(W,{paddingX:4,children:ce(z,{space:2,children:[ue(nt,{pending:r,count:d.idStructureMismatch.length,labelName:"idStructureMismatch",onClick:_}),ue(nt,{pending:r,count:d.missingLanguageField.length,labelName:"missingLanguageField",onClick:C}),ue(nt,{pending:r,count:d.missingDocumentRefs.length,labelName:"missingDocumentRefs",onClick:w}),ue(nt,{pending:r,count:d.missingBaseDocumentRefs.length,labelName:"missingBaseDocumentRefs",onClick:M}),ue(nt,{pending:r,count:d.orphanDocuments.length,labelName:"orphanDocuments",onClick:I}),ue(nt,{pending:r,count:d.referenceBehaviorMismatch.length,labelName:"referenceBehaviorMismatch",onClick:A}),ue(nt,{pending:r,count:d.baseLanguageMismatch.length,labelName:"baseLanguageMismatch",onClick:E})]})})]}),!!(null==m?void 0:m.length)&&ue(J,{id:"confirm-pending-transactions",width:2,header:Oe.translationsMaintenance.pendingTransactionDialog.header,onClose:N,footer:ue(H,{padding:3,justify:"flex-end",children:ce($,{autoFlow:"column",autoCols:"auto",gap:2,children:[ue(Z,{tone:"default",loading:r,disabled:r,text:Oe.translationsMaintenance.pendingTransactionDialog.cancel,onClick:N}),ue(Z,{tone:"critical",loading:r,disabled:r,text:Oe.translationsMaintenance.pendingTransactionDialog.confirm,onClick:B})]})}),children:ce(z,{padding:3,space:3,children:[ue(U,{padding:3,radius:2,shadow:1,tone:"caution",children:ue(F,{size:2,children:Oe.translationsMaintenance.pendingTransactionDialog.caution})}),ce($,{cols:1,children:[ue(ot,{padding:3,radius:2,shadow:1,tone:"default",children:ue(ut,{language:"json",children:JSON.stringify(m.map((e=>e.toJSON())),null,2)})}),ue(ct,{padding:2,justify:"flex-end",align:"flex-start",onClick:T,children:ue(Z,{text:"Download"})})]})]})})]})}));const ht=e=>e.document(),mt=e=>{const{S:t,schema:n}=e,a=[],i=t.documentTypeListItems().filter((e=>{let t=e.getSchemaType();t="string"==typeof t?n.get(t):t;const i=t&&t.i18n;return i||a.push(e),i}));return{withoutI18n:a,withI18n:i}},ft=e=>{const{S:t}=e,n=function(e){return R((function(t,n){return ue(dt,g(g({},e),{},{ref:n}))}))}(e);return t.component(n).title(Oe.translationsMaintenance.title).id("__i18n_translations_maintenance_tab")},gt=e=>{const{S:t}=e;return t.listItem().id("__i18n_translations_maintenance_tab").title(Oe.translationsMaintenance.title).icon(le).child(ft(e))},pt=e=>{const{S:t,config:n,schema:a}=e,i=Ze(n,"object"==typeof a.i18n?a.i18n:void 0),l=mt(e),r={[Re.SUBPATH]:(e,t)=>t.filter("!(_id in path($path)) && !(_id in path($drafts)) && _type == $type").params({path:"".concat("i18n",".**"),drafts:"drafts.".concat("i18n",".**"),type:e.getId()}),[Re.DELIMITER]:(e,t)=>t.filter("!(_id match $id) && _type == $type").params({id:"*".concat("__i18n_","*"),type:e.getId()})},s=[...l.withoutI18n,...l.withI18n.map((e=>{const n=e.getSchemaType(),a="string"==typeof n?n:null==n?void 0:n.name;return e.child(r[i.idStructure](e,t.documentList().id(e.getId()||"").title(e.getTitle()||"").schemaType(null!=a?a:"").menuItems([...a?t.orderingMenuItemsForType(a):[]])))}))];return i.withTranslationsMaintenance&&s.splice(0,0,gt(e)),s.map((e=>e.serialize()))};function vt(e){const{S:t}=e;if(0===mt(e).withI18n.length)return t.defaults();const n=pt(e);return t.list().id("__root__").title("Content").items(n).showIcons(n.some((e=>{return!(!(t=e.schemaType)||"string"==typeof t)&&Boolean(t.icon);var t})))}function bt(e){return(t,n)=>{const{document:a,path:i,type:l}=n,r=null==l?void 0:l.options;if(!a)throw new Error("`document` was not provided in validation context.");if(!i)throw new Error("`path` was not provided in validation context.");const s=(null==r?void 0:r.disableArrayWarning)||!1,o=ze(a._id),u=a._type,c=We(i.concat("current"));if(!s&&c.includes("[]")){const e=We(i);console.warn(["Slug field at path ".concat(e," is within an array and cannot be automatically checked for uniqueness"),'If you need to check for uniqueness, provide your own "isUnique" method',"To disable this message, set `disableArrayWarning: true` on the slug `options` field"].join("\n"))}const d=["_type == $docType",'!(_id in path("drafts.**"))',"_id != $baseId",'!(_id in path("i18n." + $baseId + ".*"))','!(_id match $baseId + "'.concat("__i18n_",'*")'),"".concat(c," == $slug")].join(" && ");return e.fetch("!defined(*[".concat(d,"][0]._id)"),{docType:u,baseId:o,slug:t},{tag:"validation.slug-is-unique"})}}const yt=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(!e)return"";switch(e.toLocaleLowerCase()){case"en":return"gb";case"sq":return"al";case"da":return"dk";default:return e}},St=P({}),_t=ge(W)(i||(i=m(["\n min-width: 24px;\n transform: translateY(1px);\n"])));const Ct=e=>{let{code:t,langCulture:n}=e;const a=function(e){const t=Se.parse(null!=e?e:"🇺🇳",{folder:"svg",ext:".svg"});return _e(t.replace("twemoji.maxcdn.com/v","cdnjs.cloudflare.com/ajax/libs/twemoji"))}(D((()=>t&&function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(!e)return"";const t=yt(e);if(!Ne.includes(t.toUpperCase()))return"";return Ce(t)}(t)),[t])),{customFlagComponents:i}=j(St),l=D((()=>{if(n&&i){const e=n.replace(/[^a-zA-Z0-9_]/g,"_");if(e in i)return i[e]}return null}),[n,i]);return ue(W,{"aria-label":t,children:l&&t?ue(l,{code:t}):ue(_t,{children:a})})};const wt={},Mt={apiVersion:"v2022-05-09"};const It=(e,t)=>{var n,a;return Number(null!=(n=e.isBase)?n:0)-Number(null!=(a=t.isBase)?a:0)};function At(e){let{children:t}=e;return ue(W,{padding:2,children:ue(F,{muted:!0,size:1,children:t})})}const Et=R((function(e,t){return ue("svg",g(g({"data-sanity-icon":"splitPane",width:"1em",height:"1em",viewBox:"0 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg",ref:t},e),{},{children:ue("path",{d:"M10.5 5.5V19.5M13 12.5H15.5M18 12.5H15.5M15.5 12.5V15M15.5 12.5V10M4.5 5.5H20.5V19.5H4.5V5.5Z",stroke:"currentColor",strokeWidth:1.2})}))})),Tt=P({currentDocumentId:null,currentDocumentType:null,baseLanguage:null,currentLanguage:null}),Nt=pe(l||(l=m(["\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n"]))),Lt=ge(re)(r||(r=m(["\n animation: "," 500ms linear infinite;\n"])),Nt),kt=ge(Z)(s||(s=m(["\n display: none;\n flex-shrink: 0;\n margin-left: 4px;\n\n & svg {\n display: block;\n color: ",";\n }\n\n ","\n"])),Ee.gray[700].hex,(e=>{let{theme:t}=e;return ve(o||(o=m(["\n @media (min-width: ","em) {\n display: block;\n }\n "])),t.sanity.media[1]/16)})),Bt=L.forwardRef(((e,t)=>ue("button",g({type:"button",ref:t},e)))),Dt=ge.button(u||(u=m(["\n color: ",";\n background-color: ",";\n\n span {\n color: ",";\n }\n"])),(e=>{let{theme:t}=e;return t.sanity.color.button.default.primary.enabled.fg}),(e=>{let{theme:t}=e;return t.sanity.color.button.default.primary.enabled.bg}),(e=>{let{theme:t}=e;return t.sanity.color.button.default.primary.enabled.fg})),Rt=e=>{let{status:t,language:n}=e;const a=K(),i=j(St),l=Ge(),{currentDocumentId:r,currentDocumentType:s,baseLanguage:o}=L.useContext(Tt);if(!r||!s)throw new Error("No document in view");const u=Ye(i,s),c=L.useContext(Te),{routerPanesState:d,groupIndex:h,replaceCurrent:m}=he(),[f,p]=L.useState(!1),v=L.useMemo((()=>ze(r)),[r]),b=L.useMemo((()=>n.id.split(/[_-]/).pop()),[n.id]),y=L.useMemo((()=>n.id===(null==o?void 0:o.id)?v:Pe(u,v,n.id)),[u,v,n.id,o]),_=S(v,s),C=L.useMemo((()=>n.isBase?n.title.length>=20?Oe.base.split(" ")[0]:Oe.base:null),[n]),w=L.useCallback(((e,t)=>{m({id:e,params:{type:t}})}),[m]),M=L.useCallback(((e,t)=>{if(!c)return;const n=[...d];n.splice(h+1,0,[{id:e,params:{type:t}}]);const a=c.resolvePathFromState({panes:n});c.navigateUrl({path:a})}),[c,d,h]),I=L.useCallback((async()=>{try{p(!0);const e=_.draft||_.published,t=u.fieldNames.lang,i=u.fieldNames.references,r=u.fieldNames.baseReference,c=u.referenceBehavior;await l.createIfNotExists(g(g({_id:"drafts.".concat(y),_type:s},e?Ae(e,["_id","_type",i]):{}),{},{[t]:n.id},(null==e?void 0:e._id)&&c!==De.DISABLED?{[r]:{_type:"reference",_ref:e._id.replace("drafts.",""),_weak:!0,_strengthenOnPublish:{type:s,weak:"weak"===c,template:{id:s,params:void 0}}}}:{})),a.push({closable:!0,status:"success",title:Oe.translationCreatedToast.title(n.title),description:o?Oe.translationCreatedToast.description(o.title):void 0}),w(y,s)}catch(e){a.push({closable:!0,status:"error",title:e.toString()})}finally{p(!1)}}),[u,_,y,s,n.id,n.title,a,o,w,l]),A=L.useCallback((()=>{w(y,s)}),[w,y,s]),E=L.useCallback((()=>{M(y,s)}),[M,y,s]);return"missing"===t?ue(q,{as:Bt,"data-as":"button",disabled:f,icon:f?Lt:se,text:n.title,onClick:I}):ce(H,{children:[ue(q,{as:n.isCurrentLanguage?Dt:Bt,"data-as":"button","data-selected":n.isCurrentLanguage,selected:n.isCurrentLanguage,onClick:A,paddingY:1,paddingX:2,children:ce(H,{align:"center",gap:2,children:[ue(Ct,{code:b,langCulture:n.id}),ue(W,{flex:1,children:ue(F,{children:n.title})}),C?ue(Q,{fontSize:0,children:C}):null]})}),!n.isCurrentLanguage&&ue(kt,{type:"button",tone:"default",mode:"bleed",padding:2,onClick:E,children:ue(Et,{width:19,height:19})})]})},Ot=ge(W)(c||(c=m(["\n border-bottom: 1px solid var(--card-shadow-outline-color);\n"]))),Pt=ge(W)(d||(d=m(["\n minwidth: 250;\n"]))),jt=e=>{let{draftLanguageObjects:t,publishedLanguageObjects:n,missingLanguageObjects:a}=e;const i=L.useMemo((()=>Boolean(!(!t.length&&!n.length)&&a.length)),[t,n,a]),l=L.useMemo((()=>[...t.map((e=>g(g({},e),{},{status:"draft"}))),...n.map((e=>g(g({},e),{},{status:"published"})))].sort(It).reverse()),[t,n]);return ce(Pt,{children:[!!l.length&&ce(W,{children:[ue(At,{children:Oe.languageSelect.listLabels.existing}),ue($,{columns:1,gap:1,children:l.map((e=>ue(Rt,{status:e.status,language:e},e.id)))})]}),i&&ue(Ot,{marginY:1}),!!a.length&&ce(W,{children:[ue(At,{children:Oe.languageSelect.listLabels.missing}),ue($,{columns:1,gap:1,children:a.map((e=>ue(Rt,{status:"missing",language:e},e.id)))})]})]})},Gt={constrainSize:!0,placement:"bottom",portal:!0},Kt=e=>{let{schemaType:t,document:n}=e;var a,i;const l=Ye(j(St),t.name),[r,s]=function(e,t){const n=Ge(),{draft:a,published:i}=S(t._id.replace(/^drafts\./,""),t._type),[l,r]=k(!1),[s,o]=k([]),u=O((async()=>{if(0===s.length||e.shouldReload&&e.shouldReload(null!=a?a:i)){r(!0);const t=await Ke(n,e,e.languages,null!=a?a:i);o(t),r(!1)}}),[n,e,a,i,s]);return B((()=>{u()}),[a,i,s,e,u]),[l,s]}(l,n),o=L.useMemo((()=>je(s,l.base)),[s,l.base]),u=L.useMemo((()=>xe(n,l)||(o?o.id:null)),[n,o,l]),c=L.useMemo((()=>s.find((e=>e.id===u))),[s,u]),d=L.useMemo((()=>null==u?void 0:u.split(/[-_]/).pop()),[u]),h='*[_type == $type && _id in $ids]{\n _id,\n "'.concat(l.fieldNames.lang,'": ').concat(l.fieldNames.lang,"\n }"),m=L.useMemo((()=>{const e=ze(n._id),t=s.map((t=>t===o?e:Pe(l,e,t.id))),a=t.map((e=>"drafts.".concat(e)));return{ids:[...t,...a],type:n._type}}),[l,o,s,n._id,n._type]),{loading:f,data:p}=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:wt,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Mt;const[a,i]=k(!0),[l,r]=k(!1),[s,o]=k(null),u=G(null),c=I();return B((()=>(e&&(u.current=c.listenQuery(e,t,n).pipe(we(Ie),Me((e=>(console.error(e),r(e),i(!1),o(null),e)))).subscribe((e=>{o((t=>Ie(t,e)?t:e)),i(!1),r(!1)}))),()=>u.current?u.current.unsubscribe():void 0)),[e,t,n]),{loading:a,error:l,data:s}}(h,m),v=L.useMemo((()=>{const e=[],t=[],n=[];if(!(null==p?void 0:p.length))return{draftLanguageObjects:e,publishedLanguageObjects:t,missingLanguageObjects:n};const a=p.reduce(((e,t)=>{if(!t._id.startsWith("drafts.")){return p.some((e=>e._id==="drafts.".concat(t._id)))?e:[...e,t]}return[...e,t]}),[]),i=new Map;return a.forEach((e=>{const t=E(null!=e?e:{},l.fieldNames.lang),n=e&&e._id.replace(/^drafts\./,"")===ze(e._id);t?i.set(t,e):n&&(null==o?void 0:o.id)&&i.set(o.id,e)})),s.forEach(((a,l)=>{const r=g(g({},a),{},{isBase:o?a.id===o.id:0===l,isCurrentLanguage:a.id===u}),s=i.get(a.id);(null==s?void 0:s._id)&&!s._id.startsWith("drafts.")?t.push(r):(null==s?void 0:s._id)&&s._id.startsWith("drafts.")?e.push(r):n.push(r)})),{draftLanguageObjects:e,publishedLanguageObjects:t,missingLanguageObjects:n}}),[l,s,o,p,u]);return!c||!u||r||f||0===s.length?ue(Z,{disabled:!0,mode:"bleed",padding:3,loading:r||f,iconRight:oe,text:Oe.languageSelect.placeholder}):ue(Tt.Provider,{value:{baseLanguage:o,currentLanguage:c,currentDocumentType:n._type,currentDocumentId:n._id},children:ue(X,{id:"document-internationalization/language-select",popover:Gt,button:ue(Z,{paddingY:1,paddingX:2,mode:"bleed",title:null!=(a=c.title)?a:c.id,children:ce(H,{align:"center",gap:2,children:[ue(Ct,{code:d,langCulture:u}),ue(W,{flex:1,children:ue(F,{children:null!=(i=c.title)?i:c.id})}),ue(oe,{width:19,height:19})]})}),menu:ue(ee,{children:ue(jt,g({},v))})})})};function zt(t){const{config:n}=t,a=h(t,e),i=t.value;return ce(St.Provider,{value:n,children:[i._id&&ue(H,{flex:1,justify:"flex-end",children:ue(Kt,{schemaType:t.schemaType,document:i})}),t.renderDefault(a)]})}const Ft=A((e=>({name:"document-i18n",document:{actions:(t,n)=>et(t,n,e),badges:t=>{return[...t,(n=e,e=>{const t=Ye(n,e.type),a=e.draft||e.published,i=a?xe(a,t):null;return i?{label:i,color:"success"}:null})];var n}},form:{components:{input(t){const{value:n}=t;return t.schemaType.i18n&&"object"==typeof n&&(null==n?void 0:n._id)?ue(zt,g({config:e},t)):t.renderDefault(t)}}}})));function Ut(e,t){var n;const a=Ft(t);return T([...Array.isArray(e)?e:e(t),null==(n=t.includeDeskTool)||n?me({structure:(e,n)=>{let{schema:a}=n;return vt({S:e,schema:a,config:t})}}):null,a])}export{Be as I18nDelimiter,ke as I18nPrefix,Re as IdStructure,Le as LanguageCultures,De as ReferenceBehavior,Ne as SupportedEmojiFlagCodes,Oe as UiMessages,qe as createDeleteAction,Xe as createDuplicateAction,bt as createIsSlugUnique,Je as createPublishAction,Ft as documentI18n,ze as getBaseIdFromId,ht as getDefaultDocumentNode,vt as getDocumentList,mt as getDocumentTypes,pt as getFilteredDocumentTypeListItems,gt as getMaintenanceListItem,ft as getMaintenanceTabComponent,et as resolveActions,He as updateIntlFieldsForDocument,Ye as useConfig,Ve as useDelayedFlag,Ut as withDocumentI18nPlugin};
|
|
2
2
|
//# sourceMappingURL=index.esm.js.map
|