owndesign 0.1.9 → 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.
- package/dist/index.js +1 -1
- package/dist/server/index.js +109 -71
- package/dist/server/prompts/agents/component-audit.md +1 -1
- package/dist/web/assets/{angular-html-DCGj6j9k.js → angular-html-BC-ehZ2Z.js} +1 -1
- package/dist/web/assets/{angular-ts-_jS5FvKQ.js → angular-ts-CbNdIQVH.js} +1 -1
- package/dist/web/assets/{apl-COUiMcRO.js → apl-CKXIPXmN.js} +1 -1
- package/dist/web/assets/{arc-DO65316F.js → arc-DCbsmfyT.js} +1 -1
- package/dist/web/assets/architecture-7EHR7CIX-Dy_x80xD.js +1 -0
- package/dist/web/assets/{architectureDiagram-3BPJPVTR-4QTI95py.js → architectureDiagram-3BPJPVTR-C3CSEDbb.js} +1 -1
- package/dist/web/assets/{astro-DBm7xN0H.js → astro-0YgDtFyB.js} +1 -1
- package/dist/web/assets/{blade-BrcGRjeD.js → blade-DCBz6o9i.js} +1 -1
- package/dist/web/assets/{blockDiagram-GPEHLZMM-DyW2gTLi.js → blockDiagram-GPEHLZMM-Wy4mtab2.js} +1 -1
- package/dist/web/assets/{c-DAqlvgYb.js → c-B_5YfUT4.js} +1 -1
- package/dist/web/assets/{c4Diagram-AAUBKEIU-D7VLn3UY.js → c4Diagram-AAUBKEIU-DvAQK-yr.js} +1 -1
- package/dist/web/assets/channel-CNy21oVR.js +1 -0
- package/dist/web/assets/{chunk-2J33WTMH-ZI7iZmam.js → chunk-2J33WTMH-D12BmulM.js} +1 -1
- package/dist/web/assets/{chunk-4BX2VUAB-BXZ1tYtp.js → chunk-4BX2VUAB-CUsT6Yoy.js} +1 -1
- package/dist/web/assets/{chunk-55IACEB6-BruFuyzh.js → chunk-55IACEB6-B1fNBh7K.js} +1 -1
- package/dist/web/assets/{chunk-727SXJPM-WfltwAyi.js → chunk-727SXJPM-BNwBLitG.js} +1 -1
- package/dist/web/assets/{chunk-AQP2D5EJ-m-6Oqccg.js → chunk-AQP2D5EJ-Cj6w8RRN.js} +1 -1
- package/dist/web/assets/{chunk-FMBD7UC4-CTpop8z0.js → chunk-FMBD7UC4-DZQMeOiP.js} +1 -1
- package/dist/web/assets/{chunk-ND2GUHAM-DXbYu7j4.js → chunk-ND2GUHAM-BDZZZpgK.js} +1 -1
- package/dist/web/assets/chunk-QZHKN3VN-ZvBMuvS3.js +1 -0
- package/dist/web/assets/classDiagram-4FO5ZUOK-CdVQzF3q.js +1 -0
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-CdVQzF3q.js +1 -0
- package/dist/web/assets/{cobol-CV8XIe3g.js → cobol-B7rjWy71.js} +1 -1
- package/dist/web/assets/{coffee-CjS-bqem.js → coffee-327Z21kX.js} +1 -1
- package/dist/web/assets/{cose-bilkent-S5V4N54A-qeF_aTDs.js → cose-bilkent-S5V4N54A-D1c4YrLP.js} +1 -1
- package/dist/web/assets/{cpp-BWTrby03.js → cpp-76QBVYPh.js} +1 -1
- package/dist/web/assets/{crystal-B4jSurfu.js → crystal-B4heXbZm.js} +1 -1
- package/dist/web/assets/{css-CXDKo6HN.js → css-CzEdf7OR.js} +1 -1
- package/dist/web/assets/{dagre-BM42HDAG-mtpIrAd-.js → dagre-BM42HDAG-ET87-tzF.js} +1 -1
- package/dist/web/assets/{diagram-2AECGRRQ-C2daXqRz.js → diagram-2AECGRRQ-CBQXEPqZ.js} +1 -1
- package/dist/web/assets/{diagram-5GNKFQAL-Yn3Kkd1e.js → diagram-5GNKFQAL-CtNzeaR4.js} +1 -1
- package/dist/web/assets/{diagram-KO2AKTUF-BSZBlF1_.js → diagram-KO2AKTUF-DKv9ewpj.js} +1 -1
- package/dist/web/assets/{diagram-LMA3HP47-C-o1wwy4.js → diagram-LMA3HP47-BdL7Q4hm.js} +1 -1
- package/dist/web/assets/{diagram-OG6HWLK6-BadUuiav.js → diagram-OG6HWLK6-BTYYRviK.js} +1 -1
- package/dist/web/assets/{edge-IP3F2dQ8.js → edge-CbifZx89.js} +1 -1
- package/dist/web/assets/{elixir-DNv4dzV2.js → elixir-D7epo7XU.js} +1 -1
- package/dist/web/assets/{elm-DGlxwCzv.js → elm-CDnfHiSW.js} +1 -1
- package/dist/web/assets/{erDiagram-TEJ5UH35-uLYwqFWM.js → erDiagram-TEJ5UH35-DoS_g6rc.js} +1 -1
- package/dist/web/assets/{erb-Cx4MSh15.js → erb-CJPDtktp.js} +1 -1
- package/dist/web/assets/eventmodeling-FCH6USID-dHNYNvhr.js +1 -0
- package/dist/web/assets/{flowDiagram-I6XJVG4X-C-JzpWfx.js → flowDiagram-I6XJVG4X-INqAi_9A.js} +1 -1
- package/dist/web/assets/{ganttDiagram-6RSMTGT7-Be3WGPbk.js → ganttDiagram-6RSMTGT7-BtV9RfaV.js} +1 -1
- package/dist/web/assets/{git-rebase-C_0JGP0g.js → git-rebase-XN1VAGxD.js} +1 -1
- package/dist/web/assets/gitGraph-WXDBUCRP-BTlPmENP.js +1 -0
- package/dist/web/assets/{gitGraphDiagram-PVQCEYII-DqJ0yj3L.js → gitGraphDiagram-PVQCEYII-Bg7oxgNx.js} +1 -1
- package/dist/web/assets/{glimmer-js-B7LRT5BS.js → glimmer-js-jAUeYMlX.js} +1 -1
- package/dist/web/assets/{glimmer-ts-CojGZlfZ.js → glimmer-ts-wcJbAc9L.js} +1 -1
- package/dist/web/assets/{glsl-CbmtoTb8.js → glsl-CqkwmhMS.js} +1 -1
- package/dist/web/assets/{graphql-qYEIhTt7.js → graphql-MSHUJ_J9.js} +1 -1
- package/dist/web/assets/{hack-DxHXCCdq.js → hack-o9VcDxFX.js} +1 -1
- package/dist/web/assets/{haml-CiwrkJ8T.js → haml-yMII7dOY.js} +1 -1
- package/dist/web/assets/{handlebars-Cn5UPYUQ.js → handlebars-DqywSDps.js} +1 -1
- package/dist/web/assets/{highlighted-body-OFNGDK62-ehiuxKzz.js → highlighted-body-OFNGDK62-DZUhBEEf.js} +1 -1
- package/dist/web/assets/{html-Cst8cPsk.js → html-D8D_RndX.js} +1 -1
- package/dist/web/assets/{html-derivative-lnPAgvry.js → html-derivative-Db1SyKg8.js} +1 -1
- package/dist/web/assets/{http-C5VDSUzW.js → http-Bqs_GAGw.js} +1 -1
- package/dist/web/assets/{hurl-BFlMJrL0.js → hurl-j0mDeRMp.js} +1 -1
- package/dist/web/assets/index-BMuMlfUY.css +2 -0
- package/dist/web/assets/{index-Ai406YO8.js → index-DlSOjemg.js} +153 -153
- package/dist/web/assets/info-J43DQDTF-Dk_AfWti.js +1 -0
- package/dist/web/assets/{infoDiagram-5YYISTIA-CIanyf0S.js → infoDiagram-5YYISTIA-D4cmnLLV.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-YF4QCWOH--1RL7uDF.js → ishikawaDiagram-YF4QCWOH-BY9yvtJK.js} +1 -1
- package/dist/web/assets/{java-BGahCCe1.js → java-CegvNhLh.js} +1 -1
- package/dist/web/assets/{javascript-D5uMI8kB.js → javascript-DhcUAesx.js} +1 -1
- package/dist/web/assets/{jinja-B4krr1-l.js → jinja-BdSDD1Q-.js} +1 -1
- package/dist/web/assets/{jison-BMMSlNZQ.js → jison-CarYqmfq.js} +1 -1
- package/dist/web/assets/{journeyDiagram-JHISSGLW-lkcDMGR5.js → journeyDiagram-JHISSGLW-rDquyMpx.js} +1 -1
- package/dist/web/assets/{json-DXJMlo78.js → json-wCF8Ai7e.js} +1 -1
- package/dist/web/assets/{jsx-C_bl3hBI.js → jsx-Ct3LR2iE.js} +1 -1
- package/dist/web/assets/{julia-Sc_vYT5t.js → julia-Brh5r__6.js} +1 -1
- package/dist/web/assets/{just-CILkVz1n.js → just-CK9u7rV8.js} +1 -1
- package/dist/web/assets/{kanban-definition-UN3LZRKU-Bi_hSUym.js → kanban-definition-UN3LZRKU-DRY4BHuX.js} +1 -1
- package/dist/web/assets/{latex-DUmFelG8.js → latex-CnioxxTZ.js} +1 -1
- package/dist/web/assets/{linear-Dpnh4Vbv.js → linear-DdVYArrQ.js} +1 -1
- package/dist/web/assets/{liquid-BnB6JKD1.js → liquid-CWr27PHL.js} +1 -1
- package/dist/web/assets/{lua-DhxAQE0G.js → lua-BHz_f72B.js} +1 -1
- package/dist/web/assets/{marko-CyzzY1hm.js → marko-DYZOkg7A.js} +1 -1
- package/dist/web/assets/{mdc-BptK7sXI.js → mdc-a5KQMe4S.js} +1 -1
- package/dist/web/assets/mermaid-GHXKKRXX-DsECfWij.js +1 -0
- package/dist/web/assets/{mermaid-parser.core-DShH95hL.js → mermaid-parser.core-BAsHbYUQ.js} +2 -2
- package/dist/web/assets/{mindmap-definition-RKZ34NQL-LqYVQ-zW.js → mindmap-definition-RKZ34NQL-C1ndv4OX.js} +1 -1
- package/dist/web/assets/{nginx-CR9TIk16.js → nginx-DYjAek21.js} +1 -1
- package/dist/web/assets/{nim-DzWiwbcf.js → nim-BY3DE5rh.js} +1 -1
- package/dist/web/assets/packet-YPE3B663-C6X9xd7B.js +1 -0
- package/dist/web/assets/{perl-CgrDNBt5.js → perl-Q7rsz5p8.js} +1 -1
- package/dist/web/assets/{php-DtuJQDgr.js → php-wkLOOMEB.js} +1 -1
- package/dist/web/assets/pie-LRSECV5Y-B7m9jxWQ.js +1 -0
- package/dist/web/assets/{pieDiagram-4H26LBE5-B7_i9XPe.js → pieDiagram-4H26LBE5-hbmKZkAo.js} +1 -1
- package/dist/web/assets/{pug--9BJCC2D.js → pug-DBjGFTz6.js} +1 -1
- package/dist/web/assets/{qml-C3iH27Ik.js → qml-6JbnGGh-.js} +1 -1
- package/dist/web/assets/{quadrantDiagram-W4KKPZXB-C2tSamWU.js → quadrantDiagram-W4KKPZXB-Ce3Tyy1v.js} +1 -1
- package/dist/web/assets/{r-CqKTpWRo.js → r-CpWosUkA.js} +1 -1
- package/dist/web/assets/radar-GUYGQ44K-CNV--1hE.js +1 -0
- package/dist/web/assets/{razor-BNavdAx6.js → razor-VaRLosil.js} +1 -1
- package/dist/web/assets/{regexp-zwVenqvj.js → regexp-BXX0dR0g.js} +1 -1
- package/dist/web/assets/{requirementDiagram-4Y6WPE33-iIbtgBoU.js → requirementDiagram-4Y6WPE33-BvuMdAA_.js} +1 -1
- package/dist/web/assets/{rst-BHNeA4na.js → rst-B5mAlZz_.js} +1 -1
- package/dist/web/assets/{ruby-CkHs-w2j.js → ruby-CuJVGKz0.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-5OEKKPKP-B05ECsV0.js → sankeyDiagram-5OEKKPKP-9vzIUX0R.js} +1 -1
- package/dist/web/assets/{sas-COQs-ItK.js → sas-CVzjXYMr.js} +1 -1
- package/dist/web/assets/{scss-DVsO7q0E.js → scss-WQpgeU5g.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-3UESZ5HK-CHtmtTcK.js → sequenceDiagram-3UESZ5HK-q6rXjDsy.js} +1 -1
- package/dist/web/assets/{shellscript-DoNwQ9Oz.js → shellscript-CycmgFgs.js} +1 -1
- package/dist/web/assets/{shellsession-DvIRWuae.js → shellsession-CSmahWBB.js} +1 -1
- package/dist/web/assets/{soy--AEUdRNF.js → soy-E8MJKPgz.js} +1 -1
- package/dist/web/assets/{sql-BVv9DbTm.js → sql-ChzFHxMA.js} +1 -1
- package/dist/web/assets/{stata-Bzv07ePm.js → stata-D-Voeimj.js} +1 -1
- package/dist/web/assets/{stateDiagram-AJRCARHV-COllcCkO.js → stateDiagram-AJRCARHV-QkbVYicl.js} +1 -1
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-CemwCoPd.js +1 -0
- package/dist/web/assets/{surrealql-ChG0u1_y.js → surrealql-CDreHe5D.js} +1 -1
- package/dist/web/assets/{svelte-CTk-krYk.js → svelte-UtC71yfS.js} +1 -1
- package/dist/web/assets/{templ-CIOvt0Gn.js → templ-DI5vQSP6.js} +1 -1
- package/dist/web/assets/{tex-BLbgub0O.js → tex-B1pg-O0j.js} +1 -1
- package/dist/web/assets/{timeline-definition-PNZ67QCA-Dj0aLVCY.js → timeline-definition-PNZ67QCA-hOb9CPgd.js} +1 -1
- package/dist/web/assets/treeView-BLDUP644-4kzz9e5T.js +1 -0
- package/dist/web/assets/treemap-LRROVOQU-CUGlq2kA.js +1 -0
- package/dist/web/assets/{ts-tags-Cjp84wCR.js → ts-tags-DDRBQd18.js} +1 -1
- package/dist/web/assets/{tsx-BYXwwi4R.js → tsx-BNOyqGp9.js} +1 -1
- package/dist/web/assets/{twig-CJXgadPB.js → twig-zClWYmrr.js} +1 -1
- package/dist/web/assets/{typescript-SkJO5gXX.js → typescript-Bywfx-vz.js} +1 -1
- package/dist/web/assets/{vennDiagram-CIIHVFJN-DotTRq6i.js → vennDiagram-CIIHVFJN-Cx7yBOK-.js} +1 -1
- package/dist/web/assets/{vue-DnNvWsLF.js → vue-Bp_voCJR.js} +1 -1
- package/dist/web/assets/{vue-html-BtDfjhCy.js → vue-html-C43GF5Id.js} +1 -1
- package/dist/web/assets/{vue-vine-87qc9dJ9.js → vue-vine-CSRbNOMz.js} +1 -1
- package/dist/web/assets/wardley-L42UT6IY-NTb3kln2.js +1 -0
- package/dist/web/assets/{wardleyDiagram-YWT4CUSO-C4mIx6nt.js → wardleyDiagram-YWT4CUSO-Cwiuub7b.js} +1 -1
- package/dist/web/assets/{xml-BwxGZI3_.js → xml-rhD_p6eK.js} +1 -1
- package/dist/web/assets/{xsl-V11HisfD.js → xsl-B-H8kR_6.js} +1 -1
- package/dist/web/assets/{xychartDiagram-2RQKCTM6-CR2seeGg.js → xychartDiagram-2RQKCTM6-DAix_-GG.js} +1 -1
- package/dist/web/assets/{yaml-DoTdQeS-.js → yaml-CRIMWRGF.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +6 -1
- package/dist/web/assets/architecture-7EHR7CIX-D10X4FnP.js +0 -1
- package/dist/web/assets/channel-D4A7yvhc.js +0 -1
- package/dist/web/assets/chunk-QZHKN3VN-JoHxC1mG.js +0 -1
- package/dist/web/assets/classDiagram-4FO5ZUOK-D2XS2ai4.js +0 -1
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-D2XS2ai4.js +0 -1
- package/dist/web/assets/eventmodeling-FCH6USID-CHKTnhfi.js +0 -1
- package/dist/web/assets/gitGraph-WXDBUCRP-aSGYLvSW.js +0 -1
- package/dist/web/assets/index-Cy3xCQ0m.css +0 -2
- package/dist/web/assets/info-J43DQDTF-C945CGZU.js +0 -1
- package/dist/web/assets/mermaid-GHXKKRXX-DOJ_Dro4.js +0 -1
- package/dist/web/assets/packet-YPE3B663-DuGIOCMW.js +0 -1
- package/dist/web/assets/pie-LRSECV5Y-BYeTdyfo.js +0 -1
- package/dist/web/assets/radar-GUYGQ44K-Cqw7n4df.js +0 -1
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-D9SuEs4r.js +0 -1
- package/dist/web/assets/treeView-BLDUP644-Bsp-7xCN.js +0 -1
- package/dist/web/assets/treemap-LRROVOQU-BsTzhV2b.js +0 -1
- package/dist/web/assets/wardley-L42UT6IY-BtXwfgcx.js +0 -1
package/dist/index.js
CHANGED
package/dist/server/index.js
CHANGED
|
@@ -56675,7 +56675,7 @@ function elapsedWallTime(startedAt) {
|
|
|
56675
56675
|
return Math.max(0, Math.round((performance.now() - startedAt) * 100) / 100);
|
|
56676
56676
|
}
|
|
56677
56677
|
|
|
56678
|
-
// ../core/src/agent/tools/
|
|
56678
|
+
// ../core/src/agent/tools/tool-paths.ts
|
|
56679
56679
|
import path2 from "node:path";
|
|
56680
56680
|
async function readProjectWorkspaceFileIfExists(workspaceStore, projectId, relativePath) {
|
|
56681
56681
|
try {
|
|
@@ -56724,7 +56724,11 @@ function createCopyFileToolDefinition() {
|
|
|
56724
56724
|
projectId,
|
|
56725
56725
|
normalizedSourcePath
|
|
56726
56726
|
);
|
|
56727
|
-
return workspaceStore.writeProjectWorkspaceFile(
|
|
56727
|
+
return workspaceStore.writeProjectWorkspaceFile(
|
|
56728
|
+
projectId,
|
|
56729
|
+
normalizedTargetPath,
|
|
56730
|
+
sourceContent
|
|
56731
|
+
);
|
|
56728
56732
|
}
|
|
56729
56733
|
};
|
|
56730
56734
|
}
|
|
@@ -56830,14 +56834,32 @@ function createDeleteToolDefinition() {
|
|
|
56830
56834
|
}
|
|
56831
56835
|
|
|
56832
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");
|
|
56833
56853
|
function createEditToolDefinition() {
|
|
56834
56854
|
return {
|
|
56835
|
-
description:
|
|
56855
|
+
description: DESCRIPTION,
|
|
56836
56856
|
inputSchema: external_exports.object({
|
|
56837
|
-
newString: external_exports.string().describe("Replacement text."),
|
|
56838
|
-
oldString: external_exports.string().describe("
|
|
56839
|
-
path: external_exports.string().describe("Relative file path inside the Project Workspace."),
|
|
56840
|
-
replaceAll: external_exports.boolean().describe(
|
|
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()
|
|
56841
56863
|
}).strict(),
|
|
56842
56864
|
name: "edit",
|
|
56843
56865
|
parallelSafe: false,
|
|
@@ -56846,12 +56868,24 @@ function createEditToolDefinition() {
|
|
|
56846
56868
|
}
|
|
56847
56869
|
|
|
56848
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");
|
|
56849
56879
|
function createGlobToolDefinition() {
|
|
56850
56880
|
return {
|
|
56851
|
-
description:
|
|
56881
|
+
description: DESCRIPTION2,
|
|
56852
56882
|
inputSchema: external_exports.object({
|
|
56853
|
-
path: external_exports.string().describe(
|
|
56854
|
-
|
|
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
|
+
)
|
|
56855
56889
|
}).strict(),
|
|
56856
56890
|
name: "glob",
|
|
56857
56891
|
parallelSafe: true,
|
|
@@ -56862,15 +56896,26 @@ function createGlobToolDefinition() {
|
|
|
56862
56896
|
}
|
|
56863
56897
|
|
|
56864
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");
|
|
56865
56908
|
function createGrepToolDefinition() {
|
|
56866
56909
|
return {
|
|
56867
|
-
description:
|
|
56910
|
+
description: DESCRIPTION3,
|
|
56868
56911
|
inputSchema: external_exports.object({
|
|
56869
|
-
include: external_exports.string().describe(
|
|
56912
|
+
include: external_exports.string().describe(
|
|
56913
|
+
'Optional Project Workspace file glob to include, such as "*.html" or "**/*.{css,js}".'
|
|
56914
|
+
).optional(),
|
|
56870
56915
|
path: external_exports.string().describe(
|
|
56871
|
-
"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."
|
|
56872
56917
|
).optional(),
|
|
56873
|
-
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.")
|
|
56874
56919
|
}).strict(),
|
|
56875
56920
|
name: "grep",
|
|
56876
56921
|
parallelSafe: true,
|
|
@@ -56883,43 +56928,6 @@ function createGrepToolDefinition() {
|
|
|
56883
56928
|
};
|
|
56884
56929
|
}
|
|
56885
56930
|
|
|
56886
|
-
// ../core/src/agent/tools/patch.ts
|
|
56887
|
-
function createPatchToolDefinition() {
|
|
56888
|
-
return {
|
|
56889
|
-
description: "Apply coordinated UTF-8 file changes inside the current Project Workspace. Supports add/write, edit, and delete changes.",
|
|
56890
|
-
inputSchema: external_exports.object({
|
|
56891
|
-
changes: external_exports.array(
|
|
56892
|
-
external_exports.discriminatedUnion("operation", [
|
|
56893
|
-
external_exports.object({
|
|
56894
|
-
content: external_exports.string().describe("Complete file content for add operations."),
|
|
56895
|
-
operation: external_exports.literal("add"),
|
|
56896
|
-
path: external_exports.string().describe("Relative file or directory path inside the Project Workspace.")
|
|
56897
|
-
}).strict(),
|
|
56898
|
-
external_exports.object({
|
|
56899
|
-
content: external_exports.string().describe("Complete file content for write operations."),
|
|
56900
|
-
operation: external_exports.literal("write"),
|
|
56901
|
-
path: external_exports.string().describe("Relative file or directory path inside the Project Workspace.")
|
|
56902
|
-
}).strict(),
|
|
56903
|
-
external_exports.object({
|
|
56904
|
-
newString: external_exports.string().describe("Replacement text for edit operations."),
|
|
56905
|
-
oldString: external_exports.string().describe("Text to replace for edit operations."),
|
|
56906
|
-
operation: external_exports.literal("edit"),
|
|
56907
|
-
path: external_exports.string().describe("Relative file or directory path inside the Project Workspace."),
|
|
56908
|
-
replaceAll: external_exports.boolean().describe("For edit operations, replace every occurrence of oldString.").optional()
|
|
56909
|
-
}).strict(),
|
|
56910
|
-
external_exports.object({
|
|
56911
|
-
operation: external_exports.literal("delete"),
|
|
56912
|
-
path: external_exports.string().describe("Relative file or directory path inside the Project Workspace.")
|
|
56913
|
-
}).strict()
|
|
56914
|
-
])
|
|
56915
|
-
).min(1)
|
|
56916
|
-
}).strict(),
|
|
56917
|
-
name: "patch",
|
|
56918
|
-
parallelSafe: false,
|
|
56919
|
-
execute: async ({ changes }, { projectId, workspaceStore }) => workspaceStore.applyProjectWorkspacePatch(projectId, changes)
|
|
56920
|
-
};
|
|
56921
|
-
}
|
|
56922
|
-
|
|
56923
56931
|
// ../core/src/realtime/frontend-command-bus.ts
|
|
56924
56932
|
var KEEPALIVE_INTERVAL_MS = 15e3;
|
|
56925
56933
|
var FrontendCommandBus = class {
|
|
@@ -57062,9 +57070,25 @@ function createPreviewRefreshToolDefinition() {
|
|
|
57062
57070
|
}
|
|
57063
57071
|
|
|
57064
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");
|
|
57065
57089
|
function createReadToolDefinition() {
|
|
57066
57090
|
return {
|
|
57067
|
-
description:
|
|
57091
|
+
description: DESCRIPTION4,
|
|
57068
57092
|
inputSchema: external_exports.object({
|
|
57069
57093
|
limit: external_exports.number().describe("Maximum number of lines or directory entries to read. Defaults to 2000.").optional(),
|
|
57070
57094
|
offset: external_exports.number().describe(
|
|
@@ -57084,12 +57108,24 @@ function createReadToolDefinition() {
|
|
|
57084
57108
|
}
|
|
57085
57109
|
|
|
57086
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");
|
|
57087
57123
|
function createWriteToolDefinition() {
|
|
57088
57124
|
return {
|
|
57089
|
-
description:
|
|
57125
|
+
description: DESCRIPTION5,
|
|
57090
57126
|
inputSchema: external_exports.object({
|
|
57091
|
-
content: external_exports.string().describe("Complete UTF-8 text file content."),
|
|
57092
|
-
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.")
|
|
57093
57129
|
}).strict(),
|
|
57094
57130
|
name: "write",
|
|
57095
57131
|
parallelSafe: false,
|
|
@@ -57106,7 +57142,6 @@ function createProjectWorkspaceToolDefinitions() {
|
|
|
57106
57142
|
createEditToolDefinition(),
|
|
57107
57143
|
createGlobToolDefinition(),
|
|
57108
57144
|
createGrepToolDefinition(),
|
|
57109
|
-
createPatchToolDefinition(),
|
|
57110
57145
|
createPreviewRefreshToolDefinition(),
|
|
57111
57146
|
createReadToolDefinition(),
|
|
57112
57147
|
createWriteToolDefinition()
|
|
@@ -57175,7 +57210,7 @@ function buildFrontendCapabilityPrompt() {
|
|
|
57175
57210
|
}
|
|
57176
57211
|
|
|
57177
57212
|
// ../core/src/agent/design-page-agent.ts
|
|
57178
|
-
var DESIGN_PAGE_AGENT_PROMPT_VERSION =
|
|
57213
|
+
var DESIGN_PAGE_AGENT_PROMPT_VERSION = 2;
|
|
57179
57214
|
var AiSdkDesignPageAgent = class {
|
|
57180
57215
|
constructor(workspaceStore) {
|
|
57181
57216
|
this.workspaceStore = workspaceStore;
|
|
@@ -57246,7 +57281,6 @@ function createDesignPageAgent(context2) {
|
|
|
57246
57281
|
function createDesignPageWorkspaceTools(context2) {
|
|
57247
57282
|
const { frontendTabId, projectId, resources, workspaceStore } = context2;
|
|
57248
57283
|
return createWorkspaceToolRegistry(createProjectWorkspaceToolDefinitions(), {
|
|
57249
|
-
approvedCdnUrls: buildApprovedCdnUrls(resources),
|
|
57250
57284
|
frontendTabId,
|
|
57251
57285
|
model: context2.model,
|
|
57252
57286
|
projectId,
|
|
@@ -57383,7 +57417,6 @@ function buildToolWorkflowPrompt() {
|
|
|
57383
57417
|
"Choose tools by intent:",
|
|
57384
57418
|
"- Use `createHtml` only to create a missing `index.html` file.",
|
|
57385
57419
|
"- Use `edit` for small, focused replacements in one existing file.",
|
|
57386
|
-
"- Use `patch` for coordinated changes or repeated replacements.",
|
|
57387
57420
|
"- Use `write` only for deliberate full-file replacement of `index.html`.",
|
|
57388
57421
|
"- Do not use `write` to create the initial `index.html`; use `createHtml` first.",
|
|
57389
57422
|
"- Use `copyFile` only when the current user message explicitly asks you to duplicate an existing file.",
|
|
@@ -57394,7 +57427,8 @@ function buildToolWorkflowPrompt() {
|
|
|
57394
57427
|
"- When `index.html` exists, read it before editing and do not call `createHtml`.",
|
|
57395
57428
|
"",
|
|
57396
57429
|
"Recover from tool failures:",
|
|
57397
|
-
"- If an edit fails, read the file again and retry with a smaller edit
|
|
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.",
|
|
57398
57432
|
"- If a generated prototype becomes too large or brittle, simplify the file while preserving visible quality."
|
|
57399
57433
|
].join("\n");
|
|
57400
57434
|
}
|
|
@@ -57426,12 +57460,6 @@ function buildResourcePolicyPrompt(resources) {
|
|
|
57426
57460
|
"Use regular inline CSS as the primary styling method."
|
|
57427
57461
|
].join("\n");
|
|
57428
57462
|
}
|
|
57429
|
-
function buildApprovedCdnUrls(resources) {
|
|
57430
|
-
return [
|
|
57431
|
-
...resources.fontLibraries.map((library) => library.cdn),
|
|
57432
|
-
...resources.iconLibraries.map((library) => library.cdn)
|
|
57433
|
-
].map((url2) => url2.trim()).filter(Boolean);
|
|
57434
|
-
}
|
|
57435
57463
|
function getDefaultResourceLibrary(libraries) {
|
|
57436
57464
|
return libraries.find((library) => library.isDefault) ?? libraries[0];
|
|
57437
57465
|
}
|
|
@@ -60273,6 +60301,7 @@ function createOwnDesignApp(options = {}) {
|
|
|
60273
60301
|
agentContext.agentInstructions = conversation.agentInstructions;
|
|
60274
60302
|
const agent = createDesignPageAgent(agentContext);
|
|
60275
60303
|
let latestStepUsage;
|
|
60304
|
+
const runStartedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
60276
60305
|
const run = chatRunManager.startRun({
|
|
60277
60306
|
conversationId,
|
|
60278
60307
|
createStream: async (abortSignal) => {
|
|
@@ -60291,18 +60320,27 @@ function createOwnDesignApp(options = {}) {
|
|
|
60291
60320
|
latestStepUsage = step.usage;
|
|
60292
60321
|
},
|
|
60293
60322
|
messageMetadata: ({ part }) => {
|
|
60294
|
-
if (part.type !== "finish"
|
|
60323
|
+
if (part.type !== "finish") {
|
|
60295
60324
|
return void 0;
|
|
60296
60325
|
}
|
|
60297
|
-
|
|
60298
|
-
|
|
60326
|
+
const completedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
60327
|
+
const metadata = {
|
|
60328
|
+
taskTiming: {
|
|
60329
|
+
completedAt,
|
|
60330
|
+
elapsedMs: Math.max(0, Date.parse(completedAt) - Date.parse(runStartedAt)),
|
|
60331
|
+
startedAt: runStartedAt
|
|
60332
|
+
}
|
|
60333
|
+
};
|
|
60334
|
+
if (latestStepUsage) {
|
|
60335
|
+
metadata.contextUsage = {
|
|
60299
60336
|
inputTokens: latestStepUsage.inputTokens,
|
|
60300
60337
|
outputTokens: latestStepUsage.outputTokens,
|
|
60301
60338
|
totalTokens: latestStepUsage.totalTokens,
|
|
60302
60339
|
reasoningTokens: latestStepUsage.outputTokenDetails?.reasoningTokens ?? latestStepUsage.reasoningTokens,
|
|
60303
60340
|
cachedInputTokens: latestStepUsage.inputTokenDetails?.cacheReadTokens ?? latestStepUsage.cachedInputTokens
|
|
60304
|
-
}
|
|
60305
|
-
}
|
|
60341
|
+
};
|
|
60342
|
+
}
|
|
60343
|
+
return metadata;
|
|
60306
60344
|
},
|
|
60307
60345
|
onError: (error51) => error51 instanceof Error ? `\u751F\u6210\u5931\u8D25\uFF1A${error51.message}` : "\u751F\u6210\u5931\u8D25\uFF1AUnknown error"
|
|
60308
60346
|
});
|
|
@@ -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,
|
|
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-Ai406YO8.js";import{t}from"./html-Cst8cPsk.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};
|