owndesign 0.1.12 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/server/index.js +88 -57
  3. package/dist/server/prompts/agents/component-audit.md +1 -1
  4. package/dist/web/assets/{angular-html-CFs7eovz.js → angular-html-BC-ehZ2Z.js} +1 -1
  5. package/dist/web/assets/{angular-ts-CEaZRH8K.js → angular-ts-CbNdIQVH.js} +1 -1
  6. package/dist/web/assets/{apl-BtwP9-yi.js → apl-CKXIPXmN.js} +1 -1
  7. package/dist/web/assets/{arc-BKgXct_K.js → arc-DCbsmfyT.js} +1 -1
  8. package/dist/web/assets/architecture-7EHR7CIX-Dy_x80xD.js +1 -0
  9. package/dist/web/assets/{architectureDiagram-3BPJPVTR-tBs4y1LK.js → architectureDiagram-3BPJPVTR-C3CSEDbb.js} +1 -1
  10. package/dist/web/assets/{astro-DGOoXofX.js → astro-0YgDtFyB.js} +1 -1
  11. package/dist/web/assets/{blade-CvIhqJHQ.js → blade-DCBz6o9i.js} +1 -1
  12. package/dist/web/assets/{blockDiagram-GPEHLZMM-Dbmmdxse.js → blockDiagram-GPEHLZMM-Wy4mtab2.js} +1 -1
  13. package/dist/web/assets/{c-cYQPp2_G.js → c-B_5YfUT4.js} +1 -1
  14. package/dist/web/assets/{c4Diagram-AAUBKEIU-CSrU4RnA.js → c4Diagram-AAUBKEIU-DvAQK-yr.js} +1 -1
  15. package/dist/web/assets/channel-CNy21oVR.js +1 -0
  16. package/dist/web/assets/{chunk-2J33WTMH-Cs-XMScI.js → chunk-2J33WTMH-D12BmulM.js} +1 -1
  17. package/dist/web/assets/{chunk-4BX2VUAB-B4ieHaCd.js → chunk-4BX2VUAB-CUsT6Yoy.js} +1 -1
  18. package/dist/web/assets/{chunk-55IACEB6-CgnoAb5q.js → chunk-55IACEB6-B1fNBh7K.js} +1 -1
  19. package/dist/web/assets/{chunk-727SXJPM-wPBSQiFA.js → chunk-727SXJPM-BNwBLitG.js} +1 -1
  20. package/dist/web/assets/{chunk-AQP2D5EJ-CqrJNLOk.js → chunk-AQP2D5EJ-Cj6w8RRN.js} +1 -1
  21. package/dist/web/assets/{chunk-FMBD7UC4-_mUgb7S8.js → chunk-FMBD7UC4-DZQMeOiP.js} +1 -1
  22. package/dist/web/assets/{chunk-ND2GUHAM-C3VW7Cve.js → chunk-ND2GUHAM-BDZZZpgK.js} +1 -1
  23. package/dist/web/assets/chunk-QZHKN3VN-ZvBMuvS3.js +1 -0
  24. package/dist/web/assets/classDiagram-4FO5ZUOK-CdVQzF3q.js +1 -0
  25. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-CdVQzF3q.js +1 -0
  26. package/dist/web/assets/{cobol-CT20AbWb.js → cobol-B7rjWy71.js} +1 -1
  27. package/dist/web/assets/{coffee-0rJcXjl9.js → coffee-327Z21kX.js} +1 -1
  28. package/dist/web/assets/{cose-bilkent-S5V4N54A-DuQ1yFPA.js → cose-bilkent-S5V4N54A-D1c4YrLP.js} +1 -1
  29. package/dist/web/assets/{cpp-D5SbIIZY.js → cpp-76QBVYPh.js} +1 -1
  30. package/dist/web/assets/{crystal-Cj4TXi57.js → crystal-B4heXbZm.js} +1 -1
  31. package/dist/web/assets/{css-DtnxUqP8.js → css-CzEdf7OR.js} +1 -1
  32. package/dist/web/assets/{dagre-BM42HDAG-BqRbkxFR.js → dagre-BM42HDAG-ET87-tzF.js} +1 -1
  33. package/dist/web/assets/{diagram-2AECGRRQ-CK-zBvhd.js → diagram-2AECGRRQ-CBQXEPqZ.js} +1 -1
  34. package/dist/web/assets/{diagram-5GNKFQAL-DtRurQ3W.js → diagram-5GNKFQAL-CtNzeaR4.js} +1 -1
  35. package/dist/web/assets/{diagram-KO2AKTUF-C98kWomB.js → diagram-KO2AKTUF-DKv9ewpj.js} +1 -1
  36. package/dist/web/assets/{diagram-LMA3HP47-Bnl8AVAT.js → diagram-LMA3HP47-BdL7Q4hm.js} +1 -1
  37. package/dist/web/assets/{diagram-OG6HWLK6-CdsMzW4t.js → diagram-OG6HWLK6-BTYYRviK.js} +1 -1
  38. package/dist/web/assets/{edge-CWJ2-CvL.js → edge-CbifZx89.js} +1 -1
  39. package/dist/web/assets/{elixir-9WOcqFnG.js → elixir-D7epo7XU.js} +1 -1
  40. package/dist/web/assets/{elm-fLyiEogZ.js → elm-CDnfHiSW.js} +1 -1
  41. package/dist/web/assets/{erDiagram-TEJ5UH35-D9WhFUc7.js → erDiagram-TEJ5UH35-DoS_g6rc.js} +1 -1
  42. package/dist/web/assets/{erb-E2w2Wuk4.js → erb-CJPDtktp.js} +1 -1
  43. package/dist/web/assets/eventmodeling-FCH6USID-dHNYNvhr.js +1 -0
  44. package/dist/web/assets/{flowDiagram-I6XJVG4X-C70nakMA.js → flowDiagram-I6XJVG4X-INqAi_9A.js} +1 -1
  45. package/dist/web/assets/{ganttDiagram-6RSMTGT7-CP5KBfFN.js → ganttDiagram-6RSMTGT7-BtV9RfaV.js} +1 -1
  46. package/dist/web/assets/{git-rebase-x3KRtncF.js → git-rebase-XN1VAGxD.js} +1 -1
  47. package/dist/web/assets/gitGraph-WXDBUCRP-BTlPmENP.js +1 -0
  48. package/dist/web/assets/{gitGraphDiagram-PVQCEYII-Df0FpR0s.js → gitGraphDiagram-PVQCEYII-Bg7oxgNx.js} +1 -1
  49. package/dist/web/assets/{glimmer-js-Cg54b2H9.js → glimmer-js-jAUeYMlX.js} +1 -1
  50. package/dist/web/assets/{glimmer-ts-CHG4mXcI.js → glimmer-ts-wcJbAc9L.js} +1 -1
  51. package/dist/web/assets/{glsl-D3AVHhgf.js → glsl-CqkwmhMS.js} +1 -1
  52. package/dist/web/assets/{graphql-Cid5k0bB.js → graphql-MSHUJ_J9.js} +1 -1
  53. package/dist/web/assets/{hack-CgNtiKFF.js → hack-o9VcDxFX.js} +1 -1
  54. package/dist/web/assets/{haml-zYfBQKD9.js → haml-yMII7dOY.js} +1 -1
  55. package/dist/web/assets/{handlebars-R3KEMud6.js → handlebars-DqywSDps.js} +1 -1
  56. package/dist/web/assets/{highlighted-body-OFNGDK62-DNkjspl7.js → highlighted-body-OFNGDK62-DZUhBEEf.js} +1 -1
  57. package/dist/web/assets/{html-BymHzFSR.js → html-D8D_RndX.js} +1 -1
  58. package/dist/web/assets/{html-derivative-DqaPDM9z.js → html-derivative-Db1SyKg8.js} +1 -1
  59. package/dist/web/assets/{http-BBfT1XoF.js → http-Bqs_GAGw.js} +1 -1
  60. package/dist/web/assets/{hurl-B3OMVWCB.js → hurl-j0mDeRMp.js} +1 -1
  61. package/dist/web/assets/{index-CA2dCiLp.js → index-DlSOjemg.js} +62 -62
  62. package/dist/web/assets/info-J43DQDTF-Dk_AfWti.js +1 -0
  63. package/dist/web/assets/{infoDiagram-5YYISTIA-BW4ua_Dm.js → infoDiagram-5YYISTIA-D4cmnLLV.js} +1 -1
  64. package/dist/web/assets/{ishikawaDiagram-YF4QCWOH-7YC9v2Lm.js → ishikawaDiagram-YF4QCWOH-BY9yvtJK.js} +1 -1
  65. package/dist/web/assets/{java-CHjBQof-.js → java-CegvNhLh.js} +1 -1
  66. package/dist/web/assets/{javascript-CI31Lbgw.js → javascript-DhcUAesx.js} +1 -1
  67. package/dist/web/assets/{jinja-D5rfCvml.js → jinja-BdSDD1Q-.js} +1 -1
  68. package/dist/web/assets/{jison-DVkmH2rX.js → jison-CarYqmfq.js} +1 -1
  69. package/dist/web/assets/{journeyDiagram-JHISSGLW-DrB9twlC.js → journeyDiagram-JHISSGLW-rDquyMpx.js} +1 -1
  70. package/dist/web/assets/{json-BOZlh-KA.js → json-wCF8Ai7e.js} +1 -1
  71. package/dist/web/assets/{jsx-D81bVyrd.js → jsx-Ct3LR2iE.js} +1 -1
  72. package/dist/web/assets/{julia-DOpgNe80.js → julia-Brh5r__6.js} +1 -1
  73. package/dist/web/assets/{just-0wiA6ro1.js → just-CK9u7rV8.js} +1 -1
  74. package/dist/web/assets/{kanban-definition-UN3LZRKU-DypN0DR-.js → kanban-definition-UN3LZRKU-DRY4BHuX.js} +1 -1
  75. package/dist/web/assets/{latex-C49JQz3C.js → latex-CnioxxTZ.js} +1 -1
  76. package/dist/web/assets/{linear-CmJuffWc.js → linear-DdVYArrQ.js} +1 -1
  77. package/dist/web/assets/{liquid-WcatxBvx.js → liquid-CWr27PHL.js} +1 -1
  78. package/dist/web/assets/{lua-CMfcWyy-.js → lua-BHz_f72B.js} +1 -1
  79. package/dist/web/assets/{marko-Ciurfdrp.js → marko-DYZOkg7A.js} +1 -1
  80. package/dist/web/assets/{mdc-BhPAXxoA.js → mdc-a5KQMe4S.js} +1 -1
  81. package/dist/web/assets/mermaid-GHXKKRXX-DsECfWij.js +1 -0
  82. package/dist/web/assets/{mermaid-parser.core-CzdVF1Y-.js → mermaid-parser.core-BAsHbYUQ.js} +2 -2
  83. package/dist/web/assets/{mindmap-definition-RKZ34NQL-kVoo0P1k.js → mindmap-definition-RKZ34NQL-C1ndv4OX.js} +1 -1
  84. package/dist/web/assets/{nginx-WlzShe2g.js → nginx-DYjAek21.js} +1 -1
  85. package/dist/web/assets/{nim-DhsH5P-A.js → nim-BY3DE5rh.js} +1 -1
  86. package/dist/web/assets/packet-YPE3B663-C6X9xd7B.js +1 -0
  87. package/dist/web/assets/{perl-BgiWtF5-.js → perl-Q7rsz5p8.js} +1 -1
  88. package/dist/web/assets/{php-bcRqBpZO.js → php-wkLOOMEB.js} +1 -1
  89. package/dist/web/assets/pie-LRSECV5Y-B7m9jxWQ.js +1 -0
  90. package/dist/web/assets/{pieDiagram-4H26LBE5-3G_1zLJc.js → pieDiagram-4H26LBE5-hbmKZkAo.js} +1 -1
  91. package/dist/web/assets/{pug-m8pTbPLN.js → pug-DBjGFTz6.js} +1 -1
  92. package/dist/web/assets/{qml-CJvFQ3Wa.js → qml-6JbnGGh-.js} +1 -1
  93. package/dist/web/assets/{quadrantDiagram-W4KKPZXB-B6PNPjDa.js → quadrantDiagram-W4KKPZXB-Ce3Tyy1v.js} +1 -1
  94. package/dist/web/assets/{r-BClqLKAj.js → r-CpWosUkA.js} +1 -1
  95. package/dist/web/assets/radar-GUYGQ44K-CNV--1hE.js +1 -0
  96. package/dist/web/assets/{razor-NkuRFDGJ.js → razor-VaRLosil.js} +1 -1
  97. package/dist/web/assets/{regexp-J7oxKsOx.js → regexp-BXX0dR0g.js} +1 -1
  98. package/dist/web/assets/{requirementDiagram-4Y6WPE33-uhnMTTcD.js → requirementDiagram-4Y6WPE33-BvuMdAA_.js} +1 -1
  99. package/dist/web/assets/{rst-CagZgeQR.js → rst-B5mAlZz_.js} +1 -1
  100. package/dist/web/assets/{ruby-DVMSmhqW.js → ruby-CuJVGKz0.js} +1 -1
  101. package/dist/web/assets/{sankeyDiagram-5OEKKPKP-Bl2-ZE_M.js → sankeyDiagram-5OEKKPKP-9vzIUX0R.js} +1 -1
  102. package/dist/web/assets/{sas-t3gcbp2x.js → sas-CVzjXYMr.js} +1 -1
  103. package/dist/web/assets/{scss-DiSJaDhP.js → scss-WQpgeU5g.js} +1 -1
  104. package/dist/web/assets/{sequenceDiagram-3UESZ5HK-BuqdPJ2w.js → sequenceDiagram-3UESZ5HK-q6rXjDsy.js} +1 -1
  105. package/dist/web/assets/{shellscript-DymPm4vG.js → shellscript-CycmgFgs.js} +1 -1
  106. package/dist/web/assets/{shellsession-am0AjWwV.js → shellsession-CSmahWBB.js} +1 -1
  107. package/dist/web/assets/{soy-CfnFZXe-.js → soy-E8MJKPgz.js} +1 -1
  108. package/dist/web/assets/{sql-ASrPneJi.js → sql-ChzFHxMA.js} +1 -1
  109. package/dist/web/assets/{stata-DzHpZ_Zs.js → stata-D-Voeimj.js} +1 -1
  110. package/dist/web/assets/{stateDiagram-AJRCARHV-4pzvy1EY.js → stateDiagram-AJRCARHV-QkbVYicl.js} +1 -1
  111. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-CemwCoPd.js +1 -0
  112. package/dist/web/assets/{surrealql-Daffo6Fa.js → surrealql-CDreHe5D.js} +1 -1
  113. package/dist/web/assets/{svelte-iCkXz020.js → svelte-UtC71yfS.js} +1 -1
  114. package/dist/web/assets/{templ-i0RZk0Nv.js → templ-DI5vQSP6.js} +1 -1
  115. package/dist/web/assets/{tex-CNVvk4MJ.js → tex-B1pg-O0j.js} +1 -1
  116. package/dist/web/assets/{timeline-definition-PNZ67QCA-B4vkrP31.js → timeline-definition-PNZ67QCA-hOb9CPgd.js} +1 -1
  117. package/dist/web/assets/treeView-BLDUP644-4kzz9e5T.js +1 -0
  118. package/dist/web/assets/treemap-LRROVOQU-CUGlq2kA.js +1 -0
  119. package/dist/web/assets/{ts-tags-JKlKXvrj.js → ts-tags-DDRBQd18.js} +1 -1
  120. package/dist/web/assets/{tsx-C_VV6dl3.js → tsx-BNOyqGp9.js} +1 -1
  121. package/dist/web/assets/{twig--4lENSWn.js → twig-zClWYmrr.js} +1 -1
  122. package/dist/web/assets/{typescript-DgI0Mcyp.js → typescript-Bywfx-vz.js} +1 -1
  123. package/dist/web/assets/{vennDiagram-CIIHVFJN-Bqd01Zcu.js → vennDiagram-CIIHVFJN-Cx7yBOK-.js} +1 -1
  124. package/dist/web/assets/{vue-vi4NPaCj.js → vue-Bp_voCJR.js} +1 -1
  125. package/dist/web/assets/{vue-html-DRyHp-xX.js → vue-html-C43GF5Id.js} +1 -1
  126. package/dist/web/assets/{vue-vine-Dvq5ocm8.js → vue-vine-CSRbNOMz.js} +1 -1
  127. package/dist/web/assets/wardley-L42UT6IY-NTb3kln2.js +1 -0
  128. package/dist/web/assets/{wardleyDiagram-YWT4CUSO-Cx9MIJxe.js → wardleyDiagram-YWT4CUSO-Cwiuub7b.js} +1 -1
  129. package/dist/web/assets/{xml-Bktrco2r.js → xml-rhD_p6eK.js} +1 -1
  130. package/dist/web/assets/{xsl-Buq9dfal.js → xsl-B-H8kR_6.js} +1 -1
  131. package/dist/web/assets/{xychartDiagram-2RQKCTM6-BqTFlb7h.js → xychartDiagram-2RQKCTM6-DAix_-GG.js} +1 -1
  132. package/dist/web/assets/{yaml-B_qEYHeC.js → yaml-CRIMWRGF.js} +1 -1
  133. package/dist/web/index.html +1 -1
  134. package/package.json +1 -1
  135. package/dist/web/assets/architecture-7EHR7CIX-BYKtSaOh.js +0 -1
  136. package/dist/web/assets/channel-5Xzz28Qt.js +0 -1
  137. package/dist/web/assets/chunk-QZHKN3VN-H7pvEW6k.js +0 -1
  138. package/dist/web/assets/classDiagram-4FO5ZUOK-ygdYN009.js +0 -1
  139. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-ygdYN009.js +0 -1
  140. package/dist/web/assets/eventmodeling-FCH6USID-CqqtP421.js +0 -1
  141. package/dist/web/assets/gitGraph-WXDBUCRP-2tg1GHmS.js +0 -1
  142. package/dist/web/assets/info-J43DQDTF-D4dOVjqy.js +0 -1
  143. package/dist/web/assets/mermaid-GHXKKRXX-CuYV6cEM.js +0 -1
  144. package/dist/web/assets/packet-YPE3B663-ojSC-sfx.js +0 -1
  145. package/dist/web/assets/pie-LRSECV5Y-DawZckTj.js +0 -1
  146. package/dist/web/assets/radar-GUYGQ44K-DiHIeStu.js +0 -1
  147. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-BtUsE_9v.js +0 -1
  148. package/dist/web/assets/treeView-BLDUP644-Btkd1NAS.js +0 -1
  149. package/dist/web/assets/treemap-LRROVOQU-Dz0O1QCQ.js +0 -1
  150. package/dist/web/assets/wardley-L42UT6IY-bwSYb6Fl.js +0 -1
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ async function main(argv) {
15
15
  return;
16
16
  }
17
17
  if (options === "version") {
18
- console.log("0.1.12");
18
+ console.log("0.2.0");
19
19
  return;
20
20
  }
21
21
  const cliRoot = path.dirname(fileURLToPath(import.meta.url));
@@ -56834,14 +56834,32 @@ function createDeleteToolDefinition() {
56834
56834
  }
56835
56835
 
56836
56836
  // ../core/src/agent/tools/edit.ts
56837
+ var DESCRIPTION = [
56838
+ "Performs exact string replacements in Project Workspace files.",
56839
+ "",
56840
+ "Usage:",
56841
+ "- You must use the read tool before editing an existing file so you can match the current contents exactly.",
56842
+ "- The path parameter must be a relative file path inside the Project Workspace.",
56843
+ "- When editing text from read tool output, preserve the exact indentation after the line number prefix.",
56844
+ "- The line number prefix format is `<line>: `. Everything after that prefix is the actual file content to match.",
56845
+ "- Never include any part of the line number prefix in oldString or newString.",
56846
+ "- Prefer editing existing files. Only create new files when the user request explicitly requires it.",
56847
+ "- Only use emojis if the user explicitly requests them.",
56848
+ "- The edit will fail if oldString is not found in the file.",
56849
+ "- The edit will fail if oldString is found multiple times unless replaceAll is true.",
56850
+ "- Provide more surrounding context in oldString when you need to identify one specific match.",
56851
+ "- Use replaceAll for replacing or renaming every occurrence of a string across the file."
56852
+ ].join("\n");
56837
56853
  function createEditToolDefinition() {
56838
56854
  return {
56839
- description: "Edit one UTF-8 text file by replacing oldString with newString. By default oldString must occur exactly once; set replaceAll to replace every occurrence.",
56855
+ description: DESCRIPTION,
56840
56856
  inputSchema: external_exports.object({
56841
- newString: external_exports.string().describe("Replacement text."),
56842
- oldString: external_exports.string().describe("Text to replace."),
56843
- path: external_exports.string().describe("Relative file path inside the Project Workspace."),
56844
- replaceAll: external_exports.boolean().describe("Replace every occurrence of oldString instead of requiring exactly one match.").optional()
56857
+ newString: external_exports.string().describe("Replacement text. Must be different from oldString."),
56858
+ oldString: external_exports.string().describe("Exact text to replace from the current file contents."),
56859
+ path: external_exports.string().describe("Relative file path inside the Project Workspace to modify."),
56860
+ replaceAll: external_exports.boolean().describe(
56861
+ "Replace every occurrence of oldString instead of requiring exactly one match. Default false."
56862
+ ).optional()
56845
56863
  }).strict(),
56846
56864
  name: "edit",
56847
56865
  parallelSafe: false,
@@ -56850,12 +56868,24 @@ function createEditToolDefinition() {
56850
56868
  }
56851
56869
 
56852
56870
  // ../core/src/agent/tools/glob.ts
56871
+ var DESCRIPTION2 = [
56872
+ "- Fast file pattern matching tool for the current Project Workspace.",
56873
+ '- Supports glob patterns like "**/*.html" or "assets/*.{css,js}".',
56874
+ "- Returns matching Project Workspace relative file and directory paths.",
56875
+ "- Use this tool when you need to find files by name patterns.",
56876
+ "- The optional path parameter must be a relative directory path inside the Project Workspace.",
56877
+ "- You can call multiple read, glob, and grep tools in parallel when several searches are useful."
56878
+ ].join("\n");
56853
56879
  function createGlobToolDefinition() {
56854
56880
  return {
56855
- description: "Find files and directories in the current Project Workspace by glob pattern, sorted by most recently modified first.",
56881
+ description: DESCRIPTION2,
56856
56882
  inputSchema: external_exports.object({
56857
- path: external_exports.string().describe("Optional relative directory path inside the Project Workspace to search from.").optional(),
56858
- pattern: external_exports.string().describe('Glob pattern such as "**/*.html", "assets/*.{css,js}", or "index.html".')
56883
+ path: external_exports.string().describe(
56884
+ "Optional relative directory path inside the Project Workspace to search from. Omit this field to search from the workspace root."
56885
+ ).optional(),
56886
+ pattern: external_exports.string().describe(
56887
+ 'Glob pattern to match Project Workspace files against, such as "**/*.html", "assets/*.{css,js}", or "index.html".'
56888
+ )
56859
56889
  }).strict(),
56860
56890
  name: "glob",
56861
56891
  parallelSafe: true,
@@ -56866,15 +56896,26 @@ function createGlobToolDefinition() {
56866
56896
  }
56867
56897
 
56868
56898
  // ../core/src/agent/tools/grep.ts
56899
+ var DESCRIPTION3 = [
56900
+ "- Fast content search tool for UTF-8 text files in the current Project Workspace.",
56901
+ "- Searches file contents using JavaScript regular expressions.",
56902
+ '- Supports regex patterns such as "log.*Error" or "function\\s+\\w+".',
56903
+ '- Filter files by pattern with the include parameter, such as "*.html" or "**/*.{css,js}".',
56904
+ "- Returns Project Workspace relative file paths and line numbers with matching lines.",
56905
+ "- Use this tool when you need to find files containing specific patterns.",
56906
+ "- Use a more specific path or include pattern if the result is too broad or truncated."
56907
+ ].join("\n");
56869
56908
  function createGrepToolDefinition() {
56870
56909
  return {
56871
- description: "Search UTF-8 text files in the current Project Workspace using a JavaScript regular expression.",
56910
+ description: DESCRIPTION3,
56872
56911
  inputSchema: external_exports.object({
56873
- include: external_exports.string().describe('Optional file glob to include, such as "*.html" or "**/*.{css,js}".').optional(),
56912
+ include: external_exports.string().describe(
56913
+ 'Optional Project Workspace file glob to include, such as "*.html" or "**/*.{css,js}".'
56914
+ ).optional(),
56874
56915
  path: external_exports.string().describe(
56875
- "Optional relative file or directory path inside the Project Workspace to search."
56916
+ "Optional relative file or directory path inside the Project Workspace to search. Omit this field to search the workspace root."
56876
56917
  ).optional(),
56877
- pattern: external_exports.string().describe("JavaScript regular expression pattern to search for.")
56918
+ pattern: external_exports.string().describe("JavaScript regular expression pattern to search for in file contents.")
56878
56919
  }).strict(),
56879
56920
  name: "grep",
56880
56921
  parallelSafe: true,
@@ -56887,43 +56928,6 @@ function createGrepToolDefinition() {
56887
56928
  };
56888
56929
  }
56889
56930
 
56890
- // ../core/src/agent/tools/patch.ts
56891
- function createPatchToolDefinition() {
56892
- return {
56893
- description: "Apply coordinated UTF-8 file changes inside the current Project Workspace. Supports add/write, edit, and delete changes.",
56894
- inputSchema: external_exports.object({
56895
- changes: external_exports.array(
56896
- external_exports.discriminatedUnion("operation", [
56897
- external_exports.object({
56898
- content: external_exports.string().describe("Complete file content for add operations."),
56899
- operation: external_exports.literal("add"),
56900
- path: external_exports.string().describe("Relative file or directory path inside the Project Workspace.")
56901
- }).strict(),
56902
- external_exports.object({
56903
- content: external_exports.string().describe("Complete file content for write operations."),
56904
- operation: external_exports.literal("write"),
56905
- path: external_exports.string().describe("Relative file or directory path inside the Project Workspace.")
56906
- }).strict(),
56907
- external_exports.object({
56908
- newString: external_exports.string().describe("Replacement text for edit operations."),
56909
- oldString: external_exports.string().describe("Text to replace for edit operations."),
56910
- operation: external_exports.literal("edit"),
56911
- path: external_exports.string().describe("Relative file or directory path inside the Project Workspace."),
56912
- replaceAll: external_exports.boolean().describe("For edit operations, replace every occurrence of oldString.").optional()
56913
- }).strict(),
56914
- external_exports.object({
56915
- operation: external_exports.literal("delete"),
56916
- path: external_exports.string().describe("Relative file or directory path inside the Project Workspace.")
56917
- }).strict()
56918
- ])
56919
- ).min(1)
56920
- }).strict(),
56921
- name: "patch",
56922
- parallelSafe: false,
56923
- execute: async ({ changes }, { projectId, workspaceStore }) => workspaceStore.applyProjectWorkspacePatch(projectId, changes)
56924
- };
56925
- }
56926
-
56927
56931
  // ../core/src/realtime/frontend-command-bus.ts
56928
56932
  var KEEPALIVE_INTERVAL_MS = 15e3;
56929
56933
  var FrontendCommandBus = class {
@@ -57066,9 +57070,25 @@ function createPreviewRefreshToolDefinition() {
57066
57070
  }
57067
57071
 
57068
57072
  // ../core/src/agent/tools/read.ts
57073
+ var DESCRIPTION4 = [
57074
+ "Read a file or directory from the current Project Workspace. If the path does not exist, an error is returned.",
57075
+ "",
57076
+ "Usage:",
57077
+ "- The path parameter must be a relative file or directory path inside the Project Workspace.",
57078
+ "- By default, this tool returns up to 2000 lines or directory entries from the start of the target.",
57079
+ "- The offset parameter is the line number or directory-entry number to start from (1-indexed).",
57080
+ "- To read later sections, call this tool again with a larger offset.",
57081
+ "- Use the grep tool to find specific content in large files or files with long lines.",
57082
+ "- If you are unsure of the correct path, use the glob tool to look up filenames by glob pattern.",
57083
+ "- File contents are returned with each line prefixed by its line number as `<line>: <content>`.",
57084
+ "- Directory entries are returned as Project Workspace relative paths.",
57085
+ "- Long lines and large files may be truncated. Use offset and limit to inspect the needed section.",
57086
+ "- Call this tool in parallel when you know there are multiple files you want to read.",
57087
+ "- Avoid tiny repeated slices. If you need more context, read a larger window."
57088
+ ].join("\n");
57069
57089
  function createReadToolDefinition() {
57070
57090
  return {
57071
- description: "Read one UTF-8 file or directory from the current Project Workspace. Files are returned with 1-indexed line numbers.",
57091
+ description: DESCRIPTION4,
57072
57092
  inputSchema: external_exports.object({
57073
57093
  limit: external_exports.number().describe("Maximum number of lines or directory entries to read. Defaults to 2000.").optional(),
57074
57094
  offset: external_exports.number().describe(
@@ -57088,12 +57108,24 @@ function createReadToolDefinition() {
57088
57108
  }
57089
57109
 
57090
57110
  // ../core/src/agent/tools/write.ts
57111
+ var DESCRIPTION5 = [
57112
+ "Writes a file in the current Project Workspace.",
57113
+ "",
57114
+ "Usage:",
57115
+ "- This tool will overwrite the existing file if there is one at the provided path.",
57116
+ "- The path parameter must be a relative file path inside the Project Workspace.",
57117
+ "- If this is an existing file, you must use the read tool first to read the file contents.",
57118
+ "- Prefer editing existing files with the edit tool. Only write full files when intentional.",
57119
+ "- Do not use write to create the initial index.html; use createHtml first.",
57120
+ "- Never proactively create documentation files (*.md) or README files. Only create documentation files if explicitly requested by the user.",
57121
+ "- Only use emojis if the user explicitly requests them."
57122
+ ].join("\n");
57091
57123
  function createWriteToolDefinition() {
57092
57124
  return {
57093
- description: "Create or overwrite one UTF-8 text file in the current Project Workspace.",
57125
+ description: DESCRIPTION5,
57094
57126
  inputSchema: external_exports.object({
57095
- content: external_exports.string().describe("Complete UTF-8 text file content."),
57096
- path: external_exports.string().describe("Relative file path inside the Project Workspace.")
57127
+ content: external_exports.string().describe("Complete UTF-8 text file content to write."),
57128
+ path: external_exports.string().describe("Relative file path inside the Project Workspace to create or overwrite.")
57097
57129
  }).strict(),
57098
57130
  name: "write",
57099
57131
  parallelSafe: false,
@@ -57110,7 +57142,6 @@ function createProjectWorkspaceToolDefinitions() {
57110
57142
  createEditToolDefinition(),
57111
57143
  createGlobToolDefinition(),
57112
57144
  createGrepToolDefinition(),
57113
- createPatchToolDefinition(),
57114
57145
  createPreviewRefreshToolDefinition(),
57115
57146
  createReadToolDefinition(),
57116
57147
  createWriteToolDefinition()
@@ -57179,7 +57210,7 @@ function buildFrontendCapabilityPrompt() {
57179
57210
  }
57180
57211
 
57181
57212
  // ../core/src/agent/design-page-agent.ts
57182
- var DESIGN_PAGE_AGENT_PROMPT_VERSION = 1;
57213
+ var DESIGN_PAGE_AGENT_PROMPT_VERSION = 2;
57183
57214
  var AiSdkDesignPageAgent = class {
57184
57215
  constructor(workspaceStore) {
57185
57216
  this.workspaceStore = workspaceStore;
@@ -57386,7 +57417,6 @@ function buildToolWorkflowPrompt() {
57386
57417
  "Choose tools by intent:",
57387
57418
  "- Use `createHtml` only to create a missing `index.html` file.",
57388
57419
  "- Use `edit` for small, focused replacements in one existing file.",
57389
- "- Use `patch` for coordinated changes or repeated replacements.",
57390
57420
  "- Use `write` only for deliberate full-file replacement of `index.html`.",
57391
57421
  "- Do not use `write` to create the initial `index.html`; use `createHtml` first.",
57392
57422
  "- Use `copyFile` only when the current user message explicitly asks you to duplicate an existing file.",
@@ -57397,7 +57427,8 @@ function buildToolWorkflowPrompt() {
57397
57427
  "- When `index.html` exists, read it before editing and do not call `createHtml`.",
57398
57428
  "",
57399
57429
  "Recover from tool failures:",
57400
- "- If an edit fails, read the file again and retry with a smaller edit or patch.",
57430
+ "- If an edit fails, read the file again and retry with a smaller, exact edit.",
57431
+ "- If repeated focused edits would be more fragile than replacing the file, use `write` for an intentional full-file replacement.",
57401
57432
  "- If a generated prototype becomes too large or brittle, simplify the file while preserving visible quality."
57402
57433
  ].join("\n");
57403
57434
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  You are a read-only design consistency auditor for OwnDesign HTML workspaces.
4
4
  Inspect the final workspace state after the main design agent finishes a user task.
5
- Use only read, glob, and grep tools. Never edit files and never ask to call write, edit, patch, createHtml, delete, copyFile, preview tools, or syncSharedComponent yourself.
5
+ Use only read, glob, and grep tools. Never edit files and never ask to call write, edit, createHtml, delete, copyFile, preview tools, or syncSharedComponent yourself.
6
6
 
7
7
  Return JSON only with this shape:
8
8
  {"passed": boolean, "findings": [{"type": string, "severity": "high" | "medium" | "low", "message": string, "path"?: string, "recommendedAction"?: string}], "summary": string}
@@ -1 +1 @@
1
- import{Bn as e}from"./index-CA2dCiLp.js";import{t}from"./html-BymHzFSR.js";var n=[Object.freeze(JSON.parse('{"injectionSelector":"L:text.html -comment","name":"angular-expression","patterns":[{"include":"#ngExpression"}],"repository":{"arrayLiteral":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"booleanLiteral":{"patterns":[{"match":"(?<![$.])\\\\btrue\\\\b(?!\\\\$)","name":"constant.language.boolean.true.ts"},{"match":"(?<![$.])\\\\bfalse\\\\b(?!\\\\$)","name":"constant.language.boolean.false.ts"}]},"expressionOperator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"entity.name.function.pipe.ng"}},"match":"((?<!\\\\|)\\\\|(?!\\\\|))\\\\s?([-$0-9A-Z_a-z]*)"},{"match":"(?<![$.])\\\\b(let)\\\\b(?!\\\\$)","name":"storage.type.ts"},{"match":"(?<![$.])\\\\b(await)\\\\b(?!\\\\$)","name":"keyword.control.flow.ts"},{"match":"(?<![$.])\\\\bdelete\\\\b(?!\\\\$)","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![$.])\\\\bin\\\\b(?!\\\\$)","name":"keyword.operator.expression.in.ts"},{"match":"(?<![$.])\\\\bof\\\\b(?!\\\\$)","name":"keyword.operator.expression.of.ts"},{"match":"(?<![$.])\\\\bif\\\\b(?!\\\\$)","name":"keyword.control.if.ts"},{"match":"(?<![$.])\\\\belse\\\\b(?!\\\\$)","name":"keyword.control.else.ts"},{"match":"(?<![$.])\\\\bthen\\\\b(?!\\\\$)","name":"keyword.control.then.ts"},{"match":"(?<![$.])\\\\binstanceof\\\\b(?!\\\\$)","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![$.])\\\\bnew\\\\b(?!\\\\$)","name":"keyword.operator.new.ts"},{"match":"(?<![$.])\\\\bvoid\\\\b(?!\\\\$)","name":"keyword.operator.expression.void.ts"},{"begin":"(?<![$.])\\\\bas\\\\b(?!\\\\$)","beginCaptures":{"0":{"name":"storage.type.as.ts"}},"end":"(?=$|[]\\"\'),:;}])","patterns":[{"include":"#type"}]},{"match":"(?:\\\\*|(?<!\\\\()/|[-%+])=","name":"keyword.operator.assignment.compound.ts"},{"match":"(?:[\\\\&^]|<<|>>>??|\\\\|)=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>?","name":"keyword.operator.bitwise.shift.ts"},{"match":"[!=]==?","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|[<>]","name":"keyword.operator.relational.ts"},{"match":"!|&&|\\\\?\\\\?|\\\\|\\\\|","name":"keyword.operator.logical.ts"},{"match":"[\\\\&^|~]","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.ts"},{"captures":{"1":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[$_[:alnum:]])\\\\s*(/)(?![*/])"},{"include":"#typeofOperator"}]},"functionCall":{"begin":"(?=(\\\\??\\\\.\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","end":"(?<=\\\\))(?!(\\\\??\\\\.\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","patterns":[{"match":"\\\\?","name":"punctuation.accessor.ts"},{"match":"\\\\.","name":"punctuation.accessor.ts"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.ts"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},{"include":"#parenExpression"}]},"functionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#decorator"},{"include":"#parameterName"},{"include":"#variableInitializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"match":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.object.property.ts"},"3":{"name":"variable.other.object.property.ts"}},"match":"([!?]?\\\\.)\\\\s*(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"entity.name.function.ts"}},"match":"(?:([!?]?\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.property.ts"}},"match":"([!?]?\\\\.)\\\\s*(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"variable.other.property.ts"}},"match":"([!?]?\\\\.)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"constant.other.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)"},{"match":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])","name":"constant.character.other"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"literal":{"name":"literal.ts","patterns":[{"include":"#numericLiteral"},{"include":"#booleanLiteral"},{"include":"#nullLiteral"},{"include":"#undefinedLiteral"},{"include":"#numericConstantLiteral"},{"include":"#arrayLiteral"},{"include":"#thisLiteral"}]},"ngExpression":{"name":"meta.expression.ng","patterns":[{"include":"#string"},{"include":"#literal"},{"include":"#ternaryExpression"},{"include":"#expressionOperator"},{"include":"#functionCall"},{"include":"#identifiers"},{"include":"#parenExpression"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"},{"include":"#punctuationAccessor"}]},"nullLiteral":{"match":"(?<![$.])\\\\bnull\\\\b(?!\\\\$)","name":"constant.language.null.ts"},"numericConstantLiteral":{"patterns":[{"match":"(?<![$.])\\\\bNaN\\\\b(?!\\\\$)","name":"constant.language.nan.ts"},{"match":"(?<![$.])\\\\bInfinity\\\\b(?!\\\\$)","name":"constant.language.infinity.ts"}]},"numericLiteral":{"patterns":[{"match":"\\\\b(?<!\\\\$)0([Xx])\\\\h+\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"match":"\\\\b(?<!\\\\$)0([Bb])[01]+\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"match":"\\\\\\\\b(?<!\\\\$)0([Oo])?[0-7]+\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"meta.delimiter.decimal.period.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"meta.delimiter.decimal.period.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"meta.delimiter.decimal.period.ts"}},"match":"(?<!\\\\$)(?:\\\\b[0-9]+(\\\\.)[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+(\\\\.)[Ee][-+]?[0-9]+\\\\b|\\\\B(\\\\.)[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+(\\\\.)\\\\B|\\\\B(\\\\.)[0-9]+\\\\b|\\\\b[0-9]+\\\\b(?!\\\\.))(?!\\\\$)"}]},"parameterName":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<![:=])([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<![:=])([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\??)"}]},"parenExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"punctuationAccessor":{"match":"(?:\\\\?|!?)\\\\.","name":"punctuation.accessor.ts"},"punctuationComma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuationSemicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstringDouble":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#stringCharacterEscape"}]},"qstringSingle":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\')|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#stringCharacterEscape"}]},"string":{"patterns":[{"include":"#qstringSingle"},{"include":"#qstringDouble"},{"include":"#templateLiteral"}]},"stringCharacterEscape":{"match":"\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"templateLiteral":{"patterns":[{"include":"#templateLiteralCall"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#templateLiteralSubstitutionElement"},{"include":"#stringCharacterEscape"}]}]},"templateLiteralCall":{"patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#typeArguments"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#typeArguments"}]}]},"templateLiteralSubstitutionElement":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#ngExpression"}]},"ternaryExpression":{"begin":"(?!\\\\?\\\\.\\\\s*\\\\D)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#ngExpression"}]},"thisLiteral":{"match":"(?<![$.])\\\\bthis\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"name":"meta.type.ts","patterns":[{"include":"#string"},{"include":"#numericLiteral"},{"include":"#typeBuiltinLiterals"},{"include":"#typeTuple"},{"include":"#typeObject"},{"include":"#typeOperators"},{"include":"#typeFnTypeParameters"},{"include":"#typeParenOrFunctionParameters"},{"include":"#typeName"}]},"typeAnnotation":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=$|[]),;}]|//|\\")|(?==[^>])|(?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},"typeArguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#typeArgumentsBody"}]},"typeArgumentsBody":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuationComma"}]},"typeBuiltinLiterals":{"match":"(?<![$.])\\\\b(this|true|false|undefined|null)\\\\b(?!\\\\$)","name":"support.type.builtin.ts"},"typeFnTypeParameters":{"patterns":[{"captures":{"1":{"name":"keyword.control.new.ts"}},"match":"(?<![$.])\\\\b(new)\\\\b(?=\\\\s*<)","name":"meta.type.constructor.ts"},{"begin":"(?<![$.])\\\\b(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"(?<=>)\\\\s*(?=\\\\()","end":"(?<=\\\\))","include":"#typeofOperator","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"((?=\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]}]},"typeName":{"patterns":[{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*([!?]?\\\\.)"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"entity.name.type.ts"}]},"typeObject":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#typeObjectMembers"}]},"typeObjectMembers":{"patterns":[{"include":"#typeAnnotation"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"}]},"typeOperators":{"patterns":[{"include":"#typeofOperator"},{"match":"[\\\\&|]","name":"keyword.operator.type.ts"},{"match":"(?<![$.])\\\\bkeyof\\\\b(?!\\\\$)","name":"keyword.operator.expression.keyof.ts"}]},"typeParenOrFunctionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"include":"#type"},{"include":"#functionParameters"}]},"typeTuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},"typeofOperator":{"match":"(?<![$.])\\\\btypeof\\\\b(?!\\\\$)","name":"keyword.operator.expression.typeof.ts"},"undefinedLiteral":{"match":"(?<![$.])\\\\bundefined\\\\b(?!\\\\$)","name":"constant.language.undefined.ts"},"variableInitializer":{"begin":"(?<![!=])(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|[]),;}])","patterns":[{"include":"#ngExpression"}]}},"scopeName":"expression.ng"}'))],r=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-let-declaration","patterns":[{"include":"#letDeclaration"}],"repository":{"letDeclaration":{"begin":"(@let)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)?","beginCaptures":{"1":{"name":"storage.type.ng"},"2":{"name":"variable.other.constant.ng"},"3":{"name":"keyword.operator.assignment.ng"}},"end":"(?<=;)","name":"meta.definition.variable.ng","patterns":[{"include":"#letInitializer"}]},"letInitializer":{"begin":"\\\\s*","beginCaptures":{"0":{"name":"keyword.operator.assignment.ng"}},"contentName":"meta.definition.variable.initializer.ng","end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.ng"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.let.ng","embeddedLangs":["angular-expression"]}`)),i=[...n,r],a=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment","name":"angular-template","patterns":[{"include":"#interpolation"}],"repository":{"interpolation":{"begin":"\\\\{\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"expression.ng","end":"}}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.ng","embeddedLangs":["angular-expression"]}`)),o=[...n,a],s=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-template-blocks","patterns":[{"include":"#block"}],"repository":{"block":{"begin":"(@)(if|else if|else|defer|placeholder|loading|error|switch|case|default|for|empty)\\\\s*","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.block.kind.ng"}},"end":"(?<=})","name":"control.block.ng","patterns":[{"include":"#blockExpression"},{"include":"#blockBody"}]},"blockBody":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"control.block.body.ng","end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"text.html.derivative.ng"},{"include":"template.ng"}]},"blockExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"contentName":"control.block.expression.ng","end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#blockExpressionOfClause"},{"include":"#blockExpressionLetBinding"},{"include":"#blockExpressionTrackClause"},{"include":"expression.ng"}]},"blockExpressionLetBinding":{"begin":"\\\\blet\\\\b","beginCaptures":{"0":{"name":"storage.type.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"blockExpressionOfClause":{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s+(of)\\\\b","beginCaptures":{"1":{"name":"variable.other.constant.ng"},"2":{"name":"keyword.operator.expression.of.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"blockExpressionTrackClause":{"begin":"\\\\btrack\\\\b","beginCaptures":{"0":{"name":"keyword.control.track.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"transition":{"match":"@","name":"keyword.control.block.transition.ng"}},"scopeName":"template.blocks.ng","embeddedLangs":["angular-expression","angular-template"]}`)),c=[...n,...o,s],l=e({default:()=>d}),u=Object.freeze(JSON.parse(`{"displayName":"Angular HTML","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"angular-html","patterns":[{"include":"text.html.basic#core-minus-invalid"},{"begin":"(</?)(\\\\w[^>\\\\s]*)(?<!/)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.unrecognized.html.derivative","patterns":[{"include":"text.html.basic#attribute"}]}],"scopeName":"text.html.derivative.ng","embeddedLangs":["html","angular-expression","angular-let-declaration","angular-template","angular-template-blocks"]}`)),d=[...t,...n,...i,...o,...c,u];export{i as a,o as i,l as n,n as o,c as r,d as t};
1
+ import{Bn as e}from"./index-DlSOjemg.js";import{t}from"./html-D8D_RndX.js";var n=[Object.freeze(JSON.parse('{"injectionSelector":"L:text.html -comment","name":"angular-expression","patterns":[{"include":"#ngExpression"}],"repository":{"arrayLiteral":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"booleanLiteral":{"patterns":[{"match":"(?<![$.])\\\\btrue\\\\b(?!\\\\$)","name":"constant.language.boolean.true.ts"},{"match":"(?<![$.])\\\\bfalse\\\\b(?!\\\\$)","name":"constant.language.boolean.false.ts"}]},"expressionOperator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"entity.name.function.pipe.ng"}},"match":"((?<!\\\\|)\\\\|(?!\\\\|))\\\\s?([-$0-9A-Z_a-z]*)"},{"match":"(?<![$.])\\\\b(let)\\\\b(?!\\\\$)","name":"storage.type.ts"},{"match":"(?<![$.])\\\\b(await)\\\\b(?!\\\\$)","name":"keyword.control.flow.ts"},{"match":"(?<![$.])\\\\bdelete\\\\b(?!\\\\$)","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![$.])\\\\bin\\\\b(?!\\\\$)","name":"keyword.operator.expression.in.ts"},{"match":"(?<![$.])\\\\bof\\\\b(?!\\\\$)","name":"keyword.operator.expression.of.ts"},{"match":"(?<![$.])\\\\bif\\\\b(?!\\\\$)","name":"keyword.control.if.ts"},{"match":"(?<![$.])\\\\belse\\\\b(?!\\\\$)","name":"keyword.control.else.ts"},{"match":"(?<![$.])\\\\bthen\\\\b(?!\\\\$)","name":"keyword.control.then.ts"},{"match":"(?<![$.])\\\\binstanceof\\\\b(?!\\\\$)","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![$.])\\\\bnew\\\\b(?!\\\\$)","name":"keyword.operator.new.ts"},{"match":"(?<![$.])\\\\bvoid\\\\b(?!\\\\$)","name":"keyword.operator.expression.void.ts"},{"begin":"(?<![$.])\\\\bas\\\\b(?!\\\\$)","beginCaptures":{"0":{"name":"storage.type.as.ts"}},"end":"(?=$|[]\\"\'),:;}])","patterns":[{"include":"#type"}]},{"match":"(?:\\\\*|(?<!\\\\()/|[-%+])=","name":"keyword.operator.assignment.compound.ts"},{"match":"(?:[\\\\&^]|<<|>>>??|\\\\|)=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>?","name":"keyword.operator.bitwise.shift.ts"},{"match":"[!=]==?","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|[<>]","name":"keyword.operator.relational.ts"},{"match":"!|&&|\\\\?\\\\?|\\\\|\\\\|","name":"keyword.operator.logical.ts"},{"match":"[\\\\&^|~]","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.ts"},{"captures":{"1":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[$_[:alnum:]])\\\\s*(/)(?![*/])"},{"include":"#typeofOperator"}]},"functionCall":{"begin":"(?=(\\\\??\\\\.\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","end":"(?<=\\\\))(?!(\\\\??\\\\.\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","patterns":[{"match":"\\\\?","name":"punctuation.accessor.ts"},{"match":"\\\\.","name":"punctuation.accessor.ts"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.ts"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},{"include":"#parenExpression"}]},"functionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#decorator"},{"include":"#parameterName"},{"include":"#variableInitializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"match":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.object.property.ts"},"3":{"name":"variable.other.object.property.ts"}},"match":"([!?]?\\\\.)\\\\s*(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"entity.name.function.ts"}},"match":"(?:([!?]?\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.property.ts"}},"match":"([!?]?\\\\.)\\\\s*(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"variable.other.property.ts"}},"match":"([!?]?\\\\.)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"constant.other.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)"},{"match":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])","name":"constant.character.other"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"literal":{"name":"literal.ts","patterns":[{"include":"#numericLiteral"},{"include":"#booleanLiteral"},{"include":"#nullLiteral"},{"include":"#undefinedLiteral"},{"include":"#numericConstantLiteral"},{"include":"#arrayLiteral"},{"include":"#thisLiteral"}]},"ngExpression":{"name":"meta.expression.ng","patterns":[{"include":"#string"},{"include":"#literal"},{"include":"#ternaryExpression"},{"include":"#expressionOperator"},{"include":"#functionCall"},{"include":"#identifiers"},{"include":"#parenExpression"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"},{"include":"#punctuationAccessor"}]},"nullLiteral":{"match":"(?<![$.])\\\\bnull\\\\b(?!\\\\$)","name":"constant.language.null.ts"},"numericConstantLiteral":{"patterns":[{"match":"(?<![$.])\\\\bNaN\\\\b(?!\\\\$)","name":"constant.language.nan.ts"},{"match":"(?<![$.])\\\\bInfinity\\\\b(?!\\\\$)","name":"constant.language.infinity.ts"}]},"numericLiteral":{"patterns":[{"match":"\\\\b(?<!\\\\$)0([Xx])\\\\h+\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"match":"\\\\b(?<!\\\\$)0([Bb])[01]+\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"match":"\\\\\\\\b(?<!\\\\$)0([Oo])?[0-7]+\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"meta.delimiter.decimal.period.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"meta.delimiter.decimal.period.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"meta.delimiter.decimal.period.ts"}},"match":"(?<!\\\\$)(?:\\\\b[0-9]+(\\\\.)[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+(\\\\.)[Ee][-+]?[0-9]+\\\\b|\\\\B(\\\\.)[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+(\\\\.)\\\\B|\\\\B(\\\\.)[0-9]+\\\\b|\\\\b[0-9]+\\\\b(?!\\\\.))(?!\\\\$)"}]},"parameterName":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<![:=])([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<![:=])([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\??)"}]},"parenExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"punctuationAccessor":{"match":"(?:\\\\?|!?)\\\\.","name":"punctuation.accessor.ts"},"punctuationComma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuationSemicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstringDouble":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#stringCharacterEscape"}]},"qstringSingle":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\')|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#stringCharacterEscape"}]},"string":{"patterns":[{"include":"#qstringSingle"},{"include":"#qstringDouble"},{"include":"#templateLiteral"}]},"stringCharacterEscape":{"match":"\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"templateLiteral":{"patterns":[{"include":"#templateLiteralCall"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#templateLiteralSubstitutionElement"},{"include":"#stringCharacterEscape"}]}]},"templateLiteralCall":{"patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#typeArguments"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#typeArguments"}]}]},"templateLiteralSubstitutionElement":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#ngExpression"}]},"ternaryExpression":{"begin":"(?!\\\\?\\\\.\\\\s*\\\\D)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#ngExpression"}]},"thisLiteral":{"match":"(?<![$.])\\\\bthis\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"name":"meta.type.ts","patterns":[{"include":"#string"},{"include":"#numericLiteral"},{"include":"#typeBuiltinLiterals"},{"include":"#typeTuple"},{"include":"#typeObject"},{"include":"#typeOperators"},{"include":"#typeFnTypeParameters"},{"include":"#typeParenOrFunctionParameters"},{"include":"#typeName"}]},"typeAnnotation":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=$|[]),;}]|//|\\")|(?==[^>])|(?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},"typeArguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#typeArgumentsBody"}]},"typeArgumentsBody":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuationComma"}]},"typeBuiltinLiterals":{"match":"(?<![$.])\\\\b(this|true|false|undefined|null)\\\\b(?!\\\\$)","name":"support.type.builtin.ts"},"typeFnTypeParameters":{"patterns":[{"captures":{"1":{"name":"keyword.control.new.ts"}},"match":"(?<![$.])\\\\b(new)\\\\b(?=\\\\s*<)","name":"meta.type.constructor.ts"},{"begin":"(?<![$.])\\\\b(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"(?<=>)\\\\s*(?=\\\\()","end":"(?<=\\\\))","include":"#typeofOperator","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"((?=\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]}]},"typeName":{"patterns":[{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*([!?]?\\\\.)"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"entity.name.type.ts"}]},"typeObject":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#typeObjectMembers"}]},"typeObjectMembers":{"patterns":[{"include":"#typeAnnotation"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"}]},"typeOperators":{"patterns":[{"include":"#typeofOperator"},{"match":"[\\\\&|]","name":"keyword.operator.type.ts"},{"match":"(?<![$.])\\\\bkeyof\\\\b(?!\\\\$)","name":"keyword.operator.expression.keyof.ts"}]},"typeParenOrFunctionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"include":"#type"},{"include":"#functionParameters"}]},"typeTuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},"typeofOperator":{"match":"(?<![$.])\\\\btypeof\\\\b(?!\\\\$)","name":"keyword.operator.expression.typeof.ts"},"undefinedLiteral":{"match":"(?<![$.])\\\\bundefined\\\\b(?!\\\\$)","name":"constant.language.undefined.ts"},"variableInitializer":{"begin":"(?<![!=])(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|[]),;}])","patterns":[{"include":"#ngExpression"}]}},"scopeName":"expression.ng"}'))],r=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-let-declaration","patterns":[{"include":"#letDeclaration"}],"repository":{"letDeclaration":{"begin":"(@let)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)?","beginCaptures":{"1":{"name":"storage.type.ng"},"2":{"name":"variable.other.constant.ng"},"3":{"name":"keyword.operator.assignment.ng"}},"end":"(?<=;)","name":"meta.definition.variable.ng","patterns":[{"include":"#letInitializer"}]},"letInitializer":{"begin":"\\\\s*","beginCaptures":{"0":{"name":"keyword.operator.assignment.ng"}},"contentName":"meta.definition.variable.initializer.ng","end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.ng"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.let.ng","embeddedLangs":["angular-expression"]}`)),i=[...n,r],a=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment","name":"angular-template","patterns":[{"include":"#interpolation"}],"repository":{"interpolation":{"begin":"\\\\{\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"expression.ng","end":"}}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.ng","embeddedLangs":["angular-expression"]}`)),o=[...n,a],s=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-template-blocks","patterns":[{"include":"#block"}],"repository":{"block":{"begin":"(@)(if|else if|else|defer|placeholder|loading|error|switch|case|default|for|empty)\\\\s*","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.block.kind.ng"}},"end":"(?<=})","name":"control.block.ng","patterns":[{"include":"#blockExpression"},{"include":"#blockBody"}]},"blockBody":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"control.block.body.ng","end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"text.html.derivative.ng"},{"include":"template.ng"}]},"blockExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"contentName":"control.block.expression.ng","end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#blockExpressionOfClause"},{"include":"#blockExpressionLetBinding"},{"include":"#blockExpressionTrackClause"},{"include":"expression.ng"}]},"blockExpressionLetBinding":{"begin":"\\\\blet\\\\b","beginCaptures":{"0":{"name":"storage.type.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"blockExpressionOfClause":{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s+(of)\\\\b","beginCaptures":{"1":{"name":"variable.other.constant.ng"},"2":{"name":"keyword.operator.expression.of.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"blockExpressionTrackClause":{"begin":"\\\\btrack\\\\b","beginCaptures":{"0":{"name":"keyword.control.track.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"transition":{"match":"@","name":"keyword.control.block.transition.ng"}},"scopeName":"template.blocks.ng","embeddedLangs":["angular-expression","angular-template"]}`)),c=[...n,...o,s],l=e({default:()=>d}),u=Object.freeze(JSON.parse(`{"displayName":"Angular HTML","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"angular-html","patterns":[{"include":"text.html.basic#core-minus-invalid"},{"begin":"(</?)(\\\\w[^>\\\\s]*)(?<!/)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.unrecognized.html.derivative","patterns":[{"include":"text.html.basic#attribute"}]}],"scopeName":"text.html.derivative.ng","embeddedLangs":["html","angular-expression","angular-let-declaration","angular-template","angular-template-blocks"]}`)),d=[...t,...n,...i,...o,...c,u];export{i as a,o as i,l as n,n as o,c as r,d as t};