react-science 18.0.0 → 18.0.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/lib/components/activity_bar/activity_bar.d.ts.map +1 -1
- package/lib/components/activity_bar/activity_bar.js +5 -25
- package/lib/components/activity_bar/activity_bar.js.map +1 -1
- package/lib/components/button/Button.d.ts.map +1 -1
- package/lib/components/button/Button.js +19 -13
- package/lib/components/button/Button.js.map +1 -1
- package/lib/components/icon.d.ts +7 -0
- package/lib/components/icon.d.ts.map +1 -0
- package/lib/components/icon.js +23 -0
- package/lib/components/icon.js.map +1 -0
- package/lib/components/table/table_root.js +9 -7
- package/lib/components/table/table_root.js.map +1 -1
- package/lib/components/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/components/toolbar/Toolbar.js +13 -25
- package/lib/components/toolbar/Toolbar.js.map +1 -1
- package/package.json +1 -1
- package/src/components/activity_bar/activity_bar.tsx +6 -31
- package/src/components/button/Button.tsx +28 -18
- package/src/components/icon.tsx +27 -0
- package/src/components/table/table_root.tsx +13 -11
- package/src/components/toolbar/Toolbar.tsx +24 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity_bar.d.ts","sourceRoot":"","sources":["../../../src/components/activity_bar/activity_bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"activity_bar.d.ts","sourceRoot":"","sources":["../../../src/components/activity_bar/activity_bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAItD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,CAAC;IACxE,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAClC,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAWD,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAQlD;yBARe,WAAW;;;AAyB3B,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,2CAiC1D"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { ButtonGroup, Classes, Colors
|
|
2
|
+
import { ButtonGroup, Classes, Colors } from '@blueprintjs/core';
|
|
3
3
|
import styled from '@emotion/styled';
|
|
4
|
-
import { cloneElement } from 'react';
|
|
5
4
|
import { Button } from '../button/index.js';
|
|
5
|
+
import { normalizeIcon } from '../icon.js';
|
|
6
6
|
const ActivityButtonGroup = styled(ButtonGroup) `
|
|
7
7
|
flex-wrap: wrap-reverse;
|
|
8
8
|
height: 100%;
|
|
@@ -22,12 +22,6 @@ const ActivityButton = styled(Button) `
|
|
|
22
22
|
color: ${Colors.DARK_GRAY3};
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
.${Classes.ICON} {
|
|
26
|
-
width: 20px;
|
|
27
|
-
height: 20px;
|
|
28
|
-
font-size: 14px;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
25
|
.${Classes.TAG} {
|
|
32
26
|
font-size: 12px;
|
|
33
27
|
line-height: 14px;
|
|
@@ -35,24 +29,10 @@ const ActivityButton = styled(Button) `
|
|
|
35
29
|
min-height: 18px;
|
|
36
30
|
}
|
|
37
31
|
`;
|
|
38
|
-
const ActivityButtonIconContainer = styled.div `
|
|
39
|
-
display: flex;
|
|
40
|
-
justify-content: center;
|
|
41
|
-
align-items: center;
|
|
42
|
-
width: 0;
|
|
43
|
-
height: 0;
|
|
44
|
-
margin-right: 0;
|
|
45
|
-
`;
|
|
46
32
|
export function ActivityBarItem(props) {
|
|
47
33
|
const { active = false, icon, onClick, tooltip, tooltipProps, ...otherProps } = props;
|
|
48
|
-
const resizedIcon =
|
|
49
|
-
|
|
50
|
-
: cloneElement(icon, {
|
|
51
|
-
className: icon.props.className
|
|
52
|
-
? `${icon.props.className} ${Classes.ICON}`
|
|
53
|
-
: Classes.ICON,
|
|
54
|
-
});
|
|
55
|
-
return (_jsx(ActivityButton, { type: "button", active: active, icon: _jsx(ActivityButtonIconContainer, { children: _jsx(Icon, { icon: resizedIcon, size: 20 }) }), onClick: onClick, tooltipProps: !tooltip
|
|
34
|
+
const resizedIcon = normalizeIcon(icon, 20);
|
|
35
|
+
return (_jsx(ActivityButton, { type: "button", active: active, onClick: onClick, tooltipProps: !tooltip
|
|
56
36
|
? undefined
|
|
57
37
|
: {
|
|
58
38
|
content: tooltip,
|
|
@@ -60,7 +40,7 @@ export function ActivityBarItem(props) {
|
|
|
60
40
|
compact: false,
|
|
61
41
|
interactionKind: 'hover',
|
|
62
42
|
...tooltipProps,
|
|
63
|
-
}, ...otherProps }));
|
|
43
|
+
}, ...otherProps, children: resizedIcon }));
|
|
64
44
|
}
|
|
65
45
|
ActivityBar.Item = ActivityBarItem;
|
|
66
46
|
//# sourceMappingURL=activity_bar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity_bar.js","sourceRoot":"","sources":["../../../src/components/activity_bar/activity_bar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"activity_bar.js","sourceRoot":"","sources":["../../../src/components/activity_bar/activity_bar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAIrC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAc3C,MAAM,mBAAmB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;;;;;2BAKpB,MAAM,CAAC,WAAW;sBACvB,MAAM,CAAC,KAAK;CACjC,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE3B,OAAO,CACL,KAAC,mBAAmB,IAAC,QAAQ,QAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,SAAS,YACzD,QAAQ,GACW,CACvB,CAAC;AACJ,CAAC;AAED,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;;;KAGhC,OAAO,CAAC,IAAI;aACJ,MAAM,CAAC,UAAU;;;KAGzB,OAAO,CAAC,GAAG;;;;;;CAMf,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,KAA2B;IACzD,MAAM,EACJ,MAAM,GAAG,KAAK,EACd,IAAI,EACJ,OAAO,EACP,OAAO,EACP,YAAY,EACZ,GAAG,UAAU,EACd,GAAG,KAAK,CAAC;IAEV,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAE5C,OAAO,CACL,KAAC,cAAc,IACb,IAAI,EAAC,QAAQ,EACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,YAAY,EACV,CAAC,OAAO;YACN,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACE,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,KAAK;gBACd,eAAe,EAAE,OAAO;gBACxB,GAAG,YAAY;aAChB,KAEH,UAAU,YAEb,WAAW,GACG,CAClB,CAAC;AACJ,CAAC;AAED,WAAW,CAAC,IAAI,GAAG,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,IAAI,0BAA0B,EAC/C,WAAW,IAAI,oBAAoB,EACnC,QAAQ,EACR,YAAY,EACb,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,IAAI,0BAA0B,EAC/C,WAAW,IAAI,oBAAoB,EACnC,QAAQ,EACR,YAAY,EACb,MAAM,mBAAmB,CAAC;AAU3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,KAAK,cAAc,GAAG;KACnB,GAAG,IAAI,MAAM,oBAAoB,GAChC,MAAM,0BAA0B,CAAC,CAAC,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAC7D,0BAA0B,CAAC,GAAG,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG;IACzC,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC;IACvE,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;CACvC,CAAC;AAgCF,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAwDxC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { AnchorButton, Button as BlueprintButton,
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { AnchorButton, Button as BlueprintButton, Icon, Tag, Tooltip, } from '@blueprintjs/core';
|
|
3
3
|
import styled from '@emotion/styled';
|
|
4
|
-
import { Fragment } from 'react';
|
|
5
4
|
const ButtonTag = styled(Tag) `
|
|
6
5
|
position: absolute;
|
|
7
6
|
top: 0;
|
|
@@ -18,21 +17,28 @@ const ButtonTag = styled(Tag) `
|
|
|
18
17
|
// Setting the line-height makes sure regular sized buttons have a
|
|
19
18
|
// height consistent with the input fields and across variants.
|
|
20
19
|
// Using the same line height as in the blueprint docs.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
const TooltipAnchorButton = styled(AnchorButton)(getStyledCss);
|
|
29
|
-
const TooltipButton = styled(BlueprintButton)(getStyledCss);
|
|
20
|
+
const buttonStyles = {
|
|
21
|
+
lineHeight: 1.15,
|
|
22
|
+
position: 'relative',
|
|
23
|
+
};
|
|
24
|
+
const TooltipAnchorButton = styled(AnchorButton)(buttonStyles);
|
|
25
|
+
const TooltipButton = styled(BlueprintButton)(buttonStyles);
|
|
30
26
|
export function Button(props) {
|
|
31
27
|
const { tooltipProps = {}, children, tag, tagProps, ...buttonProps } = props;
|
|
32
28
|
const { fill, content = '', disabled = !tooltipProps.content, ...otherToolTipProps } = tooltipProps;
|
|
33
29
|
const InnerButton = buttonProps.disabled
|
|
34
30
|
? TooltipAnchorButton
|
|
35
31
|
: TooltipButton;
|
|
36
|
-
return (_jsx(Tooltip, { fill: fill || buttonProps.fill, disabled: disabled, content: content, ...otherToolTipProps, renderTarget: ({ isOpen, ...targetProps }) => (_jsx(InnerButton, { ...targetProps, ...buttonProps, icon:
|
|
32
|
+
return (_jsx(Tooltip, { fill: fill || buttonProps.fill, disabled: disabled, content: content, ...otherToolTipProps, renderTarget: ({ isOpen, ...targetProps }) => (_jsx(InnerButton, { ...targetProps, ...buttonProps, icon:
|
|
33
|
+
/*
|
|
34
|
+
icon and children will be children of the same node.
|
|
35
|
+
Blueprintjs' stylesheet treats the presence of multiple child elements
|
|
36
|
+
as there being icon and text, styling the icon with a right margin
|
|
37
|
+
so that the text is not right next to it.
|
|
38
|
+
In blueprint alone, this only happens when the button has children.
|
|
39
|
+
Here, we need to handle the case when the button has a tag, which
|
|
40
|
+
adds a sibling but should not affect the margin on its own.
|
|
41
|
+
*/
|
|
42
|
+
tag ? (_jsxs(_Fragment, { children: [children ? (_jsx(Icon, { icon: buttonProps.icon })) : (_jsx("div", { style: { display: 'contents' }, children: _jsx(Icon, { icon: buttonProps.icon }) })), _jsx(ButtonTag, { round: true, intent: "success", ...tagProps, children: tag })] })) : (buttonProps.icon), children: children })) }));
|
|
37
43
|
}
|
|
38
44
|
//# sourceMappingURL=Button.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":";AAMA,OAAO,EACL,YAAY,EACZ,MAAM,IAAI,eAAe,EACzB,
|
|
1
|
+
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/button/Button.tsx"],"names":[],"mappings":";AAMA,OAAO,EACL,YAAY,EACZ,MAAM,IAAI,eAAe,EACzB,IAAI,EACJ,GAAG,EACH,OAAO,GACR,MAAM,mBAAmB,CAAC;AAE3B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAerC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;;;;;;;;;;;;CAY5B,CAAC;AAEF,kEAAkE;AAClE,+DAA+D;AAC/D,uDAAuD;AACvD,MAAM,YAAY,GAAc;IAC9B,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF,MAAM,mBAAmB,GAAG,MAAM,CAAC,YAAY,CAAC,CAE7C,YAAY,CAAC,CAAC;AAEjB,MAAM,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAC3C,YAAY,CACb,CAAC;AAEF,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,MAAM,EAAE,YAAY,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;IAC7E,MAAM,EACJ,IAAI,EACJ,OAAO,GAAG,EAAE,EACZ,QAAQ,GAAG,CAAC,YAAY,CAAC,OAAO,EAChC,GAAG,iBAAiB,EACrB,GAAG,YAAY,CAAC;IAEjB,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ;QACtC,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,aAAa,CAAC;IAElB,OAAO,CACL,KAAC,OAAO,IACN,IAAI,EAAE,IAAI,IAAI,WAAW,CAAC,IAAI,EAC9B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,KACZ,iBAAiB,EACrB,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,EAAE,EAAE,CAAC,CAC5C,KAAC,WAAW,OACN,WAAW,KACX,WAAW,EACf,IAAI;YACF;;;;;;;;cAQE;YACF,GAAG,CAAC,CAAC,CAAC,CACJ,8BACG,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,IAAI,IAAC,IAAI,EAAE,WAAW,CAAC,IAAI,GAAI,CACjC,CAAC,CAAC,CAAC,CACF,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,YACjC,KAAC,IAAI,IAAC,IAAI,EAAE,WAAW,CAAC,IAAI,GAAI,GAC5B,CACP,EACD,KAAC,SAAS,IAAC,KAAK,QAAC,MAAM,EAAC,SAAS,KAAK,QAAQ,YAC3C,GAAG,GACM,IACX,CACJ,CAAC,CAAC,CAAC,CACF,WAAW,CAAC,IAAI,CACjB,YAGF,QAAQ,GACG,CACf,GACD,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ButtonProps } from '@blueprintjs/core';
|
|
2
|
+
/**
|
|
3
|
+
* Return a normalized icon.
|
|
4
|
+
* Accepts a blueprint icon id or a custom element.
|
|
5
|
+
*/
|
|
6
|
+
export declare function normalizeIcon(icon: ButtonProps['icon'], size: number): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../src/components/icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,2CAkBpE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Classes, Icon } from '@blueprintjs/core';
|
|
3
|
+
import { cloneElement } from 'react';
|
|
4
|
+
/**
|
|
5
|
+
* Return a normalized icon.
|
|
6
|
+
* Accepts a blueprint icon id or a custom element.
|
|
7
|
+
*/
|
|
8
|
+
export function normalizeIcon(icon, size) {
|
|
9
|
+
return !icon || typeof icon === 'string' ? (_jsx(Icon, { icon: icon, size: size })) : (cloneElement(icon, {
|
|
10
|
+
style: {
|
|
11
|
+
width: size,
|
|
12
|
+
height: size,
|
|
13
|
+
// In a toolbar, icon size is 16 and font size 12
|
|
14
|
+
// In an activity toolbar, icon size is 20 and font size 16
|
|
15
|
+
fontSize: size - 4,
|
|
16
|
+
textAlign: 'center',
|
|
17
|
+
},
|
|
18
|
+
className: icon.props.className
|
|
19
|
+
? `${icon.props.className} ${Classes.ICON}`
|
|
20
|
+
: Classes.ICON,
|
|
21
|
+
}));
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.js","sourceRoot":"","sources":["../../src/components/icon.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAAyB,EAAE,IAAY;IACnE,OAAO,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CACzC,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAI,CACjC,CAAC,CAAC,CAAC,CACF,YAAY,CAAC,IAAI,EAAE;QACjB,KAAK,EAAE;YACL,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,IAAI;YACZ,iDAAiD;YACjD,2DAA2D;YAC3D,QAAQ,EAAE,IAAI,GAAG,CAAC;YAClB,SAAS,EAAE,QAAQ;SACpB;QACD,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;YAC7B,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE;YAC3C,CAAC,CAAC,OAAO,CAAC,IAAI;KACjB,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -104,13 +104,15 @@ export function Table(props) {
|
|
|
104
104
|
function useCheckProps(props, headers) {
|
|
105
105
|
const { onRowOrderChanged, getRowId } = props;
|
|
106
106
|
useEffect(() => {
|
|
107
|
-
if (onRowOrderChanged
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
107
|
+
if (onRowOrderChanged) {
|
|
108
|
+
if (!getRowId) {
|
|
109
|
+
// eslint-disable-next-line no-console
|
|
110
|
+
console.warn('When reordering rows is enabled via the `onRowOrderChanged` prop, the `getRowId` prop must be provided to identify each row unambiguously.');
|
|
111
|
+
}
|
|
112
|
+
if (headers.some((header) => header.column.getCanSort())) {
|
|
113
|
+
// eslint-disable-next-line no-console
|
|
114
|
+
console.warn('When reordering rows is enabled via the `onRowOrderChanged` prop, none of the columns should be sortable as data order will be overriden by internal sorting.');
|
|
115
|
+
}
|
|
114
116
|
}
|
|
115
117
|
}, [onRowOrderChanged, getRowId, headers]);
|
|
116
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table_root.js","sourceRoot":"","sources":["../../../src/components/table/table_root.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"table_root.js","sourceRoot":"","sources":["../../../src/components/table/table_root.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/toolbar/Toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,YAAY,EACZ,YAAY,EACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,OAAO,CAAC;AAGnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/toolbar/Toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,MAAM,EACN,YAAY,EACZ,YAAY,EACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,OAAO,CAAC;AAGnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAOtD,MAAM,MAAM,sBAAsB,GAC9B,OAAO,GACP,OAAO,GACP,cAAc,GACd,cAAc,CAAC;AAEnB,UAAU,gBAAgB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,YACf,SAAQ,gBAAgB,EACtB,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,UAAU,CAAC;IACjD;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;CACjD;AAED,MAAM,WAAW,gBACf,SAAQ,gBAAgB,EACtB,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,CAAC;IAClE,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IAClC,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;CACvC;AAMD,MAAM,WAAW,uBACf,SAAQ,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC;IACzC,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAoBD,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,2CA+D1C;yBA/De,OAAO;;6BA0Jd,uBAAuB;;AAzFhC,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAE3C"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { ButtonGroup, Classes, Colors, Icon, Popover } from '@blueprintjs/core';
|
|
3
3
|
import styled from '@emotion/styled';
|
|
4
|
-
import {
|
|
4
|
+
import { useLayoutEffect, useMemo, useRef } from 'react';
|
|
5
5
|
import { Button } from '../button/index.js';
|
|
6
|
+
import { normalizeIcon } from '../icon.js';
|
|
6
7
|
import { toolbarContext, useToolbarContext } from './toolbarContext.js';
|
|
7
8
|
const border = '1px solid rgb(247, 247, 247)';
|
|
8
9
|
const ToolbarButton = styled(Button) `
|
|
@@ -70,32 +71,19 @@ function ToolbarItemInternal(props) {
|
|
|
70
71
|
const { intent: toolbarIntent, disabled: toolbarDisabled, vertical, } = useToolbarContext();
|
|
71
72
|
const intent = itemIntent ?? toolbarIntent;
|
|
72
73
|
const disabled = itemDisabled ?? toolbarDisabled;
|
|
73
|
-
const
|
|
74
|
-
|
|
75
|
-
: cloneElement(icon, {
|
|
76
|
-
className: icon.props.className
|
|
77
|
-
? `${icon.props.className} ${Classes.ICON}`
|
|
78
|
-
: Classes.ICON,
|
|
79
|
-
});
|
|
80
|
-
return (_jsx(ToolbarButton, { alignText: isPopover ? 'start' : undefined, disabled: disabled, intent: intent, type: "button", active: active, style: {
|
|
74
|
+
const normalizedIcon = normalizeIcon(icon, 16);
|
|
75
|
+
return (_jsx(ToolbarButton, { disabled: disabled, intent: intent, type: "button", active: active, style: {
|
|
81
76
|
position: 'relative',
|
|
82
77
|
fontSize: '1.125em',
|
|
83
78
|
width: 'fit-content',
|
|
84
|
-
}, icon: _jsxs("div", { style: {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
transform: 'rotate(45deg)',
|
|
93
|
-
position: 'absolute',
|
|
94
|
-
bottom: 0,
|
|
95
|
-
right: 0,
|
|
96
|
-
width: 9,
|
|
97
|
-
height: 9,
|
|
98
|
-
} }))] }), onClick: onClick, tooltipProps: !tooltip
|
|
79
|
+
}, icon: _jsx(_Fragment, { children: isPopover ? (_jsxs(_Fragment, { children: [_jsx("div", { style: { display: 'contents' }, children: normalizedIcon }), _jsx(Icon, { icon: "caret-right", size: 9, style: {
|
|
80
|
+
transform: 'rotate(45deg)',
|
|
81
|
+
position: 'absolute',
|
|
82
|
+
bottom: 0,
|
|
83
|
+
right: 0,
|
|
84
|
+
width: 9,
|
|
85
|
+
height: 9,
|
|
86
|
+
} })] })) : (normalizedIcon) }), onClick: onClick, tooltipProps: !tooltip
|
|
99
87
|
? undefined
|
|
100
88
|
: {
|
|
101
89
|
content: tooltip,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../../../src/components/toolbar/Toolbar.tsx"],"names":[],"mappings":";AAMA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../../../src/components/toolbar/Toolbar.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { TooltipProps } from '@blueprintjs/core';
|
|
2
|
-
import { ButtonGroup, Classes, Colors
|
|
2
|
+
import { ButtonGroup, Classes, Colors } from '@blueprintjs/core';
|
|
3
3
|
import styled from '@emotion/styled';
|
|
4
4
|
import type { MouseEvent, ReactNode } from 'react';
|
|
5
|
-
import { cloneElement } from 'react';
|
|
6
5
|
|
|
7
6
|
import type { ButtonProps } from '../button/index.js';
|
|
8
7
|
import { Button } from '../button/index.js';
|
|
8
|
+
import { normalizeIcon } from '../icon.js';
|
|
9
9
|
|
|
10
10
|
export interface ActivityBarProps {
|
|
11
11
|
children: ReactNode;
|
|
@@ -45,12 +45,6 @@ const ActivityButton = styled(Button)`
|
|
|
45
45
|
color: ${Colors.DARK_GRAY3};
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
.${Classes.ICON} {
|
|
49
|
-
width: 20px;
|
|
50
|
-
height: 20px;
|
|
51
|
-
font-size: 14px;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
48
|
.${Classes.TAG} {
|
|
55
49
|
font-size: 12px;
|
|
56
50
|
line-height: 14px;
|
|
@@ -59,15 +53,6 @@ const ActivityButton = styled(Button)`
|
|
|
59
53
|
}
|
|
60
54
|
`;
|
|
61
55
|
|
|
62
|
-
const ActivityButtonIconContainer = styled.div`
|
|
63
|
-
display: flex;
|
|
64
|
-
justify-content: center;
|
|
65
|
-
align-items: center;
|
|
66
|
-
width: 0;
|
|
67
|
-
height: 0;
|
|
68
|
-
margin-right: 0;
|
|
69
|
-
`;
|
|
70
|
-
|
|
71
56
|
export function ActivityBarItem(props: ActivityBarItemProps) {
|
|
72
57
|
const {
|
|
73
58
|
active = false,
|
|
@@ -78,24 +63,12 @@ export function ActivityBarItem(props: ActivityBarItemProps) {
|
|
|
78
63
|
...otherProps
|
|
79
64
|
} = props;
|
|
80
65
|
|
|
81
|
-
const resizedIcon =
|
|
82
|
-
!icon || typeof icon === 'string'
|
|
83
|
-
? icon
|
|
84
|
-
: cloneElement(icon, {
|
|
85
|
-
className: icon.props.className
|
|
86
|
-
? `${icon.props.className} ${Classes.ICON}`
|
|
87
|
-
: Classes.ICON,
|
|
88
|
-
});
|
|
66
|
+
const resizedIcon = normalizeIcon(icon, 20);
|
|
89
67
|
|
|
90
68
|
return (
|
|
91
69
|
<ActivityButton
|
|
92
70
|
type="button"
|
|
93
71
|
active={active}
|
|
94
|
-
icon={
|
|
95
|
-
<ActivityButtonIconContainer>
|
|
96
|
-
<Icon icon={resizedIcon} size={20} />
|
|
97
|
-
</ActivityButtonIconContainer>
|
|
98
|
-
}
|
|
99
72
|
onClick={onClick}
|
|
100
73
|
tooltipProps={
|
|
101
74
|
!tooltip
|
|
@@ -109,7 +82,9 @@ export function ActivityBarItem(props: ActivityBarItemProps) {
|
|
|
109
82
|
}
|
|
110
83
|
}
|
|
111
84
|
{...otherProps}
|
|
112
|
-
|
|
85
|
+
>
|
|
86
|
+
{resizedIcon}
|
|
87
|
+
</ActivityButton>
|
|
113
88
|
);
|
|
114
89
|
}
|
|
115
90
|
|
|
@@ -7,7 +7,6 @@ import type {
|
|
|
7
7
|
import {
|
|
8
8
|
AnchorButton,
|
|
9
9
|
Button as BlueprintButton,
|
|
10
|
-
Classes,
|
|
11
10
|
Icon,
|
|
12
11
|
Tag,
|
|
13
12
|
Tooltip,
|
|
@@ -15,7 +14,6 @@ import {
|
|
|
15
14
|
import type { CSSObject } from '@emotion/styled';
|
|
16
15
|
import styled from '@emotion/styled';
|
|
17
16
|
import type { ReactNode } from 'react';
|
|
18
|
-
import { Fragment } from 'react';
|
|
19
17
|
|
|
20
18
|
type BlueprintProps = {
|
|
21
19
|
[key in keyof BlueprintButtonProps &
|
|
@@ -46,22 +44,17 @@ const ButtonTag = styled(Tag)`
|
|
|
46
44
|
// Setting the line-height makes sure regular sized buttons have a
|
|
47
45
|
// height consistent with the input fields and across variants.
|
|
48
46
|
// Using the same line height as in the blueprint docs.
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
lineHeight: 1.15,
|
|
54
|
-
position: 'relative',
|
|
55
|
-
[`.${Classes.ICON}`]: !buttonProps.children && { marginRight: 0 },
|
|
56
|
-
};
|
|
57
|
-
}
|
|
47
|
+
const buttonStyles: CSSObject = {
|
|
48
|
+
lineHeight: 1.15,
|
|
49
|
+
position: 'relative',
|
|
50
|
+
};
|
|
58
51
|
|
|
59
52
|
const TooltipAnchorButton = styled(AnchorButton)<{
|
|
60
53
|
children: ReactNode;
|
|
61
|
-
}>(
|
|
54
|
+
}>(buttonStyles);
|
|
62
55
|
|
|
63
56
|
const TooltipButton = styled(BlueprintButton)<{ children: ReactNode }>(
|
|
64
|
-
|
|
57
|
+
buttonStyles,
|
|
65
58
|
);
|
|
66
59
|
|
|
67
60
|
export function Button(props: ButtonProps) {
|
|
@@ -88,14 +81,31 @@ export function Button(props: ButtonProps) {
|
|
|
88
81
|
{...targetProps}
|
|
89
82
|
{...buttonProps}
|
|
90
83
|
icon={
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
84
|
+
/*
|
|
85
|
+
icon and children will be children of the same node.
|
|
86
|
+
Blueprintjs' stylesheet treats the presence of multiple child elements
|
|
87
|
+
as there being icon and text, styling the icon with a right margin
|
|
88
|
+
so that the text is not right next to it.
|
|
89
|
+
In blueprint alone, this only happens when the button has children.
|
|
90
|
+
Here, we need to handle the case when the button has a tag, which
|
|
91
|
+
adds a sibling but should not affect the margin on its own.
|
|
92
|
+
*/
|
|
93
|
+
tag ? (
|
|
94
|
+
<>
|
|
95
|
+
{children ? (
|
|
96
|
+
<Icon icon={buttonProps.icon} />
|
|
97
|
+
) : (
|
|
98
|
+
<div style={{ display: 'contents' }}>
|
|
99
|
+
<Icon icon={buttonProps.icon} />
|
|
100
|
+
</div>
|
|
101
|
+
)}
|
|
94
102
|
<ButtonTag round intent="success" {...tagProps}>
|
|
95
103
|
{tag}
|
|
96
104
|
</ButtonTag>
|
|
97
|
-
|
|
98
|
-
|
|
105
|
+
</>
|
|
106
|
+
) : (
|
|
107
|
+
buttonProps.icon
|
|
108
|
+
)
|
|
99
109
|
}
|
|
100
110
|
>
|
|
101
111
|
{children}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ButtonProps } from '@blueprintjs/core';
|
|
2
|
+
import { Classes, Icon } from '@blueprintjs/core';
|
|
3
|
+
import { cloneElement } from 'react';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Return a normalized icon.
|
|
7
|
+
* Accepts a blueprint icon id or a custom element.
|
|
8
|
+
*/
|
|
9
|
+
export function normalizeIcon(icon: ButtonProps['icon'], size: number) {
|
|
10
|
+
return !icon || typeof icon === 'string' ? (
|
|
11
|
+
<Icon icon={icon} size={size} />
|
|
12
|
+
) : (
|
|
13
|
+
cloneElement(icon, {
|
|
14
|
+
style: {
|
|
15
|
+
width: size,
|
|
16
|
+
height: size,
|
|
17
|
+
// In a toolbar, icon size is 16 and font size 12
|
|
18
|
+
// In an activity toolbar, icon size is 20 and font size 16
|
|
19
|
+
fontSize: size - 4,
|
|
20
|
+
textAlign: 'center',
|
|
21
|
+
},
|
|
22
|
+
className: icon.props.className
|
|
23
|
+
? `${icon.props.className} ${Classes.ICON}`
|
|
24
|
+
: Classes.ICON,
|
|
25
|
+
})
|
|
26
|
+
);
|
|
27
|
+
}
|
|
@@ -353,17 +353,19 @@ function useCheckProps(
|
|
|
353
353
|
) {
|
|
354
354
|
const { onRowOrderChanged, getRowId } = props;
|
|
355
355
|
useEffect(() => {
|
|
356
|
-
if (onRowOrderChanged
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
356
|
+
if (onRowOrderChanged) {
|
|
357
|
+
if (!getRowId) {
|
|
358
|
+
// eslint-disable-next-line no-console
|
|
359
|
+
console.warn(
|
|
360
|
+
'When reordering rows is enabled via the `onRowOrderChanged` prop, the `getRowId` prop must be provided to identify each row unambiguously.',
|
|
361
|
+
);
|
|
362
|
+
}
|
|
363
|
+
if (headers.some((header) => header.column.getCanSort())) {
|
|
364
|
+
// eslint-disable-next-line no-console
|
|
365
|
+
console.warn(
|
|
366
|
+
'When reordering rows is enabled via the `onRowOrderChanged` prop, none of the columns should be sortable as data order will be overriden by internal sorting.',
|
|
367
|
+
);
|
|
368
|
+
}
|
|
367
369
|
}
|
|
368
370
|
}, [onRowOrderChanged, getRowId, headers]);
|
|
369
371
|
}
|
|
@@ -7,10 +7,11 @@ import type {
|
|
|
7
7
|
import { ButtonGroup, Classes, Colors, Icon, Popover } from '@blueprintjs/core';
|
|
8
8
|
import styled from '@emotion/styled';
|
|
9
9
|
import type { MouseEvent, ReactNode } from 'react';
|
|
10
|
-
import {
|
|
10
|
+
import { useLayoutEffect, useMemo, useRef } from 'react';
|
|
11
11
|
|
|
12
12
|
import type { ButtonProps } from '../button/index.js';
|
|
13
13
|
import { Button } from '../button/index.js';
|
|
14
|
+
import { normalizeIcon } from '../icon.js';
|
|
14
15
|
|
|
15
16
|
import type { ToolbarContext } from './toolbarContext.js';
|
|
16
17
|
import { toolbarContext, useToolbarContext } from './toolbarContext.js';
|
|
@@ -163,18 +164,10 @@ function ToolbarItemInternal(props: ToolbarItemInternalProps) {
|
|
|
163
164
|
const intent = itemIntent ?? toolbarIntent;
|
|
164
165
|
const disabled = itemDisabled ?? toolbarDisabled;
|
|
165
166
|
|
|
166
|
-
const
|
|
167
|
-
!icon || typeof icon === 'string'
|
|
168
|
-
? icon
|
|
169
|
-
: cloneElement(icon, {
|
|
170
|
-
className: icon.props.className
|
|
171
|
-
? `${icon.props.className} ${Classes.ICON}`
|
|
172
|
-
: Classes.ICON,
|
|
173
|
-
});
|
|
167
|
+
const normalizedIcon = normalizeIcon(icon, 16);
|
|
174
168
|
|
|
175
169
|
return (
|
|
176
170
|
<ToolbarButton
|
|
177
|
-
alignText={isPopover ? 'start' : undefined}
|
|
178
171
|
disabled={disabled}
|
|
179
172
|
intent={intent}
|
|
180
173
|
type="button"
|
|
@@ -185,32 +178,28 @@ function ToolbarItemInternal(props: ToolbarItemInternalProps) {
|
|
|
185
178
|
width: 'fit-content',
|
|
186
179
|
}}
|
|
187
180
|
icon={
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
width: 9,
|
|
209
|
-
height: 9,
|
|
210
|
-
}}
|
|
211
|
-
/>
|
|
181
|
+
<>
|
|
182
|
+
{isPopover ? (
|
|
183
|
+
<>
|
|
184
|
+
{/*For the icon to be properly styled, it should not have any siblings*/}
|
|
185
|
+
<div style={{ display: 'contents' }}>{normalizedIcon}</div>
|
|
186
|
+
<Icon
|
|
187
|
+
icon="caret-right"
|
|
188
|
+
size={9}
|
|
189
|
+
style={{
|
|
190
|
+
transform: 'rotate(45deg)',
|
|
191
|
+
position: 'absolute',
|
|
192
|
+
bottom: 0,
|
|
193
|
+
right: 0,
|
|
194
|
+
width: 9,
|
|
195
|
+
height: 9,
|
|
196
|
+
}}
|
|
197
|
+
/>
|
|
198
|
+
</>
|
|
199
|
+
) : (
|
|
200
|
+
normalizedIcon
|
|
212
201
|
)}
|
|
213
|
-
|
|
202
|
+
</>
|
|
214
203
|
}
|
|
215
204
|
onClick={onClick}
|
|
216
205
|
tooltipProps={
|