import{a as e,R as t}from"./chunk-CLN-lmR0.js";const r={},n=function(e,t,n){let o=Promise.resolve();if(t&&t.length>0){let e=function(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:"fulfilled",value:e}),e=>({status:"rejected",reason:e}))))};document.getElementsByTagName("link");const n=document.querySelector("meta[property=csp-nonce]"),i=(null==n?void 0:n.nonce)||(null==n?void 0:n.getAttribute("nonce"));o=e(t.map(e=>{if((e=function(e){return"/"+e}(e))in r)return;r[e]=!0;const t=e.endsWith(".css"),n=t?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${e}"]${n}`))return;const o=document.createElement("link");return o.rel=t?"stylesheet":"modulepreload",t||(o.as="script"),o.crossOrigin="",o.href=e,i&&o.setAttribute("nonce",i),document.head.appendChild(o),t?new Promise((t,r)=>{o.addEventListener("load",t),o.addEventListener("error",()=>r(new Error(`Unable to preload CSS for ${e}`)))}):void 0}))}function i(e){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return o.then(t=>{for(const e of t||[])"rejected"===e.status&&i(e.reason);return e().catch(i)})};function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function u(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=e.length?e.apply(this,o):function(){for(var e=arguments.length,n=new Array(e),i=0;i1&&void 0!==arguments[1]?arguments[1]:{};v.initial(e),v.handler(t);var r={current:e},n=f(b)(r,t),o=f(y)(r),i=f(v.changes)(e),u=f(m)(r);return[function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(e){return e};return v.selector(e),e(r.current)},function(e){!function(){for(var e=arguments.length,t=new Array(e),r=0;r=O.length?O.apply(this,n):function(){for(var r=arguments.length,o=new Array(r),i=0;i{o.current=!1}:t,r)};function Y(){}function G(e,t,r,n){return function(e,t){return e.editor.getModel(H(e,t))}(e,n)||function(e,t,r,n){return e.editor.createModel(t,r,n?H(e,n):void 0)}(e,t,r,n)}function H(e,t){return e.Uri.parse(t)}var J=function({original:r,modified:n,language:o,originalLanguage:i,modifiedLanguage:u,originalModelPath:c,modifiedModelPath:a,keepCurrentOriginalModel:l=!1,keepCurrentModifiedModel:s=!1,theme:d="light",loading:f="Loading...",options:g={},height:p="100%",width:h="100%",className:v,wrapperProps:m={},beforeMount:y=Y,onMount:b=Y}){let[w,O]=e.useState(!1),[j,E]=e.useState(!0),M=e.useRef(null),P=e.useRef(null),S=e.useRef(null),R=e.useRef(b),k=e.useRef(y),T=e.useRef(!1);B(()=>{let e=N.init();return e.then(e=>(P.current=e)&&E(!1)).catch(e=>"cancelation"!==(null==e?void 0:e.type)&&void 0),()=>M.current?function(){var e,t,r,n;let o=null==(e=M.current)?void 0:e.getModel();l||null==(t=null==o?void 0:o.original)||t.dispose(),s||null==(r=null==o?void 0:o.modified)||r.dispose(),null==(n=M.current)||n.dispose()}():e.cancel()}),W(()=>{if(M.current&&P.current){let e=M.current.getOriginalEditor(),t=G(P.current,r||"",i||o||"text",c||"");t!==e.getModel()&&e.setModel(t)}},[c],w),W(()=>{if(M.current&&P.current){let e=M.current.getModifiedEditor(),t=G(P.current,n||"",u||o||"text",a||"");t!==e.getModel()&&e.setModel(t)}},[a],w),W(()=>{let e=M.current.getModifiedEditor();e.getOption(P.current.editor.EditorOption.readOnly)?e.setValue(n||""):n!==e.getValue()&&(e.executeEdits("",[{range:e.getModel().getFullModelRange(),text:n||"",forceMoveMarkers:!0}]),e.pushUndoStop())},[n],w),W(()=>{var e,t;null==(t=null==(e=M.current)?void 0:e.getModel())||t.original.setValue(r||"")},[r],w),W(()=>{let{original:e,modified:t}=M.current.getModel();P.current.editor.setModelLanguage(e,i||o||"text"),P.current.editor.setModelLanguage(t,u||o||"text")},[o,i,u],w),W(()=>{var e;null==(e=P.current)||e.editor.setTheme(d)},[d],w),W(()=>{var e;null==(e=M.current)||e.updateOptions(g)},[g],w);let x=e.useCallback(()=>{var e;if(!P.current)return;k.current(P.current);let t=G(P.current,r||"",i||o||"text",c||""),l=G(P.current,n||"",u||o||"text",a||"");null==(e=M.current)||e.setModel({original:t,modified:l})},[o,n,u,r,i,c,a]),C=e.useCallback(()=>{var e;!T.current&&S.current&&(M.current=P.current.editor.createDiffEditor(S.current,{automaticLayout:!0,...g}),x(),null==(e=P.current)||e.editor.setTheme(d),O(!0),T.current=!0)},[g,d,x]);return e.useEffect(()=>{w&&R.current(M.current,P.current)},[w]),e.useEffect(()=>{!j&&!w&&C()},[j,w,C]),t.createElement($,{width:h,height:p,isEditorReady:w,loading:f,_ref:S,className:v,wrapperProps:m})},K=e.memo(J);var Q=function(t){let r=e.useRef();return e.useEffect(()=>{r.current=t},[t]),r.current},X=new Map;var Z=function({defaultValue:r,defaultLanguage:n,defaultPath:o,value:i,language:u,path:c,theme:a="light",line:l,loading:s="Loading...",options:d={},overrideServices:f={},saveViewState:g=!0,keepCurrentModel:p=!1,width:h="100%",height:v="100%",className:m,wrapperProps:y={},beforeMount:b=Y,onMount:w=Y,onChange:O,onValidate:j=Y}){let[E,M]=e.useState(!1),[P,S]=e.useState(!0),R=e.useRef(null),k=e.useRef(null),T=e.useRef(null),x=e.useRef(w),C=e.useRef(b),I=e.useRef(),A=e.useRef(i),L=Q(c),V=e.useRef(!1),D=e.useRef(!1);B(()=>{let e=N.init();return e.then(e=>(R.current=e)&&S(!1)).catch(e=>"cancelation"!==(null==e?void 0:e.type)&&void 0),()=>{return k.current?(null==(t=I.current)||t.dispose(),p?g&&X.set(c,k.current.saveViewState()):null==(r=k.current.getModel())||r.dispose(),void k.current.dispose()):e.cancel();var t,r}}),W(()=>{var e,t,a,l;let s=G(R.current,r||i||"",n||u||"",c||o||"");s!==(null==(e=k.current)?void 0:e.getModel())&&(g&&X.set(L,null==(t=k.current)?void 0:t.saveViewState()),null==(a=k.current)||a.setModel(s),g&&(null==(l=k.current)||l.restoreViewState(X.get(c))))},[c],E),W(()=>{var e;null==(e=k.current)||e.updateOptions(d)},[d],E),W(()=>{!k.current||void 0===i||(k.current.getOption(R.current.editor.EditorOption.readOnly)?k.current.setValue(i):i!==k.current.getValue()&&(D.current=!0,k.current.executeEdits("",[{range:k.current.getModel().getFullModelRange(),text:i,forceMoveMarkers:!0}]),k.current.pushUndoStop(),D.current=!1))},[i],E),W(()=>{var e,t;let r=null==(e=k.current)?void 0:e.getModel();r&&u&&(null==(t=R.current)||t.editor.setModelLanguage(r,u))},[u],E),W(()=>{var e;void 0!==l&&(null==(e=k.current)||e.revealLine(l))},[l],E),W(()=>{var e;null==(e=R.current)||e.editor.setTheme(a)},[a],E);let q=e.useCallback(()=>{var e;if(T.current&&R.current&&!V.current){C.current(R.current);let t=c||o,s=G(R.current,i||r||"",n||u||"",t||"");k.current=null==(e=R.current)?void 0:e.editor.create(T.current,{model:s,automaticLayout:!0,...d},f),g&&k.current.restoreViewState(X.get(t)),R.current.editor.setTheme(a),void 0!==l&&k.current.revealLine(l),M(!0),V.current=!0}},[r,n,o,i,u,c,d,f,g,a,l]);return e.useEffect(()=>{E&&x.current(k.current,R.current)},[E]),e.useEffect(()=>{!P&&!E&&q()},[P,E,q]),A.current=i,e.useEffect(()=>{var e,t;E&&O&&(null==(e=I.current)||e.dispose(),I.current=null==(t=k.current)?void 0:t.onDidChangeModelContent(e=>{D.current||O(k.current.getValue(),e)}))},[E,O]),e.useEffect(()=>{if(E){let e=R.current.editor.onDidChangeMarkers(e=>{var t;let r=null==(t=k.current.getModel())?void 0:t.uri;if(r&&e.find(e=>e.path===r.path)){let e=R.current.editor.getModelMarkers({resource:r});null==j||j(e)}});return()=>{null==e||e.dispose()}}return()=>{}},[E,j]),t.createElement($,{width:h,height:v,isEditorReady:E,loading:s,_ref:T,className:m,wrapperProps:y})},ee=e.memo(Z);export{ee as F,n as _,K as w};