notebook 7.3.0a0__py3-none-any.whl → 7.3.0a1__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 (183) hide show
  1. notebook/_version.py +1 -1
  2. notebook/static/113.bundle.js +1 -1
  3. notebook/static/1198.bundle.js +1 -1
  4. notebook/static/1226.bundle.js +1 -1
  5. notebook/static/131.bundle.js +1 -1
  6. notebook/static/134.bundle.js +1 -1
  7. notebook/static/1408.bundle.js +1 -1
  8. notebook/static/1496.bundle.js +1 -1
  9. notebook/static/1584.bundle.js +1 -1
  10. notebook/static/1647.bundle.js +1 -1
  11. notebook/static/1650.bundle.js +1 -1
  12. notebook/static/1684.bundle.js +1 -1
  13. notebook/static/1809.bundle.js +1 -1
  14. notebook/static/1827.bundle.js +1 -1
  15. notebook/static/1833.bundle.js +1 -1
  16. notebook/static/1958.bundle.js +1 -1
  17. notebook/static/1962.bundle.js +1 -1
  18. notebook/static/2007.bundle.js +1 -1
  19. notebook/static/2065.bundle.js +1 -1
  20. notebook/static/2088.bundle.js +1 -1
  21. notebook/static/2089.bundle.js +1 -1
  22. notebook/static/2122.bundle.js +1 -1
  23. notebook/static/2167.bundle.js +1 -1
  24. notebook/static/2184.bundle.js +1 -1
  25. notebook/static/2311.bundle.js +1 -1
  26. notebook/static/2401.bundle.js +1 -1
  27. notebook/static/2479.bundle.js +1 -1
  28. notebook/static/2489.bundle.js +1 -1
  29. notebook/static/2607.bundle.js +1 -1
  30. notebook/static/2615.bundle.js +1 -1
  31. notebook/static/2636.bundle.js +1 -1
  32. notebook/static/2924.bundle.js +1 -1
  33. notebook/static/2944.bundle.js +1 -1
  34. notebook/static/{2323.bundle.js → 3030.bundle.js} +1 -1
  35. notebook/static/3129.bundle.js +1 -1
  36. notebook/static/3146.bundle.js +1 -1
  37. notebook/static/3187.bundle.js +1 -1
  38. notebook/static/3213.bundle.js +1 -1
  39. notebook/static/3340.bundle.js +1 -1
  40. notebook/static/3360.bundle.js +1 -1
  41. notebook/static/3466.bundle.js +1 -1
  42. notebook/static/3512.bundle.js +1 -1
  43. notebook/static/3676.bundle.js +1 -1
  44. notebook/static/3680.bundle.js +1 -1
  45. notebook/static/374.bundle.js +1 -1
  46. notebook/static/3768.bundle.js +1 -1
  47. notebook/static/377.bundle.js +1 -1
  48. notebook/static/3863.bundle.js +1 -1
  49. notebook/static/3881.bundle.js +1 -1
  50. notebook/static/4042.bundle.js +1 -1
  51. notebook/static/4058.bundle.js +1 -1
  52. notebook/static/4212.bundle.js +1 -1
  53. notebook/static/4382.bundle.js +1 -1
  54. notebook/static/4526.bundle.js +1 -1
  55. notebook/static/4588.bundle.js +1 -1
  56. notebook/static/4645.bundle.js +1 -1
  57. notebook/static/4811.bundle.js +1 -1
  58. notebook/static/4837.bundle.js +1 -1
  59. notebook/static/5099.bundle.js +1 -1
  60. notebook/static/5135.bundle.js +1 -1
  61. notebook/static/5254.bundle.js +1 -1
  62. notebook/static/5261.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/5828.bundle.js +1 -1
  72. notebook/static/5850.bundle.js +1 -1
  73. notebook/static/5912.bundle.js +1 -1
  74. notebook/static/5921.bundle.js +1 -1
  75. notebook/static/6017.bundle.js +1 -1
  76. notebook/static/6139.bundle.js +1 -1
  77. notebook/static/62.bundle.js +1 -1
  78. notebook/static/6271.bundle.js +1 -1
  79. notebook/static/6318.bundle.js +1 -1
  80. notebook/static/6345.bundle.js +1 -1
  81. notebook/static/6604.bundle.js +1 -1
  82. notebook/static/6621.bundle.js +1 -1
  83. notebook/static/6627.bundle.js +1 -1
  84. notebook/static/6748.bundle.js +1 -1
  85. notebook/static/677.bundle.js +1 -1
  86. notebook/static/6815.bundle.js +1 -1
  87. notebook/static/6853.bundle.js +1 -1
  88. notebook/static/6893.bundle.js +1 -1
  89. notebook/static/6898.bundle.js +1 -1
  90. notebook/static/690.bundle.js +1 -1
  91. notebook/static/6962.bundle.js +1 -1
  92. notebook/static/6999.bundle.js +1 -1
  93. notebook/static/7226.bundle.js +1 -1
  94. notebook/static/7252.bundle.js +1 -1
  95. notebook/static/7302.bundle.js +1 -1
  96. notebook/static/7369.bundle.js +1 -1
  97. notebook/static/7386.bundle.js +1 -1
  98. notebook/static/7391.bundle.js +1 -1
  99. notebook/static/7450.bundle.js +1 -1
  100. notebook/static/7506.bundle.js +2 -2
  101. notebook/static/7543.bundle.js +1 -1
  102. notebook/static/755.bundle.js +1 -1
  103. notebook/static/7603.bundle.js +1 -1
  104. notebook/static/7639.bundle.js +1 -1
  105. notebook/static/7655.bundle.js +1 -1
  106. notebook/static/{4427.bundle.js → 7674.bundle.js} +1 -1
  107. notebook/static/7684.bundle.js +1 -1
  108. notebook/static/7812.bundle.js +1 -1
  109. notebook/static/7819.bundle.js +1 -1
  110. notebook/static/7854.bundle.js +1 -1
  111. notebook/static/7900.bundle.js +1 -1
  112. notebook/static/7906.bundle.js +1 -1
  113. notebook/static/7995.bundle.js +1 -1
  114. notebook/static/8054.bundle.js +1 -1
  115. notebook/static/8285.bundle.js +1 -1
  116. notebook/static/8471.bundle.js +1 -1
  117. notebook/static/8579.bundle.js +1 -1
  118. notebook/static/8633.bundle.js +1 -1
  119. notebook/static/8771.bundle.js +1 -1
  120. notebook/static/8781.bundle.js +1 -1
  121. notebook/static/8875.bundle.js +1 -1
  122. notebook/static/8907.bundle.js +1 -1
  123. notebook/static/8928.bundle.js +1 -1
  124. notebook/static/893.bundle.js +1 -1
  125. notebook/static/901.bundle.js +1 -1
  126. notebook/static/9068.bundle.js +1 -1
  127. notebook/static/9136.bundle.js +1 -1
  128. notebook/static/9151.bundle.js +1 -1
  129. notebook/static/9161.bundle.js +1 -1
  130. notebook/static/9268.bundle.js +1 -1
  131. notebook/static/9335.bundle.js +1 -1
  132. notebook/static/9341.bundle.js +1 -1
  133. notebook/static/9380.bundle.js +1 -1
  134. notebook/static/9605.bundle.js +1 -1
  135. notebook/static/9638.bundle.js +1 -1
  136. notebook/static/9680.bundle.js +1 -1
  137. notebook/static/9685.bundle.js +1 -1
  138. notebook/static/9752.bundle.js +1 -1
  139. notebook/static/9821.bundle.js +1 -1
  140. notebook/static/9852.bundle.js +1 -1
  141. notebook/static/bundle.js +1 -1
  142. notebook/static/third-party-licenses.json +104 -104
  143. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/package.json.orig +14 -14
  144. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/documentsearch-extension/package.json.orig +4 -4
  145. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/help-extension/package.json.orig +6 -6
  146. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/package.json.orig +9 -9
  147. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/tree-extension/package.json.orig +15 -15
  148. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/package.json +11 -11
  149. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/schemas/@jupyter-notebook/lab-extension/package.json.orig +10 -10
  150. notebook-7.3.0a1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/568.45e1d3167710e94c3d26.js +1 -0
  151. notebook-7.3.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/646.57a345a80ce9f0e64830.js → notebook-7.3.0a1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/600.25341cef1598f2727482.js +1 -1
  152. notebook-7.3.0a1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/928.b94c92715d631efb4a8f.js +1 -0
  153. notebook-7.3.0a1.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/remoteEntry.8ca922abea871b34db72.js +1 -0
  154. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/third-party-licenses.json +2 -2
  155. {notebook-7.3.0a0.dist-info → notebook-7.3.0a1.dist-info}/METADATA +2 -2
  156. {notebook-7.3.0a0.dist-info → notebook-7.3.0a1.dist-info}/RECORD +179 -180
  157. {notebook-7.3.0a0.dist-info → notebook-7.3.0a1.dist-info}/WHEEL +1 -1
  158. notebook/static/9092.bundle.js +0 -1
  159. notebook-7.3.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/568.6d49b092e49dc147dc54.js +0 -1
  160. notebook-7.3.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/928.7bcc163b9139ecb2b25b.js +0 -1
  161. notebook-7.3.0a0.data/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/remoteEntry.9381fdb35e72f41d8af1.js +0 -1
  162. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/etc/jupyter/jupyter_server_config.d/notebook.json +0 -0
  163. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/applications/jupyter-notebook.desktop +0 -0
  164. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/icons/hicolor/scalable/apps/notebook.svg +0 -0
  165. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/menus.json +0 -0
  166. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/pages.json +0 -0
  167. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/shell.json +0 -0
  168. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/title.json +0 -0
  169. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/top.json +0 -0
  170. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/application-extension/zen.json +0 -0
  171. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/help-extension/open.json +0 -0
  172. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/checkpoints.json +0 -0
  173. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/edit-notebook-metadata.json +0 -0
  174. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/kernel-logo.json +0 -0
  175. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/notebook-extension/scroll-output.json +0 -0
  176. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/tree-extension/file-actions.json +0 -0
  177. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/lab/schemas/@jupyter-notebook/tree-extension/widget.json +0 -0
  178. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/schemas/@jupyter-notebook/lab-extension/interface-switcher.json +0 -0
  179. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/schemas/@jupyter-notebook/lab-extension/launch-tree.json +0 -0
  180. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/93.eae3497dd223d842d198.js +0 -0
  181. {notebook-7.3.0a0.data → notebook-7.3.0a1.data}/data/share/jupyter/labextensions/@jupyter-notebook/lab-extension/static/style.js +0 -0
  182. {notebook-7.3.0a0.dist-info → notebook-7.3.0a1.dist-info}/entry_points.txt +0 -0
  183. {notebook-7.3.0a0.dist-info → notebook-7.3.0a1.dist-info}/licenses/LICENSE +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8285,4498],{78285:function(t,e,r){var n,o=this&&this.__extends||(n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},n(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__assign||function(){return i=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},i.apply(this,arguments)},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,o,i=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a},l=this&&this.__spreadArray||function(t,e,r){if(r||2===arguments.length)for(var n,o=0,i=e.length;o<i;o++)!n&&o in e||(n||(n=Array.prototype.slice.call(e,0,o)),n[o]=e[o]);return t.concat(n||Array.prototype.slice.call(e))},s=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.SafeHandler=e.SafeMathDocumentMixin=void 0;var f=r(19290);function c(t){var e;return e=function(t){function e(){for(var e,r,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];var i=t.apply(this,l([],a(n),!1))||this;i.safe=new i.options.SafeClass(i,i.options.safeOptions);var f=i.constructor.ProcessBits;f.has("safe")||f.allocate("safe");try{for(var c=s(i.inputJax),u=c.next();!u.done;u=c.next()){var p=u.value;p.name.match(/MathML/)?(p.mathml.filterAttribute=i.safe.mmlAttribute.bind(i.safe),p.mathml.filterClassList=i.safe.mmlClassList.bind(i.safe)):p.name.match(/TeX/)&&p.postFilters.add(i.sanitize.bind(p),-5.5)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=c.return)&&r.call(c)}finally{if(e)throw e.error}}return i}return o(e,t),e.prototype.sanitize=function(t){t.math.root=this.parseOptions.root,t.document.safe.sanitize(t.math,t.document)},e}(t),e.OPTIONS=i(i({},t.OPTIONS),{safeOptions:i({},f.Safe.OPTIONS),SafeClass:f.Safe}),e}e.SafeMathDocumentMixin=c,e.SafeHandler=function(t){return t.documentClass=c(t.documentClass),t}},35230:function(t,e,r){var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,o,i=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.SafeMethods=void 0;var i=r(56780);e.SafeMethods={filterURL:function(t,e){var r=(e.match(/^\s*([a-z]+):/i)||[null,""])[1].toLowerCase(),n=t.allow.URLs;return"all"===n||"safe"===n&&(t.options.safeProtocols[r]||!r)?e:null},filterClassList:function(t,e){var r=this;return e.trim().replace(/\s\s+/g," ").split(/ /).map((function(e){return r.filterClass(t,e)||""})).join(" ").trim().replace(/\s\s+/g,"")},filterClass:function(t,e){var r=t.allow.classes;return"all"===r||"safe"===r&&e.match(t.options.classPattern)?e:null},filterID:function(t,e){var r=t.allow.cssIDs;return"all"===r||"safe"===r&&e.match(t.options.idPattern)?e:null},filterStyles:function(t,e){var r,o,i,a;if("all"===t.allow.styles)return e;if("safe"!==t.allow.styles)return null;var l=t.adaptor,s=t.options;try{var f=l.node("div",{style:e}),c=l.node("div");try{for(var u=n(Object.keys(s.safeStyles)),p=u.next();!p.done;p=u.next()){var h=p.value;if(s.styleParts[h])try{for(var y=(i=void 0,n(["Top","Right","Bottom","Left"])),d=y.next();!d.done;d=y.next()){var v,m=h+d.value;(v=this.filterStyle(t,m,f))&&l.setStyle(c,m,v)}}catch(t){i={error:t}}finally{try{d&&!d.done&&(a=y.return)&&a.call(y)}finally{if(i)throw i.error}}else(v=this.filterStyle(t,h,f))&&l.setStyle(c,h,v)}}catch(t){r={error:t}}finally{try{p&&!p.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}e=l.allStyles(c)}catch(t){e=""}return e},filterStyle:function(t,e,r){var n=t.adaptor.getStyle(r,e);if("string"!=typeof n||""===n||n.match(/^\s*calc/)||n.match(/javascript:/)&&!t.options.safeProtocols.javascript||n.match(/data:/)&&!t.options.safeProtocols.data)return null;var o=e.replace(/Top|Right|Left|Bottom/,"");return t.options.safeStyles[e]||t.options.safeStyles[o]?this.filterStyleValue(t,e,n,r):null},filterStyleValue:function(t,e,r,n){var o=t.options.styleLengths[e];if(!o)return r;if("string"!=typeof o)return this.filterStyleLength(t,e,r);var i=this.filterStyleLength(t,o,t.adaptor.getStyle(n,o));return i?(t.adaptor.setStyle(n,o,i),t.adaptor.getStyle(n,e)):null},filterStyleLength:function(t,e,r){if(!r.match(/^(.+)(em|ex|ch|rem|px|mm|cm|in|pt|pc|%)$/))return null;var n=(0,i.length2em)(r,1),a=t.options.styleLengths[e],l=o(Array.isArray(a)?a:[-t.options.lengthMax,t.options.lengthMax],2),s=l[0],f=l[1];return s<=n&&n<=f?r:(n<s?s:f).toFixed(3).replace(/\.?0+$/,"")+"em"},filterFontSize:function(t,e){return this.filterStyleLength(t,"fontSize",e)},filterSizeMultiplier:function(t,e){var r=o(t.options.scriptsizemultiplierRange||[-1/0,1/0],2),n=r[0],i=r[1];return Math.min(i,Math.max(n,parseFloat(e))).toString()},filterScriptLevel:function(t,e){var r=o(t.options.scriptlevelRange||[-1/0,1/0],2),n=r[0],i=r[1];return Math.min(i,Math.max(n,parseInt(e))).toString()},filterData:function(t,e,r){return r.match(t.options.dataPattern)?e:null}}},19290:function(t,e,r){var n=this&&this.__assign||function(){return n=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.apply(this,arguments)},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.Safe=void 0;var i=r(4498),a=r(35230),l=function(){function t(t,e){this.filterAttributes=new Map([["href","filterURL"],["src","filterURL"],["altimg","filterURL"],["class","filterClassList"],["style","filterStyles"],["id","filterID"],["fontsize","filterFontSize"],["mathsize","filterFontSize"],["scriptminsize","filterFontSize"],["scriptsizemultiplier","filterSizeMultiplier"],["scriptlevel","filterScriptLevel"],["data-","filterData"]]),this.filterMethods=n({},a.SafeMethods),this.adaptor=t.adaptor,this.options=e,this.allow=this.options.allow}return t.prototype.sanitize=function(t,e){try{t.root.walkTree(this.sanitizeNode.bind(this))}catch(r){e.options.compileError(e,t,r)}},t.prototype.sanitizeNode=function(t){var e,r,n=t.attributes.getAllAttributes();try{for(var i=o(Object.keys(n)),a=i.next();!a.done;a=i.next()){var l=a.value,s=this.filterAttributes.get(l);if(s){var f=this.filterMethods[s](this,n[l]);f?f!==("number"==typeof f?parseFloat(n[l]):n[l])&&(n[l]=f):delete n[l]}}}catch(t){e={error:t}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}},t.prototype.mmlAttribute=function(t,e){if("class"===t)return null;var r=this.filterAttributes.get(t)||("data-"===t.substr(0,5)?this.filterAttributes.get("data-"):null);if(!r)return e;var n=this.filterMethods[r](this,e,t);return"number"==typeof n||"boolean"==typeof n?String(n):n},t.prototype.mmlClassList=function(t){var e=this;return t.map((function(t){return e.filterMethods.filterClass(e,t)})).filter((function(t){return null!==t}))},t.OPTIONS={allow:{URLs:"safe",classes:"safe",cssIDs:"safe",styles:"safe"},lengthMax:3,scriptsizemultiplierRange:[.6,1],scriptlevelRange:[-2,2],classPattern:/^mjx-[-a-zA-Z0-9_.]+$/,idPattern:/^mjx-[-a-zA-Z0-9_.]+$/,dataPattern:/^data-mjx-/,safeProtocols:(0,i.expandable)({http:!0,https:!0,file:!0,javascript:!1,data:!1}),safeStyles:(0,i.expandable)({color:!0,backgroundColor:!0,border:!0,cursor:!0,margin:!0,padding:!0,textShadow:!0,fontFamily:!0,fontSize:!0,fontStyle:!0,fontWeight:!0,opacity:!0,outline:!0}),styleParts:(0,i.expandable)({border:!0,padding:!0,margin:!0,outline:!0}),styleLengths:(0,i.expandable)({borderTop:"borderTopWidth",borderRight:"borderRightWidth",borderBottom:"borderBottomWidth",borderLeft:"borderLeftWidth",paddingTop:!0,paddingRight:!0,paddingBottom:!0,paddingLeft:!0,marginTop:!0,marginRight:!0,marginBottom:!0,marginLeft:!0,outlineTop:!0,outlineRight:!0,outlineBottom:!0,outlineLeft:!0,fontSize:[.707,1.44]})},t}();e.Safe=l},4498:function(t,e){var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,o,i=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a},o=this&&this.__spreadArray||function(t,e,r){if(r||2===arguments.length)for(var n,o=0,i=e.length;o<i;o++)!n&&o in e||(n||(n=Array.prototype.slice.call(e,0,o)),n[o]=e[o]);return t.concat(n||Array.prototype.slice.call(e))};Object.defineProperty(e,"__esModule",{value:!0}),e.lookup=e.separateOptions=e.selectOptionsFromKeys=e.selectOptions=e.userOptions=e.defaultOptions=e.insert=e.copy=e.keys=e.makeArray=e.expandable=e.Expandable=e.OPTIONS=e.REMOVE=e.APPEND=e.isObject=void 0;var i={}.constructor;function a(t){return"object"==typeof t&&null!==t&&(t.constructor===i||t.constructor===l)}e.isObject=a,e.APPEND="[+]",e.REMOVE="[-]",e.OPTIONS={invalidOption:"warn",optionError:function(t,r){if("fatal"===e.OPTIONS.invalidOption)throw new Error(t);console.warn("MathJax: "+t)}};var l=function(){};function s(t){return Object.assign(Object.create(l.prototype),t)}function f(t){return t?Object.keys(t).concat(Object.getOwnPropertySymbols(t)):[]}function c(t){var e,n,o={};try{for(var i=r(f(t)),p=i.next();!p.done;p=i.next()){var h=p.value,y=Object.getOwnPropertyDescriptor(t,h),d=y.value;Array.isArray(d)?y.value=u([],d,!1):a(d)&&(y.value=c(d)),y.enumerable&&(o[h]=y)}}catch(t){e={error:t}}finally{try{p&&!p.done&&(n=i.return)&&n.call(i)}finally{if(e)throw e.error}}return Object.defineProperties(t.constructor===l?s({}):{},o)}function u(t,i,s){var p,h;void 0===s&&(s=!0);var y=function(r){if(s&&void 0===t[r]&&t.constructor!==l)return"symbol"==typeof r&&(r=r.toString()),e.OPTIONS.optionError('Invalid option "'.concat(r,'" (no default value).'),r),"continue";var p=i[r],h=t[r];if(!a(p)||null===h||"object"!=typeof h&&"function"!=typeof h)Array.isArray(p)?(t[r]=[],u(t[r],p,!1)):a(p)?t[r]=c(p):t[r]=p;else{var y=f(p);Array.isArray(h)&&(1===y.length&&(y[0]===e.APPEND||y[0]===e.REMOVE)&&Array.isArray(p[y[0]])||2===y.length&&y.sort().join(",")===e.APPEND+","+e.REMOVE&&Array.isArray(p[e.APPEND])&&Array.isArray(p[e.REMOVE]))?(p[e.REMOVE]&&(h=t[r]=h.filter((function(t){return p[e.REMOVE].indexOf(t)<0}))),p[e.APPEND]&&(t[r]=o(o([],n(h),!1),n(p[e.APPEND]),!1))):u(h,p,s)}};try{for(var d=r(f(i)),v=d.next();!v.done;v=d.next())y(v.value)}catch(t){p={error:t}}finally{try{v&&!v.done&&(h=d.return)&&h.call(d)}finally{if(p)throw p.error}}return t}function p(t){for(var e,n,o=[],i=1;i<arguments.length;i++)o[i-1]=arguments[i];var a={};try{for(var l=r(o),s=l.next();!s.done;s=l.next()){var f=s.value;t.hasOwnProperty(f)&&(a[f]=t[f])}}catch(t){e={error:t}}finally{try{s&&!s.done&&(n=l.return)&&n.call(l)}finally{if(e)throw e.error}}return a}e.Expandable=l,e.expandable=s,e.makeArray=function(t){return Array.isArray(t)?t:[t]},e.keys=f,e.copy=c,e.insert=u,e.defaultOptions=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return e.forEach((function(e){return u(t,e,!1)})),t},e.userOptions=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return e.forEach((function(e){return u(t,e,!0)})),t},e.selectOptions=p,e.selectOptionsFromKeys=function(t,e){return p.apply(void 0,o([t],n(Object.keys(e)),!1))},e.separateOptions=function(t){for(var e,n,o,i,a=[],l=1;l<arguments.length;l++)a[l-1]=arguments[l];var s=[];try{for(var f=r(a),c=f.next();!c.done;c=f.next()){var u=c.value,p={},h={};try{for(var y=(o=void 0,r(Object.keys(t||{}))),d=y.next();!d.done;d=y.next()){var v=d.value;(void 0===u[v]?h:p)[v]=t[v]}}catch(t){o={error:t}}finally{try{d&&!d.done&&(i=y.return)&&i.call(y)}finally{if(o)throw o.error}}s.push(p),t=h}}catch(t){e={error:t}}finally{try{c&&!c.done&&(n=f.return)&&n.call(f)}finally{if(e)throw e.error}}return s.unshift(t),s},e.lookup=function(t,e,r){return void 0===r&&(r=null),e.hasOwnProperty(t)?e[t]:r}},56780:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.px=e.emRounded=e.em=e.percent=e.length2em=e.MATHSPACE=e.RELUNITS=e.UNITS=e.BIGDIMEN=void 0,e.BIGDIMEN=1e6,e.UNITS={px:1,in:96,cm:96/2.54,mm:96/25.4},e.RELUNITS={em:1,ex:.431,pt:.1,pc:1.2,mu:1/18},e.MATHSPACE={veryverythinmathspace:1/18,verythinmathspace:2/18,thinmathspace:3/18,mediummathspace:4/18,thickmathspace:5/18,verythickmathspace:6/18,veryverythickmathspace:7/18,negativeveryverythinmathspace:-1/18,negativeverythinmathspace:-2/18,negativethinmathspace:-3/18,negativemediummathspace:-4/18,negativethickmathspace:-5/18,negativeverythickmathspace:-6/18,negativeveryverythickmathspace:-7/18,thin:.04,medium:.06,thick:.1,normal:1,big:2,small:1/Math.sqrt(2),infinity:e.BIGDIMEN},e.length2em=function(t,r,n,o){if(void 0===r&&(r=0),void 0===n&&(n=1),void 0===o&&(o=16),"string"!=typeof t&&(t=String(t)),""===t||null==t)return r;if(e.MATHSPACE[t])return e.MATHSPACE[t];var i=t.match(/^\s*([-+]?(?:\.\d+|\d+(?:\.\d*)?))?(pt|em|ex|mu|px|pc|in|mm|cm|%)?/);if(!i)return r;var a=parseFloat(i[1]||"1"),l=i[2];return e.UNITS.hasOwnProperty(l)?a*e.UNITS[l]/o/n:e.RELUNITS.hasOwnProperty(l)?a*e.RELUNITS[l]:"%"===l?a/100*r:a*r},e.percent=function(t){return(100*t).toFixed(1).replace(/\.?0+$/,"")+"%"},e.em=function(t){return Math.abs(t)<.001?"0":t.toFixed(3).replace(/\.?0+$/,"")+"em"},e.emRounded=function(t,e){return void 0===e&&(e=16),t=(Math.round(t*e)+.05)/e,Math.abs(t)<.001?"0em":t.toFixed(3).replace(/\.?0+$/,"")+"em"},e.px=function(t,r,n){return void 0===r&&(r=-e.BIGDIMEN),void 0===n&&(n=16),t*=n,r&&t<r&&(t=r),Math.abs(t)<.1?"0":t.toFixed(1).replace(/\.0$/,"")+"px"}}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8285,4498],{78285:function(t,e,r){var n,o=this&&this.__extends||(n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])},n(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}),i=this&&this.__assign||function(){return i=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},i.apply(this,arguments)},a=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,o,i=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a},l=this&&this.__spreadArray||function(t,e,r){if(r||2===arguments.length)for(var n,o=0,i=e.length;o<i;o++)!n&&o in e||(n||(n=Array.prototype.slice.call(e,0,o)),n[o]=e[o]);return t.concat(n||Array.prototype.slice.call(e))},s=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.SafeHandler=e.SafeMathDocumentMixin=void 0;var f=r(40660);function c(t){var e;return e=function(t){function e(){for(var e,r,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];var i=t.apply(this,l([],a(n),!1))||this;i.safe=new i.options.SafeClass(i,i.options.safeOptions);var f=i.constructor.ProcessBits;f.has("safe")||f.allocate("safe");try{for(var c=s(i.inputJax),u=c.next();!u.done;u=c.next()){var p=u.value;p.name.match(/MathML/)?(p.mathml.filterAttribute=i.safe.mmlAttribute.bind(i.safe),p.mathml.filterClassList=i.safe.mmlClassList.bind(i.safe)):p.name.match(/TeX/)&&p.postFilters.add(i.sanitize.bind(p),-5.5)}}catch(t){e={error:t}}finally{try{u&&!u.done&&(r=c.return)&&r.call(c)}finally{if(e)throw e.error}}return i}return o(e,t),e.prototype.sanitize=function(t){t.math.root=this.parseOptions.root,t.document.safe.sanitize(t.math,t.document)},e}(t),e.OPTIONS=i(i({},t.OPTIONS),{safeOptions:i({},f.Safe.OPTIONS),SafeClass:f.Safe}),e}e.SafeMathDocumentMixin=c,e.SafeHandler=function(t){return t.documentClass=c(t.documentClass),t}},35230:function(t,e,r){var n=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,o,i=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.SafeMethods=void 0;var i=r(56780);e.SafeMethods={filterURL:function(t,e){var r=(e.match(/^\s*([a-z]+):/i)||[null,""])[1].toLowerCase(),n=t.allow.URLs;return"all"===n||"safe"===n&&(t.options.safeProtocols[r]||!r)?e:null},filterClassList:function(t,e){var r=this;return e.trim().replace(/\s\s+/g," ").split(/ /).map((function(e){return r.filterClass(t,e)||""})).join(" ").trim().replace(/\s\s+/g,"")},filterClass:function(t,e){var r=t.allow.classes;return"all"===r||"safe"===r&&e.match(t.options.classPattern)?e:null},filterID:function(t,e){var r=t.allow.cssIDs;return"all"===r||"safe"===r&&e.match(t.options.idPattern)?e:null},filterStyles:function(t,e){var r,o,i,a;if("all"===t.allow.styles)return e;if("safe"!==t.allow.styles)return null;var l=t.adaptor,s=t.options;try{var f=l.node("div",{style:e}),c=l.node("div");try{for(var u=n(Object.keys(s.safeStyles)),p=u.next();!p.done;p=u.next()){var h=p.value;if(s.styleParts[h])try{for(var y=(i=void 0,n(["Top","Right","Bottom","Left"])),d=y.next();!d.done;d=y.next()){var v,m=h+d.value;(v=this.filterStyle(t,m,f))&&l.setStyle(c,m,v)}}catch(t){i={error:t}}finally{try{d&&!d.done&&(a=y.return)&&a.call(y)}finally{if(i)throw i.error}}else(v=this.filterStyle(t,h,f))&&l.setStyle(c,h,v)}}catch(t){r={error:t}}finally{try{p&&!p.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}e=l.allStyles(c)}catch(t){e=""}return e},filterStyle:function(t,e,r){var n=t.adaptor.getStyle(r,e);if("string"!=typeof n||""===n||n.match(/^\s*calc/)||n.match(/javascript:/)&&!t.options.safeProtocols.javascript||n.match(/data:/)&&!t.options.safeProtocols.data)return null;var o=e.replace(/Top|Right|Left|Bottom/,"");return t.options.safeStyles[e]||t.options.safeStyles[o]?this.filterStyleValue(t,e,n,r):null},filterStyleValue:function(t,e,r,n){var o=t.options.styleLengths[e];if(!o)return r;if("string"!=typeof o)return this.filterStyleLength(t,e,r);var i=this.filterStyleLength(t,o,t.adaptor.getStyle(n,o));return i?(t.adaptor.setStyle(n,o,i),t.adaptor.getStyle(n,e)):null},filterStyleLength:function(t,e,r){if(!r.match(/^(.+)(em|ex|ch|rem|px|mm|cm|in|pt|pc|%)$/))return null;var n=(0,i.length2em)(r,1),a=t.options.styleLengths[e],l=o(Array.isArray(a)?a:[-t.options.lengthMax,t.options.lengthMax],2),s=l[0],f=l[1];return s<=n&&n<=f?r:(n<s?s:f).toFixed(3).replace(/\.?0+$/,"")+"em"},filterFontSize:function(t,e){return this.filterStyleLength(t,"fontSize",e)},filterSizeMultiplier:function(t,e){var r=o(t.options.scriptsizemultiplierRange||[-1/0,1/0],2),n=r[0],i=r[1];return Math.min(i,Math.max(n,parseFloat(e))).toString()},filterScriptLevel:function(t,e){var r=o(t.options.scriptlevelRange||[-1/0,1/0],2),n=r[0],i=r[1];return Math.min(i,Math.max(n,parseInt(e))).toString()},filterData:function(t,e,r){return r.match(t.options.dataPattern)?e:null}}},40660:function(t,e,r){var n=this&&this.__assign||function(){return n=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.apply(this,arguments)},o=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(e,"__esModule",{value:!0}),e.Safe=void 0;var i=r(4498),a=r(35230),l=function(){function t(t,e){this.filterAttributes=new Map([["href","filterURL"],["src","filterURL"],["altimg","filterURL"],["class","filterClassList"],["style","filterStyles"],["id","filterID"],["fontsize","filterFontSize"],["mathsize","filterFontSize"],["scriptminsize","filterFontSize"],["scriptsizemultiplier","filterSizeMultiplier"],["scriptlevel","filterScriptLevel"],["data-","filterData"]]),this.filterMethods=n({},a.SafeMethods),this.adaptor=t.adaptor,this.options=e,this.allow=this.options.allow}return t.prototype.sanitize=function(t,e){try{t.root.walkTree(this.sanitizeNode.bind(this))}catch(r){e.options.compileError(e,t,r)}},t.prototype.sanitizeNode=function(t){var e,r,n=t.attributes.getAllAttributes();try{for(var i=o(Object.keys(n)),a=i.next();!a.done;a=i.next()){var l=a.value,s=this.filterAttributes.get(l);if(s){var f=this.filterMethods[s](this,n[l]);f?f!==("number"==typeof f?parseFloat(n[l]):n[l])&&(n[l]=f):delete n[l]}}}catch(t){e={error:t}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}},t.prototype.mmlAttribute=function(t,e){if("class"===t)return null;var r=this.filterAttributes.get(t)||("data-"===t.substr(0,5)?this.filterAttributes.get("data-"):null);if(!r)return e;var n=this.filterMethods[r](this,e,t);return"number"==typeof n||"boolean"==typeof n?String(n):n},t.prototype.mmlClassList=function(t){var e=this;return t.map((function(t){return e.filterMethods.filterClass(e,t)})).filter((function(t){return null!==t}))},t.OPTIONS={allow:{URLs:"safe",classes:"safe",cssIDs:"safe",styles:"safe"},lengthMax:3,scriptsizemultiplierRange:[.6,1],scriptlevelRange:[-2,2],classPattern:/^mjx-[-a-zA-Z0-9_.]+$/,idPattern:/^mjx-[-a-zA-Z0-9_.]+$/,dataPattern:/^data-mjx-/,safeProtocols:(0,i.expandable)({http:!0,https:!0,file:!0,javascript:!1,data:!1}),safeStyles:(0,i.expandable)({color:!0,backgroundColor:!0,border:!0,cursor:!0,margin:!0,padding:!0,textShadow:!0,fontFamily:!0,fontSize:!0,fontStyle:!0,fontWeight:!0,opacity:!0,outline:!0}),styleParts:(0,i.expandable)({border:!0,padding:!0,margin:!0,outline:!0}),styleLengths:(0,i.expandable)({borderTop:"borderTopWidth",borderRight:"borderRightWidth",borderBottom:"borderBottomWidth",borderLeft:"borderLeftWidth",paddingTop:!0,paddingRight:!0,paddingBottom:!0,paddingLeft:!0,marginTop:!0,marginRight:!0,marginBottom:!0,marginLeft:!0,outlineTop:!0,outlineRight:!0,outlineBottom:!0,outlineLeft:!0,fontSize:[.707,1.44]})},t}();e.Safe=l},4498:function(t,e){var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},n=this&&this.__read||function(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,o,i=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a},o=this&&this.__spreadArray||function(t,e,r){if(r||2===arguments.length)for(var n,o=0,i=e.length;o<i;o++)!n&&o in e||(n||(n=Array.prototype.slice.call(e,0,o)),n[o]=e[o]);return t.concat(n||Array.prototype.slice.call(e))};Object.defineProperty(e,"__esModule",{value:!0}),e.lookup=e.separateOptions=e.selectOptionsFromKeys=e.selectOptions=e.userOptions=e.defaultOptions=e.insert=e.copy=e.keys=e.makeArray=e.expandable=e.Expandable=e.OPTIONS=e.REMOVE=e.APPEND=e.isObject=void 0;var i={}.constructor;function a(t){return"object"==typeof t&&null!==t&&(t.constructor===i||t.constructor===l)}e.isObject=a,e.APPEND="[+]",e.REMOVE="[-]",e.OPTIONS={invalidOption:"warn",optionError:function(t,r){if("fatal"===e.OPTIONS.invalidOption)throw new Error(t);console.warn("MathJax: "+t)}};var l=function(){};function s(t){return Object.assign(Object.create(l.prototype),t)}function f(t){return t?Object.keys(t).concat(Object.getOwnPropertySymbols(t)):[]}function c(t){var e,n,o={};try{for(var i=r(f(t)),p=i.next();!p.done;p=i.next()){var h=p.value,y=Object.getOwnPropertyDescriptor(t,h),d=y.value;Array.isArray(d)?y.value=u([],d,!1):a(d)&&(y.value=c(d)),y.enumerable&&(o[h]=y)}}catch(t){e={error:t}}finally{try{p&&!p.done&&(n=i.return)&&n.call(i)}finally{if(e)throw e.error}}return Object.defineProperties(t.constructor===l?s({}):{},o)}function u(t,i,s){var p,h;void 0===s&&(s=!0);var y=function(r){if(s&&void 0===t[r]&&t.constructor!==l)return"symbol"==typeof r&&(r=r.toString()),e.OPTIONS.optionError('Invalid option "'.concat(r,'" (no default value).'),r),"continue";var p=i[r],h=t[r];if(!a(p)||null===h||"object"!=typeof h&&"function"!=typeof h)Array.isArray(p)?(t[r]=[],u(t[r],p,!1)):a(p)?t[r]=c(p):t[r]=p;else{var y=f(p);Array.isArray(h)&&(1===y.length&&(y[0]===e.APPEND||y[0]===e.REMOVE)&&Array.isArray(p[y[0]])||2===y.length&&y.sort().join(",")===e.APPEND+","+e.REMOVE&&Array.isArray(p[e.APPEND])&&Array.isArray(p[e.REMOVE]))?(p[e.REMOVE]&&(h=t[r]=h.filter((function(t){return p[e.REMOVE].indexOf(t)<0}))),p[e.APPEND]&&(t[r]=o(o([],n(h),!1),n(p[e.APPEND]),!1))):u(h,p,s)}};try{for(var d=r(f(i)),v=d.next();!v.done;v=d.next())y(v.value)}catch(t){p={error:t}}finally{try{v&&!v.done&&(h=d.return)&&h.call(d)}finally{if(p)throw p.error}}return t}function p(t){for(var e,n,o=[],i=1;i<arguments.length;i++)o[i-1]=arguments[i];var a={};try{for(var l=r(o),s=l.next();!s.done;s=l.next()){var f=s.value;t.hasOwnProperty(f)&&(a[f]=t[f])}}catch(t){e={error:t}}finally{try{s&&!s.done&&(n=l.return)&&n.call(l)}finally{if(e)throw e.error}}return a}e.Expandable=l,e.expandable=s,e.makeArray=function(t){return Array.isArray(t)?t:[t]},e.keys=f,e.copy=c,e.insert=u,e.defaultOptions=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return e.forEach((function(e){return u(t,e,!1)})),t},e.userOptions=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return e.forEach((function(e){return u(t,e,!0)})),t},e.selectOptions=p,e.selectOptionsFromKeys=function(t,e){return p.apply(void 0,o([t],n(Object.keys(e)),!1))},e.separateOptions=function(t){for(var e,n,o,i,a=[],l=1;l<arguments.length;l++)a[l-1]=arguments[l];var s=[];try{for(var f=r(a),c=f.next();!c.done;c=f.next()){var u=c.value,p={},h={};try{for(var y=(o=void 0,r(Object.keys(t||{}))),d=y.next();!d.done;d=y.next()){var v=d.value;(void 0===u[v]?h:p)[v]=t[v]}}catch(t){o={error:t}}finally{try{d&&!d.done&&(i=y.return)&&i.call(y)}finally{if(o)throw o.error}}s.push(p),t=h}}catch(t){e={error:t}}finally{try{c&&!c.done&&(n=f.return)&&n.call(f)}finally{if(e)throw e.error}}return s.unshift(t),s},e.lookup=function(t,e,r){return void 0===r&&(r=null),e.hasOwnProperty(t)?e[t]:r}},56780:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.px=e.emRounded=e.em=e.percent=e.length2em=e.MATHSPACE=e.RELUNITS=e.UNITS=e.BIGDIMEN=void 0,e.BIGDIMEN=1e6,e.UNITS={px:1,in:96,cm:96/2.54,mm:96/25.4},e.RELUNITS={em:1,ex:.431,pt:.1,pc:1.2,mu:1/18},e.MATHSPACE={veryverythinmathspace:1/18,verythinmathspace:2/18,thinmathspace:3/18,mediummathspace:4/18,thickmathspace:5/18,verythickmathspace:6/18,veryverythickmathspace:7/18,negativeveryverythinmathspace:-1/18,negativeverythinmathspace:-2/18,negativethinmathspace:-3/18,negativemediummathspace:-4/18,negativethickmathspace:-5/18,negativeverythickmathspace:-6/18,negativeveryverythickmathspace:-7/18,thin:.04,medium:.06,thick:.1,normal:1,big:2,small:1/Math.sqrt(2),infinity:e.BIGDIMEN},e.length2em=function(t,r,n,o){if(void 0===r&&(r=0),void 0===n&&(n=1),void 0===o&&(o=16),"string"!=typeof t&&(t=String(t)),""===t||null==t)return r;if(e.MATHSPACE[t])return e.MATHSPACE[t];var i=t.match(/^\s*([-+]?(?:\.\d+|\d+(?:\.\d*)?))?(pt|em|ex|mu|px|pc|in|mm|cm|%)?/);if(!i)return r;var a=parseFloat(i[1]||"1"),l=i[2];return e.UNITS.hasOwnProperty(l)?a*e.UNITS[l]/o/n:e.RELUNITS.hasOwnProperty(l)?a*e.RELUNITS[l]:"%"===l?a/100*r:a*r},e.percent=function(t){return(100*t).toFixed(1).replace(/\.?0+$/,"")+"%"},e.em=function(t){return Math.abs(t)<.001?"0":t.toFixed(3).replace(/\.?0+$/,"")+"em"},e.emRounded=function(t,e){return void 0===e&&(e=16),t=(Math.round(t*e)+.05)/e,Math.abs(t)<.001?"0em":t.toFixed(3).replace(/\.?0+$/,"")+"em"},e.px=function(t,r,n){return void 0===r&&(r=-e.BIGDIMEN),void 0===n&&(n=16),t*=n,r&&t<r&&(t=r),Math.abs(t)<.1?"0":t.toFixed(1).replace(/\.0$/,"")+"px"}}}]);
@@ -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:()=>I,savingStatusPlugin:()=>S});var o,a,r=n(94535),i=n(72703),l=n(65848),d=n(4102),s=n(89150),c=n(58515),u=n(70858),m=n(95291),g=n(33625),p=n(20998),h=n(81997),v=n(63485),f=n(78156),w=n(36199);!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()},isEnabled:()=>0!=s.recentlyOpened.length||0!=s.recentlyClosed.length,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 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 read-only. "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)))}},S={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(S.id,{item:r,align:"middle",isActive:()=>null!==r.model&&null!==r.model.status,activeStateChanged:r.model.stateChanged})}},I={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(I.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,I,S,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
+ "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:()=>I,savingStatusPlugin:()=>S});var o,a,r=n(27961),i=n(15465),l=n(44548),d=n(94624),s=n(87844),c=n(54252),u=n(25291),m=n(12668),g=n(33625),p=n(20998),h=n(81997),v=n(63485),f=n(78156),w=n(93223);!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()},isEnabled:()=>0!=s.recentlyOpened.length||0!=s.recentlyClosed.length,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 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:async 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:async 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 read-only. "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)))}},S={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(S.id,{item:r,align:"middle",isActive:()=>null!==r.model&&null!==r.model.status,activeStateChanged:r.model.stateChanged})}},I={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(I.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,I,S,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(94535),a=o(72703),i=o(50225),r=o(65848),d=o(4102),l=o(89945),s=o(99246),c=o(62514),p=o(89150),u=o(70858),g=o(94978),m=o(51846),h=o(20998),b=o(2549),f=o(63485);const v=new RegExp("/(notebooks|edit)/(.*)"),y=/\.ipynb$/;var k;!function(e){e.duplicate="application:duplicate",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}},_={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})}},E={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(`${E.id} did not find a NotebookShell instance.`);const o=e.shell;return t&&t.load(E.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.duplicate,{label:()=>c.__("Duplicate"),isEnabled:i,execute:async()=>{if(!i())return;const t=await n.duplicate(e.context.path);await s.execute("docmanager:open",{path:t.path})}}),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(27961),a=o(15465),i=o(97040),r=o(44548),d=o(94624),l=o(71120),s=o(2646),c=o(50102),p=o(87844),u=o(25291),g=o(97373),m=o(16971),h=o(20998),b=o(2549),f=o(63485);const v=new RegExp("/(notebooks|edit)/(.*)"),y=/\.ipynb$/;var k;!function(e){e.duplicate="application:duplicate",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}},_={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})}},E={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(`${E.id} did not find a NotebookShell instance.`);const o=e.shell;return t&&t.load(E.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.duplicate,{label:()=>c.__("Duplicate"),isEnabled:i,execute:async()=>{if(!i())return;const t=await n.duplicate(e.context.path);await s.execute("docmanager:open",{path:t.path})}}),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(94535),a=n(72703),o=n(63242),d=n(95291),s=n(62514),c=n(24758),l=n(14088),g=n(89150),u=n(36199),p=n(70858);!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(8326).then(n.t.bind(n,58326,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(8326).then(n.t.bind(n,58326,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(27961),a=n(15465),o=n(52712),d=n(12668),s=n(50102),c=n(25329),l=n(44176),g=n(87844),u=n(93223),p=n(25291);!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(2159).then(n.t.bind(n,62159,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(2159).then(n.t.bind(n,62159,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]},25329:(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(72703),c=n(70858),o=n(95291),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(15465),c=n(25291),o=n(12668),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 +1 @@
1
- (self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8781],{67417:()=>{},60880:(e,n,t)=>{"use strict";t.r(n);var o=t(65848);async function a(e,n){try{const t=(await window._JUPYTERLAB[e].get(n))();return t.__scope__=e,t}catch(t){throw console.warn(`Failed to create module: package: ${e}; module: ${n}`),t}}t(72761),t(67417),window.addEventListener("load",(async function(){const e=[t(56493),t(76185),t(12273),t(45791)],n=await Promise.all(e);let r=[t(76508),t(59912),t(136),t(2065),t(39584),t(19747),t(70748),t(6430).default.filter((({id:e})=>["@jupyterlab/application-extension:commands","@jupyterlab/application-extension:context-menu","@jupyterlab/application-extension:faviconbusy","@jupyterlab/application-extension:router","@jupyterlab/application-extension:top-bar","@jupyterlab/application-extension:top-spacer"].includes(e))),t(13116).default.filter((({id:e})=>["@jupyterlab/apputils-extension:palette","@jupyterlab/apputils-extension:notification","@jupyterlab/apputils-extension:sanitizer","@jupyterlab/apputils-extension:sessionDialogs","@jupyterlab/apputils-extension:settings","@jupyterlab/apputils-extension:state","@jupyterlab/apputils-extension:themes","@jupyterlab/apputils-extension:themes-palette-menu","@jupyterlab/apputils-extension:toolbar-registry","@jupyterlab/apputils-extension:utilityCommands"].includes(e))),t(65738),t(33860).default.filter((({id:e})=>["@jupyterlab/completer-extension:base-service","@jupyterlab/completer-extension:inline-completer","@jupyterlab/completer-extension:inline-completer-factory","@jupyterlab/completer-extension:inline-history","@jupyterlab/completer-extension:manager"].includes(e))),t(65463).default.filter((({id:e})=>["@jupyterlab/console-extension:cell-executor","@jupyterlab/console-extension:completer","@jupyterlab/console-extension:factory","@jupyterlab/console-extension:foreign","@jupyterlab/console-extension:tracker"].includes(e))),t(11142),t(31651).default.filter((({id:e})=>["@jupyterlab/docmanager-extension:plugin","@jupyterlab/docmanager-extension:download","@jupyterlab/docmanager-extension:contexts","@jupyterlab/docmanager-extension:manager"].includes(e))),t(30706).default.filter((({id:e})=>["@jupyterlab/documentsearch-extension:plugin"].includes(e))),t(88311).default.filter((({id:e})=>["@jupyterlab/filebrowser-extension:factory","@jupyterlab/filebrowser-extension:default-file-browser"].includes(e))),t(55805).default.filter((({id:e})=>["@jupyterlab/fileeditor-extension:plugin"].includes(e))),t(60344).default.filter((({id:e})=>["@jupyterlab/help-extension:resources"].includes(e))),t(46219),t(8316),t(33622),t(37574).default.filter((({id:e})=>["@jupyterlab/mainmenu-extension:plugin"].includes(e))),t(26008),t(97509),t(78182),t(94181).default.filter((({id:e})=>["@jupyterlab/notebook-extension:cell-executor","@jupyterlab/notebook-extension:code-console","@jupyterlab/notebook-extension:export","@jupyterlab/notebook-extension:factory","@jupyterlab/notebook-extension:tracker","@jupyterlab/notebook-extension:widget-factory"].includes(e))),t(66103),t(79141),t(27351),t(18570),t(90548),t(84945),t(27415),t(91766),t(85714)];switch(`/${o.PageConfig.getOption("notebookPage")}`){case"/tree":r=r.concat([t(17120),t(88311).default.filter((({id:e})=>["@jupyterlab/filebrowser-extension:browser","@jupyterlab/filebrowser-extension:download","@jupyterlab/filebrowser-extension:file-upload-status","@jupyterlab/filebrowser-extension:open-with","@jupyterlab/filebrowser-extension:search","@jupyterlab/filebrowser-extension:share-file"].includes(e))),t(33272),t(13755).default.filter((({id:e})=>["@jupyterlab/running-extension:plugin"].includes(e))),t(60242)]);break;case"/notebooks":r=r.concat([t(34051),t(5844),t(35843).default.filter((({id:e})=>["@jupyterlab/debugger-extension:config","@jupyterlab/debugger-extension:main","@jupyterlab/debugger-extension:notebooks","@jupyterlab/debugger-extension:service","@jupyterlab/debugger-extension:sidebar","@jupyterlab/debugger-extension:sources"].includes(e))),t(83050),t(94181).default.filter((({id:e})=>["@jupyterlab/notebook-extension:active-cell-tool","@jupyterlab/notebook-extension:completer","@jupyterlab/notebook-extension:copy-output","@jupyterlab/notebook-extension:metadata-editor","@jupyterlab/notebook-extension:search","@jupyterlab/notebook-extension:toc","@jupyterlab/notebook-extension:tools","@jupyterlab/notebook-extension:update-raw-mimetype"].includes(e))),t(79992).default.filter((({id:e})=>["@jupyterlab/toc-extension:registry","@jupyterlab/toc-extension:tracker"].includes(e))),t(88494).default.filter((({id:e})=>["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:notebooks"].includes(e)))]);break;case"/consoles":r=r.concat([t(88494).default.filter((({id:e})=>["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:consoles"].includes(e)))]);break;case"/edit":r=r.concat([t(55805).default.filter((({id:e})=>["@jupyterlab/fileeditor-extension:completer","@jupyterlab/fileeditor-extension:search"].includes(e))),t(82004)])}const i=[],l=[];function*s(e){let n;n=Object.prototype.hasOwnProperty.call(e,"__esModule")?e.default:e;let t=Array.isArray(n)?n:[n];for(let n of t){const t=o.PageConfig.Extension.isDisabled(n.id);l.push({id:n.id,description:n.description,requires:n.requires??[],optional:n.optional??[],provides:n.provides??null,autoStart:n.autoStart,enabled:!t,extension:e.__scope__}),t?i.push(n.id):yield n}}const p=JSON.parse(o.PageConfig.getOption("federated_extensions")),u=[],b=[],d=[],c=[];(await Promise.allSettled(p.map((async e=>(await async function(e,n){await function(e){return new Promise(((n,t)=>{const o=document.createElement("script");o.onerror=t,o.onload=n,o.async=!0,document.head.appendChild(o),o.src=e}))}(e),await t.I("default");const o=window._JUPYTERLAB[n];await o.init(t.S.default)}(`${o.URLExt.join(o.PageConfig.getOption("fullLabextensionsUrl"),e.name,e.load)}`,e.name),e))))).forEach((e=>{if("rejected"===e.status)return void console.error(e.reason);const n=e.value;n.extension&&b.push(a(n.name,n.extension)),n.mimeExtension&&d.push(a(n.name,n.mimeExtension)),n.style&&!o.PageConfig.Extension.isDisabled(n.name)&&c.push(a(n.name,n.style))})),(await Promise.all(r)).forEach((e=>{for(let n of s(e))u.push(n)})),(await Promise.allSettled(b)).forEach((e=>{if("fulfilled"===e.status)for(let n of s(e.value))u.push(n);else console.error(e.reason)})),(await Promise.allSettled(d)).forEach((e=>{if("fulfilled"===e.status)for(let t of s(e.value))n.push(t);else console.error(e.reason)})),(await Promise.allSettled(c)).filter((({status:e})=>"rejected"===e)).forEach((({reason:e})=>{console.error(e)})),o.PageConfig.setOption("allPlugins",'{"/":{"@jupyter-notebook/application-extension":true,"@jupyter-notebook/console-extension":true,"@jupyter-notebook/docmanager-extension":true,"@jupyter-notebook/documentsearch-extension":true,"@jupyter-notebook/help-extension":true,"@jupyter-notebook/notebook-extension":true,"@jupyter-notebook/terminal-extension":true,"@jupyterlab/application-extension":["@jupyterlab/application-extension:commands","@jupyterlab/application-extension:context-menu","@jupyterlab/application-extension:faviconbusy","@jupyterlab/application-extension:router","@jupyterlab/application-extension:top-bar","@jupyterlab/application-extension:top-spacer"],"@jupyterlab/apputils-extension":["@jupyterlab/apputils-extension:palette","@jupyterlab/apputils-extension:notification","@jupyterlab/apputils-extension:sanitizer","@jupyterlab/apputils-extension:sessionDialogs","@jupyterlab/apputils-extension:settings","@jupyterlab/apputils-extension:state","@jupyterlab/apputils-extension:themes","@jupyterlab/apputils-extension:themes-palette-menu","@jupyterlab/apputils-extension:toolbar-registry","@jupyterlab/apputils-extension:utilityCommands"],"@jupyterlab/codemirror-extension":true,"@jupyterlab/completer-extension":["@jupyterlab/completer-extension:base-service","@jupyterlab/completer-extension:inline-completer","@jupyterlab/completer-extension:inline-completer-factory","@jupyterlab/completer-extension:inline-history","@jupyterlab/completer-extension:manager"],"@jupyterlab/console-extension":["@jupyterlab/console-extension:cell-executor","@jupyterlab/console-extension:completer","@jupyterlab/console-extension:factory","@jupyterlab/console-extension:foreign","@jupyterlab/console-extension:tracker"],"@jupyterlab/csvviewer-extension":true,"@jupyterlab/docmanager-extension":["@jupyterlab/docmanager-extension:plugin","@jupyterlab/docmanager-extension:download","@jupyterlab/docmanager-extension:contexts","@jupyterlab/docmanager-extension:manager"],"@jupyterlab/documentsearch-extension":["@jupyterlab/documentsearch-extension:plugin"],"@jupyterlab/filebrowser-extension":["@jupyterlab/filebrowser-extension:factory","@jupyterlab/filebrowser-extension:default-file-browser"],"@jupyterlab/fileeditor-extension":["@jupyterlab/fileeditor-extension:plugin"],"@jupyterlab/help-extension":["@jupyterlab/help-extension:resources"],"@jupyterlab/htmlviewer-extension":true,"@jupyterlab/imageviewer-extension":true,"@jupyterlab/lsp-extension":true,"@jupyterlab/mainmenu-extension":["@jupyterlab/mainmenu-extension:plugin"],"@jupyterlab/markedparser-extension":true,"@jupyterlab/mathjax-extension":true,"@jupyterlab/mermaid-extension":true,"@jupyterlab/notebook-extension":["@jupyterlab/notebook-extension:cell-executor","@jupyterlab/notebook-extension:code-console","@jupyterlab/notebook-extension:export","@jupyterlab/notebook-extension:factory","@jupyterlab/notebook-extension:tracker","@jupyterlab/notebook-extension:widget-factory"],"@jupyterlab/pluginmanager-extension":true,"@jupyterlab/shortcuts-extension":true,"@jupyterlab/terminal-extension":true,"@jupyterlab/theme-light-extension":true,"@jupyterlab/theme-dark-extension":true,"@jupyterlab/theme-dark-high-contrast-extension":true,"@jupyterlab/translation-extension":true,"@jupyterlab/ui-components-extension":true,"@jupyterlab/hub-extension":true},"/tree":{"@jupyterlab/extensionmanager-extension":true,"@jupyterlab/filebrowser-extension":["@jupyterlab/filebrowser-extension:browser","@jupyterlab/filebrowser-extension:download","@jupyterlab/filebrowser-extension:file-upload-status","@jupyterlab/filebrowser-extension:open-with","@jupyterlab/filebrowser-extension:search","@jupyterlab/filebrowser-extension:share-file"],"@jupyter-notebook/tree-extension":true,"@jupyterlab/running-extension":["@jupyterlab/running-extension:plugin"],"@jupyterlab/settingeditor-extension":true},"/notebooks":{"@jupyterlab/celltags-extension":true,"@jupyterlab/cell-toolbar-extension":true,"@jupyterlab/debugger-extension":["@jupyterlab/debugger-extension:config","@jupyterlab/debugger-extension:main","@jupyterlab/debugger-extension:notebooks","@jupyterlab/debugger-extension:service","@jupyterlab/debugger-extension:sidebar","@jupyterlab/debugger-extension:sources"],"@jupyterlab/metadataform-extension":true,"@jupyterlab/notebook-extension":["@jupyterlab/notebook-extension:active-cell-tool","@jupyterlab/notebook-extension:completer","@jupyterlab/notebook-extension:copy-output","@jupyterlab/notebook-extension:metadata-editor","@jupyterlab/notebook-extension:search","@jupyterlab/notebook-extension:toc","@jupyterlab/notebook-extension:tools","@jupyterlab/notebook-extension:update-raw-mimetype"],"@jupyterlab/toc-extension":["@jupyterlab/toc-extension:registry","@jupyterlab/toc-extension:tracker"],"@jupyterlab/tooltip-extension":["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:notebooks"]},"/consoles":{"@jupyterlab/tooltip-extension":["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:consoles"]},"/edit":{"@jupyterlab/fileeditor-extension":["@jupyterlab/fileeditor-extension:completer","@jupyterlab/fileeditor-extension:search"],"@jupyterlab/markdownviewer-extension":true}}');const j=new(0,t(94978).NotebookApp)({mimeExtensions:n,availablePlugins:l});j.registerPluginModules(u),"true"===(o.PageConfig.getOption("exposeAppInBrowser")||"").toLowerCase()&&(window.jupyterapp=j),await j.start()}))},72761:(e,n,t)=>{"use strict";t.r(n),t(71818),t(70022),t(26238);var o=t(94830),a=t.n(o),r=t(80592),i=t.n(r),l=t(99763),s=t.n(l),p=t(28915),u=t.n(p),b=t(80366),d=t.n(b),c=t(17352),j=t.n(c),m=t(26633),y={};y.styleTagTransform=j(),y.setAttributes=u(),y.insert=s().bind(null,"head"),y.domAPI=i(),y.insertStyleElement=d(),a()(m.Z,y),m.Z&&m.Z.locals&&m.Z.locals;var x=t(93862),g={};g.styleTagTransform=j(),g.setAttributes=u(),g.insert=s().bind(null,"head"),g.domAPI=i(),g.insertStyleElement=d(),a()(x.Z,g),x.Z&&x.Z.locals&&x.Z.locals,t(20959);var h=t(58027),f={};f.styleTagTransform=j(),f.setAttributes=u(),f.insert=s().bind(null,"head"),f.domAPI=i(),f.insertStyleElement=d(),a()(h.Z,f),h.Z&&h.Z.locals&&h.Z.locals;var A=t(99776),k={};k.styleTagTransform=j(),k.setAttributes=u(),k.insert=s().bind(null,"head"),k.domAPI=i(),k.insertStyleElement=d(),a()(A.Z,k),A.Z&&A.Z.locals&&A.Z.locals;var v=t(64399),w={};w.styleTagTransform=j(),w.setAttributes=u(),w.insert=s().bind(null,"head"),w.domAPI=i(),w.insertStyleElement=d(),a()(v.Z,w),v.Z&&v.Z.locals&&v.Z.locals;var T=t(11112),P={};P.styleTagTransform=j(),P.setAttributes=u(),P.insert=s().bind(null,"head"),P.domAPI=i(),P.insertStyleElement=d(),a()(T.Z,P),T.Z&&T.Z.locals&&T.Z.locals;var Z=t(49482),B={};B.styleTagTransform=j(),B.setAttributes=u(),B.insert=s().bind(null,"head"),B.domAPI=i(),B.insertStyleElement=d(),a()(Z.Z,B),Z.Z&&Z.Z.locals&&Z.Z.locals;var S=t(71564),C={};C.styleTagTransform=j(),C.setAttributes=u(),C.insert=s().bind(null,"head"),C.domAPI=i(),C.insertStyleElement=d(),a()(S.Z,C),S.Z&&S.Z.locals&&S.Z.locals;var N=t(8173),E={};E.styleTagTransform=j(),E.setAttributes=u(),E.insert=s().bind(null,"head"),E.domAPI=i(),E.insertStyleElement=d(),a()(N.Z,E),N.Z&&N.Z.locals&&N.Z.locals,t(40360);var D=t(30546),z={};z.styleTagTransform=j(),z.setAttributes=u(),z.insert=s().bind(null,"head"),z.domAPI=i(),z.insertStyleElement=d(),a()(D.Z,z),D.Z&&D.Z.locals&&D.Z.locals;var F=t(94623),L={};L.styleTagTransform=j(),L.setAttributes=u(),L.insert=s().bind(null,"head"),L.domAPI=i(),L.insertStyleElement=d(),a()(F.Z,L),F.Z&&F.Z.locals&&F.Z.locals;var M=t(99402),I={};I.styleTagTransform=j(),I.setAttributes=u(),I.insert=s().bind(null,"head"),I.domAPI=i(),I.insertStyleElement=d(),a()(M.Z,I),M.Z&&M.Z.locals&&M.Z.locals,t(32723),t(82649),t(15491),t(92645),t(18934),t(24017),t(72867),t(93751),t(75617),t(91532),t(20603),t(17066),t(39380),t(9755),t(82164),t(94938),t(53555),t(86258),t(11575),t(10887),t(26449),t(3727),t(97635),t(16856),t(46165),t(8604),t(26053),t(84221),t(53927),t(67074),t(47275),t(58068),t(41346),t(74768),t(65315),t(87635),t(37609),t(49733),t(40745)},58027:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n|\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n.jp-NotebookSpacer {\n flex-grow: 1;\n flex-shrink: 1;\n}\n\n.jp-MainAreaWidget {\n height: 100%;\n}\n\n.jp-Toolbar > .jp-Toolbar-item {\n height: unset;\n}\n\n#jp-UserMenu {\n flex: 0 0 auto;\n display: flex;\n text-align: center;\n margin-top: 8px;\n}\n\n.jp-MimeDocument .jp-RenderedJSON {\n background: var(--jp-layout-color0);\n}\n\n/* Hide the stub toolbar that appears above terminals and documents */\n\n.jp-MainAreaWidget > .jp-Toolbar-micro {\n display: none;\n}\n\n#jp-NotebookLogo {\n /* bring logo to the front so it is selectable by tab*/\n z-index: 10;\n}\n\n/* Hide the notification status item */\n.jp-Notification-Status {\n display: none;\n}\n",""]);const l=i},26633:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n:root {\n --jp-private-topbar-height: 28px;\n /* Override the layout-2 color for the dark theme */\n --md-grey-800: #323232;\n --jp-notebook-max-width: 1200px;\n}\n\nbody {\n margin: 0;\n padding: 0;\n background: var(--jp-layout-color2);\n}\n\n#main {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n\n#top-panel-wrapper {\n min-height: calc(1.5 * var(--jp-private-topbar-height));\n border-bottom: var(--jp-border-width) solid var(--jp-border-color0);\n background: var(--jp-layout-color1);\n}\n\n#top-panel {\n display: flex;\n min-height: calc(1.5 * var(--jp-private-topbar-height));\n padding-left: 5px;\n padding-right: 5px;\n margin-left: auto;\n margin-right: auto;\n max-width: 1200px;\n}\n\n#menu-panel-wrapper {\n min-height: var(--jp-private-topbar-height);\n background: var(--jp-layout-color1);\n border-bottom: var(--jp-border-width) solid var(--jp-border-color0);\n box-shadow: var(--jp-elevation-z1);\n}\n\n#menu-panel {\n display: flex;\n min-height: var(--jp-private-topbar-height);\n background: var(--jp-layout-color1);\n padding-left: 5px;\n padding-right: 5px;\n margin-left: auto;\n margin-right: auto;\n max-width: var(--jp-notebook-max-width);\n}\n\n#main-panel {\n margin-left: auto;\n margin-right: auto;\n max-width: var(--jp-notebook-max-width);\n}\n\n#spacer-widget-top {\n min-height: 16px;\n}\n\n/* Only edit pages should have a bottom space */\n\nbody[data-notebook='edit'] #spacer-widget-bottom {\n min-height: 16px;\n}\n\n/* Special case notebooks as document oriented pages */\n\n[data-notebook]:not(body[data-notebook='notebooks']) #main-panel {\n box-shadow: var(--jp-elevation-z4);\n}\n\n.jp-TreePanel > .lm-TabPanel-stackedPanel {\n box-shadow: var(--jp-elevation-z4);\n}\n\nbody[data-notebook='notebooks'] #main-panel {\n margin-left: unset;\n margin-right: unset;\n max-width: unset;\n}\n\nbody[data-notebook='notebooks'] #spacer-widget-top {\n min-height: unset;\n}\n\n#main-panel > .jp-TreePanel {\n padding: 0px 5px;\n}\n\n@media only screen and (max-width: 760px) {\n #main-panel > .jp-TreePanel {\n margin: 0px -5px;\n }\n}\n",""]);const l=i},93862:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n| Distributed under the terms of the Modified BSD License.\n|\n| Adapted from JupyterLab's packages/application/style/sidepanel.css.\n|----------------------------------------------------------------------------*/\n\n/*-----------------------------------------------------------------------------\n| Variables\n|----------------------------------------------------------------------------*/\n\n:root {\n --jp-private-sidebar-tab-width: 32px;\n}\n\n/*-----------------------------------------------------------------------------\n| SideBar\n|----------------------------------------------------------------------------*/\n\n/* Stack panels */\n\n#jp-right-stack,\n#jp-left-stack {\n display: flex;\n flex-direction: column;\n min-width: var(--jp-sidebar-min-width);\n}\n\n#jp-left-stack .jp-SidePanel-collapse,\n#jp-right-stack .jp-SidePanel-collapse {\n display: flex;\n flex: 0 0 auto;\n min-height: 0;\n padding: 0;\n}\n\n#jp-left-stack .jp-SidePanel-collapse {\n justify-content: right;\n}\n\n#jp-right-stack .jp-SidePanel-collapse {\n justify-content: left;\n}\n\n#jp-left-stack .lm-StackedPanel,\n#jp-right-stack .lm-StackedPanel {\n flex: 1 1 auto;\n}\n",""]);const l=i},99776:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},64399:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,".jp-Document {\n height: 100%;\n}\n",""]);const l=i},11112:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},49482:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,".jp-AboutNotebook .jp-Dialog-header {\n justify-content: center;\n padding: 0;\n}\n\n.jp-AboutNotebook-header {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: var(--jp-flat-button-padding);\n}\n\n.jp-AboutNotebook-header-text {\n margin-left: 16px;\n}\n\n.jp-AboutNotebook-version {\n color: var(--jp-ui-font-color1);\n font-size: var(--jp-ui-font-size1);\n padding-bottom: 30px;\n font-weight: 400;\n letter-spacing: 0.4px;\n line-height: 1.12;\n min-width: 360px;\n text-align: center;\n}\n\n.jp-AboutNotebook-body {\n display: flex;\n font-size: var(--jp-ui-font-size2);\n padding: var(--jp-flat-button-padding);\n color: var(--jp-ui-font-color1);\n text-align: center;\n flex-direction: column;\n min-width: 360px;\n overflow: hidden;\n}\n\n.jp-AboutNotebook-about-body pre {\n white-space: pre-wrap;\n}\n\n.jp-AboutNotebook-about-externalLinks {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: flex-start;\n color: var(--jp-warn-color0);\n}\n\n.jp-AboutNotebook-about-copyright {\n padding-top: 25px;\n}\n",""]);const l=i},71564:(e,n,t)=>{"use strict";t.d(n,{Z:()=>p});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r),l=t(99686),s=i()(a());s.i(l.Z),s.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n|\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n/**\n Document oriented look for the notebook.\n This includes changes to the look and feel of the JupyterLab Notebook\n component like:\n - scrollbar to the right of the page\n - drop shadow on the notebook\n - smaller empty space at the bottom of the notebook\n - compact view on mobile\n*/\n\n/* Keep the notebook centered on the page */\n\nbody[data-notebook='notebooks'] .jp-NotebookPanel-toolbar {\n padding-left: calc(calc(100% - var(--jp-notebook-max-width)) * 0.5);\n padding-right: calc(calc(100% - var(--jp-notebook-max-width)) * 0.5);\n}\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-outer {\n width: unset !important;\n padding-top: unset;\n padding-left: calc(calc(100% - var(--jp-notebook-max-width)) * 0.5);\n padding-right: calc(\n calc(\n 100% - var(--jp-notebook-max-width) - var(--jp-notebook-padding-offset)\n ) * 0.5\n ) !important;\n background: var(--jp-layout-color2);\n}\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-inner {\n margin-top: var(--jp-notebook-toolbar-margin-bottom);\n /* Adjustments for the extra top and bottom notebook padding */\n margin-bottom: calc(4 * var(--jp-notebook-padding));\n}\n\nbody[data-notebook='notebooks'] .jp-Notebook-cell {\n background: var(--jp-layout-color0);\n padding-left: calc(2 * var(--jp-cell-padding));\n padding-right: calc(2 * var(--jp-cell-padding));\n}\n\n/* Empty space at the bottom of the notebook (similar to classic) */\nbody[data-notebook='notebooks']\n .jp-Notebook.jp-mod-scrollPastEnd\n .jp-WindowedPanel-outer::after {\n min-height: 100px;\n}\n\n/* Fix background colors */\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-outer > * {\n background: var(--jp-layout-color0);\n}\n\nbody[data-notebook='notebooks']\n .jp-Notebook.jp-mod-commandMode\n .jp-Cell.jp-mod-active.jp-mod-selected:not(.jp-mod-multiSelected) {\n background: var(--jp-layout-color0) !important;\n}\n\nbody[data-notebook='notebooks']\n .jp-Notebook\n .jp-Notebook-cell:not(:first-child)::before {\n content: ' ';\n height: 100%;\n position: absolute;\n top: 0;\n width: 11px;\n}\n\n/* Cell toolbar adjustments */\n\nbody[data-notebook='notebooks'] .jp-cell-toolbar {\n background: unset;\n box-shadow: unset;\n}\n\n/** first code cell on mobile\n (keep the selector above the media query)\n*/\nbody[data-notebook='notebooks']\n .jp-CodeCell[data-windowed-list-index='0']\n .jp-cell-toolbar {\n top: unset;\n}\n\n@media only screen and (max-width: 760px) {\n /* first code cell on mobile */\n body[data-notebook='notebooks']\n .jp-CodeCell[data-windowed-list-index='0']\n .jp-cell-toolbar {\n top: var(--jp-notebook-padding);\n }\n\n body[data-notebook='notebooks'] .jp-MarkdownCell .jp-cell-toolbar,\n body[data-notebook='notebooks'] .jp-RawCell .jp-cell-toolbar {\n top: calc(0.5 * var(--jp-notebook-padding));\n }\n}\n\n/* Tweak the notebook footer (to add a new cell) */\nbody[data-notebook='notebooks'] .jp-Notebook-footer {\n background: unset;\n width: 100%;\n margin-left: unset;\n}\n\n/* Mobile View */\n\nbody[data-format='mobile'] .jp-NotebookCheckpoint {\n display: none;\n}\n\nbody[data-format='mobile'] .jp-WindowedPanel-outer > *:first-child {\n margin-top: 0;\n}\n\nbody[data-format='mobile'] .jp-ToolbarButton .jp-DebuggerBugButton {\n display: none;\n}\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-viewport {\n background: var(--jp-layout-color0);\n box-shadow: var(--jp-elevation-z4);\n padding: unset;\n\n /* Extra padding at the top and bottom so the notebook looks nicer */\n padding-top: calc(2 * var(--jp-notebook-padding));\n padding-bottom: calc(2 * var(--jp-notebook-padding));\n}\n\n/* Notebook box shadow */\n\nbody[data-notebook='notebooks']\n .jp-Notebook\n > *:first-child:last-child::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n box-shadow: 0px 0px 12px 1px var(--jp-shadow-umbra-color);\n}\n\nbody[data-notebook='notebooks']\n .jp-Notebook\n .jp-Notebook-cell:not(:first-child)::after,\nbody[data-notebook='notebooks']\n .jp-Notebook\n .jp-Notebook-cell:not(:first-child)::before {\n content: ' ';\n height: 100%;\n position: absolute;\n top: 0;\n width: 11px;\n}\n\n/* Additional customizations of the components on the notebook page */\n\n.jp-NotebookKernelLogo {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n text-align: center;\n margin-right: 8px;\n}\n\n.jp-NotebookKernelLogo img {\n max-width: 28px;\n max-height: 28px;\n display: flex;\n}\n\n.jp-NotebookKernelStatus {\n margin: 0;\n font-weight: normal;\n font-size: var(--jp-ui-font-size1);\n color: var(--jp-ui-font-color0);\n font-family: var(--jp-ui-font-family);\n line-height: var(--jp-private-title-panel-height);\n padding-left: var(--jp-kernel-status-padding);\n padding-right: var(--jp-kernel-status-padding);\n}\n\n.jp-NotebookKernelStatus-error {\n background-color: var(--jp-error-color0);\n}\n\n.jp-NotebookKernelStatus-warn {\n background-color: var(--jp-warn-color0);\n}\n\n.jp-NotebookKernelStatus-info {\n background-color: var(--jp-info-color0);\n}\n\n.jp-NotebookKernelStatus-fade {\n animation: 0.5s fade-out forwards;\n}\n\n.jp-NotebookTrustedStatus {\n background: var(--jp-layout-color1);\n color: var(--jp-ui-font-color1);\n margin-top: 4px;\n margin-bottom: 4px;\n border: solid 1px var(--jp-border-color2);\n cursor: help;\n}\n\n.jp-NotebookTrustedStatus-not-trusted {\n cursor: pointer;\n}\n\n@keyframes fade-out {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n\n#jp-title h1 {\n cursor: pointer;\n font-size: 18px;\n margin: 0;\n font-weight: normal;\n color: var(--jp-ui-font-color0);\n font-family: var(--jp-ui-font-family);\n line-height: calc(1.5 * var(--jp-private-title-panel-height));\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n\n#jp-title h1:hover {\n background: var(--jp-layout-color2);\n}\n\n.jp-NotebookCheckpoint {\n font-size: 14px;\n margin-left: 5px;\n margin-right: 5px;\n font-weight: normal;\n color: var(--jp-ui-font-color0);\n font-family: var(--jp-ui-font-family);\n line-height: calc(1.5 * var(--jp-private-title-panel-height));\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n\n.jp-skiplink {\n position: absolute;\n top: -100em;\n}\n\n.jp-skiplink:focus-within {\n position: absolute;\n z-index: 10000;\n top: 0;\n left: 46%;\n margin: 0 auto;\n padding: 1em;\n width: 15%;\n box-shadow: var(--jp-elevation-z4);\n border-radius: 4px;\n background: var(--jp-layout-color0);\n text-align: center;\n}\n\n.jp-skiplink:focus-within a {\n text-decoration: underline;\n color: var(--jp-content-link-color);\n}\n",""]);const p=s},99686:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,":root {\n --jp-notebook-toolbar-margin-bottom: 20px;\n --jp-notebook-padding-offset: 20px;\n\n --jp-kernel-status-padding: 5px;\n}\n",""]);const l=i},8173:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},94623:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n|\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n.jp-FileBrowser-toolbar .jp-Toolbar-item.jp-DropdownMenu,\n.jp-FileBrowser-toolbar .jp-Toolbar-item.jp-ToolbarButton,\n.jp-FileBrowser-toolbar .jp-Toolbar-item.jp-CommandToolbarButton {\n border: solid 1px var(--jp-border-color2);\n margin: 1px;\n padding: 0px;\n}\n\n.jp-FileBrowser-toolbar > .jp-Toolbar-item.jp-ToolbarButton:hover,\n.jp-FileBrowser-toolbar > .jp-Toolbar-item.jp-CommandToolbarButton:hover,\n.jp-FileBrowser-toolbar > .jp-Toolbar-item.jp-DropdownMenu:hover {\n background: var(--neutral-fill-stealth-hover);\n}\n\n.jp-FileBrowser-toolbar .lm-MenuBar-item {\n height: var(--jp-private-toolbar-height);\n display: inline-flex;\n align-items: center;\n}\n\n.jp-FileBrowser-toolbar .jp-ToolbarButtonComponent {\n height: var(--jp-flat-button-height);\n}\n\n.jp-FileBrowser-toolbar jp-button.jp-ToolbarButtonComponent:hover {\n background: inherit;\n}\n\n.jp-FileBrowser-filterBox {\n padding: 0;\n flex: 0 0 auto;\n}\n\n.jp-FileBrowser-filterBox input {\n line-height: 24px;\n}\n\n.jp-DirListing-content .jp-DirListing-checkboxWrapper {\n visibility: visible;\n}\n\n/* Action buttons */\n\n.jp-FileBrowser-toolbar > .jp-FileAction > .jp-ToolbarButtonComponent > svg {\n display: none;\n}\n\n.jp-FileBrowser-toolbar > #fileAction-delete {\n background-color: var(--jp-error-color1);\n}\n\n.jp-FileBrowser-toolbar\n .jp-ToolbarButtonComponent[data-command='filebrowser:delete']\n .jp-ToolbarButtonComponent-label {\n color: var(--jp-ui-inverse-font-color1);\n}\n\n.jp-FileBrowser-toolbar .jp-FileAction {\n border: solid 1px var(--jp-border-color2);\n margin: 1px;\n min-height: var(--jp-private-toolbar-height);\n}\n",""]);const l=i},30546:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,".jp-FileBrowser {\n height: 100%;\n}\n\n.lm-TabPanel {\n height: 100%;\n}\n\n.jp-TreePanel .lm-TabPanel-tabBar {\n overflow: visible;\n min-height: 32px;\n border-bottom: unset;\n height: var(--jp-private-toolbar-height);\n}\n\n.jp-TreePanel .lm-TabBar-content {\n height: 100%;\n}\n\n.jp-TreePanel .lm-TabBar-tab {\n flex: 0 1 auto;\n color: var(--jp-ui-font-color0);\n font-size: var(--jp-ui-font-size1);\n height: 100%;\n}\n\n.jp-TreePanel .lm-TabBar-tabLabel {\n padding-left: 5px;\n padding-right: 5px;\n}\n\n.jp-FileBrowser-toolbar.jp-Toolbar .jp-ToolbarButtonComponent {\n width: unset;\n}\n\n.jp-FileBrowser-toolbar > .jp-Toolbar-item {\n flex-direction: column;\n justify-content: center;\n}\n\n.jp-DropdownMenu .lm-MenuBar-itemIcon svg {\n vertical-align: sub;\n}\n\njp-button[data-command='filebrowser:refresh'] .jp-ToolbarButtonComponent-label {\n display: none;\n}\n\n.jp-TreePanel .lm-TabBar-tabIcon svg {\n vertical-align: sub;\n}\n",""]);const l=i},99402:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},7413:e=>{"use strict";e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAsElEQVQIHQGlAFr/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7+r3zKmT0/+pk9P/7+r3zAAAAAAAAAAABAAAAAAAAAAA6OPzM+/q9wAAAAAA6OPzMwAAAAAAAAAAAgAAAAAAAAAAGR8NiRQaCgAZIA0AGR8NiQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQyoYJ/SY80UAAAAASUVORK5CYII="}}]);
1
+ (self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8781],{67417:()=>{},60880:(e,n,t)=>{"use strict";t.r(n);var o=t(44548);async function a(e,n){try{const t=(await window._JUPYTERLAB[e].get(n))();return t.__scope__=e,t}catch(t){throw console.warn(`Failed to create module: package: ${e}; module: ${n}`),t}}t(72761),t(67417),window.addEventListener("load",(async function(){const e=[t(12220),t(85048),t(2442),t(21328)],n=await Promise.all(e);let r=[t(80597),t(81773),t(7285),t(29522),t(72466),t(80213),t(70787),t(47224).default.filter((({id:e})=>["@jupyterlab/application-extension:commands","@jupyterlab/application-extension:context-menu","@jupyterlab/application-extension:faviconbusy","@jupyterlab/application-extension:router","@jupyterlab/application-extension:top-bar","@jupyterlab/application-extension:top-spacer"].includes(e))),t(52667).default.filter((({id:e})=>["@jupyterlab/apputils-extension:palette","@jupyterlab/apputils-extension:notification","@jupyterlab/apputils-extension:sanitizer","@jupyterlab/apputils-extension:sessionDialogs","@jupyterlab/apputils-extension:settings","@jupyterlab/apputils-extension:state","@jupyterlab/apputils-extension:themes","@jupyterlab/apputils-extension:themes-palette-menu","@jupyterlab/apputils-extension:toolbar-registry","@jupyterlab/apputils-extension:utilityCommands"].includes(e))),t(58084),t(8256).default.filter((({id:e})=>["@jupyterlab/completer-extension:base-service","@jupyterlab/completer-extension:inline-completer","@jupyterlab/completer-extension:inline-completer-factory","@jupyterlab/completer-extension:inline-history","@jupyterlab/completer-extension:manager"].includes(e))),t(17470).default.filter((({id:e})=>["@jupyterlab/console-extension:cell-executor","@jupyterlab/console-extension:completer","@jupyterlab/console-extension:factory","@jupyterlab/console-extension:foreign","@jupyterlab/console-extension:tracker"].includes(e))),t(17405),t(96124).default.filter((({id:e})=>["@jupyterlab/docmanager-extension:plugin","@jupyterlab/docmanager-extension:download","@jupyterlab/docmanager-extension:contexts","@jupyterlab/docmanager-extension:manager"].includes(e))),t(62961).default.filter((({id:e})=>["@jupyterlab/documentsearch-extension:plugin"].includes(e))),t(40554).default.filter((({id:e})=>["@jupyterlab/filebrowser-extension:factory","@jupyterlab/filebrowser-extension:default-file-browser"].includes(e))),t(1498).default.filter((({id:e})=>["@jupyterlab/fileeditor-extension:plugin"].includes(e))),t(52081).default.filter((({id:e})=>["@jupyterlab/help-extension:resources"].includes(e))),t(38452),t(58112),t(18122),t(38873).default.filter((({id:e})=>["@jupyterlab/mainmenu-extension:plugin"].includes(e))),t(53918),t(24758),t(53022),t(54418).default.filter((({id:e})=>["@jupyterlab/notebook-extension:cell-executor","@jupyterlab/notebook-extension:code-console","@jupyterlab/notebook-extension:export","@jupyterlab/notebook-extension:factory","@jupyterlab/notebook-extension:tracker","@jupyterlab/notebook-extension:widget-factory"].includes(e))),t(47438),t(52794),t(28372),t(74563),t(52397),t(4346),t(52603),t(90977),t(62325)];switch(`/${o.PageConfig.getOption("notebookPage")}`){case"/tree":r=r.concat([t(1907),t(40554).default.filter((({id:e})=>["@jupyterlab/filebrowser-extension:browser","@jupyterlab/filebrowser-extension:download","@jupyterlab/filebrowser-extension:file-upload-status","@jupyterlab/filebrowser-extension:open-with","@jupyterlab/filebrowser-extension:search","@jupyterlab/filebrowser-extension:share-file"].includes(e))),t(3724),t(47521).default.filter((({id:e})=>["@jupyterlab/running-extension:plugin"].includes(e))),t(91589)]);break;case"/notebooks":r=r.concat([t(62773),t(72610),t(27126).default.filter((({id:e})=>["@jupyterlab/debugger-extension:config","@jupyterlab/debugger-extension:main","@jupyterlab/debugger-extension:notebooks","@jupyterlab/debugger-extension:service","@jupyterlab/debugger-extension:sidebar","@jupyterlab/debugger-extension:sources"].includes(e))),t(59197),t(54418).default.filter((({id:e})=>["@jupyterlab/notebook-extension:active-cell-tool","@jupyterlab/notebook-extension:completer","@jupyterlab/notebook-extension:copy-output","@jupyterlab/notebook-extension:metadata-editor","@jupyterlab/notebook-extension:search","@jupyterlab/notebook-extension:toc","@jupyterlab/notebook-extension:tools","@jupyterlab/notebook-extension:update-raw-mimetype"].includes(e))),t(8190).default.filter((({id:e})=>["@jupyterlab/toc-extension:registry","@jupyterlab/toc-extension:tracker"].includes(e))),t(89738).default.filter((({id:e})=>["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:notebooks"].includes(e)))]);break;case"/consoles":r=r.concat([t(89738).default.filter((({id:e})=>["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:consoles"].includes(e)))]);break;case"/edit":r=r.concat([t(1498).default.filter((({id:e})=>["@jupyterlab/fileeditor-extension:completer","@jupyterlab/fileeditor-extension:search"].includes(e))),t(44027)])}const i=[],l=[];function*s(e){let n;n=Object.prototype.hasOwnProperty.call(e,"__esModule")?e.default:e;let t=Array.isArray(n)?n:[n];for(let n of t){const t=o.PageConfig.Extension.isDisabled(n.id);l.push({id:n.id,description:n.description,requires:n.requires??[],optional:n.optional??[],provides:n.provides??null,autoStart:n.autoStart,enabled:!t,extension:e.__scope__}),t?i.push(n.id):yield n}}const p=JSON.parse(o.PageConfig.getOption("federated_extensions")),u=[],b=[],d=[],c=[];(await Promise.allSettled(p.map((async e=>(await async function(e,n){await function(e){return new Promise(((n,t)=>{const o=document.createElement("script");o.onerror=t,o.onload=n,o.async=!0,document.head.appendChild(o),o.src=e}))}(e),await t.I("default");const o=window._JUPYTERLAB[n];await o.init(t.S.default)}(`${o.URLExt.join(o.PageConfig.getOption("fullLabextensionsUrl"),e.name,e.load)}`,e.name),e))))).forEach((e=>{if("rejected"===e.status)return void console.error(e.reason);const n=e.value;n.extension&&b.push(a(n.name,n.extension)),n.mimeExtension&&d.push(a(n.name,n.mimeExtension)),n.style&&!o.PageConfig.Extension.isDisabled(n.name)&&c.push(a(n.name,n.style))})),(await Promise.all(r)).forEach((e=>{for(let n of s(e))u.push(n)})),(await Promise.allSettled(b)).forEach((e=>{if("fulfilled"===e.status)for(let n of s(e.value))u.push(n);else console.error(e.reason)})),(await Promise.allSettled(d)).forEach((e=>{if("fulfilled"===e.status)for(let t of s(e.value))n.push(t);else console.error(e.reason)})),(await Promise.allSettled(c)).filter((({status:e})=>"rejected"===e)).forEach((({reason:e})=>{console.error(e)})),o.PageConfig.setOption("allPlugins",'{"/":{"@jupyter-notebook/application-extension":true,"@jupyter-notebook/console-extension":true,"@jupyter-notebook/docmanager-extension":true,"@jupyter-notebook/documentsearch-extension":true,"@jupyter-notebook/help-extension":true,"@jupyter-notebook/notebook-extension":true,"@jupyter-notebook/terminal-extension":true,"@jupyterlab/application-extension":["@jupyterlab/application-extension:commands","@jupyterlab/application-extension:context-menu","@jupyterlab/application-extension:faviconbusy","@jupyterlab/application-extension:router","@jupyterlab/application-extension:top-bar","@jupyterlab/application-extension:top-spacer"],"@jupyterlab/apputils-extension":["@jupyterlab/apputils-extension:palette","@jupyterlab/apputils-extension:notification","@jupyterlab/apputils-extension:sanitizer","@jupyterlab/apputils-extension:sessionDialogs","@jupyterlab/apputils-extension:settings","@jupyterlab/apputils-extension:state","@jupyterlab/apputils-extension:themes","@jupyterlab/apputils-extension:themes-palette-menu","@jupyterlab/apputils-extension:toolbar-registry","@jupyterlab/apputils-extension:utilityCommands"],"@jupyterlab/codemirror-extension":true,"@jupyterlab/completer-extension":["@jupyterlab/completer-extension:base-service","@jupyterlab/completer-extension:inline-completer","@jupyterlab/completer-extension:inline-completer-factory","@jupyterlab/completer-extension:inline-history","@jupyterlab/completer-extension:manager"],"@jupyterlab/console-extension":["@jupyterlab/console-extension:cell-executor","@jupyterlab/console-extension:completer","@jupyterlab/console-extension:factory","@jupyterlab/console-extension:foreign","@jupyterlab/console-extension:tracker"],"@jupyterlab/csvviewer-extension":true,"@jupyterlab/docmanager-extension":["@jupyterlab/docmanager-extension:plugin","@jupyterlab/docmanager-extension:download","@jupyterlab/docmanager-extension:contexts","@jupyterlab/docmanager-extension:manager"],"@jupyterlab/documentsearch-extension":["@jupyterlab/documentsearch-extension:plugin"],"@jupyterlab/filebrowser-extension":["@jupyterlab/filebrowser-extension:factory","@jupyterlab/filebrowser-extension:default-file-browser"],"@jupyterlab/fileeditor-extension":["@jupyterlab/fileeditor-extension:plugin"],"@jupyterlab/help-extension":["@jupyterlab/help-extension:resources"],"@jupyterlab/htmlviewer-extension":true,"@jupyterlab/imageviewer-extension":true,"@jupyterlab/lsp-extension":true,"@jupyterlab/mainmenu-extension":["@jupyterlab/mainmenu-extension:plugin"],"@jupyterlab/markedparser-extension":true,"@jupyterlab/mathjax-extension":true,"@jupyterlab/mermaid-extension":true,"@jupyterlab/notebook-extension":["@jupyterlab/notebook-extension:cell-executor","@jupyterlab/notebook-extension:code-console","@jupyterlab/notebook-extension:export","@jupyterlab/notebook-extension:factory","@jupyterlab/notebook-extension:tracker","@jupyterlab/notebook-extension:widget-factory"],"@jupyterlab/pluginmanager-extension":true,"@jupyterlab/shortcuts-extension":true,"@jupyterlab/terminal-extension":true,"@jupyterlab/theme-light-extension":true,"@jupyterlab/theme-dark-extension":true,"@jupyterlab/theme-dark-high-contrast-extension":true,"@jupyterlab/translation-extension":true,"@jupyterlab/ui-components-extension":true,"@jupyterlab/hub-extension":true},"/tree":{"@jupyterlab/extensionmanager-extension":true,"@jupyterlab/filebrowser-extension":["@jupyterlab/filebrowser-extension:browser","@jupyterlab/filebrowser-extension:download","@jupyterlab/filebrowser-extension:file-upload-status","@jupyterlab/filebrowser-extension:open-with","@jupyterlab/filebrowser-extension:search","@jupyterlab/filebrowser-extension:share-file"],"@jupyter-notebook/tree-extension":true,"@jupyterlab/running-extension":["@jupyterlab/running-extension:plugin"],"@jupyterlab/settingeditor-extension":true},"/notebooks":{"@jupyterlab/celltags-extension":true,"@jupyterlab/cell-toolbar-extension":true,"@jupyterlab/debugger-extension":["@jupyterlab/debugger-extension:config","@jupyterlab/debugger-extension:main","@jupyterlab/debugger-extension:notebooks","@jupyterlab/debugger-extension:service","@jupyterlab/debugger-extension:sidebar","@jupyterlab/debugger-extension:sources"],"@jupyterlab/metadataform-extension":true,"@jupyterlab/notebook-extension":["@jupyterlab/notebook-extension:active-cell-tool","@jupyterlab/notebook-extension:completer","@jupyterlab/notebook-extension:copy-output","@jupyterlab/notebook-extension:metadata-editor","@jupyterlab/notebook-extension:search","@jupyterlab/notebook-extension:toc","@jupyterlab/notebook-extension:tools","@jupyterlab/notebook-extension:update-raw-mimetype"],"@jupyterlab/toc-extension":["@jupyterlab/toc-extension:registry","@jupyterlab/toc-extension:tracker"],"@jupyterlab/tooltip-extension":["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:notebooks"]},"/consoles":{"@jupyterlab/tooltip-extension":["@jupyterlab/tooltip-extension:manager","@jupyterlab/tooltip-extension:consoles"]},"/edit":{"@jupyterlab/fileeditor-extension":["@jupyterlab/fileeditor-extension:completer","@jupyterlab/fileeditor-extension:search"],"@jupyterlab/markdownviewer-extension":true}}');const j=new(0,t(97373).NotebookApp)({mimeExtensions:n,availablePlugins:l});j.registerPluginModules(u),"true"===(o.PageConfig.getOption("exposeAppInBrowser")||"").toLowerCase()&&(window.jupyterapp=j),await j.start()}))},72761:(e,n,t)=>{"use strict";t.r(n),t(71818),t(70022),t(26238);var o=t(94830),a=t.n(o),r=t(80592),i=t.n(r),l=t(99763),s=t.n(l),p=t(28915),u=t.n(p),b=t(80366),d=t.n(b),c=t(17352),j=t.n(c),m=t(26633),y={};y.styleTagTransform=j(),y.setAttributes=u(),y.insert=s().bind(null,"head"),y.domAPI=i(),y.insertStyleElement=d(),a()(m.Z,y),m.Z&&m.Z.locals&&m.Z.locals;var x=t(93862),g={};g.styleTagTransform=j(),g.setAttributes=u(),g.insert=s().bind(null,"head"),g.domAPI=i(),g.insertStyleElement=d(),a()(x.Z,g),x.Z&&x.Z.locals&&x.Z.locals,t(20959);var h=t(58027),f={};f.styleTagTransform=j(),f.setAttributes=u(),f.insert=s().bind(null,"head"),f.domAPI=i(),f.insertStyleElement=d(),a()(h.Z,f),h.Z&&h.Z.locals&&h.Z.locals;var A=t(99776),k={};k.styleTagTransform=j(),k.setAttributes=u(),k.insert=s().bind(null,"head"),k.domAPI=i(),k.insertStyleElement=d(),a()(A.Z,k),A.Z&&A.Z.locals&&A.Z.locals;var v=t(64399),w={};w.styleTagTransform=j(),w.setAttributes=u(),w.insert=s().bind(null,"head"),w.domAPI=i(),w.insertStyleElement=d(),a()(v.Z,w),v.Z&&v.Z.locals&&v.Z.locals;var T=t(11112),P={};P.styleTagTransform=j(),P.setAttributes=u(),P.insert=s().bind(null,"head"),P.domAPI=i(),P.insertStyleElement=d(),a()(T.Z,P),T.Z&&T.Z.locals&&T.Z.locals;var Z=t(49482),B={};B.styleTagTransform=j(),B.setAttributes=u(),B.insert=s().bind(null,"head"),B.domAPI=i(),B.insertStyleElement=d(),a()(Z.Z,B),Z.Z&&Z.Z.locals&&Z.Z.locals;var S=t(71564),C={};C.styleTagTransform=j(),C.setAttributes=u(),C.insert=s().bind(null,"head"),C.domAPI=i(),C.insertStyleElement=d(),a()(S.Z,C),S.Z&&S.Z.locals&&S.Z.locals;var N=t(8173),E={};E.styleTagTransform=j(),E.setAttributes=u(),E.insert=s().bind(null,"head"),E.domAPI=i(),E.insertStyleElement=d(),a()(N.Z,E),N.Z&&N.Z.locals&&N.Z.locals,t(40360);var D=t(30546),z={};z.styleTagTransform=j(),z.setAttributes=u(),z.insert=s().bind(null,"head"),z.domAPI=i(),z.insertStyleElement=d(),a()(D.Z,z),D.Z&&D.Z.locals&&D.Z.locals;var F=t(94623),L={};L.styleTagTransform=j(),L.setAttributes=u(),L.insert=s().bind(null,"head"),L.domAPI=i(),L.insertStyleElement=d(),a()(F.Z,L),F.Z&&F.Z.locals&&F.Z.locals;var M=t(99402),I={};I.styleTagTransform=j(),I.setAttributes=u(),I.insert=s().bind(null,"head"),I.domAPI=i(),I.insertStyleElement=d(),a()(M.Z,I),M.Z&&M.Z.locals&&M.Z.locals,t(32723),t(82649),t(15491),t(92645),t(18934),t(24017),t(72867),t(93751),t(75617),t(91532),t(20603),t(17066),t(39380),t(9755),t(82164),t(94938),t(53555),t(86258),t(11575),t(10887),t(26449),t(3727),t(97635),t(16856),t(46165),t(8604),t(26053),t(84221),t(53927),t(67074),t(47275),t(58068),t(41346),t(74768),t(65315),t(87635),t(37609),t(49733),t(40745)},58027:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n|\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n.jp-NotebookSpacer {\n flex-grow: 1;\n flex-shrink: 1;\n}\n\n.jp-MainAreaWidget {\n height: 100%;\n}\n\n.jp-Toolbar > .jp-Toolbar-item {\n height: unset;\n}\n\n#jp-UserMenu {\n flex: 0 0 auto;\n display: flex;\n text-align: center;\n margin-top: 8px;\n}\n\n.jp-MimeDocument .jp-RenderedJSON {\n background: var(--jp-layout-color0);\n}\n\n/* Hide the stub toolbar that appears above terminals and documents */\n\n.jp-MainAreaWidget > .jp-Toolbar-micro {\n display: none;\n}\n\n#jp-NotebookLogo {\n /* bring logo to the front so it is selectable by tab*/\n z-index: 10;\n}\n\n/* Hide the notification status item */\n.jp-Notification-Status {\n display: none;\n}\n",""]);const l=i},26633:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n:root {\n --jp-private-topbar-height: 28px;\n /* Override the layout-2 color for the dark theme */\n --md-grey-800: #323232;\n --jp-notebook-max-width: 1200px;\n}\n\nbody {\n margin: 0;\n padding: 0;\n background: var(--jp-layout-color2);\n}\n\n#main {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n}\n\n#top-panel-wrapper {\n min-height: calc(1.5 * var(--jp-private-topbar-height));\n border-bottom: var(--jp-border-width) solid var(--jp-border-color0);\n background: var(--jp-layout-color1);\n}\n\n#top-panel {\n display: flex;\n min-height: calc(1.5 * var(--jp-private-topbar-height));\n padding-left: 5px;\n padding-right: 5px;\n margin-left: auto;\n margin-right: auto;\n max-width: 1200px;\n}\n\n#menu-panel-wrapper {\n min-height: var(--jp-private-topbar-height);\n background: var(--jp-layout-color1);\n border-bottom: var(--jp-border-width) solid var(--jp-border-color0);\n box-shadow: var(--jp-elevation-z1);\n}\n\n#menu-panel {\n display: flex;\n min-height: var(--jp-private-topbar-height);\n background: var(--jp-layout-color1);\n padding-left: 5px;\n padding-right: 5px;\n margin-left: auto;\n margin-right: auto;\n max-width: var(--jp-notebook-max-width);\n}\n\n#main-panel {\n margin-left: auto;\n margin-right: auto;\n max-width: var(--jp-notebook-max-width);\n}\n\n#spacer-widget-top {\n min-height: 16px;\n}\n\n/* Only edit pages should have a bottom space */\n\nbody[data-notebook='edit'] #spacer-widget-bottom {\n min-height: 16px;\n}\n\n/* Special case notebooks as document oriented pages */\n\n[data-notebook]:not(body[data-notebook='notebooks']) #main-panel {\n box-shadow: var(--jp-elevation-z4);\n}\n\n.jp-TreePanel > .lm-TabPanel-stackedPanel {\n box-shadow: var(--jp-elevation-z4);\n}\n\nbody[data-notebook='notebooks'] #main-panel {\n margin-left: unset;\n margin-right: unset;\n max-width: unset;\n}\n\nbody[data-notebook='notebooks'] #spacer-widget-top {\n min-height: unset;\n}\n\n#main-panel > .jp-TreePanel {\n padding: 0px 5px;\n}\n\n@media only screen and (max-width: 760px) {\n #main-panel > .jp-TreePanel {\n margin: 0px -5px;\n }\n}\n",""]);const l=i},93862:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n| Distributed under the terms of the Modified BSD License.\n|\n| Adapted from JupyterLab's packages/application/style/sidepanel.css.\n|----------------------------------------------------------------------------*/\n\n/*-----------------------------------------------------------------------------\n| Variables\n|----------------------------------------------------------------------------*/\n\n:root {\n --jp-private-sidebar-tab-width: 32px;\n}\n\n/*-----------------------------------------------------------------------------\n| SideBar\n|----------------------------------------------------------------------------*/\n\n/* Stack panels */\n\n#jp-right-stack,\n#jp-left-stack {\n display: flex;\n flex-direction: column;\n min-width: var(--jp-sidebar-min-width);\n}\n\n#jp-left-stack .jp-SidePanel-collapse,\n#jp-right-stack .jp-SidePanel-collapse {\n display: flex;\n flex: 0 0 auto;\n min-height: 0;\n padding: 0;\n}\n\n#jp-left-stack .jp-SidePanel-collapse {\n justify-content: right;\n}\n\n#jp-right-stack .jp-SidePanel-collapse {\n justify-content: left;\n}\n\n#jp-left-stack .lm-StackedPanel,\n#jp-right-stack .lm-StackedPanel {\n flex: 1 1 auto;\n}\n",""]);const l=i},99776:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},64399:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,".jp-Document {\n height: 100%;\n}\n",""]);const l=i},11112:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},49482:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,".jp-AboutNotebook .jp-Dialog-header {\n justify-content: center;\n padding: 0;\n}\n\n.jp-AboutNotebook-header {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: var(--jp-flat-button-padding);\n}\n\n.jp-AboutNotebook-header-text {\n margin-left: 16px;\n}\n\n.jp-AboutNotebook-version {\n color: var(--jp-ui-font-color1);\n font-size: var(--jp-ui-font-size1);\n padding-bottom: 30px;\n font-weight: 400;\n letter-spacing: 0.4px;\n line-height: 1.12;\n min-width: 360px;\n text-align: center;\n}\n\n.jp-AboutNotebook-body {\n display: flex;\n font-size: var(--jp-ui-font-size2);\n padding: var(--jp-flat-button-padding);\n color: var(--jp-ui-font-color1);\n text-align: center;\n flex-direction: column;\n min-width: 360px;\n overflow: hidden;\n}\n\n.jp-AboutNotebook-about-body pre {\n white-space: pre-wrap;\n}\n\n.jp-AboutNotebook-about-externalLinks {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: flex-start;\n color: var(--jp-warn-color0);\n}\n\n.jp-AboutNotebook-about-copyright {\n padding-top: 25px;\n}\n",""]);const l=i},71564:(e,n,t)=>{"use strict";t.d(n,{Z:()=>p});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r),l=t(99686),s=i()(a());s.i(l.Z),s.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n|\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n/**\n Document oriented look for the notebook.\n This includes changes to the look and feel of the JupyterLab Notebook\n component like:\n - scrollbar to the right of the page\n - drop shadow on the notebook\n - smaller empty space at the bottom of the notebook\n - compact view on mobile\n*/\n\n/* Keep the notebook centered on the page */\n\nbody[data-notebook='notebooks'] .jp-NotebookPanel-toolbar {\n padding-left: calc(calc(100% - var(--jp-notebook-max-width)) * 0.5);\n padding-right: calc(calc(100% - var(--jp-notebook-max-width)) * 0.5);\n}\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-outer {\n width: unset !important;\n padding-top: unset;\n padding-left: calc(calc(100% - var(--jp-notebook-max-width)) * 0.5);\n padding-right: calc(\n calc(\n 100% - var(--jp-notebook-max-width) - var(--jp-notebook-padding-offset)\n ) * 0.5\n ) !important;\n background: var(--jp-layout-color2);\n}\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-inner {\n margin-top: var(--jp-notebook-toolbar-margin-bottom);\n /* Adjustments for the extra top and bottom notebook padding */\n margin-bottom: calc(4 * var(--jp-notebook-padding));\n}\n\nbody[data-notebook='notebooks'] .jp-Notebook-cell {\n background: var(--jp-layout-color0);\n padding-left: calc(2 * var(--jp-cell-padding));\n padding-right: calc(2 * var(--jp-cell-padding));\n}\n\n/* Empty space at the bottom of the notebook (similar to classic) */\nbody[data-notebook='notebooks']\n .jp-Notebook.jp-mod-scrollPastEnd\n .jp-WindowedPanel-outer::after {\n min-height: 100px;\n}\n\n/* Fix background colors */\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-outer > * {\n background: var(--jp-layout-color0);\n}\n\nbody[data-notebook='notebooks']\n .jp-Notebook.jp-mod-commandMode\n .jp-Cell.jp-mod-active.jp-mod-selected:not(.jp-mod-multiSelected) {\n background: var(--jp-layout-color0) !important;\n}\n\nbody[data-notebook='notebooks']\n .jp-Notebook\n .jp-Notebook-cell:not(:first-child)::before {\n content: ' ';\n height: 100%;\n position: absolute;\n top: 0;\n width: 11px;\n}\n\n/* Cell toolbar adjustments */\n\nbody[data-notebook='notebooks'] .jp-cell-toolbar {\n background: unset;\n box-shadow: unset;\n}\n\n/** first code cell on mobile\n (keep the selector above the media query)\n*/\nbody[data-notebook='notebooks']\n .jp-CodeCell[data-windowed-list-index='0']\n .jp-cell-toolbar {\n top: unset;\n}\n\n@media only screen and (max-width: 760px) {\n /* first code cell on mobile */\n body[data-notebook='notebooks']\n .jp-CodeCell[data-windowed-list-index='0']\n .jp-cell-toolbar {\n top: var(--jp-notebook-padding);\n }\n\n body[data-notebook='notebooks'] .jp-MarkdownCell .jp-cell-toolbar,\n body[data-notebook='notebooks'] .jp-RawCell .jp-cell-toolbar {\n top: calc(0.5 * var(--jp-notebook-padding));\n }\n}\n\n/* Tweak the notebook footer (to add a new cell) */\nbody[data-notebook='notebooks'] .jp-Notebook-footer {\n background: unset;\n width: 100%;\n margin-left: unset;\n}\n\n/* Mobile View */\n\nbody[data-format='mobile'] .jp-NotebookCheckpoint {\n display: none;\n}\n\nbody[data-format='mobile'] .jp-WindowedPanel-outer > *:first-child {\n margin-top: 0;\n}\n\nbody[data-format='mobile'] .jp-ToolbarButton .jp-DebuggerBugButton {\n display: none;\n}\n\nbody[data-notebook='notebooks'] .jp-WindowedPanel-viewport {\n background: var(--jp-layout-color0);\n box-shadow: var(--jp-elevation-z4);\n padding: unset;\n\n /* Extra padding at the top and bottom so the notebook looks nicer */\n padding-top: calc(2 * var(--jp-notebook-padding));\n padding-bottom: calc(2 * var(--jp-notebook-padding));\n}\n\n/* Notebook box shadow */\n\nbody[data-notebook='notebooks']\n .jp-Notebook\n > *:first-child:last-child::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n box-shadow: 0px 0px 12px 1px var(--jp-shadow-umbra-color);\n}\n\n/* Additional customizations of the components on the notebook page */\n\n.jp-NotebookKernelLogo {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n text-align: center;\n margin-right: 8px;\n}\n\n.jp-NotebookKernelLogo img {\n max-width: 28px;\n max-height: 28px;\n display: flex;\n}\n\n.jp-NotebookKernelStatus {\n margin: 0;\n font-weight: normal;\n font-size: var(--jp-ui-font-size1);\n color: var(--jp-ui-font-color0);\n font-family: var(--jp-ui-font-family);\n line-height: var(--jp-private-title-panel-height);\n padding-left: var(--jp-kernel-status-padding);\n padding-right: var(--jp-kernel-status-padding);\n}\n\n.jp-NotebookKernelStatus-error {\n background-color: var(--jp-error-color0);\n}\n\n.jp-NotebookKernelStatus-warn {\n background-color: var(--jp-warn-color0);\n}\n\n.jp-NotebookKernelStatus-info {\n background-color: var(--jp-info-color0);\n}\n\n.jp-NotebookKernelStatus-fade {\n animation: 0.5s fade-out forwards;\n}\n\n.jp-NotebookTrustedStatus {\n background: var(--jp-layout-color1);\n color: var(--jp-ui-font-color1);\n margin-top: 4px;\n margin-bottom: 4px;\n border: solid 1px var(--jp-border-color2);\n cursor: help;\n}\n\n.jp-NotebookTrustedStatus-not-trusted {\n cursor: pointer;\n}\n\n@keyframes fade-out {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n\n#jp-title h1 {\n cursor: pointer;\n font-size: 18px;\n margin: 0;\n font-weight: normal;\n color: var(--jp-ui-font-color0);\n font-family: var(--jp-ui-font-family);\n line-height: calc(1.5 * var(--jp-private-title-panel-height));\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n\n#jp-title h1:hover {\n background: var(--jp-layout-color2);\n}\n\n.jp-NotebookCheckpoint {\n font-size: 14px;\n margin-left: 5px;\n margin-right: 5px;\n font-weight: normal;\n color: var(--jp-ui-font-color0);\n font-family: var(--jp-ui-font-family);\n line-height: calc(1.5 * var(--jp-private-title-panel-height));\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n\n.jp-skiplink {\n position: absolute;\n top: -100em;\n}\n\n.jp-skiplink:focus-within {\n position: absolute;\n z-index: 10000;\n top: 0;\n left: 46%;\n margin: 0 auto;\n padding: 1em;\n width: 15%;\n box-shadow: var(--jp-elevation-z4);\n border-radius: 4px;\n background: var(--jp-layout-color0);\n text-align: center;\n}\n\n.jp-skiplink:focus-within a {\n text-decoration: underline;\n color: var(--jp-content-link-color);\n}\n",""]);const p=s},99686:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,":root {\n --jp-notebook-toolbar-margin-bottom: 20px;\n --jp-notebook-padding-offset: 20px;\n\n --jp-kernel-status-padding: 5px;\n}\n",""]);const l=i},8173:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},94623:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"/*-----------------------------------------------------------------------------\n| Copyright (c) Jupyter Development Team.\n|\n| Distributed under the terms of the Modified BSD License.\n|----------------------------------------------------------------------------*/\n\n.jp-FileBrowser-toolbar .jp-Toolbar-item.jp-DropdownMenu,\n.jp-FileBrowser-toolbar .jp-Toolbar-item.jp-ToolbarButton,\n.jp-FileBrowser-toolbar .jp-Toolbar-item.jp-CommandToolbarButton {\n border: solid 1px var(--jp-border-color2);\n margin: 1px;\n padding: 0px;\n}\n\n.jp-FileBrowser-toolbar > .jp-Toolbar-item.jp-ToolbarButton:hover,\n.jp-FileBrowser-toolbar > .jp-Toolbar-item.jp-CommandToolbarButton:hover,\n.jp-FileBrowser-toolbar > .jp-Toolbar-item.jp-DropdownMenu:hover {\n background: var(--neutral-fill-stealth-hover);\n}\n\n.jp-FileBrowser-toolbar .lm-MenuBar-item {\n height: var(--jp-private-toolbar-height);\n display: inline-flex;\n align-items: center;\n}\n\n.jp-FileBrowser-toolbar .jp-ToolbarButtonComponent {\n height: var(--jp-flat-button-height);\n}\n\n.jp-FileBrowser-toolbar jp-button.jp-ToolbarButtonComponent:hover {\n background: inherit;\n}\n\n.jp-FileBrowser-filterBox {\n padding: 0;\n flex: 0 0 auto;\n}\n\n.jp-FileBrowser-filterBox input {\n line-height: 24px;\n}\n\n.jp-DirListing-content .jp-DirListing-checkboxWrapper {\n visibility: visible;\n}\n\n/* Action buttons */\n\n.jp-FileBrowser-toolbar > .jp-FileAction > .jp-ToolbarButtonComponent > svg {\n display: none;\n}\n\n.jp-FileBrowser-toolbar > #fileAction-delete {\n background-color: var(--jp-error-color1);\n}\n\n.jp-FileBrowser-toolbar\n .jp-ToolbarButtonComponent[data-command='filebrowser:delete']\n .jp-ToolbarButtonComponent-label {\n color: var(--jp-ui-inverse-font-color1);\n}\n\n.jp-FileBrowser-toolbar .jp-FileAction {\n border: solid 1px var(--jp-border-color2);\n margin: 1px;\n min-height: var(--jp-private-toolbar-height);\n}\n",""]);const l=i},30546:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,".jp-FileBrowser {\n height: 100%;\n}\n\n.lm-TabPanel {\n height: 100%;\n}\n\n.jp-TreePanel .lm-TabPanel-tabBar {\n overflow: visible;\n min-height: 32px;\n border-bottom: unset;\n height: var(--jp-private-toolbar-height);\n}\n\n.jp-TreePanel .lm-TabBar-content {\n height: 100%;\n}\n\n.jp-TreePanel .lm-TabBar-tab {\n flex: 0 1 auto;\n color: var(--jp-ui-font-color0);\n font-size: var(--jp-ui-font-size1);\n height: 100%;\n}\n\n.jp-TreePanel .lm-TabBar-tabLabel {\n padding-left: 5px;\n padding-right: 5px;\n}\n\n.jp-FileBrowser-toolbar.jp-Toolbar .jp-ToolbarButtonComponent {\n width: unset;\n}\n\n.jp-FileBrowser-toolbar > .jp-Toolbar-item {\n flex-direction: column;\n justify-content: center;\n}\n\n.jp-DropdownMenu .lm-MenuBar-itemIcon svg {\n vertical-align: sub;\n}\n\njp-button[data-command='filebrowser:refresh'] .jp-ToolbarButtonComponent-label {\n display: none;\n}\n\n.jp-TreePanel .lm-TabBar-tabIcon svg {\n vertical-align: sub;\n}\n",""]);const l=i},99402:(e,n,t)=>{"use strict";t.d(n,{Z:()=>l});var o=t(66846),a=t.n(o),r=t(11368),i=t.n(r)()(a());i.push([e.id,"",""]);const l=i},7413:e=>{"use strict";e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAsElEQVQIHQGlAFr/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7+r3zKmT0/+pk9P/7+r3zAAAAAAAAAAABAAAAAAAAAAA6OPzM+/q9wAAAAAA6OPzMwAAAAAAAAAAAgAAAAAAAAAAGR8NiRQaCgAZIA0AGR8NiQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQyoYJ/SY80UAAAAASUVORK5CYII="}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8875,1650],{71650:(e,t,o)=>{o.r(t),o.d(t,{default:()=>s});var n=o(65848),a=o(4102),i=o(94978),d=o(81997);const s=[{id:"@jupyter-notebook/docmanager-extension:opener",autoStart:!0,optional:[i.INotebookPathOpener,i.INotebookShell],provides:a.IDocumentWidgetOpener,description:"Open documents in a new browser tab",activate:(e,t,o)=>{const a=n.PageConfig.getBaseUrl(),s=e.docRegistry,r=null!=t?t:i.defaultNotebookPathOpener;let l=0;return new class{constructor(){this._opened=new d.Signal(this)}async open(t,i){var d,c,u;const p=null!==(d=null==i?void 0:i.type)&&void 0!==d?d:"",h=null==i?void 0:i.ref,v=null===(u=null===(c=null==o?void 0:o.userLayout)||void 0===c?void 0:c[p])||void 0===u?void 0:u.area;if("_noref"!==h&&void 0===v){const e=t.context.path,o=n.PathExt.extname(e);let i,d="edit";return("default"===p&&".ipynb"===o||p.includes("Notebook"))&&(t.context.sessionContext.kernelPreference.name&&await t.context.save(),d="notebooks"),p!==s.defaultWidgetFactory(e).name&&(i=new URLSearchParams({factory:p})),r.open({prefix:n.URLExt.join(a,d),path:e,searchParams:i}),void t.dispose()}t.id||(t.id="document-manager-"+ ++l),t.title.dataset={type:"document-title",...t.title.dataset},t.isAttached||e.shell.add(t,"main",i||{}),e.shell.activateById(t.id),this._opened.emit(t)}get opened(){return this._opened}}}}]}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8875,1650],{71650:(e,t,o)=>{o.r(t),o.d(t,{default:()=>s});var n=o(44548),a=o(94624),i=o(97373),d=o(81997);const s=[{id:"@jupyter-notebook/docmanager-extension:opener",autoStart:!0,optional:[i.INotebookPathOpener,i.INotebookShell],provides:a.IDocumentWidgetOpener,description:"Open documents in a new browser tab",activate:(e,t,o)=>{const a=n.PageConfig.getBaseUrl(),s=e.docRegistry,r=null!=t?t:i.defaultNotebookPathOpener;let l=0;return new class{constructor(){this._opened=new d.Signal(this)}async open(t,i){var d,c,u;const p=null!==(d=null==i?void 0:i.type)&&void 0!==d?d:"",h=null==i?void 0:i.ref,v=null===(u=null===(c=null==o?void 0:o.userLayout)||void 0===c?void 0:c[p])||void 0===u?void 0:u.area;if("_noref"!==h&&void 0===v){const e=t.context.path,o=n.PathExt.extname(e);let i,d="edit";return("default"===p&&".ipynb"===o||p.includes("Notebook"))&&(t.context.sessionContext.kernelPreference.name&&await t.context.save(),d="notebooks"),p!==s.defaultWidgetFactory(e).name&&(i=new URLSearchParams({factory:p})),r.open({prefix:n.URLExt.join(a,d),path:e,searchParams:i}),void t.dispose()}t.id||(t.id="document-manager-"+ ++l),t.title.dataset={type:"document-title",...t.title.dataset},t.isAttached||e.shell.add(t,"main",i||{}),e.shell.activateById(t.id),this._opened.emit(t)}get opened(){return this._opened}}}}]}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8907,1198],{41198:(t,e,s)=>{s.r(e),s.d(e,{IPropertyInspectorProvider:()=>c,SideBarPropertyInspectorProvider:()=>a});var n=s(70858),r=s(95291),o=s(81997),i=s(63485);const c=new(s(20998).Token)("@jupyterlab/property-inspector:IPropertyInspectorProvider","A service to registry new widget in the property inspector side panel.");class h extends i.Widget{constructor(){super(),this._tracker=new i.FocusTracker,this._inspectors=new Map,this.addClass("jp-PropertyInspector"),this._tracker=new i.FocusTracker,this._tracker.currentChanged.connect(this._onCurrentChanged,this)}register(t){if(this._inspectors.has(t))throw new Error("Widget is already registered");const e=new l.PropertyInspector(t);return t.disposed.connect(this._onWidgetDisposed,this),this._inspectors.set(t,e),e.onAction.connect(this._onInspectorAction,this),this._tracker.add(t),e}get currentWidget(){return this._tracker.currentWidget}refresh(){const t=this._tracker.currentWidget;if(!t)return void this.setContent(null);const e=this._inspectors.get(t);e&&this.setContent(e.content)}_onWidgetDisposed(t){const e=this._inspectors.get(t);e&&(e.dispose(),this._inspectors.delete(t))}_onInspectorAction(t,e){const s=t.owner,n=this._tracker.currentWidget;switch(e){case"content":n===s&&this.setContent(t.content);break;case"dispose":s&&(this._tracker.remove(s),this._inspectors.delete(s));break;case"show-panel":n===s&&this.showPanel();break;default:throw new Error("Unsupported inspector action")}}_onCurrentChanged(){const t=this._tracker.currentWidget;if(t){const e=this._inspectors.get(t).content;this.setContent(e)}else this.setContent(null)}}class a extends h{constructor({shell:t,placeholder:e,translator:s}){super(),this._labshell=t,this.translator=s||n.nullTranslator,this._trans=this.translator.load("jupyterlab");const r=this.layout=new i.SingletonLayout;if(e)this._placeholder=e;else{const t=document.createElement("div"),e=document.createElement("div");e.textContent=this._trans.__("No properties to inspect."),e.className="jp-PropertyInspector-placeholderContent",t.appendChild(e),this._placeholder=new i.Widget({node:t}),this._placeholder.addClass("jp-PropertyInspector-placeholder")}r.widget=this._placeholder,this._labshell.currentChanged.connect(this._onShellCurrentChanged,this),this._onShellCurrentChanged()}setContent(t){const e=this.layout;e.widget&&(e.widget.removeClass("jp-PropertyInspector-content"),e.removeWidget(e.widget)),t||(t=this._placeholder),t.addClass("jp-PropertyInspector-content"),e.widget=t}showPanel(){this._labshell.activateById(this.id)}_onShellCurrentChanged(){const t=this.currentWidget;if(!t)return void this.setContent(null);const e=this._labshell.currentWidget;(null==e?void 0:e.node.contains(t.node))?this.refresh():this.setContent(null)}}var l;!function(t){t.PropertyInspector=class{constructor(t){this._isDisposed=!1,this._content=null,this._owner=null,this._onAction=new o.Signal(this),this._owner=t}get owner(){return this._owner}get content(){return this._content}get isDisposed(){return this._isDisposed}get onAction(){return this._onAction}showPanel(){this._isDisposed||this._onAction.emit("show-panel")}render(t){this._isDisposed||(t instanceof i.Widget?this._content=t:this._content=r.ReactWidget.create(t),this._onAction.emit("content"))}dispose(){this._isDisposed||(this._isDisposed=!0,this._content=null,this._owner=null,o.Signal.clearData(this))}}}(l||(l={}))}}]);
1
+ "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8907,1198],{41198:(t,e,s)=>{s.r(e),s.d(e,{IPropertyInspectorProvider:()=>c,SideBarPropertyInspectorProvider:()=>a});var n=s(25291),r=s(12668),o=s(81997),i=s(63485);const c=new(s(20998).Token)("@jupyterlab/property-inspector:IPropertyInspectorProvider","A service to registry new widget in the property inspector side panel.");class h extends i.Widget{constructor(){super(),this._tracker=new i.FocusTracker,this._inspectors=new Map,this.addClass("jp-PropertyInspector"),this._tracker=new i.FocusTracker,this._tracker.currentChanged.connect(this._onCurrentChanged,this)}register(t){if(this._inspectors.has(t))throw new Error("Widget is already registered");const e=new l.PropertyInspector(t);return t.disposed.connect(this._onWidgetDisposed,this),this._inspectors.set(t,e),e.onAction.connect(this._onInspectorAction,this),this._tracker.add(t),e}get currentWidget(){return this._tracker.currentWidget}refresh(){const t=this._tracker.currentWidget;if(!t)return void this.setContent(null);const e=this._inspectors.get(t);e&&this.setContent(e.content)}_onWidgetDisposed(t){const e=this._inspectors.get(t);e&&(e.dispose(),this._inspectors.delete(t))}_onInspectorAction(t,e){const s=t.owner,n=this._tracker.currentWidget;switch(e){case"content":n===s&&this.setContent(t.content);break;case"dispose":s&&(this._tracker.remove(s),this._inspectors.delete(s));break;case"show-panel":n===s&&this.showPanel();break;default:throw new Error("Unsupported inspector action")}}_onCurrentChanged(){const t=this._tracker.currentWidget;if(t){const e=this._inspectors.get(t).content;this.setContent(e)}else this.setContent(null)}}class a extends h{constructor({shell:t,placeholder:e,translator:s}){super(),this._labshell=t,this.translator=s||n.nullTranslator,this._trans=this.translator.load("jupyterlab");const r=this.layout=new i.SingletonLayout;if(e)this._placeholder=e;else{const t=document.createElement("div"),e=document.createElement("div");e.textContent=this._trans.__("No properties to inspect."),e.className="jp-PropertyInspector-placeholderContent",t.appendChild(e),this._placeholder=new i.Widget({node:t}),this._placeholder.addClass("jp-PropertyInspector-placeholder")}r.widget=this._placeholder,this._labshell.currentChanged.connect(this._onShellCurrentChanged,this),this._onShellCurrentChanged()}setContent(t){const e=this.layout;e.widget&&(e.widget.removeClass("jp-PropertyInspector-content"),e.removeWidget(e.widget)),t||(t=this._placeholder),t.addClass("jp-PropertyInspector-content"),e.widget=t}showPanel(){this._labshell.activateById(this.id)}_onShellCurrentChanged(){const t=this.currentWidget;if(!t)return void this.setContent(null);const e=this._labshell.currentWidget;(null==e?void 0:e.node.contains(t.node))?this.refresh():this.setContent(null)}}var l;!function(t){t.PropertyInspector=class{constructor(t){this._isDisposed=!1,this._content=null,this._owner=null,this._onAction=new o.Signal(this),this._owner=t}get owner(){return this._owner}get content(){return this._content}get isDisposed(){return this._isDisposed}get onAction(){return this._onAction}showPanel(){this._isDisposed||this._onAction.emit("show-panel")}render(t){this._isDisposed||(t instanceof i.Widget?this._content=t:this._content=r.ReactWidget.create(t),this._onAction.emit("content"))}dispose(){this._isDisposed||(this._isDisposed=!0,this._content=null,this._owner=null,o.Signal.clearData(this))}}}(l||(l={}))}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_JUPYTERLAB_CORE_OUTPUT=self.webpackChunk_JUPYTERLAB_CORE_OUTPUT||[]).push([[8928,7900],{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(65848),n=i(72703),c=i(89945),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([[8928,7900],{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(44548),n=i(15465),c=i(71120),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={}))}}]);