cx 24.0.3 → 24.3.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.
- package/dist/charts.js +104 -34
- package/dist/manifest.js +626 -626
- package/dist/ui.js +1 -1
- package/dist/widgets.js +64 -40
- package/package.json +1 -1
- package/src/charts/ColorMap.js +4 -6
- package/src/charts/PieChart.d.ts +3 -0
- package/src/charts/PieChart.js +115 -36
- package/src/ui/Cx.d.ts +3 -3
- package/src/ui/app/startAppLoop.js +3 -3
- package/src/ui/keyboardShortcuts.js +4 -5
- package/src/ui/selection/KeySelection.d.ts +1 -1
- package/src/ui/selection/PropertySelection.d.ts +1 -1
- package/src/ui/selection/PropertySelection.js +2 -4
- package/src/ui/selection/Selection.d.ts +1 -1
- package/src/widgets/form/ColorField.js +14 -9
- package/src/widgets/form/DateTimeField.js +10 -6
- package/src/widgets/form/LookupField.d.ts +8 -9
- package/src/widgets/form/MonthField.js +10 -6
- package/src/widgets/form/NumberField.js +8 -4
- package/src/widgets/form/TextArea.js +10 -6
- package/src/widgets/form/TextField.js +11 -9
- package/src/widgets/form/index.js +1 -2
- package/src/widgets/grid/Grid.d.ts +11 -8
package/dist/charts.js
CHANGED
|
@@ -634,43 +634,98 @@ var PieCalculator = /*#__PURE__*/ (function () {
|
|
|
634
634
|
};
|
|
635
635
|
return PieCalculator;
|
|
636
636
|
})();
|
|
637
|
-
function createSvgArc(x, y, r0, r,
|
|
638
|
-
if (
|
|
639
|
-
|
|
640
|
-
startAngle = endAngle;
|
|
641
|
-
endAngle = s;
|
|
637
|
+
function createSvgArc(x, y, r0, r, startAngleRadian, endAngleRadian, br) {
|
|
638
|
+
if (r0 === void 0) {
|
|
639
|
+
r0 = 0;
|
|
642
640
|
}
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
641
|
+
if (br === void 0) {
|
|
642
|
+
br = 0;
|
|
643
|
+
}
|
|
644
|
+
if (startAngleRadian > endAngleRadian) {
|
|
645
|
+
var s = startAngleRadian;
|
|
646
|
+
startAngleRadian = endAngleRadian;
|
|
647
|
+
endAngleRadian = s;
|
|
648
|
+
}
|
|
649
|
+
var path = [];
|
|
650
|
+
// limit br size based on r and r0
|
|
651
|
+
if (br > (r - r0) / 2) br = (r - r0) / 2;
|
|
652
|
+
var largeArc = endAngleRadian - startAngleRadian > Math.PI ? 1 : 0;
|
|
653
|
+
if (br > 0) {
|
|
654
|
+
if (r0 > 0) {
|
|
655
|
+
var innerBr = br;
|
|
656
|
+
var innerSmallArcAngle = Math.asin(br / (r0 + br));
|
|
657
|
+
if (innerSmallArcAngle > (endAngleRadian - startAngleRadian) / 2) {
|
|
658
|
+
innerSmallArcAngle = (endAngleRadian - startAngleRadian) / 2;
|
|
659
|
+
var sin = Math.sin(innerSmallArcAngle);
|
|
660
|
+
// correct br according to newly calculated border radius angle
|
|
661
|
+
innerBr = (r0 * sin) / (1 - sin);
|
|
662
|
+
}
|
|
663
|
+
var innerHip = Math.cos(innerSmallArcAngle) * (r0 + innerBr);
|
|
664
|
+
var innerSmallArc1XFrom = x + Math.cos(endAngleRadian) * innerHip;
|
|
665
|
+
var innerSmallArc1YFrom = y - Math.sin(endAngleRadian) * innerHip;
|
|
666
|
+
|
|
667
|
+
// move from the first small inner arc
|
|
668
|
+
path.push(move(innerSmallArc1XFrom, innerSmallArc1YFrom));
|
|
669
|
+
var innerSmallArc1XTo = x + Math.cos(endAngleRadian - innerSmallArcAngle) * r0;
|
|
670
|
+
var innerSmallArc1YTo = y - Math.sin(endAngleRadian - innerSmallArcAngle) * r0;
|
|
671
|
+
|
|
672
|
+
// add first small inner arc
|
|
673
|
+
path.push(arc(innerBr, innerBr, 0, 0, 0, innerSmallArc1XTo, innerSmallArc1YTo));
|
|
674
|
+
var innerArcXTo = x + Math.cos(startAngleRadian + innerSmallArcAngle) * r0;
|
|
675
|
+
var innerArcYTo = y - Math.sin(startAngleRadian + innerSmallArcAngle) * r0;
|
|
676
|
+
|
|
677
|
+
// add large inner arc
|
|
678
|
+
path.push(arc(r0, r0, 0, largeArc, 1, innerArcXTo, innerArcYTo));
|
|
679
|
+
var innerSmallArc2XTo = x + Math.cos(startAngleRadian) * innerHip;
|
|
680
|
+
var innerSmallArc2YTo = y - Math.sin(startAngleRadian) * innerHip;
|
|
681
|
+
// add second small inner arc
|
|
682
|
+
path.push(arc(innerBr, innerBr, 0, 0, 0, innerSmallArc2XTo, innerSmallArc2YTo));
|
|
683
|
+
} else {
|
|
684
|
+
path.push(move(x, y));
|
|
685
|
+
}
|
|
686
|
+
var outerBr = br;
|
|
687
|
+
var outerSmallArcAngle = Math.asin(br / (r - br));
|
|
688
|
+
if (outerSmallArcAngle > (endAngleRadian - startAngleRadian) / 2) {
|
|
689
|
+
outerSmallArcAngle = (endAngleRadian - startAngleRadian) / 2;
|
|
690
|
+
var _sin = Math.sin(outerSmallArcAngle);
|
|
691
|
+
// correct br according to newly calculated border radius angle
|
|
692
|
+
outerBr = (r * _sin) / (1 + _sin);
|
|
693
|
+
}
|
|
694
|
+
var outerHip = Math.cos(outerSmallArcAngle) * (r - outerBr);
|
|
695
|
+
var outerSmallArc1XFrom = x + Math.cos(startAngleRadian) * outerHip;
|
|
696
|
+
var outerSmallArc1YFrom = y - Math.sin(startAngleRadian) * outerHip;
|
|
697
|
+
var outerSmallArc1XTo = x + Math.cos(startAngleRadian + outerSmallArcAngle) * r;
|
|
698
|
+
var outerSmallArc1YTo = y - Math.sin(startAngleRadian + outerSmallArcAngle) * r;
|
|
699
|
+
var outerLargeArcXTo = x + Math.cos(endAngleRadian - outerSmallArcAngle) * r;
|
|
700
|
+
var outerLargeArcYTo = y - Math.sin(endAngleRadian - outerSmallArcAngle) * r;
|
|
701
|
+
var outerSmallArc2XTo = x + Math.cos(endAngleRadian) * outerHip;
|
|
702
|
+
var outerSmallArc2YTo = y - Math.sin(endAngleRadian) * outerHip;
|
|
703
|
+
path.push(
|
|
704
|
+
line$1(outerSmallArc1XFrom, outerSmallArc1YFrom),
|
|
705
|
+
arc(outerBr, outerBr, 0, 0, 0, outerSmallArc1XTo, outerSmallArc1YTo),
|
|
706
|
+
arc(r, r, 0, largeArc, 0, outerLargeArcXTo, outerLargeArcYTo),
|
|
707
|
+
arc(outerBr, outerBr, 0, 0, 0, outerSmallArc2XTo, outerSmallArc2YTo),
|
|
708
|
+
);
|
|
652
709
|
} else {
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
710
|
+
if (r0 > 0) {
|
|
711
|
+
var startX = x + Math.cos(endAngleRadian) * r0;
|
|
712
|
+
var startY = y - Math.sin(endAngleRadian) * r0;
|
|
713
|
+
path.push(move(startX, startY));
|
|
714
|
+
var innerArcToX = x + Math.cos(startAngleRadian) * r0;
|
|
715
|
+
var innerArcToY = y - Math.sin(startAngleRadian) * r0;
|
|
716
|
+
path.push(arc(r0, r0, 0, largeArc, 1, innerArcToX, innerArcToY));
|
|
717
|
+
} else {
|
|
718
|
+
path.push(move(x, y));
|
|
719
|
+
}
|
|
720
|
+
var lineToX = x + Math.cos(startAngleRadian) * r;
|
|
721
|
+
var lineToY = y - Math.sin(startAngleRadian) * r;
|
|
722
|
+
path.push(line$1(lineToX, lineToY));
|
|
723
|
+
var arcToX = x + Math.cos(endAngleRadian) * r;
|
|
724
|
+
var arcToY = y - Math.sin(endAngleRadian) * r;
|
|
725
|
+
path.push(arc(r, r, 0, largeArc, 0, arcToX, arcToY));
|
|
656
726
|
}
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
x + Math.cos(startAngle) * r,
|
|
660
|
-
y - Math.sin(startAngle) * r,
|
|
661
|
-
"A",
|
|
662
|
-
r,
|
|
663
|
-
r,
|
|
664
|
-
0,
|
|
665
|
-
largeArc,
|
|
666
|
-
0,
|
|
667
|
-
x + Math.cos(endAngle) * r,
|
|
668
|
-
y - Math.sin(endAngle) * r,
|
|
669
|
-
"L",
|
|
670
|
-
startX,
|
|
671
|
-
startY,
|
|
672
|
-
);
|
|
673
|
-
return result.join(" ");
|
|
727
|
+
path.push(z());
|
|
728
|
+
return path.join(" ");
|
|
674
729
|
}
|
|
675
730
|
PieChart.prototype.anchors = "0 1 1 0";
|
|
676
731
|
PieChart.prototype.angle = 360;
|
|
@@ -683,6 +738,7 @@ var PieSlice = /*#__PURE__*/ (function (_Container) {
|
|
|
683
738
|
var _proto3 = PieSlice.prototype;
|
|
684
739
|
_proto3.init = function init() {
|
|
685
740
|
this.selection = Selection.create(this.selection);
|
|
741
|
+
if (this.borderRadius) this.br = this.borderRadius;
|
|
686
742
|
_Container.prototype.init.call(this);
|
|
687
743
|
};
|
|
688
744
|
_proto3.declareData = function declareData() {
|
|
@@ -708,6 +764,7 @@ var PieSlice = /*#__PURE__*/ (function (_Container) {
|
|
|
708
764
|
stack: undefined,
|
|
709
765
|
legend: undefined,
|
|
710
766
|
hoverId: undefined,
|
|
767
|
+
br: undefined,
|
|
711
768
|
},
|
|
712
769
|
]),
|
|
713
770
|
);
|
|
@@ -829,6 +886,7 @@ var PieSlice = /*#__PURE__*/ (function (_Container) {
|
|
|
829
886
|
data.r * segment.radiusMultiplier,
|
|
830
887
|
segment.startAngle,
|
|
831
888
|
segment.endAngle,
|
|
889
|
+
data.br,
|
|
832
890
|
);
|
|
833
891
|
return /*#__PURE__*/ jsxs(
|
|
834
892
|
"g",
|
|
@@ -869,6 +927,18 @@ var PieSlice = /*#__PURE__*/ (function (_Container) {
|
|
|
869
927
|
};
|
|
870
928
|
return PieSlice;
|
|
871
929
|
})(Container);
|
|
930
|
+
function move(x, y) {
|
|
931
|
+
return "M " + x + " " + y;
|
|
932
|
+
}
|
|
933
|
+
function line$1(x, y) {
|
|
934
|
+
return "L " + x + " " + y;
|
|
935
|
+
}
|
|
936
|
+
function z() {
|
|
937
|
+
return "Z";
|
|
938
|
+
}
|
|
939
|
+
function arc(rx, ry, xRotation, largeArc, sweep, x, y) {
|
|
940
|
+
return "A " + rx + " " + ry + " " + xRotation + " " + largeArc + " " + sweep + " " + x + " " + y;
|
|
941
|
+
}
|
|
872
942
|
PieSlice.prototype.offset = 0;
|
|
873
943
|
PieSlice.prototype.r0 = 0;
|
|
874
944
|
PieSlice.prototype.r = 50;
|