@inkandswitch/patchwork-pkg-base 0.0.17 → 0.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/init.js +0 -1
  2. package/modules.json +1 -11
  3. package/package.json +1 -1
  4. package/packages/raw/raw-editor.js +2 -2
  5. package/packages/account-picker/dist/AccountPicker-7VBUJTTB.js +0 -8860
  6. package/packages/account-picker/dist/AccountPicker-7VBUJTTB.js.map +0 -7
  7. package/packages/account-picker/dist/AccountPicker-CN73XGEW.css +0 -371
  8. package/packages/account-picker/dist/AccountPicker-CN73XGEW.css.map +0 -7
  9. package/packages/account-picker/dist/chunk-5WRI5ZAA.js +0 -31
  10. package/packages/account-picker/dist/chunk-5WRI5ZAA.js.map +0 -7
  11. package/packages/account-picker/dist/tool.css +0 -371
  12. package/packages/account-picker/dist/tool.css.map +0 -7
  13. package/packages/account-picker/dist/tool.js +0 -19
  14. package/packages/account-picker/dist/tool.js.map +0 -7
  15. package/packages/account-picker/package.json +0 -39
  16. package/packages/codemirror-base/dist/chunk-KMEIRH3R.js +0 -490
  17. package/packages/codemirror-base/dist/chunk-KMEIRH3R.js.map +0 -7
  18. package/packages/codemirror-base/dist/lib/codemirror.js +0 -7
  19. package/packages/codemirror-base/dist/lib/codemirror.js.map +0 -7
  20. package/packages/codemirror-base/dist/main.js +0 -17
  21. package/packages/codemirror-base/dist/main.js.map +0 -7
  22. package/packages/codemirror-base/dist/tool.js +0 -1799
  23. package/packages/codemirror-base/dist/tool.js.map +0 -7
  24. package/packages/codemirror-base/package.json +0 -55
  25. package/packages/codemirror-markdown/dist/apl-QAIM2KBM.js +0 -142
  26. package/packages/codemirror-markdown/dist/apl-QAIM2KBM.js.map +0 -7
  27. package/packages/codemirror-markdown/dist/asciiarmor-G7UKQURA.js +0 -58
  28. package/packages/codemirror-markdown/dist/asciiarmor-G7UKQURA.js.map +0 -7
  29. package/packages/codemirror-markdown/dist/asn1-JTUXKWKT.js +0 -144
  30. package/packages/codemirror-markdown/dist/asn1-JTUXKWKT.js.map +0 -7
  31. package/packages/codemirror-markdown/dist/asterisk-NM6JCXOL.js +0 -351
  32. package/packages/codemirror-markdown/dist/asterisk-NM6JCXOL.js.map +0 -7
  33. package/packages/codemirror-markdown/dist/brainfuck-X7FFM55E.js +0 -55
  34. package/packages/codemirror-markdown/dist/brainfuck-X7FFM55E.js.map +0 -7
  35. package/packages/codemirror-markdown/dist/chunk-46Z6CXSY.js +0 -1062
  36. package/packages/codemirror-markdown/dist/chunk-46Z6CXSY.js.map +0 -7
  37. package/packages/codemirror-markdown/dist/chunk-6JT2ASRP.js +0 -1111
  38. package/packages/codemirror-markdown/dist/chunk-6JT2ASRP.js.map +0 -7
  39. package/packages/codemirror-markdown/dist/chunk-CSJO4DNL.js +0 -1424
  40. package/packages/codemirror-markdown/dist/chunk-CSJO4DNL.js.map +0 -7
  41. package/packages/codemirror-markdown/dist/chunk-FLC3A4DL.js +0 -133
  42. package/packages/codemirror-markdown/dist/chunk-FLC3A4DL.js.map +0 -7
  43. package/packages/codemirror-markdown/dist/chunk-M3X2FRO3.js +0 -998
  44. package/packages/codemirror-markdown/dist/chunk-M3X2FRO3.js.map +0 -7
  45. package/packages/codemirror-markdown/dist/chunk-MAW6NPUW.js +0 -4930
  46. package/packages/codemirror-markdown/dist/chunk-MAW6NPUW.js.map +0 -7
  47. package/packages/codemirror-markdown/dist/chunk-MBTMKYFQ.js +0 -1779
  48. package/packages/codemirror-markdown/dist/chunk-MBTMKYFQ.js.map +0 -7
  49. package/packages/codemirror-markdown/dist/chunk-NEI7FGV4.js +0 -697
  50. package/packages/codemirror-markdown/dist/chunk-NEI7FGV4.js.map +0 -7
  51. package/packages/codemirror-markdown/dist/chunk-PPGERYN5.js +0 -2528
  52. package/packages/codemirror-markdown/dist/chunk-PPGERYN5.js.map +0 -7
  53. package/packages/codemirror-markdown/dist/clike-DOBZTBQN.js +0 -808
  54. package/packages/codemirror-markdown/dist/clike-DOBZTBQN.js.map +0 -7
  55. package/packages/codemirror-markdown/dist/clojure-PTADSDNF.js +0 -851
  56. package/packages/codemirror-markdown/dist/clojure-PTADSDNF.js.map +0 -7
  57. package/packages/codemirror-markdown/dist/cmake-5HAC7YMH.js +0 -73
  58. package/packages/codemirror-markdown/dist/cmake-5HAC7YMH.js.map +0 -7
  59. package/packages/codemirror-markdown/dist/cobol-HAM4C42S.js +0 -131
  60. package/packages/codemirror-markdown/dist/cobol-HAM4C42S.js.map +0 -7
  61. package/packages/codemirror-markdown/dist/coffeescript-IBRKASSJ.js +0 -310
  62. package/packages/codemirror-markdown/dist/coffeescript-IBRKASSJ.js.map +0 -7
  63. package/packages/codemirror-markdown/dist/commonlisp-KMRPB5EW.js +0 -132
  64. package/packages/codemirror-markdown/dist/commonlisp-KMRPB5EW.js.map +0 -7
  65. package/packages/codemirror-markdown/dist/crystal-2MDF4EKJ.js +0 -400
  66. package/packages/codemirror-markdown/dist/crystal-2MDF4EKJ.js.map +0 -7
  67. package/packages/codemirror-markdown/dist/css-VQQXA3AY.js +0 -1795
  68. package/packages/codemirror-markdown/dist/css-VQQXA3AY.js.map +0 -7
  69. package/packages/codemirror-markdown/dist/cypher-ZZEGDGDJ.js +0 -123
  70. package/packages/codemirror-markdown/dist/cypher-ZZEGDGDJ.js.map +0 -7
  71. package/packages/codemirror-markdown/dist/d-5S6PJOOT.js +0 -187
  72. package/packages/codemirror-markdown/dist/d-5S6PJOOT.js.map +0 -7
  73. package/packages/codemirror-markdown/dist/datatype.js +0 -48
  74. package/packages/codemirror-markdown/dist/datatype.js.map +0 -7
  75. package/packages/codemirror-markdown/dist/diff-S77XBOWF.js +0 -27
  76. package/packages/codemirror-markdown/dist/diff-S77XBOWF.js.map +0 -7
  77. package/packages/codemirror-markdown/dist/dist-2C6IPJHB.js +0 -98
  78. package/packages/codemirror-markdown/dist/dist-2C6IPJHB.js.map +0 -7
  79. package/packages/codemirror-markdown/dist/dist-2H653DKD.js +0 -170
  80. package/packages/codemirror-markdown/dist/dist-2H653DKD.js.map +0 -7
  81. package/packages/codemirror-markdown/dist/dist-2O4EI6YQ.js +0 -140
  82. package/packages/codemirror-markdown/dist/dist-2O4EI6YQ.js.map +0 -7
  83. package/packages/codemirror-markdown/dist/dist-2UJRV4FH.js +0 -75
  84. package/packages/codemirror-markdown/dist/dist-2UJRV4FH.js.map +0 -7
  85. package/packages/codemirror-markdown/dist/dist-52S6W6Z3.js +0 -15
  86. package/packages/codemirror-markdown/dist/dist-52S6W6Z3.js.map +0 -7
  87. package/packages/codemirror-markdown/dist/dist-5KN6ODPO.js +0 -340
  88. package/packages/codemirror-markdown/dist/dist-5KN6ODPO.js.map +0 -7
  89. package/packages/codemirror-markdown/dist/dist-BOGB4NCA.js +0 -20
  90. package/packages/codemirror-markdown/dist/dist-BOGB4NCA.js.map +0 -7
  91. package/packages/codemirror-markdown/dist/dist-DZ4PW5HP.js +0 -318
  92. package/packages/codemirror-markdown/dist/dist-DZ4PW5HP.js.map +0 -7
  93. package/packages/codemirror-markdown/dist/dist-FDBKXKIA.js +0 -100
  94. package/packages/codemirror-markdown/dist/dist-FDBKXKIA.js.map +0 -7
  95. package/packages/codemirror-markdown/dist/dist-G2KVVLNT.js +0 -381
  96. package/packages/codemirror-markdown/dist/dist-G2KVVLNT.js.map +0 -7
  97. package/packages/codemirror-markdown/dist/dist-HHNZE2GE.js +0 -193
  98. package/packages/codemirror-markdown/dist/dist-HHNZE2GE.js.map +0 -7
  99. package/packages/codemirror-markdown/dist/dist-HNH74YPL.js +0 -32
  100. package/packages/codemirror-markdown/dist/dist-HNH74YPL.js.map +0 -7
  101. package/packages/codemirror-markdown/dist/dist-LBQUKRIG.js +0 -27
  102. package/packages/codemirror-markdown/dist/dist-LBQUKRIG.js.map +0 -7
  103. package/packages/codemirror-markdown/dist/dist-MFKCWPLQ.js +0 -416
  104. package/packages/codemirror-markdown/dist/dist-MFKCWPLQ.js.map +0 -7
  105. package/packages/codemirror-markdown/dist/dist-NISFJM3T.js +0 -423
  106. package/packages/codemirror-markdown/dist/dist-NISFJM3T.js.map +0 -7
  107. package/packages/codemirror-markdown/dist/dist-Q7P6VH6H.js +0 -786
  108. package/packages/codemirror-markdown/dist/dist-Q7P6VH6H.js.map +0 -7
  109. package/packages/codemirror-markdown/dist/dist-RWF5A5GN.js +0 -451
  110. package/packages/codemirror-markdown/dist/dist-RWF5A5GN.js.map +0 -7
  111. package/packages/codemirror-markdown/dist/dist-UHUU7KLC.js +0 -748
  112. package/packages/codemirror-markdown/dist/dist-UHUU7KLC.js.map +0 -7
  113. package/packages/codemirror-markdown/dist/dist-WJMBFK7W.js +0 -360
  114. package/packages/codemirror-markdown/dist/dist-WJMBFK7W.js.map +0 -7
  115. package/packages/codemirror-markdown/dist/dist-XJYSXJ7H.js +0 -115
  116. package/packages/codemirror-markdown/dist/dist-XJYSXJ7H.js.map +0 -7
  117. package/packages/codemirror-markdown/dist/dist-YY24ZXZD.js +0 -212
  118. package/packages/codemirror-markdown/dist/dist-YY24ZXZD.js.map +0 -7
  119. package/packages/codemirror-markdown/dist/dockerfile-JECCOJWP.js +0 -209
  120. package/packages/codemirror-markdown/dist/dockerfile-JECCOJWP.js.map +0 -7
  121. package/packages/codemirror-markdown/dist/dtd-MNDWTW4Z.js +0 -116
  122. package/packages/codemirror-markdown/dist/dtd-MNDWTW4Z.js.map +0 -7
  123. package/packages/codemirror-markdown/dist/dylan-VQ4IHJDS.js +0 -317
  124. package/packages/codemirror-markdown/dist/dylan-VQ4IHJDS.js.map +0 -7
  125. package/packages/codemirror-markdown/dist/ebnf-IDZBFTCG.js +0 -142
  126. package/packages/codemirror-markdown/dist/ebnf-IDZBFTCG.js.map +0 -7
  127. package/packages/codemirror-markdown/dist/ecl-X3ROY7E6.js +0 -180
  128. package/packages/codemirror-markdown/dist/ecl-X3ROY7E6.js.map +0 -7
  129. package/packages/codemirror-markdown/dist/eiffel-WB3M7Y2E.js +0 -136
  130. package/packages/codemirror-markdown/dist/eiffel-WB3M7Y2E.js.map +0 -7
  131. package/packages/codemirror-markdown/dist/elm-VHXR6ZA3.js +0 -178
  132. package/packages/codemirror-markdown/dist/elm-VHXR6ZA3.js.map +0 -7
  133. package/packages/codemirror-markdown/dist/erlang-7ZBDDQDV.js +0 -676
  134. package/packages/codemirror-markdown/dist/erlang-7ZBDDQDV.js.map +0 -7
  135. package/packages/codemirror-markdown/dist/extensions/embed.js +0 -325
  136. package/packages/codemirror-markdown/dist/extensions/embed.js.map +0 -7
  137. package/packages/codemirror-markdown/dist/extensions/links.js +0 -118
  138. package/packages/codemirror-markdown/dist/extensions/links.js.map +0 -7
  139. package/packages/codemirror-markdown/dist/extensions/markdown.js +0 -3476
  140. package/packages/codemirror-markdown/dist/extensions/markdown.js.map +0 -7
  141. package/packages/codemirror-markdown/dist/factor-IKT2GQE2.js +0 -70
  142. package/packages/codemirror-markdown/dist/factor-IKT2GQE2.js.map +0 -7
  143. package/packages/codemirror-markdown/dist/fcl-CNBUVGUC.js +0 -143
  144. package/packages/codemirror-markdown/dist/fcl-CNBUVGUC.js.map +0 -7
  145. package/packages/codemirror-markdown/dist/forth-4BTPWSFZ.js +0 -118
  146. package/packages/codemirror-markdown/dist/forth-4BTPWSFZ.js.map +0 -7
  147. package/packages/codemirror-markdown/dist/fortran-V6F5DQPK.js +0 -469
  148. package/packages/codemirror-markdown/dist/fortran-V6F5DQPK.js.map +0 -7
  149. package/packages/codemirror-markdown/dist/gas-4DLP6BC4.js +0 -296
  150. package/packages/codemirror-markdown/dist/gas-4DLP6BC4.js.map +0 -7
  151. package/packages/codemirror-markdown/dist/gherkin-OSGPX6HI.js +0 -117
  152. package/packages/codemirror-markdown/dist/gherkin-OSGPX6HI.js.map +0 -7
  153. package/packages/codemirror-markdown/dist/groovy-R2JW63QF.js +0 -225
  154. package/packages/codemirror-markdown/dist/groovy-R2JW63QF.js.map +0 -7
  155. package/packages/codemirror-markdown/dist/haskell-GG7T4J6H.js +0 -461
  156. package/packages/codemirror-markdown/dist/haskell-GG7T4J6H.js.map +0 -7
  157. package/packages/codemirror-markdown/dist/haxe-ESFUJKSE.js +0 -521
  158. package/packages/codemirror-markdown/dist/haxe-ESFUJKSE.js.map +0 -7
  159. package/packages/codemirror-markdown/dist/http-SZLSACOW.js +0 -81
  160. package/packages/codemirror-markdown/dist/http-SZLSACOW.js.map +0 -7
  161. package/packages/codemirror-markdown/dist/idl-V7UH35RP.js +0 -987
  162. package/packages/codemirror-markdown/dist/idl-V7UH35RP.js.map +0 -7
  163. package/packages/codemirror-markdown/dist/javascript-MGRPKFDN.js +0 -13
  164. package/packages/codemirror-markdown/dist/javascript-MGRPKFDN.js.map +0 -7
  165. package/packages/codemirror-markdown/dist/julia-CWCVZVPG.js +0 -409
  166. package/packages/codemirror-markdown/dist/julia-CWCVZVPG.js.map +0 -7
  167. package/packages/codemirror-markdown/dist/livescript-IGKT2FL7.js +0 -303
  168. package/packages/codemirror-markdown/dist/livescript-IGKT2FL7.js.map +0 -7
  169. package/packages/codemirror-markdown/dist/lua-GHK7GCTS.js +0 -258
  170. package/packages/codemirror-markdown/dist/lua-GHK7GCTS.js.map +0 -7
  171. package/packages/codemirror-markdown/dist/main.js +0 -58
  172. package/packages/codemirror-markdown/dist/main.js.map +0 -7
  173. package/packages/codemirror-markdown/dist/mathematica-W5LMQI3M.js +0 -112
  174. package/packages/codemirror-markdown/dist/mathematica-W5LMQI3M.js.map +0 -7
  175. package/packages/codemirror-markdown/dist/mbox-A7CXJ4HZ.js +0 -119
  176. package/packages/codemirror-markdown/dist/mbox-A7CXJ4HZ.js.map +0 -7
  177. package/packages/codemirror-markdown/dist/mirc-WYJEQUBY.js +0 -109
  178. package/packages/codemirror-markdown/dist/mirc-WYJEQUBY.js.map +0 -7
  179. package/packages/codemirror-markdown/dist/mllike-C2YS6SJI.js +0 -340
  180. package/packages/codemirror-markdown/dist/mllike-C2YS6SJI.js.map +0 -7
  181. package/packages/codemirror-markdown/dist/modelica-BMJSLZS7.js +0 -149
  182. package/packages/codemirror-markdown/dist/modelica-BMJSLZS7.js.map +0 -7
  183. package/packages/codemirror-markdown/dist/mscgen-5BORDYHW.js +0 -137
  184. package/packages/codemirror-markdown/dist/mscgen-5BORDYHW.js.map +0 -7
  185. package/packages/codemirror-markdown/dist/mumps-BYE6H7ZX.js +0 -95
  186. package/packages/codemirror-markdown/dist/mumps-BYE6H7ZX.js.map +0 -7
  187. package/packages/codemirror-markdown/dist/nginx-Y54HR7MQ.js +0 -143
  188. package/packages/codemirror-markdown/dist/nginx-Y54HR7MQ.js.map +0 -7
  189. package/packages/codemirror-markdown/dist/nsis-UZLPE2DL.js +0 -67
  190. package/packages/codemirror-markdown/dist/nsis-UZLPE2DL.js.map +0 -7
  191. package/packages/codemirror-markdown/dist/ntriples-SAI3J2VH.js +0 -155
  192. package/packages/codemirror-markdown/dist/ntriples-SAI3J2VH.js.map +0 -7
  193. package/packages/codemirror-markdown/dist/octave-TLUBYOUX.js +0 -213
  194. package/packages/codemirror-markdown/dist/octave-TLUBYOUX.js.map +0 -7
  195. package/packages/codemirror-markdown/dist/oz-F6LNIR6Q.js +0 -233
  196. package/packages/codemirror-markdown/dist/oz-F6LNIR6Q.js.map +0 -7
  197. package/packages/codemirror-markdown/dist/pascal-WINE2FE6.js +0 -107
  198. package/packages/codemirror-markdown/dist/pascal-WINE2FE6.js.map +0 -7
  199. package/packages/codemirror-markdown/dist/perl-NZG3EIBE.js +0 -1107
  200. package/packages/codemirror-markdown/dist/perl-NZG3EIBE.js.map +0 -7
  201. package/packages/codemirror-markdown/dist/pig-U7OFLRCV.js +0 -105
  202. package/packages/codemirror-markdown/dist/pig-U7OFLRCV.js.map +0 -7
  203. package/packages/codemirror-markdown/dist/powershell-ZSUS7P6D.js +0 -330
  204. package/packages/codemirror-markdown/dist/powershell-ZSUS7P6D.js.map +0 -7
  205. package/packages/codemirror-markdown/dist/properties-IJRU6UJW.js +0 -60
  206. package/packages/codemirror-markdown/dist/properties-IJRU6UJW.js.map +0 -7
  207. package/packages/codemirror-markdown/dist/protobuf-2KETQIQ5.js +0 -80
  208. package/packages/codemirror-markdown/dist/protobuf-2KETQIQ5.js.map +0 -7
  209. package/packages/codemirror-markdown/dist/pug-IQCJJAZU.js +0 -410
  210. package/packages/codemirror-markdown/dist/pug-IQCJJAZU.js.map +0 -7
  211. package/packages/codemirror-markdown/dist/puppet-YIIDDH6A.js +0 -139
  212. package/packages/codemirror-markdown/dist/puppet-YIIDDH6A.js.map +0 -7
  213. package/packages/codemirror-markdown/dist/python-A6P3XTMX.js +0 -429
  214. package/packages/codemirror-markdown/dist/python-A6P3XTMX.js.map +0 -7
  215. package/packages/codemirror-markdown/dist/q-2KXN5RX7.js +0 -135
  216. package/packages/codemirror-markdown/dist/q-2KXN5RX7.js.map +0 -7
  217. package/packages/codemirror-markdown/dist/r-BB4MIIBH.js +0 -174
  218. package/packages/codemirror-markdown/dist/r-BB4MIIBH.js.map +0 -7
  219. package/packages/codemirror-markdown/dist/rpm-LMR25AQ3.js +0 -111
  220. package/packages/codemirror-markdown/dist/rpm-LMR25AQ3.js.map +0 -7
  221. package/packages/codemirror-markdown/dist/ruby-TSD6FT73.js +0 -333
  222. package/packages/codemirror-markdown/dist/ruby-TSD6FT73.js.map +0 -7
  223. package/packages/codemirror-markdown/dist/sas-6X4WWIGV.js +0 -209
  224. package/packages/codemirror-markdown/dist/sas-6X4WWIGV.js.map +0 -7
  225. package/packages/codemirror-markdown/dist/scheme-E3I46HBL.js +0 -230
  226. package/packages/codemirror-markdown/dist/scheme-E3I46HBL.js.map +0 -7
  227. package/packages/codemirror-markdown/dist/shell-GX3PRI4I.js +0 -224
  228. package/packages/codemirror-markdown/dist/shell-GX3PRI4I.js.map +0 -7
  229. package/packages/codemirror-markdown/dist/sieve-V65ZPL4F.js +0 -137
  230. package/packages/codemirror-markdown/dist/sieve-V65ZPL4F.js.map +0 -7
  231. package/packages/codemirror-markdown/dist/smalltalk-OVKP2CVW.js +0 -123
  232. package/packages/codemirror-markdown/dist/smalltalk-OVKP2CVW.js.map +0 -7
  233. package/packages/codemirror-markdown/dist/solr-C4DLQJCF.js +0 -71
  234. package/packages/codemirror-markdown/dist/solr-C4DLQJCF.js.map +0 -7
  235. package/packages/codemirror-markdown/dist/sparql-REKUW7B3.js +0 -251
  236. package/packages/codemirror-markdown/dist/sparql-REKUW7B3.js.map +0 -7
  237. package/packages/codemirror-markdown/dist/spreadsheet-S7NN2YTQ.js +0 -89
  238. package/packages/codemirror-markdown/dist/spreadsheet-S7NN2YTQ.js.map +0 -7
  239. package/packages/codemirror-markdown/dist/sql-ML2Q43YF.js +0 -358
  240. package/packages/codemirror-markdown/dist/sql-ML2Q43YF.js.map +0 -7
  241. package/packages/codemirror-markdown/dist/stex-TCOGKBT4.js +0 -233
  242. package/packages/codemirror-markdown/dist/stex-TCOGKBT4.js.map +0 -7
  243. package/packages/codemirror-markdown/dist/stylus-3ONNYZOM.js +0 -591
  244. package/packages/codemirror-markdown/dist/stylus-3ONNYZOM.js.map +0 -7
  245. package/packages/codemirror-markdown/dist/swift-CNWGZ22Y.js +0 -293
  246. package/packages/codemirror-markdown/dist/swift-CNWGZ22Y.js.map +0 -7
  247. package/packages/codemirror-markdown/dist/tcl-77IMAZYE.js +0 -116
  248. package/packages/codemirror-markdown/dist/tcl-77IMAZYE.js.map +0 -7
  249. package/packages/codemirror-markdown/dist/textile-6IWIIKFM.js +0 -416
  250. package/packages/codemirror-markdown/dist/textile-6IWIIKFM.js.map +0 -7
  251. package/packages/codemirror-markdown/dist/tiddlywiki-IJSZMUSA.js +0 -231
  252. package/packages/codemirror-markdown/dist/tiddlywiki-IJSZMUSA.js.map +0 -7
  253. package/packages/codemirror-markdown/dist/tiki-HG37JJIT.js +0 -276
  254. package/packages/codemirror-markdown/dist/tiki-HG37JJIT.js.map +0 -7
  255. package/packages/codemirror-markdown/dist/toml-NINU2IMM.js +0 -78
  256. package/packages/codemirror-markdown/dist/toml-NINU2IMM.js.map +0 -7
  257. package/packages/codemirror-markdown/dist/troff-AOQJ4Q4C.js +0 -63
  258. package/packages/codemirror-markdown/dist/troff-AOQJ4Q4C.js.map +0 -7
  259. package/packages/codemirror-markdown/dist/ttcn-TLOZ3FX3.js +0 -211
  260. package/packages/codemirror-markdown/dist/ttcn-TLOZ3FX3.js.map +0 -7
  261. package/packages/codemirror-markdown/dist/ttcn-cfg-3B6QY7QE.js +0 -141
  262. package/packages/codemirror-markdown/dist/ttcn-cfg-3B6QY7QE.js.map +0 -7
  263. package/packages/codemirror-markdown/dist/turtle-3N5KCGXP.js +0 -132
  264. package/packages/codemirror-markdown/dist/turtle-3N5KCGXP.js.map +0 -7
  265. package/packages/codemirror-markdown/dist/vb-I7M5DRLP.js +0 -204
  266. package/packages/codemirror-markdown/dist/vb-I7M5DRLP.js.map +0 -7
  267. package/packages/codemirror-markdown/dist/vbscript-U2ARSJLD.js +0 -482
  268. package/packages/codemirror-markdown/dist/vbscript-U2ARSJLD.js.map +0 -7
  269. package/packages/codemirror-markdown/dist/velocity-R3AYP5XJ.js +0 -151
  270. package/packages/codemirror-markdown/dist/velocity-R3AYP5XJ.js.map +0 -7
  271. package/packages/codemirror-markdown/dist/verilog-7VEWVDW6.js +0 -456
  272. package/packages/codemirror-markdown/dist/verilog-7VEWVDW6.js.map +0 -7
  273. package/packages/codemirror-markdown/dist/vhdl-JZUPPGBA.js +0 -162
  274. package/packages/codemirror-markdown/dist/vhdl-JZUPPGBA.js.map +0 -7
  275. package/packages/codemirror-markdown/dist/webidl-SLQFEELK.js +0 -206
  276. package/packages/codemirror-markdown/dist/webidl-SLQFEELK.js.map +0 -7
  277. package/packages/codemirror-markdown/dist/xquery-VXP5KJ6N.js +0 -532
  278. package/packages/codemirror-markdown/dist/xquery-VXP5KJ6N.js.map +0 -7
  279. package/packages/codemirror-markdown/dist/yacas-JRBC4BEV.js +0 -132
  280. package/packages/codemirror-markdown/dist/yacas-JRBC4BEV.js.map +0 -7
  281. package/packages/codemirror-markdown/dist/z80-AJF6WLUV.js +0 -95
  282. package/packages/codemirror-markdown/dist/z80-AJF6WLUV.js.map +0 -7
  283. package/packages/codemirror-markdown/example.js +0 -46
  284. package/packages/codemirror-markdown/package.json +0 -62
  285. package/packages/commands/dist/main.js +0 -504
  286. package/packages/commands/dist/main.js.map +0 -7
  287. package/packages/commands/package.json +0 -28
  288. package/packages/contact/dist/ContactAvatar-FP32ZZH2.js +0 -161
  289. package/packages/contact/dist/ContactAvatar-FP32ZZH2.js.map +0 -7
  290. package/packages/contact/dist/ContactViewer-ZHEE6INW.js +0 -60
  291. package/packages/contact/dist/ContactViewer-ZHEE6INW.js.map +0 -7
  292. package/packages/contact/dist/InlineContactAvatar-VZDPEZV2.js +0 -46
  293. package/packages/contact/dist/InlineContactAvatar-VZDPEZV2.js.map +0 -7
  294. package/packages/contact/dist/chunk-MOZI4Y4O.js +0 -54
  295. package/packages/contact/dist/chunk-MOZI4Y4O.js.map +0 -7
  296. package/packages/contact/dist/datatype-ABVDVPWS.js +0 -27
  297. package/packages/contact/dist/datatype-ABVDVPWS.js.map +0 -7
  298. package/packages/contact/dist/tool.css +0 -81
  299. package/packages/contact/dist/tool.css.map +0 -7
  300. package/packages/contact/dist/tool.js +0 -70
  301. package/packages/contact/dist/tool.js.map +0 -7
  302. package/packages/contact/package.json +0 -46
  303. package/packages/folder/dist/datatype-HWGUFBTQ.js +0 -27
  304. package/packages/folder/dist/datatype-HWGUFBTQ.js.map +0 -7
  305. package/packages/folder/dist/index.js +0 -27
  306. package/packages/folder/dist/index.js.map +0 -7
  307. package/packages/folder/dist/tool-62JZAZRP.js +0 -366
  308. package/packages/folder/dist/tool-62JZAZRP.js.map +0 -7
  309. package/packages/folder/package.json +0 -32
  310. package/packages/sideboard/dist/account-bar-OJQC3J6W.js +0 -2
  311. package/packages/sideboard/dist/account-bar-OJQC3J6W.js.map +0 -7
  312. package/packages/sideboard/dist/chunk-32FICX7K.js +0 -26
  313. package/packages/sideboard/dist/chunk-32FICX7K.js.map +0 -7
  314. package/packages/sideboard/dist/chunk-3OYP6TVA.js +0 -2
  315. package/packages/sideboard/dist/chunk-3OYP6TVA.js.map +0 -7
  316. package/packages/sideboard/dist/chunk-FW4363Y4.js +0 -2
  317. package/packages/sideboard/dist/chunk-FW4363Y4.js.map +0 -7
  318. package/packages/sideboard/dist/chunk-QKYKEZU4.js +0 -2
  319. package/packages/sideboard/dist/chunk-QKYKEZU4.js.map +0 -7
  320. package/packages/sideboard/dist/document-list-panel-42LSXXCO.js +0 -2
  321. package/packages/sideboard/dist/document-list-panel-42LSXXCO.js.map +0 -7
  322. package/packages/sideboard/dist/index.css +0 -2
  323. package/packages/sideboard/dist/index.css.map +0 -7
  324. package/packages/sideboard/dist/index.js +0 -2
  325. package/packages/sideboard/dist/index.js.map +0 -7
  326. package/packages/sideboard/dist/sideboard/sideboard.js +0 -2
  327. package/packages/sideboard/dist/sideboard/sideboard.js.map +0 -7
  328. package/packages/sideboard/package.json +0 -56
  329. package/packages/theming/dist/active-theme-K27UXDBG.js +0 -26
  330. package/packages/theming/dist/active-theme-K27UXDBG.js.map +0 -7
  331. package/packages/theming/dist/chunk-K4OOO2TK.js +0 -281
  332. package/packages/theming/dist/chunk-K4OOO2TK.js.map +0 -7
  333. package/packages/theming/dist/chunk-RATW7VZI.js +0 -11
  334. package/packages/theming/dist/chunk-RATW7VZI.js.map +0 -7
  335. package/packages/theming/dist/chunk-U7SC4JPE.js +0 -86
  336. package/packages/theming/dist/chunk-U7SC4JPE.js.map +0 -7
  337. package/packages/theming/dist/codemirror-theme.js +0 -2415
  338. package/packages/theming/dist/codemirror-theme.js.map +0 -7
  339. package/packages/theming/dist/datatype-UUJVIZM7.js +0 -16
  340. package/packages/theming/dist/datatype-UUJVIZM7.js.map +0 -7
  341. package/packages/theming/dist/gloom-JYQPEOHI.css +0 -102
  342. package/packages/theming/dist/lychee-BMLMUNP6.css +0 -114
  343. package/packages/theming/dist/main.js +0 -112
  344. package/packages/theming/dist/main.js.map +0 -7
  345. package/packages/theming/dist/theme-RC7MV6WP.css +0 -691
  346. package/packages/theming/dist/theme-editor-datatype-CIXRKEFF.js +0 -11
  347. package/packages/theming/dist/theme-editor-datatype-CIXRKEFF.js.map +0 -7
  348. package/packages/theming/dist/theme-editor.js +0 -576
  349. package/packages/theming/dist/theme-editor.js.map +0 -7
  350. package/packages/theming/dist/theme-titlebar-P2CODQGF.js +0 -21
  351. package/packages/theming/dist/theme-titlebar-P2CODQGF.js.map +0 -7
  352. package/packages/theming/dist/theme-tray-5L2KGCGD.js +0 -351
  353. package/packages/theming/dist/theme-tray-5L2KGCGD.js.map +0 -7
  354. package/packages/theming/dist/tool.js +0 -405
  355. package/packages/theming/dist/tool.js.map +0 -7
  356. package/packages/theming/package.json +0 -48
  357. package/packages/threepane/dist/IsolatedDocumentArea-LFSDWMIY.js +0 -2
  358. package/packages/threepane/dist/IsolatedDocumentArea-LFSDWMIY.js.map +0 -7
  359. package/packages/threepane/dist/PatchworkFrame-JTNZ6365.js +0 -2
  360. package/packages/threepane/dist/PatchworkFrame-JTNZ6365.js.map +0 -7
  361. package/packages/threepane/dist/chunk-7YXO2YGV.js +0 -2
  362. package/packages/threepane/dist/chunk-7YXO2YGV.js.map +0 -7
  363. package/packages/threepane/dist/chunk-FOMAU6H2.js +0 -972
  364. package/packages/threepane/dist/chunk-FOMAU6H2.js.map +0 -7
  365. package/packages/threepane/dist/chunk-FW4363Y4.js +0 -2
  366. package/packages/threepane/dist/chunk-FW4363Y4.js.map +0 -7
  367. package/packages/threepane/dist/datatypes-FKBTWAO7.js +0 -2
  368. package/packages/threepane/dist/datatypes-FKBTWAO7.js.map +0 -7
  369. package/packages/threepane/dist/index.js +0 -2
  370. package/packages/threepane/dist/index.js.map +0 -7
  371. package/packages/threepane/package.json +0 -42
  372. package/packages/tldraw4/dist/chunk-IKZWERSR.js +0 -38
  373. package/packages/tldraw4/dist/chunk-IKZWERSR.js.map +0 -7
  374. package/packages/tldraw4/dist/chunk-VF5CY24G.js +0 -140894
  375. package/packages/tldraw4/dist/chunk-VF5CY24G.js.map +0 -7
  376. package/packages/tldraw4/dist/datatype.js +0 -46
  377. package/packages/tldraw4/dist/datatype.js.map +0 -7
  378. package/packages/tldraw4/dist/main.css +0 -3202
  379. package/packages/tldraw4/dist/main.css.map +0 -7
  380. package/packages/tldraw4/dist/main.js +0 -42
  381. package/packages/tldraw4/dist/main.js.map +0 -7
  382. package/packages/tldraw4/dist/tool.js +0 -8767
  383. package/packages/tldraw4/dist/tool.js.map +0 -7
  384. package/packages/tldraw4/package.json +0 -62
@@ -1,1424 +0,0 @@
1
- import {
2
- indentUnit,
3
- syntaxTree
4
- } from "./chunk-MAW6NPUW.js";
5
-
6
- // ../node_modules/.pnpm/@codemirror+autocomplete@6.20.3/node_modules/@codemirror/autocomplete/dist/index.js
7
- import { Annotation, StateEffect, EditorSelection, codePointAt, codePointSize, fromCodePoint, Facet, combineConfig, StateField, Prec, Text, Transaction, MapMode, RangeValue, RangeSet, CharCategory } from "@codemirror/state";
8
- import { Direction, logException, showTooltip, EditorView, ViewPlugin, getTooltip, Decoration, WidgetType, keymap } from "@codemirror/view";
9
- var CompletionContext = class {
10
- /**
11
- Create a new completion context. (Mostly useful for testing
12
- completion sources—in the editor, the extension will create
13
- these for you.)
14
- */
15
- constructor(state, pos, explicit, view) {
16
- this.state = state;
17
- this.pos = pos;
18
- this.explicit = explicit;
19
- this.view = view;
20
- this.abortListeners = [];
21
- this.abortOnDocChange = false;
22
- }
23
- /**
24
- Get the extent, content, and (if there is a token) type of the
25
- token before `this.pos`.
26
- */
27
- tokenBefore(types) {
28
- let token = syntaxTree(this.state).resolveInner(this.pos, -1);
29
- while (token && types.indexOf(token.name) < 0)
30
- token = token.parent;
31
- return token ? {
32
- from: token.from,
33
- to: this.pos,
34
- text: this.state.sliceDoc(token.from, this.pos),
35
- type: token.type
36
- } : null;
37
- }
38
- /**
39
- Get the match of the given expression directly before the
40
- cursor.
41
- */
42
- matchBefore(expr) {
43
- let line = this.state.doc.lineAt(this.pos);
44
- let start = Math.max(line.from, this.pos - 250);
45
- let str = line.text.slice(start - line.from, this.pos - line.from);
46
- let found = str.search(ensureAnchor(expr, false));
47
- return found < 0 ? null : { from: start + found, to: this.pos, text: str.slice(found) };
48
- }
49
- /**
50
- Yields true when the query has been aborted. Can be useful in
51
- asynchronous queries to avoid doing work that will be ignored.
52
- */
53
- get aborted() {
54
- return this.abortListeners == null;
55
- }
56
- /**
57
- Allows you to register abort handlers, which will be called when
58
- the query is
59
- [aborted](https://codemirror.net/6/docs/ref/#autocomplete.CompletionContext.aborted).
60
-
61
- By default, running queries will not be aborted for regular
62
- typing or backspacing, on the assumption that they are likely to
63
- return a result with a
64
- [`validFor`](https://codemirror.net/6/docs/ref/#autocomplete.CompletionResult.validFor) field that
65
- allows the result to be used after all. Passing `onDocChange:
66
- true` will cause this query to be aborted for any document
67
- change.
68
- */
69
- addEventListener(type, listener, options) {
70
- if (type == "abort" && this.abortListeners) {
71
- this.abortListeners.push(listener);
72
- if (options && options.onDocChange)
73
- this.abortOnDocChange = true;
74
- }
75
- }
76
- };
77
- function toSet(chars) {
78
- let flat = Object.keys(chars).join("");
79
- let words = /\w/.test(flat);
80
- if (words)
81
- flat = flat.replace(/\w/g, "");
82
- return `[${words ? "\\w" : ""}${flat.replace(/[^\w\s]/g, "\\$&")}]`;
83
- }
84
- function prefixMatch(options) {
85
- let first = /* @__PURE__ */ Object.create(null), rest = /* @__PURE__ */ Object.create(null);
86
- for (let { label } of options) {
87
- first[label[0]] = true;
88
- for (let i = 1; i < label.length; i++)
89
- rest[label[i]] = true;
90
- }
91
- let source = toSet(first) + toSet(rest) + "*$";
92
- return [new RegExp("^" + source), new RegExp(source)];
93
- }
94
- function completeFromList(list) {
95
- let options = list.map((o) => typeof o == "string" ? { label: o } : o);
96
- let [validFor, match] = options.every((o) => /^\w+$/.test(o.label)) ? [/\w*$/, /\w+$/] : prefixMatch(options);
97
- return (context) => {
98
- let token = context.matchBefore(match);
99
- return token || context.explicit ? { from: token ? token.from : context.pos, options, validFor } : null;
100
- };
101
- }
102
- function ifNotIn(nodes, source) {
103
- return (context) => {
104
- for (let pos = syntaxTree(context.state).resolveInner(context.pos, -1); pos; pos = pos.parent) {
105
- if (nodes.indexOf(pos.name) > -1)
106
- return null;
107
- if (pos.type.isTop)
108
- break;
109
- }
110
- return source(context);
111
- };
112
- }
113
- var Option = class {
114
- constructor(completion, source, match, score2) {
115
- this.completion = completion;
116
- this.source = source;
117
- this.match = match;
118
- this.score = score2;
119
- }
120
- };
121
- function cur(state) {
122
- return state.selection.main.from;
123
- }
124
- function ensureAnchor(expr, start) {
125
- var _a;
126
- let { source } = expr;
127
- let addStart = start && source[0] != "^", addEnd = source[source.length - 1] != "$";
128
- if (!addStart && !addEnd)
129
- return expr;
130
- return new RegExp(`${addStart ? "^" : ""}(?:${source})${addEnd ? "$" : ""}`, (_a = expr.flags) !== null && _a !== void 0 ? _a : expr.ignoreCase ? "i" : "");
131
- }
132
- var pickedCompletion = /* @__PURE__ */ Annotation.define();
133
- function insertCompletionText(state, text, from, to) {
134
- let { main } = state.selection, fromOff = from - main.from, toOff = to - main.from;
135
- return {
136
- ...state.changeByRange((range) => {
137
- if (range != main && from != to && state.sliceDoc(range.from + fromOff, range.from + toOff) != state.sliceDoc(from, to))
138
- return { range };
139
- let lines = state.toText(text);
140
- return {
141
- changes: { from: range.from + fromOff, to: to == main.from ? range.to : range.from + toOff, insert: lines },
142
- range: EditorSelection.cursor(range.from + fromOff + lines.length)
143
- };
144
- }),
145
- scrollIntoView: true,
146
- userEvent: "input.complete"
147
- };
148
- }
149
- var SourceCache = /* @__PURE__ */ new WeakMap();
150
- function asSource(source) {
151
- if (!Array.isArray(source))
152
- return source;
153
- let known = SourceCache.get(source);
154
- if (!known)
155
- SourceCache.set(source, known = completeFromList(source));
156
- return known;
157
- }
158
- var startCompletionEffect = /* @__PURE__ */ StateEffect.define();
159
- var closeCompletionEffect = /* @__PURE__ */ StateEffect.define();
160
- var FuzzyMatcher = class {
161
- constructor(pattern) {
162
- this.pattern = pattern;
163
- this.chars = [];
164
- this.folded = [];
165
- this.any = [];
166
- this.precise = [];
167
- this.byWord = [];
168
- this.score = 0;
169
- this.matched = [];
170
- for (let p = 0; p < pattern.length; ) {
171
- let char = codePointAt(pattern, p), size = codePointSize(char);
172
- this.chars.push(char);
173
- let part = pattern.slice(p, p + size), upper = part.toUpperCase();
174
- this.folded.push(codePointAt(upper == part ? part.toLowerCase() : upper, 0));
175
- p += size;
176
- }
177
- this.astral = pattern.length != this.chars.length;
178
- }
179
- ret(score2, matched) {
180
- this.score = score2;
181
- this.matched = matched;
182
- return this;
183
- }
184
- // Matches a given word (completion) against the pattern (input).
185
- // Will return a boolean indicating whether there was a match and,
186
- // on success, set `this.score` to the score, `this.matched` to an
187
- // array of `from, to` pairs indicating the matched parts of `word`.
188
- //
189
- // The score is a number that is more negative the worse the match
190
- // is. See `Penalty` above.
191
- match(word) {
192
- if (this.pattern.length == 0)
193
- return this.ret(-100, []);
194
- if (word.length < this.pattern.length)
195
- return null;
196
- let { chars, folded, any, precise, byWord } = this;
197
- if (chars.length == 1) {
198
- let first = codePointAt(word, 0), firstSize = codePointSize(first);
199
- let score2 = firstSize == word.length ? 0 : -100;
200
- if (first == chars[0]) ;
201
- else if (first == folded[0])
202
- score2 += -200;
203
- else
204
- return null;
205
- return this.ret(score2, [0, firstSize]);
206
- }
207
- let direct = word.indexOf(this.pattern);
208
- if (direct == 0)
209
- return this.ret(word.length == this.pattern.length ? 0 : -100, [0, this.pattern.length]);
210
- let len = chars.length, anyTo = 0;
211
- if (direct < 0) {
212
- for (let i = 0, e = Math.min(word.length, 200); i < e && anyTo < len; ) {
213
- let next = codePointAt(word, i);
214
- if (next == chars[anyTo] || next == folded[anyTo])
215
- any[anyTo++] = i;
216
- i += codePointSize(next);
217
- }
218
- if (anyTo < len)
219
- return null;
220
- }
221
- let preciseTo = 0;
222
- let byWordTo = 0, byWordFolded = false;
223
- let adjacentTo = 0, adjacentStart = -1, adjacentEnd = -1;
224
- let hasLower = /[a-z]/.test(word), wordAdjacent = true;
225
- for (let i = 0, e = Math.min(word.length, 200), prevType = 0; i < e && byWordTo < len; ) {
226
- let next = codePointAt(word, i);
227
- if (direct < 0) {
228
- if (preciseTo < len && next == chars[preciseTo])
229
- precise[preciseTo++] = i;
230
- if (adjacentTo < len) {
231
- if (next == chars[adjacentTo] || next == folded[adjacentTo]) {
232
- if (adjacentTo == 0)
233
- adjacentStart = i;
234
- adjacentEnd = i + 1;
235
- adjacentTo++;
236
- } else {
237
- adjacentTo = 0;
238
- }
239
- }
240
- }
241
- let ch, type = next < 255 ? next >= 48 && next <= 57 || next >= 97 && next <= 122 ? 2 : next >= 65 && next <= 90 ? 1 : 0 : (ch = fromCodePoint(next)) != ch.toLowerCase() ? 1 : ch != ch.toUpperCase() ? 2 : 0;
242
- if (!i || type == 1 && hasLower || prevType == 0 && type != 0) {
243
- if (chars[byWordTo] == next || folded[byWordTo] == next && (byWordFolded = true))
244
- byWord[byWordTo++] = i;
245
- else if (byWord.length)
246
- wordAdjacent = false;
247
- }
248
- prevType = type;
249
- i += codePointSize(next);
250
- }
251
- if (byWordTo == len && byWord[0] == 0 && wordAdjacent)
252
- return this.result(-100 + (byWordFolded ? -200 : 0), byWord, word);
253
- if (adjacentTo == len && adjacentStart == 0)
254
- return this.ret(-200 - word.length + (adjacentEnd == word.length ? 0 : -100), [0, adjacentEnd]);
255
- if (direct > -1)
256
- return this.ret(-700 - word.length, [direct, direct + this.pattern.length]);
257
- if (adjacentTo == len)
258
- return this.ret(-200 + -700 - word.length, [adjacentStart, adjacentEnd]);
259
- if (byWordTo == len)
260
- return this.result(-100 + (byWordFolded ? -200 : 0) + -700 + (wordAdjacent ? 0 : -1100), byWord, word);
261
- return chars.length == 2 ? null : this.result((any[0] ? -700 : 0) + -200 + -1100, any, word);
262
- }
263
- result(score2, positions, word) {
264
- let result = [], i = 0;
265
- for (let pos of positions) {
266
- let to = pos + (this.astral ? codePointSize(codePointAt(word, pos)) : 1);
267
- if (i && result[i - 1] == pos)
268
- result[i - 1] = to;
269
- else {
270
- result[i++] = pos;
271
- result[i++] = to;
272
- }
273
- }
274
- return this.ret(score2 - word.length, result);
275
- }
276
- };
277
- var StrictMatcher = class {
278
- constructor(pattern) {
279
- this.pattern = pattern;
280
- this.matched = [];
281
- this.score = 0;
282
- this.folded = pattern.toLowerCase();
283
- }
284
- match(word) {
285
- if (word.length < this.pattern.length)
286
- return null;
287
- let start = word.slice(0, this.pattern.length);
288
- let match = start == this.pattern ? 0 : start.toLowerCase() == this.folded ? -200 : null;
289
- if (match == null)
290
- return null;
291
- this.matched = [0, start.length];
292
- this.score = match + (word.length == this.pattern.length ? 0 : -100);
293
- return this;
294
- }
295
- };
296
- var completionConfig = /* @__PURE__ */ Facet.define({
297
- combine(configs) {
298
- return combineConfig(configs, {
299
- activateOnTyping: true,
300
- activateOnCompletion: () => false,
301
- activateOnTypingDelay: 100,
302
- selectOnOpen: true,
303
- override: null,
304
- closeOnBlur: true,
305
- maxRenderedOptions: 100,
306
- defaultKeymap: true,
307
- tooltipClass: () => "",
308
- optionClass: () => "",
309
- aboveCursor: false,
310
- icons: true,
311
- addToOptions: [],
312
- positionInfo: defaultPositionInfo,
313
- filterStrict: false,
314
- compareCompletions: (a, b) => (a.sortText || a.label).localeCompare(b.sortText || b.label),
315
- interactionDelay: 75,
316
- updateSyncTime: 100
317
- }, {
318
- defaultKeymap: (a, b) => a && b,
319
- closeOnBlur: (a, b) => a && b,
320
- icons: (a, b) => a && b,
321
- tooltipClass: (a, b) => (c) => joinClass(a(c), b(c)),
322
- optionClass: (a, b) => (c) => joinClass(a(c), b(c)),
323
- addToOptions: (a, b) => a.concat(b),
324
- filterStrict: (a, b) => a || b
325
- });
326
- }
327
- });
328
- function joinClass(a, b) {
329
- return a ? b ? a + " " + b : a : b;
330
- }
331
- function defaultPositionInfo(view, list, option, info, space, tooltip) {
332
- let rtl = view.textDirection == Direction.RTL, left = rtl, narrow = false;
333
- let side = "top", offset, maxWidth;
334
- let spaceLeft = list.left - space.left, spaceRight = space.right - list.right;
335
- let infoWidth = info.right - info.left, infoHeight = info.bottom - info.top;
336
- if (left && spaceLeft < Math.min(infoWidth, spaceRight))
337
- left = false;
338
- else if (!left && spaceRight < Math.min(infoWidth, spaceLeft))
339
- left = true;
340
- if (infoWidth <= (left ? spaceLeft : spaceRight)) {
341
- offset = Math.max(space.top, Math.min(option.top, space.bottom - infoHeight)) - list.top;
342
- maxWidth = Math.min(400, left ? spaceLeft : spaceRight);
343
- } else {
344
- narrow = true;
345
- maxWidth = Math.min(
346
- 400,
347
- (rtl ? list.right : space.right - list.left) - 30
348
- /* Info.Margin */
349
- );
350
- let spaceBelow = space.bottom - list.bottom;
351
- if (spaceBelow >= infoHeight || spaceBelow > list.top) {
352
- offset = option.bottom - list.top;
353
- } else {
354
- side = "bottom";
355
- offset = list.bottom - option.top;
356
- }
357
- }
358
- let scaleY = (list.bottom - list.top) / tooltip.offsetHeight;
359
- let scaleX = (list.right - list.left) / tooltip.offsetWidth;
360
- return {
361
- style: `${side}: ${offset / scaleY}px; max-width: ${maxWidth / scaleX}px`,
362
- class: "cm-completionInfo-" + (narrow ? rtl ? "left-narrow" : "right-narrow" : left ? "left" : "right")
363
- };
364
- }
365
- var setSelectedEffect = /* @__PURE__ */ StateEffect.define();
366
- function optionContent(config) {
367
- let content = config.addToOptions.slice();
368
- if (config.icons)
369
- content.push({
370
- render(completion) {
371
- let icon = document.createElement("div");
372
- icon.classList.add("cm-completionIcon");
373
- if (completion.type)
374
- icon.classList.add(...completion.type.split(/\s+/g).map((cls) => "cm-completionIcon-" + cls));
375
- icon.setAttribute("aria-hidden", "true");
376
- return icon;
377
- },
378
- position: 20
379
- });
380
- content.push({
381
- render(completion, _s, _v, match) {
382
- let labelElt = document.createElement("span");
383
- labelElt.className = "cm-completionLabel";
384
- let label = completion.displayLabel || completion.label, off = 0;
385
- for (let j = 0; j < match.length; ) {
386
- let from = match[j++], to = match[j++];
387
- if (from > off)
388
- labelElt.appendChild(document.createTextNode(label.slice(off, from)));
389
- let span = labelElt.appendChild(document.createElement("span"));
390
- span.appendChild(document.createTextNode(label.slice(from, to)));
391
- span.className = "cm-completionMatchedText";
392
- off = to;
393
- }
394
- if (off < label.length)
395
- labelElt.appendChild(document.createTextNode(label.slice(off)));
396
- return labelElt;
397
- },
398
- position: 50
399
- }, {
400
- render(completion) {
401
- if (!completion.detail)
402
- return null;
403
- let detailElt = document.createElement("span");
404
- detailElt.className = "cm-completionDetail";
405
- detailElt.textContent = completion.detail;
406
- return detailElt;
407
- },
408
- position: 80
409
- });
410
- return content.sort((a, b) => a.position - b.position).map((a) => a.render);
411
- }
412
- function rangeAroundSelected(total, selected, max) {
413
- if (total <= max)
414
- return { from: 0, to: total };
415
- if (selected < 0)
416
- selected = 0;
417
- if (selected <= total >> 1) {
418
- let off2 = Math.floor(selected / max);
419
- return { from: off2 * max, to: (off2 + 1) * max };
420
- }
421
- let off = Math.ceil((total - selected) / max);
422
- return { from: total - off * max, to: total - (off - 1) * max };
423
- }
424
- var CompletionTooltip = class {
425
- constructor(view, stateField, applyCompletion2) {
426
- this.view = view;
427
- this.stateField = stateField;
428
- this.applyCompletion = applyCompletion2;
429
- this.info = null;
430
- this.infoDestroy = null;
431
- this.placeInfoReq = {
432
- read: () => this.measureInfo(),
433
- write: (pos) => this.placeInfo(pos),
434
- key: this
435
- };
436
- this.space = null;
437
- this.currentClass = "";
438
- let cState = view.state.field(stateField);
439
- let { options, selected } = cState.open;
440
- let config = view.state.facet(completionConfig);
441
- this.optionContent = optionContent(config);
442
- this.optionClass = config.optionClass;
443
- this.tooltipClass = config.tooltipClass;
444
- this.range = rangeAroundSelected(options.length, selected, config.maxRenderedOptions);
445
- this.dom = document.createElement("div");
446
- this.dom.className = "cm-tooltip-autocomplete";
447
- this.updateTooltipClass(view.state);
448
- this.dom.addEventListener("mousedown", (e) => {
449
- let { options: options2 } = view.state.field(stateField).open;
450
- for (let dom = e.target, match; dom && dom != this.dom; dom = dom.parentNode) {
451
- if (dom.nodeName == "LI" && (match = /-(\d+)$/.exec(dom.id)) && +match[1] < options2.length) {
452
- this.applyCompletion(view, options2[+match[1]]);
453
- e.preventDefault();
454
- return;
455
- }
456
- }
457
- if (e.target == this.list) {
458
- let move = this.list.classList.contains("cm-completionListIncompleteTop") && e.clientY < this.list.firstChild.getBoundingClientRect().top ? this.range.from - 1 : this.list.classList.contains("cm-completionListIncompleteBottom") && e.clientY > this.list.lastChild.getBoundingClientRect().bottom ? this.range.to : null;
459
- if (move != null) {
460
- view.dispatch({ effects: setSelectedEffect.of(move) });
461
- e.preventDefault();
462
- }
463
- }
464
- });
465
- this.dom.addEventListener("focusout", (e) => {
466
- let state = view.state.field(this.stateField, false);
467
- if (state && state.tooltip && view.state.facet(completionConfig).closeOnBlur && e.relatedTarget != view.contentDOM)
468
- view.dispatch({ effects: closeCompletionEffect.of(null) });
469
- });
470
- this.showOptions(options, cState.id);
471
- }
472
- mount() {
473
- this.updateSel();
474
- }
475
- showOptions(options, id) {
476
- if (this.list)
477
- this.list.remove();
478
- this.list = this.dom.appendChild(this.createListBox(options, id, this.range));
479
- this.list.addEventListener("scroll", () => {
480
- if (this.info)
481
- this.view.requestMeasure(this.placeInfoReq);
482
- });
483
- }
484
- update(update) {
485
- var _a;
486
- let cState = update.state.field(this.stateField);
487
- let prevState = update.startState.field(this.stateField);
488
- this.updateTooltipClass(update.state);
489
- if (cState != prevState) {
490
- let { options, selected, disabled } = cState.open;
491
- if (!prevState.open || prevState.open.options != options) {
492
- this.range = rangeAroundSelected(options.length, selected, update.state.facet(completionConfig).maxRenderedOptions);
493
- this.showOptions(options, cState.id);
494
- }
495
- this.updateSel();
496
- if (disabled != ((_a = prevState.open) === null || _a === void 0 ? void 0 : _a.disabled))
497
- this.dom.classList.toggle("cm-tooltip-autocomplete-disabled", !!disabled);
498
- }
499
- }
500
- updateTooltipClass(state) {
501
- let cls = this.tooltipClass(state);
502
- if (cls != this.currentClass) {
503
- for (let c of this.currentClass.split(" "))
504
- if (c)
505
- this.dom.classList.remove(c);
506
- for (let c of cls.split(" "))
507
- if (c)
508
- this.dom.classList.add(c);
509
- this.currentClass = cls;
510
- }
511
- }
512
- positioned(space) {
513
- this.space = space;
514
- if (this.info)
515
- this.view.requestMeasure(this.placeInfoReq);
516
- }
517
- updateSel() {
518
- let cState = this.view.state.field(this.stateField), open = cState.open;
519
- if (open.selected > -1 && open.selected < this.range.from || open.selected >= this.range.to) {
520
- this.range = rangeAroundSelected(open.options.length, open.selected, this.view.state.facet(completionConfig).maxRenderedOptions);
521
- this.showOptions(open.options, cState.id);
522
- }
523
- let newSel = this.updateSelectedOption(open.selected);
524
- if (newSel) {
525
- this.destroyInfo();
526
- let { completion } = open.options[open.selected];
527
- let { info } = completion;
528
- if (!info)
529
- return;
530
- let infoResult = typeof info === "string" ? document.createTextNode(info) : info(completion);
531
- if (!infoResult)
532
- return;
533
- if ("then" in infoResult) {
534
- infoResult.then((obj) => {
535
- if (obj && this.view.state.field(this.stateField, false) == cState)
536
- this.addInfoPane(obj, completion);
537
- }).catch((e) => logException(this.view.state, e, "completion info"));
538
- } else {
539
- this.addInfoPane(infoResult, completion);
540
- newSel.setAttribute("aria-describedby", this.info.id);
541
- }
542
- }
543
- }
544
- addInfoPane(content, completion) {
545
- this.destroyInfo();
546
- let wrap = this.info = document.createElement("div");
547
- wrap.className = "cm-tooltip cm-completionInfo";
548
- wrap.id = "cm-completionInfo-" + Math.floor(Math.random() * 65535).toString(16);
549
- if (content.nodeType != null) {
550
- wrap.appendChild(content);
551
- this.infoDestroy = null;
552
- } else {
553
- let { dom, destroy } = content;
554
- wrap.appendChild(dom);
555
- this.infoDestroy = destroy || null;
556
- }
557
- this.dom.appendChild(wrap);
558
- this.view.requestMeasure(this.placeInfoReq);
559
- }
560
- updateSelectedOption(selected) {
561
- let set = null;
562
- for (let opt = this.list.firstChild, i = this.range.from; opt; opt = opt.nextSibling, i++) {
563
- if (opt.nodeName != "LI" || !opt.id) {
564
- i--;
565
- } else if (i == selected) {
566
- if (!opt.hasAttribute("aria-selected")) {
567
- opt.setAttribute("aria-selected", "true");
568
- set = opt;
569
- }
570
- } else {
571
- if (opt.hasAttribute("aria-selected")) {
572
- opt.removeAttribute("aria-selected");
573
- opt.removeAttribute("aria-describedby");
574
- }
575
- }
576
- }
577
- if (set)
578
- scrollIntoView(this.list, set);
579
- return set;
580
- }
581
- measureInfo() {
582
- let sel = this.dom.querySelector("[aria-selected]");
583
- if (!sel || !this.info)
584
- return null;
585
- let listRect = this.dom.getBoundingClientRect();
586
- let infoRect = this.info.getBoundingClientRect();
587
- let selRect = sel.getBoundingClientRect();
588
- let space = this.space;
589
- if (!space) {
590
- let docElt = this.dom.ownerDocument.documentElement;
591
- space = { left: 0, top: 0, right: docElt.clientWidth, bottom: docElt.clientHeight };
592
- }
593
- if (selRect.top > Math.min(space.bottom, listRect.bottom) - 10 || selRect.bottom < Math.max(space.top, listRect.top) + 10)
594
- return null;
595
- return this.view.state.facet(completionConfig).positionInfo(this.view, listRect, selRect, infoRect, space, this.dom);
596
- }
597
- placeInfo(pos) {
598
- if (this.info) {
599
- if (pos) {
600
- if (pos.style)
601
- this.info.style.cssText = pos.style;
602
- this.info.className = "cm-tooltip cm-completionInfo " + (pos.class || "");
603
- } else {
604
- this.info.style.cssText = "top: -1e6px";
605
- }
606
- }
607
- }
608
- createListBox(options, id, range) {
609
- const ul = document.createElement("ul");
610
- ul.id = id;
611
- ul.setAttribute("role", "listbox");
612
- ul.setAttribute("aria-expanded", "true");
613
- ul.setAttribute("aria-label", this.view.state.phrase("Completions"));
614
- ul.addEventListener("mousedown", (e) => {
615
- if (e.target == ul)
616
- e.preventDefault();
617
- });
618
- let curSection = null;
619
- for (let i = range.from; i < range.to; i++) {
620
- let { completion, match } = options[i], { section } = completion;
621
- if (section) {
622
- let name = typeof section == "string" ? section : section.name;
623
- if (name != curSection && (i > range.from || range.from == 0)) {
624
- curSection = name;
625
- if (typeof section != "string" && section.header) {
626
- ul.appendChild(section.header(section));
627
- } else {
628
- let header = ul.appendChild(document.createElement("completion-section"));
629
- header.textContent = name;
630
- }
631
- }
632
- }
633
- const li = ul.appendChild(document.createElement("li"));
634
- li.id = id + "-" + i;
635
- li.setAttribute("role", "option");
636
- let cls = this.optionClass(completion);
637
- if (cls)
638
- li.className = cls;
639
- for (let source of this.optionContent) {
640
- let node = source(completion, this.view.state, this.view, match);
641
- if (node)
642
- li.appendChild(node);
643
- }
644
- }
645
- if (range.from)
646
- ul.classList.add("cm-completionListIncompleteTop");
647
- if (range.to < options.length)
648
- ul.classList.add("cm-completionListIncompleteBottom");
649
- return ul;
650
- }
651
- destroyInfo() {
652
- if (this.info) {
653
- if (this.infoDestroy)
654
- this.infoDestroy();
655
- this.info.remove();
656
- this.info = null;
657
- }
658
- }
659
- destroy() {
660
- this.destroyInfo();
661
- }
662
- };
663
- function completionTooltip(stateField, applyCompletion2) {
664
- return (view) => new CompletionTooltip(view, stateField, applyCompletion2);
665
- }
666
- function scrollIntoView(container, element) {
667
- let parent = container.getBoundingClientRect();
668
- let self = element.getBoundingClientRect();
669
- let scaleY = parent.height / container.offsetHeight;
670
- if (self.top < parent.top)
671
- container.scrollTop -= (parent.top - self.top) / scaleY;
672
- else if (self.bottom > parent.bottom)
673
- container.scrollTop += (self.bottom - parent.bottom) / scaleY;
674
- }
675
- function score(option) {
676
- return (option.boost || 0) * 100 + (option.apply ? 10 : 0) + (option.info ? 5 : 0) + (option.type ? 1 : 0);
677
- }
678
- function sortOptions(active, state) {
679
- let options = [];
680
- let sections = null, dynamicSectionScore = null;
681
- let addOption = (option) => {
682
- options.push(option);
683
- let { section } = option.completion;
684
- if (section) {
685
- if (!sections)
686
- sections = [];
687
- let name = typeof section == "string" ? section : section.name;
688
- if (!sections.some((s) => s.name == name))
689
- sections.push(typeof section == "string" ? { name } : section);
690
- }
691
- };
692
- let conf = state.facet(completionConfig);
693
- for (let a of active)
694
- if (a.hasResult()) {
695
- let getMatch = a.result.getMatch;
696
- if (a.result.filter === false) {
697
- for (let option of a.result.options) {
698
- addOption(new Option(option, a.source, getMatch ? getMatch(option) : [], 1e9 - options.length));
699
- }
700
- } else {
701
- let pattern = state.sliceDoc(a.from, a.to), match;
702
- let matcher = conf.filterStrict ? new StrictMatcher(pattern) : new FuzzyMatcher(pattern);
703
- for (let option of a.result.options)
704
- if (match = matcher.match(option.label)) {
705
- let matched = !option.displayLabel ? match.matched : getMatch ? getMatch(option, match.matched) : [];
706
- let score2 = match.score + (option.boost || 0);
707
- addOption(new Option(option, a.source, matched, score2));
708
- if (typeof option.section == "object" && option.section.rank === "dynamic") {
709
- let { name } = option.section;
710
- if (!dynamicSectionScore)
711
- dynamicSectionScore = /* @__PURE__ */ Object.create(null);
712
- dynamicSectionScore[name] = Math.max(score2, dynamicSectionScore[name] || -1e9);
713
- }
714
- }
715
- }
716
- }
717
- if (sections) {
718
- let sectionOrder = /* @__PURE__ */ Object.create(null), pos = 0;
719
- let cmp = (a, b) => {
720
- return (a.rank === "dynamic" && b.rank === "dynamic" ? dynamicSectionScore[b.name] - dynamicSectionScore[a.name] : 0) || (typeof a.rank == "number" ? a.rank : 1e9) - (typeof b.rank == "number" ? b.rank : 1e9) || (a.name < b.name ? -1 : 1);
721
- };
722
- for (let s of sections.sort(cmp)) {
723
- pos -= 1e5;
724
- sectionOrder[s.name] = pos;
725
- }
726
- for (let option of options) {
727
- let { section } = option.completion;
728
- if (section)
729
- option.score += sectionOrder[typeof section == "string" ? section : section.name];
730
- }
731
- }
732
- let result = [], prev = null;
733
- let compare = conf.compareCompletions;
734
- for (let opt of options.sort((a, b) => b.score - a.score || compare(a.completion, b.completion))) {
735
- let cur2 = opt.completion;
736
- if (!prev || prev.label != cur2.label || prev.detail != cur2.detail || prev.type != null && cur2.type != null && prev.type != cur2.type || prev.apply != cur2.apply || prev.boost != cur2.boost)
737
- result.push(opt);
738
- else if (score(opt.completion) > score(prev))
739
- result[result.length - 1] = opt;
740
- prev = opt.completion;
741
- }
742
- return result;
743
- }
744
- var CompletionDialog = class _CompletionDialog {
745
- constructor(options, attrs, tooltip, timestamp, selected, disabled) {
746
- this.options = options;
747
- this.attrs = attrs;
748
- this.tooltip = tooltip;
749
- this.timestamp = timestamp;
750
- this.selected = selected;
751
- this.disabled = disabled;
752
- }
753
- setSelected(selected, id) {
754
- return selected == this.selected || selected >= this.options.length ? this : new _CompletionDialog(this.options, makeAttrs(id, selected), this.tooltip, this.timestamp, selected, this.disabled);
755
- }
756
- static build(active, state, id, prev, conf, didSetActive) {
757
- if (prev && !didSetActive && active.some((s) => s.isPending))
758
- return prev.setDisabled();
759
- let options = sortOptions(active, state);
760
- if (!options.length)
761
- return prev && active.some((a) => a.isPending) ? prev.setDisabled() : null;
762
- let selected = state.facet(completionConfig).selectOnOpen ? 0 : -1;
763
- if (prev && prev.selected != selected && prev.selected != -1) {
764
- let selectedValue = prev.options[prev.selected].completion;
765
- for (let i = 0; i < options.length; i++)
766
- if (options[i].completion == selectedValue) {
767
- selected = i;
768
- break;
769
- }
770
- }
771
- return new _CompletionDialog(options, makeAttrs(id, selected), {
772
- pos: active.reduce((a, b) => b.hasResult() ? Math.min(a, b.from) : a, 1e8),
773
- create: createTooltip,
774
- above: conf.aboveCursor
775
- }, prev ? prev.timestamp : Date.now(), selected, false);
776
- }
777
- map(changes) {
778
- return new _CompletionDialog(this.options, this.attrs, { ...this.tooltip, pos: changes.mapPos(this.tooltip.pos) }, this.timestamp, this.selected, this.disabled);
779
- }
780
- setDisabled() {
781
- return new _CompletionDialog(this.options, this.attrs, this.tooltip, this.timestamp, this.selected, true);
782
- }
783
- };
784
- var CompletionState = class _CompletionState {
785
- constructor(active, id, open) {
786
- this.active = active;
787
- this.id = id;
788
- this.open = open;
789
- }
790
- static start() {
791
- return new _CompletionState(none, "cm-ac-" + Math.floor(Math.random() * 2e6).toString(36), null);
792
- }
793
- update(tr) {
794
- let { state } = tr, conf = state.facet(completionConfig);
795
- let sources = conf.override || state.languageDataAt("autocomplete", cur(state)).map(asSource);
796
- let active = sources.map((source) => {
797
- let value = this.active.find((s) => s.source == source) || new ActiveSource(
798
- source,
799
- this.active.some(
800
- (a) => a.state != 0
801
- /* State.Inactive */
802
- ) ? 1 : 0
803
- /* State.Inactive */
804
- );
805
- return value.update(tr, conf);
806
- });
807
- if (active.length == this.active.length && active.every((a, i) => a == this.active[i]))
808
- active = this.active;
809
- let open = this.open, didSet = tr.effects.some((e) => e.is(setActiveEffect));
810
- if (open && tr.docChanged)
811
- open = open.map(tr.changes);
812
- if (tr.selection || active.some((a) => a.hasResult() && tr.changes.touchesRange(a.from, a.to)) || !sameResults(active, this.active) || didSet)
813
- open = CompletionDialog.build(active, state, this.id, open, conf, didSet);
814
- else if (open && open.disabled && !active.some((a) => a.isPending))
815
- open = null;
816
- if (!open && active.every((a) => !a.isPending) && active.some((a) => a.hasResult()))
817
- active = active.map((a) => a.hasResult() ? new ActiveSource(
818
- a.source,
819
- 0
820
- /* State.Inactive */
821
- ) : a);
822
- for (let effect of tr.effects)
823
- if (effect.is(setSelectedEffect))
824
- open = open && open.setSelected(effect.value, this.id);
825
- return active == this.active && open == this.open ? this : new _CompletionState(active, this.id, open);
826
- }
827
- get tooltip() {
828
- return this.open ? this.open.tooltip : null;
829
- }
830
- get attrs() {
831
- return this.open ? this.open.attrs : this.active.length ? baseAttrs : noAttrs;
832
- }
833
- };
834
- function sameResults(a, b) {
835
- if (a == b)
836
- return true;
837
- for (let iA = 0, iB = 0; ; ) {
838
- while (iA < a.length && !a[iA].hasResult())
839
- iA++;
840
- while (iB < b.length && !b[iB].hasResult())
841
- iB++;
842
- let endA = iA == a.length, endB = iB == b.length;
843
- if (endA || endB)
844
- return endA == endB;
845
- if (a[iA++].result != b[iB++].result)
846
- return false;
847
- }
848
- }
849
- var baseAttrs = {
850
- "aria-autocomplete": "list"
851
- };
852
- var noAttrs = {};
853
- function makeAttrs(id, selected) {
854
- let result = {
855
- "aria-autocomplete": "list",
856
- "aria-haspopup": "listbox",
857
- "aria-controls": id
858
- };
859
- if (selected > -1)
860
- result["aria-activedescendant"] = id + "-" + selected;
861
- return result;
862
- }
863
- var none = [];
864
- function getUpdateType(tr, conf) {
865
- if (tr.isUserEvent("input.complete")) {
866
- let completion = tr.annotation(pickedCompletion);
867
- if (completion && conf.activateOnCompletion(completion))
868
- return 4 | 8;
869
- }
870
- let typing = tr.isUserEvent("input.type");
871
- return typing && conf.activateOnTyping ? 4 | 1 : typing ? 1 : tr.isUserEvent("delete.backward") ? 2 : tr.selection ? 8 : tr.docChanged ? 16 : 0;
872
- }
873
- var ActiveSource = class _ActiveSource {
874
- constructor(source, state, explicit = false) {
875
- this.source = source;
876
- this.state = state;
877
- this.explicit = explicit;
878
- }
879
- hasResult() {
880
- return false;
881
- }
882
- get isPending() {
883
- return this.state == 1;
884
- }
885
- update(tr, conf) {
886
- let type = getUpdateType(tr, conf), value = this;
887
- if (type & 8 || type & 16 && this.touches(tr))
888
- value = new _ActiveSource(
889
- value.source,
890
- 0
891
- /* State.Inactive */
892
- );
893
- if (type & 4 && value.state == 0)
894
- value = new _ActiveSource(
895
- this.source,
896
- 1
897
- /* State.Pending */
898
- );
899
- value = value.updateFor(tr, type);
900
- for (let effect of tr.effects) {
901
- if (effect.is(startCompletionEffect))
902
- value = new _ActiveSource(value.source, 1, effect.value);
903
- else if (effect.is(closeCompletionEffect))
904
- value = new _ActiveSource(
905
- value.source,
906
- 0
907
- /* State.Inactive */
908
- );
909
- else if (effect.is(setActiveEffect)) {
910
- for (let active of effect.value)
911
- if (active.source == value.source)
912
- value = active;
913
- }
914
- }
915
- return value;
916
- }
917
- updateFor(tr, type) {
918
- return this.map(tr.changes);
919
- }
920
- map(changes) {
921
- return this;
922
- }
923
- touches(tr) {
924
- return tr.changes.touchesRange(cur(tr.state));
925
- }
926
- };
927
- var ActiveResult = class _ActiveResult extends ActiveSource {
928
- constructor(source, explicit, limit, result, from, to) {
929
- super(source, 3, explicit);
930
- this.limit = limit;
931
- this.result = result;
932
- this.from = from;
933
- this.to = to;
934
- }
935
- hasResult() {
936
- return true;
937
- }
938
- updateFor(tr, type) {
939
- var _a;
940
- if (!(type & 3))
941
- return this.map(tr.changes);
942
- let result = this.result;
943
- if (result.map && !tr.changes.empty)
944
- result = result.map(result, tr.changes);
945
- let from = tr.changes.mapPos(this.from), to = tr.changes.mapPos(this.to, 1);
946
- let pos = cur(tr.state);
947
- if (pos > to || !result || type & 2 && (cur(tr.startState) == this.from || pos < this.limit))
948
- return new ActiveSource(
949
- this.source,
950
- type & 4 ? 1 : 0
951
- /* State.Inactive */
952
- );
953
- let limit = tr.changes.mapPos(this.limit);
954
- if (checkValid(result.validFor, tr.state, from, to))
955
- return new _ActiveResult(this.source, this.explicit, limit, result, from, to);
956
- if (result.update && (result = result.update(result, from, to, new CompletionContext(tr.state, pos, false))))
957
- return new _ActiveResult(this.source, this.explicit, limit, result, result.from, (_a = result.to) !== null && _a !== void 0 ? _a : cur(tr.state));
958
- return new ActiveSource(this.source, 1, this.explicit);
959
- }
960
- map(mapping) {
961
- if (mapping.empty)
962
- return this;
963
- let result = this.result.map ? this.result.map(this.result, mapping) : this.result;
964
- if (!result)
965
- return new ActiveSource(
966
- this.source,
967
- 0
968
- /* State.Inactive */
969
- );
970
- return new _ActiveResult(this.source, this.explicit, mapping.mapPos(this.limit), result, mapping.mapPos(this.from), mapping.mapPos(this.to, 1));
971
- }
972
- touches(tr) {
973
- return tr.changes.touchesRange(this.from, this.to);
974
- }
975
- };
976
- function checkValid(validFor, state, from, to) {
977
- if (!validFor)
978
- return false;
979
- let text = state.sliceDoc(from, to);
980
- return typeof validFor == "function" ? validFor(text, from, to, state) : ensureAnchor(validFor, true).test(text);
981
- }
982
- var setActiveEffect = /* @__PURE__ */ StateEffect.define({
983
- map(sources, mapping) {
984
- return sources.map((s) => s.map(mapping));
985
- }
986
- });
987
- var completionState = /* @__PURE__ */ StateField.define({
988
- create() {
989
- return CompletionState.start();
990
- },
991
- update(value, tr) {
992
- return value.update(tr);
993
- },
994
- provide: (f) => [
995
- showTooltip.from(f, (val) => val.tooltip),
996
- EditorView.contentAttributes.from(f, (state) => state.attrs)
997
- ]
998
- });
999
- function applyCompletion(view, option) {
1000
- const apply = option.completion.apply || option.completion.label;
1001
- let result = view.state.field(completionState).active.find((a) => a.source == option.source);
1002
- if (!(result instanceof ActiveResult))
1003
- return false;
1004
- if (typeof apply == "string")
1005
- view.dispatch({
1006
- ...insertCompletionText(view.state, apply, result.from, result.to),
1007
- annotations: pickedCompletion.of(option.completion)
1008
- });
1009
- else
1010
- apply(view, option.completion, result.from, result.to);
1011
- return true;
1012
- }
1013
- var createTooltip = /* @__PURE__ */ completionTooltip(completionState, applyCompletion);
1014
- function moveCompletionSelection(forward, by = "option") {
1015
- return (view) => {
1016
- let cState = view.state.field(completionState, false);
1017
- if (!cState || !cState.open || cState.open.disabled || Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)
1018
- return false;
1019
- let step = 1, tooltip;
1020
- if (by == "page" && (tooltip = getTooltip(view, cState.open.tooltip)))
1021
- step = Math.max(2, Math.floor(tooltip.dom.offsetHeight / tooltip.dom.querySelector("li").offsetHeight) - 1);
1022
- let { length } = cState.open.options;
1023
- let selected = cState.open.selected > -1 ? cState.open.selected + step * (forward ? 1 : -1) : forward ? 0 : length - 1;
1024
- if (selected < 0)
1025
- selected = by == "page" ? 0 : length - 1;
1026
- else if (selected >= length)
1027
- selected = by == "page" ? length - 1 : 0;
1028
- view.dispatch({ effects: setSelectedEffect.of(selected) });
1029
- return true;
1030
- };
1031
- }
1032
- var acceptCompletion = (view) => {
1033
- let cState = view.state.field(completionState, false);
1034
- if (view.state.readOnly || !cState || !cState.open || cState.open.selected < 0 || cState.open.disabled || Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)
1035
- return false;
1036
- return applyCompletion(view, cState.open.options[cState.open.selected]);
1037
- };
1038
- var startCompletion = (view) => {
1039
- let cState = view.state.field(completionState, false);
1040
- if (!cState)
1041
- return false;
1042
- view.dispatch({ effects: startCompletionEffect.of(true) });
1043
- return true;
1044
- };
1045
- var closeCompletion = (view) => {
1046
- let cState = view.state.field(completionState, false);
1047
- if (!cState || !cState.active.some(
1048
- (a) => a.state != 0
1049
- /* State.Inactive */
1050
- ))
1051
- return false;
1052
- view.dispatch({ effects: closeCompletionEffect.of(null) });
1053
- return true;
1054
- };
1055
- var windows = typeof navigator == "object" && /* @__PURE__ */ /Win/.test(navigator.platform);
1056
- var baseTheme = /* @__PURE__ */ EditorView.baseTheme({
1057
- ".cm-tooltip.cm-tooltip-autocomplete": {
1058
- "& > ul": {
1059
- fontFamily: "monospace",
1060
- whiteSpace: "nowrap",
1061
- overflow: "hidden auto",
1062
- maxWidth_fallback: "700px",
1063
- maxWidth: "min(700px, 95vw)",
1064
- minWidth: "250px",
1065
- maxHeight: "10em",
1066
- height: "100%",
1067
- listStyle: "none",
1068
- margin: 0,
1069
- padding: 0,
1070
- "& > li, & > completion-section": {
1071
- padding: "1px 3px",
1072
- lineHeight: 1.2
1073
- },
1074
- "& > li": {
1075
- overflowX: "hidden",
1076
- textOverflow: "ellipsis",
1077
- cursor: "pointer"
1078
- },
1079
- "& > completion-section": {
1080
- display: "list-item",
1081
- borderBottom: "1px solid silver",
1082
- paddingLeft: "0.5em",
1083
- opacity: 0.7
1084
- }
1085
- }
1086
- },
1087
- "&light .cm-tooltip-autocomplete ul li[aria-selected]": {
1088
- background: "#17c",
1089
- color: "white"
1090
- },
1091
- "&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]": {
1092
- background: "#777"
1093
- },
1094
- "&dark .cm-tooltip-autocomplete ul li[aria-selected]": {
1095
- background: "#347",
1096
- color: "white"
1097
- },
1098
- "&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]": {
1099
- background: "#444"
1100
- },
1101
- ".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after": {
1102
- content: '"\xB7\xB7\xB7"',
1103
- opacity: 0.5,
1104
- display: "block",
1105
- textAlign: "center",
1106
- cursor: "pointer"
1107
- },
1108
- ".cm-tooltip.cm-completionInfo": {
1109
- position: "absolute",
1110
- padding: "3px 9px",
1111
- width: "max-content",
1112
- maxWidth: `${400}px`,
1113
- boxSizing: "border-box",
1114
- whiteSpace: "pre-line"
1115
- },
1116
- ".cm-completionInfo.cm-completionInfo-left": { right: "100%" },
1117
- ".cm-completionInfo.cm-completionInfo-right": { left: "100%" },
1118
- ".cm-completionInfo.cm-completionInfo-left-narrow": { right: `${30}px` },
1119
- ".cm-completionInfo.cm-completionInfo-right-narrow": { left: `${30}px` },
1120
- "&light .cm-snippetField": { backgroundColor: "#00000022" },
1121
- "&dark .cm-snippetField": { backgroundColor: "#ffffff22" },
1122
- ".cm-snippetFieldPosition": {
1123
- verticalAlign: "text-top",
1124
- width: 0,
1125
- height: "1.15em",
1126
- display: "inline-block",
1127
- margin: "0 -0.7px -.7em",
1128
- borderLeft: "1.4px dotted #888"
1129
- },
1130
- ".cm-completionMatchedText": {
1131
- textDecoration: "underline"
1132
- },
1133
- ".cm-completionDetail": {
1134
- marginLeft: "0.5em",
1135
- fontStyle: "italic"
1136
- },
1137
- ".cm-completionIcon": {
1138
- fontSize: "90%",
1139
- width: ".8em",
1140
- display: "inline-block",
1141
- textAlign: "center",
1142
- paddingRight: ".6em",
1143
- opacity: "0.6",
1144
- boxSizing: "content-box"
1145
- },
1146
- ".cm-completionIcon-function, .cm-completionIcon-method": {
1147
- "&:after": { content: "'\u0192'" }
1148
- },
1149
- ".cm-completionIcon-class": {
1150
- "&:after": { content: "'\u25CB'" }
1151
- },
1152
- ".cm-completionIcon-interface": {
1153
- "&:after": { content: "'\u25CC'" }
1154
- },
1155
- ".cm-completionIcon-variable": {
1156
- "&:after": { content: "'\u{1D465}'" }
1157
- },
1158
- ".cm-completionIcon-constant": {
1159
- "&:after": { content: "'\u{1D436}'" }
1160
- },
1161
- ".cm-completionIcon-type": {
1162
- "&:after": { content: "'\u{1D461}'" }
1163
- },
1164
- ".cm-completionIcon-enum": {
1165
- "&:after": { content: "'\u222A'" }
1166
- },
1167
- ".cm-completionIcon-property": {
1168
- "&:after": { content: "'\u25A1'" }
1169
- },
1170
- ".cm-completionIcon-keyword": {
1171
- "&:after": { content: "'\u{1F511}\uFE0E'" }
1172
- // Disable emoji rendering
1173
- },
1174
- ".cm-completionIcon-namespace": {
1175
- "&:after": { content: "'\u25A2'" }
1176
- },
1177
- ".cm-completionIcon-text": {
1178
- "&:after": { content: "'abc'", fontSize: "50%", verticalAlign: "middle" }
1179
- }
1180
- });
1181
- var FieldPos = class {
1182
- constructor(field, line, from, to) {
1183
- this.field = field;
1184
- this.line = line;
1185
- this.from = from;
1186
- this.to = to;
1187
- }
1188
- };
1189
- var FieldRange = class _FieldRange {
1190
- constructor(field, from, to) {
1191
- this.field = field;
1192
- this.from = from;
1193
- this.to = to;
1194
- }
1195
- map(changes) {
1196
- let from = changes.mapPos(this.from, -1, MapMode.TrackDel);
1197
- let to = changes.mapPos(this.to, 1, MapMode.TrackDel);
1198
- return from == null || to == null ? null : new _FieldRange(this.field, from, to);
1199
- }
1200
- };
1201
- var Snippet = class _Snippet {
1202
- constructor(lines, fieldPositions) {
1203
- this.lines = lines;
1204
- this.fieldPositions = fieldPositions;
1205
- }
1206
- instantiate(state, pos) {
1207
- let text = [], lineStart = [pos];
1208
- let lineObj = state.doc.lineAt(pos), baseIndent = /^\s*/.exec(lineObj.text)[0];
1209
- for (let line of this.lines) {
1210
- if (text.length) {
1211
- let indent = baseIndent, tabs = /^\t*/.exec(line)[0].length;
1212
- for (let i = 0; i < tabs; i++)
1213
- indent += state.facet(indentUnit);
1214
- lineStart.push(pos + indent.length - tabs);
1215
- line = indent + line.slice(tabs);
1216
- }
1217
- text.push(line);
1218
- pos += line.length + 1;
1219
- }
1220
- let ranges = this.fieldPositions.map((pos2) => new FieldRange(pos2.field, lineStart[pos2.line] + pos2.from, lineStart[pos2.line] + pos2.to));
1221
- return { text, ranges };
1222
- }
1223
- static parse(template) {
1224
- let fields = [];
1225
- let lines = [], positions = [], m;
1226
- for (let line of template.split(/\r\n?|\n/)) {
1227
- while (m = /[#$]\{(?:(\d+)(?::([^{}]*))?|((?:\\[{}]|[^{}])*))\}/.exec(line)) {
1228
- let seq = m[1] ? +m[1] : null, rawName = m[2] || m[3] || "", found = -1;
1229
- if (seq === 0)
1230
- seq = 1e9;
1231
- let name = rawName.replace(/\\[{}]/g, (m2) => m2[1]);
1232
- for (let i = 0; i < fields.length; i++) {
1233
- if (seq != null ? fields[i].seq == seq : name ? fields[i].name == name : false)
1234
- found = i;
1235
- }
1236
- if (found < 0) {
1237
- let i = 0;
1238
- while (i < fields.length && (seq == null || fields[i].seq != null && fields[i].seq < seq))
1239
- i++;
1240
- fields.splice(i, 0, { seq, name });
1241
- found = i;
1242
- for (let pos of positions)
1243
- if (pos.field >= found)
1244
- pos.field++;
1245
- }
1246
- for (let pos of positions)
1247
- if (pos.line == lines.length && pos.from > m.index) {
1248
- let snip = m[2] ? 3 + (m[1] || "").length : 2;
1249
- pos.from -= snip;
1250
- pos.to -= snip;
1251
- }
1252
- positions.push(new FieldPos(found, lines.length, m.index, m.index + name.length));
1253
- line = line.slice(0, m.index) + rawName + line.slice(m.index + m[0].length);
1254
- }
1255
- line = line.replace(/\\([{}])/g, (_, brace, index) => {
1256
- for (let pos of positions)
1257
- if (pos.line == lines.length && pos.from > index) {
1258
- pos.from--;
1259
- pos.to--;
1260
- }
1261
- return brace;
1262
- });
1263
- lines.push(line);
1264
- }
1265
- return new _Snippet(lines, positions);
1266
- }
1267
- };
1268
- var fieldMarker = /* @__PURE__ */ Decoration.widget({ widget: /* @__PURE__ */ new class extends WidgetType {
1269
- toDOM() {
1270
- let span = document.createElement("span");
1271
- span.className = "cm-snippetFieldPosition";
1272
- return span;
1273
- }
1274
- ignoreEvent() {
1275
- return false;
1276
- }
1277
- }() });
1278
- var fieldRange = /* @__PURE__ */ Decoration.mark({ class: "cm-snippetField" });
1279
- var ActiveSnippet = class _ActiveSnippet {
1280
- constructor(ranges, active) {
1281
- this.ranges = ranges;
1282
- this.active = active;
1283
- this.deco = Decoration.set(ranges.map((r) => (r.from == r.to ? fieldMarker : fieldRange).range(r.from, r.to)), true);
1284
- }
1285
- map(changes) {
1286
- let ranges = [];
1287
- for (let r of this.ranges) {
1288
- let mapped = r.map(changes);
1289
- if (!mapped)
1290
- return null;
1291
- ranges.push(mapped);
1292
- }
1293
- return new _ActiveSnippet(ranges, this.active);
1294
- }
1295
- selectionInsideField(sel) {
1296
- return sel.ranges.every((range) => this.ranges.some((r) => r.field == this.active && r.from <= range.from && r.to >= range.to));
1297
- }
1298
- };
1299
- var setActive = /* @__PURE__ */ StateEffect.define({
1300
- map(value, changes) {
1301
- return value && value.map(changes);
1302
- }
1303
- });
1304
- var moveToField = /* @__PURE__ */ StateEffect.define();
1305
- var snippetState = /* @__PURE__ */ StateField.define({
1306
- create() {
1307
- return null;
1308
- },
1309
- update(value, tr) {
1310
- for (let effect of tr.effects) {
1311
- if (effect.is(setActive))
1312
- return effect.value;
1313
- if (effect.is(moveToField) && value)
1314
- return new ActiveSnippet(value.ranges, effect.value);
1315
- }
1316
- if (value && tr.docChanged)
1317
- value = value.map(tr.changes);
1318
- if (value && tr.selection && !value.selectionInsideField(tr.selection))
1319
- value = null;
1320
- return value;
1321
- },
1322
- provide: (f) => EditorView.decorations.from(f, (val) => val ? val.deco : Decoration.none)
1323
- });
1324
- function fieldSelection(ranges, field) {
1325
- return EditorSelection.create(ranges.filter((r) => r.field == field).map((r) => EditorSelection.range(r.from, r.to)));
1326
- }
1327
- function snippet(template) {
1328
- let snippet2 = Snippet.parse(template);
1329
- return (editor, completion, from, to) => {
1330
- let { text, ranges } = snippet2.instantiate(editor.state, from);
1331
- let { main } = editor.state.selection;
1332
- let spec = {
1333
- changes: { from, to: to == main.from ? main.to : to, insert: Text.of(text) },
1334
- scrollIntoView: true,
1335
- annotations: completion ? [pickedCompletion.of(completion), Transaction.userEvent.of("input.complete")] : void 0
1336
- };
1337
- if (ranges.length)
1338
- spec.selection = fieldSelection(ranges, 0);
1339
- if (ranges.some((r) => r.field > 0)) {
1340
- let active = new ActiveSnippet(ranges, 0);
1341
- let effects = spec.effects = [setActive.of(active)];
1342
- if (editor.state.field(snippetState, false) === void 0)
1343
- effects.push(StateEffect.appendConfig.of([snippetState, addSnippetKeymap, snippetPointerHandler, baseTheme]));
1344
- }
1345
- editor.dispatch(editor.state.update(spec));
1346
- };
1347
- }
1348
- function moveField(dir) {
1349
- return ({ state, dispatch }) => {
1350
- let active = state.field(snippetState, false);
1351
- if (!active || dir < 0 && active.active == 0)
1352
- return false;
1353
- let next = active.active + dir, last = dir > 0 && !active.ranges.some((r) => r.field == next + dir);
1354
- dispatch(state.update({
1355
- selection: fieldSelection(active.ranges, next),
1356
- effects: setActive.of(last ? null : new ActiveSnippet(active.ranges, next)),
1357
- scrollIntoView: true
1358
- }));
1359
- return true;
1360
- };
1361
- }
1362
- var clearSnippet = ({ state, dispatch }) => {
1363
- let active = state.field(snippetState, false);
1364
- if (!active)
1365
- return false;
1366
- dispatch(state.update({ effects: setActive.of(null) }));
1367
- return true;
1368
- };
1369
- var nextSnippetField = /* @__PURE__ */ moveField(1);
1370
- var prevSnippetField = /* @__PURE__ */ moveField(-1);
1371
- var defaultSnippetKeymap = [
1372
- { key: "Tab", run: nextSnippetField, shift: prevSnippetField },
1373
- { key: "Escape", run: clearSnippet }
1374
- ];
1375
- var snippetKeymap = /* @__PURE__ */ Facet.define({
1376
- combine(maps) {
1377
- return maps.length ? maps[0] : defaultSnippetKeymap;
1378
- }
1379
- });
1380
- var addSnippetKeymap = /* @__PURE__ */ Prec.highest(/* @__PURE__ */ keymap.compute([snippetKeymap], (state) => state.facet(snippetKeymap)));
1381
- function snippetCompletion(template, completion) {
1382
- return { ...completion, apply: snippet(template) };
1383
- }
1384
- var snippetPointerHandler = /* @__PURE__ */ EditorView.domEventHandlers({
1385
- mousedown(event, view) {
1386
- let active = view.state.field(snippetState, false), pos;
1387
- if (!active || (pos = view.posAtCoords({ x: event.clientX, y: event.clientY })) == null)
1388
- return false;
1389
- let match = active.ranges.find((r) => r.from <= pos && r.to >= pos);
1390
- if (!match || match.field == active.active)
1391
- return false;
1392
- view.dispatch({
1393
- selection: fieldSelection(active.ranges, match.field),
1394
- effects: setActive.of(active.ranges.some((r) => r.field > match.field) ? new ActiveSnippet(active.ranges, match.field) : null),
1395
- scrollIntoView: true
1396
- });
1397
- return true;
1398
- }
1399
- });
1400
- var closedBracket = /* @__PURE__ */ new class extends RangeValue {
1401
- }();
1402
- closedBracket.startSide = 1;
1403
- closedBracket.endSide = -1;
1404
- var android = typeof navigator == "object" && /* @__PURE__ */ /Android\b/.test(navigator.userAgent);
1405
- var completionKeymap = [
1406
- { key: "Ctrl-Space", run: startCompletion },
1407
- { mac: "Alt-`", run: startCompletion },
1408
- { mac: "Alt-i", run: startCompletion },
1409
- { key: "Escape", run: closeCompletion },
1410
- { key: "ArrowDown", run: /* @__PURE__ */ moveCompletionSelection(true) },
1411
- { key: "ArrowUp", run: /* @__PURE__ */ moveCompletionSelection(false) },
1412
- { key: "PageDown", run: /* @__PURE__ */ moveCompletionSelection(true, "page") },
1413
- { key: "PageUp", run: /* @__PURE__ */ moveCompletionSelection(false, "page") },
1414
- { key: "Enter", run: acceptCompletion }
1415
- ];
1416
-
1417
- export {
1418
- CompletionContext,
1419
- completeFromList,
1420
- ifNotIn,
1421
- snippetCompletion,
1422
- completionKeymap
1423
- };
1424
- //# sourceMappingURL=chunk-CSJO4DNL.js.map