@datalayer/agent-runtimes 1.3.114 → 1.5.0
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.
- package/dist-embed/chunks/ChatView-CaBuPTyG.js +32 -0
- package/dist-embed/chunks/{DeckComponent-CuRWiARr.js → DeckComponent-cRJJMGgt.js} +1 -1
- package/dist-embed/chunks/{DocumentView-BYU2HREd.js → DocumentView-CiqN9ze6.js} +1 -1
- package/dist-embed/chunks/{EphemeralDocument-BjFSuQKH.js → EphemeralDocument-BjJfn7J-.js} +1 -1
- package/dist-embed/chunks/{ExcalidrawComponent-CFLnMPnf.js → ExcalidrawComponent-BtNXWUN8.js} +1 -1
- package/dist-embed/chunks/{ExcalidrawModal-CB9d5Vpk.js → ExcalidrawModal-C6SEKFlD.js} +1 -1
- package/dist-embed/chunks/{JupyterLexicalExtension-CYnZrelh.js → JupyterLexicalExtension-BuRLImy5.js} +5 -5
- package/dist-embed/chunks/{NotebookToolSurfaces-D62q-lbb.js → NotebookToolSurfaces-ktcGRm7d.js} +1 -1
- package/dist-embed/chunks/{Output-2KxoKu5F.js → Output-BscOPLqE.js} +10 -10
- package/dist-embed/chunks/{YouTubePlugin-CjODyxZ2.js → YouTubePlugin-xBjNr2Iu.js} +1 -1
- package/dist-embed/chunks/{ar-SA-G6X2FPQ2-C-zAYgA-.js → ar-SA-G6X2FPQ2-BB82iKLz.js} +1 -1
- package/dist-embed/chunks/{az-AZ-76LH7QW2-BHq5js6U.js → az-AZ-76LH7QW2-DsMRKXlw.js} +1 -1
- package/dist-embed/chunks/{bg-BG-XCXSNQG7-BTcNNcTc.js → bg-BG-XCXSNQG7-43Y1kPxa.js} +1 -1
- package/dist-embed/chunks/{bn-BD-2XOGV67Q-DXRk27u1.js → bn-BD-2XOGV67Q-CLqPJBll.js} +1 -1
- package/dist-embed/chunks/{ca-ES-6MX7JW3Y-D-0J9rqp.js → ca-ES-6MX7JW3Y-CDFGSEh3.js} +1 -1
- package/dist-embed/chunks/{cs-CZ-2BRQDIVT-CgN3I-57.js → cs-CZ-2BRQDIVT-ByNB8eZd.js} +1 -1
- package/dist-embed/chunks/{da-DK-5WZEPLOC-CHQloSoX.js → da-DK-5WZEPLOC-B7MrVwy8.js} +1 -1
- package/dist-embed/chunks/{de-DE-XR44H4JA-C-Hq84pe.js → de-DE-XR44H4JA-CN1cdk94.js} +1 -1
- package/dist-embed/chunks/{el-GR-BZB4AONW-MTzGcSsP.js → el-GR-BZB4AONW-DnaGhWD1.js} +1 -1
- package/dist-embed/chunks/{es-ES-U4NZUMDT-Thj-4Rwn.js → es-ES-U4NZUMDT-DE1vZzDE.js} +1 -1
- package/dist-embed/chunks/{eu-ES-A7QVB2H4-BEEyNQo-.js → eu-ES-A7QVB2H4-DmHB0zpm.js} +1 -1
- package/dist-embed/chunks/{fa-IR-HGAKTJCU-CtUGmNBZ.js → fa-IR-HGAKTJCU-CNzE8tJj.js} +1 -1
- package/dist-embed/chunks/{fi-FI-Z5N7JZ37-6GMgpkSu.js → fi-FI-Z5N7JZ37-Ca2vTFQC.js} +1 -1
- package/dist-embed/chunks/{fr-FR-RHASNOE6-BakNCbxj.js → fr-FR-RHASNOE6-B0yWFX3_.js} +1 -1
- package/dist-embed/chunks/{gl-ES-HMX3MZ6V-Cwkb9OPk.js → gl-ES-HMX3MZ6V-2_3FMVJq.js} +1 -1
- package/dist-embed/chunks/{he-IL-6SHJWFNN-BaMmvCkr.js → he-IL-6SHJWFNN-BW1lby00.js} +1 -1
- package/dist-embed/chunks/{hi-IN-IWLTKZ5I-1aWewhep.js → hi-IN-IWLTKZ5I-DTixfSwB.js} +1 -1
- package/dist-embed/chunks/{hu-HU-A5ZG7DT2-BIHI23BQ.js → hu-HU-A5ZG7DT2-DOfYwLWP.js} +1 -1
- package/dist-embed/chunks/{id-ID-SAP4L64H-CYpgmx8X.js → id-ID-SAP4L64H-Cwtdtkvg.js} +1 -1
- package/dist-embed/chunks/{index-BhSMzuKq.js → index--qMT5k1q.js} +1 -1
- package/dist-embed/chunks/{index-b1yzCiTq.js → index-B-UP9DlM.js} +1 -1
- package/dist-embed/chunks/{index-DMKsCn-y.js → index-BAwsCLGT.js} +1 -1
- package/dist-embed/chunks/{index-BUhqZVtg.js → index-BITOMOWN.js} +1 -1
- package/dist-embed/chunks/{index-1wTrAXI1.js → index-B_9UD0bt.js} +2 -2
- package/dist-embed/chunks/{index-DtlUttQj.js → index-BgFbP5P0.js} +1 -1
- package/dist-embed/chunks/{index-CC-Ht79i.js → index-CMUTS_sA.js} +1 -1
- package/dist-embed/chunks/{index-B7nmHsEo.js → index-Cgf7tlW3.js} +1 -1
- package/dist-embed/chunks/{index-CsZ2HycN.js → index-CrNfUmIU.js} +1 -1
- package/dist-embed/chunks/{index-DIOcQUrz.js → index-CzuLxFBK.js} +1 -1
- package/dist-embed/chunks/{index-EmZm7_bH.js → index-DEn5R18M.js} +1 -1
- package/dist-embed/chunks/{index-DeVZ-nmF.js → index-DFEBhySA.js} +1 -1
- package/dist-embed/chunks/{index-CMYyiALV.js → index-DYkwi0aX.js} +1 -1
- package/dist-embed/chunks/{index-Fzz2KjFM.js → index-DvpdAlVH.js} +1 -1
- package/dist-embed/chunks/{index-W7TVoWP5.js → index-Dyh5xopp.js} +1 -1
- package/dist-embed/chunks/{index-en9Yf1Yz.js → index-Jt4bWLoz.js} +1 -1
- package/dist-embed/chunks/{index-BbucLMre.js → index-S-sjhoD3.js} +1 -1
- package/dist-embed/chunks/{index-D18sf241.js → index-TRLGqZaF.js} +1 -1
- package/dist-embed/chunks/{index-ZZnjmFwm.js → index-YcqCoWJl.js} +1 -1
- package/dist-embed/chunks/{index-BFLtEBuP.js → index-sQy5cmWo.js} +1 -1
- package/dist-embed/chunks/{it-IT-JPQ66NNP-CLcqplyX.js → it-IT-JPQ66NNP-C3xZ61-6.js} +1 -1
- package/dist-embed/chunks/{ja-JP-DBVTYXUO-u8Qe6tR7.js → ja-JP-DBVTYXUO-CeTmglEb.js} +1 -1
- package/dist-embed/chunks/{kaa-6HZHGXH3-BG2kx50I.js → kaa-6HZHGXH3-D6Jr6B6Y.js} +1 -1
- package/dist-embed/chunks/{kab-KAB-ZGHBKWFO-CSYUpRxd.js → kab-KAB-ZGHBKWFO-pEXBqeuG.js} +1 -1
- package/dist-embed/chunks/{kk-KZ-P5N5QNE5-CpBMgHAz.js → kk-KZ-P5N5QNE5-BRJunmHm.js} +1 -1
- package/dist-embed/chunks/{km-KH-HSX4SM5Z-CoMUUQMb.js → km-KH-HSX4SM5Z--GJgT9rN.js} +1 -1
- package/dist-embed/chunks/{ko-KR-MTYHY66A-DwxY8CGI.js → ko-KR-MTYHY66A-Bjnez4qR.js} +1 -1
- package/dist-embed/chunks/{ku-TR-6OUDTVRD-UoNYUfm0.js → ku-TR-6OUDTVRD-DgOdYJrS.js} +1 -1
- package/dist-embed/chunks/{lt-LT-XHIRWOB4-Dr4uXaEj.js → lt-LT-XHIRWOB4-BMwhrtjM.js} +1 -1
- package/dist-embed/chunks/{lv-LV-5QDEKY6T-CNC56J-_.js → lv-LV-5QDEKY6T-0pxW7YE0.js} +1 -1
- package/dist-embed/chunks/{mr-IN-CRQNXWMA-BKWa9nzZ.js → mr-IN-CRQNXWMA-tndp8BXC.js} +1 -1
- package/dist-embed/chunks/{my-MM-5M5IBNSE-bwAzOWhV.js → my-MM-5M5IBNSE-sispDhO4.js} +1 -1
- package/dist-embed/chunks/{nb-NO-T6EIAALU-CkpsChor.js → nb-NO-T6EIAALU-CjBurOuS.js} +1 -1
- package/dist-embed/chunks/{nl-NL-IS3SIHDZ-COVk4rlb.js → nl-NL-IS3SIHDZ-B58EVmr3.js} +1 -1
- package/dist-embed/chunks/{nn-NO-6E72VCQL-DlyFF-C1.js → nn-NO-6E72VCQL-D1p7LZSq.js} +1 -1
- package/dist-embed/chunks/{oc-FR-POXYY2M6-CFDosV2C.js → oc-FR-POXYY2M6-C1M8sddP.js} +1 -1
- package/dist-embed/chunks/{pa-IN-N4M65BXN-BKRB3O0U.js → pa-IN-N4M65BXN-D8ESzASl.js} +1 -1
- package/dist-embed/chunks/{percentages-BXMCSKIN-D7pnqUsZ.js → percentages-BXMCSKIN-BihMTsFR.js} +3 -3
- package/dist-embed/chunks/{pl-PL-T2D74RX3-C5r2Tds7.js → pl-PL-T2D74RX3-DQGe6LHC.js} +1 -1
- package/dist-embed/chunks/{pt-BR-5N22H2LF-CDnT98bW.js → pt-BR-5N22H2LF-CvXBgZQs.js} +1 -1
- package/dist-embed/chunks/{pt-PT-UZXXM6DQ-C6c4SPk1.js → pt-PT-UZXXM6DQ-BMnnlIUJ.js} +1 -1
- package/dist-embed/chunks/{ro-RO-JPDTUUEW-CW6pbzEZ.js → ro-RO-JPDTUUEW-DZ-9UUH7.js} +1 -1
- package/dist-embed/chunks/{ru-RU-B4JR7IUQ-CbaAJG0w.js → ru-RU-B4JR7IUQ-JlRBwjob.js} +1 -1
- package/dist-embed/chunks/{si-LK-N5RQ5JYF-BZkUjpXF.js → si-LK-N5RQ5JYF-Bx8kHnkd.js} +1 -1
- package/dist-embed/chunks/{sk-SK-C5VTKIMK-DsfWgpPU.js → sk-SK-C5VTKIMK-xsfEfbZb.js} +1 -1
- package/dist-embed/chunks/{sl-SI-NN7IZMDC-Kx0FqxKU.js → sl-SI-NN7IZMDC-SQYUECnr.js} +1 -1
- package/dist-embed/chunks/{subset-shared.chunk-DM3l9OuH.js → subset-shared.chunk-Ch6j8nKC.js} +1 -1
- package/dist-embed/chunks/{subset-worker.chunk-4w4yibm3.js → subset-worker.chunk-pJjck5pR.js} +1 -1
- package/dist-embed/chunks/{sv-SE-XGPEYMSR-DY0ryO-L.js → sv-SE-XGPEYMSR-BxcjSHE2.js} +1 -1
- package/dist-embed/chunks/{ta-IN-2NMHFXQM-CWpIs0i0.js → ta-IN-2NMHFXQM-rItSkDUS.js} +1 -1
- package/dist-embed/chunks/{th-TH-HPSO5L25-Cwkcfb3u.js → th-TH-HPSO5L25-B7UzESFj.js} +1 -1
- package/dist-embed/chunks/{tr-TR-DEFEU3FU-BqJZZl-Y.js → tr-TR-DEFEU3FU-Ci6oNfEX.js} +1 -1
- package/dist-embed/chunks/{uk-UA-QMV73CPH-Dg213mG4.js → uk-UA-QMV73CPH-C9csqvO6.js} +1 -1
- package/dist-embed/chunks/{vi-VN-M7AON7JQ-DY94NKxF.js → vi-VN-M7AON7JQ-DRAj2kZj.js} +1 -1
- package/dist-embed/chunks/{zh-CN-LNUGB5OW-B6I9A7sA.js → zh-CN-LNUGB5OW-DLOyW8hH.js} +1 -1
- package/dist-embed/chunks/{zh-HK-E62DVLB3-D3oqgDOt.js → zh-HK-E62DVLB3-DwC6_2Ws.js} +1 -1
- package/dist-embed/chunks/{zh-TW-RAJ6MFWO-CYwgY0Jo.js → zh-TW-RAJ6MFWO-DEMugIwa.js} +1 -1
- package/dist-embed/datalayer-app-main.js +156 -156
- package/lib/apps/apps/appspec.d.ts +13 -0
- package/lib/apps/apps/appspec.js +93 -0
- package/lib/apps/apps/checks.d.ts +1 -1
- package/lib/apps/apps/checks.js +2 -2
- package/lib/apps/apps/customComponents.js +1 -1
- package/lib/apps/core/canvasBlocks.d.ts +3 -3
- package/lib/apps/core/canvasParts.d.ts +6 -4
- package/lib/apps/core/index.d.ts +8 -0
- package/lib/apps/embed/AppEmbed.js +13 -20
- package/lib/apps/embed/embedSession.d.ts +8 -4
- package/lib/apps/embed/embedSession.js +16 -9
- package/lib/apps/embed/hostBridge.d.ts +47 -13
- package/lib/apps/embed/hostBridge.js +135 -18
- package/lib/apps/index.d.ts +1 -1
- package/lib/apps/index.js +1 -1
- package/lib/apps/plugins/a2ui-surface/AnswerShows.d.ts +21 -0
- package/lib/apps/plugins/a2ui-surface/AnswerShows.js +29 -0
- package/lib/apps/plugins/a2ui-surface/SurfaceToolResult.js +4 -7
- package/lib/apps/plugins/a2ui-surface/index.d.ts +2 -1
- package/lib/apps/plugins/a2ui-surface/index.js +10 -1
- package/lib/apps/plugins/a2ui-surface/toolResult.d.ts +20 -11
- package/lib/apps/plugins/a2ui-surface/toolResult.js +27 -11
- package/lib/apps/plugins/app-components/index.d.ts +1 -1
- package/lib/apps/plugins/app-components/index.js +2 -2
- package/lib/apps/plugins/app-elements/AppElements.d.ts +3 -3
- package/lib/apps/plugins/app-elements/AppElements.js +5 -20
- package/lib/apps/plugins/app-elements/QuestionView.d.ts +30 -0
- package/lib/apps/plugins/app-elements/QuestionView.js +70 -0
- package/lib/apps/plugins/app-elements/index.d.ts +7 -4
- package/lib/apps/plugins/app-elements/index.js +14 -5
- package/lib/apps/plugins/app-page/appPageModel.d.ts +6 -8
- package/lib/apps/plugins/app-page/appPageModel.js +0 -2
- package/lib/apps/plugins/app-page/pageRun.d.ts +2 -2
- package/lib/apps/plugins/app-page/pageRun.js +3 -3
- package/lib/apps/plugins/canvas-blocks/index.d.ts +13 -13
- package/lib/apps/plugins/canvas-blocks/index.js +24 -24
- package/lib/apps/plugins/canvas-parts/index.d.ts +7 -1
- package/lib/apps/plugins/canvas-parts/index.js +36 -0
- package/lib/apps/plugins/chat/ChatView.js +29 -3
- package/lib/chat/base/ChatBase.js +264 -43
- package/lib/chat/base/loopElement.d.ts +16 -17
- package/lib/chat/base/loopElement.js +11 -27
- package/lib/chat/base/loopStep.d.ts +15 -15
- package/lib/chat/base/loopStep.js +10 -13
- package/lib/chat/base/loopWindow.d.ts +15 -20
- package/lib/chat/base/loopWindow.js +26 -27
- package/lib/chat/base/uiFiles.d.ts +29 -0
- package/lib/chat/base/uiFiles.js +69 -0
- package/lib/chat/base/uiOps.d.ts +96 -0
- package/lib/chat/base/uiOps.js +251 -0
- package/lib/chat/messages/ChatMessageList.d.ts +13 -1
- package/lib/chat/messages/ChatMessageList.js +4 -4
- package/lib/components/a2ui/datalayer/Chart.d.ts +1 -1
- package/lib/components/a2ui/datalayer/schema.js +1 -1
- package/lib/components/teams/AnswerSurfaces.d.ts +3 -2
- package/lib/components/teams/AnswerSurfaces.js +7 -7
- package/lib/components/teams/useA2ATeam.d.ts +1 -1
- package/lib/config/AgentConfiguration.d.ts +1 -1
- package/lib/examples/ProtocolSignedRequestsExample.d.ts +10 -0
- package/lib/examples/ProtocolSignedRequestsExample.js +41 -0
- package/lib/examples/ProtocolUcpCheckoutExample.d.ts +10 -0
- package/lib/examples/ProtocolUcpCheckoutExample.js +59 -0
- package/lib/examples/example-selector.js +2 -0
- package/lib/examples/exampleGroups.d.ts +1 -1
- package/lib/examples/exampleGroups.js +4 -0
- package/lib/examples/index.d.ts +2 -0
- package/lib/examples/index.js +2 -0
- package/lib/examples/protocols/signedRequestsDemo.d.ts +27 -0
- package/lib/examples/protocols/signedRequestsDemo.js +59 -0
- package/lib/examples/protocols/ucpCheckoutDemo.d.ts +36 -0
- package/lib/examples/protocols/ucpCheckoutDemo.js +68 -0
- package/lib/protocols/AGUIAdapter.d.ts +7 -0
- package/lib/protocols/AGUIAdapter.js +43 -3
- package/lib/protocols/a2a/index.js +1 -0
- package/lib/protocols/agentic-commerce/index.js +1 -0
- package/lib/protocols/core.d.ts +6 -0
- package/lib/protocols/mcp/index.js +1 -0
- package/lib/protocols/pact/index.js +1 -0
- package/lib/protocols/ucp/index.js +1 -0
- package/lib/protocols/ucp/merchant.d.ts +15 -0
- package/lib/protocols/ucp/merchant.js +257 -0
- package/lib/protocols/web-bot-auth/index.js +1 -0
- package/lib/specs/agents/agents.js +338 -169
- package/lib/specs/apps.js +134 -6
- package/lib/specs/appspecSchema.js +59 -0
- package/lib/specs/cogs.js +6 -3
- package/lib/specs/index.d.ts +2 -1
- package/lib/specs/index.js +2 -1
- package/lib/specs/protocols.d.ts +24 -0
- package/lib/specs/protocols.js +197 -0
- package/lib/specs/ui.d.ts +21 -0
- package/lib/specs/{uiPlugins.js → ui.js} +14 -14
- package/lib/types/agentspecs.d.ts +69 -5
- package/lib/types/messages.d.ts +7 -0
- package/lib/types/protocol.d.ts +15 -0
- package/package.json +2 -2
- package/scripts/codegen/generate_agents.py +43 -8
- package/scripts/codegen/generate_protocols.py +207 -0
- package/scripts/codegen/generate_sandbox_agents.py +1 -1
- package/scripts/codegen/{generate_ui_plugins.py → generate_ui.py} +40 -40
- package/scripts/gen_workers.py +2 -2
- package/dist-embed/chunks/ChatView-D41Nx5rC.js +0 -32
- package/lib/chat/base/loopMessage.d.ts +0 -37
- package/lib/chat/base/loopMessage.js +0 -37
- package/lib/specs/uiPlugins.d.ts +0 -21
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{r as o,c0 as S,ee as I,dG as K,ef as x,eg as E,eh as A,ei as R,af as T,v as F,ai as L,ak as B,J as O,d8 as M,cF as D,cR as q}from"../datalayer-app-main.js";import{o as H}from"./index-1wTrAXI1.js";import{a as U}from"./tokens-_fLcuFXz.js";import{I as W}from"./tokens-BHLmeqjP.js";import"./Output-2KxoKu5F.js";import"./index-BvvaLLhn.js";import"./hoverbox-CStlKQWE.js";import"./index-BYQwy0Zx.js";import"./index-BJ7Yskx5.js";import"./color-CG7_7V2-.js";import"./isEqual-BybBNsZK.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-B3WvcNQa.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-CQlXdanG.js";import"./NotebookSkeleton-HdM76lOj.js";import"./Avatar-DbU3YP4x.js";import"./renderer-lVFw9lw7.js";import"./SquareIcon-e3ygcjpv.js";import"./SortAscIcon-CVKVWIWQ.js";import"./url-DuKx0yk0.js";/* empty css */import"./index-Dro44tIm.js";/* empty css *//* empty css */import"./index-DsG9xhMj.js";/* empty css */import"./index-CNU-WVhQ.js";import"./index--OLIX362.js";import"./index-DYGslHkf.js";import"./index-BSRVX3UN.js";import"./index-BH2OX5l8.js";import"./index-C3vDfO5_.js";import"./index-Ko8lxXFd.js";import"./index-CB9u17_J.js";import"./index-BUVtc_FV.js";import"./ArrowLeftIcon-Y3PTljcl.js";import"./SkubbleIcon-tlg17jBG.js";import"./usePrimerThemeBridge-D_1NuGKb.js";import"./index-j-oeqTuo.js";import"./KernelVariables-KCUfxhF4.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-DMKCe3c2.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-6Hdi_m3T.js";import"./sessions-3PQsLINe.js";import"./tokens-BfuLIPUq.js";import"./drivecontents-Bg9_6Kmo.js";import"./kernel-BI-BLP-K.js";var _;(function(a){a.editBinding="shortcuts:edit-keybinding",a.addBinding="shortcuts:add-keybinding",a.deleteBinding="shortcuts:delete-keybinding",a.toggleSelectors="shortcuts:toggle-selectors",a.resetAll="shortcuts:reset-all"})(_||(_={}));const j="jp-Shortcuts-ConflictContainer";class C extends o.Component{constructor(e){super(e),this.handleSubmit=async()=>{this._isReplacingExistingKeybinding?this.state.selected?this.props.toggleInput():await this._updateShortcut():(await this._updateShortcut(),this.props.toggleInput())},this._updateShortcut=async()=>{const t=[...this.state.keys,this.state.currentChain];this.setState({keys:t}),this.props.keybinding?await this.props.replaceKeybinding(this.props.shortcut,this.props.keybinding,t):await this.props.addKeybinding(this.props.shortcut,t)},this._handleOverwrite=async(t,i)=>{for(const s of t){const n=s.keybindings.filter(r=>S.deepEqual(r.keys,i)||i.some(h=>S.deepEqual(r.keys,[h])))[0];if(!n){console.error(`Conflicting binding could not be found for ${s} using keys ${i}`);continue}await this.props.deleteKeybinding(s,n)}await this._updateShortcut()},this.parseChaining=(t,i,s,n,r)=>{let h=I.keyForKeydownEvent(t.nativeEvent);const m=["Shift","Control","Alt","Meta","Ctrl","Accel"];if(t.key==="Backspace")s="",i="",n=[],r="",this.setState({value:i,userInput:s,keys:n,currentChain:r});else if(t.key!=="CapsLock"){const y=s.substr(s.lastIndexOf(" ")+1,s.length).trim();m.lastIndexOf(y)===-1&&y!=""?(s=s+",",n.push(r),r="",t.ctrlKey&&t.key!="Control"&&(s=(s+" Ctrl").trim(),r=(r+" Ctrl").trim()),t.metaKey&&t.key!="Meta"&&(s=(s+" Accel").trim(),r=(r+" Accel").trim()),t.altKey&&t.key!="Alt"&&(s=(s+" Alt").trim(),r=(r+" Alt").trim()),t.shiftKey&&t.key!="Shift"&&(s=(s+" Shift").trim(),r=(r+" Shift").trim()),m.lastIndexOf(t.key)===-1?(s=(s+" "+h).trim(),r=(r+" "+h).trim()):t.key==="Meta"?(s=(s+" Accel").trim(),r=(r+" Accel").trim()):t.key==="Control"?(s=(s+" Ctrl").trim(),r=(r+" Ctrl").trim()):t.key==="Shift"?(s=(s+" Shift").trim(),r=(r+" Shift").trim()):t.key==="Alt"?(s=(s+" Alt").trim(),r=(r+" Alt").trim()):(s=(s+" "+t.key).trim(),r=(r+" "+t.key).trim())):t.key==="Control"?(s=(s+" Ctrl").trim(),r=(r+" Ctrl").trim()):t.key==="Meta"?(s=(s+" Accel").trim(),r=(r+" Accel").trim()):t.key==="Shift"?(s=(s+" Shift").trim(),r=(r+" Shift").trim()):t.key==="Alt"?(s=(s+" Alt").trim(),r=(r+" Alt").trim()):(s=(s+" "+h).trim(),r=(r+" "+h).trim())}return this.setState({keys:n,currentChain:r}),[s,n,r]},this.checkNonFunctional=()=>{const t=["Ctrl","Alt","Accel","Shift"],i=this.state.currentChain.split(" "),s=i[i.length-1];return this.setState({isFunctional:t.indexOf(s)===-1}),t.indexOf(s)!==-1},this.checkShortcutAvailability=(t,i,s)=>{const n=this.props.findConflictsFor([...i,s],this.props.shortcut.selector),r=t===""||n.length===0;return!r&&n.length===1&&n[0].id===this.props.shortcut.id&&this._isReplacingExistingKeybinding?(this.setState({isAvailable:!0}),[]):(this.setState({isAvailable:r}),n)},this.handleInput=t=>{t.preventDefault(),this.setState({selected:!1});const i=this.parseChaining(t,this.state.value,this.state.userInput,this.state.keys,this.state.currentChain),s=i[0],n=i[1],r=i[2],h=this.props.toSymbols(s);let m=this.checkShortcutAvailability(s,n,r);this.setState({value:h,userInput:s,keys:n,currentChain:r},()=>{this.checkNonFunctional(),this._emitConflicts(m)})},this._handleBlur=t=>{var i,s;!((i=this._ref.current)===null||i===void 0)&&i.contains(t.relatedTarget)||!((s=t.relatedTarget)===null||s===void 0)&&s.closest(`.${j}`)||this.props.toggleInput()},this._ref=o.createRef(),this.state={value:this.props.placeholder,userInput:"",isAvailable:!0,isFunctional:this._isReplacingExistingKeybinding,keys:[],currentChain:"",selected:!0}}get _isReplacingExistingKeybinding(){return!!this.props.keybinding}_emitConflicts(e){const t=[...this.state.keys,this.state.currentChain];this.props.displayConflicts({conflictsWith:e,keys:this.state.keys,overwrite:async()=>{this.setState({isAvailable:!0}),await this._handleOverwrite(e,t),this.props.toggleInput()},cancel:()=>{this.props.toggleInput()}})}render(){const e=this.props.translator.load("jupyterlab");let t="jp-Shortcuts-Input";return this.state.isAvailable||(t+=" jp-mod-unavailable-Input"),o.createElement("div",{className:this.props.displayInput?this._isReplacingExistingKeybinding?"jp-Shortcuts-InputBox":"jp-Shortcuts-InputBox jp-Shortcuts-InputBoxNew":"jp-mod-hidden",ref:this._ref,onBlur:this._handleBlur},o.createElement("div",{tabIndex:0,className:t,onKeyDown:this.handleInput,ref:i=>i&&i.focus(),"data-lm-suppress-shortcuts":"true"},o.createElement("p",{className:this.state.selected&&this._isReplacingExistingKeybinding?"jp-Shortcuts-InputText jp-mod-selected-InputText":this.state.value===""?"jp-Shortcuts-InputText jp-mod-waiting-InputText":"jp-Shortcuts-InputText"},this.state.value===""?e.__("press keys"):this.state.value)),o.createElement("button",{className:this.state.isFunctional?this.state.isAvailable?"jp-Shortcuts-Submit":"jp-Shortcuts-Submit jp-mod-conflict-Submit":"jp-Shortcuts-Submit jp-mod-defunc-Submit",disabled:!this.state.isAvailable||!this.state.isFunctional,onClick:this.handleSubmit,tabIndex:0},this.state.isAvailable?o.createElement(K.react,null):o.createElement(x.react,null)))}}class Q extends o.Component{constructor(e){super(e),this.toggleInputNew=()=>{this.setState({displayNewInput:!this.state.displayNewInput,conflicts:new Map})},this.toSymbols=t=>t.split(" ").reduce((i,s)=>s==="Ctrl"?(i+" ⌃").trim():s==="Alt"?(i+" ⌥").trim():s==="Shift"?(i+" ⇧").trim():s==="Accel"&&E.IS_MAC?(i+" ⌘").trim():s==="Accel"?(i+" ⌃").trim():(i+" "+s).trim(),""),this._trans=this.props.external.translator.load("jupyterlab"),this.state={displayNewInput:!1,displayReplaceInput:Object.freeze({}),conflicts:new Map}}componentDidMount(){this.props.external.actionRequested.connect(this._onActionRequested,this)}componentWillUnmount(){this.props.external.actionRequested.disconnect(this._onActionRequested,this)}async _onActionRequested(e,t){if(!("shortcutId"in t&&t.shortcutId!==this.props.shortcut.id)){if(t.request==="add-keybinding")return this.toggleInputNew();if(t.request==="edit-keybinding"&&this.toggleInputReplaceMethod(t.keybinding),t.request==="delete-keybinding"){const i=this.props.shortcut,s=i.keybindings[t.keybinding];this.props.deleteKeybinding(i,s).catch(console.error)}}}getCategoryCell(){return o.createElement("div",{className:"jp-Shortcuts-Cell"},this.props.shortcut.category)}getLabelCell(){var e;return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"jp-label"},(e=this.props.shortcut.label)!==null&&e!==void 0?e:this._trans.__("(Command label missing)")))}getResetShortCutLink(){return o.createElement("a",{className:"jp-Shortcuts-Reset",onClick:()=>this.props.resetKeybindings(this.props.shortcut)},this._trans.__("Reset"))}getSourceCell(){const e=this.props.shortcut.keybindings.every(t=>t.isDefault);return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"jp-Shortcuts-SourceCell"},e?this._trans.__("Default"):this._trans.__("Custom")),e?"":this.getResetShortCutLink())}getOptionalSelectorCell(){return this.props.showSelectors?o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"jp-selector"},this.props.shortcut.selector)):null}getClassNameForShortCuts(e){const t=["jp-Shortcuts-ShortcutCell"];switch(e.length){case 1:t.push("jp-Shortcuts-SingleCell");break;case 0:t.push("jp-Shortcuts-EmptyCell");break}return t.join(" ")}toggleInputReplaceMethod(e){const t=this.state.displayReplaceInput[e];this.setState({displayReplaceInput:{...this.state.displayReplaceInput,[e]:!t},conflicts:new Map})}getDisplayReplaceInput(e){return this.state.displayReplaceInput[e]}getOrDiplayIfNeeded(e){const t=["jp-Shortcuts-Or"];return(e||this.state.displayNewInput)&&t.push("jp-Shortcuts-Or-Forced"),o.createElement("div",{className:t.join(" ")},this._trans.__("or"))}getShortCutAsInput(e,t){return o.createElement(C,{addKeybinding:this.props.addKeybinding,replaceKeybinding:this.props.replaceKeybinding,deleteKeybinding:this.props.deleteKeybinding,findConflictsFor:this.props.findConflictsFor,toggleInput:()=>this.toggleInputReplaceMethod(t),shortcut:this.props.shortcut,keybinding:e,displayConflicts:i=>{const s=new Map(this.state.conflicts);s.set(e,i),this.setState({conflicts:s})},toSymbols:this.toSymbols,displayInput:this.getDisplayReplaceInput(t),placeholder:this.toSymbols(e.keys.join(", ")),translator:this.props.external.translator})}getShortCutForDisplayOnly(e){return e.keys.map((t,i)=>o.createElement("div",{className:"jp-Shortcuts-ShortcutKeysContainer",key:i},o.createElement("div",{className:"jp-Shortcuts-ShortcutKeys"},this.toSymbols(t)),i+1<e.keys.length?o.createElement("div",{className:"jp-Shortcuts-Comma"},","):null))}isLocationBeingEdited(e){return this.state.displayReplaceInput[e]}getDivForKey(e,t,i){return o.createElement("div",{className:"jp-Shortcuts-ShortcutContainer",key:this.props.shortcut.id+"_"+e,"data-keybinding":e,"data-shortcut":this.props.shortcut.id,onClick:()=>this.toggleInputReplaceMethod(e)},this.isLocationBeingEdited(e)?this.getShortCutAsInput(t,e):this.getShortCutForDisplayOnly(t),!(e===this._nonEmptyBindings.length-1&&Object.values(this.state.displayReplaceInput).some(Boolean))&&this.getOrDiplayIfNeeded(e<this._nonEmptyBindings.length-1))}getAddLink(){return o.createElement("a",{className:this.state.displayNewInput?"":"jp-Shortcuts-Plus",onClick:()=>{this.toggleInputNew()}},this._trans.__("Add"))}getInputBoxWhenToggled(){return this.state.displayNewInput?o.createElement(C,{addKeybinding:this.props.addKeybinding,replaceKeybinding:this.props.replaceKeybinding,deleteKeybinding:this.props.deleteKeybinding,findConflictsFor:this.props.findConflictsFor,toggleInput:this.toggleInputNew,shortcut:this.props.shortcut,displayConflicts:e=>{const t=new Map(this.state.conflicts);t.set(null,e),this.setState({conflicts:t})},toSymbols:this.toSymbols,displayInput:this.state.displayNewInput,placeholder:"",translator:this.props.external.translator}):o.createElement("div",null)}getShortCutsCell(e){return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:this.getClassNameForShortCuts(e)},e.map((t,i)=>this.getDivForKey(i,t,e)),e.length>=1&&!this.state.displayNewInput&&!Object.values(this.state.displayReplaceInput).some(Boolean)&&this.getAddLink(),e.length===0&&!this.state.displayNewInput&&this.getAddLink(),this.getInputBoxWhenToggled()))}getConflicts(){const e=[...this.state.conflicts.values()].filter(t=>t.conflictsWith.length!==0);return e.length===0?o.createElement(o.Fragment,null):o.createElement("div",{className:"jp-Shortcuts-Row jp-Shortcuts-RowWithConflict"},o.createElement("div",{className:j},e.map(t=>{const i=t.keys.join(" ")+"_"+t.conflictsWith.map(s=>s.id).join("");return o.createElement("div",{className:"jp-Shortcuts-Conflict",key:i},o.createElement("div",{className:"jp-Shortcuts-ErrorMessage"},this._trans.__("Shortcut already in use by %1. Overwrite it?",t.conflictsWith.map(s=>{var n;return(n=s.label)!==null&&n!==void 0?n:s.command}).join(", "))),o.createElement("div",{className:"jp-Shortcuts-ErrorButton"},o.createElement("button",{className:"jp-Button jp-mod-reject jp-mod-styled",onClick:()=>{this._clearConflict(t),t.cancel()}},this._trans.__("Cancel")),o.createElement("button",{className:"jp-Button jp-mod-warn jp-mod-styled",onClick:()=>{this._clearConflict(t),t.overwrite()}},this._trans.__("Overwrite"))))})))}_clearConflict(e){const t=new Map,i=this._conflictId(e);for(const[s,n]of this.state.conflicts.entries())this._conflictId(n)!==i&&t.set(s,n);this.setState({conflicts:t})}_conflictId(e){return e.keys.join(" ")+"_"+e.conflictsWith.map(t=>t.id).join("")}get _nonEmptyBindings(){return this.props.shortcut.keybindings.filter(e=>e.keys.filter(t=>t!="").length!==0)}render(){return o.createElement(o.Fragment,null,o.createElement("div",{className:"jp-Shortcuts-Row","data-shortcut":this.props.shortcut.id},this.getCategoryCell(),this.getLabelCell(),this.getShortCutsCell(this._nonEmptyBindings),this.getSourceCell(),this.getOptionalSelectorCell()),this.getConflicts())}}const $=115;class z extends o.Component{render(){return o.createElement("div",{className:"jp-Shortcuts-ShortcutListContainer",style:{height:`${this.props.height-$}px`},id:"shortcutListContainer"},o.createElement("div",{className:"jp-Shortcuts-ShortcutList"},this.props.shortcuts.map(e=>o.createElement(Q,{key:e.id,addKeybinding:this.props.addKeybinding,replaceKeybinding:this.props.replaceKeybinding,deleteKeybinding:this.props.deleteKeybinding,resetKeybindings:this.props.resetKeybindings,findConflictsFor:this.props.findConflictsFor,shortcut:e,showSelectors:this.props.showSelectors,external:this.props.external}))))}}class P extends o.Component{render(){return o.createElement("div",{className:this.props.title.toLowerCase()===this.props.active?"jp-Shortcuts-Header jp-Shortcuts-CurrentHeader":"jp-Shortcuts-Header",onClick:()=>this.props.updateSort(this.props.columnId)},this.props.title,o.createElement(A.react,{className:"jp-Shortcuts-SortButton jp-ShortcutTitleItem-sortButton"}))}}function J(a){return o.createElement("div",{className:"jp-Shortcuts-Symbols"},o.createElement("table",null,o.createElement("tbody",null,o.createElement("tr",null,o.createElement("td",null,o.createElement("kbd",null,"Cmd")),o.createElement("td",null,"⌘"),o.createElement("td",null,o.createElement("kbd",null,"Ctrl")),o.createElement("td",null,"⌃")),o.createElement("tr",null,o.createElement("td",null,o.createElement("kbd",null,"Alt")),o.createElement("td",null,"⌥"),o.createElement("td",null,o.createElement("kbd",null,"Shift")),o.createElement("td",null,"⇧")))))}function G(a){const e=a.translator.load("jupyterlab");return o.createElement("div",{className:"jp-Shortcuts-AdvancedOptions"},o.createElement("a",{className:"jp-Shortcuts-AdvancedOptionsLink",onClick:()=>a.toggleSelectors()},a.showSelectors?e.__("Hide Selectors"):e.__("Show Selectors")),o.createElement("a",{className:"jp-Shortcuts-AdvancedOptionsLink",onClick:()=>a.resetShortcuts()},e.__("Reset All")))}class V extends o.Component{constructor(e){super(e)}getShortCutTitleItem(e,t){return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement(P,{title:e,updateSort:this.props.updateSort,active:this.props.currentSort,columnId:t}))}render(){const e=this.props.translator.load("jupyterlab");return o.createElement("div",{className:"jp-Shortcuts-Top"},o.createElement("div",{className:"jp-Shortcuts-TopNav"},o.createElement(J,null),o.createElement(H,{"aria-label":e.__("Search shortcuts"),updateFilter:(t,i)=>this.props.updateSearchQuery(i??""),placeholder:e.__("Search…"),useFuzzyFilter:!1}),o.createElement(G,{toggleSelectors:this.props.toggleSelectors,showSelectors:this.props.showSelectors,resetShortcuts:this.props.resetShortcuts,translator:this.props.translator})),o.createElement("div",{className:"jp-Shortcuts-HeaderRowContainer"},o.createElement("div",{className:"jp-Shortcuts-HeaderRow"},this.getShortCutTitleItem(e.__("Category"),"category"),this.getShortCutTitleItem(e.__("Command"),"command"),o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"title-div"},e.__("Shortcut"))),this.getShortCutTitleItem(e.__("Source"),"source"),this.props.showSelectors&&this.getShortCutTitleItem(e.__("Selectors"),"selector"))))}}class X extends Map{constructor(e){var t,i,s;super();const{settings:n,commandRegistry:r}=e,h=(t=n.user.shortcuts)!==null&&t!==void 0?t:[],m=new Set(h.map(this._computeKeybindingId.bind(this))),y=(i=n.composite.shortcuts)!==null&&i!==void 0?i:[];for(const p of y){const c=this._computeTargetId(p),u=this._computeKeybindingId(p),d={keys:p.keys,isDefault:!m.has(u)},l=this.get(c);if(l)l.keybindings.push(d);else{const g=p.command.split(":"),f=(s=r.label(p.command,p.args))!==null&&s!==void 0?s:g.length>1?g[1]:void 0,v=g[0];this.set(c,{id:c,selector:p.selector,command:p.command,category:v,label:f,args:p.args,keybindings:[d]})}}}findConflictsFor(e,t){const i=new Y({registry:this});let s=i.findConflicts(e,t);if(s.length!==0)return s;for(const n of e)if(s=i.findConflicts([n],t),s.length!==0)return s;return[]}_computeTargetId(e){var t;return e.command+"_"+e.selector+"_"+JSON.stringify((t=e.args)!==null&&t!==void 0?t:{})}_computeKeybindingId(e){var t;return[e.command,e.selector,JSON.stringify((t=e.args)!==null&&t!==void 0?t:{}),e.keys.join(" ")].join("_")}}class Y{constructor(e){var t;const i=new Map;for(const s of e.registry.values())for(const n of s.keybindings){const r=this._keybindingHash(n.keys,s.selector),h=(t=i.get(r))!==null&&t!==void 0?t:[];h.push(s),i.set(r,h)}this._keybindingsMap=i}findConflicts(e,t){var i;const s=this._keybindingHash(e,t);return(i=this._keybindingsMap.get(s))!==null&&i!==void 0?i:[]}_keybindingHash(e,t){return e.join(" ")+"_"+t}}function Z(a){return a.replace(/\s+/g,"").toLowerCase()}function tt(a,e){var t;const i=a.category.toLowerCase(),s=((t=a.label)!==null&&t!==void 0?t:"").toLowerCase(),n=`${i} ${s}`;let r=1/0,h=null;const m=/\b\w/g;for(;;){const d=m.exec(n);if(!d)break;const l=R.matchSumOfDeltas(n,e,d.index);if(!l)break;l&&l.score<=r&&(r=l.score,h=l.indices)}if(!h||r===1/0)return null;const y=i.length+1,p=T.lowerBound(h,y,(d,l)=>d-l),c=h.slice(0,p),u=h.slice(p);for(let d=0,l=u.length;d<l;++d)u[d]-=y;return c.length===0?{matchType:0,categoryIndices:null,labelIndices:u,score:r,item:a}:u.length===0?{matchType:1,categoryIndices:c,labelIndices:null,score:r,item:a}:{matchType:2,categoryIndices:c,labelIndices:u,score:r,item:a}}function et(a,e){e=Z(e);let t=[];for(const i of a.values()){if(!e){t.push({matchType:3,categoryIndices:null,labelIndices:null,score:0,item:i});continue}let s=tt(i,e);s&&t.push(s)}return t}class st extends o.Component{constructor(e){super(e),this.updateSearchQuery=t=>{this.setState({searchQuery:t},()=>{const i=this.state.shortcutRegistry;this.setState({filteredShortcutList:this._searchFilterShortcuts(i)},()=>{this.sortShortcuts()})})},this.resetShortcuts=async()=>{await(await this.props.external.getSettings()).set("shortcuts",[]),await this._refreshShortcutList()},this.resetKeybindings=async t=>{await this._setKeybinding(t,[])},this.replaceKeybinding=async(t,i,s)=>this._setKeybinding(t,s,i),this.deleteKeybinding=async(t,i)=>{await this._setKeybinding(t,[],i)},this.addKeybinding=async(t,i)=>{await this._setKeybinding(t,i)},this.toggleSelectors=()=>{this.setState({showSelectors:!this.state.showSelectors})},this.updateSort=t=>{t!==this.state.currentSort&&this.setState({currentSort:t},this.sortShortcuts)},this.state={shortcutRegistry:null,filteredShortcutList:new Array,shortcutsFetched:!1,searchQuery:"",showSelectors:!1,currentSort:"category"}}componentDidMount(){this.props.external.actionRequested.connect(this._onActionRequested,this),this._refreshShortcutList()}componentWillUnmount(){this.props.external.actionRequested.disconnect(this._onActionRequested,this)}async _onActionRequested(e,t){if(t.request==="toggle-selectors")return this.toggleSelectors();t.request==="reset-all"&&await this.resetShortcuts()}async _refreshShortcutList(){const e=await this.props.external.getSettings(),t=new X({commandRegistry:this.props.external.commandRegistry,settings:e});this.setState({shortcutRegistry:t,filteredShortcutList:this._searchFilterShortcuts(t),shortcutsFetched:!0},()=>{this.sortShortcuts()})}_searchFilterShortcuts(e){return e?et(e,this.state.searchQuery).map(i=>i.item):[]}async _setKeybinding(e,t,i){var s,n,r,h,m;t.length===1&&t[0]==""&&(t=[]);const y=await this.props.external.getSettings(),p=(s=y.user.shortcuts)!==null&&s!==void 0?s:[],c=[];let u=!1;for(let d of p)if(d.command===e.command&&d.selector===e.selector&&S.deepEqual((n=d.args)!==null&&n!==void 0?n:{},(r=e.args)!==null&&r!==void 0?r:{})&&i&&S.deepEqual(i.keys,d.keys)){const l=i&&i.isDefault&&S.deepEqual(i.keys,t);t.length!==0&&!l&&c.push({command:d.command,selector:d.selector,keys:t}),u=!0}else{if(d.command===e.command&&d.selector===e.selector&&S.deepEqual((h=d.args)!==null&&h!==void 0?h:{},(m=e.args)!==null&&m!==void 0?m:{})&&!i&&t.length===0)continue;c.push(d)}if(!u){const d=!i||!S.deepEqual(i.keys,t);i&&i.isDefault&&d&&c.push({command:e.command,selector:e.selector,disabled:!0,keys:i.keys}),t.length!==0&&c.push({command:e.command,selector:e.selector,keys:t})}await y.set("shortcuts",c),await this._refreshShortcutList()}sortShortcuts(){const e=this.state.filteredShortcutList;let t=this.state.currentSort;t==="command"&&(t="label");const i=s=>{var n;return t==="source"?s.keybindings.every(r=>r.isDefault)?"default":"other":(n=s[t])!==null&&n!==void 0?n:""};e.sort((s,n)=>{var r,h;const m=i(s),y=i(n),p=m.localeCompare(y);if(p)return p;{const c=(r=s.label)!==null&&r!==void 0?r:"",u=(h=n.label)!==null&&h!==void 0?h:"";return c.localeCompare(u)}}),this.setState({filteredShortcutList:e})}render(){return this.state.shortcutsFetched?o.createElement("div",{className:"jp-Shortcuts-ShortcutUI",id:"jp-shortcutui"},o.createElement(V,{updateSearchQuery:this.updateSearchQuery,resetShortcuts:this.resetShortcuts,toggleSelectors:this.toggleSelectors,showSelectors:this.state.showSelectors,updateSort:this.updateSort,currentSort:this.state.currentSort,width:this.props.width,translator:this.props.external.translator}),o.createElement(z,{shortcuts:this.state.filteredShortcutList,resetKeybindings:this.resetKeybindings,addKeybinding:this.addKeybinding,replaceKeybinding:this.replaceKeybinding,deleteKeybinding:this.deleteKeybinding,showSelectors:this.state.showSelectors,findConflictsFor:(e,t)=>this.state.shortcutRegistry?this.state.shortcutRegistry.findConflictsFor(e,t):(console.error("Cannot search for keybinding conflicts at this time: registry is not ready"),[]),height:this.props.height,external:this.props.external})):null}}const it=a=>F.createElement(st,{external:a.external,height:1e3,width:1e3}),w="@jupyterlab/shortcuts-extension:shortcuts";function ot(a,e,t,i){return{translator:t,getSettings:()=>a.load(w,!0),commandRegistry:e.commands,actionRequested:i}}const b={id:w,description:"Adds the keyboard shortcuts editor.",requires:[W],optional:[L,U],activate:async(a,e,t,i)=>{const s=t??B,n=s.load("jupyterlab"),{commands:r}=a;let h,m,y={};if(i){const c=new O({}),u=l=>l.dataset.shortcut!==void 0;a.commands.addCommand(_.editBinding,{label:n.__("Edit Keybinding"),caption:n.__("Edit existing keybinding"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{const l=a.contextMenuHitTest(u),g=l?.dataset.keybinding,f=l?.dataset.shortcut;if(!f||!g)return console.log("Missing shortcut id/keybinding information");c.emit({request:"edit-keybinding",keybinding:parseInt(g,10),shortcutId:f})}}),a.commands.addCommand(_.deleteBinding,{label:n.__("Delete Keybinding"),caption:n.__("Delete chosen keybinding"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{const l=a.contextMenuHitTest(u),g=l?.dataset.keybinding,f=l?.dataset.shortcut;if(!f||!g)return console.log("Missing shortcut id/keybinding information");c.emit({request:"delete-keybinding",keybinding:parseInt(g,10),shortcutId:f})}}),a.commands.addCommand(_.addBinding,{label:n.__("Add Keybinding"),caption:n.__("Add new keybinding for existing shortcut target"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{const l=a.contextMenuHitTest(u),g=l?.dataset.shortcut;if(!g)return console.log("Missing shortcut id to add keybinding to");c.emit({request:"add-keybinding",shortcutId:g})}}),r.addCommand(_.toggleSelectors,{label:n.__("Toggle Selectors"),caption:n.__("Toggle command selectors"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{c.emit({request:"toggle-selectors"})}}),r.addCommand(_.resetAll,{label:n.__("Reset All"),caption:n.__("Reset all shortcuts"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{c.emit({request:"reset-all"})}});const d={fieldRenderer:l=>it({external:ot(e,a,s,c),...l})};i.addRenderer(`${b.id}.shortcuts`,d)}function p(c){const u=a.commands.listCommands().join(`
|
|
1
|
+
import{r as o,c0 as S,ee as I,dG as K,ef as x,eg as E,eh as A,ei as R,af as T,v as F,ai as L,ak as B,J as O,d8 as M,cF as D,cR as q}from"../datalayer-app-main.js";import{o as H}from"./index-B_9UD0bt.js";import{a as U}from"./tokens-_fLcuFXz.js";import{I as W}from"./tokens-BHLmeqjP.js";import"./Output-BscOPLqE.js";import"./index-BvvaLLhn.js";import"./hoverbox-CStlKQWE.js";import"./index-BYQwy0Zx.js";import"./index-BJ7Yskx5.js";import"./color-CG7_7V2-.js";import"./isEqual-BybBNsZK.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-B3WvcNQa.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-CQlXdanG.js";import"./NotebookSkeleton-HdM76lOj.js";import"./Avatar-DbU3YP4x.js";import"./renderer-lVFw9lw7.js";import"./SquareIcon-e3ygcjpv.js";import"./SortAscIcon-CVKVWIWQ.js";import"./url-DuKx0yk0.js";/* empty css */import"./index-Dro44tIm.js";/* empty css *//* empty css */import"./index-DsG9xhMj.js";/* empty css */import"./index-CNU-WVhQ.js";import"./index--OLIX362.js";import"./index-DYGslHkf.js";import"./index-BSRVX3UN.js";import"./index-BH2OX5l8.js";import"./index-C3vDfO5_.js";import"./index-Ko8lxXFd.js";import"./index-CB9u17_J.js";import"./index-BUVtc_FV.js";import"./ArrowLeftIcon-Y3PTljcl.js";import"./SkubbleIcon-tlg17jBG.js";import"./usePrimerThemeBridge-D_1NuGKb.js";import"./index-j-oeqTuo.js";import"./KernelVariables-KCUfxhF4.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-DMKCe3c2.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-6Hdi_m3T.js";import"./sessions-3PQsLINe.js";import"./tokens-BfuLIPUq.js";import"./drivecontents-Bg9_6Kmo.js";import"./kernel-BI-BLP-K.js";var _;(function(a){a.editBinding="shortcuts:edit-keybinding",a.addBinding="shortcuts:add-keybinding",a.deleteBinding="shortcuts:delete-keybinding",a.toggleSelectors="shortcuts:toggle-selectors",a.resetAll="shortcuts:reset-all"})(_||(_={}));const j="jp-Shortcuts-ConflictContainer";class C extends o.Component{constructor(e){super(e),this.handleSubmit=async()=>{this._isReplacingExistingKeybinding?this.state.selected?this.props.toggleInput():await this._updateShortcut():(await this._updateShortcut(),this.props.toggleInput())},this._updateShortcut=async()=>{const t=[...this.state.keys,this.state.currentChain];this.setState({keys:t}),this.props.keybinding?await this.props.replaceKeybinding(this.props.shortcut,this.props.keybinding,t):await this.props.addKeybinding(this.props.shortcut,t)},this._handleOverwrite=async(t,i)=>{for(const s of t){const n=s.keybindings.filter(r=>S.deepEqual(r.keys,i)||i.some(h=>S.deepEqual(r.keys,[h])))[0];if(!n){console.error(`Conflicting binding could not be found for ${s} using keys ${i}`);continue}await this.props.deleteKeybinding(s,n)}await this._updateShortcut()},this.parseChaining=(t,i,s,n,r)=>{let h=I.keyForKeydownEvent(t.nativeEvent);const m=["Shift","Control","Alt","Meta","Ctrl","Accel"];if(t.key==="Backspace")s="",i="",n=[],r="",this.setState({value:i,userInput:s,keys:n,currentChain:r});else if(t.key!=="CapsLock"){const y=s.substr(s.lastIndexOf(" ")+1,s.length).trim();m.lastIndexOf(y)===-1&&y!=""?(s=s+",",n.push(r),r="",t.ctrlKey&&t.key!="Control"&&(s=(s+" Ctrl").trim(),r=(r+" Ctrl").trim()),t.metaKey&&t.key!="Meta"&&(s=(s+" Accel").trim(),r=(r+" Accel").trim()),t.altKey&&t.key!="Alt"&&(s=(s+" Alt").trim(),r=(r+" Alt").trim()),t.shiftKey&&t.key!="Shift"&&(s=(s+" Shift").trim(),r=(r+" Shift").trim()),m.lastIndexOf(t.key)===-1?(s=(s+" "+h).trim(),r=(r+" "+h).trim()):t.key==="Meta"?(s=(s+" Accel").trim(),r=(r+" Accel").trim()):t.key==="Control"?(s=(s+" Ctrl").trim(),r=(r+" Ctrl").trim()):t.key==="Shift"?(s=(s+" Shift").trim(),r=(r+" Shift").trim()):t.key==="Alt"?(s=(s+" Alt").trim(),r=(r+" Alt").trim()):(s=(s+" "+t.key).trim(),r=(r+" "+t.key).trim())):t.key==="Control"?(s=(s+" Ctrl").trim(),r=(r+" Ctrl").trim()):t.key==="Meta"?(s=(s+" Accel").trim(),r=(r+" Accel").trim()):t.key==="Shift"?(s=(s+" Shift").trim(),r=(r+" Shift").trim()):t.key==="Alt"?(s=(s+" Alt").trim(),r=(r+" Alt").trim()):(s=(s+" "+h).trim(),r=(r+" "+h).trim())}return this.setState({keys:n,currentChain:r}),[s,n,r]},this.checkNonFunctional=()=>{const t=["Ctrl","Alt","Accel","Shift"],i=this.state.currentChain.split(" "),s=i[i.length-1];return this.setState({isFunctional:t.indexOf(s)===-1}),t.indexOf(s)!==-1},this.checkShortcutAvailability=(t,i,s)=>{const n=this.props.findConflictsFor([...i,s],this.props.shortcut.selector),r=t===""||n.length===0;return!r&&n.length===1&&n[0].id===this.props.shortcut.id&&this._isReplacingExistingKeybinding?(this.setState({isAvailable:!0}),[]):(this.setState({isAvailable:r}),n)},this.handleInput=t=>{t.preventDefault(),this.setState({selected:!1});const i=this.parseChaining(t,this.state.value,this.state.userInput,this.state.keys,this.state.currentChain),s=i[0],n=i[1],r=i[2],h=this.props.toSymbols(s);let m=this.checkShortcutAvailability(s,n,r);this.setState({value:h,userInput:s,keys:n,currentChain:r},()=>{this.checkNonFunctional(),this._emitConflicts(m)})},this._handleBlur=t=>{var i,s;!((i=this._ref.current)===null||i===void 0)&&i.contains(t.relatedTarget)||!((s=t.relatedTarget)===null||s===void 0)&&s.closest(`.${j}`)||this.props.toggleInput()},this._ref=o.createRef(),this.state={value:this.props.placeholder,userInput:"",isAvailable:!0,isFunctional:this._isReplacingExistingKeybinding,keys:[],currentChain:"",selected:!0}}get _isReplacingExistingKeybinding(){return!!this.props.keybinding}_emitConflicts(e){const t=[...this.state.keys,this.state.currentChain];this.props.displayConflicts({conflictsWith:e,keys:this.state.keys,overwrite:async()=>{this.setState({isAvailable:!0}),await this._handleOverwrite(e,t),this.props.toggleInput()},cancel:()=>{this.props.toggleInput()}})}render(){const e=this.props.translator.load("jupyterlab");let t="jp-Shortcuts-Input";return this.state.isAvailable||(t+=" jp-mod-unavailable-Input"),o.createElement("div",{className:this.props.displayInput?this._isReplacingExistingKeybinding?"jp-Shortcuts-InputBox":"jp-Shortcuts-InputBox jp-Shortcuts-InputBoxNew":"jp-mod-hidden",ref:this._ref,onBlur:this._handleBlur},o.createElement("div",{tabIndex:0,className:t,onKeyDown:this.handleInput,ref:i=>i&&i.focus(),"data-lm-suppress-shortcuts":"true"},o.createElement("p",{className:this.state.selected&&this._isReplacingExistingKeybinding?"jp-Shortcuts-InputText jp-mod-selected-InputText":this.state.value===""?"jp-Shortcuts-InputText jp-mod-waiting-InputText":"jp-Shortcuts-InputText"},this.state.value===""?e.__("press keys"):this.state.value)),o.createElement("button",{className:this.state.isFunctional?this.state.isAvailable?"jp-Shortcuts-Submit":"jp-Shortcuts-Submit jp-mod-conflict-Submit":"jp-Shortcuts-Submit jp-mod-defunc-Submit",disabled:!this.state.isAvailable||!this.state.isFunctional,onClick:this.handleSubmit,tabIndex:0},this.state.isAvailable?o.createElement(K.react,null):o.createElement(x.react,null)))}}class Q extends o.Component{constructor(e){super(e),this.toggleInputNew=()=>{this.setState({displayNewInput:!this.state.displayNewInput,conflicts:new Map})},this.toSymbols=t=>t.split(" ").reduce((i,s)=>s==="Ctrl"?(i+" ⌃").trim():s==="Alt"?(i+" ⌥").trim():s==="Shift"?(i+" ⇧").trim():s==="Accel"&&E.IS_MAC?(i+" ⌘").trim():s==="Accel"?(i+" ⌃").trim():(i+" "+s).trim(),""),this._trans=this.props.external.translator.load("jupyterlab"),this.state={displayNewInput:!1,displayReplaceInput:Object.freeze({}),conflicts:new Map}}componentDidMount(){this.props.external.actionRequested.connect(this._onActionRequested,this)}componentWillUnmount(){this.props.external.actionRequested.disconnect(this._onActionRequested,this)}async _onActionRequested(e,t){if(!("shortcutId"in t&&t.shortcutId!==this.props.shortcut.id)){if(t.request==="add-keybinding")return this.toggleInputNew();if(t.request==="edit-keybinding"&&this.toggleInputReplaceMethod(t.keybinding),t.request==="delete-keybinding"){const i=this.props.shortcut,s=i.keybindings[t.keybinding];this.props.deleteKeybinding(i,s).catch(console.error)}}}getCategoryCell(){return o.createElement("div",{className:"jp-Shortcuts-Cell"},this.props.shortcut.category)}getLabelCell(){var e;return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"jp-label"},(e=this.props.shortcut.label)!==null&&e!==void 0?e:this._trans.__("(Command label missing)")))}getResetShortCutLink(){return o.createElement("a",{className:"jp-Shortcuts-Reset",onClick:()=>this.props.resetKeybindings(this.props.shortcut)},this._trans.__("Reset"))}getSourceCell(){const e=this.props.shortcut.keybindings.every(t=>t.isDefault);return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"jp-Shortcuts-SourceCell"},e?this._trans.__("Default"):this._trans.__("Custom")),e?"":this.getResetShortCutLink())}getOptionalSelectorCell(){return this.props.showSelectors?o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"jp-selector"},this.props.shortcut.selector)):null}getClassNameForShortCuts(e){const t=["jp-Shortcuts-ShortcutCell"];switch(e.length){case 1:t.push("jp-Shortcuts-SingleCell");break;case 0:t.push("jp-Shortcuts-EmptyCell");break}return t.join(" ")}toggleInputReplaceMethod(e){const t=this.state.displayReplaceInput[e];this.setState({displayReplaceInput:{...this.state.displayReplaceInput,[e]:!t},conflicts:new Map})}getDisplayReplaceInput(e){return this.state.displayReplaceInput[e]}getOrDiplayIfNeeded(e){const t=["jp-Shortcuts-Or"];return(e||this.state.displayNewInput)&&t.push("jp-Shortcuts-Or-Forced"),o.createElement("div",{className:t.join(" ")},this._trans.__("or"))}getShortCutAsInput(e,t){return o.createElement(C,{addKeybinding:this.props.addKeybinding,replaceKeybinding:this.props.replaceKeybinding,deleteKeybinding:this.props.deleteKeybinding,findConflictsFor:this.props.findConflictsFor,toggleInput:()=>this.toggleInputReplaceMethod(t),shortcut:this.props.shortcut,keybinding:e,displayConflicts:i=>{const s=new Map(this.state.conflicts);s.set(e,i),this.setState({conflicts:s})},toSymbols:this.toSymbols,displayInput:this.getDisplayReplaceInput(t),placeholder:this.toSymbols(e.keys.join(", ")),translator:this.props.external.translator})}getShortCutForDisplayOnly(e){return e.keys.map((t,i)=>o.createElement("div",{className:"jp-Shortcuts-ShortcutKeysContainer",key:i},o.createElement("div",{className:"jp-Shortcuts-ShortcutKeys"},this.toSymbols(t)),i+1<e.keys.length?o.createElement("div",{className:"jp-Shortcuts-Comma"},","):null))}isLocationBeingEdited(e){return this.state.displayReplaceInput[e]}getDivForKey(e,t,i){return o.createElement("div",{className:"jp-Shortcuts-ShortcutContainer",key:this.props.shortcut.id+"_"+e,"data-keybinding":e,"data-shortcut":this.props.shortcut.id,onClick:()=>this.toggleInputReplaceMethod(e)},this.isLocationBeingEdited(e)?this.getShortCutAsInput(t,e):this.getShortCutForDisplayOnly(t),!(e===this._nonEmptyBindings.length-1&&Object.values(this.state.displayReplaceInput).some(Boolean))&&this.getOrDiplayIfNeeded(e<this._nonEmptyBindings.length-1))}getAddLink(){return o.createElement("a",{className:this.state.displayNewInput?"":"jp-Shortcuts-Plus",onClick:()=>{this.toggleInputNew()}},this._trans.__("Add"))}getInputBoxWhenToggled(){return this.state.displayNewInput?o.createElement(C,{addKeybinding:this.props.addKeybinding,replaceKeybinding:this.props.replaceKeybinding,deleteKeybinding:this.props.deleteKeybinding,findConflictsFor:this.props.findConflictsFor,toggleInput:this.toggleInputNew,shortcut:this.props.shortcut,displayConflicts:e=>{const t=new Map(this.state.conflicts);t.set(null,e),this.setState({conflicts:t})},toSymbols:this.toSymbols,displayInput:this.state.displayNewInput,placeholder:"",translator:this.props.external.translator}):o.createElement("div",null)}getShortCutsCell(e){return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:this.getClassNameForShortCuts(e)},e.map((t,i)=>this.getDivForKey(i,t,e)),e.length>=1&&!this.state.displayNewInput&&!Object.values(this.state.displayReplaceInput).some(Boolean)&&this.getAddLink(),e.length===0&&!this.state.displayNewInput&&this.getAddLink(),this.getInputBoxWhenToggled()))}getConflicts(){const e=[...this.state.conflicts.values()].filter(t=>t.conflictsWith.length!==0);return e.length===0?o.createElement(o.Fragment,null):o.createElement("div",{className:"jp-Shortcuts-Row jp-Shortcuts-RowWithConflict"},o.createElement("div",{className:j},e.map(t=>{const i=t.keys.join(" ")+"_"+t.conflictsWith.map(s=>s.id).join("");return o.createElement("div",{className:"jp-Shortcuts-Conflict",key:i},o.createElement("div",{className:"jp-Shortcuts-ErrorMessage"},this._trans.__("Shortcut already in use by %1. Overwrite it?",t.conflictsWith.map(s=>{var n;return(n=s.label)!==null&&n!==void 0?n:s.command}).join(", "))),o.createElement("div",{className:"jp-Shortcuts-ErrorButton"},o.createElement("button",{className:"jp-Button jp-mod-reject jp-mod-styled",onClick:()=>{this._clearConflict(t),t.cancel()}},this._trans.__("Cancel")),o.createElement("button",{className:"jp-Button jp-mod-warn jp-mod-styled",onClick:()=>{this._clearConflict(t),t.overwrite()}},this._trans.__("Overwrite"))))})))}_clearConflict(e){const t=new Map,i=this._conflictId(e);for(const[s,n]of this.state.conflicts.entries())this._conflictId(n)!==i&&t.set(s,n);this.setState({conflicts:t})}_conflictId(e){return e.keys.join(" ")+"_"+e.conflictsWith.map(t=>t.id).join("")}get _nonEmptyBindings(){return this.props.shortcut.keybindings.filter(e=>e.keys.filter(t=>t!="").length!==0)}render(){return o.createElement(o.Fragment,null,o.createElement("div",{className:"jp-Shortcuts-Row","data-shortcut":this.props.shortcut.id},this.getCategoryCell(),this.getLabelCell(),this.getShortCutsCell(this._nonEmptyBindings),this.getSourceCell(),this.getOptionalSelectorCell()),this.getConflicts())}}const $=115;class z extends o.Component{render(){return o.createElement("div",{className:"jp-Shortcuts-ShortcutListContainer",style:{height:`${this.props.height-$}px`},id:"shortcutListContainer"},o.createElement("div",{className:"jp-Shortcuts-ShortcutList"},this.props.shortcuts.map(e=>o.createElement(Q,{key:e.id,addKeybinding:this.props.addKeybinding,replaceKeybinding:this.props.replaceKeybinding,deleteKeybinding:this.props.deleteKeybinding,resetKeybindings:this.props.resetKeybindings,findConflictsFor:this.props.findConflictsFor,shortcut:e,showSelectors:this.props.showSelectors,external:this.props.external}))))}}class P extends o.Component{render(){return o.createElement("div",{className:this.props.title.toLowerCase()===this.props.active?"jp-Shortcuts-Header jp-Shortcuts-CurrentHeader":"jp-Shortcuts-Header",onClick:()=>this.props.updateSort(this.props.columnId)},this.props.title,o.createElement(A.react,{className:"jp-Shortcuts-SortButton jp-ShortcutTitleItem-sortButton"}))}}function J(a){return o.createElement("div",{className:"jp-Shortcuts-Symbols"},o.createElement("table",null,o.createElement("tbody",null,o.createElement("tr",null,o.createElement("td",null,o.createElement("kbd",null,"Cmd")),o.createElement("td",null,"⌘"),o.createElement("td",null,o.createElement("kbd",null,"Ctrl")),o.createElement("td",null,"⌃")),o.createElement("tr",null,o.createElement("td",null,o.createElement("kbd",null,"Alt")),o.createElement("td",null,"⌥"),o.createElement("td",null,o.createElement("kbd",null,"Shift")),o.createElement("td",null,"⇧")))))}function G(a){const e=a.translator.load("jupyterlab");return o.createElement("div",{className:"jp-Shortcuts-AdvancedOptions"},o.createElement("a",{className:"jp-Shortcuts-AdvancedOptionsLink",onClick:()=>a.toggleSelectors()},a.showSelectors?e.__("Hide Selectors"):e.__("Show Selectors")),o.createElement("a",{className:"jp-Shortcuts-AdvancedOptionsLink",onClick:()=>a.resetShortcuts()},e.__("Reset All")))}class V extends o.Component{constructor(e){super(e)}getShortCutTitleItem(e,t){return o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement(P,{title:e,updateSort:this.props.updateSort,active:this.props.currentSort,columnId:t}))}render(){const e=this.props.translator.load("jupyterlab");return o.createElement("div",{className:"jp-Shortcuts-Top"},o.createElement("div",{className:"jp-Shortcuts-TopNav"},o.createElement(J,null),o.createElement(H,{"aria-label":e.__("Search shortcuts"),updateFilter:(t,i)=>this.props.updateSearchQuery(i??""),placeholder:e.__("Search…"),useFuzzyFilter:!1}),o.createElement(G,{toggleSelectors:this.props.toggleSelectors,showSelectors:this.props.showSelectors,resetShortcuts:this.props.resetShortcuts,translator:this.props.translator})),o.createElement("div",{className:"jp-Shortcuts-HeaderRowContainer"},o.createElement("div",{className:"jp-Shortcuts-HeaderRow"},this.getShortCutTitleItem(e.__("Category"),"category"),this.getShortCutTitleItem(e.__("Command"),"command"),o.createElement("div",{className:"jp-Shortcuts-Cell"},o.createElement("div",{className:"title-div"},e.__("Shortcut"))),this.getShortCutTitleItem(e.__("Source"),"source"),this.props.showSelectors&&this.getShortCutTitleItem(e.__("Selectors"),"selector"))))}}class X extends Map{constructor(e){var t,i,s;super();const{settings:n,commandRegistry:r}=e,h=(t=n.user.shortcuts)!==null&&t!==void 0?t:[],m=new Set(h.map(this._computeKeybindingId.bind(this))),y=(i=n.composite.shortcuts)!==null&&i!==void 0?i:[];for(const p of y){const c=this._computeTargetId(p),u=this._computeKeybindingId(p),d={keys:p.keys,isDefault:!m.has(u)},l=this.get(c);if(l)l.keybindings.push(d);else{const g=p.command.split(":"),f=(s=r.label(p.command,p.args))!==null&&s!==void 0?s:g.length>1?g[1]:void 0,v=g[0];this.set(c,{id:c,selector:p.selector,command:p.command,category:v,label:f,args:p.args,keybindings:[d]})}}}findConflictsFor(e,t){const i=new Y({registry:this});let s=i.findConflicts(e,t);if(s.length!==0)return s;for(const n of e)if(s=i.findConflicts([n],t),s.length!==0)return s;return[]}_computeTargetId(e){var t;return e.command+"_"+e.selector+"_"+JSON.stringify((t=e.args)!==null&&t!==void 0?t:{})}_computeKeybindingId(e){var t;return[e.command,e.selector,JSON.stringify((t=e.args)!==null&&t!==void 0?t:{}),e.keys.join(" ")].join("_")}}class Y{constructor(e){var t;const i=new Map;for(const s of e.registry.values())for(const n of s.keybindings){const r=this._keybindingHash(n.keys,s.selector),h=(t=i.get(r))!==null&&t!==void 0?t:[];h.push(s),i.set(r,h)}this._keybindingsMap=i}findConflicts(e,t){var i;const s=this._keybindingHash(e,t);return(i=this._keybindingsMap.get(s))!==null&&i!==void 0?i:[]}_keybindingHash(e,t){return e.join(" ")+"_"+t}}function Z(a){return a.replace(/\s+/g,"").toLowerCase()}function tt(a,e){var t;const i=a.category.toLowerCase(),s=((t=a.label)!==null&&t!==void 0?t:"").toLowerCase(),n=`${i} ${s}`;let r=1/0,h=null;const m=/\b\w/g;for(;;){const d=m.exec(n);if(!d)break;const l=R.matchSumOfDeltas(n,e,d.index);if(!l)break;l&&l.score<=r&&(r=l.score,h=l.indices)}if(!h||r===1/0)return null;const y=i.length+1,p=T.lowerBound(h,y,(d,l)=>d-l),c=h.slice(0,p),u=h.slice(p);for(let d=0,l=u.length;d<l;++d)u[d]-=y;return c.length===0?{matchType:0,categoryIndices:null,labelIndices:u,score:r,item:a}:u.length===0?{matchType:1,categoryIndices:c,labelIndices:null,score:r,item:a}:{matchType:2,categoryIndices:c,labelIndices:u,score:r,item:a}}function et(a,e){e=Z(e);let t=[];for(const i of a.values()){if(!e){t.push({matchType:3,categoryIndices:null,labelIndices:null,score:0,item:i});continue}let s=tt(i,e);s&&t.push(s)}return t}class st extends o.Component{constructor(e){super(e),this.updateSearchQuery=t=>{this.setState({searchQuery:t},()=>{const i=this.state.shortcutRegistry;this.setState({filteredShortcutList:this._searchFilterShortcuts(i)},()=>{this.sortShortcuts()})})},this.resetShortcuts=async()=>{await(await this.props.external.getSettings()).set("shortcuts",[]),await this._refreshShortcutList()},this.resetKeybindings=async t=>{await this._setKeybinding(t,[])},this.replaceKeybinding=async(t,i,s)=>this._setKeybinding(t,s,i),this.deleteKeybinding=async(t,i)=>{await this._setKeybinding(t,[],i)},this.addKeybinding=async(t,i)=>{await this._setKeybinding(t,i)},this.toggleSelectors=()=>{this.setState({showSelectors:!this.state.showSelectors})},this.updateSort=t=>{t!==this.state.currentSort&&this.setState({currentSort:t},this.sortShortcuts)},this.state={shortcutRegistry:null,filteredShortcutList:new Array,shortcutsFetched:!1,searchQuery:"",showSelectors:!1,currentSort:"category"}}componentDidMount(){this.props.external.actionRequested.connect(this._onActionRequested,this),this._refreshShortcutList()}componentWillUnmount(){this.props.external.actionRequested.disconnect(this._onActionRequested,this)}async _onActionRequested(e,t){if(t.request==="toggle-selectors")return this.toggleSelectors();t.request==="reset-all"&&await this.resetShortcuts()}async _refreshShortcutList(){const e=await this.props.external.getSettings(),t=new X({commandRegistry:this.props.external.commandRegistry,settings:e});this.setState({shortcutRegistry:t,filteredShortcutList:this._searchFilterShortcuts(t),shortcutsFetched:!0},()=>{this.sortShortcuts()})}_searchFilterShortcuts(e){return e?et(e,this.state.searchQuery).map(i=>i.item):[]}async _setKeybinding(e,t,i){var s,n,r,h,m;t.length===1&&t[0]==""&&(t=[]);const y=await this.props.external.getSettings(),p=(s=y.user.shortcuts)!==null&&s!==void 0?s:[],c=[];let u=!1;for(let d of p)if(d.command===e.command&&d.selector===e.selector&&S.deepEqual((n=d.args)!==null&&n!==void 0?n:{},(r=e.args)!==null&&r!==void 0?r:{})&&i&&S.deepEqual(i.keys,d.keys)){const l=i&&i.isDefault&&S.deepEqual(i.keys,t);t.length!==0&&!l&&c.push({command:d.command,selector:d.selector,keys:t}),u=!0}else{if(d.command===e.command&&d.selector===e.selector&&S.deepEqual((h=d.args)!==null&&h!==void 0?h:{},(m=e.args)!==null&&m!==void 0?m:{})&&!i&&t.length===0)continue;c.push(d)}if(!u){const d=!i||!S.deepEqual(i.keys,t);i&&i.isDefault&&d&&c.push({command:e.command,selector:e.selector,disabled:!0,keys:i.keys}),t.length!==0&&c.push({command:e.command,selector:e.selector,keys:t})}await y.set("shortcuts",c),await this._refreshShortcutList()}sortShortcuts(){const e=this.state.filteredShortcutList;let t=this.state.currentSort;t==="command"&&(t="label");const i=s=>{var n;return t==="source"?s.keybindings.every(r=>r.isDefault)?"default":"other":(n=s[t])!==null&&n!==void 0?n:""};e.sort((s,n)=>{var r,h;const m=i(s),y=i(n),p=m.localeCompare(y);if(p)return p;{const c=(r=s.label)!==null&&r!==void 0?r:"",u=(h=n.label)!==null&&h!==void 0?h:"";return c.localeCompare(u)}}),this.setState({filteredShortcutList:e})}render(){return this.state.shortcutsFetched?o.createElement("div",{className:"jp-Shortcuts-ShortcutUI",id:"jp-shortcutui"},o.createElement(V,{updateSearchQuery:this.updateSearchQuery,resetShortcuts:this.resetShortcuts,toggleSelectors:this.toggleSelectors,showSelectors:this.state.showSelectors,updateSort:this.updateSort,currentSort:this.state.currentSort,width:this.props.width,translator:this.props.external.translator}),o.createElement(z,{shortcuts:this.state.filteredShortcutList,resetKeybindings:this.resetKeybindings,addKeybinding:this.addKeybinding,replaceKeybinding:this.replaceKeybinding,deleteKeybinding:this.deleteKeybinding,showSelectors:this.state.showSelectors,findConflictsFor:(e,t)=>this.state.shortcutRegistry?this.state.shortcutRegistry.findConflictsFor(e,t):(console.error("Cannot search for keybinding conflicts at this time: registry is not ready"),[]),height:this.props.height,external:this.props.external})):null}}const it=a=>F.createElement(st,{external:a.external,height:1e3,width:1e3}),w="@jupyterlab/shortcuts-extension:shortcuts";function ot(a,e,t,i){return{translator:t,getSettings:()=>a.load(w,!0),commandRegistry:e.commands,actionRequested:i}}const b={id:w,description:"Adds the keyboard shortcuts editor.",requires:[W],optional:[L,U],activate:async(a,e,t,i)=>{const s=t??B,n=s.load("jupyterlab"),{commands:r}=a;let h,m,y={};if(i){const c=new O({}),u=l=>l.dataset.shortcut!==void 0;a.commands.addCommand(_.editBinding,{label:n.__("Edit Keybinding"),caption:n.__("Edit existing keybinding"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{const l=a.contextMenuHitTest(u),g=l?.dataset.keybinding,f=l?.dataset.shortcut;if(!f||!g)return console.log("Missing shortcut id/keybinding information");c.emit({request:"edit-keybinding",keybinding:parseInt(g,10),shortcutId:f})}}),a.commands.addCommand(_.deleteBinding,{label:n.__("Delete Keybinding"),caption:n.__("Delete chosen keybinding"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{const l=a.contextMenuHitTest(u),g=l?.dataset.keybinding,f=l?.dataset.shortcut;if(!f||!g)return console.log("Missing shortcut id/keybinding information");c.emit({request:"delete-keybinding",keybinding:parseInt(g,10),shortcutId:f})}}),a.commands.addCommand(_.addBinding,{label:n.__("Add Keybinding"),caption:n.__("Add new keybinding for existing shortcut target"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{const l=a.contextMenuHitTest(u),g=l?.dataset.shortcut;if(!g)return console.log("Missing shortcut id to add keybinding to");c.emit({request:"add-keybinding",shortcutId:g})}}),r.addCommand(_.toggleSelectors,{label:n.__("Toggle Selectors"),caption:n.__("Toggle command selectors"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{c.emit({request:"toggle-selectors"})}}),r.addCommand(_.resetAll,{label:n.__("Reset All"),caption:n.__("Reset all shortcuts"),describedBy:{args:{type:"object",properties:{}}},execute:()=>{c.emit({request:"reset-all"})}});const d={fieldRenderer:l=>it({external:ot(e,a,s,c),...l})};i.addRenderer(`${b.id}.shortcuts`,d)}function p(c){const u=a.commands.listCommands().join(`
|
|
2
2
|
`);m||(m=S.deepCopy(c.properties.shortcuts.default)),y={},c.properties.shortcuts.default=Object.keys(e.plugins).map(d=>{const l=e.plugins[d].schema["jupyter.lab.shortcuts"]||[];return y[d]=l,l}).concat([m]).reduce((d,l)=>E.IS_MAC?d.concat(l):d.concat(l.filter(g=>!g.keys.some(f=>{const{cmd:v}=D.parseKeystroke(f);return v}))),[]).sort((d,l)=>d.command.localeCompare(l.command)),c.properties.shortcuts.description=n.__(`Note: To disable a system default shortcut,
|
|
3
3
|
copy it to User Preferences and add the
|
|
4
4
|
"disabled" key, for example:
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{c1 as Y,v as U,b_ as ee,bZ as F,ak as B,J as K,dI as pe,ai as j,cw as he,dJ as me,c0 as ge,ch as W,cg as C,c5 as z,dK as fe,ao as _e,ag as ve,cE as ye,dL as be,an as we,r as Q,dM as xe,dN as Ce}from"../datalayer-app-main.js";import{T as te,f as Se,b as ne,d as oe}from"./index-BvvaLLhn.js";import{I as ie}from"./tokens-BHMD_ju9.js";import{a as ae,b as H,c as V,I as P}from"./tokens-CENaHAHm.js";import{I as re}from"./tokens-BHLmeqjP.js";import{j as se,d as ke,m as Re,c as G,D as Z,n as We}from"./index-
|
|
1
|
+
import{c1 as Y,v as U,b_ as ee,bZ as F,ak as B,J as K,dI as pe,ai as j,cw as he,dJ as me,c0 as ge,ch as W,cg as C,c5 as z,dK as fe,ao as _e,ag as ve,cE as ye,dL as be,an as we,r as Q,dM as xe,dN as Ce}from"../datalayer-app-main.js";import{T as te,f as Se,b as ne,d as oe}from"./index-BvvaLLhn.js";import{I as ie}from"./tokens-BHMD_ju9.js";import{a as ae,b as H,c as V,I as P}from"./tokens-CENaHAHm.js";import{I as re}from"./tokens-BHLmeqjP.js";import{j as se,d as ke,m as Re,c as G,D as Z,n as We}from"./index-B_9UD0bt.js";import"./hoverbox-CStlKQWE.js";import"./Output-BscOPLqE.js";import"./index-BYQwy0Zx.js";import"./index-BJ7Yskx5.js";import"./color-CG7_7V2-.js";import"./isEqual-BybBNsZK.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-B3WvcNQa.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-CQlXdanG.js";import"./NotebookSkeleton-HdM76lOj.js";import"./Avatar-DbU3YP4x.js";import"./renderer-lVFw9lw7.js";import"./SquareIcon-e3ygcjpv.js";import"./SortAscIcon-CVKVWIWQ.js";import"./url-DuKx0yk0.js";/* empty css */import"./index-Dro44tIm.js";/* empty css *//* empty css */import"./index-DsG9xhMj.js";/* empty css */import"./index-CNU-WVhQ.js";import"./index--OLIX362.js";import"./index-DYGslHkf.js";import"./index-BSRVX3UN.js";import"./index-BH2OX5l8.js";import"./index-C3vDfO5_.js";import"./index-Ko8lxXFd.js";import"./index-CB9u17_J.js";import"./index-BUVtc_FV.js";import"./ArrowLeftIcon-Y3PTljcl.js";import"./SkubbleIcon-tlg17jBG.js";import"./usePrimerThemeBridge-D_1NuGKb.js";import"./index-j-oeqTuo.js";import"./KernelVariables-KCUfxhF4.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-DMKCe3c2.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-6Hdi_m3T.js";import"./sessions-3PQsLINe.js";import"./tokens-BfuLIPUq.js";import"./drivecontents-Bg9_6Kmo.js";import"./kernel-BI-BLP-K.js";function Fe(i){return U.createElement(te,{source:i.name,title:i.fullPath})}class N extends Y{constructor(e){super(new N.Model(e.docManager)),this.node.title=this.model.path}render(){return U.createElement(Fe,{fullPath:this.model.path,name:this.model.name})}}(function(i){class e extends ee{constructor(n){super(),this._onTitleChange=r=>{const s=this._getAllState();this._name=r.label,this._triggerChange(s,this._getAllState())},this._onPathChange=(r,s)=>{const c=this._getAllState();this._path=s,this._name=F.PathExt.basename(s),this._triggerChange(c,this._getAllState())},this._path="",this._name="",this._widget=null,this._docManager=n}get path(){return this._path}get name(){return this._name}get widget(){return this._widget}set widget(n){const r=this._widget;if(r!==null){const c=this._docManager.contextForWidget(r);c?c.pathChanged.disconnect(this._onPathChange):r.title.changed.disconnect(this._onTitleChange)}const s=this._getAllState();if(this._widget=n,this._widget===null)this._path="",this._name="";else{const c=this._docManager.contextForWidget(this._widget);c?(this._path=c.path,this._name=F.PathExt.basename(c.path),c.pathChanged.connect(this._onPathChange)):(this._path="",this._name=this._widget.title.label,this._widget.title.changed.connect(this._onTitleChange))}this._triggerChange(s,this._getAllState())}_getAllState(){return[this._path,this._name]}_triggerChange(n,r){(n[0]!==r[0]||n[1]!==r[1])&&this.stateChanged.emit(void 0)}}i.Model=e})(N||(N={}));function Te(i){return U.createElement(te,{source:i.fileStatus})}const De=2e3;class O extends Y{constructor(e){super(new O.Model(e.docManager));const n=(e.translator||B).load("jupyterlab");this._statusMap={completed:n.__("Saving completed"),started:n.__("Saving started"),failed:n.__("Saving failed")}}render(){return this.model===null||this.model.status===null?null:U.createElement(Te,{fileStatus:this._statusMap[this.model.status]})}}(function(i){class e extends ee{constructor(n){super(),this._onStatusChange=(r,s)=>{this._status=s,this._status==="completed"?(setTimeout(()=>{this._status=null,this.stateChanged.emit(void 0)},De),this.stateChanged.emit(void 0)):this.stateChanged.emit(void 0)},this._status=null,this._widget=null,this._status=null,this.widget=null,this._docManager=n}get status(){return this._status}get widget(){return this._widget}set widget(n){var r,s;const c=this._widget;if(c!==null){const p=this._docManager.contextForWidget(c);p?p.saveState.disconnect(this._onStatusChange):!((r=this._widget.content)===null||r===void 0)&&r.saveStateChanged&&this._widget.content.saveStateChanged.disconnect(this._onStatusChange)}if(this._widget=n,this._widget===null)this._status=null;else{const p=this._docManager.contextForWidget(this._widget);p?p.saveState.connect(this._onStatusChange):!((s=this._widget.content)===null||s===void 0)&&s.saveStateChanged&&this._widget.content.saveStateChanged.connect(this._onStatusChange)}}}i.Model=e})(O||(O={}));class Be{constructor(e){this._recentsChanged=new K(this),this._recents={opened:[],closed:[]},this._isDisposed=!1,this._maxRecentsLength=10,this._saveDebouncer=new pe(this._save.bind(this),500),this._stateDB=e.stateDB,this._contentsManager=e.contents,this.updateRootDir(),this._loadRecents().catch(t=>{console.error(`Failed to load recent list from state:
|
|
2
2
|
${t}`)})}get isDisposed(){return this._isDisposed}get recentlyOpened(){return(this._recents.opened||[]).filter(t=>t.root===this._serverRoot)}get recentlyClosed(){return(this._recents.closed||[]).filter(t=>t.root===this._serverRoot)}get changed(){return this._recentsChanged}get maximalRecentsLength(){return this._maxRecentsLength}set maximalRecentsLength(e){this._maxRecentsLength=Math.round(Math.max(1,e));let t=!1;for(const n of["opened","closed"])this._recents[n].length>this._maxRecentsLength&&(this._recents[n].length=this._maxRecentsLength,t=!0);t&&this._recentsChanged.emit(void 0)}dispose(){this.isDisposed||(this._isDisposed=!0,K.clearData(this),this._saveDebouncer.dispose())}addRecent(e,t){const n={...e,root:this._serverRoot},r=this._recents[t],s=r.findIndex(c=>c.path===e.path);s>=0&&r.splice(s,1),r.unshift(n),this._setRecents(r,t),this._recentsChanged.emit(void 0)}clearRecents(){this._setRecents([],"opened"),this._setRecents([],"closed"),this._recentsChanged.emit(void 0)}removeRecent(e,t){this._removeRecent(e.path,[t])}async validate(e){const t=await this._isValid(e);return t||this._removeRecent(e.path),t}updateRootDir(){this._serverRoot=F.PageConfig.getOption("serverRoot")}_removeRecent(e,t=["opened","closed"]){let n=!1;for(const r of t){const s=this._recents[r],c=s.filter(p=>e!==p.path);s.length!==c.length&&(this._setRecents(c,r),n=!0)}n&&this._recentsChanged.emit(void 0)}async _isValid(e){var t;try{await this._contentsManager.get(e.path,{content:!1})}catch(n){if(((t=n.response)===null||t===void 0?void 0:t.status)===404)return!1}return!0}_setRecents(e,t){this._recents[t]=e.slice(0,this.maximalRecentsLength).sort((n,r)=>n.root===r.root?0:n.root!==this._serverRoot?1:-1),this._saveDebouncer.invoke().catch(console.warn)}async _loadRecents(){const e=await this._stateDB.fetch(L.stateDBKey)||{opened:[],closed:[]},t=[...e.opened,...e.closed],n=new Set(await this._getInvalidPaths(t));for(const r of["opened","closed"])this._setRecents(e[r].filter(s=>!n.has(s.path)),r);this._recentsChanged.emit(void 0)}async _getInvalidPaths(e){return(await Promise.all(e.map(async n=>await this._isValid(n)?null:n.path))).filter(n=>typeof n=="string")}async _save(){try{await this._stateDB.save(L.stateDBKey,this._recents)}catch(e){console.log("Saving recents failed",e)}}}var L;(function(i){i.stateDBKey="docmanager:recents"})(L||(L={}));var J;(function(i){i.clearRecents="docmanager:clear-recents"})(J||(J={}));var M;(function(i){i.recentsManager="@jupyterlab/docmanager-extension:recents",i.reopenClosed="@jupyterlab/docmanager-extension:reopen-recently-closed",i.mainPlugin="@jupyterlab/docmanager-extension:plugin"})(M||(M={}));const je={id:M.recentsManager,description:"Provides a manager of recently opened and closed documents.",autoStart:!0,requires:[he.IStateDB],optional:[re,j],provides:ae,activate:(i,e,t,n)=>{const{serviceManager:r}=i,s=(n??B).load("jupyterlab"),c=new Be({stateDB:e,contents:r.contents}),p=m=>{c.maximalRecentsLength=m.get("maxNumberRecents").composite};return t&&Promise.all([i.restored,t.load(M.mainPlugin)]).then(([m,a])=>{a.changed.connect(p),p(a)}),i.commands.addCommand(J.clearRecents,{execute:()=>{c.clearRecents()},isEnabled:()=>c.recentlyOpened.length!=0||c.recentlyClosed.length!=0,label:s.__("Clear Recent Documents"),caption:s.__("Clear the list of recently opened items."),describedBy:{args:{type:"object",properties:{}}}}),c}};var h;(function(i){i.clone="docmanager:clone",i.deleteFile="docmanager:delete-file",i.newUntitled="docmanager:new-untitled",i.open="docmanager:open",i.openBrowserTab="docmanager:open-browser-tab",i.reload="docmanager:reload",i.rename="docmanager:rename",i.del="docmanager:delete",i.duplicate="docmanager:duplicate",i.restoreCheckpoint="docmanager:restore-checkpoint",i.save="docmanager:save",i.saveAll="docmanager:save-all",i.saveAs="docmanager:save-as",i.download="docmanager:download",i.toggleAutosave="docmanager:toggle-autosave",i.showInFileBrowser="docmanager:show-in-file-browser"})(h||(h={}));const D="@jupyterlab/docmanager-extension:plugin",Pe={id:"@jupyterlab/docmanager-extension:opener",description:"Provides the widget opener.",autoStart:!0,provides:V,activate:i=>{const{shell:e}=i;return new class{constructor(){this._opened=new K(this)}open(t,n){var r;t.id||(t.id=`document-manager-${++$.id}`),t.title.dataset={type:"document-title",...t.title.dataset},t.isAttached||e.add(t,"main",n||{}),(!((r=n?.activate)!==null&&r!==void 0)||r)&&e.activateById(t.id),this._opened.emit(t)}get opened(){return this._opened}}}},Ee={id:"@jupyterlab/docmanager-extension:contexts",description:"Adds the handling of opened documents dirty state.",autoStart:!0,requires:[P,V],optional:[se],activate:(i,e,t,n)=>{const r=new WeakSet;t.opened.connect((s,c)=>{const p=e.contextForWidget(c);p&&!r.has(p)&&(n&&Ve(n,p),r.add(p))})}},Ae={id:"@jupyterlab/docmanager-extension:manager",description:"Provides the document manager.",provides:P,requires:[V],optional:[j,se,Se,ke.IInfo,ae,Re,H],activate:(i,e,t,n,r,s,c,p,m)=>{var a;const{serviceManager:d,docRegistry:u}=i,_=t??B,f=r??new me({translator:_}),y=m??new Z({translator:_}),x=i.restored.then(()=>{});return new We({registry:u,manager:d,opener:e,when:x,setBusy:(a=n&&(()=>n.setBusy()))!==null&&a!==void 0?a:void 0,sessionDialogs:f,translator:_??B,isConnectedCallback:()=>s?s.isConnected:!0,recentsManager:c??void 0,urlResolverFactory:p??void 0,docManagerDialogs:y})}},Ie={id:D,description:"Adds commands and settings to the document manager.",autoStart:!0,requires:[P,V,re],optional:[j,ne,G,H],activate:(i,e,t,n,r,s,c,p)=>{r=r??B;const m=r.load("jupyterlab"),a=i.docRegistry;Me(i,e,t,n,r,c,s,p);const d=u=>{const _=u.get("autosave").composite;e.autosave=_===!0||_===!1?_:!0,i.commands.notifyCommandChanged(h.toggleAutosave);const f=u.get("confirmClosingDocument").composite;e.confirmClosingDocument=f??!0;const y=u.get("autosaveInterval").composite;e.autosaveInterval=y||120;const x=u.get("lastModifiedCheckMargin").composite;e.lastModifiedCheckMargin=x||500;const w=u.get("renameUntitledFileOnSave").composite;e.renameUntitledFileOnSave=w??!0;const T=u.get("defaultViewers").composite,o={};Object.keys(T).forEach(l=>{if(!a.getFileType(l)){console.warn(`File Type ${l} not found`);return}a.getWidgetFactory(T[l])||console.warn(`Document viewer ${T[l]} not found`),o[l]=T[l]});for(const l of a.fileTypes())try{a.setDefaultWidgetFactory(l.name,o[l.name])}catch{console.warn(`Failed to set default viewer ${o[l.name]} for file type ${l.name}`)}};Promise.all([n.load(D),i.restored]).then(([u])=>{u.changed.connect(d),d(u);const _=(f,y)=>{["autosave","autosaveInterval","confirmClosingDocument","lastModifiedCheckMargin","renameUntitledFileOnSave"].includes(y.name)&&u.get(y.name).composite!==y.newValue&&u.set(y.name,y.newValue).catch(x=>{console.error(`Failed to set the setting '${y.name}':
|
|
3
3
|
${x}`)})};e.stateChanged.connect(_)}).catch(u=>{console.error(u.message)}),n.transform(D,{fetch:u=>{const _=Array.from(a.fileTypes()).map(w=>w.name).join(`
|
|
4
4
|
`),f=Array.from(a.widgetFactories()).map(w=>w.name).join(`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ak as Z,ca as Q,g3 as te,af as S,ai as D,bZ as J,c5 as ne,ad as re,aW as ie,ch as L,cg as T,l as P,ag as se,cP as oe,cM as ae,g4 as de,g5 as le,c0 as K,d8 as E}from"../datalayer-app-main.js";import{b as ce}from"./tokens-BvmYCqiu.js";import{a as ue}from"./tokens-CENaHAHm.js";import{I as ee}from"./tokens-D1_9ZFxB.js";import{g as _,b as pe,M as z}from"./index-BvvaLLhn.js";import{M as v,c as me,e as he}from"./index-1wTrAXI1.js";import{I as be}from"./tokens-BHLmeqjP.js";import{R as j,I as _e}from"./menu-T4su8As2.js";import"./hoverbox-CStlKQWE.js";import"./Output-2KxoKu5F.js";import"./index-BYQwy0Zx.js";import"./index-BJ7Yskx5.js";import"./color-CG7_7V2-.js";import"./isEqual-BybBNsZK.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-B3WvcNQa.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-CQlXdanG.js";import"./NotebookSkeleton-HdM76lOj.js";import"./Avatar-DbU3YP4x.js";import"./renderer-lVFw9lw7.js";import"./SquareIcon-e3ygcjpv.js";import"./SortAscIcon-CVKVWIWQ.js";import"./url-DuKx0yk0.js";/* empty css */import"./index-Dro44tIm.js";/* empty css *//* empty css */import"./index-DsG9xhMj.js";/* empty css */import"./index-CNU-WVhQ.js";import"./index--OLIX362.js";import"./index-DYGslHkf.js";import"./index-BSRVX3UN.js";import"./index-BH2OX5l8.js";import"./index-C3vDfO5_.js";import"./index-Ko8lxXFd.js";import"./index-CB9u17_J.js";import"./index-BUVtc_FV.js";import"./ArrowLeftIcon-Y3PTljcl.js";import"./SkubbleIcon-tlg17jBG.js";import"./usePrimerThemeBridge-D_1NuGKb.js";import"./index-j-oeqTuo.js";import"./KernelVariables-KCUfxhF4.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-DMKCe3c2.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-6Hdi_m3T.js";import"./sessions-3PQsLINe.js";import"./tokens-BfuLIPUq.js";import"./drivecontents-Bg9_6Kmo.js";import"./kernel-BI-BLP-K.js";function f(t){const{id:e,commands:n,shell:r,semanticCommands:i,default:c,overrides:u,trans:o}=t;n.addCommand(e,{...fe({commands:n,shell:r},i,c??{},o??Z.load("jupyterlab")),...u});const a=Array.isArray(i)?i:[i],l=(s,d)=>{if(d.id){if(d.id===e&&d.type==="removed")s.commandChanged.disconnect(l);else if(a.reduce((h,B)=>h.concat(B.ids),[]).includes(d.id))switch(d.type){case"changed":case"many-changed":s.notifyCommandChanged(e);break;case"removed":for(const h of a)h.remove(d.id);break}}};n.commandChanged.connect(l)}function fe(t,e,n,r){const{commands:i,shell:c}=t,u=Array.isArray(e)?e:[e];return{label:a("label"),caption:a("caption"),isEnabled:()=>{var l;const s=o("isEnabled");return s.length>0&&!s.some(d=>d===!1)||((l=n.isEnabled)!==null&&l!==void 0?l:!1)},isToggled:()=>{var l;return o("isToggled").some(d=>d===!0)||((l=n.isToggled)!==null&&l!==void 0?l:!1)},isVisible:()=>{var l;const s=o("isVisible");return s.length>0&&!s.some(d=>d===!1)||((l=n.isVisible)!==null&&l!==void 0?l:!0)},execute:async()=>{const l=c.currentWidget,d=u.map(h=>l!==null?h.getActiveCommandId(l):null).filter(h=>h!==null&&i.isEnabled(h));let b=null;if(d.length>0)for(const h of d){const B={[_.WIDGET]:l.id};if(b=await i.execute(h,B),typeof b=="boolean"&&b===!1)break}else n.execute&&(b=await i.execute(n.execute));return b}};function o(l){const s=c.currentWidget;return u.map(h=>s!==null?h.getActiveCommandId(s):null).filter(h=>h!==null).map(h=>i[l](h))}function a(l){return()=>{var s;const d=o(l).map((b,h)=>l=="caption"&&h>0?b.toLocaleLowerCase():b);switch(d.length){case 0:return(s=n[l])!==null&&s!==void 0?s:"";case 1:return d[0];default:{const b=d.some(m=>/…$/.test(m)),h=d.slice(void 0,-1).map(m=>m.replace(/…$/,"")).join(", "),B=d.slice(-1)[0].replace(/…$/,"")+(b?"…":"");return r.__("%1 and %2",h,B)}}}}}class U extends j{constructor(e){super(e),this.undoers={redo:new _,undo:new _},this.clearers={clearAll:new _,clearCurrent:new _},this.goToLiners=new _}}class W extends j{constructor(e){super(e),this.quitEntry=!1,this.closeAndCleaners=new _,this.consoleCreators=new _}get newMenu(){var e,n;return this._newMenu||(this._newMenu=(n=(e=Q(this.items,r=>{var i;return((i=r.submenu)===null||i===void 0?void 0:i.id)==="jp-mainmenu-file-new"}))===null||e===void 0?void 0:e.submenu)!==null&&n!==void 0?n:new j({commands:this.commands})),this._newMenu}dispose(){var e;(e=this._newMenu)===null||e===void 0||e.dispose(),super.dispose()}}class V extends j{constructor(e){super(e),this.getKernel=new _}}class q extends j{constructor(e){super(e),this.kernelUsers={changeKernel:new _,clearWidget:new _,interruptKernel:new _,reconnectToKernel:new _,restartKernel:new _,shutdownKernel:new _}}}class F extends j{constructor(e){super(e),this.codeRunners={restart:new _,run:new _,runAll:new _}}}class N extends j{constructor(e){super(e)}}class $ extends j{constructor(e){super(e)}}class G extends j{constructor(e){super(e),this.editorViewers={toggleLineNumbers:new _,toggleMinimap:new _,toggleMatchBrackets:new _,toggleWordWrap:new _}}}class X extends te{constructor(e){let n={forceItemsPosition:{forceX:!1,forceY:!0}};super(n),this._items=[],this._commands=e}get editMenu(){return this._editMenu||(this._editMenu=new U({commands:this._commands,rank:2,renderer:v.defaultRenderer})),this._editMenu}get fileMenu(){return this._fileMenu||(this._fileMenu=new W({commands:this._commands,rank:1,renderer:v.defaultRenderer})),this._fileMenu}get helpMenu(){return this._helpMenu||(this._helpMenu=new V({commands:this._commands,rank:1e3,renderer:v.defaultRenderer})),this._helpMenu}get kernelMenu(){return this._kernelMenu||(this._kernelMenu=new q({commands:this._commands,rank:5,renderer:v.defaultRenderer})),this._kernelMenu}get runMenu(){return this._runMenu||(this._runMenu=new F({commands:this._commands,rank:4,renderer:v.defaultRenderer})),this._runMenu}get settingsMenu(){return this._settingsMenu||(this._settingsMenu=new N({commands:this._commands,rank:999,renderer:v.defaultRenderer})),this._settingsMenu}get viewMenu(){return this._viewMenu||(this._viewMenu=new G({commands:this._commands,rank:3,renderer:v.defaultRenderer})),this._viewMenu}get tabsMenu(){return this._tabsMenu||(this._tabsMenu=new $({commands:this._commands,rank:500,renderer:v.defaultRenderer})),this._tabsMenu}addMenu(e,n=!0,r={}){if(S.firstIndexOf(this.menus,e)>-1)return;v.overrideDefaultRenderer(e);const i="rank"in r?r.rank:"rank"in e?e.rank:_e.DEFAULT_RANK,c={menu:e,rank:i},u=S.upperBound(this._items,c,H.itemCmp);switch(e.disposed.connect(this._onMenuDisposed,this),S.insert(this._items,u,c),this.insertMenu(u,e),e.id){case"jp-mainmenu-file":!this._fileMenu&&e instanceof W&&(this._fileMenu=e);break;case"jp-mainmenu-edit":!this._editMenu&&e instanceof U&&(this._editMenu=e);break;case"jp-mainmenu-view":!this._viewMenu&&e instanceof G&&(this._viewMenu=e);break;case"jp-mainmenu-run":!this._runMenu&&e instanceof F&&(this._runMenu=e);break;case"jp-mainmenu-kernel":!this._kernelMenu&&e instanceof q&&(this._kernelMenu=e);break;case"jp-mainmenu-tabs":!this._tabsMenu&&e instanceof $&&(this._tabsMenu=e);break;case"jp-mainmenu-settings":!this._settingsMenu&&e instanceof N&&(this._settingsMenu=e);break;case"jp-mainmenu-help":!this._helpMenu&&e instanceof V&&(this._helpMenu=e);break}}dispose(){var e,n,r,i,c,u,o,a;(e=this._editMenu)===null||e===void 0||e.dispose(),(n=this._fileMenu)===null||n===void 0||n.dispose(),(r=this._helpMenu)===null||r===void 0||r.dispose(),(i=this._kernelMenu)===null||i===void 0||i.dispose(),(c=this._runMenu)===null||c===void 0||c.dispose(),(u=this._settingsMenu)===null||u===void 0||u.dispose(),(o=this._viewMenu)===null||o===void 0||o.dispose(),(a=this._tabsMenu)===null||a===void 0||a.dispose(),super.dispose()}static generateMenu(e,n,r){let i;const{id:c,label:u,rank:o}=n;switch(c){case"jp-mainmenu-file":i=new W({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-edit":i=new U({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-view":i=new G({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-run":i=new F({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-kernel":i=new q({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-tabs":i=new $({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-settings":i=new N({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-help":i=new V({commands:e,rank:o,renderer:v.defaultRenderer});break;default:i=new j({commands:e,rank:o,renderer:v.defaultRenderer})}return u&&(i.title.label=r._p("menu",u)),i}_onMenuDisposed(e){this.removeMenu(e);const n=S.findFirstIndex(this._items,r=>r.menu===e);n!==-1&&S.removeAt(this._items,n)}}var H;(function(t){function e(n,r){return n.rank-r.rank}t.itemCmp=e})(H||(H={}));const ge="@jupyterlab/mainmenu-extension:recents";var C;(function(t){t.openRecent="recentmenu:open-recent",t.reopenLast="recentmenu:reopen-last",t.clearRecents="docmanager:clear-recents"})(C||(C={}));class ve extends re{constructor(e){super(e),this._manager=e.manager,this._showDirectories=e.showDirectories,this.updateItems(),this._manager.changed.connect(this.updateItems,this)}async _validateRecentlyOpened(){Promise.all(this._manager.recentlyOpened.map(e=>this._manager.validate(e)))}onBeforeAttach(e){const n=new ie;setTimeout(()=>{n.reject("Recents validation timed out.")},550),Promise.race([n.promise,this._validateRecentlyOpened()]).then(()=>{this.update()}).catch(()=>{}),super.onBeforeAttach(e)}updateItems(){this.clearItems(),this.addItem({command:C.reopenLast}),this.addItem({type:"separator"});let e=!0,n=!1;this._manager.recentlyOpened.sort((r,i)=>r.contentType===i.contentType?0:r.contentType!=="directory"?1:-1).forEach(r=>{if(r.contentType==="directory"){if(!this._showDirectories)return;n=!0}else e&&n&&(e=!1,this.addItem({type:"separator"}));this.addItem({command:C.openRecent,args:{recent:r}})}),this.addItem({type:"separator"}),this.addItem({command:C.clearRecents})}}const ye={id:ge,description:"Adds sub-menu for opening recent documents to the File section of the main menu.",autoStart:!0,requires:[ue,ee],optional:[ce,D],activate:(t,e,n,r,i)=>{const{commands:c}=t,u=(i??Z).load("jupyterlab"),o=r!==null,a=async s=>{const d=await e.validate(s);return d||await ne(u.__("Could Not Open Recent"),u.__("%1 is no longer valid and will be removed from the list",s.path)),d};c.addCommand(C.openRecent,{execute:async s=>{const d=s.recent,b=d.path===""?"/":d.path;await a(d)&&(r&&d.contentType==="directory"?await c.execute(r.openPath,{path:b}):await c.execute("docmanager:open",{path:b,factory:d.factory}))},label:s=>{const d=s.recent;return d?J.PathExt.joinWithLeadingSlash(d.root,d.path):u.__("Open a Recent Document (given by `recent` argument)")},isEnabled:s=>e.recentlyOpened.includes(s.recent),describedBy:{args:{type:"object",properties:{recent:{type:"object",description:u.__("Recent document to open")}}}}}),t.commands.addCommand(C.reopenLast,{execute:async()=>{const s=e.recentlyClosed[0];!s||!await a(s)||(await c.execute("docmanager:open",{path:s.path,factory:s.factory}),e.removeRecent(s,"closed"))},label:()=>{const s=e.recentlyClosed[0];return s?u.__("Reopen %1",s.path):u.__("Reopen Closed Document")},isEnabled:()=>e.recentlyClosed.length!==0,caption:u.__("Reopen recently closed file or notebook."),describedBy:{args:{type:"object",properties:{}}}});const l=new ve({commands:c,manager:e,showDirectories:o});l.title.label=u.__("Open Recent"),n.fileMenu.addItem({type:"submenu",submenu:l,rank:1})}},I="@jupyterlab/mainmenu-extension:plugin";var p;(function(t){t.openEdit="editmenu:open",t.undo="editmenu:undo",t.redo="editmenu:redo",t.clearCurrent="editmenu:clear-current",t.clearAll="editmenu:clear-all",t.find="editmenu:find",t.goToLine="editmenu:go-to-line",t.openFile="filemenu:open",t.closeAndCleanup="filemenu:close-and-cleanup",t.createConsole="filemenu:create-console",t.shutdown="filemenu:shutdown",t.logout="filemenu:logout",t.openKernel="kernelmenu:open",t.interruptKernel="kernelmenu:interrupt",t.reconnectToKernel="kernelmenu:reconnect-to-kernel",t.restartKernel="kernelmenu:restart",t.restartKernelAndClear="kernelmenu:restart-and-clear",t.changeKernel="kernelmenu:change",t.shutdownKernel="kernelmenu:shutdown",t.shutdownAllKernels="kernelmenu:shutdownAll",t.openView="viewmenu:open",t.wordWrap="viewmenu:word-wrap",t.lineNumbering="viewmenu:line-numbering",t.minimap="viewmenu:show-minimap",t.matchBrackets="viewmenu:match-brackets",t.openRun="runmenu:open",t.run="runmenu:run",t.runAll="runmenu:run-all",t.restartAndRunAll="runmenu:restart-and-run-all",t.runAbove="runmenu:run-above",t.runBelow="runmenu:run-below",t.openTabs="tabsmenu:open",t.activateById="tabsmenu:activate-by-id",t.activatePreviouslyUsedTab="tabsmenu:activate-previously-used-tab",t.openSettings="settingsmenu:open",t.openHelp="helpmenu:open",t.getKernel="helpmenu:get-kernel",t.openFirst="mainmenu:open-first"})(p||(p={}));const we={id:I,description:"Adds and provides the application main menu.",requires:[he,D],optional:[pe,me,be],provides:ee,activate:async(t,e,n,r,i,c)=>{const{commands:u}=t,o=n.load("jupyterlab"),a=new X(u);a.id="jp-MainMenu",a.addClass("jp-scrollbar-tiny"),c&&(await Y.loadSettingsMenu(c,d=>{a.addMenu(d,!1,{rank:d.rank})},d=>X.generateMenu(u,d,o),n),a.update());const l=J.PageConfig.getOption("quitButton").toLowerCase();a.fileMenu.quitEntry=l==="true",Me(t,a.editMenu,o),ke(t,a.fileMenu,e,o),Re(t,a.kernelMenu,o),Ae(t,a.runMenu,o),je(t,a.viewMenu,o),Ce(t,a.helpMenu,o),i&&Be(t,a.tabsMenu,i,o);const s=d=>{a.activeMenu=d,a.openActiveMenu()};return u.addCommand(p.openEdit,{label:o.__("Open Edit Menu"),execute:()=>s(a.editMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openFile,{label:o.__("Open File Menu"),execute:()=>s(a.fileMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openKernel,{label:o.__("Open Kernel Menu"),execute:()=>s(a.kernelMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openRun,{label:o.__("Open Run Menu"),execute:()=>s(a.runMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openView,{label:o.__("Open View Menu"),execute:()=>s(a.viewMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openSettings,{label:o.__("Open Settings Menu"),execute:()=>s(a.settingsMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openTabs,{label:o.__("Open Tabs Menu"),execute:()=>s(a.tabsMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openHelp,{label:o.__("Open Help Menu"),execute:()=>s(a.helpMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openFirst,{label:o.__("Open First Menu"),execute:()=>{a.activeIndex=0,a.openActiveMenu()},describedBy:{args:{type:"object",properties:{}}}}),r&&(r.addItem({command:p.shutdown,category:o.__("Main Area")}),r.addItem({command:p.logout,category:o.__("Main Area")}),r.addItem({command:p.shutdownAllKernels,category:o.__("Kernel Operations")}),r.addItem({command:p.activatePreviouslyUsedTab,category:o.__("Main Area")})),t.shell.add(a,"menu",{rank:100}),a}};function Me(t,e,n){const{commands:r,shell:i}=t;f({id:p.undo,commands:r,shell:i,semanticCommands:e.undoers.undo,default:{label:n.__("Undo")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.redo,commands:r,shell:i,semanticCommands:e.undoers.redo,default:{label:n.__("Redo")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.clearCurrent,commands:r,shell:i,semanticCommands:e.clearers.clearCurrent,default:{label:n.__("Clear")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.clearAll,commands:r,shell:i,semanticCommands:e.clearers.clearAll,default:{label:n.__("Clear All")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.goToLine,commands:r,shell:i,semanticCommands:e.goToLiners,default:{label:n.__("Go to Line…")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n})}function ke(t,e,n,r){const{commands:i,shell:c}=t;f({id:p.closeAndCleanup,commands:i,shell:c,semanticCommands:e.closeAndCleaners,default:{execute:"application:close",label:r.__("Close and Shut Down"),isEnabled:!0},overrides:{isEnabled:()=>!!t.shell.currentWidget&&!!t.shell.currentWidget.title.closable,describedBy:{args:{type:"object",properties:{}}}},trans:r}),f({id:p.createConsole,commands:i,shell:c,semanticCommands:e.consoleCreators,default:{label:r.__("New Console for Activity")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:r}),i.addCommand(p.shutdown,{label:r.__("Shut Down"),caption:r.__("Shut down %1",t.name),isVisible:()=>e.quitEntry,isEnabled:()=>e.quitEntry,describedBy:{args:{type:"object",properties:{}}},execute:()=>L({title:r.__("Shutdown confirmation"),body:r.__("Please confirm you want to shut down %1.",t.name),buttons:[T.cancelButton(),T.warnButton({label:r.__("Shut Down")})]}).then(async u=>{if(u.button.accept){const o=t.serviceManager.serverSettings,a=J.URLExt.join(o.baseUrl,"api/shutdown");try{await Promise.all([t.serviceManager.sessions.shutdownAll(),t.serviceManager.terminals.shutdownAll()])}catch(l){console.log(`Failed to shutdown sessions and terminals: ${l}`)}return P.ServerConnection.makeRequest(a,{method:"POST"},o).then(l=>{if(l.ok){const s=document.createElement("div"),d=document.createElement("p");d.textContent=r.__("You have shut down the Jupyter server. You can now close this tab.");const b=document.createElement("p");b.textContent=r.__("To use %1 again, you will need to relaunch it.",t.name),s.appendChild(d),s.appendChild(b),L({title:r.__("Server stopped"),body:new se({node:s}),buttons:[]}),window.close()}else throw new P.ServerConnection.ResponseError(l)}).catch(l=>{throw new P.ServerConnection.NetworkError(l)})}})}),i.addCommand(p.logout,{label:r.__("Log Out"),caption:r.__("Log out of %1",t.name),isVisible:()=>e.quitEntry,isEnabled:()=>e.quitEntry,describedBy:{args:{type:"object",properties:{}}},execute:()=>{n.navigate("/logout",{hard:!0})}})}function Re(t,e,n){const{commands:r,shell:i}=t;f({id:p.interruptKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.interruptKernel,default:{label:n.__("Interrupt Kernel"),caption:n.__("Interrupt the kernel")},overrides:{icon:c=>c.toolbar?oe:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.reconnectToKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.reconnectToKernel,default:{label:n.__("Reconnect to Kernel")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.restartKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.restartKernel,default:{label:n.__("Restart Kernel…"),caption:n.__("Restart the kernel")},overrides:{icon:c=>c.toolbar?ae:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.restartKernelAndClear,commands:r,shell:i,semanticCommands:[e.kernelUsers.restartKernel,e.kernelUsers.clearWidget],default:{label:n.__("Restart Kernel and Clear…")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.changeKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.changeKernel,default:{label:n.__("Change Kernel…")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.shutdownKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.shutdownKernel,default:{label:n.__("Shut Down Kernel"),caption:n.__("Shut down kernel")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),r.addCommand(p.shutdownAllKernels,{label:n.__("Shut Down All Kernels…"),isEnabled:()=>!t.serviceManager.sessions.running().next().done,describedBy:{args:{type:"object",properties:{}}},execute:()=>L({title:n.__("Shut Down All?"),body:n._n("Are you sure you want to permanently shut down the running kernel?","Are you sure you want to permanently shut down the %1 running kernels?",t.serviceManager.kernels.runningCount),buttons:[T.cancelButton(),T.warnButton({label:n.__("Shut Down All")})]}).then(c=>{if(c.button.accept)return t.serviceManager.sessions.shutdownAll()})})}function je(t,e,n){const{commands:r,shell:i}=t;f({id:p.lineNumbering,commands:r,shell:i,semanticCommands:e.editorViewers.toggleLineNumbers,default:{label:n.__("Show Line Numbers")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.minimap,commands:r,shell:i,semanticCommands:e.editorViewers.toggleMinimap,default:{label:n.__("Show Minimap")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.matchBrackets,commands:r,shell:i,semanticCommands:e.editorViewers.toggleMatchBrackets,default:{label:n.__("Match Brackets")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.wordWrap,commands:r,shell:i,semanticCommands:e.editorViewers.toggleWordWrap,default:{label:n.__("Wrap Words")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n})}function Ae(t,e,n){const{commands:r,shell:i}=t;f({id:p.run,commands:r,shell:i,semanticCommands:e.codeRunners.run,default:{label:n.__("Run Selected"),caption:n.__("Run Selected")},overrides:{icon:c=>c.toolbar?de:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.runAll,commands:r,shell:i,semanticCommands:e.codeRunners.runAll,default:{label:n.__("Run All"),caption:n.__("Run All")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.restartAndRunAll,commands:r,shell:i,semanticCommands:[e.codeRunners.restart,e.codeRunners.runAll],default:{label:n.__("Restart Kernel and Run All"),caption:n.__("Restart Kernel and Run All")},overrides:{icon:c=>c.toolbar?le:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n})}function Be(t,e,n,r){const i=t.commands,c=[];let u;i.addCommand(p.activateById,{label:a=>{if(a.id===void 0)return r.__("Activate a widget by its `id`.");const l=a.id||"",s=Q(t.shell.widgets("main"),d=>d.id===l);return s&&s.title.label||""},isToggled:a=>{const l=a.id||"";return!!t.shell.currentWidget&&t.shell.currentWidget.id===l},describedBy:{args:{type:"object",properties:{id:{type:"string",description:r.__("The widget id to activate")}},required:["id"]}},execute:a=>t.shell.activateById(a.id||"")});let o="";i.addCommand(p.activatePreviouslyUsedTab,{label:r.__("Activate Previously Used Tab"),isEnabled:()=>!!o,describedBy:{args:{type:"object",properties:{}}},execute:()=>i.execute(p.activateById,{id:o})}),n&&t.restored.then(()=>{const a=()=>{u&&!u.isDisposed&&u.dispose(),c.length=0;let l=!1;for(const s of t.shell.widgets("main"))s.id===o&&(l=!0),c.push({command:p.activateById,args:{id:s.id}});u=e.addGroup(c,1),o=l?o:""};a(),n.layoutModified.connect(()=>{a()}),n.currentChanged.connect((l,s)=>{const d=s.oldValue;d&&(o=d.id)})})}function Ce(t,e,n){const{commands:r,shell:i}=t;f({id:p.getKernel,commands:r,shell:i,semanticCommands:e.getKernel,default:{label:n.__("Get Kernel"),isVisible:!1},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n})}const Et=[we,ye];var Y;(function(t){async function e(r){(await L({title:r.__("Information"),body:r.__("Menu customization has changed. You will need to reload JupyterLab to see the changes."),buttons:[T.cancelButton(),T.okButton({label:r.__("Reload")})]})).button.accept&&location.reload()}async function n(r,i,c,u){var o;const a=u.load("jupyterlab");let l=null,s={};function d(m){var g,M;s={};const A=Object.keys(r.plugins).map(y=>{var k,w;const R=(w=(k=r.plugins[y].schema["jupyter.lab.menus"])===null||k===void 0?void 0:k.main)!==null&&w!==void 0?w:[];return s[y]=R,R}).concat([(M=(g=m["jupyter.lab.menus"])===null||g===void 0?void 0:g.main)!==null&&M!==void 0?M:[]]).reduceRight((y,k)=>E.reconcileMenus(y,k,!0),m.properties.menus.default);m.properties.menus.default=E.reconcileMenus(A,m.properties.menus.default,!0).sort((y,k)=>{var w,R;return((w=y.rank)!==null&&w!==void 0?w:1/0)-((R=k.rank)!==null&&R!==void 0?R:1/0)})}r.transform(I,{compose:m=>{var g,M,A,y;l||(l=K.deepCopy(m.schema),d(l));const k=(A=(M=(g=l.properties)===null||g===void 0?void 0:g.menus)===null||M===void 0?void 0:M.default)!==null&&A!==void 0?A:[],w={...m.data.user,menus:(y=m.data.user.menus)!==null&&y!==void 0?y:[]},R={...m.data.composite,menus:E.reconcileMenus(k,w.menus)};return m.data={composite:R,user:w},m},fetch:m=>(l||(l=K.deepCopy(m.schema),d(l)),{data:m.data,id:m.id,raw:m.raw,schema:l,version:m.version})});const b=await r.load(I),h=(o=K.deepCopy(b.composite.menus))!==null&&o!==void 0?o:[],B=new Array;z.createMenus(h.filter(m=>!m.disabled).map(m=>{var g;return{...m,items:E.filterDisabledItems((g=m.items)!==null&&g!==void 0?g:[])}}),c).forEach(m=>{B.push(m),i(m)}),b.changed.connect(()=>{var m;const g=(m=b.composite.menus)!==null&&m!==void 0?m:[];K.deepEqual(h,g)||e(a)}),r.pluginChanged.connect(async(m,g)=>{var M,A,y;if(g!==I){const k=(M=s[g])!==null&&M!==void 0?M:[],w=(y=(A=r.plugins[g].schema["jupyter.lab.menus"])===null||A===void 0?void 0:A.main)!==null&&y!==void 0?y:[];if(!K.deepEqual(k,w))if(s[g])await e(a);else{s[g]=K.deepCopy(w);const R=E.reconcileMenus(w,h,!1,!1).filter(x=>!x.disabled).map(x=>{var O;return{...x,items:E.filterDisabledItems((O=x.items)!==null&&O!==void 0?O:[])}});z.updateMenus(B,R,c).forEach(x=>{i(x)})}}})}t.loadSettingsMenu=n})(Y||(Y={}));export{p as CommandIDs,Et as default};
|
|
1
|
+
import{ak as Z,ca as Q,g3 as te,af as S,ai as D,bZ as J,c5 as ne,ad as re,aW as ie,ch as L,cg as T,l as P,ag as se,cP as oe,cM as ae,g4 as de,g5 as le,c0 as K,d8 as E}from"../datalayer-app-main.js";import{b as ce}from"./tokens-BvmYCqiu.js";import{a as ue}from"./tokens-CENaHAHm.js";import{I as ee}from"./tokens-D1_9ZFxB.js";import{g as _,b as pe,M as z}from"./index-BvvaLLhn.js";import{M as v,c as me,e as he}from"./index-B_9UD0bt.js";import{I as be}from"./tokens-BHLmeqjP.js";import{R as j,I as _e}from"./menu-T4su8As2.js";import"./hoverbox-CStlKQWE.js";import"./Output-BscOPLqE.js";import"./index-BYQwy0Zx.js";import"./index-BJ7Yskx5.js";import"./color-CG7_7V2-.js";import"./isEqual-BybBNsZK.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-B3WvcNQa.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-CQlXdanG.js";import"./NotebookSkeleton-HdM76lOj.js";import"./Avatar-DbU3YP4x.js";import"./renderer-lVFw9lw7.js";import"./SquareIcon-e3ygcjpv.js";import"./SortAscIcon-CVKVWIWQ.js";import"./url-DuKx0yk0.js";/* empty css */import"./index-Dro44tIm.js";/* empty css *//* empty css */import"./index-DsG9xhMj.js";/* empty css */import"./index-CNU-WVhQ.js";import"./index--OLIX362.js";import"./index-DYGslHkf.js";import"./index-BSRVX3UN.js";import"./index-BH2OX5l8.js";import"./index-C3vDfO5_.js";import"./index-Ko8lxXFd.js";import"./index-CB9u17_J.js";import"./index-BUVtc_FV.js";import"./ArrowLeftIcon-Y3PTljcl.js";import"./SkubbleIcon-tlg17jBG.js";import"./usePrimerThemeBridge-D_1NuGKb.js";import"./index-j-oeqTuo.js";import"./KernelVariables-KCUfxhF4.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-DMKCe3c2.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-6Hdi_m3T.js";import"./sessions-3PQsLINe.js";import"./tokens-BfuLIPUq.js";import"./drivecontents-Bg9_6Kmo.js";import"./kernel-BI-BLP-K.js";function f(t){const{id:e,commands:n,shell:r,semanticCommands:i,default:c,overrides:u,trans:o}=t;n.addCommand(e,{...fe({commands:n,shell:r},i,c??{},o??Z.load("jupyterlab")),...u});const a=Array.isArray(i)?i:[i],l=(s,d)=>{if(d.id){if(d.id===e&&d.type==="removed")s.commandChanged.disconnect(l);else if(a.reduce((h,B)=>h.concat(B.ids),[]).includes(d.id))switch(d.type){case"changed":case"many-changed":s.notifyCommandChanged(e);break;case"removed":for(const h of a)h.remove(d.id);break}}};n.commandChanged.connect(l)}function fe(t,e,n,r){const{commands:i,shell:c}=t,u=Array.isArray(e)?e:[e];return{label:a("label"),caption:a("caption"),isEnabled:()=>{var l;const s=o("isEnabled");return s.length>0&&!s.some(d=>d===!1)||((l=n.isEnabled)!==null&&l!==void 0?l:!1)},isToggled:()=>{var l;return o("isToggled").some(d=>d===!0)||((l=n.isToggled)!==null&&l!==void 0?l:!1)},isVisible:()=>{var l;const s=o("isVisible");return s.length>0&&!s.some(d=>d===!1)||((l=n.isVisible)!==null&&l!==void 0?l:!0)},execute:async()=>{const l=c.currentWidget,d=u.map(h=>l!==null?h.getActiveCommandId(l):null).filter(h=>h!==null&&i.isEnabled(h));let b=null;if(d.length>0)for(const h of d){const B={[_.WIDGET]:l.id};if(b=await i.execute(h,B),typeof b=="boolean"&&b===!1)break}else n.execute&&(b=await i.execute(n.execute));return b}};function o(l){const s=c.currentWidget;return u.map(h=>s!==null?h.getActiveCommandId(s):null).filter(h=>h!==null).map(h=>i[l](h))}function a(l){return()=>{var s;const d=o(l).map((b,h)=>l=="caption"&&h>0?b.toLocaleLowerCase():b);switch(d.length){case 0:return(s=n[l])!==null&&s!==void 0?s:"";case 1:return d[0];default:{const b=d.some(m=>/…$/.test(m)),h=d.slice(void 0,-1).map(m=>m.replace(/…$/,"")).join(", "),B=d.slice(-1)[0].replace(/…$/,"")+(b?"…":"");return r.__("%1 and %2",h,B)}}}}}class U extends j{constructor(e){super(e),this.undoers={redo:new _,undo:new _},this.clearers={clearAll:new _,clearCurrent:new _},this.goToLiners=new _}}class W extends j{constructor(e){super(e),this.quitEntry=!1,this.closeAndCleaners=new _,this.consoleCreators=new _}get newMenu(){var e,n;return this._newMenu||(this._newMenu=(n=(e=Q(this.items,r=>{var i;return((i=r.submenu)===null||i===void 0?void 0:i.id)==="jp-mainmenu-file-new"}))===null||e===void 0?void 0:e.submenu)!==null&&n!==void 0?n:new j({commands:this.commands})),this._newMenu}dispose(){var e;(e=this._newMenu)===null||e===void 0||e.dispose(),super.dispose()}}class V extends j{constructor(e){super(e),this.getKernel=new _}}class q extends j{constructor(e){super(e),this.kernelUsers={changeKernel:new _,clearWidget:new _,interruptKernel:new _,reconnectToKernel:new _,restartKernel:new _,shutdownKernel:new _}}}class F extends j{constructor(e){super(e),this.codeRunners={restart:new _,run:new _,runAll:new _}}}class N extends j{constructor(e){super(e)}}class $ extends j{constructor(e){super(e)}}class G extends j{constructor(e){super(e),this.editorViewers={toggleLineNumbers:new _,toggleMinimap:new _,toggleMatchBrackets:new _,toggleWordWrap:new _}}}class X extends te{constructor(e){let n={forceItemsPosition:{forceX:!1,forceY:!0}};super(n),this._items=[],this._commands=e}get editMenu(){return this._editMenu||(this._editMenu=new U({commands:this._commands,rank:2,renderer:v.defaultRenderer})),this._editMenu}get fileMenu(){return this._fileMenu||(this._fileMenu=new W({commands:this._commands,rank:1,renderer:v.defaultRenderer})),this._fileMenu}get helpMenu(){return this._helpMenu||(this._helpMenu=new V({commands:this._commands,rank:1e3,renderer:v.defaultRenderer})),this._helpMenu}get kernelMenu(){return this._kernelMenu||(this._kernelMenu=new q({commands:this._commands,rank:5,renderer:v.defaultRenderer})),this._kernelMenu}get runMenu(){return this._runMenu||(this._runMenu=new F({commands:this._commands,rank:4,renderer:v.defaultRenderer})),this._runMenu}get settingsMenu(){return this._settingsMenu||(this._settingsMenu=new N({commands:this._commands,rank:999,renderer:v.defaultRenderer})),this._settingsMenu}get viewMenu(){return this._viewMenu||(this._viewMenu=new G({commands:this._commands,rank:3,renderer:v.defaultRenderer})),this._viewMenu}get tabsMenu(){return this._tabsMenu||(this._tabsMenu=new $({commands:this._commands,rank:500,renderer:v.defaultRenderer})),this._tabsMenu}addMenu(e,n=!0,r={}){if(S.firstIndexOf(this.menus,e)>-1)return;v.overrideDefaultRenderer(e);const i="rank"in r?r.rank:"rank"in e?e.rank:_e.DEFAULT_RANK,c={menu:e,rank:i},u=S.upperBound(this._items,c,H.itemCmp);switch(e.disposed.connect(this._onMenuDisposed,this),S.insert(this._items,u,c),this.insertMenu(u,e),e.id){case"jp-mainmenu-file":!this._fileMenu&&e instanceof W&&(this._fileMenu=e);break;case"jp-mainmenu-edit":!this._editMenu&&e instanceof U&&(this._editMenu=e);break;case"jp-mainmenu-view":!this._viewMenu&&e instanceof G&&(this._viewMenu=e);break;case"jp-mainmenu-run":!this._runMenu&&e instanceof F&&(this._runMenu=e);break;case"jp-mainmenu-kernel":!this._kernelMenu&&e instanceof q&&(this._kernelMenu=e);break;case"jp-mainmenu-tabs":!this._tabsMenu&&e instanceof $&&(this._tabsMenu=e);break;case"jp-mainmenu-settings":!this._settingsMenu&&e instanceof N&&(this._settingsMenu=e);break;case"jp-mainmenu-help":!this._helpMenu&&e instanceof V&&(this._helpMenu=e);break}}dispose(){var e,n,r,i,c,u,o,a;(e=this._editMenu)===null||e===void 0||e.dispose(),(n=this._fileMenu)===null||n===void 0||n.dispose(),(r=this._helpMenu)===null||r===void 0||r.dispose(),(i=this._kernelMenu)===null||i===void 0||i.dispose(),(c=this._runMenu)===null||c===void 0||c.dispose(),(u=this._settingsMenu)===null||u===void 0||u.dispose(),(o=this._viewMenu)===null||o===void 0||o.dispose(),(a=this._tabsMenu)===null||a===void 0||a.dispose(),super.dispose()}static generateMenu(e,n,r){let i;const{id:c,label:u,rank:o}=n;switch(c){case"jp-mainmenu-file":i=new W({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-edit":i=new U({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-view":i=new G({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-run":i=new F({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-kernel":i=new q({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-tabs":i=new $({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-settings":i=new N({commands:e,rank:o,renderer:v.defaultRenderer});break;case"jp-mainmenu-help":i=new V({commands:e,rank:o,renderer:v.defaultRenderer});break;default:i=new j({commands:e,rank:o,renderer:v.defaultRenderer})}return u&&(i.title.label=r._p("menu",u)),i}_onMenuDisposed(e){this.removeMenu(e);const n=S.findFirstIndex(this._items,r=>r.menu===e);n!==-1&&S.removeAt(this._items,n)}}var H;(function(t){function e(n,r){return n.rank-r.rank}t.itemCmp=e})(H||(H={}));const ge="@jupyterlab/mainmenu-extension:recents";var C;(function(t){t.openRecent="recentmenu:open-recent",t.reopenLast="recentmenu:reopen-last",t.clearRecents="docmanager:clear-recents"})(C||(C={}));class ve extends re{constructor(e){super(e),this._manager=e.manager,this._showDirectories=e.showDirectories,this.updateItems(),this._manager.changed.connect(this.updateItems,this)}async _validateRecentlyOpened(){Promise.all(this._manager.recentlyOpened.map(e=>this._manager.validate(e)))}onBeforeAttach(e){const n=new ie;setTimeout(()=>{n.reject("Recents validation timed out.")},550),Promise.race([n.promise,this._validateRecentlyOpened()]).then(()=>{this.update()}).catch(()=>{}),super.onBeforeAttach(e)}updateItems(){this.clearItems(),this.addItem({command:C.reopenLast}),this.addItem({type:"separator"});let e=!0,n=!1;this._manager.recentlyOpened.sort((r,i)=>r.contentType===i.contentType?0:r.contentType!=="directory"?1:-1).forEach(r=>{if(r.contentType==="directory"){if(!this._showDirectories)return;n=!0}else e&&n&&(e=!1,this.addItem({type:"separator"}));this.addItem({command:C.openRecent,args:{recent:r}})}),this.addItem({type:"separator"}),this.addItem({command:C.clearRecents})}}const ye={id:ge,description:"Adds sub-menu for opening recent documents to the File section of the main menu.",autoStart:!0,requires:[ue,ee],optional:[ce,D],activate:(t,e,n,r,i)=>{const{commands:c}=t,u=(i??Z).load("jupyterlab"),o=r!==null,a=async s=>{const d=await e.validate(s);return d||await ne(u.__("Could Not Open Recent"),u.__("%1 is no longer valid and will be removed from the list",s.path)),d};c.addCommand(C.openRecent,{execute:async s=>{const d=s.recent,b=d.path===""?"/":d.path;await a(d)&&(r&&d.contentType==="directory"?await c.execute(r.openPath,{path:b}):await c.execute("docmanager:open",{path:b,factory:d.factory}))},label:s=>{const d=s.recent;return d?J.PathExt.joinWithLeadingSlash(d.root,d.path):u.__("Open a Recent Document (given by `recent` argument)")},isEnabled:s=>e.recentlyOpened.includes(s.recent),describedBy:{args:{type:"object",properties:{recent:{type:"object",description:u.__("Recent document to open")}}}}}),t.commands.addCommand(C.reopenLast,{execute:async()=>{const s=e.recentlyClosed[0];!s||!await a(s)||(await c.execute("docmanager:open",{path:s.path,factory:s.factory}),e.removeRecent(s,"closed"))},label:()=>{const s=e.recentlyClosed[0];return s?u.__("Reopen %1",s.path):u.__("Reopen Closed Document")},isEnabled:()=>e.recentlyClosed.length!==0,caption:u.__("Reopen recently closed file or notebook."),describedBy:{args:{type:"object",properties:{}}}});const l=new ve({commands:c,manager:e,showDirectories:o});l.title.label=u.__("Open Recent"),n.fileMenu.addItem({type:"submenu",submenu:l,rank:1})}},I="@jupyterlab/mainmenu-extension:plugin";var p;(function(t){t.openEdit="editmenu:open",t.undo="editmenu:undo",t.redo="editmenu:redo",t.clearCurrent="editmenu:clear-current",t.clearAll="editmenu:clear-all",t.find="editmenu:find",t.goToLine="editmenu:go-to-line",t.openFile="filemenu:open",t.closeAndCleanup="filemenu:close-and-cleanup",t.createConsole="filemenu:create-console",t.shutdown="filemenu:shutdown",t.logout="filemenu:logout",t.openKernel="kernelmenu:open",t.interruptKernel="kernelmenu:interrupt",t.reconnectToKernel="kernelmenu:reconnect-to-kernel",t.restartKernel="kernelmenu:restart",t.restartKernelAndClear="kernelmenu:restart-and-clear",t.changeKernel="kernelmenu:change",t.shutdownKernel="kernelmenu:shutdown",t.shutdownAllKernels="kernelmenu:shutdownAll",t.openView="viewmenu:open",t.wordWrap="viewmenu:word-wrap",t.lineNumbering="viewmenu:line-numbering",t.minimap="viewmenu:show-minimap",t.matchBrackets="viewmenu:match-brackets",t.openRun="runmenu:open",t.run="runmenu:run",t.runAll="runmenu:run-all",t.restartAndRunAll="runmenu:restart-and-run-all",t.runAbove="runmenu:run-above",t.runBelow="runmenu:run-below",t.openTabs="tabsmenu:open",t.activateById="tabsmenu:activate-by-id",t.activatePreviouslyUsedTab="tabsmenu:activate-previously-used-tab",t.openSettings="settingsmenu:open",t.openHelp="helpmenu:open",t.getKernel="helpmenu:get-kernel",t.openFirst="mainmenu:open-first"})(p||(p={}));const we={id:I,description:"Adds and provides the application main menu.",requires:[he,D],optional:[pe,me,be],provides:ee,activate:async(t,e,n,r,i,c)=>{const{commands:u}=t,o=n.load("jupyterlab"),a=new X(u);a.id="jp-MainMenu",a.addClass("jp-scrollbar-tiny"),c&&(await Y.loadSettingsMenu(c,d=>{a.addMenu(d,!1,{rank:d.rank})},d=>X.generateMenu(u,d,o),n),a.update());const l=J.PageConfig.getOption("quitButton").toLowerCase();a.fileMenu.quitEntry=l==="true",Me(t,a.editMenu,o),ke(t,a.fileMenu,e,o),Re(t,a.kernelMenu,o),Ae(t,a.runMenu,o),je(t,a.viewMenu,o),Ce(t,a.helpMenu,o),i&&Be(t,a.tabsMenu,i,o);const s=d=>{a.activeMenu=d,a.openActiveMenu()};return u.addCommand(p.openEdit,{label:o.__("Open Edit Menu"),execute:()=>s(a.editMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openFile,{label:o.__("Open File Menu"),execute:()=>s(a.fileMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openKernel,{label:o.__("Open Kernel Menu"),execute:()=>s(a.kernelMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openRun,{label:o.__("Open Run Menu"),execute:()=>s(a.runMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openView,{label:o.__("Open View Menu"),execute:()=>s(a.viewMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openSettings,{label:o.__("Open Settings Menu"),execute:()=>s(a.settingsMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openTabs,{label:o.__("Open Tabs Menu"),execute:()=>s(a.tabsMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openHelp,{label:o.__("Open Help Menu"),execute:()=>s(a.helpMenu),describedBy:{args:{type:"object",properties:{}}}}),u.addCommand(p.openFirst,{label:o.__("Open First Menu"),execute:()=>{a.activeIndex=0,a.openActiveMenu()},describedBy:{args:{type:"object",properties:{}}}}),r&&(r.addItem({command:p.shutdown,category:o.__("Main Area")}),r.addItem({command:p.logout,category:o.__("Main Area")}),r.addItem({command:p.shutdownAllKernels,category:o.__("Kernel Operations")}),r.addItem({command:p.activatePreviouslyUsedTab,category:o.__("Main Area")})),t.shell.add(a,"menu",{rank:100}),a}};function Me(t,e,n){const{commands:r,shell:i}=t;f({id:p.undo,commands:r,shell:i,semanticCommands:e.undoers.undo,default:{label:n.__("Undo")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.redo,commands:r,shell:i,semanticCommands:e.undoers.redo,default:{label:n.__("Redo")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.clearCurrent,commands:r,shell:i,semanticCommands:e.clearers.clearCurrent,default:{label:n.__("Clear")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.clearAll,commands:r,shell:i,semanticCommands:e.clearers.clearAll,default:{label:n.__("Clear All")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.goToLine,commands:r,shell:i,semanticCommands:e.goToLiners,default:{label:n.__("Go to Line…")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n})}function ke(t,e,n,r){const{commands:i,shell:c}=t;f({id:p.closeAndCleanup,commands:i,shell:c,semanticCommands:e.closeAndCleaners,default:{execute:"application:close",label:r.__("Close and Shut Down"),isEnabled:!0},overrides:{isEnabled:()=>!!t.shell.currentWidget&&!!t.shell.currentWidget.title.closable,describedBy:{args:{type:"object",properties:{}}}},trans:r}),f({id:p.createConsole,commands:i,shell:c,semanticCommands:e.consoleCreators,default:{label:r.__("New Console for Activity")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:r}),i.addCommand(p.shutdown,{label:r.__("Shut Down"),caption:r.__("Shut down %1",t.name),isVisible:()=>e.quitEntry,isEnabled:()=>e.quitEntry,describedBy:{args:{type:"object",properties:{}}},execute:()=>L({title:r.__("Shutdown confirmation"),body:r.__("Please confirm you want to shut down %1.",t.name),buttons:[T.cancelButton(),T.warnButton({label:r.__("Shut Down")})]}).then(async u=>{if(u.button.accept){const o=t.serviceManager.serverSettings,a=J.URLExt.join(o.baseUrl,"api/shutdown");try{await Promise.all([t.serviceManager.sessions.shutdownAll(),t.serviceManager.terminals.shutdownAll()])}catch(l){console.log(`Failed to shutdown sessions and terminals: ${l}`)}return P.ServerConnection.makeRequest(a,{method:"POST"},o).then(l=>{if(l.ok){const s=document.createElement("div"),d=document.createElement("p");d.textContent=r.__("You have shut down the Jupyter server. You can now close this tab.");const b=document.createElement("p");b.textContent=r.__("To use %1 again, you will need to relaunch it.",t.name),s.appendChild(d),s.appendChild(b),L({title:r.__("Server stopped"),body:new se({node:s}),buttons:[]}),window.close()}else throw new P.ServerConnection.ResponseError(l)}).catch(l=>{throw new P.ServerConnection.NetworkError(l)})}})}),i.addCommand(p.logout,{label:r.__("Log Out"),caption:r.__("Log out of %1",t.name),isVisible:()=>e.quitEntry,isEnabled:()=>e.quitEntry,describedBy:{args:{type:"object",properties:{}}},execute:()=>{n.navigate("/logout",{hard:!0})}})}function Re(t,e,n){const{commands:r,shell:i}=t;f({id:p.interruptKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.interruptKernel,default:{label:n.__("Interrupt Kernel"),caption:n.__("Interrupt the kernel")},overrides:{icon:c=>c.toolbar?oe:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.reconnectToKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.reconnectToKernel,default:{label:n.__("Reconnect to Kernel")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.restartKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.restartKernel,default:{label:n.__("Restart Kernel…"),caption:n.__("Restart the kernel")},overrides:{icon:c=>c.toolbar?ae:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.restartKernelAndClear,commands:r,shell:i,semanticCommands:[e.kernelUsers.restartKernel,e.kernelUsers.clearWidget],default:{label:n.__("Restart Kernel and Clear…")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.changeKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.changeKernel,default:{label:n.__("Change Kernel…")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.shutdownKernel,commands:r,shell:i,semanticCommands:e.kernelUsers.shutdownKernel,default:{label:n.__("Shut Down Kernel"),caption:n.__("Shut down kernel")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),r.addCommand(p.shutdownAllKernels,{label:n.__("Shut Down All Kernels…"),isEnabled:()=>!t.serviceManager.sessions.running().next().done,describedBy:{args:{type:"object",properties:{}}},execute:()=>L({title:n.__("Shut Down All?"),body:n._n("Are you sure you want to permanently shut down the running kernel?","Are you sure you want to permanently shut down the %1 running kernels?",t.serviceManager.kernels.runningCount),buttons:[T.cancelButton(),T.warnButton({label:n.__("Shut Down All")})]}).then(c=>{if(c.button.accept)return t.serviceManager.sessions.shutdownAll()})})}function je(t,e,n){const{commands:r,shell:i}=t;f({id:p.lineNumbering,commands:r,shell:i,semanticCommands:e.editorViewers.toggleLineNumbers,default:{label:n.__("Show Line Numbers")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.minimap,commands:r,shell:i,semanticCommands:e.editorViewers.toggleMinimap,default:{label:n.__("Show Minimap")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.matchBrackets,commands:r,shell:i,semanticCommands:e.editorViewers.toggleMatchBrackets,default:{label:n.__("Match Brackets")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.wordWrap,commands:r,shell:i,semanticCommands:e.editorViewers.toggleWordWrap,default:{label:n.__("Wrap Words")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n})}function Ae(t,e,n){const{commands:r,shell:i}=t;f({id:p.run,commands:r,shell:i,semanticCommands:e.codeRunners.run,default:{label:n.__("Run Selected"),caption:n.__("Run Selected")},overrides:{icon:c=>c.toolbar?de:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.runAll,commands:r,shell:i,semanticCommands:e.codeRunners.runAll,default:{label:n.__("Run All"),caption:n.__("Run All")},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n}),f({id:p.restartAndRunAll,commands:r,shell:i,semanticCommands:[e.codeRunners.restart,e.codeRunners.runAll],default:{label:n.__("Restart Kernel and Run All"),caption:n.__("Restart Kernel and Run All")},overrides:{icon:c=>c.toolbar?le:void 0,describedBy:{args:{type:"object",properties:{}}}},trans:n})}function Be(t,e,n,r){const i=t.commands,c=[];let u;i.addCommand(p.activateById,{label:a=>{if(a.id===void 0)return r.__("Activate a widget by its `id`.");const l=a.id||"",s=Q(t.shell.widgets("main"),d=>d.id===l);return s&&s.title.label||""},isToggled:a=>{const l=a.id||"";return!!t.shell.currentWidget&&t.shell.currentWidget.id===l},describedBy:{args:{type:"object",properties:{id:{type:"string",description:r.__("The widget id to activate")}},required:["id"]}},execute:a=>t.shell.activateById(a.id||"")});let o="";i.addCommand(p.activatePreviouslyUsedTab,{label:r.__("Activate Previously Used Tab"),isEnabled:()=>!!o,describedBy:{args:{type:"object",properties:{}}},execute:()=>i.execute(p.activateById,{id:o})}),n&&t.restored.then(()=>{const a=()=>{u&&!u.isDisposed&&u.dispose(),c.length=0;let l=!1;for(const s of t.shell.widgets("main"))s.id===o&&(l=!0),c.push({command:p.activateById,args:{id:s.id}});u=e.addGroup(c,1),o=l?o:""};a(),n.layoutModified.connect(()=>{a()}),n.currentChanged.connect((l,s)=>{const d=s.oldValue;d&&(o=d.id)})})}function Ce(t,e,n){const{commands:r,shell:i}=t;f({id:p.getKernel,commands:r,shell:i,semanticCommands:e.getKernel,default:{label:n.__("Get Kernel"),isVisible:!1},overrides:{describedBy:{args:{type:"object",properties:{}}}},trans:n})}const Et=[we,ye];var Y;(function(t){async function e(r){(await L({title:r.__("Information"),body:r.__("Menu customization has changed. You will need to reload JupyterLab to see the changes."),buttons:[T.cancelButton(),T.okButton({label:r.__("Reload")})]})).button.accept&&location.reload()}async function n(r,i,c,u){var o;const a=u.load("jupyterlab");let l=null,s={};function d(m){var g,M;s={};const A=Object.keys(r.plugins).map(y=>{var k,w;const R=(w=(k=r.plugins[y].schema["jupyter.lab.menus"])===null||k===void 0?void 0:k.main)!==null&&w!==void 0?w:[];return s[y]=R,R}).concat([(M=(g=m["jupyter.lab.menus"])===null||g===void 0?void 0:g.main)!==null&&M!==void 0?M:[]]).reduceRight((y,k)=>E.reconcileMenus(y,k,!0),m.properties.menus.default);m.properties.menus.default=E.reconcileMenus(A,m.properties.menus.default,!0).sort((y,k)=>{var w,R;return((w=y.rank)!==null&&w!==void 0?w:1/0)-((R=k.rank)!==null&&R!==void 0?R:1/0)})}r.transform(I,{compose:m=>{var g,M,A,y;l||(l=K.deepCopy(m.schema),d(l));const k=(A=(M=(g=l.properties)===null||g===void 0?void 0:g.menus)===null||M===void 0?void 0:M.default)!==null&&A!==void 0?A:[],w={...m.data.user,menus:(y=m.data.user.menus)!==null&&y!==void 0?y:[]},R={...m.data.composite,menus:E.reconcileMenus(k,w.menus)};return m.data={composite:R,user:w},m},fetch:m=>(l||(l=K.deepCopy(m.schema),d(l)),{data:m.data,id:m.id,raw:m.raw,schema:l,version:m.version})});const b=await r.load(I),h=(o=K.deepCopy(b.composite.menus))!==null&&o!==void 0?o:[],B=new Array;z.createMenus(h.filter(m=>!m.disabled).map(m=>{var g;return{...m,items:E.filterDisabledItems((g=m.items)!==null&&g!==void 0?g:[])}}),c).forEach(m=>{B.push(m),i(m)}),b.changed.connect(()=>{var m;const g=(m=b.composite.menus)!==null&&m!==void 0?m:[];K.deepEqual(h,g)||e(a)}),r.pluginChanged.connect(async(m,g)=>{var M,A,y;if(g!==I){const k=(M=s[g])!==null&&M!==void 0?M:[],w=(y=(A=r.plugins[g].schema["jupyter.lab.menus"])===null||A===void 0?void 0:A.main)!==null&&y!==void 0?y:[];if(!K.deepEqual(k,w))if(s[g])await e(a);else{s[g]=K.deepCopy(w);const R=E.reconcileMenus(w,h,!1,!1).filter(x=>!x.disabled).map(x=>{var O;return{...x,items:E.filterDisabledItems((O=x.items)!==null&&O!==void 0?O:[])}});z.updateMenus(B,R,c).forEach(x=>{i(x)})}}})}t.loadSettingsMenu=n})(Y||(Y={}));export{p as CommandIDs,Et as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{K as t,r as i}from"../datalayer-app-main.js";import{I as l,r}from"./JupyterLexicalExtension-
|
|
1
|
+
import{K as t,r as i}from"../datalayer-app-main.js";import{I as l,r}from"./JupyterLexicalExtension-BuRLImy5.js";import{$ as h,a as j,b as k,c as q,d as v,e as w,C as y,f as z,g as F}from"./JupyterLexicalExtension-BuRLImy5.js";import"./NotebookSkeleton-HdM76lOj.js";import"./Avatar-DbU3YP4x.js";import"./url-DuKx0yk0.js";import"./isSymbol-BLtK9CV6.js";import"./toNumber-B1wj8-wx.js";import"./VideoIcon-BjP_LDa4.js";import"./LinkIcon-DUI0jw25.js";import"./Toolbar-6Hdi_m3T.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./ArrowUpIcon-BUCpIXDR.js";import"./SortDescIcon-CS4EzHeS.js";import"./PaintbrushIcon-CLU8RilX.js";import"./PrismCss-CcU1ChRk.js";import"./Output-BscOPLqE.js";import"./index-BvvaLLhn.js";import"./hoverbox-CStlKQWE.js";import"./index-BYQwy0Zx.js";import"./index-BJ7Yskx5.js";import"./color-CG7_7V2-.js";import"./isEqual-BybBNsZK.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./index-B3WvcNQa.js";import"./RestartIcon-Ca6_HoK0.js";import"./LexicalToolRegistry-CXLITkMD.js";function D(){const[o]=t();return i.useEffect(()=>r(o),[o]),null}export{h as $createCollapsibleContainerNode,j as $createCollapsibleContentNode,k as $createCollapsibleTitleNode,q as $isCollapsibleContainerNode,v as $isCollapsibleContentNode,w as $isCollapsibleTitleNode,y as CollapsibleContainerNode,z as CollapsibleContentNode,D as CollapsiblePlugin,F as CollapsibleTitleNode,l as INSERT_COLLAPSIBLE_COMMAND,D as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{cb as P,cc as x,cd as d,ce as B,cf as b,ai as w,cg as f,ch as j}from"../datalayer-app-main.js";import{J as I,c as M}from"./index-
|
|
1
|
+
import{cb as P,cc as x,cd as d,ce as B,cf as b,ai as w,cg as f,ch as j}from"../datalayer-app-main.js";import{J as I,c as M}from"./index-B_9UD0bt.js";import{I as L}from"./tokens-BHLmeqjP.js";import{I as N}from"./tokens-D1_9ZFxB.js";import{b as A}from"./index-BvvaLLhn.js";import"./Output-BscOPLqE.js";import"./index-BYQwy0Zx.js";import"./hoverbox-CStlKQWE.js";import"./index-BJ7Yskx5.js";import"./color-CG7_7V2-.js";import"./isEqual-BybBNsZK.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-B3WvcNQa.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-CQlXdanG.js";import"./NotebookSkeleton-HdM76lOj.js";import"./Avatar-DbU3YP4x.js";import"./renderer-lVFw9lw7.js";import"./SquareIcon-e3ygcjpv.js";import"./SortAscIcon-CVKVWIWQ.js";import"./url-DuKx0yk0.js";/* empty css */import"./index-Dro44tIm.js";/* empty css *//* empty css */import"./index-DsG9xhMj.js";/* empty css */import"./index-CNU-WVhQ.js";import"./index--OLIX362.js";import"./index-DYGslHkf.js";import"./index-BSRVX3UN.js";import"./index-BH2OX5l8.js";import"./index-C3vDfO5_.js";import"./index-Ko8lxXFd.js";import"./index-CB9u17_J.js";import"./index-BUVtc_FV.js";import"./ArrowLeftIcon-Y3PTljcl.js";import"./SkubbleIcon-tlg17jBG.js";import"./usePrimerThemeBridge-D_1NuGKb.js";import"./index-j-oeqTuo.js";import"./KernelVariables-KCUfxhF4.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-DMKCe3c2.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-6Hdi_m3T.js";import"./sessions-3PQsLINe.js";import"./tokens-BfuLIPUq.js";import"./drivecontents-Bg9_6Kmo.js";import"./kernel-BI-BLP-K.js";class E{constructor(t="",e,r,a){this._domainData={},this._translationBundles={},this._connector=a??new P(t,r),this._stringsPrefix=e||"",this._englishBundle=new x({stringsPrefix:this._stringsPrefix}),this._currentLocale=d}get languageCode(){return this._currentLocale}async fetch(t){var e,r,a,i;this._languageData=await this._connector.fetch({language:t});let s;if(this._languageData&&t==="default")try{for(const c of Object.values((e=this._languageData.data)!==null&&e!==void 0?e:{})){s=c[""].language;break}}catch{}this._currentLocale=(t!=="default"?t:s??d).replace("_","-"),this._domainData=(a=(r=this._languageData)===null||r===void 0?void 0:r.data)!==null&&a!==void 0?a:{};const o=(i=this._languageData)===null||i===void 0?void 0:i.message;o&&this._currentLocale!==d&&console.warn(o)}load(t){if(this._domainData){if(this._currentLocale==d)return this._englishBundle;if(t=B(t),!(t in this._translationBundles)){let e=new x({domain:t,locale:this._currentLocale,stringsPrefix:this._stringsPrefix});if(t in this._domainData){const r=this._domainData[t][""],a={...this._domainData[t],"":{...r,pluralForms:r.plural_forms}};e.loadJSON(a,t)}this._translationBundles[t]=e}return this._translationBundles[t]}else return this._englishBundle}}const v="@jupyterlab/translation-extension:plugin",T={id:"@jupyterlab/translation-extension:translator-connector",description:"Provides the application translation connector.",autoStart:!0,requires:[I.IPaths],provides:b,activate:(l,t)=>{const e=t.urls.translations,r=l.serviceManager.serverSettings;return new P(e,r)}},$={id:"@jupyterlab/translation-extension:translator",description:"Provides the application translation object.",autoStart:!0,requires:[I.IPaths,L],optional:[M,b],provides:w,activate:async(l,t,e,r,a)=>{const i=await e.load(v),s=i.get("locale").composite;let o=i.get("stringsPrefix").composite;o=i.get("displayStringsPrefix").composite?o:"";const m=l.serviceManager.serverSettings,n=new E(t.urls.translations,o,m,a??void 0);return await n.fetch(s),document.documentElement.lang=n.languageCode,r&&(r.translator=n),f.translator=n,n}},F={id:v,description:"Adds translation commands and settings.",requires:[L,w,b],optional:[N,A],autoStart:!0,activate:(l,t,e,r,a,i)=>{var s;const o=e.load("jupyterlab"),{commands:c}=l,m=a?(s=a.settingsMenu.items.find(n=>{var u;return n.type==="submenu"&&((u=n.submenu)===null||u===void 0?void 0:u.id)==="jp-mainmenu-settings-language"}))===null||s===void 0?void 0:s.submenu:null;r.fetch().then(n=>{const u=e.languageCode.replace("-","_");for(const p in n.data){const y=n.data[p],D=y.displayName,C=y.nativeName,g=u===p,h=g?`${D}`:`${D} - ${C}`,_=`jupyterlab-translation:${p}`;c.addCommand(_,{label:h,caption:o.__("Change interface language to %1",h),isEnabled:()=>!g,isToggled:()=>g,execute:async()=>{if((await j({title:o.__("Change interface language?"),body:o.__("After changing the interface language to %1, you will need to reload JupyterLab to see the changes.",h),buttons:[f.cancelButton(),f.okButton({label:o.__("Change and reload")})]})).button.accept)try{await t.set(v,"locale",p),window.location.reload()}catch(S){console.error(`Failed to update language locale to ${p}`,S)}},describedBy:{args:{type:"object",properties:{}}}}),m&&m.addItem({command:_,args:{}}),i&&i.addItem({category:o.__("Display Languages"),command:_})}}).catch(n=>{console.error(`Available locales errored!
|
|
2
2
|
${n}`)})}},Gt=[T,$,F];export{Gt as default};
|