@datalayer/agent-runtimes 1.5.18 → 1.5.19

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.
Files changed (272) hide show
  1. package/dist-embed/chunks/{AgentDetails-CMBy5o1q.js → AgentDetails-jDVTZOUO.js} +1 -1
  2. package/dist-embed/chunks/{AgentDetailsDialog-D2vH2Nrd.js → AgentDetailsDialog-BLC4yhCo.js} +1 -1
  3. package/dist-embed/chunks/{AgentInspector-Bd0oHNAX.js → AgentInspector-DBI8tAJ0.js} +1 -1
  4. package/dist-embed/chunks/{AgentInspectorDialog-BJUgBPAE.js → AgentInspectorDialog-xW2BjxJT.js} +1 -1
  5. package/dist-embed/chunks/{CellSidebarExtension-CYOVwk1t.js → CellSidebarExtension-D4_DkfUV.js} +1 -1
  6. package/dist-embed/chunks/ChatView-CpY0werd.js +32 -0
  7. package/dist-embed/chunks/{ContextPie-B9mAKJc2.js → ContextPie-Cebjx8jR.js} +1 -1
  8. package/dist-embed/chunks/{DeckComponent-CbmzVWcF.js → DeckComponent-B0pIJhTp.js} +2 -2
  9. package/dist-embed/chunks/{DocumentView-BqsGfNys.js → DocumentView-CS_ILd4O.js} +1 -1
  10. package/dist-embed/chunks/{EphemeralDocument-DLaNvwm_.js → EphemeralDocument-CwauqhmY.js} +1 -1
  11. package/dist-embed/chunks/{EphemeralNotebook-jnqAJFPI.js → EphemeralNotebook-BgC-YEtX.js} +1 -1
  12. package/dist-embed/chunks/{ExcalidrawComponent-Cb8yeXqu.js → ExcalidrawComponent-jOeuq53P.js} +1 -1
  13. package/dist-embed/chunks/{ExcalidrawModal-DaPSGYek.js → ExcalidrawModal-RsJGL2o8.js} +1 -1
  14. package/dist-embed/chunks/{JupyterLexicalExtension-BQINjIFV.js → JupyterLexicalExtension-BgcLmrzO.js} +9 -9
  15. package/dist-embed/chunks/{KernelVariables-CGQkS5EX.js → KernelVariables-cBMhcW1H.js} +1 -1
  16. package/dist-embed/chunks/{LexicalToolRegistry-BJ6mpMWn.js → LexicalToolRegistry-0QBhZnFO.js} +1 -1
  17. package/dist-embed/chunks/{NotebookToolSurfaces-DiPifvaW.js → NotebookToolSurfaces-D1GnK3rj.js} +1 -1
  18. package/dist-embed/chunks/{NotebookView-IX0wNuX8.js → NotebookView-CC5s4q0A.js} +1 -1
  19. package/dist-embed/chunks/{Output-B9XAhyoF.js → Output-B4b0TC6x.js} +1 -1
  20. package/dist-embed/chunks/{SandboxDetailsDialog-COCpmo8m.js → SandboxDetailsDialog-DhH0cSRN.js} +1 -1
  21. package/dist-embed/chunks/{SchemaForm-WIwdKnrk.js → SchemaForm-CPiM13ub.js} +1 -1
  22. package/dist-embed/chunks/{WidgetVariableView-BoGROi-A.js → WidgetVariableView-CUqRH-Wi.js} +1 -1
  23. package/dist-embed/chunks/{YouTubePlugin-BEQBWMwx.js → YouTubePlugin-CGKNamMP.js} +1 -1
  24. package/dist-embed/chunks/{abnfDiagram-VCTEODGH-D3_T0Lze.js → abnfDiagram-VCTEODGH-DRoYJDMb.js} +1 -1
  25. package/dist-embed/chunks/{abnfDiagram-VCTEODGH-CG18Hf18.js → abnfDiagram-VCTEODGH-DqGkvvLU.js} +1 -1
  26. package/dist-embed/chunks/{ar-SA-G6X2FPQ2-BDWXsTdt.js → ar-SA-G6X2FPQ2-BdYlCgqh.js} +1 -1
  27. package/dist-embed/chunks/{architectureDiagram-5GKGNRK7-B1QPAYO8.js → architectureDiagram-5GKGNRK7-B4WL7dDA.js} +1 -1
  28. package/dist-embed/chunks/{architectureDiagram-5GKGNRK7-B5kSsKje.js → architectureDiagram-5GKGNRK7-BfuR2k3K.js} +1 -1
  29. package/dist-embed/chunks/{az-AZ-76LH7QW2-BGchGiT7.js → az-AZ-76LH7QW2-BAJSVApS.js} +1 -1
  30. package/dist-embed/chunks/{bg-BG-XCXSNQG7-vCII6Zuq.js → bg-BG-XCXSNQG7-CutR4A8o.js} +1 -1
  31. package/dist-embed/chunks/{blockDiagram-868be97b-BvM0ptp7.js → blockDiagram-868be97b-gX0yvAGO.js} +1 -1
  32. package/dist-embed/chunks/{blockDiagram-I7D4REHJ-ClwWG8yx.js → blockDiagram-I7D4REHJ-BzMuNIFV.js} +1 -1
  33. package/dist-embed/chunks/{blockDiagram-I7D4REHJ-B8BmxOM4.js → blockDiagram-I7D4REHJ-CI05Fmnw.js} +1 -1
  34. package/dist-embed/chunks/{bn-BD-2XOGV67Q-Beu9yUTu.js → bn-BD-2XOGV67Q-CjPnVerm.js} +1 -1
  35. package/dist-embed/chunks/{c4Diagram-3f4bdde3-S92W2yOx.js → c4Diagram-3f4bdde3-CWKvySqQ.js} +1 -1
  36. package/dist-embed/chunks/{c4Diagram-7LVT6UL2-CNWW_-u7.js → c4Diagram-7LVT6UL2-BVZdygZu.js} +1 -1
  37. package/dist-embed/chunks/{c4Diagram-7LVT6UL2-nSCKKLuX.js → c4Diagram-7LVT6UL2-BfaHhF7Y.js} +1 -1
  38. package/dist-embed/chunks/{ca-ES-6MX7JW3Y-CnEo6YQi.js → ca-ES-6MX7JW3Y-D0HWiwHb.js} +1 -1
  39. package/dist-embed/chunks/{celltoolbartracker-CO6V5FhH.js → celltoolbartracker-DB7Qnu48.js} +1 -1
  40. package/dist-embed/chunks/{chunk-2Q5K7J3B--r8j4N5L.js → chunk-2Q5K7J3B-Ck5gIh4V.js} +1 -1
  41. package/dist-embed/chunks/{chunk-2Q5K7J3B-D3fTIaw3.js → chunk-2Q5K7J3B-DEZpvDtA.js} +1 -1
  42. package/dist-embed/chunks/{chunk-5VM5RSS4-D76mXyWz.js → chunk-5VM5RSS4-BFWTcAj1.js} +1 -1
  43. package/dist-embed/chunks/{chunk-5VM5RSS4-QmrgOATO.js → chunk-5VM5RSS4-DVfmoMLA.js} +1 -1
  44. package/dist-embed/chunks/{chunk-F27PBJKO-DvNrStTM.js → chunk-F27PBJKO-BjmQwwGl.js} +1 -1
  45. package/dist-embed/chunks/{chunk-F27PBJKO-DdSgBnK0.js → chunk-F27PBJKO-wR8Z4fpP.js} +1 -1
  46. package/dist-embed/chunks/{chunk-IMKFNOWR-DpxND1Ct.js → chunk-IMKFNOWR-DnYdav9f.js} +1 -1
  47. package/dist-embed/chunks/{chunk-IMKFNOWR-DwqmSZhU.js → chunk-IMKFNOWR-Dzk9sHxf.js} +1 -1
  48. package/dist-embed/chunks/{chunk-JWPE2WC7-i7V3vMtZ.js → chunk-JWPE2WC7-Ble97p_W.js} +1 -1
  49. package/dist-embed/chunks/{chunk-JWPE2WC7-jla8jvq5.js → chunk-JWPE2WC7-DyqhVk-0.js} +1 -1
  50. package/dist-embed/chunks/{chunk-POPQ4Y6H-BGCugXU7.js → chunk-POPQ4Y6H-CQpYIqjb.js} +1 -1
  51. package/dist-embed/chunks/{chunk-POPQ4Y6H-ofrenTaa.js → chunk-POPQ4Y6H-CtT0-VOM.js} +1 -1
  52. package/dist-embed/chunks/{chunk-SVP7TREG-BIxxVjkU.js → chunk-SVP7TREG-BTtpQsSJ.js} +1 -1
  53. package/dist-embed/chunks/{chunk-SVP7TREG-2Q2uQyQk.js → chunk-SVP7TREG-CwdiQONE.js} +1 -1
  54. package/dist-embed/chunks/{chunk-TICWLB2K-BqA5q52L.js → chunk-TICWLB2K-BfGhImQo.js} +1 -1
  55. package/dist-embed/chunks/{chunk-TICWLB2K-LNiCmYq5.js → chunk-TICWLB2K-D3UY4Hgl.js} +1 -1
  56. package/dist-embed/chunks/{chunk-XXDRQBXY-CqtfA3WC.js → chunk-XXDRQBXY-BaxFY2Jg.js} +1 -1
  57. package/dist-embed/chunks/{chunk-XXDRQBXY-CNMg_gvd.js → chunk-XXDRQBXY-a1EY5SM8.js} +1 -1
  58. package/dist-embed/chunks/{classDiagram-ZZMXUADV-D6z_X195.js → classDiagram-ZZMXUADV-C0eJXn7r.js} +1 -1
  59. package/dist-embed/chunks/{classDiagram-ZZMXUADV-Co0jT9i-.js → classDiagram-ZZMXUADV-Cop7Dp41.js} +1 -1
  60. package/dist-embed/chunks/{classDiagram-f62afe4f-lN62p17q.js → classDiagram-f62afe4f-BGkVvslN.js} +1 -1
  61. package/dist-embed/chunks/{classDiagram-v2-604399ef-B_QJ6H8h.js → classDiagram-v2-604399ef-CPwahFkc.js} +1 -1
  62. package/dist-embed/chunks/{classDiagram-v2-VYDZK3BY-D6z_X195.js → classDiagram-v2-VYDZK3BY-C0eJXn7r.js} +1 -1
  63. package/dist-embed/chunks/{classDiagram-v2-VYDZK3BY-Co0jT9i-.js → classDiagram-v2-VYDZK3BY-Cop7Dp41.js} +1 -1
  64. package/dist-embed/chunks/{code-block-IT6T5CEO-BA38Km-f.js → code-block-IT6T5CEO-DEZxRmcq.js} +1 -1
  65. package/dist-embed/chunks/{component-Chor_J7e.js → component-B8gGyr50.js} +1 -1
  66. package/dist-embed/chunks/{cose-bilkent-JH36ORCC-B5H1cwBa.js → cose-bilkent-JH36ORCC-CQ3UHpys.js} +1 -1
  67. package/dist-embed/chunks/{cose-bilkent-JH36ORCC-C3cTgEcU.js → cose-bilkent-JH36ORCC-whW3Ickm.js} +1 -1
  68. package/dist-embed/chunks/{createText-aed3d8b3-BtgHeyNs.js → createText-aed3d8b3-BdWXGDj2.js} +1 -1
  69. package/dist-embed/chunks/{cs-CZ-2BRQDIVT-ClBKH9_y.js → cs-CZ-2BRQDIVT-DHo-9UK-.js} +1 -1
  70. package/dist-embed/chunks/{cynefinDiagram-5FMLGOSQ-sdsAonZm.js → cynefinDiagram-5FMLGOSQ-C1dAzTZy.js} +1 -1
  71. package/dist-embed/chunks/{cynefinDiagram-5FMLGOSQ-DPQLh9z7.js → cynefinDiagram-5FMLGOSQ-DKngj3tn.js} +1 -1
  72. package/dist-embed/chunks/{da-DK-5WZEPLOC-BqFDUAty.js → da-DK-5WZEPLOC-BLw7PbxL.js} +1 -1
  73. package/dist-embed/chunks/{dagre-GXQ25YYZ-DHF-9-7e.js → dagre-GXQ25YYZ-Bom0Ow10.js} +1 -1
  74. package/dist-embed/chunks/{dagre-GXQ25YYZ-Bwf_WjLM.js → dagre-GXQ25YYZ-BuHKUFJc.js} +1 -1
  75. package/dist-embed/chunks/{de-DE-XR44H4JA-6dsEQn7Z.js → de-DE-XR44H4JA-DqCVLDRk.js} +1 -1
  76. package/dist-embed/chunks/{diagram-S7CK7UJ4-DEqGRBMT.js → diagram-S7CK7UJ4-4zEkI5rV.js} +1 -1
  77. package/dist-embed/chunks/{diagram-S7CK7UJ4-C-N7Ei3I.js → diagram-S7CK7UJ4-H6Kef58R.js} +1 -1
  78. package/dist-embed/chunks/{diagram-UQ7AKVKN-DACyxI-v.js → diagram-UQ7AKVKN-DVAC1okH.js} +1 -1
  79. package/dist-embed/chunks/{diagram-UQ7AKVKN-CvSBE0YU.js → diagram-UQ7AKVKN-DeXqnBhe.js} +1 -1
  80. package/dist-embed/chunks/{diagram-VSXAHHWV-DFze2xro.js → diagram-VSXAHHWV-BYu3Niho.js} +1 -1
  81. package/dist-embed/chunks/{diagram-VSXAHHWV-DOb69VtE.js → diagram-VSXAHHWV-DJvcLGGT.js} +1 -1
  82. package/dist-embed/chunks/{diagram-VX7I27RA-CVTSdYyZ.js → diagram-VX7I27RA-BeOTI_JX.js} +1 -1
  83. package/dist-embed/chunks/{diagram-VX7I27RA-8EKYM_Sx.js → diagram-VX7I27RA-Cd39Txmj.js} +1 -1
  84. package/dist-embed/chunks/{diagram-Z3DM3KII-B-689FF6.js → diagram-Z3DM3KII-Ccg8IzPs.js} +1 -1
  85. package/dist-embed/chunks/{diagram-Z3DM3KII-DyiBmBFy.js → diagram-Z3DM3KII-DV4M-vr2.js} +1 -1
  86. package/dist-embed/chunks/{ebnfDiagram-PWID7BFC-DcKvqn_h.js → ebnfDiagram-PWID7BFC-Ci7iqdKR.js} +1 -1
  87. package/dist-embed/chunks/{ebnfDiagram-PWID7BFC-gj8dgCWR.js → ebnfDiagram-PWID7BFC-JrHbupeR.js} +1 -1
  88. package/dist-embed/chunks/{edges-b2856ca0-BqGGNnb4.js → edges-b2856ca0-D0Ve_cWg.js} +1 -1
  89. package/dist-embed/chunks/{el-GR-BZB4AONW-DOMW2ttY.js → el-GR-BZB4AONW-DWIe_es3.js} +1 -1
  90. package/dist-embed/chunks/{erDiagram-5d81789a-Bf1Ik49K.js → erDiagram-5d81789a-_wYWwZkR.js} +1 -1
  91. package/dist-embed/chunks/{erDiagram-RLTQ6QDP-B0PyZB_3.js → erDiagram-RLTQ6QDP-CgP-DSWO.js} +1 -1
  92. package/dist-embed/chunks/{erDiagram-RLTQ6QDP-GSu-_IUJ.js → erDiagram-RLTQ6QDP-D2UUMLBd.js} +1 -1
  93. package/dist-embed/chunks/{es-ES-U4NZUMDT-DeyWqjw1.js → es-ES-U4NZUMDT-C4nVLuzt.js} +1 -1
  94. package/dist-embed/chunks/{eu-ES-A7QVB2H4-CUGbZ0Pv.js → eu-ES-A7QVB2H4-DNtU9lgI.js} +1 -1
  95. package/dist-embed/chunks/{fa-IR-HGAKTJCU-Br8UEVO1.js → fa-IR-HGAKTJCU-C9d2dVkk.js} +1 -1
  96. package/dist-embed/chunks/{fi-FI-Z5N7JZ37-BSHjwo8G.js → fi-FI-Z5N7JZ37-BtMDQ3ec.js} +1 -1
  97. package/dist-embed/chunks/{flowDb-185abca5-U9PwWSO4.js → flowDb-185abca5-w4ZLOMwa.js} +1 -1
  98. package/dist-embed/chunks/{flowDiagram-1629c991-BecgzQgp.js → flowDiagram-1629c991-CrRVLCnt.js} +1 -1
  99. package/dist-embed/chunks/{flowDiagram-HODETNUW-2vih3kWM.js → flowDiagram-HODETNUW-BJpTxK5i.js} +1 -1
  100. package/dist-embed/chunks/{flowDiagram-HODETNUW-tcAkcGh4.js → flowDiagram-HODETNUW-DtWilAWc.js} +1 -1
  101. package/dist-embed/chunks/{flowDiagram-v2-1d953310-Bdmc9G3m.js → flowDiagram-v2-1d953310-tzv2aPj8.js} +1 -1
  102. package/dist-embed/chunks/{flowchart-elk-definition-6df44142-oWOWsVNc.js → flowchart-elk-definition-6df44142-C8Gjf4Dy.js} +1 -1
  103. package/dist-embed/chunks/{fr-FR-RHASNOE6-BukqZYPz.js → fr-FR-RHASNOE6-D1fqP_vI.js} +1 -1
  104. package/dist-embed/chunks/{ganttDiagram-3b0b3873-B7lmD9r9.js → ganttDiagram-3b0b3873-WkbnZ3Zy.js} +1 -1
  105. package/dist-embed/chunks/{ganttDiagram-EL5Y4UJY-D0E7se_Z.js → ganttDiagram-EL5Y4UJY-B1hq5rq9.js} +1 -1
  106. package/dist-embed/chunks/{ganttDiagram-EL5Y4UJY-DDbqMevq.js → ganttDiagram-EL5Y4UJY-DiSce27A.js} +1 -1
  107. package/dist-embed/chunks/{gitGraphDiagram-WWUBYQGX-DK3EJl5z.js → gitGraphDiagram-WWUBYQGX-BoqOxrkd.js} +1 -1
  108. package/dist-embed/chunks/{gitGraphDiagram-WWUBYQGX-DnVwXJWu.js → gitGraphDiagram-WWUBYQGX-Dfl4EOB8.js} +1 -1
  109. package/dist-embed/chunks/{gitGraphDiagram-f01e8bc2-B9vpLy6R.js → gitGraphDiagram-f01e8bc2-DxsYooak.js} +1 -1
  110. package/dist-embed/chunks/{gl-ES-HMX3MZ6V-BxVOJiaI.js → gl-ES-HMX3MZ6V-BkLcCFrx.js} +1 -1
  111. package/dist-embed/chunks/{he-IL-6SHJWFNN-Dv2VRxlJ.js → he-IL-6SHJWFNN-By48peS7.js} +1 -1
  112. package/dist-embed/chunks/{hi-IN-IWLTKZ5I-CFo5RUMz.js → hi-IN-IWLTKZ5I-386dm1ZK.js} +1 -1
  113. package/dist-embed/chunks/{hu-HU-A5ZG7DT2-ul3dS3un.js → hu-HU-A5ZG7DT2-B2wmIkDO.js} +1 -1
  114. package/dist-embed/chunks/{id-ID-SAP4L64H-ItVb-zwI.js → id-ID-SAP4L64H-Bc22Fq5f.js} +1 -1
  115. package/dist-embed/chunks/{index-9bae90f3-D9849sgo.js → index-9bae90f3-0dEQW6X4.js} +1 -1
  116. package/dist-embed/chunks/{index-oGqh9y23.js → index-B2eXWNhX.js} +1 -1
  117. package/dist-embed/chunks/{index-DSvebR7d.js → index-B5UP_2-0.js} +1 -1
  118. package/dist-embed/chunks/{index-YlGTgJvL.js → index-BEuw5cVO.js} +1 -1
  119. package/dist-embed/chunks/{index-CsgaCZaW.js → index-BMlDZi3F.js} +1 -1
  120. package/dist-embed/chunks/{index-BNFRRs9d.js → index-BW1nTf3r.js} +1 -1
  121. package/dist-embed/chunks/{index-xiH3WzLm.js → index-Ba1_ej_S.js} +1 -1
  122. package/dist-embed/chunks/{index-CjM49jS0.js → index-Bf3G_UXi.js} +1 -1
  123. package/dist-embed/chunks/{index-BOYhJnrD.js → index-BlBHM8M3.js} +1 -1
  124. package/dist-embed/chunks/{index-B5zrJYwn.js → index-Bw3Ijhff.js} +1 -1
  125. package/dist-embed/chunks/{index-BT4vYFeY.js → index-C5TEB73S.js} +1 -1
  126. package/dist-embed/chunks/{index-BkKEXqQS.js → index-CD5d-0QJ.js} +1 -1
  127. package/dist-embed/chunks/{index-D2LvuQlP.js → index-CTSvc7kN.js} +1 -1
  128. package/dist-embed/chunks/{index-B-L6ocEV.js → index-CaBZ6zn5.js} +1 -1
  129. package/dist-embed/chunks/{index-DSF21-29.js → index-Ce0tqSYG.js} +1 -1
  130. package/dist-embed/chunks/{index-BfUXEHI0.js → index-CeDsYtrC.js} +1 -1
  131. package/dist-embed/chunks/{index-Cp2aJ2ZR.js → index-Ckzgd1GV.js} +1 -1
  132. package/dist-embed/chunks/{index-jh9S19of.js → index-Crj6AD3D.js} +1 -1
  133. package/dist-embed/chunks/{index-bm8APcDZ.js → index-Cs7fNnHI.js} +4 -4
  134. package/dist-embed/chunks/{index-DoBEQ07P.js → index-D2V9YBSL.js} +2 -2
  135. package/dist-embed/chunks/{index-B764si9c.js → index-D4xDU_cs.js} +1 -1
  136. package/dist-embed/chunks/{index-O2jaI8TY.js → index-DB3vaYGl.js} +1 -1
  137. package/dist-embed/chunks/{index-B0wMyD8Y.js → index-DGpvT0SW.js} +1 -1
  138. package/dist-embed/chunks/{index-CRpZyQIR.js → index-DIGoR1Tz.js} +4 -4
  139. package/dist-embed/chunks/{index-CZdWsyNw.js → index-DTF28A2w.js} +1 -1
  140. package/dist-embed/chunks/{index-7FNjj0f2.js → index-DdBEMKdr.js} +1 -1
  141. package/dist-embed/chunks/{index-BrD9dtoV.js → index-DiBjbJad.js} +1 -1
  142. package/dist-embed/chunks/{index-BM6oRiO1.js → index-DkAo6nTX.js} +1 -1
  143. package/dist-embed/chunks/{index-TEcp7-f6.js → index-DmlogZBL.js} +2 -2
  144. package/dist-embed/chunks/{index-Cql9gOsL.js → index-DmzlqRz3.js} +1 -1
  145. package/dist-embed/chunks/{index-CsxlyZef.js → index-DodMg2uF.js} +1 -1
  146. package/dist-embed/chunks/{index-BiTIdbkn.js → index-DwKNt0FO.js} +1 -1
  147. package/dist-embed/chunks/{index-BqMoyzEk.js → index-I5uUezOA.js} +1 -1
  148. package/dist-embed/chunks/{index-DQQXY-7d.js → index-TzvZ9g2T.js} +2 -2
  149. package/dist-embed/chunks/{index-QZ3sHHT3.js → index-wWGi6oM9.js} +10 -10
  150. package/dist-embed/chunks/{index.esm-CkSite-X.js → index.esm-DFA6Rod9.js} +1 -1
  151. package/dist-embed/chunks/{index.esm-B7KoTOBb.js → index.esm-De-JJWit.js} +1 -1
  152. package/dist-embed/chunks/{infoDiagram-27XIBGKW-DDO50Ria.js → infoDiagram-27XIBGKW-B6fdV0Xc.js} +1 -1
  153. package/dist-embed/chunks/{infoDiagram-27XIBGKW-O3q53Qe2.js → infoDiagram-27XIBGKW-C6J796kn.js} +1 -1
  154. package/dist-embed/chunks/{infoDiagram-a29d40f1-jOvOHUyu.js → infoDiagram-a29d40f1-BjFaAu0-.js} +1 -1
  155. package/dist-embed/chunks/isEqual-BxgGIFfN.js +1 -0
  156. package/dist-embed/chunks/{ishikawaDiagram-5VMMS53U-DuiWhpVW.js → ishikawaDiagram-5VMMS53U-CZVbbiJE.js} +1 -1
  157. package/dist-embed/chunks/{ishikawaDiagram-5VMMS53U-IzmbYzxv.js → ishikawaDiagram-5VMMS53U-sjolONOj.js} +1 -1
  158. package/dist-embed/chunks/{it-IT-JPQ66NNP-BuCUBzia.js → it-IT-JPQ66NNP-Cyadykvb.js} +1 -1
  159. package/dist-embed/chunks/{ja-JP-DBVTYXUO-BhtQz4sy.js → ja-JP-DBVTYXUO-DYq7TJf3.js} +1 -1
  160. package/dist-embed/chunks/{journeyDiagram-3NMN7TZE-sO-Cfp65.js → journeyDiagram-3NMN7TZE-BJ-6GyhB.js} +1 -1
  161. package/dist-embed/chunks/{journeyDiagram-3NMN7TZE-DGLcsVfC.js → journeyDiagram-3NMN7TZE-CNoB-K6t.js} +1 -1
  162. package/dist-embed/chunks/{journeyDiagram-95396277-CA4bGq0G.js → journeyDiagram-95396277-E32TRIvj.js} +1 -1
  163. package/dist-embed/chunks/{kaa-6HZHGXH3-B_TI8Aa0.js → kaa-6HZHGXH3-qdjcAwd_.js} +1 -1
  164. package/dist-embed/chunks/{kab-KAB-ZGHBKWFO-BsSg_l-j.js → kab-KAB-ZGHBKWFO-DHVNVHkT.js} +1 -1
  165. package/dist-embed/chunks/{kanban-definition-UXKFOSKX-CDtLkjnU.js → kanban-definition-UXKFOSKX-2elwU70n.js} +1 -1
  166. package/dist-embed/chunks/{kanban-definition-UXKFOSKX-0wjvwDqk.js → kanban-definition-UXKFOSKX-ZErtzIYn.js} +1 -1
  167. package/dist-embed/chunks/{kk-KZ-P5N5QNE5-B7XK5OQq.js → kk-KZ-P5N5QNE5-DtQCYXHl.js} +1 -1
  168. package/dist-embed/chunks/{km-KH-HSX4SM5Z-Cm2LA9F8.js → km-KH-HSX4SM5Z-B_GLLzdn.js} +1 -1
  169. package/dist-embed/chunks/{ko-KR-MTYHY66A-CL5s99y5.js → ko-KR-MTYHY66A-B8OMm-h5.js} +1 -1
  170. package/dist-embed/chunks/{ku-TR-6OUDTVRD-CiijvKHq.js → ku-TR-6OUDTVRD-_gB3JeJW.js} +1 -1
  171. package/dist-embed/chunks/{layout-CzrlbzeK.js → layout-DV2JdCx0.js} +1 -1
  172. package/dist-embed/chunks/{layout-BBbB54WC.js → layout-Di1pO_ld.js} +1 -1
  173. package/dist-embed/chunks/{lexicalHooks-DQxNZEiJ.js → lexicalHooks-DuWTjfdx.js} +1 -1
  174. package/dist-embed/chunks/{lt-LT-XHIRWOB4-CcA_Z5jR.js → lt-LT-XHIRWOB4-judKfepg.js} +1 -1
  175. package/dist-embed/chunks/{lv-LV-5QDEKY6T-CAQS9wGm.js → lv-LV-5QDEKY6T-C-9ZhYTf.js} +1 -1
  176. package/dist-embed/chunks/{mermaid.core-DfgoT1cz.js → mermaid.core-CH9h-G6m.js} +3 -3
  177. package/dist-embed/chunks/{mermaid.core-s-D09gpV.js → mermaid.core-DmeLLEp4.js} +5 -5
  178. package/dist-embed/chunks/{mindmap-definition-YA3MSWOX-BCiSPRJk.js → mindmap-definition-YA3MSWOX-CH32-IRq.js} +1 -1
  179. package/dist-embed/chunks/{mindmap-definition-YA3MSWOX-B6_K5ZvV.js → mindmap-definition-YA3MSWOX-DQTfxlEc.js} +1 -1
  180. package/dist-embed/chunks/{mindmap-definition-e4c1d938-D7gmABiC.js → mindmap-definition-e4c1d938-BgjFyiku.js} +1 -1
  181. package/dist-embed/chunks/{mr-IN-CRQNXWMA-DMAAvsDA.js → mr-IN-CRQNXWMA-B7W8v3Ft.js} +1 -1
  182. package/dist-embed/chunks/{my-MM-5M5IBNSE-t2TKqrjW.js → my-MM-5M5IBNSE-e3nyuoTM.js} +1 -1
  183. package/dist-embed/chunks/{nb-NO-T6EIAALU-Bi3ZI-HQ.js → nb-NO-T6EIAALU-Dq2hr8f4.js} +1 -1
  184. package/dist-embed/chunks/{nl-NL-IS3SIHDZ-B8UdlW1K.js → nl-NL-IS3SIHDZ-BPpJK4bx.js} +1 -1
  185. package/dist-embed/chunks/{nn-NO-6E72VCQL-Bt87hI27.js → nn-NO-6E72VCQL-TlFEoum0.js} +1 -1
  186. package/dist-embed/chunks/{oc-FR-POXYY2M6-009NL0Pk.js → oc-FR-POXYY2M6-CnSPPsW-.js} +1 -1
  187. package/dist-embed/chunks/{pa-IN-N4M65BXN-BfUtS2yt.js → pa-IN-N4M65BXN-DOLWrPsW.js} +1 -1
  188. package/dist-embed/chunks/{pegDiagram-XKGWAZYB-CBrnWUaX.js → pegDiagram-XKGWAZYB-n8BSl7l3.js} +1 -1
  189. package/dist-embed/chunks/{pegDiagram-XKGWAZYB-BX0ZYMng.js → pegDiagram-XKGWAZYB-oyZR3LwE.js} +1 -1
  190. package/dist-embed/chunks/{percentages-BXMCSKIN-CfzulzOv.js → percentages-BXMCSKIN-CGGUos_k.js} +5 -5
  191. package/dist-embed/chunks/{pieDiagram-E7YTZNPT-Ct8dzoLU.js → pieDiagram-E7YTZNPT-BW48oEVe.js} +1 -1
  192. package/dist-embed/chunks/{pieDiagram-E7YTZNPT-B1My5W85.js → pieDiagram-E7YTZNPT-t7G_PNXz.js} +1 -1
  193. package/dist-embed/chunks/{pieDiagram-c941bede-7DZ-Bl8U.js → pieDiagram-c941bede-Ci9AzDtZ.js} +1 -1
  194. package/dist-embed/chunks/{pl-PL-T2D74RX3-DbtOl9_x.js → pl-PL-T2D74RX3-hlaxloT-.js} +1 -1
  195. package/dist-embed/chunks/{pt-BR-5N22H2LF-B1pjR1_T.js → pt-BR-5N22H2LF-Zzt5dIRi.js} +1 -1
  196. package/dist-embed/chunks/{pt-PT-UZXXM6DQ-takC7TRa.js → pt-PT-UZXXM6DQ-DclavEOo.js} +1 -1
  197. package/dist-embed/chunks/{quadrantDiagram-AXDQQJYC-B1mlT7fN.js → quadrantDiagram-AXDQQJYC-BLT8OFPd.js} +1 -1
  198. package/dist-embed/chunks/{quadrantDiagram-AXDQQJYC-B7p4unpj.js → quadrantDiagram-AXDQQJYC-CqCRrPOH.js} +1 -1
  199. package/dist-embed/chunks/{quadrantDiagram-cf8b8fe0-CTMh_Ad5.js → quadrantDiagram-cf8b8fe0-CCwvL59h.js} +1 -1
  200. package/dist-embed/chunks/{railroadDiagram-O6MQD6OU-CJEwr5d9.js → railroadDiagram-O6MQD6OU-CArU1lc_.js} +1 -1
  201. package/dist-embed/chunks/{railroadDiagram-O6MQD6OU-xr8bPIl7.js → railroadDiagram-O6MQD6OU-h7bwNVOI.js} +1 -1
  202. package/dist-embed/chunks/{renderer-Ba0Cwb4p.js → renderer-B7ulbNbj.js} +1 -1
  203. package/dist-embed/chunks/{requirementDiagram-53bda41b-Dv1Piop_.js → requirementDiagram-53bda41b-DwpbUtUG.js} +1 -1
  204. package/dist-embed/chunks/{requirementDiagram-BXWQKSXE-Bw89vFiC.js → requirementDiagram-BXWQKSXE-DjSU8lt8.js} +1 -1
  205. package/dist-embed/chunks/{requirementDiagram-BXWQKSXE-rabT3v-j.js → requirementDiagram-BXWQKSXE-DouRs4yi.js} +1 -1
  206. package/dist-embed/chunks/{ro-RO-JPDTUUEW-DkkqyFBF.js → ro-RO-JPDTUUEW-cgDkcR_I.js} +1 -1
  207. package/dist-embed/chunks/{ru-RU-B4JR7IUQ-CikD-ITp.js → ru-RU-B4JR7IUQ-9-oBtsiZ.js} +1 -1
  208. package/dist-embed/chunks/{sankeyDiagram-P5KCCOFB-D--cx9I2.js → sankeyDiagram-P5KCCOFB-CBWfRlJB.js} +1 -1
  209. package/dist-embed/chunks/{sankeyDiagram-P5KCCOFB-5SpI76uK.js → sankeyDiagram-P5KCCOFB-DjzmT1hm.js} +1 -1
  210. package/dist-embed/chunks/{sankeyDiagram-c3ef121a-DbhtSWkB.js → sankeyDiagram-c3ef121a-9XuKuXG6.js} +1 -1
  211. package/dist-embed/chunks/{sequenceDiagram-82a5b84f-DpxBSKAk.js → sequenceDiagram-82a5b84f-BG9YQ6K-.js} +1 -1
  212. package/dist-embed/chunks/{sequenceDiagram-WJ2MYXX4-D_wK-z7a.js → sequenceDiagram-WJ2MYXX4-B9mfZJzJ.js} +1 -1
  213. package/dist-embed/chunks/{sequenceDiagram-WJ2MYXX4-DGNwWgf8.js → sequenceDiagram-WJ2MYXX4-CosODaLN.js} +1 -1
  214. package/dist-embed/chunks/{sessions-DQkTozai.js → sessions-D0uw83Dx.js} +1 -1
  215. package/dist-embed/chunks/{si-LK-N5RQ5JYF-BqlWRhwK.js → si-LK-N5RQ5JYF-DwwdanqB.js} +1 -1
  216. package/dist-embed/chunks/{sizeCapture-INFHLROL-4Uh8JUjf.js → sizeCapture-INFHLROL-CwVsdbq8.js} +1 -1
  217. package/dist-embed/chunks/{sizeCapture-INFHLROL-g-K-6XON.js → sizeCapture-INFHLROL-H5_9Te0l.js} +1 -1
  218. package/dist-embed/chunks/{sk-SK-C5VTKIMK-DGsmi02E.js → sk-SK-C5VTKIMK-Bx7Xeegg.js} +1 -1
  219. package/dist-embed/chunks/{sl-SI-NN7IZMDC-HFz45GOs.js → sl-SI-NN7IZMDC-BnRYm8hb.js} +1 -1
  220. package/dist-embed/chunks/{stateDiagram-43e79a5f-DxbV4jP9.js → stateDiagram-43e79a5f-DqSNbxpV.js} +1 -1
  221. package/dist-embed/chunks/{stateDiagram-D77RDMKH-D-l3u-WY.js → stateDiagram-D77RDMKH-CFvF2i-n.js} +1 -1
  222. package/dist-embed/chunks/{stateDiagram-D77RDMKH-C_wYpqah.js → stateDiagram-D77RDMKH-CM0rQJN-.js} +1 -1
  223. package/dist-embed/chunks/{stateDiagram-v2-2041ed4f-BzxzaDdI.js → stateDiagram-v2-2041ed4f-DEAOSRqx.js} +1 -1
  224. package/dist-embed/chunks/{stateDiagram-v2-MP3YSRHH-IEMNMwm0.js → stateDiagram-v2-MP3YSRHH-BNF3zl7F.js} +1 -1
  225. package/dist-embed/chunks/{stateDiagram-v2-MP3YSRHH-BGYkOvTS.js → stateDiagram-v2-MP3YSRHH-x4Ke6-d0.js} +1 -1
  226. package/dist-embed/chunks/{styles-455b33cd-C42Lyulv.js → styles-455b33cd-CGv1xv-g.js} +1 -1
  227. package/dist-embed/chunks/{styles-f932cba9-Bf6H3IMq.js → styles-f932cba9-BcvypeEH.js} +1 -1
  228. package/dist-embed/chunks/{styles-fcc2142b-OZg6fE-p.js → styles-fcc2142b-Bm-8o0Wg.js} +1 -1
  229. package/dist-embed/chunks/{subset-shared.chunk-KC0vshev.js → subset-shared.chunk-E0MJmgRL.js} +1 -1
  230. package/dist-embed/chunks/{subset-worker.chunk-CXZAV_Z5.js → subset-worker.chunk-C8uhAh2D.js} +1 -1
  231. package/dist-embed/chunks/{sv-SE-XGPEYMSR-yEdPvwHy.js → sv-SE-XGPEYMSR-CsQ6HfG0.js} +1 -1
  232. package/dist-embed/chunks/{svgDrawCommon-148a3cd9-D9MRwoYw.js → svgDrawCommon-148a3cd9-CfBqsI2Z.js} +1 -1
  233. package/dist-embed/chunks/{swimlanes-42K2YHIH-CPkom4Q8.js → swimlanes-42K2YHIH-C5u-jMMX.js} +1 -1
  234. package/dist-embed/chunks/{swimlanes-42K2YHIH-DJLFcHMt.js → swimlanes-42K2YHIH-DSy5A1Br.js} +1 -1
  235. package/dist-embed/chunks/{swimlanesDiagram-VR7AAH4N-BJOhuN-y.js → swimlanesDiagram-VR7AAH4N-DiCCWeyH.js} +1 -1
  236. package/dist-embed/chunks/{swimlanesDiagram-VR7AAH4N-BRTtY1QX.js → swimlanesDiagram-VR7AAH4N-Dz7sQXaA.js} +1 -1
  237. package/dist-embed/chunks/{ta-IN-2NMHFXQM-0i424YGX.js → ta-IN-2NMHFXQM-fGjZyqzP.js} +1 -1
  238. package/dist-embed/chunks/{th-TH-HPSO5L25-BidF5zNO.js → th-TH-HPSO5L25-mRygXByj.js} +1 -1
  239. package/dist-embed/chunks/{timeline-definition-24CTP7MA-BasSLg-_.js → timeline-definition-24CTP7MA-BbGhqNW7.js} +1 -1
  240. package/dist-embed/chunks/{timeline-definition-24CTP7MA-BfGIJi1H.js → timeline-definition-24CTP7MA-YHoSditW.js} +1 -1
  241. package/dist-embed/chunks/{timeline-definition-7545f45a-BWwgvKxJ.js → timeline-definition-7545f45a-Cgha50uP.js} +1 -1
  242. package/dist-embed/chunks/{tr-TR-DEFEU3FU-BoHR9SlC.js → tr-TR-DEFEU3FU-CSMtrw8Q.js} +1 -1
  243. package/dist-embed/chunks/{uk-UA-QMV73CPH-DfRkqqO0.js → uk-UA-QMV73CPH-CLyS0aEW.js} +1 -1
  244. package/dist-embed/chunks/{vennDiagram-4TSXK5OY-D1T__rd2.js → vennDiagram-4TSXK5OY-CP_KbGdD.js} +1 -1
  245. package/dist-embed/chunks/{vennDiagram-4TSXK5OY-DMIYCfJ-.js → vennDiagram-4TSXK5OY-DEMghTP3.js} +1 -1
  246. package/dist-embed/chunks/{vi-VN-M7AON7JQ-CvZ4wpTw.js → vi-VN-M7AON7JQ-DI90c6Zt.js} +1 -1
  247. package/dist-embed/chunks/{wardleyDiagram-VM6X3IG4-DtlNUHLy.js → wardleyDiagram-VM6X3IG4-BKwp7C6o.js} +1 -1
  248. package/dist-embed/chunks/{wardleyDiagram-VM6X3IG4-CiKuFI26.js → wardleyDiagram-VM6X3IG4-CBfVN6X9.js} +1 -1
  249. package/dist-embed/chunks/{xychartDiagram-3f383b91-DzyuxW4K.js → xychartDiagram-3f383b91-CyeoV8HA.js} +1 -1
  250. package/dist-embed/chunks/{xychartDiagram-S5SC5T6Z-p6pYRkk6.js → xychartDiagram-S5SC5T6Z-BdfPJ1NZ.js} +1 -1
  251. package/dist-embed/chunks/{xychartDiagram-S5SC5T6Z-BIeFUHrS.js → xychartDiagram-S5SC5T6Z-DOiTJUlh.js} +1 -1
  252. package/dist-embed/chunks/{zh-CN-LNUGB5OW-Cx1Azgu2.js → zh-CN-LNUGB5OW-BhtQOj8w.js} +1 -1
  253. package/dist-embed/chunks/{zh-HK-E62DVLB3-DMjy1d4Z.js → zh-HK-E62DVLB3-BwejmqFd.js} +1 -1
  254. package/dist-embed/chunks/{zh-TW-RAJ6MFWO-J-YjINmR.js → zh-TW-RAJ6MFWO-CXYEZutZ.js} +1 -1
  255. package/dist-embed/datalayer-app-main.js +67 -67
  256. package/lib/apps/plugins/chat/ChatView.js +10 -2
  257. package/lib/hooks/ownRoutes.d.ts +27 -0
  258. package/lib/hooks/ownRoutes.js +33 -0
  259. package/lib/hooks/useAgentRuntimes.d.ts +5 -0
  260. package/lib/hooks/useAgentRuntimes.js +29 -26
  261. package/lib/specs/voices.d.ts +2 -0
  262. package/lib/specs/voices.js +5 -0
  263. package/lib/voice/hearing.js +5 -3
  264. package/lib/voice/pinned.d.ts +3 -1
  265. package/lib/voice/pinned.js +17 -3
  266. package/package.json +1 -1
  267. package/scripts/codegen/generate_voices.py +3 -0
  268. package/scripts/voice/measure.py +9 -4
  269. package/scripts/voice/pin_store.py +11 -5
  270. package/scripts/voice/serve_store.py +2 -2
  271. package/dist-embed/chunks/ChatView-Bz0eyWo6.js +0 -32
  272. package/dist-embed/chunks/isEqual-CGLTk7wU.js +0 -1
@@ -1,4 +1,4 @@
1
- import{dv as EditorLanguageRegistry,dA as EditorExtensionRegistry,ak as nullTranslator,gB as CodeMirrorEditor,gz as IEditorMimeTypeService,b_ as libExports,ag as Widget,ac as Token,gL as COMPLETER_ENABLED_CLASS,dI as COMPLETER_ACTIVE_CLASS,J as Signal,gM as MessageLoop,gN as COMPLETER_LINE_BEGINNING_CLASS,gO as Message,c1 as JSONExt,ej as StringExt,gK as Sanitizer,gP as ElementExt,gQ as renderText,aW as PromiseDelegate,_ as __vitePreload,gR as Printing,gS as clientExports,r as reactExports,gT as RenderedJavaScript}from"../datalayer-app-main.js";import{H as HoverBox}from"./hoverbox-CStlKQWE.js";class CodeMirrorEditorFactory{constructor(e={}){var n,t,i;this.newInlineEditor=s=>(s.host.dataset.type="inline",this.newEditor({...s,config:{...this.inlineCodeMirrorConfig,...s.config||{}},inline:!0})),this.newDocumentEditor=s=>{var r,o;return s.host.dataset.type="document",this.newEditor({...s,config:{...this.documentCodeMirrorConfig,...(r=s.config)!==null&&r!==void 0?r:{}},inline:!1,extensions:(o=s.extensions)!==null&&o!==void 0?o:[]})},this.languages=(n=e.languages)!==null&&n!==void 0?n:new EditorLanguageRegistry,this.extensions=(t=e.extensions)!==null&&t!==void 0?t:new EditorExtensionRegistry,this.translator=(i=e.translator)!==null&&i!==void 0?i:nullTranslator,this.inlineCodeMirrorConfig={searchWithCM:!0},this.documentCodeMirrorConfig={lineNumbers:!0,scrollPastEnd:!0}}newEditor(e){return new CodeMirrorEditor({extensionsRegistry:this.extensions,languages:this.languages,translator:this.translator,...e})}}class CodeMirrorMimeTypeService{constructor(e){this.languages=e}getMimeTypeByLanguage(e){var n;const t=e.file_extension||"",i=this.languages.findBest(e.codemirror_mode||{mimetype:e.mimetype,name:e.name,ext:[t.split(".").slice(-1)[0]]});return i?typeof i.mime=="string"?i.mime:(n=i.mime[0])!==null&&n!==void 0?n:IEditorMimeTypeService.defaultMimeType:IEditorMimeTypeService.defaultMimeType}getMimeTypeByFilePath(e){var n;const t=libExports.PathExt.extname(e);if(t===".ipy")return"text/x-python";if(t===".md")return"text/x-ipythongfm";const i=this.languages.findByFileName(e);return i?typeof i.mime=="string"?i.mime:(n=i.mime[0])!==null&&n!==void 0?n:IEditorMimeTypeService.defaultMimeType:IEditorMimeTypeService.defaultMimeType}}const WIDGET_MIMETYPE="application/vnd.jupyter.widget-view+json";class WidgetRenderer extends Widget{constructor(e,n){super(),this.mimeType=e.mimeType,this._manager=n}async renderModel(e){const n=e.data[this.mimeType];if(!this._manager.has_model(n.model_id)){this.node.textContent="Error creating widget: could not find model",this.addClass("jupyter-widgets");return}try{const t=await this._manager.get_model(n.model_id),i=await this._manager.create_view(t);Widget.attach(i.luminoWidget,this.node)}catch(t){console.log("Error displaying widget"),console.log(t),this.node.textContent="Error displaying widget",this.addClass("jupyter-widgets")}}mimeType;_manager}var CompletionTriggerKind;(function(a){a[a.Invoked=1]="Invoked",a[a.TriggerCharacter=2]="TriggerCharacter",a[a.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions"})(CompletionTriggerKind||(CompletionTriggerKind={}));var InlineCompletionTriggerKind;(function(a){a[a.Invoke=0]="Invoke",a[a.Automatic=1]="Automatic"})(InlineCompletionTriggerKind||(InlineCompletionTriggerKind={}));const IInlineCompleterFactory=new Token("@jupyterlab/completer:IInlineCompleterFactory","A factory of inline completer widgets."),ICompletionProviderManager=new Token("@jupyterlab/completer:ICompletionProviderManager","A service for the completion providers management.");class CompletionHandler{constructor(e){this._fetchingInline=0,this._editor=null,this._enabled=!1,this._isDisposed=!1,this._autoCompletion=!1,this._continuousInline=!0,this._tabCompleterActive=!1,this.completer=e.completer,this.inlineCompleter=e.inlineCompleter,this.completer.selected.connect(this.onCompletionSelected,this),this.completer.visibilityChanged.connect(this.onVisibilityChanged,this),this._reconciliator=e.reconciliator}set reconciliator(e){this._reconciliator=e}get editor(){return this._editor}set editor(e){if(e===this._editor)return;let n=this._editor;if(n&&!n.isDisposed){const t=n.model;n.host.classList.remove(COMPLETER_ENABLED_CLASS),n.host.classList.remove(COMPLETER_ACTIVE_CLASS),t.selections.changed.disconnect(this.onSelectionsChanged,this),t.sharedModel.changed.disconnect(this._onSharedModelChanged,this)}if(this.completer.reset(),this.completer.editor=e,n=this._editor=e,n){const t=n.model;this._enabled=!1,t.selections.changed.connect(this.onSelectionsChanged,this),t.sharedModel.changed.connect(this._onSharedModelChanged,this),this.onSelectionsChanged(),this.inlineCompleter&&(this.inlineCompleter.editor=n)}}get isDisposed(){return this._isDisposed}set autoCompletion(e){this._autoCompletion=e}get autoCompletion(){return this._autoCompletion}dispose(){this.isDisposed||(this._isDisposed=!0,Signal.clearData(this))}invokeInline(){const e=this._editor;e&&this._makeInlineRequest(e.getCursorPosition(),InlineCompletionTriggerKind.Invoke).catch(n=>{console.warn("Inline invoke request bailed",n)})}invoke(){MessageLoop.sendMessage(this,CompletionHandler.Msg.InvokeRequest)}processMessage(e){e.type===CompletionHandler.Msg.InvokeRequest.type&&this.onInvokeRequest(e)}getState(e,n){return{text:e.model.sharedModel.getSource(),line:n.line,column:n.column}}onCompletionSelected(e,n){const t=e.model,i=this._editor;if(!i||!t)return;const s=t.createPatch(n);if(!s)return;const{start:r,end:o,value:l}=s,c=i.getOffsetAt(i.getCursorPosition()),h={changes:{from:r,to:o,insert:l}};c<=o&&c>=r&&(h.selection={anchor:r+l.length}),i.editor.dispatch(h)}onInvokeRequest(e){if(!this.completer.model||this.completer.model.original)return;const n=this._editor;n&&this._makeRequest(n.getCursorPosition(),CompletionTriggerKind.Invoked).catch(t=>{console.warn("Invoke request bailed",t)})}onSelectionsChanged(){var e;const n=this.completer.model,t=this._editor;if(!t)return;const i=(e=this.inlineCompleter)===null||e===void 0?void 0:e.model;i&&i.handleSelectionChange(t.getSelection());const s=t.host;if(!n){this._enabled=!1,s.classList.remove(COMPLETER_ENABLED_CLASS);return}if(n.subsetMatch)return;const r=t.getCursorPosition(),o=t.getLine(r.line),{start:l,end:c}=t.getSelection();if(l.column!==c.column||l.line!==c.line){this._enabled=!1,n.reset(!0),s.classList.remove(COMPLETER_ENABLED_CLASS);return}!o||c.column===0?s.classList.add(COMPLETER_LINE_BEGINNING_CLASS):o&&o.slice(0,r.column).match(/^\s*$/)?s.classList.add(COMPLETER_LINE_BEGINNING_CLASS):s.classList.remove(COMPLETER_LINE_BEGINNING_CLASS),this._enabled||(this._enabled=!0,s.classList.add(COMPLETER_ENABLED_CLASS)),n.handleCursorChange(this.getState(t,t.getCursorPosition()))}async onTextChanged(e,n){var t;if(!this._enabled)return;const i=this.completer.model,s=this.editor;if(!s)return;i&&this._autoCompletion&&this._reconciliator.shouldShowContinuousHint&&await this._reconciliator.shouldShowContinuousHint(this.completer.isVisible,n)&&this._makeRequest(s.getCursorPosition(),CompletionTriggerKind.TriggerCharacter);const r=(t=this.inlineCompleter)===null||t===void 0?void 0:t.model;if(r&&(r.handleTextChange(n),this._continuousInline&&this._makeInlineRequest(s.getCursorPosition(),InlineCompletionTriggerKind.Automatic)),i){const{start:o,end:l}=s.getSelection();if(o.column!==l.column||o.line!==l.line)return;i.handleTextChange(this.getState(s,s.getCursorPosition()))}}onVisibilityChanged(e){var n;if(e.isDisposed||e.isHidden){this._tabCompleterActive=!1,this._editor&&(this._editor.host.classList.remove(COMPLETER_ACTIVE_CLASS),this._editor.focus());return}this._tabCompleterActive=!0,(n=this._editor)===null||n===void 0||n.host.classList.add(COMPLETER_ACTIVE_CLASS)}async _onSharedModelChanged(e,n){n.sourceChange&&await this.onTextChanged(e,n)}_makeRequest(e,n){const t=this.editor;if(!t)return Promise.reject(new Error("No active editor"));const i=this._composeRequest(t,e),s=this.getState(t,e);return this._reconciliator.fetch(i,n).then(r=>{var o;if(!r)return;const l=this._updateModel(s,r.start,r.end);l&&(this.completer.suppressIfInlineCompleterActive&&(!((o=this.inlineCompleter)===null||o===void 0)&&o.isActive)||l.setCompletionItems&&l.setCompletionItems(r.items))}).catch(r=>{})}async _makeInlineRequest(e,n){const t=this.editor;if(!t)return Promise.reject(new Error("No active editor"));if(!this.inlineCompleter)return Promise.reject(new Error("No inline completer"));const i=t.getLine(e.line);if(n===InlineCompletionTriggerKind.Automatic&&(typeof i>"u"||i.slice(0,e.column).match(/^\s*$/))){this._fetchingInline+=1;return}let s=!1;typeof i<"u"&&e.column<i.length&&(s=!0);const r=this._composeRequest(t,e),o=this.inlineCompleter.model;if(!o)return;o.cursor=e;const l=++this._fetchingInline,c=this._reconciliator.fetchInline(r,n,s);let h=!1;const d=new Set;for(const p of c)p.then(u=>{var g;if(!(h||!u||!u.items)&&l===this._fetchingInline)if(d.add(p),d.size===1){if(!((g=this.inlineCompleter)===null||g===void 0)&&g.suppressIfTabCompleterActive&&this._tabCompleterActive){h=!0;return}o.setCompletions(u)}else o.appendCompletions(u)}).catch(u=>{console.warn(u)}).finally(()=>{d.add(p);const u=c.length-d.size;o.notifyProgress({pendingProviders:u,totalProviders:c.length})})}_composeRequest(e,n){const t=e.model.sharedModel.getSource(),i=e.model.mimeType,s=libExports.Text.jsIndexToCharIndex(e.getOffsetAt(n),t);return{text:t,offset:s,mimeType:i}}_updateModel(e,n,t){const i=this.completer.model,s=e.text;return i?(i.original=e,i.cursor={start:libExports.Text.charIndexToJsIndex(n,s),end:libExports.Text.charIndexToJsIndex(t,s)},i):null}}(function(a){(function(e){e[e.opened=0]="opened",e[e.update=1]="update",e[e.closed=2]="closed"})(a.StraemEvent||(a.StraemEvent={})),(function(e){e.InvokeRequest=new Message("invoke-request")})(a.Msg||(a.Msg={}))})(CompletionHandler||(CompletionHandler={}));function escapeHTML(a){const e=document.createElement("span");return e.textContent=a,e.innerHTML}class CompleterModel{constructor(){this.processedItemsCache=null,this._current=null,this._cursor=null,this._isDisposed=!1,this._completionItems=[],this._original=null,this._query="",this._subsetMatch=!1,this._typeMap={},this._orderedTypes=[],this._stateChanged=new Signal(this),this._queryChanged=new Signal(this),this._processedToOriginalItem=null,this._resolvingItem=0}get stateChanged(){return this._stateChanged}get queryChanged(){return this._queryChanged}get original(){return this._original}set original(e){this._original===e||this._original&&e&&JSONExt.deepEqual(e,this._original)||(this._reset(),this._current=this._original=e,this._stateChanged.emit(void 0))}get current(){return this._current}set current(e){if(this._current===e||this._current&&e&&JSONExt.deepEqual(e,this._current))return;const t=this._original;if(!t)return;const i=this._cursor;if(!i)return;const s=this._current=e;if(!s){this._stateChanged.emit(void 0);return}const r=t.text.split(`
1
+ import{dv as EditorLanguageRegistry,dA as EditorExtensionRegistry,ak as nullTranslator,gC as CodeMirrorEditor,gA as IEditorMimeTypeService,b_ as libExports,ag as Widget,ac as Token,gM as COMPLETER_ENABLED_CLASS,dI as COMPLETER_ACTIVE_CLASS,J as Signal,gN as MessageLoop,gO as COMPLETER_LINE_BEGINNING_CLASS,gP as Message,c1 as JSONExt,ej as StringExt,gL as Sanitizer,gQ as ElementExt,gR as renderText,aW as PromiseDelegate,_ as __vitePreload,gS as Printing,gT as clientExports,r as reactExports,gU as RenderedJavaScript}from"../datalayer-app-main.js";import{H as HoverBox}from"./hoverbox-CStlKQWE.js";class CodeMirrorEditorFactory{constructor(e={}){var n,t,i;this.newInlineEditor=s=>(s.host.dataset.type="inline",this.newEditor({...s,config:{...this.inlineCodeMirrorConfig,...s.config||{}},inline:!0})),this.newDocumentEditor=s=>{var r,o;return s.host.dataset.type="document",this.newEditor({...s,config:{...this.documentCodeMirrorConfig,...(r=s.config)!==null&&r!==void 0?r:{}},inline:!1,extensions:(o=s.extensions)!==null&&o!==void 0?o:[]})},this.languages=(n=e.languages)!==null&&n!==void 0?n:new EditorLanguageRegistry,this.extensions=(t=e.extensions)!==null&&t!==void 0?t:new EditorExtensionRegistry,this.translator=(i=e.translator)!==null&&i!==void 0?i:nullTranslator,this.inlineCodeMirrorConfig={searchWithCM:!0},this.documentCodeMirrorConfig={lineNumbers:!0,scrollPastEnd:!0}}newEditor(e){return new CodeMirrorEditor({extensionsRegistry:this.extensions,languages:this.languages,translator:this.translator,...e})}}class CodeMirrorMimeTypeService{constructor(e){this.languages=e}getMimeTypeByLanguage(e){var n;const t=e.file_extension||"",i=this.languages.findBest(e.codemirror_mode||{mimetype:e.mimetype,name:e.name,ext:[t.split(".").slice(-1)[0]]});return i?typeof i.mime=="string"?i.mime:(n=i.mime[0])!==null&&n!==void 0?n:IEditorMimeTypeService.defaultMimeType:IEditorMimeTypeService.defaultMimeType}getMimeTypeByFilePath(e){var n;const t=libExports.PathExt.extname(e);if(t===".ipy")return"text/x-python";if(t===".md")return"text/x-ipythongfm";const i=this.languages.findByFileName(e);return i?typeof i.mime=="string"?i.mime:(n=i.mime[0])!==null&&n!==void 0?n:IEditorMimeTypeService.defaultMimeType:IEditorMimeTypeService.defaultMimeType}}const WIDGET_MIMETYPE="application/vnd.jupyter.widget-view+json";class WidgetRenderer extends Widget{constructor(e,n){super(),this.mimeType=e.mimeType,this._manager=n}async renderModel(e){const n=e.data[this.mimeType];if(!this._manager.has_model(n.model_id)){this.node.textContent="Error creating widget: could not find model",this.addClass("jupyter-widgets");return}try{const t=await this._manager.get_model(n.model_id),i=await this._manager.create_view(t);Widget.attach(i.luminoWidget,this.node)}catch(t){console.log("Error displaying widget"),console.log(t),this.node.textContent="Error displaying widget",this.addClass("jupyter-widgets")}}mimeType;_manager}var CompletionTriggerKind;(function(a){a[a.Invoked=1]="Invoked",a[a.TriggerCharacter=2]="TriggerCharacter",a[a.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions"})(CompletionTriggerKind||(CompletionTriggerKind={}));var InlineCompletionTriggerKind;(function(a){a[a.Invoke=0]="Invoke",a[a.Automatic=1]="Automatic"})(InlineCompletionTriggerKind||(InlineCompletionTriggerKind={}));const IInlineCompleterFactory=new Token("@jupyterlab/completer:IInlineCompleterFactory","A factory of inline completer widgets."),ICompletionProviderManager=new Token("@jupyterlab/completer:ICompletionProviderManager","A service for the completion providers management.");class CompletionHandler{constructor(e){this._fetchingInline=0,this._editor=null,this._enabled=!1,this._isDisposed=!1,this._autoCompletion=!1,this._continuousInline=!0,this._tabCompleterActive=!1,this.completer=e.completer,this.inlineCompleter=e.inlineCompleter,this.completer.selected.connect(this.onCompletionSelected,this),this.completer.visibilityChanged.connect(this.onVisibilityChanged,this),this._reconciliator=e.reconciliator}set reconciliator(e){this._reconciliator=e}get editor(){return this._editor}set editor(e){if(e===this._editor)return;let n=this._editor;if(n&&!n.isDisposed){const t=n.model;n.host.classList.remove(COMPLETER_ENABLED_CLASS),n.host.classList.remove(COMPLETER_ACTIVE_CLASS),t.selections.changed.disconnect(this.onSelectionsChanged,this),t.sharedModel.changed.disconnect(this._onSharedModelChanged,this)}if(this.completer.reset(),this.completer.editor=e,n=this._editor=e,n){const t=n.model;this._enabled=!1,t.selections.changed.connect(this.onSelectionsChanged,this),t.sharedModel.changed.connect(this._onSharedModelChanged,this),this.onSelectionsChanged(),this.inlineCompleter&&(this.inlineCompleter.editor=n)}}get isDisposed(){return this._isDisposed}set autoCompletion(e){this._autoCompletion=e}get autoCompletion(){return this._autoCompletion}dispose(){this.isDisposed||(this._isDisposed=!0,Signal.clearData(this))}invokeInline(){const e=this._editor;e&&this._makeInlineRequest(e.getCursorPosition(),InlineCompletionTriggerKind.Invoke).catch(n=>{console.warn("Inline invoke request bailed",n)})}invoke(){MessageLoop.sendMessage(this,CompletionHandler.Msg.InvokeRequest)}processMessage(e){e.type===CompletionHandler.Msg.InvokeRequest.type&&this.onInvokeRequest(e)}getState(e,n){return{text:e.model.sharedModel.getSource(),line:n.line,column:n.column}}onCompletionSelected(e,n){const t=e.model,i=this._editor;if(!i||!t)return;const s=t.createPatch(n);if(!s)return;const{start:r,end:o,value:l}=s,c=i.getOffsetAt(i.getCursorPosition()),h={changes:{from:r,to:o,insert:l}};c<=o&&c>=r&&(h.selection={anchor:r+l.length}),i.editor.dispatch(h)}onInvokeRequest(e){if(!this.completer.model||this.completer.model.original)return;const n=this._editor;n&&this._makeRequest(n.getCursorPosition(),CompletionTriggerKind.Invoked).catch(t=>{console.warn("Invoke request bailed",t)})}onSelectionsChanged(){var e;const n=this.completer.model,t=this._editor;if(!t)return;const i=(e=this.inlineCompleter)===null||e===void 0?void 0:e.model;i&&i.handleSelectionChange(t.getSelection());const s=t.host;if(!n){this._enabled=!1,s.classList.remove(COMPLETER_ENABLED_CLASS);return}if(n.subsetMatch)return;const r=t.getCursorPosition(),o=t.getLine(r.line),{start:l,end:c}=t.getSelection();if(l.column!==c.column||l.line!==c.line){this._enabled=!1,n.reset(!0),s.classList.remove(COMPLETER_ENABLED_CLASS);return}!o||c.column===0?s.classList.add(COMPLETER_LINE_BEGINNING_CLASS):o&&o.slice(0,r.column).match(/^\s*$/)?s.classList.add(COMPLETER_LINE_BEGINNING_CLASS):s.classList.remove(COMPLETER_LINE_BEGINNING_CLASS),this._enabled||(this._enabled=!0,s.classList.add(COMPLETER_ENABLED_CLASS)),n.handleCursorChange(this.getState(t,t.getCursorPosition()))}async onTextChanged(e,n){var t;if(!this._enabled)return;const i=this.completer.model,s=this.editor;if(!s)return;i&&this._autoCompletion&&this._reconciliator.shouldShowContinuousHint&&await this._reconciliator.shouldShowContinuousHint(this.completer.isVisible,n)&&this._makeRequest(s.getCursorPosition(),CompletionTriggerKind.TriggerCharacter);const r=(t=this.inlineCompleter)===null||t===void 0?void 0:t.model;if(r&&(r.handleTextChange(n),this._continuousInline&&this._makeInlineRequest(s.getCursorPosition(),InlineCompletionTriggerKind.Automatic)),i){const{start:o,end:l}=s.getSelection();if(o.column!==l.column||o.line!==l.line)return;i.handleTextChange(this.getState(s,s.getCursorPosition()))}}onVisibilityChanged(e){var n;if(e.isDisposed||e.isHidden){this._tabCompleterActive=!1,this._editor&&(this._editor.host.classList.remove(COMPLETER_ACTIVE_CLASS),this._editor.focus());return}this._tabCompleterActive=!0,(n=this._editor)===null||n===void 0||n.host.classList.add(COMPLETER_ACTIVE_CLASS)}async _onSharedModelChanged(e,n){n.sourceChange&&await this.onTextChanged(e,n)}_makeRequest(e,n){const t=this.editor;if(!t)return Promise.reject(new Error("No active editor"));const i=this._composeRequest(t,e),s=this.getState(t,e);return this._reconciliator.fetch(i,n).then(r=>{var o;if(!r)return;const l=this._updateModel(s,r.start,r.end);l&&(this.completer.suppressIfInlineCompleterActive&&(!((o=this.inlineCompleter)===null||o===void 0)&&o.isActive)||l.setCompletionItems&&l.setCompletionItems(r.items))}).catch(r=>{})}async _makeInlineRequest(e,n){const t=this.editor;if(!t)return Promise.reject(new Error("No active editor"));if(!this.inlineCompleter)return Promise.reject(new Error("No inline completer"));const i=t.getLine(e.line);if(n===InlineCompletionTriggerKind.Automatic&&(typeof i>"u"||i.slice(0,e.column).match(/^\s*$/))){this._fetchingInline+=1;return}let s=!1;typeof i<"u"&&e.column<i.length&&(s=!0);const r=this._composeRequest(t,e),o=this.inlineCompleter.model;if(!o)return;o.cursor=e;const l=++this._fetchingInline,c=this._reconciliator.fetchInline(r,n,s);let h=!1;const d=new Set;for(const p of c)p.then(u=>{var g;if(!(h||!u||!u.items)&&l===this._fetchingInline)if(d.add(p),d.size===1){if(!((g=this.inlineCompleter)===null||g===void 0)&&g.suppressIfTabCompleterActive&&this._tabCompleterActive){h=!0;return}o.setCompletions(u)}else o.appendCompletions(u)}).catch(u=>{console.warn(u)}).finally(()=>{d.add(p);const u=c.length-d.size;o.notifyProgress({pendingProviders:u,totalProviders:c.length})})}_composeRequest(e,n){const t=e.model.sharedModel.getSource(),i=e.model.mimeType,s=libExports.Text.jsIndexToCharIndex(e.getOffsetAt(n),t);return{text:t,offset:s,mimeType:i}}_updateModel(e,n,t){const i=this.completer.model,s=e.text;return i?(i.original=e,i.cursor={start:libExports.Text.charIndexToJsIndex(n,s),end:libExports.Text.charIndexToJsIndex(t,s)},i):null}}(function(a){(function(e){e[e.opened=0]="opened",e[e.update=1]="update",e[e.closed=2]="closed"})(a.StraemEvent||(a.StraemEvent={})),(function(e){e.InvokeRequest=new Message("invoke-request")})(a.Msg||(a.Msg={}))})(CompletionHandler||(CompletionHandler={}));function escapeHTML(a){const e=document.createElement("span");return e.textContent=a,e.innerHTML}class CompleterModel{constructor(){this.processedItemsCache=null,this._current=null,this._cursor=null,this._isDisposed=!1,this._completionItems=[],this._original=null,this._query="",this._subsetMatch=!1,this._typeMap={},this._orderedTypes=[],this._stateChanged=new Signal(this),this._queryChanged=new Signal(this),this._processedToOriginalItem=null,this._resolvingItem=0}get stateChanged(){return this._stateChanged}get queryChanged(){return this._queryChanged}get original(){return this._original}set original(e){this._original===e||this._original&&e&&JSONExt.deepEqual(e,this._original)||(this._reset(),this._current=this._original=e,this._stateChanged.emit(void 0))}get current(){return this._current}set current(e){if(this._current===e||this._current&&e&&JSONExt.deepEqual(e,this._current))return;const t=this._original;if(!t)return;const i=this._cursor;if(!i)return;const s=this._current=e;if(!s){this._stateChanged.emit(void 0);return}const r=t.text.split(`
2
2
  `)[t.line],o=s.text.split(`
3
3
  `)[s.line];if(!this._subsetMatch&&o.length<r.length){this.reset(!0);return}const{start:l,end:c}=i;let h=s.text.substring(l);const d=t.text.substring(c);h=h.substring(0,h.lastIndexOf(d)),this._query=h,this.processedItemsCache=null,this._processedToOriginalItem=null,this._queryChanged.emit({newValue:this._query,origin:"editorUpdate"}),this._stateChanged.emit(void 0)}get cursor(){return this._cursor}set cursor(e){this.original&&(this._cursor=e)}get query(){return this._query}set query(e){this._query=e,this.processedItemsCache=null,this._processedToOriginalItem=null,this._queryChanged.emit({newValue:this._query,origin:"setter"})}get subsetMatch(){return this._subsetMatch}set subsetMatch(e){this._subsetMatch=e}get isDisposed(){return this._isDisposed}dispose(){this._isDisposed||(this._isDisposed=!0,Signal.clearData(this))}completionItems(){if(!this.processedItemsCache){let e=this._query;if(e){const n=this._markup(e);this.processedItemsCache=n.map(t=>t.processedItem),this._processedToOriginalItem=new WeakMap(n.map(t=>[t.processedItem,t.originalItem]))}else this.processedItemsCache=this._completionItems.map(n=>this._escapeItemLabel(n)),this._processedToOriginalItem=null}return this.processedItemsCache}setCompletionItems(e){JSONExt.deepEqual(e,this._completionItems)||(this._completionItems=e,this._orderedTypes=Private$3.findOrderedCompletionItemTypes(this._completionItems),this.processedItemsCache=null,this._processedToOriginalItem=null,this._stateChanged.emit(void 0))}typeMap(){return this._typeMap}orderedTypes(){return this._orderedTypes}handleCursorChange(e){if(!this._original)return;const{column:n,line:t}=e,{current:i,original:s}=this;if(!s)return;if(t!==s.line){this.reset(!0);return}if(n<s.column){this.reset(!0);return}const{cursor:r}=this;if(!r||!i)return;const o=r.end-r.start,l=s.text.split(`
4
4
  `)[s.line],h=i.text.split(`
@@ -48,4 +48,4 @@ ${e}</tr>
48
48
  `}tablecell(e,n){const t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+`</${t}>
49
49
  `}strong(e){return`<strong>${e}</strong>`}em(e){return`<em>${e}</em>`}codespan(e){return`<code>${e}</code>`}br(){return this.options.xhtml?"<br/>":"<br>"}del(e){return`<del>${e}</del>`}link(e,n,t){if(e=cleanUrl(this.options.sanitize,this.options.baseUrl,e),e===null)return t;let i='<a href="'+e+'"';return n&&(i+=' title="'+n+'"'),i+=">"+t+"</a>",i}image(e,n,t){if(e=cleanUrl(this.options.sanitize,this.options.baseUrl,e),e===null)return t;let i=`<img src="${e}" alt="${t}"`;return n&&(i+=` title="${n}"`),i+=this.options.xhtml?"/>":">",i}text(e){return e}}class TextRenderer{strong(e){return e}em(e){return e}codespan(e){return e}del(e){return e}html(e){return e}text(e){return e}link(e,n,t){return""+t}image(e,n,t){return""+t}br(){return""}}class Slugger{constructor(){this.seen={}}serialize(e){return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}getNextSafeSlug(e,n){let t=e,i=0;if(this.seen.hasOwnProperty(t)){i=this.seen[e];do i++,t=e+"-"+i;while(this.seen.hasOwnProperty(t))}return n||(this.seen[e]=i,this.seen[t]=0),t}slug(e,n={}){const t=this.serialize(e);return this.getNextSafeSlug(t,n.dryrun)}}class Parser{constructor(e){this.options=e||defaults,this.options.renderer=this.options.renderer||new Renderer,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new TextRenderer,this.slugger=new Slugger}static parse(e,n){return new Parser(n).parse(e)}static parseInline(e,n){return new Parser(n).parseInline(e)}parse(e,n=!0){let t="",i,s,r,o,l,c,h,d,p,u,g,_,k,m,f,C,b,y,x;const w=e.length;for(i=0;i<w;i++){if(u=e[i],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[u.type]&&(x=this.options.extensions.renderers[u.type].call({parser:this},u),x!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(u.type))){t+=x||"";continue}switch(u.type){case"space":continue;case"hr":{t+=this.renderer.hr();continue}case"heading":{t+=this.renderer.heading(this.parseInline(u.tokens),u.depth,unescape(this.parseInline(u.tokens,this.textRenderer)),this.slugger);continue}case"code":{t+=this.renderer.code(u.text,u.lang,u.escaped);continue}case"table":{for(d="",h="",o=u.header.length,s=0;s<o;s++)h+=this.renderer.tablecell(this.parseInline(u.header[s].tokens),{header:!0,align:u.align[s]});for(d+=this.renderer.tablerow(h),p="",o=u.rows.length,s=0;s<o;s++){for(c=u.rows[s],h="",l=c.length,r=0;r<l;r++)h+=this.renderer.tablecell(this.parseInline(c[r].tokens),{header:!1,align:u.align[r]});p+=this.renderer.tablerow(h)}t+=this.renderer.table(d,p);continue}case"blockquote":{p=this.parse(u.tokens),t+=this.renderer.blockquote(p);continue}case"list":{for(g=u.ordered,_=u.start,k=u.loose,o=u.items.length,p="",s=0;s<o;s++)f=u.items[s],C=f.checked,b=f.task,m="",f.task&&(y=this.renderer.checkbox(C),k?f.tokens.length>0&&f.tokens[0].type==="paragraph"?(f.tokens[0].text=y+" "+f.tokens[0].text,f.tokens[0].tokens&&f.tokens[0].tokens.length>0&&f.tokens[0].tokens[0].type==="text"&&(f.tokens[0].tokens[0].text=y+" "+f.tokens[0].tokens[0].text)):f.tokens.unshift({type:"text",text:y}):m+=y),m+=this.parse(f.tokens,k),p+=this.renderer.listitem(m,b,C);t+=this.renderer.list(p,g,_);continue}case"html":{t+=this.renderer.html(u.text);continue}case"paragraph":{t+=this.renderer.paragraph(this.parseInline(u.tokens));continue}case"text":{for(p=u.tokens?this.parseInline(u.tokens):u.text;i+1<w&&e[i+1].type==="text";)u=e[++i],p+=`
50
50
  `+(u.tokens?this.parseInline(u.tokens):u.text);t+=n?this.renderer.paragraph(p):p;continue}default:{const T='Token with "'+u.type+'" type was not found.';if(this.options.silent){console.error(T);return}else throw new Error(T)}}}return t}parseInline(e,n){n=n||this.renderer;let t="",i,s,r;const o=e.length;for(i=0;i<o;i++){if(s=e[i],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[s.type]&&(r=this.options.extensions.renderers[s.type].call({parser:this},s),r!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type))){t+=r||"";continue}switch(s.type){case"escape":{t+=n.text(s.text);break}case"html":{t+=n.html(s.text);break}case"link":{t+=n.link(s.href,s.title,this.parseInline(s.tokens,n));break}case"image":{t+=n.image(s.href,s.title,s.text);break}case"strong":{t+=n.strong(this.parseInline(s.tokens,n));break}case"em":{t+=n.em(this.parseInline(s.tokens,n));break}case"codespan":{t+=n.codespan(s.text);break}case"br":{t+=n.br();break}case"del":{t+=n.del(this.parseInline(s.tokens,n));break}case"text":{t+=n.text(s.text);break}default:{const l='Token with "'+s.type+'" type was not found.';if(this.options.silent){console.error(l);return}else throw new Error(l)}}}return t}}class Hooks{constructor(e){this.options=e||defaults}static passThroughHooks=new Set(["preprocess","postprocess"]);preprocess(e){return e}postprocess(e){return e}}function onError(a,e,n){return t=>{if(t.message+=`
51
- Please report this to https://github.com/markedjs/marked.`,a){const i="<p>An error occurred:</p><pre>"+escape(t.message+"",!0)+"</pre>";if(e)return Promise.resolve(i);if(n){n(null,i);return}return i}if(e)return Promise.reject(t);if(n){n(t);return}throw t}}function parseMarkdown(a,e){return(n,t,i)=>{typeof t=="function"&&(i=t,t=null);const s={...t};t={...marked.defaults,...s};const r=onError(t.silent,t.async,i);if(typeof n>"u"||n===null)return r(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return r(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));if(checkSanitizeDeprecation(t),t.hooks&&(t.hooks.options=t),i){const o=t.highlight;let l;try{t.hooks&&(n=t.hooks.preprocess(n)),l=a(n,t)}catch(d){return r(d)}const c=function(d){let p;if(!d)try{t.walkTokens&&marked.walkTokens(l,t.walkTokens),p=e(l,t),t.hooks&&(p=t.hooks.postprocess(p))}catch(u){d=u}return t.highlight=o,d?r(d):i(null,p)};if(!o||o.length<3||(delete t.highlight,!l.length))return c();let h=0;marked.walkTokens(l,function(d){d.type==="code"&&(h++,setTimeout(()=>{o(d.text,d.lang,function(p,u){if(p)return c(p);u!=null&&u!==d.text&&(d.text=u,d.escaped=!0),h--,h===0&&c()})},0))}),h===0&&c();return}if(t.async)return Promise.resolve(t.hooks?t.hooks.preprocess(n):n).then(o=>a(o,t)).then(o=>t.walkTokens?Promise.all(marked.walkTokens(o,t.walkTokens)).then(()=>o):o).then(o=>e(o,t)).then(o=>t.hooks?t.hooks.postprocess(o):o).catch(r);try{t.hooks&&(n=t.hooks.preprocess(n));const o=a(n,t);t.walkTokens&&marked.walkTokens(o,t.walkTokens);let l=e(o,t);return t.hooks&&(l=t.hooks.postprocess(l)),l}catch(o){return r(o)}}}function marked(a,e,n){return parseMarkdown(Lexer.lex,Parser.parse)(a,e,n)}marked.options=marked.setOptions=function(a){return marked.defaults={...marked.defaults,...a},changeDefaults(marked.defaults),marked};marked.getDefaults=getDefaults;marked.defaults=defaults;marked.use=function(...a){const e=marked.defaults.extensions||{renderers:{},childTokens:{}};a.forEach(n=>{const t={...n};if(t.async=marked.defaults.async||t.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if(i.renderer){const s=e.renderers[i.name];s?e.renderers[i.name]=function(...r){let o=i.renderer.apply(this,r);return o===!1&&(o=s.apply(this,r)),o}:e.renderers[i.name]=i.renderer}if(i.tokenizer){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");e[i.level]?e[i.level].unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),t.extensions=e),n.renderer){const i=marked.defaults.renderer||new Renderer;for(const s in n.renderer){const r=i[s];i[s]=(...o)=>{let l=n.renderer[s].apply(i,o);return l===!1&&(l=r.apply(i,o)),l}}t.renderer=i}if(n.tokenizer){const i=marked.defaults.tokenizer||new Tokenizer;for(const s in n.tokenizer){const r=i[s];i[s]=(...o)=>{let l=n.tokenizer[s].apply(i,o);return l===!1&&(l=r.apply(i,o)),l}}t.tokenizer=i}if(n.hooks){const i=marked.defaults.hooks||new Hooks;for(const s in n.hooks){const r=i[s];Hooks.passThroughHooks.has(s)?i[s]=o=>{if(marked.defaults.async)return Promise.resolve(n.hooks[s].call(i,o)).then(c=>r.call(i,c));const l=n.hooks[s].call(i,o);return r.call(i,l)}:i[s]=(...o)=>{let l=n.hooks[s].apply(i,o);return l===!1&&(l=r.apply(i,o)),l}}t.hooks=i}if(n.walkTokens){const i=marked.defaults.walkTokens;t.walkTokens=function(s){let r=[];return r.push(n.walkTokens.call(this,s)),i&&(r=r.concat(i.call(this,s))),r}}marked.setOptions(t)})};marked.walkTokens=function(a,e){let n=[];for(const t of a)switch(n=n.concat(e.call(marked,t)),t.type){case"table":{for(const i of t.header)n=n.concat(marked.walkTokens(i.tokens,e));for(const i of t.rows)for(const s of i)n=n.concat(marked.walkTokens(s.tokens,e));break}case"list":{n=n.concat(marked.walkTokens(t.items,e));break}default:marked.defaults.extensions&&marked.defaults.extensions.childTokens&&marked.defaults.extensions.childTokens[t.type]?marked.defaults.extensions.childTokens[t.type].forEach(function(i){n=n.concat(marked.walkTokens(t[i],e))}):t.tokens&&(n=n.concat(marked.walkTokens(t.tokens,e)))}return n};marked.parseInline=parseMarkdown(Lexer.lexInline,Parser.parseInline);marked.Parser=Parser;marked.parser=Parser.parse;marked.Renderer=Renderer;marked.TextRenderer=TextRenderer;marked.Lexer=Lexer;marked.lexer=Lexer.lex;marked.Tokenizer=Tokenizer;marked.Slugger=Slugger;marked.Hooks=Hooks;marked.parse=marked;marked.options;marked.setOptions;marked.use;marked.walkTokens;marked.parseInline;Parser.parse;Lexer.lex;const escapeHtml=a=>a.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;"),preprocessMath=a=>{const e=[];return a.replace(/```[\s\S]*?```/g,s=>`@@JUPYTER_REACT_FENCE_${e.push(s)-1}@@`).replace(/\$\$([\s\S]+?)\$\$/g,(s,r)=>`<div class="math display">\\[${escapeHtml(r.trim())}\\]</div>`).replace(/(^|[^$\\])\$([^\n$]+?)\$/g,(s,r,o)=>`${r}<span class="math inline">\\(${escapeHtml(o.trim())}\\)</span>`).replace(/@@JUPYTER_REACT_FENCE_(\d+)@@/g,(s,r)=>{const o=Number(r);return Number.isInteger(o)?e[o]:s})},inlineMathRule=/^\$(?!\s)([^$\n]|\\\$)+?(?<!\s)\$/,blockMathRule=/^\$\$([\s\S]+?)\$\$(?:\n|$)/,getTokenText=a=>{if(typeof a!="object"||a===null||!("text"in a))return"";const e=a.text;return typeof e=="string"?e:""},getMarked=a=>(Private.initializeMarked(a),{render:e=>new Promise((n,t)=>{const i=preprocessMath(e);marked(i,(s,r)=>{s?t(s):n(r??"")})})});var Private;(function(a){let e=!1;function n(t){e||(e=!0,marked.use({extensions:[{name:"blockMath",level:"block",start(i){const s=i.indexOf("$$");return s<0?void 0:s},tokenizer(i){const s=blockMathRule.exec(i);if(s)return{type:"blockMath",raw:s[0],text:s[1].trim()}},renderer(i){return`<div class="math display">\\[${escapeHtml(getTokenText(i))}\\]</div>`}},{name:"inlineMath",level:"inline",start(i){const s=i.indexOf("$");return s<0?void 0:s},tokenizer(i){const s=inlineMathRule.exec(i);if(!s)return;const r=s[0];return{type:"inlineMath",raw:r,text:r.slice(1,-1)}},renderer(i){return`<span class="math inline">\\(${escapeHtml(getTokenText(i))}\\)</span>`}}]}),marked.setOptions({gfm:!0,sanitize:!1,langPrefix:"language-",highlight:(i,s,r)=>{const o=(c,h)=>(r&&r(c,h),h);if(!s)return o(null,i);const l=document.createElement("div");try{t.highlight(i,t.findBest(s),l).then(()=>o(null,l.innerHTML)).catch(c=>o(c,i))}catch(c){return console.error(`Failed to highlight ${s} code`,c),o(c,i)}}}))}a.initializeMarked=n})(Private||(Private={}));const CSS_CLASS="jp-RenderedJSON",MIME_TYPE="application/json",MIME_TYPES_JSONL=["text/jsonl","application/jsonl","application/json-lines"];class RenderedJSON extends Widget{constructor(e){super(),this._rootDOM=null,this.addClass(CSS_CLASS),this.addClass("CodeMirror"),this._mimeType=e.mimeType,this.translator=e.translator||nullTranslator}[Printing.symbol](){return()=>Printing.printWidget(this)}async renderModel(e){const{Component:n}=await __vitePreload(async()=>{const{Component:s}=await import("./component-Chor_J7e.js");return{Component:s}},[],import.meta.url);let t;if(MIME_TYPES_JSONL.indexOf(this._mimeType)>=0){const s=(e.data[this._mimeType]||"").trim().split(/\n/);t=JSON.parse(`[${s.join(",")}]`)}else t=e.data[this._mimeType]||{};const i=e.metadata[this._mimeType]||{};return this._rootDOM===null&&(this._rootDOM=clientExports.createRoot(this.node)),new Promise((s,r)=>{this._rootDOM.render(reactExports.createElement(n,{data:t,metadata:i,translator:this.translator,forwardedRef:()=>s()}))})}onBeforeDetach(e){this._rootDOM&&(this._rootDOM.unmount(),this._rootDOM=null)}}const rendererFactory$1={safe:!0,mimeTypes:[MIME_TYPE,...MIME_TYPES_JSONL],createRenderer:a=>new RenderedJSON(a)},extensions=[{id:"@jupyterlab/json-extension:factory",description:"Adds renderer for JSON content.",rendererFactory:rendererFactory$1,rank:0,dataType:"json",documentWidgetFactoryOptions:{name:"JSON",primaryFileType:"json",fileTypes:["json","notebook","geojson"],defaultFor:["json"]}},{id:"@jupyterlab/json-lines-extension:factory",description:"Adds renderer for JSONLines content.",rendererFactory:rendererFactory$1,rank:0,dataType:"string",documentWidgetFactoryOptions:{name:"JSONLines",primaryFileType:"jsonl",fileTypes:["jsonl","ndjson"],defaultFor:["jsonl","ndjson"]}}],index$1=Object.freeze(Object.defineProperty({__proto__:null,MIME_TYPE,MIME_TYPES_JSONL,RenderedJSON,default:extensions,rendererFactory:rendererFactory$1},Symbol.toStringTag,{value:"Module"})),TEXT_JAVASCRIPT_MIMETYPE="text/javascript",APPLICATION_JAVASCRIPT_MIMETYPE="application/javascript";function evalInContext(code,element,document,window){return eval(code)}class ExperimentalRenderedJavascript extends RenderedJavaScript{render(e){const n=this.translator.load("jupyterlab"),t=()=>{try{const i=e.data[this.mimeType];return i&&evalInContext(i,this.node,document,window),Promise.resolve()}catch(i){return Promise.reject(i)}};if(!e.trusted){const i=document.createElement("pre");i.textContent=n.__("Are you sure that you want to run arbitrary Javascript within your JupyterLab session?");const s=document.createElement("button");return s.textContent=n.__("Run"),this.node.appendChild(i),this.node.appendChild(s),s.onclick=r=>{this.node.textContent="",t()},Promise.resolve()}return t()}}const rendererFactory={safe:!1,mimeTypes:[TEXT_JAVASCRIPT_MIMETYPE,APPLICATION_JAVASCRIPT_MIMETYPE],createRenderer:a=>new ExperimentalRenderedJavascript(a)},extension={id:"@jupyterlab/javascript-extension:factory",description:"Adds renderer for JavaScript content.",rendererFactory,rank:0,dataType:"string"},index=Object.freeze(Object.defineProperty({__proto__:null,APPLICATION_JAVASCRIPT_MIMETYPE,ExperimentalRenderedJavascript,TEXT_JAVASCRIPT_MIMETYPE,default:extension,rendererFactory},Symbol.toStringTag,{value:"Module"}));export{CodeMirrorEditorFactory as C,ICompletionProviderManager as I,KERNEL_PROVIDER_ID as K,ProviderReconciliator as P,WIDGET_MIMETYPE as W,CodeMirrorMimeTypeService as a,Completer as b,CompleterModel as c,CompletionHandler as d,IInlineCompleterFactory as e,KernelCompleterProvider as f,rendererFactory as g,getMarked as h,createLatexTypesetter as i,WidgetRenderer as j,index$1 as k,index as l,rendererFactory$1 as r};
51
+ Please report this to https://github.com/markedjs/marked.`,a){const i="<p>An error occurred:</p><pre>"+escape(t.message+"",!0)+"</pre>";if(e)return Promise.resolve(i);if(n){n(null,i);return}return i}if(e)return Promise.reject(t);if(n){n(t);return}throw t}}function parseMarkdown(a,e){return(n,t,i)=>{typeof t=="function"&&(i=t,t=null);const s={...t};t={...marked.defaults,...s};const r=onError(t.silent,t.async,i);if(typeof n>"u"||n===null)return r(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return r(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));if(checkSanitizeDeprecation(t),t.hooks&&(t.hooks.options=t),i){const o=t.highlight;let l;try{t.hooks&&(n=t.hooks.preprocess(n)),l=a(n,t)}catch(d){return r(d)}const c=function(d){let p;if(!d)try{t.walkTokens&&marked.walkTokens(l,t.walkTokens),p=e(l,t),t.hooks&&(p=t.hooks.postprocess(p))}catch(u){d=u}return t.highlight=o,d?r(d):i(null,p)};if(!o||o.length<3||(delete t.highlight,!l.length))return c();let h=0;marked.walkTokens(l,function(d){d.type==="code"&&(h++,setTimeout(()=>{o(d.text,d.lang,function(p,u){if(p)return c(p);u!=null&&u!==d.text&&(d.text=u,d.escaped=!0),h--,h===0&&c()})},0))}),h===0&&c();return}if(t.async)return Promise.resolve(t.hooks?t.hooks.preprocess(n):n).then(o=>a(o,t)).then(o=>t.walkTokens?Promise.all(marked.walkTokens(o,t.walkTokens)).then(()=>o):o).then(o=>e(o,t)).then(o=>t.hooks?t.hooks.postprocess(o):o).catch(r);try{t.hooks&&(n=t.hooks.preprocess(n));const o=a(n,t);t.walkTokens&&marked.walkTokens(o,t.walkTokens);let l=e(o,t);return t.hooks&&(l=t.hooks.postprocess(l)),l}catch(o){return r(o)}}}function marked(a,e,n){return parseMarkdown(Lexer.lex,Parser.parse)(a,e,n)}marked.options=marked.setOptions=function(a){return marked.defaults={...marked.defaults,...a},changeDefaults(marked.defaults),marked};marked.getDefaults=getDefaults;marked.defaults=defaults;marked.use=function(...a){const e=marked.defaults.extensions||{renderers:{},childTokens:{}};a.forEach(n=>{const t={...n};if(t.async=marked.defaults.async||t.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if(i.renderer){const s=e.renderers[i.name];s?e.renderers[i.name]=function(...r){let o=i.renderer.apply(this,r);return o===!1&&(o=s.apply(this,r)),o}:e.renderers[i.name]=i.renderer}if(i.tokenizer){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");e[i.level]?e[i.level].unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),t.extensions=e),n.renderer){const i=marked.defaults.renderer||new Renderer;for(const s in n.renderer){const r=i[s];i[s]=(...o)=>{let l=n.renderer[s].apply(i,o);return l===!1&&(l=r.apply(i,o)),l}}t.renderer=i}if(n.tokenizer){const i=marked.defaults.tokenizer||new Tokenizer;for(const s in n.tokenizer){const r=i[s];i[s]=(...o)=>{let l=n.tokenizer[s].apply(i,o);return l===!1&&(l=r.apply(i,o)),l}}t.tokenizer=i}if(n.hooks){const i=marked.defaults.hooks||new Hooks;for(const s in n.hooks){const r=i[s];Hooks.passThroughHooks.has(s)?i[s]=o=>{if(marked.defaults.async)return Promise.resolve(n.hooks[s].call(i,o)).then(c=>r.call(i,c));const l=n.hooks[s].call(i,o);return r.call(i,l)}:i[s]=(...o)=>{let l=n.hooks[s].apply(i,o);return l===!1&&(l=r.apply(i,o)),l}}t.hooks=i}if(n.walkTokens){const i=marked.defaults.walkTokens;t.walkTokens=function(s){let r=[];return r.push(n.walkTokens.call(this,s)),i&&(r=r.concat(i.call(this,s))),r}}marked.setOptions(t)})};marked.walkTokens=function(a,e){let n=[];for(const t of a)switch(n=n.concat(e.call(marked,t)),t.type){case"table":{for(const i of t.header)n=n.concat(marked.walkTokens(i.tokens,e));for(const i of t.rows)for(const s of i)n=n.concat(marked.walkTokens(s.tokens,e));break}case"list":{n=n.concat(marked.walkTokens(t.items,e));break}default:marked.defaults.extensions&&marked.defaults.extensions.childTokens&&marked.defaults.extensions.childTokens[t.type]?marked.defaults.extensions.childTokens[t.type].forEach(function(i){n=n.concat(marked.walkTokens(t[i],e))}):t.tokens&&(n=n.concat(marked.walkTokens(t.tokens,e)))}return n};marked.parseInline=parseMarkdown(Lexer.lexInline,Parser.parseInline);marked.Parser=Parser;marked.parser=Parser.parse;marked.Renderer=Renderer;marked.TextRenderer=TextRenderer;marked.Lexer=Lexer;marked.lexer=Lexer.lex;marked.Tokenizer=Tokenizer;marked.Slugger=Slugger;marked.Hooks=Hooks;marked.parse=marked;marked.options;marked.setOptions;marked.use;marked.walkTokens;marked.parseInline;Parser.parse;Lexer.lex;const escapeHtml=a=>a.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;"),preprocessMath=a=>{const e=[];return a.replace(/```[\s\S]*?```/g,s=>`@@JUPYTER_REACT_FENCE_${e.push(s)-1}@@`).replace(/\$\$([\s\S]+?)\$\$/g,(s,r)=>`<div class="math display">\\[${escapeHtml(r.trim())}\\]</div>`).replace(/(^|[^$\\])\$([^\n$]+?)\$/g,(s,r,o)=>`${r}<span class="math inline">\\(${escapeHtml(o.trim())}\\)</span>`).replace(/@@JUPYTER_REACT_FENCE_(\d+)@@/g,(s,r)=>{const o=Number(r);return Number.isInteger(o)?e[o]:s})},inlineMathRule=/^\$(?!\s)([^$\n]|\\\$)+?(?<!\s)\$/,blockMathRule=/^\$\$([\s\S]+?)\$\$(?:\n|$)/,getTokenText=a=>{if(typeof a!="object"||a===null||!("text"in a))return"";const e=a.text;return typeof e=="string"?e:""},getMarked=a=>(Private.initializeMarked(a),{render:e=>new Promise((n,t)=>{const i=preprocessMath(e);marked(i,(s,r)=>{s?t(s):n(r??"")})})});var Private;(function(a){let e=!1;function n(t){e||(e=!0,marked.use({extensions:[{name:"blockMath",level:"block",start(i){const s=i.indexOf("$$");return s<0?void 0:s},tokenizer(i){const s=blockMathRule.exec(i);if(s)return{type:"blockMath",raw:s[0],text:s[1].trim()}},renderer(i){return`<div class="math display">\\[${escapeHtml(getTokenText(i))}\\]</div>`}},{name:"inlineMath",level:"inline",start(i){const s=i.indexOf("$");return s<0?void 0:s},tokenizer(i){const s=inlineMathRule.exec(i);if(!s)return;const r=s[0];return{type:"inlineMath",raw:r,text:r.slice(1,-1)}},renderer(i){return`<span class="math inline">\\(${escapeHtml(getTokenText(i))}\\)</span>`}}]}),marked.setOptions({gfm:!0,sanitize:!1,langPrefix:"language-",highlight:(i,s,r)=>{const o=(c,h)=>(r&&r(c,h),h);if(!s)return o(null,i);const l=document.createElement("div");try{t.highlight(i,t.findBest(s),l).then(()=>o(null,l.innerHTML)).catch(c=>o(c,i))}catch(c){return console.error(`Failed to highlight ${s} code`,c),o(c,i)}}}))}a.initializeMarked=n})(Private||(Private={}));const CSS_CLASS="jp-RenderedJSON",MIME_TYPE="application/json",MIME_TYPES_JSONL=["text/jsonl","application/jsonl","application/json-lines"];class RenderedJSON extends Widget{constructor(e){super(),this._rootDOM=null,this.addClass(CSS_CLASS),this.addClass("CodeMirror"),this._mimeType=e.mimeType,this.translator=e.translator||nullTranslator}[Printing.symbol](){return()=>Printing.printWidget(this)}async renderModel(e){const{Component:n}=await __vitePreload(async()=>{const{Component:s}=await import("./component-B8gGyr50.js");return{Component:s}},[],import.meta.url);let t;if(MIME_TYPES_JSONL.indexOf(this._mimeType)>=0){const s=(e.data[this._mimeType]||"").trim().split(/\n/);t=JSON.parse(`[${s.join(",")}]`)}else t=e.data[this._mimeType]||{};const i=e.metadata[this._mimeType]||{};return this._rootDOM===null&&(this._rootDOM=clientExports.createRoot(this.node)),new Promise((s,r)=>{this._rootDOM.render(reactExports.createElement(n,{data:t,metadata:i,translator:this.translator,forwardedRef:()=>s()}))})}onBeforeDetach(e){this._rootDOM&&(this._rootDOM.unmount(),this._rootDOM=null)}}const rendererFactory$1={safe:!0,mimeTypes:[MIME_TYPE,...MIME_TYPES_JSONL],createRenderer:a=>new RenderedJSON(a)},extensions=[{id:"@jupyterlab/json-extension:factory",description:"Adds renderer for JSON content.",rendererFactory:rendererFactory$1,rank:0,dataType:"json",documentWidgetFactoryOptions:{name:"JSON",primaryFileType:"json",fileTypes:["json","notebook","geojson"],defaultFor:["json"]}},{id:"@jupyterlab/json-lines-extension:factory",description:"Adds renderer for JSONLines content.",rendererFactory:rendererFactory$1,rank:0,dataType:"string",documentWidgetFactoryOptions:{name:"JSONLines",primaryFileType:"jsonl",fileTypes:["jsonl","ndjson"],defaultFor:["jsonl","ndjson"]}}],index$1=Object.freeze(Object.defineProperty({__proto__:null,MIME_TYPE,MIME_TYPES_JSONL,RenderedJSON,default:extensions,rendererFactory:rendererFactory$1},Symbol.toStringTag,{value:"Module"})),TEXT_JAVASCRIPT_MIMETYPE="text/javascript",APPLICATION_JAVASCRIPT_MIMETYPE="application/javascript";function evalInContext(code,element,document,window){return eval(code)}class ExperimentalRenderedJavascript extends RenderedJavaScript{render(e){const n=this.translator.load("jupyterlab"),t=()=>{try{const i=e.data[this.mimeType];return i&&evalInContext(i,this.node,document,window),Promise.resolve()}catch(i){return Promise.reject(i)}};if(!e.trusted){const i=document.createElement("pre");i.textContent=n.__("Are you sure that you want to run arbitrary Javascript within your JupyterLab session?");const s=document.createElement("button");return s.textContent=n.__("Run"),this.node.appendChild(i),this.node.appendChild(s),s.onclick=r=>{this.node.textContent="",t()},Promise.resolve()}return t()}}const rendererFactory={safe:!1,mimeTypes:[TEXT_JAVASCRIPT_MIMETYPE,APPLICATION_JAVASCRIPT_MIMETYPE],createRenderer:a=>new ExperimentalRenderedJavascript(a)},extension={id:"@jupyterlab/javascript-extension:factory",description:"Adds renderer for JavaScript content.",rendererFactory,rank:0,dataType:"string"},index=Object.freeze(Object.defineProperty({__proto__:null,APPLICATION_JAVASCRIPT_MIMETYPE,ExperimentalRenderedJavascript,TEXT_JAVASCRIPT_MIMETYPE,default:extension,rendererFactory},Symbol.toStringTag,{value:"Module"}));export{CodeMirrorEditorFactory as C,ICompletionProviderManager as I,KERNEL_PROVIDER_ID as K,ProviderReconciliator as P,WIDGET_MIMETYPE as W,CodeMirrorMimeTypeService as a,Completer as b,CompleterModel as c,CompletionHandler as d,IInlineCompleterFactory as e,KernelCompleterProvider as f,rendererFactory as g,getMarked as h,createLatexTypesetter as i,WidgetRenderer as j,index$1 as k,index as l,rendererFactory$1 as r};
@@ -1,16 +1,16 @@
1
- import{gU as Me,gV as me,gW as z,c4 as te,dH as We,gX as De,l as W,ai as E,ak as R,cF as x,b_ as S,cy as $e,cN as Be,gY as ze,ca as D,dE as ne,am as Ue,an as oe,r as v,dN as pe,ag as he,b$ as qe,gZ as ae,dd as se,cH as ge,g_ as He,aW as fe,_ as Ke,gS as Je,g$ as Ve,ae as be,h0 as Ge,cb as Qe,cG as ye,cx as $,h1 as ve,d9 as Ye,dK as _e,ac as Xe,cZ as Ze,c_ as we,h2 as ie,ci as et,ch as U,gR as re,gK as tt,dJ as nt,h3 as ot}from"../datalayer-app-main.js";import{I as L,a as ke}from"./tokens-BHLmeqjP.js";import{h as Se,b as B,L as F,G as at,T as st,i as it,f as Ce,j as rt,K as ct,R as lt,k as Te,l as je,m as dt,I as ut,n as mt,c as pt,e as Ee,a as ht,W as gt}from"./index-DoBEQ07P.js";import{f as Ie,c as ft,J as V,e as Z}from"./index-TEcp7-f6.js";import{I as xe}from"./tokens-D1_9ZFxB.js";import{s as bt}from"./hover-oeJgWZ71.js";import{I as ee}from"./tokens-BHMD_ju9.js";import"./hoverbox-CStlKQWE.js";import"./Output-B9XAhyoF.js";import"./index-DQQXY-7d.js";import"./index-BqMoyzEk.js";import"./color-CG7_7V2-.js";import"./isEqual-CGLTk7wU.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-BJhxZF_K.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-CYOVwk1t.js";import"./NotebookSkeleton-CI7ovjNW.js";import"./Avatar-9MpXENSs.js";import"./renderer-Ba0Cwb4p.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-CoHussa9.js";import"./index-jh9S19of.js";import"./KernelVariables-CGQkS5EX.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-rtMQZWHQ.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-CGQDY041.js";import"./sessions-DQkTozai.js";import"./tokens-DTIgYcNS.js";import"./drivecontents-CxwZz_5W.js";import"./kernel-BI-BLP-K.js";const yt=Me.bindprops({stylesheet:"commandPaletteHeader",className:"jp-icon-hoverShow-content"});var Q;(function(e){class n extends me.Renderer{renderHeader(s){const r=this.formatHeader(s);return z.li({className:te("lm-CommandPalette-header","jp-icon-hoverShow")},r,z.span(yt))}renderItemIcon(s){const r=this.createIconClass(s);return s.item.isToggled?z.div({className:r},We,s.item.iconLabel):z.div({className:r},s.item.icon,s.item.iconLabel)}createIconClass(s){return te(De.styleClass({stylesheet:"commandPaletteItem"}),s.item.iconClass,"lm-CommandPalette-itemIcon")}}e.Renderer=n,e.defaultRenderer=new n})(Q||(Q={}));const ce="help:open",vt="/lab/api/news",_t="/lab/api/update",G="https://jupyterlab.readthedocs.io/en/4.5.x/privacy_policies.html";async function le(e,n={},c){const s=c??W.ServerConnection.makeSettings(),r=S.URLExt.join(s.baseUrl,e);let t;try{t=await W.ServerConnection.makeRequest(r,n,s)}catch(g){throw new W.ServerConnection.NetworkError(g)}const a=await t.json();if(!t.ok)throw new W.ServerConnection.ResponseError(t,a.message);return a}const Ne={id:"@jupyterlab/apputils-extension:announcements",description:"Add the announcement feature. It will fetch news on the internet and check for application updates.",autoStart:!0,optional:[W.IConfigSectionManager,L,E],activate:(e,n,c,s)=>{var r,t;const a=Ne.id.replace(/[^\w]/g,"");Promise.all([e.restored,(r=c?.load("@jupyterlab/apputils-extension:notification"))!==null&&r!==void 0?r:Promise.resolve(null),(t=n?.create({name:a}))!==null&&t!==void 0?t:Promise.resolve(null)]).then(async([g,u,l])=>{const i=(s??R).load("jupyterlab");if(x.manager.changed.connect((f,m)=>{var o;if(m.type!=="removed")return;const{id:p,tags:b}=(o=m.notification.options.data)!==null&&o!==void 0?o:{};if((b??[]).some(y=>["news","update"].includes(y))&&p){const y={};y[p]={seen:!0,dismissed:!0},l?.update(y).catch(_=>{console.error(`Failed to update the announcements config:
1
+ import{gV as Re,gW as me,gX as z,c4 as te,dH as We,gY as De,l as W,ai as E,ak as M,cF as x,b_ as S,cy as $e,cN as Be,gZ as ze,ca as D,dE as ne,am as Ue,an as oe,r as v,dN as pe,ag as he,b$ as qe,g_ as ae,dd as se,cH as ge,g$ as He,aW as fe,_ as Ke,gT as Je,h0 as Ve,ae as be,h1 as Ge,cb as Qe,cG as ye,cx as $,h2 as ve,d9 as Ye,dK as _e,ac as Xe,cZ as Ze,c_ as we,h3 as ie,ci as et,ch as U,gS as re,gL as tt,dJ as nt,h4 as ot}from"../datalayer-app-main.js";import{I as L,a as ke}from"./tokens-BHLmeqjP.js";import{h as Se,b as B,L as F,G as at,T as st,i as it,f as Ce,j as rt,K as ct,R as lt,k as Te,l as je,m as dt,I as ut,n as mt,c as pt,e as Ee,a as ht,W as gt}from"./index-D2V9YBSL.js";import{f as Ie,c as ft,J as V,e as Z}from"./index-DmlogZBL.js";import{I as xe}from"./tokens-D1_9ZFxB.js";import{s as bt}from"./hover-oeJgWZ71.js";import{I as ee}from"./tokens-BHMD_ju9.js";import"./hoverbox-CStlKQWE.js";import"./Output-B4b0TC6x.js";import"./index-TzvZ9g2T.js";import"./index-I5uUezOA.js";import"./color-CG7_7V2-.js";import"./isEqual-BxgGIFfN.js";import"./defaultLocale-5voVPcsN.js";import"./index-DbMBnR4l.js";import"./KebabHorizontalIcon-CXDXtkuL.js";import"./PaintbrushIcon-CLU8RilX.js";import"./index-BJhxZF_K.js";import"./RestartIcon-Ca6_HoK0.js";import"./CellSidebarExtension-D4_DkfUV.js";import"./NotebookSkeleton-CI7ovjNW.js";import"./Avatar-9MpXENSs.js";import"./renderer-B7ulbNbj.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-CoHussa9.js";import"./index-Crj6AD3D.js";import"./KernelVariables-cBMhcW1H.js";import"./index-BvgsWH_d.js";import"./SortDescIcon-CS4EzHeS.js";import"./NotebookToolbar-rtMQZWHQ.js";import"./RepoPushIcon-Cm8g9NuL.js";import"./Toolbar-CGQDY041.js";import"./sessions-D0uw83Dx.js";import"./tokens-DTIgYcNS.js";import"./drivecontents-CxwZz_5W.js";import"./kernel-BI-BLP-K.js";const yt=Re.bindprops({stylesheet:"commandPaletteHeader",className:"jp-icon-hoverShow-content"});var Q;(function(e){class n extends me.Renderer{renderHeader(s){const r=this.formatHeader(s);return z.li({className:te("lm-CommandPalette-header","jp-icon-hoverShow")},r,z.span(yt))}renderItemIcon(s){const r=this.createIconClass(s);return s.item.isToggled?z.div({className:r},We,s.item.iconLabel):z.div({className:r},s.item.icon,s.item.iconLabel)}createIconClass(s){return te(De.styleClass({stylesheet:"commandPaletteItem"}),s.item.iconClass,"lm-CommandPalette-itemIcon")}}e.Renderer=n,e.defaultRenderer=new n})(Q||(Q={}));const ce="help:open",vt="/lab/api/news",_t="/lab/api/update",G="https://jupyterlab.readthedocs.io/en/4.5.x/privacy_policies.html";async function le(e,n={},c){const s=c??W.ServerConnection.makeSettings(),r=S.URLExt.join(s.baseUrl,e);let t;try{t=await W.ServerConnection.makeRequest(r,n,s)}catch(g){throw new W.ServerConnection.NetworkError(g)}const a=await t.json();if(!t.ok)throw new W.ServerConnection.ResponseError(t,a.message);return a}const Ne={id:"@jupyterlab/apputils-extension:announcements",description:"Add the announcement feature. It will fetch news on the internet and check for application updates.",autoStart:!0,optional:[W.IConfigSectionManager,L,E],activate:(e,n,c,s)=>{var r,t;const a=Ne.id.replace(/[^\w]/g,"");Promise.all([e.restored,(r=c?.load("@jupyterlab/apputils-extension:notification"))!==null&&r!==void 0?r:Promise.resolve(null),(t=n?.create({name:a}))!==null&&t!==void 0?t:Promise.resolve(null)]).then(async([g,u,l])=>{const i=(s??M).load("jupyterlab");if(x.manager.changed.connect((f,m)=>{var o;if(m.type!=="removed")return;const{id:p,tags:b}=(o=m.notification.options.data)!==null&&o!==void 0?o:{};if((b??[]).some(y=>["news","update"].includes(y))&&p){const y={};y[p]={seen:!0,dismissed:!0},l?.update(y).catch(_=>{console.error(`Failed to update the announcements config:
2
2
  ${_}`)})}}),u?.get("fetchNews").composite==="none"){const f=x.emit(i.__("Would you like to get notified about official Jupyter news?"),"default",{autoClose:!1,actions:[{label:i.__("Open privacy policy"),caption:G,callback:m=>{m.preventDefault(),e.commands.hasCommand(ce)?e.commands.execute(ce,{text:i.__("Privacy policies"),url:G}):window.open(G,"_blank","noreferrer")},displayType:"link"},{label:i.__("Yes"),callback:()=>{x.dismiss(f),l?.update({}).then(()=>h()).catch(m=>{console.error(`Failed to get the news:
3
3
  ${m}`)}),u?.set("fetchNews","true").catch(m=>{console.error(`Failed to save setting 'fetchNews':
4
4
  ${m}`)})}},{label:i.__("No"),callback:()=>{x.dismiss(f),u?.set("fetchNews","false").catch(m=>{console.error(`Failed to save setting 'fetchNews':
5
5
  ${m}`)})}}]})}else await h();async function h(){var f,m,o,p;if(((f=u?.get("fetchNews").composite)!==null&&f!==void 0?f:"false")==="true")try{const b=await le(vt,{},e.serviceManager.serverSettings);for(const{link:y,message:_,type:w,options:k}of b.news){const T=k.data.id,I=(m=l?.data[T])!==null&&m!==void 0?m:{seen:!1,dismissed:!1};if(!I.dismissed){if(k.actions=[{label:i.__("Hide"),caption:i.__("Never show this notification again."),callback:()=>{const A={};A[T]={seen:!0,dismissed:!0},l?.update(A).catch(O=>{console.error(`Failed to update the announcements config:
6
6
  ${O}`)})}}],y?.length===2&&k.actions.push({label:y[0],caption:y[1],callback:()=>{window.open(y[1],"_blank","noreferrer")},displayType:"link"}),!I.seen){k.autoClose=5e3;const A={};A[T]={seen:!0},l?.update(A).catch(O=>{console.error(`Failed to update the announcements config:
7
- ${O}`)})}x.emit(_,w,k)}}}catch(b){console.log("Failed to get the announcements.",b)}if(!((o=u?.get("checkForUpdates").composite)!==null&&o!==void 0)||o){const b=await le(_t,{},e.serviceManager.serverSettings);if(b.notification){const{link:y,message:_,type:w,options:k}=b.notification,T=k.data.id,I=(p=l?.data[T])!==null&&p!==void 0?p:{seen:!1,dismissed:!1};if(!I.dismissed){let A;if(k.actions=[{label:i.__("Ignore all updates"),caption:i.__("Do not prompt me if a new JupyterLab version is available."),callback:()=>{u?.set("checkForUpdates",!1).then(()=>{x.dismiss(A)}).catch(O=>{console.error("Failed to set the `checkForUpdates` setting.",O)})}}],y?.length===2&&k.actions.push({label:y[0],caption:y[1],callback:()=>{window.open(y[1],"_blank","noreferrer")},displayType:"accent"}),!I.seen){k.autoClose=5e3;const O={};O[T]={seen:!0},l?.update(O).catch(Re=>{console.error(`Failed to update the announcements config:
8
- ${Re}`)})}A=x.emit(_,w,k)}}}}})}};var P;(function(e){e.licenses="apputils:licenses",e.licenseReport="apputils:license-report",e.refreshLicenses="apputils:licenses-refresh"})(P||(P={}));const wt={id:"@jupyterlab/apputils-extension:licenses-client",description:"The licenses client plugin for fetching licenses.",autoStart:!0,provides:Se,activate:e=>{const n=e.serviceManager.serverSettings;return new F.LicensesClient({serverSettings:n})}},kt={id:"@jupyterlab/apputils-extension:licenses-plugin",description:"Adds licenses reporting tools.",requires:[Se,E],optional:[Ie,xe,B],autoStart:!0,activate:(e,n,c,s,r,t)=>{const{commands:a,shell:g}=e,u=c.load("jupyterlab"),l=u.__("Help"),i=u.__("Download All Licenses as"),d=u.__("Refresh Licenses"),h="help-licenses",f=new $e({namespace:h}),m=u.__("Licenses");let o=0;function p(y){const _=new F.Model({...y,client:n,trans:u}),w=new F({model:_});w.id=`${h}-${++o}`,w.title.label=m,w.title.icon=ze;const k=new D({content:w,reveal:_.licensesReady});k.toolbar.addItem("refresh-licenses",new ne({id:P.refreshLicenses,args:{noLabel:1},commands:a})),k.toolbar.addItem("spacer",Ue.createSpacerItem());for(const T of Object.keys(F.REPORT_FORMATS)){const I=new ne({id:P.licenseReport,args:{format:T,noLabel:1},commands:a});k.toolbar.addItem(`download-${T}`,I)}return k}function b(y){return F.REPORT_FORMATS[y]||F.REPORT_FORMATS[F.DEFAULT_FORMAT]}a.addCommand(P.licenses,{label:m,describedBy:{args:{type:"object",properties:{}}},execute:y=>{if(!S.PageConfig.getOption("licensesUrl")){console.warn("No license API available from the server");return}const _=p(y);return g.add(_,"main",{type:"Licenses"}),f.add(_),_.content.model.trackerDataChanged.connect(()=>{f.save(_)}),_}}),a.addCommand(P.refreshLicenses,{label:y=>y.noLabel?"":d,caption:d,icon:Be,describedBy:{args:{type:"object",properties:{noLabel:{oneOf:[{type:"boolean"},{type:"number"}],description:"Whether to hide the label (truthy values hide label)"}}}},execute:async()=>{var y;return(y=f.currentWidget)===null||y===void 0?void 0:y.content.model.initLicenses()}}),a.addCommand(P.licenseReport,{label:y=>{if(y.noLabel)return"";const _=b(`${y.format}`);return`${i} ${_.title}`},caption:y=>{const _=b(`${y.format}`);return`${i} ${_.title}`},icon:y=>b(`${y.format}`).icon,describedBy:{args:{type:"object",properties:{format:{type:"string",description:u.__("The report format to use for download")},noLabel:{oneOf:[{type:"boolean"},{type:"number"}],description:"Whether to hide the label (truthy values hide label)"}},required:["format"]}},execute:async y=>{var _;const w=b(`${y.format}`);return await((_=f.currentWidget)===null||_===void 0?void 0:_.content.model.download({format:w.id}))}}),t&&t.addItem({command:P.licenses,category:l}),r&&r.helpMenu.addGroup([{command:P.licenses}],0),s&&s.restore(f,{command:P.licenses,name:y=>"licenses",args:y=>{const{currentBundleName:_,currentPackageIndex:w,packageFilter:k}=y.content.model;return{currentBundleName:_,currentPackageIndex:w,packageFilter:k}}})}},St="jp-Notification-Toast-Close",Ct="jp-Notification-Toast-Close-Margin",de=140;var M;(function(e){e.dismiss="apputils:dismiss-notification",e.display="apputils:display-notifications",e.notify="apputils:notify",e.update="apputils:update-notification"})(M||(M={}));const Tt=4;function jt(e){const{manager:n,onClose:c,trans:s}=e,[r,t]=v.useState([]),[a,g]=v.useState(null);return v.useEffect(()=>{async function u(){t(await Promise.all(n.notifications.map(async l=>Object.freeze({...l}))))}return r.length!==n.count&&u(),n.changed.connect(u),()=>{n.changed.disconnect(u)}},[n]),v.useEffect(()=>{N.getIcons().then(u=>{g(u)}).catch(u=>{console.error(`Failed to get react-toastify icons:
9
- ${u}`)})},[]),v.createElement(pe,{signal:n.changed},()=>v.createElement(v.Fragment,null,v.createElement("h2",{className:"jp-Notification-Header jp-Toolbar"},v.createElement("span",{className:"jp-Toolbar-item"},n.count>0?s._n("%1 notification","%1 notifications",n.count):s.__("No notifications")),v.createElement("span",{className:"jp-Toolbar-item jp-Toolbar-spacer"}),v.createElement(ae,{noFocusOnClick:!1,onClick:()=>{n.dismiss()},icon:se,tooltip:s.__("Dismiss all notifications"),enabled:n.count>0}),v.createElement(ae,{noFocusOnClick:!1,onClick:c,icon:ge,tooltip:s.__("Hide notifications")})),v.createElement("ol",{className:"jp-Notification-List"},r.map(u=>{var l;const{id:i,message:d,type:h,options:f}=u,m=h==="in-progress"?"default":h,o=()=>{n.dismiss(i)},p=h==="default"?null:h==="in-progress"?(l=a?.spinner)!==null&&l!==void 0?l:null:a&&a[h];return v.createElement("li",{className:"jp-Notification-List-Item",key:u.id,onClick:b=>{b.stopPropagation()}},v.createElement("div",{className:`Toastify__toast Toastify__toast-theme--light Toastify__toast--${m} jp-Notification-Toast-${m}`},v.createElement("div",{className:"Toastify__toast-body"},p&&v.createElement("div",{className:"Toastify__toast-icon"},p({theme:"light",type:m})),v.createElement("div",null,N.createContent(d,o,f.actions))),v.createElement(N.CloseButton,{close:o,closeIcon:se.react,title:s.__("Dismiss notification"),closeIconMargin:!0})))}))))}class Et extends qe{constructor(n){super(),this.manager=n,this._highlight=!1,this._listOpened=!1,this._doNotDisturbMode=!1,this._count=n.count,this.manager.changed.connect(this.onNotificationChanged,this)}get count(){return this._count}get doNotDisturbMode(){return this._doNotDisturbMode}set doNotDisturbMode(n){this._doNotDisturbMode=n}get highlight(){return this._highlight}get listOpened(){return this._listOpened}set listOpened(n){this._listOpened=n,(this._listOpened||this._highlight)&&(this._highlight=!1),this.stateChanged.emit()}onNotificationChanged(n,c){this._count=this.manager.count;const{autoClose:s}=c.notification.options,r=this.doNotDisturbMode||typeof s=="number"&&s<=0;!this._listOpened&&c.type!=="removed"&&r&&(this._highlight=!0),this.stateChanged.emit()}}function It(e){return v.createElement(at,{role:"button",tabIndex:0,"aria-haspopup":!0,spacing:Tt,onClick:()=>{e.onClick()},onKeyDown:n=>{(n.key==="Enter"||n.key===" ")&&e.onClick()},title:e.count>0?e.trans._n("%1 notification","%1 notifications",e.count):e.trans.__("No notifications")},v.createElement(st,{className:"jp-Notification-Status-Text",source:`${e.count}`}),v.createElement(He.react,{top:"2px",stylesheet:"statusBar"}))}const Y={id:"@jupyterlab/apputils-extension:notification",description:"Add the notification center and its status indicator.",autoStart:!0,optional:[ee,L,E],activate:(e,n,c,s)=>{N.translator=s??R;const r=N.translator.load("jupyterlab"),t=new Et(x.manager);t.doNotDisturbMode=!1,c&&Promise.all([c.load(Y.id),e.restored]).then(([d])=>{const h=()=>{t.doNotDisturbMode=d.get("doNotDisturbMode").composite};h(),d.changed.connect(h)}),e.commands.addCommand(M.notify,{label:r.__("Emit a notification"),caption:r.__("Notification is described by {message: string, type?: string, options?: {autoClose?: number | false, actions: {label: string, commandId: string, args?: ReadOnlyJSONObject, caption?: string, className?: string}[], data?: ReadOnlyJSONValue}}."),describedBy:{args:{type:"object",properties:{message:{type:"string",description:"The notification message text"},type:{type:"string",description:'The notification type (e.g., "default", "info", "warning", "error")'},options:{type:"object",description:"Additional notification options",properties:{autoClose:{oneOf:[{type:"number"},{type:"boolean"}],description:"Auto-close timeout in milliseconds, or false to disable"},actions:{type:"array",description:"Array of action buttons for the notification",items:{type:"object",properties:{label:{type:"string",description:"The action button label"},commandId:{type:"string",description:"The command ID to execute when clicked"},args:{description:"Arguments to pass to the command"},caption:{type:"string",description:"The action button caption/tooltip"},className:{type:"string",description:"CSS class name for the action button"}},required:["label","commandId"]}},data:{description:"Additional data associated with the notification"}}}},required:["message"]}},execute:d=>{var h;const{message:f,type:m}=d,o=(h=d.options)!==null&&h!==void 0?h:{};return x.manager.notify(f,m??"default",{...o,actions:o.actions?o.actions.map(p=>({...p,callback:()=>{e.commands.execute(p.commandId,p.args).catch(b=>{console.error(`Failed to executed '${p.commandId}':
10
- ${b}`)})}})):null})}}),e.commands.addCommand(M.update,{label:r.__("Update a notification"),caption:r.__("Notification is described by {id: string, message: string, type?: string, options?: {autoClose?: number | false, actions: {label: string, commandId: string, args?: ReadOnlyJSONObject, caption?: string, className?: string}[], data?: ReadOnlyJSONValue}}."),describedBy:{args:{type:"object",properties:{id:{type:"string",description:"The notification ID to update"},message:{type:"string",description:"The notification message text"},type:{type:"string",description:'The notification type (e.g., "default", "info", "warning", "error")'},options:{type:"object",description:"Additional notification options",properties:{autoClose:{oneOf:[{type:"number"},{type:"boolean"}],description:"Auto-close timeout in milliseconds, or false to disable"},actions:{type:"array",description:"Array of action buttons for the notification",items:{type:"object",properties:{label:{type:"string",description:"The action button label"},commandId:{type:"string",description:"The command ID to execute when clicked"},args:{description:"Arguments to pass to the command"},caption:{type:"string",description:"The action button caption/tooltip"},className:{type:"string",description:"CSS class name for the action button"}},required:["label","commandId"]}},data:{description:"Additional data associated with the notification"}}}},required:["id","message"]}},execute:d=>{const{id:h,message:f,type:m,...o}=d;return x.manager.update({id:h,message:f,type:m??"default",...o,actions:o.actions?o.actions.map(p=>({...p,callback:()=>{e.commands.execute(p.commandId,p.args).catch(b=>{console.error(`Failed to executed '${p.commandId}':
11
- ${b}`)})}})):null})}}),e.commands.addCommand(M.dismiss,{label:r.__("Dismiss a notification"),describedBy:{args:{type:"object",properties:{id:{type:"string",description:"The notification ID to dismiss"}},required:["id"]}},execute:d=>{const{id:h}=d;x.manager.dismiss(h)}});let a=null;t.listOpened=!1;const g=oe.create(v.createElement(jt,{manager:x.manager,onClose:()=>{a?.dispose()},trans:r}));g.addClass("jp-Notification-Center");async function u(d,h){var f;if(t.doNotDisturbMode||a!==null&&!a.isDisposed)return;const{message:m,type:o,options:p,id:b}=h.notification;if(!(typeof p.autoClose=="number"&&p.autoClose<=0))switch(h.type){case"added":await N.createToast(b,m,o,p);break;case"updated":{const y=await N.toast(),_=p.actions,w=(f=p.autoClose)!==null&&f!==void 0?f:_&&_.length>0?!1:null;if(y.isActive(b)){const k=()=>{y.dismiss(b),d.dismiss(b)};y.update(b,{type:o==="in-progress"?null:o,isLoading:o==="in-progress",autoClose:w,render:N.createContent(m,k,p.actions)})}else await N.createToast(b,m,o,p)}break;case"removed":await N.toast().then(y=>{y.dismiss(b)});break}}x.manager.changed.connect(u);const l=()=>{a?(a.dispose(),a=null):(a=bt({body:g,anchor:i,align:"right",hasDynamicSize:!0,startHidden:!0}),N.toast().then(d=>{d.dismiss()}).catch(d=>{console.error(`Failed to dismiss all toasts:
12
- ${d}`)}).finally(()=>{a?.launch(),g.node.focus(),a?.disposed.connect(()=>{t.listOpened=!1,a=null})})),t.listOpened=a!==null};e.commands.addCommand(M.display,{label:r.__("Show Notifications"),describedBy:{args:{type:"object",properties:{}}},execute:l});const i=oe.create(v.createElement(pe,{signal:t.stateChanged},()=>(t.highlight||a&&!a.isDisposed?i.addClass("jp-mod-selected"):i.removeClass("jp-mod-selected"),v.createElement(It,{count:t.count,highlight:t.highlight,trans:r,onClick:l}))));i.addClass("jp-Notification-Status"),n?n.registerStatusItem(Y.id,{item:i,align:"right",rank:-1}):(i.addClass("jp-ThemedContainer"),i.node.style.position="fixed",i.node.style.bottom="0",i.node.style.right="10px",he.attach(i,document.body),i.show())}};var N;(function(e){e.translator=R;let n=null;function c(d){var h;return v.createElement("button",{className:`jp-Button jp-mod-minimal ${St}${d.closeIconMargin?` ${Ct}`:""}`,title:(h=d.title)!==null&&h!==void 0?h:"",onClick:d.close},v.createElement(d.closeIcon,{className:"jp-icon-hover",tag:"span"}))}e.CloseButton=c;function s(d){const h=e.translator.load("jupyterlab");return v.createElement(c,{close:d.closeToast,closeIcon:ge.react,title:h.__("Hide notification")})}let r=null;async function t(){if(r===null?r=new fe:await r.promise,n===null){n=await Ke(()=>import("./react-toastify.esm-DL_lfg0d.js"),[],import.meta.url);const d=document.body.appendChild(document.createElement("div"));d.id="react-toastify-container",d.classList.add("jp-ThemedContainer"),Je.createRoot(d).render(v.createElement(n.ToastContainer,{draggable:!1,closeOnClick:!1,hideProgressBar:!0,newestOnTop:!0,pauseOnFocusLoss:!0,pauseOnHover:!0,position:"bottom-right",className:"jp-toastContainer",transition:n.Slide,closeButton:s})),r.resolve()}return n.toast}e.toast=t;async function a(){return n===null&&await t(),n.Icons}e.getIcons=a;const g={accent:"jp-mod-accept",link:"jp-mod-link",warn:"jp-mod-warn",default:""};function u({action:d,closeToast:h}){var f,m;const o=b=>{d.callback(b),b.defaultPrevented||h()},p=["jp-toast-button",g[(f=d.displayType)!==null&&f!==void 0?f:"default"]].join(" ");return v.createElement(Ve,{title:(m=d.caption)!==null&&m!==void 0?m:d.label,className:p,onClick:o,small:!0},d.label)}function l(d,h,f){var m;const o=d.length>de?d.slice(0,de)+"…":d;return v.createElement(v.Fragment,null,v.createElement("div",{className:"jp-toast-message"},o.split(`
13
- `).map((p,b)=>v.createElement(v.Fragment,{key:`part-${b}`},b>0?v.createElement("br",null):null,p))),((m=f?.length)!==null&&m!==void 0?m:0)>0&&v.createElement("div",{className:"jp-toast-buttonBar"},v.createElement("div",{className:"jp-toast-spacer"}),f.map((p,b)=>v.createElement(u,{key:"button-"+b,action:p,closeToast:h}))))}e.createContent=l;async function i(d,h,f,m={}){const{actions:o,autoClose:p,data:b}=m,y=await t(),_={autoClose:p??(o&&o.length>0?!1:void 0),data:b,className:`jp-Notification-Toast-${f}`,toastId:d,type:f==="in-progress"?null:f,isLoading:f==="in-progress"};return y(({closeToast:w})=>l(h,()=>{w&&w(),x.manager.dismiss(d)},o),_)}e.createToast=i})(N||(N={}));var q;(function(e){e.activate="apputils:activate-command-palette"})(q||(q={}));const xt="@jupyterlab/apputils-extension:palette";class H{constructor(n,c){this.translator=c||R;const s=this.translator.load("jupyterlab");this._palette=n,this._palette.title.label="",this._palette.title.caption=s.__("Command Palette")}set placeholder(n){this._palette.inputNode.placeholder=n}get placeholder(){return this._palette.inputNode.placeholder}activate(){this._palette.activate()}addItem(n){const c=this._palette.addItem(n);return new be(()=>{this._palette.removeItem(c)})}}(function(e){function n(s,r,t){const{commands:a,shell:g}=s,u=r.load("jupyterlab"),l=K.createPalette(s,r),i=new it({commandPalette:l,restore:()=>{const f=s.shell.currentWidget;f&&f.activate()}});let d=!1;if(l.node.setAttribute("role","region"),l.node.setAttribute("aria-label",u.__("Command Palette Section")),g.add(l,"left",{rank:300,type:"Command Palette"}),t){const f=t.load(xt),m=o=>{const p=o.get("modal").composite;d&&!p?(l.parent=null,i.detach(),g.add(l,"left",{rank:300,type:"Command Palette"})):!d&&p&&(l.parent=null,i.palette=l,l.show(),i.attach()),d=p};Promise.all([f,s.restored]).then(([o])=>{m(o),o.changed.connect(p=>{m(p)})}).catch(o=>{console.error(o.message)})}const h=()=>{const f=Qe(s.commands.keyBindings,m=>m.command===q.activate);if(f){const m=f.keys.map(ye.formatKeystroke).join(", ");l.title.caption=u.__("Commands (%1)",m)}else l.title.caption=u.__("Commands")};return h(),s.commands.keyBindingChanged.connect(()=>{h()}),a.addCommand(q.activate,{describedBy:{args:{type:"object",properties:{}}},execute:()=>{d?i.activate():g.activateById(l.id)},label:u.__("Activate Command Palette")}),l.inputNode.placeholder=u.__("SEARCH"),new e(l,r)}e.activate=n;function c(s,r,t){const a=K.createPalette(s,t);r.add(a,"command-palette")}e.restore=c})(H||(H={}));var K;(function(e){let n;function c(s,r){if(!n){n=new me({commands:s.commands,renderer:Q.defaultRenderer}),n.id="command-palette",n.title.icon=Ge;const t=r.load("jupyterlab");n.title.label=t.__("Commands")}return n}e.createPalette=c})(K||(K={}));class Pe extends $.DataConnector{constructor(n){super(),this._throttlers=Object.create(null),this._connector=n}fetch(n){const c=this._throttlers;return n in c||(c[n]=new ve(()=>this._connector.fetch(n),100)),c[n].invoke()}async list(n="all"){const{isDisabled:c}=S.PageConfig.Extension,{ids:s,values:r}=await this._connector.list(n==="ids"?"ids":void 0);return n==="all"?{ids:s,values:r}:n==="ids"?{ids:s}:{ids:s.filter(t=>!c(t)),values:r.filter(({id:t})=>!c(t))}}async save(n,c){await this._connector.save(n,c)}}const Nt={id:"@jupyterlab/apputils-extension:settings-connector",description:"Provides the settings connector.",autoStart:!0,provides:ke,activate:e=>new Pe(e.serviceManager.settings)},Pt={id:"@jupyterlab/apputils-extension:settings",autoStart:!0,provides:L,optional:[ke],description:"Provides the setting registry.",activate:async(e,n)=>{const{isDisabled:c}=S.PageConfig.Extension,s=n??new Pe(e.serviceManager.settings),r=new Ye({connector:s,plugins:(await s.list("active")).values.filter(t=>e.hasPlugin(t.id))});return e.restored.then(async()=>{(await s.list("ids")).ids.forEach(async a=>{if(!(!e.hasPlugin(a)||c(a)||a in r.plugins))try{await r.load(a)}catch(g){console.warn(`Settings failed to load for (${a})`,g),e.isPluginActivated(a)||console.warn(`If 'jupyter.lab.transform=true' in the plugin schema, this may happen if {autoStart: false} in (${a}) or if it is one of the deferredExtensions in page config.`)}})}),r}},Le={id:"@jupyterlab/apputils-extension:kernel-status",description:"Provides the kernel status indicator model.",autoStart:!0,requires:[ee],provides:rt,optional:[Ce,E,ft],activate:(e,n,c,s,r)=>{const t=s??R,a=c??new _e({translator:t}),g=async()=>{l.model.sessionContext&&await a.selectKernel(l.model.sessionContext)},u=async m=>{if(m.key==="Enter"||m.key==="Spacebar"||m.key===" ")return m.preventDefault(),m.stopPropagation(),g()},l=new ct({onClick:g,onKeyDown:u},t),i=new Set,d=m=>{i.add(m),e.shell.currentWidget&&h(e.shell,{newValue:e.shell.currentWidget,oldValue:null})};function h(m,o){var p;const{oldValue:b,newValue:y}=o;b&&b.title.changed.disconnect(f),l.model.sessionContext=(p=[...i].map(_=>_(o.newValue)).filter(_=>_!==null)[0])!==null&&p!==void 0?p:null,y&&l.model.sessionContext&&(f(y.title),y.title.changed.connect(f))}const f=m=>{l.model.activityName=m.label};return r&&r.currentChanged.connect(h),n.registerStatusItem(Le.id,{priority:1,item:l,align:"left",rank:1,isActive:()=>l.model.sessionContext!==null}),{addSessionProvider:d}}},Ae={id:"@jupyterlab/apputils-extension:running-sessions-status",description:"Add the running sessions and terminals status bar item.",autoStart:!0,requires:[ee,E],optional:[L],activate:(e,n,c,s)=>{const r=a=>{const g=new lt({onClick:()=>e.shell.activateById("jp-running-sessions"),onKeyDown:u=>{(u.key==="Enter"||u.key==="Spacebar"||u.key===" ")&&(u.preventDefault(),u.stopPropagation(),e.shell.activateById("jp-running-sessions"))},serviceManager:e.serviceManager,translator:c,...a});return g.model.sessions=Array.from(e.serviceManager.sessions.running()).length,g.model.terminals=Array.from(e.serviceManager.terminals.running()).length,g},t=a=>{const g=r(a);return n.registerStatusItem(Ae.id,{item:g,align:"left",rank:0})};if(s){let a;const g=(i,d)=>{var h,f;const m={"if-any":void 0,never:!1,always:!0},o=(h=i?.get("showStatusBarItem").composite)!==null&&h!==void 0?h:!0,p=m[(f=d?.get("showStatusBarItem").composite)!==null&&f!==void 0?f:"if-any"];a?.dispose(),(o||p!==!1)&&(a=t({showKernels:o,showTerminals:p}))},u="@jupyterlab/apputils-extension:kernels-settings",l="@jupyterlab/terminal-extension:plugin";Promise.all([u in s.plugins?s.load(u).catch(()=>{}):Promise.resolve(void 0),l in s.plugins?s.load(l).catch(()=>{}):Promise.resolve(void 0)]).then(([i,d])=>{g(i,d),i&&i.changed.connect(h=>{i=h,g(i,d)}),d&&d.changed.connect(h=>{d=h,g(i,d)})})}else t({showKernels:!0})}},Lt={id:"@jupyterlab/apputils-extension:subshell-settings",description:"Kernel subshell settings.",autoStart:!0,requires:[],optional:[L],activate:(e,n)=>{n&&e.started.then(async()=>{const c=await n.load("@jupyterlab/apputils-extension:kernels-settings"),s=c.get("commsOverSubshells").composite;e.serviceManager.kernels.commsOverSubshells=s,c.changed.connect(()=>{const r=c.get("commsOverSubshells").composite;e.serviceManager.kernels.commsOverSubshells=r})}).catch(c=>{console.error("Fail to load settings for the subshells."),console.error(c)})}},At=`/*
7
+ ${O}`)})}x.emit(_,w,k)}}}catch(b){console.log("Failed to get the announcements.",b)}if(!((o=u?.get("checkForUpdates").composite)!==null&&o!==void 0)||o){const b=await le(_t,{},e.serviceManager.serverSettings);if(b.notification){const{link:y,message:_,type:w,options:k}=b.notification,T=k.data.id,I=(p=l?.data[T])!==null&&p!==void 0?p:{seen:!1,dismissed:!1};if(!I.dismissed){let A;if(k.actions=[{label:i.__("Ignore all updates"),caption:i.__("Do not prompt me if a new JupyterLab version is available."),callback:()=>{u?.set("checkForUpdates",!1).then(()=>{x.dismiss(A)}).catch(O=>{console.error("Failed to set the `checkForUpdates` setting.",O)})}}],y?.length===2&&k.actions.push({label:y[0],caption:y[1],callback:()=>{window.open(y[1],"_blank","noreferrer")},displayType:"accent"}),!I.seen){k.autoClose=5e3;const O={};O[T]={seen:!0},l?.update(O).catch(Me=>{console.error(`Failed to update the announcements config:
8
+ ${Me}`)})}A=x.emit(_,w,k)}}}}})}};var P;(function(e){e.licenses="apputils:licenses",e.licenseReport="apputils:license-report",e.refreshLicenses="apputils:licenses-refresh"})(P||(P={}));const wt={id:"@jupyterlab/apputils-extension:licenses-client",description:"The licenses client plugin for fetching licenses.",autoStart:!0,provides:Se,activate:e=>{const n=e.serviceManager.serverSettings;return new F.LicensesClient({serverSettings:n})}},kt={id:"@jupyterlab/apputils-extension:licenses-plugin",description:"Adds licenses reporting tools.",requires:[Se,E],optional:[Ie,xe,B],autoStart:!0,activate:(e,n,c,s,r,t)=>{const{commands:a,shell:g}=e,u=c.load("jupyterlab"),l=u.__("Help"),i=u.__("Download All Licenses as"),d=u.__("Refresh Licenses"),h="help-licenses",f=new $e({namespace:h}),m=u.__("Licenses");let o=0;function p(y){const _=new F.Model({...y,client:n,trans:u}),w=new F({model:_});w.id=`${h}-${++o}`,w.title.label=m,w.title.icon=ze;const k=new D({content:w,reveal:_.licensesReady});k.toolbar.addItem("refresh-licenses",new ne({id:P.refreshLicenses,args:{noLabel:1},commands:a})),k.toolbar.addItem("spacer",Ue.createSpacerItem());for(const T of Object.keys(F.REPORT_FORMATS)){const I=new ne({id:P.licenseReport,args:{format:T,noLabel:1},commands:a});k.toolbar.addItem(`download-${T}`,I)}return k}function b(y){return F.REPORT_FORMATS[y]||F.REPORT_FORMATS[F.DEFAULT_FORMAT]}a.addCommand(P.licenses,{label:m,describedBy:{args:{type:"object",properties:{}}},execute:y=>{if(!S.PageConfig.getOption("licensesUrl")){console.warn("No license API available from the server");return}const _=p(y);return g.add(_,"main",{type:"Licenses"}),f.add(_),_.content.model.trackerDataChanged.connect(()=>{f.save(_)}),_}}),a.addCommand(P.refreshLicenses,{label:y=>y.noLabel?"":d,caption:d,icon:Be,describedBy:{args:{type:"object",properties:{noLabel:{oneOf:[{type:"boolean"},{type:"number"}],description:"Whether to hide the label (truthy values hide label)"}}}},execute:async()=>{var y;return(y=f.currentWidget)===null||y===void 0?void 0:y.content.model.initLicenses()}}),a.addCommand(P.licenseReport,{label:y=>{if(y.noLabel)return"";const _=b(`${y.format}`);return`${i} ${_.title}`},caption:y=>{const _=b(`${y.format}`);return`${i} ${_.title}`},icon:y=>b(`${y.format}`).icon,describedBy:{args:{type:"object",properties:{format:{type:"string",description:u.__("The report format to use for download")},noLabel:{oneOf:[{type:"boolean"},{type:"number"}],description:"Whether to hide the label (truthy values hide label)"}},required:["format"]}},execute:async y=>{var _;const w=b(`${y.format}`);return await((_=f.currentWidget)===null||_===void 0?void 0:_.content.model.download({format:w.id}))}}),t&&t.addItem({command:P.licenses,category:l}),r&&r.helpMenu.addGroup([{command:P.licenses}],0),s&&s.restore(f,{command:P.licenses,name:y=>"licenses",args:y=>{const{currentBundleName:_,currentPackageIndex:w,packageFilter:k}=y.content.model;return{currentBundleName:_,currentPackageIndex:w,packageFilter:k}}})}},St="jp-Notification-Toast-Close",Ct="jp-Notification-Toast-Close-Margin",de=140;var R;(function(e){e.dismiss="apputils:dismiss-notification",e.display="apputils:display-notifications",e.notify="apputils:notify",e.update="apputils:update-notification"})(R||(R={}));const Tt=4;function jt(e){const{manager:n,onClose:c,trans:s}=e,[r,t]=v.useState([]),[a,g]=v.useState(null);return v.useEffect(()=>{async function u(){t(await Promise.all(n.notifications.map(async l=>Object.freeze({...l}))))}return r.length!==n.count&&u(),n.changed.connect(u),()=>{n.changed.disconnect(u)}},[n]),v.useEffect(()=>{N.getIcons().then(u=>{g(u)}).catch(u=>{console.error(`Failed to get react-toastify icons:
9
+ ${u}`)})},[]),v.createElement(pe,{signal:n.changed},()=>v.createElement(v.Fragment,null,v.createElement("h2",{className:"jp-Notification-Header jp-Toolbar"},v.createElement("span",{className:"jp-Toolbar-item"},n.count>0?s._n("%1 notification","%1 notifications",n.count):s.__("No notifications")),v.createElement("span",{className:"jp-Toolbar-item jp-Toolbar-spacer"}),v.createElement(ae,{noFocusOnClick:!1,onClick:()=>{n.dismiss()},icon:se,tooltip:s.__("Dismiss all notifications"),enabled:n.count>0}),v.createElement(ae,{noFocusOnClick:!1,onClick:c,icon:ge,tooltip:s.__("Hide notifications")})),v.createElement("ol",{className:"jp-Notification-List"},r.map(u=>{var l;const{id:i,message:d,type:h,options:f}=u,m=h==="in-progress"?"default":h,o=()=>{n.dismiss(i)},p=h==="default"?null:h==="in-progress"?(l=a?.spinner)!==null&&l!==void 0?l:null:a&&a[h];return v.createElement("li",{className:"jp-Notification-List-Item",key:u.id,onClick:b=>{b.stopPropagation()}},v.createElement("div",{className:`Toastify__toast Toastify__toast-theme--light Toastify__toast--${m} jp-Notification-Toast-${m}`},v.createElement("div",{className:"Toastify__toast-body"},p&&v.createElement("div",{className:"Toastify__toast-icon"},p({theme:"light",type:m})),v.createElement("div",null,N.createContent(d,o,f.actions))),v.createElement(N.CloseButton,{close:o,closeIcon:se.react,title:s.__("Dismiss notification"),closeIconMargin:!0})))}))))}class Et extends qe{constructor(n){super(),this.manager=n,this._highlight=!1,this._listOpened=!1,this._doNotDisturbMode=!1,this._count=n.count,this.manager.changed.connect(this.onNotificationChanged,this)}get count(){return this._count}get doNotDisturbMode(){return this._doNotDisturbMode}set doNotDisturbMode(n){this._doNotDisturbMode=n}get highlight(){return this._highlight}get listOpened(){return this._listOpened}set listOpened(n){this._listOpened=n,(this._listOpened||this._highlight)&&(this._highlight=!1),this.stateChanged.emit()}onNotificationChanged(n,c){this._count=this.manager.count;const{autoClose:s}=c.notification.options,r=this.doNotDisturbMode||typeof s=="number"&&s<=0;!this._listOpened&&c.type!=="removed"&&r&&(this._highlight=!0),this.stateChanged.emit()}}function It(e){return v.createElement(at,{role:"button",tabIndex:0,"aria-haspopup":!0,spacing:Tt,onClick:()=>{e.onClick()},onKeyDown:n=>{(n.key==="Enter"||n.key===" ")&&e.onClick()},title:e.count>0?e.trans._n("%1 notification","%1 notifications",e.count):e.trans.__("No notifications")},v.createElement(st,{className:"jp-Notification-Status-Text",source:`${e.count}`}),v.createElement(He.react,{top:"2px",stylesheet:"statusBar"}))}const Y={id:"@jupyterlab/apputils-extension:notification",description:"Add the notification center and its status indicator.",autoStart:!0,optional:[ee,L,E],activate:(e,n,c,s)=>{N.translator=s??M;const r=N.translator.load("jupyterlab"),t=new Et(x.manager);t.doNotDisturbMode=!1,c&&Promise.all([c.load(Y.id),e.restored]).then(([d])=>{const h=()=>{t.doNotDisturbMode=d.get("doNotDisturbMode").composite};h(),d.changed.connect(h)}),e.commands.addCommand(R.notify,{label:r.__("Emit a notification"),caption:r.__("Notification is described by {message: string, type?: string, options?: {autoClose?: number | false, actions: {label: string, commandId: string, args?: ReadOnlyJSONObject, caption?: string, className?: string}[], data?: ReadOnlyJSONValue}}."),describedBy:{args:{type:"object",properties:{message:{type:"string",description:"The notification message text"},type:{type:"string",description:'The notification type (e.g., "default", "info", "warning", "error")'},options:{type:"object",description:"Additional notification options",properties:{autoClose:{oneOf:[{type:"number"},{type:"boolean"}],description:"Auto-close timeout in milliseconds, or false to disable"},actions:{type:"array",description:"Array of action buttons for the notification",items:{type:"object",properties:{label:{type:"string",description:"The action button label"},commandId:{type:"string",description:"The command ID to execute when clicked"},args:{description:"Arguments to pass to the command"},caption:{type:"string",description:"The action button caption/tooltip"},className:{type:"string",description:"CSS class name for the action button"}},required:["label","commandId"]}},data:{description:"Additional data associated with the notification"}}}},required:["message"]}},execute:d=>{var h;const{message:f,type:m}=d,o=(h=d.options)!==null&&h!==void 0?h:{};return x.manager.notify(f,m??"default",{...o,actions:o.actions?o.actions.map(p=>({...p,callback:()=>{e.commands.execute(p.commandId,p.args).catch(b=>{console.error(`Failed to executed '${p.commandId}':
10
+ ${b}`)})}})):null})}}),e.commands.addCommand(R.update,{label:r.__("Update a notification"),caption:r.__("Notification is described by {id: string, message: string, type?: string, options?: {autoClose?: number | false, actions: {label: string, commandId: string, args?: ReadOnlyJSONObject, caption?: string, className?: string}[], data?: ReadOnlyJSONValue}}."),describedBy:{args:{type:"object",properties:{id:{type:"string",description:"The notification ID to update"},message:{type:"string",description:"The notification message text"},type:{type:"string",description:'The notification type (e.g., "default", "info", "warning", "error")'},options:{type:"object",description:"Additional notification options",properties:{autoClose:{oneOf:[{type:"number"},{type:"boolean"}],description:"Auto-close timeout in milliseconds, or false to disable"},actions:{type:"array",description:"Array of action buttons for the notification",items:{type:"object",properties:{label:{type:"string",description:"The action button label"},commandId:{type:"string",description:"The command ID to execute when clicked"},args:{description:"Arguments to pass to the command"},caption:{type:"string",description:"The action button caption/tooltip"},className:{type:"string",description:"CSS class name for the action button"}},required:["label","commandId"]}},data:{description:"Additional data associated with the notification"}}}},required:["id","message"]}},execute:d=>{const{id:h,message:f,type:m,...o}=d;return x.manager.update({id:h,message:f,type:m??"default",...o,actions:o.actions?o.actions.map(p=>({...p,callback:()=>{e.commands.execute(p.commandId,p.args).catch(b=>{console.error(`Failed to executed '${p.commandId}':
11
+ ${b}`)})}})):null})}}),e.commands.addCommand(R.dismiss,{label:r.__("Dismiss a notification"),describedBy:{args:{type:"object",properties:{id:{type:"string",description:"The notification ID to dismiss"}},required:["id"]}},execute:d=>{const{id:h}=d;x.manager.dismiss(h)}});let a=null;t.listOpened=!1;const g=oe.create(v.createElement(jt,{manager:x.manager,onClose:()=>{a?.dispose()},trans:r}));g.addClass("jp-Notification-Center");async function u(d,h){var f;if(t.doNotDisturbMode||a!==null&&!a.isDisposed)return;const{message:m,type:o,options:p,id:b}=h.notification;if(!(typeof p.autoClose=="number"&&p.autoClose<=0))switch(h.type){case"added":await N.createToast(b,m,o,p);break;case"updated":{const y=await N.toast(),_=p.actions,w=(f=p.autoClose)!==null&&f!==void 0?f:_&&_.length>0?!1:null;if(y.isActive(b)){const k=()=>{y.dismiss(b),d.dismiss(b)};y.update(b,{type:o==="in-progress"?null:o,isLoading:o==="in-progress",autoClose:w,render:N.createContent(m,k,p.actions)})}else await N.createToast(b,m,o,p)}break;case"removed":await N.toast().then(y=>{y.dismiss(b)});break}}x.manager.changed.connect(u);const l=()=>{a?(a.dispose(),a=null):(a=bt({body:g,anchor:i,align:"right",hasDynamicSize:!0,startHidden:!0}),N.toast().then(d=>{d.dismiss()}).catch(d=>{console.error(`Failed to dismiss all toasts:
12
+ ${d}`)}).finally(()=>{a?.launch(),g.node.focus(),a?.disposed.connect(()=>{t.listOpened=!1,a=null})})),t.listOpened=a!==null};e.commands.addCommand(R.display,{label:r.__("Show Notifications"),describedBy:{args:{type:"object",properties:{}}},execute:l});const i=oe.create(v.createElement(pe,{signal:t.stateChanged},()=>(t.highlight||a&&!a.isDisposed?i.addClass("jp-mod-selected"):i.removeClass("jp-mod-selected"),v.createElement(It,{count:t.count,highlight:t.highlight,trans:r,onClick:l}))));i.addClass("jp-Notification-Status"),n?n.registerStatusItem(Y.id,{item:i,align:"right",rank:-1}):(i.addClass("jp-ThemedContainer"),i.node.style.position="fixed",i.node.style.bottom="0",i.node.style.right="10px",he.attach(i,document.body),i.show())}};var N;(function(e){e.translator=M;let n=null;function c(d){var h;return v.createElement("button",{className:`jp-Button jp-mod-minimal ${St}${d.closeIconMargin?` ${Ct}`:""}`,title:(h=d.title)!==null&&h!==void 0?h:"",onClick:d.close},v.createElement(d.closeIcon,{className:"jp-icon-hover",tag:"span"}))}e.CloseButton=c;function s(d){const h=e.translator.load("jupyterlab");return v.createElement(c,{close:d.closeToast,closeIcon:ge.react,title:h.__("Hide notification")})}let r=null;async function t(){if(r===null?r=new fe:await r.promise,n===null){n=await Ke(()=>import("./react-toastify.esm-DL_lfg0d.js"),[],import.meta.url);const d=document.body.appendChild(document.createElement("div"));d.id="react-toastify-container",d.classList.add("jp-ThemedContainer"),Je.createRoot(d).render(v.createElement(n.ToastContainer,{draggable:!1,closeOnClick:!1,hideProgressBar:!0,newestOnTop:!0,pauseOnFocusLoss:!0,pauseOnHover:!0,position:"bottom-right",className:"jp-toastContainer",transition:n.Slide,closeButton:s})),r.resolve()}return n.toast}e.toast=t;async function a(){return n===null&&await t(),n.Icons}e.getIcons=a;const g={accent:"jp-mod-accept",link:"jp-mod-link",warn:"jp-mod-warn",default:""};function u({action:d,closeToast:h}){var f,m;const o=b=>{d.callback(b),b.defaultPrevented||h()},p=["jp-toast-button",g[(f=d.displayType)!==null&&f!==void 0?f:"default"]].join(" ");return v.createElement(Ve,{title:(m=d.caption)!==null&&m!==void 0?m:d.label,className:p,onClick:o,small:!0},d.label)}function l(d,h,f){var m;const o=d.length>de?d.slice(0,de)+"…":d;return v.createElement(v.Fragment,null,v.createElement("div",{className:"jp-toast-message"},o.split(`
13
+ `).map((p,b)=>v.createElement(v.Fragment,{key:`part-${b}`},b>0?v.createElement("br",null):null,p))),((m=f?.length)!==null&&m!==void 0?m:0)>0&&v.createElement("div",{className:"jp-toast-buttonBar"},v.createElement("div",{className:"jp-toast-spacer"}),f.map((p,b)=>v.createElement(u,{key:"button-"+b,action:p,closeToast:h}))))}e.createContent=l;async function i(d,h,f,m={}){const{actions:o,autoClose:p,data:b}=m,y=await t(),_={autoClose:p??(o&&o.length>0?!1:void 0),data:b,className:`jp-Notification-Toast-${f}`,toastId:d,type:f==="in-progress"?null:f,isLoading:f==="in-progress"};return y(({closeToast:w})=>l(h,()=>{w&&w(),x.manager.dismiss(d)},o),_)}e.createToast=i})(N||(N={}));var q;(function(e){e.activate="apputils:activate-command-palette"})(q||(q={}));const xt="@jupyterlab/apputils-extension:palette";class H{constructor(n,c){this.translator=c||M;const s=this.translator.load("jupyterlab");this._palette=n,this._palette.title.label="",this._palette.title.caption=s.__("Command Palette")}set placeholder(n){this._palette.inputNode.placeholder=n}get placeholder(){return this._palette.inputNode.placeholder}activate(){this._palette.activate()}addItem(n){const c=this._palette.addItem(n);return new be(()=>{this._palette.removeItem(c)})}}(function(e){function n(s,r,t){const{commands:a,shell:g}=s,u=r.load("jupyterlab"),l=K.createPalette(s,r),i=new it({commandPalette:l,restore:()=>{const f=s.shell.currentWidget;f&&f.activate()}});let d=!1;if(l.node.setAttribute("role","region"),l.node.setAttribute("aria-label",u.__("Command Palette Section")),g.add(l,"left",{rank:300,type:"Command Palette"}),t){const f=t.load(xt),m=o=>{const p=o.get("modal").composite;d&&!p?(l.parent=null,i.detach(),g.add(l,"left",{rank:300,type:"Command Palette"})):!d&&p&&(l.parent=null,i.palette=l,l.show(),i.attach()),d=p};Promise.all([f,s.restored]).then(([o])=>{m(o),o.changed.connect(p=>{m(p)})}).catch(o=>{console.error(o.message)})}const h=()=>{const f=Qe(s.commands.keyBindings,m=>m.command===q.activate);if(f){const m=f.keys.map(ye.formatKeystroke).join(", ");l.title.caption=u.__("Commands (%1)",m)}else l.title.caption=u.__("Commands")};return h(),s.commands.keyBindingChanged.connect(()=>{h()}),a.addCommand(q.activate,{describedBy:{args:{type:"object",properties:{}}},execute:()=>{d?i.activate():g.activateById(l.id)},label:u.__("Activate Command Palette")}),l.inputNode.placeholder=u.__("SEARCH"),new e(l,r)}e.activate=n;function c(s,r,t){const a=K.createPalette(s,t);r.add(a,"command-palette")}e.restore=c})(H||(H={}));var K;(function(e){let n;function c(s,r){if(!n){n=new me({commands:s.commands,renderer:Q.defaultRenderer}),n.id="command-palette",n.title.icon=Ge;const t=r.load("jupyterlab");n.title.label=t.__("Commands")}return n}e.createPalette=c})(K||(K={}));class Pe extends $.DataConnector{constructor(n){super(),this._throttlers=Object.create(null),this._connector=n}fetch(n){const c=this._throttlers;return n in c||(c[n]=new ve(()=>this._connector.fetch(n),100)),c[n].invoke()}async list(n="all"){const{isDisabled:c}=S.PageConfig.Extension,{ids:s,values:r}=await this._connector.list(n==="ids"?"ids":void 0);return n==="all"?{ids:s,values:r}:n==="ids"?{ids:s}:{ids:s.filter(t=>!c(t)),values:r.filter(({id:t})=>!c(t))}}async save(n,c){await this._connector.save(n,c)}}const Nt={id:"@jupyterlab/apputils-extension:settings-connector",description:"Provides the settings connector.",autoStart:!0,provides:ke,activate:e=>new Pe(e.serviceManager.settings)},Pt={id:"@jupyterlab/apputils-extension:settings",autoStart:!0,provides:L,optional:[ke],description:"Provides the setting registry.",activate:async(e,n)=>{const{isDisabled:c}=S.PageConfig.Extension,s=n??new Pe(e.serviceManager.settings),r=new Ye({connector:s,plugins:(await s.list("active")).values.filter(t=>e.hasPlugin(t.id))});return e.restored.then(async()=>{(await s.list("ids")).ids.forEach(async a=>{if(!(!e.hasPlugin(a)||c(a)||a in r.plugins))try{await r.load(a)}catch(g){console.warn(`Settings failed to load for (${a})`,g),e.isPluginActivated(a)||console.warn(`If 'jupyter.lab.transform=true' in the plugin schema, this may happen if {autoStart: false} in (${a}) or if it is one of the deferredExtensions in page config.`)}})}),r}},Le={id:"@jupyterlab/apputils-extension:kernel-status",description:"Provides the kernel status indicator model.",autoStart:!0,requires:[ee],provides:rt,optional:[Ce,E,ft],activate:(e,n,c,s,r)=>{const t=s??M,a=c??new _e({translator:t}),g=async()=>{l.model.sessionContext&&await a.selectKernel(l.model.sessionContext)},u=async m=>{if(m.key==="Enter"||m.key==="Spacebar"||m.key===" ")return m.preventDefault(),m.stopPropagation(),g()},l=new ct({onClick:g,onKeyDown:u},t),i=new Set,d=m=>{i.add(m),e.shell.currentWidget&&h(e.shell,{newValue:e.shell.currentWidget,oldValue:null})};function h(m,o){var p;const{oldValue:b,newValue:y}=o;b&&b.title.changed.disconnect(f),l.model.sessionContext=(p=[...i].map(_=>_(o.newValue)).filter(_=>_!==null)[0])!==null&&p!==void 0?p:null,y&&l.model.sessionContext&&(f(y.title),y.title.changed.connect(f))}const f=m=>{l.model.activityName=m.label};return r&&r.currentChanged.connect(h),n.registerStatusItem(Le.id,{priority:1,item:l,align:"left",rank:1,isActive:()=>l.model.sessionContext!==null}),{addSessionProvider:d}}},Ae={id:"@jupyterlab/apputils-extension:running-sessions-status",description:"Add the running sessions and terminals status bar item.",autoStart:!0,requires:[ee,E],optional:[L],activate:(e,n,c,s)=>{const r=a=>{const g=new lt({onClick:()=>e.shell.activateById("jp-running-sessions"),onKeyDown:u=>{(u.key==="Enter"||u.key==="Spacebar"||u.key===" ")&&(u.preventDefault(),u.stopPropagation(),e.shell.activateById("jp-running-sessions"))},serviceManager:e.serviceManager,translator:c,...a});return g.model.sessions=Array.from(e.serviceManager.sessions.running()).length,g.model.terminals=Array.from(e.serviceManager.terminals.running()).length,g},t=a=>{const g=r(a);return n.registerStatusItem(Ae.id,{item:g,align:"left",rank:0})};if(s){let a;const g=(i,d)=>{var h,f;const m={"if-any":void 0,never:!1,always:!0},o=(h=i?.get("showStatusBarItem").composite)!==null&&h!==void 0?h:!0,p=m[(f=d?.get("showStatusBarItem").composite)!==null&&f!==void 0?f:"if-any"];a?.dispose(),(o||p!==!1)&&(a=t({showKernels:o,showTerminals:p}))},u="@jupyterlab/apputils-extension:kernels-settings",l="@jupyterlab/terminal-extension:plugin";Promise.all([u in s.plugins?s.load(u).catch(()=>{}):Promise.resolve(void 0),l in s.plugins?s.load(l).catch(()=>{}):Promise.resolve(void 0)]).then(([i,d])=>{g(i,d),i&&i.changed.connect(h=>{i=h,g(i,d)}),d&&d.changed.connect(h=>{d=h,g(i,d)})})}else t({showKernels:!0})}},Lt={id:"@jupyterlab/apputils-extension:subshell-settings",description:"Kernel subshell settings.",autoStart:!0,requires:[],optional:[L],activate:(e,n)=>{n&&e.started.then(async()=>{const c=await n.load("@jupyterlab/apputils-extension:kernels-settings"),s=c.get("commsOverSubshells").composite;e.serviceManager.kernels.commsOverSubshells=s,c.changed.connect(()=>{const r=c.get("commsOverSubshells").composite;e.serviceManager.kernels.commsOverSubshells=r})}).catch(c=>{console.error("Fail to load settings for the subshells."),console.error(c)})}},At=`/*
14
14
  * Copyright (c) Jupyter Development Team.
15
15
  * Distributed under the terms of the Modified BSD License.
16
16
  */
@@ -74,5 +74,5 @@ ${d}`)}).finally(()=>{a?.launch(),g.node.focus(),a?.disposed.connect(()=>{t.list
74
74
  border-top: var(--jp-scrollbar-endpad) solid transparent;
75
75
  border-bottom: var(--jp-scrollbar-endpad) solid transparent;
76
76
  }
77
- `;var C;(function(e){e.changeTheme="apputils:change-theme",e.changePreferredLightTheme="apputils:change-light-theme",e.changePreferredDarkTheme="apputils:change-dark-theme",e.toggleAdaptiveTheme="apputils:adaptive-theme",e.themeScrollbars="apputils:theme-scrollbars",e.changeFont="apputils:change-font",e.incrFontSize="apputils:incr-font-size",e.decrFontSize="apputils:decr-font-size"})(C||(C={}));function Ot(e){const n=document.createElement("style");return n.setAttribute("type","text/css"),n.appendChild(document.createTextNode(e)),n}const Oe={id:"@jupyterlab/apputils-extension:themes",description:"Provides the theme manager.",requires:[L,V.IPaths,E],optional:[je],activate:(e,n,c,s,r)=>{const t=s.load("jupyterlab"),a=e.shell,g=e.commands,u=S.URLExt.join(e.serviceManager.serverSettings.baseUrl,c.urls.themes),l=Oe.id,i=new dt({key:l,host:a,settings:n,splash:r??void 0,url:u});let d=null,h;i.themeChanged.connect((o,p)=>{h=p.newValue,document.body.dataset.jpThemeLight=String(i.isLight(h)),document.body.dataset.jpThemeName=h,document.body.style.colorScheme=i.isLight(h)?"light":"dark",document.body.dataset.jpThemeScrollbars!==String(i.themeScrollbars(h))&&(document.body.dataset.jpThemeScrollbars=String(i.themeScrollbars(h)),i.themeScrollbars(h)?(d||(d=Ot(At)),d.parentElement||document.body.appendChild(d)):d&&d.parentElement&&d.parentElement.removeChild(d)),g.notifyCommandChanged(C.changeTheme)}),g.addCommand(C.changeTheme,{label:o=>{if(o.theme===void 0)return t.__("Switch to the provided `theme`.");const p=o.theme,b=i.getDisplayName(p);return o.isPalette?t.__("Use Theme: %1",b):b},describedBy:{args:{type:"object",properties:{theme:{type:"string",description:t.__("The theme name to switch to")},isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}},required:["theme"]}},isToggled:o=>o.theme===h,execute:o=>{const p=o.theme;if(p!==i.theme)return i.isToggledAdaptiveTheme()?i.toggleAdaptiveTheme():i.setTheme(p)}}),g.addCommand(C.changePreferredLightTheme,{label:o=>{if(o.theme===void 0)return t.__("Switch to the provided light `theme`.");const p=o.theme,b=i.getDisplayName(p);return o.isPalette?t.__("Set Preferred Light Theme: %1",b):b},describedBy:{args:{type:"object",properties:{theme:{type:"string",description:t.__("The preferred light theme name")},isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}},required:["theme"]}},isToggled:o=>o.theme===i.preferredLightTheme,execute:o=>{const p=o.theme;if(p!==i.preferredLightTheme)return i.setPreferredLightTheme(p)}}),g.addCommand(C.changePreferredDarkTheme,{label:o=>{if(o.theme===void 0)return t.__("Switch to the provided dark `theme`.");const p=o.theme,b=i.getDisplayName(p);return o.isPalette?t.__("Set Preferred Dark Theme: %1",b):b},describedBy:{args:{type:"object",properties:{theme:{type:"string",description:t.__("The preferred dark theme name")},isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}},required:["theme"]}},isToggled:o=>o.theme===i.preferredDarkTheme,execute:o=>{const p=o.theme;if(p!==i.preferredDarkTheme)return i.setPreferredDarkTheme(p)}}),g.addCommand(C.toggleAdaptiveTheme,{label:o=>o.isPalette?t.__("Synchronize Styling Theme with System Settings"):t.__("Synchronize with System Settings"),describedBy:{args:{type:"object",properties:{isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}}}},isToggled:()=>i.isToggledAdaptiveTheme(),execute:()=>{i.toggleAdaptiveTheme().catch(console.warn)}}),g.addCommand(C.themeScrollbars,{label:t.__("Theme Scrollbars"),describedBy:{args:{type:"object",properties:{}}},isToggled:()=>i.isToggledThemeScrollbars(),execute:()=>i.toggleThemeScrollbars()}),g.addCommand(C.changeFont,{label:o=>o.enabled?`${o.font}`:t.__("waiting for fonts"),describedBy:{args:{type:"object",properties:{enabled:{type:"boolean",description:t.__("Whether the font is available and enabled")},font:{type:"string",description:t.__("The font name")},key:{type:"string",description:t.__("The CSS property key to modify")}},required:["enabled","font","key"]}},isEnabled:o=>o.enabled,isToggled:o=>i.getCSS(o.key)===o.font,execute:o=>i.setCSSOverride(o.key,o.font)}),g.addCommand(C.incrFontSize,{label:o=>{switch(o.key){case"code-font-size":return t.__("Increase Code Font Size");case"content-font-size1":return t.__("Increase Content Font Size");case"ui-font-size1":return t.__("Increase UI Font Size");default:return t.__("Increase Font Size")}},describedBy:{args:{type:"object",properties:{key:{type:"string",description:t.__('The font size key to increase (e.g., "code-font-size", "content-font-size1", "ui-font-size1")')}},required:["key"]}},execute:o=>i.incrFontSize(o.key)}),g.addCommand(C.decrFontSize,{label:o=>{switch(o.key){case"code-font-size":return t.__("Decrease Code Font Size");case"content-font-size1":return t.__("Decrease Content Font Size");case"ui-font-size1":return t.__("Decrease UI Font Size");default:return t.__("Decrease Font Size")}},describedBy:{args:{type:"object",properties:{key:{type:"string",description:t.__('The font size key to decrease (e.g., "code-font-size", "content-font-size1", "ui-font-size1")')}},required:["key"]}},execute:o=>i.decrFontSize(o.key)});const f=window.matchMedia("(prefers-color-scheme: dark)"),m=o=>{if(i.isToggledAdaptiveTheme()){const p=o.matches?i.preferredDarkTheme:i.preferredLightTheme;i.theme!==p&&i.setTheme(p)}};return f.addEventListener("change",m),i},autoStart:!0,provides:Te},Ft={id:"@jupyterlab/apputils-extension:themes-palette-menu",description:"Adds theme commands to the menu and the command palette.",requires:[Te,E],optional:[B,xe],activate:(e,n,c,s,r)=>{const t=c.load("jupyterlab");r&&e.restored.then(()=>{var a;const u=(a=r.settingsMenu.items.find(l=>{var i;return l.type==="submenu"&&((i=l.submenu)===null||i===void 0?void 0:i.id)==="jp-mainmenu-settings-apputilstheme"}))===null||a===void 0?void 0:a.submenu;u&&n.themes.forEach((l,i)=>{u.insertItem(i,{command:C.changeTheme,args:{isPalette:!1,theme:l}})})}),s&&e.restored.then(()=>{const a=t.__("Theme"),g=C.changeTheme,u=!0;n.themes.forEach(l=>{s.addItem({command:g,args:{isPalette:u,theme:l},category:a})}),n.themes.forEach(l=>{s.addItem({command:C.changePreferredLightTheme,args:{isPalette:u,theme:l},category:a})}),n.themes.forEach(l=>{s.addItem({command:C.changePreferredDarkTheme,args:{isPalette:u,theme:l},category:a})}),s.addItem({command:C.toggleAdaptiveTheme,args:{isPalette:u},category:a}),s.addItem({command:C.themeScrollbars,category:a}),s.addItem({command:C.incrFontSize,args:{key:"code-font-size"},category:a}),s.addItem({command:C.decrFontSize,args:{key:"code-font-size"},category:a}),s.addItem({command:C.incrFontSize,args:{key:"content-font-size1"},category:a}),s.addItem({command:C.decrFontSize,args:{key:"content-font-size1"},category:a}),s.addItem({command:C.incrFontSize,args:{key:"ui-font-size1"},category:a}),s.addItem({command:C.decrFontSize,args:{key:"ui-font-size1"},category:a})})},autoStart:!0},Rt={id:"@jupyterlab/apputils-extension:toolbar-registry",description:"Provides toolbar items registry.",autoStart:!0,provides:ut,activate:e=>new mt({defaultFactory:pt(e.commands)})},Mt=new Xe("@jupyterlab/workspaces:IWorkspaceCommands","Provides identifiers of workspace commands."),J="jupyterlab-workspace",Wt="."+J,Dt="workspace-ui:lastSave",$t="jp-JupyterIcon",Bt={id:"@jupyterlab/apputils-extension:workspaces",description:"Add workspace file type.",autoStart:!0,requires:[$.IStateDB,E,V.IPaths],optional:[Z,Mt],activate:(e,n,c,s,r,t)=>{const a=new X.WorkspaceFactory({workspaces:e.serviceManager.workspaces,state:n,translator:c,open:async u=>{if(t)await e.commands.execute(t.open,{workspace:u});else{const l=S.URLExt.join(s.urls.app,"workspaces"),i=S.URLExt.join(l,u);if(!i.startsWith(l))throw new Error("Can only be used for workspaces");r?r.navigate(i,{hard:!0}):document.location.href=i}}}),g=c.load("jupyterlab");e.docRegistry.addFileType({name:J,contentType:"file",fileFormat:"text",displayName:g.__("JupyterLab Workspace File"),extensions:[Wt],mimeTypes:["text/json"],iconClass:$t}),e.docRegistry.addWidgetFactory(a)}};var X;(function(e){class n extends Ze{constructor(r){const t=(r.translator||R).load("jupyterlab");super({name:"Workspace loader",label:t.__("Workspace loader"),fileTypes:[J],defaultFor:[J],readOnly:!0}),this._state=r.state,this._workspaces=r.workspaces,this._open=r.open}createNewWidget(r){return r.ready.then(async()=>{const a=r.model.toJSON(),g=r.path,u=a.metadata.id;await this._workspaces.save(u,a),await this._state.save(Dt,g),await this._open(u)}),c(r)}}e.WorkspaceFactory=n;function c(s){const r=new we({content:new he,context:s});return r.content.dispose(),r}})(X||(X={}));const zt="jp-ContextualShortcut-TableRow",Ut="jp-ContextualShortcut-TableLastRow",ue="jp-ContextualShortcut-TableItem",qt="jp-ContextualShortcut-Key";function Ht(e){const{commands:n,trans:c,activeElement:s}=e,r=s??document.activeElement;function t(m){const o=[];return m.forEach((p,b)=>{const y=[];p.split(" ").forEach((_,w)=>{y.push(v.createElement("span",{className:qt,key:`ch-${w}`},v.createElement("kbd",null,_)),v.createElement(v.Fragment,{key:`fragment-${w}`}," + "))}),o.push(v.createElement("span",{key:`key-${b}`},y.slice(0,-1)),v.createElement(v.Fragment,{key:`fragment-${b}`}," + "))}),v.createElement("span",null,o.slice(0,-1))}function a(m){return m.charAt(0).toUpperCase()+m.slice(1)}function g(m){const o=n.label(m.command),b=m.command.split(":")[1].split("-");let y="";for(let _=0;_<b.length;_++){const w=a(b[_]);y=y+" "+w}return o.length>0?o:y}function u(m,o){let p=o;for(let b=0;p!==null&&p!==p.parentElement;p=p.parentElement,++b){if(p.hasAttribute("data-lm-suppress-shortcuts"))return-1;if(p.matches(m))return b}return-1}const l=new Map;for(let m=0;m<n.keyBindings.length;m++){const o=n.keyBindings[m];let p=u(o.selector,r);if(p<0)continue;let b=ye.formatKeystroke(o.keys);if(l.has(b)){let y=l.get(b);if(y[0]<p||y[0]===p&&ie.calculateSpecificity(y[1].selector)>ie.calculateSpecificity(o.selector))continue}l.set(b,[p,o])}let i=-1;const d=new Map;for(let[m,o]of l.values())i=Math.max(m,i),d.has(m)||d.set(m,[]),d.get(m).push(o);const h=[];for(let m=0;m<=i;m++)d.has(m)&&(h.push(d.get(m).map(o=>v.createElement("tr",{className:zt,key:`${o.command}-${o.keys.join("-").replace(" ","_")}`},v.createElement("td",{className:ue},g(o)),v.createElement("td",{className:ue},t([...o.keys]))))),h.push(v.createElement("tr",{className:Ut,key:`group-${m}-last`})));const f=v.createElement("table",null,v.createElement("tbody",null,h));return et({title:c.__("Keyboard Shortcuts"),body:f,buttons:[U.cancelButton({label:c.__("Close")})]})}const Kt=12e3;var j;(function(e){e.loadState="apputils:load-statedb",e.print="apputils:print",e.reset="apputils:reset",e.resetOnLoad="apputils:reset-on-load",e.runFirstEnabled="apputils:run-first-enabled",e.runAllEnabled="apputils:run-all-enabled",e.toggleHeader="apputils:toggle-header",e.displayShortcuts="apputils:display-shortcuts"})(j||(j={}));const Jt={id:"@jupyterlab/apputils-extension:palette",description:"Provides the command palette.",autoStart:!0,requires:[E],provides:B,optional:[L],activate:(e,n,c)=>H.activate(e,n,c)},Vt={id:"@jupyterlab/apputils-extension:palette-restorer",description:"Restores the command palette.",autoStart:!0,requires:[Ie,E],activate:(e,n,c)=>{H.restore(e,n,c)}},Gt={id:"@jupyterlab/apputils-extension:resolver",description:"Provides the window name resolver.",autoStart:!0,provides:Ee,requires:[V.IPaths,Z],activate:async(e,n,c)=>{const{hash:s,search:r}=c.current,t=S.URLExt.queryStringToObject(r||""),a=new gt,g=S.PageConfig.getOption("workspace"),u=S.PageConfig.getOption("treePath"),l=S.PageConfig.getOption("mode")==="multiple-document"?"lab":"doc",i=g||S.PageConfig.defaultWorkspace,d=u?S.URLExt.join("tree",u):"";try{return await a.resolve(i),a}catch{return new Promise(()=>{const{base:f}=n.urls,m="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",o=m[Math.floor(Math.random()*m.length)];let p=S.URLExt.join(f,l,"workspaces",`auto-${o}`);p=d?S.URLExt.join(p,S.URLExt.encodeParts(d)):p,t.reset="";const b=p+S.URLExt.objectToQueryString(t)+(s||"");c.navigate(b,{hard:!0})})}}},Qt={id:"@jupyterlab/apputils-extension:splash",description:"Provides the splash screen.",autoStart:!0,requires:[E],provides:je,activate:(e,n)=>{const c=n.load("jupyterlab"),{commands:s,restored:r}=e,t=document.createElement("div"),a=document.createElement("div"),g=document.createElement("div");t.id="jupyterlab-splash",a.id="galaxy",g.id="main-logo",ot.element({container:g,stylesheet:"splash"}),a.appendChild(g),["1","2","3"].forEach(d=>{const h=document.createElement("div"),f=document.createElement("div");h.id=`moon${d}`,h.className="moon orbit",f.id=`planet${d}`,f.className="planet",h.appendChild(f),a.appendChild(h)}),t.appendChild(a);let u;const l=new ve(async()=>{if(!u){u=new U({title:c.__("Loading…"),body:c.__(`The loading screen is taking a long time.
78
- Would you like to clear the workspace or keep waiting?`),buttons:[U.cancelButton({label:c.__("Keep Waiting")}),U.warnButton({label:c.__("Clear Workspace")})]});try{const d=await u.launch();if(u.dispose(),u=null,d.button.accept&&s.hasCommand(j.reset))return s.execute(j.reset);requestAnimationFrame(()=>{l.invoke().catch(h=>{})})}catch{}}},{limit:Kt,edge:"trailing"});let i=0;return{show:(d=!0)=>(t.classList.remove("splash-fade"),t.classList.toggle("light",d),t.classList.toggle("dark",!d),i++,document.body.appendChild(t),l.invoke().catch(h=>{}),new be(async()=>{await r,--i===0&&(l.stop(),u&&(u.dispose(),u=null),t.classList.add("splash-fade"),window.setTimeout(()=>{document.body.removeChild(t)},200))}))}}},Yt={id:"@jupyterlab/apputils-extension:print",description:"Add the print capability",autoStart:!0,requires:[E],activate:(e,n)=>{var c;const s=n.load("jupyterlab");e.commands.addCommand(j.print,{label:s.__("Print…"),describedBy:{args:{type:"object",properties:{}}},isEnabled:()=>{const r=e.shell.currentWidget;return re.getPrintFunction(r)!==null},execute:async()=>{const r=e.shell.currentWidget,t=re.getPrintFunction(r);t&&await t()}}),(c=e.shell.currentChanged)===null||c===void 0||c.connect(()=>{e.commands.notifyCommandChanged(j.print)})}},Xt={id:"@jupyterlab/apputils-extension:toggle-header",description:"Adds a command to display the main area widget content header.",autoStart:!0,requires:[E],optional:[B],activate:(e,n,c)=>{var s;const r=n.load("jupyterlab"),t=r.__("Main Area");e.commands.addCommand(j.toggleHeader,{label:r.__("Show Header Above Content"),describedBy:{args:{type:"object",properties:{}}},isEnabled:()=>e.shell.currentWidget instanceof D&&!e.shell.currentWidget.contentHeader.isDisposed&&e.shell.currentWidget.contentHeader.widgets.length>0,isToggled:()=>{const a=e.shell.currentWidget;return a instanceof D?!a.contentHeader.isHidden:!1},execute:async()=>{const a=e.shell.currentWidget;a instanceof D&&a.contentHeader.setHidden(!a.contentHeader.isHidden)}}),(s=e.shell.currentChanged)===null||s===void 0||s.connect(()=>{e.commands.notifyCommandChanged(j.toggleHeader)}),c&&c.addItem({command:j.toggleHeader,category:t})}};async function Zt(e){var n,c;const{workspace:s,db:r,name:t,currentWidget:a}=e,g=await r.toJSON();let u=(c=(n=g["layout-restorer:data"])===null||n===void 0?void 0:n.main)===null||c===void 0?void 0:c.current;if(u===void 0||!(u.startsWith("notebook")||u.startsWith("editor")))document.title=`${S.PageConfig.getOption("appName")||"JupyterLab"}${s==="default"?"":` (${s})`}`;else{let l;a instanceof we?l=S.PathExt.basename(a.context.path):l=S.PathExt.basename(decodeURIComponent(window.location.href)),l=l.length>15?l.slice(0,12).concat("…"):l;const i=s.length>15?s.slice(0,12).concat("…"):s,d=Object.keys(g).filter(h=>h.startsWith("notebook")||h.startsWith("editor")).length;document.title=`${l}${d>1?` (${d})`:""} - ${s==="default"?t:i}`}}const en={id:"@jupyterlab/apputils-extension:state",description:"Provides the application state. It is stored per workspaces.",autoStart:!0,provides:$.IStateDB,requires:[V.IPaths,Z,E],optional:[Ee],activate:(e,n,c,s,r)=>{const t=s.load("jupyterlab");if(r===null)return new $.StateDB;let a=!1;const{commands:g,name:u,serviceManager:l}=e,{workspaces:i}=l,d=r.name,h=new fe,f=new $.StateDB({transform:h.promise}),m=new nt(async()=>{const o=d,p={id:o},b=await f.toJSON();await i.save(o,{data:b,metadata:p})});return f.changed.connect(()=>{m.invoke()},f),f.changed.connect(()=>{var o;return Zt({workspace:d,db:f,name:u,currentWidget:(o=e.shell.currentWidget)!==null&&o!==void 0?o:void 0})}),g.addCommand(j.loadState,{label:t.__("Load state for the current workspace."),describedBy:{args:{type:"object",properties:{hash:{type:"string",description:t.__("The URL hash")},path:{type:"string",description:t.__("The URL path")},search:{type:"string",description:t.__("The URL search string containing query parameters")}}}},execute:async o=>{if(a)return;const{hash:p,path:b,search:y}=o,_=S.URLExt.queryStringToObject(y||""),w=typeof _.clone=="string"?_.clone===""?S.PageConfig.defaultWorkspace:_.clone:null,k=w||d||null;if(k===null){console.error(`${j.loadState} cannot load null workspace.`);return}try{const T=await i.fetch(k);a||(a=!0,h.resolve({type:"overwrite",contents:T.data}))}catch({message:T}){console.warn(`Fetching workspace "${d}" failed.`,T),a||(a=!0,h.resolve({type:"cancel",contents:null}))}if(k===w){delete _.clone;const T=b+S.URLExt.objectToQueryString(_)+p,I=m.invoke().then(()=>c.stop);return I.then(()=>{c.navigate(T)}),I}await m.invoke()}}),g.addCommand(j.reset,{label:t.__("Reset Application State"),describedBy:{args:{type:"object",properties:{reload:{type:"boolean",description:t.__("Whether to reload the page after resetting")}}}},execute:async({reload:o})=>{await f.clear(),await m.invoke(),o&&c.reload()}}),g.addCommand(j.resetOnLoad,{label:t.__("Reset state when loading for the workspace."),describedBy:{args:{type:"object",properties:{hash:{type:"string",description:t.__("The URL hash")},path:{type:"string",description:t.__("The URL path")},search:{type:"string",description:t.__("The URL search string containing query parameters")}}}},execute:o=>{const{hash:p,path:b,search:y}=o,_=S.URLExt.queryStringToObject(y||""),w="reset"in _,k="clone"in _;if(!w)return;if(a)return c.reload();a=!0,h.resolve({type:"clear",contents:null}),delete _.reset;const T=b+S.URLExt.objectToQueryString(_)+p,I=f.clear().then(()=>m.invoke());return k?I.then(()=>{c.navigate(T,{hard:!0})}):I.then(()=>{c.navigate(T)}),I}}),c.register({command:j.loadState,pattern:/.?/,rank:30}),c.register({command:j.resetOnLoad,pattern:/(\?reset|\&reset)($|&)/,rank:20}),f}},tn={id:"@jupyterlab/apputils-extension:sessionDialogs",description:"Provides the session context dialogs.",provides:Ce,optional:[E,L],autoStart:!0,activate:async(e,n,c)=>new _e({translator:n??R,settingRegistry:c??null})},nn={id:"@jupyterlab/apputils-extension:utilityCommands",description:"Adds meta commands to run set of other commands.",requires:[E],optional:[B],autoStart:!0,activate:(e,n,c)=>{const s=n.load("jupyterlab"),{commands:r}=e;if(r.addCommand(j.runFirstEnabled,{label:s.__("Run First Enabled Command"),describedBy:{args:{type:"object",properties:{commands:{type:"array",items:{type:"string"},description:s.__("Array of command IDs to attempt to run")},args:{description:s.__("Arguments to pass to the commands")}},required:["commands"]}},execute:t=>{const a=t.commands,g=t.args,u=Array.isArray(t);for(let l=0;l<a.length;l++){const i=a[l],d=u?g[l]:g;if(e.commands.isEnabled(i,d))return e.commands.execute(i,d)}}}),r.addCommand(j.runAllEnabled,{label:s.__("Run All Enabled Commands Passed as Args"),describedBy:{args:{type:"object",properties:{commands:{type:"array",items:{type:"string"},description:s.__("Array of command IDs to run")},args:{description:s.__("Arguments to pass to the commands")},errorIfNotEnabled:{type:"boolean",description:s.__("Whether to log an error if a command is not enabled")}}}},execute:async t=>{var a,g;const u=(a=t.commands)!==null&&a!==void 0?a:[],l=t.args,i=Array.isArray(t),d=(g=t.errorIfNotEnabled)!==null&&g!==void 0?g:!1;for(let h=0;h<u.length;h++){const f=u[h],m=i?l[h]:l;e.commands.isEnabled(f,m)?await e.commands.execute(f,m):d&&console.error(`${f} is not enabled.`)}},isEnabled:t=>{var a;const g=(a=t.commands)!==null&&a!==void 0?a:[],u=t.args,l=Array.isArray(t);return g.some((i,d)=>e.commands.isEnabled(i,l?u[d]:u))}}),r.addCommand(j.displayShortcuts,{label:s.__("Show Keyboard Shortcuts…"),caption:s.__("Show relevant keyboard shortcuts for the current active widget"),describedBy:{args:{type:"object",properties:{}}},execute:t=>{var a;const g=e.shell.currentWidget;if(!g?.node.contains(document.activeElement)&&g instanceof D){const i=(a=g.content.node)!==null&&a!==void 0?a:g?.node;i?.focus()}return Ht({commands:r,trans:s})}}),c){const t=s.__("Help");c.addItem({command:j.displayShortcuts,category:t})}}},on={id:"@jupyterlab/apputils-extension:sanitizer",description:"Provides the HTML sanitizer.",autoStart:!0,provides:ht,requires:[L],activate:(e,n)=>{const c=new tt,s=r=>{const t=r.get("allowedSchemes").composite,a=r.get("autolink").composite,g=r.get("allowNamedProperties").composite,u=r.get("allowCommandLinker").composite;t&&c.setAllowedSchemes(t),c.setAutolink(a),c.setAllowNamedProperties(g),c.setAllowCommandLinker(u)};return n.load("@jupyterlab/apputils-extension:sanitizer").then(r=>{s(r),r.changed.connect(s)}).catch(r=>{console.error("Failed to load sanitizer settings:",r)}),c}},Fe={id:"@jupyterlab/apputils-extension:kernels-settings",description:"Reserves the name for kernel settings.",autoStart:!0,requires:[L],activate:(e,n)=>{n.load(Fe.id)}},io=[Fe,Ne,Le,wt,kt,Y,Jt,Vt,Yt,Gt,Ae,Lt,on,Nt,Pt,en,Qt,tn,Oe,Ft,Xt,Rt,nn,Bt];export{io as default,Fe as kernelSettings,Xt as toggleHeader};
77
+ `;var C;(function(e){e.changeTheme="apputils:change-theme",e.changePreferredLightTheme="apputils:change-light-theme",e.changePreferredDarkTheme="apputils:change-dark-theme",e.toggleAdaptiveTheme="apputils:adaptive-theme",e.themeScrollbars="apputils:theme-scrollbars",e.changeFont="apputils:change-font",e.incrFontSize="apputils:incr-font-size",e.decrFontSize="apputils:decr-font-size"})(C||(C={}));function Ot(e){const n=document.createElement("style");return n.setAttribute("type","text/css"),n.appendChild(document.createTextNode(e)),n}const Oe={id:"@jupyterlab/apputils-extension:themes",description:"Provides the theme manager.",requires:[L,V.IPaths,E],optional:[je],activate:(e,n,c,s,r)=>{const t=s.load("jupyterlab"),a=e.shell,g=e.commands,u=S.URLExt.join(e.serviceManager.serverSettings.baseUrl,c.urls.themes),l=Oe.id,i=new dt({key:l,host:a,settings:n,splash:r??void 0,url:u});let d=null,h;i.themeChanged.connect((o,p)=>{h=p.newValue,document.body.dataset.jpThemeLight=String(i.isLight(h)),document.body.dataset.jpThemeName=h,document.body.style.colorScheme=i.isLight(h)?"light":"dark",document.body.dataset.jpThemeScrollbars!==String(i.themeScrollbars(h))&&(document.body.dataset.jpThemeScrollbars=String(i.themeScrollbars(h)),i.themeScrollbars(h)?(d||(d=Ot(At)),d.parentElement||document.body.appendChild(d)):d&&d.parentElement&&d.parentElement.removeChild(d)),g.notifyCommandChanged(C.changeTheme)}),g.addCommand(C.changeTheme,{label:o=>{if(o.theme===void 0)return t.__("Switch to the provided `theme`.");const p=o.theme,b=i.getDisplayName(p);return o.isPalette?t.__("Use Theme: %1",b):b},describedBy:{args:{type:"object",properties:{theme:{type:"string",description:t.__("The theme name to switch to")},isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}},required:["theme"]}},isToggled:o=>o.theme===h,execute:o=>{const p=o.theme;if(p!==i.theme)return i.isToggledAdaptiveTheme()?i.toggleAdaptiveTheme():i.setTheme(p)}}),g.addCommand(C.changePreferredLightTheme,{label:o=>{if(o.theme===void 0)return t.__("Switch to the provided light `theme`.");const p=o.theme,b=i.getDisplayName(p);return o.isPalette?t.__("Set Preferred Light Theme: %1",b):b},describedBy:{args:{type:"object",properties:{theme:{type:"string",description:t.__("The preferred light theme name")},isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}},required:["theme"]}},isToggled:o=>o.theme===i.preferredLightTheme,execute:o=>{const p=o.theme;if(p!==i.preferredLightTheme)return i.setPreferredLightTheme(p)}}),g.addCommand(C.changePreferredDarkTheme,{label:o=>{if(o.theme===void 0)return t.__("Switch to the provided dark `theme`.");const p=o.theme,b=i.getDisplayName(p);return o.isPalette?t.__("Set Preferred Dark Theme: %1",b):b},describedBy:{args:{type:"object",properties:{theme:{type:"string",description:t.__("The preferred dark theme name")},isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}},required:["theme"]}},isToggled:o=>o.theme===i.preferredDarkTheme,execute:o=>{const p=o.theme;if(p!==i.preferredDarkTheme)return i.setPreferredDarkTheme(p)}}),g.addCommand(C.toggleAdaptiveTheme,{label:o=>o.isPalette?t.__("Synchronize Styling Theme with System Settings"):t.__("Synchronize with System Settings"),describedBy:{args:{type:"object",properties:{isPalette:{type:"boolean",description:t.__("Whether the command is being called from the palette")}}}},isToggled:()=>i.isToggledAdaptiveTheme(),execute:()=>{i.toggleAdaptiveTheme().catch(console.warn)}}),g.addCommand(C.themeScrollbars,{label:t.__("Theme Scrollbars"),describedBy:{args:{type:"object",properties:{}}},isToggled:()=>i.isToggledThemeScrollbars(),execute:()=>i.toggleThemeScrollbars()}),g.addCommand(C.changeFont,{label:o=>o.enabled?`${o.font}`:t.__("waiting for fonts"),describedBy:{args:{type:"object",properties:{enabled:{type:"boolean",description:t.__("Whether the font is available and enabled")},font:{type:"string",description:t.__("The font name")},key:{type:"string",description:t.__("The CSS property key to modify")}},required:["enabled","font","key"]}},isEnabled:o=>o.enabled,isToggled:o=>i.getCSS(o.key)===o.font,execute:o=>i.setCSSOverride(o.key,o.font)}),g.addCommand(C.incrFontSize,{label:o=>{switch(o.key){case"code-font-size":return t.__("Increase Code Font Size");case"content-font-size1":return t.__("Increase Content Font Size");case"ui-font-size1":return t.__("Increase UI Font Size");default:return t.__("Increase Font Size")}},describedBy:{args:{type:"object",properties:{key:{type:"string",description:t.__('The font size key to increase (e.g., "code-font-size", "content-font-size1", "ui-font-size1")')}},required:["key"]}},execute:o=>i.incrFontSize(o.key)}),g.addCommand(C.decrFontSize,{label:o=>{switch(o.key){case"code-font-size":return t.__("Decrease Code Font Size");case"content-font-size1":return t.__("Decrease Content Font Size");case"ui-font-size1":return t.__("Decrease UI Font Size");default:return t.__("Decrease Font Size")}},describedBy:{args:{type:"object",properties:{key:{type:"string",description:t.__('The font size key to decrease (e.g., "code-font-size", "content-font-size1", "ui-font-size1")')}},required:["key"]}},execute:o=>i.decrFontSize(o.key)});const f=window.matchMedia("(prefers-color-scheme: dark)"),m=o=>{if(i.isToggledAdaptiveTheme()){const p=o.matches?i.preferredDarkTheme:i.preferredLightTheme;i.theme!==p&&i.setTheme(p)}};return f.addEventListener("change",m),i},autoStart:!0,provides:Te},Ft={id:"@jupyterlab/apputils-extension:themes-palette-menu",description:"Adds theme commands to the menu and the command palette.",requires:[Te,E],optional:[B,xe],activate:(e,n,c,s,r)=>{const t=c.load("jupyterlab");r&&e.restored.then(()=>{var a;const u=(a=r.settingsMenu.items.find(l=>{var i;return l.type==="submenu"&&((i=l.submenu)===null||i===void 0?void 0:i.id)==="jp-mainmenu-settings-apputilstheme"}))===null||a===void 0?void 0:a.submenu;u&&n.themes.forEach((l,i)=>{u.insertItem(i,{command:C.changeTheme,args:{isPalette:!1,theme:l}})})}),s&&e.restored.then(()=>{const a=t.__("Theme"),g=C.changeTheme,u=!0;n.themes.forEach(l=>{s.addItem({command:g,args:{isPalette:u,theme:l},category:a})}),n.themes.forEach(l=>{s.addItem({command:C.changePreferredLightTheme,args:{isPalette:u,theme:l},category:a})}),n.themes.forEach(l=>{s.addItem({command:C.changePreferredDarkTheme,args:{isPalette:u,theme:l},category:a})}),s.addItem({command:C.toggleAdaptiveTheme,args:{isPalette:u},category:a}),s.addItem({command:C.themeScrollbars,category:a}),s.addItem({command:C.incrFontSize,args:{key:"code-font-size"},category:a}),s.addItem({command:C.decrFontSize,args:{key:"code-font-size"},category:a}),s.addItem({command:C.incrFontSize,args:{key:"content-font-size1"},category:a}),s.addItem({command:C.decrFontSize,args:{key:"content-font-size1"},category:a}),s.addItem({command:C.incrFontSize,args:{key:"ui-font-size1"},category:a}),s.addItem({command:C.decrFontSize,args:{key:"ui-font-size1"},category:a})})},autoStart:!0},Mt={id:"@jupyterlab/apputils-extension:toolbar-registry",description:"Provides toolbar items registry.",autoStart:!0,provides:ut,activate:e=>new mt({defaultFactory:pt(e.commands)})},Rt=new Xe("@jupyterlab/workspaces:IWorkspaceCommands","Provides identifiers of workspace commands."),J="jupyterlab-workspace",Wt="."+J,Dt="workspace-ui:lastSave",$t="jp-JupyterIcon",Bt={id:"@jupyterlab/apputils-extension:workspaces",description:"Add workspace file type.",autoStart:!0,requires:[$.IStateDB,E,V.IPaths],optional:[Z,Rt],activate:(e,n,c,s,r,t)=>{const a=new X.WorkspaceFactory({workspaces:e.serviceManager.workspaces,state:n,translator:c,open:async u=>{if(t)await e.commands.execute(t.open,{workspace:u});else{const l=S.URLExt.join(s.urls.app,"workspaces"),i=S.URLExt.join(l,u);if(!i.startsWith(l))throw new Error("Can only be used for workspaces");r?r.navigate(i,{hard:!0}):document.location.href=i}}}),g=c.load("jupyterlab");e.docRegistry.addFileType({name:J,contentType:"file",fileFormat:"text",displayName:g.__("JupyterLab Workspace File"),extensions:[Wt],mimeTypes:["text/json"],iconClass:$t}),e.docRegistry.addWidgetFactory(a)}};var X;(function(e){class n extends Ze{constructor(r){const t=(r.translator||M).load("jupyterlab");super({name:"Workspace loader",label:t.__("Workspace loader"),fileTypes:[J],defaultFor:[J],readOnly:!0}),this._state=r.state,this._workspaces=r.workspaces,this._open=r.open}createNewWidget(r){return r.ready.then(async()=>{const a=r.model.toJSON(),g=r.path,u=a.metadata.id;await this._workspaces.save(u,a),await this._state.save(Dt,g),await this._open(u)}),c(r)}}e.WorkspaceFactory=n;function c(s){const r=new we({content:new he,context:s});return r.content.dispose(),r}})(X||(X={}));const zt="jp-ContextualShortcut-TableRow",Ut="jp-ContextualShortcut-TableLastRow",ue="jp-ContextualShortcut-TableItem",qt="jp-ContextualShortcut-Key";function Ht(e){const{commands:n,trans:c,activeElement:s}=e,r=s??document.activeElement;function t(m){const o=[];return m.forEach((p,b)=>{const y=[];p.split(" ").forEach((_,w)=>{y.push(v.createElement("span",{className:qt,key:`ch-${w}`},v.createElement("kbd",null,_)),v.createElement(v.Fragment,{key:`fragment-${w}`}," + "))}),o.push(v.createElement("span",{key:`key-${b}`},y.slice(0,-1)),v.createElement(v.Fragment,{key:`fragment-${b}`}," + "))}),v.createElement("span",null,o.slice(0,-1))}function a(m){return m.charAt(0).toUpperCase()+m.slice(1)}function g(m){const o=n.label(m.command),b=m.command.split(":")[1].split("-");let y="";for(let _=0;_<b.length;_++){const w=a(b[_]);y=y+" "+w}return o.length>0?o:y}function u(m,o){let p=o;for(let b=0;p!==null&&p!==p.parentElement;p=p.parentElement,++b){if(p.hasAttribute("data-lm-suppress-shortcuts"))return-1;if(p.matches(m))return b}return-1}const l=new Map;for(let m=0;m<n.keyBindings.length;m++){const o=n.keyBindings[m];let p=u(o.selector,r);if(p<0)continue;let b=ye.formatKeystroke(o.keys);if(l.has(b)){let y=l.get(b);if(y[0]<p||y[0]===p&&ie.calculateSpecificity(y[1].selector)>ie.calculateSpecificity(o.selector))continue}l.set(b,[p,o])}let i=-1;const d=new Map;for(let[m,o]of l.values())i=Math.max(m,i),d.has(m)||d.set(m,[]),d.get(m).push(o);const h=[];for(let m=0;m<=i;m++)d.has(m)&&(h.push(d.get(m).map(o=>v.createElement("tr",{className:zt,key:`${o.command}-${o.keys.join("-").replace(" ","_")}`},v.createElement("td",{className:ue},g(o)),v.createElement("td",{className:ue},t([...o.keys]))))),h.push(v.createElement("tr",{className:Ut,key:`group-${m}-last`})));const f=v.createElement("table",null,v.createElement("tbody",null,h));return et({title:c.__("Keyboard Shortcuts"),body:f,buttons:[U.cancelButton({label:c.__("Close")})]})}const Kt=12e3;var j;(function(e){e.loadState="apputils:load-statedb",e.print="apputils:print",e.reset="apputils:reset",e.resetOnLoad="apputils:reset-on-load",e.runFirstEnabled="apputils:run-first-enabled",e.runAllEnabled="apputils:run-all-enabled",e.toggleHeader="apputils:toggle-header",e.displayShortcuts="apputils:display-shortcuts"})(j||(j={}));const Jt={id:"@jupyterlab/apputils-extension:palette",description:"Provides the command palette.",autoStart:!0,requires:[E],provides:B,optional:[L],activate:(e,n,c)=>H.activate(e,n,c)},Vt={id:"@jupyterlab/apputils-extension:palette-restorer",description:"Restores the command palette.",autoStart:!0,requires:[Ie,E],activate:(e,n,c)=>{H.restore(e,n,c)}},Gt={id:"@jupyterlab/apputils-extension:resolver",description:"Provides the window name resolver.",autoStart:!0,provides:Ee,requires:[V.IPaths,Z],activate:async(e,n,c)=>{const{hash:s,search:r}=c.current,t=S.URLExt.queryStringToObject(r||""),a=new gt,g=S.PageConfig.getOption("workspace"),u=S.PageConfig.getOption("treePath"),l=S.PageConfig.getOption("mode")==="multiple-document"?"lab":"doc",i=g||S.PageConfig.defaultWorkspace,d=u?S.URLExt.join("tree",u):"";try{return await a.resolve(i),a}catch{return new Promise(()=>{const{base:f}=n.urls,m="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",o=m[Math.floor(Math.random()*m.length)];let p=S.URLExt.join(f,l,"workspaces",`auto-${o}`);p=d?S.URLExt.join(p,S.URLExt.encodeParts(d)):p,t.reset="";const b=p+S.URLExt.objectToQueryString(t)+(s||"");c.navigate(b,{hard:!0})})}}},Qt={id:"@jupyterlab/apputils-extension:splash",description:"Provides the splash screen.",autoStart:!0,requires:[E],provides:je,activate:(e,n)=>{const c=n.load("jupyterlab"),{commands:s,restored:r}=e,t=document.createElement("div"),a=document.createElement("div"),g=document.createElement("div");t.id="jupyterlab-splash",a.id="galaxy",g.id="main-logo",ot.element({container:g,stylesheet:"splash"}),a.appendChild(g),["1","2","3"].forEach(d=>{const h=document.createElement("div"),f=document.createElement("div");h.id=`moon${d}`,h.className="moon orbit",f.id=`planet${d}`,f.className="planet",h.appendChild(f),a.appendChild(h)}),t.appendChild(a);let u;const l=new ve(async()=>{if(!u){u=new U({title:c.__("Loading…"),body:c.__(`The loading screen is taking a long time.
78
+ Would you like to clear the workspace or keep waiting?`),buttons:[U.cancelButton({label:c.__("Keep Waiting")}),U.warnButton({label:c.__("Clear Workspace")})]});try{const d=await u.launch();if(u.dispose(),u=null,d.button.accept&&s.hasCommand(j.reset))return s.execute(j.reset);requestAnimationFrame(()=>{l.invoke().catch(h=>{})})}catch{}}},{limit:Kt,edge:"trailing"});let i=0;return{show:(d=!0)=>(t.classList.remove("splash-fade"),t.classList.toggle("light",d),t.classList.toggle("dark",!d),i++,document.body.appendChild(t),l.invoke().catch(h=>{}),new be(async()=>{await r,--i===0&&(l.stop(),u&&(u.dispose(),u=null),t.classList.add("splash-fade"),window.setTimeout(()=>{document.body.removeChild(t)},200))}))}}},Yt={id:"@jupyterlab/apputils-extension:print",description:"Add the print capability",autoStart:!0,requires:[E],activate:(e,n)=>{var c;const s=n.load("jupyterlab");e.commands.addCommand(j.print,{label:s.__("Print…"),describedBy:{args:{type:"object",properties:{}}},isEnabled:()=>{const r=e.shell.currentWidget;return re.getPrintFunction(r)!==null},execute:async()=>{const r=e.shell.currentWidget,t=re.getPrintFunction(r);t&&await t()}}),(c=e.shell.currentChanged)===null||c===void 0||c.connect(()=>{e.commands.notifyCommandChanged(j.print)})}},Xt={id:"@jupyterlab/apputils-extension:toggle-header",description:"Adds a command to display the main area widget content header.",autoStart:!0,requires:[E],optional:[B],activate:(e,n,c)=>{var s;const r=n.load("jupyterlab"),t=r.__("Main Area");e.commands.addCommand(j.toggleHeader,{label:r.__("Show Header Above Content"),describedBy:{args:{type:"object",properties:{}}},isEnabled:()=>e.shell.currentWidget instanceof D&&!e.shell.currentWidget.contentHeader.isDisposed&&e.shell.currentWidget.contentHeader.widgets.length>0,isToggled:()=>{const a=e.shell.currentWidget;return a instanceof D?!a.contentHeader.isHidden:!1},execute:async()=>{const a=e.shell.currentWidget;a instanceof D&&a.contentHeader.setHidden(!a.contentHeader.isHidden)}}),(s=e.shell.currentChanged)===null||s===void 0||s.connect(()=>{e.commands.notifyCommandChanged(j.toggleHeader)}),c&&c.addItem({command:j.toggleHeader,category:t})}};async function Zt(e){var n,c;const{workspace:s,db:r,name:t,currentWidget:a}=e,g=await r.toJSON();let u=(c=(n=g["layout-restorer:data"])===null||n===void 0?void 0:n.main)===null||c===void 0?void 0:c.current;if(u===void 0||!(u.startsWith("notebook")||u.startsWith("editor")))document.title=`${S.PageConfig.getOption("appName")||"JupyterLab"}${s==="default"?"":` (${s})`}`;else{let l;a instanceof we?l=S.PathExt.basename(a.context.path):l=S.PathExt.basename(decodeURIComponent(window.location.href)),l=l.length>15?l.slice(0,12).concat("…"):l;const i=s.length>15?s.slice(0,12).concat("…"):s,d=Object.keys(g).filter(h=>h.startsWith("notebook")||h.startsWith("editor")).length;document.title=`${l}${d>1?` (${d})`:""} - ${s==="default"?t:i}`}}const en={id:"@jupyterlab/apputils-extension:state",description:"Provides the application state. It is stored per workspaces.",autoStart:!0,provides:$.IStateDB,requires:[V.IPaths,Z,E],optional:[Ee],activate:(e,n,c,s,r)=>{const t=s.load("jupyterlab");if(r===null)return new $.StateDB;let a=!1;const{commands:g,name:u,serviceManager:l}=e,{workspaces:i}=l,d=r.name,h=new fe,f=new $.StateDB({transform:h.promise}),m=new nt(async()=>{const o=d,p={id:o},b=await f.toJSON();await i.save(o,{data:b,metadata:p})});return f.changed.connect(()=>{m.invoke()},f),f.changed.connect(()=>{var o;return Zt({workspace:d,db:f,name:u,currentWidget:(o=e.shell.currentWidget)!==null&&o!==void 0?o:void 0})}),g.addCommand(j.loadState,{label:t.__("Load state for the current workspace."),describedBy:{args:{type:"object",properties:{hash:{type:"string",description:t.__("The URL hash")},path:{type:"string",description:t.__("The URL path")},search:{type:"string",description:t.__("The URL search string containing query parameters")}}}},execute:async o=>{if(a)return;const{hash:p,path:b,search:y}=o,_=S.URLExt.queryStringToObject(y||""),w=typeof _.clone=="string"?_.clone===""?S.PageConfig.defaultWorkspace:_.clone:null,k=w||d||null;if(k===null){console.error(`${j.loadState} cannot load null workspace.`);return}try{const T=await i.fetch(k);a||(a=!0,h.resolve({type:"overwrite",contents:T.data}))}catch({message:T}){console.warn(`Fetching workspace "${d}" failed.`,T),a||(a=!0,h.resolve({type:"cancel",contents:null}))}if(k===w){delete _.clone;const T=b+S.URLExt.objectToQueryString(_)+p,I=m.invoke().then(()=>c.stop);return I.then(()=>{c.navigate(T)}),I}await m.invoke()}}),g.addCommand(j.reset,{label:t.__("Reset Application State"),describedBy:{args:{type:"object",properties:{reload:{type:"boolean",description:t.__("Whether to reload the page after resetting")}}}},execute:async({reload:o})=>{await f.clear(),await m.invoke(),o&&c.reload()}}),g.addCommand(j.resetOnLoad,{label:t.__("Reset state when loading for the workspace."),describedBy:{args:{type:"object",properties:{hash:{type:"string",description:t.__("The URL hash")},path:{type:"string",description:t.__("The URL path")},search:{type:"string",description:t.__("The URL search string containing query parameters")}}}},execute:o=>{const{hash:p,path:b,search:y}=o,_=S.URLExt.queryStringToObject(y||""),w="reset"in _,k="clone"in _;if(!w)return;if(a)return c.reload();a=!0,h.resolve({type:"clear",contents:null}),delete _.reset;const T=b+S.URLExt.objectToQueryString(_)+p,I=f.clear().then(()=>m.invoke());return k?I.then(()=>{c.navigate(T,{hard:!0})}):I.then(()=>{c.navigate(T)}),I}}),c.register({command:j.loadState,pattern:/.?/,rank:30}),c.register({command:j.resetOnLoad,pattern:/(\?reset|\&reset)($|&)/,rank:20}),f}},tn={id:"@jupyterlab/apputils-extension:sessionDialogs",description:"Provides the session context dialogs.",provides:Ce,optional:[E,L],autoStart:!0,activate:async(e,n,c)=>new _e({translator:n??M,settingRegistry:c??null})},nn={id:"@jupyterlab/apputils-extension:utilityCommands",description:"Adds meta commands to run set of other commands.",requires:[E],optional:[B],autoStart:!0,activate:(e,n,c)=>{const s=n.load("jupyterlab"),{commands:r}=e;if(r.addCommand(j.runFirstEnabled,{label:s.__("Run First Enabled Command"),describedBy:{args:{type:"object",properties:{commands:{type:"array",items:{type:"string"},description:s.__("Array of command IDs to attempt to run")},args:{description:s.__("Arguments to pass to the commands")}},required:["commands"]}},execute:t=>{const a=t.commands,g=t.args,u=Array.isArray(t);for(let l=0;l<a.length;l++){const i=a[l],d=u?g[l]:g;if(e.commands.isEnabled(i,d))return e.commands.execute(i,d)}}}),r.addCommand(j.runAllEnabled,{label:s.__("Run All Enabled Commands Passed as Args"),describedBy:{args:{type:"object",properties:{commands:{type:"array",items:{type:"string"},description:s.__("Array of command IDs to run")},args:{description:s.__("Arguments to pass to the commands")},errorIfNotEnabled:{type:"boolean",description:s.__("Whether to log an error if a command is not enabled")}}}},execute:async t=>{var a,g;const u=(a=t.commands)!==null&&a!==void 0?a:[],l=t.args,i=Array.isArray(t),d=(g=t.errorIfNotEnabled)!==null&&g!==void 0?g:!1;for(let h=0;h<u.length;h++){const f=u[h],m=i?l[h]:l;e.commands.isEnabled(f,m)?await e.commands.execute(f,m):d&&console.error(`${f} is not enabled.`)}},isEnabled:t=>{var a;const g=(a=t.commands)!==null&&a!==void 0?a:[],u=t.args,l=Array.isArray(t);return g.some((i,d)=>e.commands.isEnabled(i,l?u[d]:u))}}),r.addCommand(j.displayShortcuts,{label:s.__("Show Keyboard Shortcuts…"),caption:s.__("Show relevant keyboard shortcuts for the current active widget"),describedBy:{args:{type:"object",properties:{}}},execute:t=>{var a;const g=e.shell.currentWidget;if(!g?.node.contains(document.activeElement)&&g instanceof D){const i=(a=g.content.node)!==null&&a!==void 0?a:g?.node;i?.focus()}return Ht({commands:r,trans:s})}}),c){const t=s.__("Help");c.addItem({command:j.displayShortcuts,category:t})}}},on={id:"@jupyterlab/apputils-extension:sanitizer",description:"Provides the HTML sanitizer.",autoStart:!0,provides:ht,requires:[L],activate:(e,n)=>{const c=new tt,s=r=>{const t=r.get("allowedSchemes").composite,a=r.get("autolink").composite,g=r.get("allowNamedProperties").composite,u=r.get("allowCommandLinker").composite;t&&c.setAllowedSchemes(t),c.setAutolink(a),c.setAllowNamedProperties(g),c.setAllowCommandLinker(u)};return n.load("@jupyterlab/apputils-extension:sanitizer").then(r=>{s(r),r.changed.connect(s)}).catch(r=>{console.error("Failed to load sanitizer settings:",r)}),c}},Fe={id:"@jupyterlab/apputils-extension:kernels-settings",description:"Reserves the name for kernel settings.",autoStart:!0,requires:[L],activate:(e,n)=>{n.load(Fe.id)}},io=[Fe,Ne,Le,wt,kt,Y,Jt,Vt,Yt,Gt,Ae,Lt,on,Nt,Pt,en,Qt,tn,Oe,Ft,Xt,Mt,nn,Bt];export{io as default,Fe as kernelSettings,Xt as toggleHeader};