harperdb
Version:
HarperDB is a distributed database, caching service, streaming broker, and application development platform focused on performance and ease of use.
1 lines • 15.1 kB
JavaScript
;(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[23],{5023:(e,t,r)=>{r.d(t,{Ay:()=>ie,wG:()=>B});var n=r(9379);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<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function c(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=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<t;r++)n[r]=e[r];return n}function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(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 d(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){l(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function f(e){return function t(){for(var r=this,n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return o.length>=e.length?e.apply(this,o):function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];return t.apply(r,[].concat(o,n))}}}function g(e){return{}.toString.call(e).includes("Object")}function p(e){return"function"===typeof e}var v=f((function(e,t){throw new Error(e[t]||e.default)}))({initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"}),h={changes:function(e,t){return g(t)||v("changeType"),Object.keys(t).some((function(t){return r=e,n=t,!Object.prototype.hasOwnProperty.call(r,n);var r,n}))&&v("changeField"),t},selector:function(e){p(e)||v("selectorType")},handler:function(e){p(e)||g(e)||v("handlerType"),g(e)&&Object.values(e).some((function(e){return!p(e)}))&&v("handlersType")},initial:function(e){var t;e||v("initialIsRequired"),g(e)||v("initialType"),t=e,Object.keys(t).length||v("initialContent")}};function y(e,t){return p(t)?t(e.current):t}function m(e,t){return e.current=d(d({},e.current),t),t}function b(e,t,r){return p(t)?t(e.current):Object.keys(r).forEach((function(r){var n;return null===(n=t[r])||void 0===n?void 0:n.call(t,e.current[r])})),r}const w={create:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};h.initial(e),h.handler(t);var r={current:e},n=f(b)(r,t),o=f(m)(r),i=f(h.changes)(e),u=f(y)(r);return[function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(e){return e};return h.selector(e),e(r.current)},function(e){!function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return function(e){return t.reduceRight((function(e,t){return t(e)}),e)}}(n,o,i,u)(e)}]}};const O={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs"}};const j=function(e){return{}.toString.call(e).includes("Object")};var M={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:"Deprecation warning!\n You are using deprecated way of configuration.\n\n Instead of using\n monaco.config({ urls: { monacoBase: '...' } })\n use\n monaco.config({ paths: { vs: '...' } })\n\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\n "},E=function(e){return function t(){for(var r=this,n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return o.length>=e.length?e.apply(this,o):function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];return t.apply(r,[].concat(o,n))}}}((function(e,t){throw new Error(e[t]||e.default)}))(M),P={config:function(e){return e||E("configIsRequired"),j(e)||E("configType"),e.urls?(console.warn(M.deprecation),{paths:{vs:e.urls.monacoBase}}):e}};const R=P;const k=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return function(e){return t.reduceRight((function(e,t){return t(e)}),e)}};const S=function e(t,r){return Object.keys(r).forEach((function(n){r[n]instanceof Object&&t[n]&&Object.assign(r[n],e(t[n],r[n]))})),u(u({},t),r)};var A={type:"cancelation",msg:"operation is manually canceled"};const C=function(e){var t=!1,r=new Promise((function(r,n){e.then((function(e){return t?n(A):r(e)})),e.catch(n)}));return r.cancel=function(){return t=!0},r};var T,x,I=w.create({config:O,isInitialized:!1,resolve:null,reject:null,monaco:null}),V=(x=2,function(e){if(Array.isArray(e))return e}(T=I)||function(e,t){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,o=!1,i=void 0;try{for(var u,c=e[Symbol.iterator]();!(n=(u=c.next()).done)&&(r.push(u.value),!t||r.length!==t);n=!0);}catch(a){o=!0,i=a}finally{try{n||null==c.return||c.return()}finally{if(o)throw i}}return r}}(T,x)||function(e,t){if(e){if("string"===typeof e)return a(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,t):void 0}}(T,x)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),D=V[0],L=V[1];function q(e){return document.body.appendChild(e)}function z(e){var t=D((function(e){return{config:e.config,reject:e.reject}})),r=function(e){var t=document.createElement("script");return e&&(t.src=e),t}("".concat(t.config.paths.vs,"/loader.js"));return r.onload=function(){return e()},r.onerror=t.reject,r}function _(){var e=D((function(e){return{config:e.config,resolve:e.resolve,reject:e.reject}})),t=window.require;t.config(e.config),t(["vs/editor/editor.main"],(function(t){N(t),e.resolve(t)}),(function(t){e.reject(t)}))}function N(e){D().monaco||L({monaco:e})}var F=new Promise((function(e,t){return L({resolve:e,reject:t})})),U={config:function(e){var t=R.config(e),r=t.monaco,n=c(t,["monaco"]);L((function(e){return{config:S(e.config,n),monaco:r}}))},init:function(){var e=D((function(e){return{monaco:e.monaco,isInitialized:e.isInitialized,resolve:e.resolve}}));if(!e.isInitialized){if(L({isInitialized:!0}),e.monaco)return e.resolve(e.monaco),C(F);if(window.monaco&&window.monaco.editor)return N(window.monaco),e.resolve(window.monaco),C(F);k(q,z)(_)}return C(F)},__getMonacoInstance:function(){return D((function(e){return e.monaco}))}};const B=U;var W=r(9950),G={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},Y={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}};var $=function(e){let{children:t}=e;return W.createElement("div",{style:Y.container},t)};var H=function(e){let{width:t,height:r,isEditorReady:o,loading:i,_ref:u,className:c,wrapperProps:a}=e;return W.createElement("section",(0,n.A)({style:(0,n.A)((0,n.A)({},G.wrapper),{},{width:t,height:r})},a),!o&&W.createElement($,null,i),W.createElement("div",{ref:u,style:(0,n.A)((0,n.A)({},G.fullWidth),!o&&G.hide),className:c}))},J=(0,W.memo)(H);var K=function(e){(0,W.useEffect)(e,[])};var Q=function(e,t){let r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=(0,W.useRef)(!0);(0,W.useEffect)(n.current||!r?()=>{n.current=!1}:e,t)};function X(){}function Z(e,t,r,n){return function(e,t){return e.editor.getModel(ee(e,t))}(e,n)||function(e,t,r,n){return e.editor.createModel(t,r,n?ee(e,n):void 0)}(e,t,r,n)}function ee(e,t){return e.Uri.parse(t)}var te=function(e){let{original:t,modified:r,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:v="100%",className:h,wrapperProps:y={},beforeMount:m=X,onMount:b=X}=e,[w,O]=(0,W.useState)(!1),[j,M]=(0,W.useState)(!0),E=(0,W.useRef)(null),P=(0,W.useRef)(null),R=(0,W.useRef)(null),k=(0,W.useRef)(b),S=(0,W.useRef)(m),A=(0,W.useRef)(!1);K((()=>{let e=B.init();return e.then((e=>(P.current=e)&&M(!1))).catch((e=>"cancelation"!==(null===e||void 0===e?void 0:e.type)&&console.error("Monaco initialization: error:",e))),()=>E.current?function(){var e,t,r,n;let o=null===(e=E.current)||void 0===e?void 0:e.getModel();l||null!==o&&void 0!==o&&null!==(t=o.original)&&void 0!==t&&t.dispose(),s||null!==o&&void 0!==o&&null!==(r=o.modified)&&void 0!==r&&r.dispose(),null===(n=E.current)||void 0===n||n.dispose()}():e.cancel()})),Q((()=>{if(E.current&&P.current){let e=E.current.getOriginalEditor(),r=Z(P.current,t||"",i||o||"text",c||"");r!==e.getModel()&&e.setModel(r)}}),[c],w),Q((()=>{if(E.current&&P.current){let e=E.current.getModifiedEditor(),t=Z(P.current,r||"",u||o||"text",a||"");t!==e.getModel()&&e.setModel(t)}}),[a],w),Q((()=>{let e=E.current.getModifiedEditor();e.getOption(P.current.editor.EditorOption.readOnly)?e.setValue(r||""):r!==e.getValue()&&(e.executeEdits("",[{range:e.getModel().getFullModelRange(),text:r||"",forceMoveMarkers:!0}]),e.pushUndoStop())}),[r],w),Q((()=>{var e;null===(e=E.current)||void 0===e||null===(e=e.getModel())||void 0===e||e.original.setValue(t||"")}),[t],w),Q((()=>{let{original:e,modified:t}=E.current.getModel();P.current.editor.setModelLanguage(e,i||o||"text"),P.current.editor.setModelLanguage(t,u||o||"text")}),[o,i,u],w),Q((()=>{var e;null===(e=P.current)||void 0===e||e.editor.setTheme(d)}),[d],w),Q((()=>{var e;null===(e=E.current)||void 0===e||e.updateOptions(g)}),[g],w);let C=(0,W.useCallback)((()=>{var e;if(!P.current)return;S.current(P.current);let n=Z(P.current,t||"",i||o||"text",c||""),l=Z(P.current,r||"",u||o||"text",a||"");null===(e=E.current)||void 0===e||e.setModel({original:n,modified:l})}),[o,r,u,t,i,c,a]),T=(0,W.useCallback)((()=>{var e;!A.current&&R.current&&(E.current=P.current.editor.createDiffEditor(R.current,(0,n.A)({automaticLayout:!0},g)),C(),null!==(e=P.current)&&void 0!==e&&e.editor.setTheme(d),O(!0),A.current=!0)}),[g,d,C]);return(0,W.useEffect)((()=>{w&&k.current(E.current,P.current)}),[w]),(0,W.useEffect)((()=>{!j&&!w&&T()}),[j,w,T]),W.createElement(J,{width:v,height:p,isEditorReady:w,loading:f,_ref:R,className:h,wrapperProps:y})};(0,W.memo)(te);var re=function(e){let t=(0,W.useRef)();return(0,W.useEffect)((()=>{t.current=e}),[e]),t.current},ne=new Map;var oe=function(e){let{defaultValue:t,defaultLanguage:r,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:v="100%",height:h="100%",className:y,wrapperProps:m={},beforeMount:b=X,onMount:w=X,onChange:O,onValidate:j=X}=e,[M,E]=(0,W.useState)(!1),[P,R]=(0,W.useState)(!0),k=(0,W.useRef)(null),S=(0,W.useRef)(null),A=(0,W.useRef)(null),C=(0,W.useRef)(w),T=(0,W.useRef)(b),x=(0,W.useRef)(),I=(0,W.useRef)(i),V=re(c),D=(0,W.useRef)(!1),L=(0,W.useRef)(!1);K((()=>{let e=B.init();return e.then((e=>(k.current=e)&&R(!1))).catch((e=>"cancelation"!==(null===e||void 0===e?void 0:e.type)&&console.error("Monaco initialization: error:",e))),()=>S.current?function(){var e,t;null!==(e=x.current)&&void 0!==e&&e.dispose(),p?g&&ne.set(c,S.current.saveViewState()):null===(t=S.current.getModel())||void 0===t||t.dispose(),S.current.dispose()}():e.cancel()})),Q((()=>{var e,n,a,l;let s=Z(k.current,t||i||"",r||u||"",c||o||"");s!==(null===(e=S.current)||void 0===e?void 0:e.getModel())&&(g&&ne.set(V,null===(n=S.current)||void 0===n?void 0:n.saveViewState()),null!==(a=S.current)&&void 0!==a&&a.setModel(s),g&&(null===(l=S.current)||void 0===l||l.restoreViewState(ne.get(c))))}),[c],M),Q((()=>{var e;null===(e=S.current)||void 0===e||e.updateOptions(d)}),[d],M),Q((()=>{!S.current||void 0===i||(S.current.getOption(k.current.editor.EditorOption.readOnly)?S.current.setValue(i):i!==S.current.getValue()&&(L.current=!0,S.current.executeEdits("",[{range:S.current.getModel().getFullModelRange(),text:i,forceMoveMarkers:!0}]),S.current.pushUndoStop(),L.current=!1))}),[i],M),Q((()=>{var e,t;let r=null===(e=S.current)||void 0===e?void 0:e.getModel();r&&u&&(null===(t=k.current)||void 0===t||t.editor.setModelLanguage(r,u))}),[u],M),Q((()=>{var e;void 0!==l&&(null===(e=S.current)||void 0===e||e.revealLine(l))}),[l],M),Q((()=>{var e;null===(e=k.current)||void 0===e||e.editor.setTheme(a)}),[a],M);let q=(0,W.useCallback)((()=>{if(A.current&&k.current&&!D.current){var e;T.current(k.current);let s=c||o,p=Z(k.current,i||t||"",r||u||"",s||"");S.current=null===(e=k.current)||void 0===e?void 0:e.editor.create(A.current,(0,n.A)({model:p,automaticLayout:!0},d),f),g&&S.current.restoreViewState(ne.get(s)),k.current.editor.setTheme(a),void 0!==l&&S.current.revealLine(l),E(!0),D.current=!0}}),[t,r,o,i,u,c,d,f,g,a,l]);return(0,W.useEffect)((()=>{M&&C.current(S.current,k.current)}),[M]),(0,W.useEffect)((()=>{!P&&!M&&q()}),[P,M,q]),I.current=i,(0,W.useEffect)((()=>{var e,t;M&&O&&(null!==(e=x.current)&&void 0!==e&&e.dispose(),x.current=null===(t=S.current)||void 0===t?void 0:t.onDidChangeModelContent((e=>{L.current||O(S.current.getValue(),e)})))}),[M,O]),(0,W.useEffect)((()=>{if(M){let e=k.current.editor.onDidChangeMarkers((e=>{var t;let r=null===(t=S.current.getModel())||void 0===t?void 0:t.uri;if(r&&e.find((e=>e.path===r.path))){let e=k.current.editor.getModelMarkers({resource:r});null===j||void 0===j||j(e)}}));return()=>{null===e||void 0===e||e.dispose()}}return()=>{}}),[M,j]),W.createElement(J,{width:v,height:h,isEditorReady:M,loading:s,_ref:A,className:y,wrapperProps:m})},ie=(0,W.memo)(oe)}}]);