@aiderdesk/aiderdesk 0.61.0-dev → 0.61.1

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 (196) hide show
  1. package/out/renderer/assets/__vite-browser-external-2447137e-DYxpcVy9.js +4 -0
  2. package/out/renderer/assets/{_baseUniq-Z8t1Ab1g.js → _baseUniq-BPF2Herp.js} +21 -197
  3. package/out/renderer/assets/{arc-CwESpVYE.js → arc-DfPLteHF.js} +1 -1
  4. package/out/renderer/assets/{architectureDiagram-2XIMDMQ5-C490EQr5.js → architectureDiagram-Q4EWVU46-Bw0u-sSH.js} +34 -20
  5. package/out/renderer/assets/{blockDiagram-WCTKOSBZ-DbHssxrQ.js → blockDiagram-DXYQGD6D-CkfB9if8.js} +21 -8
  6. package/out/renderer/assets/{c4Diagram-IC4MRINW-BxE3GUKu.js → c4Diagram-AHTNJAMY-DweK9Liz.js} +31 -35
  7. package/out/renderer/assets/{channel-C9hJq_Xr.js → channel-C5wwrRof.js} +1 -1
  8. package/out/renderer/assets/{chunk-4BX2VUAB-ChcKNpL6.js → chunk-4BX2VUAB-0KM14cFd.js} +1 -1
  9. package/out/renderer/assets/{chunk-WL4C6EOR-vhby2fZi.js → chunk-4TB4RGXK-CmVtCVL4.js} +121 -82
  10. package/out/renderer/assets/{chunk-55IACEB6-oLT9lXTt.js → chunk-55IACEB6-BzVYZvBM.js} +1 -1
  11. package/out/renderer/assets/{chunk-KX2RTZJC-D32tV7H-.js → chunk-EDXVE4YY-BryQl5Kv.js} +1 -1
  12. package/out/renderer/assets/{chunk-FMBD7UC4-B5k8rETe.js → chunk-FMBD7UC4-CRiLea_e.js} +1 -1
  13. package/out/renderer/assets/{chunk-NQ4KR5QH-Bmqo2FpL.js → chunk-OYMX7WX6-Cpi4N3NO.js} +32 -15
  14. package/out/renderer/assets/{chunk-QZHKN3VN-8BpGifjS.js → chunk-QZHKN3VN-BT8kABWC.js} +1 -1
  15. package/out/renderer/assets/{chunk-JSJVCQXG-DtjSx6Cj.js → chunk-YZCP3GAM-OLZV_Sef.js} +1 -1
  16. package/out/renderer/assets/{classDiagram-VBA2DB6C-BxRSSb9e.js → classDiagram-6PBFFD2Q-VdE6G90i.js} +6 -6
  17. package/out/renderer/assets/{classDiagram-v2-RAHNMMFH-BxRSSb9e.js → classDiagram-v2-HSJHXN6E-VdE6G90i.js} +6 -6
  18. package/out/renderer/assets/{clone-D9a-uIZa.js → clone-DwQZ86nS.js} +1 -1
  19. package/out/renderer/assets/{cose-bilkent-S5V4N54A-CUqqQ-6R.js → cose-bilkent-S5V4N54A-BEcAKM9H.js} +1 -1
  20. package/out/renderer/assets/{dagre-KLK3FWXG-ORIwMMhq.js → dagre-KV5264BT-BcFQYL1M.js} +6 -6
  21. package/out/renderer/assets/diagram-5BDNPKRD-GrUNdC1u.js +171 -0
  22. package/out/renderer/assets/{diagram-E7M64L7V-bS9HcoDQ.js → diagram-G4DWMVQ6-CG4S-ov5.js} +15 -13
  23. package/out/renderer/assets/{diagram-IFDJBPK2-BRlTIR0J.js → diagram-MMDJMWI5-9ogY3MRC.js} +5 -6
  24. package/out/renderer/assets/{diagram-P4PSJMXO-jsjGwH-p.js → diagram-TYMM5635-Ck7mI1bS.js} +5 -6
  25. package/out/renderer/assets/{erDiagram-INFDFZHY-DGlgjHOQ.js → erDiagram-SMLLAGMA-Dvf_c-7M.js} +81 -35
  26. package/out/renderer/assets/{flowDiagram-PKNHOUZH-CzLC87bM.js → flowDiagram-DWJPFMVM-CPDjOXYp.js} +27 -45
  27. package/out/renderer/assets/{ganttDiagram-A5KZAMGK-BbDv36wT.js → ganttDiagram-T4ZO3ILL-B4dJrK-3.js} +17 -8
  28. package/out/renderer/assets/{gitGraphDiagram-K3NZZRJ6-CBQnBjEi.js → gitGraphDiagram-UUTBAWPF-De2eCfMN.js} +244 -67
  29. package/out/renderer/assets/{graph-Dl5N6maZ.js → graph-BFn23kR_.js} +175 -3
  30. package/out/renderer/assets/{index-MDHavDF9.js → index-BL-57WPa.js} +15877 -20787
  31. package/out/renderer/assets/{index-CDCy_DhA.css → index-BkntVzTm.css} +114 -301
  32. package/out/renderer/assets/{infoDiagram-LFFYTUFH-GtEDBEmz.js → infoDiagram-42DDH7IO-BIt9B6mQ.js} +5 -6
  33. package/out/renderer/assets/{ishikawaDiagram-PHBUUO56-Uj90gr3I.js → ishikawaDiagram-UXIWVN3A-CXZs0KGV.js} +3 -3
  34. package/out/renderer/assets/{journeyDiagram-4ABVD52K-DekFuOwS.js → journeyDiagram-VCZTEJTY-B-EXuj5b.js} +14 -13
  35. package/out/renderer/assets/{kanban-definition-K7BYSVSG-Hfz2L6NS.js → kanban-definition-6JOO6SKY-ByvN0qaD.js} +5 -2
  36. package/out/renderer/assets/{layout-B9K2VT39.js → layout-BpybWUv6.js} +117 -4
  37. package/out/renderer/assets/min-DB8ixvoT.js +41 -0
  38. package/out/renderer/assets/{mindmap-definition-YRQLILUH-DDcS7_GH.js → mindmap-definition-QFDTVHPH-Do-I-At8.js} +69 -13
  39. package/out/renderer/assets/{pieDiagram-SKSYHLDU-DwjEcJ0Q.js → pieDiagram-DEJITSTG-Cnpf6Gt6.js} +20 -13
  40. package/out/renderer/assets/{quadrantDiagram-337W2JSQ-CpGqN7vo.js → quadrantDiagram-34T5L4WZ-VcOb1qLd.js} +1 -1
  41. package/out/renderer/assets/{requirementDiagram-Z7DCOOCP-qDRUf1ip.js → requirementDiagram-MS252O5E-VJs9Hpaw.js} +42 -11
  42. package/out/renderer/assets/{sankeyDiagram-WA2Y5GQK-DRKS8C1H.js → sankeyDiagram-XADWPNL6-BoXxgLvi.js} +1 -1
  43. package/out/renderer/assets/{sequenceDiagram-2WXFIKYE-DhVN2ug2.js → sequenceDiagram-FGHM5R23-b69hQjSp.js} +446 -220
  44. package/out/renderer/assets/{stateDiagram-RAJIS63D-BpP4eSqu.js → stateDiagram-FHFEXIEX-BK7E-REm.js} +10 -9
  45. package/out/renderer/assets/{stateDiagram-v2-FVOUBMTO-B_qQJqra.js → stateDiagram-v2-QKLJ7IA2-Cd2wfCQu.js} +4 -4
  46. package/out/renderer/assets/{timeline-definition-YZTLITO2-UoWXE_76.js → timeline-definition-GMOUNBTQ-Bl-MTfK5.js} +445 -71
  47. package/out/renderer/assets/{vennDiagram-LZ73GAT5-Dp1FZ609.js → vennDiagram-DHZGUBPP-DNmr1k2L.js} +1 -1
  48. package/out/renderer/assets/{treemap-KZPCXAKY-W2a2L6ff.js → wardley-RL74JXVD-DTbxPMj9.js} +1474 -977
  49. package/out/renderer/assets/wardleyDiagram-NUSXRM2D-BWw08wtD.js +901 -0
  50. package/out/renderer/assets/{xychartDiagram-JWTSCODW-CTzYHTbD.js → xychartDiagram-5P7HB3ND-EEYPnLDT.js} +20 -4
  51. package/out/renderer/index.html +3 -3
  52. package/out/renderer/progress.html +212 -62
  53. package/out/resources/mcp-server/aider-desk-mcp-server.js +642 -402
  54. package/out/resources/skills/extension-creator/SKILL.md +320 -0
  55. package/out/resources/skills/extension-creator/assets/templates/Component.jsx.template +76 -0
  56. package/out/resources/skills/extension-creator/assets/templates/ConfigComponent.jsx.template +38 -0
  57. package/out/resources/skills/extension-creator/assets/templates/folder-extension/config.ts.template +29 -0
  58. package/out/resources/skills/extension-creator/assets/templates/folder-extension/index.ts.template +42 -0
  59. package/out/resources/skills/extension-creator/assets/templates/folder-extension/package.json +12 -0
  60. package/out/resources/skills/extension-creator/assets/templates/folder-extension/tsconfig.json +23 -0
  61. package/out/resources/skills/extension-creator/assets/templates/folder-extension-with-config/index.ts.template +80 -0
  62. package/out/resources/skills/extension-creator/assets/templates/single-file.ts.template +30 -0
  63. package/out/resources/skills/extension-creator/assets/templates/ui-component-external.ts.template +91 -0
  64. package/out/resources/skills/extension-creator/assets/templates/ui-component.ts.template +79 -0
  65. package/out/resources/skills/extension-creator/references/command-definition.md +170 -0
  66. package/out/resources/skills/extension-creator/references/config-components.md +427 -0
  67. package/out/resources/skills/extension-creator/references/event-types.md +156 -0
  68. package/out/resources/skills/extension-creator/references/examples-gallery.md +583 -0
  69. package/out/resources/skills/extension-creator/references/extension-interface.md +240 -0
  70. package/out/resources/skills/extension-creator/references/extension-types.md +186 -0
  71. package/out/resources/skills/extension-creator/references/in-repo-flow.md +132 -0
  72. package/out/resources/skills/extension-creator/references/install-targets.md +96 -0
  73. package/out/resources/skills/extension-creator/references/project-global-flow.md +76 -0
  74. package/out/resources/skills/extension-creator/references/ui-components.md +663 -0
  75. package/out/runner.js +976 -386
  76. package/package.json +2 -3
  77. package/out/renderer/assets/_basePickBy-BWoXHZ8Z.js +0 -161
  78. package/out/renderer/assets/apl-fqmucPXA.js +0 -140
  79. package/out/renderer/assets/asciiarmor-DucZyvP0.js +0 -56
  80. package/out/renderer/assets/asn1-BnOEsgAm.js +0 -144
  81. package/out/renderer/assets/asterisk-QAlztEwS.js +0 -345
  82. package/out/renderer/assets/brainfuck-DZVCuF_t.js +0 -53
  83. package/out/renderer/assets/clike-xqXYL6ge.js +0 -805
  84. package/out/renderer/assets/clojure-BhXMqnxz.js +0 -849
  85. package/out/renderer/assets/cmake-BGaNd9E7.js +0 -71
  86. package/out/renderer/assets/cobol-4yqQntpt.js +0 -120
  87. package/out/renderer/assets/coffeescript-D2dXvhEc.js +0 -308
  88. package/out/renderer/assets/commonlisp-CF_VNHQR.js +0 -130
  89. package/out/renderer/assets/crystal-DyuLTqLs.js +0 -398
  90. package/out/renderer/assets/css-c-jst79C.js +0 -1783
  91. package/out/renderer/assets/cypher-Dlu_3r4V.js +0 -121
  92. package/out/renderer/assets/d-UURgV0Ux.js +0 -179
  93. package/out/renderer/assets/diff-B_Bi2Crb.js +0 -25
  94. package/out/renderer/assets/dockerfile-Bvk733Ga.js +0 -201
  95. package/out/renderer/assets/dtd-Dy74G54E.js +0 -114
  96. package/out/renderer/assets/dylan-TSb-Nfix.js +0 -314
  97. package/out/renderer/assets/ebnf-4fKAGW3a.js +0 -140
  98. package/out/renderer/assets/ecl-B59qGGVg.js +0 -178
  99. package/out/renderer/assets/eiffel-Dze7nlu3.js +0 -134
  100. package/out/renderer/assets/elm-DG7jkhNZ.js +0 -176
  101. package/out/renderer/assets/erlang-BO6gOnGA.js +0 -674
  102. package/out/renderer/assets/factor-CMxFHDqz.js +0 -65
  103. package/out/renderer/assets/fcl-CDDUNjTj.js +0 -141
  104. package/out/renderer/assets/forth-B9D2JCeE.js +0 -116
  105. package/out/renderer/assets/fortran-CAG2BFbe.js +0 -467
  106. package/out/renderer/assets/gas-d3KEcW3x.js +0 -294
  107. package/out/renderer/assets/gherkin-DhZlEZiy.js +0 -115
  108. package/out/renderer/assets/groovy-CpwJiBl7.js +0 -223
  109. package/out/renderer/assets/haskell-ySd-OUo8.js +0 -459
  110. package/out/renderer/assets/haxe-7MlzfeYV.js +0 -514
  111. package/out/renderer/assets/http-BqypyemW.js +0 -79
  112. package/out/renderer/assets/idl-4HIGJlDI.js +0 -985
  113. package/out/renderer/assets/index-6qedlt0q.js +0 -689
  114. package/out/renderer/assets/index-86jDpUJn.js +0 -385
  115. package/out/renderer/assets/index-BRjO8ber.js +0 -332
  116. package/out/renderer/assets/index-BVgw7j0d.js +0 -312
  117. package/out/renderer/assets/index-BhkyI1q3.js +0 -642
  118. package/out/renderer/assets/index-BqrmLPkg.js +0 -82
  119. package/out/renderer/assets/index-BuPbw4xM.js +0 -178
  120. package/out/renderer/assets/index-CTO-LPBg.js +0 -311
  121. package/out/renderer/assets/index-CTO4SzlI.js +0 -97
  122. package/out/renderer/assets/index-CZ9IQK_0.js +0 -2488
  123. package/out/renderer/assets/index-CZxsVxBZ.js +0 -1765
  124. package/out/renderer/assets/index-DIXV-3Xn.js +0 -406
  125. package/out/renderer/assets/index-DNzOtZX5.js +0 -61
  126. package/out/renderer/assets/index-DZtJe7oC.js +0 -1019
  127. package/out/renderer/assets/index-DaWjZz_g.js +0 -291
  128. package/out/renderer/assets/index-De056HHR.js +0 -151
  129. package/out/renderer/assets/index-Dk3wSDSN.js +0 -117
  130. package/out/renderer/assets/index-Dy4VRsnA.js +0 -1041
  131. package/out/renderer/assets/index-FnnayPBc.js +0 -82
  132. package/out/renderer/assets/index-MZb_zy6R.js +0 -704
  133. package/out/renderer/assets/index-chzQl8rJ.js +0 -157
  134. package/out/renderer/assets/index-s-Owx3Pm.js +0 -327
  135. package/out/renderer/assets/javascript-C_OHM9hj.js +0 -994
  136. package/out/renderer/assets/julia-Bs6JJhYG.js +0 -407
  137. package/out/renderer/assets/livescript-DmzgM3Yt.js +0 -296
  138. package/out/renderer/assets/lua-8cJgIlqe.js +0 -256
  139. package/out/renderer/assets/mathematica-DNLOL9PQ.js +0 -110
  140. package/out/renderer/assets/mbox-Ga7d4MMN.js +0 -117
  141. package/out/renderer/assets/mirc-Dma3B8rS.js +0 -107
  142. package/out/renderer/assets/mllike-DHn7xckP.js +0 -334
  143. package/out/renderer/assets/modelica-0d55jYY0.js +0 -147
  144. package/out/renderer/assets/mscgen-DdqZYINH.js +0 -135
  145. package/out/renderer/assets/mumps-Btr8VblO.js +0 -93
  146. package/out/renderer/assets/nginx-DTDtBDVN.js +0 -141
  147. package/out/renderer/assets/nsis-3zG7tgur.js +0 -62
  148. package/out/renderer/assets/ntriples-CvgOYMpL.js +0 -153
  149. package/out/renderer/assets/octave-DYBj3-tl.js +0 -200
  150. package/out/renderer/assets/oz-R_e8WMIi.js +0 -231
  151. package/out/renderer/assets/pascal-GD8iposT.js +0 -105
  152. package/out/renderer/assets/perl-DL9mHpoi.js +0 -1105
  153. package/out/renderer/assets/pig-C_4T4YIV.js +0 -101
  154. package/out/renderer/assets/powershell-B0suO7Vd.js +0 -328
  155. package/out/renderer/assets/properties-BR-vP1aU.js +0 -58
  156. package/out/renderer/assets/protobuf-BxgpyhoW.js +0 -77
  157. package/out/renderer/assets/pug-CTXt1f8z.js +0 -405
  158. package/out/renderer/assets/puppet-Bdao66PW.js +0 -137
  159. package/out/renderer/assets/python-CvWbmiX4.js +0 -427
  160. package/out/renderer/assets/q-CrbCVq4a.js +0 -131
  161. package/out/renderer/assets/r-V7nswm59.js +0 -170
  162. package/out/renderer/assets/rpm-C-DLY-If.js +0 -109
  163. package/out/renderer/assets/ruby-JDKLJNK0.js +0 -330
  164. package/out/renderer/assets/sas-D2UG-yhZ.js +0 -207
  165. package/out/renderer/assets/scheme-BKzrkGJD.js +0 -222
  166. package/out/renderer/assets/shell-BlsXDxCn.js +0 -222
  167. package/out/renderer/assets/sieve-CjwBwOY5.js +0 -135
  168. package/out/renderer/assets/simple-mode-DMneyfDu.js +0 -130
  169. package/out/renderer/assets/smalltalk-BOIGQuhN.js +0 -121
  170. package/out/renderer/assets/solr-CwD7U71z.js +0 -69
  171. package/out/renderer/assets/sparql-DYskk2vE.js +0 -249
  172. package/out/renderer/assets/spreadsheet-Bgtt3oLP.js +0 -87
  173. package/out/renderer/assets/sql-BSrOzCRI.js +0 -354
  174. package/out/renderer/assets/stex-B6LNC55o.js +0 -231
  175. package/out/renderer/assets/stylus-BkS-boTH.js +0 -565
  176. package/out/renderer/assets/swift-FRZi1uvB.js +0 -291
  177. package/out/renderer/assets/tcl-CUcaCdmq.js +0 -114
  178. package/out/renderer/assets/textile-BnFpjsrl.js +0 -414
  179. package/out/renderer/assets/tiddlywiki-CjprD-Qp.js +0 -218
  180. package/out/renderer/assets/tiki-DK9DOeWn.js +0 -268
  181. package/out/renderer/assets/toml-BOuWGMcf.js +0 -76
  182. package/out/renderer/assets/troff-E1bJ0PPL.js +0 -61
  183. package/out/renderer/assets/ttcn-cfg-Dc39-fIP.js +0 -133
  184. package/out/renderer/assets/ttcn-tKd4HLu4.js +0 -192
  185. package/out/renderer/assets/turtle-Dq7-1WAf.js +0 -124
  186. package/out/renderer/assets/vb-Dp90gtsv.js +0 -196
  187. package/out/renderer/assets/vbscript-CI6_mxxU.js +0 -479
  188. package/out/renderer/assets/velocity-BwIZK1TH.js +0 -149
  189. package/out/renderer/assets/verilog-DDCYnHN8.js +0 -430
  190. package/out/renderer/assets/vhdl-DCkMIyT9.js +0 -158
  191. package/out/renderer/assets/webidl-BTLTThCm.js +0 -204
  192. package/out/renderer/assets/xquery-BrBUuxMR.js +0 -525
  193. package/out/renderer/assets/yacas-b5lAVEIl.js +0 -130
  194. package/out/renderer/assets/z80-BZV19vqv.js +0 -93
  195. package/scripts/download-uv.mjs +0 -147
  196. /package/patches/{ai+5.0.161.patch → ai+5.0.167.patch} +0 -0
@@ -1,430 +0,0 @@
1
- function mkVerilog(parserConfig) {
2
- var statementIndentUnit = parserConfig.statementIndentUnit, dontAlignCalls = parserConfig.dontAlignCalls, noIndentKeywords = parserConfig.noIndentKeywords || [], multiLineStrings = parserConfig.multiLineStrings, hooks = parserConfig.hooks || {};
3
- function words(str) {
4
- var obj = {}, words2 = str.split(" ");
5
- for (var i2 = 0; i2 < words2.length; ++i2) obj[words2[i2]] = true;
6
- return obj;
7
- }
8
- var keywords = words(
9
- "accept_on alias always always_comb always_ff always_latch and assert assign assume automatic before begin bind bins binsof bit break buf bufif0 bufif1 byte case casex casez cell chandle checker class clocking cmos config const constraint context continue cover covergroup coverpoint cross deassign default defparam design disable dist do edge else end endcase endchecker endclass endclocking endconfig endfunction endgenerate endgroup endinterface endmodule endpackage endprimitive endprogram endproperty endspecify endsequence endtable endtask enum event eventually expect export extends extern final first_match for force foreach forever fork forkjoin function generate genvar global highz0 highz1 if iff ifnone ignore_bins illegal_bins implements implies import incdir include initial inout input inside instance int integer interconnect interface intersect join join_any join_none large let liblist library local localparam logic longint macromodule matches medium modport module nand negedge nettype new nexttime nmos nor noshowcancelled not notif0 notif1 null or output package packed parameter pmos posedge primitive priority program property protected pull0 pull1 pulldown pullup pulsestyle_ondetect pulsestyle_onevent pure rand randc randcase randsequence rcmos real realtime ref reg reject_on release repeat restrict return rnmos rpmos rtran rtranif0 rtranif1 s_always s_eventually s_nexttime s_until s_until_with scalared sequence shortint shortreal showcancelled signed small soft solve specify specparam static string strong strong0 strong1 struct super supply0 supply1 sync_accept_on sync_reject_on table tagged task this throughout time timeprecision timeunit tran tranif0 tranif1 tri tri0 tri1 triand trior trireg type typedef union unique unique0 unsigned until until_with untyped use uwire var vectored virtual void wait wait_order wand weak weak0 weak1 while wildcard wire with within wor xnor xor"
10
- );
11
- var isOperatorChar = /[\+\-\*\/!~&|^%=?:]/;
12
- var isBracketChar = /[\[\]{}()]/;
13
- var unsignedNumber = /\d[0-9_]*/;
14
- var decimalLiteral = /\d*\s*'s?d\s*\d[0-9_]*/i;
15
- var binaryLiteral = /\d*\s*'s?b\s*[xz01][xz01_]*/i;
16
- var octLiteral = /\d*\s*'s?o\s*[xz0-7][xz0-7_]*/i;
17
- var hexLiteral = /\d*\s*'s?h\s*[0-9a-fxz?][0-9a-fxz?_]*/i;
18
- var realLiteral = /(\d[\d_]*(\.\d[\d_]*)?E-?[\d_]+)|(\d[\d_]*\.\d[\d_]*)/i;
19
- var closingBracketOrWord = /^((\w+)|[)}\]])/;
20
- var closingBracket = /[)}\]]/;
21
- var curPunc;
22
- var curKeyword;
23
- var blockKeywords = words(
24
- "case checker class clocking config function generate interface module package primitive program property specify sequence table task"
25
- );
26
- var openClose = {};
27
- for (var keyword in blockKeywords) {
28
- openClose[keyword] = "end" + keyword;
29
- }
30
- openClose["begin"] = "end";
31
- openClose["casex"] = "endcase";
32
- openClose["casez"] = "endcase";
33
- openClose["do"] = "while";
34
- openClose["fork"] = "join;join_any;join_none";
35
- openClose["covergroup"] = "endgroup";
36
- for (var i in noIndentKeywords) {
37
- var keyword = noIndentKeywords[i];
38
- if (openClose[keyword]) {
39
- openClose[keyword] = void 0;
40
- }
41
- }
42
- var statementKeywords = words("always always_comb always_ff always_latch assert assign assume else export for foreach forever if import initial repeat while");
43
- function tokenBase(stream, state) {
44
- var ch = stream.peek(), style;
45
- if (hooks[ch] && (style = hooks[ch](stream, state)) != false) return style;
46
- if (hooks.tokenBase && (style = hooks.tokenBase(stream, state)) != false)
47
- return style;
48
- if (/[,;:\.]/.test(ch)) {
49
- curPunc = stream.next();
50
- return null;
51
- }
52
- if (isBracketChar.test(ch)) {
53
- curPunc = stream.next();
54
- return "bracket";
55
- }
56
- if (ch == "`") {
57
- stream.next();
58
- if (stream.eatWhile(/[\w\$_]/)) {
59
- return "def";
60
- } else {
61
- return null;
62
- }
63
- }
64
- if (ch == "$") {
65
- stream.next();
66
- if (stream.eatWhile(/[\w\$_]/)) {
67
- return "meta";
68
- } else {
69
- return null;
70
- }
71
- }
72
- if (ch == "#") {
73
- stream.next();
74
- stream.eatWhile(/[\d_.]/);
75
- return "def";
76
- }
77
- if (ch == '"') {
78
- stream.next();
79
- state.tokenize = tokenString(ch);
80
- return state.tokenize(stream, state);
81
- }
82
- if (ch == "/") {
83
- stream.next();
84
- if (stream.eat("*")) {
85
- state.tokenize = tokenComment;
86
- return tokenComment(stream, state);
87
- }
88
- if (stream.eat("/")) {
89
- stream.skipToEnd();
90
- return "comment";
91
- }
92
- stream.backUp(1);
93
- }
94
- if (stream.match(realLiteral) || stream.match(decimalLiteral) || stream.match(binaryLiteral) || stream.match(octLiteral) || stream.match(hexLiteral) || stream.match(unsignedNumber) || stream.match(realLiteral)) {
95
- return "number";
96
- }
97
- if (stream.eatWhile(isOperatorChar)) {
98
- return "meta";
99
- }
100
- if (stream.eatWhile(/[\w\$_]/)) {
101
- var cur = stream.current();
102
- if (keywords[cur]) {
103
- if (openClose[cur]) {
104
- curPunc = "newblock";
105
- }
106
- if (statementKeywords[cur]) {
107
- curPunc = "newstatement";
108
- }
109
- curKeyword = cur;
110
- return "keyword";
111
- }
112
- return "variable";
113
- }
114
- stream.next();
115
- return null;
116
- }
117
- function tokenString(quote) {
118
- return function(stream, state) {
119
- var escaped = false, next, end = false;
120
- while ((next = stream.next()) != null) {
121
- if (next == quote && !escaped) {
122
- end = true;
123
- break;
124
- }
125
- escaped = !escaped && next == "\\";
126
- }
127
- if (end || !(escaped || multiLineStrings))
128
- state.tokenize = tokenBase;
129
- return "string";
130
- };
131
- }
132
- function tokenComment(stream, state) {
133
- var maybeEnd = false, ch;
134
- while (ch = stream.next()) {
135
- if (ch == "/" && maybeEnd) {
136
- state.tokenize = tokenBase;
137
- break;
138
- }
139
- maybeEnd = ch == "*";
140
- }
141
- return "comment";
142
- }
143
- function Context(indented, column, type, align, prev) {
144
- this.indented = indented;
145
- this.column = column;
146
- this.type = type;
147
- this.align = align;
148
- this.prev = prev;
149
- }
150
- function pushContext(state, col, type) {
151
- var indent = state.indented;
152
- var c = new Context(indent, col, type, null, state.context);
153
- return state.context = c;
154
- }
155
- function popContext(state) {
156
- var t = state.context.type;
157
- if (t == ")" || t == "]" || t == "}") {
158
- state.indented = state.context.indented;
159
- }
160
- return state.context = state.context.prev;
161
- }
162
- function isClosing(text, contextClosing) {
163
- if (text == contextClosing) {
164
- return true;
165
- } else {
166
- var closingKeywords = contextClosing.split(";");
167
- for (var i2 in closingKeywords) {
168
- if (text == closingKeywords[i2]) {
169
- return true;
170
- }
171
- }
172
- return false;
173
- }
174
- }
175
- function buildElectricInputRegEx() {
176
- var allClosings = [];
177
- for (var i2 in openClose) {
178
- if (openClose[i2]) {
179
- var closings = openClose[i2].split(";");
180
- for (var j in closings) {
181
- allClosings.push(closings[j]);
182
- }
183
- }
184
- }
185
- var re = new RegExp("[{}()\\[\\]]|(" + allClosings.join("|") + ")$");
186
- return re;
187
- }
188
- return {
189
- name: "verilog",
190
- startState: function(indentUnit) {
191
- var state = {
192
- tokenize: null,
193
- context: new Context(-indentUnit, 0, "top", false),
194
- indented: 0,
195
- startOfLine: true
196
- };
197
- if (hooks.startState) hooks.startState(state);
198
- return state;
199
- },
200
- token: function(stream, state) {
201
- var ctx = state.context;
202
- if (stream.sol()) {
203
- if (ctx.align == null) ctx.align = false;
204
- state.indented = stream.indentation();
205
- state.startOfLine = true;
206
- }
207
- if (hooks.token) {
208
- var style = hooks.token(stream, state);
209
- if (style !== void 0) {
210
- return style;
211
- }
212
- }
213
- if (stream.eatSpace()) return null;
214
- curPunc = null;
215
- curKeyword = null;
216
- var style = (state.tokenize || tokenBase)(stream, state);
217
- if (style == "comment" || style == "meta" || style == "variable") return style;
218
- if (ctx.align == null) ctx.align = true;
219
- if (curPunc == ctx.type) {
220
- popContext(state);
221
- } else if (curPunc == ";" && ctx.type == "statement" || ctx.type && isClosing(curKeyword, ctx.type)) {
222
- ctx = popContext(state);
223
- while (ctx && ctx.type == "statement") ctx = popContext(state);
224
- } else if (curPunc == "{") {
225
- pushContext(state, stream.column(), "}");
226
- } else if (curPunc == "[") {
227
- pushContext(state, stream.column(), "]");
228
- } else if (curPunc == "(") {
229
- pushContext(state, stream.column(), ")");
230
- } else if (ctx && ctx.type == "endcase" && curPunc == ":") {
231
- pushContext(state, stream.column(), "statement");
232
- } else if (curPunc == "newstatement") {
233
- pushContext(state, stream.column(), "statement");
234
- } else if (curPunc == "newblock") {
235
- if (curKeyword == "function" && ctx && (ctx.type == "statement" || ctx.type == "endgroup")) ;
236
- else if (curKeyword == "task" && ctx && ctx.type == "statement") ;
237
- else {
238
- var close = openClose[curKeyword];
239
- pushContext(state, stream.column(), close);
240
- }
241
- }
242
- state.startOfLine = false;
243
- return style;
244
- },
245
- indent: function(state, textAfter, cx) {
246
- if (state.tokenize != tokenBase && state.tokenize != null) return null;
247
- if (hooks.indent) {
248
- var fromHook = hooks.indent(state);
249
- if (fromHook >= 0) return fromHook;
250
- }
251
- var ctx = state.context, firstChar = textAfter && textAfter.charAt(0);
252
- if (ctx.type == "statement" && firstChar == "}") ctx = ctx.prev;
253
- var closing = false;
254
- var possibleClosing = textAfter.match(closingBracketOrWord);
255
- if (possibleClosing)
256
- closing = isClosing(possibleClosing[0], ctx.type);
257
- if (ctx.type == "statement") return ctx.indented + (firstChar == "{" ? 0 : statementIndentUnit || cx.unit);
258
- else if (closingBracket.test(ctx.type) && ctx.align && !dontAlignCalls) return ctx.column + (closing ? 0 : 1);
259
- else if (ctx.type == ")" && !closing) return ctx.indented + (statementIndentUnit || cx.unit);
260
- else return ctx.indented + (closing ? 0 : cx.unit);
261
- },
262
- languageData: {
263
- indentOnInput: buildElectricInputRegEx(),
264
- commentTokens: { line: "//", block: { open: "/*", close: "*/" } }
265
- }
266
- };
267
- }
268
- const verilog = mkVerilog({});
269
- var tlvIdentifierStyle = {
270
- "|": "link",
271
- ">": "property",
272
- // Should condition this off for > TLV 1c.
273
- "$": "variable",
274
- "$$": "variable",
275
- "?$": "qualifier",
276
- "?*": "qualifier",
277
- "-": "contentSeparator",
278
- "/": "property",
279
- "/-": "property",
280
- "@": "variableName.special",
281
- "@-": "variableName.special",
282
- "@++": "variableName.special",
283
- "@+=": "variableName.special",
284
- "@+=-": "variableName.special",
285
- "@--": "variableName.special",
286
- "@-=": "variableName.special",
287
- "%+": "tag",
288
- "%-": "tag",
289
- "%": "tag",
290
- ">>": "tag",
291
- "<<": "tag",
292
- "<>": "tag",
293
- "#": "tag",
294
- // Need to choose a style for this.
295
- "^": "attribute",
296
- "^^": "attribute",
297
- "^!": "attribute",
298
- "*": "variable",
299
- "**": "variable",
300
- "\\": "keyword",
301
- '"': "comment"
302
- };
303
- var tlvScopePrefixChars = {
304
- "/": "beh-hier",
305
- ">": "beh-hier",
306
- "-": "phys-hier",
307
- "|": "pipe",
308
- "?": "when",
309
- "@": "stage",
310
- "\\": "keyword"
311
- };
312
- var tlvIndentUnit = 3;
313
- var tlvIdentMatch = /^([~!@#\$%\^&\*-\+=\?\/\\\|'"<>]+)([\d\w_]*)/;
314
- var tlvLineIndentationMatch = /^[! ] */;
315
- var tlvCommentMatch = /^\/[\/\*]/;
316
- const tlv = mkVerilog({
317
- hooks: {
318
- electricInput: false,
319
- // Return undefined for verilog tokenizing, or style for TLV token (null not used).
320
- // Standard CM styles are used for most formatting, but some TL-Verilog-specific highlighting
321
- // can be enabled with the definition of cm-tlv-* styles, including highlighting for:
322
- // - M4 tokens
323
- // - TLV scope indentation
324
- // - Statement delimitation (enabled by tlvTrackStatements)
325
- token: function(stream, state) {
326
- var style = void 0;
327
- var match;
328
- if (stream.sol() && !state.tlvInBlockComment) {
329
- if (stream.peek() == "\\") {
330
- style = "def";
331
- stream.skipToEnd();
332
- if (stream.string.match(/\\SV/)) {
333
- state.tlvCodeActive = false;
334
- } else if (stream.string.match(/\\TLV/)) {
335
- state.tlvCodeActive = true;
336
- }
337
- }
338
- if (state.tlvCodeActive && stream.pos == 0 && state.indented == 0 && (match = stream.match(tlvLineIndentationMatch, false))) {
339
- state.indented = match[0].length;
340
- }
341
- var indented = state.indented;
342
- var depth = indented / tlvIndentUnit;
343
- if (depth <= state.tlvIndentationStyle.length) {
344
- var blankline = stream.string.length == indented;
345
- var chPos = depth * tlvIndentUnit;
346
- if (chPos < stream.string.length) {
347
- var bodyString = stream.string.slice(chPos);
348
- var ch = bodyString[0];
349
- if (tlvScopePrefixChars[ch] && ((match = bodyString.match(tlvIdentMatch)) && tlvIdentifierStyle[match[1]])) {
350
- indented += tlvIndentUnit;
351
- if (!(ch == "\\" && chPos > 0)) {
352
- state.tlvIndentationStyle[depth] = tlvScopePrefixChars[ch];
353
- depth++;
354
- }
355
- }
356
- }
357
- if (!blankline) {
358
- while (state.tlvIndentationStyle.length > depth) {
359
- state.tlvIndentationStyle.pop();
360
- }
361
- }
362
- }
363
- state.tlvNextIndent = indented;
364
- }
365
- if (state.tlvCodeActive) {
366
- var match;
367
- if (style !== void 0) ;
368
- else if (state.tlvInBlockComment) {
369
- if (stream.match(/^.*?\*\//)) {
370
- state.tlvInBlockComment = false;
371
- } else {
372
- stream.skipToEnd();
373
- }
374
- style = "comment";
375
- } else if ((match = stream.match(tlvCommentMatch)) && !state.tlvInBlockComment) {
376
- if (match[0] == "//") {
377
- stream.skipToEnd();
378
- } else {
379
- state.tlvInBlockComment = true;
380
- }
381
- style = "comment";
382
- } else if (match = stream.match(tlvIdentMatch)) {
383
- var prefix = match[1];
384
- var mnemonic = match[2];
385
- if (
386
- // is identifier prefix
387
- tlvIdentifierStyle.hasOwnProperty(prefix) && // has mnemonic or we're at the end of the line (maybe it hasn't been typed yet)
388
- (mnemonic.length > 0 || stream.eol())
389
- ) {
390
- style = tlvIdentifierStyle[prefix];
391
- } else {
392
- stream.backUp(stream.current().length - 1);
393
- }
394
- } else if (stream.match(/^\t+/)) {
395
- style = "invalid";
396
- } else if (stream.match(/^[\[\]{}\(\);\:]+/)) {
397
- style = "meta";
398
- } else if (match = stream.match(/^[mM]4([\+_])?[\w\d_]*/)) {
399
- style = match[1] == "+" ? "keyword.special" : "keyword";
400
- } else if (stream.match(/^ +/)) {
401
- if (stream.eol()) {
402
- style = "error";
403
- }
404
- } else if (stream.match(/^[\w\d_]+/)) {
405
- style = "number";
406
- } else {
407
- stream.next();
408
- }
409
- } else {
410
- if (stream.match(/^[mM]4([\w\d_]*)/)) {
411
- style = "keyword";
412
- }
413
- }
414
- return style;
415
- },
416
- indent: function(state) {
417
- return state.tlvCodeActive == true ? state.tlvNextIndent : -1;
418
- },
419
- startState: function(state) {
420
- state.tlvIndentationStyle = [];
421
- state.tlvCodeActive = true;
422
- state.tlvNextIndent = -1;
423
- state.tlvInBlockComment = false;
424
- }
425
- }
426
- });
427
- export {
428
- tlv,
429
- verilog
430
- };
@@ -1,158 +0,0 @@
1
- function words(str) {
2
- var obj = {}, words2 = str.split(",");
3
- for (var i = 0; i < words2.length; ++i) {
4
- var allCaps = words2[i].toUpperCase();
5
- var firstCap = words2[i].charAt(0).toUpperCase() + words2[i].slice(1);
6
- obj[words2[i]] = true;
7
- obj[allCaps] = true;
8
- obj[firstCap] = true;
9
- }
10
- return obj;
11
- }
12
- function metaHook(stream) {
13
- stream.eatWhile(/[\w\$_]/);
14
- return "meta";
15
- }
16
- var atoms = words("null"), hooks = { "`": metaHook, "$": metaHook }, multiLineStrings = false;
17
- var keywords = words("abs,access,after,alias,all,and,architecture,array,assert,attribute,begin,block,body,buffer,bus,case,component,configuration,constant,disconnect,downto,else,elsif,end,end block,end case,end component,end for,end generate,end if,end loop,end process,end record,end units,entity,exit,file,for,function,generate,generic,generic map,group,guarded,if,impure,in,inertial,inout,is,label,library,linkage,literal,loop,map,mod,nand,new,next,nor,null,of,on,open,or,others,out,package,package body,port,port map,postponed,procedure,process,pure,range,record,register,reject,rem,report,return,rol,ror,select,severity,signal,sla,sll,sra,srl,subtype,then,to,transport,type,unaffected,units,until,use,variable,wait,when,while,with,xnor,xor");
18
- var blockKeywords = words("architecture,entity,begin,case,port,else,elsif,end,for,function,if");
19
- var isOperatorChar = /[&|~><!\)\(*#%@+\/=?\:;}{,\.\^\-\[\]]/;
20
- var curPunc;
21
- function tokenBase(stream, state) {
22
- var ch = stream.next();
23
- if (hooks[ch]) {
24
- var result = hooks[ch](stream, state);
25
- if (result !== false) return result;
26
- }
27
- if (ch == '"') {
28
- state.tokenize = tokenString2(ch);
29
- return state.tokenize(stream, state);
30
- }
31
- if (ch == "'") {
32
- state.tokenize = tokenString(ch);
33
- return state.tokenize(stream, state);
34
- }
35
- if (/[\[\]{}\(\),;\:\.]/.test(ch)) {
36
- curPunc = ch;
37
- return null;
38
- }
39
- if (/[\d']/.test(ch)) {
40
- stream.eatWhile(/[\w\.']/);
41
- return "number";
42
- }
43
- if (ch == "-") {
44
- if (stream.eat("-")) {
45
- stream.skipToEnd();
46
- return "comment";
47
- }
48
- }
49
- if (isOperatorChar.test(ch)) {
50
- stream.eatWhile(isOperatorChar);
51
- return "operator";
52
- }
53
- stream.eatWhile(/[\w\$_]/);
54
- var cur = stream.current();
55
- if (keywords.propertyIsEnumerable(cur.toLowerCase())) {
56
- if (blockKeywords.propertyIsEnumerable(cur)) curPunc = "newstatement";
57
- return "keyword";
58
- }
59
- if (atoms.propertyIsEnumerable(cur)) return "atom";
60
- return "variable";
61
- }
62
- function tokenString(quote) {
63
- return function(stream, state) {
64
- var escaped = false, next, end = false;
65
- while ((next = stream.next()) != null) {
66
- if (next == quote && !escaped) {
67
- end = true;
68
- break;
69
- }
70
- escaped = !escaped && next == "--";
71
- }
72
- if (end || !(escaped || multiLineStrings))
73
- state.tokenize = tokenBase;
74
- return "string";
75
- };
76
- }
77
- function tokenString2(quote) {
78
- return function(stream, state) {
79
- var escaped = false, next, end = false;
80
- while ((next = stream.next()) != null) {
81
- if (next == quote && !escaped) {
82
- end = true;
83
- break;
84
- }
85
- escaped = !escaped && next == "--";
86
- }
87
- if (end || !(escaped || multiLineStrings))
88
- state.tokenize = tokenBase;
89
- return "string.special";
90
- };
91
- }
92
- function Context(indented, column, type, align, prev) {
93
- this.indented = indented;
94
- this.column = column;
95
- this.type = type;
96
- this.align = align;
97
- this.prev = prev;
98
- }
99
- function pushContext(state, col, type) {
100
- return state.context = new Context(state.indented, col, type, null, state.context);
101
- }
102
- function popContext(state) {
103
- var t = state.context.type;
104
- if (t == ")" || t == "]" || t == "}")
105
- state.indented = state.context.indented;
106
- return state.context = state.context.prev;
107
- }
108
- const vhdl = {
109
- name: "vhdl",
110
- startState: function(indentUnit) {
111
- return {
112
- tokenize: null,
113
- context: new Context(-indentUnit, 0, "top", false),
114
- indented: 0,
115
- startOfLine: true
116
- };
117
- },
118
- token: function(stream, state) {
119
- var ctx = state.context;
120
- if (stream.sol()) {
121
- if (ctx.align == null) ctx.align = false;
122
- state.indented = stream.indentation();
123
- state.startOfLine = true;
124
- }
125
- if (stream.eatSpace()) return null;
126
- curPunc = null;
127
- var style = (state.tokenize || tokenBase)(stream, state);
128
- if (style == "comment" || style == "meta") return style;
129
- if (ctx.align == null) ctx.align = true;
130
- if ((curPunc == ";" || curPunc == ":") && ctx.type == "statement") popContext(state);
131
- else if (curPunc == "{") pushContext(state, stream.column(), "}");
132
- else if (curPunc == "[") pushContext(state, stream.column(), "]");
133
- else if (curPunc == "(") pushContext(state, stream.column(), ")");
134
- else if (curPunc == "}") {
135
- while (ctx.type == "statement") ctx = popContext(state);
136
- if (ctx.type == "}") ctx = popContext(state);
137
- while (ctx.type == "statement") ctx = popContext(state);
138
- } else if (curPunc == ctx.type) popContext(state);
139
- else if (ctx.type == "}" || ctx.type == "top" || ctx.type == "statement" && curPunc == "newstatement")
140
- pushContext(state, stream.column(), "statement");
141
- state.startOfLine = false;
142
- return style;
143
- },
144
- indent: function(state, textAfter, cx) {
145
- if (state.tokenize != tokenBase && state.tokenize != null) return 0;
146
- var firstChar = textAfter && textAfter.charAt(0), ctx = state.context, closing = firstChar == ctx.type;
147
- if (ctx.type == "statement") return ctx.indented + (firstChar == "{" ? 0 : cx.unit);
148
- else if (ctx.align) return ctx.column + (closing ? 0 : 1);
149
- else return ctx.indented + (closing ? 0 : cx.unit);
150
- },
151
- languageData: {
152
- indentOnInput: /^\s*[{}]$/,
153
- commentTokens: { line: "--" }
154
- }
155
- };
156
- export {
157
- vhdl
158
- };