@rudderhq/server 0.3.6-canary.27 → 0.3.6-canary.28

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 (84) hide show
  1. package/dist/bootstrap/register-api-routes.d.ts.map +1 -1
  2. package/dist/bootstrap/register-api-routes.js +2 -0
  3. package/dist/bootstrap/register-api-routes.js.map +1 -1
  4. package/dist/routes/website-metadata.d.ts +8 -0
  5. package/dist/routes/website-metadata.d.ts.map +1 -0
  6. package/dist/routes/website-metadata.js +67 -0
  7. package/dist/routes/website-metadata.js.map +1 -0
  8. package/dist/services/website-metadata.d.ts +17 -0
  9. package/dist/services/website-metadata.d.ts.map +1 -0
  10. package/dist/services/website-metadata.js +293 -0
  11. package/dist/services/website-metadata.js.map +1 -0
  12. package/package.json +13 -13
  13. package/ui-dist/assets/{_basePickBy-DWgPPpT3.js → _basePickBy-CmANIhT-.js} +1 -1
  14. package/ui-dist/assets/{_baseUniq-D7eJ4W6s.js → _baseUniq-j2bxroBu.js} +1 -1
  15. package/ui-dist/assets/{arc-kv4QodP9.js → arc-DjBCUW1y.js} +1 -1
  16. package/ui-dist/assets/{architectureDiagram-2XIMDMQ5-DLIN3sRC.js → architectureDiagram-2XIMDMQ5-CfUT68nW.js} +1 -1
  17. package/ui-dist/assets/{blockDiagram-WCTKOSBZ-BYIDNxs8.js → blockDiagram-WCTKOSBZ-DSjzVIq0.js} +1 -1
  18. package/ui-dist/assets/{c4Diagram-IC4MRINW-CUrSdMTu.js → c4Diagram-IC4MRINW-CIzpCe7-.js} +1 -1
  19. package/ui-dist/assets/channel-kTCaCBZK.js +1 -0
  20. package/ui-dist/assets/{chunk-4BX2VUAB-BzjLqWvD.js → chunk-4BX2VUAB-DsVrNkzQ.js} +1 -1
  21. package/ui-dist/assets/{chunk-55IACEB6-B3CG8OTZ.js → chunk-55IACEB6-DOyb-iSF.js} +1 -1
  22. package/ui-dist/assets/{chunk-FMBD7UC4-HfYrFhww.js → chunk-FMBD7UC4-8Th-ICGK.js} +1 -1
  23. package/ui-dist/assets/{chunk-JSJVCQXG-Dk7lUwEs.js → chunk-JSJVCQXG-BJzkph9W.js} +1 -1
  24. package/ui-dist/assets/{chunk-KX2RTZJC-D9kzSeRE.js → chunk-KX2RTZJC-rkPx6CHb.js} +1 -1
  25. package/ui-dist/assets/{chunk-NQ4KR5QH-Rcf87cfa.js → chunk-NQ4KR5QH-BllgOQwx.js} +1 -1
  26. package/ui-dist/assets/{chunk-QZHKN3VN-68FK1pnA.js → chunk-QZHKN3VN-BNfq2OcV.js} +1 -1
  27. package/ui-dist/assets/{chunk-WL4C6EOR-6zOfrHaA.js → chunk-WL4C6EOR-auFig9s8.js} +1 -1
  28. package/ui-dist/assets/classDiagram-VBA2DB6C-BFjy_kSS.js +1 -0
  29. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-BFjy_kSS.js +1 -0
  30. package/ui-dist/assets/clone-CK-9wRci.js +1 -0
  31. package/ui-dist/assets/{cose-bilkent-S5V4N54A-CRWenypU.js → cose-bilkent-S5V4N54A-C1Pmi2wv.js} +1 -1
  32. package/ui-dist/assets/{dagre-KLK3FWXG-Dh5_dOwh.js → dagre-KLK3FWXG-DzdX3EUd.js} +1 -1
  33. package/ui-dist/assets/{diagram-E7M64L7V-DoIysmvh.js → diagram-E7M64L7V-BtEg6u2N.js} +1 -1
  34. package/ui-dist/assets/{diagram-IFDJBPK2-CEHtGj2q.js → diagram-IFDJBPK2-Dd8UNssT.js} +1 -1
  35. package/ui-dist/assets/{diagram-P4PSJMXO-CWQEyklh.js → diagram-P4PSJMXO-IXo4_zPL.js} +1 -1
  36. package/ui-dist/assets/{erDiagram-INFDFZHY-DjyB81ZO.js → erDiagram-INFDFZHY-Cc2TuV-R.js} +1 -1
  37. package/ui-dist/assets/{flowDiagram-PKNHOUZH-05-bM1hG.js → flowDiagram-PKNHOUZH-jYT4_d5M.js} +1 -1
  38. package/ui-dist/assets/{ganttDiagram-A5KZAMGK-DkXrn2mt.js → ganttDiagram-A5KZAMGK-B7EwVgUt.js} +1 -1
  39. package/ui-dist/assets/{gitGraphDiagram-K3NZZRJ6-CCkdUd6g.js → gitGraphDiagram-K3NZZRJ6-CEAIxXVb.js} +1 -1
  40. package/ui-dist/assets/{graph-CUL7EbD4.js → graph-DISCfQaf.js} +1 -1
  41. package/ui-dist/assets/{index-C1mrgyma.js → index-BDXtsnXW.js} +294 -294
  42. package/ui-dist/assets/{index-BgRSDWSr.js → index-BFSrZCus.js} +1 -1
  43. package/ui-dist/assets/{index-DXy2EoAn.js → index-BXZhsHuw.js} +1 -1
  44. package/ui-dist/assets/{index-3-ar1EUy.js → index-BhVj6V12.js} +1 -1
  45. package/ui-dist/assets/{index-C5QrG0bC.js → index-Bi2Kw7WL.js} +1 -1
  46. package/ui-dist/assets/{index-wi3q_A1x.js → index-BwGXAhoG.js} +1 -1
  47. package/ui-dist/assets/{index-Ca_BuF2I.js → index-C0ir6c3X.js} +1 -1
  48. package/ui-dist/assets/{index-nCzK3wpZ.js → index-CEbZxeWj.js} +1 -1
  49. package/ui-dist/assets/{index-Dh0Gv5Tz.js → index-CL3gAClw.js} +1 -1
  50. package/ui-dist/assets/{index-BLxBfQY0.js → index-CQjDBTQP.js} +1 -1
  51. package/ui-dist/assets/{index-TpaL8S4G.js → index-CRElJ82W.js} +1 -1
  52. package/ui-dist/assets/{index-RQc-9t8e.js → index-CYQEbCDq.js} +1 -1
  53. package/ui-dist/assets/{index-D2qpI65w.css → index-CdAMw817.css} +1 -1
  54. package/ui-dist/assets/{index-DZz558jV.js → index-Cq8mRMQk.js} +1 -1
  55. package/ui-dist/assets/{index-DIYd0h_F.js → index-DElwRBht.js} +1 -1
  56. package/ui-dist/assets/{index-BKOthn3u.js → index-DJ51vr2h.js} +1 -1
  57. package/ui-dist/assets/{index-8eYoZxlD.js → index-DoiSGgt5.js} +1 -1
  58. package/ui-dist/assets/{index-Cmjrqt41.js → index-QgKtSzoA.js} +1 -1
  59. package/ui-dist/assets/{index-CfTjpWu2.js → index-XxUSUnPG.js} +1 -1
  60. package/ui-dist/assets/{infoDiagram-LFFYTUFH-BcXvpYbY.js → infoDiagram-LFFYTUFH-BmU51nVK.js} +1 -1
  61. package/ui-dist/assets/{ishikawaDiagram-PHBUUO56-Thnol8Al.js → ishikawaDiagram-PHBUUO56-6oZTMVus.js} +1 -1
  62. package/ui-dist/assets/{journeyDiagram-4ABVD52K-CgCY2Xf0.js → journeyDiagram-4ABVD52K-CYaiodO0.js} +1 -1
  63. package/ui-dist/assets/{kanban-definition-K7BYSVSG-DKvYvgkI.js → kanban-definition-K7BYSVSG-DKaWeQ3g.js} +1 -1
  64. package/ui-dist/assets/{layout-CUGLMAhZ.js → layout-BemxZAuk.js} +1 -1
  65. package/ui-dist/assets/{linear-iDQbQUI4.js → linear-COc3Hf8X.js} +1 -1
  66. package/ui-dist/assets/{mermaid.core-DGL6usp4.js → mermaid.core-CGs8klGF.js} +4 -4
  67. package/ui-dist/assets/{mindmap-definition-YRQLILUH-yiv44usW.js → mindmap-definition-YRQLILUH-DnfYoiMW.js} +1 -1
  68. package/ui-dist/assets/{pieDiagram-SKSYHLDU-CRSCIGLs.js → pieDiagram-SKSYHLDU-K5WKYm2W.js} +1 -1
  69. package/ui-dist/assets/{quadrantDiagram-337W2JSQ-TUo39Zuc.js → quadrantDiagram-337W2JSQ-B5oXdqBL.js} +1 -1
  70. package/ui-dist/assets/{requirementDiagram-Z7DCOOCP-uL6fG0ck.js → requirementDiagram-Z7DCOOCP-C-I80LSp.js} +1 -1
  71. package/ui-dist/assets/{sankeyDiagram-WA2Y5GQK-Bk5X-Avi.js → sankeyDiagram-WA2Y5GQK-eMRrBw9H.js} +1 -1
  72. package/ui-dist/assets/{sequenceDiagram-2WXFIKYE-D7JmVJzB.js → sequenceDiagram-2WXFIKYE-CDzDFOIO.js} +1 -1
  73. package/ui-dist/assets/{stateDiagram-RAJIS63D-BlQyx5k7.js → stateDiagram-RAJIS63D-BxahQvqD.js} +1 -1
  74. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-DrXKxKr7.js +1 -0
  75. package/ui-dist/assets/{timeline-definition-YZTLITO2-DABAR2Ov.js → timeline-definition-YZTLITO2-V119DazV.js} +1 -1
  76. package/ui-dist/assets/{treemap-KZPCXAKY-CYo1kdIN.js → treemap-KZPCXAKY-ClzD6sTY.js} +1 -1
  77. package/ui-dist/assets/{vennDiagram-LZ73GAT5-BsF_jwW5.js → vennDiagram-LZ73GAT5-Dvu0jreB.js} +1 -1
  78. package/ui-dist/assets/{xychartDiagram-JWTSCODW-DP-x-H1g.js → xychartDiagram-JWTSCODW-ni1eJ41P.js} +1 -1
  79. package/ui-dist/index.html +2 -2
  80. package/ui-dist/assets/channel-BvU38vZk.js +0 -1
  81. package/ui-dist/assets/classDiagram-VBA2DB6C-_-p-8j3o.js +0 -1
  82. package/ui-dist/assets/classDiagram-v2-RAHNMMFH-_-p-8j3o.js +0 -1
  83. package/ui-dist/assets/clone-ADmGAUaS.js +0 -1
  84. package/ui-dist/assets/stateDiagram-v2-FVOUBMTO-H61R6w19.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"register-api-routes.d.ts","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AA4BvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB,EACtB,aAAa,EAAE,iBAAiB,8CA2DjC"}
1
+ {"version":3,"file":"register-api-routes.d.ts","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AA6BvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,gBAAgB,EACtB,aAAa,EAAE,iBAAiB,8CA4DjC"}
@@ -25,6 +25,7 @@ import { projectRoutes } from "../routes/projects.js";
25
25
  import { runIntelligenceRoutes } from "../routes/run-intelligence.js";
26
26
  import { secretRoutes } from "../routes/secrets.js";
27
27
  import { sidebarBadgeRoutes } from "../routes/sidebar-badges.js";
28
+ import { websiteMetadataRoutes } from "../routes/website-metadata.js";
28
29
  export function registerApiRoutes(db, opts, pluginRuntime) {
29
30
  const api = Router();
30
31
  api.use(boardMutationGuard());
@@ -58,6 +59,7 @@ export function registerApiRoutes(db, opts, pluginRuntime) {
58
59
  api.use(runIntelligenceRoutes(db));
59
60
  api.use(dashboardRoutes(db));
60
61
  api.use(sidebarBadgeRoutes(db));
62
+ api.use(websiteMetadataRoutes());
61
63
  api.use(instanceSettingsRoutes(db, { deploymentMode: opts.deploymentMode }));
62
64
  api.use(pluginRoutes(db, pluginRuntime.loader, { scheduler: pluginRuntime.scheduler, jobStore: pluginRuntime.jobStore }, { workerManager: pluginRuntime.workerManager }, { toolDispatcher: pluginRuntime.toolDispatcher }, { workerManager: pluginRuntime.workerManager }));
63
65
  api.use(accessRoutes(db, {
@@ -1 +1 @@
1
- {"version":3,"file":"register-api-routes.js","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-api-routes.js","sourceRoot":"","sources":["../../src/bootstrap/register-api-routes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { fetchWebsiteIcon, type WebsiteMetadata, type WebsiteMetadataOptions } from "../services/website-metadata.js";
2
+ export interface WebsiteMetadataRouteOptions {
3
+ resolveWebsiteMetadata?: (url: string) => Promise<WebsiteMetadata>;
4
+ fetchWebsiteIcon?: (url: string) => ReturnType<typeof fetchWebsiteIcon>;
5
+ urlOptions?: WebsiteMetadataOptions;
6
+ }
7
+ export declare function websiteMetadataRoutes(options?: WebsiteMetadataRouteOptions): import("express-serve-static-core").Router;
8
+ //# sourceMappingURL=website-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"website-metadata.d.ts","sourceRoot":"","sources":["../../src/routes/website-metadata.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gBAAgB,EAGhB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC5B,MAAM,iCAAiC,CAAC;AAGzC,MAAM,WAAW,2BAA2B;IAC1C,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IACnE,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IACxE,UAAU,CAAC,EAAE,sBAAsB,CAAC;CACrC;AAqBD,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,2BAAgC,8CA0C9E"}
@@ -0,0 +1,67 @@
1
+ import { Router } from "express";
2
+ import { badRequest } from "../errors.js";
3
+ import { fetchWebsiteIcon, parsePublicHttpUrl, resolveWebsiteMetadata, } from "../services/website-metadata.js";
4
+ import { assertBoard } from "./authz.js";
5
+ function parseInspectableUrl(value) {
6
+ if (typeof value !== "string" || !value.trim()) {
7
+ throw badRequest("Missing url");
8
+ }
9
+ try {
10
+ return parsePublicHttpUrl(value, {}).href;
11
+ }
12
+ catch (error) {
13
+ const message = error instanceof Error ? error.message : "Invalid URL";
14
+ throw badRequest(message);
15
+ }
16
+ }
17
+ function isInspectableUrlError(error) {
18
+ if (!(error instanceof Error))
19
+ return false;
20
+ return error.message === "Only http and https URLs can be inspected"
21
+ || error.message === "Private network URLs cannot be inspected"
22
+ || error.message === "Website metadata redirect limit exceeded";
23
+ }
24
+ export function websiteMetadataRoutes(options = {}) {
25
+ const router = Router();
26
+ const resolveMetadata = options.resolveWebsiteMetadata ?? ((url) => resolveWebsiteMetadata(url, options.urlOptions));
27
+ const fetchIcon = options.fetchWebsiteIcon ?? ((url) => fetchWebsiteIcon(url, options.urlOptions));
28
+ router.get("/website-metadata", async (req, res) => {
29
+ assertBoard(req);
30
+ const targetUrl = parseInspectableUrl(req.query.url);
31
+ let metadata;
32
+ try {
33
+ metadata = await resolveMetadata(targetUrl);
34
+ }
35
+ catch (error) {
36
+ if (isInspectableUrlError(error))
37
+ throw badRequest(error.message);
38
+ throw error;
39
+ }
40
+ const iconUrl = metadata.iconUrl
41
+ ? `/api/website-metadata/icon?url=${encodeURIComponent(metadata.iconUrl)}`
42
+ : null;
43
+ res.json({ ...metadata, iconUrl });
44
+ });
45
+ router.get("/website-metadata/icon", async (req, res) => {
46
+ assertBoard(req);
47
+ const iconUrl = parseInspectableUrl(req.query.url);
48
+ let icon;
49
+ try {
50
+ icon = await fetchIcon(iconUrl);
51
+ }
52
+ catch (error) {
53
+ if (isInspectableUrlError(error))
54
+ throw badRequest(error.message);
55
+ throw error;
56
+ }
57
+ if (!icon) {
58
+ res.status(404).json({ error: "Website icon not found" });
59
+ return;
60
+ }
61
+ res.setHeader("content-type", icon.contentType);
62
+ res.setHeader("cache-control", "public, max-age=86400");
63
+ res.send(icon.body);
64
+ });
65
+ return router;
66
+ }
67
+ //# sourceMappingURL=website-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"website-metadata.js","sourceRoot":"","sources":["../../src/routes/website-metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface WebsiteMetadata {
2
+ url: string;
3
+ siteName: string | null;
4
+ iconUrl: string | null;
5
+ }
6
+ export interface WebsiteMetadataOptions {
7
+ allowPrivateHosts?: boolean;
8
+ fetchImpl?: (url: string, init?: RequestInit) => Promise<Response>;
9
+ }
10
+ export declare function parsePublicHttpUrl(value: string, options?: WebsiteMetadataOptions): URL;
11
+ export declare function resolveWebsiteMetadata(value: string, options?: WebsiteMetadataOptions): Promise<WebsiteMetadata>;
12
+ export declare function fetchWebsiteIcon(value: string, options?: WebsiteMetadataOptions): Promise<{
13
+ contentType: string;
14
+ body: Buffer<ArrayBuffer>;
15
+ } | null>;
16
+ export declare function __clearWebsiteMetadataCacheForTests(): void;
17
+ //# sourceMappingURL=website-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"website-metadata.d.ts","sourceRoot":"","sources":["../../src/services/website-metadata.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CACpE;AA+CD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,OAUrF;AA6LD,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,eAAe,CAAC,CAyB1H;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B;;;UASzF;AAED,wBAAgB,mCAAmC,SAGlD"}
@@ -0,0 +1,293 @@
1
+ import { JSDOM } from "jsdom";
2
+ import { lookup } from "node:dns/promises";
3
+ import { isIP } from "node:net";
4
+ const MAX_HTML_BYTES = 256 * 1024;
5
+ const MAX_ICON_BYTES = 512 * 1024;
6
+ const FETCH_TIMEOUT_MS = 5_000;
7
+ const MAX_REDIRECTS = 5;
8
+ const SUCCESS_CACHE_TTL_MS = 30 * 60_000;
9
+ const FAILURE_CACHE_TTL_MS = 5 * 60_000;
10
+ const IMAGE_CONTENT_TYPES = new Set([
11
+ "image/gif",
12
+ "image/jpeg",
13
+ "image/jpg",
14
+ "image/png",
15
+ "image/svg+xml",
16
+ "image/vnd.microsoft.icon",
17
+ "image/webp",
18
+ "image/x-icon",
19
+ ]);
20
+ function isPrivateIpAddress(value) {
21
+ const normalized = value.replace(/^\[|\]$/gu, "").toLowerCase();
22
+ const ipv4Mapped = normalized.match(/^::ffff:(\d{1,3}(?:\.\d{1,3}){3})$/u);
23
+ if (ipv4Mapped)
24
+ return isPrivateIpAddress(ipv4Mapped[1]);
25
+ if (normalized === "::1" || normalized.startsWith("fe80:") || normalized.startsWith("fc") || normalized.startsWith("fd"))
26
+ return true;
27
+ const parts = normalized.split(".");
28
+ if (parts.length !== 4)
29
+ return false;
30
+ const octets = parts.map((part) => Number(part));
31
+ if (octets.some((octet) => !Number.isInteger(octet) || octet < 0 || octet > 255))
32
+ return false;
33
+ const [a, b] = octets;
34
+ if (a === 10 || a === 127 || a === 0)
35
+ return true;
36
+ if (a === 100 && b >= 64 && b <= 127)
37
+ return true;
38
+ if (a === 169 && b === 254)
39
+ return true;
40
+ if (a === 172 && b >= 16 && b <= 31)
41
+ return true;
42
+ if (a === 192 && b === 0)
43
+ return true;
44
+ if (a === 192 && b === 168)
45
+ return true;
46
+ if (a === 198 && (b === 18 || b === 19))
47
+ return true;
48
+ return false;
49
+ }
50
+ function isPrivateHostname(hostname) {
51
+ const normalized = hostname.replace(/^\[|\]$/gu, "").toLowerCase();
52
+ if (normalized === "localhost" || normalized.endsWith(".localhost"))
53
+ return true;
54
+ if (isIP(normalized))
55
+ return isPrivateIpAddress(normalized);
56
+ return false;
57
+ }
58
+ export function parsePublicHttpUrl(value, options = {}) {
59
+ const parsed = new URL(value);
60
+ if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
61
+ throw new Error("Only http and https URLs can be inspected");
62
+ }
63
+ if (!options.allowPrivateHosts && isPrivateHostname(parsed.hostname)) {
64
+ throw new Error("Private network URLs cannot be inspected");
65
+ }
66
+ parsed.hash = "";
67
+ return parsed;
68
+ }
69
+ async function assertPublicResolvedHost(url, options) {
70
+ if (options.allowPrivateHosts || options.fetchImpl || isIP(url.hostname.replace(/^\[|\]$/gu, "")))
71
+ return;
72
+ const addresses = await lookup(url.hostname, { all: true, verbatim: true });
73
+ if (addresses.some((address) => isPrivateIpAddress(address.address))) {
74
+ throw new Error("Private network URLs cannot be inspected");
75
+ }
76
+ }
77
+ async function fetchWithTimeout(url, options, init) {
78
+ let currentUrl = parsePublicHttpUrl(url.href, options);
79
+ const fetchImpl = options.fetchImpl ?? fetch;
80
+ for (let redirectCount = 0; redirectCount <= MAX_REDIRECTS; redirectCount += 1) {
81
+ await assertPublicResolvedHost(currentUrl, options);
82
+ const controller = new AbortController();
83
+ const timeout = setTimeout(() => controller.abort(), FETCH_TIMEOUT_MS);
84
+ try {
85
+ const response = await fetchImpl(currentUrl.href, {
86
+ redirect: "manual",
87
+ ...init,
88
+ signal: controller.signal,
89
+ headers: {
90
+ accept: "text/html,application/xhtml+xml,image/avif,image/webp,image/png,image/svg+xml,image/*,*/*;q=0.8",
91
+ "user-agent": "RudderWebsiteMetadata/1.0",
92
+ ...(init?.headers ?? {}),
93
+ },
94
+ });
95
+ if (response.status < 300 || response.status >= 400)
96
+ return { response, url: currentUrl };
97
+ const location = response.headers.get("location");
98
+ if (!location)
99
+ return { response, url: currentUrl };
100
+ currentUrl = parsePublicHttpUrl(new URL(location, currentUrl).href, options);
101
+ }
102
+ finally {
103
+ clearTimeout(timeout);
104
+ }
105
+ }
106
+ throw new Error("Website metadata redirect limit exceeded");
107
+ }
108
+ function metadataCacheKey(url) {
109
+ return url.href;
110
+ }
111
+ const metadataCache = new Map();
112
+ const metadataInflight = new Map();
113
+ async function readLimitedBuffer(response, maxBytes) {
114
+ const body = response.body;
115
+ if (!body)
116
+ return Buffer.alloc(0);
117
+ const reader = body.getReader();
118
+ const chunks = [];
119
+ let total = 0;
120
+ try {
121
+ while (true) {
122
+ const { value, done } = await reader.read();
123
+ if (done)
124
+ break;
125
+ if (!value)
126
+ continue;
127
+ total += value.byteLength;
128
+ if (total > maxBytes) {
129
+ throw new Error("Response exceeds metadata size limit");
130
+ }
131
+ chunks.push(Buffer.from(value));
132
+ }
133
+ }
134
+ finally {
135
+ reader.releaseLock();
136
+ }
137
+ return Buffer.concat(chunks);
138
+ }
139
+ function contentTypeBase(value) {
140
+ return value?.split(";")[0]?.trim().toLowerCase() ?? "";
141
+ }
142
+ function absolutizeHref(href, baseUrl, options) {
143
+ const trimmed = href?.trim();
144
+ if (!trimmed)
145
+ return null;
146
+ try {
147
+ const parsed = parsePublicHttpUrl(new URL(trimmed, baseUrl).href, options);
148
+ parsed.hash = "";
149
+ return parsed.href;
150
+ }
151
+ catch {
152
+ return null;
153
+ }
154
+ }
155
+ function linkRelTokens(element) {
156
+ return (element.getAttribute("rel") ?? "")
157
+ .split(/\s+/u)
158
+ .map((token) => token.trim().toLowerCase())
159
+ .filter(Boolean);
160
+ }
161
+ function readSiteName(document) {
162
+ const selectors = [
163
+ 'meta[property="og:site_name"]',
164
+ 'meta[name="application-name"]',
165
+ 'meta[name="apple-mobile-web-app-title"]',
166
+ ];
167
+ for (const selector of selectors) {
168
+ const value = document.querySelector(selector)?.getAttribute("content")?.trim();
169
+ if (value)
170
+ return value;
171
+ }
172
+ const title = document.querySelector("title")?.textContent?.trim();
173
+ return title || null;
174
+ }
175
+ function iconPriority(element) {
176
+ const rel = new Set(linkRelTokens(element));
177
+ if (rel.has("icon") && rel.has("shortcut"))
178
+ return 0;
179
+ if (rel.has("icon"))
180
+ return 1;
181
+ if (rel.has("apple-touch-icon"))
182
+ return 2;
183
+ if (rel.has("apple-touch-icon-precomposed"))
184
+ return 3;
185
+ if (rel.has("mask-icon"))
186
+ return 4;
187
+ return 10;
188
+ }
189
+ function findDeclaredIcon(document, baseUrl, options) {
190
+ const candidates = Array.from(document.querySelectorAll("link[rel][href]"))
191
+ .filter((element) => {
192
+ const rel = new Set(linkRelTokens(element));
193
+ return rel.has("icon")
194
+ || rel.has("apple-touch-icon")
195
+ || rel.has("apple-touch-icon-precomposed")
196
+ || rel.has("mask-icon");
197
+ })
198
+ .sort((left, right) => iconPriority(left) - iconPriority(right));
199
+ for (const candidate of candidates) {
200
+ const href = absolutizeHref(candidate.getAttribute("href"), baseUrl, options);
201
+ if (href)
202
+ return href;
203
+ }
204
+ return null;
205
+ }
206
+ async function validateIconUrl(iconHref, options) {
207
+ try {
208
+ const { response, url } = await fetchWithTimeout(parsePublicHttpUrl(iconHref, options), options, { method: "GET" });
209
+ if (!response.ok)
210
+ return null;
211
+ const contentType = contentTypeBase(response.headers.get("content-type"));
212
+ if (!IMAGE_CONTENT_TYPES.has(contentType))
213
+ return null;
214
+ await readLimitedBuffer(response, MAX_ICON_BYTES);
215
+ return url.href;
216
+ }
217
+ catch {
218
+ return null;
219
+ }
220
+ }
221
+ async function findImplicitFavicon(baseUrl, options) {
222
+ const faviconUrl = new URL("/favicon.ico", baseUrl);
223
+ return validateIconUrl(faviconUrl.href, options);
224
+ }
225
+ async function resolveWebsiteMetadataUncached(value, options) {
226
+ const pageUrl = parsePublicHttpUrl(value, options);
227
+ const { response, url: finalPageUrl } = await fetchWithTimeout(pageUrl, options);
228
+ if (!response.ok) {
229
+ return { url: finalPageUrl.href, siteName: null, iconUrl: null };
230
+ }
231
+ const contentType = contentTypeBase(response.headers.get("content-type"));
232
+ if (contentType && contentType !== "text/html" && contentType !== "application/xhtml+xml") {
233
+ return { url: finalPageUrl.href, siteName: null, iconUrl: null };
234
+ }
235
+ const html = (await readLimitedBuffer(response, MAX_HTML_BYTES)).toString("utf8");
236
+ const dom = new JSDOM(html, { url: finalPageUrl.href });
237
+ try {
238
+ const document = dom.window.document;
239
+ const declaredIcon = findDeclaredIcon(document, finalPageUrl, options);
240
+ return {
241
+ url: finalPageUrl.href,
242
+ siteName: readSiteName(document),
243
+ iconUrl: (declaredIcon ? await validateIconUrl(declaredIcon, options) : null) ?? await findImplicitFavicon(finalPageUrl, options),
244
+ };
245
+ }
246
+ finally {
247
+ dom.window.close();
248
+ }
249
+ }
250
+ export async function resolveWebsiteMetadata(value, options = {}) {
251
+ const pageUrl = parsePublicHttpUrl(value, options);
252
+ const key = metadataCacheKey(pageUrl);
253
+ if (!options.allowPrivateHosts && !options.fetchImpl) {
254
+ const cached = metadataCache.get(key);
255
+ if (cached && cached.expiresAt > Date.now())
256
+ return cached.value;
257
+ const inflight = metadataInflight.get(key);
258
+ if (inflight)
259
+ return inflight;
260
+ const request = resolveWebsiteMetadataUncached(pageUrl.href, options)
261
+ .then((metadata) => {
262
+ metadataCache.set(key, {
263
+ expiresAt: Date.now() + (metadata.iconUrl ? SUCCESS_CACHE_TTL_MS : FAILURE_CACHE_TTL_MS),
264
+ value: metadata,
265
+ });
266
+ return metadata;
267
+ })
268
+ .finally(() => {
269
+ metadataInflight.delete(key);
270
+ });
271
+ metadataInflight.set(key, request);
272
+ return request;
273
+ }
274
+ return resolveWebsiteMetadataUncached(pageUrl.href, options);
275
+ }
276
+ export async function fetchWebsiteIcon(value, options = {}) {
277
+ const iconUrl = parsePublicHttpUrl(value, options);
278
+ const { response } = await fetchWithTimeout(iconUrl, options);
279
+ if (!response.ok)
280
+ return null;
281
+ const contentType = contentTypeBase(response.headers.get("content-type"));
282
+ if (!IMAGE_CONTENT_TYPES.has(contentType))
283
+ return null;
284
+ const body = await readLimitedBuffer(response, MAX_ICON_BYTES);
285
+ if (body.length <= 0)
286
+ return null;
287
+ return { contentType, body };
288
+ }
289
+ export function __clearWebsiteMetadataCacheForTests() {
290
+ metadataCache.clear();
291
+ metadataInflight.clear();
292
+ }
293
+ //# sourceMappingURL=website-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"website-metadata.js","sourceRoot":"","sources":["../../src/services/website-metadata.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rudderhq/server",
3
- "version": "0.3.6-canary.27",
3
+ "version": "0.3.6-canary.28",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "homepage": "https://github.com/Undertone0809/rudder",
6
6
  "bugs": {
@@ -54,18 +54,18 @@
54
54
  "@langfuse/tracing": "^5.1.0",
55
55
  "@larksuiteoapi/node-sdk": "1.67.0",
56
56
  "@opentelemetry/sdk-trace-node": "^2.1.0",
57
- "@rudderhq/agent-runtime-claude-local": "0.3.6-canary.27",
58
- "@rudderhq/agent-runtime-codex-local": "0.3.6-canary.27",
59
- "@rudderhq/agent-runtime-cursor-local": "0.3.6-canary.27",
60
- "@rudderhq/agent-runtime-gemini-local": "0.3.6-canary.27",
61
- "@rudderhq/agent-runtime-openclaw-gateway": "0.3.6-canary.27",
62
- "@rudderhq/agent-runtime-opencode-local": "0.3.6-canary.27",
63
- "@rudderhq/agent-runtime-pi-local": "0.3.6-canary.27",
64
- "@rudderhq/agent-runtime-utils": "0.3.6-canary.27",
65
- "@rudderhq/db": "0.3.6-canary.27",
66
- "@rudderhq/plugin-sdk": "0.3.6-canary.27",
67
- "@rudderhq/run-intelligence-core": "0.3.6-canary.27",
68
- "@rudderhq/shared": "0.3.6-canary.27",
57
+ "@rudderhq/agent-runtime-claude-local": "0.3.6-canary.28",
58
+ "@rudderhq/agent-runtime-codex-local": "0.3.6-canary.28",
59
+ "@rudderhq/agent-runtime-cursor-local": "0.3.6-canary.28",
60
+ "@rudderhq/agent-runtime-gemini-local": "0.3.6-canary.28",
61
+ "@rudderhq/agent-runtime-openclaw-gateway": "0.3.6-canary.28",
62
+ "@rudderhq/agent-runtime-opencode-local": "0.3.6-canary.28",
63
+ "@rudderhq/agent-runtime-pi-local": "0.3.6-canary.28",
64
+ "@rudderhq/agent-runtime-utils": "0.3.6-canary.28",
65
+ "@rudderhq/db": "0.3.6-canary.28",
66
+ "@rudderhq/plugin-sdk": "0.3.6-canary.28",
67
+ "@rudderhq/run-intelligence-core": "0.3.6-canary.28",
68
+ "@rudderhq/shared": "0.3.6-canary.28",
69
69
  "ajv": "^8.18.0",
70
70
  "ajv-formats": "^3.0.1",
71
71
  "better-auth": "1.4.18",
@@ -1 +1 @@
1
- import{c as I,e as l,k as O,g as P,h as b,j as w,l as F,m,t as M,n as _}from"./_baseUniq-D7eJ4W6s.js";import{at as p,aO as A,aP as E,aQ as N,aR as o,aS as R,aT as S,aU as T,aV as G}from"./mermaid.core-DGL6usp4.js";import{W as L,X,Y as v}from"./index-C1mrgyma.js";var g=1/0,Y=17976931348623157e292;function $(n){if(!n)return n===0?n:0;if(n=L(n),n===g||n===-g){var r=n<0?-1:1;return r*Y}return n===n?n:0}function q(n){var r=$(n),a=r%1;return r===r?a?r-a:r:0}function j(n){var r=n==null?0:n.length;return r?I(n):[]}var x=Object.prototype,z=x.hasOwnProperty,k=p(function(n,r){n=Object(n);var a=-1,i=r.length,t=i>2?r[2]:void 0;for(t&&A(r[0],r[1],t)&&(i=1);++a<i;)for(var f=r[a],e=E(f),s=-1,u=e.length;++s<u;){var d=e[s],h=n[d];(h===void 0||N(h,x[d])&&!z.call(n,d))&&(n[d]=f[d])}return n});function nn(n){var r=n==null?0:n.length;return r?n[r-1]:void 0}function B(n){return function(r,a,i){var t=Object(r);if(!o(r)){var f=l(a);r=O(r),a=function(s){return f(t[s],s,t)}}var e=n(r,a,i);return e>-1?t[f?r[e]:e]:void 0}}var C=Math.max;function H(n,r,a){var i=n==null?0:n.length;if(!i)return-1;var t=a==null?0:q(a);return t<0&&(t=C(i+t,0)),P(n,l(r),t)}var rn=B(H);function K(n,r){var a=-1,i=o(n)?Array(n.length):[];return b(n,function(t,f,e){i[++a]=r(t,f,e)}),i}function an(n,r){var a=R(n)?w:K;return a(n,l(r))}var Q=Object.prototype,U=Q.hasOwnProperty;function W(n,r){return n!=null&&U.call(n,r)}function tn(n,r){return n!=null&&F(n,r,W)}function D(n,r){return n<r}function J(n,r,a){for(var i=-1,t=n.length;++i<t;){var f=n[i],e=r(f);if(e!=null&&(s===void 0?e===e&&!X(e):a(e,s)))var s=e,u=f}return u}function en(n){return n&&n.length?J(n,S,D):void 0}function Z(n,r,a,i){if(!v(n))return n;r=m(r,n);for(var t=-1,f=r.length,e=f-1,s=n;s!=null&&++t<f;){var u=M(r[t]),d=a;if(u==="__proto__"||u==="constructor"||u==="prototype")return n;if(t!=e){var h=s[u];d=void 0,d===void 0&&(d=v(h)?h:T(r[t+1])?[]:{})}G(s,u,d),s=s[u]}return n}function sn(n,r,a){for(var i=-1,t=r.length,f={};++i<t;){var e=r[i],s=_(n,e);a(s,e)&&Z(f,m(e,n),s)}return f}export{D as a,J as b,K as c,sn as d,en as e,j as f,rn as g,tn as h,k as i,q as j,nn as l,an as m,$ as t};
1
+ import{c as I,e as l,k as O,g as P,h as b,j as w,l as F,m,t as M,n as _}from"./_baseUniq-j2bxroBu.js";import{at as p,aO as A,aP as E,aQ as N,aR as o,aS as R,aT as S,aU as T,aV as G}from"./mermaid.core-CGs8klGF.js";import{W as L,X,Y as v}from"./index-BDXtsnXW.js";var g=1/0,Y=17976931348623157e292;function $(n){if(!n)return n===0?n:0;if(n=L(n),n===g||n===-g){var r=n<0?-1:1;return r*Y}return n===n?n:0}function q(n){var r=$(n),a=r%1;return r===r?a?r-a:r:0}function j(n){var r=n==null?0:n.length;return r?I(n):[]}var x=Object.prototype,z=x.hasOwnProperty,k=p(function(n,r){n=Object(n);var a=-1,i=r.length,t=i>2?r[2]:void 0;for(t&&A(r[0],r[1],t)&&(i=1);++a<i;)for(var f=r[a],e=E(f),s=-1,u=e.length;++s<u;){var d=e[s],h=n[d];(h===void 0||N(h,x[d])&&!z.call(n,d))&&(n[d]=f[d])}return n});function nn(n){var r=n==null?0:n.length;return r?n[r-1]:void 0}function B(n){return function(r,a,i){var t=Object(r);if(!o(r)){var f=l(a);r=O(r),a=function(s){return f(t[s],s,t)}}var e=n(r,a,i);return e>-1?t[f?r[e]:e]:void 0}}var C=Math.max;function H(n,r,a){var i=n==null?0:n.length;if(!i)return-1;var t=a==null?0:q(a);return t<0&&(t=C(i+t,0)),P(n,l(r),t)}var rn=B(H);function K(n,r){var a=-1,i=o(n)?Array(n.length):[];return b(n,function(t,f,e){i[++a]=r(t,f,e)}),i}function an(n,r){var a=R(n)?w:K;return a(n,l(r))}var Q=Object.prototype,U=Q.hasOwnProperty;function W(n,r){return n!=null&&U.call(n,r)}function tn(n,r){return n!=null&&F(n,r,W)}function D(n,r){return n<r}function J(n,r,a){for(var i=-1,t=n.length;++i<t;){var f=n[i],e=r(f);if(e!=null&&(s===void 0?e===e&&!X(e):a(e,s)))var s=e,u=f}return u}function en(n){return n&&n.length?J(n,S,D):void 0}function Z(n,r,a,i){if(!v(n))return n;r=m(r,n);for(var t=-1,f=r.length,e=f-1,s=n;s!=null&&++t<f;){var u=M(r[t]),d=a;if(u==="__proto__"||u==="constructor"||u==="prototype")return n;if(t!=e){var h=s[u];d=void 0,d===void 0&&(d=v(h)?h:T(r[t+1])?[]:{})}G(s,u,d),s=s[u]}return n}function sn(n,r,a){for(var i=-1,t=r.length,f={};++i<t;){var e=r[i],s=_(n,e);a(s,e)&&Z(f,m(e,n),s)}return f}export{D as a,J as b,K as c,sn as d,en as e,j as f,rn as g,tn as h,k as i,q as j,nn as l,an as m,$ as t};
@@ -1 +1 @@
1
- import{X as U,Z as w,_ as L,Y as sn}from"./index-C1mrgyma.js";import{aS as T,aR as un,bf as Rn,bg as xn,bh as Mn,bi as on,bj as x,aP as B,bk as mn,bl as gn,bm as Cn,bn as S,bd as ln,bo as R,bp as Fn,bq as D,br as Dn,bs as Gn,bt as $,aV as Un,bu as Bn,aQ as Nn,bv as X,bw as Kn,bx as jn,aU as Hn,aT as cn,bb as qn,by as m}from"./mermaid.core-DGL6usp4.js";function bn(n,r){for(var e=-1,t=n==null?0:n.length,f=Array(t);++e<t;)f[e]=r(n[e],e,n);return f}var Q=w?w.prototype:void 0,J=Q?Q.toString:void 0;function dn(n){if(typeof n=="string")return n;if(T(n))return bn(n,dn)+"";if(U(n))return J?J.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Yn(){}function pn(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Zn(n,r,e,t){for(var f=n.length,i=e+-1;++i<f;)if(r(n[i],i,n))return i;return-1}function Xn(n){return n!==n}function Qn(n,r,e){for(var t=e-1,f=n.length;++t<f;)if(n[t]===r)return t;return-1}function Jn(n,r,e){return r===r?Qn(n,r,e):Zn(n,Xn,e)}function Wn(n,r){var e=n==null?0:n.length;return!!e&&Jn(n,r,0)>-1}function _(n){return un(n)?Rn(n):xn(n)}var zn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Vn=/^\w*$/;function N(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||U(n)?!0:Vn.test(n)||!zn.test(n)||r!=null&&n in Object(r)}var kn=500;function nr(n){var r=Mn(n,function(t){return e.size===kn&&e.clear(),t}),e=r.cache;return r}var rr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,er=/\\(\\)?/g,tr=nr(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(rr,function(e,t,f,i){r.push(f?i.replace(er,"$1"):t||e)}),r});function ir(n){return n==null?"":dn(n)}function An(n,r){return T(n)?n:N(n,r)?[n]:tr(ir(n))}function M(n){if(typeof n=="string"||U(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function yn(n,r){r=An(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[M(r[e++])];return e&&e==t?n:void 0}function fr(n,r,e){var t=n==null?void 0:yn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,f=n.length;++e<t;)n[f+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ar(n){return T(n)||on(n)||!!(W&&n&&n[W])}function wt(n,r,e,t,f){var i=-1,a=n.length;for(e||(e=ar),f||(f=[]);++i<a;){var s=n[i];e(s)?K(f,s):t||(f[f.length]=s)}return f}function sr(n,r,e,t){var f=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++f]);++f<i;)e=r(e,n[f],f,n);return e}function ur(n,r){return n&&x(r,_(r),n)}function or(n,r){return n&&x(r,B(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,f=0,i=[];++e<t;){var a=n[e];r(a,e,n)&&(i[f++]=a)}return i}function hn(){return[]}var gr=Object.prototype,lr=gr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,j=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return lr.call(n,r)}))}:hn;function cr(n,r){return x(n,j(n),r)}var br=Object.getOwnPropertySymbols,wn=br?function(n){for(var r=[];n;)K(r,j(n)),n=mn(n);return r}:hn;function dr(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,_,j)}function pr(n){return On(n,B,wn)}var Ar=Object.prototype,yr=Ar.hasOwnProperty;function Tr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&yr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function hr(n,r){var e=r?gn(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var wr=/\w*$/;function Or(n){var r=new n.constructor(n.source,wr.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function _r(n){return k?Object(k.call(n)):{}}var $r="[object Boolean]",Sr="[object Date]",Er="[object Map]",Pr="[object Number]",Ir="[object RegExp]",vr="[object Set]",Lr="[object String]",Rr="[object Symbol]",xr="[object ArrayBuffer]",Mr="[object DataView]",mr="[object Float32Array]",Cr="[object Float64Array]",Fr="[object Int8Array]",Dr="[object Int16Array]",Gr="[object Int32Array]",Ur="[object Uint8Array]",Br="[object Uint8ClampedArray]",Nr="[object Uint16Array]",Kr="[object Uint32Array]";function jr(n,r,e){var t=n.constructor;switch(r){case xr:return gn(n);case $r:case Sr:return new t(+n);case Mr:return hr(n,e);case mr:case Cr:case Fr:case Dr:case Gr:case Ur:case Br:case Nr:case Kr:return Cn(n,e);case Er:return new t;case Pr:case Lr:return new t(n);case Ir:return Or(n);case vr:return new t;case Rr:return _r(n)}}var Hr="[object Map]";function qr(n){return L(n)&&S(n)==Hr}var nn=R&&R.isMap,Yr=nn?ln(nn):qr,Zr="[object Set]";function Xr(n){return L(n)&&S(n)==Zr}var rn=R&&R.isSet,Qr=rn?ln(rn):Xr,Jr=1,Wr=2,zr=4,_n="[object Arguments]",Vr="[object Array]",kr="[object Boolean]",ne="[object Date]",re="[object Error]",$n="[object Function]",ee="[object GeneratorFunction]",te="[object Map]",ie="[object Number]",Sn="[object Object]",fe="[object RegExp]",ae="[object Set]",se="[object String]",ue="[object Symbol]",oe="[object WeakMap]",ge="[object ArrayBuffer]",le="[object DataView]",ce="[object Float32Array]",be="[object Float64Array]",de="[object Int8Array]",pe="[object Int16Array]",Ae="[object Int32Array]",ye="[object Uint8Array]",Te="[object Uint8ClampedArray]",he="[object Uint16Array]",we="[object Uint32Array]",g={};g[_n]=g[Vr]=g[ge]=g[le]=g[kr]=g[ne]=g[ce]=g[be]=g[de]=g[pe]=g[Ae]=g[te]=g[ie]=g[Sn]=g[fe]=g[ae]=g[se]=g[ue]=g[ye]=g[Te]=g[he]=g[we]=!0;g[re]=g[$n]=g[oe]=!1;function C(n,r,e,t,f,i){var a,s=r&Jr,u=r&Wr,b=r&zr;if(a!==void 0)return a;if(!sn(n))return n;var l=T(n);if(l){if(a=Tr(n),!s)return Fn(n,a)}else{var o=S(n),c=o==$n||o==ee;if(D(n))return Dn(n,s);if(o==Sn||o==_n||c&&!f){if(a=u||c?{}:Gn(n),!s)return u?dr(n,or(a,n)):cr(n,ur(a,n))}else{if(!g[o])return f?n:{};a=jr(n,o,s)}}i||(i=new $);var h=i.get(n);if(h)return h;i.set(n,a),Qr(n)?n.forEach(function(d){a.add(C(d,r,e,d,n,i))}):Yr(n)&&n.forEach(function(d,p){a.set(p,C(d,r,e,p,n,i))});var A=b?u?pr:G:u?B:_,y=l?void 0:A(n);return pn(y||n,function(d,p){y&&(p=d,d=n[p]),Un(a,p,C(d,r,e,p,n,i))}),a}var Oe="__lodash_hash_undefined__";function _e(n){return this.__data__.set(n,Oe),this}function $e(n){return this.__data__.has(n)}function E(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Bn;++r<e;)this.add(n[r])}E.prototype.add=E.prototype.push=_e;E.prototype.has=$e;function Se(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Ee=1,Pe=2;function Pn(n,r,e,t,f,i){var a=e&Ee,s=n.length,u=r.length;if(s!=u&&!(a&&u>s))return!1;var b=i.get(n),l=i.get(r);if(b&&l)return b==r&&l==n;var o=-1,c=!0,h=e&Pe?new E:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var A=n[o],y=r[o];if(t)var d=a?t(y,A,o,r,n,i):t(A,y,o,n,r,i);if(d!==void 0){if(d)continue;c=!1;break}if(h){if(!Se(r,function(p,O){if(!En(h,O)&&(A===p||f(A,p,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(A===y||f(A,y,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Ie(n){var r=-1,e=Array(n.size);return n.forEach(function(t,f){e[++r]=[f,t]}),e}function H(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var ve=1,Le=2,Re="[object Boolean]",xe="[object Date]",Me="[object Error]",me="[object Map]",Ce="[object Number]",Fe="[object RegExp]",De="[object Set]",Ge="[object String]",Ue="[object Symbol]",Be="[object ArrayBuffer]",Ne="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function Ke(n,r,e,t,f,i,a){switch(e){case Ne:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Be:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case Re:case xe:case Ce:return Nn(+n,+r);case Me:return n.name==r.name&&n.message==r.message;case Fe:case Ge:return n==r+"";case me:var s=Ie;case De:var u=t&ve;if(s||(s=H),n.size!=r.size&&!u)return!1;var b=a.get(n);if(b)return b==r;t|=Le,a.set(n,r);var l=Pn(s(n),s(r),t,f,i,a);return a.delete(n),l;case Ue:if(F)return F.call(n)==F.call(r)}return!1}var je=1,He=Object.prototype,qe=He.hasOwnProperty;function Ye(n,r,e,t,f,i){var a=e&je,s=G(n),u=s.length,b=G(r),l=b.length;if(u!=l&&!a)return!1;for(var o=u;o--;){var c=s[o];if(!(a?c in r:qe.call(r,c)))return!1}var h=i.get(n),A=i.get(r);if(h&&A)return h==r&&A==n;var y=!0;i.set(n,r),i.set(r,n);for(var d=a;++o<u;){c=s[o];var p=n[c],O=r[c];if(t)var Z=a?t(O,p,c,r,n,i):t(p,O,c,n,r,i);if(!(Z===void 0?p===O||f(p,O,e,t,i):Z)){y=!1;break}d||(d=c=="constructor")}if(y&&!d){var P=n.constructor,I=r.constructor;P!=I&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof I=="function"&&I instanceof I)&&(y=!1)}return i.delete(n),i.delete(r),y}var Ze=1,tn="[object Arguments]",fn="[object Array]",v="[object Object]",Xe=Object.prototype,an=Xe.hasOwnProperty;function Qe(n,r,e,t,f,i){var a=T(n),s=T(r),u=a?fn:S(n),b=s?fn:S(r);u=u==tn?v:u,b=b==tn?v:b;var l=u==v,o=b==v,c=u==b;if(c&&D(n)){if(!D(r))return!1;a=!0,l=!1}if(c&&!l)return i||(i=new $),a||Kn(n)?Pn(n,r,e,t,f,i):Ke(n,r,u,e,t,f,i);if(!(e&Ze)){var h=l&&an.call(n,"__wrapped__"),A=o&&an.call(r,"__wrapped__");if(h||A){var y=h?n.value():n,d=A?r.value():r;return i||(i=new $),f(y,d,e,t,i)}}return c?(i||(i=new $),Ye(n,r,e,t,f,i)):!1}function q(n,r,e,t,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Qe(n,r,e,t,q,f)}var Je=1,We=2;function ze(n,r,e,t){var f=e.length,i=f;if(n==null)return!i;for(n=Object(n);f--;){var a=e[f];if(a[2]?a[1]!==n[a[0]]:!(a[0]in n))return!1}for(;++f<i;){a=e[f];var s=a[0],u=n[s],b=a[1];if(a[2]){if(u===void 0&&!(s in n))return!1}else{var l=new $,o;if(!(o===void 0?q(b,u,Je|We,t,l):o))return!1}}return!0}function In(n){return n===n&&!sn(n)}function Ve(n){for(var r=_(n),e=r.length;e--;){var t=r[e],f=n[t];r[e]=[t,f,In(f)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function ke(n){var r=Ve(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ze(e,n,r)}}function nt(n,r){return n!=null&&r in Object(n)}function rt(n,r,e){r=An(r,n);for(var t=-1,f=r.length,i=!1;++t<f;){var a=M(r[t]);if(!(i=n!=null&&e(n,a)))break;n=n[a]}return i||++t!=f?i:(f=n==null?0:n.length,!!f&&jn(f)&&Hn(a,f)&&(T(n)||on(n)))}function et(n,r){return n!=null&&rt(n,r,nt)}var tt=1,it=2;function ft(n,r){return N(n)&&In(r)?vn(M(n),r):function(e){var t=fr(e,n);return t===void 0&&t===r?et(e,n):q(r,t,tt|it)}}function at(n){return function(r){return r==null?void 0:r[n]}}function st(n){return function(r){return yn(r,n)}}function ut(n){return N(n)?at(M(n)):st(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?ft(n[0],n[1]):ke(n):ut(n)}function ot(n,r){return n&&qn(n,r,_)}function gt(n,r){return function(e,t){if(e==null)return e;if(!un(e))return n(e,t);for(var f=e.length,i=-1,a=Object(e);++i<f&&t(a[i],i,a)!==!1;);return e}}var Y=gt(ot);function lt(n){return typeof n=="function"?n:cn}function Ot(n,r){var e=T(n)?pn:Y;return e(n,lt(r))}function ct(n,r){var e=[];return Y(n,function(t,f,i){r(t,f,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:ct;return e(n,Ln(r))}function bt(n,r){return bn(r,function(e){return n[e]})}function $t(n){return n==null?[]:bt(n,_(n))}function St(n){return n===void 0}function dt(n,r,e,t,f){return f(n,function(i,a,s){e=t?(t=!1,i):r(e,i,a,s)}),e}function Et(n,r,e){var t=T(n)?sr:dt,f=arguments.length<3;return t(n,Ln(r),e,f,Y)}var pt=1/0,At=m&&1/H(new m([,-0]))[1]==pt?function(n){return new m(n)}:Yn,yt=200;function Pt(n,r,e){var t=-1,f=Wn,i=n.length,a=!0,s=[],u=s;if(i>=yt){var b=r?null:At(n);if(b)return H(b);a=!1,f=En,u=new E}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,a&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else f(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{ct as A,Se as B,Yn as C,E as S,Pt as a,C as b,wt as c,Ot as d,Ln as e,_t as f,Zn as g,Y as h,St as i,bn as j,_ as k,rt as l,An as m,yn as n,lt as o,ot as p,et as q,Et as r,ir as s,M as t,Wn as u,$t as v,En as w,Jn as x,pr as y,Tn as z};
1
+ import{X as U,Z as w,_ as L,Y as sn}from"./index-BDXtsnXW.js";import{aS as T,aR as un,bf as Rn,bg as xn,bh as Mn,bi as on,bj as x,aP as B,bk as mn,bl as gn,bm as Cn,bn as S,bd as ln,bo as R,bp as Fn,bq as D,br as Dn,bs as Gn,bt as $,aV as Un,bu as Bn,aQ as Nn,bv as X,bw as Kn,bx as jn,aU as Hn,aT as cn,bb as qn,by as m}from"./mermaid.core-CGs8klGF.js";function bn(n,r){for(var e=-1,t=n==null?0:n.length,f=Array(t);++e<t;)f[e]=r(n[e],e,n);return f}var Q=w?w.prototype:void 0,J=Q?Q.toString:void 0;function dn(n){if(typeof n=="string")return n;if(T(n))return bn(n,dn)+"";if(U(n))return J?J.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Yn(){}function pn(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Zn(n,r,e,t){for(var f=n.length,i=e+-1;++i<f;)if(r(n[i],i,n))return i;return-1}function Xn(n){return n!==n}function Qn(n,r,e){for(var t=e-1,f=n.length;++t<f;)if(n[t]===r)return t;return-1}function Jn(n,r,e){return r===r?Qn(n,r,e):Zn(n,Xn,e)}function Wn(n,r){var e=n==null?0:n.length;return!!e&&Jn(n,r,0)>-1}function _(n){return un(n)?Rn(n):xn(n)}var zn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Vn=/^\w*$/;function N(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||U(n)?!0:Vn.test(n)||!zn.test(n)||r!=null&&n in Object(r)}var kn=500;function nr(n){var r=Mn(n,function(t){return e.size===kn&&e.clear(),t}),e=r.cache;return r}var rr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,er=/\\(\\)?/g,tr=nr(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(rr,function(e,t,f,i){r.push(f?i.replace(er,"$1"):t||e)}),r});function ir(n){return n==null?"":dn(n)}function An(n,r){return T(n)?n:N(n,r)?[n]:tr(ir(n))}function M(n){if(typeof n=="string"||U(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function yn(n,r){r=An(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[M(r[e++])];return e&&e==t?n:void 0}function fr(n,r,e){var t=n==null?void 0:yn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,f=n.length;++e<t;)n[f+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ar(n){return T(n)||on(n)||!!(W&&n&&n[W])}function wt(n,r,e,t,f){var i=-1,a=n.length;for(e||(e=ar),f||(f=[]);++i<a;){var s=n[i];e(s)?K(f,s):t||(f[f.length]=s)}return f}function sr(n,r,e,t){var f=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++f]);++f<i;)e=r(e,n[f],f,n);return e}function ur(n,r){return n&&x(r,_(r),n)}function or(n,r){return n&&x(r,B(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,f=0,i=[];++e<t;){var a=n[e];r(a,e,n)&&(i[f++]=a)}return i}function hn(){return[]}var gr=Object.prototype,lr=gr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,j=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return lr.call(n,r)}))}:hn;function cr(n,r){return x(n,j(n),r)}var br=Object.getOwnPropertySymbols,wn=br?function(n){for(var r=[];n;)K(r,j(n)),n=mn(n);return r}:hn;function dr(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,_,j)}function pr(n){return On(n,B,wn)}var Ar=Object.prototype,yr=Ar.hasOwnProperty;function Tr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&yr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function hr(n,r){var e=r?gn(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var wr=/\w*$/;function Or(n){var r=new n.constructor(n.source,wr.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function _r(n){return k?Object(k.call(n)):{}}var $r="[object Boolean]",Sr="[object Date]",Er="[object Map]",Pr="[object Number]",Ir="[object RegExp]",vr="[object Set]",Lr="[object String]",Rr="[object Symbol]",xr="[object ArrayBuffer]",Mr="[object DataView]",mr="[object Float32Array]",Cr="[object Float64Array]",Fr="[object Int8Array]",Dr="[object Int16Array]",Gr="[object Int32Array]",Ur="[object Uint8Array]",Br="[object Uint8ClampedArray]",Nr="[object Uint16Array]",Kr="[object Uint32Array]";function jr(n,r,e){var t=n.constructor;switch(r){case xr:return gn(n);case $r:case Sr:return new t(+n);case Mr:return hr(n,e);case mr:case Cr:case Fr:case Dr:case Gr:case Ur:case Br:case Nr:case Kr:return Cn(n,e);case Er:return new t;case Pr:case Lr:return new t(n);case Ir:return Or(n);case vr:return new t;case Rr:return _r(n)}}var Hr="[object Map]";function qr(n){return L(n)&&S(n)==Hr}var nn=R&&R.isMap,Yr=nn?ln(nn):qr,Zr="[object Set]";function Xr(n){return L(n)&&S(n)==Zr}var rn=R&&R.isSet,Qr=rn?ln(rn):Xr,Jr=1,Wr=2,zr=4,_n="[object Arguments]",Vr="[object Array]",kr="[object Boolean]",ne="[object Date]",re="[object Error]",$n="[object Function]",ee="[object GeneratorFunction]",te="[object Map]",ie="[object Number]",Sn="[object Object]",fe="[object RegExp]",ae="[object Set]",se="[object String]",ue="[object Symbol]",oe="[object WeakMap]",ge="[object ArrayBuffer]",le="[object DataView]",ce="[object Float32Array]",be="[object Float64Array]",de="[object Int8Array]",pe="[object Int16Array]",Ae="[object Int32Array]",ye="[object Uint8Array]",Te="[object Uint8ClampedArray]",he="[object Uint16Array]",we="[object Uint32Array]",g={};g[_n]=g[Vr]=g[ge]=g[le]=g[kr]=g[ne]=g[ce]=g[be]=g[de]=g[pe]=g[Ae]=g[te]=g[ie]=g[Sn]=g[fe]=g[ae]=g[se]=g[ue]=g[ye]=g[Te]=g[he]=g[we]=!0;g[re]=g[$n]=g[oe]=!1;function C(n,r,e,t,f,i){var a,s=r&Jr,u=r&Wr,b=r&zr;if(a!==void 0)return a;if(!sn(n))return n;var l=T(n);if(l){if(a=Tr(n),!s)return Fn(n,a)}else{var o=S(n),c=o==$n||o==ee;if(D(n))return Dn(n,s);if(o==Sn||o==_n||c&&!f){if(a=u||c?{}:Gn(n),!s)return u?dr(n,or(a,n)):cr(n,ur(a,n))}else{if(!g[o])return f?n:{};a=jr(n,o,s)}}i||(i=new $);var h=i.get(n);if(h)return h;i.set(n,a),Qr(n)?n.forEach(function(d){a.add(C(d,r,e,d,n,i))}):Yr(n)&&n.forEach(function(d,p){a.set(p,C(d,r,e,p,n,i))});var A=b?u?pr:G:u?B:_,y=l?void 0:A(n);return pn(y||n,function(d,p){y&&(p=d,d=n[p]),Un(a,p,C(d,r,e,p,n,i))}),a}var Oe="__lodash_hash_undefined__";function _e(n){return this.__data__.set(n,Oe),this}function $e(n){return this.__data__.has(n)}function E(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Bn;++r<e;)this.add(n[r])}E.prototype.add=E.prototype.push=_e;E.prototype.has=$e;function Se(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Ee=1,Pe=2;function Pn(n,r,e,t,f,i){var a=e&Ee,s=n.length,u=r.length;if(s!=u&&!(a&&u>s))return!1;var b=i.get(n),l=i.get(r);if(b&&l)return b==r&&l==n;var o=-1,c=!0,h=e&Pe?new E:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var A=n[o],y=r[o];if(t)var d=a?t(y,A,o,r,n,i):t(A,y,o,n,r,i);if(d!==void 0){if(d)continue;c=!1;break}if(h){if(!Se(r,function(p,O){if(!En(h,O)&&(A===p||f(A,p,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(A===y||f(A,y,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Ie(n){var r=-1,e=Array(n.size);return n.forEach(function(t,f){e[++r]=[f,t]}),e}function H(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var ve=1,Le=2,Re="[object Boolean]",xe="[object Date]",Me="[object Error]",me="[object Map]",Ce="[object Number]",Fe="[object RegExp]",De="[object Set]",Ge="[object String]",Ue="[object Symbol]",Be="[object ArrayBuffer]",Ne="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function Ke(n,r,e,t,f,i,a){switch(e){case Ne:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Be:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case Re:case xe:case Ce:return Nn(+n,+r);case Me:return n.name==r.name&&n.message==r.message;case Fe:case Ge:return n==r+"";case me:var s=Ie;case De:var u=t&ve;if(s||(s=H),n.size!=r.size&&!u)return!1;var b=a.get(n);if(b)return b==r;t|=Le,a.set(n,r);var l=Pn(s(n),s(r),t,f,i,a);return a.delete(n),l;case Ue:if(F)return F.call(n)==F.call(r)}return!1}var je=1,He=Object.prototype,qe=He.hasOwnProperty;function Ye(n,r,e,t,f,i){var a=e&je,s=G(n),u=s.length,b=G(r),l=b.length;if(u!=l&&!a)return!1;for(var o=u;o--;){var c=s[o];if(!(a?c in r:qe.call(r,c)))return!1}var h=i.get(n),A=i.get(r);if(h&&A)return h==r&&A==n;var y=!0;i.set(n,r),i.set(r,n);for(var d=a;++o<u;){c=s[o];var p=n[c],O=r[c];if(t)var Z=a?t(O,p,c,r,n,i):t(p,O,c,n,r,i);if(!(Z===void 0?p===O||f(p,O,e,t,i):Z)){y=!1;break}d||(d=c=="constructor")}if(y&&!d){var P=n.constructor,I=r.constructor;P!=I&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof I=="function"&&I instanceof I)&&(y=!1)}return i.delete(n),i.delete(r),y}var Ze=1,tn="[object Arguments]",fn="[object Array]",v="[object Object]",Xe=Object.prototype,an=Xe.hasOwnProperty;function Qe(n,r,e,t,f,i){var a=T(n),s=T(r),u=a?fn:S(n),b=s?fn:S(r);u=u==tn?v:u,b=b==tn?v:b;var l=u==v,o=b==v,c=u==b;if(c&&D(n)){if(!D(r))return!1;a=!0,l=!1}if(c&&!l)return i||(i=new $),a||Kn(n)?Pn(n,r,e,t,f,i):Ke(n,r,u,e,t,f,i);if(!(e&Ze)){var h=l&&an.call(n,"__wrapped__"),A=o&&an.call(r,"__wrapped__");if(h||A){var y=h?n.value():n,d=A?r.value():r;return i||(i=new $),f(y,d,e,t,i)}}return c?(i||(i=new $),Ye(n,r,e,t,f,i)):!1}function q(n,r,e,t,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Qe(n,r,e,t,q,f)}var Je=1,We=2;function ze(n,r,e,t){var f=e.length,i=f;if(n==null)return!i;for(n=Object(n);f--;){var a=e[f];if(a[2]?a[1]!==n[a[0]]:!(a[0]in n))return!1}for(;++f<i;){a=e[f];var s=a[0],u=n[s],b=a[1];if(a[2]){if(u===void 0&&!(s in n))return!1}else{var l=new $,o;if(!(o===void 0?q(b,u,Je|We,t,l):o))return!1}}return!0}function In(n){return n===n&&!sn(n)}function Ve(n){for(var r=_(n),e=r.length;e--;){var t=r[e],f=n[t];r[e]=[t,f,In(f)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function ke(n){var r=Ve(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ze(e,n,r)}}function nt(n,r){return n!=null&&r in Object(n)}function rt(n,r,e){r=An(r,n);for(var t=-1,f=r.length,i=!1;++t<f;){var a=M(r[t]);if(!(i=n!=null&&e(n,a)))break;n=n[a]}return i||++t!=f?i:(f=n==null?0:n.length,!!f&&jn(f)&&Hn(a,f)&&(T(n)||on(n)))}function et(n,r){return n!=null&&rt(n,r,nt)}var tt=1,it=2;function ft(n,r){return N(n)&&In(r)?vn(M(n),r):function(e){var t=fr(e,n);return t===void 0&&t===r?et(e,n):q(r,t,tt|it)}}function at(n){return function(r){return r==null?void 0:r[n]}}function st(n){return function(r){return yn(r,n)}}function ut(n){return N(n)?at(M(n)):st(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?ft(n[0],n[1]):ke(n):ut(n)}function ot(n,r){return n&&qn(n,r,_)}function gt(n,r){return function(e,t){if(e==null)return e;if(!un(e))return n(e,t);for(var f=e.length,i=-1,a=Object(e);++i<f&&t(a[i],i,a)!==!1;);return e}}var Y=gt(ot);function lt(n){return typeof n=="function"?n:cn}function Ot(n,r){var e=T(n)?pn:Y;return e(n,lt(r))}function ct(n,r){var e=[];return Y(n,function(t,f,i){r(t,f,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:ct;return e(n,Ln(r))}function bt(n,r){return bn(r,function(e){return n[e]})}function $t(n){return n==null?[]:bt(n,_(n))}function St(n){return n===void 0}function dt(n,r,e,t,f){return f(n,function(i,a,s){e=t?(t=!1,i):r(e,i,a,s)}),e}function Et(n,r,e){var t=T(n)?sr:dt,f=arguments.length<3;return t(n,Ln(r),e,f,Y)}var pt=1/0,At=m&&1/H(new m([,-0]))[1]==pt?function(n){return new m(n)}:Yn,yt=200;function Pt(n,r,e){var t=-1,f=Wn,i=n.length,a=!0,s=[],u=s;if(i>=yt){var b=r?null:At(n);if(b)return H(b);a=!1,f=En,u=new E}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,a&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else f(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{ct as A,Se as B,Yn as C,E as S,Pt as a,C as b,wt as c,Ot as d,Ln as e,_t as f,Zn as g,Y as h,St as i,bn as j,_ as k,rt as l,An as m,yn as n,lt as o,ot as p,et as q,Et as r,ir as s,M as t,Wn as u,$t as v,En as w,Jn as x,pr as y,Tn as z};
@@ -1 +1 @@
1
- import{M as ln,N as an,O as Y,P as O,Q,R as un,S as y,T as tn,V as j,W as _,X as rn,Y as o,Z as on,$ as sn,a0 as fn}from"./mermaid.core-DGL6usp4.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,D,S,v,R,V,a){var E=D-l,i=S-h,n=V-v,d=a-R,u=d*E-n*i;if(!(u*u<y))return u=(n*(h-R)-d*(l-v))/u,[l+u*E,h+u*i]}function H(l,h,D,S,v,R,V){var a=l-D,E=h-S,i=(V?R:-R)/j(a*a+E*E),n=i*E,d=-i*a,u=l+n,s=h+d,f=D+n,c=S+d,W=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,A=m*m+g*g,T=v-R,P=u*c-f*s,I=(g<0?-1:1)*j(on(0,T*T*A-P*P)),M=(P*g-m*I)/A,N=(-P*m-g*I)/A,w=(P*g+m*I)/A,p=(-P*m+g*I)/A,x=M-W,e=N-t,r=w-W,X=p-t;return x*x+e*e>r*r+X*X&&(M=w,N=p),{cx:M,cy:N,x01:-n,y01:-d,x11:M*(v/T-1),y11:N*(v/T-1)}}function hn(){var l=cn,h=yn,D=Q(0),S=null,v=gn,R=dn,V=mn,a=null,E=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=R.apply(this,arguments)-un,W=rn(c-f),t=c>f;if(a||(a=n=E()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(W>tn-y)a.moveTo(s*Y(f),s*O(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*Y(c),u*O(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,A=f,T=c,P=W,I=W,M=V.apply(this,arguments)/2,N=M>y&&(S?+S.apply(this,arguments):j(u*u+s*s)),w=_(rn(s-u)/2,+D.apply(this,arguments)),p=w,x=w,e,r;if(N>y){var X=sn(N/u*O(M)),z=sn(N/s*O(M));(P-=X*2)>y?(X*=t?1:-1,A+=X,T-=X):(P=0,A=T=(f+c)/2),(I-=z*2)>y?(z*=t?1:-1,m+=z,g-=z):(I=0,m=g=(f+c)/2)}var Z=s*Y(m),$=s*O(m),B=u*Y(T),C=u*O(T);if(w>y){var F=s*Y(g),G=s*O(g),J=u*Y(A),K=u*O(A),q;if(W<an)if(q=pn(Z,$,J,K,F,G,B,C)){var L=Z-q[0],U=$-q[1],k=F-q[0],b=G-q[1],nn=1/O(fn((L*k+U*b)/(j(L*L+U*U)*j(k*k+b*b)))/2),en=j(q[0]*q[0]+q[1]*q[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}I>y?x>y?(e=H(J,K,Z,$,s,x,t),r=H(F,G,B,C,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(Z,$),a.arc(0,0,s,m,g,!t)):a.moveTo(Z,$),!(u>y)||!(P>y)?a.lineTo(B,C):p>y?(e=H(B,C,F,G,u,-p,t),r=H(Z,$,J,K,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,A,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +R.apply(this,arguments))/2-an/2;return[Y(d)*n,O(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:Q(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:Q(+n),i):h},i.cornerRadius=function(n){return arguments.length?(D=typeof n=="function"?n:Q(+n),i):D},i.padRadius=function(n){return arguments.length?(S=n==null?null:typeof n=="function"?n:Q(+n),i):S},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:Q(+n),i):v},i.endAngle=function(n){return arguments.length?(R=typeof n=="function"?n:Q(+n),i):R},i.padAngle=function(n){return arguments.length?(V=typeof n=="function"?n:Q(+n),i):V},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
1
+ import{M as ln,N as an,O as Y,P as O,Q,R as un,S as y,T as tn,V as j,W as _,X as rn,Y as o,Z as on,$ as sn,a0 as fn}from"./mermaid.core-CGs8klGF.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,D,S,v,R,V,a){var E=D-l,i=S-h,n=V-v,d=a-R,u=d*E-n*i;if(!(u*u<y))return u=(n*(h-R)-d*(l-v))/u,[l+u*E,h+u*i]}function H(l,h,D,S,v,R,V){var a=l-D,E=h-S,i=(V?R:-R)/j(a*a+E*E),n=i*E,d=-i*a,u=l+n,s=h+d,f=D+n,c=S+d,W=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,A=m*m+g*g,T=v-R,P=u*c-f*s,I=(g<0?-1:1)*j(on(0,T*T*A-P*P)),M=(P*g-m*I)/A,N=(-P*m-g*I)/A,w=(P*g+m*I)/A,p=(-P*m+g*I)/A,x=M-W,e=N-t,r=w-W,X=p-t;return x*x+e*e>r*r+X*X&&(M=w,N=p),{cx:M,cy:N,x01:-n,y01:-d,x11:M*(v/T-1),y11:N*(v/T-1)}}function hn(){var l=cn,h=yn,D=Q(0),S=null,v=gn,R=dn,V=mn,a=null,E=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=R.apply(this,arguments)-un,W=rn(c-f),t=c>f;if(a||(a=n=E()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(W>tn-y)a.moveTo(s*Y(f),s*O(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*Y(c),u*O(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,A=f,T=c,P=W,I=W,M=V.apply(this,arguments)/2,N=M>y&&(S?+S.apply(this,arguments):j(u*u+s*s)),w=_(rn(s-u)/2,+D.apply(this,arguments)),p=w,x=w,e,r;if(N>y){var X=sn(N/u*O(M)),z=sn(N/s*O(M));(P-=X*2)>y?(X*=t?1:-1,A+=X,T-=X):(P=0,A=T=(f+c)/2),(I-=z*2)>y?(z*=t?1:-1,m+=z,g-=z):(I=0,m=g=(f+c)/2)}var Z=s*Y(m),$=s*O(m),B=u*Y(T),C=u*O(T);if(w>y){var F=s*Y(g),G=s*O(g),J=u*Y(A),K=u*O(A),q;if(W<an)if(q=pn(Z,$,J,K,F,G,B,C)){var L=Z-q[0],U=$-q[1],k=F-q[0],b=G-q[1],nn=1/O(fn((L*k+U*b)/(j(L*L+U*U)*j(k*k+b*b)))/2),en=j(q[0]*q[0]+q[1]*q[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}I>y?x>y?(e=H(J,K,Z,$,s,x,t),r=H(F,G,B,C,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(Z,$),a.arc(0,0,s,m,g,!t)):a.moveTo(Z,$),!(u>y)||!(P>y)?a.lineTo(B,C):p>y?(e=H(B,C,F,G,u,-p,t),r=H(Z,$,J,K,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,A,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +R.apply(this,arguments))/2-an/2;return[Y(d)*n,O(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:Q(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:Q(+n),i):h},i.cornerRadius=function(n){return arguments.length?(D=typeof n=="function"?n:Q(+n),i):D},i.padRadius=function(n){return arguments.length?(S=n==null?null:typeof n=="function"?n:Q(+n),i):S},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:Q(+n),i):v},i.endAngle=function(n){return arguments.length?(R=typeof n=="function"?n:Q(+n),i):R},i.padAngle=function(n){return arguments.length?(V=typeof n=="function"?n:Q(+n),i):V},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};