jupyter-collaboration-ui 2.0.0rc0__tar.gz → 2.0.1__tar.gz
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.
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/PKG-INFO +1 -1
- jupyter_collaboration_ui-2.0.1/jupyter_collaboration_ui/_version.py +1 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/package.json +5 -5
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/schemas/@jupyter/collaboration-extension/package.json.orig +4 -4
- jupyter_collaboration_ui-2.0.1/jupyter_collaboration_ui/labextension/static/393.a067b0dda2ff1016a0c4.js +1 -0
- jupyter_collaboration_ui-2.0.0rc0/jupyter_collaboration_ui/labextension/static/842.4dce86ebbe830eb66c85.js → jupyter_collaboration_ui-2.0.1/jupyter_collaboration_ui/labextension/static/842.7a80fcdbeab015d1f6ab.js +1 -1
- jupyter_collaboration_ui-2.0.1/jupyter_collaboration_ui/labextension/static/remoteEntry.f4e10b30b33fbde45c37.js +1 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/static/third-party-licenses.json +3 -3
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/package.json +1 -1
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/collaboratorspanel.tsx +1 -1
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/package.json +4 -4
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaborative-drive/package.json +1 -1
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/package.json +2 -2
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/package.json +3 -3
- jupyter_collaboration_ui-2.0.0rc0/jupyter_collaboration_ui/_version.py +0 -1
- jupyter_collaboration_ui-2.0.0rc0/jupyter_collaboration_ui/labextension/static/393.d987e9c44d574193d8d7.js +0 -1
- jupyter_collaboration_ui-2.0.0rc0/jupyter_collaboration_ui/labextension/static/remoteEntry.7348deabceee5b7711dc.js +0 -1
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/.gitignore +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/LICENSE +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/README.md +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/install.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/__init__.py +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/schemas/@jupyter/collaboration-extension/shared-link.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/schemas/@jupyter/collaboration-extension/user-menu-bar.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/static/240.4f15e81d1fc1df24427c.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/static/444.d6f3cc1c6d4b374efa63.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/static/784.bef63745ca8c3075ff63.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/static/944.11ca1e2ef2d2b459a91b.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/static/952.8934cdeb03f9bd1e666f.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/jupyter_collaboration_ui/labextension/static/style.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/README.md +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/components.tsx +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/cursors.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/index.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/menu.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/sharedlink.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/tokens.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/userinfopanel.tsx +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/src/users-item.tsx +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/style/base.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/style/index.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/style/index.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/style/menu.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/style/sidepanel.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/style/users-item.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration/tsconfig.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/README.md +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/schema/shared-link.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/schema/user-menu-bar.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/src/collaboration.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/src/index.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/src/sharedlink.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/style/index.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/style/index.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaboration-extension/tsconfig.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaborative-drive/src/index.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaborative-drive/src/tokens.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/collaborative-drive/tsconfig.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/babel.config.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/jest.config.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/TimelineSlider.tsx +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/__tests__/forkManager.spec.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/__tests__/yprovider.spec.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/awareness.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/component.tsx +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/forkManager.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/index.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/notebookCellExecutor.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/requests.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/tokens.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/ydrive.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/src/yprovider.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/style/base.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/style/index.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/style/index.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/style/slider.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/tsconfig.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider/tsconfig.test.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/README.md +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/src/executor.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/src/filebrowser.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/src/forkManager.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/src/index.ts +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/style/index.css +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/style/index.js +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/packages/docprovider-extension/tsconfig.json +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/pyproject.toml +0 -0
- {jupyter_collaboration_ui-2.0.0rc0 → jupyter_collaboration_ui-2.0.1}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: jupyter-collaboration-ui
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.1
|
|
4
4
|
Summary: JupyterLab/Jupyter Notebook 7+ extension providing user interface integration for real time collaboration
|
|
5
5
|
Project-URL: Documentation, https://jupyterlab-realtime-collaboration.readthedocs.io/
|
|
6
6
|
Project-URL: Repository, https://github.com/jupyterlab/jupyter-collaboration
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2.0.1"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyter/collaboration-extension",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "JupyterLab - Real-Time Collaboration Extension",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jupyter",
|
|
@@ -53,9 +53,9 @@
|
|
|
53
53
|
"watch:labextension": "jupyter labextension watch ."
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@jupyter/collaboration": "^4.0.
|
|
57
|
-
"@jupyter/collaborative-drive": "^4.0.
|
|
58
|
-
"@jupyter/docprovider": "^4.0.
|
|
56
|
+
"@jupyter/collaboration": "^4.0.1",
|
|
57
|
+
"@jupyter/collaborative-drive": "^4.0.1",
|
|
58
|
+
"@jupyter/docprovider": "^4.0.1",
|
|
59
59
|
"@jupyter/ydoc": "^2.1.3 || ^3.0.0",
|
|
60
60
|
"@jupyterlab/application": "^4.4.0",
|
|
61
61
|
"@jupyterlab/apputils": "^4.4.0",
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
}
|
|
126
126
|
},
|
|
127
127
|
"_build": {
|
|
128
|
-
"load": "static/remoteEntry.
|
|
128
|
+
"load": "static/remoteEntry.f4e10b30b33fbde45c37.js",
|
|
129
129
|
"extension": "./extension",
|
|
130
130
|
"style": "./style"
|
|
131
131
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyter/collaboration-extension",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "JupyterLab - Real-Time Collaboration Extension",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jupyter",
|
|
@@ -53,9 +53,9 @@
|
|
|
53
53
|
"watch:labextension": "jupyter labextension watch ."
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@jupyter/collaboration": "^4.0.
|
|
57
|
-
"@jupyter/collaborative-drive": "^4.0.
|
|
58
|
-
"@jupyter/docprovider": "^4.0.
|
|
56
|
+
"@jupyter/collaboration": "^4.0.1",
|
|
57
|
+
"@jupyter/collaborative-drive": "^4.0.1",
|
|
58
|
+
"@jupyter/docprovider": "^4.0.1",
|
|
59
59
|
"@jupyter/ydoc": "^2.1.3 || ^3.0.0",
|
|
60
60
|
"@jupyterlab/application": "^4.4.0",
|
|
61
61
|
"@jupyterlab/apputils": "^4.4.0",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_jupyter_collaboration_extension=self.webpackChunk_jupyter_collaboration_extension||[]).push([[393],{6393:(e,t,n)=>{n.r(t),n.d(t,{Collaborator:()=>w,CollaboratorsBody:()=>y,CollaboratorsPanel:()=>b,DefaultIconRenderer:()=>q,IUserMenu:()=>s,RendererUserMenu:()=>T,UserInfoBody:()=>$,UserInfoPanel:()=>W,UserMenu:()=>N,UsersItem:()=>J,remoteUserCursors:()=>P,showSharedLinkDialog:()=>F});var r=n(7262);const s=new r.Token("@jupyter/collaboration:IUserMenu");var o=n(9569),a=n(6989),i=n(4602),l=n(5256),c=n(3345),d=n.n(c);const u="jp-CollaboratorsList",h="jp-Collaborator",m="jp-CollaboratorHeader",p="jp-CollaboratorHeaderCollapser",f="jp-ClickableCollaborator",v="jp-CollaboratorIcon",_="jp-CollaboratorFiles",g="jp-CollaboratorFile";class b extends l.Panel{constructor(e,t,n,r){super({}),this._onAwarenessChanged=()=>{const e=this._awareness.getStates(),t=new Map;e.forEach(((e,n)=>{if(this._currentUser.isReady&&e.user&&e.user.username!==this._currentUser.identity.username){const n=`${e.user.username}-${e.current||"no-current"}`;t.has(n)||t.set(n,e)}})),this._collaboratorsChanged.emit(Array.from(t.values()))},this._collaboratorsChanged=new i.Signal(this),this._awareness=t,this._currentUser=e,this.addClass("jp-CollaboratorsPanel"),this.addWidget(o.ReactWidget.create(d().createElement(y,{fileopener:n,collaboratorsChanged:this._collaboratorsChanged,docRegistry:r}))),this._awareness.on("change",this._onAwarenessChanged)}}function y(e){const[t,n]=(0,c.useState)([]);return e.collaboratorsChanged.connect(((e,t)=>{n(t)})),d().createElement("div",{className:u},t.map((t=>{const n=`${t.user.username}-${t.current||"no-current"}`;return d().createElement(w,{key:n,collaborator:t,fileopener:e.fileopener,docRegistry:e.docRegistry})})))}function w(e){const[t,n]=(0,c.useState)(!1),{collaborator:r,fileopener:s}=e;let o="";if(r.current){const e=r.current.split(":");o=`${e[1]}`}const i=r.documents||[],l=i.map((t=>{var n,r;const s=null===(r=null===(n=e.docRegistry)||void 0===n?void 0:n.getFileTypesForPath(t))||void 0===r?void 0:r.filter((e=>void 0!==e.icon)),o=(null==s?void 0:s.length)?s[0].icon:a.fileIcon,i=(null==s?void 0:s.length)?s[0].iconClass:void 0;return{filename:t.length>40?t.slice(0,10).concat("…").concat(t.slice(t.length-15)):t,fileLocation:t,icon:o,iconClass:i}}));return d().createElement("div",{className:h},d().createElement("div",{className:l.length?`${f} ${m}`:m,onClick:i?()=>{l.length&&n(!t)}:void 0},d().createElement(a.LabIcon.resolveReact,{icon:a.caretDownIcon,className:p+(t?" jp-mod-expanded":""),tag:"div"}),d().createElement("div",{className:v,style:{backgroundColor:r.user.color}},d().createElement("span",null,r.user.initials)),d().createElement("span",null,r.user.display_name)),d().createElement("div",{className:`${_} jp-DirListing`,style:t?{}:{display:"none"}},d().createElement("ul",{className:"jp-DirListing-content"},l.map((e=>d().createElement("li",{className:"jp-DirListing-item "+(e.fileLocation===o?`${g} jp-mod-running`:g),key:e.filename,onClick:()=>s(e.fileLocation)},d().createElement(a.LabIcon.resolveReact,{icon:e.icon,iconClass:e.iconClass,tag:"span",className:"jp-DirListing-itemIcon",stylesheet:"listing"}),d().createElement("span",{className:"jp-DirListing-itemText",title:e.fileLocation},e.filename)))))))}var C=n(195),k=n(5024),j=n(2206);const x=C.Facet.define({combine:e=>e[e.length-1]}),I=k.EditorView.baseTheme({".jp-remote-cursor":{borderLeft:"1px solid black",marginLeft:"-1px"},".jp-remote-cursor.jp-mod-primary":{borderLeftWidth:"2px"},".jp-remote-selection":{opacity:.5},".cm-tooltip":{border:"none"},".cm-tooltip .jp-remote-userInfo":{color:"var(--jp-ui-inverse-font-color0)",padding:"0px 2px"}}),E=C.Annotation.define();class L{constructor(e,t){this.style=e,this.marker=t}draw(){const e=this.marker.draw();for(const[t,n]of Object.entries(this.style))e.style[t]=n;return e}eq(e){return this.marker.eq(e.marker)&&r.JSONExt.deepEqual(this.style,e.style)}update(e,t){for(const[t,n]of Object.entries(this.style))e.style[t]=n;return this.marker.update(e,t.marker)}}const A=(0,k.layer)({above:!0,markers(e){const{awareness:t,ytext:n}=e.state.facet(x),r=n.doc,s=[];return t.getStates().forEach(((o,a)=>{var i,l,c;if(a===t.doc.clientID)return;const d=o.cursors;for(const t of null!=d?d:[]){if(!(null==t?void 0:t.anchor)||!(null==t?void 0:t.head))return;const a=(0,j.createAbsolutePositionFromRelativePosition)(t.anchor,r),d=(0,j.createAbsolutePositionFromRelativePosition)(t.head,r);if((null==a?void 0:a.type)!==n||(null==d?void 0:d.type)!==n)return;const u=null===(i=t.primary)||void 0===i||i?"jp-remote-cursor jp-mod-primary":"jp-remote-cursor",h=C.EditorSelection.cursor(d.index,d.index>a.index?-1:1);for(const t of k.RectangleMarker.forRange(e,u,h))s.push(new L({borderLeftColor:null!==(c=null===(l=o.user)||void 0===l?void 0:l.color)&&void 0!==c?c:"black"},t))}})),s},update:(e,t)=>!!e.transactions.find((e=>e.annotation(E))),class:"jp-remote-cursors"}),R=(0,k.hoverTooltip)(((e,t)=>{var n;const{awareness:r,ytext:s}=e.state.facet(x),o=s.doc;for(const[e,a]of r.getStates())if(e!==r.doc.clientID)for(const e of null!==(n=a.cursors)&&void 0!==n?n:[]){if(!(null==e?void 0:e.head))continue;const n=(0,j.createAbsolutePositionFromRelativePosition)(e.head,o);if((null==n?void 0:n.type)===s&&n.index-3<=t&&t<=n.index+3)return{pos:n.index,above:!0,create:()=>{var e,t,n,r;const s=document.createElement("div");return s.classList.add("jp-remote-userInfo"),s.style.backgroundColor=null!==(t=null===(e=a.user)||void 0===e?void 0:e.color)&&void 0!==t?t:"darkgrey",s.textContent=null!==(r=null===(n=a.user)||void 0===n?void 0:n.display_name)&&void 0!==r?r:"Anonymous",{dom:s}}}}return null}),{hideOn:(e,t)=>!!e.annotation(E),hoverTime:0}),D=(0,k.layer)({above:!1,markers(e){const{awareness:t,ytext:n}=e.state.facet(x),r=n.doc,s=[];return t.getStates().forEach(((o,a)=>{var i,l,c;if(a===t.doc.clientID)return;const d=o.cursors;for(const t of null!=d?d:[]){if(null===(i=t.empty)||void 0===i||i||!(null==t?void 0:t.anchor)||!(null==t?void 0:t.head))return;const a=(0,j.createAbsolutePositionFromRelativePosition)(t.anchor,r),d=(0,j.createAbsolutePositionFromRelativePosition)(t.head,r);if((null==a?void 0:a.type)!==n||(null==d?void 0:d.type)!==n)return;const u="jp-remote-selection";for(const t of k.RectangleMarker.forRange(e,u,C.EditorSelection.range(a.index,d.index)))s.push(new L({backgroundColor:null!==(c=null===(l=o.user)||void 0===l?void 0:l.color)&&void 0!==c?c:"black"},t))}})),s},update:(e,t)=>!!e.transactions.find((e=>e.annotation(E))),class:"jp-remote-selections"}),M=k.ViewPlugin.fromClass(class{constructor(e){this.editorAwareness=e.state.facet(x),this._listener=({added:t,updated:n,removed:r})=>{t.concat(n).concat(r).findIndex((e=>e!==this.editorAwareness.awareness.doc.clientID))>=0&&e.dispatch({annotations:[E.of([])]})},this.editorAwareness.awareness.on("change",this._listener)}destroy(){this.editorAwareness.awareness.off("change",this._listener)}update(e){var t;if(!e.docChanged&&!e.selectionSet)return;const{awareness:n,ytext:s}=this.editorAwareness,o=n.getLocalState();if(o){const a=e.view.hasFocus&&e.view.dom.ownerDocument.hasFocus(),i=e.state.selection,l=new Array;if(a&&i){for(const e of i.ranges){const t=e===i.main,n=(0,j.createRelativePositionFromTypeIndex)(s,e.anchor),r=(0,j.createRelativePositionFromTypeIndex)(s,e.head);l.push({anchor:n,head:r,primary:t,empty:e.empty})}if(!o.cursors||l.length>0){const e=null===(t=o.cursors)||void 0===t?void 0:t.map((e=>({...e,anchor:(null==e?void 0:e.anchor)?(0,j.createRelativePositionFromJSON)(e.anchor):null,head:(null==e?void 0:e.head)?(0,j.createRelativePositionFromJSON)(e.head):null})));r.JSONExt.deepEqual(l,e)||n.setLocalStateField("cursors",l)}}}}},{provide:()=>[I,A,D,R,(0,k.tooltips)({position:"absolute",parent:document.body})]});function P(e){return[x.of(e),M]}var S=n(4873);class T extends l.MenuBar.Renderer{constructor(e){super(),this._user=e}renderItem(e){const t=this.createItemClass(e),n=this.createItemDataset(e),r=this.createItemARIA(e);return S.h.li({className:t,dataset:n,tabindex:"0",onfocus:e.onfocus,...r},this._createUserIcon(),this.renderLabel(e),this.renderIcon(e))}renderLabel(e){const t=this.formatLabel(e);return S.h.div({className:"lm-MenuBar-itemLabel jp-MenuBar-label"},t)}_createUserIcon(){return this._user.isReady&&this._user.identity.avatar_url?S.h.div({className:"lm-MenuBar-itemIcon jp-MenuBar-imageIcon"},S.h.img({src:this._user.identity.avatar_url})):this._user.isReady?S.h.div({className:"lm-MenuBar-itemIcon jp-MenuBar-anonymousIcon",style:{backgroundColor:this._user.identity.color}},S.h.span({},this._user.identity.initials)):S.h.div({className:"lm-MenuBar-itemIcon jp-MenuBar-anonymousIcon"},a.userIcon)}}class N extends l.Menu{constructor(e){super(e)}}var U=n(1808),B=n(7579);async function F({translator:e}){const t=(null!=e?e:B.nullTranslator).load("collaboration"),n=U.PageConfig.getToken(),r=new URL(U.URLExt.normalize(U.PageConfig.getUrl({workspace:U.PageConfig.defaultWorkspace})));return(0,o.showDialog)({title:t.__("Share Jupyter Server Link"),body:new H(r.toString(),n,""!==U.PageConfig.getOption("hubUser"),t),buttons:[o.Dialog.cancelButton(),o.Dialog.okButton({label:t.__("Copy Link"),caption:t.__("Copy the link to the Jupyter Server")})]})}class H extends l.Widget{constructor(e,t,n,r){super(),this._url=e,this._token=t,this._behindHub=n,this._trans=r,this._tokenCheckbox=null,this.onTokenChange=e=>{const t=e.target;this.updateContent(null==t?void 0:t.checked)},this._warning=document.createElement("div"),this.populateBody(this.node),this.addClass("jp-shared-link-body")}getValue(){var e;if(!0===(null===(e=this._tokenCheckbox)||void 0===e?void 0:e.checked)){const e=new URL(this._url);return e.searchParams.set("token",this._token),e.toString()}return this._url}onAfterAttach(e){var t;super.onAfterAttach(e),null===(t=this._tokenCheckbox)||void 0===t||t.addEventListener("change",this.onTokenChange)}onBeforeDetach(e){var t;null===(t=this._tokenCheckbox)||void 0===t||t.removeEventListener("change",this.onTokenChange),super.onBeforeDetach(e)}updateContent(e){this._warning.innerHTML="";const t=this.node.querySelector("input[readonly]");if(e){if(t){const e=new URL(this._url);e.searchParams.set("token",this._token.slice(0,5)),t.value=e.toString()+"…"}this._warning.appendChild(document.createElement("h3")).textContent=this._trans.__("Security warning!"),this._warning.insertAdjacentText("beforeend",this._trans.__("Anyone with this link has full access to your notebook server, including all your files!")),this._warning.insertAdjacentHTML("beforeend","<br>"),this._warning.insertAdjacentText("beforeend",this._trans.__("Please be careful who you share it with.")),this._warning.insertAdjacentHTML("beforeend","<br>"),this._behindHub?(this._warning.insertAdjacentText("beforeend",this._trans.__("They will be able to access this server AS YOU.")),this._warning.insertAdjacentHTML("beforeend","<br>"),this._warning.insertAdjacentText("beforeend",this._trans.__("To revoke access, go to File -> Hub Control Panel, and restart your server."))):this._warning.insertAdjacentText("beforeend",this._trans.__("Currently, there is no way to revoke access other than shutting down your server."))}else t&&(t.value=this._url),this._behindHub?this._warning.insertAdjacentText("beforeend",this._trans.__("Only users with `access:servers` permissions for this server will be able to use this link.")):this._warning.insertAdjacentText("beforeend",this._trans.__("Only authenticated users will be able to use this link."))}populateBody(e){if(e.insertAdjacentHTML("afterbegin",`<input readonly value="${this._url}">`),this._token){const t=e.appendChild(document.createElement("label"));t.insertAdjacentHTML("beforeend",'<input type="checkbox">'),this._tokenCheckbox=t.firstChild,t.insertAdjacentText("beforeend",this._trans.__("Include token in URL")),e.insertAdjacentElement("beforeend",this._warning),this.updateContent(!1)}}}const O=e=>{const{user:t}=e;return c.createElement("div",{className:"jp-UserInfo-Container"},c.createElement("div",{title:t.display_name,className:"jp-UserInfo-Icon",style:{backgroundColor:t.color}},c.createElement("span",null,t.initials)),c.createElement("h3",null,t.display_name))};class W extends l.Panel{constructor(e){super({}),this.addClass("jp-UserInfoPanel"),this._profile=e,this._body=null,this._profile.isReady?(this._body=new $(this._profile.identity),this.addWidget(this._body),this.update()):this._profile.ready.then((()=>{this._body=new $(this._profile.identity),this.addWidget(this._body),this.update()})).catch((e=>console.error(e)))}}class $ extends o.ReactWidget{constructor(e){super(),this._user=e}get user(){return this._user}set user(e){this._user=e,this.update()}render(){return c.createElement(O,{user:this._user})}}class J extends c.Component{constructor(e){var t;super(e),this._awarenessChange=()=>{var e;const t=null===(e=this._model)||void 0===e?void 0:e.sharedModel.awareness.getStates(),n=[];t&&t.forEach(((e,t)=>{e.user&&n.push({userId:t,userData:e.user})})),this.setState((e=>({...e,usersList:n})))},this._model=e.model,this._iconRenderer=null!==(t=e.iconRenderer)&&void 0!==t?t:null,this.state={usersList:[]}}static createWidget(e){return a.ReactWidget.create(c.createElement(J,{...e}))}componentDidMount(){var e;null===(e=this._model)||void 0===e||e.sharedModel.awareness.on("change",this._awarenessChange),this._awarenessChange()}filterDuplicated(e){var t;const n=[],r=new Set;for(const s of e)(null===(t=null==s?void 0:s.userData)||void 0===t?void 0:t.username)&&!r.has(s.userData.username)&&(r.add(s.userData.username),n.push(s));return n}render(){var e;const t=null!==(e=this._iconRenderer)&&void 0!==e?e:q;return c.createElement("div",{className:"jp-toolbar-users-item"},this.filterDuplicated(this.state.usersList).map((e=>{if(this._model&&e.userId!==this._model.sharedModel.awareness.clientID)return t({user:e,model:this._model})})))}}function q(e){let t;const{user:n,model:r,...s}=e,o=(0,a.classes)("lm-MenuBar-itemIcon",e.className||"");return t=n.userData.avatar_url?c.createElement("div",{...s,key:n.userId,title:n.userData.display_name,className:(0,a.classes)(o,"jp-MenuBar-imageIcon")},c.createElement("img",{src:n.userData.avatar_url,alt:""})):c.createElement("div",{...s,key:n.userId,title:n.userData.display_name,className:(0,a.classes)(o,"jp-MenuBar-anonymousIcon"),style:{backgroundColor:n.userData.color}},c.createElement("span",null,n.userData.initials)),t}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_jupyter_collaboration_extension=self.webpackChunk_jupyter_collaboration_extension||[]).push([[842],{4842:(e,r,a)=>{a.r(r),a.d(r,{default:()=>I});var o=a(9569),t=a(4608),n=a(
|
|
1
|
+
"use strict";(self.webpackChunk_jupyter_collaboration_extension=self.webpackChunk_jupyter_collaboration_extension||[]).push([[842],{4842:(e,r,a)=>{a.r(r),a.d(r,{default:()=>I});var o=a(9569),t=a(4608),n=a(1765),s=a(3797),i=a(6989),l=a(1808),c=a(7695),d=a(7135),u=a(7579),p=a(5256),m=a(6977),b=a(2206),y=a(7784);const w={id:"@jupyter/collaboration-extension:userMenu",description:"Provide connected user menu.",requires:[],provides:m.IUserMenu,activate:e=>{const{commands:r}=e,{user:a}=e.serviceManager;return new m.UserMenu({commands:r,user:a})}},v={id:"@jupyter/collaboration-extension:user-menu-bar",description:"Add user menu to the interface.",autoStart:!0,requires:[m.IUserMenu,o.IToolbarWidgetRegistry],activate:async(e,r,a)=>{const{user:o}=e.serviceManager,t=new p.MenuBar({forceItemsPosition:{forceX:!1,forceY:!1},renderer:new m.RendererUserMenu(o)});t.id="jp-UserMenu",o.userChanged.connect((()=>t.update())),t.addMenu(r),a.addFactory("TopBar","user-menu",(()=>t))}},g={id:"@jupyter/collaboration-extension:rtcGlobalAwareness",description:"Add global awareness to share working document of users.",requires:[d.IStateDB],provides:n.IGlobalAwareness,activate:(e,r)=>{const{user:a}=e.serviceManager,o=new b.Doc,t=new y.ww(o),n=c.ServerConnection.makeSettings(),i=l.URLExt.join(n.wsUrl,"api/collaboration/room");return new s.WebSocketAwarenessProvider({url:i,roomID:"JupyterLab:globalAwareness",awareness:t,user:a}),r.changed.connect((async()=>{var e,a;const o=(null===(a=null===(e=(await r.toJSON())["layout-restorer:data"])||void 0===e?void 0:e.main)||void 0===a?void 0:a.current)||"";o.match(/^\w+:.+/)?t.setLocalStateField("current",o):t.setLocalStateField("current",null)})),t}},h={id:"@jupyter/collaboration-extension:rtcPanel",description:"Add side panel to display all currently connected users.",autoStart:!0,requires:[n.IGlobalAwareness],optional:[u.ITranslator],activate:(e,r,a)=>{const{user:o}=e.serviceManager,t=(null!=a?a:u.nullTranslator).load("jupyter_collaboration"),n=new i.SidePanel({alignment:"justify"});n.id="jp-collaboration-panel",n.title.icon=i.usersIcon,n.title.caption=t.__("Collaboration"),n.addClass("jp-RTCPanel"),e.shell.add(n,"left",{rank:300});const s=new m.UserInfoPanel(o);s.title.label=t.__("User info"),s.title.caption=t.__("User information"),n.addWidget(s);const l=new m.CollaboratorsPanel(o,r,(r=>{e.commands.execute("docmanager:open",{path:r})}),e.docRegistry);l.title.label=t.__("Online Collaborators"),n.addWidget(l)}},_={id:"@jupyter/collaboration-extension:userEditorCursors",description:"Add CodeMirror extension to display remote user cursors and selections.",autoStart:!0,requires:[t.IEditorExtensionRegistry],activate:(e,r)=>{r.addExtension({name:"remote-user-cursors",factory(e){const{awareness:r,ysource:a}=e.model.sharedModel;return t.EditorExtensionRegistry.createImmutableExtension((0,m.remoteUserCursors)({awareness:r,ytext:a}))}})}};var x;!function(e){e.share="collaboration:shared-link"}(x||(x={}));const I=[w,v,g,h,{id:"@jupyter/collaboration-extension:shared-link",autoStart:!0,optional:[o.ICommandPalette,u.ITranslator],activate:async(e,r,a)=>{const{commands:t}=e,n=(null!=a?a:u.nullTranslator).load("collaboration");t.addCommand(x.share,{label:n.__("Generate a Shared Link"),icon:i.shareIcon,execute:async()=>{const e=await(0,m.showSharedLinkDialog)({translator:a});e.button.accept&&e.value&&o.Clipboard.copyToSystem(e.value)}}),r&&r.addItem({command:x.share,category:n.__("Server")})}},_]}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _JUPYTERLAB;(()=>{"use strict";var e,r,t,o,a,n,i,l,u,s,f,d,c,p,h,v,b,m,y,g,j,w,P,S={1998:(e,r,t)=>{var o={"./index":()=>Promise.all([t.e(784),t.e(825),t.e(30),t.e(256),t.e(695),t.e(206),t.e(842)]).then((()=>()=>t(4842))),"./extension":()=>Promise.all([t.e(784),t.e(825),t.e(30),t.e(256),t.e(695),t.e(206),t.e(842)]).then((()=>()=>t(4842))),"./style":()=>t.e(944).then((()=>()=>t(5944)))},a=(e,r)=>(t.R=r,r=t.o(o,e)?o[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),n=(e,r)=>{if(t.S){var o="default",a=t.S[o];if(a&&a!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[o]=e,t.I(o,r)}};t.d(r,{get:()=>a,init:()=>n})}},k={};function x(e){var r=k[e];if(void 0!==r)return r.exports;var t=k[e]={id:e,exports:{}};return S[e](t,t.exports,x),t.exports}x.m=S,x.c=k,x.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return x.d(r,{a:r}),r},x.d=(e,r)=>{for(var t in r)x.o(r,t)&&!x.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},x.f={},x.e=e=>Promise.all(Object.keys(x.f).reduce(((r,t)=>(x.f[t](e,r),r)),[])),x.u=e=>e+"."+{240:"4f15e81d1fc1df24427c",393:"a067b0dda2ff1016a0c4",444:"d6f3cc1c6d4b374efa63",784:"bef63745ca8c3075ff63",842:"7a80fcdbeab015d1f6ab",944:"11ca1e2ef2d2b459a91b",952:"8934cdeb03f9bd1e666f"}[e]+".js?v="+{240:"4f15e81d1fc1df24427c",393:"a067b0dda2ff1016a0c4",444:"d6f3cc1c6d4b374efa63",784:"bef63745ca8c3075ff63",842:"7a80fcdbeab015d1f6ab",944:"11ca1e2ef2d2b459a91b",952:"8934cdeb03f9bd1e666f"}[e],x.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),x.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e={},r="@jupyter/collaboration-extension:",x.l=(t,o,a,n)=>{if(e[t])e[t].push(o);else{var i,l;if(void 0!==a)for(var u=document.getElementsByTagName("script"),s=0;s<u.length;s++){var f=u[s];if(f.getAttribute("src")==t||f.getAttribute("data-webpack")==r+a){i=f;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,x.nc&&i.setAttribute("nonce",x.nc),i.setAttribute("data-webpack",r+a),i.src=t),e[t]=[o];var d=(r,o)=>{i.onerror=i.onload=null,clearTimeout(c);var a=e[t];if(delete e[t],i.parentNode&&i.parentNode.removeChild(i),a&&a.forEach((e=>e(o))),r)return r(o)},c=setTimeout(d.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=d.bind(null,i.onerror),i.onload=d.bind(null,i.onload),l&&document.head.appendChild(i)}},x.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{x.S={};var e={},r={};x.I=(t,o)=>{o||(o=[]);var a=r[t];if(a||(a=r[t]={}),!(o.indexOf(a)>=0)){if(o.push(a),e[t])return e[t];x.o(x.S,t)||(x.S[t]={});var n=x.S[t],i="@jupyter/collaboration-extension",l=(e,r,t,o)=>{var a=n[e]=n[e]||{},l=a[r];(!l||!l.loaded&&(!o!=!l.eager?o:i>l.from))&&(a[r]={get:t,from:i,eager:!!o})},u=[];return"default"===t&&(l("@jupyter/collaboration-extension","4.0.1",(()=>Promise.all([x.e(784),x.e(825),x.e(30),x.e(256),x.e(695),x.e(206),x.e(842)]).then((()=>()=>x(4842))))),l("@jupyter/collaboration","4.0.1",(()=>Promise.all([x.e(825),x.e(262),x.e(30),x.e(312),x.e(256),x.e(393)]).then((()=>()=>x(6393))))),l("@jupyter/collaborative-drive","4.0.1",(()=>Promise.all([x.e(262),x.e(444)]).then((()=>()=>x(444))))),l("@jupyter/docprovider","4.0.1",(()=>Promise.all([x.e(262),x.e(30),x.e(312),x.e(695),x.e(240)]).then((()=>()=>x(6240))))),l("y-websocket","1.5.4",(()=>Promise.all([x.e(784),x.e(952),x.e(825)]).then((()=>()=>x(2952)))))),e[t]=u.length?Promise.all(u).then((()=>e[t]=1)):1}}})(),(()=>{var e;x.g.importScripts&&(e=x.g.location+"");var r=x.g.document;if(!e&&r&&(r.currentScript&&"SCRIPT"===r.currentScript.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var o=t.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=t[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),x.p=e})(),t=e=>{var r=e=>e.split(".").map((e=>+e==e?+e:e)),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),o=t[1]?r(t[1]):[];return t[2]&&(o.length++,o.push.apply(o,r(t[2]))),t[3]&&(o.push([]),o.push.apply(o,r(t[3]))),o},o=(e,r)=>{e=t(e),r=t(r);for(var o=0;;){if(o>=e.length)return o<r.length&&"u"!=(typeof r[o])[0];var a=e[o],n=(typeof a)[0];if(o>=r.length)return"u"==n;var i=r[o],l=(typeof i)[0];if(n!=l)return"o"==n&&"n"==l||"s"==l||"u"==n;if("o"!=n&&"u"!=n&&a!=i)return a<i;o++}},a=e=>{var r=e[0],t="";if(1===e.length)return"*";if(r+.5){t+=0==r?">=":-1==r?"<":1==r?"^":2==r?"~":r>0?"=":"!=";for(var o=1,n=1;n<e.length;n++)o--,t+="u"==(typeof(l=e[n]))[0]?"-":(o>0?".":"")+(o=2,l);return t}var i=[];for(n=1;n<e.length;n++){var l=e[n];i.push(0===l?"not("+u()+")":1===l?"("+u()+" || "+u()+")":2===l?i.pop()+" "+i.pop():a(l))}return u();function u(){return i.pop().replace(/^\((.+)\)$/,"$1")}},n=(e,r)=>{if(0 in e){r=t(r);var o=e[0],a=o<0;a&&(o=-o-1);for(var i=0,l=1,u=!0;;l++,i++){var s,f,d=l<e.length?(typeof e[l])[0]:"";if(i>=r.length||"o"==(f=(typeof(s=r[i]))[0]))return!u||("u"==d?l>o&&!a:""==d!=a);if("u"==f){if(!u||"u"!=d)return!1}else if(u)if(d==f)if(l<=o){if(s!=e[l])return!1}else{if(a?s>e[l]:s<e[l])return!1;s!=e[l]&&(u=!1)}else if("s"!=d&&"n"!=d){if(a||l<=o)return!1;u=!1,l--}else{if(l<=o||f<d!=a)return!1;u=!1}else"s"!=d&&"n"!=d&&(u=!1,l--)}}var c=[],p=c.pop.bind(c);for(i=1;i<e.length;i++){var h=e[i];c.push(1==h?p()|p():2==h?p()&p():h?n(h,r):!p())}return!!p()},i=(e,r)=>e&&x.o(e,r),l=e=>(e.loaded=1,e.get()),u=e=>Object.keys(e).reduce(((r,t)=>(e[t].eager&&(r[t]=e[t]),r)),{}),s=(e,r,t,a)=>{var i=a?u(e[r]):e[r];return(r=Object.keys(i).reduce(((e,r)=>!n(t,r)||e&&!o(e,r)?e:r),0))&&i[r]},f=(e,r,t)=>{var a=t?u(e[r]):e[r];return Object.keys(a).reduce(((e,r)=>!e||!a[e].loaded&&o(e,r)?r:e),0)},d=(e,r,t,o)=>"Unsatisfied version "+t+" from "+(t&&e[r][t].from)+" of shared singleton module "+r+" (required "+a(o)+")",c=(e,r,t,o,n)=>{var i=e[t];return"No satisfying version ("+a(o)+")"+(n?" for eager consumption":"")+" of shared module "+t+" found in shared scope "+r+".\nAvailable versions: "+Object.keys(i).map((e=>e+" from "+i[e].from)).join(", ")},p=e=>{throw new Error(e)},h=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},b=(e,r,t)=>t?t():((e,r)=>p("Shared module "+r+" doesn't exist in shared scope "+e))(e,r),m=(v=e=>function(r,t,o,a,n){var i=x.I(r);return i&&i.then&&!o?i.then(e.bind(e,r,x.S[r],t,!1,a,n)):e(r,x.S[r],t,o,a,n)})(((e,r,t,o,a,n)=>{if(!i(r,t))return b(e,t,n);var u=s(r,t,a,o);return u?l(u):n?n():void p(c(r,e,t,a,o))})),y=v(((e,r,t,o,a,u)=>{if(!i(r,t))return b(e,t,u);var s=f(r,t,o);return n(a,s)||h(d(r,t,s,a)),l(r[t][s])})),g={},j={2206:()=>y("default","yjs",!1,[1,13,5,40]),1808:()=>y("default","@jupyterlab/coreutils",!1,[1,6,4,0]),6989:()=>y("default","@jupyterlab/ui-components",!1,[1,4,4,0]),7579:()=>y("default","@jupyterlab/translation",!1,[1,4,4,0]),9569:()=>y("default","@jupyterlab/apputils",!1,[1,4,5,0]),5256:()=>y("default","@lumino/widgets",!1,[1,2,3,1,,"alpha",0]),7695:()=>y("default","@jupyterlab/services",!1,[1,7,4,0]),1765:()=>y("default","@jupyter/collaborative-drive",!1,[1,4,0,1],(()=>Promise.all([x.e(262),x.e(444)]).then((()=>()=>x(444))))),3797:()=>y("default","@jupyter/docprovider",!1,[1,4,0,1],(()=>Promise.all([x.e(262),x.e(312),x.e(240)]).then((()=>()=>x(6240))))),4608:()=>y("default","@jupyterlab/codemirror",!1,[1,4,4,0]),6977:()=>y("default","@jupyter/collaboration",!1,[1,4,0,1],(()=>Promise.all([x.e(262),x.e(312),x.e(393)]).then((()=>()=>x(6393))))),7135:()=>y("default","@jupyterlab/statedb",!1,[1,4,4,0]),7262:()=>y("default","@lumino/coreutils",!1,[1,2,0,0]),3345:()=>y("default","react",!1,[1,18,2,0]),4602:()=>y("default","@lumino/signaling",!1,[1,2,0,0]),195:()=>y("default","@codemirror/state",!1,[1,6,2,0]),4873:()=>y("default","@lumino/virtualdom",!1,[1,2,0,0]),5024:()=>y("default","@codemirror/view",!1,[1,6,9,6]),3560:()=>m("default","y-websocket",!1,[1,1,3,15],(()=>Promise.all([x.e(784),x.e(952),x.e(825)]).then((()=>()=>x(2952)))))},w={30:[1808,6989,7579,9569],206:[1765,3797,4608,6977,7135],240:[3560],256:[5256],262:[7262],312:[3345,4602],393:[195,4873,5024],695:[7695],825:[2206]},P={},x.f.consumes=(e,r)=>{x.o(w,e)&&w[e].forEach((e=>{if(x.o(g,e))return r.push(g[e]);if(!P[e]){var t=r=>{g[e]=0,x.m[e]=t=>{delete x.c[e],t.exports=r()}};P[e]=!0;var o=r=>{delete g[e],x.m[e]=t=>{throw delete x.c[e],r}};try{var a=j[e]();a.then?r.push(g[e]=a.then(t).catch(o)):t(a)}catch(e){o(e)}}}))},(()=>{var e={270:0};x.f.j=(r,t)=>{var o=x.o(e,r)?e[r]:void 0;if(0!==o)if(o)t.push(o[2]);else if(/^(2(06|56|62)|30|312|695|825)$/.test(r))e[r]=0;else{var a=new Promise(((t,a)=>o=e[r]=[t,a]));t.push(o[2]=a);var n=x.p+x.u(r),i=new Error;x.l(n,(t=>{if(x.o(e,r)&&(0!==(o=e[r])&&(e[r]=void 0),o)){var a=t&&("load"===t.type?"missing":t.type),n=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+a+": "+n+")",i.name="ChunkLoadError",i.type=a,i.request=n,o[1](i)}}),"chunk-"+r,r)}};var r=(r,t)=>{var o,a,[n,i,l]=t,u=0;if(n.some((r=>0!==e[r]))){for(o in i)x.o(i,o)&&(x.m[o]=i[o]);l&&l(x)}for(r&&r(t);u<n.length;u++)a=n[u],x.o(e,a)&&e[a]&&e[a][0](),e[a]=0},t=self.webpackChunk_jupyter_collaboration_extension=self.webpackChunk_jupyter_collaboration_extension||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),x.nc=void 0;var E=x(1998);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB)["@jupyter/collaboration-extension"]=E})();
|
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
"packages": [
|
|
3
3
|
{
|
|
4
4
|
"name": "@jupyter/collaboration",
|
|
5
|
-
"versionInfo": "4.0.
|
|
5
|
+
"versionInfo": "4.0.1",
|
|
6
6
|
"licenseId": "BSD-3-Clause",
|
|
7
7
|
"extractedText": ""
|
|
8
8
|
},
|
|
9
9
|
{
|
|
10
10
|
"name": "@jupyter/collaborative-drive",
|
|
11
|
-
"versionInfo": "4.0.
|
|
11
|
+
"versionInfo": "4.0.1",
|
|
12
12
|
"licenseId": "BSD-3-Clause",
|
|
13
13
|
"extractedText": ""
|
|
14
14
|
},
|
|
15
15
|
{
|
|
16
16
|
"name": "@jupyter/docprovider",
|
|
17
|
-
"versionInfo": "4.0.
|
|
17
|
+
"versionInfo": "4.0.1",
|
|
18
18
|
"licenseId": "BSD-3-Clause",
|
|
19
19
|
"extractedText": ""
|
|
20
20
|
},
|
|
@@ -177,7 +177,7 @@ export function Collaborator(props: {
|
|
|
177
177
|
?.getFileTypesForPath(document)
|
|
178
178
|
?.filter(ft => ft.icon !== undefined);
|
|
179
179
|
const icon = fileTypes?.length ? fileTypes[0].icon : fileIcon;
|
|
180
|
-
const iconClass: string | undefined = fileTypes
|
|
180
|
+
const iconClass: string | undefined = fileTypes?.length
|
|
181
181
|
? fileTypes[0].iconClass
|
|
182
182
|
: undefined;
|
|
183
183
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyter/collaboration-extension",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "JupyterLab - Real-Time Collaboration Extension",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jupyter",
|
|
@@ -53,9 +53,9 @@
|
|
|
53
53
|
"watch:labextension": "jupyter labextension watch ."
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@jupyter/collaboration": "^4.0.
|
|
57
|
-
"@jupyter/collaborative-drive": "^4.0.
|
|
58
|
-
"@jupyter/docprovider": "^4.0.
|
|
56
|
+
"@jupyter/collaboration": "^4.0.1",
|
|
57
|
+
"@jupyter/collaborative-drive": "^4.0.1",
|
|
58
|
+
"@jupyter/docprovider": "^4.0.1",
|
|
59
59
|
"@jupyter/ydoc": "^2.1.3 || ^3.0.0",
|
|
60
60
|
"@jupyterlab/application": "^4.4.0",
|
|
61
61
|
"@jupyterlab/apputils": "^4.4.0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyter/docprovider",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "JupyterLab - Document Provider",
|
|
5
5
|
"homepage": "https://github.com/jupyterlab/jupyter-collaboration",
|
|
6
6
|
"bugs": {
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"watch": "tsc -b --watch"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@jupyter/collaborative-drive": "^4.0.
|
|
44
|
+
"@jupyter/collaborative-drive": "^4.0.1",
|
|
45
45
|
"@jupyter/ydoc": "^2.1.3 || ^3.0.0",
|
|
46
46
|
"@jupyterlab/apputils": "^4.4.0",
|
|
47
47
|
"@jupyterlab/cells": "^4.4.0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyter/docprovider-extension",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "JupyterLab - Collaborative Shared Models",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jupyter",
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
"watch:labextension": "jupyter labextension watch ."
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@jupyter/collaborative-drive": "^4.0.
|
|
57
|
-
"@jupyter/docprovider": "^4.0.
|
|
56
|
+
"@jupyter/collaborative-drive": "^4.0.1",
|
|
57
|
+
"@jupyter/docprovider": "^4.0.1",
|
|
58
58
|
"@jupyter/ydoc": "^2.1.3 || ^3.0.0",
|
|
59
59
|
"@jupyterlab/application": "^4.4.0",
|
|
60
60
|
"@jupyterlab/apputils": "^4.4.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "2.0.0rc0"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_jupyter_collaboration_extension=self.webpackChunk_jupyter_collaboration_extension||[]).push([[393],{6393:(e,t,n)=>{n.r(t),n.d(t,{Collaborator:()=>w,CollaboratorsBody:()=>y,CollaboratorsPanel:()=>b,DefaultIconRenderer:()=>q,IUserMenu:()=>s,RendererUserMenu:()=>T,UserInfoBody:()=>$,UserInfoPanel:()=>W,UserMenu:()=>N,UsersItem:()=>J,remoteUserCursors:()=>P,showSharedLinkDialog:()=>F});var r=n(7262);const s=new r.Token("@jupyter/collaboration:IUserMenu");var o=n(9569),a=n(6989),i=n(4602),l=n(5256),c=n(3345),d=n.n(c);const u="jp-CollaboratorsList",h="jp-Collaborator",m="jp-CollaboratorHeader",p="jp-CollaboratorHeaderCollapser",f="jp-ClickableCollaborator",_="jp-CollaboratorIcon",v="jp-CollaboratorFiles",g="jp-CollaboratorFile";class b extends l.Panel{constructor(e,t,n,r){super({}),this._onAwarenessChanged=()=>{const e=this._awareness.getStates(),t=new Map;e.forEach(((e,n)=>{if(this._currentUser.isReady&&e.user&&e.user.username!==this._currentUser.identity.username){const n=`${e.user.username}-${e.current||"no-current"}`;t.has(n)||t.set(n,e)}})),this._collaboratorsChanged.emit(Array.from(t.values()))},this._collaboratorsChanged=new i.Signal(this),this._awareness=t,this._currentUser=e,this.addClass("jp-CollaboratorsPanel"),this.addWidget(o.ReactWidget.create(d().createElement(y,{fileopener:n,collaboratorsChanged:this._collaboratorsChanged,docRegistry:r}))),this._awareness.on("change",this._onAwarenessChanged)}}function y(e){const[t,n]=(0,c.useState)([]);return e.collaboratorsChanged.connect(((e,t)=>{n(t)})),d().createElement("div",{className:u},t.map((t=>{const n=`${t.user.username}-${t.current||"no-current"}`;return d().createElement(w,{key:n,collaborator:t,fileopener:e.fileopener,docRegistry:e.docRegistry})})))}function w(e){const[t,n]=(0,c.useState)(!1),{collaborator:r,fileopener:s}=e;let o="";if(r.current){const e=r.current.split(":");o=`${e[1]}`}const i=r.documents||[],l=i.map((t=>{var n,r;const s=null===(r=null===(n=e.docRegistry)||void 0===n?void 0:n.getFileTypesForPath(t))||void 0===r?void 0:r.filter((e=>void 0!==e.icon)),o=(null==s?void 0:s.length)?s[0].icon:a.fileIcon,i=s?s[0].iconClass:void 0;return{filename:t.length>40?t.slice(0,10).concat("…").concat(t.slice(t.length-15)):t,fileLocation:t,icon:o,iconClass:i}}));return d().createElement("div",{className:h},d().createElement("div",{className:l.length?`${f} ${m}`:m,onClick:i?()=>{l.length&&n(!t)}:void 0},d().createElement(a.LabIcon.resolveReact,{icon:a.caretDownIcon,className:p+(t?" jp-mod-expanded":""),tag:"div"}),d().createElement("div",{className:_,style:{backgroundColor:r.user.color}},d().createElement("span",null,r.user.initials)),d().createElement("span",null,r.user.display_name)),d().createElement("div",{className:`${v} jp-DirListing`,style:t?{}:{display:"none"}},d().createElement("ul",{className:"jp-DirListing-content"},l.map((e=>d().createElement("li",{className:"jp-DirListing-item "+(e.fileLocation===o?`${g} jp-mod-running`:g),key:e.filename,onClick:()=>s(e.fileLocation)},d().createElement(a.LabIcon.resolveReact,{icon:e.icon,iconClass:e.iconClass,tag:"span",className:"jp-DirListing-itemIcon",stylesheet:"listing"}),d().createElement("span",{className:"jp-DirListing-itemText",title:e.fileLocation},e.filename)))))))}var C=n(195),k=n(5024),j=n(2206);const x=C.Facet.define({combine:e=>e[e.length-1]}),I=k.EditorView.baseTheme({".jp-remote-cursor":{borderLeft:"1px solid black",marginLeft:"-1px"},".jp-remote-cursor.jp-mod-primary":{borderLeftWidth:"2px"},".jp-remote-selection":{opacity:.5},".cm-tooltip":{border:"none"},".cm-tooltip .jp-remote-userInfo":{color:"var(--jp-ui-inverse-font-color0)",padding:"0px 2px"}}),E=C.Annotation.define();class L{constructor(e,t){this.style=e,this.marker=t}draw(){const e=this.marker.draw();for(const[t,n]of Object.entries(this.style))e.style[t]=n;return e}eq(e){return this.marker.eq(e.marker)&&r.JSONExt.deepEqual(this.style,e.style)}update(e,t){for(const[t,n]of Object.entries(this.style))e.style[t]=n;return this.marker.update(e,t.marker)}}const A=(0,k.layer)({above:!0,markers(e){const{awareness:t,ytext:n}=e.state.facet(x),r=n.doc,s=[];return t.getStates().forEach(((o,a)=>{var i,l,c;if(a===t.doc.clientID)return;const d=o.cursors;for(const t of null!=d?d:[]){if(!(null==t?void 0:t.anchor)||!(null==t?void 0:t.head))return;const a=(0,j.createAbsolutePositionFromRelativePosition)(t.anchor,r),d=(0,j.createAbsolutePositionFromRelativePosition)(t.head,r);if((null==a?void 0:a.type)!==n||(null==d?void 0:d.type)!==n)return;const u=null===(i=t.primary)||void 0===i||i?"jp-remote-cursor jp-mod-primary":"jp-remote-cursor",h=C.EditorSelection.cursor(d.index,d.index>a.index?-1:1);for(const t of k.RectangleMarker.forRange(e,u,h))s.push(new L({borderLeftColor:null!==(c=null===(l=o.user)||void 0===l?void 0:l.color)&&void 0!==c?c:"black"},t))}})),s},update:(e,t)=>!!e.transactions.find((e=>e.annotation(E))),class:"jp-remote-cursors"}),R=(0,k.hoverTooltip)(((e,t)=>{var n;const{awareness:r,ytext:s}=e.state.facet(x),o=s.doc;for(const[e,a]of r.getStates())if(e!==r.doc.clientID)for(const e of null!==(n=a.cursors)&&void 0!==n?n:[]){if(!(null==e?void 0:e.head))continue;const n=(0,j.createAbsolutePositionFromRelativePosition)(e.head,o);if((null==n?void 0:n.type)===s&&n.index-3<=t&&t<=n.index+3)return{pos:n.index,above:!0,create:()=>{var e,t,n,r;const s=document.createElement("div");return s.classList.add("jp-remote-userInfo"),s.style.backgroundColor=null!==(t=null===(e=a.user)||void 0===e?void 0:e.color)&&void 0!==t?t:"darkgrey",s.textContent=null!==(r=null===(n=a.user)||void 0===n?void 0:n.display_name)&&void 0!==r?r:"Anonymous",{dom:s}}}}return null}),{hideOn:(e,t)=>!!e.annotation(E),hoverTime:0}),D=(0,k.layer)({above:!1,markers(e){const{awareness:t,ytext:n}=e.state.facet(x),r=n.doc,s=[];return t.getStates().forEach(((o,a)=>{var i,l,c;if(a===t.doc.clientID)return;const d=o.cursors;for(const t of null!=d?d:[]){if(null===(i=t.empty)||void 0===i||i||!(null==t?void 0:t.anchor)||!(null==t?void 0:t.head))return;const a=(0,j.createAbsolutePositionFromRelativePosition)(t.anchor,r),d=(0,j.createAbsolutePositionFromRelativePosition)(t.head,r);if((null==a?void 0:a.type)!==n||(null==d?void 0:d.type)!==n)return;const u="jp-remote-selection";for(const t of k.RectangleMarker.forRange(e,u,C.EditorSelection.range(a.index,d.index)))s.push(new L({backgroundColor:null!==(c=null===(l=o.user)||void 0===l?void 0:l.color)&&void 0!==c?c:"black"},t))}})),s},update:(e,t)=>!!e.transactions.find((e=>e.annotation(E))),class:"jp-remote-selections"}),M=k.ViewPlugin.fromClass(class{constructor(e){this.editorAwareness=e.state.facet(x),this._listener=({added:t,updated:n,removed:r})=>{t.concat(n).concat(r).findIndex((e=>e!==this.editorAwareness.awareness.doc.clientID))>=0&&e.dispatch({annotations:[E.of([])]})},this.editorAwareness.awareness.on("change",this._listener)}destroy(){this.editorAwareness.awareness.off("change",this._listener)}update(e){var t;if(!e.docChanged&&!e.selectionSet)return;const{awareness:n,ytext:s}=this.editorAwareness,o=n.getLocalState();if(o){const a=e.view.hasFocus&&e.view.dom.ownerDocument.hasFocus(),i=e.state.selection,l=new Array;if(a&&i){for(const e of i.ranges){const t=e===i.main,n=(0,j.createRelativePositionFromTypeIndex)(s,e.anchor),r=(0,j.createRelativePositionFromTypeIndex)(s,e.head);l.push({anchor:n,head:r,primary:t,empty:e.empty})}if(!o.cursors||l.length>0){const e=null===(t=o.cursors)||void 0===t?void 0:t.map((e=>({...e,anchor:(null==e?void 0:e.anchor)?(0,j.createRelativePositionFromJSON)(e.anchor):null,head:(null==e?void 0:e.head)?(0,j.createRelativePositionFromJSON)(e.head):null})));r.JSONExt.deepEqual(l,e)||n.setLocalStateField("cursors",l)}}}}},{provide:()=>[I,A,D,R,(0,k.tooltips)({position:"absolute",parent:document.body})]});function P(e){return[x.of(e),M]}var S=n(4873);class T extends l.MenuBar.Renderer{constructor(e){super(),this._user=e}renderItem(e){const t=this.createItemClass(e),n=this.createItemDataset(e),r=this.createItemARIA(e);return S.h.li({className:t,dataset:n,tabindex:"0",onfocus:e.onfocus,...r},this._createUserIcon(),this.renderLabel(e),this.renderIcon(e))}renderLabel(e){const t=this.formatLabel(e);return S.h.div({className:"lm-MenuBar-itemLabel jp-MenuBar-label"},t)}_createUserIcon(){return this._user.isReady&&this._user.identity.avatar_url?S.h.div({className:"lm-MenuBar-itemIcon jp-MenuBar-imageIcon"},S.h.img({src:this._user.identity.avatar_url})):this._user.isReady?S.h.div({className:"lm-MenuBar-itemIcon jp-MenuBar-anonymousIcon",style:{backgroundColor:this._user.identity.color}},S.h.span({},this._user.identity.initials)):S.h.div({className:"lm-MenuBar-itemIcon jp-MenuBar-anonymousIcon"},a.userIcon)}}class N extends l.Menu{constructor(e){super(e)}}var U=n(1808),B=n(7579);async function F({translator:e}){const t=(null!=e?e:B.nullTranslator).load("collaboration"),n=U.PageConfig.getToken(),r=new URL(U.URLExt.normalize(U.PageConfig.getUrl({workspace:U.PageConfig.defaultWorkspace})));return(0,o.showDialog)({title:t.__("Share Jupyter Server Link"),body:new H(r.toString(),n,""!==U.PageConfig.getOption("hubUser"),t),buttons:[o.Dialog.cancelButton(),o.Dialog.okButton({label:t.__("Copy Link"),caption:t.__("Copy the link to the Jupyter Server")})]})}class H extends l.Widget{constructor(e,t,n,r){super(),this._url=e,this._token=t,this._behindHub=n,this._trans=r,this._tokenCheckbox=null,this.onTokenChange=e=>{const t=e.target;this.updateContent(null==t?void 0:t.checked)},this._warning=document.createElement("div"),this.populateBody(this.node),this.addClass("jp-shared-link-body")}getValue(){var e;if(!0===(null===(e=this._tokenCheckbox)||void 0===e?void 0:e.checked)){const e=new URL(this._url);return e.searchParams.set("token",this._token),e.toString()}return this._url}onAfterAttach(e){var t;super.onAfterAttach(e),null===(t=this._tokenCheckbox)||void 0===t||t.addEventListener("change",this.onTokenChange)}onBeforeDetach(e){var t;null===(t=this._tokenCheckbox)||void 0===t||t.removeEventListener("change",this.onTokenChange),super.onBeforeDetach(e)}updateContent(e){this._warning.innerHTML="";const t=this.node.querySelector("input[readonly]");if(e){if(t){const e=new URL(this._url);e.searchParams.set("token",this._token.slice(0,5)),t.value=e.toString()+"…"}this._warning.appendChild(document.createElement("h3")).textContent=this._trans.__("Security warning!"),this._warning.insertAdjacentText("beforeend",this._trans.__("Anyone with this link has full access to your notebook server, including all your files!")),this._warning.insertAdjacentHTML("beforeend","<br>"),this._warning.insertAdjacentText("beforeend",this._trans.__("Please be careful who you share it with.")),this._warning.insertAdjacentHTML("beforeend","<br>"),this._behindHub?(this._warning.insertAdjacentText("beforeend",this._trans.__("They will be able to access this server AS YOU.")),this._warning.insertAdjacentHTML("beforeend","<br>"),this._warning.insertAdjacentText("beforeend",this._trans.__("To revoke access, go to File -> Hub Control Panel, and restart your server."))):this._warning.insertAdjacentText("beforeend",this._trans.__("Currently, there is no way to revoke access other than shutting down your server."))}else t&&(t.value=this._url),this._behindHub?this._warning.insertAdjacentText("beforeend",this._trans.__("Only users with `access:servers` permissions for this server will be able to use this link.")):this._warning.insertAdjacentText("beforeend",this._trans.__("Only authenticated users will be able to use this link."))}populateBody(e){if(e.insertAdjacentHTML("afterbegin",`<input readonly value="${this._url}">`),this._token){const t=e.appendChild(document.createElement("label"));t.insertAdjacentHTML("beforeend",'<input type="checkbox">'),this._tokenCheckbox=t.firstChild,t.insertAdjacentText("beforeend",this._trans.__("Include token in URL")),e.insertAdjacentElement("beforeend",this._warning),this.updateContent(!1)}}}const O=e=>{const{user:t}=e;return c.createElement("div",{className:"jp-UserInfo-Container"},c.createElement("div",{title:t.display_name,className:"jp-UserInfo-Icon",style:{backgroundColor:t.color}},c.createElement("span",null,t.initials)),c.createElement("h3",null,t.display_name))};class W extends l.Panel{constructor(e){super({}),this.addClass("jp-UserInfoPanel"),this._profile=e,this._body=null,this._profile.isReady?(this._body=new $(this._profile.identity),this.addWidget(this._body),this.update()):this._profile.ready.then((()=>{this._body=new $(this._profile.identity),this.addWidget(this._body),this.update()})).catch((e=>console.error(e)))}}class $ extends o.ReactWidget{constructor(e){super(),this._user=e}get user(){return this._user}set user(e){this._user=e,this.update()}render(){return c.createElement(O,{user:this._user})}}class J extends c.Component{constructor(e){var t;super(e),this._awarenessChange=()=>{var e;const t=null===(e=this._model)||void 0===e?void 0:e.sharedModel.awareness.getStates(),n=[];t&&t.forEach(((e,t)=>{e.user&&n.push({userId:t,userData:e.user})})),this.setState((e=>({...e,usersList:n})))},this._model=e.model,this._iconRenderer=null!==(t=e.iconRenderer)&&void 0!==t?t:null,this.state={usersList:[]}}static createWidget(e){return a.ReactWidget.create(c.createElement(J,{...e}))}componentDidMount(){var e;null===(e=this._model)||void 0===e||e.sharedModel.awareness.on("change",this._awarenessChange),this._awarenessChange()}filterDuplicated(e){var t;const n=[],r=new Set;for(const s of e)(null===(t=null==s?void 0:s.userData)||void 0===t?void 0:t.username)&&!r.has(s.userData.username)&&(r.add(s.userData.username),n.push(s));return n}render(){var e;const t=null!==(e=this._iconRenderer)&&void 0!==e?e:q;return c.createElement("div",{className:"jp-toolbar-users-item"},this.filterDuplicated(this.state.usersList).map((e=>{if(this._model&&e.userId!==this._model.sharedModel.awareness.clientID)return t({user:e,model:this._model})})))}}function q(e){let t;const{user:n,model:r,...s}=e,o=(0,a.classes)("lm-MenuBar-itemIcon",e.className||"");return t=n.userData.avatar_url?c.createElement("div",{...s,key:n.userId,title:n.userData.display_name,className:(0,a.classes)(o,"jp-MenuBar-imageIcon")},c.createElement("img",{src:n.userData.avatar_url,alt:""})):c.createElement("div",{...s,key:n.userId,title:n.userData.display_name,className:(0,a.classes)(o,"jp-MenuBar-anonymousIcon"),style:{backgroundColor:n.userData.color}},c.createElement("span",null,n.userData.initials)),t}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var _JUPYTERLAB;(()=>{"use strict";var e,r,t,o,a,n,i,l,u,s,d,f,c,p,h,v,b,m,y,g,j,w,P,S={1998:(e,r,t)=>{var o={"./index":()=>Promise.all([t.e(784),t.e(206),t.e(30),t.e(256),t.e(695),t.e(711),t.e(842)]).then((()=>()=>t(4842))),"./extension":()=>Promise.all([t.e(784),t.e(206),t.e(30),t.e(256),t.e(695),t.e(711),t.e(842)]).then((()=>()=>t(4842))),"./style":()=>t.e(944).then((()=>()=>t(5944)))},a=(e,r)=>(t.R=r,r=t.o(o,e)?o[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),n=(e,r)=>{if(t.S){var o="default",a=t.S[o];if(a&&a!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[o]=e,t.I(o,r)}};t.d(r,{get:()=>a,init:()=>n})}},k={};function x(e){var r=k[e];if(void 0!==r)return r.exports;var t=k[e]={id:e,exports:{}};return S[e](t,t.exports,x),t.exports}x.m=S,x.c=k,x.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return x.d(r,{a:r}),r},x.d=(e,r)=>{for(var t in r)x.o(r,t)&&!x.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},x.f={},x.e=e=>Promise.all(Object.keys(x.f).reduce(((r,t)=>(x.f[t](e,r),r)),[])),x.u=e=>e+"."+{240:"4f15e81d1fc1df24427c",393:"d987e9c44d574193d8d7",444:"d6f3cc1c6d4b374efa63",784:"bef63745ca8c3075ff63",842:"4dce86ebbe830eb66c85",944:"11ca1e2ef2d2b459a91b",952:"8934cdeb03f9bd1e666f"}[e]+".js?v="+{240:"4f15e81d1fc1df24427c",393:"d987e9c44d574193d8d7",444:"d6f3cc1c6d4b374efa63",784:"bef63745ca8c3075ff63",842:"4dce86ebbe830eb66c85",944:"11ca1e2ef2d2b459a91b",952:"8934cdeb03f9bd1e666f"}[e],x.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),x.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e={},r="@jupyter/collaboration-extension:",x.l=(t,o,a,n)=>{if(e[t])e[t].push(o);else{var i,l;if(void 0!==a)for(var u=document.getElementsByTagName("script"),s=0;s<u.length;s++){var d=u[s];if(d.getAttribute("src")==t||d.getAttribute("data-webpack")==r+a){i=d;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,x.nc&&i.setAttribute("nonce",x.nc),i.setAttribute("data-webpack",r+a),i.src=t),e[t]=[o];var f=(r,o)=>{i.onerror=i.onload=null,clearTimeout(c);var a=e[t];if(delete e[t],i.parentNode&&i.parentNode.removeChild(i),a&&a.forEach((e=>e(o))),r)return r(o)},c=setTimeout(f.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=f.bind(null,i.onerror),i.onload=f.bind(null,i.onload),l&&document.head.appendChild(i)}},x.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{x.S={};var e={},r={};x.I=(t,o)=>{o||(o=[]);var a=r[t];if(a||(a=r[t]={}),!(o.indexOf(a)>=0)){if(o.push(a),e[t])return e[t];x.o(x.S,t)||(x.S[t]={});var n=x.S[t],i="@jupyter/collaboration-extension",l=(e,r,t,o)=>{var a=n[e]=n[e]||{},l=a[r];(!l||!l.loaded&&(!o!=!l.eager?o:i>l.from))&&(a[r]={get:t,from:i,eager:!!o})},u=[];return"default"===t&&(l("@jupyter/collaboration-extension","4.0.0-rc.0",(()=>Promise.all([x.e(784),x.e(206),x.e(30),x.e(256),x.e(695),x.e(711),x.e(842)]).then((()=>()=>x(4842))))),l("@jupyter/collaboration","4.0.0-rc.0",(()=>Promise.all([x.e(206),x.e(262),x.e(30),x.e(312),x.e(256),x.e(393)]).then((()=>()=>x(6393))))),l("@jupyter/collaborative-drive","4.0.0-rc.0",(()=>Promise.all([x.e(262),x.e(444)]).then((()=>()=>x(444))))),l("@jupyter/docprovider","4.0.0-rc.0",(()=>Promise.all([x.e(262),x.e(30),x.e(312),x.e(695),x.e(240)]).then((()=>()=>x(6240))))),l("y-websocket","1.5.4",(()=>Promise.all([x.e(784),x.e(952),x.e(206)]).then((()=>()=>x(2952)))))),e[t]=u.length?Promise.all(u).then((()=>e[t]=1)):1}}})(),(()=>{var e;x.g.importScripts&&(e=x.g.location+"");var r=x.g.document;if(!e&&r&&(r.currentScript&&"SCRIPT"===r.currentScript.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var o=t.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=t[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),x.p=e})(),t=e=>{var r=e=>e.split(".").map((e=>+e==e?+e:e)),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),o=t[1]?r(t[1]):[];return t[2]&&(o.length++,o.push.apply(o,r(t[2]))),t[3]&&(o.push([]),o.push.apply(o,r(t[3]))),o},o=(e,r)=>{e=t(e),r=t(r);for(var o=0;;){if(o>=e.length)return o<r.length&&"u"!=(typeof r[o])[0];var a=e[o],n=(typeof a)[0];if(o>=r.length)return"u"==n;var i=r[o],l=(typeof i)[0];if(n!=l)return"o"==n&&"n"==l||"s"==l||"u"==n;if("o"!=n&&"u"!=n&&a!=i)return a<i;o++}},a=e=>{var r=e[0],t="";if(1===e.length)return"*";if(r+.5){t+=0==r?">=":-1==r?"<":1==r?"^":2==r?"~":r>0?"=":"!=";for(var o=1,n=1;n<e.length;n++)o--,t+="u"==(typeof(l=e[n]))[0]?"-":(o>0?".":"")+(o=2,l);return t}var i=[];for(n=1;n<e.length;n++){var l=e[n];i.push(0===l?"not("+u()+")":1===l?"("+u()+" || "+u()+")":2===l?i.pop()+" "+i.pop():a(l))}return u();function u(){return i.pop().replace(/^\((.+)\)$/,"$1")}},n=(e,r)=>{if(0 in e){r=t(r);var o=e[0],a=o<0;a&&(o=-o-1);for(var i=0,l=1,u=!0;;l++,i++){var s,d,f=l<e.length?(typeof e[l])[0]:"";if(i>=r.length||"o"==(d=(typeof(s=r[i]))[0]))return!u||("u"==f?l>o&&!a:""==f!=a);if("u"==d){if(!u||"u"!=f)return!1}else if(u)if(f==d)if(l<=o){if(s!=e[l])return!1}else{if(a?s>e[l]:s<e[l])return!1;s!=e[l]&&(u=!1)}else if("s"!=f&&"n"!=f){if(a||l<=o)return!1;u=!1,l--}else{if(l<=o||d<f!=a)return!1;u=!1}else"s"!=f&&"n"!=f&&(u=!1,l--)}}var c=[],p=c.pop.bind(c);for(i=1;i<e.length;i++){var h=e[i];c.push(1==h?p()|p():2==h?p()&p():h?n(h,r):!p())}return!!p()},i=(e,r)=>e&&x.o(e,r),l=e=>(e.loaded=1,e.get()),u=e=>Object.keys(e).reduce(((r,t)=>(e[t].eager&&(r[t]=e[t]),r)),{}),s=(e,r,t,a)=>{var i=a?u(e[r]):e[r];return(r=Object.keys(i).reduce(((e,r)=>!n(t,r)||e&&!o(e,r)?e:r),0))&&i[r]},d=(e,r,t)=>{var a=t?u(e[r]):e[r];return Object.keys(a).reduce(((e,r)=>!e||!a[e].loaded&&o(e,r)?r:e),0)},f=(e,r,t,o)=>"Unsatisfied version "+t+" from "+(t&&e[r][t].from)+" of shared singleton module "+r+" (required "+a(o)+")",c=(e,r,t,o,n)=>{var i=e[t];return"No satisfying version ("+a(o)+")"+(n?" for eager consumption":"")+" of shared module "+t+" found in shared scope "+r+".\nAvailable versions: "+Object.keys(i).map((e=>e+" from "+i[e].from)).join(", ")},p=e=>{throw new Error(e)},h=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},b=(e,r,t)=>t?t():((e,r)=>p("Shared module "+r+" doesn't exist in shared scope "+e))(e,r),m=(v=e=>function(r,t,o,a,n){var i=x.I(r);return i&&i.then&&!o?i.then(e.bind(e,r,x.S[r],t,!1,a,n)):e(r,x.S[r],t,o,a,n)})(((e,r,t,o,a,n)=>{if(!i(r,t))return b(e,t,n);var u=s(r,t,a,o);return u?l(u):n?n():void p(c(r,e,t,a,o))})),y=v(((e,r,t,o,a,u)=>{if(!i(r,t))return b(e,t,u);var s=d(r,t,o);return n(a,s)||h(f(r,t,s,a)),l(r[t][s])})),g={},j={2206:()=>y("default","yjs",!1,[1,13,5,40]),1808:()=>y("default","@jupyterlab/coreutils",!1,[1,6,4,0]),6989:()=>y("default","@jupyterlab/ui-components",!1,[1,4,4,0]),7579:()=>y("default","@jupyterlab/translation",!1,[1,4,4,0]),9569:()=>y("default","@jupyterlab/apputils",!1,[1,4,5,0]),5256:()=>y("default","@lumino/widgets",!1,[1,2,3,1,,"alpha",0]),7695:()=>y("default","@jupyterlab/services",!1,[1,7,4,0]),4608:()=>y("default","@jupyterlab/codemirror",!1,[1,4,4,0]),5130:()=>y("default","@jupyter/collaborative-drive",!1,[1,4,0,0,,"rc",0],(()=>Promise.all([x.e(262),x.e(444)]).then((()=>()=>x(444))))),7135:()=>y("default","@jupyterlab/statedb",!1,[1,4,4,0]),7872:()=>y("default","@jupyter/docprovider",!1,[1,4,0,0,,"rc",0],(()=>Promise.all([x.e(262),x.e(312),x.e(240)]).then((()=>()=>x(6240))))),8700:()=>y("default","@jupyter/collaboration",!1,[1,4,0,0,,"rc",0],(()=>Promise.all([x.e(262),x.e(312),x.e(393)]).then((()=>()=>x(6393))))),7262:()=>y("default","@lumino/coreutils",!1,[1,2,0,0]),3345:()=>y("default","react",!1,[1,18,2,0]),4602:()=>y("default","@lumino/signaling",!1,[1,2,0,0]),195:()=>y("default","@codemirror/state",!1,[1,6,2,0]),4873:()=>y("default","@lumino/virtualdom",!1,[1,2,0,0]),5024:()=>y("default","@codemirror/view",!1,[1,6,9,6]),3560:()=>m("default","y-websocket",!1,[1,1,3,15],(()=>Promise.all([x.e(784),x.e(952),x.e(206)]).then((()=>()=>x(2952)))))},w={30:[1808,6989,7579,9569],206:[2206],240:[3560],256:[5256],262:[7262],312:[3345,4602],393:[195,4873,5024],695:[7695],711:[4608,5130,7135,7872,8700]},P={},x.f.consumes=(e,r)=>{x.o(w,e)&&w[e].forEach((e=>{if(x.o(g,e))return r.push(g[e]);if(!P[e]){var t=r=>{g[e]=0,x.m[e]=t=>{delete x.c[e],t.exports=r()}};P[e]=!0;var o=r=>{delete g[e],x.m[e]=t=>{throw delete x.c[e],r}};try{var a=j[e]();a.then?r.push(g[e]=a.then(t).catch(o)):t(a)}catch(e){o(e)}}}))},(()=>{var e={270:0};x.f.j=(r,t)=>{var o=x.o(e,r)?e[r]:void 0;if(0!==o)if(o)t.push(o[2]);else if(/^(2(06|56|62)|30|312|695|711)$/.test(r))e[r]=0;else{var a=new Promise(((t,a)=>o=e[r]=[t,a]));t.push(o[2]=a);var n=x.p+x.u(r),i=new Error;x.l(n,(t=>{if(x.o(e,r)&&(0!==(o=e[r])&&(e[r]=void 0),o)){var a=t&&("load"===t.type?"missing":t.type),n=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+a+": "+n+")",i.name="ChunkLoadError",i.type=a,i.request=n,o[1](i)}}),"chunk-"+r,r)}};var r=(r,t)=>{var o,a,[n,i,l]=t,u=0;if(n.some((r=>0!==e[r]))){for(o in i)x.o(i,o)&&(x.m[o]=i[o]);l&&l(x)}for(r&&r(t);u<n.length;u++)a=n[u],x.o(e,a)&&e[a]&&e[a][0](),e[a]=0},t=self.webpackChunk_jupyter_collaboration_extension=self.webpackChunk_jupyter_collaboration_extension||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),x.nc=void 0;var E=x(1998);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB)["@jupyter/collaboration-extension"]=E})();
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|