codebuff-agent 2.1.79__py3-none-any.whl → 2.1.80__py3-none-any.whl
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.
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/package.json +2 -2
- codebuff_agent-2.1.79.data/data/share/jupyter/labextensions/codebuff/static/remoteEntry.85fc9c6c88a0f6b87109.js → codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/remoteEntry.92bab6f54fc5da41a521.js +1 -1
- {codebuff_agent-2.1.79.dist-info → codebuff_agent-2.1.80.dist-info}/METADATA +1 -1
- {codebuff_agent-2.1.79.dist-info → codebuff_agent-2.1.80.dist-info}/RECORD +36 -36
- jupyter_ext/_version.py +1 -1
- jupyter_ext/agent/codex_bridge.py +20 -4
- jupyter_ext/labextension/package.json +2 -2
- jupyter_ext/labextension/static/{remoteEntry.85fc9c6c88a0f6b87109.js → remoteEntry.92bab6f54fc5da41a521.js} +1 -1
- jupyter_ext/pod_identity.py +27 -2
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/etc/jupyter/jupyter_server_config.d/codebuff_agent.json +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/lab/settings/overrides.d/codebuff.json +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/166.386ff9b2c37ac865fdee.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/351.e796b81287b53635cfa4.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/353.581bd1cb00746399b62e.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/367.575f9621b63c9a641aa9.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/421.11dac223a2c2da1b09f5.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/432.a749eb54fdc324b18cfa.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/432.a749eb54fdc324b18cfa.js.LICENSE.txt +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/439.ba5b5ef70ec6de214b8c.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/439.ba5b5ef70ec6de214b8c.js.LICENSE.txt +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/481.cc2dec9fa869d66f1407.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/487.0796e931d6e651482c14.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/49.d326f554b6f9ccde6580.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/539.3024c7f70ce4db9b6428.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/579.3bc73eef11d3e0ce5d0c.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/58.eb7cc679f7535cc8a2f1.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/58.eb7cc679f7535cc8a2f1.js.LICENSE.txt +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/666.d9bfdb23f98489d0a188.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/677.d266c39dbed33bc388b3.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/677.d266c39dbed33bc388b3.js.LICENSE.txt +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/68.26b6f59c8454adb17f20.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/868.5cfe7e1a348ec5af1b8c.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/style.js +0 -0
- {codebuff_agent-2.1.79.data → codebuff_agent-2.1.80.data}/data/share/jupyter/labextensions/codebuff/static/third-party-licenses.json +0 -0
- {codebuff_agent-2.1.79.dist-info → codebuff_agent-2.1.80.dist-info}/WHEEL +0 -0
- {codebuff_agent-2.1.79.dist-info → codebuff_agent-2.1.80.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codebuff",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.80",
|
|
4
4
|
"description": "Codebuff JupyterLab Extension - Thin client for Agent Server",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jupyter",
|
|
@@ -146,7 +146,7 @@
|
|
|
146
146
|
}
|
|
147
147
|
},
|
|
148
148
|
"_build": {
|
|
149
|
-
"load": "static/remoteEntry.
|
|
149
|
+
"load": "static/remoteEntry.92bab6f54fc5da41a521.js",
|
|
150
150
|
"extension": "./extension",
|
|
151
151
|
"style": "./style"
|
|
152
152
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _JUPYTERLAB;(()=>{"use strict";var e={8384(e,t,r){const o={"./index":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./extension":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./style":()=>r.e(579).then(()=>()=>r(6579))},n=(e,t)=>(r.R=t,t=r.o(o,e)?o[e]():Promise.resolve().then(()=>{throw new Error('Module "'+e+'" does not exist in container.')}),r.R=void 0,t),a=(e,t)=>{if(!r.S)return;const o="default",n=r.S[o];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return r.S[o]=e,r.I(o,t)};r.d(t,{get:()=>n,init:()=>a})}};const t={};function r(o){const n=t[o];if(void 0!==n)return n.exports;const a=t[o]={id:o,exports:{}};return e[o](a,a.exports,r),a.exports}r.m=e,r.c=t,r.n=e=>{const t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.cw=e=>{var t;return()=>{if(e){var r=e;e=0,t={exports:{}},r.call(t.exports,t,t.exports)}return t.exports}},(()=>{const e=Object.getPrototypeOf;let t;r.t=function(o,n){if(1&n&&(o=this(o)),8&n)return o;if("object"==typeof o&&o){if(4&n&&o.__esModule)return o;if(16&n&&"function"==typeof o.then)return o}const a=Object.create(null);r.r(a);const l={};t=t||[null,e({}),e([]),e(e)];for(var f=2&n&&o;("object"==typeof f||"function"==typeof f)&&!~t.indexOf(f);f=e(f))Object.getOwnPropertyNames(f).forEach(e=>l[e]=()=>o[e]);return l.default=()=>o,r.d(a,l),a}})(),r.d=(e,t)=>{if(Array.isArray(t))for(var o=0;o<t.length;){var n=t[o++],a=t[o++],l=0===a?{enumerable:!0,value:t[o++]}:{enumerable:!0,get:a};r.o(e,n)||Object.defineProperty(e,n,l)}else for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,o)=>(r.f[o](e,t),t),[])),r.u=e=>e+"."+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e]+".js?v="+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="codebuff:";r.l=(o,n,a,l)=>{if(e[o])return void e[o].push(n);let f,i;if(void 0!==a){const e=document.getElementsByTagName("script");for(var c=0;c<e.length;c++){const r=e[c];if(r.getAttribute("src")==o||r.getAttribute("data-webpack")==t+a){f=r;break}}}f||(i=!0,f=document.createElement("script"),f.charset="utf-8",r.nc&&f.setAttribute("nonce",r.nc),f.setAttribute("data-webpack",t+a),f.src=o),e[o]=[n];const d=(t,r)=>{f.onerror=f.onload=null,clearTimeout(u);const n=e[o];if(delete e[o],f.parentNode?.removeChild(f),n?.forEach(e=>e(r)),t)return t(r)},u=setTimeout(d.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=d.bind(null,f.onerror),f.onload=d.bind(null,f.onload),i&&document.head.appendChild(f)}})(),r.r=e=>{Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.dn=e=>{var t=Object.getOwnPropertyDescriptor(e,"name");(!t||!t.writable&&t.configurable)&&Object.defineProperty(e,"name",{value:"default",configurable:!0})},(()=>{r.S={};const e={},t={};r.I=(o,n)=>{n||(n=[]);let a=t[o];if(a||(a=t[o]={}),n.indexOf(a)>=0)return;if(n.push(a),e[o])return e[o];r.o(r.S,o)||(r.S[o]={});const l=r.S[o],f="codebuff",i=(e,t,r,o)=>{const n=l[e]=l[e]||{},a=n[t];(!a||!a.loaded&&(!o!=!a.eager?o:f>a.from))&&(n[t]={get:r,from:f,eager:!!o})},c=[];return"default"===o&&(i("@codemirror/commands","6.8.1",()=>Promise.all([r.e(353),r.e(708),r.e(11),r.e(195)]).then(()=>()=>r(4353))),i("@emotion/react","11.14.0",()=>Promise.all([r.e(666),r.e(345),r.e(677)]).then(()=>()=>r(7677))),i("@emotion/styled","11.14.1",()=>Promise.all([r.e(345),r.e(744),r.e(487)]).then(()=>()=>r(1868))),i("@lezer/java","1.1.4",()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),i("@lezer/javascript","1.5.5",()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),i("@lezer/python","1.1.19",()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),i("@mui/material","5.18.0",()=>Promise.all([r.e(666),r.e(68),r.e(432),r.e(345),r.e(586)]).then(()=>()=>r(3068))),i("codebuff","2.1.79",()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539))),i("diff","0",()=>r.e(481).then(()=>()=>r(7481)))),e[o]=c.length?Promise.all(c).then(()=>e[o]=1):1}})(),(()=>{let e;r.g.importScripts&&(e=r.g.location+"");const t=r.g.document;if(!e&&t&&("SCRIPT"===t.currentScript?.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){const r=t.getElementsByTagName("script");if(r.length){let t=r.length-1;for(;t>-1&&(!e||!/^https?:/.test(e));)e=r[t--].src}}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:|[?#].*$/g,"").replace(/\/[^/]+$/,"/"),r.p=e})(),(()=>{var e=e=>{var t=e=>e.split(".").map(e=>+e==e?+e:e),r=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),o=r[1]?t(r[1]):[];return r[2]&&(o.length++,o.push.apply(o,t(r[2]))),r[3]&&(o.push([]),o.push.apply(o,t(r[3]))),o},t=(t,r)=>{t=e(t),r=e(r);for(var o=0;;){if(o>=t.length)return o<r.length&&"u"!=(typeof r[o])[0];var n=t[o],a=(typeof n)[0];if(o>=r.length)return"u"==a;var l=r[o],f=(typeof l)[0];if(a!=f)return"o"==a&&"n"==f||"s"==f||"u"==a;if("o"!=a&&"u"!=a&&n!=l)return n<l;o++}},o=e=>{var t=e[0],r="";if(1===e.length)return"*";if(t+.5){r+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var n=1,a=1;a<e.length;a++)n--,r+="u"==(typeof(f=e[a]))[0]?"-":(n>0?".":"")+(n=2,f);return r}var l=[];for(a=1;a<e.length;a++){var f=e[a];l.push(0===f?"not("+i()+")":1===f?"("+i()+" || "+i()+")":2===f?l.pop()+" "+l.pop():o(f))}return i();function i(){return l.pop().replace(/^\((.+)\)$/,"$1")}},n=(t,r)=>{if(0 in t){r=e(r);var o=t[0],a=o<0;a&&(o=-o-1);for(var l=0,f=1,i=!0;;f++,l++){var c,d,u=f<t.length?(typeof t[f])[0]:"";if(l>=r.length||"o"==(d=(typeof(c=r[l]))[0]))return!i||("u"==u?f>o&&!a:""==u!=a);if("u"==d){if(!i||"u"!=u)return!1}else if(i)if(u==d)if(f<=o){if(c!=t[f])return!1}else{if(a?c>t[f]:c<t[f])return!1;c!=t[f]&&(i=!1)}else if("s"!=u&&"n"!=u){if(a||f<=o)return!1;i=!1,f--}else{if(f<=o||d<u!=a)return!1;i=!1}else"s"!=u&&"n"!=u&&(i=!1,f--)}}var s=[],b=s.pop.bind(s);for(l=1;l<t.length;l++){var p=t[l];s.push(1==p?b()|b():2==p?b()&b():p?n(p,r):!b())}return!!b()};const a=(e,t)=>e&&r.o(e,t),l=e=>(e.loaded=1,e.get()),f=e=>Object.keys(e).reduce((t,r)=>(e[r].eager&&(t[r]=e[r]),t),{}),i=e=>{throw new Error(e)},c=e=>function(t,o,n,a,l){const f=r.I(t);return f?.then&&!n?f.then(e.bind(e,t,r.S[t],o,!1,a,l)):e(t,r.S[t],o,n,a,l)},d=(e,t,r)=>r?r():((e,t)=>i("Shared module "+t+" doesn't exist in shared scope "+e))(e,t),u=c((e,r,c,u,s,b)=>{if(!a(r,c))return d(e,c,b);const p=((e,r,o,a)=>{const l=a?f(e[r]):e[r];return(r=Object.keys(l).reduce((e,r)=>!n(o,r)||e&&!t(e,r)?e:r,0))&&l[r]})(r,c,s,u);return p?l(p):b?b():void i(((e,t,r,n,a)=>{const l=e[r];return"No satisfying version ("+o(n)+")"+(a?" for eager consumption":"")+" of shared module "+r+" found in shared scope "+t+".\nAvailable versions: "+Object.keys(l).map(e=>e+" from "+l[e].from).join(", ")})(r,e,c,s,u))}),s=c((e,r,i,c,u,s)=>{if(!a(r,i))return d(e,i,s);const b=((e,r,o)=>{const n=o?f(e[r]):e[r];return Object.keys(n).reduce((e,r)=>!e||!n[e].loaded&&t(e,r)?r:e,0)})(r,i,c);return n(u,b)||(p=((e,t,r,n)=>"Unsatisfied version "+r+" from "+(r&&e[t][r].from)+" of shared singleton module "+t+" (required "+o(n)+")")(r,i,b,u),"undefined"!=typeof console&&console.warn&&console.warn(p)),l(r[i][b]);var p}),b={},p={3345:()=>s("default","react",!1,[1,18,2,0]),3157:()=>u("default","@emotion/react",!1,[1,11,4,1],()=>r.e(58).then(()=>()=>r(7677))),7628:()=>s("default","react-dom",!1,[1,18,2,0]),9443:()=>u("default","@emotion/styled",!1,[1,11,3,0],()=>Promise.all([r.e(744),r.e(868)]).then(()=>()=>r(1868))),2576:()=>s("default","@codemirror/state",!1,[1,6,2,0]),277:()=>s("default","@jupyterlab/cells",!1,[1,4,5,1]),1247:()=>s("default","@lumino/widgets",!1,[1,2,3,1,,"alpha",1]),1409:()=>s("default","@jupyterlab/ui-components",!1,[1,4,5,1]),1805:()=>s("default","@jupyterlab/console",!1,[1,4,5,1]),1907:()=>s("default","@jupyterlab/services",!1,[1,7,5,1]),2780:()=>s("default","@jupyterlab/filebrowser",!1,[1,4,5,1]),3118:()=>s("default","@jupyterlab/rendermime",!1,[1,4,5,1]),3366:()=>s("default","@jupyterlab/launcher",!1,[1,4,5,1]),4849:()=>u("default","diff",!1,[1,9,0,0],()=>r.e(481).then(()=>()=>r(7481))),5584:()=>s("default","@jupyterlab/application",!1,[1,4,5,1]),5690:()=>s("default","@jupyterlab/terminal",!1,[1,4,5,1]),5705:()=>u("default","@lezer/javascript",!1,[1,1,5,5],()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),6580:()=>u("default","@lezer/python",!1,[1,1,1,19],()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),6661:()=>u("default","@mui/material",!1,[1,5,14,0],()=>r.e(68).then(()=>()=>r(3068))),6822:()=>u("default","@codemirror/commands",!1,[4,6,8,1],()=>Promise.all([r.e(353),r.e(708),r.e(11)]).then(()=>()=>r(4353))),7125:()=>s("default","@jupyterlab/docmanager",!1,[1,4,5,1]),7292:()=>s("default","@jupyterlab/coreutils",!1,[1,6,5,1]),8389:()=>s("default","@jupyterlab/notebook",!1,[1,4,5,1]),8454:()=>u("default","@lezer/java",!1,[1,1,1,4],()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),9827:()=>s("default","@jupyterlab/apputils",!1,[1,4,6,1]),3708:()=>s("default","@lezer/common",!1,[1,1,0,0]),2084:()=>s("default","@codemirror/language",!1,[1,6,0,0]),5024:()=>s("default","@codemirror/view",!1,[1,6,9,6]),2744:()=>u("default","@emotion/react",!1,[1,11,0,0,,"rc",0],()=>Promise.all([r.e(666),r.e(439)]).then(()=>()=>r(7677))),1839:()=>s("default","@lezer/highlight",!1,[1,1,0,0])},h={11:[2084,5024],195:[2576],345:[3345],539:[277,1247,1409,1805,1907,2780,3118,3366,4849,5584,5690,5705,6580,6661,6822,7125,7292,8389,8454,9827],586:[3157,7628,9443],708:[3708],744:[2744],839:[1839]},m={};r.f.consumes=(e,t)=>{r.o(h,e)&&h[e].forEach(e=>{if(r.o(b,e))return t.push(b[e]);if(!m[e]){const o=t=>{b[e]=0,r.m[e]=o=>{delete r.c[e],o.exports=t()}};m[e]=!0;const n=t=>{delete b[e],r.m[e]=o=>{throw delete r.c[e],t}};try{const r=p[e]();r.then?t.push(b[e]=r.then(o).catch(n)):o(r)}catch(e){n(e)}}})}})(),(()=>{r.b="undefined"!=typeof document&&document.baseURI||self.location.href;const e={679:0};r.f.j=(t,o)=>{let n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)o.push(n[2]);else if(/^(11|195|345|586|708|744|839)$/.test(t))e[t]=0;else{const a=new Promise((r,o)=>n=e[t]=[r,o]);o.push(n[2]=a);const l=new Error,f=o=>{if(r.o(e,t)&&(n=e[t],0!==n&&(e[t]=void 0),n)){const e=o&&("load"===o.type?"missing":o.type),r=o&&o.target&&o.target.src;l.message="Loading chunk "+t+" failed.\n("+e+": "+r+")",l.name="ChunkLoadError",l.type=e,l.request=r,l.event=o,n[1](l)}};r.l(r.p+r.u(t),f,"chunk-"+t,t)}};const t=(t,o)=>{let[n,a,l]=o;var f,i,c=0;if(n.some(t=>0!==e[t])){for(f in a)r.o(a,f)&&(r.m[f]=a[f]);l&&l(r)}for(t&&t(o);c<n.length;c++)i=n[c],r.o(e,i)&&e[i]&&e[i][0](),e[i]=0},o=self.webpackChunkcodebuff=self.webpackChunkcodebuff||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})(),r.nc=void 0;let o=r(8384);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB).codebuff=o})();
|
|
1
|
+
var _JUPYTERLAB;(()=>{"use strict";var e={8384(e,t,r){const o={"./index":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./extension":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./style":()=>r.e(579).then(()=>()=>r(6579))},n=(e,t)=>(r.R=t,t=r.o(o,e)?o[e]():Promise.resolve().then(()=>{throw new Error('Module "'+e+'" does not exist in container.')}),r.R=void 0,t),a=(e,t)=>{if(!r.S)return;const o="default",n=r.S[o];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return r.S[o]=e,r.I(o,t)};r.d(t,{get:()=>n,init:()=>a})}};const t={};function r(o){const n=t[o];if(void 0!==n)return n.exports;const a=t[o]={id:o,exports:{}};return e[o](a,a.exports,r),a.exports}r.m=e,r.c=t,r.n=e=>{const t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.cw=e=>{var t;return()=>{if(e){var r=e;e=0,t={exports:{}},r.call(t.exports,t,t.exports)}return t.exports}},(()=>{const e=Object.getPrototypeOf;let t;r.t=function(o,n){if(1&n&&(o=this(o)),8&n)return o;if("object"==typeof o&&o){if(4&n&&o.__esModule)return o;if(16&n&&"function"==typeof o.then)return o}const a=Object.create(null);r.r(a);const l={};t=t||[null,e({}),e([]),e(e)];for(var f=2&n&&o;("object"==typeof f||"function"==typeof f)&&!~t.indexOf(f);f=e(f))Object.getOwnPropertyNames(f).forEach(e=>l[e]=()=>o[e]);return l.default=()=>o,r.d(a,l),a}})(),r.d=(e,t)=>{if(Array.isArray(t))for(var o=0;o<t.length;){var n=t[o++],a=t[o++],l=0===a?{enumerable:!0,value:t[o++]}:{enumerable:!0,get:a};r.o(e,n)||Object.defineProperty(e,n,l)}else for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,o)=>(r.f[o](e,t),t),[])),r.u=e=>e+"."+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e]+".js?v="+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="codebuff:";r.l=(o,n,a,l)=>{if(e[o])return void e[o].push(n);let f,i;if(void 0!==a){const e=document.getElementsByTagName("script");for(var c=0;c<e.length;c++){const r=e[c];if(r.getAttribute("src")==o||r.getAttribute("data-webpack")==t+a){f=r;break}}}f||(i=!0,f=document.createElement("script"),f.charset="utf-8",r.nc&&f.setAttribute("nonce",r.nc),f.setAttribute("data-webpack",t+a),f.src=o),e[o]=[n];const d=(t,r)=>{f.onerror=f.onload=null,clearTimeout(u);const n=e[o];if(delete e[o],f.parentNode?.removeChild(f),n?.forEach(e=>e(r)),t)return t(r)},u=setTimeout(d.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=d.bind(null,f.onerror),f.onload=d.bind(null,f.onload),i&&document.head.appendChild(f)}})(),r.r=e=>{Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.dn=e=>{var t=Object.getOwnPropertyDescriptor(e,"name");(!t||!t.writable&&t.configurable)&&Object.defineProperty(e,"name",{value:"default",configurable:!0})},(()=>{r.S={};const e={},t={};r.I=(o,n)=>{n||(n=[]);let a=t[o];if(a||(a=t[o]={}),n.indexOf(a)>=0)return;if(n.push(a),e[o])return e[o];r.o(r.S,o)||(r.S[o]={});const l=r.S[o],f="codebuff",i=(e,t,r,o)=>{const n=l[e]=l[e]||{},a=n[t];(!a||!a.loaded&&(!o!=!a.eager?o:f>a.from))&&(n[t]={get:r,from:f,eager:!!o})},c=[];return"default"===o&&(i("@codemirror/commands","6.8.1",()=>Promise.all([r.e(353),r.e(708),r.e(11),r.e(195)]).then(()=>()=>r(4353))),i("@emotion/react","11.14.0",()=>Promise.all([r.e(666),r.e(345),r.e(677)]).then(()=>()=>r(7677))),i("@emotion/styled","11.14.1",()=>Promise.all([r.e(345),r.e(744),r.e(487)]).then(()=>()=>r(1868))),i("@lezer/java","1.1.4",()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),i("@lezer/javascript","1.5.5",()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),i("@lezer/python","1.1.19",()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),i("@mui/material","5.18.0",()=>Promise.all([r.e(666),r.e(68),r.e(432),r.e(345),r.e(586)]).then(()=>()=>r(3068))),i("codebuff","2.1.80",()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539))),i("diff","0",()=>r.e(481).then(()=>()=>r(7481)))),e[o]=c.length?Promise.all(c).then(()=>e[o]=1):1}})(),(()=>{let e;r.g.importScripts&&(e=r.g.location+"");const t=r.g.document;if(!e&&t&&("SCRIPT"===t.currentScript?.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){const r=t.getElementsByTagName("script");if(r.length){let t=r.length-1;for(;t>-1&&(!e||!/^https?:/.test(e));)e=r[t--].src}}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:|[?#].*$/g,"").replace(/\/[^/]+$/,"/"),r.p=e})(),(()=>{var e=e=>{var t=e=>e.split(".").map(e=>+e==e?+e:e),r=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),o=r[1]?t(r[1]):[];return r[2]&&(o.length++,o.push.apply(o,t(r[2]))),r[3]&&(o.push([]),o.push.apply(o,t(r[3]))),o},t=(t,r)=>{t=e(t),r=e(r);for(var o=0;;){if(o>=t.length)return o<r.length&&"u"!=(typeof r[o])[0];var n=t[o],a=(typeof n)[0];if(o>=r.length)return"u"==a;var l=r[o],f=(typeof l)[0];if(a!=f)return"o"==a&&"n"==f||"s"==f||"u"==a;if("o"!=a&&"u"!=a&&n!=l)return n<l;o++}},o=e=>{var t=e[0],r="";if(1===e.length)return"*";if(t+.5){r+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var n=1,a=1;a<e.length;a++)n--,r+="u"==(typeof(f=e[a]))[0]?"-":(n>0?".":"")+(n=2,f);return r}var l=[];for(a=1;a<e.length;a++){var f=e[a];l.push(0===f?"not("+i()+")":1===f?"("+i()+" || "+i()+")":2===f?l.pop()+" "+l.pop():o(f))}return i();function i(){return l.pop().replace(/^\((.+)\)$/,"$1")}},n=(t,r)=>{if(0 in t){r=e(r);var o=t[0],a=o<0;a&&(o=-o-1);for(var l=0,f=1,i=!0;;f++,l++){var c,d,u=f<t.length?(typeof t[f])[0]:"";if(l>=r.length||"o"==(d=(typeof(c=r[l]))[0]))return!i||("u"==u?f>o&&!a:""==u!=a);if("u"==d){if(!i||"u"!=u)return!1}else if(i)if(u==d)if(f<=o){if(c!=t[f])return!1}else{if(a?c>t[f]:c<t[f])return!1;c!=t[f]&&(i=!1)}else if("s"!=u&&"n"!=u){if(a||f<=o)return!1;i=!1,f--}else{if(f<=o||d<u!=a)return!1;i=!1}else"s"!=u&&"n"!=u&&(i=!1,f--)}}var s=[],b=s.pop.bind(s);for(l=1;l<t.length;l++){var p=t[l];s.push(1==p?b()|b():2==p?b()&b():p?n(p,r):!b())}return!!b()};const a=(e,t)=>e&&r.o(e,t),l=e=>(e.loaded=1,e.get()),f=e=>Object.keys(e).reduce((t,r)=>(e[r].eager&&(t[r]=e[r]),t),{}),i=e=>{throw new Error(e)},c=e=>function(t,o,n,a,l){const f=r.I(t);return f?.then&&!n?f.then(e.bind(e,t,r.S[t],o,!1,a,l)):e(t,r.S[t],o,n,a,l)},d=(e,t,r)=>r?r():((e,t)=>i("Shared module "+t+" doesn't exist in shared scope "+e))(e,t),u=c((e,r,c,u,s,b)=>{if(!a(r,c))return d(e,c,b);const p=((e,r,o,a)=>{const l=a?f(e[r]):e[r];return(r=Object.keys(l).reduce((e,r)=>!n(o,r)||e&&!t(e,r)?e:r,0))&&l[r]})(r,c,s,u);return p?l(p):b?b():void i(((e,t,r,n,a)=>{const l=e[r];return"No satisfying version ("+o(n)+")"+(a?" for eager consumption":"")+" of shared module "+r+" found in shared scope "+t+".\nAvailable versions: "+Object.keys(l).map(e=>e+" from "+l[e].from).join(", ")})(r,e,c,s,u))}),s=c((e,r,i,c,u,s)=>{if(!a(r,i))return d(e,i,s);const b=((e,r,o)=>{const n=o?f(e[r]):e[r];return Object.keys(n).reduce((e,r)=>!e||!n[e].loaded&&t(e,r)?r:e,0)})(r,i,c);return n(u,b)||(p=((e,t,r,n)=>"Unsatisfied version "+r+" from "+(r&&e[t][r].from)+" of shared singleton module "+t+" (required "+o(n)+")")(r,i,b,u),"undefined"!=typeof console&&console.warn&&console.warn(p)),l(r[i][b]);var p}),b={},p={3345:()=>s("default","react",!1,[1,18,2,0]),3157:()=>u("default","@emotion/react",!1,[1,11,4,1],()=>r.e(58).then(()=>()=>r(7677))),7628:()=>s("default","react-dom",!1,[1,18,2,0]),9443:()=>u("default","@emotion/styled",!1,[1,11,3,0],()=>Promise.all([r.e(744),r.e(868)]).then(()=>()=>r(1868))),2576:()=>s("default","@codemirror/state",!1,[1,6,2,0]),277:()=>s("default","@jupyterlab/cells",!1,[1,4,5,1]),1247:()=>s("default","@lumino/widgets",!1,[1,2,3,1,,"alpha",1]),1409:()=>s("default","@jupyterlab/ui-components",!1,[1,4,5,1]),1805:()=>s("default","@jupyterlab/console",!1,[1,4,5,1]),1907:()=>s("default","@jupyterlab/services",!1,[1,7,5,1]),2780:()=>s("default","@jupyterlab/filebrowser",!1,[1,4,5,1]),3118:()=>s("default","@jupyterlab/rendermime",!1,[1,4,5,1]),3366:()=>s("default","@jupyterlab/launcher",!1,[1,4,5,1]),4849:()=>u("default","diff",!1,[1,9,0,0],()=>r.e(481).then(()=>()=>r(7481))),5584:()=>s("default","@jupyterlab/application",!1,[1,4,5,1]),5690:()=>s("default","@jupyterlab/terminal",!1,[1,4,5,1]),5705:()=>u("default","@lezer/javascript",!1,[1,1,5,5],()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),6580:()=>u("default","@lezer/python",!1,[1,1,1,19],()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),6661:()=>u("default","@mui/material",!1,[1,5,14,0],()=>r.e(68).then(()=>()=>r(3068))),6822:()=>u("default","@codemirror/commands",!1,[4,6,8,1],()=>Promise.all([r.e(353),r.e(708),r.e(11)]).then(()=>()=>r(4353))),7125:()=>s("default","@jupyterlab/docmanager",!1,[1,4,5,1]),7292:()=>s("default","@jupyterlab/coreutils",!1,[1,6,5,1]),8389:()=>s("default","@jupyterlab/notebook",!1,[1,4,5,1]),8454:()=>u("default","@lezer/java",!1,[1,1,1,4],()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),9827:()=>s("default","@jupyterlab/apputils",!1,[1,4,6,1]),3708:()=>s("default","@lezer/common",!1,[1,1,0,0]),2084:()=>s("default","@codemirror/language",!1,[1,6,0,0]),5024:()=>s("default","@codemirror/view",!1,[1,6,9,6]),2744:()=>u("default","@emotion/react",!1,[1,11,0,0,,"rc",0],()=>Promise.all([r.e(666),r.e(439)]).then(()=>()=>r(7677))),1839:()=>s("default","@lezer/highlight",!1,[1,1,0,0])},h={11:[2084,5024],195:[2576],345:[3345],539:[277,1247,1409,1805,1907,2780,3118,3366,4849,5584,5690,5705,6580,6661,6822,7125,7292,8389,8454,9827],586:[3157,7628,9443],708:[3708],744:[2744],839:[1839]},m={};r.f.consumes=(e,t)=>{r.o(h,e)&&h[e].forEach(e=>{if(r.o(b,e))return t.push(b[e]);if(!m[e]){const o=t=>{b[e]=0,r.m[e]=o=>{delete r.c[e],o.exports=t()}};m[e]=!0;const n=t=>{delete b[e],r.m[e]=o=>{throw delete r.c[e],t}};try{const r=p[e]();r.then?t.push(b[e]=r.then(o).catch(n)):o(r)}catch(e){n(e)}}})}})(),(()=>{r.b="undefined"!=typeof document&&document.baseURI||self.location.href;const e={679:0};r.f.j=(t,o)=>{let n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)o.push(n[2]);else if(/^(11|195|345|586|708|744|839)$/.test(t))e[t]=0;else{const a=new Promise((r,o)=>n=e[t]=[r,o]);o.push(n[2]=a);const l=new Error,f=o=>{if(r.o(e,t)&&(n=e[t],0!==n&&(e[t]=void 0),n)){const e=o&&("load"===o.type?"missing":o.type),r=o&&o.target&&o.target.src;l.message="Loading chunk "+t+" failed.\n("+e+": "+r+")",l.name="ChunkLoadError",l.type=e,l.request=r,l.event=o,n[1](l)}};r.l(r.p+r.u(t),f,"chunk-"+t,t)}};const t=(t,o)=>{let[n,a,l]=o;var f,i,c=0;if(n.some(t=>0!==e[t])){for(f in a)r.o(a,f)&&(r.m[f]=a[f]);l&&l(r)}for(t&&t(o);c<n.length;c++)i=n[c],r.o(e,i)&&e[i]&&e[i][0](),e[i]=0},o=self.webpackChunkcodebuff=self.webpackChunkcodebuff||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})(),r.nc=void 0;let o=r(8384);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB).codebuff=o})();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: codebuff-agent
|
|
3
|
-
Version: 2.1.
|
|
3
|
+
Version: 2.1.80
|
|
4
4
|
Summary: Codebuff JupyterLab Extension - Thin client for Agent Server
|
|
5
5
|
Project-URL: Homepage, https://github.com/lks21c/codebuff
|
|
6
6
|
Project-URL: Bug Tracker, https://github.com/lks21c/codebuff/issues
|
|
@@ -52,14 +52,14 @@ codebuff_core/tests/test_error_recovery.py,sha256=4PUtupKGqdo9d0QxDJN5g15nZ6viOE
|
|
|
52
52
|
codebuff_core/tests/test_factory.py,sha256=a0vwB3cWpw8k8xHPUUu1zLeB0Qi6NQ8ZU7A8uN823TE,5459
|
|
53
53
|
codebuff_core/tests/test_services.py,sha256=WkVtlF6BBUDDlR2bHq76nKWwprHRGytoDm0oUGxq0UU,5271
|
|
54
54
|
jupyter_ext/__init__.py,sha256=uEctGSnGefquYNNxumXEZZddCyIOO-c1TE7Ahxzo-G4,12214
|
|
55
|
-
jupyter_ext/_version.py,sha256=
|
|
55
|
+
jupyter_ext/_version.py,sha256=mNzCGACx80QSXEdx2glHZMlfQhFkL6qwzjPKedzeZcI,172
|
|
56
56
|
jupyter_ext/analytics_ingest.py,sha256=zxI99h0beD9TXzGH0u7lAnZcIe6HmLbjl7q855ri_To,25069
|
|
57
57
|
jupyter_ext/apm_ingest.py,sha256=FiBvTK427zt54ygYatAufsCKoupUneQK4PzkSgHugoY,16607
|
|
58
58
|
jupyter_ext/http_handlers.py,sha256=7lx7_ogYyHaceTtyxqFrzfJzStlF3AMCuRD2892AHFs,318090
|
|
59
59
|
jupyter_ext/idle_monitor.py,sha256=V8kxTpLYdoj9VqJB-tB33ugi4YSbiflC9IM1kpLwMKo,12783
|
|
60
60
|
jupyter_ext/log_paths.py,sha256=7jdWpF_uFfuagyHKKv-am_nxbl2t_Ls8K1xVBrG-eBg,3559
|
|
61
61
|
jupyter_ext/loop_lag.py,sha256=6pcO1Q3v9t5O640sIwETU0JeVZdV_QmohQ8-vwu36Ag,6259
|
|
62
|
-
jupyter_ext/pod_identity.py,sha256=
|
|
62
|
+
jupyter_ext/pod_identity.py,sha256=jHUdyjBpNJbSMjXLQZIRw754I1wNmgb6SURQsGXJX7A,6409
|
|
63
63
|
jupyter_ext/provider_pii.py,sha256=qY-aKeW3NLbDukEbKc7nswsoq3kPZZGpBMTxmpxyCU8,1942
|
|
64
64
|
jupyter_ext/resource_usage.py,sha256=yor1jrcN3ULwDMw4pVF04BPA8Z3W1b5kPM7PUprYlXc,19459
|
|
65
65
|
jupyter_ext/secrets_bootstrap.py,sha256=k3sakJt2DvWIzDwIUrli6720n0wE9xe4TdTSmuqsAlw,7318
|
|
@@ -73,7 +73,7 @@ jupyter_ext/agent/background_procs.py,sha256=Pk1CqccDvxxCD9zXO6NUFm6FXjoPlj14wFX
|
|
|
73
73
|
jupyter_ext/agent/bg_procs_context.py,sha256=kiMfCsMmi9bzb9xBBCUoIiMMd1DMqYwOelJhZI1T76s,3529
|
|
74
74
|
jupyter_ext/agent/code_history_middleware.py,sha256=W-rak7oGCP8cj5nsRpapmtbhwu61BYu7uE0vzQwN9SY,7755
|
|
75
75
|
jupyter_ext/agent/codex_autofix.py,sha256=aNDuzEugzAhQXsMelwmfUgYffREF21jthduaWEfE1hM,7360
|
|
76
|
-
jupyter_ext/agent/codex_bridge.py,sha256=
|
|
76
|
+
jupyter_ext/agent/codex_bridge.py,sha256=icAxUgDyhNWPggYfmeBwLhF6POtKKc32qzYmKYQw-IU,328658
|
|
77
77
|
jupyter_ext/agent/codex_hooks.py,sha256=S0QCxzLYvmAUJKNFaX8e38P3orEaLWpxiFPKipOs4Wc,15446
|
|
78
78
|
jupyter_ext/agent/codex_prefs.py,sha256=WvwwY8wnsvwvcinMZU6xdQiAPMIPXxhWGVJJlK-K2BY,7906
|
|
79
79
|
jupyter_ext/agent/codex_slash.py,sha256=d_BUJ5fVbUdq7TsbGVSfdFB_OZ1ksojcfrTBJnJBknw,68889
|
|
@@ -143,7 +143,7 @@ jupyter_ext/handlers/apm_handler.py,sha256=afBov2_XPxlrZ6DCp6dqfIs-GFqPmfE5eUllr
|
|
|
143
143
|
jupyter_ext/handlers/rag_admin_handler.py,sha256=C4MqVLIyweR34dDot9NkUgFxl_iOi0mxuU2PotFh9WA,3068
|
|
144
144
|
jupyter_ext/handlers/websocket.py,sha256=jGJFRi_Url5RzBqRWvH72fXPP0ekb-WrQVx2xqTm-Pc,16604
|
|
145
145
|
jupyter_ext/lab/settings/overrides.d/codebuff.json,sha256=3n2FDnLgE0aKOyn45RvyKWZKBpz7bvoA5QtxQLyM4a0,122
|
|
146
|
-
jupyter_ext/labextension/package.json,sha256=
|
|
146
|
+
jupyter_ext/labextension/package.json,sha256=5P38ASR7VGBXobDHggfwPfUo___8rwet7_mCFrceNQs,5201
|
|
147
147
|
jupyter_ext/labextension/static/166.386ff9b2c37ac865fdee.js,sha256=OG_5ssN6yGX97ihImIjeu0ictpfioowYcR9Ay3qyC8o,78037
|
|
148
148
|
jupyter_ext/labextension/static/351.e796b81287b53635cfa4.js,sha256=55a4Eoe1NjXPpP-i_vx90AdC8ghpyfy8640qFyf_cqQ,100173
|
|
149
149
|
jupyter_ext/labextension/static/353.581bd1cb00746399b62e.js,sha256=WBvRywB0Y5m2Li0E6i184sCcKBi_rVXSDJ2cjTCpmZo,28894
|
|
@@ -165,7 +165,7 @@ jupyter_ext/labextension/static/677.d266c39dbed33bc388b3.js,sha256=5p_TSXMsQ26sJ
|
|
|
165
165
|
jupyter_ext/labextension/static/677.d266c39dbed33bc388b3.js.LICENSE.txt,sha256=lqUlGHhVY3z3mcV-sTwREZRm1KQ7maSiV6-Gm8RSQNY,246
|
|
166
166
|
jupyter_ext/labextension/static/68.26b6f59c8454adb17f20.js,sha256=Jrb1nIRUrbF_IEXU7CJRLbiRG9uNVBTOcPpYVYyD0t8,484028
|
|
167
167
|
jupyter_ext/labextension/static/868.5cfe7e1a348ec5af1b8c.js,sha256=XP5-GjSOxa8bjNK9wNbZQqz14rF2h8P0J3LsRwC5o10,7933
|
|
168
|
-
jupyter_ext/labextension/static/remoteEntry.
|
|
168
|
+
jupyter_ext/labextension/static/remoteEntry.92bab6f54fc5da41a521.js,sha256=krq29U_F2kGlIdF7hXR3usoRdBq0IgmhJAjw5yn501Y,12078
|
|
169
169
|
jupyter_ext/labextension/static/style.js,sha256=MorHEvkG0Oe-uZ7t7oFa5X01nqPLFSwlC2attA72Jr8,161
|
|
170
170
|
jupyter_ext/labextension/static/third-party-licenses.json,sha256=luwtTWx15amrLYftafSAMx2ZV1sp32gCs_uslfNrf9Y,65553
|
|
171
171
|
jupyter_ext/tests/__init__.py,sha256=JuO3lX7V7YfonXc_fuVQmxJcKklSq4orTEcdOuZrX8g,37
|
|
@@ -188,34 +188,34 @@ jupyter_ext/tools/search_tools.py,sha256=OZH3L-6LkcBKiQrtQqxWoSdDH0YUg2d9a2y5nQ-
|
|
|
188
188
|
jupyter_ext/tools/security_tools.py,sha256=o-POr5BewXieuRJKli8kNC2KSLJos2GQb-70y_UHpVo,23556
|
|
189
189
|
jupyter_ext/tools/shell_tools.py,sha256=lD57Vzqof81MXeLWUH6TqsjiyU_z1aY5Uj1riRFz_zU,3537
|
|
190
190
|
jupyter_ext/tools/user_tools.py,sha256=xDsSBavDn7yc1iw71q0JnfMb7h_t35hcdQUlZPsNFSQ,4544
|
|
191
|
-
codebuff_agent-2.1.
|
|
192
|
-
codebuff_agent-2.1.
|
|
193
|
-
codebuff_agent-2.1.
|
|
194
|
-
codebuff_agent-2.1.
|
|
195
|
-
codebuff_agent-2.1.
|
|
196
|
-
codebuff_agent-2.1.
|
|
197
|
-
codebuff_agent-2.1.
|
|
198
|
-
codebuff_agent-2.1.
|
|
199
|
-
codebuff_agent-2.1.
|
|
200
|
-
codebuff_agent-2.1.
|
|
201
|
-
codebuff_agent-2.1.
|
|
202
|
-
codebuff_agent-2.1.
|
|
203
|
-
codebuff_agent-2.1.
|
|
204
|
-
codebuff_agent-2.1.
|
|
205
|
-
codebuff_agent-2.1.
|
|
206
|
-
codebuff_agent-2.1.
|
|
207
|
-
codebuff_agent-2.1.
|
|
208
|
-
codebuff_agent-2.1.
|
|
209
|
-
codebuff_agent-2.1.
|
|
210
|
-
codebuff_agent-2.1.
|
|
211
|
-
codebuff_agent-2.1.
|
|
212
|
-
codebuff_agent-2.1.
|
|
213
|
-
codebuff_agent-2.1.
|
|
214
|
-
codebuff_agent-2.1.
|
|
215
|
-
codebuff_agent-2.1.
|
|
216
|
-
codebuff_agent-2.1.
|
|
217
|
-
codebuff_agent-2.1.
|
|
218
|
-
codebuff_agent-2.1.
|
|
219
|
-
codebuff_agent-2.1.
|
|
220
|
-
codebuff_agent-2.1.
|
|
221
|
-
codebuff_agent-2.1.
|
|
191
|
+
codebuff_agent-2.1.80.data/data/etc/jupyter/jupyter_server_config.d/codebuff_agent.json,sha256=KXCyKfoeM1OxdPWa0wL2plndcqJkQ7ke3UaF0tJpMW0,86
|
|
192
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/package.json,sha256=5P38ASR7VGBXobDHggfwPfUo___8rwet7_mCFrceNQs,5201
|
|
193
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/166.386ff9b2c37ac865fdee.js,sha256=OG_5ssN6yGX97ihImIjeu0ictpfioowYcR9Ay3qyC8o,78037
|
|
194
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/351.e796b81287b53635cfa4.js,sha256=55a4Eoe1NjXPpP-i_vx90AdC8ghpyfy8640qFyf_cqQ,100173
|
|
195
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/353.581bd1cb00746399b62e.js,sha256=WBvRywB0Y5m2Li0E6i184sCcKBi_rVXSDJ2cjTCpmZo,28894
|
|
196
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/367.575f9621b63c9a641aa9.js,sha256=V1-WIbY8mmQaqaP99vIxQUsz77L2DTFp0UUYGgdg-rA,39717
|
|
197
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/421.11dac223a2c2da1b09f5.js,sha256=EdrCI6LC2hsJ9e4JHW5s1GRClkmWZRw54TCbnEZayms,28308
|
|
198
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/432.a749eb54fdc324b18cfa.js,sha256=xa_7EXIvUGWlFbtFcZj3HwoRAElOX2NaEAvw0rAKni4,44883
|
|
199
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/432.a749eb54fdc324b18cfa.js.LICENSE.txt,sha256=mlhymahwls4499g-vGLVU9Lxqw3zTOvv42ZLrJkGXbM,488
|
|
200
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/439.ba5b5ef70ec6de214b8c.js,sha256=jvm4vHxAXO-fZoVqZqnx4qUuz-23MdavPCVB2zdHr5c,7497
|
|
201
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/439.ba5b5ef70ec6de214b8c.js.LICENSE.txt,sha256=lqUlGHhVY3z3mcV-sTwREZRm1KQ7maSiV6-Gm8RSQNY,246
|
|
202
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/481.cc2dec9fa869d66f1407.js,sha256=zC3sn6hp1m8UBx3gqzUz-02FaorPolqH7yKeK_ofIEg,23159
|
|
203
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/487.0796e931d6e651482c14.js,sha256=B5bpMdbmUUgsFL7SCWiFcY9EYp2MQsWSysVsPCqCZzE,11375
|
|
204
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/49.d326f554b6f9ccde6580.js,sha256=0yb1VLb5zN5lgFN8HZpkBbuBaQUeuJe7U5Ec-0qebY0,37796
|
|
205
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/539.3024c7f70ce4db9b6428.js,sha256=MCTH9wzk25tkKEiKeBfu63xM4fdSfWYwG62W4vC0Wto,415956
|
|
206
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/579.3bc73eef11d3e0ce5d0c.js,sha256=O8c-7xHT4M5dDN_QaLAXOv1vNvMgcdiK_57YCDZEyJI,192647
|
|
207
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/58.eb7cc679f7535cc8a2f1.js,sha256=gdv-HEOQWn46_6fkKzIqx26GrfKOa62aodnM1trD5nU,8080
|
|
208
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/58.eb7cc679f7535cc8a2f1.js.LICENSE.txt,sha256=lqUlGHhVY3z3mcV-sTwREZRm1KQ7maSiV6-Gm8RSQNY,246
|
|
209
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/666.d9bfdb23f98489d0a188.js,sha256=2b_bI_mEidChiCaENfxTQtkswntodquGofjBXhN8--g,9718
|
|
210
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/677.d266c39dbed33bc388b3.js,sha256=5p_TSXMsQ26sJcaw40hTChjum9MCOguSwMPR6wRqTE8,11523
|
|
211
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/677.d266c39dbed33bc388b3.js.LICENSE.txt,sha256=lqUlGHhVY3z3mcV-sTwREZRm1KQ7maSiV6-Gm8RSQNY,246
|
|
212
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/68.26b6f59c8454adb17f20.js,sha256=Jrb1nIRUrbF_IEXU7CJRLbiRG9uNVBTOcPpYVYyD0t8,484028
|
|
213
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/868.5cfe7e1a348ec5af1b8c.js,sha256=XP5-GjSOxa8bjNK9wNbZQqz14rF2h8P0J3LsRwC5o10,7933
|
|
214
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/remoteEntry.92bab6f54fc5da41a521.js,sha256=krq29U_F2kGlIdF7hXR3usoRdBq0IgmhJAjw5yn501Y,12078
|
|
215
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/style.js,sha256=MorHEvkG0Oe-uZ7t7oFa5X01nqPLFSwlC2attA72Jr8,161
|
|
216
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/labextensions/codebuff/static/third-party-licenses.json,sha256=luwtTWx15amrLYftafSAMx2ZV1sp32gCs_uslfNrf9Y,65553
|
|
217
|
+
codebuff_agent-2.1.80.data/data/share/jupyter/lab/settings/overrides.d/codebuff.json,sha256=3n2FDnLgE0aKOyn45RvyKWZKBpz7bvoA5QtxQLyM4a0,122
|
|
218
|
+
codebuff_agent-2.1.80.dist-info/METADATA,sha256=aMvBk2ytEAiS6sJkcKAvP05AN8ODMNAlMprzjOsSqPU,4314
|
|
219
|
+
codebuff_agent-2.1.80.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
|
|
220
|
+
codebuff_agent-2.1.80.dist-info/licenses/LICENSE,sha256=LZnhgcr8NXVgC4ewcnNjWlYahaIS_KLMxKWDCZkHpQo,1061
|
|
221
|
+
codebuff_agent-2.1.80.dist-info/RECORD,,
|
jupyter_ext/_version.py
CHANGED
|
@@ -1734,6 +1734,8 @@ _EMP_MISMATCH_CAUSES = {
|
|
|
1734
1734
|
"mismatch": "로그인한 사번({token})이 이 pod 의 사번({pod})과 다릅니다",
|
|
1735
1735
|
"no_token": "로그인 토큰이 없어 사번을 확인하지 못했습니다",
|
|
1736
1736
|
"no_claim": "로그인 토큰에 사번({claim})이 없습니다",
|
|
1737
|
+
"env_mismatch": "pod 환경변수의 사번({token})이 pod 이름의 사번({pod})과 다릅니다",
|
|
1738
|
+
"no_env_emp": "pod 환경변수({claim})에 사번이 없습니다",
|
|
1737
1739
|
}
|
|
1738
1740
|
|
|
1739
1741
|
|
|
@@ -2637,8 +2639,10 @@ def make_codex_transport(
|
|
|
2637
2639
|
|
|
2638
2640
|
from ..pod_identity import (
|
|
2639
2641
|
ACCESS_TOKEN_HEADER,
|
|
2642
|
+
EMP_ENVS,
|
|
2640
2643
|
connect_identity,
|
|
2641
2644
|
emp_claim_name,
|
|
2645
|
+
env_emp_check,
|
|
2642
2646
|
has_request_token,
|
|
2643
2647
|
pod_name,
|
|
2644
2648
|
request_claims,
|
|
@@ -2649,12 +2653,24 @@ def make_codex_transport(
|
|
|
2649
2653
|
if pod_identity is None:
|
|
2650
2654
|
return WebSocketTransport(url, headers, CodexPodIdentityMissing(pod_name()))
|
|
2651
2655
|
if pod_identity:
|
|
2656
|
+
# pod 이름 사번 = 사번 환경변수 (이슈 #628) — 허용 목록과 전용 role 이 같은 사람을 본다
|
|
2657
|
+
env_result, env_emp = env_emp_check(pod_identity["emp_no"])
|
|
2658
|
+
if env_result != "match":
|
|
2659
|
+
return WebSocketTransport(
|
|
2660
|
+
url,
|
|
2661
|
+
headers,
|
|
2662
|
+
CodexPodIdentityMismatch(
|
|
2663
|
+
env_result, pod_identity["emp_no"], env_emp, "·".join(EMP_ENVS)
|
|
2664
|
+
),
|
|
2665
|
+
)
|
|
2666
|
+
if pod_identity and not has_request_token():
|
|
2667
|
+
# 헤더가 없으면 대조를 건너뛴다 (이슈 #625) — 개발계는 인증 프록시가 헤더를 pod 까지
|
|
2668
|
+
# 넘기지 않는다. 헤더가 오기 시작하면 아래 대조가 그대로 켜진다
|
|
2669
|
+
logger.warning("pod 주인 대조: %s 헤더 없음 — 건너뜀", ACCESS_TOKEN_HEADER)
|
|
2670
|
+
elif pod_identity:
|
|
2652
2671
|
# 접속한 사람이 pod 주인인지 요청 헤더 토큰의 사번으로 대조한다 (이슈 #617·#623).
|
|
2653
2672
|
# local 은 신원이 없다. 헤더가 오는지만 남긴다 — 토큰 값은 로그에 싣지 않는다
|
|
2654
|
-
|
|
2655
|
-
logger.info("pod 주인 대조: %s 헤더 있음", ACCESS_TOKEN_HEADER)
|
|
2656
|
-
else:
|
|
2657
|
-
logger.warning("pod 주인 대조: %s 헤더 없음 — 거부", ACCESS_TOKEN_HEADER)
|
|
2673
|
+
logger.info("pod 주인 대조: %s 헤더 있음", ACCESS_TOKEN_HEADER)
|
|
2658
2674
|
result = token_emp_check(pod_identity["emp_no"])
|
|
2659
2675
|
if result != "match":
|
|
2660
2676
|
claim = emp_claim_name()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codebuff",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.80",
|
|
4
4
|
"description": "Codebuff JupyterLab Extension - Thin client for Agent Server",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jupyter",
|
|
@@ -146,7 +146,7 @@
|
|
|
146
146
|
}
|
|
147
147
|
},
|
|
148
148
|
"_build": {
|
|
149
|
-
"load": "static/remoteEntry.
|
|
149
|
+
"load": "static/remoteEntry.92bab6f54fc5da41a521.js",
|
|
150
150
|
"extension": "./extension",
|
|
151
151
|
"style": "./style"
|
|
152
152
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _JUPYTERLAB;(()=>{"use strict";var e={8384(e,t,r){const o={"./index":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./extension":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./style":()=>r.e(579).then(()=>()=>r(6579))},n=(e,t)=>(r.R=t,t=r.o(o,e)?o[e]():Promise.resolve().then(()=>{throw new Error('Module "'+e+'" does not exist in container.')}),r.R=void 0,t),a=(e,t)=>{if(!r.S)return;const o="default",n=r.S[o];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return r.S[o]=e,r.I(o,t)};r.d(t,{get:()=>n,init:()=>a})}};const t={};function r(o){const n=t[o];if(void 0!==n)return n.exports;const a=t[o]={id:o,exports:{}};return e[o](a,a.exports,r),a.exports}r.m=e,r.c=t,r.n=e=>{const t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.cw=e=>{var t;return()=>{if(e){var r=e;e=0,t={exports:{}},r.call(t.exports,t,t.exports)}return t.exports}},(()=>{const e=Object.getPrototypeOf;let t;r.t=function(o,n){if(1&n&&(o=this(o)),8&n)return o;if("object"==typeof o&&o){if(4&n&&o.__esModule)return o;if(16&n&&"function"==typeof o.then)return o}const a=Object.create(null);r.r(a);const l={};t=t||[null,e({}),e([]),e(e)];for(var f=2&n&&o;("object"==typeof f||"function"==typeof f)&&!~t.indexOf(f);f=e(f))Object.getOwnPropertyNames(f).forEach(e=>l[e]=()=>o[e]);return l.default=()=>o,r.d(a,l),a}})(),r.d=(e,t)=>{if(Array.isArray(t))for(var o=0;o<t.length;){var n=t[o++],a=t[o++],l=0===a?{enumerable:!0,value:t[o++]}:{enumerable:!0,get:a};r.o(e,n)||Object.defineProperty(e,n,l)}else for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,o)=>(r.f[o](e,t),t),[])),r.u=e=>e+"."+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e]+".js?v="+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="codebuff:";r.l=(o,n,a,l)=>{if(e[o])return void e[o].push(n);let f,i;if(void 0!==a){const e=document.getElementsByTagName("script");for(var c=0;c<e.length;c++){const r=e[c];if(r.getAttribute("src")==o||r.getAttribute("data-webpack")==t+a){f=r;break}}}f||(i=!0,f=document.createElement("script"),f.charset="utf-8",r.nc&&f.setAttribute("nonce",r.nc),f.setAttribute("data-webpack",t+a),f.src=o),e[o]=[n];const d=(t,r)=>{f.onerror=f.onload=null,clearTimeout(u);const n=e[o];if(delete e[o],f.parentNode?.removeChild(f),n?.forEach(e=>e(r)),t)return t(r)},u=setTimeout(d.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=d.bind(null,f.onerror),f.onload=d.bind(null,f.onload),i&&document.head.appendChild(f)}})(),r.r=e=>{Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.dn=e=>{var t=Object.getOwnPropertyDescriptor(e,"name");(!t||!t.writable&&t.configurable)&&Object.defineProperty(e,"name",{value:"default",configurable:!0})},(()=>{r.S={};const e={},t={};r.I=(o,n)=>{n||(n=[]);let a=t[o];if(a||(a=t[o]={}),n.indexOf(a)>=0)return;if(n.push(a),e[o])return e[o];r.o(r.S,o)||(r.S[o]={});const l=r.S[o],f="codebuff",i=(e,t,r,o)=>{const n=l[e]=l[e]||{},a=n[t];(!a||!a.loaded&&(!o!=!a.eager?o:f>a.from))&&(n[t]={get:r,from:f,eager:!!o})},c=[];return"default"===o&&(i("@codemirror/commands","6.8.1",()=>Promise.all([r.e(353),r.e(708),r.e(11),r.e(195)]).then(()=>()=>r(4353))),i("@emotion/react","11.14.0",()=>Promise.all([r.e(666),r.e(345),r.e(677)]).then(()=>()=>r(7677))),i("@emotion/styled","11.14.1",()=>Promise.all([r.e(345),r.e(744),r.e(487)]).then(()=>()=>r(1868))),i("@lezer/java","1.1.4",()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),i("@lezer/javascript","1.5.5",()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),i("@lezer/python","1.1.19",()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),i("@mui/material","5.18.0",()=>Promise.all([r.e(666),r.e(68),r.e(432),r.e(345),r.e(586)]).then(()=>()=>r(3068))),i("codebuff","2.1.79",()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539))),i("diff","0",()=>r.e(481).then(()=>()=>r(7481)))),e[o]=c.length?Promise.all(c).then(()=>e[o]=1):1}})(),(()=>{let e;r.g.importScripts&&(e=r.g.location+"");const t=r.g.document;if(!e&&t&&("SCRIPT"===t.currentScript?.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){const r=t.getElementsByTagName("script");if(r.length){let t=r.length-1;for(;t>-1&&(!e||!/^https?:/.test(e));)e=r[t--].src}}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:|[?#].*$/g,"").replace(/\/[^/]+$/,"/"),r.p=e})(),(()=>{var e=e=>{var t=e=>e.split(".").map(e=>+e==e?+e:e),r=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),o=r[1]?t(r[1]):[];return r[2]&&(o.length++,o.push.apply(o,t(r[2]))),r[3]&&(o.push([]),o.push.apply(o,t(r[3]))),o},t=(t,r)=>{t=e(t),r=e(r);for(var o=0;;){if(o>=t.length)return o<r.length&&"u"!=(typeof r[o])[0];var n=t[o],a=(typeof n)[0];if(o>=r.length)return"u"==a;var l=r[o],f=(typeof l)[0];if(a!=f)return"o"==a&&"n"==f||"s"==f||"u"==a;if("o"!=a&&"u"!=a&&n!=l)return n<l;o++}},o=e=>{var t=e[0],r="";if(1===e.length)return"*";if(t+.5){r+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var n=1,a=1;a<e.length;a++)n--,r+="u"==(typeof(f=e[a]))[0]?"-":(n>0?".":"")+(n=2,f);return r}var l=[];for(a=1;a<e.length;a++){var f=e[a];l.push(0===f?"not("+i()+")":1===f?"("+i()+" || "+i()+")":2===f?l.pop()+" "+l.pop():o(f))}return i();function i(){return l.pop().replace(/^\((.+)\)$/,"$1")}},n=(t,r)=>{if(0 in t){r=e(r);var o=t[0],a=o<0;a&&(o=-o-1);for(var l=0,f=1,i=!0;;f++,l++){var c,d,u=f<t.length?(typeof t[f])[0]:"";if(l>=r.length||"o"==(d=(typeof(c=r[l]))[0]))return!i||("u"==u?f>o&&!a:""==u!=a);if("u"==d){if(!i||"u"!=u)return!1}else if(i)if(u==d)if(f<=o){if(c!=t[f])return!1}else{if(a?c>t[f]:c<t[f])return!1;c!=t[f]&&(i=!1)}else if("s"!=u&&"n"!=u){if(a||f<=o)return!1;i=!1,f--}else{if(f<=o||d<u!=a)return!1;i=!1}else"s"!=u&&"n"!=u&&(i=!1,f--)}}var s=[],b=s.pop.bind(s);for(l=1;l<t.length;l++){var p=t[l];s.push(1==p?b()|b():2==p?b()&b():p?n(p,r):!b())}return!!b()};const a=(e,t)=>e&&r.o(e,t),l=e=>(e.loaded=1,e.get()),f=e=>Object.keys(e).reduce((t,r)=>(e[r].eager&&(t[r]=e[r]),t),{}),i=e=>{throw new Error(e)},c=e=>function(t,o,n,a,l){const f=r.I(t);return f?.then&&!n?f.then(e.bind(e,t,r.S[t],o,!1,a,l)):e(t,r.S[t],o,n,a,l)},d=(e,t,r)=>r?r():((e,t)=>i("Shared module "+t+" doesn't exist in shared scope "+e))(e,t),u=c((e,r,c,u,s,b)=>{if(!a(r,c))return d(e,c,b);const p=((e,r,o,a)=>{const l=a?f(e[r]):e[r];return(r=Object.keys(l).reduce((e,r)=>!n(o,r)||e&&!t(e,r)?e:r,0))&&l[r]})(r,c,s,u);return p?l(p):b?b():void i(((e,t,r,n,a)=>{const l=e[r];return"No satisfying version ("+o(n)+")"+(a?" for eager consumption":"")+" of shared module "+r+" found in shared scope "+t+".\nAvailable versions: "+Object.keys(l).map(e=>e+" from "+l[e].from).join(", ")})(r,e,c,s,u))}),s=c((e,r,i,c,u,s)=>{if(!a(r,i))return d(e,i,s);const b=((e,r,o)=>{const n=o?f(e[r]):e[r];return Object.keys(n).reduce((e,r)=>!e||!n[e].loaded&&t(e,r)?r:e,0)})(r,i,c);return n(u,b)||(p=((e,t,r,n)=>"Unsatisfied version "+r+" from "+(r&&e[t][r].from)+" of shared singleton module "+t+" (required "+o(n)+")")(r,i,b,u),"undefined"!=typeof console&&console.warn&&console.warn(p)),l(r[i][b]);var p}),b={},p={3345:()=>s("default","react",!1,[1,18,2,0]),3157:()=>u("default","@emotion/react",!1,[1,11,4,1],()=>r.e(58).then(()=>()=>r(7677))),7628:()=>s("default","react-dom",!1,[1,18,2,0]),9443:()=>u("default","@emotion/styled",!1,[1,11,3,0],()=>Promise.all([r.e(744),r.e(868)]).then(()=>()=>r(1868))),2576:()=>s("default","@codemirror/state",!1,[1,6,2,0]),277:()=>s("default","@jupyterlab/cells",!1,[1,4,5,1]),1247:()=>s("default","@lumino/widgets",!1,[1,2,3,1,,"alpha",1]),1409:()=>s("default","@jupyterlab/ui-components",!1,[1,4,5,1]),1805:()=>s("default","@jupyterlab/console",!1,[1,4,5,1]),1907:()=>s("default","@jupyterlab/services",!1,[1,7,5,1]),2780:()=>s("default","@jupyterlab/filebrowser",!1,[1,4,5,1]),3118:()=>s("default","@jupyterlab/rendermime",!1,[1,4,5,1]),3366:()=>s("default","@jupyterlab/launcher",!1,[1,4,5,1]),4849:()=>u("default","diff",!1,[1,9,0,0],()=>r.e(481).then(()=>()=>r(7481))),5584:()=>s("default","@jupyterlab/application",!1,[1,4,5,1]),5690:()=>s("default","@jupyterlab/terminal",!1,[1,4,5,1]),5705:()=>u("default","@lezer/javascript",!1,[1,1,5,5],()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),6580:()=>u("default","@lezer/python",!1,[1,1,1,19],()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),6661:()=>u("default","@mui/material",!1,[1,5,14,0],()=>r.e(68).then(()=>()=>r(3068))),6822:()=>u("default","@codemirror/commands",!1,[4,6,8,1],()=>Promise.all([r.e(353),r.e(708),r.e(11)]).then(()=>()=>r(4353))),7125:()=>s("default","@jupyterlab/docmanager",!1,[1,4,5,1]),7292:()=>s("default","@jupyterlab/coreutils",!1,[1,6,5,1]),8389:()=>s("default","@jupyterlab/notebook",!1,[1,4,5,1]),8454:()=>u("default","@lezer/java",!1,[1,1,1,4],()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),9827:()=>s("default","@jupyterlab/apputils",!1,[1,4,6,1]),3708:()=>s("default","@lezer/common",!1,[1,1,0,0]),2084:()=>s("default","@codemirror/language",!1,[1,6,0,0]),5024:()=>s("default","@codemirror/view",!1,[1,6,9,6]),2744:()=>u("default","@emotion/react",!1,[1,11,0,0,,"rc",0],()=>Promise.all([r.e(666),r.e(439)]).then(()=>()=>r(7677))),1839:()=>s("default","@lezer/highlight",!1,[1,1,0,0])},h={11:[2084,5024],195:[2576],345:[3345],539:[277,1247,1409,1805,1907,2780,3118,3366,4849,5584,5690,5705,6580,6661,6822,7125,7292,8389,8454,9827],586:[3157,7628,9443],708:[3708],744:[2744],839:[1839]},m={};r.f.consumes=(e,t)=>{r.o(h,e)&&h[e].forEach(e=>{if(r.o(b,e))return t.push(b[e]);if(!m[e]){const o=t=>{b[e]=0,r.m[e]=o=>{delete r.c[e],o.exports=t()}};m[e]=!0;const n=t=>{delete b[e],r.m[e]=o=>{throw delete r.c[e],t}};try{const r=p[e]();r.then?t.push(b[e]=r.then(o).catch(n)):o(r)}catch(e){n(e)}}})}})(),(()=>{r.b="undefined"!=typeof document&&document.baseURI||self.location.href;const e={679:0};r.f.j=(t,o)=>{let n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)o.push(n[2]);else if(/^(11|195|345|586|708|744|839)$/.test(t))e[t]=0;else{const a=new Promise((r,o)=>n=e[t]=[r,o]);o.push(n[2]=a);const l=new Error,f=o=>{if(r.o(e,t)&&(n=e[t],0!==n&&(e[t]=void 0),n)){const e=o&&("load"===o.type?"missing":o.type),r=o&&o.target&&o.target.src;l.message="Loading chunk "+t+" failed.\n("+e+": "+r+")",l.name="ChunkLoadError",l.type=e,l.request=r,l.event=o,n[1](l)}};r.l(r.p+r.u(t),f,"chunk-"+t,t)}};const t=(t,o)=>{let[n,a,l]=o;var f,i,c=0;if(n.some(t=>0!==e[t])){for(f in a)r.o(a,f)&&(r.m[f]=a[f]);l&&l(r)}for(t&&t(o);c<n.length;c++)i=n[c],r.o(e,i)&&e[i]&&e[i][0](),e[i]=0},o=self.webpackChunkcodebuff=self.webpackChunkcodebuff||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})(),r.nc=void 0;let o=r(8384);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB).codebuff=o})();
|
|
1
|
+
var _JUPYTERLAB;(()=>{"use strict";var e={8384(e,t,r){const o={"./index":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./extension":()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539)),"./style":()=>r.e(579).then(()=>()=>r(6579))},n=(e,t)=>(r.R=t,t=r.o(o,e)?o[e]():Promise.resolve().then(()=>{throw new Error('Module "'+e+'" does not exist in container.')}),r.R=void 0,t),a=(e,t)=>{if(!r.S)return;const o="default",n=r.S[o];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return r.S[o]=e,r.I(o,t)};r.d(t,{get:()=>n,init:()=>a})}};const t={};function r(o){const n=t[o];if(void 0!==n)return n.exports;const a=t[o]={id:o,exports:{}};return e[o](a,a.exports,r),a.exports}r.m=e,r.c=t,r.n=e=>{const t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.cw=e=>{var t;return()=>{if(e){var r=e;e=0,t={exports:{}},r.call(t.exports,t,t.exports)}return t.exports}},(()=>{const e=Object.getPrototypeOf;let t;r.t=function(o,n){if(1&n&&(o=this(o)),8&n)return o;if("object"==typeof o&&o){if(4&n&&o.__esModule)return o;if(16&n&&"function"==typeof o.then)return o}const a=Object.create(null);r.r(a);const l={};t=t||[null,e({}),e([]),e(e)];for(var f=2&n&&o;("object"==typeof f||"function"==typeof f)&&!~t.indexOf(f);f=e(f))Object.getOwnPropertyNames(f).forEach(e=>l[e]=()=>o[e]);return l.default=()=>o,r.d(a,l),a}})(),r.d=(e,t)=>{if(Array.isArray(t))for(var o=0;o<t.length;){var n=t[o++],a=t[o++],l=0===a?{enumerable:!0,value:t[o++]}:{enumerable:!0,get:a};r.o(e,n)||Object.defineProperty(e,n,l)}else for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,o)=>(r.f[o](e,t),t),[])),r.u=e=>e+"."+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e]+".js?v="+{49:"d326f554b6f9ccde6580",58:"eb7cc679f7535cc8a2f1",68:"26b6f59c8454adb17f20",166:"386ff9b2c37ac865fdee",351:"e796b81287b53635cfa4",353:"581bd1cb00746399b62e",367:"575f9621b63c9a641aa9",421:"11dac223a2c2da1b09f5",432:"a749eb54fdc324b18cfa",439:"ba5b5ef70ec6de214b8c",481:"cc2dec9fa869d66f1407",487:"0796e931d6e651482c14",539:"3024c7f70ce4db9b6428",579:"3bc73eef11d3e0ce5d0c",666:"d9bfdb23f98489d0a188",677:"d266c39dbed33bc388b3",868:"5cfe7e1a348ec5af1b8c"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="codebuff:";r.l=(o,n,a,l)=>{if(e[o])return void e[o].push(n);let f,i;if(void 0!==a){const e=document.getElementsByTagName("script");for(var c=0;c<e.length;c++){const r=e[c];if(r.getAttribute("src")==o||r.getAttribute("data-webpack")==t+a){f=r;break}}}f||(i=!0,f=document.createElement("script"),f.charset="utf-8",r.nc&&f.setAttribute("nonce",r.nc),f.setAttribute("data-webpack",t+a),f.src=o),e[o]=[n];const d=(t,r)=>{f.onerror=f.onload=null,clearTimeout(u);const n=e[o];if(delete e[o],f.parentNode?.removeChild(f),n?.forEach(e=>e(r)),t)return t(r)},u=setTimeout(d.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=d.bind(null,f.onerror),f.onload=d.bind(null,f.onload),i&&document.head.appendChild(f)}})(),r.r=e=>{Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.dn=e=>{var t=Object.getOwnPropertyDescriptor(e,"name");(!t||!t.writable&&t.configurable)&&Object.defineProperty(e,"name",{value:"default",configurable:!0})},(()=>{r.S={};const e={},t={};r.I=(o,n)=>{n||(n=[]);let a=t[o];if(a||(a=t[o]={}),n.indexOf(a)>=0)return;if(n.push(a),e[o])return e[o];r.o(r.S,o)||(r.S[o]={});const l=r.S[o],f="codebuff",i=(e,t,r,o)=>{const n=l[e]=l[e]||{},a=n[t];(!a||!a.loaded&&(!o!=!a.eager?o:f>a.from))&&(n[t]={get:r,from:f,eager:!!o})},c=[];return"default"===o&&(i("@codemirror/commands","6.8.1",()=>Promise.all([r.e(353),r.e(708),r.e(11),r.e(195)]).then(()=>()=>r(4353))),i("@emotion/react","11.14.0",()=>Promise.all([r.e(666),r.e(345),r.e(677)]).then(()=>()=>r(7677))),i("@emotion/styled","11.14.1",()=>Promise.all([r.e(345),r.e(744),r.e(487)]).then(()=>()=>r(1868))),i("@lezer/java","1.1.4",()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),i("@lezer/javascript","1.5.5",()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),i("@lezer/python","1.1.19",()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),i("@mui/material","5.18.0",()=>Promise.all([r.e(666),r.e(68),r.e(432),r.e(345),r.e(586)]).then(()=>()=>r(3068))),i("codebuff","2.1.80",()=>Promise.all([r.e(666),r.e(432),r.e(351),r.e(345),r.e(586),r.e(195),r.e(539)]).then(()=>()=>r(5539))),i("diff","0",()=>r.e(481).then(()=>()=>r(7481)))),e[o]=c.length?Promise.all(c).then(()=>e[o]=1):1}})(),(()=>{let e;r.g.importScripts&&(e=r.g.location+"");const t=r.g.document;if(!e&&t&&("SCRIPT"===t.currentScript?.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){const r=t.getElementsByTagName("script");if(r.length){let t=r.length-1;for(;t>-1&&(!e||!/^https?:/.test(e));)e=r[t--].src}}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:|[?#].*$/g,"").replace(/\/[^/]+$/,"/"),r.p=e})(),(()=>{var e=e=>{var t=e=>e.split(".").map(e=>+e==e?+e:e),r=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),o=r[1]?t(r[1]):[];return r[2]&&(o.length++,o.push.apply(o,t(r[2]))),r[3]&&(o.push([]),o.push.apply(o,t(r[3]))),o},t=(t,r)=>{t=e(t),r=e(r);for(var o=0;;){if(o>=t.length)return o<r.length&&"u"!=(typeof r[o])[0];var n=t[o],a=(typeof n)[0];if(o>=r.length)return"u"==a;var l=r[o],f=(typeof l)[0];if(a!=f)return"o"==a&&"n"==f||"s"==f||"u"==a;if("o"!=a&&"u"!=a&&n!=l)return n<l;o++}},o=e=>{var t=e[0],r="";if(1===e.length)return"*";if(t+.5){r+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var n=1,a=1;a<e.length;a++)n--,r+="u"==(typeof(f=e[a]))[0]?"-":(n>0?".":"")+(n=2,f);return r}var l=[];for(a=1;a<e.length;a++){var f=e[a];l.push(0===f?"not("+i()+")":1===f?"("+i()+" || "+i()+")":2===f?l.pop()+" "+l.pop():o(f))}return i();function i(){return l.pop().replace(/^\((.+)\)$/,"$1")}},n=(t,r)=>{if(0 in t){r=e(r);var o=t[0],a=o<0;a&&(o=-o-1);for(var l=0,f=1,i=!0;;f++,l++){var c,d,u=f<t.length?(typeof t[f])[0]:"";if(l>=r.length||"o"==(d=(typeof(c=r[l]))[0]))return!i||("u"==u?f>o&&!a:""==u!=a);if("u"==d){if(!i||"u"!=u)return!1}else if(i)if(u==d)if(f<=o){if(c!=t[f])return!1}else{if(a?c>t[f]:c<t[f])return!1;c!=t[f]&&(i=!1)}else if("s"!=u&&"n"!=u){if(a||f<=o)return!1;i=!1,f--}else{if(f<=o||d<u!=a)return!1;i=!1}else"s"!=u&&"n"!=u&&(i=!1,f--)}}var s=[],b=s.pop.bind(s);for(l=1;l<t.length;l++){var p=t[l];s.push(1==p?b()|b():2==p?b()&b():p?n(p,r):!b())}return!!b()};const a=(e,t)=>e&&r.o(e,t),l=e=>(e.loaded=1,e.get()),f=e=>Object.keys(e).reduce((t,r)=>(e[r].eager&&(t[r]=e[r]),t),{}),i=e=>{throw new Error(e)},c=e=>function(t,o,n,a,l){const f=r.I(t);return f?.then&&!n?f.then(e.bind(e,t,r.S[t],o,!1,a,l)):e(t,r.S[t],o,n,a,l)},d=(e,t,r)=>r?r():((e,t)=>i("Shared module "+t+" doesn't exist in shared scope "+e))(e,t),u=c((e,r,c,u,s,b)=>{if(!a(r,c))return d(e,c,b);const p=((e,r,o,a)=>{const l=a?f(e[r]):e[r];return(r=Object.keys(l).reduce((e,r)=>!n(o,r)||e&&!t(e,r)?e:r,0))&&l[r]})(r,c,s,u);return p?l(p):b?b():void i(((e,t,r,n,a)=>{const l=e[r];return"No satisfying version ("+o(n)+")"+(a?" for eager consumption":"")+" of shared module "+r+" found in shared scope "+t+".\nAvailable versions: "+Object.keys(l).map(e=>e+" from "+l[e].from).join(", ")})(r,e,c,s,u))}),s=c((e,r,i,c,u,s)=>{if(!a(r,i))return d(e,i,s);const b=((e,r,o)=>{const n=o?f(e[r]):e[r];return Object.keys(n).reduce((e,r)=>!e||!n[e].loaded&&t(e,r)?r:e,0)})(r,i,c);return n(u,b)||(p=((e,t,r,n)=>"Unsatisfied version "+r+" from "+(r&&e[t][r].from)+" of shared singleton module "+t+" (required "+o(n)+")")(r,i,b,u),"undefined"!=typeof console&&console.warn&&console.warn(p)),l(r[i][b]);var p}),b={},p={3345:()=>s("default","react",!1,[1,18,2,0]),3157:()=>u("default","@emotion/react",!1,[1,11,4,1],()=>r.e(58).then(()=>()=>r(7677))),7628:()=>s("default","react-dom",!1,[1,18,2,0]),9443:()=>u("default","@emotion/styled",!1,[1,11,3,0],()=>Promise.all([r.e(744),r.e(868)]).then(()=>()=>r(1868))),2576:()=>s("default","@codemirror/state",!1,[1,6,2,0]),277:()=>s("default","@jupyterlab/cells",!1,[1,4,5,1]),1247:()=>s("default","@lumino/widgets",!1,[1,2,3,1,,"alpha",1]),1409:()=>s("default","@jupyterlab/ui-components",!1,[1,4,5,1]),1805:()=>s("default","@jupyterlab/console",!1,[1,4,5,1]),1907:()=>s("default","@jupyterlab/services",!1,[1,7,5,1]),2780:()=>s("default","@jupyterlab/filebrowser",!1,[1,4,5,1]),3118:()=>s("default","@jupyterlab/rendermime",!1,[1,4,5,1]),3366:()=>s("default","@jupyterlab/launcher",!1,[1,4,5,1]),4849:()=>u("default","diff",!1,[1,9,0,0],()=>r.e(481).then(()=>()=>r(7481))),5584:()=>s("default","@jupyterlab/application",!1,[1,4,5,1]),5690:()=>s("default","@jupyterlab/terminal",!1,[1,4,5,1]),5705:()=>u("default","@lezer/javascript",!1,[1,1,5,5],()=>Promise.all([r.e(421),r.e(166),r.e(708),r.e(839)]).then(()=>()=>r(166))),6580:()=>u("default","@lezer/python",!1,[1,1,1,19],()=>Promise.all([r.e(421),r.e(49),r.e(708),r.e(839)]).then(()=>()=>r(49))),6661:()=>u("default","@mui/material",!1,[1,5,14,0],()=>r.e(68).then(()=>()=>r(3068))),6822:()=>u("default","@codemirror/commands",!1,[4,6,8,1],()=>Promise.all([r.e(353),r.e(708),r.e(11)]).then(()=>()=>r(4353))),7125:()=>s("default","@jupyterlab/docmanager",!1,[1,4,5,1]),7292:()=>s("default","@jupyterlab/coreutils",!1,[1,6,5,1]),8389:()=>s("default","@jupyterlab/notebook",!1,[1,4,5,1]),8454:()=>u("default","@lezer/java",!1,[1,1,1,4],()=>Promise.all([r.e(421),r.e(367),r.e(708),r.e(839)]).then(()=>()=>r(7367))),9827:()=>s("default","@jupyterlab/apputils",!1,[1,4,6,1]),3708:()=>s("default","@lezer/common",!1,[1,1,0,0]),2084:()=>s("default","@codemirror/language",!1,[1,6,0,0]),5024:()=>s("default","@codemirror/view",!1,[1,6,9,6]),2744:()=>u("default","@emotion/react",!1,[1,11,0,0,,"rc",0],()=>Promise.all([r.e(666),r.e(439)]).then(()=>()=>r(7677))),1839:()=>s("default","@lezer/highlight",!1,[1,1,0,0])},h={11:[2084,5024],195:[2576],345:[3345],539:[277,1247,1409,1805,1907,2780,3118,3366,4849,5584,5690,5705,6580,6661,6822,7125,7292,8389,8454,9827],586:[3157,7628,9443],708:[3708],744:[2744],839:[1839]},m={};r.f.consumes=(e,t)=>{r.o(h,e)&&h[e].forEach(e=>{if(r.o(b,e))return t.push(b[e]);if(!m[e]){const o=t=>{b[e]=0,r.m[e]=o=>{delete r.c[e],o.exports=t()}};m[e]=!0;const n=t=>{delete b[e],r.m[e]=o=>{throw delete r.c[e],t}};try{const r=p[e]();r.then?t.push(b[e]=r.then(o).catch(n)):o(r)}catch(e){n(e)}}})}})(),(()=>{r.b="undefined"!=typeof document&&document.baseURI||self.location.href;const e={679:0};r.f.j=(t,o)=>{let n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)o.push(n[2]);else if(/^(11|195|345|586|708|744|839)$/.test(t))e[t]=0;else{const a=new Promise((r,o)=>n=e[t]=[r,o]);o.push(n[2]=a);const l=new Error,f=o=>{if(r.o(e,t)&&(n=e[t],0!==n&&(e[t]=void 0),n)){const e=o&&("load"===o.type?"missing":o.type),r=o&&o.target&&o.target.src;l.message="Loading chunk "+t+" failed.\n("+e+": "+r+")",l.name="ChunkLoadError",l.type=e,l.request=r,l.event=o,n[1](l)}};r.l(r.p+r.u(t),f,"chunk-"+t,t)}};const t=(t,o)=>{let[n,a,l]=o;var f,i,c=0;if(n.some(t=>0!==e[t])){for(f in a)r.o(a,f)&&(r.m[f]=a[f]);l&&l(r)}for(t&&t(o);c<n.length;c++)i=n[c],r.o(e,i)&&e[i]&&e[i][0](),e[i]=0},o=self.webpackChunkcodebuff=self.webpackChunkcodebuff||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})(),r.nc=void 0;let o=r(8384);(_JUPYTERLAB=void 0===_JUPYTERLAB?{}:_JUPYTERLAB).codebuff=o})();
|
jupyter_ext/pod_identity.py
CHANGED
|
@@ -14,6 +14,10 @@ pod 이름의 사번은 접속한 사람의 키클락 토큰 사번과도 대조
|
|
|
14
14
|
(centri 포털이 같은 토큰을 그렇게 읽는다). 토큰은 pod 환경변수(`KEYCLOAK_ID_TOKEN`)가 아니라
|
|
15
15
|
**브라우저 요청의 `X-Auth-Request-Access-Token` 헤더**다(이슈 #623) — 인증 프록시가 접속한 사람의
|
|
16
16
|
토큰을 요청마다 붙인다. 환경변수 토큰은 pod 주인의 것이고, 개발계 값은 디코드되지도 않았다.
|
|
17
|
+
헤더가 없으면 대조를 건너뛴다(이슈 #625) — 개발계는 프록시가 헤더를 pod 까지 넘기지 않는다.
|
|
18
|
+
|
|
19
|
+
pod 이름의 사번은 pod 환경변수의 사번(`EMP_ENVS`)과도 대조한다(이슈 #628) — 허용 목록(#609)은
|
|
20
|
+
환경변수 사번을, centri 의 전용 role 은 pod 이름 사번을 쓰므로 둘이 어긋나면 열지 않는다.
|
|
17
21
|
"""
|
|
18
22
|
|
|
19
23
|
from __future__ import annotations
|
|
@@ -22,7 +26,7 @@ import os
|
|
|
22
26
|
import re
|
|
23
27
|
import socket
|
|
24
28
|
from contextvars import ContextVar
|
|
25
|
-
from typing import Any, Dict, Optional
|
|
29
|
+
from typing import Any, Dict, Optional, Tuple
|
|
26
30
|
|
|
27
31
|
_POD_NAME = re.compile(
|
|
28
32
|
r"jupyterx(?P<emp_no>[0-9a-z]{6})[0-9a-z]{8}p(?P<perm>[0-9a-z]{3})(?P<prj_code>[0-9a-z]{6})"
|
|
@@ -73,7 +77,7 @@ _request_token: ContextVar[str] = ContextVar("codebuff_request_token", default="
|
|
|
73
77
|
|
|
74
78
|
|
|
75
79
|
def bind_request_token(handler: Any) -> None:
|
|
76
|
-
"""핸들러의 요청 머리에서 `ACCESS_TOKEN_HEADER` 를 읽어 둔다. 없으면 빈 값(
|
|
80
|
+
"""핸들러의 요청 머리에서 `ACCESS_TOKEN_HEADER` 를 읽어 둔다. 없으면 빈 값(=대조 건너뜀)."""
|
|
77
81
|
headers = getattr(handler.request, "headers", None) or {}
|
|
78
82
|
_request_token.set(headers.get(ACCESS_TOKEN_HEADER, "") or "")
|
|
79
83
|
|
|
@@ -95,6 +99,27 @@ def token_emp_check(emp_no: str) -> str:
|
|
|
95
99
|
return compare_emp_no(emp_no, request_claims(), claim)
|
|
96
100
|
|
|
97
101
|
|
|
102
|
+
#: 플랫폼이 pod 에 거는 사번 환경변수 — 허용 목록(`team_access.codex_allowed`)이 보는 것과 같다
|
|
103
|
+
EMP_ENVS = ("JUPYTERHUB_USER", "HDSP_BDP_ID")
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
def env_emp_check(emp_no: str) -> Tuple[str, str]:
|
|
107
|
+
"""pod 이름 사번과 사번 환경변수 대조 → (`match`·`env_mismatch`·`no_env_emp`, 어긋난 값).
|
|
108
|
+
|
|
109
|
+
값이 있는 환경변수는 모두 같아야 한다. 둘 다 비면 거부한다 — pod 에서는 플랫폼이 늘 넣는다.
|
|
110
|
+
"""
|
|
111
|
+
from .team_access import _norm
|
|
112
|
+
|
|
113
|
+
values = [os.environ.get(name, "").strip() for name in EMP_ENVS]
|
|
114
|
+
values = [v for v in values if v]
|
|
115
|
+
if not values:
|
|
116
|
+
return "no_env_emp", ""
|
|
117
|
+
for value in values:
|
|
118
|
+
if _norm(value) != _norm(emp_no):
|
|
119
|
+
return "env_mismatch", value
|
|
120
|
+
return "match", ""
|
|
121
|
+
|
|
122
|
+
|
|
98
123
|
def pod_name() -> str:
|
|
99
124
|
"""k8s 에서는 hostname 이 pod 이름이다."""
|
|
100
125
|
return socket.gethostname()
|
|
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
|