@stelis/say-ur-intent 0.0.8 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -23,6 +23,17 @@ never sign, execute, or return transaction bytes; the only transaction-byte path
23
23
  is the same-machine, digest-gated wallet handoff initiated from the local review
24
24
  page.
25
25
 
26
+ Because the AI never holds keys, never signs, and never builds the transaction —
27
+ the tool builds it against pinned, known protocol packages, and you review the
28
+ decoded bytes and sign in your own wallet — the failure modes that make AI and
29
+ DeFi dangerous together (an agent acting on its own, signing on your behalf, or
30
+ slipping in an opaque or substituted transaction) are closed by design, not
31
+ patched by asking you to trust the model.
32
+
33
+ That guarantee is byte-level: the bytes you approve are the bytes your wallet
34
+ signs — not a claim that the human-readable review captures every detail of the
35
+ transaction, so the raw PTB structure and addresses stay inspectable beside it.
36
+
26
37
  Users can ask ordinary questions:
27
38
 
28
39
  - "Can I cover a 1000 dollar payment with my assets?"
@@ -88,17 +99,6 @@ It can also create a read-only, non-signable local review session from a
88
99
  structured external payment or Sui action proposal. External proposal ingestion
89
100
  does not trust external transaction material or send anything for wallet signing.
90
101
 
91
- Key terms used below:
92
-
93
- - Sui: the mainnet blockchain whose DeFi state this project reads.
94
- - MCP: Model Context Protocol, the tool-calling interface used by AI clients.
95
- - DeepBook: Sui's onchain order book protocol.
96
- - SDK: Software Development Kit, a version-pinned library dependency used by this repository.
97
- - gRPC and GraphQL: Sui SDK transports used by this runtime for mainnet reads.
98
- - dApp Kit: Sui's wallet connection library for web apps.
99
- - stdio: standard input/output, the local transport used by MCP clients to talk to this server.
100
- - Stelis: the GitHub and npm namespace for this package. Say Ur Intent is the product and runtime name.
101
-
102
102
  For setup, see [docs/MCP_SETUP.md](docs/MCP_SETUP.md).
103
103
  For the MCP API reference, see [docs/MCP_TOOLS.md](docs/MCP_TOOLS.md).
104
104
  For the AI-client answer playbook, see [docs/AGENT_BEHAVIOR.md](docs/AGENT_BEHAVIOR.md).
@@ -215,38 +215,9 @@ For quote responses alone, these conclusions are unsupported:
215
215
  - cost basis is not available;
216
216
  - actionable signing data is not available.
217
217
 
218
- ## Developer Checkout Quickstart
219
-
220
- This package targets Node.js 22+. Node 22 or 24 LTS is recommended.
221
-
222
- Use this path when you download the repository from GitHub and want to test the local build in an MCP client:
223
-
224
- ```bash
225
- git clone https://github.com/stelis-dev/say-ur-intent.git
226
- cd say-ur-intent
227
- npm install
228
- npm run build
229
- ```
230
-
231
- No Sui endpoint setup is required for the default path. For MCP stdio configuration from a local checkout, point the client at the built runtime:
232
-
233
- ```json
234
- {
235
- "command": "node",
236
- "args": ["/absolute/path/to/say-ur-intent/dist/runtime/start.js"]
237
- }
238
- ```
218
+ ## Install
239
219
 
240
- Do not wrap the stdio server in a shell command that writes ordinary text to stdout. Stdout is reserved for MCP JSON-RPC messages; logs go to stderr.
241
-
242
- Client-specific setup for Claude Code, Claude Desktop, Codex, and Cursor lives in [docs/MCP_SETUP.md](docs/MCP_SETUP.md). That file is the canonical setup guide; this README keeps only the short path.
243
-
244
- To delegate local setup to an AI coding agent, tell it:
245
-
246
- ```text
247
- Register this repository as a local stdio MCP server using the built /absolute/path/to/say-ur-intent/dist/runtime/start.js file.
248
- Use the default Sui mainnet endpoint unless I explicitly ask for a custom provider.
249
- ```
220
+ Install from the MCP registry (server `io.github.stelis-dev/say-ur-intent`) or with `npx -y @stelis/say-ur-intent`. For per-client configuration (Claude Code, Claude Desktop, Codex, Cursor) and running from a local checkout, see [docs/MCP_SETUP.md](docs/MCP_SETUP.md).
250
221
 
251
222
  After the MCP server is connected, use [docs/MCP_SETUP.md](docs/MCP_SETUP.md#first-use-flow) for first-use setup, [docs/MCP_TOOLS.md](docs/MCP_TOOLS.md) for API fields and statuses, and [docs/AGENT_BEHAVIOR.md](docs/AGENT_BEHAVIOR.md) for user-question flow and response wording.
252
223
 
@@ -256,20 +227,6 @@ Product docs, registry, AI responses, UX copy, and signable actions are mainnet-
256
227
 
257
228
  Unsupported protocol experiments are not product functionality and are not included in the package docs, MCP resources, registry support lists, UX copy, or signable-action lists.
258
229
 
259
- ## Commands
260
-
261
- ```bash
262
- npm install
263
- npm run typecheck
264
- npm run build
265
- npm test
266
- npm run release:check
267
- npm run generate:deepbook-registry
268
- npm run smoke:mainnet
269
- ```
270
-
271
- `npm run generate:deepbook-registry` writes `registry/generated/deepbook-mainnet.json`, which is ignored by Git because generated registry data must include provenance and should be regenerated from the pinned SDK.
272
-
273
230
  ## MCP Tools
274
231
 
275
232
  The canonical MCP API reference lives in [docs/MCP_TOOLS.md](docs/MCP_TOOLS.md).
@@ -341,87 +298,3 @@ If you maintain a Sui DeFi protocol that has a registered MVR name and want its
341
298
  package to display that name in the review graph, open a pull request adding your
342
299
  mainnet package address and MVR name to the package registry. Every unregistered
343
300
  address keeps its raw form.
344
-
345
- ## For Maintainers
346
-
347
- This section is for people operating releases, running smoke checks, changing runtime storage, or debugging startup. Normal users and MCP client users can stop at the documentation map above.
348
-
349
- ### Mainnet Read Smoke
350
-
351
- Normal quickstart use does not require Sui endpoint setup. The smoke script is a manual maintainer check for a specific mainnet provider:
352
-
353
- ```bash
354
- export SUI_GRPC_URL="https://fullnode.mainnet.sui.io:443"
355
- export SUI_GRAPHQL_URL="https://graphql.mainnet.sui.io/graphql" # optional override; default is the built-in mainnet GraphQL endpoint
356
- export SMOKE_SUI_ADDRESS="0x..."
357
- export SMOKE_DEEPBOOK_POOL_KEY="DEEP_SUI"
358
- export SMOKE_QUOTE_AMOUNT="1000000000" # raw integer units; for SUI, 1000000000 = 1 SUI
359
- # Optional: export SMOKE_INSPECT_DIGEST="..."
360
- # Optional: export SMOKE_INSPECT_RANDOM_LATEST="true"
361
- npm run build
362
- npm run smoke:mainnet
363
- ```
364
-
365
- `SUI_GRPC_URL` must be only scheme, host, and explicit port. Do not include credentials, a path, query string, or fragment.
366
- `SMOKE_SUI_ADDRESS` must be a 32-byte hex Sui address, for example `0x` followed by 64 hex characters.
367
- `SMOKE_INSPECT_DIGEST` is optional. Use a digest whose sender or returned balance-change owner is `SMOKE_SUI_ADDRESS` to exercise the stored digest-lookup path; otherwise the lookup can still return `ok` with `persistence.stored: false`.
368
- `SMOKE_INSPECT_RANDOM_LATEST=true` is optional and only used when `SMOKE_INSPECT_DIGEST` is unset.
369
-
370
- It samples one digest from the latest GraphQL transaction page and calls `read.inspect_sui_transaction` without passing the smoke address.
371
-
372
- This checks current transaction-read shape without pinning a specific user address or exercising the stored relation path.
373
-
374
- The smoke script currently calls:
375
-
376
- - wallet assets;
377
- - DeepBook orderbook;
378
- - raw-quantity quote;
379
- - `read.scan_sui_account_activity` for `SMOKE_SUI_ADDRESS` with limit 5;
380
- - `read.summarize_sui_activity_scan` through active account context with limit 5.
381
-
382
- If `SMOKE_FUNCTION_TARGET` is set to a full `package::module::function`, it also calls `read.scan_sui_function_activity` and `read.summarize_sui_function_activity_scan` with limit 5.
383
-
384
- If unset, function activity smoke is recorded as not run with `notRunReason: "missing_env"`.
385
-
386
- Empty activity pages are valid smoke outcomes. They are recorded with `rowCount: 0` and `emptyAccepted: true`.
387
-
388
- If `SMOKE_INSPECT_DIGEST` is set, the script also calls `read.inspect_sui_transaction` for that digest and the smoke address.
389
-
390
- DeepBook orderbook and raw-quantity quote reads use an internal mainnet SDK simulation sender placeholder, not a user's wallet. The display-amount quote path is covered by automated tests, not by this smoke script. This smoke script does not exercise account-bound DeepBook transaction-material build or digest binding; that path needs a separate funded-account material-build smoke before smoke results are treated as product-grade proof for that review stage.
391
-
392
- Wallet asset summaries and active-account activity summaries use the smoke address through a wallet identity session created by the smoke script. Browser wallet behavior is checked separately.
393
-
394
- Smoke result files record activity status, row count, source, window/order flags, persistence, and evidence summary only. They do not record raw GraphQL payloads, transaction bytes, signatures, raw transaction details, or compact transaction aggregates.
395
-
396
- ### Runtime Boundary
397
-
398
- The runtime starts these local components:
399
-
400
- - a local SQLite store;
401
- - a mainnet guard for the configured Sui gRPC endpoint;
402
- - the local review HTTP server on `127.0.0.1`;
403
- - the stdio MCP transport.
404
-
405
- The GraphQL endpoint is also mainnet-guarded when it is saved through settings, imported from a local-data backup, or first used by Sui activity tools.
406
-
407
- Stdout is reserved for MCP JSON-RPC messages. Logs go to stderr.
408
-
409
- ### Local Data
410
-
411
- The runtime creates a local SQLite file for account read context and Say Ur Intent review activity evidence. Users do not install a database server separately.
412
-
413
- Override the app data directory only when needed:
414
-
415
- ```bash
416
- export SAY_UR_INTENT_DATA_DIR="/path/to/local/app-data"
417
- ```
418
-
419
- The stored active account is for reading wallet state only. It does not let the toolkit sign transactions on your behalf.
420
-
421
- User-requested bounded transaction scans can store normalized facts only when a transaction is related to a known local wallet. This product does not run a background or complete wallet history indexer.
422
-
423
- The default Sui mainnet gRPC and GraphQL endpoints are stored in the local SQLite settings table on first run.
424
-
425
- To inspect settings or change local data, ask your AI client to create a Say Ur Intent local settings session and open the returned settings URL in the same machine's system browser.
426
-
427
- Endpoint changes apply after the MCP server restarts.
@@ -91,9 +91,11 @@ const OBJECT_NAME_BY_ADDRESS = buildNameMap(OBJECT_NAME_REGISTRY);
91
91
  * - A well-known object is relabeled only where it is a bare id (not followed by
92
92
  * `::`), the form an object input takes — never a package path.
93
93
  *
94
- * Unknown addresses are left unchanged. Matching uses the full `0x` + 64-hex
95
- * address form the PTB renderer (`@zktx.io/ptb-model`) emits; the registry keys
96
- * are normalized to that same form.
94
+ * Unknown addresses (no registered name) are shortened for the display graph
95
+ * (leading zeros collapsed, long ids middle-elided); the full address stays in
96
+ * the artifact's raw `text` stream for audit and copy. Matching uses the full
97
+ * `0x` + 64-hex address form the PTB renderer (`@zktx.io/ptb-model`) emits; the
98
+ * registry keys are normalized to that same form.
97
99
  *
98
100
  * Registered package names may be Move Registry names like `@deepbook/core`;
99
101
  * Mermaid v11 reads a literal `@` as node/edge metadata syntax even inside a
@@ -113,6 +115,10 @@ export function applyContractNamesToMermaid(mermaidText) {
113
115
  const safe = mermaidSafeName(name);
114
116
  text = text.replace(new RegExp(`${address}(?!::)`, "g"), () => safe);
115
117
  }
118
+ // Any address still present (no registered name) is shortened for the display
119
+ // graph; its `::module::name` suffix, if any, is left intact. The full address
120
+ // is untouched in the raw `text` stream the artifact keeps for audit and copy.
121
+ text = text.replace(/0x[0-9a-f]{40,64}(?![0-9a-f])/gi, (address) => shortenAddressForDisplay(address));
116
122
  return text;
117
123
  }
118
124
  /**
@@ -125,3 +131,20 @@ export function applyContractNamesToMermaid(mermaidText) {
125
131
  function mermaidSafeName(name) {
126
132
  return name.replace(/@/g, "#64;");
127
133
  }
134
+ /**
135
+ * Shorten an unregistered full-length address for the display graph: collapse
136
+ * leading zeros so low ids read compactly (`0x...0002` -> `0x2`), and middle-elide
137
+ * a genuinely long id (`0x123456...cdef`). Display only — the raw `text` stream
138
+ * keeps the full address for audit and copy. Uses ASCII `...` (a Mermaid-valid
139
+ * label character) rather than a unicode ellipsis.
140
+ */
141
+ function shortenAddressForDisplay(address) {
142
+ const body = address.slice(2).replace(/^0+/, "");
143
+ if (body.length === 0) {
144
+ return "0x0";
145
+ }
146
+ if (body.length <= 12) {
147
+ return `0x${body}`;
148
+ }
149
+ return `0x${body.slice(0, 6)}...${body.slice(-4)}`;
150
+ }
@@ -1,24 +1,24 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["dagre-6UL2VRFP-FNCAXbdE.js","chunk-ABZYJK2D-Dt4W53JI.js","src-Buml7cM5.js","chunk-BJD4TVEz.js","chunk-JA3XYJ7Z-C5ZJdU01.js","chunk-S3R3BYOJ-BWvOhDs0.js","dist-WPc74x_f.js","math-kmyYrkHL.js","identity-DY8PXc6t.js","dagre-Be46QtUd.js","graphlib-CiX5CXxR.js","reduce-B-HuPpdd.js","flatten-DHf9IeNI.js","clone-BZZb7gpZ.js","chunk-ATLVNIR6-fZHLXURb.js","chunk-CVBHYZKI-CViawAKX.js","chunk-HN2XXSSU-yzNpjaSZ.js","chunk-JZLCHNYA-BBST4Cnk.js","chunk-QXUST7PY-DKM2-t2c.js","line-DiIv3Jgw.js","path-AEo9W6mQ.js","array-BmXUUrU6.js","cose-bilkent-S5V4N54A-CRIb8XEO.js","cytoscape.esm-C7jYqDP5.js","c4Diagram-YG6GDRKO-BZXRrcck.js","chunk-TZMSLE5B-B--7eU69.js","flowDiagram-NV44I4VS-DBSQuj6x.js","channel-lk2p_CUu.js","chunk-55IACEB6-Dz-pyw5k.js","chunk-FMBD7UC4-Chxmw62A.js","chunk-QN33PNHL-CbVv3uGK.js","erDiagram-Q2GNP2WA-E5ZsUbDF.js","gitGraphDiagram-NY62KEGX-BCeIMWdl.js","mermaid-parser.core-DkwUYTPl.js","chunk-FPAJGGOC-DDHjQ09H.js","chunk-76Q3JFCE-cK_X1P_l.js","chunk-FWNWRKHM-CVVQUptk.js","chunk-LBM3YZW2-CdwAPuHr.js","chunk-LHMN2FUI-BtB5uDcp.js","chunk-O7ZBX7Z2-pxdK4Sa3.js","chunk-S6J4BHB3-D9Fk0YeD.js","chunk-T53DSG4Q-C1qEyzyV.js","chunk-4BX2VUAB-BPITOdjX.js","chunk-QZHKN3VN-C5ni2pN_.js","ganttDiagram-LVOFAZNH-CKUOsqwl.js","linear-Cv-UPvo1.js","defaultLocale-BaWNtAUL.js","init-BvqephKz.js","infoDiagram-F6ZHWCRC-CAuANIrz.js","pieDiagram-ADFJNKIX-BAs8OfRS.js","ordinal-BliTlkoG.js","arc-BjIacwQm.js","quadrantDiagram-AYHSOK5B-CyUDZP5S.js","xychartDiagram-PRI3JC2R-BGWVfCx4.js","requirementDiagram-UZGBJVZJ-BEHix78P.js","sequenceDiagram-WL72ISMW-DVLOORFJ.js","classDiagram-2ON5EDUG-DlL1m2bp.js","chunk-B4BG7PRW-BbgcjusC.js","classDiagram-v2-WZHVMYZB-FXRskT1j.js","stateDiagram-FKZM4ZOC-sFGGp2kV.js","chunk-DI55MBZ5-C5aoul-d.js","stateDiagram-v2-4FDKWEC3-BHfCF4dX.js","journeyDiagram-XKPGCS4Q-C-Z9phnx.js","timeline-definition-IT6M3QCI-BESnBijC.js","mindmap-definition-VGOIOE7T-TM_CqdmV.js","kanban-definition-3W4ZIXB7-DufgZABq.js","sankeyDiagram-TZEHDZUN-B2bKbmsm.js","diagram-S2PKOQOG-Vdrc-vrO.js","diagram-QEK2KX5R-BCDcESxs.js","blockDiagram-VD42YOAC-20MLNcUm.js","architectureDiagram-VXUJARFQ-C5W6re2I.js","diagram-PSM6KHXK-ylLWjiNM.js"])))=>i.map(i=>d[i]);
2
- import{n as e,r as t,t as n}from"./http-DMvwuuFk.js";import{a as r,c as i,l as a,o,s,t as c}from"./walletStatus-YODe5Y4P.js";import{_ as l,g as u,h as d,p as f}from"./src-Buml7cM5.js";import{J as p,M as m,P as h,R as g,S as _,V as v,W as y,X as b,Y as x,Z as S,b as C,c as w,f as ee,g as te,h as ne,j as re,l as ie,n as ae,p as oe,q as T,r as se,s as ce,t as le,w as ue,x as de,y as fe}from"./chunk-ABZYJK2D-Dt4W53JI.js";import{a as pe,d as me,h as he,i as ge,m as _e,r as ve,u as ye}from"./chunk-S3R3BYOJ-BWvOhDs0.js";import"./chunk-HN2XXSSU-yzNpjaSZ.js";import"./chunk-CVBHYZKI-CViawAKX.js";import"./chunk-ATLVNIR6-fZHLXURb.js";import{C as be,E as xe,O as Se,S as Ce,b as we,c as Te,d as Ee,i as De,m as Oe,p as ke,s as Ae,u as je}from"./identity-DY8PXc6t.js";import{i as Me,s as Ne}from"./chunk-JA3XYJ7Z-C5ZJdU01.js";import{a as Pe,i as Fe,s as Ie}from"./chunk-JZLCHNYA-BBST4Cnk.js";import{a as Le,i as Re,n as ze,r as Be}from"./chunk-QXUST7PY-DKM2-t2c.js";var Ve={name:`mermaid`,version:`11.12.0`,description:`Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.`,type:`module`,module:`./dist/mermaid.core.mjs`,types:`./dist/mermaid.d.ts`,exports:{".":{types:`./dist/mermaid.d.ts`,import:`./dist/mermaid.core.mjs`,default:`./dist/mermaid.core.mjs`},"./*":`./*`},keywords:[`diagram`,`markdown`,`flowchart`,`sequence diagram`,`gantt`,`class diagram`,`git graph`,`mindmap`,`packet diagram`,`c4 diagram`,`er diagram`,`pie chart`,`pie diagram`,`quadrant chart`,`requirement diagram`,`graph`],scripts:{clean:`rimraf dist`,dev:`pnpm -w dev`,"docs:code":`typedoc src/defaultConfig.ts src/config.ts src/mermaid.ts && prettier --write ./src/docs/config/setup`,"docs:build":`rimraf ../../docs && pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts`,"docs:verify":`pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts --verify`,"docs:pre:vitepress":`pnpm --filter ./src/docs prefetch && rimraf src/vitepress && pnpm docs:code && tsx scripts/docs.cli.mts --vitepress && pnpm --filter ./src/vitepress install --no-frozen-lockfile --ignore-scripts`,"docs:build:vitepress":`pnpm docs:pre:vitepress && (cd src/vitepress && pnpm run build) && cpy --flat src/docs/landing/ ./src/vitepress/.vitepress/dist/landing`,"docs:dev":`pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev" "tsx scripts/docs.cli.mts --watch --vitepress"`,"docs:dev:docker":`pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev:docker" "tsx scripts/docs.cli.mts --watch --vitepress"`,"docs:serve":`pnpm docs:build:vitepress && vitepress serve src/vitepress`,"docs:spellcheck":`cspell "src/docs/**/*.md"`,"docs:release-version":`tsx scripts/update-release-version.mts`,"docs:verify-version":`tsx scripts/update-release-version.mts --verify`,"types:build-config":`tsx scripts/create-types-from-json-schema.mts`,"types:verify-config":`tsx scripts/create-types-from-json-schema.mts --verify`,checkCircle:`npx madge --circular ./src`,prepublishOnly:`pnpm docs:verify-version`},repository:{type:`git`,url:`https://github.com/mermaid-js/mermaid`},author:`Knut Sveidqvist`,license:`MIT`,standard:{ignore:[`**/parser/*.js`,`dist/**/*.js`,`cypress/**/*.js`],globals:[`page`]},dependencies:{"@braintree/sanitize-url":`^7.1.1`,"@iconify/utils":`^3.0.1`,"@mermaid-js/parser":`workspace:^`,"@types/d3":`^7.4.3`,cytoscape:`^3.29.3`,"cytoscape-cose-bilkent":`^4.1.0`,"cytoscape-fcose":`^2.2.0`,d3:`^7.9.0`,"d3-sankey":`^0.12.3`,"dagre-d3-es":`7.0.11`,dayjs:`^1.11.18`,dompurify:`^3.2.5`,katex:`^0.16.22`,khroma:`^2.1.0`,"lodash-es":`^4.17.21`,marked:`^16.2.1`,roughjs:`^4.6.6`,stylis:`^4.3.6`,"ts-dedent":`^2.2.0`,uuid:`^11.1.0`},devDependencies:{"@adobe/jsonschema2md":`^8.0.5`,"@iconify/types":`^2.0.0`,"@types/cytoscape":`^3.21.9`,"@types/cytoscape-fcose":`^2.2.4`,"@types/d3-sankey":`^0.12.4`,"@types/d3-scale":`^4.0.9`,"@types/d3-scale-chromatic":`^3.1.0`,"@types/d3-selection":`^3.0.11`,"@types/d3-shape":`^3.1.7`,"@types/jsdom":`^21.1.7`,"@types/katex":`^0.16.7`,"@types/lodash-es":`^4.17.12`,"@types/micromatch":`^4.0.9`,"@types/stylis":`^4.2.7`,"@types/uuid":`^10.0.0`,ajv:`^8.17.1`,canvas:`^3.1.2`,chokidar:`3.6.0`,concurrently:`^9.1.2`,"csstree-validator":`^4.0.1`,globby:`^14.1.0`,jison:`^0.4.18`,"js-base64":`^3.7.8`,jsdom:`^26.1.0`,"json-schema-to-typescript":`^15.0.4`,micromatch:`^4.0.8`,"path-browserify":`^1.0.1`,prettier:`^3.5.3`,remark:`^15.0.1`,"remark-frontmatter":`^5.0.0`,"remark-gfm":`^4.0.1`,rimraf:`^6.0.1`,"start-server-and-test":`^2.0.13`,"type-fest":`^4.35.0`,typedoc:`^0.28.12`,"typedoc-plugin-markdown":`^4.8.1`,typescript:`~5.7.3`,"unist-util-flatmap":`^1.0.0`,"unist-util-visit":`^5.0.0`,vitepress:`^1.6.4`,"vitepress-plugin-search":`1.0.4-alpha.22`},files:[`dist/`,`README.md`],publishConfig:{access:`public`}},He=d(e=>{let{securityLevel:t}=C(),n=f(`body`);return t===`sandbox`&&(n=f((f(`#i${e}`).node()?.contentDocument??document).body)),n.select(`#${e}`)},`selectSvgElement`);function Ue(e){return e==null}d(Ue,`isNothing`);function We(e){return typeof e==`object`&&!!e}d(We,`isObject`);function Ge(e){return Array.isArray(e)?e:Ue(e)?[]:[e]}d(Ge,`toArray`);function Ke(e,t){var n,r,i,a;if(t)for(a=Object.keys(t),n=0,r=a.length;n<r;n+=1)i=a[n],e[i]=t[i];return e}d(Ke,`extend`);function qe(e,t){var n=``,r;for(r=0;r<t;r+=1)n+=e;return n}d(qe,`repeat`);function Je(e){return e===0&&1/e==-1/0}d(Je,`isNegativeZero`);var E={isNothing:Ue,isObject:We,toArray:Ge,repeat:qe,isNegativeZero:Je,extend:Ke};function Ye(e,t){var n=``,r=e.reason||`(unknown reason)`;return e.mark?(e.mark.name&&(n+=`in "`+e.mark.name+`" `),n+=`(`+(e.mark.line+1)+`:`+(e.mark.column+1)+`)`,!t&&e.mark.snippet&&(n+=`
2
+ import{n as e,r as t,t as n}from"./http-DMvwuuFk.js";import{a as r,c as i,l as a,o,s,t as c}from"./walletStatus-YODe5Y4P.js";import{_ as l,g as u,h as d,p as f}from"./src-Buml7cM5.js";import{J as p,M as m,P as h,R as g,S as _,V as v,W as y,X as b,Y as ee,Z as x,b as S,c as C,f as te,g as ne,h as re,j as ie,l as ae,n as oe,p as se,q as w,r as ce,s as le,t as ue,w as de,x as fe,y as pe}from"./chunk-ABZYJK2D-Dt4W53JI.js";import{a as me,d as he,h as ge,i as _e,m as ve,r as ye,u as be}from"./chunk-S3R3BYOJ-BWvOhDs0.js";import"./chunk-HN2XXSSU-yzNpjaSZ.js";import"./chunk-CVBHYZKI-CViawAKX.js";import"./chunk-ATLVNIR6-fZHLXURb.js";import{C as xe,E as Se,O as Ce,S as we,b as Te,c as Ee,d as De,i as Oe,m as ke,p as Ae,s as je,u as Me}from"./identity-DY8PXc6t.js";import{i as Ne,s as Pe}from"./chunk-JA3XYJ7Z-C5ZJdU01.js";import{a as Fe,i as Ie,s as Le}from"./chunk-JZLCHNYA-BBST4Cnk.js";import{a as Re,i as ze,n as Be,r as Ve}from"./chunk-QXUST7PY-DKM2-t2c.js";var He={name:`mermaid`,version:`11.12.0`,description:`Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.`,type:`module`,module:`./dist/mermaid.core.mjs`,types:`./dist/mermaid.d.ts`,exports:{".":{types:`./dist/mermaid.d.ts`,import:`./dist/mermaid.core.mjs`,default:`./dist/mermaid.core.mjs`},"./*":`./*`},keywords:[`diagram`,`markdown`,`flowchart`,`sequence diagram`,`gantt`,`class diagram`,`git graph`,`mindmap`,`packet diagram`,`c4 diagram`,`er diagram`,`pie chart`,`pie diagram`,`quadrant chart`,`requirement diagram`,`graph`],scripts:{clean:`rimraf dist`,dev:`pnpm -w dev`,"docs:code":`typedoc src/defaultConfig.ts src/config.ts src/mermaid.ts && prettier --write ./src/docs/config/setup`,"docs:build":`rimraf ../../docs && pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts`,"docs:verify":`pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts --verify`,"docs:pre:vitepress":`pnpm --filter ./src/docs prefetch && rimraf src/vitepress && pnpm docs:code && tsx scripts/docs.cli.mts --vitepress && pnpm --filter ./src/vitepress install --no-frozen-lockfile --ignore-scripts`,"docs:build:vitepress":`pnpm docs:pre:vitepress && (cd src/vitepress && pnpm run build) && cpy --flat src/docs/landing/ ./src/vitepress/.vitepress/dist/landing`,"docs:dev":`pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev" "tsx scripts/docs.cli.mts --watch --vitepress"`,"docs:dev:docker":`pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev:docker" "tsx scripts/docs.cli.mts --watch --vitepress"`,"docs:serve":`pnpm docs:build:vitepress && vitepress serve src/vitepress`,"docs:spellcheck":`cspell "src/docs/**/*.md"`,"docs:release-version":`tsx scripts/update-release-version.mts`,"docs:verify-version":`tsx scripts/update-release-version.mts --verify`,"types:build-config":`tsx scripts/create-types-from-json-schema.mts`,"types:verify-config":`tsx scripts/create-types-from-json-schema.mts --verify`,checkCircle:`npx madge --circular ./src`,prepublishOnly:`pnpm docs:verify-version`},repository:{type:`git`,url:`https://github.com/mermaid-js/mermaid`},author:`Knut Sveidqvist`,license:`MIT`,standard:{ignore:[`**/parser/*.js`,`dist/**/*.js`,`cypress/**/*.js`],globals:[`page`]},dependencies:{"@braintree/sanitize-url":`^7.1.1`,"@iconify/utils":`^3.0.1`,"@mermaid-js/parser":`workspace:^`,"@types/d3":`^7.4.3`,cytoscape:`^3.29.3`,"cytoscape-cose-bilkent":`^4.1.0`,"cytoscape-fcose":`^2.2.0`,d3:`^7.9.0`,"d3-sankey":`^0.12.3`,"dagre-d3-es":`7.0.11`,dayjs:`^1.11.18`,dompurify:`^3.2.5`,katex:`^0.16.22`,khroma:`^2.1.0`,"lodash-es":`^4.17.21`,marked:`^16.2.1`,roughjs:`^4.6.6`,stylis:`^4.3.6`,"ts-dedent":`^2.2.0`,uuid:`^11.1.0`},devDependencies:{"@adobe/jsonschema2md":`^8.0.5`,"@iconify/types":`^2.0.0`,"@types/cytoscape":`^3.21.9`,"@types/cytoscape-fcose":`^2.2.4`,"@types/d3-sankey":`^0.12.4`,"@types/d3-scale":`^4.0.9`,"@types/d3-scale-chromatic":`^3.1.0`,"@types/d3-selection":`^3.0.11`,"@types/d3-shape":`^3.1.7`,"@types/jsdom":`^21.1.7`,"@types/katex":`^0.16.7`,"@types/lodash-es":`^4.17.12`,"@types/micromatch":`^4.0.9`,"@types/stylis":`^4.2.7`,"@types/uuid":`^10.0.0`,ajv:`^8.17.1`,canvas:`^3.1.2`,chokidar:`3.6.0`,concurrently:`^9.1.2`,"csstree-validator":`^4.0.1`,globby:`^14.1.0`,jison:`^0.4.18`,"js-base64":`^3.7.8`,jsdom:`^26.1.0`,"json-schema-to-typescript":`^15.0.4`,micromatch:`^4.0.8`,"path-browserify":`^1.0.1`,prettier:`^3.5.3`,remark:`^15.0.1`,"remark-frontmatter":`^5.0.0`,"remark-gfm":`^4.0.1`,rimraf:`^6.0.1`,"start-server-and-test":`^2.0.13`,"type-fest":`^4.35.0`,typedoc:`^0.28.12`,"typedoc-plugin-markdown":`^4.8.1`,typescript:`~5.7.3`,"unist-util-flatmap":`^1.0.0`,"unist-util-visit":`^5.0.0`,vitepress:`^1.6.4`,"vitepress-plugin-search":`1.0.4-alpha.22`},files:[`dist/`,`README.md`],publishConfig:{access:`public`}},Ue=d(e=>{let{securityLevel:t}=S(),n=f(`body`);return t===`sandbox`&&(n=f((f(`#i${e}`).node()?.contentDocument??document).body)),n.select(`#${e}`)},`selectSvgElement`);function We(e){return e==null}d(We,`isNothing`);function Ge(e){return typeof e==`object`&&!!e}d(Ge,`isObject`);function Ke(e){return Array.isArray(e)?e:We(e)?[]:[e]}d(Ke,`toArray`);function qe(e,t){var n,r,i,a;if(t)for(a=Object.keys(t),n=0,r=a.length;n<r;n+=1)i=a[n],e[i]=t[i];return e}d(qe,`extend`);function Je(e,t){var n=``,r;for(r=0;r<t;r+=1)n+=e;return n}d(Je,`repeat`);function Ye(e){return e===0&&1/e==-1/0}d(Ye,`isNegativeZero`);var T={isNothing:We,isObject:Ge,toArray:Ke,repeat:Je,isNegativeZero:Ye,extend:qe};function Xe(e,t){var n=``,r=e.reason||`(unknown reason)`;return e.mark?(e.mark.name&&(n+=`in "`+e.mark.name+`" `),n+=`(`+(e.mark.line+1)+`:`+(e.mark.column+1)+`)`,!t&&e.mark.snippet&&(n+=`
3
3
 
4
- `+e.mark.snippet),r+` `+n):r}d(Ye,`formatError`);function Xe(e,t){Error.call(this),this.name=`YAMLException`,this.reason=e,this.mark=t,this.message=Ye(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=Error().stack||``}d(Xe,`YAMLException$1`),Xe.prototype=Object.create(Error.prototype),Xe.prototype.constructor=Xe,Xe.prototype.toString=d(function(e){return this.name+`: `+Ye(this,e)},`toString`);var D=Xe;function Ze(e,t,n,r,i){var a=``,o=``,s=Math.floor(i/2)-1;return r-t>s&&(a=` ... `,t=r-s+a.length),n-r>s&&(o=` ...`,n=r+s-o.length),{str:a+e.slice(t,n).replace(/\t/g,`→`)+o,pos:r-t+a.length}}d(Ze,`getLine`);function Qe(e,t){return E.repeat(` `,t-e.length)+e}d(Qe,`padStart`);function $e(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||=79,typeof t.indent!=`number`&&(t.indent=1),typeof t.linesBefore!=`number`&&(t.linesBefore=3),typeof t.linesAfter!=`number`&&(t.linesAfter=2);for(var n=/\r?\n|\r|\0/g,r=[0],i=[],a,o=-1;a=n.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&o<0&&(o=r.length-2);o<0&&(o=r.length-1);var s=``,c,l,u=Math.min(e.line+t.linesAfter,i.length).toString().length,d=t.maxLength-(t.indent+u+3);for(c=1;c<=t.linesBefore&&!(o-c<0);c++)l=Ze(e.buffer,r[o-c],i[o-c],e.position-(r[o]-r[o-c]),d),s=E.repeat(` `,t.indent)+Qe((e.line-c+1).toString(),u)+` | `+l.str+`
5
- `+s;for(l=Ze(e.buffer,r[o],i[o],e.position,d),s+=E.repeat(` `,t.indent)+Qe((e.line+1).toString(),u)+` | `+l.str+`
6
- `,s+=E.repeat(`-`,t.indent+u+3+l.pos)+`^
7
- `,c=1;c<=t.linesAfter&&!(o+c>=i.length);c++)l=Ze(e.buffer,r[o+c],i[o+c],e.position-(r[o]-r[o+c]),d),s+=E.repeat(` `,t.indent)+Qe((e.line+c+1).toString(),u)+` | `+l.str+`
8
- `;return s.replace(/\n$/,``)}d($e,`makeSnippet`);var et=$e,tt=[`kind`,`multi`,`resolve`,`construct`,`instanceOf`,`predicate`,`represent`,`representName`,`defaultStyle`,`styleAliases`],nt=[`scalar`,`sequence`,`mapping`];function rt(e){var t={};return e!==null&&Object.keys(e).forEach(function(n){e[n].forEach(function(e){t[String(e)]=n})}),t}d(rt,`compileStyleAliases`);function it(e,t){if(t||={},Object.keys(t).forEach(function(t){if(tt.indexOf(t)===-1)throw new D(`Unknown option "`+t+`" is met in definition of "`+e+`" YAML type.`)}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=rt(t.styleAliases||null),nt.indexOf(this.kind)===-1)throw new D(`Unknown kind "`+this.kind+`" is specified for "`+e+`" YAML type.`)}d(it,`Type$1`);var O=it;function at(e,t){var n=[];return e[t].forEach(function(e){var t=n.length;n.forEach(function(n,r){n.tag===e.tag&&n.kind===e.kind&&n.multi===e.multi&&(t=r)}),n[t]=e}),n}d(at,`compileList`);function ot(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,n;function r(t){t.multi?(e.multi[t.kind].push(t),e.multi.fallback.push(t)):e[t.kind][t.tag]=e.fallback[t.tag]=t}for(d(r,`collectType`),t=0,n=arguments.length;t<n;t+=1)arguments[t].forEach(r);return e}d(ot,`compileMap`);function st(e){return this.extend(e)}d(st,`Schema$1`),st.prototype.extend=d(function(e){var t=[],n=[];if(e instanceof O)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(t=t.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new D(`Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })`);t.forEach(function(e){if(!(e instanceof O))throw new D(`Specified list of YAML types (or a single Type object) contains a non-Type object.`);if(e.loadKind&&e.loadKind!==`scalar`)throw new D(`There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.`);if(e.multi)throw new D(`There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.`)}),n.forEach(function(e){if(!(e instanceof O))throw new D(`Specified list of YAML types (or a single Type object) contains a non-Type object.`)});var r=Object.create(st.prototype);return r.implicit=(this.implicit||[]).concat(t),r.explicit=(this.explicit||[]).concat(n),r.compiledImplicit=at(r,`implicit`),r.compiledExplicit=at(r,`explicit`),r.compiledTypeMap=ot(r.compiledImplicit,r.compiledExplicit),r},`extend`);var ct=new st({explicit:[new O(`tag:yaml.org,2002:str`,{kind:`scalar`,construct:d(function(e){return e===null?``:e},`construct`)}),new O(`tag:yaml.org,2002:seq`,{kind:`sequence`,construct:d(function(e){return e===null?[]:e},`construct`)}),new O(`tag:yaml.org,2002:map`,{kind:`mapping`,construct:d(function(e){return e===null?{}:e},`construct`)})]});function lt(e){if(e===null)return!0;var t=e.length;return t===1&&e===`~`||t===4&&(e===`null`||e===`Null`||e===`NULL`)}d(lt,`resolveYamlNull`);function ut(){return null}d(ut,`constructYamlNull`);function dt(e){return e===null}d(dt,`isNull`);var ft=new O(`tag:yaml.org,2002:null`,{kind:`scalar`,resolve:lt,construct:ut,predicate:dt,represent:{canonical:d(function(){return`~`},`canonical`),lowercase:d(function(){return`null`},`lowercase`),uppercase:d(function(){return`NULL`},`uppercase`),camelcase:d(function(){return`Null`},`camelcase`),empty:d(function(){return``},`empty`)},defaultStyle:`lowercase`});function pt(e){if(e===null)return!1;var t=e.length;return t===4&&(e===`true`||e===`True`||e===`TRUE`)||t===5&&(e===`false`||e===`False`||e===`FALSE`)}d(pt,`resolveYamlBoolean`);function mt(e){return e===`true`||e===`True`||e===`TRUE`}d(mt,`constructYamlBoolean`);function ht(e){return Object.prototype.toString.call(e)===`[object Boolean]`}d(ht,`isBoolean`);var gt=new O(`tag:yaml.org,2002:bool`,{kind:`scalar`,resolve:pt,construct:mt,predicate:ht,represent:{lowercase:d(function(e){return e?`true`:`false`},`lowercase`),uppercase:d(function(e){return e?`TRUE`:`FALSE`},`uppercase`),camelcase:d(function(e){return e?`True`:`False`},`camelcase`)},defaultStyle:`lowercase`});function _t(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}d(_t,`isHexCode`);function vt(e){return 48<=e&&e<=55}d(vt,`isOctCode`);function yt(e){return 48<=e&&e<=57}d(yt,`isDecCode`);function bt(e){if(e===null)return!1;var t=e.length,n=0,r=!1,i;if(!t)return!1;if(i=e[n],(i===`-`||i===`+`)&&(i=e[++n]),i===`0`){if(n+1===t)return!0;if(i=e[++n],i===`b`){for(n++;n<t;n++)if(i=e[n],i!==`_`){if(i!==`0`&&i!==`1`)return!1;r=!0}return r&&i!==`_`}if(i===`x`){for(n++;n<t;n++)if(i=e[n],i!==`_`){if(!_t(e.charCodeAt(n)))return!1;r=!0}return r&&i!==`_`}if(i===`o`){for(n++;n<t;n++)if(i=e[n],i!==`_`){if(!vt(e.charCodeAt(n)))return!1;r=!0}return r&&i!==`_`}}if(i===`_`)return!1;for(;n<t;n++)if(i=e[n],i!==`_`){if(!yt(e.charCodeAt(n)))return!1;r=!0}return!(!r||i===`_`)}d(bt,`resolveYamlInteger`);function xt(e){var t=e,n=1,r;if(t.indexOf(`_`)!==-1&&(t=t.replace(/_/g,``)),r=t[0],(r===`-`||r===`+`)&&(r===`-`&&(n=-1),t=t.slice(1),r=t[0]),t===`0`)return 0;if(r===`0`){if(t[1]===`b`)return n*parseInt(t.slice(2),2);if(t[1]===`x`)return n*parseInt(t.slice(2),16);if(t[1]===`o`)return n*parseInt(t.slice(2),8)}return n*parseInt(t,10)}d(xt,`constructYamlInteger`);function St(e){return Object.prototype.toString.call(e)===`[object Number]`&&e%1==0&&!E.isNegativeZero(e)}d(St,`isInteger`);var Ct=new O(`tag:yaml.org,2002:int`,{kind:`scalar`,resolve:bt,construct:xt,predicate:St,represent:{binary:d(function(e){return e>=0?`0b`+e.toString(2):`-0b`+e.toString(2).slice(1)},`binary`),octal:d(function(e){return e>=0?`0o`+e.toString(8):`-0o`+e.toString(8).slice(1)},`octal`),decimal:d(function(e){return e.toString(10)},`decimal`),hexadecimal:d(function(e){return e>=0?`0x`+e.toString(16).toUpperCase():`-0x`+e.toString(16).toUpperCase().slice(1)},`hexadecimal`)},defaultStyle:`decimal`,styleAliases:{binary:[2,`bin`],octal:[8,`oct`],decimal:[10,`dec`],hexadecimal:[16,`hex`]}}),wt=RegExp(`^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$`);function Tt(e){return!(e===null||!wt.test(e)||e[e.length-1]===`_`)}d(Tt,`resolveYamlFloat`);function Et(e){var t=e.replace(/_/g,``).toLowerCase(),n=t[0]===`-`?-1:1;return`+-`.indexOf(t[0])>=0&&(t=t.slice(1)),t===`.inf`?n===1?1/0:-1/0:t===`.nan`?NaN:n*parseFloat(t,10)}d(Et,`constructYamlFloat`);var Dt=/^[-+]?[0-9]+e/;function Ot(e,t){var n;if(isNaN(e))switch(t){case`lowercase`:return`.nan`;case`uppercase`:return`.NAN`;case`camelcase`:return`.NaN`}else if(e===1/0)switch(t){case`lowercase`:return`.inf`;case`uppercase`:return`.INF`;case`camelcase`:return`.Inf`}else if(e===-1/0)switch(t){case`lowercase`:return`-.inf`;case`uppercase`:return`-.INF`;case`camelcase`:return`-.Inf`}else if(E.isNegativeZero(e))return`-0.0`;return n=e.toString(10),Dt.test(n)?n.replace(`e`,`.e`):n}d(Ot,`representYamlFloat`);function kt(e){return Object.prototype.toString.call(e)===`[object Number]`&&(e%1!=0||E.isNegativeZero(e))}d(kt,`isFloat`);var At=new O(`tag:yaml.org,2002:float`,{kind:`scalar`,resolve:Tt,construct:Et,predicate:kt,represent:Ot,defaultStyle:`lowercase`}),jt=ct.extend({implicit:[ft,gt,Ct,At]}),Mt=jt,Nt=RegExp(`^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$`),Pt=RegExp(`^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$`);function Ft(e){return e===null?!1:Nt.exec(e)!==null||Pt.exec(e)!==null}d(Ft,`resolveYamlTimestamp`);function It(e){var t,n,r,i,a,o,s,c=0,l=null,u,d,f;if(t=Nt.exec(e),t===null&&(t=Pt.exec(e)),t===null)throw Error(`Date resolve error`);if(n=+t[1],r=t[2]-1,i=+t[3],!t[4])return new Date(Date.UTC(n,r,i));if(a=+t[4],o=+t[5],s=+t[6],t[7]){for(c=t[7].slice(0,3);c.length<3;)c+=`0`;c=+c}return t[9]&&(u=+t[10],d=+(t[11]||0),l=(u*60+d)*6e4,t[9]===`-`&&(l=-l)),f=new Date(Date.UTC(n,r,i,a,o,s,c)),l&&f.setTime(f.getTime()-l),f}d(It,`constructYamlTimestamp`);function Lt(e){return e.toISOString()}d(Lt,`representYamlTimestamp`);var Rt=new O(`tag:yaml.org,2002:timestamp`,{kind:`scalar`,resolve:Ft,construct:It,instanceOf:Date,represent:Lt});function zt(e){return e===`<<`||e===null}d(zt,`resolveYamlMerge`);var Bt=new O(`tag:yaml.org,2002:merge`,{kind:`scalar`,resolve:zt}),Vt=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
9
- \r`;function Ht(e){if(e===null)return!1;var t,n,r=0,i=e.length,a=Vt;for(n=0;n<i;n++)if(t=a.indexOf(e.charAt(n)),!(t>64)){if(t<0)return!1;r+=6}return r%8==0}d(Ht,`resolveYamlBinary`);function Ut(e){var t,n,r=e.replace(/[\r\n=]/g,``),i=r.length,a=Vt,o=0,s=[];for(t=0;t<i;t++)t%4==0&&t&&(s.push(o>>16&255),s.push(o>>8&255),s.push(o&255)),o=o<<6|a.indexOf(r.charAt(t));return n=i%4*6,n===0?(s.push(o>>16&255),s.push(o>>8&255),s.push(o&255)):n===18?(s.push(o>>10&255),s.push(o>>2&255)):n===12&&s.push(o>>4&255),new Uint8Array(s)}d(Ut,`constructYamlBinary`);function Wt(e){var t=``,n=0,r,i,a=e.length,o=Vt;for(r=0;r<a;r++)r%3==0&&r&&(t+=o[n>>18&63],t+=o[n>>12&63],t+=o[n>>6&63],t+=o[n&63]),n=(n<<8)+e[r];return i=a%3,i===0?(t+=o[n>>18&63],t+=o[n>>12&63],t+=o[n>>6&63],t+=o[n&63]):i===2?(t+=o[n>>10&63],t+=o[n>>4&63],t+=o[n<<2&63],t+=o[64]):i===1&&(t+=o[n>>2&63],t+=o[n<<4&63],t+=o[64],t+=o[64]),t}d(Wt,`representYamlBinary`);function Gt(e){return Object.prototype.toString.call(e)===`[object Uint8Array]`}d(Gt,`isBinary`);var Kt=new O(`tag:yaml.org,2002:binary`,{kind:`scalar`,resolve:Ht,construct:Ut,predicate:Gt,represent:Wt}),qt=Object.prototype.hasOwnProperty,Jt=Object.prototype.toString;function Yt(e){if(e===null)return!0;var t=[],n,r,i,a,o,s=e;for(n=0,r=s.length;n<r;n+=1){if(i=s[n],o=!1,Jt.call(i)!==`[object Object]`)return!1;for(a in i)if(qt.call(i,a))if(!o)o=!0;else return!1;if(!o)return!1;if(t.indexOf(a)===-1)t.push(a);else return!1}return!0}d(Yt,`resolveYamlOmap`);function Xt(e){return e===null?[]:e}d(Xt,`constructYamlOmap`);var Zt=new O(`tag:yaml.org,2002:omap`,{kind:`sequence`,resolve:Yt,construct:Xt}),Qt=Object.prototype.toString;function $t(e){if(e===null)return!0;var t,n,r,i,a,o=e;for(a=Array(o.length),t=0,n=o.length;t<n;t+=1){if(r=o[t],Qt.call(r)!==`[object Object]`||(i=Object.keys(r),i.length!==1))return!1;a[t]=[i[0],r[i[0]]]}return!0}d($t,`resolveYamlPairs`);function en(e){if(e===null)return[];var t,n,r,i,a,o=e;for(a=Array(o.length),t=0,n=o.length;t<n;t+=1)r=o[t],i=Object.keys(r),a[t]=[i[0],r[i[0]]];return a}d(en,`constructYamlPairs`);var tn=new O(`tag:yaml.org,2002:pairs`,{kind:`sequence`,resolve:$t,construct:en}),nn=Object.prototype.hasOwnProperty;function rn(e){if(e===null)return!0;var t,n=e;for(t in n)if(nn.call(n,t)&&n[t]!==null)return!1;return!0}d(rn,`resolveYamlSet`);function an(e){return e===null?{}:e}d(an,`constructYamlSet`);var on=new O(`tag:yaml.org,2002:set`,{kind:`mapping`,resolve:rn,construct:an}),sn=Mt.extend({implicit:[Rt,Bt],explicit:[Kt,Zt,tn,on]}),cn=Object.prototype.hasOwnProperty,ln=1,un=2,dn=3,fn=4,pn=1,mn=2,hn=3,gn=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,_n=/[\x85\u2028\u2029]/,vn=/[,\[\]\{\}]/,yn=/^(?:!|!!|![a-z\-]+!)$/i,bn=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function xn(e){return Object.prototype.toString.call(e)}d(xn,`_class`);function k(e){return e===10||e===13}d(k,`is_EOL`);function A(e){return e===9||e===32}d(A,`is_WHITE_SPACE`);function j(e){return e===9||e===32||e===10||e===13}d(j,`is_WS_OR_EOL`);function Sn(e){return e===44||e===91||e===93||e===123||e===125}d(Sn,`is_FLOW_INDICATOR`);function Cn(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}d(Cn,`fromHexCode`);function wn(e){return e===120?2:e===117?4:e===85?8:0}d(wn,`escapedHexLen`);function Tn(e){return 48<=e&&e<=57?e-48:-1}d(Tn,`fromDecimalCode`);function En(e){return e===48?`\0`:e===97?`\x07`:e===98?`\b`:e===116||e===9?` `:e===110?`
10
- `:e===118?`\v`:e===102?`\f`:e===114?`\r`:e===101?`\x1B`:e===32?` `:e===34?`"`:e===47?`/`:e===92?`\\`:e===78?`…`:e===95?`\xA0`:e===76?`\u2028`:e===80?`\u2029`:``}d(En,`simpleEscapeSequence`);function Dn(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}d(Dn,`charFromCodepoint`);var On=Array(256),kn=Array(256);for(An=0;An<256;An++)On[An]=+!!En(An),kn[An]=En(An);var An;function jn(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||sn,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}d(jn,`State$1`);function Mn(e,t){var n={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return n.snippet=et(n),new D(t,n)}d(Mn,`generateError`);function M(e,t){throw Mn(e,t)}d(M,`throwError`);function Nn(e,t){e.onWarning&&e.onWarning.call(null,Mn(e,t))}d(Nn,`throwWarning`);var Pn={YAML:d(function(e,t,n){var r,i,a;e.version!==null&&M(e,`duplication of %YAML directive`),n.length!==1&&M(e,`YAML directive accepts exactly one argument`),r=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),r===null&&M(e,`ill-formed argument of the YAML directive`),i=parseInt(r[1],10),a=parseInt(r[2],10),i!==1&&M(e,`unacceptable YAML version of the document`),e.version=n[0],e.checkLineBreaks=a<2,a!==1&&a!==2&&Nn(e,`unsupported YAML version of the document`)},`handleYamlDirective`),TAG:d(function(e,t,n){var r,i;n.length!==2&&M(e,`TAG directive accepts exactly two arguments`),r=n[0],i=n[1],yn.test(r)||M(e,`ill-formed tag handle (first argument) of the TAG directive`),cn.call(e.tagMap,r)&&M(e,`there is a previously declared suffix for "`+r+`" tag handle`),bn.test(i)||M(e,`ill-formed tag prefix (second argument) of the TAG directive`);try{i=decodeURIComponent(i)}catch{M(e,`tag prefix is malformed: `+i)}e.tagMap[r]=i},`handleTagDirective`)};function N(e,t,n,r){var i,a,o,s;if(t<n){if(s=e.input.slice(t,n),r)for(i=0,a=s.length;i<a;i+=1)o=s.charCodeAt(i),o===9||32<=o&&o<=1114111||M(e,`expected valid JSON character`);else gn.test(s)&&M(e,`the stream contains non-printable characters`);e.result+=s}}d(N,`captureSegment`);function Fn(e,t,n,r){var i,a,o,s;for(E.isObject(n)||M(e,`cannot merge mappings; the provided source object is unacceptable`),i=Object.keys(n),o=0,s=i.length;o<s;o+=1)a=i[o],cn.call(t,a)||(t[a]=n[a],r[a]=!0)}d(Fn,`mergeMappings`);function In(e,t,n,r,i,a,o,s,c){var l,u;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),l=0,u=i.length;l<u;l+=1)Array.isArray(i[l])&&M(e,`nested arrays are not supported inside keys`),typeof i==`object`&&xn(i[l])===`[object Object]`&&(i[l]=`[object Object]`);if(typeof i==`object`&&xn(i)===`[object Object]`&&(i=`[object Object]`),i=String(i),t===null&&(t={}),r===`tag:yaml.org,2002:merge`)if(Array.isArray(a))for(l=0,u=a.length;l<u;l+=1)Fn(e,t,a[l],n);else Fn(e,t,a,n);else !e.json&&!cn.call(n,i)&&cn.call(t,i)&&(e.line=o||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,M(e,`duplicated mapping key`)),i===`__proto__`?Object.defineProperty(t,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):t[i]=a,delete n[i];return t}d(In,`storeMappingPair`);function Ln(e){var t=e.input.charCodeAt(e.position);t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):M(e,`a line break is expected`),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}d(Ln,`readLineBreak`);function P(e,t,n){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;A(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(t&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(k(i))for(Ln(e),i=e.input.charCodeAt(e.position),r++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return n!==-1&&r!==0&&e.lineIndent<n&&Nn(e,`deficient indentation`),r}d(P,`skipSeparationSpace`);function Rn(e){var t=e.position,n=e.input.charCodeAt(t);return!!((n===45||n===46)&&n===e.input.charCodeAt(t+1)&&n===e.input.charCodeAt(t+2)&&(t+=3,n=e.input.charCodeAt(t),n===0||j(n)))}d(Rn,`testDocumentSeparator`);function zn(e,t){t===1?e.result+=` `:t>1&&(e.result+=E.repeat(`
11
- `,t-1))}d(zn,`writeFoldedLines`);function Bn(e,t,n){var r,i,a,o,s,c,l,u,d=e.kind,f=e.result,p=e.input.charCodeAt(e.position);if(j(p)||Sn(p)||p===35||p===38||p===42||p===33||p===124||p===62||p===39||p===34||p===37||p===64||p===96||(p===63||p===45)&&(i=e.input.charCodeAt(e.position+1),j(i)||n&&Sn(i)))return!1;for(e.kind=`scalar`,e.result=``,a=o=e.position,s=!1;p!==0;){if(p===58){if(i=e.input.charCodeAt(e.position+1),j(i)||n&&Sn(i))break}else if(p===35){if(r=e.input.charCodeAt(e.position-1),j(r))break}else if(e.position===e.lineStart&&Rn(e)||n&&Sn(p))break;else if(k(p))if(c=e.line,l=e.lineStart,u=e.lineIndent,P(e,!1,-1),e.lineIndent>=t){s=!0,p=e.input.charCodeAt(e.position);continue}else{e.position=o,e.line=c,e.lineStart=l,e.lineIndent=u;break}s&&=(N(e,a,o,!1),zn(e,e.line-c),a=o=e.position,!1),A(p)||(o=e.position+1),p=e.input.charCodeAt(++e.position)}return N(e,a,o,!1),e.result?!0:(e.kind=d,e.result=f,!1)}d(Bn,`readPlainScalar`);function Vn(e,t){var n=e.input.charCodeAt(e.position),r,i;if(n!==39)return!1;for(e.kind=`scalar`,e.result=``,e.position++,r=i=e.position;(n=e.input.charCodeAt(e.position))!==0;)if(n===39)if(N(e,r,e.position,!0),n=e.input.charCodeAt(++e.position),n===39)r=e.position,e.position++,i=e.position;else return!0;else k(n)?(N(e,r,i,!0),zn(e,P(e,!1,t)),r=i=e.position):e.position===e.lineStart&&Rn(e)?M(e,`unexpected end of the document within a single quoted scalar`):(e.position++,i=e.position);M(e,`unexpected end of the stream within a single quoted scalar`)}d(Vn,`readSingleQuotedScalar`);function Hn(e,t){var n,r,i,a,o,s=e.input.charCodeAt(e.position);if(s!==34)return!1;for(e.kind=`scalar`,e.result=``,e.position++,n=r=e.position;(s=e.input.charCodeAt(e.position))!==0;)if(s===34)return N(e,n,e.position,!0),e.position++,!0;else if(s===92){if(N(e,n,e.position,!0),s=e.input.charCodeAt(++e.position),k(s))P(e,!1,t);else if(s<256&&On[s])e.result+=kn[s],e.position++;else if((o=wn(s))>0){for(i=o,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(o=Cn(s))>=0?a=(a<<4)+o:M(e,`expected hexadecimal character`);e.result+=Dn(a),e.position++}else M(e,`unknown escape sequence`);n=r=e.position}else k(s)?(N(e,n,r,!0),zn(e,P(e,!1,t)),n=r=e.position):e.position===e.lineStart&&Rn(e)?M(e,`unexpected end of the document within a double quoted scalar`):(e.position++,r=e.position);M(e,`unexpected end of the stream within a double quoted scalar`)}d(Hn,`readDoubleQuotedScalar`);function Un(e,t){var n=!0,r,i,a,o=e.tag,s,c=e.anchor,l,u,d,f,p,m=Object.create(null),h,g,_,v=e.input.charCodeAt(e.position);if(v===91)u=93,p=!1,s=[];else if(v===123)u=125,p=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),v=e.input.charCodeAt(++e.position);v!==0;){if(P(e,!0,t),v=e.input.charCodeAt(e.position),v===u)return e.position++,e.tag=o,e.anchor=c,e.kind=p?`mapping`:`sequence`,e.result=s,!0;n?v===44&&M(e,`expected the node content, but found ','`):M(e,`missed comma between flow collection entries`),g=h=_=null,d=f=!1,v===63&&(l=e.input.charCodeAt(e.position+1),j(l)&&(d=f=!0,e.position++,P(e,!0,t))),r=e.line,i=e.lineStart,a=e.position,Xn(e,t,ln,!1,!0),g=e.tag,h=e.result,P(e,!0,t),v=e.input.charCodeAt(e.position),(f||e.line===r)&&v===58&&(d=!0,v=e.input.charCodeAt(++e.position),P(e,!0,t),Xn(e,t,ln,!1,!0),_=e.result),p?In(e,s,m,g,h,_,r,i,a):d?s.push(In(e,null,m,g,h,_,r,i,a)):s.push(h),P(e,!0,t),v=e.input.charCodeAt(e.position),v===44?(n=!0,v=e.input.charCodeAt(++e.position)):n=!1}M(e,`unexpected end of the stream within a flow collection`)}d(Un,`readFlowCollection`);function Wn(e,t){var n,r,i=pn,a=!1,o=!1,s=t,c=0,l=!1,u,d=e.input.charCodeAt(e.position);if(d===124)r=!1;else if(d===62)r=!0;else return!1;for(e.kind=`scalar`,e.result=``;d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)pn===i?i=d===43?hn:mn:M(e,`repeat of a chomping mode identifier`);else if((u=Tn(d))>=0)u===0?M(e,`bad explicit indentation width of a block scalar; it cannot be less than one`):o?M(e,`repeat of an indentation width identifier`):(s=t+u-1,o=!0);else break;if(A(d)){do d=e.input.charCodeAt(++e.position);while(A(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!k(d)&&d!==0)}for(;d!==0;){for(Ln(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!o||e.lineIndent<s)&&d===32;)e.lineIndent++,d=e.input.charCodeAt(++e.position);if(!o&&e.lineIndent>s&&(s=e.lineIndent),k(d)){c++;continue}if(e.lineIndent<s){i===hn?e.result+=E.repeat(`
4
+ `+e.mark.snippet),r+` `+n):r}d(Xe,`formatError`);function Ze(e,t){Error.call(this),this.name=`YAMLException`,this.reason=e,this.mark=t,this.message=Xe(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=Error().stack||``}d(Ze,`YAMLException$1`),Ze.prototype=Object.create(Error.prototype),Ze.prototype.constructor=Ze,Ze.prototype.toString=d(function(e){return this.name+`: `+Xe(this,e)},`toString`);var E=Ze;function Qe(e,t,n,r,i){var a=``,o=``,s=Math.floor(i/2)-1;return r-t>s&&(a=` ... `,t=r-s+a.length),n-r>s&&(o=` ...`,n=r+s-o.length),{str:a+e.slice(t,n).replace(/\t/g,`→`)+o,pos:r-t+a.length}}d(Qe,`getLine`);function $e(e,t){return T.repeat(` `,t-e.length)+e}d($e,`padStart`);function et(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||=79,typeof t.indent!=`number`&&(t.indent=1),typeof t.linesBefore!=`number`&&(t.linesBefore=3),typeof t.linesAfter!=`number`&&(t.linesAfter=2);for(var n=/\r?\n|\r|\0/g,r=[0],i=[],a,o=-1;a=n.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&o<0&&(o=r.length-2);o<0&&(o=r.length-1);var s=``,c,l,u=Math.min(e.line+t.linesAfter,i.length).toString().length,d=t.maxLength-(t.indent+u+3);for(c=1;c<=t.linesBefore&&!(o-c<0);c++)l=Qe(e.buffer,r[o-c],i[o-c],e.position-(r[o]-r[o-c]),d),s=T.repeat(` `,t.indent)+$e((e.line-c+1).toString(),u)+` | `+l.str+`
5
+ `+s;for(l=Qe(e.buffer,r[o],i[o],e.position,d),s+=T.repeat(` `,t.indent)+$e((e.line+1).toString(),u)+` | `+l.str+`
6
+ `,s+=T.repeat(`-`,t.indent+u+3+l.pos)+`^
7
+ `,c=1;c<=t.linesAfter&&!(o+c>=i.length);c++)l=Qe(e.buffer,r[o+c],i[o+c],e.position-(r[o]-r[o+c]),d),s+=T.repeat(` `,t.indent)+$e((e.line+c+1).toString(),u)+` | `+l.str+`
8
+ `;return s.replace(/\n$/,``)}d(et,`makeSnippet`);var tt=et,nt=[`kind`,`multi`,`resolve`,`construct`,`instanceOf`,`predicate`,`represent`,`representName`,`defaultStyle`,`styleAliases`],rt=[`scalar`,`sequence`,`mapping`];function it(e){var t={};return e!==null&&Object.keys(e).forEach(function(n){e[n].forEach(function(e){t[String(e)]=n})}),t}d(it,`compileStyleAliases`);function at(e,t){if(t||={},Object.keys(t).forEach(function(t){if(nt.indexOf(t)===-1)throw new E(`Unknown option "`+t+`" is met in definition of "`+e+`" YAML type.`)}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=it(t.styleAliases||null),rt.indexOf(this.kind)===-1)throw new E(`Unknown kind "`+this.kind+`" is specified for "`+e+`" YAML type.`)}d(at,`Type$1`);var D=at;function ot(e,t){var n=[];return e[t].forEach(function(e){var t=n.length;n.forEach(function(n,r){n.tag===e.tag&&n.kind===e.kind&&n.multi===e.multi&&(t=r)}),n[t]=e}),n}d(ot,`compileList`);function st(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,n;function r(t){t.multi?(e.multi[t.kind].push(t),e.multi.fallback.push(t)):e[t.kind][t.tag]=e.fallback[t.tag]=t}for(d(r,`collectType`),t=0,n=arguments.length;t<n;t+=1)arguments[t].forEach(r);return e}d(st,`compileMap`);function ct(e){return this.extend(e)}d(ct,`Schema$1`),ct.prototype.extend=d(function(e){var t=[],n=[];if(e instanceof D)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(t=t.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new E(`Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })`);t.forEach(function(e){if(!(e instanceof D))throw new E(`Specified list of YAML types (or a single Type object) contains a non-Type object.`);if(e.loadKind&&e.loadKind!==`scalar`)throw new E(`There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.`);if(e.multi)throw new E(`There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.`)}),n.forEach(function(e){if(!(e instanceof D))throw new E(`Specified list of YAML types (or a single Type object) contains a non-Type object.`)});var r=Object.create(ct.prototype);return r.implicit=(this.implicit||[]).concat(t),r.explicit=(this.explicit||[]).concat(n),r.compiledImplicit=ot(r,`implicit`),r.compiledExplicit=ot(r,`explicit`),r.compiledTypeMap=st(r.compiledImplicit,r.compiledExplicit),r},`extend`);var lt=new ct({explicit:[new D(`tag:yaml.org,2002:str`,{kind:`scalar`,construct:d(function(e){return e===null?``:e},`construct`)}),new D(`tag:yaml.org,2002:seq`,{kind:`sequence`,construct:d(function(e){return e===null?[]:e},`construct`)}),new D(`tag:yaml.org,2002:map`,{kind:`mapping`,construct:d(function(e){return e===null?{}:e},`construct`)})]});function ut(e){if(e===null)return!0;var t=e.length;return t===1&&e===`~`||t===4&&(e===`null`||e===`Null`||e===`NULL`)}d(ut,`resolveYamlNull`);function dt(){return null}d(dt,`constructYamlNull`);function ft(e){return e===null}d(ft,`isNull`);var pt=new D(`tag:yaml.org,2002:null`,{kind:`scalar`,resolve:ut,construct:dt,predicate:ft,represent:{canonical:d(function(){return`~`},`canonical`),lowercase:d(function(){return`null`},`lowercase`),uppercase:d(function(){return`NULL`},`uppercase`),camelcase:d(function(){return`Null`},`camelcase`),empty:d(function(){return``},`empty`)},defaultStyle:`lowercase`});function mt(e){if(e===null)return!1;var t=e.length;return t===4&&(e===`true`||e===`True`||e===`TRUE`)||t===5&&(e===`false`||e===`False`||e===`FALSE`)}d(mt,`resolveYamlBoolean`);function ht(e){return e===`true`||e===`True`||e===`TRUE`}d(ht,`constructYamlBoolean`);function gt(e){return Object.prototype.toString.call(e)===`[object Boolean]`}d(gt,`isBoolean`);var _t=new D(`tag:yaml.org,2002:bool`,{kind:`scalar`,resolve:mt,construct:ht,predicate:gt,represent:{lowercase:d(function(e){return e?`true`:`false`},`lowercase`),uppercase:d(function(e){return e?`TRUE`:`FALSE`},`uppercase`),camelcase:d(function(e){return e?`True`:`False`},`camelcase`)},defaultStyle:`lowercase`});function vt(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}d(vt,`isHexCode`);function yt(e){return 48<=e&&e<=55}d(yt,`isOctCode`);function bt(e){return 48<=e&&e<=57}d(bt,`isDecCode`);function xt(e){if(e===null)return!1;var t=e.length,n=0,r=!1,i;if(!t)return!1;if(i=e[n],(i===`-`||i===`+`)&&(i=e[++n]),i===`0`){if(n+1===t)return!0;if(i=e[++n],i===`b`){for(n++;n<t;n++)if(i=e[n],i!==`_`){if(i!==`0`&&i!==`1`)return!1;r=!0}return r&&i!==`_`}if(i===`x`){for(n++;n<t;n++)if(i=e[n],i!==`_`){if(!vt(e.charCodeAt(n)))return!1;r=!0}return r&&i!==`_`}if(i===`o`){for(n++;n<t;n++)if(i=e[n],i!==`_`){if(!yt(e.charCodeAt(n)))return!1;r=!0}return r&&i!==`_`}}if(i===`_`)return!1;for(;n<t;n++)if(i=e[n],i!==`_`){if(!bt(e.charCodeAt(n)))return!1;r=!0}return!(!r||i===`_`)}d(xt,`resolveYamlInteger`);function St(e){var t=e,n=1,r;if(t.indexOf(`_`)!==-1&&(t=t.replace(/_/g,``)),r=t[0],(r===`-`||r===`+`)&&(r===`-`&&(n=-1),t=t.slice(1),r=t[0]),t===`0`)return 0;if(r===`0`){if(t[1]===`b`)return n*parseInt(t.slice(2),2);if(t[1]===`x`)return n*parseInt(t.slice(2),16);if(t[1]===`o`)return n*parseInt(t.slice(2),8)}return n*parseInt(t,10)}d(St,`constructYamlInteger`);function Ct(e){return Object.prototype.toString.call(e)===`[object Number]`&&e%1==0&&!T.isNegativeZero(e)}d(Ct,`isInteger`);var wt=new D(`tag:yaml.org,2002:int`,{kind:`scalar`,resolve:xt,construct:St,predicate:Ct,represent:{binary:d(function(e){return e>=0?`0b`+e.toString(2):`-0b`+e.toString(2).slice(1)},`binary`),octal:d(function(e){return e>=0?`0o`+e.toString(8):`-0o`+e.toString(8).slice(1)},`octal`),decimal:d(function(e){return e.toString(10)},`decimal`),hexadecimal:d(function(e){return e>=0?`0x`+e.toString(16).toUpperCase():`-0x`+e.toString(16).toUpperCase().slice(1)},`hexadecimal`)},defaultStyle:`decimal`,styleAliases:{binary:[2,`bin`],octal:[8,`oct`],decimal:[10,`dec`],hexadecimal:[16,`hex`]}}),Tt=RegExp(`^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$`);function Et(e){return!(e===null||!Tt.test(e)||e[e.length-1]===`_`)}d(Et,`resolveYamlFloat`);function Dt(e){var t=e.replace(/_/g,``).toLowerCase(),n=t[0]===`-`?-1:1;return`+-`.indexOf(t[0])>=0&&(t=t.slice(1)),t===`.inf`?n===1?1/0:-1/0:t===`.nan`?NaN:n*parseFloat(t,10)}d(Dt,`constructYamlFloat`);var Ot=/^[-+]?[0-9]+e/;function kt(e,t){var n;if(isNaN(e))switch(t){case`lowercase`:return`.nan`;case`uppercase`:return`.NAN`;case`camelcase`:return`.NaN`}else if(e===1/0)switch(t){case`lowercase`:return`.inf`;case`uppercase`:return`.INF`;case`camelcase`:return`.Inf`}else if(e===-1/0)switch(t){case`lowercase`:return`-.inf`;case`uppercase`:return`-.INF`;case`camelcase`:return`-.Inf`}else if(T.isNegativeZero(e))return`-0.0`;return n=e.toString(10),Ot.test(n)?n.replace(`e`,`.e`):n}d(kt,`representYamlFloat`);function At(e){return Object.prototype.toString.call(e)===`[object Number]`&&(e%1!=0||T.isNegativeZero(e))}d(At,`isFloat`);var jt=new D(`tag:yaml.org,2002:float`,{kind:`scalar`,resolve:Et,construct:Dt,predicate:At,represent:kt,defaultStyle:`lowercase`}),Mt=lt.extend({implicit:[pt,_t,wt,jt]}),Nt=Mt,Pt=RegExp(`^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$`),Ft=RegExp(`^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$`);function It(e){return e===null?!1:Pt.exec(e)!==null||Ft.exec(e)!==null}d(It,`resolveYamlTimestamp`);function Lt(e){var t,n,r,i,a,o,s,c=0,l=null,u,d,f;if(t=Pt.exec(e),t===null&&(t=Ft.exec(e)),t===null)throw Error(`Date resolve error`);if(n=+t[1],r=t[2]-1,i=+t[3],!t[4])return new Date(Date.UTC(n,r,i));if(a=+t[4],o=+t[5],s=+t[6],t[7]){for(c=t[7].slice(0,3);c.length<3;)c+=`0`;c=+c}return t[9]&&(u=+t[10],d=+(t[11]||0),l=(u*60+d)*6e4,t[9]===`-`&&(l=-l)),f=new Date(Date.UTC(n,r,i,a,o,s,c)),l&&f.setTime(f.getTime()-l),f}d(Lt,`constructYamlTimestamp`);function Rt(e){return e.toISOString()}d(Rt,`representYamlTimestamp`);var zt=new D(`tag:yaml.org,2002:timestamp`,{kind:`scalar`,resolve:It,construct:Lt,instanceOf:Date,represent:Rt});function Bt(e){return e===`<<`||e===null}d(Bt,`resolveYamlMerge`);var Vt=new D(`tag:yaml.org,2002:merge`,{kind:`scalar`,resolve:Bt}),Ht=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
9
+ \r`;function Ut(e){if(e===null)return!1;var t,n,r=0,i=e.length,a=Ht;for(n=0;n<i;n++)if(t=a.indexOf(e.charAt(n)),!(t>64)){if(t<0)return!1;r+=6}return r%8==0}d(Ut,`resolveYamlBinary`);function Wt(e){var t,n,r=e.replace(/[\r\n=]/g,``),i=r.length,a=Ht,o=0,s=[];for(t=0;t<i;t++)t%4==0&&t&&(s.push(o>>16&255),s.push(o>>8&255),s.push(o&255)),o=o<<6|a.indexOf(r.charAt(t));return n=i%4*6,n===0?(s.push(o>>16&255),s.push(o>>8&255),s.push(o&255)):n===18?(s.push(o>>10&255),s.push(o>>2&255)):n===12&&s.push(o>>4&255),new Uint8Array(s)}d(Wt,`constructYamlBinary`);function Gt(e){var t=``,n=0,r,i,a=e.length,o=Ht;for(r=0;r<a;r++)r%3==0&&r&&(t+=o[n>>18&63],t+=o[n>>12&63],t+=o[n>>6&63],t+=o[n&63]),n=(n<<8)+e[r];return i=a%3,i===0?(t+=o[n>>18&63],t+=o[n>>12&63],t+=o[n>>6&63],t+=o[n&63]):i===2?(t+=o[n>>10&63],t+=o[n>>4&63],t+=o[n<<2&63],t+=o[64]):i===1&&(t+=o[n>>2&63],t+=o[n<<4&63],t+=o[64],t+=o[64]),t}d(Gt,`representYamlBinary`);function Kt(e){return Object.prototype.toString.call(e)===`[object Uint8Array]`}d(Kt,`isBinary`);var qt=new D(`tag:yaml.org,2002:binary`,{kind:`scalar`,resolve:Ut,construct:Wt,predicate:Kt,represent:Gt}),Jt=Object.prototype.hasOwnProperty,Yt=Object.prototype.toString;function Xt(e){if(e===null)return!0;var t=[],n,r,i,a,o,s=e;for(n=0,r=s.length;n<r;n+=1){if(i=s[n],o=!1,Yt.call(i)!==`[object Object]`)return!1;for(a in i)if(Jt.call(i,a))if(!o)o=!0;else return!1;if(!o)return!1;if(t.indexOf(a)===-1)t.push(a);else return!1}return!0}d(Xt,`resolveYamlOmap`);function Zt(e){return e===null?[]:e}d(Zt,`constructYamlOmap`);var Qt=new D(`tag:yaml.org,2002:omap`,{kind:`sequence`,resolve:Xt,construct:Zt}),$t=Object.prototype.toString;function en(e){if(e===null)return!0;var t,n,r,i,a,o=e;for(a=Array(o.length),t=0,n=o.length;t<n;t+=1){if(r=o[t],$t.call(r)!==`[object Object]`||(i=Object.keys(r),i.length!==1))return!1;a[t]=[i[0],r[i[0]]]}return!0}d(en,`resolveYamlPairs`);function tn(e){if(e===null)return[];var t,n,r,i,a,o=e;for(a=Array(o.length),t=0,n=o.length;t<n;t+=1)r=o[t],i=Object.keys(r),a[t]=[i[0],r[i[0]]];return a}d(tn,`constructYamlPairs`);var nn=new D(`tag:yaml.org,2002:pairs`,{kind:`sequence`,resolve:en,construct:tn}),rn=Object.prototype.hasOwnProperty;function an(e){if(e===null)return!0;var t,n=e;for(t in n)if(rn.call(n,t)&&n[t]!==null)return!1;return!0}d(an,`resolveYamlSet`);function on(e){return e===null?{}:e}d(on,`constructYamlSet`);var sn=new D(`tag:yaml.org,2002:set`,{kind:`mapping`,resolve:an,construct:on}),cn=Nt.extend({implicit:[zt,Vt],explicit:[qt,Qt,nn,sn]}),O=Object.prototype.hasOwnProperty,ln=1,un=2,dn=3,fn=4,pn=1,mn=2,hn=3,gn=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,_n=/[\x85\u2028\u2029]/,vn=/[,\[\]\{\}]/,yn=/^(?:!|!!|![a-z\-]+!)$/i,bn=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function xn(e){return Object.prototype.toString.call(e)}d(xn,`_class`);function k(e){return e===10||e===13}d(k,`is_EOL`);function A(e){return e===9||e===32}d(A,`is_WHITE_SPACE`);function j(e){return e===9||e===32||e===10||e===13}d(j,`is_WS_OR_EOL`);function Sn(e){return e===44||e===91||e===93||e===123||e===125}d(Sn,`is_FLOW_INDICATOR`);function Cn(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}d(Cn,`fromHexCode`);function wn(e){return e===120?2:e===117?4:e===85?8:0}d(wn,`escapedHexLen`);function Tn(e){return 48<=e&&e<=57?e-48:-1}d(Tn,`fromDecimalCode`);function En(e){return e===48?`\0`:e===97?`\x07`:e===98?`\b`:e===116||e===9?` `:e===110?`
10
+ `:e===118?`\v`:e===102?`\f`:e===114?`\r`:e===101?`\x1B`:e===32?` `:e===34?`"`:e===47?`/`:e===92?`\\`:e===78?`…`:e===95?`\xA0`:e===76?`\u2028`:e===80?`\u2029`:``}d(En,`simpleEscapeSequence`);function Dn(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}d(Dn,`charFromCodepoint`);var On=Array(256),kn=Array(256);for(An=0;An<256;An++)On[An]=+!!En(An),kn[An]=En(An);var An;function jn(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||cn,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}d(jn,`State$1`);function Mn(e,t){var n={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return n.snippet=tt(n),new E(t,n)}d(Mn,`generateError`);function M(e,t){throw Mn(e,t)}d(M,`throwError`);function Nn(e,t){e.onWarning&&e.onWarning.call(null,Mn(e,t))}d(Nn,`throwWarning`);var Pn={YAML:d(function(e,t,n){var r,i,a;e.version!==null&&M(e,`duplication of %YAML directive`),n.length!==1&&M(e,`YAML directive accepts exactly one argument`),r=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),r===null&&M(e,`ill-formed argument of the YAML directive`),i=parseInt(r[1],10),a=parseInt(r[2],10),i!==1&&M(e,`unacceptable YAML version of the document`),e.version=n[0],e.checkLineBreaks=a<2,a!==1&&a!==2&&Nn(e,`unsupported YAML version of the document`)},`handleYamlDirective`),TAG:d(function(e,t,n){var r,i;n.length!==2&&M(e,`TAG directive accepts exactly two arguments`),r=n[0],i=n[1],yn.test(r)||M(e,`ill-formed tag handle (first argument) of the TAG directive`),O.call(e.tagMap,r)&&M(e,`there is a previously declared suffix for "`+r+`" tag handle`),bn.test(i)||M(e,`ill-formed tag prefix (second argument) of the TAG directive`);try{i=decodeURIComponent(i)}catch{M(e,`tag prefix is malformed: `+i)}e.tagMap[r]=i},`handleTagDirective`)};function N(e,t,n,r){var i,a,o,s;if(t<n){if(s=e.input.slice(t,n),r)for(i=0,a=s.length;i<a;i+=1)o=s.charCodeAt(i),o===9||32<=o&&o<=1114111||M(e,`expected valid JSON character`);else gn.test(s)&&M(e,`the stream contains non-printable characters`);e.result+=s}}d(N,`captureSegment`);function Fn(e,t,n,r){var i,a,o,s;for(T.isObject(n)||M(e,`cannot merge mappings; the provided source object is unacceptable`),i=Object.keys(n),o=0,s=i.length;o<s;o+=1)a=i[o],O.call(t,a)||(t[a]=n[a],r[a]=!0)}d(Fn,`mergeMappings`);function In(e,t,n,r,i,a,o,s,c){var l,u;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),l=0,u=i.length;l<u;l+=1)Array.isArray(i[l])&&M(e,`nested arrays are not supported inside keys`),typeof i==`object`&&xn(i[l])===`[object Object]`&&(i[l]=`[object Object]`);if(typeof i==`object`&&xn(i)===`[object Object]`&&(i=`[object Object]`),i=String(i),t===null&&(t={}),r===`tag:yaml.org,2002:merge`)if(Array.isArray(a))for(l=0,u=a.length;l<u;l+=1)Fn(e,t,a[l],n);else Fn(e,t,a,n);else !e.json&&!O.call(n,i)&&O.call(t,i)&&(e.line=o||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,M(e,`duplicated mapping key`)),i===`__proto__`?Object.defineProperty(t,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):t[i]=a,delete n[i];return t}d(In,`storeMappingPair`);function Ln(e){var t=e.input.charCodeAt(e.position);t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):M(e,`a line break is expected`),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}d(Ln,`readLineBreak`);function P(e,t,n){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;A(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(t&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(k(i))for(Ln(e),i=e.input.charCodeAt(e.position),r++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return n!==-1&&r!==0&&e.lineIndent<n&&Nn(e,`deficient indentation`),r}d(P,`skipSeparationSpace`);function Rn(e){var t=e.position,n=e.input.charCodeAt(t);return!!((n===45||n===46)&&n===e.input.charCodeAt(t+1)&&n===e.input.charCodeAt(t+2)&&(t+=3,n=e.input.charCodeAt(t),n===0||j(n)))}d(Rn,`testDocumentSeparator`);function zn(e,t){t===1?e.result+=` `:t>1&&(e.result+=T.repeat(`
11
+ `,t-1))}d(zn,`writeFoldedLines`);function Bn(e,t,n){var r,i,a,o,s,c,l,u,d=e.kind,f=e.result,p=e.input.charCodeAt(e.position);if(j(p)||Sn(p)||p===35||p===38||p===42||p===33||p===124||p===62||p===39||p===34||p===37||p===64||p===96||(p===63||p===45)&&(i=e.input.charCodeAt(e.position+1),j(i)||n&&Sn(i)))return!1;for(e.kind=`scalar`,e.result=``,a=o=e.position,s=!1;p!==0;){if(p===58){if(i=e.input.charCodeAt(e.position+1),j(i)||n&&Sn(i))break}else if(p===35){if(r=e.input.charCodeAt(e.position-1),j(r))break}else if(e.position===e.lineStart&&Rn(e)||n&&Sn(p))break;else if(k(p))if(c=e.line,l=e.lineStart,u=e.lineIndent,P(e,!1,-1),e.lineIndent>=t){s=!0,p=e.input.charCodeAt(e.position);continue}else{e.position=o,e.line=c,e.lineStart=l,e.lineIndent=u;break}s&&=(N(e,a,o,!1),zn(e,e.line-c),a=o=e.position,!1),A(p)||(o=e.position+1),p=e.input.charCodeAt(++e.position)}return N(e,a,o,!1),e.result?!0:(e.kind=d,e.result=f,!1)}d(Bn,`readPlainScalar`);function Vn(e,t){var n=e.input.charCodeAt(e.position),r,i;if(n!==39)return!1;for(e.kind=`scalar`,e.result=``,e.position++,r=i=e.position;(n=e.input.charCodeAt(e.position))!==0;)if(n===39)if(N(e,r,e.position,!0),n=e.input.charCodeAt(++e.position),n===39)r=e.position,e.position++,i=e.position;else return!0;else k(n)?(N(e,r,i,!0),zn(e,P(e,!1,t)),r=i=e.position):e.position===e.lineStart&&Rn(e)?M(e,`unexpected end of the document within a single quoted scalar`):(e.position++,i=e.position);M(e,`unexpected end of the stream within a single quoted scalar`)}d(Vn,`readSingleQuotedScalar`);function Hn(e,t){var n,r,i,a,o,s=e.input.charCodeAt(e.position);if(s!==34)return!1;for(e.kind=`scalar`,e.result=``,e.position++,n=r=e.position;(s=e.input.charCodeAt(e.position))!==0;)if(s===34)return N(e,n,e.position,!0),e.position++,!0;else if(s===92){if(N(e,n,e.position,!0),s=e.input.charCodeAt(++e.position),k(s))P(e,!1,t);else if(s<256&&On[s])e.result+=kn[s],e.position++;else if((o=wn(s))>0){for(i=o,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(o=Cn(s))>=0?a=(a<<4)+o:M(e,`expected hexadecimal character`);e.result+=Dn(a),e.position++}else M(e,`unknown escape sequence`);n=r=e.position}else k(s)?(N(e,n,r,!0),zn(e,P(e,!1,t)),n=r=e.position):e.position===e.lineStart&&Rn(e)?M(e,`unexpected end of the document within a double quoted scalar`):(e.position++,r=e.position);M(e,`unexpected end of the stream within a double quoted scalar`)}d(Hn,`readDoubleQuotedScalar`);function Un(e,t){var n=!0,r,i,a,o=e.tag,s,c=e.anchor,l,u,d,f,p,m=Object.create(null),h,g,_,v=e.input.charCodeAt(e.position);if(v===91)u=93,p=!1,s=[];else if(v===123)u=125,p=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),v=e.input.charCodeAt(++e.position);v!==0;){if(P(e,!0,t),v=e.input.charCodeAt(e.position),v===u)return e.position++,e.tag=o,e.anchor=c,e.kind=p?`mapping`:`sequence`,e.result=s,!0;n?v===44&&M(e,`expected the node content, but found ','`):M(e,`missed comma between flow collection entries`),g=h=_=null,d=f=!1,v===63&&(l=e.input.charCodeAt(e.position+1),j(l)&&(d=f=!0,e.position++,P(e,!0,t))),r=e.line,i=e.lineStart,a=e.position,Xn(e,t,ln,!1,!0),g=e.tag,h=e.result,P(e,!0,t),v=e.input.charCodeAt(e.position),(f||e.line===r)&&v===58&&(d=!0,v=e.input.charCodeAt(++e.position),P(e,!0,t),Xn(e,t,ln,!1,!0),_=e.result),p?In(e,s,m,g,h,_,r,i,a):d?s.push(In(e,null,m,g,h,_,r,i,a)):s.push(h),P(e,!0,t),v=e.input.charCodeAt(e.position),v===44?(n=!0,v=e.input.charCodeAt(++e.position)):n=!1}M(e,`unexpected end of the stream within a flow collection`)}d(Un,`readFlowCollection`);function Wn(e,t){var n,r,i=pn,a=!1,o=!1,s=t,c=0,l=!1,u,d=e.input.charCodeAt(e.position);if(d===124)r=!1;else if(d===62)r=!0;else return!1;for(e.kind=`scalar`,e.result=``;d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)pn===i?i=d===43?hn:mn:M(e,`repeat of a chomping mode identifier`);else if((u=Tn(d))>=0)u===0?M(e,`bad explicit indentation width of a block scalar; it cannot be less than one`):o?M(e,`repeat of an indentation width identifier`):(s=t+u-1,o=!0);else break;if(A(d)){do d=e.input.charCodeAt(++e.position);while(A(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!k(d)&&d!==0)}for(;d!==0;){for(Ln(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!o||e.lineIndent<s)&&d===32;)e.lineIndent++,d=e.input.charCodeAt(++e.position);if(!o&&e.lineIndent>s&&(s=e.lineIndent),k(d)){c++;continue}if(e.lineIndent<s){i===hn?e.result+=T.repeat(`
12
12
  `,a?1+c:c):i===pn&&a&&(e.result+=`
13
- `);break}for(r?A(d)?(l=!0,e.result+=E.repeat(`
14
- `,a?1+c:c)):l?(l=!1,e.result+=E.repeat(`
15
- `,c+1)):c===0?a&&(e.result+=` `):e.result+=E.repeat(`
16
- `,c):e.result+=E.repeat(`
17
- `,a?1+c:c),a=!0,o=!0,c=0,n=e.position;!k(d)&&d!==0;)d=e.input.charCodeAt(++e.position);N(e,n,e.position,!1)}return!0}d(Wn,`readBlockScalar`);function Gn(e,t){var n,r=e.tag,i=e.anchor,a=[],o,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,M(e,`tab characters must not be used in indentation`)),!(c!==45||(o=e.input.charCodeAt(e.position+1),!j(o))));){if(s=!0,e.position++,P(e,!0,-1)&&e.lineIndent<=t){a.push(null),c=e.input.charCodeAt(e.position);continue}if(n=e.line,Xn(e,t,dn,!1,!0),a.push(e.result),P(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===n||e.lineIndent>t)&&c!==0)M(e,`bad indentation of a sequence entry`);else if(e.lineIndent<t)break}return s?(e.tag=r,e.anchor=i,e.kind=`sequence`,e.result=a,!0):!1}d(Gn,`readBlockSequence`);function Kn(e,t,n){var r,i,a,o,s,c,l=e.tag,u=e.anchor,d={},f=Object.create(null),p=null,m=null,h=null,g=!1,_=!1,v;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=d),v=e.input.charCodeAt(e.position);v!==0;){if(!g&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,M(e,`tab characters must not be used in indentation`)),r=e.input.charCodeAt(e.position+1),a=e.line,(v===63||v===58)&&j(r))v===63?(g&&(In(e,d,f,p,m,null,o,s,c),p=m=h=null),_=!0,g=!0,i=!0):g?(g=!1,i=!0):M(e,`incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line`),e.position+=1,v=r;else{if(o=e.line,s=e.lineStart,c=e.position,!Xn(e,n,un,!1,!0))break;if(e.line===a){for(v=e.input.charCodeAt(e.position);A(v);)v=e.input.charCodeAt(++e.position);if(v===58)v=e.input.charCodeAt(++e.position),j(v)||M(e,`a whitespace character is expected after the key-value separator within a block mapping`),g&&(In(e,d,f,p,m,null,o,s,c),p=m=h=null),_=!0,g=!1,i=!1,p=e.tag,m=e.result;else if(_)M(e,`can not read an implicit mapping pair; a colon is missed`);else return e.tag=l,e.anchor=u,!0}else if(_)M(e,`can not read a block mapping entry; a multiline key may not be an implicit key`);else return e.tag=l,e.anchor=u,!0}if((e.line===a||e.lineIndent>t)&&(g&&(o=e.line,s=e.lineStart,c=e.position),Xn(e,t,fn,!0,i)&&(g?m=e.result:h=e.result),g||(In(e,d,f,p,m,h,o,s,c),p=m=h=null),P(e,!0,-1),v=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>t)&&v!==0)M(e,`bad indentation of a mapping entry`);else if(e.lineIndent<t)break}return g&&In(e,d,f,p,m,null,o,s,c),_&&(e.tag=l,e.anchor=u,e.kind=`mapping`,e.result=d),_}d(Kn,`readBlockMapping`);function qn(e){var t,n=!1,r=!1,i,a,o=e.input.charCodeAt(e.position);if(o!==33)return!1;if(e.tag!==null&&M(e,`duplication of a tag property`),o=e.input.charCodeAt(++e.position),o===60?(n=!0,o=e.input.charCodeAt(++e.position)):o===33?(r=!0,i=`!!`,o=e.input.charCodeAt(++e.position)):i=`!`,t=e.position,n){do o=e.input.charCodeAt(++e.position);while(o!==0&&o!==62);e.position<e.length?(a=e.input.slice(t,e.position),o=e.input.charCodeAt(++e.position)):M(e,`unexpected end of the stream within a verbatim tag`)}else{for(;o!==0&&!j(o);)o===33&&(r?M(e,`tag suffix cannot contain exclamation marks`):(i=e.input.slice(t-1,e.position+1),yn.test(i)||M(e,`named tag handle cannot contain such characters`),r=!0,t=e.position+1)),o=e.input.charCodeAt(++e.position);a=e.input.slice(t,e.position),vn.test(a)&&M(e,`tag suffix cannot contain flow indicator characters`)}a&&!bn.test(a)&&M(e,`tag name cannot contain such characters: `+a);try{a=decodeURIComponent(a)}catch{M(e,`tag name is malformed: `+a)}return n?e.tag=a:cn.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i===`!`?e.tag=`!`+a:i===`!!`?e.tag=`tag:yaml.org,2002:`+a:M(e,`undeclared tag handle "`+i+`"`),!0}d(qn,`readTagProperty`);function Jn(e){var t,n=e.input.charCodeAt(e.position);if(n!==38)return!1;for(e.anchor!==null&&M(e,`duplication of an anchor property`),n=e.input.charCodeAt(++e.position),t=e.position;n!==0&&!j(n)&&!Sn(n);)n=e.input.charCodeAt(++e.position);return e.position===t&&M(e,`name of an anchor node must contain at least one character`),e.anchor=e.input.slice(t,e.position),!0}d(Jn,`readAnchorProperty`);function Yn(e){var t,n,r=e.input.charCodeAt(e.position);if(r!==42)return!1;for(r=e.input.charCodeAt(++e.position),t=e.position;r!==0&&!j(r)&&!Sn(r);)r=e.input.charCodeAt(++e.position);return e.position===t&&M(e,`name of an alias node must contain at least one character`),n=e.input.slice(t,e.position),cn.call(e.anchorMap,n)||M(e,`unidentified alias "`+n+`"`),e.result=e.anchorMap[n],P(e,!0,-1),!0}d(Yn,`readAlias`);function Xn(e,t,n,r,i){var a,o,s,c=1,l=!1,u=!1,d,f,p,m,h,g;if(e.listener!==null&&e.listener(`open`,e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=o=s=fn===n||dn===n,r&&P(e,!0,-1)&&(l=!0,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)),c===1)for(;qn(e)||Jn(e);)P(e,!0,-1)?(l=!0,s=a,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)):s=!1;if(s&&=l||i,(c===1||fn===n)&&(h=ln===n||un===n?t:t+1,g=e.position-e.lineStart,c===1?s&&(Gn(e,g)||Kn(e,g,h))||Un(e,h)?u=!0:(o&&Wn(e,h)||Vn(e,h)||Hn(e,h)?u=!0:Yn(e)?(u=!0,(e.tag!==null||e.anchor!==null)&&M(e,`alias node should not have any properties`)):Bn(e,h,ln===n)&&(u=!0,e.tag===null&&(e.tag=`?`)),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(u=s&&Gn(e,g))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag===`?`){for(e.result!==null&&e.kind!==`scalar`&&M(e,`unacceptable node kind for !<?> tag; it should be "scalar", not "`+e.kind+`"`),d=0,f=e.implicitTypes.length;d<f;d+=1)if(m=e.implicitTypes[d],m.resolve(e.result)){e.result=m.construct(e.result),e.tag=m.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!==`!`){if(cn.call(e.typeMap[e.kind||`fallback`],e.tag))m=e.typeMap[e.kind||`fallback`][e.tag];else for(m=null,p=e.typeMap.multi[e.kind||`fallback`],d=0,f=p.length;d<f;d+=1)if(e.tag.slice(0,p[d].tag.length)===p[d].tag){m=p[d];break}m||M(e,`unknown tag !<`+e.tag+`>`),e.result!==null&&m.kind!==e.kind&&M(e,`unacceptable node kind for !<`+e.tag+`> tag; it should be "`+m.kind+`", not "`+e.kind+`"`),m.resolve(e.result,e.tag)?(e.result=m.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):M(e,`cannot resolve a node with !<`+e.tag+`> explicit tag`)}return e.listener!==null&&e.listener(`close`,e),e.tag!==null||e.anchor!==null||u}d(Xn,`composeNode`);function Zn(e){var t=e.position,n,r,i,a=!1,o;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(o=e.input.charCodeAt(e.position))!==0&&(P(e,!0,-1),o=e.input.charCodeAt(e.position),!(e.lineIndent>0||o!==37));){for(a=!0,o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!j(o);)o=e.input.charCodeAt(++e.position);for(r=e.input.slice(n,e.position),i=[],r.length<1&&M(e,`directive name must not be less than one character in length`);o!==0;){for(;A(o);)o=e.input.charCodeAt(++e.position);if(o===35){do o=e.input.charCodeAt(++e.position);while(o!==0&&!k(o));break}if(k(o))break;for(n=e.position;o!==0&&!j(o);)o=e.input.charCodeAt(++e.position);i.push(e.input.slice(n,e.position))}o!==0&&Ln(e),cn.call(Pn,r)?Pn[r](e,r,i):Nn(e,`unknown document directive "`+r+`"`)}if(P(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,P(e,!0,-1)):a&&M(e,`directives end mark is expected`),Xn(e,e.lineIndent-1,fn,!1,!0),P(e,!0,-1),e.checkLineBreaks&&_n.test(e.input.slice(t,e.position))&&Nn(e,`non-ASCII line breaks are interpreted as content`),e.documents.push(e.result),e.position===e.lineStart&&Rn(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,P(e,!0,-1));return}if(e.position<e.length-1)M(e,`end of the stream or a document separator is expected`);else return}d(Zn,`readDocument`);function Qn(e,t){e=String(e),t||={},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
18
- `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var n=new jn(e,t),r=e.indexOf(`\0`);for(r!==-1&&(n.position=r,M(n,`null byte is not allowed in input`)),n.input+=`\0`;n.input.charCodeAt(n.position)===32;)n.lineIndent+=1,n.position+=1;for(;n.position<n.length-1;)Zn(n);return n.documents}d(Qn,`loadDocuments`);function $n(e,t,n){typeof t==`object`&&t&&n===void 0&&(n=t,t=null);var r=Qn(e,n);if(typeof t!=`function`)return r;for(var i=0,a=r.length;i<a;i+=1)t(r[i])}d($n,`loadAll$1`);function er(e,t){var n=Qn(e,t);if(n.length!==0){if(n.length===1)return n[0];throw new D(`expected a single document in the stream, but found more`)}}d(er,`load$1`);var tr={loadAll:$n,load:er},nr=Object.prototype.toString,rr=Object.prototype.hasOwnProperty,ir=65279,ar=9,or=10,sr=13,cr=32,lr=33,ur=34,dr=35,fr=37,pr=38,mr=39,hr=42,gr=44,_r=45,vr=58,yr=61,br=62,xr=63,Sr=64,Cr=91,wr=93,Tr=96,Er=123,Dr=124,Or=125,F={};F[0]=`\\0`,F[7]=`\\a`,F[8]=`\\b`,F[9]=`\\t`,F[10]=`\\n`,F[11]=`\\v`,F[12]=`\\f`,F[13]=`\\r`,F[27]=`\\e`,F[34]=`\\"`,F[92]=`\\\\`,F[133]=`\\N`,F[160]=`\\_`,F[8232]=`\\L`,F[8233]=`\\P`;var kr=[`y`,`Y`,`yes`,`Yes`,`YES`,`on`,`On`,`ON`,`n`,`N`,`no`,`No`,`NO`,`off`,`Off`,`OFF`],Ar=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function jr(e,t){var n,r,i,a,o,s,c;if(t===null)return{};for(n={},r=Object.keys(t),i=0,a=r.length;i<a;i+=1)o=r[i],s=String(t[o]),o.slice(0,2)===`!!`&&(o=`tag:yaml.org,2002:`+o.slice(2)),c=e.compiledTypeMap.fallback[o],c&&rr.call(c.styleAliases,s)&&(s=c.styleAliases[s]),n[o]=s;return n}d(jr,`compileStyleMap`);function Mr(e){var t=e.toString(16).toUpperCase(),n,r;if(e<=255)n=`x`,r=2;else if(e<=65535)n=`u`,r=4;else if(e<=4294967295)n=`U`,r=8;else throw new D(`code point within a string may not be greater than 0xFFFFFFFF`);return`\\`+n+E.repeat(`0`,r-t.length)+t}d(Mr,`encodeHex`);var Nr=1,Pr=2;function Fr(e){this.schema=e.schema||sn,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=E.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=jr(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType===`"`?Pr:Nr,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer==`function`?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result=``,this.duplicates=[],this.usedDuplicates=null}d(Fr,`State`);function Ir(e,t){for(var n=E.repeat(` `,t),r=0,i=-1,a=``,o,s=e.length;r<s;)i=e.indexOf(`
13
+ `);break}for(r?A(d)?(l=!0,e.result+=T.repeat(`
14
+ `,a?1+c:c)):l?(l=!1,e.result+=T.repeat(`
15
+ `,c+1)):c===0?a&&(e.result+=` `):e.result+=T.repeat(`
16
+ `,c):e.result+=T.repeat(`
17
+ `,a?1+c:c),a=!0,o=!0,c=0,n=e.position;!k(d)&&d!==0;)d=e.input.charCodeAt(++e.position);N(e,n,e.position,!1)}return!0}d(Wn,`readBlockScalar`);function Gn(e,t){var n,r=e.tag,i=e.anchor,a=[],o,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,M(e,`tab characters must not be used in indentation`)),!(c!==45||(o=e.input.charCodeAt(e.position+1),!j(o))));){if(s=!0,e.position++,P(e,!0,-1)&&e.lineIndent<=t){a.push(null),c=e.input.charCodeAt(e.position);continue}if(n=e.line,Xn(e,t,dn,!1,!0),a.push(e.result),P(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===n||e.lineIndent>t)&&c!==0)M(e,`bad indentation of a sequence entry`);else if(e.lineIndent<t)break}return s?(e.tag=r,e.anchor=i,e.kind=`sequence`,e.result=a,!0):!1}d(Gn,`readBlockSequence`);function Kn(e,t,n){var r,i,a,o,s,c,l=e.tag,u=e.anchor,d={},f=Object.create(null),p=null,m=null,h=null,g=!1,_=!1,v;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=d),v=e.input.charCodeAt(e.position);v!==0;){if(!g&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,M(e,`tab characters must not be used in indentation`)),r=e.input.charCodeAt(e.position+1),a=e.line,(v===63||v===58)&&j(r))v===63?(g&&(In(e,d,f,p,m,null,o,s,c),p=m=h=null),_=!0,g=!0,i=!0):g?(g=!1,i=!0):M(e,`incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line`),e.position+=1,v=r;else{if(o=e.line,s=e.lineStart,c=e.position,!Xn(e,n,un,!1,!0))break;if(e.line===a){for(v=e.input.charCodeAt(e.position);A(v);)v=e.input.charCodeAt(++e.position);if(v===58)v=e.input.charCodeAt(++e.position),j(v)||M(e,`a whitespace character is expected after the key-value separator within a block mapping`),g&&(In(e,d,f,p,m,null,o,s,c),p=m=h=null),_=!0,g=!1,i=!1,p=e.tag,m=e.result;else if(_)M(e,`can not read an implicit mapping pair; a colon is missed`);else return e.tag=l,e.anchor=u,!0}else if(_)M(e,`can not read a block mapping entry; a multiline key may not be an implicit key`);else return e.tag=l,e.anchor=u,!0}if((e.line===a||e.lineIndent>t)&&(g&&(o=e.line,s=e.lineStart,c=e.position),Xn(e,t,fn,!0,i)&&(g?m=e.result:h=e.result),g||(In(e,d,f,p,m,h,o,s,c),p=m=h=null),P(e,!0,-1),v=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>t)&&v!==0)M(e,`bad indentation of a mapping entry`);else if(e.lineIndent<t)break}return g&&In(e,d,f,p,m,null,o,s,c),_&&(e.tag=l,e.anchor=u,e.kind=`mapping`,e.result=d),_}d(Kn,`readBlockMapping`);function qn(e){var t,n=!1,r=!1,i,a,o=e.input.charCodeAt(e.position);if(o!==33)return!1;if(e.tag!==null&&M(e,`duplication of a tag property`),o=e.input.charCodeAt(++e.position),o===60?(n=!0,o=e.input.charCodeAt(++e.position)):o===33?(r=!0,i=`!!`,o=e.input.charCodeAt(++e.position)):i=`!`,t=e.position,n){do o=e.input.charCodeAt(++e.position);while(o!==0&&o!==62);e.position<e.length?(a=e.input.slice(t,e.position),o=e.input.charCodeAt(++e.position)):M(e,`unexpected end of the stream within a verbatim tag`)}else{for(;o!==0&&!j(o);)o===33&&(r?M(e,`tag suffix cannot contain exclamation marks`):(i=e.input.slice(t-1,e.position+1),yn.test(i)||M(e,`named tag handle cannot contain such characters`),r=!0,t=e.position+1)),o=e.input.charCodeAt(++e.position);a=e.input.slice(t,e.position),vn.test(a)&&M(e,`tag suffix cannot contain flow indicator characters`)}a&&!bn.test(a)&&M(e,`tag name cannot contain such characters: `+a);try{a=decodeURIComponent(a)}catch{M(e,`tag name is malformed: `+a)}return n?e.tag=a:O.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i===`!`?e.tag=`!`+a:i===`!!`?e.tag=`tag:yaml.org,2002:`+a:M(e,`undeclared tag handle "`+i+`"`),!0}d(qn,`readTagProperty`);function Jn(e){var t,n=e.input.charCodeAt(e.position);if(n!==38)return!1;for(e.anchor!==null&&M(e,`duplication of an anchor property`),n=e.input.charCodeAt(++e.position),t=e.position;n!==0&&!j(n)&&!Sn(n);)n=e.input.charCodeAt(++e.position);return e.position===t&&M(e,`name of an anchor node must contain at least one character`),e.anchor=e.input.slice(t,e.position),!0}d(Jn,`readAnchorProperty`);function Yn(e){var t,n,r=e.input.charCodeAt(e.position);if(r!==42)return!1;for(r=e.input.charCodeAt(++e.position),t=e.position;r!==0&&!j(r)&&!Sn(r);)r=e.input.charCodeAt(++e.position);return e.position===t&&M(e,`name of an alias node must contain at least one character`),n=e.input.slice(t,e.position),O.call(e.anchorMap,n)||M(e,`unidentified alias "`+n+`"`),e.result=e.anchorMap[n],P(e,!0,-1),!0}d(Yn,`readAlias`);function Xn(e,t,n,r,i){var a,o,s,c=1,l=!1,u=!1,d,f,p,m,h,g;if(e.listener!==null&&e.listener(`open`,e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=o=s=fn===n||dn===n,r&&P(e,!0,-1)&&(l=!0,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)),c===1)for(;qn(e)||Jn(e);)P(e,!0,-1)?(l=!0,s=a,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)):s=!1;if(s&&=l||i,(c===1||fn===n)&&(h=ln===n||un===n?t:t+1,g=e.position-e.lineStart,c===1?s&&(Gn(e,g)||Kn(e,g,h))||Un(e,h)?u=!0:(o&&Wn(e,h)||Vn(e,h)||Hn(e,h)?u=!0:Yn(e)?(u=!0,(e.tag!==null||e.anchor!==null)&&M(e,`alias node should not have any properties`)):Bn(e,h,ln===n)&&(u=!0,e.tag===null&&(e.tag=`?`)),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(u=s&&Gn(e,g))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag===`?`){for(e.result!==null&&e.kind!==`scalar`&&M(e,`unacceptable node kind for !<?> tag; it should be "scalar", not "`+e.kind+`"`),d=0,f=e.implicitTypes.length;d<f;d+=1)if(m=e.implicitTypes[d],m.resolve(e.result)){e.result=m.construct(e.result),e.tag=m.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!==`!`){if(O.call(e.typeMap[e.kind||`fallback`],e.tag))m=e.typeMap[e.kind||`fallback`][e.tag];else for(m=null,p=e.typeMap.multi[e.kind||`fallback`],d=0,f=p.length;d<f;d+=1)if(e.tag.slice(0,p[d].tag.length)===p[d].tag){m=p[d];break}m||M(e,`unknown tag !<`+e.tag+`>`),e.result!==null&&m.kind!==e.kind&&M(e,`unacceptable node kind for !<`+e.tag+`> tag; it should be "`+m.kind+`", not "`+e.kind+`"`),m.resolve(e.result,e.tag)?(e.result=m.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):M(e,`cannot resolve a node with !<`+e.tag+`> explicit tag`)}return e.listener!==null&&e.listener(`close`,e),e.tag!==null||e.anchor!==null||u}d(Xn,`composeNode`);function Zn(e){var t=e.position,n,r,i,a=!1,o;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(o=e.input.charCodeAt(e.position))!==0&&(P(e,!0,-1),o=e.input.charCodeAt(e.position),!(e.lineIndent>0||o!==37));){for(a=!0,o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!j(o);)o=e.input.charCodeAt(++e.position);for(r=e.input.slice(n,e.position),i=[],r.length<1&&M(e,`directive name must not be less than one character in length`);o!==0;){for(;A(o);)o=e.input.charCodeAt(++e.position);if(o===35){do o=e.input.charCodeAt(++e.position);while(o!==0&&!k(o));break}if(k(o))break;for(n=e.position;o!==0&&!j(o);)o=e.input.charCodeAt(++e.position);i.push(e.input.slice(n,e.position))}o!==0&&Ln(e),O.call(Pn,r)?Pn[r](e,r,i):Nn(e,`unknown document directive "`+r+`"`)}if(P(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,P(e,!0,-1)):a&&M(e,`directives end mark is expected`),Xn(e,e.lineIndent-1,fn,!1,!0),P(e,!0,-1),e.checkLineBreaks&&_n.test(e.input.slice(t,e.position))&&Nn(e,`non-ASCII line breaks are interpreted as content`),e.documents.push(e.result),e.position===e.lineStart&&Rn(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,P(e,!0,-1));return}if(e.position<e.length-1)M(e,`end of the stream or a document separator is expected`);else return}d(Zn,`readDocument`);function Qn(e,t){e=String(e),t||={},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
18
+ `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var n=new jn(e,t),r=e.indexOf(`\0`);for(r!==-1&&(n.position=r,M(n,`null byte is not allowed in input`)),n.input+=`\0`;n.input.charCodeAt(n.position)===32;)n.lineIndent+=1,n.position+=1;for(;n.position<n.length-1;)Zn(n);return n.documents}d(Qn,`loadDocuments`);function $n(e,t,n){typeof t==`object`&&t&&n===void 0&&(n=t,t=null);var r=Qn(e,n);if(typeof t!=`function`)return r;for(var i=0,a=r.length;i<a;i+=1)t(r[i])}d($n,`loadAll$1`);function er(e,t){var n=Qn(e,t);if(n.length!==0){if(n.length===1)return n[0];throw new E(`expected a single document in the stream, but found more`)}}d(er,`load$1`);var tr={loadAll:$n,load:er},nr=Object.prototype.toString,rr=Object.prototype.hasOwnProperty,ir=65279,ar=9,or=10,sr=13,cr=32,lr=33,ur=34,dr=35,fr=37,pr=38,mr=39,hr=42,gr=44,_r=45,vr=58,yr=61,br=62,xr=63,Sr=64,Cr=91,wr=93,Tr=96,Er=123,Dr=124,Or=125,F={};F[0]=`\\0`,F[7]=`\\a`,F[8]=`\\b`,F[9]=`\\t`,F[10]=`\\n`,F[11]=`\\v`,F[12]=`\\f`,F[13]=`\\r`,F[27]=`\\e`,F[34]=`\\"`,F[92]=`\\\\`,F[133]=`\\N`,F[160]=`\\_`,F[8232]=`\\L`,F[8233]=`\\P`;var kr=[`y`,`Y`,`yes`,`Yes`,`YES`,`on`,`On`,`ON`,`n`,`N`,`no`,`No`,`NO`,`off`,`Off`,`OFF`],Ar=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function jr(e,t){var n,r,i,a,o,s,c;if(t===null)return{};for(n={},r=Object.keys(t),i=0,a=r.length;i<a;i+=1)o=r[i],s=String(t[o]),o.slice(0,2)===`!!`&&(o=`tag:yaml.org,2002:`+o.slice(2)),c=e.compiledTypeMap.fallback[o],c&&rr.call(c.styleAliases,s)&&(s=c.styleAliases[s]),n[o]=s;return n}d(jr,`compileStyleMap`);function Mr(e){var t=e.toString(16).toUpperCase(),n,r;if(e<=255)n=`x`,r=2;else if(e<=65535)n=`u`,r=4;else if(e<=4294967295)n=`U`,r=8;else throw new E(`code point within a string may not be greater than 0xFFFFFFFF`);return`\\`+n+T.repeat(`0`,r-t.length)+t}d(Mr,`encodeHex`);var Nr=1,Pr=2;function Fr(e){this.schema=e.schema||cn,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=T.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=jr(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType===`"`?Pr:Nr,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer==`function`?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result=``,this.duplicates=[],this.usedDuplicates=null}d(Fr,`State`);function Ir(e,t){for(var n=T.repeat(` `,t),r=0,i=-1,a=``,o,s=e.length;r<s;)i=e.indexOf(`
19
19
  `,r),i===-1?(o=e.slice(r),r=s):(o=e.slice(r,i+1),r=i+1),o.length&&o!==`
20
20
  `&&(a+=n),a+=o;return a}d(Ir,`indentString`);function Lr(e,t){return`
21
- `+E.repeat(` `,e.indent*t)}d(Lr,`generateNextLine`);function Rr(e,t){var n,r,i;for(n=0,r=e.implicitTypes.length;n<r;n+=1)if(i=e.implicitTypes[n],i.resolve(t))return!0;return!1}d(Rr,`testImplicitResolving`);function zr(e){return e===cr||e===ar}d(zr,`isWhitespace`);function Br(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==ir||65536<=e&&e<=1114111}d(Br,`isPrintable`);function Vr(e){return Br(e)&&e!==ir&&e!==sr&&e!==or}d(Vr,`isNsCharOrWhitespace`);function Hr(e,t,n){var r=Vr(e),i=r&&!zr(e);return(n?r:r&&e!==gr&&e!==Cr&&e!==wr&&e!==Er&&e!==Or)&&e!==dr&&!(t===vr&&!i)||Vr(t)&&!zr(t)&&e===dr||t===vr&&i}d(Hr,`isPlainSafe`);function Ur(e){return Br(e)&&e!==ir&&!zr(e)&&e!==_r&&e!==xr&&e!==vr&&e!==gr&&e!==Cr&&e!==wr&&e!==Er&&e!==Or&&e!==dr&&e!==pr&&e!==hr&&e!==lr&&e!==Dr&&e!==yr&&e!==br&&e!==mr&&e!==ur&&e!==fr&&e!==Sr&&e!==Tr}d(Ur,`isPlainSafeFirst`);function Wr(e){return!zr(e)&&e!==vr}d(Wr,`isPlainSafeLast`);function Gr(e,t){var n=e.charCodeAt(t),r;return n>=55296&&n<=56319&&t+1<e.length&&(r=e.charCodeAt(t+1),r>=56320&&r<=57343)?(n-55296)*1024+r-56320+65536:n}d(Gr,`codePointAt`);function Kr(e){return/^\n* /.test(e)}d(Kr,`needIndentIndicator`);var qr=1,Jr=2,Yr=3,Xr=4,Zr=5;function Qr(e,t,n,r,i,a,o,s){var c,l=0,u=null,d=!1,f=!1,p=r!==-1,m=-1,h=Ur(Gr(e,0))&&Wr(Gr(e,e.length-1));if(t||o)for(c=0;c<e.length;l>=65536?c+=2:c++){if(l=Gr(e,c),!Br(l))return Zr;h&&=Hr(l,u,s),u=l}else{for(c=0;c<e.length;l>=65536?c+=2:c++){if(l=Gr(e,c),l===or)d=!0,p&&(f||=c-m-1>r&&e[m+1]!==` `,m=c);else if(!Br(l))return Zr;h&&=Hr(l,u,s),u=l}f||=p&&c-m-1>r&&e[m+1]!==` `}return!d&&!f?h&&!o&&!i(e)?qr:a===Pr?Zr:Jr:n>9&&Kr(e)?Zr:o?a===Pr?Zr:Jr:f?Xr:Yr}d(Qr,`chooseScalarStyle`);function $r(e,t,n,r,i){e.dump=(function(){if(t.length===0)return e.quotingType===Pr?`""`:`''`;if(!e.noCompatMode&&(kr.indexOf(t)!==-1||Ar.test(t)))return e.quotingType===Pr?`"`+t+`"`:`'`+t+`'`;var a=e.indent*Math.max(1,n),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),s=r||e.flowLevel>-1&&n>=e.flowLevel;function c(t){return Rr(e,t)}switch(d(c,`testAmbiguity`),Qr(t,s,e.indent,o,c,e.quotingType,e.forceQuotes&&!r,i)){case qr:return t;case Jr:return`'`+t.replace(/'/g,`''`)+`'`;case Yr:return`|`+ei(t,e.indent)+ti(Ir(t,a));case Xr:return`>`+ei(t,e.indent)+ti(Ir(ni(t,o),a));case Zr:return`"`+ii(t)+`"`;default:throw new D(`impossible error: invalid scalar style`)}})()}d($r,`writeScalar`);function ei(e,t){var n=Kr(e)?String(t):``,r=e[e.length-1]===`
21
+ `+T.repeat(` `,e.indent*t)}d(Lr,`generateNextLine`);function Rr(e,t){var n,r,i;for(n=0,r=e.implicitTypes.length;n<r;n+=1)if(i=e.implicitTypes[n],i.resolve(t))return!0;return!1}d(Rr,`testImplicitResolving`);function zr(e){return e===cr||e===ar}d(zr,`isWhitespace`);function Br(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==ir||65536<=e&&e<=1114111}d(Br,`isPrintable`);function Vr(e){return Br(e)&&e!==ir&&e!==sr&&e!==or}d(Vr,`isNsCharOrWhitespace`);function Hr(e,t,n){var r=Vr(e),i=r&&!zr(e);return(n?r:r&&e!==gr&&e!==Cr&&e!==wr&&e!==Er&&e!==Or)&&e!==dr&&!(t===vr&&!i)||Vr(t)&&!zr(t)&&e===dr||t===vr&&i}d(Hr,`isPlainSafe`);function Ur(e){return Br(e)&&e!==ir&&!zr(e)&&e!==_r&&e!==xr&&e!==vr&&e!==gr&&e!==Cr&&e!==wr&&e!==Er&&e!==Or&&e!==dr&&e!==pr&&e!==hr&&e!==lr&&e!==Dr&&e!==yr&&e!==br&&e!==mr&&e!==ur&&e!==fr&&e!==Sr&&e!==Tr}d(Ur,`isPlainSafeFirst`);function Wr(e){return!zr(e)&&e!==vr}d(Wr,`isPlainSafeLast`);function Gr(e,t){var n=e.charCodeAt(t),r;return n>=55296&&n<=56319&&t+1<e.length&&(r=e.charCodeAt(t+1),r>=56320&&r<=57343)?(n-55296)*1024+r-56320+65536:n}d(Gr,`codePointAt`);function Kr(e){return/^\n* /.test(e)}d(Kr,`needIndentIndicator`);var qr=1,Jr=2,Yr=3,Xr=4,Zr=5;function Qr(e,t,n,r,i,a,o,s){var c,l=0,u=null,d=!1,f=!1,p=r!==-1,m=-1,h=Ur(Gr(e,0))&&Wr(Gr(e,e.length-1));if(t||o)for(c=0;c<e.length;l>=65536?c+=2:c++){if(l=Gr(e,c),!Br(l))return Zr;h&&=Hr(l,u,s),u=l}else{for(c=0;c<e.length;l>=65536?c+=2:c++){if(l=Gr(e,c),l===or)d=!0,p&&(f||=c-m-1>r&&e[m+1]!==` `,m=c);else if(!Br(l))return Zr;h&&=Hr(l,u,s),u=l}f||=p&&c-m-1>r&&e[m+1]!==` `}return!d&&!f?h&&!o&&!i(e)?qr:a===Pr?Zr:Jr:n>9&&Kr(e)?Zr:o?a===Pr?Zr:Jr:f?Xr:Yr}d(Qr,`chooseScalarStyle`);function $r(e,t,n,r,i){e.dump=(function(){if(t.length===0)return e.quotingType===Pr?`""`:`''`;if(!e.noCompatMode&&(kr.indexOf(t)!==-1||Ar.test(t)))return e.quotingType===Pr?`"`+t+`"`:`'`+t+`'`;var a=e.indent*Math.max(1,n),o=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),s=r||e.flowLevel>-1&&n>=e.flowLevel;function c(t){return Rr(e,t)}switch(d(c,`testAmbiguity`),Qr(t,s,e.indent,o,c,e.quotingType,e.forceQuotes&&!r,i)){case qr:return t;case Jr:return`'`+t.replace(/'/g,`''`)+`'`;case Yr:return`|`+ei(t,e.indent)+ti(Ir(t,a));case Xr:return`>`+ei(t,e.indent)+ti(Ir(ni(t,o),a));case Zr:return`"`+ii(t)+`"`;default:throw new E(`impossible error: invalid scalar style`)}})()}d($r,`writeScalar`);function ei(e,t){var n=Kr(e)?String(t):``,r=e[e.length-1]===`
22
22
  `;return n+(r&&(e[e.length-2]===`
23
23
  `||e===`
24
24
  `)?`+`:r?``:`-`)+`
@@ -29,15 +29,15 @@ import{n as e,r as t,t as n}from"./http-DMvwuuFk.js";import{a as r,c as i,l as a
29
29
  `:``)+ri(c,t),i=a}return r}d(ni,`foldString`);function ri(e,t){if(e===``||e[0]===` `)return e;for(var n=/ [^ ]/g,r,i=0,a,o=0,s=0,c=``;r=n.exec(e);)s=r.index,s-i>t&&(a=o>i?o:s,c+=`
30
30
  `+e.slice(i,a),i=a+1),o=s;return c+=`
31
31
  `,e.length-i>t&&o>i?c+=e.slice(i,o)+`
32
- `+e.slice(o+1):c+=e.slice(i),c.slice(1)}d(ri,`foldLine`);function ii(e){for(var t=``,n=0,r,i=0;i<e.length;n>=65536?i+=2:i++)n=Gr(e,i),r=F[n],!r&&Br(n)?(t+=e[i],n>=65536&&(t+=e[i+1])):t+=r||Mr(n);return t}d(ii,`escapeString`);function ai(e,t,n){var r=``,i=e.tag,a,o,s;for(a=0,o=n.length;a<o;a+=1)s=n[a],e.replacer&&(s=e.replacer.call(n,String(a),s)),(I(e,t,s,!1,!1)||s===void 0&&I(e,t,null,!1,!1))&&(r!==``&&(r+=`,`+(e.condenseFlow?``:` `)),r+=e.dump);e.tag=i,e.dump=`[`+r+`]`}d(ai,`writeFlowSequence`);function oi(e,t,n,r){var i=``,a=e.tag,o,s,c;for(o=0,s=n.length;o<s;o+=1)c=n[o],e.replacer&&(c=e.replacer.call(n,String(o),c)),(I(e,t+1,c,!0,!0,!1,!0)||c===void 0&&I(e,t+1,null,!0,!0,!1,!0))&&((!r||i!==``)&&(i+=Lr(e,t)),e.dump&&or===e.dump.charCodeAt(0)?i+=`-`:i+=`- `,i+=e.dump);e.tag=a,e.dump=i||`[]`}d(oi,`writeBlockSequence`);function si(e,t,n){var r=``,i=e.tag,a=Object.keys(n),o,s,c,l,u;for(o=0,s=a.length;o<s;o+=1)u=``,r!==``&&(u+=`, `),e.condenseFlow&&(u+=`"`),c=a[o],l=n[c],e.replacer&&(l=e.replacer.call(n,c,l)),I(e,t,c,!1,!1)&&(e.dump.length>1024&&(u+=`? `),u+=e.dump+(e.condenseFlow?`"`:``)+`:`+(e.condenseFlow?``:` `),I(e,t,l,!1,!1)&&(u+=e.dump,r+=u));e.tag=i,e.dump=`{`+r+`}`}d(si,`writeFlowMapping`);function ci(e,t,n,r){var i=``,a=e.tag,o=Object.keys(n),s,c,l,u,d,f;if(e.sortKeys===!0)o.sort();else if(typeof e.sortKeys==`function`)o.sort(e.sortKeys);else if(e.sortKeys)throw new D(`sortKeys must be a boolean or a function`);for(s=0,c=o.length;s<c;s+=1)f=``,(!r||i!==``)&&(f+=Lr(e,t)),l=o[s],u=n[l],e.replacer&&(u=e.replacer.call(n,l,u)),I(e,t+1,l,!0,!0,!0)&&(d=e.tag!==null&&e.tag!==`?`||e.dump&&e.dump.length>1024,d&&(e.dump&&or===e.dump.charCodeAt(0)?f+=`?`:f+=`? `),f+=e.dump,d&&(f+=Lr(e,t)),I(e,t+1,u,!0,d)&&(e.dump&&or===e.dump.charCodeAt(0)?f+=`:`:f+=`: `,f+=e.dump,i+=f));e.tag=a,e.dump=i||`{}`}d(ci,`writeBlockMapping`);function li(e,t,n){var r,i=n?e.explicitTypes:e.implicitTypes,a,o,s,c;for(a=0,o=i.length;a<o;a+=1)if(s=i[a],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof t==`object`&&t instanceof s.instanceOf)&&(!s.predicate||s.predicate(t))){if(n?s.multi&&s.representName?e.tag=s.representName(t):e.tag=s.tag:e.tag=`?`,s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,nr.call(s.represent)===`[object Function]`)r=s.represent(t,c);else if(rr.call(s.represent,c))r=s.represent[c](t,c);else throw new D(`!<`+s.tag+`> tag resolver accepts not "`+c+`" style`);e.dump=r}return!0}return!1}d(li,`detectType`);function I(e,t,n,r,i,a,o){e.tag=null,e.dump=n,li(e,n,!1)||li(e,n,!0);var s=nr.call(e.dump),c=r,l;r&&=e.flowLevel<0||e.flowLevel>t;var u=s===`[object Object]`||s===`[object Array]`,d,f;if(u&&(d=e.duplicates.indexOf(n),f=d!==-1),(e.tag!==null&&e.tag!==`?`||f||e.indent!==2&&t>0)&&(i=!1),f&&e.usedDuplicates[d])e.dump=`*ref_`+d;else{if(u&&f&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),s===`[object Object]`)r&&Object.keys(e.dump).length!==0?(ci(e,t,e.dump,i),f&&(e.dump=`&ref_`+d+e.dump)):(si(e,t,e.dump),f&&(e.dump=`&ref_`+d+` `+e.dump));else if(s===`[object Array]`)r&&e.dump.length!==0?(e.noArrayIndent&&!o&&t>0?oi(e,t-1,e.dump,i):oi(e,t,e.dump,i),f&&(e.dump=`&ref_`+d+e.dump)):(ai(e,t,e.dump),f&&(e.dump=`&ref_`+d+` `+e.dump));else if(s===`[object String]`)e.tag!==`?`&&$r(e,e.dump,t,a,c);else if(s===`[object Undefined]`)return!1;else{if(e.skipInvalid)return!1;throw new D(`unacceptable kind of an object to dump `+s)}e.tag!==null&&e.tag!==`?`&&(l=encodeURI(e.tag[0]===`!`?e.tag.slice(1):e.tag).replace(/!/g,`%21`),l=e.tag[0]===`!`?`!`+l:l.slice(0,18)===`tag:yaml.org,2002:`?`!!`+l.slice(18):`!<`+l+`>`,e.dump=l+` `+e.dump)}return!0}d(I,`writeNode`);function ui(e,t){var n=[],r=[],i,a;for(di(e,n,r),i=0,a=r.length;i<a;i+=1)t.duplicates.push(n[r[i]]);t.usedDuplicates=Array(a)}d(ui,`getDuplicateReferences`);function di(e,t,n){var r,i,a;if(typeof e==`object`&&e)if(i=t.indexOf(e),i!==-1)n.indexOf(i)===-1&&n.push(i);else if(t.push(e),Array.isArray(e))for(i=0,a=e.length;i<a;i+=1)di(e[i],t,n);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)di(e[r[i]],t,n)}d(di,`inspectNode`);function fi(e,t){t||={};var n=new Fr(t);n.noRefs||ui(e,n);var r=e;return n.replacer&&(r=n.replacer.call({"":r},``,r)),I(n,0,r,!0,!0)?n.dump+`
33
- `:``}d(fi,`dump$1`);var pi={dump:fi};function mi(e,t){return function(){throw Error(`Function yaml.`+e+` is removed in js-yaml 4. Use yaml.`+t+` instead, which is now safe by default.`)}}d(mi,`renamed`);var hi=jt,gi=tr.load;tr.loadAll,pi.dump;var _i={common:ce,getConfig:fe,insertCluster:Fe,insertEdge:ze,insertEdgeLabel:Be,insertMarkers:Re,insertNode:Pe,interpolateToCurve:ye,labelHelper:Ie,log:u,positionEdgeLabel:Le},vi={},yi=d(e=>{for(let t of e)vi[t.name]=t},`registerLayoutLoaders`);d(()=>{yi([{name:`dagre`,loader:d(async()=>await b(()=>import(`./dagre-6UL2VRFP-FNCAXbdE.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21])),`loader`)},{name:`cose-bilkent`,loader:d(async()=>await b(()=>import(`./cose-bilkent-S5V4N54A-CRIb8XEO.js`),__vite__mapDeps([22,3,23,2])),`loader`)}])},`registerDefaultLayoutLoaders`)();var bi=d(async(e,t)=>{if(!(e.layoutAlgorithm in vi))throw Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);let n=vi[e.layoutAlgorithm];return(await n.loader()).render(e,t,_i,{algorithm:n.algorithm})},`render`),xi=d((e=``,{fallback:t=`dagre`}={})=>{if(e in vi)return e;if(t in vi)return u.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw Error(`Both layout algorithms ${e} and ${t} are not registered.`)},`getRegisteredLayoutAlgorithm`),Si=`comm`,Ci=`rule`,wi=`decl`,Ti=`@import`,Ei=`@namespace`,Di=`@keyframes`,Oi=`@layer`,ki=Math.abs,Ai=String.fromCharCode;function ji(e){return e.trim()}function Mi(e,t,n){return e.replace(t,n)}function Ni(e,t){return e.charCodeAt(t)|0}function Pi(e,t,n){return e.slice(t,n)}function L(e){return e.length}function Fi(e){return e.length}function Ii(e,t){return t.push(e),e}var Li=1,Ri=1,zi=0,R=0,z=0,Bi=``;function Vi(e,t,n,r,i,a,o,s){return{value:e,root:t,parent:n,type:r,props:i,children:a,line:Li,column:Ri,length:o,return:``,siblings:s}}function Hi(){return z}function Ui(){return z=R>0?Ni(Bi,--R):0,Ri--,z===10&&(Ri=1,Li--),z}function B(){return z=R<zi?Ni(Bi,R++):0,Ri++,z===10&&(Ri=1,Li++),z}function V(){return Ni(Bi,R)}function Wi(){return R}function Gi(e,t){return Pi(Bi,e,t)}function Ki(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function qi(e){return Li=Ri=1,zi=L(Bi=e),R=0,[]}function Ji(e){return Bi=``,e}function Yi(e){return ji(Gi(R-1,Qi(e===91?e+2:e===40?e+1:e)))}function Xi(e){for(;(z=V())&&z<33;)B();return Ki(e)>2||Ki(z)>3?``:` `}function Zi(e,t){for(;--t&&B()&&!(z<48||z>102||z>57&&z<65||z>70&&z<97););return Gi(e,Wi()+(t<6&&V()==32&&B()==32))}function Qi(e){for(;B();)switch(z){case e:return R;case 34:case 39:e!==34&&e!==39&&Qi(z);break;case 40:e===41&&Qi(e);break;case 92:B();break}return R}function $i(e,t){for(;B()&&e+z!==57&&!(e+z===84&&V()===47););return`/*`+Gi(t,R-1)+`*`+Ai(e===47?e:B())}function ea(e){for(;!Ki(V());)B();return Gi(e,R)}function ta(e){return Ji(na(``,null,null,null,[``],e=qi(e),0,[0],e))}function na(e,t,n,r,i,a,o,s,c){for(var l=0,u=0,d=o,f=0,p=0,m=0,h=1,g=1,_=1,v=0,y=0,b=``,x=i,S=a,C=r,w=b;g;)switch(m=y,y=B()){case 40:m!=108&&Ni(w,d-1)==58?(v++,w+=`(`):w+=Yi(y);break;case 41:v--,w+=`)`;break;case 34:case 39:case 91:w+=Yi(y);break;case 9:case 10:case 13:case 32:if(v>0){w+=Ai(y);break}w+=Xi(m);break;case 92:w+=Zi(Wi()-1,7);continue;case 47:switch(V()){case 42:case 47:Ii(ia($i(B(),Wi()),t,n,c),c),(Ki(m||1)==5||Ki(V()||1)==5)&&L(w)&&Pi(w,-1,void 0)!==` `&&(w+=` `);break;default:w+=`/`}break;case 123*h:s[l++]=L(w)*_;case 125*h:case 59:case 0:if(v>0&&y){w+=Ai(y);break}switch(y){case 0:case 125:g=0;case 59+u:_==-1&&(w=Mi(w,/\f/g,``)),p>0&&(L(w)-d||h===0)&&Ii(p>32?aa(w+`;`,r,n,d-1,c):aa(Mi(w,` `,``)+`;`,r,n,d-2,c),c);break;case 59:w+=`;`;default:if(Ii(C=ra(w,t,n,l,u,i,s,b,x=[],S=[],d,a),a),y===123)if(u===0)na(w,t,C,C,x,a,d,s,S);else{switch(f){case 99:if(Ni(w,3)===110)break;case 108:if(Ni(w,2)===97)break;default:u=0;case 100:case 109:case 115:}u?na(e,C,C,r&&Ii(ra(e,C,C,0,0,i,s,b,i,x=[],d,S),S),i,S,d,s,r?x:S):na(w,C,C,C,[``],S,0,s,S)}}l=u=p=0,h=_=1,b=w=``,d=o;break;case 58:d=1+L(w),p=m;default:if(h<1){if(y==123)--h;else if(y==125&&h++==0&&Ui()==125)continue}switch(w+=Ai(y),y*h){case 38:_=u>0?1:(w+=`\f`,-1);break;case 44:if(v>0)break;s[l++]=(L(w)-1)*_,_=1;break;case 64:V()===45&&(w+=Yi(B())),f=V(),u=d=L(b=w+=ea(Wi())),y++;break;case 45:m===45&&L(w)==2&&(h=0)}}return a}function ra(e,t,n,r,i,a,o,s,c,l,u,d){for(var f=i-1,p=i===0?a:[``],m=Fi(p),h=0,g=0,_=0;h<r;++h)for(var v=0,y=Pi(e,f+1,f=ki(g=o[h])),b=e;v<m;++v)(b=ji(g>0?p[v]+` `+y:Mi(y,/&\f/g,p[v])))&&(c[_++]=b);return Vi(e,t,n,i===0?Ci:s,c,l,u,d)}function ia(e,t,n,r){return Vi(e,t,n,Si,Ai(Hi()),Pi(e,2,-2),0,r)}function aa(e,t,n,r,i){return Vi(e,t,n,wi,Pi(e,0,r),Pi(e,r+1,-1),r,i)}function oa(e,t){for(var n=``,r=0;r<e.length;r++)n+=t(e[r],r,e,t)||``;return n}function sa(e,t,n,r){switch(e.type){case Oi:if(e.children.length)break;case Ti:case Ei:case wi:return e.return=e.return||e.value;case Si:return``;case Di:return e.return=e.value+`{`+oa(e.children,r)+`}`;case Ci:if(!L(e.value=e.props.join(`,`)))return``}return L(n=oa(e.children,r))?e.return=e.value+`{`+n+`}`:``}var ca=Oe(Object.keys,Object),la=Object.prototype.hasOwnProperty;function ua(e){if(!ke(e))return ca(e);var t=[];for(var n in Object(e))la.call(e,n)&&n!=`constructor`&&t.push(n);return t}var da=Ce(Se,`DataView`),fa=Ce(Se,`Promise`),pa=Ce(Se,`Set`),ma=Ce(Se,`WeakMap`),ha=`[object Map]`,ga=`[object Object]`,_a=`[object Promise]`,va=`[object Set]`,ya=`[object WeakMap]`,ba=`[object DataView]`,xa=be(da),Sa=be(we),Ca=be(fa),wa=be(pa),Ta=be(ma),Ea=xe;(da&&Ea(new da(new ArrayBuffer(1)))!=ba||we&&Ea(new we)!=ha||fa&&Ea(fa.resolve())!=_a||pa&&Ea(new pa)!=va||ma&&Ea(new ma)!=ya)&&(Ea=function(e){var t=xe(e),n=t==ga?e.constructor:void 0,r=n?be(n):``;if(r)switch(r){case xa:return ba;case Sa:return ha;case Ca:return _a;case wa:return va;case Ta:return ya}return t});var Da=Ea,Oa=`[object Map]`,ka=`[object Set]`,Aa=Object.prototype.hasOwnProperty;function ja(e){if(e==null)return!0;if(Te(e)&&(je(e)||typeof e==`string`||typeof e.splice==`function`||Ae(e)||De(e)||Ee(e)))return!e.length;var t=Da(e);if(t==Oa||t==ka)return!e.size;if(ke(e))return!ua(e).length;for(var n in e)if(Aa.call(e,n))return!1;return!0}var Ma=`c4`,Na={id:Ma,detector:d(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./c4Diagram-YG6GDRKO-BZXRrcck.js`);return{diagram:e}},__vite__mapDeps([24,1,2,3,6,5,7,8,25]));return{id:Ma,diagram:e}},`loader`)},Pa=`flowchart`,Fa={id:Pa,detector:d((e,t)=>t?.flowchart?.defaultRenderer===`dagre-wrapper`||t?.flowchart?.defaultRenderer===`elk`?!1:/^\s*graph/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./flowDiagram-NV44I4VS-DBSQuj6x.js`);return{diagram:e}},__vite__mapDeps([26,1,2,3,4,5,6,7,8,27,28,14,15,29,16,17,30,18,19,20,21]));return{id:Pa,diagram:e}},`loader`)},Ia=`flowchart-v2`,La={id:Ia,detector:d((e,t)=>t?.flowchart?.defaultRenderer===`dagre-d3`?!1:(t?.flowchart?.defaultRenderer===`elk`&&(t.layout=`elk`),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer===`dagre-wrapper`?!0:/^\s*flowchart/.test(e)),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./flowDiagram-NV44I4VS-DBSQuj6x.js`);return{diagram:e}},__vite__mapDeps([26,1,2,3,4,5,6,7,8,27,28,14,15,29,16,17,30,18,19,20,21]));return{id:Ia,diagram:e}},`loader`)},Ra=`er`,za={id:Ra,detector:d(e=>/^\s*erDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./erDiagram-Q2GNP2WA-E5ZsUbDF.js`);return{diagram:e}},__vite__mapDeps([31,1,2,3,4,5,6,7,8,27,28,14,15,16,17,30,18,19,20,21]));return{id:Ra,diagram:e}},`loader`)},Ba=`gitGraph`,Va={id:Ba,detector:d(e=>/^\s*gitGraph/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./gitGraphDiagram-NY62KEGX-BCeIMWdl.js`);return{diagram:e}},__vite__mapDeps([32,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,5,6,7,42,43]));return{id:Ba,diagram:e}},`loader`)},Ha=`gantt`,Ua={id:Ha,detector:d(e=>/^\s*gantt/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./ganttDiagram-LVOFAZNH-CKUOsqwl.js`);return{diagram:e}},__vite__mapDeps([44,3,1,2,6,45,46,47,5,7,8]));return{id:Ha,diagram:e}},`loader`)},Wa=`info`,Ga={id:Wa,detector:d(e=>/^\s*info/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./infoDiagram-F6ZHWCRC-CAuANIrz.js`);return{diagram:e}},__vite__mapDeps([48,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41]));return{id:Wa,diagram:e}},`loader`)},Ka=`pie`,qa={id:Ka,detector:d(e=>/^\s*pie/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./pieDiagram-ADFJNKIX-BAs8OfRS.js`);return{diagram:e}},__vite__mapDeps([49,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,20,50,47,51,7,21,5,6,42]));return{id:Ka,diagram:e}},`loader`)},Ja=`quadrantChart`,Ya={id:Ja,detector:d(e=>/^\s*quadrantChart/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./quadrantDiagram-AYHSOK5B-CyUDZP5S.js`);return{diagram:e}},__vite__mapDeps([52,1,2,3,45,46,47]));return{id:Ja,diagram:e}},`loader`)},Xa=`xychart`,Za={id:Xa,detector:d(e=>/^\s*xychart(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./xychartDiagram-PRI3JC2R-BGWVfCx4.js`);return{diagram:e}},__vite__mapDeps([53,1,2,3,4,5,6,7,8,45,46,47,50,19,20,21]));return{id:Xa,diagram:e}},`loader`)},Qa=`requirement`,$a={id:Qa,detector:d(e=>/^\s*requirement(Diagram)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./requirementDiagram-UZGBJVZJ-BEHix78P.js`);return{diagram:e}},__vite__mapDeps([54,1,2,3,4,5,6,7,8,28,14,15,16,17,30,18,19,20,21]));return{id:Qa,diagram:e}},`loader`)},eo=`sequence`,to={id:eo,detector:d(e=>/^\s*sequenceDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./sequenceDiagram-WL72ISMW-DVLOORFJ.js`);return{diagram:e}},__vite__mapDeps([55,1,2,3,6,5,7,8,43,25]));return{id:eo,diagram:e}},`loader`)},no=`class`,ro={id:no,detector:d((e,t)=>t?.class?.defaultRenderer===`dagre-wrapper`?!1:/^\s*classDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./classDiagram-2ON5EDUG-DlL1m2bp.js`);return{diagram:e}},__vite__mapDeps([56,1,2,3,4,5,6,7,8,28,14,57,29,30,15,16,17,18,19,20,21]));return{id:no,diagram:e}},`loader`)},io=`classDiagram`,ao={id:io,detector:d((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer===`dagre-wrapper`?!0:/^\s*classDiagram-v2/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./classDiagram-v2-WZHVMYZB-FXRskT1j.js`);return{diagram:e}},__vite__mapDeps([58,1,2,3,4,5,6,7,8,28,14,57,29,30,15,16,17,18,19,20,21]));return{id:io,diagram:e}},`loader`)},oo=`state`,so={id:oo,detector:d((e,t)=>t?.state?.defaultRenderer===`dagre-wrapper`?!1:/^\s*stateDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./stateDiagram-FKZM4ZOC-sFGGp2kV.js`);return{diagram:e}},__vite__mapDeps([59,1,2,3,4,5,6,7,8,19,20,21,9,10,11,12,28,14,15,60,30,16,17,18]));return{id:oo,diagram:e}},`loader`)},co=`stateDiagram`,lo={id:co,detector:d((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer===`dagre-wrapper`),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./stateDiagram-v2-4FDKWEC3-BHfCF4dX.js`);return{diagram:e}},__vite__mapDeps([61,1,2,3,4,5,6,7,8,28,14,15,60,30,16,17,18,19,20,21]));return{id:co,diagram:e}},`loader`)},uo=`journey`,fo={id:uo,detector:d(e=>/^\s*journey/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./journeyDiagram-XKPGCS4Q-C-Z9phnx.js`);return{diagram:e}},__vite__mapDeps([62,1,2,3,51,20,7,29,25,6]));return{id:uo,diagram:e}},`loader`)},po={draw:d((e,t,n)=>{u.debug(`rendering svg for syntax error
34
- `);let r=He(t),i=r.append(`g`);r.attr(`viewBox`,`0 0 2412 512`),w(r,100,512,!0),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1440).attr(`y`,250).attr(`font-size`,`150px`).style(`text-anchor`,`middle`).text(`Syntax error in text`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1250).attr(`y`,400).attr(`font-size`,`100px`).style(`text-anchor`,`middle`).text(`mermaid version ${n}`)},`draw`)},mo=po,ho={db:{},renderer:po,parser:{parse:d(()=>{},`parse`)}},go=`flowchart-elk`,_o={id:go,detector:d((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&t?.flowchart?.defaultRenderer===`elk`?(t.layout=`elk`,!0):!1,`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./flowDiagram-NV44I4VS-DBSQuj6x.js`);return{diagram:e}},__vite__mapDeps([26,1,2,3,4,5,6,7,8,27,28,14,15,29,16,17,30,18,19,20,21]));return{id:go,diagram:e}},`loader`)},vo=`timeline`,yo={id:vo,detector:d(e=>/^\s*timeline/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./timeline-definition-IT6M3QCI-BESnBijC.js`);return{diagram:e}},__vite__mapDeps([63,1,2,3,51,20,7]));return{id:vo,diagram:e}},`loader`)},bo=`mindmap`,xo={id:bo,detector:d(e=>/^\s*mindmap/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./mindmap-definition-VGOIOE7T-TM_CqdmV.js`);return{diagram:e}},__vite__mapDeps([64,1,2,3,4,5,6,7,8,28,14,15,16,17,30,18,19,20,21]));return{id:bo,diagram:e}},`loader`)},So=`kanban`,Co={id:So,detector:d(e=>/^\s*kanban/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./kanban-definition-3W4ZIXB7-DufgZABq.js`);return{diagram:e}},__vite__mapDeps([65,1,2,3,4,5,6,7,8,14,15,29,17]));return{id:So,diagram:e}},`loader`)},wo=`sankey`,To={id:wo,detector:d(e=>/^\s*sankey(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./sankeyDiagram-TZEHDZUN-B2bKbmsm.js`);return{diagram:e}},__vite__mapDeps([66,1,2,3,50,47]));return{id:wo,diagram:e}},`loader`)},Eo=`packet`,Do={id:Eo,detector:d(e=>/^\s*packet(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./diagram-S2PKOQOG-Vdrc-vrO.js`);return{diagram:e}},__vite__mapDeps([67,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,5,6,7,42]));return{id:Eo,diagram:e}},`loader`)},Oo=`radar`,ko={id:Oo,detector:d(e=>/^\s*radar-beta/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./diagram-QEK2KX5R-BCDcESxs.js`);return{diagram:e}},__vite__mapDeps([68,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,5,6,7,42]));return{id:Oo,diagram:e}},`loader`)},Ao=`block`,jo={id:Ao,detector:d(e=>/^\s*block(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./blockDiagram-VD42YOAC-20MLNcUm.js`);return{diagram:e}},__vite__mapDeps([69,1,2,3,4,5,6,7,8,19,20,21,10,11,27,13,15,29,16]));return{id:Ao,diagram:e}},`loader`)},Mo=`architecture`,No={id:Mo,detector:d(e=>/^\s*architecture/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./architectureDiagram-VXUJARFQ-C5W6re2I.js`);return{diagram:e}},__vite__mapDeps([70,3,1,2,4,5,6,7,8,33,34,11,12,35,36,37,38,39,40,41,23,42]));return{id:Mo,diagram:e}},`loader`)},Po=`treemap`,Fo={id:Po,detector:d(e=>/^\s*treemap/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./diagram-PSM6KHXK-ylLWjiNM.js`);return{diagram:e}},__vite__mapDeps([71,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,46,50,47,5,6,7,42,14,30]));return{id:Po,diagram:e}},`loader`)},Io=!1,Lo=d(()=>{Io||(Io=!0,re(`error`,ho,e=>e.toLowerCase().trim()===`error`),re(`---`,{db:{clear:d(()=>{},`clear`)},styles:{},renderer:{draw:d(()=>{},`draw`)},parser:{parse:d(()=>{throw Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},`parse`)},init:d(()=>null,`init`)},e=>e.toLowerCase().trimStart().startsWith(`---`)),m(_o,xo,No),m(Na,Co,ao,ro,za,Ua,Ga,qa,$a,to,La,Fa,yo,Va,lo,so,fo,Ya,To,Do,Za,jo,ko,Fo))},`addDiagrams`),Ro=d(async()=>{u.debug(`Loading registered diagrams`);let e=(await Promise.allSettled(Object.entries(oe).map(async([e,{detector:t,loader:n}])=>{if(n)try{de(e)}catch{try{let{diagram:e,id:r}=await n();re(r,e,t)}catch(t){throw u.error(`Failed to load external diagram with key ${e}. Removing from detectors.`),delete oe[e],t}}}))).filter(e=>e.status===`rejected`);if(e.length>0){u.error(`Failed to load ${e.length} external diagrams`);for(let t of e)u.error(t);throw Error(`Failed to load ${e.length} external diagrams`)}},`loadRegisteredDiagrams`),zo=`graphics-document document`;function Bo(e,t){e.attr(`role`,zo),t!==``&&e.attr(`aria-roledescription`,t)}d(Bo,`setA11yDiagramInfo`);function Vo(e,t,n,r){if(e.insert!==void 0){if(n){let t=`chart-desc-${r}`;e.attr(`aria-describedby`,t),e.insert(`desc`,`:first-child`).attr(`id`,t).text(n)}if(t){let n=`chart-title-${r}`;e.attr(`aria-labelledby`,n),e.insert(`title`,`:first-child`).attr(`id`,n).text(t)}}}d(Vo,`addSVGa11yTitleDescription`);var Ho=class e{constructor(e,t,n,r,i){this.type=e,this.text=t,this.db=n,this.parser=r,this.renderer=i}static{d(this,`Diagram`)}static async fromText(t,n={}){let r=fe(),i=ee(t,r);t=pe(t)+`
35
- `;try{de(i)}catch{let e=_(i);if(!e)throw new le(`Diagram ${i} not found.`);let{id:t,diagram:n}=await e();re(t,n)}let{db:a,parser:o,renderer:s,init:c}=de(i);return o.parser&&(o.parser.yy=a),a.clear?.(),c?.(r),n.title&&a.setDiagramTitle?.(n.title),await o.parse(t),new e(i,t,a,o,s)}async render(e,t){await this.renderer.draw(this.text,e,t,this)}getParser(){return this.parser}getType(){return this.type}},Uo=[],Wo=d(()=>{Uo.forEach(e=>{e()}),Uo=[]},`attachFunctions`),Go=d(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,``).trimStart(),`cleanupComments`);function Ko(e){let t=e.match(te);if(!t)return{text:e,metadata:{}};let n=gi(t[1],{schema:hi})??{};n=typeof n==`object`&&!Array.isArray(n)?n:{};let r={};return n.displayMode&&(r.displayMode=n.displayMode.toString()),n.title&&(r.title=n.title.toString()),n.config&&(r.config=n.config),{text:e.slice(t[0].length),metadata:r}}d(Ko,`extractFrontMatter`);var qo=d(e=>e.replace(/\r\n?/g,`
36
- `).replace(/<(\w+)([^>]*)>/g,(e,t,n)=>`<`+t+n.replace(/="([^"]*)"/g,`='$1'`)+`>`),`cleanupText`),Jo=d(e=>{let{text:t,metadata:n}=Ko(e),{displayMode:r,title:i,config:a={}}=n;return r&&(a.gantt||={},a.gantt.displayMode=r),{title:i,config:a,text:t}},`processFrontmatter`),Yo=d(e=>{let t=he.detectInit(e)??{},n=he.detectDirective(e,`wrap`);return Array.isArray(n)?t.wrap=n.some(({type:e})=>e===`wrap`):n?.type===`wrap`&&(t.wrap=!0),{text:_e(e),directive:t}},`processDirectives`);function Xo(e){let t=Jo(qo(e)),n=Yo(t.text),r=ve(t.config,n.directive);return e=Go(n.text),{code:e,title:t.title,config:r}}d(Xo,`preprocessDiagram`);function Zo(e){let t=new TextEncoder().encode(e),n=Array.from(t,e=>String.fromCodePoint(e)).join(``);return btoa(n)}d(Zo,`toBase64`);var Qo=5e4,$o=`graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa`,es=`sandbox`,ts=`loose`,ns=`http://www.w3.org/2000/svg`,rs=`http://www.w3.org/1999/xlink`,is=`http://www.w3.org/1999/xhtml`,as=`100%`,os=`100%`,ss=`border:0;margin:0;`,cs=`margin:0`,ls=`allow-top-navigation-by-user-activation allow-popups`,us=`The "iframe" tag is not supported by your browser.`,ds=[`foreignobject`],fs=[`dominant-baseline`];function ps(e){let t=Xo(e);return h(),ae(t.config??{}),t}d(ps,`processAndSetConfigs`);async function ms(e,t){Lo();try{let{code:t,config:n}=ps(e);return{diagramType:(await Ts(t)).type,config:n}}catch(e){if(t?.suppressErrors)return!1;throw e}}d(ms,`parse`);var hs=d((e,t,n=[])=>`
37
- .${e} ${t} { ${n.join(` !important; `)} !important; }`,`cssImportantStyles`),gs=d((e,t=new Map)=>{let n=``;if(e.themeCSS!==void 0&&(n+=`
32
+ `+e.slice(o+1):c+=e.slice(i),c.slice(1)}d(ri,`foldLine`);function ii(e){for(var t=``,n=0,r,i=0;i<e.length;n>=65536?i+=2:i++)n=Gr(e,i),r=F[n],!r&&Br(n)?(t+=e[i],n>=65536&&(t+=e[i+1])):t+=r||Mr(n);return t}d(ii,`escapeString`);function ai(e,t,n){var r=``,i=e.tag,a,o,s;for(a=0,o=n.length;a<o;a+=1)s=n[a],e.replacer&&(s=e.replacer.call(n,String(a),s)),(I(e,t,s,!1,!1)||s===void 0&&I(e,t,null,!1,!1))&&(r!==``&&(r+=`,`+(e.condenseFlow?``:` `)),r+=e.dump);e.tag=i,e.dump=`[`+r+`]`}d(ai,`writeFlowSequence`);function oi(e,t,n,r){var i=``,a=e.tag,o,s,c;for(o=0,s=n.length;o<s;o+=1)c=n[o],e.replacer&&(c=e.replacer.call(n,String(o),c)),(I(e,t+1,c,!0,!0,!1,!0)||c===void 0&&I(e,t+1,null,!0,!0,!1,!0))&&((!r||i!==``)&&(i+=Lr(e,t)),e.dump&&or===e.dump.charCodeAt(0)?i+=`-`:i+=`- `,i+=e.dump);e.tag=a,e.dump=i||`[]`}d(oi,`writeBlockSequence`);function si(e,t,n){var r=``,i=e.tag,a=Object.keys(n),o,s,c,l,u;for(o=0,s=a.length;o<s;o+=1)u=``,r!==``&&(u+=`, `),e.condenseFlow&&(u+=`"`),c=a[o],l=n[c],e.replacer&&(l=e.replacer.call(n,c,l)),I(e,t,c,!1,!1)&&(e.dump.length>1024&&(u+=`? `),u+=e.dump+(e.condenseFlow?`"`:``)+`:`+(e.condenseFlow?``:` `),I(e,t,l,!1,!1)&&(u+=e.dump,r+=u));e.tag=i,e.dump=`{`+r+`}`}d(si,`writeFlowMapping`);function ci(e,t,n,r){var i=``,a=e.tag,o=Object.keys(n),s,c,l,u,d,f;if(e.sortKeys===!0)o.sort();else if(typeof e.sortKeys==`function`)o.sort(e.sortKeys);else if(e.sortKeys)throw new E(`sortKeys must be a boolean or a function`);for(s=0,c=o.length;s<c;s+=1)f=``,(!r||i!==``)&&(f+=Lr(e,t)),l=o[s],u=n[l],e.replacer&&(u=e.replacer.call(n,l,u)),I(e,t+1,l,!0,!0,!0)&&(d=e.tag!==null&&e.tag!==`?`||e.dump&&e.dump.length>1024,d&&(e.dump&&or===e.dump.charCodeAt(0)?f+=`?`:f+=`? `),f+=e.dump,d&&(f+=Lr(e,t)),I(e,t+1,u,!0,d)&&(e.dump&&or===e.dump.charCodeAt(0)?f+=`:`:f+=`: `,f+=e.dump,i+=f));e.tag=a,e.dump=i||`{}`}d(ci,`writeBlockMapping`);function li(e,t,n){var r,i=n?e.explicitTypes:e.implicitTypes,a,o,s,c;for(a=0,o=i.length;a<o;a+=1)if(s=i[a],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof t==`object`&&t instanceof s.instanceOf)&&(!s.predicate||s.predicate(t))){if(n?s.multi&&s.representName?e.tag=s.representName(t):e.tag=s.tag:e.tag=`?`,s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,nr.call(s.represent)===`[object Function]`)r=s.represent(t,c);else if(rr.call(s.represent,c))r=s.represent[c](t,c);else throw new E(`!<`+s.tag+`> tag resolver accepts not "`+c+`" style`);e.dump=r}return!0}return!1}d(li,`detectType`);function I(e,t,n,r,i,a,o){e.tag=null,e.dump=n,li(e,n,!1)||li(e,n,!0);var s=nr.call(e.dump),c=r,l;r&&=e.flowLevel<0||e.flowLevel>t;var u=s===`[object Object]`||s===`[object Array]`,d,f;if(u&&(d=e.duplicates.indexOf(n),f=d!==-1),(e.tag!==null&&e.tag!==`?`||f||e.indent!==2&&t>0)&&(i=!1),f&&e.usedDuplicates[d])e.dump=`*ref_`+d;else{if(u&&f&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),s===`[object Object]`)r&&Object.keys(e.dump).length!==0?(ci(e,t,e.dump,i),f&&(e.dump=`&ref_`+d+e.dump)):(si(e,t,e.dump),f&&(e.dump=`&ref_`+d+` `+e.dump));else if(s===`[object Array]`)r&&e.dump.length!==0?(e.noArrayIndent&&!o&&t>0?oi(e,t-1,e.dump,i):oi(e,t,e.dump,i),f&&(e.dump=`&ref_`+d+e.dump)):(ai(e,t,e.dump),f&&(e.dump=`&ref_`+d+` `+e.dump));else if(s===`[object String]`)e.tag!==`?`&&$r(e,e.dump,t,a,c);else if(s===`[object Undefined]`)return!1;else{if(e.skipInvalid)return!1;throw new E(`unacceptable kind of an object to dump `+s)}e.tag!==null&&e.tag!==`?`&&(l=encodeURI(e.tag[0]===`!`?e.tag.slice(1):e.tag).replace(/!/g,`%21`),l=e.tag[0]===`!`?`!`+l:l.slice(0,18)===`tag:yaml.org,2002:`?`!!`+l.slice(18):`!<`+l+`>`,e.dump=l+` `+e.dump)}return!0}d(I,`writeNode`);function ui(e,t){var n=[],r=[],i,a;for(di(e,n,r),i=0,a=r.length;i<a;i+=1)t.duplicates.push(n[r[i]]);t.usedDuplicates=Array(a)}d(ui,`getDuplicateReferences`);function di(e,t,n){var r,i,a;if(typeof e==`object`&&e)if(i=t.indexOf(e),i!==-1)n.indexOf(i)===-1&&n.push(i);else if(t.push(e),Array.isArray(e))for(i=0,a=e.length;i<a;i+=1)di(e[i],t,n);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)di(e[r[i]],t,n)}d(di,`inspectNode`);function fi(e,t){t||={};var n=new Fr(t);n.noRefs||ui(e,n);var r=e;return n.replacer&&(r=n.replacer.call({"":r},``,r)),I(n,0,r,!0,!0)?n.dump+`
33
+ `:``}d(fi,`dump$1`);var pi={dump:fi};function mi(e,t){return function(){throw Error(`Function yaml.`+e+` is removed in js-yaml 4. Use yaml.`+t+` instead, which is now safe by default.`)}}d(mi,`renamed`);var hi=Mt,gi=tr.load;tr.loadAll,pi.dump;var _i={common:le,getConfig:pe,insertCluster:Ie,insertEdge:Be,insertEdgeLabel:Ve,insertMarkers:ze,insertNode:Fe,interpolateToCurve:be,labelHelper:Le,log:u,positionEdgeLabel:Re},vi={},yi=d(e=>{for(let t of e)vi[t.name]=t},`registerLayoutLoaders`);d(()=>{yi([{name:`dagre`,loader:d(async()=>await b(()=>import(`./dagre-6UL2VRFP-FNCAXbdE.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21])),`loader`)},{name:`cose-bilkent`,loader:d(async()=>await b(()=>import(`./cose-bilkent-S5V4N54A-CRIb8XEO.js`),__vite__mapDeps([22,3,23,2])),`loader`)}])},`registerDefaultLayoutLoaders`)();var bi=d(async(e,t)=>{if(!(e.layoutAlgorithm in vi))throw Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);let n=vi[e.layoutAlgorithm];return(await n.loader()).render(e,t,_i,{algorithm:n.algorithm})},`render`),xi=d((e=``,{fallback:t=`dagre`}={})=>{if(e in vi)return e;if(t in vi)return u.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw Error(`Both layout algorithms ${e} and ${t} are not registered.`)},`getRegisteredLayoutAlgorithm`),Si=`comm`,Ci=`rule`,wi=`decl`,Ti=`@import`,Ei=`@namespace`,Di=`@keyframes`,Oi=`@layer`,ki=Math.abs,Ai=String.fromCharCode;function ji(e){return e.trim()}function Mi(e,t,n){return e.replace(t,n)}function Ni(e,t){return e.charCodeAt(t)|0}function Pi(e,t,n){return e.slice(t,n)}function L(e){return e.length}function Fi(e){return e.length}function Ii(e,t){return t.push(e),e}var Li=1,Ri=1,zi=0,R=0,z=0,Bi=``;function Vi(e,t,n,r,i,a,o,s){return{value:e,root:t,parent:n,type:r,props:i,children:a,line:Li,column:Ri,length:o,return:``,siblings:s}}function Hi(){return z}function Ui(){return z=R>0?Ni(Bi,--R):0,Ri--,z===10&&(Ri=1,Li--),z}function B(){return z=R<zi?Ni(Bi,R++):0,Ri++,z===10&&(Ri=1,Li++),z}function Wi(){return Ni(Bi,R)}function Gi(){return R}function Ki(e,t){return Pi(Bi,e,t)}function qi(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function Ji(e){return Li=Ri=1,zi=L(Bi=e),R=0,[]}function Yi(e){return Bi=``,e}function Xi(e){return ji(Ki(R-1,$i(e===91?e+2:e===40?e+1:e)))}function Zi(e){for(;(z=Wi())&&z<33;)B();return qi(e)>2||qi(z)>3?``:` `}function Qi(e,t){for(;--t&&B()&&!(z<48||z>102||z>57&&z<65||z>70&&z<97););return Ki(e,Gi()+(t<6&&Wi()==32&&B()==32))}function $i(e){for(;B();)switch(z){case e:return R;case 34:case 39:e!==34&&e!==39&&$i(z);break;case 40:e===41&&$i(e);break;case 92:B();break}return R}function ea(e,t){for(;B()&&e+z!==57&&!(e+z===84&&Wi()===47););return`/*`+Ki(t,R-1)+`*`+Ai(e===47?e:B())}function ta(e){for(;!qi(Wi());)B();return Ki(e,R)}function na(e){return Yi(ra(``,null,null,null,[``],e=Ji(e),0,[0],e))}function ra(e,t,n,r,i,a,o,s,c){for(var l=0,u=0,d=o,f=0,p=0,m=0,h=1,g=1,_=1,v=0,y=0,b=``,ee=i,x=a,S=r,C=b;g;)switch(m=y,y=B()){case 40:m!=108&&Ni(C,d-1)==58?(v++,C+=`(`):C+=Xi(y);break;case 41:v--,C+=`)`;break;case 34:case 39:case 91:C+=Xi(y);break;case 9:case 10:case 13:case 32:if(v>0){C+=Ai(y);break}C+=Zi(m);break;case 92:C+=Qi(Gi()-1,7);continue;case 47:switch(Wi()){case 42:case 47:Ii(aa(ea(B(),Gi()),t,n,c),c),(qi(m||1)==5||qi(Wi()||1)==5)&&L(C)&&Pi(C,-1,void 0)!==` `&&(C+=` `);break;default:C+=`/`}break;case 123*h:s[l++]=L(C)*_;case 125*h:case 59:case 0:if(v>0&&y){C+=Ai(y);break}switch(y){case 0:case 125:g=0;case 59+u:_==-1&&(C=Mi(C,/\f/g,``)),p>0&&(L(C)-d||h===0)&&Ii(p>32?oa(C+`;`,r,n,d-1,c):oa(Mi(C,` `,``)+`;`,r,n,d-2,c),c);break;case 59:C+=`;`;default:if(Ii(S=ia(C,t,n,l,u,i,s,b,ee=[],x=[],d,a),a),y===123)if(u===0)ra(C,t,S,S,ee,a,d,s,x);else{switch(f){case 99:if(Ni(C,3)===110)break;case 108:if(Ni(C,2)===97)break;default:u=0;case 100:case 109:case 115:}u?ra(e,S,S,r&&Ii(ia(e,S,S,0,0,i,s,b,i,ee=[],d,x),x),i,x,d,s,r?ee:x):ra(C,S,S,S,[``],x,0,s,x)}}l=u=p=0,h=_=1,b=C=``,d=o;break;case 58:d=1+L(C),p=m;default:if(h<1){if(y==123)--h;else if(y==125&&h++==0&&Ui()==125)continue}switch(C+=Ai(y),y*h){case 38:_=u>0?1:(C+=`\f`,-1);break;case 44:if(v>0)break;s[l++]=(L(C)-1)*_,_=1;break;case 64:Wi()===45&&(C+=Xi(B())),f=Wi(),u=d=L(b=C+=ta(Gi())),y++;break;case 45:m===45&&L(C)==2&&(h=0)}}return a}function ia(e,t,n,r,i,a,o,s,c,l,u,d){for(var f=i-1,p=i===0?a:[``],m=Fi(p),h=0,g=0,_=0;h<r;++h)for(var v=0,y=Pi(e,f+1,f=ki(g=o[h])),b=e;v<m;++v)(b=ji(g>0?p[v]+` `+y:Mi(y,/&\f/g,p[v])))&&(c[_++]=b);return Vi(e,t,n,i===0?Ci:s,c,l,u,d)}function aa(e,t,n,r){return Vi(e,t,n,Si,Ai(Hi()),Pi(e,2,-2),0,r)}function oa(e,t,n,r,i){return Vi(e,t,n,wi,Pi(e,0,r),Pi(e,r+1,-1),r,i)}function sa(e,t){for(var n=``,r=0;r<e.length;r++)n+=t(e[r],r,e,t)||``;return n}function ca(e,t,n,r){switch(e.type){case Oi:if(e.children.length)break;case Ti:case Ei:case wi:return e.return=e.return||e.value;case Si:return``;case Di:return e.return=e.value+`{`+sa(e.children,r)+`}`;case Ci:if(!L(e.value=e.props.join(`,`)))return``}return L(n=sa(e.children,r))?e.return=e.value+`{`+n+`}`:``}var la=ke(Object.keys,Object),ua=Object.prototype.hasOwnProperty;function da(e){if(!Ae(e))return la(e);var t=[];for(var n in Object(e))ua.call(e,n)&&n!=`constructor`&&t.push(n);return t}var fa=we(Ce,`DataView`),pa=we(Ce,`Promise`),ma=we(Ce,`Set`),ha=we(Ce,`WeakMap`),ga=`[object Map]`,_a=`[object Object]`,va=`[object Promise]`,ya=`[object Set]`,ba=`[object WeakMap]`,xa=`[object DataView]`,Sa=xe(fa),Ca=xe(Te),wa=xe(pa),Ta=xe(ma),Ea=xe(ha),Da=Se;(fa&&Da(new fa(new ArrayBuffer(1)))!=xa||Te&&Da(new Te)!=ga||pa&&Da(pa.resolve())!=va||ma&&Da(new ma)!=ya||ha&&Da(new ha)!=ba)&&(Da=function(e){var t=Se(e),n=t==_a?e.constructor:void 0,r=n?xe(n):``;if(r)switch(r){case Sa:return xa;case Ca:return ga;case wa:return va;case Ta:return ya;case Ea:return ba}return t});var Oa=Da,ka=`[object Map]`,Aa=`[object Set]`,ja=Object.prototype.hasOwnProperty;function Ma(e){if(e==null)return!0;if(Ee(e)&&(Me(e)||typeof e==`string`||typeof e.splice==`function`||je(e)||Oe(e)||De(e)))return!e.length;var t=Oa(e);if(t==ka||t==Aa)return!e.size;if(Ae(e))return!da(e).length;for(var n in e)if(ja.call(e,n))return!1;return!0}var Na=`c4`,Pa={id:Na,detector:d(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./c4Diagram-YG6GDRKO-BZXRrcck.js`);return{diagram:e}},__vite__mapDeps([24,1,2,3,6,5,7,8,25]));return{id:Na,diagram:e}},`loader`)},Fa=`flowchart`,Ia={id:Fa,detector:d((e,t)=>t?.flowchart?.defaultRenderer===`dagre-wrapper`||t?.flowchart?.defaultRenderer===`elk`?!1:/^\s*graph/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./flowDiagram-NV44I4VS-DBSQuj6x.js`);return{diagram:e}},__vite__mapDeps([26,1,2,3,4,5,6,7,8,27,28,14,15,29,16,17,30,18,19,20,21]));return{id:Fa,diagram:e}},`loader`)},La=`flowchart-v2`,Ra={id:La,detector:d((e,t)=>t?.flowchart?.defaultRenderer===`dagre-d3`?!1:(t?.flowchart?.defaultRenderer===`elk`&&(t.layout=`elk`),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer===`dagre-wrapper`?!0:/^\s*flowchart/.test(e)),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./flowDiagram-NV44I4VS-DBSQuj6x.js`);return{diagram:e}},__vite__mapDeps([26,1,2,3,4,5,6,7,8,27,28,14,15,29,16,17,30,18,19,20,21]));return{id:La,diagram:e}},`loader`)},za=`er`,Ba={id:za,detector:d(e=>/^\s*erDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./erDiagram-Q2GNP2WA-E5ZsUbDF.js`);return{diagram:e}},__vite__mapDeps([31,1,2,3,4,5,6,7,8,27,28,14,15,16,17,30,18,19,20,21]));return{id:za,diagram:e}},`loader`)},Va=`gitGraph`,Ha={id:Va,detector:d(e=>/^\s*gitGraph/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./gitGraphDiagram-NY62KEGX-BCeIMWdl.js`);return{diagram:e}},__vite__mapDeps([32,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,5,6,7,42,43]));return{id:Va,diagram:e}},`loader`)},Ua=`gantt`,Wa={id:Ua,detector:d(e=>/^\s*gantt/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./ganttDiagram-LVOFAZNH-CKUOsqwl.js`);return{diagram:e}},__vite__mapDeps([44,3,1,2,6,45,46,47,5,7,8]));return{id:Ua,diagram:e}},`loader`)},Ga=`info`,Ka={id:Ga,detector:d(e=>/^\s*info/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./infoDiagram-F6ZHWCRC-CAuANIrz.js`);return{diagram:e}},__vite__mapDeps([48,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41]));return{id:Ga,diagram:e}},`loader`)},qa=`pie`,Ja={id:qa,detector:d(e=>/^\s*pie/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./pieDiagram-ADFJNKIX-BAs8OfRS.js`);return{diagram:e}},__vite__mapDeps([49,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,20,50,47,51,7,21,5,6,42]));return{id:qa,diagram:e}},`loader`)},Ya=`quadrantChart`,Xa={id:Ya,detector:d(e=>/^\s*quadrantChart/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./quadrantDiagram-AYHSOK5B-CyUDZP5S.js`);return{diagram:e}},__vite__mapDeps([52,1,2,3,45,46,47]));return{id:Ya,diagram:e}},`loader`)},Za=`xychart`,Qa={id:Za,detector:d(e=>/^\s*xychart(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./xychartDiagram-PRI3JC2R-BGWVfCx4.js`);return{diagram:e}},__vite__mapDeps([53,1,2,3,4,5,6,7,8,45,46,47,50,19,20,21]));return{id:Za,diagram:e}},`loader`)},$a=`requirement`,eo={id:$a,detector:d(e=>/^\s*requirement(Diagram)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./requirementDiagram-UZGBJVZJ-BEHix78P.js`);return{diagram:e}},__vite__mapDeps([54,1,2,3,4,5,6,7,8,28,14,15,16,17,30,18,19,20,21]));return{id:$a,diagram:e}},`loader`)},to=`sequence`,no={id:to,detector:d(e=>/^\s*sequenceDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./sequenceDiagram-WL72ISMW-DVLOORFJ.js`);return{diagram:e}},__vite__mapDeps([55,1,2,3,6,5,7,8,43,25]));return{id:to,diagram:e}},`loader`)},ro=`class`,io={id:ro,detector:d((e,t)=>t?.class?.defaultRenderer===`dagre-wrapper`?!1:/^\s*classDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./classDiagram-2ON5EDUG-DlL1m2bp.js`);return{diagram:e}},__vite__mapDeps([56,1,2,3,4,5,6,7,8,28,14,57,29,30,15,16,17,18,19,20,21]));return{id:ro,diagram:e}},`loader`)},ao=`classDiagram`,oo={id:ao,detector:d((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer===`dagre-wrapper`?!0:/^\s*classDiagram-v2/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./classDiagram-v2-WZHVMYZB-FXRskT1j.js`);return{diagram:e}},__vite__mapDeps([58,1,2,3,4,5,6,7,8,28,14,57,29,30,15,16,17,18,19,20,21]));return{id:ao,diagram:e}},`loader`)},so=`state`,co={id:so,detector:d((e,t)=>t?.state?.defaultRenderer===`dagre-wrapper`?!1:/^\s*stateDiagram/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./stateDiagram-FKZM4ZOC-sFGGp2kV.js`);return{diagram:e}},__vite__mapDeps([59,1,2,3,4,5,6,7,8,19,20,21,9,10,11,12,28,14,15,60,30,16,17,18]));return{id:so,diagram:e}},`loader`)},lo=`stateDiagram`,uo={id:lo,detector:d((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer===`dagre-wrapper`),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./stateDiagram-v2-4FDKWEC3-BHfCF4dX.js`);return{diagram:e}},__vite__mapDeps([61,1,2,3,4,5,6,7,8,28,14,15,60,30,16,17,18,19,20,21]));return{id:lo,diagram:e}},`loader`)},fo=`journey`,po={id:fo,detector:d(e=>/^\s*journey/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./journeyDiagram-XKPGCS4Q-C-Z9phnx.js`);return{diagram:e}},__vite__mapDeps([62,1,2,3,51,20,7,29,25,6]));return{id:fo,diagram:e}},`loader`)},mo={draw:d((e,t,n)=>{u.debug(`rendering svg for syntax error
34
+ `);let r=Ue(t),i=r.append(`g`);r.attr(`viewBox`,`0 0 2412 512`),C(r,100,512,!0),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1440).attr(`y`,250).attr(`font-size`,`150px`).style(`text-anchor`,`middle`).text(`Syntax error in text`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1250).attr(`y`,400).attr(`font-size`,`100px`).style(`text-anchor`,`middle`).text(`mermaid version ${n}`)},`draw`)},ho=mo,go={db:{},renderer:mo,parser:{parse:d(()=>{},`parse`)}},_o=`flowchart-elk`,vo={id:_o,detector:d((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&t?.flowchart?.defaultRenderer===`elk`?(t.layout=`elk`,!0):!1,`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./flowDiagram-NV44I4VS-DBSQuj6x.js`);return{diagram:e}},__vite__mapDeps([26,1,2,3,4,5,6,7,8,27,28,14,15,29,16,17,30,18,19,20,21]));return{id:_o,diagram:e}},`loader`)},yo=`timeline`,bo={id:yo,detector:d(e=>/^\s*timeline/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./timeline-definition-IT6M3QCI-BESnBijC.js`);return{diagram:e}},__vite__mapDeps([63,1,2,3,51,20,7]));return{id:yo,diagram:e}},`loader`)},xo=`mindmap`,So={id:xo,detector:d(e=>/^\s*mindmap/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./mindmap-definition-VGOIOE7T-TM_CqdmV.js`);return{diagram:e}},__vite__mapDeps([64,1,2,3,4,5,6,7,8,28,14,15,16,17,30,18,19,20,21]));return{id:xo,diagram:e}},`loader`)},Co=`kanban`,wo={id:Co,detector:d(e=>/^\s*kanban/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./kanban-definition-3W4ZIXB7-DufgZABq.js`);return{diagram:e}},__vite__mapDeps([65,1,2,3,4,5,6,7,8,14,15,29,17]));return{id:Co,diagram:e}},`loader`)},To=`sankey`,Eo={id:To,detector:d(e=>/^\s*sankey(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./sankeyDiagram-TZEHDZUN-B2bKbmsm.js`);return{diagram:e}},__vite__mapDeps([66,1,2,3,50,47]));return{id:To,diagram:e}},`loader`)},Do=`packet`,Oo={id:Do,detector:d(e=>/^\s*packet(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./diagram-S2PKOQOG-Vdrc-vrO.js`);return{diagram:e}},__vite__mapDeps([67,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,5,6,7,42]));return{id:Do,diagram:e}},`loader`)},ko=`radar`,Ao={id:ko,detector:d(e=>/^\s*radar-beta/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./diagram-QEK2KX5R-BCDcESxs.js`);return{diagram:e}},__vite__mapDeps([68,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,5,6,7,42]));return{id:ko,diagram:e}},`loader`)},jo=`block`,Mo={id:jo,detector:d(e=>/^\s*block(-beta)?/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./blockDiagram-VD42YOAC-20MLNcUm.js`);return{diagram:e}},__vite__mapDeps([69,1,2,3,4,5,6,7,8,19,20,21,10,11,27,13,15,29,16]));return{id:jo,diagram:e}},`loader`)},No=`architecture`,Po={id:No,detector:d(e=>/^\s*architecture/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./architectureDiagram-VXUJARFQ-C5W6re2I.js`);return{diagram:e}},__vite__mapDeps([70,3,1,2,4,5,6,7,8,33,34,11,12,35,36,37,38,39,40,41,23,42]));return{id:No,diagram:e}},`loader`)},Fo=`treemap`,Io={id:Fo,detector:d(e=>/^\s*treemap/.test(e),`detector`),loader:d(async()=>{let{diagram:e}=await b(async()=>{let{diagram:e}=await import(`./diagram-PSM6KHXK-ylLWjiNM.js`);return{diagram:e}},__vite__mapDeps([71,1,2,3,33,34,11,8,12,35,36,37,38,39,40,41,46,50,47,5,6,7,42,14,30]));return{id:Fo,diagram:e}},`loader`)},Lo=!1,Ro=d(()=>{Lo||(Lo=!0,ie(`error`,go,e=>e.toLowerCase().trim()===`error`),ie(`---`,{db:{clear:d(()=>{},`clear`)},styles:{},renderer:{draw:d(()=>{},`draw`)},parser:{parse:d(()=>{throw Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},`parse`)},init:d(()=>null,`init`)},e=>e.toLowerCase().trimStart().startsWith(`---`)),m(vo,So,Po),m(Pa,wo,oo,io,Ba,Wa,Ka,Ja,eo,no,Ra,Ia,bo,Ha,uo,co,po,Xa,Eo,Oo,Qa,Mo,Ao,Io))},`addDiagrams`),zo=d(async()=>{u.debug(`Loading registered diagrams`);let e=(await Promise.allSettled(Object.entries(se).map(async([e,{detector:t,loader:n}])=>{if(n)try{fe(e)}catch{try{let{diagram:e,id:r}=await n();ie(r,e,t)}catch(t){throw u.error(`Failed to load external diagram with key ${e}. Removing from detectors.`),delete se[e],t}}}))).filter(e=>e.status===`rejected`);if(e.length>0){u.error(`Failed to load ${e.length} external diagrams`);for(let t of e)u.error(t);throw Error(`Failed to load ${e.length} external diagrams`)}},`loadRegisteredDiagrams`),Bo=`graphics-document document`;function Vo(e,t){e.attr(`role`,Bo),t!==``&&e.attr(`aria-roledescription`,t)}d(Vo,`setA11yDiagramInfo`);function Ho(e,t,n,r){if(e.insert!==void 0){if(n){let t=`chart-desc-${r}`;e.attr(`aria-describedby`,t),e.insert(`desc`,`:first-child`).attr(`id`,t).text(n)}if(t){let n=`chart-title-${r}`;e.attr(`aria-labelledby`,n),e.insert(`title`,`:first-child`).attr(`id`,n).text(t)}}}d(Ho,`addSVGa11yTitleDescription`);var Uo=class e{constructor(e,t,n,r,i){this.type=e,this.text=t,this.db=n,this.parser=r,this.renderer=i}static{d(this,`Diagram`)}static async fromText(t,n={}){let r=pe(),i=te(t,r);t=me(t)+`
35
+ `;try{fe(i)}catch{let e=_(i);if(!e)throw new ue(`Diagram ${i} not found.`);let{id:t,diagram:n}=await e();ie(t,n)}let{db:a,parser:o,renderer:s,init:c}=fe(i);return o.parser&&(o.parser.yy=a),a.clear?.(),c?.(r),n.title&&a.setDiagramTitle?.(n.title),await o.parse(t),new e(i,t,a,o,s)}async render(e,t){await this.renderer.draw(this.text,e,t,this)}getParser(){return this.parser}getType(){return this.type}},Wo=[],Go=d(()=>{Wo.forEach(e=>{e()}),Wo=[]},`attachFunctions`),Ko=d(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,``).trimStart(),`cleanupComments`);function qo(e){let t=e.match(ne);if(!t)return{text:e,metadata:{}};let n=gi(t[1],{schema:hi})??{};n=typeof n==`object`&&!Array.isArray(n)?n:{};let r={};return n.displayMode&&(r.displayMode=n.displayMode.toString()),n.title&&(r.title=n.title.toString()),n.config&&(r.config=n.config),{text:e.slice(t[0].length),metadata:r}}d(qo,`extractFrontMatter`);var Jo=d(e=>e.replace(/\r\n?/g,`
36
+ `).replace(/<(\w+)([^>]*)>/g,(e,t,n)=>`<`+t+n.replace(/="([^"]*)"/g,`='$1'`)+`>`),`cleanupText`),Yo=d(e=>{let{text:t,metadata:n}=qo(e),{displayMode:r,title:i,config:a={}}=n;return r&&(a.gantt||={},a.gantt.displayMode=r),{title:i,config:a,text:t}},`processFrontmatter`),Xo=d(e=>{let t=ge.detectInit(e)??{},n=ge.detectDirective(e,`wrap`);return Array.isArray(n)?t.wrap=n.some(({type:e})=>e===`wrap`):n?.type===`wrap`&&(t.wrap=!0),{text:ve(e),directive:t}},`processDirectives`);function Zo(e){let t=Yo(Jo(e)),n=Xo(t.text),r=ye(t.config,n.directive);return e=Ko(n.text),{code:e,title:t.title,config:r}}d(Zo,`preprocessDiagram`);function Qo(e){let t=new TextEncoder().encode(e),n=Array.from(t,e=>String.fromCodePoint(e)).join(``);return btoa(n)}d(Qo,`toBase64`);var $o=5e4,es=`graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa`,ts=`sandbox`,ns=`loose`,rs=`http://www.w3.org/2000/svg`,is=`http://www.w3.org/1999/xlink`,as=`http://www.w3.org/1999/xhtml`,os=`100%`,ss=`100%`,cs=`border:0;margin:0;`,ls=`margin:0`,us=`allow-top-navigation-by-user-activation allow-popups`,ds=`The "iframe" tag is not supported by your browser.`,fs=[`foreignobject`],ps=[`dominant-baseline`];function ms(e){let t=Zo(e);return h(),oe(t.config??{}),t}d(ms,`processAndSetConfigs`);async function hs(e,t){Ro();try{let{code:t,config:n}=ms(e);return{diagramType:(await Es(t)).type,config:n}}catch(e){if(t?.suppressErrors)return!1;throw e}}d(hs,`parse`);var gs=d((e,t,n=[])=>`
37
+ .${e} ${t} { ${n.join(` !important; `)} !important; }`,`cssImportantStyles`),_s=d((e,t=new Map)=>{let n=``;if(e.themeCSS!==void 0&&(n+=`
38
38
  ${e.themeCSS}`),e.fontFamily!==void 0&&(n+=`
39
39
  :root { --mermaid-font-family: ${e.fontFamily}}`),e.altFontFamily!==void 0&&(n+=`
40
- :root { --mermaid-alt-font-family: ${e.altFontFamily}}`),t instanceof Map){let r=e.htmlLabels??e.flowchart?.htmlLabels?[`> *`,`span`]:[`rect`,`polygon`,`ellipse`,`circle`,`path`];t.forEach(e=>{ja(e.styles)||r.forEach(t=>{n+=hs(e.id,t,e.styles)}),ja(e.textStyles)||(n+=hs(e.id,`tspan`,(e?.textStyles||[]).map(e=>e.replace(`color`,`fill`))))})}return n},`createCssStyles`),_s=d((e,t,n,r)=>oa(ta(`${r}{${T(t,gs(e,n),e.themeVariables)}}`),sa),`createUserStyles`),vs=d((e=``,t,n)=>{let r=e;return!n&&!t&&(r=r.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,`marker-end="url(#`)),r=ge(r),r=r.replace(/<br>/g,`<br/>`),r},`cleanUpSvgCode`),ys=d((e=``,t)=>`<iframe style="width:${as};height:${t?.viewBox?.baseVal?.height?t.viewBox.baseVal.height+`px`:os};${ss}" src="data:text/html;charset=UTF-8;base64,${Zo(`<body style="${cs}">${e}</body>`)}" sandbox="${ls}">
41
- ${us}
42
- </iframe>`,`putIntoIFrame`),bs=d((e,t,n,r,i)=>{let a=e.append(`div`);a.attr(`id`,n),r&&a.attr(`style`,r);let o=a.append(`svg`).attr(`id`,t).attr(`width`,`100%`).attr(`xmlns`,ns);return i&&o.attr(`xmlns:xlink`,i),o.append(`g`),e},`appendDivSvgG`);function xs(e,t){return e.append(`iframe`).attr(`id`,t).attr(`style`,`width: 100%; height: 100%;`).attr(`sandbox`,``)}d(xs,`sandboxedIframe`);var Ss=d((e,t,n,r)=>{e.getElementById(t)?.remove(),e.getElementById(n)?.remove(),e.getElementById(r)?.remove()},`removeExistingElements`),Cs=d(async function(e,t,n){Lo();let r=ps(t);t=r.code;let i=fe();u.debug(i),t.length>(i?.maxTextSize??Qo)&&(t=$o);let a=`#`+e,o=`i`+e,s=`#`+o,c=`d`+e,l=`#`+c,p=d(()=>{let e=f(h?s:l).node();e&&`remove`in e&&e.remove()},`removeTempElements`),m=f(`body`),h=i.securityLevel===es,g=i.securityLevel===ts,_=i.fontFamily;n===void 0?(Ss(document,e,c,o),h?(m=f(xs(f(`body`),o).nodes()[0].contentDocument.body),m.node().style.margin=0):m=f(`body`),bs(m,e,c)):(n&&(n.innerHTML=``),h?(m=f(xs(f(n),o).nodes()[0].contentDocument.body),m.node().style.margin=0):m=f(n),bs(m,e,c,`font-family: ${_}`,rs));let v,y;try{v=await Ho.fromText(t,{title:r.title})}catch(e){if(i.suppressErrorRendering)throw p(),e;v=await Ho.fromText(`error`),y=e}let b=m.select(l).node(),x=v.type,C=b.firstChild,w=C.firstChild,ee=v.renderer.getClasses?.(t,v),te=_s(i,x,ee,a),re=document.createElement(`style`);re.innerHTML=te,C.insertBefore(re,w);try{await v.renderer.draw(t,e,Ve.version,v)}catch(n){throw i.suppressErrorRendering?p():mo.draw(t,e,Ve.version),n}let ie=m.select(`${l} svg`),ae=v.db.getAccTitle?.(),oe=v.db.getAccDescription?.();Es(x,ie,ae,oe),m.select(`[id="${e}"]`).selectAll(`foreignobject > *`).attr(`xmlns`,is);let T=m.select(l).node().innerHTML;if(u.debug(`config.arrowMarkerAbsolute`,i.arrowMarkerAbsolute),T=vs(T,h,ne(i.arrowMarkerAbsolute)),h){let e=m.select(l+` svg`).node();T=ys(T,e)}else g||(T=S.sanitize(T,{ADD_TAGS:ds,ADD_ATTR:fs,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(Wo(),y)throw y;return p(),{diagramType:x,svg:T,bindFunctions:v.db.bindFunctions}},`render`);function ws(e={}){let t=se({},e);t?.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables||={},t.themeVariables.fontFamily=t.fontFamily),g(t),t?.theme&&t.theme in p?t.themeVariables=p[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=p.default.getThemeVariables(t.themeVariables)),l((typeof t==`object`?y(t):ue()).logLevel),Lo()}d(ws,`initialize`);var Ts=d((e,t={})=>{let{code:n}=Xo(e);return Ho.fromText(n,t)},`getDiagramFromText`);function Es(e,t,n,r){Bo(t,e),Vo(t,n,r,t.attr(`id`))}d(Es,`addA11yInfo`);var Ds=Object.freeze({render:Cs,parse:ms,getDiagramFromText:Ts,initialize:ws,getConfig:fe,setConfig:v,getSiteConfig:ue,updateSiteConfig:x,reset:d(()=>{h()},`reset`),globalReset:d(()=>{h(ie)},`globalReset`),defaultConfig:ie});l(fe().logLevel),h(fe());var Os=d((e,t,n)=>{u.warn(e),me(e)?(n&&n(e.str,e.hash),t.push({...e,message:e.str,error:e})):(n&&n(e),e instanceof Error&&t.push({str:e.message,message:e.message,hash:e.name,error:e}))},`handleError`),ks=d(async function(e={querySelector:`.mermaid`}){try{await As(e)}catch(t){if(me(t)&&u.error(t.str),H.parseError&&H.parseError(t),!e.suppressErrors)throw u.error(`Use the suppressErrors option to suppress these errors`),t}},`run`),As=d(async function({postRenderCallback:e,querySelector:t,nodes:n}={querySelector:`.mermaid`}){let r=Ds.getConfig();u.debug(`${e?``:`No `}Callback function found`);let i;if(n)i=n;else if(t)i=document.querySelectorAll(t);else throw Error(`Nodes and querySelector are both undefined`);u.debug(`Found ${i.length} diagrams`),r?.startOnLoad!==void 0&&(u.debug(`Start On Load: `+r?.startOnLoad),Ds.updateSiteConfig({startOnLoad:r?.startOnLoad}));let a=new he.InitIDGenerator(r.deterministicIds,r.deterministicIDSeed),o,s=[];for(let t of Array.from(i)){if(u.info(`Rendering diagram: `+t.id),t.getAttribute(`data-processed`))continue;t.setAttribute(`data-processed`,`true`);let n=`mermaid-${a.next()}`;o=t.innerHTML,o=Ne(he.entityDecode(o)).trim().replace(/<br\s*\/?>/gi,`<br/>`);let r=he.detectInit(o);r&&u.debug(`Detected early reinit: `,r);try{let{svg:r,bindFunctions:i}=await Bs(n,o,t);t.innerHTML=r,e&&await e(n),i&&i(t)}catch(e){Os(e,s,H.parseError)}}if(s.length>0)throw s[0]},`runThrowsErrors`),js=d(function(e){Ds.initialize(e)},`initialize`),Ms=d(async function(e,t,n){u.warn(`mermaid.init is deprecated. Please use run instead.`),e&&js(e);let r={postRenderCallback:n,querySelector:`.mermaid`};typeof t==`string`?r.querySelector=t:t&&(t instanceof HTMLElement?r.nodes=[t]:r.nodes=t),await ks(r)},`init`),Ns=d(async(e,{lazyLoad:t=!0}={})=>{Lo(),m(...e),t===!1&&await Ro()},`registerExternalDiagrams`),Ps=d(function(){if(H.startOnLoad){let{startOnLoad:e}=Ds.getConfig();e&&H.run().catch(e=>u.error(`Mermaid failed to initialize`,e))}},`contentLoaded`);typeof document<`u`&&window.addEventListener(`load`,Ps,!1);var Fs=d(function(e){H.parseError=e},`setParseErrorHandler`),Is=[],Ls=!1,Rs=d(async()=>{if(!Ls){for(Ls=!0;Is.length>0;){let e=Is.shift();if(e)try{await e()}catch(e){u.error(`Error executing queue`,e)}}Ls=!1}},`executeQueue`),zs=d(async(e,t)=>new Promise((n,r)=>{let i=d(()=>new Promise((i,a)=>{Ds.parse(e,t).then(e=>{i(e),n(e)},e=>{u.error(`Error parsing`,e),H.parseError?.(e),a(e),r(e)})}),`performCall`);Is.push(i),Rs().catch(r)}),`parse`),Bs=d((e,t,n)=>new Promise((r,i)=>{let a=d(()=>new Promise((a,o)=>{Ds.render(e,t,n).then(e=>{a(e),r(e)},e=>{u.error(`Error parsing`,e),H.parseError?.(e),o(e),i(e)})}),`performCall`);Is.push(a),Rs().catch(i)}),`render`),H={startOnLoad:!0,mermaidAPI:Ds,parse:zs,render:Bs,init:Ms,run:ks,registerExternalDiagrams:Ns,registerLayoutLoaders:yi,initialize:js,parseError:void 0,contentLoaded:Ps,setParseErrorHandler:Fs,detectType:ee,registerIconPacks:Me,getRegisteredDiagramsMetadata:d(()=>Object.keys(oe).map(e=>({id:e})),`getRegisteredDiagramsMetadata`)},Vs=H,Hs=document.querySelector(`#review-app`);if(!Hs)throw Error(`review app root missing`);var Us=Hs,U=Us.dataset.reviewSessionId??``,Ws=window.location.hash.startsWith(`#`)?window.location.hash.slice(1):``,W,Gs,Ks=``,G=!1;Vs.initialize({startOnLoad:!1,securityLevel:`strict`,theme:`default`,flowchart:{useMaxWidth:!0}});var qs=0,Js=r();Js.stores.$wallets.subscribe(()=>J()),Js.stores.$connection.subscribe(()=>J());var K=!1,Ys=!1,q,Xs=!1,Zs=o();Zs&&window.setTimeout(()=>{Zs=!1,J()},2e3),U&&Ws?Mc():J();var Qs;function $s(e){let t=e.reviewState?.humanReadableReview?.freshness.expiresAt;return t?Date.parse(t):void 0}function ec(e){if(Xs)return`session_expired`;if(e.executionResult||e.internalStatus===`success`||e.internalStatus===`failure`)return`done`;if(e.internalStatus===`signed_pending_result`)return`chain_wait`;if(e.signingInProgress||K)return`signing`;if(e.reviewState?.status===`ready_for_wallet_review`){let t=$s(e);return t!==void 0&&Date.now()>t?`expired_quote`:`ready`}return e.reviewState?`stopped`:e.activeAccount?`pre_review`:`no_identity`}function tc(e){return e===`done`||e===`chain_wait`?`result`:e===`ready`||e===`expired_quote`||e===`signing`?`sign`:`review`}var nc={no_identity:`No active wallet account for this review - see the details below.`,pre_review:`Start the review to check this transaction against live mainnet data.`,stopped:`The review stopped - see the reason below, then run it again.`,ready:`Ready to sign - check the summary, then sign in your wallet.`,expired_quote:`The price quote expired. Your funds are safe - refresh to get a current quote.`,signing:`Waiting for your wallet - approve or reject the request in the wallet popup.`,chain_wait:`Signed - waiting for the chain result.`,done:`This review session is finished - for another transaction, ask your AI client to prepare a new review.`,session_expired:`This review session has expired. Ask your AI client for a new review.`};function rc(e){let t=[{key:`review`,label:`Review`},{key:`sign`,label:`Sign`},{key:`result`,label:`Result`}],n=t.findIndex(t=>t.key===e),r=$(`div`,`wizard-steps`);return t.forEach((e,i)=>{let a=i<n?`done`:i===n?`current`:`upcoming`,o=$(`span`,a===`upcoming`?`wizard-step`:`wizard-step ${a}`,`${a===`done`?`✓`:a===`current`?`●`:`${i+1}.`} ${e.label}`);o.setAttribute(`aria-label`,`${e.label} step ${a}`),r.append(o),i<t.length-1&&r.append($(`span`,`wizard-sep`,`→`))}),r}function ic(e){return e.length>12?`${e.slice(0,6)}…${e.slice(-4)}`:e}function ac(){let e=$(`div`,`header-wallet`),t=W?.activeAccount;if(!t||Xs)return e;let n=Js.stores.$connection.get(),r=n.status===`connected`&&n.account.address===t.account,i=Zs||n.status===`connecting`,a=$(`span`,`wallet-chip`),o=$(`span`,`wallet-chip-dot`);r||o.classList.add(i?`wallet-chip-dot-settling`:`wallet-chip-dot-idle`),a.append(o);let s=t.walletName?`${t.walletName} · ${ic(t.account)}`:ic(t.account);return a.append($(`span`,void 0,s)),a.title=t.account,e.append(a),i&&!r&&e.append($(`span`,`status`,`Reconnecting signer…`)),e}function J(){Us.innerHTML=``;let e=$(`section`,`review-shell`),t=$(`div`,`page-header`);if(t.append($(`h1`,void 0,`Say Ur Intent`)),t.append($(`span`,`page-subtitle`,`Transaction review and signing`)),t.append(ac()),e.append(t),Ks){let t=$(`p`,`status error`,Ks);t.setAttribute(`role`,`status`),t.setAttribute(`aria-live`,`polite`),e.append(t)}if(!U||!Ws){e.append($(`p`,`error`,`Missing review session id or token. Open the review URL from your AI client again.`)),Us.append(e);return}if(!W){e.append(Q(`Reload review session`,()=>void Nc(),`secondary`)),Us.append(e);return}let n=ec(W);switch(e.append(rc(tc(n))),e.append($(`h3`,`stage-headline`,nc[n])),q&&e.append($(`p`,q.kind===`error`?`error sign-banner`:`status sign-banner`,q.text)),oc(n),e.append(lc(W)),n){case`session_expired`:break;case`done`:case`chain_wait`:W.executionResult&&e.append(_c(W.executionResult)),e.append(hc(W,n));break;case`signing`:{let t=X(`Signing in progress`);t.append($(`p`,void 0,`Your wallet shows exactly what will be signed. Nothing happens without your approval there.`)),t.append($(`p`,void 0,`If you do not see the wallet popup, open your wallet extension - or cancel below.`));let r=$(`div`,`actions`);r.append(Q(`Cancel signing`,()=>void gc(),`secondary`)),t.append(r),e.append(t),e.append(hc(W,n));break}case`ready`:W.reviewState&&(e.append(fc(W.reviewState)),e.append(Fc(W.reviewState))),e.append(hc(W,n));break;case`expired_quote`:{let t=X(`Quote expired`);t.append($(`p`,void 0,`Nothing was signed and no funds moved. Prices are only held for 30 seconds - refresh to continue.`));let r=$(`div`,`actions`),i=Q(`Refresh price quote`,()=>void Pc(),`primary`);i.disabled=G,r.append(i),t.append(r),e.append(t),e.append(hc(W,n));break}case`stopped`:e.append(sc(W)),e.append(hc(W,n));break;case`no_identity`:{let t=X(`No active wallet account`);t.append($(`p`,`error`,`This review has no active wallet account. The account was cleared after the review was created, so its checks cannot run.`)),t.append($(`p`,`boundary-note`,`Connect a wallet from your AI client (session.create_wallet_identity) and prepare the review again. Wallet connection is not done on this review page.`)),e.append(t);break}case`pre_review`:{let t=Uc(W);if(t?.reviewModel){let n=X(`External proposal review`);n.append(vc(t.reviewModel)),e.append(n)}let r=$(`div`,`actions`),i=Q(`Start review`,()=>void Pc(),`primary`);i.disabled=G,r.append(i),e.append(r),e.append(hc(W,n));break}}Us.append(e)}function oc(e){Qs&&=(clearInterval(Qs),void 0),e===`ready`&&(Qs=setInterval(()=>{let e=W?$s(W):void 0,t=document.querySelector(`.quote-countdown`);if(e===void 0||!t)return;let n=Math.max(0,Math.ceil((e-Date.now())/1e3));t.textContent=`Quote valid for ${n}s - if it expires, just refresh; your funds stay safe.`,n===0&&J()},1e3))}function sc(e){let t=X(`Why the review stopped`),n=e.reviewState,r=n?.blockedReason??n?.refreshReason??`unknown`,i={insufficient_balance:`The account does not hold enough assets for this swap - see the exact amounts below.`,zero_expected_output:`The amount is too small for this pool minimum order size - try a larger amount.`,quote_unavailable:`The pool could not quote this amount right now - it may be below the pool minimum, or the price source had a hiccup.`,quote_stale:`The price quote expired. Running again fetches a fresh quote - your funds are safe.`,object_resolution_failed:`Required on-chain objects could not be resolved while building the transaction. Running again usually resolves this.`},a=(n?.checks??[]).find(e=>e.status===`fail`),o=String(r),s=a&&/zero_expected_output/.test(a.message)?`zero_expected_output`:o;i[s]&&t.append($(`p`,void 0,i[s])),t.append(Z(`Reason`,o));let c=(n?.checks??[]).filter(e=>e.status===`fail`);for(let e of c)t.append($(`p`,`error`,`${e.label}: ${e.message}`));let l=$(`div`,`actions`),u=Q(`Run review again`,()=>void Pc(),`primary`);return u.disabled=G,l.append(u),t.append(l),t}function cc(e,t){let n=BigInt(e),r=10n**BigInt(t),i=n/r,a=(n%r).toString().padStart(t,`0`).replace(/0+$/,``);return a?`${i}.${a}`:i.toString()}function lc(e){let t=X(`Transaction`),n=Uc(e),r=e.reviewState?.humanReadableReview,i=r&&r.kind===`swap_human_readable_review`?r:void 0;if(!n)return t.append($(`p`,`error`,`No action plan is available for this review session.`)),t;let a=n.assetFlowPreview.outgoing[0],o=n.assetFlowPreview.expectedIncoming[0],s=i?.assetFlow.outgoing[0],c=i?.assetFlow.minimumIncoming[0];t.append(Z(`You send`,s?`${cc(s.rawAmount,s.decimals)} ${s.symbol}`:a?`${a.amount} ${a.symbol}`:`-`)),t.append(Z(`You receive`,c?`at least ${cc(c.rawAmount,c.decimals)} ${c.symbol} (guaranteed minimum)`:o?`${o.symbol} (amount confirmed after review)`:`-`));let l=i?.assetFlow.fees[0];if(l){let e=BigInt(l.rawAmount);t.append(Z(`Protocol fee`,e===0n?`Included in the rate (paid from the coin you send)`:`${cc(l.rawAmount,l.decimals)} ${l.symbol}`))}let u=i?.recipients.find(e=>e.role===`output_recipient`);t.append(Z(`Receiving account`,u?`${Tc(u.address)} (your connected account)`:e.activeAccount?`${Tc(e.activeAccount.account)} (your connected account)`:`your connected account`));let d=i?.targets[0];return t.append(Z(`Via`,d?`${d.protocol} ${d.poolKey}`:n.protocol)),t}function uc(e){let t=new Map,n=e.humanReadableReview;if(n&&n.kind===`swap_human_readable_review`)for(let e of[...n.assetFlow.outgoing,...n.assetFlow.expectedIncoming,...n.assetFlow.minimumIncoming,...n.assetFlow.fees])t.set(e.coinType,{symbol:e.symbol,decimals:e.decimals});return t}function dc(e,t){let n=typeof e.coinType==`string`?e.coinType:``,r=typeof e.amount==`string`?e.amount:`0`,i=t.get(n);if(!i)return Dc(e);let a=r.startsWith(`-`),o=BigInt(a?r.slice(1):r);return`${a?`-`:`+`}${cc(o.toString(),i.decimals)} ${i.symbol}`}function fc(e){let t=X(`Review result`),n=e.checks.filter(e=>e.status===`pass`).length;t.append($(`p`,`key-findings-line`,`All review checks passed (${n}/${e.checks.length}).`));let r=e.simulation?.balanceChanges??[];if(r.length>0){let n=uc(e);t.append($(`p`,`key-findings-line`,`Simulation verified balance changes: ${r.map(e=>dc(e,n)).join(` | `)}`))}return e.ptbVisualization&&t.append(xc(e.ptbVisualization)),t.append($(`p`,`quote-countdown`,`Quote valid for 30s - if it expires, just refresh; your funds stay safe.`)),t}function pc(e){let t=[],n=e.reviewState;t.push(`# Say Ur Intent - review audit record`),t.push(``),t.push(`- Review session: ${e.reviewSessionId}`),t.push(`- Status: ${e.pollingStatus}`),n&&(t.push(`- Updated at: ${n.updatedAt}`),t.push(`- Review account: ${n.account}`)),e.executionResult&&(t.push(``),t.push(`## Execution result`),t.push(`- Status: ${e.executionResult.status}`),e.executionResult.txDigest&&t.push(`- Transaction digest: ${e.executionResult.txDigest}`),e.executionResult.failureReason&&t.push(`- Failure reason: ${e.executionResult.failureReason}`),e.executionResult.recordedAt&&t.push(`- Recorded at: ${e.executionResult.recordedAt}`));let r=n?.humanReadableReview;if(r&&r.kind===`swap_human_readable_review`){t.push(``),t.push(`## Transaction`),t.push(`- Action: ${r.proposedAction.title}`);for(let[e,n]of[[`You send`,r.assetFlow.outgoing],[`Expected incoming`,r.assetFlow.expectedIncoming],[`Minimum incoming`,r.assetFlow.minimumIncoming],[`Fees`,r.assetFlow.fees]])for(let r of n)t.push(`- ${e}: ${cc(r.rawAmount,r.decimals)} ${r.symbol} (${r.rawAmount} raw, ${r.coinType})`);for(let e of r.recipients)t.push(`- Recipient (${e.role}): ${e.address}`);let e=r.targets[0];e&&t.push(`- Via: ${e.protocol} ${e.poolKey} (${e.direction})`),t.push(`- Freshness: ${r.freshness.status}, expires ${r.freshness.expiresAt}`);for(let e of r.evidenceUsed)t.push(`- Evidence used - ${e.label}: ${e.summary}`);for(let e of r.missingEvidence)t.push(`- Missing evidence - ${e.label}: ${e.reason}`);for(let e of r.requiredUserChoices)t.push(`- Required user choice - ${e.label}: ${e.reason}`);for(let e of r.unsupportedClaims)t.push(`- Unsupported claim - ${e.label}: ${e.reason}`)}let i=n?.adapterLifecycle;i&&(t.push(``),t.push(`## Adapter lifecycle`),t.push(`- Adapter: ${i.adapterId} / ${i.protocol} / ${i.actionKind}`),t.push(`- Stage catalog: ${i.stageCatalogId}`),t.push(`- Completed: ${i.completedStages.join(`, `)||`-`}`),t.push(`- Missing: ${i.missingStages.join(`, `)||`-`}`));let a=n?.simulation;if(a){t.push(``),t.push(`## Review-time simulation`),t.push(`- Provider: ${a.provider}`),t.push(`- Success: ${a.success?`yes`:`no`}`),a.gasCostSummary&&t.push(`- Gas (raw): computation ${a.gasCostSummary.computationCostRaw}, storage ${a.gasCostSummary.storageCostRaw}, rebate ${a.gasCostSummary.storageRebateRaw}`);let e=a.balanceChanges??[];if(e.length>0){t.push(`- Balance changes (${e.length}):`);for(let n of e)t.push(` - ${Dc(n)}`)}let n=a.objectChanges??[];if(n.length>0){t.push(`- Object changes (${n.length}):`);for(let e of n)t.push(` - ${Oc(e)}`)}(e.length>0||n.length>0)&&(t.push(``),t.push(`Raw records:`),t.push("```json"),t.push(JSON.stringify({balanceChanges:e,objectChanges:n},null,2)),t.push("```"))}if(n?.ptbVisualization&&(t.push(``),t.push(`## PTB visualization (Mermaid)`),t.push("```mermaid"),t.push(n.ptbVisualization.mermaid.text),t.push("```")),n){t.push(``),t.push(`## Checks`);for(let e of n.checks)t.push(`- [${e.status}] ${e.id}: ${e.message}`)}return t.push(``),t.push(`_Local pre-signing review evidence. Not transaction bytes, signing data, signing readiness, or execution safety._`),t.join(`
43
- `)}async function mc(e){if(!W)return;let t=pc(W);try{await navigator.clipboard.writeText(t);let n=e.textContent;e.textContent=`Copied!`,setTimeout(()=>{e.textContent=n},1500)}catch{window.prompt(`Copy the audit record:`,t)}}function hc(e,t){let n=$(`section`,`card raw-evidence-card`),r=$(`div`,`card-header`);r.append($(`h2`,void 0,`Raw evidence`));let i=Q(`Copy as Markdown`,()=>void mc(i),`secondary`);i.classList.add(`copy-audit`),r.append(i),n.append(r);let a=document.createElement(`details`);a.className=`final-evidence collapsible-records`;let o=document.createElement(`summary`);o.textContent=t===`done`||t===`chain_wait`?`Show audit record (final snapshot)`:`Show audit record`,a.append(o);let s=document.createElement(`div`);s.className=`raw-evidence-body`;let c=e.reviewState,l=(e,t)=>{let n=document.createElement(`details`);n.className=`collapsible-records`;let r=document.createElement(`summary`);return r.textContent=e,n.append(r,t),n};return s.append(Z(`Review session`,e.reviewSessionId)),c?(s.append(Z(`Updated at`,c.updatedAt)),c.adapterLifecycle&&s.append(l(`Adapter lifecycle`,yc(c.adapterLifecycle))),c.humanReadableReview&&s.append(l(`Human-readable review (raw units)`,bc(c.humanReadableReview,c.simulation!==void 0))),c.simulation&&s.append(l(`Review-time simulation`,Sc(c.simulation))),c.ptbVisualization&&s.append(l(`PTB visualization`,xc(c.ptbVisualization))),s.append(l(`All checks (${c.checks.length})`,Kc(``,c.checks)))):s.append($(`p`,void 0,`No review evidence recorded yet.`)),a.append(s),n.append(a),n}async function gc(){try{await Hc(`/api/review/${encodeURIComponent(U)}/handoff/cancel`,{method:`POST`,body:`{}`}),q={kind:`info`,text:`Signing cancelled. Nothing was signed.`}}catch(e){q={kind:`error`,text:t(e,`Could not cancel signing.`)}}K=!1,await Nc()}function _c(e){let t=X(`Execution result`);t.classList.add(e.status===`success`?`execution-success`:e.status===`failure`?`execution-failure`:`execution-pending`);let n=e.status===`success`?`Transaction executed successfully.`:e.status===`failure`?`Transaction did not execute.`:`Signed - waiting for the chain result.`;return t.append($(`p`,`execution-headline`,n)),e.txDigest&&t.append(Z(`Transaction digest`,e.txDigest)),e.failureReason&&t.append(Z(`Failure reason`,e.failureReason)),e.failureDetail&&t.append(Z(`Detail`,e.failureDetail)),e.recordedAt&&t.append(Z(`Recorded at`,e.recordedAt)),t.append($(`p`,`boundary-note`,`Recorded from your wallet's execution result for this review session. Verify the digest in a Sui explorer for chain-level confirmation.`)),t}function vc(e){let t=$(`div`,`proposal-review`);return t.append($(`h4`,void 0,`Proposal review`)),t.append(Z(`Proposal id`,e.proposalId)),t.append(Z(`Proposal source`,`${e.proposalSource.kind}: ${e.proposalSource.name}`)),e.proposalSource.reference&&t.append(Z(`Source reference`,e.proposalSource.reference)),t.append(Z(`Purpose`,e.proposedAction.purpose)),t.append(Z(`Network`,e.proposedAction.network)),e.proposedAction.recipient&&t.append(Z(`Recipient`,qc(e.proposedAction.recipient))),e.proposedAction.target&&t.append(Z(`Target`,Jc(e.proposedAction.target))),t.append(Wc(`Proposal outgoing`,e.assetFlow.outgoing)),t.append(Wc(`Proposal expected incoming`,e.assetFlow.expectedIncoming)),t.append(Wc(`Proposal fees`,e.assetFlow.fees)),t.append(Y(`Evidence used`,e.evidenceUsed.map(e=>`${e.label}: ${e.summary}`))),t.append(Y(`Missing evidence`,e.missingEvidence.map(e=>`${e.label}: ${e.reason}`))),t.append(Y(`Required user choices`,e.requiredUserChoices.map(e=>`${e.label}: ${e.reason}`))),t.append(Y(`Unsupported claims`,e.unsupportedClaims.map(e=>`${e.label}: ${e.reason}`))),t.append(Z(`Freshness`,`${e.freshness.status}: ${e.freshness.reason}`)),t.append(Z(`Non-signable reason`,e.nonSignableReason.message)),t.append(Y(`Blocked capabilities`,e.nonSignableReason.blockedCapabilities)),t}function yc(e){let t=$(`div`,`adapter-lifecycle`);return t.append($(`h4`,void 0,`Adapter lifecycle`)),t.append(Z(`Adapter`,`${e.adapterId} / ${e.protocol} / ${e.actionKind}`)),t.append(Z(`Stage catalog`,e.stageCatalogId)),t.append(Y(`Completed stages`,e.completedStages)),t.append(Y(`Missing stages`,e.missingStages)),t.append($(`p`,`boundary-note`,`Local pre-signing review progress only.`)),t}function bc(e,t){let n=$(`div`,`human-readable-review`);n.append($(`h4`,void 0,`Human-readable review`)),n.append(Z(`Review kind`,e.kind)),n.append(Z(`Action`,e.proposedAction.title)),n.append(Z(`Summary`,wc(e.proposedAction.summary))),n.append(Z(`Protocol`,e.proposedAction.protocol)),n.append(Z(`Freshness`,`${e.freshness.status}: ${e.freshness.reason}`)),n.append(Z(`Expires at`,e.freshness.expiresAt)),n.append(Ac(e)),n.append(Y(`Recipients`,e.recipients.map(e=>`${e.role}: ${e.address}`))),n.append(Y(`Evidence used`,e.evidenceUsed.map(e=>`${e.label}: ${e.summary}`)));let r=t?e.missingEvidence.filter(e=>!/simulation/i.test(e.id)&&!/simulation/i.test(e.label)):e.missingEvidence;n.append(Y(`Missing evidence`,r.map(e=>`${e.label}: ${e.reason}`))),n.append(Y(`Required user choices`,e.requiredUserChoices.map(e=>`${e.label}: ${e.reason}`))),n.append(Y(`Unsupported claims`,e.unsupportedClaims.map(e=>`${e.label}: ${e.reason}`)));let i=t?e.blockingChecks.filter(e=>!/simulation/i.test(e.id)):e.blockingChecks;return i.length>0&&n.append(Kc(`Human review blocking checks`,i)),n.append($(`p`,`boundary-note`,`Displayable pre-signing evidence only.`)),n}function xc(e){let t=$(`div`,`ptb-visualization`);if(t.append($(`h4`,void 0,`PTB visualization`)),t.append(Z(`Generated at`,e.generatedAt)),e.source.renderer){let n=e.source.renderer;t.append(Z(`Renderer`,`${n.name}${n.packageName?` (${n.packageName}${n.version?`@${n.version}`:``})`:``}`))}let n=e.mermaid.text,r=e.mermaid.namedText,i=r!==n,a=i,o=document.createElement(`div`);o.className=`ptb-visualization-graph`,o.textContent=`Rendering PTB graph...`;let s=e=>{o.textContent=`Rendering PTB graph...`,o.classList.remove(`error`),qs+=1,Vs.render(`ptb-graph-${qs}`,e).then(e=>{o.innerHTML=e.svg}).catch(e=>{o.textContent=`PTB graph rendering failed: ${e instanceof Error?e.message:String(e)}`,o.classList.add(`error`)})};if(i){let e=Q(`Show addresses`,()=>{a=!a,e.textContent=a?`Show addresses`:`Show names`,s(a?r:n)},`secondary`);e.classList.add(`ptb-name-toggle`),t.append(e)}t.append(o),s(a?r:n);let c=document.createElement(`details`);c.className=`ptb-visualization-source`;let l=document.createElement(`summary`);l.textContent=`Mermaid source (${e.mermaid.text.length} chars)`;let u=Q(`Copy Mermaid`,()=>{navigator.clipboard.writeText(e.mermaid.text).then(()=>{u.textContent=`Copied!`,setTimeout(()=>{u.textContent=`Copy Mermaid`},1500)}).catch(()=>window.prompt(`Copy the Mermaid source:`,e.mermaid.text))},`secondary`);u.classList.add(`copy-mermaid`);let d=document.createElement(`pre`);return d.className=`ptb-visualization-text`,d.textContent=e.mermaid.text,c.append(l,u,d),t.append(c),e.diagnostics.length>0&&t.append(Y(`Renderer diagnostics`,e.diagnostics.map(e=>`${e.severity} ${e.code}: ${e.message}`))),t.append($(`p`,`boundary-note`,`Diagram of the locally stored transaction shape - visualization only.`)),t}function Sc(e){let t=$(`div`,`simulation-summary`);return t.append($(`h4`,void 0,`Review-time simulation`)),t.append(Z(`Provider`,e.provider)),t.append(Z(`Validation checks`,e.checksEnabled?`Enabled`:`Disabled`)),t.append(Z(`Simulation success`,e.success?`Yes`:`No`)),e.gasCostSummary&&t.append(Y(`Gas cost summary`,[`Computation cost raw: ${e.gasCostSummary.computationCostRaw}`,`Storage cost raw: ${e.gasCostSummary.storageCostRaw}`,`Storage rebate raw: ${e.gasCostSummary.storageRebateRaw}`,`Non-refundable storage fee raw: ${e.gasCostSummary.nonRefundableStorageFeeRaw}`])),e.error&&t.append(Z(`Simulation error`,e.error)),t.append(kc(`Balance changes`,e.balanceChanges,Dc)),t.append(kc(`Object changes`,e.objectChanges,Oc)),t.append($(`p`,`boundary-note`,`Redacted summary of private review-time simulation evidence.`)),t}var Cc=/\s*This MCP response contains no sign action, signing data, transaction bytes, or signing readiness\.?/g;function wc(e){return e.replace(Cc,``).trim()}function Tc(e){return e.length>14?`${e.slice(0,8)}…${e.slice(-6)}`:e}function Ec(e){return e.split(`<`).map(e=>e.split(`::`).map(e=>e.startsWith(`0x`)&&e.length>14?Tc(e):e).join(`::`)).join(`<`)}function Dc(e){let t=typeof e.address==`string`?Tc(e.address):`?`,n=typeof e.coinType==`string`?Ec(e.coinType):`?`,r=typeof e.amount==`string`?e.amount:`?`;return`${t}: ${r.startsWith(`-`)?r:`+${r}`} raw (${n})`}function Oc(e){return`${typeof e.idOperation==`string`?e.idOperation:`?`}: ${typeof e.objectType==`string`?Ec(e.objectType):`?`} (${typeof e.objectId==`string`?Tc(e.objectId):`?`})`}function kc(e,t,n){let r=document.createElement(`details`);r.className=`collapsible-records`;let i=document.createElement(`summary`);if(i.textContent=`${e} (${t?.length??0})`,r.append(i),!t||t.length===0)return r.append($(`p`,void 0,`None.`)),r;let a=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.textContent=n(e),a.append(t)}r.append(a);let o=document.createElement(`details`),s=document.createElement(`summary`);s.textContent=`Raw records`;let c=document.createElement(`pre`);return c.className=`collapsible-records-raw`,c.textContent=JSON.stringify(t,null,2),o.append(s,c),r.append(o),r}function Ac(e){switch(e.kind){case`swap_human_readable_review`:return jc(e)}}function jc(e){let t=$(`div`,`human-readable-review-projection`);return t.append(Gc(`Outgoing`,e.assetFlow.outgoing)),t.append(Gc(`Expected incoming`,e.assetFlow.expectedIncoming)),t.append(Gc(`Minimum incoming`,e.assetFlow.minimumIncoming)),t.append(Gc(`Fees`,e.assetFlow.fees)),t.append(Y(`Targets`,e.targets.map(e=>`${e.kind}: ${e.symbol} via ${e.protocol} ${e.poolKey}`))),t}async function Mc(){G=!0,J();try{await Hc(`/api/review/${encodeURIComponent(U)}/opened`,{method:`POST`,body:`{}`}),await Nc()}catch(e){Ks=t(e,`The local review server did not accept this review session.`),G=!1,J()}}async function Nc(){G=!0,J();try{W=await Hc(`/api/review/${encodeURIComponent(U)}`,{method:`GET`}),Gs??=W.plans[0]?.id,Ks=``}catch(e){e instanceof n&&e.status===410&&(Xs=!0),Ks=t(e,`Could not load the review session.`)}finally{G=!1,J()}}async function Pc(){let e=W?.activeAccount?.account,r=W?Uc(W):void 0;if(!(!e||!r)){G=!0,J();try{let t=()=>Hc(`/api/review/${encodeURIComponent(U)}/state`,{method:`POST`,body:JSON.stringify({planId:r.id,account:e})}),i;try{i=await t()}catch(e){if(e instanceof n&&e.status===409&&W?.signingInProgress)await Hc(`/api/review/${encodeURIComponent(U)}/handoff/cancel`,{method:`POST`,body:`{}`}),i=await t();else throw e}W={...await Hc(`/api/review/${encodeURIComponent(U)}`,{method:`GET`}),reviewState:i.reviewState},Ks=``}catch(e){Ks=t(e,`Could not run account-bound review.`)}finally{G=!1,J()}}}function Fc(e){let t=X(`Wallet signing`);t.classList.add(`signing-section`),q&&t.append($(`p`,q.kind===`error`?`error`:`status`,q.text));let n=Js.stores.$connection.get(),r=Js.stores.$wallets.get();if(n.status===`connected`)if(Zs=!1,n.account.address!==e.account)t.append($(`p`,`error`,`Connected wallet account ${n.account.address} does not match the reviewed account ${e.account}. Switch the wallet account before signing.`));else{t.append($(`p`,void 0,`Signing hands the digest-verified transaction bytes to your wallet. Finish or cancel the request in your wallet popup.`));let n=Q(K?`Waiting for wallet`:`Sign in wallet`,()=>void Ic(e),`primary`);n.disabled=K,t.append(n)}else if(Zs||n.status===`connecting`)t.append($(`p`,`status`,`Reconnecting your wallet…`));else if(r.length===0)t.append($(`p`,`error`,`No compatible Sui wallet was detected in this browser.`));else{t.append($(`p`,`error`,`Your wallet signer is not connected, so this transaction cannot be signed yet.`));let e=Lc(r,W?.activeAccount?.walletId,W?.activeAccount?.walletName);if(e){t.append($(`p`,`boundary-note`,`Reconnect resumes the signer session for this review's wallet. Your wallet (or hardware device) asks you to approve the connection; nothing is signed until you press Sign.`));let n=W?.activeAccount?.walletName??`wallet`,r=Q(Ys?`Reconnecting…`:`Reconnect ${n} to sign`,()=>void Rc(e),`primary`);r.disabled=Ys,t.append(r)}else t.append($(`p`,`boundary-note`,`This review's wallet was not detected in this browser. Open the review where that wallet (or hardware device) is available, or connect it from your AI client (session.create_wallet_identity) and reopen this review.`))}return t.append($(`p`,`boundary-note`,`Signing happens in your wallet. This page never sees private keys; it hands over bytes whose recomputed digest equals the reviewed commitment.`)),t}async function Ic(e){if(K)return;K=!0,q={kind:`info`,text:`Approve the request in your wallet. After approval this page waits for the chain result and shows success or failure here.`},J();let n=!1;try{let r=await Hc(`/api/review/${encodeURIComponent(U)}/handoff`,{method:`POST`,body:JSON.stringify({planId:e.planId,account:e.account})}),i=Vc(r.transactionBytesBase64),o=a.from(i);if(await o.getDigest()!==r.transactionMaterialCommitment)throw Error(`Handoff bytes do not match the reviewed transaction commitment.`);n=!0;let c=await Bc(Js.signTransaction({transaction:o}),9e4,`The wallet did not respond to the signing request within 90 seconds.`),l=Vc(c.bytes),u=await a.from(l).getDigest();if(u!==r.transactionMaterialCommitment){await zc(e,{status:`failure`,failureReason:`wallet_provider_error`}),q={kind:`error`,text:`The wallet returned bytes whose digest does not match the reviewed commitment; nothing was submitted.`};return}await zc(e,{status:`signed_pending_result`,txDigest:u});let d;try{d=await s.core.executeTransaction({transaction:l,signatures:[c.signature],include:{effects:!0}})}catch(n){await zc(e,{status:`failure`,failureReason:`transaction_submit_failed`}),q={kind:`error`,text:t(n,`The signed transaction could not be submitted to the chain.`)};return}if(d.$kind!==`Transaction`||!d.Transaction){await zc(e,{status:`failure`,failureReason:`execution_result_unavailable`}),q={kind:`error`,text:`The chain did not return an executed transaction record.`};return}let f=d.Transaction.digest,p=d.Transaction.effects?.status;if(p&&!p.success){await zc(e,{status:`failure`,failureReason:`unknown_failure`}),q={kind:`error`,text:`The transaction executed on chain but failed - see the receipt below.`};return}await zc(e,{status:`success`,txDigest:f}),q={kind:`info`,text:`Transaction executed successfully - receipt recorded below.`}}catch(r){let i=r instanceof Error?r.message:String(r);if(n){let t=c(r)?`wallet_rejected`:`wallet_provider_error`;try{await zc(e,{status:`failure`,failureReason:t})}catch{}}q={kind:`error`,text:t(r,i)}}finally{K=!1,await Nc()}}function Lc(e,t,n){if(t){let n=e.find(e=>i(e)===t);if(n)return n}if(n)return e.find(e=>e.name===n)}async function Rc(e){if(!(Ys||K)){Ys=!0,q=void 0,J();try{await Js.connectWallet({wallet:e})}catch(e){q={kind:`error`,text:t(e,c(e)?`Wallet connection was cancelled.`:`The wallet could not be connected. Try again.`)}}finally{Ys=!1,J()}}}async function zc(e,t){await Hc(`/api/review/${encodeURIComponent(U)}/result`,{method:`POST`,body:JSON.stringify({planId:e.planId,...t})})}async function Bc(e,t,n){let r;try{return await Promise.race([e,new Promise((e,i)=>{r=setTimeout(()=>i(Error(n)),t)})])}finally{clearTimeout(r)}}function Vc(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}async function Hc(t,r){let i=await fetch(t,{...r,headers:{"content-type":`application/json`,"x-say-ur-intent-token":Ws,...r.headers??{}}});if(!i.ok)throw new n(i.status,await e(i));return await i.json()}function Uc(e){return e.plans.find(e=>e.id===Gs)??e.plans[0]}function Wc(e,t){let n=$(`div`,`amount-list`);if(n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`None.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.textContent=`${e.amountDisplay} ${e.symbol??e.denomination??`unspecified asset`} (${e.amountKind})`,r.append(t)}return n.append(r),n}function Gc(e,t){let n=$(`div`,`amount-list`);if(n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`None.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=e.displayAmount?`${e.displayAmount} ${e.symbol}; `:``,n=document.createElement(`li`);n.textContent=`${e.role}: ${t}${e.rawAmount} raw ${e.symbol} (${e.coinType}, decimals ${e.decimals}; source ${e.rawAmountSource})`,r.append(n)}return n.append(r),n}function Y(e,t){let n=$(`div`,`fact-list`);if(n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`None.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.textContent=e,r.append(t)}return n.append(r),n}function Kc(e,t){let n=$(`div`,`checks`);if(e&&n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`No checks recorded.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.className=`check ${e.status}`,t.append($(`strong`,void 0,`${e.label}: ${e.status}`)),t.append($(`span`,void 0,` ${e.message}`)),t.append($(`small`,void 0,` Source: ${e.source}; id: ${e.id}`)),r.append(t)}return n.append(r),n}function X(e){let t=$(`section`,`card`);return t.append($(`h2`,void 0,e)),t}function Z(e,t){let n=$(`div`,`row`);return n.append($(`span`,`row-label`,e)),n.append($(`span`,`row-value`,t)),n}function qc(e){return[e.label,e.address].filter(Boolean).join(` / `)}function Jc(e){return typeof e==`string`?e:Object.entries(e).map(([e,t])=>`${e}: ${t}`).join(`; `)}function Q(e,t,n=`primary`){let r=document.createElement(`button`);return r.type=`button`,r.className=n,r.disabled=G,r.textContent=e,r.onclick=t,r}function $(e,t,n){let r=document.createElement(e);return t&&(r.className=t),n!==void 0&&(r.textContent=n),r}export{xi as a,gi as c,ua as i,He as l,Da as n,bi as o,pa as r,hi as s,ja as t,Ve as u};
40
+ :root { --mermaid-alt-font-family: ${e.altFontFamily}}`),t instanceof Map){let r=e.htmlLabels??e.flowchart?.htmlLabels?[`> *`,`span`]:[`rect`,`polygon`,`ellipse`,`circle`,`path`];t.forEach(e=>{Ma(e.styles)||r.forEach(t=>{n+=gs(e.id,t,e.styles)}),Ma(e.textStyles)||(n+=gs(e.id,`tspan`,(e?.textStyles||[]).map(e=>e.replace(`color`,`fill`))))})}return n},`createCssStyles`),vs=d((e,t,n,r)=>sa(na(`${r}{${w(t,_s(e,n),e.themeVariables)}}`),ca),`createUserStyles`),ys=d((e=``,t,n)=>{let r=e;return!n&&!t&&(r=r.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,`marker-end="url(#`)),r=_e(r),r=r.replace(/<br>/g,`<br/>`),r},`cleanUpSvgCode`),bs=d((e=``,t)=>`<iframe style="width:${os};height:${t?.viewBox?.baseVal?.height?t.viewBox.baseVal.height+`px`:ss};${cs}" src="data:text/html;charset=UTF-8;base64,${Qo(`<body style="${ls}">${e}</body>`)}" sandbox="${us}">
41
+ ${ds}
42
+ </iframe>`,`putIntoIFrame`),xs=d((e,t,n,r,i)=>{let a=e.append(`div`);a.attr(`id`,n),r&&a.attr(`style`,r);let o=a.append(`svg`).attr(`id`,t).attr(`width`,`100%`).attr(`xmlns`,rs);return i&&o.attr(`xmlns:xlink`,i),o.append(`g`),e},`appendDivSvgG`);function Ss(e,t){return e.append(`iframe`).attr(`id`,t).attr(`style`,`width: 100%; height: 100%;`).attr(`sandbox`,``)}d(Ss,`sandboxedIframe`);var Cs=d((e,t,n,r)=>{e.getElementById(t)?.remove(),e.getElementById(n)?.remove(),e.getElementById(r)?.remove()},`removeExistingElements`),ws=d(async function(e,t,n){Ro();let r=ms(t);t=r.code;let i=pe();u.debug(i),t.length>(i?.maxTextSize??$o)&&(t=es);let a=`#`+e,o=`i`+e,s=`#`+o,c=`d`+e,l=`#`+c,p=d(()=>{let e=f(h?s:l).node();e&&`remove`in e&&e.remove()},`removeTempElements`),m=f(`body`),h=i.securityLevel===ts,g=i.securityLevel===ns,_=i.fontFamily;n===void 0?(Cs(document,e,c,o),h?(m=f(Ss(f(`body`),o).nodes()[0].contentDocument.body),m.node().style.margin=0):m=f(`body`),xs(m,e,c)):(n&&(n.innerHTML=``),h?(m=f(Ss(f(n),o).nodes()[0].contentDocument.body),m.node().style.margin=0):m=f(n),xs(m,e,c,`font-family: ${_}`,is));let v,y;try{v=await Uo.fromText(t,{title:r.title})}catch(e){if(i.suppressErrorRendering)throw p(),e;v=await Uo.fromText(`error`),y=e}let b=m.select(l).node(),ee=v.type,S=b.firstChild,C=S.firstChild,te=v.renderer.getClasses?.(t,v),ne=vs(i,ee,te,a),ie=document.createElement(`style`);ie.innerHTML=ne,S.insertBefore(ie,C);try{await v.renderer.draw(t,e,He.version,v)}catch(n){throw i.suppressErrorRendering?p():ho.draw(t,e,He.version),n}let ae=m.select(`${l} svg`),oe=v.db.getAccTitle?.(),se=v.db.getAccDescription?.();Ds(ee,ae,oe,se),m.select(`[id="${e}"]`).selectAll(`foreignobject > *`).attr(`xmlns`,as);let w=m.select(l).node().innerHTML;if(u.debug(`config.arrowMarkerAbsolute`,i.arrowMarkerAbsolute),w=ys(w,h,re(i.arrowMarkerAbsolute)),h){let e=m.select(l+` svg`).node();w=bs(w,e)}else g||(w=x.sanitize(w,{ADD_TAGS:fs,ADD_ATTR:ps,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(Go(),y)throw y;return p(),{diagramType:ee,svg:w,bindFunctions:v.db.bindFunctions}},`render`);function Ts(e={}){let t=ce({},e);t?.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables||={},t.themeVariables.fontFamily=t.fontFamily),g(t),t?.theme&&t.theme in p?t.themeVariables=p[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=p.default.getThemeVariables(t.themeVariables)),l((typeof t==`object`?y(t):de()).logLevel),Ro()}d(Ts,`initialize`);var Es=d((e,t={})=>{let{code:n}=Zo(e);return Uo.fromText(n,t)},`getDiagramFromText`);function Ds(e,t,n,r){Vo(t,e),Ho(t,n,r,t.attr(`id`))}d(Ds,`addA11yInfo`);var Os=Object.freeze({render:ws,parse:hs,getDiagramFromText:Es,initialize:Ts,getConfig:pe,setConfig:v,getSiteConfig:de,updateSiteConfig:ee,reset:d(()=>{h()},`reset`),globalReset:d(()=>{h(ae)},`globalReset`),defaultConfig:ae});l(pe().logLevel),h(pe());var ks=d((e,t,n)=>{u.warn(e),he(e)?(n&&n(e.str,e.hash),t.push({...e,message:e.str,error:e})):(n&&n(e),e instanceof Error&&t.push({str:e.message,message:e.message,hash:e.name,error:e}))},`handleError`),As=d(async function(e={querySelector:`.mermaid`}){try{await js(e)}catch(t){if(he(t)&&u.error(t.str),V.parseError&&V.parseError(t),!e.suppressErrors)throw u.error(`Use the suppressErrors option to suppress these errors`),t}},`run`),js=d(async function({postRenderCallback:e,querySelector:t,nodes:n}={querySelector:`.mermaid`}){let r=Os.getConfig();u.debug(`${e?``:`No `}Callback function found`);let i;if(n)i=n;else if(t)i=document.querySelectorAll(t);else throw Error(`Nodes and querySelector are both undefined`);u.debug(`Found ${i.length} diagrams`),r?.startOnLoad!==void 0&&(u.debug(`Start On Load: `+r?.startOnLoad),Os.updateSiteConfig({startOnLoad:r?.startOnLoad}));let a=new ge.InitIDGenerator(r.deterministicIds,r.deterministicIDSeed),o,s=[];for(let t of Array.from(i)){if(u.info(`Rendering diagram: `+t.id),t.getAttribute(`data-processed`))continue;t.setAttribute(`data-processed`,`true`);let n=`mermaid-${a.next()}`;o=t.innerHTML,o=Pe(ge.entityDecode(o)).trim().replace(/<br\s*\/?>/gi,`<br/>`);let r=ge.detectInit(o);r&&u.debug(`Detected early reinit: `,r);try{let{svg:r,bindFunctions:i}=await Vs(n,o,t);t.innerHTML=r,e&&await e(n),i&&i(t)}catch(e){ks(e,s,V.parseError)}}if(s.length>0)throw s[0]},`runThrowsErrors`),Ms=d(function(e){Os.initialize(e)},`initialize`),Ns=d(async function(e,t,n){u.warn(`mermaid.init is deprecated. Please use run instead.`),e&&Ms(e);let r={postRenderCallback:n,querySelector:`.mermaid`};typeof t==`string`?r.querySelector=t:t&&(t instanceof HTMLElement?r.nodes=[t]:r.nodes=t),await As(r)},`init`),Ps=d(async(e,{lazyLoad:t=!0}={})=>{Ro(),m(...e),t===!1&&await zo()},`registerExternalDiagrams`),Fs=d(function(){if(V.startOnLoad){let{startOnLoad:e}=Os.getConfig();e&&V.run().catch(e=>u.error(`Mermaid failed to initialize`,e))}},`contentLoaded`);typeof document<`u`&&window.addEventListener(`load`,Fs,!1);var Is=d(function(e){V.parseError=e},`setParseErrorHandler`),Ls=[],Rs=!1,zs=d(async()=>{if(!Rs){for(Rs=!0;Ls.length>0;){let e=Ls.shift();if(e)try{await e()}catch(e){u.error(`Error executing queue`,e)}}Rs=!1}},`executeQueue`),Bs=d(async(e,t)=>new Promise((n,r)=>{let i=d(()=>new Promise((i,a)=>{Os.parse(e,t).then(e=>{i(e),n(e)},e=>{u.error(`Error parsing`,e),V.parseError?.(e),a(e),r(e)})}),`performCall`);Ls.push(i),zs().catch(r)}),`parse`),Vs=d((e,t,n)=>new Promise((r,i)=>{let a=d(()=>new Promise((a,o)=>{Os.render(e,t,n).then(e=>{a(e),r(e)},e=>{u.error(`Error parsing`,e),V.parseError?.(e),o(e),i(e)})}),`performCall`);Ls.push(a),zs().catch(i)}),`render`),V={startOnLoad:!0,mermaidAPI:Os,parse:Bs,render:Vs,init:Ns,run:As,registerExternalDiagrams:Ps,registerLayoutLoaders:yi,initialize:Ms,parseError:void 0,contentLoaded:Fs,setParseErrorHandler:Is,detectType:te,registerIconPacks:Ne,getRegisteredDiagramsMetadata:d(()=>Object.keys(se).map(e=>({id:e})),`getRegisteredDiagramsMetadata`)},Hs=V,Us=document.querySelector(`#review-app`);if(!Us)throw Error(`review app root missing`);var H=Us,U=H.dataset.reviewSessionId??``,Ws=window.location.hash.startsWith(`#`)?window.location.hash.slice(1):``,W,Gs,Ks=``,G=!1;Hs.initialize({startOnLoad:!1,securityLevel:`strict`,theme:`default`,flowchart:{useMaxWidth:!0}});var qs=0,Js=r();Js.stores.$wallets.subscribe(()=>$s()),Js.stores.$connection.subscribe(()=>$s());var K=!1,Ys=!1,q,Xs=!1,Zs=o();Zs&&window.setTimeout(()=>{Zs=!1,$s()},2e3);var Qs;function $s(){Qs===void 0&&(Qs=window.requestAnimationFrame(()=>{Qs=void 0,ec()}))}function ec(){if(!W)return;let e=H.querySelector(`.signing-section`);e&&W.reviewState&&oc(W)===`ready`&&rc(e,Uc(W.reviewState));let t=H.querySelector(`.header-wallet`);t&&rc(t,dc())}var tc=110;function nc(){return window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}function rc(e,t){if(!e.isEqualNode(t)){if(nc()||typeof e.animate!=`function`){e.replaceWith(t);return}for(let t of e.getAnimations())t.cancel();e.animate([{opacity:1},{opacity:0}],{duration:tc,easing:`ease`,fill:`forwards`}).finished.then(()=>{e.replaceWith(t),t.animate([{opacity:0},{opacity:1}],{duration:tc,easing:`ease`})}).catch(()=>{})}}U&&Ws?Bc():J();var ic;function ac(e){let t=e.reviewState?.humanReadableReview?.freshness.expiresAt;return t?Date.parse(t):void 0}function oc(e){if(Xs)return`session_expired`;if(e.executionResult||e.internalStatus===`success`||e.internalStatus===`failure`)return`done`;if(e.internalStatus===`signed_pending_result`)return`chain_wait`;if(e.signingInProgress||K)return`signing`;if(e.reviewState?.status===`ready_for_wallet_review`){let t=ac(e);return t!==void 0&&Date.now()>t?`expired_quote`:`ready`}return e.reviewState?`stopped`:e.activeAccount?`pre_review`:`no_identity`}function sc(e){return e===`done`||e===`chain_wait`?`result`:e===`ready`||e===`expired_quote`||e===`signing`?`sign`:`review`}var cc={no_identity:`No active wallet account for this review - see the details below.`,pre_review:`Start the review to check this transaction against live mainnet data.`,stopped:`The review stopped - see the reason below, then run it again.`,ready:`Ready to sign - check the summary, then sign in your wallet.`,expired_quote:`The price quote expired. Your funds are safe - refresh to get a current quote.`,signing:`Waiting for your wallet - approve or reject the request in the wallet popup.`,chain_wait:`Signed - waiting for the chain result.`,done:`This review session is finished - for another transaction, ask your AI client to prepare a new review.`,session_expired:`This review session has expired. Ask your AI client for a new review.`};function lc(e){let t=[{key:`review`,label:`Review`},{key:`sign`,label:`Sign`},{key:`result`,label:`Result`}],n=t.findIndex(t=>t.key===e),r=$(`div`,`wizard-steps`);return t.forEach((e,i)=>{let a=i<n?`done`:i===n?`current`:`upcoming`,o=$(`span`,a===`upcoming`?`wizard-step`:`wizard-step ${a}`,`${a===`done`?`✓`:a===`current`?`●`:`${i+1}.`} ${e.label}`);o.setAttribute(`aria-label`,`${e.label} step ${a}`),r.append(o),i<t.length-1&&r.append($(`span`,`wizard-sep`,`→`))}),r}function uc(e){return e.length>12?`${e.slice(0,6)}…${e.slice(-4)}`:e}function dc(){let e=$(`div`,`header-wallet`),t=W?.activeAccount;if(!t||Xs)return e;let n=Js.stores.$connection.get(),r=n.status===`connected`&&n.account.address===t.account,i=Zs||n.status===`connecting`,a=$(`span`,`wallet-chip`),o=$(`span`,`wallet-chip-dot`);r||o.classList.add(i?`wallet-chip-dot-settling`:`wallet-chip-dot-idle`),a.append(o);let s=t.walletName?`${t.walletName} · ${uc(t.account)}`:uc(t.account);return a.append($(`span`,void 0,s)),a.title=t.account,e.append(a),i&&!r&&e.append($(`span`,`status`,`Reconnecting signer…`)),e}function J(){let e=fc();pc(),e()}function fc(){let e=window.scrollY,t=new Set;H.querySelectorAll(`details[open]`).forEach(e=>{let n=e.querySelector(`summary`)?.textContent?.trim();n&&t.add(n)});let n=document.activeElement,r=n instanceof HTMLElement&&H.contains(n)&&n.textContent?.trim()?`${n.tagName}:${n.textContent.trim()}`:void 0;return()=>{if(H.querySelectorAll(`details`).forEach(e=>{let n=e.querySelector(`summary`)?.textContent?.trim();n&&t.has(n)&&(e.open=!0)}),e>0&&window.scrollTo({top:e}),r){let e=Array.from(H.querySelectorAll(`button, summary, a[href], [tabindex]`)).filter(e=>`${e.tagName}:${e.textContent?.trim()}`===r);e.length===1&&e[0]?.focus({preventScroll:!0})}}}function pc(){H.innerHTML=``;let e=$(`section`,`review-shell`),t=$(`div`,`page-header`);if(t.append($(`h1`,void 0,`Say Ur Intent`)),t.append($(`span`,`page-subtitle`,`Transaction review and signing`)),t.append(dc()),e.append(t),Ks){let t=$(`p`,`status error`,Ks);t.setAttribute(`role`,`status`),t.setAttribute(`aria-live`,`polite`),e.append(t)}if(!U||!Ws){e.append($(`p`,`error`,`Missing review session id or token. Open the review URL from your AI client again.`)),H.append(e);return}if(!W){e.append(Q(`Reload review session`,()=>void Vc(),`secondary`)),H.append(e);return}let n=oc(W);switch(e.append(lc(sc(n))),e.append($(`h3`,`stage-headline`,cc[n])),q&&e.append($(`p`,q.kind===`error`?`error sign-banner`:`status sign-banner`,q.text)),mc(n),e.append(_c(W)),n){case`session_expired`:break;case`done`:case`chain_wait`:W.executionResult&&e.append(Tc(W.executionResult)),e.append(Cc(W,n));break;case`signing`:{let t=X(`Signing in progress`);t.append($(`p`,void 0,`Your wallet shows exactly what will be signed. Nothing happens without your approval there.`)),t.append($(`p`,void 0,`If you do not see the wallet popup, open your wallet extension - or cancel below.`));let r=$(`div`,`actions`);r.append(Q(`Cancel signing`,()=>void wc(),`secondary`)),t.append(r),e.append(t),e.append(Cc(W,n));break}case`ready`:W.reviewState&&(e.append(bc(W.reviewState)),e.append(Uc(W.reviewState))),e.append(Cc(W,n));break;case`expired_quote`:{let t=X(`Quote expired`);t.append($(`p`,void 0,`Nothing was signed and no funds moved. Prices are only held for 30 seconds - refresh to continue.`));let r=$(`div`,`actions`),i=Q(`Refresh price quote`,()=>void Hc(),`primary`);i.disabled=G,r.append(i),t.append(r),e.append(t),e.append(Cc(W,n));break}case`stopped`:e.append(hc(W)),e.append(Cc(W,n));break;case`no_identity`:{let t=X(`No active wallet account`);t.append($(`p`,`error`,`This review has no active wallet account. The account was cleared after the review was created, so its checks cannot run.`)),t.append($(`p`,`boundary-note`,`Connect a wallet from your AI client (session.create_wallet_identity) and prepare the review again. Wallet connection is not done on this review page.`)),e.append(t);break}case`pre_review`:{let t=Zc(W);if(t?.reviewModel){let n=X(`External proposal review`);n.append(Ec(t.reviewModel)),e.append(n)}let r=$(`div`,`actions`),i=Q(`Start review`,()=>void Hc(),`primary`);i.disabled=G,r.append(i),e.append(r),e.append(Cc(W,n));break}}H.append(e)}function mc(e){if(ic&&=(clearInterval(ic),void 0),e!==`ready`)return;let t=()=>{let e=W?ac(W):void 0,t=document.querySelector(`.quote-countdown`);if(e===void 0||!t)return;let n=Math.max(0,Math.ceil((e-Date.now())/1e3));t.textContent=`Quote valid for ${n}s - if it expires, just refresh; your funds stay safe.`,n===0&&J()};t(),ic=setInterval(t,1e3)}function hc(e){let t=X(`Why the review stopped`),n=e.reviewState,r=n?.blockedReason??n?.refreshReason??`unknown`,i={insufficient_balance:`The account does not hold enough assets for this swap - see the exact amounts below.`,zero_expected_output:`The amount is too small for this pool minimum order size - try a larger amount.`,quote_unavailable:`The pool could not quote this amount right now - it may be below the pool minimum, or the price source had a hiccup.`,quote_stale:`The price quote expired. Running again fetches a fresh quote - your funds are safe.`,object_resolution_failed:`Required on-chain objects could not be resolved while building the transaction. Running again usually resolves this.`},a=(n?.checks??[]).find(e=>e.status===`fail`),o=String(r),s=a&&/zero_expected_output/.test(a.message)?`zero_expected_output`:o;i[s]&&t.append($(`p`,void 0,i[s])),t.append(Z(`Reason`,o));let c=(n?.checks??[]).filter(e=>e.status===`fail`);for(let e of c)t.append($(`p`,`error`,`${e.label}: ${e.message}`));let l=$(`div`,`actions`),u=Q(`Run review again`,()=>void Hc(),`primary`);return u.disabled=G,l.append(u),t.append(l),t}function gc(e,t){let n=BigInt(e),r=10n**BigInt(t),i=n/r,a=(n%r).toString().padStart(t,`0`).replace(/0+$/,``);return a?`${i}.${a}`:i.toString()}function _c(e){let t=X(`Transaction`),n=Zc(e),r=e.reviewState?.humanReadableReview,i=r&&r.kind===`swap_human_readable_review`?r:void 0;if(!n)return t.append($(`p`,`error`,`No action plan is available for this review session.`)),t;let a=n.assetFlowPreview.outgoing[0],o=n.assetFlowPreview.expectedIncoming[0],s=i?.assetFlow.outgoing[0],c=i?.assetFlow.minimumIncoming[0];t.append(Z(`You send`,s?`${gc(s.rawAmount,s.decimals)} ${s.symbol}`:a?`${a.amount} ${a.symbol}`:`-`)),t.append(Z(`You receive`,c?`at least ${gc(c.rawAmount,c.decimals)} ${c.symbol} (guaranteed minimum)`:o?`${o.symbol} (amount confirmed after review)`:`-`));let l=i?.assetFlow.fees[0];if(l){let e=BigInt(l.rawAmount);t.append(Z(`Protocol fee`,e===0n?`Included in the rate (paid from the coin you send)`:`${gc(l.rawAmount,l.decimals)} ${l.symbol}`))}let u=i?.recipients.find(e=>e.role===`output_recipient`);t.append(Z(`Receiving account`,u?`${Nc(u.address)} (your connected account)`:e.activeAccount?`${Nc(e.activeAccount.account)} (your connected account)`:`your connected account`));let d=i?.targets[0];return t.append(Z(`Via`,d?`${d.protocol} ${d.poolKey}`:n.protocol)),t}function vc(e){let t=new Map,n=e.humanReadableReview;if(n&&n.kind===`swap_human_readable_review`)for(let e of[...n.assetFlow.outgoing,...n.assetFlow.expectedIncoming,...n.assetFlow.minimumIncoming,...n.assetFlow.fees])t.set(e.coinType,{symbol:e.symbol,decimals:e.decimals});return t}function yc(e,t){let n=typeof e.coinType==`string`?e.coinType:``,r=typeof e.amount==`string`?e.amount:`0`,i=t.get(n);if(!i)return Fc(e);let a=r.startsWith(`-`),o=BigInt(a?r.slice(1):r);return`${a?`-`:`+`}${gc(o.toString(),i.decimals)} ${i.symbol}`}function bc(e){let t=X(`Review result`),n=e.checks.filter(e=>e.status===`pass`).length;t.append($(`p`,`key-findings-line`,`All review checks passed (${n}/${e.checks.length}).`));let r=e.simulation?.balanceChanges??[];if(r.length>0){let n=vc(e);t.append($(`p`,`key-findings-line`,`Simulation verified balance changes: ${r.map(e=>yc(e,n)).join(` | `)}`))}return e.ptbVisualization&&t.append(kc(e.ptbVisualization)),t.append($(`p`,`quote-countdown`,`Quote valid for 30s - if it expires, just refresh; your funds stay safe.`)),t}function xc(e){let t=[],n=e.reviewState;t.push(`# Say Ur Intent - review audit record`),t.push(``),t.push(`- Review session: ${e.reviewSessionId}`),t.push(`- Status: ${e.pollingStatus}`),n&&(t.push(`- Updated at: ${n.updatedAt}`),t.push(`- Review account: ${n.account}`)),e.executionResult&&(t.push(``),t.push(`## Execution result`),t.push(`- Status: ${e.executionResult.status}`),e.executionResult.txDigest&&t.push(`- Transaction digest: ${e.executionResult.txDigest}`),e.executionResult.failureReason&&t.push(`- Failure reason: ${e.executionResult.failureReason}`),e.executionResult.recordedAt&&t.push(`- Recorded at: ${e.executionResult.recordedAt}`));let r=n?.humanReadableReview;if(r&&r.kind===`swap_human_readable_review`){t.push(``),t.push(`## Transaction`),t.push(`- Action: ${r.proposedAction.title}`);for(let[e,n]of[[`You send`,r.assetFlow.outgoing],[`Expected incoming`,r.assetFlow.expectedIncoming],[`Minimum incoming`,r.assetFlow.minimumIncoming],[`Fees`,r.assetFlow.fees]])for(let r of n)t.push(`- ${e}: ${gc(r.rawAmount,r.decimals)} ${r.symbol} (${r.rawAmount} raw, ${r.coinType})`);for(let e of r.recipients)t.push(`- Recipient (${e.role}): ${e.address}`);let e=r.targets[0];e&&t.push(`- Via: ${e.protocol} ${e.poolKey} (${e.direction})`),t.push(`- Freshness: ${r.freshness.status}, expires ${r.freshness.expiresAt}`);for(let e of r.evidenceUsed)t.push(`- Evidence used - ${e.label}: ${e.summary}`);for(let e of r.missingEvidence)t.push(`- Missing evidence - ${e.label}: ${e.reason}`);for(let e of r.requiredUserChoices)t.push(`- Required user choice - ${e.label}: ${e.reason}`);for(let e of r.unsupportedClaims)t.push(`- Unsupported claim - ${e.label}: ${e.reason}`)}let i=n?.adapterLifecycle;i&&(t.push(``),t.push(`## Adapter lifecycle`),t.push(`- Adapter: ${i.adapterId} / ${i.protocol} / ${i.actionKind}`),t.push(`- Stage catalog: ${i.stageCatalogId}`),t.push(`- Completed: ${i.completedStages.join(`, `)||`-`}`),t.push(`- Missing: ${i.missingStages.join(`, `)||`-`}`));let a=n?.simulation;if(a){t.push(``),t.push(`## Review-time simulation`),t.push(`- Provider: ${a.provider}`),t.push(`- Success: ${a.success?`yes`:`no`}`),a.gasCostSummary&&t.push(`- Gas (raw): computation ${a.gasCostSummary.computationCostRaw}, storage ${a.gasCostSummary.storageCostRaw}, rebate ${a.gasCostSummary.storageRebateRaw}`);let e=a.balanceChanges??[];if(e.length>0){t.push(`- Balance changes (${e.length}):`);for(let n of e)t.push(` - ${Fc(n)}`)}let n=a.objectChanges??[];if(n.length>0){t.push(`- Object changes (${n.length}):`);for(let e of n)t.push(` - ${Ic(e)}`)}(e.length>0||n.length>0)&&(t.push(``),t.push(`Raw records:`),t.push("```json"),t.push(JSON.stringify({balanceChanges:e,objectChanges:n},null,2)),t.push("```"))}if(n?.ptbVisualization&&(t.push(``),t.push(`## PTB visualization (Mermaid)`),t.push("```mermaid"),t.push(n.ptbVisualization.mermaid.text),t.push("```")),n){t.push(``),t.push(`## Checks`);for(let e of n.checks)t.push(`- [${e.status}] ${e.id}: ${e.message}`)}return t.push(``),t.push(`_Local pre-signing review evidence. Not transaction bytes, signing data, signing readiness, or execution safety._`),t.join(`
43
+ `)}async function Sc(e){if(!W)return;let t=xc(W);try{await navigator.clipboard.writeText(t);let n=e.textContent;e.textContent=`Copied!`,setTimeout(()=>{e.textContent=n},1500)}catch{window.prompt(`Copy the audit record:`,t)}}function Cc(e,t){let n=$(`section`,`card raw-evidence-card`),r=$(`div`,`card-header`);r.append($(`h2`,void 0,`Raw evidence`));let i=Q(`Copy as Markdown`,()=>void Sc(i),`secondary`);i.classList.add(`copy-audit`),r.append(i),n.append(r);let a=document.createElement(`details`);a.className=`final-evidence collapsible-records`;let o=document.createElement(`summary`);o.textContent=t===`done`||t===`chain_wait`?`Show audit record (final snapshot)`:`Show audit record`,a.append(o);let s=document.createElement(`div`);s.className=`raw-evidence-body`;let c=e.reviewState,l=(e,t)=>{let n=document.createElement(`details`);n.className=`collapsible-records`;let r=document.createElement(`summary`);return r.textContent=e,n.append(r,t),n};return s.append(Z(`Review session`,e.reviewSessionId)),c?(s.append(Z(`Updated at`,c.updatedAt)),c.adapterLifecycle&&s.append(l(`Adapter lifecycle`,Dc(c.adapterLifecycle))),c.humanReadableReview&&s.append(l(`Human-readable review (raw units)`,Oc(c.humanReadableReview,c.simulation!==void 0))),c.simulation&&s.append(l(`Review-time simulation`,Ac(c.simulation))),c.ptbVisualization&&s.append(l(`PTB visualization`,kc(c.ptbVisualization))),s.append(l(`All checks (${c.checks.length})`,el(``,c.checks)))):s.append($(`p`,void 0,`No review evidence recorded yet.`)),a.append(s),n.append(a),n}async function wc(){try{await Xc(`/api/review/${encodeURIComponent(U)}/handoff/cancel`,{method:`POST`,body:`{}`}),q={kind:`info`,text:`Signing cancelled. Nothing was signed.`}}catch(e){q={kind:`error`,text:t(e,`Could not cancel signing.`)}}K=!1,await Vc()}function Tc(e){let t=X(`Execution result`);t.classList.add(e.status===`success`?`execution-success`:e.status===`failure`?`execution-failure`:`execution-pending`);let n=e.status===`success`?`Transaction executed successfully.`:e.status===`failure`?`Transaction did not execute.`:`Signed - waiting for the chain result.`;return t.append($(`p`,`execution-headline`,n)),e.txDigest&&t.append(Z(`Transaction digest`,e.txDigest)),e.failureReason&&t.append(Z(`Failure reason`,e.failureReason)),e.failureDetail&&t.append(Z(`Detail`,e.failureDetail)),e.recordedAt&&t.append(Z(`Recorded at`,e.recordedAt)),t.append($(`p`,`boundary-note`,`Recorded from your wallet's execution result for this review session. Verify the digest in a Sui explorer for chain-level confirmation.`)),t}function Ec(e){let t=$(`div`,`proposal-review`);return t.append($(`h4`,void 0,`Proposal review`)),t.append(Z(`Proposal id`,e.proposalId)),t.append(Z(`Proposal source`,`${e.proposalSource.kind}: ${e.proposalSource.name}`)),e.proposalSource.reference&&t.append(Z(`Source reference`,e.proposalSource.reference)),t.append(Z(`Purpose`,e.proposedAction.purpose)),t.append(Z(`Network`,e.proposedAction.network)),e.proposedAction.recipient&&t.append(Z(`Recipient`,tl(e.proposedAction.recipient))),e.proposedAction.target&&t.append(Z(`Target`,nl(e.proposedAction.target))),t.append(Qc(`Proposal outgoing`,e.assetFlow.outgoing)),t.append(Qc(`Proposal expected incoming`,e.assetFlow.expectedIncoming)),t.append(Qc(`Proposal fees`,e.assetFlow.fees)),t.append(Y(`Evidence used`,e.evidenceUsed.map(e=>`${e.label}: ${e.summary}`))),t.append(Y(`Missing evidence`,e.missingEvidence.map(e=>`${e.label}: ${e.reason}`))),t.append(Y(`Required user choices`,e.requiredUserChoices.map(e=>`${e.label}: ${e.reason}`))),t.append(Y(`Unsupported claims`,e.unsupportedClaims.map(e=>`${e.label}: ${e.reason}`))),t.append(Z(`Freshness`,`${e.freshness.status}: ${e.freshness.reason}`)),t.append(Z(`Non-signable reason`,e.nonSignableReason.message)),t.append(Y(`Blocked capabilities`,e.nonSignableReason.blockedCapabilities)),t}function Dc(e){let t=$(`div`,`adapter-lifecycle`);return t.append($(`h4`,void 0,`Adapter lifecycle`)),t.append(Z(`Adapter`,`${e.adapterId} / ${e.protocol} / ${e.actionKind}`)),t.append(Z(`Stage catalog`,e.stageCatalogId)),t.append(Y(`Completed stages`,e.completedStages)),t.append(Y(`Missing stages`,e.missingStages)),t.append($(`p`,`boundary-note`,`Local pre-signing review progress only.`)),t}function Oc(e,t){let n=$(`div`,`human-readable-review`);n.append($(`h4`,void 0,`Human-readable review`)),n.append(Z(`Review kind`,e.kind)),n.append(Z(`Action`,e.proposedAction.title)),n.append(Z(`Summary`,Mc(e.proposedAction.summary))),n.append(Z(`Protocol`,e.proposedAction.protocol)),n.append(Z(`Freshness`,`${e.freshness.status}: ${e.freshness.reason}`)),n.append(Z(`Expires at`,e.freshness.expiresAt)),n.append(Rc(e)),n.append(Y(`Recipients`,e.recipients.map(e=>`${e.role}: ${e.address}`))),n.append(Y(`Evidence used`,e.evidenceUsed.map(e=>`${e.label}: ${e.summary}`)));let r=t?e.missingEvidence.filter(e=>!/simulation/i.test(e.id)&&!/simulation/i.test(e.label)):e.missingEvidence;n.append(Y(`Missing evidence`,r.map(e=>`${e.label}: ${e.reason}`))),n.append(Y(`Required user choices`,e.requiredUserChoices.map(e=>`${e.label}: ${e.reason}`))),n.append(Y(`Unsupported claims`,e.unsupportedClaims.map(e=>`${e.label}: ${e.reason}`)));let i=t?e.blockingChecks.filter(e=>!/simulation/i.test(e.id)):e.blockingChecks;return i.length>0&&n.append(el(`Human review blocking checks`,i)),n.append($(`p`,`boundary-note`,`Displayable pre-signing evidence only.`)),n}function kc(e){let t=$(`div`,`ptb-visualization`);if(t.append($(`h4`,void 0,`PTB visualization`)),t.append(Z(`Generated at`,e.generatedAt)),e.source.renderer){let n=e.source.renderer;t.append(Z(`Renderer`,`${n.name}${n.packageName?` (${n.packageName}${n.version?`@${n.version}`:``})`:``}`))}let n=e.mermaid.text,r=e.mermaid.namedText,i=r!==n,a=i,o=document.createElement(`div`);o.className=`ptb-visualization-graph`,o.textContent=`Rendering PTB graph...`;let s=e=>{o.textContent=`Rendering PTB graph...`,o.classList.remove(`error`),qs+=1,Hs.render(`ptb-graph-${qs}`,e).then(e=>{o.innerHTML=e.svg}).catch(e=>{o.textContent=`PTB graph rendering failed: ${e instanceof Error?e.message:String(e)}`,o.classList.add(`error`)})};if(i){let e=Q(`Show addresses`,()=>{a=!a,e.textContent=a?`Show addresses`:`Show names`,s(a?r:n)},`secondary`);e.classList.add(`ptb-name-toggle`),t.append(e)}t.append(o),s(a?r:n);let c=document.createElement(`details`);c.className=`ptb-visualization-source`;let l=document.createElement(`summary`);l.textContent=`Mermaid source (${e.mermaid.text.length} chars)`;let u=Q(`Copy Mermaid`,()=>{navigator.clipboard.writeText(e.mermaid.text).then(()=>{u.textContent=`Copied!`,setTimeout(()=>{u.textContent=`Copy Mermaid`},1500)}).catch(()=>window.prompt(`Copy the Mermaid source:`,e.mermaid.text))},`secondary`);u.classList.add(`copy-mermaid`);let d=document.createElement(`pre`);return d.className=`ptb-visualization-text`,d.textContent=e.mermaid.text,c.append(l,u,d),t.append(c),e.diagnostics.length>0&&t.append(Y(`Renderer diagnostics`,e.diagnostics.map(e=>`${e.severity} ${e.code}: ${e.message}`))),t.append($(`p`,`boundary-note`,`Diagram of the locally stored transaction shape - visualization only.`)),t}function Ac(e){let t=$(`div`,`simulation-summary`);return t.append($(`h4`,void 0,`Review-time simulation`)),t.append(Z(`Provider`,e.provider)),t.append(Z(`Validation checks`,e.checksEnabled?`Enabled`:`Disabled`)),t.append(Z(`Simulation success`,e.success?`Yes`:`No`)),e.gasCostSummary&&t.append(Y(`Gas cost summary`,[`Computation cost raw: ${e.gasCostSummary.computationCostRaw}`,`Storage cost raw: ${e.gasCostSummary.storageCostRaw}`,`Storage rebate raw: ${e.gasCostSummary.storageRebateRaw}`,`Non-refundable storage fee raw: ${e.gasCostSummary.nonRefundableStorageFeeRaw}`])),e.error&&t.append(Z(`Simulation error`,e.error)),t.append(Lc(`Balance changes`,e.balanceChanges,Fc)),t.append(Lc(`Object changes`,e.objectChanges,Ic)),t.append($(`p`,`boundary-note`,`Redacted summary of private review-time simulation evidence.`)),t}var jc=/\s*This MCP response contains no sign action, signing data, transaction bytes, or signing readiness\.?/g;function Mc(e){return e.replace(jc,``).trim()}function Nc(e){return e.length>14?`${e.slice(0,8)}…${e.slice(-6)}`:e}function Pc(e){return e.split(`<`).map(e=>e.split(`::`).map(e=>e.startsWith(`0x`)&&e.length>14?Nc(e):e).join(`::`)).join(`<`)}function Fc(e){let t=typeof e.address==`string`?Nc(e.address):`?`,n=typeof e.coinType==`string`?Pc(e.coinType):`?`,r=typeof e.amount==`string`?e.amount:`?`;return`${t}: ${r.startsWith(`-`)?r:`+${r}`} raw (${n})`}function Ic(e){return`${typeof e.idOperation==`string`?e.idOperation:`?`}: ${typeof e.objectType==`string`?Pc(e.objectType):`?`} (${typeof e.objectId==`string`?Nc(e.objectId):`?`})`}function Lc(e,t,n){let r=document.createElement(`details`);r.className=`collapsible-records`;let i=document.createElement(`summary`);if(i.textContent=`${e} (${t?.length??0})`,r.append(i),!t||t.length===0)return r.append($(`p`,void 0,`None.`)),r;let a=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.textContent=n(e),a.append(t)}r.append(a);let o=document.createElement(`details`),s=document.createElement(`summary`);s.textContent=`Raw records`;let c=document.createElement(`pre`);return c.className=`collapsible-records-raw`,c.textContent=JSON.stringify(t,null,2),o.append(s,c),r.append(o),r}function Rc(e){switch(e.kind){case`swap_human_readable_review`:return zc(e)}}function zc(e){let t=$(`div`,`human-readable-review-projection`);return t.append($c(`Outgoing`,e.assetFlow.outgoing)),t.append($c(`Expected incoming`,e.assetFlow.expectedIncoming)),t.append($c(`Minimum incoming`,e.assetFlow.minimumIncoming)),t.append($c(`Fees`,e.assetFlow.fees)),t.append(Y(`Targets`,e.targets.map(e=>`${e.kind}: ${e.symbol} via ${e.protocol} ${e.poolKey}`))),t}async function Bc(){G=!0,J();try{await Xc(`/api/review/${encodeURIComponent(U)}/opened`,{method:`POST`,body:`{}`}),await Vc()}catch(e){Ks=t(e,`The local review server did not accept this review session.`),G=!1,J()}}async function Vc(){G=!0,J();try{W=await Xc(`/api/review/${encodeURIComponent(U)}`,{method:`GET`}),Gs??=W.plans[0]?.id,Ks=``}catch(e){e instanceof n&&e.status===410&&(Xs=!0),Ks=t(e,`Could not load the review session.`)}finally{G=!1,J()}}async function Hc(){let e=W?.activeAccount?.account,r=W?Zc(W):void 0;if(!(!e||!r)){G=!0,J();try{let t=()=>Xc(`/api/review/${encodeURIComponent(U)}/state`,{method:`POST`,body:JSON.stringify({planId:r.id,account:e})}),i;try{i=await t()}catch(e){if(e instanceof n&&e.status===409&&W?.signingInProgress)await Xc(`/api/review/${encodeURIComponent(U)}/handoff/cancel`,{method:`POST`,body:`{}`}),i=await t();else throw e}W={...await Xc(`/api/review/${encodeURIComponent(U)}`,{method:`GET`}),reviewState:i.reviewState},Ks=``}catch(e){Ks=t(e,`Could not run account-bound review.`)}finally{G=!1,J()}}}function Uc(e){let t=X(`Wallet signing`);t.classList.add(`signing-section`),q&&t.append($(`p`,q.kind===`error`?`error`:`status`,q.text));let n=Js.stores.$connection.get(),r=Js.stores.$wallets.get();if(n.status===`connected`)if(Zs=!1,n.account.address!==e.account)t.append($(`p`,`error`,`Connected wallet account ${n.account.address} does not match the reviewed account ${e.account}. Switch the wallet account before signing.`));else{t.append($(`p`,void 0,`Signing hands the digest-verified transaction bytes to your wallet. Finish or cancel the request in your wallet popup.`));let n=Q(K?`Waiting for wallet`:`Sign in wallet`,()=>void Wc(e),`primary`);n.disabled=K,t.append(n)}else if(Zs||n.status===`connecting`)t.append($(`p`,`status`,`Reconnecting your wallet…`));else if(r.length===0)t.append($(`p`,`error`,`No compatible Sui wallet was detected in this browser.`));else{t.append($(`p`,`error`,`Your wallet signer is not connected, so this transaction cannot be signed yet.`));let e=Gc(r,W?.activeAccount?.walletId,W?.activeAccount?.walletName);if(e){t.append($(`p`,`boundary-note`,`Reconnect resumes the signer session for this review's wallet. Your wallet (or hardware device) asks you to approve the connection; nothing is signed until you press Sign.`));let n=W?.activeAccount?.walletName??`wallet`,r=Q(Ys?`Reconnecting…`:`Reconnect ${n} to sign`,()=>void Kc(e),`primary`);r.disabled=Ys,t.append(r)}else t.append($(`p`,`boundary-note`,`This review's wallet was not detected in this browser. Open the review where that wallet (or hardware device) is available, or connect it from your AI client (session.create_wallet_identity) and reopen this review.`))}return t.append($(`p`,`boundary-note`,`Signing happens in your wallet. This page never sees private keys; it hands over bytes whose recomputed digest equals the reviewed commitment.`)),t}async function Wc(e){if(K)return;K=!0,q={kind:`info`,text:`Approve the request in your wallet. After approval this page waits for the chain result and shows success or failure here.`},J();let n=!1;try{let r=await Xc(`/api/review/${encodeURIComponent(U)}/handoff`,{method:`POST`,body:JSON.stringify({planId:e.planId,account:e.account})}),i=Yc(r.transactionBytesBase64),o=a.from(i);if(await o.getDigest()!==r.transactionMaterialCommitment)throw Error(`Handoff bytes do not match the reviewed transaction commitment.`);n=!0;let c=await Jc(Js.signTransaction({transaction:o}),9e4,`The wallet did not respond to the signing request within 90 seconds.`),l=Yc(c.bytes),u=await a.from(l).getDigest();if(u!==r.transactionMaterialCommitment){await qc(e,{status:`failure`,failureReason:`wallet_provider_error`}),q={kind:`error`,text:`The wallet returned bytes whose digest does not match the reviewed commitment; nothing was submitted.`};return}await qc(e,{status:`signed_pending_result`,txDigest:u});let d;try{d=await s.core.executeTransaction({transaction:l,signatures:[c.signature],include:{effects:!0}})}catch(n){await qc(e,{status:`failure`,failureReason:`transaction_submit_failed`}),q={kind:`error`,text:t(n,`The signed transaction could not be submitted to the chain.`)};return}if(d.$kind!==`Transaction`||!d.Transaction){await qc(e,{status:`failure`,failureReason:`execution_result_unavailable`}),q={kind:`error`,text:`The chain did not return an executed transaction record.`};return}let f=d.Transaction.digest,p=d.Transaction.effects?.status;if(p&&!p.success){await qc(e,{status:`failure`,failureReason:`unknown_failure`}),q={kind:`error`,text:`The transaction executed on chain but failed - see the receipt below.`};return}await qc(e,{status:`success`,txDigest:f}),q={kind:`info`,text:`Transaction executed successfully - receipt recorded below.`}}catch(r){let i=r instanceof Error?r.message:String(r);if(n){let t=c(r)?`wallet_rejected`:`wallet_provider_error`;try{await qc(e,{status:`failure`,failureReason:t})}catch{}}q={kind:`error`,text:t(r,i)}}finally{K=!1,await Vc()}}function Gc(e,t,n){if(t){let n=e.find(e=>i(e)===t);if(n)return n}if(n)return e.find(e=>e.name===n)}async function Kc(e){if(!(Ys||K)){Ys=!0,q=void 0,J();try{await Js.connectWallet({wallet:e})}catch(e){q={kind:`error`,text:t(e,c(e)?`Wallet connection was cancelled.`:`The wallet could not be connected. Try again.`)}}finally{Ys=!1,J()}}}async function qc(e,t){await Xc(`/api/review/${encodeURIComponent(U)}/result`,{method:`POST`,body:JSON.stringify({planId:e.planId,...t})})}async function Jc(e,t,n){let r;try{return await Promise.race([e,new Promise((e,i)=>{r=setTimeout(()=>i(Error(n)),t)})])}finally{clearTimeout(r)}}function Yc(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}async function Xc(t,r){let i=await fetch(t,{...r,headers:{"content-type":`application/json`,"x-say-ur-intent-token":Ws,...r.headers??{}}});if(!i.ok)throw new n(i.status,await e(i));return await i.json()}function Zc(e){return e.plans.find(e=>e.id===Gs)??e.plans[0]}function Qc(e,t){let n=$(`div`,`amount-list`);if(n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`None.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.textContent=`${e.amountDisplay} ${e.symbol??e.denomination??`unspecified asset`} (${e.amountKind})`,r.append(t)}return n.append(r),n}function $c(e,t){let n=$(`div`,`amount-list`);if(n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`None.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=e.displayAmount?`${e.displayAmount} ${e.symbol}; `:``,n=document.createElement(`li`);n.textContent=`${e.role}: ${t}${e.rawAmount} raw ${e.symbol} (${e.coinType}, decimals ${e.decimals}; source ${e.rawAmountSource})`,r.append(n)}return n.append(r),n}function Y(e,t){let n=$(`div`,`fact-list`);if(n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`None.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.textContent=e,r.append(t)}return n.append(r),n}function el(e,t){let n=$(`div`,`checks`);if(e&&n.append($(`h4`,void 0,e)),t.length===0)return n.append($(`p`,void 0,`No checks recorded.`)),n;let r=document.createElement(`ul`);for(let e of t){let t=document.createElement(`li`);t.className=`check ${e.status}`,t.append($(`strong`,void 0,`${e.label}: ${e.status}`)),t.append($(`span`,void 0,` ${e.message}`)),t.append($(`small`,void 0,` Source: ${e.source}; id: ${e.id}`)),r.append(t)}return n.append(r),n}function X(e){let t=$(`section`,`card`);return t.append($(`h2`,void 0,e)),t}function Z(e,t){let n=$(`div`,`row`);return n.append($(`span`,`row-label`,e)),n.append($(`span`,`row-value`,t)),n}function tl(e){return[e.label,e.address].filter(Boolean).join(` / `)}function nl(e){return typeof e==`string`?e:Object.entries(e).map(([e,t])=>`${e}: ${t}`).join(`; `)}function Q(e,t,n=`primary`){let r=document.createElement(`button`);return r.type=`button`,r.className=n,r.disabled=G,r.textContent=e,r.onclick=t,r}function $(e,t,n){let r=document.createElement(e);return t&&(r.className=t),n!==void 0&&(r.textContent=n),r}export{xi as a,gi as c,da as i,Ue as l,Oa as n,bi as o,ma as r,hi as s,Ma as t,He as u};
@@ -14,7 +14,7 @@ It is not the contributor rulebook and it is not enforcement. Development rules
14
14
  | DeepBook and FlowX swap review sessions | Digest-gated handoff; user-controlled signing on the review page | A review URL can be created. The review URL displays the proposal and local review evidence. The account-bound review can build local unsigned DeepBook or FlowX swap transaction material inside the review server, internally bind a Sui transaction digest to that stored material, and derive object ownership, quote/policy provenance, human-readable review facts, and review-time simulation evidence from the same private review artifacts. This release does not provide a sign action, signing data, MCP-visible transaction bytes, or signing readiness. The local review page requests a digest-gated byte handoff for a `ready_for_wallet_review` state, then the user signs in their own wallet and the page records the execution receipt. |
15
15
  | External proposal review sessions | Non-signable review in the current release | `action.prepare_external_proposal_review` can create a review URL from a structured external payment or Sui action proposal. Treat the proposal as untrusted display and review context only. It does not build, verify, simulate, sign, or execute transaction material. |
16
16
  | Wallet signing | User-controlled on the local review page | MCP tools do not return signing readiness, signing data, or executable transaction bytes. Signing and execution happen only in the user's wallet from the local review page after the digest-gated handoff; results are recorded as execution receipts keyed by the review session. |
17
- | PTB visualization | Rendered with emitted wallet review contracts | `reviewState.ptbVisualization` can accompany an emitted wallet review contract as a Mermaid flowchart of the stored local transaction shape. Treat it as visualization evidence only, not transaction-building input, wallet authorization, signing data, signing readiness, payment execution readiness, or route recommendation. |
17
+ | PTB visualization | Rendered with emitted wallet review contracts | `reviewState.ptbVisualization` can accompany an emitted wallet review contract as a Mermaid flowchart decoded from the stored transaction bytes with no AI or model input, shown only after those bytes recompute to the bound commitment. Treat it as visualization evidence only, not transaction-building input, wallet authorization, signing data, signing readiness, payment execution readiness, or route recommendation. |
18
18
  | Transaction material build, wallet execution, fiat cash-out, and P&L | Material build and review evidence implemented for DeepBook and FlowX swap review; MCP signing and execution out of scope; fiat cash-out and P&L out of scope | Account-bound DeepBook and FlowX swap review can build local unsigned transaction material that remains internal to the review server, internally bind a Sui transaction digest to that stored material, project human-readable review facts from material-bound quote policy and object ownership evidence, and summarize review-time simulation of the stored material. The MCP layer does not request wallet signatures, execute, or return transaction bytes; wallet signing and execution happen only in the user's wallet from the local review page after the digest-gated byte handoff, which is gated on recomputed-digest equality with the reviewed contract. Fiat cash-out, P&L, tax, and cost-basis are out of scope. |
19
19
  | Private-key custody, autonomous trading, fiat USD peg claims, and quote-only coverage or readiness claims | Unsupported safety and correctness boundary | Do not custody funds, hold private keys, or autonomously trade. Do not treat settlement assets as fiat USD, bank cash-out amounts, or peg guarantees. Do not turn quote-only conversion candidates into payment coverage, funding readiness, payment execution readiness, or signing readiness. |
20
20
  | Silent settlement-token selection and route ranking | Out of scope by current design | Do not silently choose USDC, USDT, or another settlement token for the user. Do not rank venues, choose routes, or make best-price recommendations. |
@@ -4,6 +4,39 @@ Say Ur Intent uses a local SQLite database for durable product state that must s
4
4
 
5
5
  This document is for maintainers and contributors who change local state, import/export behavior, activity queries, or review evidence storage. Product users normally need only the README and `docs/MCP_SETUP.md`.
6
6
 
7
+ ## Runtime Boundary
8
+
9
+ The runtime starts these local components:
10
+
11
+ - a local SQLite store;
12
+ - a mainnet guard for the configured Sui gRPC endpoint;
13
+ - the local review HTTP server on `127.0.0.1`;
14
+ - the stdio MCP transport.
15
+
16
+ The GraphQL endpoint is also mainnet-guarded when it is saved through settings, imported from a local-data backup, or first used by Sui activity tools.
17
+
18
+ Stdout is reserved for MCP JSON-RPC messages. Logs go to stderr.
19
+
20
+ ## Local Data
21
+
22
+ The runtime creates a local SQLite file for account read context and Say Ur Intent review activity evidence. Users do not install a database server separately.
23
+
24
+ Override the app data directory only when needed:
25
+
26
+ ```bash
27
+ export SAY_UR_INTENT_DATA_DIR="/path/to/local/app-data"
28
+ ```
29
+
30
+ The stored active account is for reading wallet state only. It does not let the toolkit sign transactions on your behalf.
31
+
32
+ User-requested bounded transaction scans can store normalized facts only when a transaction is related to a known local wallet. This product does not run a background or complete wallet history indexer.
33
+
34
+ The default Sui mainnet gRPC and GraphQL endpoints are stored in the local SQLite settings table on first run.
35
+
36
+ To inspect settings or change local data, ask your AI client to create a Say Ur Intent local settings session and open the returned settings URL in the same machine's system browser.
37
+
38
+ Endpoint changes apply after the MCP server restarts.
39
+
7
40
  ## Engine
8
41
 
9
42
  The runtime uses the `better-sqlite3` npm package for normal SQLite file semantics and incremental writes. Users do not install a separate database server.
package/docs/MCP_SETUP.md CHANGED
@@ -8,6 +8,17 @@ The README keeps only the short entry path; client-specific setup, restart behav
8
8
 
9
9
  Say Ur Intent is tested from a local checkout in this repository state.
10
10
 
11
+ ## Key terms
12
+
13
+ - Sui: the mainnet blockchain whose DeFi state this project reads.
14
+ - MCP: Model Context Protocol, the tool-calling interface used by AI clients.
15
+ - DeepBook: Sui's onchain order book protocol.
16
+ - SDK: Software Development Kit, a version-pinned library dependency used by this repository.
17
+ - gRPC and GraphQL: Sui SDK transports used by this runtime for mainnet reads.
18
+ - dApp Kit: Sui's wallet connection library for web apps.
19
+ - stdio: standard input/output, the local transport used by MCP clients to talk to this server.
20
+ - Stelis: the GitHub and npm namespace for this package. Say Ur Intent is the product and runtime name.
21
+
11
22
  ## Requirements
12
23
 
13
24
  - Node.js 22+. Node 22 or 24 LTS is recommended.
@@ -64,9 +75,46 @@ On native Windows clients that need `cmd`, use the same command through `cmd /c`
64
75
  }
65
76
  ```
66
77
 
78
+ To delegate local setup to an AI coding agent, tell it:
79
+
80
+ ```text
81
+ Register this repository as a local stdio MCP server using the built /absolute/path/to/say-ur-intent/dist/runtime/start.js file.
82
+ Use the default Sui mainnet endpoint unless I explicitly ask for a custom provider.
83
+ ```
84
+
85
+ ## Commands
86
+
87
+ These `npm run` scripts run from a local checkout. They are developer and maintainer scripts, not MCP tools or packaged product commands:
88
+
89
+ ```bash
90
+ npm install
91
+ npm run typecheck
92
+ npm run build
93
+ npm test
94
+ npm run release:check
95
+ npm run generate:deepbook-registry
96
+ npm run smoke:mainnet
97
+ ```
98
+
99
+ `npm run generate:deepbook-registry` writes `registry/generated/deepbook-mainnet.json`, which is ignored by Git because generated registry data must include provenance and should be regenerated from the pinned SDK.
100
+
101
+ ## Install from the MCP Registry
102
+
103
+ If your MCP client can install servers from the
104
+ [MCP Registry](https://registry.modelcontextprotocol.io/v0/servers?search=say-ur-intent),
105
+ find the `io.github.stelis-dev/say-ur-intent` entry and install it through your
106
+ client. The resulting stdio server command is equivalent to:
107
+
108
+ ```sh
109
+ npx -y @stelis/say-ur-intent
110
+ ```
111
+
112
+ Clients that do not install from the registry use the published-package and
113
+ per-client configuration below, which give the exact `command` and `args`.
114
+
67
115
  ## Published Package Setup
68
116
 
69
- Once `@stelis/say-ur-intent` is on npm there are two ways to run it. Both start
117
+ `@stelis/say-ur-intent` is on npm; there are two ways to run it. Both start
70
118
  the same `say-ur-intent` stdio MCP server; pick based on whether you want
71
119
  automatic updates or the fastest, most reliable startup.
72
120
 
package/docs/MCP_TOOLS.md CHANGED
@@ -738,6 +738,11 @@ authority or wallet authorization. It is not signing data, not signing
738
738
  readiness, not payment execution readiness, not route recommendation, and not a
739
739
  replacement for review-time simulation.
740
740
 
741
+ The graph is decoded from the stored transaction bytes by the pinned
742
+ deterministic renderer with no AI or model input, and only after those bytes
743
+ recompute to the bound commitment; the Mermaid source keeps raw package
744
+ addresses for independent cross-check.
745
+
741
746
  The review layer renders the artifact when an account-bound review emits the
742
747
  wallet review contract and the pinned renderer succeeds. The artifact is
743
748
  returned as `reviewState.ptbVisualization` next to
@@ -270,7 +270,7 @@ The pinned renderer dependency is `@zktx.io/ptb-model@0.5.0`. The review layer
270
270
  converts the stored local transaction material into a Mermaid `flowchart`
271
271
  artifact with `rawTransactionToIR` and `transactionIRToMermaid`, only after the
272
272
  stored bytes are recomputed to match the bound transaction material commitment;
273
- a mismatch declines the artifact. The artifact passes
273
+ a mismatch declines the artifact. The graph is decoded from the stored transaction bytes with no AI or model input in the rendering path, so it reflects the decoded transaction the wallet will receive, not an AI description of it. The artifact passes
274
274
  `ptbVisualizationArtifactSchema` screening before exposure and accompanies the
275
275
  emitted wallet review contract as `reviewState.ptbVisualization`. PTB
276
276
  visualization stays visualization-only evidence: it is not a runtime
@@ -44,6 +44,31 @@ Source-checkout scripts are not packaged product commands, MCP tools, review-tim
44
44
  | Sui GraphQL function filter probe | `npm exec -- tsx scripts/sui-graphql-function-filter-probe.ts [--endpoint <mainnet-graphql-url>] [--sample-size <1-50>] [--timeout-ms <ms>]` | Manual, source evidence only | Runs a read-only Sui mainnet GraphQL source-shape probe for function-filter diagnostics; see notes below. |
45
45
  | Sui CLI transaction diagnostics | `npm exec -- tsx scripts/sui-cli-transaction-diagnostics.ts -- --help` | Manual, source checkout only | Allowlisted local `sui` CLI debug evidence. See notes below. |
46
46
 
47
+ ## Mainnet Read Smoke
48
+
49
+ This is a manual maintainer check for a specific mainnet provider. Normal quickstart use does not require Sui endpoint setup. Run it for people operating releases or debugging mainnet read shape.
50
+
51
+ ```bash
52
+ export SUI_GRPC_URL="https://fullnode.mainnet.sui.io:443"
53
+ export SUI_GRAPHQL_URL="https://graphql.mainnet.sui.io/graphql" # optional override; default is the built-in mainnet GraphQL endpoint
54
+ export SMOKE_SUI_ADDRESS="0x..."
55
+ export SMOKE_DEEPBOOK_POOL_KEY="DEEP_SUI"
56
+ export SMOKE_QUOTE_AMOUNT="1000000000" # raw integer units; for SUI, 1000000000 = 1 SUI
57
+ # Optional: export SMOKE_INSPECT_DIGEST="..."
58
+ # Optional: export SMOKE_INSPECT_RANDOM_LATEST="true"
59
+ npm run build
60
+ npm run smoke:mainnet
61
+ ```
62
+
63
+ `SUI_GRPC_URL` must be only scheme, host, and explicit port. Do not include credentials, a path, query string, or fragment.
64
+ `SMOKE_SUI_ADDRESS` must be a 32-byte hex Sui address, for example `0x` followed by 64 hex characters.
65
+ `SMOKE_INSPECT_DIGEST` is optional. Use a digest whose sender or returned balance-change owner is `SMOKE_SUI_ADDRESS` to exercise the stored digest-lookup path; otherwise the lookup can still return `ok` with `persistence.stored: false`.
66
+ `SMOKE_INSPECT_RANDOM_LATEST=true` is optional and only used when `SMOKE_INSPECT_DIGEST` is unset. It samples one digest from the latest GraphQL transaction page and calls `read.inspect_sui_transaction` without passing the smoke address. This checks current transaction-read shape without pinning a specific user address or exercising the stored relation path.
67
+
68
+ DeepBook orderbook and raw-quantity quote reads use an internal mainnet SDK simulation sender placeholder, not a user's wallet. The display-amount quote path is covered by automated tests, not by this smoke script. This smoke script does not exercise account-bound DeepBook transaction-material build or digest binding; that path needs a separate funded-account material-build smoke before smoke results are treated as product-grade proof for that review stage.
69
+
70
+ Wallet asset summaries and active-account activity summaries use the smoke address through a wallet identity session created by the smoke script. Browser wallet behavior is checked separately. This smoke script does not record raw GraphQL payloads, transaction bytes, signatures, raw transaction details, or compact transaction aggregates.
71
+
47
72
  ## Mainnet Read Smoke Notes
48
73
 
49
74
  Run `npm run build` first because `npm run smoke:mainnet` executes `dist/runtime/smokeMainnetRead.js`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stelis/say-ur-intent",
3
- "version": "0.0.8",
3
+ "version": "0.1.1",
4
4
  "mcpName": "io.github.stelis-dev/say-ur-intent",
5
5
  "description": "Say Ur Intent is a local-first toolkit for helping AI applications and users inspect Sui DeFi actions before execution.",
6
6
  "license": "MIT",