agent-afk 5.330.0 → 5.331.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/agent/daemon/handoff-store.d.ts +1 -0
- package/dist/agent/dag-subagent.d.ts +2 -0
- package/dist/agent/file-checkpoint/file-checkpoint.d.ts +1 -0
- package/dist/agent/file-checkpoint/retention.d.ts +29 -0
- package/dist/agent/file-checkpoint/rewind-files.d.ts +2 -4
- package/dist/agent/file-checkpoint/rewind-plan.d.ts +11 -0
- package/dist/agent/file-checkpoint/turn-lifecycle.d.ts +7 -0
- package/dist/agent/file-checkpoint/turn-log.d.ts +22 -0
- package/dist/agent/journal/types.d.ts +1 -1
- package/dist/agent/provider.d.ts +12 -3
- package/dist/agent/providers/openai-compatible/query/journal-wiring.d.ts +1 -0
- package/dist/agent/providers/openai-compatible/query/turn-iteration.d.ts +4 -1
- package/dist/agent/providers/openai-compatible/query.d.ts +3 -4
- package/dist/agent/providers/openai-compatible/query.file-checkpoint.d.ts +8 -5
- package/dist/agent/providers/router/provider-router.d.ts +2 -4
- package/dist/agent/session/agent-session.d.ts +2 -0
- package/dist/agent/session/session-compact.d.ts +1 -0
- package/dist/agent/session-control/clear.d.ts +5 -0
- package/dist/agent/session-control/compact.d.ts +9 -0
- package/dist/agent/session-control/index.d.ts +5 -0
- package/dist/agent/session-control/model.d.ts +11 -0
- package/dist/agent/session-control/preferences.d.ts +30 -0
- package/dist/agent/session-control/reads.d.ts +28 -0
- package/dist/agent/session-ledger-reader.d.ts +7 -0
- package/dist/agent/subagent/fork-child-config.d.ts +1 -0
- package/dist/agent/subagent/fork-types.d.ts +1 -0
- package/dist/agent/subagent/identity-preamble.d.ts +2 -1
- package/dist/agent/subagent/result.d.ts +7 -0
- package/dist/agent/tools/handlers/lsp-symbols.d.ts +1 -1
- package/dist/agent/tools/subagent/foreground-handoff.d.ts +5 -0
- package/dist/agent/types/session-types.d.ts +6 -0
- package/dist/cli/commands/interactive/bootstrap-session-builder.d.ts +1 -0
- package/dist/cli/config/types.d.ts +2 -0
- package/dist/cli/slash/capabilities.d.ts +8 -0
- package/dist/cli/slash/commands/core.rewind.d.ts +2 -0
- package/dist/cli/slash/commands/info.session.d.ts +2 -0
- package/dist/cli/slash/commands/info.tokens.d.ts +2 -0
- package/dist/cli/slash/commands/info.usage.d.ts +2 -0
- package/dist/cli/slash/interaction.d.ts +18 -0
- package/dist/cli/slash/interaction.repl.d.ts +6 -0
- package/dist/cli/slash/output-blocks.d.ts +38 -0
- package/dist/cli/slash/output-blocks.format.d.ts +15 -0
- package/dist/cli/slash/types.d.ts +9 -0
- package/dist/cli.mjs +574 -536
- package/dist/config/env.d.ts +21 -0
- package/dist/config/env.file-checkpoint.d.ts +22 -0
- package/dist/config/env.session-storage.d.ts +21 -0
- package/dist/index.mjs +1493 -307
- package/dist/paths.checkpoint.d.ts +3 -0
- package/dist/paths.d.ts +1 -1
- package/dist/paths.journal.d.ts +1 -0
- package/dist/telegram/bot.command-descriptors.d.ts +6 -2
- package/dist/telegram/bot.d.ts +0 -4
- package/dist/telegram/handlers/commands.d.ts +1 -6
- package/dist/telegram/handlers/message.d.ts +3 -4
- package/dist/telegram/handlers/{message.compact-handler.d.ts → slash.d.ts} +6 -4
- package/dist/telegram/handlers/slash.model-picker.d.ts +2 -0
- package/dist/telegram/session-manager.d.ts +5 -0
- package/dist/telegram/session-manager.reset.d.ts +26 -0
- package/dist/telegram/slash-context.telegram.d.ts +4 -0
- package/dist/telegram/slash-dispatch.telegram.d.ts +29 -0
- package/dist/telegram/writer.telegram.d.ts +24 -0
- package/dist/telegram.mjs +1419 -514
- package/dist/web-server/choice-broker.d.ts +20 -0
- package/dist/web-server/command-gate.d.ts +3 -2
- package/dist/web-server/fork-ledger.d.ts +4 -0
- package/dist/web-server/ledger-archive.d.ts +1 -0
- package/dist/web-server/routes.choices.d.ts +3 -0
- package/dist/web-server/routes.commands.d.ts +1 -3
- package/dist/web-server/routes.d.ts +3 -0
- package/dist/web-server/routes.resume.d.ts +3 -0
- package/dist/web-server/server.d.ts +2 -0
- package/dist/web-server/session-owner.control.d.ts +37 -0
- package/dist/web-server/session-owner.d.ts +8 -1
- package/dist/web-server/session-owner.lifecycle.d.ts +26 -0
- package/dist/web-server/session-owner.projection.d.ts +5 -0
- package/dist/web-server/session-owner.wiring.d.ts +2 -0
- package/dist/web-server/shared/choice-wire.d.ts +11 -0
- package/dist/web-server/shared/command-wire.d.ts +42 -3
- package/dist/web-server/slash-context.web.d.ts +1 -1
- package/dist/web-server/slash-result.web.d.ts +3 -0
- package/dist/web-server/sse-protocol.d.ts +1 -0
- package/dist/web-server/stream-route.d.ts +2 -1
- package/dist/web-server/writer.buffer.d.ts +4 -1
- package/dist/web-ui-assets/assets/{angular-html-DstdpUqJ.js → angular-html-G2cKI8s3.js} +1 -1
- package/dist/web-ui-assets/assets/{angular-ts--ZQlERbq.js → angular-ts-Dbg6n4y8.js} +1 -1
- package/dist/web-ui-assets/assets/{apl-DA1d-c4u.js → apl-D64VMgkV.js} +1 -1
- package/dist/web-ui-assets/assets/{astro-BI2EXHYx.js → astro-Cl3AHcKf.js} +1 -1
- package/dist/web-ui-assets/assets/{blade-ZMs7qeoC.js → blade-BaqLOt4E.js} +1 -1
- package/dist/web-ui-assets/assets/{c-C6TcqW_H.js → c-CdaCEkA3.js} +1 -1
- package/dist/web-ui-assets/assets/{chapel-9FMsQky4.js → chapel-jSWw1lD8.js} +1 -1
- package/dist/web-ui-assets/assets/{cobol-BZH-GKgp.js → cobol-B3FAur3H.js} +1 -1
- package/dist/web-ui-assets/assets/{coffee-CLaEmmJx.js → coffee-C_YNnHKr.js} +1 -1
- package/dist/web-ui-assets/assets/{cpp-Bj3Zkt25.js → cpp-k2DmhdJn.js} +1 -1
- package/dist/web-ui-assets/assets/{crystal-Ddsq7z4p.js → crystal-D0ZAEmEr.js} +1 -1
- package/dist/web-ui-assets/assets/{css-DxguajHw.js → css-D7ctuinT.js} +1 -1
- package/dist/web-ui-assets/assets/{dist-Dze9FWYd.js → dist-C2cBizxO.js} +2 -2
- package/dist/web-ui-assets/assets/{edge-DrSIr9wQ.js → edge-BT_sLNqb.js} +1 -1
- package/dist/web-ui-assets/assets/{elixir-BIDAnpuG.js → elixir-BY-WcCQZ.js} +1 -1
- package/dist/web-ui-assets/assets/{elm-B75HTYQR.js → elm-Bh9xmoSq.js} +1 -1
- package/dist/web-ui-assets/assets/{erb-DzDzzMBx.js → erb-D0HA_2hb.js} +1 -1
- package/dist/web-ui-assets/assets/{git-rebase-DQxmfkdA.js → git-rebase-phN5MgDL.js} +1 -1
- package/dist/web-ui-assets/assets/{glimmer-js-Bz1hBKOO.js → glimmer-js-p7ASjwLN.js} +1 -1
- package/dist/web-ui-assets/assets/{glimmer-ts-BwidATwh.js → glimmer-ts-Dnn2i1-n.js} +1 -1
- package/dist/web-ui-assets/assets/{glsl-BPubH4Yr.js → glsl-kr7Sct5s.js} +1 -1
- package/dist/web-ui-assets/assets/{graphql-K_od5qE9.js → graphql-GY0lkyG6.js} +1 -1
- package/dist/web-ui-assets/assets/{hack-BdxCTdfu.js → hack-CSnhnTh1.js} +1 -1
- package/dist/web-ui-assets/assets/{haml-Uk7td7aJ.js → haml-COJeGn3e.js} +1 -1
- package/dist/web-ui-assets/assets/{handlebars-Cux2s7cw.js → handlebars-DcGpplin.js} +1 -1
- package/dist/web-ui-assets/assets/{html-MrEarUDb.js → html-C_-nF5jA.js} +1 -1
- package/dist/web-ui-assets/assets/{html-derivative-AZFgQZNG.js → html-derivative-65GvQF5H.js} +1 -1
- package/dist/web-ui-assets/assets/{http-ChXH1Vix.js → http-CR-Y2vaj.js} +1 -1
- package/dist/web-ui-assets/assets/{hurl-tZM-zRVL.js → hurl-CT655Xcj.js} +1 -1
- package/dist/web-ui-assets/assets/index-eYIUud5F.js +88 -0
- package/dist/web-ui-assets/assets/index-hjXgYuFP.css +2 -0
- package/dist/web-ui-assets/assets/{java-B_Ff6LfQ.js → java-BfXOkHiS.js} +1 -1
- package/dist/web-ui-assets/assets/{javascript-Bk1Ckb1o.js → javascript-bUx3f4E6.js} +1 -1
- package/dist/web-ui-assets/assets/{jinja-BbXj58a5.js → jinja-CeQJOvgo.js} +1 -1
- package/dist/web-ui-assets/assets/{jison-BnfuW5zg.js → jison-CDdJF1T3.js} +1 -1
- package/dist/web-ui-assets/assets/{json-CG4eymVn.js → json-CNUeAnq3.js} +1 -1
- package/dist/web-ui-assets/assets/{jsx-BlcGKASI.js → jsx-jBPPj-2P.js} +1 -1
- package/dist/web-ui-assets/assets/{julia-BLD9fhRy.js → julia-Ffo4oiNj.js} +1 -1
- package/dist/web-ui-assets/assets/{just-c7u3pqSR.js → just-WoqMhLPN.js} +1 -1
- package/dist/web-ui-assets/assets/{latex-vuUgVJqz.js → latex-DvTPJWnQ.js} +1 -1
- package/dist/web-ui-assets/assets/{liquid-ByXaqjkG.js → liquid-BENhv3uZ.js} +1 -1
- package/dist/web-ui-assets/assets/{lua-CKmgvTDc.js → lua-BuWrCSeh.js} +1 -1
- package/dist/web-ui-assets/assets/{marko-C3ky0MWx.js → marko-C57EDP9e.js} +1 -1
- package/dist/web-ui-assets/assets/{mdc-B64U3tqF.js → mdc-DTwJqrEn.js} +1 -1
- package/dist/web-ui-assets/assets/{nginx-C90tAf8x.js → nginx-btcrmW_3.js} +1 -1
- package/dist/web-ui-assets/assets/{nim-CYtid-ea.js → nim-0qpAss6M.js} +1 -1
- package/dist/web-ui-assets/assets/{org-BI_L1rME.js → org-ChOz5H9b.js} +1 -1
- package/dist/web-ui-assets/assets/{perl-DdEy98bA.js → perl-DkGTCu5B.js} +1 -1
- package/dist/web-ui-assets/assets/{php-C-GxuMEl.js → php-BXq74HRi.js} +1 -1
- package/dist/web-ui-assets/assets/{pug-CtWAZuVY.js → pug-VBly3Hrp.js} +1 -1
- package/dist/web-ui-assets/assets/{qml-D5yRCrVl.js → qml-By9BHV0E.js} +1 -1
- package/dist/web-ui-assets/assets/{r-Db7j7yK9.js → r-wD-EKGhX.js} +1 -1
- package/dist/web-ui-assets/assets/{razor-aYp5Guo-.js → razor-C7ua423D.js} +1 -1
- package/dist/web-ui-assets/assets/{regexp-6uSK8pdU.js → regexp-CGw_3plU.js} +1 -1
- package/dist/web-ui-assets/assets/{rst-DSxMNPBG.js → rst-DYI5KAID.js} +1 -1
- package/dist/web-ui-assets/assets/{ruby-B_YQuMec.js → ruby-RXd2KUyd.js} +1 -1
- package/dist/web-ui-assets/assets/{sas-M2CyVhwb.js → sas-BI_hDd-V.js} +1 -1
- package/dist/web-ui-assets/assets/{scss-DXRgFgmQ.js → scss-BE93nrLY.js} +1 -1
- package/dist/web-ui-assets/assets/{shellscript-DBPquDVd.js → shellscript-Dm8eyzbm.js} +1 -1
- package/dist/web-ui-assets/assets/{shellsession-DBSRVvdy.js → shellsession-Dl0JKALg.js} +1 -1
- package/dist/web-ui-assets/assets/{soy-7cKQNIH5.js → soy-CKNrhHpK.js} +1 -1
- package/dist/web-ui-assets/assets/{sql-Eomc9xJE.js → sql-CZNswWPI.js} +1 -1
- package/dist/web-ui-assets/assets/{stata-CVsCl2Q7.js → stata-DjmrbOUz.js} +1 -1
- package/dist/web-ui-assets/assets/{surrealql-CNHwzmzE.js → surrealql-DqqZx4Ju.js} +1 -1
- package/dist/web-ui-assets/assets/{svelte-D1kVfiMi.js → svelte-Chj9K27Z.js} +1 -1
- package/dist/web-ui-assets/assets/{templ-CY0baYpe.js → templ-BTLqJqYd.js} +1 -1
- package/dist/web-ui-assets/assets/{tex-CKNqH5xl.js → tex-CglhV978.js} +1 -1
- package/dist/web-ui-assets/assets/{ts-tags-2YP65O09.js → ts-tags-79bKA5Ly.js} +1 -1
- package/dist/web-ui-assets/assets/{tsx-DMj32x8W.js → tsx-CXyhTYi7.js} +1 -1
- package/dist/web-ui-assets/assets/{twig-Dx7tn1oz.js → twig-BrJR9DgZ.js} +1 -1
- package/dist/web-ui-assets/assets/{typescript-BjZXK-hy.js → typescript-BR4aBNWU.js} +1 -1
- package/dist/web-ui-assets/assets/{typst-D7ldBl4E.js → typst-CAGgcUBq.js} +1 -1
- package/dist/web-ui-assets/assets/{vue-DQnTvAjS.js → vue-B5T6PehN.js} +1 -1
- package/dist/web-ui-assets/assets/{vue-html-BIgFCNvD.js → vue-html-CE1dGrtN.js} +1 -1
- package/dist/web-ui-assets/assets/{vue-vine-DXncxst0.js → vue-vine-Cc40SVDS.js} +1 -1
- package/dist/web-ui-assets/assets/{xml-Cq923i6L.js → xml-CAOCSYKi.js} +1 -1
- package/dist/web-ui-assets/assets/{xsl-C8IANOxG.js → xsl-fa6Mwxua.js} +1 -1
- package/dist/web-ui-assets/assets/{yaml-10xbdA0J.js → yaml-CyELmWi2.js} +1 -1
- package/dist/web-ui-assets/index.html +2 -2
- package/package.json +1 -1
- package/dist/agent/elicitation/pending-question-store.d.ts +0 -21
- package/dist/telegram/handlers/commands.model-validate.d.ts +0 -2
- package/dist/telegram/handlers/help.d.ts +0 -3
- package/dist/telegram/handlers/usage.d.ts +0 -4
- package/dist/web-ui-assets/assets/index-BTPdNino.css +0 -2
- package/dist/web-ui-assets/assets/index-CHknBrIe.js +0 -86
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ChoiceRequest, ChoiceProgressEvent, ChoiceSsePayload } from './shared/choice-wire.js';
|
|
2
|
+
export type ChoiceAnswerResult = 'answered' | 'unknown' | 'wrong_session' | 'invalid_value';
|
|
3
|
+
type Subscriber = (event: ChoiceSsePayload) => void;
|
|
4
|
+
export declare class ChoiceBroker {
|
|
5
|
+
private readonly timeoutMs;
|
|
6
|
+
private readonly pending;
|
|
7
|
+
private readonly subscribers;
|
|
8
|
+
constructor(timeoutMs?: number);
|
|
9
|
+
subscribe(sessionId: string, subscriber: Subscriber): () => void;
|
|
10
|
+
replayPending(sessionId: string, subscriber: Subscriber): void;
|
|
11
|
+
choose(sessionId: string, request: ChoiceRequest, signal?: AbortSignal): Promise<string | null>;
|
|
12
|
+
answer(sessionId: string, corrId: string, value: string | null): ChoiceAnswerResult;
|
|
13
|
+
progress(sessionId: string, event: ChoiceProgressEvent): void;
|
|
14
|
+
cancelSession(sessionId: string): void;
|
|
15
|
+
cancelAll(): void;
|
|
16
|
+
private settle;
|
|
17
|
+
private publish;
|
|
18
|
+
private deliver;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
export declare function
|
|
1
|
+
import { type SurfaceCapability } from '../cli/slash/capabilities.js';
|
|
2
|
+
export declare function isGated(name: string, provided?: ReadonlySet<SurfaceCapability>): boolean;
|
|
3
|
+
export declare function gateReason(name: string, provided?: ReadonlySet<SurfaceCapability>): string | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function archiveSessionLedger(sessionId: string, now?: Date): string | undefined;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import type { ServerResponse } from 'node:http';
|
|
2
2
|
import type { RouteContext } from './routes.js';
|
|
3
|
-
|
|
4
|
-
import type { CommandControl } from './shared/command-wire.js';
|
|
5
|
-
export declare function normalizeSlashResult(result: SlashResult): CommandControl;
|
|
3
|
+
export { normalizeSlashResult } from './slash-result.web.js';
|
|
6
4
|
export declare function handleCommand(ctx: RouteContext, res: ServerResponse, sessionId: string, body: unknown): Promise<void>;
|
|
@@ -8,6 +8,7 @@ export { SECURITY_HEADERS };
|
|
|
8
8
|
export interface RouteContext {
|
|
9
9
|
owned: Set<string>;
|
|
10
10
|
bridge: WebElicitationBridge;
|
|
11
|
+
choiceBroker?: import('./choice-broker.js').ChoiceBroker;
|
|
11
12
|
submitPrompt: (sessionId: string, text: string) => void;
|
|
12
13
|
submitSkillMessage?: (sessionId: string, message: ContentBlockParam[]) => void;
|
|
13
14
|
getSessionCwd?: (sessionId: string) => string | undefined;
|
|
@@ -16,7 +17,9 @@ export interface RouteContext {
|
|
|
16
17
|
reserveTurn?: (sessionId: string) => void;
|
|
17
18
|
releaseTurn?: (sessionId: string) => void;
|
|
18
19
|
getSession?: (id: string) => import('../agent/session/agent-session.js').AgentSession | undefined;
|
|
20
|
+
executeSessionControl?: (id: string, command: import('../cli/slash/types.js').SlashCommand, context: import('../cli/slash/types.js').SlashContext, args: string) => Promise<import('./session-owner.control.js').SessionControlResult>;
|
|
19
21
|
createSession?: (request: CreateSessionRequest) => Promise<OwnedSessionInfo>;
|
|
22
|
+
resumeSession?: (pastSessionId: string) => Promise<import('./session-owner.lifecycle.js').ResumeByIdResult>;
|
|
20
23
|
interrupt?: (sessionId: string) => Promise<void>;
|
|
21
24
|
}
|
|
22
25
|
export declare function sendJson(res: ServerResponse, status: number, body: unknown): void;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { WebElicitationBridge } from './elicitation-web.js';
|
|
2
2
|
import type { SessionOwner } from './session-owner.js';
|
|
3
|
+
import { ChoiceBroker } from './choice-broker.js';
|
|
3
4
|
export declare const DEFAULT_WEB_PORT = 4141;
|
|
4
5
|
export declare const DEFAULT_WEB_HOST = "127.0.0.1";
|
|
5
6
|
export interface WebServerOptions {
|
|
@@ -19,6 +20,7 @@ export interface WebServerHandle {
|
|
|
19
20
|
url: string;
|
|
20
21
|
openUrl: string;
|
|
21
22
|
bridge: WebElicitationBridge;
|
|
23
|
+
choiceBroker: ChoiceBroker;
|
|
22
24
|
stop: () => Promise<void>;
|
|
23
25
|
}
|
|
24
26
|
export declare function startWebServer(options?: WebServerOptions): Promise<WebServerHandle>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { FastModeController } from '../agent/fast-mode.js';
|
|
2
|
+
import type { SessionAutosaver } from '../cli/session-autosave.js';
|
|
3
|
+
import type { AgentSession } from '../agent/session/agent-session.js';
|
|
4
|
+
import type { SlashCommand, SlashContext, SessionStats } from '../cli/slash/types.js';
|
|
5
|
+
import type { CommandControl } from './shared/command-wire.js';
|
|
6
|
+
import type { SessionOwner } from './session-owner.js';
|
|
7
|
+
export interface SessionControlResult {
|
|
8
|
+
result: Awaited<ReturnType<SlashCommand['handler']>>;
|
|
9
|
+
control?: CommandControl;
|
|
10
|
+
session?: {
|
|
11
|
+
model?: string;
|
|
12
|
+
name?: string;
|
|
13
|
+
thinkingUi?: 'summary' | 'live' | 'digest' | 'off';
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export declare class WebSessionControl {
|
|
17
|
+
readonly id: string;
|
|
18
|
+
private readonly session;
|
|
19
|
+
private readonly stats;
|
|
20
|
+
private readonly onMetadata;
|
|
21
|
+
private readonly hasCustomEndpoint;
|
|
22
|
+
private readonly owner?;
|
|
23
|
+
readonly fastMode: FastModeController;
|
|
24
|
+
private projection;
|
|
25
|
+
private bound;
|
|
26
|
+
constructor(id: string, session: AgentSession, stats: SessionStats, onMetadata: (metadata: {
|
|
27
|
+
model: string;
|
|
28
|
+
name?: string;
|
|
29
|
+
}) => void, fastMode?: FastModeController, hasCustomEndpoint?: boolean, owner?: SessionOwner | undefined);
|
|
30
|
+
context(): Pick<SlashContext, 'fastMode' | 'getFastModeContext'>;
|
|
31
|
+
autosaver(onError: (error: unknown) => void): SessionAutosaver;
|
|
32
|
+
execute(cmd: SlashCommand, ctx: SlashContext, args: string): Promise<SessionControlResult>;
|
|
33
|
+
private executeRewind;
|
|
34
|
+
private persist;
|
|
35
|
+
private resetProjection;
|
|
36
|
+
close(): Promise<void>;
|
|
37
|
+
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { PermissionMode } from '../agent/types/sdk-types.js';
|
|
2
2
|
import type { ContentBlockParam } from '@anthropic-ai/sdk/resources';
|
|
3
|
+
import { type SessionControlResult } from './session-owner.control.js';
|
|
4
|
+
import type { SlashCommand, SlashContext } from '../cli/slash/types.js';
|
|
3
5
|
export interface CreateSessionRequest {
|
|
4
6
|
cwd?: string;
|
|
5
7
|
model?: string;
|
|
@@ -9,6 +11,7 @@ export interface OwnedSessionInfo {
|
|
|
9
11
|
cwd: string;
|
|
10
12
|
model: string;
|
|
11
13
|
createdAt: string;
|
|
14
|
+
name?: string;
|
|
12
15
|
}
|
|
13
16
|
export interface SessionOwnerOptions {
|
|
14
17
|
cwd?: string;
|
|
@@ -25,9 +28,12 @@ export declare class SessionOwner {
|
|
|
25
28
|
private readonly turns;
|
|
26
29
|
private readonly pending;
|
|
27
30
|
private readonly autosavers;
|
|
31
|
+
private readonly controls;
|
|
32
|
+
private cancelChoices?;
|
|
33
|
+
setChoiceCancellation(cancel: ((sessionId: string) => void) | undefined): void;
|
|
28
34
|
constructor(options: SessionOwnerOptions);
|
|
29
35
|
private get baseCwd();
|
|
30
|
-
create(request?: CreateSessionRequest): Promise<OwnedSessionInfo>;
|
|
36
|
+
create(request?: CreateSessionRequest, resumeConfig?: Partial<import('../agent/types.js').AgentConfig>): Promise<OwnedSessionInfo>;
|
|
31
37
|
submitPrompt(sessionId: string, text: string): void;
|
|
32
38
|
submitSkillMessage(sessionId: string, message: ContentBlockParam[]): void;
|
|
33
39
|
private enqueueTurn;
|
|
@@ -39,5 +45,6 @@ export declare class SessionOwner {
|
|
|
39
45
|
interrupt(sessionId: string): Promise<void>;
|
|
40
46
|
list(): OwnedSessionInfo[];
|
|
41
47
|
getSession(id: string): import('../agent/session/agent-session.js').AgentSession | undefined;
|
|
48
|
+
executeSessionControl(id: string, cmd: SlashCommand, ctx: SlashContext, args: string): Promise<SessionControlResult>;
|
|
42
49
|
closeAll(): Promise<void>;
|
|
43
50
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { findSession } from '../cli/session-store.js';
|
|
2
|
+
import type { SlashContext } from '../cli/slash/types.js';
|
|
3
|
+
import type { CommandControl } from './shared/command-wire.js';
|
|
4
|
+
import type { SessionOwner } from './session-owner.js';
|
|
5
|
+
export declare function handleWebExit(_owner: SessionOwner, sessionId: string, ctx: SlashContext): Promise<CommandControl>;
|
|
6
|
+
export declare function handleWebResumeList(ctx: SlashContext): Promise<'continue'>;
|
|
7
|
+
export declare function handleWebResumeTarget(owner: SessionOwner, _sessionId: string, ctx: SlashContext, target: string): Promise<CommandControl | 'continue'>;
|
|
8
|
+
type StoredSession = NonNullable<ReturnType<typeof findSession>>;
|
|
9
|
+
export declare function resumeStoredSession(owner: SessionOwner, found: StoredSession, fallback?: {
|
|
10
|
+
model?: string;
|
|
11
|
+
cwd?: string;
|
|
12
|
+
}): Promise<{
|
|
13
|
+
id: string;
|
|
14
|
+
}>;
|
|
15
|
+
export declare function isLiveElsewhere(found: StoredSession): Promise<boolean>;
|
|
16
|
+
export type ResumeByIdResult = {
|
|
17
|
+
kind: 'resumed';
|
|
18
|
+
id: string;
|
|
19
|
+
} | {
|
|
20
|
+
kind: 'not-found';
|
|
21
|
+
} | {
|
|
22
|
+
kind: 'live-elsewhere';
|
|
23
|
+
};
|
|
24
|
+
export declare function resumeStoredSessionById(owner: SessionOwner, target: string): Promise<ResumeByIdResult>;
|
|
25
|
+
export declare function handleWebFork(owner: SessionOwner, _sessionId: string, ctx: SlashContext): Promise<CommandControl | 'continue'>;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { AgentSession } from '../agent/session/agent-session.js';
|
|
2
|
+
import type { JournalMessage } from '../agent/journal/index.js';
|
|
3
|
+
import type { LedgerPayload } from '../agent/session-ledger.js';
|
|
4
|
+
export declare function readProjectionMessages(session: AgentSession): Promise<JournalMessage[]>;
|
|
5
|
+
export declare function projectJournalMessages(messages: readonly JournalMessage[]): LedgerPayload[];
|
|
@@ -7,6 +7,7 @@ import { MemoryStore } from '../agent/memory/index.js';
|
|
|
7
7
|
import type { AgentSession } from '../agent/session/agent-session.js';
|
|
8
8
|
import type { AgentConfig } from '../agent/types.js';
|
|
9
9
|
import type { TraceWriter } from '../agent/trace/index.js';
|
|
10
|
+
import type { FastModeController } from '../agent/fast-mode.js';
|
|
10
11
|
export interface WebSessionWiring {
|
|
11
12
|
provider: AnthropicDirectProvider;
|
|
12
13
|
executors: WiredExecutors;
|
|
@@ -28,6 +29,7 @@ export interface WireWebSessionOptions {
|
|
|
28
29
|
rawPrompt: string | undefined;
|
|
29
30
|
rawPromptSource: string | undefined;
|
|
30
31
|
operatorOverlay?: string | undefined;
|
|
32
|
+
fastModeController?: FastModeController;
|
|
31
33
|
}
|
|
32
34
|
export declare function wireWebSession(opts: WireWebSessionOptions): Promise<WebSessionWiring>;
|
|
33
35
|
export interface WebSessionWiringInternal extends WebSessionWiring {
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type { ChoiceRequest, ProgressEvent as ChoiceProgressEvent } from '../../cli/slash/interaction.js';
|
|
2
|
+
import type { ChoiceRequest, ProgressEvent } from '../../cli/slash/interaction.js';
|
|
3
|
+
export type ChoiceSsePayload = {
|
|
4
|
+
type: 'choice_request';
|
|
5
|
+
request: ChoiceRequest;
|
|
6
|
+
} | ({
|
|
7
|
+
type: 'progress';
|
|
8
|
+
} & ProgressEvent) | {
|
|
9
|
+
type: 'choice_settled';
|
|
10
|
+
corrId: string;
|
|
11
|
+
};
|
|
@@ -1,15 +1,54 @@
|
|
|
1
|
-
export
|
|
2
|
-
ansi: string;
|
|
1
|
+
export type CommandOutputBlock = {
|
|
3
2
|
text: string;
|
|
4
|
-
|
|
3
|
+
ansi: string;
|
|
4
|
+
} & ({
|
|
5
|
+
kind?: 'text';
|
|
6
|
+
} | {
|
|
7
|
+
kind: 'table';
|
|
8
|
+
title?: string;
|
|
9
|
+
columns: string[];
|
|
10
|
+
rows: string[][];
|
|
11
|
+
} | {
|
|
12
|
+
kind: 'keyValue';
|
|
13
|
+
title?: string;
|
|
14
|
+
entries: Array<{
|
|
15
|
+
key: string;
|
|
16
|
+
value: string;
|
|
17
|
+
}>;
|
|
18
|
+
} | {
|
|
19
|
+
kind: 'diff';
|
|
20
|
+
diff: string;
|
|
21
|
+
fileName?: string;
|
|
22
|
+
} | {
|
|
23
|
+
kind: 'list';
|
|
24
|
+
title?: string;
|
|
25
|
+
items: Array<{
|
|
26
|
+
text: string;
|
|
27
|
+
description?: string;
|
|
28
|
+
}>;
|
|
29
|
+
} | {
|
|
30
|
+
kind: 'link';
|
|
31
|
+
url: string;
|
|
32
|
+
label: string;
|
|
33
|
+
});
|
|
5
34
|
export interface CommandResponse {
|
|
6
35
|
blocks: CommandOutputBlock[];
|
|
7
36
|
control: CommandControl;
|
|
37
|
+
session?: {
|
|
38
|
+
model?: string;
|
|
39
|
+
name?: string;
|
|
40
|
+
thinkingUi?: 'summary' | 'live' | 'digest' | 'off';
|
|
41
|
+
};
|
|
8
42
|
}
|
|
9
43
|
export type CommandControl = {
|
|
10
44
|
kind: 'continue';
|
|
45
|
+
} | {
|
|
46
|
+
kind: 'clear';
|
|
11
47
|
} | {
|
|
12
48
|
kind: 'exit';
|
|
49
|
+
} | {
|
|
50
|
+
kind: 'navigate';
|
|
51
|
+
sessionId: string;
|
|
13
52
|
} | {
|
|
14
53
|
kind: 'forward';
|
|
15
54
|
} | {
|
|
@@ -2,4 +2,4 @@ import type { SlashContext } from '../cli/slash/types.js';
|
|
|
2
2
|
import type { SessionRef } from '../agent/session-ref.js';
|
|
3
3
|
import type { SessionStats } from '../cli/slash/types.js';
|
|
4
4
|
import type { BufferingWriter } from './writer.buffer.js';
|
|
5
|
-
export declare function createWebSlashContext(sessionRef: SessionRef, stats: SessionStats, writer: BufferingWriter, cwd: string): SlashContext;
|
|
5
|
+
export declare function createWebSlashContext(sessionRef: SessionRef, stats: SessionStats, writer: BufferingWriter, cwd: string, controls?: Pick<SlashContext, 'fastMode' | 'getFastModeContext'>): SlashContext;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import type { IncomingMessage, ServerResponse } from 'node:http';
|
|
2
|
-
|
|
2
|
+
import type { ChoiceBroker } from './choice-broker.js';
|
|
3
|
+
export declare function handleStream(req: IncomingMessage, res: ServerResponse, sessionId: string, streams?: Set<AbortController>, choices?: ChoiceBroker): Promise<void>;
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import type { WriterSink } from '../cli/slash/writer.js';
|
|
2
2
|
import type { Writer } from '../cli/slash/types.js';
|
|
3
|
+
import type { OutputBlock } from '../cli/slash/output-blocks.js';
|
|
3
4
|
import type { CommandOutputBlock } from './shared/command-wire.js';
|
|
4
5
|
export declare class BufferingWriter implements WriterSink {
|
|
5
|
-
private readonly
|
|
6
|
+
private readonly entries;
|
|
6
7
|
fn(line: string): void;
|
|
7
8
|
rawFn(text: string): void;
|
|
9
|
+
block(block: OutputBlock): void;
|
|
8
10
|
getChunks(): string[];
|
|
9
11
|
asWriterInterface(): Writer;
|
|
12
|
+
toOutputBlocks(): CommandOutputBlock[];
|
|
10
13
|
toOutputBlock(): CommandOutputBlock;
|
|
11
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{l as e}from"./index-CHknBrIe.js";import{t}from"./html-MrEarUDb.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{l as e}from"./index-eYIUud5F.js";import{t}from"./html-C_-nF5jA.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};
|