chain-insights 0.2.16
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/LICENSE +21 -0
- package/README.md +165 -0
- package/bin/cli.js +10 -0
- package/bin/install.cjs +252 -0
- package/bin/mcp-proxy.cjs +10 -0
- package/dist/active-BSrxLKwn.mjs +50 -0
- package/dist/active-BSrxLKwn.mjs.map +1 -0
- package/dist/active-Dv7Tu-O4.cjs +68 -0
- package/dist/app-BjjuQM0B.mjs +155 -0
- package/dist/app-BjjuQM0B.mjs.map +1 -0
- package/dist/app-Dq1TdB6p.cjs +161 -0
- package/dist/artifact-server-DoxJ7fCx.cjs +47 -0
- package/dist/artifact-server-Dxz5YbuQ.mjs +48 -0
- package/dist/artifact-server-Dxz5YbuQ.mjs.map +1 -0
- package/dist/assets/bg-pattern.png +0 -0
- package/dist/assets/logo.png +0 -0
- package/dist/call-args-DQA2QcRA.cjs +27 -0
- package/dist/call-args-Lk_wOJxd.mjs +29 -0
- package/dist/call-args-Lk_wOJxd.mjs.map +1 -0
- package/dist/capabilities-CB97WMA5.cjs +83 -0
- package/dist/capabilities-DliMBim-.mjs +84 -0
- package/dist/capabilities-DliMBim-.mjs.map +1 -0
- package/dist/cases-By7INiOa.mjs +6 -0
- package/dist/cases-CDcNU91B.cjs +9 -0
- package/dist/chunk-CZWwpsFl.cjs +43 -0
- package/dist/cli.cjs +752 -0
- package/dist/cli.d.cts +1 -0
- package/dist/cli.d.mts +1 -0
- package/dist/cli.mjs +753 -0
- package/dist/cli.mjs.map +1 -0
- package/dist/client-D4Bq0rp9.mjs +111 -0
- package/dist/client-D4Bq0rp9.mjs.map +1 -0
- package/dist/client-D4fZgIaO.cjs +132 -0
- package/dist/config-Bmdl5hdk.cjs +67 -0
- package/dist/config-BwrBYmiC.mjs +44 -0
- package/dist/config-BwrBYmiC.mjs.map +1 -0
- package/dist/data-extractor-BNGj7ECT.cjs +347 -0
- package/dist/data-extractor-DFzsa5CS.mjs +336 -0
- package/dist/data-extractor-DFzsa5CS.mjs.map +1 -0
- package/dist/dossier-BsroDgD3.mjs +76 -0
- package/dist/dossier-BsroDgD3.mjs.map +1 -0
- package/dist/dossier-DtxREpPm.cjs +76 -0
- package/dist/evidence-BGcdKxuV.cjs +200 -0
- package/dist/evidence-BhvFW-y_.mjs +195 -0
- package/dist/evidence-BhvFW-y_.mjs.map +1 -0
- package/dist/format-Ce1RObVl.mjs +22 -0
- package/dist/format-Ce1RObVl.mjs.map +1 -0
- package/dist/format-DOrPvXEr.cjs +20 -0
- package/dist/frontmatter-D8wWCeOa.mjs +26 -0
- package/dist/frontmatter-D8wWCeOa.mjs.map +1 -0
- package/dist/frontmatter-DgAuai7E.cjs +35 -0
- package/dist/graph-normalizer-Cv9yK9Pg.mjs +130 -0
- package/dist/graph-normalizer-Cv9yK9Pg.mjs.map +1 -0
- package/dist/graph-normalizer-DeIj6Ses.cjs +133 -0
- package/dist/graph-reports-C4TBjCkM.mjs +63 -0
- package/dist/graph-reports-C4TBjCkM.mjs.map +1 -0
- package/dist/graph-reports-DU05YCei.cjs +64 -0
- package/dist/html-generator-CAv81IWH.cjs +85 -0
- package/dist/html-generator-V6Bp0uRb.mjs +68 -0
- package/dist/html-generator-V6Bp0uRb.mjs.map +1 -0
- package/dist/index.cjs +31 -0
- package/dist/index.d.cts +187 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +187 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +9 -0
- package/dist/init-BjuFt54X.cjs +232 -0
- package/dist/init-CaOsHTIo.mjs +232 -0
- package/dist/init-CaOsHTIo.mjs.map +1 -0
- package/dist/mcp-proxy.cjs +1257 -0
- package/dist/mcp-proxy.d.cts +12 -0
- package/dist/mcp-proxy.d.cts.map +1 -0
- package/dist/mcp-proxy.d.mts +12 -0
- package/dist/mcp-proxy.d.mts.map +1 -0
- package/dist/mcp-proxy.mjs +1255 -0
- package/dist/mcp-proxy.mjs.map +1 -0
- package/dist/output-root-CFYms3ad.cjs +43 -0
- package/dist/output-root-CmWM7aV2.mjs +33 -0
- package/dist/output-root-CmWM7aV2.mjs.map +1 -0
- package/dist/parser-BUIWW1OH.cjs +182 -0
- package/dist/parser-DO0_SssG.mjs +182 -0
- package/dist/parser-DO0_SssG.mjs.map +1 -0
- package/dist/public-tools-D4UI-Zb0.mjs +2554 -0
- package/dist/public-tools-D4UI-Zb0.mjs.map +1 -0
- package/dist/public-tools-XSpkz2ky.cjs +2556 -0
- package/dist/resolver-C2ZS7oC8.mjs +201 -0
- package/dist/resolver-C2ZS7oC8.mjs.map +1 -0
- package/dist/resolver-zYbu4wDV.cjs +203 -0
- package/dist/rolldown-runtime-wcPFST8Q.mjs +13 -0
- package/dist/runner-1Eq55OYb.cjs +148 -0
- package/dist/runner-BhUHbiHG.mjs +149 -0
- package/dist/runner-BhUHbiHG.mjs.map +1 -0
- package/dist/schema-4XpzDFQM.cjs +55 -0
- package/dist/schema-8d0rVIdZ.mjs +37 -0
- package/dist/schema-8d0rVIdZ.mjs.map +1 -0
- package/dist/schema-cache-9CksD7tX.mjs +34 -0
- package/dist/schema-cache-9CksD7tX.mjs.map +1 -0
- package/dist/schema-cache-CgWRCN2N.cjs +36 -0
- package/dist/selector-CkFcTXzz.cjs +10 -0
- package/dist/selector-xjm6NTHI.mjs +12 -0
- package/dist/selector-xjm6NTHI.mjs.map +1 -0
- package/dist/server-BkM5xrXb.mjs +45 -0
- package/dist/server-BkM5xrXb.mjs.map +1 -0
- package/dist/server-DXowbpfi.cjs +54 -0
- package/dist/session-BpNylyuJ.cjs +115 -0
- package/dist/session-CcTgYxsj.mjs +115 -0
- package/dist/session-CcTgYxsj.mjs.map +1 -0
- package/dist/setup-DOpKPrlx.cjs +81 -0
- package/dist/setup-DyrWHuwQ.mjs +80 -0
- package/dist/setup-DyrWHuwQ.mjs.map +1 -0
- package/dist/store-BiUhQOIf.cjs +230 -0
- package/dist/store-BoWE-Gtl.mjs +225 -0
- package/dist/store-BoWE-Gtl.mjs.map +1 -0
- package/dist/templates/graph.html +1406 -0
- package/dist/tool-visibility-3Z_KvO9Q.mjs +28 -0
- package/dist/tool-visibility-3Z_KvO9Q.mjs.map +1 -0
- package/dist/tool-visibility-CwgY205r.cjs +36 -0
- package/dist/tools-Cp2jAAAb.mjs +100 -0
- package/dist/tools-Cp2jAAAb.mjs.map +1 -0
- package/dist/tools-f_vJUZAF.cjs +139 -0
- package/dist/topup-server-BZuQifvh.cjs +940 -0
- package/dist/topup-server-DUjyFftI.mjs +919 -0
- package/dist/topup-server-DUjyFftI.mjs.map +1 -0
- package/dist/version-1gP19Lhi.mjs +8 -0
- package/dist/version-1gP19Lhi.mjs.map +1 -0
- package/dist/version-BNGtdpmH.cjs +18 -0
- package/dist/viz-BlCJe6Tk.mjs +35 -0
- package/dist/viz-BlCJe6Tk.mjs.map +1 -0
- package/dist/viz-ClezVXrJ.cjs +44 -0
- package/dist/wallet-BMelXBYP.mjs +104 -0
- package/dist/wallet-BMelXBYP.mjs.map +1 -0
- package/dist/wallet-RnvvSpV2.cjs +146 -0
- package/docs/architecture.md +145 -0
- package/docs/contributing.md +68 -0
- package/docs/debugging.md +68 -0
- package/docs/development.md +44 -0
- package/docs/graph-tools.md +251 -0
- package/docs/images/graph-mcp-iframe.png +0 -0
- package/docs/images/graph-visualization.png +0 -0
- package/docs/images/topup-page.png +0 -0
- package/docs/investigation-workspaces.md +151 -0
- package/docs/mcp-proxy.md +180 -0
- package/package.json +59 -0
- package/skills/chain-insights-developer-experience/SKILL.md +101 -0
- package/skills/chain-insights-investigation/SKILL.md +285 -0
- package/skills/chain-insights-investigation/agents/openai.yaml +4 -0
- package/skills/chain-insights-investigation/scripts/run-target-uat.sh +197 -0
- package/skills/chain-insights-trace-funds/SKILL.md +249 -0
- package/skills/ci-case/SKILL.md +43 -0
- package/skills/ci-status/SKILL.md +45 -0
- package/skills/test-chain-insights-graphrag-mcp/SKILL.md +75 -0
- package/skills/test-chain-insights-graphrag-mcp/agents/openai.yaml +4 -0
- package/skills/test-chain-insights-graphrag-mcp/scripts/run-uat.sh +414 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { i as resolveGraphMcpEndpoint } from "./client-D4Bq0rp9.mjs";
|
|
2
|
+
//#region src/mcp/capabilities.ts
|
|
3
|
+
function metadataNetworksUrl(endpoint) {
|
|
4
|
+
const url = new URL(endpoint);
|
|
5
|
+
url.pathname = "/metadata/networks";
|
|
6
|
+
url.search = "";
|
|
7
|
+
url.hash = "";
|
|
8
|
+
return url;
|
|
9
|
+
}
|
|
10
|
+
async function fetchNetworkCapabilities(config) {
|
|
11
|
+
const request = metadataNetworksUrl(resolveGraphMcpEndpoint(config));
|
|
12
|
+
const headers = new Headers();
|
|
13
|
+
const token = config.graphMcpAuthToken?.trim() || config.mcpAuthToken?.trim();
|
|
14
|
+
if (token) {
|
|
15
|
+
headers.set("X-MCP-Debug-Token", token);
|
|
16
|
+
headers.set("Authorization", `Bearer ${token}`);
|
|
17
|
+
}
|
|
18
|
+
let response;
|
|
19
|
+
try {
|
|
20
|
+
response = await fetch(request, { headers });
|
|
21
|
+
} catch (err) {
|
|
22
|
+
throw new Error(`network capabilities unavailable at ${request}: ${err.message}`);
|
|
23
|
+
}
|
|
24
|
+
if (!response.ok) throw new Error(`network capabilities unavailable at ${request}: HTTP ${response.status}`);
|
|
25
|
+
const parsed = await response.json();
|
|
26
|
+
if (parsed.schema !== "chain-insights.network-capabilities.v1" || !Array.isArray(parsed.networks)) throw new Error("network capabilities response has unsupported schema");
|
|
27
|
+
return parsed;
|
|
28
|
+
}
|
|
29
|
+
function layerValue(network, layer) {
|
|
30
|
+
if (!network.layers[layer]?.enabled) return "no";
|
|
31
|
+
return "yes";
|
|
32
|
+
}
|
|
33
|
+
function availableToolsLabel(network) {
|
|
34
|
+
const tools = Object.entries(network.tools ?? {}).filter(([, status]) => status === "available").map(([name]) => name);
|
|
35
|
+
return tools.length > 0 ? tools.join(", ") : "none";
|
|
36
|
+
}
|
|
37
|
+
function shortDate(value) {
|
|
38
|
+
if (!value) return "";
|
|
39
|
+
return value.slice(0, 10);
|
|
40
|
+
}
|
|
41
|
+
function datasetLabel(network) {
|
|
42
|
+
const coverage = network.coverage;
|
|
43
|
+
if (!coverage) return "unknown";
|
|
44
|
+
const blockRange = coverage.from_block !== void 0 && coverage.to_block !== void 0 ? `${coverage.from_block}..${coverage.to_block}` : "blocks unknown";
|
|
45
|
+
const dateRange = coverage.from_timestamp && coverage.to_timestamp ? `${shortDate(coverage.from_timestamp)}..${shortDate(coverage.to_timestamp)}` : "dates unknown";
|
|
46
|
+
if (blockRange === "blocks unknown" && dateRange === "dates unknown") return "unknown";
|
|
47
|
+
return `${blockRange} / ${dateRange}`;
|
|
48
|
+
}
|
|
49
|
+
function formatNetworkCapabilities(document) {
|
|
50
|
+
if (document.networks.length === 0) return "No supported networks advertised.";
|
|
51
|
+
const headers = [
|
|
52
|
+
"Network",
|
|
53
|
+
"Topology",
|
|
54
|
+
"Facts",
|
|
55
|
+
"Risk",
|
|
56
|
+
"Dataset",
|
|
57
|
+
"Available tools"
|
|
58
|
+
];
|
|
59
|
+
const widths = [
|
|
60
|
+
14,
|
|
61
|
+
10,
|
|
62
|
+
8,
|
|
63
|
+
8,
|
|
64
|
+
38,
|
|
65
|
+
64
|
|
66
|
+
];
|
|
67
|
+
const row = (values) => values.map((value, index) => value.padEnd(widths[index])).join(" ");
|
|
68
|
+
return [
|
|
69
|
+
row(headers),
|
|
70
|
+
widths.map((width) => "-".repeat(width)).join(" "),
|
|
71
|
+
...document.networks.map((network) => row([
|
|
72
|
+
network.display_name || network.network,
|
|
73
|
+
layerValue(network, "topology"),
|
|
74
|
+
layerValue(network, "facts"),
|
|
75
|
+
layerValue(network, "risk"),
|
|
76
|
+
datasetLabel(network),
|
|
77
|
+
availableToolsLabel(network)
|
|
78
|
+
]))
|
|
79
|
+
].join("\n");
|
|
80
|
+
}
|
|
81
|
+
//#endregion
|
|
82
|
+
export { fetchNetworkCapabilities, formatNetworkCapabilities };
|
|
83
|
+
|
|
84
|
+
//# sourceMappingURL=capabilities-DliMBim-.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities-DliMBim-.mjs","names":[],"sources":["../src/mcp/capabilities.ts"],"sourcesContent":["import type { InvestigatorConfig } from '../config/schema.js'\nimport { resolveGraphMcpEndpoint } from './client.js'\n\nexport interface NetworkRetention {\n mode: 'full_history' | 'rolling_window' | 'expanding_then_rolling' | 'bounded_range' | 'unknown' | string\n window_days?: number\n from_block?: number\n to_block?: number\n from_timestamp?: string\n to_timestamp?: string\n started_at?: string\n rolls_after_at?: string\n current_window_seconds?: number\n}\n\nexport interface NetworkLayerCapability {\n enabled: boolean\n retention?: NetworkRetention | null\n}\n\nexport interface NetworkCapability {\n network: string\n display_name?: string\n status: string\n default?: boolean\n layers: Record<string, NetworkLayerCapability>\n tools: Record<string, string>\n coverage?: {\n from_block?: number\n to_block?: number\n from_timestamp?: string\n to_timestamp?: string\n chain_tip_block?: number\n blocks_behind_tip?: number\n }\n freshness?: {\n last_processed_at?: string\n last_successful_sync_at?: string\n max_data_age_seconds?: number\n last_processing_duration_seconds?: number\n }\n}\n\nexport interface NetworkCapabilitiesDocument {\n schema: 'chain-insights.network-capabilities.v1'\n networks: NetworkCapability[]\n}\n\nfunction metadataNetworksUrl(endpoint: string): URL {\n const url = new URL(endpoint)\n url.pathname = '/metadata/networks'\n url.search = ''\n url.hash = ''\n return url\n}\n\nexport async function fetchNetworkCapabilities(\n config: Pick<InvestigatorConfig, 'mcpAuthToken' | 'graphMcpAuthToken' | 'graphMcpMode' | 'graphMcpEndpoint' | 'mcpEndpoint'>,\n): Promise<NetworkCapabilitiesDocument> {\n const endpoint = resolveGraphMcpEndpoint(config)\n const request = metadataNetworksUrl(endpoint)\n const headers = new Headers()\n const token = config.graphMcpAuthToken?.trim() || config.mcpAuthToken?.trim()\n if (token) {\n headers.set('X-MCP-Debug-Token', token)\n headers.set('Authorization', `Bearer ${token}`)\n }\n let response: Response\n try {\n response = await fetch(request, { headers })\n } catch (err) {\n throw new Error(`network capabilities unavailable at ${request}: ${(err as Error).message}`)\n }\n if (!response.ok) {\n throw new Error(`network capabilities unavailable at ${request}: HTTP ${response.status}`)\n }\n const parsed = await response.json() as NetworkCapabilitiesDocument\n if (parsed.schema !== 'chain-insights.network-capabilities.v1' || !Array.isArray(parsed.networks)) {\n throw new Error('network capabilities response has unsupported schema')\n }\n return parsed\n}\n\nfunction layerValue(network: NetworkCapability, layer: string): string {\n const capability = network.layers[layer]\n if (!capability?.enabled) return 'no'\n return 'yes'\n}\n\nfunction availableToolsLabel(network: NetworkCapability): string {\n const tools = Object.entries(network.tools ?? {})\n .filter(([, status]) => status === 'available')\n .map(([name]) => name)\n return tools.length > 0 ? tools.join(', ') : 'none'\n}\n\nfunction shortDate(value?: string): string {\n if (!value) return ''\n return value.slice(0, 10)\n}\n\nfunction datasetLabel(network: NetworkCapability): string {\n const coverage = network.coverage\n if (!coverage) return 'unknown'\n const blockRange = coverage.from_block !== undefined && coverage.to_block !== undefined\n ? `${coverage.from_block}..${coverage.to_block}`\n : 'blocks unknown'\n const dateRange = coverage.from_timestamp && coverage.to_timestamp\n ? `${shortDate(coverage.from_timestamp)}..${shortDate(coverage.to_timestamp)}`\n : 'dates unknown'\n if (blockRange === 'blocks unknown' && dateRange === 'dates unknown') return 'unknown'\n return `${blockRange} / ${dateRange}`\n}\n\nexport function formatNetworkCapabilities(document: NetworkCapabilitiesDocument): string {\n if (document.networks.length === 0) return 'No supported networks advertised.'\n const headers = ['Network', 'Topology', 'Facts', 'Risk', 'Dataset', 'Available tools']\n const widths = [14, 10, 8, 8, 38, 64]\n const row = (values: string[]) => values.map((value, index) => value.padEnd(widths[index]!)).join(' ')\n return [\n row(headers),\n widths.map((width) => '-'.repeat(width)).join(' '),\n ...document.networks.map((network) => row([\n network.display_name || network.network,\n layerValue(network, 'topology'),\n layerValue(network, 'facts'),\n layerValue(network, 'risk'),\n datasetLabel(network),\n availableToolsLabel(network),\n ])),\n ].join('\\n')\n}\n"],"mappings":";;AAgDA,SAAS,oBAAoB,UAAuB;CAClD,MAAM,MAAM,IAAI,IAAI,SAAS;AAC7B,KAAI,WAAW;AACf,KAAI,SAAS;AACb,KAAI,OAAO;AACX,QAAO;;AAGT,eAAsB,yBACpB,QACsC;CAEtC,MAAM,UAAU,oBADC,wBAAwB,OACG,CAAC;CAC7C,MAAM,UAAU,IAAI,SAAS;CAC7B,MAAM,QAAQ,OAAO,mBAAmB,MAAM,IAAI,OAAO,cAAc,MAAM;AAC7E,KAAI,OAAO;AACT,UAAQ,IAAI,qBAAqB,MAAM;AACvC,UAAQ,IAAI,iBAAiB,UAAU,QAAQ;;CAEjD,IAAI;AACJ,KAAI;AACF,aAAW,MAAM,MAAM,SAAS,EAAE,SAAS,CAAC;UACrC,KAAK;AACZ,QAAM,IAAI,MAAM,uCAAuC,QAAQ,IAAK,IAAc,UAAU;;AAE9F,KAAI,CAAC,SAAS,GACZ,OAAM,IAAI,MAAM,uCAAuC,QAAQ,SAAS,SAAS,SAAS;CAE5F,MAAM,SAAS,MAAM,SAAS,MAAM;AACpC,KAAI,OAAO,WAAW,4CAA4C,CAAC,MAAM,QAAQ,OAAO,SAAS,CAC/F,OAAM,IAAI,MAAM,uDAAuD;AAEzE,QAAO;;AAGT,SAAS,WAAW,SAA4B,OAAuB;AAErE,KAAI,CADe,QAAQ,OAAO,QACjB,QAAS,QAAO;AACjC,QAAO;;AAGT,SAAS,oBAAoB,SAAoC;CAC/D,MAAM,QAAQ,OAAO,QAAQ,QAAQ,SAAS,EAAE,CAAC,CAC9C,QAAQ,GAAG,YAAY,WAAW,YAAY,CAC9C,KAAK,CAAC,UAAU,KAAK;AACxB,QAAO,MAAM,SAAS,IAAI,MAAM,KAAK,KAAK,GAAG;;AAG/C,SAAS,UAAU,OAAwB;AACzC,KAAI,CAAC,MAAO,QAAO;AACnB,QAAO,MAAM,MAAM,GAAG,GAAG;;AAG3B,SAAS,aAAa,SAAoC;CACxD,MAAM,WAAW,QAAQ;AACzB,KAAI,CAAC,SAAU,QAAO;CACtB,MAAM,aAAa,SAAS,eAAe,KAAA,KAAa,SAAS,aAAa,KAAA,IAC1E,GAAG,SAAS,WAAW,IAAI,SAAS,aACpC;CACJ,MAAM,YAAY,SAAS,kBAAkB,SAAS,eAClD,GAAG,UAAU,SAAS,eAAe,CAAC,IAAI,UAAU,SAAS,aAAa,KAC1E;AACJ,KAAI,eAAe,oBAAoB,cAAc,gBAAiB,QAAO;AAC7E,QAAO,GAAG,WAAW,KAAK;;AAG5B,SAAgB,0BAA0B,UAA+C;AACvF,KAAI,SAAS,SAAS,WAAW,EAAG,QAAO;CAC3C,MAAM,UAAU;EAAC;EAAW;EAAY;EAAS;EAAQ;EAAW;EAAkB;CACtF,MAAM,SAAS;EAAC;EAAI;EAAI;EAAG;EAAG;EAAI;EAAG;CACrC,MAAM,OAAO,WAAqB,OAAO,KAAK,OAAO,UAAU,MAAM,OAAO,OAAO,OAAQ,CAAC,CAAC,KAAK,KAAK;AACvG,QAAO;EACL,IAAI,QAAQ;EACZ,OAAO,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,CAAC,KAAK,KAAK;EACnD,GAAG,SAAS,SAAS,KAAK,YAAY,IAAI;GACxC,QAAQ,gBAAgB,QAAQ;GAChC,WAAW,SAAS,WAAW;GAC/B,WAAW,SAAS,QAAQ;GAC5B,WAAW,SAAS,OAAO;GAC3B,aAAa,QAAQ;GACrB,oBAAoB,QAAQ;GAC7B,CAAC,CAAC;EACJ,CAAC,KAAK,KAAK"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import "./frontmatter-D8wWCeOa.mjs";
|
|
2
|
+
import { DossierStore } from "./dossier-BsroDgD3.mjs";
|
|
3
|
+
import { CaseStore } from "./store-BoWE-Gtl.mjs";
|
|
4
|
+
import { t as EvidenceStore } from "./evidence-BhvFW-y_.mjs";
|
|
5
|
+
import { SessionStore } from "./session-CcTgYxsj.mjs";
|
|
6
|
+
export { CaseStore, DossierStore, EvidenceStore, SessionStore };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require("./frontmatter-DgAuai7E.cjs");
|
|
2
|
+
const require_dossier = require("./dossier-DtxREpPm.cjs");
|
|
3
|
+
const require_store = require("./store-BiUhQOIf.cjs");
|
|
4
|
+
const require_evidence = require("./evidence-BGcdKxuV.cjs");
|
|
5
|
+
const require_session = require("./session-BpNylyuJ.cjs");
|
|
6
|
+
exports.CaseStore = require_store.CaseStore;
|
|
7
|
+
exports.DossierStore = require_dossier.DossierStore;
|
|
8
|
+
exports.EvidenceStore = require_evidence.EvidenceStore;
|
|
9
|
+
exports.SessionStore = require_session.SessionStore;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __exportAll = (all, no_symbols) => {
|
|
9
|
+
let target = {};
|
|
10
|
+
for (var name in all) __defProp(target, name, {
|
|
11
|
+
get: all[name],
|
|
12
|
+
enumerable: true
|
|
13
|
+
});
|
|
14
|
+
if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
15
|
+
return target;
|
|
16
|
+
};
|
|
17
|
+
var __copyProps = (to, from, except, desc) => {
|
|
18
|
+
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
19
|
+
key = keys[i];
|
|
20
|
+
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
21
|
+
get: ((k) => from[k]).bind(null, key),
|
|
22
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
return to;
|
|
26
|
+
};
|
|
27
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: true
|
|
30
|
+
}) : target, mod));
|
|
31
|
+
//#endregion
|
|
32
|
+
Object.defineProperty(exports, "__exportAll", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function() {
|
|
35
|
+
return __exportAll;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
Object.defineProperty(exports, "__toESM", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
get: function() {
|
|
41
|
+
return __toESM;
|
|
42
|
+
}
|
|
43
|
+
});
|