"use strict";(globalThis.webpackChunk_jbrowse_web=globalThis.webpackChunk_jbrowse_web||[]).push([[4755],{54755:(e,t,a)=>{a.r(t),a.d(t,{default:()=>v});var n=a(7552),l=a(68446),o=a(49823),i=a(29499),r=a(99123),s=a(1343),u=a(98459),d=a(58507),c=a(5401),m=a(75785),g=a(99546),b=a(61723),h=a(7720);const p=(0,m.n9)()((e=>({dialogContent:{display:"flex",flexDirection:"column"},expand:{transform:"rotate(0deg)",marginLeft:"auto",transition:e.transitions.create("transform",{duration:e.transitions.duration.shortest})},expandOpen:{transform:"rotate(180deg)"}}))),v=(0,l.observer)((function({onClose:e,model:t}){const{classes:a,cx:l}=p(),[m,v]=(0,n.useState)(""),[E,f]=(0,n.useState)(""),[A,C]=(0,n.useState)(""),[S,w]=(0,n.useState)(""),[U,k]=(0,n.useState)(!1),{jbrowse:x}=(0,g.getSession)(t),y=Boolean(m&&E||A||S);function L(){m&&E?x.addPlugin({name:m,umdUrl:E}):A?x.addPlugin({esmUrl:A}):S&&x.addPlugin({cjsUrl:S})}return n.createElement(o.Dialog,{open:!0,onClose:e,title:"Add custom plugin"},n.createElement("form",{onSubmit:L},n.createElement(i.A,{className:a.dialogContent},n.createElement(r.A,null,"Enter the name of the plugin and its URL. The name should match what is defined in the plugin's build."),n.createElement(s.A,{label:"Plugin name",variant:"outlined",value:m,onChange:e=>{v(e.target.value)}}),n.createElement(s.A,{label:"Plugin URL",variant:"outlined",value:E,onChange:e=>{f(e.target.value)}}),n.createElement(r.A,{onClick:()=>{k(!U)}},n.createElement(b.A,{className:l(a.expand,{[a.expandOpen]:U}),"aria-expanded":U,"aria-label":"show more"},n.createElement(h.A,null)),"Advanced options"),n.createElement(u.A,{in:U},n.createElement("div",{className:a.dialogContent},n.createElement(r.A,null,"The above fields assume that the plugin is built in UMD format. If your plugin is in another format, or you have additional builds you want to add (such as a CJS build for using NodeJS APIs in desktop), you can enter the URLs for those builds below."),n.createElement(s.A,{label:"ESM build URL",variant:"outlined",value:A,onChange:e=>{C(e.target.value)}}),n.createElement(s.A,{label:"CJS build URL",variant:"outlined",value:S,onChange:e=>{w(e.target.value)}})))),n.createElement(d.A,null,n.createElement(c.A,{variant:"contained",onClick:e},"Cancel"),n.createElement(c.A,{variant:"contained",color:"primary",onClick:L,disabled:!y},"Submit"))))}))}}]);
//# sourceMappingURL=4755.8d938db2.chunk.js.map