victory-core 36.4.1 → 36.5.2
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/victory-core.js +14463 -11478
- package/dist/victory-core.min.js +1 -1
- package/dist/victory-core.min.js.LICENSE.txt +19 -0
- package/es/index.d.ts +18 -941
- package/es/index.js +18 -73
- package/es/types/callbacks.d.ts +37 -0
- package/es/types/callbacks.js +2 -0
- package/es/types/prop-types.d.ts +130 -0
- package/es/types/prop-types.js +2 -0
- package/es/victory-accessible-group/victory-accessible-group.d.ts +26 -0
- package/es/victory-accessible-group/victory-accessible-group.js +9 -16
- package/es/victory-animation/util.d.ts +67 -0
- package/es/victory-animation/util.js +7 -4
- package/es/victory-animation/victory-animation.d.ts +70 -0
- package/es/victory-animation/victory-animation.js +60 -67
- package/es/victory-clip-container/victory-clip-container.d.ts +77 -0
- package/es/victory-clip-container/victory-clip-container.js +16 -21
- package/es/victory-container/victory-container.d.ts +100 -0
- package/es/victory-container/victory-container.js +32 -31
- package/es/victory-label/victory-label.d.ts +62 -0
- package/es/victory-label/victory-label.js +14 -9
- package/es/victory-portal/portal-context.d.ts +12 -0
- package/es/victory-portal/portal-context.js +3 -3
- package/es/victory-portal/portal.d.ts +29 -0
- package/es/victory-portal/portal.js +26 -33
- package/es/victory-portal/victory-portal.d.ts +32 -0
- package/es/victory-portal/victory-portal.js +24 -22
- package/es/victory-primitives/arc.d.ts +50 -0
- package/es/victory-primitives/arc.js +4 -5
- package/es/victory-primitives/background.d.ts +51 -0
- package/es/victory-primitives/background.js +5 -6
- package/es/victory-primitives/border.d.ts +44 -0
- package/es/victory-primitives/border.js +4 -5
- package/es/victory-primitives/circle.d.ts +3 -0
- package/es/victory-primitives/circle.js +11 -7
- package/es/victory-primitives/clip-path.d.ts +15 -0
- package/es/victory-primitives/clip-path.js +6 -5
- package/es/victory-primitives/index.d.ts +15 -0
- package/es/victory-primitives/index.js +15 -0
- package/es/victory-primitives/line-segment.d.ts +46 -0
- package/es/victory-primitives/line-segment.js +4 -5
- package/es/victory-primitives/line.d.ts +3 -0
- package/es/victory-primitives/line.js +11 -7
- package/es/victory-primitives/path.d.ts +3 -0
- package/es/victory-primitives/path.js +9 -5
- package/es/victory-primitives/point.d.ts +49 -0
- package/es/victory-primitives/point.js +10 -19
- package/es/victory-primitives/rect.d.ts +3 -0
- package/es/victory-primitives/rect.js +11 -7
- package/es/victory-primitives/text.d.ts +17 -0
- package/es/victory-primitives/text.js +7 -5
- package/es/victory-primitives/tspan.d.ts +3 -0
- package/es/victory-primitives/tspan.js +7 -5
- package/es/victory-primitives/types.d.ts +8 -0
- package/es/victory-primitives/types.js +2 -0
- package/es/victory-primitives/whisker.d.ts +59 -0
- package/es/victory-primitives/whisker.js +4 -5
- package/es/victory-state/defaults.d.ts +3 -0
- package/es/victory-state/defaults.js +3 -0
- package/es/victory-state/helpers/get-axis-data.d.ts +3 -0
- package/es/victory-state/helpers/get-axis-data.js +15 -0
- package/es/victory-state/helpers/get-data.d.ts +15 -0
- package/es/victory-state/helpers/get-data.js +88 -0
- package/es/victory-state/helpers/get-domain.d.ts +6 -0
- package/es/victory-state/helpers/get-domain.js +68 -0
- package/es/victory-state/helpers/get-range.d.ts +6 -0
- package/es/victory-state/helpers/get-range.js +37 -0
- package/es/victory-state/helpers/get-scale.d.ts +6 -0
- package/es/victory-state/helpers/get-scale.js +59 -0
- package/es/victory-state/index.d.ts +3 -0
- package/es/victory-state/index.js +3 -0
- package/es/victory-state/types.d.ts +24 -0
- package/es/victory-state/types.js +2 -0
- package/es/victory-state/victory-provider.d.ts +19 -0
- package/es/victory-state/victory-provider.js +118 -0
- package/es/victory-theme/grayscale.d.ts +3 -0
- package/es/victory-theme/grayscale.js +3 -2
- package/es/victory-theme/material.d.ts +3 -0
- package/es/victory-theme/material.js +3 -2
- package/es/victory-theme/types.d.ts +239 -0
- package/es/victory-theme/types.js +2 -0
- package/es/victory-theme/victory-theme.d.ts +6 -0
- package/es/victory-theme/victory-theme.js +8 -6
- package/es/victory-transition/victory-transition.d.ts +60 -0
- package/es/victory-transition/victory-transition.js +20 -23
- package/es/victory-util/add-events.d.ts +106 -0
- package/es/victory-util/add-events.js +44 -34
- package/es/victory-util/axis.d.ts +51 -0
- package/es/victory-util/axis.js +9 -8
- package/es/victory-util/collection.d.ts +9 -0
- package/es/victory-util/collection.js +6 -6
- package/es/victory-util/common-props.d.ts +84 -0
- package/es/victory-util/common-props.js +29 -12
- package/es/victory-util/data.d.ts +75 -0
- package/es/victory-util/data.js +2 -3
- package/es/victory-util/default-transitions.d.ts +5 -0
- package/es/victory-util/default-transitions.js +2 -2
- package/es/victory-util/domain.d.ts +91 -0
- package/es/victory-util/domain.js +6 -4
- package/es/victory-util/events.d.ts +65 -0
- package/es/victory-util/events.js +13 -8
- package/es/victory-util/helpers.d.ts +61 -0
- package/es/victory-util/helpers.js +8 -6
- package/es/victory-util/hooks/index.d.ts +3 -0
- package/es/victory-util/hooks/index.js +2 -1
- package/es/victory-util/hooks/use-animation-state.js +2 -1
- package/es/victory-util/hooks/use-previous-props.d.ts +2 -0
- package/es/victory-util/hooks/use-previous-props.js +4 -3
- package/es/victory-util/immutable.d.ts +12 -0
- package/es/victory-util/immutable.js +5 -5
- package/es/victory-util/index.d.ts +29 -0
- package/es/victory-util/index.js +48 -0
- package/es/victory-util/label-helpers.d.ts +27 -0
- package/es/victory-util/label-helpers.js +2 -3
- package/es/victory-util/line-helpers.d.ts +5 -0
- package/es/victory-util/line-helpers.js +24 -6
- package/es/victory-util/log.d.ts +2 -0
- package/es/victory-util/log.js +2 -2
- package/es/victory-util/point-path-helpers.d.ts +10 -0
- package/es/victory-util/point-path-helpers.js +60 -61
- package/es/victory-util/prop-types.d.ts +51 -0
- package/es/victory-util/prop-types.js +35 -44
- package/es/victory-util/scale.d.ts +10 -0
- package/es/victory-util/scale.js +14 -6
- package/es/victory-util/selection.d.ts +25 -0
- package/es/victory-util/selection.js +25 -16
- package/es/victory-util/style.d.ts +19 -0
- package/es/victory-util/style.js +2 -3
- package/es/victory-util/textsize.d.ts +37 -0
- package/es/victory-util/textsize.js +9 -6
- package/es/victory-util/timer-context.d.ts +12 -0
- package/es/victory-util/timer-context.js +2 -1
- package/es/victory-util/timer.d.ts +17 -0
- package/es/victory-util/timer.js +15 -9
- package/es/victory-util/transitions.d.ts +49 -0
- package/es/victory-util/transitions.js +5 -4
- package/es/victory-util/type-helpers.d.ts +10 -0
- package/es/victory-util/type-helpers.js +28 -0
- package/es/victory-util/user-props.d.ts +21 -0
- package/es/victory-util/user-props.js +6 -5
- package/es/victory-util/with-container.d.ts +5 -0
- package/es/victory-util/with-container.js +32 -0
- package/es/victory-util/wrapper.d.ts +38 -0
- package/es/victory-util/wrapper.js +4 -3
- package/lib/index.d.ts +18 -941
- package/lib/index.js +224 -311
- package/lib/types/callbacks.d.ts +37 -0
- package/lib/types/callbacks.js +2 -0
- package/lib/types/prop-types.d.ts +130 -0
- package/lib/types/prop-types.js +2 -0
- package/lib/victory-accessible-group/victory-accessible-group.d.ts +26 -0
- package/lib/victory-accessible-group/victory-accessible-group.js +10 -15
- package/lib/victory-animation/util.d.ts +67 -0
- package/lib/victory-animation/util.js +7 -4
- package/lib/victory-animation/victory-animation.d.ts +70 -0
- package/lib/victory-animation/victory-animation.js +61 -65
- package/lib/victory-clip-container/victory-clip-container.d.ts +77 -0
- package/lib/victory-clip-container/victory-clip-container.js +20 -22
- package/lib/victory-container/victory-container.d.ts +100 -0
- package/lib/victory-container/victory-container.js +35 -31
- package/lib/victory-label/victory-label.d.ts +62 -0
- package/lib/victory-label/victory-label.js +20 -14
- package/lib/victory-portal/portal-context.d.ts +12 -0
- package/lib/victory-portal/portal-context.js +3 -3
- package/lib/victory-portal/portal.d.ts +29 -0
- package/lib/victory-portal/portal.js +27 -31
- package/lib/victory-portal/victory-portal.d.ts +32 -0
- package/lib/victory-portal/victory-portal.js +25 -20
- package/lib/victory-primitives/arc.d.ts +50 -0
- package/lib/victory-primitives/arc.js +7 -7
- package/lib/victory-primitives/background.d.ts +51 -0
- package/lib/victory-primitives/background.js +9 -9
- package/lib/victory-primitives/border.d.ts +44 -0
- package/lib/victory-primitives/border.js +7 -7
- package/lib/victory-primitives/circle.d.ts +3 -0
- package/lib/victory-primitives/circle.js +12 -6
- package/lib/victory-primitives/clip-path.d.ts +15 -0
- package/lib/victory-primitives/clip-path.js +7 -4
- package/lib/victory-primitives/index.d.ts +15 -0
- package/lib/victory-primitives/index.js +188 -0
- package/lib/victory-primitives/line-segment.d.ts +46 -0
- package/lib/victory-primitives/line-segment.js +7 -7
- package/lib/victory-primitives/line.d.ts +3 -0
- package/lib/victory-primitives/line.js +12 -6
- package/lib/victory-primitives/path.d.ts +3 -0
- package/lib/victory-primitives/path.js +10 -4
- package/lib/victory-primitives/point.d.ts +49 -0
- package/lib/victory-primitives/point.js +15 -22
- package/lib/victory-primitives/rect.d.ts +3 -0
- package/lib/victory-primitives/rect.js +12 -6
- package/lib/victory-primitives/text.d.ts +17 -0
- package/lib/victory-primitives/text.js +8 -4
- package/lib/victory-primitives/tspan.d.ts +3 -0
- package/lib/victory-primitives/tspan.js +8 -4
- package/lib/victory-primitives/types.d.ts +8 -0
- package/lib/victory-primitives/types.js +2 -0
- package/lib/victory-primitives/whisker.d.ts +59 -0
- package/lib/victory-primitives/whisker.js +7 -7
- package/lib/victory-state/defaults.d.ts +3 -0
- package/lib/victory-state/defaults.js +11 -0
- package/lib/victory-state/helpers/get-axis-data.d.ts +3 -0
- package/lib/victory-state/helpers/get-axis-data.js +23 -0
- package/lib/victory-state/helpers/get-data.d.ts +15 -0
- package/lib/victory-state/helpers/get-data.js +99 -0
- package/lib/victory-state/helpers/get-domain.d.ts +6 -0
- package/lib/victory-state/helpers/get-domain.js +82 -0
- package/lib/victory-state/helpers/get-range.d.ts +6 -0
- package/lib/victory-state/helpers/get-range.js +46 -0
- package/lib/victory-state/helpers/get-scale.d.ts +6 -0
- package/lib/victory-state/helpers/get-scale.js +74 -0
- package/lib/victory-state/index.d.ts +3 -0
- package/lib/victory-state/index.js +32 -0
- package/lib/victory-state/types.d.ts +24 -0
- package/lib/victory-state/types.js +2 -0
- package/lib/victory-state/victory-provider.d.ts +19 -0
- package/lib/victory-state/victory-provider.js +144 -0
- package/lib/victory-theme/grayscale.d.ts +3 -0
- package/lib/victory-theme/grayscale.js +4 -3
- package/lib/victory-theme/material.d.ts +3 -0
- package/lib/victory-theme/material.js +4 -3
- package/lib/victory-theme/types.d.ts +239 -0
- package/lib/victory-theme/types.js +2 -0
- package/lib/victory-theme/victory-theme.d.ts +6 -0
- package/lib/victory-theme/victory-theme.js +23 -8
- package/lib/victory-transition/victory-transition.d.ts +60 -0
- package/lib/victory-transition/victory-transition.js +22 -23
- package/lib/victory-util/add-events.d.ts +106 -0
- package/lib/victory-util/add-events.js +48 -40
- package/lib/victory-util/axis.d.ts +51 -0
- package/lib/victory-util/axis.js +8 -6
- package/lib/victory-util/collection.d.ts +9 -0
- package/lib/victory-util/collection.js +6 -6
- package/lib/victory-util/common-props.d.ts +84 -0
- package/lib/victory-util/common-props.js +27 -12
- package/lib/victory-util/data.d.ts +75 -0
- package/lib/victory-util/data.js +2 -1
- package/lib/victory-util/default-transitions.d.ts +5 -0
- package/lib/victory-util/default-transitions.js +2 -2
- package/lib/victory-util/domain.d.ts +91 -0
- package/lib/victory-util/domain.js +6 -2
- package/lib/victory-util/events.d.ts +65 -0
- package/lib/victory-util/events.js +13 -9
- package/lib/victory-util/helpers.d.ts +61 -0
- package/lib/victory-util/helpers.js +8 -6
- package/lib/victory-util/hooks/index.d.ts +3 -0
- package/lib/victory-util/hooks/index.js +2 -1
- package/lib/victory-util/hooks/use-animation-state.js +2 -1
- package/lib/victory-util/hooks/use-previous-props.d.ts +2 -0
- package/lib/victory-util/hooks/use-previous-props.js +5 -6
- package/lib/victory-util/immutable.d.ts +12 -0
- package/lib/victory-util/immutable.js +5 -6
- package/lib/victory-util/index.d.ts +29 -0
- package/lib/victory-util/index.js +181 -0
- package/lib/victory-util/label-helpers.d.ts +27 -0
- package/lib/victory-util/label-helpers.js +2 -3
- package/lib/victory-util/line-helpers.d.ts +5 -0
- package/lib/victory-util/line-helpers.js +28 -7
- package/lib/victory-util/log.d.ts +2 -0
- package/lib/victory-util/log.js +2 -2
- package/lib/victory-util/point-path-helpers.d.ts +10 -0
- package/lib/victory-util/point-path-helpers.js +87 -73
- package/lib/victory-util/prop-types.d.ts +51 -0
- package/lib/victory-util/prop-types.js +36 -44
- package/lib/victory-util/scale.d.ts +10 -0
- package/lib/victory-util/scale.js +14 -5
- package/lib/victory-util/selection.d.ts +25 -0
- package/lib/victory-util/selection.js +25 -21
- package/lib/victory-util/style.d.ts +19 -0
- package/lib/victory-util/style.js +2 -3
- package/lib/victory-util/textsize.d.ts +37 -0
- package/lib/victory-util/textsize.js +9 -6
- package/lib/victory-util/timer-context.d.ts +12 -0
- package/lib/victory-util/timer-context.js +2 -1
- package/lib/victory-util/timer.d.ts +17 -0
- package/lib/victory-util/timer.js +15 -9
- package/lib/victory-util/transitions.d.ts +49 -0
- package/lib/victory-util/transitions.js +5 -4
- package/lib/victory-util/type-helpers.d.ts +10 -0
- package/lib/victory-util/type-helpers.js +45 -0
- package/lib/victory-util/user-props.d.ts +21 -0
- package/lib/victory-util/user-props.js +6 -5
- package/lib/victory-util/with-container.d.ts +5 -0
- package/lib/victory-util/with-container.js +44 -0
- package/lib/victory-util/wrapper.d.ts +38 -0
- package/lib/victory-util/wrapper.js +4 -3
- package/package.json +4 -4
- package/src/index.ts +17 -0
- package/src/types/callbacks.ts +53 -0
- package/src/types/prop-types.ts +195 -0
- package/src/victory-accessible-group/{victory-accessible-group.js → victory-accessible-group.tsx} +13 -6
- package/src/victory-animation/{util.js → util.ts} +6 -4
- package/src/victory-animation/{victory-animation.js → victory-animation.tsx} +100 -23
- package/src/victory-clip-container/{victory-clip-container.js → victory-clip-container.tsx} +52 -28
- package/src/victory-container/{victory-container.js → victory-container.tsx} +86 -42
- package/src/victory-label/{victory-label.js → victory-label.tsx} +108 -49
- package/src/victory-portal/portal-context.ts +14 -0
- package/src/victory-portal/{portal.js → portal.tsx} +24 -13
- package/src/victory-portal/{victory-portal.js → victory-portal.tsx} +24 -9
- package/src/victory-primitives/{arc.js → arc.tsx} +22 -10
- package/src/victory-primitives/{background.js → background.tsx} +24 -12
- package/src/victory-primitives/{border.js → border.tsx} +19 -10
- package/src/victory-primitives/{circle.js → circle.tsx} +4 -3
- package/src/victory-primitives/clip-path.tsx +25 -0
- package/src/victory-primitives/index.ts +14 -0
- package/src/victory-primitives/{line-segment.js → line-segment.tsx} +20 -10
- package/src/victory-primitives/{line.js → line.tsx} +4 -3
- package/src/victory-primitives/{path.js → path.tsx} +4 -3
- package/src/victory-primitives/{point.js → point.tsx} +33 -26
- package/src/victory-primitives/{rect.js → rect.tsx} +4 -2
- package/src/victory-primitives/{text.js → text.tsx} +10 -4
- package/src/victory-primitives/tspan.tsx +7 -0
- package/src/victory-primitives/types.ts +19 -0
- package/src/victory-primitives/{whisker.js → whisker.tsx} +34 -19
- package/src/victory-state/defaults.ts +2 -0
- package/src/victory-state/helpers/get-axis-data.ts +14 -0
- package/src/victory-state/helpers/get-data.ts +79 -0
- package/src/victory-state/helpers/get-domain.ts +62 -0
- package/src/victory-state/helpers/get-range.ts +39 -0
- package/src/victory-state/helpers/get-scale.ts +64 -0
- package/src/victory-state/index.ts +2 -0
- package/src/victory-state/types.ts +32 -0
- package/src/victory-state/victory-provider.tsx +116 -0
- package/src/victory-theme/{grayscale.js → grayscale.tsx} +63 -62
- package/src/victory-theme/{material.js → material.tsx} +68 -67
- package/src/victory-theme/types.ts +257 -0
- package/src/victory-theme/victory-theme.tsx +5 -0
- package/src/victory-transition/{victory-transition.js → victory-transition.tsx} +82 -33
- package/src/victory-util/{add-events.js → add-events.tsx} +142 -60
- package/src/victory-util/{axis.js → axis.tsx} +17 -19
- package/src/victory-util/{collection.js → collection.tsx} +14 -11
- package/src/victory-util/common-props.tsx +307 -0
- package/src/victory-util/{data.js → data.ts} +14 -11
- package/src/victory-util/{default-transitions.js → default-transitions.ts} +20 -19
- package/src/victory-util/{domain.js → domain.ts} +26 -24
- package/src/victory-util/{events.js → events.ts} +83 -32
- package/src/victory-util/{helpers.js → helpers.ts} +41 -23
- package/src/victory-util/hooks/{index.js → index.ts} +0 -0
- package/src/victory-util/hooks/use-animation-state.js +10 -10
- package/src/victory-util/hooks/use-previous-props.ts +9 -0
- package/src/victory-util/{immutable.js → immutable.ts} +14 -11
- package/src/victory-util/index.ts +28 -0
- package/src/victory-util/{label-helpers.js → label-helpers.ts} +7 -8
- package/src/victory-util/line-helpers.ts +104 -0
- package/src/victory-util/{log.js → log.ts} +1 -2
- package/src/victory-util/point-path-helpers.ts +119 -0
- package/src/victory-util/{prop-types.js → prop-types.ts} +103 -102
- package/src/victory-util/{scale.js → scale.ts} +29 -17
- package/src/victory-util/selection.ts +158 -0
- package/src/victory-util/{style.js → style.ts} +3 -4
- package/src/victory-util/{textsize.js → textsize.ts} +32 -17
- package/src/victory-util/{timer-context.js → timer-context.ts} +1 -1
- package/src/victory-util/{timer.js → timer.ts} +16 -6
- package/src/victory-util/{transitions.js → transitions.ts} +50 -23
- package/src/victory-util/type-helpers.ts +50 -0
- package/src/victory-util/{user-props.js → user-props.ts} +16 -11
- package/src/victory-util/with-container.tsx +41 -0
- package/src/victory-util/{wrapper.js → wrapper.tsx} +38 -34
- package/src/index.d.ts +0 -941
- package/src/index.js +0 -51
- package/src/victory-portal/portal-context.js +0 -10
- package/src/victory-primitives/clip-path.js +0 -18
- package/src/victory-primitives/tspan.js +0 -5
- package/src/victory-theme/victory-theme.js +0 -7
- package/src/victory-util/common-props.js +0 -197
- package/src/victory-util/hooks/use-previous-props.js +0 -9
- package/src/victory-util/line-helpers.js +0 -54
- package/src/victory-util/point-path-helpers.js +0 -121
- package/src/victory-util/selection.js +0 -99
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ForAxes, AxisType, Tuple, Datum, DatumValue } from "../types/prop-types";
|
|
2
|
+
export declare function hasValueForAxis<T = unknown>(value: unknown | ForAxes<T>, axis: AxisType): value is ForAxes<T>;
|
|
3
|
+
export declare function isTuple<T = unknown>(value: unknown): value is Tuple<T>;
|
|
4
|
+
export declare function getValueForAxis<T = unknown>(value: T | ForAxes<T> | undefined, axis: AxisType): T | undefined;
|
|
5
|
+
export declare function isFunction<T = Function>(func?: unknown): func is T;
|
|
6
|
+
export declare function isDate(value: unknown): value is Date;
|
|
7
|
+
export declare function isKeyValueObject(datum: Datum): datum is {
|
|
8
|
+
[key: string]: DatumValue;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=type-helpers.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getValueForAxis = getValueForAxis;
|
|
7
|
+
exports.hasValueForAxis = hasValueForAxis;
|
|
8
|
+
exports.isDate = isDate;
|
|
9
|
+
exports.isFunction = isFunction;
|
|
10
|
+
exports.isKeyValueObject = isKeyValueObject;
|
|
11
|
+
exports.isTuple = isTuple;
|
|
12
|
+
|
|
13
|
+
function hasValueForAxis(value, axis) {
|
|
14
|
+
if (typeof value === "object" && value !== null) {
|
|
15
|
+
return axis in value;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function isTuple(value) {
|
|
22
|
+
return Array.isArray(value) && value.length === 2;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function getValueForAxis(value, axis) {
|
|
26
|
+
if (hasValueForAxis(value, axis)) {
|
|
27
|
+
return value[axis];
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return value;
|
|
31
|
+
} // eslint-disable-next-line @typescript-eslint/ban-types
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
function isFunction(func) {
|
|
35
|
+
return typeof func === "function";
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function isDate(value) {
|
|
39
|
+
return value instanceof Date;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function isKeyValueObject(datum) {
|
|
43
|
+
return typeof datum === "object" && !Array.isArray(datum) && !(datum instanceof Date);
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=type-helpers.js.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
declare type SafeAttribute = `data-${string}` | `aria-${string}`;
|
|
3
|
+
/**
|
|
4
|
+
* getSafeUserProps - function that takes in a props object and removes any
|
|
5
|
+
* key-value entries that do not match filter strings in the USER_PROPS_SAFELIST
|
|
6
|
+
* object.
|
|
7
|
+
*
|
|
8
|
+
* @param {Object} props: props to be filtered against USER_PROPS_SAFELIST
|
|
9
|
+
* @returns {Object}: object containing remaining acceptable props
|
|
10
|
+
*/
|
|
11
|
+
export declare const getSafeUserProps: <T>(props: T) => Record<SafeAttribute, string>;
|
|
12
|
+
/**
|
|
13
|
+
* Wraps a component and adds safe user props
|
|
14
|
+
*
|
|
15
|
+
* @param {ReactElement} component: parent component
|
|
16
|
+
* @param {Object} props: props to be filtered
|
|
17
|
+
* @returns {ReactElement} modified component
|
|
18
|
+
*/
|
|
19
|
+
export declare const withSafeUserProps: (component: React.ReactElement, props: any) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=user-props.d.ts.map
|
|
@@ -31,7 +31,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
31
31
|
|
|
32
32
|
/*
|
|
33
33
|
USER_PROPS_SAFELIST is to contain any string deemed safe for user props.
|
|
34
|
-
The startsWidth array will contain the start of any accepted user-prop that
|
|
34
|
+
The startsWidth array will contain the start of any accepted user-prop that
|
|
35
35
|
starts with these characters.
|
|
36
36
|
The exactMatch will contain a list of exact prop names that are accepted.
|
|
37
37
|
*/
|
|
@@ -39,6 +39,7 @@ var USER_PROPS_SAFELIST = {
|
|
|
39
39
|
startsWith: ["data-", "aria-"],
|
|
40
40
|
exactMatch: []
|
|
41
41
|
};
|
|
42
|
+
|
|
42
43
|
/**
|
|
43
44
|
* doesPropStartWith: Function that takes a prop's key and runs it against all
|
|
44
45
|
* options in the USER_PROPS_SAFELIST and checks to see if it starts with any
|
|
@@ -47,7 +48,6 @@ var USER_PROPS_SAFELIST = {
|
|
|
47
48
|
* @returns {Boolean}: returns true if the key starts with an option or false if
|
|
48
49
|
* otherwise
|
|
49
50
|
*/
|
|
50
|
-
|
|
51
51
|
var doesPropStartWith = function (key) {
|
|
52
52
|
var startsWith = false;
|
|
53
53
|
USER_PROPS_SAFELIST.startsWith.forEach(function (starterString) {
|
|
@@ -124,9 +124,9 @@ var getSafeUserProps = function (props) {
|
|
|
124
124
|
/**
|
|
125
125
|
* Wraps a component and adds safe user props
|
|
126
126
|
*
|
|
127
|
-
* @param {
|
|
127
|
+
* @param {ReactElement} component: parent component
|
|
128
128
|
* @param {Object} props: props to be filtered
|
|
129
|
-
* @returns {
|
|
129
|
+
* @returns {ReactElement} modified component
|
|
130
130
|
*/
|
|
131
131
|
|
|
132
132
|
|
|
@@ -136,4 +136,5 @@ var withSafeUserProps = function (component, props) {
|
|
|
136
136
|
return /*#__PURE__*/React.cloneElement(component, getSafeUserProps(props));
|
|
137
137
|
};
|
|
138
138
|
|
|
139
|
-
exports.withSafeUserProps = withSafeUserProps;
|
|
139
|
+
exports.withSafeUserProps = withSafeUserProps;
|
|
140
|
+
//# sourceMappingURL=user-props.js.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { VictoryProviderProps } from "victory-core";
|
|
3
|
+
import { VictoryCommonProps } from "./common-props";
|
|
4
|
+
export declare function withContainer<Props extends VictoryCommonProps>(WrappedComponent: (props: Props) => React.ReactElement, initialProviderProps?: Partial<VictoryProviderProps>): (props: Props) => JSX.Element;
|
|
5
|
+
//# sourceMappingURL=with-container.d.ts.map
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.withContainer = withContainer;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _victoryCore = require("victory-core");
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
15
|
+
|
|
16
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
17
|
+
|
|
18
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
19
|
+
|
|
20
|
+
var defaultProviderProps = {
|
|
21
|
+
width: 450,
|
|
22
|
+
height: 300,
|
|
23
|
+
padding: 50,
|
|
24
|
+
data: []
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
function withContainer(WrappedComponent) {
|
|
28
|
+
var initialProviderProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
29
|
+
return function (props) {
|
|
30
|
+
var providerProps = _objectSpread(_objectSpread(_objectSpread({}, defaultProviderProps), initialProviderProps), props);
|
|
31
|
+
|
|
32
|
+
var _props$standalone = props.standalone,
|
|
33
|
+
standalone = _props$standalone === void 0 ? true : _props$standalone,
|
|
34
|
+
_props$containerCompo = props.containerComponent,
|
|
35
|
+
containerComponent = _props$containerCompo === void 0 ? /*#__PURE__*/_react.default.createElement(_victoryCore.VictoryContainer, null) : _props$containerCompo;
|
|
36
|
+
|
|
37
|
+
if (standalone) {
|
|
38
|
+
return /*#__PURE__*/_react.default.createElement(_victoryCore.VictoryProvider, providerProps, /*#__PURE__*/_react.default.cloneElement(containerComponent, providerProps, /*#__PURE__*/_react.default.createElement(WrappedComponent, props)));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return /*#__PURE__*/_react.default.createElement(WrappedComponent, props);
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=with-container.js.map
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export declare function addBinsToParentPropsIfHistogram({ children, props, childComponents, parentProps, }: {
|
|
2
|
+
children: any;
|
|
3
|
+
props: any;
|
|
4
|
+
childComponents: any;
|
|
5
|
+
parentProps: any;
|
|
6
|
+
}): any;
|
|
7
|
+
export declare function getDataFromChildren(props: any, childComponents: any): any[][];
|
|
8
|
+
export declare function getData(props: any, childComponents: any): any;
|
|
9
|
+
export declare function getWidth(props: any, groupLength?: any, seriesLength?: any): number;
|
|
10
|
+
export declare function getDefaultDomainPadding(props: any, axis: any, childComponents: any): {
|
|
11
|
+
x: number;
|
|
12
|
+
} | undefined;
|
|
13
|
+
export declare function getDomainFromChildren(props: any, axis: any, childComponents: any): (number | Date)[];
|
|
14
|
+
export declare function getDomain(props: any, axis: any, childComponents: any): any;
|
|
15
|
+
export declare function getScale(props: any, axis: any, childComponents?: any): import("..").D3Scale<any>;
|
|
16
|
+
export declare function getAllEvents(props: any): any;
|
|
17
|
+
export declare function getColor(calculatedProps: any, child: any, index: any): any;
|
|
18
|
+
export declare function getStyle(theme: any, style: any, role: any): any;
|
|
19
|
+
export declare function getChildStyle(child: any, index: any, calculatedProps: any): any[] | {
|
|
20
|
+
parent: any;
|
|
21
|
+
data: any;
|
|
22
|
+
labels: any;
|
|
23
|
+
};
|
|
24
|
+
export declare function getStringsFromCategories(childComponents: any, axis: any): any[];
|
|
25
|
+
export declare function getStringsFromData(childComponents: any): {
|
|
26
|
+
x: number[];
|
|
27
|
+
y: number[];
|
|
28
|
+
};
|
|
29
|
+
export declare function getCategoryAndAxisStringsFromChildren(props: any, axis: any, childComponents: any): any[];
|
|
30
|
+
export declare function getStringsFromChildren(props: any, childComponents: any): {
|
|
31
|
+
x: any[];
|
|
32
|
+
y: any[];
|
|
33
|
+
};
|
|
34
|
+
export declare function getCategories(props: any, childComponents: any, allStrings: any): {
|
|
35
|
+
x: any;
|
|
36
|
+
y: any;
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=wrapper.d.ts.map
|
|
@@ -199,7 +199,7 @@ function getData(props, childComponents) {
|
|
|
199
199
|
}
|
|
200
200
|
|
|
201
201
|
childComponents = childComponents || _react.default.Children.toArray(props.children);
|
|
202
|
-
return getDataFromChildren(childComponents);
|
|
202
|
+
return getDataFromChildren(props, childComponents);
|
|
203
203
|
}
|
|
204
204
|
|
|
205
205
|
function getWidth(props, groupLength, seriesLength) {
|
|
@@ -264,7 +264,7 @@ function getDefaultDomainPadding(props, axis, childComponents) {
|
|
|
264
264
|
function getDomainFromChildren(props, axis, childComponents) {
|
|
265
265
|
// eslint-disable-line max-statements, complexity, max-len
|
|
266
266
|
var children = childComponents ? childComponents.slice(0) : _react.default.Children.toArray(props.children);
|
|
267
|
-
var parentData = props.data ? Data.getData(props
|
|
267
|
+
var parentData = props.data ? Data.getData(props) : undefined;
|
|
268
268
|
var polar = props.polar,
|
|
269
269
|
startAngle = props.startAngle,
|
|
270
270
|
endAngle = props.endAngle,
|
|
@@ -503,4 +503,5 @@ function getCategories(props, childComponents, allStrings) {
|
|
|
503
503
|
x: xCategories.length > 0 ? xCategories : undefined,
|
|
504
504
|
y: yCategories.length > 0 ? yCategories : undefined
|
|
505
505
|
};
|
|
506
|
-
}
|
|
506
|
+
}
|
|
507
|
+
//# sourceMappingURL=wrapper.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "victory-core",
|
|
3
|
-
"version": "36.
|
|
3
|
+
"version": "36.5.2",
|
|
4
4
|
"description": "Victory Core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"data visualization",
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
"lodash": "^4.17.21",
|
|
23
23
|
"prop-types": "^15.8.1",
|
|
24
24
|
"react-fast-compare": "^3.2.0",
|
|
25
|
-
"victory-vendor": "^36.
|
|
25
|
+
"victory-vendor": "^36.5.1"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
|
-
"react": "
|
|
28
|
+
"react": ">=16.6.0"
|
|
29
29
|
},
|
|
30
30
|
"scripts": {
|
|
31
31
|
"version": "yarn run nps build-libs && nps build-dists"
|
|
32
32
|
},
|
|
33
33
|
"sideEffects": false,
|
|
34
|
-
"gitHead": "
|
|
34
|
+
"gitHead": "def218e9749ecafc159ef458dd03a8b92e227666"
|
|
35
35
|
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export * from "./types/callbacks";
|
|
2
|
+
export * from "./types/prop-types";
|
|
3
|
+
export * from "./victory-accessible-group/victory-accessible-group";
|
|
4
|
+
export * from "./victory-animation/victory-animation";
|
|
5
|
+
export * from "./victory-container/victory-container";
|
|
6
|
+
export * from "./victory-label/victory-label";
|
|
7
|
+
export * from "./victory-transition/victory-transition";
|
|
8
|
+
export * from "./victory-clip-container/victory-clip-container";
|
|
9
|
+
export * from "./victory-theme/types";
|
|
10
|
+
export * from "./victory-theme/victory-theme";
|
|
11
|
+
export * from "./victory-portal/portal";
|
|
12
|
+
export * from "./victory-portal/portal-context";
|
|
13
|
+
export * from "./victory-portal/victory-portal";
|
|
14
|
+
export * from "./victory-primitives";
|
|
15
|
+
export { Border as Box } from "./victory-primitives";
|
|
16
|
+
export * from "./victory-util";
|
|
17
|
+
export * from "./victory-state";
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { D3Scale, Datum, ID } from "./prop-types";
|
|
2
|
+
import { BlockProps, OrientationTypes } from "../victory-theme/types";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* This is the first parameter of a callback when a callback is used to
|
|
6
|
+
* resolve the value of a property instead of a concrete value.
|
|
7
|
+
*
|
|
8
|
+
* Note that additional properties here like `scale`, `x`, `y`, etc are resolved
|
|
9
|
+
* values of properties from the VictoryXXXProps for each component.
|
|
10
|
+
*/
|
|
11
|
+
export interface CallbackArgs {
|
|
12
|
+
active?: boolean;
|
|
13
|
+
data?: Datum[];
|
|
14
|
+
datum?: Datum;
|
|
15
|
+
horizontal?: boolean;
|
|
16
|
+
index: ID;
|
|
17
|
+
x?: number;
|
|
18
|
+
y?: number;
|
|
19
|
+
scale?: {
|
|
20
|
+
x?: D3Scale;
|
|
21
|
+
y?: D3Scale;
|
|
22
|
+
};
|
|
23
|
+
tick?: any;
|
|
24
|
+
ticks?: any;
|
|
25
|
+
text?: any;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export type VictoryStringOrNumberCallback = (
|
|
29
|
+
args: CallbackArgs,
|
|
30
|
+
) => string | number;
|
|
31
|
+
|
|
32
|
+
export type VictoryStringCallback = (args: CallbackArgs) => string;
|
|
33
|
+
export type StringOrNumberOrCallback =
|
|
34
|
+
| string
|
|
35
|
+
| number
|
|
36
|
+
| VictoryStringOrNumberCallback;
|
|
37
|
+
export type StringOrCallback = string | VictoryStringCallback;
|
|
38
|
+
export type SliceNumberOrCallback<
|
|
39
|
+
T,
|
|
40
|
+
P extends string | number | symbol = never,
|
|
41
|
+
> = number | ((props: Omit<T, P>) => number);
|
|
42
|
+
export type VictoryNumberCallback = (args: CallbackArgs) => number;
|
|
43
|
+
export type VictoryPaddingCallback = (
|
|
44
|
+
args: CallbackArgs,
|
|
45
|
+
) => number | BlockProps;
|
|
46
|
+
export type VictoryOrientationCallback = (
|
|
47
|
+
args: CallbackArgs,
|
|
48
|
+
) => OrientationTypes;
|
|
49
|
+
export type NumberOrCallback = number | VictoryNumberCallback;
|
|
50
|
+
export type PaddingOrCallback = number | BlockProps | VictoryPaddingCallback;
|
|
51
|
+
export type OrientationOrCallback =
|
|
52
|
+
| OrientationTypes
|
|
53
|
+
| VictoryOrientationCallback;
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import {
|
|
3
|
+
ScaleLinear,
|
|
4
|
+
ScaleLogarithmic,
|
|
5
|
+
ScalePower,
|
|
6
|
+
ScaleTime,
|
|
7
|
+
} from "victory-vendor/d3-scale";
|
|
8
|
+
import {
|
|
9
|
+
AnimationEasing,
|
|
10
|
+
AnimationStyle,
|
|
11
|
+
} from "../victory-animation/victory-animation";
|
|
12
|
+
import { StringOrNumberOrCallback } from "./callbacks";
|
|
13
|
+
|
|
14
|
+
export type AxisType = "x" | "y";
|
|
15
|
+
export type DatumValue = number | string | Date | null | undefined;
|
|
16
|
+
export type Datum = any;
|
|
17
|
+
export type ForAxes<T> = T | { x?: T; y?: T };
|
|
18
|
+
export type ID = number | string;
|
|
19
|
+
export type ValueOrAccessor<ValueType = unknown, PropsType = object> =
|
|
20
|
+
| ValueType
|
|
21
|
+
| ((props: PropsType) => ValueType);
|
|
22
|
+
export type Tuple<T> = [T, T];
|
|
23
|
+
export type ValueOrAxes<T> = T | ForAxes<T>;
|
|
24
|
+
|
|
25
|
+
export type DomainPaddingPropType = ValueOrAxes<PaddingType>;
|
|
26
|
+
export type DomainPropType = ValueOrAxes<DomainTuple>;
|
|
27
|
+
export type DomainValue = number | Date;
|
|
28
|
+
// This should be a tuple type, but every time we use it, it fails with a type error.
|
|
29
|
+
// type number[] is not assignable to type [number, number] | [Date, Date].
|
|
30
|
+
export type DomainTuple = Tuple<number> | Tuple<Date>;
|
|
31
|
+
export type PaddingType = number | Tuple<number>;
|
|
32
|
+
export type RangePropType = ValueOrAxes<RangeTuple>;
|
|
33
|
+
export type RangeTuple = number[];
|
|
34
|
+
export type StringOrNumberOrList = string | number | (string | number)[];
|
|
35
|
+
|
|
36
|
+
export interface Padding {
|
|
37
|
+
top: number;
|
|
38
|
+
bottom: number;
|
|
39
|
+
left: number;
|
|
40
|
+
right: number;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface AnimatePropTypeInterface {
|
|
44
|
+
duration?: number;
|
|
45
|
+
onEnd?: () => void;
|
|
46
|
+
onExit?: {
|
|
47
|
+
duration?: number;
|
|
48
|
+
before?: (datum: Datum, index: number, data: Datum[]) => AnimationStyle;
|
|
49
|
+
};
|
|
50
|
+
onEnter?: {
|
|
51
|
+
duration?: number;
|
|
52
|
+
before?: (datum: Datum, index: number, data: Datum[]) => AnimationStyle;
|
|
53
|
+
after?: (datum: Datum, index: number, data: Datum[]) => AnimationStyle;
|
|
54
|
+
};
|
|
55
|
+
onLoad?: {
|
|
56
|
+
duration?: number;
|
|
57
|
+
before?: (datum: Datum, index: number, data: Datum[]) => AnimationStyle;
|
|
58
|
+
after?: (datum: Datum, index: number, data: Datum[]) => AnimationStyle;
|
|
59
|
+
};
|
|
60
|
+
easing?: AnimationEasing;
|
|
61
|
+
animationWhitelist?: string[];
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export interface EventCallbackInterface<TTarget, TEventKey> {
|
|
65
|
+
childName?: string | string[];
|
|
66
|
+
target?: TTarget;
|
|
67
|
+
eventKey?: TEventKey;
|
|
68
|
+
mutation: (props: any) => any;
|
|
69
|
+
callback?: (props: any) => any;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export interface EventPropTypeInterface<TTarget, TEventKey> {
|
|
73
|
+
childName?: string | Array<StringOrNumberOrCallback>;
|
|
74
|
+
target: TTarget;
|
|
75
|
+
eventKey?: TEventKey;
|
|
76
|
+
eventHandlers: {
|
|
77
|
+
[key: string]:
|
|
78
|
+
| {
|
|
79
|
+
(
|
|
80
|
+
event: React.SyntheticEvent<any>,
|
|
81
|
+
props?: any,
|
|
82
|
+
): EventCallbackInterface<TTarget, TEventKey>;
|
|
83
|
+
}
|
|
84
|
+
| {
|
|
85
|
+
(
|
|
86
|
+
event: React.SyntheticEvent<any>,
|
|
87
|
+
props?: any,
|
|
88
|
+
): EventCallbackInterface<TTarget, TEventKey>[];
|
|
89
|
+
}
|
|
90
|
+
| {
|
|
91
|
+
(event: React.SyntheticEvent<any>, props?: any): void;
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
type NumberValue = number | { valueOf(): number };
|
|
97
|
+
/**
|
|
98
|
+
* D3 scale function shape. Don't want to introduce typing dependency to d3
|
|
99
|
+
*/
|
|
100
|
+
export interface D3Scale<TRange = any> {
|
|
101
|
+
(numberValue: NumberValue): number;
|
|
102
|
+
base?: () => number;
|
|
103
|
+
ticks: (count?: number) => number[];
|
|
104
|
+
tickFormat: (count?: number) => (d: number) => string;
|
|
105
|
+
domain: {
|
|
106
|
+
(): number[];
|
|
107
|
+
(domain: NumberValue[]): D3Scale<TRange>;
|
|
108
|
+
};
|
|
109
|
+
range: {
|
|
110
|
+
(): TRange[];
|
|
111
|
+
(range: TRange): D3Scale<TRange>;
|
|
112
|
+
};
|
|
113
|
+
copy: () => this;
|
|
114
|
+
invert: (value: number) => number;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export type D3ScaleFn<TRange = any, TOutput = any> = () =>
|
|
118
|
+
| ScaleLinear<TRange, TOutput, unknown>
|
|
119
|
+
| ScaleLogarithmic<TRange, TOutput, unknown>
|
|
120
|
+
| ScaleTime<TRange, TOutput, unknown>
|
|
121
|
+
| ScalePower<TRange, TOutput, unknown>;
|
|
122
|
+
|
|
123
|
+
export type ScaleName = "linear" | "time" | "log" | "sqrt";
|
|
124
|
+
export type ScalePropType = ScaleName;
|
|
125
|
+
export type ScaleXYPropType = {
|
|
126
|
+
x: D3Scale;
|
|
127
|
+
y: D3Scale;
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
export type CategoryPropType =
|
|
131
|
+
| string[]
|
|
132
|
+
| { x: string[] }
|
|
133
|
+
| { y: string[] }
|
|
134
|
+
| {
|
|
135
|
+
x: string[];
|
|
136
|
+
y: string[];
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
export type DataGetterPropType = ValueOrAccessor<
|
|
140
|
+
string | string[] | number | number[]
|
|
141
|
+
>;
|
|
142
|
+
|
|
143
|
+
export type InterpolationPropType =
|
|
144
|
+
| "basis"
|
|
145
|
+
| "basisClosed"
|
|
146
|
+
| "basisOpen"
|
|
147
|
+
| "bundle"
|
|
148
|
+
| "cardinal"
|
|
149
|
+
| "cardinalClosed"
|
|
150
|
+
| "cardinalOpen"
|
|
151
|
+
| "catmullRom"
|
|
152
|
+
| "catmullRomClosed"
|
|
153
|
+
| "catmullRomOpen"
|
|
154
|
+
| "linear"
|
|
155
|
+
| "linearClosed"
|
|
156
|
+
| "monotoneX"
|
|
157
|
+
| "monotoneY"
|
|
158
|
+
| "natural"
|
|
159
|
+
| "radial"
|
|
160
|
+
| "step"
|
|
161
|
+
| "stepAfter"
|
|
162
|
+
| "stepBefore";
|
|
163
|
+
|
|
164
|
+
export type ColorScalePropType =
|
|
165
|
+
| "grayscale"
|
|
166
|
+
| "qualitative"
|
|
167
|
+
| "heatmap"
|
|
168
|
+
| "warm"
|
|
169
|
+
| "cool"
|
|
170
|
+
| "red"
|
|
171
|
+
| "green"
|
|
172
|
+
| "blue"
|
|
173
|
+
| string[];
|
|
174
|
+
|
|
175
|
+
export type SortOrderPropType = "ascending" | "descending";
|
|
176
|
+
|
|
177
|
+
export interface VictoryLabelableProps {
|
|
178
|
+
labelComponent?: React.ReactElement;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
export interface VictoryMultiLabelableProps extends VictoryLabelableProps {
|
|
182
|
+
labels?:
|
|
183
|
+
| string[]
|
|
184
|
+
| number[]
|
|
185
|
+
| { (data: any): string | string[] | number | number[] | null };
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
export interface VictorySingleLabelableProps extends VictoryLabelableProps {
|
|
189
|
+
label?: string | { (data: any): string | number | null };
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
export type CoordinatesPropType = {
|
|
193
|
+
x: number;
|
|
194
|
+
y: number;
|
|
195
|
+
};
|
package/src/victory-accessible-group/{victory-accessible-group.js → victory-accessible-group.tsx}
RENAMED
|
@@ -1,22 +1,31 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import PropTypes from "prop-types";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
export interface VictoryAccessibleGroupProps {
|
|
5
|
+
desc?: string;
|
|
6
|
+
"aria-describedby"?: string;
|
|
7
|
+
"aria-label"?: string;
|
|
8
|
+
children?: React.ReactElement | React.ReactElement[];
|
|
9
|
+
className?: string;
|
|
10
|
+
tabIndex?: number;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export class VictoryAccessibleGroup extends React.Component<VictoryAccessibleGroupProps> {
|
|
5
14
|
static displayName = "VictoryAccessibleGroup";
|
|
6
15
|
static propTypes = {
|
|
7
16
|
"aria-describedby": PropTypes.string,
|
|
8
17
|
"aria-label": PropTypes.string,
|
|
9
18
|
children: PropTypes.oneOfType([
|
|
10
19
|
PropTypes.arrayOf(PropTypes.node),
|
|
11
|
-
PropTypes.node
|
|
20
|
+
PropTypes.node,
|
|
12
21
|
]),
|
|
13
22
|
className: PropTypes.string,
|
|
14
23
|
desc: PropTypes.string,
|
|
15
|
-
tabIndex: PropTypes.number
|
|
24
|
+
tabIndex: PropTypes.number,
|
|
16
25
|
};
|
|
17
26
|
|
|
18
27
|
static defaultProps = {
|
|
19
|
-
className: "VictoryAccessibleGroup"
|
|
28
|
+
className: "VictoryAccessibleGroup",
|
|
20
29
|
};
|
|
21
30
|
|
|
22
31
|
render() {
|
|
@@ -46,5 +55,3 @@ class VictoryAccessibleGroup extends React.Component {
|
|
|
46
55
|
);
|
|
47
56
|
}
|
|
48
57
|
}
|
|
49
|
-
|
|
50
|
-
export default VictoryAccessibleGroup;
|
|
@@ -34,7 +34,7 @@ export const isInterpolatable = function (obj) {
|
|
|
34
34
|
// component is only going to call the function (in which case it's
|
|
35
35
|
// safely interpolatable) or if it's going to access special properties
|
|
36
36
|
// (in which case our function generated from `interpolateFunction` will
|
|
37
|
-
// most likely cause an error. We could check for enumerable properties
|
|
37
|
+
// most likely cause an error). We could check for enumerable properties
|
|
38
38
|
// on the function object here to see if it's a "plain" function, but
|
|
39
39
|
// let's just require that components prevent such function props from
|
|
40
40
|
// being animated in the first place.
|
|
@@ -82,8 +82,8 @@ export const interpolateFunction = function (a, b) {
|
|
|
82
82
|
if (t >= 1) {
|
|
83
83
|
return b;
|
|
84
84
|
}
|
|
85
|
-
return function () {
|
|
86
|
-
/* eslint-disable no-invalid-this */
|
|
85
|
+
return function (this: unknown) {
|
|
86
|
+
/* eslint-disable no-invalid-this, prefer-rest-params */
|
|
87
87
|
const aval = typeof a === "function" ? a.apply(this, arguments) : a;
|
|
88
88
|
const bval = typeof b === "function" ? b.apply(this, arguments) : b;
|
|
89
89
|
return interpolate(aval, bval)(t);
|
|
@@ -182,7 +182,7 @@ export const interpolateString = function (a, b) {
|
|
|
182
182
|
* @param {any} b - End value.
|
|
183
183
|
* @returns {Function|undefined} An interpolation function, if necessary.
|
|
184
184
|
*/
|
|
185
|
-
export const victoryInterpolator = function (a, b) {
|
|
185
|
+
export const victoryInterpolator = function <T>(a: T, b: T): (t: number) => T {
|
|
186
186
|
// If the values are strictly equal, or either value is not interpolatable,
|
|
187
187
|
// just use either the start value `a` or end value `b` at every step, as
|
|
188
188
|
// there is no reasonable in-between value.
|
|
@@ -193,10 +193,12 @@ export const victoryInterpolator = function (a, b) {
|
|
|
193
193
|
return interpolateFunction(a, b);
|
|
194
194
|
}
|
|
195
195
|
if (isPlainObject(a) || isPlainObject(b)) {
|
|
196
|
+
// @ts-expect-error These generics are tough, but they work :)
|
|
196
197
|
return interpolateObject(a, b);
|
|
197
198
|
}
|
|
198
199
|
if (typeof a === "string" || typeof b === "string") {
|
|
199
200
|
return interpolateString(a, b);
|
|
200
201
|
}
|
|
202
|
+
// @ts-expect-error These generics are tough, but they work :)
|
|
201
203
|
return interpolate(a, b);
|
|
202
204
|
};
|