@toptal/picasso-number-input 4.2.2 → 4.2.3-alpha-1757603192867.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/package.json +15 -14
- package/dist-package/src/NumberInput/NumberInput.d.ts +0 -28
- package/dist-package/src/NumberInput/NumberInput.d.ts.map +0 -1
- package/dist-package/src/NumberInput/NumberInput.js +0 -51
- package/dist-package/src/NumberInput/NumberInput.js.map +0 -1
- package/dist-package/src/NumberInput/index.d.ts +0 -6
- package/dist-package/src/NumberInput/index.d.ts.map +0 -1
- package/dist-package/src/NumberInput/index.js +0 -3
- package/dist-package/src/NumberInput/index.js.map +0 -1
- package/dist-package/src/NumberInputEndAdornment/NumberInputEndAdornment.d.ts +0 -33
- package/dist-package/src/NumberInputEndAdornment/NumberInputEndAdornment.d.ts.map +0 -1
- package/dist-package/src/NumberInputEndAdornment/NumberInputEndAdornment.js +0 -110
- package/dist-package/src/NumberInputEndAdornment/NumberInputEndAdornment.js.map +0 -1
- package/dist-package/src/NumberInputEndAdornment/index.d.ts +0 -3
- package/dist-package/src/NumberInputEndAdornment/index.d.ts.map +0 -1
- package/dist-package/src/NumberInputEndAdornment/index.js +0 -2
- package/dist-package/src/NumberInputEndAdornment/index.js.map +0 -1
- package/dist-package/src/index.d.ts +0 -3
- package/dist-package/src/index.d.ts.map +0 -1
- package/dist-package/src/index.js +0 -3
- package/dist-package/src/index.js.map +0 -1
package/package.json
CHANGED
@@ -1,15 +1,16 @@
|
|
1
1
|
{
|
2
2
|
"name": "@toptal/picasso-number-input",
|
3
|
-
"version": "4.2.
|
3
|
+
"version": "4.2.3-alpha-1757603192867.0",
|
4
4
|
"description": "Toptal UI components library - NumberInput",
|
5
5
|
"publishConfig": {
|
6
|
-
"access": "public"
|
6
|
+
"access": "public",
|
7
|
+
"provenance": true
|
7
8
|
},
|
8
9
|
"main": "./dist-package/src/index.js",
|
9
10
|
"module": "./dist-package/src/index.js",
|
10
11
|
"scripts": {
|
11
12
|
"build:package": "tsc -b tsconfig.json",
|
12
|
-
"prepublishOnly": "
|
13
|
+
"prepublishOnly": "echo 0"
|
13
14
|
},
|
14
15
|
"repository": {
|
15
16
|
"type": "git",
|
@@ -22,29 +23,29 @@
|
|
22
23
|
},
|
23
24
|
"homepage": "https://github.com/toptal/picasso/tree/master/packages/picasso#readme",
|
24
25
|
"dependencies": {
|
25
|
-
"@toptal/picasso-container": "3.1.
|
26
|
-
"@toptal/picasso-form": "6.3.
|
27
|
-
"@toptal/picasso-icons": "1.12.
|
28
|
-
"@toptal/picasso-input-adornment": "3.0.
|
29
|
-
"@toptal/picasso-outlined-input": "4.1.
|
30
|
-
"@toptal/picasso-shared": "15.0.0",
|
31
|
-
"@toptal/picasso-utils": "3.1.0"
|
26
|
+
"@toptal/picasso-container": "3.1.3-alpha-1757603192867.0",
|
27
|
+
"@toptal/picasso-form": "6.3.3-alpha-1757603192867.0",
|
28
|
+
"@toptal/picasso-icons": "1.12.2-alpha-1757603192867.0",
|
29
|
+
"@toptal/picasso-input-adornment": "3.0.11-alpha-1757603192867.0",
|
30
|
+
"@toptal/picasso-outlined-input": "4.1.3-alpha-1757603192867.0",
|
31
|
+
"@toptal/picasso-shared": "15.0.1-alpha-1757603192867.0",
|
32
|
+
"@toptal/picasso-utils": "3.1.1-alpha-1757603192867.0"
|
32
33
|
},
|
33
34
|
"sideEffects": [
|
34
35
|
"**/styles.ts",
|
35
36
|
"**/styles.js"
|
36
37
|
],
|
37
38
|
"peerDependencies": {
|
38
|
-
"@toptal/picasso-tailwind-merge": "
|
39
|
-
"@toptal/picasso-tailwind": "
|
39
|
+
"@toptal/picasso-tailwind-merge": "2.0.4-alpha-1757603192867.0",
|
40
|
+
"@toptal/picasso-tailwind": "3.0.1-alpha-1757603192867.0",
|
40
41
|
"react": ">=16.12.0 < 19.0.0"
|
41
42
|
},
|
42
43
|
"exports": {
|
43
44
|
".": "./dist-package/src/index.js"
|
44
45
|
},
|
45
46
|
"devDependencies": {
|
46
|
-
"@toptal/picasso-tailwind-merge": "2.0.
|
47
|
-
"@toptal/picasso-test-utils": "1.1.
|
47
|
+
"@toptal/picasso-tailwind-merge": "2.0.4-alpha-1757603192867.0",
|
48
|
+
"@toptal/picasso-test-utils": "1.1.2-alpha-1757603192867.0"
|
48
49
|
},
|
49
50
|
"files": [
|
50
51
|
"dist-package/**",
|
@@ -1,28 +0,0 @@
|
|
1
|
-
import type { ReactNode } from 'react';
|
2
|
-
import React from 'react';
|
3
|
-
import type { BaseProps, OmitInternalProps } from '@toptal/picasso-shared';
|
4
|
-
import type { Props as OutlinedInputProps } from '@toptal/picasso-outlined-input';
|
5
|
-
export interface Props extends Omit<OmitInternalProps<OutlinedInputProps>, 'defaultValue' | 'type' | 'multiline' | 'rows'>, BaseProps {
|
6
|
-
/** Value of the `input` element. */
|
7
|
-
value?: string | number;
|
8
|
-
/** Minimum value for the `input` element */
|
9
|
-
min?: number | string;
|
10
|
-
/** Maximum value for the `input` element */
|
11
|
-
max?: number | string;
|
12
|
-
/** Next value of the `input` element will be calculated based on step */
|
13
|
-
step?: number | string;
|
14
|
-
/** Enable value change on mouse wheel */
|
15
|
-
enableChangeOnMouseWheel?: boolean;
|
16
|
-
/** Should controls be hidden or not */
|
17
|
-
hideControls?: boolean;
|
18
|
-
/** Specify icon which should be rendered inside NumberInput */
|
19
|
-
icon?: ReactNode;
|
20
|
-
/** Indicates whether component is in disabled state */
|
21
|
-
disabled?: boolean;
|
22
|
-
/** Callback invoked when `NumberInput` changes its state. */
|
23
|
-
onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
|
24
|
-
highlight?: 'autofill';
|
25
|
-
}
|
26
|
-
export declare const NumberInput: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLInputElement>>;
|
27
|
-
export default NumberInput;
|
28
|
-
//# sourceMappingURL=NumberInput.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"NumberInput.d.ts","sourceRoot":"","sources":["../../../src/NumberInput/NumberInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAA6B,MAAM,OAAO,CAAA;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAI1E,OAAO,KAAK,EAAE,KAAK,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAKjF,MAAM,WAAW,KACf,SAAQ,IAAI,CACR,iBAAiB,CAAC,kBAAkB,CAAC,EACrC,cAAc,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAC/C,EACD,SAAS;IACX,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACrB,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACrB,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,yCAAyC;IACzC,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IAC/D,SAAS,CAAC,EAAE,UAAU,CAAA;CACvB;AAED,eAAO,MAAM,WAAW,gFA4FvB,CAAA;AAeD,eAAe,WAAW,CAAA"}
|
@@ -1,51 +0,0 @@
|
|
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, useRef } from 'react';
|
13
|
-
import { OutlinedInput } from '@toptal/picasso-outlined-input';
|
14
|
-
import { InputAdornment } from '@toptal/picasso-input-adornment';
|
15
|
-
import { useCombinedRefs } from '@toptal/picasso-utils';
|
16
|
-
import { twJoin } from '@toptal/picasso-tailwind-merge';
|
17
|
-
import { NumberInputEndAdornment } from '../NumberInputEndAdornment';
|
18
|
-
export const NumberInput = forwardRef(function NumberInput(props, ref) {
|
19
|
-
const { step = 1, min = -Infinity, max = Infinity, hideControls, enableChangeOnMouseWheel, value, onChange, disabled, status, onResetClick, enableReset, endAdornment: customEndAdornment = null, width, icon, size, testIds, highlight } = props, rest = __rest(props, ["step", "min", "max", "hideControls", "enableChangeOnMouseWheel", "value", "onChange", "disabled", "status", "onResetClick", "enableReset", "endAdornment", "width", "icon", "size", "testIds", "highlight"]);
|
20
|
-
const inputRef = useCombinedRefs(ref, useRef(null));
|
21
|
-
const defaultEndAdornment = (React.createElement(NumberInputEndAdornment, { step: step, min: min, max: max, value: value, disabled: disabled, size: size, inputRef: inputRef }));
|
22
|
-
const endAdornment = hideControls ? (customEndAdornment) : (React.createElement(React.Fragment, null,
|
23
|
-
customEndAdornment,
|
24
|
-
defaultEndAdornment));
|
25
|
-
const startAdornment = icon ? (React.createElement(InputAdornment, { position: 'start', disablePointerEvents: true }, icon)) : null;
|
26
|
-
return (React.createElement(OutlinedInput, { classes: {
|
27
|
-
root: 'pr-0 cursor-text',
|
28
|
-
input: twJoin(
|
29
|
-
// required to remove arrows in WebKit based browsers
|
30
|
-
'[&::-webkit-outer-spin-button]:appearance-none [&::-webkit-outer-spin-button]:m-0 ', '[&::-webkit-inner-spin-button]:appearance-none [&::-webkit-inner-spin-button]:m-0 ',
|
31
|
-
// required to remove arrows in Firefox
|
32
|
-
'[-moz-appearance:textfield]'),
|
33
|
-
}, highlight: highlight, inputProps: Object.assign(Object.assign({}, rest), { step,
|
34
|
-
// TODO: [FX-6102] Add test for wheel event
|
35
|
-
onWheel: enableChangeOnMouseWheel
|
36
|
-
? undefined
|
37
|
-
: event => event.currentTarget.blur() }), width: width, onResetClick: onResetClick, enableReset: enableReset, status: status, inputRef: inputRef, type: 'number', value: value, disabled: disabled, onChange: onChange, endAdornment: endAdornment, startAdornment: startAdornment, size: size, testIds: testIds }));
|
38
|
-
});
|
39
|
-
NumberInput.defaultProps = {
|
40
|
-
onChange: () => { },
|
41
|
-
value: 0,
|
42
|
-
step: 1,
|
43
|
-
min: -Infinity,
|
44
|
-
max: Infinity,
|
45
|
-
hideControls: false,
|
46
|
-
size: 'medium',
|
47
|
-
status: 'default',
|
48
|
-
};
|
49
|
-
NumberInput.displayName = 'NumberInput';
|
50
|
-
export default NumberInput;
|
51
|
-
//# sourceMappingURL=NumberInput.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"NumberInput.js","sourceRoot":"","sources":["../../../src/NumberInput/NumberInput.tsx"],"names":[],"mappings":"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"}
|
@@ -1,6 +0,0 @@
|
|
1
|
-
import type { OmitInternalProps } from '@toptal/picasso-shared';
|
2
|
-
import type { Props } from './NumberInput';
|
3
|
-
export { default as NumberInput } from './NumberInput';
|
4
|
-
export declare type NumberInputProps = OmitInternalProps<Props>;
|
5
|
-
export * from './NumberInput';
|
6
|
-
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/NumberInput/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAE1C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,oBAAY,gBAAgB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;AACvD,cAAc,eAAe,CAAA"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/NumberInput/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AAEtD,cAAc,eAAe,CAAA"}
|
@@ -1,33 +0,0 @@
|
|
1
|
-
import type { RefObject } from 'react';
|
2
|
-
import type { BaseProps, SizeType } from '@toptal/picasso-shared';
|
3
|
-
export declare type Size = SizeType<'small' | 'medium' | 'large'>;
|
4
|
-
export interface Props extends BaseProps {
|
5
|
-
/** Value of the `input` element. */
|
6
|
-
value?: string | number;
|
7
|
-
/** Minimum value for the `input` element */
|
8
|
-
min?: number | string;
|
9
|
-
/** Maximum value for the `input` element */
|
10
|
-
max?: number | string;
|
11
|
-
/** Next value of the `input` element will be calculated based on step */
|
12
|
-
step?: number | string;
|
13
|
-
/** Indicates whether component is in disabled state */
|
14
|
-
disabled?: boolean;
|
15
|
-
/** Component size */
|
16
|
-
size?: Size;
|
17
|
-
/** Ref of the input element */
|
18
|
-
inputRef: RefObject<HTMLInputElement>;
|
19
|
-
}
|
20
|
-
export declare const NumberInputEndAdornment: {
|
21
|
-
(props: Props): JSX.Element;
|
22
|
-
defaultProps: {
|
23
|
-
min: number;
|
24
|
-
max: number;
|
25
|
-
value: number;
|
26
|
-
step: number;
|
27
|
-
disabled: boolean;
|
28
|
-
size: string;
|
29
|
-
};
|
30
|
-
displayName: string;
|
31
|
-
};
|
32
|
-
export default NumberInputEndAdornment;
|
33
|
-
//# sourceMappingURL=NumberInputEndAdornment.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"NumberInputEndAdornment.d.ts","sourceRoot":"","sources":["../../../src/NumberInputEndAdornment/NumberInputEndAdornment.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,SAAS,EAAE,MAAM,OAAO,CAAA;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAYjE,oBAAY,IAAI,GAAG,QAAQ,CAAC,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAA;AAEzD,MAAM,WAAW,KAAM,SAAQ,SAAS;IACtC,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACrB,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACrB,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,qBAAqB;IACrB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,+BAA+B;IAC/B,QAAQ,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAA;CACtC;AAmBD,eAAO,MAAM,uBAAuB;YAAW,KAAK;;;;;;;;;;CAgInD,CAAA;AAaD,eAAe,uBAAuB,CAAA"}
|
@@ -1,110 +0,0 @@
|
|
1
|
-
import React from 'react';
|
2
|
-
import { isBrowser } from '@toptal/picasso-shared';
|
3
|
-
import { InputAdornment } from '@toptal/picasso-input-adornment';
|
4
|
-
import { Container } from '@toptal/picasso-container';
|
5
|
-
import { ArrowDownMinor16, ArrowUpMinor16, ArrowDownMinor24, ArrowUpMinor24, } from '@toptal/picasso-icons';
|
6
|
-
import { twJoin } from '@toptal/picasso-tailwind-merge';
|
7
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
8
|
-
const nativeInputValueSetter = isBrowser()
|
9
|
-
? Object.getOwnPropertyDescriptor(
|
10
|
-
// eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope
|
11
|
-
window.HTMLInputElement.prototype, 'value').set
|
12
|
-
: undefined;
|
13
|
-
const classBySize = {
|
14
|
-
small: 'h-3 w-[1.375rem]',
|
15
|
-
medium: 'h-4 w-[1.625rem]',
|
16
|
-
large: 'h-6 w-[2.125rem]',
|
17
|
-
};
|
18
|
-
export const NumberInputEndAdornment = (props) => {
|
19
|
-
const { step = 1, min = -Infinity, max = Infinity, value, disabled, size = 'medium', inputRef, } = props;
|
20
|
-
const normalizedStep = Number(step);
|
21
|
-
const normalizedValue = Number(value);
|
22
|
-
const normalizedMin = Number(min);
|
23
|
-
const normalizedMax = Number(max);
|
24
|
-
const fireEvent = (nextValue) => {
|
25
|
-
if (!nativeInputValueSetter) {
|
26
|
-
return;
|
27
|
-
}
|
28
|
-
const input = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current;
|
29
|
-
nativeInputValueSetter.call(input, nextValue);
|
30
|
-
const event = new Event('input', {
|
31
|
-
bubbles: true,
|
32
|
-
cancelable: true,
|
33
|
-
});
|
34
|
-
if (input) {
|
35
|
-
input.dispatchEvent(event);
|
36
|
-
}
|
37
|
-
};
|
38
|
-
const handleUpClick = e => {
|
39
|
-
e.preventDefault();
|
40
|
-
if (typeof value === 'undefined') {
|
41
|
-
return;
|
42
|
-
}
|
43
|
-
let nextValue = normalizedValue + normalizedStep;
|
44
|
-
if (nextValue <= Number(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 = e => {
|
56
|
-
e.preventDefault();
|
57
|
-
if (typeof value === 'undefined') {
|
58
|
-
return;
|
59
|
-
}
|
60
|
-
let nextValue = normalizedValue - normalizedStep;
|
61
|
-
if (nextValue >= Number(min)) {
|
62
|
-
if (normalizedValue > normalizedMax - normalizedStep) {
|
63
|
-
nextValue = normalizedMax - normalizedStep;
|
64
|
-
}
|
65
|
-
fireEvent(nextValue);
|
66
|
-
}
|
67
|
-
else if (normalizedValue !== normalizedMin) {
|
68
|
-
nextValue = normalizedMin;
|
69
|
-
fireEvent(nextValue);
|
70
|
-
}
|
71
|
-
};
|
72
|
-
const rootClassName = twJoin(`flex relative items-center justify-center align-middle
|
73
|
-
|
74
|
-
p-0 bottom-0 cursor-pointer
|
75
|
-
|
76
|
-
text-graphite-700 decoration-graphite-700 bg-inherit bg-transparent
|
77
|
-
|
78
|
-
border-y-0 border-x border-x-solid
|
79
|
-
border-l-gray-400 border-r-transparent
|
80
|
-
|
81
|
-
hover:bg-gray-400 hover:border-gray-400
|
82
|
-
|
83
|
-
[&]:border-solid
|
84
|
-
[&+&]:border-t [&+&]:border-solid
|
85
|
-
[&+&]:border-t-gray-400
|
86
|
-
|
87
|
-
active:[&+&]:border-t active:[&+&]:border-t-solid
|
88
|
-
active:[&+&]:border-gray-500
|
89
|
-
|
90
|
-
active:bg-gray-500 active:border-t-gray-500
|
91
|
-
|
92
|
-
[&:first-child]:rounded-tr-sm [&:last-child]:rounded-br-sm
|
93
|
-
|
94
|
-
transition-[color,_border,_background] ease-out duration-350`, classBySize[size], disabled && 'opacity-[0.48]');
|
95
|
-
return (React.createElement(InputAdornment, { position: 'end' },
|
96
|
-
React.createElement(Container, { flex: true, direction: 'column', inline: true },
|
97
|
-
React.createElement("button", { type: 'button', disabled: disabled, className: rootClassName, onClick: handleUpClick }, size === 'large' ? React.createElement(ArrowUpMinor24, null) : React.createElement(ArrowUpMinor16, null)),
|
98
|
-
React.createElement("button", { type: 'button', disabled: disabled, className: rootClassName, onClick: handleDownClick }, size === 'large' ? React.createElement(ArrowDownMinor24, null) : React.createElement(ArrowDownMinor16, null)))));
|
99
|
-
};
|
100
|
-
NumberInputEndAdornment.defaultProps = {
|
101
|
-
min: -Infinity,
|
102
|
-
max: Infinity,
|
103
|
-
value: 0,
|
104
|
-
step: 1,
|
105
|
-
disabled: false,
|
106
|
-
size: 'medium',
|
107
|
-
};
|
108
|
-
NumberInputEndAdornment.displayName = 'NumberInputEndAdornment';
|
109
|
-
export default NumberInputEndAdornment;
|
110
|
-
//# sourceMappingURL=NumberInputEndAdornment.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"NumberInputEndAdornment.js","sourceRoot":"","sources":["../../../src/NumberInputEndAdornment/NumberInputEndAdornment.tsx"],"names":[],"mappings":"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"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/NumberInputEndAdornment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAC9E,YAAY,EAAE,KAAK,IAAI,4BAA4B,EAAE,MAAM,2BAA2B,CAAA"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/NumberInputEndAdornment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAA"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,2BAA2B,CAAA"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,2BAA2B,CAAA"}
|