@malloy-publisher/server 0.0.197 → 0.0.198-dev1
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.docker.md +47 -0
- package/build.ts +26 -1
- package/dist/app/api-doc.yaml +54 -20
- package/dist/app/assets/{EnvironmentPage-BVkQH_xQ.js → EnvironmentPage-Dpee_Kn6.js} +1 -1
- package/dist/app/assets/{HomePage-BgH9UkjK.js → HomePage-DLRWTNoL.js} +1 -1
- package/dist/app/assets/{MainPage-DiBxABem.js → MainPage-DsVt5QGM.js} +1 -1
- package/dist/app/assets/{ModelPage-oS70fj83.js → ModelPage-AwAugZ37.js} +1 -1
- package/dist/app/assets/{PackagePage-F_qLDAdv.js → PackagePage-XQ-EWGTC.js} +1 -1
- package/dist/app/assets/{RouteError-WqpffppN.js → RouteError-3Mv8JQw7.js} +1 -1
- package/dist/app/assets/{WorkbookPage-_YmC-ebR.js → WorkbookPage-DHYYpcYc.js} +1 -1
- package/dist/app/assets/{core-B8L9xCYT.es-BcRLJTnC.js → core-DfcpQGVP.es-DQggNOdX.js} +1 -1
- package/dist/app/assets/{index-C3XPaTaS.js → index-BUp81Qdm.js} +1 -1
- package/dist/app/assets/{index-rg8Ok8nl.js → index-D1pdwrUW.js} +1 -1
- package/dist/app/assets/{index-BMViiwtJ.js → index-Dv5bF4Ii.js} +4 -4
- package/dist/app/assets/{index.umd-CCAfKkxY.js → index.umd-CQH4LZU8.js} +1 -1
- package/dist/app/index.html +1 -1
- package/dist/compile_worker.mjs +628 -0
- package/dist/instrumentation.mjs +36 -36
- package/dist/server.mjs +1781 -809
- package/package.json +1 -1
- package/src/compile/compile_pool.spec.ts +227 -0
- package/src/compile/compile_pool.ts +729 -0
- package/src/compile/compile_worker.ts +683 -0
- package/src/compile/protocol.ts +251 -0
- package/src/config.spec.ts +81 -0
- package/src/config.ts +126 -0
- package/src/controller/compile.controller.ts +3 -1
- package/src/controller/model.controller.ts +8 -1
- package/src/controller/package.controller.ts +70 -29
- package/src/controller/query.controller.ts +3 -0
- package/src/errors.ts +13 -0
- package/src/health.spec.ts +90 -0
- package/src/health.ts +86 -71
- package/src/mcp/tools/discovery_tools.ts +6 -2
- package/src/mcp/tools/execute_query_tool.ts +12 -0
- package/src/path_safety.spec.ts +158 -0
- package/src/path_safety.ts +140 -0
- package/src/server.ts +29 -0
- package/src/service/environment.ts +616 -199
- package/src/service/environment_admission.spec.ts +180 -0
- package/src/service/environment_store.spec.ts +0 -19
- package/src/service/environment_store.ts +24 -21
- package/src/service/filter_integration.spec.ts +110 -0
- package/src/service/givens_integration.spec.ts +192 -0
- package/src/service/manifest_service.spec.ts +7 -2
- package/src/service/manifest_service.ts +8 -2
- package/src/service/materialization_service.ts +14 -3
- package/src/service/model.spec.ts +105 -0
- package/src/service/model.ts +317 -10
- package/src/service/model_worker_path.spec.ts +125 -0
- package/src/service/package_memory_governor.spec.ts +173 -0
- package/src/service/package_memory_governor.ts +233 -0
- package/src/service/package_race.spec.ts +208 -0
- package/tests/integration/concurrent_package/concurrent_package.integration.spec.ts +280 -0
package/README.docker.md
CHANGED
|
@@ -74,6 +74,53 @@ All flags exposed by `bin/malloy-publisher --help` have an equivalent env var, s
|
|
|
74
74
|
| `SHUTDOWN_DRAIN_DURATION_SECONDS` | — | `0` | On SIGTERM, how long to keep accepting requests while draining before closing server sockets. Set this to your typical request duration to avoid 502s from K8s rolling deploys. |
|
|
75
75
|
| `SHUTDOWN_GRACEFUL_CLOSE_TIMEOUT_SECONDS` | — | `0` | Additional grace period after server close before `process.exit`. |
|
|
76
76
|
| `GOOGLE_APPLICATION_CREDENTIALS` | — | unset | Path inside the container to a GCP service-account JSON. Required for BigQuery-backed environments. Personal user credentials don't work inside the container — use a service account. |
|
|
77
|
+
| `PUBLISHER_MAX_MEMORY_BYTES` | — | unset (disabled) | Resident-set-size (RSS) cap in bytes. When set, the in-process **memory governor** polls RSS on `PUBLISHER_MEMORY_CHECK_INTERVAL_MS` and rejects new package loads with **HTTP 503** once RSS crosses the high-water mark. Designed to keep the pod under its k8s `resources.limits.memory` instead of getting OOM-killed. Set this to roughly `0.7 × resources.limits.memory` so the back-pressure band has headroom for traffic spikes and per-request DuckDB scratch. |
|
|
78
|
+
| `PUBLISHER_MEMORY_HIGH_WATER_FRACTION` | — | `0.8` | Fraction of `PUBLISHER_MAX_MEMORY_BYTES` at which back-pressure activates. Must be in `(0, 1)` and strictly greater than the low-water fraction. |
|
|
79
|
+
| `PUBLISHER_MEMORY_LOW_WATER_FRACTION` | — | `0.7` | Fraction at which back-pressure clears. The gap between low and high gives hysteresis so the governor doesn't flap on every GC cycle. |
|
|
80
|
+
| `PUBLISHER_MEMORY_CHECK_INTERVAL_MS` | — | `5000` | How often the governor samples RSS. Minimum `100`. Smaller values catch spikes faster but burn a few extra microseconds per tick. |
|
|
81
|
+
| `PUBLISHER_MEMORY_BACKPRESSURE` | — | `true` | When `false`, the governor still samples RSS and emits metrics but never flips the back-pressure flag. Useful for a monitoring-only rollout before enabling the 503 behaviour. |
|
|
82
|
+
|
|
83
|
+
### Memory governor
|
|
84
|
+
|
|
85
|
+
When `PUBLISHER_MAX_MEMORY_BYTES` is unset, the governor is **disabled** and the server's behaviour is identical to prior versions. When it's set, the governor:
|
|
86
|
+
|
|
87
|
+
- Periodically samples `process.memoryUsage().rss`.
|
|
88
|
+
- Once RSS crosses the high-water mark, **any code path that would allocate a new package into memory returns HTTP 503**. The gate sits at the single choke point inside `Environment.getPackage` / `Environment.addPackage`, so it covers every controller that touches a not-yet-loaded package — including lazy loads on cache miss from `ModelController`, `ConnectionController`, `QueryController`, `DatabaseController`, etc. — not just the explicit `POST /packages` and `?reload=true` paths.
|
|
89
|
+
- Already-loaded packages remain fully serviceable so dashboards keep rendering under pressure.
|
|
90
|
+
- Once RSS drops back to the low-water mark, back-pressure clears automatically.
|
|
91
|
+
- Recovery happens naturally as in-flight traffic completes and the kernel reclaims pages — the governor does **not** evict, unload, or interrupt loaded packages.
|
|
92
|
+
- A documented `{ allowAdmission: true }` opt-out exists on `Environment.getPackage` / `addPackage` for future internal callers (e.g. warmup / health probes) that genuinely cannot tolerate 503s. No public REST endpoint sets it today.
|
|
93
|
+
|
|
94
|
+
Metrics exposed on the existing `/metrics` Prometheus endpoint:
|
|
95
|
+
|
|
96
|
+
| Metric | Type | Notes |
|
|
97
|
+
|---|---|---|
|
|
98
|
+
| `publisher_process_rss_bytes` | gauge | Sampled RSS. |
|
|
99
|
+
| `publisher_memory_backpressure_active` | gauge | `1` when rejecting new loads, `0` otherwise. |
|
|
100
|
+
| `publisher_memory_backpressure_activations_total` | counter | Increments on every `false → true` transition; alert on a non-trivial rate to catch flapping pods. |
|
|
101
|
+
| `publisher_memory_max_bytes`, `publisher_memory_high_water_bytes`, `publisher_memory_low_water_bytes` | gauges | Static configured thresholds — useful for plotting the band alongside the RSS series. |
|
|
102
|
+
|
|
103
|
+
#### Recommended k8s sizing
|
|
104
|
+
|
|
105
|
+
A reasonable starting point (tune for your workload):
|
|
106
|
+
|
|
107
|
+
```yaml
|
|
108
|
+
resources:
|
|
109
|
+
requests:
|
|
110
|
+
memory: 2Gi
|
|
111
|
+
limits:
|
|
112
|
+
memory: 4Gi
|
|
113
|
+
env:
|
|
114
|
+
- name: PUBLISHER_MAX_MEMORY_BYTES
|
|
115
|
+
# 2.8Gi — back-pressure activates at ~2.24Gi, clears at ~1.96Gi,
|
|
116
|
+
# leaving ~1.2Gi of headroom under the 4Gi k8s hard limit for
|
|
117
|
+
# in-flight DuckDB scratch and JS heap spikes.
|
|
118
|
+
value: "3006477107"
|
|
119
|
+
- name: PUBLISHER_MEMORY_BACKPRESSURE
|
|
120
|
+
value: "true"
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
If you want a soft-launch where the governor reports but doesn't act, deploy first with `PUBLISHER_MEMORY_BACKPRESSURE=false`, watch the `publisher_process_rss_bytes` series for a week, then enable.
|
|
77
124
|
|
|
78
125
|
## BigQuery credentials
|
|
79
126
|
|
package/build.ts
CHANGED
|
@@ -5,7 +5,15 @@ fs.rmSync("./dist", { recursive: true, force: true });
|
|
|
5
5
|
fs.mkdirSync("./dist");
|
|
6
6
|
|
|
7
7
|
await build({
|
|
8
|
-
|
|
8
|
+
// compile_worker.ts is bundled as a SEPARATE entrypoint so it can
|
|
9
|
+
// be loaded by `new Worker(...)` at runtime. It must NOT be
|
|
10
|
+
// inlined into server.mjs (workers can't share module state with
|
|
11
|
+
// the parent process — they get their own JS realm).
|
|
12
|
+
entrypoints: [
|
|
13
|
+
"./src/server.ts",
|
|
14
|
+
"./src/instrumentation.ts",
|
|
15
|
+
"./src/compile/compile_worker.ts",
|
|
16
|
+
],
|
|
9
17
|
outdir: "./dist",
|
|
10
18
|
target: "node",
|
|
11
19
|
format: "esm",
|
|
@@ -48,6 +56,23 @@ fs.copyFileSync(
|
|
|
48
56
|
// Rename ESM outputs to .mjs so both Node and Bun can execute them
|
|
49
57
|
fs.renameSync("./dist/server.js", "./dist/server.mjs");
|
|
50
58
|
fs.renameSync("./dist/instrumentation.js", "./dist/instrumentation.mjs");
|
|
59
|
+
// Bun emits compile_worker into its source-relative subdir; flatten
|
|
60
|
+
// so compile_pool.ts's `resolveWorkerScript()` finds it as a sibling
|
|
61
|
+
// of server.mjs. The path layout match is intentional — keep these
|
|
62
|
+
// two in sync or the worker pool falls back to in-process compile.
|
|
63
|
+
if (fs.existsSync("./dist/compile/compile_worker.js")) {
|
|
64
|
+
fs.renameSync(
|
|
65
|
+
"./dist/compile/compile_worker.js",
|
|
66
|
+
"./dist/compile_worker.mjs",
|
|
67
|
+
);
|
|
68
|
+
try {
|
|
69
|
+
fs.rmdirSync("./dist/compile");
|
|
70
|
+
} catch {
|
|
71
|
+
/* directory may be non-empty if Bun produced sourcemaps; leave it */
|
|
72
|
+
}
|
|
73
|
+
} else if (fs.existsSync("./dist/compile_worker.js")) {
|
|
74
|
+
fs.renameSync("./dist/compile_worker.js", "./dist/compile_worker.mjs");
|
|
75
|
+
}
|
|
51
76
|
|
|
52
77
|
// Add shebang to server.mjs for npx/bunx compatibility
|
|
53
78
|
const serverJsPath = "./dist/server.mjs";
|
package/dist/app/api-doc.yaml
CHANGED
|
@@ -2024,6 +2024,12 @@ paths:
|
|
|
2024
2024
|
enum:
|
|
2025
2025
|
- "true"
|
|
2026
2026
|
- "false"
|
|
2027
|
+
- name: givens
|
|
2028
|
+
in: query
|
|
2029
|
+
description: JSON-encoded given values keyed by given name
|
|
2030
|
+
required: false
|
|
2031
|
+
schema:
|
|
2032
|
+
type: string
|
|
2027
2033
|
responses:
|
|
2028
2034
|
"200":
|
|
2029
2035
|
description: Cell execution result
|
|
@@ -2498,28 +2504,11 @@ components:
|
|
|
2498
2504
|
description: Whether the server is fully initialized and ready to serve requests
|
|
2499
2505
|
operationalState:
|
|
2500
2506
|
type: string
|
|
2501
|
-
enum: [ "initializing", "serving", "
|
|
2507
|
+
enum: [ "initializing", "serving", "draining" ]
|
|
2502
2508
|
description: Status of the server; initializing when the server is loading
|
|
2503
2509
|
environments, packages and connections, serving when the server is
|
|
2504
|
-
initialized and ready to serve requests,
|
|
2505
|
-
|
|
2506
|
-
environments are served; see failedEnvironments), and draining when
|
|
2507
|
-
the server is going to shut down
|
|
2508
|
-
failedEnvironments:
|
|
2509
|
-
type: array
|
|
2510
|
-
description: Environments that failed to initialize. Present only when
|
|
2511
|
-
operationalState is "degraded". Healthy environments are listed under
|
|
2512
|
-
"environments".
|
|
2513
|
-
items:
|
|
2514
|
-
type: object
|
|
2515
|
-
required: [name, error]
|
|
2516
|
-
properties:
|
|
2517
|
-
name:
|
|
2518
|
-
type: string
|
|
2519
|
-
description: Environment name as declared in publisher.config.json
|
|
2520
|
-
error:
|
|
2521
|
-
type: string
|
|
2522
|
-
description: Error message from the initialization failure
|
|
2510
|
+
initialized and ready to serve requests, and draining when the
|
|
2511
|
+
server is going to shut down
|
|
2523
2512
|
frozenConfig:
|
|
2524
2513
|
type: boolean
|
|
2525
2514
|
description: Whether the server configuration is frozen (read-only mode). When
|
|
@@ -2687,6 +2676,12 @@ components:
|
|
|
2687
2676
|
description: Sources defined in this model
|
|
2688
2677
|
items:
|
|
2689
2678
|
$ref: "#/components/schemas/Source"
|
|
2679
|
+
givens:
|
|
2680
|
+
type: array
|
|
2681
|
+
description: Givens (runtime parameters) declared on this model via the
|
|
2682
|
+
`given:` keyword
|
|
2683
|
+
items:
|
|
2684
|
+
$ref: "#/components/schemas/Given"
|
|
2690
2685
|
|
|
2691
2686
|
View:
|
|
2692
2687
|
type: object
|
|
@@ -2747,6 +2742,33 @@ components:
|
|
|
2747
2742
|
description: Malloy data type of the dimension (e.g. string, number, boolean,
|
|
2748
2743
|
date, timestamp)
|
|
2749
2744
|
|
|
2745
|
+
Given:
|
|
2746
|
+
type: object
|
|
2747
|
+
description: A given (runtime parameter) declared on a Malloy model via the
|
|
2748
|
+
`given:` keyword. Surfaced on `CompiledModel.givens` and `Source.givens`
|
|
2749
|
+
so callers can introspect what runtime values a model accepts.
|
|
2750
|
+
properties:
|
|
2751
|
+
name:
|
|
2752
|
+
type: string
|
|
2753
|
+
description: Name as declared in the model
|
|
2754
|
+
type:
|
|
2755
|
+
type: string
|
|
2756
|
+
description: Rendered Malloy type for the given (e.g. string, number,
|
|
2757
|
+
boolean, date, timestamp, filter<string>)
|
|
2758
|
+
annotations:
|
|
2759
|
+
type: array
|
|
2760
|
+
description: Annotations attached to the given declaration
|
|
2761
|
+
items:
|
|
2762
|
+
type: string
|
|
2763
|
+
|
|
2764
|
+
Givens:
|
|
2765
|
+
type: object
|
|
2766
|
+
description: Per-query given values that override model defaults. Keys are
|
|
2767
|
+
given names declared in the model's `given:` block. Values must match
|
|
2768
|
+
the declared type (string, number, boolean, date, etc.). See Malloy
|
|
2769
|
+
givens documentation for accepted value shapes.
|
|
2770
|
+
additionalProperties: true
|
|
2771
|
+
|
|
2750
2772
|
Source:
|
|
2751
2773
|
type: object
|
|
2752
2774
|
description: A Malloy source defined in a model
|
|
@@ -2769,6 +2791,14 @@ components:
|
|
|
2769
2791
|
description: Filters declared on this source via #(filter) annotations
|
|
2770
2792
|
items:
|
|
2771
2793
|
$ref: "#/components/schemas/Filter"
|
|
2794
|
+
givens:
|
|
2795
|
+
type: array
|
|
2796
|
+
description: Model-level givens (runtime parameters) available to queries
|
|
2797
|
+
on this source. Identical to `CompiledModel.givens`; repeated here
|
|
2798
|
+
for SDK ergonomics so consumers iterating sources can render inputs
|
|
2799
|
+
without a second lookup.
|
|
2800
|
+
items:
|
|
2801
|
+
$ref: "#/components/schemas/Given"
|
|
2772
2802
|
|
|
2773
2803
|
QueryRequest:
|
|
2774
2804
|
type: object
|
|
@@ -2806,6 +2836,8 @@ components:
|
|
|
2806
2836
|
type: boolean
|
|
2807
2837
|
default: false
|
|
2808
2838
|
description: When true, skip server-side \#(filter) injection entirely.
|
|
2839
|
+
givens:
|
|
2840
|
+
$ref: "#/components/schemas/Givens"
|
|
2809
2841
|
|
|
2810
2842
|
NotebookCell:
|
|
2811
2843
|
type: object
|
|
@@ -3476,6 +3508,8 @@ components:
|
|
|
3476
3508
|
description: If true, returns the generated SQL alongside compilation results
|
|
3477
3509
|
(only available when compilation succeeds and the source contains a
|
|
3478
3510
|
runnable query).
|
|
3511
|
+
givens:
|
|
3512
|
+
$ref: "#/components/schemas/Givens"
|
|
3479
3513
|
required:
|
|
3480
3514
|
- source
|
|
3481
3515
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as r,F as t,j as e,_ as i,a2 as o}from"./index-
|
|
1
|
+
import{S as r,F as t,j as e,_ as i,a2 as o}from"./index-Dv5bF4Ii.js";function m(){const s=r(),{environmentName:n}=t();if(n){const a=i({environmentName:n});return e.jsx(o,{onSelectPackage:s,resourceUri:a})}else return e.jsx("div",{children:e.jsx("h2",{children:"Missing environment name"})})}export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as t,j as o,L as a}from"./index-
|
|
1
|
+
import{S as t,j as o,L as a}from"./index-Dv5bF4Ii.js";function s(){const n=t();return o.jsx(a,{onClickEnvironment:n})}export{s as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{u as we,g as ke,r as u,R as Se,a as Pe,c as $,j as t,s as I,B as Ce,m as _,e as re,b as oe,d as se,f as ae,h as Ee,i as O,k as ie,T as K,l as G,n as Ie,o as Me,p as Re,q as le,t as ze,v as ne,w as De,x as Te,y as Be,z as A,A as L,M as $e,P as He,C as Le,D as Ne,E as Ae,F as ce,S as J,G as x,H as We,I as X,J as Oe,K as Z,X as Ve,N as Ue,O as de,Q as pe,U as ue,V as he,W as Qe,Y as Fe,Z as Xe}from"./index-
|
|
1
|
+
import{u as we,g as ke,r as u,R as Se,a as Pe,c as $,j as t,s as I,B as Ce,m as _,e as re,b as oe,d as se,f as ae,h as Ee,i as O,k as ie,T as K,l as G,n as Ie,o as Me,p as Re,q as le,t as ze,v as ne,w as De,x as Te,y as Be,z as A,A as L,M as $e,P as He,C as Le,D as Ne,E as Ae,F as ce,S as J,G as x,H as We,I as X,J as Oe,K as Z,X as Ve,N as Ue,O as de,Q as pe,U as ue,V as he,W as Qe,Y as Fe,Z as Xe}from"./index-Dv5bF4Ii.js";function Ye(e,r,n,o,s){const[a,i]=u.useState(()=>s&&n?n(e).matches:o?o(e).matches:r);return Pe(()=>{if(!n)return;const c=n(e),h=()=>{i(c.matches)};return h(),c.addEventListener("change",h),()=>{c.removeEventListener("change",h)}},[e,n]),a}const _e={...Se},fe=_e.useSyncExternalStore;function Ke(e,r,n,o,s){const a=u.useCallback(()=>r,[r]),i=u.useMemo(()=>{if(s&&n)return()=>n(e).matches;if(o!==null){const{matches:p}=o(e);return()=>p}return a},[a,e,o,s,n]),[c,h]=u.useMemo(()=>{if(n===null)return[a,()=>()=>{}];const p=n(e);return[()=>p.matches,m=>(p.addEventListener("change",m),()=>{p.removeEventListener("change",m)})]},[a,n,e]);return fe(h,c,i)}function me(e={}){const{themeId:r}=e;return function(o,s={}){let a=we();a&&r&&(a=a[r]||a);const i=typeof window<"u"&&typeof window.matchMedia<"u",{defaultMatches:c=!1,matchMedia:h=i?window.matchMedia:null,ssrMatchMedia:f=null,noSsr:p=!1}=ke({name:"MuiUseMediaQuery",props:s,theme:a});let m=typeof o=="function"?o(a):o;return m=m.replace(/^@media( ?)/m,""),m.includes("print")&&console.warn(["MUI: You have provided a `print` query to the `useMediaQuery` hook.","Using the print media query to modify print styles can lead to unexpected results.","Consider using the `displayPrint` field in the `sx` prop instead.","More information about `displayPrint` on our docs: https://mui.com/system/display/#display-in-print."].join(`
|
|
2
2
|
`)),(fe!==void 0?Ke:Ye)(m,c,h,f,p)}}me();const Ge=$(t.jsx("path",{d:"M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"})),Je=I(Ce,{name:"MuiBreadcrumbCollapsed"})(_(({theme:e})=>({display:"flex",marginLeft:`calc(${e.spacing(1)} * 0.5)`,marginRight:`calc(${e.spacing(1)} * 0.5)`,...e.palette.mode==="light"?{backgroundColor:e.palette.grey[100],color:e.palette.grey[700]}:{backgroundColor:e.palette.grey[700],color:e.palette.grey[100]},borderRadius:2,"&:hover, &:focus":{...e.palette.mode==="light"?{backgroundColor:e.palette.grey[200]}:{backgroundColor:e.palette.grey[600]}},"&:active":{boxShadow:e.shadows[0],...e.palette.mode==="light"?{backgroundColor:re(e.palette.grey[200],.12)}:{backgroundColor:re(e.palette.grey[600],.12)}}}))),Ze=I(Ge)({width:24,height:16});function qe(e){const{slots:r={},slotProps:n={},...o}=e,s=e;return t.jsx("li",{children:t.jsx(Je,{focusRipple:!0,...o,ownerState:s,children:t.jsx(Ze,{as:r.CollapsedIcon,ownerState:s,...n.collapsedIcon})})})}function et(e){return se("MuiBreadcrumbs",e)}const tt=oe("MuiBreadcrumbs",["root","ol","li","separator"]),rt=e=>{const{classes:r}=e;return ie({root:["root"],li:["li"],ol:["ol"],separator:["separator"]},et,r)},nt=I(K,{name:"MuiBreadcrumbs",slot:"Root",overridesResolver:(e,r)=>[{[`& .${tt.li}`]:r.li},r.root]})({}),ot=I("ol",{name:"MuiBreadcrumbs",slot:"Ol"})({display:"flex",flexWrap:"wrap",alignItems:"center",padding:0,margin:0,listStyle:"none"}),st=I("li",{name:"MuiBreadcrumbs",slot:"Separator"})({display:"flex",userSelect:"none",marginLeft:8,marginRight:8});function at(e,r,n,o){return e.reduce((s,a,i)=>(i<e.length-1?s=s.concat(a,t.jsx(st,{"aria-hidden":!0,className:r,ownerState:o,children:n},`separator-${i}`)):s.push(a),s),[])}const it=u.forwardRef(function(r,n){const o=ae({props:r,name:"MuiBreadcrumbs"}),{children:s,className:a,component:i="nav",slots:c={},slotProps:h={},expandText:f="Show path",itemsAfterCollapse:p=1,itemsBeforeCollapse:m=1,maxItems:y=8,separator:S="/",...H}=o,[M,P]=u.useState(!1),v={...o,component:i,expanded:M,expandText:f,itemsAfterCollapse:p,itemsBeforeCollapse:m,maxItems:y,separator:S},C=rt(v),R=Ee({elementType:c.CollapsedIcon,externalSlotProps:h.collapsedIcon,ownerState:v}),j=u.useRef(null),w=d=>{const k=()=>{P(!0);const b=j.current.querySelector("a[href],button,[tabindex]");b&&b.focus()};return m+p>=d.length?d:[...d.slice(0,m),t.jsx(qe,{"aria-label":f,slots:{CollapsedIcon:c.CollapsedIcon},slotProps:{collapsedIcon:R},onClick:k},"ellipsis"),...d.slice(d.length-p,d.length)]},z=u.Children.toArray(s).filter(d=>u.isValidElement(d)).map((d,k)=>t.jsx("li",{className:C.li,children:d},`child-${k}`));return t.jsx(nt,{ref:n,component:i,color:"textSecondary",className:O(C.root,a),ownerState:v,...H,children:t.jsx(ot,{className:C.ol,ref:j,ownerState:v,children:at(M||y&&z.length<=y?z:w(z),C.separator,S,v)})})});function lt(e,r,n){const o=r.getBoundingClientRect(),s=n&&n.getBoundingClientRect(),a=le(r);let i;if(r.fakeTransform)i=r.fakeTransform;else{const f=a.getComputedStyle(r);i=f.getPropertyValue("-webkit-transform")||f.getPropertyValue("transform")}let c=0,h=0;if(i&&i!=="none"&&typeof i=="string"){const f=i.split("(")[1].split(")")[0].split(",");c=parseInt(f[4],10),h=parseInt(f[5],10)}return e==="left"?s?`translateX(${s.right+c-o.left}px)`:`translateX(${a.innerWidth+c-o.left}px)`:e==="right"?s?`translateX(-${o.right-s.left-c}px)`:`translateX(-${o.left+o.width-c}px)`:e==="up"?s?`translateY(${s.bottom+h-o.top}px)`:`translateY(${a.innerHeight+h-o.top}px)`:s?`translateY(-${o.top-s.top+o.height-h}px)`:`translateY(-${o.top+o.height-h}px)`}function ct(e){return typeof e=="function"?e():e}function W(e,r,n){const o=ct(n),s=lt(e,r,o);s&&(r.style.webkitTransform=s,r.style.transform=s)}const dt=u.forwardRef(function(r,n){const o=G(),s={enter:o.transitions.easing.easeOut,exit:o.transitions.easing.sharp},a={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{addEndListener:i,appear:c=!0,children:h,container:f,direction:p="down",easing:m=s,in:y,onEnter:S,onEntered:H,onEntering:M,onExit:P,onExited:v,onExiting:C,style:R,timeout:j=a,TransitionComponent:w=Ie,...z}=r,d=u.useRef(null),k=Me(Re(h),d,n),b=l=>g=>{l&&(g===void 0?l(d.current):l(d.current,g))},V=b((l,g)=>{W(p,l,f),De(l),S&&S(l,g)}),q=b((l,g)=>{const B=ne({timeout:j,style:R,easing:m},{mode:"enter"});l.style.webkitTransition=o.transitions.create("-webkit-transform",{...B}),l.style.transition=o.transitions.create("transform",{...B}),l.style.webkitTransform="none",l.style.transform="none",M&&M(l,g)}),D=b(H),T=b(C),E=b(l=>{const g=ne({timeout:j,style:R,easing:m},{mode:"exit"});l.style.webkitTransition=o.transitions.create("-webkit-transform",g),l.style.transition=o.transitions.create("transform",g),W(p,l,f),P&&P(l)}),U=b(l=>{l.style.webkitTransition="",l.style.transition="",v&&v(l)}),Q=l=>{i&&i(d.current,l)},N=u.useCallback(()=>{d.current&&W(p,d.current,f)},[p,f]);return u.useEffect(()=>{if(y||p==="down"||p==="right")return;const l=ze(()=>{d.current&&W(p,d.current,f)}),g=le(d.current);return g.addEventListener("resize",l),()=>{l.clear(),g.removeEventListener("resize",l)}},[p,y,f]),u.useEffect(()=>{y||N()},[y,N]),t.jsx(w,{nodeRef:d,onEnter:V,onEntered:D,onEntering:q,onExit:E,onExited:U,onExiting:T,addEndListener:Q,appear:c,in:y,timeout:j,...z,children:(l,{ownerState:g,...B})=>u.cloneElement(h,{ref:k,style:{visibility:l==="exited"&&!y?"hidden":void 0,...R,...h.props.style},...B})})});function pt(e){return se("MuiDrawer",e)}oe("MuiDrawer",["root","docked","paper","anchorLeft","anchorRight","anchorTop","anchorBottom","paperAnchorLeft","paperAnchorRight","paperAnchorTop","paperAnchorBottom","paperAnchorDockedLeft","paperAnchorDockedRight","paperAnchorDockedTop","paperAnchorDockedBottom","modal"]);const xe=(e,r)=>{const{ownerState:n}=e;return[r.root,(n.variant==="permanent"||n.variant==="persistent")&&r.docked,r.modal]},ut=e=>{const{classes:r,anchor:n,variant:o}=e,s={root:["root",`anchor${L(n)}`],docked:[(o==="permanent"||o==="persistent")&&"docked"],modal:["modal"],paper:["paper",`paperAnchor${L(n)}`,o!=="temporary"&&`paperAnchorDocked${L(n)}`]};return ie(s,pt,r)},ht=I($e,{name:"MuiDrawer",slot:"Root",overridesResolver:xe})(_(({theme:e})=>({zIndex:(e.vars||e).zIndex.drawer}))),ft=I("div",{shouldForwardProp:Le,name:"MuiDrawer",slot:"Docked",skipVariantsResolver:!1,overridesResolver:xe})({flex:"0 0 auto"}),mt=I(He,{name:"MuiDrawer",slot:"Paper",overridesResolver:(e,r)=>{const{ownerState:n}=e;return[r.paper,r[`paperAnchor${L(n.anchor)}`],n.variant!=="temporary"&&r[`paperAnchorDocked${L(n.anchor)}`]]}})(_(({theme:e})=>({overflowY:"auto",display:"flex",flexDirection:"column",height:"100%",flex:"1 0 auto",zIndex:(e.vars||e).zIndex.drawer,WebkitOverflowScrolling:"touch",position:"fixed",top:0,outline:0,variants:[{props:{anchor:"left"},style:{left:0}},{props:{anchor:"top"},style:{top:0,left:0,right:0,height:"auto",maxHeight:"100%"}},{props:{anchor:"right"},style:{right:0}},{props:{anchor:"bottom"},style:{top:"auto",left:0,bottom:0,right:0,height:"auto",maxHeight:"100%"}},{props:({ownerState:r})=>r.anchor==="left"&&r.variant!=="temporary",style:{borderRight:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:r})=>r.anchor==="top"&&r.variant!=="temporary",style:{borderBottom:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:r})=>r.anchor==="right"&&r.variant!=="temporary",style:{borderLeft:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:r})=>r.anchor==="bottom"&&r.variant!=="temporary",style:{borderTop:`1px solid ${(e.vars||e).palette.divider}`}}]}))),ge={left:"right",right:"left",top:"down",bottom:"up"};function xt(e){return["left","right"].includes(e)}function gt({direction:e},r){return e==="rtl"&&xt(r)?ge[r]:r}const yt=u.forwardRef(function(r,n){const o=ae({props:r,name:"MuiDrawer"}),s=G(),a=Te(),i={enter:s.transitions.duration.enteringScreen,exit:s.transitions.duration.leavingScreen},{anchor:c="left",BackdropProps:h,children:f,className:p,elevation:m=16,hideBackdrop:y=!1,ModalProps:{BackdropProps:S,...H}={},onClose:M,open:P=!1,PaperProps:v={},SlideProps:C,TransitionComponent:R,transitionDuration:j=i,variant:w="temporary",slots:z={},slotProps:d={},...k}=o,b=u.useRef(!1);u.useEffect(()=>{b.current=!0},[]);const V=gt({direction:a?"rtl":"ltr"},c),D={...o,anchor:c,elevation:m,open:P,variant:w,...k},T=ut(D),E={slots:{transition:R,...z},slotProps:{paper:v,transition:C,...d,backdrop:Be(d.backdrop||{...h,...S},{transitionDuration:j})}},[U,Q]=A("root",{ref:n,elementType:ht,className:O(T.root,T.modal,p),shouldForwardComponentProp:!0,ownerState:D,externalForwardedProps:{...E,...k,...H},additionalProps:{open:P,onClose:M,hideBackdrop:y,slots:{backdrop:E.slots.backdrop},slotProps:{backdrop:E.slotProps.backdrop}}}),[N,l]=A("paper",{elementType:mt,shouldForwardComponentProp:!0,className:O(T.paper,v.className),ownerState:D,externalForwardedProps:E,additionalProps:{elevation:w==="temporary"?m:0,square:!0,...w==="temporary"&&{role:"dialog","aria-modal":"true"}}}),[g,B]=A("docked",{elementType:ft,ref:n,className:O(T.root,T.docked,p),ownerState:D,externalForwardedProps:E,additionalProps:k}),[ve,je]=A("transition",{elementType:dt,ownerState:D,externalForwardedProps:E,additionalProps:{in:P,direction:ge[V],timeout:j,appear:b.current}}),ee=t.jsx(N,{...l,children:f});if(w==="permanent")return t.jsx(g,{...B,children:ee});const te=t.jsx(ve,{...je,children:ee});return w==="persistent"?t.jsx(g,{...B,children:te}):t.jsx(U,{...Q,children:te})}),bt=me({themeId:Ne}),vt=$([t.jsx("path",{d:"M19 5v14H5V5zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2"},"0"),t.jsx("path",{d:"M14 17H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"},"1")]),jt=$(t.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"})),wt=$(t.jsx("path",{d:"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6z"})),kt=$(t.jsx("path",{d:"m9.17 6 2 2H20v10H4V6zM10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"})),St=$(t.jsx("path",{d:"m12 5.69 5 4.5V18h-2v-6H9v6H7v-7.81zM12 3 2 12h3v8h6v-6h2v6h6v-8h3z"})),Pt=$(t.jsx("path",{d:"M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3z"}));function Y(e){return t.jsxs(Ae,{...e,viewBox:"0 0 24 24",sx:{fill:"none",...e.sx},children:[t.jsx("rect",{x:"3.25",y:"4.75",width:"17.5",height:"14.5",rx:"2.25",stroke:"currentColor",strokeWidth:"1.5"}),t.jsx("line",{x1:"8.5",y1:"5",x2:"8.5",y2:"19",stroke:"currentColor",strokeWidth:"1.5"})]})}function F({label:e,onClick:r}){return t.jsx(We,{clickable:!0,onClick:r,label:e,size:"small","aria-label":`Navigate to ${e}`,sx:{backgroundColor:"background.paper",color:"text.primary",fontWeight:500,fontSize:"0.875rem",height:32,cursor:"pointer",borderRadius:"4px",maxWidth:320,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},"&:hover":{backgroundColor:"grey.100"}}})}function Ct(){const e=ce(),r=e["*"],n=J();return!e.environmentName&&!e.packageName&&!r?null:t.jsx(x,{sx:{display:"flex",alignItems:"center",minWidth:0},children:t.jsxs(it,{"aria-label":"breadcrumb",separator:t.jsx(jt,{sx:{fontSize:14,color:"text.secondary"}}),children:[e.environmentName&&t.jsx(F,{label:e.environmentName,onClick:o=>n(`/${e.environmentName}/`,o)}),e.packageName&&t.jsx(F,{label:e.packageName,onClick:o=>n(`/${e.environmentName}/${e.packageName}/`,o)}),r&&t.jsx(F,{label:r,onClick:o=>n(`/${e.environmentName}/${e.packageName}/${r}`,o)})]})})}const Et=260,It=64;function ye({isCollapsed:e,onToggleCollapse:r,logoHeader:n}){return t.jsxs(x,{sx:{height:"100dvh",width:e?It:Et,flexShrink:0,display:"flex",flexDirection:"column",backgroundColor:"background.paper",transition:"width 0.2s cubic-bezier(0.4, 0, 0.2, 1)",overflow:"hidden"},children:[t.jsx(Mt,{isCollapsed:e,onToggleCollapse:r,logoHeader:n}),t.jsxs(x,{sx:{flex:1,overflowY:"auto",overflowX:"hidden",py:1},children:[t.jsx(Rt,{isCollapsed:e}),t.jsx(zt,{isCollapsed:e})]}),t.jsx(Dt,{isCollapsed:e})]})}function Mt({isCollapsed:e,onToggleCollapse:r,logoHeader:n}){const o=J();return n?t.jsxs(x,{sx:{height:56,display:"flex",alignItems:"center",justifyContent:"space-between",px:e?0:2,flexShrink:0},children:[n,t.jsx(X,{size:"small",onClick:r,"aria-label":e?"Expand sidebar":"Collapse sidebar",children:t.jsx(Y,{fontSize:"small"})})]}):t.jsxs(x,{sx:{height:56,display:"flex",alignItems:"center",justifyContent:e?"center":"space-between",px:e?0:2,flexShrink:0},children:[t.jsxs(x,{onClick:s=>o("/",s),sx:{display:"flex",alignItems:"center",gap:1,cursor:"pointer",minWidth:0},children:[t.jsx(x,{component:"img",src:"/logo.svg",alt:"Malloy",sx:{width:24,height:24,flexShrink:0}}),!e&&t.jsx(K,{variant:"subtitle1",sx:{color:"text.primary",fontWeight:500,letterSpacing:"-0.025em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:"Malloy Publisher"})]}),!e&&t.jsx(X,{size:"small",onClick:r,"aria-label":"Collapse sidebar",children:t.jsx(Y,{fontSize:"small"})})]})}function Rt({isCollapsed:e}){const n=Oe().pathname==="/";return t.jsx(Z,{sx:{py:0},children:t.jsx(be,{icon:t.jsx(St,{fontSize:"small"}),label:"Home",to:"/",selected:n,isCollapsed:e})})}function zt({isCollapsed:e}){const{apiClients:r}=Ve(),n=ce(),{data:o}=Ue({queryKey:["environments"],queryFn:()=>r.environments.listEnvironments()}),s=o?.data??[];return s.length===0?null:t.jsxs(x,{sx:{mt:1},children:[!e&&t.jsx(K,{variant:"caption",sx:{display:"block",px:3,py:1,color:"text.secondary",fontWeight:500,textTransform:"uppercase",fontSize:"0.6875rem",letterSpacing:"0.5px"},children:"Environments"}),t.jsx(Z,{sx:{py:0},children:s.map(a=>{const i=a.name??"";return t.jsx(be,{icon:t.jsx(kt,{fontSize:"small"}),label:i,to:`/${i}`,selected:n.environmentName===i,isCollapsed:e},i)})})]})}function Dt({isCollapsed:e}){const r=[{label:"Malloy Docs",href:"https://docs.malloydata.dev/documentation/",icon:t.jsx(vt,{fontSize:"small"}),external:!0},{label:"Publisher Docs",href:"https://github.com/malloydata/publisher/blob/main/README.md",icon:t.jsx(Pt,{fontSize:"small"}),external:!0},{label:"Publisher API",href:"/api-doc.html",icon:t.jsx(wt,{fontSize:"small"}),external:!1}];return t.jsx(Z,{sx:{py:1},children:r.map(n=>t.jsx(Tt,{label:n.label,href:n.href,icon:n.icon,external:n.external,isCollapsed:e},n.label))})}function be({icon:e,label:r,to:n,selected:o,isCollapsed:s}){const a=J(),i=t.jsxs(pe,{selected:o,onClick:c=>a(n,c),sx:{justifyContent:s?"center":"flex-start",px:s?0:2},children:[t.jsx(ue,{sx:{minWidth:s?0:36,justifyContent:"center",color:o?"text.primary":"text.secondary"},children:e}),!s&&t.jsx(he,{primary:r,primaryTypographyProps:{variant:"body2",sx:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}})]});return s?t.jsx(de,{title:r,placement:"right",children:t.jsx(x,{children:i})}):i}function Tt({label:e,href:r,icon:n,external:o,isCollapsed:s}){const a=t.jsxs(pe,{component:"a",href:r,target:o?"_blank":void 0,rel:o?"noopener noreferrer":void 0,sx:{justifyContent:s?"center":"flex-start",px:s?0:2},children:[t.jsx(ue,{sx:{minWidth:s?0:36,justifyContent:"center",color:"text.secondary"},children:n}),!s&&t.jsx(he,{primary:e,primaryTypographyProps:{variant:"body2",sx:{color:"text.secondary",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}})]});return s?t.jsx(de,{title:e,placement:"right",children:t.jsx(x,{children:a})}):a}function Bt({open:e,onClose:r,logoHeader:n}){return t.jsx(yt,{anchor:"left",open:e,onClose:r,ModalProps:{keepMounted:!0},sx:{display:{xs:"block",md:"none"},"& .MuiDrawer-paper":{boxSizing:"border-box",width:260}},children:t.jsx(ye,{isCollapsed:!1,onToggleCollapse:r,logoHeader:n})})}function Ht({headerProps:e}){const r=G(),n=bt(r.breakpoints.up("md")),[o,s]=u.useState(!1),[a,i]=u.useState(!1);return u.useEffect(()=>{n&&o&&s(!1)},[n,o]),t.jsxs(x,{sx:{height:"100dvh",display:"flex",flexDirection:"row",bgcolor:"background.default"},children:[n&&t.jsx(ye,{isCollapsed:a,onToggleCollapse:()=>i(c=>!c),logoHeader:e?.logoHeader}),t.jsxs(x,{component:"main",sx:{flex:1,display:"flex",flexDirection:"column",minWidth:0},children:[t.jsxs(x,{sx:{flexShrink:0,display:"flex",alignItems:"center",justifyContent:"space-between",height:Qe.headerHeight,px:{xs:1,md:3},backgroundColor:"background.default"},children:[t.jsx(x,{sx:{display:{xs:"flex",md:"none"},alignItems:"center",mr:1},children:t.jsx(X,{size:"small",onClick:()=>s(!0),"aria-label":"Open navigation",children:t.jsx(Y,{fontSize:"small"})})}),t.jsx(x,{sx:{flex:1,minWidth:0,display:"flex",alignItems:"center"},children:t.jsx(Ct,{})}),t.jsx(x,{id:"header-actions-portal",sx:{display:"flex",alignItems:"center",flexShrink:0,gap:1},children:e?.endCap})]}),t.jsx(x,{sx:{flex:1,overflow:"auto",minWidth:320,minHeight:0},children:t.jsx(u.Suspense,{fallback:t.jsx(Xe,{}),children:t.jsx(Fe,{})})})]}),t.jsx(Bt,{open:o,onClose:()=>s(!1),logoHeader:e?.logoHeader})]})}export{Ht as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as t,j as e,_ as m,G as r,$ as x,a0 as o}from"./index-
|
|
1
|
+
import{F as t,j as e,_ as m,G as r,$ as x,a0 as o}from"./index-Dv5bF4Ii.js";function l(){const n=t(),a=n["*"];if(!n.environmentName)return e.jsx("div",{children:e.jsx("h2",{children:"Missing environment name"})});if(!n.packageName)return e.jsx("div",{children:e.jsx("h2",{children:"Missing package name"})});const i=m({environmentName:n.environmentName,packageName:n.packageName,modelPath:a}),s={p:3,maxWidth:1200,mx:"auto"};return a?.endsWith(".malloy")?e.jsx(r,{sx:s,children:e.jsx(x,{resourceUri:i,runOnDemand:!0,maxResultSize:512*1024})}):a?.endsWith(".malloynb")?e.jsx(r,{sx:s,children:e.jsx(o,{resourceUri:i,maxResultSize:1024*1024})}):e.jsx(r,{sx:s,children:e.jsxs("h2",{children:["Unrecognized file type: ",a]})})}export{l as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as r,S as t,j as e,_ as c,a1 as o}from"./index-
|
|
1
|
+
import{F as r,S as t,j as e,_ as c,a1 as o}from"./index-Dv5bF4Ii.js";function m(){const{environmentName:a,packageName:n}=r(),s=t();if(a)if(n){const i=c({environmentName:a,packageName:n});return e.jsx(o,{onClickPackageFile:s,resourceUri:i})}else return e.jsx("div",{children:e.jsx("h2",{children:"Missing package name"})});else return e.jsx("div",{children:e.jsx("h2",{children:"Missing environment name"})})}export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a3 as o,j as r,a4 as s,a5 as n,G as t,T as a}from"./index-
|
|
1
|
+
import{a3 as o,j as r,a4 as s,a5 as n,G as t,T as a}from"./index-Dv5bF4Ii.js";function x(){const e=o();return console.error(e),r.jsx(s,{maxWidth:"lg",component:"main",sx:{display:"flex",flexDirection:"column",my:2,gap:0},children:r.jsxs(n,{sx:{m:"auto",flexDirection:"column"},children:[r.jsx(t,{sx:{height:"300px"}}),r.jsx("img",{src:"/error.png"}),r.jsx(a,{variant:"subtitle1",children:"An unexpected error occurred"})]})})}export{x as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as o,j as e,_ as t,a6 as c}from"./index-
|
|
1
|
+
import{F as o,j as e,_ as t,a6 as c}from"./index-Dv5bF4Ii.js";function l(){const{workspace:r,workbookPath:s,environmentName:i,packageName:n}=o();if(r)if(s)if(i)if(n){const a=t({environmentName:i,packageName:n});return e.jsx(c,{workbookPath:{path:s,workspace:r},resourceUri:a},`${s}`)}else return e.jsx("div",{children:e.jsx("h2",{children:"Missing package name"})});else return e.jsx("div",{children:e.jsx("h2",{children:"Missing environment name"})});else return e.jsx("div",{children:e.jsx("h2",{children:"Missing workbook path"})});else return e.jsx("div",{children:e.jsx("h2",{children:"Missing workspace"})})}export{l as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{createOnigurumaEngine as At,getDefaultWasmLoader as Gr,loadWasm as Mr}from"./engine-oniguruma-C4vnmooL.es-jdkXmgTr.js";import{a7 as Cn,a8 as Br,a9 as Or,aa as Fr,ab as jr,ac as Dr,ad as Wr,ae as Dt,af as xt}from"./index-BMViiwtJ.js";let V=class extends Error{constructor(t){super(t),this.name="ShikiError"}},Ee=!1,wn=!1;function Zi(t=!0,e=!1){Ee=t,wn=e}function F(t,e=3){if(Ee&&!(typeof Ee=="number"&&e>Ee)){if(wn)throw new Error(`[SHIKI DEPRECATE]: ${t}`);console.trace(`[SHIKI DEPRECATE]: ${t}`)}}function Ur(t){return vt(t)}function vt(t){return Array.isArray(t)?qr(t):t instanceof RegExp?t:typeof t=="object"?Hr(t):t}function qr(t){let e=[];for(let n=0,r=t.length;n<r;n++)e[n]=vt(t[n]);return e}function Hr(t){let e={};for(let n in t)e[n]=vt(t[n]);return e}function Sn(t,...e){return e.forEach(n=>{for(let r in n)t[r]=n[r]}),t}function An(t){const e=~t.lastIndexOf("/")||~t.lastIndexOf("\\");return e===0?t:~e===t.length-1?An(t.substring(0,t.length-1)):t.substr(~e+1)}var Ke=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,we=class{static hasCaptures(t){return t===null?!1:(Ke.lastIndex=0,Ke.test(t))}static replaceCaptures(t,e,n){return t.replace(Ke,(r,s,a,o)=>{let i=n[parseInt(s||a,10)];if(i){let c=e.substring(i.start,i.end);for(;c[0]===".";)c=c.substring(1);switch(o){case"downcase":return c.toLowerCase();case"upcase":return c.toUpperCase();default:return c}}else return r})}};function xn(t,e){return t<e?-1:t>e?1:0}function vn(t,e){if(t===null&&e===null)return 0;if(!t)return-1;if(!e)return 1;let n=t.length,r=e.length;if(n===r){for(let s=0;s<n;s++){let a=xn(t[s],e[s]);if(a!==0)return a}return 0}return n-r}function Wt(t){return!!(/^#[0-9a-f]{6}$/i.test(t)||/^#[0-9a-f]{8}$/i.test(t)||/^#[0-9a-f]{3}$/i.test(t)||/^#[0-9a-f]{4}$/i.test(t))}function En(t){return t.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Nn=class{constructor(t){this.fn=t}cache=new Map;get(t){if(this.cache.has(t))return this.cache.get(t);const e=this.fn(t);return this.cache.set(t,e),e}},Re=class{constructor(t,e,n){this._colorMap=t,this._defaults=e,this._root=n}static createFromRawTheme(t,e){return this.createFromParsedTheme(Qr(t),e)}static createFromParsedTheme(t,e){return Zr(t,e)}_cachedMatchRoot=new Nn(t=>this._root.match(t));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(t){if(t===null)return this._defaults;const e=t.scopeName,n=this._cachedMatchRoot.get(e).find(r=>zr(t.parent,r.parentScopes));return n?new In(n.fontStyle,n.foreground,n.background):null}},Ye=class Ne{constructor(e,n){this.parent=e,this.scopeName=n}static push(e,n){for(const r of n)e=new Ne(e,r);return e}static from(...e){let n=null;for(let r=0;r<e.length;r++)n=new Ne(n,e[r]);return n}push(e){return new Ne(this,e)}getSegments(){let e=this;const n=[];for(;e;)n.push(e.scopeName),e=e.parent;return n.reverse(),n}toString(){return this.getSegments().join(" ")}extends(e){return this===e?!0:this.parent===null?!1:this.parent.extends(e)}getExtensionIfDefined(e){const n=[];let r=this;for(;r&&r!==e;)n.push(r.scopeName),r=r.parent;return r===e?n.reverse():void 0}};function zr(t,e){if(e.length===0)return!0;for(let n=0;n<e.length;n++){let r=e[n],s=!1;if(r===">"){if(n===e.length-1)return!1;r=e[++n],s=!0}for(;t&&!Vr(t.scopeName,r);){if(s)return!1;t=t.parent}if(!t)return!1;t=t.parent}return!0}function Vr(t,e){return e===t||t.startsWith(e)&&t[e.length]==="."}var In=class{constructor(t,e,n){this.fontStyle=t,this.foregroundId=e,this.backgroundId=n}};function Qr(t){if(!t)return[];if(!t.settings||!Array.isArray(t.settings))return[];let e=t.settings,n=[],r=0;for(let s=0,a=e.length;s<a;s++){let o=e[s];if(!o.settings)continue;let i;if(typeof o.scope=="string"){let h=o.scope;h=h.replace(/^[,]+/,""),h=h.replace(/[,]+$/,""),i=h.split(",")}else Array.isArray(o.scope)?i=o.scope:i=[""];let c=-1;if(typeof o.settings.fontStyle=="string"){c=0;let h=o.settings.fontStyle.split(" ");for(let d=0,p=h.length;d<p;d++)switch(h[d]){case"italic":c=c|1;break;case"bold":c=c|2;break;case"underline":c=c|4;break;case"strikethrough":c=c|8;break}}let l=null;typeof o.settings.foreground=="string"&&Wt(o.settings.foreground)&&(l=o.settings.foreground);let u=null;typeof o.settings.background=="string"&&Wt(o.settings.background)&&(u=o.settings.background);for(let h=0,d=i.length;h<d;h++){let p=i[h].trim().split(" "),g=p[p.length-1],k=null;p.length>1&&(k=p.slice(0,p.length-1),k.reverse()),n[r++]=new Xr(g,k,s,c,l,u)}}return n}var Xr=class{constructor(t,e,n,r,s,a){this.scope=t,this.parentScopes=e,this.index=n,this.fontStyle=r,this.foreground=s,this.background=a}},z=(t=>(t[t.NotSet=-1]="NotSet",t[t.None=0]="None",t[t.Italic=1]="Italic",t[t.Bold=2]="Bold",t[t.Underline=4]="Underline",t[t.Strikethrough=8]="Strikethrough",t))(z||{});function Zr(t,e){t.sort((c,l)=>{let u=xn(c.scope,l.scope);return u!==0||(u=vn(c.parentScopes,l.parentScopes),u!==0)?u:c.index-l.index});let n=0,r="#000000",s="#ffffff";for(;t.length>=1&&t[0].scope==="";){let c=t.shift();c.fontStyle!==-1&&(n=c.fontStyle),c.foreground!==null&&(r=c.foreground),c.background!==null&&(s=c.background)}let a=new Kr(e),o=new In(n,a.getId(r),a.getId(s)),i=new Jr(new ut(0,null,-1,0,0),[]);for(let c=0,l=t.length;c<l;c++){let u=t[c];i.insert(0,u.scope,u.parentScopes,u.fontStyle,a.getId(u.foreground),a.getId(u.background))}return new Re(a,o,i)}var Kr=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(t){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(t)){this._isFrozen=!0;for(let e=0,n=t.length;e<n;e++)this._color2id[t[e]]=e,this._id2color[e]=t[e]}else this._isFrozen=!1}getId(t){if(t===null)return 0;t=t.toUpperCase();let e=this._color2id[t];if(e)return e;if(this._isFrozen)throw new Error(`Missing color in color map - ${t}`);return e=++this._lastColorId,this._color2id[t]=e,this._id2color[e]=t,e}getColorMap(){return this._id2color.slice(0)}},Yr=Object.freeze([]),ut=class $n{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(e,n,r,s,a){this.scopeDepth=e,this.parentScopes=n||Yr,this.fontStyle=r,this.foreground=s,this.background=a}clone(){return new $n(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(e){let n=[];for(let r=0,s=e.length;r<s;r++)n[r]=e[r].clone();return n}acceptOverwrite(e,n,r,s){this.scopeDepth>e?console.log("how did this happen?"):this.scopeDepth=e,n!==-1&&(this.fontStyle=n),r!==0&&(this.foreground=r),s!==0&&(this.background=s)}},Jr=class ht{constructor(e,n=[],r={}){this._mainRule=e,this._children=r,this._rulesWithParentScopes=n}_rulesWithParentScopes;static _cmpBySpecificity(e,n){if(e.scopeDepth!==n.scopeDepth)return n.scopeDepth-e.scopeDepth;let r=0,s=0;for(;e.parentScopes[r]===">"&&r++,n.parentScopes[s]===">"&&s++,!(r>=e.parentScopes.length||s>=n.parentScopes.length);){const a=n.parentScopes[s].length-e.parentScopes[r].length;if(a!==0)return a;r++,s++}return n.parentScopes.length-e.parentScopes.length}match(e){if(e!==""){let r=e.indexOf("."),s,a;if(r===-1?(s=e,a=""):(s=e.substring(0,r),a=e.substring(r+1)),this._children.hasOwnProperty(s))return this._children[s].match(a)}const n=this._rulesWithParentScopes.concat(this._mainRule);return n.sort(ht._cmpBySpecificity),n}insert(e,n,r,s,a,o){if(n===""){this._doInsertHere(e,r,s,a,o);return}let i=n.indexOf("."),c,l;i===-1?(c=n,l=""):(c=n.substring(0,i),l=n.substring(i+1));let u;this._children.hasOwnProperty(c)?u=this._children[c]:(u=new ht(this._mainRule.clone(),ut.cloneArr(this._rulesWithParentScopes)),this._children[c]=u),u.insert(e+1,l,r,s,a,o)}_doInsertHere(e,n,r,s,a){if(n===null){this._mainRule.acceptOverwrite(e,r,s,a);return}for(let o=0,i=this._rulesWithParentScopes.length;o<i;o++){let c=this._rulesWithParentScopes[o];if(vn(c.parentScopes,n)===0){c.acceptOverwrite(e,r,s,a);return}}r===-1&&(r=this._mainRule.fontStyle),s===0&&(s=this._mainRule.foreground),a===0&&(a=this._mainRule.background),this._rulesWithParentScopes.push(new ut(e,n,r,s,a))}},ie=class M{static toBinaryStr(e){return e.toString(2).padStart(32,"0")}static print(e){const n=M.getLanguageId(e),r=M.getTokenType(e),s=M.getFontStyle(e),a=M.getForeground(e),o=M.getBackground(e);console.log({languageId:n,tokenType:r,fontStyle:s,foreground:a,background:o})}static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static set(e,n,r,s,a,o,i){let c=M.getLanguageId(e),l=M.getTokenType(e),u=M.containsBalancedBrackets(e)?1:0,h=M.getFontStyle(e),d=M.getForeground(e),p=M.getBackground(e);return n!==0&&(c=n),r!==8&&(l=r),s!==null&&(u=s?1:0),a!==-1&&(h=a),o!==0&&(d=o),i!==0&&(p=i),(c<<0|l<<8|u<<10|h<<11|d<<15|p<<24)>>>0}};function Pe(t,e){const n=[],r=es(t);let s=r.next();for(;s!==null;){let c=0;if(s.length===2&&s.charAt(1)===":"){switch(s.charAt(0)){case"R":c=1;break;case"L":c=-1;break;default:console.log(`Unknown priority ${s} in scope selector`)}s=r.next()}let l=o();if(n.push({matcher:l,priority:c}),s!==",")break;s=r.next()}return n;function a(){if(s==="-"){s=r.next();const c=a();return l=>!!c&&!c(l)}if(s==="("){s=r.next();const c=i();return s===")"&&(s=r.next()),c}if(Ut(s)){const c=[];do c.push(s),s=r.next();while(Ut(s));return l=>e(c,l)}return null}function o(){const c=[];let l=a();for(;l;)c.push(l),l=a();return u=>c.every(h=>h(u))}function i(){const c=[];let l=o();for(;l&&(c.push(l),s==="|"||s===",");){do s=r.next();while(s==="|"||s===",");l=o()}return u=>c.some(h=>h(u))}}function Ut(t){return!!t&&!!t.match(/[\w\.:]+/)}function es(t){let e=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,n=e.exec(t);return{next:()=>{if(!n)return null;const r=n[0];return n=e.exec(t),r}}}function Rn(t){typeof t.dispose=="function"&&t.dispose()}var de=class{constructor(t){this.scopeName=t}toKey(){return this.scopeName}},ts=class{constructor(t,e){this.scopeName=t,this.ruleName=e}toKey(){return`${this.scopeName}#${this.ruleName}`}},ns=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(t){const e=t.toKey();this._seenReferenceKeys.has(e)||(this._seenReferenceKeys.add(e),this._references.push(t))}},rs=class{constructor(t,e){this.repo=t,this.initialScopeName=e,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new de(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){const t=this.Q;this.Q=[];const e=new ns;for(const n of t)ss(n,this.initialScopeName,this.repo,e);for(const n of e.references)if(n instanceof de){if(this.seenFullScopeRequests.has(n.scopeName))continue;this.seenFullScopeRequests.add(n.scopeName),this.Q.push(n)}else{if(this.seenFullScopeRequests.has(n.scopeName)||this.seenPartialScopeRequests.has(n.toKey()))continue;this.seenPartialScopeRequests.add(n.toKey()),this.Q.push(n)}}};function ss(t,e,n,r){const s=n.lookup(t.scopeName);if(!s){if(t.scopeName===e)throw new Error(`No grammar provided for <${e}>`);return}const a=n.lookup(e);t instanceof de?Ie({baseGrammar:a,selfGrammar:s},r):pt(t.ruleName,{baseGrammar:a,selfGrammar:s,repository:s.repository},r);const o=n.injections(t.scopeName);if(o)for(const i of o)r.add(new de(i))}function pt(t,e,n){if(e.repository&&e.repository[t]){const r=e.repository[t];Te([r],e,n)}}function Ie(t,e){t.selfGrammar.patterns&&Array.isArray(t.selfGrammar.patterns)&&Te(t.selfGrammar.patterns,{...t,repository:t.selfGrammar.repository},e),t.selfGrammar.injections&&Te(Object.values(t.selfGrammar.injections),{...t,repository:t.selfGrammar.repository},e)}function Te(t,e,n){for(const r of t){if(n.visitedRule.has(r))continue;n.visitedRule.add(r);const s=r.repository?Sn({},e.repository,r.repository):e.repository;Array.isArray(r.patterns)&&Te(r.patterns,{...e,repository:s},n);const a=r.include;if(!a)continue;const o=Pn(a);switch(o.kind){case 0:Ie({...e,selfGrammar:e.baseGrammar},n);break;case 1:Ie(e,n);break;case 2:pt(o.ruleName,{...e,repository:s},n);break;case 3:case 4:const i=o.scopeName===e.selfGrammar.scopeName?e.selfGrammar:o.scopeName===e.baseGrammar.scopeName?e.baseGrammar:void 0;if(i){const c={baseGrammar:e.baseGrammar,selfGrammar:i,repository:s};o.kind===4?pt(o.ruleName,c,n):Ie(c,n)}else o.kind===4?n.add(new ts(o.scopeName,o.ruleName)):n.add(new de(o.scopeName));break}}}var as=class{kind=0},os=class{kind=1},is=class{constructor(t){this.ruleName=t}kind=2},cs=class{constructor(t){this.scopeName=t}kind=3},ls=class{constructor(t,e){this.scopeName=t,this.ruleName=e}kind=4};function Pn(t){if(t==="$base")return new as;if(t==="$self")return new os;const e=t.indexOf("#");if(e===-1)return new cs(t);if(e===0)return new is(t.substring(1));{const n=t.substring(0,e),r=t.substring(e+1);return new ls(n,r)}}var us=/\\(\d+)/,qt=/\\(\d+)/g,hs=-1,Tn=-2,ke=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(t,e,n,r){this.$location=t,this.id=e,this._name=n||null,this._nameIsCapturing=we.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=we.hasCaptures(this._contentName)}get debugName(){const t=this.$location?`${An(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${t}`}getName(t,e){return!this._nameIsCapturing||this._name===null||t===null||e===null?this._name:we.replaceCaptures(this._name,t,e)}getContentName(t,e){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:we.replaceCaptures(this._contentName,t,e)}},ps=class extends ke{retokenizeCapturedWithRuleId;constructor(t,e,n,r,s){super(t,e,n,r),this.retokenizeCapturedWithRuleId=s}dispose(){}collectPatterns(t,e){throw new Error("Not supported!")}compile(t,e){throw new Error("Not supported!")}compileAG(t,e,n,r){throw new Error("Not supported!")}},ds=class extends ke{_match;captures;_cachedCompiledPatterns;constructor(t,e,n,r,s){super(t,e,n,null),this._match=new ge(r,this.id),this.captures=s,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(t,e){e.push(this._match)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t).compileAG(t,n,r)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new fe,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Ht=class extends ke{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(t,e,n,r,s){super(t,e,n,r),this.patterns=s.patterns,this.hasMissingPatterns=s.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(t,e){for(const n of this.patterns)t.getRule(n).collectPatterns(t,e)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t).compileAG(t,n,r)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new fe,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},dt=class extends ke{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(t,e,n,r,s,a,o,i,c,l){super(t,e,n,r),this._begin=new ge(s,this.id),this.beginCaptures=a,this._end=new ge(o||"",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=c||!1,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(t,e){return this._end.resolveBackReferences(t,e)}collectPatterns(t,e){e.push(this._begin)}compile(t,e){return this._getCachedCompiledPatterns(t,e).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t,e).compileAG(t,n,r)}_getCachedCompiledPatterns(t,e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new fe;for(const n of this.patterns)t.getRule(n).collectPatterns(t,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,e):this._cachedCompiledPatterns.setSource(0,e)),this._cachedCompiledPatterns}},Le=class extends ke{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(t,e,n,r,s,a,o,i,c){super(t,e,n,r),this._begin=new ge(s,this.id),this.beginCaptures=a,this.whileCaptures=i,this._while=new ge(o,Tn),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=c.patterns,this.hasMissingPatterns=c.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(t,e){return this._while.resolveBackReferences(t,e)}collectPatterns(t,e){e.push(this._begin)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t).compileAG(t,n,r)}_getCachedCompiledPatterns(t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new fe;for(const e of this.patterns)t.getRule(e).collectPatterns(t,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(t,e){return this._getCachedCompiledWhilePatterns(t,e).compile(t)}compileWhileAG(t,e,n,r){return this._getCachedCompiledWhilePatterns(t,e).compileAG(t,n,r)}_getCachedCompiledWhilePatterns(t,e){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new fe,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,e||""),this._cachedCompiledWhilePatterns}},Ln=class R{static createCaptureRule(e,n,r,s,a){return e.registerRule(o=>new ps(n,o,r,s,a))}static getCompiledRuleId(e,n,r){return e.id||n.registerRule(s=>{if(e.id=s,e.match)return new ds(e.$vscodeTextmateLocation,e.id,e.name,e.match,R._compileCaptures(e.captures,n,r));if(typeof e.begin>"u"){e.repository&&(r=Sn({},r,e.repository));let a=e.patterns;return typeof a>"u"&&e.include&&(a=[{include:e.include}]),new Ht(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,R._compilePatterns(a,n,r))}return e.while?new Le(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,R._compileCaptures(e.beginCaptures||e.captures,n,r),e.while,R._compileCaptures(e.whileCaptures||e.captures,n,r),R._compilePatterns(e.patterns,n,r)):new dt(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,R._compileCaptures(e.beginCaptures||e.captures,n,r),e.end,R._compileCaptures(e.endCaptures||e.captures,n,r),e.applyEndPatternLast,R._compilePatterns(e.patterns,n,r))}),e.id}static _compileCaptures(e,n,r){let s=[];if(e){let a=0;for(const o in e){if(o==="$vscodeTextmateLocation")continue;const i=parseInt(o,10);i>a&&(a=i)}for(let o=0;o<=a;o++)s[o]=null;for(const o in e){if(o==="$vscodeTextmateLocation")continue;const i=parseInt(o,10);let c=0;e[o].patterns&&(c=R.getCompiledRuleId(e[o],n,r)),s[i]=R.createCaptureRule(n,e[o].$vscodeTextmateLocation,e[o].name,e[o].contentName,c)}}return s}static _compilePatterns(e,n,r){let s=[];if(e)for(let a=0,o=e.length;a<o;a++){const i=e[a];let c=-1;if(i.include){const l=Pn(i.include);switch(l.kind){case 0:case 1:c=R.getCompiledRuleId(r[i.include],n,r);break;case 2:let u=r[l.ruleName];u&&(c=R.getCompiledRuleId(u,n,r));break;case 3:case 4:const h=l.scopeName,d=l.kind===4?l.ruleName:null,p=n.getExternalGrammar(h,r);if(p)if(d){let g=p.repository[d];g&&(c=R.getCompiledRuleId(g,n,p.repository))}else c=R.getCompiledRuleId(p.repository.$self,n,p.repository);break}}else c=R.getCompiledRuleId(i,n,r);if(c!==-1){const l=n.getRule(c);let u=!1;if((l instanceof Ht||l instanceof dt||l instanceof Le)&&l.hasMissingPatterns&&l.patterns.length===0&&(u=!0),u)continue;s.push(c)}}return{patterns:s,hasMissingPatterns:(e?e.length:0)!==s.length}}},ge=class Gn{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(e,n){if(e&&typeof e=="string"){const r=e.length;let s=0,a=[],o=!1;for(let i=0;i<r;i++)if(e.charAt(i)==="\\"&&i+1<r){const c=e.charAt(i+1);c==="z"?(a.push(e.substring(s,i)),a.push("$(?!\\n)(?<!\\n)"),s=i+2):(c==="A"||c==="G")&&(o=!0),i++}this.hasAnchor=o,s===0?this.source=e:(a.push(e.substring(s,r)),this.source=a.join(""))}else this.hasAnchor=!1,this.source=e;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=n,typeof this.source=="string"?this.hasBackReferences=us.test(this.source):this.hasBackReferences=!1}clone(){return new Gn(this.source,this.ruleId)}setSource(e){this.source!==e&&(this.source=e,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(e,n){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let r=n.map(s=>e.substring(s.start,s.end));return qt.lastIndex=0,this.source.replace(qt,(s,a)=>En(r[parseInt(a,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let e=[],n=[],r=[],s=[],a,o,i,c;for(a=0,o=this.source.length;a<o;a++)i=this.source.charAt(a),e[a]=i,n[a]=i,r[a]=i,s[a]=i,i==="\\"&&a+1<o&&(c=this.source.charAt(a+1),c==="A"?(e[a+1]="",n[a+1]="",r[a+1]="A",s[a+1]="A"):c==="G"?(e[a+1]="",n[a+1]="G",r[a+1]="",s[a+1]="G"):(e[a+1]=c,n[a+1]=c,r[a+1]=c,s[a+1]=c),a++);return{A0_G0:e.join(""),A0_G1:n.join(""),A1_G0:r.join(""),A1_G1:s.join("")}}resolveAnchors(e,n){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:e?n?this._anchorCache.A1_G1:this._anchorCache.A1_G0:n?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},fe=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(t){this._items.push(t),this._hasAnchors=this._hasAnchors||t.hasAnchor}unshift(t){this._items.unshift(t),this._hasAnchors=this._hasAnchors||t.hasAnchor}length(){return this._items.length}setSource(t,e){this._items[t].source!==e&&(this._disposeCaches(),this._items[t].setSource(e))}compile(t){if(!this._cached){let e=this._items.map(n=>n.source);this._cached=new zt(t,e,this._items.map(n=>n.ruleId))}return this._cached}compileAG(t,e,n){return this._hasAnchors?e?n?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(t,e,n)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(t,e,n)),this._anchorCache.A1_G0):n?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(t,e,n)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(t,e,n)),this._anchorCache.A0_G0):this.compile(t)}_resolveAnchors(t,e,n){let r=this._items.map(s=>s.resolveAnchors(e,n));return new zt(t,r,this._items.map(s=>s.ruleId))}},zt=class{constructor(t,e,n){this.regExps=e,this.rules=n,this.scanner=t.createOnigScanner(e)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){const t=[];for(let e=0,n=this.rules.length;e<n;e++)t.push(" - "+this.rules[e]+": "+this.regExps[e]);return t.join(`
|
|
1
|
+
import{createOnigurumaEngine as At,getDefaultWasmLoader as Gr,loadWasm as Mr}from"./engine-oniguruma-C4vnmooL.es-jdkXmgTr.js";import{a7 as Cn,a8 as Br,a9 as Or,aa as Fr,ab as jr,ac as Dr,ad as Wr,ae as Dt,af as xt}from"./index-Dv5bF4Ii.js";let V=class extends Error{constructor(t){super(t),this.name="ShikiError"}},Ee=!1,wn=!1;function Zi(t=!0,e=!1){Ee=t,wn=e}function F(t,e=3){if(Ee&&!(typeof Ee=="number"&&e>Ee)){if(wn)throw new Error(`[SHIKI DEPRECATE]: ${t}`);console.trace(`[SHIKI DEPRECATE]: ${t}`)}}function Ur(t){return vt(t)}function vt(t){return Array.isArray(t)?qr(t):t instanceof RegExp?t:typeof t=="object"?Hr(t):t}function qr(t){let e=[];for(let n=0,r=t.length;n<r;n++)e[n]=vt(t[n]);return e}function Hr(t){let e={};for(let n in t)e[n]=vt(t[n]);return e}function Sn(t,...e){return e.forEach(n=>{for(let r in n)t[r]=n[r]}),t}function An(t){const e=~t.lastIndexOf("/")||~t.lastIndexOf("\\");return e===0?t:~e===t.length-1?An(t.substring(0,t.length-1)):t.substr(~e+1)}var Ke=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,we=class{static hasCaptures(t){return t===null?!1:(Ke.lastIndex=0,Ke.test(t))}static replaceCaptures(t,e,n){return t.replace(Ke,(r,s,a,o)=>{let i=n[parseInt(s||a,10)];if(i){let c=e.substring(i.start,i.end);for(;c[0]===".";)c=c.substring(1);switch(o){case"downcase":return c.toLowerCase();case"upcase":return c.toUpperCase();default:return c}}else return r})}};function xn(t,e){return t<e?-1:t>e?1:0}function vn(t,e){if(t===null&&e===null)return 0;if(!t)return-1;if(!e)return 1;let n=t.length,r=e.length;if(n===r){for(let s=0;s<n;s++){let a=xn(t[s],e[s]);if(a!==0)return a}return 0}return n-r}function Wt(t){return!!(/^#[0-9a-f]{6}$/i.test(t)||/^#[0-9a-f]{8}$/i.test(t)||/^#[0-9a-f]{3}$/i.test(t)||/^#[0-9a-f]{4}$/i.test(t))}function En(t){return t.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var Nn=class{constructor(t){this.fn=t}cache=new Map;get(t){if(this.cache.has(t))return this.cache.get(t);const e=this.fn(t);return this.cache.set(t,e),e}},Re=class{constructor(t,e,n){this._colorMap=t,this._defaults=e,this._root=n}static createFromRawTheme(t,e){return this.createFromParsedTheme(Qr(t),e)}static createFromParsedTheme(t,e){return Zr(t,e)}_cachedMatchRoot=new Nn(t=>this._root.match(t));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(t){if(t===null)return this._defaults;const e=t.scopeName,n=this._cachedMatchRoot.get(e).find(r=>zr(t.parent,r.parentScopes));return n?new In(n.fontStyle,n.foreground,n.background):null}},Ye=class Ne{constructor(e,n){this.parent=e,this.scopeName=n}static push(e,n){for(const r of n)e=new Ne(e,r);return e}static from(...e){let n=null;for(let r=0;r<e.length;r++)n=new Ne(n,e[r]);return n}push(e){return new Ne(this,e)}getSegments(){let e=this;const n=[];for(;e;)n.push(e.scopeName),e=e.parent;return n.reverse(),n}toString(){return this.getSegments().join(" ")}extends(e){return this===e?!0:this.parent===null?!1:this.parent.extends(e)}getExtensionIfDefined(e){const n=[];let r=this;for(;r&&r!==e;)n.push(r.scopeName),r=r.parent;return r===e?n.reverse():void 0}};function zr(t,e){if(e.length===0)return!0;for(let n=0;n<e.length;n++){let r=e[n],s=!1;if(r===">"){if(n===e.length-1)return!1;r=e[++n],s=!0}for(;t&&!Vr(t.scopeName,r);){if(s)return!1;t=t.parent}if(!t)return!1;t=t.parent}return!0}function Vr(t,e){return e===t||t.startsWith(e)&&t[e.length]==="."}var In=class{constructor(t,e,n){this.fontStyle=t,this.foregroundId=e,this.backgroundId=n}};function Qr(t){if(!t)return[];if(!t.settings||!Array.isArray(t.settings))return[];let e=t.settings,n=[],r=0;for(let s=0,a=e.length;s<a;s++){let o=e[s];if(!o.settings)continue;let i;if(typeof o.scope=="string"){let h=o.scope;h=h.replace(/^[,]+/,""),h=h.replace(/[,]+$/,""),i=h.split(",")}else Array.isArray(o.scope)?i=o.scope:i=[""];let c=-1;if(typeof o.settings.fontStyle=="string"){c=0;let h=o.settings.fontStyle.split(" ");for(let d=0,p=h.length;d<p;d++)switch(h[d]){case"italic":c=c|1;break;case"bold":c=c|2;break;case"underline":c=c|4;break;case"strikethrough":c=c|8;break}}let l=null;typeof o.settings.foreground=="string"&&Wt(o.settings.foreground)&&(l=o.settings.foreground);let u=null;typeof o.settings.background=="string"&&Wt(o.settings.background)&&(u=o.settings.background);for(let h=0,d=i.length;h<d;h++){let p=i[h].trim().split(" "),g=p[p.length-1],k=null;p.length>1&&(k=p.slice(0,p.length-1),k.reverse()),n[r++]=new Xr(g,k,s,c,l,u)}}return n}var Xr=class{constructor(t,e,n,r,s,a){this.scope=t,this.parentScopes=e,this.index=n,this.fontStyle=r,this.foreground=s,this.background=a}},z=(t=>(t[t.NotSet=-1]="NotSet",t[t.None=0]="None",t[t.Italic=1]="Italic",t[t.Bold=2]="Bold",t[t.Underline=4]="Underline",t[t.Strikethrough=8]="Strikethrough",t))(z||{});function Zr(t,e){t.sort((c,l)=>{let u=xn(c.scope,l.scope);return u!==0||(u=vn(c.parentScopes,l.parentScopes),u!==0)?u:c.index-l.index});let n=0,r="#000000",s="#ffffff";for(;t.length>=1&&t[0].scope==="";){let c=t.shift();c.fontStyle!==-1&&(n=c.fontStyle),c.foreground!==null&&(r=c.foreground),c.background!==null&&(s=c.background)}let a=new Kr(e),o=new In(n,a.getId(r),a.getId(s)),i=new Jr(new ut(0,null,-1,0,0),[]);for(let c=0,l=t.length;c<l;c++){let u=t[c];i.insert(0,u.scope,u.parentScopes,u.fontStyle,a.getId(u.foreground),a.getId(u.background))}return new Re(a,o,i)}var Kr=class{_isFrozen;_lastColorId;_id2color;_color2id;constructor(t){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(t)){this._isFrozen=!0;for(let e=0,n=t.length;e<n;e++)this._color2id[t[e]]=e,this._id2color[e]=t[e]}else this._isFrozen=!1}getId(t){if(t===null)return 0;t=t.toUpperCase();let e=this._color2id[t];if(e)return e;if(this._isFrozen)throw new Error(`Missing color in color map - ${t}`);return e=++this._lastColorId,this._color2id[t]=e,this._id2color[e]=t,e}getColorMap(){return this._id2color.slice(0)}},Yr=Object.freeze([]),ut=class $n{scopeDepth;parentScopes;fontStyle;foreground;background;constructor(e,n,r,s,a){this.scopeDepth=e,this.parentScopes=n||Yr,this.fontStyle=r,this.foreground=s,this.background=a}clone(){return new $n(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(e){let n=[];for(let r=0,s=e.length;r<s;r++)n[r]=e[r].clone();return n}acceptOverwrite(e,n,r,s){this.scopeDepth>e?console.log("how did this happen?"):this.scopeDepth=e,n!==-1&&(this.fontStyle=n),r!==0&&(this.foreground=r),s!==0&&(this.background=s)}},Jr=class ht{constructor(e,n=[],r={}){this._mainRule=e,this._children=r,this._rulesWithParentScopes=n}_rulesWithParentScopes;static _cmpBySpecificity(e,n){if(e.scopeDepth!==n.scopeDepth)return n.scopeDepth-e.scopeDepth;let r=0,s=0;for(;e.parentScopes[r]===">"&&r++,n.parentScopes[s]===">"&&s++,!(r>=e.parentScopes.length||s>=n.parentScopes.length);){const a=n.parentScopes[s].length-e.parentScopes[r].length;if(a!==0)return a;r++,s++}return n.parentScopes.length-e.parentScopes.length}match(e){if(e!==""){let r=e.indexOf("."),s,a;if(r===-1?(s=e,a=""):(s=e.substring(0,r),a=e.substring(r+1)),this._children.hasOwnProperty(s))return this._children[s].match(a)}const n=this._rulesWithParentScopes.concat(this._mainRule);return n.sort(ht._cmpBySpecificity),n}insert(e,n,r,s,a,o){if(n===""){this._doInsertHere(e,r,s,a,o);return}let i=n.indexOf("."),c,l;i===-1?(c=n,l=""):(c=n.substring(0,i),l=n.substring(i+1));let u;this._children.hasOwnProperty(c)?u=this._children[c]:(u=new ht(this._mainRule.clone(),ut.cloneArr(this._rulesWithParentScopes)),this._children[c]=u),u.insert(e+1,l,r,s,a,o)}_doInsertHere(e,n,r,s,a){if(n===null){this._mainRule.acceptOverwrite(e,r,s,a);return}for(let o=0,i=this._rulesWithParentScopes.length;o<i;o++){let c=this._rulesWithParentScopes[o];if(vn(c.parentScopes,n)===0){c.acceptOverwrite(e,r,s,a);return}}r===-1&&(r=this._mainRule.fontStyle),s===0&&(s=this._mainRule.foreground),a===0&&(a=this._mainRule.background),this._rulesWithParentScopes.push(new ut(e,n,r,s,a))}},ie=class M{static toBinaryStr(e){return e.toString(2).padStart(32,"0")}static print(e){const n=M.getLanguageId(e),r=M.getTokenType(e),s=M.getFontStyle(e),a=M.getForeground(e),o=M.getBackground(e);console.log({languageId:n,tokenType:r,fontStyle:s,foreground:a,background:o})}static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static set(e,n,r,s,a,o,i){let c=M.getLanguageId(e),l=M.getTokenType(e),u=M.containsBalancedBrackets(e)?1:0,h=M.getFontStyle(e),d=M.getForeground(e),p=M.getBackground(e);return n!==0&&(c=n),r!==8&&(l=r),s!==null&&(u=s?1:0),a!==-1&&(h=a),o!==0&&(d=o),i!==0&&(p=i),(c<<0|l<<8|u<<10|h<<11|d<<15|p<<24)>>>0}};function Pe(t,e){const n=[],r=es(t);let s=r.next();for(;s!==null;){let c=0;if(s.length===2&&s.charAt(1)===":"){switch(s.charAt(0)){case"R":c=1;break;case"L":c=-1;break;default:console.log(`Unknown priority ${s} in scope selector`)}s=r.next()}let l=o();if(n.push({matcher:l,priority:c}),s!==",")break;s=r.next()}return n;function a(){if(s==="-"){s=r.next();const c=a();return l=>!!c&&!c(l)}if(s==="("){s=r.next();const c=i();return s===")"&&(s=r.next()),c}if(Ut(s)){const c=[];do c.push(s),s=r.next();while(Ut(s));return l=>e(c,l)}return null}function o(){const c=[];let l=a();for(;l;)c.push(l),l=a();return u=>c.every(h=>h(u))}function i(){const c=[];let l=o();for(;l&&(c.push(l),s==="|"||s===",");){do s=r.next();while(s==="|"||s===",");l=o()}return u=>c.some(h=>h(u))}}function Ut(t){return!!t&&!!t.match(/[\w\.:]+/)}function es(t){let e=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,n=e.exec(t);return{next:()=>{if(!n)return null;const r=n[0];return n=e.exec(t),r}}}function Rn(t){typeof t.dispose=="function"&&t.dispose()}var de=class{constructor(t){this.scopeName=t}toKey(){return this.scopeName}},ts=class{constructor(t,e){this.scopeName=t,this.ruleName=e}toKey(){return`${this.scopeName}#${this.ruleName}`}},ns=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(t){const e=t.toKey();this._seenReferenceKeys.has(e)||(this._seenReferenceKeys.add(e),this._references.push(t))}},rs=class{constructor(t,e){this.repo=t,this.initialScopeName=e,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new de(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){const t=this.Q;this.Q=[];const e=new ns;for(const n of t)ss(n,this.initialScopeName,this.repo,e);for(const n of e.references)if(n instanceof de){if(this.seenFullScopeRequests.has(n.scopeName))continue;this.seenFullScopeRequests.add(n.scopeName),this.Q.push(n)}else{if(this.seenFullScopeRequests.has(n.scopeName)||this.seenPartialScopeRequests.has(n.toKey()))continue;this.seenPartialScopeRequests.add(n.toKey()),this.Q.push(n)}}};function ss(t,e,n,r){const s=n.lookup(t.scopeName);if(!s){if(t.scopeName===e)throw new Error(`No grammar provided for <${e}>`);return}const a=n.lookup(e);t instanceof de?Ie({baseGrammar:a,selfGrammar:s},r):pt(t.ruleName,{baseGrammar:a,selfGrammar:s,repository:s.repository},r);const o=n.injections(t.scopeName);if(o)for(const i of o)r.add(new de(i))}function pt(t,e,n){if(e.repository&&e.repository[t]){const r=e.repository[t];Te([r],e,n)}}function Ie(t,e){t.selfGrammar.patterns&&Array.isArray(t.selfGrammar.patterns)&&Te(t.selfGrammar.patterns,{...t,repository:t.selfGrammar.repository},e),t.selfGrammar.injections&&Te(Object.values(t.selfGrammar.injections),{...t,repository:t.selfGrammar.repository},e)}function Te(t,e,n){for(const r of t){if(n.visitedRule.has(r))continue;n.visitedRule.add(r);const s=r.repository?Sn({},e.repository,r.repository):e.repository;Array.isArray(r.patterns)&&Te(r.patterns,{...e,repository:s},n);const a=r.include;if(!a)continue;const o=Pn(a);switch(o.kind){case 0:Ie({...e,selfGrammar:e.baseGrammar},n);break;case 1:Ie(e,n);break;case 2:pt(o.ruleName,{...e,repository:s},n);break;case 3:case 4:const i=o.scopeName===e.selfGrammar.scopeName?e.selfGrammar:o.scopeName===e.baseGrammar.scopeName?e.baseGrammar:void 0;if(i){const c={baseGrammar:e.baseGrammar,selfGrammar:i,repository:s};o.kind===4?pt(o.ruleName,c,n):Ie(c,n)}else o.kind===4?n.add(new ts(o.scopeName,o.ruleName)):n.add(new de(o.scopeName));break}}}var as=class{kind=0},os=class{kind=1},is=class{constructor(t){this.ruleName=t}kind=2},cs=class{constructor(t){this.scopeName=t}kind=3},ls=class{constructor(t,e){this.scopeName=t,this.ruleName=e}kind=4};function Pn(t){if(t==="$base")return new as;if(t==="$self")return new os;const e=t.indexOf("#");if(e===-1)return new cs(t);if(e===0)return new is(t.substring(1));{const n=t.substring(0,e),r=t.substring(e+1);return new ls(n,r)}}var us=/\\(\d+)/,qt=/\\(\d+)/g,hs=-1,Tn=-2,ke=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(t,e,n,r){this.$location=t,this.id=e,this._name=n||null,this._nameIsCapturing=we.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=we.hasCaptures(this._contentName)}get debugName(){const t=this.$location?`${An(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${t}`}getName(t,e){return!this._nameIsCapturing||this._name===null||t===null||e===null?this._name:we.replaceCaptures(this._name,t,e)}getContentName(t,e){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:we.replaceCaptures(this._contentName,t,e)}},ps=class extends ke{retokenizeCapturedWithRuleId;constructor(t,e,n,r,s){super(t,e,n,r),this.retokenizeCapturedWithRuleId=s}dispose(){}collectPatterns(t,e){throw new Error("Not supported!")}compile(t,e){throw new Error("Not supported!")}compileAG(t,e,n,r){throw new Error("Not supported!")}},ds=class extends ke{_match;captures;_cachedCompiledPatterns;constructor(t,e,n,r,s){super(t,e,n,null),this._match=new ge(r,this.id),this.captures=s,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(t,e){e.push(this._match)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t).compileAG(t,n,r)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new fe,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Ht=class extends ke{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(t,e,n,r,s){super(t,e,n,r),this.patterns=s.patterns,this.hasMissingPatterns=s.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(t,e){for(const n of this.patterns)t.getRule(n).collectPatterns(t,e)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t).compileAG(t,n,r)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new fe,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},dt=class extends ke{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(t,e,n,r,s,a,o,i,c,l){super(t,e,n,r),this._begin=new ge(s,this.id),this.beginCaptures=a,this._end=new ge(o||"",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=i,this.applyEndPatternLast=c||!1,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(t,e){return this._end.resolveBackReferences(t,e)}collectPatterns(t,e){e.push(this._begin)}compile(t,e){return this._getCachedCompiledPatterns(t,e).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t,e).compileAG(t,n,r)}_getCachedCompiledPatterns(t,e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new fe;for(const n of this.patterns)t.getRule(n).collectPatterns(t,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,e):this._cachedCompiledPatterns.setSource(0,e)),this._cachedCompiledPatterns}},Le=class extends ke{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(t,e,n,r,s,a,o,i,c){super(t,e,n,r),this._begin=new ge(s,this.id),this.beginCaptures=a,this.whileCaptures=i,this._while=new ge(o,Tn),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=c.patterns,this.hasMissingPatterns=c.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(t,e){return this._while.resolveBackReferences(t,e)}collectPatterns(t,e){e.push(this._begin)}compile(t,e){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,e,n,r){return this._getCachedCompiledPatterns(t).compileAG(t,n,r)}_getCachedCompiledPatterns(t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new fe;for(const e of this.patterns)t.getRule(e).collectPatterns(t,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(t,e){return this._getCachedCompiledWhilePatterns(t,e).compile(t)}compileWhileAG(t,e,n,r){return this._getCachedCompiledWhilePatterns(t,e).compileAG(t,n,r)}_getCachedCompiledWhilePatterns(t,e){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new fe,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,e||""),this._cachedCompiledWhilePatterns}},Ln=class R{static createCaptureRule(e,n,r,s,a){return e.registerRule(o=>new ps(n,o,r,s,a))}static getCompiledRuleId(e,n,r){return e.id||n.registerRule(s=>{if(e.id=s,e.match)return new ds(e.$vscodeTextmateLocation,e.id,e.name,e.match,R._compileCaptures(e.captures,n,r));if(typeof e.begin>"u"){e.repository&&(r=Sn({},r,e.repository));let a=e.patterns;return typeof a>"u"&&e.include&&(a=[{include:e.include}]),new Ht(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,R._compilePatterns(a,n,r))}return e.while?new Le(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,R._compileCaptures(e.beginCaptures||e.captures,n,r),e.while,R._compileCaptures(e.whileCaptures||e.captures,n,r),R._compilePatterns(e.patterns,n,r)):new dt(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,R._compileCaptures(e.beginCaptures||e.captures,n,r),e.end,R._compileCaptures(e.endCaptures||e.captures,n,r),e.applyEndPatternLast,R._compilePatterns(e.patterns,n,r))}),e.id}static _compileCaptures(e,n,r){let s=[];if(e){let a=0;for(const o in e){if(o==="$vscodeTextmateLocation")continue;const i=parseInt(o,10);i>a&&(a=i)}for(let o=0;o<=a;o++)s[o]=null;for(const o in e){if(o==="$vscodeTextmateLocation")continue;const i=parseInt(o,10);let c=0;e[o].patterns&&(c=R.getCompiledRuleId(e[o],n,r)),s[i]=R.createCaptureRule(n,e[o].$vscodeTextmateLocation,e[o].name,e[o].contentName,c)}}return s}static _compilePatterns(e,n,r){let s=[];if(e)for(let a=0,o=e.length;a<o;a++){const i=e[a];let c=-1;if(i.include){const l=Pn(i.include);switch(l.kind){case 0:case 1:c=R.getCompiledRuleId(r[i.include],n,r);break;case 2:let u=r[l.ruleName];u&&(c=R.getCompiledRuleId(u,n,r));break;case 3:case 4:const h=l.scopeName,d=l.kind===4?l.ruleName:null,p=n.getExternalGrammar(h,r);if(p)if(d){let g=p.repository[d];g&&(c=R.getCompiledRuleId(g,n,p.repository))}else c=R.getCompiledRuleId(p.repository.$self,n,p.repository);break}}else c=R.getCompiledRuleId(i,n,r);if(c!==-1){const l=n.getRule(c);let u=!1;if((l instanceof Ht||l instanceof dt||l instanceof Le)&&l.hasMissingPatterns&&l.patterns.length===0&&(u=!0),u)continue;s.push(c)}}return{patterns:s,hasMissingPatterns:(e?e.length:0)!==s.length}}},ge=class Gn{source;ruleId;hasAnchor;hasBackReferences;_anchorCache;constructor(e,n){if(e&&typeof e=="string"){const r=e.length;let s=0,a=[],o=!1;for(let i=0;i<r;i++)if(e.charAt(i)==="\\"&&i+1<r){const c=e.charAt(i+1);c==="z"?(a.push(e.substring(s,i)),a.push("$(?!\\n)(?<!\\n)"),s=i+2):(c==="A"||c==="G")&&(o=!0),i++}this.hasAnchor=o,s===0?this.source=e:(a.push(e.substring(s,r)),this.source=a.join(""))}else this.hasAnchor=!1,this.source=e;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=n,typeof this.source=="string"?this.hasBackReferences=us.test(this.source):this.hasBackReferences=!1}clone(){return new Gn(this.source,this.ruleId)}setSource(e){this.source!==e&&(this.source=e,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(e,n){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let r=n.map(s=>e.substring(s.start,s.end));return qt.lastIndex=0,this.source.replace(qt,(s,a)=>En(r[parseInt(a,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let e=[],n=[],r=[],s=[],a,o,i,c;for(a=0,o=this.source.length;a<o;a++)i=this.source.charAt(a),e[a]=i,n[a]=i,r[a]=i,s[a]=i,i==="\\"&&a+1<o&&(c=this.source.charAt(a+1),c==="A"?(e[a+1]="",n[a+1]="",r[a+1]="A",s[a+1]="A"):c==="G"?(e[a+1]="",n[a+1]="G",r[a+1]="",s[a+1]="G"):(e[a+1]=c,n[a+1]=c,r[a+1]=c,s[a+1]=c),a++);return{A0_G0:e.join(""),A0_G1:n.join(""),A1_G0:r.join(""),A1_G1:s.join("")}}resolveAnchors(e,n){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:e?n?this._anchorCache.A1_G1:this._anchorCache.A1_G0:n?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},fe=class{_items;_hasAnchors;_cached;_anchorCache;constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(t){this._items.push(t),this._hasAnchors=this._hasAnchors||t.hasAnchor}unshift(t){this._items.unshift(t),this._hasAnchors=this._hasAnchors||t.hasAnchor}length(){return this._items.length}setSource(t,e){this._items[t].source!==e&&(this._disposeCaches(),this._items[t].setSource(e))}compile(t){if(!this._cached){let e=this._items.map(n=>n.source);this._cached=new zt(t,e,this._items.map(n=>n.ruleId))}return this._cached}compileAG(t,e,n){return this._hasAnchors?e?n?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(t,e,n)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(t,e,n)),this._anchorCache.A1_G0):n?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(t,e,n)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(t,e,n)),this._anchorCache.A0_G0):this.compile(t)}_resolveAnchors(t,e,n){let r=this._items.map(s=>s.resolveAnchors(e,n));return new zt(t,r,this._items.map(s=>s.ruleId))}},zt=class{constructor(t,e,n){this.regExps=e,this.rules=n,this.scanner=t.createOnigScanner(e)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){const t=[];for(let e=0,n=this.rules.length;e<n;e++)t.push(" - "+this.rules[e]+": "+this.regExps[e]);return t.join(`
|
|
2
2
|
`)}findNextMatchSync(t,e,n){const r=this.scanner.findNextMatchSync(t,e,n);return r?{ruleId:this.rules[r.index],captureIndices:r.captureIndices}:null}},Je=class{constructor(t,e){this.languageId=t,this.tokenType=e}},gs=class gt{_defaultAttributes;_embeddedLanguagesMatcher;constructor(e,n){this._defaultAttributes=new Je(e,8),this._embeddedLanguagesMatcher=new fs(Object.entries(n||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(e){return e===null?gt._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(e)}static _NULL_SCOPE_METADATA=new Je(0,0);_getBasicScopeAttributes=new Nn(e=>{const n=this._scopeToLanguage(e),r=this._toStandardTokenType(e);return new Je(n,r)});_scopeToLanguage(e){return this._embeddedLanguagesMatcher.match(e)||0}_toStandardTokenType(e){const n=e.match(gt.STANDARD_TOKEN_TYPE_REGEXP);if(!n)return 8;switch(n[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"meta.embedded":return 0}throw new Error("Unexpected match for standard token type!")}static STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/},fs=class{values;scopesRegExp;constructor(t){if(t.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(t);const e=t.map(([n,r])=>En(n));e.sort(),e.reverse(),this.scopesRegExp=new RegExp(`^((${e.join(")|(")}))($|\\.)`,"")}}match(t){if(!this.scopesRegExp)return;const e=t.match(this.scopesRegExp);if(e)return this.values.get(e[1])}},Vt=class{constructor(t,e){this.stack=t,this.stoppedEarly=e}};function Mn(t,e,n,r,s,a,o,i){const c=e.content.length;let l=!1,u=-1;if(o){const p=ms(t,e,n,r,s,a);s=p.stack,r=p.linePos,n=p.isFirstLine,u=p.anchorPosition}const h=Date.now();for(;!l;){if(i!==0&&Date.now()-h>i)return new Vt(s,!0);d()}return new Vt(s,!1);function d(){const p=bs(t,e,n,r,s,u);if(!p){a.produce(s,c),l=!0;return}const g=p.captureIndices,k=p.matchedRuleId,m=g&&g.length>0?g[0].end>r:!1;if(k===hs){const C=s.getRule(t);a.produce(s,g[0].start),s=s.withContentNameScopesList(s.nameScopesList),ue(t,e,n,s,a,C.endCaptures,g),a.produce(s,g[0].end);const b=s;if(s=s.parent,u=b.getAnchorPos(),!m&&b.getEnterPos()===r){s=b,a.produce(s,c),l=!0;return}}else{const C=t.getRule(k);a.produce(s,g[0].start);const b=s,w=C.getName(e.content,g),I=s.contentNameScopesList.pushAttributed(w,t);if(s=s.push(k,r,u,g[0].end===c,null,I,I),C instanceof dt){const v=C;ue(t,e,n,s,a,v.beginCaptures,g),a.produce(s,g[0].end),u=g[0].end;const j=v.getContentName(e.content,g),L=I.pushAttributed(j,t);if(s=s.withContentNameScopesList(L),v.endHasBackReferences&&(s=s.withEndRule(v.getEndWithResolvedBackReferences(e.content,g))),!m&&b.hasSameRuleAs(s)){s=s.pop(),a.produce(s,c),l=!0;return}}else if(C instanceof Le){const v=C;ue(t,e,n,s,a,v.beginCaptures,g),a.produce(s,g[0].end),u=g[0].end;const j=v.getContentName(e.content,g),L=I.pushAttributed(j,t);if(s=s.withContentNameScopesList(L),v.whileHasBackReferences&&(s=s.withEndRule(v.getWhileWithResolvedBackReferences(e.content,g))),!m&&b.hasSameRuleAs(s)){s=s.pop(),a.produce(s,c),l=!0;return}}else if(ue(t,e,n,s,a,C.captures,g),a.produce(s,g[0].end),s=s.pop(),!m){s=s.safePop(),a.produce(s,c),l=!0;return}}g[0].end>r&&(r=g[0].end,n=!1)}}function ms(t,e,n,r,s,a){let o=s.beginRuleCapturedEOL?0:-1;const i=[];for(let c=s;c;c=c.pop()){const l=c.getRule(t);l instanceof Le&&i.push({rule:l,stack:c})}for(let c=i.pop();c;c=i.pop()){const{ruleScanner:l,findOptions:u}=ks(c.rule,t,c.stack.endRule,n,r===o),h=l.findNextMatchSync(e,r,u);if(h){if(h.ruleId!==Tn){s=c.stack.pop();break}h.captureIndices&&h.captureIndices.length&&(a.produce(c.stack,h.captureIndices[0].start),ue(t,e,n,c.stack,a,c.rule.whileCaptures,h.captureIndices),a.produce(c.stack,h.captureIndices[0].end),o=h.captureIndices[0].end,h.captureIndices[0].end>r&&(r=h.captureIndices[0].end,n=!1))}else{s=c.stack.pop();break}}return{stack:s,linePos:r,anchorPosition:o,isFirstLine:n}}function bs(t,e,n,r,s,a){const o=ys(t,e,n,r,s,a),i=t.getInjections();if(i.length===0)return o;const c=_s(i,t,e,n,r,s,a);if(!c)return o;if(!o)return c;const l=o.captureIndices[0].start,u=c.captureIndices[0].start;return u<l||c.priorityMatch&&u===l?c:o}function ys(t,e,n,r,s,a){const o=s.getRule(t),{ruleScanner:i,findOptions:c}=Bn(o,t,s.endRule,n,r===a),l=i.findNextMatchSync(e,r,c);return l?{captureIndices:l.captureIndices,matchedRuleId:l.ruleId}:null}function _s(t,e,n,r,s,a,o){let i=Number.MAX_VALUE,c=null,l,u=0;const h=a.contentNameScopesList.getScopeNames();for(let d=0,p=t.length;d<p;d++){const g=t[d];if(!g.matcher(h))continue;const k=e.getRule(g.ruleId),{ruleScanner:m,findOptions:C}=Bn(k,e,null,r,s===o),b=m.findNextMatchSync(n,s,C);if(!b)continue;const w=b.captureIndices[0].start;if(!(w>=i)&&(i=w,c=b.captureIndices,l=b.ruleId,u=g.priority,i===s))break}return c?{priorityMatch:u===-1,captureIndices:c,matchedRuleId:l}:null}function Bn(t,e,n,r,s){return{ruleScanner:t.compileAG(e,n,r,s),findOptions:0}}function ks(t,e,n,r,s){return{ruleScanner:t.compileWhileAG(e,n,r,s),findOptions:0}}function ue(t,e,n,r,s,a,o){if(a.length===0)return;const i=e.content,c=Math.min(a.length,o.length),l=[],u=o[0].end;for(let h=0;h<c;h++){const d=a[h];if(d===null)continue;const p=o[h];if(p.length===0)continue;if(p.start>u)break;for(;l.length>0&&l[l.length-1].endPos<=p.start;)s.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop();if(l.length>0?s.produceFromScopes(l[l.length-1].scopes,p.start):s.produce(r,p.start),d.retokenizeCapturedWithRuleId){const k=d.getName(i,o),m=r.contentNameScopesList.pushAttributed(k,t),C=d.getContentName(i,o),b=m.pushAttributed(C,t),w=r.push(d.retokenizeCapturedWithRuleId,p.start,-1,!1,null,m,b),I=t.createOnigString(i.substring(0,p.end));Mn(t,I,n&&p.start===0,p.start,w,s,!1,0),Rn(I);continue}const g=d.getName(i,o);if(g!==null){const k=(l.length>0?l[l.length-1].scopes:r.contentNameScopesList).pushAttributed(g,t);l.push(new Cs(k,p.end))}}for(;l.length>0;)s.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop()}var Cs=class{scopes;endPos;constructor(t,e){this.scopes=t,this.endPos=e}};function ws(t,e,n,r,s,a,o,i){return new As(t,e,n,r,s,a,o,i)}function Qt(t,e,n,r,s){const a=Pe(e,Ge),o=Ln.getCompiledRuleId(n,r,s.repository);for(const i of a)t.push({debugSelector:e,matcher:i.matcher,ruleId:o,grammar:s,priority:i.priority})}function Ge(t,e){if(e.length<t.length)return!1;let n=0;return t.every(r=>{for(let s=n;s<e.length;s++)if(Ss(e[s],r))return n=s+1,!0;return!1})}function Ss(t,e){if(!t)return!1;if(t===e)return!0;const n=e.length;return t.length>n&&t.substr(0,n)===e&&t[n]==="."}var As=class{constructor(t,e,n,r,s,a,o,i){if(this._rootScopeName=t,this.balancedBracketSelectors=a,this._onigLib=i,this._basicScopeAttributesProvider=new gs(n,r),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=o,this._grammar=Xt(e,null),this._injections=null,this._tokenTypeMatchers=[],s)for(const c of Object.keys(s)){const l=Pe(c,Ge);for(const u of l)this._tokenTypeMatchers.push({matcher:u.matcher,type:s[c]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(const t of this._ruleId2desc)t&&t.dispose()}createOnigScanner(t){return this._onigLib.createOnigScanner(t)}createOnigString(t){return this._onigLib.createOnigString(t)}getMetadataForScope(t){return this._basicScopeAttributesProvider.getBasicScopeAttributes(t)}_collectInjections(){const t={lookup:s=>s===this._rootScopeName?this._grammar:this.getExternalGrammar(s),injections:s=>this._grammarRepository.injections(s)},e=[],n=this._rootScopeName,r=t.lookup(n);if(r){const s=r.injections;if(s)for(let o in s)Qt(e,o,s[o],this,r);const a=this._grammarRepository.injections(n);a&&a.forEach(o=>{const i=this.getExternalGrammar(o);if(i){const c=i.injectionSelector;c&&Qt(e,c,i,this,i)}})}return e.sort((s,a)=>s.priority-a.priority),e}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(t){const e=++this._lastRuleId,n=t(e);return this._ruleId2desc[e]=n,n}getRule(t){return this._ruleId2desc[t]}getExternalGrammar(t,e){if(this._includedGrammars[t])return this._includedGrammars[t];if(this._grammarRepository){const n=this._grammarRepository.lookup(t);if(n)return this._includedGrammars[t]=Xt(n,e&&e.$base),this._includedGrammars[t]}}tokenizeLine(t,e,n=0){const r=this._tokenize(t,e,!1,n);return{tokens:r.lineTokens.getResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}tokenizeLine2(t,e,n=0){const r=this._tokenize(t,e,!0,n);return{tokens:r.lineTokens.getBinaryResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}_tokenize(t,e,n,r){this._rootId===-1&&(this._rootId=Ln.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let s;if(!e||e===ft.NULL){s=!0;const l=this._basicScopeAttributesProvider.getDefaultAttributes(),u=this.themeProvider.getDefaults(),h=ie.set(0,l.languageId,l.tokenType,null,u.fontStyle,u.foregroundId,u.backgroundId),d=this.getRule(this._rootId).getName(null,null);let p;d?p=he.createRootAndLookUpScopeName(d,h,this):p=he.createRoot("unknown",h),e=new ft(null,this._rootId,-1,-1,!1,null,p,p)}else s=!1,e.reset();t=t+`
|
|
3
3
|
`;const a=this.createOnigString(t),o=a.content.length,i=new vs(n,t,this._tokenTypeMatchers,this.balancedBracketSelectors),c=Mn(this,a,s,0,e,i,!0,r);return Rn(a),{lineLength:o,lineTokens:i,ruleStack:c.stack,stoppedEarly:c.stoppedEarly}}};function Xt(t,e){return t=Ur(t),t.repository=t.repository||{},t.repository.$self={$vscodeTextmateLocation:t.$vscodeTextmateLocation,patterns:t.patterns,name:t.scopeName},t.repository.$base=e||t.repository.$self,t}var he=class D{constructor(e,n,r){this.parent=e,this.scopePath=n,this.tokenAttributes=r}static fromExtension(e,n){let r=e,s=e?.scopePath??null;for(const a of n)s=Ye.push(s,a.scopeNames),r=new D(r,s,a.encodedTokenAttributes);return r}static createRoot(e,n){return new D(null,new Ye(null,e),n)}static createRootAndLookUpScopeName(e,n,r){const s=r.getMetadataForScope(e),a=new Ye(null,e),o=r.themeProvider.themeMatch(a),i=D.mergeAttributes(n,s,o);return new D(null,a,i)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(e){return D.equals(this,e)}static equals(e,n){do{if(e===n||!e&&!n)return!0;if(!e||!n||e.scopeName!==n.scopeName||e.tokenAttributes!==n.tokenAttributes)return!1;e=e.parent,n=n.parent}while(!0)}static mergeAttributes(e,n,r){let s=-1,a=0,o=0;return r!==null&&(s=r.fontStyle,a=r.foregroundId,o=r.backgroundId),ie.set(e,n.languageId,n.tokenType,null,s,a,o)}pushAttributed(e,n){if(e===null)return this;if(e.indexOf(" ")===-1)return D._pushAttributed(this,e,n);const r=e.split(/ /g);let s=this;for(const a of r)s=D._pushAttributed(s,a,n);return s}static _pushAttributed(e,n,r){const s=r.getMetadataForScope(n),a=e.scopePath.push(n),o=r.themeProvider.themeMatch(a),i=D.mergeAttributes(e.tokenAttributes,s,o);return new D(e,a,i)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(e){const n=[];let r=this;for(;r&&r!==e;)n.push({encodedTokenAttributes:r.tokenAttributes,scopeNames:r.scopePath.getExtensionIfDefined(r.parent?.scopePath??null)}),r=r.parent;return r===e?n.reverse():void 0}},ft=class Y{constructor(e,n,r,s,a,o,i,c){this.parent=e,this.ruleId=n,this.beginRuleCapturedEOL=a,this.endRule=o,this.nameScopesList=i,this.contentNameScopesList=c,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=r,this._anchorPos=s}_stackElementBrand=void 0;static NULL=new Y(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(e){return e===null?!1:Y._equals(this,e)}static _equals(e,n){return e===n?!0:this._structuralEquals(e,n)?he.equals(e.contentNameScopesList,n.contentNameScopesList):!1}static _structuralEquals(e,n){do{if(e===n||!e&&!n)return!0;if(!e||!n||e.depth!==n.depth||e.ruleId!==n.ruleId||e.endRule!==n.endRule)return!1;e=e.parent,n=n.parent}while(!0)}clone(){return this}static _reset(e){for(;e;)e._enterPos=-1,e._anchorPos=-1,e=e.parent}reset(){Y._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(e,n,r,s,a,o,i){return new Y(this,e,n,r,s,a,o,i)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(e){return e.getRule(this.ruleId)}toString(){const e=[];return this._writeString(e,0),"["+e.join(",")+"]"}_writeString(e,n){return this.parent&&(n=this.parent._writeString(e,n)),e[n++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,n}withContentNameScopesList(e){return this.contentNameScopesList===e?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,e)}withEndRule(e){return this.endRule===e?this:new Y(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,e,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(e){let n=this;for(;n&&n._enterPos===e._enterPos;){if(n.ruleId===e.ruleId)return!0;n=n.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(e,n){const r=he.fromExtension(e?.nameScopesList??null,n.nameScopesList);return new Y(e,n.ruleId,n.enterPos??-1,n.anchorPos??-1,n.beginRuleCapturedEOL,n.endRule,r,he.fromExtension(r,n.contentNameScopesList))}},xs=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(t,e){this.balancedBracketScopes=t.flatMap(n=>n==="*"?(this.allowAny=!0,[]):Pe(n,Ge).map(r=>r.matcher)),this.unbalancedBracketScopes=e.flatMap(n=>Pe(n,Ge).map(r=>r.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(t){for(const e of this.unbalancedBracketScopes)if(e(t))return!1;for(const e of this.balancedBracketScopes)if(e(t))return!0;return this.allowAny}},vs=class{constructor(t,e,n,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=t,this._tokenTypeOverrides=n,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(t,e){this.produceFromScopes(t.contentNameScopesList,e)}produceFromScopes(t,e){if(this._lastTokenEndIndex>=e)return;if(this._emitBinaryTokens){let r=t?.tokenAttributes??0,s=!1;if(this.balancedBracketSelectors?.matchesAlways&&(s=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){const a=t?.getScopeNames()??[];for(const o of this._tokenTypeOverrides)o.matcher(a)&&(r=ie.set(r,0,o.type,null,-1,0,0));this.balancedBracketSelectors&&(s=this.balancedBracketSelectors.match(a))}if(s&&(r=ie.set(r,0,8,s,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===r){this._lastTokenEndIndex=e;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(r),this._lastTokenEndIndex=e;return}const n=t?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:e,scopes:n}),this._lastTokenEndIndex=e}getResult(t,e){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===e-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(t,e),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(t,e){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===e-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(t,e),this._binaryTokens[this._binaryTokens.length-2]=0);const n=new Uint32Array(this._binaryTokens.length);for(let r=0,s=this._binaryTokens.length;r<s;r++)n[r]=this._binaryTokens[r];return n}},Es=class{constructor(t,e){this._onigLib=e,this._theme=t}_grammars=new Map;_rawGrammars=new Map;_injectionGrammars=new Map;_theme;dispose(){for(const t of this._grammars.values())t.dispose()}setTheme(t){this._theme=t}getColorMap(){return this._theme.getColorMap()}addGrammar(t,e){this._rawGrammars.set(t.scopeName,t),e&&this._injectionGrammars.set(t.scopeName,e)}lookup(t){return this._rawGrammars.get(t)}injections(t){return this._injectionGrammars.get(t)}getDefaults(){return this._theme.getDefaults()}themeMatch(t){return this._theme.match(t)}grammarForScopeName(t,e,n,r,s){if(!this._grammars.has(t)){let a=this._rawGrammars.get(t);if(!a)return null;this._grammars.set(t,ws(t,a,e,n,r,s,this,this._onigLib))}return this._grammars.get(t)}},Ns=class{_options;_syncRegistry;_ensureGrammarCache;constructor(t){this._options=t,this._syncRegistry=new Es(Re.createFromRawTheme(t.theme,t.colorMap),t.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(t,e){this._syncRegistry.setTheme(Re.createFromRawTheme(t,e))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(t,e,n){return this.loadGrammarWithConfiguration(t,e,{embeddedLanguages:n})}loadGrammarWithConfiguration(t,e,n){return this._loadGrammar(t,e,n.embeddedLanguages,n.tokenTypes,new xs(n.balancedBracketSelectors||[],n.unbalancedBracketSelectors||[]))}loadGrammar(t){return this._loadGrammar(t,0,null,null,null)}_loadGrammar(t,e,n,r,s){const a=new rs(this._syncRegistry,t);for(;a.Q.length>0;)a.Q.map(o=>this._loadSingleGrammar(o.scopeName)),a.processQueue();return this._grammarForScopeName(t,e,n,r,s)}_loadSingleGrammar(t){this._ensureGrammarCache.has(t)||(this._doLoadSingleGrammar(t),this._ensureGrammarCache.set(t,!0))}_doLoadSingleGrammar(t){const e=this._options.loadGrammar(t);if(e){const n=typeof this._options.getInjections=="function"?this._options.getInjections(t):void 0;this._syncRegistry.addGrammar(e,n)}}addGrammar(t,e=[],n=0,r=null){return this._syncRegistry.addGrammar(t,e),this._grammarForScopeName(t.scopeName,n,r)}_grammarForScopeName(t,e=0,n=null,r=null,s=null){return this._syncRegistry.grammarForScopeName(t,e,n,r,s)}},mt=ft.NULL;const Is=/["&'<>`]/g,$s=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Rs=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,Ps=/[|\\{}()[\]^$+*?.]/g,Zt=new WeakMap;function Ts(t,e){if(t=t.replace(e.subset?Ls(e.subset):Is,r),e.subset||e.escapeOnly)return t;return t.replace($s,n).replace(Rs,r);function n(s,a,o){return e.format((s.charCodeAt(0)-55296)*1024+s.charCodeAt(1)-56320+65536,o.charCodeAt(a+2),e)}function r(s,a,o){return e.format(s.charCodeAt(0),o.charCodeAt(a+1),e)}}function Ls(t){let e=Zt.get(t);return e||(e=Gs(t),Zt.set(t,e)),e}function Gs(t){const e=[];let n=-1;for(;++n<t.length;)e.push(t[n].replace(Ps,"\\$&"));return new RegExp("(?:"+e.join("|")+")","g")}const Ms=/[\dA-Fa-f]/;function Bs(t,e,n){const r="&#x"+t.toString(16).toUpperCase();return n&&e&&!Ms.test(String.fromCharCode(e))?r:r+";"}const Os=/\d/;function Fs(t,e,n){const r="&#"+String(t);return n&&e&&!Os.test(String.fromCharCode(e))?r:r+";"}const js=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"],et={nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",fnof:"ƒ",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",bull:"•",hellip:"…",prime:"′",Prime:"″",oline:"‾",frasl:"⁄",weierp:"℘",image:"ℑ",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦",quot:'"',amp:"&",lt:"<",gt:">",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"",zwj:"",lrm:"",rlm:"",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},Ds=["cent","copy","divide","gt","lt","not","para","times"],On={}.hasOwnProperty,bt={};let Se;for(Se in et)On.call(et,Se)&&(bt[et[Se]]=Se);const Ws=/[^\dA-Za-z]/;function Us(t,e,n,r){const s=String.fromCharCode(t);if(On.call(bt,s)){const a=bt[s],o="&"+a;return n&&js.includes(a)&&!Ds.includes(a)&&(!r||e&&e!==61&&Ws.test(String.fromCharCode(e)))?o:o+";"}return""}function qs(t,e,n){let r=Bs(t,e,n.omitOptionalSemicolons),s;if((n.useNamedReferences||n.useShortestReferences)&&(s=Us(t,e,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!s)&&n.useShortestReferences){const a=Fs(t,e,n.omitOptionalSemicolons);a.length<r.length&&(r=a)}return s&&(!n.useShortestReferences||s.length<r.length)?s:r}function ae(t,e){return Ts(t,Object.assign({format:qs},e))}const Hs=/^>|^->|<!--|-->|--!>|<!-$/g,zs=[">"],Vs=["<",">"];function Qs(t,e,n,r){return r.settings.bogusComments?"<?"+ae(t.value,Object.assign({},r.settings.characterReferences,{subset:zs}))+">":"<!--"+t.value.replace(Hs,s)+"-->";function s(a){return ae(a,Object.assign({},r.settings.characterReferences,{subset:Vs}))}}function Xs(t,e,n,r){return"<!"+(r.settings.upperDoctype?"DOCTYPE":"doctype")+(r.settings.tightDoctype?"":" ")+"html>"}const N=jn(1),Fn=jn(-1),Zs=[];function jn(t){return e;function e(n,r,s){const a=n?n.children:Zs;let o=(r||0)+t,i=a[o];if(!s)for(;i&&xt(i);)o+=t,i=a[o];return i}}const Ks={}.hasOwnProperty;function Dn(t){return e;function e(n,r,s){return Ks.call(t,n.tagName)&&t[n.tagName](n,r,s)}}const Et=Dn({body:Js,caption:tt,colgroup:tt,dd:ra,dt:na,head:tt,html:Ys,li:ta,optgroup:sa,option:aa,p:ea,rp:Kt,rt:Kt,tbody:ia,td:Yt,tfoot:ca,th:Yt,thead:oa,tr:la});function tt(t,e,n){const r=N(n,e,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&xt(r.value.charAt(0)))}function Ys(t,e,n){const r=N(n,e);return!r||r.type!=="comment"}function Js(t,e,n){const r=N(n,e);return!r||r.type!=="comment"}function ea(t,e,n){const r=N(n,e);return r?r.type==="element"&&(r.tagName==="address"||r.tagName==="article"||r.tagName==="aside"||r.tagName==="blockquote"||r.tagName==="details"||r.tagName==="div"||r.tagName==="dl"||r.tagName==="fieldset"||r.tagName==="figcaption"||r.tagName==="figure"||r.tagName==="footer"||r.tagName==="form"||r.tagName==="h1"||r.tagName==="h2"||r.tagName==="h3"||r.tagName==="h4"||r.tagName==="h5"||r.tagName==="h6"||r.tagName==="header"||r.tagName==="hgroup"||r.tagName==="hr"||r.tagName==="main"||r.tagName==="menu"||r.tagName==="nav"||r.tagName==="ol"||r.tagName==="p"||r.tagName==="pre"||r.tagName==="section"||r.tagName==="table"||r.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function ta(t,e,n){const r=N(n,e);return!r||r.type==="element"&&r.tagName==="li"}function na(t,e,n){const r=N(n,e);return!!(r&&r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd"))}function ra(t,e,n){const r=N(n,e);return!r||r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd")}function Kt(t,e,n){const r=N(n,e);return!r||r.type==="element"&&(r.tagName==="rp"||r.tagName==="rt")}function sa(t,e,n){const r=N(n,e);return!r||r.type==="element"&&r.tagName==="optgroup"}function aa(t,e,n){const r=N(n,e);return!r||r.type==="element"&&(r.tagName==="option"||r.tagName==="optgroup")}function oa(t,e,n){const r=N(n,e);return!!(r&&r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot"))}function ia(t,e,n){const r=N(n,e);return!r||r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot")}function ca(t,e,n){return!N(n,e)}function la(t,e,n){const r=N(n,e);return!r||r.type==="element"&&r.tagName==="tr"}function Yt(t,e,n){const r=N(n,e);return!r||r.type==="element"&&(r.tagName==="td"||r.tagName==="th")}const ua=Dn({body:da,colgroup:ga,head:pa,html:ha,tbody:fa});function ha(t){const e=N(t,-1);return!e||e.type!=="comment"}function pa(t){const e=new Set;for(const r of t.children)if(r.type==="element"&&(r.tagName==="base"||r.tagName==="title")){if(e.has(r.tagName))return!1;e.add(r.tagName)}const n=t.children[0];return!n||n.type==="element"}function da(t){const e=N(t,-1,!0);return!e||e.type!=="comment"&&!(e.type==="text"&&xt(e.value.charAt(0)))&&!(e.type==="element"&&(e.tagName==="meta"||e.tagName==="link"||e.tagName==="script"||e.tagName==="style"||e.tagName==="template"))}function ga(t,e,n){const r=Fn(n,e),s=N(t,-1,!0);return n&&r&&r.type==="element"&&r.tagName==="colgroup"&&Et(r,n.children.indexOf(r),n)?!1:!!(s&&s.type==="element"&&s.tagName==="col")}function fa(t,e,n){const r=Fn(n,e),s=N(t,-1);return n&&r&&r.type==="element"&&(r.tagName==="thead"||r.tagName==="tbody")&&Et(r,n.children.indexOf(r),n)?!1:!!(s&&s.type==="element"&&s.tagName==="tr")}const Ae={name:[[`
|
|
4
4
|
\f\r &/=>`.split(""),`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{al as Ni}from"./index-
|
|
1
|
+
import{al as Ni}from"./index-Dv5bF4Ii.js";function Mi(u,M){for(var z=0;z<M.length;z++){const V=M[z];if(typeof V!="string"&&!Array.isArray(V)){for(const g in V)if(g!=="default"&&!(g in u)){const l=Object.getOwnPropertyDescriptor(V,g);l&&Object.defineProperty(u,g,l.get?l:{enumerable:!0,get:()=>V[g]})}}}return Object.freeze(Object.defineProperty(u,Symbol.toStringTag,{value:"Module"}))}var kr={},Rt={},Mr;function Jt(){if(Mr)return Rt;Mr=1,Object.defineProperty(Rt,"__esModule",{value:!0}),Rt.formatRef=u,Rt.isRef=M,Rt.isDataNode=z,Rt.isEnvRef=V;function u(g){let l="$";for(let c=0;c<g.linkUps;c++)l+="^";let f=!0;for(const c of g.linkTo)typeof c=="string"?((!f||g.linkUps>0)&&(l+="."),l+=c,f=!1):l+=`[${c}]`;return l}function M(g){return typeof g=="object"&&g!==null&&"linkTo"in g&&"linkUps"in g&&!Array.isArray(g)&&!(g instanceof Date)}function z(g){return typeof g=="object"&&g!==null&&!M(g)}function V(g){return typeof g=="object"&&g!==null&&"env"in g&&!Array.isArray(g)&&!(g instanceof Date)}return Rt}var $t={},jr;function vn(){if(jr)return $t;jr=1,Object.defineProperty($t,"__esModule",{value:!0}),$t.MotValue=$t.Mot=void 0,$t.buildMot=d;const u=Jt();class M{text(...w){return this.get(...w)._text()}numeric(...w){return this.get(...w)._numeric()}boolean(...w){return this.get(...w)._boolean()}date(...w){return this.get(...w)._date()}valueType(...w){return this.get(...w)._valueType()}values(...w){return this.get(...w)._values()}texts(...w){const E=this.get(...w)._values();if(!E)return;const x=[];for(const G of E){const oe=G._text();if(oe===void 0)return;x.push(oe)}return x}numerics(...w){const E=this.get(...w)._values();if(!E)return;const x=[];for(const G of E){const oe=G._numeric();if(oe===void 0)return;x.push(oe)}return x}booleans(...w){const E=this.get(...w)._values();if(!E)return;const x=[];for(const G of E){const oe=G._boolean();if(oe===void 0)return;x.push(oe)}return x}dates(...w){const E=this.get(...w)._values();if(!E)return;const x=[];for(const G of E){const oe=G._date();if(oe===void 0)return;x.push(oe)}return x}has(...w){return this.get(...w).exists}}$t.Mot=M;class z extends M{constructor(w,E,x=!0){super(),this.isRef=!1,this._val=w,this._props=E,this.exists=x}_text(){return this._val?.type==="string"?this._val.value:void 0}_numeric(){return this._val?.type==="number"?this._val.value:void 0}_boolean(){return this._val?.type==="boolean"?this._val.value:void 0}_date(){return this._val?.type==="date"?this._val.value:void 0}_values(){return this._val?.type==="array"?this._val.value:void 0}_valueType(){return this._val?.type}get keys(){return this._props.keys()}get entries(){return this._props.entries()}get(...w){let E=this;for(const x of w){if(typeof x=="number"){const G=E.values();if(!G||!Number.isInteger(x)||x<0||x>=G.length)return f;E=G[x]}else E===this?E=this._props.get(x)??f:E=E.get(x);if(!E.exists)return f}return E}}$t.MotValue=z;class V extends M{constructor(w,E){super(),this.exists=!0,this.isRef=!0,this._target=E}_text(){return this._target.text()}_numeric(){return this._target.numeric()}_boolean(){return this._target.boolean()}_date(){return this._target.date()}_values(){return this._target.values()}_valueType(){return this._target.valueType()}get keys(){return this._target.keys}get entries(){return this._target.entries}get(...w){return this._target.get(...w)}}const g={[Symbol.iterator]:()=>({next:()=>({done:!0,value:void 0})})};class l extends M{constructor(){super(...arguments),this.exists=!1,this.isRef=!1}_text(){}_numeric(){}_boolean(){}_date(){}_values(){}_valueType(){}get keys(){return g}get entries(){return g}get(...w){return this}}const f=new l,c={createMot(e,w){return new z(e,w)},createRefMot(e,w){return new V(e,w)},undefinedMot:f};function s(e,w,E,x){let G,oe;if(e.linkUps===0)G=w,oe=[];else{const N=E.length-e.linkUps;if(N<0||N>=E.length)return;G=E[N],oe=E.slice(0,N)}let C=G,R=oe,P=G;for(let N=0;N<e.linkTo.length;N++){if((0,u.isRef)(C)){if(x.has(C))return;x.add(C);const Ee=s(C,w,R,x);if(x.delete(C),!Ee)return;C=Ee.target,R=Ee.ancestors,P=C,N--;continue}const ye=C,Se=e.linkTo[N];if(typeof Se=="string"){if(!ye.properties||!(Se in ye.properties))return;N>0&&(R=[...R,P]),P=ye,C=ye.properties[Se]}else{if(!ye.eq||!Array.isArray(ye.eq)||Se>=ye.eq.length)return;N>0&&(R=[...R,P]),P=ye,C=ye.eq[Se]}}if((0,u.isRef)(C)){if(x.has(C))return;x.add(C);const N=s(C,w,R,x);return x.delete(C),N}return{target:C,ancestors:R}}function d(e,w){const E=w?.env,x=w?.factory??c,G=x.undefinedMot,oe=new Map;function C(N,ye,Se){if(N.deleted)return G;if(oe.has(N))return oe.get(N);const Ee=new Map,xe=P(N.eq,ye,Se,N),ve=x.createMot(xe,Ee);if(oe.set(N,ve),N.properties)for(const[$e,D]of Object.entries(N.properties)){const B=R(D,ye,Se,N);B.exists&&Ee.set($e,B)}return ve}function R(N,ye,Se,Ee){if((0,u.isRef)(N)){const ve=new Set;ve.add(N);const $e=s(N,ye,Se,ve);if(!$e||$e.target.deleted)return G;const D=C($e.target,ye,$e.ancestors);return x.createRefMot(N,D)}const xe=N;return xe.deleted?G:C(xe,ye,[...Se,Ee])}function P(N,ye,Se,Ee){if(N!==void 0){if((0,u.isEnvRef)(N)){const xe=E?E[N.env]:void 0;return xe===void 0?void 0:{type:"string",value:xe}}if(Array.isArray(N)){const xe=[...Se,Ee],ve=[];for(const $e of N)ve.push(R($e,ye,xe,Ee));return{type:"array",value:ve}}if(typeof N=="string")return{type:"string",value:N};if(typeof N=="number")return{type:"number",value:N};if(typeof N=="boolean")return{type:"boolean",value:N};if(N instanceof Date)return{type:"date",value:N}}}return C(e,e,[e])}return $t}var yt={},ir={},Ur;function ji(){if(Ur)return ir;Ur=1,Object.defineProperty(ir,"__esModule",{value:!0}),ir.parse=V;class u{constructor(l){this.input=l,this.pos=0}peekChar(){return this.pos<this.input.length?this.input[this.pos]:void 0}advance(l){this.pos+=l}startsWith(l){return this.input.startsWith(l,this.pos)}eatChar(l){return this.peekChar()===l?(this.advance(1),!0):!1}expectChar(l){if(!this.eatChar(l))throw this.errorPoint(`Expected '${l}'`)}position(){const l=this.input.substring(0,this.pos),f=(l.match(/\n/g)||[]).length,c=l.lastIndexOf(`
|
|
2
2
|
`),s=this.pos-(c===-1?0:c+1);return{line:f,column:s,offset:this.pos}}errorPoint(l){const f=this.position();return{code:"tag-parse-syntax-error",message:l,begin:f,end:f}}errorSpan(l,f){return{code:"tag-parse-syntax-error",message:l,begin:f,end:this.position()}}skipWs(){for(;;){for(;this.pos<this.input.length;){const l=this.input[this.pos];if(l===" "||l===" "||l==="\r"||l===`
|
|
3
3
|
`)this.pos++;else break}if(this.peekChar()==="#")for(;this.pos<this.input.length;){const l=this.input[this.pos];if(l==="\r"||l===`
|
|
4
4
|
`)break;this.pos++}else break}}skipWsAndCommas(){for(this.skipWs();this.peekChar()===",";)this.advance(1),this.skipWs()}parseStatements(){const l=[];for(this.skipWsAndCommas();this.pos<this.input.length;)l.push(this.parseStatement()),this.skipWsAndCommas();return l}parseStatement(){const l=this.position();if(this.startsWith("-..."))return this.advance(4),{kind:"clearAll",span:{begin:l,end:this.position()}};if(this.peekChar()==="-")return this.advance(1),{kind:"define",path:this.parsePropName(),deleted:!0,span:{begin:l,end:this.position()}};const f=this.parsePropName();this.skipWs();const c=this.peekChar();if(c===":"&&this.startsWith(":=")){this.advance(2),this.skipWs();const s=this.parseEqValue();if(this.skipWs(),this.peekChar()==="{"){const d=this.parsePropertiesBlock();return{kind:"assignBoth",path:f,value:s,properties:d,span:{begin:l,end:this.position()}}}return{kind:"assignBoth",path:f,value:s,properties:null,span:{begin:l,end:this.position()}}}if(c==="="){if(this.advance(1),this.skipWs(),this.peekChar()==="{")throw this.errorPoint("'=' requires a value; use ': { ... }' to replace properties");const s=this.parseEqValue();if(this.skipWs(),this.peekChar()==="{"){const d=this.parsePropertiesBlock();return{kind:"setEq",path:f,value:s,properties:d,span:{begin:l,end:this.position()}}}return{kind:"setEq",path:f,value:s,properties:null,span:{begin:l,end:this.position()}}}if(c===":"){this.advance(1),this.skipWs();const s=this.parsePropertiesBlock();return{kind:"replaceProperties",path:f,properties:s,span:{begin:l,end:this.position()}}}if(c==="{"){const s=this.parsePropertiesBlock();return{kind:"updateProperties",path:f,properties:s,span:{begin:l,end:this.position()}}}return{kind:"define",path:f,deleted:!1,span:{begin:l,end:this.position()}}}parsePropName(){const f=[this.parseIdentifier()];for(;this.peekChar()===".";)this.advance(1),f.push(this.parseIdentifier());return f}parseIdentifier(){return this.peekChar()==="`"?this.parseBacktickString():this.parseBareString()}parseEqValue(l=!0){const f=this.peekChar();if(l&&f==="[")return{kind:"array",elements:this.parseArray()};if(this.startsWith("<<<"))return{kind:"scalar",value:{kind:"string",value:this.parseHeredoc()}};if(f==="@")return{kind:"scalar",value:this.parseAtValue()};if(f==="$")return{kind:"scalar",value:this.parseReference()};if(f==='"')return this.startsWith('"""')?{kind:"scalar",value:{kind:"string",value:this.parseTripleString()}}:{kind:"scalar",value:{kind:"string",value:this.parseDoubleQuotedString()}};if(f==="'")return this.startsWith("'''")?{kind:"scalar",value:{kind:"string",value:this.parseTripleSingleQuotedString()}}:{kind:"scalar",value:{kind:"string",value:this.parseSingleQuotedString()}};if(f!==void 0&&(f==="-"||f>="0"&&f<="9"||f==="."))return this.parseNumberOrString();if(f!==void 0&&M(f))return{kind:"scalar",value:{kind:"string",value:this.parseBareString()}};throw this.errorPoint("Expected a value")}parseAtValue(){const l=this.position();if(this.expectChar("@"),this.startsWith("true")&&!this.isBareCharAt(4))return this.advance(4),{kind:"boolean",value:!0};if(this.startsWith("false")&&!this.isBareCharAt(5))return this.advance(5),{kind:"boolean",value:!1};if(this.startsWith("none")&&!this.isBareCharAt(4))return this.advance(4),{kind:"none"};if(this.startsWith("env."))return this.advance(4),{kind:"env",name:this.parseIdentifier()};const f=this.peekChar();if(f!==void 0&&f>="0"&&f<="9")return this.parseDate(l);const c=this.pos;for(;this.pos<this.input.length&&M(this.input[this.pos]);)this.pos++;const s=this.pos>c?this.input.substring(c,this.pos):"";throw this.errorSpan(`Illegal constant @${s}; expected @true, @false, @none, @env.NAME, or @date`,l)}isBareCharAt(l){const f=this.pos+l;return f<this.input.length&&M(this.input[f])}parseDate(l){const f=this.pos;if(this.consumeDigits(4,l),this.expectChar("-"),this.consumeDigits(2,l),this.expectChar("-"),this.consumeDigits(2,l),this.peekChar()==="T"){if(this.advance(1),this.consumeDigits(2,l),this.expectChar(":"),this.consumeDigits(2,l),this.peekChar()===":"&&(this.advance(1),this.consumeDigits(2,l),this.peekChar()===".")){this.advance(1);const d=this.pos;for(;this.pos<this.input.length&&this.input[this.pos]>="0"&&this.input[this.pos]<="9";)this.pos++;if(this.pos===d)throw this.errorSpan("Expected fractional digits in date",l)}const s=this.peekChar();s==="Z"?this.advance(1):(s==="+"||s==="-")&&(this.advance(1),this.consumeDigits(2,l),this.peekChar()===":"&&this.advance(1),this.consumeDigits(2,l))}return{kind:"date",value:this.input.substring(f,this.pos)}}consumeDigits(l,f){for(let c=0;c<l;c++){const s=this.peekChar();if(s===void 0||s<"0"||s>"9")throw this.errorSpan("Expected digit",f);this.advance(1)}}parseNumberOrString(){const l=this.pos,f=this.position(),c=this.peekChar()==="-";c&&this.advance(1);let s=!1,d=!1;for(;this.pos<this.input.length&&this.input[this.pos]>="0"&&this.input[this.pos]<="9";)s=!0,this.advance(1);if(this.peekChar()==="."){d=!0,this.advance(1);const G=this.pos;for(;this.pos<this.input.length&&this.input[this.pos]>="0"&&this.input[this.pos]<="9";)this.advance(1);if(this.pos===G)return this.pos=l,this.parseIntegerOrBare(l,c)}if(!s&&!d){if(this.pos=l,c)throw this.errorPoint("Expected a value");return{kind:"scalar",value:{kind:"string",value:this.parseBareString()}}}const e=this.peekChar();if(e==="e"||e==="E"){this.advance(1);const G=this.peekChar();(G==="+"||G==="-")&&this.advance(1);const oe=this.pos;for(;this.pos<this.input.length&&this.input[this.pos]>="0"&&this.input[this.pos]<="9";)this.advance(1);if(this.pos===oe)throw this.errorSpan("Expected exponent digits",f)}const w=this.peekChar();if(w!==void 0&&M(w)&&!(w>="0"&&w<="9")){if(this.pos=l,c)throw this.errorPoint("Expected a value");return{kind:"scalar",value:{kind:"string",value:this.parseBareString()}}}const E=this.input.substring(l,this.pos),x=parseFloat(E);if(isNaN(x))throw this.errorSpan(`Invalid number: ${E}`,f);return{kind:"scalar",value:{kind:"number",value:x}}}parseIntegerOrBare(l,f){this.pos=l;const c=this.position();f&&this.advance(1);const s=this.pos;for(;this.pos<this.input.length&&this.input[this.pos]>="0"&&this.input[this.pos]<="9";)this.advance(1);if(this.pos===s){if(this.pos=l,f)throw this.errorPoint("Expected a value");return{kind:"scalar",value:{kind:"string",value:this.parseBareString()}}}if(!f){const E=this.peekChar();if(E!==void 0&&M(E)&&!(E>="0"&&E<="9"))return this.pos=l,{kind:"scalar",value:{kind:"string",value:this.parseBareString()}}}const d=this.peekChar();if(d==="e"||d==="E"){this.advance(1);const E=this.peekChar();(E==="+"||E==="-")&&this.advance(1);const x=this.pos;for(;this.pos<this.input.length&&this.input[this.pos]>="0"&&this.input[this.pos]<="9";)this.advance(1);if(this.pos===x)throw this.errorSpan("Expected exponent digits",c)}const e=this.input.substring(l,this.pos),w=parseFloat(e);if(isNaN(w))throw this.errorSpan(`Invalid number: ${e}`,c);return{kind:"scalar",value:{kind:"number",value:w}}}parseBareString(){const l=this.pos;for(;this.pos<this.input.length&&M(this.input[this.pos]);)this.pos++;if(this.pos===l)throw this.errorPoint("Expected an identifier");return this.input.substring(l,this.pos)}parseDoubleQuotedString(){const l=this.position();this.expectChar('"');let f="";for(;;){const c=this.peekChar();if(c===void 0||c==="\r"||c===`
|