@zythum02/fello-server 0.1.29 → 0.1.32

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.
Files changed (56) hide show
  1. package/README.md +16 -2
  2. package/out/renderer/assets/{_baseUniq-BApwm7pv.js → _baseUniq-DNNr8R6Z.js} +1 -1
  3. package/out/renderer/assets/{arc-yKenDsmO.js → arc-fZlBtxL9.js} +1 -1
  4. package/out/renderer/assets/{architectureDiagram-Q4EWVU46-C31yFVWH.js → architectureDiagram-Q4EWVU46-k4E5eOG6.js} +5 -5
  5. package/out/renderer/assets/{blockDiagram-DXYQGD6D-6liCvTXv.js → blockDiagram-DXYQGD6D-DUXfUO2U.js} +6 -6
  6. package/out/renderer/assets/{c4Diagram-AHTNJAMY-Co_b_6bH.js → c4Diagram-AHTNJAMY-Chff2Ong.js} +2 -2
  7. package/out/renderer/assets/{channel-Dc_jjyUr.js → channel-C3mo-Wfq.js} +1 -1
  8. package/out/renderer/assets/{chunk-4BX2VUAB-Cg18SQei.js → chunk-4BX2VUAB-DGQRb5sN.js} +1 -1
  9. package/out/renderer/assets/{chunk-4TB4RGXK-CvSqwINq.js → chunk-4TB4RGXK-BSCZx5Py.js} +5 -5
  10. package/out/renderer/assets/{chunk-55IACEB6-CfBiPWtx.js → chunk-55IACEB6-BVIv0C3q.js} +1 -1
  11. package/out/renderer/assets/{chunk-EDXVE4YY-DMjVfNdS.js → chunk-EDXVE4YY-DPmCmhx8.js} +1 -1
  12. package/out/renderer/assets/{chunk-FMBD7UC4-BbpFqyFG.js → chunk-FMBD7UC4-DM66-_hG.js} +1 -1
  13. package/out/renderer/assets/{chunk-OYMX7WX6-Cf724x--.js → chunk-OYMX7WX6-Tff_uZlx.js} +3 -3
  14. package/out/renderer/assets/{chunk-QZHKN3VN-4ZNIwknr.js → chunk-QZHKN3VN-C86eKqSd.js} +1 -1
  15. package/out/renderer/assets/{chunk-YZCP3GAM-D1j7xGGR.js → chunk-YZCP3GAM-CHuoIosP.js} +1 -1
  16. package/out/renderer/assets/{classDiagram-6PBFFD2Q-OFMeoPav.js → classDiagram-6PBFFD2Q-pm-iptmM.js} +6 -6
  17. package/out/renderer/assets/{classDiagram-v2-HSJHXN6E-OFMeoPav.js → classDiagram-v2-HSJHXN6E-pm-iptmM.js} +6 -6
  18. package/out/renderer/assets/{clone-Cm3RO2Zl.js → clone-5TzmfoWe.js} +1 -1
  19. package/out/renderer/assets/{cose-bilkent-S5V4N54A-lCfWcP6y.js → cose-bilkent-S5V4N54A-DVrDSw12.js} +1 -1
  20. package/out/renderer/assets/{dagre-KV5264BT-4I0h4wyh.js → dagre-KV5264BT-DdjpmydK.js} +6 -6
  21. package/out/renderer/assets/{diagram-5BDNPKRD-C1mEpAlt.js → diagram-5BDNPKRD-CdTSROj9.js} +6 -6
  22. package/out/renderer/assets/{diagram-G4DWMVQ6-C_g_DZm9.js → diagram-G4DWMVQ6-DQ1x-vhi.js} +6 -6
  23. package/out/renderer/assets/{diagram-MMDJMWI5-Di6wZV6-.js → diagram-MMDJMWI5-40ryNdvI.js} +5 -5
  24. package/out/renderer/assets/{diagram-TYMM5635-aF8hIDx1.js → diagram-TYMM5635-tf8FuJg1.js} +5 -5
  25. package/out/renderer/assets/{erDiagram-SMLLAGMA-Bk9QFZ27.js → erDiagram-SMLLAGMA-BciRZ0dO.js} +4 -4
  26. package/out/renderer/assets/{flowDiagram-DWJPFMVM-Dfg0LLup.js → flowDiagram-DWJPFMVM-CYDqfzx3.js} +6 -6
  27. package/out/renderer/assets/{ganttDiagram-T4ZO3ILL-lTjaJTs0.js → ganttDiagram-T4ZO3ILL-CRhxy6fZ.js} +2 -2
  28. package/out/renderer/assets/{gitGraphDiagram-UUTBAWPF-C74WBszH.js → gitGraphDiagram-UUTBAWPF-BadxOCq2.js} +6 -6
  29. package/out/renderer/assets/{graph-DGEX1eV1.js → graph-B3RLQ95r.js} +2 -2
  30. package/out/renderer/assets/{highlighted-body-OFNGDK62-DQWoSdTY.js → highlighted-body-OFNGDK62-CrGFRrSX.js} +1 -1
  31. package/out/renderer/assets/{index-BZzw3jIU.js → index-B1oSpSBX.js} +2137 -950
  32. package/out/renderer/assets/index-COLJTco3.css +382 -0
  33. package/out/renderer/assets/{infoDiagram-42DDH7IO-CR4ZLAM1.js → infoDiagram-42DDH7IO-DLMGtQF0.js} +4 -4
  34. package/out/renderer/assets/{ishikawaDiagram-UXIWVN3A-uXL-4FGw.js → ishikawaDiagram-UXIWVN3A-D8djsZeF.js} +1 -1
  35. package/out/renderer/assets/{journeyDiagram-VCZTEJTY-Ds2OL3Lo.js → journeyDiagram-VCZTEJTY-567Gpkxf.js} +4 -4
  36. package/out/renderer/assets/{kanban-definition-6JOO6SKY-CZ1CZVyP.js → kanban-definition-6JOO6SKY-DPjxCDrA.js} +2 -2
  37. package/out/renderer/assets/{layout-CNGveWdi.js → layout-CGQjv10p.js} +4 -4
  38. package/out/renderer/assets/{linear-CnHAiAJ3.js → linear-S4Y_UBCp.js} +1 -1
  39. package/out/renderer/assets/{min-D63AfN0e.js → min-DpKM6qkq.js} +2 -2
  40. package/out/renderer/assets/{mindmap-definition-QFDTVHPH-C3U3xkIJ.js → mindmap-definition-QFDTVHPH-BtxeumQc.js} +3 -3
  41. package/out/renderer/assets/{pieDiagram-DEJITSTG-C8AxK_-F.js → pieDiagram-DEJITSTG-n1UTGYDH.js} +6 -6
  42. package/out/renderer/assets/{quadrantDiagram-34T5L4WZ-BdiZmi7w.js → quadrantDiagram-34T5L4WZ-DXaOIoV-.js} +2 -2
  43. package/out/renderer/assets/{requirementDiagram-MS252O5E-BHIfl5Tz.js → requirementDiagram-MS252O5E-CTmWVt-P.js} +3 -3
  44. package/out/renderer/assets/{sankeyDiagram-XADWPNL6-SthTR8cL.js → sankeyDiagram-XADWPNL6-BXOndA46.js} +1 -1
  45. package/out/renderer/assets/{sequenceDiagram-FGHM5R23-COKEbCYM.js → sequenceDiagram-FGHM5R23-C5v5_yv_.js} +3 -3
  46. package/out/renderer/assets/{stateDiagram-FHFEXIEX-7zRGBf7O.js → stateDiagram-FHFEXIEX-D6Vd4_MM.js} +8 -8
  47. package/out/renderer/assets/{stateDiagram-v2-QKLJ7IA2-BqHJ_ZBX.js → stateDiagram-v2-QKLJ7IA2-De00f0TU.js} +4 -4
  48. package/out/renderer/assets/{timeline-definition-GMOUNBTQ-AvZAT5J-.js → timeline-definition-GMOUNBTQ-DxOCmdWf.js} +2 -2
  49. package/out/renderer/assets/{vennDiagram-DHZGUBPP-oSTndBDY.js → vennDiagram-DHZGUBPP-VNGucDZS.js} +1 -1
  50. package/out/renderer/assets/{wardley-RL74JXVD-C8hIuf19.js → wardley-RL74JXVD-BbxXQNlq.js} +3 -3
  51. package/out/renderer/assets/{wardleyDiagram-NUSXRM2D-Dv2kSOMM.js → wardleyDiagram-NUSXRM2D-BqldBvm5.js} +5 -5
  52. package/out/renderer/assets/{xychartDiagram-5P7HB3ND-J9z4uuMK.js → xychartDiagram-5P7HB3ND-BrCeeMZz.js} +2 -2
  53. package/out/renderer/index.html +2 -2
  54. package/out/server/main.js +210 -165
  55. package/package.json +1 -1
  56. package/out/renderer/assets/index-Cv3lJTlc.css +0 -382
package/README.md CHANGED
@@ -11,9 +11,17 @@ It brings local and cloud AI agents into your development workflow — all insid
11
11
 
12
12
  ---
13
13
 
14
+ ### 📖 User Manual / 用户手册
15
+
16
+ 🚀 [**Fello User Manual**](./guides/README.md) — Getting started, agent configuration, MCP setup, and more.
17
+
18
+ 🚀 [**Fello 用户手册**](./guides/README.md) — 快速开始、Agent 配置、MCP 设置等完整指南。
19
+
20
+ ---
21
+
14
22
  ## 🌟 Why Fello?
15
23
 
16
- > **Talk to your codebase. Let AI handle the heavy lifting.**
24
+ > **Talk to your codebase. Let AI handle the heavy lifting.**
17
25
  > **与你的代码对话,让 AI 处理繁重工作。**
18
26
 
19
27
  - **🧠 Multiple Agent Support** — Run local Stdio agents (via ACP, like `kiro-cli acp`) or connect to any OpenAI-compatible API. Switch freely between them per session.
@@ -31,6 +39,9 @@ It brings local and cloud AI agents into your development workflow — all insid
31
39
  - **💬 WeChat iLink** — Connect Fello to WeChat. Receive messages, reply, and stay in the loop — right from your desktop.
32
40
  - **💬 微信 iLink** — 将 Fello 接入微信,在桌面端收发消息,时刻在线。
33
41
 
42
+ - **⏰ Automation** — Schedule AI tasks with cron expressions. Let agents run on autopilot — daily reports, periodic checks, or any recurring workflow.
43
+ - **⏰ 自动化** — 通过 cron 表达式配置定时 AI 任务计划,让 Agent 自动执行日报生成、定期检查等重复性工作流。
44
+
34
45
  - **🎨 Beautiful & Modern UI** — Dark/light themes, responsive layout, tabbed panels, and smooth streaming chat.
35
46
  - **🎨 美观现代的界面** — 深色/浅色主题、响应式布局、标签面板、流畅的流式对话。
36
47
 
@@ -51,6 +62,7 @@ It brings local and cloud AI agents into your development workflow — all insid
51
62
  | **Diff View** | Side-by-side file diffing (Git-style) for code reviews |
52
63
  | **WebUI** | Browser access over local network via WebSocket |
53
64
  | **WeChat iLink** | Mobile ↔ Desktop messaging bridge |
65
+ | **Automation** | Cron-based scheduled AI tasks with file output and history tracking |
54
66
  | **Skills** | Browse & install from [skills.sh](https://skills.sh) marketplace |
55
67
  | **Chat Timeline** | Jump between messages with timeline dots |
56
68
  | **Auto Titles** | Sessions auto-name themselves from your first message |
@@ -157,6 +169,7 @@ Main/preload changes typically require restarting the dev process.
157
169
  │ ├── agents/ # Agent session logic (ACP + MCP tools, permissions, system prompts)
158
170
  │ ├── backend/ # IPC handlers, FS, Terminal, WebUI, Skills
159
171
  │ │ ├── agents/ # Agent process spawners (stdio, API)
172
+ │ │ ├── automation/ # Cron scheduling & task execution
160
173
  │ │ └── ilink/ # WeChat iLink integration
161
174
  │ ├── electron/ # Electron main process
162
175
  │ └── mainview/ # React app (components, routing, store, i18n, styles)
@@ -196,7 +209,7 @@ npm run pack:win # Windows .exe
196
209
  npm run pack:linux # Linux .AppImage
197
210
  ```
198
211
 
199
- ### 📖 Guide
212
+ ### 📖 Developer Guide
200
213
 
201
214
  - [Overview](./docs/overview.md)
202
215
  - [Tech Stack](./docs/tech-stack.md)
@@ -206,6 +219,7 @@ npm run pack:linux # Linux .AppImage
206
219
  - [Custom Events](./docs/custom-events.md)
207
220
  - [IPC Protocol](./docs/ipc-protocol.md)
208
221
  - [Built-in ACP Tools](./docs/builtin-tools.md)
222
+ - [Automation](./docs/automation.md)
209
223
  - [Storage & Data](./docs/storage.md)
210
224
 
211
225
  ---
@@ -1,4 +1,4 @@
1
- import { b1 as isObjectLike, br as baseGetTag, aM as isArray, a$ as Symbol$1, aL as isArrayLike, bs as arrayLikeKeys, bt as baseKeys, bu as memoize, bv as isArguments, bw as MapCache, bx as eq, by as Uint8Array, b2 as getTag, b7 as isBuffer, ba as Stack, bz as isTypedArray, b5 as isObject, bA as isLength, bB as isIndex, aN as identity, bC as baseFor, bD as Set } from "./index-BZzw3jIU.js";
1
+ import { b1 as isObjectLike, br as baseGetTag, aM as isArray, a$ as Symbol$1, aL as isArrayLike, bs as arrayLikeKeys, bt as baseKeys, bu as memoize, bv as isArguments, bw as MapCache, bx as eq, by as Uint8Array, b2 as getTag, b7 as isBuffer, ba as Stack, bz as isTypedArray, b5 as isObject, bA as isLength, bB as isIndex, aN as identity, bC as baseFor, bD as Set } from "./index-B1oSpSBX.js";
2
2
  var symbolTag$1 = "[object Symbol]";
3
3
  function isSymbol(value) {
4
4
  return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag$1;
@@ -1,4 +1,4 @@
1
- import { a5 as withPath, a6 as halfPi, a7 as epsilon, a8 as tau, a9 as cos, aa as sin, ab as min, ac as abs, ad as pi, ae as sqrt, af as atan2, ag as constant, ah as asin, ai as acos, aj as max } from "./index-BZzw3jIU.js";
1
+ import { a5 as withPath, a6 as halfPi, a7 as epsilon, a8 as tau, a9 as cos, aa as sin, ab as min, ac as abs, ad as pi, ae as sqrt, af as atan2, ag as constant, ah as asin, ai as acos, aj as max } from "./index-B1oSpSBX.js";
2
2
  function arcInnerRadius(d) {
3
3
  return d.innerRadius;
4
4
  }
@@ -1,9 +1,9 @@
1
- import { aO as getDefaultExportFromCjs, _ as __name, N as selectSvgElement, a3 as setupGraphViewbox, l as log, b as setAccTitle, a as getAccTitle, t as setDiagramTitle, v as getDiagramTitle, g as getAccDescription, s as setAccDescription, C as clear, I as cleanAndMerge, K as defaultConfig_default, G as getConfig, c as getConfig2, ap as createText, aP as getIconSVG, i as sanitizeText, d as select, z as getEdgeId, aQ as registerIconPacks, aR as unknownIcon } from "./index-BZzw3jIU.js";
2
- import { p as populateCommonDb } from "./chunk-4BX2VUAB-Cg18SQei.js";
3
- import { p as parse } from "./wardley-RL74JXVD-C8hIuf19.js";
1
+ import { aO as getDefaultExportFromCjs, _ as __name, N as selectSvgElement, a3 as setupGraphViewbox, l as log, b as setAccTitle, a as getAccTitle, t as setDiagramTitle, v as getDiagramTitle, g as getAccDescription, s as setAccDescription, C as clear, I as cleanAndMerge, K as defaultConfig_default, G as getConfig, c as getConfig2, ap as createText, aP as getIconSVG, i as sanitizeText, d as select, z as getEdgeId, aQ as registerIconPacks, aR as unknownIcon } from "./index-B1oSpSBX.js";
2
+ import { p as populateCommonDb } from "./chunk-4BX2VUAB-DGQRb5sN.js";
3
+ import { p as parse } from "./wardley-RL74JXVD-BbxXQNlq.js";
4
4
  import { c as cytoscape$1 } from "./cytoscape.esm-Bm8DJGmZ.js";
5
- import "./min-D63AfN0e.js";
6
- import "./_baseUniq-BApwm7pv.js";
5
+ import "./min-DpKM6qkq.js";
6
+ import "./_baseUniq-DNNr8R6Z.js";
7
7
  var cytoscapeFcose$1 = { exports: {} };
8
8
  var coseBase$1 = { exports: {} };
9
9
  var layoutBase$1 = { exports: {} };
@@ -1,9 +1,9 @@
1
- import { g as getIconStyles } from "./chunk-FMBD7UC4-BbpFqyFG.js";
2
- import { _ as __name, G as getConfig, d as select, e as configureSvgSize, l as log, C as clear, E as rgba, an as getLineFunctionsWithOffset, W as line, X as curveBasis, c as getConfig2, T as getUrl, ao as getEffectiveHtmlLabels, ap as createText, aq as computeLabelTransform, ar as getSubGraphTitleMargins, u as utils_default, m as common_default, as as getStylesFromArray, i as sanitizeText, at as decodeEntities, au as configureLabelImages } from "./index-BZzw3jIU.js";
3
- import { c as clone } from "./clone-Cm3RO2Zl.js";
4
- import { G as Graph } from "./graph-DGEX1eV1.js";
5
- import { c as channel } from "./channel-Dc_jjyUr.js";
6
- import "./_baseUniq-BApwm7pv.js";
1
+ import { g as getIconStyles } from "./chunk-FMBD7UC4-DM66-_hG.js";
2
+ import { _ as __name, G as getConfig, d as select, e as configureSvgSize, l as log, C as clear, E as rgba, an as getLineFunctionsWithOffset, W as line, X as curveBasis, c as getConfig2, T as getUrl, ao as getEffectiveHtmlLabels, ap as createText, aq as computeLabelTransform, ar as getSubGraphTitleMargins, u as utils_default, m as common_default, as as getStylesFromArray, i as sanitizeText, at as decodeEntities, au as configureLabelImages } from "./index-B1oSpSBX.js";
3
+ import { c as clone } from "./clone-5TzmfoWe.js";
4
+ import { G as Graph } from "./graph-B3RLQ95r.js";
5
+ import { c as channel } from "./channel-C3mo-Wfq.js";
6
+ import "./_baseUniq-DNNr8R6Z.js";
7
7
  var parser = (function() {
8
8
  var o = /* @__PURE__ */ __name(function(k, v, o2, l) {
9
9
  for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;
@@ -1,5 +1,5 @@
1
- import { g as getNoteRect, d as drawRect } from "./chunk-YZCP3GAM-D1j7xGGR.js";
2
- import { s as setAccDescription, g as getAccDescription, a as getAccTitle, b as setAccTitle, _ as __name, c as getConfig2, d as select, l as log, e as configureSvgSize, f as assignWithDepth_default, h as calculateTextWidth, i as sanitizeText, k as distExports, w as wrapLabel, m as common_default, n as calculateTextHeight } from "./index-BZzw3jIU.js";
1
+ import { g as getNoteRect, d as drawRect } from "./chunk-YZCP3GAM-CHuoIosP.js";
2
+ import { s as setAccDescription, g as getAccDescription, a as getAccTitle, b as setAccTitle, _ as __name, c as getConfig2, d as select, l as log, e as configureSvgSize, f as assignWithDepth_default, h as calculateTextWidth, i as sanitizeText, k as distExports, w as wrapLabel, m as common_default, n as calculateTextHeight } from "./index-B1oSpSBX.js";
3
3
  var parser = (function() {
4
4
  var o = /* @__PURE__ */ __name(function(k, v, o2, l) {
5
5
  for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;
@@ -1,4 +1,4 @@
1
- import { av as Utils, aw as Color } from "./index-BZzw3jIU.js";
1
+ import { av as Utils, aw as Color } from "./index-B1oSpSBX.js";
2
2
  const channel = (color, channel2) => {
3
3
  return Utils.lang.round(Color.parse(color)[channel2]);
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as __name } from "./index-BZzw3jIU.js";
1
+ import { _ as __name } from "./index-B1oSpSBX.js";
2
2
  function populateCommonDb(ast, db) {
3
3
  if (ast.accDescr) {
4
4
  db.setAccDescription?.(ast.accDescr);
@@ -1,8 +1,8 @@
1
- import { g as getIconStyles } from "./chunk-FMBD7UC4-BbpFqyFG.js";
2
- import { c as createTooltip } from "./chunk-YZCP3GAM-D1j7xGGR.js";
3
- import { g as getDiagramElement } from "./chunk-55IACEB6-CfBiPWtx.js";
4
- import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DMjVfNdS.js";
5
- import { _ as __name, l as log, c as getConfig2, p as getRegisteredLayoutAlgorithm, q as render, u as utils_default, d as select, B as purify, b as setAccTitle, a as getAccTitle, s as setAccDescription, g as getAccDescription, t as setDiagramTitle, v as getDiagramTitle, m as common_default, C as clear, z as getEdgeId, i as sanitizeText, V as parseGenericTypes } from "./index-BZzw3jIU.js";
1
+ import { g as getIconStyles } from "./chunk-FMBD7UC4-DM66-_hG.js";
2
+ import { c as createTooltip } from "./chunk-YZCP3GAM-CHuoIosP.js";
3
+ import { g as getDiagramElement } from "./chunk-55IACEB6-BVIv0C3q.js";
4
+ import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DPmCmhx8.js";
5
+ import { _ as __name, l as log, c as getConfig2, p as getRegisteredLayoutAlgorithm, q as render, u as utils_default, d as select, B as purify, b as setAccTitle, a as getAccTitle, s as setAccDescription, g as getAccDescription, t as setDiagramTitle, v as getDiagramTitle, m as common_default, C as clear, z as getEdgeId, i as sanitizeText, V as parseGenericTypes } from "./index-B1oSpSBX.js";
6
6
  var parser = (function() {
7
7
  var o = /* @__PURE__ */ __name(function(k, v, o2, l) {
8
8
  for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;
@@ -1,4 +1,4 @@
1
- import { _ as __name, d as select } from "./index-BZzw3jIU.js";
1
+ import { _ as __name, d as select } from "./index-B1oSpSBX.js";
2
2
  var getDiagramElement = /* @__PURE__ */ __name((id, securityLevel) => {
3
3
  let sandboxElement;
4
4
  if (securityLevel === "sandbox") {
@@ -1,4 +1,4 @@
1
- import { _ as __name, e as configureSvgSize, l as log } from "./index-BZzw3jIU.js";
1
+ import { _ as __name, e as configureSvgSize, l as log } from "./index-B1oSpSBX.js";
2
2
  var setupViewPortForSVG = /* @__PURE__ */ __name((svg, padding, cssDiagram, useMaxWidth) => {
3
3
  svg.attr("class", cssDiagram);
4
4
  const { width, height, x, y } = calculateDimensionsWithPadding(svg, padding);
@@ -1,4 +1,4 @@
1
- import { _ as __name } from "./index-BZzw3jIU.js";
1
+ import { _ as __name } from "./index-B1oSpSBX.js";
2
2
  var getIconStyles = /* @__PURE__ */ __name(() => `
3
3
  /* Font Awesome icon styling - consolidated */
4
4
  .label-icon {
@@ -1,6 +1,6 @@
1
- import { g as getDiagramElement } from "./chunk-55IACEB6-CfBiPWtx.js";
2
- import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DMjVfNdS.js";
3
- import { _ as __name, l as log, c as getConfig2, q as render, u as utils_default, a as getAccTitle, b as setAccTitle, g as getAccDescription, s as setAccDescription, t as setDiagramTitle, v as getDiagramTitle, Y as generateId, m as common_default, C as clear } from "./index-BZzw3jIU.js";
1
+ import { g as getDiagramElement } from "./chunk-55IACEB6-BVIv0C3q.js";
2
+ import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DPmCmhx8.js";
3
+ import { _ as __name, l as log, c as getConfig2, q as render, u as utils_default, a as getAccTitle, b as setAccTitle, g as getAccDescription, s as setAccDescription, t as setDiagramTitle, v as getDiagramTitle, Y as generateId, m as common_default, C as clear } from "./index-B1oSpSBX.js";
4
4
  var parser = (function() {
5
5
  var o = /* @__PURE__ */ __name(function(k, v, o2, l) {
6
6
  for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;
@@ -1,4 +1,4 @@
1
- import { _ as __name } from "./index-BZzw3jIU.js";
1
+ import { _ as __name } from "./index-B1oSpSBX.js";
2
2
  var ImperativeState = class {
3
3
  /**
4
4
  * @param init - Function that creates the default state.
@@ -1,4 +1,4 @@
1
- import { _ as __name, d as select, $ as lineBreakRegex, k as distExports } from "./index-BZzw3jIU.js";
1
+ import { _ as __name, d as select, $ as lineBreakRegex, k as distExports } from "./index-B1oSpSBX.js";
2
2
  var drawRect = /* @__PURE__ */ __name((element, rectData) => {
3
3
  const rectElement = element.append("rect");
4
4
  rectElement.attr("x", rectData.x);
@@ -1,9 +1,9 @@
1
- import { s as styles_default, c as classRenderer_v3_unified_default, a as classDiagram_default, C as ClassDB } from "./chunk-4TB4RGXK-CvSqwINq.js";
2
- import { _ as __name } from "./index-BZzw3jIU.js";
3
- import "./chunk-FMBD7UC4-BbpFqyFG.js";
4
- import "./chunk-YZCP3GAM-D1j7xGGR.js";
5
- import "./chunk-55IACEB6-CfBiPWtx.js";
6
- import "./chunk-EDXVE4YY-DMjVfNdS.js";
1
+ import { s as styles_default, c as classRenderer_v3_unified_default, a as classDiagram_default, C as ClassDB } from "./chunk-4TB4RGXK-BSCZx5Py.js";
2
+ import { _ as __name } from "./index-B1oSpSBX.js";
3
+ import "./chunk-FMBD7UC4-DM66-_hG.js";
4
+ import "./chunk-YZCP3GAM-CHuoIosP.js";
5
+ import "./chunk-55IACEB6-BVIv0C3q.js";
6
+ import "./chunk-EDXVE4YY-DPmCmhx8.js";
7
7
  var diagram = {
8
8
  parser: classDiagram_default,
9
9
  get db() {
@@ -1,9 +1,9 @@
1
- import { s as styles_default, c as classRenderer_v3_unified_default, a as classDiagram_default, C as ClassDB } from "./chunk-4TB4RGXK-CvSqwINq.js";
2
- import { _ as __name } from "./index-BZzw3jIU.js";
3
- import "./chunk-FMBD7UC4-BbpFqyFG.js";
4
- import "./chunk-YZCP3GAM-D1j7xGGR.js";
5
- import "./chunk-55IACEB6-CfBiPWtx.js";
6
- import "./chunk-EDXVE4YY-DMjVfNdS.js";
1
+ import { s as styles_default, c as classRenderer_v3_unified_default, a as classDiagram_default, C as ClassDB } from "./chunk-4TB4RGXK-BSCZx5Py.js";
2
+ import { _ as __name } from "./index-B1oSpSBX.js";
3
+ import "./chunk-FMBD7UC4-DM66-_hG.js";
4
+ import "./chunk-YZCP3GAM-CHuoIosP.js";
5
+ import "./chunk-55IACEB6-BVIv0C3q.js";
6
+ import "./chunk-EDXVE4YY-DPmCmhx8.js";
7
7
  var diagram = {
8
8
  parser: classDiagram_default,
9
9
  get db() {
@@ -1,4 +1,4 @@
1
- import { b as baseClone } from "./graph-DGEX1eV1.js";
1
+ import { b as baseClone } from "./graph-B3RLQ95r.js";
2
2
  var CLONE_SYMBOLS_FLAG = 4;
3
3
  function clone(value) {
4
4
  return baseClone(value, CLONE_SYMBOLS_FLAG);
@@ -1,4 +1,4 @@
1
- import { aO as getDefaultExportFromCjs, _ as __name, l as log, d as select } from "./index-BZzw3jIU.js";
1
+ import { aO as getDefaultExportFromCjs, _ as __name, l as log, d as select } from "./index-B1oSpSBX.js";
2
2
  import { c as cytoscape$1 } from "./cytoscape.esm-Bm8DJGmZ.js";
3
3
  var cytoscapeCoseBilkent$1 = { exports: {} };
4
4
  var coseBase$1 = { exports: {} };
@@ -1,9 +1,9 @@
1
- import { _ as __name, ay as markers_default, az as clear2, aA as clear, aB as clear$1, l as log, c as getConfig2, aC as updateNodeBounds, aD as setNodeElem, al as insertNode, ar as getSubGraphTitleMargins, am as positionNode, ak as insertCluster, aE as insertEdge, aF as positionEdgeLabel, aG as insertEdgeLabel } from "./index-BZzw3jIU.js";
2
- import { i as isUndefined, G as Graph } from "./graph-DGEX1eV1.js";
3
- import { l as layout } from "./layout-CNGveWdi.js";
4
- import { c as clone } from "./clone-Cm3RO2Zl.js";
5
- import { m as map } from "./min-D63AfN0e.js";
6
- import "./_baseUniq-BApwm7pv.js";
1
+ import { _ as __name, ay as markers_default, az as clear2, aA as clear, aB as clear$1, l as log, c as getConfig2, aC as updateNodeBounds, aD as setNodeElem, al as insertNode, ar as getSubGraphTitleMargins, am as positionNode, ak as insertCluster, aE as insertEdge, aF as positionEdgeLabel, aG as insertEdgeLabel } from "./index-B1oSpSBX.js";
2
+ import { i as isUndefined, G as Graph } from "./graph-B3RLQ95r.js";
3
+ import { l as layout } from "./layout-CGQjv10p.js";
4
+ import { c as clone } from "./clone-5TzmfoWe.js";
5
+ import { m as map } from "./min-DpKM6qkq.js";
6
+ import "./_baseUniq-DNNr8R6Z.js";
7
7
  function write(g) {
8
8
  var json = {
9
9
  options: {
@@ -1,9 +1,9 @@
1
- import { t as setDiagramTitle, b as setAccTitle, s as setAccDescription, v as getDiagramTitle, g as getAccDescription, a as getAccTitle, _ as __name, I as cleanAndMerge, l as log, N as selectSvgElement, e as configureSvgSize, G as getConfig, K as defaultConfig_default, C as clear } from "./index-BZzw3jIU.js";
2
- import { p as populateCommonDb } from "./chunk-4BX2VUAB-Cg18SQei.js";
3
- import { I as ImperativeState } from "./chunk-QZHKN3VN-4ZNIwknr.js";
4
- import { p as parse } from "./wardley-RL74JXVD-C8hIuf19.js";
5
- import "./min-D63AfN0e.js";
6
- import "./_baseUniq-BApwm7pv.js";
1
+ import { t as setDiagramTitle, b as setAccTitle, s as setAccDescription, v as getDiagramTitle, g as getAccDescription, a as getAccTitle, _ as __name, I as cleanAndMerge, l as log, N as selectSvgElement, e as configureSvgSize, G as getConfig, K as defaultConfig_default, C as clear } from "./index-B1oSpSBX.js";
2
+ import { p as populateCommonDb } from "./chunk-4BX2VUAB-DGQRb5sN.js";
3
+ import { I as ImperativeState } from "./chunk-QZHKN3VN-C86eKqSd.js";
4
+ import { p as parse } from "./wardley-RL74JXVD-BbxXQNlq.js";
5
+ import "./min-DpKM6qkq.js";
6
+ import "./_baseUniq-DNNr8R6Z.js";
7
7
  var state = new ImperativeState(() => ({
8
8
  cnt: 1,
9
9
  stack: [
@@ -1,11 +1,11 @@
1
- import { _ as __name, O as getThemeVariables3, G as getConfig, I as cleanAndMerge, N as selectSvgElement, e as configureSvgSize, l as log, bh as styles2String, d as select, b as setAccTitle, a as getAccTitle, t as setDiagramTitle, v as getDiagramTitle, g as getAccDescription, s as setAccDescription, K as defaultConfig_default, bi as isLabelStyle, C as clear } from "./index-BZzw3jIU.js";
2
- import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DMjVfNdS.js";
3
- import { p as populateCommonDb } from "./chunk-4BX2VUAB-Cg18SQei.js";
4
- import { p as parse } from "./wardley-RL74JXVD-C8hIuf19.js";
1
+ import { _ as __name, O as getThemeVariables3, G as getConfig, I as cleanAndMerge, N as selectSvgElement, e as configureSvgSize, l as log, bh as styles2String, d as select, b as setAccTitle, a as getAccTitle, t as setDiagramTitle, v as getDiagramTitle, g as getAccDescription, s as setAccDescription, K as defaultConfig_default, bi as isLabelStyle, C as clear } from "./index-B1oSpSBX.js";
2
+ import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DPmCmhx8.js";
3
+ import { p as populateCommonDb } from "./chunk-4BX2VUAB-DGQRb5sN.js";
4
+ import { p as parse } from "./wardley-RL74JXVD-BbxXQNlq.js";
5
5
  import { b as format } from "./defaultLocale-B2RvLBDe.js";
6
6
  import { o as ordinal } from "./ordinal-CxptdPJm.js";
7
- import "./min-D63AfN0e.js";
8
- import "./_baseUniq-BApwm7pv.js";
7
+ import "./min-DpKM6qkq.js";
8
+ import "./_baseUniq-DNNr8R6Z.js";
9
9
  import "./init-ZxktEp_H.js";
10
10
  function count(node) {
11
11
  var sum = 0, children = node.children, i = children && children.length;
@@ -1,8 +1,8 @@
1
- import { s as setAccDescription, g as getAccDescription, v as getDiagramTitle, t as setDiagramTitle, a as getAccTitle, b as setAccTitle, _ as __name, N as selectSvgElement, C as clear, I as cleanAndMerge, K as defaultConfig_default, G as getConfig, l as log, O as getThemeVariables3, e as configureSvgSize } from "./index-BZzw3jIU.js";
2
- import { p as populateCommonDb } from "./chunk-4BX2VUAB-Cg18SQei.js";
3
- import { p as parse } from "./wardley-RL74JXVD-C8hIuf19.js";
4
- import "./min-D63AfN0e.js";
5
- import "./_baseUniq-BApwm7pv.js";
1
+ import { s as setAccDescription, g as getAccDescription, v as getDiagramTitle, t as setDiagramTitle, a as getAccTitle, b as setAccTitle, _ as __name, N as selectSvgElement, C as clear, I as cleanAndMerge, K as defaultConfig_default, G as getConfig, l as log, O as getThemeVariables3, e as configureSvgSize } from "./index-B1oSpSBX.js";
2
+ import { p as populateCommonDb } from "./chunk-4BX2VUAB-DGQRb5sN.js";
3
+ import { p as parse } from "./wardley-RL74JXVD-BbxXQNlq.js";
4
+ import "./min-DpKM6qkq.js";
5
+ import "./_baseUniq-DNNr8R6Z.js";
6
6
  var defaultOptions = {
7
7
  showLegend: true,
8
8
  ticks: 5,
@@ -1,8 +1,8 @@
1
- import { _ as __name, I as cleanAndMerge, N as selectSvgElement, e as configureSvgSize, l as log, b as setAccTitle, a as getAccTitle, t as setDiagramTitle, v as getDiagramTitle, g as getAccDescription, s as setAccDescription, K as defaultConfig_default, G as getConfig, C as clear } from "./index-BZzw3jIU.js";
2
- import { p as populateCommonDb } from "./chunk-4BX2VUAB-Cg18SQei.js";
3
- import { p as parse } from "./wardley-RL74JXVD-C8hIuf19.js";
4
- import "./min-D63AfN0e.js";
5
- import "./_baseUniq-BApwm7pv.js";
1
+ import { _ as __name, I as cleanAndMerge, N as selectSvgElement, e as configureSvgSize, l as log, b as setAccTitle, a as getAccTitle, t as setDiagramTitle, v as getDiagramTitle, g as getAccDescription, s as setAccDescription, K as defaultConfig_default, G as getConfig, C as clear } from "./index-B1oSpSBX.js";
2
+ import { p as populateCommonDb } from "./chunk-4BX2VUAB-DGQRb5sN.js";
3
+ import { p as parse } from "./wardley-RL74JXVD-BbxXQNlq.js";
4
+ import "./min-DpKM6qkq.js";
5
+ import "./_baseUniq-DNNr8R6Z.js";
6
6
  var DEFAULT_PACKET_CONFIG = defaultConfig_default.packet;
7
7
  var PacketDB = class {
8
8
  constructor() {
@@ -1,7 +1,7 @@
1
- import { g as getDiagramElement } from "./chunk-55IACEB6-CfBiPWtx.js";
2
- import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DMjVfNdS.js";
3
- import { _ as __name, b as setAccTitle, a as getAccTitle, s as setAccDescription, g as getAccDescription, t as setDiagramTitle, v as getDiagramTitle, c as getConfig2, l as log, C as clear, z as getEdgeId, E as rgba, F as __export, p as getRegisteredLayoutAlgorithm, q as render, d as select, u as utils_default } from "./index-BZzw3jIU.js";
4
- import { c as channel } from "./channel-Dc_jjyUr.js";
1
+ import { g as getDiagramElement } from "./chunk-55IACEB6-BVIv0C3q.js";
2
+ import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DPmCmhx8.js";
3
+ import { _ as __name, b as setAccTitle, a as getAccTitle, s as setAccDescription, g as getAccDescription, t as setDiagramTitle, v as getDiagramTitle, c as getConfig2, l as log, C as clear, z as getEdgeId, E as rgba, F as __export, p as getRegisteredLayoutAlgorithm, q as render, d as select, u as utils_default } from "./index-B1oSpSBX.js";
4
+ import { c as channel } from "./channel-C3mo-Wfq.js";
5
5
  var parser = (function() {
6
6
  var o = /* @__PURE__ */ __name(function(k, v, o2, l) {
7
7
  for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;
@@ -1,9 +1,9 @@
1
- import { g as getIconStyles } from "./chunk-FMBD7UC4-BbpFqyFG.js";
2
- import { _ as __name, o as setConfig2, l as log, c as getConfig2, p as getRegisteredLayoutAlgorithm, q as render, u as utils_default, b as setAccTitle, s as setAccDescription, t as setDiagramTitle, a as getAccTitle, g as getAccDescription, v as getDiagramTitle, m as common_default, x as load, J as JSON_SCHEMA, y as isValidShape, z as getEdgeId, d as select, B as purify, C as clear, D as defaultConfig2, E as rgba } from "./index-BZzw3jIU.js";
3
- import { c as createTooltip } from "./chunk-YZCP3GAM-D1j7xGGR.js";
4
- import { g as getDiagramElement } from "./chunk-55IACEB6-CfBiPWtx.js";
5
- import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DMjVfNdS.js";
6
- import { c as channel } from "./channel-Dc_jjyUr.js";
1
+ import { g as getIconStyles } from "./chunk-FMBD7UC4-DM66-_hG.js";
2
+ import { _ as __name, o as setConfig2, l as log, c as getConfig2, p as getRegisteredLayoutAlgorithm, q as render, u as utils_default, b as setAccTitle, s as setAccDescription, t as setDiagramTitle, a as getAccTitle, g as getAccDescription, v as getDiagramTitle, m as common_default, x as load, J as JSON_SCHEMA, y as isValidShape, z as getEdgeId, d as select, B as purify, C as clear, D as defaultConfig2, E as rgba } from "./index-B1oSpSBX.js";
3
+ import { c as createTooltip } from "./chunk-YZCP3GAM-CHuoIosP.js";
4
+ import { g as getDiagramElement } from "./chunk-55IACEB6-BVIv0C3q.js";
5
+ import { s as setupViewPortForSVG } from "./chunk-EDXVE4YY-DPmCmhx8.js";
6
+ import { c as channel } from "./channel-C3mo-Wfq.js";
7
7
  var MERMAID_DOM_ID_PREFIX = "flowchart-";
8
8
  var FlowDB = class {
9
9
  // cspell:ignore funs
@@ -1,5 +1,5 @@
1
- import { bj as Rgb, bk as rgbConvert, bl as define, bm as extend, bn as Color, bo as nogamma, bp as hue, aO as getDefaultExportFromCjs, g as getAccDescription, s as setAccDescription, v as getDiagramTitle, t as setDiagramTitle, a as getAccTitle, b as setAccTitle, _ as __name, c as getConfig2, d as select, e as configureSvgSize, bq as dayjs2, l as log, m as common_default, k as distExports, C as clear, u as utils_default } from "./index-BZzw3jIU.js";
2
- import { b as bisector, t as tickStep, c as continuous, a as copy, l as linear } from "./linear-CnHAiAJ3.js";
1
+ import { bj as Rgb, bk as rgbConvert, bl as define, bm as extend, bn as Color, bo as nogamma, bp as hue, aO as getDefaultExportFromCjs, g as getAccDescription, s as setAccDescription, v as getDiagramTitle, t as setDiagramTitle, a as getAccTitle, b as setAccTitle, _ as __name, c as getConfig2, d as select, e as configureSvgSize, bq as dayjs2, l as log, m as common_default, k as distExports, C as clear, u as utils_default } from "./index-B1oSpSBX.js";
2
+ import { b as bisector, t as tickStep, c as continuous, a as copy, l as linear } from "./linear-S4Y_UBCp.js";
3
3
  import { i as initRange } from "./init-ZxktEp_H.js";
4
4
  import "./defaultLocale-B2RvLBDe.js";
5
5
  function max(values, valueof) {
@@ -1,9 +1,9 @@
1
- import { p as populateCommonDb } from "./chunk-4BX2VUAB-Cg18SQei.js";
2
- import { I as ImperativeState } from "./chunk-QZHKN3VN-4ZNIwknr.js";
3
- import { v as getDiagramTitle, t as setDiagramTitle, s as setAccDescription, g as getAccDescription, a as getAccTitle, b as setAccTitle, _ as __name, G as getConfig, l as log, d as select, c as getConfig2, u as utils_default, H as setupGraphViewbox2, C as clear, m as common_default, I as cleanAndMerge, K as defaultConfig_default, M as random } from "./index-BZzw3jIU.js";
4
- import { p as parse } from "./wardley-RL74JXVD-C8hIuf19.js";
5
- import "./min-D63AfN0e.js";
6
- import "./_baseUniq-BApwm7pv.js";
1
+ import { p as populateCommonDb } from "./chunk-4BX2VUAB-DGQRb5sN.js";
2
+ import { I as ImperativeState } from "./chunk-QZHKN3VN-C86eKqSd.js";
3
+ import { v as getDiagramTitle, t as setDiagramTitle, s as setAccDescription, g as getAccDescription, a as getAccTitle, b as setAccTitle, _ as __name, G as getConfig, l as log, d as select, c as getConfig2, u as utils_default, H as setupGraphViewbox2, C as clear, m as common_default, I as cleanAndMerge, K as defaultConfig_default, M as random } from "./index-B1oSpSBX.js";
4
+ import { p as parse } from "./wardley-RL74JXVD-BbxXQNlq.js";
5
+ import "./min-DpKM6qkq.js";
6
+ import "./_baseUniq-DNNr8R6Z.js";
7
7
  var commitType = {
8
8
  NORMAL: 0,
9
9
  REVERSE: 1,
@@ -1,5 +1,5 @@
1
- import { aX as copyObject, aY as keysIn, aZ as getPrototype, a_ as cloneArrayBuffer, a$ as Symbol$1, b0 as cloneTypedArray, b1 as isObjectLike, b2 as getTag, b3 as baseUnary, b4 as nodeUtil, b5 as isObject, b6 as copyArray, b7 as isBuffer, b8 as cloneBuffer, b9 as initCloneObject, ba as Stack, aM as isArray, bb as assignValue, bc as baseRest, bd as isArrayLikeObject, be as constant, bf as isFunction, bg as isEmpty } from "./index-BZzw3jIU.js";
2
- import { k as keys, g as getSymbols, s as stubArray, e as arrayPush, f as baseGetAllKeys, h as arrayEach, j as getAllKeys, d as arrayMap, l as baseUniq, b as baseFlatten, m as filter, n as forEach, r as reduce } from "./_baseUniq-BApwm7pv.js";
1
+ import { aX as copyObject, aY as keysIn, aZ as getPrototype, a_ as cloneArrayBuffer, a$ as Symbol$1, b0 as cloneTypedArray, b1 as isObjectLike, b2 as getTag, b3 as baseUnary, b4 as nodeUtil, b5 as isObject, b6 as copyArray, b7 as isBuffer, b8 as cloneBuffer, b9 as initCloneObject, ba as Stack, aM as isArray, bb as assignValue, bc as baseRest, bd as isArrayLikeObject, be as constant, bf as isFunction, bg as isEmpty } from "./index-B1oSpSBX.js";
2
+ import { k as keys, g as getSymbols, s as stubArray, e as arrayPush, f as baseGetAllKeys, h as arrayEach, j as getAllKeys, d as arrayMap, l as baseUniq, b as baseFlatten, m as filter, n as forEach, r as reduce } from "./_baseUniq-DNNr8R6Z.js";
3
3
  function baseAssign(object, source) {
4
4
  return object && copyObject(source, keys(source), object);
5
5
  }
@@ -1,4 +1,4 @@
1
- import { r as reactExports, R as R$1, L as Li, j as jsxRuntimeExports, A as At } from "./index-BZzw3jIU.js";
1
+ import { r as reactExports, R as R$1, L as Li, j as jsxRuntimeExports, A as At } from "./index-B1oSpSBX.js";
2
2
  var R = ({ code: s, language: e, raw: t, className: h, startLine: d, lineNumbers: m, ...p }) => {
3
3
  let { shikiTheme: l } = reactExports.useContext(R$1), o = Li(), [a, i] = reactExports.useState(t);
4
4
  return reactExports.useEffect(() => {