aiex-cli 0.1.1-beta.6 → 0.1.1-beta.8

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 (118) hide show
  1. package/README.md +3 -3
  2. package/dist/cli.mjs +251 -323
  3. package/dist/{generate-drizzle-schema-DAeXmyrZ.mjs → generate-drizzle-schema-BcStmKUc.mjs} +275 -25
  4. package/dist/index.d.mts +2 -1
  5. package/dist/index.mjs +1 -1
  6. package/dist/infrastructure/schema/migrate-helper.mjs +1 -1
  7. package/dist/web/assets/DataBrowser-BGr3QUZO.css +1 -0
  8. package/dist/web/assets/DataBrowser-CDcSU_Cr.js +3 -0
  9. package/dist/web/assets/JsonSchemaEditor-p-bkrvS3.js +570 -0
  10. package/dist/web/assets/editor-D2tYHrWf.css +1 -0
  11. package/dist/web/assets/editor.api-BT2rf8f6.js +438 -0
  12. package/dist/web/assets/hoverContribution-CE0Jku7D.css +1 -0
  13. package/dist/web/assets/hoverContribution-LAh7vfny.js +1 -0
  14. package/dist/web/assets/{index-C2XZlABi.css → index-C_CYtI17.css} +1 -1
  15. package/dist/web/assets/{index-CuCVFoOf.js → index-UGHdtCGb.js} +2 -2
  16. package/dist/web/assets/{jsonMode-B4jaPYEr.js → jsonMode-alfaQCdM.js} +1 -1
  17. package/dist/web/assets/markers-Bp6AHK9A.css +1 -0
  18. package/dist/web/assets/markers-CggdBp2p.js +205 -0
  19. package/dist/web/assets/monaco.contribution-CNX4GSi9.js +2 -0
  20. package/dist/web/assets/xlsx-MTXtKFHS.js +105 -0
  21. package/dist/web/index.html +2 -2
  22. package/package.json +1 -1
  23. package/dist/web/assets/DataBrowser-BqRaZJrX.js +0 -97
  24. package/dist/web/assets/DataBrowser-DZT0kGQE.css +0 -1
  25. package/dist/web/assets/JsonSchemaEditor-JYjm5q34.js +0 -570
  26. package/dist/web/assets/abap-Bgec7Keq.js +0 -1
  27. package/dist/web/assets/apex-VBlPwEoQ.js +0 -1
  28. package/dist/web/assets/azcli-DKqrEFBx.js +0 -1
  29. package/dist/web/assets/bat-DdgQWy_0.js +0 -1
  30. package/dist/web/assets/bicep-CRMM43EB.js +0 -2
  31. package/dist/web/assets/cameligo-UatALtML.js +0 -1
  32. package/dist/web/assets/clojure-D8JU08RA.js +0 -1
  33. package/dist/web/assets/coffee-C56wu358.js +0 -1
  34. package/dist/web/assets/cpp-CyZLvhJG.js +0 -1
  35. package/dist/web/assets/csharp-BJl3ixva.js +0 -1
  36. package/dist/web/assets/csp-CxEKxmO-.js +0 -1
  37. package/dist/web/assets/css-B0t_muXd.js +0 -3
  38. package/dist/web/assets/cssMode-CPThwItX.js +0 -4
  39. package/dist/web/assets/cypher-D1hqiMFD.js +0 -1
  40. package/dist/web/assets/dart-Bz550Pyv.js +0 -1
  41. package/dist/web/assets/dockerfile-CIXgVAuA.js +0 -1
  42. package/dist/web/assets/ecl-D9qbvZoA.js +0 -1
  43. package/dist/web/assets/editor-BR-TvLsg.css +0 -1
  44. package/dist/web/assets/editor-DPKWm9GW.css +0 -1
  45. package/dist/web/assets/editor.api-C8BHpRhn.js +0 -642
  46. package/dist/web/assets/editor.main-DQ658ZNP.js +0 -53
  47. package/dist/web/assets/elixir-b2M38fAy.js +0 -1
  48. package/dist/web/assets/flow9-Dq1UYMkt.js +0 -1
  49. package/dist/web/assets/freemarker2-DWDTYVJR.js +0 -3
  50. package/dist/web/assets/fsharp-BaeLhgfq.js +0 -1
  51. package/dist/web/assets/go-Bd-NFKIC.js +0 -1
  52. package/dist/web/assets/graphql-DZVerJfy.js +0 -1
  53. package/dist/web/assets/handlebars-D4DzjGQ7.js +0 -1
  54. package/dist/web/assets/hcl-CAVzrZfH.js +0 -1
  55. package/dist/web/assets/html-DnzhKSoD.js +0 -1
  56. package/dist/web/assets/htmlMode-CR7UKfEH.js +0 -4
  57. package/dist/web/assets/ini-CyXdX58t.js +0 -1
  58. package/dist/web/assets/java-B5pNgvhy.js +0 -1
  59. package/dist/web/assets/javascript-D2srszZ8.js +0 -1
  60. package/dist/web/assets/julia-XRhmV3AN.js +0 -1
  61. package/dist/web/assets/kotlin-DOd3J5vr.js +0 -1
  62. package/dist/web/assets/less-veZSnyw6.js +0 -2
  63. package/dist/web/assets/lexon-QWGkuK0H.js +0 -1
  64. package/dist/web/assets/liquid-CIT2Wl_l.js +0 -1
  65. package/dist/web/assets/lua-CYGpjuO5.js +0 -1
  66. package/dist/web/assets/m3-yNnrZkdc.js +0 -1
  67. package/dist/web/assets/markdown-BCSWEPSX.js +0 -1
  68. package/dist/web/assets/mdx-CWLaEOFy.js +0 -1
  69. package/dist/web/assets/mips-OpYmcC30.js +0 -1
  70. package/dist/web/assets/monaco.contribution-BJhODGkt.js +0 -2
  71. package/dist/web/assets/msdax-2oxoTO9Z.js +0 -1
  72. package/dist/web/assets/mysql-5KlC-K_9.js +0 -1
  73. package/dist/web/assets/objective-c-CcDCgtLx.js +0 -1
  74. package/dist/web/assets/pascal-BZGsbaEV.js +0 -1
  75. package/dist/web/assets/pascaligo-DtD5qU3G.js +0 -1
  76. package/dist/web/assets/perl-C1jNNS3E.js +0 -1
  77. package/dist/web/assets/pgsql-CT0fhiZa.js +0 -1
  78. package/dist/web/assets/php-D6DrXoPM.js +0 -1
  79. package/dist/web/assets/pla-b3-HN2pF.js +0 -1
  80. package/dist/web/assets/postiats-Bin2ApVS.js +0 -1
  81. package/dist/web/assets/powerquery-7ASnn-ZG.js +0 -1
  82. package/dist/web/assets/powershell-t4p7sU1H.js +0 -1
  83. package/dist/web/assets/primeicons-DMOk5skT.eot +0 -0
  84. package/dist/web/assets/primeicons-Dr5RGzOO.svg +0 -345
  85. package/dist/web/assets/primeicons-MpK4pl85.ttf +0 -0
  86. package/dist/web/assets/primeicons-WjwUDZjB.woff +0 -0
  87. package/dist/web/assets/protobuf-BUGeWa_j.js +0 -2
  88. package/dist/web/assets/pug-BuKcgC9s.js +0 -1
  89. package/dist/web/assets/python-6CGfpCNq.js +0 -1
  90. package/dist/web/assets/qsharp-DxLLX8mo.js +0 -1
  91. package/dist/web/assets/r-DMlFgn7A.js +0 -1
  92. package/dist/web/assets/razor-DEMMh3TD.js +0 -1
  93. package/dist/web/assets/redis-cXItkC5u.js +0 -1
  94. package/dist/web/assets/redshift-BZVbW7HE.js +0 -1
  95. package/dist/web/assets/restructuredtext-BzjxwS8h.js +0 -1
  96. package/dist/web/assets/ruby-C5nyLV4l.js +0 -1
  97. package/dist/web/assets/rust-BcmMsHdf.js +0 -1
  98. package/dist/web/assets/sb-Dnb1iy6B.js +0 -1
  99. package/dist/web/assets/scala-anMIFYpA.js +0 -1
  100. package/dist/web/assets/scheme-BItQTe08.js +0 -1
  101. package/dist/web/assets/scss-BOv51BJ5.js +0 -3
  102. package/dist/web/assets/shell-BsRYRTNN.js +0 -1
  103. package/dist/web/assets/solidity-BtuLgGDx.js +0 -1
  104. package/dist/web/assets/sophia-B0Vkc5MF.js +0 -1
  105. package/dist/web/assets/sparql-B7lvkZQM.js +0 -1
  106. package/dist/web/assets/sql-DvP5MpA3.js +0 -1
  107. package/dist/web/assets/st-GVUeyB3U.js +0 -1
  108. package/dist/web/assets/swift-DSPIoCjm.js +0 -1
  109. package/dist/web/assets/systemverilog-Icj2-k23.js +0 -1
  110. package/dist/web/assets/tcl-Cd8KQcm-.js +0 -1
  111. package/dist/web/assets/tsMode-D6_qJNEr.js +0 -11
  112. package/dist/web/assets/twig-CBHmt8z3.js +0 -1
  113. package/dist/web/assets/typescript-BM9aPEFg.js +0 -1
  114. package/dist/web/assets/typespec-Ckc037mq.js +0 -1
  115. package/dist/web/assets/vb-B97GW9Wb.js +0 -1
  116. package/dist/web/assets/wgsl-DIKmb3YH.js +0 -298
  117. package/dist/web/assets/xml-CoSbvcg5.js +0 -1
  118. package/dist/web/assets/yaml-56GOgy8k.js +0 -1
@@ -0,0 +1 @@
1
+ .monaco-editor .goto-definition-link{cursor:pointer;text-decoration:underline;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head{box-sizing:border-box;flex-wrap:nowrap;justify-content:space-between;display:flex}.monaco-editor .peekview-widget .head .peekview-title{text-overflow:ellipsis;align-items:baseline;min-width:0;margin-left:20px;font-size:13px;display:flex;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){margin-left:.5em;font-size:.9em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{text-align:right;flex:1;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{align-self:center;margin-right:4px}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{z-index:10;position:absolute}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-top-width:0;border-bottom-style:solid;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{vertical-align:top;display:inline-block}.monaco-editor .reference-zone-widget .messages{text-align:center;width:100%;height:100%;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground);line-height:23px}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground);display:inline-flex}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-left:auto;margin-right:12px}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder,transparent);box-sizing:border-box}.monaco-editor .monaco-editor-overlaymessage{z-index:10000;padding-bottom:8px}.monaco-editor .monaco-editor-overlaymessage.below{z-index:10000;padding-top:8px;padding-bottom:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:.15s ease-out fadeIn}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:.1s ease-out fadeOut}.monaco-editor .monaco-editor-overlaymessage .message{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px;padding:2px 4px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{z-index:1000;border:8px solid #0000;position:absolute;left:2px;width:0!important;height:0!important}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{opacity:.6;margin-left:4px;display:flex}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{padding:2px 3px;font-size:8px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{justify-content:center;min-width:19px;display:flex}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover-content{box-sizing:border-box;padding-bottom:2px;padding-right:2px}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row{display:flex}.monaco-editor .monaco-hover .hover-row .hover-row-contents{flex-direction:column;min-width:0;display:flex}.monaco-editor .monaco-hover .hover-row .verbosity-actions{border-right:1px solid var(--vscode-editorHoverWidget-border);flex-direction:column;justify-content:end;padding-left:5px;padding-right:5px;display:flex}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon{cursor:pointer;font-size:11px}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.enabled{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover .hover-row .verbosity-actions .codicon.disabled{opacity:.6}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}@font-face{font-family:codicon;font-display:block;src:url(/assets/codicon-DCmgc-ay.ttf)format("truetype")}.codicon[class*=codicon-]{text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;font:16px/1 codicon;text-decoration:none;display:inline-block}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:1.5s steps(30,end) infinite codicon-spin}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{justify-content:center;align-items:center;display:flex}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground,var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground,var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{z-index:2;position:relative}.monaco-editor .lightBulbWidget:after{content:"";opacity:.3;background-color:var(--vscode-editor-background);z-index:1;width:100%;height:100%;display:block;position:absolute;top:0;left:0}.action-widget{z-index:40;background-color:var(--vscode-editorWidget-background);width:100%;min-width:160px;max-width:80vw;color:var(--vscode-editorWidget-foreground);border-radius:2px;font-size:13px;display:block;border:1px solid var(--vscode-editorWidget-border)!important}.context-view-block{cursor:initial;z-index:-1;width:100%;height:100%;position:fixed;top:0;left:0}.context-view-pointerBlock{cursor:initial;z-index:2;width:100%;height:100%;position:fixed;top:0;left:0}.action-widget .monaco-list{-webkit-user-select:none;user-select:none;border:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{white-space:nowrap;cursor:pointer;touch-action:none;width:100%;padding:0 10px}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){color:var(--vscode-quickInputList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder,transparent);outline-offset:-1px;background-color:var(--vscode-quickInputList-focusBackground)!important}.action-widget .monaco-list-row.group-header{font-weight:600;color:var(--vscode-descriptionForeground)!important}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;cursor:default!important;background-color:#0000!important;outline:0 solid!important}.action-widget .monaco-list-row.action{align-items:center;gap:6px;display:flex}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{text-overflow:ellipsis;flex:1;overflow:hidden}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);border-radius:3px}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorHoverWidget-statusBarBackground);border-top:1px solid var(--vscode-editorHoverWidget-border)}.action-widget .action-widget-action-bar:before{content:"";width:100%;display:block}.action-widget .action-widget-action-bar .actions-container{padding:0 8px}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);pointer-events:all;padding:0;font-size:12px;line-height:22px}.action-widget-action-bar .action-item{pointer-events:none;margin-right:16px}.action-widget-action-bar .action-label:hover{background-color:#0000!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{vertical-align:text-top;margin-right:4px;display:inline-block}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{padding-right:5px;display:inline-block}.monaco-editor .marker-widget .descriptioncontainer{white-space:pre;-webkit-user-select:text;user-select:text;padding:8px 12px 0 20px;position:absolute}.monaco-editor .marker-widget .descriptioncontainer .message{flex-direction:column;display:flex}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-underline-position:under;color:var(--vscode-textLink-activeForeground);border-bottom:1px solid #0000;text-decoration:underline}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}
@@ -0,0 +1 @@
1
+ import{$ as e,$c as t,$n as n,$o as r,$r as i,A as a,Ai as o,Al as s,Ar as c,At as l,B as u,Bo as d,Br as f,Bs as p,Cl as m,Cs as ee,Ct as te,Da as ne,Dc as h,Dl as re,Ds as ie,Dt as ae,E as oe,El as se,Eo as ce,Es as le,Et as ue,F as de,Fa as fe,Fc as pe,Fl as me,Fn as he,Fo as ge,Fr as _e,G as ve,Gi as ye,Gl as g,Go as be,Gr as xe,Gs as Se,H as Ce,Ha as we,Hl as Te,Ho as _,Hr as Ee,Hs as De,I as Oe,Ii as ke,In as Ae,Ir as je,Is as v,Jl as Me,Jo as Ne,Jr as Pe,L as Fe,Li as Ie,Ll as Le,Lo as y,Mo as b,Mr as Re,Ms as ze,Mt as Be,N as Ve,Ni as He,Nl as Ue,No as x,Nr as We,Nt as Ge,O as Ke,Oa as qe,Oc as S,Oo as Je,Os as Ye,P as Xe,Pc as Ze,Pn as C,Po as Qe,Pr as $e,Ps as et,Pt as tt,Q as nt,Qc as rt,Qr as it,Ra as at,Rl as ot,Ro as st,Rr as ct,Sl as w,St as lt,T as ut,Ta as dt,Tl as ft,To as pt,U as mt,Ul as T,Un as ht,Ur as gt,Us as _t,Va as vt,Vi as yt,Vl as bt,Vn as xt,Vo as E,Vr as St,W as Ct,Wa as wt,Wi as Tt,Wl as Et,Wo as Dt,Wr as Ot,Ws as kt,Xa as At,Xc as jt,Xo as D,Xs as Mt,Yi as Nt,Yo as Pt,Ys as O,Z as Ft,Za as It,Zn as Lt,Zr as Rt,_ as zt,_a as Bt,_c as Vt,_i as Ht,_l as Ut,_o as Wt,_s as Gt,ai as Kt,al as qt,ao as Jt,as as Yt,at as Xt,bn as Zt,cs as Qt,ct as $t,d as en,da as tn,dc as nn,dn as rn,do as an,ds as on,el as sn,er as cn,es as ln,et as un,f as dn,fa as fn,fc as k,fs as pn,g as mn,gc as A,gl as j,go as hn,gt as gn,h as _n,hc as vn,ho as yn,ht as bn,i as xn,ii as M,io as Sn,ir as Cn,iu as wn,j as Tn,ji as En,jn as Dn,jo as N,jr as On,jt as kn,k as An,kc as jn,ki as Mn,kl as P,kn as F,ko as Nn,kr as Pn,l as Fn,la as I,lc as In,lo as Ln,ls as Rn,lu as L,m as zn,ma as Bn,mc as Vn,mi as Hn,mo as Un,n as Wn,nl as R,no as Gn,nt as Kn,os as qn,p as Jn,pc as Yn,pl as Xn,ps as Zn,pt as Qn,ql as $n,qo as z,qr as er,qs as tr,r as B,ra as nr,ri as rr,ro as ir,rs as ar,s as or,si as sr,so as cr,su as lr,t as ur,ti as dr,tl as V,tn as fr,tr as pr,tt as mr,tu as hr,u as gr,uc as _r,ul as vr,un as yr,uo as br,ur as xr,uu as H,vn as Sr,vo as Cr,w as wr,wn as Tr,wt as Er,x as Dr,xa as Or,xl as kr,xt as Ar,y as jr,yr as Mr,z as Nr,za as Pr,zl as Fr,zo as Ir,zr as Lr}from"./markers-CggdBp2p.js";var Rr=`editor.action.showHover`,zr=`editor.action.showDefinitionPreviewHover`,Br=`editor.action.scrollUpHover`,Vr=`editor.action.scrollDownHover`,Hr=`editor.action.scrollLeftHover`,Ur=`editor.action.scrollRightHover`,Wr=`editor.action.pageUpHover`,Gr=`editor.action.pageDownHover`,Kr=`editor.action.goToTopHover`,qr=`editor.action.goToBottomHover`,Jr=`editor.action.increaseHoverVerbosityLevel`,Yr=L({key:`increaseHoverVerbosityLevel`,comment:[`Label for action that will increase the hover verbosity level.`]},`Increase Hover Verbosity Level`),Xr=`editor.action.decreaseHoverVerbosityLevel`,Zr=L({key:`decreaseHoverVerbosityLevel`,comment:[`Label for action that will decrease the hover verbosity level.`]},`Decrease Hover Verbosity Level`);function Qr(e,t){return!!e[t]}var $r=class{constructor(e,t){this.target=e.target,this.isLeftClick=e.event.leftButton,this.isMiddleClick=e.event.middleButton,this.isRightClick=e.event.rightButton,this.hasTriggerModifier=Qr(e.event,t.triggerModifier),this.hasSideBySideModifier=Qr(e.event,t.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=e.event.detail<=1}},ei=class{constructor(e,t){this.keyCodeIsTriggerKey=e.keyCode===t.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===t.triggerSideBySideKey,this.hasTriggerModifier=Qr(e,t.triggerModifier)}},ti=class{constructor(e,t,n,r){this.triggerKey=e,this.triggerModifier=t,this.triggerSideBySideKey=n,this.triggerSideBySideModifier=r}equals(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier}};function ni(e){return e===`altKey`?wn?new ti(57,`metaKey`,6,`altKey`):new ti(5,`ctrlKey`,6,`altKey`):wn?new ti(6,`altKey`,57,`metaKey`):new ti(6,`altKey`,5,`ctrlKey`)}var ri=class extends w{constructor(e,t){super(),this._onMouseMoveOrRelevantKeyDown=this._register(new j),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new j),this.onExecute=this._onExecute.event,this._onCancel=this._register(new j),this.onCancel=this._onCancel.event,this._editor=e,this._extractLineNumberFromMouseEvent=t?.extractLineNumberFromMouseEvent??(e=>e.target.position?e.target.position.lineNumber:0),this._opts=ni(this._editor.getOption(78)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(e=>{if(e.hasChanged(78)){let e=ni(this._editor.getOption(78));if(this._opts.equals(e))return;this._opts=e,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(e=>this._onEditorMouseMove(new $r(e,this._opts)))),this._register(this._editor.onMouseDown(e=>this._onEditorMouseDown(new $r(e,this._opts)))),this._register(this._editor.onMouseUp(e=>this._onEditorMouseUp(new $r(e,this._opts)))),this._register(this._editor.onKeyDown(e=>this._onEditorKeyDown(new ei(e,this._opts)))),this._register(this._editor.onKeyUp(e=>this._onEditorKeyUp(new ei(e,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(e=>this._onDidChangeCursorSelection(e))),this._register(this._editor.onDidChangeModel(e=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(e=>{(e.scrollTopChanged||e.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(e){this._lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])}_onEditorMouseDown(e){this._hasTriggerKeyOnMouseDown=e.hasTriggerModifier,this._lineNumberOnMouseDown=this._extractLineNumberFromMouseEvent(e)}_onEditorMouseUp(e){let t=this._extractLineNumberFromMouseEvent(e);this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===t&&this._onExecute.fire(e)}_onEditorKeyDown(e){this._lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}},ii=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ai=function(e,t){return function(n,r){t(n,r,e)}},oi=class extends te{constructor(e,t,n,r,i,a,o,s,c,l,u,d,f){super(e,{...r.getRawOptions(),overflowWidgetsDomNode:r.getOverflowWidgetsDomNode()},n,i,a,o,s,c,l,u,d,f),this._parentEditor=r,this._overwriteOptions=t,super.updateOptions(this._overwriteOptions),this._register(r.onDidChangeConfiguration(e=>this._onParentConfigurationChanged(e)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(e){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(e){dt(this._overwriteOptions,e,!0),super.updateOptions(this._overwriteOptions)}};oi=ii([ai(4,g),ai(5,Et),ai(6,sn),ai(7,S),ai(8,Lt),ai(9,Er),ai(10,sr),ai(11,Sr),ai(12,l)],oi);var si=new I(new tn(0,122,204)),ci={showArrow:!0,showFrame:!0,className:``,frameColor:si,arrowColor:si,keepEditorSelection:!1},li=`vs.editor.contrib.zoneWidget`,ui=class{constructor(e,t,n,r,i,a,o,s){this.id=``,this.domNode=e,this.afterLineNumber=t,this.afterColumn=n,this.heightInLines=r,this.showInHiddenAreas=o,this.ordinal=s,this._onDomNodeTop=i,this._onComputedHeight=a}onDomNodeTop(e){this._onDomNodeTop(e)}onComputedHeight(e){this._onComputedHeight(e)}},di=class{constructor(e,t){this._id=e,this._domNode=t}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}},fi=class e{constructor(t){this._editor=t,this._ruleName=e._IdGenerator.nextId(),this._decorations=this._editor.createDecorationsCollection(),this._color=null,this._height=-1}dispose(){this.hide(),ee(this._ruleName)}set color(e){this._color!==e&&(this._color=e,this._updateStyle())}set height(e){this._height!==e&&(this._height=e,this._updateStyle())}_updateStyle(){ee(this._ruleName),ln(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px !important; margin-left: -${this._height}px; `)}show(e){e.column===1&&(e={lineNumber:e.lineNumber,column:2}),this._decorations.set([{range:b.fromPositions(e),options:{description:`zone-widget-arrow`,className:this._ruleName,stickiness:1}}])}hide(){this._decorations.clear()}};fi._IdGenerator=new ne(`.arrow-decoration-`);var pi=class{constructor(e,t={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._viewZone=null,this._disposables=new m,this.container=null,this._isShowing=!1,this.editor=e,this._positionMarkerId=this.editor.createDecorationsCollection(),this.options=Or(t),dt(this.options,ci,!1),this.domNode=document.createElement(`div`),this.options.isAccessible||(this.domNode.setAttribute(`aria-hidden`,`true`),this.domNode.setAttribute(`role`,`presentation`)),this._disposables.add(this.editor.onDidLayoutChange(e=>{let t=this._getWidth(e);this.domNode.style.width=t+`px`,this.domNode.style.left=this._getLeft(e)+`px`,this._onWidth(t)}))}dispose(){this._overlayWidget&&=(this.editor.removeOverlayWidget(this._overlayWidget),null),this._viewZone&&this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._viewZone=null}),this._positionMarkerId.clear(),this._disposables.dispose()}create(){this.domNode.classList.add(`zone-widget`),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement(`div`),this.container.classList.add(`zone-widget-container`),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new fi(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){let e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){let e=this.options.arrowColor.toString();this._arrow.color=e}}_getWidth(e){return e.width-e.minimap.minimapWidth-e.verticalScrollbarWidth}_getLeft(e){return e.minimap.minimapWidth>0&&e.minimap.minimapLeft===0?e.minimap.minimapWidth:0}_onViewZoneTop(e){this.domNode.style.top=e+`px`}_onViewZoneHeight(e){var t;if(this.domNode.style.height=`${e}px`,this.container){let t=e-this._decoratingElementsHeight();this.container.style.height=`${t}px`;let n=this.editor.getLayoutInfo();this._doLayout(t,this._getWidth(n))}(t=this._resizeSash)==null||t.layout()}get position(){let e=this._positionMarkerId.getRange(0);if(e)return e.getStartPosition()}show(e,t){let n=b.isIRange(e)?b.lift(e):b.fromPositions(e);this._isShowing=!0,this._showImpl(n,t),this._isShowing=!1,this._positionMarkerId.set([{range:n,options:Be.EMPTY}])}hide(){var e;this._viewZone&&=(this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id)}),null),this._overlayWidget&&=(this.editor.removeOverlayWidget(this._overlayWidget),null),(e=this._arrow)==null||e.hide(),this._positionMarkerId.clear()}_decoratingElementsHeight(){let e=this.editor.getOption(67),t=0;if(this.options.showArrow){let n=Math.round(e/3);t+=2*n}if(this.options.showFrame){let n=Math.round(e/9);t+=2*n}return t}_showImpl(e,t){let n=e.getStartPosition(),r=this.editor.getLayoutInfo(),i=this._getWidth(r);this.domNode.style.width=`${i}px`,this.domNode.style.left=this._getLeft(r)+`px`;let a=document.createElement(`div`);a.style.overflow=`hidden`;let o=this.editor.getOption(67);if(!this.options.allowUnlimitedHeight){let e=Math.max(12,this.editor.getLayoutInfo().height/o*.8);t=Math.min(t,e)}let s=0,c=0;if(this._arrow&&this.options.showArrow&&(s=Math.round(o/3),this._arrow.height=s,this._arrow.show(n)),this.options.showFrame&&(c=Math.round(o/9)),this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._overlayWidget&&=(this.editor.removeOverlayWidget(this._overlayWidget),null),this.domNode.style.top=`-1000px`,this._viewZone=new ui(a,n.lineNumber,n.column,t,e=>this._onViewZoneTop(e),e=>this._onViewZoneHeight(e),this.options.showInHiddenAreas,this.options.ordinal),this._viewZone.id=e.addZone(this._viewZone),this._overlayWidget=new di(li+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){let e=this.options.frameWidth?this.options.frameWidth:c;this.container.style.borderTopWidth=e+`px`,this.container.style.borderBottomWidth=e+`px`}let l=t*o-this._decoratingElementsHeight();this.container&&(this.container.style.top=s+`px`,this.container.style.height=l+`px`,this.container.style.overflow=`hidden`),this._doLayout(l,i),this.options.keepEditorSelection||this.editor.setSelection(e);let u=this.editor.getModel();if(u){let t=u.validateRange(new b(e.startLineNumber,1,e.endLineNumber+1,1));this.revealRange(t,t.startLineNumber===u.getLineCount())}}revealRange(e,t){t?this.editor.revealLineNearTop(e.endLineNumber,0):this.editor.revealRange(e,0)}setCssClass(e,t){this.container&&(t&&this.container.classList.remove(t),this.container.classList.add(e))}_onWidth(e){}_doLayout(e,t){}_relayout(e){this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones(t=>{this._viewZone&&(this._viewZone.heightInLines=e,t.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new lt(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.state=0);let e;this._disposables.add(this._resizeSash.onDidStart(t=>{this._viewZone&&(e={startY:t.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{e=void 0})),this._disposables.add(this._resizeSash.onDidChange(t=>{if(e){let n=(t.currentY-e.startY)/this.editor.getOption(67),r=n<0?Math.ceil(n):Math.floor(n),i=e.heightInLines+r;i>5&&i<35&&this._relayout(i)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){let e=this.editor.getLayoutInfo();return e.width-e.minimap.minimapWidth}},mi=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},hi=function(e,t){return function(n,r){t(n,r,e)}},gi=$n(`IPeekViewService`);cr(gi,class{constructor(){this._widgets=new Map}addExclusiveWidget(e,t){let n=this._widgets.get(e);n&&(n.listener.dispose(),n.widget.dispose()),this._widgets.set(e,{widget:t,listener:t.onDidClose(()=>{let n=this._widgets.get(e);n&&n.widget===t&&(n.listener.dispose(),this._widgets.delete(e))})})}},1);var U;(function(e){e.inPeekEditor=new jn(`inReferenceSearchEditor`,!0,L(`inReferenceSearchEditor`,`Whether the current code editor is embedded inside peek`)),e.notInPeekEditor=e.inPeekEditor.toNegated()})(U||={});var _i=class{constructor(e,t){e instanceof oi&&U.inPeekEditor.bindTo(t)}dispose(){}};_i.ID=`editor.contrib.referenceController`,_i=mi([hi(1,S)],_i),Ir(_i.ID,_i,0);function vi(e){let t=e.get(Et).getFocusedCodeEditor();return t instanceof oi?t.getParentEditor():t}var yi={headerBackgroundColor:I.white,primaryHeadingColor:I.fromHex(`#333333`),secondaryHeadingColor:I.fromHex(`#6c6c6cb3`)},bi=class extends pi{constructor(e,t,n){super(e,t),this.instantiationService=n,this._onDidClose=new j,this.onDidClose=this._onDidClose.event,dt(this.options,yi,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(e){let t=this.options;e.headerBackgroundColor&&(t.headerBackgroundColor=e.headerBackgroundColor),e.primaryHeadingColor&&(t.primaryHeadingColor=e.primaryHeadingColor),e.secondaryHeadingColor&&(t.secondaryHeadingColor=e.secondaryHeadingColor),super.style(e)}_applyStyles(){super._applyStyles();let e=this.options;this._headElement&&e.headerBackgroundColor&&(this._headElement.style.backgroundColor=e.headerBackgroundColor.toString()),this._primaryHeading&&e.primaryHeadingColor&&(this._primaryHeading.style.color=e.primaryHeadingColor.toString()),this._secondaryHeading&&e.secondaryHeadingColor&&(this._secondaryHeading.style.color=e.secondaryHeadingColor.toString()),this._bodyElement&&e.frameColor&&(this._bodyElement.style.borderColor=e.frameColor.toString())}_fillContainer(e){this.setCssClass(`peekview-widget`),this._headElement=E(`.head`),this._bodyElement=E(`.body`),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)}_fillHead(e,t){this._titleElement=E(`.peekview-title`),this.options.supportOnTitleClick&&(this._titleElement.classList.add(`clickable`),Pt(this._titleElement,`click`,e=>this._onTitleClick(e))),D(this._headElement,this._titleElement),this._fillTitleIcon(this._titleElement),this._primaryHeading=E(`span.filename`),this._secondaryHeading=E(`span.dirname`),this._metaHeading=E(`span.meta`),D(this._titleElement,this._primaryHeading,this._secondaryHeading,this._metaHeading);let n=E(`.peekview-actions`);D(this._headElement,n),this._actionbarWidget=new o(n,this._getActionBarOptions()),this._disposables.add(this._actionbarWidget),t||this._actionbarWidget.push(new vr(`peekview.close`,L(`label.close`,`Close`),V.asClassName(R.close),!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(e){}_getActionBarOptions(){return{actionViewItemProvider:mr.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(e){}setTitle(e,t){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=e,this._primaryHeading.setAttribute(`title`,e),t?this._secondaryHeading.innerText=t:r(this._secondaryHeading))}setMetaTitle(e){this._metaHeading&&(e?(this._metaHeading.innerText=e,ie(this._metaHeading)):pn(this._metaHeading))}_doLayout(e,t){if(!this._isShowing&&e<0){this.dispose();return}let n=Math.ceil(this.editor.getOption(67)*1.2),r=Math.round(e-(n+2));this._doLayoutHead(n,t),this._doLayoutBody(r,t)}_doLayoutHead(e,t){this._headElement&&(this._headElement.style.height=`${e}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(e,t){this._bodyElement&&(this._bodyElement.style.height=`${e}px`)}};bi=mi([hi(2,g)],bi);var xi=M(`peekViewTitle.background`,{dark:`#252526`,light:`#F3F3F3`,hcDark:I.black,hcLight:I.white},L(`peekViewTitleBackground`,`Background color of the peek view title area.`)),Si=M(`peekViewTitleLabel.foreground`,{dark:I.white,light:I.black,hcDark:I.white,hcLight:_e},L(`peekViewTitleForeground`,`Color of the peek view title.`)),Ci=M(`peekViewTitleDescription.foreground`,{dark:`#ccccccb3`,light:`#616161`,hcDark:`#FFFFFF99`,hcLight:`#292929`},L(`peekViewTitleInfoForeground`,`Color of the peek view title info.`)),wi=M(`peekView.border`,{dark:Lr,light:Lr,hcDark:it,hcLight:it},L(`peekViewBorder`,`Color of the peek view borders and arrow.`)),Ti=M(`peekViewResult.background`,{dark:`#252526`,light:`#F3F3F3`,hcDark:I.black,hcLight:I.white},L(`peekViewResultsBackground`,`Background color of the peek view result list.`));M(`peekViewResult.lineForeground`,{dark:`#bbbbbb`,light:`#646465`,hcDark:I.white,hcLight:_e},L(`peekViewResultsMatchForeground`,`Foreground color for line nodes in the peek view result list.`)),M(`peekViewResult.fileForeground`,{dark:I.white,light:`#1E1E1E`,hcDark:I.white,hcLight:_e},L(`peekViewResultsFileForeground`,`Foreground color for file nodes in the peek view result list.`)),M(`peekViewResult.selectionBackground`,{dark:`#3399ff33`,light:`#3399ff33`,hcDark:null,hcLight:null},L(`peekViewResultsSelectionBackground`,`Background color of the selected entry in the peek view result list.`)),M(`peekViewResult.selectionForeground`,{dark:I.white,light:`#6C6C6C`,hcDark:I.white,hcLight:_e},L(`peekViewResultsSelectionForeground`,`Foreground color of the selected entry in the peek view result list.`));var Ei=M(`peekViewEditor.background`,{dark:`#001F33`,light:`#F2F8FC`,hcDark:I.black,hcLight:I.white},L(`peekViewEditorBackground`,`Background color of the peek view editor.`));M(`peekViewEditorGutter.background`,{dark:Ei,light:Ei,hcDark:Ei,hcLight:Ei},L(`peekViewEditorGutterBackground`,`Background color of the gutter in the peek view editor.`)),M(`peekViewEditorStickyScroll.background`,{dark:Ei,light:Ei,hcDark:Ei,hcLight:Ei},L(`peekViewEditorStickScrollBackground`,`Background color of sticky scroll in the peek view editor.`)),M(`peekViewResult.matchHighlightBackground`,{dark:`#ea5c004d`,light:`#ea5c004d`,hcDark:null,hcLight:null},L(`peekViewResultsMatchHighlight`,`Match highlight color in the peek view result list.`)),M(`peekViewEditor.matchHighlightBackground`,{dark:`#ff8f0099`,light:`#f5d802de`,hcDark:null,hcLight:null},L(`peekViewEditorMatchHighlight`,`Match highlight color in the peek view editor.`)),M(`peekViewEditor.matchHighlightBorder`,{dark:null,light:null,hcDark:Rt,hcLight:Rt},L(`peekViewEditorMatchHighlightBorder`,`Match highlight border in the peek view editor.`));var Di=class{constructor(e,t,n,r){this.isProviderFirst=e,this.parent=t,this.link=n,this._rangeCallback=r,this.id=qe.nextId()}get uri(){return this.link.uri}get range(){return this._range??this.link.targetSelectionRange??this.link.range}set range(e){this._range=e,this._rangeCallback(this)}get ariaMessage(){let e=this.parent.getPreview(this)?.preview(this.range);return e?L({key:`aria.oneReference.preview`,comment:[`Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code`]},`{0} in {1} on line {2} at column {3}`,e.value,Un(this.uri),this.range.startLineNumber,this.range.startColumn):L(`aria.oneReference`,`in {0} on line {1} at column {2}`,Un(this.uri),this.range.startLineNumber,this.range.startColumn)}},Oi=class{constructor(e){this._modelReference=e}dispose(){this._modelReference.dispose()}preview(e,t=8){let n=this._modelReference.object.textEditorModel;if(!n)return;let{startLineNumber:r,startColumn:i,endLineNumber:a,endColumn:o}=e,s=new b(r,n.getWordUntilPosition({lineNumber:r,column:i-t}).startColumn,r,i),c=new b(a,o,a,1073741824),l=n.getValueInRange(s).replace(/^\s+/,``),u=n.getValueInRange(e),d=n.getValueInRange(c).replace(/\s+$/,``);return{value:l+u+d,highlight:{start:l.length,end:l.length+u.length}}}},ki=class{constructor(e,t){this.parent=e,this.uri=t,this.children=[],this._previews=new Nn}dispose(){re(this._previews.values()),this._previews.clear()}getPreview(e){return this._previews.get(e.uri)}get ariaMessage(){let e=this.children.length;return e===1?L(`aria.fileReferences.1`,`1 symbol in {0}, full path {1}`,Un(this.uri),this.uri.fsPath):L(`aria.fileReferences.N`,`{0} symbols in {1}, full path {2}`,e,Un(this.uri),this.uri.fsPath)}async resolve(e){if(this._previews.size!==0)return this;for(let t of this.children)if(!this._previews.has(t.uri))try{let n=await e.createModelReference(t.uri);this._previews.set(t.uri,new Oi(n))}catch(e){ot(e)}return this}},W=class e{constructor(t,n){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new j,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=t,this._title=n;let[r]=t;t.sort(e._compareReferences);let i;for(let n of t)if((!i||!Wt.isEqual(i.uri,n.uri,!0))&&(i=new ki(this,n.uri),this.groups.push(i)),i.children.length===0||e._compareReferences(n,i.children[i.children.length-1])!==0){let e=new Di(r===n,i,n,e=>this._onDidChangeReferenceRange.fire(e));this.references.push(e),i.children.push(e)}}dispose(){re(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new e(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?L(`aria.result.0`,`No results found`):this.references.length===1?L(`aria.result.1`,`Found 1 symbol in {0}`,this.references[0].uri.fsPath):this.groups.length===1?L(`aria.result.n1`,`Found {0} symbols in {1}`,this.references.length,this.groups[0].uri.fsPath):L(`aria.result.nm`,`Found {0} symbols in {1} files`,this.references.length,this.groups.length)}nextOrPreviousReference(e,t){let{parent:n}=e,r=n.children.indexOf(e),i=n.children.length,a=n.parent.groups.length;return a===1||t&&r+1<i||!t&&r>0?(r=t?(r+1)%i:(r+i-1)%i,n.children[r]):(r=n.parent.groups.indexOf(n),t?(r=(r+1)%a,n.parent.groups[r].children[0]):(r=(r+a-1)%a,n.parent.groups[r].children[n.parent.groups[r].children.length-1]))}nearestReference(e,t){let n=this.references.map((n,r)=>({idx:r,prefixLen:Ze(n.uri.toString(),e.toString()),offsetDist:Math.abs(n.range.startLineNumber-t.lineNumber)*100+Math.abs(n.range.startColumn-t.column)})).sort((e,t)=>e.prefixLen>t.prefixLen?-1:e.prefixLen<t.prefixLen?1:e.offsetDist<t.offsetDist?-1:+(e.offsetDist>t.offsetDist))[0];if(n)return this.references[n.idx]}referenceAt(e,t){for(let n of this.references)if(n.uri.toString()===e.toString()&&b.containsPosition(n.range,t))return n}firstReference(){for(let e of this.references)if(e.isProviderFirst)return e;return this.references[0]}static _compareReferences(e,t){return Wt.compare(e.uri,t.uri)||b.compareRangesUsingStarts(e.range,t.range)}},Ai=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ji=function(e,t){return function(n,r){t(n,r,e)}},Mi,Ni=class{constructor(e){this._resolverService=e}hasChildren(e){return e instanceof W||e instanceof ki}getChildren(e){if(e instanceof W)return e.groups;if(e instanceof ki)return e.resolve(this._resolverService).then(e=>e.children);throw Error(`bad tree`)}};Ni=Ai([ji(0,bt)],Ni);var Pi=class{getHeight(){return 23}getTemplateId(e){return e instanceof ki?Ri.id:Bi.id}},Fi=class{constructor(e){this._keybindingService=e}getKeyboardNavigationLabel(e){if(e instanceof Di){let t=e.parent.getPreview(e)?.preview(e.range);if(t)return t.value}return Un(e.uri)}};Fi=Ai([ji(0,F)],Fi);var Ii=class{getId(e){return e instanceof Di?e.id:e.uri}},Li=class extends w{constructor(e,t){super(),this._labelService=t;let n=document.createElement(`div`);n.classList.add(`reference-file`),this.file=this._register(new Xe(n,{supportHighlights:!0})),this.badge=new Oe(D(n,E(`.count`)),{},Xt),e.appendChild(n)}set(e,t){let n=hn(e.uri);this.file.setLabel(this._labelService.getUriBasenameLabel(e.uri),this._labelService.getUriLabel(n,{relative:!0}),{title:this._labelService.getUriLabel(e.uri),matches:t});let r=e.children.length;this.badge.setCount(r),r>1?this.badge.setTitleFormat(L(`referencesCount`,`{0} references`,r)):this.badge.setTitleFormat(L(`referenceCount`,`{0} reference`,r))}};Li=Ai([ji(1,Ve)],Li);var Ri=Mi=class{constructor(e){this._instantiationService=e,this.templateId=Mi.id}renderTemplate(e){return this._instantiationService.createInstance(Li,e)}renderElement(e,t,n){n.set(e.element,ce(e.filterData))}disposeTemplate(e){e.dispose()}};Ri.id=`FileReferencesRenderer`,Ri=Mi=Ai([ji(0,g)],Ri);var zi=class extends w{constructor(e){super(),this.label=this._register(new de(e))}set(e,t){let n=e.parent.getPreview(e)?.preview(e.range);if(!n||!n.value)this.label.set(`${Un(e.uri)}:${e.range.startLineNumber+1}:${e.range.startColumn+1}`);else{let{value:e,highlight:r}=n;t&&!pt.isDefault(t)?(this.label.element.classList.toggle(`referenceMatch`,!1),this.label.set(e,ce(t))):(this.label.element.classList.toggle(`referenceMatch`,!0),this.label.set(e,[r]))}}},Bi=class e{constructor(){this.templateId=e.id}renderTemplate(e){return new zi(e)}renderElement(e,t,n){n.set(e.element,e.filterData)}disposeTemplate(e){e.dispose()}};Bi.id=`OneReferenceRenderer`;var Vi=class{getWidgetAriaLabel(){return L(`treeAriaLabel`,`References`)}getAriaLabel(e){return e.ariaMessage}},Hi=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ui=function(e,t){return function(n,r){t(n,r,e)}},Wi=class e{constructor(e,t){this._editor=e,this._model=t,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new m,this._callOnModelChange=new m,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();let e=this._editor.getModel();if(e){for(let t of this._model.references)if(t.uri.toString()===e.uri.toString()){this._addDecorations(t.parent);return}}}_addDecorations(t){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));let n=[],r=[];for(let i=0,a=t.children.length;i<a;i++){let a=t.children[i];this._decorationIgnoreSet.has(a.id)||a.uri.toString()===this._editor.getModel().uri.toString()&&(n.push({range:a.range,options:e.DecorationOptions}),r.push(i))}this._editor.changeDecorations(e=>{let i=e.deltaDecorations([],n);for(let e=0;e<i.length;e++)this._decorations.set(i[e],t.children[r[e]])})}_onDecorationChanged(){let e=[],t=this._editor.getModel();if(t){for(let[n,r]of this._decorations){let i=t.getDecorationRange(n);if(!i)continue;let a=!1;b.equalsRange(i,r.range)||((b.spansMultipleLines(i)||r.range.endColumn-r.range.startColumn!==i.endColumn-i.startColumn)&&(a=!0),a?(this._decorationIgnoreSet.add(r.id),e.push(n)):r.range=i)}for(let t=0,n=e.length;t<n;t++)this._decorations.delete(e[t]);this._editor.removeDecorations(e)}}removeDecorations(){this._editor.removeDecorations([...this._decorations.keys()]),this._decorations.clear()}};Wi.DecorationOptions=Be.register({description:`reference-decoration`,stickiness:1,className:`reference-decoration`});var Gi=class{constructor(){this.ratio=.7,this.heightInLines=18}static fromJSON(e){let t,n;try{let r=JSON.parse(e);t=r.ratio,n=r.heightInLines}catch{}return{ratio:t||.7,heightInLines:n||18}}},Ki=class extends Nr{},qi=class extends bi{constructor(e,t,n,r,i,a,o,s,c,l,u,d){super(e,{showFrame:!1,showArrow:!0,isResizeable:!0,isAccessible:!0,supportOnTitleClick:!0},a),this._defaultTreeKeyboardSupport=t,this.layoutData=n,this._textModelResolverService=i,this._instantiationService=a,this._peekViewService=o,this._uriLabel=s,this._undoRedoService=c,this._keybindingService=l,this._languageService=u,this._languageConfigurationService=d,this._disposeOnNewModel=new m,this._callOnDispose=new m,this._onDidSelectReference=new j,this.onDidSelectReference=this._onDidSelectReference.event,this._dim=new _(0,0),this._applyTheme(r.getColorTheme()),this._callOnDispose.add(r.onDidColorThemeChange(this._applyTheme.bind(this))),this._peekViewService.addExclusiveWidget(e,this),this.create()}dispose(){this.setModel(void 0),this._callOnDispose.dispose(),this._disposeOnNewModel.dispose(),re(this._preview),re(this._previewNotAvailableMessage),re(this._tree),re(this._previewModelReference),this._splitView.dispose(),super.dispose()}_applyTheme(e){let t=e.getColor(wi)||I.transparent;this.style({arrowColor:t,frameColor:t,headerBackgroundColor:e.getColor(xi)||I.transparent,primaryHeadingColor:e.getColor(Si),secondaryHeadingColor:e.getColor(Ci)})}show(e){super.show(e,this.layoutData.heightInLines||18)}focusOnReferenceTree(){this._tree.domFocus()}focusOnPreviewEditor(){this._preview.focus()}isPreviewEditorFocused(){return this._preview.hasTextFocus()}_onTitleClick(e){this._preview&&this._preview.getModel()&&this._onDidSelectReference.fire({element:this._getFocusedReference(),kind:e.ctrlKey||e.metaKey||e.altKey?`side`:`open`,source:`title`})}_fillBody(e){this.setCssClass(`reference-zone-widget`),this._messageContainer=D(e,E(`div.messages`)),pn(this._messageContainer),this._splitView=new nt(e,{orientation:1}),this._previewContainer=D(e,E(`div.preview.inline`)),this._preview=this._instantiationService.createInstance(oi,this._previewContainer,{scrollBeyondLastLine:!1,scrollbar:{verticalScrollbarSize:14,horizontal:`auto`,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,alwaysConsumeMouseWheel:!0},overviewRulerLanes:2,fixedOverflowWidgets:!0,minimap:{enabled:!1}},{},this.editor),pn(this._previewContainer),this._previewNotAvailableMessage=new Ge(L(`missingPreviewMessage`,`no preview available`),Zt,Ge.DEFAULT_CREATION_OPTIONS,null,this._undoRedoService,this._languageService,this._languageConfigurationService),this._treeContainer=D(e,E(`div.ref-tree.inline`));let t={keyboardSupport:this._defaultTreeKeyboardSupport,accessibilityProvider:new Vi,keyboardNavigationLabelProvider:this._instantiationService.createInstance(Fi),identityProvider:new Ii,openOnSingleClick:!0,selectionNavigation:!0,overrideStyles:{listBackground:Ti}};this._defaultTreeKeyboardSupport&&this._callOnDispose.add(Pt(this._treeContainer,`keydown`,e=>{e.equals(9)&&(this._keybindingService.dispatchEvent(e,e.target),e.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(Ki,`ReferencesWidget`,this._treeContainer,new Pi,[this._instantiationService.createInstance(Ri),this._instantiationService.createInstance(Bi)],this._instantiationService.createInstance(Ni),t),this._splitView.addView({onDidChange:Ut.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:e=>{this._preview.layout({height:this._dim.height,width:e})}},Ft.Distribute),this._splitView.addView({onDidChange:Ut.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:e=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${e}px`,this._tree.layout(this._dim.height,e)}},Ft.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));let n=(e,t)=>{e instanceof Di&&(t===`show`&&this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:t,source:`tree`}))};this._tree.onDidOpen(e=>{e.sideBySide?n(e.element,`side`):e.editorOptions.pinned?n(e.element,`goto`):n(e.element,`show`)}),pn(this._treeContainer)}_onWidth(e){this._dim&&this._doLayoutBody(this._dim.height,e)}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._dim=new _(t,e),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(t),this._splitView.resizeView(0,t*this.layoutData.ratio)}setSelection(e){return this._revealReference(e,!0).then(()=>{this._model&&(this._tree.setSelection([e]),this._tree.setFocus([e]))})}setModel(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(``),this._messageContainer.innerText=L(`noResults`,`No results`),ie(this._messageContainer),Promise.resolve(void 0)):(pn(this._messageContainer),this._decorationsManager=new Wi(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(e=>this._tree.rerender(e))),this._disposeOnNewModel.add(this._preview.onMouseDown(e=>{let{event:t,target:n}=e;if(t.detail!==2)return;let r=this._getFocusedReference();r&&this._onDidSelectReference.fire({element:{uri:r.uri,range:n.range},kind:t.ctrlKey||t.metaKey||t.altKey?`side`:`open`,source:`editor`})})),this.container.classList.add(`results-loaded`),ie(this._treeContainer),ie(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){let[e]=this._tree.getFocus();if(e instanceof Di)return e;if(e instanceof ki&&e.children.length>0)return e.children[0]}async revealReference(e){await this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:`goto`,source:`tree`})}async _revealReference(e,t){if(this._revealedReference===e)return;this._revealedReference=e,e.uri.scheme===ze.inMemory?this.setTitle(L(`peekView.alternateTitle`,`References`)):this.setTitle(yn(e.uri),this._uriLabel.getUriLabel(hn(e.uri)));let n=this._textModelResolverService.createModelReference(e.uri);this._tree.getInput()===e.parent?this._tree.reveal(e):(t&&this._tree.reveal(e.parent),await this._tree.expand(e.parent),this._tree.reveal(e));let r=await n;if(!this._model){r.dispose();return}re(this._previewModelReference);let i=r.object;if(i){let t=this._preview.getModel()===i.textEditorModel?0:1,n=b.lift(e.range).collapseToStart();this._previewModelReference=r,this._preview.setModel(i.textEditorModel),this._preview.setSelection(n),this._preview.revealRangeInCenter(n,t)}else this._preview.setModel(this._previewNotAvailableMessage),r.dispose()}};qi=Hi([Ui(3,Lt),Ui(4,bt),Ui(5,g),Ui(6,gi),Ui(7,Ve),Ui(8,tt),Ui(9,F),Ui(10,Gn),Ui(11,Sr)],qi);var Ji=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Yi=function(e,t){return function(n,r){t(n,r,e)}},Xi,Zi=new jn(`referenceSearchVisible`,!1,L(`referenceSearchVisible`,`Whether reference peek is visible, like 'Peek References' or 'Peek Definition'`)),Qi=Xi=class{static get(e){return e.getContribution(Xi.ID)}constructor(e,t,n,r,i,a,o,s){this._defaultTreeKeyboardSupport=e,this._editor=t,this._editorService=r,this._notificationService=i,this._instantiationService=a,this._storageService=o,this._configurationService=s,this._disposables=new m,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=Zi.bindTo(n)}dispose(){var e,t;this._referenceSearchVisible.reset(),this._disposables.dispose(),(e=this._widget)==null||e.dispose(),(t=this._model)==null||t.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(e,t,n){let r;if(this._widget&&(r=this._widget.position),this.closeWidget(),r&&e.containsPosition(r))return;this._peekMode=n,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));let i=`peekViewLayout`,a=Gi.fromJSON(this._storageService.get(i,0,`{}`));this._widget=this._instantiationService.createInstance(qi,this._editor,this._defaultTreeKeyboardSupport,a),this._widget.setTitle(L(`labelLoading`,`Loading...`)),this._widget.show(e),this._disposables.add(this._widget.onDidClose(()=>{t.cancel(),this._widget&&=(this._storageService.store(i,JSON.stringify(this._widget.layoutData),0,1),void 0),this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(e=>{let{element:t,kind:r}=e;if(t)switch(r){case`open`:(e.source!==`editor`||!this._configurationService.getValue(`editor.stablePeek`))&&this.openReference(t,!1,!1);break;case`side`:this.openReference(t,!0,!1);break;case`goto`:n?this._gotoReference(t,!0):this.openReference(t,!1,!0);break}}));let o=++this._requestIdPool;t.then(t=>{var n;if(o!==this._requestIdPool||!this._widget){t.dispose();return}return(n=this._model)==null||n.dispose(),this._model=t,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(``):this._widget.setMetaTitle(L(`metaTitle.N`,`{0} ({1})`,this._model.title,this._model.references.length));let t=this._editor.getModel().uri,n=new T(e.startLineNumber,e.startColumn),r=this._model.nearestReference(t,n);if(r)return this._widget.setSelection(r).then(()=>{this._widget&&this._editor.getOption(87)===`editor`&&this._widget.focusOnPreviewEditor()})}})},e=>{this._notificationService.error(e)})}changeFocusBetweenPreviewAndReferences(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())}async goToNextOrPreviousReference(e){if(!this._editor.hasModel()||!this._model||!this._widget)return;let t=this._widget.position;if(!t)return;let n=this._model.nearestReference(this._editor.getModel().uri,t);if(!n)return;let r=this._model.nextOrPreviousReference(n,e),i=this._editor.hasTextFocus(),a=this._widget.isPreviewEditorFocused();await this._widget.setSelection(r),await this._gotoReference(r,!1),i?this._editor.focus():this._widget&&a&&this._widget.focusOnPreviewEditor()}async revealReference(e){!this._editor.hasModel()||!this._model||!this._widget||await this._widget.revealReference(e)}closeWidget(e=!0){var t,n;(t=this._widget)==null||t.dispose(),(n=this._model)==null||n.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(e,t){var n;(n=this._widget)==null||n.hide(),this._ignoreModelChangeEvent=!0;let r=b.lift(e.range).collapseToStart();return this._editorService.openCodeEditor({resource:e.uri,options:{selection:r,selectionSource:`code.jump`,pinned:t}},this._editor).then(e=>{if(this._ignoreModelChangeEvent=!1,!e||!this._widget){this.closeWidget();return}if(this._editor===e)this._widget.show(r),this._widget.focusOnReferenceTree();else{let t=Xi.get(e),n=this._model.clone();this.closeWidget(),e.focus(),t?.toggleWidget(r,kt(e=>Promise.resolve(n)),this._peekMode??!1)}},e=>{this._ignoreModelChangeEvent=!1,ot(e)})}openReference(e,t,n){t||this.closeWidget();let{uri:r,range:i}=e;this._editorService.openCodeEditor({resource:r,options:{selection:i,selectionSource:`code.jump`,pinned:n}},this._editor,t)}};Qi.ID=`editor.contrib.referencesController`,Qi=Xi=Ji([Yi(2,S),Yi(3,Et),Yi(4,Er),Yi(5,g),Yi(6,Qn),Yi(7,Tr)],Qi);function $i(e,t){let n=vi(e);if(!n)return;let r=Qi.get(n);r&&t(r)}Vt.registerCommandAndKeybindingRule({id:`togglePeekWidgetFocus`,weight:100,primary:lr(2089,60),when:h.or(Zi,U.inPeekEditor),handler(e){$i(e,e=>{e.changeFocusBetweenPreviewAndReferences()})}}),Vt.registerCommandAndKeybindingRule({id:`goToNextReference`,weight:90,primary:62,secondary:[70],when:h.or(Zi,U.inPeekEditor),handler(e){$i(e,e=>{e.goToNextOrPreviousReference(!0)})}}),Vt.registerCommandAndKeybindingRule({id:`goToPreviousReference`,weight:90,primary:1086,secondary:[1094],when:h.or(Zi,U.inPeekEditor),handler(e){$i(e,e=>{e.goToNextOrPreviousReference(!1)})}}),t.registerCommandAlias(`goToNextReferenceFromEmbeddedEditor`,`goToNextReference`),t.registerCommandAlias(`goToPreviousReferenceFromEmbeddedEditor`,`goToPreviousReference`),t.registerCommandAlias(`closeReferenceSearchEditor`,`closeReferenceSearch`),t.registerCommand(`closeReferenceSearch`,e=>$i(e,e=>e.closeWidget())),Vt.registerKeybindingRule({id:`closeReferenceSearch`,weight:-1,primary:9,secondary:[1033],when:h.and(U.inPeekEditor,h.not(`config.editor.stablePeek`))}),Vt.registerKeybindingRule({id:`closeReferenceSearch`,weight:250,primary:9,secondary:[1033],when:h.and(Zi,h.not(`config.editor.stablePeek`),h.or(N.editorTextFocus,Ct.negate()))}),Vt.registerCommandAndKeybindingRule({id:`revealReference`,weight:200,primary:3,mac:{primary:3,secondary:[2066]},when:h.and(Zi,u,Ce.negate(),mt.negate()),handler(e){let t=e.get(Fe).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof Di&&$i(e,e=>e.revealReference(t[0]))}}),Vt.registerCommandAndKeybindingRule({id:`openReferenceToSide`,weight:100,primary:2051,mac:{primary:259},when:h.and(Zi,u,Ce.negate(),mt.negate()),handler(e){let t=e.get(Fe).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof Di&&$i(e,e=>e.openReference(t[0],!0,!0))}}),t.registerCommand(`openReference`,e=>{let t=e.get(Fe).lastFocusedList?.getFocus();Array.isArray(t)&&t[0]instanceof Di&&$i(e,e=>e.openReference(t[0],!1,!0))});var ea=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ta=function(e,t){return function(n,r){t(n,r,e)}},na=new jn(`hasSymbols`,!1,L(`hasSymbols`,`Whether there are symbol locations that can be navigated via keyboard-only.`)),ra=$n(`ISymbolNavigationService`),ia=class{constructor(e,t,n,r){this._editorService=t,this._notificationService=n,this._keybindingService=r,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=na.bindTo(e)}reset(){var e,t;this._ctxHasSymbols.reset(),(e=this._currentState)==null||e.dispose(),(t=this._currentMessage)==null||t.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(e){let t=e.parent.parent;if(t.references.length<=1){this.reset();return}this._currentModel=t,this._currentIdx=t.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();let n=new aa(this._editorService);this._currentState=se(n,n.onDidChange(e=>{if(this._ignoreEditorChange)return;let n=this._editorService.getActiveCodeEditor();if(!n)return;let r=n.getModel(),i=n.getPosition();if(!r||!i)return;let a=!1,o=!1;for(let e of t.references)if(Cr(e.uri,r.uri))a=!0,o||=b.containsPosition(e.range,i);else if(a)break;(!a||!o)&&this.reset()}))}revealNext(e){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;let t=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:t.uri,options:{selection:b.collapseToStart(t.range),selectionRevealType:3}},e).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){var e;(e=this._currentMessage)==null||e.dispose();let t=this._keybindingService.lookupKeybinding(`editor.gotoNextSymbolFromResult`),n=t?L(`location.kb`,`Symbol {0} of {1}, {2} for next`,this._currentIdx+1,this._currentModel.references.length,t.getLabel()):L(`location`,`Symbol {0} of {1}`,this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(n)}};ia=ea([ta(0,S),ta(1,Et),ta(2,Er),ta(3,F)],ia),cr(ra,ia,1),st(new class extends ge{constructor(){super({id:`editor.gotoNextSymbolFromResult`,precondition:na,kbOpts:{weight:100,primary:70}})}runEditorCommand(e,t){return e.get(ra).revealNext(t)}}),Vt.registerCommandAndKeybindingRule({id:`editor.gotoNextSymbolFromResult.cancel`,weight:100,when:na,primary:9,handler(e){e.get(ra).reset()}});var aa=class{constructor(e){this._listener=new Map,this._disposables=new m,this._onDidChange=new j,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),re(this._listener.values())}_onDidAddEditor(e){this._listener.set(e,se(e.onDidChangeCursorPosition(t=>this._onDidChange.fire({editor:e})),e.onDidChangeModelContent(t=>this._onDidChange.fire({editor:e}))))}_onDidRemoveEditor(e){var t;(t=this._listener.get(e))==null||t.dispose(),this._listener.delete(e)}};aa=ea([ta(0,Et)],aa);var oa=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sa=function(e,t){return function(n,r){t(n,r,e)}},ca,G=ca=class{static get(e){return e.getContribution(ca.ID)}constructor(e,t,n){this._openerService=n,this._messageWidget=new ft,this._messageListeners=new m,this._mouseOverMessage=!1,this._editor=e,this._visible=ca.MESSAGE_VISIBLE.bindTo(t)}dispose(){var e;(e=this._message)==null||e.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){fn(an(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._message=an(e)?Bt(e,{actionHandler:{callback:t=>{this.closeMessage(),a(this._openerService,t,an(e)?e.isTrusted:void 0)},disposables:this._messageListeners}}):void 0,this._messageWidget.value=new la(this._editor,t,typeof e==`string`?e:this._message.element),this._messageListeners.add(Ut.debounce(this._editor.onDidBlurEditorText,(e,t)=>t,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&Zn(ar(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(z(this._messageWidget.value.getDomNode(),Dt.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(z(this._messageWidget.value.getDomNode(),Dt.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let n;this._messageListeners.add(this._editor.onMouseMove(e=>{e.target.position&&(n?n.containsPosition(e.target.position)||this.closeMessage():n=new b(t.lineNumber-3,1,e.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(la.fadeOut(this._messageWidget.value))}};G.ID=`editor.contrib.messageController`,G.MESSAGE_VISIBLE=new jn(`messageVisible`,!1,L(`messageVisible`,`Whether the editor is currently showing an inline message`)),G=ca=oa([sa(1,S),sa(2,Tn)],G),st(new(ge.bindToContribution(G.get))({id:`leaveEditorMessage`,precondition:G.MESSAGE_VISIBLE,handler:e=>e.closeMessage(),kbOpts:{weight:130,primary:9}}));var la=class{static fadeOut(e){let t=()=>{e.dispose(),clearTimeout(n),e.getDomNode().removeEventListener(`animationend`,t)},n=setTimeout(t,110);return e.getDomNode().addEventListener(`animationend`,t),e.getDomNode().classList.add(`fadeOut`),{dispose:t}}constructor(e,{lineNumber:t,column:n},r){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:n},this._domNode=document.createElement(`div`),this._domNode.classList.add(`monaco-editor-overlaymessage`),this._domNode.style.marginLeft=`-6px`;let i=document.createElement(`div`);i.classList.add(`anchor`,`top`),this._domNode.appendChild(i);let a=document.createElement(`div`);typeof r==`string`?(a.classList.add(`message`),a.textContent=r):(r.classList.add(`message`),a.appendChild(r)),this._domNode.appendChild(a);let o=document.createElement(`div`);o.classList.add(`anchor`,`below`),this._domNode.appendChild(o),this._editor.addContentWidget(this),this._domNode.classList.add(`fadeIn`)}dispose(){this._editor.removeContentWidget(this)}getId(){return`messageoverlay`}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle(`below`,e===2)}};Ir(G.ID,G,4);function ua(e,t){return t.uri.scheme===e.uri.scheme?!0:!et(t.uri,ze.walkThroughSnippet,ze.vscodeChatCodeBlock,ze.vscodeChatCodeCompareBlock,ze.vscodeCopilotBackingChatCodeBlock)}async function da(e,t,n,r){let i=n.ordered(e).map(n=>Promise.resolve(r(n,e,t)).then(void 0,e=>{Fr(e)}));return vt((await Promise.all(i)).flat()).filter(t=>ua(e,t))}function fa(e,t,n,r){return da(t,n,e,(e,t,n)=>e.provideDefinition(t,n,r))}function pa(e,t,n,r){return da(t,n,e,(e,t,n)=>e.provideDeclaration(t,n,r))}function ma(e,t,n,r){return da(t,n,e,(e,t,n)=>e.provideImplementation(t,n,r))}function ha(e,t,n,r){return da(t,n,e,(e,t,n)=>e.provideTypeDefinition(t,n,r))}function ga(e,t,n,r,i){return da(t,n,e,async(e,t,n)=>{let a=(await e.provideReferences(t,n,{includeDeclaration:!0},i))?.filter(e=>ua(t,e));if(!r||!a||a.length!==2)return a;let o=(await e.provideReferences(t,n,{includeDeclaration:!1},i))?.filter(e=>ua(t,e));return o&&o.length===1?o:a})}async function _a(e){let t=new W(await e(),``),n=t.references.map(e=>e.link);return t.dispose(),n}d(`_executeDefinitionProvider`,(e,t,n)=>{let r=fa(e.get(l).definitionProvider,t,n,O.None);return _a(()=>r)}),d(`_executeTypeDefinitionProvider`,(e,t,n)=>{let r=ha(e.get(l).typeDefinitionProvider,t,n,O.None);return _a(()=>r)}),d(`_executeDeclarationProvider`,(e,t,n)=>{let r=pa(e.get(l).declarationProvider,t,n,O.None);return _a(()=>r)}),d(`_executeReferenceProvider`,(e,t,n)=>{let r=ga(e.get(l).referenceProvider,t,n,!1,O.None);return _a(()=>r)}),d(`_executeImplementationProvider`,(e,t,n)=>{let r=ma(e.get(l).implementationProvider,t,n,O.None);return _a(()=>r)});var va,ya,ba,xa,Sa,Ca,wa,Ta;Vn.appendMenuItem(k.EditorContext,{submenu:k.EditorContextPeek,title:L(`peek.submenu`,`Peek`),group:`navigation`,order:100});var Ea=class e{static is(t){return!t||typeof t!=`object`?!1:!!(t instanceof e||T.isIPosition(t.position)&&t.model)}constructor(e,t){this.model=e,this.position=t}},Da=class e extends Qe{static all(){return e._allSymbolNavigationCommands.values()}static _patchConfig(e){let t={...e,f1:!0};if(t.menu)for(let n of s.wrap(t.menu))(n.id===k.EditorContext||n.id===k.EditorContextPeek)&&(n.when=h.and(e.precondition,n.when));return t}constructor(t,n){super(e._patchConfig(n)),this.configuration=t,e._allSymbolNavigationCommands.set(n.id,this)}runEditorCommand(t,n,r,i){if(!n.hasModel())return Promise.resolve(void 0);let a=t.get(Er),o=t.get(Et),s=t.get(oe),c=t.get(ra),u=t.get(l),d=t.get(g),f=n.getModel(),p=n.getPosition(),m=Ea.is(r)?r:new Ea(f,p),ee=new Sn(n,5),te=tr(this._getLocationModel(u,m.model,m.position,ee.token),ee.token).then(async t=>{var a;if(!t||ee.token.isCancellationRequested)return;fn(t.ariaMessage);let s;if(t.referenceAt(f.uri,p)){let t=this._getAlternativeCommand(n);!e._activeAlternativeCommands.has(t)&&e._allSymbolNavigationCommands.has(t)&&(s=e._allSymbolNavigationCommands.get(t))}let l=t.references.length;if(l===0){if(!this.configuration.muteMessage){let e=f.getWordAtPosition(p);(a=G.get(n))==null||a.showMessage(this._getNoResultFoundMessage(e),p)}}else if(l===1&&s)e._activeAlternativeCommands.add(this.desc.id),d.invokeFunction(t=>s.runEditorCommand(t,n,r,i).finally(()=>{e._activeAlternativeCommands.delete(this.desc.id)}));else return this._onResult(o,c,n,t,i)},e=>{a.error(e)}).finally(()=>{ee.dispose()});return s.showWhile(te,250),te}async _onResult(e,t,n,r,i){let a=this._getGoToPreference(n);if(!(n instanceof oi)&&(this.configuration.openInPeek||a===`peek`&&r.references.length>1))this._openInPeek(n,r,i);else{let o=r.firstReference(),s=r.references.length>1&&a===`gotoAndPeek`,c=await this._openReference(n,e,o,this.configuration.openToSide,!s);s&&c?this._openInPeek(c,r,i):r.dispose(),a===`goto`&&t.put(o)}}async _openReference(e,t,n,r,i){let a;if(ht(n)&&(a=n.targetSelectionRange),a||=n.range,!a)return;let o=await t.openCodeEditor({resource:n.uri,options:{selection:b.collapseToStart(a),selectionRevealType:3,selectionSource:`code.jump`}},e,r);if(o){if(i){let e=o.getModel(),t=o.createDecorationsCollection([{range:a,options:{description:`symbol-navigate-action-highlight`,className:`symbolHighlight`}}]);setTimeout(()=>{o.getModel()===e&&t.clear()},350)}return o}}_openInPeek(e,t,n){let r=Qi.get(e);r&&e.hasModel()?r.toggleWidget(n??e.getSelection(),kt(e=>Promise.resolve(t)),this.configuration.openInPeek):t.dispose()}};Da._allSymbolNavigationCommands=new Map,Da._activeAlternativeCommands=new Set;var Oa=class extends Da{async _getLocationModel(e,t,n,r){return new W(await fa(e.definitionProvider,t,n,r),L(`def.title`,`Definitions`))}_getNoResultFoundMessage(e){return e&&e.word?L(`noResultWord`,`No definition found for '{0}'`,e.word):L(`generic.noResults`,`No definition found`)}_getAlternativeCommand(e){return e.getOption(58).alternativeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleDefinitions}};A((va=class extends Oa{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:va.id,title:{...H(`actions.goToDecl.label`,`Go to Definition`),mnemonicTitle:L({key:`miGotoDefinition`,comment:[`&& denotes a mnemonic`]},`Go to &&Definition`)},precondition:N.hasDefinitionProvider,keybinding:[{when:N.editorTextFocus,primary:70,weight:100},{when:h.and(N.editorTextFocus,ve),primary:2118,weight:100}],menu:[{id:k.EditorContext,group:`navigation`,order:1.1},{id:k.MenubarGoMenu,precondition:null,group:`4_symbol_nav`,order:2}]}),t.registerCommandAlias(`editor.action.goToDeclaration`,va.id)}},va.id=`editor.action.revealDefinition`,va)),A((ya=class extends Oa{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:ya.id,title:H(`actions.goToDeclToSide.label`,`Open Definition to the Side`),precondition:h.and(N.hasDefinitionProvider,N.isInEmbeddedEditor.toNegated()),keybinding:[{when:N.editorTextFocus,primary:lr(2089,70),weight:100},{when:h.and(N.editorTextFocus,ve),primary:lr(2089,2118),weight:100}]}),t.registerCommandAlias(`editor.action.openDeclarationToTheSide`,ya.id)}},ya.id=`editor.action.revealDefinitionAside`,ya)),A((ba=class extends Oa{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:ba.id,title:H(`actions.previewDecl.label`,`Peek Definition`),precondition:h.and(N.hasDefinitionProvider,U.notInPeekEditor,N.isInEmbeddedEditor.toNegated()),keybinding:{when:N.editorTextFocus,primary:582,linux:{primary:3140},weight:100},menu:{id:k.EditorContextPeek,group:`peek`,order:2}}),t.registerCommandAlias(`editor.action.previewDeclaration`,ba.id)}},ba.id=`editor.action.peekDefinition`,ba));var ka=class extends Da{async _getLocationModel(e,t,n,r){return new W(await pa(e.declarationProvider,t,n,r),L(`decl.title`,`Declarations`))}_getNoResultFoundMessage(e){return e&&e.word?L(`decl.noResultWord`,`No declaration found for '{0}'`,e.word):L(`decl.generic.noResults`,`No declaration found`)}_getAlternativeCommand(e){return e.getOption(58).alternativeDeclarationCommand}_getGoToPreference(e){return e.getOption(58).multipleDeclarations}};A((xa=class extends ka{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:xa.id,title:{...H(`actions.goToDeclaration.label`,`Go to Declaration`),mnemonicTitle:L({key:`miGotoDeclaration`,comment:[`&& denotes a mnemonic`]},`Go to &&Declaration`)},precondition:h.and(N.hasDeclarationProvider,N.isInEmbeddedEditor.toNegated()),menu:[{id:k.EditorContext,group:`navigation`,order:1.3},{id:k.MenubarGoMenu,precondition:null,group:`4_symbol_nav`,order:3}]})}_getNoResultFoundMessage(e){return e&&e.word?L(`decl.noResultWord`,`No declaration found for '{0}'`,e.word):L(`decl.generic.noResults`,`No declaration found`)}},xa.id=`editor.action.revealDeclaration`,xa)),A(class extends ka{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:`editor.action.peekDeclaration`,title:H(`actions.peekDecl.label`,`Peek Declaration`),precondition:h.and(N.hasDeclarationProvider,U.notInPeekEditor,N.isInEmbeddedEditor.toNegated()),menu:{id:k.EditorContextPeek,group:`peek`,order:3}})}});var Aa=class extends Da{async _getLocationModel(e,t,n,r){return new W(await ha(e.typeDefinitionProvider,t,n,r),L(`typedef.title`,`Type Definitions`))}_getNoResultFoundMessage(e){return e&&e.word?L(`goToTypeDefinition.noResultWord`,`No type definition found for '{0}'`,e.word):L(`goToTypeDefinition.generic.noResults`,`No type definition found`)}_getAlternativeCommand(e){return e.getOption(58).alternativeTypeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleTypeDefinitions}};A((Sa=class extends Aa{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:Sa.ID,title:{...H(`actions.goToTypeDefinition.label`,`Go to Type Definition`),mnemonicTitle:L({key:`miGotoTypeDefinition`,comment:[`&& denotes a mnemonic`]},`Go to &&Type Definition`)},precondition:N.hasTypeDefinitionProvider,keybinding:{when:N.editorTextFocus,primary:0,weight:100},menu:[{id:k.EditorContext,group:`navigation`,order:1.4},{id:k.MenubarGoMenu,precondition:null,group:`4_symbol_nav`,order:3}]})}},Sa.ID=`editor.action.goToTypeDefinition`,Sa)),A((Ca=class extends Aa{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Ca.ID,title:H(`actions.peekTypeDefinition.label`,`Peek Type Definition`),precondition:h.and(N.hasTypeDefinitionProvider,U.notInPeekEditor,N.isInEmbeddedEditor.toNegated()),menu:{id:k.EditorContextPeek,group:`peek`,order:4}})}},Ca.ID=`editor.action.peekTypeDefinition`,Ca));var ja=class extends Da{async _getLocationModel(e,t,n,r){return new W(await ma(e.implementationProvider,t,n,r),L(`impl.title`,`Implementations`))}_getNoResultFoundMessage(e){return e&&e.word?L(`goToImplementation.noResultWord`,`No implementation found for '{0}'`,e.word):L(`goToImplementation.generic.noResults`,`No implementation found`)}_getAlternativeCommand(e){return e.getOption(58).alternativeImplementationCommand}_getGoToPreference(e){return e.getOption(58).multipleImplementations}};A((wa=class extends ja{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:wa.ID,title:{...H(`actions.goToImplementation.label`,`Go to Implementations`),mnemonicTitle:L({key:`miGotoImplementation`,comment:[`&& denotes a mnemonic`]},`Go to &&Implementations`)},precondition:N.hasImplementationProvider,keybinding:{when:N.editorTextFocus,primary:2118,weight:100},menu:[{id:k.EditorContext,group:`navigation`,order:1.45},{id:k.MenubarGoMenu,precondition:null,group:`4_symbol_nav`,order:4}]})}},wa.ID=`editor.action.goToImplementation`,wa)),A((Ta=class extends ja{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:Ta.ID,title:H(`actions.peekImplementation.label`,`Peek Implementations`),precondition:h.and(N.hasImplementationProvider,U.notInPeekEditor,N.isInEmbeddedEditor.toNegated()),keybinding:{when:N.editorTextFocus,primary:3142,weight:100},menu:{id:k.EditorContextPeek,group:`peek`,order:5}})}},Ta.ID=`editor.action.peekImplementation`,Ta));var Ma=class extends Da{_getNoResultFoundMessage(e){return e?L(`references.no`,`No references found for '{0}'`,e.word):L(`references.noGeneric`,`No references found`)}_getAlternativeCommand(e){return e.getOption(58).alternativeReferenceCommand}_getGoToPreference(e){return e.getOption(58).multipleReferences}};A(class extends Ma{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:`editor.action.goToReferences`,title:{...H(`goToReferences.label`,`Go to References`),mnemonicTitle:L({key:`miGotoReference`,comment:[`&& denotes a mnemonic`]},`Go to &&References`)},precondition:h.and(N.hasReferenceProvider,U.notInPeekEditor,N.isInEmbeddedEditor.toNegated()),keybinding:{when:N.editorTextFocus,primary:1094,weight:100},menu:[{id:k.EditorContext,group:`navigation`,order:1.45},{id:k.MenubarGoMenu,precondition:null,group:`4_symbol_nav`,order:5}]})}async _getLocationModel(e,t,n,r){return new W(await ga(e.referenceProvider,t,n,!0,r),L(`ref.title`,`References`))}}),A(class extends Ma{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:`editor.action.referenceSearch.trigger`,title:H(`references.action.label`,`Peek References`),precondition:h.and(N.hasReferenceProvider,U.notInPeekEditor,N.isInEmbeddedEditor.toNegated()),menu:{id:k.EditorContextPeek,group:`peek`,order:6}})}async _getLocationModel(e,t,n,r){return new W(await ga(e.referenceProvider,t,n,!1,r),L(`ref.title`,`References`))}});var Na=class extends Da{constructor(e,t,n){super(e,{id:`editor.action.goToLocation`,title:H(`label.generic`,`Go to Any Symbol`),precondition:h.and(U.notInPeekEditor,N.isInEmbeddedEditor.toNegated())}),this._references=t,this._gotoMultipleBehaviour=n}async _getLocationModel(e,t,n,r){return new W(this._references,L(`generic.title`,`Locations`))}_getNoResultFoundMessage(e){return e&&L(`generic.noResult`,`No results for '{0}'`,e.word)||``}_getGoToPreference(e){return this._gotoMultipleBehaviour??e.getOption(58).multipleReferences}_getAlternativeCommand(){return``}};t.registerCommand({id:`editor.action.goToLocations`,metadata:{description:`Go to locations from a position in a file`,args:[{name:`uri`,description:`The text document in which to start`,constraint:Me},{name:`position`,description:`The position at which to start`,constraint:T.isIPosition},{name:`locations`,description:`An array of locations.`,constraint:Array},{name:`multiple`,description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"},{name:`noResultsMessage`,description:`Human readable message that shows when locations is empty.`}]},handler:async(t,n,r,i,a,o,s)=>{qt(Me.isUri(n)),qt(T.isIPosition(r)),qt(Array.isArray(i)),qt(a===void 0||typeof a==`string`),qt(s===void 0||typeof s==`boolean`);let c=t.get(Et),l=await c.openCodeEditor({resource:n},c.getFocusedCodeEditor());if(e(l))return l.setPosition(r),l.revealPositionInCenterIfOutsideViewport(r,0),l.invokeWithinContext(e=>{let t=new class extends Na{_getNoResultFoundMessage(e){return o||super._getNoResultFoundMessage(e)}}({muteMessage:!o,openInPeek:!!s,openToSide:!1},i,a);e.get(g).invokeFunction(t.run.bind(t),l)})}}),t.registerCommand({id:`editor.action.peekLocations`,metadata:{description:`Peek locations from a position in a file`,args:[{name:`uri`,description:`The text document in which to start`,constraint:Me},{name:`position`,description:`The position at which to start`,constraint:T.isIPosition},{name:`locations`,description:`An array of locations.`,constraint:Array},{name:`multiple`,description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto`"}]},handler:async(e,t,n,r,i)=>{e.get(sn).executeCommand(`editor.action.goToLocations`,t,n,r,i,void 0,!0)}}),t.registerCommand({id:`editor.action.findReferences`,handler:(t,n,r)=>{qt(Me.isUri(n)),qt(T.isIPosition(r));let i=t.get(l),a=t.get(Et);return a.openCodeEditor({resource:n},a.getFocusedCodeEditor()).then(t=>{if(!e(t)||!t.hasModel())return;let n=Qi.get(t);if(!n)return;let a=kt(e=>ga(i.referenceProvider,t.getModel(),T.lift(r),!1,e).then(e=>new W(e,L(`ref.title`,`References`)))),o=new b(r.lineNumber,r.column,r.lineNumber,r.column);return Promise.resolve(n.toggleWidget(o,a,!1))})}}),t.registerCommandAlias(`editor.action.showReferences`,`editor.action.peekLocations`);var Pa=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Fa=function(e,t){return function(n,r){t(n,r,e)}},Ia,La=Ia=class{constructor(e,t,n,r){this.textModelResolverService=t,this.languageService=n,this.languageFeaturesService=r,this.toUnhook=new m,this.toUnhookForKeyboard=new m,this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e,this.linkDecorations=this.editor.createDecorationsCollection();let i=new ri(e);this.toUnhook.add(i),this.toUnhook.add(i.onMouseMoveOrRelevantKeyDown(([e,t])=>{this.startFindDefinitionFromMouse(e,t??void 0)})),this.toUnhook.add(i.onExecute(e=>{this.isEnabled(e)&&this.gotoDefinition(e.target.position,e.hasSideBySideModifier).catch(e=>{ot(e)}).finally(()=>{this.removeLinkDecorations()})})),this.toUnhook.add(i.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(e){return e.getContribution(Ia.ID)}async startFindDefinitionFromCursor(e){await this.startFindDefinition(e),this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(e=>{e&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))}startFindDefinitionFromMouse(e,t){if(e.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(e,t)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}let n=e.target.position;this.startFindDefinition(n)}async startFindDefinition(e){this.toUnhookForKeyboard.clear();let t=e?this.editor.getModel()?.getWordAtPosition(e):null;if(!t){this.currentWordAtPosition=null,this.removeLinkDecorations();return}if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===t.startColumn&&this.currentWordAtPosition.endColumn===t.endColumn&&this.currentWordAtPosition.word===t.word)return;this.currentWordAtPosition=t;let n=new ir(this.editor,15);this.previousPromise&&=(this.previousPromise.cancel(),null),this.previousPromise=kt(t=>this.findDefinition(e,t));let r;try{r=await this.previousPromise}catch(e){ot(e);return}if(!r||!r.length||!n.validate(this.editor)){this.removeLinkDecorations();return}let i=r[0].originSelectionRange?b.lift(r[0].originSelectionRange):new b(e.lineNumber,t.startColumn,e.lineNumber,t.endColumn);if(r.length>1){let e=i;for(let{originSelectionRange:t}of r)t&&(e=b.plusRange(e,t));this.addDecoration(e,new Ln().appendText(L(`multipleResults`,`Click to show {0} definitions.`,r.length)))}else{let e=r[0];if(!e.uri)return;this.textModelResolverService.createModelReference(e.uri).then(t=>{if(!t.object||!t.object.textEditorModel){t.dispose();return}let{object:{textEditorModel:n}}=t,{startLineNumber:r}=e.range;if(r<1||r>n.getLineCount()){t.dispose();return}let a=this.getPreviewValue(n,r,e),o=this.languageService.guessLanguageIdByFilepathOrFirstLine(n.uri);this.addDecoration(i,a?new Ln().appendCodeblock(o||``,a):void 0),t.dispose()})}}getPreviewValue(e,t,n){let r=n.range;return r.endLineNumber-r.startLineNumber>=Ia.MAX_SOURCE_PREVIEW_LINES&&(r=this.getPreviewRangeBasedOnIndentation(e,t)),this.stripIndentationFromPreviewRange(e,t,r)}stripIndentationFromPreviewRange(e,t,n){let r=e.getLineFirstNonWhitespaceColumn(t);for(let i=t+1;i<n.endLineNumber;i++){let t=e.getLineFirstNonWhitespaceColumn(i);r=Math.min(r,t)}return e.getValueInRange(n).replace(RegExp(`^\\s{${r-1}}`,`gm`),``).trim()}getPreviewRangeBasedOnIndentation(e,t){let n=e.getLineFirstNonWhitespaceColumn(t),r=Math.min(e.getLineCount(),t+Ia.MAX_SOURCE_PREVIEW_LINES),i=t+1;for(;i<r&&n!==e.getLineFirstNonWhitespaceColumn(i);i++);return new b(t,1,i+1,1)}addDecoration(e,t){let n={range:e,options:{description:`goto-definition-link`,inlineClassName:`goto-definition-link`,hoverMessage:t}};this.linkDecorations.set([n])}removeLinkDecorations(){this.linkDecorations.clear()}isEnabled(e,t){return this.editor.hasModel()&&e.isLeftClick&&e.isNoneOrSingleMouseDown&&e.target.type===6&&!(e.target.detail.injectedText?.options instanceof kn)&&(e.hasTriggerModifier||(t?t.keyCodeIsTriggerKey:!1))&&this.languageFeaturesService.definitionProvider.has(this.editor.getModel())}findDefinition(e,t){let n=this.editor.getModel();return n?fa(this.languageFeaturesService.definitionProvider,n,e,t):Promise.resolve(null)}gotoDefinition(e,t){return this.editor.setPosition(e),this.editor.invokeWithinContext(e=>new Oa({openToSide:t,openInPeek:!t&&this.editor.getOption(88)&&!this.isInPeekEditor(e),muteMessage:!0},{title:{value:``,original:``},id:``,precondition:void 0}).run(e))}isInPeekEditor(e){let t=e.get(S);return U.inPeekEditor.getValue(t)}dispose(){this.toUnhook.dispose(),this.toUnhookForKeyboard.dispose()}};La.ID=`editor.contrib.gotodefinitionatposition`,La.MAX_SOURCE_PREVIEW_LINES=8,La=Ia=Pa([Fa(1,bt),Fa(2,Gn),Fa(3,l)],La),Ir(La.ID,La,2);var Ra=`editor.action.inlineSuggest.showPrevious`,za=`editor.action.inlineSuggest.showNext`,Ba=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},K=function(e,t){return function(n,r){t(n,r,e)}},Va,Ha=class extends w{constructor(e,t,n){super(),this.editor=e,this.model=t,this.instantiationService=n,this.alwaysShowToolbar=Ie(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).showToolbar===`always`),this.sessionPosition=void 0,this.position=ye(this,e=>{let t=this.model.read(e)?.primaryGhostText.read(e);if(!this.alwaysShowToolbar.read(e)||!t||t.parts.length===0)return this.sessionPosition=void 0,null;let n=t.parts[0].column;this.sessionPosition&&this.sessionPosition.lineNumber!==t.lineNumber&&(this.sessionPosition=void 0);let r=new T(t.lineNumber,Math.min(n,this.sessionPosition?.column??2**53-1));return this.sessionPosition=r,r}),this._register(Tt((t,n)=>{let r=this.model.read(t);if(!r||!this.alwaysShowToolbar.read(t))return;let i=Nt((t,n)=>{let i=n.add(this.instantiationService.createInstance(Ga,this.editor,!0,this.position,r.selectedInlineCompletionIndex,r.inlineCompletionsCount,r.activeCommands));return e.addContentWidget(i),n.add(P(()=>e.removeContentWidget(i))),n.add(yt(e=>{this.position.read(e)&&r.lastTriggerKind.read(e)!==Ae.Explicit&&r.triggerExplicitly()})),i}),a=ke(this,(e,t)=>!!this.position.read(e)||!!t);n.add(yt(e=>{a.read(e)&&i.read(e)}))}))}};Ha=Ba([K(2,g)],Ha);var Ua=jr(`inline-suggestion-hints-next`,R.chevronRight,L(`parameterHintsNextIcon`,`Icon for show next parameter hint.`)),Wa=jr(`inline-suggestion-hints-previous`,R.chevronLeft,L(`parameterHintsPreviousIcon`,`Icon for show previous parameter hint.`)),Ga=Va=class extends w{static get dropDownVisible(){return this._dropDownVisible}createCommandAction(e,t,n){let r=new vr(e,t,n,!0,()=>this._commandService.executeCommand(e)),i=this.keybindingService.lookupKeybinding(e,this._contextKeyService),a=t;return i&&(a=L({key:`content`,comment:[`A label`,`A keybinding`]},`{0} ({1})`,t,i.getLabel())),r.tooltip=a,r}constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this.editor=e,this.withBorder=t,this._position=n,this._currentSuggestionIdx=r,this._suggestionCount=i,this._extraCommands=a,this._commandService=o,this.keybindingService=c,this._contextKeyService=l,this._menuService=u,this.id=`InlineSuggestionHintsContentWidget${Va.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.nodes=on(`div.inlineSuggestionsHints`,{className:this.withBorder?`.withBorder`:``},[on(`div@toolBar`)]),this.previousAction=this.createCommandAction(Ra,L(`previous`,`Previous`),V.asClassName(Wa)),this.availableSuggestionCountAction=new vr(`inlineSuggestionHints.availableSuggestionCount`,``,void 0,!1),this.nextAction=this.createCommandAction(za,L(`next`,`Next`),V.asClassName(Ua)),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu(k.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new p(()=>{this.availableSuggestionCountAction.label=``},100)),this.disableButtonsDebounced=this._register(new p(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this.toolBar=this._register(s.createInstance(Ja,this.nodes.toolBar,k.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:e=>e.startsWith(`primary`)},actionViewItemProvider:(e,t)=>{if(e instanceof Yn)return s.createInstance(qa,e,void 0);if(e===this.availableSuggestionCountAction){let t=new Ka(void 0,e,{label:!0,icon:!1});return t.setClass(`availableSuggestionCount`),t}},telemetrySource:`InlineSuggestionToolbar`})),this.toolBar.setPrependedPrimaryActions([this.previousAction,this.availableSuggestionCountAction,this.nextAction]),this._register(this.toolBar.onDidChangeDropdownVisibility(e=>{Va._dropDownVisible=e})),this._register(yt(e=>{this._position.read(e),this.editor.layoutContentWidget(this)})),this._register(yt(e=>{let t=this._suggestionCount.read(e),n=this._currentSuggestionIdx.read(e);t===void 0?this.clearAvailableSuggestionCountLabelDebounced.schedule():(this.clearAvailableSuggestionCountLabelDebounced.cancel(),this.availableSuggestionCountAction.label=`${n+1}/${t}`),t!==void 0&&t>1?(this.disableButtonsDebounced.cancel(),this.previousAction.enabled=this.nextAction.enabled=!0):this.disableButtonsDebounced.schedule()})),this._register(yt(e=>{let t=this._extraCommands.read(e).map(e=>({class:void 0,id:e.id,enabled:!0,tooltip:e.tooltip||``,label:e.title,run:t=>this._commandService.executeCommand(e.id)}));for(let[e,n]of this.inlineCompletionsActionsMenus.getActions())for(let e of n)e instanceof Yn&&t.push(e);t.length>0&&t.unshift(new Xn),this.toolBar.setAdditionalSecondaryActions(t)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}};Ga._dropDownVisible=!1,Ga.id=0,Ga=Va=Ba([K(6,sn),K(7,g),K(8,F),K(9,S),K(10,nn)],Ga);var Ka=class extends En{constructor(){super(...arguments),this._className=void 0}setClass(e){this._className=e}render(e){super.render(e),this._className&&e.classList.add(this._className)}updateTooltip(){}},qa=class extends un{updateLabel(){let e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){let t=on(`div.keybinding`).root;this._register(new wr(t,hr,{disableTitle:!0,...ut})).set(e),this.label.textContent=this._action.label,this.label.appendChild(t),this.label.classList.add(`inlineSuggestionStatusBarItemLabel`)}}updateTooltip(){}},Ja=class extends Dr{constructor(e,t,n,r,i,a,o,s,c){super(e,{resetMenu:t,...n},r,i,a,o,s,c),this.menuId=t,this.options2=n,this.menuService=r,this.contextKeyService=i,this.menu=this._store.add(this.menuService.createMenu(this.menuId,this.contextKeyService,{emitEventsForSubmenuChanges:!0})),this.additionalActions=[],this.prependedPrimaryActions=[],this._store.add(this.menu.onDidChange(()=>this.updateToolbar())),this.updateToolbar()}updateToolbar(){let e=[],t=[];Kn(this.menu,this.options2?.menuOptions,{primary:e,secondary:t},this.options2?.toolbarOptions?.primaryGroup,this.options2?.toolbarOptions?.shouldInlineSubmenu,this.options2?.toolbarOptions?.useSeparatorsInPrimaryActions),t.push(...this.additionalActions),e.unshift(...this.prependedPrimaryActions),this.setActions(e,t)}setPrependedPrimaryActions(e){wt(this.prependedPrimaryActions,e,(e,t)=>e===t)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){wt(this.additionalActions,e,(e,t)=>e===t)||(this.additionalActions=e,this.updateToolbar())}};Ja=Ba([K(3,nn),K(4,S),K(5,bn),K(6,F),K(7,sn),K(8,In)],Ja);var Ya=class{constructor(){this._onDidWillResize=new j,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new j,this.onDidResize=this._onDidResize.event,this._sashListener=new m,this._size=new _(0,0),this._minSize=new _(0,0),this._maxSize=new _(2**53-1,2**53-1),this.domNode=document.createElement(`div`),this._eastSash=new lt(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new lt(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new lt(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:Ar.North}),this._southSash=new lt(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:Ar.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,t=0,n=0;this._sashListener.add(Ut.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,t=0,n=0)})),this._sashListener.add(Ut.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,t=0,n=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(r=>{e&&(n=r.currentX-r.startX,this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(r=>{e&&(n=-(r.currentX-r.startX),this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(r=>{e&&(t=-(r.currentY-r.startY),this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(r=>{e&&(t=r.currentY-r.startY,this.layout(e.height+t,e.width+n),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(Ut.any(this._eastSash.onDidReset,this._westSash.onDidReset)(e=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(Ut.any(this._northSash.onDidReset,this._southSash.onDidReset)(e=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,t,n,r){this._northSash.state=e?3:0,this._eastSash.state=t?3:0,this._southSash.state=n?3:0,this._westSash.state=r?3:0}layout(e=this.size.height,t=this.size.width){let{height:n,width:r}=this._minSize,{height:i,width:a}=this._maxSize;e=Math.max(n,Math.min(i,e)),t=Math.max(r,Math.min(a,t));let o=new _(t,e);_.equals(o,this._size)||(this.domNode.style.height=e+`px`,this.domNode.style.width=t+`px`,this._size=o,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}},Xa=30,Za=24,Qa=class extends w{constructor(e,t=new _(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new Ya),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position=`absolute`,this._resizableNode.minSize=_.lift(t),this._resizableNode.layout(t.height,t.width),this._resizableNode.enableSashes(!0,!0,!0,!0),this._register(this._resizableNode.onDidResize(e=>{this._resize(new _(e.dimension.width,e.dimension.height)),e.done&&(this._isResizing=!1)})),this._register(this._resizableNode.onDidWillResize(()=>{this._isResizing=!0}))}get isResizing(){return this._isResizing}getDomNode(){return this._resizableNode.domNode}getPosition(){return this._contentPosition}get position(){return this._contentPosition?.position?T.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){let t=this._editor.getDomNode(),n=this._editor.getScrolledVisiblePosition(e);if(!(!t||!n))return qn(t).top+n.top-Xa}_availableVerticalSpaceBelow(e){let t=this._editor.getDomNode(),n=this._editor.getScrolledVisiblePosition(e);if(!t||!n)return;let r=qn(t),i=Yt(t.ownerDocument.body),a=r.top+n.top+n.height;return i.height-a-Za}_findPositionPreference(e,t){let n=Math.min(this._availableVerticalSpaceBelow(t)??1/0,e),r=Math.min(this._availableVerticalSpaceAbove(t)??1/0,e),i=Math.min(e,Math.min(Math.max(r,n),e)),a;return a=this._editor.getOption(60).above?i<=r?1:2:i<=n?2:1,a===1?this._resizableNode.enableSashes(!0,!0,!1,!1):this._resizableNode.enableSashes(!1,!0,!0,!1),a}_resize(e){this._resizableNode.layout(e.height,e.width)}},$a=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},eo=function(e,t){return function(n,r){t(n,r,e)}},q,to=30,no=6,ro=q=class extends Qa{get isColorPickerVisible(){return!!this._visibleData?.colorPicker}get isVisibleFromKeyboard(){return this._visibleData?.source===1}get isVisible(){return this._hoverVisibleKey.get()??!1}get isFocused(){return this._hoverFocusedKey.get()??!1}constructor(e,t,n,r,i){let a=new _(150,e.getOption(67)+8);super(e,a),this._configurationService=n,this._accessibilityService=r,this._keybindingService=i,this._hover=this._register(new _n),this._minimumSize=a,this._hoverVisibleKey=N.hoverVisible.bindTo(t),this._hoverFocusedKey=N.hoverFocused.bindTo(t),D(this._resizableNode.domNode,this._hover.containerDomNode),this._resizableNode.domNode.style.zIndex=`50`,this._register(this._editor.onDidLayoutChange(()=>{this.isVisible&&this._updateMaxDimensions()})),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(50)&&this._updateFont()}));let o=this._register(Ye(this._resizableNode.domNode));this._register(o.onDidFocus(()=>{this._hoverFocusedKey.set(!0)})),this._register(o.onDidBlur(()=>{this._hoverFocusedKey.set(!1)})),this._setHoverData(void 0),this._editor.addContentWidget(this)}dispose(){var e;super.dispose(),(e=this._visibleData)==null||e.disposables.dispose(),this._editor.removeContentWidget(this)}getId(){return q.ID}static _applyDimensions(e,t,n){let r=typeof t==`number`?`${t}px`:t,i=typeof n==`number`?`${n}px`:n;e.style.width=r,e.style.height=i}_setContentsDomNodeDimensions(e,t){let n=this._hover.contentsDomNode;return q._applyDimensions(n,e,t)}_setContainerDomNodeDimensions(e,t){let n=this._hover.containerDomNode;return q._applyDimensions(n,e,t)}_setHoverWidgetDimensions(e,t){this._setContentsDomNodeDimensions(e,t),this._setContainerDomNodeDimensions(e,t),this._layoutContentWidget()}static _applyMaxDimensions(e,t,n){let r=typeof t==`number`?`${t}px`:t,i=typeof n==`number`?`${n}px`:n;e.style.maxWidth=r,e.style.maxHeight=i}_setHoverWidgetMaxDimensions(e,t){q._applyMaxDimensions(this._hover.contentsDomNode,e,t),q._applyMaxDimensions(this._hover.containerDomNode,e,t),this._hover.containerDomNode.style.setProperty(`--vscode-hover-maxWidth`,typeof e==`number`?`${e}px`:e),this._layoutContentWidget()}_setAdjustedHoverWidgetDimensions(e){this._setHoverWidgetMaxDimensions(`none`,`none`);let t=e.width,n=e.height;this._setHoverWidgetDimensions(t,n)}_updateResizableNodeMaxDimensions(){let e=this._findMaximumRenderingWidth()??1/0,t=this._findMaximumRenderingHeight()??1/0;this._resizableNode.maxSize=new _(e,t),this._setHoverWidgetMaxDimensions(e,t)}_resize(e){var t;q._lastDimensions=new _(e.width,e.height),this._setAdjustedHoverWidgetDimensions(e),this._resizableNode.layout(e.height,e.width),this._updateResizableNodeMaxDimensions(),this._hover.scrollbar.scanDomNode(),this._editor.layoutContentWidget(this),(t=this._visibleData?.colorPicker)==null||t.layout()}_findAvailableSpaceVertically(){let e=this._visibleData?.showAtPosition;if(e)return this._positionPreference===1?this._availableVerticalSpaceAbove(e):this._availableVerticalSpaceBelow(e)}_findMaximumRenderingHeight(){let e=this._findAvailableSpaceVertically();if(!e)return;let t=no;return Array.from(this._hover.contentsDomNode.children).forEach(e=>{t+=e.clientHeight}),Math.min(e,t)}_isHoverTextOverflowing(){this._hover.containerDomNode.style.setProperty(`--vscode-hover-whiteSpace`,`nowrap`),this._hover.containerDomNode.style.setProperty(`--vscode-hover-sourceWhiteSpace`,`nowrap`);let e=Array.from(this._hover.contentsDomNode.children).some(e=>e.scrollWidth>e.clientWidth);return this._hover.containerDomNode.style.removeProperty(`--vscode-hover-whiteSpace`),this._hover.containerDomNode.style.removeProperty(`--vscode-hover-sourceWhiteSpace`),e}_findMaximumRenderingWidth(){if(!this._editor||!this._editor.hasModel())return;let e=this._isHoverTextOverflowing(),t=this._contentWidth===void 0?0:this._contentWidth-2;return e||this._hover.containerDomNode.clientWidth<t?Yt(this._hover.containerDomNode.ownerDocument.body).width-14:this._hover.containerDomNode.clientWidth+2}isMouseGettingCloser(e,t){if(!this._visibleData)return!1;if(this._visibleData.initialMousePosX===void 0||this._visibleData.initialMousePosY===void 0)return this._visibleData.initialMousePosX=e,this._visibleData.initialMousePosY=t,!1;let n=qn(this.getDomNode());this._visibleData.closestMouseDistance===void 0&&(this._visibleData.closestMouseDistance=io(this._visibleData.initialMousePosX,this._visibleData.initialMousePosY,n.left,n.top,n.width,n.height));let r=io(e,t,n.left,n.top,n.width,n.height);return r>this._visibleData.closestMouseDistance+4?!1:(this._visibleData.closestMouseDistance=Math.min(this._visibleData.closestMouseDistance,r),!0)}_setHoverData(e){var t;(t=this._visibleData)==null||t.disposables.dispose(),this._visibleData=e,this._hoverVisibleKey.set(!!e),this._hover.containerDomNode.classList.toggle(`hidden`,!e)}_updateFont(){let{fontSize:e,lineHeight:t}=this._editor.getOption(50),n=this._hover.contentsDomNode;n.style.fontSize=`${e}px`,n.style.lineHeight=`${t/e}`,Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName(`code`)).forEach(e=>this._editor.applyFontInfo(e))}_updateContent(e){let t=this._hover.contentsDomNode;t.style.paddingBottom=``,t.textContent=``,t.appendChild(e)}_layoutContentWidget(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}_updateMaxDimensions(){let e=Math.max(this._editor.getLayoutInfo().height/4,250,q._lastDimensions.height),t=Math.max(this._editor.getLayoutInfo().width*.66,500,q._lastDimensions.width);this._setHoverWidgetMaxDimensions(t,e)}_render(e,t){this._setHoverData(t),this._updateFont(),this._updateContent(e),this._updateMaxDimensions(),this.onContentsChanged(),this._editor.render()}getPosition(){return this._visibleData?{position:this._visibleData.showAtPosition,secondaryPosition:this._visibleData.showAtSecondaryPosition,positionAffinity:this._visibleData.isBeforeContent?3:void 0,preference:[this._positionPreference??1]}:null}showAt(e,t){var n;if(!this._editor||!this._editor.hasModel())return;this._render(e,t);let r=Qt(this._hover.containerDomNode),i=t.showAtPosition;this._positionPreference=this._findPositionPreference(r,i)??1,this.onContentsChanged(),t.stoleFocus&&this._hover.containerDomNode.focus(),(n=t.colorPicker)==null||n.layout();let a=this._hover.containerDomNode.ownerDocument.activeElement===this._hover.containerDomNode&&zt(this._configurationService.getValue(`accessibility.verbosity.hover`)===!0&&this._accessibilityService.isScreenReaderOptimized(),this._keybindingService.lookupKeybinding(`editor.action.accessibleView`)?.getAriaLabel()??``);a&&(this._hover.contentsDomNode.ariaLabel=this._hover.contentsDomNode.textContent+`, `+a)}hide(){if(!this._visibleData)return;let e=this._visibleData.stoleFocus||this._hoverFocusedKey.get();this._setHoverData(void 0),this._resizableNode.maxSize=new _(1/0,1/0),this._resizableNode.clearSashHoverState(),this._hoverFocusedKey.set(!1),this._editor.layoutContentWidget(this),e&&this._editor.focus()}_removeConstraintsRenderNormally(){let e=this._editor.getLayoutInfo();this._resizableNode.layout(e.height,e.width),this._setHoverWidgetDimensions(`auto`,`auto`)}setMinimumDimensions(e){this._minimumSize=new _(Math.max(this._minimumSize.width,e.width),Math.max(this._minimumSize.height,e.height)),this._updateMinimumWidth()}_updateMinimumWidth(){let e=this._contentWidth===void 0?this._minimumSize.width:Math.min(this._contentWidth,this._minimumSize.width);this._resizableNode.minSize=new _(e,this._minimumSize.height)}onContentsChanged(){this._removeConstraintsRenderNormally();let e=this._hover.containerDomNode,t=Qt(e),n=Rn(e);if(this._resizableNode.layout(t,n),this._setHoverWidgetDimensions(n,t),t=Qt(e),n=Rn(e),this._contentWidth=n,this._updateMinimumWidth(),this._resizableNode.layout(t,n),this._visibleData?.showAtPosition){let e=Qt(this._hover.containerDomNode);this._positionPreference=this._findPositionPreference(e,this._visibleData.showAtPosition)}this._layoutContentWidget()}focus(){this._hover.containerDomNode.focus()}scrollUp(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e-t.lineHeight})}scrollDown(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e+t.lineHeight})}scrollLeft(){let e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e-to})}scrollRight(){let e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+to})}pageUp(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e-t})}pageDown(){let e=this._hover.scrollbar.getScrollPosition().scrollTop,t=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e+t})}goToTop(){this._hover.scrollbar.setScrollPosition({scrollTop:0})}goToBottom(){this._hover.scrollbar.setScrollPosition({scrollTop:this._hover.scrollbar.getScrollDimensions().scrollHeight})}};ro.ID=`editor.contrib.resizableContentHoverWidget`,ro._lastDimensions=new _(0,0),ro=q=$a([eo(1,S),eo(2,Tr),eo(3,sr),eo(4,F)],ro);function io(e,t,n,r,i,a){let o=n+i/2,s=r+a/2,c=Math.max(Math.abs(e-o)-i/2,0),l=Math.max(Math.abs(t-s)-a/2,0);return Math.sqrt(c*c+l*l)}var ao=class{constructor(e,t,n){this.value=e,this.isComplete=t,this.hasLoadingMessage=n}},oo=class extends w{constructor(e,t){super(),this._editor=e,this._computer=t,this._onResult=this._register(new j),this.onResult=this._onResult.event,this._firstWaitScheduler=this._register(new p(()=>this._triggerAsyncComputation(),0)),this._secondWaitScheduler=this._register(new p(()=>this._triggerSyncComputation(),0)),this._loadingMessageScheduler=this._register(new p(()=>this._triggerLoadingMessage(),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&=(this._asyncIterable.cancel(),null),super.dispose()}get _hoverTime(){return this._editor.getOption(60).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,t=!0){this._state=e,t&&this._fireResult()}_triggerAsyncComputation(){this._setState(2),this._secondWaitScheduler.schedule(this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=_t(e=>this._computer.computeAsync(e)),(async()=>{try{for await(let e of this._asyncIterable)e&&(this._result.push(e),this._fireResult());this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0)}catch(e){ot(e)}})()):this._asyncIterableDone=!0}_triggerSyncComputation(){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync())),this._setState(this._asyncIterableDone?0:3)}_triggerLoadingMessage(){this._state===3&&this._setState(4)}_fireResult(){if(this._state===1||this._state===2)return;let e=this._state===0,t=this._state===4;this._onResult.fire(new ao(this._result.slice(0),e,t))}start(e){if(e===0)this._state===0&&(this._setState(1),this._firstWaitScheduler.schedule(this._firstWaitTime),this._loadingMessageScheduler.schedule(this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._firstWaitScheduler.cancel(),this._secondWaitScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&=(this._asyncIterable.cancel(),null),this._result=[],this._setState(0,!1)}},so=class{constructor(e,t,n,r){this.priority=e,this.range=t,this.initialMousePosX=n,this.initialMousePosY=r,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,t){return e.type===1&&t.lineNumber===this.range.startLineNumber}},co=class{constructor(e,t,n,r,i,a){this.priority=e,this.owner=t,this.range=n,this.initialMousePosX=r,this.initialMousePosY=i,this.supportsMarkerHover=a,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,t){return e.type===2&&this.owner===e.owner}},lo=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}},uo=class{constructor(e,t,n){this.provider=e,this.hover=t,this.ordinal=n}};async function fo(e,t,n,r,i){let a=await Promise.resolve(e.provideHover(n,r,i)).catch(Fr);if(!(!a||!ho(a)))return new uo(e,a,t)}function po(e,t,n,r){let i=e.ordered(t).map((e,i)=>fo(e,i,t,n,r));return v.fromPromises(i).coalesce()}function mo(e,t,n,r){return po(e,t,n,r).map(e=>e.hover).toPromise()}d(`_executeHoverProvider`,(e,t,n)=>mo(e.get(l).hoverProvider,t,n,O.None));function ho(e){let t=e.range!==void 0,n=e.contents!==void 0&&e.contents&&e.contents.length>0;return t&&n}var go=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},_o=function(e,t){return function(n,r){t(n,r,e)}},vo=E,yo=jr(`hover-increase-verbosity`,R.add,L(`increaseHoverVerbosity`,`Icon for increaseing hover verbosity.`)),bo=jr(`hover-decrease-verbosity`,R.remove,L(`decreaseHoverVerbosity`,`Icon for decreasing hover verbosity.`)),J=class{constructor(e,t,n,r,i,a=void 0){this.owner=e,this.range=t,this.contents=n,this.isBeforeContent=r,this.ordinal=i,this.source=a}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}},xo=class{constructor(e,t,n){this.hover=e,this.hoverProvider=t,this.hoverPosition=n}supportsVerbosityAction(e){switch(e){case C.Increase:return this.hover.canIncreaseVerbosity??!1;case C.Decrease:return this.hover.canDecreaseVerbosity??!1}}},So=class{constructor(e,t,n,r,i,a,o){this._editor=e,this._languageService=t,this._openerService=n,this._configurationService=r,this._languageFeaturesService=i,this._keybindingService=a,this._hoverService=o,this.hoverOrdinal=3}createLoadingMessage(e){return new J(this,e.range,[new Ln().appendText(L(`modesContentHover.loading`,`Loading...`))],!1,2e3)}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];let n=this._editor.getModel(),r=e.range.startLineNumber,i=n.getLineMaxColumn(r),a=[],o=1e3,s=n.getLineLength(r),c=n.getLanguageIdAtPosition(e.range.startLineNumber,e.range.startColumn),l=this._editor.getOption(117),u=this._configurationService.getValue(`editor.maxTokenizationLineLength`,{overrideIdentifier:c}),d=!1;l>=0&&s>l&&e.range.startColumn>=l&&(d=!0,a.push(new J(this,e.range,[{value:L(`stopped rendering`,"Rendering paused for long line for performance reasons. This can be configured via `editor.stopRenderingLineAfter`.")}],!1,o++))),!d&&typeof u==`number`&&s>=u&&a.push(new J(this,e.range,[{value:L(`too many characters`,"Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}],!1,o++));let f=!1;for(let n of t){let t=n.range.startLineNumber===r?n.range.startColumn:1,s=n.range.endLineNumber===r?n.range.endColumn:i,c=n.options.hoverMessage;if(!c||br(c))continue;n.options.beforeContentClassName&&(f=!0);let l=new b(e.range.startLineNumber,t,e.range.startLineNumber,s);a.push(new J(this,l,at(c),f,o++))}return a}computeAsync(e,t,n){if(!this._editor.hasModel()||e.type!==1)return v.EMPTY;let r=this._editor.getModel(),i=this._languageFeaturesService.hoverProvider;return i.has(r)?this._getMarkdownHovers(i,r,e,n):v.EMPTY}_getMarkdownHovers(e,t,n,r){let i=n.range.getStartPosition();return po(e,t,i,r).filter(e=>!br(e.hover.contents)).map(e=>{let t=e.hover.range?b.lift(e.hover.range):n.range,r=new xo(e.hover,e.provider,i);return new J(this,t,e.hover.contents,!1,e.ordinal,r)})}renderHoverParts(e,t){return this._renderedHoverParts=new Co(t,e.fragment,this._editor,this._languageService,this._openerService,this._keybindingService,this._hoverService,this._configurationService,e.onContentsChanged),this._renderedHoverParts}markdownHoverContentAtIndex(e){return this._renderedHoverParts?.markdownHoverContentAtIndex(e)??``}doesMarkdownHoverAtIndexSupportVerbosityAction(e,t){return this._renderedHoverParts?.doesMarkdownHoverAtIndexSupportVerbosityAction(e,t)??!1}updateMarkdownHoverVerbosityLevel(e,t,n){var r;(r=this._renderedHoverParts)==null||r.updateMarkdownHoverPartVerbosityLevel(e,t,n)}};So=go([_o(1,Gn),_o(2,Tn),_o(3,Tr),_o(4,l),_o(5,F),_o(6,en)],So);var Co=class extends w{constructor(e,t,n,r,i,a,o,s,c){super(),this._editor=n,this._languageService=r,this._openerService=i,this._keybindingService=a,this._hoverService=o,this._configurationService=s,this._onFinishedRendering=c,this._focusedHoverPartIndex=-1,this._ongoingHoverOperations=new Map,this._renderedHoverParts=this._renderHoverParts(e,t,this._onFinishedRendering),this._register(P(()=>{this._renderedHoverParts.forEach(e=>{e.disposables.dispose()})})),this._register(P(()=>{this._ongoingHoverOperations.forEach(e=>{e.tokenSource.dispose(!0)})}))}_renderHoverParts(e,t,n){return e.sort(we(e=>e.ordinal,It)),e.map((e,r)=>{let i=this._renderHoverPart(r,e.contents,e.source,n);return t.appendChild(i.renderedMarkdown),i})}_renderHoverPart(e,t,n,r){let{renderedMarkdown:i,disposables:a}=this._renderMarkdownContent(t,r);if(!n)return{renderedMarkdown:i,disposables:a};let o=n.supportsVerbosityAction(C.Increase),s=n.supportsVerbosityAction(C.Decrease);if(!o&&!s)return{renderedMarkdown:i,disposables:a,hoverSource:n};let c=vo(`div.verbosity-actions`);return i.prepend(c),a.add(this._renderHoverExpansionAction(c,C.Increase,o)),a.add(this._renderHoverExpansionAction(c,C.Decrease,s)),this._register(z(i,Dt.FOCUS_IN,t=>{t.stopPropagation(),this._focusedHoverPartIndex=e})),this._register(z(i,Dt.FOCUS_OUT,e=>{e.stopPropagation(),this._focusedHoverPartIndex=-1})),{renderedMarkdown:i,disposables:a,hoverSource:n}}_renderMarkdownContent(e,t){let n=vo(`div.hover-row`);n.tabIndex=0;let r=vo(`div.hover-row-contents`);n.appendChild(r);let i=new m;return i.add(wo(this._editor,r,e,this._languageService,this._openerService,t)),{renderedMarkdown:n,disposables:i}}_renderHoverExpansionAction(e,t,n){let r=new m,i=t===C.Increase,a=D(e,vo(V.asCSSSelector(i?yo:bo)));a.tabIndex=0;let o=new dn(`mouse`,!1,{target:e,position:{hoverPosition:0}},this._configurationService,this._hoverService);if(r.add(this._hoverService.setupUpdatableHover(o,a,To(this._keybindingService,t))),!n)return a.classList.add(`disabled`),r;a.classList.add(`enabled`);let s=()=>this.updateMarkdownHoverPartVerbosityLevel(t);return r.add(new Jn(a,s)),r.add(new mn(a,s,[3,10])),r}async updateMarkdownHoverPartVerbosityLevel(e,t=-1,n=!0){let r=this._editor.getModel();if(!r)return;let i=t===-1?this._focusedHoverPartIndex:t,a=this._getRenderedHoverPartAtIndex(i);if(!a||!a.hoverSource?.supportsVerbosityAction(e))return;let o=a.hoverSource,s=await this._fetchHover(o,r,e);if(!s)return;let c=new xo(s,o.hoverProvider,o.hoverPosition),l=this._renderHoverPart(i,s.contents,c,this._onFinishedRendering);this._replaceRenderedHoverPartAtIndex(i,l),n&&this._focusOnHoverPartWithIndex(i),this._onFinishedRendering()}markdownHoverContentAtIndex(e){return this._getRenderedHoverPartAtIndex(e)?.renderedMarkdown.innerText??``}doesMarkdownHoverAtIndexSupportVerbosityAction(e,t){let n=this._getRenderedHoverPartAtIndex(e);return!(!n||!n.hoverSource?.supportsVerbosityAction(t))}async _fetchHover(e,t,n){let r=n===C.Increase?1:-1,i=e.hoverProvider,a=this._ongoingHoverOperations.get(i);a&&(a.tokenSource.cancel(),r+=a.verbosityDelta);let o=new Mt;this._ongoingHoverOperations.set(i,{verbosityDelta:r,tokenSource:o});let s={verbosityRequest:{verbosityDelta:r,previousHover:e.hover}},c;try{c=await Promise.resolve(i.provideHover(t,e.hoverPosition,o.token,s))}catch(e){Fr(e)}return o.dispose(),this._ongoingHoverOperations.delete(i),c}_replaceRenderedHoverPartAtIndex(e,t){if(e>=this._renderHoverParts.length||e<0)return;let n=this._renderedHoverParts[e];n.renderedMarkdown.replaceWith(t.renderedMarkdown),n.disposables.dispose(),this._renderedHoverParts[e]=t}_focusOnHoverPartWithIndex(e){this._renderedHoverParts[e].renderedMarkdown.focus()}_getRenderedHoverPartAtIndex(e){return this._renderedHoverParts[e]}};function wo(e,t,n,r,i,a){let o=new m;for(let s of n){if(br(s))continue;let n=vo(`div.markdown-hover`),c=D(n,vo(`div.hover-contents`)),l=o.add(new An({editor:e},r,i));o.add(l.onDidRenderAsync(()=>{c.className=`hover-contents code-hover-contents`,a()}));let u=o.add(l.render(s));c.appendChild(u.element),t.appendChild(n)}return o}function To(e,t){switch(t){case C.Increase:{let t=e.lookupKeybinding(Jr);return t?L(`increaseVerbosityWithKb`,`Increase Hover Verbosity ({0})`,t.getLabel()):L(`increaseVerbosity`,`Increase Hover Verbosity`)}case C.Decrease:{let t=e.lookupKeybinding(Xr);return t?L(`decreaseVerbosityWithKb`,`Decrease Hover Verbosity ({0})`,t.getLabel()):L(`decreaseVerbosity`,`Decrease Hover Verbosity`)}}}var Eo=class{constructor(e,t){this.range=e,this.direction=t}},Do=class e{constructor(e,t,n){this.hint=e,this.anchor=t,this.provider=n,this._isResolved=!1}with(t){let n=new e(this.hint,t.anchor,this.provider);return n._isResolved=this._isResolved,n._currentResolve=this._currentResolve,n}async resolve(e){if(typeof this.provider.resolveInlayHint==`function`){if(this._currentResolve)return await this._currentResolve,e.isCancellationRequested?void 0:this.resolve(e);this._isResolved||(this._currentResolve=this._doResolve(e).finally(()=>this._currentResolve=void 0)),await this._currentResolve}}async _doResolve(e){try{let t=await Promise.resolve(this.provider.resolveInlayHint(this.hint,e));this.hint.tooltip=t?.tooltip??this.hint.tooltip,this.hint.label=t?.label??this.hint.label,this.hint.textEdits=t?.textEdits??this.hint.textEdits,this._isResolved=!0}catch(e){Fr(e),this._isResolved=!1}}},Oo=class e{static async create(t,n,r,i){let a=[],o=t.ordered(n).reverse().map(t=>r.map(async r=>{try{let o=await t.provideInlayHints(n,r,i);(o?.hints.length||t.onDidChangeInlayHints)&&a.push([o??e._emptyInlayHintList,t])}catch(e){Fr(e)}}));if(await Promise.all(o.flat()),i.isCancellationRequested||n.isDisposed())throw new Ue;return new e(r,a,n)}constructor(t,n,r){this._disposables=new m,this.ranges=t,this.provider=new Set;let i=[];for(let[t,a]of n){this._disposables.add(t),this.provider.add(a);for(let n of t.hints){let t=r.validatePosition(n.position),o=`before`,s=e._getRangeAtPosition(r,t),c;s.getStartPosition().isBefore(t)?(c=b.fromPositions(s.getStartPosition(),t),o=`after`):(c=b.fromPositions(t,s.getEndPosition()),o=`before`),i.push(new Do(n,new Eo(c,o),a))}}this.items=i.sort((e,t)=>T.compare(e.hint.position,t.hint.position))}dispose(){this._disposables.dispose()}static _getRangeAtPosition(e,t){let n=t.lineNumber,r=e.getWordAtPosition(t);if(r)return new b(n,r.startColumn,n,r.endColumn);e.tokenization.tokenizeIfCheap(n);let i=e.tokenization.getLineTokens(n),a=t.column-1,o=i.findTokenIndexAtOffset(a),s=i.getStartOffset(o),c=i.getEndOffset(o);return c-s===1&&(s===a&&o>1?(s=i.getStartOffset(o-1),c=i.getEndOffset(o-1)):c===a&&o<i.getCount()-1&&(s=i.getStartOffset(o+1),c=i.getEndOffset(o+1))),new b(n,s+1,n,c+1)}};Oo._emptyInlayHintList=Object.freeze({dispose(){},hints:[]});function ko(e){return Me.from({scheme:ze.command,path:e.id,query:e.arguments&&encodeURIComponent(JSON.stringify(e.arguments))}).toString()}var Ao=(function(){if(typeof crypto==`object`&&typeof crypto.randomUUID==`function`)return crypto.randomUUID.bind(crypto);let e;e=typeof crypto==`object`&&typeof crypto.getRandomValues==`function`?crypto.getRandomValues.bind(crypto):function(e){for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256);return e};let t=new Uint8Array(16),n=[];for(let e=0;e<256;e++)n.push(e.toString(16).padStart(2,`0`));return function(){e(t),t[6]=t[6]&15|64,t[8]=t[8]&63|128;let r=0,i=``;return i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=`-`,i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i+=n[t[r++]],i}})();async function jo(e,t,n,r){let i=e.get(bt),a=e.get(bn),o=e.get(sn),s=e.get(g),c=e.get(Er);if(await r.item.resolve(O.None),!r.part.location)return;let l=r.part.location,u=[],d=new Set(Vn.getMenuItems(k.EditorContext).map(e=>vn(e)?e.command.id:Ao()));for(let e of Da.all())d.has(e.desc.id)&&u.push(new vr(e.desc.id,Yn.label(e.desc,{renderShortTitle:!0}),void 0,!0,async()=>{let n=await i.createModelReference(l.uri);try{let i=new Ea(n.object.textEditorModel,b.getStartPosition(l.range)),a=r.item.anchor.range;await s.invokeFunction(e.runEditorCommand.bind(e),t,i,a)}finally{n.dispose()}}));if(r.part.command){let{command:e}=r.part;u.push(new Xn),u.push(new vr(e.id,e.title,void 0,!0,async()=>{try{await o.executeCommand(e.id,...e.arguments??[])}catch(e){c.notify({severity:ue.Error,source:r.item.provider.displayName,message:e})}}))}let f=t.getOption(127);a.showContextMenu({domForShadowRoot:f?t.getDomNode()??void 0:void 0,getAnchor:()=>{let e=qn(n);return{x:e.left,y:e.top+e.height+8}},getActions:()=>u,onHide:()=>{t.focus()},autoSelectFirstItem:!0})}async function Mo(e,t,n,r){let i=await e.get(bt).createModelReference(r.uri);await n.invokeWithinContext(async e=>{let a=t.hasSideBySideModifier,o=e.get(S),s=U.inPeekEditor.getValue(o);return new Oa({openToSide:a,openInPeek:!a&&n.getOption(88)&&!s,muteMessage:!0},{title:{value:``,original:``},id:``,precondition:void 0}).run(e,new Ea(i.object.textEditorModel,b.getStartPosition(r.range)),b.lift(r.range))}),i.dispose()}var No=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Po=function(e,t){return function(n,r){t(n,r,e)}},Fo,Io=class e{constructor(){this._entries=new Je(50)}get(t){let n=e._key(t);return this._entries.get(n)}set(t,n){let r=e._key(t);this._entries.set(r,n)}static _key(e){return`${e.uri.toString()}/${e.getVersionId()}`}},Lo=$n(`IInlayHintsCache`);cr(Lo,Io,1);var Ro=class{constructor(e,t){this.item=e,this.index=t}get part(){let e=this.item.hint.label;return typeof e==`string`?{label:e}:e[this.index]}},zo=class{constructor(e,t){this.part=e,this.hasTriggerModifier=t}},Bo=Fo=class{static get(e){return e.getContribution(Fo.ID)??void 0}constructor(e,t,n,r,i,a,o){this._editor=e,this._languageFeaturesService=t,this._inlayHintsCache=r,this._commandService=i,this._notificationService=a,this._instaService=o,this._disposables=new m,this._sessionDisposables=new m,this._decorationsMetadata=new Map,this._ruleFactory=new xr(this._editor),this._activeRenderMode=0,this._debounceInfo=n.for(t.inlayHintsProvider,`InlayHint`,{min:25}),this._disposables.add(t.inlayHintsProvider.onDidChange(()=>this._update())),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(e=>{e.hasChanged(141)&&this._update()})),this._update()}dispose(){this._sessionDisposables.dispose(),this._removeAllDecorations(),this._disposables.dispose()}_update(){this._sessionDisposables.clear(),this._removeAllDecorations();let e=this._editor.getOption(141);if(e.enabled===`off`)return;let t=this._editor.getModel();if(!t||!this._languageFeaturesService.inlayHintsProvider.has(t))return;if(e.enabled===`on`)this._activeRenderMode=0;else{let t,n;e.enabled===`onUnlessPressed`?(t=0,n=1):(t=1,n=0),this._activeRenderMode=t,this._sessionDisposables.add(be.getInstance().event(e=>{if(!this._editor.hasModel())return;let r=e.altKey&&e.ctrlKey&&!(e.shiftKey||e.metaKey)?n:t;if(r!==this._activeRenderMode){this._activeRenderMode=r;let e=this._editor.getModel(),t=this._copyInlayHintsWithCurrentAnchor(e);this._updateHintsDecorators([e.getFullModelRange()],t),a.schedule(0)}}))}let n=this._inlayHintsCache.get(t);n&&this._updateHintsDecorators([t.getFullModelRange()],n),this._sessionDisposables.add(P(()=>{t.isDisposed()||this._cacheHintsForFastRestore(t)}));let r,i=new Set,a=new p(async()=>{let e=Date.now();r?.dispose(!0),r=new Mt;let n=t.onWillDispose(()=>r?.cancel());try{let n=r.token,o=await Oo.create(this._languageFeaturesService.inlayHintsProvider,t,this._getHintsRanges(),n);if(a.delay=this._debounceInfo.update(t,Date.now()-e),n.isCancellationRequested){o.dispose();return}for(let e of o.provider)typeof e.onDidChangeInlayHints==`function`&&!i.has(e)&&(i.add(e),this._sessionDisposables.add(e.onDidChangeInlayHints(()=>{a.isScheduled()||a.schedule()})));this._sessionDisposables.add(o),this._updateHintsDecorators(o.ranges,o.items),this._cacheHintsForFastRestore(t)}catch(e){ot(e)}finally{r.dispose(),n.dispose()}},this._debounceInfo.get(t));this._sessionDisposables.add(a),this._sessionDisposables.add(P(()=>r?.dispose(!0))),a.schedule(0),this._sessionDisposables.add(this._editor.onDidScrollChange(e=>{(e.scrollTopChanged||!a.isScheduled())&&a.schedule()})),this._sessionDisposables.add(this._editor.onDidChangeModelContent(e=>{r?.cancel();let t=Math.max(a.delay,1250);a.schedule(t)})),this._sessionDisposables.add(this._installDblClickGesture(()=>a.schedule(0))),this._sessionDisposables.add(this._installLinkGesture()),this._sessionDisposables.add(this._installContextMenu())}_installLinkGesture(){let e=new m,t=e.add(new ri(this._editor)),n=new m;return e.add(n),e.add(t.onMouseMoveOrRelevantKeyDown(e=>{let[t]=e,r=this._getInlayHintLabelPart(t),i=this._editor.getModel();if(!r||!i){n.clear();return}let a=new Mt;n.add(P(()=>a.dispose(!0))),r.item.resolve(a.token),this._activeInlayHintPart=r.part.command||r.part.location?new zo(r,t.hasTriggerModifier):void 0;let o=i.validatePosition(r.item.hint.position).lineNumber,s=new b(o,1,o,i.getLineMaxColumn(o)),c=this._getInlineHintsForRange(s);this._updateHintsDecorators([s],c),n.add(P(()=>{this._activeInlayHintPart=void 0,this._updateHintsDecorators([s],c)}))})),e.add(t.onCancel(()=>n.clear())),e.add(t.onExecute(async e=>{let t=this._getInlayHintLabelPart(e);if(t){let n=t.part;n.location?this._instaService.invokeFunction(Mo,e,this._editor,n.location):Dn.is(n.command)&&await this._invokeCommand(n.command,t.item)}})),e}_getInlineHintsForRange(e){let t=new Set;for(let n of this._decorationsMetadata.values())e.containsRange(n.item.anchor.range)&&t.add(n.item);return Array.from(t)}_installDblClickGesture(e){return this._editor.onMouseUp(async t=>{if(t.event.detail!==2)return;let n=this._getInlayHintLabelPart(t);if(n&&(t.event.preventDefault(),await n.item.resolve(O.None),At(n.item.hint.textEdits))){let t=n.item.hint.textEdits.map(e=>Fn.replace(b.lift(e.range),e.text));this._editor.executeEdits(`inlayHint.default`,t),e()}})}_installContextMenu(){return this._editor.onContextMenu(async e=>{if(!Gt(e.event.target))return;let t=this._getInlayHintLabelPart(e);t&&await this._instaService.invokeFunction(jo,this._editor,e.event.target,t)})}_getInlayHintLabelPart(e){if(e.target.type!==6)return;let t=e.target.detail.injectedText?.options;if(t instanceof kn&&t?.attachedData instanceof Ro)return t.attachedData}async _invokeCommand(e,t){try{await this._commandService.executeCommand(e.id,...e.arguments??[])}catch(e){this._notificationService.notify({severity:ue.Error,source:t.provider.displayName,message:e})}}_cacheHintsForFastRestore(e){let t=this._copyInlayHintsWithCurrentAnchor(e);this._inlayHintsCache.set(e,t)}_copyInlayHintsWithCurrentAnchor(e){let t=new Map;for(let[n,r]of this._decorationsMetadata){if(t.has(r.item))continue;let i=e.getDecorationRange(n);if(i){let e=new Eo(i,r.item.anchor.direction),n=r.item.with({anchor:e});t.set(r.item,n)}}return Array.from(t.values())}_getHintsRanges(){let e=this._editor.getModel(),t=this._editor.getVisibleRangesPlusViewportAboveBelow(),n=[];for(let r of t.sort(b.compareRangesUsingStarts)){let t=e.validateRange(new b(r.startLineNumber-30,r.startColumn,r.endLineNumber+30,r.endColumn));n.length===0||!b.areIntersectingOrTouching(n[n.length-1],t)?n.push(t):n[n.length-1]=b.plusRange(n[n.length-1],t)}return n}_updateHintsDecorators(e,t){let n=[],r=(e,t,r,i,a)=>{let o={content:r,inlineClassNameAffectsLetterSpacing:!0,inlineClassName:t.className,cursorStops:i,attachedData:a};n.push({item:e,classNameRef:t,decoration:{range:e.anchor.range,options:{description:`InlayHint`,showIfCollapsed:e.anchor.range.isEmpty(),collapseOnReplaceEdit:!e.anchor.range.isEmpty(),stickiness:0,[e.anchor.direction]:this._activeRenderMode===0?o:void 0}}})},i=(e,t)=>{r(e,this._ruleFactory.createClassNameRef({width:`${a/3|0}px`,display:`inline-block`}),` `,t?rn.Right:rn.None)},{fontSize:a,fontFamily:o,padding:s,isUniform:c}=this._getLayoutInfo(),l=`--code-editorInlayHintsFontFamily`;this._editor.getContainerDomNode().style.setProperty(l,o);let u={line:0,totalLen:0};for(let e of t){if(u.line!==e.anchor.range.startLineNumber&&(u={line:e.anchor.range.startLineNumber,totalLen:0}),u.totalLen>Fo._MAX_LABEL_LEN)continue;e.hint.paddingLeft&&i(e,!1);let t=typeof e.hint.label==`string`?[{label:e.hint.label}]:e.hint.label;for(let n=0;n<t.length;n++){let i=t[n],o=n===0,d=n===t.length-1,f={fontSize:`${a}px`,fontFamily:`var(${l}), ${Hn.fontFamily}`,verticalAlign:c?`baseline`:`middle`,unicodeBidi:`isolate`};At(e.hint.textEdits)&&(f.cursor=`default`),this._fillInColors(f,e.hint),(i.command||i.location)&&this._activeInlayHintPart?.part.item===e&&this._activeInlayHintPart.part.index===n&&(f.textDecoration=`underline`,this._activeInlayHintPart.hasTriggerModifier&&(f.color=cn(Pn),f.cursor=`pointer`)),s&&(o&&d?(f.padding=`1px ${Math.max(1,a/4)|0}px`,f.borderRadius=`${a/4|0}px`):o?(f.padding=`1px 0 1px ${Math.max(1,a/4)|0}px`,f.borderRadius=`${a/4|0}px 0 0 ${a/4|0}px`):d?(f.padding=`1px ${Math.max(1,a/4)|0}px 1px 0`,f.borderRadius=`0 ${a/4|0}px ${a/4|0}px 0`):f.padding=`1px 0 1px 0`);let p=i.label;u.totalLen+=p.length;let m=!1,ee=u.totalLen-Fo._MAX_LABEL_LEN;if(ee>0&&(p=p.slice(0,-ee)+`…`,m=!0),r(e,this._ruleFactory.createClassNameRef(f),Vo(p),d&&!e.hint.paddingRight?rn.Right:rn.None,new Ro(e,n)),m)break}if(e.hint.paddingRight&&i(e,!0),n.length>Fo._MAX_DECORATORS)break}let d=[];for(let[t,n]of this._decorationsMetadata){let r=this._editor.getModel()?.getDecorationRange(t);r&&e.some(e=>e.containsRange(r))&&(d.push(t),n.classNameRef.dispose(),this._decorationsMetadata.delete(t))}let f=gr.capture(this._editor);this._editor.changeDecorations(e=>{let t=e.deltaDecorations(d,n.map(e=>e.decoration));for(let e=0;e<t.length;e++){let r=n[e];this._decorationsMetadata.set(t[e],r)}}),f.restore(this._editor)}_fillInColors(e,t){t.kind===he.Parameter?(e.backgroundColor=cn(Ee),e.color=cn(gt)):t.kind===he.Type?(e.backgroundColor=cn(Ot),e.color=cn(xe)):(e.backgroundColor=cn(f),e.color=cn(St))}_getLayoutInfo(){let e=this._editor.getOption(141),t=e.padding,n=this._editor.getOption(52),r=this._editor.getOption(49),i=e.fontSize;(!i||i<5||i>n)&&(i=n);let a=e.fontFamily||r;return{fontSize:i,fontFamily:a,padding:t,isUniform:!t&&a===r&&i===n}}_removeAllDecorations(){this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));for(let e of this._decorationsMetadata.values())e.classNameRef.dispose();this._decorationsMetadata.clear()}};Bo.ID=`editor.contrib.InlayHints`,Bo._MAX_DECORATORS=1500,Bo._MAX_LABEL_LEN=43,Bo=Fo=No([Po(1,l),Po(2,or),Po(3,Lo),Po(4,sn),Po(5,Er),Po(6,g)],Bo);function Vo(e){return e.replace(/[ \t]/g,`\xA0`)}t.registerCommand(`_executeInlayHintProvider`,async(e,...t)=>{let[n,r]=t;qt(Me.isUri(n)),qt(b.isIRange(r));let{inlayHintsProvider:i}=e.get(l),a=await e.get(bt).createModelReference(n);try{let e=await Oo.create(i,a.object.textEditorModel,[b.lift(r)],O.None),t=e.items.map(e=>e.hint);return setTimeout(()=>e.dispose(),0),t}finally{a.dispose()}});var Ho=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Uo=function(e,t){return function(n,r){t(n,r,e)}},Wo=class extends co{constructor(e,t,n,r){super(10,t,e.item.anchor.range,n,r,!0),this.part=e}},Go=class extends So{constructor(e,t,n,r,i,a,o,s){super(e,t,n,a,s,r,i),this._resolverService=o,this.hoverOrdinal=6}suggestHoverAnchor(e){if(!Bo.get(this._editor)||e.target.type!==6)return null;let t=e.target.detail.injectedText?.options;return t instanceof kn&&t.attachedData instanceof Ro?new Wo(t.attachedData,this,e.event.posx,e.event.posy):null}computeSync(){return[]}computeAsync(e,t,n){return e instanceof Wo?new v(async t=>{let{part:r}=e;if(await r.item.resolve(n),n.isCancellationRequested)return;let i;typeof r.item.hint.tooltip==`string`?i=new Ln().appendText(r.item.hint.tooltip):r.item.hint.tooltip&&(i=r.item.hint.tooltip),i&&t.emitOne(new J(this,e.range,[i],!1,0)),At(r.item.hint.textEdits)&&t.emitOne(new J(this,e.range,[new Ln().appendText(L(`hint.dbl`,`Double-click to insert`))],!1,10001));let a;if(typeof r.part.tooltip==`string`?a=new Ln().appendText(r.part.tooltip):r.part.tooltip&&(a=r.part.tooltip),a&&t.emitOne(new J(this,e.range,[a],!1,1)),r.part.location||r.part.command){let n,i=this._editor.getOption(78)===`altKey`?wn?L(`links.navigate.kb.meta.mac`,`cmd + click`):L(`links.navigate.kb.meta`,`ctrl + click`):wn?L(`links.navigate.kb.alt.mac`,`option + click`):L(`links.navigate.kb.alt`,`alt + click`);r.part.location&&r.part.command?n=new Ln().appendText(L(`hint.defAndCommand`,`Go to Definition ({0}), right click for more`,i)):r.part.location?n=new Ln().appendText(L(`hint.def`,`Go to Definition ({0})`,i)):r.part.command&&(n=new Ln(`[${L(`hint.cmd`,`Execute Command`)}](${ko(r.part.command)} "${r.part.command.title}") (${i})`,{isTrusted:!0})),n&&t.emitOne(new J(this,e.range,[n],!1,1e4))}let o=await this._resolveInlayHintLabelPartHover(r,n);for await(let e of o)t.emitOne(e)}):v.EMPTY}async _resolveInlayHintLabelPartHover(e,t){if(!e.part.location)return v.EMPTY;let{uri:n,range:r}=e.part.location,i=await this._resolverService.createModelReference(n);try{let n=i.object.textEditorModel;return this._languageFeaturesService.hoverProvider.has(n)?po(this._languageFeaturesService.hoverProvider,n,new T(r.startLineNumber,r.startColumn),t).filter(e=>!br(e.hover.contents)).map(t=>new J(this,e.item.anchor.range,t.hover.contents,!1,2+t.ordinal)):v.EMPTY}finally{i.dispose()}}};Go=Ho([Uo(1,Gn),Uo(2,Tn),Uo(3,F),Uo(4,en),Uo(5,Tr),Uo(6,bt),Uo(7,l)],Go);var Ko=class e{get anchor(){return this._anchor}set anchor(e){this._anchor=e}get shouldFocus(){return this._shouldFocus}set shouldFocus(e){this._shouldFocus=e}get source(){return this._source}set source(e){this._source=e}get insistOnKeepingHoverVisible(){return this._insistOnKeepingHoverVisible}set insistOnKeepingHoverVisible(e){this._insistOnKeepingHoverVisible=e}constructor(e,t){this._editor=e,this._participants=t,this._anchor=null,this._shouldFocus=!1,this._source=0,this._insistOnKeepingHoverVisible=!1}static _getLineDecorations(e,t){if(t.type!==1&&!t.supportsMarkerHover)return[];let n=e.getModel(),r=t.range.startLineNumber;if(r>n.getLineCount())return[];let i=n.getLineMaxColumn(r);return e.getLineDecorations(r).filter(e=>{if(e.options.isWholeLine)return!0;let n=e.range.startLineNumber===r?e.range.startColumn:1,a=e.range.endLineNumber===r?e.range.endColumn:i;if(e.options.showIfCollapsed){if(n>t.range.startColumn+1||t.range.endColumn-1>a)return!1}else if(n>t.range.startColumn||t.range.endColumn>a)return!1;return!0})}computeAsync(t){let n=this._anchor;if(!this._editor.hasModel()||!n)return v.EMPTY;let r=e._getLineDecorations(this._editor,n);return v.merge(this._participants.map(e=>e.computeAsync?e.computeAsync(n,r,t):v.EMPTY))}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];let t=e._getLineDecorations(this._editor,this._anchor),n=[];for(let e of this._participants)n=n.concat(e.computeSync(this._anchor,t));return vt(n)}},qo=class{constructor(e,t,n){this.anchor=e,this.messages=t,this.isComplete=n}filter(e){let t=this.messages.filter(t=>t.isValidForHoverAnchor(e));return t.length===this.messages.length?this:new Jo(this,this.anchor,t,this.isComplete)}},Jo=class extends qo{constructor(e,t,n,r){super(t,n,r),this.original=e}filter(e){return this.original.filter(e)}},Yo=class{constructor(e,t,n,r,i,a,o,s,c,l){this.initialMousePosX=e,this.initialMousePosY=t,this.colorPicker=n,this.showAtPosition=r,this.showAtSecondaryPosition=i,this.preferAbove=a,this.stoleFocus=o,this.source=s,this.isBeforeContent=c,this.disposables=l,this.closestMouseDistance=void 0}},Xo=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Zo=function(e,t){return function(n,r){t(n,r,e)}},Qo=E,$o=class extends w{get hasContent(){return this._hasContent}constructor(e){super(),this._keybindingService=e,this._hasContent=!1,this.hoverElement=Qo(`div.hover-row.status-bar`),this.hoverElement.tabIndex=0,this.actionsElement=D(this.hoverElement,Qo(`div.actions`))}addAction(e){let t=this._keybindingService.lookupKeybinding(e.commandId),n=t?t.getLabel():null;return this._hasContent=!0,this._register(zn.render(this.actionsElement,e,n))}append(e){let t=D(this.actionsElement,e);return this._hasContent=!0,t}};$o=Xo([Zo(0,F)],$o);var es=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ts=function(e,t){return function(n,r){t(n,r,e)}},ns,rs=ns=class extends w{constructor(e,t,n){super(),this._editor=e,this._instantiationService=t,this._keybindingService=n,this._currentResult=null,this._onContentsChanged=this._register(new j),this.onContentsChanged=this._onContentsChanged.event,this._widget=this._register(this._instantiationService.createInstance(ro,this._editor)),this._participants=[];for(let e of lo.getAll()){let t=this._instantiationService.createInstance(e,this._editor);t instanceof So&&!(t instanceof Go)&&(this._markdownHoverParticipant=t),this._participants.push(t)}this._participants.sort((e,t)=>e.hoverOrdinal-t.hoverOrdinal),this._computer=new Ko(this._editor,this._participants),this._hoverOperation=this._register(new oo(this._editor,this._computer)),this._register(this._hoverOperation.onResult(e=>{if(!this._computer.anchor)return;let t=e.hasLoadingMessage?this._addLoadingMessage(e.value):e.value;this._withResult(new qo(this._computer.anchor,t,e.isComplete))})),this._register(Pt(this._widget.getDomNode(),`keydown`,e=>{e.equals(9)&&this.hide()})),this._register(xt.onDidChange(()=>{this._widget.position&&this._currentResult&&this._setCurrentResult(this._currentResult)}))}_startShowingOrUpdateHover(e,t,n,r,i){return!this._widget.position||!this._currentResult?e?(this._startHoverOperationIfNecessary(e,t,n,r,!1),!0):!1:this._editor.getOption(60).sticky&&i&&this._widget.isMouseGettingCloser(i.event.posx,i.event.posy)?(e&&this._startHoverOperationIfNecessary(e,t,n,r,!0),!0):e?e&&this._currentResult.anchor.equals(e)?!0:e.canAdoptVisibleHover(this._currentResult.anchor,this._widget.position)?(this._setCurrentResult(this._currentResult.filter(e)),this._startHoverOperationIfNecessary(e,t,n,r,!1),!0):(this._setCurrentResult(null),this._startHoverOperationIfNecessary(e,t,n,r,!1),!0):(this._setCurrentResult(null),!1)}_startHoverOperationIfNecessary(e,t,n,r,i){this._computer.anchor&&this._computer.anchor.equals(e)||(this._hoverOperation.cancel(),this._computer.anchor=e,this._computer.shouldFocus=r,this._computer.source=n,this._computer.insistOnKeepingHoverVisible=i,this._hoverOperation.start(t))}_setCurrentResult(e){this._currentResult!==e&&(e&&e.messages.length===0&&(e=null),this._currentResult=e,this._currentResult?this._renderMessages(this._currentResult.anchor,this._currentResult.messages):this._widget.hide())}_addLoadingMessage(e){if(this._computer.anchor){for(let t of this._participants)if(t.createLoadingMessage){let n=t.createLoadingMessage(this._computer.anchor);if(n)return e.slice(0).concat([n])}}return e}_withResult(e){this._widget.position&&this._currentResult&&this._currentResult.isComplete&&(!e.isComplete||this._computer.insistOnKeepingHoverVisible&&e.messages.length===0)||this._setCurrentResult(e)}_renderMessages(e,t){let{showAtPosition:n,showAtSecondaryPosition:r,highlightRange:i}=ns.computeHoverRanges(this._editor,e.range,t),a=new m,o=a.add(new $o(this._keybindingService)),s=document.createDocumentFragment(),c=null,l={fragment:s,statusBar:o,setColorPicker:e=>c=e,onContentsChanged:()=>this._doOnContentsChanged(),setMinimumDimensions:e=>this._widget.setMinimumDimensions(e),hide:()=>this.hide()};for(let e of this._participants){let n=t.filter(t=>t.owner===e);n.length>0&&a.add(e.renderHoverParts(l,n))}let u=t.some(e=>e.isBeforeContent);if(o.hasContent&&s.appendChild(o.hoverElement),s.hasChildNodes()){if(i){let e=this._editor.createDecorationsCollection();e.set([{range:i,options:ns._DECORATION_OPTIONS}]),a.add(P(()=>{e.clear()}))}this._widget.showAt(s,new Yo(e.initialMousePosX,e.initialMousePosY,c,n,r,this._editor.getOption(60).above,this._computer.shouldFocus,this._computer.source,u,a))}else a.dispose()}_doOnContentsChanged(){this._onContentsChanged.fire(),this._widget.onContentsChanged()}static computeHoverRanges(e,t,n){let r=1;if(e.hasModel()){let n=e._getViewModel(),i=n.coordinatesConverter,a=i.convertModelRangeToViewRange(t),o=new T(a.startLineNumber,n.getLineMinColumn(a.startLineNumber));r=i.convertViewPositionToModelPosition(o).column}let i=t.startLineNumber,a=t.startColumn,o=n[0].range,s=null;for(let e of n)o=b.plusRange(o,e.range),e.range.startLineNumber===i&&e.range.endLineNumber===i&&(a=Math.max(Math.min(a,e.range.startColumn),r)),e.forceShowAtRange&&(s=e.range);return{showAtPosition:s?s.getStartPosition():new T(i,t.startColumn),showAtSecondaryPosition:s?s.getStartPosition():new T(i,a),highlightRange:o}}showsOrWillShow(e){if(this._widget.isResizing)return!0;let t=[];for(let n of this._participants)if(n.suggestHoverAnchor){let r=n.suggestHoverAnchor(e);r&&t.push(r)}let n=e.target;if(n.type===6&&t.push(new so(0,n.range,e.event.posx,e.event.posy)),n.type===7){let r=this._editor.getOption(50).typicalHalfwidthCharacterWidth/2;!n.detail.isAfterLines&&typeof n.detail.horizontalDistanceToText==`number`&&n.detail.horizontalDistanceToText<r&&t.push(new so(0,n.range,e.event.posx,e.event.posy))}return t.length===0?this._startShowingOrUpdateHover(null,0,0,!1,e):(t.sort((e,t)=>t.priority-e.priority),this._startShowingOrUpdateHover(t[0],0,0,!1,e))}startShowingAtRange(e,t,n,r){this._startShowingOrUpdateHover(new so(0,e,void 0,void 0),t,n,r,null)}async updateMarkdownHoverVerbosityLevel(e,t,n){var r;(r=this._markdownHoverParticipant)==null||r.updateMarkdownHoverVerbosityLevel(e,t,n)}markdownHoverContentAtIndex(e){return this._markdownHoverParticipant?.markdownHoverContentAtIndex(e)??``}doesMarkdownHoverAtIndexSupportVerbosityAction(e,t){return this._markdownHoverParticipant?.doesMarkdownHoverAtIndexSupportVerbosityAction(e,t)??!1}containsNode(e){return e?this._widget.getDomNode().contains(e):!1}focus(){this._widget.focus()}scrollUp(){this._widget.scrollUp()}scrollDown(){this._widget.scrollDown()}scrollLeft(){this._widget.scrollLeft()}scrollRight(){this._widget.scrollRight()}pageUp(){this._widget.pageUp()}pageDown(){this._widget.pageDown()}goToTop(){this._widget.goToTop()}goToBottom(){this._widget.goToBottom()}hide(){this._computer.anchor=null,this._hoverOperation.cancel(),this._setCurrentResult(null)}get isColorPickerVisible(){return this._widget.isColorPickerVisible}get isVisibleFromKeyboard(){return this._widget.isVisibleFromKeyboard}get isVisible(){return this._widget.isVisible}get isFocused(){return this._widget.isFocused}get isResizing(){return this._widget.isResizing}get widget(){return this._widget}};rs._DECORATION_OPTIONS=Be.register({description:`content-hover-highlight`,className:`hoverHighlight`}),rs=ns=es([ts(1,g),ts(2,F)],rs);var is=class{get lineNumber(){return this._lineNumber}set lineNumber(e){this._lineNumber=e}get lane(){return this._laneOrLine}set lane(e){this._laneOrLine=e}constructor(e){this._editor=e,this._lineNumber=-1,this._laneOrLine=yr.Center}computeSync(){let e=e=>({value:e}),t=this._editor.getLineDecorations(this._lineNumber),n=[],r=this._laneOrLine===`lineNo`;if(!t)return n;for(let i of t){let t=i.options.glyphMargin?.position??yr.Center;if(!r&&t!==this._laneOrLine)continue;let a=r?i.options.lineNumberHoverMessage:i.options.glyphMarginHoverMessage;!a||br(a)||n.push(...at(a).map(e))}return n}},as=E,os=class e extends w{constructor(e,t,n){super(),this._renderDisposeables=this._register(new m),this._editor=e,this._isVisible=!1,this._messages=[],this._hover=this._register(new _n),this._hover.containerDomNode.classList.toggle(`hidden`,!this._isVisible),this._markdownRenderer=this._register(new An({editor:this._editor},t,n)),this._computer=new is(this._editor),this._hoverOperation=this._register(new oo(this._editor,this._computer)),this._register(this._hoverOperation.onResult(e=>{this._withResult(e.value)})),this._register(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged())),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(50)&&this._updateFont()})),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return e.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName(`code`)).forEach(e=>this._editor.applyFontInfo(e))}_onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._hoverOperation.start(0))}showsOrWillShow(e){let t=e.target;return t.type===2&&t.detail.glyphMarginLane?(this._startShowingAt(t.position.lineNumber,t.detail.glyphMarginLane),!0):t.type===3?(this._startShowingAt(t.position.lineNumber,`lineNo`),!0):!1}_startShowingAt(e,t){this._computer.lineNumber===e&&this._computer.lane===t||(this._hoverOperation.cancel(),this.hide(),this._computer.lineNumber=e,this._computer.lane=t,this._hoverOperation.start(0))}hide(){this._computer.lineNumber=-1,this._hoverOperation.cancel(),this._isVisible&&(this._isVisible=!1,this._hover.containerDomNode.classList.toggle(`hidden`,!this._isVisible))}_withResult(e){this._messages=e,this._messages.length>0?this._renderMessages(this._computer.lineNumber,this._messages):this.hide()}_renderMessages(e,t){this._renderDisposeables.clear();let n=document.createDocumentFragment();for(let e of t){let t=as(`div.hover-row.markdown-hover`),r=D(t,as(`div.hover-contents`)),i=this._renderDisposeables.add(this._markdownRenderer.render(e.value));r.appendChild(i.element),n.appendChild(t)}this._updateContents(n),this._showAt(e)}_updateContents(e){this._hover.contentsDomNode.textContent=``,this._hover.contentsDomNode.appendChild(e),this._updateFont()}_showAt(e){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle(`hidden`,!this._isVisible));let t=this._editor.getLayoutInfo(),n=this._editor.getTopForLineNumber(e),r=this._editor.getScrollTop(),i=this._editor.getOption(67),a=this._hover.containerDomNode.clientHeight,o=n-r-(a-i)/2,s=t.glyphMarginLeft+t.glyphMarginWidth+(this._computer.lane===`lineNo`?t.lineNumbersWidth:0);this._hover.containerDomNode.style.left=`${s}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(o),0)}px`}};os.ID=`editor.contrib.modesGlyphHoverWidget`;var ss=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},cs=function(e,t){return function(n,r){t(n,r,e)}},ls,Y=ls=class extends w{constructor(e,t,n){super(),this._editor=e,this._instantiationService=t,this._keybindingService=n,this._onHoverContentsChanged=this._register(new j),this.shouldKeepOpenOnEditorMouseMoveOrLeave=!1,this._listenersStore=new m,this._hoverState={mouseDown:!1,activatedByDecoratorClick:!1},this._reactToEditorMouseMoveRunner=this._register(new p(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookListeners(),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(60)&&(this._unhookListeners(),this._hookListeners())}))}static get(e){return e.getContribution(ls.ID)}_hookListeners(){let e=this._editor.getOption(60);this._hoverSettings={enabled:e.enabled,sticky:e.sticky,hidingDelay:e.delay},e.enabled?(this._listenersStore.add(this._editor.onMouseDown(e=>this._onEditorMouseDown(e))),this._listenersStore.add(this._editor.onMouseUp(()=>this._onEditorMouseUp())),this._listenersStore.add(this._editor.onMouseMove(e=>this._onEditorMouseMove(e))),this._listenersStore.add(this._editor.onKeyDown(e=>this._onKeyDown(e)))):(this._listenersStore.add(this._editor.onMouseMove(e=>this._onEditorMouseMove(e))),this._listenersStore.add(this._editor.onKeyDown(e=>this._onKeyDown(e)))),this._listenersStore.add(this._editor.onMouseLeave(e=>this._onEditorMouseLeave(e))),this._listenersStore.add(this._editor.onDidChangeModel(()=>{this._cancelScheduler(),this._hideWidgets()})),this._listenersStore.add(this._editor.onDidChangeModelContent(()=>this._cancelScheduler())),this._listenersStore.add(this._editor.onDidScrollChange(e=>this._onEditorScrollChanged(e)))}_unhookListeners(){this._listenersStore.clear()}_cancelScheduler(){this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){this._hoverState.mouseDown=!0,!this._shouldNotHideCurrentHoverWidget(e)&&this._hideWidgets()}_shouldNotHideCurrentHoverWidget(e){return!!(this._isMouseOnContentHoverWidget(e)||this._isMouseOnMarginHoverWidget(e)||this._isContentWidgetResizing())}_isMouseOnMarginHoverWidget(e){let t=e.target;return t?t.type===12&&t.detail===os.ID:!1}_isMouseOnContentHoverWidget(e){let t=e.target;return t?t.type===9&&t.detail===ro.ID:!1}_onEditorMouseUp(){this._hoverState.mouseDown=!1}_onEditorMouseLeave(e){this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._cancelScheduler(),!this._shouldNotHideCurrentHoverWidget(e)&&this._hideWidgets())}_shouldNotRecomputeCurrentHoverWidget(e){let t=this._hoverSettings.sticky;return!!(((e,t)=>{let n=this._isMouseOnMarginHoverWidget(e);return t&&n})(e,t)||((e,t)=>{let n=this._isMouseOnContentHoverWidget(e);return t&&n})(e,t)||(e=>{let t=this._isMouseOnContentHoverWidget(e),n=this._contentWidget?.isColorPickerVisible;return t&&n})(e)||((e,t)=>t&&this._contentWidget?.containsNode(e.event.browserEvent.view?.document.activeElement)&&!e.event.browserEvent.view?.getSelection()?.isCollapsed)(e,t))}_onEditorMouseMove(e){if(this.shouldKeepOpenOnEditorMouseMoveOrLeave||(this._mouseMoveEvent=e,this._contentWidget?.isFocused||this._contentWidget?.isResizing))return;let t=this._hoverSettings.sticky;if(t&&this._contentWidget?.isVisibleFromKeyboard)return;if(this._shouldNotRecomputeCurrentHoverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}let n=this._hoverSettings.hidingDelay;if(this._contentWidget?.isVisible&&t&&n>0){this._reactToEditorMouseMoveRunner.isScheduled()||this._reactToEditorMouseMoveRunner.schedule(n);return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){if(!e)return;let t=e.target.element?.classList.contains(`colorpicker-color-decoration`),n=this._editor.getOption(148),r=this._hoverSettings.enabled,i=this._hoverState.activatedByDecoratorClick;if(t&&(n===`click`&&!i||n===`hover`&&!r||n===`clickAndHover`&&!r&&!i)||!t&&!r&&!i){this._hideWidgets();return}this._tryShowHoverWidget(e,0)||this._tryShowHoverWidget(e,1)||this._hideWidgets()}_tryShowHoverWidget(e,t){let n=this._getOrCreateContentWidget(),r=this._getOrCreateGlyphWidget(),i,a;switch(t){case 0:i=n,a=r;break;case 1:i=r,a=n;break;default:throw Error(`HoverWidgetType ${t} is unrecognized`)}let o=i.showsOrWillShow(e);return o&&a.hide(),o}_onKeyDown(e){if(!this._editor.hasModel())return;let t=this._keybindingService.softDispatch(e,this._editor.getDomNode()),n=t.kind===1||t.kind===2&&(t.commandId===`editor.action.showHover`||t.commandId===`editor.action.increaseHoverVerbosityLevel`||t.commandId===`editor.action.decreaseHoverVerbosityLevel`)&&this._contentWidget?.isVisible;e.keyCode===5||e.keyCode===6||e.keyCode===57||e.keyCode===4||n||this._hideWidgets()}_hideWidgets(){var e,t;this._hoverState.mouseDown&&this._contentWidget?.isColorPickerVisible||Ga.dropDownVisible||(this._hoverState.activatedByDecoratorClick=!1,(e=this._glyphWidget)==null||e.hide(),(t=this._contentWidget)==null||t.hide())}_getOrCreateContentWidget(){return this._contentWidget||(this._contentWidget=this._instantiationService.createInstance(rs,this._editor),this._listenersStore.add(this._contentWidget.onContentsChanged(()=>this._onHoverContentsChanged.fire()))),this._contentWidget}_getOrCreateGlyphWidget(){return this._glyphWidget||=this._instantiationService.createInstance(os,this._editor),this._glyphWidget}showContentHover(e,t,n,r,i=!1){this._hoverState.activatedByDecoratorClick=i,this._getOrCreateContentWidget().startShowingAtRange(e,t,n,r)}_isContentWidgetResizing(){return this._contentWidget?.widget.isResizing||!1}markdownHoverContentAtIndex(e){return this._getOrCreateContentWidget().markdownHoverContentAtIndex(e)}doesMarkdownHoverAtIndexSupportVerbosityAction(e,t){return this._getOrCreateContentWidget().doesMarkdownHoverAtIndexSupportVerbosityAction(e,t)}updateMarkdownHoverVerbosityLevel(e,t,n){this._getOrCreateContentWidget().updateMarkdownHoverVerbosityLevel(e,t,n)}focus(){var e;(e=this._contentWidget)==null||e.focus()}scrollUp(){var e;(e=this._contentWidget)==null||e.scrollUp()}scrollDown(){var e;(e=this._contentWidget)==null||e.scrollDown()}scrollLeft(){var e;(e=this._contentWidget)==null||e.scrollLeft()}scrollRight(){var e;(e=this._contentWidget)==null||e.scrollRight()}pageUp(){var e;(e=this._contentWidget)==null||e.pageUp()}pageDown(){var e;(e=this._contentWidget)==null||e.pageDown()}goToTop(){var e;(e=this._contentWidget)==null||e.goToTop()}goToBottom(){var e;(e=this._contentWidget)==null||e.goToBottom()}get isColorPickerVisible(){return this._contentWidget?.isColorPickerVisible}get isHoverVisible(){return this._contentWidget?.isVisible}dispose(){var e,t;super.dispose(),this._unhookListeners(),this._listenersStore.dispose(),(e=this._glyphWidget)==null||e.dispose(),(t=this._contentWidget)==null||t.dispose()}};Y.ID=`editor.contrib.hover`,Y=ls=ss([cs(1,g),cs(2,F)],Y);var X;(function(e){e.NoAutoFocus=`noAutoFocus`,e.FocusIfVisible=`focusIfVisible`,e.AutoFocusImmediately=`autoFocusImmediately`})(X||={});var us=class extends x{constructor(){super({id:Rr,label:L({key:`showOrFocusHover`,comment:[`Label for action that will trigger the showing/focusing of a hover in the editor.`,`If the hover is not visible, it will show the hover.`,`This allows for users to show the hover without using the mouse.`]},`Show or Focus Hover`),metadata:{description:H(`showOrFocusHoverDescription`,`Show or focus the editor hover which shows documentation, references, and other content for a symbol at the current cursor position.`),args:[{name:`args`,schema:{type:`object`,properties:{focus:{description:`Controls if and when the hover should take focus upon being triggered by this action.`,enum:[X.NoAutoFocus,X.FocusIfVisible,X.AutoFocusImmediately],enumDescriptions:[L(`showOrFocusHover.focus.noAutoFocus`,`The hover will not automatically take focus.`),L(`showOrFocusHover.focus.focusIfVisible`,`The hover will take focus only if it is already visible.`),L(`showOrFocusHover.focus.autoFocusImmediately`,`The hover will automatically take focus when it appears.`)],default:X.FocusIfVisible}}}}]},alias:`Show or Focus Hover`,precondition:void 0,kbOpts:{kbExpr:N.editorTextFocus,primary:lr(2089,2087),weight:100}})}run(e,t,n){if(!t.hasModel())return;let r=Y.get(t);if(!r)return;let i=n?.focus,a=X.FocusIfVisible;Object.values(X).includes(i)?a=i:typeof i==`boolean`&&i&&(a=X.AutoFocusImmediately);let o=e=>{let n=t.getPosition(),i=new b(n.lineNumber,n.column,n.lineNumber,n.column);r.showContentHover(i,1,1,e)},s=t.getOption(2)===2;r.isHoverVisible?a===X.NoAutoFocus?o(s):r.focus():o(s||a===X.AutoFocusImmediately)}},ds=class extends x{constructor(){super({id:zr,label:L({key:`showDefinitionPreviewHover`,comment:[`Label for action that will trigger the showing of definition preview hover in the editor.`,`This allows for users to show the definition preview hover without using the mouse.`]},`Show Definition Preview Hover`),alias:`Show Definition Preview Hover`,precondition:void 0,metadata:{description:H(`showDefinitionPreviewHoverDescription`,`Show the definition preview hover in the editor.`)}})}run(e,t){let n=Y.get(t);if(!n)return;let r=t.getPosition();if(!r)return;let i=new b(r.lineNumber,r.column,r.lineNumber,r.column),a=La.get(t);a&&a.startFindDefinitionFromCursor(r).then(()=>{n.showContentHover(i,1,1,!0)})}},fs=class extends x{constructor(){super({id:Br,label:L({key:`scrollUpHover`,comment:[`Action that allows to scroll up in the hover widget with the up arrow when the hover widget is focused.`]},`Scroll Up Hover`),alias:`Scroll Up Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:16,weight:100},metadata:{description:H(`scrollUpHoverDescription`,`Scroll up the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.scrollUp()}},ps=class extends x{constructor(){super({id:Vr,label:L({key:`scrollDownHover`,comment:[`Action that allows to scroll down in the hover widget with the up arrow when the hover widget is focused.`]},`Scroll Down Hover`),alias:`Scroll Down Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:18,weight:100},metadata:{description:H(`scrollDownHoverDescription`,`Scroll down the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.scrollDown()}},ms=class extends x{constructor(){super({id:Hr,label:L({key:`scrollLeftHover`,comment:[`Action that allows to scroll left in the hover widget with the left arrow when the hover widget is focused.`]},`Scroll Left Hover`),alias:`Scroll Left Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:15,weight:100},metadata:{description:H(`scrollLeftHoverDescription`,`Scroll left the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.scrollLeft()}},hs=class extends x{constructor(){super({id:Ur,label:L({key:`scrollRightHover`,comment:[`Action that allows to scroll right in the hover widget with the right arrow when the hover widget is focused.`]},`Scroll Right Hover`),alias:`Scroll Right Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:17,weight:100},metadata:{description:H(`scrollRightHoverDescription`,`Scroll right the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.scrollRight()}},gs=class extends x{constructor(){super({id:Wr,label:L({key:`pageUpHover`,comment:[`Action that allows to page up in the hover widget with the page up command when the hover widget is focused.`]},`Page Up Hover`),alias:`Page Up Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:11,secondary:[528],weight:100},metadata:{description:H(`pageUpHoverDescription`,`Page up the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.pageUp()}},_s=class extends x{constructor(){super({id:Gr,label:L({key:`pageDownHover`,comment:[`Action that allows to page down in the hover widget with the page down command when the hover widget is focused.`]},`Page Down Hover`),alias:`Page Down Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:12,secondary:[530],weight:100},metadata:{description:H(`pageDownHoverDescription`,`Page down the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.pageDown()}},vs=class extends x{constructor(){super({id:Kr,label:L({key:`goToTopHover`,comment:[`Action that allows to go to the top of the hover widget with the home command when the hover widget is focused.`]},`Go To Top Hover`),alias:`Go To Bottom Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:14,secondary:[2064],weight:100},metadata:{description:H(`goToTopHoverDescription`,`Go to the top of the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.goToTop()}},ys=class extends x{constructor(){super({id:qr,label:L({key:`goToBottomHover`,comment:[`Action that allows to go to the bottom in the hover widget with the end command when the hover widget is focused.`]},`Go To Bottom Hover`),alias:`Go To Bottom Hover`,precondition:N.hoverFocused,kbOpts:{kbExpr:N.hoverFocused,primary:13,secondary:[2066],weight:100},metadata:{description:H(`goToBottomHoverDescription`,`Go to the bottom of the editor hover.`)}})}run(e,t){let n=Y.get(t);n&&n.goToBottom()}},bs=class extends x{constructor(){super({id:Jr,label:Yr,alias:`Increase Hover Verbosity Level`,precondition:N.hoverVisible})}run(e,t,n){var r;(r=Y.get(t))==null||r.updateMarkdownHoverVerbosityLevel(C.Increase,n?.index,n?.focus)}},xs=class extends x{constructor(){super({id:Xr,label:Zr,alias:`Decrease Hover Verbosity Level`,precondition:N.hoverVisible})}run(e,t,n){var r;(r=Y.get(t))==null||r.updateMarkdownHoverVerbosityLevel(C.Decrease,n?.index,n?.focus)}},Z=class e{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(t){return this.equals(t)||this.value===``||t.value.startsWith(this.value+e.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...t){return new e((this.value?[this.value,...t]:t).join(e.sep))}};Z.sep=`.`,Z.None=new Z(`@@none@@`),Z.Empty=new Z(``);var Q=new class{constructor(){this.QuickFix=new Z(`quickfix`),this.Refactor=new Z(`refactor`),this.RefactorExtract=this.Refactor.append(`extract`),this.RefactorInline=this.Refactor.append(`inline`),this.RefactorMove=this.Refactor.append(`move`),this.RefactorRewrite=this.Refactor.append(`rewrite`),this.Notebook=new Z(`notebook`),this.Source=new Z(`source`),this.SourceOrganizeImports=this.Source.append(`organizeImports`),this.SourceFixAll=this.Source.append(`fixAll`),this.SurroundWith=this.Refactor.append(`surround`)}},Ss;(function(e){e.Refactor=`refactor`,e.RefactorPreview=`refactor preview`,e.Lightbulb=`lightbulb`,e.Default=`other (default)`,e.SourceAction=`source action`,e.QuickFix=`quick fix action`,e.FixAll=`fix all`,e.OrganizeImports=`organize imports`,e.AutoFix=`auto fix`,e.QuickFixHover=`quick fix hover window`,e.OnSave=`save participants`,e.ProblemsView=`problems view`})(Ss||={});function Cs(e,t){return!(e.include&&!e.include.intersects(t)||e.excludes&&e.excludes.some(n=>Ts(t,n,e.include))||!e.includeSourceActions&&Q.Source.contains(t))}function ws(e,t){let n=t.kind?new Z(t.kind):void 0;return!(e.include&&(!n||!e.include.contains(n))||e.excludes&&n&&e.excludes.some(t=>Ts(n,t,e.include))||!e.includeSourceActions&&n&&Q.Source.contains(n)||e.onlyIncludePreferredActions&&!t.isPreferred)}function Ts(e,t,n){return!(!t.contains(e)||n&&t.contains(n))}var Es=class e{static fromUser(t,n){return!t||typeof t!=`object`?new e(n.kind,n.apply,!1):new e(e.getKindFromUser(t,n.kind),e.getApplyFromUser(t,n.apply),e.getPreferredUser(t))}static getApplyFromUser(e,t){switch(typeof e.apply==`string`?e.apply.toLowerCase():``){case`first`:return`first`;case`never`:return`never`;case`ifsingle`:return`ifSingle`;default:return t}}static getKindFromUser(e,t){return typeof e.kind==`string`?new Z(e.kind):t}static getPreferredUser(e){return typeof e.preferred==`boolean`?e.preferred:!1}constructor(e,t,n){this.kind=e,this.apply=t,this.preferred=n}},Ds=class{constructor(e,t,n){this.action=e,this.provider=t,this.highlightRange=n}async resolve(e){if(this.provider?.resolveCodeAction&&!this.action.edit){let t;try{t=await this.provider.resolveCodeAction(this.action,e)}catch(e){Fr(e)}t&&(this.action.edit=t.edit)}return this}},Os=`editor.action.codeAction`,ks=`editor.action.quickFix`,As=`editor.action.refactor`,js=`editor.action.sourceAction`,Ms=`editor.action.organizeImports`,Ns=`editor.action.fixAll`,Ps=class e extends w{static codeActionsPreferredComparator(e,t){return e.isPreferred&&!t.isPreferred?-1:!e.isPreferred&&t.isPreferred?1:0}static codeActionsComparator({action:t},{action:n}){return t.isAI&&!n.isAI?1:!t.isAI&&n.isAI?-1:At(t.diagnostics)?At(n.diagnostics)?e.codeActionsPreferredComparator(t,n):-1:At(n.diagnostics)?1:e.codeActionsPreferredComparator(t,n)}constructor(t,n,r){super(),this.documentation=n,this._register(r),this.allActions=[...t].sort(e.codeActionsComparator),this.validActions=this.allActions.filter(({action:e})=>!e.disabled)}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&Q.QuickFix.contains(new Z(e.kind))&&!!e.isPreferred)}get hasAIFix(){return this.validActions.some(({action:e})=>!!e.isAI)}get allAIFixes(){return this.validActions.every(({action:e})=>!!e.isAI)}},Fs={actions:[],documentation:void 0};async function Is(e,t,n,r,i,a){let o=r.filter||{},s={...o,excludes:[...o.excludes||[],Q.Notebook]},c={only:o.include?.value,trigger:r.type},l=new Jt(t,a),u=Ls(e,t,r.type===2?s:o),d=new m,f=u.map(async e=>{try{i.report(e);let r=await e.provideCodeActions(t,n,c,l.token);if(r&&d.add(r),l.token.isCancellationRequested)return Fs;let a=(r?.actions||[]).filter(e=>e&&ws(o,e)),s=zs(e,a,o.include);return{actions:a.map(t=>new Ds(t,e)),documentation:s}}catch(e){if(Le(e))throw e;return Fr(e),Fs}}),p=e.onDidChange(()=>{wt(e.all(t),u)||l.cancel()});try{let n=await Promise.all(f),i=n.map(e=>e.actions).flat();return new Ps(i,[...vt(n.map(e=>e.documentation)),...Rs(e,t,r,i)],d)}finally{p.dispose(),l.dispose()}}function Ls(e,t,n){return e.all(t).filter(e=>e.providedCodeActionKinds?e.providedCodeActionKinds.some(e=>Cs(n,new Z(e))):!0)}function*Rs(e,t,n,r){if(t&&r.length)for(let i of e.all(t))i._getAdditionalMenuItems&&(yield*i._getAdditionalMenuItems?.call(i,{trigger:n.type,only:n.filter?.include?.value},r.map(e=>e.action)))}function zs(e,t,n){if(!e.documentation)return;let r=e.documentation.map(e=>({kind:new Z(e.kind),command:e.command}));if(n){let e;for(let t of r)t.kind.contains(n)&&(e?e.kind.contains(t.kind)&&(e=t):e=t);if(e)return e?.command}for(let e of t)if(e.kind){for(let t of r)if(t.kind.contains(new Z(e.kind)))return t.command}}var Bs;(function(e){e.OnSave=`onSave`,e.FromProblemsView=`fromProblemsView`,e.FromCodeActions=`fromCodeActions`,e.FromAILightbulb=`fromAILightbulb`})(Bs||={});async function Vs(e,t,n,r,i=O.None){let a=e.get(xn),o=e.get(sn),s=e.get(In),c=e.get(Er);if(s.publicLog2(`codeAction.applyCodeAction`,{codeActionTitle:t.action.title,codeActionKind:t.action.kind,codeActionIsPreferred:!!t.action.isPreferred,reason:n}),await t.resolve(i),!i.isCancellationRequested&&!(t.action.edit?.edits.length&&!(await a.apply(t.action.edit,{editor:r?.editor,label:t.action.title,quotableLabel:t.action.title,code:`undoredo.codeAction`,respectAutoSaveConfig:n!==Bs.OnSave,showPreview:r?.preview})).isApplied)&&t.action.command)try{await o.executeCommand(t.action.command.id,...t.action.command.arguments||[])}catch(e){let t=Hs(e);c.error(typeof t==`string`?t:L(`applyCodeActionFailed`,`An unknown error occurred while applying the code action`))}}function Hs(e){if(typeof e==`string`)return e;if(e instanceof Error&&typeof e.message==`string`)return e.message}t.registerCommand(`_executeCodeActionProvider`,async function(e,t,n,r,i){if(!(t instanceof Me))throw me();let{codeActionProvider:a}=e.get(l),o=e.get(Te).getModel(t);if(!o)throw me();let s=pr.isISelection(n)?pr.liftSelection(n):b.isIRange(n)?o.validateRange(n):void 0;if(!s)throw me();let c=typeof r==`string`?new Z(r):void 0,u=await Is(a,o,s,{type:1,triggerAction:Ss.Default,filter:{includeSourceActions:!0,include:c}},Ke.None,O.None),d=[],f=Math.min(u.validActions.length,typeof i==`number`?i:0);for(let e=0;e<f;e++)d.push(u.validActions[e].resolve(O.None));try{return await Promise.all(d),u.validActions.map(e=>e.action)}finally{setTimeout(()=>u.dispose(),100)}});var Us=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ws=function(e,t){return function(n,r){t(n,r,e)}},Gs,Ks=Gs=class{constructor(e){this.keybindingService=e}getResolver(){let e=new rt(()=>this.keybindingService.getKeybindings().filter(e=>Gs.codeActionCommands.indexOf(e.command)>=0).filter(e=>e.resolvedKeybinding).map(e=>{let t=e.commandArgs;return e.command===`editor.action.organizeImports`?t={kind:Q.SourceOrganizeImports.value}:e.command===`editor.action.fixAll`&&(t={kind:Q.SourceFixAll.value}),{resolvedKeybinding:e.resolvedKeybinding,...Es.fromUser(t,{kind:Z.None,apply:`never`})}}));return t=>{if(t.kind)return this.bestKeybindingForCodeAction(t,e.value)?.resolvedKeybinding}}bestKeybindingForCodeAction(e,t){if(!e.kind)return;let n=new Z(e.kind);return t.filter(e=>e.kind.contains(n)).filter(t=>t.preferred?e.isPreferred:!0).reduceRight((e,t)=>e?e.kind.contains(t.kind)?t:e:t,void 0)}};Ks.codeActionCommands=[As,Os,js,Ms,Ns],Ks=Gs=Us([Ws(0,F)],Ks),M(`symbolIcon.arrayForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.arrayForeground`,`The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.booleanForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.booleanForeground`,`The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.classForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},L(`symbolIcon.classForeground`,`The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.colorForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.colorForeground`,`The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.constantForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.constantForeground`,`The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.constructorForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},L(`symbolIcon.constructorForeground`,`The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.enumeratorForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},L(`symbolIcon.enumeratorForeground`,`The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.enumeratorMemberForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},L(`symbolIcon.enumeratorMemberForeground`,`The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.eventForeground`,{dark:`#EE9D28`,light:`#D67E00`,hcDark:`#EE9D28`,hcLight:`#D67E00`},L(`symbolIcon.eventForeground`,`The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.fieldForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},L(`symbolIcon.fieldForeground`,`The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.fileForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.fileForeground`,`The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.folderForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.folderForeground`,`The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.functionForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},L(`symbolIcon.functionForeground`,`The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.interfaceForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},L(`symbolIcon.interfaceForeground`,`The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.keyForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.keyForeground`,`The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.keywordForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.keywordForeground`,`The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.methodForeground`,{dark:`#B180D7`,light:`#652D90`,hcDark:`#B180D7`,hcLight:`#652D90`},L(`symbolIcon.methodForeground`,`The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.moduleForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.moduleForeground`,`The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.namespaceForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.namespaceForeground`,`The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.nullForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.nullForeground`,`The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.numberForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.numberForeground`,`The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.objectForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.objectForeground`,`The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.operatorForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.operatorForeground`,`The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.packageForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.packageForeground`,`The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.propertyForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.propertyForeground`,`The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.referenceForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.referenceForeground`,`The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.snippetForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.snippetForeground`,`The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.stringForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.stringForeground`,`The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.structForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.structForeground`,`The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.textForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.textForeground`,`The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.typeParameterForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.typeParameterForeground`,`The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.unitForeground`,{dark:i,light:i,hcDark:i,hcLight:i},L(`symbolIcon.unitForeground`,`The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`)),M(`symbolIcon.variableForeground`,{dark:`#75BEFF`,light:`#007ACC`,hcDark:`#75BEFF`,hcLight:`#007ACC`},L(`symbolIcon.variableForeground`,`The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget.`));var qs=Object.freeze({kind:Z.Empty,title:L(`codeAction.widget.id.more`,`More Actions...`)}),Js=Object.freeze([{kind:Q.QuickFix,title:L(`codeAction.widget.id.quickfix`,`Quick Fix`)},{kind:Q.RefactorExtract,title:L(`codeAction.widget.id.extract`,`Extract`),icon:R.wrench},{kind:Q.RefactorInline,title:L(`codeAction.widget.id.inline`,`Inline`),icon:R.wrench},{kind:Q.RefactorRewrite,title:L(`codeAction.widget.id.convert`,`Rewrite`),icon:R.wrench},{kind:Q.RefactorMove,title:L(`codeAction.widget.id.move`,`Move`),icon:R.wrench},{kind:Q.SurroundWith,title:L(`codeAction.widget.id.surround`,`Surround With`),icon:R.surroundWith},{kind:Q.Source,title:L(`codeAction.widget.id.source`,`Source Action`),icon:R.symbolFile},qs]);function Ys(e,t,n){if(!t)return e.map(e=>({kind:`action`,item:e,group:qs,disabled:!!e.action.disabled,label:e.action.disabled||e.action.title,canPreview:!!e.action.edit?.edits.length}));let r=Js.map(e=>({group:e,actions:[]}));for(let t of e){let e=t.action.kind?new Z(t.action.kind):Z.None;for(let n of r)if(n.group.kind.contains(e)){n.actions.push(t);break}}let i=[];for(let e of r)if(e.actions.length){i.push({kind:`header`,group:e.group});for(let t of e.actions){let r=e.group;i.push({kind:`action`,item:t,group:t.action.isAI?{title:r.title,kind:r.kind,icon:R.sparkle}:r,label:t.action.title,disabled:!!t.action.disabled,keybinding:n(t.action)})}}return i}var Xs=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Zs=function(e,t){return function(n,r){t(n,r,e)}},Qs,$s;(function(e){e.Hidden={type:0};class t{constructor(e,t,n,r){this.actions=e,this.trigger=t,this.editorPosition=n,this.widgetPosition=r,this.type=1}}e.Showing=t})($s||={});var ec=Qs=class extends w{constructor(e,t,n){super(),this._editor=e,this._keybindingService=t,this._onClick=this._register(new j),this.onClick=this._onClick.event,this._state=$s.Hidden,this._iconClasses=[],this._domNode=E(`div.lightBulbWidget`),this._domNode.role=`listbox`,this._register(fe.ignoreTarget(this._domNode)),this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(e=>{let t=this._editor.getModel();(this.state.type!==1||!t||this.state.editorPosition.lineNumber>=t.getLineCount())&&this.hide()})),this._register(Ne(this._domNode,e=>{if(this.state.type!==1)return;this._editor.focus(),e.preventDefault();let{top:t,height:n}=qn(this._domNode),r=this._editor.getOption(67),i=Math.floor(r/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber<this.state.editorPosition.lineNumber&&(i+=r),this._onClick.fire({x:e.posx,y:t+n+i,actions:this.state.actions,trigger:this.state.trigger})})),this._register(z(this._domNode,`mouseenter`,e=>{(e.buttons&1)==1&&this.hide()})),this._register(Ut.runAndSubscribe(this._keybindingService.onDidUpdateKeybindings,()=>{this._preferredKbLabel=this._keybindingService.lookupKeybinding(`editor.action.autoFix`)?.getLabel()??void 0,this._quickFixKbLabel=this._keybindingService.lookupKeybinding(`editor.action.quickFix`)?.getLabel()??void 0,this._updateLightBulbTitleAndIcon()}))}dispose(){super.dispose(),this._editor.removeContentWidget(this)}getId(){return`LightBulbWidget`}getDomNode(){return this._domNode}getPosition(){return this._state.type===1?this._state.widgetPosition:null}update(e,t,n){if(e.validActions.length<=0||!this._editor.getOptions().get(65).enabled)return this.hide();let r=this._editor.getModel();if(!r)return this.hide();let{lineNumber:i,column:a}=r.validatePosition(n),o=r.getOptions().tabSize,s=this._editor.getOptions().get(50),c=fr(r.getLineContent(i),o),l=s.spaceWidth*c>22,u=e=>e>2&&this._editor.getTopForLineNumber(e)===this._editor.getTopForLineNumber(e-1),d=i,f=1;if(!l){if(i>1&&!u(i-1))--d;else if(i<r.getLineCount()&&!u(i+1))d+=1;else if(a*s.spaceWidth<22)return this.hide();f=/^\S\s*$/.test(r.getLineContent(d))?2:1}this.state=new $s.Showing(e,t,n,{position:{lineNumber:d,column:f},preference:Qs._posPref});let p=e.validActions,m=e.validActions[0].action.kind;if(p.length!==1||!m){this._editor.layoutContentWidget(this);return}this._editor.layoutContentWidget(this)}hide(){this.state!==$s.Hidden&&(this.state=$s.Hidden,this._editor.layoutContentWidget(this))}get state(){return this._state}set state(e){this._state=e,this._updateLightBulbTitleAndIcon()}_updateLightBulbTitleAndIcon(){if(this._domNode.classList.remove(...this._iconClasses),this._iconClasses=[],this.state.type!==1)return;let e,t=!1;this.state.actions.allAIFixes?(e=R.sparkleFilled,this.state.actions.validActions.length===1&&(t=!0)):e=this.state.actions.hasAutoFix?this.state.actions.hasAIFix?R.lightbulbSparkleAutofix:R.lightbulbAutofix:this.state.actions.hasAIFix?R.lightbulbSparkle:R.lightBulb,this._updateLightbulbTitle(this.state.actions.hasAutoFix,t),this._iconClasses=V.asClassNameArray(e),this._domNode.classList.add(...this._iconClasses)}_updateLightbulbTitle(e,t){this.state.type===1&&(t?this.title=L(`codeActionAutoRun`,`Run: {0}`,this.state.actions.validActions[0].action.title):e&&this._preferredKbLabel?this.title=L(`preferredcodeActionWithKb`,`Show Code Actions. Preferred Quick Fix Available ({0})`,this._preferredKbLabel):!e&&this._quickFixKbLabel?this.title=L(`codeActionWithKb`,`Show Code Actions ({0})`,this._quickFixKbLabel):e||(this.title=L(`codeAction`,`Show Code Actions`)))}set title(e){this._domNode.title=e}};ec.ID=`editor.contrib.lightbulbWidget`,ec._posPref=[0],ec=Qs=Xs([Zs(1,F),Zs(2,sn)],ec);var tc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},nc=function(e,t){return function(n,r){t(n,r,e)}},rc=`acceptSelectedCodeAction`,ic=`previewSelectedCodeAction`,ac=class{get templateId(){return`header`}renderTemplate(e){e.classList.add(`group-header`);let t=document.createElement(`span`);return e.append(t),{container:e,text:t}}renderElement(e,t,n){n.text.textContent=e.group?.title??``}disposeTemplate(e){}},oc=class{get templateId(){return`action`}constructor(e,t){this._supportsPreview=e,this._keybindingService=t}renderTemplate(e){e.classList.add(this.templateId);let t=document.createElement(`div`);t.className=`icon`,e.append(t);let n=document.createElement(`span`);return n.className=`title`,e.append(n),{container:e,icon:t,text:n,keybinding:new wr(e,hr)}}renderElement(e,t,n){if(e.group?.icon?(n.icon.className=V.asClassName(e.group.icon),e.group.icon.color&&(n.icon.style.color=dr(e.group.icon.color.id))):(n.icon.className=V.asClassName(R.lightBulb),n.icon.style.color=`var(--vscode-editorLightBulb-foreground)`),!e.item||!e.label)return;n.text.textContent=dc(e.label),n.keybinding.set(e.keybinding),le(!!e.keybinding,n.keybinding.element);let r=this._keybindingService.lookupKeybinding(`acceptSelectedCodeAction`)?.getLabel(),i=this._keybindingService.lookupKeybinding(`previewSelectedCodeAction`)?.getLabel();n.container.classList.toggle(`option-disabled`,e.disabled),e.disabled?n.container.title=e.label:r&&i?this._supportsPreview&&e.canPreview?n.container.title=L({key:`label-preview`,comment:[`placeholders are keybindings, e.g "F2 to Apply, Shift+F2 to Preview"`]},`{0} to Apply, {1} to Preview`,r,i):n.container.title=L({key:`label`,comment:[`placeholder is a keybinding, e.g "F2 to Apply"`]},`{0} to Apply`,r):n.container.title=``}disposeTemplate(e){e.keybinding.dispose()}};oc=tc([nc(1,F)],oc);var sc=class extends UIEvent{constructor(){super(`acceptSelectedAction`)}},cc=class extends UIEvent{constructor(){super(`previewSelectedAction`)}};function lc(e){if(e.kind===`action`)return e.label}var uc=class extends w{constructor(e,t,n,r,i,a){super(),this._delegate=r,this._contextViewService=i,this._keybindingService=a,this._actionLineHeight=24,this._headerLineHeight=26,this.cts=this._register(new Mt),this.domNode=document.createElement(`div`),this.domNode.classList.add(`actionList`),this._list=this._register(new He(e,this.domNode,{getHeight:e=>e.kind===`header`?this._headerLineHeight:this._actionLineHeight,getTemplateId:e=>e.kind},[new oc(t,this._keybindingService),new ac],{keyboardSupport:!1,typeNavigationEnabled:!0,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:lc},accessibilityProvider:{getAriaLabel:e=>{if(e.kind===`action`){let t=e.label?dc(e?.label):``;return e.disabled&&(t=L({key:`customQuickFixWidget.labels`,comment:[`Action widget labels for accessibility.`]},`{0}, Disabled Reason: {1}`,t,e.disabled)),t}return null},getWidgetAriaLabel:()=>L({key:`customQuickFixWidget`,comment:[`An action widget option`]},`Action Widget`),getRole:e=>e.kind===`action`?`option`:`separator`,getWidgetRole:()=>`listbox`}})),this._list.style($t),this._register(this._list.onMouseClick(e=>this.onListClick(e))),this._register(this._list.onMouseOver(e=>this.onListHover(e))),this._register(this._list.onDidChangeFocus(()=>this.onFocus())),this._register(this._list.onDidChangeSelection(e=>this.onListSelection(e))),this._allMenuItems=n,this._list.splice(0,this._list.length,this._allMenuItems),this._list.length&&this.focusNext()}focusCondition(e){return!e.disabled&&e.kind===`action`}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._contextViewService.hideContextView()}layout(e){let t=this._allMenuItems.filter(e=>e.kind===`header`).length,n=this._allMenuItems.length*this._actionLineHeight+t*this._headerLineHeight-t*this._actionLineHeight;this._list.layout(n);let r=e;if(this._allMenuItems.length>=50)r=380;else{let t=this._allMenuItems.map((e,t)=>{let n=this.domNode.ownerDocument.getElementById(this._list.getElementID(t));if(n){n.style.width=`auto`;let e=n.getBoundingClientRect().width;return n.style.width=``,e}return 0});r=Math.max(...t,e)}let i=Math.min(n,this.domNode.ownerDocument.body.clientHeight*.7);return this._list.layout(i,r),this.domNode.style.height=`${i}px`,this._list.domFocus(),r}focusPrevious(){this._list.focusPrevious(1,!0,void 0,this.focusCondition)}focusNext(){this._list.focusNext(1,!0,void 0,this.focusCondition)}acceptSelected(e){let t=this._list.getFocus();if(t.length===0)return;let n=t[0],r=this._list.element(n);if(!this.focusCondition(r))return;let i=e?new cc:new sc;this._list.setSelection([n],i)}onListSelection(e){if(!e.elements.length)return;let t=e.elements[0];t.item&&this.focusCondition(t)?this._delegate.onSelect(t.item,e.browserEvent instanceof cc):this._list.setSelection([])}onFocus(){var e,t;let n=this._list.getFocus();if(n.length===0)return;let r=n[0],i=this._list.element(r);(t=(e=this._delegate).onFocus)==null||t.call(e,i.item)}async onListHover(e){let t=e.element;if(t&&t.item&&this.focusCondition(t)){if(this._delegate.onHover&&!t.disabled&&t.kind===`action`){let e=await this._delegate.onHover(t.item,this.cts.token);t.canPreview=e?e.canPreview:void 0}e.index&&this._list.splice(e.index,1,[t])}this._list.setFocus(typeof e.index==`number`?[e.index]:[])}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};uc=tc([nc(4,gn),nc(5,F)],uc);function dc(e){return e.replace(/\r\n|\r|\n/g,` `)}var fc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},pc=function(e,t){return function(n,r){t(n,r,e)}};M(`actionBar.toggledBackground`,{dark:Mr,light:Mr,hcDark:Mr,hcLight:Mr},L(`actionBar.toggledBackground`,`Background color for toggled action items in action bar.`));var mc={Visible:new jn(`codeActionMenuVisible`,!1,L(`codeActionMenuVisible`,`Whether the action widget list is visible`))},hc=$n(`actionWidgetService`),gc=class extends w{get isVisible(){return mc.Visible.getValue(this._contextKeyService)||!1}constructor(e,t,n){super(),this._contextViewService=e,this._contextKeyService=t,this._instantiationService=n,this._list=this._register(new ft)}show(e,t,n,r,i,a,o){let s=mc.Visible.bindTo(this._contextKeyService),c=this._instantiationService.createInstance(uc,e,t,n,r);this._contextViewService.showContextView({getAnchor:()=>i,render:e=>(s.set(!0),this._renderWidget(e,c,o??[])),onHide:e=>{s.reset(),this._onWidgetClosed(e)}},a,!1)}acceptSelected(e){var t;(t=this._list.value)==null||t.acceptSelected(e)}focusPrevious(){var e;(e=this._list?.value)==null||e.focusPrevious()}focusNext(){var e;(e=this._list?.value)==null||e.focusNext()}hide(e){var t;(t=this._list.value)==null||t.hide(e),this._list.clear()}_renderWidget(e,t,n){let r=document.createElement(`div`);if(r.classList.add(`action-widget`),e.appendChild(r),this._list.value=t,this._list.value)r.appendChild(this._list.value.domNode);else throw Error(`List has no value`);let i=new m,a=document.createElement(`div`),o=e.appendChild(a);o.classList.add(`context-view-block`),i.add(z(o,Dt.MOUSE_DOWN,e=>e.stopPropagation()));let s=document.createElement(`div`),c=e.appendChild(s);c.classList.add(`context-view-pointerBlock`),i.add(z(c,Dt.POINTER_MOVE,()=>c.remove())),i.add(z(c,Dt.MOUSE_DOWN,()=>c.remove()));let l=0;if(n.length){let e=this._createActionBar(`.action-widget-action-bar`,n);e&&(r.appendChild(e.getContainer().parentElement),i.add(e),l=e.getContainer().offsetWidth)}let u=this._list.value?.layout(l);r.style.width=`${u}px`;let d=i.add(Ye(e));return i.add(d.onDidBlur(()=>this.hide(!0))),i}_createActionBar(e,t){if(!t.length)return;let n=new o(E(e));return n.push(t,{icon:!1,label:!0}),n}_onWidgetClosed(e){var t;(t=this._list.value)==null||t.hide(e)}};gc=fc([pc(0,gn),pc(1,S),pc(2,g)],gc),cr(hc,gc,1);var _c=1100;A(class extends _r{constructor(){super({id:`hideCodeActionWidget`,title:H(`hideCodeActionWidget.title`,`Hide action widget`),precondition:mc.Visible,keybinding:{weight:_c,primary:9,secondary:[1033]}})}run(e){e.get(hc).hide(!0)}}),A(class extends _r{constructor(){super({id:`selectPrevCodeAction`,title:H(`selectPrevCodeAction.title`,`Select previous action`),precondition:mc.Visible,keybinding:{weight:_c,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(e){let t=e.get(hc);t instanceof gc&&t.focusPrevious()}}),A(class extends _r{constructor(){super({id:`selectNextCodeAction`,title:H(`selectNextCodeAction.title`,`Select next action`),precondition:mc.Visible,keybinding:{weight:_c,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(e){let t=e.get(hc);t instanceof gc&&t.focusNext()}}),A(class extends _r{constructor(){super({id:rc,title:H(`acceptSelected.title`,`Accept selected action`),precondition:mc.Visible,keybinding:{weight:_c,primary:3,secondary:[2137]}})}run(e){let t=e.get(hc);t instanceof gc&&t.acceptSelected()}}),A(class extends _r{constructor(){super({id:ic,title:H(`previewSelected.title`,`Preview selected action`),precondition:mc.Visible,keybinding:{weight:_c,primary:2051}})}run(e){let t=e.get(hc);t instanceof gc&&t.acceptSelected(!0)}});var vc=new jn(`supportedCodeAction`,``),yc=class extends w{constructor(e,t,n,r=250){super(),this._editor=e,this._markerService=t,this._signalChange=n,this._delay=r,this._autoTriggerTimer=this._register(new De),this._register(this._markerService.onMarkerChanged(e=>this._onMarkerChanges(e))),this._register(this._editor.onDidChangeCursorPosition(()=>this._tryAutoTrigger()))}trigger(e){let t=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);this._signalChange(t?{trigger:e,selection:t}:void 0)}_onMarkerChanges(e){let t=this._editor.getModel();t&&e.some(e=>Cr(e,t.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:Ss.Default})},this._delay)}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;let t=this._editor.getSelection();if(e.type===1)return t;let n=this._editor.getOption(65).enabled;if(n!==Ht.Off){if(n===Ht.On)return t;if(n===Ht.OnCode){if(!t.isEmpty())return t;let e=this._editor.getModel(),{lineNumber:n,column:r}=t.getPosition(),i=e.getLineContent(n);if(i.length===0)return;if(r===1){if(/\s/.test(i[0]))return}else if(r===e.getLineMaxColumn(n)){if(/\s/.test(i[i.length-1]))return}else if(/\s/.test(i[r-2])&&/\s/.test(i[r-1]))return}return t}}},bc;(function(e){e.Empty={type:0};class t{constructor(e,t,n){this.trigger=e,this.position=t,this._cancellablePromise=n,this.type=1,this.actions=n.catch(e=>{if(Le(e))return xc;throw e})}cancel(){this._cancellablePromise.cancel()}}e.Triggered=t})(bc||={});var xc=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1,hasAIFix:!1,allAIFixes:!1}),Sc=class extends w{constructor(e,t,n,r,i,a){super(),this._editor=e,this._registry=t,this._markerService=n,this._progressService=i,this._configurationService=a,this._codeActionOracle=this._register(new ft),this._state=bc.Empty,this._onDidChangeState=this._register(new j),this.onDidChangeState=this._onDidChangeState.event,this._disposed=!1,this._supportedCodeActions=vc.bindTo(r),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(65)&&this._update()})),this._update()}dispose(){this._disposed||(this._disposed=!0,super.dispose(),this.setState(bc.Empty,!0))}_settingEnabledNearbyQuickfixes(){let e=this._editor?.getModel();return this._configurationService?this._configurationService.getValue(`editor.codeActionWidget.includeNearbyQuickFixes`,{resource:e?.uri}):!1}_update(){if(this._disposed)return;this._codeActionOracle.value=void 0,this.setState(bc.Empty);let e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(91)){let t=this._registry.all(e).flatMap(e=>e.providedCodeActionKinds??[]);this._supportedCodeActions.set(t.join(` `)),this._codeActionOracle.value=new yc(this._editor,this._markerService,t=>{var n;if(!t){this.setState(bc.Empty);return}let r=t.selection.getStartPosition(),i=kt(async n=>{if(this._settingEnabledNearbyQuickfixes()&&t.trigger.type===1&&(t.trigger.triggerAction===Ss.QuickFix||(t.trigger.filter?.include)?.contains(Q.QuickFix))){let r=await Is(this._registry,e,t.selection,t.trigger,Ke.None,n),i=[...r.allActions];if(n.isCancellationRequested)return xc;let a=r.validActions?.some(e=>e.action.kind?Q.QuickFix.contains(new Z(e.action.kind)):!1),o=this._markerService.read({resource:e.uri});if(a){for(let e of r.validActions)(e.action.command?.arguments)?.some(e=>typeof e==`string`&&e.includes(`_typescript.applyFixAllCodeAction`))&&(e.action.diagnostics=[...o.filter(e=>e.relatedInformation)]);return{validActions:r.validActions,allActions:i,documentation:r.documentation,hasAutoFix:r.hasAutoFix,hasAIFix:r.hasAIFix,allAIFixes:r.allAIFixes,dispose:()=>{r.dispose()}}}else if(!a&&o.length>0){let a=t.selection.getPosition(),s=a,c=Number.MAX_VALUE,l=[...r.validActions];for(let u of o){let d=u.endColumn,f=u.endLineNumber,p=u.startLineNumber;if(f===a.lineNumber||p===a.lineNumber){s=new T(f,d);let u={type:t.trigger.type,triggerAction:t.trigger.triggerAction,filter:{include:t.trigger.filter?.include?t.trigger.filter?.include:Q.QuickFix},autoApply:t.trigger.autoApply,context:{notAvailableMessage:t.trigger.context?.notAvailableMessage||``,position:s}},p=new pr(s.lineNumber,s.column,s.lineNumber,s.column),m=await Is(this._registry,e,p,u,Ke.None,n);if(m.validActions.length!==0){for(let e of m.validActions)(e.action.command?.arguments)?.some(e=>typeof e==`string`&&e.includes(`_typescript.applyFixAllCodeAction`))&&(e.action.diagnostics=[...o.filter(e=>e.relatedInformation)]);r.allActions.length===0&&i.push(...m.allActions),Math.abs(a.column-d)<c?l.unshift(...m.validActions):l.push(...m.validActions)}c=Math.abs(a.column-d)}}let u=l.filter((e,t,n)=>n.findIndex(t=>t.action.title===e.action.title)===t);return u.sort((e,t)=>e.action.isPreferred&&!t.action.isPreferred?-1:!e.action.isPreferred&&t.action.isPreferred||e.action.isAI&&!t.action.isAI?1:!e.action.isAI&&t.action.isAI?-1:0),{validActions:u,allActions:i,documentation:r.documentation,hasAutoFix:r.hasAutoFix,hasAIFix:r.hasAIFix,allAIFixes:r.allAIFixes,dispose:()=>{r.dispose()}}}}return Is(this._registry,e,t.selection,t.trigger,Ke.None,n)});t.trigger.type===1&&((n=this._progressService)==null||n.showWhile(i,250));let a=new bc.Triggered(t.trigger,r,i),o=!1;this._state.type===1&&(o=this._state.trigger.type===1&&a.type===1&&a.trigger.type===2&&this._state.position!==a.position),o?setTimeout(()=>{this.setState(a)},500):this.setState(a)},void 0),this._codeActionOracle.value.trigger({type:2,triggerAction:Ss.Default})}else this._supportedCodeActions.reset()}trigger(e){var t;(t=this._codeActionOracle.value)==null||t.trigger(e)}setState(e,t){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!t&&!this._disposed&&this._onDidChangeState.fire(e))}},Cc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},wc=function(e,t){return function(n,r){t(n,r,e)}},Tc,Ec=`quickfix-edit-highlight`,Dc=Tc=class extends w{static get(e){return e.getContribution(Tc.ID)}constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this._commandService=o,this._configurationService=s,this._actionWidgetService=c,this._instantiationService=l,this._telemetryService=u,this._activeCodeActions=this._register(new ft),this._showDisabled=!1,this._disposed=!1,this._editor=e,this._model=this._register(new Sc(this._editor,i.codeActionProvider,t,n,a,s)),this._register(this._model.onDidChangeState(e=>this.update(e))),this._lightBulbWidget=new rt(()=>{let e=this._editor.getContribution(ec.ID);return e&&this._register(e.onClick(e=>this.showCodeActionsFromLightbulb(e.actions,e))),e}),this._resolver=r.createInstance(Ks),this._register(this._editor.onDidLayoutChange(()=>this._actionWidgetService.hide()))}dispose(){this._disposed=!0,super.dispose()}async showCodeActionsFromLightbulb(e,t){if(this._telemetryService.publicLog2(`codeAction.showCodeActionsFromLightbulb`,{codeActionListLength:e.validActions.length,codeActions:e.validActions.map(e=>e.action.title),codeActionProviders:e.validActions.map(e=>e.provider?.displayName??``)}),e.allAIFixes&&e.validActions.length===1){let t=e.validActions[0],n=t.action.command;n&&n.id===`inlineChat.start`&&n.arguments&&n.arguments.length>=1&&(n.arguments[0]={...n.arguments[0],autoSend:!1}),await this._applyCodeAction(t,!1,!1,Bs.FromAILightbulb);return}await this.showCodeActionList(e,t,{includeDisabledActions:!1,fromLightbulb:!0})}showCodeActions(e,t,n){return this.showCodeActionList(t,n,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,t,n,r){var i;if(!this._editor.hasModel())return;(i=G.get(this._editor))==null||i.closeMessage();let a=this._editor.getPosition();this._trigger({type:1,triggerAction:t,filter:n,autoApply:r,context:{notAvailableMessage:e,position:a}})}_trigger(e){return this._model.trigger(e)}async _applyCodeAction(e,t,n,r){try{await this._instantiationService.invokeFunction(Vs,e,r,{preview:n,editor:this._editor})}finally{t&&this._trigger({type:2,triggerAction:Ss.QuickFix,filter:{}})}}async update(e){var t,n,r,i,a;if(e.type!==1){(t=this._lightBulbWidget.rawValue)==null||t.hide();return}let o;try{o=await e.actions}catch(e){ot(e);return}if(!this._disposed)if((n=this._lightBulbWidget.value)==null||n.update(o,e.trigger,e.position),e.trigger.type===1){if(e.trigger.filter?.include){let t=this.tryGetValidActionToApply(e.trigger,o);if(t){try{(r=this._lightBulbWidget.value)==null||r.hide(),await this._applyCodeAction(t,!1,!1,Bs.FromCodeActions)}finally{o.dispose()}return}if(e.trigger.context){let t=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,o);if(t&&t.action.disabled){(i=G.get(this._editor))==null||i.showMessage(t.action.disabled,e.trigger.context.position),o.dispose();return}}}let t=!!e.trigger.filter?.include;if(e.trigger.context&&(!o.allActions.length||!t&&!o.validActions.length)){(a=G.get(this._editor))==null||a.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=o,o.dispose();return}this._activeCodeActions.value=o,this.showCodeActionList(o,this.toCoords(e.position),{includeDisabledActions:t,fromLightbulb:!1})}else this._actionWidgetService.isVisible?o.dispose():this._activeCodeActions.value=o}getInvalidActionThatWouldHaveBeenApplied(e,t){if(t.allActions.length&&(e.autoApply===`first`&&t.validActions.length===0||e.autoApply===`ifSingle`&&t.allActions.length===1))return t.allActions.find(({action:e})=>e.disabled)}tryGetValidActionToApply(e,t){if(t.validActions.length&&(e.autoApply===`first`&&t.validActions.length>0||e.autoApply===`ifSingle`&&t.validActions.length===1))return t.validActions[0]}async showCodeActionList(e,t,n){let r=this._editor.createDecorationsCollection(),i=this._editor.getDomNode();if(!i)return;let a=n.includeDisabledActions&&(this._showDisabled||e.validActions.length===0)?e.allActions:e.validActions;if(!a.length)return;let o=T.isIPosition(t)?this.toCoords(t):t;this._actionWidgetService.show(`codeActionWidget`,!0,Ys(a,this._shouldShowHeaders(),this._resolver.getResolver()),{onSelect:async(e,t)=>{this._applyCodeAction(e,!0,!!t,n.fromLightbulb?Bs.FromAILightbulb:Bs.FromCodeActions),this._actionWidgetService.hide(!1),r.clear()},onHide:t=>{var i;(i=this._editor)==null||i.focus(),r.clear(),n.fromLightbulb&&t!==void 0&&this._telemetryService.publicLog2(`codeAction.showCodeActionList.onHide`,{codeActionListLength:e.validActions.length,didCancel:t,codeActions:e.validActions.map(e=>e.action.title)})},onHover:async(e,t)=>{if(t.isCancellationRequested)return;let n=!1,r=e.action.kind;if(r){let e=new Z(r);n=[Q.RefactorExtract,Q.RefactorInline,Q.RefactorRewrite,Q.RefactorMove,Q.Source].some(t=>t.contains(e))}return{canPreview:n||!!e.action.edit?.edits.length}},onFocus:e=>{if(e&&e.action){let t=e.action.ranges,n=e.action.diagnostics;if(r.clear(),t&&t.length>0){let e=n&&n?.length>1?n.map(e=>({range:e,options:Tc.DECORATION})):t.map(e=>({range:e,options:Tc.DECORATION}));r.set(e)}else if(n&&n.length>0){let e=n.map(e=>({range:e,options:Tc.DECORATION}));r.set(e);let t=n[0];if(t.startLineNumber&&t.startColumn){let e=this._editor.getModel()?.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn})?.word;Bn(L(`editingNewSelection`,`Context: {0} at line {1} and column {2}.`,e,t.startLineNumber,t.startColumn))}}}else r.clear()}},o,i,this._getActionBarActions(e,t,n))}toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();let t=this._editor.getScrolledVisiblePosition(e),n=qn(this._editor.getDomNode());return{x:n.left+t.left,y:n.top+t.top+t.height}}_shouldShowHeaders(){let e=this._editor?.getModel();return this._configurationService.getValue(`editor.codeActionWidget.showHeaders`,{resource:e?.uri})}_getActionBarActions(e,t,n){if(n.fromLightbulb)return[];let r=e.documentation.map(e=>({id:e.id,label:e.title,tooltip:e.tooltip??``,class:void 0,enabled:!0,run:()=>this._commandService.executeCommand(e.id,...e.arguments??[])}));return n.includeDisabledActions&&e.validActions.length>0&&e.allActions.length!==e.validActions.length&&r.push(this._showDisabled?{id:`hideMoreActions`,label:L(`hideMoreActions`,`Hide Disabled`),enabled:!0,tooltip:``,class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,t,n))}:{id:`showMoreActions`,label:L(`showMoreActions`,`Show Disabled`),enabled:!0,tooltip:``,class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,t,n))}),r}};Dc.ID=`editor.contrib.codeActionController`,Dc.DECORATION=Be.register({description:`quickfix-highlight`,className:Ec}),Dc=Tc=Cc([wc(1,Wn),wc(2,S),wc(3,g),wc(4,l),wc(5,oe),wc(6,sn),wc(7,Tr),wc(8,hc),wc(9,g),wc(10,In)],Dc),n((e,t)=>{((e,n)=>{n&&t.addRule(`.monaco-editor ${e} { background-color: ${n}; }`)})(`.quickfix-edit-highlight`,e.getColor(We));let n=e.getColor($e);n&&t.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${Cn(e.type)?`dotted`:`solid`} ${n}; box-sizing: border-box; }`)});var Oc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},kc=function(e,t){return function(n,r){t(n,r,e)}},Ac=class{constructor(e,t,n){this.marker=e,this.index=t,this.total=n}},jc=class{constructor(e,t,n){this._markerService=t,this._configService=n,this._onDidChange=new j,this.onDidChange=this._onDidChange.event,this._dispoables=new m,this._markers=[],this._nextIdx=-1,Me.isUri(e)?this._resourceFilter=t=>t.toString()===e.toString():e&&(this._resourceFilter=e);let r=this._configService.getValue(`problems.sortOrder`),i=(e,t)=>{let n=pe(e.resource.toString(),t.resource.toString());return n===0&&(n=r===`position`?b.compareRangesUsingStarts(e,t)||B.compare(e.severity,t.severity):B.compare(e.severity,t.severity)||b.compareRangesUsingStarts(e,t)),n},a=()=>{this._markers=this._markerService.read({resource:Me.isUri(e)?e:void 0,severities:B.Error|B.Warning|B.Info}),typeof e==`function`&&(this._markers=this._markers.filter(e=>this._resourceFilter(e.resource))),this._markers.sort(i)};a(),this._dispoables.add(t.onMarkerChanged(e=>{(!this._resourceFilter||e.some(e=>this._resourceFilter(e)))&&(a(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(e){return!this._resourceFilter&&!e?!0:!this._resourceFilter||!e?!1:this._resourceFilter(e)}get selected(){let e=this._markers[this._nextIdx];return e&&new Ac(e,this._nextIdx+1,this._markers.length)}_initIdx(e,t,n){let r=!1,i=this._markers.findIndex(t=>t.resource.toString()===e.uri.toString());i<0&&(i=Pr(this._markers,{resource:e.uri},(e,t)=>pe(e.resource.toString(),t.resource.toString())),i<0&&(i=~i));for(let n=i;n<this._markers.length;n++){let i=b.lift(this._markers[n]);if(i.isEmpty()){let t=e.getWordAtPosition(i.getStartPosition());t&&(i=new b(i.startLineNumber,t.startColumn,i.startLineNumber,t.endColumn))}if(t&&(i.containsPosition(t)||t.isBeforeOrEqual(i.getStartPosition()))){this._nextIdx=n,r=!0;break}if(this._markers[n].resource.toString()!==e.uri.toString())break}r||(this._nextIdx=n?0:this._markers.length-1),this._nextIdx<0&&(this._nextIdx=this._markers.length-1)}resetIndex(){this._nextIdx=-1}move(e,t,n){if(this._markers.length===0)return!1;let r=this._nextIdx;return this._nextIdx===-1?this._initIdx(t,n,e):e?this._nextIdx=(this._nextIdx+1)%this._markers.length:e||(this._nextIdx=(this._nextIdx-1+this._markers.length)%this._markers.length),r!==this._nextIdx}find(e,t){let n=this._markers.findIndex(t=>t.resource.toString()===e.toString());if(!(n<0)){for(;n<this._markers.length;n++)if(b.containsPosition(this._markers[n],t))return new Ac(this._markers[n],n+1,this._markers.length)}}};jc=Oc([kc(1,Wn),kc(2,Tr)],jc);var Mc=$n(`IMarkerNavigationService`),Nc=class{constructor(e,t){this._markerService=e,this._configService=t,this._provider=new kr}getMarkerList(e){for(let t of this._provider){let n=t.getMarkerList(e);if(n)return n}return new jc(e,this._markerService,this._configService)}};Nc=Oc([kc(0,Wn),kc(1,Tr)],Nc),cr(Mc,Nc,1);var Pc;(function(e){function t(e){switch(e){case ae.Ignore:return`severity-ignore `+V.asClassName(R.info);case ae.Info:return V.asClassName(R.info);case ae.Warning:return V.asClassName(R.warning);case ae.Error:return V.asClassName(R.error);default:return``}}e.className=t})(Pc||={});var Fc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ic=function(e,t){return function(n,r){t(n,r,e)}},Lc,Rc=class{constructor(e,t,n,r,i){this._openerService=r,this._labelService=i,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new m,this._editor=t;let a=document.createElement(`div`);a.className=`descriptioncontainer`,this._messageBlock=document.createElement(`div`),this._messageBlock.classList.add(`message`),this._messageBlock.setAttribute(`aria-live`,`assertive`),this._messageBlock.setAttribute(`role`,`alert`),a.appendChild(this._messageBlock),this._relatedBlock=document.createElement(`div`),a.appendChild(this._relatedBlock),this._disposables.add(Pt(this._relatedBlock,`click`,e=>{e.preventDefault();let t=this._relatedDiagnostics.get(e.target);t&&n(t)})),this._scrollable=new nr(a,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:6,verticalScrollbarSize:6}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(e=>{a.style.left=`-${e.scrollLeft}px`,a.style.top=`-${e.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){re(this._disposables)}update(e){let{source:t,message:n,relatedInformation:i,code:a}=e,o=(t?.length||0)+2;a&&(typeof a==`string`?o+=a.length:o+=a.value.length);let s=jt(n);this._lines=s.length,this._longestLineLength=0;for(let e of s)this._longestLineLength=Math.max(e.length+o,this._longestLineLength);r(this._messageBlock),this._messageBlock.setAttribute(`aria-label`,this.getAriaLabel(e)),this._editor.applyFontInfo(this._messageBlock);let c=this._messageBlock;for(let e of s)c=document.createElement(`div`),c.innerText=e,e===``&&(c.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(c);if(t||a){let e=document.createElement(`span`);if(e.classList.add(`details`),c.appendChild(e),t){let n=document.createElement(`span`);n.innerText=t,n.classList.add(`source`),e.appendChild(n)}if(a)if(typeof a==`string`){let t=document.createElement(`span`);t.innerText=`(${a})`,t.classList.add(`code`),e.appendChild(t)}else{this._codeLink=E(`a.code-link`),this._codeLink.setAttribute(`href`,`${a.target.toString()}`),this._codeLink.onclick=e=>{this._openerService.open(a.target,{allowCommands:!0}),e.preventDefault(),e.stopPropagation()};let t=D(this._codeLink,E(`span`));t.innerText=a.value,e.appendChild(this._codeLink)}}if(r(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),At(i)){let e=this._relatedBlock.appendChild(document.createElement(`div`));e.style.paddingTop=`${Math.floor(this._editor.getOption(67)*.66)}px`,this._lines+=1;for(let t of i){let n=document.createElement(`div`),r=document.createElement(`a`);r.classList.add(`filename`),r.innerText=`${this._labelService.getUriBasenameLabel(t.resource)}(${t.startLineNumber}, ${t.startColumn}): `,r.title=this._labelService.getUriLabel(t.resource),this._relatedDiagnostics.set(r,t);let i=document.createElement(`span`);i.innerText=t.message,n.appendChild(r),n.appendChild(i),this._lines+=1,e.appendChild(n)}}let l=this._editor.getOption(50),u=Math.ceil(l.typicalFullwidthCharacterWidth*this._longestLineLength*.75),d=l.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:u,scrollHeight:d})}layout(e,t){this._scrollable.getDomNode().style.height=`${e}px`,this._scrollable.getDomNode().style.width=`${t}px`,this._scrollable.setScrollDimensions({width:t,height:e})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(e){let t=``;switch(e.severity){case B.Error:t=L(`Error`,`Error`);break;case B.Warning:t=L(`Warning`,`Warning`);break;case B.Info:t=L(`Info`,`Info`);break;case B.Hint:t=L(`Hint`,`Hint`);break}let n=L(`marker aria`,`{0} at {1}. `,t,e.startLineNumber+`:`+e.startColumn),r=this._editor.getModel();return r&&e.startLineNumber<=r.getLineCount()&&e.startLineNumber>=1&&(n=`${r.getLineContent(e.startLineNumber)}, ${n}`),n}},zc=Lc=class extends bi{constructor(e,t,n,r,i,a,o){super(e,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},i),this._themeService=t,this._openerService=n,this._menuService=r,this._contextKeyService=a,this._labelService=o,this._callOnDispose=new m,this._onDidSelectRelatedInformation=new j,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=B.Warning,this._backgroundColor=I.white,this._applyTheme(t.getColorTheme()),this._callOnDispose.add(t.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(e){this._backgroundColor=e.getColor(Yc);let t=Uc,n=Wc;this._severity===B.Warning?(t=Gc,n=Kc):this._severity===B.Info&&(t=qc,n=Jc);let r=e.getColor(t),i=e.getColor(n);this.style({arrowColor:r,frameColor:r,headerBackgroundColor:i,primaryHeadingColor:e.getColor(Si),secondaryHeadingColor:e.getColor(Ci)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():``),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(e){super._fillHead(e),this._disposables.add(this._actionbarWidget.actionRunner.onWillRun(e=>this.editor.focus()));let t=[],n=this._menuService.createMenu(Lc.TitleMenu,this._contextKeyService);Kn(n,void 0,t),this._actionbarWidget.push(t,{label:!1,icon:!0,index:0}),n.dispose()}_fillTitleIcon(e){this._icon=D(e,E(``))}_fillBody(e){this._parentContainer=e,e.classList.add(`marker-widget`),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute(`role`,`tooltip`),this._container=document.createElement(`div`),e.appendChild(this._container),this._message=new Rc(this._container,this.editor,e=>this._onDidSelectRelatedInformation.fire(e),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw Error(`call showAtMarker`)}showAtMarker(e,t,n){this._container.classList.remove(`stale`),this._message.update(e),this._severity=e.severity,this._applyTheme(this._themeService.getColorTheme());let r=b.lift(e),i=this.editor.getPosition(),a=i&&r.containsPosition(i)?i:r.getStartPosition();super.show(a,this.computeRequiredHeight());let o=this.editor.getModel();if(o){let e=n>1?L(`problems`,`{0} of {1} problems`,t,n):L(`change`,`{0} of {1} problem`,t,n);this.setTitle(Un(o.uri),e)}this._icon.className=`codicon ${Pc.className(B.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(a,0),this.editor.focus()}updateMarker(e){this._container.classList.remove(`stale`),this._message.update(e)}showStale(){this._container.classList.add(`stale`),this._relayout()}_doLayoutBody(e,t){super._doLayoutBody(e,t),this._heightInPixel=e,this._message.layout(e,t),this._container.style.height=`${e}px`}_onWidth(e){this._message.layout(this._heightInPixel,e)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}};zc.TitleMenu=new k(`gotoErrorTitleMenu`),zc=Lc=Fc([Ic(1,Lt),Ic(2,Tn),Ic(3,nn),Ic(4,g),Ic(5,S),Ic(6,Ve)],zc);var Bc=rr(Re,On),Vc=rr(Pe,er),Hc=rr(Lr,ct),Uc=M(`editorMarkerNavigationError.background`,{dark:Bc,light:Bc,hcDark:it,hcLight:it},L(`editorMarkerNavigationError`,`Editor marker navigation widget error color.`)),Wc=M(`editorMarkerNavigationError.headerBackground`,{dark:Kt(Uc,.1),light:Kt(Uc,.1),hcDark:null,hcLight:null},L(`editorMarkerNavigationErrorHeaderBackground`,`Editor marker navigation widget error heading background.`)),Gc=M(`editorMarkerNavigationWarning.background`,{dark:Vc,light:Vc,hcDark:it,hcLight:it},L(`editorMarkerNavigationWarning`,`Editor marker navigation widget warning color.`)),Kc=M(`editorMarkerNavigationWarning.headerBackground`,{dark:Kt(Gc,.1),light:Kt(Gc,.1),hcDark:`#0C141F`,hcLight:Kt(Gc,.2)},L(`editorMarkerNavigationWarningBackground`,`Editor marker navigation widget warning heading background.`)),qc=M(`editorMarkerNavigationInfo.background`,{dark:Hc,light:Hc,hcDark:it,hcLight:it},L(`editorMarkerNavigationInfo`,`Editor marker navigation widget info color.`)),Jc=M(`editorMarkerNavigationInfo.headerBackground`,{dark:Kt(qc,.1),light:Kt(qc,.1),hcDark:null,hcLight:null},L(`editorMarkerNavigationInfoHeaderBackground`,`Editor marker navigation widget info heading background.`)),Yc=M(`editorMarkerNavigation.background`,{dark:c,light:c,hcDark:c,hcLight:c},L(`editorMarkerNavigationBackground`,`Editor marker navigation widget background.`)),Xc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Zc=function(e,t){return function(n,r){t(n,r,e)}},Qc,$c=Qc=class{static get(e){return e.getContribution(Qc.ID)}constructor(e,t,n,r,i){this._markerNavigationService=t,this._contextKeyService=n,this._editorService=r,this._instantiationService=i,this._sessionDispoables=new m,this._editor=e,this._widgetVisible=al.bindTo(this._contextKeyService)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(e){if(this._model&&this._model.matches(e))return this._model;let t=!1;return this._model&&(t=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(e),t&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(zc,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(e=>{var t;(!this._model?.selected||!b.containsPosition(this._model?.selected.marker,e.position))&&((t=this._model)==null||t.resetIndex())})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;let e=this._model.find(this._editor.getModel().uri,this._widget.position);e?this._widget.updateMarker(e.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(e=>{this._editorService.openCodeEditor({resource:e.resource,options:{pinned:!0,revealIfOpened:!0,selection:b.lift(e).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(e=!0){this._cleanUp(),e&&this._editor.focus()}showAtMarker(e){if(this._editor.hasModel()){let t=this._getOrCreateModel(this._editor.getModel().uri);t.resetIndex(),t.move(!0,this._editor.getModel(),new T(e.startLineNumber,e.startColumn)),t.selected&&this._widget.showAtMarker(t.selected.marker,t.selected.index,t.selected.total)}}async nagivate(e,t){var n,r;if(this._editor.hasModel()){let i=this._getOrCreateModel(t?void 0:this._editor.getModel().uri);if(i.move(e,this._editor.getModel(),this._editor.getPosition()),!i.selected)return;if(i.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();let a=await this._editorService.openCodeEditor({resource:i.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:i.selected.marker}},this._editor);a&&((n=Qc.get(a))==null||n.close(),(r=Qc.get(a))==null||r.nagivate(e,t))}else this._widget.showAtMarker(i.selected.marker,i.selected.index,i.selected.total)}}};$c.ID=`editor.contrib.markerController`,$c=Qc=Xc([Zc(1,Mc),Zc(2,S),Zc(3,Et),Zc(4,g)],$c);var el=class extends x{constructor(e,t,n){super(n),this._next=e,this._multiFile=t}async run(e,t){var n;t.hasModel()&&((n=$c.get(t))==null||n.nagivate(this._next,this._multiFile))}},tl=class e extends el{constructor(){super(!0,!1,{id:e.ID,label:e.LABEL,alias:`Go to Next Problem (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:N.focus,primary:578,weight:100},menuOpts:{menuId:zc.TitleMenu,title:e.LABEL,icon:jr(`marker-navigation-next`,R.arrowDown,L(`nextMarkerIcon`,`Icon for goto next marker.`)),group:`navigation`,order:1}})}};tl.ID=`editor.action.marker.next`,tl.LABEL=L(`markerAction.next.label`,`Go to Next Problem (Error, Warning, Info)`);var nl=class e extends el{constructor(){super(!1,!1,{id:e.ID,label:e.LABEL,alias:`Go to Previous Problem (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:N.focus,primary:1602,weight:100},menuOpts:{menuId:zc.TitleMenu,title:e.LABEL,icon:jr(`marker-navigation-previous`,R.arrowUp,L(`previousMarkerIcon`,`Icon for goto previous marker.`)),group:`navigation`,order:2}})}};nl.ID=`editor.action.marker.prev`,nl.LABEL=L(`markerAction.previous.label`,`Go to Previous Problem (Error, Warning, Info)`);var rl=class extends el{constructor(){super(!0,!0,{id:`editor.action.marker.nextInFiles`,label:L(`markerAction.nextInFiles.label`,`Go to Next Problem in Files (Error, Warning, Info)`),alias:`Go to Next Problem in Files (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:N.focus,primary:66,weight:100},menuOpts:{menuId:k.MenubarGoMenu,title:L({key:`miGotoNextProblem`,comment:[`&& denotes a mnemonic`]},`Next &&Problem`),group:`6_problem_nav`,order:1}})}},il=class extends el{constructor(){super(!1,!0,{id:`editor.action.marker.prevInFiles`,label:L(`markerAction.previousInFiles.label`,`Go to Previous Problem in Files (Error, Warning, Info)`),alias:`Go to Previous Problem in Files (Error, Warning, Info)`,precondition:void 0,kbOpts:{kbExpr:N.focus,primary:1090,weight:100},menuOpts:{menuId:k.MenubarGoMenu,title:L({key:`miGotoPreviousProblem`,comment:[`&& denotes a mnemonic`]},`Previous &&Problem`),group:`6_problem_nav`,order:2}})}};Ir($c.ID,$c,4),y(tl),y(nl),y(rl),y(il);var al=new jn(`markersNavigationVisible`,!1);st(new(ge.bindToContribution($c.get))({id:`closeMarkersNavigation`,precondition:al,handler:e=>e.close(),kbOpts:{weight:150,kbExpr:N.focus,primary:9,secondary:[1033]}}));var ol=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sl=function(e,t){return function(n,r){t(n,r,e)}},$=E,cl=class{constructor(e,t,n){this.owner=e,this.range=t,this.marker=n}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}},ll={type:1,filter:{include:Q.QuickFix},triggerAction:Ss.QuickFixHover},ul=class{constructor(e,t,n,r){this._editor=e,this._markerDecorationsService=t,this._openerService=n,this._languageFeaturesService=r,this.hoverOrdinal=1,this.recentMarkerCodeActionsInfo=void 0}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1&&!e.supportsMarkerHover)return[];let n=this._editor.getModel(),r=e.range.startLineNumber,i=n.getLineMaxColumn(r),a=[];for(let o of t){let t=o.range.startLineNumber===r?o.range.startColumn:1,s=o.range.endLineNumber===r?o.range.endColumn:i,c=this._markerDecorationsService.getMarker(n.uri,o);if(!c)continue;let l=new b(e.range.startLineNumber,t,e.range.startLineNumber,s);a.push(new cl(this,l,c))}return a}renderHoverParts(e,t){if(!t.length)return w.None;let n=new m;t.forEach(t=>e.fragment.appendChild(this.renderMarkerHover(t,n)));let r=t.length===1?t[0]:t.sort((e,t)=>B.compare(e.marker.severity,t.marker.severity))[0];return this.renderMarkerStatusbar(e,r,n),n}renderMarkerHover(e,t){let n=$(`div.hover-row`);n.tabIndex=0;let r=D(n,$(`div.marker.hover-contents`)),{source:i,message:a,code:o,relatedInformation:s}=e.marker;this._editor.applyFontInfo(r);let c=D(r,$(`span`));if(c.style.whiteSpace=`pre-wrap`,c.innerText=a,i||o)if(o&&typeof o!=`string`){let e=$(`span`);if(i){let t=D(e,$(`span`));t.innerText=i}let n=D(e,$(`a.code-link`));n.setAttribute(`href`,o.target.toString()),t.add(z(n,`click`,e=>{this._openerService.open(o.target,{allowCommands:!0}),e.preventDefault(),e.stopPropagation()}));let a=D(n,$(`span`));a.innerText=o.value;let s=D(r,e);s.style.opacity=`0.6`,s.style.paddingLeft=`6px`}else{let e=D(r,$(`span`));e.style.opacity=`0.6`,e.style.paddingLeft=`6px`,e.innerText=i&&o?`${i}(${o})`:i||`(${o})`}if(At(s))for(let{message:e,resource:n,startLineNumber:i,startColumn:a}of s){let o=D(r,$(`div`));o.style.marginTop=`8px`;let s=D(o,$(`a`));s.innerText=`${Un(n)}(${i}, ${a}): `,s.style.cursor=`pointer`,t.add(z(s,`click`,e=>{e.stopPropagation(),e.preventDefault(),this._openerService&&this._openerService.open(n,{fromUserGesture:!0,editorOptions:{selection:{startLineNumber:i,startColumn:a}}}).catch(ot)}));let c=D(o,$(`span`));c.innerText=e,this._editor.applyFontInfo(c)}return n}renderMarkerStatusbar(e,t,n){if(t.marker.severity===B.Error||t.marker.severity===B.Warning||t.marker.severity===B.Info){let n=$c.get(this._editor);n&&e.statusBar.addAction({label:L(`view problem`,`View Problem`),commandId:tl.ID,run:()=>{e.hide(),n.showAtMarker(t.marker),this._editor.focus()}})}if(!this._editor.getOption(91)){let r=e.statusBar.append($(`div`));this.recentMarkerCodeActionsInfo&&(ur.makeKey(this.recentMarkerCodeActionsInfo.marker)===ur.makeKey(t.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(r.textContent=L(`noQuickFixes`,`No quick fixes available`)):this.recentMarkerCodeActionsInfo=void 0);let i=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?w.None:Se(()=>r.textContent=L(`checkingForQuickFixes`,`Checking for quick fixes...`),200,n);r.textContent||=`\xA0`;let a=this.getCodeActions(t.marker);n.add(P(()=>a.cancel())),a.then(a=>{if(i.dispose(),this.recentMarkerCodeActionsInfo={marker:t.marker,hasCodeActions:a.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){a.dispose(),r.textContent=L(`noQuickFixes`,`No quick fixes available`);return}r.style.display=`none`;let o=!1;n.add(P(()=>{o||a.dispose()})),e.statusBar.addAction({label:L(`quick fixes`,`Quick Fix...`),commandId:ks,run:t=>{o=!0;let n=Dc.get(this._editor),r=qn(t);e.hide(),n?.showCodeActions(ll,a,{x:r.left,y:r.top,width:r.width,height:r.height})}})},ot)}}getCodeActions(e){return kt(t=>Is(this._languageFeaturesService.codeActionProvider,this._editor.getModel(),new b(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),ll,Ke.None,t))}};ul=ol([sl(1,Mn),sl(2,Tn),sl(3,l)],ul);var dl=new class{constructor(){this._implementations=[]}register(e){return this._implementations.push(e),{dispose:()=>{let t=this._implementations.indexOf(e);t!==-1&&this._implementations.splice(t,1),e.dispose()}}}getImplementations(){return this._implementations}},fl;(function(e){e.intro=L(`intro`,`Focus on the hover widget to cycle through the hover parts with the Tab key.`),e.increaseVerbosity=L(`increaseVerbosity`,`- The focused hover part verbosity level can be increased with the Increase Hover Verbosity command<keybinding:{0}>.`,Jr),e.decreaseVerbosity=L(`decreaseVerbosity`,`- The focused hover part verbosity level can be decreased with the Decrease Hover Verbosity command<keybinding:{0}>.`,Xr),e.hoverContent=L(`contentHover`,`The last focused hover content is the following.`)})(fl||={});var pl=class{dispose(){var e;(e=this._provider)==null||e.dispose()}},ml=class{dispose(){var e;(e=this._provider)==null||e.dispose()}},hl=class{dispose(){}};Ir(Y.ID,Y,2),y(us),y(ds),y(fs),y(ps),y(ms),y(hs),y(gs),y(_s),y(vs),y(ys),y(bs),y(xs),lo.register(So),lo.register(ul),n((e,t)=>{let n=e.getColor(je);n&&(t.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${n.transparent(.5)}; }`),t.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${n.transparent(.5)}; }`),t.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${n.transparent(.5)}; }`))}),dl.register(new pl),dl.register(new ml),dl.register(new hl);