@nuxt/scripts 0.1.12 → 0.3.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/README.md +10 -200
- package/dist/client/200.html +63 -54
- package/dist/client/404.html +63 -54
- package/dist/client/_nuxt/8T3kBMJO.js +31 -0
- package/dist/client/_nuxt/B5NHDIr7.js +353 -0
- package/dist/client/_nuxt/{Bz4xi2rU.js → B6ZnTe72.js} +1 -1
- package/dist/client/_nuxt/{B6nY7VDA.js → B6bHXiXE.js} +1 -1
- package/dist/client/_nuxt/BAMIS8DD.js +1 -0
- package/dist/client/_nuxt/{A1WiD9SJ.js → BGq4KZyx.js} +1 -1
- package/dist/client/_nuxt/BVGdgKAv.js +1 -0
- package/dist/client/_nuxt/{wORFcijT.js → BXR915QZ.js} +1 -1
- package/dist/client/_nuxt/{DCj4DH6i.js → BYdKNJ10.js} +1 -1
- package/dist/client/_nuxt/BZfs-ost.js +1 -0
- package/dist/client/_nuxt/{DCdPDLy4.js → BacI6-DX.js} +1 -1
- package/dist/client/_nuxt/{DCk2z-Tu.js → BdfWgkoX.js} +1 -1
- package/dist/client/_nuxt/BscxmKrE.js +8 -0
- package/dist/client/_nuxt/C3qJFuQy.js +3 -0
- package/dist/client/_nuxt/C6XIsc4F.js +1 -0
- package/dist/client/_nuxt/C9UBdavN.js +1 -0
- package/dist/client/_nuxt/CA9nliXM.js +1 -0
- package/dist/client/_nuxt/CDJL3WWm.js +1 -0
- package/dist/client/_nuxt/{BsfQk1vf.js → CEfge3mM.js} +1 -1
- package/dist/client/_nuxt/{CQTpvb7m.js → CHCTrc3a.js} +1 -1
- package/dist/client/_nuxt/{DZ3fVoEH.js → CSPeAESR.js} +1 -1
- package/dist/client/_nuxt/CX2EUjC8.js +301 -0
- package/dist/client/_nuxt/{DCAtC51B.js → CarfVElc.js} +1 -1
- package/dist/client/_nuxt/{BgBwMnrY.js → CcYwH0AH.js} +1 -1
- package/dist/client/_nuxt/Cgl53LJQ.js +1 -0
- package/dist/client/_nuxt/{RgJsN3zu.js → ChMCFiS0.js} +1 -1
- package/dist/client/_nuxt/{CW3w6uup.js → CovTDKFE.js} +1 -1
- package/dist/client/_nuxt/{DfUNg_8t.js → CqYeW6XZ.js} +1 -1
- package/dist/client/_nuxt/{CL7Ixq1B.js → CrgTADc5.js} +1 -1
- package/dist/client/_nuxt/CuJfdYLG.js +1 -0
- package/dist/client/_nuxt/CudBhkk3.js +1 -0
- package/dist/client/_nuxt/D71BffLY.js +1 -0
- package/dist/client/_nuxt/{7fd6vGzb.js → DBeuZS66.js} +1 -1
- package/dist/client/_nuxt/{Bd7iooY8.js → DGDuLtS6.js} +1 -1
- package/dist/client/_nuxt/{j8KhMG0x.js → DGxQkqYo.js} +1 -1
- package/dist/client/_nuxt/DIt5FBMJ.js +1 -0
- package/dist/client/_nuxt/DOakR0z3.js +1 -0
- package/dist/client/_nuxt/{CUVblut_.js → DR5YgmI2.js} +1 -1
- package/dist/client/_nuxt/DS9ZWoKD.js +1 -0
- package/dist/client/_nuxt/{D-pQtGOP.js → DVLwECkk.js} +1 -1
- package/dist/client/_nuxt/DZLoTQm4.js +1 -0
- package/dist/client/_nuxt/{ZQC2c-5V.js → D_T9yQUo.js} +3 -3
- package/dist/client/_nuxt/Db2-y2xY.js +1 -0
- package/dist/client/_nuxt/{CRWwmX0L.js → Di3qjVs2.js} +1 -1
- package/dist/client/_nuxt/{DXpYegZJ.js → Djqq6n-7.js} +1 -1
- package/dist/client/_nuxt/Dkb1Nx48.js +1 -0
- package/dist/client/_nuxt/{BBv1LFm6.js → DtT2Dbx_.js} +1 -1
- package/dist/client/_nuxt/{DywwDckn.js → Du6_OKDb.js} +1 -1
- package/dist/client/_nuxt/{IHMnEr_d.js → G-Jz5hiA.js} +1 -1
- package/dist/client/_nuxt/HrnDn_2Q.js +1 -0
- package/dist/client/_nuxt/{CPHkTjfH.js → JgH_6NEN.js} +1 -1
- package/dist/client/_nuxt/Ksn5IXup.js +1 -0
- package/dist/client/_nuxt/{wPLeKH6q.js → Lpdzc9s2.js} +1 -1
- package/dist/client/_nuxt/{DggdVF2v.js → V_y36BGi.js} +1 -1
- package/dist/client/_nuxt/{BILqrcpa.js → YdT6Gj0u.js} +1 -1
- package/dist/client/_nuxt/alpzPJ78.js +1 -0
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/ccc94de9-89fa-400b-88f2-8fc2599e191f.json +1 -0
- package/dist/client/_nuxt/{Bdb36Id5.js → dIHJ9UdL.js} +1 -1
- package/dist/client/_nuxt/error-404.BRldFSII.css +1 -0
- package/dist/client/_nuxt/error-500.D8yw_IbC.css +1 -0
- package/dist/client/_nuxt/o5b8QYQO.js +3 -0
- package/dist/client/_nuxt/{doGI2cFk.js → wKgfcFVx.js} +1 -1
- package/dist/client/index.html +63 -54
- package/dist/module.d.mts +2 -6
- package/dist/module.d.ts +2 -6
- package/dist/module.json +6 -2
- package/dist/module.mjs +68 -137
- package/dist/registry.d.mts +13 -0
- package/dist/registry.d.ts +13 -0
- package/dist/registry.mjs +214 -0
- package/dist/runtime/components/GoogleMaps.vue +130 -0
- package/dist/runtime/components/LemonSqueezyButton.vue +28 -0
- package/dist/runtime/components/StripePricingTableEmbed.vue +33 -0
- package/dist/runtime/components/VimeoEmbed.vue +161 -0
- package/dist/runtime/components/YouTubeEmbed.vue +79 -0
- package/dist/runtime/composables/createConsentScriptTrigger.d.ts +6 -0
- package/dist/runtime/composables/{createScriptConsentTrigger.mjs → createConsentScriptTrigger.mjs} +1 -1
- package/dist/runtime/composables/useAnalyticsPageEvent.d.ts +4 -1
- package/dist/runtime/composables/useElementScriptTrigger.d.ts +3 -0
- package/dist/runtime/composables/useElementScriptTrigger.mjs +9 -0
- package/dist/runtime/composables/useScript.d.ts +2 -2
- package/dist/runtime/composables/useScript.mjs +1 -2
- package/dist/runtime/registry/cloudflare-web-analytics.d.ts +11 -7
- package/dist/runtime/registry/cloudflare-web-analytics.mjs +16 -18
- package/dist/runtime/registry/facebook-pixel.d.ts +6 -5
- package/dist/runtime/registry/facebook-pixel.mjs +15 -17
- package/dist/runtime/registry/fathom-analytics.d.ts +39 -14
- package/dist/runtime/registry/fathom-analytics.mjs +40 -21
- package/dist/runtime/registry/google-analytics.d.ts +21 -1
- package/dist/runtime/registry/google-analytics.mjs +30 -3
- package/dist/runtime/registry/google-maps.d.ts +23 -1
- package/dist/runtime/registry/google-maps.mjs +40 -3
- package/dist/runtime/registry/google-tag-manager.d.ts +21 -1
- package/dist/runtime/registry/google-tag-manager.mjs +29 -3
- package/dist/runtime/registry/hotjar.d.ts +5 -3
- package/dist/runtime/registry/hotjar.mjs +14 -18
- package/dist/runtime/registry/intercom.d.ts +5 -3
- package/dist/runtime/registry/intercom.mjs +19 -16
- package/dist/runtime/registry/lemon-squeezy.d.ts +68 -0
- package/dist/runtime/registry/lemon-squeezy.mjs +21 -0
- package/dist/runtime/registry/matomo-analytics.d.ts +24 -0
- package/dist/runtime/registry/matomo-analytics.mjs +33 -0
- package/dist/runtime/registry/npm.d.ts +7 -3
- package/dist/runtime/registry/npm.mjs +10 -11
- package/dist/runtime/registry/plausible-analytics.d.ts +22 -0
- package/dist/runtime/registry/plausible-analytics.mjs +35 -0
- package/dist/runtime/registry/segment.d.ts +5 -3
- package/dist/runtime/registry/segment.mjs +34 -34
- package/dist/runtime/registry/stripe.d.ts +18 -0
- package/dist/runtime/registry/stripe.mjs +27 -0
- package/dist/runtime/registry/vimeo-player.d.ts +15 -0
- package/dist/runtime/registry/vimeo-player.mjs +45 -0
- package/dist/runtime/registry/x-pixel.d.ts +41 -0
- package/dist/runtime/registry/x-pixel.mjs +28 -0
- package/dist/runtime/registry/youtube-iframe.d.ts +15 -0
- package/dist/runtime/registry/youtube-iframe.mjs +54 -0
- package/dist/runtime/types.d.ts +31 -17
- package/dist/runtime/utils.d.ts +16 -1
- package/dist/runtime/utils.mjs +30 -1
- package/package.json +40 -25
- package/dist/client/_nuxt/BG_OyJVq.js +0 -1
- package/dist/client/_nuxt/BIMuYTWL.js +0 -3
- package/dist/client/_nuxt/BSyl5yf0.js +0 -1
- package/dist/client/_nuxt/BswfO-CF.js +0 -1
- package/dist/client/_nuxt/C3YqBJkQ.js +0 -1
- package/dist/client/_nuxt/CGQbO34C.js +0 -1
- package/dist/client/_nuxt/CKtB_0Vj.js +0 -36
- package/dist/client/_nuxt/CrjQeCwm.js +0 -1
- package/dist/client/_nuxt/D4LhxNOI.js +0 -1
- package/dist/client/_nuxt/D4k753MY.js +0 -1
- package/dist/client/_nuxt/D75a3hZQ.js +0 -1
- package/dist/client/_nuxt/DnhXxWz-.js +0 -1
- package/dist/client/_nuxt/DzPyIVdT.js +0 -9
- package/dist/client/_nuxt/TQ9oWRfF.js +0 -1
- package/dist/client/_nuxt/WoBtJUue.js +0 -1
- package/dist/client/_nuxt/bmJ2objS.js +0 -1
- package/dist/client/_nuxt/builds/meta/7bb27f9d-e4a9-494c-83a3-01bc2df7d17d.json +0 -1
- package/dist/client/_nuxt/error-404.ORekjfyJ.css +0 -1
- package/dist/client/_nuxt/error-500.BIuFL0tW.css +0 -1
- package/dist/client/_nuxt/yr0V4Txy.js +0 -1
- package/dist/runtime/composables/createScriptConsentTrigger.d.ts +0 -6
- package/dist/runtime/composables/validateScriptInputSchema.d.ts +0 -2
- package/dist/runtime/composables/validateScriptInputSchema.mjs +0 -14
- package/dist/runtime/registry/cloudflare-turnstile.d.ts +0 -1
- package/dist/runtime/registry/cloudflare-turnstile.mjs +0 -4
- package/dist/runtime/registry/confetti.d.ts +0 -23
- package/dist/runtime/registry/confetti.mjs +0 -15
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { object, optional, string } from "valibot";
|
|
2
|
+
import { registryScript } from "../utils.mjs";
|
|
3
|
+
export const XPixelOptions = object({
|
|
4
|
+
id: string(),
|
|
5
|
+
version: optional(string())
|
|
6
|
+
});
|
|
7
|
+
export function useScriptXPixel(_options) {
|
|
8
|
+
return registryScript("xPixel", (options) => ({
|
|
9
|
+
scriptInput: {
|
|
10
|
+
src: "https://static.ads-twitter.com/uwt.js"
|
|
11
|
+
},
|
|
12
|
+
schema: XPixelOptions,
|
|
13
|
+
scriptOptions: {
|
|
14
|
+
use() {
|
|
15
|
+
return { twq: window.twq };
|
|
16
|
+
},
|
|
17
|
+
clientInit: import.meta.server ? void 0 : () => {
|
|
18
|
+
const s = window.twq = function(...params) {
|
|
19
|
+
s.exe ? s.exe(s, ...params) : s.queue.push(params);
|
|
20
|
+
};
|
|
21
|
+
s.version = options?.version || "1.1";
|
|
22
|
+
s.queue = [
|
|
23
|
+
["config", options?.id]
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}), _options);
|
|
28
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type YT from '@types/youtube';
|
|
2
|
+
import type { RegistryScriptInput } from '#nuxt-scripts';
|
|
3
|
+
export interface YouTubeIframeApi {
|
|
4
|
+
YT: typeof YT;
|
|
5
|
+
}
|
|
6
|
+
declare global {
|
|
7
|
+
interface Window extends YouTubeIframeApi {
|
|
8
|
+
onYouTubeIframeAPIReady: () => void;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export declare const YouTubeIframeOptions: import("valibot").ObjectSchema<{}, undefined, {}>;
|
|
12
|
+
export type YouTubeIFrameInput = RegistryScriptInput<typeof YouTubeIframeOptions>;
|
|
13
|
+
export declare function useScriptYouTubeIframe<T extends YouTubeIframeApi>(_options: YouTubeIFrameInput): T & {
|
|
14
|
+
$script: import("@unhead/vue").VueScriptInstance<T> & Promise<T>;
|
|
15
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { object } from "valibot";
|
|
2
|
+
import { registryScript } from "../utils.mjs";
|
|
3
|
+
import { useHead } from "#imports";
|
|
4
|
+
export const YouTubeIframeOptions = object({
|
|
5
|
+
// no options afaik
|
|
6
|
+
});
|
|
7
|
+
export function useScriptYouTubeIframe(_options) {
|
|
8
|
+
let readyPromise = Promise.resolve();
|
|
9
|
+
return registryScript("youtubeIframe", () => ({
|
|
10
|
+
scriptInput: {
|
|
11
|
+
src: "https://www.youtube.com/iframe_api",
|
|
12
|
+
// opt-out of privacy defaults
|
|
13
|
+
// @ts-expect-error TODO add types
|
|
14
|
+
crossorigin: null
|
|
15
|
+
},
|
|
16
|
+
schema: YouTubeIframeOptions,
|
|
17
|
+
scriptOptions: {
|
|
18
|
+
use() {
|
|
19
|
+
return {
|
|
20
|
+
YT: readyPromise.then(() => {
|
|
21
|
+
return window.YT;
|
|
22
|
+
})
|
|
23
|
+
};
|
|
24
|
+
},
|
|
25
|
+
clientInit: import.meta.server ? void 0 : () => {
|
|
26
|
+
readyPromise = new Promise((resolve) => {
|
|
27
|
+
window.onYouTubeIframeAPIReady = resolve;
|
|
28
|
+
});
|
|
29
|
+
},
|
|
30
|
+
beforeInit() {
|
|
31
|
+
useHead({
|
|
32
|
+
link: [
|
|
33
|
+
{
|
|
34
|
+
rel: "preconnect",
|
|
35
|
+
href: "https://www.youtube-nocookie.com"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
rel: "preconnect",
|
|
39
|
+
href: "https://www.google.com"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
rel: "preconnect",
|
|
43
|
+
href: "https://googleads.g.doubleclick.net"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
rel: "preconnect",
|
|
47
|
+
href: "https://static.doubleclick.net"
|
|
48
|
+
}
|
|
49
|
+
]
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}), _options);
|
|
54
|
+
}
|
package/dist/runtime/types.d.ts
CHANGED
|
@@ -9,7 +9,13 @@ import type { FacebookPixelInput } from './registry/facebook-pixel';
|
|
|
9
9
|
import type { FathomAnalyticsInput } from './registry/fathom-analytics';
|
|
10
10
|
import type { HotjarInput } from './registry/hotjar';
|
|
11
11
|
import type { IntercomInput } from './registry/intercom';
|
|
12
|
-
import type {
|
|
12
|
+
import type { GoogleAnalyticsInput } from './registry/google-analytics';
|
|
13
|
+
import type { GoogleMapsInput } from './registry/google-maps';
|
|
14
|
+
import type { GoogleTagManagerInput } from './registry/google-tag-manager';
|
|
15
|
+
import type { MatomoAnalyticsInput } from './registry/matomo-analytics';
|
|
16
|
+
import type { StripeInput } from './registry/stripe';
|
|
17
|
+
import type { VimeoPlayerInput } from './registry/vimeo-player';
|
|
18
|
+
import type { XPixelInput } from './registry/x-pixel';
|
|
13
19
|
export type NuxtUseScriptOptions<T = any> = Omit<UseScriptOptions<T>, 'trigger'> & {
|
|
14
20
|
/**
|
|
15
21
|
* The trigger to load the script:
|
|
@@ -22,14 +28,10 @@ export type NuxtUseScriptOptions<T = any> = Omit<UseScriptOptions<T>, 'trigger'>
|
|
|
22
28
|
* Should the script be bundled as an asset and loaded from your server. This is useful for improving the
|
|
23
29
|
* performance by avoiding the extra DNS lookup and reducing the number of requests. It also
|
|
24
30
|
* improves privacy by not sharing the user's IP address with third-party servers.
|
|
25
|
-
* - `
|
|
26
|
-
* - `
|
|
31
|
+
* - `true` - Bundle the script as an asset.
|
|
32
|
+
* - `false` - Do not bundle the script. (default)
|
|
27
33
|
*/
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* A hook to run when a script does not exist and will be initialized for the first time.
|
|
31
|
-
*/
|
|
32
|
-
beforeInit?: () => void;
|
|
34
|
+
bundle?: boolean;
|
|
33
35
|
};
|
|
34
36
|
export type NuxtUseScriptIntegrationOptions = Omit<NuxtUseScriptOptions, 'use'>;
|
|
35
37
|
export type NuxtUseScriptInput = UseScriptInput;
|
|
@@ -62,22 +64,34 @@ export interface NuxtAppScript {
|
|
|
62
64
|
at: number;
|
|
63
65
|
}[];
|
|
64
66
|
}
|
|
65
|
-
export type ScriptRegistryEntry<T> = T | [T, NuxtUseScriptOptions<T>];
|
|
67
|
+
export type ScriptRegistryEntry<T> = true | T | [T, NuxtUseScriptOptions<T>];
|
|
66
68
|
export interface ScriptRegistry {
|
|
67
69
|
cloudflareWebAnalytics?: ScriptRegistryEntry<CloudflareWebAnalyticsInput>;
|
|
68
|
-
confetti?: ScriptRegistryEntry<ConfettiInput>;
|
|
69
70
|
facebookPixel?: ScriptRegistryEntry<FacebookPixelInput>;
|
|
70
71
|
fathomAnalytics?: ScriptRegistryEntry<FathomAnalyticsInput>;
|
|
72
|
+
googleAnalytics?: ScriptRegistryEntry<GoogleAnalyticsInput>;
|
|
73
|
+
googleMaps?: ScriptRegistryEntry<GoogleMapsInput>;
|
|
74
|
+
googleTagManager?: ScriptRegistryEntry<GoogleTagManagerInput>;
|
|
71
75
|
hotjar?: ScriptRegistryEntry<HotjarInput>;
|
|
72
76
|
intercom?: ScriptRegistryEntry<IntercomInput>;
|
|
77
|
+
matomoAnalytics?: ScriptRegistryEntry<MatomoAnalyticsInput>;
|
|
73
78
|
segment?: ScriptRegistryEntry<SegmentInput>;
|
|
79
|
+
stripe?: ScriptRegistryEntry<StripeInput>;
|
|
80
|
+
vimeo?: ScriptRegistryEntry<VimeoPlayerInput>;
|
|
81
|
+
xPixel?: ScriptRegistryEntry<XPixelInput>;
|
|
74
82
|
}
|
|
75
|
-
export type
|
|
76
|
-
|
|
83
|
+
export type RegistryScriptInput<T extends ObjectSchema<any>, Bundelable extends boolean = true> = Input<T> & {
|
|
84
|
+
scriptInput?: UseScriptInput;
|
|
85
|
+
scriptOptions?: Bundelable extends true ? Omit<NuxtUseScriptOptions, 'use'> : Omit<NuxtUseScriptOptions, 'bundle' | 'use'>;
|
|
77
86
|
};
|
|
78
|
-
export type RegistryScripts =
|
|
87
|
+
export type RegistryScripts = {
|
|
88
|
+
import: Import;
|
|
89
|
+
scriptBundling?: false | ((options?: any) => string);
|
|
90
|
+
label?: string;
|
|
79
91
|
src?: string | false;
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
92
|
+
category?: string;
|
|
93
|
+
logo?: string | {
|
|
94
|
+
light: string;
|
|
95
|
+
dark: string;
|
|
96
|
+
};
|
|
97
|
+
}[];
|
package/dist/runtime/utils.d.ts
CHANGED
|
@@ -1 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
import type { Input, ObjectSchema } from 'valibot';
|
|
2
|
+
import type { UseScriptInput } from '@unhead/vue';
|
|
3
|
+
import type { NuxtUseScriptOptions, RegistryScriptInput } from '#nuxt-scripts';
|
|
4
|
+
export declare function mockFallbackScript(name: string, module: string): Record<string | symbol, any> & {
|
|
5
|
+
$script: import("@unhead/vue").VueScriptInstance<Record<string | symbol, any>> & Promise<Record<string | symbol, any>>;
|
|
6
|
+
};
|
|
7
|
+
type OptionsFn<O extends ObjectSchema<any>> = (options: Input<O>) => ({
|
|
8
|
+
scriptInput?: UseScriptInput;
|
|
9
|
+
scriptOptions?: NuxtUseScriptOptions;
|
|
10
|
+
schema?: O;
|
|
11
|
+
clientInit?: () => void;
|
|
12
|
+
});
|
|
13
|
+
export declare function registryScript<T extends Record<string | symbol, any>, O extends ObjectSchema<any>>(key: string, optionsFn: OptionsFn<O>, _userOptions?: RegistryScriptInput<O>): T & {
|
|
14
|
+
$script: import("@unhead/vue").VueScriptInstance<T> & Promise<T>;
|
|
15
|
+
};
|
|
16
|
+
export {};
|
package/dist/runtime/utils.mjs
CHANGED
|
@@ -1,5 +1,34 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { defu } from "defu";
|
|
2
|
+
import { parse } from "valibot";
|
|
3
|
+
import { createError, useRuntimeConfig, useScript } from "#imports";
|
|
2
4
|
export function mockFallbackScript(name, module) {
|
|
3
5
|
console.error(`${name} is provided by ${module}. Check your console to install it or run 'npx nuxi@latest module add ${module}'`);
|
|
4
6
|
return useScript("", { trigger: "manual" });
|
|
5
7
|
}
|
|
8
|
+
function validateScriptInputSchema(schema, options) {
|
|
9
|
+
if (import.meta.dev) {
|
|
10
|
+
try {
|
|
11
|
+
parse(schema, options);
|
|
12
|
+
} catch (e) {
|
|
13
|
+
createError({
|
|
14
|
+
cause: e,
|
|
15
|
+
message: "Invalid script options"
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export function registryScript(key, optionsFn, _userOptions) {
|
|
21
|
+
const runtimeConfig = useRuntimeConfig().public.scripts || {};
|
|
22
|
+
const runtimeOptions = runtimeConfig[key];
|
|
23
|
+
const userOptions = Object.assign(_userOptions || {}, runtimeOptions || {});
|
|
24
|
+
const options = optionsFn(userOptions);
|
|
25
|
+
const scriptInput = defu(options.scriptInput, { key });
|
|
26
|
+
const scriptOptions = Object.assign(_userOptions?.scriptOptions || {}, options.scriptOptions || {});
|
|
27
|
+
const init = scriptOptions.beforeInit;
|
|
28
|
+
scriptOptions.beforeInit = () => {
|
|
29
|
+
import.meta.dev && options.schema && validateScriptInputSchema(options.schema, userOptions);
|
|
30
|
+
init?.();
|
|
31
|
+
import.meta.client && options.clientInit?.();
|
|
32
|
+
};
|
|
33
|
+
return useScript(scriptInput, scriptOptions);
|
|
34
|
+
}
|
package/package.json
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nuxt/scripts",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
5
|
-
"
|
|
6
|
-
"description": "Next-gen Scripts for Nuxt",
|
|
4
|
+
"version": "0.3.0",
|
|
5
|
+
"description": "Load third-party scripts with better performance, privacy and DX in Nuxt Apps.",
|
|
7
6
|
"author": {
|
|
8
7
|
"website": "https://harlanzw.com",
|
|
9
8
|
"name": "Harlan Wilton",
|
|
@@ -22,6 +21,10 @@
|
|
|
22
21
|
"types": "./dist/types.d.ts",
|
|
23
22
|
"import": "./dist/module.mjs",
|
|
24
23
|
"require": "./dist/module.cjs"
|
|
24
|
+
},
|
|
25
|
+
"./registry": {
|
|
26
|
+
"types": "./dist/registry.d.ts",
|
|
27
|
+
"import": "./dist/registry.mjs"
|
|
25
28
|
}
|
|
26
29
|
},
|
|
27
30
|
"main": "./dist/module.cjs",
|
|
@@ -33,27 +36,34 @@
|
|
|
33
36
|
"externals": [
|
|
34
37
|
"@unhead/vue",
|
|
35
38
|
"@unhead/schema",
|
|
36
|
-
"@unhead/vue",
|
|
37
39
|
"#nuxt-scripts"
|
|
38
40
|
]
|
|
39
41
|
},
|
|
40
42
|
"dependencies": {
|
|
41
|
-
"@nuxt/devtools-kit": "^1.
|
|
42
|
-
"@nuxt/devtools-ui-kit": "^1.
|
|
43
|
-
"@nuxt/kit": "^3.11.
|
|
44
|
-
"@
|
|
43
|
+
"@nuxt/devtools-kit": "^1.2.0",
|
|
44
|
+
"@nuxt/devtools-ui-kit": "^1.2.0",
|
|
45
|
+
"@nuxt/kit": "^3.11.2",
|
|
46
|
+
"@types/google.maps": "^3.55.7",
|
|
47
|
+
"@types/stripe-v3": "^3.1.33",
|
|
48
|
+
"@types/vimeo__player": "^2.18.3",
|
|
49
|
+
"@types/youtube": "^0.0.50",
|
|
50
|
+
"@unhead/vue": "^1.9.8",
|
|
51
|
+
"@vueuse/core": "^10.9.0",
|
|
45
52
|
"consola": "^3.2.3",
|
|
46
53
|
"defu": "^6.1.4",
|
|
47
54
|
"estree-walker": "^3.0.3",
|
|
48
55
|
"h3": "^1.11.1",
|
|
49
|
-
"magic-string": "^0.30.
|
|
56
|
+
"magic-string": "^0.30.10",
|
|
57
|
+
"mlly": "^1.7.0",
|
|
50
58
|
"ofetch": "^1.3.4",
|
|
51
59
|
"ohash": "^1.1.3",
|
|
52
60
|
"pathe": "^1.1.2",
|
|
53
|
-
"pkg-types": "^1.0
|
|
54
|
-
"
|
|
61
|
+
"pkg-types": "^1.1.0",
|
|
62
|
+
"semver": "^7.6.0",
|
|
63
|
+
"shiki": "^1.4.0",
|
|
55
64
|
"sirv": "^2.0.4",
|
|
56
65
|
"std-env": "^3.7.0",
|
|
66
|
+
"third-party-capital": "^1.0.28",
|
|
57
67
|
"ufo": "^1.5.3",
|
|
58
68
|
"unimport": "^3.7.1",
|
|
59
69
|
"unplugin": "^1.10.1",
|
|
@@ -61,22 +71,27 @@
|
|
|
61
71
|
"valibot": "^0.30.0"
|
|
62
72
|
},
|
|
63
73
|
"devDependencies": {
|
|
64
|
-
"@antfu/eslint-config": "2.
|
|
65
|
-
"@nuxt/devtools-ui-kit": "^1.
|
|
66
|
-
"@nuxt/module-builder": "^0.
|
|
67
|
-
"@nuxt/test-utils": "3.12.
|
|
68
|
-
"@unhead/schema": "^1.9.
|
|
74
|
+
"@antfu/eslint-config": "2.16.1",
|
|
75
|
+
"@nuxt/devtools-ui-kit": "^1.2.0",
|
|
76
|
+
"@nuxt/module-builder": "^0.6.0",
|
|
77
|
+
"@nuxt/test-utils": "3.12.1",
|
|
78
|
+
"@unhead/schema": "^1.9.8",
|
|
69
79
|
"acorn-loose": "^8.4.0",
|
|
70
|
-
"bumpp": "^9.4.
|
|
71
|
-
"eslint": "
|
|
72
|
-
"nuxt": "^3.11.
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
80
|
+
"bumpp": "^9.4.1",
|
|
81
|
+
"eslint": "9.1.1",
|
|
82
|
+
"nuxt": "^3.11.2",
|
|
83
|
+
"playwright-core": "^1.43.1",
|
|
84
|
+
"typescript": "^5.4.5",
|
|
85
|
+
"vitest": "^1.5.3",
|
|
86
|
+
"vue": "^3.4.26",
|
|
87
|
+
"vue-router": "^4.3.2"
|
|
77
88
|
},
|
|
78
89
|
"resolutions": {
|
|
79
|
-
"@nuxt/scripts": "workspace:*"
|
|
90
|
+
"@nuxt/scripts": "workspace:*",
|
|
91
|
+
"nuxt": "^3.11.2",
|
|
92
|
+
"nuxt-scripts-devtools": "workspace:*",
|
|
93
|
+
"vue": "^3.4.26",
|
|
94
|
+
"vue-router": "^4.3.2"
|
|
80
95
|
},
|
|
81
96
|
"scripts": {
|
|
82
97
|
"build": "pnpm prepack",
|
|
@@ -86,7 +101,7 @@
|
|
|
86
101
|
"dev:ssl": "nuxi dev playground --https",
|
|
87
102
|
"dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
|
|
88
103
|
"typecheck": "pnpm dlx vue-tsc --noEmit",
|
|
89
|
-
"release": "pnpm build && bumpp && pnpm
|
|
104
|
+
"release": "pnpm build && bumpp && pnpm publish --no-git-checks",
|
|
90
105
|
"lint": "eslint .",
|
|
91
106
|
"lint:fix": "eslint . --fix",
|
|
92
107
|
"test": "true",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=Object.freeze({displayName:"HashiCorp HCL",fileTypes:["hcl"],name:"hcl",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#block"},{include:"#expressions"}],repository:{attribute_access:{begin:"\\.(?!\\*)",beginCaptures:{0:{name:"keyword.operator.accessor.hcl"}},comment:"Matches traversal attribute access such as .attr",end:"[[:alpha:]][\\w-]*|\\d*",endCaptures:{0:{patterns:[{comment:"Attribute name",match:"(?!null|false|true)[[:alpha:]][\\w-]*",name:"variable.other.member.hcl"},{comment:"Optional attribute index",match:"\\d+",name:"constant.numeric.integer.hcl"}]}}},attribute_definition:{captures:{1:{name:"punctuation.section.parens.begin.hcl"},2:{name:"variable.other.readwrite.hcl"},3:{name:"punctuation.section.parens.end.hcl"},4:{name:"keyword.operator.assignment.hcl"}},comment:'Identifier "=" with optional parens',match:"(\\()?(\\b(?!null\\b|false\\b|true\\b)[[:alpha:]][[:alnum:]_-]*)(\\))?\\s*(\\=(?!\\=|\\>))\\s*",name:"variable.declaration.hcl"},attribute_splat:{begin:"\\.",beginCaptures:{0:{name:"keyword.operator.accessor.hcl"}},comment:"Legacy attribute-only splat",end:"\\*",endCaptures:{0:{name:"keyword.operator.splat.hcl"}}},block:{begin:"([\\w][\\-\\w]*)([^?{\\r\\n]*)(\\{)",beginCaptures:{1:{patterns:[{comment:"Block type",match:"\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\b",name:"entity.name.type.hcl"}]},2:{patterns:[{comment:"Block label (String Literal)",match:'\\"[^\\"\\r\\n]*\\"',name:"variable.other.enummember.hcl"},{comment:"Block label (Indentifier)",match:"[[:alpha:]][[:alnum:]_-]*",name:"variable.other.enummember.hcl"}]},3:{name:"punctuation.section.block.begin.hcl"}},comment:'This will match HCL blocks like `thing1 "one" "two" {` or `thing2 {`',end:"\\}",endCaptures:{0:{name:"punctuation.section.block.end.hcl"}},name:"meta.block.hcl",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#expressions"},{include:"#block"}]},block_inline_comments:{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence",end:"\\*/",name:"comment.block.hcl"},brackets:{begin:"\\[",beginCaptures:{0:{name:"punctuation.section.brackets.begin.hcl"}},end:"\\]",endCaptures:{0:{name:"punctuation.section.brackets.end.hcl"}},patterns:[{comment:"Splat operator",match:"\\*",name:"keyword.operator.splat.hcl"},{include:"#comma"},{include:"#comments"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{include:"#expressions"},{include:"#local_identifiers"}]},char_escapes:{comment:"Character Escapes",match:'\\\\[nrt"\\\\]|\\\\u(\\h{8}|\\h{4})',name:"constant.character.escape.hcl"},comma:{comment:"Commas - used in certain expressions",match:"\\,",name:"punctuation.separator.hcl"},comments:{patterns:[{include:"#hash_line_comments"},{include:"#double_slash_line_comments"},{include:"#block_inline_comments"}]},double_slash_line_comments:{begin:"//",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:"$\\n?",name:"comment.line.double-slash.hcl"},expressions:{patterns:[{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#brackets"},{include:"#objects"},{include:"#attribute_access"},{include:"#attribute_splat"},{include:"#functions"},{include:"#parens"}]},for_expression_body:{patterns:[{comment:"in keyword",match:"\\bin\\b",name:"keyword.operator.word.hcl"},{comment:"if keyword",match:"\\bif\\b",name:"keyword.control.conditional.hcl"},{match:"\\:",name:"keyword.operator.hcl"},{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},functions:{begin:"([:\\-\\w]+)(\\()",beginCaptures:{1:{patterns:[{match:"\\b[[:alpha:]][\\w_-]*::([[:alpha:]][\\w_-]*::)?[[:alpha:]][\\w_-]*\\b",name:"support.function.namespaced.hcl"},{match:"\\b[[:alpha:]][\\w_-]*\\b",name:"support.function.builtin.hcl"}]},2:{name:"punctuation.section.parens.begin.hcl"}},comment:"Built-in function calls",end:"\\)",endCaptures:{0:{name:"punctuation.section.parens.end.hcl"}},name:"meta.function-call.hcl",patterns:[{include:"#comments"},{include:"#expressions"},{include:"#comma"}]},hash_line_comments:{begin:"#",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:"$\\n?",name:"comment.line.number-sign.hcl"},hcl_type_keywords:{comment:"Type keywords known to HCL.",match:"\\b(any|string|number|bool|list|set|map|tuple|object)\\b",name:"storage.type.hcl"},heredoc:{begin:"(\\<\\<\\-?)\\s*(\\w+)\\s*$",beginCaptures:{1:{name:"keyword.operator.heredoc.hcl"},2:{name:"keyword.control.heredoc.hcl"}},comment:"String Heredoc",end:"^\\s*\\2\\s*$",endCaptures:{0:{name:"keyword.control.heredoc.hcl"}},name:"string.unquoted.heredoc.hcl",patterns:[{include:"#string_interpolation"}]},inline_for_expression:{begin:"(for)\\b",beginCaptures:{1:{name:"keyword.control.hcl"}},end:"\\n",patterns:[{match:"\\=\\>",name:"storage.type.function.hcl"},{include:"#for_expression_body"}]},inline_if_expression:{begin:"(if)\\b",beginCaptures:{1:{name:"keyword.control.conditional.hcl"}},end:"\\n",patterns:[{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},language_constants:{comment:"Language Constants",match:"\\b(true|false|null)\\b",name:"constant.language.hcl"},literal_values:{patterns:[{include:"#numeric_literals"},{include:"#language_constants"},{include:"#string_literals"},{include:"#heredoc"},{include:"#hcl_type_keywords"}]},local_identifiers:{comment:"Local Identifiers",match:"\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\b",name:"variable.other.readwrite.hcl"},numeric_literals:{patterns:[{captures:{1:{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, no fraction, optional exponent",match:"\\b\\d+([Ee][+-]?)\\d+\\b",name:"constant.numeric.float.hcl"},{captures:{1:{name:"punctuation.separator.decimal.hcl"},2:{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, fraction, optional exponent",match:"\\b\\d+(\\.)\\d+(?:([Ee][+-]?)\\d+)?\\b",name:"constant.numeric.float.hcl"},{comment:"Integers",match:"\\b\\d+\\b",name:"constant.numeric.integer.hcl"}]},object_for_expression:{begin:"(\\{)\\s?(for)\\b",beginCaptures:{1:{name:"punctuation.section.braces.begin.hcl"},2:{name:"keyword.control.hcl"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.braces.end.hcl"}},patterns:[{match:"\\=\\>",name:"storage.type.function.hcl"},{include:"#for_expression_body"}]},object_key_values:{patterns:[{include:"#comments"},{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#heredoc"},{include:"#functions"}]},objects:{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.braces.begin.hcl"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.braces.end.hcl"}},name:"meta.braces.hcl",patterns:[{include:"#comments"},{include:"#objects"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{captures:{1:{name:"meta.mapping.key.hcl variable.other.readwrite.hcl"},2:{name:"keyword.operator.assignment.hcl"}},comment:"Literal, named object key",match:"\\b((?!null|false|true)[[:alpha:]][[:alnum:]_-]*)\\s*(\\=(?!=))\\s*"},{captures:{1:{name:"meta.mapping.key.hcl string.quoted.double.hcl"},2:{name:"punctuation.definition.string.begin.hcl"},3:{name:"punctuation.definition.string.end.hcl"},4:{name:"keyword.operator.hcl"}},comment:"String object key",match:'^\\s*((").*("))\\s*(\\=)\\s*'},{begin:"^\\s*\\(",beginCaptures:{0:{name:"punctuation.section.parens.begin.hcl"}},comment:"Computed object key (any expression between parens)",end:"(\\))\\s*(=|:)\\s*",endCaptures:{1:{name:"punctuation.section.parens.end.hcl"},2:{name:"keyword.operator.hcl"}},name:"meta.mapping.key.hcl",patterns:[{include:"#attribute_access"},{include:"#attribute_splat"}]},{include:"#object_key_values"}]},operators:{patterns:[{match:"\\>\\=",name:"keyword.operator.hcl"},{match:"\\<\\=",name:"keyword.operator.hcl"},{match:"\\=\\=",name:"keyword.operator.hcl"},{match:"\\!\\=",name:"keyword.operator.hcl"},{match:"\\+",name:"keyword.operator.arithmetic.hcl"},{match:"\\-",name:"keyword.operator.arithmetic.hcl"},{match:"\\*",name:"keyword.operator.arithmetic.hcl"},{match:"\\/",name:"keyword.operator.arithmetic.hcl"},{match:"\\%",name:"keyword.operator.arithmetic.hcl"},{match:"\\&\\&",name:"keyword.operator.logical.hcl"},{match:"\\|\\|",name:"keyword.operator.logical.hcl"},{match:"\\!",name:"keyword.operator.logical.hcl"},{match:"\\>",name:"keyword.operator.hcl"},{match:"\\<",name:"keyword.operator.hcl"},{match:"\\?",name:"keyword.operator.hcl"},{match:"\\.\\.\\.",name:"keyword.operator.hcl"},{match:"\\:",name:"keyword.operator.hcl"},{match:"\\=\\>",name:"keyword.operator.hcl"}]},parens:{begin:"\\(",beginCaptures:{0:{name:"punctuation.section.parens.begin.hcl"}},comment:"Parens - matched *after* function syntax",end:"\\)",endCaptures:{0:{name:"punctuation.section.parens.end.hcl"}},patterns:[{include:"#comments"},{include:"#expressions"}]},string_interpolation:{begin:"(?<![%$])([%$]{)",beginCaptures:{1:{name:"keyword.other.interpolation.begin.hcl"}},comment:"String interpolation",end:"\\}",endCaptures:{0:{name:"keyword.other.interpolation.end.hcl"}},name:"meta.interpolation.hcl",patterns:[{comment:"Trim left whitespace",match:"\\~\\s",name:"keyword.operator.template.left.trim.hcl"},{comment:"Trim right whitespace",match:"\\s\\~",name:"keyword.operator.template.right.trim.hcl"},{comment:"if/else/endif and for/in/endfor directives",match:"\\b(if|else|endif|for|in|endfor)\\b",name:"keyword.control.hcl"},{include:"#expressions"},{include:"#local_identifiers"}]},string_literals:{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.hcl"}},comment:"Strings",end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.hcl"}},name:"string.quoted.double.hcl",patterns:[{include:"#string_interpolation"},{include:"#char_escapes"}]},tuple_for_expression:{begin:"(\\[)\\s?(for)\\b",beginCaptures:{1:{name:"punctuation.section.brackets.begin.hcl"},2:{name:"keyword.control.hcl"}},end:"\\]",endCaptures:{0:{name:"punctuation.section.brackets.end.hcl"}},patterns:[{include:"#for_expression_body"}]}},scopeName:"source.hcl"});var n=[e];export{n as default};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import e from"./CGQbO34C.js";import n from"./CbYhyuC0.js";import t from"./DAGYewaG.js";import a from"./CbViG2Xw.js";import i from"./CsYA0RN7.js";import o from"./ClXEvkw9.js";import u from"./DnhXxWz-.js";import r from"./ZQC2c-5V.js";import l from"./DCAtC51B.js";import c from"./Dch3xQiY.js";import m from"./DC8MraHL.js";import s from"./DwuVtWc2.js";import p from"./C5gCGmDW.js";import d from"./j8KhMG0x.js";import b from"./vMsNTMhM.js";import g from"./nclm9rTJ.js";import"./BXfENWL6.js";import"./RCJZWN-0.js";import"./BOnd8D4O.js";import"./DouzTJIq.js";import"./DbK06e1c.js";import"./D4k753MY.js";const x=Object.freeze({displayName:"LaTeX",name:"latex",patterns:[{comment:"This scope identifies partially typed commands such as `\\tab`. We use this to trigger “Command Completion” only when it makes sense.",match:"(?<=\\\\[\\w@]|\\\\[\\w@]{2}|\\\\[\\w@]{3}|\\\\[\\w@]{4}|\\\\[\\w@]{5}|\\\\[\\w@]{6})\\s",name:"meta.space-after-command.latex"},{begin:"((\\\\)(?:usepackage|documentclass))\\b(?=\\[|\\{)",beginCaptures:{1:{name:"keyword.control.preamble.latex"},2:{name:"punctuation.definition.function.latex"}},end:"(?<=\\})",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.preamble.latex",patterns:[{include:"#multiline-optional-arg"},{begin:"((?:\\G|(?<=\\]))\\{)",beginCaptures:{0:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"support.class.latex",end:"(\\})",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},patterns:[{include:"$self"}]}]},{begin:"((\\\\)(?:include|input))(\\{)",beginCaptures:{1:{name:"keyword.control.include.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.arguments.begin.latex"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.include.latex",patterns:[{include:"$self"}]},{begin:"((\\\\)((?:sub){0,2}section|(?:sub)?paragraph|chapter|part|addpart|addchap|addsec|minisec|frametitle)(?:\\*)?)((?:\\[[^\\[]*?\\]){0,2})(\\{)",beginCaptures:{1:{name:"support.function.section.latex"},2:{name:"punctuation.definition.function.latex"},4:{patterns:[{include:"#optional-arg"}]},5:{name:"punctuation.definition.arguments.begin.latex"}},comment:"this works OK with all kinds of crazy stuff as long as section is one line",contentName:"entity.name.section.latex",end:"\\}",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.function.section.$3.latex",patterns:[{include:"text.tex#braces"},{include:"$base"}]},{begin:"((?:\\s*)\\\\begin\\{songs\\}\\{.*\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"meta.data.environment.songs.latex",end:"(\\\\end\\{songs\\}(?:\\s*\\n)?)",name:"meta.function.environment.songs.latex",patterns:[{begin:"\\\\\\[",end:"\\]",name:"meta.chord.block.latex support.class.chord.block.environment.latex",patterns:[{include:"$base"}]},{match:"\\^",name:"meta.chord.block.latex support.class.chord.block.environment.latex"},{include:"$self"}]},{begin:"(?:^\\s*)?\\\\begin\\{(lstlisting|minted|pyglist)\\}(?=\\[|\\{)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\\\end\\{\\1\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)((?:c|cpp))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.cpp.embedded.latex",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.cpp.embedded.latex"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:asy|asymptote))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.asy",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.asy"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:css))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.css",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.css"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:hs|haskell))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.haskell",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.haskell"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:html))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"text.html",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"text.html.basic"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:xml))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"text.xml",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"text.xml"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:java))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.java",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.java"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:lua))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.lua",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.lua"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:jl|julia))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.julia",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.julia"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:rb|ruby))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.ruby",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.ruby"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:js|javascript))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.js",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.js"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:ts|typescript))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.ts",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.ts"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:py|python))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.python",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.python"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:yaml))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.yaml",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.yaml"}]},{begin:"(?:\\G|(?<=\\]))(\\{)((?:rust))(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"source.rust",end:"^\\s*(?=\\\\end\\{(?:minted|lstlisting|pyglist)\\})",patterns:[{include:"source.rust"}]},{begin:"(?:\\G|(?<=\\]))(\\{)([a-zA-Z]*)(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"meta.function.embedded.latex",end:"^\\s*(?=\\\\end\\{(?:lstlisting|minted|pyglist)\\})",name:"meta.embedded.block.generic.latex"}]},{begin:"\\s*\\\\begin\\{(?:cppcode)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:cppcode)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.cpp.embedded.latex",end:"^\\s*(?=\\\\end\\{(?:cppcode)\\*?\\})",patterns:[{include:"source.cpp.embedded.latex"}]}]},{begin:"\\s*\\\\begin\\{(?:hscode)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:hscode)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.haskell",end:"^\\s*(?=\\\\end\\{(?:hscode)\\*?\\})",patterns:[{include:"source.haskell"}]}]},{begin:"\\s*\\\\begin\\{(?:luacode)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:luacode)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.lua",end:"^\\s*(?=\\\\end\\{(?:luacode)\\*?\\})",patterns:[{include:"source.lua"}]}]},{begin:"\\s*\\\\begin\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.julia",end:"^\\s*(?=\\\\end\\{(?:jlcode|jlverbatim|jlblock|jlconcode|jlconsole|jlconverbatim)\\*?\\})",patterns:[{include:"source.julia"}]}]},{begin:"\\s*\\\\begin\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.julia",end:"^\\s*(?=\\\\end\\{(?:juliacode|juliaverbatim|juliablock|juliaconcode|juliaconsole|juliaconverbatim)\\*?\\})",patterns:[{include:"source.julia"}]}]},{begin:"\\s*\\\\begin\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.python",end:"^\\s*(?=\\\\end\\{(?:sageblock|sagesilent|sageverbatim|sageexample|sagecommandline|python|pythonq|pythonrepl)\\*?\\})",patterns:[{include:"source.python"}]}]},{begin:"\\s*\\\\begin\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.python",end:"^\\s*(?=\\\\end\\{(?:pycode|pyverbatim|pyblock|pyconcode|pyconsole|pyconverbatim)\\*?\\})",patterns:[{include:"source.python"}]}]},{begin:"\\s*\\\\begin\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.python",end:"^\\s*(?=\\\\end\\{(?:pylabcode|pylabverbatim|pylabblock|pylabconcode|pylabconsole|pylabconverbatim)\\*?\\})",patterns:[{include:"source.python"}]}]},{begin:"\\s*\\\\begin\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.python",end:"^\\s*(?=\\\\end\\{(?:sympycode|sympyverbatim|sympyblock|sympyconcode|sympyconsole|sympyconverbatim)\\*?\\})",patterns:[{include:"source.python"}]}]},{begin:"\\s*\\\\begin\\{(?:scalacode)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:scalacode)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.scala",end:"^\\s*(?=\\\\end\\{(?:scalacode)\\*?\\})",patterns:[{include:"source.scala"}]}]},{begin:"\\s*\\\\begin\\{(?:asy|asycode)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:asy|asycode)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.asymptote",end:"^\\s*(?=\\\\end\\{(?:asy|asycode)\\*?\\})",patterns:[{include:"source.asymptote"}]}]},{begin:"\\s*\\\\begin\\{(?:dot2tex|dotcode)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:dot2tex|dotcode)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.dot",end:"^\\s*(?=\\\\end\\{(?:dot2tex|dotcode)\\*?\\})",patterns:[{include:"source.dot"}]}]},{begin:"\\s*\\\\begin\\{(?:gnuplot)\\*?\\}(?:\\[[a-zA-Z0-9_-]*\\])?(?=\\[|\\{|\\s*$)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\s*\\\\end\\{(?:gnuplot)\\*?\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"variable.parameter.function.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}}},{begin:"^(?=\\s*)",contentName:"source.gnuplot",end:"^\\s*(?=\\\\end\\{(?:gnuplot)\\*?\\})",patterns:[{include:"source.gnuplot"}]}]},{begin:"\\s*\\\\begin\\{([a-zA-Z]*code|lstlisting|minted|pyglist)\\*?\\}(?:\\[.*\\])?(?:\\{.*\\})?",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"meta.function.embedded.latex",end:"\\\\end\\{\\1\\}(?:\\s*\\n)?",name:"meta.embedded.block.generic.latex"},{begin:"(?:^\\s*)?\\\\begin\\{(terminal\\*?)\\}(?=\\[|\\{)",captures:{0:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"\\\\end\\{\\1\\}",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)([a-zA-Z]*)(\\})",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.end.latex"}},contentName:"meta.function.embedded.latex",end:"^\\s*(?=\\\\end\\{terminal\\*?\\})",name:"meta.embedded.block.generic.latex"}]},{begin:"((\\\\)addplot)(?:\\+?)((?:\\[[^\\[]*\\]))*\\s*(gnuplot)\\s*((?:\\[[^\\[]*\\]))*\\s*(\\{)",captures:{1:{name:"support.function.be.latex"},2:{name:"punctuation.definition.function.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"variable.parameter.function.latex"},5:{patterns:[{include:"#optional-arg"}]},6:{name:"punctuation.definition.arguments.begin.latex"}},end:"\\s*(\\};)",patterns:[{begin:"%",beginCaptures:{0:{name:"punctuation.definition.comment.latex"}},end:"$\\n?",name:"comment.line.percentage.latex"},{include:"source.gnuplot"}]},{begin:"(\\s*\\\\begin\\{((?:fboxv|boxedv|V|v|spv)erbatim\\*?)\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"markup.raw.verbatim.latex",end:"(\\\\end\\{\\2\\})",name:"meta.function.verbatim.latex"},{begin:"(\\s*\\\\begin\\{VerbatimOut\\}\\{[^\\}]*\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"markup.raw.verbatim.latex",end:"(\\\\end\\{\\VerbatimOut\\})",name:"meta.function.verbatim.latex"},{begin:"(\\s*\\\\begin\\{alltt\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"markup.raw.verbatim.latex",end:"(\\\\end\\{alltt\\})",name:"meta.function.alltt.latex",patterns:[{captures:{1:{name:"punctuation.definition.function.latex"}},match:"(\\\\)[A-Za-z]+",name:"support.function.general.latex"}]},{begin:"(\\s*\\\\begin\\{([Cc]omment)\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"punctuation.definition.comment.latex",end:"(\\\\end\\{\\2\\})",name:"meta.function.verbatim.latex"},{begin:"(?:\\s*)((\\\\)(?:href|hyperref|hyperimage))(?=\\[|\\{)",beginCaptures:{1:{name:"support.function.url.latex"}},comment:"Captures \\command[option]{url}{optional category}{optional name}{text}",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.function.hyperlink.latex",patterns:[{include:"#multiline-optional-arg-no-highlight"},{begin:"(?:\\G|(?<=\\]))(\\{)([^}]*)(\\})(?:\\{[^}]*\\}){2}?(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"markup.underline.link.latex"},3:{name:"punctuation.definition.arguments.end.latex"},4:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"meta.variable.parameter.function.latex",end:"(?=\\})",patterns:[{include:"$base"}]},{begin:"(?:\\G|(?<=\\]))(?:(\\{)[^}]*(\\}))?(\\{)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.latex"},2:{name:"punctuation.definition.arguments.end.latex"},3:{name:"punctuation.definition.arguments.begin.latex"}},contentName:"meta.variable.parameter.function.latex",end:"(?=\\})",patterns:[{include:"$base"}]}]},{captures:{1:{name:"support.function.url.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.arguments.begin.latex"},5:{name:"punctuation.definition.arguments.end.latex"},"'":{name:"markup.underline.link.latex"}},match:"(?:\\s*)((\\\\)url)(\\{)([^}]*)(\\})",name:"meta.function.link.url.latex"},{captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},comment:"These two patterns match the \\begin{document} and \\end{document} commands, so that the environment matching pattern following them will ignore those commands.",match:"(\\s*\\\\begin\\{document\\})",name:"meta.function.begin-document.latex"},{captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},match:"(\\s*\\\\end\\{document\\})",name:"meta.function.end-document.latex"},{begin:"(?:\\s*)((\\\\)begin)(\\{)((?:\\+?array|equation|(?:IEEE)?eqnarray|multline|align|aligned|alignat|alignedat|flalign|flaligned|flalignat|split|gather|gathered|\\+?cases|(?:display)?math|\\+?[a-zA-Z]*matrix|[pbBvV]?NiceMatrix|[pbBvV]?NiceArray|(?:(?:arg)?(?:mini|maxi)))(?:\\*|!)?)(\\})(\\s*\\n)?",captures:{1:{name:"support.function.be.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.arguments.begin.latex"},4:{name:"variable.parameter.function.latex"},5:{name:"punctuation.definition.arguments.end.latex"}},contentName:"meta.math.block.latex support.class.math.block.environment.latex",end:"(?:\\s*)((\\\\)end)(\\{)(\\4)(\\})(?:\\s*\\n)?",name:"meta.function.environment.math.latex",patterns:[{match:"(?<!\\\\)&",name:"keyword.control.equation.align.latex"},{match:"\\\\\\\\",name:"keyword.control.equation.newline.latex"},{include:"#definition-label"},{include:"text.tex#math"},{include:"$base"}]},{begin:"(?:\\s*)(\\\\begin\\{empheq\\}(?:\\[.*\\])?)",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"meta.math.block.latex support.class.math.block.environment.latex",end:"(?:\\s*)(\\\\end\\{empheq\\})",name:"meta.function.environment.math.latex",patterns:[{match:"(?<!\\\\)&",name:"keyword.control.equation.align.latex"},{match:"\\\\\\\\",name:"keyword.control.equation.newline.latex"},{include:"#definition-label"},{include:"text.tex#math"},{include:"$base"}]},{begin:"(\\s*\\\\begin\\{(tabular[xy*]?|xltabular|longtable|(?:long)?tabu|(?:long|tall)?tblr|NiceTabular[X*]?|booktabs)\\}(\\s*\\n)?)",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"meta.data.environment.tabular.latex",end:"(\\s*\\\\end\\{(\\2)\\}(?:\\s*\\n)?)",name:"meta.function.environment.tabular.latex",patterns:[{match:"(?<!\\\\)&",name:"keyword.control.table.cell.latex"},{match:"\\\\\\\\",name:"keyword.control.table.newline.latex"},{include:"$base"}]},{begin:"(\\s*\\\\begin\\{(itemize|enumerate|description|list)\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"(\\\\end\\{\\2\\}(?:\\s*\\n)?)",name:"meta.function.environment.list.latex",patterns:[{include:"$base"}]},{begin:"(\\s*\\\\begin\\{tikzpicture\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"(\\\\end\\{tikzpicture\\}(?:\\s*\\n)?)",name:"meta.function.environment.latex.tikz",patterns:[{include:"$base"}]},{begin:"(\\s*\\\\begin\\{frame\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"(\\\\end\\{frame\\})",name:"meta.function.environment.frame.latex",patterns:[{include:"$base"}]},{begin:"(\\s*\\\\begin\\{(mpost\\*?)\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"(\\\\end\\{\\2\\}(?:\\s*\\n)?)",name:"meta.function.environment.latex.mpost"},{begin:"(\\s*\\\\begin\\{markdown\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},contentName:"meta.embedded.markdown_latex_combined",end:"(\\\\end\\{markdown\\})",patterns:[{include:"text.tex.markdown_latex_combined"}]},{begin:"(\\s*\\\\begin\\{(\\w+\\*?)\\})",captures:{1:{patterns:[{include:"#begin-env-tokenizer"}]}},end:"(\\\\end\\{\\2\\}(?:\\s*\\n)?)",name:"meta.function.environment.general.latex",patterns:[{include:"$base"}]},{captures:{1:{name:"storage.type.function.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.begin.latex"},4:{name:"support.function.general.latex"},5:{name:"punctuation.definition.function.latex"},6:{name:"punctuation.definition.end.latex"}},match:"((\\\\)(?:newcommand|renewcommand|(?:re)?newrobustcmd|DeclareRobustCommand))\\*?({)((\\\\)[^}]*)(})"},{begin:"((\\\\)marginpar)((?:\\[[^\\[]*?\\])*)(\\{)",beginCaptures:{1:{name:"support.function.marginpar.latex"},2:{name:"punctuation.definition.function.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"punctuation.definition.marginpar.begin.latex"}},contentName:"meta.paragraph.margin.latex",end:"\\}",endCaptures:{0:{name:"punctuation.definition.marginpar.end.latex"}},patterns:[{include:"text.tex#braces"},{include:"$base"}]},{begin:"((\\\\)footnote)((?:\\[[^\\[]*?\\])*)(\\{)",beginCaptures:{1:{name:"support.function.footnote.latex"},2:{name:"punctuation.definition.function.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"punctuation.definition.footnote.begin.latex"}},contentName:"entity.name.footnote.latex",end:"\\}",endCaptures:{0:{name:"punctuation.definition.footnote.end.latex"}},patterns:[{include:"text.tex#braces"},{include:"$base"}]},{begin:"((\\\\)emph)(\\{)",beginCaptures:{1:{name:"support.function.emph.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.emph.begin.latex"}},contentName:"markup.italic.emph.latex",end:"\\}",endCaptures:{0:{name:"punctuation.definition.emph.end.latex"}},name:"meta.function.emph.latex",patterns:[{include:"text.tex#braces"},{include:"$base"}]},{begin:"((\\\\)textit)(\\{)",captures:{1:{name:"support.function.textit.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.textit.begin.latex"}},comment:`We put the keyword in a capture and name this capture, so that disabling spell checking for “keyword” won't be inherited by the argument to \\textit{...}.
|
|
2
|
-
|
|
3
|
-
Put specific matches for particular LaTeX keyword.functions before the last two more general functions`,contentName:"markup.italic.textit.latex",end:"\\}",endCaptures:{0:{name:"punctuation.definition.textit.end.latex"}},name:"meta.function.textit.latex",patterns:[{include:"text.tex#braces"},{include:"$base"}]},{begin:"((\\\\)textbf)(\\{)",captures:{1:{name:"support.function.textbf.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.textbf.begin.latex"}},contentName:"markup.bold.textbf.latex",end:"\\}",endCaptures:{0:{name:"punctuation.definition.textbf.end.latex"}},name:"meta.function.textbf.latex",patterns:[{include:"text.tex#braces"},{include:"$base"}]},{begin:"((\\\\)texttt)(\\{)",captures:{1:{name:"support.function.texttt.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.texttt.begin.latex"}},contentName:"markup.raw.texttt.latex",end:"\\}",endCaptures:{0:{name:"punctuation.definition.texttt.end.latex"}},name:"meta.function.texttt.latex",patterns:[{include:"text.tex#braces"},{include:"$base"}]},{captures:{0:{name:"keyword.other.item.latex"},1:{name:"punctuation.definition.keyword.latex"}},match:"(\\\\)item\\b",name:"meta.scope.item.latex"},{begin:"((\\\\)(?:[aA]uto|foot|full|no|ref|short|[tT]ext|[pP]aren|[sS]mart)?[cC]ite(?:al)?(?:p|s|t|author|year(?:par)?|title)?[ANP]*\\*?)((?:(?:\\([^\\)]*\\)){0,2}(?:\\[[^\\]]*\\]){0,2}\\{[\\p{Alphabetic}:.]*\\})*)(?:([<\\[])[^\\]<>]*([>\\]]))?(?:(\\[)[^\\]]*(\\]))?(\\{)",captures:{1:{name:"keyword.control.cite.latex"},2:{name:"punctuation.definition.keyword.latex"},3:{patterns:[{include:"#autocites-arg"}]},4:{name:"punctuation.definition.arguments.optional.begin.latex"},5:{name:"punctuation.definition.arguments.optional.end.latex"},6:{name:"punctuation.definition.arguments.optional.begin.latex"},7:{name:"punctuation.definition.arguments.optional.end.latex"},8:{name:"punctuation.definition.arguments.begin.latex"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.citation.latex",patterns:[{captures:{1:{name:"comment.line.percentage.tex"},2:{name:"punctuation.definition.comment.tex"}},match:"((%).*)$"},{match:"[\\p{Alphabetic}\\p{Number}:.-]+",name:"constant.other.reference.citation.latex"}]},{begin:"((\\\\)bibentry)(\\{)",captures:{1:{name:"keyword.control.cite.latex"},2:{name:"punctuation.definition.keyword.latex"},3:{name:"punctuation.definition.arguments.begin.latex"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.citation.latex",patterns:[{match:"[\\p{Alphabetic}\\p{Number}:.]+",name:"constant.other.reference.citation.latex"}]},{begin:"((\\\\)(?:\\w*[rR]ef\\*?))(\\{)",beginCaptures:{1:{name:"keyword.control.ref.latex"},2:{name:"punctuation.definition.keyword.latex"},3:{name:"punctuation.definition.arguments.begin.latex"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.reference.label.latex",patterns:[{match:"[\\p{Alphabetic}\\p{Number}\\.,:/*!^_-]",name:"constant.other.reference.label.latex"}]},{include:"#definition-label"},{begin:"((\\\\)(?:verb|Verb|spverb)\\*?)\\s*((\\\\)scantokens)(\\{)",beginCaptures:{1:{name:"support.function.verb.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"support.function.verb.latex"},4:{name:"punctuation.definition.verb.latex"},5:{name:"punctuation.definition.begin.latex"}},contentName:"markup.raw.verb.latex",end:"(\\})",endCaptures:{1:{name:"punctuation.definition.end.latex"}},name:"meta.function.verb.latex",patterns:[{include:"$self"}]},{captures:{1:{name:"support.function.verb.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.verb.latex"},4:{name:"markup.raw.verb.latex"},5:{name:"punctuation.definition.verb.latex"}},match:"((\\\\)(?:verb|Verb|spverb)\\*?)\\s*((?<=\\s)\\S|[^a-zA-Z])(.*?)(\\3|$)",name:"meta.function.verb.latex"},{captures:{1:{name:"support.function.verb.latex"},2:{name:"punctuation.definition.function.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"punctuation.definition.arguments.begin.latex"},5:{name:"punctuation.definition.arguments.end.latex"},6:{name:"punctuation.definition.verb.latex"},7:{name:"markup.raw.verb.latex"},8:{name:"punctuation.definition.verb.latex"},9:{name:"punctuation.definition.verb.latex"},10:{name:"markup.raw.verb.latex"},11:{name:"punctuation.definition.verb.latex"}},match:"((\\\\)(?:mint|mintinline))((?:\\[[^\\[]*?\\])?)(\\{)[a-zA-Z]*(\\})(?:(?:([^a-zA-Z\\{])(.*?)(\\6))|(?:(\\{)(.*?)(\\})))",name:"meta.function.verb.latex"},{captures:{1:{name:"support.function.verb.latex"},2:{name:"punctuation.definition.function.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"punctuation.definition.verb.latex"},5:{name:"markup.raw.verb.latex"},6:{name:"punctuation.definition.verb.latex"},7:{name:"punctuation.definition.verb.latex"},8:{name:"markup.raw.verb.latex"},9:{name:"punctuation.definition.verb.latex"}},match:"((\\\\)[a-z]+inline)((?:\\[[^\\[]*?\\])?)(?:(?:([^a-zA-Z\\{])(.*?)(\\4))|(?:(\\{)(.*?)(\\})))",name:"meta.function.verb.latex"},{captures:{1:{name:"support.function.verb.latex"},2:{name:"punctuation.definition.function.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"punctuation.definition.verb.latex"},5:{name:"source.python",patterns:[{include:"source.python"}]},6:{name:"punctuation.definition.verb.latex"},7:{name:"punctuation.definition.verb.latex"},8:{name:"source.python",patterns:[{include:"source.python"}]},9:{name:"punctuation.definition.verb.latex"}},match:"((\\\\)(?:(?:py|pycon|pylab|pylabcon|sympy|sympycon)[cv]?|pyq|pycq|pyif))((?:\\[[^\\[]*?\\])?)(?:(?:([^a-zA-Z\\{])(.*?)(\\4))|(?:(\\{)(.*?)(\\})))",name:"meta.function.verb.latex"},{captures:{1:{name:"support.function.verb.latex"},2:{name:"punctuation.definition.function.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"punctuation.definition.verb.latex"},5:{name:"source.julia",patterns:[{include:"source.julia"}]},6:{name:"punctuation.definition.verb.latex"},7:{name:"punctuation.definition.verb.latex"},8:{name:"source.julia",patterns:[{include:"source.julia"}]},9:{name:"punctuation.definition.verb.latex"}},match:"((\\\\)(?:jl|julia)[cv]?)((?:\\[[^\\[]*?\\])?)(?:(?:([^a-zA-Z\\{])(.*?)(\\4))|(?:(\\{)(.*?)(\\})))",name:"meta.function.verb.latex"},{match:"\\\\(?:newline|pagebreak|clearpage|linebreak|pause)(?:\\b)",name:"keyword.control.layout.latex"},{begin:"\\\\\\(",beginCaptures:{0:{name:"punctuation.definition.string.begin.latex"}},end:"\\\\\\)",endCaptures:{0:{name:"punctuation.definition.string.end.latex"}},name:"meta.math.block.latex support.class.math.block.environment.latex",patterns:[{include:"text.tex#math"},{include:"$base"}]},{begin:"\\$\\$",beginCaptures:{0:{name:"punctuation.definition.string.begin.latex"}},end:"\\$\\$",endCaptures:{0:{name:"punctuation.definition.string.end.latex"}},name:"meta.math.block.latex support.class.math.block.environment.latex",patterns:[{match:"\\\\\\$",name:"constant.character.escape.latex"},{include:"text.tex#math"},{include:"$base"}]},{begin:"\\$",beginCaptures:{0:{name:"punctuation.definition.string.begin.tex"}},end:"\\$",endCaptures:{0:{name:"punctuation.definition.string.end.tex"}},name:"meta.math.block.tex support.class.math.block.tex",patterns:[{match:"\\\\\\$",name:"constant.character.escape.latex"},{include:"text.tex#math"},{include:"$base"}]},{begin:"\\\\\\[",beginCaptures:{0:{name:"punctuation.definition.string.begin.latex"}},end:"\\\\\\]",endCaptures:{0:{name:"punctuation.definition.string.end.latex"}},name:"meta.math.block.latex support.class.math.block.environment.latex",patterns:[{include:"text.tex#math"},{include:"$base"}]},{captures:{1:{name:"punctuation.definition.constant.latex"}},match:"(\\\\)(text(s(terling|ixoldstyle|urd|e(ction|venoldstyle|rvicemark))|yen|n(ineoldstyle|umero|aira)|c(ircledP|o(py(left|right)|lonmonetary)|urrency|e(nt(oldstyle)?|lsius))|t(hree(superior|oldstyle|quarters(emdash)?)|i(ldelow|mes)|w(o(superior|oldstyle)|elveudash)|rademark)|interrobang(down)?|zerooldstyle|o(hm|ne(superior|half|oldstyle|quarter)|penbullet|rd(feminine|masculine))|d(i(scount|ed|v(orced)?)|o(ng|wnarrow|llar(oldstyle)?)|egree|agger(dbl)?|blhyphen(char)?)|uparrow|p(ilcrow|e(so|r(t(housand|enthousand)|iodcentered))|aragraph|m)|e(stimated|ightoldstyle|uro)|quotes(traight(dblbase|base)|ingle)|f(iveoldstyle|ouroldstyle|lorin|ractionsolidus)|won|l(not|ira|e(ftarrow|af)|quill|angle|brackdbl)|a(s(cii(caron|dieresis|acute|grave|macron|breve)|teriskcentered)|cutedbl)|r(ightarrow|e(cipe|ferencemark|gistered)|quill|angle|brackdbl)|g(uarani|ravedbl)|m(ho|inus|u(sicalnote)?|arried)|b(igcircle|orn|ullet|lank|a(ht|rdbl)|rokenbar)))\\b",name:"constant.character.latex"},{captures:{1:{name:"punctuation.definition.column-specials.begin.latex"},2:{name:"punctuation.definition.column-specials.end.latex"}},match:"(?:<|>)(\\{)\\$(\\})",name:"meta.column-specials.latex"},{include:"text.tex"}],repository:{"autocites-arg":{patterns:[{captures:{1:{name:"punctuation.definition.arguments.optional.begin.latex"},2:{name:"punctuation.definition.arguments.optional.end.latex"},3:{name:"punctuation.definition.arguments.optional.begin.latex"},4:{name:"punctuation.definition.arguments.optional.end.latex"},5:{name:"punctuation.definition.arguments.begin.latex"},6:{name:"constant.other.reference.citation.latex"},7:{name:"punctuation.definition.arguments.end.latex"},8:{patterns:[{include:"#autocites-arg"}]}},match:"(?:(\\()[^\\)]*(\\))){0,2}(?:(\\[)[^\\]]*(\\])){0,2}(\\{)([\\p{Alphabetic}\\p{Number}:.]+)(\\})(.*)"}]},"begin-env-tokenizer":{captures:{1:{name:"support.function.be.latex"},2:{name:"punctuation.definition.function.latex"},3:{name:"punctuation.definition.arguments.begin.latex"},4:{name:"variable.parameter.function.latex"},5:{name:"punctuation.definition.arguments.end.latex"},6:{name:"punctuation.definition.arguments.optional.begin.latex"},7:{patterns:[{include:"$base"}]},8:{name:"punctuation.definition.arguments.optional.end.latex"},9:{name:"punctuation.definition.arguments.begin.latex"},10:{name:"variable.parameter.function.latex"},11:{name:"punctuation.definition.arguments.end.latex"}},match:"\\s*((\\\\)(?:begin|end))(\\{)([a-zA-Z]*\\*?)(\\})(?:(\\[)(.*)(\\]))?(?:(\\{)([^{}]*)(\\}))?"},"definition-label":{begin:"((\\\\)label)((?:\\[[^\\[]*?\\])*)(\\{)",beginCaptures:{1:{name:"keyword.control.label.latex"},2:{name:"punctuation.definition.keyword.latex"},3:{patterns:[{include:"#optional-arg"}]},4:{name:"punctuation.definition.arguments.begin.latex"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.arguments.end.latex"}},name:"meta.definition.label.latex",patterns:[{match:"[\\p{Alphabetic}\\p{Number}\\.,:/*!^_-]",name:"variable.parameter.definition.label.latex"}]},"multiline-optional-arg":{begin:"\\G\\[",beginCaptures:{0:{name:"punctuation.definition.arguments.optional.begin.latex"}},contentName:"variable.parameter.function.latex",end:"\\]",endCaptures:{0:{name:"punctuation.definition.arguments.optional.end.latex"}},name:"meta.parameter.optional.latex",patterns:[{include:"$self"}]},"multiline-optional-arg-no-highlight":{begin:"\\G\\[",beginCaptures:{0:{name:"punctuation.definition.arguments.optional.begin.latex"}},end:"\\]",endCaptures:{0:{name:"punctuation.definition.arguments.optional.end.latex"}},name:"meta.parameter.optional.latex",patterns:[{include:"$self"}]},"optional-arg":{patterns:[{captures:{1:{name:"punctuation.definition.arguments.optional.begin.latex"},2:{name:"variable.parameter.function.latex"},3:{name:"punctuation.definition.arguments.optional.end.latex"}},match:"(\\[)([^\\[]*?)(\\])",name:"meta.parameter.optional.latex"}]}},scopeName:"text.tex.latex",embeddedLangs:["tex","css","haskell","html","xml","java","lua","julia","ruby","javascript","typescript","python","yaml","rust","scala","gnuplot"]});var L=[...e,...n,...t,...a,...i,...o,...u,...r,...l,...c,...m,...s,...p,...d,...b,...g,x];export{L as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=Object.freeze({displayName:"Mermaid",fileTypes:[],injectionSelector:"L:text.html.markdown",name:"mermaid",patterns:[{include:"#mermaid-code-block"},{include:"#mermaid-code-block-with-attributes"},{include:"#mermaid-ado-code-block"}],repository:{mermaid:{patterns:[{begin:"^\\s*(classDiagram)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"Class Diagram",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{captures:{1:{name:"entity.name.type.class.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"keyword.control.mermaid"},4:{name:"keyword.control.mermaid"},5:{name:"entity.name.type.class.mermaid"},6:{name:"keyword.control.mermaid"},7:{name:"string"}},comment:'(class name) ("multiplicity relationship")? (relationship) ("multiplicity relationship")? (class name) :? (labelText)?',match:'([\\w-]+)\\s("(?:\\d+|\\*|0..\\d+|1..\\d+|1..\\*)")?\\s?(--o|--\\*|\\<--|--\\>|<\\.\\.|\\.\\.\\>|\\<\\|\\.\\.|\\.\\.\\|\\>|\\<\\|--|--\\|>|--\\*|--|\\.\\.|\\*--|o--)\\s("(?:\\d+|\\*|0..\\d+|1..\\d+|1..\\*)")?\\s?([\\w-]+)\\s?(:)?\\s(.*)$'},{captures:{1:{name:"entity.name.type.class.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"keyword.control.mermaid"},4:{name:"entity.name.function.mermaid"},5:{name:"punctuation.parenthesis.open.mermaid"},6:{name:"storage.type.mermaid"},7:{name:"punctuation.definition.typeparameters.begin.mermaid"},8:{name:"storage.type.mermaid"},9:{name:"punctuation.definition.typeparameters.end.mermaid"},10:{name:"entity.name.variable.parameter.mermaid"},11:{name:"punctuation.parenthesis.closed.mermaid"},12:{name:"keyword.control.mermaid"},13:{name:"storage.type.mermaid"},14:{name:"punctuation.definition.typeparameters.begin.mermaid"},15:{name:"storage.type.mermaid"},16:{name:"punctuation.definition.typeparameters.end.mermaid"}},comment:"(class name) : (visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$",match:"([\\w-]+)\\s?(:)\\s([\\+~#-])?([\\w-]+)(\\()([\\w-]+)?(~)?([\\w-]+)?(~)?\\s?([\\w-]+)?(\\))([*\\$]{0,2})\\s?([\\w-]+)?(~)?([\\w-]+)?(~)?$"},{captures:{1:{name:"entity.name.type.class.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"keyword.control.mermaid"},4:{name:"storage.type.mermaid"},5:{name:"punctuation.definition.typeparameters.begin.mermaid"},6:{name:"storage.type.mermaid"},7:{name:"punctuation.definition.typeparameters.end.mermaid"},8:{name:"entity.name.variable.field.mermaid"}},comment:"(class name) : (visibility)?(datatype/generic data type) (attribute name)$",match:"([\\w-]+)\\s?(:)\\s([\\+~#-])?([\\w-]+)(~)?([\\w-]+)?(~)?\\s([\\w-]+)?$"},{captures:{1:{name:"punctuation.definition.typeparameters.begin.mermaid"},2:{name:"storage.type.mermaid"},3:{name:"punctuation.definition.typeparameters.end.mermaid"},4:{name:"entity.name.type.class.mermaid"}},comment:"<<(Annotation)>> (class name)",match:"(<<)([\\w-]+)(>>)\\s?([\\w-]+)?"},{begin:"(class)\\s+([\\w-]+)(~)?([\\w-]+)?(~)?\\s?({)",beginCaptures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.type.class.mermaid"},3:{name:"punctuation.definition.typeparameters.begin.mermaid"},4:{name:"storage.type.mermaid"},5:{name:"punctuation.definition.typeparameters.end.mermaid"},6:{name:"keyword.control.mermaid"}},comment:"class (class name) ~?(generic type)?~? ({)",end:"(})",endCaptures:{1:{name:"keyword.control.mermaid"}},patterns:[{match:"\\%%.*",name:"comment"},{begin:"\\s([\\+~#-])?([\\w-]+)(\\()",beginCaptures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.function.mermaid"},3:{name:"punctuation.parenthesis.open.mermaid"}},comment:"(visibility)?(function)( (function param/generic param)? )(classifier)? (return/generic return)?$",end:"(\\))([*\\$]{0,2})\\s?([\\w-]+)?(~)?([\\w-]+)?(~)?$",endCaptures:{1:{name:"punctuation.parenthesis.closed.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"storage.type.mermaid"},4:{name:"punctuation.definition.typeparameters.begin.mermaid"},5:{name:"storage.type.mermaid"},6:{name:"punctuation.definition.typeparameters.end.mermaid"}},patterns:[{captures:{1:{name:"storage.type.mermaid"},2:{name:"punctuation.definition.typeparameters.begin.mermaid"},3:{name:"storage.type.mermaid"},4:{name:"punctuation.definition.typeparameters.end.mermaid"},5:{name:"entity.name.variable.parameter.mermaid"}},comment:"(TBD)",match:"\\s*,?\\s*([\\w-]+)?(~)?([\\w-]+)?(~)?\\s?([\\w-]+)?"}]},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"storage.type.mermaid"},3:{name:"punctuation.definition.typeparameters.begin.mermaid"},4:{name:"storage.type.mermaid"},5:{name:"punctuation.definition.typeparameters.end.mermaid"},6:{name:"entity.name.variable.field.mermaid"}},comment:"(visibility)?(datatype/generic data type) (attribute name)$",match:"\\s([\\+~#-])?([\\w-]+)(~)?([\\w-]+)?(~)?\\s([\\w-]+)?$"},{captures:{1:{name:"punctuation.definition.typeparameters.begin.mermaid"},2:{name:"storage.type.mermaid"},3:{name:"punctuation.definition.typeparameters.end.mermaid"},4:{name:"entity.name.type.class.mermaid"}},comment:"<<(Annotation)>> (class name)",match:"(<<)([\\w-]+)(>>)\\s?([\\w-]+)?"}]},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.type.class.mermaid"},3:{name:"punctuation.definition.typeparameters.begin.mermaid"},4:{name:"storage.type.mermaid"},5:{name:"punctuation.definition.typeparameters.end.mermaid"}},comment:"class (class name) ~?(generic type)?~?",match:"(class)\\s+([\\w-]+)(~)?([\\w-]+)?(~)?"}]},{begin:"^\\s*(erDiagram)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"Entity Relationship Diagram",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{comment:"(entity)",match:"^\\s*([\\w-]+)$",name:"variable"},{begin:"\\s+([\\w-]+)\\s*({)",beginCaptures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"}},comment:"(entity) {",end:"(})",endCaptures:{1:{name:"keyword.control.mermaid"}},patterns:[{captures:{1:{name:"storage.type.mermaid"},2:{name:"variable"},3:{name:"keyword.control.mermaid"},4:{name:"string"}},comment:'(type) (name) (PK|FK)? ("comment")?',match:`\\s*([\\w-]+)\\s+([\\w-]+)\\s+(PK|FK)?\\s*("["\\($&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*")?\\s*`},{match:"\\%%.*",name:"comment"}]},{captures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"},3:{name:"variable"},4:{name:"keyword.control.mermaid"},5:{name:"string"}},comment:"(entity) (relationship) (entity) : (label)",match:'\\s*([\\w-]+)\\s*((?:\\|o|\\|\\||}o|}\\||one or (?:zero|more|many)|zero or (?:one|more|many)|many\\((?:0|1)\\)|only one|0\\+|1\\+?)(?:..|--)(?:o\\||\\|\\||o{|\\|{|one or (?:zero|more|many)|zero or (?:one|more|many)|many\\((?:0|1)\\)|only one|0\\+|1\\+?))\\s*([\\w-]+)\\s*(:)\\s*((?:"[\\w\\s]*")|(?:[\\w-]+))'}]},{begin:"^\\s*(gantt)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"Gantt Diagram",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.function.mermaid"}},match:"(dateFormat)\\s+([\\w\\-\\.]+)"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.function.mermaid"}},match:"(axisFormat)\\s+([\\w\\%\\/\\\\\\-\\.]+)"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},match:`(title)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)`},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},match:"(excludes)\\s+((?:[\\d\\-,\\s]+|monday|tuesday|wednesday|thursday|friday|saturday|sunday|weekends)+)"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},match:"^\\s+(todayMarker)\\s+(.*)$"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},match:`(section)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)`},{begin:"^\\s(.*)(:)",beginCaptures:{1:{name:"string"},2:{name:"keyword.control.mermaid"}},end:"$",patterns:[{match:"(crit|done|active|after)",name:"entity.name.function.mermaid"},{match:"\\%%.*",name:"comment"}]}]},{begin:"^\\s*(gitGraph)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"Git Graph",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{begin:"\\s*(commit)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"commit",end:"$",patterns:[{captures:{1:{name:"keyword.control.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"string"}},comment:'(id)(:) ("id")',match:'\\s*(id)(:)\\s?("[^"\\n]*")'},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"entity.name.function.mermaid"}},comment:"(type)(:) (COMMIT_TYPE)",match:"\\s*(type)(:)\\s?(NORMAL|REVERSE|HIGHLIGHT)"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"string"}},comment:'(tag)(:) ("tag")',match:`\\s*(tag)(:)\\s?("[\\($&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*")`}]},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"}},comment:"(checkout) (branch-name)",match:'\\s*(checkout)\\s*([^\\s"]*)'},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"},3:{name:"keyword.control.mermaid"},4:{name:"keyword.control.mermaid"},5:{name:"constant.numeric.decimal.mermaid"}},comment:"(branch) (branch-name) (order)?(:) (number)",match:'\\s*(branch)\\s*([^\\s"]*)\\s*(?:(order)(:)\\s?(\\d+))?'},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"},3:{name:"keyword.control.mermaid"},4:{name:"keyword.control.mermaid"},5:{name:"string"}},comment:'(merge) (branch-name) (tag: "tag-name")?',match:'\\s*(merge)\\s*([^\\s"]*)\\s*(?:(tag)(:)\\s?("[^"\\n]*"))?'},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"keyword.control.mermaid"},4:{name:"string"}},comment:'(cherry-pick) (id)(:)("commit-id")',match:'\\s*(cherry-pick)\\s+(id)(:)\\s*("[^"\\n]*")'}]},{begin:"^\\s*(graph|flowchart)\\s+([\\p{Letter}\\ 0-9]+)",beginCaptures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.function.mermaid"}},comment:"Graph",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.function.mermaid"}},match:"\\b(subgraph)\\s+([\\p{Letter}\\ 0-9]+)",name:"meta.function.mermaid"},{match:"\\b(end|RB|BT|RL|TD|LR)\\b",name:"keyword.control.mermaid"},{begin:"(\\b(?:(?!--|==)[-\\w])+\\b\\s*)(\\(\\[|\\[\\[|\\[\\(|\\[|\\(+|\\>|\\{|\\(\\()",beginCaptures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"},3:{name:"string"}},comment:"(Entity)(Edge/Shape)(Text)(Edge/Shape)",end:"(\\]\\)|\\]\\]|\\)\\]|\\]|\\)+|\\}|\\)\\))",endCaptures:{1:{name:"keyword.control.mermaid"}},patterns:[{begin:'\\s*(")',beginCaptures:{1:{name:"string"}},comment:'("multi-line text")',end:'(")',endCaptures:{1:{name:"string"}},patterns:[{begin:'([^"]*)',beginCaptures:{1:{name:"string"}},comment:"capture inner text between quotes",end:'(?=")',patterns:[{captures:{1:{name:"comment"}},match:'([^"]*)'}]}]},{captures:{1:{name:"string"}},comment:"(single line text)",match:"\\s*([$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)"}]},{begin:"\\s*((?:-{2,5}|={2,5})[xo>]?\\|)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:'(Graph Link)("Multiline text")(Graph Link)',end:"(\\|)",endCaptures:{1:{name:"keyword.control.mermaid"}},patterns:[{begin:'\\s*(")',beginCaptures:{1:{name:"string"}},comment:'("multi-line text")',end:'(")',endCaptures:{1:{name:"string"}},patterns:[{begin:'([^"]*)',beginCaptures:{1:{name:"string"}},comment:"capture inner text between quotes",end:'(?=")',patterns:[{captures:{1:{name:"comment"}},match:'([^"]*)'}]}]},{captures:{1:{name:"string"}},comment:"(single line text)",match:"\\s*([$&%\\^/#.,?!;:*+<>_\\'\\\\\\w\\s]+)"}]},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"},3:{name:"keyword.control.mermaid"}},comment:"(Graph Link Start Arrow)(Text)(Graph Link End Arrow)",match:"\\s*([xo<]?(?:-{2,5}|={2,5}|-\\.{1,3}|-\\.))((?:(?!--|==)[\\w\\s*+%=\\\\/:\\.\\-'`,\"&^#$!?])*)((?:-{2,5}|={2,5}|\\.{1,3}-|\\.-)[xo>]?)"},{captures:{1:{name:"keyword.control.mermaid"}},comment:"(Graph Link)",match:"\\s*([ox<]?(?:-.{1,3}-|-{1,3}|={1,3})[ox>]?)"},{comment:"Entity",match:"(\\b(?:(?!--|==)[-\\w])+\\b\\s*)",name:"variable"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"},3:{name:"string"}},comment:"(Class)(Node(s))(ClassName)",match:"\\s*(class)\\s+(\\b[-,\\w]+)\\s+(\\b\\w+\\b)"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"},3:{name:"string"}},comment:"(ClassDef)(ClassName)(Styles)",match:"\\s*(classDef)\\s+(\\b\\w+\\b)\\s+(\\b[-,:;#\\w]+)"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"},3:{name:"variable"},4:{name:"string"}},comment:"(Click)(Entity)(Link)?(Tooltip)",match:'\\s*(click)\\s+(\\b[-\\w]+\\b\\s*)(\\b\\w+\\b)?\\s("*.*")'}]},{begin:"^\\s*(pie)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"Pie Chart",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},match:`(title)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)`},{begin:"\\s(.*)(:)",beginCaptures:{1:{name:"string"},2:{name:"keyword.control.mermaid"}},end:"$",patterns:[{match:"\\%%.*",name:"comment"}]}]},{begin:"^\\s*(sequenceDiagram)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"Sequence Diagram",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"(\\%%|#).*",name:"comment"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"string"}},comment:"(title)(title text)",match:`(title)\\s*(:)?\\s+(\\s*["\\(\\)$&%\\^/#.,?!:*+=<>\\'\\\\\\-\\w\\s]*)`},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"},3:{name:"keyword.control.mermaid"},4:{name:"string"}},comment:"(participant)(Actor)(as)?(Label)?",match:`\\s*(participant|actor)\\s+((?:(?! as )["\\(\\)$&%\\^/#.?!*=<>\\'\\\\\\w\\s])+)\\s*(as)?\\s(["\\(\\)$&%\\^/#.,?!*=<>\\'\\\\\\w\\s]+)?`},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"}},comment:"(activate/deactivate)(Actor)",match:`\\s*((?:de)?activate)\\s+(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?\\s*)`},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"entity.name.function.mermaid"},3:{name:"variable"},4:{name:"keyword.control.mermaid"},5:{name:"variable"},6:{name:"keyword.control.mermaid"},7:{name:"string"}},comment:"(Note)(direction)(Actor)(,)?(Actor)?(:)(Message)",match:`\\s*(Note)\\s+((?:left|right)\\sof|over)\\s+(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?\\s*)(,)?(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?\\s*)?(:)(?:\\s+([^;#]*))?`},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},comment:"(loop)(loop text)",match:"\\s*(loop)(?:\\s+([^;#]*))?"},{captures:{1:{name:"keyword.control.mermaid"}},comment:"(end)",match:"\\s*(end)"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},comment:"(alt/else/option/par/and/autonumber/critical/opt)(text)",match:"\\s*(alt|else|option|par|and|rect|autonumber|critical|opt)(?:\\s+([^#;]*))?"},{captures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"},3:{name:"variable"},4:{name:"keyword.control.mermaid"},5:{name:"string"}},comment:"(Actor)(Arrow)(Actor)(:)(Message)",match:`\\s*(\\b["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?)\\s*(-?-(?:\\>|x|\\))\\>?[+-]?)\\s*(["()$&%^/#.?!*=<>'\\\\\\w\\s]+\\b\\)?)\\s*(:)\\s*([^;#]*)`}]},{begin:"^\\s*(stateDiagram(?:-v2)?)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"State Diagram",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{captures:{1:{name:"keyword.control.mermaid"}},comment:"}",match:"\\s+(})\\s+"},{captures:{1:{name:"keyword.control.mermaid"}},comment:"--",match:"\\s+(--)\\s+"},{comment:"(state)",match:"^\\s*([\\w-]+)$",name:"variable"},{captures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"},3:{name:"string"}},comment:"(state) : (description)",match:"([\\w-]+)\\s+(:)\\s+(\\s*[-\\w\\s]+\\b)"},{begin:"(state)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"state",end:"$",patterns:[{captures:{1:{name:"string"},2:{name:"keyword.control.mermaid"},3:{name:"variable"}},comment:'"(description)" as (state)',match:'\\s+("[-\\w\\s]+\\b")\\s+(as)\\s+([\\w-]+)'},{captures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"}},comment:"(state name) {",match:"\\s+([\\w-]+)\\s+({)"},{captures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"}},comment:"(state name) <<fork|join>>",match:"\\s+([\\w-]+)\\s+(<<(?:fork|join)>>)"}]},{begin:"([\\w-]+)\\s+(-->)",beginCaptures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"}},comment:"(state) -->",end:"$",patterns:[{captures:{1:{name:"variable"},2:{name:"keyword.control.mermaid"},3:{name:"string"}},comment:"(state) (:)? (transition text)?",match:"\\s+([\\w-]+)\\s*(:)?\\s*([^\\n:]+)?"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"string"}},comment:"[*] (:)? (transition text)?",match:"(\\[\\*\\])\\s*(:)?\\s*([^\\n:]+)?"}]},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"keyword.control.mermaid"},3:{name:"variable"},4:{name:"keyword.control.mermaid"},5:{name:"string"}},comment:"[*] --> (state) (:)? (transition text)?",match:"(\\[\\*\\])\\s+(-->)\\s+([\\w-]+)\\s*(:)?\\s*([^\\n:]+)?"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"},3:{name:"keyword.control.mermaid"},4:{name:"string"}},comment:"note left|right of (state name)",match:"(note (?:left|right) of)\\s+([\\w-]+)\\s+(:)\\s*([^\\n:]+)"},{begin:"(note (?:left|right) of)\\s+([\\w-]+)(.|\\n)",beginCaptures:{1:{name:"keyword.control.mermaid"},2:{name:"variable"}},comment:"note left|right of (state name) (note text) end note",contentName:"string",end:"(end note)",endCaptures:{1:{name:"keyword.control.mermaid"}}}]},{begin:"^\\s*(journey)",beginCaptures:{1:{name:"keyword.control.mermaid"}},comment:"User Journey",end:"(^|\\G)(?=\\s*[`:~]{3,}\\s*$)",patterns:[{match:"\\%%.*",name:"comment"},{captures:{1:{name:"keyword.control.mermaid"},2:{name:"string"}},match:`(title|section)\\s+(\\s*["\\(\\)$&%\\^/#.,?!;:*+=<>\\'\\\\\\-\\w\\s]*)`},{begin:`\\s*(["\\(\\)$&%\\^/.,?!*+=<>\\'\\\\\\-\\w\\s]*)\\s*(:)\\s*(\\d+)\\s*(:)`,beginCaptures:{1:{name:"string"},2:{name:"keyword.control.mermaid"},3:{name:"constant.numeric.decimal.mermaid"},4:{name:"keyword.control.mermaid"}},end:"$",patterns:[{captures:{1:{name:"variable"}},comment:"(taskName)",match:"\\s*,?\\s*([^,#\\n]+)"}]}]}]},"mermaid-ado-code-block":{begin:"\\s*:::\\s*mermaid\\s*$",end:"\\s*:::\\s*",patterns:[{include:"#mermaid"}]},"mermaid-code-block":{begin:"(?<=[`~])mermaid(\\s+[^`~]*)?$",end:"(^|\\G)(?=\\s*[`~]{3,}\\s*$)",patterns:[{include:"#mermaid"}]},"mermaid-code-block-with-attributes":{begin:"(?<=[`~])\\{\\s*\\.?mermaid(\\s+[^`~]*)?$",end:"(^|\\G)(?=\\s*[`~]{3,}\\s*$)",patterns:[{include:"#mermaid"}]}},scopeName:"markdown.mermaid.codeblock"});var a=[e];export{a as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=Object.freeze({displayName:"Dart",name:"dart",patterns:[{match:"^(#!.*)$",name:"meta.preprocessor.script.dart"},{begin:"^\\w*\\b(library|import|part of|part|export)\\b",beginCaptures:{0:{name:"keyword.other.import.dart"}},end:";",endCaptures:{0:{name:"punctuation.terminator.dart"}},name:"meta.declaration.dart",patterns:[{include:"#strings"},{include:"#comments"},{match:"\\b(as|show|hide)\\b",name:"keyword.other.import.dart"},{match:"\\b(if)\\b",name:"keyword.control.dart"}]},{include:"#comments"},{include:"#punctuation"},{include:"#annotations"},{include:"#keywords"},{include:"#constants-and-special-vars"},{include:"#operators"},{include:"#strings"}],repository:{annotations:{patterns:[{match:"@[a-zA-Z]+",name:"storage.type.annotation.dart"}]},"class-identifier":{patterns:[{match:"(?<!\\$)\\b(bool|num|int|double|dynamic)\\b(?!\\$)",name:"support.class.dart"},{match:"(?<!\\$)\\bvoid\\b(?!\\$)",name:"storage.type.primitive.dart"},{begin:"(?<![a-zA-Z0-9_$])([_$]*[A-Z][a-zA-Z0-9_$]*)\\b",beginCaptures:{1:{name:"support.class.dart"}},end:"(?!<)",patterns:[{include:"#type-args"}]}]},comments:{patterns:[{captures:{0:{name:"punctuation.definition.comment.dart"}},match:"/\\*\\*/",name:"comment.block.empty.dart"},{include:"#comments-doc-oldschool"},{include:"#comments-doc"},{include:"#comments-inline"}]},"comments-block":{patterns:[{begin:"/\\*",end:"\\*/",name:"comment.block.dart",patterns:[{include:"#comments-block"}]}]},"comments-doc":{patterns:[{begin:"///",name:"comment.block.documentation.dart",patterns:[{include:"#dartdoc"}],while:"^\\s*///"}]},"comments-doc-oldschool":{patterns:[{begin:"/\\*\\*",end:"\\*/",name:"comment.block.documentation.dart",patterns:[{include:"#comments-doc-oldschool"},{include:"#comments-block"},{include:"#dartdoc"}]}]},"comments-inline":{patterns:[{include:"#comments-block"},{captures:{1:{name:"comment.line.double-slash.dart"}},match:"((//).*)$"}]},"constants-and-special-vars":{patterns:[{match:"(?<!\\$)\\b(true|false|null)\\b(?!\\$)",name:"constant.language.dart"},{match:"(?<!\\$)\\b(this|super)\\b(?!\\$)",name:"variable.language.dart"},{match:"(?<!\\$)\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b(?!\\$)",name:"constant.numeric.dart"},{include:"#class-identifier"},{include:"#function-identifier"}]},dartdoc:{patterns:[{captures:{0:{name:"variable.name.source.dart"}},match:"(\\[.*?\\])"},{captures:{0:{name:"variable.name.source.dart"}},match:"^ {4,}(?![ \\*]).*"},{begin:"```.*?$",contentName:"variable.other.source.dart",end:"```"},{captures:{0:{name:"variable.other.source.dart"}},match:"(`[^`]+?`)"},{captures:{2:{name:"variable.other.source.dart"}},match:"(\\* (( ).*))$"}]},"function-identifier":{patterns:[{captures:{1:{name:"entity.name.function.dart"},2:{patterns:[{include:"#type-args"}]}},match:"([_$]*[a-z][a-zA-Z0-9_$]*)(<(?:[a-zA-Z0-9_$<>?]|,\\s*|\\s+extends\\s+)+>)?[!?]?\\("}]},keywords:{patterns:[{match:"(?<!\\$)\\bas\\b(?!\\$)",name:"keyword.cast.dart"},{match:"(?<!\\$)\\b(try|on|catch|finally|throw|rethrow)\\b(?!\\$)",name:"keyword.control.catch-exception.dart"},{match:"(?<!\\$)\\b(break|case|continue|default|do|else|for|if|in|switch|while|when)\\b(?!\\$)",name:"keyword.control.dart"},{match:"(?<!\\$)\\b(sync(\\*)?|async(\\*)?|await|yield(\\*)?)\\b(?!\\$)",name:"keyword.control.dart"},{match:"(?<!\\$)\\bassert\\b(?!\\$)",name:"keyword.control.dart"},{match:"(?<!\\$)\\b(new)\\b(?!\\$)",name:"keyword.control.new.dart"},{match:"(?<!\\$)\\b(return)\\b(?!\\$)",name:"keyword.control.return.dart"},{match:"(?<!\\$)\\b(abstract|sealed|base|interface|class|enum|extends|extension type|extension|external|factory|implements|get(?![(<])|mixin|native|operator|set(?![(<])|typedef|with|covariant)\\b(?!\\$)",name:"keyword.declaration.dart"},{match:"(?<!\\$)\\b(static|final|const|required|late)\\b(?!\\$)",name:"storage.modifier.dart"},{match:"(?<!\\$)\\b(?:void|var)\\b(?!\\$)",name:"storage.type.primitive.dart"}]},operators:{patterns:[{match:"(?<!\\$)\\b(is\\!?)\\b(?!\\$)",name:"keyword.operator.dart"},{match:"\\?|:",name:"keyword.operator.ternary.dart"},{match:"(<<|>>>?|~|\\^|\\||&)",name:"keyword.operator.bitwise.dart"},{match:"((&|\\^|\\||<<|>>>?)=)",name:"keyword.operator.assignment.bitwise.dart"},{match:"(=>)",name:"keyword.operator.closure.dart"},{match:"(==|!=|<=?|>=?)",name:"keyword.operator.comparison.dart"},{match:"(([+*/%-]|\\~)=)",name:"keyword.operator.assignment.arithmetic.dart"},{match:"(=)",name:"keyword.operator.assignment.dart"},{match:"(\\-\\-|\\+\\+)",name:"keyword.operator.increment-decrement.dart"},{match:"(\\-|\\+|\\*|\\/|\\~\\/|%)",name:"keyword.operator.arithmetic.dart"},{match:"(!|&&|\\|\\|)",name:"keyword.operator.logical.dart"}]},punctuation:{patterns:[{match:",",name:"punctuation.comma.dart"},{match:";",name:"punctuation.terminator.dart"},{match:"\\.",name:"punctuation.dot.dart"}]},"string-interp":{patterns:[{captures:{1:{name:"variable.parameter.dart"}},match:"\\$([a-zA-Z0-9_]+)",name:"string.interpolated.expression.dart"},{begin:"\\$\\{",end:"\\}",name:"string.interpolated.expression.dart",patterns:[{include:"#constants-and-special-vars"},{include:"#strings"},{match:"[a-zA-Z0-9_]+",name:"variable.parameter.dart"}]},{match:"\\\\.",name:"constant.character.escape.dart"}]},strings:{patterns:[{begin:'(?<!r)"""',end:'"""(?!")',name:"string.interpolated.triple.double.dart",patterns:[{include:"#string-interp"}]},{begin:"(?<!r)'''",end:"'''(?!')",name:"string.interpolated.triple.single.dart",patterns:[{include:"#string-interp"}]},{begin:'r"""',end:'"""(?!")',name:"string.quoted.triple.double.dart"},{begin:"r'''",end:"'''(?!')",name:"string.quoted.triple.single.dart"},{begin:'(?<!\\|r)"',end:'"',name:"string.interpolated.double.dart",patterns:[{match:"\\n",name:"invalid.string.newline"},{include:"#string-interp"}]},{begin:'r"',end:'"',name:"string.quoted.double.dart",patterns:[{match:"\\n",name:"invalid.string.newline"}]},{begin:"(?<!\\|r)'",end:"'",name:"string.interpolated.single.dart",patterns:[{match:"\\n",name:"invalid.string.newline"},{include:"#string-interp"}]},{begin:"r'",end:"'",name:"string.quoted.single.dart",patterns:[{match:"\\n",name:"invalid.string.newline"}]}]},"type-args":{begin:"(<)",beginCaptures:{1:{name:"other.source.dart"}},end:"(>)",endCaptures:{1:{name:"other.source.dart"}},patterns:[{include:"#class-identifier"},{match:","},{match:"extends",name:"keyword.declaration.dart"},{include:"#comments"}]}},scopeName:"source.dart"});var t=[e];export{t as default};
|