stickyflow 0.11.2 → 0.12.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 (52) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/binding/index.cjs +9 -9
  3. package/dist/binding/index.d.cts +3 -3
  4. package/dist/binding/index.d.ts +3 -3
  5. package/dist/binding/index.js +3 -3
  6. package/dist/{chunk-WZA3DJJH.cjs → chunk-3OF37CZX.cjs} +15 -15
  7. package/dist/{chunk-WZA3DJJH.cjs.map → chunk-3OF37CZX.cjs.map} +1 -1
  8. package/dist/{chunk-VYQ6N5SI.cjs → chunk-3XPNGIMV.cjs} +37 -37
  9. package/dist/chunk-3XPNGIMV.cjs.map +1 -0
  10. package/dist/{chunk-G6IW2IX3.js → chunk-4SXXMOXR.js} +31 -5
  11. package/dist/chunk-4SXXMOXR.js.map +1 -0
  12. package/dist/{chunk-4KBU4CFU.cjs → chunk-EG7VZJZX.cjs} +23 -23
  13. package/dist/{chunk-4KBU4CFU.cjs.map → chunk-EG7VZJZX.cjs.map} +1 -1
  14. package/dist/{chunk-BFQWCOEC.js → chunk-FYSJMUJI.js} +3 -3
  15. package/dist/{chunk-BFQWCOEC.js.map → chunk-FYSJMUJI.js.map} +1 -1
  16. package/dist/{chunk-UD6IG2PG.js → chunk-LDRUTQF7.js} +4 -4
  17. package/dist/{chunk-UD6IG2PG.js.map → chunk-LDRUTQF7.js.map} +1 -1
  18. package/dist/{chunk-DGAVCN4D.js → chunk-Q4OIDWT6.js} +6 -6
  19. package/dist/chunk-Q4OIDWT6.js.map +1 -0
  20. package/dist/{chunk-UHKFJBY5.cjs → chunk-SKGJXCAO.cjs} +31 -5
  21. package/dist/chunk-SKGJXCAO.cjs.map +1 -0
  22. package/dist/{chunk-TQIYK5OA.js → chunk-UCOMSZPC.js} +12 -10
  23. package/dist/chunk-UCOMSZPC.js.map +1 -0
  24. package/dist/{chunk-EHH6ZDK6.cjs → chunk-ZE2KRWOM.cjs} +665 -663
  25. package/dist/chunk-ZE2KRWOM.cjs.map +1 -0
  26. package/dist/index.cjs +36 -36
  27. package/dist/index.d.cts +3 -3
  28. package/dist/index.d.ts +3 -3
  29. package/dist/index.js +5 -5
  30. package/dist/interaction/index.cjs +364 -260
  31. package/dist/interaction/index.cjs.map +1 -1
  32. package/dist/interaction/index.js +131 -27
  33. package/dist/interaction/index.js.map +1 -1
  34. package/dist/{runtime-C-C5v9po.d.cts → runtime-BJDaqo6f.d.cts} +1 -1
  35. package/dist/{runtime-lCAfU-1Q.d.ts → runtime-DaconR36.d.ts} +1 -1
  36. package/dist/{runtimeTypes-BDA_CfWh.d.ts → runtimeTypes-BE_GI1yU.d.ts} +1 -1
  37. package/dist/{runtimeTypes-B7p6b1Bi.d.cts → runtimeTypes-BE_nllY6.d.cts} +1 -1
  38. package/dist/stickyflow-diagram.global.js +39 -39
  39. package/dist/stickyflow-diagram.global.js.map +1 -1
  40. package/dist/viewer/index.cjs +9 -9
  41. package/dist/viewer/index.d.cts +1 -1
  42. package/dist/viewer/index.d.ts +1 -1
  43. package/dist/viewer/index.js +4 -4
  44. package/dist/web-component/index.cjs +6 -6
  45. package/dist/web-component/index.js +4 -4
  46. package/package.json +1 -1
  47. package/dist/chunk-DGAVCN4D.js.map +0 -1
  48. package/dist/chunk-EHH6ZDK6.cjs.map +0 -1
  49. package/dist/chunk-G6IW2IX3.js.map +0 -1
  50. package/dist/chunk-TQIYK5OA.js.map +0 -1
  51. package/dist/chunk-UHKFJBY5.cjs.map +0 -1
  52. package/dist/chunk-VYQ6N5SI.cjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkUHKFJBY5_cjs = require('./chunk-UHKFJBY5.cjs');
3
+ var chunkSKGJXCAO_cjs = require('./chunk-SKGJXCAO.cjs');
4
4
 
5
5
  // src/renderInput/styleDecoding/colorToken.ts
6
6
  var COLOR_TOKEN_PATTERN = String.raw`rgba?\([^)]*\)|#[0-9a-fA-F]+|[a-zA-Z][\w-]*`;
@@ -660,7 +660,7 @@ function readComponentValue(descriptor, raw) {
660
660
  return raw;
661
661
  }
662
662
  function genericComponentObject(canvasObject) {
663
- const descriptor = chunkUHKFJBY5_cjs.getComponentDescriptor(canvasObject.component.type);
663
+ const descriptor = chunkSKGJXCAO_cjs.getComponentDescriptor(canvasObject.component.type);
664
664
  return {
665
665
  id: canvasObject.id,
666
666
  type: canvasObject.component.type,
@@ -849,7 +849,7 @@ var BUILT_IN_OBJECTS = {
849
849
  };
850
850
  function componentObject(canvasObject) {
851
851
  const type = canvasObject.component.type;
852
- return chunkUHKFJBY5_cjs.isBuiltInComponentType(type) ? BUILT_IN_OBJECTS[type](canvasObject) : genericComponentObject(canvasObject);
852
+ return chunkSKGJXCAO_cjs.isBuiltInComponentType(type) ? BUILT_IN_OBJECTS[type](canvasObject) : genericComponentObject(canvasObject);
853
853
  }
854
854
 
855
855
  // src/renderInput/fromSfl/canvasObjects/connection.ts
@@ -896,6 +896,7 @@ function dimensionObject(canvasObject) {
896
896
  // src/renderInput/fromSfl/canvasObjects/frame.ts
897
897
  function frameObject(e) {
898
898
  const p = e.props;
899
+ const screen = e.kind === "screen";
899
900
  return {
900
901
  id: e.id,
901
902
  title: e.text ?? null,
@@ -903,18 +904,18 @@ function frameObject(e) {
903
904
  y: e.y,
904
905
  width: e.width,
905
906
  height: e.height,
906
- fillColor: p.fill ?? "rgba(155, 66, 223, 0.05)",
907
- strokeColor: p.stroke ?? "#9b42df",
908
- strokeWidth: numOf(p.strokeWidth) ?? 2,
909
- cornerRadius: numOf(p.cornerRadius) ?? 12,
907
+ fillColor: p.fill ?? (screen ? "rgba(0, 0, 0, 0)" : "rgba(155, 66, 223, 0.05)"),
908
+ strokeColor: p.stroke ?? (screen ? "rgba(0, 0, 0, 0)" : "#9b42df"),
909
+ strokeWidth: numOf(p.strokeWidth) ?? (screen ? 0 : 2),
910
+ cornerRadius: numOf(p.cornerRadius) ?? (screen ? 0 : 12),
910
911
  textColor: p.textColor ?? "#ffffff",
911
912
  fontSize: numOf(p.fontSize) ?? 14,
912
913
  fontWeight: oneOf(p.fontWeight, FONT_WEIGHTS, "bold"),
913
914
  fontFamily: p.fontFamily,
914
915
  dash: dashArray(p.dash),
915
- showLabel: p.showLabel !== "false",
916
+ showLabel: screen ? p.showLabel === "true" : p.showLabel !== "false",
916
917
  labelPosition: oneOf(p.labelPosition, LABEL_POSITIONS, "top"),
917
- shadow: p.shadow !== "false",
918
+ shadow: screen ? p.shadow === "true" : p.shadow !== "false",
918
919
  clip: p.clip === "true" || void 0,
919
920
  order: e.order,
920
921
  sourceIndex: e.sourceIndex
@@ -1039,7 +1040,8 @@ function shapeObject(e, shaders) {
1039
1040
  id: e.id,
1040
1041
  type: "shape",
1041
1042
  text: e.text ?? null,
1042
- shapeType: shapeTypeOf(e.shapeType),
1043
+ // A picture with a corner radius and no form of its own is a rounded one, or the radius would do nothing.
1044
+ shapeType: shapeTypeOf(e.shapeType ?? (isImage && p.cornerRadius ? "rounded_rectangle" : void 0)),
1043
1045
  symbol: e.symbol,
1044
1046
  x: e.x,
1045
1047
  y: e.y,
@@ -1112,9 +1114,9 @@ function collectCanvasObjects(state) {
1112
1114
  shapes: canvasObjects.filter((canvasObject) => canvasObject.objectType === "shape").map((shape) => shapeObject(shape, shaders)),
1113
1115
  frames: canvasObjects.filter((canvasObject) => canvasObject.objectType === "frame").map(frameObject),
1114
1116
  swimlanes: canvasObjects.filter((canvasObject) => canvasObject.objectType === "swimlane").map(swimlaneObject),
1115
- isometricObjects: canvasObjects.filter(chunkUHKFJBY5_cjs.isIsometricObject).map(isometricObject),
1117
+ isometricObjects: canvasObjects.filter(chunkSKGJXCAO_cjs.isIsometricObject).map(isometricObject),
1116
1118
  paths: canvasObjects.filter((canvasObject) => canvasObject.objectType === "path").map(pathObject),
1117
- dimensions: canvasObjects.filter(chunkUHKFJBY5_cjs.isDimensionObject).map(dimensionObject),
1119
+ dimensions: canvasObjects.filter(chunkSKGJXCAO_cjs.isDimensionObject).map(dimensionObject),
1118
1120
  charts: canvasObjects.filter((canvasObject) => canvasObject.objectType === "chart").map(chartObject),
1119
1121
  components: canvasObjects.filter(
1120
1122
  (canvasObject) => canvasObject.objectType === "component" && canvasObject.component !== void 0
@@ -1141,9 +1143,9 @@ function sidePoint(canvasObject, endpoint) {
1141
1143
  function namedPortPoint(canvasObject, endpoint) {
1142
1144
  const port = canvasObject.symbol?.ports?.find((candidate) => candidate.name === endpoint.port);
1143
1145
  if (!port) {
1144
- return chunkUHKFJBY5_cjs.elementCenter(canvasObject);
1146
+ return chunkSKGJXCAO_cjs.elementCenter(canvasObject);
1145
1147
  }
1146
- return chunkUHKFJBY5_cjs.pointAtNormalizedPort(
1148
+ return chunkSKGJXCAO_cjs.pointAtNormalizedPort(
1147
1149
  {
1148
1150
  x: canvasObject.x,
1149
1151
  y: canvasObject.y,
@@ -1189,7 +1191,7 @@ function explicitAnchorPoint(canvasObject, endpoint) {
1189
1191
  return null;
1190
1192
  }
1191
1193
  function automaticEndpointPoint(canvasObject, opposite) {
1192
- return opposite ? chunkUHKFJBY5_cjs.edgePointToward(canvasObject, opposite) : chunkUHKFJBY5_cjs.elementCenter(canvasObject);
1194
+ return opposite ? chunkSKGJXCAO_cjs.edgePointToward(canvasObject, opposite) : chunkSKGJXCAO_cjs.elementCenter(canvasObject);
1193
1195
  }
1194
1196
  function findPositionedCanvasObject(canvasObjects, id) {
1195
1197
  return canvasObjects.find((candidate) => candidate.id === id);
@@ -1207,7 +1209,7 @@ function positionedCanvasObjects(canvasObjects) {
1207
1209
  ];
1208
1210
  }
1209
1211
  function connectionEndpointPoint(object, face) {
1210
- return object ? chunkUHKFJBY5_cjs.isometricFaceCenter(object, face) : { x: 0, y: 0 };
1212
+ return object ? chunkSKGJXCAO_cjs.isometricFaceCenter(object, face) : { x: 0, y: 0 };
1211
1213
  }
1212
1214
  function isometricStackPosition(isometricObjects, id) {
1213
1215
  const index = isometricObjects.findIndex((object2) => object2.id === id);
@@ -1222,8 +1224,8 @@ function connectionStack(isometricObjects, connection) {
1222
1224
  return { order: connection.order, sourceIndex: connection.sourceIndex };
1223
1225
  }
1224
1226
  const behind = [
1225
- chunkUHKFJBY5_cjs.VISIBLE_ISOMETRIC_FACES.has(connection.fromFace) ? void 0 : isometricStackPosition(isometricObjects, connection.fromId),
1226
- chunkUHKFJBY5_cjs.VISIBLE_ISOMETRIC_FACES.has(connection.toFace) ? void 0 : isometricStackPosition(isometricObjects, connection.toId)
1227
+ chunkSKGJXCAO_cjs.VISIBLE_ISOMETRIC_FACES.has(connection.fromFace) ? void 0 : isometricStackPosition(isometricObjects, connection.fromId),
1228
+ chunkSKGJXCAO_cjs.VISIBLE_ISOMETRIC_FACES.has(connection.toFace) ? void 0 : isometricStackPosition(isometricObjects, connection.toId)
1227
1229
  ].filter((position) => position !== void 0);
1228
1230
  if (!behind.length) {
1229
1231
  return { sourceIndex: connection.sourceIndex };
@@ -1265,7 +1267,7 @@ function createRenderInputLinks(canvasObjects) {
1265
1267
 
1266
1268
  // src/renderInput/fromSfl/index.ts
1267
1269
  function sflToRenderInput(sfl) {
1268
- const state = chunkUHKFJBY5_cjs.sflToCanvasState(sfl);
1270
+ const state = chunkSKGJXCAO_cjs.sflToCanvasState(sfl);
1269
1271
  const canvasObjects = collectCanvasObjects(state);
1270
1272
  return {
1271
1273
  shapes: canvasObjects.shapes,
@@ -1284,13 +1286,13 @@ function sflToRenderInput(sfl) {
1284
1286
  // src/renderScene/artifacts/component/placeholder.ts
1285
1287
  var STROKE = "#94a3b8";
1286
1288
  function buildPlaceholder(component, index) {
1287
- const x = chunkUHKFJBY5_cjs.finite(component.x, 0);
1288
- const y = chunkUHKFJBY5_cjs.finite(component.y, 0);
1289
- const width = Math.max(0, chunkUHKFJBY5_cjs.finite(component.width, 120));
1290
- const height = Math.max(0, chunkUHKFJBY5_cjs.finite(component.height, 60));
1291
- const rotation = chunkUHKFJBY5_cjs.finite(component.rotation, 0);
1289
+ const x = chunkSKGJXCAO_cjs.finite(component.x, 0);
1290
+ const y = chunkSKGJXCAO_cjs.finite(component.y, 0);
1291
+ const width = Math.max(0, chunkSKGJXCAO_cjs.finite(component.width, 120));
1292
+ const height = Math.max(0, chunkSKGJXCAO_cjs.finite(component.height, 60));
1293
+ const rotation = chunkSKGJXCAO_cjs.finite(component.rotation, 0);
1292
1294
  const order = 1e4 + index;
1293
- const bounds = chunkUHKFJBY5_cjs.rotatedBounds({ x, y, width, height }, rotation, 2);
1295
+ const bounds = chunkSKGJXCAO_cjs.rotatedBounds({ x, y, width, height }, rotation, 2);
1294
1296
  return [
1295
1297
  {
1296
1298
  id: `widget-${component.id}`,
@@ -1315,7 +1317,7 @@ function buildPlaceholder(component, index) {
1315
1317
  width,
1316
1318
  height,
1317
1319
  lines: [component.type],
1318
- fontFamily: chunkUHKFJBY5_cjs.DEFAULT_FONT,
1320
+ fontFamily: chunkSKGJXCAO_cjs.DEFAULT_FONT,
1319
1321
  fontSize: 12,
1320
1322
  fontWeight: "normal",
1321
1323
  color: STROKE,
@@ -1329,44 +1331,44 @@ function buildPlaceholder(component, index) {
1329
1331
 
1330
1332
  // src/renderScene/artifacts/component/builtIn.ts
1331
1333
  function buildRollingNumber(component, index) {
1332
- const x = chunkUHKFJBY5_cjs.finite(component.x, 0);
1333
- const y = chunkUHKFJBY5_cjs.finite(component.y, 0);
1334
- const width = Math.max(0, chunkUHKFJBY5_cjs.finite(component.width, 160));
1335
- const height = Math.max(0, chunkUHKFJBY5_cjs.finite(component.height, 90));
1336
- const rotation = chunkUHKFJBY5_cjs.finite(component.rotation, 0);
1334
+ const x = chunkSKGJXCAO_cjs.finite(component.x, 0);
1335
+ const y = chunkSKGJXCAO_cjs.finite(component.y, 0);
1336
+ const width = Math.max(0, chunkSKGJXCAO_cjs.finite(component.width, 160));
1337
+ const height = Math.max(0, chunkSKGJXCAO_cjs.finite(component.height, 90));
1338
+ const rotation = chunkSKGJXCAO_cjs.finite(component.rotation, 0);
1337
1339
  return [
1338
1340
  {
1339
1341
  id: `widget-${component.id}`,
1340
1342
  type: "rolling-number",
1341
1343
  order: 1e4 + index,
1342
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x, y, width, height }, rotation, 2),
1344
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x, y, width, height }, rotation, 2),
1343
1345
  x,
1344
1346
  y,
1345
1347
  width,
1346
1348
  height,
1347
1349
  rotation,
1348
- value: chunkUHKFJBY5_cjs.formatRollingNumber(component.value, component.digits),
1350
+ value: chunkSKGJXCAO_cjs.formatRollingNumber(component.value, component.digits),
1349
1351
  digits: component.digits,
1350
- duration: Math.max(0, chunkUHKFJBY5_cjs.finite(component.duration, 420)),
1352
+ duration: Math.max(0, chunkSKGJXCAO_cjs.finite(component.duration, 420)),
1351
1353
  label: component.label,
1352
- componentStyle: chunkUHKFJBY5_cjs.resolveRollingNumberStyle(component.style)
1354
+ componentStyle: chunkSKGJXCAO_cjs.resolveRollingNumberStyle(component.style)
1353
1355
  }
1354
1356
  ];
1355
1357
  }
1356
1358
  function buildTickScale(component, index) {
1357
- const x = chunkUHKFJBY5_cjs.finite(component.x, 0);
1358
- const y = chunkUHKFJBY5_cjs.finite(component.y, 0);
1359
- const width = Math.max(0, chunkUHKFJBY5_cjs.finite(component.width, 200));
1360
- const height = Math.max(0, chunkUHKFJBY5_cjs.finite(component.height, 200));
1361
- const rotation = chunkUHKFJBY5_cjs.finite(component.rotation, 0);
1362
- const max = chunkUHKFJBY5_cjs.finite(component.max, 100) || 100;
1363
- const progress = Math.min(1, Math.max(0, chunkUHKFJBY5_cjs.finite(Number(component.value), 0) / max));
1359
+ const x = chunkSKGJXCAO_cjs.finite(component.x, 0);
1360
+ const y = chunkSKGJXCAO_cjs.finite(component.y, 0);
1361
+ const width = Math.max(0, chunkSKGJXCAO_cjs.finite(component.width, 200));
1362
+ const height = Math.max(0, chunkSKGJXCAO_cjs.finite(component.height, 200));
1363
+ const rotation = chunkSKGJXCAO_cjs.finite(component.rotation, 0);
1364
+ const max = chunkSKGJXCAO_cjs.finite(component.max, 100) || 100;
1365
+ const progress = Math.min(1, Math.max(0, chunkSKGJXCAO_cjs.finite(Number(component.value), 0) / max));
1364
1366
  const nodes = [
1365
1367
  {
1366
1368
  id: `widget-${component.id}`,
1367
1369
  type: "shader-surface",
1368
1370
  order: 1e4 + index,
1369
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x, y, width, height }, rotation, 2),
1371
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x, y, width, height }, rotation, 2),
1370
1372
  x,
1371
1373
  y,
1372
1374
  width,
@@ -1383,12 +1385,12 @@ function buildTickScale(component, index) {
1383
1385
  }
1384
1386
  function buildTickLabels(component, box) {
1385
1387
  const labels = component.labels ?? {};
1386
- const ticks2 = Math.max(1, chunkUHKFJBY5_cjs.finite(Number(component.parameters.ticks), 48));
1387
- const major = Math.max(1, chunkUHKFJBY5_cjs.finite(Number(component.parameters.major), 5));
1388
- const start = chunkUHKFJBY5_cjs.finite(Number(component.parameters.start), 225) * Math.PI / 180;
1389
- const sweep = chunkUHKFJBY5_cjs.finite(Number(component.parameters.sweep), 270) * Math.PI / 180;
1390
- const radius = chunkUHKFJBY5_cjs.finite(Number(component.parameters.radius), 0.9) + chunkUHKFJBY5_cjs.finite(labels.offset, 0.08);
1391
- const fontSize = chunkUHKFJBY5_cjs.finite(labels.size, 12);
1388
+ const ticks2 = Math.max(1, chunkSKGJXCAO_cjs.finite(Number(component.parameters.ticks), 48));
1389
+ const major = Math.max(1, chunkSKGJXCAO_cjs.finite(Number(component.parameters.major), 5));
1390
+ const start = chunkSKGJXCAO_cjs.finite(Number(component.parameters.start), 225) * Math.PI / 180;
1391
+ const sweep = chunkSKGJXCAO_cjs.finite(Number(component.parameters.sweep), 270) * Math.PI / 180;
1392
+ const radius = chunkSKGJXCAO_cjs.finite(Number(component.parameters.radius), 0.9) + chunkSKGJXCAO_cjs.finite(labels.offset, 0.08);
1393
+ const fontSize = chunkSKGJXCAO_cjs.finite(labels.size, 12);
1392
1394
  const centerX = box.x + box.width / 2;
1393
1395
  const centerY = box.y + box.height / 2;
1394
1396
  const count = Math.floor(ticks2 / major);
@@ -1403,10 +1405,10 @@ function buildTickLabels(component, box) {
1403
1405
  id: `widget-${component.id}-label-${step}`,
1404
1406
  type: "text",
1405
1407
  order: box.order + 0.1,
1406
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(labelBox, 0, 2),
1408
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(labelBox, 0, 2),
1407
1409
  ...labelBox,
1408
1410
  lines: [String(Math.round(box.max * fraction * 10) / 10)],
1409
- fontFamily: labels.fontFamily || chunkUHKFJBY5_cjs.DEFAULT_FONT,
1411
+ fontFamily: labels.fontFamily || chunkSKGJXCAO_cjs.DEFAULT_FONT,
1410
1412
  fontSize,
1411
1413
  fontWeight: labels.weight ?? "normal",
1412
1414
  color: labels.color || "#8f95c4",
@@ -1418,20 +1420,20 @@ function buildTickLabels(component, box) {
1418
1420
  return nodes;
1419
1421
  }
1420
1422
  function buildRuler(component, index) {
1421
- const x = chunkUHKFJBY5_cjs.finite(component.x, 0);
1422
- const y = chunkUHKFJBY5_cjs.finite(component.y, 0);
1423
- const width = Math.max(0, chunkUHKFJBY5_cjs.finite(component.width, 120));
1424
- const height = Math.max(0, chunkUHKFJBY5_cjs.finite(component.height, 360));
1425
- const rotation = chunkUHKFJBY5_cjs.finite(component.rotation, 0);
1426
- const min = chunkUHKFJBY5_cjs.finite(component.min, 0);
1427
- const max = chunkUHKFJBY5_cjs.finite(component.max, 100);
1428
- const progress = max === min ? 0 : Math.min(1, Math.max(0, (chunkUHKFJBY5_cjs.finite(Number(component.value), min) - min) / (max - min)));
1423
+ const x = chunkSKGJXCAO_cjs.finite(component.x, 0);
1424
+ const y = chunkSKGJXCAO_cjs.finite(component.y, 0);
1425
+ const width = Math.max(0, chunkSKGJXCAO_cjs.finite(component.width, 120));
1426
+ const height = Math.max(0, chunkSKGJXCAO_cjs.finite(component.height, 360));
1427
+ const rotation = chunkSKGJXCAO_cjs.finite(component.rotation, 0);
1428
+ const min = chunkSKGJXCAO_cjs.finite(component.min, 0);
1429
+ const max = chunkSKGJXCAO_cjs.finite(component.max, 100);
1430
+ const progress = max === min ? 0 : Math.min(1, Math.max(0, (chunkSKGJXCAO_cjs.finite(Number(component.value), min) - min) / (max - min)));
1429
1431
  const nodes = [
1430
1432
  {
1431
1433
  id: `widget-${component.id}`,
1432
1434
  type: "shader-surface",
1433
1435
  order: 1e4 + index,
1434
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x, y, width, height }, rotation, 2),
1436
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x, y, width, height }, rotation, 2),
1435
1437
  x,
1436
1438
  y,
1437
1439
  width,
@@ -1449,14 +1451,14 @@ function buildRuler(component, index) {
1449
1451
  function buildRulerLabels(component, box) {
1450
1452
  const labels = component.labels ?? {};
1451
1453
  const horizontal = component.parameters.axis === "horizontal";
1452
- const ticks2 = Math.max(1, chunkUHKFJBY5_cjs.finite(Number(component.parameters.ticks), 50));
1453
- const major = Math.max(1, chunkUHKFJBY5_cjs.finite(Number(component.parameters.major), 5));
1454
- const inset = chunkUHKFJBY5_cjs.finite(Number(component.parameters.inset), 0.05) > 0 ? chunkUHKFJBY5_cjs.finite(Number(component.parameters.inset), 0.05) : 0.05;
1455
- const line = chunkUHKFJBY5_cjs.finite(Number(component.parameters.line), 0.7) > 0 ? chunkUHKFJBY5_cjs.finite(Number(component.parameters.line), 0.7) : 0.7;
1454
+ const ticks2 = Math.max(1, chunkSKGJXCAO_cjs.finite(Number(component.parameters.ticks), 50));
1455
+ const major = Math.max(1, chunkSKGJXCAO_cjs.finite(Number(component.parameters.major), 5));
1456
+ const inset = chunkSKGJXCAO_cjs.finite(Number(component.parameters.inset), 0.05) > 0 ? chunkSKGJXCAO_cjs.finite(Number(component.parameters.inset), 0.05) : 0.05;
1457
+ const line = chunkSKGJXCAO_cjs.finite(Number(component.parameters.line), 0.7) > 0 ? chunkSKGJXCAO_cjs.finite(Number(component.parameters.line), 0.7) : 0.7;
1456
1458
  const across = horizontal ? box.height : box.width;
1457
- const tickLength = (chunkUHKFJBY5_cjs.finite(Number(component.parameters.length), 0.1) > 0 ? chunkUHKFJBY5_cjs.finite(Number(component.parameters.length), 0.1) : 0.1) * across * 1.9;
1458
- const edge = line * across - 0.12 * across - tickLength - chunkUHKFJBY5_cjs.finite(labels.offset, 0.04) * across;
1459
- const fontSize = chunkUHKFJBY5_cjs.finite(labels.size, 12);
1459
+ const tickLength = (chunkSKGJXCAO_cjs.finite(Number(component.parameters.length), 0.1) > 0 ? chunkSKGJXCAO_cjs.finite(Number(component.parameters.length), 0.1) : 0.1) * across * 1.9;
1460
+ const edge = line * across - 0.12 * across - tickLength - chunkSKGJXCAO_cjs.finite(labels.offset, 0.04) * across;
1461
+ const fontSize = chunkSKGJXCAO_cjs.finite(labels.size, 12);
1460
1462
  const count = Math.floor(ticks2 / major);
1461
1463
  const nodes = [];
1462
1464
  for (let step = 0; step <= count; step += 1) {
@@ -1467,10 +1469,10 @@ function buildRulerLabels(component, box) {
1467
1469
  id: `widget-${component.id}-label-${step}`,
1468
1470
  type: "text",
1469
1471
  order: box.order + 0.1,
1470
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(labelBox, 0, 2),
1472
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(labelBox, 0, 2),
1471
1473
  ...labelBox,
1472
1474
  lines: [String(Math.round((box.min + (box.max - box.min) * fraction) * 10) / 10)],
1473
- fontFamily: labels.fontFamily || chunkUHKFJBY5_cjs.DEFAULT_FONT,
1475
+ fontFamily: labels.fontFamily || chunkSKGJXCAO_cjs.DEFAULT_FONT,
1474
1476
  fontSize,
1475
1477
  fontWeight: labels.weight ?? "normal",
1476
1478
  color: labels.color || "#8f95c4",
@@ -1486,10 +1488,10 @@ function buildRulerLabels(component, box) {
1486
1488
  var DISABLED_INK = "#94a3b8";
1487
1489
  function controlBox(component, index, fallback) {
1488
1490
  return {
1489
- x: chunkUHKFJBY5_cjs.finite(component.x, 0),
1490
- y: chunkUHKFJBY5_cjs.finite(component.y, 0),
1491
- width: Math.max(1, chunkUHKFJBY5_cjs.finite(component.width, fallback.width)),
1492
- height: Math.max(1, chunkUHKFJBY5_cjs.finite(component.height, fallback.height)),
1491
+ x: chunkSKGJXCAO_cjs.finite(component.x, 0),
1492
+ y: chunkSKGJXCAO_cjs.finite(component.y, 0),
1493
+ width: Math.max(1, chunkSKGJXCAO_cjs.finite(component.width, fallback.width)),
1494
+ height: Math.max(1, chunkSKGJXCAO_cjs.finite(component.height, fallback.height)),
1493
1495
  order: 1e4 + index
1494
1496
  };
1495
1497
  }
@@ -1507,7 +1509,7 @@ function hitArea(component, box, takesClicks = true) {
1507
1509
  id: `widget-${component.id}`,
1508
1510
  type: "rect",
1509
1511
  order: box.order,
1510
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(box, 0, 0),
1512
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(box, 0, 0),
1511
1513
  x: box.x,
1512
1514
  y: box.y,
1513
1515
  width: box.width,
@@ -1520,13 +1522,13 @@ function labelText(component, part, area, label, order) {
1520
1522
  id: `widget-${component.id}-${part}`,
1521
1523
  type: "text",
1522
1524
  order,
1523
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(area, 0, 0),
1525
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(area, 0, 0),
1524
1526
  x: area.x,
1525
1527
  y: area.y,
1526
1528
  width: area.width,
1527
1529
  height: area.height,
1528
1530
  lines: [label.text],
1529
- fontFamily: chunkUHKFJBY5_cjs.DEFAULT_FONT,
1531
+ fontFamily: chunkSKGJXCAO_cjs.DEFAULT_FONT,
1530
1532
  fontSize: label.fontSize,
1531
1533
  fontWeight: "600",
1532
1534
  color: label.color,
@@ -1545,7 +1547,7 @@ function buildButton(component, index) {
1545
1547
  id: `widget-${component.id}-face`,
1546
1548
  type: "rect",
1547
1549
  order: box.order + 0.1,
1548
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(box, 0, 0),
1550
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(box, 0, 0),
1549
1551
  x: box.x,
1550
1552
  y: box.y,
1551
1553
  width: box.width,
@@ -1584,7 +1586,7 @@ function boxNode(component, box, square) {
1584
1586
  id: `widget-${component.id}-box`,
1585
1587
  type: "rect",
1586
1588
  order: box.order + 0.1,
1587
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(square, 0, 2),
1589
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(square, 0, 2),
1588
1590
  ...square,
1589
1591
  rx: square.width * CORNER_RATIO,
1590
1592
  style: fade(component, {
@@ -1599,7 +1601,7 @@ function checkNode(component, box, square) {
1599
1601
  id: `widget-${component.id}-check`,
1600
1602
  type: "path",
1601
1603
  order: box.order + 0.2,
1602
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(square, 0, 0),
1604
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(square, 0, 0),
1603
1605
  d: checkPath(square),
1604
1606
  style: fade(component, {
1605
1607
  fill: { kind: "none" },
@@ -1636,7 +1638,7 @@ function buildCheckbox(component, index) {
1636
1638
  // src/renderScene/artifacts/component/hand.ts
1637
1639
  var MIN_TIP = 0.25;
1638
1640
  function withAlpha(color, alpha) {
1639
- const rgb = chunkUHKFJBY5_cjs.parseHexRgb(color);
1641
+ const rgb = chunkSKGJXCAO_cjs.parseHexRgb(color);
1640
1642
  return rgb && alpha < 1 ? `rgba(${rgb[0]}, ${rgb[1]}, ${rgb[2]}, ${Number(alpha.toFixed(3))})` : color;
1641
1643
  }
1642
1644
  var num = (value) => String(Number(value.toFixed(3)));
@@ -1726,7 +1728,7 @@ function handLayer(component, box, base, angle, layer, order) {
1726
1728
  id: `widget-${component.id}-${layer.part}`,
1727
1729
  type: "path",
1728
1730
  order: box.order + order,
1729
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(extent, 0, 0),
1731
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(extent, 0, 0),
1730
1732
  d: outline(hand),
1731
1733
  rotation: angle,
1732
1734
  rotationCenter: { x: hand.cx, y: hand.cy },
@@ -1833,7 +1835,7 @@ function hubNode(component, box, hand, radius) {
1833
1835
  id: `widget-${component.id}-hub`,
1834
1836
  type: "ellipse",
1835
1837
  order: box.order + 0.4,
1836
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(
1838
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(
1837
1839
  { x: hand.cx - radius, y: hand.cy - radius, width: radius * 2, height: radius * 2 },
1838
1840
  0,
1839
1841
  ringWidth
@@ -1874,7 +1876,7 @@ function pickNodes(component, box, hand, angle) {
1874
1876
  id: `widget-${component.id}-pick`,
1875
1877
  type: "path",
1876
1878
  order: box.order + 0.5,
1877
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(extent, 0, 0),
1879
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(extent, 0, 0),
1878
1880
  d: outline(reach),
1879
1881
  rotation: angle,
1880
1882
  rotationCenter: { x: reach.cx, y: reach.cy },
@@ -1930,7 +1932,7 @@ function arcNode(component, box, dial, part, order, color, length, extra = {}) {
1930
1932
  id: `widget-${component.id}-${part}`,
1931
1933
  type: "ellipse",
1932
1934
  order: box.order + order,
1933
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x: cx - radius, y: cy - radius, width: radius * 2, height: radius * 2 }, 0, thickness),
1935
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x: cx - radius, y: cy - radius, width: radius * 2, height: radius * 2 }, 0, thickness),
1934
1936
  cx,
1935
1937
  cy,
1936
1938
  rx: radius,
@@ -1951,7 +1953,7 @@ function discNode(component, box, part, order, center, radius, fill2) {
1951
1953
  id: `widget-${component.id}-${part}`,
1952
1954
  type: "ellipse",
1953
1955
  order: box.order + order,
1954
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x: center.x - radius, y: center.y - radius, width: radius * 2, height: radius * 2 }, 0, 0),
1956
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x: center.x - radius, y: center.y - radius, width: radius * 2, height: radius * 2 }, 0, 0),
1955
1957
  cx: center.x,
1956
1958
  cy: center.y,
1957
1959
  rx: radius,
@@ -2031,7 +2033,7 @@ function buildRing(component, box, fraction, round2) {
2031
2033
  id: `widget-${component.id}-${part}`,
2032
2034
  type: "ellipse",
2033
2035
  order: box.order + order,
2034
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x: cx - radius, y: cy - radius, width: radius * 2, height: radius * 2 }, 0, thickness),
2036
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x: cx - radius, y: cy - radius, width: radius * 2, height: radius * 2 }, 0, thickness),
2035
2037
  cx,
2036
2038
  cy,
2037
2039
  rx: radius,
@@ -2057,7 +2059,7 @@ function buildBar(component, box, fraction, round2) {
2057
2059
  id: `widget-${component.id}-${part}`,
2058
2060
  type: "rect",
2059
2061
  order: box.order + order,
2060
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(shape, 0, 0),
2062
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(shape, 0, 0),
2061
2063
  ...shape,
2062
2064
  rx: radius,
2063
2065
  style: fade(component, {
@@ -2112,7 +2114,7 @@ function buildSegmented(component, index) {
2112
2114
  id: `widget-${component.id}-track`,
2113
2115
  type: "rect",
2114
2116
  order: box.order + 0.1,
2115
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(box, 0, 0),
2117
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(box, 0, 0),
2116
2118
  x: box.x,
2117
2119
  y: box.y,
2118
2120
  width: box.width,
@@ -2124,7 +2126,7 @@ function buildSegmented(component, index) {
2124
2126
  id: `widget-${component.id}-active`,
2125
2127
  type: "rect",
2126
2128
  order: box.order + 0.2,
2127
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x: box.x + inset + active * cellWidth, width: cellWidth, ...cell }, 0, 0),
2129
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x: box.x + inset + active * cellWidth, width: cellWidth, ...cell }, 0, 0),
2128
2130
  x: box.x + inset + active * cellWidth,
2129
2131
  y: cell.y,
2130
2132
  width: cellWidth,
@@ -2176,7 +2178,7 @@ var rect = (component, box, part, order, shape, color, extra = {}) => ({
2176
2178
  id: `widget-${component.id}-${part}`,
2177
2179
  type: "rect",
2178
2180
  order: box.order + order,
2179
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(shape, 0, 0),
2181
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(shape, 0, 0),
2180
2182
  ...shape,
2181
2183
  style: fade(component, { fill: solid(color), stroke: { kind: "none" }, ...extra })
2182
2184
  });
@@ -2232,7 +2234,7 @@ function buildLine(component, box, thumbs, vertical) {
2232
2234
  id: `widget-${component.id}-${part}`,
2233
2235
  type: "ellipse",
2234
2236
  order: box.order + order,
2235
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x: cx - radius, y: cy - radius, width: radius * 2, height: radius * 2 }, 0, 0),
2237
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x: cx - radius, y: cy - radius, width: radius * 2, height: radius * 2 }, 0, 0),
2236
2238
  cx,
2237
2239
  cy,
2238
2240
  rx: radius,
@@ -2394,7 +2396,7 @@ function buildSwitch(component, index) {
2394
2396
  id: `widget-${component.id}-track`,
2395
2397
  type: "rect",
2396
2398
  order: box.order + 0.1,
2397
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(box, 0, 0),
2399
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(box, 0, 0),
2398
2400
  x: box.x,
2399
2401
  y: box.y,
2400
2402
  width: box.width,
@@ -2409,7 +2411,7 @@ function buildSwitch(component, index) {
2409
2411
  id: `widget-${component.id}-thumb`,
2410
2412
  type: "ellipse",
2411
2413
  order: box.order + 0.2,
2412
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(thumb, 0, 0),
2414
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(thumb, 0, 0),
2413
2415
  cx: centerX,
2414
2416
  cy: box.y + box.height / 2,
2415
2417
  rx: radius,
@@ -2433,7 +2435,7 @@ function buildToggleButton(component, index) {
2433
2435
  id: `widget-${component.id}-face`,
2434
2436
  type: "rect",
2435
2437
  order: box.order + 0.1,
2436
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(box, 0, 2),
2438
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(box, 0, 2),
2437
2439
  x: box.x,
2438
2440
  y: box.y,
2439
2441
  width: box.width,
@@ -2489,8 +2491,8 @@ function getComponentBuilder(type) {
2489
2491
 
2490
2492
  // src/renderScene/artifacts/component/build.ts
2491
2493
  function ariaOf(component) {
2492
- const role = chunkUHKFJBY5_cjs.getComponentDescriptor(component.type)?.role;
2493
- if (!role || !chunkUHKFJBY5_cjs.isGenericComponent(component)) {
2494
+ const role = chunkSKGJXCAO_cjs.getComponentDescriptor(component.type)?.role;
2495
+ if (!role || !chunkSKGJXCAO_cjs.isGenericComponent(component)) {
2494
2496
  return void 0;
2495
2497
  }
2496
2498
  const flag = typeof component.value === "boolean" ? component.value : void 0;
@@ -2501,12 +2503,12 @@ function ariaOf(component) {
2501
2503
  };
2502
2504
  }
2503
2505
  function labelOf(component) {
2504
- return component.label ?? (chunkUHKFJBY5_cjs.isGenericComponent(component) ? component.id : String(component.value));
2506
+ return component.label ?? (chunkSKGJXCAO_cjs.isGenericComponent(component) ? component.id : String(component.value));
2505
2507
  }
2506
2508
  function buildComponents(components) {
2507
2509
  return components.flatMap((component, index) => {
2508
2510
  const build = getComponentBuilder(component.type) ?? buildPlaceholder;
2509
- const nodes = chunkUHKFJBY5_cjs.tag(
2511
+ const nodes = chunkSKGJXCAO_cjs.tag(
2510
2512
  build(component, index),
2511
2513
  "widget",
2512
2514
  component.id,
@@ -2546,13 +2548,13 @@ function tabBox(input, thickness, length) {
2546
2548
  y,
2547
2549
  width: length,
2548
2550
  height: thickness,
2549
- path: chunkUHKFJBY5_cjs.bottomRoundedRectPath(x, y, length, thickness, TAB_RADIUS)
2551
+ path: chunkSKGJXCAO_cjs.bottomRoundedRectPath(x, y, length, thickness, TAB_RADIUS)
2550
2552
  };
2551
2553
  }
2552
2554
  case "left": {
2553
2555
  const x = input.x - thickness;
2554
2556
  const y = input.y - inset;
2555
- return { x, y, width: thickness, height: length, path: chunkUHKFJBY5_cjs.leftRoundedRectPath(x, y, thickness, length, TAB_RADIUS) };
2557
+ return { x, y, width: thickness, height: length, path: chunkSKGJXCAO_cjs.leftRoundedRectPath(x, y, thickness, length, TAB_RADIUS) };
2556
2558
  }
2557
2559
  case "right": {
2558
2560
  const x = input.x + input.width;
@@ -2562,13 +2564,13 @@ function tabBox(input, thickness, length) {
2562
2564
  y,
2563
2565
  width: thickness,
2564
2566
  height: length,
2565
- path: chunkUHKFJBY5_cjs.rightRoundedRectPath(x, y, thickness, length, TAB_RADIUS)
2567
+ path: chunkSKGJXCAO_cjs.rightRoundedRectPath(x, y, thickness, length, TAB_RADIUS)
2566
2568
  };
2567
2569
  }
2568
2570
  default: {
2569
2571
  const x = input.x - inset;
2570
2572
  const y = input.y - thickness;
2571
- return { x, y, width: length, height: thickness, path: chunkUHKFJBY5_cjs.topRoundedRectPath(x, y, length, thickness, TAB_RADIUS) };
2573
+ return { x, y, width: length, height: thickness, path: chunkSKGJXCAO_cjs.topRoundedRectPath(x, y, length, thickness, TAB_RADIUS) };
2572
2574
  }
2573
2575
  }
2574
2576
  }
@@ -2577,7 +2579,7 @@ function renderTitleTab(input) {
2577
2579
  const padding = 16;
2578
2580
  const length = Math.max(120, input.title.length * input.fontSize * 0.62 + padding * 2);
2579
2581
  const box = tabBox(input, thickness, length);
2580
- const bounds = chunkUHKFJBY5_cjs.boxBounds(box, 6);
2582
+ const bounds = chunkSKGJXCAO_cjs.boxBounds(box, 6);
2581
2583
  const vertical = input.labelPosition === "left" || input.labelPosition === "right";
2582
2584
  return [
2583
2585
  {
@@ -2605,7 +2607,7 @@ function horizontalTitleText(input, box, padding, bounds) {
2605
2607
  width: Math.max(0, box.width - padding * 2),
2606
2608
  height: box.height,
2607
2609
  lines: [input.title],
2608
- fontFamily: input.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT,
2610
+ fontFamily: input.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT,
2609
2611
  fontSize: input.fontSize,
2610
2612
  fontWeight: input.fontWeight,
2611
2613
  color: input.textColor,
@@ -2629,7 +2631,7 @@ function verticalTitleText(input, box, padding, bounds) {
2629
2631
  width: textLength,
2630
2632
  height: textThickness,
2631
2633
  lines: [input.title],
2632
- fontFamily: input.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT,
2634
+ fontFamily: input.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT,
2633
2635
  fontSize: input.fontSize,
2634
2636
  fontWeight: input.fontWeight,
2635
2637
  color: input.textColor,
@@ -2650,7 +2652,7 @@ var SQUARED_CORNER_BY_LABEL_POSITION = {
2650
2652
  };
2651
2653
  function frameBoundaryNode(frame, order, hasTab) {
2652
2654
  const shadow = frame.shadow ?? true;
2653
- const bounds = chunkUHKFJBY5_cjs.boxBounds(
2655
+ const bounds = chunkSKGJXCAO_cjs.boxBounds(
2654
2656
  { x: frame.x, y: frame.y, width: frame.width, height: frame.height },
2655
2657
  frame.strokeWidth + (shadow ? 20 : 4)
2656
2658
  );
@@ -2685,7 +2687,7 @@ function frameBoundaryNode(frame, order, hasTab) {
2685
2687
  id: `frame-${frame.id}`,
2686
2688
  order,
2687
2689
  bounds,
2688
- d: chunkUHKFJBY5_cjs.cornersRoundedRectPath(frame.x, frame.y, frame.width, frame.height, radii),
2690
+ d: chunkSKGJXCAO_cjs.cornersRoundedRectPath(frame.x, frame.y, frame.width, frame.height, radii),
2689
2691
  detail: { of: "frameBoundary", cornerRadius: frame.cornerRadius, squareCorner: squared },
2690
2692
  style
2691
2693
  };
@@ -2774,7 +2776,7 @@ function labelBase(context, lane, index) {
2774
2776
  id: `swimlane-label-${context.swimlane.id}-${lane.id}`,
2775
2777
  order: context.order + 0.5 + index / 100,
2776
2778
  lines: [lane.label],
2777
- fontFamily: context.swimlane.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT,
2779
+ fontFamily: context.swimlane.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT,
2778
2780
  fontSize: context.swimlane.fontSize,
2779
2781
  fontWeight: context.swimlane.fontWeight,
2780
2782
  color: context.swimlane.textColor,
@@ -2790,7 +2792,7 @@ function horizontalLabel(context, lane, index) {
2790
2792
  const y = centerY - thickness / 2;
2791
2793
  return {
2792
2794
  ...labelBase(context, lane, index),
2793
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x, y, width, height: thickness }, -90, 12),
2795
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x, y, width, height: thickness }, -90, 12),
2794
2796
  x,
2795
2797
  y,
2796
2798
  width,
@@ -2842,7 +2844,7 @@ function createSwimlaneRenderContext(swimlane, index) {
2842
2844
  return {
2843
2845
  swimlane,
2844
2846
  order: 5e3 + index,
2845
- bounds: chunkUHKFJBY5_cjs.boxBounds(
2847
+ bounds: chunkSKGJXCAO_cjs.boxBounds(
2846
2848
  { x: swimlane.x, y: swimlane.y, width: swimlane.width, height: swimlane.height },
2847
2849
  swimlane.strokeWidth + 4
2848
2850
  ),
@@ -2881,9 +2883,9 @@ function buildSwimlane(swimlane, index) {
2881
2883
  function buildContainers(input) {
2882
2884
  return [
2883
2885
  ...input.frames.flatMap(
2884
- (frame, index) => chunkUHKFJBY5_cjs.tag(buildFrame(frame, index), "frame", frame.id, void 0, frame.title ?? void 0)
2886
+ (frame, index) => chunkSKGJXCAO_cjs.tag(buildFrame(frame, index), "frame", frame.id, void 0, frame.title ?? void 0)
2885
2887
  ),
2886
- ...input.swimlanes.flatMap((swimlane, index) => chunkUHKFJBY5_cjs.tag(buildSwimlane(swimlane, index), "swimlane", swimlane.id))
2888
+ ...input.swimlanes.flatMap((swimlane, index) => chunkSKGJXCAO_cjs.tag(buildSwimlane(swimlane, index), "swimlane", swimlane.id))
2887
2889
  ];
2888
2890
  }
2889
2891
 
@@ -2933,7 +2935,7 @@ var DEFAULT_COLOR = "#475569";
2933
2935
  var CHAR_WIDTH = 0.6;
2934
2936
  var pathData = (segments) => segments.map(([from, to]) => `M ${from.x} ${from.y} L ${to.x} ${to.y}`).join(" ");
2935
2937
  function pathNode(dimension, name, order, segments) {
2936
- const strokeWidth = Math.max(0, chunkUHKFJBY5_cjs.finite(dimension.strokeWidth, 1));
2938
+ const strokeWidth = Math.max(0, chunkSKGJXCAO_cjs.finite(dimension.strokeWidth, 1));
2937
2939
  const points = segments.flat();
2938
2940
  return {
2939
2941
  type: "path",
@@ -2955,7 +2957,7 @@ function pathNode(dimension, name, order, segments) {
2955
2957
  };
2956
2958
  }
2957
2959
  function labelNode2(dimension, order, text, center, angle) {
2958
- const fontSize = chunkUHKFJBY5_cjs.finite(dimension.fontSize, 11);
2960
+ const fontSize = chunkSKGJXCAO_cjs.finite(dimension.fontSize, 11);
2959
2961
  const width = Math.max(24, text.length * fontSize * CHAR_WIDTH + 8);
2960
2962
  const height = fontSize * 1.3;
2961
2963
  return {
@@ -2973,7 +2975,7 @@ function labelNode2(dimension, order, text, center, angle) {
2973
2975
  width,
2974
2976
  height,
2975
2977
  lines: [text],
2976
- fontFamily: chunkUHKFJBY5_cjs.DEFAULT_FONT,
2978
+ fontFamily: chunkSKGJXCAO_cjs.DEFAULT_FONT,
2977
2979
  fontSize,
2978
2980
  fontWeight: "normal",
2979
2981
  color: dimension.textColor ?? dimension.strokeColor ?? DEFAULT_COLOR,
@@ -2998,7 +3000,7 @@ function buildDimension(dimension, index) {
2998
3000
  }
2999
3001
  function buildDimensions(dimensions) {
3000
3002
  return dimensions.flatMap(
3001
- (dimension, index) => chunkUHKFJBY5_cjs.tag(
3003
+ (dimension, index) => chunkSKGJXCAO_cjs.tag(
3002
3004
  buildDimension(dimension, index),
3003
3005
  "dimension",
3004
3006
  dimension.id,
@@ -3012,9 +3014,9 @@ function buildDimensions(dimensions) {
3012
3014
  // src/renderScene/artifacts/isometric/context.ts
3013
3015
  var FILL_PROP = { prop: "style.fill", propKind: "color", propSolidOnly: true };
3014
3016
  function isometricContext(object, index) {
3015
- const strokeWidth = Math.max(0, chunkUHKFJBY5_cjs.finite(object.strokeWidth, 1));
3016
- const rotation = chunkUHKFJBY5_cjs.finite(object.rotation, 0);
3017
- const box = chunkUHKFJBY5_cjs.isometricBounds(object);
3017
+ const strokeWidth = Math.max(0, chunkSKGJXCAO_cjs.finite(object.strokeWidth, 1));
3018
+ const rotation = chunkSKGJXCAO_cjs.finite(object.rotation, 0);
3019
+ const box = chunkSKGJXCAO_cjs.isometricBounds(object);
3018
3020
  const rotationCenter = { x: box.x + box.width / 2, y: box.y + box.height / 2 };
3019
3021
  return {
3020
3022
  object,
@@ -3026,7 +3028,7 @@ function isometricContext(object, index) {
3026
3028
  strokeWidth,
3027
3029
  common: {
3028
3030
  type: "path",
3029
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(box, rotation, strokeWidth + 2),
3031
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(box, rotation, strokeWidth + 2),
3030
3032
  rotation,
3031
3033
  rotationCenter,
3032
3034
  style: {
@@ -3042,13 +3044,13 @@ function faceNode(context, name, offset, points, style) {
3042
3044
  ...context.common,
3043
3045
  id: `isometric-${context.object.id}-${name}`,
3044
3046
  order: context.order + offset,
3045
- d: chunkUHKFJBY5_cjs.roundedPolygonPath([...points], 0),
3047
+ d: chunkSKGJXCAO_cjs.roundedPolygonPath([...points], 0),
3046
3048
  style,
3047
3049
  ...FILL_PROP
3048
3050
  };
3049
3051
  }
3050
3052
  function silhouette(object) {
3051
- const faces = chunkUHKFJBY5_cjs.isometricFaces(object);
3053
+ const faces = chunkSKGJXCAO_cjs.isometricFaces(object);
3052
3054
  return [faces.top[0], faces.top[1], faces.right[2], faces.front[2], faces.front[3], faces.top[3]];
3053
3055
  }
3054
3056
  function hullNode(context, hullPath, cornerRadius) {
@@ -3065,15 +3067,15 @@ function hullNode(context, hullPath, cornerRadius) {
3065
3067
  depth: Math.max(0, object.depth),
3066
3068
  cornerRadius,
3067
3069
  bounds: box,
3068
- labelOffsetX: chunkUHKFJBY5_cjs.finite(object.labelOffsetX, 0),
3069
- labelOffsetY: chunkUHKFJBY5_cjs.finite(object.labelOffsetY, 0)
3070
+ labelOffsetX: chunkSKGJXCAO_cjs.finite(object.labelOffsetX, 0),
3071
+ labelOffsetY: chunkSKGJXCAO_cjs.finite(object.labelOffsetY, 0)
3070
3072
  },
3071
3073
  style: { ...common.style, fill: { kind: "none" } }
3072
3074
  };
3073
3075
  }
3074
3076
  function unseenHullNode(context) {
3075
3077
  return {
3076
- ...hullNode(context, chunkUHKFJBY5_cjs.roundedPolygonPath(silhouette(context.object), 0), 0),
3078
+ ...hullNode(context, chunkSKGJXCAO_cjs.roundedPolygonPath(silhouette(context.object), 0), 0),
3077
3079
  style: { ...context.common.style, fill: { kind: "none" }, stroke: { kind: "none" } }
3078
3080
  };
3079
3081
  }
@@ -3086,9 +3088,9 @@ var LABEL_PADDING_Y = 3;
3086
3088
  var LABEL_CHAR_WIDTH = 6.5;
3087
3089
  function labelPlacement(context) {
3088
3090
  const { object } = context;
3089
- const anchor = chunkUHKFJBY5_cjs.isometricTopFaceCenter(object);
3090
- const bottomY = anchor.y - LABEL_GAP + chunkUHKFJBY5_cjs.finite(object.labelOffsetY, 0);
3091
- return { anchor, centerX: anchor.x + chunkUHKFJBY5_cjs.finite(object.labelOffsetX, 0), topY: bottomY - LABEL_HEIGHT, bottomY };
3091
+ const anchor = chunkSKGJXCAO_cjs.isometricTopFaceCenter(object);
3092
+ const bottomY = anchor.y - LABEL_GAP + chunkSKGJXCAO_cjs.finite(object.labelOffsetY, 0);
3093
+ return { anchor, centerX: anchor.x + chunkSKGJXCAO_cjs.finite(object.labelOffsetX, 0), topY: bottomY - LABEL_HEIGHT, bottomY };
3092
3094
  }
3093
3095
  function labelTextNode(context, placement, text) {
3094
3096
  const { object, order, rotation, rotationCenter, box } = context;
@@ -3103,7 +3105,7 @@ function labelTextNode(context, placement, text) {
3103
3105
  width: box.width,
3104
3106
  height: LABEL_HEIGHT,
3105
3107
  lines: [text],
3106
- fontFamily: chunkUHKFJBY5_cjs.DEFAULT_FONT,
3108
+ fontFamily: chunkSKGJXCAO_cjs.DEFAULT_FONT,
3107
3109
  fontSize: 12,
3108
3110
  fontWeight: "normal",
3109
3111
  color: "#111827",
@@ -3183,7 +3185,7 @@ function groundShadowNode(context, topOutline) {
3183
3185
  }
3184
3186
  const height = Math.max(0, object.height);
3185
3187
  const heightFactor = 0.6 + Math.min(1, height / 150) * 0.7;
3186
- const shadowDrop = height + chunkUHKFJBY5_cjs.finite(object.shadowStyle?.distance, 0);
3188
+ const shadowDrop = height + chunkSKGJXCAO_cjs.finite(object.shadowStyle?.distance, 0);
3187
3189
  const contactFootprint = topOutline.map((point) => ({ x: point.x, y: point.y + shadowDrop }));
3188
3190
  const footprintCenter = {
3189
3191
  x: contactFootprint.reduce((sum, point) => sum + point.x, 0) / contactFootprint.length,
@@ -3206,14 +3208,14 @@ function groundShadowNode(context, topOutline) {
3206
3208
  maxX: Math.max(...footprintXs),
3207
3209
  maxY: Math.max(...footprintYs)
3208
3210
  },
3209
- d: chunkUHKFJBY5_cjs.roundedPolygonPath(footprint, 0),
3211
+ d: chunkSKGJXCAO_cjs.roundedPolygonPath(footprint, 0),
3210
3212
  rotation,
3211
3213
  rotationCenter,
3212
3214
  style: {
3213
3215
  fill: { kind: "solid", color: object.shadowStyle?.color ?? "#000000" },
3214
3216
  stroke: { kind: "none" },
3215
3217
  opacity: Math.min(1, (object.shadowStyle?.opacity ?? 0.18) * heightFactor),
3216
- blur: chunkUHKFJBY5_cjs.finite(object.shadowStyle?.blur, 8),
3218
+ blur: chunkSKGJXCAO_cjs.finite(object.shadowStyle?.blur, 8),
3217
3219
  pointerEvents: "none"
3218
3220
  }
3219
3221
  };
@@ -3227,7 +3229,7 @@ function sphereShadowNode(context, radius) {
3227
3229
  const depth = Math.max(0, object.depth);
3228
3230
  const center = {
3229
3231
  x: box.x + box.width / 2,
3230
- y: object.y + Math.max(0, object.height) + (width + depth) * chunkUHKFJBY5_cjs.AXIS_SIN / 2
3232
+ y: object.y + Math.max(0, object.height) + (width + depth) * chunkSKGJXCAO_cjs.AXIS_SIN / 2
3231
3233
  };
3232
3234
  return {
3233
3235
  type: "ellipse",
@@ -3247,7 +3249,7 @@ function sphereShadowNode(context, radius) {
3247
3249
  fill: { kind: "solid", color: object.shadowStyle?.color ?? "#000000" },
3248
3250
  stroke: { kind: "none" },
3249
3251
  opacity: object.shadowStyle?.opacity ?? 0.2,
3250
- blur: chunkUHKFJBY5_cjs.finite(object.shadowStyle?.blur, 8),
3252
+ blur: chunkSKGJXCAO_cjs.finite(object.shadowStyle?.blur, 8),
3251
3253
  pointerEvents: "none"
3252
3254
  }
3253
3255
  };
@@ -3257,7 +3259,7 @@ function sphereShadowNode(context, radius) {
3257
3259
  function faceNodes(context, faces, hullClip) {
3258
3260
  const { object, common } = context;
3259
3261
  const noStroke = { ...common.style, stroke: { kind: "none" } };
3260
- const fills = chunkUHKFJBY5_cjs.deriveFaceFills(object.fill ?? "#f8fafc");
3262
+ const fills = chunkSKGJXCAO_cjs.deriveFaceFills(object.fill ?? "#f8fafc");
3261
3263
  const face = (name, offset, points, color) => faceNode(context, name, offset, points, { ...noStroke, fill: { kind: "solid", color }, clip: hullClip });
3262
3264
  return [
3263
3265
  face("top", 0, faces.top, fills.topFill),
@@ -3283,9 +3285,9 @@ function seamsNode(context, faces, hullClip) {
3283
3285
  }
3284
3286
  function buildBox(object, index) {
3285
3287
  const context = isometricContext(object, index);
3286
- const faces = chunkUHKFJBY5_cjs.isometricFaces(object);
3287
- const cornerRadius = Math.max(0, chunkUHKFJBY5_cjs.finite(object.cornerRadius, 8));
3288
- const hullPath = chunkUHKFJBY5_cjs.roundedPolygonPath(silhouette(object), cornerRadius);
3288
+ const faces = chunkSKGJXCAO_cjs.isometricFaces(object);
3289
+ const cornerRadius = Math.max(0, chunkSKGJXCAO_cjs.finite(object.cornerRadius, 8));
3290
+ const hullPath = chunkSKGJXCAO_cjs.roundedPolygonPath(silhouette(object), cornerRadius);
3289
3291
  const hullClip = { type: "path", d: hullPath };
3290
3292
  const groundShadow = groundShadowNode(context, faces.top);
3291
3293
  const seams = object.seams === false ? void 0 : seamsNode(context, faces, hullClip);
@@ -3297,7 +3299,7 @@ function buildBox(object, index) {
3297
3299
 
3298
3300
  // src/renderScene/artifacts/isometric/extruded.ts
3299
3301
  function wallNode(context, side, index, fill2) {
3300
- const color = chunkUHKFJBY5_cjs.shadeFill(fill2, side.light);
3302
+ const color = chunkSKGJXCAO_cjs.shadeFill(fill2, side.light);
3301
3303
  return faceNode(context, `side-${index}`, 0.05 + index * 1e-3, side.points, {
3302
3304
  ...context.common.style,
3303
3305
  stroke: { kind: "solid", color },
@@ -3322,7 +3324,7 @@ function wallEdgesNode(context, side, index) {
3322
3324
  }
3323
3325
  function buildExtruded(object, index, footprint) {
3324
3326
  const context = isometricContext(object, index);
3325
- const { top, sides } = chunkUHKFJBY5_cjs.extrudeFootprint(object, footprint, Math.max(0, chunkUHKFJBY5_cjs.finite(object.cornerRadius, 0)));
3327
+ const { top, sides } = chunkSKGJXCAO_cjs.extrudeFootprint(object, footprint, Math.max(0, chunkSKGJXCAO_cjs.finite(object.cornerRadius, 0)));
3326
3328
  const fill2 = object.fill ?? "#f8fafc";
3327
3329
  const groundShadow = groundShadowNode(context, top);
3328
3330
  const topFace = faceNode(context, "top", 0.2, top, { ...context.common.style, fill: { kind: "solid", color: fill2 } });
@@ -3359,9 +3361,9 @@ function buildSphere(object, index) {
3359
3361
  kind: "linear-gradient",
3360
3362
  angle: 135,
3361
3363
  stops: [
3362
- { offset: 0, color: chunkUHKFJBY5_cjs.shadeFill(fill2, 1.22) },
3364
+ { offset: 0, color: chunkSKGJXCAO_cjs.shadeFill(fill2, 1.22) },
3363
3365
  { offset: 0.5, color: fill2 },
3364
- { offset: 1, color: chunkUHKFJBY5_cjs.shadeFill(fill2, 0.82) }
3366
+ { offset: 1, color: chunkSKGJXCAO_cjs.shadeFill(fill2, 0.82) }
3365
3367
  ]
3366
3368
  }
3367
3369
  },
@@ -3397,12 +3399,12 @@ function buildIsometricObject(object, index) {
3397
3399
  if (object.form === "sphere") {
3398
3400
  return buildSphere(object, index);
3399
3401
  }
3400
- const footprint = chunkUHKFJBY5_cjs.cleanFootprint(object.footprint);
3402
+ const footprint = chunkSKGJXCAO_cjs.cleanFootprint(object.footprint);
3401
3403
  return footprint.length > 0 ? buildExtruded(object, index, footprint) : buildBox(object, index);
3402
3404
  }
3403
3405
  function buildIsometricObjects(objects) {
3404
3406
  return objects.flatMap(
3405
- (object, index) => chunkUHKFJBY5_cjs.tag(
3407
+ (object, index) => chunkSKGJXCAO_cjs.tag(
3406
3408
  buildIsometricObject(object, index),
3407
3409
  "isometric",
3408
3410
  object.id,
@@ -3431,7 +3433,7 @@ function renderEndpointLabel(context, end, labelIndex) {
3431
3433
  if (!label) {
3432
3434
  return [];
3433
3435
  }
3434
- const fontSize = chunkUHKFJBY5_cjs.finite(context.link.style?.fontSize, 10);
3436
+ const fontSize = chunkSKGJXCAO_cjs.finite(context.link.style?.fontSize, 10);
3435
3437
  const position = endpointLabelPosition(context.points, end);
3436
3438
  const width = 90;
3437
3439
  return [
@@ -3445,7 +3447,7 @@ function renderEndpointLabel(context, end, labelIndex) {
3445
3447
  width,
3446
3448
  height: fontSize * 2,
3447
3449
  lines: [label],
3448
- fontFamily: context.link.style?.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT,
3450
+ fontFamily: context.link.style?.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT,
3449
3451
  fontSize,
3450
3452
  fontWeight: "normal",
3451
3453
  color: context.color,
@@ -3475,7 +3477,7 @@ function renderMainLabel(context) {
3475
3477
  width: context.label.width,
3476
3478
  height: context.label.fontSize * 2,
3477
3479
  lines: context.label.lines,
3478
- fontFamily: context.link.style?.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT,
3480
+ fontFamily: context.link.style?.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT,
3479
3481
  fontSize: context.label.fontSize,
3480
3482
  fontWeight: "normal",
3481
3483
  color: context.color,
@@ -3529,10 +3531,10 @@ function linkBounds(points, padding) {
3529
3531
  }
3530
3532
  function labelLayout(link, measureText) {
3531
3533
  const visible = Boolean(link.showText && link.text);
3532
- const fontSize = chunkUHKFJBY5_cjs.finite(link.style?.fontSize, 10);
3534
+ const fontSize = chunkSKGJXCAO_cjs.finite(link.style?.fontSize, 10);
3533
3535
  const width = Math.min(250, Math.max(fontSize * 2, (link.text?.length ?? 0) * fontSize * 0.65 + 10));
3534
- const metrics = measureText?.(link.style?.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT, fontSize);
3535
- const lines = visible ? chunkUHKFJBY5_cjs.wrapText(link.text ?? "", width, fontSize, metrics) : [];
3536
+ const metrics = measureText?.(link.style?.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT, fontSize);
3537
+ const lines = visible ? chunkSKGJXCAO_cjs.wrapText(link.text ?? "", width, fontSize, metrics) : [];
3536
3538
  return { visible, fontSize, width, height: lines.length * fontSize * 1.4, lines };
3537
3539
  }
3538
3540
  function linkStyle(item, strokeWidth, color, dash) {
@@ -3549,26 +3551,26 @@ function linkStyle(item, strokeWidth, color, dash) {
3549
3551
  dash,
3550
3552
  lineCap: "round",
3551
3553
  lineJoin: "round",
3552
- opacity: chunkUHKFJBY5_cjs.finite(link.style?.opacity, 1),
3554
+ opacity: chunkSKGJXCAO_cjs.finite(link.style?.opacity, 1),
3553
3555
  shadow: resolveShadow(link.style?.shadow)
3554
3556
  };
3555
3557
  }
3556
3558
  function createLinkRenderContext(item, index, measureText) {
3557
3559
  const { link, from, to } = item;
3558
3560
  const pathType = link.style?.pathType ?? "orthogonal";
3559
- const { points, segments } = chunkUHKFJBY5_cjs.calculateLinkRoute(link, from, to, pathType);
3560
- const strokeWidth = chunkUHKFJBY5_cjs.finite(link.style?.strokeWidth, 2);
3561
+ const { points, segments } = chunkSKGJXCAO_cjs.calculateLinkRoute(link, from, to, pathType);
3562
+ const strokeWidth = chunkSKGJXCAO_cjs.finite(link.style?.strokeWidth, 2);
3561
3563
  const color = getLinkStrokeColor(link.style?.color) || "#64748b";
3562
3564
  const label = labelLayout(link, measureText);
3563
3565
  const contentDash = getDashArray(strokeWidth, link.style?.strokeStyle ?? "solid");
3564
- const gap = label.visible && !contentDash ? chunkUHKFJBY5_cjs.labelGapDash(points, pathType, label.width, label.height) : null;
3566
+ const gap = label.visible && !contentDash ? chunkSKGJXCAO_cjs.labelGapDash(points, pathType, label.width, label.height) : null;
3565
3567
  const dash = gap ? [gap.dashBefore, gap.gapLength, 1e6] : contentDash;
3566
3568
  return {
3567
3569
  link,
3568
3570
  pathType,
3569
3571
  points,
3570
3572
  segments,
3571
- midpoint: chunkUHKFJBY5_cjs.getLineMidpoint(points, pathType, from, to),
3573
+ midpoint: chunkSKGJXCAO_cjs.getLineMidpoint(points, pathType, from, to),
3572
3574
  strokeWidth,
3573
3575
  bounds: linkBounds(points, strokeWidth + 14),
3574
3576
  color,
@@ -3614,7 +3616,7 @@ function pathData2(points, pathType, segments, strokeWidth) {
3614
3616
  return `M ${points[0]} ${points[1]} C ${points[2]} ${points[3]} ${points[4]} ${points[5]} ${points[6]} ${points[7]}`;
3615
3617
  }
3616
3618
  if (pathType === "orthogonal" && segments.length > 0) {
3617
- return chunkUHKFJBY5_cjs.roundedOrthogonalPathData(segments, Math.max(16, strokeWidth * 4));
3619
+ return chunkSKGJXCAO_cjs.roundedOrthogonalPathData(segments, Math.max(16, strokeWidth * 4));
3618
3620
  }
3619
3621
  return polylinePathData(points);
3620
3622
  }
@@ -3718,7 +3720,7 @@ function buildLink(item, index, measureText) {
3718
3720
  }
3719
3721
  function buildLinks(links, measureText) {
3720
3722
  return links.flatMap(
3721
- (item, index) => chunkUHKFJBY5_cjs.tag(
3723
+ (item, index) => chunkSKGJXCAO_cjs.tag(
3722
3724
  buildLink(item, index, measureText),
3723
3725
  "link",
3724
3726
  item.link.id,
@@ -3733,7 +3735,7 @@ function buildFreeformPath(path, index) {
3733
3735
  if (path.isVisible === false || path.points.length < 2) {
3734
3736
  return [];
3735
3737
  }
3736
- const strokeWidth = chunkUHKFJBY5_cjs.finite(path.strokeWidth, 2);
3738
+ const strokeWidth = chunkSKGJXCAO_cjs.finite(path.strokeWidth, 2);
3737
3739
  const extra = strokeWidth + 12;
3738
3740
  const bounds = {
3739
3741
  minX: Math.min(...path.points.map((point) => point.x)) - extra,
@@ -3741,7 +3743,7 @@ function buildFreeformPath(path, index) {
3741
3743
  maxX: Math.max(...path.points.map((point) => point.x)) + extra,
3742
3744
  maxY: Math.max(...path.points.map((point) => point.y)) + extra
3743
3745
  };
3744
- const tension = chunkUHKFJBY5_cjs.finite(path.tension, 0);
3746
+ const tension = chunkSKGJXCAO_cjs.finite(path.tension, 0);
3745
3747
  const closed = path.closed === true;
3746
3748
  return [
3747
3749
  {
@@ -3749,7 +3751,7 @@ function buildFreeformPath(path, index) {
3749
3751
  id: `path-${path.id}`,
3750
3752
  order: 3e4 + index,
3751
3753
  bounds,
3752
- d: chunkUHKFJBY5_cjs.freeformPathData({ points: path.points, tension, closed }),
3754
+ d: chunkSKGJXCAO_cjs.freeformPathData({ points: path.points, tension, closed }),
3753
3755
  markerStart: path.startMarker,
3754
3756
  markerEnd: path.endMarker,
3755
3757
  detail: {
@@ -3765,13 +3767,13 @@ function buildFreeformPath(path, index) {
3765
3767
  dash: path.dash?.length ? path.dash : void 0,
3766
3768
  lineCap: "round",
3767
3769
  lineJoin: "round",
3768
- opacity: chunkUHKFJBY5_cjs.finite(path.opacity, 1)
3770
+ opacity: chunkSKGJXCAO_cjs.finite(path.opacity, 1)
3769
3771
  }
3770
3772
  }
3771
3773
  ];
3772
3774
  }
3773
3775
  function buildFreeformPaths(paths) {
3774
- return paths.flatMap((path, index) => chunkUHKFJBY5_cjs.tag(buildFreeformPath(path, index), "path", path.id, "path", "Path"));
3776
+ return paths.flatMap((path, index) => chunkSKGJXCAO_cjs.tag(buildFreeformPath(path, index), "path", path.id, "path", "Path"));
3775
3777
  }
3776
3778
 
3777
3779
  // src/renderScene/artifacts/shape/geometry/base.ts
@@ -3787,7 +3789,7 @@ function shapeNodeBase(context) {
3787
3789
 
3788
3790
  // src/renderScene/artifacts/shape/geometry/simple.ts
3789
3791
  function renderPath(context) {
3790
- const path = chunkUHKFJBY5_cjs.localShapePath(context.shape.shapeType, context.x, context.y, context.width, context.height);
3792
+ const path = chunkSKGJXCAO_cjs.localShapePath(context.shape.shapeType, context.x, context.y, context.width, context.height);
3791
3793
  if (!path) {
3792
3794
  return [];
3793
3795
  }
@@ -3803,7 +3805,7 @@ function renderBoundedPath(context) {
3803
3805
  }));
3804
3806
  }
3805
3807
  function renderRectangle(context) {
3806
- const rx = context.shape.shapeType === "pill" ? chunkUHKFJBY5_cjs.pillCornerRadius(context.width, context.height) : context.shape.shapeType === "rounded_rectangle" ? chunkUHKFJBY5_cjs.finite(context.shape.cornerRadius, 8) : 0;
3808
+ const rx = context.shape.shapeType === "pill" ? chunkSKGJXCAO_cjs.pillCornerRadius(context.width, context.height) : context.shape.shapeType === "rounded_rectangle" ? chunkSKGJXCAO_cjs.finite(context.shape.cornerRadius, 8) : 0;
3807
3809
  return [
3808
3810
  {
3809
3811
  ...shapeNodeBase(context),
@@ -3832,7 +3834,7 @@ function renderSymbol(context) {
3832
3834
  if (!context.shape.symbol || context.shape.symbol.points.length < 2) {
3833
3835
  return renderRectangle(context);
3834
3836
  }
3835
- const tension = chunkUHKFJBY5_cjs.finite(context.shape.symbol.tension, 0);
3837
+ const tension = chunkSKGJXCAO_cjs.finite(context.shape.symbol.tension, 0);
3836
3838
  const points = context.shape.symbol.points.map(([x, y]) => ({
3837
3839
  x: context.x + x * context.width,
3838
3840
  y: context.y + y * context.height
@@ -3841,7 +3843,7 @@ function renderSymbol(context) {
3841
3843
  {
3842
3844
  ...shapeNodeBase(context),
3843
3845
  type: "path",
3844
- d: chunkUHKFJBY5_cjs.freeformPathData({ points, tension, closed: true }),
3846
+ d: chunkSKGJXCAO_cjs.freeformPathData({ points, tension, closed: true }),
3845
3847
  rotationCenter: context.rotationCenter,
3846
3848
  detail: {
3847
3849
  of: "symbolGeometry",
@@ -3978,7 +3980,7 @@ function renderShapeShaderSurface(context) {
3978
3980
  id: `${context.id}-shader`,
3979
3981
  type: "shader-surface",
3980
3982
  order: context.order,
3981
- bounds: chunkUHKFJBY5_cjs.rotatedBounds(surfaceBounds, context.rotation, 0),
3983
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds(surfaceBounds, context.rotation, 0),
3982
3984
  ...surfaceBounds,
3983
3985
  rotation: context.rotation,
3984
3986
  shader: context.shape.shader,
@@ -4048,24 +4050,24 @@ function shapeDash(shape, strokeWidth) {
4048
4050
  }
4049
4051
  function shapeStyle(shape, diagnostics) {
4050
4052
  const defaults = shapeDefaults(shape, diagnostics);
4051
- const strokeWidth = chunkUHKFJBY5_cjs.finite(shape.strokeWidth, defaults.strokeWidth);
4053
+ const strokeWidth = chunkSKGJXCAO_cjs.finite(shape.strokeWidth, defaults.strokeWidth);
4052
4054
  const shadow = shape.shadowStyle ?? (shape.hasShadow ? { enabled: true, color: "#000000", opacity: 0.25, blur: 10, angle: 45, distance: 5 } : void 0);
4053
- const angle = chunkUHKFJBY5_cjs.finite(shadow?.angle, 45) * Math.PI / 180;
4055
+ const angle = chunkSKGJXCAO_cjs.finite(shadow?.angle, 45) * Math.PI / 180;
4054
4056
  return {
4055
- fill: chunkUHKFJBY5_cjs.paint(shape.fillColor, diagnostics, shape.id),
4056
- stroke: chunkUHKFJBY5_cjs.paint(shape.strokeColor, diagnostics, shape.id),
4057
+ fill: chunkSKGJXCAO_cjs.paint(shape.fillColor, diagnostics, shape.id),
4058
+ stroke: chunkSKGJXCAO_cjs.paint(shape.strokeColor, diagnostics, shape.id),
4057
4059
  strokeWidth,
4058
4060
  dash: shapeDash(shape, strokeWidth),
4059
4061
  lineCap: shape.strokeStyle === "dotted" ? "round" : "butt",
4060
- opacity: chunkUHKFJBY5_cjs.finite(shape.opacity, defaults.opacity),
4062
+ opacity: chunkSKGJXCAO_cjs.finite(shape.opacity, defaults.opacity),
4061
4063
  blur: shape.blur !== void 0 && shape.blur > 0 ? shape.blur : void 0,
4062
4064
  blend: shape.blend,
4063
4065
  shadow: shadow?.enabled ? {
4064
4066
  color: shadow.color ?? "#000000",
4065
- opacity: chunkUHKFJBY5_cjs.finite(shadow.opacity, 0.25),
4066
- blur: chunkUHKFJBY5_cjs.finite(shadow.blur, 10),
4067
- dx: Math.cos(angle) * chunkUHKFJBY5_cjs.finite(shadow.distance, 5),
4068
- dy: Math.sin(angle) * chunkUHKFJBY5_cjs.finite(shadow.distance, 5)
4067
+ opacity: chunkSKGJXCAO_cjs.finite(shadow.opacity, 0.25),
4068
+ blur: chunkSKGJXCAO_cjs.finite(shadow.blur, 10),
4069
+ dx: Math.cos(angle) * chunkSKGJXCAO_cjs.finite(shadow.distance, 5),
4070
+ dy: Math.sin(angle) * chunkSKGJXCAO_cjs.finite(shadow.distance, 5)
4069
4071
  } : void 0
4070
4072
  };
4071
4073
  }
@@ -4141,11 +4143,11 @@ function renderShapeText(context, strokeWidth, measureText) {
4141
4143
  if (!shape.text) {
4142
4144
  return null;
4143
4145
  }
4144
- const fontSize = chunkUHKFJBY5_cjs.finite(shape.fontSize, shapeDefaults(shape, []).fontSize);
4146
+ const fontSize = chunkSKGJXCAO_cjs.finite(shape.fontSize, shapeDefaults(shape, []).fontSize);
4145
4147
  const padding = shape.isText ? 0 : Math.max(8, strokeWidth * 2);
4146
- const area = shape.shapeType === "person" ? chunkUHKFJBY5_cjs.personLabelArea(x, y, width, height) : { x, y, width, height };
4148
+ const area = shape.shapeType === "person" ? chunkSKGJXCAO_cjs.personLabelArea(x, y, width, height) : { x, y, width, height };
4147
4149
  const textWidth = Math.max(0, area.width - padding * 2);
4148
- const fontFamily2 = shape.fontFamily || chunkUHKFJBY5_cjs.DEFAULT_FONT;
4150
+ const fontFamily2 = shape.fontFamily || chunkSKGJXCAO_cjs.DEFAULT_FONT;
4149
4151
  const metrics = measureText?.(fontFamily2, fontSize);
4150
4152
  const textNode = {
4151
4153
  type: "text",
@@ -4156,7 +4158,7 @@ function renderShapeText(context, strokeWidth, measureText) {
4156
4158
  y: area.y + padding,
4157
4159
  width: textWidth,
4158
4160
  height: Math.max(0, area.height - padding * 2),
4159
- lines: chunkUHKFJBY5_cjs.wrapText(shape.text, textWidth, fontSize, metrics),
4161
+ lines: chunkSKGJXCAO_cjs.wrapText(shape.text, textWidth, fontSize, metrics),
4160
4162
  fontFamily: fontFamily2,
4161
4163
  fontSize,
4162
4164
  fontWeight: shape.fontWeight ?? "normal",
@@ -4164,12 +4166,12 @@ function renderShapeText(context, strokeWidth, measureText) {
4164
4166
  color: shape.textColor || "#111827",
4165
4167
  align: shape.textAlign ?? "center",
4166
4168
  verticalAlign: shape.textVerticalAlign ?? "middle",
4167
- lineHeight: chunkUHKFJBY5_cjs.finite(shape.lineHeight, 1.3),
4169
+ lineHeight: chunkSKGJXCAO_cjs.finite(shape.lineHeight, 1.3),
4168
4170
  rotation,
4169
4171
  rotationCenter
4170
4172
  };
4171
4173
  if (hasBoldMarkup(shape.text)) {
4172
- const { measure, spaceWidth } = metrics ?? chunkUHKFJBY5_cjs.heuristicRichMeasure(fontSize);
4174
+ const { measure, spaceWidth } = metrics ?? chunkSKGJXCAO_cjs.heuristicRichMeasure(fontSize);
4173
4175
  textNode.richLines = wrapRichText(shape.text, textWidth, measure, spaceWidth);
4174
4176
  }
4175
4177
  return textNode;
@@ -4208,19 +4210,19 @@ function renderDoubleStroke(context, strokeWidth) {
4208
4210
  return nodes;
4209
4211
  }
4210
4212
  function createRenderContext(shape, index, diagnostics) {
4211
- const x = chunkUHKFJBY5_cjs.finite(shape.x, 0);
4212
- const y = chunkUHKFJBY5_cjs.finite(shape.y, 0);
4213
- const width = Math.max(0, chunkUHKFJBY5_cjs.finite(shape.width, 100));
4214
- const height = Math.max(0, chunkUHKFJBY5_cjs.finite(shape.height, 100));
4215
- const rotation = chunkUHKFJBY5_cjs.finite(shape.rotation, 0);
4216
- const strokeWidth = chunkUHKFJBY5_cjs.finite(shape.strokeWidth, 2);
4213
+ const x = chunkSKGJXCAO_cjs.finite(shape.x, 0);
4214
+ const y = chunkSKGJXCAO_cjs.finite(shape.y, 0);
4215
+ const width = Math.max(0, chunkSKGJXCAO_cjs.finite(shape.width, 100));
4216
+ const height = Math.max(0, chunkSKGJXCAO_cjs.finite(shape.height, 100));
4217
+ const rotation = chunkSKGJXCAO_cjs.finite(shape.rotation, 0);
4218
+ const strokeWidth = chunkSKGJXCAO_cjs.finite(shape.strokeWidth, 2);
4217
4219
  return {
4218
4220
  strokeWidth,
4219
4221
  context: {
4220
4222
  shape,
4221
4223
  id: `shape-${shape.id}`,
4222
4224
  order: 1e4 + index,
4223
- bounds: chunkUHKFJBY5_cjs.rotatedBounds({ x, y, width, height }, rotation, strokeWidth + (shape.hasShadow ? 20 : 2)),
4225
+ bounds: chunkSKGJXCAO_cjs.rotatedBounds({ x, y, width, height }, rotation, strokeWidth + (shape.hasShadow ? 20 : 2)),
4224
4226
  rotation,
4225
4227
  rotationCenter: { x: x + width / 2, y: y + height / 2 },
4226
4228
  style: shapeStyle(shape, diagnostics),
@@ -4270,7 +4272,7 @@ function buildShape(shape, index, diagnostics, measureText) {
4270
4272
  }
4271
4273
  function buildShapes(shapes, diagnostics, measureText) {
4272
4274
  return shapes.flatMap(
4273
- (shape, index) => chunkUHKFJBY5_cjs.tag(
4275
+ (shape, index) => chunkSKGJXCAO_cjs.tag(
4274
4276
  buildShape(shape, index, diagnostics, measureText),
4275
4277
  "shape",
4276
4278
  shape.id,
@@ -4287,7 +4289,7 @@ function buildXAxisLabel(chart, layout, order) {
4287
4289
  return null;
4288
4290
  }
4289
4291
  return {
4290
- ...chunkUHKFJBY5_cjs.chartText({
4292
+ ...chunkSKGJXCAO_cjs.chartText({
4291
4293
  role: "axis",
4292
4294
  id: `chart-x-label-${chart.id}`,
4293
4295
  order,
@@ -4297,7 +4299,7 @@ function buildXAxisLabel(chart, layout, order) {
4297
4299
  chart,
4298
4300
  align: "center"
4299
4301
  }),
4300
- prop: chunkUHKFJBY5_cjs.axisLabelProp("x")
4302
+ prop: chunkSKGJXCAO_cjs.axisLabelProp("x")
4301
4303
  };
4302
4304
  }
4303
4305
  function buildYAxisLabel(chart, layout, order) {
@@ -4305,7 +4307,7 @@ function buildYAxisLabel(chart, layout, order) {
4305
4307
  return null;
4306
4308
  }
4307
4309
  return {
4308
- ...chunkUHKFJBY5_cjs.chartText({
4310
+ ...chunkSKGJXCAO_cjs.chartText({
4309
4311
  role: "axis",
4310
4312
  id: `chart-y-label-${chart.id}`,
4311
4313
  order,
@@ -4321,7 +4323,7 @@ function buildYAxisLabel(chart, layout, order) {
4321
4323
  align: "center",
4322
4324
  rotation: -90
4323
4325
  }),
4324
- prop: chunkUHKFJBY5_cjs.axisLabelProp("y")
4326
+ prop: chunkSKGJXCAO_cjs.axisLabelProp("y")
4325
4327
  };
4326
4328
  }
4327
4329
  function buildAxisLabels(chart, layout, order) {
@@ -4344,7 +4346,7 @@ function buildBoxplotSeriesYAxisTicks(chart, layout, order) {
4344
4346
  return chart.series.map((series, index) => {
4345
4347
  const centerY = layout.plot.y + (index + 0.5) * slotWidth;
4346
4348
  return {
4347
- ...chunkUHKFJBY5_cjs.chartText({
4349
+ ...chunkSKGJXCAO_cjs.chartText({
4348
4350
  role: "axis",
4349
4351
  id: `chart-y-tick-${chart.id}-${index}`,
4350
4352
  order: order + index,
@@ -4354,7 +4356,7 @@ function buildBoxplotSeriesYAxisTicks(chart, layout, order) {
4354
4356
  chart,
4355
4357
  align: "right"
4356
4358
  }),
4357
- prop: chunkUHKFJBY5_cjs.seriesLabelProp(series.id)
4359
+ prop: chunkSKGJXCAO_cjs.seriesLabelProp(series.id)
4358
4360
  };
4359
4361
  });
4360
4362
  }
@@ -4380,7 +4382,7 @@ function isStackedLegendPosition(position) {
4380
4382
  return position === "bottomLeft" || position === "bottomRight";
4381
4383
  }
4382
4384
  function legendItemWidths(chart) {
4383
- return legendSeries(chart).map((item) => Math.max(42, item.label.length * chunkUHKFJBY5_cjs.finite(chart.fontSize, 12) * 0.58 + 22));
4385
+ return legendSeries(chart).map((item) => Math.max(42, item.label.length * chunkSKGJXCAO_cjs.finite(chart.fontSize, 12) * 0.58 + 22));
4384
4386
  }
4385
4387
  function stackedLegendColumnWidth(chart) {
4386
4388
  const widths = legendItemWidths(chart);
@@ -4433,9 +4435,9 @@ function renderLegendItem(render2, item) {
4433
4435
  }
4434
4436
  function createLegendSwatch(render2, item) {
4435
4437
  const { chart, bounds, diagnostics } = render2;
4436
- const fallback = chunkUHKFJBY5_cjs.CHART_COLORS[item.seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
4438
+ const fallback = chunkSKGJXCAO_cjs.CHART_COLORS[item.seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
4437
4439
  const solidOnly = chart.chartType === "line";
4438
- const color = solidOnly ? chunkUHKFJBY5_cjs.representativeColor(item.series.color, fallback) : item.series.color ?? fallback;
4440
+ const color = solidOnly ? chunkSKGJXCAO_cjs.representativeColor(item.series.color, fallback) : item.series.color ?? fallback;
4439
4441
  return {
4440
4442
  type: "rect",
4441
4443
  id: `chart-legend-swatch-${chart.id}-${item.series.id}`,
@@ -4446,16 +4448,16 @@ function createLegendSwatch(render2, item) {
4446
4448
  width: 10,
4447
4449
  height: 10,
4448
4450
  rx: 3,
4449
- prop: chunkUHKFJBY5_cjs.seriesColorProp(item.series.id),
4451
+ prop: chunkSKGJXCAO_cjs.seriesColorProp(item.series.id),
4450
4452
  propKind: "color",
4451
4453
  propSolidOnly: solidOnly,
4452
- style: { fill: chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id) }
4454
+ style: { fill: chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id) }
4453
4455
  };
4454
4456
  }
4455
4457
  function createLegendLabel(render2, item) {
4456
4458
  const { chart, bounds } = render2;
4457
4459
  return {
4458
- ...chunkUHKFJBY5_cjs.chartText({
4460
+ ...chunkSKGJXCAO_cjs.chartText({
4459
4461
  role: "legend",
4460
4462
  id: `chart-legend-${chart.id}-${item.series.id}`,
4461
4463
  order: item.order + 1,
@@ -4464,7 +4466,7 @@ function createLegendLabel(render2, item) {
4464
4466
  text: item.series.label,
4465
4467
  chart
4466
4468
  }),
4467
- prop: chunkUHKFJBY5_cjs.seriesLabelProp(item.series.id)
4469
+ prop: chunkSKGJXCAO_cjs.seriesLabelProp(item.series.id)
4468
4470
  };
4469
4471
  }
4470
4472
 
@@ -4483,19 +4485,19 @@ function hasCartesianDecorations(chart) {
4483
4485
  return !CHARTS_WITHOUT_CARTESIAN_DECORATIONS.has(chart.chartType);
4484
4486
  }
4485
4487
  function tickOffset(chart) {
4486
- return hasCartesianDecorations(chart) ? Math.max(0, chunkUHKFJBY5_cjs.finite(chart.tickLength, 0)) : 0;
4488
+ return hasCartesianDecorations(chart) ? Math.max(0, chunkSKGJXCAO_cjs.finite(chart.tickLength, 0)) : 0;
4487
4489
  }
4488
4490
  function xLabelOffset(chart) {
4489
- return tickOffset(chart) + (hasCartesianDecorations(chart) ? Math.max(0, chunkUHKFJBY5_cjs.finite(chart.xLabelGap, 0)) : 0);
4491
+ return tickOffset(chart) + (hasCartesianDecorations(chart) ? Math.max(0, chunkSKGJXCAO_cjs.finite(chart.xLabelGap, 0)) : 0);
4490
4492
  }
4491
4493
  function yLabelOffset(chart) {
4492
- return tickOffset(chart) + (hasCartesianDecorations(chart) ? Math.max(0, chunkUHKFJBY5_cjs.finite(chart.yLabelGap, 0)) : 0);
4494
+ return tickOffset(chart) + (hasCartesianDecorations(chart) ? Math.max(0, chunkSKGJXCAO_cjs.finite(chart.yLabelGap, 0)) : 0);
4493
4495
  }
4494
4496
  function isHorizontalBoxplot(chart) {
4495
4497
  return chart.chartType === "boxplot" && chart.config?.orientation === "horizontal";
4496
4498
  }
4497
4499
  function boxplotCategoryLabelWidth(chart) {
4498
- const fontSize = chunkUHKFJBY5_cjs.finite(chart.fontSize, 12);
4500
+ const fontSize = chunkSKGJXCAO_cjs.finite(chart.fontSize, 12);
4499
4501
  const longest = Math.max(0, ...chart.series.map((series) => (series.label || series.id).length));
4500
4502
  return longest * fontSize * 0.58 + 16;
4501
4503
  }
@@ -4507,18 +4509,18 @@ function treemapSideLegendSide(chart, showLegend) {
4507
4509
  return chart.legendPosition === "left" ? "left" : chart.legendPosition === "right" ? "right" : null;
4508
4510
  }
4509
4511
  function barCategoryLabelWidth(chart) {
4510
- const fontSize = chunkUHKFJBY5_cjs.finite(chart.axisFontSize ?? chart.fontSize, 12);
4512
+ const fontSize = chunkSKGJXCAO_cjs.finite(chart.axisFontSize ?? chart.fontSize, 12);
4511
4513
  const categories = chart.config?.categories ?? [];
4512
4514
  return Math.max(0, ...categories.map((category) => category.length)) * fontSize * 0.58 + 16;
4513
4515
  }
4514
4516
  function leftLabelWidth(chart) {
4515
- if (chart.axisLabelSpace && chart.axisLabelSpace > 0 && (isHorizontalBoxplot(chart) || chunkUHKFJBY5_cjs.isHorizontalBar(chart))) {
4517
+ if (chart.axisLabelSpace && chart.axisLabelSpace > 0 && (isHorizontalBoxplot(chart) || chunkSKGJXCAO_cjs.isHorizontalBar(chart))) {
4516
4518
  return chart.axisLabelSpace;
4517
4519
  }
4518
4520
  if (isHorizontalBoxplot(chart)) {
4519
4521
  return boxplotCategoryLabelWidth(chart);
4520
4522
  }
4521
- if (chunkUHKFJBY5_cjs.isHorizontalBar(chart)) {
4523
+ if (chunkSKGJXCAO_cjs.isHorizontalBar(chart)) {
4522
4524
  return chart.categoryAlign === "left" || chart.categoryAlign === "inside" ? 20 : barCategoryLabelWidth(chart);
4523
4525
  }
4524
4526
  if (chart.showValueAxis === false) {
@@ -4527,12 +4529,12 @@ function leftLabelWidth(chart) {
4527
4529
  return chart.axisY.label ? 60 : 46;
4528
4530
  }
4529
4531
  function tiltedBottomRoom(chart) {
4530
- const tilt = chunkUHKFJBY5_cjs.labelTilt(chart);
4532
+ const tilt = chunkSKGJXCAO_cjs.labelTilt(chart);
4531
4533
  if (tilt <= 0) {
4532
4534
  return 0;
4533
4535
  }
4534
- const labels = chart.chartType === "bar" && !chunkUHKFJBY5_cjs.isHorizontalBar(chart) ? chart.config?.categories ?? [] : chart.chartType === "boxplot" && !isHorizontalBoxplot(chart) ? chart.series.map((series) => series.label || series.id) : [];
4535
- return labels.length > 0 ? Math.max(0, chunkUHKFJBY5_cjs.tiltedLabelRoom(chart, labels, tilt) - 18) : 0;
4536
+ const labels = chart.chartType === "bar" && !chunkSKGJXCAO_cjs.isHorizontalBar(chart) ? chart.config?.categories ?? [] : chart.chartType === "boxplot" && !isHorizontalBoxplot(chart) ? chart.series.map((series) => series.label || series.id) : [];
4537
+ return labels.length > 0 ? Math.max(0, chunkSKGJXCAO_cjs.tiltedLabelRoom(chart, labels, tilt) - 18) : 0;
4536
4538
  }
4537
4539
  function legendPlaceOf(chart) {
4538
4540
  const showLegend = chart.showLegend !== false;
@@ -4557,14 +4559,14 @@ function padRightOf(legend) {
4557
4559
  }
4558
4560
  function padBottomOf(chart, showLabels, legend) {
4559
4561
  const valueRow = chart.chartType === "bar" && chart.config?.showBarLabels === true && chart.config.barLabelPosition === "axis";
4560
- const horizontalValueAxis = chunkUHKFJBY5_cjs.isHorizontalBar(chart) && chart.showValueAxis !== false;
4561
- const base = showLabels ? chunkUHKFJBY5_cjs.isHorizontalBar(chart) ? horizontalValueAxis ? 34 : 12 : (chart.axisX.label ? 52 : 34) + (valueRow ? 18 : 0) : 12;
4562
+ const horizontalValueAxis = chunkSKGJXCAO_cjs.isHorizontalBar(chart) && chart.showValueAxis !== false;
4563
+ const base = showLabels ? chunkSKGJXCAO_cjs.isHorizontalBar(chart) ? horizontalValueAxis ? 34 : 12 : (chart.axisX.label ? 52 : 34) + (valueRow ? 18 : 0) : 12;
4562
4564
  const hasColorBar = chart.chartType === "field" && legend.showLegend && Boolean(chart.config?.scale?.stops.length);
4563
4565
  const legendInRow = legend.hasItems && !legend.atTop && !legend.stacked;
4564
4566
  return xLabelOffset(chart) + base + (showLabels ? tiltedBottomRoom(chart) : 0) + (hasColorBar ? 44 : 0) + (legendInRow ? 16 + LEGEND_ROW_HEIGHT : 0);
4565
4567
  }
4566
4568
  function padTopOf(chart, legend) {
4567
- const titleHeight = chart.title ? Math.max(44, 20 + chunkUHKFJBY5_cjs.finite(chart.titleSize, 14) * 1.6) : 0;
4569
+ const titleHeight = chart.title ? Math.max(44, 20 + chunkSKGJXCAO_cjs.finite(chart.titleSize, 14) * 1.6) : 0;
4568
4570
  return titleHeight || (legend.atTop && legend.hasItems ? 44 : 24);
4569
4571
  }
4570
4572
  function decorations(chart) {
@@ -4575,9 +4577,9 @@ function decorations(chart) {
4575
4577
  const padBottom = padBottomOf(chart, showLabels, legend);
4576
4578
  const padTop = padTopOf(chart, legend);
4577
4579
  return {
4578
- bounds: chunkUHKFJBY5_cjs.boxBounds(
4580
+ bounds: chunkSKGJXCAO_cjs.boxBounds(
4579
4581
  { x: chart.x, y: chart.y, width: chart.width, height: chart.height },
4580
- chunkUHKFJBY5_cjs.finite(chart.strokeWidth, 1) + 2
4582
+ chunkSKGJXCAO_cjs.finite(chart.strokeWidth, 1) + 2
4581
4583
  ),
4582
4584
  plot: {
4583
4585
  x: chart.x + padLeft,
@@ -4599,26 +4601,26 @@ function categoryLabels(chart, count) {
4599
4601
  return Array.from({ length: count }, (_value, index) => String(index + 1));
4600
4602
  }
4601
4603
  function buildCategoricalXAxisTicks(chart, layout, order) {
4602
- const count = chunkUHKFJBY5_cjs.barCategoryCount(chart);
4604
+ const count = chunkSKGJXCAO_cjs.barCategoryCount(chart);
4603
4605
  const slotWidth = layout.plot.width / count;
4604
4606
  const labels = categoryLabels(chart, count);
4605
4607
  const editable = Boolean(chart.config?.categories?.length);
4606
- const tilt = chunkUHKFJBY5_cjs.labelTilt(chart);
4608
+ const tilt = chunkSKGJXCAO_cjs.labelTilt(chart);
4607
4609
  const left = chart.categoryAlign === "left";
4608
4610
  const groupGap = left ? Math.min(
4609
- Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.barGroupGap, 8)),
4611
+ Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.barGroupGap, 8)),
4610
4612
  Math.max(0, slotWidth - 1)
4611
4613
  ) : 0;
4612
4614
  return Array.from({ length: count }, (_value, index) => {
4613
4615
  const centerX = layout.plot.x + (index + 0.5) * slotWidth;
4614
4616
  if (tilt > 0) {
4615
4617
  const text = labels[index] ?? String(index + 1);
4616
- const { frame, rotation } = chunkUHKFJBY5_cjs.labelBelowFrame(chart, text, tilt, {
4618
+ const { frame, rotation } = chunkSKGJXCAO_cjs.labelBelowFrame(chart, text, tilt, {
4617
4619
  x: centerX,
4618
4620
  y: layout.plot.y + layout.plot.height + 4 + xLabelOffset(chart)
4619
4621
  });
4620
4622
  return {
4621
- ...chunkUHKFJBY5_cjs.chartText({
4623
+ ...chunkSKGJXCAO_cjs.chartText({
4622
4624
  role: "axis",
4623
4625
  id: `chart-x-tick-${chart.id}-${index}`,
4624
4626
  order: order + index,
@@ -4629,11 +4631,11 @@ function buildCategoricalXAxisTicks(chart, layout, order) {
4629
4631
  align: "right",
4630
4632
  rotation
4631
4633
  }),
4632
- prop: editable ? chunkUHKFJBY5_cjs.categoryProp(index) : void 0
4634
+ prop: editable ? chunkSKGJXCAO_cjs.categoryProp(index) : void 0
4633
4635
  };
4634
4636
  }
4635
4637
  return {
4636
- ...chunkUHKFJBY5_cjs.chartText({
4638
+ ...chunkSKGJXCAO_cjs.chartText({
4637
4639
  role: "axis",
4638
4640
  id: `chart-x-tick-${chart.id}-${index}`,
4639
4641
  order: order + index,
@@ -4648,24 +4650,24 @@ function buildCategoricalXAxisTicks(chart, layout, order) {
4648
4650
  chart,
4649
4651
  align: left ? "left" : "center"
4650
4652
  }),
4651
- prop: editable ? chunkUHKFJBY5_cjs.categoryProp(index) : void 0
4653
+ prop: editable ? chunkSKGJXCAO_cjs.categoryProp(index) : void 0
4652
4654
  };
4653
4655
  });
4654
4656
  }
4655
4657
  function buildSeriesXAxisTicks(chart, layout, order) {
4656
4658
  const count = Math.max(1, chart.series.length);
4657
4659
  const slotWidth = layout.plot.width / count;
4658
- const tilt = chunkUHKFJBY5_cjs.labelTilt(chart);
4660
+ const tilt = chunkSKGJXCAO_cjs.labelTilt(chart);
4659
4661
  return chart.series.map((series, index) => {
4660
4662
  const centerX = layout.plot.x + (index + 0.5) * slotWidth;
4661
4663
  if (tilt > 0) {
4662
4664
  const text = series.label || series.id;
4663
- const { frame, rotation } = chunkUHKFJBY5_cjs.labelBelowFrame(chart, text, tilt, {
4665
+ const { frame, rotation } = chunkSKGJXCAO_cjs.labelBelowFrame(chart, text, tilt, {
4664
4666
  x: centerX,
4665
4667
  y: layout.plot.y + layout.plot.height + 4 + xLabelOffset(chart)
4666
4668
  });
4667
4669
  return {
4668
- ...chunkUHKFJBY5_cjs.chartText({
4670
+ ...chunkSKGJXCAO_cjs.chartText({
4669
4671
  role: "axis",
4670
4672
  id: `chart-x-tick-${chart.id}-${index}`,
4671
4673
  order: order + index,
@@ -4676,11 +4678,11 @@ function buildSeriesXAxisTicks(chart, layout, order) {
4676
4678
  align: "right",
4677
4679
  rotation
4678
4680
  }),
4679
- prop: chunkUHKFJBY5_cjs.seriesLabelProp(series.id)
4681
+ prop: chunkSKGJXCAO_cjs.seriesLabelProp(series.id)
4680
4682
  };
4681
4683
  }
4682
4684
  return {
4683
- ...chunkUHKFJBY5_cjs.chartText({
4685
+ ...chunkSKGJXCAO_cjs.chartText({
4684
4686
  role: "axis",
4685
4687
  id: `chart-x-tick-${chart.id}-${index}`,
4686
4688
  order: order + index,
@@ -4695,16 +4697,16 @@ function buildSeriesXAxisTicks(chart, layout, order) {
4695
4697
  chart,
4696
4698
  align: "center"
4697
4699
  }),
4698
- prop: chunkUHKFJBY5_cjs.seriesLabelProp(series.id)
4700
+ prop: chunkSKGJXCAO_cjs.seriesLabelProp(series.id)
4699
4701
  };
4700
4702
  });
4701
4703
  }
4702
4704
 
4703
4705
  // src/renderScene/charts/decorations/numericXAxis.ts
4704
4706
  function buildNumericXAxisTicks(chart, layout, order) {
4705
- return chunkUHKFJBY5_cjs.chartTicks(chart.axisX).map((tick, index) => {
4706
- const x = layout.plot.x + chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisX, layout.plot.width);
4707
- return chunkUHKFJBY5_cjs.chartText({
4707
+ return chunkSKGJXCAO_cjs.chartTicks(chart.axisX).map((tick, index) => {
4708
+ const x = layout.plot.x + chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisX, layout.plot.width);
4709
+ return chunkSKGJXCAO_cjs.chartText({
4708
4710
  role: "axis",
4709
4711
  id: `chart-x-tick-${chart.id}-${tick}`,
4710
4712
  order: order + index,
@@ -4719,9 +4721,9 @@ function buildNumericXAxisTicks(chart, layout, order) {
4719
4721
 
4720
4722
  // src/renderScene/charts/decorations/numericYAxis.ts
4721
4723
  function buildNumericYAxisTicks(chart, layout, order) {
4722
- return chunkUHKFJBY5_cjs.chartTicks(chart.axisY).map((tick, index) => {
4723
- const y = layout.plot.y + layout.plot.height - chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisY, layout.plot.height);
4724
- return chunkUHKFJBY5_cjs.chartText({
4724
+ return chunkSKGJXCAO_cjs.chartTicks(chart.axisY).map((tick, index) => {
4725
+ const y = layout.plot.y + layout.plot.height - chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisY, layout.plot.height);
4726
+ return chunkSKGJXCAO_cjs.chartText({
4725
4727
  role: "axis",
4726
4728
  id: `chart-y-tick-${chart.id}-${tick}`,
4727
4729
  order: order + index,
@@ -4756,10 +4758,10 @@ function buildYAxisTicks(chart, layout, order) {
4756
4758
  function xTickPositions(chart, layout) {
4757
4759
  const { plot } = layout;
4758
4760
  if (chart.chartType === "bar") {
4759
- const count = chunkUHKFJBY5_cjs.barCategoryCount(chart);
4761
+ const count = chunkSKGJXCAO_cjs.barCategoryCount(chart);
4760
4762
  return Array.from({ length: count }, (_value, index) => plot.x + (index + 0.5) * plot.width / count);
4761
4763
  }
4762
- return chunkUHKFJBY5_cjs.chartTicks(chart.axisX).map((tick) => plot.x + chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisX, plot.width));
4764
+ return chunkSKGJXCAO_cjs.chartTicks(chart.axisX).map((tick) => plot.x + chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisX, plot.width));
4763
4765
  }
4764
4766
  function axisLineDash(chart, width) {
4765
4767
  if (chart.axisLineStyle === "dashed") {
@@ -4768,8 +4770,8 @@ function axisLineDash(chart, width) {
4768
4770
  return chart.axisLineStyle === "dotted" ? { dash: [0.1, width * 3], lineCap: "round" } : {};
4769
4771
  }
4770
4772
  function buildAxisLines(chart, layout, order) {
4771
- const lineWidth = chunkUHKFJBY5_cjs.finite(chart.axisLineWidth, 0);
4772
- const tickLength = chunkUHKFJBY5_cjs.finite(chart.tickLength, 0);
4773
+ const lineWidth = chunkSKGJXCAO_cjs.finite(chart.axisLineWidth, 0);
4774
+ const tickLength = chunkSKGJXCAO_cjs.finite(chart.tickLength, 0);
4773
4775
  if (lineWidth <= 0 && tickLength <= 0) {
4774
4776
  return [];
4775
4777
  }
@@ -4790,20 +4792,20 @@ function buildAxisLines(chart, layout, order) {
4790
4792
  }
4791
4793
  add("line-x", `M ${plot.x} ${bottom} L ${plot.x + plot.width} ${bottom}`);
4792
4794
  }
4793
- if (tickLength > 0 && chunkUHKFJBY5_cjs.isHorizontalBar(chart)) {
4794
- chunkUHKFJBY5_cjs.chartTicks(chart.axisY).forEach((tick) => {
4795
- const x = plot.x + chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisY, plot.width);
4795
+ if (tickLength > 0 && chunkSKGJXCAO_cjs.isHorizontalBar(chart)) {
4796
+ chunkSKGJXCAO_cjs.chartTicks(chart.axisY).forEach((tick) => {
4797
+ const x = plot.x + chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisY, plot.width);
4796
4798
  add(`tick-v-${tick}`, `M ${x} ${bottom} L ${x} ${bottom + tickLength}`);
4797
4799
  });
4798
- const rows = chunkUHKFJBY5_cjs.horizontalRows(chart, plot);
4800
+ const rows = chunkSKGJXCAO_cjs.horizontalRows(chart, plot);
4799
4801
  for (let index = 0; index < rows.count; index++) {
4800
- const y = chunkUHKFJBY5_cjs.rowTop(rows, plot, index) + rows.labelRow + rows.barsHeight / 2;
4802
+ const y = chunkSKGJXCAO_cjs.rowTop(rows, plot, index) + rows.labelRow + rows.barsHeight / 2;
4801
4803
  add(`tick-c-${index}`, `M ${plot.x - tickLength} ${y} L ${plot.x} ${y}`);
4802
4804
  }
4803
4805
  }
4804
- if (tickLength > 0 && !isHorizontalBoxplot2(chart) && !chunkUHKFJBY5_cjs.isHorizontalBar(chart)) {
4805
- chunkUHKFJBY5_cjs.chartTicks(chart.axisY).forEach((tick) => {
4806
- const y = bottom - chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisY, plot.height);
4806
+ if (tickLength > 0 && !isHorizontalBoxplot2(chart) && !chunkSKGJXCAO_cjs.isHorizontalBar(chart)) {
4807
+ chunkSKGJXCAO_cjs.chartTicks(chart.axisY).forEach((tick) => {
4808
+ const y = bottom - chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisY, plot.height);
4807
4809
  add(`tick-y-${tick}`, `M ${plot.x - tickLength} ${y} L ${plot.x} ${y}`);
4808
4810
  });
4809
4811
  xTickPositions(chart, layout).forEach((x, index) => {
@@ -4818,14 +4820,14 @@ function categoryNames(chart, count) {
4818
4820
  }
4819
4821
  function buildHorizontalBarAxes(chart, layout, order) {
4820
4822
  const { plot, bounds } = layout;
4821
- const rows = chunkUHKFJBY5_cjs.horizontalRows(chart, plot);
4823
+ const rows = chunkSKGJXCAO_cjs.horizontalRows(chart, plot);
4822
4824
  const above = chart.categoryAlign === "left";
4823
4825
  const inside = chart.categoryAlign === "inside";
4824
4826
  const editable = Boolean(chart.config?.categories?.length);
4825
4827
  const nodes = categoryNames(chart, rows.count).map((name, index) => {
4826
- const top = chunkUHKFJBY5_cjs.rowTop(rows, plot, index);
4828
+ const top = chunkSKGJXCAO_cjs.rowTop(rows, plot, index);
4827
4829
  return {
4828
- ...chunkUHKFJBY5_cjs.chartText({
4830
+ ...chunkSKGJXCAO_cjs.chartText({
4829
4831
  role: "axis",
4830
4832
  id: `chart-y-category-${chart.id}-${index}`,
4831
4833
  order: order + index,
@@ -4835,19 +4837,19 @@ function buildHorizontalBarAxes(chart, layout, order) {
4835
4837
  chart,
4836
4838
  align: above || inside ? "left" : "right"
4837
4839
  }),
4838
- prop: editable ? chunkUHKFJBY5_cjs.categoryProp(index) : void 0
4840
+ prop: editable ? chunkSKGJXCAO_cjs.categoryProp(index) : void 0
4839
4841
  };
4840
4842
  });
4841
4843
  if (chart.showValueAxis !== false) {
4842
- chunkUHKFJBY5_cjs.chartTicks(chart.axisY).forEach((tick, index) => {
4843
- const x = plot.x + chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisY, plot.width);
4844
+ chunkSKGJXCAO_cjs.chartTicks(chart.axisY).forEach((tick, index) => {
4845
+ const x = plot.x + chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisY, plot.width);
4844
4846
  nodes.push(
4845
- chunkUHKFJBY5_cjs.chartText({
4847
+ chunkSKGJXCAO_cjs.chartText({
4846
4848
  role: "axis",
4847
4849
  id: `chart-x-tick-${chart.id}-${tick}`,
4848
4850
  order: order + rows.count + index,
4849
4851
  bounds,
4850
- frame: { x: x - 20, y: plot.y + plot.height + 4 + chunkUHKFJBY5_cjs.finite(chart.tickLength, 0), width: 40, height: 18 },
4852
+ frame: { x: x - 20, y: plot.y + plot.height + 4 + chunkSKGJXCAO_cjs.finite(chart.tickLength, 0), width: 40, height: 18 },
4851
4853
  text: String(tick),
4852
4854
  chart,
4853
4855
  align: "center"
@@ -4866,7 +4868,7 @@ function buildChartAxes(chart, layout, order) {
4866
4868
  return lines;
4867
4869
  }
4868
4870
  order += lines.length;
4869
- if (chunkUHKFJBY5_cjs.isHorizontalBar(chart)) {
4871
+ if (chunkSKGJXCAO_cjs.isHorizontalBar(chart)) {
4870
4872
  return [...lines, ...buildHorizontalBarAxes(chart, layout, order)];
4871
4873
  }
4872
4874
  const xTicks = buildXAxisTicks(chart, layout, order);
@@ -4944,7 +4946,7 @@ function buildCircularChartGrid(chart, plot, bounds, order) {
4944
4946
  const centerX = plot.x + plot.width / 2;
4945
4947
  const centerY = plot.y + plot.height / 2;
4946
4948
  const radius = Math.max(0, Math.min(plot.width, plot.height) / 2);
4947
- const width = chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1);
4949
+ const width = chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1);
4948
4950
  if (chart.gridLineStyle === "dotted") {
4949
4951
  return buildDottedCircularGrid(chart, bounds, order, centerX, centerY, radius, width);
4950
4952
  }
@@ -4955,7 +4957,7 @@ function buildCircularChartGrid(chart, plot, bounds, order) {
4955
4957
  ...gridLineDashStyle(chart, width)
4956
4958
  };
4957
4959
  const nodes = [];
4958
- chunkUHKFJBY5_cjs.chartTicks(chart.axisY).filter((tick) => tick > chart.axisY.min).forEach((tick) => {
4960
+ chunkSKGJXCAO_cjs.chartTicks(chart.axisY).filter((tick) => tick > chart.axisY.min).forEach((tick) => {
4959
4961
  const ringRadius = radius * ringRatio(chart, tick);
4960
4962
  nodes.push({
4961
4963
  type: "ellipse",
@@ -4969,8 +4971,8 @@ function buildCircularChartGrid(chart, plot, bounds, order) {
4969
4971
  style
4970
4972
  });
4971
4973
  });
4972
- chunkUHKFJBY5_cjs.chartTicks(chart.axisX).forEach((tick) => {
4973
- const angle = chunkUHKFJBY5_cjs.angleForAxisValue(chart.axisX.min, chart.axisX.max, tick);
4974
+ chunkSKGJXCAO_cjs.chartTicks(chart.axisX).forEach((tick) => {
4975
+ const angle = chunkSKGJXCAO_cjs.angleForAxisValue(chart.axisX.min, chart.axisX.max, tick);
4974
4976
  const edgeX = centerX + Math.cos(angle) * radius;
4975
4977
  const edgeY = centerY + Math.sin(angle) * radius;
4976
4978
  nodes.push({
@@ -4985,13 +4987,13 @@ function buildCircularChartGrid(chart, plot, bounds, order) {
4985
4987
  return nodes;
4986
4988
  }
4987
4989
  function buildDottedCircularGrid(chart, bounds, order, centerX, centerY, radius, width) {
4988
- const yTicks = chunkUHKFJBY5_cjs.chartTicks(chart.axisY).filter((tick) => tick > chart.axisY.min);
4989
- const xTicks = chunkUHKFJBY5_cjs.chartTicks(chart.axisX);
4990
+ const yTicks = chunkSKGJXCAO_cjs.chartTicks(chart.axisY).filter((tick) => tick > chart.axisY.min);
4991
+ const xTicks = chunkSKGJXCAO_cjs.chartTicks(chart.axisX);
4990
4992
  const nodes = [];
4991
4993
  yTicks.forEach((yTick) => {
4992
4994
  const ringRadius = radius * ringRatio(chart, yTick);
4993
4995
  xTicks.forEach((xTick) => {
4994
- const angle = chunkUHKFJBY5_cjs.angleForAxisValue(chart.axisX.min, chart.axisX.max, xTick);
4996
+ const angle = chunkSKGJXCAO_cjs.angleForAxisValue(chart.axisX.min, chart.axisX.max, xTick);
4995
4997
  const x = centerX + Math.cos(angle) * ringRadius;
4996
4998
  const y = centerY + Math.sin(angle) * ringRadius;
4997
4999
  const id = `chart-grid-dot-${chart.id}-${xTick}-${yTick}`;
@@ -5013,8 +5015,8 @@ function buildChartGrid(chart, plot, bounds, order) {
5013
5015
  if (chart.gridShape === "circle" && CIRCULAR_GRID_CHART_TYPES.has(chart.chartType)) {
5014
5016
  return buildCircularChartGrid(chart, plot, bounds, order);
5015
5017
  }
5016
- const width = chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1);
5017
- if (chunkUHKFJBY5_cjs.isHorizontalBar(chart)) {
5018
+ const width = chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1);
5019
+ if (chunkSKGJXCAO_cjs.isHorizontalBar(chart)) {
5018
5020
  return buildHorizontalBarGrid(chart, plot, bounds, order, width);
5019
5021
  }
5020
5022
  const clip = chart.chartType === "field" ? fieldSurfaceClip(chart, plot) : void 0;
@@ -5029,8 +5031,8 @@ function buildChartGrid(chart, plot, bounds, order) {
5029
5031
  clip
5030
5032
  };
5031
5033
  const nodes = [];
5032
- (chart.gridAxes === "y" ? [] : chunkUHKFJBY5_cjs.chartTicks(chart.axisX)).forEach((tick) => {
5033
- const x = plot.x + chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisX, plot.width);
5034
+ (chart.gridAxes === "y" ? [] : chunkSKGJXCAO_cjs.chartTicks(chart.axisX)).forEach((tick) => {
5035
+ const x = plot.x + chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisX, plot.width);
5034
5036
  nodes.push({
5035
5037
  type: "path",
5036
5038
  id: `chart-grid-x-${chart.id}-${tick}`,
@@ -5040,8 +5042,8 @@ function buildChartGrid(chart, plot, bounds, order) {
5040
5042
  style
5041
5043
  });
5042
5044
  });
5043
- (chart.gridAxes === "x" ? [] : chunkUHKFJBY5_cjs.chartTicks(chart.axisY)).forEach((tick) => {
5044
- const y = plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisY, plot.height);
5045
+ (chart.gridAxes === "x" ? [] : chunkSKGJXCAO_cjs.chartTicks(chart.axisY)).forEach((tick) => {
5046
+ const y = plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisY, plot.height);
5045
5047
  nodes.push({
5046
5048
  type: "path",
5047
5049
  id: `chart-grid-y-${chart.id}-${tick}`,
@@ -5063,8 +5065,8 @@ function buildHorizontalBarGrid(chart, plot, bounds, order, width) {
5063
5065
  strokeWidth: width,
5064
5066
  ...chart.gridLineStyle === "dotted" ? { dash: [0.1, width * 3], lineCap: "round" } : gridLineDashStyle(chart, width)
5065
5067
  };
5066
- return chunkUHKFJBY5_cjs.chartTicks(chart.axisY).map((tick, index) => {
5067
- const x = plot.x + chunkUHKFJBY5_cjs.mapChartValue(tick, chart.axisY, plot.width);
5068
+ return chunkSKGJXCAO_cjs.chartTicks(chart.axisY).map((tick, index) => {
5069
+ const x = plot.x + chunkSKGJXCAO_cjs.mapChartValue(tick, chart.axisY, plot.width);
5068
5070
  return {
5069
5071
  type: "path",
5070
5072
  id: `chart-grid-x-${chart.id}-${tick}`,
@@ -5076,13 +5078,13 @@ function buildHorizontalBarGrid(chart, plot, bounds, order, width) {
5076
5078
  });
5077
5079
  }
5078
5080
  function buildDottedRectGrid(chart, plot, bounds, order, width, clip) {
5079
- const xTicks = chunkUHKFJBY5_cjs.chartTicks(chart.axisX);
5080
- const yTicks = chunkUHKFJBY5_cjs.chartTicks(chart.axisY);
5081
+ const xTicks = chunkSKGJXCAO_cjs.chartTicks(chart.axisX);
5082
+ const yTicks = chunkSKGJXCAO_cjs.chartTicks(chart.axisY);
5081
5083
  const nodes = [];
5082
5084
  xTicks.forEach((xTick) => {
5083
- const x = plot.x + chunkUHKFJBY5_cjs.mapChartValue(xTick, chart.axisX, plot.width);
5085
+ const x = plot.x + chunkSKGJXCAO_cjs.mapChartValue(xTick, chart.axisX, plot.width);
5084
5086
  yTicks.forEach((yTick) => {
5085
- const y = plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(yTick, chart.axisY, plot.height);
5087
+ const y = plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(yTick, chart.axisY, plot.height);
5086
5088
  const id = `chart-grid-dot-${chart.id}-${xTick}-${yTick}`;
5087
5089
  nodes.push(createGridDot(chart, id, order + nodes.length, bounds, x, y, width, clip));
5088
5090
  });
@@ -5105,7 +5107,7 @@ function createChartRuleMarks(render2) {
5105
5107
  return {
5106
5108
  rule,
5107
5109
  color: rule.color || render2.chart.strokeColor || "#475569",
5108
- y: render2.plot.y + render2.plot.height - chunkUHKFJBY5_cjs.mapChartValue(rule.at, render2.chart.axisY, render2.plot.height),
5110
+ y: render2.plot.y + render2.plot.height - chunkSKGJXCAO_cjs.mapChartValue(rule.at, render2.chart.axisY, render2.plot.height),
5109
5111
  lineOrder,
5110
5112
  labelOrder
5111
5113
  };
@@ -5125,7 +5127,7 @@ function createChartRuleLine(render2, mark) {
5125
5127
  order: mark.lineOrder,
5126
5128
  bounds: render2.bounds,
5127
5129
  d: `M ${render2.plot.x} ${mark.y} L ${render2.plot.x + render2.plot.width} ${mark.y}`,
5128
- prop: chunkUHKFJBY5_cjs.ruleAtProp(mark.rule.id),
5130
+ prop: chunkSKGJXCAO_cjs.ruleAtProp(mark.rule.id),
5129
5131
  propKind: "value",
5130
5132
  style: {
5131
5133
  fill: { kind: "none" },
@@ -5136,9 +5138,9 @@ function createChartRuleLine(render2, mark) {
5136
5138
  };
5137
5139
  }
5138
5140
  function createChartRuleLabel(render2, mark) {
5139
- const fontSize = Math.max(9, chunkUHKFJBY5_cjs.finite(render2.chart.fontSize, 12) - 2);
5141
+ const fontSize = Math.max(9, chunkSKGJXCAO_cjs.finite(render2.chart.fontSize, 12) - 2);
5140
5142
  return {
5141
- ...chunkUHKFJBY5_cjs.chartText({
5143
+ ...chunkSKGJXCAO_cjs.chartText({
5142
5144
  id: `chart-rule-label-${render2.chart.id}-${mark.rule.id}`,
5143
5145
  order: mark.labelOrder ?? mark.lineOrder + 1,
5144
5146
  bounds: render2.bounds,
@@ -5147,19 +5149,19 @@ function createChartRuleLabel(render2, mark) {
5147
5149
  chart: render2.chart
5148
5150
  }),
5149
5151
  color: mark.color,
5150
- prop: chunkUHKFJBY5_cjs.ruleTextProp(mark.rule.id)
5152
+ prop: chunkSKGJXCAO_cjs.ruleTextProp(mark.rule.id)
5151
5153
  };
5152
5154
  }
5153
5155
 
5154
5156
  // src/renderScene/charts/chartBackdrop.ts
5155
5157
  function chartImageRect(chart) {
5156
- const inset = chunkUHKFJBY5_cjs.finite(chart.strokeWidth, 1) / 2;
5158
+ const inset = chunkSKGJXCAO_cjs.finite(chart.strokeWidth, 1) / 2;
5157
5159
  return {
5158
5160
  x: chart.x + inset,
5159
5161
  y: chart.y + inset,
5160
5162
  width: Math.max(1, chart.width - inset * 2),
5161
5163
  height: Math.max(1, chart.height - inset * 2),
5162
- rx: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.cornerRadius, 12) - inset)
5164
+ rx: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.cornerRadius, 12) - inset)
5163
5165
  };
5164
5166
  }
5165
5167
  function buildChartBackdrop(chart, bounds, order) {
@@ -5201,7 +5203,7 @@ function buildChartBackdrop(chart, bounds, order) {
5201
5203
  // src/renderScene/charts/renderers/bar/glass.ts
5202
5204
  function createGlassBackdropNodes(context, id, d) {
5203
5205
  const { chart, bounds, nextOrder } = context;
5204
- const blur = chunkUHKFJBY5_cjs.finite(chart.config?.barGlassBlur, 0);
5206
+ const blur = chunkSKGJXCAO_cjs.finite(chart.config?.barGlassBlur, 0);
5205
5207
  if (blur <= 0 || !chart.fillImage) {
5206
5208
  return [];
5207
5209
  }
@@ -5219,7 +5221,7 @@ function createGlassBackdropNodes(context, id, d) {
5219
5221
  href: chart.fillImage.url,
5220
5222
  style: {
5221
5223
  blur,
5222
- saturate: chunkUHKFJBY5_cjs.finite(chart.config?.barGlassSaturation, 1),
5224
+ saturate: chunkSKGJXCAO_cjs.finite(chart.config?.barGlassSaturation, 1),
5223
5225
  clip: { type: "path", d },
5224
5226
  pointerEvents: "none"
5225
5227
  }
@@ -5270,8 +5272,8 @@ function createBarGlowNode(context, id, d, color, glow, bounds = context.bounds)
5270
5272
  bounds,
5271
5273
  d,
5272
5274
  style: {
5273
- fill: chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id),
5274
- shadow: { color: chunkUHKFJBY5_cjs.representativeColor(color, "#ffffff"), opacity: 0.9, blur: glow, dx: 0, dy: 0 },
5275
+ fill: chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id),
5276
+ shadow: { color: chunkSKGJXCAO_cjs.representativeColor(color, "#ffffff"), opacity: 0.9, blur: glow, dx: 0, dy: 0 },
5275
5277
  pointerEvents: "none"
5276
5278
  }
5277
5279
  };
@@ -5282,14 +5284,14 @@ function barLabelsEnabled(context) {
5282
5284
  return context.chart.config?.showBarLabels === true;
5283
5285
  }
5284
5286
  function resolvePlacement(target, size) {
5285
- const fits = target.frame.height >= size.height + chunkUHKFJBY5_cjs.BAR_LABEL.gap * 2;
5287
+ const fits = target.frame.height >= size.height + chunkSKGJXCAO_cjs.BAR_LABEL.gap * 2;
5286
5288
  return target.placement !== "outside" && !fits ? "outside" : target.placement;
5287
5289
  }
5288
5290
  function labelTop(placement, frame, height) {
5289
5291
  if (placement === "outside") {
5290
- return frame.y - height - chunkUHKFJBY5_cjs.BAR_LABEL.gap;
5292
+ return frame.y - height - chunkSKGJXCAO_cjs.BAR_LABEL.gap;
5291
5293
  }
5292
- return placement === "inside" ? frame.y + chunkUHKFJBY5_cjs.BAR_LABEL.gap : frame.y + frame.height / 2 - height / 2;
5294
+ return placement === "inside" ? frame.y + chunkSKGJXCAO_cjs.BAR_LABEL.gap : frame.y + frame.height / 2 - height / 2;
5293
5295
  }
5294
5296
  function createPillNode(context, id, box, color) {
5295
5297
  const { chart, bounds, diagnostics, nextOrder } = context;
@@ -5299,11 +5301,11 @@ function createPillNode(context, id, box, color) {
5299
5301
  id: `${id}-pill`,
5300
5302
  order: nextOrder(),
5301
5303
  bounds,
5302
- d: chunkUHKFJBY5_cjs.pillPath(box.left, box.top, box.width, box.height),
5304
+ d: chunkSKGJXCAO_cjs.pillPath(box.left, box.top, box.width, box.height),
5303
5305
  style: {
5304
- fill: config?.barLabelPillColor ? chunkUHKFJBY5_cjs.paint(config.barLabelPillColor, diagnostics, chart.id) : { kind: "none" },
5305
- stroke: chunkUHKFJBY5_cjs.paint(config?.barLabelBorderColor ?? color, diagnostics, chart.id),
5306
- strokeWidth: chunkUHKFJBY5_cjs.finite(config?.barLabelBorderWidth, 1),
5306
+ fill: config?.barLabelPillColor ? chunkSKGJXCAO_cjs.paint(config.barLabelPillColor, diagnostics, chart.id) : { kind: "none" },
5307
+ stroke: chunkSKGJXCAO_cjs.paint(config?.barLabelBorderColor ?? color, diagnostics, chart.id),
5308
+ strokeWidth: chunkSKGJXCAO_cjs.finite(config?.barLabelBorderWidth, 1),
5307
5309
  pointerEvents: "none"
5308
5310
  }
5309
5311
  };
@@ -5312,7 +5314,7 @@ function createTextNode(context, id, box, text, placement, fontSize, color) {
5312
5314
  const { chart, bounds, nextOrder } = context;
5313
5315
  const config = chart.config;
5314
5316
  return {
5315
- ...chunkUHKFJBY5_cjs.chartText({
5317
+ ...chunkSKGJXCAO_cjs.chartText({
5316
5318
  id,
5317
5319
  order: nextOrder(),
5318
5320
  bounds,
@@ -5333,7 +5335,7 @@ function createAxisValueNode(context, target, text, fontSize) {
5333
5335
  const config = chart.config;
5334
5336
  const top = plot.y + plot.height + 4 + 16 + Math.max(0, chart.tickLength ?? 0);
5335
5337
  return {
5336
- ...chunkUHKFJBY5_cjs.chartText({
5338
+ ...chunkSKGJXCAO_cjs.chartText({
5337
5339
  id: target.id,
5338
5340
  order: nextOrder(),
5339
5341
  bounds,
@@ -5342,7 +5344,7 @@ function createAxisValueNode(context, target, text, fontSize) {
5342
5344
  y: target.frame.y + target.frame.height / 2 - fontSize * 0.6,
5343
5345
  width: plot.width - 14,
5344
5346
  height: fontSize * 1.2
5345
- } : { x: plot.x, y: target.frame.y - chunkUHKFJBY5_cjs.CATEGORY_LABEL_ROW, width: plot.width, height: fontSize * 1.2 } : { x: target.frame.x, y: top, width: target.frame.width, height: fontSize * 1.2 },
5347
+ } : { x: plot.x, y: target.frame.y - chunkSKGJXCAO_cjs.CATEGORY_LABEL_ROW, width: plot.width, height: fontSize * 1.2 } : { x: target.frame.x, y: top, width: target.frame.width, height: fontSize * 1.2 },
5346
5348
  text,
5347
5349
  chart,
5348
5350
  align: target.horizontal ? "right" : chart.categoryAlign === "left" ? "left" : "center"
@@ -5356,24 +5358,24 @@ function createAxisValueNode(context, target, text, fontSize) {
5356
5358
  }
5357
5359
  function horizontalPlacement(target, size) {
5358
5360
  const requested = target.placement === "axis" ? "outside" : target.placement;
5359
- const fits = target.frame.width >= size.width + chunkUHKFJBY5_cjs.BAR_LABEL.gap * 2;
5361
+ const fits = target.frame.width >= size.width + chunkSKGJXCAO_cjs.BAR_LABEL.gap * 2;
5360
5362
  return requested !== "outside" && !fits ? "outside" : requested;
5361
5363
  }
5362
5364
  function horizontalBox(target, size, placement) {
5363
5365
  const { frame } = target;
5364
- const left = placement === "outside" ? frame.x + frame.width + chunkUHKFJBY5_cjs.BAR_LABEL.gap : placement === "inside" ? frame.x + frame.width - size.width - chunkUHKFJBY5_cjs.BAR_LABEL.gap : frame.x + frame.width / 2 - size.width / 2;
5366
+ const left = placement === "outside" ? frame.x + frame.width + chunkSKGJXCAO_cjs.BAR_LABEL.gap : placement === "inside" ? frame.x + frame.width - size.width - chunkSKGJXCAO_cjs.BAR_LABEL.gap : frame.x + frame.width / 2 - size.width / 2;
5365
5367
  return { ...size, left, top: frame.y + frame.height / 2 - size.height / 2 };
5366
5368
  }
5367
5369
  function createBarLabelNodes(context, target) {
5368
5370
  const { chart } = context;
5369
5371
  const config = chart.config;
5370
- const fontSize = Math.max(8, chunkUHKFJBY5_cjs.finite(config?.barLabelFontSize, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12)));
5371
- const text = chunkUHKFJBY5_cjs.formatBarLabel(target.value, config?.barLabelFormat);
5372
+ const fontSize = Math.max(8, chunkSKGJXCAO_cjs.finite(config?.barLabelFontSize, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12)));
5373
+ const text = chunkSKGJXCAO_cjs.formatBarLabel(target.value, config?.barLabelFormat);
5372
5374
  if (target.placement === "axis") {
5373
5375
  return [createAxisValueNode(context, target, text, fontSize)];
5374
5376
  }
5375
5377
  const pill = config?.barLabelPill === true;
5376
- const size = chunkUHKFJBY5_cjs.barLabelSize(text, fontSize, pill);
5378
+ const size = chunkSKGJXCAO_cjs.barLabelSize(text, fontSize, pill);
5377
5379
  const placement = target.horizontal ? horizontalPlacement(target, size) : resolvePlacement(target, size);
5378
5380
  const box = target.horizontal ? horizontalBox(target, size, placement) : {
5379
5381
  ...size,
@@ -5414,7 +5416,7 @@ function barTrackClip(context, frame) {
5414
5416
  }
5415
5417
  return {
5416
5418
  type: "path",
5417
- d: chunkUHKFJBY5_cjs.roundedBarPath(frame.x, frame.y, frame.width, frame.height, context.chart.config?.barCornerRadius ?? 2)
5419
+ d: chunkSKGJXCAO_cjs.roundedBarPath(frame.x, frame.y, frame.width, frame.height, context.chart.config?.barCornerRadius ?? 2)
5418
5420
  };
5419
5421
  }
5420
5422
  function barTrackEnabled(context) {
@@ -5424,8 +5426,8 @@ function createBarTrackNodes(context, id, frame, orientation = "vertical") {
5424
5426
  const { chart, bounds, diagnostics, nextOrder } = context;
5425
5427
  const config = chart.config;
5426
5428
  const radius = config?.barCornerRadius ?? 2;
5427
- const segments = chunkUHKFJBY5_cjs.finite(config?.barSegments, 0);
5428
- const d = segments > 0 ? chunkUHKFJBY5_cjs.segmentedBarPath(frame, orientation, segments, chunkUHKFJBY5_cjs.finite(config?.barSegmentGap, 4), radius, 1, true) : chunkUHKFJBY5_cjs.roundedBarPath(frame.x, frame.y, frame.width, frame.height, radius);
5429
+ const segments = chunkSKGJXCAO_cjs.finite(config?.barSegments, 0);
5430
+ const d = segments > 0 ? chunkSKGJXCAO_cjs.segmentedBarPath(frame, orientation, segments, chunkSKGJXCAO_cjs.finite(config?.barSegmentGap, 4), radius, 1, true) : chunkSKGJXCAO_cjs.roundedBarPath(frame.x, frame.y, frame.width, frame.height, radius);
5429
5431
  const nodes = [
5430
5432
  {
5431
5433
  type: "path",
@@ -5434,7 +5436,7 @@ function createBarTrackNodes(context, id, frame, orientation = "vertical") {
5434
5436
  bounds,
5435
5437
  d,
5436
5438
  style: {
5437
- fill: chunkUHKFJBY5_cjs.paint(config?.barTrackColor ?? chart.gridColor ?? "#e2e8f0", diagnostics, chart.id),
5439
+ fill: chunkSKGJXCAO_cjs.paint(config?.barTrackColor ?? chart.gridColor ?? "#e2e8f0", diagnostics, chart.id),
5438
5440
  pointerEvents: "none"
5439
5441
  }
5440
5442
  }
@@ -5450,13 +5452,13 @@ function createBarTrackNodes(context, id, frame, orientation = "vertical") {
5450
5452
  frame.y,
5451
5453
  frame.width,
5452
5454
  frame.height,
5453
- chunkUHKFJBY5_cjs.finite(config.barTrackHatchAngle, DEFAULT_HATCH.angle),
5454
- Math.max(MIN_HATCH_SPACING, chunkUHKFJBY5_cjs.finite(config.barTrackHatchSpacing, DEFAULT_HATCH.spacing))
5455
+ chunkSKGJXCAO_cjs.finite(config.barTrackHatchAngle, DEFAULT_HATCH.angle),
5456
+ Math.max(MIN_HATCH_SPACING, chunkSKGJXCAO_cjs.finite(config.barTrackHatchSpacing, DEFAULT_HATCH.spacing))
5455
5457
  ),
5456
5458
  style: {
5457
5459
  fill: { kind: "none" },
5458
- stroke: chunkUHKFJBY5_cjs.paint(config.barTrackHatchColor ?? chart.gridColor ?? "#cbd5e1", diagnostics, chart.id),
5459
- strokeWidth: chunkUHKFJBY5_cjs.finite(config.barTrackHatchWidth, DEFAULT_HATCH.width),
5460
+ stroke: chunkSKGJXCAO_cjs.paint(config.barTrackHatchColor ?? chart.gridColor ?? "#cbd5e1", diagnostics, chart.id),
5461
+ strokeWidth: chunkSKGJXCAO_cjs.finite(config.barTrackHatchWidth, DEFAULT_HATCH.width),
5460
5462
  pointerEvents: "none",
5461
5463
  clip: { type: "path", d }
5462
5464
  }
@@ -5503,23 +5505,23 @@ function groupedShape(context, frame) {
5503
5505
  const { chart, plot } = context;
5504
5506
  const config = chart.config;
5505
5507
  const radius = config?.barCornerRadius ?? 2;
5506
- const segments = chunkUHKFJBY5_cjs.finite(config?.barSegments, 0);
5508
+ const segments = chunkSKGJXCAO_cjs.finite(config?.barSegments, 0);
5507
5509
  if (segments > 0) {
5508
- return chunkUHKFJBY5_cjs.segmentedBarPath(
5510
+ return chunkSKGJXCAO_cjs.segmentedBarPath(
5509
5511
  { x: frame.x, y: plot.y, width: frame.width, height: plot.height },
5510
5512
  "vertical",
5511
5513
  segments,
5512
- chunkUHKFJBY5_cjs.finite(config?.barSegmentGap, 4),
5514
+ chunkSKGJXCAO_cjs.finite(config?.barSegmentGap, 4),
5513
5515
  radius,
5514
5516
  frame.height / plot.height,
5515
5517
  config?.barSegmentSnap !== false
5516
5518
  );
5517
5519
  }
5518
- return chunkUHKFJBY5_cjs.barPath(frame.x, frame.y, frame.width, frame.height, radius, config?.barRoundedBottom === true);
5520
+ return chunkSKGJXCAO_cjs.barPath(frame.x, frame.y, frame.width, frame.height, radius, config?.barRoundedBottom === true);
5519
5521
  }
5520
5522
  function createGroupedGlow(context, mark) {
5521
5523
  const { chart } = context;
5522
- const glow = chunkUHKFJBY5_cjs.finite(chart.config?.barGlow, 0);
5524
+ const glow = chunkSKGJXCAO_cjs.finite(chart.config?.barGlow, 0);
5523
5525
  if (glow <= 0 || mark.frame.height <= 0) {
5524
5526
  return [];
5525
5527
  }
@@ -5530,10 +5532,10 @@ function createGroupedGlow(context, mark) {
5530
5532
  }
5531
5533
  function createGroupedBarLayout(context) {
5532
5534
  const { chart, plot } = context;
5533
- const valueCount = chunkUHKFJBY5_cjs.barCategoryCount(chart);
5535
+ const valueCount = chunkSKGJXCAO_cjs.barCategoryCount(chart);
5534
5536
  const slotWidth = plot.width / valueCount;
5535
- const groupGap = Math.min(Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.barGroupGap, 8)), Math.max(0, slotWidth - 1));
5536
- const barGap = Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.barGap, 2));
5537
+ const groupGap = Math.min(Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.barGroupGap, 8)), Math.max(0, slotWidth - 1));
5538
+ const barGap = Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.barGap, 2));
5537
5539
  return {
5538
5540
  slotWidth,
5539
5541
  seriesWidth: Math.max(1, (slotWidth - groupGap) / Math.max(1, chart.series.length)),
@@ -5543,10 +5545,10 @@ function createGroupedBarLayout(context) {
5543
5545
  }
5544
5546
  function createSeriesBarMarks(context, layout, series, seriesIndex) {
5545
5547
  const { chart, plot } = context;
5546
- const seriesColor2 = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
5548
+ const seriesColor2 = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
5547
5549
  return series.values.map((value, valueIndex) => {
5548
5550
  const numericValue = Array.isArray(value) ? value[1] : value;
5549
- const height = Math.max(0, chunkUHKFJBY5_cjs.mapChartValue(numericValue, chart.axisY, plot.height));
5551
+ const height = Math.max(0, chunkSKGJXCAO_cjs.mapChartValue(numericValue, chart.axisY, plot.height));
5550
5552
  return {
5551
5553
  seriesId: series.id,
5552
5554
  valueIndex,
@@ -5580,10 +5582,10 @@ function createGroupedBarNodes(context, mark) {
5580
5582
  const radius = chart.config?.barCornerRadius ?? 2;
5581
5583
  const { x, width } = mark.frame;
5582
5584
  const path = groupedShape(context, mark.frame);
5583
- const fill2 = chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id);
5584
- const stroke = chunkUHKFJBY5_cjs.paint(chart.config?.barBorderColor || "#000000", diagnostics, chart.id);
5585
- const strokeWidth = chunkUHKFJBY5_cjs.finite(chart.config?.barBorderWidth, 0);
5586
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
5585
+ const fill2 = chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id);
5586
+ const stroke = chunkSKGJXCAO_cjs.paint(chart.config?.barBorderColor || "#000000", diagnostics, chart.id);
5587
+ const strokeWidth = chunkSKGJXCAO_cjs.finite(chart.config?.barBorderWidth, 0);
5588
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
5587
5589
  const shadowCaster = shadow ? {
5588
5590
  type: "path",
5589
5591
  id: `chart-bar-shadow-${chart.id}-${mark.seriesId}-${mark.valueIndex}`,
@@ -5613,10 +5615,10 @@ function createGroupedBarNodes(context, mark) {
5613
5615
  valueIndex: mark.valueIndex,
5614
5616
  mark: "bar",
5615
5617
  radius,
5616
- colorProp: chunkUHKFJBY5_cjs.seriesValueColorProp(mark.seriesId, mark.valueIndex),
5618
+ colorProp: chunkSKGJXCAO_cjs.seriesValueColorProp(mark.seriesId, mark.valueIndex),
5617
5619
  hasColorOverride: mark.hasColorOverride
5618
5620
  },
5619
- prop: chunkUHKFJBY5_cjs.seriesValueProp(mark.seriesId, mark.valueIndex),
5621
+ prop: chunkSKGJXCAO_cjs.seriesValueProp(mark.seriesId, mark.valueIndex),
5620
5622
  style: { fill: fill2, stroke, strokeWidth, innerShadow: shadow }
5621
5623
  };
5622
5624
  const glass = createGlassBackdropNodes(context, `${mark.seriesId}-${mark.valueIndex}`, path);
@@ -5627,15 +5629,15 @@ function createGroupedBarError(context, mark) {
5627
5629
  return null;
5628
5630
  }
5629
5631
  const { chart, plot, bounds, nextOrder } = context;
5630
- const [lower, upper] = chunkUHKFJBY5_cjs.errorBarRange(mark.value, mark.error);
5631
- return chunkUHKFJBY5_cjs.createVerticalErrorWhiskerNode({
5632
+ const [lower, upper] = chunkSKGJXCAO_cjs.errorBarRange(mark.value, mark.error);
5633
+ return chunkSKGJXCAO_cjs.createVerticalErrorWhiskerNode({
5632
5634
  id: `chart-bar-error-${chart.id}-${mark.seriesId}-${mark.valueIndex}`,
5633
5635
  order: nextOrder(),
5634
5636
  bounds,
5635
5637
  geometry: {
5636
5638
  centerX: mark.frame.x + mark.frame.width / 2,
5637
- startY: plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(lower, chart.axisY, plot.height),
5638
- endY: plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(upper, chart.axisY, plot.height)
5639
+ startY: plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(lower, chart.axisY, plot.height),
5640
+ endY: plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(upper, chart.axisY, plot.height)
5639
5641
  },
5640
5642
  color: chart.textColor ?? "#0f172a",
5641
5643
  valueReference: { seriesId: mark.seriesId, valueIndex: mark.valueIndex }
@@ -5645,9 +5647,9 @@ function createGroupedBarError(context, mark) {
5645
5647
  // src/renderScene/charts/renderers/bar/horizontal.ts
5646
5648
  function barFrame(context, rows, seriesIndex, valueIndex, value) {
5647
5649
  const { chart, plot } = context;
5648
- const top = chunkUHKFJBY5_cjs.rowTop(rows, plot, valueIndex) + rows.labelRow;
5650
+ const top = chunkSKGJXCAO_cjs.rowTop(rows, plot, valueIndex) + rows.labelRow;
5649
5651
  if (context.stackedMode) {
5650
- const segment = chunkUHKFJBY5_cjs.stackedSegment(chart, context.stackedMode, valueIndex, seriesIndex, plot.width);
5652
+ const segment = chunkSKGJXCAO_cjs.stackedSegment(chart, context.stackedMode, valueIndex, seriesIndex, plot.width);
5651
5653
  const start = Math.min(segment.pixelStart, segment.pixelEnd);
5652
5654
  return {
5653
5655
  x: plot.x + start,
@@ -5656,27 +5658,27 @@ function barFrame(context, rows, seriesIndex, valueIndex, value) {
5656
5658
  height: rows.barsHeight
5657
5659
  };
5658
5660
  }
5659
- const barGap = Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.barGap, 2));
5661
+ const barGap = Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.barGap, 2));
5660
5662
  const seriesHeight = rows.barsHeight / Math.max(1, chart.series.length);
5661
- const width = Math.max(0, chunkUHKFJBY5_cjs.mapChartValue(value, chart.axisY, plot.width));
5663
+ const width = Math.max(0, chunkSKGJXCAO_cjs.mapChartValue(value, chart.axisY, plot.width));
5662
5664
  return { x: plot.x, y: top + seriesIndex * seriesHeight, width, height: Math.max(1, seriesHeight - barGap) };
5663
5665
  }
5664
5666
  function barPath2(context, frame) {
5665
5667
  const { chart, plot } = context;
5666
5668
  const config = chart.config;
5667
- const segments = context.stackedMode && chart.series.length > 1 ? 0 : chunkUHKFJBY5_cjs.finite(config?.barSegments, 0);
5669
+ const segments = context.stackedMode && chart.series.length > 1 ? 0 : chunkSKGJXCAO_cjs.finite(config?.barSegments, 0);
5668
5670
  if (segments > 0) {
5669
- return chunkUHKFJBY5_cjs.segmentedBarPath(
5671
+ return chunkSKGJXCAO_cjs.segmentedBarPath(
5670
5672
  { x: plot.x, y: frame.y, width: plot.width, height: frame.height },
5671
5673
  "horizontal",
5672
5674
  segments,
5673
- chunkUHKFJBY5_cjs.finite(config?.barSegmentGap, 4),
5675
+ chunkSKGJXCAO_cjs.finite(config?.barSegmentGap, 4),
5674
5676
  config?.barCornerRadius ?? 2,
5675
5677
  frame.width / plot.width,
5676
5678
  config?.barSegmentSnap !== false
5677
5679
  );
5678
5680
  }
5679
- return chunkUHKFJBY5_cjs.roundedBarPath(frame.x, frame.y, frame.width, frame.height, config?.barCornerRadius ?? 2);
5681
+ return chunkSKGJXCAO_cjs.roundedBarPath(frame.x, frame.y, frame.width, frame.height, config?.barCornerRadius ?? 2);
5680
5682
  }
5681
5683
  function markOf(context, rows, series, seriesIndex, valueIndex, value) {
5682
5684
  const { plot } = context;
@@ -5696,16 +5698,16 @@ function markOf(context, rows, series, seriesIndex, valueIndex, value) {
5696
5698
  maxY: frame.y + frame.height
5697
5699
  },
5698
5700
  path: barPath2(context, frame),
5699
- color: series.colors?.[valueIndex] ?? series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length]
5701
+ color: series.colors?.[valueIndex] ?? series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length]
5700
5702
  };
5701
5703
  }
5702
5704
  function barNodes(context, mark) {
5703
5705
  const { chart, diagnostics, nextOrder } = context;
5704
5706
  const config = chart.config;
5705
- const stroke = chunkUHKFJBY5_cjs.paint(config?.barBorderColor || "#000000", diagnostics, chart.id);
5706
- const strokeWidth = chunkUHKFJBY5_cjs.finite(config?.barBorderWidth, 0);
5707
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
5708
- const fill2 = chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id);
5707
+ const stroke = chunkSKGJXCAO_cjs.paint(config?.barBorderColor || "#000000", diagnostics, chart.id);
5708
+ const strokeWidth = chunkSKGJXCAO_cjs.finite(config?.barBorderWidth, 0);
5709
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
5710
+ const fill2 = chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id);
5709
5711
  const nodes = [...createGlassBackdropNodes(context, mark.id, mark.path)];
5710
5712
  if (shadow) {
5711
5713
  nodes.push({
@@ -5729,7 +5731,7 @@ function barNodes(context, mark) {
5729
5731
  valueIndex: mark.valueIndex,
5730
5732
  mark: "bar",
5731
5733
  radius: config?.barCornerRadius ?? 2,
5732
- colorProp: chunkUHKFJBY5_cjs.seriesValueColorProp(mark.series.id, mark.valueIndex),
5734
+ colorProp: chunkSKGJXCAO_cjs.seriesValueColorProp(mark.series.id, mark.valueIndex),
5733
5735
  hasColorOverride: mark.series.colors?.[mark.valueIndex] != null
5734
5736
  },
5735
5737
  style: { fill: fill2, stroke, strokeWidth, innerShadow: shadow }
@@ -5759,7 +5761,7 @@ function pushBar(context, rows, layers, series, seriesIndex, valueIndex, value,
5759
5761
  layers.tracks.push(...createBarTrackNodes(context, mark.id, mark.trackFrame, "horizontal"));
5760
5762
  }
5761
5763
  layers.bars.push(...barNodes(context, mark));
5762
- const glow = chunkUHKFJBY5_cjs.finite(chart.config?.barGlow, 0);
5764
+ const glow = chunkSKGJXCAO_cjs.finite(chart.config?.barGlow, 0);
5763
5765
  if (glow > 0 && mark.frame.width > 0) {
5764
5766
  layers.glows.push(
5765
5767
  createBarGlowNode(context, `chart-bar-glow-${chart.id}-${mark.id}`, mark.path, mark.color, glow, mark.bounds)
@@ -5768,7 +5770,7 @@ function pushBar(context, rows, layers, series, seriesIndex, valueIndex, value,
5768
5770
  layers.labels.push(...labelNodes2(context, mark, highest));
5769
5771
  }
5770
5772
  function renderHorizontalBars(context) {
5771
- const rows = chunkUHKFJBY5_cjs.horizontalRows(context.chart, context.plot);
5773
+ const rows = chunkSKGJXCAO_cjs.horizontalRows(context.chart, context.plot);
5772
5774
  const layers = { tracks: [], bars: [], glows: [], labels: [] };
5773
5775
  context.chart.series.forEach((series, seriesIndex) => {
5774
5776
  const numeric = series.values.map((value) => typeof value === "number" ? value : value[1]);
@@ -5783,8 +5785,8 @@ function renderHorizontalBars(context) {
5783
5785
  // src/renderScene/charts/renderers/bar/stacked.ts
5784
5786
  function slotOf(context, mode) {
5785
5787
  const { chart, plot } = context;
5786
- const slotWidth = plot.width / chunkUHKFJBY5_cjs.barCategoryCount(chart);
5787
- const groupGap = Math.min(Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.barGroupGap, 8)), Math.max(0, slotWidth - 1));
5788
+ const slotWidth = plot.width / chunkSKGJXCAO_cjs.barCategoryCount(chart);
5789
+ const groupGap = Math.min(Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.barGroupGap, 8)), Math.max(0, slotWidth - 1));
5788
5790
  return {
5789
5791
  slotWidth,
5790
5792
  groupGap,
@@ -5795,19 +5797,19 @@ function slotOf(context, mode) {
5795
5797
  }
5796
5798
  function pathOf(context, x, y, height, slot, radius) {
5797
5799
  const { chart, plot } = context;
5798
- const segments = chart.series.length === 1 ? chunkUHKFJBY5_cjs.finite(chart.config?.barSegments, 0) : 0;
5800
+ const segments = chart.series.length === 1 ? chunkSKGJXCAO_cjs.finite(chart.config?.barSegments, 0) : 0;
5799
5801
  if (segments > 0) {
5800
- return chunkUHKFJBY5_cjs.segmentedBarPath(
5802
+ return chunkSKGJXCAO_cjs.segmentedBarPath(
5801
5803
  { x, y: plot.y, width: slot.barWidth, height: plot.height },
5802
5804
  "vertical",
5803
5805
  segments,
5804
- chunkUHKFJBY5_cjs.finite(chart.config?.barSegmentGap, 4),
5806
+ chunkSKGJXCAO_cjs.finite(chart.config?.barSegmentGap, 4),
5805
5807
  radius,
5806
5808
  height / plot.height,
5807
5809
  chart.config?.barSegmentSnap !== false
5808
5810
  );
5809
5811
  }
5810
- return chunkUHKFJBY5_cjs.barPath(x, y, slot.barWidth, height, radius, chart.config?.barRoundedBottom === true);
5812
+ return chunkSKGJXCAO_cjs.barPath(x, y, slot.barWidth, height, radius, chart.config?.barRoundedBottom === true);
5811
5813
  }
5812
5814
  function pushLabel(context, layers, series, seriesIndex, valueIndex, slot, frame) {
5813
5815
  const { chart } = context;
@@ -5829,7 +5831,7 @@ function pushLabel(context, layers, series, seriesIndex, valueIndex, slot, frame
5829
5831
  }
5830
5832
  function markOf2(context, mode, slot, series, seriesIndex, valueIndex) {
5831
5833
  const { chart, plot } = context;
5832
- const segment = chunkUHKFJBY5_cjs.stackedSegment(chart, mode, valueIndex, seriesIndex, plot.height);
5834
+ const segment = chunkSKGJXCAO_cjs.stackedSegment(chart, mode, valueIndex, seriesIndex, plot.height);
5833
5835
  const radius = slot.outerSeriesIndex === null || seriesIndex === slot.outerSeriesIndex ? slot.cornerRadius : 0;
5834
5836
  const x = plot.x + valueIndex * slot.slotWidth + slot.groupGap / 2;
5835
5837
  const y = plot.y + plot.height - Math.max(segment.pixelStart, segment.pixelEnd);
@@ -5838,7 +5840,7 @@ function markOf2(context, mode, slot, series, seriesIndex, valueIndex) {
5838
5840
  series,
5839
5841
  valueIndex,
5840
5842
  radius,
5841
- color: series.colors?.[valueIndex] ?? series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length],
5843
+ color: series.colors?.[valueIndex] ?? series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length],
5842
5844
  x,
5843
5845
  y,
5844
5846
  height,
@@ -5849,10 +5851,10 @@ function markOf2(context, mode, slot, series, seriesIndex, valueIndex) {
5849
5851
  function segmentNodes(context, mark) {
5850
5852
  const { chart, plot, bounds, diagnostics, nextOrder } = context;
5851
5853
  const { series, valueIndex, path } = mark;
5852
- const fill2 = chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id);
5853
- const stroke = chunkUHKFJBY5_cjs.paint(chart.config?.barBorderColor || "#000000", diagnostics, chart.id);
5854
- const strokeWidth = chunkUHKFJBY5_cjs.finite(chart.config?.barBorderWidth, 0);
5855
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
5854
+ const fill2 = chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id);
5855
+ const stroke = chunkSKGJXCAO_cjs.paint(chart.config?.barBorderColor || "#000000", diagnostics, chart.id);
5856
+ const strokeWidth = chunkSKGJXCAO_cjs.finite(chart.config?.barBorderWidth, 0);
5857
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
5856
5858
  const nodes = [];
5857
5859
  if (shadow) {
5858
5860
  const plotClip = `M ${plot.x} ${plot.y} H ${plot.x + plot.width} V ${plot.y + plot.height} H ${plot.x} Z`;
@@ -5884,10 +5886,10 @@ function segmentNodes(context, mark) {
5884
5886
  valueIndex,
5885
5887
  mark: "bar",
5886
5888
  radius: mark.radius,
5887
- colorProp: chunkUHKFJBY5_cjs.seriesValueColorProp(series.id, valueIndex),
5889
+ colorProp: chunkSKGJXCAO_cjs.seriesValueColorProp(series.id, valueIndex),
5888
5890
  hasColorOverride: series.colors?.[valueIndex] != null
5889
5891
  },
5890
- prop: chunkUHKFJBY5_cjs.seriesValueProp(series.id, valueIndex),
5892
+ prop: chunkSKGJXCAO_cjs.seriesValueProp(series.id, valueIndex),
5891
5893
  style: { fill: fill2, stroke, strokeWidth, innerShadow: shadow }
5892
5894
  });
5893
5895
  return nodes;
@@ -5901,7 +5903,7 @@ function pushSegment(context, mode, layers, slot, series, seriesIndex, valueInde
5901
5903
  layers.bars.push(...segmentNodes(context, mark));
5902
5904
  const frame = { x: mark.x, y: mark.y, width: slot.barWidth, height: mark.height };
5903
5905
  pushLabel(context, layers, series, seriesIndex, valueIndex, slot, frame);
5904
- const glow = chunkUHKFJBY5_cjs.finite(chart.config?.barGlow, 0);
5906
+ const glow = chunkSKGJXCAO_cjs.finite(chart.config?.barGlow, 0);
5905
5907
  if (glow > 0) {
5906
5908
  layers.glows.push(
5907
5909
  createBarGlowNode(context, `chart-bar-glow-${chart.id}-${series.id}-${valueIndex}`, mark.path, mark.color, glow)
@@ -5912,7 +5914,7 @@ function renderStackedBars(context, mode) {
5912
5914
  const { chart } = context;
5913
5915
  const layers = { tracks: [], bars: [], glows: [], labels: [] };
5914
5916
  const slot = slotOf(context, mode);
5915
- const valueCount = chunkUHKFJBY5_cjs.barCategoryCount(chart);
5917
+ const valueCount = chunkSKGJXCAO_cjs.barCategoryCount(chart);
5916
5918
  for (let valueIndex = 0; valueIndex < valueCount; valueIndex++) {
5917
5919
  chart.series.forEach((series, seriesIndex) => {
5918
5920
  pushSegment(context, mode, layers, slot, series, seriesIndex, valueIndex);
@@ -5927,7 +5929,7 @@ function isSeriesMax2(values, index) {
5927
5929
 
5928
5930
  // src/renderScene/charts/renderers/bar.ts
5929
5931
  function renderBar(context) {
5930
- if (chunkUHKFJBY5_cjs.isHorizontalBar(context.chart)) {
5932
+ if (chunkSKGJXCAO_cjs.isHorizontalBar(context.chart)) {
5931
5933
  return renderHorizontalBars(context);
5932
5934
  }
5933
5935
  if (context.stackedMode) {
@@ -5942,7 +5944,7 @@ function createBoxplotLayout(context) {
5942
5944
  const orientation = chart.config?.orientation ?? "vertical";
5943
5945
  const boxCount = Math.max(1, chart.series.length);
5944
5946
  const slotWidth = (orientation === "horizontal" ? plot.height : plot.width) / boxCount;
5945
- const borderColor = chunkUHKFJBY5_cjs.representativeColor(chart.config?.barBorderColor, "#000000");
5947
+ const borderColor = chunkSKGJXCAO_cjs.representativeColor(chart.config?.barBorderColor, "#000000");
5946
5948
  const widthFraction = Math.min(1, Math.max(0.05, chart.config?.boxWidth ?? 0.6));
5947
5949
  return {
5948
5950
  orientation,
@@ -5951,15 +5953,15 @@ function createBoxplotLayout(context) {
5951
5953
  cornerRadius: chart.config?.barCornerRadius ?? 2,
5952
5954
  showPoints: chart.config?.showBoxplotPoints ?? true,
5953
5955
  borderColor,
5954
- borderWidth: chunkUHKFJBY5_cjs.finite(chart.config?.barBorderWidth, 1),
5955
- whiskerWidth: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.boxWhiskerWidth, 1)),
5956
- medianWidth: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.boxMedianWidth, 2)),
5956
+ borderWidth: chunkSKGJXCAO_cjs.finite(chart.config?.barBorderWidth, 1),
5957
+ whiskerWidth: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.boxWhiskerWidth, 1)),
5958
+ medianWidth: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.boxMedianWidth, 2)),
5957
5959
  medianColor: chart.config?.boxMedianColor ?? borderColor,
5958
5960
  whiskerColor: chart.config?.boxWhiskerColor,
5959
- capSize: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.boxCapSize, 0.4)),
5960
- pointSize: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.boxPointSize, 3)),
5961
- pointOpacity: Math.min(1, Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.boxPointOpacity, 0.7))),
5962
- jitter: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.boxJitter, 1))
5961
+ capSize: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.boxCapSize, 0.4)),
5962
+ pointSize: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.boxPointSize, 3)),
5963
+ pointOpacity: Math.min(1, Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.boxPointOpacity, 0.7))),
5964
+ jitter: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.boxJitter, 1))
5963
5965
  };
5964
5966
  }
5965
5967
 
@@ -5970,7 +5972,7 @@ function boxplotPoint(orientation, center, value) {
5970
5972
  function createBoxplotGeometry(context, layout, seriesIndex, stats) {
5971
5973
  const { chart, plot } = context;
5972
5974
  const { orientation } = layout;
5973
- const valueAt = (value) => orientation === "horizontal" ? plot.x + chunkUHKFJBY5_cjs.mapChartValue(value, chart.axisX, plot.width) : plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(value, chart.axisY, plot.height);
5975
+ const valueAt = (value) => orientation === "horizontal" ? plot.x + chunkSKGJXCAO_cjs.mapChartValue(value, chart.axisX, plot.width) : plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(value, chart.axisY, plot.height);
5974
5976
  const center = plot[orientation === "horizontal" ? "y" : "x"] + seriesIndex * layout.slotWidth + layout.slotWidth / 2;
5975
5977
  return {
5976
5978
  center,
@@ -5985,7 +5987,7 @@ function createBoxplotGeometry(context, layout, seriesIndex, stats) {
5985
5987
  // src/renderScene/charts/renderers/boxplot/points.ts
5986
5988
  function renderSamplePoints(context, layout, mark) {
5987
5989
  const { chart, plot, bounds, diagnostics, nextOrder } = context;
5988
- const valueAt = (value) => layout.orientation === "horizontal" ? plot.x + chunkUHKFJBY5_cjs.mapChartValue(value, chart.axisX, plot.width) : plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(value, chart.axisY, plot.height);
5990
+ const valueAt = (value) => layout.orientation === "horizontal" ? plot.x + chunkSKGJXCAO_cjs.mapChartValue(value, chart.axisX, plot.width) : plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(value, chart.axisY, plot.height);
5989
5991
  if (layout.pointSize <= 0) {
5990
5992
  return [];
5991
5993
  }
@@ -6001,7 +6003,7 @@ function renderSamplePoints(context, layout, mark) {
6001
6003
  cy: y,
6002
6004
  rx: layout.pointSize,
6003
6005
  ry: layout.pointSize,
6004
- style: { fill: chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id), opacity: layout.pointOpacity }
6006
+ style: { fill: chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id), opacity: layout.pointOpacity }
6005
6007
  };
6006
6008
  });
6007
6009
  }
@@ -6025,7 +6027,7 @@ function renderBoxAndWhiskers(context, layout, mark) {
6025
6027
  }
6026
6028
  function whiskerColor(layout, mark) {
6027
6029
  if (layout.whiskerColor === "series") {
6028
- return chunkUHKFJBY5_cjs.representativeColor(mark.color, layout.borderColor);
6030
+ return chunkSKGJXCAO_cjs.representativeColor(mark.color, layout.borderColor);
6029
6031
  }
6030
6032
  return layout.whiskerColor;
6031
6033
  }
@@ -6107,7 +6109,7 @@ function createBoxNode(context, layout, mark) {
6107
6109
  height,
6108
6110
  rx: layout.cornerRadius,
6109
6111
  style: {
6110
- fill: chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id),
6112
+ fill: chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id),
6111
6113
  stroke: { kind: "solid", color: layout.borderColor },
6112
6114
  strokeWidth: layout.borderWidth
6113
6115
  }
@@ -6116,12 +6118,12 @@ function createBoxNode(context, layout, mark) {
6116
6118
 
6117
6119
  // src/renderScene/charts/renderers/boxplot/series.ts
6118
6120
  function renderBoxplotSeries(context, layout, series, seriesIndex) {
6119
- const stats = chunkUHKFJBY5_cjs.computeBoxplotStats(series.values);
6121
+ const stats = chunkSKGJXCAO_cjs.computeBoxplotStats(series.values);
6120
6122
  if (!stats) {
6121
6123
  return [];
6122
6124
  }
6123
6125
  const geometry = createBoxplotGeometry(context, layout, seriesIndex, stats);
6124
- const color = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
6126
+ const color = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
6125
6127
  const mark = {
6126
6128
  id: `${context.chart.id}-${series.id}`,
6127
6129
  series,
@@ -6183,21 +6185,21 @@ function metricComponent(chart, point) {
6183
6185
  }
6184
6186
  function customPointPosition(context, value) {
6185
6187
  return {
6186
- x: context.plot.x + chunkUHKFJBY5_cjs.mapChartValue(value[0], context.chart.axisX, context.plot.width),
6187
- y: context.plot.y + context.plot.height - chunkUHKFJBY5_cjs.mapChartValue(value[1], context.chart.axisY, context.plot.height)
6188
+ x: context.plot.x + chunkSKGJXCAO_cjs.mapChartValue(value[0], context.chart.axisX, context.plot.width),
6189
+ y: context.plot.y + context.plot.height - chunkSKGJXCAO_cjs.mapChartValue(value[1], context.chart.axisY, context.plot.height)
6188
6190
  };
6189
6191
  }
6190
6192
  function customSeriesStyle(context, series, seriesIndex) {
6191
- const color = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
6193
+ const color = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
6192
6194
  return {
6193
- fill: chunkUHKFJBY5_cjs.paint(color, context.diagnostics, context.chart.id),
6195
+ fill: chunkSKGJXCAO_cjs.paint(color, context.diagnostics, context.chart.id),
6194
6196
  stroke: series.stroke ? { kind: "solid", color: series.stroke } : void 0,
6195
- strokeWidth: series.stroke ? chunkUHKFJBY5_cjs.finite(series.strokeWidth, 1) : void 0
6197
+ strokeWidth: series.stroke ? chunkSKGJXCAO_cjs.finite(series.strokeWidth, 1) : void 0
6196
6198
  };
6197
6199
  }
6198
6200
  function createCustomSymbolMark(context, mark) {
6199
6201
  const symbol = mark.series.symbol;
6200
- const size = chunkUHKFJBY5_cjs.finite(mark.series.size, 3);
6202
+ const size = chunkSKGJXCAO_cjs.finite(mark.series.size, 3);
6201
6203
  const scale = symbol?.normalized ? size * 2 : 1;
6202
6204
  const offset = symbol?.normalized ? 0.5 : 0;
6203
6205
  const points = (symbol?.points ?? []).map(([x, y]) => ({
@@ -6209,12 +6211,12 @@ function createCustomSymbolMark(context, mark) {
6209
6211
  id: customMarkId(context.chart, mark.series, mark.valueIndex),
6210
6212
  order: context.nextOrder(),
6211
6213
  bounds: context.bounds,
6212
- d: chunkUHKFJBY5_cjs.freeformPathData({ points, tension: chunkUHKFJBY5_cjs.finite(symbol?.tension, 0), closed: true }),
6214
+ d: chunkSKGJXCAO_cjs.freeformPathData({ points, tension: chunkSKGJXCAO_cjs.finite(symbol?.tension, 0), closed: true }),
6213
6215
  style: mark.style
6214
6216
  };
6215
6217
  }
6216
6218
  function createCustomPointMark(context, mark) {
6217
- const radius = chunkUHKFJBY5_cjs.finite(mark.series.size, 3);
6219
+ const radius = chunkSKGJXCAO_cjs.finite(mark.series.size, 3);
6218
6220
  return {
6219
6221
  type: "ellipse",
6220
6222
  id: customMarkId(context.chart, mark.series, mark.valueIndex),
@@ -6238,7 +6240,7 @@ function renderConnectedPairs(context) {
6238
6240
  const zones = chart.config?.zones ?? [];
6239
6241
  const betterColor = zones[0]?.color ?? "#10b981";
6240
6242
  const worseColor = zones[1]?.color ?? "#ec4899";
6241
- const tieColor = zones[2]?.color ?? chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL;
6243
+ const tieColor = zones[2]?.color ?? chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL;
6242
6244
  const reverse = Boolean(chart.config?.reverseComparison);
6243
6245
  const count = Math.min(beforeValues.length, afterValues.length);
6244
6246
  const categories = chart.config?.categories ?? [];
@@ -6253,7 +6255,7 @@ function renderConnectedPairs(context) {
6253
6255
  const better = reverse ? afterMetric < beforeMetric : afterMetric > beforeMetric;
6254
6256
  const worse = reverse ? afterMetric > beforeMetric : afterMetric < beforeMetric;
6255
6257
  const comparisonColor = better ? betterColor : worse ? worseColor : tieColor;
6256
- const radius = chunkUHKFJBY5_cjs.finite(afterSeries.size, 3);
6258
+ const radius = chunkSKGJXCAO_cjs.finite(afterSeries.size, 3);
6257
6259
  nodes.push(createConnectorLine(context, index, beforePoint, afterPoint, comparisonColor));
6258
6260
  nodes.push(
6259
6261
  createCustomPointMark(context, {
@@ -6261,9 +6263,9 @@ function renderConnectedPairs(context) {
6261
6263
  valueIndex: index,
6262
6264
  point: beforePoint,
6263
6265
  style: {
6264
- fill: chunkUHKFJBY5_cjs.paint(chart.config?.customBeforeFill ?? chart.gridColor ?? "#e2e8f0", context.diagnostics, chart.id),
6266
+ fill: chunkSKGJXCAO_cjs.paint(chart.config?.customBeforeFill ?? chart.gridColor ?? "#e2e8f0", context.diagnostics, chart.id),
6265
6267
  stroke: { kind: "solid", color: chart.config?.customBeforeStroke ?? HOLLOW_POINT_STROKE },
6266
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.config?.customBeforeStrokeWidth, 1.5)
6268
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.config?.customBeforeStrokeWidth, 1.5)
6267
6269
  }
6268
6270
  })
6269
6271
  );
@@ -6273,7 +6275,7 @@ function renderConnectedPairs(context) {
6273
6275
  valueIndex: index,
6274
6276
  point: afterPoint,
6275
6277
  style: {
6276
- fill: chunkUHKFJBY5_cjs.paint(comparisonColor, context.diagnostics, chart.id),
6278
+ fill: chunkSKGJXCAO_cjs.paint(comparisonColor, context.diagnostics, chart.id),
6277
6279
  stroke: void 0,
6278
6280
  strokeWidth: void 0
6279
6281
  }
@@ -6300,7 +6302,7 @@ function createConnectorLine(context, index, from, to, color) {
6300
6302
  style: {
6301
6303
  fill: { kind: "none" },
6302
6304
  stroke: { kind: "solid", color },
6303
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.config?.customConnectorWidth, 2),
6305
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.config?.customConnectorWidth, 2),
6304
6306
  opacity: chart.config?.customConnectorOpacity,
6305
6307
  dash: connectorDash(chart.config?.customConnectorDash)
6306
6308
  }
@@ -6321,7 +6323,7 @@ function createConnectorLabel(context, index, beforePoint, afterPoint, radius, t
6321
6323
  height: 16
6322
6324
  };
6323
6325
  return {
6324
- ...chunkUHKFJBY5_cjs.chartText({
6326
+ ...chunkSKGJXCAO_cjs.chartText({
6325
6327
  id: `chart-custom-label-${chart.id}-${index}`,
6326
6328
  order: nextOrder(),
6327
6329
  bounds,
@@ -6330,7 +6332,7 @@ function createConnectorLabel(context, index, beforePoint, afterPoint, radius, t
6330
6332
  chart,
6331
6333
  align: horizontal ? "left" : "center"
6332
6334
  }),
6333
- fontSize: Math.max(6, chunkUHKFJBY5_cjs.finite(chart.config?.customLabelSize, Math.max(9, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12)) - 2)),
6335
+ fontSize: Math.max(6, chunkSKGJXCAO_cjs.finite(chart.config?.customLabelSize, Math.max(9, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12)) - 2)),
6334
6336
  ...chart.config?.customLabelColor ? { color: chart.config.customLabelColor } : {}
6335
6337
  };
6336
6338
  }
@@ -6342,8 +6344,8 @@ function classifyFieldData(context) {
6342
6344
  const vectorSeries = chart.series.filter((series) => tupleSize(series.values[0]) === 4);
6343
6345
  const scalarSamples = scalarSeries.flatMap(
6344
6346
  (series) => series.values.map(([x, y, value]) => ({
6345
- x: chunkUHKFJBY5_cjs.mapChartValue(x, chart.axisX, plot.width),
6346
- y: plot.height - chunkUHKFJBY5_cjs.mapChartValue(y, chart.axisY, plot.height),
6347
+ x: chunkSKGJXCAO_cjs.mapChartValue(x, chart.axisX, plot.width),
6348
+ y: plot.height - chunkSKGJXCAO_cjs.mapChartValue(y, chart.axisY, plot.height),
6347
6349
  value
6348
6350
  }))
6349
6351
  );
@@ -6407,20 +6409,20 @@ function createLegendLabels(context, minimum, maximum, geometry) {
6407
6409
  const { chart, bounds, nextOrder } = context;
6408
6410
  const y = geometry.y + geometry.height + 3;
6409
6411
  return [
6410
- chunkUHKFJBY5_cjs.chartText({
6412
+ chunkSKGJXCAO_cjs.chartText({
6411
6413
  id: `chart-field-colorbar-min-${chart.id}`,
6412
6414
  order: nextOrder(),
6413
6415
  bounds,
6414
6416
  frame: { x: geometry.x, y, width: 80, height: 16 },
6415
- text: chunkUHKFJBY5_cjs.formatFieldValue(minimum),
6417
+ text: chunkSKGJXCAO_cjs.formatFieldValue(minimum),
6416
6418
  chart
6417
6419
  }),
6418
- chunkUHKFJBY5_cjs.chartText({
6420
+ chunkSKGJXCAO_cjs.chartText({
6419
6421
  id: `chart-field-colorbar-max-${chart.id}`,
6420
6422
  order: nextOrder(),
6421
6423
  bounds,
6422
6424
  frame: { x: geometry.x + geometry.width - 80, y, width: 80, height: 16 },
6423
- text: chunkUHKFJBY5_cjs.formatFieldValue(maximum),
6425
+ text: chunkSKGJXCAO_cjs.formatFieldValue(maximum),
6424
6426
  chart,
6425
6427
  align: "right"
6426
6428
  })
@@ -6433,7 +6435,7 @@ function colorAtRamp(ramp, value) {
6433
6435
  if (!ramp?.stops.length) {
6434
6436
  return RAMP_FALLBACK_COLOR;
6435
6437
  }
6436
- return chunkUHKFJBY5_cjs.interpolateHexColorStops(ramp.stops, value);
6438
+ return chunkSKGJXCAO_cjs.interpolateHexColorStops(ramp.stops, value);
6437
6439
  }
6438
6440
 
6439
6441
  // src/renderScene/charts/field/isolines.ts
@@ -6643,7 +6645,7 @@ function createIsoline(context, grid, threshold, thresholdIndex) {
6643
6645
  }
6644
6646
  const chains = stitchIsolineSegments(segments);
6645
6647
  const path = chains.map(
6646
- (chain) => chunkUHKFJBY5_cjs.linePathData(
6648
+ (chain) => chunkSKGJXCAO_cjs.linePathData(
6647
6649
  chain.map(([x, y]) => ({ x: plot.x + x, y: plot.y + y })),
6648
6650
  ISOLINE_TENSION
6649
6651
  )
@@ -6667,7 +6669,7 @@ function createIsoline(context, grid, threshold, thresholdIndex) {
6667
6669
  function renderVectorField(context, seriesList) {
6668
6670
  const nodes = [];
6669
6671
  seriesList.forEach((series, seriesIndex) => {
6670
- const color = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
6672
+ const color = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
6671
6673
  series.values.forEach((vector, vectorIndex) => {
6672
6674
  nodes.push(createVectorNode(context, series.id, vector, vectorIndex, color));
6673
6675
  });
@@ -6677,10 +6679,10 @@ function renderVectorField(context, seriesList) {
6677
6679
  function createVectorNode(context, seriesId, vector, vectorIndex, color) {
6678
6680
  const { chart, plot, bounds, diagnostics, nextOrder } = context;
6679
6681
  const [x, y, angle, magnitude] = vector;
6680
- const startX = plot.x + chunkUHKFJBY5_cjs.mapChartValue(x, chart.axisX, plot.width);
6681
- const startY = plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(y, chart.axisY, plot.height);
6682
- const endX = plot.x + chunkUHKFJBY5_cjs.mapChartValue(x + Math.cos(angle) * magnitude, chart.axisX, plot.width);
6683
- const endY = plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(y + Math.sin(angle) * magnitude, chart.axisY, plot.height);
6682
+ const startX = plot.x + chunkSKGJXCAO_cjs.mapChartValue(x, chart.axisX, plot.width);
6683
+ const startY = plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(y, chart.axisY, plot.height);
6684
+ const endX = plot.x + chunkSKGJXCAO_cjs.mapChartValue(x + Math.cos(angle) * magnitude, chart.axisX, plot.width);
6685
+ const endY = plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(y + Math.sin(angle) * magnitude, chart.axisY, plot.height);
6684
6686
  return {
6685
6687
  type: "path",
6686
6688
  id: `chart-field-vector-${chart.id}-${seriesId}-${vectorIndex}`,
@@ -6690,7 +6692,7 @@ function createVectorNode(context, seriesId, vector, vectorIndex, color) {
6690
6692
  markerEnd: "filled_arrow",
6691
6693
  style: {
6692
6694
  fill: { kind: "none" },
6693
- stroke: chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id),
6695
+ stroke: chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id),
6694
6696
  strokeWidth: 2
6695
6697
  }
6696
6698
  };
@@ -6737,7 +6739,7 @@ function createHeatmapCell(layout, series, rowIndex, columnIndex) {
6737
6739
  };
6738
6740
  }
6739
6741
  function colorForValue(value, layout) {
6740
- return chunkUHKFJBY5_cjs.zoneColorAtValue(value, layout.bands, layout.zones);
6742
+ return chunkSKGJXCAO_cjs.zoneColorAtValue(value, layout.bands, layout.zones);
6741
6743
  }
6742
6744
  function renderHeatmapCell(context, layout, cell) {
6743
6745
  const background = createCellBackground(context, layout, cell);
@@ -6752,7 +6754,7 @@ function createCellBackground(context, layout, cell) {
6752
6754
  const style = {
6753
6755
  fill: { kind: "solid", color: cell.color },
6754
6756
  stroke: { kind: "solid", color: chart.config?.cellStrokeColor ?? chart.gridColor ?? "#e2e8f0" },
6755
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.config?.cellStrokeWidth, chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1))
6757
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.config?.cellStrokeWidth, chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1))
6756
6758
  };
6757
6759
  if (chart.config?.cellShape === "circle") {
6758
6760
  return {
@@ -6779,9 +6781,9 @@ function createCellBackground(context, layout, cell) {
6779
6781
  }
6780
6782
  function createCellValueLabel(context, layout, cell) {
6781
6783
  const { chart, bounds, nextOrder } = context;
6782
- const size = Math.max(6, chunkUHKFJBY5_cjs.finite(chart.config?.cellValueSize, layout.fontSize));
6784
+ const size = Math.max(6, chunkSKGJXCAO_cjs.finite(chart.config?.cellValueSize, layout.fontSize));
6783
6785
  return {
6784
- ...chunkUHKFJBY5_cjs.chartText({
6786
+ ...chunkSKGJXCAO_cjs.chartText({
6785
6787
  id: `chart-heatmap-value-${chart.id}-${cell.seriesId}-${cell.columnIndex}`,
6786
6788
  order: nextOrder(),
6787
6789
  bounds,
@@ -6796,7 +6798,7 @@ function createCellValueLabel(context, layout, cell) {
6796
6798
  align: "center"
6797
6799
  }),
6798
6800
  ...chart.config?.cellValueSize === void 0 ? {} : { fontSize: size },
6799
- color: chart.config?.cellValueColor ?? chunkUHKFJBY5_cjs.contrastTextColor(cell.color)
6801
+ color: chart.config?.cellValueColor ?? chunkSKGJXCAO_cjs.contrastTextColor(cell.color)
6800
6802
  };
6801
6803
  }
6802
6804
 
@@ -6809,9 +6811,9 @@ function createHeatmapLayout(context) {
6809
6811
  return {
6810
6812
  rows: chart.series,
6811
6813
  columns,
6812
- bands: chunkUHKFJBY5_cjs.axisBands(chart.axisY),
6813
- zones: chart.config?.zones?.length ? chart.config.zones : chunkUHKFJBY5_cjs.DEFAULT_HEATMAP_ZONES,
6814
- fontSize: Math.max(9, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12)),
6814
+ bands: chunkSKGJXCAO_cjs.axisBands(chart.axisY),
6815
+ zones: chart.config?.zones?.length ? chart.config.zones : chunkSKGJXCAO_cjs.DEFAULT_HEATMAP_ZONES,
6816
+ fontSize: Math.max(9, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12)),
6815
6817
  headerFontSize: headerFontSize(chart),
6816
6818
  legendGap: legendGap(chart),
6817
6819
  sides,
@@ -6819,10 +6821,10 @@ function createHeatmapLayout(context) {
6819
6821
  grid: createHeatmapGrid(context, reservedSpace, sides, columns.length)
6820
6822
  };
6821
6823
  }
6822
- var headerFontSize = (chart) => Math.max(9, chunkUHKFJBY5_cjs.finite(chart.axisFontSize ?? chart.fontSize, 12));
6823
- var rowGap = (chart) => Math.min(120, Math.max(0, chunkUHKFJBY5_cjs.finite(chart.yLabelGap, 6)));
6824
- var columnGap = (chart) => Math.min(120, Math.max(0, chunkUHKFJBY5_cjs.finite(chart.xLabelGap, 4)));
6825
- var legendGap = (chart) => Math.min(80, Math.max(0, chunkUHKFJBY5_cjs.finite(chart.legendGap, 6)));
6824
+ var headerFontSize = (chart) => Math.max(9, chunkSKGJXCAO_cjs.finite(chart.axisFontSize ?? chart.fontSize, 12));
6825
+ var rowGap = (chart) => Math.min(120, Math.max(0, chunkSKGJXCAO_cjs.finite(chart.yLabelGap, 6)));
6826
+ var columnGap = (chart) => Math.min(120, Math.max(0, chunkSKGJXCAO_cjs.finite(chart.xLabelGap, 4)));
6827
+ var legendGap = (chart) => Math.min(80, Math.max(0, chunkSKGJXCAO_cjs.finite(chart.legendGap, 6)));
6826
6828
  function heatmapSides(context) {
6827
6829
  const { chart } = context;
6828
6830
  return {
@@ -6841,7 +6843,7 @@ function heatmapReservedSpace(context, sides) {
6841
6843
  const { chart } = context;
6842
6844
  const fontSize = headerFontSize(chart);
6843
6845
  const longestLabel = chart.series.reduce(
6844
- (max, series) => Math.max(max, chunkUHKFJBY5_cjs.estimateTextWidth(series.label ?? "", fontSize, false)),
6846
+ (max, series) => Math.max(max, chunkSKGJXCAO_cjs.estimateTextWidth(series.label ?? "", fontSize, false)),
6845
6847
  0
6846
6848
  );
6847
6849
  const vertical = sides.legend === "left" || sides.legend === "right";
@@ -6857,8 +6859,8 @@ function heatmapReservedSpace(context, sides) {
6857
6859
  }
6858
6860
  function columnHeaderRoom(context) {
6859
6861
  const { chart } = context;
6860
- const tilt = chunkUHKFJBY5_cjs.labelTilt(chart);
6861
- return tilt > 0 ? Math.min(context.plot.height * 0.4, chunkUHKFJBY5_cjs.tiltedLabelRoom(chart, heatmapColumns(context), tilt) + columnGap(chart) + 4) : headerFontSize(chart) + 2 + columnGap(chart) + 6;
6862
+ const tilt = chunkSKGJXCAO_cjs.labelTilt(chart);
6863
+ return tilt > 0 ? Math.min(context.plot.height * 0.4, chunkSKGJXCAO_cjs.tiltedLabelRoom(chart, heatmapColumns(context), tilt) + columnGap(chart) + 4) : headerFontSize(chart) + 2 + columnGap(chart) + 6;
6862
6864
  }
6863
6865
  function createHeatmapGrid(context, reservedSpace, sides, columnCount) {
6864
6866
  const { chart } = context;
@@ -6869,7 +6871,7 @@ function createHeatmapGrid(context, reservedSpace, sides, columnCount) {
6869
6871
  const width = Math.max(1, context.plot.width - left - right);
6870
6872
  const height = Math.max(1, context.plot.height - top - bottom);
6871
6873
  const rowCount = chart.series.length;
6872
- const cellGap = Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.cellGap, 0));
6874
+ const cellGap = Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.cellGap, 0));
6873
6875
  let cellWidth = columnCount ? width / columnCount : width;
6874
6876
  let cellHeight = rowCount ? height / rowCount : height;
6875
6877
  let gridWidth = width;
@@ -6889,7 +6891,7 @@ function createHeatmapGrid(context, reservedSpace, sides, columnCount) {
6889
6891
  cellWidth,
6890
6892
  cellHeight,
6891
6893
  cellGap,
6892
- cellRadius: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.barCornerRadius, cellGap))
6894
+ cellRadius: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.barCornerRadius, cellGap))
6893
6895
  };
6894
6896
  }
6895
6897
 
@@ -6908,7 +6910,7 @@ function createRowHeader(context, layout, series, rowIndex) {
6908
6910
  const room = layout.reservedSpace.rowHeaders;
6909
6911
  const gap = rowGap(chart);
6910
6912
  const x = layout.sides.rows === "left" ? layout.grid.x - room : layout.grid.x + layout.grid.width + gap;
6911
- return chunkUHKFJBY5_cjs.chartText({
6913
+ return chunkSKGJXCAO_cjs.chartText({
6912
6914
  id: `chart-heatmap-row-${chart.id}-${series.id}`,
6913
6915
  order: nextOrder(),
6914
6916
  bounds,
@@ -6934,12 +6936,12 @@ function createColumnHeader(context, layout, label, columnIndex) {
6934
6936
  const { chart, bounds, nextOrder } = context;
6935
6937
  const above = layout.sides.columns === "top";
6936
6938
  const centerX = layout.grid.x + (columnIndex + 0.5) * layout.grid.cellWidth;
6937
- const tilt = chunkUHKFJBY5_cjs.labelTilt(chart);
6939
+ const tilt = chunkSKGJXCAO_cjs.labelTilt(chart);
6938
6940
  const gap = columnGap(chart);
6939
6941
  const id = `chart-heatmap-col-${chart.id}-${columnIndex}`;
6940
6942
  if (tilt > 0) {
6941
- const { frame, rotation } = above ? chunkUHKFJBY5_cjs.labelAboveFrame(chart, label, tilt, { x: centerX, y: layout.grid.y - gap }) : chunkUHKFJBY5_cjs.labelBelowFrame(chart, label, tilt, { x: centerX, y: layout.grid.y + layout.grid.height + gap });
6942
- return chunkUHKFJBY5_cjs.chartText({
6943
+ const { frame, rotation } = above ? chunkSKGJXCAO_cjs.labelAboveFrame(chart, label, tilt, { x: centerX, y: layout.grid.y - gap }) : chunkSKGJXCAO_cjs.labelBelowFrame(chart, label, tilt, { x: centerX, y: layout.grid.y + layout.grid.height + gap });
6944
+ return chunkSKGJXCAO_cjs.chartText({
6943
6945
  id,
6944
6946
  order: nextOrder(),
6945
6947
  bounds,
@@ -6951,7 +6953,7 @@ function createColumnHeader(context, layout, label, columnIndex) {
6951
6953
  role: "axis"
6952
6954
  });
6953
6955
  }
6954
- return chunkUHKFJBY5_cjs.chartText({
6956
+ return chunkSKGJXCAO_cjs.chartText({
6955
6957
  id,
6956
6958
  order: nextOrder(),
6957
6959
  bounds,
@@ -7029,7 +7031,7 @@ function renderHeatmapLegend(context, layout) {
7029
7031
  return [];
7030
7032
  }
7031
7033
  const place = barPlace(layout);
7032
- const barBounds = chunkUHKFJBY5_cjs.boxBounds({ x: place.x, y: place.y, width: place.width, height: place.height });
7034
+ const barBounds = chunkSKGJXCAO_cjs.boxBounds({ x: place.x, y: place.y, width: place.width, height: place.height });
7033
7035
  return [createGradientBar(context, layout, place, barBounds), ...createBoundaryTicks(context, layout, place)];
7034
7036
  }
7035
7037
  function bandRatio(layout, value) {
@@ -7043,7 +7045,7 @@ function createGradientBar(context, layout, place, barBounds) {
7043
7045
  const zones = layout.zones.slice(0, bandCount);
7044
7046
  const stops = zones.map((zone, index) => ({
7045
7047
  offset: bandRatio(layout, layout.bands[index + 1] ?? layout.bands[layout.bands.length - 1]) * 100,
7046
- color: zone.color ?? chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL
7048
+ color: zone.color ?? chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL
7047
7049
  }));
7048
7050
  return {
7049
7051
  type: "rect",
@@ -7058,7 +7060,7 @@ function createGradientBar(context, layout, place, barBounds) {
7058
7060
  zoneGradient: { axis: "y", min: chart.axisY.min, max: chart.axisY.max },
7059
7061
  style: {
7060
7062
  // Across the grid it runs from the lowest value on the left; beside it from the lowest at the bottom.
7061
- fill: stops.length ? { kind: "linear-gradient", angle: place.vertical ? 270 : 0, stops } : { kind: "solid", color: chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL },
7063
+ fill: stops.length ? { kind: "linear-gradient", angle: place.vertical ? 270 : 0, stops } : { kind: "solid", color: chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL },
7062
7064
  stroke: { kind: "solid", color: chart.gridColor ?? "#e2e8f0" },
7063
7065
  strokeWidth: 1
7064
7066
  }
@@ -7084,12 +7086,12 @@ function createBoundaryTicks(context, layout, place) {
7084
7086
  strokeWidth: 1
7085
7087
  }
7086
7088
  };
7087
- const label = chunkUHKFJBY5_cjs.chartText({
7089
+ const label = chunkSKGJXCAO_cjs.chartText({
7088
7090
  id: `chart-heatmap-legend-tick-label-${chart.id}-${index}`,
7089
7091
  order: nextOrder(),
7090
7092
  bounds,
7091
7093
  ...labelAt(place, at, index === 0, index === lastIndex, labelHeight),
7092
- text: chunkUHKFJBY5_cjs.formatFieldValue(value),
7094
+ text: chunkSKGJXCAO_cjs.formatFieldValue(value),
7093
7095
  chart
7094
7096
  });
7095
7097
  return [tick, label];
@@ -7456,22 +7458,22 @@ function renderHexbin(context) {
7456
7458
  const { chart, plot, bounds, diagnostics, nextOrder } = context;
7457
7459
  const nodes = [];
7458
7460
  const config = chart.config;
7459
- const hexRadius = Math.max(1, config?.hexRadius ?? chunkUHKFJBY5_cjs.DEFAULT_HEX_RADIUS);
7461
+ const hexRadius = Math.max(1, config?.hexRadius ?? chunkSKGJXCAO_cjs.DEFAULT_HEX_RADIUS);
7460
7462
  const drawRadius = Math.max(0.5, hexRadius - Math.max(0, config?.hexGap ?? 0) * GAP_TO_RADIUS);
7461
7463
  const strokeWidth = config?.hexStrokeWidth ?? 0;
7462
7464
  const minOpacity = Math.min(1, Math.max(0, config?.hexMinOpacity ?? DEFAULT_MIN_OPACITY));
7463
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
7465
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
7464
7466
  const clipPath = shadow ? `M ${plot.x} ${plot.y} H ${plot.x + plot.width} V ${plot.y + plot.height} H ${plot.x} Z` : void 0;
7465
7467
  chart.series.forEach((series, seriesIndex) => {
7466
7468
  const explicit = series.values.length > 0 && Array.isArray(series.values[0]);
7467
7469
  const pairs = explicit ? series.values : series.values.map((y, i) => [chart.axisX.min + i * chart.axisX.step, y]);
7468
7470
  const pixelPoints2 = pairs.map(([vx, vy]) => ({
7469
- x: chunkUHKFJBY5_cjs.mapChartValue(vx, chart.axisX, plot.width),
7470
- y: plot.height - chunkUHKFJBY5_cjs.mapChartValue(vy, chart.axisY, plot.height)
7471
+ x: chunkSKGJXCAO_cjs.mapChartValue(vx, chart.axisX, plot.width),
7472
+ y: plot.height - chunkSKGJXCAO_cjs.mapChartValue(vy, chart.axisY, plot.height)
7471
7473
  }));
7472
7474
  const bins = computeHexBins(pixelPoints2, hexRadius);
7473
7475
  const maxCount = Math.max(1, ...bins.map((bin) => bin.count));
7474
- const color = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
7476
+ const color = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
7475
7477
  const ramp = config?.scale;
7476
7478
  bins.forEach((bin, i) => {
7477
7479
  const share = bin.count / maxCount;
@@ -7483,8 +7485,8 @@ function renderHexbin(context) {
7483
7485
  bounds,
7484
7486
  d: hexPath(plot.x + bin.cx, plot.y + bin.cy, drawRadius),
7485
7487
  style: {
7486
- fill: chunkUHKFJBY5_cjs.paint(fill2, diagnostics, chart.id),
7487
- stroke: strokeWidth > 0 ? chunkUHKFJBY5_cjs.paint(config?.hexStrokeColor ?? fill2, diagnostics, chart.id) : void 0,
7488
+ fill: chunkSKGJXCAO_cjs.paint(fill2, diagnostics, chart.id),
7489
+ stroke: strokeWidth > 0 ? chunkSKGJXCAO_cjs.paint(config?.hexStrokeColor ?? fill2, diagnostics, chart.id) : void 0,
7488
7490
  strokeWidth: strokeWidth > 0 ? strokeWidth : void 0,
7489
7491
  opacity: ramp ? void 0 : Math.max(minOpacity, share),
7490
7492
  shadow,
@@ -7506,8 +7508,8 @@ function seriesValuePairs(chart, series) {
7506
7508
  function pixelPoints(context, pairs) {
7507
7509
  const { chart, plot } = context;
7508
7510
  return pairs.map(([x, y]) => ({
7509
- x: plot.x + chunkUHKFJBY5_cjs.mapChartValue(x, chart.axisX, plot.width),
7510
- y: plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(y, chart.axisY, plot.height)
7511
+ x: plot.x + chunkSKGJXCAO_cjs.mapChartValue(x, chart.axisX, plot.width),
7512
+ y: plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(y, chart.axisY, plot.height)
7511
7513
  }));
7512
7514
  }
7513
7515
 
@@ -7517,7 +7519,7 @@ function createLineAreaFill(context, series, points, color, tension, areaOpacity
7517
7519
  const baselineY = plot.y + plot.height;
7518
7520
  const first = points[0];
7519
7521
  const last = points[points.length - 1];
7520
- const d = `${chunkUHKFJBY5_cjs.linePathData(points, tension)} L ${last.x} ${baselineY} L ${first.x} ${baselineY} Z`;
7522
+ const d = `${chunkSKGJXCAO_cjs.linePathData(points, tension)} L ${last.x} ${baselineY} L ${first.x} ${baselineY} Z`;
7521
7523
  const top = Math.min(...points.map((point) => point.y));
7522
7524
  const centerX = (Math.min(...points.map((point) => point.x)) + Math.max(...points.map((point) => point.x))) / 2;
7523
7525
  const halfHeight = (baselineY - top) / 2;
@@ -7539,8 +7541,8 @@ function createLineAreaFill(context, series, points, color, tension, areaOpacity
7539
7541
  kind: "linear-gradient",
7540
7542
  angle: 90,
7541
7543
  stops: [
7542
- { offset: 0, color: chunkUHKFJBY5_cjs.colorWithAlpha(color, areaOpacity) },
7543
- { offset: 100, color: chunkUHKFJBY5_cjs.colorWithAlpha(color, 0) }
7544
+ { offset: 0, color: chunkSKGJXCAO_cjs.colorWithAlpha(color, areaOpacity) },
7545
+ { offset: 100, color: chunkSKGJXCAO_cjs.colorWithAlpha(color, 0) }
7544
7546
  ]
7545
7547
  },
7546
7548
  stroke: { kind: "none" },
@@ -7563,7 +7565,7 @@ function guideNode(context, mark) {
7563
7565
  d: `M ${mark.point.x} ${mark.point.y} V ${plot.y + plot.height}`,
7564
7566
  style: {
7565
7567
  fill: { kind: "none" },
7566
- stroke: chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id),
7568
+ stroke: chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id),
7567
7569
  strokeWidth: 1,
7568
7570
  dash: [3, 4],
7569
7571
  opacity: 0.55,
@@ -7584,7 +7586,7 @@ function dotNode(context, mark) {
7584
7586
  rx: mark.radius,
7585
7587
  ry: mark.radius,
7586
7588
  style: {
7587
- fill: chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id),
7589
+ fill: chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id),
7588
7590
  shadow: glow ? { color: mark.color, opacity: 0.9, blur: glow, dx: 0, dy: 0 } : void 0,
7589
7591
  pointerEvents: "none"
7590
7592
  }
@@ -7597,7 +7599,7 @@ function labelNode3(context, mark, value) {
7597
7599
  const text = formatHighlight(config?.highlightLabelFormat, config?.categories?.[mark.index] ?? "", value);
7598
7600
  const width = Math.max(48, text.length * fontSize * 0.62);
7599
7601
  return {
7600
- ...chunkUHKFJBY5_cjs.chartText({
7602
+ ...chunkSKGJXCAO_cjs.chartText({
7601
7603
  id: `chart-highlight-label-${mark.key}`,
7602
7604
  order: nextOrder(),
7603
7605
  bounds,
@@ -7677,15 +7679,15 @@ function createLineError(context, mark) {
7677
7679
  return null;
7678
7680
  }
7679
7681
  const { chart, plot, bounds, nextOrder } = context;
7680
- const [lower, upper] = chunkUHKFJBY5_cjs.errorBarRange(mark.value, mark.error);
7681
- return chunkUHKFJBY5_cjs.createVerticalErrorWhiskerNode({
7682
+ const [lower, upper] = chunkSKGJXCAO_cjs.errorBarRange(mark.value, mark.error);
7683
+ return chunkSKGJXCAO_cjs.createVerticalErrorWhiskerNode({
7682
7684
  id: `chart-line-error-${chart.id}-${mark.seriesId}-${mark.valueIndex}`,
7683
7685
  order: nextOrder(),
7684
7686
  bounds,
7685
7687
  geometry: {
7686
7688
  centerX: mark.position.x,
7687
- startY: plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(lower, chart.axisY, plot.height),
7688
- endY: plot.y + plot.height - chunkUHKFJBY5_cjs.mapChartValue(upper, chart.axisY, plot.height)
7689
+ startY: plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(lower, chart.axisY, plot.height),
7690
+ endY: plot.y + plot.height - chunkSKGJXCAO_cjs.mapChartValue(upper, chart.axisY, plot.height)
7689
7691
  },
7690
7692
  color: mark.color,
7691
7693
  valueReference: { seriesId: mark.seriesId, valueIndex: mark.valueIndex }
@@ -7709,8 +7711,8 @@ function createLinePoint(context, mark) {
7709
7711
  ry: visible ? radius : 6,
7710
7712
  detail: { of: "chartValue", series: mark.seriesId, valueIndex: mark.valueIndex },
7711
7713
  style: {
7712
- fill: visible ? chunkUHKFJBY5_cjs.paint(fill2, diagnostics, chart.id) : { kind: "none" },
7713
- stroke: visible && strokeWidth > 0 ? chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id) : void 0,
7714
+ fill: visible ? chunkSKGJXCAO_cjs.paint(fill2, diagnostics, chart.id) : { kind: "none" },
7715
+ stroke: visible && strokeWidth > 0 ? chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id) : void 0,
7714
7716
  strokeWidth: visible && strokeWidth > 0 ? strokeWidth : void 0,
7715
7717
  pointerEvents: visible ? void 0 : "all"
7716
7718
  }
@@ -7730,22 +7732,22 @@ function createLinePath(context, series, points, color, tension) {
7730
7732
  order: nextOrder(),
7731
7733
  bounds: gradient ? { minX: plot.x, maxX: plot.x + plot.width, minY: plot.y, maxY: plot.y + plot.height } : bounds,
7732
7734
  detail: { of: "chartSeries", series: series.id, lineTension: tension || void 0 },
7733
- d: chunkUHKFJBY5_cjs.linePathData(points, tension),
7735
+ d: chunkSKGJXCAO_cjs.linePathData(points, tension),
7734
7736
  style: {
7735
7737
  fill: { kind: "none" },
7736
- stroke: chunkUHKFJBY5_cjs.paint(gradient ?? color, diagnostics, chart.id),
7738
+ stroke: chunkSKGJXCAO_cjs.paint(gradient ?? color, diagnostics, chart.id),
7737
7739
  strokeWidth: series.strokeWidth ?? config?.lineWidth ?? 2,
7738
7740
  dash: series.dash,
7739
7741
  lineCap: config?.lineWidth === void 0 ? void 0 : "round",
7740
7742
  lineJoin: "round",
7741
- shadow: glow ? { color, opacity: 0.9, blur: glow, dx: 0, dy: 0 } : chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle)
7743
+ shadow: glow ? { color, opacity: 0.9, blur: glow, dx: 0, dy: 0 } : chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle)
7742
7744
  }
7743
7745
  };
7744
7746
  }
7745
7747
 
7746
7748
  // src/renderScene/charts/renderers/line/series.ts
7747
7749
  function seriesColor(series, seriesIndex) {
7748
- return chunkUHKFJBY5_cjs.representativeColor(series.color, chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length]);
7750
+ return chunkSKGJXCAO_cjs.representativeColor(series.color, chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length]);
7749
7751
  }
7750
7752
  function renderLineSeriesArea(context, series, seriesIndex) {
7751
7753
  const areaOpacity = context.chart.config?.areaOpacity;
@@ -7809,7 +7811,7 @@ function renderGridLines(context, layout) {
7809
7811
  style: {
7810
7812
  fill: { kind: "none" },
7811
7813
  stroke: { kind: "solid", color: chart.gridColor ?? "#e2e8f0" },
7812
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1)
7814
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1)
7813
7815
  }
7814
7816
  };
7815
7817
  });
@@ -7817,7 +7819,7 @@ function renderGridLines(context, layout) {
7817
7819
  function renderPercentageLabels(context, layout) {
7818
7820
  const { chart, plot, bounds, nextOrder } = context;
7819
7821
  return PERCENT_TICKS.map((percent) => ({
7820
- ...chunkUHKFJBY5_cjs.chartText({
7822
+ ...chunkSKGJXCAO_cjs.chartText({
7821
7823
  id: `chart-mekko-pct-${chart.id}-${percent}`,
7822
7824
  order: nextOrder(),
7823
7825
  bounds,
@@ -7849,7 +7851,7 @@ function renderMekkoColumnLabels(context, layout, columnIndex, column) {
7849
7851
  function createTotalLabel(context, layout, columnIndex, column) {
7850
7852
  const { chart, plot, bounds, nextOrder } = context;
7851
7853
  return {
7852
- ...chunkUHKFJBY5_cjs.chartText({
7854
+ ...chunkSKGJXCAO_cjs.chartText({
7853
7855
  id: `chart-mekko-total-${chart.id}-${columnIndex}`,
7854
7856
  order: nextOrder(),
7855
7857
  bounds,
@@ -7870,7 +7872,7 @@ function createColumnLabel(context, layout, columnIndex, column) {
7870
7872
  const { chart, bounds, nextOrder } = context;
7871
7873
  const { label, width } = column;
7872
7874
  return {
7873
- ...chunkUHKFJBY5_cjs.chartText({
7875
+ ...chunkSKGJXCAO_cjs.chartText({
7874
7876
  id: `chart-mekko-col-label-${chart.id}-${columnIndex}`,
7875
7877
  order: nextOrder(),
7876
7878
  bounds,
@@ -7884,7 +7886,7 @@ function createColumnLabel(context, layout, columnIndex, column) {
7884
7886
  chart,
7885
7887
  align: "center"
7886
7888
  }),
7887
- lines: chunkUHKFJBY5_cjs.wrapText(label, width, layout.smallFontSize),
7889
+ lines: chunkSKGJXCAO_cjs.wrapText(label, width, layout.smallFontSize),
7888
7890
  fontSize: layout.smallFontSize
7889
7891
  };
7890
7892
  }
@@ -7894,8 +7896,8 @@ function createMekkoLayout(context) {
7894
7896
  const labels = mekkoColumnLabels(context);
7895
7897
  const labelGutterWidth = context.showLabels ? 30 : 0;
7896
7898
  const grid = createMekkoGrid(context, labelGutterWidth);
7897
- const fontSize = Math.max(9, chunkUHKFJBY5_cjs.finite(context.chart.fontSize, 12));
7898
- const columnGap2 = Math.max(0, chunkUHKFJBY5_cjs.finite(context.chart.config?.mekkoColumnGap, 4));
7899
+ const fontSize = Math.max(9, chunkSKGJXCAO_cjs.finite(context.chart.fontSize, 12));
7900
+ const columnGap2 = Math.max(0, chunkSKGJXCAO_cjs.finite(context.chart.config?.mekkoColumnGap, 4));
7899
7901
  const smallFontSize = Math.max(8, fontSize - 1);
7900
7902
  return {
7901
7903
  columns: createMekkoColumns(context, grid, labels, columnGap2),
@@ -7903,8 +7905,8 @@ function createMekkoLayout(context) {
7903
7905
  smallFontSize,
7904
7906
  labelGutterWidth,
7905
7907
  columnGap: columnGap2,
7906
- labelSize: Math.max(6, chunkUHKFJBY5_cjs.finite(context.chart.config?.mekkoLabelSize, smallFontSize)),
7907
- valueSize: Math.max(6, chunkUHKFJBY5_cjs.finite(context.chart.config?.mekkoValueSize, smallFontSize)),
7908
+ labelSize: Math.max(6, chunkSKGJXCAO_cjs.finite(context.chart.config?.mekkoLabelSize, smallFontSize)),
7909
+ valueSize: Math.max(6, chunkSKGJXCAO_cjs.finite(context.chart.config?.mekkoValueSize, smallFontSize)),
7908
7910
  grid
7909
7911
  };
7910
7912
  }
@@ -7961,12 +7963,12 @@ function createColumnBackdrop(context, layout, columnIndex) {
7961
7963
  id: `chart-mekko-column-backdrop-${chart.id}-${columnIndex}`,
7962
7964
  order: nextOrder(),
7963
7965
  bounds,
7964
- d: chunkUHKFJBY5_cjs.barShapePath(column.x, layout.grid.y, column.width, layout.grid.height, cornerRadius),
7965
- style: { fill: chunkUHKFJBY5_cjs.paint(chart.gridColor ?? "#e2e8f0", diagnostics, chart.id), opacity: BACKDROP_OPACITY }
7966
+ d: chunkSKGJXCAO_cjs.barShapePath(column.x, layout.grid.y, column.width, layout.grid.height, cornerRadius),
7967
+ style: { fill: chunkSKGJXCAO_cjs.paint(chart.gridColor ?? "#e2e8f0", diagnostics, chart.id), opacity: BACKDROP_OPACITY }
7966
7968
  };
7967
7969
  }
7968
7970
  function mekkoCornerRadius(context) {
7969
- return Math.max(0, chunkUHKFJBY5_cjs.finite(context.chart.config?.barCornerRadius, 2));
7971
+ return Math.max(0, chunkSKGJXCAO_cjs.finite(context.chart.config?.barCornerRadius, 2));
7970
7972
  }
7971
7973
  function calculateColumnSegments(seriesList, layout, columnIndex) {
7972
7974
  const segments = [];
@@ -7977,7 +7979,7 @@ function calculateColumnSegments(seriesList, layout, columnIndex) {
7977
7979
  const height = (column.total > 0 ? value / column.total : 0) * column.height;
7978
7980
  const y = column.y + cumulativeHeight;
7979
7981
  cumulativeHeight += height;
7980
- const color = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
7982
+ const color = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
7981
7983
  segments.push({
7982
7984
  columnIndex,
7983
7985
  seriesId: series.id,
@@ -8000,12 +8002,12 @@ function renderSegment(context, layout, segment, nextColor) {
8000
8002
  }
8001
8003
  function createSegmentNode(context, segment, nextColor) {
8002
8004
  const { chart, plot, bounds, diagnostics, nextOrder } = context;
8003
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
8005
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
8004
8006
  const clipPath = shadow ? `M ${plot.x} ${plot.y} H ${plot.x + plot.width} V ${plot.y + plot.height} H ${plot.x} Z` : void 0;
8005
8007
  const config = chart.config;
8006
8008
  const radius = segment.isTop || config?.mekkoRoundAll ? mekkoCornerRadius(context) : 0;
8007
8009
  const { x, y, width, height } = segment.frame;
8008
- const segmentGap = Math.max(0, chunkUHKFJBY5_cjs.finite(config?.mekkoSegmentGap, 0));
8010
+ const segmentGap = Math.max(0, chunkSKGJXCAO_cjs.finite(config?.mekkoSegmentGap, 0));
8009
8011
  const fallback = "#94a3b8";
8010
8012
  const gradientBounds = {
8011
8013
  minX: x + width / 2 - height / 2,
@@ -8017,20 +8019,20 @@ function createSegmentNode(context, segment, nextColor) {
8017
8019
  kind: "linear-gradient",
8018
8020
  angle: 90,
8019
8021
  stops: [
8020
- { offset: 0, color: chunkUHKFJBY5_cjs.representativeColor(segment.color, fallback) },
8021
- { offset: 100, color: chunkUHKFJBY5_cjs.representativeColor(nextColor, fallback) }
8022
+ { offset: 0, color: chunkSKGJXCAO_cjs.representativeColor(segment.color, fallback) },
8023
+ { offset: 100, color: chunkSKGJXCAO_cjs.representativeColor(nextColor, fallback) }
8022
8024
  ]
8023
- } : chunkUHKFJBY5_cjs.paint(segment.color, diagnostics, chart.id);
8025
+ } : chunkSKGJXCAO_cjs.paint(segment.color, diagnostics, chart.id);
8024
8026
  return {
8025
8027
  type: "path",
8026
8028
  id: `chart-mekko-seg-${chart.id}-${segment.columnIndex}-${segment.seriesId}`,
8027
8029
  order: nextOrder(),
8028
8030
  bounds: nextColor ? gradientBounds : bounds,
8029
- d: chunkUHKFJBY5_cjs.barPath(x, y + segmentGap / 2, width, Math.max(0, height - segmentGap), radius, Boolean(config?.mekkoRoundAll)),
8031
+ d: chunkSKGJXCAO_cjs.barPath(x, y + segmentGap / 2, width, Math.max(0, height - segmentGap), radius, Boolean(config?.mekkoRoundAll)),
8030
8032
  style: {
8031
8033
  fill: fill2,
8032
8034
  stroke: { kind: "solid", color: config?.mekkoSegmentStrokeColor ?? chart.gridColor ?? "#e2e8f0" },
8033
- strokeWidth: chunkUHKFJBY5_cjs.finite(config?.mekkoSegmentStrokeWidth, chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1)),
8035
+ strokeWidth: chunkSKGJXCAO_cjs.finite(config?.mekkoSegmentStrokeWidth, chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1)),
8034
8036
  shadow,
8035
8037
  clip: clipPath ? { type: "path", d: clipPath } : void 0
8036
8038
  }
@@ -8046,17 +8048,17 @@ function createSegmentLabel(context, layout, segment) {
8046
8048
  const innerHeight = Math.max(1, height - 6);
8047
8049
  const lineHeight = layout.labelSize * 1.2;
8048
8050
  const valueHeight = layout.valueSize * 1.2;
8049
- const labelLines = chunkUHKFJBY5_cjs.wrapText(segment.seriesLabel, innerWidth, layout.labelSize).map(
8050
- (line) => chunkUHKFJBY5_cjs.ellipsizeToWidth(line, innerWidth, layout.labelSize, true)
8051
+ const labelLines = chunkSKGJXCAO_cjs.wrapText(segment.seriesLabel, innerWidth, layout.labelSize).map(
8052
+ (line) => chunkSKGJXCAO_cjs.ellipsizeToWidth(line, innerWidth, layout.labelSize, true)
8051
8053
  );
8052
8054
  if (labelLines.length * lineHeight + valueHeight > innerHeight) {
8053
8055
  return [];
8054
8056
  }
8055
- const textColor = chart.config?.mekkoTextColor ?? chunkUHKFJBY5_cjs.contrastTextColor(chunkUHKFJBY5_cjs.representativeColor(segment.color, "#ffffff"));
8057
+ const textColor = chart.config?.mekkoTextColor ?? chunkSKGJXCAO_cjs.contrastTextColor(chunkSKGJXCAO_cjs.representativeColor(segment.color, "#ffffff"));
8056
8058
  const columnTotal = layout.columns[segment.columnIndex]?.total ?? 0;
8057
8059
  const valueText = chart.config?.mekkoValueFormat === "percent" ? `${columnTotal > 0 ? Math.round(segment.value / columnTotal * 100) : 0}%` : String(segment.value);
8058
8060
  const label = {
8059
- ...chunkUHKFJBY5_cjs.chartText({
8061
+ ...chunkSKGJXCAO_cjs.chartText({
8060
8062
  id: `chart-mekko-seg-label-${chart.id}-${segment.columnIndex}-${segment.seriesId}`,
8061
8063
  order: nextOrder(),
8062
8064
  bounds,
@@ -8070,7 +8072,7 @@ function createSegmentLabel(context, layout, segment) {
8070
8072
  color: textColor
8071
8073
  };
8072
8074
  const valueNode = {
8073
- ...chunkUHKFJBY5_cjs.chartText({
8075
+ ...chunkSKGJXCAO_cjs.chartText({
8074
8076
  id: `chart-mekko-seg-value-${chart.id}-${segment.columnIndex}-${segment.seriesId}`,
8075
8077
  order: nextOrder(),
8076
8078
  bounds,
@@ -8103,7 +8105,7 @@ function renderMekko(context) {
8103
8105
 
8104
8106
  // src/renderScene/charts/renderers/pie/center.ts
8105
8107
  function fill(template, chart) {
8106
- const values = chart.series.map((series) => Math.max(0, chunkUHKFJBY5_cjs.finite(series.values[0], 0)));
8108
+ const values = chart.series.map((series) => Math.max(0, chunkSKGJXCAO_cjs.finite(series.values[0], 0)));
8107
8109
  const total = values.reduce((sum, value) => sum + value, 0);
8108
8110
  const first = values[0] ?? 0;
8109
8111
  return template.replace(/\{total\}/g, String(Math.round(total * 100) / 100)).replace(/\{percent\}/g, String(total > 0 ? Math.round(first / total * 100) : 0)).replace(/\{label\}/g, chart.series[0]?.label ?? "");
@@ -8115,7 +8117,7 @@ function renderPieCenter(context, geometry) {
8115
8117
  return [];
8116
8118
  }
8117
8119
  const lines = fill(template, chart).split(/\\n|\n/);
8118
- const fontSize = chunkUHKFJBY5_cjs.finite(chart.config?.pieCenterSize, Math.max(14, Math.min(40, geometry.outerRadius * 0.3)));
8120
+ const fontSize = chunkSKGJXCAO_cjs.finite(chart.config?.pieCenterSize, Math.max(14, Math.min(40, geometry.outerRadius * 0.3)));
8119
8121
  const lineHeight = fontSize * 1.2;
8120
8122
  const width = Math.max(40, (geometry.innerRadius > 0 ? geometry.innerRadius : geometry.outerRadius * 0.6) * 2);
8121
8123
  const text = {
@@ -8128,7 +8130,7 @@ function renderPieCenter(context, geometry) {
8128
8130
  width,
8129
8131
  height: lineHeight * lines.length,
8130
8132
  lines,
8131
- fontFamily: chart.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT,
8133
+ fontFamily: chart.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT,
8132
8134
  fontSize,
8133
8135
  fontWeight: "bold",
8134
8136
  align: "center",
@@ -8148,14 +8150,14 @@ var radians = (degrees) => degrees * Math.PI / 180;
8148
8150
  function renderPieSlices(context, geometry) {
8149
8151
  const config = context.chart.config;
8150
8152
  const marks = createPieSliceMarks(context.chart.series, geometry.total, {
8151
- start: TOP + radians(chunkUHKFJBY5_cjs.finite(config?.pieStartAngle, 0)),
8152
- sweep: Math.min(FULL, Math.max(radians(1), radians(chunkUHKFJBY5_cjs.finite(config?.pieSweep, 360)))),
8153
- explode: Math.max(0, chunkUHKFJBY5_cjs.finite(config?.pieExplode, 0))
8153
+ start: TOP + radians(chunkSKGJXCAO_cjs.finite(config?.pieStartAngle, 0)),
8154
+ sweep: Math.min(FULL, Math.max(radians(1), radians(chunkSKGJXCAO_cjs.finite(config?.pieSweep, 360)))),
8155
+ explode: Math.max(0, chunkSKGJXCAO_cjs.finite(config?.pieExplode, 0))
8154
8156
  });
8155
8157
  const gapPx = config?.pieSliceGap ?? 0;
8156
8158
  return [
8157
8159
  ...marks.flatMap((mark) => createSliceNodes(context, shiftGeometry(geometry, mark), mark, gapPx)),
8158
- ...chunkUHKFJBY5_cjs.renderPieLabels(
8160
+ ...chunkSKGJXCAO_cjs.renderPieLabels(
8159
8161
  context,
8160
8162
  geometry,
8161
8163
  marks.map((mark) => ({
@@ -8187,20 +8189,20 @@ function createPieSliceMarks(seriesList, total, layout) {
8187
8189
  const marks = [];
8188
8190
  let angle = layout.start;
8189
8191
  seriesList.forEach((series, seriesIndex) => {
8190
- const value = Math.max(0, chunkUHKFJBY5_cjs.finite(series.values[0], 0));
8192
+ const value = Math.max(0, chunkSKGJXCAO_cjs.finite(series.values[0], 0));
8191
8193
  const sweep = value / total * layout.sweep;
8192
8194
  marks.push({
8193
8195
  seriesId: series.id,
8194
8196
  label: series.label,
8195
- color: series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length],
8197
+ color: series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length],
8196
8198
  stroke: series.stroke,
8197
8199
  strokeWidth: series.strokeWidth,
8198
8200
  value,
8199
8201
  share: value / total,
8200
8202
  angles: { start: angle, end: angle + Math.min(sweep, layout.sweep >= FULL ? MAXIMUM_SWEEP : layout.sweep) },
8201
- explode: Math.max(0, chunkUHKFJBY5_cjs.finite(series.offset, layout.explode)),
8202
- labelOffsetX: chunkUHKFJBY5_cjs.finite(series.labelOffsetX, 0),
8203
- labelOffsetY: chunkUHKFJBY5_cjs.finite(series.labelOffsetY, 0)
8203
+ explode: Math.max(0, chunkSKGJXCAO_cjs.finite(series.offset, layout.explode)),
8204
+ labelOffsetX: chunkSKGJXCAO_cjs.finite(series.labelOffsetX, 0),
8205
+ labelOffsetY: chunkSKGJXCAO_cjs.finite(series.labelOffsetY, 0)
8204
8206
  });
8205
8207
  angle += sweep;
8206
8208
  });
@@ -8223,14 +8225,14 @@ function pieOuterShadow(shadow, gapPx) {
8223
8225
  function sliceCornerRadius(geometry, mark, gapPx) {
8224
8226
  const halfGap = Math.max(0, gapPx) / 2;
8225
8227
  const rawSweep = mark.angles.end - mark.angles.start;
8226
- const usesInnerArc = chunkUHKFJBY5_cjs.pieUsesInnerArc(geometry, mark.angles, gapPx);
8227
- const gapSweep = 2 * chunkUHKFJBY5_cjs.gapInsetAngle(halfGap, geometry.outerRadius);
8228
+ const usesInnerArc = chunkSKGJXCAO_cjs.pieUsesInnerArc(geometry, mark.angles, gapPx);
8229
+ const gapSweep = 2 * chunkSKGJXCAO_cjs.gapInsetAngle(halfGap, geometry.outerRadius);
8228
8230
  const availableSweep = Math.max(0, rawSweep - gapSweep);
8229
8231
  return Math.min(
8230
8232
  geometry.cornerRadius,
8231
- usesInnerArc ? chunkUHKFJBY5_cjs.maxPieCornerRadius(geometry.outerRadius, geometry.innerRadius, availableSweep) : chunkUHKFJBY5_cjs.maxApexCornerRadius(
8233
+ usesInnerArc ? chunkSKGJXCAO_cjs.maxPieCornerRadius(geometry.outerRadius, geometry.innerRadius, availableSweep) : chunkSKGJXCAO_cjs.maxApexCornerRadius(
8232
8234
  geometry.outerRadius,
8233
- chunkUHKFJBY5_cjs.pieApexRadius(halfGap, rawSweep, geometry.outerRadius),
8235
+ chunkSKGJXCAO_cjs.pieApexRadius(halfGap, rawSweep, geometry.outerRadius),
8234
8236
  availableSweep
8235
8237
  )
8236
8238
  );
@@ -8243,14 +8245,14 @@ function sliceStroke(context, mark) {
8243
8245
  }
8244
8246
  return {
8245
8247
  stroke: { kind: "solid", color: strokeColor },
8246
- strokeWidth: chunkUHKFJBY5_cjs.finite(mark.strokeWidth, chunkUHKFJBY5_cjs.finite(config?.pieStrokeWidth, 1))
8248
+ strokeWidth: chunkSKGJXCAO_cjs.finite(mark.strokeWidth, chunkSKGJXCAO_cjs.finite(config?.pieStrokeWidth, 1))
8247
8249
  };
8248
8250
  }
8249
8251
  function createSliceNodes(context, geometry, mark, gapPx) {
8250
8252
  const { chart, bounds, diagnostics, nextOrder } = context;
8251
- const fill2 = chunkUHKFJBY5_cjs.paint(mark.color, diagnostics, chart.id);
8252
- const slicePath = chunkUHKFJBY5_cjs.createPieSlicePath(geometry, mark.angles, sliceCornerRadius(geometry, mark, gapPx), gapPx);
8253
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
8253
+ const fill2 = chunkSKGJXCAO_cjs.paint(mark.color, diagnostics, chart.id);
8254
+ const slicePath = chunkSKGJXCAO_cjs.createPieSlicePath(geometry, mark.angles, sliceCornerRadius(geometry, mark, gapPx), gapPx);
8255
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
8254
8256
  const strokeStyle = sliceStroke(context, mark);
8255
8257
  const glow = chart.config?.pieGlow;
8256
8258
  const shadowCaster = shadow ? {
@@ -8281,12 +8283,12 @@ function createSliceNodes(context, geometry, mark, gapPx) {
8281
8283
  pieEnd: mark.angles.end,
8282
8284
  pieValue: mark.value
8283
8285
  },
8284
- prop: chunkUHKFJBY5_cjs.seriesValueProp(mark.seriesId, 0),
8286
+ prop: chunkSKGJXCAO_cjs.seriesValueProp(mark.seriesId, 0),
8285
8287
  style: {
8286
8288
  fill: fill2,
8287
8289
  ...strokeStyle,
8288
8290
  innerShadow: shadow,
8289
- shadow: glow ? { color: chunkUHKFJBY5_cjs.representativeColor(mark.color, "#ffffff"), opacity: 0.85, blur: glow, dx: 0, dy: 0 } : void 0
8291
+ shadow: glow ? { color: chunkSKGJXCAO_cjs.representativeColor(mark.color, "#ffffff"), opacity: 0.85, blur: glow, dx: 0, dy: 0 } : void 0
8290
8292
  }
8291
8293
  };
8292
8294
  return shadowCaster ? [shadowCaster, slice] : [slice];
@@ -8294,7 +8296,7 @@ function createSliceNodes(context, geometry, mark, gapPx) {
8294
8296
 
8295
8297
  // src/renderScene/charts/renderers/pie.ts
8296
8298
  function renderPie(context) {
8297
- const geometry = chunkUHKFJBY5_cjs.createPieGeometry(context);
8299
+ const geometry = chunkSKGJXCAO_cjs.createPieGeometry(context);
8298
8300
  return [...renderPieSlices(context, geometry), ...renderPieCenter(context, geometry)];
8299
8301
  }
8300
8302
 
@@ -8311,18 +8313,18 @@ var OUTSIDE_FALLBACK_COLOR = "#334155";
8311
8313
  function layoutOf(context) {
8312
8314
  const { chart, plot } = context;
8313
8315
  const maxRadius = Math.max(1, Math.min(plot.width, plot.height) / 2 - 4);
8314
- const axisMin = chunkUHKFJBY5_cjs.finite(chart.axisY.min, 0);
8316
+ const axisMin = chunkSKGJXCAO_cjs.finite(chart.axisY.min, 0);
8315
8317
  return {
8316
8318
  centerX: plot.x + plot.width / 2,
8317
8319
  centerY: plot.y + plot.height / 2,
8318
8320
  maxRadius,
8319
- innerRadius: Math.max(0, Math.min(chunkUHKFJBY5_cjs.finite(chart.config?.innerRadius, 0), maxRadius - 1)),
8320
- cornerRadius: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.pieCornerRadius, 0)),
8321
- gapPx: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.pieSliceGap, 0)),
8321
+ innerRadius: Math.max(0, Math.min(chunkSKGJXCAO_cjs.finite(chart.config?.innerRadius, 0), maxRadius - 1)),
8322
+ cornerRadius: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.pieCornerRadius, 0)),
8323
+ gapPx: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.pieSliceGap, 0)),
8322
8324
  axisMin,
8323
- range: chunkUHKFJBY5_cjs.finite(chart.axisY.max, 100) - axisMin,
8325
+ range: chunkSKGJXCAO_cjs.finite(chart.axisY.max, 100) - axisMin,
8324
8326
  sweep: chart.series.length > 0 ? Math.PI * 2 / chart.series.length : 0,
8325
- start: TOP2 + chunkUHKFJBY5_cjs.finite(chart.config?.pieStartAngle, 0) * Math.PI / 180
8327
+ start: TOP2 + chunkSKGJXCAO_cjs.finite(chart.config?.pieStartAngle, 0) * Math.PI / 180
8326
8328
  };
8327
8329
  }
8328
8330
  function clampedCorner(layout, outerRadius, angles) {
@@ -8330,19 +8332,19 @@ function clampedCorner(layout, outerRadius, angles) {
8330
8332
  const geometry = { centerX, centerY, outerRadius, innerRadius };
8331
8333
  const halfGap = Math.max(0, gapPx) / 2;
8332
8334
  const rawSweep = angles.end - angles.start;
8333
- const availableSweep = Math.max(0, rawSweep - 2 * chunkUHKFJBY5_cjs.gapInsetAngle(halfGap, outerRadius));
8334
- if (chunkUHKFJBY5_cjs.pieUsesInnerArc(geometry, angles, gapPx)) {
8335
- return Math.min(cornerRadius, chunkUHKFJBY5_cjs.maxPieCornerRadius(outerRadius, innerRadius, availableSweep));
8335
+ const availableSweep = Math.max(0, rawSweep - 2 * chunkSKGJXCAO_cjs.gapInsetAngle(halfGap, outerRadius));
8336
+ if (chunkSKGJXCAO_cjs.pieUsesInnerArc(geometry, angles, gapPx)) {
8337
+ return Math.min(cornerRadius, chunkSKGJXCAO_cjs.maxPieCornerRadius(outerRadius, innerRadius, availableSweep));
8336
8338
  }
8337
- const apexRadius = chunkUHKFJBY5_cjs.pieApexRadius(halfGap, rawSweep, outerRadius);
8338
- return Math.min(cornerRadius, chunkUHKFJBY5_cjs.maxApexCornerRadius(outerRadius, apexRadius, availableSweep));
8339
+ const apexRadius = chunkSKGJXCAO_cjs.pieApexRadius(halfGap, rawSweep, outerRadius);
8340
+ return Math.min(cornerRadius, chunkSKGJXCAO_cjs.maxApexCornerRadius(outerRadius, apexRadius, availableSweep));
8339
8341
  }
8340
8342
  function wedgeNodes(context, layout, series, angles, outerRadius, value, rawColor) {
8341
8343
  const { chart, bounds, diagnostics, nextOrder } = context;
8342
8344
  const { centerX, centerY, innerRadius, maxRadius, gapPx } = layout;
8343
- const color = chunkUHKFJBY5_cjs.paint(rawColor, diagnostics, chart.id);
8344
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
8345
- const trackPath = chunkUHKFJBY5_cjs.createPieSlicePath(
8345
+ const color = chunkSKGJXCAO_cjs.paint(rawColor, diagnostics, chart.id);
8346
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
8347
+ const trackPath = chunkSKGJXCAO_cjs.createPieSlicePath(
8346
8348
  { centerX, centerY, outerRadius: maxRadius, innerRadius },
8347
8349
  angles,
8348
8350
  clampedCorner(layout, maxRadius, angles),
@@ -8355,12 +8357,12 @@ function wedgeNodes(context, layout, series, angles, outerRadius, value, rawColo
8355
8357
  bounds,
8356
8358
  d: trackPath,
8357
8359
  style: {
8358
- fill: chunkUHKFJBY5_cjs.paint(chart.gridColor ?? TRACK_COLOR_FALLBACK, diagnostics, chart.id),
8360
+ fill: chunkSKGJXCAO_cjs.paint(chart.gridColor ?? TRACK_COLOR_FALLBACK, diagnostics, chart.id),
8359
8361
  opacity: chart.config?.polarTrackOpacity,
8360
8362
  ...trackStroke(context)
8361
8363
  }
8362
8364
  };
8363
- const wedgePath = chunkUHKFJBY5_cjs.createPieSlicePath(
8365
+ const wedgePath = chunkSKGJXCAO_cjs.createPieSlicePath(
8364
8366
  { centerX, centerY, outerRadius, innerRadius },
8365
8367
  angles,
8366
8368
  clampedCorner(layout, outerRadius, angles),
@@ -8389,7 +8391,7 @@ function wedgeNodes(context, layout, series, angles, outerRadius, value, rawColo
8389
8391
  pieEnd: angles.end,
8390
8392
  pieValue: value
8391
8393
  },
8392
- prop: chunkUHKFJBY5_cjs.seriesValueProp(series.id, 0),
8394
+ prop: chunkSKGJXCAO_cjs.seriesValueProp(series.id, 0),
8393
8395
  style: { fill: color, innerShadow: shadow, ...wedgeStroke(context) }
8394
8396
  };
8395
8397
  return shadowCaster ? [track, shadowCaster, wedge] : [track, wedge];
@@ -8402,7 +8404,7 @@ function trackStroke(context) {
8402
8404
  const dash = (config.polarTrackDash ?? "").split(/[ ,]+/).map(Number).filter((part) => Number.isFinite(part) && part > 0);
8403
8405
  return {
8404
8406
  stroke: { kind: "solid", color: config.polarTrackStroke },
8405
- strokeWidth: chunkUHKFJBY5_cjs.finite(config.polarTrackStrokeWidth, 1),
8407
+ strokeWidth: chunkSKGJXCAO_cjs.finite(config.polarTrackStrokeWidth, 1),
8406
8408
  dash: dash.length > 0 ? dash : void 0
8407
8409
  };
8408
8410
  }
@@ -8413,7 +8415,7 @@ function wedgeStroke(context) {
8413
8415
  }
8414
8416
  return {
8415
8417
  stroke: { kind: "solid", color: config.pieStroke },
8416
- strokeWidth: chunkUHKFJBY5_cjs.finite(config.pieStrokeWidth, 1)
8418
+ strokeWidth: chunkSKGJXCAO_cjs.finite(config.pieStrokeWidth, 1)
8417
8419
  };
8418
8420
  }
8419
8421
  function ringNodes(context, layout) {
@@ -8421,7 +8423,7 @@ function ringNodes(context, layout) {
8421
8423
  if (!chart.config?.polarRings || layout.range <= 0) {
8422
8424
  return [];
8423
8425
  }
8424
- return chunkUHKFJBY5_cjs.chartTicks(chart.axisY).filter((tick) => tick > layout.axisMin && tick < layout.axisMin + layout.range).map((tick) => {
8426
+ return chunkSKGJXCAO_cjs.chartTicks(chart.axisY).filter((tick) => tick > layout.axisMin && tick < layout.axisMin + layout.range).map((tick) => {
8425
8427
  const radius = layout.innerRadius + (layout.maxRadius - layout.innerRadius) * (tick - layout.axisMin) / layout.range;
8426
8428
  return {
8427
8429
  type: "ellipse",
@@ -8435,7 +8437,7 @@ function ringNodes(context, layout) {
8435
8437
  style: {
8436
8438
  fill: { kind: "none" },
8437
8439
  stroke: { kind: "solid", color: chart.textColor ?? "#334155" },
8438
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1),
8440
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1),
8439
8441
  opacity: 0.25
8440
8442
  }
8441
8443
  };
@@ -8447,10 +8449,10 @@ function renderPolarArea(context) {
8447
8449
  const showLabels = context.showLabels && sweep >= MIN_LABEL_SWEEP;
8448
8450
  const wedges = context.chart.series.flatMap((series, index) => {
8449
8451
  const angles = { start: start + index * sweep, end: start + (index + 1) * sweep };
8450
- const value = Math.max(0, chunkUHKFJBY5_cjs.finite(series.values[0], 0));
8452
+ const value = Math.max(0, chunkSKGJXCAO_cjs.finite(series.values[0], 0));
8451
8453
  const fraction = range > 0 ? Math.min(1, Math.max(0, (value - axisMin) / range)) : 0;
8452
8454
  const outerRadius = Math.max(innerRadius + 1, innerRadius + (maxRadius - innerRadius) * fraction);
8453
- const rawColor = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[index % chunkUHKFJBY5_cjs.CHART_COLORS.length];
8455
+ const rawColor = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[index % chunkSKGJXCAO_cjs.CHART_COLORS.length];
8454
8456
  const nodes = wedgeNodes(context, layout, series, angles, outerRadius, value, rawColor);
8455
8457
  if (!showLabels) {
8456
8458
  return nodes;
@@ -8461,10 +8463,10 @@ function renderPolarArea(context) {
8461
8463
  return [...wedges, ...ringNodes(context, layout)];
8462
8464
  }
8463
8465
  function labelSizes(chart) {
8464
- const base = Math.max(9, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12));
8466
+ const base = Math.max(9, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12));
8465
8467
  return {
8466
- nameSize: Math.max(6, chunkUHKFJBY5_cjs.finite(chart.config?.polarNameSize, base)),
8467
- valueSize: Math.max(6, chunkUHKFJBY5_cjs.finite(chart.config?.polarValueSize, base))
8468
+ nameSize: Math.max(6, chunkSKGJXCAO_cjs.finite(chart.config?.polarNameSize, base)),
8469
+ valueSize: Math.max(6, chunkSKGJXCAO_cjs.finite(chart.config?.polarValueSize, base))
8468
8470
  };
8469
8471
  }
8470
8472
  function labelPlacement2(context, geometry, angles, series, fillColor) {
@@ -8472,8 +8474,8 @@ function labelPlacement2(context, geometry, angles, series, fillColor) {
8472
8474
  const { nameSize, valueSize } = labelSizes(context.chart);
8473
8475
  const lineHeight = (nameSize + valueSize) * 1.2 / 2;
8474
8476
  const ringThickness = geometry.outerRadius - geometry.innerRadius;
8475
- const labelOffsetX = chunkUHKFJBY5_cjs.finite(series.labelOffsetX, 0);
8476
- const labelOffsetY = chunkUHKFJBY5_cjs.finite(series.labelOffsetY, 0);
8477
+ const labelOffsetX = chunkSKGJXCAO_cjs.finite(series.labelOffsetX, 0);
8478
+ const labelOffsetY = chunkSKGJXCAO_cjs.finite(series.labelOffsetY, 0);
8477
8479
  const hasManualOffset = labelOffsetX !== 0 || labelOffsetY !== 0;
8478
8480
  const tooThin = ringThickness < lineHeight * 2 + 6;
8479
8481
  const chordWidth = 2 * geometry.outerRadius * Math.sin(Math.abs(angles.end - angles.start) / 2);
@@ -8483,17 +8485,17 @@ function labelPlacement2(context, geometry, angles, series, fillColor) {
8483
8485
  return void 0;
8484
8486
  }
8485
8487
  const outside = hasManualOffset || !fitsInline;
8486
- const tickStart = chunkUHKFJBY5_cjs.pieArcPoint(geometry, mid, geometry.outerRadius + LEADER_INSET);
8487
- const point = outside ? hasManualOffset ? addOffset(chunkUHKFJBY5_cjs.pieArcPoint(geometry, mid, geometry.outerRadius), labelOffsetX, labelOffsetY) : chunkUHKFJBY5_cjs.pieArcPoint(geometry, mid, geometry.outerRadius + OUTSIDE_GAP) : chunkUHKFJBY5_cjs.pieArcPoint(geometry, mid, geometry.innerRadius + ringThickness * LABEL_RADIUS_FRACTION);
8488
- const color = outside ? outsideLabels && context.chart.textColor ? context.chart.textColor : chunkUHKFJBY5_cjs.sameHueTint(chunkUHKFJBY5_cjs.representativeColor(fillColor, OUTSIDE_FALLBACK_COLOR), OUTSIDE_TINT_LIGHTNESS) ?? OUTSIDE_FALLBACK_COLOR : chunkUHKFJBY5_cjs.sameHueContrastColor(
8489
- chunkUHKFJBY5_cjs.representativeColor(fillColor, "#0f172a"),
8490
- chunkUHKFJBY5_cjs.contrastTextColor(chunkUHKFJBY5_cjs.representativeColor(fillColor, "#0f172a"))
8488
+ const tickStart = chunkSKGJXCAO_cjs.pieArcPoint(geometry, mid, geometry.outerRadius + LEADER_INSET);
8489
+ const point = outside ? hasManualOffset ? addOffset(chunkSKGJXCAO_cjs.pieArcPoint(geometry, mid, geometry.outerRadius), labelOffsetX, labelOffsetY) : chunkSKGJXCAO_cjs.pieArcPoint(geometry, mid, geometry.outerRadius + OUTSIDE_GAP) : chunkSKGJXCAO_cjs.pieArcPoint(geometry, mid, geometry.innerRadius + ringThickness * LABEL_RADIUS_FRACTION);
8490
+ const color = outside ? outsideLabels && context.chart.textColor ? context.chart.textColor : chunkSKGJXCAO_cjs.sameHueTint(chunkSKGJXCAO_cjs.representativeColor(fillColor, OUTSIDE_FALLBACK_COLOR), OUTSIDE_TINT_LIGHTNESS) ?? OUTSIDE_FALLBACK_COLOR : chunkSKGJXCAO_cjs.sameHueContrastColor(
8491
+ chunkSKGJXCAO_cjs.representativeColor(fillColor, "#0f172a"),
8492
+ chunkSKGJXCAO_cjs.contrastTextColor(chunkSKGJXCAO_cjs.representativeColor(fillColor, "#0f172a"))
8491
8493
  );
8492
8494
  return { point, color, outside, mid, tickStart };
8493
8495
  }
8494
8496
  function labelTick(context, series, placement, lineHeight) {
8495
8497
  const { point, color, outside, tickStart } = placement;
8496
- const tickEnd = outside ? chunkUHKFJBY5_cjs.clipSegmentToRect(tickStart, point, LABEL_WIDTH2 / 2, lineHeight) : tickStart;
8498
+ const tickEnd = outside ? chunkSKGJXCAO_cjs.clipSegmentToRect(tickStart, point, LABEL_WIDTH2 / 2, lineHeight) : tickStart;
8497
8499
  return {
8498
8500
  type: "path",
8499
8501
  id: `chart-polar-area-label-tick-${context.chart.id}-${series.id}`,
@@ -8520,7 +8522,7 @@ function labelTexts(context, geometry, series, value, placement) {
8520
8522
  bounds,
8521
8523
  x: point.x - LABEL_WIDTH2 / 2,
8522
8524
  width: LABEL_WIDTH2,
8523
- fontFamily: chart.fontFamily ?? chunkUHKFJBY5_cjs.DEFAULT_FONT,
8525
+ fontFamily: chart.fontFamily ?? chunkSKGJXCAO_cjs.DEFAULT_FONT,
8524
8526
  align: "center",
8525
8527
  verticalAlign: "middle",
8526
8528
  lineHeight: 1.2,
@@ -8543,7 +8545,7 @@ function labelTexts(context, geometry, series, value, placement) {
8543
8545
  lines: [series.label],
8544
8546
  fontWeight: valueFirst ? "normal" : "bold",
8545
8547
  detail,
8546
- prop: chunkUHKFJBY5_cjs.seriesLabelProp(series.id)
8548
+ prop: chunkSKGJXCAO_cjs.seriesLabelProp(series.id)
8547
8549
  };
8548
8550
  const valueText = {
8549
8551
  type: "text",
@@ -8553,10 +8555,10 @@ function labelTexts(context, geometry, series, value, placement) {
8553
8555
  y: valueY,
8554
8556
  height: valueSize * 1.2,
8555
8557
  fontSize: valueSize,
8556
- lines: [chunkUHKFJBY5_cjs.formatFieldValue(value)],
8558
+ lines: [chunkSKGJXCAO_cjs.formatFieldValue(value)],
8557
8559
  fontWeight: valueFirst ? "bold" : "normal",
8558
8560
  detail,
8559
- prop: chunkUHKFJBY5_cjs.seriesValueProp(series.id, 0),
8561
+ prop: chunkSKGJXCAO_cjs.seriesValueProp(series.id, 0),
8560
8562
  propKind: "value"
8561
8563
  };
8562
8564
  return [nameText, valueText];
@@ -8583,10 +8585,10 @@ function radarFrameFor(context) {
8583
8585
  return {
8584
8586
  centerX: plot.x + plot.width / 2,
8585
8587
  centerY: plot.y + plot.height / 2,
8586
- radius: chunkUHKFJBY5_cjs.radarRadius(plot.width, plot.height, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12), context.showLabels),
8588
+ radius: chunkSKGJXCAO_cjs.radarRadius(plot.width, plot.height, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12), context.showLabels),
8587
8589
  min: chart.axisY.min,
8588
8590
  max: chart.axisY.max,
8589
- count: chunkUHKFJBY5_cjs.radarCategoryCount(configuredCount, dataCount),
8591
+ count: chunkSKGJXCAO_cjs.radarCategoryCount(configuredCount, dataCount),
8590
8592
  curved: chart.chartType === "radial",
8591
8593
  tension: chart.config?.radarTension
8592
8594
  };
@@ -8596,7 +8598,7 @@ function createRadarGeometry(context) {
8596
8598
  const configuredCategories = chart.config?.categories?.filter(Boolean) ?? [];
8597
8599
  const frame = radarFrameFor(context);
8598
8600
  const categories = createCategories(configuredCategories, frame.count);
8599
- const pointAt = (pointRadius, pointIndex) => chunkUHKFJBY5_cjs.radarPointAt(frame, pointIndex, pointRadius);
8601
+ const pointAt = (pointRadius, pointIndex) => chunkSKGJXCAO_cjs.radarPointAt(frame, pointIndex, pointRadius);
8600
8602
  return {
8601
8603
  circular: frame.curved,
8602
8604
  areaOpacity: Math.max(0, Math.min(1, chart.config?.areaOpacity ?? 0.16)),
@@ -8608,9 +8610,9 @@ function createRadarGeometry(context) {
8608
8610
  centerX: frame.centerX,
8609
8611
  centerY: frame.centerY,
8610
8612
  radius: frame.radius,
8611
- radiusForValue: (value) => chunkUHKFJBY5_cjs.radarRadiusForValue(frame, value),
8613
+ radiusForValue: (value) => chunkSKGJXCAO_cjs.radarRadiusForValue(frame, value),
8612
8614
  pointAt,
8613
- polygonPath: (pointRadius) => chunkUHKFJBY5_cjs.radarSeriesPath(
8615
+ polygonPath: (pointRadius) => chunkSKGJXCAO_cjs.radarSeriesPath(
8614
8616
  categories.map((_, index) => pointAt(pointRadius, index)),
8615
8617
  false
8616
8618
  )
@@ -8631,7 +8633,7 @@ function renderRadarGrid(context, geometry) {
8631
8633
  return [...renderRings(context, geometry), ...geometry.showSpokes ? renderSpokes(context, geometry) : []];
8632
8634
  }
8633
8635
  function renderRings(context, geometry) {
8634
- return chunkUHKFJBY5_cjs.chartTicks(context.chart.axisY).filter((tick) => tick > context.chart.axisY.min).map((tick) => createRingNode(context, geometry, tick));
8636
+ return chunkSKGJXCAO_cjs.chartTicks(context.chart.axisY).filter((tick) => tick > context.chart.axisY.min).map((tick) => createRingNode(context, geometry, tick));
8635
8637
  }
8636
8638
  function createRingNode(context, geometry, tick) {
8637
8639
  const { chart, bounds, nextOrder } = context;
@@ -8639,7 +8641,7 @@ function createRingNode(context, geometry, tick) {
8639
8641
  const style = {
8640
8642
  fill: { kind: "none" },
8641
8643
  stroke: { kind: "solid", color: chart.gridColor ?? "#e2e8f0" },
8642
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1)
8644
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1)
8643
8645
  };
8644
8646
  if (geometry.circular) {
8645
8647
  return {
@@ -8676,7 +8678,7 @@ function renderSpokes(context, geometry) {
8676
8678
  style: {
8677
8679
  fill: { kind: "none" },
8678
8680
  stroke: { kind: "solid", color: chart.gridColor ?? "#e2e8f0" },
8679
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1)
8681
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1)
8680
8682
  }
8681
8683
  };
8682
8684
  });
@@ -8696,7 +8698,7 @@ function createCategoryLabel(context, geometry, category, categoryIndex) {
8696
8698
  const labelPoint = geometry.pointAt(geometry.radius + 10, categoryIndex);
8697
8699
  const horizontalOffset = labelPoint.x - geometry.centerX;
8698
8700
  const width = Math.max(64, Math.min(120, plot.width / 3));
8699
- return chunkUHKFJBY5_cjs.chartText({
8701
+ return chunkSKGJXCAO_cjs.chartText({
8700
8702
  id: `chart-radar-label-${chart.id}-${categoryIndex}`,
8701
8703
  order: nextOrder(),
8702
8704
  bounds,
@@ -8734,9 +8736,9 @@ function renderRadarSeries(context, geometry) {
8734
8736
  return nodes;
8735
8737
  }
8736
8738
  function renderSeries(context, geometry, series, seriesIndex) {
8737
- const color = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
8739
+ const color = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
8738
8740
  const points = seriesPoints(series, context, geometry);
8739
- const path = chunkUHKFJBY5_cjs.radarSeriesPath(points, geometry.circular, geometry.tension);
8741
+ const path = chunkSKGJXCAO_cjs.radarSeriesPath(points, geometry.circular, geometry.tension);
8740
8742
  return [
8741
8743
  createSeriesFill(context, geometry, series, path, color),
8742
8744
  ...geometry.strokeWidth > 0 ? [createSeriesStroke(context, geometry, series, path, color)] : [],
@@ -8759,7 +8761,7 @@ function createSeriesFill(context, geometry, series, path, color) {
8759
8761
  d: path,
8760
8762
  detail: { of: "chartSeries", series: series.id },
8761
8763
  style: {
8762
- fill: chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id),
8764
+ fill: chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id),
8763
8765
  stroke: { kind: "none" },
8764
8766
  opacity: Math.max(0, Math.min(1, series.opacity ?? geometry.areaOpacity))
8765
8767
  }
@@ -8776,10 +8778,10 @@ function createSeriesStroke(context, geometry, series, path, color) {
8776
8778
  detail: { of: "chartSeries", series: series.id },
8777
8779
  style: {
8778
8780
  fill: { kind: "none" },
8779
- stroke: chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id),
8781
+ stroke: chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id),
8780
8782
  strokeWidth: geometry.strokeWidth,
8781
8783
  lineJoin: "round",
8782
- shadow: chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle)
8784
+ shadow: chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle)
8783
8785
  }
8784
8786
  };
8785
8787
  }
@@ -8795,8 +8797,8 @@ function createSeriesPoints(context, geometry, series, points, color) {
8795
8797
  rx: geometry.pointSize,
8796
8798
  ry: geometry.pointSize,
8797
8799
  detail: { of: "chartValue", series: series.id, valueIndex: pointIndex, mark: "radar-vertex" },
8798
- prop: chunkUHKFJBY5_cjs.seriesValueProp(series.id, pointIndex),
8799
- style: { fill: chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id) }
8800
+ prop: chunkSKGJXCAO_cjs.seriesValueProp(series.id, pointIndex),
8801
+ style: { fill: chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id) }
8800
8802
  }));
8801
8803
  }
8802
8804
 
@@ -8850,25 +8852,25 @@ function ringProgressPath(cx, cy, r, sweep, from) {
8850
8852
  }
8851
8853
  function layoutOf2(context) {
8852
8854
  const { chart, plot } = context;
8853
- const axisMin = chunkUHKFJBY5_cjs.finite(chart.axisY.min, 0);
8855
+ const axisMin = chunkSKGJXCAO_cjs.finite(chart.axisY.min, 0);
8854
8856
  return {
8855
8857
  centerX: plot.x + plot.width / 2,
8856
8858
  centerY: plot.y + plot.height / 2,
8857
8859
  outerRadius: Math.max(1, Math.min(plot.width, plot.height) / 2 - 4),
8858
- ringThickness: Math.max(1, chunkUHKFJBY5_cjs.finite(chart.config?.ringThickness, DEFAULT_RING_THICKNESS)),
8859
- ringGap: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.ringGap, DEFAULT_RING_GAP)),
8860
+ ringThickness: Math.max(1, chunkSKGJXCAO_cjs.finite(chart.config?.ringThickness, DEFAULT_RING_THICKNESS)),
8861
+ ringGap: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.ringGap, DEFAULT_RING_GAP)),
8860
8862
  axisMin,
8861
- range: chunkUHKFJBY5_cjs.finite(chart.axisY.max, 100) - axisMin,
8862
- start: TOP3 + chunkUHKFJBY5_cjs.finite(chart.config?.ringStartAngle, 0) * Math.PI / 180,
8863
- total: Math.min(360, Math.max(1, chunkUHKFJBY5_cjs.finite(chart.config?.ringSweep, 360))) * Math.PI / 180,
8864
- trackOpacity: Math.min(1, Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.ringTrackOpacity, TRACK_OPACITY))),
8863
+ range: chunkSKGJXCAO_cjs.finite(chart.axisY.max, 100) - axisMin,
8864
+ start: TOP3 + chunkSKGJXCAO_cjs.finite(chart.config?.ringStartAngle, 0) * Math.PI / 180,
8865
+ total: Math.min(360, Math.max(1, chunkSKGJXCAO_cjs.finite(chart.config?.ringSweep, 360))) * Math.PI / 180,
8866
+ trackOpacity: Math.min(1, Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.ringTrackOpacity, TRACK_OPACITY))),
8865
8867
  cap: chart.config?.ringCap ?? "round"
8866
8868
  };
8867
8869
  }
8868
8870
  function ringEndShadows(context, layout, series, radius, sweep, color) {
8869
8871
  const { chart, bounds, nextOrder } = context;
8870
8872
  const { centerX, centerY, ringThickness, start } = layout;
8871
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
8873
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
8872
8874
  const isFullCircle = sweep >= Math.PI * 2 - FULL_SWEEP_EPSILON;
8873
8875
  if (!shadow || isFullCircle) {
8874
8876
  return [];
@@ -8906,8 +8908,8 @@ function ringNodes2(context, layout, series, index) {
8906
8908
  if (radius <= ringThickness / 2) {
8907
8909
  return [];
8908
8910
  }
8909
- const color = chunkUHKFJBY5_cjs.paint(series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[index % chunkUHKFJBY5_cjs.CHART_COLORS.length], diagnostics, chart.id);
8910
- const value = Math.max(0, chunkUHKFJBY5_cjs.finite(series.values[0], 0));
8911
+ const color = chunkSKGJXCAO_cjs.paint(series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[index % chunkSKGJXCAO_cjs.CHART_COLORS.length], diagnostics, chart.id);
8912
+ const value = Math.max(0, chunkSKGJXCAO_cjs.finite(series.values[0], 0));
8911
8913
  const fraction = range > 0 ? Math.min(1, Math.max(0, (value - axisMin) / range)) : 0;
8912
8914
  const trackStyle = {
8913
8915
  fill: { kind: "none" },
@@ -8945,7 +8947,7 @@ function ringNodes2(context, layout, series, index) {
8945
8947
  bounds,
8946
8948
  d: ringProgressPath(centerX, centerY, radius, sweep, start),
8947
8949
  detail: { of: "chartValue", series: series.id, valueIndex: 0, mark: "radial-bar-ring" },
8948
- prop: chunkUHKFJBY5_cjs.seriesValueProp(series.id, 0),
8950
+ prop: chunkSKGJXCAO_cjs.seriesValueProp(series.id, 0),
8949
8951
  style: { fill: { kind: "none" }, stroke: color, strokeWidth: ringThickness, lineCap: cap }
8950
8952
  };
8951
8953
  return [track, ...casters, progress];
@@ -8957,7 +8959,7 @@ function renderRadialBar(context) {
8957
8959
 
8958
8960
  // src/renderScene/charts/renderers/sankey/links.ts
8959
8961
  function renderSankeyLinks(context, data) {
8960
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(context.chart.shadowStyle);
8962
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(context.chart.shadowStyle);
8961
8963
  const gradient = Boolean(context.chart.config?.linkGradient);
8962
8964
  const { plot } = context;
8963
8965
  const clipPath = shadow ? `M ${plot.x} ${plot.y} H ${plot.x + plot.width} V ${plot.y + plot.height} H ${plot.x} Z` : void 0;
@@ -8978,8 +8980,8 @@ function createSankeyLinkRibbon(context, data, link, linkIndex, gradient) {
8978
8980
  bottom: data.baseY + link.targetY1
8979
8981
  };
8980
8982
  const config = context.chart.config;
8981
- const fromColor = link.color || data.nodeColors.get(link.source) || chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL;
8982
- const toColor = data.nodeColors.get(link.target) || chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL;
8983
+ const fromColor = link.color || data.nodeColors.get(link.source) || chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL;
8984
+ const toColor = data.nodeColors.get(link.target) || chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL;
8983
8985
  const fill2 = gradient ? {
8984
8986
  kind: "linear-gradient",
8985
8987
  angle: 0,
@@ -8994,9 +8996,9 @@ function createSankeyLinkRibbon(context, data, link, linkIndex, gradient) {
8994
8996
  toId: link.target,
8995
8997
  source,
8996
8998
  target,
8997
- controlX: source.x + (target.x - source.x) * Math.min(1, Math.max(0, chunkUHKFJBY5_cjs.finite(config?.sankeyLinkCurve, 0.5))),
8999
+ controlX: source.x + (target.x - source.x) * Math.min(1, Math.max(0, chunkSKGJXCAO_cjs.finite(config?.sankeyLinkCurve, 0.5))),
8998
9000
  fill: fill2,
8999
- opacity: Math.min(1, Math.max(0, chunkUHKFJBY5_cjs.finite(config?.sankeyLinkOpacity, link.color ? 0.85 : 0.45)))
9001
+ opacity: Math.min(1, Math.max(0, chunkSKGJXCAO_cjs.finite(config?.sankeyLinkOpacity, link.color ? 0.85 : 0.45)))
9000
9002
  };
9001
9003
  }
9002
9004
  function createSankeyRibbonNode(context, ribbon, shadow, clipPath, gradient) {
@@ -9037,7 +9039,7 @@ function sankeyRibbonPath(ribbon) {
9037
9039
  var OUTSIDE_LABEL_LIGHTNESS_ON_LIGHT_BG = 0.3;
9038
9040
  var OUTSIDE_LABEL_LIGHTNESS_ON_DARK_BG = 0.78;
9039
9041
  function renderSankeyNodes(context, data) {
9040
- const cornerRadius = Math.max(0, chunkUHKFJBY5_cjs.finite(context.chart.config?.barCornerRadius, 0));
9042
+ const cornerRadius = Math.max(0, chunkSKGJXCAO_cjs.finite(context.chart.config?.barCornerRadius, 0));
9041
9043
  const nodes = [];
9042
9044
  data.nodes.forEach((node) => {
9043
9045
  nodes.push(createNodeRect(context, data, node, cornerRadius));
@@ -9053,8 +9055,8 @@ function createNodeRect(context, data, node, cornerRadius) {
9053
9055
  const x = data.baseX + node.x;
9054
9056
  const y = data.baseY + node.y;
9055
9057
  const style = {
9056
- fill: { kind: "solid", color: node.color || chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL },
9057
- shadow: chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle)
9058
+ fill: { kind: "solid", color: node.color || chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL },
9059
+ shadow: chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle)
9058
9060
  };
9059
9061
  const isFirstColumn = node.column === 0;
9060
9062
  const isLastColumn = node.column === data.columnCount - 1;
@@ -9080,7 +9082,7 @@ function createNodeRect(context, data, node, cornerRadius) {
9080
9082
  id: `chart-sankey-node-${chart.id}-${node.id}`,
9081
9083
  order: nextOrder(),
9082
9084
  bounds,
9083
- d: chunkUHKFJBY5_cjs.leftRoundedRectPath(x, y, node.width, node.height, cornerRadius),
9085
+ d: chunkSKGJXCAO_cjs.leftRoundedRectPath(x, y, node.width, node.height, cornerRadius),
9084
9086
  style,
9085
9087
  detail
9086
9088
  };
@@ -9091,7 +9093,7 @@ function createNodeRect(context, data, node, cornerRadius) {
9091
9093
  id: `chart-sankey-node-${chart.id}-${node.id}`,
9092
9094
  order: nextOrder(),
9093
9095
  bounds,
9094
- d: chunkUHKFJBY5_cjs.rightRoundedRectPath(x, y, node.width, node.height, cornerRadius),
9096
+ d: chunkSKGJXCAO_cjs.rightRoundedRectPath(x, y, node.width, node.height, cornerRadius),
9095
9097
  style,
9096
9098
  detail
9097
9099
  };
@@ -9117,9 +9119,9 @@ function createNodeLabel(context, data, node) {
9117
9119
  return void 0;
9118
9120
  }
9119
9121
  const fallback = chart.textColor ?? "#0f172a";
9120
- const defaultColor = position === "inside" ? chunkUHKFJBY5_cjs.contrastTextColor(node.color) : chunkUHKFJBY5_cjs.sameHueTint(
9122
+ const defaultColor = position === "inside" ? chunkSKGJXCAO_cjs.contrastTextColor(node.color) : chunkSKGJXCAO_cjs.sameHueTint(
9121
9123
  node.color,
9122
- chunkUHKFJBY5_cjs.isLightColor(fallback) ? OUTSIDE_LABEL_LIGHTNESS_ON_DARK_BG : OUTSIDE_LABEL_LIGHTNESS_ON_LIGHT_BG
9124
+ chunkSKGJXCAO_cjs.isLightColor(fallback) ? OUTSIDE_LABEL_LIGHTNESS_ON_DARK_BG : OUTSIDE_LABEL_LIGHTNESS_ON_LIGHT_BG
9123
9125
  ) ?? fallback;
9124
9126
  const color = chart.config?.labelColor ?? defaultColor;
9125
9127
  return { ...label, color, detail: { of: "chartSeries", series: node.id, mark: "sankey-node-label" } };
@@ -9131,7 +9133,7 @@ function createOutsideLabel(context, data, node) {
9131
9133
  const y = data.baseY + node.y;
9132
9134
  const labelX2 = isLastColumn ? x - data.labelGutter + 8 : x + node.width + 6;
9133
9135
  return {
9134
- ...chunkUHKFJBY5_cjs.chartText({
9136
+ ...chunkSKGJXCAO_cjs.chartText({
9135
9137
  id: `chart-sankey-label-${chart.id}-${node.id}`,
9136
9138
  order: nextOrder(),
9137
9139
  bounds,
@@ -9156,11 +9158,11 @@ function createInsideLabel(context, data, node, orientation) {
9156
9158
  if (orientation === "vertical") {
9157
9159
  const thickness = fontSize * 1.4;
9158
9160
  const width = Math.max(1, node.height - 8);
9159
- if (chunkUHKFJBY5_cjs.estimateTextWidth(node.label, fontSize, false) > width) {
9161
+ if (chunkSKGJXCAO_cjs.estimateTextWidth(node.label, fontSize, false) > width) {
9160
9162
  return void 0;
9161
9163
  }
9162
9164
  return {
9163
- ...chunkUHKFJBY5_cjs.chartText({
9165
+ ...chunkSKGJXCAO_cjs.chartText({
9164
9166
  id,
9165
9167
  order: nextOrder(),
9166
9168
  bounds,
@@ -9177,7 +9179,7 @@ function createInsideLabel(context, data, node, orientation) {
9177
9179
  };
9178
9180
  }
9179
9181
  return {
9180
- ...chunkUHKFJBY5_cjs.chartText({
9182
+ ...chunkSKGJXCAO_cjs.chartText({
9181
9183
  id,
9182
9184
  order: nextOrder(),
9183
9185
  bounds,
@@ -9198,18 +9200,18 @@ function createSankeyRenderData(context) {
9198
9200
  const labelGutter = showLabels ? 92 : 0;
9199
9201
  const availableWidth = Math.max(1, plot.width - labelGutter * 2);
9200
9202
  const layout = layoutSankey(createNodeInputs(context), createLinkInputs(context), availableWidth, plot.height, {
9201
- nodeWidth: Math.max(1, chunkUHKFJBY5_cjs.finite(chart.config?.sankeyNodeWidth, 18)),
9202
- nodeGap: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.sankeyNodeGap, 8))
9203
+ nodeWidth: Math.max(1, chunkSKGJXCAO_cjs.finite(chart.config?.sankeyNodeWidth, 18)),
9204
+ nodeGap: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.sankeyNodeGap, 8))
9203
9205
  });
9204
9206
  return {
9205
9207
  ...layout,
9206
9208
  baseX: plot.x + labelGutter,
9207
9209
  baseY: plot.y,
9208
9210
  labelGutter,
9209
- fontSize: Math.max(9, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12)),
9210
- labelSize: Math.max(6, chunkUHKFJBY5_cjs.finite(chart.config?.sankeyLabelSize, Math.max(9, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12)) - 2)),
9211
+ fontSize: Math.max(9, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12)),
9212
+ labelSize: Math.max(6, chunkSKGJXCAO_cjs.finite(chart.config?.sankeyLabelSize, Math.max(9, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12)) - 2)),
9211
9213
  columnCount: Math.max(1, ...layout.nodes.map((node) => node.column + 1)),
9212
- nodeColors: new Map(layout.nodes.map((node) => [node.id, node.color || chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL]))
9214
+ nodeColors: new Map(layout.nodes.map((node) => [node.id, node.color || chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL]))
9213
9215
  };
9214
9216
  }
9215
9217
  function createNodeInputs(context) {
@@ -9231,7 +9233,7 @@ function createLinkInputs(context) {
9231
9233
  source: series.source,
9232
9234
  target: series.target,
9233
9235
  value: series.values[0] ?? 0,
9234
- color: series.color ? chunkUHKFJBY5_cjs.representativeColor(series.color, chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL) : void 0
9236
+ color: series.color ? chunkSKGJXCAO_cjs.representativeColor(series.color, chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL) : void 0
9235
9237
  });
9236
9238
  });
9237
9239
  return inputs;
@@ -9250,9 +9252,9 @@ function renderSankey(context) {
9250
9252
  var DEFAULT_POINT_SIZE = 4;
9251
9253
  function renderScatter(context) {
9252
9254
  const nodes = [];
9253
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(context.chart.shadowStyle);
9255
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(context.chart.shadowStyle);
9254
9256
  context.chart.series.forEach((series, seriesIndex) => {
9255
- const color = series.color ?? chunkUHKFJBY5_cjs.CHART_COLORS[seriesIndex % chunkUHKFJBY5_cjs.CHART_COLORS.length];
9257
+ const color = series.color ?? chunkSKGJXCAO_cjs.CHART_COLORS[seriesIndex % chunkSKGJXCAO_cjs.CHART_COLORS.length];
9256
9258
  const points = pixelPoints(context, seriesValuePairs(context.chart, series));
9257
9259
  points.forEach((point, pointIndex) => {
9258
9260
  nodes.push(createScatterPoint(context, series, point, pointIndex, color, shadow));
@@ -9276,8 +9278,8 @@ function createScatterPoint(context, series, point, pointIndex, color, shadow) {
9276
9278
  ry: radius,
9277
9279
  detail: { of: "chartValue", series: series.id, valueIndex: pointIndex },
9278
9280
  style: {
9279
- fill: chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id),
9280
- stroke: strokeWidth > 0 ? chunkUHKFJBY5_cjs.paint(config?.pointStrokeColor ?? color, diagnostics, chart.id) : void 0,
9281
+ fill: chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id),
9282
+ stroke: strokeWidth > 0 ? chunkSKGJXCAO_cjs.paint(config?.pointStrokeColor ?? color, diagnostics, chart.id) : void 0,
9281
9283
  strokeWidth: strokeWidth > 0 ? strokeWidth : void 0,
9282
9284
  opacity: config?.pointOpacity,
9283
9285
  shadow
@@ -9288,14 +9290,14 @@ function createScatterPoint(context, series, point, pointIndex, color, shadow) {
9288
9290
  // src/renderScene/charts/renderers/treemap/layout.ts
9289
9291
  function createTreemapLayout(context) {
9290
9292
  const { chart, plot, showLegend } = context;
9291
- const fontSize = Math.max(9, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12));
9293
+ const fontSize = Math.max(9, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12));
9292
9294
  const legendPosition = chart.legendPosition === "left" ? "left" : chart.legendPosition === "right" ? "right" : "bottom";
9293
9295
  const legendHeight = showLegend && legendPosition === "bottom" ? 48 : 0;
9294
- const cellGap = Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.cellGap, 0));
9296
+ const cellGap = Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.cellGap, 0));
9295
9297
  return {
9296
9298
  leaves: chart.series,
9297
- bands: chunkUHKFJBY5_cjs.axisBands(chart.axisY),
9298
- zones: chart.config?.zones?.length ? chart.config.zones : chunkUHKFJBY5_cjs.DEFAULT_HEATMAP_ZONES,
9299
+ bands: chunkSKGJXCAO_cjs.axisBands(chart.axisY),
9300
+ zones: chart.config?.zones?.length ? chart.config.zones : chunkSKGJXCAO_cjs.DEFAULT_HEATMAP_ZONES,
9299
9301
  fontSize,
9300
9302
  smallFontSize: Math.max(8, fontSize - 1),
9301
9303
  legendPosition,
@@ -9303,18 +9305,18 @@ function createTreemapLayout(context) {
9303
9305
  gridWidth: Math.max(1, plot.width),
9304
9306
  gridHeight: Math.max(1, plot.height - legendHeight),
9305
9307
  cellGap,
9306
- cellRadius: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.barCornerRadius, cellGap)),
9307
- headerHeight: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.headerHeight, 20)),
9308
- labelSize: Math.max(6, chunkUHKFJBY5_cjs.finite(chart.config?.tileLabelSize, Math.max(8, fontSize - 1))),
9309
- valueSize: Math.max(6, chunkUHKFJBY5_cjs.finite(chart.config?.tileValueSize, Math.max(8, fontSize - 1))),
9310
- labelPadding: Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.tileLabelPadding, 4))
9308
+ cellRadius: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.barCornerRadius, cellGap)),
9309
+ headerHeight: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.headerHeight, 20)),
9310
+ labelSize: Math.max(6, chunkSKGJXCAO_cjs.finite(chart.config?.tileLabelSize, Math.max(8, fontSize - 1))),
9311
+ valueSize: Math.max(6, chunkSKGJXCAO_cjs.finite(chart.config?.tileValueSize, Math.max(8, fontSize - 1))),
9312
+ labelPadding: Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.tileLabelPadding, 4))
9311
9313
  };
9312
9314
  }
9313
9315
  function treemapLeafValue(leaf) {
9314
9316
  return leaf.values[0] ?? 0;
9315
9317
  }
9316
9318
  function treemapLeafColor(leaf, layout) {
9317
- return leaf.color ?? chunkUHKFJBY5_cjs.zoneColorAtValue(treemapLeafValue(leaf), layout.bands, layout.zones);
9319
+ return leaf.color ?? chunkSKGJXCAO_cjs.zoneColorAtValue(treemapLeafValue(leaf), layout.bands, layout.zones);
9318
9320
  }
9319
9321
 
9320
9322
  // src/renderScene/charts/renderers/treemap/legend.ts
@@ -9339,7 +9341,7 @@ function bandStops(layout) {
9339
9341
  const zones = layout.zones.slice(0, bandCount);
9340
9342
  return zones.map((zone, index) => ({
9341
9343
  offset: bandRatio2(layout, layout.bands[index + 1] ?? layout.bands[layout.bands.length - 1]) * 100,
9342
- color: zone.color ?? chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL
9344
+ color: zone.color ?? chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL
9343
9345
  }));
9344
9346
  }
9345
9347
  function renderBottomLegend(context, layout) {
@@ -9348,7 +9350,7 @@ function renderBottomLegend(context, layout) {
9348
9350
  const barWidth = layout.gridWidth;
9349
9351
  const labelHeight = layout.fontSize + 2;
9350
9352
  const barY = plot.y + layout.gridHeight + CHART_GAP;
9351
- const barBounds = chunkUHKFJBY5_cjs.boxBounds({ x: barX, y: barY, width: barWidth, height: BAR_THICKNESS2 });
9353
+ const barBounds = chunkSKGJXCAO_cjs.boxBounds({ x: barX, y: barY, width: barWidth, height: BAR_THICKNESS2 });
9352
9354
  const stops = bandStops(layout);
9353
9355
  const bar = {
9354
9356
  type: "rect",
@@ -9362,7 +9364,7 @@ function renderBottomLegend(context, layout) {
9362
9364
  rx: 3,
9363
9365
  zoneGradient: { axis: "y", min: chart.axisY.min, max: chart.axisY.max },
9364
9366
  style: {
9365
- fill: stops.length ? { kind: "linear-gradient", angle: 0, stops } : { kind: "solid", color: chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL },
9367
+ fill: stops.length ? { kind: "linear-gradient", angle: 0, stops } : { kind: "solid", color: chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL },
9366
9368
  stroke: { kind: "solid", color: chart.gridColor ?? "#e2e8f0" },
9367
9369
  strokeWidth: 1
9368
9370
  }
@@ -9385,12 +9387,12 @@ function renderBottomLegend(context, layout) {
9385
9387
  const isLast = index === layout.bands.length - 1;
9386
9388
  const align = isFirst ? "left" : isLast ? "right" : "center";
9387
9389
  const frameX = isFirst ? x : isLast ? x - LABEL_SIZE : x - LABEL_SIZE / 2;
9388
- const label = chunkUHKFJBY5_cjs.chartText({
9390
+ const label = chunkSKGJXCAO_cjs.chartText({
9389
9391
  id: `chart-treemap-legend-tick-label-${chart.id}-${index}`,
9390
9392
  order: nextOrder(),
9391
9393
  bounds,
9392
9394
  frame: { x: frameX, y: barY + BAR_THICKNESS2 + TICK_LENGTH3 + ROW_GAP2, width: LABEL_SIZE, height: labelHeight },
9393
- text: chunkUHKFJBY5_cjs.formatFieldValue(value),
9395
+ text: chunkSKGJXCAO_cjs.formatFieldValue(value),
9394
9396
  chart,
9395
9397
  align
9396
9398
  });
@@ -9404,7 +9406,7 @@ function renderSideLegend(context, layout) {
9404
9406
  const barTop = plot.y;
9405
9407
  const barHeight = layout.gridHeight;
9406
9408
  const barX = side === "left" ? plot.x - CHART_GAP - BAR_THICKNESS2 : plot.x + layout.gridWidth + CHART_GAP;
9407
- const barBounds = chunkUHKFJBY5_cjs.boxBounds({ x: barX, y: barTop, width: BAR_THICKNESS2, height: barHeight });
9409
+ const barBounds = chunkSKGJXCAO_cjs.boxBounds({ x: barX, y: barTop, width: BAR_THICKNESS2, height: barHeight });
9408
9410
  const stops = bandStops(layout);
9409
9411
  const bar = {
9410
9412
  type: "rect",
@@ -9418,7 +9420,7 @@ function renderSideLegend(context, layout) {
9418
9420
  rx: 3,
9419
9421
  zoneGradient: { axis: "y", min: chart.axisY.min, max: chart.axisY.max },
9420
9422
  style: {
9421
- fill: stops.length ? { kind: "linear-gradient", angle: 270, stops } : { kind: "solid", color: chunkUHKFJBY5_cjs.DEFAULT_ZONE_FILL },
9423
+ fill: stops.length ? { kind: "linear-gradient", angle: 270, stops } : { kind: "solid", color: chunkSKGJXCAO_cjs.DEFAULT_ZONE_FILL },
9422
9424
  stroke: { kind: "solid", color: chart.gridColor ?? "#e2e8f0" },
9423
9425
  strokeWidth: 1
9424
9426
  }
@@ -9440,12 +9442,12 @@ function renderSideLegend(context, layout) {
9440
9442
  strokeWidth: 1
9441
9443
  }
9442
9444
  };
9443
- const label = chunkUHKFJBY5_cjs.chartText({
9445
+ const label = chunkSKGJXCAO_cjs.chartText({
9444
9446
  id: `chart-treemap-legend-tick-label-${chart.id}-${index}`,
9445
9447
  order: nextOrder(),
9446
9448
  bounds,
9447
9449
  frame: { x: labelX2, y: y - layout.fontSize / 2, width: LABEL_SIZE, height: layout.fontSize + 2 },
9448
- text: chunkUHKFJBY5_cjs.formatFieldValue(value),
9450
+ text: chunkSKGJXCAO_cjs.formatFieldValue(value),
9449
9451
  chart,
9450
9452
  align: side === "left" ? "right" : "left"
9451
9453
  });
@@ -9533,7 +9535,7 @@ function renderTreemapHeader(context, layout, header, index) {
9533
9535
  };
9534
9536
  const smallFontSize = Math.max(8, Math.max(9, chart.fontSize ?? 12) - 1);
9535
9537
  const label = {
9536
- ...chunkUHKFJBY5_cjs.chartText({
9538
+ ...chunkSKGJXCAO_cjs.chartText({
9537
9539
  id: `chart-treemap-header-label-${chart.id}-${index}`,
9538
9540
  order: nextOrder(),
9539
9541
  bounds,
@@ -9548,7 +9550,7 @@ function renderTreemapHeader(context, layout, header, index) {
9548
9550
  align: "center"
9549
9551
  }),
9550
9552
  fontSize: smallFontSize,
9551
- color: chunkUHKFJBY5_cjs.contrastTextColor(fill2)
9553
+ color: chunkSKGJXCAO_cjs.contrastTextColor(fill2)
9552
9554
  };
9553
9555
  return [background, label];
9554
9556
  }
@@ -9564,7 +9566,7 @@ function renderTile(context, layout, tile, nextTile) {
9564
9566
  function createTileNode(context, layout, tile, color, nextColor) {
9565
9567
  const { chart, plot, bounds, diagnostics, nextOrder } = context;
9566
9568
  const gap = layout.cellGap;
9567
- const shadow = chunkUHKFJBY5_cjs.resolveChartShadow(chart.shadowStyle);
9569
+ const shadow = chunkSKGJXCAO_cjs.resolveChartShadow(chart.shadowStyle);
9568
9570
  const clipPath = shadow ? `M ${plot.x} ${plot.y} H ${plot.x + plot.width} V ${plot.y + plot.height} H ${plot.x} Z` : void 0;
9569
9571
  const tileX = plot.x + tile.x + gap / 2;
9570
9572
  const tileY = plot.y + tile.y + gap / 2;
@@ -9581,10 +9583,10 @@ function createTileNode(context, layout, tile, color, nextColor) {
9581
9583
  kind: "linear-gradient",
9582
9584
  angle: 0,
9583
9585
  stops: [
9584
- { offset: 0, color: chunkUHKFJBY5_cjs.representativeColor(color, fallback) },
9585
- { offset: 100, color: chunkUHKFJBY5_cjs.representativeColor(nextColor, fallback) }
9586
+ { offset: 0, color: chunkSKGJXCAO_cjs.representativeColor(color, fallback) },
9587
+ { offset: 100, color: chunkSKGJXCAO_cjs.representativeColor(nextColor, fallback) }
9586
9588
  ]
9587
- } : chunkUHKFJBY5_cjs.paint(color, diagnostics, chart.id);
9589
+ } : chunkSKGJXCAO_cjs.paint(color, diagnostics, chart.id);
9588
9590
  return {
9589
9591
  type: "rect",
9590
9592
  id: `chart-treemap-tile-${chart.id}-${tile.item.leaf.id}`,
@@ -9598,7 +9600,7 @@ function createTileNode(context, layout, tile, color, nextColor) {
9598
9600
  style: {
9599
9601
  fill: fill2,
9600
9602
  stroke: { kind: "solid", color: chart.config?.tileStrokeColor ?? chart.gridColor ?? "#e2e8f0" },
9601
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.config?.tileStrokeWidth, chunkUHKFJBY5_cjs.finite(chart.gridWidth, 1)),
9603
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.config?.tileStrokeWidth, chunkSKGJXCAO_cjs.finite(chart.gridWidth, 1)),
9602
9604
  shadow,
9603
9605
  clip: clipPath ? { type: "path", d: clipPath } : void 0
9604
9606
  }
@@ -9613,12 +9615,12 @@ function createTileLabel(context, layout, tile, color) {
9613
9615
  const height = Math.max(1, tile.height - gap - pad * 1.5);
9614
9616
  const x = plot.x + tile.x + gap / 2 + pad;
9615
9617
  const y = plot.y + tile.y + gap / 2 + pad * 0.75;
9616
- const textColor = chart.config?.tileTextColor ?? chunkUHKFJBY5_cjs.contrastTextColor(chunkUHKFJBY5_cjs.representativeColor(color, "#ffffff"));
9618
+ const textColor = chart.config?.tileTextColor ?? chunkSKGJXCAO_cjs.contrastTextColor(chunkSKGJXCAO_cjs.representativeColor(color, "#ffffff"));
9617
9619
  const lineHeight = layout.labelSize * 1.2;
9618
9620
  const maxLines = Math.max(1, Math.floor(height / lineHeight));
9619
- const labelLines = chunkUHKFJBY5_cjs.wrapText(leaf.label, width, layout.labelSize).slice(0, maxLines).map((line) => chunkUHKFJBY5_cjs.ellipsizeToWidth(line, width, layout.labelSize, true));
9621
+ const labelLines = chunkSKGJXCAO_cjs.wrapText(leaf.label, width, layout.labelSize).slice(0, maxLines).map((line) => chunkSKGJXCAO_cjs.ellipsizeToWidth(line, width, layout.labelSize, true));
9620
9622
  const label = {
9621
- ...chunkUHKFJBY5_cjs.chartText({
9623
+ ...chunkSKGJXCAO_cjs.chartText({
9622
9624
  id: `chart-treemap-label-${chart.id}-${leaf.id}`,
9623
9625
  order: nextOrder(),
9624
9626
  bounds,
@@ -9632,12 +9634,12 @@ function createTileLabel(context, layout, tile, color) {
9632
9634
  color: textColor
9633
9635
  };
9634
9636
  const valueText = String(value);
9635
- const valueFits = labelLines.length * lineHeight + layout.valueSize * 1.2 <= height + 2 && chunkUHKFJBY5_cjs.estimateTextWidth(valueText, layout.valueSize, false) <= width;
9637
+ const valueFits = labelLines.length * lineHeight + layout.valueSize * 1.2 <= height + 2 && chunkSKGJXCAO_cjs.estimateTextWidth(valueText, layout.valueSize, false) <= width;
9636
9638
  if (chart.config?.showTileValues === false || !valueFits) {
9637
9639
  return [label];
9638
9640
  }
9639
9641
  const valueNode = {
9640
- ...chunkUHKFJBY5_cjs.chartText({
9642
+ ...chunkSKGJXCAO_cjs.chartText({
9641
9643
  id: `chart-treemap-value-${chart.id}-${leaf.id}`,
9642
9644
  order: nextOrder(),
9643
9645
  bounds,
@@ -9714,7 +9716,7 @@ function buildCartesianChart(foundation) {
9714
9716
 
9715
9717
  // src/renderScene/charts/chartFrame.ts
9716
9718
  function scaleDetail(chart, plot) {
9717
- const horizontal = chunkUHKFJBY5_cjs.isHorizontalBar(chart);
9719
+ const horizontal = chunkSKGJXCAO_cjs.isHorizontalBar(chart);
9718
9720
  const range = horizontal ? `${plot.x},${plot.width}` : `${plot.y},${plot.height}`;
9719
9721
  return {
9720
9722
  of: "chartScale",
@@ -9722,7 +9724,7 @@ function scaleDetail(chart, plot) {
9722
9724
  };
9723
9725
  }
9724
9726
  function pieDetail(chart, plot) {
9725
- const { outerRadius, innerRadius, cornerRadius } = chunkUHKFJBY5_cjs.resolvePieRadii(
9727
+ const { outerRadius, innerRadius, cornerRadius } = chunkSKGJXCAO_cjs.resolvePieRadii(
9726
9728
  plot.width,
9727
9729
  plot.height,
9728
9730
  chart.config?.innerRadius,
@@ -9735,8 +9737,8 @@ function pieDetail(chart, plot) {
9735
9737
  }
9736
9738
  function polarAreaDetail(chart, plot) {
9737
9739
  const maxRadius = Math.max(1, Math.min(plot.width, plot.height) / 2 - 4);
9738
- const innerRadius = Math.max(0, Math.min(chunkUHKFJBY5_cjs.finite(chart.config?.innerRadius, 0), maxRadius - 1));
9739
- const cornerRadius = Math.max(0, chunkUHKFJBY5_cjs.finite(chart.config?.pieCornerRadius, 0));
9740
+ const innerRadius = Math.max(0, Math.min(chunkSKGJXCAO_cjs.finite(chart.config?.innerRadius, 0), maxRadius - 1));
9741
+ const cornerRadius = Math.max(0, chunkSKGJXCAO_cjs.finite(chart.config?.pieCornerRadius, 0));
9740
9742
  return {
9741
9743
  of: "pieGeometry",
9742
9744
  pieGeometry: `${plot.x + plot.width / 2},${plot.y + plot.height / 2},${maxRadius},${innerRadius},${cornerRadius}`
@@ -9745,8 +9747,8 @@ function polarAreaDetail(chart, plot) {
9745
9747
  function radarDetail(chart, plot) {
9746
9748
  const configuredCount = (chart.config?.categories?.filter(Boolean) ?? []).length;
9747
9749
  const dataCount = Math.max(0, ...chart.series.map((series) => series.values.length));
9748
- const count = chunkUHKFJBY5_cjs.radarCategoryCount(configuredCount, dataCount);
9749
- const radius = chunkUHKFJBY5_cjs.radarRadius(plot.width, plot.height, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12), chart.showAxisLabels !== false);
9750
+ const count = chunkSKGJXCAO_cjs.radarCategoryCount(configuredCount, dataCount);
9751
+ const radius = chunkSKGJXCAO_cjs.radarRadius(plot.width, plot.height, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12), chart.showAxisLabels !== false);
9750
9752
  const centerX = plot.x + plot.width / 2;
9751
9753
  const centerY = plot.y + plot.height / 2;
9752
9754
  const curved = chart.chartType === "radial" ? 1 : 0;
@@ -9780,9 +9782,9 @@ function buildChartFrame(chart, bounds, plot, order) {
9780
9782
  height: chart.height,
9781
9783
  rx: chart.cornerRadius ?? 12,
9782
9784
  style: {
9783
- fill: chunkUHKFJBY5_cjs.paint(chart.fillColor ?? "#ffffff", [], chart.id),
9785
+ fill: chunkSKGJXCAO_cjs.paint(chart.fillColor ?? "#ffffff", [], chart.id),
9784
9786
  stroke: { kind: "solid", color: chart.strokeColor ?? "#475569" },
9785
- strokeWidth: chunkUHKFJBY5_cjs.finite(chart.strokeWidth, 1)
9787
+ strokeWidth: chunkSKGJXCAO_cjs.finite(chart.strokeWidth, 1)
9786
9788
  }
9787
9789
  };
9788
9790
  const detail = frameDetail(chart, plot);
@@ -9842,7 +9844,7 @@ function buildChartTitle(chart, bounds, plot, renderOrder) {
9842
9844
  }
9843
9845
  return [
9844
9846
  {
9845
- ...chunkUHKFJBY5_cjs.chartText({
9847
+ ...chunkSKGJXCAO_cjs.chartText({
9846
9848
  id: `chart-title-${chart.id}`,
9847
9849
  order: renderOrder.next(),
9848
9850
  bounds,
@@ -9853,8 +9855,8 @@ function buildChartTitle(chart, bounds, plot, renderOrder) {
9853
9855
  }),
9854
9856
  ...chart.titleColor ? { color: chart.titleColor } : {},
9855
9857
  fontWeight: chart.titleWeight ?? "bold",
9856
- fontSize: chunkUHKFJBY5_cjs.finite(chart.titleSize, Math.max(10, chunkUHKFJBY5_cjs.finite(chart.fontSize, 12)) + 2),
9857
- prop: chunkUHKFJBY5_cjs.CHART_TITLE_PROP
9858
+ fontSize: chunkSKGJXCAO_cjs.finite(chart.titleSize, Math.max(10, chunkSKGJXCAO_cjs.finite(chart.fontSize, 12)) + 2),
9859
+ prop: chunkSKGJXCAO_cjs.CHART_TITLE_PROP
9858
9860
  }
9859
9861
  ];
9860
9862
  }
@@ -9907,7 +9909,7 @@ function buildChart(chart, index, diagnostics) {
9907
9909
  // src/renderScene/charts/artifacts.ts
9908
9910
  function buildCharts(charts, diagnostics) {
9909
9911
  return charts.flatMap(
9910
- (chart, index) => chunkUHKFJBY5_cjs.tag(buildChart(chart, index, diagnostics), "chart", chart.id, chart.chartType, chart.title ?? "Chart")
9912
+ (chart, index) => chunkSKGJXCAO_cjs.tag(buildChart(chart, index, diagnostics), "chart", chart.id, chart.chartType, chart.title ?? "Chart")
9911
9913
  );
9912
9914
  }
9913
9915
 
@@ -10008,7 +10010,7 @@ function visibleBounds(node) {
10008
10010
  }
10009
10011
  function sceneBounds(nodes) {
10010
10012
  if (!nodes.length) {
10011
- return chunkUHKFJBY5_cjs.EMPTY_BOUNDS;
10013
+ return chunkSKGJXCAO_cjs.EMPTY_BOUNDS;
10012
10014
  }
10013
10015
  const all = nodes.map(visibleBounds);
10014
10016
  return {
@@ -10023,8 +10025,8 @@ function stackingOf(input) {
10023
10025
  const add = (role, objects, legacyBase) => {
10024
10026
  objects.forEach((object, index) => {
10025
10027
  stacking.set(`${role}:${object.id}`, {
10026
- rank: chunkUHKFJBY5_cjs.stackRank(object),
10027
- sequence: chunkUHKFJBY5_cjs.stackSequence(object, legacyBase + index)
10028
+ rank: chunkSKGJXCAO_cjs.stackRank(object),
10029
+ sequence: chunkSKGJXCAO_cjs.stackSequence(object, legacyBase + index)
10028
10030
  });
10029
10031
  });
10030
10032
  };
@@ -10521,31 +10523,31 @@ function chartSeriesAttrs(detail) {
10521
10523
  ];
10522
10524
  }
10523
10525
  function frameBoundaryAttrs(detail) {
10524
- return [`${chunkUHKFJBY5_cjs.CORNER_RADIUS_ATTR}="${num2(detail.cornerRadius)}"`, `${chunkUHKFJBY5_cjs.SQUARE_CORNER_ATTR}="${detail.squareCorner}"`];
10526
+ return [`${chunkSKGJXCAO_cjs.CORNER_RADIUS_ATTR}="${num2(detail.cornerRadius)}"`, `${chunkSKGJXCAO_cjs.SQUARE_CORNER_ATTR}="${detail.squareCorner}"`];
10525
10527
  }
10526
10528
  function declaredBoundsAttr(bounds) {
10527
- return `${chunkUHKFJBY5_cjs.SYMBOL_BOUNDS_ATTR}="${num2(bounds.x)},${num2(bounds.y)},${num2(bounds.width)},${num2(bounds.height)}"`;
10529
+ return `${chunkSKGJXCAO_cjs.SYMBOL_BOUNDS_ATTR}="${num2(bounds.x)},${num2(bounds.y)},${num2(bounds.width)},${num2(bounds.height)}"`;
10528
10530
  }
10529
10531
  function symbolGeometryAttrs(detail) {
10530
10532
  return [
10531
- `${chunkUHKFJBY5_cjs.SYMBOL_POINTS_ATTR}="${xml(JSON.stringify(detail.points))}"`,
10532
- `${chunkUHKFJBY5_cjs.SYMBOL_TENSION_ATTR}="${num2(detail.tension)}"`,
10533
+ `${chunkSKGJXCAO_cjs.SYMBOL_POINTS_ATTR}="${xml(JSON.stringify(detail.points))}"`,
10534
+ `${chunkSKGJXCAO_cjs.SYMBOL_TENSION_ATTR}="${num2(detail.tension)}"`,
10533
10535
  declaredBoundsAttr(detail.declaredBounds)
10534
10536
  ];
10535
10537
  }
10536
10538
  function pathGeometryAttrs(detail) {
10537
10539
  return [
10538
- `${chunkUHKFJBY5_cjs.PATH_POINTS_ATTR}="${xml(JSON.stringify(detail.points))}"`,
10539
- `${chunkUHKFJBY5_cjs.PATH_TENSION_ATTR}="${num2(detail.tension)}"`,
10540
- `${chunkUHKFJBY5_cjs.PATH_CLOSED_ATTR}="${detail.closed}"`
10540
+ `${chunkSKGJXCAO_cjs.PATH_POINTS_ATTR}="${xml(JSON.stringify(detail.points))}"`,
10541
+ `${chunkSKGJXCAO_cjs.PATH_TENSION_ATTR}="${num2(detail.tension)}"`,
10542
+ `${chunkSKGJXCAO_cjs.PATH_CLOSED_ATTR}="${detail.closed}"`
10541
10543
  ];
10542
10544
  }
10543
10545
  function isometricGeometryAttrs(detail) {
10544
10546
  return [
10545
- `${chunkUHKFJBY5_cjs.ISOMETRIC_SIZE_ATTR}="${num2(detail.width)},${num2(detail.height)},${num2(detail.depth)}"`,
10546
- `${chunkUHKFJBY5_cjs.CORNER_RADIUS_ATTR}="${num2(detail.cornerRadius)}"`,
10547
+ `${chunkSKGJXCAO_cjs.ISOMETRIC_SIZE_ATTR}="${num2(detail.width)},${num2(detail.height)},${num2(detail.depth)}"`,
10548
+ `${chunkSKGJXCAO_cjs.CORNER_RADIUS_ATTR}="${num2(detail.cornerRadius)}"`,
10547
10549
  declaredBoundsAttr(detail.bounds),
10548
- `${chunkUHKFJBY5_cjs.ISOMETRIC_LABEL_OFFSET_ATTR}="${num2(detail.labelOffsetX)},${num2(detail.labelOffsetY)}"`
10550
+ `${chunkSKGJXCAO_cjs.ISOMETRIC_LABEL_OFFSET_ATTR}="${num2(detail.labelOffsetX)},${num2(detail.labelOffsetY)}"`
10549
10551
  ];
10550
10552
  }
10551
10553
  function linkDetailAttrs(detail) {
@@ -10692,7 +10694,7 @@ function renderSvgDocument(scene, options = {}) {
10692
10694
  const nodes = options.linkHitAreas ? withLinkHitAreas(scene.nodes) : scene.nodes;
10693
10695
  const body = nodes.map((node) => nodeSvg(node, defs)).join("\n ");
10694
10696
  const declaration = options.includeXmlDeclaration === false ? "" : '<?xml version="1.0" encoding="UTF-8"?>\n';
10695
- const svg = `${declaration}<svg xmlns="http://www.w3.org/2000/svg" width="${num2(width)}px" height="${num2(height)}px" viewBox="${viewBox}" role="img" data-sf-contract="${chunkUHKFJBY5_cjs.DOM_CONTRACT_VERSION}">
10697
+ const svg = `${declaration}<svg xmlns="http://www.w3.org/2000/svg" width="${num2(width)}px" height="${num2(height)}px" viewBox="${viewBox}" role="img" data-sf-contract="${chunkSKGJXCAO_cjs.DOM_CONTRACT_VERSION}">
10696
10698
  <defs>${defs.entries.join("")}</defs>
10697
10699
  ${body}
10698
10700
  </svg>`;
@@ -10712,9 +10714,9 @@ function renderCanvas(input, options = {}) {
10712
10714
  }
10713
10715
  var SCENE_CACHE_LIMIT = 50;
10714
10716
  var sceneCache = /* @__PURE__ */ new Map();
10715
- var cachedForRegistry = chunkUHKFJBY5_cjs.componentRegistryVersion();
10717
+ var cachedForRegistry = chunkSKGJXCAO_cjs.componentRegistryVersion();
10716
10718
  function cachedRenderScene(source) {
10717
- const registry = chunkUHKFJBY5_cjs.componentRegistryVersion();
10719
+ const registry = chunkSKGJXCAO_cjs.componentRegistryVersion();
10718
10720
  if (registry !== cachedForRegistry) {
10719
10721
  sceneCache.clear();
10720
10722
  cachedForRegistry = registry;
@@ -10746,7 +10748,7 @@ function render(source, options = {}) {
10746
10748
  var SCENE_ORDER_BASE = 1e4;
10747
10749
  function defineComponent(definition) {
10748
10750
  const { scene, ...descriptor } = definition;
10749
- const unregisterDescriptor = chunkUHKFJBY5_cjs.registerComponentDescriptor(descriptor);
10751
+ const unregisterDescriptor = chunkSKGJXCAO_cjs.registerComponentDescriptor(descriptor);
10750
10752
  const unregisterBuilder = registerComponentBuilder(
10751
10753
  descriptor.type,
10752
10754
  (component, index) => scene(component, { order: SCENE_ORDER_BASE + index })
@@ -10765,5 +10767,5 @@ exports.render = render;
10765
10767
  exports.renderCanvas = renderCanvas;
10766
10768
  exports.sflToRenderInput = sflToRenderInput;
10767
10769
  exports.sliderReach = sliderReach;
10768
- //# sourceMappingURL=chunk-EHH6ZDK6.cjs.map
10769
- //# sourceMappingURL=chunk-EHH6ZDK6.cjs.map
10770
+ //# sourceMappingURL=chunk-ZE2KRWOM.cjs.map
10771
+ //# sourceMappingURL=chunk-ZE2KRWOM.cjs.map