diff --git a/.dockerignore b/.dockerignore index 7341b68..af91124 100644 --- a/.dockerignore +++ b/.dockerignore @@ -10,7 +10,9 @@ .commitlintrc # for local cache +op data dist +docs node_modules deepdataspace.egg-info diff --git a/Dockerfile b/Dockerfile index 4e4f6c6..09e0176 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,26 +6,13 @@ RUN npm install -g pnpm@8.4.0 && \ pnpm install --frozen-lockfile && \ pnpm run build:app -FROM deepdataspace/python:3.8 AS dds-builder +FROM python:3.10 WORKDIR /dds/source COPY . ./ COPY --from=frontend-builder /frontend/packages/app/dist ./deepdataspace/server/static COPY --from=frontend-builder /frontend/packages/app/dist/index.html ./deepdataspace/server/templates/index.html -RUN python3 setup.py sdist && \ - cd /dds/source/dist/ && \ - mv deepdataspace*.tar.gz deepdataspace.tar.gz - -FROM deepdataspace/python:3.8 -RUN mkdir -p /dds/runtime && \ - mkdir -p /dds/datasets && \ - rm -rf /root/.config/pip - -WORKDIR /dds -COPY --from=dds-builder /dds/source/dist/deepdataspace.tar.gz /tmp/deepdataspace.tar.gz -RUN cd /tmp && \ - pip3 install deepdataspace.tar.gz && \ - pip cache purge - -ENV PYTHONUNBUFFERED=1 DDS_IN_DOCKER=1 -ADD Dockerfile /root/dds.Dockerfile +RUN mkdir /dds/datasets && \ + mkdir /dds/samples && \ + python3 -m pip install -r requirements.txt && \ + python3 -m pip cache purge diff --git a/README.md b/README.md index b3917d7..da72e88 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ DeepDataSpace(DDS) requires **Python 3.8 - 3.10** and runs on the following plat - Mac OS: ✅ x86/x64, ✅ arm64 - Windows 10: ✅ x86/x64, ❌ arm64 - Ubuntu LTS since 18.04: ✅ x86/x64, ❌ arm64 -- Docker: ✅ x86/x64, ❌ arm64 +- Docker Compose: ✅ x86/x64, ✅ arm64 ### 1.2 Installing from PyPI @@ -108,52 +108,26 @@ After the installation, you can start DDS the same way as above: dds --quickstart ``` -### 3.2 Installing from Docker Image -#### Step 1: Preparation +### 3.2 Installing by Docker Compose ```shell -# pull the latest docker image -docker pull deepdataspace/dds +# clone the source code +git clone https://github.com/IDEA-Research/deepdataspace.git -# create a docker volume for dds to persistent data -docker volume create dds-runtime +# prepare dataset directory(where you put all your datasets inside) +mkdir -p datasets +export DDS_DATASET_DIR=$PWD/datasets # choose a visiting port for DDS export DDS_PORT=8765 -``` -#### Step 2: Start DDS in quickstart mode - -```shell -# start the DDS in quickstart mode -# DDS will download some sample datasets and import them -docker run -it --name dds --rm \ - -p $DDS_PORT:8765 \ - -v dds-runtime:/dds/runtime \ - deepdataspace/dds \ - dds --quickstart -V +# start DDS with docker compose +cd deepdataspace +docker compose up ``` If everything goes well, you can start visiting DDS at [http://127.0.0.1:8765](http://127.0.0.1:8765) -#### Step 3: Mount your dataset directory(**Optional**) - -If you start DDS in `quickstart` mode, DDS will try to download the sample datasets and import them for you. -But most frequently, you want DDS to import your local dataset files. This is possible by mounting your local dataset directory to `/dds/datasets` inside container. - -``` -# assume $PWD/datasets is your local dataset directory -mkdir -p datasets - -# start the container without quickstart mode -docker run -it --name dds --rm \ - -p 54321:8765 \ - -v dds-runtime:/dds/runtime \ - -v $PWD/datasets:/dds/datasets:ro \ - deepdataspace/dds \ - dds -V -``` - ## 4. Documentation Visit our [documentation](https://docs.deepdataspace.com) for more details on how to utilize the powers of DDS. diff --git a/deepdataspace/scripts/start.py b/deepdataspace/scripts/start.py index 9b3315c..39c539c 100644 --- a/deepdataspace/scripts/start.py +++ b/deepdataspace/scripts/start.py @@ -48,32 +48,5 @@ help="Load the target yaml file to initialize more configurations. " "The command line options take precedence of the config file.") def start_dds(data_dir, quickstart, verbose, public, host, port, reload, configfile): - in_docker = os.environ.get("DDS_IN_DOCKER", None) - runtime_dir = None - if bool(in_docker): - runtime_dir = "/dds/runtime" - os.makedirs(runtime_dir, exist_ok=True) - print(f"DDS is running in docker, runtime_dir is forced to {runtime_dir}") - - data_dir = "/dds/datasets" - os.makedirs(data_dir, exist_ok=True) - print(f"DDS is running in docker, data_dir is forced to {data_dir}") - - host = "0.0.0.0" - print(f"DDS is running in docker, host is forced to {host}") - - port = 8765 - print(f"DDS is running in docker, port is forced to {port}") - - verbose = True - print(f"DDS is running in docker, verbose is forced to {verbose}") - - reload = False - print(f"DDS is running in docker, reload is forced to {reload}") - - configfile = None - print(f"DDS is running in docker, configfile is forced to {configfile}") - - dds = DDS(data_dir, quickstart, verbose, public, host, port, reload, configfile, - runtime_dir=runtime_dir, from_cmdline=True) + dds = DDS(data_dir, quickstart, verbose, public, host, port, reload, configfile, from_cmdline=True) dds.start() diff --git a/deepdataspace/server/settings.py b/deepdataspace/server/settings.py index 72067a7..6319018 100644 --- a/deepdataspace/server/settings.py +++ b/deepdataspace/server/settings.py @@ -128,6 +128,7 @@ }, } } + if is_local: LOGGING["handlers"]["django"] = { "level" : "INFO", diff --git a/deepdataspace/server/static/000000002299.jpg b/deepdataspace/server/static/000000002299.jpg deleted file mode 100644 index 33d0571..0000000 Binary files a/deepdataspace/server/static/000000002299.jpg and /dev/null differ diff --git a/deepdataspace/server/static/573.b863d4dd.async.js b/deepdataspace/server/static/573.b863d4dd.async.js new file mode 100644 index 0000000..e5a43d6 --- /dev/null +++ b/deepdataspace/server/static/573.b863d4dd.async.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[573],{50024:function(te,P,e){e.d(P,{Z:function(){return d}});var D=e(52983),x=e(76701),I=e(26237),O={wrapper:"wrapper___FtwXk"},m=e(97458),c=function(N){var o=(0,I.bU)(),n=o.localeText,s=N.categoryId,i=N.categories,p=N.onCategoryChange;return(0,m.jsxs)("div",{className:O.wrapper,children:[n("dataset.detail.category"),":",(0,m.jsx)(x.Z,{showSearch:!0,style:{width:"160px",marginLeft:"10px"},dropdownMatchSelectWidth:!1,placeholder:"Select a category",optionFilterProp:"children",value:s,onChange:p,filterOption:function(b,f){return f.children.toLowerCase().includes(b.toLowerCase())},getPopupContainer:function(){return document.getElementById("filterWrap")},children:i.map(function(g){return(0,m.jsx)(x.Z.Option,{value:g.id,children:g.name},g.id)})})]})},d=c},97379:function(te,P,e){e.d(P,{Z:function(){return de}});var D=e(52983),x=e(57006),I=e(80267),O=Object.defineProperty,m=Object.getOwnPropertySymbols,c=Object.prototype.hasOwnProperty,d=Object.prototype.propertyIsEnumerable,h=(u,a,t)=>a in u?O(u,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):u[a]=t,N=(u,a)=>{for(var t in a||(a={}))c.call(a,t)&&h(u,t,a[t]);if(m)for(var t of m(a))d.call(a,t)&&h(u,t,a[t]);return u};const o=u=>D.createElement("svg",N({width:24,height:24,fill:"none",xmlns:"http://www.w3.org/2000/svg"},u),D.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M16 4.4c0-.22.18-.4.4-.4h1.2c.22 0 .4.18.4.4V6h3.6c.22 0 .4.18.4.4v1.2a.4.4 0 0 1-.4.4H18v1.6a.4.4 0 0 1-.4.4h-1.2a.4.4 0 0 1-.4-.4V4.4ZM2.4 6a.4.4 0 0 0-.4.4v1.2c0 .22.18.4.4.4h11.2a.4.4 0 0 0 .4-.4V6.4a.4.4 0 0 0-.4-.4H2.4Zm8 10a.4.4 0 0 0-.4.4v1.2c0 .22.18.4.4.4h11.2a.4.4 0 0 0 .4-.4v-1.2a.4.4 0 0 0-.4-.4H10.4Zm-8 0a.4.4 0 0 0-.4.4v1.2c0 .22.18.4.4.4H6v1.6c0 .22.18.4.4.4h1.2a.4.4 0 0 0 .4-.4v-5.2a.4.4 0 0 0-.4-.4H6.4a.4.4 0 0 0-.4.4V16H2.4Z",fill:"#434343"}));var n="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNiA0LjRjMC0uMjIuMTgtLjQuNC0uNGgxLjJjLjIyIDAgLjQuMTguNC40VjZoMy42Yy4yMiAwIC40LjE4LjQuNHYxLjJhLjQuNCAwIDAgMS0uNC40SDE4djEuNmEuNC40IDAgMCAxLS40LjRoLTEuMmEuNC40IDAgMCAxLS40LS40VjQuNFpNMi40IDZhLjQuNCAwIDAgMC0uNC40djEuMmMwIC4yMi4xOC40LjQuNGgxMS4yYS40LjQgMCAwIDAgLjQtLjRWNi40YS40LjQgMCAwIDAtLjQtLjRIMi40Wm04IDEwYS40LjQgMCAwIDAtLjQuNHYxLjJjMCAuMjIuMTguNC40LjRoMTEuMmEuNC40IDAgMCAwIC40LS40di0xLjJhLjQuNCAwIDAgMC0uNC0uNEgxMC40Wm0tOCAwYS40LjQgMCAwIDAtLjQuNHYxLjJjMCAuMjIuMTguNC40LjRINnYxLjZjMCAuMjIuMTguNC40LjRoMS4yYS40LjQgMCAwIDAgLjQtLjR2LTUuMmEuNC40IDAgMCAwLS40LS40SDYuNGEuNC40IDAgMCAwLS40LjRWMTZIMi40WiIgZmlsbD0iIzQzNDM0MyIvPjwvc3ZnPg==",s=Object.defineProperty,i=Object.getOwnPropertySymbols,p=Object.prototype.hasOwnProperty,g=Object.prototype.propertyIsEnumerable,b=(u,a,t)=>a in u?s(u,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):u[a]=t,f=(u,a)=>{for(var t in a||(a={}))p.call(a,t)&&b(u,t,a[t]);if(i)for(var t of i(a))g.call(a,t)&&b(u,t,a[t]);return u};const B=u=>D.createElement("svg",f({width:16,height:16,fill:"none",xmlns:"http://www.w3.org/2000/svg"},u),D.createElement("path",{d:"M8.536 1.572H7.464c-.095 0-.143.048-.143.143v5.607h-5.32c-.096 0-.144.048-.144.143v1.072c0 .095.048.142.143.142h5.321v5.608c0 .095.048.142.143.142h1.072c.095 0 .142-.047.142-.142V8.679H14c.095 0 .143-.047.143-.142V7.465c0-.095-.048-.143-.143-.143H8.678V1.715c0-.095-.047-.143-.142-.143Z",fill:"#595959"}));var z="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTguNTM2IDEuNTcySDcuNDY0Yy0uMDk1IDAtLjE0My4wNDgtLjE0My4xNDN2NS42MDdoLTUuMzJjLS4wOTYgMC0uMTQ0LjA0OC0uMTQ0LjE0M3YxLjA3MmMwIC4wOTUuMDQ4LjE0Mi4xNDMuMTQyaDUuMzIxdjUuNjA4YzAgLjA5NS4wNDguMTQyLjE0My4xNDJoMS4wNzJjLjA5NSAwIC4xNDItLjA0Ny4xNDItLjE0MlY4LjY3OUgxNGMuMDk1IDAgLjE0My0uMDQ3LjE0My0uMTQyVjcuNDY1YzAtLjA5NS0uMDQ4LS4xNDMtLjE0My0uMTQzSDguNjc4VjEuNzE1YzAtLjA5NS0uMDQ3LS4xNDMtLjE0Mi0uMTQzWiIgZmlsbD0iIzU5NTk1OSIvPjwvc3ZnPg==",H=Object.defineProperty,X=Object.getOwnPropertySymbols,G=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,E=(u,a,t)=>a in u?H(u,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):u[a]=t,Z=(u,a)=>{for(var t in a||(a={}))G.call(a,t)&&E(u,t,a[t]);if(X)for(var t of X(a))K.call(a,t)&&E(u,t,a[t]);return u};const J=u=>D.createElement("svg",Z({width:16,height:16,fill:"none",xmlns:"http://www.w3.org/2000/svg"},u),D.createElement("path",{d:"M14.429 7.322H1.572a.143.143 0 0 0-.143.143v1.072c0 .078.064.142.143.142h12.857a.143.143 0 0 0 .143-.142V7.465a.143.143 0 0 0-.143-.143Z",fill:"#595959"}));var $="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE0LjQyOSA3LjMyMkgxLjU3MmEuMTQzLjE0MyAwIDAgMC0uMTQzLjE0M3YxLjA3MmMwIC4wNzguMDY0LjE0Mi4xNDMuMTQyaDEyLjg1N2EuMTQzLjE0MyAwIDAgMCAuMTQzLS4xNDJWNy40NjVhLjE0My4xNDMgMCAwIDAtLjE0My0uMTQzWiIgZmlsbD0iIzU5NTk1OSIvPjwvc3ZnPg==",ne=e(80455),ae=e(26237),M={settingsPanel:"settingsPanel___MWKTs",itemTitle:"itemTitle___NFfrx",itemContent:"itemContent___eWwjJ",slider:"slider___wr949",numBox:"numBox___XE5qr",num:"num___uI6pg",settingsBtn:"settingsBtn___pwXK9"},j=e(97458),l=function(a){var t=(0,ae.bU)(),Me=t.localeText,ye=a.cloumnCount,ge=a.onColumnCountChange;return(0,j.jsx)(x.Z,{overlayClassName:M.dropper,getPopupContainer:function(){return document.getElementById("filterWrap")},dropdownRender:function(){return(0,j.jsxs)("div",{className:M.settingsPanel,children:[(0,j.jsx)("div",{className:M.itemTitle,children:Me("dataset.detail.columnSetting.title")}),(0,j.jsxs)("div",{className:M.itemContent,children:[(0,j.jsx)(I.Z,{min:1,max:ne.gS,onChange:function(Ee){return ge(Ee)},value:ye,className:M.slider}),(0,j.jsxs)("div",{className:M.numBox,children:[(0,j.jsx)(J,{onClick:function(){return ge(!1)}}),(0,j.jsx)("div",{className:M.num,children:ye}),(0,j.jsx)(B,{onClick:function(){return ge(!0)}})]})]})]})},children:(0,j.jsx)("div",{className:M.settingsBtn,children:(0,j.jsx)(o,{})})})},de=l},76388:function(te,P,e){e.d(P,{Z:function(){return i}});var D=e(52983),x=e(56084),I=e(44580),O=e(81553),m={dropBtn:"dropBtn___SYvIY",displayPanel:"displayPanel___JkzSB",objectTypeOption:"objectTypeOption___O6sJL",typeTitle:"typeTitle___l97pr",displayOptions:"displayOptions___NQVYA"},c=e(4689),d=e(87608),h=e.n(d),N=e(26237),o=e(80455),n=e(97458),s=function(g){var b=(0,N.bU)(),f=b.localeText,B=g.annotationTypes,z=g.disableChangeType,H=g.displayAnnotationType,X=g.displayOptions,G=g.displayOptionsValue,K=g.onDisplayAnnotationTypeChange,E=g.onDisplayOptionsChange;return(0,n.jsx)(c.Z,{className:m.dropBtn,customOverlay:(0,n.jsxs)("div",{className:h()(m.displayPanel),children:[B.length>0&&(0,n.jsxs)("div",{className:m.objectTypeOption,children:[(0,n.jsxs)("span",{className:m.typeTitle,children:[f("dataset.detail.displayType"),":"]}),(0,n.jsx)(x.ZP.Group,{disabled:z,onChange:function(J){return K(J.target.value)},value:H,children:B.map(function(Z){return(0,n.jsx)(x.ZP,{value:Z,children:Z},Z)})})]}),(0,n.jsx)(I.Z.Group,{className:m.displayOptions,onChange:E,value:G,children:(0,n.jsx)(O.Z,{direction:"vertical",children:X.map(function(Z){return(0,n.jsx)(I.Z,{value:Z,children:f(o.Ss[Z])},Z)})})})]}),children:f("dataset.detail.displayOptions")})},i=s},4689:function(te,P,e){e.d(P,{Z:function(){return s}});var D=e(52983),x=e(44580),I=e(56084),O=e(57006),m=e(81553),c=e(58174),d=e(68505),h=e(26237),N={dropdownSelector:"dropdownSelector___gvMFq",dropdownWrap:"dropdownWrap___WWYlz",dropdownBox:"dropdownBox___lpUVf"},o=e(97458),n=function(p){var g=p.data,b=p.multiple,f=p.type,B=f===void 0?"primary":f,z=p.ghost,H=z===void 0?!0:z,X=p.value,G=p.filterOptionValue,K=p.filterOptionName,E=p.onChange,Z=p.className,J=p.children,$=p.customOverlay,ne=b?x.Z:I.ZP,ae=function(j){E&&E(b?j:j.target.value)};return(0,o.jsx)(O.Z,{overlayClassName:N.dropdownSelector,trigger:["click"],dropdownRender:function(){return(0,o.jsx)("div",{className:N.dropdownWrap,children:$||(0,o.jsx)(ne.Group,{className:N.dropdownBox,onChange:ae,value:X,children:(0,o.jsx)(m.Z,{direction:"vertical",children:g==null?void 0:g.map(function(j,l){var de=G?G(j):j,u=K?K(j):j;return(0,o.jsx)(ne,{value:de,children:(0,h._w)(u)},l)})})})})},children:(0,o.jsxs)(c.ZP,{className:Z,type:B,ghost:H,children:[J,(0,o.jsx)(d.Z,{})]})})},s=n},14369:function(te,P,e){e.d(P,{Z:function(){return g}});var D=e(52983),x=e(44580),I=e(81553),O=e(80267),m=e(56084),c={labelsPanel:"labelsPanel___nCoUr",labels:"labels___f2KO4",labelTitle:"labelTitle___C12Si",optionRow:"optionRow___X46cn",checkbox:"checkbox___Z6wLJ",slider:"slider___GUIhq",lineStyle:"lineStyle___Kmd9H",actionBtns:"actionBtns___JfDVN",modes:"modes___HaJVD"},d=e(4689),h=e(87608),N=e.n(h),o=e(80455),n=e(39949),s=e(26237),i=e(97458),p=function(f){var B=(0,s.bU)(),z=B.localeText,H=f.showMatting,X=f.showKeyPoints,G=f.isTiledDiff,K=f.labels,E=f.selectedLabelIds,Z=f.diffMode,J=f.disableChangeDiffMode,$=f.onLabelsChange,ne=f.onLabelConfidenceChange,ae=f.onLabelsDiffModeChange;return(0,i.jsx)(d.Z,{customOverlay:(0,i.jsxs)("div",{className:N()(c.labelsPanel),id:"labelsPanel",children:[(0,i.jsxs)("div",{className:c.labels,children:[(0,i.jsxs)("div",{className:c.labelTitle,children:[(0,i.jsx)("div",{style:{width:"240px",paddingLeft:"24px"},children:z("dataset.detail.labelSetsName")}),!H&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("div",{style:{width:"132px"},children:z("dataset.detail.confidence")}),(0,i.jsx)("div",{style:{width:"100px",marginLeft:"40px"},children:z("dataset.detail.style")})]})]}),(0,i.jsx)(x.Z.Group,{onChange:$,value:E,className:c.options,children:(0,i.jsx)(I.Z,{direction:"vertical",children:K.map(function(M,j){var l=(0,n.iE)(M.id,E,G),de=l.strokeDash,u=l.lineWidth,a=l.colorAplha;return(0,i.jsxs)("div",{className:c.optionRow,children:[(0,i.jsx)(x.Z,{value:M.id,className:c.checkbox,disabled:!E.includes(M.id)&&E.length>=o.JQ.length,children:M.name}),!H&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(O.Z,{tooltip:{open:!0,prefixCls:"slider-tooltip",getPopupContainer:function(){return document.getElementById("labelsPanel")}},className:c.slider,range:!0,min:0,max:1,value:M.confidenceRange,step:.01,onChange:function(Me){return ne(j,Me)},disabled:M.source!==o.$j.pred}),(0,i.jsx)("div",{style:{width:"100px",marginLeft:"40px"},children:E.includes(M.id)&&(0,i.jsxs)("svg",{className:c.lineStyle,children:[(0,i.jsx)("line",{x1:5,y1:5,x2:70,y2:5,strokeDasharray:de.join(","),strokeWidth:"".concat(u,"pt")}),X&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("circle",{cx:5,cy:5,r:3,stroke:"black",strokeWidth:1,fill:"rgba(133, 208, 252, ".concat(a,")")}),(0,i.jsx)("circle",{cx:70,cy:5,r:3,stroke:"black",strokeWidth:1,fill:"rgba(133, 208, 252, ".concat(a,")")})]})]})})]})]},M.id)})})})]}),!H&&!J&&(0,i.jsx)("div",{className:c.modes,children:(0,i.jsx)(m.ZP.Group,{onChange:function(j){return ae(j.target.value)},value:Z,children:o.Wp.map(function(M){return(0,i.jsx)(m.ZP,{value:M,children:z(M)},M)})})})]}),children:z("dataset.detail.labelSets")})},g=p},79517:function(te,P,e){e.d(P,{Z:function(){return Ee}});var D=e(16962),x=e.n(D),I=e(2657),O=e.n(I),m=e(88205),c=e.n(m),d=e(52983),h=e(80455),N=e(18636),o=e(70620),n=e(39761),s=e(3418),i=e(22494),p=e(97837),g=e(39092),b=Object.defineProperty,f=Object.getOwnPropertySymbols,B=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,H=(y,w,v)=>w in y?b(y,w,{enumerable:!0,configurable:!0,writable:!0,value:v}):y[w]=v,X=(y,w)=>{for(var v in w||(w={}))B.call(w,v)&&H(y,v,w[v]);if(f)for(var v of f(w))z.call(w,v)&&H(y,v,w[v]);return y};const G=y=>d.createElement("svg",X({width:16,height:16,fill:"none",xmlns:"http://www.w3.org/2000/svg"},y),d.createElement("path",{d:"m8.379 7.648-4.56-5.825a.283.283 0 0 0-.224-.11h-1.38a.142.142 0 0 0-.113.231L6.842 8l-4.74 6.055a.143.143 0 0 0 .112.23h1.38a.289.289 0 0 0 .226-.109l4.559-5.823a.571.571 0 0 0 0-.705Zm5.428 0L9.248 1.823a.283.283 0 0 0-.225-.11h-1.38a.142.142 0 0 0-.112.231L12.27 8l-4.74 6.055a.143.143 0 0 0 .113.23h1.38a.289.289 0 0 0 .225-.109l4.56-5.823a.571.571 0 0 0 0-.705Z",fill:"#fff",opacity:.85}));var K="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTguMzc5IDcuNjQ4LTQuNTYtNS44MjVhLjI4My4yODMgMCAwIDAtLjIyNC0uMTFoLTEuMzhhLjE0Mi4xNDIgMCAwIDAtLjExMy4yMzFMNi44NDIgOGwtNC43NCA2LjA1NWEuMTQzLjE0MyAwIDAgMCAuMTEyLjIzaDEuMzhhLjI4OS4yODkgMCAwIDAgLjIyNi0uMTA5bDQuNTU5LTUuODIzYS41NzEuNTcxIDAgMCAwIDAtLjcwNVptNS40MjggMEw5LjI0OCAxLjgyM2EuMjgzLjI4MyAwIDAgMC0uMjI1LS4xMWgtMS4zOGEuMTQyLjE0MiAwIDAgMC0uMTEyLjIzMUwxMi4yNyA4bC00Ljc0IDYuMDU1YS4xNDMuMTQzIDAgMCAwIC4xMTMuMjNoMS4zOGEuMjg5LjI4OSAwIDAgMCAuMjI1LS4xMDlsNC41Ni01LjgyM2EuNTcxLjU3MSAwIDAgMCAwLS43MDVaIiBmaWxsPSIjZmZmIiBvcGFjaXR5PSIuODUiLz48L3N2Zz4=",E=e(71412),Z=e(28858),J=e(65002),$=e(55021),ne=e(7803),ae=e(76119),M=e(39949),j=e(77181),l=e(97458);function de(y){var w=y.isRequiring,v=y.visible,oe=y.minPadding,k=oe===void 0?{top:0,left:0}:oe,A=y.allowMove,R=y.showMouseAim,ce=y.onClickMaskBg,q=(0,Z.NB)(),he=q.width,V=he===void 0?0:he,S=q.height,Y=S===void 0?0:S,F=q.ref,U=(0,d.useRef)(null),L=(0,J.Z)(F.current),_=(0,J.Z)(U.current),Ze=(0,d.useState)({width:0,height:0}),Ce=c()(Ze,2),ie=Ce[0],Le=Ce[1],xe=(0,d.useState)({width:0,height:0}),De=c()(xe,2),re=De[0],Ie=De[1],Ne=(0,d.useState)(1),je=c()(Ne,2),le=je[0],ve=je[1],Re=(0,d.useState)(0),W=c()(Re,2),se=W[0],ue=W[1],Se=(0,d.useMemo)(function(){return{width:re.width*le,height:re.height*le}},[re,le]),Q=(0,d.useRef)(void 0),be=(0,d.useRef)(!1),ze=function(r){if(U.current){var T=[re.width,re.height],ee=T[0],fe=T[1],me=.5,Pe=.5,Qe=V/2,Be=Y/2;Q.current&&(me=Q.current.posRatioX,Pe=Q.current.posRatioY,Qe=Q.current.mouseX,Be=Q.current.mouseY);var qe=Qe-ee*r*me,et=Be-fe*r*Pe;U.current.style.transform="translate3d(".concat(qe,"px, ").concat(et,"px, 0) rotate(").concat(se,"deg)")}},Ae=function(r,T,ee){!v||w||ve(function(fe){var me=r?Math.min(h.Fv,(0,j.O)(fe+T,2)):Math.max(h.vL,(0,j.O)(fe-T,2));return ee||!_.elementX||!L.elementX||!Se.width?Q.current=void 0:(!Q.current||be.current&&(L.elementX!==Q.current.mouseX||L.elementY!==Q.current.mouseY))&&(Q.current={posRatioX:_.elementX/Se.width,posRatioY:_.elementY/Se.height,mouseX:L.elementX,mouseY:L.elementY},be.current=!1),me})},He=function(){Ae(!0,h.yj,!0)},Ue=function(){Ae(!1,h.yj,!0)},Ge=function(r){if(!(!v||w)){var T=r.deltaY;T>0?Ae(!1,h.oP):T<0&&Ae(!0,h.oP)}},Ye=function(r){var T=r.deltaX;T&&document.body.scrollLeft===0&&r.preventDefault()};(0,d.useEffect)(function(){if(v){var r;(r=F.current)===null||r===void 0||r.addEventListener("wheel",Ye,{passive:!1})}else{var C;(C=F.current)===null||C===void 0||C.removeEventListener("wheel",Ye)}},[v]);var Ve=function(){ue(function(r){return r+90})},_e=function(){ue(function(r){return r-90})},Xe=function(){Q.current=void 0,ve(1),ue(0),ze(1)};(0,d.useEffect)(function(){v||(Le({width:0,height:0}),Ie({width:0,height:0}),ve(1),ue(0),Q.current=void 0)},[v]),(0,d.useEffect)(function(){ze(le)},[re,le,se]),(0,d.useEffect)(function(){if(V&&Y&&ie&&U.current){var C=(0,M.t9)(ie.width,ie.height,V-k.left*2,Y-k.top*2),r=c()(C,2),T=r[0],ee=r[1];Ie({width:T,height:ee}),ve(1),ue(0),Q.current=void 0}},[V,Y,ie]);var Je=(0,ne.x)(null),We=c()(Je,2),pe=We[0],Oe=We[1];(0,d.useEffect)(function(){A||Oe(null)},[A]);var Fe=function(){if(!(!U.current||!pe||!V||!Y)){var r=pe.startOffset,T=pe.mousePoint,ee=_.clientX-T.x,fe=_.clientY-T.y,me=r.x+ee,Pe=r.y+fe;U.current.style.transform="translate3d(".concat(me,"px, ").concat(Pe,"px, 0) rotate(").concat(se,"deg)")}};(0,$.Z)("mousedown",function(){if(!(!v||!U.current)){var C=window.getComputedStyle(U.current).transform,r=C.match(/\s(-?[\d.]+),\s(-?[\d.]+)\)$/);r&&(r==null?void 0:r.length)>=3&&Oe({startOffset:{x:Number(r[1]),y:Number(r[2])},mousePoint:{x:_.clientX,y:_.clientY}})}},{target:function(){return F.current}}),(0,$.Z)("mousemove",function(){v&&(be.current=!0,pe&&A&&((0,ae.jt)(L)?Fe():Oe(null)))},{target:function(){return F.current}}),(0,$.Z)("mouseup",function(){if(!(!v||!A)&&pe){Oe(null);return}},{target:function(){return F.current}});var Ke=function(r){r.preventDefault(),r.stopPropagation()},$e=function(r){ce&&ce(r)},ke=function(r){var T=r.children,ee=r.className;return v?(0,l.jsxs)("div",{ref:F,onWheel:Ge,onClick:$e,className:ee,children:[(0,l.jsx)("div",{ref:U,style:{position:"absolute",cursor:"grab"},onClick:Ke,draggable:!1,children:T}),R&&!A&&(0,ae.jt)(_)&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{style:{position:"fixed",backgroundColor:"#fff",height:1,left:L.elementPosX,bottom:window.innerHeight-L.clientY-1,width:L.elementX-18}}),(0,l.jsx)("div",{style:{position:"fixed",backgroundColor:"#fff",height:1,left:L.clientX+18,bottom:window.innerHeight-L.clientY-1,width:L.elementW-L.elementX-18}}),(0,l.jsx)("div",{style:{position:"fixed",backgroundColor:"#fff",width:1,bottom:window.innerHeight-L.clientY+18,left:L.clientX-1,height:L.elementY-18}}),(0,l.jsx)("div",{style:{position:"fixed",backgroundColor:"#fff",width:1,bottom:0,left:L.clientX-1,height:L.elementH-L.elementY-18}})]})]}):null};return{onZoomIn:He,onZoomOut:Ue,onRotateRight:Ve,onRotateLeft:_e,onReset:Xe,setNaturalSize:Le,ScalableContainer:ke,naturalSize:ie,clientSize:Se,scale:le,contentRef:U,contentMouse:_,containerMouse:L,containerRef:F}}var u=e(32658);function a(y){var w=y.visible,v=y.current,oe=y.total,k=y.onCurrentChange,A=y.limitConfirm,R=A===void 0?function(){return new Promise(function(S){S(null)})}:A,ce=function(){R().then(function(){v>0&&k(v-1)})},q=function(){R().then(function(){v=h.Fv},{icon:(0,l.jsx)(o.Z,{}),onClick:F,disabled:ie<=h.vL},{icon:(0,l.jsx)(n.Z,{}),onClick:U},{icon:(0,l.jsx)(s.Z,{}),onClick:L},{icon:(0,l.jsx)(E.r,{}),onClick:Re}],rightTools:[{icon:(0,l.jsx)(i.Z,{}),onClick:q}],children:"".concat(R+1," / ").concat(A.length)}),Ze({className:t.previewWrapper,children:he({data:A[R],currentSize:Ce,isPreview:!0,ref:V,onLoad:Le})}),(0,l.jsx)("div",{className:ge()(t.switch,t.switchLeft,O()({},t.switchDisable,R===0)),onClick:De,children:(0,l.jsx)(p.Z,{})}),(0,l.jsx)("div",{className:ge()(t.switch,t.switchRight,O()({},t.switchDisable,R===A.length-1)),onClick:re,children:(0,l.jsx)(g.Z,{})}),je&&((v=A[R])===null||v===void 0?void 0:v.metadata)&&(0,l.jsxs)("div",{className:t.infoWrap,children:[(0,l.jsx)("div",{className:t.infoBox,children:((oe=A[R])===null||oe===void 0?void 0:oe.metadata)&&Object.keys(A[R].metadata).map(function(W){return(0,l.jsxs)("div",{className:t.item,children:[W,(0,l.jsx)("br",{}),x()(A[R].metadata[W])==="object"?JSON.stringify(A[R].metadata[W]):A[R].metadata[W]]},W)})}),(0,l.jsx)("div",{className:t.bottomMask}),(0,l.jsx)("div",{className:t.hideInfoBtn,onClick:ve,children:(0,l.jsx)(G,{})})]}),!je&&(0,l.jsx)("div",{className:t.showInfoBtn,onClick:ve,children:(0,l.jsx)(G,{})})]}):null},Ee=we},17445:function(te,P,e){e.d(P,{Z:function(){return d}});var D=e(63900),x=e.n(D),I=e(88205),O=e.n(I),m=e(52983),c=e(85661);function d(h){var N=h.pageState,o=h.onInitPageState,n=h.onPageDidMount,s=h.onPageWillUnmount,i=(0,c.Z)({},{navigateMode:"replace"}),p=O()(i,2),g=p[0],b=p[1];(0,m.useEffect)(function(){if(o){var f={};try{f=g.pageState?JSON.parse(g.pageState):{}}catch(B){console.error("get urlPageState error: ",B)}o(f,g)}return n&&n(g),function(){s&&s()}},[]),(0,m.useEffect)(function(){b(x()(x()({},g),{},{pageState:JSON.stringify(N)}))},[N])}},71412:function(te,P,e){e.d(P,{r:function(){return h}});var D=e(52983),x=Object.defineProperty,I=Object.getOwnPropertySymbols,O=Object.prototype.hasOwnProperty,m=Object.prototype.propertyIsEnumerable,c=(o,n,s)=>n in o?x(o,n,{enumerable:!0,configurable:!0,writable:!0,value:s}):o[n]=s,d=(o,n)=>{for(var s in n||(n={}))O.call(n,s)&&c(o,s,n[s]);if(I)for(var s of I(n))m.call(n,s)&&c(o,s,n[s]);return o};const h=o=>D.createElement("svg",d({viewBox:"0 0 14 14",fill:"#595959",xmlns:"http://www.w3.org/2000/svg"},o),D.createElement("path",{d:"M6.887 9.657a.143.143 0 0 0 .225 0l2-2.53A.142.142 0 0 0 9 6.897H7.677V.854A.143.143 0 0 0 7.534.71H6.462a.143.143 0 0 0-.143.143v6.041H5a.142.142 0 0 0-.112.23l2 2.532Zm6.649-.625h-1.072a.143.143 0 0 0-.143.143v2.75H1.678v-2.75a.143.143 0 0 0-.142-.143H.464a.143.143 0 0 0-.143.143v3.536a.57.57 0 0 0 .572.572h12.214a.57.57 0 0 0 .571-.572V9.175a.143.143 0 0 0-.142-.143Z"}));var N="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTQgMTQiIGZpbGw9IiM1OTU5NTkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuODg3IDkuNjU3YS4xNDMuMTQzIDAgMCAwIC4yMjUgMGwyLTIuNTNBLjE0Mi4xNDIgMCAwIDAgOSA2Ljg5N0g3LjY3N1YuODU0QS4xNDMuMTQzIDAgMCAwIDcuNTM0LjcxSDYuNDYyYS4xNDMuMTQzIDAgMCAwLS4xNDMuMTQzdjYuMDQxSDVhLjE0Mi4xNDIgMCAwIDAtLjExMi4yM2wyIDIuNTMyWm02LjY0OS0uNjI1aC0xLjA3MmEuMTQzLjE0MyAwIDAgMC0uMTQzLjE0M3YyLjc1SDEuNjc4di0yLjc1YS4xNDMuMTQzIDAgMCAwLS4xNDItLjE0M0guNDY0YS4xNDMuMTQzIDAgMCAwLS4xNDMuMTQzdjMuNTM2YS41Ny41NyAwIDAgMCAuNTcyLjU3MmgxMi4yMTRhLjU3LjU3IDAgMCAwIC41NzEtLjU3MlY5LjE3NWEuMTQzLjE0MyAwIDAgMC0uMTQyLS4xNDNaIi8+PC9zdmc+"},31590:function(te,P,e){e.d(P,{r:function(){return h}});var D=e(52983),x=Object.defineProperty,I=Object.getOwnPropertySymbols,O=Object.prototype.hasOwnProperty,m=Object.prototype.propertyIsEnumerable,c=(o,n,s)=>n in o?x(o,n,{enumerable:!0,configurable:!0,writable:!0,value:s}):o[n]=s,d=(o,n)=>{for(var s in n||(n={}))O.call(n,s)&&c(o,s,n[s]);if(I)for(var s of I(n))m.call(n,s)&&c(o,s,n[s]);return o};const h=o=>D.createElement("svg",d({viewBox:"0 0 16 16",fill:"#52C41A",xmlns:"http://www.w3.org/2000/svg"},o),D.createElement("path",{d:"M12.633 4.84 3.838 1.05A.599.599 0 0 0 3 1.602v12.793a.602.602 0 1 0 1.204 0v-4l8.475-4.47a.601.601 0 0 0-.046-1.086Z"}));var N="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIGZpbGw9IiM1MkM0MUEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyLjYzMyA0Ljg0IDMuODM4IDEuMDVBLjU5OS41OTkgMCAwIDAgMyAxLjYwMnYxMi43OTNhLjYwMi42MDIgMCAxIDAgMS4yMDQgMHYtNGw4LjQ3NS00LjQ3YS42MDEuNjAxIDAgMCAwLS4wNDYtMS4wODZaIi8+PC9zdmc+"}}]); diff --git a/deepdataspace/server/static/630.403767d5.async.js b/deepdataspace/server/static/630.403767d5.async.js deleted file mode 100644 index 0e0139d..0000000 --- a/deepdataspace/server/static/630.403767d5.async.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkapp=self.webpackChunkapp||[]).push([[630],{85661:function(R,c,a){"use strict";var l=a(67743),u=a(88204),d=a(98732),s=a(52983),n=a(66682),E=function(){return E=Object.assign||function(f){for(var o,i=1,B=arguments.length;i0}).join("&")},c.parseUrl=function(A,r){r=Object.assign({decode:!0},r);var t=g(A,"#"),e=l(t,2),I=e[0],U=e[1];return Object.assign({url:I.split("?")[0]||"",query:C(D(A),r)},r&&r.parseFragmentIdentifier&&U?{fragmentIdentifier:B(U,r)}:{})},c.stringifyUrl=function(A,r){r=Object.assign({encode:!0,strict:!0},r);var t=S(A.url).split("?")[0]||"",e=c.extract(A.url),I=c.parse(e,{sort:!1}),U=Object.assign(I,A.query),F=c.stringify(U,r);F&&(F="?".concat(F));var K=y(A.url);return A.fragmentIdentifier&&(K="#".concat(i(A.fragmentIdentifier,r))),"".concat(t).concat(F).concat(K)},c.pick=function(A,r,t){t=Object.assign({parseFragmentIdentifier:!0},t);var e=c.parseUrl(A,t),I=e.url,U=e.query,F=e.fragmentIdentifier;return c.stringifyUrl({url:I,query:M(U,r),fragmentIdentifier:F},t)},c.exclude=function(A,r,t){var e=Array.isArray(r)?function(I){return!r.includes(I)}:function(I,U){return!r(I,U)};return c.pick(A,e,t)}},34618:function(R){"use strict";R.exports=function(c,a){if(!(typeof c=="string"&&typeof a=="string"))throw new TypeError("Expected the arguments to be of type `string`");if(a==="")return[c];var l=c.indexOf(a);return l===-1?[c]:[c.slice(0,l),c.slice(l+a.length)]}},7710:function(R){"use strict";R.exports=function(c){return encodeURIComponent(c).replace(/[!'()*]/g,function(a){return"%".concat(a.charCodeAt(0).toString(16).toUpperCase())})}},71412:function(R,c,a){"use strict";a.d(c,{r:function(){return M}});var l=a(52983),u=Object.defineProperty,d=Object.getOwnPropertySymbols,s=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable,E=(Q,f,o)=>f in Q?u(Q,f,{enumerable:!0,configurable:!0,writable:!0,value:o}):Q[f]=o,g=(Q,f)=>{for(var o in f||(f={}))s.call(f,o)&&E(Q,o,f[o]);if(d)for(var o of d(f))n.call(f,o)&&E(Q,o,f[o]);return Q};const M=Q=>l.createElement("svg",g({viewBox:"0 0 14 14",fill:"#595959",xmlns:"http://www.w3.org/2000/svg"},Q),l.createElement("path",{d:"M6.887 9.657a.143.143 0 0 0 .225 0l2-2.53A.142.142 0 0 0 9 6.897H7.677V.854A.143.143 0 0 0 7.534.71H6.462a.143.143 0 0 0-.143.143v6.041H5a.142.142 0 0 0-.112.23l2 2.532Zm6.649-.625h-1.072a.143.143 0 0 0-.143.143v2.75H1.678v-2.75a.143.143 0 0 0-.142-.143H.464a.143.143 0 0 0-.143.143v3.536a.57.57 0 0 0 .572.572h12.214a.57.57 0 0 0 .571-.572V9.175a.143.143 0 0 0-.142-.143Z"}));var m="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTQgMTQiIGZpbGw9IiM1OTU5NTkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuODg3IDkuNjU3YS4xNDMuMTQzIDAgMCAwIC4yMjUgMGwyLTIuNTNBLjE0Mi4xNDIgMCAwIDAgOSA2Ljg5N0g3LjY3N1YuODU0QS4xNDMuMTQzIDAgMCAwIDcuNTM0LjcxSDYuNDYyYS4xNDMuMTQzIDAgMCAwLS4xNDMuMTQzdjYuMDQxSDVhLjE0Mi4xNDIgMCAwIDAtLjExMi4yM2wyIDIuNTMyWm02LjY0OS0uNjI1aC0xLjA3MmEuMTQzLjE0MyAwIDAgMC0uMTQzLjE0M3YyLjc1SDEuNjc4di0yLjc1YS4xNDMuMTQzIDAgMCAwLS4xNDItLjE0M0guNDY0YS4xNDMuMTQzIDAgMCAwLS4xNDMuMTQzdjMuNTM2YS41Ny41NyAwIDAgMCAuNTcyLjU3MmgxMi4yMTRhLjU3LjU3IDAgMCAwIC41NzEtLjU3MlY5LjE3NWEuMTQzLjE0MyAwIDAgMC0uMTQyLS4xNDNaIi8+PC9zdmc+"},65140:function(R){"use strict";var c="%[a-f0-9]{2}",a=new RegExp("("+c+")|([^%]+?)","gi"),l=new RegExp("("+c+")+","gi");function u(n,E){try{return[decodeURIComponent(n.join(""))]}catch(m){}if(n.length===1)return n;E=E||1;var g=n.slice(0,E),M=n.slice(E);return Array.prototype.concat.call([],u(g),u(M))}function d(n){try{return decodeURIComponent(n)}catch(M){for(var E=n.match(a)||[],g=1;g0}).join("&")},g.parseUrl=function(A,r){r=Object.assign({decode:!0},r);var t=c(A,"#"),e=l(t,2),I=e[0],d=e[1];return Object.assign({url:I.split("?")[0]||"",query:P(D(A),r)},r&&r.parseFragmentIdentifier&&d?{fragmentIdentifier:U(d,r)}:{})},g.stringifyUrl=function(A,r){r=Object.assign({encode:!0,strict:!0},r);var t=v(A.url).split("?")[0]||"",e=g.extract(A.url),I=g.parse(e,{sort:!1}),d=Object.assign(I,A.query),y=g.stringify(d,r);y&&(y="?".concat(y));var F=h(A.url);return A.fragmentIdentifier&&(F="#".concat(a(A.fragmentIdentifier,r))),"".concat(t).concat(y).concat(F)},g.pick=function(A,r,t){t=Object.assign({parseFragmentIdentifier:!0},t);var e=g.parseUrl(A,t),I=e.url,d=e.query,y=e.fragmentIdentifier;return g.stringifyUrl({url:I,query:u(d,r),fragmentIdentifier:y},t)},g.exclude=function(A,r,t){var e=Array.isArray(r)?function(I){return!r.includes(I)}:function(I,d){return!r(I,d)};return g.pick(A,e,t)}},34618:function(s){"use strict";s.exports=function(g,i){if(!(typeof g=="string"&&typeof i=="string"))throw new TypeError("Expected the arguments to be of type `string`");if(i==="")return[g];var l=g.indexOf(i);return l===-1?[g]:[g.slice(0,l),g.slice(l+i.length)]}},7710:function(s){"use strict";s.exports=function(g){return encodeURIComponent(g).replace(/[!'()*]/g,function(i){return"%".concat(i.charCodeAt(0).toString(16).toUpperCase())})}},71412:function(s,g,i){"use strict";i.d(g,{r:function(){return u}});var l=i(52983),B=Object.defineProperty,C=Object.getOwnPropertySymbols,Q=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable,o=(R,f,E)=>f in R?B(R,f,{enumerable:!0,configurable:!0,writable:!0,value:E}):R[f]=E,c=(R,f)=>{for(var E in f||(f={}))Q.call(f,E)&&o(R,E,f[E]);if(C)for(var E of C(f))n.call(f,E)&&o(R,E,f[E]);return R};const u=R=>l.createElement("svg",c({viewBox:"0 0 14 14",fill:"#595959",xmlns:"http://www.w3.org/2000/svg"},R),l.createElement("path",{d:"M6.887 9.657a.143.143 0 0 0 .225 0l2-2.53A.142.142 0 0 0 9 6.897H7.677V.854A.143.143 0 0 0 7.534.71H6.462a.143.143 0 0 0-.143.143v6.041H5a.142.142 0 0 0-.112.23l2 2.532Zm6.649-.625h-1.072a.143.143 0 0 0-.143.143v2.75H1.678v-2.75a.143.143 0 0 0-.142-.143H.464a.143.143 0 0 0-.143.143v3.536a.57.57 0 0 0 .572.572h12.214a.57.57 0 0 0 .571-.572V9.175a.143.143 0 0 0-.142-.143Z"}));var p="data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTQgMTQiIGZpbGw9IiM1OTU5NTkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuODg3IDkuNjU3YS4xNDMuMTQzIDAgMCAwIC4yMjUgMGwyLTIuNTNBLjE0Mi4xNDIgMCAwIDAgOSA2Ljg5N0g3LjY3N1YuODU0QS4xNDMuMTQzIDAgMCAwIDcuNTM0LjcxSDYuNDYyYS4xNDMuMTQzIDAgMCAwLS4xNDMuMTQzdjYuMDQxSDVhLjE0Mi4xNDIgMCAwIDAtLjExMi4yM2wyIDIuNTMyWm02LjY0OS0uNjI1aC0xLjA3MmEuMTQzLjE0MyAwIDAgMC0uMTQzLjE0M3YyLjc1SDEuNjc4di0yLjc1YS4xNDMuMTQzIDAgMCAwLS4xNDItLjE0M0guNDY0YS4xNDMuMTQzIDAgMCAwLS4xNDMuMTQzdjMuNTM2YS41Ny41NyAwIDAgMCAuNTcyLjU3MmgxMi4yMTRhLjU3LjU3IDAgMCAwIC41NzEtLjU3MlY5LjE3NWEuMTQzLjE0MyAwIDAgMC0uMTQyLS4xNDNaIi8+PC9zdmc+"},65140:function(s){"use strict";var g="%[a-f0-9]{2}",i=new RegExp("("+g+")|([^%]+?)","gi"),l=new RegExp("("+g+")+","gi");function B(n,o){try{return[decodeURIComponent(n.join(""))]}catch(p){}if(n.length===1)return n;o=o||1;var c=n.slice(0,o),u=n.slice(o);return Array.prototype.concat.call([],B(c),B(u))}function C(n){try{return decodeURIComponent(n)}catch(u){for(var o=n.match(i)||[],c=1;ci?i=l:l";while(s[0]);return u>4?u:p}();return a===m},L.isLegacyOpera=function(){return!!window.opera}},73415:function(T){"use strict";var L=T.exports={};L.forEach=function(a,d){for(var m=0;m div::-webkit-scrollbar { "+O(["display: none"])+` } + +`,Y+="."+et+" { "+O(["-webkit-animation-duration: 0.1s","animation-duration: 0.1s","-webkit-animation-name: "+H,"animation-name: "+H])+` } +`,Y+="@-webkit-keyframes "+H+` { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } } +`,Y+="@keyframes "+H+" { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }",w(Y)}}function n(x){x.className+=" "+l+"_animation_active"}function c(x,h,N){if(x.addEventListener)x.addEventListener(h,N);else if(x.attachEvent)x.attachEvent("on"+h,N);else return p.error("[scroll] Don't know how to add event listeners.")}function E(x,h,N){if(x.removeEventListener)x.removeEventListener(h,N);else if(x.detachEvent)x.detachEvent("on"+h,N);else return p.error("[scroll] Don't know how to remove event listeners.")}function D(x){return i(x).container.childNodes[0].childNodes[0].childNodes[0]}function t(x){return i(x).container.childNodes[0].childNodes[0].childNodes[1]}function e(x,h){var N=i(x).listeners;if(!N.push)throw new Error("Cannot add listener to an element that is not detectable.");i(x).listeners.push(h)}function f(x,h,N){N||(N=h,h=x,x=null),x=x||{};function w(){if(x.debug){var A=Array.prototype.slice.call(arguments);if(A.unshift(v.get(h),"Scroll: "),p.log.apply)p.log.apply(null,A);else for(var F=0;F