notebook 7.2.0a0__py3-none-any.whl → 7.2.0b1__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.

Potentially problematic release.


This version of notebook might be problematic. Click here for more details.

Files changed (184) hide show
  1. notebook/_version.py +1 -1
  2. notebook/static/113.bundle.js +1 -0
  3. notebook/static/1198.bundle.js +1 -1
  4. notebook/static/134.bundle.js +1 -1
  5. notebook/static/1408.bundle.js +1 -1
  6. notebook/static/1496.bundle.js +1 -1
  7. notebook/static/1647.bundle.js +1 -1
  8. notebook/static/1650.bundle.js +1 -1
  9. notebook/static/1684.bundle.js +1 -1
  10. notebook/static/1809.bundle.js +1 -1
  11. notebook/static/1827.bundle.js +1 -1
  12. notebook/static/1833.bundle.js +1 -1
  13. notebook/static/1958.bundle.js +1 -1
  14. notebook/static/1962.bundle.js +1 -0
  15. notebook/static/2007.bundle.js +1 -1
  16. notebook/static/2065.bundle.js +1 -1
  17. notebook/static/2088.bundle.js +1 -1
  18. notebook/static/2089.bundle.js +1 -1
  19. notebook/static/2122.bundle.js +1 -1
  20. notebook/static/2167.bundle.js +1 -1
  21. notebook/static/2184.bundle.js +1 -1
  22. notebook/static/2311.bundle.js +1 -1
  23. notebook/static/2401.bundle.js +1 -1
  24. notebook/static/2479.bundle.js +1 -1
  25. notebook/static/2489.bundle.js +1 -1
  26. notebook/static/2557.bundle.js +5 -5
  27. notebook/static/2607.bundle.js +1 -1
  28. notebook/static/2615.bundle.js +1 -1
  29. notebook/static/2636.bundle.js +1 -0
  30. notebook/static/2692.bundle.js +1 -1
  31. notebook/static/2924.bundle.js +1 -1
  32. notebook/static/2944.bundle.js +1 -1
  33. notebook/static/3129.bundle.js +1 -1
  34. notebook/static/3146.bundle.js +1 -1
  35. notebook/static/3187.bundle.js +1 -1
  36. notebook/static/3213.bundle.js +1 -1
  37. notebook/static/3340.bundle.js +1 -1
  38. notebook/static/3360.bundle.js +1 -1
  39. notebook/static/3462.bundle.js +1 -0
  40. notebook/static/3466.bundle.js +1 -1
  41. notebook/static/3512.bundle.js +1 -1
  42. notebook/static/3676.bundle.js +1 -1
  43. notebook/static/3680.bundle.js +1 -1
  44. notebook/static/374.bundle.js +1 -0
  45. notebook/static/3768.bundle.js +1 -1
  46. notebook/static/377.bundle.js +1 -1
  47. notebook/static/3863.bundle.js +1 -1
  48. notebook/static/3881.bundle.js +1 -1
  49. notebook/static/4042.bundle.js +1 -1
  50. notebook/static/4212.bundle.js +1 -1
  51. notebook/static/4382.bundle.js +1 -1
  52. notebook/static/4430.bundle.js +1 -0
  53. notebook/static/4630.bundle.js +1 -1
  54. notebook/static/4645.bundle.js +1 -1
  55. notebook/static/4708.bundle.js +1 -0
  56. notebook/static/4811.bundle.js +1 -1
  57. notebook/static/4837.bundle.js +1 -1
  58. notebook/static/5099.bundle.js +1 -1
  59. notebook/static/5135.bundle.js +1 -1
  60. notebook/static/5254.bundle.js +1 -0
  61. notebook/static/5263.bundle.js +1 -1
  62. notebook/static/5299.bundle.js +1 -1
  63. notebook/static/5313.bundle.js +1 -1
  64. notebook/static/5325.bundle.js +1 -1
  65. notebook/static/5346.bundle.js +1 -1
  66. notebook/static/5426.bundle.js +1 -1
  67. notebook/static/545.bundle.js +1 -1
  68. notebook/static/5573.bundle.js +1 -1
  69. notebook/static/5601.bundle.js +1 -1
  70. notebook/static/5733.bundle.js +1 -1
  71. notebook/static/5912.bundle.js +1 -1
  72. notebook/static/5921.bundle.js +1 -1
  73. notebook/static/6017.bundle.js +1 -1
  74. notebook/static/6139.bundle.js +1 -1
  75. notebook/static/62.bundle.js +1 -1
  76. notebook/static/6345.bundle.js +1 -1
  77. notebook/static/6521.bundle.js +1 -0
  78. notebook/static/6604.bundle.js +1 -1
  79. notebook/static/6621.bundle.js +1 -1
  80. notebook/static/6627.bundle.js +1 -1
  81. notebook/static/6748.bundle.js +1 -0
  82. notebook/static/6815.bundle.js +1 -1
  83. notebook/static/6853.bundle.js +1 -1
  84. notebook/static/6893.bundle.js +1 -1
  85. notebook/static/690.bundle.js +1 -1
  86. notebook/static/6962.bundle.js +1 -1
  87. notebook/static/6999.bundle.js +1 -1
  88. notebook/static/7226.bundle.js +1 -1
  89. notebook/static/7252.bundle.js +1 -1
  90. notebook/static/7302.bundle.js +1 -1
  91. notebook/static/7386.bundle.js +1 -1
  92. notebook/static/7391.bundle.js +1 -1
  93. notebook/static/7543.bundle.js +1 -1
  94. notebook/static/7603.bundle.js +1 -1
  95. notebook/static/7639.bundle.js +1 -1
  96. notebook/static/7655.bundle.js +1 -0
  97. notebook/static/7684.bundle.js +1 -1
  98. notebook/static/7812.bundle.js +1 -1
  99. notebook/static/7819.bundle.js +1 -1
  100. notebook/static/7854.bundle.js +1 -1
  101. notebook/static/7884.bundle.js +1 -0
  102. notebook/static/7900.bundle.js +1 -1
  103. notebook/static/7906.bundle.js +1 -1
  104. notebook/static/8032.bundle.js +1 -1
  105. notebook/static/8471.bundle.js +1 -1
  106. notebook/static/8579.bundle.js +1 -1
  107. notebook/static/8633.bundle.js +1 -1
  108. notebook/static/8771.bundle.js +1 -1
  109. notebook/static/8781.bundle.js +1 -1
  110. notebook/static/8845.bundle.js +1 -1
  111. notebook/static/8875.bundle.js +1 -1
  112. notebook/static/8907.bundle.js +1 -1
  113. notebook/static/8928.bundle.js +1 -1
  114. notebook/static/893.bundle.js +1 -1
  115. notebook/static/901.bundle.js +1 -1
  116. notebook/static/9068.bundle.js +1 -1
  117. notebook/static/9136.bundle.js +1 -0
  118. notebook/static/9151.bundle.js +1 -1
  119. notebook/static/9161.bundle.js +1 -1
  120. notebook/static/9268.bundle.js +1 -1
  121. notebook/static/9335.bundle.js +1 -1
  122. notebook/static/9341.bundle.js +1 -1
  123. notebook/static/9380.bundle.js +1 -1
  124. notebook/static/9605.bundle.js +1 -1
  125. notebook/static/9638.bundle.js +1 -1
  126. notebook/static/9680.bundle.js +1 -1
  127. notebook/static/9685.bundle.js +1 -1
  128. notebook/static/9752.bundle.js +1 -1
  129. notebook/static/9821.bundle.js +1 -1
  130. notebook/static/9852.bundle.js +1 -1
  131. notebook/static/bundle.js +1 -1
  132. notebook/static/third-party-licenses.json +138 -132
  133. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/package.json.orig +14 -14
  134. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/documentsearch-extension/package.json.orig +4 -4
  135. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/help-extension/package.json.orig +6 -6
  136. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/package.json.orig +9 -9
  137. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/tree-extension/package.json.orig +15 -15
  138. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/package.json +11 -11
  139. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/schemas/@jupyter-notebook/lab-extension/package.json.orig +10 -10
  140. notebook-7.2.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/993.b8375a7b921d370031f6.js → notebook-7.2.0b1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/344.4324c02f8eb21e5108b0.js +1 -1
  141. notebook-7.2.0b1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/568.8be37ab03fed258737af.js +1 -0
  142. notebook-7.2.0b1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/928.874775037e1e9763baf2.js +1 -0
  143. notebook-7.2.0b1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/remoteEntry.4c55e11421866a455f51.js +1 -0
  144. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/third-party-licenses.json +2 -2
  145. {notebook-7.2.0a0.dist-info → notebook-7.2.0b1.dist-info}/METADATA +2 -2
  146. {notebook-7.2.0a0.dist-info → notebook-7.2.0b1.dist-info}/RECORD +169 -168
  147. {notebook-7.2.0a0.dist-info → notebook-7.2.0b1.dist-info}/WHEEL +1 -1
  148. notebook/static/1950.bundle.js +0 -1
  149. notebook/static/2067.bundle.js +0 -1
  150. notebook/static/2094.bundle.js +0 -1
  151. notebook/static/2512.bundle.js +0 -1
  152. notebook/static/2577.bundle.js +0 -1
  153. notebook/static/2758.bundle.js +0 -1
  154. notebook/static/3654.bundle.js +0 -1
  155. notebook/static/4928.bundle.js +0 -1
  156. notebook/static/4997.bundle.js +0 -1
  157. notebook/static/6256.bundle.js +0 -1
  158. notebook/static/6467.bundle.js +0 -1
  159. notebook/static/7394.bundle.js +0 -1
  160. notebook-7.2.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/568.7788635067bbb0f78314.js +0 -1
  161. notebook-7.2.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/928.1e2ca839fc49c8dc7f13.js +0 -1
  162. notebook-7.2.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/remoteEntry.e5cd5d0bbfa59d2e79c6.js +0 -1
  163. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/etc/jupyter/jupyter_server_config.d/notebook.json +0 -0
  164. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/applications/jupyter-notebook.desktop +0 -0
  165. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/icons/hicolor/scalable/apps/notebook.svg +0 -0
  166. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/menus.json +0 -0
  167. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/pages.json +0 -0
  168. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/shell.json +0 -0
  169. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/title.json +0 -0
  170. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/top.json +0 -0
  171. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/zen.json +0 -0
  172. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/help-extension/open.json +0 -0
  173. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/checkpoints.json +0 -0
  174. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/edit-notebook-metadata.json +0 -0
  175. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/kernel-logo.json +0 -0
  176. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/scroll-output.json +0 -0
  177. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/tree-extension/file-actions.json +0 -0
  178. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/tree-extension/widget.json +0 -0
  179. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/schemas/@jupyter-notebook/lab-extension/interface-switcher.json +0 -0
  180. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/schemas/@jupyter-notebook/lab-extension/launch-tree.json +0 -0
  181. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/93.eae3497dd223d842d198.js +0 -0
  182. {notebook-7.2.0a0.data → notebook-7.2.0b1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/style.js +0 -0
  183. {notebook-7.2.0a0.dist-info → notebook-7.2.0b1.dist-info}/entry_points.txt +0 -0
  184. {notebook-7.2.0a0.dist-info → notebook-7.2.0b1.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[7884],{47884:(e,t,i)=>{var s,r=i(27061);self,s=()=>(()=>{"use strict";var e={965:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;const s=i(374),r=i(509),o=i(855),n=i(859),a=i(381),h=11,l=h*Float32Array.BYTES_PER_ELEMENT;let c,d=0,_=0,u=0;class g extends n.Disposable{constructor(e,t,i,o){super(),this._terminal=e,this._gl=t,this._dimensions=i,this._optionsService=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)]};const h=this._gl;void 0===r.TextureAtlas.maxAtlasPages&&(r.TextureAtlas.maxAtlasPages=Math.min(32,(0,s.throwIfFalsy)(h.getParameter(h.MAX_TEXTURE_IMAGE_UNITS))),r.TextureAtlas.maxTextureSize=(0,s.throwIfFalsy)(h.getParameter(h.MAX_TEXTURE_SIZE))),this._program=(0,s.throwIfFalsy)((0,a.createProgram)(h,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in float a_texpage;\nlayout (location = 5) in vec2 a_texcoord;\nlayout (location = 6) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\nflat out int v_texpage;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texpage = int(a_texpage);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}",function(e){let t="";for(let i=1;i<e;i++)t+=` else if (v_texpage == ${i}) { outColor = texture(u_texture[${i}], v_texcoord); }`;return`#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\nflat in int v_texpage;\n\nuniform sampler2D u_texture[${e}];\n\nout vec4 outColor;\n\nvoid main() {\n if (v_texpage == 0) {\n outColor = texture(u_texture[0], v_texcoord);\n } ${t}\n}`}(r.TextureAtlas.maxAtlasPages))),this.register((0,n.toDisposable)((()=>h.deleteProgram(this._program)))),this._projectionLocation=(0,s.throwIfFalsy)(h.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=(0,s.throwIfFalsy)(h.getUniformLocation(this._program,"u_resolution")),this._textureLocation=(0,s.throwIfFalsy)(h.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=h.createVertexArray(),h.bindVertexArray(this._vertexArrayObject);const c=new Float32Array([0,0,1,0,0,1,1,1]),d=h.createBuffer();this.register((0,n.toDisposable)((()=>h.deleteBuffer(d)))),h.bindBuffer(h.ARRAY_BUFFER,d),h.bufferData(h.ARRAY_BUFFER,c,h.STATIC_DRAW),h.enableVertexAttribArray(0),h.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);const _=new Uint8Array([0,1,2,3]),u=h.createBuffer();this.register((0,n.toDisposable)((()=>h.deleteBuffer(u)))),h.bindBuffer(h.ELEMENT_ARRAY_BUFFER,u),h.bufferData(h.ELEMENT_ARRAY_BUFFER,_,h.STATIC_DRAW),this._attributesBuffer=(0,s.throwIfFalsy)(h.createBuffer()),this.register((0,n.toDisposable)((()=>h.deleteBuffer(this._attributesBuffer)))),h.bindBuffer(h.ARRAY_BUFFER,this._attributesBuffer),h.enableVertexAttribArray(2),h.vertexAttribPointer(2,2,h.FLOAT,!1,l,0),h.vertexAttribDivisor(2,1),h.enableVertexAttribArray(3),h.vertexAttribPointer(3,2,h.FLOAT,!1,l,2*Float32Array.BYTES_PER_ELEMENT),h.vertexAttribDivisor(3,1),h.enableVertexAttribArray(4),h.vertexAttribPointer(4,1,h.FLOAT,!1,l,4*Float32Array.BYTES_PER_ELEMENT),h.vertexAttribDivisor(4,1),h.enableVertexAttribArray(5),h.vertexAttribPointer(5,2,h.FLOAT,!1,l,5*Float32Array.BYTES_PER_ELEMENT),h.vertexAttribDivisor(5,1),h.enableVertexAttribArray(6),h.vertexAttribPointer(6,2,h.FLOAT,!1,l,7*Float32Array.BYTES_PER_ELEMENT),h.vertexAttribDivisor(6,1),h.enableVertexAttribArray(1),h.vertexAttribPointer(1,2,h.FLOAT,!1,l,9*Float32Array.BYTES_PER_ELEMENT),h.vertexAttribDivisor(1,1),h.useProgram(this._program);const g=new Int32Array(r.TextureAtlas.maxAtlasPages);for(let e=0;e<r.TextureAtlas.maxAtlasPages;e++)g[e]=e;h.uniform1iv(this._textureLocation,g),h.uniformMatrix4fv(this._projectionLocation,!1,a.PROJECTION_MATRIX),this._atlasTextures=[];for(let e=0;e<r.TextureAtlas.maxAtlasPages;e++){const t=new a.GLTexture((0,s.throwIfFalsy)(h.createTexture()));this.register((0,n.toDisposable)((()=>h.deleteTexture(t.texture)))),h.activeTexture(h.TEXTURE0+e),h.bindTexture(h.TEXTURE_2D,t.texture),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),h.texImage2D(h.TEXTURE_2D,0,h.RGBA,1,1,0,h.RGBA,h.UNSIGNED_BYTE,new Uint8Array([255,0,0,255])),this._atlasTextures[e]=t}h.enable(h.BLEND),h.blendFunc(h.SRC_ALPHA,h.ONE_MINUS_SRC_ALPHA),this.handleResize()}beginFrame(){return!this._atlas||this._atlas.beginFrame()}updateCell(e,t,i,s,r,o,n,a,h){this._updateCell(this._vertices.attributes,e,t,i,s,r,o,n,a,h)}_updateCell(e,t,i,r,n,a,l,g,v,f){d=(i*this._terminal.cols+t)*h,r!==o.NULL_CELL_CODE&&void 0!==r?this._atlas&&(c=g&&g.length>1?this._atlas.getRasterizedGlyphCombinedChar(g,n,a,l,!1):this._atlas.getRasterizedGlyph(r,n,a,l,!1),_=Math.floor((this._dimensions.device.cell.width-this._dimensions.device.char.width)/2),n!==f&&c.offset.x>_?(u=c.offset.x-_,e[d]=-(c.offset.x-u)+this._dimensions.device.char.left,e[d+1]=-c.offset.y+this._dimensions.device.char.top,e[d+2]=(c.size.x-u)/this._dimensions.device.canvas.width,e[d+3]=c.size.y/this._dimensions.device.canvas.height,e[d+4]=c.texturePage,e[d+5]=c.texturePositionClipSpace.x+u/this._atlas.pages[c.texturePage].canvas.width,e[d+6]=c.texturePositionClipSpace.y,e[d+7]=c.sizeClipSpace.x-u/this._atlas.pages[c.texturePage].canvas.width,e[d+8]=c.sizeClipSpace.y):(e[d]=-c.offset.x+this._dimensions.device.char.left,e[d+1]=-c.offset.y+this._dimensions.device.char.top,e[d+2]=c.size.x/this._dimensions.device.canvas.width,e[d+3]=c.size.y/this._dimensions.device.canvas.height,e[d+4]=c.texturePage,e[d+5]=c.texturePositionClipSpace.x,e[d+6]=c.texturePositionClipSpace.y,e[d+7]=c.sizeClipSpace.x,e[d+8]=c.sizeClipSpace.y),this._optionsService.rawOptions.rescaleOverlappingGlyphs&&(0,s.allowRescaling)(r,v,c.size.x,this._dimensions.device.cell.width)&&(e[d+2]=(this._dimensions.device.cell.width-1)/this._dimensions.device.canvas.width)):e.fill(0,d,d+h-1-2)}clear(){const e=this._terminal,t=e.cols*e.rows*h;this._vertices.count!==t?this._vertices.attributes=new Float32Array(t):this._vertices.attributes.fill(0);let i=0;for(;i<this._vertices.attributesBuffers.length;i++)this._vertices.count!==t?this._vertices.attributesBuffers[i]=new Float32Array(t):this._vertices.attributesBuffers[i].fill(0);this._vertices.count=t,i=0;for(let t=0;t<e.rows;t++)for(let s=0;s<e.cols;s++)this._vertices.attributes[i+9]=s/e.cols,this._vertices.attributes[i+10]=t/e.rows,i+=h}handleResize(){const e=this._gl;e.useProgram(this._program),e.viewport(0,0,e.canvas.width,e.canvas.height),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),this.clear()}render(e){if(!this._atlas)return;const t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),this._activeBuffer=(this._activeBuffer+1)%2;const i=this._vertices.attributesBuffers[this._activeBuffer];let s=0;for(let t=0;t<e.lineLengths.length;t++){const r=t*this._terminal.cols*h,o=this._vertices.attributes.subarray(r,r+e.lineLengths[t]*h);i.set(o,s),s+=o.length}t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,i.subarray(0,s),t.STREAM_DRAW);for(let e=0;e<this._atlas.pages.length;e++)this._atlas.pages[e].version!==this._atlasTextures[e].version&&this._bindAtlasPageTexture(t,this._atlas,e);t.drawElementsInstanced(t.TRIANGLE_STRIP,4,t.UNSIGNED_BYTE,0,s/h)}setAtlas(e){this._atlas=e;for(const e of this._atlasTextures)e.version=-1}_bindAtlasPageTexture(e,t,i){e.activeTexture(e.TEXTURE0+i),e.bindTexture(e.TEXTURE_2D,this._atlasTextures[i].texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t.pages[i].canvas),e.generateMipmap(e.TEXTURE_2D),this._atlasTextures[i].version=t.pages[i].version}setDimensions(e){this._dimensions=e}}t.GlyphRenderer=g},742:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;const s=i(374),r=i(859),o=i(310),n=i(381),a=8*Float32Array.BYTES_PER_ELEMENT;class h{constructor(){this.attributes=new Float32Array(160),this.count=0}}let l=0,c=0,d=0,_=0,u=0,g=0,v=0;class f extends r.Disposable{constructor(e,t,i,o){super(),this._terminal=e,this._gl=t,this._dimensions=i,this._themeService=o,this._vertices=new h,this._verticesCursor=new h;const l=this._gl;this._program=(0,s.throwIfFalsy)((0,n.createProgram)(l,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = a_position + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this.register((0,r.toDisposable)((()=>l.deleteProgram(this._program)))),this._projectionLocation=(0,s.throwIfFalsy)(l.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=l.createVertexArray(),l.bindVertexArray(this._vertexArrayObject);const c=new Float32Array([0,0,1,0,0,1,1,1]),d=l.createBuffer();this.register((0,r.toDisposable)((()=>l.deleteBuffer(d)))),l.bindBuffer(l.ARRAY_BUFFER,d),l.bufferData(l.ARRAY_BUFFER,c,l.STATIC_DRAW),l.enableVertexAttribArray(3),l.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);const _=new Uint8Array([0,1,2,3]),u=l.createBuffer();this.register((0,r.toDisposable)((()=>l.deleteBuffer(u)))),l.bindBuffer(l.ELEMENT_ARRAY_BUFFER,u),l.bufferData(l.ELEMENT_ARRAY_BUFFER,_,l.STATIC_DRAW),this._attributesBuffer=(0,s.throwIfFalsy)(l.createBuffer()),this.register((0,r.toDisposable)((()=>l.deleteBuffer(this._attributesBuffer)))),l.bindBuffer(l.ARRAY_BUFFER,this._attributesBuffer),l.enableVertexAttribArray(0),l.vertexAttribPointer(0,2,l.FLOAT,!1,a,0),l.vertexAttribDivisor(0,1),l.enableVertexAttribArray(1),l.vertexAttribPointer(1,2,l.FLOAT,!1,a,2*Float32Array.BYTES_PER_ELEMENT),l.vertexAttribDivisor(1,1),l.enableVertexAttribArray(2),l.vertexAttribPointer(2,4,l.FLOAT,!1,a,4*Float32Array.BYTES_PER_ELEMENT),l.vertexAttribDivisor(2,1),this._updateCachedColors(o.colors),this.register(this._themeService.onChangeColors((e=>{this._updateCachedColors(e),this._updateViewportRectangle()})))}renderBackgrounds(){this._renderVertices(this._vertices)}renderCursor(){this._renderVertices(this._verticesCursor)}_renderVertices(e){const t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,n.PROJECTION_MATRIX),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,e.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLE_STRIP,4,t.UNSIGNED_BYTE,0,e.count)}handleResize(){this._updateViewportRectangle()}setDimensions(e){this._dimensions=e}_updateCachedColors(e){this._bgFloat=this._colorToFloat32Array(e.background),this._cursorFloat=this._colorToFloat32Array(e.cursor)}_updateViewportRectangle(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.device.cell.width,this._terminal.rows*this._dimensions.device.cell.height,this._bgFloat)}updateBackgrounds(e){const t=this._terminal,i=this._vertices;let s,r,n,a,h,l,c,d,_,u,g,v=1;for(s=0;s<t.rows;s++){for(n=-1,a=0,h=0,l=!1,r=0;r<t.cols;r++)c=(s*t.cols+r)*o.RENDER_MODEL_INDICIES_PER_CELL,d=e.cells[c+o.RENDER_MODEL_BG_OFFSET],_=e.cells[c+o.RENDER_MODEL_FG_OFFSET],u=!!(67108864&_),(d!==a||_!==h&&(l||u))&&((0!==a||l&&0!==h)&&(g=8*v++,this._updateRectangle(i,g,h,a,n,r,s)),n=r,a=d,h=_,l=u);(0!==a||l&&0!==h)&&(g=8*v++,this._updateRectangle(i,g,h,a,n,t.cols,s))}i.count=v}updateCursor(e){const t=this._verticesCursor,i=e.cursor;if(!i||"block"===i.style)return void(t.count=0);let s,r=0;"bar"!==i.style&&"outline"!==i.style||(s=8*r++,this._addRectangleFloat(t.attributes,s,i.x*this._dimensions.device.cell.width,i.y*this._dimensions.device.cell.height,"bar"===i.style?i.dpr*i.cursorWidth:i.dpr,this._dimensions.device.cell.height,this._cursorFloat)),"underline"!==i.style&&"outline"!==i.style||(s=8*r++,this._addRectangleFloat(t.attributes,s,i.x*this._dimensions.device.cell.width,(i.y+1)*this._dimensions.device.cell.height-i.dpr,i.width*this._dimensions.device.cell.width,i.dpr,this._cursorFloat)),"outline"===i.style&&(s=8*r++,this._addRectangleFloat(t.attributes,s,i.x*this._dimensions.device.cell.width,i.y*this._dimensions.device.cell.height,i.width*this._dimensions.device.cell.width,i.dpr,this._cursorFloat),s=8*r++,this._addRectangleFloat(t.attributes,s,(i.x+i.width)*this._dimensions.device.cell.width-i.dpr,i.y*this._dimensions.device.cell.height,i.dpr,this._dimensions.device.cell.height,this._cursorFloat)),t.count=r}_updateRectangle(e,t,i,s,r,o,a){if(67108864&i)switch(50331648&i){case 16777216:case 33554432:l=this._themeService.colors.ansi[255&i].rgba;break;case 50331648:l=(16777215&i)<<8;break;default:l=this._themeService.colors.foreground.rgba}else switch(50331648&s){case 16777216:case 33554432:l=this._themeService.colors.ansi[255&s].rgba;break;case 50331648:l=(16777215&s)<<8;break;default:l=this._themeService.colors.background.rgba}e.attributes.length<t+4&&(e.attributes=(0,n.expandFloat32Array)(e.attributes,this._terminal.rows*this._terminal.cols*8)),c=r*this._dimensions.device.cell.width,d=a*this._dimensions.device.cell.height,_=(l>>24&255)/255,u=(l>>16&255)/255,g=(l>>8&255)/255,v=1,this._addRectangle(e.attributes,t,c,d,(o-r)*this._dimensions.device.cell.width,this._dimensions.device.cell.height,_,u,g,v)}_addRectangle(e,t,i,s,r,o,n,a,h,l){e[t]=i/this._dimensions.device.canvas.width,e[t+1]=s/this._dimensions.device.canvas.height,e[t+2]=r/this._dimensions.device.canvas.width,e[t+3]=o/this._dimensions.device.canvas.height,e[t+4]=n,e[t+5]=a,e[t+6]=h,e[t+7]=l}_addRectangleFloat(e,t,i,s,r,o,n){e[t]=i/this._dimensions.device.canvas.width,e[t+1]=s/this._dimensions.device.canvas.height,e[t+2]=r/this._dimensions.device.canvas.width,e[t+3]=o/this._dimensions.device.canvas.height,e[t+4]=n[0],e[t+5]=n[1],e[t+6]=n[2],e[t+7]=n[3]}_colorToFloat32Array(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])}}t.RectangleRenderer=f},310:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_EXT_OFFSET=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;const s=i(296);t.RENDER_MODEL_INDICIES_PER_CELL=4,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.RENDER_MODEL_EXT_OFFSET=3,t.COMBINED_CHAR_BIT_MASK=2147483648,t.RenderModel=class{constructor(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection=(0,s.createSelectionRenderModel)()}resize(e,i){const s=e*i*t.RENDER_MODEL_INDICIES_PER_CELL;s!==this.cells.length&&(this.cells=new Uint32Array(s),this.lineLengths=new Uint32Array(i))}clear(){this.cells.fill(0,0),this.lineLengths.fill(0,0)}}},666:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.JoinedCellData=t.WebglRenderer=void 0;const s=i(820),r=i(274),o=i(627),n=i(457),a=i(56),h=i(374),l=i(345),c=i(859),d=i(147),_=i(782),u=i(855),g=i(965),v=i(742),f=i(310),p=i(733);class C extends c.Disposable{constructor(e,t,i,n,d,u,g,v,C){super(),this._terminal=e,this._characterJoinerService=t,this._charSizeService=i,this._coreBrowserService=n,this._coreService=d,this._decorationService=u,this._optionsService=g,this._themeService=v,this._cursorBlinkStateManager=new c.MutableDisposable,this._charAtlasDisposable=this.register(new c.MutableDisposable),this._observerDisposable=this.register(new c.MutableDisposable),this._model=new f.RenderModel,this._workCell=new _.CellData,this._workCell2=new _.CellData,this._rectangleRenderer=this.register(new c.MutableDisposable),this._glyphRenderer=this.register(new c.MutableDisposable),this._onChangeTextureAtlas=this.register(new l.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new l.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=this.register(new l.EventEmitter),this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._onRequestRedraw=this.register(new l.EventEmitter),this.onRequestRedraw=this._onRequestRedraw.event,this._onContextLoss=this.register(new l.EventEmitter),this.onContextLoss=this._onContextLoss.event,this.register(this._themeService.onChangeColors((()=>this._handleColorChange()))),this._cellColorResolver=new r.CellColorResolver(this._terminal,this._optionsService,this._model.selection,this._decorationService,this._coreBrowserService,this._themeService),this._core=this._terminal._core,this._renderLayers=[new p.LinkRenderLayer(this._core.screenElement,2,this._terminal,this._core.linkifier,this._coreBrowserService,g,this._themeService)],this.dimensions=(0,h.createRenderDimensions)(),this._devicePixelRatio=this._coreBrowserService.dpr,this._updateDimensions(),this._updateCursorBlink(),this.register(g.onOptionChange((()=>this._handleOptionsChanged()))),this._canvas=this._coreBrowserService.mainDocument.createElement("canvas");const m={antialias:!1,depth:!1,preserveDrawingBuffer:C};if(this._gl=this._canvas.getContext("webgl2",m),!this._gl)throw new Error("WebGL2 not supported "+this._gl);this.register((0,s.addDisposableDomListener)(this._canvas,"webglcontextlost",(e=>{console.log("webglcontextlost event received"),e.preventDefault(),this._contextRestorationTimeout=setTimeout((()=>{this._contextRestorationTimeout=void 0,console.warn("webgl context not restored; firing onContextLoss"),this._onContextLoss.fire(e)}),3e3)}))),this.register((0,s.addDisposableDomListener)(this._canvas,"webglcontextrestored",(e=>{console.warn("webglcontextrestored event received"),clearTimeout(this._contextRestorationTimeout),this._contextRestorationTimeout=void 0,(0,o.removeTerminalFromCache)(this._terminal),this._initializeWebGLState(),this._requestRedrawViewport()}))),this._observerDisposable.value=(0,a.observeDevicePixelDimensions)(this._canvas,this._coreBrowserService.window,((e,t)=>this._setCanvasDevicePixelDimensions(e,t))),this.register(this._coreBrowserService.onWindowChange((e=>{this._observerDisposable.value=(0,a.observeDevicePixelDimensions)(this._canvas,e,((e,t)=>this._setCanvasDevicePixelDimensions(e,t)))}))),this._core.screenElement.appendChild(this._canvas),[this._rectangleRenderer.value,this._glyphRenderer.value]=this._initializeWebGLState(),this._isAttached=this._coreBrowserService.window.document.body.contains(this._core.screenElement),this.register((0,c.toDisposable)((()=>{for(const e of this._renderLayers)e.dispose();this._canvas.parentElement?.removeChild(this._canvas),(0,o.removeTerminalFromCache)(this._terminal)})))}get textureAtlas(){return this._charAtlas?.pages[0].canvas}_handleColorChange(){this._refreshCharAtlas(),this._clearModel(!0)}handleDevicePixelRatioChange(){this._devicePixelRatio!==this._coreBrowserService.dpr&&(this._devicePixelRatio=this._coreBrowserService.dpr,this.handleResize(this._terminal.cols,this._terminal.rows))}handleResize(e,t){this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows);for(const e of this._renderLayers)e.resize(this._terminal,this.dimensions);this._canvas.width=this.dimensions.device.canvas.width,this._canvas.height=this.dimensions.device.canvas.height,this._canvas.style.width=`${this.dimensions.css.canvas.width}px`,this._canvas.style.height=`${this.dimensions.css.canvas.height}px`,this._core.screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._core.screenElement.style.height=`${this.dimensions.css.canvas.height}px`,this._rectangleRenderer.value?.setDimensions(this.dimensions),this._rectangleRenderer.value?.handleResize(),this._glyphRenderer.value?.setDimensions(this.dimensions),this._glyphRenderer.value?.handleResize(),this._refreshCharAtlas(),this._clearModel(!1)}handleCharSizeChanged(){this.handleResize(this._terminal.cols,this._terminal.rows)}handleBlur(){for(const e of this._renderLayers)e.handleBlur(this._terminal);this._cursorBlinkStateManager.value?.pause(),this._requestRedrawViewport()}handleFocus(){for(const e of this._renderLayers)e.handleFocus(this._terminal);this._cursorBlinkStateManager.value?.resume(),this._requestRedrawViewport()}handleSelectionChanged(e,t,i){for(const s of this._renderLayers)s.handleSelectionChanged(this._terminal,e,t,i);this._model.selection.update(this._core,e,t,i),this._requestRedrawViewport()}handleCursorMove(){for(const e of this._renderLayers)e.handleCursorMove(this._terminal);this._cursorBlinkStateManager.value?.restartBlinkAnimation()}_handleOptionsChanged(){this._updateDimensions(),this._refreshCharAtlas(),this._updateCursorBlink()}_initializeWebGLState(){return this._rectangleRenderer.value=new v.RectangleRenderer(this._terminal,this._gl,this.dimensions,this._themeService),this._glyphRenderer.value=new g.GlyphRenderer(this._terminal,this._gl,this.dimensions,this._optionsService),this.handleCharSizeChanged(),[this._rectangleRenderer.value,this._glyphRenderer.value]}_refreshCharAtlas(){if(this.dimensions.device.char.width<=0&&this.dimensions.device.char.height<=0)return void(this._isAttached=!1);const e=(0,o.acquireTextureAtlas)(this._terminal,this._optionsService.rawOptions,this._themeService.colors,this.dimensions.device.cell.width,this.dimensions.device.cell.height,this.dimensions.device.char.width,this.dimensions.device.char.height,this._coreBrowserService.dpr);this._charAtlas!==e&&(this._onChangeTextureAtlas.fire(e.pages[0].canvas),this._charAtlasDisposable.value=(0,c.getDisposeArrayDisposable)([(0,l.forwardEvent)(e.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas),(0,l.forwardEvent)(e.onRemoveTextureAtlasCanvas,this._onRemoveTextureAtlasCanvas)])),this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.value?.setAtlas(this._charAtlas)}_clearModel(e){this._model.clear(),e&&this._glyphRenderer.value?.clear()}clearTextureAtlas(){this._charAtlas?.clearTexture(),this._clearModel(!0),this._requestRedrawViewport()}clear(){this._clearModel(!0);for(const e of this._renderLayers)e.reset(this._terminal);this._cursorBlinkStateManager.value?.restartBlinkAnimation(),this._updateCursorBlink()}registerCharacterJoiner(e){return-1}deregisterCharacterJoiner(e){return!1}renderRows(e,t){if(!this._isAttached){if(!(this._coreBrowserService.window.document.body.contains(this._core.screenElement)&&this._charSizeService.width&&this._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}for(const i of this._renderLayers)i.handleGridChanged(this._terminal,e,t);this._glyphRenderer.value&&this._rectangleRenderer.value&&(this._glyphRenderer.value.beginFrame()?(this._clearModel(!0),this._updateModel(0,this._terminal.rows-1)):this._updateModel(e,t),this._rectangleRenderer.value.renderBackgrounds(),this._glyphRenderer.value.render(this._model),this._cursorBlinkStateManager.value&&!this._cursorBlinkStateManager.value.isCursorVisible||this._rectangleRenderer.value.renderCursor())}_updateCursorBlink(){this._terminal.options.cursorBlink?this._cursorBlinkStateManager.value=new n.CursorBlinkStateManager((()=>{this._requestRedrawCursor()}),this._coreBrowserService):this._cursorBlinkStateManager.clear(),this._requestRedrawCursor()}_updateModel(e,t){const i=this._core;let s,r,o,n,a,h,l,c,d,_,g,v,p,C,x=this._workCell;e=L(e,i.rows-1,0),t=L(t,i.rows-1,0);const w=this._terminal.buffer.active.baseY+this._terminal.buffer.active.cursorY,b=w-i.buffer.ydisp,M=Math.min(this._terminal.buffer.active.cursorX,i.cols-1);let R=-1;const y=this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden&&(!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isCursorVisible);this._model.cursor=void 0;let A=!1;for(r=e;r<=t;r++)for(o=r+i.buffer.ydisp,n=i.buffer.lines.get(o),this._model.lineLengths[r]=0,a=this._characterJoinerService.getJoinedCharacters(o),p=0;p<i.cols;p++)if(s=this._cellColorResolver.result.bg,n.loadCell(p,x),0===p&&(s=this._cellColorResolver.result.bg),h=!1,l=p,a.length>0&&p===a[0][0]&&(h=!0,c=a.shift(),x=new m(x,n.translateToString(!0,c[0],c[1]),c[1]-c[0]),l=c[1]-1),d=x.getChars(),_=x.getCode(),v=(r*i.cols+p)*f.RENDER_MODEL_INDICIES_PER_CELL,this._cellColorResolver.resolve(x,p,o,this.dimensions.device.cell.width),y&&o===w&&(p===M&&(this._model.cursor={x:M,y:b,width:x.getWidth(),style:this._coreBrowserService.isFocused?i.options.cursorStyle||"block":i.options.cursorInactiveStyle,cursorWidth:i.options.cursorWidth,dpr:this._devicePixelRatio},R=M+x.getWidth()-1),p>=M&&p<=R&&(this._coreBrowserService.isFocused&&"block"===(i.options.cursorStyle||"block")||!1===this._coreBrowserService.isFocused&&"block"===i.options.cursorInactiveStyle)&&(this._cellColorResolver.result.fg=50331648|this._themeService.colors.cursorAccent.rgba>>8&16777215,this._cellColorResolver.result.bg=50331648|this._themeService.colors.cursor.rgba>>8&16777215)),_!==u.NULL_CELL_CODE&&(this._model.lineLengths[r]=p+1),(this._model.cells[v]!==_||this._model.cells[v+f.RENDER_MODEL_BG_OFFSET]!==this._cellColorResolver.result.bg||this._model.cells[v+f.RENDER_MODEL_FG_OFFSET]!==this._cellColorResolver.result.fg||this._model.cells[v+f.RENDER_MODEL_EXT_OFFSET]!==this._cellColorResolver.result.ext)&&(A=!0,d.length>1&&(_|=f.COMBINED_CHAR_BIT_MASK),this._model.cells[v]=_,this._model.cells[v+f.RENDER_MODEL_BG_OFFSET]=this._cellColorResolver.result.bg,this._model.cells[v+f.RENDER_MODEL_FG_OFFSET]=this._cellColorResolver.result.fg,this._model.cells[v+f.RENDER_MODEL_EXT_OFFSET]=this._cellColorResolver.result.ext,g=x.getWidth(),this._glyphRenderer.value.updateCell(p,r,_,this._cellColorResolver.result.bg,this._cellColorResolver.result.fg,this._cellColorResolver.result.ext,d,g,s),h))for(x=this._workCell,p++;p<l;p++)C=(r*i.cols+p)*f.RENDER_MODEL_INDICIES_PER_CELL,this._glyphRenderer.value.updateCell(p,r,u.NULL_CELL_CODE,0,0,0,u.NULL_CELL_CHAR,0,0),this._model.cells[C]=u.NULL_CELL_CODE,this._model.cells[C+f.RENDER_MODEL_BG_OFFSET]=this._cellColorResolver.result.bg,this._model.cells[C+f.RENDER_MODEL_FG_OFFSET]=this._cellColorResolver.result.fg,this._model.cells[C+f.RENDER_MODEL_EXT_OFFSET]=this._cellColorResolver.result.ext;A&&this._rectangleRenderer.value.updateBackgrounds(this._model),this._rectangleRenderer.value.updateCursor(this._model)}_updateDimensions(){this._charSizeService.width&&this._charSizeService.height&&(this.dimensions.device.char.width=Math.floor(this._charSizeService.width*this._devicePixelRatio),this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*this._devicePixelRatio),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.top=1===this._optionsService.rawOptions.lineHeight?0:Math.round((this.dimensions.device.cell.height-this.dimensions.device.char.height)/2),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.char.left=Math.floor(this._optionsService.rawOptions.letterSpacing/2),this.dimensions.device.canvas.height=this._terminal.rows*this.dimensions.device.cell.height,this.dimensions.device.canvas.width=this._terminal.cols*this.dimensions.device.cell.width,this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/this._devicePixelRatio),this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/this._devicePixelRatio),this.dimensions.css.cell.height=this.dimensions.device.cell.height/this._devicePixelRatio,this.dimensions.css.cell.width=this.dimensions.device.cell.width/this._devicePixelRatio)}_setCanvasDevicePixelDimensions(e,t){this._canvas.width===e&&this._canvas.height===t||(this._canvas.width=e,this._canvas.height=t,this._requestRedrawViewport())}_requestRedrawViewport(){this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})}_requestRedrawCursor(){const e=this._terminal.buffer.active.cursorY;this._onRequestRedraw.fire({start:e,end:e})}}t.WebglRenderer=C;class m extends d.AttributeData{constructor(e,t,i){super(),this.content=0,this.combinedData="",this.fg=e.fg,this.bg=e.bg,this.combinedData=t,this._width=i}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(e){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}function L(e,t,i=0){return Math.max(Math.min(e,t),i)}t.JoinedCellData=m},381:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GLTexture=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0;const s=i(374);function r(e,t,i){const r=(0,s.throwIfFalsy)(e.createShader(t));if(e.shaderSource(r,i),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS))return r;console.error(e.getShaderInfoLog(r)),e.deleteShader(r)}t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,i){const o=(0,s.throwIfFalsy)(e.createProgram());if(e.attachShader(o,(0,s.throwIfFalsy)(r(e,e.VERTEX_SHADER,t))),e.attachShader(o,(0,s.throwIfFalsy)(r(e,e.FRAGMENT_SHADER,i))),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS))return o;console.error(e.getProgramInfoLog(o)),e.deleteProgram(o)},t.createShader=r,t.expandFloat32Array=function(e,t){const i=Math.min(2*e.length,t),s=new Float32Array(i);for(let t=0;t<e.length;t++)s[t]=e[t];return s},t.GLTexture=class{constructor(e){this.texture=e,this.version=-1}}},592:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;const s=i(627),r=i(237),o=i(374),n=i(859);class a extends n.Disposable{constructor(e,t,i,s,r,o,a,h){super(),this._container=t,this._alpha=r,this._coreBrowserService=o,this._optionsService=a,this._themeService=h,this._deviceCharWidth=0,this._deviceCharHeight=0,this._deviceCellWidth=0,this._deviceCellHeight=0,this._deviceCharLeft=0,this._deviceCharTop=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add(`xterm-${i}-layer`),this._canvas.style.zIndex=s.toString(),this._initCanvas(),this._container.appendChild(this._canvas),this.register(this._themeService.onChangeColors((t=>{this._refreshCharAtlas(e,t),this.reset(e)}))),this.register((0,n.toDisposable)((()=>{this._canvas.remove()})))}_initCanvas(){this._ctx=(0,o.throwIfFalsy)(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()}handleBlur(e){}handleFocus(e){}handleCursorMove(e){}handleGridChanged(e,t,i){}handleSelectionChanged(e,t,i,s=!1){}_setTransparency(e,t){if(t===this._alpha)return;const i=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(e,this._themeService.colors),this.handleGridChanged(e,0,e.rows-1)}_refreshCharAtlas(e,t){this._deviceCharWidth<=0&&this._deviceCharHeight<=0||(this._charAtlas=(0,s.acquireTextureAtlas)(e,this._optionsService.rawOptions,t,this._deviceCellWidth,this._deviceCellHeight,this._deviceCharWidth,this._deviceCharHeight,this._coreBrowserService.dpr),this._charAtlas.warmUp())}resize(e,t){this._deviceCellWidth=t.device.cell.width,this._deviceCellHeight=t.device.cell.height,this._deviceCharWidth=t.device.char.width,this._deviceCharHeight=t.device.char.height,this._deviceCharLeft=t.device.char.left,this._deviceCharTop=t.device.char.top,this._canvas.width=t.device.canvas.width,this._canvas.height=t.device.canvas.height,this._canvas.style.width=`${t.css.canvas.width}px`,this._canvas.style.height=`${t.css.canvas.height}px`,this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._themeService.colors)}_fillBottomLineAtCells(e,t,i=1){this._ctx.fillRect(e*this._deviceCellWidth,(t+1)*this._deviceCellHeight-this._coreBrowserService.dpr-1,i*this._deviceCellWidth,this._coreBrowserService.dpr)}_clearAll(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._themeService.colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))}_clearCells(e,t,i,s){this._alpha?this._ctx.clearRect(e*this._deviceCellWidth,t*this._deviceCellHeight,i*this._deviceCellWidth,s*this._deviceCellHeight):(this._ctx.fillStyle=this._themeService.colors.background.css,this._ctx.fillRect(e*this._deviceCellWidth,t*this._deviceCellHeight,i*this._deviceCellWidth,s*this._deviceCellHeight))}_fillCharTrueColor(e,t,i,s){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline=r.TEXT_BASELINE,this._clipCell(i,s,t.getWidth()),this._ctx.fillText(t.getChars(),i*this._deviceCellWidth+this._deviceCharLeft,s*this._deviceCellHeight+this._deviceCharTop+this._deviceCharHeight)}_clipCell(e,t,i){this._ctx.beginPath(),this._ctx.rect(e*this._deviceCellWidth,t*this._deviceCellHeight,i*this._deviceCellWidth,this._deviceCellHeight),this._ctx.clip()}_getFont(e,t,i){return`${i?"italic":""} ${t?e.options.fontWeightBold:e.options.fontWeight} ${e.options.fontSize*this._coreBrowserService.dpr}px ${e.options.fontFamily}`}}t.BaseRenderLayer=a},733:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;const s=i(197),r=i(237),o=i(592);class n extends o.BaseRenderLayer{constructor(e,t,i,s,r,o,n){super(i,e,"link",t,!0,r,o,n),this.register(s.onShowLinkUnderline((e=>this._handleShowLinkUnderline(e)))),this.register(s.onHideLinkUnderline((e=>this._handleHideLinkUnderline(e))))}resize(e,t){super.resize(e,t),this._state=void 0}reset(e){this._clearCurrentLink()}_clearCurrentLink(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);const e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}}_handleShowLinkUnderline(e){if(e.fg===r.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._themeService.colors.background.css:void 0!==e.fg&&(0,s.is256Color)(e.fg)?this._ctx.fillStyle=this._themeService.colors.ansi[e.fg].css:this._ctx.fillStyle=this._themeService.colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(let t=e.y1+1;t<e.y2;t++)this._fillBottomLineAtCells(0,t,e.cols);this._fillBottomLineAtCells(0,e.y2,e.x2)}this._state=e}_handleHideLinkUnderline(e){this._clearCurrentLink()}}t.LinkRenderLayer=n},820:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,i,s){e.addEventListener(t,i,s);let r=!1;return{dispose:()=>{r||(r=!0,e.removeEventListener(t,i,s))}}}},274:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CellColorResolver=void 0;const s=i(855),r=i(160),o=i(374);let n,a=0,h=0,l=!1,c=!1,d=!1,_=0;t.CellColorResolver=class{constructor(e,t,i,s,r,o){this._terminal=e,this._optionService=t,this._selectionRenderModel=i,this._decorationService=s,this._coreBrowserService=r,this._themeService=o,this.result={fg:0,bg:0,ext:0}}resolve(e,t,i,u){if(this.result.bg=e.bg,this.result.fg=e.fg,this.result.ext=268435456&e.bg?e.extended.ext:0,h=0,a=0,c=!1,l=!1,d=!1,n=this._themeService.colors,_=0,e.getCode()!==s.NULL_CELL_CODE&&4===e.extended.underlineStyle){const e=Math.max(1,Math.floor(this._optionService.rawOptions.fontSize*this._coreBrowserService.dpr/15));_=t*u%(2*Math.round(e))}if(this._decorationService.forEachDecorationAtCell(t,i,"bottom",(e=>{e.backgroundColorRGB&&(h=e.backgroundColorRGB.rgba>>8&16777215,c=!0),e.foregroundColorRGB&&(a=e.foregroundColorRGB.rgba>>8&16777215,l=!0)})),d=this._selectionRenderModel.isCellSelected(this._terminal,t,i),d){if(67108864&this.result.fg||0!=(50331648&this.result.bg)){if(67108864&this.result.fg)switch(50331648&this.result.fg){case 16777216:case 33554432:h=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:h=(16777215&this.result.fg)<<8|255;break;default:h=this._themeService.colors.foreground.rgba}else switch(50331648&this.result.bg){case 16777216:case 33554432:h=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:h=(16777215&this.result.bg)<<8|255}h=r.rgba.blend(h,4294967040&(this._coreBrowserService.isFocused?n.selectionBackgroundOpaque:n.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}else h=(this._coreBrowserService.isFocused?n.selectionBackgroundOpaque:n.selectionInactiveBackgroundOpaque).rgba>>8&16777215;if(c=!0,n.selectionForeground&&(a=n.selectionForeground.rgba>>8&16777215,l=!0),(0,o.treatGlyphAsBackgroundColor)(e.getCode())){if(67108864&this.result.fg&&0==(50331648&this.result.bg))a=(this._coreBrowserService.isFocused?n.selectionBackgroundOpaque:n.selectionInactiveBackgroundOpaque).rgba>>8&16777215;else{if(67108864&this.result.fg)switch(50331648&this.result.bg){case 16777216:case 33554432:a=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:a=(16777215&this.result.bg)<<8|255}else switch(50331648&this.result.fg){case 16777216:case 33554432:a=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:a=(16777215&this.result.fg)<<8|255;break;default:a=this._themeService.colors.foreground.rgba}a=r.rgba.blend(a,4294967040&(this._coreBrowserService.isFocused?n.selectionBackgroundOpaque:n.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}l=!0}}this._decorationService.forEachDecorationAtCell(t,i,"top",(e=>{e.backgroundColorRGB&&(h=e.backgroundColorRGB.rgba>>8&16777215,c=!0),e.foregroundColorRGB&&(a=e.foregroundColorRGB.rgba>>8&16777215,l=!0)})),c&&(h=d?-16777216&e.bg&-134217729|h|50331648:-16777216&e.bg|h|50331648),l&&(a=-16777216&e.fg&-67108865|a|50331648),67108864&this.result.fg&&(c&&!l&&(a=0==(50331648&this.result.bg)?-134217728&this.result.fg|16777215&n.background.rgba>>8|50331648:-134217728&this.result.fg|67108863&this.result.bg,l=!0),!c&&l&&(h=0==(50331648&this.result.fg)?-67108864&this.result.bg|16777215&n.foreground.rgba>>8|50331648:-67108864&this.result.bg|67108863&this.result.fg,c=!0)),n=void 0,this.result.bg=c?h:this.result.bg,this.result.fg=l?a:this.result.fg,this.result.ext&=536870911,this.result.ext|=_<<29&3758096384}}},627:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireTextureAtlas=void 0;const s=i(509),r=i(197),o=[];t.acquireTextureAtlas=function(e,t,i,n,a,h,l,c){const d=(0,r.generateConfig)(n,a,h,l,t,i,c);for(let t=0;t<o.length;t++){const i=o[t],s=i.ownedBy.indexOf(e);if(s>=0){if((0,r.configEquals)(i.config,d))return i.atlas;1===i.ownedBy.length?(i.atlas.dispose(),o.splice(t,1)):i.ownedBy.splice(s,1);break}}for(let t=0;t<o.length;t++){const i=o[t];if((0,r.configEquals)(i.config,d))return i.ownedBy.push(e),i.atlas}const _=e._core,u={atlas:new s.TextureAtlas(document,d,_.unicodeService),config:d,ownedBy:[e]};return o.push(u),u.atlas},t.removeTerminalFromCache=function(e){for(let t=0;t<o.length;t++){const i=o[t].ownedBy.indexOf(e);if(-1!==i){1===o[t].ownedBy.length?(o[t].atlas.dispose(),o.splice(t,1)):o[t].ownedBy.splice(i,1);break}}}},197:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;const s=i(160);t.generateConfig=function(e,t,i,r,o,n,a){const h={foreground:n.foreground,background:n.background,cursor:s.NULL_COLOR,cursorAccent:s.NULL_COLOR,selectionForeground:s.NULL_COLOR,selectionBackgroundTransparent:s.NULL_COLOR,selectionBackgroundOpaque:s.NULL_COLOR,selectionInactiveBackgroundTransparent:s.NULL_COLOR,selectionInactiveBackgroundOpaque:s.NULL_COLOR,ansi:n.ansi.slice(),contrastCache:n.contrastCache,halfContrastCache:n.halfContrastCache};return{customGlyphs:o.customGlyphs,devicePixelRatio:a,letterSpacing:o.letterSpacing,lineHeight:o.lineHeight,deviceCellWidth:e,deviceCellHeight:t,deviceCharWidth:i,deviceCharHeight:r,fontFamily:o.fontFamily,fontSize:o.fontSize,fontWeight:o.fontWeight,fontWeightBold:o.fontWeightBold,allowTransparency:o.allowTransparency,drawBoldTextInBrightColors:o.drawBoldTextInBrightColors,minimumContrastRatio:o.minimumContrastRatio,colors:h}},t.configEquals=function(e,t){for(let i=0;i<e.colors.ansi.length;i++)if(e.colors.ansi[i].rgba!==t.colors.ansi[i].rgba)return!1;return e.devicePixelRatio===t.devicePixelRatio&&e.customGlyphs===t.customGlyphs&&e.lineHeight===t.lineHeight&&e.letterSpacing===t.letterSpacing&&e.fontFamily===t.fontFamily&&e.fontSize===t.fontSize&&e.fontWeight===t.fontWeight&&e.fontWeightBold===t.fontWeightBold&&e.allowTransparency===t.allowTransparency&&e.deviceCharWidth===t.deviceCharWidth&&e.deviceCharHeight===t.deviceCharHeight&&e.drawBoldTextInBrightColors===t.drawBoldTextInBrightColors&&e.minimumContrastRatio===t.minimumContrastRatio&&e.colors.foreground.rgba===t.colors.foreground.rgba&&e.colors.background.rgba===t.colors.background.rgba},t.is256Color=function(e){return 16777216==(50331648&e)||33554432==(50331648&e)}},237:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TEXT_BASELINE=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0;const s=i(399);t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.TEXT_BASELINE=s.isFirefox||s.isLegacyEdge?"bottom":"ideographic"},457:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CursorBlinkStateManager=void 0,t.CursorBlinkStateManager=class{constructor(e,t){this._renderCallback=e,this._coreBrowserService=t,this.isCursorVisible=!0,this._coreBrowserService.isFocused&&this._restartInterval()}get isPaused(){return!(this._blinkStartTimeout||this._blinkInterval)}dispose(){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}restartBlinkAnimation(){this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0}))))}_restartInterval(e=600){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout=this._coreBrowserService.window.setTimeout((()=>{if(this._animationTimeRestarted){const e=600-(Date.now()-this._animationTimeRestarted);if(this._animationTimeRestarted=void 0,e>0)return void this._restartInterval(e)}this.isCursorVisible=!1,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0})),this._blinkInterval=this._coreBrowserService.window.setInterval((()=>{if(this._animationTimeRestarted){const e=600-(Date.now()-this._animationTimeRestarted);return this._animationTimeRestarted=void 0,void this._restartInterval(e)}this.isCursorVisible=!this.isCursorVisible,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._renderCallback(),this._animationFrame=void 0}))}),600)}),e)}pause(){this.isCursorVisible=!0,this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}resume(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()}}},860:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tryDrawCustomChar=t.powerlineDefinitions=t.boxDrawingDefinitions=t.blockElementDefinitions=void 0;const s=i(374);t.blockElementDefinitions={"▀":[{x:0,y:0,w:8,h:4}],"▁":[{x:0,y:7,w:8,h:1}],"▂":[{x:0,y:6,w:8,h:2}],"▃":[{x:0,y:5,w:8,h:3}],"▄":[{x:0,y:4,w:8,h:4}],"▅":[{x:0,y:3,w:8,h:5}],"▆":[{x:0,y:2,w:8,h:6}],"▇":[{x:0,y:1,w:8,h:7}],"█":[{x:0,y:0,w:8,h:8}],"▉":[{x:0,y:0,w:7,h:8}],"▊":[{x:0,y:0,w:6,h:8}],"▋":[{x:0,y:0,w:5,h:8}],"▌":[{x:0,y:0,w:4,h:8}],"▍":[{x:0,y:0,w:3,h:8}],"▎":[{x:0,y:0,w:2,h:8}],"▏":[{x:0,y:0,w:1,h:8}],"▐":[{x:4,y:0,w:4,h:8}],"▔":[{x:0,y:0,w:8,h:1}],"▕":[{x:7,y:0,w:1,h:8}],"▖":[{x:0,y:4,w:4,h:4}],"▗":[{x:4,y:4,w:4,h:4}],"▘":[{x:0,y:0,w:4,h:4}],"▙":[{x:0,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"▚":[{x:0,y:0,w:4,h:4},{x:4,y:4,w:4,h:4}],"▛":[{x:0,y:0,w:4,h:8},{x:4,y:0,w:4,h:4}],"▜":[{x:0,y:0,w:8,h:4},{x:4,y:0,w:4,h:8}],"▝":[{x:4,y:0,w:4,h:4}],"▞":[{x:4,y:0,w:4,h:4},{x:0,y:4,w:4,h:4}],"▟":[{x:4,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"🭰":[{x:1,y:0,w:1,h:8}],"🭱":[{x:2,y:0,w:1,h:8}],"🭲":[{x:3,y:0,w:1,h:8}],"🭳":[{x:4,y:0,w:1,h:8}],"🭴":[{x:5,y:0,w:1,h:8}],"🭵":[{x:6,y:0,w:1,h:8}],"🭶":[{x:0,y:1,w:8,h:1}],"🭷":[{x:0,y:2,w:8,h:1}],"🭸":[{x:0,y:3,w:8,h:1}],"🭹":[{x:0,y:4,w:8,h:1}],"🭺":[{x:0,y:5,w:8,h:1}],"🭻":[{x:0,y:6,w:8,h:1}],"🭼":[{x:0,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🭽":[{x:0,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭾":[{x:7,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭿":[{x:7,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🮀":[{x:0,y:0,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮁":[{x:0,y:0,w:8,h:1},{x:0,y:2,w:8,h:1},{x:0,y:4,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮂":[{x:0,y:0,w:8,h:2}],"🮃":[{x:0,y:0,w:8,h:3}],"🮄":[{x:0,y:0,w:8,h:5}],"🮅":[{x:0,y:0,w:8,h:6}],"🮆":[{x:0,y:0,w:8,h:7}],"🮇":[{x:6,y:0,w:2,h:8}],"🮈":[{x:5,y:0,w:3,h:8}],"🮉":[{x:3,y:0,w:5,h:8}],"🮊":[{x:2,y:0,w:6,h:8}],"🮋":[{x:1,y:0,w:7,h:8}],"🮕":[{x:0,y:0,w:2,h:2},{x:4,y:0,w:2,h:2},{x:2,y:2,w:2,h:2},{x:6,y:2,w:2,h:2},{x:0,y:4,w:2,h:2},{x:4,y:4,w:2,h:2},{x:2,y:6,w:2,h:2},{x:6,y:6,w:2,h:2}],"🮖":[{x:2,y:0,w:2,h:2},{x:6,y:0,w:2,h:2},{x:0,y:2,w:2,h:2},{x:4,y:2,w:2,h:2},{x:2,y:4,w:2,h:2},{x:6,y:4,w:2,h:2},{x:0,y:6,w:2,h:2},{x:4,y:6,w:2,h:2}],"🮗":[{x:0,y:2,w:8,h:2},{x:0,y:6,w:8,h:2}]};const r={"░":[[1,0,0,0],[0,0,0,0],[0,0,1,0],[0,0,0,0]],"▒":[[1,0],[0,0],[0,1],[0,0]],"▓":[[0,1],[1,1],[1,0],[1,1]]};t.boxDrawingDefinitions={"─":{1:"M0,.5 L1,.5"},"━":{3:"M0,.5 L1,.5"},"│":{1:"M.5,0 L.5,1"},"┃":{3:"M.5,0 L.5,1"},"┌":{1:"M0.5,1 L.5,.5 L1,.5"},"┏":{3:"M0.5,1 L.5,.5 L1,.5"},"┐":{1:"M0,.5 L.5,.5 L.5,1"},"┓":{3:"M0,.5 L.5,.5 L.5,1"},"└":{1:"M.5,0 L.5,.5 L1,.5"},"┗":{3:"M.5,0 L.5,.5 L1,.5"},"┘":{1:"M.5,0 L.5,.5 L0,.5"},"┛":{3:"M.5,0 L.5,.5 L0,.5"},"├":{1:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┣":{3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┤":{1:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┫":{3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┬":{1:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┳":{3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┴":{1:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┻":{3:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┼":{1:"M0,.5 L1,.5 M.5,0 L.5,1"},"╋":{3:"M0,.5 L1,.5 M.5,0 L.5,1"},"╴":{1:"M.5,.5 L0,.5"},"╸":{3:"M.5,.5 L0,.5"},"╵":{1:"M.5,.5 L.5,0"},"╹":{3:"M.5,.5 L.5,0"},"╶":{1:"M.5,.5 L1,.5"},"╺":{3:"M.5,.5 L1,.5"},"╷":{1:"M.5,.5 L.5,1"},"╻":{3:"M.5,.5 L.5,1"},"═":{1:(e,t)=>`M0,${.5-t} L1,${.5-t} M0,${.5+t} L1,${.5+t}`},"║":{1:(e,t)=>`M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1`},"╒":{1:(e,t)=>`M.5,1 L.5,${.5-t} L1,${.5-t} M.5,${.5+t} L1,${.5+t}`},"╓":{1:(e,t)=>`M${.5-e},1 L${.5-e},.5 L1,.5 M${.5+e},.5 L${.5+e},1`},"╔":{1:(e,t)=>`M1,${.5-t} L${.5-e},${.5-t} L${.5-e},1 M1,${.5+t} L${.5+e},${.5+t} L${.5+e},1`},"╕":{1:(e,t)=>`M0,${.5-t} L.5,${.5-t} L.5,1 M0,${.5+t} L.5,${.5+t}`},"╖":{1:(e,t)=>`M${.5+e},1 L${.5+e},.5 L0,.5 M${.5-e},.5 L${.5-e},1`},"╗":{1:(e,t)=>`M0,${.5+t} L${.5-e},${.5+t} L${.5-e},1 M0,${.5-t} L${.5+e},${.5-t} L${.5+e},1`},"╘":{1:(e,t)=>`M.5,0 L.5,${.5+t} L1,${.5+t} M.5,${.5-t} L1,${.5-t}`},"╙":{1:(e,t)=>`M1,.5 L${.5-e},.5 L${.5-e},0 M${.5+e},.5 L${.5+e},0`},"╚":{1:(e,t)=>`M1,${.5-t} L${.5+e},${.5-t} L${.5+e},0 M1,${.5+t} L${.5-e},${.5+t} L${.5-e},0`},"╛":{1:(e,t)=>`M0,${.5+t} L.5,${.5+t} L.5,0 M0,${.5-t} L.5,${.5-t}`},"╜":{1:(e,t)=>`M0,.5 L${.5+e},.5 L${.5+e},0 M${.5-e},.5 L${.5-e},0`},"╝":{1:(e,t)=>`M0,${.5-t} L${.5-e},${.5-t} L${.5-e},0 M0,${.5+t} L${.5+e},${.5+t} L${.5+e},0`},"╞":{1:(e,t)=>`M.5,0 L.5,1 M.5,${.5-t} L1,${.5-t} M.5,${.5+t} L1,${.5+t}`},"╟":{1:(e,t)=>`M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1 M${.5+e},.5 L1,.5`},"╠":{1:(e,t)=>`M${.5-e},0 L${.5-e},1 M1,${.5+t} L${.5+e},${.5+t} L${.5+e},1 M1,${.5-t} L${.5+e},${.5-t} L${.5+e},0`},"╡":{1:(e,t)=>`M.5,0 L.5,1 M0,${.5-t} L.5,${.5-t} M0,${.5+t} L.5,${.5+t}`},"╢":{1:(e,t)=>`M0,.5 L${.5-e},.5 M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1`},"╣":{1:(e,t)=>`M${.5+e},0 L${.5+e},1 M0,${.5+t} L${.5-e},${.5+t} L${.5-e},1 M0,${.5-t} L${.5-e},${.5-t} L${.5-e},0`},"╤":{1:(e,t)=>`M0,${.5-t} L1,${.5-t} M0,${.5+t} L1,${.5+t} M.5,${.5+t} L.5,1`},"╥":{1:(e,t)=>`M0,.5 L1,.5 M${.5-e},.5 L${.5-e},1 M${.5+e},.5 L${.5+e},1`},"╦":{1:(e,t)=>`M0,${.5-t} L1,${.5-t} M0,${.5+t} L${.5-e},${.5+t} L${.5-e},1 M1,${.5+t} L${.5+e},${.5+t} L${.5+e},1`},"╧":{1:(e,t)=>`M.5,0 L.5,${.5-t} M0,${.5-t} L1,${.5-t} M0,${.5+t} L1,${.5+t}`},"╨":{1:(e,t)=>`M0,.5 L1,.5 M${.5-e},.5 L${.5-e},0 M${.5+e},.5 L${.5+e},0`},"╩":{1:(e,t)=>`M0,${.5+t} L1,${.5+t} M0,${.5-t} L${.5-e},${.5-t} L${.5-e},0 M1,${.5-t} L${.5+e},${.5-t} L${.5+e},0`},"╪":{1:(e,t)=>`M.5,0 L.5,1 M0,${.5-t} L1,${.5-t} M0,${.5+t} L1,${.5+t}`},"╫":{1:(e,t)=>`M0,.5 L1,.5 M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1`},"╬":{1:(e,t)=>`M0,${.5+t} L${.5-e},${.5+t} L${.5-e},1 M1,${.5+t} L${.5+e},${.5+t} L${.5+e},1 M0,${.5-t} L${.5-e},${.5-t} L${.5-e},0 M1,${.5-t} L${.5+e},${.5-t} L${.5+e},0`},"╱":{1:"M1,0 L0,1"},"╲":{1:"M0,0 L1,1"},"╳":{1:"M1,0 L0,1 M0,0 L1,1"},"╼":{1:"M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"╽":{1:"M.5,.5 L.5,0",3:"M.5,.5 L.5,1"},"╾":{1:"M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"╿":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┍":{1:"M.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┎":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┑":{1:"M.5,.5 L.5,1",3:"M.5,.5 L0,.5"},"┒":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┕":{1:"M.5,.5 L.5,0",3:"M.5,.5 L1,.5"},"┖":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┙":{1:"M.5,.5 L.5,0",3:"M.5,.5 L0,.5"},"┚":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,0"},"┝":{1:"M.5,0 L.5,1",3:"M.5,.5 L1,.5"},"┞":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┟":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┠":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1"},"┡":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"┢":{1:"M.5,.5 L.5,0",3:"M0.5,1 L.5,.5 L1,.5"},"┥":{1:"M.5,0 L.5,1",3:"M.5,.5 L0,.5"},"┦":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┧":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┨":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1"},"┩":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L0,.5"},"┪":{1:"M.5,.5 L.5,0",3:"M0,.5 L.5,.5 L.5,1"},"┭":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┮":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┯":{1:"M.5,.5 L.5,1",3:"M0,.5 L1,.5"},"┰":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"┱":{1:"M.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"┲":{1:"M.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"┵":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┶":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┷":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5"},"┸":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,0"},"┹":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"┺":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,.5 L1,.5"},"┽":{1:"M.5,0 L.5,1 M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┾":{1:"M.5,0 L.5,1 M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┿":{1:"M.5,0 L.5,1",3:"M0,.5 L1,.5"},"╀":{1:"M0,.5 L1,.5 M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"╁":{1:"M.5,.5 L.5,0 M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"╂":{1:"M0,.5 L1,.5",3:"M.5,0 L.5,1"},"╃":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"╄":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"╅":{1:"M.5,0 L.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"╆":{1:"M.5,0 L.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"╇":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0 M0,.5 L1,.5"},"╈":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"╉":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"╊":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"╌":{1:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"╍":{3:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"┄":{1:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┅":{3:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┈":{1:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"┉":{3:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"╎":{1:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"╏":{3:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"┆":{1:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┇":{3:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┊":{1:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"┋":{3:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"╭":{1:(e,t)=>`M.5,1 L.5,${.5+t/.15*.5} C.5,${.5+t/.15*.5},.5,.5,1,.5`},"╮":{1:(e,t)=>`M.5,1 L.5,${.5+t/.15*.5} C.5,${.5+t/.15*.5},.5,.5,0,.5`},"╯":{1:(e,t)=>`M.5,0 L.5,${.5-t/.15*.5} C.5,${.5-t/.15*.5},.5,.5,0,.5`},"╰":{1:(e,t)=>`M.5,0 L.5,${.5-t/.15*.5} C.5,${.5-t/.15*.5},.5,.5,1,.5`}},t.powerlineDefinitions={"":{d:"M0,0 L1,.5 L0,1",type:0,rightPadding:2},"":{d:"M-1,-.5 L1,.5 L-1,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1,0 L0,.5 L1,1",type:0,leftPadding:2},"":{d:"M2,-.5 L0,.5 L2,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M0,0 L0,1 C0.552,1,1,0.776,1,.5 C1,0.224,0.552,0,0,0",type:0,rightPadding:1},"":{d:"M.2,1 C.422,1,.8,.826,.78,.5 C.8,.174,0.422,0,.2,0",type:1,rightPadding:1},"":{d:"M1,0 L1,1 C0.448,1,0,0.776,0,.5 C0,0.224,0.448,0,1,0",type:0,leftPadding:1},"":{d:"M.8,1 C0.578,1,0.2,.826,.22,.5 C0.2,0.174,0.578,0,0.8,0",type:1,leftPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L-.5,1.5",type:0},"":{d:"M-.5,-.5 L1.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1.5,-.5 L-.5,1.5 L1.5,1.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5 L-.5,-.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L1.5,-.5",type:0}},t.powerlineDefinitions[""]=t.powerlineDefinitions[""],t.powerlineDefinitions[""]=t.powerlineDefinitions[""],t.tryDrawCustomChar=function(e,i,n,l,c,d,_,u){const g=t.blockElementDefinitions[i];if(g)return function(e,t,i,s,r,o){for(let n=0;n<t.length;n++){const a=t[n],h=r/8,l=o/8;e.fillRect(i+a.x*h,s+a.y*l,a.w*h,a.h*l)}}(e,g,n,l,c,d),!0;const v=r[i];if(v)return function(e,t,i,r,n,a){let h=o.get(t);h||(h=new Map,o.set(t,h));const l=e.fillStyle;if("string"!=typeof l)throw new Error(`Unexpected fillStyle type "${l}"`);let c=h.get(l);if(!c){const i=t[0].length,r=t.length,o=e.canvas.ownerDocument.createElement("canvas");o.width=i,o.height=r;const n=(0,s.throwIfFalsy)(o.getContext("2d")),a=new ImageData(i,r);let d,_,u,g;if(l.startsWith("#"))d=parseInt(l.slice(1,3),16),_=parseInt(l.slice(3,5),16),u=parseInt(l.slice(5,7),16),g=l.length>7&&parseInt(l.slice(7,9),16)||1;else{if(!l.startsWith("rgba"))throw new Error(`Unexpected fillStyle color format "${l}" when drawing pattern glyph`);[d,_,u,g]=l.substring(5,l.length-1).split(",").map((e=>parseFloat(e)))}for(let e=0;e<r;e++)for(let s=0;s<i;s++)a.data[4*(e*i+s)]=d,a.data[4*(e*i+s)+1]=_,a.data[4*(e*i+s)+2]=u,a.data[4*(e*i+s)+3]=t[e][s]*(255*g);n.putImageData(a,0,0),c=(0,s.throwIfFalsy)(e.createPattern(o,null)),h.set(l,c)}e.fillStyle=c,e.fillRect(i,r,n,a)}(e,v,n,l,c,d),!0;const f=t.boxDrawingDefinitions[i];if(f)return function(e,t,i,s,r,o,n){e.strokeStyle=e.fillStyle;for(const[l,c]of Object.entries(t)){let t;e.beginPath(),e.lineWidth=n*Number.parseInt(l),t="function"==typeof c?c(.15,.15/o*r):c;for(const l of t.split(" ")){const t=l[0],c=a[t];if(!c){console.error(`Could not find drawing instructions for "${t}"`);continue}const d=l.substring(1).split(",");d[0]&&d[1]&&c(e,h(d,r,o,i,s,!0,n))}e.stroke(),e.closePath()}}(e,f,n,l,c,d,u),!0;const p=t.powerlineDefinitions[i];return!!p&&(function(e,t,i,s,r,o,n,l){const c=new Path2D;c.rect(i,s,r,o),e.clip(c),e.beginPath();const d=n/12;e.lineWidth=l*d;for(const n of t.d.split(" ")){const c=n[0],_=a[c];if(!_){console.error(`Could not find drawing instructions for "${c}"`);continue}const u=n.substring(1).split(",");u[0]&&u[1]&&_(e,h(u,r,o,i,s,!1,l,(t.leftPadding??0)*(d/2),(t.rightPadding??0)*(d/2)))}1===t.type?(e.strokeStyle=e.fillStyle,e.stroke()):e.fill(),e.closePath()}(e,p,n,l,c,d,_,u),!0)};const o=new Map;function n(e,t,i=0){return Math.max(Math.min(e,t),i)}const a={C:(e,t)=>e.bezierCurveTo(t[0],t[1],t[2],t[3],t[4],t[5]),L:(e,t)=>e.lineTo(t[0],t[1]),M:(e,t)=>e.moveTo(t[0],t[1])};function h(e,t,i,s,r,o,a,h=0,l=0){const c=e.map((e=>parseFloat(e)||parseInt(e)));if(c.length<2)throw new Error("Too few arguments for instruction");for(let e=0;e<c.length;e+=2)c[e]*=t-h*a-l*a,o&&0!==c[e]&&(c[e]=n(Math.round(c[e]+.5)-.5,t,0)),c[e]+=s+h*a;for(let e=1;e<c.length;e+=2)c[e]*=i,o&&0!==c[e]&&(c[e]=n(Math.round(c[e]+.5)-.5,i,0)),c[e]+=r;return c}},56:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.observeDevicePixelDimensions=void 0;const s=i(859);t.observeDevicePixelDimensions=function(e,t,i){let r=new t.ResizeObserver((t=>{const s=t.find((t=>t.target===e));if(!s)return;if(!("devicePixelContentBoxSize"in s))return r?.disconnect(),void(r=void 0);const o=s.devicePixelContentBoxSize[0].inlineSize,n=s.devicePixelContentBoxSize[0].blockSize;o>0&&n>0&&i(o,n)}));try{r.observe(e,{box:["device-pixel-content-box"]})}catch{r.disconnect(),r=void 0}return(0,s.toDisposable)((()=>r?.disconnect()))}},374:(e,t)=>{function i(e){return 57508<=e&&e<=57558}function s(e){return e>=128512&&e<=128591||e>=127744&&e<=128511||e>=128640&&e<=128767||e>=9728&&e<=9983||e>=9984&&e<=10175||e>=65024&&e<=65039||e>=129280&&e<=129535||e>=127462&&e<=127487}Object.defineProperty(t,"__esModule",{value:!0}),t.computeNextVariantOffset=t.createRenderDimensions=t.treatGlyphAsBackgroundColor=t.allowRescaling=t.isEmoji=t.isRestrictedPowerlineGlyph=t.isPowerlineGlyph=t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e},t.isPowerlineGlyph=i,t.isRestrictedPowerlineGlyph=function(e){return 57520<=e&&e<=57527},t.isEmoji=s,t.allowRescaling=function(e,t,r,o){return 1===t&&r>Math.ceil(1.5*o)&&void 0!==e&&e>255&&!s(e)&&!i(e)&&!function(e){return 57344<=e&&e<=63743}(e)},t.treatGlyphAsBackgroundColor=function(e){return i(e)||function(e){return 9472<=e&&e<=9631}(e)},t.createRenderDimensions=function(){return{css:{canvas:{width:0,height:0},cell:{width:0,height:0}},device:{canvas:{width:0,height:0},cell:{width:0,height:0},char:{width:0,height:0,left:0,top:0}}}},t.computeNextVariantOffset=function(e,t,i=0){return(e-(2*Math.round(t)-i))%(2*Math.round(t))}},296:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSelectionRenderModel=void 0;class i{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(e,t,i,s=!1){if(this.selectionStart=t,this.selectionEnd=i,!t||!i||t[0]===i[0]&&t[1]===i[1])return void this.clear();const r=e.buffers.active.ydisp,o=t[1]-r,n=i[1]-r,a=Math.max(o,0),h=Math.min(n,e.rows-1);a>=e.rows||h<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=s,this.viewportStartRow=o,this.viewportEndRow=n,this.viewportCappedStartRow=a,this.viewportCappedEndRow=h,this.startCol=t[0],this.endCol=i[0])}isCellSelected(e,t,i){return!!this.hasSelection&&(i-=e.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?t>=this.startCol&&i>=this.viewportCappedStartRow&&t<this.endCol&&i<=this.viewportCappedEndRow:t<this.startCol&&i>=this.viewportCappedStartRow&&t>=this.endCol&&i<=this.viewportCappedEndRow:i>this.viewportStartRow&&i<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&i===this.viewportStartRow&&t>=this.startCol&&t<this.endCol||this.viewportStartRow<this.viewportEndRow&&i===this.viewportEndRow&&t<this.endCol||this.viewportStartRow<this.viewportEndRow&&i===this.viewportStartRow&&t>=this.startCol)}}t.createSelectionRenderModel=function(){return new i}},509:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TextureAtlas=void 0;const s=i(237),r=i(860),o=i(374),n=i(160),a=i(345),h=i(485),l=i(385),c=i(147),d=i(855),_={texturePage:0,texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},offset:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}};let u;class g{get pages(){return this._pages}constructor(e,t,i){this._document=e,this._config=t,this._unicodeService=i,this._didWarmUp=!1,this._cacheMap=new h.FourKeyMap,this._cacheMapCombined=new h.FourKeyMap,this._pages=[],this._activePages=[],this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new c.AttributeData,this._textureSize=512,this._onAddTextureAtlasCanvas=new a.EventEmitter,this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=new a.EventEmitter,this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._requestClearModel=!1,this._createNewPage(),this._tmpCanvas=p(e,4*this._config.deviceCellWidth+4,this._config.deviceCellHeight+4),this._tmpCtx=(0,o.throwIfFalsy)(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency,willReadFrequently:!0}))}dispose(){for(const e of this.pages)e.canvas.remove();this._onAddTextureAtlasCanvas.dispose()}warmUp(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)}_doWarmUp(){const e=new l.IdleTaskQueue;for(let t=33;t<126;t++)e.enqueue((()=>{if(!this._cacheMap.get(t,d.DEFAULT_COLOR,d.DEFAULT_COLOR,d.DEFAULT_EXT)){const e=this._drawToCache(t,d.DEFAULT_COLOR,d.DEFAULT_COLOR,d.DEFAULT_EXT);this._cacheMap.set(t,d.DEFAULT_COLOR,d.DEFAULT_COLOR,d.DEFAULT_EXT,e)}}))}beginFrame(){return this._requestClearModel}clearTexture(){if(0!==this._pages[0].currentRow.x||0!==this._pages[0].currentRow.y){for(const e of this._pages)e.clear();this._cacheMap.clear(),this._cacheMapCombined.clear(),this._didWarmUp=!1}}_createNewPage(){if(g.maxAtlasPages&&this._pages.length>=Math.max(4,g.maxAtlasPages)){const e=this._pages.filter((e=>2*e.canvas.width<=(g.maxTextureSize||4096))).sort(((e,t)=>t.canvas.width!==e.canvas.width?t.canvas.width-e.canvas.width:t.percentageUsed-e.percentageUsed));let t=-1,i=0;for(let s=0;s<e.length;s++)if(e[s].canvas.width!==i)t=s,i=e[s].canvas.width;else if(s-t==3)break;const s=e.slice(t,t+4),r=s.map((e=>e.glyphs[0].texturePage)).sort(((e,t)=>e>t?1:-1)),o=this.pages.length-s.length,n=this._mergePages(s,o);n.version++;for(let e=r.length-1;e>=0;e--)this._deletePage(r[e]);this.pages.push(n),this._requestClearModel=!0,this._onAddTextureAtlasCanvas.fire(n.canvas)}const e=new v(this._document,this._textureSize);return this._pages.push(e),this._activePages.push(e),this._onAddTextureAtlasCanvas.fire(e.canvas),e}_mergePages(e,t){const i=2*e[0].canvas.width,s=new v(this._document,i,e);for(const[r,o]of e.entries()){const e=r*o.canvas.width%i,n=Math.floor(r/2)*o.canvas.height;s.ctx.drawImage(o.canvas,e,n);for(const s of o.glyphs)s.texturePage=t,s.sizeClipSpace.x=s.size.x/i,s.sizeClipSpace.y=s.size.y/i,s.texturePosition.x+=e,s.texturePosition.y+=n,s.texturePositionClipSpace.x=s.texturePosition.x/i,s.texturePositionClipSpace.y=s.texturePosition.y/i;this._onRemoveTextureAtlasCanvas.fire(o.canvas);const a=this._activePages.indexOf(o);-1!==a&&this._activePages.splice(a,1)}return s}_deletePage(e){this._pages.splice(e,1);for(let t=e;t<this._pages.length;t++){const e=this._pages[t];for(const t of e.glyphs)t.texturePage--;e.version++}}getRasterizedGlyphCombinedChar(e,t,i,s,r){return this._getFromCacheMap(this._cacheMapCombined,e,t,i,s,r)}getRasterizedGlyph(e,t,i,s,r){return this._getFromCacheMap(this._cacheMap,e,t,i,s,r)}_getFromCacheMap(e,t,i,s,r,o=!1){return u=e.get(t,i,s,r),u||(u=this._drawToCache(t,i,s,r,o),e.set(t,i,s,r,u)),u}_getColorFromAnsiIndex(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]}_getBackgroundColor(e,t,i,s){if(this._config.allowTransparency)return n.NULL_COLOR;let r;switch(e){case 16777216:case 33554432:r=this._getColorFromAnsiIndex(t);break;case 50331648:const e=c.AttributeData.toColorRGB(t);r=n.channels.toColor(e[0],e[1],e[2]);break;default:r=i?n.color.opaque(this._config.colors.foreground):this._config.colors.background}return r}_getForegroundColor(e,t,i,r,o,a,h,l,d,_){const u=this._getMinimumContrastColor(e,t,i,r,o,a,h,d,l,_);if(u)return u;let g;switch(o){case 16777216:case 33554432:this._config.drawBoldTextInBrightColors&&d&&a<8&&(a+=8),g=this._getColorFromAnsiIndex(a);break;case 50331648:const e=c.AttributeData.toColorRGB(a);g=n.channels.toColor(e[0],e[1],e[2]);break;default:g=h?this._config.colors.background:this._config.colors.foreground}return this._config.allowTransparency&&(g=n.color.opaque(g)),l&&(g=n.color.multiplyOpacity(g,s.DIM_OPACITY)),g}_resolveBackgroundRgba(e,t,i){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}}_resolveForegroundRgba(e,t,i,s){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&s&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}}_getMinimumContrastColor(e,t,i,s,r,o,a,h,l,c){if(1===this._config.minimumContrastRatio||c)return;const d=this._getContrastCache(l),_=d.getColor(e,s);if(void 0!==_)return _||void 0;const u=this._resolveBackgroundRgba(t,i,a),g=this._resolveForegroundRgba(r,o,a,h),v=n.rgba.ensureContrastRatio(u,g,this._config.minimumContrastRatio/(l?2:1));if(!v)return void d.setColor(e,s,null);const f=n.channels.toColor(v>>24&255,v>>16&255,v>>8&255);return d.setColor(e,s,f),f}_getContrastCache(e){return e?this._config.colors.halfContrastCache:this._config.colors.contrastCache}_drawToCache(e,t,i,n,a=!1){const h="number"==typeof e?String.fromCharCode(e):e,l=Math.min(this._config.deviceCellWidth*Math.max(h.length,2)+4,this._textureSize);this._tmpCanvas.width<l&&(this._tmpCanvas.width=l);const d=Math.min(this._config.deviceCellHeight+8,this._textureSize);if(this._tmpCanvas.height<d&&(this._tmpCanvas.height=d),this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=t,this._workAttributeData.extended.ext=n,this._workAttributeData.isInvisible())return _;const u=!!this._workAttributeData.isBold(),v=!!this._workAttributeData.isInverse(),p=!!this._workAttributeData.isDim(),C=!!this._workAttributeData.isItalic(),m=!!this._workAttributeData.isUnderline(),L=!!this._workAttributeData.isStrikethrough(),x=!!this._workAttributeData.isOverline();let w=this._workAttributeData.getFgColor(),b=this._workAttributeData.getFgColorMode(),M=this._workAttributeData.getBgColor(),R=this._workAttributeData.getBgColorMode();if(v){const e=w;w=M,M=e;const t=b;b=R,R=t}const y=this._getBackgroundColor(R,M,v,p);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";const A=u?this._config.fontWeightBold:this._config.fontWeight,E=C?"italic":"";this._tmpCtx.font=`${E} ${A} ${this._config.fontSize*this._config.devicePixelRatio}px ${this._config.fontFamily}`,this._tmpCtx.textBaseline=s.TEXT_BASELINE;const S=1===h.length&&(0,o.isPowerlineGlyph)(h.charCodeAt(0)),T=1===h.length&&(0,o.isRestrictedPowerlineGlyph)(h.charCodeAt(0)),D=this._getForegroundColor(t,R,M,i,b,w,v,p,u,(0,o.treatGlyphAsBackgroundColor)(h.charCodeAt(0)));this._tmpCtx.fillStyle=D.css;const B=T?0:4;let F=!1;!1!==this._config.customGlyphs&&(F=(0,r.tryDrawCustomChar)(this._tmpCtx,h,B,B,this._config.deviceCellWidth,this._config.deviceCellHeight,this._config.fontSize,this._config.devicePixelRatio));let P,I=!S;if(P="number"==typeof e?this._unicodeService.wcwidth(e):this._unicodeService.getStringCellWidth(e),m){this._tmpCtx.save();const e=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/15)),t=e%2==1?.5:0;if(this._tmpCtx.lineWidth=e,this._workAttributeData.isUnderlineColorDefault())this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle;else if(this._workAttributeData.isUnderlineColorRGB())I=!1,this._tmpCtx.strokeStyle=`rgb(${c.AttributeData.toColorRGB(this._workAttributeData.getUnderlineColor()).join(",")})`;else{I=!1;let e=this._workAttributeData.getUnderlineColor();this._config.drawBoldTextInBrightColors&&this._workAttributeData.isBold()&&e<8&&(e+=8),this._tmpCtx.strokeStyle=this._getColorFromAnsiIndex(e).css}this._tmpCtx.beginPath();const i=B,s=Math.ceil(B+this._config.deviceCharHeight)-t-(a?2*e:0),r=s+e,n=s+2*e;let l=this._workAttributeData.getUnderlineVariantOffset();for(let a=0;a<P;a++){this._tmpCtx.save();const h=i+a*this._config.deviceCellWidth,c=i+(a+1)*this._config.deviceCellWidth,d=h+this._config.deviceCellWidth/2;switch(this._workAttributeData.extended.underlineStyle){case 2:this._tmpCtx.moveTo(h,s),this._tmpCtx.lineTo(c,s),this._tmpCtx.moveTo(h,n),this._tmpCtx.lineTo(c,n);break;case 3:const i=e<=1?n:Math.ceil(B+this._config.deviceCharHeight-e/2)-t,a=e<=1?s:Math.ceil(B+this._config.deviceCharHeight+e/2)-t,_=new Path2D;_.rect(h,s,this._config.deviceCellWidth,n-s),this._tmpCtx.clip(_),this._tmpCtx.moveTo(h-this._config.deviceCellWidth/2,r),this._tmpCtx.bezierCurveTo(h-this._config.deviceCellWidth/2,a,h,a,h,r),this._tmpCtx.bezierCurveTo(h,i,d,i,d,r),this._tmpCtx.bezierCurveTo(d,a,c,a,c,r),this._tmpCtx.bezierCurveTo(c,i,c+this._config.deviceCellWidth/2,i,c+this._config.deviceCellWidth/2,r);break;case 4:const u=0===l?0:l>=e?2*e-l:e-l;0==!(l>=e)||0===u?(this._tmpCtx.setLineDash([Math.round(e),Math.round(e)]),this._tmpCtx.moveTo(h+u,s),this._tmpCtx.lineTo(c,s)):(this._tmpCtx.setLineDash([Math.round(e),Math.round(e)]),this._tmpCtx.moveTo(h,s),this._tmpCtx.lineTo(h+u,s),this._tmpCtx.moveTo(h+u+e,s),this._tmpCtx.lineTo(c,s)),l=(0,o.computeNextVariantOffset)(c-h,e,l);break;case 5:const g=.6,v=.3,f=c-h,p=Math.floor(g*f),C=Math.floor(v*f),m=f-p-C;this._tmpCtx.setLineDash([p,C,m]),this._tmpCtx.moveTo(h,s),this._tmpCtx.lineTo(c,s);break;default:this._tmpCtx.moveTo(h,s),this._tmpCtx.lineTo(c,s)}this._tmpCtx.stroke(),this._tmpCtx.restore()}if(this._tmpCtx.restore(),!F&&this._config.fontSize>=12&&!this._config.allowTransparency&&" "!==h){this._tmpCtx.save(),this._tmpCtx.textBaseline="alphabetic";const t=this._tmpCtx.measureText(h);if(this._tmpCtx.restore(),"actualBoundingBoxDescent"in t&&t.actualBoundingBoxDescent>0){this._tmpCtx.save();const t=new Path2D;t.rect(i,s-Math.ceil(e/2),this._config.deviceCellWidth*P,n-s+Math.ceil(e/2)),this._tmpCtx.clip(t),this._tmpCtx.lineWidth=3*this._config.devicePixelRatio,this._tmpCtx.strokeStyle=y.css,this._tmpCtx.strokeText(h,B,B+this._config.deviceCharHeight),this._tmpCtx.restore()}}}if(x){const e=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/15)),t=e%2==1?.5:0;this._tmpCtx.lineWidth=e,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(B,B+t),this._tmpCtx.lineTo(B+this._config.deviceCharWidth*P,B+t),this._tmpCtx.stroke()}if(F||this._tmpCtx.fillText(h,B,B+this._config.deviceCharHeight),"_"===h&&!this._config.allowTransparency){let e=f(this._tmpCtx.getImageData(B,B,this._config.deviceCellWidth,this._config.deviceCellHeight),y,D,I);if(e)for(let t=1;t<=5&&(this._tmpCtx.save(),this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.restore(),this._tmpCtx.fillText(h,B,B+this._config.deviceCharHeight-t),e=f(this._tmpCtx.getImageData(B,B,this._config.deviceCellWidth,this._config.deviceCellHeight),y,D,I),e);t++);}if(L){const e=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/10)),t=this._tmpCtx.lineWidth%2==1?.5:0;this._tmpCtx.lineWidth=e,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(B,B+Math.floor(this._config.deviceCharHeight/2)-t),this._tmpCtx.lineTo(B+this._config.deviceCharWidth*P,B+Math.floor(this._config.deviceCharHeight/2)-t),this._tmpCtx.stroke()}this._tmpCtx.restore();const O=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);let k;if(k=this._config.allowTransparency?function(e){for(let t=0;t<e.data.length;t+=4)if(e.data[t+3]>0)return!1;return!0}(O):f(O,y,D,I),k)return _;const $=this._findGlyphBoundingBox(O,this._workBoundingBox,l,T,F,B);let U,N;for(;;){if(0===this._activePages.length){const e=this._createNewPage();U=e,N=e.currentRow,N.height=$.size.y;break}U=this._activePages[this._activePages.length-1],N=U.currentRow;for(const e of this._activePages)$.size.y<=e.currentRow.height&&(U=e,N=e.currentRow);for(let e=this._activePages.length-1;e>=0;e--)for(const t of this._activePages[e].fixedRows)t.height<=N.height&&$.size.y<=t.height&&(U=this._activePages[e],N=t);if(N.y+$.size.y>=U.canvas.height||N.height>$.size.y+2){let e=!1;if(U.currentRow.y+U.currentRow.height+$.size.y>=U.canvas.height){let t;for(const e of this._activePages)if(e.currentRow.y+e.currentRow.height+$.size.y<e.canvas.height){t=e;break}if(t)U=t;else if(g.maxAtlasPages&&this._pages.length>=g.maxAtlasPages&&N.y+$.size.y<=U.canvas.height&&N.height>=$.size.y&&N.x+$.size.x<=U.canvas.width)e=!0;else{const t=this._createNewPage();U=t,N=t.currentRow,N.height=$.size.y,e=!0}}e||(U.currentRow.height>0&&U.fixedRows.push(U.currentRow),N={x:0,y:U.currentRow.y+U.currentRow.height,height:$.size.y},U.fixedRows.push(N),U.currentRow={x:0,y:N.y+N.height,height:0})}if(N.x+$.size.x<=U.canvas.width)break;N===U.currentRow?(N.x=0,N.y+=N.height,N.height=0):U.fixedRows.splice(U.fixedRows.indexOf(N),1)}return $.texturePage=this._pages.indexOf(U),$.texturePosition.x=N.x,$.texturePosition.y=N.y,$.texturePositionClipSpace.x=N.x/U.canvas.width,$.texturePositionClipSpace.y=N.y/U.canvas.height,$.sizeClipSpace.x/=U.canvas.width,$.sizeClipSpace.y/=U.canvas.height,N.height=Math.max(N.height,$.size.y),N.x+=$.size.x,U.ctx.putImageData(O,$.texturePosition.x-this._workBoundingBox.left,$.texturePosition.y-this._workBoundingBox.top,this._workBoundingBox.left,this._workBoundingBox.top,$.size.x,$.size.y),U.addGlyph($),U.version++,$}_findGlyphBoundingBox(e,t,i,s,r,o){t.top=0;const n=s?this._config.deviceCellHeight:this._tmpCanvas.height,a=s?this._config.deviceCellWidth:i;let h=!1;for(let i=0;i<n;i++){for(let s=0;s<a;s++){const r=i*this._tmpCanvas.width*4+4*s+3;if(0!==e.data[r]){t.top=i,h=!0;break}}if(h)break}t.left=0,h=!1;for(let i=0;i<o+a;i++){for(let s=0;s<n;s++){const r=s*this._tmpCanvas.width*4+4*i+3;if(0!==e.data[r]){t.left=i,h=!0;break}}if(h)break}t.right=a,h=!1;for(let i=o+a-1;i>=o;i--){for(let s=0;s<n;s++){const r=s*this._tmpCanvas.width*4+4*i+3;if(0!==e.data[r]){t.right=i,h=!0;break}}if(h)break}t.bottom=n,h=!1;for(let i=n-1;i>=0;i--){for(let s=0;s<a;s++){const r=i*this._tmpCanvas.width*4+4*s+3;if(0!==e.data[r]){t.bottom=i,h=!0;break}}if(h)break}return{texturePage:0,texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:t.right-t.left+1,y:t.bottom-t.top+1},sizeClipSpace:{x:t.right-t.left+1,y:t.bottom-t.top+1},offset:{x:-t.left+o+(s||r?Math.floor((this._config.deviceCellWidth-this._config.deviceCharWidth)/2):0),y:-t.top+o+(s||r?1===this._config.lineHeight?0:Math.round((this._config.deviceCellHeight-this._config.deviceCharHeight)/2):0)}}}}t.TextureAtlas=g;class v{get percentageUsed(){return this._usedPixels/(this.canvas.width*this.canvas.height)}get glyphs(){return this._glyphs}addGlyph(e){this._glyphs.push(e),this._usedPixels+=e.size.x*e.size.y}constructor(e,t,i){if(this._usedPixels=0,this._glyphs=[],this.version=0,this.currentRow={x:0,y:0,height:0},this.fixedRows=[],i)for(const e of i)this._glyphs.push(...e.glyphs),this._usedPixels+=e._usedPixels;this.canvas=p(e,t,t),this.ctx=(0,o.throwIfFalsy)(this.canvas.getContext("2d",{alpha:!0}))}clear(){this.ctx.clearRect(0,0,this.canvas.width,this.canvas.height),this.currentRow.x=0,this.currentRow.y=0,this.currentRow.height=0,this.fixedRows.length=0,this.version++}}function f(e,t,i,s){const r=t.rgba>>>24,o=t.rgba>>>16&255,n=t.rgba>>>8&255,a=i.rgba>>>24,h=i.rgba>>>16&255,l=i.rgba>>>8&255,c=Math.floor((Math.abs(r-a)+Math.abs(o-h)+Math.abs(n-l))/12);let d=!0;for(let t=0;t<e.data.length;t+=4)e.data[t]===r&&e.data[t+1]===o&&e.data[t+2]===n||s&&Math.abs(e.data[t]-r)+Math.abs(e.data[t+1]-o)+Math.abs(e.data[t+2]-n)<c?e.data[t+3]=0:d=!1;return d}function p(e,t,i){const s=e.createElement("canvas");return s.width=t,s.height=i,s}},160:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.contrastRatio=t.toPaddedHex=t.rgba=t.rgb=t.css=t.color=t.channels=t.NULL_COLOR=void 0;let i=0,s=0,r=0,o=0;var n,a,h,l,c;function d(e){const t=e.toString(16);return t.length<2?"0"+t:t}function _(e,t){return e<t?(t+.05)/(e+.05):(e+.05)/(t+.05)}t.NULL_COLOR={css:"#00000000",rgba:0},function(e){e.toCss=function(e,t,i,s){return void 0!==s?`#${d(e)}${d(t)}${d(i)}${d(s)}`:`#${d(e)}${d(t)}${d(i)}`},e.toRgba=function(e,t,i,s=255){return(e<<24|t<<16|i<<8|s)>>>0},e.toColor=function(t,i,s,r){return{css:e.toCss(t,i,s,r),rgba:e.toRgba(t,i,s,r)}}}(n||(t.channels=n={})),function(e){function t(e,t){return o=Math.round(255*t),[i,s,r]=c.toChannels(e.rgba),{css:n.toCss(i,s,r,o),rgba:n.toRgba(i,s,r,o)}}e.blend=function(e,t){if(o=(255&t.rgba)/255,1===o)return{css:t.css,rgba:t.rgba};const a=t.rgba>>24&255,h=t.rgba>>16&255,l=t.rgba>>8&255,c=e.rgba>>24&255,d=e.rgba>>16&255,_=e.rgba>>8&255;return i=c+Math.round((a-c)*o),s=d+Math.round((h-d)*o),r=_+Math.round((l-_)*o),{css:n.toCss(i,s,r),rgba:n.toRgba(i,s,r)}},e.isOpaque=function(e){return 255==(255&e.rgba)},e.ensureContrastRatio=function(e,t,i){const s=c.ensureContrastRatio(e.rgba,t.rgba,i);if(s)return n.toColor(s>>24&255,s>>16&255,s>>8&255)},e.opaque=function(e){const t=(255|e.rgba)>>>0;return[i,s,r]=c.toChannels(t),{css:n.toCss(i,s,r),rgba:t}},e.opacity=t,e.multiplyOpacity=function(e,i){return o=255&e.rgba,t(e,o*i/255)},e.toColorRGB=function(e){return[e.rgba>>24&255,e.rgba>>16&255,e.rgba>>8&255]}}(a||(t.color=a={})),function(e){let t,a;try{const e=document.createElement("canvas");e.width=1,e.height=1;const i=e.getContext("2d",{willReadFrequently:!0});i&&(t=i,t.globalCompositeOperation="copy",a=t.createLinearGradient(0,0,1,1))}catch{}e.toColor=function(e){if(e.match(/#[\da-f]{3,8}/i))switch(e.length){case 4:return i=parseInt(e.slice(1,2).repeat(2),16),s=parseInt(e.slice(2,3).repeat(2),16),r=parseInt(e.slice(3,4).repeat(2),16),n.toColor(i,s,r);case 5:return i=parseInt(e.slice(1,2).repeat(2),16),s=parseInt(e.slice(2,3).repeat(2),16),r=parseInt(e.slice(3,4).repeat(2),16),o=parseInt(e.slice(4,5).repeat(2),16),n.toColor(i,s,r,o);case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}const h=e.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(h)return i=parseInt(h[1]),s=parseInt(h[2]),r=parseInt(h[3]),o=Math.round(255*(void 0===h[5]?1:parseFloat(h[5]))),n.toColor(i,s,r,o);if(!t||!a)throw new Error("css.toColor: Unsupported css format");if(t.fillStyle=a,t.fillStyle=e,"string"!=typeof t.fillStyle)throw new Error("css.toColor: Unsupported css format");if(t.fillRect(0,0,1,1),[i,s,r,o]=t.getImageData(0,0,1,1).data,255!==o)throw new Error("css.toColor: Unsupported css format");return{rgba:n.toRgba(i,s,r,o),css:e}}}(h||(t.css=h={})),function(e){function t(e,t,i){const s=e/255,r=t/255,o=i/255;return.2126*(s<=.03928?s/12.92:Math.pow((s+.055)/1.055,2.4))+.7152*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(l||(t.rgb=l={})),function(e){function t(e,t,i){const s=e>>24&255,r=e>>16&255,o=e>>8&255;let n=t>>24&255,a=t>>16&255,h=t>>8&255,c=_(l.relativeLuminance2(n,a,h),l.relativeLuminance2(s,r,o));for(;c<i&&(n>0||a>0||h>0);)n-=Math.max(0,Math.ceil(.1*n)),a-=Math.max(0,Math.ceil(.1*a)),h-=Math.max(0,Math.ceil(.1*h)),c=_(l.relativeLuminance2(n,a,h),l.relativeLuminance2(s,r,o));return(n<<24|a<<16|h<<8|255)>>>0}function a(e,t,i){const s=e>>24&255,r=e>>16&255,o=e>>8&255;let n=t>>24&255,a=t>>16&255,h=t>>8&255,c=_(l.relativeLuminance2(n,a,h),l.relativeLuminance2(s,r,o));for(;c<i&&(n<255||a<255||h<255);)n=Math.min(255,n+Math.ceil(.1*(255-n))),a=Math.min(255,a+Math.ceil(.1*(255-a))),h=Math.min(255,h+Math.ceil(.1*(255-h))),c=_(l.relativeLuminance2(n,a,h),l.relativeLuminance2(s,r,o));return(n<<24|a<<16|h<<8|255)>>>0}e.blend=function(e,t){if(o=(255&t)/255,1===o)return t;const a=t>>24&255,h=t>>16&255,l=t>>8&255,c=e>>24&255,d=e>>16&255,_=e>>8&255;return i=c+Math.round((a-c)*o),s=d+Math.round((h-d)*o),r=_+Math.round((l-_)*o),n.toRgba(i,s,r)},e.ensureContrastRatio=function(e,i,s){const r=l.relativeLuminance(e>>8),o=l.relativeLuminance(i>>8);if(_(r,o)<s){if(o<r){const o=t(e,i,s),n=_(r,l.relativeLuminance(o>>8));if(n<s){const t=a(e,i,s);return n>_(r,l.relativeLuminance(t>>8))?o:t}return o}const n=a(e,i,s),h=_(r,l.relativeLuminance(n>>8));if(h<s){const o=t(e,i,s);return h>_(r,l.relativeLuminance(o>>8))?n:o}return n}},e.reduceLuminance=t,e.increaseLuminance=a,e.toChannels=function(e){return[e>>24&255,e>>16&255,e>>8&255,255&e]}}(c||(t.rgba=c={})),t.toPaddedHex=d,t.contrastRatio=_},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.runAndSubscribe=t.forwardEvent=t.EventEmitter=void 0,t.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=e=>(this._listeners.push(e),{dispose:()=>{if(!this._disposed)for(let t=0;t<this._listeners.length;t++)if(this._listeners[t]===e)return void this._listeners.splice(t,1)}})),this._event}fire(e,t){const i=[];for(let e=0;e<this._listeners.length;e++)i.push(this._listeners[e]);for(let s=0;s<i.length;s++)i[s].call(void 0,e,t)}dispose(){this.clearListeners(),this._disposed=!0}clearListeners(){this._listeners&&(this._listeners.length=0)}},t.forwardEvent=function(e,t){return e((e=>t.fire(e)))},t.runAndSubscribe=function(e,t){return t(void 0),e((e=>t(e)))}},859:(e,t)=>{function i(e){for(const t of e)t.dispose();e.length=0}Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.toDisposable=t.MutableDisposable=t.Disposable=void 0,t.Disposable=class{constructor(){this._disposables=[],this._isDisposed=!1}dispose(){this._isDisposed=!0;for(const e of this._disposables)e.dispose();this._disposables.length=0}register(e){return this._disposables.push(e),e}unregister(e){const t=this._disposables.indexOf(e);-1!==t&&this._disposables.splice(t,1)}},t.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}},t.toDisposable=function(e){return{dispose:e}},t.disposeArray=i,t.getDisposeArrayDisposable=function(e){return{dispose:()=>i(e)}}},485:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FourKeyMap=t.TwoKeyMap=void 0;class i{constructor(){this._data={}}set(e,t,i){this._data[e]||(this._data[e]={}),this._data[e][t]=i}get(e,t){return this._data[e]?this._data[e][t]:void 0}clear(){this._data={}}}t.TwoKeyMap=i,t.FourKeyMap=class{constructor(){this._data=new i}set(e,t,s,r,o){this._data.get(e,t)||this._data.set(e,t,new i),this._data.get(e,t).set(s,r,o)}get(e,t,i,s){return this._data.get(e,t)?.get(i,s)}clear(){this._data.clear()}}},399:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isChromeOS=t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.getSafariVersion=t.isSafari=t.isLegacyEdge=t.isFirefox=t.isNode=void 0,t.isNode=void 0!==r&&"title"in r;const i=t.isNode?"node":navigator.userAgent,s=t.isNode?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isLegacyEdge=i.includes("Edge"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.getSafariVersion=function(){if(!t.isSafari)return 0;const e=i.match(/Version\/(\d+)/);return null===e||e.length<2?0:parseInt(e[1])},t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(s),t.isIpad="iPad"===s,t.isIphone="iPhone"===s,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(s),t.isLinux=s.indexOf("Linux")>=0,t.isChromeOS=/\bCrOS\b/.test(i)},385:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DebouncedIdleTask=t.IdleTaskQueue=t.PriorityTaskQueue=void 0;const s=i(399);class r{constructor(){this._tasks=[],this._i=0}enqueue(e){this._tasks.push(e),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(e){this._idleCallback=void 0;let t=0,i=0,s=e.timeRemaining(),r=0;for(;this._i<this._tasks.length;){if(t=Date.now(),this._tasks[this._i]()||this._i++,t=Math.max(1,Date.now()-t),i=Math.max(t,i),r=e.timeRemaining(),1.5*i>r)return s-t<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(s-t))}ms`),void this._start();s=r}this.clear()}}class o extends r{_requestCallback(e){return setTimeout((()=>e(this._createDeadline(16))))}_cancelCallback(e){clearTimeout(e)}_createDeadline(e){const t=Date.now()+e;return{timeRemaining:()=>Math.max(0,t-Date.now())}}}t.PriorityTaskQueue=o,t.IdleTaskQueue=!s.isNode&&"requestIdleCallback"in window?class extends r{_requestCallback(e){return requestIdleCallback(e)}_cancelCallback(e){cancelIdleCallback(e)}}:o,t.DebouncedIdleTask=class{constructor(){this._queue=new t.IdleTaskQueue}set(e){this._queue.clear(),this._queue.enqueue(e)}flush(){this._queue.flush()}}},147:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;class i{constructor(){this.fg=0,this.bg=0,this.extended=new s}static toColorRGB(e){return[e>>>16&255,e>>>8&255,255&e]}static fromColorRGB(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]}clone(){const e=new i;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e}isInverse(){return 67108864&this.fg}isBold(){return 134217728&this.fg}isUnderline(){return this.hasExtendedAttrs()&&0!==this.extended.underlineStyle?1:268435456&this.fg}isBlink(){return 536870912&this.fg}isInvisible(){return 1073741824&this.fg}isItalic(){return 67108864&this.bg}isDim(){return 134217728&this.bg}isStrikethrough(){return 2147483648&this.fg}isProtected(){return 536870912&this.bg}isOverline(){return 1073741824&this.bg}getFgColorMode(){return 50331648&this.fg}getBgColorMode(){return 50331648&this.bg}isFgRGB(){return 50331648==(50331648&this.fg)}isBgRGB(){return 50331648==(50331648&this.bg)}isFgPalette(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)}isBgPalette(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)}isFgDefault(){return 0==(50331648&this.fg)}isBgDefault(){return 0==(50331648&this.bg)}isAttributeDefault(){return 0===this.fg&&0===this.bg}getFgColor(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}}getBgColor(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}}hasExtendedAttrs(){return 268435456&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()}isUnderlineColorPalette(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()}isUnderlineColorDefault(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()}getUnderlineStyle(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}}t.AttributeData=i;class s{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(e){this._ext&=-67108864,this._ext|=67108863&e}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){const e=(3758096384&this._ext)>>29;return e<0?4294967288^e:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}constructor(e=0,t=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=t}clone(){return new s(this._ext,this._urlId)}isEmpty(){return 0===this.underlineStyle&&0===this._urlId}}t.ExtendedAttrs=s},782:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;const s=i(133),r=i(855),o=i(147);class n extends o.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new o.ExtendedAttrs,this.combinedData=""}static fromCharData(e){const t=new n;return t.setFromCharData(e),t}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?(0,s.stringFromCodePoint)(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(e){this.fg=e[r.CHAR_DATA_ATTR_INDEX],this.bg=0;let t=!1;if(e[r.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[r.CHAR_DATA_CHAR_INDEX].length){const i=e[r.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){const s=e[r.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=s&&s<=57343?this.content=1024*(i-55296)+s-56320+65536|e[r.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[r.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[r.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[r.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[r.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}t.CellData=n},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_EXT=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=0,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.DEFAULT_EXT=0,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t=0,i=e.length){let s="";for(let r=t;r<i;++r){let t=e[r];t>65535?(t-=65536,s+=String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):s+=String.fromCharCode(t)}return s},t.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){const i=e.length;if(!i)return 0;let s=0,r=0;if(this._interim){const i=e.charCodeAt(r++);56320<=i&&i<=57343?t[s++]=1024*(this._interim-55296)+i-56320+65536:(t[s++]=this._interim,t[s++]=i),this._interim=0}for(let o=r;o<i;++o){const r=e.charCodeAt(o);if(55296<=r&&r<=56319){if(++o>=i)return this._interim=r,s;const n=e.charCodeAt(o);56320<=n&&n<=57343?t[s++]=1024*(r-55296)+n-56320+65536:(t[s++]=r,t[s++]=n)}else 65279!==r&&(t[s++]=r)}return s}},t.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){const i=e.length;if(!i)return 0;let s,r,o,n,a=0,h=0,l=0;if(this.interim[0]){let s=!1,r=this.interim[0];r&=192==(224&r)?31:224==(240&r)?15:7;let o,n=0;for(;(o=63&this.interim[++n])&&n<4;)r<<=6,r|=o;const h=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,c=h-n;for(;l<c;){if(l>=i)return 0;if(o=e[l++],128!=(192&o)){l--,s=!0;break}this.interim[n++]=o,r<<=6,r|=63&o}s||(2===h?r<128?l--:t[a++]=r:3===h?r<2048||r>=55296&&r<=57343||65279===r||(t[a++]=r):r<65536||r>1114111||(t[a++]=r)),this.interim.fill(0)}const c=i-4;let d=l;for(;d<i;){for(;!(!(d<c)||128&(s=e[d])||128&(r=e[d+1])||128&(o=e[d+2])||128&(n=e[d+3]));)t[a++]=s,t[a++]=r,t[a++]=o,t[a++]=n,d+=4;if(s=e[d++],s<128)t[a++]=s;else if(192==(224&s)){if(d>=i)return this.interim[0]=s,a;if(r=e[d++],128!=(192&r)){d--;continue}if(h=(31&s)<<6|63&r,h<128){d--;continue}t[a++]=h}else if(224==(240&s)){if(d>=i)return this.interim[0]=s,a;if(r=e[d++],128!=(192&r)){d--;continue}if(d>=i)return this.interim[0]=s,this.interim[1]=r,a;if(o=e[d++],128!=(192&o)){d--;continue}if(h=(15&s)<<12|(63&r)<<6|63&o,h<2048||h>=55296&&h<=57343||65279===h)continue;t[a++]=h}else if(240==(248&s)){if(d>=i)return this.interim[0]=s,a;if(r=e[d++],128!=(192&r)){d--;continue}if(d>=i)return this.interim[0]=s,this.interim[1]=r,a;if(o=e[d++],128!=(192&o)){d--;continue}if(d>=i)return this.interim[0]=s,this.interim[1]=r,this.interim[2]=o,a;if(n=e[d++],128!=(192&n)){d--;continue}if(h=(7&s)<<18|(63&r)<<12|(63&o)<<6|63&n,h<65536||h>1114111)continue;t[a++]=h}}return a}}},776:function(e,t,i){var s=this&&this.__decorate||function(e,t,i,s){var r,o=arguments.length,n=o<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,i,s);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(n=(o<3?r(n):o>3?r(t,i,n):r(t,i))||n);return o>3&&n&&Object.defineProperty(t,i,n),n},r=this&&this.__param||function(e,t){return function(i,s){t(i,s,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.traceCall=t.setTraceLogger=t.LogService=void 0;const o=i(859),n=i(97),a={trace:n.LogLevelEnum.TRACE,debug:n.LogLevelEnum.DEBUG,info:n.LogLevelEnum.INFO,warn:n.LogLevelEnum.WARN,error:n.LogLevelEnum.ERROR,off:n.LogLevelEnum.OFF};let h,l=t.LogService=class extends o.Disposable{get logLevel(){return this._logLevel}constructor(e){super(),this._optionsService=e,this._logLevel=n.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",(()=>this._updateLogLevel()))),h=this}_updateLogLevel(){this._logLevel=a[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let t=0;t<e.length;t++)"function"==typeof e[t]&&(e[t]=e[t]())}_log(e,t,i){this._evalLazyOptionalParams(i),e.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+t,...i)}trace(e,...t){this._logLevel<=n.LogLevelEnum.TRACE&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,e,t)}debug(e,...t){this._logLevel<=n.LogLevelEnum.DEBUG&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,e,t)}info(e,...t){this._logLevel<=n.LogLevelEnum.INFO&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,e,t)}warn(e,...t){this._logLevel<=n.LogLevelEnum.WARN&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,e,t)}error(e,...t){this._logLevel<=n.LogLevelEnum.ERROR&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,e,t)}};t.LogService=l=s([r(0,n.IOptionsService)],l),t.setTraceLogger=function(e){h=e},t.traceCall=function(e,t,i){if("function"!=typeof i.value)throw new Error("not supported");const s=i.value;i.value=function(...e){if(h.logLevel!==n.LogLevelEnum.TRACE)return s.apply(this,e);h.trace(`GlyphRenderer#${s.name}(${e.map((e=>JSON.stringify(e))).join(", ")})`);const t=s.apply(this,e);return h.trace(`GlyphRenderer#${s.name} return`,t),t}}},726:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0;const i="di$target",s="di$dependencies";t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e[s]||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);const r=function(e,t,o){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");!function(e,t,r){t[i]===t?t[s].push({id:e,index:r}):(t[s]=[{id:e,index:r}],t[i]=t)}(r,e,o)};return r.toString=()=>e,t.serviceRegistry.set(e,r),r}},97:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IDecorationService=t.IUnicodeService=t.IOscLinkService=t.IOptionsService=t.ILogService=t.LogLevelEnum=t.IInstantiationService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;const s=i(726);var r;t.IBufferService=(0,s.createDecorator)("BufferService"),t.ICoreMouseService=(0,s.createDecorator)("CoreMouseService"),t.ICoreService=(0,s.createDecorator)("CoreService"),t.ICharsetService=(0,s.createDecorator)("CharsetService"),t.IInstantiationService=(0,s.createDecorator)("InstantiationService"),function(e){e[e.TRACE=0]="TRACE",e[e.DEBUG=1]="DEBUG",e[e.INFO=2]="INFO",e[e.WARN=3]="WARN",e[e.ERROR=4]="ERROR",e[e.OFF=5]="OFF"}(r||(t.LogLevelEnum=r={})),t.ILogService=(0,s.createDecorator)("LogService"),t.IOptionsService=(0,s.createDecorator)("OptionsService"),t.IOscLinkService=(0,s.createDecorator)("OscLinkService"),t.IUnicodeService=(0,s.createDecorator)("UnicodeService"),t.IDecorationService=(0,s.createDecorator)("DecorationService")}},t={};function i(s){var r=t[s];if(void 0!==r)return r.exports;var o=t[s]={exports:{}};return e[s].call(o.exports,o,o.exports,i),o.exports}var s={};return(()=>{var e=s;Object.defineProperty(e,"__esModule",{value:!0}),e.WebglAddon=void 0;const t=i(345),r=i(859),o=i(399),n=i(666),a=i(776);class h extends r.Disposable{constructor(e){if(o.isSafari&&(0,o.getSafariVersion)()<16){const e={antialias:!1,depth:!1,preserveDrawingBuffer:!0};if(!document.createElement("canvas").getContext("webgl2",e))throw new Error("Webgl2 is only supported on Safari 16 and above")}super(),this._preserveDrawingBuffer=e,this._onChangeTextureAtlas=this.register(new t.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new t.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=this.register(new t.EventEmitter),this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._onContextLoss=this.register(new t.EventEmitter),this.onContextLoss=this._onContextLoss.event}activate(e){const i=e._core;if(!e.element)return void this.register(i.onWillOpen((()=>this.activate(e))));this._terminal=e;const s=i.coreService,o=i.optionsService,h=i,l=h._renderService,c=h._characterJoinerService,d=h._charSizeService,_=h._coreBrowserService,u=h._decorationService,g=h._logService,v=h._themeService;(0,a.setTraceLogger)(g),this._renderer=this.register(new n.WebglRenderer(e,c,d,_,s,u,o,v,this._preserveDrawingBuffer)),this.register((0,t.forwardEvent)(this._renderer.onContextLoss,this._onContextLoss)),this.register((0,t.forwardEvent)(this._renderer.onChangeTextureAtlas,this._onChangeTextureAtlas)),this.register((0,t.forwardEvent)(this._renderer.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas)),this.register((0,t.forwardEvent)(this._renderer.onRemoveTextureAtlasCanvas,this._onRemoveTextureAtlasCanvas)),l.setRenderer(this._renderer),this.register((0,r.toDisposable)((()=>{const t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.handleResize(e.cols,e.rows)})))}get textureAtlas(){return this._renderer?.textureAtlas}clearTextureAtlas(){this._renderer?.clearTextureAtlas()}}e.WebglAddon=h})(),s})(),e.exports=s()},27061:e=>{var t,i,s=e.exports={};function r(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function n(e){if(t===setTimeout)return setTimeout(e,0);if((t===r||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(i){try{return t.call(null,e,0)}catch(i){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:r}catch(e){t=r}try{i="function"==typeof clearTimeout?clearTimeout:o}catch(e){i=o}}();var a,h=[],l=!1,c=-1;function d(){l&&a&&(l=!1,a.length?h=a.concat(h):c=-1,h.length&&_())}function _(){if(!l){var e=n(d);l=!0;for(var t=h.length;t;){for(a=h,h=[];++c<t;)a&&a[c].run();c=-1,t=h.length}a=null,l=!1,function(e){if(i===clearTimeout)return clearTimeout(e);if((i===o||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(e);try{return i(e)}catch(t){try{return i.call(null,e)}catch(t){return i.call(this,e)}}}(e)}}function u(e,t){this.fun=e,this.array=t}function g(){}s.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var i=1;i<arguments.length;i++)t[i-1]=arguments[i];h.push(new u(e,t)),1!==h.length||l||n(_)},u.prototype.run=function(){this.fun.apply(null,this.array)},s.title="browser",s.browser=!0,s.env={},s.argv=[],s.version="",s.versions={},s.on=g,s.addListener=g,s.once=g,s.off=g,s.removeListener=g,s.removeAllListeners=g,s.emit=g,s.prependListener=g,s.prependOnceListener=g,s.listeners=function(e){return[]},s.binding=function(e){throw new Error("process.binding is not supported")},s.cwd=function(){return"/"},s.chdir=function(e){throw new Error("process.chdir is not supported")},s.umask=function(){return 0}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[7900,8928],{67900:(t,e,i)=>{i.r(e),i.d(e,{IImageTracker:()=>r,ImageViewer:()=>l,ImageViewerFactory:()=>d});var s=i(20998);const r=new s.Token("@jupyterlab/imageviewer:IImageTracker","A widget tracker for images.\n Use this if you want to be able to iterate over and interact with images\n viewed by the application.");var a,o=i(92972),n=i(23051),c=i(21733),h=i(63485);class l extends h.Widget{constructor(t){super(),this._scale=1,this._matrix=[1,0,0,1],this._colorinversion=0,this._ready=new s.PromiseDelegate,this.context=t,this.node.tabIndex=0,this.addClass("jp-ImageViewer"),this._img=document.createElement("img"),this.node.appendChild(this._img),this._onTitleChanged(),t.pathChanged.connect(this._onTitleChanged,this),t.ready.then((()=>{if(this.isDisposed)return;const e=t.contentsModel;this._mimeType=e.mimetype,this._render(),t.model.contentChanged.connect(this.update,this),t.fileChanged.connect(this.update,this),this._ready.resolve(void 0)}))}[n.Printing.symbol](){return()=>n.Printing.printWidget(this)}get ready(){return this._ready.promise}get scale(){return this._scale}set scale(t){t!==this._scale&&(this._scale=t,this._updateStyle())}get colorinversion(){return this._colorinversion}set colorinversion(t){t!==this._colorinversion&&(this._colorinversion=t,this._updateStyle())}dispose(){this._img.src&&URL.revokeObjectURL(this._img.src||""),super.dispose()}resetRotationFlip(){this._matrix=[1,0,0,1],this._updateStyle()}rotateCounterclockwise(){this._matrix=a.prod(this._matrix,a.rotateCounterclockwiseMatrix),this._updateStyle()}rotateClockwise(){this._matrix=a.prod(this._matrix,a.rotateClockwiseMatrix),this._updateStyle()}flipHorizontal(){this._matrix=a.prod(this._matrix,a.flipHMatrix),this._updateStyle()}flipVertical(){this._matrix=a.prod(this._matrix,a.flipVMatrix),this._updateStyle()}onUpdateRequest(t){!this.isDisposed&&this.context.isReady&&this._render()}onActivateRequest(t){this.node.focus()}_onTitleChanged(){this.title.label=o.PathExt.basename(this.context.localPath)}_render(){const t=this.context,e=t.contentsModel;if(!e)return;const i=this._img.src||"";let s=t.model.toString();if("base64"===e.format)this._img.src=`data:${this._mimeType};base64,${s}`;else{const t=new Blob([s],{type:this._mimeType});this._img.src=URL.createObjectURL(t)}URL.revokeObjectURL(i)}_updateStyle(){const[t,e,i,s]=this._matrix,[r,o]=a.prodVec(this._matrix,[1,1]),n=`matrix(${t}, ${e}, ${i}, ${s}, 0, 0) translate(${r<0?-100:0}%, ${o<0?-100:0}%) `;this._img.style.transform=`scale(${this._scale}) ${n}`,this._img.style.filter=`invert(${this._colorinversion})`}}class d extends c.ABCWidgetFactory{createNewWidget(t){const e=new l(t);return new c.DocumentWidget({content:e,context:t})}}!function(t){t.prod=function([t,e,i,s],[r,a,o,n]){return[t*r+e*o,t*a+e*n,i*r+s*o,i*a+s*n]},t.prodVec=function([t,e,i,s],[r,a]){return[t*r+e*a,i*r+s*a]},t.rotateClockwiseMatrix=[0,1,-1,0],t.rotateCounterclockwiseMatrix=[0,-1,1,0],t.flipHMatrix=[-1,0,0,1],t.flipVMatrix=[1,0,0,-1]}(a||(a={}))}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[7900,8928],{67900:(t,e,i)=>{i.r(e),i.d(e,{IImageTracker:()=>r,ImageViewer:()=>l,ImageViewerFactory:()=>d});var s=i(20998);const r=new s.Token("@jupyterlab/imageviewer:IImageTracker","A widget tracker for images.\n Use this if you want to be able to iterate over and interact with images\n viewed by the application.");var a,o=i(9983),n=i(95297),c=i(42782),h=i(63485);class l extends h.Widget{constructor(t){super(),this._scale=1,this._matrix=[1,0,0,1],this._colorinversion=0,this._ready=new s.PromiseDelegate,this.context=t,this.node.tabIndex=0,this.addClass("jp-ImageViewer"),this._img=document.createElement("img"),this.node.appendChild(this._img),this._onTitleChanged(),t.pathChanged.connect(this._onTitleChanged,this),t.ready.then((()=>{if(this.isDisposed)return;const e=t.contentsModel;this._mimeType=e.mimetype,this._render(),t.model.contentChanged.connect(this.update,this),t.fileChanged.connect(this.update,this),this._ready.resolve(void 0)}))}[n.Printing.symbol](){return()=>n.Printing.printWidget(this)}get ready(){return this._ready.promise}get scale(){return this._scale}set scale(t){t!==this._scale&&(this._scale=t,this._updateStyle())}get colorinversion(){return this._colorinversion}set colorinversion(t){t!==this._colorinversion&&(this._colorinversion=t,this._updateStyle())}dispose(){this._img.src&&URL.revokeObjectURL(this._img.src||""),super.dispose()}resetRotationFlip(){this._matrix=[1,0,0,1],this._updateStyle()}rotateCounterclockwise(){this._matrix=a.prod(this._matrix,a.rotateCounterclockwiseMatrix),this._updateStyle()}rotateClockwise(){this._matrix=a.prod(this._matrix,a.rotateClockwiseMatrix),this._updateStyle()}flipHorizontal(){this._matrix=a.prod(this._matrix,a.flipHMatrix),this._updateStyle()}flipVertical(){this._matrix=a.prod(this._matrix,a.flipVMatrix),this._updateStyle()}onUpdateRequest(t){!this.isDisposed&&this.context.isReady&&this._render()}onActivateRequest(t){this.node.focus()}_onTitleChanged(){this.title.label=o.PathExt.basename(this.context.localPath)}_render(){const t=this.context,e=t.contentsModel;if(!e)return;const i=this._img.src||"";let s=t.model.toString();if("base64"===e.format)this._img.src=`data:${this._mimeType};base64,${s}`;else{const t=new Blob([s],{type:this._mimeType});this._img.src=URL.createObjectURL(t)}URL.revokeObjectURL(i)}_updateStyle(){const[t,e,i,s]=this._matrix,[r,o]=a.prodVec(this._matrix,[1,1]),n=`matrix(${t}, ${e}, ${i}, ${s}, 0, 0) translate(${r<0?-100:0}%, ${o<0?-100:0}%) `;this._img.style.transform=`scale(${this._scale}) ${n}`,this._img.style.filter=`invert(${this._colorinversion})`}}class d extends c.ABCWidgetFactory{createNewWidget(t){const e=new l(t);return new c.DocumentWidget({content:e,context:t})}}!function(t){t.prod=function([t,e,i,s],[r,a,o,n]){return[t*r+e*o,t*a+e*n,i*r+s*o,i*a+s*n]},t.prodVec=function([t,e,i,s],[r,a]){return[t*r+e*a,i*r+s*a]},t.rotateClockwiseMatrix=[0,1,-1,0],t.rotateCounterclockwiseMatrix=[0,-1,1,0],t.flipHMatrix=[-1,0,0,1],t.flipVMatrix=[1,0,0,-1]}(a||(a={}))}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[7906,4382],{54382:(e,t,r)=>{r.r(t),r.d(t,{default:()=>a});var n=r(17093),o=r(25206);const c="jp-mod-searchable",a=[{id:"@jupyter-notebook/documentsearch-extension:notebookShellWidgetListener",requires:[o.INotebookShell,n.ISearchProviderRegistry],autoStart:!0,description:"A plugin to add document search functionalities",activate:(e,t,r)=>{const n=e=>{e&&(r.hasProvider(e)?e.addClass(c):e.removeClass(c))};r.changed.connect((()=>n(t.currentWidget))),t.currentChanged.connect(((e,r)=>{t.currentWidget&&n(t.currentWidget)}))}}]}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[7906,4382],{54382:(e,t,r)=>{r.r(t),r.d(t,{default:()=>a});var n=r(43766),o=r(28856);const c="jp-mod-searchable",a=[{id:"@jupyter-notebook/documentsearch-extension:notebookShellWidgetListener",requires:[o.INotebookShell,n.ISearchProviderRegistry],autoStart:!0,description:"A plugin to add document search functionalities",activate:(e,t,r)=>{const n=e=>{e&&(r.hasProvider(e)?e.addClass(c):e.removeClass(c))};r.changed.connect((()=>n(t.currentWidget))),t.currentChanged.connect(((e,r)=>{t.currentWidget&&n(t.currentWidget)}))}}]}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8032],{18032:(t,e,s)=>{s.r(e),s.d(e,{DSVModel:()=>a});var i=s(20998),r=s(95585),o=s(48234);const n={quotes:o.G,noquotes:o.z};class a extends r.DataModel{constructor(t){super(),this._rowCount=0,this._header=[],this._columnOffsets=new Uint32Array(0),this._columnOffsetsStartingRow=0,this._maxCacheGet=1e3,this._rowOffsets=new Uint32Array(0),this._delayedParse=null,this._startedParsing=!1,this._doneParsing=!1,this._isDisposed=!1,this._ready=new i.PromiseDelegate;let{data:e,delimiter:s=",",rowDelimiter:r,quote:o='"',quoteParser:n,header:a=!0,initialRows:h=500}=t;if(this._rawData=e,this._delimiter=s,this._quote=o,this._quoteEscaped=new RegExp(o+o,"g"),this._initialRows=h,void 0===r){const t=e.slice(0,5e3).indexOf("\r");r=-1===t?"\n":"\n"===e[t+1]?"\r\n":"\r"}if(this._rowDelimiter=r,void 0===n&&(n=e.indexOf(o)>=0),this._parser=n?"quotes":"noquotes",this.parseAsync(),!0===a&&this._columnCount>0){const t=[];for(let e=0;e<this._columnCount;e++)t.push(this._getField(0,e));this._header=t}}get isDisposed(){return this._isDisposed}get ready(){return this._ready.promise}get rawData(){return this._rawData}set rawData(t){this._rawData=t}get initialRows(){return this._initialRows}set initialRows(t){this._initialRows=t}get header(){return this._header}set header(t){this._header=t}get delimiter(){return this._delimiter}get rowDelimiter(){return this._rowDelimiter}get doneParsing(){return this._doneParsing}rowCount(t){return"body"===t?0===this._header.length?this._rowCount:this._rowCount-1:1}columnCount(t){return"body"===t?this._columnCount:1}data(t,e,s){let i;switch(t){case"body":i=0===this._header.length?this._getField(e,s):this._getField(e+1,s);break;case"column-header":i=0===this._header.length?(s+1).toString():this._header[s];break;case"row-header":i=(e+1).toString();break;case"corner-header":i="";break;default:throw"unreachable"}return i}dispose(){this._isDisposed||(this._isDisposed=!0,this._columnCount=void 0,this._rowCount=void 0,this._rowOffsets=null,this._columnOffsets=null,this._rawData=null,!1===this._doneParsing&&(this.ready.catch((()=>{})),this._ready.reject(void 0)),null!==this._delayedParse&&window.clearTimeout(this._delayedParse))}getOffsetIndex(t,e){const s=this._columnCount;let i=(t-this._columnOffsetsStartingRow)*s;if((i<0||i>this._columnOffsets.length)&&(this._columnOffsets.fill(4294967295),this._columnOffsetsStartingRow=t,i=0),4294967295===this._columnOffsets[i]){let e=1;for(;e<=this._maxCacheGet&&16777215===this._columnOffsets[i+e*s];)e++;const{offsets:r}=n[this._parser]({data:this._rawData,delimiter:this._delimiter,rowDelimiter:this._rowDelimiter,quote:this._quote,columnOffsets:!0,maxRows:e,ncols:s,startIndex:this._rowOffsets[t]});for(let t=0;t<r.length;t++)this._columnOffsets[i+t]=r[t]}return this._columnOffsets[i+e]}parseAsync(){let t=this._initialRows,e=Math.pow(2,32)-1;const s=t=>{try{this._computeRowOffsets(t)}catch(e){if("quotes"!==this._parser)throw e;console.warn(e),this._parser="noquotes",this._resetParser(),this._computeRowOffsets(t)}return this._doneParsing};if(this._resetParser(),s(t))return;const i=()=>{const r=s(t+e);t+=e,e<1e6&&(e*=2),this._delayedParse=r?null:window.setTimeout(i,30)};this._delayedParse=window.setTimeout(i,30)}_computeRowOffsets(t=4294967295){var e;if(this._rowCount>=t||!0===this._doneParsing)return;void 0===this._columnCount&&(this._columnCount=n[this._parser]({data:this._rawData,delimiter:this._delimiter,rowDelimiter:this._rowDelimiter,quote:this._quote,columnOffsets:!0,maxRows:1}).ncols);const s=this._rowCount>0?1:0,{nrows:i,offsets:r}=n[this._parser]({data:this._rawData,startIndex:null!==(e=this._rowOffsets[this._rowCount-s])&&void 0!==e?e:0,delimiter:this._delimiter,rowDelimiter:this._rowDelimiter,quote:this._quote,columnOffsets:!1,maxRows:t-this._rowCount+s});if(this._startedParsing&&i<=s)return this._doneParsing=!0,void this._ready.resolve(void 0);this._startedParsing=!0;const o=this._rowCount,a=Math.min(i,s);if(this._rowCount=o+i-a,this._rowCount<t&&(this._doneParsing=!0,this._ready.resolve(void 0)),this._rowCount>o){const t=this._rowOffsets;this._rowOffsets=new Uint32Array(this._rowCount),this._rowOffsets.set(t),this._rowOffsets.set(r,o-a)}const h=Math.floor(33554432/this._columnCount);if(o<=h)if(this._rowCount<=h){const t=this._columnOffsets;this._columnOffsets=new Uint32Array(this._rowCount*this._columnCount),this._columnOffsets.set(t),this._columnOffsets.fill(4294967295,t.length)}else{const t=this._columnOffsets;this._columnOffsets=new Uint32Array(Math.min(this._maxCacheGet,h)*this._columnCount),this._columnOffsets.set(t.subarray(0,this._columnOffsets.length)),this._columnOffsets.fill(4294967295,t.length),this._columnOffsetsStartingRow=0}let l=o;this._header.length>0&&(l-=1),this.emitChanged({type:"rows-inserted",region:"body",index:l,span:this._rowCount-o})}_getField(t,e){let s,i;const r=this.getOffsetIndex(t,e);let o=0,n=0;return e===this._columnCount-1?t<this._rowCount-1?(i=this.getOffsetIndex(t+1,0),o+=this._rowDelimiter.length):(i=this._rawData.length,this._rawData[i-1]===this._rowDelimiter[this._rowDelimiter.length-1]&&(o+=this._rowDelimiter.length)):(i=this.getOffsetIndex(t,e+1),r<i&&this._rawData[i-1]===this._delimiter&&(o+=1)),this._rawData[r]===this._quote&&(n+=1,o+=1),s=this._rawData.slice(r+n,i-o),1===n&&-1!==s.indexOf(this._quote)&&(s=s.replace(this._quoteEscaped,this._quote)),s}_resetParser(){this._columnCount=void 0,this._rowOffsets=new Uint32Array(0),this._rowCount=0,this._startedParsing=!1,this._columnOffsets=new Uint32Array(0),!1===this._doneParsing&&(this.ready.catch((()=>{})),this._ready.reject(void 0)),this._doneParsing=!1,this._ready=new i.PromiseDelegate,null!==this._delayedParse&&(window.clearTimeout(this._delayedParse),this._delayedParse=null),this.emitChanged({type:"model-reset"})}}},48234:(t,e,s)=>{var i,r;function o(t){const{data:e,columnOffsets:s,delimiter:o=",",startIndex:n=0,maxRows:a=4294967295,rowDelimiter:h="\r\n",quote:l='"'}=t;let u=t.ncols,_=0;const d=[],f=o.charCodeAt(0),c=l.charCodeAt(0),w=10,m=e.length,{QUOTED_FIELD:g,QUOTED_FIELD_QUOTE:O,UNQUOTED_FIELD:C,NEW_FIELD:D,NEW_ROW:p}=i,{CR:E,LF:b,CRLF:x}=r,[y,R]="\r\n"===h?[x,2]:"\r"===h?[E,1]:[b,1];let P,$=p,U=n,k=0;for(;U<m;){switch($===p&&(d.push(U),k=1),P=e.charCodeAt(U),$){case p:case D:switch(P){case c:$=g;break;case f:$=D;break;case 13:if(y===E)$=p;else{if(y!==x||e.charCodeAt(U+1)!==w)throw`string index ${U} (in row ${_}, column ${k}): carriage return found, but not as part of a row delimiter C ${e.charCodeAt(U+1)}`;U++,$=p}break;case w:if(y!==b)throw`string index ${U} (in row ${_}, column ${k}): line feed found, but row delimiter starts with a carriage return`;$=p;break;default:$=C}break;case g:if(U=e.indexOf(l,U),U<0)throw`string index ${U} (in row ${_}, column ${k}): mismatched quote`;$=O;break;case O:switch(P){case c:$=g;break;case f:$=D;break;case 13:if(y===E)$=p;else{if(y!==x||e.charCodeAt(U+1)!==w)throw`string index ${U} (in row ${_}, column ${k}): carriage return found, but not as part of a row delimiter C ${e.charCodeAt(U+1)}`;U++,$=p}break;case w:if(y!==b)throw`string index ${U} (in row ${_}, column ${k}): line feed found, but row delimiter starts with a carriage return`;$=p;break;default:throw`string index ${U} (in row ${_}, column ${k}): quote in escaped field not followed by quote, delimiter, or row delimiter`}break;case C:for(;U<m&&(P=e.charCodeAt(U),P!==f&&P!==w&&13!==P);)U++;switch(P){case f:$=D;break;case 13:if(y===E)$=p;else{if(y!==x||e.charCodeAt(U+1)!==w)throw`string index ${U} (in row ${_}, column ${k}): carriage return found, but not as part of a row delimiter C ${e.charCodeAt(U+1)}`;U++,$=p}break;case w:if(y!==b)throw`string index ${U} (in row ${_}, column ${k}): line feed found, but row delimiter starts with a carriage return`;$=p;break;default:continue}break;default:throw`string index ${U} (in row ${_}, column ${k}): state not recognized`}switch(U++,$){case p:if(_++,void 0===u){if(1!==_)throw new Error("Error parsing default number of columns");u=k}if(!0===s)if(k<u)for(;k<u;k++)d.push(U-R);else k>u&&(d.length=d.length-(k-u));if(_===a)return{nrows:_,ncols:s?u:0,offsets:d};break;case D:!0===s&&d.push(U),k++}}if($!==p&&(_++,!0===s))if(void 0===u&&(u=k),k<u)for(;k<u;k++)d.push(U-(R-1));else k>u&&(d.length=d.length-(k-u));return{nrows:_,ncols:s&&null!=u?u:0,offsets:d}}function n(t){const{data:e,columnOffsets:s,delimiter:i=",",rowDelimiter:r="\r\n",startIndex:o=0,maxRows:n=4294967295}=t;let a=t.ncols;const h=[];let l=0;const u=r.length;let _=o;const d=e.length;let f,c,w,m,g;for(f=o;-1!==f&&l<n&&_<d;){if(h.push(_),l++,f=e.indexOf(r,_),g=-1===f?d:f,!0===s)if(c=1,w=e.slice(_,g),m=w.indexOf(i),void 0===a){for(;-1!==m;)h.push(_+m+1),c++,m=w.indexOf(i,m+1);a=c}else{for(;-1!==m&&c<a;)h.push(_+m+1),c++,m=w.indexOf(i,m+1);for(;c<a;)h.push(g),c++}_=g+u}return{nrows:l,ncols:s&&null!=a?a:0,offsets:h}}s.d(e,{G:()=>o,z:()=>n}),function(t){t[t.QUOTED_FIELD=0]="QUOTED_FIELD",t[t.QUOTED_FIELD_QUOTE=1]="QUOTED_FIELD_QUOTE",t[t.UNQUOTED_FIELD=2]="UNQUOTED_FIELD",t[t.NEW_FIELD=3]="NEW_FIELD",t[t.NEW_ROW=4]="NEW_ROW"}(i||(i={})),function(t){t[t.CR=0]="CR",t[t.CRLF=1]="CRLF",t[t.LF=2]="LF"}(r||(r={}))}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8032],{18032:(t,e,s)=>{s.r(e),s.d(e,{DSVModel:()=>a});var i=s(20998),r=s(59072),o=s(48234);const n={quotes:o.G,noquotes:o.z};class a extends r.DataModel{constructor(t){super(),this._rowCount=0,this._header=[],this._columnOffsets=new Uint32Array(0),this._columnOffsetsStartingRow=0,this._maxCacheGet=1e3,this._rowOffsets=new Uint32Array(0),this._delayedParse=null,this._startedParsing=!1,this._doneParsing=!1,this._isDisposed=!1,this._ready=new i.PromiseDelegate;let{data:e,delimiter:s=",",rowDelimiter:r,quote:o='"',quoteParser:n,header:a=!0,initialRows:h=500}=t;if(this._rawData=e,this._delimiter=s,this._quote=o,this._quoteEscaped=new RegExp(o+o,"g"),this._initialRows=h,void 0===r){const t=e.slice(0,5e3).indexOf("\r");r=-1===t?"\n":"\n"===e[t+1]?"\r\n":"\r"}if(this._rowDelimiter=r,void 0===n&&(n=e.indexOf(o)>=0),this._parser=n?"quotes":"noquotes",this.parseAsync(),!0===a&&this._columnCount>0){const t=[];for(let e=0;e<this._columnCount;e++)t.push(this._getField(0,e));this._header=t}}get isDisposed(){return this._isDisposed}get ready(){return this._ready.promise}get rawData(){return this._rawData}set rawData(t){this._rawData=t}get initialRows(){return this._initialRows}set initialRows(t){this._initialRows=t}get header(){return this._header}set header(t){this._header=t}get delimiter(){return this._delimiter}get rowDelimiter(){return this._rowDelimiter}get doneParsing(){return this._doneParsing}rowCount(t){return"body"===t?0===this._header.length?this._rowCount:this._rowCount-1:1}columnCount(t){return"body"===t?this._columnCount:1}data(t,e,s){let i;switch(t){case"body":i=0===this._header.length?this._getField(e,s):this._getField(e+1,s);break;case"column-header":i=0===this._header.length?(s+1).toString():this._header[s];break;case"row-header":i=(e+1).toString();break;case"corner-header":i="";break;default:throw"unreachable"}return i}dispose(){this._isDisposed||(this._isDisposed=!0,this._columnCount=void 0,this._rowCount=void 0,this._rowOffsets=null,this._columnOffsets=null,this._rawData=null,!1===this._doneParsing&&(this.ready.catch((()=>{})),this._ready.reject(void 0)),null!==this._delayedParse&&window.clearTimeout(this._delayedParse))}getOffsetIndex(t,e){const s=this._columnCount;let i=(t-this._columnOffsetsStartingRow)*s;if((i<0||i>this._columnOffsets.length)&&(this._columnOffsets.fill(4294967295),this._columnOffsetsStartingRow=t,i=0),4294967295===this._columnOffsets[i]){let e=1;for(;e<=this._maxCacheGet&&16777215===this._columnOffsets[i+e*s];)e++;const{offsets:r}=n[this._parser]({data:this._rawData,delimiter:this._delimiter,rowDelimiter:this._rowDelimiter,quote:this._quote,columnOffsets:!0,maxRows:e,ncols:s,startIndex:this._rowOffsets[t]});for(let t=0;t<r.length;t++)this._columnOffsets[i+t]=r[t]}return this._columnOffsets[i+e]}parseAsync(){let t=this._initialRows,e=Math.pow(2,32)-1;const s=t=>{try{this._computeRowOffsets(t)}catch(e){if("quotes"!==this._parser)throw e;console.warn(e),this._parser="noquotes",this._resetParser(),this._computeRowOffsets(t)}return this._doneParsing};if(this._resetParser(),s(t))return;const i=()=>{const r=s(t+e);t+=e,e<1e6&&(e*=2),this._delayedParse=r?null:window.setTimeout(i,30)};this._delayedParse=window.setTimeout(i,30)}_computeRowOffsets(t=4294967295){var e;if(this._rowCount>=t||!0===this._doneParsing)return;void 0===this._columnCount&&(this._columnCount=n[this._parser]({data:this._rawData,delimiter:this._delimiter,rowDelimiter:this._rowDelimiter,quote:this._quote,columnOffsets:!0,maxRows:1}).ncols);const s=this._rowCount>0?1:0,{nrows:i,offsets:r}=n[this._parser]({data:this._rawData,startIndex:null!==(e=this._rowOffsets[this._rowCount-s])&&void 0!==e?e:0,delimiter:this._delimiter,rowDelimiter:this._rowDelimiter,quote:this._quote,columnOffsets:!1,maxRows:t-this._rowCount+s});if(this._startedParsing&&i<=s)return this._doneParsing=!0,void this._ready.resolve(void 0);this._startedParsing=!0;const o=this._rowCount,a=Math.min(i,s);if(this._rowCount=o+i-a,this._rowCount<t&&(this._doneParsing=!0,this._ready.resolve(void 0)),this._rowCount>o){const t=this._rowOffsets;this._rowOffsets=new Uint32Array(this._rowCount),this._rowOffsets.set(t),this._rowOffsets.set(r,o-a)}const h=Math.floor(33554432/this._columnCount);if(o<=h)if(this._rowCount<=h){const t=this._columnOffsets;this._columnOffsets=new Uint32Array(this._rowCount*this._columnCount),this._columnOffsets.set(t),this._columnOffsets.fill(4294967295,t.length)}else{const t=this._columnOffsets;this._columnOffsets=new Uint32Array(Math.min(this._maxCacheGet,h)*this._columnCount),this._columnOffsets.set(t.subarray(0,this._columnOffsets.length)),this._columnOffsets.fill(4294967295,t.length),this._columnOffsetsStartingRow=0}let l=o;this._header.length>0&&(l-=1),this.emitChanged({type:"rows-inserted",region:"body",index:l,span:this._rowCount-o})}_getField(t,e){let s,i;const r=this.getOffsetIndex(t,e);let o=0,n=0;return e===this._columnCount-1?t<this._rowCount-1?(i=this.getOffsetIndex(t+1,0),o+=this._rowDelimiter.length):(i=this._rawData.length,this._rawData[i-1]===this._rowDelimiter[this._rowDelimiter.length-1]&&(o+=this._rowDelimiter.length)):(i=this.getOffsetIndex(t,e+1),r<i&&this._rawData[i-1]===this._delimiter&&(o+=1)),this._rawData[r]===this._quote&&(n+=1,o+=1),s=this._rawData.slice(r+n,i-o),1===n&&-1!==s.indexOf(this._quote)&&(s=s.replace(this._quoteEscaped,this._quote)),s}_resetParser(){this._columnCount=void 0,this._rowOffsets=new Uint32Array(0),this._rowCount=0,this._startedParsing=!1,this._columnOffsets=new Uint32Array(0),!1===this._doneParsing&&(this.ready.catch((()=>{})),this._ready.reject(void 0)),this._doneParsing=!1,this._ready=new i.PromiseDelegate,null!==this._delayedParse&&(window.clearTimeout(this._delayedParse),this._delayedParse=null),this.emitChanged({type:"model-reset"})}}},48234:(t,e,s)=>{var i,r;function o(t){const{data:e,columnOffsets:s,delimiter:o=",",startIndex:n=0,maxRows:a=4294967295,rowDelimiter:h="\r\n",quote:l='"'}=t;let u=t.ncols,_=0;const d=[],f=o.charCodeAt(0),c=l.charCodeAt(0),w=10,m=e.length,{QUOTED_FIELD:g,QUOTED_FIELD_QUOTE:O,UNQUOTED_FIELD:C,NEW_FIELD:D,NEW_ROW:p}=i,{CR:E,LF:b,CRLF:x}=r,[y,R]="\r\n"===h?[x,2]:"\r"===h?[E,1]:[b,1];let P,$=p,U=n,k=0;for(;U<m;){switch($===p&&(d.push(U),k=1),P=e.charCodeAt(U),$){case p:case D:switch(P){case c:$=g;break;case f:$=D;break;case 13:if(y===E)$=p;else{if(y!==x||e.charCodeAt(U+1)!==w)throw`string index ${U} (in row ${_}, column ${k}): carriage return found, but not as part of a row delimiter C ${e.charCodeAt(U+1)}`;U++,$=p}break;case w:if(y!==b)throw`string index ${U} (in row ${_}, column ${k}): line feed found, but row delimiter starts with a carriage return`;$=p;break;default:$=C}break;case g:if(U=e.indexOf(l,U),U<0)throw`string index ${U} (in row ${_}, column ${k}): mismatched quote`;$=O;break;case O:switch(P){case c:$=g;break;case f:$=D;break;case 13:if(y===E)$=p;else{if(y!==x||e.charCodeAt(U+1)!==w)throw`string index ${U} (in row ${_}, column ${k}): carriage return found, but not as part of a row delimiter C ${e.charCodeAt(U+1)}`;U++,$=p}break;case w:if(y!==b)throw`string index ${U} (in row ${_}, column ${k}): line feed found, but row delimiter starts with a carriage return`;$=p;break;default:throw`string index ${U} (in row ${_}, column ${k}): quote in escaped field not followed by quote, delimiter, or row delimiter`}break;case C:for(;U<m&&(P=e.charCodeAt(U),P!==f&&P!==w&&13!==P);)U++;switch(P){case f:$=D;break;case 13:if(y===E)$=p;else{if(y!==x||e.charCodeAt(U+1)!==w)throw`string index ${U} (in row ${_}, column ${k}): carriage return found, but not as part of a row delimiter C ${e.charCodeAt(U+1)}`;U++,$=p}break;case w:if(y!==b)throw`string index ${U} (in row ${_}, column ${k}): line feed found, but row delimiter starts with a carriage return`;$=p;break;default:continue}break;default:throw`string index ${U} (in row ${_}, column ${k}): state not recognized`}switch(U++,$){case p:if(_++,void 0===u){if(1!==_)throw new Error("Error parsing default number of columns");u=k}if(!0===s)if(k<u)for(;k<u;k++)d.push(U-R);else k>u&&(d.length=d.length-(k-u));if(_===a)return{nrows:_,ncols:s?u:0,offsets:d};break;case D:!0===s&&d.push(U),k++}}if($!==p&&(_++,!0===s))if(void 0===u&&(u=k),k<u)for(;k<u;k++)d.push(U-(R-1));else k>u&&(d.length=d.length-(k-u));return{nrows:_,ncols:s&&null!=u?u:0,offsets:d}}function n(t){const{data:e,columnOffsets:s,delimiter:i=",",rowDelimiter:r="\r\n",startIndex:o=0,maxRows:n=4294967295}=t;let a=t.ncols;const h=[];let l=0;const u=r.length;let _=o;const d=e.length;let f,c,w,m,g;for(f=o;-1!==f&&l<n&&_<d;){if(h.push(_),l++,f=e.indexOf(r,_),g=-1===f?d:f,!0===s)if(c=1,w=e.slice(_,g),m=w.indexOf(i),void 0===a){for(;-1!==m;)h.push(_+m+1),c++,m=w.indexOf(i,m+1);a=c}else{for(;-1!==m&&c<a;)h.push(_+m+1),c++,m=w.indexOf(i,m+1);for(;c<a;)h.push(g),c++}_=g+u}return{nrows:l,ncols:s&&null!=a?a:0,offsets:h}}s.d(e,{G:()=>o,z:()=>n}),function(t){t[t.QUOTED_FIELD=0]="QUOTED_FIELD",t[t.QUOTED_FIELD_QUOTE=1]="QUOTED_FIELD_QUOTE",t[t.UNQUOTED_FIELD=2]="UNQUOTED_FIELD",t[t.NEW_FIELD=3]="NEW_FIELD",t[t.NEW_ROW=4]="NEW_ROW"}(i||(i={})),function(t){t[t.CR=0]="CR",t[t.CRLF=1]="CRLF",t[t.LF=2]="LF"}(r||(r={}))}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8471],{8471:(e,t,n)=>{n.r(t),n.d(t,{ToolbarItems:()=>E,default:()=>T,downloadPlugin:()=>W,openBrowserTabPlugin:()=>F,pathStatusPlugin:()=>S,savingStatusPlugin:()=>I});var o,a,r=n(11510),i=n(23051),l=n(92972),d=n(10747),s=n(13532),c=n(56653),u=n(31721),m=n(36478),g=n(33625),p=n(20998),v=n(81997),h=n(63485),f=n(78156),_=n(91077);!function(e){e.clearRecents="docmanager:clear-recents"}(o||(o={})),function(e){e.recentsManager="@jupyterlab/docmanager-extension:recents",e.reopenClosed="@jupyterlab/docmanager-extension:reopen-recently-closed",e.mainPlugin="@jupyterlab/docmanager-extension:plugin"}(a||(a={}));const w={id:a.recentsManager,description:"Provides a manager of recently opened and closed documents.",autoStart:!0,requires:[_.IStateDB],optional:[s.ISettingRegistry,u.ITranslator],provides:d.IRecentsManager,activate:(e,t,n,r)=>{const{serviceManager:i}=e,l=(null!=r?r:u.nullTranslator).load("jupyterlab"),s=new d.RecentsManager({stateDB:t,contents:i.contents}),c=e=>{s.maximalRecentsLength=e.get("maxNumberRecents").composite};return n&&Promise.all([e.restored,n.load(a.mainPlugin)]).then((([e,t])=>{t.changed.connect(c),c(t)})),e.commands.addCommand(o.clearRecents,{execute:()=>{s.clearRecents()},label:l.__("Clear Recent Documents"),caption:l.__("Clear the list of recently opened items.")}),s}};var b;!function(e){e.clone="docmanager:clone",e.deleteFile="docmanager:delete-file",e.newUntitled="docmanager:new-untitled",e.open="docmanager:open",e.openBrowserTab="docmanager:open-browser-tab",e.reload="docmanager:reload",e.rename="docmanager:rename",e.del="docmanager:delete",e.duplicate="docmanager:duplicate",e.restoreCheckpoint="docmanager:restore-checkpoint",e.save="docmanager:save",e.saveAll="docmanager:save-all",e.saveAs="docmanager:save-as",e.download="docmanager:download",e.toggleAutosave="docmanager:toggle-autosave",e.showInFileBrowser="docmanager:show-in-file-browser"}(b||(b={}));const y="@jupyterlab/docmanager-extension:plugin",C={id:"@jupyterlab/docmanager-extension:opener",description:"Provides the widget opener.",autoStart:!0,provides:d.IDocumentWidgetOpener,activate:e=>{const{shell:t}=e;return new class{constructor(){this._opened=new v.Signal(this)}open(e,n){e.id||(e.id="document-manager-"+ ++R.id),e.title.dataset={type:"document-title",...e.title.dataset},e.isAttached||t.add(e,"main",n||{}),t.activateById(e.id),this._opened.emit(e)}get opened(){return this._opened}}}},x={id:"@jupyterlab/docmanager-extension:contexts",description:"Adds the handling of opened documents dirty state.",autoStart:!0,requires:[d.IDocumentManager,d.IDocumentWidgetOpener],optional:[r.ILabStatus],activate:(e,t,n,o)=>{const a=new WeakSet;n.opened.connect(((e,n)=>{const r=t.contextForWidget(n);r&&!a.has(r)&&(o&&function(e,t){let n=null;const o=(t,o)=>{"dirty"===o.name&&(!0===o.newValue?n||(n=e.setDirty()):n&&(n.dispose(),n=null))};t.ready.then((()=>{t.model.stateChanged.connect(o),t.model.dirty&&(n=e.setDirty())})),t.disposed.connect((()=>{n&&n.dispose()}))}(o,r),a.add(r))}))}},D={id:"@jupyterlab/docmanager-extension:manager",description:"Provides the document manager.",provides:d.IDocumentManager,requires:[d.IDocumentWidgetOpener],optional:[u.ITranslator,r.ILabStatus,i.ISessionContextDialogs,r.JupyterLab.IInfo,d.IRecentsManager],activate:(e,t,n,o,a,r,l)=>{var s;const{serviceManager:c,docRegistry:m}=e,g=null!=n?n:u.nullTranslator,p=null!=a?a:new i.SessionContextDialogs({translator:g}),v=e.restored.then((()=>{}));return new d.DocumentManager({registry:m,manager:c,opener:t,when:v,setBusy:null!==(s=o&&(()=>o.setBusy()))&&void 0!==s?s:void 0,sessionDialogs:p,translator:null!=g?g:u.nullTranslator,isConnectedCallback:()=>!r||r.isConnected,recentsManager:null!=l?l:void 0})}},k={id:y,description:"Adds commands and settings to the document manager.",autoStart:!0,requires:[d.IDocumentManager,d.IDocumentWidgetOpener,s.ISettingRegistry],optional:[u.ITranslator,i.ICommandPalette,r.ILabShell],activate:(e,t,n,o,a,r,s)=>{const c=(a=null!=a?a:u.nullTranslator).load("jupyterlab"),v=e.docRegistry;!function(e,t,n,o,a,r,s){const c=a.load("jupyterlab"),{commands:u,shell:p}=e,v=c.__("File Operations"),h=()=>{const{currentWidget:e}=p;return!(!e||!t.contextForWidget(e))},f=()=>{var e;const{currentWidget:n}=p;if(!n)return!1;const o=t.contextForWidget(n);return!!(null===(e=null==o?void 0:o.contentsModel)||void 0===e?void 0:e.writable)},_=e=>i.Notification.warning(c.__('%1 is permissioned as read-only. Use "save as..." instead.',e),{autoClose:5e3});r&&function(e,t,n,o,a){const r=a.load("jupyterlab"),{commands:l}=e,s=()=>{var o;const a=/[Pp]ath:\s?(.*)\n?/,r=e.contextMenuHitTest((e=>{var t;return!!(null===(t=e.title)||void 0===t?void 0:t.match(a))})),i=null==r?void 0:r.title.match(a);return null!==(o=i&&t.findWidget(i[1],null))&&void 0!==o?o:n.currentWidget},c=()=>{const{currentWidget:e}=n;return!(!e||!t.contextForWidget(e))};l.addCommand(b.clone,{label:()=>r.__("New View for %1",A(s(),t)),isEnabled:c,execute:e=>{const n=s(),a=e.options||{mode:"split-right"};if(!n)return;const r=t.cloneWidget(n);r&&o.open(r,a)}}),l.addCommand(b.rename,{label:()=>{let e=A(s(),t);return e&&(e=" "+e),r.__("Rename%1…",e)},isEnabled:c,execute:()=>{if(c()){const e=t.contextForWidget(s());return(0,d.renameDialog)(t,e)}}}),l.addCommand(b.duplicate,{label:()=>r.__("Duplicate %1",A(s(),t)),isEnabled:c,execute:()=>{if(c()){const e=t.contextForWidget(s());if(!e)return;return t.duplicate(e.path)}}}),l.addCommand(b.del,{label:()=>r.__("Delete %1",A(s(),t)),isEnabled:c,execute:async()=>{if(c()){const n=t.contextForWidget(s());if(!n)return;(await(0,i.showDialog)({title:r.__("Delete"),body:r.__("Are you sure you want to delete %1",n.path),buttons:[i.Dialog.cancelButton(),i.Dialog.warnButton({label:r.__("Delete")})]})).button.accept&&await e.commands.execute("docmanager:delete-file",{path:n.path})}}}),l.addCommand(b.showInFileBrowser,{label:()=>r.__("Show in File Browser"),isEnabled:c,execute:async()=>{const e=s(),n=e&&t.contextForWidget(e);n&&(await l.execute("filebrowser:activate",{path:n.path}),await l.execute("filebrowser:go-to-path",{path:n.path}))}})}(e,t,r,n,a),u.addCommand(b.deleteFile,{label:()=>`Delete ${A(p.currentWidget,t)}`,execute:e=>{const n=void 0===e.path?"":e.path;if(!n){const e=b.deleteFile;throw new Error(`A non-empty path is required for ${e}.`)}return t.deleteFile(n)}}),u.addCommand(b.newUntitled,{execute:e=>{const n=e.error||c.__("Error"),o=void 0===e.path?"":e.path,a={type:e.type,path:o};return"file"===e.type&&(a.ext=e.ext||".txt"),t.services.contents.newUntitled(a).catch((e=>(0,i.showErrorMessage)(n,e)))},label:e=>e.label||`New ${e.type}`}),u.addCommand(b.open,{execute:e=>{const n=void 0===e.path?"":e.path,o=e.factory||void 0,a=null==e?void 0:e.kernel,r=e.options||void 0;return t.services.contents.get(n,{content:!1}).then((()=>t.openOrReveal(n,o,a,r)))},iconClass:e=>e.icon||"",label:e=>{var t;return null!==(t=e.label||e.factory)&&void 0!==t?t:c.__("Open the provided `path`.")},mnemonic:e=>e.mnemonic||-1}),u.addCommand(b.reload,{label:()=>c.__("Reload %1 from Disk",A(p.currentWidget,t)),caption:c.__("Reload contents from disk"),isEnabled:h,execute:()=>{if(!h())return;const e=t.contextForWidget(p.currentWidget),n=A(p.currentWidget,t);return e?e.model.dirty?(0,i.showDialog)({title:c.__("Reload %1 from Disk",n),body:c.__("Are you sure you want to reload the %1 from the disk?",n),buttons:[i.Dialog.cancelButton(),i.Dialog.warnButton({label:c.__("Reload")})]}).then((t=>{if(t.button.accept&&!e.isDisposed)return e.revert()})):e.isDisposed?void 0:e.revert():(0,i.showDialog)({title:c.__("Cannot Reload"),body:c.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]})}}),u.addCommand(b.restoreCheckpoint,{label:()=>c.__("Revert %1 to Checkpoint…",A(p.currentWidget,t)),caption:c.__("Revert contents to previous checkpoint"),isEnabled:h,execute:()=>{if(!h())return;const e=t.contextForWidget(p.currentWidget);return e?e.listCheckpoints().then((async n=>{const o=A(p.currentWidget,t);if(n.length<1)return void await(0,i.showErrorMessage)(c.__("No checkpoints"),c.__("No checkpoints are available for this %1.",o));const a=1===n.length?n[0]:await R.getTargetCheckpoint(n.reverse(),c);return a?(0,i.showDialog)({title:c.__("Revert %1 to checkpoint",o),body:new M(a,c,o),buttons:[i.Dialog.cancelButton(),i.Dialog.warnButton({label:c.__("Revert"),ariaLabel:c.__("Revert to Checkpoint")})]}).then((t=>{if(!e.isDisposed)return t.button.accept?e.model.readOnly?e.revert():e.restoreCheckpoint(a.id).then((()=>e.revert())):void 0})):void 0})):(0,i.showDialog)({title:c.__("Cannot Revert"),body:c.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]})}});const w=new WeakSet;u.addCommand(b.save,{label:()=>c.__("Save %1",A(p.currentWidget,t)),caption:()=>{if(p.currentWidget){const e=t.contextForWidget(p.currentWidget);if(null==e?void 0:e.model.collaborative)return c.__("In collaborative mode, the document is saved automatically after every change");if(!f())return c.__('document is permissioned readonly; "save" is disabled, use "save as..." instead')}return c.__("Save and create checkpoint")},icon:e=>e.toolbar?m.saveIcon:void 0,isEnabled:e=>e._luminoEvent&&"keybinding"===e._luminoEvent.type||f(),execute:async e=>{var n,a,r,d,s;const u=p.currentWidget,m=t.contextForWidget(u);if(h()){if(!m)return(0,i.showDialog)({title:c.__("Cannot Save"),body:c.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]});{if(w.has(m))return;if(!(null===(n=m.contentsModel)||void 0===n?void 0:n.writable)&&!m.model.collaborative){let t=null===(a=e._luminoEvent)||void 0===a?void 0:a.type;return e._luminoEvent&&"keybinding"===t?void _(m.path):(0,i.showDialog)({title:c.__("Cannot Save"),body:c.__("Document is read-only"),buttons:[i.Dialog.okButton()]})}w.add(m);const g=l.PathExt.basename(null!==(d=null===(r=m.contentsModel)||void 0===r?void 0:r.path)&&void 0!==d?d:"");let p=g;if(t.renameUntitledFileOnSave&&!0===u.isUntitled){const e=await i.InputDialog.getText({title:c.__("Rename file"),okLabel:c.__("Rename"),placeholder:c.__("File name"),text:g,selectionRange:g.length-l.PathExt.extname(g).length,checkbox:{label:c.__("Do not ask me again."),caption:c.__("If checked, you will not be asked to rename future untitled files when saving them.")}});if(e.button.accept&&(p=null!==(s=e.value)&&void 0!==s?s:g,u.isUntitled=!1,"boolean"==typeof e.isChecked)){const t=(await o.get(y,"renameUntitledFileOnSave")).composite;e.isChecked===t&&o.set(y,"renameUntitledFileOnSave",!e.isChecked).catch((e=>{console.error(`Fail to set 'renameUntitledFileOnSave:\n${e}`)}))}}try{if(await m.save(),!(null==u?void 0:u.isDisposed))return m.createCheckpoint()}catch(e){if("ModalCancelError"===e.name)return;throw e}finally{w.delete(m),p!==g&&await m.rename(p)}}}}}),u.addCommand(b.saveAll,{label:()=>c.__("Save All"),caption:c.__("Save all open documents"),isEnabled:()=>(0,g.some)(p.widgets("main"),(e=>{var n,o,a;return null!==(a=null===(o=null===(n=t.contextForWidget(e))||void 0===n?void 0:n.contentsModel)||void 0===o?void 0:o.writable)&&void 0!==a&&a})),execute:()=>{var e;const n=[],o=new Set;for(const a of p.widgets("main")){const r=t.contextForWidget(a);r&&!o.has(r.path)&&((null===(e=r.contentsModel)||void 0===e?void 0:e.writable)?(o.add(r.path),n.push(r.save())):_(r.path))}return Promise.all(n)}}),u.addCommand(b.saveAs,{label:()=>c.__("Save %1 As…",A(p.currentWidget,t)),caption:c.__("Save with new path"),isEnabled:h,execute:()=>{if(h()){const e=t.contextForWidget(p.currentWidget);if(!e)return(0,i.showDialog)({title:c.__("Cannot Save"),body:c.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]});const n=(n,o)=>{"save"===o.type&&o.newValue&&o.newValue.path!==e.path&&(t.closeFile(e.path),u.execute(b.open,{path:o.newValue.path}))};t.services.contents.fileChanged.connect(n),e.saveAs().finally((()=>t.services.contents.fileChanged.disconnect(n)))}}}),u.addCommand(b.toggleAutosave,{label:c.__("Autosave Documents"),isToggled:()=>t.autosave,execute:()=>{const e=!t.autosave,n="autosave";return o.set(y,n,e).catch((e=>{console.error(`Failed to set ${y}:${n} - ${e.message}`)}))}}),s&&[b.reload,b.restoreCheckpoint,b.save,b.saveAs,b.toggleAutosave,b.duplicate].forEach((e=>{s.addItem({command:e,category:v})}))}(e,t,n,o,a,s,r);const h=n=>{const o=n.get("autosave").composite;t.autosave=!0!==o&&!1!==o||o,e.commands.notifyCommandChanged(b.toggleAutosave);const a=n.get("confirmClosingDocument").composite;t.confirmClosingDocument=null==a||a;const r=n.get("autosaveInterval").composite;t.autosaveInterval=r||120;const i=n.get("lastModifiedCheckMargin").composite;t.lastModifiedCheckMargin=i||500;const l=n.get("renameUntitledFileOnSave").composite;t.renameUntitledFileOnSave=null==l||l;const d=n.get("defaultViewers").composite,s={};Object.keys(d).forEach((e=>{v.getFileType(e)?(v.getWidgetFactory(d[e])||console.warn(`Document viewer ${d[e]} not found`),s[e]=d[e]):console.warn(`File Type ${e} not found`)}));for(const e of v.fileTypes())try{v.setDefaultWidgetFactory(e.name,s[e.name])}catch(t){console.warn(`Failed to set default viewer ${s[e.name]} for file type ${e.name}`)}};Promise.all([o.load(y),e.restored]).then((([e])=>{e.changed.connect(h),h(e),t.stateChanged.connect(((t,n)=>{["autosave","autosaveInterval","confirmClosingDocument","lastModifiedCheckMargin","renameUntitledFileOnSave"].includes(n.name)&&e.get(n.name).composite!==n.newValue&&e.set(n.name,n.newValue).catch((e=>{console.error(`Failed to set the setting '${n.name}':\n${e}`)}))}))})).catch((e=>{console.error(e.message)})),o.transform(y,{fetch:e=>{const t=Array.from(v.fileTypes()).map((e=>e.name)).join(" \n"),n=Array.from(v.widgetFactories()).map((e=>e.name)).join(" \n"),o=c.__('Overrides for the default viewers for file types.\nSpecify a mapping from file type name to document viewer name, for example:\n\ndefaultViewers: {\n markdown: "Markdown Preview"\n}\n\nIf you specify non-existent file types or viewers, or if a viewer cannot\nopen a given file type, the override will not function.\n\nAvailable viewers:\n%1\n\nAvailable file types:\n%2',n,t),a=p.JSONExt.deepCopy(e.schema);return a.properties.defaultViewers.description=o,{...e,schema:a}}}),v.changed.connect((()=>o.load(y,!0)))}},I={id:"@jupyterlab/docmanager-extension:saving-status",description:"Adds a saving status indicator.",autoStart:!0,requires:[d.IDocumentManager,r.ILabShell],optional:[u.ITranslator,c.IStatusBar],activate:(e,t,n,o,a)=>{if(!a)return;const r=new d.SavingStatus({docManager:t,translator:null!=o?o:u.nullTranslator});r.model.widget=n.currentWidget,n.currentChanged.connect((()=>{r.model.widget=n.currentWidget})),a.registerStatusItem(I.id,{item:r,align:"middle",isActive:()=>null!==r.model&&null!==r.model.status,activeStateChanged:r.model.stateChanged})}},S={id:"@jupyterlab/docmanager-extension:path-status",description:"Adds a file path indicator in the status bar.",autoStart:!0,requires:[d.IDocumentManager,r.ILabShell],optional:[c.IStatusBar],activate:(e,t,n,o)=>{if(!o)return;const a=new d.PathStatus({docManager:t});a.model.widget=n.currentWidget,n.currentChanged.connect((()=>{a.model.widget=n.currentWidget})),o.registerStatusItem(S.id,{item:a,align:"right",rank:0})}},W={id:"@jupyterlab/docmanager-extension:download",description:"Adds command to download files.",autoStart:!0,requires:[d.IDocumentManager],optional:[u.ITranslator,i.ICommandPalette],activate:(e,t,n,o)=>{const a=(null!=n?n:u.nullTranslator).load("jupyterlab"),{commands:r,shell:l}=e,d=()=>{const{currentWidget:e}=l;return!(!e||!t.contextForWidget(e))};r.addCommand(b.download,{label:a.__("Download"),caption:a.__("Download the file to your computer"),isEnabled:d,execute:()=>{if(d()){const e=t.contextForWidget(l.currentWidget);return e?e.download():(0,i.showDialog)({title:a.__("Cannot Download"),body:a.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]})}}});const s=a.__("File Operations");o&&o.addItem({command:b.download,category:s})}},F={id:"@jupyterlab/docmanager-extension:open-browser-tab",description:"Adds command to open a browser tab.",autoStart:!0,requires:[d.IDocumentManager],optional:[u.ITranslator],activate:(e,t,n)=>{const o=(null!=n?n:u.nullTranslator).load("jupyterlab"),{commands:a}=e;a.addCommand(b.openBrowserTab,{execute:e=>{const n=void 0===e.path?"":e.path;if(n)return t.services.contents.getDownloadUrl(n).then((e=>{const t=window.open();if(!t)throw new Error("Failed to open new browser tab.");t.opener=null,t.location.href=e}))},iconClass:e=>e.icon||"",label:()=>o.__("Open in New Browser Tab")})}},T=[D,k,x,S,I,W,F,C,w];var E,R;!function(e){e.createSaveButton=function(e,t){return(0,i.addCommandToolbarButtonClass)(i.ReactWidget.create(f.createElement(i.UseSignal,{signal:t},(()=>f.createElement(i.CommandToolbarButtonComponent,{commands:e,id:b.save,label:"",args:{toolbar:!0}})))))}}(E||(E={}));class M extends h.Widget{constructor(e,t,n="notebook"){super({node:R.createRevertConfirmNode(e,n,t)})}}function A(e,t){if(!e)return"File";const n=t.contextForWidget(e);if(!n)return"";const o=t.registry.getFileTypesForPath(n.path);return o.length&&o[0].displayName?o[0].displayName:"File"}!function(e){e.id=0,e.createRevertConfirmNode=function(e,t,n){const o=document.createElement("div"),a=document.createElement("p"),r=document.createTextNode(n.__("Are you sure you want to revert the %1 to checkpoint? ",t)),i=document.createElement("strong");i.textContent=n.__("This cannot be undone."),a.appendChild(r),a.appendChild(i);const d=document.createElement("p"),s=document.createTextNode(n.__("The checkpoint was last updated at: ")),c=document.createElement("p"),u=new Date(e.last_modified);return c.style.textAlign="center",c.textContent=l.Time.format(u)+" ("+l.Time.formatHuman(u)+")",d.appendChild(s),d.appendChild(c),o.appendChild(a),o.appendChild(d),o},e.getTargetCheckpoint=async function(e,t){const n=e.map(((e,t)=>`${t}. ${l.Time.format(e.last_modified)} (${l.Time.formatHuman(e.last_modified)})`)),o=(await i.InputDialog.getItem({items:n,title:t.__("Choose a checkpoint")})).value;if(!o)return;const a=o.split(".",1)[0];return e[parseInt(a,10)]}}(R||(R={}))}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8471],{8471:(e,t,n)=>{n.r(t),n.d(t,{ToolbarItems:()=>E,default:()=>T,downloadPlugin:()=>W,openBrowserTabPlugin:()=>F,pathStatusPlugin:()=>S,savingStatusPlugin:()=>I});var o,a,r=n(25007),i=n(95297),l=n(9983),d=n(70109),s=n(2277),c=n(47568),u=n(60502),m=n(31589),g=n(33625),p=n(20998),h=n(81997),v=n(63485),f=n(78156),w=n(12287);!function(e){e.clearRecents="docmanager:clear-recents"}(o||(o={})),function(e){e.recentsManager="@jupyterlab/docmanager-extension:recents",e.reopenClosed="@jupyterlab/docmanager-extension:reopen-recently-closed",e.mainPlugin="@jupyterlab/docmanager-extension:plugin"}(a||(a={}));const _={id:a.recentsManager,description:"Provides a manager of recently opened and closed documents.",autoStart:!0,requires:[w.IStateDB],optional:[s.ISettingRegistry,u.ITranslator],provides:d.IRecentsManager,activate:(e,t,n,r)=>{const{serviceManager:i}=e,l=(null!=r?r:u.nullTranslator).load("jupyterlab"),s=new d.RecentsManager({stateDB:t,contents:i.contents}),c=e=>{s.maximalRecentsLength=e.get("maxNumberRecents").composite};return n&&Promise.all([e.restored,n.load(a.mainPlugin)]).then((([e,t])=>{t.changed.connect(c),c(t)})),e.commands.addCommand(o.clearRecents,{execute:()=>{s.clearRecents()},label:l.__("Clear Recent Documents"),caption:l.__("Clear the list of recently opened items.")}),s}};var b;!function(e){e.clone="docmanager:clone",e.deleteFile="docmanager:delete-file",e.newUntitled="docmanager:new-untitled",e.open="docmanager:open",e.openBrowserTab="docmanager:open-browser-tab",e.reload="docmanager:reload",e.rename="docmanager:rename",e.del="docmanager:delete",e.duplicate="docmanager:duplicate",e.restoreCheckpoint="docmanager:restore-checkpoint",e.save="docmanager:save",e.saveAll="docmanager:save-all",e.saveAs="docmanager:save-as",e.download="docmanager:download",e.toggleAutosave="docmanager:toggle-autosave",e.showInFileBrowser="docmanager:show-in-file-browser"}(b||(b={}));const y="@jupyterlab/docmanager-extension:plugin",C={id:"@jupyterlab/docmanager-extension:opener",description:"Provides the widget opener.",autoStart:!0,provides:d.IDocumentWidgetOpener,activate:e=>{const{shell:t}=e;return new class{constructor(){this._opened=new h.Signal(this)}open(e,n){e.id||(e.id="document-manager-"+ ++R.id),e.title.dataset={type:"document-title",...e.title.dataset},e.isAttached||t.add(e,"main",n||{}),t.activateById(e.id),this._opened.emit(e)}get opened(){return this._opened}}}},x={id:"@jupyterlab/docmanager-extension:contexts",description:"Adds the handling of opened documents dirty state.",autoStart:!0,requires:[d.IDocumentManager,d.IDocumentWidgetOpener],optional:[r.ILabStatus],activate:(e,t,n,o)=>{const a=new WeakSet;n.opened.connect(((e,n)=>{const r=t.contextForWidget(n);r&&!a.has(r)&&(o&&function(e,t){let n=null;const o=(t,o)=>{"dirty"===o.name&&(!0===o.newValue?n||(n=e.setDirty()):n&&(n.dispose(),n=null))};t.ready.then((()=>{t.model.stateChanged.connect(o),t.model.dirty&&(n=e.setDirty())})),t.disposed.connect((()=>{n&&n.dispose()}))}(o,r),a.add(r))}))}},D={id:"@jupyterlab/docmanager-extension:manager",description:"Provides the document manager.",provides:d.IDocumentManager,requires:[d.IDocumentWidgetOpener],optional:[u.ITranslator,r.ILabStatus,i.ISessionContextDialogs,r.JupyterLab.IInfo,d.IRecentsManager],activate:(e,t,n,o,a,r,l)=>{var s;const{serviceManager:c,docRegistry:m}=e,g=null!=n?n:u.nullTranslator,p=null!=a?a:new i.SessionContextDialogs({translator:g}),h=e.restored.then((()=>{}));return new d.DocumentManager({registry:m,manager:c,opener:t,when:h,setBusy:null!==(s=o&&(()=>o.setBusy()))&&void 0!==s?s:void 0,sessionDialogs:p,translator:null!=g?g:u.nullTranslator,isConnectedCallback:()=>!r||r.isConnected,recentsManager:null!=l?l:void 0})}},k={id:y,description:"Adds commands and settings to the document manager.",autoStart:!0,requires:[d.IDocumentManager,d.IDocumentWidgetOpener,s.ISettingRegistry],optional:[u.ITranslator,i.ICommandPalette,r.ILabShell],activate:(e,t,n,o,a,r,s)=>{const c=(a=null!=a?a:u.nullTranslator).load("jupyterlab"),h=e.docRegistry;!function(e,t,n,o,a,r,s){var c;const u=a.load("jupyterlab"),{commands:p,shell:h}=e,v=u.__("File Operations"),f=()=>{const{currentWidget:e}=h;return!(!e||!t.contextForWidget(e))},w=()=>{var e;const{currentWidget:n}=h;if(!n)return!1;const o=t.contextForWidget(n);return!!(null===(e=null==o?void 0:o.contentsModel)||void 0===e?void 0:e.writable)},_=e=>i.Notification.warning(u.__('%1 is permissioned as read-only. Use "save as..." instead.',e),{autoClose:5e3});r&&function(e,t,n,o,a){const r=a.load("jupyterlab"),{commands:l}=e,s=()=>{var o;const a=/[Pp]ath:\s?(.*)\n?/,r=e.contextMenuHitTest((e=>{var t;return!!(null===(t=e.title)||void 0===t?void 0:t.match(a))})),i=null==r?void 0:r.title.match(a);return null!==(o=i&&t.findWidget(i[1],null))&&void 0!==o?o:n.currentWidget},c=()=>{const{currentWidget:e}=n;return!(!e||!t.contextForWidget(e))};l.addCommand(b.clone,{label:()=>r.__("New View for %1",M(s(),t)),isEnabled:c,execute:e=>{const n=s(),a=e.options||{mode:"split-right"};if(!n)return;const r=t.cloneWidget(n);r&&o.open(r,a)}}),l.addCommand(b.rename,{label:()=>{let e=M(s(),t);return e&&(e=" "+e),r.__("Rename%1…",e)},isEnabled:c,execute:()=>{if(c()){const e=t.contextForWidget(s());return(0,d.renameDialog)(t,e)}}}),l.addCommand(b.duplicate,{label:()=>r.__("Duplicate %1",M(s(),t)),isEnabled:c,execute:()=>{if(c()){const e=t.contextForWidget(s());if(!e)return;return t.duplicate(e.path)}}}),l.addCommand(b.del,{label:()=>r.__("Delete %1",M(s(),t)),isEnabled:c,execute:async()=>{if(c()){const n=t.contextForWidget(s());if(!n)return;(await(0,i.showDialog)({title:r.__("Delete"),body:r.__("Are you sure you want to delete %1",n.path),buttons:[i.Dialog.cancelButton(),i.Dialog.warnButton({label:r.__("Delete")})]})).button.accept&&await e.commands.execute("docmanager:delete-file",{path:n.path})}}}),l.addCommand(b.showInFileBrowser,{label:()=>r.__("Show in File Browser"),isEnabled:c,execute:async()=>{const e=s(),n=e&&t.contextForWidget(e);n&&(await l.execute("filebrowser:activate",{path:n.path}),await l.execute("filebrowser:go-to-path",{path:n.path}))}}),n.currentChanged.connect((()=>{[b.clone,b.rename,b.duplicate,b.del,b.showInFileBrowser].forEach((t=>{e.commands.notifyCommandChanged(t)}))}))}(e,t,r,n,a),p.addCommand(b.deleteFile,{label:()=>`Delete ${M(h.currentWidget,t)}`,execute:e=>{const n=void 0===e.path?"":e.path;if(!n){const e=b.deleteFile;throw new Error(`A non-empty path is required for ${e}.`)}return t.deleteFile(n)}}),p.addCommand(b.newUntitled,{execute:e=>{const n=e.error||u.__("Error"),o=void 0===e.path?"":e.path,a={type:e.type,path:o};return"file"===e.type&&(a.ext=e.ext||".txt"),t.services.contents.newUntitled(a).catch((e=>(0,i.showErrorMessage)(n,e)))},label:e=>e.label||`New ${e.type}`}),p.addCommand(b.open,{execute:e=>{const n=void 0===e.path?"":e.path,o=e.factory||void 0,a=null==e?void 0:e.kernel,r=e.options||void 0;return t.services.contents.get(n,{content:!1}).then((()=>t.openOrReveal(n,o,a,r)))},iconClass:e=>e.icon||"",label:e=>{var t;return null!==(t=e.label||e.factory)&&void 0!==t?t:u.__("Open the provided `path`.")},mnemonic:e=>e.mnemonic||-1}),p.addCommand(b.reload,{label:()=>u.__("Reload %1 from Disk",M(h.currentWidget,t)),caption:u.__("Reload contents from disk"),isEnabled:f,execute:()=>{if(!f())return;const e=t.contextForWidget(h.currentWidget),n=M(h.currentWidget,t);return e?e.model.dirty?(0,i.showDialog)({title:u.__("Reload %1 from Disk",n),body:u.__("Are you sure you want to reload the %1 from the disk?",n),buttons:[i.Dialog.cancelButton(),i.Dialog.warnButton({label:u.__("Reload")})]}).then((t=>{if(t.button.accept&&!e.isDisposed)return e.revert()})):e.isDisposed?void 0:e.revert():(0,i.showDialog)({title:u.__("Cannot Reload"),body:u.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]})}}),p.addCommand(b.restoreCheckpoint,{label:()=>u.__("Revert %1 to Checkpoint…",M(h.currentWidget,t)),caption:u.__("Revert contents to previous checkpoint"),isEnabled:f,execute:()=>{if(!f())return;const e=t.contextForWidget(h.currentWidget);return e?e.listCheckpoints().then((async n=>{const o=M(h.currentWidget,t);if(n.length<1)return void await(0,i.showErrorMessage)(u.__("No checkpoints"),u.__("No checkpoints are available for this %1.",o));const a=1===n.length?n[0]:await R.getTargetCheckpoint(n.reverse(),u);return a?(0,i.showDialog)({title:u.__("Revert %1 to checkpoint",o),body:new A(a,u,o),buttons:[i.Dialog.cancelButton(),i.Dialog.warnButton({label:u.__("Revert"),ariaLabel:u.__("Revert to Checkpoint")})]}).then((t=>{if(!e.isDisposed)return t.button.accept?e.model.readOnly?e.revert():e.restoreCheckpoint(a.id).then((()=>e.revert())):void 0})):void 0})):(0,i.showDialog)({title:u.__("Cannot Revert"),body:u.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]})}});const C=new WeakSet;p.addCommand(b.save,{label:()=>u.__("Save %1",M(h.currentWidget,t)),caption:()=>{if(h.currentWidget){const e=t.contextForWidget(h.currentWidget);if(null==e?void 0:e.model.collaborative)return u.__("In collaborative mode, the document is saved automatically after every change");if(!w())return u.__('document is permissioned readonly; "save" is disabled, use "save as..." instead')}return u.__("Save and create checkpoint")},icon:e=>e.toolbar?m.saveIcon:void 0,isEnabled:e=>e._luminoEvent&&"keybinding"===e._luminoEvent.type||w(),execute:async e=>{var n,a,r,d,s;const c=h.currentWidget,m=t.contextForWidget(c);if(f()){if(!m)return(0,i.showDialog)({title:u.__("Cannot Save"),body:u.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]});{if(C.has(m))return;if(!(null===(n=m.contentsModel)||void 0===n?void 0:n.writable)&&!m.model.collaborative){let t=null===(a=e._luminoEvent)||void 0===a?void 0:a.type;return e._luminoEvent&&"keybinding"===t?void _(m.path):(0,i.showDialog)({title:u.__("Cannot Save"),body:u.__("Document is read-only"),buttons:[i.Dialog.okButton()]})}C.add(m);const g=l.PathExt.basename(null!==(d=null===(r=m.contentsModel)||void 0===r?void 0:r.path)&&void 0!==d?d:"");let p=g;if(t.renameUntitledFileOnSave&&!0===c.isUntitled){const e=await i.InputDialog.getText({title:u.__("Rename file"),okLabel:u.__("Rename"),placeholder:u.__("File name"),text:g,selectionRange:g.length-l.PathExt.extname(g).length,checkbox:{label:u.__("Do not ask me again."),caption:u.__("If checked, you will not be asked to rename future untitled files when saving them.")}});if(e.button.accept&&(p=null!==(s=e.value)&&void 0!==s?s:g,c.isUntitled=!1,"boolean"==typeof e.isChecked)){const t=(await o.get(y,"renameUntitledFileOnSave")).composite;e.isChecked===t&&o.set(y,"renameUntitledFileOnSave",!e.isChecked).catch((e=>{console.error(`Fail to set 'renameUntitledFileOnSave:\n${e}`)}))}}try{if(await m.save(),!(null==c?void 0:c.isDisposed))return m.createCheckpoint()}catch(e){if("ModalCancelError"===e.name)return;throw e}finally{C.delete(m),p!==g&&await m.rename(p)}}}}}),p.addCommand(b.saveAll,{label:()=>u.__("Save All"),caption:u.__("Save all open documents"),isEnabled:()=>(0,g.some)(h.widgets("main"),(e=>{var n,o,a;return null!==(a=null===(o=null===(n=t.contextForWidget(e))||void 0===n?void 0:n.contentsModel)||void 0===o?void 0:o.writable)&&void 0!==a&&a})),execute:()=>{var e;const n=[],o=new Set;for(const a of h.widgets("main")){const r=t.contextForWidget(a);r&&!o.has(r.path)&&((null===(e=r.contentsModel)||void 0===e?void 0:e.writable)?(o.add(r.path),n.push(r.save())):_(r.path))}return Promise.all(n)}}),p.addCommand(b.saveAs,{label:()=>u.__("Save %1 As…",M(h.currentWidget,t)),caption:u.__("Save with new path"),isEnabled:f,execute:()=>{if(f()){const e=t.contextForWidget(h.currentWidget);if(!e)return(0,i.showDialog)({title:u.__("Cannot Save"),body:u.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]});const n=(n,o)=>{"save"===o.type&&o.newValue&&o.newValue.path!==e.path&&(t.closeFile(e.path),p.execute(b.open,{path:o.newValue.path}))};t.services.contents.fileChanged.connect(n),e.saveAs().finally((()=>t.services.contents.fileChanged.disconnect(n)))}}}),null===(c=e.shell.currentChanged)||void 0===c||c.connect((()=>{[b.reload,b.restoreCheckpoint,b.save,b.saveAll,b.saveAs].forEach((t=>{e.commands.notifyCommandChanged(t)}))})),p.addCommand(b.toggleAutosave,{label:u.__("Autosave Documents"),isToggled:()=>t.autosave,execute:()=>{const e=!t.autosave,n="autosave";return o.set(y,n,e).catch((e=>{console.error(`Failed to set ${y}:${n} - ${e.message}`)}))}}),s&&[b.reload,b.restoreCheckpoint,b.save,b.saveAs,b.toggleAutosave,b.duplicate].forEach((e=>{s.addItem({command:e,category:v})}))}(e,t,n,o,a,s,r);const v=n=>{const o=n.get("autosave").composite;t.autosave=!0!==o&&!1!==o||o,e.commands.notifyCommandChanged(b.toggleAutosave);const a=n.get("confirmClosingDocument").composite;t.confirmClosingDocument=null==a||a;const r=n.get("autosaveInterval").composite;t.autosaveInterval=r||120;const i=n.get("lastModifiedCheckMargin").composite;t.lastModifiedCheckMargin=i||500;const l=n.get("renameUntitledFileOnSave").composite;t.renameUntitledFileOnSave=null==l||l;const d=n.get("defaultViewers").composite,s={};Object.keys(d).forEach((e=>{h.getFileType(e)?(h.getWidgetFactory(d[e])||console.warn(`Document viewer ${d[e]} not found`),s[e]=d[e]):console.warn(`File Type ${e} not found`)}));for(const e of h.fileTypes())try{h.setDefaultWidgetFactory(e.name,s[e.name])}catch(t){console.warn(`Failed to set default viewer ${s[e.name]} for file type ${e.name}`)}};Promise.all([o.load(y),e.restored]).then((([e])=>{e.changed.connect(v),v(e),t.stateChanged.connect(((t,n)=>{["autosave","autosaveInterval","confirmClosingDocument","lastModifiedCheckMargin","renameUntitledFileOnSave"].includes(n.name)&&e.get(n.name).composite!==n.newValue&&e.set(n.name,n.newValue).catch((e=>{console.error(`Failed to set the setting '${n.name}':\n${e}`)}))}))})).catch((e=>{console.error(e.message)})),o.transform(y,{fetch:e=>{const t=Array.from(h.fileTypes()).map((e=>e.name)).join(" \n"),n=Array.from(h.widgetFactories()).map((e=>e.name)).join(" \n"),o=c.__('Overrides for the default viewers for file types.\nSpecify a mapping from file type name to document viewer name, for example:\n\ndefaultViewers: {\n markdown: "Markdown Preview"\n}\n\nIf you specify non-existent file types or viewers, or if a viewer cannot\nopen a given file type, the override will not function.\n\nAvailable viewers:\n%1\n\nAvailable file types:\n%2',n,t),a=p.JSONExt.deepCopy(e.schema);return a.properties.defaultViewers.description=o,{...e,schema:a}}}),h.changed.connect((()=>o.load(y,!0)))}},I={id:"@jupyterlab/docmanager-extension:saving-status",description:"Adds a saving status indicator.",autoStart:!0,requires:[d.IDocumentManager,r.ILabShell],optional:[u.ITranslator,c.IStatusBar],activate:(e,t,n,o,a)=>{if(!a)return;const r=new d.SavingStatus({docManager:t,translator:null!=o?o:u.nullTranslator});r.model.widget=n.currentWidget,n.currentChanged.connect((()=>{r.model.widget=n.currentWidget})),a.registerStatusItem(I.id,{item:r,align:"middle",isActive:()=>null!==r.model&&null!==r.model.status,activeStateChanged:r.model.stateChanged})}},S={id:"@jupyterlab/docmanager-extension:path-status",description:"Adds a file path indicator in the status bar.",autoStart:!0,requires:[d.IDocumentManager,r.ILabShell],optional:[c.IStatusBar],activate:(e,t,n,o)=>{if(!o)return;const a=new d.PathStatus({docManager:t});a.model.widget=n.currentWidget,n.currentChanged.connect((()=>{a.model.widget=n.currentWidget})),o.registerStatusItem(S.id,{item:a,align:"right",rank:0})}},W={id:"@jupyterlab/docmanager-extension:download",description:"Adds command to download files.",autoStart:!0,requires:[d.IDocumentManager],optional:[u.ITranslator,i.ICommandPalette],activate:(e,t,n,o)=>{var a;const r=(null!=n?n:u.nullTranslator).load("jupyterlab"),{commands:l,shell:d}=e,s=()=>{const{currentWidget:e}=d;return!(!e||!t.contextForWidget(e))};l.addCommand(b.download,{label:r.__("Download"),caption:r.__("Download the file to your computer"),isEnabled:s,execute:()=>{if(s()){const e=t.contextForWidget(d.currentWidget);return e?e.download():(0,i.showDialog)({title:r.__("Cannot Download"),body:r.__("No context found for current widget!"),buttons:[i.Dialog.okButton()]})}}}),null===(a=e.shell.currentChanged)||void 0===a||a.connect((()=>{e.commands.notifyCommandChanged(b.download)}));const c=r.__("File Operations");o&&o.addItem({command:b.download,category:c})}},F={id:"@jupyterlab/docmanager-extension:open-browser-tab",description:"Adds command to open a browser tab.",autoStart:!0,requires:[d.IDocumentManager],optional:[u.ITranslator],activate:(e,t,n)=>{const o=(null!=n?n:u.nullTranslator).load("jupyterlab"),{commands:a}=e;a.addCommand(b.openBrowserTab,{execute:e=>{const n=void 0===e.path?"":e.path;if(n)return t.services.contents.getDownloadUrl(n).then((e=>{const t=window.open();if(!t)throw new Error("Failed to open new browser tab.");t.opener=null,t.location.href=e}))},iconClass:e=>e.icon||"",label:()=>o.__("Open in New Browser Tab")})}},T=[D,k,x,S,I,W,F,C,_];var E,R;!function(e){e.createSaveButton=function(e,t){return(0,i.addCommandToolbarButtonClass)(i.ReactWidget.create(f.createElement(i.UseSignal,{signal:t},(()=>f.createElement(i.CommandToolbarButtonComponent,{commands:e,id:b.save,label:"",args:{toolbar:!0}})))))}}(E||(E={}));class A extends v.Widget{constructor(e,t,n="notebook"){super({node:R.createRevertConfirmNode(e,n,t)})}}function M(e,t){if(!e)return"File";const n=t.contextForWidget(e);if(!n)return"";const o=t.registry.getFileTypesForPath(n.path);return o.length&&o[0].displayName?o[0].displayName:"File"}!function(e){e.id=0,e.createRevertConfirmNode=function(e,t,n){const o=document.createElement("div"),a=document.createElement("p"),r=document.createTextNode(n.__("Are you sure you want to revert the %1 to checkpoint? ",t)),i=document.createElement("strong");i.textContent=n.__("This cannot be undone."),a.appendChild(r),a.appendChild(i);const d=document.createElement("p"),s=document.createTextNode(n.__("The checkpoint was last updated at: ")),c=document.createElement("p"),u=new Date(e.last_modified);return c.style.textAlign="center",c.textContent=l.Time.format(u)+" ("+l.Time.formatHuman(u)+")",d.appendChild(s),d.appendChild(c),o.appendChild(a),o.appendChild(d),o},e.getTargetCheckpoint=async function(e,t){const n=e.map(((e,t)=>`${t}. ${l.Time.format(e.last_modified)} (${l.Time.formatHuman(e.last_modified)})`)),o=(await i.InputDialog.getItem({items:n,title:t.__("Choose a checkpoint")})).value;if(!o)return;const a=o.split(".",1)[0];return e[parseInt(a,10)]}}(R||(R={}))}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8579],{88579:(e,t,o)=>{o.r(t),o.d(t,{default:()=>q});var n=o(11510),a=o(23051),i=o(23716),r=o(92972),d=o(10747),l=o(21733),s=o(93954),c=o(1678),p=o(13532),u=o(31721),g=o(25206),m=o(45197),h=o(20998),b=o(2549),f=o(63485);const v=new RegExp("/(notebooks|edit)/(.*)"),y=/\.ipynb$/;var k;!function(e){e.handleLink="application:handle-local-link",e.toggleTop="application:toggle-top",e.togglePanel="application:toggle-panel",e.toggleZen="application:toggle-zen",e.openLab="application:open-lab",e.openTree="application:open-tree",e.rename="application:rename",e.resolveTree="application:resolve-tree"}(k||(k={}));const w={id:"@jupyter-notebook/application-extension:dirty",description:"Check if the application is dirty before closing the browser tab.",autoStart:!0,requires:[n.ILabStatus,u.ITranslator],activate:(e,t,o)=>{if(!(e instanceof g.NotebookApp))throw new Error(`${w.id} must be activated in Jupyter Notebook.`);const n=o.load("notebook").__("Are you sure you want to exit Jupyter Notebook?\n\nAny unsaved changes will be lost.");window.addEventListener("beforeunload",(t=>{if(e.status.isDirty)return t.returnValue=n}))}},x={id:"@jupyter-notebook/application-extension:logo",description:"The logo plugin.",autoStart:!0,activate:e=>{const t=r.PageConfig.getBaseUrl(),o=document.createElement("a");o.href=`${t}tree`,o.target="_blank",o.rel="noopener noreferrer";const n=new f.Widget({node:o});m.jupyterIcon.element({container:o,elementPosition:"center",padding:"2px 2px 2px 8px",height:"28px",width:"auto",cursor:"pointer",margin:"auto"}),n.id="jp-NotebookLogo",e.shell.add(n,"top",{rank:0})}},I={id:"@jupyter-notebook/application-extension:opener",description:"A plugin to open documents in the main area.",autoStart:!0,requires:[n.IRouter,d.IDocumentManager],optional:[p.ISettingRegistry],activate:(e,t,o,n)=>{const{commands:a,docRegistry:i}=e,r="router:tree";a.addCommand(r,{execute:t=>{var a;const r=t,d=null!==(a=r.path.match(v))&&void 0!==a?a:[],[,,l]=d;l&&e.started.then((async()=>{var e;const t=decodeURIComponent(l),a=new URLSearchParams(r.search);let d=i.defaultWidgetFactory(l).name;if(n){const e=(await n.load("@jupyterlab/docmanager-extension:plugin")).get("defaultViewers").composite;i.getFileTypesForPath(l).forEach((t=>{void 0!==e[t.name]&&i.getWidgetFactory(e[t.name])&&(d=e[t.name])}))}const s=null!==(e=a.get("factory"))&&void 0!==e?e:d;o.open(t,s,void 0,{ref:"_noref"})}))}}),t.register({command:r,pattern:v})}},P={id:"@jupyter-notebook/application-extension:menus",description:"A plugin to customize menus.",requires:[s.IMainMenu],autoStart:!0,activate:(e,t)=>{switch(t.tabsMenu.dispose(),r.PageConfig.getOption("notebookPage")){case"consoles":case"terminals":case"tree":t.editMenu.dispose(),t.kernelMenu.dispose(),t.runMenu.dispose();break;case"edit":t.kernelMenu.dispose(),t.runMenu.dispose()}}},C={id:"@jupyter-notebook/application-extension:menu-spacer",description:"A plugin to provide a spacer at rank 900 in the menu area.",autoStart:!0,activate:e=>{const t=new f.Widget;t.id=a.DOMUtils.createDomID(),t.addClass("jp-NotebookSpacer"),e.shell.add(t,"menu",{rank:900})}},S={id:"@jupyter-notebook/application-extension:pages",description:"Add commands to open the tree and running pages.",autoStart:!0,requires:[u.ITranslator],optional:[a.ICommandPalette],activate:(e,t,o)=>{const n=t.load("notebook"),a=r.PageConfig.getBaseUrl();e.commands.addCommand(k.openLab,{label:n.__("Open JupyterLab"),execute:()=>{window.open(r.URLExt.join(a,"lab"))}});const i=r.PageConfig.getOption("notebookPage");e.commands.addCommand(k.openTree,{label:n.__("File Browser"),execute:()=>{"tree"===i?e.commands.execute("filebrowser:activate"):window.open(r.URLExt.join(a,"tree"))}}),o&&(o.addItem({command:k.openLab,category:"View"}),o.addItem({command:k.openTree,category:"View"}))}},T={id:"@jupyter-notebook/application-extension:path-opener",description:"A plugin to open paths in new browser tabs.",autoStart:!0,provides:g.INotebookPathOpener,activate:e=>g.defaultNotebookPathOpener},R={id:"@jupyter-notebook/application-extension:paths",description:"The default paths for a Jupyter Notebook app.",autoStart:!0,provides:n.JupyterFrontEnd.IPaths,activate:e=>{if(!(e instanceof g.NotebookApp))throw new Error(`${R.id} must be activated in Jupyter Notebook.`);return e.paths}},E={id:"@jupyter-notebook/application-extension:rendermime",description:"A plugin providing a rendermime registry.",autoStart:!0,provides:c.IRenderMimeRegistry,optional:[d.IDocumentManager,c.ILatexTypesetter,a.ISanitizer,c.IMarkdownParser,u.ITranslator,g.INotebookPathOpener],activate:(e,t,o,n,a,i,d)=>{const l=(null!=i?i:u.nullTranslator).load("jupyterlab"),s=null!=d?d:g.defaultNotebookPathOpener;return t&&e.commands.addCommand(k.handleLink,{label:l.__("Handle Local Link"),execute:e=>{const o=e.path;if(null!=o)return t.services.contents.get(o,{content:!1}).then((e=>{const t=r.PageConfig.getBaseUrl();s.open({prefix:r.URLExt.join(t,"tree"),path:e.path,target:"_blank"})}))}}),new c.RenderMimeRegistry({initialFactories:c.standardRendererFactories,linkHandler:t?{handleLink:(t,o,n)=>{"A"===t.tagName&&t.hasAttribute("download")||e.commandLinker.connectNode(t,k.handleLink,{path:o,id:n})}}:void 0,latexTypesetter:null!=o?o:void 0,markdownParser:null!=a?a:void 0,translator:null!=i?i:void 0,sanitizer:null!=n?n:void 0})}},_={id:"@jupyter-notebook/application-extension:shell",description:"The default Jupyter Notebook application shell.",autoStart:!0,provides:g.INotebookShell,optional:[p.ISettingRegistry],activate:(e,t)=>{if(!(e.shell instanceof g.NotebookShell))throw new Error(`${_.id} did not find a NotebookShell instance.`);const o=e.shell;return t&&t.load(_.id).then((e=>{const t=e.composite.layout;o.restoreLayout(t)})).catch((e=>{console.error("Fail to load settings for the layout restorer."),console.error(e)})),o}},L={id:"@jupyter-notebook/application-extension:splash",description:"Provides an empty splash screen.",autoStart:!0,provides:a.ISplashScreen,activate:e=>{const{restored:t}=e,o=document.createElement("div");return o.style.position="absolute",o.style.width="100%",o.style.height="100%",o.style.zIndex="10",{show:(e=!0)=>(o.style.backgroundColor=e?"white":"#111111",document.body.appendChild(o),new b.DisposableDelegate((async()=>{await t,document.body.removeChild(o)})))}}},j={id:"@jupyter-notebook/application-extension:status",description:"The default JupyterLab application status provider.",autoStart:!0,provides:n.ILabStatus,activate:e=>{if(!(e instanceof g.NotebookApp))throw new Error(`${j.id} must be activated in Jupyter Notebook.`);return e.status}},N={id:"@jupyter-notebook/application-extension:tab-title",description:"A plugin to display the document title in the browser tab title.",autoStart:!0,requires:[g.INotebookShell],activate:(e,t)=>{const o=()=>{const e=t.currentWidget;if(e instanceof i.ConsolePanel){const t=()=>{const t=e.sessionContext.path||e.sessionContext.name,o=r.PathExt.basename(t);document.title=o.replace(y,"")};return e.sessionContext.sessionChanged.connect(t),void t()}if(e instanceof l.DocumentWidget){const t=()=>{const t=r.PathExt.basename(e.context.path);document.title=t.replace(y,"")};e.context.pathChanged.connect(t),t()}};t.currentChanged.connect(o),o()}},H={id:"@jupyter-notebook/application-extension:title",description:"A plugin to display and rename the title of a file.",autoStart:!0,requires:[g.INotebookShell,u.ITranslator],optional:[d.IDocumentManager,n.IRouter,a.IToolbarWidgetRegistry],activate:(e,t,o,n,a,i)=>{const{commands:s}=e,c=o.load("notebook"),p=document.createElement("div");i&&i.addFactory("TopBar","widgetTitle",(e=>{const t=new f.Widget({node:p});return t.id="jp-title",t}));const u=async()=>{const e=t.currentWidget;if(!(e&&e instanceof l.DocumentWidget))return;if(p.children.length>0)return;const o=document.createElement("h1");if(o.textContent=e.title.label.replace(y,""),p.appendChild(o),p.style.marginLeft="10px",!n)return;const i=()=>{const{currentWidget:e}=t;return!(!e||!n.contextForWidget(e))};s.addCommand(k.rename,{label:()=>c.__("Rename…"),isEnabled:i,execute:async()=>{var t;if(!i())return;const l=await(0,d.renameDialog)(n,e.context);if(e&&e.activate(),null===l)return;const s=e.context.path,c=r.PathExt.basename(s);if(o.textContent=c.replace(y,""),!a)return;const p=null!==(t=a.current.path.match(v))&&void 0!==t?t:[],[,u,g]=p;if(!u||!g)return;const m=encodeURIComponent(s);a.navigate(`/${u}/${m}`,{skipRouting:!0})}}),p.onclick=async()=>{s.execute(k.rename)}};t.currentChanged.connect(u),u()}},A={id:"@jupyter-notebook/application-extension:top",description:"Plugin to toggle the top header visibility.",requires:[g.INotebookShell,u.ITranslator],optional:[p.ISettingRegistry,a.ICommandPalette],activate:(e,t,o,n,a)=>{const i=o.load("notebook"),r=t.top,d=A.id;e.commands.addCommand(k.toggleTop,{label:i.__("Show Header"),execute:()=>{r.setHidden(r.isVisible),n&&n.set(d,"visible",r.isVisible?"yes":"no")},isToggled:()=>r.isVisible});let l=!1;if(n){const t=n.load(d),o=e=>{let t=e.get("visible").composite;void 0!==e.user.visible&&(t=e.user.visible),r.setHidden("no"===t),l="automatic"===t};Promise.all([t,e.restored]).then((([e])=>{o(e),e.changed.connect((e=>{o(e)}))})).catch((e=>{console.error(e.message)}))}a&&a.addItem({command:k.toggleTop,category:"View"}),e.formatChanged.connect((()=>{l&&("desktop"===e.format?t.expandTop():t.collapseTop())}))},autoStart:!0},M={id:"@jupyter-notebook/application-extension:sidepanel",description:"Plugin to toggle the visibility of left or right side panel.",requires:[g.INotebookShell,u.ITranslator],optional:[s.IMainMenu,a.ICommandPalette],autoStart:!0,activate:(e,t,o,n,a)=>{const i=o.load("notebook");e.commands.addCommand(k.togglePanel,{label:e=>e.title,caption:e=>"left"===e.side?i.__("Show %1 in the left sidebar",e.title):"right"===e.side?i.__("Show %1 in the right sidebar",e.title):i.__("Show %1 in the sidebar",e.title),execute:e=>{var o,n;switch(e.side){case"left":t.leftCollapsed||(null===(o=t.leftHandler.currentWidget)||void 0===o?void 0:o.id)!==e.id?t.expandLeft(e.id):(t.collapseLeft(),t.currentWidget&&t.activateById(t.currentWidget.id));break;case"right":t.rightCollapsed||(null===(n=t.rightHandler.currentWidget)||void 0===n?void 0:n.id)!==e.id?t.expandRight(e.id):(t.collapseRight(),t.currentWidget&&t.activateById(t.currentWidget.id))}},isToggled:e=>{switch(e.side){case"left":{if(t.leftCollapsed)return!1;const o=t.leftHandler.currentWidget;return!!o&&o.id===e.id}case"right":{if(t.rightCollapsed)return!1;const o=t.rightHandler.currentWidget;return!!o&&o.id===e.id}}return!1}});const r={left:null,right:null},d=(o,a)=>{var i;if(null===n)return null;null===(i=r[o])||void 0===i||i.dispose();const d=new f.Menu({commands:e.commands});d.title.label=a;const l=t.widgets(o);let s=!1;for(const e of l)d.addItem({command:k.togglePanel,args:{side:o,title:`Show ${e.title.caption}`,id:e.id}}),s=!0;s&&(r[o]=n.viewMenu.addItem({type:"submenu",submenu:d}))};e.restored.then((()=>{if(n){const e=e=>"left"===e?i.__("Left Sidebar"):i.__("Right Sidebar"),o=t.leftHandler.area,n=e(o);d(o,n);const a=t.rightHandler.area,r=e(a);d(a,r);const l=(t,o)=>{const n=e(t.area);d(t.area,n)};t.leftHandler.widgetAdded.connect(l),t.leftHandler.widgetRemoved.connect(l),t.rightHandler.widgetAdded.connect(l),t.rightHandler.widgetRemoved.connect(l)}if(a){const e=new g.SidePanelPalette({commandPalette:a,command:k.togglePanel});t.leftHandler.widgets.forEach((o=>{e.addItem(o,t.leftHandler.area)})),t.rightHandler.widgets.forEach((o=>{e.addItem(o,t.rightHandler.area)})),t.leftHandler.widgetAdded.connect(((t,o)=>{e.addItem(o,t.area)})),t.leftHandler.widgetRemoved.connect(((t,o)=>{e.removeItem(o,t.area)})),t.rightHandler.widgetAdded.connect(((t,o)=>{e.addItem(o,t.area)})),t.rightHandler.widgetRemoved.connect(((t,o)=>{e.removeItem(o,t.area)}))}}))}},U={id:"@jupyter-notebook/application-extension:tree-resolver",description:"The default tree route resolver plugin.",autoStart:!0,requires:[n.IRouter],provides:n.JupyterFrontEnd.ITreeResolver,activate:(e,t)=>{const{commands:o}=e,n=new b.DisposableSet,a=new h.PromiseDelegate,i=new RegExp("/(/tree/.*)?");n.add(o.addCommand(k.resolveTree,{execute:async e=>{var t;if(n.isDisposed)return;const o=r.URLExt.queryStringToObject(null!==(t=e.search)&&void 0!==t?t:""),i=o["file-browser-path"]||"";delete o["file-browser-path"],n.dispose(),a.resolve({browser:i,file:r.PageConfig.getOption("treePath")})}})),n.add(t.register({command:k.resolveTree,pattern:i}));const d=()=>{n.isDisposed||(n.dispose(),a.resolve(null))};return t.routed.connect(d),n.add(new b.DisposableDelegate((()=>{t.routed.disconnect(d)}))),{paths:a.promise}}},W={id:"@jupyter-notebook/application-extension:tree-updater",description:"Plugin to update tree path.",requires:[n.IRouter],provides:n.ITreePathUpdater,activate:(e,t)=>function(e){if(e!==r.PageConfig.getOption("treePath")){const o=r.URLExt.join(r.PageConfig.getOption("baseUrl")||"/","tree",r.URLExt.encodeParts(e));t.navigate(o,{skipRouting:!0}),r.PageConfig.setOption("treePath",e)}},autoStart:!0},D={id:"@jupyter-notebook/application-extension:translator",description:"Translator plugin",requires:[g.INotebookShell,u.ITranslator],autoStart:!0,activate:(e,t,o)=>{t.translator=o}},O={id:"@jupyter-notebook/application-extension:zen",description:"Zen mode plugin.",autoStart:!0,requires:[u.ITranslator],optional:[a.ICommandPalette,g.INotebookShell],activate:(e,t,o,n)=>{const{commands:a}=e,i=document.documentElement,r=t.load("notebook"),d=()=>{null==n||n.expandTop(),null==n||n.menu.setHidden(!1),l=!1};let l=!1;a.addCommand(k.toggleZen,{label:r.__("Toggle Zen Mode"),execute:()=>{l?(document.exitFullscreen(),d()):(i.requestFullscreen(),null==n||n.collapseTop(),null==n||n.menu.setHidden(!0),l=!0)}}),document.addEventListener("fullscreenchange",(()=>{document.fullscreenElement||d()})),o&&o.addItem({command:k.toggleZen,category:"Mode"})}},q=[w,x,P,C,I,S,T,R,E,_,M,L,j,N,H,A,U,W,D,O]}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8579],{88579:(e,t,o)=>{o.r(t),o.d(t,{default:()=>q});var n=o(25007),a=o(95297),i=o(96985),r=o(9983),d=o(70109),l=o(42782),s=o(17556),c=o(61709),p=o(2277),u=o(60502),g=o(28856),m=o(75744),h=o(20998),b=o(2549),f=o(63485);const v=new RegExp("/(notebooks|edit)/(.*)"),y=/\.ipynb$/;var k;!function(e){e.handleLink="application:handle-local-link",e.toggleTop="application:toggle-top",e.togglePanel="application:toggle-panel",e.toggleZen="application:toggle-zen",e.openLab="application:open-lab",e.openTree="application:open-tree",e.rename="application:rename",e.resolveTree="application:resolve-tree"}(k||(k={}));const w={id:"@jupyter-notebook/application-extension:dirty",description:"Check if the application is dirty before closing the browser tab.",autoStart:!0,requires:[n.ILabStatus,u.ITranslator],activate:(e,t,o)=>{if(!(e instanceof g.NotebookApp))throw new Error(`${w.id} must be activated in Jupyter Notebook.`);const n=o.load("notebook").__("Are you sure you want to exit Jupyter Notebook?\n\nAny unsaved changes will be lost.");window.addEventListener("beforeunload",(t=>{if(e.status.isDirty)return t.returnValue=n}))}},x={id:"@jupyter-notebook/application-extension:logo",description:"The logo plugin.",autoStart:!0,activate:e=>{const t=r.PageConfig.getBaseUrl(),o=document.createElement("a");o.href=`${t}tree`,o.target="_blank",o.rel="noopener noreferrer";const n=new f.Widget({node:o});m.jupyterIcon.element({container:o,elementPosition:"center",padding:"2px 2px 2px 8px",height:"28px",width:"auto",cursor:"pointer",margin:"auto"}),n.id="jp-NotebookLogo",e.shell.add(n,"top",{rank:0})}},I={id:"@jupyter-notebook/application-extension:opener",description:"A plugin to open documents in the main area.",autoStart:!0,requires:[n.IRouter,d.IDocumentManager],optional:[p.ISettingRegistry],activate:(e,t,o,n)=>{const{commands:a,docRegistry:i}=e,r="router:tree";a.addCommand(r,{execute:t=>{var a;const r=t,d=null!==(a=r.path.match(v))&&void 0!==a?a:[],[,,l]=d;l&&e.started.then((async()=>{var e;const t=decodeURIComponent(l),a=new URLSearchParams(r.search);let d=i.defaultWidgetFactory(l).name;if(n){const e=(await n.load("@jupyterlab/docmanager-extension:plugin")).get("defaultViewers").composite;i.getFileTypesForPath(l).forEach((t=>{void 0!==e[t.name]&&i.getWidgetFactory(e[t.name])&&(d=e[t.name])}))}const s=null!==(e=a.get("factory"))&&void 0!==e?e:d;o.open(t,s,void 0,{ref:"_noref"})}))}}),t.register({command:r,pattern:v})}},P={id:"@jupyter-notebook/application-extension:menus",description:"A plugin to customize menus.",requires:[s.IMainMenu],autoStart:!0,activate:(e,t)=>{switch(t.tabsMenu.dispose(),r.PageConfig.getOption("notebookPage")){case"consoles":case"terminals":case"tree":t.editMenu.dispose(),t.kernelMenu.dispose(),t.runMenu.dispose();break;case"edit":t.kernelMenu.dispose(),t.runMenu.dispose()}}},C={id:"@jupyter-notebook/application-extension:menu-spacer",description:"A plugin to provide a spacer at rank 900 in the menu area.",autoStart:!0,activate:e=>{const t=new f.Widget;t.id=a.DOMUtils.createDomID(),t.addClass("jp-NotebookSpacer"),e.shell.add(t,"menu",{rank:900})}},S={id:"@jupyter-notebook/application-extension:pages",description:"Add commands to open the tree and running pages.",autoStart:!0,requires:[u.ITranslator],optional:[a.ICommandPalette],activate:(e,t,o)=>{const n=t.load("notebook"),a=r.PageConfig.getBaseUrl();e.commands.addCommand(k.openLab,{label:n.__("Open JupyterLab"),execute:()=>{window.open(r.URLExt.join(a,"lab"))}});const i=r.PageConfig.getOption("notebookPage");e.commands.addCommand(k.openTree,{label:n.__("File Browser"),execute:()=>{"tree"===i?e.commands.execute("filebrowser:activate"):window.open(r.URLExt.join(a,"tree"))}}),o&&(o.addItem({command:k.openLab,category:"View"}),o.addItem({command:k.openTree,category:"View"}))}},T={id:"@jupyter-notebook/application-extension:path-opener",description:"A plugin to open paths in new browser tabs.",autoStart:!0,provides:g.INotebookPathOpener,activate:e=>g.defaultNotebookPathOpener},R={id:"@jupyter-notebook/application-extension:paths",description:"The default paths for a Jupyter Notebook app.",autoStart:!0,provides:n.JupyterFrontEnd.IPaths,activate:e=>{if(!(e instanceof g.NotebookApp))throw new Error(`${R.id} must be activated in Jupyter Notebook.`);return e.paths}},E={id:"@jupyter-notebook/application-extension:rendermime",description:"A plugin providing a rendermime registry.",autoStart:!0,provides:c.IRenderMimeRegistry,optional:[d.IDocumentManager,c.ILatexTypesetter,a.ISanitizer,c.IMarkdownParser,u.ITranslator,g.INotebookPathOpener],activate:(e,t,o,n,a,i,d)=>{const l=(null!=i?i:u.nullTranslator).load("jupyterlab"),s=null!=d?d:g.defaultNotebookPathOpener;return t&&e.commands.addCommand(k.handleLink,{label:l.__("Handle Local Link"),execute:e=>{const o=e.path;if(null!=o)return t.services.contents.get(o,{content:!1}).then((e=>{const t=r.PageConfig.getBaseUrl();s.open({prefix:r.URLExt.join(t,"tree"),path:e.path,target:"_blank"})}))}}),new c.RenderMimeRegistry({initialFactories:c.standardRendererFactories,linkHandler:t?{handleLink:(t,o,n)=>{"A"===t.tagName&&t.hasAttribute("download")||e.commandLinker.connectNode(t,k.handleLink,{path:o,id:n})}}:void 0,latexTypesetter:null!=o?o:void 0,markdownParser:null!=a?a:void 0,translator:null!=i?i:void 0,sanitizer:null!=n?n:void 0})}},_={id:"@jupyter-notebook/application-extension:shell",description:"The default Jupyter Notebook application shell.",autoStart:!0,provides:g.INotebookShell,optional:[p.ISettingRegistry],activate:(e,t)=>{if(!(e.shell instanceof g.NotebookShell))throw new Error(`${_.id} did not find a NotebookShell instance.`);const o=e.shell;return t&&t.load(_.id).then((e=>{const t=e.composite.layout;o.restoreLayout(t)})).catch((e=>{console.error("Fail to load settings for the layout restorer."),console.error(e)})),o}},L={id:"@jupyter-notebook/application-extension:splash",description:"Provides an empty splash screen.",autoStart:!0,provides:a.ISplashScreen,activate:e=>{const{restored:t}=e,o=document.createElement("div");return o.style.position="absolute",o.style.width="100%",o.style.height="100%",o.style.zIndex="10",{show:(e=!0)=>(o.style.backgroundColor=e?"white":"#111111",document.body.appendChild(o),new b.DisposableDelegate((async()=>{await t,document.body.removeChild(o)})))}}},j={id:"@jupyter-notebook/application-extension:status",description:"The default JupyterLab application status provider.",autoStart:!0,provides:n.ILabStatus,activate:e=>{if(!(e instanceof g.NotebookApp))throw new Error(`${j.id} must be activated in Jupyter Notebook.`);return e.status}},N={id:"@jupyter-notebook/application-extension:tab-title",description:"A plugin to display the document title in the browser tab title.",autoStart:!0,requires:[g.INotebookShell],activate:(e,t)=>{const o=()=>{const e=t.currentWidget;if(e instanceof i.ConsolePanel){const t=()=>{const t=e.sessionContext.path||e.sessionContext.name,o=r.PathExt.basename(t);document.title=o.replace(y,"")};return e.sessionContext.sessionChanged.connect(t),void t()}if(e instanceof l.DocumentWidget){const t=()=>{const t=r.PathExt.basename(e.context.path);document.title=t.replace(y,"")};e.context.pathChanged.connect(t),t()}};t.currentChanged.connect(o),o()}},H={id:"@jupyter-notebook/application-extension:title",description:"A plugin to display and rename the title of a file.",autoStart:!0,requires:[g.INotebookShell,u.ITranslator],optional:[d.IDocumentManager,n.IRouter,a.IToolbarWidgetRegistry],activate:(e,t,o,n,a,i)=>{const{commands:s}=e,c=o.load("notebook"),p=document.createElement("div");i&&i.addFactory("TopBar","widgetTitle",(e=>{const t=new f.Widget({node:p});return t.id="jp-title",t}));const u=async()=>{const e=t.currentWidget;if(!(e&&e instanceof l.DocumentWidget))return;if(p.children.length>0)return;const o=document.createElement("h1");if(o.textContent=e.title.label.replace(y,""),p.appendChild(o),p.style.marginLeft="10px",!n)return;const i=()=>{const{currentWidget:e}=t;return!(!e||!n.contextForWidget(e))};s.addCommand(k.rename,{label:()=>c.__("Rename…"),isEnabled:i,execute:async()=>{var t;if(!i())return;const l=await(0,d.renameDialog)(n,e.context);if(e&&e.activate(),null===l)return;const s=e.context.path,c=r.PathExt.basename(s);if(o.textContent=c.replace(y,""),!a)return;const p=null!==(t=a.current.path.match(v))&&void 0!==t?t:[],[,u,g]=p;if(!u||!g)return;const m=encodeURIComponent(s);a.navigate(`/${u}/${m}`,{skipRouting:!0})}}),p.onclick=async()=>{s.execute(k.rename)}};t.currentChanged.connect(u),u()}},A={id:"@jupyter-notebook/application-extension:top",description:"Plugin to toggle the top header visibility.",requires:[g.INotebookShell,u.ITranslator],optional:[p.ISettingRegistry,a.ICommandPalette],activate:(e,t,o,n,a)=>{const i=o.load("notebook"),r=t.top,d=A.id;e.commands.addCommand(k.toggleTop,{label:i.__("Show Header"),execute:()=>{r.setHidden(r.isVisible),n&&n.set(d,"visible",r.isVisible?"yes":"no")},isToggled:()=>r.isVisible});let l=!1;if(n){const t=n.load(d),o=e=>{let t=e.get("visible").composite;void 0!==e.user.visible&&(t=e.user.visible),r.setHidden("no"===t),l="automatic"===t};Promise.all([t,e.restored]).then((([e])=>{o(e),e.changed.connect((e=>{o(e)}))})).catch((e=>{console.error(e.message)}))}a&&a.addItem({command:k.toggleTop,category:"View"}),e.formatChanged.connect((()=>{l&&("desktop"===e.format?t.expandTop():t.collapseTop())}))},autoStart:!0},M={id:"@jupyter-notebook/application-extension:sidepanel",description:"Plugin to toggle the visibility of left or right side panel.",requires:[g.INotebookShell,u.ITranslator],optional:[s.IMainMenu,a.ICommandPalette],autoStart:!0,activate:(e,t,o,n,a)=>{const i=o.load("notebook");e.commands.addCommand(k.togglePanel,{label:e=>e.title,caption:e=>"left"===e.side?i.__("Show %1 in the left sidebar",e.title):"right"===e.side?i.__("Show %1 in the right sidebar",e.title):i.__("Show %1 in the sidebar",e.title),execute:e=>{var o,n;switch(e.side){case"left":t.leftCollapsed||(null===(o=t.leftHandler.currentWidget)||void 0===o?void 0:o.id)!==e.id?t.expandLeft(e.id):(t.collapseLeft(),t.currentWidget&&t.activateById(t.currentWidget.id));break;case"right":t.rightCollapsed||(null===(n=t.rightHandler.currentWidget)||void 0===n?void 0:n.id)!==e.id?t.expandRight(e.id):(t.collapseRight(),t.currentWidget&&t.activateById(t.currentWidget.id))}},isToggled:e=>{switch(e.side){case"left":{if(t.leftCollapsed)return!1;const o=t.leftHandler.currentWidget;return!!o&&o.id===e.id}case"right":{if(t.rightCollapsed)return!1;const o=t.rightHandler.currentWidget;return!!o&&o.id===e.id}}return!1}});const r={left:null,right:null},d=(o,a)=>{var i;if(null===n)return null;null===(i=r[o])||void 0===i||i.dispose();const d=new f.Menu({commands:e.commands});d.title.label=a;const l=t.widgets(o);let s=!1;for(const e of l)d.addItem({command:k.togglePanel,args:{side:o,title:`Show ${e.title.caption}`,id:e.id}}),s=!0;s&&(r[o]=n.viewMenu.addItem({type:"submenu",submenu:d}))};e.restored.then((()=>{if(n){const e=e=>"left"===e?i.__("Left Sidebar"):i.__("Right Sidebar"),o=t.leftHandler.area,n=e(o);d(o,n);const a=t.rightHandler.area,r=e(a);d(a,r);const l=(t,o)=>{const n=e(t.area);d(t.area,n)};t.leftHandler.widgetAdded.connect(l),t.leftHandler.widgetRemoved.connect(l),t.rightHandler.widgetAdded.connect(l),t.rightHandler.widgetRemoved.connect(l)}if(a){const e=new g.SidePanelPalette({commandPalette:a,command:k.togglePanel});t.leftHandler.widgets.forEach((o=>{e.addItem(o,t.leftHandler.area)})),t.rightHandler.widgets.forEach((o=>{e.addItem(o,t.rightHandler.area)})),t.leftHandler.widgetAdded.connect(((t,o)=>{e.addItem(o,t.area)})),t.leftHandler.widgetRemoved.connect(((t,o)=>{e.removeItem(o,t.area)})),t.rightHandler.widgetAdded.connect(((t,o)=>{e.addItem(o,t.area)})),t.rightHandler.widgetRemoved.connect(((t,o)=>{e.removeItem(o,t.area)}))}}))}},U={id:"@jupyter-notebook/application-extension:tree-resolver",description:"The default tree route resolver plugin.",autoStart:!0,requires:[n.IRouter],provides:n.JupyterFrontEnd.ITreeResolver,activate:(e,t)=>{const{commands:o}=e,n=new b.DisposableSet,a=new h.PromiseDelegate,i=new RegExp("/(/tree/.*)?");n.add(o.addCommand(k.resolveTree,{execute:async e=>{var t;if(n.isDisposed)return;const o=r.URLExt.queryStringToObject(null!==(t=e.search)&&void 0!==t?t:""),i=o["file-browser-path"]||"";delete o["file-browser-path"],n.dispose(),a.resolve({browser:i,file:r.PageConfig.getOption("treePath")})}})),n.add(t.register({command:k.resolveTree,pattern:i}));const d=()=>{n.isDisposed||(n.dispose(),a.resolve(null))};return t.routed.connect(d),n.add(new b.DisposableDelegate((()=>{t.routed.disconnect(d)}))),{paths:a.promise}}},W={id:"@jupyter-notebook/application-extension:tree-updater",description:"Plugin to update tree path.",requires:[n.IRouter],provides:n.ITreePathUpdater,activate:(e,t)=>function(e){if(e!==r.PageConfig.getOption("treePath")){const o=r.URLExt.join(r.PageConfig.getOption("baseUrl")||"/","tree",r.URLExt.encodeParts(e));t.navigate(o,{skipRouting:!0}),r.PageConfig.setOption("treePath",e)}},autoStart:!0},D={id:"@jupyter-notebook/application-extension:translator",description:"Translator plugin",requires:[g.INotebookShell,u.ITranslator],autoStart:!0,activate:(e,t,o)=>{t.translator=o}},O={id:"@jupyter-notebook/application-extension:zen",description:"Zen mode plugin.",autoStart:!0,requires:[u.ITranslator],optional:[a.ICommandPalette,g.INotebookShell],activate:(e,t,o,n)=>{const{commands:a}=e,i=document.documentElement,r=t.load("notebook"),d=()=>{null==n||n.expandTop(),null==n||n.menu.setHidden(!1),l=!1};let l=!1;a.addCommand(k.toggleZen,{label:r.__("Toggle Zen Mode"),execute:()=>{l?(document.exitFullscreen(),d()):(i.requestFullscreen(),null==n||n.collapseTop(),null==n||n.menu.setHidden(!0),l=!0)}}),document.addEventListener("fullscreenchange",(()=>{document.fullscreenElement||d()})),o&&o.addItem({command:k.toggleZen,category:"Mode"})}},q=[w,x,P,C,I,S,T,R,E,_,M,L,j,N,H,A,U,W,D,O]}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8633],{98633:(e,t,n)=>{n.r(t),n.d(t,{default:()=>y});var i,r=n(11510),a=n(23051),o=n(93150),d=n(36478),s=n(1678),c=n(24758),l=n(90132),g=n(13532),u=n(91077),p=n(31721);!function(e){e.open="settingeditor:open",e.openJSON="settingeditor:open-json",e.revert="settingeditor:revert",e.save="settingeditor:save"}(i||(i={}));const m={id:"@jupyterlab/settingeditor-extension:form-ui",description:"Adds the interactive settings editor and provides its tracker.",requires:[g.ISettingRegistry,u.IStateDB,p.ITranslator,d.IFormRendererRegistry,r.ILabStatus],optional:[r.ILayoutRestorer,a.ICommandPalette,c.g,l.IPluginManager],autoStart:!0,provides:c.O,activate:function(e,t,r,o,s,c,l,g,u,p){const v=o.load("jupyterlab"),{commands:y,shell:S}=e,b="setting-editor",I=new a.WidgetTracker({namespace:b});return l&&l.restore(I,{command:i.open,args:e=>({}),name:e=>b}),y.addCommand(i.open,{execute:async e=>{var l;"ui"===e.settingEditorType?y.execute(i.open,{query:null!==(l=e.query)&&void 0!==l?l:""}):"json"===e.settingEditorType?y.execute(i.openJSON):t.load(m.id).then((l=>{var g;"json"===l.get("settingEditorType").composite?y.execute(i.openJSON):(async e=>{if(I.currentWidget&&!I.currentWidget.isDisposed)return I.currentWidget.isAttached||S.add(I.currentWidget,"main",{type:"Settings"}),void S.activateById(I.currentWidget.id);const l=m.id,{SettingsEditor:g}=await n.e(1527).then(n.t.bind(n,1527,23)),h=new a.MainAreaWidget({content:new g({editorRegistry:s,key:l,registry:t,state:r,commands:y,toSkip:["@jupyterlab/application-extension:context-menu","@jupyterlab/mainmenu-extension:plugin"],translator:o,status:c,query:e.query})});h.toolbar.addItem("spacer",d.Toolbar.createSpacerItem()),p&&h.toolbar.addItem("open-plugin-manager",new d.ToolbarButton({onClick:async()=>{await p.open()},icon:d.launchIcon,label:v.__("Plugin Manager")})),u&&h.toolbar.addItem("open-json-editor",new d.CommandToolbarButton({commands:y,id:i.openJSON,icon:d.launchIcon,label:v.__("JSON Settings Editor")})),h.id=b,h.title.icon=d.settingsIcon,h.title.label=v.__("Settings"),h.title.closable=!0,I.add(h),S.add(h,"main",{type:"Settings"})})({query:null!==(g=e.query)&&void 0!==g?g:""})}))},label:e=>e.label?e.label:v.__("Settings Editor")}),g&&g.addItem({category:v.__("Settings"),command:i.open,args:{settingEditorType:"ui"}}),I}},v={id:"@jupyterlab/settingeditor-extension:plugin",description:"Adds the JSON settings editor and provides its tracker.",requires:[g.ISettingRegistry,o.IEditorServices,u.IStateDB,s.IRenderMimeRegistry,r.ILabStatus,p.ITranslator],optional:[r.ILayoutRestorer,a.ICommandPalette],autoStart:!0,provides:c.g,activate:function(e,t,r,o,s,c,l,g,u){const p=l.load("jupyterlab"),{commands:v,shell:y}=e,S="json-setting-editor",b=r.factoryService.newInlineEditor,I=new a.WidgetTracker({namespace:S});return g&&g.restore(I,{command:i.openJSON,args:e=>({}),name:e=>S}),v.addCommand(i.openJSON,{execute:async()=>{if(I.currentWidget&&!I.currentWidget.isDisposed)return I.currentWidget.isAttached||y.add(I.currentWidget,"main",{type:"Advanced Settings"}),void y.activateById(I.currentWidget.id);const r=m.id,g=e.restored,{JsonSettingEditor:u}=await n.e(1527).then(n.t.bind(n,1527,23)),h=new u({commands:{registry:v,revert:i.revert,save:i.save},editorFactory:b,key:r,registry:t,rendermime:s,state:o,translator:l,when:g});let w=null;h.commandsChanged.connect(((e,t)=>{t.forEach((e=>{v.notifyCommandChanged(e)})),h.canSaveRaw?w||(w=c.setDirty()):w&&(w.dispose(),w=null),h.disposed.connect((()=>{w&&w.dispose()}))}));const _=new a.MainAreaWidget({content:h});_.id=S,_.title.icon=d.settingsIcon,_.title.label=p.__("Advanced Settings Editor"),_.title.closable=!0,I.add(_),y.add(_,"main",{type:"Advanced Settings"})},label:p.__("Advanced Settings Editor")}),u&&u.addItem({category:p.__("Settings"),command:i.openJSON}),v.addCommand(i.revert,{execute:()=>{var e;null===(e=I.currentWidget)||void 0===e||e.content.revert()},icon:d.undoIcon,label:p.__("Revert User Settings"),isEnabled:()=>{var e,t;return null!==(t=null===(e=I.currentWidget)||void 0===e?void 0:e.content.canRevertRaw)&&void 0!==t&&t}}),v.addCommand(i.save,{execute:()=>{var e;return null===(e=I.currentWidget)||void 0===e?void 0:e.content.save()},icon:d.saveIcon,label:p.__("Save User Settings"),isEnabled:()=>{var e,t;return null!==(t=null===(e=I.currentWidget)||void 0===e?void 0:e.content.canSaveRaw)&&void 0!==t&&t}}),I}},y=[m,v]},24758:(e,t,n)=>{n.d(t,{O:()=>r,g:()=>a});var i=n(20998);const r=new i.Token("@jupyterlab/settingeditor:ISettingEditorTracker","A widget tracker for the interactive setting editor.\n Use this if you want to be able to iterate over and interact with setting editors\n created by the application."),a=new i.Token("@jupyterlab/settingeditor:IJSONSettingEditorTracker","A widget tracker for the JSON setting editor.\n Use this if you want to be able to iterate over and interact with setting editors\n created by the application.")}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8633],{98633:(e,t,n)=>{n.r(t),n.d(t,{default:()=>y});var i,r=n(25007),a=n(95297),o=n(97231),d=n(31589),s=n(61709),c=n(24758),l=n(27401),g=n(2277),u=n(12287),p=n(60502);!function(e){e.open="settingeditor:open",e.openJSON="settingeditor:open-json",e.revert="settingeditor:revert",e.save="settingeditor:save"}(i||(i={}));const m={id:"@jupyterlab/settingeditor-extension:form-ui",description:"Adds the interactive settings editor and provides its tracker.",requires:[g.ISettingRegistry,u.IStateDB,p.ITranslator,d.IFormRendererRegistry,r.ILabStatus],optional:[r.ILayoutRestorer,a.ICommandPalette,c.g,l.IPluginManager],autoStart:!0,provides:c.O,activate:function(e,t,r,o,s,c,l,g,u,p){const v=o.load("jupyterlab"),{commands:y,shell:S}=e,b="setting-editor",I=new a.WidgetTracker({namespace:b});return l&&l.restore(I,{command:i.open,args:e=>({}),name:e=>b}),y.addCommand(i.open,{execute:async e=>{var l;"ui"===e.settingEditorType?y.execute(i.open,{query:null!==(l=e.query)&&void 0!==l?l:""}):"json"===e.settingEditorType?y.execute(i.openJSON):t.load(m.id).then((l=>{var g;"json"===l.get("settingEditorType").composite?y.execute(i.openJSON):(async e=>{if(I.currentWidget&&!I.currentWidget.isDisposed)return I.currentWidget.isAttached||S.add(I.currentWidget,"main",{type:"Settings"}),void S.activateById(I.currentWidget.id);const l=m.id,{SettingsEditor:g}=await n.e(3959).then(n.t.bind(n,43959,23)),h=new a.MainAreaWidget({content:new g({editorRegistry:s,key:l,registry:t,state:r,commands:y,toSkip:["@jupyterlab/application-extension:context-menu","@jupyterlab/mainmenu-extension:plugin"],translator:o,status:c,query:e.query})});h.toolbar.addItem("spacer",d.Toolbar.createSpacerItem()),p&&h.toolbar.addItem("open-plugin-manager",new d.ToolbarButton({onClick:async()=>{await p.open()},icon:d.launchIcon,label:v.__("Plugin Manager")})),u&&h.toolbar.addItem("open-json-editor",new d.CommandToolbarButton({commands:y,id:i.openJSON,icon:d.launchIcon,label:v.__("JSON Settings Editor")})),h.id=b,h.title.icon=d.settingsIcon,h.title.label=v.__("Settings"),h.title.closable=!0,I.add(h),S.add(h,"main",{type:"Settings"})})({query:null!==(g=e.query)&&void 0!==g?g:""})}))},label:e=>e.label?e.label:v.__("Settings Editor")}),g&&g.addItem({category:v.__("Settings"),command:i.open,args:{settingEditorType:"ui"}}),I}},v={id:"@jupyterlab/settingeditor-extension:plugin",description:"Adds the JSON settings editor and provides its tracker.",requires:[g.ISettingRegistry,o.IEditorServices,u.IStateDB,s.IRenderMimeRegistry,r.ILabStatus,p.ITranslator],optional:[r.ILayoutRestorer,a.ICommandPalette],autoStart:!0,provides:c.g,activate:function(e,t,r,o,s,c,l,g,u){const p=l.load("jupyterlab"),{commands:v,shell:y}=e,S="json-setting-editor",b=r.factoryService.newInlineEditor,I=new a.WidgetTracker({namespace:S});return g&&g.restore(I,{command:i.openJSON,args:e=>({}),name:e=>S}),v.addCommand(i.openJSON,{execute:async()=>{if(I.currentWidget&&!I.currentWidget.isDisposed)return I.currentWidget.isAttached||y.add(I.currentWidget,"main",{type:"Advanced Settings"}),void y.activateById(I.currentWidget.id);const r=m.id,g=e.restored,{JsonSettingEditor:u}=await n.e(3959).then(n.t.bind(n,43959,23)),h=new u({commands:{registry:v,revert:i.revert,save:i.save},editorFactory:b,key:r,registry:t,rendermime:s,state:o,translator:l,when:g});let w=null;h.commandsChanged.connect(((e,t)=>{t.forEach((e=>{v.notifyCommandChanged(e)})),h.canSaveRaw?w||(w=c.setDirty()):w&&(w.dispose(),w=null),h.disposed.connect((()=>{w&&w.dispose()}))}));const _=new a.MainAreaWidget({content:h});_.id=S,_.title.icon=d.settingsIcon,_.title.label=p.__("Advanced Settings Editor"),_.title.closable=!0,I.add(_),y.add(_,"main",{type:"Advanced Settings"})},label:p.__("Advanced Settings Editor")}),u&&u.addItem({category:p.__("Settings"),command:i.openJSON}),v.addCommand(i.revert,{execute:()=>{var e;null===(e=I.currentWidget)||void 0===e||e.content.revert()},icon:d.undoIcon,label:p.__("Revert User Settings"),isEnabled:()=>{var e,t;return null!==(t=null===(e=I.currentWidget)||void 0===e?void 0:e.content.canRevertRaw)&&void 0!==t&&t}}),v.addCommand(i.save,{execute:()=>{var e;return null===(e=I.currentWidget)||void 0===e?void 0:e.content.save()},icon:d.saveIcon,label:p.__("Save User Settings"),isEnabled:()=>{var e,t;return null!==(t=null===(e=I.currentWidget)||void 0===e?void 0:e.content.canSaveRaw)&&void 0!==t&&t}}),I}},y=[m,v]},24758:(e,t,n)=>{n.d(t,{O:()=>r,g:()=>a});var i=n(20998);const r=new i.Token("@jupyterlab/settingeditor:ISettingEditorTracker","A widget tracker for the interactive setting editor.\n Use this if you want to be able to iterate over and interact with setting editors\n created by the application."),a=new i.Token("@jupyterlab/settingeditor:IJSONSettingEditorTracker","A widget tracker for the JSON setting editor.\n Use this if you want to be able to iterate over and interact with setting editors\n created by the application.")}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8771,9638],{68771:(e,t,n)=>{n.r(t),n.d(t,{ILauncher:()=>a,Launcher:()=>p,LauncherModel:()=>u});const a=new(n(20998).Token)("@jupyterlab/launcher:ILauncher","A service for the application activity launcher.\n Use this to add your extension activities to the launcher panel.");var s,r=n(23051),c=n(31721),o=n(36478),i=n(33625),l=n(2549),d=n(14421),h=n(63485),m=n(78156);class u extends o.VDomModel{constructor(){super(...arguments),this.itemsList=[]}add(e){const t=s.createItem(e);return this.itemsList.push(t),this.stateChanged.emit(void 0),new l.DisposableDelegate((()=>{i.ArrayExt.removeFirstOf(this.itemsList,t),this.stateChanged.emit(void 0)}))}items(){return this.itemsList[Symbol.iterator]()}}class p extends o.VDomRenderer{constructor(e){super(e.model),this._pending=!1,this._cwd="",this._cwd=e.cwd,this.translator=e.translator||c.nullTranslator,this._trans=this.translator.load("jupyterlab"),this._callback=e.callback,this._commands=e.commands,this.addClass("jp-Launcher")}get cwd(){return this._cwd}set cwd(e){this._cwd=e,this.update()}get pending(){return this._pending}set pending(e){this._pending=e}render(){if(!this.model)return null;const e=[this._trans.__("Notebook"),this._trans.__("Console"),this._trans.__("Other")],t=[this._trans.__("Notebook"),this._trans.__("Console")],n=Object.create(null);for(const e of this.model.items()){const t=e.category||this._trans.__("Other");t in n||(n[t]=[]),n[t].push(e)}for(const e in n)n[e]=n[e].sort(((e,t)=>s.sortCmp(e,t,this._cwd,this._commands)));const a=[];let c;const l=[];for(const t of e)l.push(t);for(const t in n)-1===e.indexOf(t)&&l.push(t);return l.forEach((e=>{if(!n[e])return;const l=n[e][0],d={...l.args,cwd:this.cwd},u=t.indexOf(e)>-1,p=this._commands.iconClass(l.command,d),_=this._commands.icon(l.command,d);e in n&&(c=m.createElement("div",{className:"jp-Launcher-section",key:e},m.createElement("div",{className:"jp-Launcher-sectionHeader"},m.createElement(o.LabIcon.resolveReact,{icon:_,iconClass:(0,o.classes)(p,"jp-Icon-cover"),stylesheet:"launcherSection","aria-hidden":"true"}),m.createElement("h2",{className:"jp-Launcher-sectionTitle"},e)),m.createElement("div",{className:"jp-Launcher-cardContainer"},Array.from((0,i.map)(n[e],(e=>function(e,t,n,a,c,i){const l=t.command,d={...t.args,cwd:n.cwd},u=a.caption(l,d),p=a.label(l,d),_=e?p:u||p,g=()=>{!0!==n.pending&&(n.pending=!0,a.execute(l,{...t.args,cwd:n.cwd}).then((e=>{n.pending=!1,e instanceof h.Widget&&i(e)})).catch((e=>{console.error(e),n.pending=!1,(0,r.showErrorMessage)(c._p("Error","Launcher Error"),e)})))},E=a.iconClass(l,d),L=a.icon(l,d);return m.createElement("div",{className:"jp-LauncherCard",title:_,onClick:g,onKeyPress:e=>{"Enter"===e.key&&g()},tabIndex:0,"data-category":t.category||c.__("Other"),key:s.keyProperty.get(t)},m.createElement("div",{className:"jp-LauncherCard-icon"},e?t.kernelIconUrl?m.createElement("img",{src:t.kernelIconUrl,className:"jp-Launcher-kernelIcon",alt:_}):m.createElement("div",{className:"jp-LauncherCard-noKernelIcon"},p[0].toUpperCase()):m.createElement(o.LabIcon.resolveReact,{icon:L,iconClass:(0,o.classes)(E,"jp-Icon-cover"),stylesheet:"launcherCard"})),m.createElement("div",{className:"jp-LauncherCard-label",title:_},m.createElement("p",null,p)))}(u,e,this,this._commands,this._trans,this._callback)))))),a.push(c))})),m.createElement("div",{className:"jp-Launcher-body"},m.createElement("div",{className:"jp-Launcher-content"},m.createElement("div",{className:"jp-Launcher-cwd"},m.createElement("h3",null,this.cwd)),a))}}!function(e){let t=0;e.keyProperty=new d.AttachedProperty({name:"key",create:()=>t++}),e.createItem=function(e){return{...e,category:e.category||"",rank:void 0!==e.rank?e.rank:1/0}},e.sortCmp=function(e,t,n,a){const s=e.rank,r=t.rank;if(s!==r&&void 0!==s&&void 0!==r)return s<r?-1:1;const c=a.label(e.command,{...e.args,cwd:n}),o=a.label(t.command,{...t.args,cwd:n});return c.localeCompare(o)}}(s||(s={}))}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8771,9638],{68771:(e,t,n)=>{n.r(t),n.d(t,{ILauncher:()=>a,Launcher:()=>p,LauncherModel:()=>u});const a=new(n(20998).Token)("@jupyterlab/launcher:ILauncher","A service for the application activity launcher.\n Use this to add your extension activities to the launcher panel.");var s,r=n(95297),c=n(60502),o=n(31589),i=n(33625),l=n(2549),d=n(14421),h=n(63485),m=n(78156);class u extends o.VDomModel{constructor(){super(...arguments),this.itemsList=[]}add(e){const t=s.createItem(e);return this.itemsList.push(t),this.stateChanged.emit(void 0),new l.DisposableDelegate((()=>{i.ArrayExt.removeFirstOf(this.itemsList,t),this.stateChanged.emit(void 0)}))}items(){return this.itemsList[Symbol.iterator]()}}class p extends o.VDomRenderer{constructor(e){super(e.model),this._pending=!1,this._cwd="",this._cwd=e.cwd,this.translator=e.translator||c.nullTranslator,this._trans=this.translator.load("jupyterlab"),this._callback=e.callback,this._commands=e.commands,this.addClass("jp-Launcher")}get cwd(){return this._cwd}set cwd(e){this._cwd=e,this.update()}get pending(){return this._pending}set pending(e){this._pending=e}render(){if(!this.model)return null;const e=[this._trans.__("Notebook"),this._trans.__("Console"),this._trans.__("Other")],t=[this._trans.__("Notebook"),this._trans.__("Console")],n=Object.create(null);for(const e of this.model.items()){const t=e.category||this._trans.__("Other");t in n||(n[t]=[]),n[t].push(e)}for(const e in n)n[e]=n[e].sort(((e,t)=>s.sortCmp(e,t,this._cwd,this._commands)));const a=[];let c;const l=[];for(const t of e)l.push(t);for(const t in n)-1===e.indexOf(t)&&l.push(t);return l.forEach((e=>{if(!n[e])return;const l=n[e][0],d={...l.args,cwd:this.cwd},u=t.indexOf(e)>-1,p=this._commands.iconClass(l.command,d),_=this._commands.icon(l.command,d);e in n&&(c=m.createElement("div",{className:"jp-Launcher-section",key:e},m.createElement("div",{className:"jp-Launcher-sectionHeader"},m.createElement(o.LabIcon.resolveReact,{icon:_,iconClass:(0,o.classes)(p,"jp-Icon-cover"),stylesheet:"launcherSection","aria-hidden":"true"}),m.createElement("h2",{className:"jp-Launcher-sectionTitle"},e)),m.createElement("div",{className:"jp-Launcher-cardContainer"},Array.from((0,i.map)(n[e],(e=>function(e,t,n,a,c,i){const l=t.command,d={...t.args,cwd:n.cwd},u=a.caption(l,d),p=a.label(l,d),_=e?p:u||p,g=()=>{!0!==n.pending&&(n.pending=!0,a.execute(l,{...t.args,cwd:n.cwd}).then((e=>{n.pending=!1,e instanceof h.Widget&&i(e)})).catch((e=>{console.error(e),n.pending=!1,(0,r.showErrorMessage)(c._p("Error","Launcher Error"),e)})))},E=a.iconClass(l,d),L=a.icon(l,d);return m.createElement("div",{className:"jp-LauncherCard",title:_,onClick:g,onKeyPress:e=>{"Enter"===e.key&&g()},tabIndex:0,"data-category":t.category||c.__("Other"),key:s.keyProperty.get(t)},m.createElement("div",{className:"jp-LauncherCard-icon"},e?t.kernelIconUrl?m.createElement("img",{src:t.kernelIconUrl,className:"jp-Launcher-kernelIcon",alt:_}):m.createElement("div",{className:"jp-LauncherCard-noKernelIcon"},p[0].toUpperCase()):m.createElement(o.LabIcon.resolveReact,{icon:L,iconClass:(0,o.classes)(E,"jp-Icon-cover"),stylesheet:"launcherCard"})),m.createElement("div",{className:"jp-LauncherCard-label",title:_},m.createElement("p",null,p)))}(u,e,this,this._commands,this._trans,this._callback)))))),a.push(c))})),m.createElement("div",{className:"jp-Launcher-body"},m.createElement("div",{className:"jp-Launcher-content"},m.createElement("div",{className:"jp-Launcher-cwd"},m.createElement("h3",null,this.cwd)),a))}}!function(e){let t=0;e.keyProperty=new d.AttachedProperty({name:"key",create:()=>t++}),e.createItem=function(e){return{...e,category:e.category||"",rank:void 0!==e.rank?e.rank:1/0}},e.sortCmp=function(e,t,n,a){const s=e.rank,r=t.rank;if(s!==r&&void 0!==s&&void 0!==r)return s<r?-1:1;const c=a.label(e.command,{...e.args,cwd:n}),o=a.label(t.command,{...t.args,cwd:n});return c.localeCompare(o)}}(s||(s={}))}}]);