@spaced-out/ui-design-system 0.1.94-beta.6 → 0.1.94-beta.8
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/CHANGELOG.md +22 -0
- package/design-tokens/size/base-size.json +3 -0
- package/lib/components/ButtonDropdown/ButtonDropdown.js +3 -1
- package/lib/components/ButtonDropdown/ButtonDropdown.js.flow +4 -2
- package/lib/components/ButtonDropdown/SimpleButtonDropdown.js +9 -1
- package/lib/components/ButtonDropdown/SimpleButtonDropdown.js.flow +14 -2
- package/lib/components/Dropdown/Dropdown.js +3 -1
- package/lib/components/Dropdown/Dropdown.js.flow +4 -2
- package/lib/components/Dropdown/SimpleDropdown.js +7 -1
- package/lib/components/Dropdown/SimpleDropdown.js.flow +10 -1
- package/lib/components/InlineDropdown/InlineDropdown.js +3 -1
- package/lib/components/InlineDropdown/InlineDropdown.js.flow +4 -2
- package/lib/components/InlineDropdown/SimpleInlineDropdown.js +9 -1
- package/lib/components/InlineDropdown/SimpleInlineDropdown.js.flow +14 -1
- package/lib/components/Menu/Menu.js +20 -4
- package/lib/components/Menu/Menu.js.flow +24 -0
- package/lib/components/Menu/Menu.module.css +70 -4
- package/lib/components/OptionButton/OptionButton.js +4 -2
- package/lib/components/OptionButton/OptionButton.js.flow +4 -0
- package/lib/components/OptionButton/SimpleOptionButton.js +9 -1
- package/lib/components/OptionButton/SimpleOptionButton.js.flow +14 -2
- package/lib/components/PageTitle/PageTitle.js +15 -3
- package/lib/components/PageTitle/PageTitle.js.flow +33 -14
- package/lib/components/PageTitle/PageTitle.module.css +10 -4
- package/lib/components/SideMenuLink/SideMenuLink.js +26 -6
- package/lib/components/SideMenuLink/SideMenuLink.js.flow +62 -34
- package/lib/components/Typeahead/SimpleTypeahead.js +10 -2
- package/lib/components/Typeahead/SimpleTypeahead.js.flow +14 -1
- package/lib/components/Typeahead/Typeahead.js +3 -1
- package/lib/components/Typeahead/Typeahead.js.flow +4 -2
- package/lib/styles/index.css +2 -0
- package/lib/styles/index.js +3 -1
- package/lib/styles/index.js.flow +2 -0
- package/lib/styles/variables/_size.css +2 -0
- package/lib/styles/variables/_size.js +3 -1
- package/lib/styles/variables/_size.js.flow +2 -0
- package/lib/types/charts.js.flow +30 -0
- package/lib/utils/charts/charts.js +17 -4
- package/lib/utils/charts/charts.js.flow +17 -3
- package/lib/utils/charts/columnChart.js +1 -0
- package/lib/utils/charts/columnChart.js.flow +1 -0
- package/lib/utils/click-away/click-away.js +9 -0
- package/lib/utils/click-away/click-away.js.flow +16 -0
- package/package.json +1 -1
|
@@ -24,6 +24,10 @@ const SimpleTypeaheadBase = (props, ref) => {
|
|
|
24
24
|
resolveSecondaryLabel,
|
|
25
25
|
onClear,
|
|
26
26
|
onSearch,
|
|
27
|
+
menuVirtualization,
|
|
28
|
+
header,
|
|
29
|
+
footer,
|
|
30
|
+
clickAwayRef,
|
|
27
31
|
...inputProps
|
|
28
32
|
} = props;
|
|
29
33
|
const [typeaheadInputText, setTypeaheadInputText] = React.useState('');
|
|
@@ -68,8 +72,12 @@ const SimpleTypeaheadBase = (props, ref) => {
|
|
|
68
72
|
selectedKeys: typeaheadSelectedKeys,
|
|
69
73
|
resolveLabel,
|
|
70
74
|
resolveSecondaryLabel,
|
|
71
|
-
size
|
|
72
|
-
|
|
75
|
+
size,
|
|
76
|
+
virtualization: menuVirtualization,
|
|
77
|
+
header,
|
|
78
|
+
footer
|
|
79
|
+
},
|
|
80
|
+
clickAwayRef: clickAwayRef
|
|
73
81
|
}));
|
|
74
82
|
};
|
|
75
83
|
const SimpleTypeahead = /*#__PURE__*/React.forwardRef(SimpleTypeaheadBase);
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
|
|
5
|
+
import type {ClickAwayRefType} from '../../utils/click-away';
|
|
5
6
|
import {getTextLabelFromSelectedKeys} from '../../utils/menu';
|
|
6
7
|
import type {InputProps} from '../Input';
|
|
7
|
-
import type {MenuOption} from '../Menu';
|
|
8
|
+
import type {MenuOption, Virtualization} from '../Menu';
|
|
8
9
|
|
|
9
10
|
import {Typeahead} from './Typeahead';
|
|
10
11
|
|
|
@@ -30,6 +31,9 @@ export type SimpleTypeaheadProps = {
|
|
|
30
31
|
// Menu props
|
|
31
32
|
options?: Array<MenuOption>,
|
|
32
33
|
selectedKeys?: Array<string>,
|
|
34
|
+
menuVirtualization?: Virtualization,
|
|
35
|
+
header?: React.Node,
|
|
36
|
+
footer?: React.Node,
|
|
33
37
|
|
|
34
38
|
// events
|
|
35
39
|
onSelect?: (option: MenuOption, ?SyntheticEvent<HTMLElement>) => mixed,
|
|
@@ -41,6 +45,7 @@ export type SimpleTypeaheadProps = {
|
|
|
41
45
|
// Resolvers
|
|
42
46
|
resolveLabel?: (option: MenuOption) => string | React.Node,
|
|
43
47
|
resolveSecondaryLabel?: (option: MenuOption) => string | React.Node,
|
|
48
|
+
clickAwayRef?: ClickAwayRefType,
|
|
44
49
|
...
|
|
45
50
|
};
|
|
46
51
|
|
|
@@ -58,6 +63,10 @@ const SimpleTypeaheadBase = (props: SimpleTypeaheadProps, ref) => {
|
|
|
58
63
|
resolveSecondaryLabel,
|
|
59
64
|
onClear,
|
|
60
65
|
onSearch,
|
|
66
|
+
menuVirtualization,
|
|
67
|
+
header,
|
|
68
|
+
footer,
|
|
69
|
+
clickAwayRef,
|
|
61
70
|
...inputProps
|
|
62
71
|
} = props;
|
|
63
72
|
|
|
@@ -121,7 +130,11 @@ const SimpleTypeaheadBase = (props: SimpleTypeaheadProps, ref) => {
|
|
|
121
130
|
resolveLabel,
|
|
122
131
|
resolveSecondaryLabel,
|
|
123
132
|
size,
|
|
133
|
+
virtualization: menuVirtualization,
|
|
134
|
+
header,
|
|
135
|
+
footer,
|
|
124
136
|
}}
|
|
137
|
+
clickAwayRef={clickAwayRef}
|
|
125
138
|
/>
|
|
126
139
|
);
|
|
127
140
|
};
|
|
@@ -32,6 +32,7 @@ const Typeahead = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
32
32
|
isLoading,
|
|
33
33
|
menuOpenOffset = 1,
|
|
34
34
|
onFocus,
|
|
35
|
+
clickAwayRef,
|
|
35
36
|
...inputProps
|
|
36
37
|
} = _ref;
|
|
37
38
|
const [filteredOptions, setFilteredOptions] = React.useState(menu?.options);
|
|
@@ -61,7 +62,8 @@ const Typeahead = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
61
62
|
setFilteredOptions(optionsFiltered || []);
|
|
62
63
|
}, [typeaheadInputText, menu?.options]);
|
|
63
64
|
return /*#__PURE__*/React.createElement(_clickAway.ClickAway, {
|
|
64
|
-
onChange: onMenuToggle
|
|
65
|
+
onChange: onMenuToggle,
|
|
66
|
+
clickAwayRef: clickAwayRef
|
|
65
67
|
}, _ref2 => {
|
|
66
68
|
let {
|
|
67
69
|
isOpen,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
import {sizeFluid} from '../../styles/variables/_size';
|
|
16
16
|
import {spaceNone, spaceXXSmall} from '../../styles/variables/_space';
|
|
17
17
|
import {classify} from '../../utils/classify';
|
|
18
|
-
import {ClickAway} from '../../utils/click-away';
|
|
18
|
+
import {type ClickAwayRefType, ClickAway} from '../../utils/click-away';
|
|
19
19
|
import type {InputProps} from '../Input';
|
|
20
20
|
import type {MenuOption, MenuProps} from '../Menu';
|
|
21
21
|
import {Menu} from '../Menu';
|
|
@@ -38,6 +38,7 @@ export type TypeaheadProps = {
|
|
|
38
38
|
onClear?: () => void,
|
|
39
39
|
isLoading?: boolean,
|
|
40
40
|
menuOpenOffset?: number,
|
|
41
|
+
clickAwayRef?: ClickAwayRefType,
|
|
41
42
|
...
|
|
42
43
|
};
|
|
43
44
|
|
|
@@ -60,6 +61,7 @@ export const Typeahead: React$AbstractComponent<
|
|
|
60
61
|
isLoading,
|
|
61
62
|
menuOpenOffset = 1,
|
|
62
63
|
onFocus,
|
|
64
|
+
clickAwayRef,
|
|
63
65
|
...inputProps
|
|
64
66
|
}: TypeaheadProps,
|
|
65
67
|
ref,
|
|
@@ -95,7 +97,7 @@ export const Typeahead: React$AbstractComponent<
|
|
|
95
97
|
}, [typeaheadInputText, menu?.options]);
|
|
96
98
|
|
|
97
99
|
return (
|
|
98
|
-
<ClickAway onChange={onMenuToggle}>
|
|
100
|
+
<ClickAway onChange={onMenuToggle} clickAwayRef={clickAwayRef}>
|
|
99
101
|
{({isOpen, onOpen, cancelNext, clickAway}) => (
|
|
100
102
|
<div
|
|
101
103
|
data-testid="Typeahead"
|
package/lib/styles/index.css
CHANGED
package/lib/styles/index.js
CHANGED
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.colorWarningLightest = exports.colorWarningLight = exports.colorWarningDarkest = exports.colorWarningDark = exports.colorWarning = exports.colorTooltipFill = exports.colorTextWarning = exports.colorTextTertiary = exports.colorTextSuccess = exports.colorTextSecondary = exports.colorTextPrimary = exports.colorTextNeutral = exports.colorTextInverseSecondary = exports.colorTextInversePrimary = exports.colorTextInformation = exports.colorTextFavorite = exports.colorTextDisabled = exports.colorTextDanger = exports.colorTextClickable = exports.colorSuccessLightest = exports.colorSuccessLight = exports.colorSuccessDarkest = exports.colorSuccessDark = exports.colorSuccess = exports.colorSubMenuStar = exports.colorSubMenuBackgroundDefault = exports.colorSideMenuIconDefault = exports.colorSideMenuIconActive = exports.colorSideMenuAccountBarFill = exports.colorNeutralLightest = exports.colorNeutralLight = exports.colorNeutralDarkest = exports.colorNeutralDark = exports.colorNeutral = exports.colorInformationLightest = exports.colorInformationLight = exports.colorInformationDarkest = exports.colorInformationDark = exports.colorInformation = exports.colorGrayLightest = exports.colorFocusPrimary = exports.colorFocusDanger = exports.colorFillSecondary = exports.colorFillPrimary = exports.colorFillNone = exports.colorFillInversePrimary = exports.colorFillDisabled = exports.colorDataViz8 = exports.colorDataViz7 = exports.colorDataViz6 = exports.colorDataViz5 = exports.colorDataViz4 = exports.colorDataViz3 = exports.colorDataViz2 = exports.colorDataViz1 = exports.colorDangerLightest = exports.colorDangerLight = exports.colorDangerDarkest = exports.colorDangerDark = exports.colorDanger = exports.colorButtonFillTertiaryPressed = exports.colorButtonFillTertiaryHovered = exports.colorButtonFillTertiaryEnabled = exports.colorButtonFillTableActionPressed = exports.colorButtonFillTableActionHovered = exports.colorButtonFillTableActionEnabled = exports.colorButtonFillTableActionBorder = exports.colorButtonFillSecondaryPressed = exports.colorButtonFillSecondaryHovered = exports.colorButtonFillSecondaryEnabled = exports.colorButtonFillPrimaryPressed = exports.colorButtonFillPrimaryHovered = exports.colorButtonFillPrimaryEnabled = exports.colorButtonFillGhostPressed = exports.colorButtonFillGhostHovered = exports.colorButtonFillGhostEnabled = exports.colorButtonFillDangerPressed = exports.colorButtonFillDangerHovered = exports.colorButtonFillDangerEnabled = exports.colorBorderTertiary = exports.colorBorderSecondary = exports.colorBorderPrimary = exports.colorBorderDanger = exports.colorBackgroundTertiary = exports.colorBackgroundSecondary = exports.colorBackgroundPrimary = exports.colorBackgroundBrand = exports.colorBackdropFill = exports.borderWidthTertiary = exports.borderWidthSecondary = exports.borderWidthPrimary = exports.borderWidthNone = exports.borderRadiusXSmall = exports.borderRadiusXLarge = exports.borderRadiusSmall = exports.borderRadiusRadioButton = exports.borderRadiusNone = exports.borderRadiusMedium = exports.borderRadiusLarge = exports.borderRadiusCircle = void 0;
|
|
7
7
|
exports.size26 = exports.size252 = exports.size240 = exports.size24 = exports.size228 = exports.size22 = exports.size20 = exports.size2 = exports.size180 = exports.size18 = exports.size160 = exports.size140 = exports.size1280 = exports.size125 = exports.size12 = exports.size110 = exports.size100 = exports.size10 = exports.shadowBoxShadow4Y = exports.shadowBoxShadow4X = exports.shadowBoxShadow4Type = exports.shadowBoxShadow4Spread = exports.shadowBoxShadow4Color = exports.shadowBoxShadow4Blur = exports.shadowBoxShadow3Y = exports.shadowBoxShadow3X = exports.shadowBoxShadow3Type = exports.shadowBoxShadow3Spread = exports.shadowBoxShadow3Color = exports.shadowBoxShadow3Blur = exports.shadowBoxShadow2Y = exports.shadowBoxShadow2X = exports.shadowBoxShadow2Type = exports.shadowBoxShadow2Spread = exports.shadowBoxShadow2Color = exports.shadowBoxShadow2Blur = exports.shadowBoxShadow1Y = exports.shadowBoxShadow1X = exports.shadowBoxShadow1Type = exports.shadowBoxShadow1Spread = exports.shadowBoxShadow1Color = exports.shadowBoxShadow1Blur = exports.opacity95 = exports.opacity90 = exports.opacity85 = exports.opacity80 = exports.opacity70 = exports.opacity60 = exports.opacity50 = exports.opacity5 = exports.opacity40 = exports.opacity30 = exports.opacity20 = exports.opacity15 = exports.opacity100 = exports.opacity10 = exports.opacity0 = exports.motionEaseInEaseOut = exports.motionDurationSlowest = exports.motionDurationSlower = exports.motionDurationSlow = exports.motionDurationNormal = exports.motionDurationFast = exports.fontWeightMedium = exports.fontWeightBook = exports.fontTextDecorationNone = exports.fontTextCaseNone = exports.fontSize46 = exports.fontSize36 = exports.fontSize26 = exports.fontSize24 = exports.fontSize18 = exports.fontSize16 = exports.fontSize14 = exports.fontSize13 = exports.fontSize12 = exports.fontParagraphSpacing0 = exports.fontLineHeight170 = exports.fontLineHeight150 = exports.fontLineHeight140 = exports.fontLineHeight130 = exports.fontLineHeight125 = exports.fontLineHeight120 = exports.fontLineHeight100 = exports.fontLetterSpacingMinus4 = exports.fontLetterSpacingMinus3 = exports.fontLetterSpacingMinus2 = exports.fontLetterSpacingMinus1 = exports.fontLetterSpacing4 = exports.fontLetterSpacing2 = exports.fontLetterSpacing1 = exports.fontLetterSpacing0 = exports.fontFamilyCentra = exports.elevationTooltip = exports.elevationToast = exports.elevationNone = exports.elevationModal = exports.elevationMenu = exports.elevationCard = exports.elevationBackdrop = void 0;
|
|
8
|
-
exports.spaceXXSmall = exports.spaceXXLarge = exports.spaceXSmall = exports.spaceXLarge = exports.spaceSmall = exports.spaceNone = exports.spaceNegHalfFluid = exports.spaceNegFluid = exports.spaceMedium = exports.spaceLarge = exports.spaceHalfFluid = exports.spaceFluid = exports.sizeFullViewportWidth = exports.sizeFullViewportHeight = exports.sizeFluid = exports.size960 = exports.size90 = exports.size880 = exports.size8 = exports.size720 = exports.size70 = exports.size660 = exports.size640 = exports.size60 = exports.size580 = exports.size58 = exports.size540 = exports.size500 = exports.size50 = exports.size5 = exports.size480 = exports.size48 = exports.size42 = exports.size400 = exports.size40 = exports.size4 = exports.size380 = exports.size38 = exports.size36 = exports.size34 = exports.size320 = exports.size32 = exports.size300 = exports.size30 = exports.size28 = exports.size276 = exports.size260 = void 0;
|
|
8
|
+
exports.spaceXXSmall = exports.spaceXXLarge = exports.spaceXSmall = exports.spaceXLarge = exports.spaceSmall = exports.spaceNone = exports.spaceNegHalfFluid = exports.spaceNegFluid = exports.spaceMedium = exports.spaceLarge = exports.spaceHalfFluid = exports.spaceFluid = exports.sizeFullViewportWidth = exports.sizeFullViewportHeight = exports.sizeFluid = exports.size960 = exports.size90 = exports.size880 = exports.size8 = exports.size720 = exports.size70 = exports.size660 = exports.size66 = exports.size640 = exports.size60 = exports.size580 = exports.size58 = exports.size540 = exports.size500 = exports.size50 = exports.size5 = exports.size480 = exports.size48 = exports.size42 = exports.size400 = exports.size40 = exports.size4 = exports.size380 = exports.size38 = exports.size36 = exports.size34 = exports.size320 = exports.size32 = exports.size300 = exports.size30 = exports.size28 = exports.size276 = exports.size260 = void 0;
|
|
9
9
|
|
|
10
10
|
const borderWidthNone = '0px';
|
|
11
11
|
exports.borderWidthNone = borderWidthNone;
|
|
@@ -417,6 +417,8 @@ const size58 = '58px';
|
|
|
417
417
|
exports.size58 = size58;
|
|
418
418
|
const size60 = '60px';
|
|
419
419
|
exports.size60 = size60;
|
|
420
|
+
const size66 = '66px';
|
|
421
|
+
exports.size66 = size66;
|
|
420
422
|
const size70 = '70px';
|
|
421
423
|
exports.size70 = size70;
|
|
422
424
|
const size90 = '90px';
|
package/lib/styles/index.js.flow
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.sizeFullViewportWidth = exports.sizeFullViewportHeight = exports.sizeFluid = exports.size960 = exports.size90 = exports.size880 = exports.size8 = exports.size720 = exports.size70 = exports.size660 = exports.size640 = exports.size60 = exports.size580 = exports.size58 = exports.size540 = exports.size500 = exports.size50 = exports.size5 = exports.size480 = exports.size48 = exports.size42 = exports.size400 = exports.size40 = exports.size4 = exports.size380 = exports.size38 = exports.size36 = exports.size34 = exports.size320 = exports.size32 = exports.size300 = exports.size30 = exports.size28 = exports.size276 = exports.size260 = exports.size26 = exports.size252 = exports.size240 = exports.size24 = exports.size228 = exports.size22 = exports.size20 = exports.size2 = exports.size180 = exports.size18 = exports.size160 = exports.size140 = exports.size1280 = exports.size125 = exports.size12 = exports.size110 = exports.size100 = exports.size10 = void 0;
|
|
6
|
+
exports.sizeFullViewportWidth = exports.sizeFullViewportHeight = exports.sizeFluid = exports.size960 = exports.size90 = exports.size880 = exports.size8 = exports.size720 = exports.size70 = exports.size660 = exports.size66 = exports.size640 = exports.size60 = exports.size580 = exports.size58 = exports.size540 = exports.size500 = exports.size50 = exports.size5 = exports.size480 = exports.size48 = exports.size42 = exports.size400 = exports.size40 = exports.size4 = exports.size380 = exports.size38 = exports.size36 = exports.size34 = exports.size320 = exports.size32 = exports.size300 = exports.size30 = exports.size28 = exports.size276 = exports.size260 = exports.size26 = exports.size252 = exports.size240 = exports.size24 = exports.size228 = exports.size22 = exports.size20 = exports.size2 = exports.size180 = exports.size18 = exports.size160 = exports.size140 = exports.size1280 = exports.size125 = exports.size12 = exports.size110 = exports.size100 = exports.size10 = void 0;
|
|
7
7
|
|
|
8
8
|
const size2 = '2px';
|
|
9
9
|
exports.size2 = size2;
|
|
@@ -51,6 +51,8 @@ const size58 = '58px';
|
|
|
51
51
|
exports.size58 = size58;
|
|
52
52
|
const size60 = '60px';
|
|
53
53
|
exports.size60 = size60;
|
|
54
|
+
const size66 = '66px';
|
|
55
|
+
exports.size66 = size66;
|
|
54
56
|
const size70 = '70px';
|
|
55
57
|
exports.size70 = size70;
|
|
56
58
|
const size90 = '90px';
|
package/lib/types/charts.js.flow
CHANGED
|
@@ -7,6 +7,11 @@ export type ChartOptions = {
|
|
|
7
7
|
spacing?: Array<number>,
|
|
8
8
|
margin?: Array<number>,
|
|
9
9
|
style?: CSSObject,
|
|
10
|
+
spacing?: [number, number, number, number],
|
|
11
|
+
spacingBottom?: number,
|
|
12
|
+
spacingLeft?: number,
|
|
13
|
+
spacingRight?: number,
|
|
14
|
+
spacingTop?: number,
|
|
10
15
|
...
|
|
11
16
|
},
|
|
12
17
|
title?: {
|
|
@@ -66,6 +71,7 @@ export type ChartOptions = {
|
|
|
66
71
|
...
|
|
67
72
|
},
|
|
68
73
|
legend?: Legend,
|
|
74
|
+
navigation?: Navigation,
|
|
69
75
|
...
|
|
70
76
|
};
|
|
71
77
|
|
|
@@ -223,3 +229,27 @@ export type Credits = {
|
|
|
223
229
|
},
|
|
224
230
|
...
|
|
225
231
|
};
|
|
232
|
+
|
|
233
|
+
export type Navigation = {
|
|
234
|
+
breadcrumbs?: Breadcrumbs,
|
|
235
|
+
...
|
|
236
|
+
};
|
|
237
|
+
|
|
238
|
+
export type Breadcrumbs = {
|
|
239
|
+
position?: Position,
|
|
240
|
+
style?: CSSObject,
|
|
241
|
+
buttonTheme?: ButtonTheme,
|
|
242
|
+
...
|
|
243
|
+
};
|
|
244
|
+
|
|
245
|
+
export type ButtonTheme = {
|
|
246
|
+
style?: CSSObject,
|
|
247
|
+
...
|
|
248
|
+
};
|
|
249
|
+
|
|
250
|
+
export type Position = {
|
|
251
|
+
align?: string,
|
|
252
|
+
verticalAlign?: string,
|
|
253
|
+
x?: number,
|
|
254
|
+
y?: number,
|
|
255
|
+
};
|
|
@@ -25,9 +25,9 @@ const breadcrumbStyle = {
|
|
|
25
25
|
exports.breadcrumbStyle = breadcrumbStyle;
|
|
26
26
|
const commonChartOptions = {
|
|
27
27
|
chart: {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
spacingBottom: 0,
|
|
29
|
+
spacingLeft: 0,
|
|
30
|
+
spacingRight: 0
|
|
31
31
|
},
|
|
32
32
|
title: {
|
|
33
33
|
text: null
|
|
@@ -71,7 +71,20 @@ const commonChartOptions = {
|
|
|
71
71
|
enabled: true
|
|
72
72
|
},
|
|
73
73
|
xAxis: {
|
|
74
|
-
type: 'category'
|
|
74
|
+
type: 'category',
|
|
75
|
+
padding: 0
|
|
76
|
+
},
|
|
77
|
+
navigation: {
|
|
78
|
+
breadcrumbs: {
|
|
79
|
+
buttonTheme: {
|
|
80
|
+
style: {
|
|
81
|
+
color: _color.colorFillInversePrimary
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
separator: {
|
|
85
|
+
text: '>'
|
|
86
|
+
}
|
|
87
|
+
}
|
|
75
88
|
}
|
|
76
89
|
};
|
|
77
90
|
exports.commonChartOptions = commonChartOptions;
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
colorDataViz6,
|
|
10
10
|
colorDataViz7,
|
|
11
11
|
colorDataViz8,
|
|
12
|
+
colorFillInversePrimary,
|
|
12
13
|
colorTextSecondary,
|
|
13
14
|
colorTooltipFill,
|
|
14
15
|
} from '../../styles/variables/_color';
|
|
@@ -44,9 +45,9 @@ export const breadcrumbStyle = {
|
|
|
44
45
|
|
|
45
46
|
export const commonChartOptions: $Shape<ChartOptions> = {
|
|
46
47
|
chart: {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
spacingBottom: 0,
|
|
49
|
+
spacingLeft: 0,
|
|
50
|
+
spacingRight: 0,
|
|
50
51
|
},
|
|
51
52
|
title: {
|
|
52
53
|
text: null,
|
|
@@ -88,6 +89,19 @@ export const commonChartOptions: $Shape<ChartOptions> = {
|
|
|
88
89
|
},
|
|
89
90
|
xAxis: {
|
|
90
91
|
type: 'category',
|
|
92
|
+
padding: 0,
|
|
93
|
+
},
|
|
94
|
+
navigation: {
|
|
95
|
+
breadcrumbs: {
|
|
96
|
+
buttonTheme: {
|
|
97
|
+
style: {
|
|
98
|
+
color: colorFillInversePrimary,
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
separator: {
|
|
102
|
+
text: '>',
|
|
103
|
+
},
|
|
104
|
+
},
|
|
91
105
|
},
|
|
92
106
|
};
|
|
93
107
|
|
|
@@ -98,6 +98,15 @@ class ClickAway extends React.Component {
|
|
|
98
98
|
isOpen,
|
|
99
99
|
pageBottom
|
|
100
100
|
} = this.state;
|
|
101
|
+
const {
|
|
102
|
+
clickAwayRef
|
|
103
|
+
} = this.props;
|
|
104
|
+
if (clickAwayRef) {
|
|
105
|
+
clickAwayRef.current = {
|
|
106
|
+
forceClose: this.forceClose,
|
|
107
|
+
forceOpen: this.handleOpenClick
|
|
108
|
+
};
|
|
109
|
+
}
|
|
101
110
|
return this.props.children({
|
|
102
111
|
onOpen: this.handleOpenClick,
|
|
103
112
|
isOpen,
|
|
@@ -16,11 +16,19 @@ export type ChildProps = {
|
|
|
16
16
|
anchorRef: (?HTMLElement) => mixed,
|
|
17
17
|
};
|
|
18
18
|
|
|
19
|
+
export type ClickAwayRefType = ?{
|
|
20
|
+
current: ?{
|
|
21
|
+
forceClose: () => void,
|
|
22
|
+
forceOpen: () => void,
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
|
|
19
26
|
export type ClickAwayProps = {
|
|
20
27
|
closeOnEscapeKeypress?: boolean,
|
|
21
28
|
children: (props: ChildProps) => React.Node,
|
|
22
29
|
shouldCancel: (event: MouseEvent) => boolean,
|
|
23
30
|
onChange?: (isOpen: boolean) => mixed,
|
|
31
|
+
clickAwayRef?: ClickAwayRefType,
|
|
24
32
|
};
|
|
25
33
|
|
|
26
34
|
type ClickAwayState = {
|
|
@@ -89,6 +97,14 @@ export class ClickAway extends React.Component<ClickAwayProps, ClickAwayState> {
|
|
|
89
97
|
|
|
90
98
|
render(): React.Node {
|
|
91
99
|
const {height, isOpen, pageBottom} = this.state;
|
|
100
|
+
const {clickAwayRef} = this.props;
|
|
101
|
+
|
|
102
|
+
if (clickAwayRef) {
|
|
103
|
+
clickAwayRef.current = {
|
|
104
|
+
forceClose: this.forceClose,
|
|
105
|
+
forceOpen: this.handleOpenClick,
|
|
106
|
+
};
|
|
107
|
+
}
|
|
92
108
|
return this.props.children({
|
|
93
109
|
onOpen: this.handleOpenClick,
|
|
94
110
|
isOpen,
|