@toptal/picasso 18.7.0 → 18.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AccordionDetails/AccordionDetails.d.ts +2 -2
- package/AccordionDetails/AccordionDetails.js +1 -1
- package/AccordionDetails/AccordionDetails.js.map +1 -1
- package/Avatar/Avatar.d.ts +17 -3
- package/Avatar/Avatar.js.map +1 -1
- package/Avatar/AvatarWrapper/AvatarWrapper.d.ts +2 -2
- package/Avatar/AvatarWrapper/AvatarWrapper.js +1 -1
- package/Avatar/AvatarWrapper/AvatarWrapper.js.map +1 -1
- package/BreadcrumbsItem/BreadcrumbsItem.js +1 -1
- package/BreadcrumbsItem/BreadcrumbsItem.js.map +1 -1
- package/Button/styles.d.ts +1 -1
- package/ButtonGroupItem/styles.d.ts +1 -1
- package/ButtonLoader/ButtonLoader.d.ts +4 -2
- package/ButtonLoader/ButtonLoader.js.map +1 -1
- package/ButtonSplit/ButtonSplit.js.map +1 -1
- package/Calendar/styles.d.ts +1 -1
- package/Checkbox/Checkbox.d.ts +6 -1
- package/CheckboxGroup/CheckboxGroup.d.ts +6 -2
- package/CheckboxGroup/CheckboxGroup.js +1 -1
- package/CheckboxGroup/CheckboxGroup.js.map +1 -1
- package/CircularProgress/CircularProgress.d.ts +5 -2
- package/CircularProgress/CircularProgress.js +1 -1
- package/CircularProgress/CircularProgress.js.map +1 -1
- package/DatePicker/index.js.map +1 -1
- package/Drawer/Drawer.d.ts +11 -2
- package/Drawer/Drawer.js +1 -1
- package/Drawer/Drawer.js.map +1 -1
- package/FormControlLabel/styles.js +1 -1
- package/FormControlLabel/styles.js.map +1 -1
- package/HeaderLoader/HeaderLoader.d.ts +4 -2
- package/HeaderLoader/HeaderLoader.js +4 -2
- package/HeaderLoader/HeaderLoader.js.map +1 -1
- package/InputAdornment/InputAdornment.d.ts +2 -2
- package/InputAdornment/InputAdornment.js +1 -1
- package/InputAdornment/InputAdornment.js.map +1 -1
- package/InputLabel/InputLabel.d.ts +2 -2
- package/InputLabel/InputLabel.js +1 -1
- package/InputLabel/InputLabel.js.map +1 -1
- package/NumberInput/NumberInput.js +3 -76
- package/NumberInput/NumberInput.js.map +1 -1
- package/NumberInput/styles.d.ts +1 -2
- package/NumberInput/styles.js +1 -41
- package/NumberInput/styles.js.map +1 -1
- package/NumberInputEndAdornment/NumberInputEndAdornment.d.ts +31 -0
- package/NumberInputEndAdornment/NumberInputEndAdornment.js +93 -0
- package/NumberInputEndAdornment/NumberInputEndAdornment.js.map +1 -0
- package/NumberInputEndAdornment/index.d.ts +2 -0
- package/NumberInputEndAdornment/index.js +3 -0
- package/NumberInputEndAdornment/index.js.map +1 -0
- package/NumberInputEndAdornment/styles.d.ts +3 -0
- package/NumberInputEndAdornment/styles.js +45 -0
- package/NumberInputEndAdornment/styles.js.map +1 -0
- package/OverviewBlock/OverviewBlock.d.ts +15 -5
- package/OverviewBlockGroup/OverviewBlockGroup.d.ts +9 -2
- package/OverviewBlockGroup/OverviewBlockGroup.js +1 -1
- package/OverviewBlockGroup/OverviewBlockGroup.js.map +1 -1
- package/OverviewBlockRow/OverviewBlockRow.d.ts +5 -2
- package/OverviewBlockRow/OverviewBlockRow.js +1 -1
- package/OverviewBlockRow/OverviewBlockRow.js.map +1 -1
- package/PageHead/PageHead.d.ts +10 -4
- package/PageHead/PageHead.js +10 -4
- package/PageHead/PageHead.js.map +1 -1
- package/PasswordInput/PasswordInput.d.ts +20 -0
- package/PasswordInput/PasswordInput.js +44 -0
- package/PasswordInput/PasswordInput.js.map +1 -0
- package/PasswordInput/index.d.ts +5 -0
- package/PasswordInput/index.js +3 -0
- package/PasswordInput/index.js.map +1 -0
- package/PasswordInput/styles.d.ts +3 -0
- package/PasswordInput/styles.js +18 -0
- package/PasswordInput/styles.js.map +1 -0
- package/Radio/Radio.d.ts +6 -1
- package/RadioGroup/RadioGroup.d.ts +6 -2
- package/RadioGroup/RadioGroup.js +1 -1
- package/RadioGroup/RadioGroup.js.map +1 -1
- package/ScrollMenu/ScrollMenu.d.ts +9 -2
- package/ScrollMenu/ScrollMenu.js +1 -1
- package/ScrollMenu/ScrollMenu.js.map +1 -1
- package/SelectOptions/SelectOptions.d.ts +7 -2
- package/SelectOptions/SelectOptions.js +1 -1
- package/SelectOptions/SelectOptions.js.map +1 -1
- package/Sidebar/Sidebar.js.map +1 -1
- package/SkeletonLoader/SkeletonLoader.d.ts +8 -2
- package/Slider/Slider.d.ts +1 -1
- package/Step/Step.d.ts +4 -2
- package/Step/Step.js +1 -1
- package/Step/Step.js.map +1 -1
- package/StepConnector/StepConnector.d.ts +4 -2
- package/StepConnector/StepConnector.js.map +1 -1
- package/StepIcon/StepIcon.d.ts +5 -2
- package/StepIcon/StepIcon.js +1 -1
- package/StepIcon/StepIcon.js.map +1 -1
- package/StepLabel/StepLabel.d.ts +8 -2
- package/StepLabel/StepLabel.js +1 -1
- package/StepLabel/StepLabel.js.map +1 -1
- package/StepLabel/styles.d.ts +1 -1
- package/StepLabel/styles.js +6 -2
- package/StepLabel/styles.js.map +1 -1
- package/TableCell/styles.d.ts +1 -1
- package/Tooltip/styles.d.ts +1 -1
- package/TreeView/PointLink/PointLink.d.ts +4 -2
- package/TreeView/PointLink/PointLink.js +1 -1
- package/TreeView/PointLink/PointLink.js.map +1 -1
- package/TreeView/PointNode/NodeContent.d.ts +2 -3
- package/TreeView/PointNode/NodeContent.js +4 -2
- package/TreeView/PointNode/NodeContent.js.map +1 -1
- package/TreeView/PointNode/TreeNodeAvatar.d.ts +8 -2
- package/TreeView/PointNode/TreeNodeAvatar.js +1 -1
- package/TreeView/PointNode/TreeNodeAvatar.js.map +1 -1
- package/TreeView/TreeViewContainer.d.ts +4 -2
- package/TreeView/TreeViewContainer.js.map +1 -1
- package/TreeView/Zoom/Zoom.d.ts +1 -2
- package/TreeView/Zoom/Zoom.js.map +1 -1
- package/index.d.ts +2 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/package.json +3 -3
- package/test-utils/TestingPicasso.d.ts +4 -2
- package/test-utils/TestingPicasso.js +3 -1
- package/test-utils/TestingPicasso.js.map +1 -1
- package/utils/Notifications/NotificationsProvider.d.ts +3 -2
- package/utils/Notifications/NotificationsProvider.js.map +1 -1
- package/utils/index.d.ts +0 -1
- package/utils/index.js +0 -1
- package/utils/index.js.map +1 -1
- package/utils/dash-to-camel-case/dash-to-camel-case.d.ts +0 -1
- package/utils/dash-to-camel-case/dash-to-camel-case.js +0 -2
- package/utils/dash-to-camel-case/dash-to-camel-case.js.map +0 -1
- package/utils/dash-to-camel-case/index.d.ts +0 -1
- package/utils/dash-to-camel-case/index.js +0 -2
- package/utils/dash-to-camel-case/index.js.map +0 -1
package/NumberInput/styles.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createStyles } from '@material-ui/core/styles';
|
|
2
|
-
export default (
|
|
2
|
+
export default () => createStyles({
|
|
3
3
|
root: {
|
|
4
4
|
paddingRight: 0,
|
|
5
5
|
cursor: 'text'
|
|
@@ -11,46 +11,6 @@ export default ({ palette, transitions, sizes: { borderRadius } }) => createStyl
|
|
|
11
11
|
margin: 0
|
|
12
12
|
},
|
|
13
13
|
'-moz-appearance': 'textfield'
|
|
14
|
-
},
|
|
15
|
-
control: {
|
|
16
|
-
height: '1rem',
|
|
17
|
-
width: '1.625rem',
|
|
18
|
-
borderLeft: `1px solid ${palette.grey.light2}`,
|
|
19
|
-
borderRight: '1px solid transparent',
|
|
20
|
-
'&:hover': {
|
|
21
|
-
background: palette.grey.light2,
|
|
22
|
-
borderColor: palette.grey.light2
|
|
23
|
-
},
|
|
24
|
-
'& + &': {
|
|
25
|
-
borderTop: `1px solid ${palette.grey.light2}`
|
|
26
|
-
},
|
|
27
|
-
'&:active + &': {
|
|
28
|
-
borderTop: `1px solid ${palette.grey.main}`
|
|
29
|
-
},
|
|
30
|
-
'&:active': {
|
|
31
|
-
background: palette.grey.main,
|
|
32
|
-
borderColor: palette.grey.main
|
|
33
|
-
},
|
|
34
|
-
'&:first-child': {
|
|
35
|
-
borderTopRightRadius: borderRadius.small
|
|
36
|
-
},
|
|
37
|
-
'&:last-child': {
|
|
38
|
-
borderBottomRightRadius: borderRadius.small
|
|
39
|
-
},
|
|
40
|
-
transition: `all ${transitions.duration.short}ms ${transitions.easing.easeOut}`,
|
|
41
|
-
transitionProperty: 'border, color, background'
|
|
42
|
-
},
|
|
43
|
-
controlDisabled: {
|
|
44
|
-
opacity: 0.48
|
|
45
|
-
},
|
|
46
|
-
small: {
|
|
47
|
-
height: '0.75rem'
|
|
48
|
-
},
|
|
49
|
-
medium: {
|
|
50
|
-
height: '1rem'
|
|
51
|
-
},
|
|
52
|
-
large: {
|
|
53
|
-
height: '1.5rem'
|
|
54
14
|
}
|
|
55
15
|
});
|
|
56
16
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/NumberInput/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/NumberInput/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,eAAe,GAAG,EAAE,CAClB,YAAY,CAAC;IACX,IAAI,EAAE;QACJ,YAAY,EAAE,CAAC;QACf,MAAM,EAAE,MAAM;KACf;IACD,KAAK,EAAE;QACL,4DAA4D,EAAE;YAC5D,oBAAoB,EAAE,MAAM;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,CAAC;SACV;QACD,iBAAiB,EAAE,WAAW;KAC/B;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
import { BaseProps, SizeType } from '@toptal/picasso-shared';
|
|
3
|
+
export interface Props extends BaseProps {
|
|
4
|
+
/** Value of the `input` element. */
|
|
5
|
+
value?: string | number;
|
|
6
|
+
/** Minimum value for the `input` element */
|
|
7
|
+
min?: number | string;
|
|
8
|
+
/** Maximum value for the `input` element */
|
|
9
|
+
max?: number | string;
|
|
10
|
+
/** Next value of the `input` element will be calculated based on step */
|
|
11
|
+
step?: number | string;
|
|
12
|
+
/** Indicates whether component is in disabled state */
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
/** Component size */
|
|
15
|
+
size?: SizeType<'small' | 'medium' | 'large'>;
|
|
16
|
+
/** Ref of the input element */
|
|
17
|
+
inputRef: RefObject<HTMLInputElement>;
|
|
18
|
+
}
|
|
19
|
+
export declare const NumberInputEndAdornment: {
|
|
20
|
+
(props: Props): JSX.Element;
|
|
21
|
+
defaultProps: {
|
|
22
|
+
min: number;
|
|
23
|
+
max: number;
|
|
24
|
+
value: number;
|
|
25
|
+
step: number;
|
|
26
|
+
disabled: boolean;
|
|
27
|
+
size: string;
|
|
28
|
+
};
|
|
29
|
+
displayName: string;
|
|
30
|
+
};
|
|
31
|
+
export default NumberInputEndAdornment;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { makeStyles } from '@material-ui/core/styles';
|
|
4
|
+
import ButtonBase from '@material-ui/core/ButtonBase';
|
|
5
|
+
import cx from 'classnames';
|
|
6
|
+
import InputAdornment from '../InputAdornment';
|
|
7
|
+
import Container from '../Container';
|
|
8
|
+
import { ArrowDownMinor16, ArrowUpMinor16, ArrowDownMinor24, ArrowUpMinor24 } from '../Icon';
|
|
9
|
+
import styles from './styles';
|
|
10
|
+
import isBrowser from '../utils/is-browser';
|
|
11
|
+
const useStyles = makeStyles(styles, {
|
|
12
|
+
name: 'NumberInputEndAdornment'
|
|
13
|
+
});
|
|
14
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
15
|
+
const nativeInputValueSetter = isBrowser()
|
|
16
|
+
? Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, 'value').set
|
|
17
|
+
: undefined;
|
|
18
|
+
export const NumberInputEndAdornment = (props) => {
|
|
19
|
+
const { step = 1, min = -Infinity, max = Infinity, value, disabled, size = 'medium', inputRef } = props;
|
|
20
|
+
const classes = useStyles(props);
|
|
21
|
+
const normalizedStep = Number(step);
|
|
22
|
+
const normalizedValue = Number(value);
|
|
23
|
+
const normalizedMin = Number(min);
|
|
24
|
+
const normalizedMax = Number(max);
|
|
25
|
+
const fireEvent = (nextValue) => {
|
|
26
|
+
if (!nativeInputValueSetter) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const input = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current;
|
|
30
|
+
nativeInputValueSetter.call(input, nextValue);
|
|
31
|
+
const event = new Event('input', {
|
|
32
|
+
bubbles: true,
|
|
33
|
+
cancelable: true
|
|
34
|
+
});
|
|
35
|
+
if (input) {
|
|
36
|
+
input.dispatchEvent(event);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const handleUpClick = () => {
|
|
40
|
+
if (typeof value === 'undefined') {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
let nextValue = normalizedValue + normalizedStep;
|
|
44
|
+
if (nextValue <= max) {
|
|
45
|
+
if (normalizedValue < normalizedMin + normalizedStep) {
|
|
46
|
+
nextValue = normalizedMin + normalizedStep;
|
|
47
|
+
}
|
|
48
|
+
fireEvent(nextValue);
|
|
49
|
+
}
|
|
50
|
+
else if (normalizedValue !== normalizedMax) {
|
|
51
|
+
nextValue = normalizedMax;
|
|
52
|
+
fireEvent(nextValue);
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
const handleDownClick = () => {
|
|
56
|
+
if (typeof value === 'undefined') {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
let nextValue = normalizedValue - normalizedStep;
|
|
60
|
+
if (nextValue >= min) {
|
|
61
|
+
if (normalizedValue > normalizedMax - normalizedStep) {
|
|
62
|
+
nextValue = normalizedMax - normalizedStep;
|
|
63
|
+
}
|
|
64
|
+
fireEvent(nextValue);
|
|
65
|
+
}
|
|
66
|
+
else if (normalizedValue !== normalizedMin) {
|
|
67
|
+
nextValue = normalizedMin;
|
|
68
|
+
fireEvent(nextValue);
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
const rootClassName = cx({
|
|
72
|
+
[classes.disabled]: disabled
|
|
73
|
+
}, classes[size], classes.root);
|
|
74
|
+
return (React.createElement(InputAdornment, { position: 'end' },
|
|
75
|
+
React.createElement(Container, { flex: true, direction: 'column', inline: true },
|
|
76
|
+
React.createElement(ButtonBase, { disabled: disabled, classes: {
|
|
77
|
+
root: rootClassName
|
|
78
|
+
}, onClick: handleUpClick }, size === 'large' ? React.createElement(ArrowUpMinor24, null) : React.createElement(ArrowUpMinor16, null)),
|
|
79
|
+
React.createElement(ButtonBase, { disabled: disabled, classes: {
|
|
80
|
+
root: rootClassName
|
|
81
|
+
}, onClick: handleDownClick }, size === 'large' ? React.createElement(ArrowDownMinor24, null) : React.createElement(ArrowDownMinor16, null)))));
|
|
82
|
+
};
|
|
83
|
+
NumberInputEndAdornment.defaultProps = {
|
|
84
|
+
min: -Infinity,
|
|
85
|
+
max: Infinity,
|
|
86
|
+
value: 0,
|
|
87
|
+
step: 1,
|
|
88
|
+
disabled: false,
|
|
89
|
+
size: 'medium'
|
|
90
|
+
};
|
|
91
|
+
NumberInputEndAdornment.displayName = 'NumberInputEndAdornment';
|
|
92
|
+
export default NumberInputEndAdornment;
|
|
93
|
+
//# sourceMappingURL=NumberInputEndAdornment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberInputEndAdornment.js","sourceRoot":"","sources":["../../src/NumberInputEndAdornment/NumberInputEndAdornment.tsx"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,KAAoB,MAAM,OAAO,CAAA;AACxC,OAAO,EAAE,UAAU,EAAS,MAAM,0BAA0B,CAAA;AAE5D,OAAO,UAAU,MAAM,8BAA8B,CAAA;AACrD,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,cAAc,MAAM,mBAAmB,CAAA;AAC9C,OAAO,SAAS,MAAM,cAAc,CAAA;AACpC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,cAAc,EACf,MAAM,SAAS,CAAA;AAChB,OAAO,MAAM,MAAM,UAAU,CAAA;AAC7B,OAAO,SAAS,MAAM,qBAAqB,CAAA;AAmB3C,MAAM,SAAS,GAAG,UAAU,CAAe,MAAM,EAAE;IACjD,IAAI,EAAE,yBAAyB;CAChC,CAAC,CAAA;AAEF,oEAAoE;AACpE,MAAM,sBAAsB,GAAG,SAAS,EAAE;IACxC,CAAC,CAAE,MAAM,CAAC,wBAAwB,CAC9B,MAAM,CAAC,gBAAgB,CAAC,SAAS,EACjC,OAAO,CACe,CAAC,GAAI;IAC/B,CAAC,CAAC,SAAS,CAAA;AAEb,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAY,EAAE,EAAE;IACtD,MAAM,EACJ,IAAI,GAAG,CAAC,EACR,GAAG,GAAG,CAAC,QAAQ,EACf,GAAG,GAAG,QAAQ,EACd,KAAK,EACL,QAAQ,EACR,IAAI,GAAG,QAAQ,EACf,QAAQ,EACT,GAAG,KAAK,CAAA;IAET,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;IAEhC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IACnC,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACrC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IACjC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAEjC,MAAM,SAAS,GAAG,CAAC,SAAiB,EAAE,EAAE;QACtC,IAAI,CAAC,sBAAsB,EAAE;YAC3B,OAAM;SACP;QAED,MAAM,KAAK,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAA;QAE/B,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAE7C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE;YAC/B,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;SACjB,CAAC,CAAA;QAEF,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;SAC3B;IACH,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAChC,OAAM;SACP;QAED,IAAI,SAAS,GAAG,eAAe,GAAG,cAAc,CAAA;QAEhD,IAAI,SAAS,IAAI,GAAG,EAAE;YACpB,IAAI,eAAe,GAAG,aAAa,GAAG,cAAc,EAAE;gBACpD,SAAS,GAAG,aAAa,GAAG,cAAc,CAAA;aAC3C;YAED,SAAS,CAAC,SAAS,CAAC,CAAA;SACrB;aAAM,IAAI,eAAe,KAAK,aAAa,EAAE;YAC5C,SAAS,GAAG,aAAa,CAAA;YACzB,SAAS,CAAC,SAAS,CAAC,CAAA;SACrB;IACH,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAChC,OAAM;SACP;QAED,IAAI,SAAS,GAAG,eAAe,GAAG,cAAc,CAAA;QAEhD,IAAI,SAAS,IAAI,GAAG,EAAE;YACpB,IAAI,eAAe,GAAG,aAAa,GAAG,cAAc,EAAE;gBACpD,SAAS,GAAG,aAAa,GAAG,cAAc,CAAA;aAC3C;YAED,SAAS,CAAC,SAAS,CAAC,CAAA;SACrB;aAAM,IAAI,eAAe,KAAK,aAAa,EAAE;YAC5C,SAAS,GAAG,aAAa,CAAA;YACzB,SAAS,CAAC,SAAS,CAAC,CAAA;SACrB;IACH,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,EAAE,CACtB;QACE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ;KAC7B,EACD,OAAO,CAAC,IAAI,CAAC,EACb,OAAO,CAAC,IAAI,CACb,CAAA;IAED,OAAO,CACL,oBAAC,cAAc,IAAC,QAAQ,EAAC,KAAK;QAC5B,oBAAC,SAAS,IAAC,IAAI,QAAC,SAAS,EAAC,QAAQ,EAAC,MAAM;YACvC,oBAAC,UAAU,IACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE;oBACP,IAAI,EAAE,aAAa;iBACpB,EACD,OAAO,EAAE,aAAa,IAErB,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAG,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAG,CAChD;YACb,oBAAC,UAAU,IACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE;oBACP,IAAI,EAAE,aAAa;iBACpB,EACD,OAAO,EAAE,eAAe,IAEvB,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAC,gBAAgB,OAAG,CAAC,CAAC,CAAC,oBAAC,gBAAgB,OAAG,CACpD,CACH,CACG,CAClB,CAAA;AACH,CAAC,CAAA;AAED,uBAAuB,CAAC,YAAY,GAAG;IACrC,GAAG,EAAE,CAAC,QAAQ;IACd,GAAG,EAAE,QAAQ;IACb,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,QAAQ;CACf,CAAA;AAED,uBAAuB,CAAC,WAAW,GAAG,yBAAyB,CAAA;AAE/D,eAAe,uBAAuB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/NumberInputEndAdornment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACnD,cAAc,2BAA2B,CAAA"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { createStyles } from '@material-ui/core/styles';
|
|
2
|
+
export default ({ palette, transitions, sizes: { borderRadius } }) => createStyles({
|
|
3
|
+
root: {
|
|
4
|
+
borderLeft: `1px solid ${palette.grey.light2}`,
|
|
5
|
+
borderRight: '1px solid transparent',
|
|
6
|
+
'&:hover': {
|
|
7
|
+
background: palette.grey.light2,
|
|
8
|
+
borderColor: palette.grey.light2
|
|
9
|
+
},
|
|
10
|
+
'& + &': {
|
|
11
|
+
borderTop: `1px solid ${palette.grey.light2}`
|
|
12
|
+
},
|
|
13
|
+
'&:active + &': {
|
|
14
|
+
borderTop: `1px solid ${palette.grey.main}`
|
|
15
|
+
},
|
|
16
|
+
'&:active': {
|
|
17
|
+
background: palette.grey.main,
|
|
18
|
+
borderColor: palette.grey.main
|
|
19
|
+
},
|
|
20
|
+
'&:first-child': {
|
|
21
|
+
borderTopRightRadius: borderRadius.small
|
|
22
|
+
},
|
|
23
|
+
'&:last-child': {
|
|
24
|
+
borderBottomRightRadius: borderRadius.small
|
|
25
|
+
},
|
|
26
|
+
transition: `all ${transitions.duration.short}ms ${transitions.easing.easeOut}`,
|
|
27
|
+
transitionProperty: 'border, color, background'
|
|
28
|
+
},
|
|
29
|
+
disabled: {
|
|
30
|
+
opacity: 0.48
|
|
31
|
+
},
|
|
32
|
+
small: {
|
|
33
|
+
height: '0.75rem',
|
|
34
|
+
width: '1.375rem'
|
|
35
|
+
},
|
|
36
|
+
medium: {
|
|
37
|
+
height: '1rem',
|
|
38
|
+
width: '1.625rem'
|
|
39
|
+
},
|
|
40
|
+
large: {
|
|
41
|
+
height: '1.5rem',
|
|
42
|
+
width: '2.125rem'
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/NumberInputEndAdornment/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAS,MAAM,0BAA0B,CAAA;AAE9D,eAAe,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAS,EAAE,EAAE,CAC1E,YAAY,CAAC;IACX,IAAI,EAAE;QACJ,UAAU,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE;QAC9C,WAAW,EAAE,uBAAuB;QAEpC,SAAS,EAAE;YACT,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;YAC/B,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;SACjC;QAED,OAAO,EAAE;YACP,SAAS,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE;SAC9C;QAED,cAAc,EAAE;YACd,SAAS,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;SAC5C;QAED,UAAU,EAAE;YACV,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI;YAC7B,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI;SAC/B;QAED,eAAe,EAAE;YACf,oBAAoB,EAAE,YAAY,CAAC,KAAK;SACzC;QAED,cAAc,EAAE;YACd,uBAAuB,EAAE,YAAY,CAAC,KAAK;SAC5C;QAED,UAAU,EAAE,OAAO,WAAW,CAAC,QAAQ,CAAC,KAAK,MAAM,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE;QAC/E,kBAAkB,EAAE,2BAA2B;KAChD;IAED,QAAQ,EAAE;QACR,OAAO,EAAE,IAAI;KACd;IAED,KAAK,EAAE;QACL,MAAM,EAAE,SAAS;QACjB,KAAK,EAAE,UAAU;KAClB;IAED,MAAM,EAAE;QACN,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,UAAU;KAClB;IAED,KAAK,EAAE;QACL,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,UAAU;KAClB;CACF,CAAC,CAAA"}
|
|
@@ -16,10 +16,20 @@ export declare type Props = BaseProps & TextLabelProps & HTMLAttributes<HTMLButt
|
|
|
16
16
|
};
|
|
17
17
|
export declare const OverviewBlock: OverridableComponent<Props>;
|
|
18
18
|
declare const _default: OverridableComponent<Props> & {
|
|
19
|
-
Group:
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
Group: {
|
|
20
|
+
(props: React.HTMLAttributes<HTMLDivElement> & {
|
|
21
|
+
align?: import("../OverviewBlockGroup/settings").Alignment | undefined;
|
|
22
|
+
blockWidth?: import("../OverviewBlockGroup/settings").BlockWidth | undefined;
|
|
23
|
+
}): JSX.Element;
|
|
24
|
+
displayName: string;
|
|
25
|
+
defaultProps: {
|
|
26
|
+
align: string;
|
|
27
|
+
blockWidth: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
Row: {
|
|
31
|
+
(props: React.HTMLAttributes<HTMLDivElement>): JSX.Element;
|
|
32
|
+
displayName: string;
|
|
33
|
+
};
|
|
24
34
|
};
|
|
25
35
|
export default _default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HTMLAttributes } from 'react';
|
|
2
2
|
import { Alignment, BlockWidth } from './settings';
|
|
3
3
|
declare type Props = HTMLAttributes<HTMLDivElement> & {
|
|
4
4
|
/** Value and label alignment for blocks. By default content is aligned to the left. */
|
|
@@ -6,5 +6,12 @@ declare type Props = HTMLAttributes<HTMLDivElement> & {
|
|
|
6
6
|
/** The block width variant */
|
|
7
7
|
blockWidth?: BlockWidth;
|
|
8
8
|
};
|
|
9
|
-
declare const OverviewBlockGroup:
|
|
9
|
+
declare const OverviewBlockGroup: {
|
|
10
|
+
(props: Props): JSX.Element;
|
|
11
|
+
displayName: string;
|
|
12
|
+
defaultProps: {
|
|
13
|
+
align: string;
|
|
14
|
+
blockWidth: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
10
17
|
export default OverviewBlockGroup;
|
|
@@ -22,7 +22,7 @@ const shouldInjectRow = (children) => {
|
|
|
22
22
|
.filter((el) => React.isValidElement(el))
|
|
23
23
|
.some(el => el.type.displayName === OverviewBlockRow.displayName);
|
|
24
24
|
};
|
|
25
|
-
const OverviewBlockGroup = props => {
|
|
25
|
+
const OverviewBlockGroup = (props) => {
|
|
26
26
|
const { children, align = 'default', blockWidth = 'regular' } = props, rest = __rest(props, ["children", "align", "blockWidth"]);
|
|
27
27
|
return (React.createElement("section", Object.assign({}, rest),
|
|
28
28
|
React.createElement(OverviewBlockGroupContext.Provider, { value: { align, blockWidth } }, shouldInjectRow(children) ? (React.createElement(OverviewBlockRow, null, children)) : (children))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverviewBlockGroup.js","sourceRoot":"","sources":["../../src/OverviewBlockGroup/OverviewBlockGroup.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"OverviewBlockGroup.js","sourceRoot":"","sources":["../../src/OverviewBlockGroup/OverviewBlockGroup.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAA2D,MAAM,OAAO,CAAA;AAG/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,gBAAgB,MAAM,qBAAqB,CAAA;AASlD,4DAA4D;AAC5D,2EAA2E;AAC3E,MAAM,eAAe,GAAG,CAAC,QAAoB,EAAE,EAAE;IAC/C,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,KAAK,CAAA;KACb;IAED,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;SACrC,MAAM,CAAC,CAAC,EAAE,EAAwD,EAAE,CACnE,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CACzB;SACA,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,KAAK,gBAAgB,CAAC,WAAW,CAAC,CAAA;AACrE,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,KAAY,EAAE,EAAE;IAC1C,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,SAAS,EAAE,UAAU,GAAG,SAAS,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAAxE,mCAAgE,CAAQ,CAAA;IAE9E,OAAO,CACL,iDAAa,IAAI;QACf,oBAAC,yBAAyB,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAC7D,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAC3B,oBAAC,gBAAgB,QAAE,QAAQ,CAAoB,CAChD,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CACkC,CAC7B,CACX,CAAA;AACH,CAAC,CAAA;AAED,kBAAkB,CAAC,WAAW,GAAG,oBAAoB,CAAA;AAErD,kBAAkB,CAAC,YAAY,GAAG;IAChC,KAAK,EAAE,SAAS;IAChB,UAAU,EAAE,SAAS;CACtB,CAAA;AAED,eAAe,kBAAkB,CAAA"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HTMLAttributes } from 'react';
|
|
2
2
|
declare type Props = HTMLAttributes<HTMLDivElement>;
|
|
3
|
-
declare const OverviewBlockRow:
|
|
3
|
+
declare const OverviewBlockRow: {
|
|
4
|
+
(props: Props): JSX.Element;
|
|
5
|
+
displayName: string;
|
|
6
|
+
};
|
|
4
7
|
export default OverviewBlockRow;
|
|
@@ -16,7 +16,7 @@ import styles from './styles';
|
|
|
16
16
|
const useStyles = makeStyles(styles, {
|
|
17
17
|
name: 'PicassoOverviewBlockRow'
|
|
18
18
|
});
|
|
19
|
-
const OverviewBlockRow = props => {
|
|
19
|
+
const OverviewBlockRow = (props) => {
|
|
20
20
|
const { className } = props, rest = __rest(props, ["className"]);
|
|
21
21
|
const classes = useStyles();
|
|
22
22
|
return React.createElement("div", Object.assign({}, rest, { className: cx(classes.root, className) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverviewBlockRow.js","sourceRoot":"","sources":["../../src/OverviewBlockRow/OverviewBlockRow.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"OverviewBlockRow.js","sourceRoot":"","sources":["../../src/OverviewBlockRow/OverviewBlockRow.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAyB,MAAM,OAAO,CAAA;AAC7C,OAAO,EAAS,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,MAAM,MAAM,UAAU,CAAA;AAI7B,MAAM,SAAS,GAAG,UAAU,CAAQ,MAAM,EAAE;IAC1C,IAAI,EAAE,yBAAyB;CAChC,CAAC,CAAA;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAE,EAAE;IACxC,MAAM,EAAE,SAAS,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAA9B,aAAsB,CAAQ,CAAA;IACpC,MAAM,OAAO,GAAG,SAAS,EAAE,CAAA;IAE3B,OAAO,6CAAS,IAAI,IAAE,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAA;AAClE,CAAC,CAAA;AAED,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAA;AAEjD,eAAe,gBAAgB,CAAA"}
|
package/PageHead/PageHead.d.ts
CHANGED
|
@@ -8,9 +8,15 @@ export interface Props extends BaseProps {
|
|
|
8
8
|
}
|
|
9
9
|
export declare const PageHead: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
|
|
10
10
|
declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>> & {
|
|
11
|
-
Title:
|
|
12
|
-
Tabs:
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
Title: ({ titleCase, children }: TextLabelProps) => JSX.Element;
|
|
12
|
+
Tabs: ({ children }: {
|
|
13
|
+
children: React.ReactNode;
|
|
14
|
+
}) => JSX.Element;
|
|
15
|
+
Main: (props: {
|
|
16
|
+
children?: React.ReactNode;
|
|
17
|
+
}) => JSX.Element;
|
|
18
|
+
Actions: ({ children }: {
|
|
19
|
+
children: React.ReactNode;
|
|
20
|
+
}) => JSX.Element;
|
|
15
21
|
};
|
|
16
22
|
export default _default;
|
package/PageHead/PageHead.js
CHANGED
|
@@ -10,13 +10,19 @@ const useStyles = makeStyles(styles, {
|
|
|
10
10
|
const useMainStyles = makeStyles(styles, {
|
|
11
11
|
name: 'PicassoPageHeadMain'
|
|
12
12
|
});
|
|
13
|
-
const Title = ({ titleCase, children }) =>
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
const Title = ({ titleCase, children }) => {
|
|
14
|
+
return (React.createElement(Typography, { variant: 'heading', size: 'large', titleCase: titleCase }, children));
|
|
15
|
+
};
|
|
16
|
+
const Tabs = ({ children }) => {
|
|
17
|
+
return React.createElement(Container, null, children);
|
|
18
|
+
};
|
|
19
|
+
const Main = (props) => {
|
|
16
20
|
const classes = useMainStyles(props);
|
|
17
21
|
return (React.createElement(Container, { flex: true, justifyContent: 'space-between', alignItems: 'center', className: classes.main }, props.children));
|
|
18
22
|
};
|
|
19
|
-
const Actions = ({ children }) =>
|
|
23
|
+
const Actions = ({ children }) => {
|
|
24
|
+
return (React.createElement(Container, { flex: true, alignItems: 'center' }, children));
|
|
25
|
+
};
|
|
20
26
|
export const PageHead = forwardRef(function PageHead(props, ref) {
|
|
21
27
|
const { children } = props;
|
|
22
28
|
const classes = useStyles();
|
package/PageHead/PageHead.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageHead.js","sourceRoot":"","sources":["../../src/PageHead/PageHead.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"PageHead.js","sourceRoot":"","sources":["../../src/PageHead/PageHead.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAa,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B,OAAO,SAAS,MAAM,cAAc,CAAA;AACpC,OAAO,UAAU,MAAM,eAAe,CAAA;AACtC,OAAO,MAAM,MAAM,UAAU,CAAA;AAS7B,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE;IACnC,IAAI,EAAE,iBAAiB;CACxB,CAAC,CAAA;AAEF,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE;IACvC,IAAI,EAAE,qBAAqB;CAC5B,CAAC,CAAA;AAEF,MAAM,KAAK,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAkB,EAAE,EAAE;IACxD,OAAO,CACL,oBAAC,UAAU,IAAC,OAAO,EAAC,SAAS,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAE,SAAS,IAC5D,QAAQ,CACE,CACd,CAAA;AACH,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAA2B,EAAE,EAAE;IACrD,OAAO,oBAAC,SAAS,QAAE,QAAQ,CAAa,CAAA;AAC1C,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,KAA+B,EAAE,EAAE;IAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAEpC,OAAO,CACL,oBAAC,SAAS,IACR,IAAI,QACJ,cAAc,EAAC,eAAe,EAC9B,UAAU,EAAC,QAAQ,EACnB,SAAS,EAAE,OAAO,CAAC,IAAI,IAEtB,KAAK,CAAC,QAAQ,CACL,CACb,CAAA;AACH,CAAC,CAAA;AAED,MAAM,OAAO,GAAG,CAAC,EAAE,QAAQ,EAA2B,EAAE,EAAE;IACxD,OAAO,CACL,oBAAC,SAAS,IAAC,IAAI,QAAC,UAAU,EAAC,QAAQ,IAChC,QAAQ,CACC,CACb,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAwB,SAAS,QAAQ,CACzE,KAAK,EACL,GAAG;IAEH,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAC1B,MAAM,OAAO,GAAG,SAAS,EAAE,CAAA;IAE3B,OAAO,CACL,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;YAC1B,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,YAAY;SAC3C,CAAC,IAED,QAAQ,CACC,CACb,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,YAAY,GAAG;IACtB,YAAY,EAAE,KAAK;CACpB,CAAA;AAED,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAA;AAEjC,eAAe,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;IACrC,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,OAAO;CACR,CAAC,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React, { ChangeEvent } from 'react';
|
|
2
|
+
import { BaseProps, OmitInternalProps } from '@toptal/picasso-shared';
|
|
3
|
+
import { Props as OutlinedInputProps } from '../OutlinedInput';
|
|
4
|
+
import { InputProps } from '../Input';
|
|
5
|
+
export interface Props extends Omit<OmitInternalProps<OutlinedInputProps>, 'defaultValue' | 'type' | 'rows' | 'rowsMax' | 'multiline' | 'enableReset' | 'onResetClick'>, BaseProps {
|
|
6
|
+
/** Value of the `input` element. */
|
|
7
|
+
value?: string;
|
|
8
|
+
/** Indicates whether component is in error state */
|
|
9
|
+
error?: boolean;
|
|
10
|
+
/** Indicates whether component is in disabled state */
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
/** Callback invoked when `PasswordInput` changes its state. */
|
|
13
|
+
onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
14
|
+
testIds?: InputProps['testIds'] & {
|
|
15
|
+
input?: string;
|
|
16
|
+
toggle?: string;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export declare const PasswordInput: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLInputElement>>;
|
|
20
|
+
export default PasswordInput;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import React, { forwardRef, useState, useCallback } from 'react';
|
|
13
|
+
import { makeStyles } from '@material-ui/core/styles';
|
|
14
|
+
import cx from 'classnames';
|
|
15
|
+
import OutlinedInput from '../OutlinedInput';
|
|
16
|
+
import InputAdornment from '../InputAdornment';
|
|
17
|
+
import styles from './styles';
|
|
18
|
+
import SvgEye16 from '../Icon/Eye16';
|
|
19
|
+
import SvgEyeHidden16 from '../Icon/EyeHidden16';
|
|
20
|
+
import Button from '../Button';
|
|
21
|
+
const useStyles = makeStyles(styles, {
|
|
22
|
+
name: 'PicassoPasswordInput'
|
|
23
|
+
});
|
|
24
|
+
export const PasswordInput = forwardRef(function PasswordInput(props, ref) {
|
|
25
|
+
var _a, _b;
|
|
26
|
+
const { value, onChange, disabled, error, width, style, className } = props, rest = __rest(props, ["value", "onChange", "disabled", "error", "width", "style", "className"]);
|
|
27
|
+
const [showPassword, setShowPassword] = useState(false);
|
|
28
|
+
const classes = useStyles();
|
|
29
|
+
const handleToggleVisibilityClick = useCallback(() => {
|
|
30
|
+
setShowPassword(previousState => !previousState);
|
|
31
|
+
}, []);
|
|
32
|
+
const endAdornment = (React.createElement(InputAdornment, { position: 'end' },
|
|
33
|
+
React.createElement(Button.Circular, { className: classes.toggle, variant: 'flat', icon: showPassword ? React.createElement(SvgEyeHidden16, null) : React.createElement(SvgEye16, null), onClick: handleToggleVisibilityClick, "data-testid": (_a = rest.testIds) === null || _a === void 0 ? void 0 : _a.toggle, disabled: disabled })));
|
|
34
|
+
return (React.createElement(OutlinedInput, { style: style, className: cx(classes.root, className), classes: {
|
|
35
|
+
input: classes.input
|
|
36
|
+
}, inputProps: Object.assign(Object.assign({}, rest), { 'data-testid': (_b = rest.testIds) === null || _b === void 0 ? void 0 : _b.input }), width: width, error: error, inputRef: ref, type: showPassword ? 'text' : 'password', value: value, disabled: disabled, onChange: onChange, endAdornment: endAdornment }));
|
|
37
|
+
});
|
|
38
|
+
PasswordInput.defaultProps = {
|
|
39
|
+
onChange: () => { },
|
|
40
|
+
value: ''
|
|
41
|
+
};
|
|
42
|
+
PasswordInput.displayName = 'PasswordInput';
|
|
43
|
+
export default PasswordInput;
|
|
44
|
+
//# sourceMappingURL=PasswordInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PasswordInput.js","sourceRoot":"","sources":["../../src/PasswordInput/PasswordInput.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAe,WAAW,EAAE,MAAM,OAAO,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAS,MAAM,0BAA0B,CAAA;AAE5D,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,OAAO,aAA8C,MAAM,kBAAkB,CAAA;AAC7E,OAAO,cAAc,MAAM,mBAAmB,CAAA;AAC9C,OAAO,MAAM,MAAM,UAAU,CAAA;AAC7B,OAAO,QAAQ,MAAM,eAAe,CAAA;AACpC,OAAO,cAAc,MAAM,qBAAqB,CAAA;AAChD,OAAO,MAAM,MAAM,WAAW,CAAA;AA6B9B,MAAM,SAAS,GAAG,UAAU,CAAQ,MAAM,EAAE;IAC1C,IAAI,EAAE,sBAAsB;CAC7B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,SAAS,aAAa,CAAC,KAAK,EAAE,GAAG;;IAC/B,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,KAAK,EACL,KAAK,EACL,SAAS,KAEP,KAAK,EADJ,IAAI,UACL,KAAK,EATH,yEASL,CAAQ,CAAA;IAET,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvD,MAAM,OAAO,GAAG,SAAS,EAAE,CAAA;IAE3B,MAAM,2BAA2B,GAAG,WAAW,CAAC,GAAG,EAAE;QACnD,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,CAAA;IAClD,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,YAAY,GAAG,CACnB,oBAAC,cAAc,IAAC,QAAQ,EAAC,KAAK;QAC5B,oBAAC,MAAM,CAAC,QAAQ,IACd,SAAS,EAAE,OAAO,CAAC,MAAM,EACzB,OAAO,EAAC,MAAM,EACd,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAG,CAAC,CAAC,CAAC,oBAAC,QAAQ,OAAG,EACtD,OAAO,EAAE,2BAA2B,iBACvB,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,EACjC,QAAQ,EAAE,QAAQ,GAClB,CACa,CAClB,CAAA;IAED,OAAO,CACL,oBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,EACtC,OAAO,EAAE;YACP,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,EACD,UAAU,kCACL,IAAI,KACP,aAAa,EAAE,MAAA,IAAI,CAAC,OAAO,0CAAE,KAAK,KAEpC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,GAAG,EACb,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EACxC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,GAC1B,CACH,CAAA;AACH,CAAC,CACF,CAAA;AAED,aAAa,CAAC,YAAY,GAAG;IAC3B,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,KAAK,EAAE,EAAE;CACV,CAAA;AAED,aAAa,CAAC,WAAW,GAAG,eAAe,CAAA;AAE3C,eAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/PasswordInput/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,cAAc,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { createStyles } from '@material-ui/core/styles';
|
|
2
|
+
export default ({ spacing }) => createStyles({
|
|
3
|
+
root: {
|
|
4
|
+
paddingRight: 0,
|
|
5
|
+
cursor: 'text'
|
|
6
|
+
},
|
|
7
|
+
input: {
|
|
8
|
+
'&::-webkit-outer-spin-button, &::-webkit-inner-spin-button': {
|
|
9
|
+
'-webkit-appearance': 'none',
|
|
10
|
+
appearance: 'none',
|
|
11
|
+
margin: 0
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
toggle: {
|
|
15
|
+
marginRight: spacing(1)
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/PasswordInput/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAS,MAAM,0BAA0B,CAAA;AAE9D,eAAe,CAAC,EAAE,OAAO,EAAS,EAAE,EAAE,CACpC,YAAY,CAAC;IACX,IAAI,EAAE;QACJ,YAAY,EAAE,CAAC;QACf,MAAM,EAAE,MAAM;KACf;IACD,KAAK,EAAE;QACL,4DAA4D,EAAE;YAC5D,oBAAoB,EAAE,MAAM;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,CAAC;SACV;KACF;IAED,MAAM,EAAE;QACN,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;KACxB;CACF,CAAC,CAAA"}
|
package/Radio/Radio.d.ts
CHANGED
|
@@ -14,6 +14,11 @@ export interface Props extends StandardProps, TextLabelProps, Omit<ButtonOrAncho
|
|
|
14
14
|
}
|
|
15
15
|
export declare const Radio: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLButtonElement | HTMLLabelElement>>;
|
|
16
16
|
declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLButtonElement | HTMLLabelElement>> & {
|
|
17
|
-
Group:
|
|
17
|
+
Group: {
|
|
18
|
+
(props: import("../RadioGroup/RadioGroup").Props): JSX.Element;
|
|
19
|
+
defaultProps: {
|
|
20
|
+
horizontal: boolean;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
18
23
|
};
|
|
19
24
|
export default _default;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { FunctionComponent } from 'react';
|
|
2
1
|
import { GridSize } from '@material-ui/core/Grid';
|
|
3
2
|
import { RadioGroupProps } from '@material-ui/core/RadioGroup';
|
|
4
3
|
import { GridProps } from '../Grid';
|
|
@@ -15,5 +14,10 @@ export interface Props extends RadioGroupProps {
|
|
|
15
14
|
/** Defines the number of grids the component is going to use. It's applied for the large breakpoint and wider screens */
|
|
16
15
|
large?: boolean | GridSize;
|
|
17
16
|
}
|
|
18
|
-
declare const RadioGroup:
|
|
17
|
+
declare const RadioGroup: {
|
|
18
|
+
(props: Props): JSX.Element;
|
|
19
|
+
defaultProps: {
|
|
20
|
+
horizontal: boolean;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
19
23
|
export default RadioGroup;
|
package/RadioGroup/RadioGroup.js
CHANGED
|
@@ -21,7 +21,7 @@ const useStyles = makeStyles(styles, {
|
|
|
21
21
|
name: 'PicassoRadioGroup',
|
|
22
22
|
index: -1
|
|
23
23
|
});
|
|
24
|
-
const RadioGroup = props => {
|
|
24
|
+
const RadioGroup = (props) => {
|
|
25
25
|
const { horizontal, spacing, small, medium, large } = props, rest = __rest(props, ["horizontal", "spacing", "small", "medium", "large"]);
|
|
26
26
|
const _a = useStyles(), { grid: gridClass, gridItem: gridItemClass } = _a, classes = __rest(_a, ["grid", "gridItem"]);
|
|
27
27
|
const { spacing: themeSpacing } = useTheme();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.js","sourceRoot":"","sources":["../../src/RadioGroup/RadioGroup.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"RadioGroup.js","sourceRoot":"","sources":["../../src/RadioGroup/RadioGroup.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,aAAkC,MAAM,8BAA8B,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAS,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEtE,OAAO,IAAmB,MAAM,SAAS,CAAA;AACzC,OAAO,MAAM,MAAM,UAAU,CAAA;AAiB7B,mEAAmE;AACnE,8EAA8E;AAC9E,uEAAuE;AACvE,MAAM,SAAS,GAAG,UAAU,CAAQ,MAAM,EAAE;IAC1C,IAAI,EAAE,mBAAmB;IACzB,KAAK,EAAE,CAAC,CAAC;CACV,CAAC,CAAA;AAEF,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,EAAE;IAClC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAA9D,qDAAsD,CAAQ,CAAA;IACpE,MAAM,KAA2D,SAAS,EAAE,EAAtE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,OAA4B,EAAvB,OAAO,cAAtD,oBAAwD,CAAc,CAAA;IAC5E,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,CAAA;IAE5C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC/C,MAAM,WAAW,GAAG,CAAA,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,UAAU,EAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAE/D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAEtD,OAAO,CACL,oBAAC,aAAa,oBAAK,IAAI,IAAE,OAAO,EAAE,OAAO;QACvC,oBAAC,IAAI,IACH,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,WAA0B,EACnC,SAAS,EAAE,SAAS,IAEnB,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAC9B,oBAAC,IAAI,CAAC,IAAI,IACR,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,EAClB,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,IAEX,KAAK,CACI,CACb,CAAC,CACG,CACO,CACjB,CAAA;AACH,CAAC,CAAA;AAED,UAAU,CAAC,YAAY,GAAG;IACxB,UAAU,EAAE,KAAK;CAClB,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import React, {
|
|
1
|
+
import React, { ReactNode, RefObject } from 'react';
|
|
2
2
|
import { BaseProps } from '@toptal/picasso-shared';
|
|
3
3
|
export interface Props extends BaseProps {
|
|
4
|
+
children: React.ReactNode;
|
|
4
5
|
selectedIndex?: number | null;
|
|
5
6
|
onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
|
|
6
7
|
fixedHeader?: ReactNode;
|
|
@@ -8,5 +9,11 @@ export interface Props extends BaseProps {
|
|
|
8
9
|
role?: 'listbox' | 'menu';
|
|
9
10
|
}
|
|
10
11
|
export declare const scrollToSelection: (menuRef: RefObject<HTMLDivElement>, selectedIndex?: number | null | undefined) => void;
|
|
11
|
-
declare const ScrollMenu:
|
|
12
|
+
declare const ScrollMenu: {
|
|
13
|
+
(props: Props): JSX.Element;
|
|
14
|
+
defaultProps: {
|
|
15
|
+
role: string;
|
|
16
|
+
};
|
|
17
|
+
displayName: string;
|
|
18
|
+
};
|
|
12
19
|
export default ScrollMenu;
|
package/ScrollMenu/ScrollMenu.js
CHANGED
|
@@ -38,7 +38,7 @@ export const scrollToSelection = (menuRef, selectedIndex) => {
|
|
|
38
38
|
menuNode.scrollTop += selectedRect.bottom - menuRect.bottom;
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
|
-
const ScrollMenu = props => {
|
|
41
|
+
const ScrollMenu = (props) => {
|
|
42
42
|
const { selectedIndex, onBlur, children, style, fixedHeader, fixedFooter, className, role } = props, rest = __rest(props, ["selectedIndex", "onBlur", "children", "style", "fixedHeader", "fixedFooter", "className", "role"]);
|
|
43
43
|
const classes = useStyles();
|
|
44
44
|
const menuRef = useRef(null);
|