@oxide/design-system 1.7.7--canary.fc65d31.0 → 1.7.7--canary.5c25e1b.0

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 (130) hide show
  1. package/components/dist/index.d.ts +2 -5
  2. package/components/dist/index.js +126 -1729
  3. package/components/dist/index.js.map +1 -1
  4. package/package.json +1 -2
  5. package/components/dist/architecture-I3QFYML2-YZWO3N3B.js +0 -14
  6. package/components/dist/architecture-I3QFYML2-YZWO3N3B.js.map +0 -1
  7. package/components/dist/architectureDiagram-UYN6MBPD-HXPGIDN7.js +0 -8846
  8. package/components/dist/architectureDiagram-UYN6MBPD-HXPGIDN7.js.map +0 -1
  9. package/components/dist/blockDiagram-ZHA2E4KO-OAYYKCLF.js +0 -3721
  10. package/components/dist/blockDiagram-ZHA2E4KO-OAYYKCLF.js.map +0 -1
  11. package/components/dist/c4Diagram-6F5ED5ID-TBHFK2XY.js +0 -2599
  12. package/components/dist/c4Diagram-6F5ED5ID-TBHFK2XY.js.map +0 -1
  13. package/components/dist/chunk-2DDKDUUO.js +0 -439
  14. package/components/dist/chunk-2DDKDUUO.js.map +0 -1
  15. package/components/dist/chunk-2NHDMTP7.js +0 -26905
  16. package/components/dist/chunk-2NHDMTP7.js.map +0 -1
  17. package/components/dist/chunk-4IJS44L3.js +0 -22
  18. package/components/dist/chunk-4IJS44L3.js.map +0 -1
  19. package/components/dist/chunk-562WOS3Z.js +0 -1109
  20. package/components/dist/chunk-562WOS3Z.js.map +0 -1
  21. package/components/dist/chunk-6UD2HOKB.js +0 -17082
  22. package/components/dist/chunk-6UD2HOKB.js.map +0 -1
  23. package/components/dist/chunk-76BOQ7BT.js +0 -63
  24. package/components/dist/chunk-76BOQ7BT.js.map +0 -1
  25. package/components/dist/chunk-7I5DT373.js +0 -97
  26. package/components/dist/chunk-7I5DT373.js.map +0 -1
  27. package/components/dist/chunk-BPREMNVP.js +0 -1875
  28. package/components/dist/chunk-BPREMNVP.js.map +0 -1
  29. package/components/dist/chunk-BVYAEHG3.js +0 -122
  30. package/components/dist/chunk-BVYAEHG3.js.map +0 -1
  31. package/components/dist/chunk-BW7DFBOS.js +0 -152
  32. package/components/dist/chunk-BW7DFBOS.js.map +0 -1
  33. package/components/dist/chunk-EZG2MNHW.js +0 -59
  34. package/components/dist/chunk-EZG2MNHW.js.map +0 -1
  35. package/components/dist/chunk-G6QWNAHJ.js +0 -43
  36. package/components/dist/chunk-G6QWNAHJ.js.map +0 -1
  37. package/components/dist/chunk-H72D3HRR.js +0 -1244
  38. package/components/dist/chunk-H72D3HRR.js.map +0 -1
  39. package/components/dist/chunk-K532NZMW.js +0 -46
  40. package/components/dist/chunk-K532NZMW.js.map +0 -1
  41. package/components/dist/chunk-LC3BX2KL.js +0 -25
  42. package/components/dist/chunk-LC3BX2KL.js.map +0 -1
  43. package/components/dist/chunk-LQ2ABR7F.js +0 -5665
  44. package/components/dist/chunk-LQ2ABR7F.js.map +0 -1
  45. package/components/dist/chunk-M6L3MM6K.js +0 -22
  46. package/components/dist/chunk-M6L3MM6K.js.map +0 -1
  47. package/components/dist/chunk-MWA4PRRW.js +0 -122
  48. package/components/dist/chunk-MWA4PRRW.js.map +0 -1
  49. package/components/dist/chunk-ND3FLKHU.js +0 -570
  50. package/components/dist/chunk-ND3FLKHU.js.map +0 -1
  51. package/components/dist/chunk-NIVHLOPB.js +0 -2621
  52. package/components/dist/chunk-NIVHLOPB.js.map +0 -1
  53. package/components/dist/chunk-R6F6FFK7.js +0 -65
  54. package/components/dist/chunk-R6F6FFK7.js.map +0 -1
  55. package/components/dist/chunk-RN5R3L7O.js +0 -2041
  56. package/components/dist/chunk-RN5R3L7O.js.map +0 -1
  57. package/components/dist/chunk-RWDBBMDN.js +0 -10910
  58. package/components/dist/chunk-RWDBBMDN.js.map +0 -1
  59. package/components/dist/chunk-T7HPDS4Z.js +0 -573
  60. package/components/dist/chunk-T7HPDS4Z.js.map +0 -1
  61. package/components/dist/chunk-TG4YEU4Q.js +0 -23
  62. package/components/dist/chunk-TG4YEU4Q.js.map +0 -1
  63. package/components/dist/chunk-U5WCXBW2.js +0 -48
  64. package/components/dist/chunk-U5WCXBW2.js.map +0 -1
  65. package/components/dist/chunk-V6PWN6OH.js +0 -1875
  66. package/components/dist/chunk-V6PWN6OH.js.map +0 -1
  67. package/components/dist/chunk-VLTHNCSD.js +0 -48
  68. package/components/dist/chunk-VLTHNCSD.js.map +0 -1
  69. package/components/dist/chunk-WDK4G4UR.js +0 -2791
  70. package/components/dist/chunk-WDK4G4UR.js.map +0 -1
  71. package/components/dist/chunk-WLVQWTC6.js +0 -77
  72. package/components/dist/chunk-WLVQWTC6.js.map +0 -1
  73. package/components/dist/chunk-YDLS5R4M.js +0 -48
  74. package/components/dist/chunk-YDLS5R4M.js.map +0 -1
  75. package/components/dist/chunk-YGFBWU2Q.js +0 -7
  76. package/components/dist/chunk-YGFBWU2Q.js.map +0 -1
  77. package/components/dist/chunk-ZBL4CWCH.js +0 -2120
  78. package/components/dist/chunk-ZBL4CWCH.js.map +0 -1
  79. package/components/dist/classDiagram-LNE6IOMH-VRQHEQWM.js +0 -40
  80. package/components/dist/classDiagram-LNE6IOMH-VRQHEQWM.js.map +0 -1
  81. package/components/dist/classDiagram-v2-MQ7JQ4JX-5GB4NXXM.js +0 -40
  82. package/components/dist/classDiagram-v2-MQ7JQ4JX-5GB4NXXM.js.map +0 -1
  83. package/components/dist/dagre-4EVJKHTY-XW45LMKR.js +0 -734
  84. package/components/dist/dagre-4EVJKHTY-XW45LMKR.js.map +0 -1
  85. package/components/dist/diagram-QW4FP2JN-J2YMUPB5.js +0 -226
  86. package/components/dist/diagram-QW4FP2JN-J2YMUPB5.js.map +0 -1
  87. package/components/dist/erDiagram-6RL3IURR-HQULDVJI.js +0 -1381
  88. package/components/dist/erDiagram-6RL3IURR-HQULDVJI.js.map +0 -1
  89. package/components/dist/flowDiagram-7ASYPVHJ-2542732I.js +0 -2349
  90. package/components/dist/flowDiagram-7ASYPVHJ-2542732I.js.map +0 -1
  91. package/components/dist/ganttDiagram-NTVNEXSI-V66YQQB3.js +0 -2413
  92. package/components/dist/ganttDiagram-NTVNEXSI-V66YQQB3.js.map +0 -1
  93. package/components/dist/gitGraph-YCYPL57B-AAXPWQN7.js +0 -14
  94. package/components/dist/gitGraph-YCYPL57B-AAXPWQN7.js.map +0 -1
  95. package/components/dist/gitGraphDiagram-NRZ2UAAF-5DU6QMYZ.js +0 -1763
  96. package/components/dist/gitGraphDiagram-NRZ2UAAF-5DU6QMYZ.js.map +0 -1
  97. package/components/dist/info-46DW6VJ7-43TTIEYF.js +0 -14
  98. package/components/dist/info-46DW6VJ7-43TTIEYF.js.map +0 -1
  99. package/components/dist/infoDiagram-A4XQUW5V-UZERSQDI.js +0 -54
  100. package/components/dist/infoDiagram-A4XQUW5V-UZERSQDI.js.map +0 -1
  101. package/components/dist/journeyDiagram-G5WM74LC-RVKMRGRW.js +0 -1244
  102. package/components/dist/journeyDiagram-G5WM74LC-RVKMRGRW.js.map +0 -1
  103. package/components/dist/kanban-definition-QRCXZQQD-NWU5I3TK.js +0 -1119
  104. package/components/dist/kanban-definition-QRCXZQQD-NWU5I3TK.js.map +0 -1
  105. package/components/dist/katex-WNZY3CE5.js +0 -14484
  106. package/components/dist/katex-WNZY3CE5.js.map +0 -1
  107. package/components/dist/mindmap-definition-GWI6TPTV-MISEH6LG.js +0 -6013
  108. package/components/dist/mindmap-definition-GWI6TPTV-MISEH6LG.js.map +0 -1
  109. package/components/dist/packet-W2GHVCYJ-FBZCFIPR.js +0 -14
  110. package/components/dist/packet-W2GHVCYJ-FBZCFIPR.js.map +0 -1
  111. package/components/dist/pie-BEWT4RHE-UFFBBCXM.js +0 -14
  112. package/components/dist/pie-BEWT4RHE-UFFBBCXM.js.map +0 -1
  113. package/components/dist/pieDiagram-YF2LJOPJ-IXEVHPCM.js +0 -223
  114. package/components/dist/pieDiagram-YF2LJOPJ-IXEVHPCM.js.map +0 -1
  115. package/components/dist/quadrantDiagram-OS5C2QUG-MW26UCZV.js +0 -1408
  116. package/components/dist/quadrantDiagram-OS5C2QUG-MW26UCZV.js.map +0 -1
  117. package/components/dist/requirementDiagram-MIRIMTAZ-BX24AAHL.js +0 -1175
  118. package/components/dist/requirementDiagram-MIRIMTAZ-BX24AAHL.js.map +0 -1
  119. package/components/dist/sankeyDiagram-Y46BX6SQ-5RKUGG63.js +0 -1278
  120. package/components/dist/sankeyDiagram-Y46BX6SQ-5RKUGG63.js.map +0 -1
  121. package/components/dist/sequenceDiagram-G6AWOVSC-2T3JBUZ2.js +0 -3529
  122. package/components/dist/sequenceDiagram-G6AWOVSC-2T3JBUZ2.js.map +0 -1
  123. package/components/dist/stateDiagram-MAYHULR4-HZ5EGLPA.js +0 -505
  124. package/components/dist/stateDiagram-MAYHULR4-HZ5EGLPA.js.map +0 -1
  125. package/components/dist/stateDiagram-v2-4JROLMXI-DN2FEZV3.js +0 -40
  126. package/components/dist/stateDiagram-v2-4JROLMXI-DN2FEZV3.js.map +0 -1
  127. package/components/dist/timeline-definition-U7ZMHBDA-GB6AKKW4.js +0 -1260
  128. package/components/dist/timeline-definition-U7ZMHBDA-GB6AKKW4.js.map +0 -1
  129. package/components/dist/xychartDiagram-6QU3TZC5-BFFLEHUP.js +0 -1877
  130. package/components/dist/xychartDiagram-6QU3TZC5-BFFLEHUP.js.map +0 -1
@@ -1,573 +0,0 @@
1
- import {
2
- require_dist
3
- } from "./chunk-7I5DT373.js";
4
- import {
5
- __name,
6
- assignWithDepth_default,
7
- basisClosed_default,
8
- basisOpen_default,
9
- basis_default,
10
- bumpX,
11
- bumpY,
12
- bundle_default,
13
- cardinalClosed_default,
14
- cardinalOpen_default,
15
- cardinal_default,
16
- catmullRomClosed_default,
17
- catmullRomOpen_default,
18
- catmullRom_default,
19
- common_default,
20
- detectType,
21
- directiveRegex,
22
- linearClosed_default,
23
- linear_default,
24
- log,
25
- monotoneX,
26
- monotoneY,
27
- natural_default,
28
- sanitizeDirective,
29
- select_default,
30
- stepAfter,
31
- stepBefore,
32
- step_default
33
- } from "./chunk-RWDBBMDN.js";
34
- import {
35
- memoize_default,
36
- merge_default
37
- } from "./chunk-562WOS3Z.js";
38
- import {
39
- __toESM
40
- } from "./chunk-K532NZMW.js";
41
-
42
- // node_modules/mermaid/dist/chunks/mermaid.core/chunk-7DKRZKHE.mjs
43
- var import_sanitize_url = __toESM(require_dist(), 1);
44
- var ZERO_WIDTH_SPACE = "\u200B";
45
- var d3CurveTypes = {
46
- curveBasis: basis_default,
47
- curveBasisClosed: basisClosed_default,
48
- curveBasisOpen: basisOpen_default,
49
- curveBumpX: bumpX,
50
- curveBumpY: bumpY,
51
- curveBundle: bundle_default,
52
- curveCardinalClosed: cardinalClosed_default,
53
- curveCardinalOpen: cardinalOpen_default,
54
- curveCardinal: cardinal_default,
55
- curveCatmullRomClosed: catmullRomClosed_default,
56
- curveCatmullRomOpen: catmullRomOpen_default,
57
- curveCatmullRom: catmullRom_default,
58
- curveLinear: linear_default,
59
- curveLinearClosed: linearClosed_default,
60
- curveMonotoneX: monotoneX,
61
- curveMonotoneY: monotoneY,
62
- curveNatural: natural_default,
63
- curveStep: step_default,
64
- curveStepAfter: stepAfter,
65
- curveStepBefore: stepBefore
66
- };
67
- var directiveWithoutOpen = /\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi;
68
- var detectInit = /* @__PURE__ */ __name(function(text, config) {
69
- const inits = detectDirective(text, /(?:init\b)|(?:initialize\b)/);
70
- let results = {};
71
- if (Array.isArray(inits)) {
72
- const args = inits.map((init) => init.args);
73
- sanitizeDirective(args);
74
- results = assignWithDepth_default(results, [...args]);
75
- } else {
76
- results = inits.args;
77
- }
78
- if (!results) {
79
- return;
80
- }
81
- let type = detectType(text, config);
82
- const prop = "config";
83
- if (results[prop] !== void 0) {
84
- if (type === "flowchart-v2") {
85
- type = "flowchart";
86
- }
87
- results[type] = results[prop];
88
- delete results[prop];
89
- }
90
- return results;
91
- }, "detectInit");
92
- var detectDirective = /* @__PURE__ */ __name(function(text, type = null) {
93
- try {
94
- const commentWithoutDirectives = new RegExp(
95
- `[%]{2}(?![{]${directiveWithoutOpen.source})(?=[}][%]{2}).*
96
- `,
97
- "ig"
98
- );
99
- text = text.trim().replace(commentWithoutDirectives, "").replace(/'/gm, '"');
100
- log.debug(
101
- `Detecting diagram directive${type !== null ? " type:" + type : ""} based on the text:${text}`
102
- );
103
- let match;
104
- const result = [];
105
- while ((match = directiveRegex.exec(text)) !== null) {
106
- if (match.index === directiveRegex.lastIndex) {
107
- directiveRegex.lastIndex++;
108
- }
109
- if (match && !type || type && match[1]?.match(type) || type && match[2]?.match(type)) {
110
- const type2 = match[1] ? match[1] : match[2];
111
- const args = match[3] ? match[3].trim() : match[4] ? JSON.parse(match[4].trim()) : null;
112
- result.push({ type: type2, args });
113
- }
114
- }
115
- if (result.length === 0) {
116
- return { type: text, args: null };
117
- }
118
- return result.length === 1 ? result[0] : result;
119
- } catch (error) {
120
- log.error(
121
- `ERROR: ${error.message} - Unable to parse directive type: '${type}' based on the text: '${text}'`
122
- );
123
- return { type: void 0, args: null };
124
- }
125
- }, "detectDirective");
126
- var removeDirectives = /* @__PURE__ */ __name(function(text) {
127
- return text.replace(directiveRegex, "");
128
- }, "removeDirectives");
129
- var isSubstringInArray = /* @__PURE__ */ __name(function(str, arr) {
130
- for (const [i, element] of arr.entries()) {
131
- if (element.match(str)) {
132
- return i;
133
- }
134
- }
135
- return -1;
136
- }, "isSubstringInArray");
137
- function interpolateToCurve(interpolate, defaultCurve) {
138
- if (!interpolate) {
139
- return defaultCurve;
140
- }
141
- const curveName = `curve${interpolate.charAt(0).toUpperCase() + interpolate.slice(1)}`;
142
- return d3CurveTypes[curveName] ?? defaultCurve;
143
- }
144
- __name(interpolateToCurve, "interpolateToCurve");
145
- function formatUrl(linkStr, config) {
146
- const url = linkStr.trim();
147
- if (!url) {
148
- return void 0;
149
- }
150
- if (config.securityLevel !== "loose") {
151
- return (0, import_sanitize_url.sanitizeUrl)(url);
152
- }
153
- return url;
154
- }
155
- __name(formatUrl, "formatUrl");
156
- var runFunc = /* @__PURE__ */ __name((functionName, ...params) => {
157
- const arrPaths = functionName.split(".");
158
- const len = arrPaths.length - 1;
159
- const fnName = arrPaths[len];
160
- let obj = window;
161
- for (let i = 0; i < len; i++) {
162
- obj = obj[arrPaths[i]];
163
- if (!obj) {
164
- log.error(`Function name: ${functionName} not found in window`);
165
- return;
166
- }
167
- }
168
- obj[fnName](...params);
169
- }, "runFunc");
170
- function distance(p1, p2) {
171
- if (!p1 || !p2) {
172
- return 0;
173
- }
174
- return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));
175
- }
176
- __name(distance, "distance");
177
- function traverseEdge(points) {
178
- let prevPoint;
179
- let totalDistance = 0;
180
- points.forEach((point) => {
181
- totalDistance += distance(point, prevPoint);
182
- prevPoint = point;
183
- });
184
- const remainingDistance = totalDistance / 2;
185
- return calculatePoint(points, remainingDistance);
186
- }
187
- __name(traverseEdge, "traverseEdge");
188
- function calcLabelPosition(points) {
189
- if (points.length === 1) {
190
- return points[0];
191
- }
192
- return traverseEdge(points);
193
- }
194
- __name(calcLabelPosition, "calcLabelPosition");
195
- var roundNumber = /* @__PURE__ */ __name((num, precision = 2) => {
196
- const factor = Math.pow(10, precision);
197
- return Math.round(num * factor) / factor;
198
- }, "roundNumber");
199
- var calculatePoint = /* @__PURE__ */ __name((points, distanceToTraverse) => {
200
- let prevPoint = void 0;
201
- let remainingDistance = distanceToTraverse;
202
- for (const point of points) {
203
- if (prevPoint) {
204
- const vectorDistance = distance(point, prevPoint);
205
- if (vectorDistance < remainingDistance) {
206
- remainingDistance -= vectorDistance;
207
- } else {
208
- const distanceRatio = remainingDistance / vectorDistance;
209
- if (distanceRatio <= 0) {
210
- return prevPoint;
211
- }
212
- if (distanceRatio >= 1) {
213
- return { x: point.x, y: point.y };
214
- }
215
- if (distanceRatio > 0 && distanceRatio < 1) {
216
- return {
217
- x: roundNumber((1 - distanceRatio) * prevPoint.x + distanceRatio * point.x, 5),
218
- y: roundNumber((1 - distanceRatio) * prevPoint.y + distanceRatio * point.y, 5)
219
- };
220
- }
221
- }
222
- }
223
- prevPoint = point;
224
- }
225
- throw new Error("Could not find a suitable point for the given distance");
226
- }, "calculatePoint");
227
- var calcCardinalityPosition = /* @__PURE__ */ __name((isRelationTypePresent, points, initialPosition) => {
228
- log.info(`our points ${JSON.stringify(points)}`);
229
- if (points[0] !== initialPosition) {
230
- points = points.reverse();
231
- }
232
- const distanceToCardinalityPoint = 25;
233
- const center = calculatePoint(points, distanceToCardinalityPoint);
234
- const d = isRelationTypePresent ? 10 : 5;
235
- const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);
236
- const cardinalityPosition = { x: 0, y: 0 };
237
- cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;
238
- cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;
239
- return cardinalityPosition;
240
- }, "calcCardinalityPosition");
241
- function calcTerminalLabelPosition(terminalMarkerSize, position, _points) {
242
- const points = structuredClone(_points);
243
- log.info("our points", points);
244
- if (position !== "start_left" && position !== "start_right") {
245
- points.reverse();
246
- }
247
- const distanceToCardinalityPoint = 25 + terminalMarkerSize;
248
- const center = calculatePoint(points, distanceToCardinalityPoint);
249
- const d = 10 + terminalMarkerSize * 0.5;
250
- const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);
251
- const cardinalityPosition = { x: 0, y: 0 };
252
- if (position === "start_left") {
253
- cardinalityPosition.x = Math.sin(angle + Math.PI) * d + (points[0].x + center.x) / 2;
254
- cardinalityPosition.y = -Math.cos(angle + Math.PI) * d + (points[0].y + center.y) / 2;
255
- } else if (position === "end_right") {
256
- cardinalityPosition.x = Math.sin(angle - Math.PI) * d + (points[0].x + center.x) / 2 - 5;
257
- cardinalityPosition.y = -Math.cos(angle - Math.PI) * d + (points[0].y + center.y) / 2 - 5;
258
- } else if (position === "end_left") {
259
- cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2 - 5;
260
- cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2 - 5;
261
- } else {
262
- cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;
263
- cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;
264
- }
265
- return cardinalityPosition;
266
- }
267
- __name(calcTerminalLabelPosition, "calcTerminalLabelPosition");
268
- function getStylesFromArray(arr) {
269
- let style = "";
270
- let labelStyle = "";
271
- for (const element of arr) {
272
- if (element !== void 0) {
273
- if (element.startsWith("color:") || element.startsWith("text-align:")) {
274
- labelStyle = labelStyle + element + ";";
275
- } else {
276
- style = style + element + ";";
277
- }
278
- }
279
- }
280
- return { style, labelStyle };
281
- }
282
- __name(getStylesFromArray, "getStylesFromArray");
283
- var cnt = 0;
284
- var generateId = /* @__PURE__ */ __name(() => {
285
- cnt++;
286
- return "id-" + Math.random().toString(36).substr(2, 12) + "-" + cnt;
287
- }, "generateId");
288
- function makeRandomHex(length) {
289
- let result = "";
290
- const characters = "0123456789abcdef";
291
- const charactersLength = characters.length;
292
- for (let i = 0; i < length; i++) {
293
- result += characters.charAt(Math.floor(Math.random() * charactersLength));
294
- }
295
- return result;
296
- }
297
- __name(makeRandomHex, "makeRandomHex");
298
- var random = /* @__PURE__ */ __name((options) => {
299
- return makeRandomHex(options.length);
300
- }, "random");
301
- var getTextObj = /* @__PURE__ */ __name(function() {
302
- return {
303
- x: 0,
304
- y: 0,
305
- fill: void 0,
306
- anchor: "start",
307
- style: "#666",
308
- width: 100,
309
- height: 100,
310
- textMargin: 0,
311
- rx: 0,
312
- ry: 0,
313
- valign: void 0,
314
- text: ""
315
- };
316
- }, "getTextObj");
317
- var drawSimpleText = /* @__PURE__ */ __name(function(elem, textData) {
318
- const nText = textData.text.replace(common_default.lineBreakRegex, " ");
319
- const [, _fontSizePx] = parseFontSize(textData.fontSize);
320
- const textElem = elem.append("text");
321
- textElem.attr("x", textData.x);
322
- textElem.attr("y", textData.y);
323
- textElem.style("text-anchor", textData.anchor);
324
- textElem.style("font-family", textData.fontFamily);
325
- textElem.style("font-size", _fontSizePx);
326
- textElem.style("font-weight", textData.fontWeight);
327
- textElem.attr("fill", textData.fill);
328
- if (textData.class !== void 0) {
329
- textElem.attr("class", textData.class);
330
- }
331
- const span = textElem.append("tspan");
332
- span.attr("x", textData.x + textData.textMargin * 2);
333
- span.attr("fill", textData.fill);
334
- span.text(nText);
335
- return textElem;
336
- }, "drawSimpleText");
337
- var wrapLabel = memoize_default(
338
- (label, maxWidth, config) => {
339
- if (!label) {
340
- return label;
341
- }
342
- config = Object.assign(
343
- { fontSize: 12, fontWeight: 400, fontFamily: "Arial", joinWith: "<br/>" },
344
- config
345
- );
346
- if (common_default.lineBreakRegex.test(label)) {
347
- return label;
348
- }
349
- const words = label.split(" ").filter(Boolean);
350
- const completedLines = [];
351
- let nextLine = "";
352
- words.forEach((word, index) => {
353
- const wordLength = calculateTextWidth(`${word} `, config);
354
- const nextLineLength = calculateTextWidth(nextLine, config);
355
- if (wordLength > maxWidth) {
356
- const { hyphenatedStrings, remainingWord } = breakString(word, maxWidth, "-", config);
357
- completedLines.push(nextLine, ...hyphenatedStrings);
358
- nextLine = remainingWord;
359
- } else if (nextLineLength + wordLength >= maxWidth) {
360
- completedLines.push(nextLine);
361
- nextLine = word;
362
- } else {
363
- nextLine = [nextLine, word].filter(Boolean).join(" ");
364
- }
365
- const currentWord = index + 1;
366
- const isLastWord = currentWord === words.length;
367
- if (isLastWord) {
368
- completedLines.push(nextLine);
369
- }
370
- });
371
- return completedLines.filter((line) => line !== "").join(config.joinWith);
372
- },
373
- (label, maxWidth, config) => `${label}${maxWidth}${config.fontSize}${config.fontWeight}${config.fontFamily}${config.joinWith}`
374
- );
375
- var breakString = memoize_default(
376
- (word, maxWidth, hyphenCharacter = "-", config) => {
377
- config = Object.assign(
378
- { fontSize: 12, fontWeight: 400, fontFamily: "Arial", margin: 0 },
379
- config
380
- );
381
- const characters = [...word];
382
- const lines = [];
383
- let currentLine = "";
384
- characters.forEach((character, index) => {
385
- const nextLine = `${currentLine}${character}`;
386
- const lineWidth = calculateTextWidth(nextLine, config);
387
- if (lineWidth >= maxWidth) {
388
- const currentCharacter = index + 1;
389
- const isLastLine = characters.length === currentCharacter;
390
- const hyphenatedNextLine = `${nextLine}${hyphenCharacter}`;
391
- lines.push(isLastLine ? nextLine : hyphenatedNextLine);
392
- currentLine = "";
393
- } else {
394
- currentLine = nextLine;
395
- }
396
- });
397
- return { hyphenatedStrings: lines, remainingWord: currentLine };
398
- },
399
- (word, maxWidth, hyphenCharacter = "-", config) => `${word}${maxWidth}${hyphenCharacter}${config.fontSize}${config.fontWeight}${config.fontFamily}`
400
- );
401
- function calculateTextHeight(text, config) {
402
- return calculateTextDimensions(text, config).height;
403
- }
404
- __name(calculateTextHeight, "calculateTextHeight");
405
- function calculateTextWidth(text, config) {
406
- return calculateTextDimensions(text, config).width;
407
- }
408
- __name(calculateTextWidth, "calculateTextWidth");
409
- var calculateTextDimensions = memoize_default(
410
- (text, config) => {
411
- const { fontSize = 12, fontFamily = "Arial", fontWeight = 400 } = config;
412
- if (!text) {
413
- return { width: 0, height: 0 };
414
- }
415
- const [, _fontSizePx] = parseFontSize(fontSize);
416
- const fontFamilies = ["sans-serif", fontFamily];
417
- const lines = text.split(common_default.lineBreakRegex);
418
- const dims = [];
419
- const body = select_default("body");
420
- if (!body.remove) {
421
- return { width: 0, height: 0, lineHeight: 0 };
422
- }
423
- const g = body.append("svg");
424
- for (const fontFamily2 of fontFamilies) {
425
- let cHeight = 0;
426
- const dim = { width: 0, height: 0, lineHeight: 0 };
427
- for (const line of lines) {
428
- const textObj = getTextObj();
429
- textObj.text = line || ZERO_WIDTH_SPACE;
430
- const textElem = drawSimpleText(g, textObj).style("font-size", _fontSizePx).style("font-weight", fontWeight).style("font-family", fontFamily2);
431
- const bBox = (textElem._groups || textElem)[0][0].getBBox();
432
- if (bBox.width === 0 && bBox.height === 0) {
433
- throw new Error("svg element not in render tree");
434
- }
435
- dim.width = Math.round(Math.max(dim.width, bBox.width));
436
- cHeight = Math.round(bBox.height);
437
- dim.height += cHeight;
438
- dim.lineHeight = Math.round(Math.max(dim.lineHeight, cHeight));
439
- }
440
- dims.push(dim);
441
- }
442
- g.remove();
443
- const index = isNaN(dims[1].height) || isNaN(dims[1].width) || isNaN(dims[1].lineHeight) || dims[0].height > dims[1].height && dims[0].width > dims[1].width && dims[0].lineHeight > dims[1].lineHeight ? 0 : 1;
444
- return dims[index];
445
- },
446
- (text, config) => `${text}${config.fontSize}${config.fontWeight}${config.fontFamily}`
447
- );
448
- var InitIDGenerator = class {
449
- constructor(deterministic = false, seed) {
450
- this.count = 0;
451
- this.count = seed ? seed.length : 0;
452
- this.next = deterministic ? () => this.count++ : () => Date.now();
453
- }
454
- static {
455
- __name(this, "InitIDGenerator");
456
- }
457
- };
458
- var decoder;
459
- var entityDecode = /* @__PURE__ */ __name(function(html) {
460
- decoder = decoder || document.createElement("div");
461
- html = escape(html).replace(/%26/g, "&").replace(/%23/g, "#").replace(/%3B/g, ";");
462
- decoder.innerHTML = html;
463
- return unescape(decoder.textContent);
464
- }, "entityDecode");
465
- function isDetailedError(error) {
466
- return "str" in error;
467
- }
468
- __name(isDetailedError, "isDetailedError");
469
- var insertTitle = /* @__PURE__ */ __name((parent, cssClass, titleTopMargin, title) => {
470
- if (!title) {
471
- return;
472
- }
473
- const bounds = parent.node()?.getBBox();
474
- if (!bounds) {
475
- return;
476
- }
477
- parent.append("text").text(title).attr("text-anchor", "middle").attr("x", bounds.x + bounds.width / 2).attr("y", -titleTopMargin).attr("class", cssClass);
478
- }, "insertTitle");
479
- var parseFontSize = /* @__PURE__ */ __name((fontSize) => {
480
- if (typeof fontSize === "number") {
481
- return [fontSize, fontSize + "px"];
482
- }
483
- const fontSizeNumber = parseInt(fontSize ?? "", 10);
484
- if (Number.isNaN(fontSizeNumber)) {
485
- return [void 0, void 0];
486
- } else if (fontSize === String(fontSizeNumber)) {
487
- return [fontSizeNumber, fontSize + "px"];
488
- } else {
489
- return [fontSizeNumber, fontSize];
490
- }
491
- }, "parseFontSize");
492
- function cleanAndMerge(defaultData, data) {
493
- return merge_default({}, defaultData, data);
494
- }
495
- __name(cleanAndMerge, "cleanAndMerge");
496
- var utils_default = {
497
- assignWithDepth: assignWithDepth_default,
498
- wrapLabel,
499
- calculateTextHeight,
500
- calculateTextWidth,
501
- calculateTextDimensions,
502
- cleanAndMerge,
503
- detectInit,
504
- detectDirective,
505
- isSubstringInArray,
506
- interpolateToCurve,
507
- calcLabelPosition,
508
- calcCardinalityPosition,
509
- calcTerminalLabelPosition,
510
- formatUrl,
511
- getStylesFromArray,
512
- generateId,
513
- random,
514
- runFunc,
515
- entityDecode,
516
- insertTitle,
517
- parseFontSize,
518
- InitIDGenerator
519
- };
520
- var encodeEntities = /* @__PURE__ */ __name(function(text) {
521
- let txt = text;
522
- txt = txt.replace(/style.*:\S*#.*;/g, function(s) {
523
- return s.substring(0, s.length - 1);
524
- });
525
- txt = txt.replace(/classDef.*:\S*#.*;/g, function(s) {
526
- return s.substring(0, s.length - 1);
527
- });
528
- txt = txt.replace(/#\w+;/g, function(s) {
529
- const innerTxt = s.substring(1, s.length - 1);
530
- const isInt = /^\+?\d+$/.test(innerTxt);
531
- if (isInt) {
532
- return "\uFB02\xB0\xB0" + innerTxt + "\xB6\xDF";
533
- } else {
534
- return "\uFB02\xB0" + innerTxt + "\xB6\xDF";
535
- }
536
- });
537
- return txt;
538
- }, "encodeEntities");
539
- var decodeEntities = /* @__PURE__ */ __name(function(text) {
540
- return text.replace(/fl°°/g, "&#").replace(/fl°/g, "&").replace(/¶ß/g, ";");
541
- }, "decodeEntities");
542
- var getEdgeId = /* @__PURE__ */ __name((from, to, {
543
- counter = 0,
544
- prefix,
545
- suffix
546
- }) => {
547
- return `${prefix ? `${prefix}_` : ""}${from}_${to}_${counter}${suffix ? `_${suffix}` : ""}`;
548
- }, "getEdgeId");
549
- function handleUndefinedAttr(attrValue) {
550
- return attrValue ?? null;
551
- }
552
- __name(handleUndefinedAttr, "handleUndefinedAttr");
553
-
554
- export {
555
- ZERO_WIDTH_SPACE,
556
- removeDirectives,
557
- interpolateToCurve,
558
- getStylesFromArray,
559
- generateId,
560
- random,
561
- wrapLabel,
562
- calculateTextHeight,
563
- calculateTextWidth,
564
- isDetailedError,
565
- parseFontSize,
566
- cleanAndMerge,
567
- utils_default,
568
- encodeEntities,
569
- decodeEntities,
570
- getEdgeId,
571
- handleUndefinedAttr
572
- };
573
- //# sourceMappingURL=chunk-T7HPDS4Z.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../node_modules/mermaid/dist/chunks/mermaid.core/chunk-7DKRZKHE.mjs"],"sourcesContent":["import {\n __name,\n assignWithDepth_default,\n common_default,\n detectType,\n directiveRegex,\n log,\n sanitizeDirective\n} from \"./chunk-6DBFFHIP.mjs\";\n\n// src/utils.ts\nimport { sanitizeUrl } from \"@braintree/sanitize-url\";\nimport {\n curveBasis,\n curveBasisClosed,\n curveBasisOpen,\n curveBumpX,\n curveBumpY,\n curveBundle,\n curveCardinalClosed,\n curveCardinalOpen,\n curveCardinal,\n curveCatmullRomClosed,\n curveCatmullRomOpen,\n curveCatmullRom,\n curveLinear,\n curveLinearClosed,\n curveMonotoneX,\n curveMonotoneY,\n curveNatural,\n curveStep,\n curveStepAfter,\n curveStepBefore,\n select\n} from \"d3\";\nimport memoize from \"lodash-es/memoize.js\";\nimport merge from \"lodash-es/merge.js\";\nvar ZERO_WIDTH_SPACE = \"\\u200B\";\nvar d3CurveTypes = {\n curveBasis,\n curveBasisClosed,\n curveBasisOpen,\n curveBumpX,\n curveBumpY,\n curveBundle,\n curveCardinalClosed,\n curveCardinalOpen,\n curveCardinal,\n curveCatmullRomClosed,\n curveCatmullRomOpen,\n curveCatmullRom,\n curveLinear,\n curveLinearClosed,\n curveMonotoneX,\n curveMonotoneY,\n curveNatural,\n curveStep,\n curveStepAfter,\n curveStepBefore\n};\nvar directiveWithoutOpen = /\\s*(?:(\\w+)(?=:):|(\\w+))\\s*(?:(\\w+)|((?:(?!}%{2}).|\\r?\\n)*))?\\s*(?:}%{2})?/gi;\nvar detectInit = /* @__PURE__ */ __name(function(text, config) {\n const inits = detectDirective(text, /(?:init\\b)|(?:initialize\\b)/);\n let results = {};\n if (Array.isArray(inits)) {\n const args = inits.map((init) => init.args);\n sanitizeDirective(args);\n results = assignWithDepth_default(results, [...args]);\n } else {\n results = inits.args;\n }\n if (!results) {\n return;\n }\n let type = detectType(text, config);\n const prop = \"config\";\n if (results[prop] !== void 0) {\n if (type === \"flowchart-v2\") {\n type = \"flowchart\";\n }\n results[type] = results[prop];\n delete results[prop];\n }\n return results;\n}, \"detectInit\");\nvar detectDirective = /* @__PURE__ */ __name(function(text, type = null) {\n try {\n const commentWithoutDirectives = new RegExp(\n `[%]{2}(?![{]${directiveWithoutOpen.source})(?=[}][%]{2}).*\n`,\n \"ig\"\n );\n text = text.trim().replace(commentWithoutDirectives, \"\").replace(/'/gm, '\"');\n log.debug(\n `Detecting diagram directive${type !== null ? \" type:\" + type : \"\"} based on the text:${text}`\n );\n let match;\n const result = [];\n while ((match = directiveRegex.exec(text)) !== null) {\n if (match.index === directiveRegex.lastIndex) {\n directiveRegex.lastIndex++;\n }\n if (match && !type || type && match[1]?.match(type) || type && match[2]?.match(type)) {\n const type2 = match[1] ? match[1] : match[2];\n const args = match[3] ? match[3].trim() : match[4] ? JSON.parse(match[4].trim()) : null;\n result.push({ type: type2, args });\n }\n }\n if (result.length === 0) {\n return { type: text, args: null };\n }\n return result.length === 1 ? result[0] : result;\n } catch (error) {\n log.error(\n `ERROR: ${error.message} - Unable to parse directive type: '${type}' based on the text: '${text}'`\n );\n return { type: void 0, args: null };\n }\n}, \"detectDirective\");\nvar removeDirectives = /* @__PURE__ */ __name(function(text) {\n return text.replace(directiveRegex, \"\");\n}, \"removeDirectives\");\nvar isSubstringInArray = /* @__PURE__ */ __name(function(str, arr) {\n for (const [i, element] of arr.entries()) {\n if (element.match(str)) {\n return i;\n }\n }\n return -1;\n}, \"isSubstringInArray\");\nfunction interpolateToCurve(interpolate, defaultCurve) {\n if (!interpolate) {\n return defaultCurve;\n }\n const curveName = `curve${interpolate.charAt(0).toUpperCase() + interpolate.slice(1)}`;\n return d3CurveTypes[curveName] ?? defaultCurve;\n}\n__name(interpolateToCurve, \"interpolateToCurve\");\nfunction formatUrl(linkStr, config) {\n const url = linkStr.trim();\n if (!url) {\n return void 0;\n }\n if (config.securityLevel !== \"loose\") {\n return sanitizeUrl(url);\n }\n return url;\n}\n__name(formatUrl, \"formatUrl\");\nvar runFunc = /* @__PURE__ */ __name((functionName, ...params) => {\n const arrPaths = functionName.split(\".\");\n const len = arrPaths.length - 1;\n const fnName = arrPaths[len];\n let obj = window;\n for (let i = 0; i < len; i++) {\n obj = obj[arrPaths[i]];\n if (!obj) {\n log.error(`Function name: ${functionName} not found in window`);\n return;\n }\n }\n obj[fnName](...params);\n}, \"runFunc\");\nfunction distance(p1, p2) {\n if (!p1 || !p2) {\n return 0;\n }\n return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));\n}\n__name(distance, \"distance\");\nfunction traverseEdge(points) {\n let prevPoint;\n let totalDistance = 0;\n points.forEach((point) => {\n totalDistance += distance(point, prevPoint);\n prevPoint = point;\n });\n const remainingDistance = totalDistance / 2;\n return calculatePoint(points, remainingDistance);\n}\n__name(traverseEdge, \"traverseEdge\");\nfunction calcLabelPosition(points) {\n if (points.length === 1) {\n return points[0];\n }\n return traverseEdge(points);\n}\n__name(calcLabelPosition, \"calcLabelPosition\");\nvar roundNumber = /* @__PURE__ */ __name((num, precision = 2) => {\n const factor = Math.pow(10, precision);\n return Math.round(num * factor) / factor;\n}, \"roundNumber\");\nvar calculatePoint = /* @__PURE__ */ __name((points, distanceToTraverse) => {\n let prevPoint = void 0;\n let remainingDistance = distanceToTraverse;\n for (const point of points) {\n if (prevPoint) {\n const vectorDistance = distance(point, prevPoint);\n if (vectorDistance < remainingDistance) {\n remainingDistance -= vectorDistance;\n } else {\n const distanceRatio = remainingDistance / vectorDistance;\n if (distanceRatio <= 0) {\n return prevPoint;\n }\n if (distanceRatio >= 1) {\n return { x: point.x, y: point.y };\n }\n if (distanceRatio > 0 && distanceRatio < 1) {\n return {\n x: roundNumber((1 - distanceRatio) * prevPoint.x + distanceRatio * point.x, 5),\n y: roundNumber((1 - distanceRatio) * prevPoint.y + distanceRatio * point.y, 5)\n };\n }\n }\n }\n prevPoint = point;\n }\n throw new Error(\"Could not find a suitable point for the given distance\");\n}, \"calculatePoint\");\nvar calcCardinalityPosition = /* @__PURE__ */ __name((isRelationTypePresent, points, initialPosition) => {\n log.info(`our points ${JSON.stringify(points)}`);\n if (points[0] !== initialPosition) {\n points = points.reverse();\n }\n const distanceToCardinalityPoint = 25;\n const center = calculatePoint(points, distanceToCardinalityPoint);\n const d = isRelationTypePresent ? 10 : 5;\n const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);\n const cardinalityPosition = { x: 0, y: 0 };\n cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;\n cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;\n return cardinalityPosition;\n}, \"calcCardinalityPosition\");\nfunction calcTerminalLabelPosition(terminalMarkerSize, position, _points) {\n const points = structuredClone(_points);\n log.info(\"our points\", points);\n if (position !== \"start_left\" && position !== \"start_right\") {\n points.reverse();\n }\n const distanceToCardinalityPoint = 25 + terminalMarkerSize;\n const center = calculatePoint(points, distanceToCardinalityPoint);\n const d = 10 + terminalMarkerSize * 0.5;\n const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);\n const cardinalityPosition = { x: 0, y: 0 };\n if (position === \"start_left\") {\n cardinalityPosition.x = Math.sin(angle + Math.PI) * d + (points[0].x + center.x) / 2;\n cardinalityPosition.y = -Math.cos(angle + Math.PI) * d + (points[0].y + center.y) / 2;\n } else if (position === \"end_right\") {\n cardinalityPosition.x = Math.sin(angle - Math.PI) * d + (points[0].x + center.x) / 2 - 5;\n cardinalityPosition.y = -Math.cos(angle - Math.PI) * d + (points[0].y + center.y) / 2 - 5;\n } else if (position === \"end_left\") {\n cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2 - 5;\n cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2 - 5;\n } else {\n cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;\n cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;\n }\n return cardinalityPosition;\n}\n__name(calcTerminalLabelPosition, \"calcTerminalLabelPosition\");\nfunction getStylesFromArray(arr) {\n let style = \"\";\n let labelStyle = \"\";\n for (const element of arr) {\n if (element !== void 0) {\n if (element.startsWith(\"color:\") || element.startsWith(\"text-align:\")) {\n labelStyle = labelStyle + element + \";\";\n } else {\n style = style + element + \";\";\n }\n }\n }\n return { style, labelStyle };\n}\n__name(getStylesFromArray, \"getStylesFromArray\");\nvar cnt = 0;\nvar generateId = /* @__PURE__ */ __name(() => {\n cnt++;\n return \"id-\" + Math.random().toString(36).substr(2, 12) + \"-\" + cnt;\n}, \"generateId\");\nfunction makeRandomHex(length) {\n let result = \"\";\n const characters = \"0123456789abcdef\";\n const charactersLength = characters.length;\n for (let i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\n__name(makeRandomHex, \"makeRandomHex\");\nvar random = /* @__PURE__ */ __name((options) => {\n return makeRandomHex(options.length);\n}, \"random\");\nvar getTextObj = /* @__PURE__ */ __name(function() {\n return {\n x: 0,\n y: 0,\n fill: void 0,\n anchor: \"start\",\n style: \"#666\",\n width: 100,\n height: 100,\n textMargin: 0,\n rx: 0,\n ry: 0,\n valign: void 0,\n text: \"\"\n };\n}, \"getTextObj\");\nvar drawSimpleText = /* @__PURE__ */ __name(function(elem, textData) {\n const nText = textData.text.replace(common_default.lineBreakRegex, \" \");\n const [, _fontSizePx] = parseFontSize(textData.fontSize);\n const textElem = elem.append(\"text\");\n textElem.attr(\"x\", textData.x);\n textElem.attr(\"y\", textData.y);\n textElem.style(\"text-anchor\", textData.anchor);\n textElem.style(\"font-family\", textData.fontFamily);\n textElem.style(\"font-size\", _fontSizePx);\n textElem.style(\"font-weight\", textData.fontWeight);\n textElem.attr(\"fill\", textData.fill);\n if (textData.class !== void 0) {\n textElem.attr(\"class\", textData.class);\n }\n const span = textElem.append(\"tspan\");\n span.attr(\"x\", textData.x + textData.textMargin * 2);\n span.attr(\"fill\", textData.fill);\n span.text(nText);\n return textElem;\n}, \"drawSimpleText\");\nvar wrapLabel = memoize(\n (label, maxWidth, config) => {\n if (!label) {\n return label;\n }\n config = Object.assign(\n { fontSize: 12, fontWeight: 400, fontFamily: \"Arial\", joinWith: \"<br/>\" },\n config\n );\n if (common_default.lineBreakRegex.test(label)) {\n return label;\n }\n const words = label.split(\" \").filter(Boolean);\n const completedLines = [];\n let nextLine = \"\";\n words.forEach((word, index) => {\n const wordLength = calculateTextWidth(`${word} `, config);\n const nextLineLength = calculateTextWidth(nextLine, config);\n if (wordLength > maxWidth) {\n const { hyphenatedStrings, remainingWord } = breakString(word, maxWidth, \"-\", config);\n completedLines.push(nextLine, ...hyphenatedStrings);\n nextLine = remainingWord;\n } else if (nextLineLength + wordLength >= maxWidth) {\n completedLines.push(nextLine);\n nextLine = word;\n } else {\n nextLine = [nextLine, word].filter(Boolean).join(\" \");\n }\n const currentWord = index + 1;\n const isLastWord = currentWord === words.length;\n if (isLastWord) {\n completedLines.push(nextLine);\n }\n });\n return completedLines.filter((line) => line !== \"\").join(config.joinWith);\n },\n (label, maxWidth, config) => `${label}${maxWidth}${config.fontSize}${config.fontWeight}${config.fontFamily}${config.joinWith}`\n);\nvar breakString = memoize(\n (word, maxWidth, hyphenCharacter = \"-\", config) => {\n config = Object.assign(\n { fontSize: 12, fontWeight: 400, fontFamily: \"Arial\", margin: 0 },\n config\n );\n const characters = [...word];\n const lines = [];\n let currentLine = \"\";\n characters.forEach((character, index) => {\n const nextLine = `${currentLine}${character}`;\n const lineWidth = calculateTextWidth(nextLine, config);\n if (lineWidth >= maxWidth) {\n const currentCharacter = index + 1;\n const isLastLine = characters.length === currentCharacter;\n const hyphenatedNextLine = `${nextLine}${hyphenCharacter}`;\n lines.push(isLastLine ? nextLine : hyphenatedNextLine);\n currentLine = \"\";\n } else {\n currentLine = nextLine;\n }\n });\n return { hyphenatedStrings: lines, remainingWord: currentLine };\n },\n (word, maxWidth, hyphenCharacter = \"-\", config) => `${word}${maxWidth}${hyphenCharacter}${config.fontSize}${config.fontWeight}${config.fontFamily}`\n);\nfunction calculateTextHeight(text, config) {\n return calculateTextDimensions(text, config).height;\n}\n__name(calculateTextHeight, \"calculateTextHeight\");\nfunction calculateTextWidth(text, config) {\n return calculateTextDimensions(text, config).width;\n}\n__name(calculateTextWidth, \"calculateTextWidth\");\nvar calculateTextDimensions = memoize(\n (text, config) => {\n const { fontSize = 12, fontFamily = \"Arial\", fontWeight = 400 } = config;\n if (!text) {\n return { width: 0, height: 0 };\n }\n const [, _fontSizePx] = parseFontSize(fontSize);\n const fontFamilies = [\"sans-serif\", fontFamily];\n const lines = text.split(common_default.lineBreakRegex);\n const dims = [];\n const body = select(\"body\");\n if (!body.remove) {\n return { width: 0, height: 0, lineHeight: 0 };\n }\n const g = body.append(\"svg\");\n for (const fontFamily2 of fontFamilies) {\n let cHeight = 0;\n const dim = { width: 0, height: 0, lineHeight: 0 };\n for (const line of lines) {\n const textObj = getTextObj();\n textObj.text = line || ZERO_WIDTH_SPACE;\n const textElem = drawSimpleText(g, textObj).style(\"font-size\", _fontSizePx).style(\"font-weight\", fontWeight).style(\"font-family\", fontFamily2);\n const bBox = (textElem._groups || textElem)[0][0].getBBox();\n if (bBox.width === 0 && bBox.height === 0) {\n throw new Error(\"svg element not in render tree\");\n }\n dim.width = Math.round(Math.max(dim.width, bBox.width));\n cHeight = Math.round(bBox.height);\n dim.height += cHeight;\n dim.lineHeight = Math.round(Math.max(dim.lineHeight, cHeight));\n }\n dims.push(dim);\n }\n g.remove();\n const index = isNaN(dims[1].height) || isNaN(dims[1].width) || isNaN(dims[1].lineHeight) || dims[0].height > dims[1].height && dims[0].width > dims[1].width && dims[0].lineHeight > dims[1].lineHeight ? 0 : 1;\n return dims[index];\n },\n (text, config) => `${text}${config.fontSize}${config.fontWeight}${config.fontFamily}`\n);\nvar InitIDGenerator = class {\n constructor(deterministic = false, seed) {\n this.count = 0;\n this.count = seed ? seed.length : 0;\n this.next = deterministic ? () => this.count++ : () => Date.now();\n }\n static {\n __name(this, \"InitIDGenerator\");\n }\n};\nvar decoder;\nvar entityDecode = /* @__PURE__ */ __name(function(html) {\n decoder = decoder || document.createElement(\"div\");\n html = escape(html).replace(/%26/g, \"&\").replace(/%23/g, \"#\").replace(/%3B/g, \";\");\n decoder.innerHTML = html;\n return unescape(decoder.textContent);\n}, \"entityDecode\");\nfunction isDetailedError(error) {\n return \"str\" in error;\n}\n__name(isDetailedError, \"isDetailedError\");\nvar insertTitle = /* @__PURE__ */ __name((parent, cssClass, titleTopMargin, title) => {\n if (!title) {\n return;\n }\n const bounds = parent.node()?.getBBox();\n if (!bounds) {\n return;\n }\n parent.append(\"text\").text(title).attr(\"text-anchor\", \"middle\").attr(\"x\", bounds.x + bounds.width / 2).attr(\"y\", -titleTopMargin).attr(\"class\", cssClass);\n}, \"insertTitle\");\nvar parseFontSize = /* @__PURE__ */ __name((fontSize) => {\n if (typeof fontSize === \"number\") {\n return [fontSize, fontSize + \"px\"];\n }\n const fontSizeNumber = parseInt(fontSize ?? \"\", 10);\n if (Number.isNaN(fontSizeNumber)) {\n return [void 0, void 0];\n } else if (fontSize === String(fontSizeNumber)) {\n return [fontSizeNumber, fontSize + \"px\"];\n } else {\n return [fontSizeNumber, fontSize];\n }\n}, \"parseFontSize\");\nfunction cleanAndMerge(defaultData, data) {\n return merge({}, defaultData, data);\n}\n__name(cleanAndMerge, \"cleanAndMerge\");\nvar utils_default = {\n assignWithDepth: assignWithDepth_default,\n wrapLabel,\n calculateTextHeight,\n calculateTextWidth,\n calculateTextDimensions,\n cleanAndMerge,\n detectInit,\n detectDirective,\n isSubstringInArray,\n interpolateToCurve,\n calcLabelPosition,\n calcCardinalityPosition,\n calcTerminalLabelPosition,\n formatUrl,\n getStylesFromArray,\n generateId,\n random,\n runFunc,\n entityDecode,\n insertTitle,\n parseFontSize,\n InitIDGenerator\n};\nvar encodeEntities = /* @__PURE__ */ __name(function(text) {\n let txt = text;\n txt = txt.replace(/style.*:\\S*#.*;/g, function(s) {\n return s.substring(0, s.length - 1);\n });\n txt = txt.replace(/classDef.*:\\S*#.*;/g, function(s) {\n return s.substring(0, s.length - 1);\n });\n txt = txt.replace(/#\\w+;/g, function(s) {\n const innerTxt = s.substring(1, s.length - 1);\n const isInt = /^\\+?\\d+$/.test(innerTxt);\n if (isInt) {\n return \"\\uFB02\\xB0\\xB0\" + innerTxt + \"\\xB6\\xDF\";\n } else {\n return \"\\uFB02\\xB0\" + innerTxt + \"\\xB6\\xDF\";\n }\n });\n return txt;\n}, \"encodeEntities\");\nvar decodeEntities = /* @__PURE__ */ __name(function(text) {\n return text.replace(/fl°°/g, \"&#\").replace(/fl°/g, \"&\").replace(/¶ß/g, \";\");\n}, \"decodeEntities\");\nvar getEdgeId = /* @__PURE__ */ __name((from, to, {\n counter = 0,\n prefix,\n suffix\n}) => {\n return `${prefix ? `${prefix}_` : \"\"}${from}_${to}_${counter}${suffix ? `_${suffix}` : \"\"}`;\n}, \"getEdgeId\");\nfunction handleUndefinedAttr(attrValue) {\n return attrValue ?? null;\n}\n__name(handleUndefinedAttr, \"handleUndefinedAttr\");\n\nexport {\n ZERO_WIDTH_SPACE,\n removeDirectives,\n interpolateToCurve,\n getStylesFromArray,\n generateId,\n random,\n wrapLabel,\n calculateTextHeight,\n calculateTextWidth,\n isDetailedError,\n parseFontSize,\n cleanAndMerge,\n utils_default,\n encodeEntities,\n decodeEntities,\n getEdgeId,\n handleUndefinedAttr\n};\n"],"mappings":"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","names":[]}
@@ -1,23 +0,0 @@
1
- import {
2
- __name,
3
- getConfig2,
4
- select_default
5
- } from "./chunk-RWDBBMDN.js";
6
-
7
- // node_modules/mermaid/dist/chunks/mermaid.core/chunk-EJ4ZWXGL.mjs
8
- var selectSvgElement = /* @__PURE__ */ __name((id) => {
9
- const { securityLevel } = getConfig2();
10
- let root = select_default("body");
11
- if (securityLevel === "sandbox") {
12
- const sandboxElement = select_default(`#i${id}`);
13
- const doc = sandboxElement.node()?.contentDocument ?? document;
14
- root = select_default(doc.body);
15
- }
16
- const svg = root.select(`#${id}`);
17
- return svg;
18
- }, "selectSvgElement");
19
-
20
- export {
21
- selectSvgElement
22
- };
23
- //# sourceMappingURL=chunk-TG4YEU4Q.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../node_modules/mermaid/dist/chunks/mermaid.core/chunk-EJ4ZWXGL.mjs"],"sourcesContent":["import {\n __name,\n getConfig2 as getConfig\n} from \"./chunk-6DBFFHIP.mjs\";\n\n// src/rendering-util/selectSvgElement.ts\nimport { select } from \"d3\";\nvar selectSvgElement = /* @__PURE__ */ __name((id) => {\n const { securityLevel } = getConfig();\n let root = select(\"body\");\n if (securityLevel === \"sandbox\") {\n const sandboxElement = select(`#i${id}`);\n const doc = sandboxElement.node()?.contentDocument ?? document;\n root = select(doc.body);\n }\n const svg = root.select(`#${id}`);\n return svg;\n}, \"selectSvgElement\");\n\nexport {\n selectSvgElement\n};\n"],"mappings":";;;;;;;AAOA,IAAI,mBAAmC,uBAAO,CAAC,OAAO;AACpD,QAAM,EAAE,cAAc,IAAI,WAAU;AACpC,MAAI,OAAO,eAAO,MAAM;AACxB,MAAI,kBAAkB,WAAW;AAC/B,UAAM,iBAAiB,eAAO,KAAK,EAAE,EAAE;AACvC,UAAM,MAAM,eAAe,KAAK,GAAG,mBAAmB;AACtD,WAAO,eAAO,IAAI,IAAI;AAAA,EACxB;AACA,QAAM,MAAM,KAAK,OAAO,IAAI,EAAE,EAAE;AAChC,SAAO;AACT,GAAG,kBAAkB;","names":[]}