@toptal/picasso-number-input 4.0.13 → 4.0.15

Sign up to get free protection for your applications and to get access to all the features.
@@ -11,6 +11,8 @@ export interface Props extends Omit<OmitInternalProps<OutlinedInputProps>, 'defa
11
11
  max?: number | string;
12
12
  /** Next value of the `input` element will be calculated based on step */
13
13
  step?: number | string;
14
+ /** Enable value change on mouse wheel */
15
+ enableChangeOnMouseWheel?: boolean;
14
16
  /** Should controls be hidden or not */
15
17
  hideControls?: boolean;
16
18
  /** Specify icon which should be rendered inside NumberInput */
@@ -1 +1 @@
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,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,gFA+EvB,CAAA;AAeD,eAAe,WAAW,CAAA"}
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,gFAoFvB,CAAA;AAeD,eAAe,WAAW,CAAA"}
@@ -16,7 +16,7 @@ import { useCombinedRefs } from '@toptal/picasso-utils';
16
16
  import { twJoin } from '@toptal/picasso-tailwind-merge';
17
17
  import { NumberInputEndAdornment } from '../NumberInputEndAdornment';
18
18
  export const NumberInput = forwardRef(function NumberInput(props, ref) {
19
- const { step = 1, min = -Infinity, max = Infinity, hideControls, value, onChange, disabled, status, onResetClick, enableReset, width, icon, size, testIds, highlight } = props, rest = __rest(props, ["step", "min", "max", "hideControls", "value", "onChange", "disabled", "status", "onResetClick", "enableReset", "width", "icon", "size", "testIds", "highlight"]);
19
+ const { step = 1, min = -Infinity, max = Infinity, hideControls, enableChangeOnMouseWheel, value, onChange, disabled, status, onResetClick, enableReset, width, icon, size, testIds, highlight } = props, rest = __rest(props, ["step", "min", "max", "hideControls", "enableChangeOnMouseWheel", "value", "onChange", "disabled", "status", "onResetClick", "enableReset", "width", "icon", "size", "testIds", "highlight"]);
20
20
  const inputRef = useCombinedRefs(ref, useRef(null));
21
21
  const endAdornment = hideControls ? null : (React.createElement(NumberInputEndAdornment, { step: step, min: min, max: max, value: value, disabled: disabled, size: size, inputRef: inputRef }));
22
22
  const startAdornment = icon ? (React.createElement(InputAdornment, { position: 'start', disablePointerEvents: true }, icon)) : null;
@@ -29,7 +29,11 @@ export const NumberInput = forwardRef(function NumberInput(props, ref) {
29
29
  '[-moz-appearance:textfield]'),
30
30
  }, highlight: highlight, inputProps: Object.assign(Object.assign({}, rest), { step,
31
31
  min,
32
- max }), 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 }));
32
+ max,
33
+ // TODO: [FX-6102] Add test for wheel event
34
+ onWheel: enableChangeOnMouseWheel
35
+ ? undefined
36
+ : 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 }));
33
37
  });
34
38
  NumberInput.defaultProps = {
35
39
  onChange: () => { },
@@ -1 +1 @@
1
- {"version":3,"file":"NumberInput.js","sourceRoot":"","sources":["../../../src/NumberInput/NumberInput.tsx"],"names":[],"mappings":";;;;;;;;;;;AACA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AAEvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AA2BpE,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CACnC,SAAS,WAAW,CAAC,KAAK,EAAE,GAAG;IAC7B,MAAM,EACJ,IAAI,GAAG,CAAC,EACR,GAAG,GAAG,CAAC,QAAQ,EACf,GAAG,GAAG,QAAQ,EACd,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,WAAW,EACX,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,KAEP,KAAK,EADJ,IAAI,UACL,KAAK,EAjBH,iKAiBL,CAAQ,CAAA;IAET,MAAM,QAAQ,GAAG,eAAe,CAC9B,GAAG,EACH,MAAM,CAAmB,IAAI,CAAC,CAC/B,CAAA;IAED,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACzC,oBAAC,uBAAuB,IACtB,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAA;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,CAC5B,oBAAC,cAAc,IAAC,QAAQ,EAAC,OAAO,EAAC,oBAAoB,UAClD,IAAI,CACU,CAClB,CAAC,CAAC,CAAC,IAAI,CAAA;IAER,OAAO,CACL,oBAAC,aAAa,IACZ,OAAO,EAAE;YACP,IAAI,EAAE,kBAAkB;YACxB,KAAK,EAAE,MAAM;YACX,qDAAqD;YACrD,oFAAoF,EACpF,oFAAoF;YACpF,uCAAuC;YACvC,6BAA6B,CAC9B;SACF,EACD,SAAS,EAAE,SAAS,EACpB,UAAU,kCACL,IAAI,KACP,IAAI;YACJ,GAAG;YACH,GAAG,KAEL,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,EAC9B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,GAChB,CACH,CAAA;AACH,CAAC,CACF,CAAA;AAED,WAAW,CAAC,YAAY,GAAG;IACzB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,GAAG,EAAE,CAAC,QAAQ;IACd,GAAG,EAAE,QAAQ;IACb,YAAY,EAAE,KAAK;IACnB,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,SAAS;CAClB,CAAA;AAED,WAAW,CAAC,WAAW,GAAG,aAAa,CAAA;AAEvC,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"NumberInput.js","sourceRoot":"","sources":["../../../src/NumberInput/NumberInput.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
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;;;;;;;;;;CA+HnD,CAAA;AAaD,eAAe,uBAAuB,CAAA"}
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"}
@@ -74,14 +74,15 @@ export const NumberInputEndAdornment = (props) => {
74
74
  p-0 bottom-0 cursor-pointer
75
75
 
76
76
  text-graphite-700 decoration-graphite-700 bg-inherit bg-transparent
77
-
78
- border-t-0 border-b-0 border-l border-r border-l-solid border-r-solid
77
+
78
+ border-y-0 border-x border-x-solid
79
79
  border-l-gray-400 border-r-transparent
80
-
80
+
81
81
  hover:bg-gray-400 hover:border-gray-400
82
82
 
83
- [&+&]:border-t [&+&]:border-solid
84
- [&+&]:border-t-gray-400
83
+ [&]:border-solid
84
+ [&+&]:border-t [&+&]:border-solid
85
+ [&+&]:border-t-gray-400
85
86
 
86
87
  active:[&+&]:border-t active:[&+&]:border-t-solid
87
88
  active:[&+&]:border-gray-500
@@ -1 +1 @@
1
- {"version":3,"file":"NumberInputEndAdornment.js","sourceRoot":"","sources":["../../../src/NumberInputEndAdornment/NumberInputEndAdornment.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NumberInputEndAdornment.js","sourceRoot":"","sources":["../../../src/NumberInputEndAdornment/NumberInputEndAdornment.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,cAAc,GACf,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AAqBvD,oEAAoE;AACpE,MAAM,sBAAsB,GAAG,SAAS,EAAE;IACxC,CAAC,CACG,MAAM,CAAC,wBAAwB;IAC7B,uEAAuE;IACvE,MAAM,CAAC,gBAAgB,CAAC,SAAS,EACjC,OAAO,CAEV,CAAC,GAAI;IACR,CAAC,CAAC,SAAS,CAAA;AAEb,MAAM,WAAW,GAAyB;IACxC,KAAK,EAAE,kBAAkB;IACzB,MAAM,EAAE,kBAAkB;IAC1B,KAAK,EAAE,kBAAkB;CAC1B,CAAA;AAED,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,GACT,GAAG,KAAK,CAAA;IAET,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,GAAyC,CAAC,CAAC,EAAE;QAC9D,CAAC,CAAC,cAAc,EAAE,CAAA;QAElB,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAChC,OAAM;SACP;QAED,IAAI,SAAS,GAAG,eAAe,GAAG,cAAc,CAAA;QAEhD,IAAI,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE;YAC5B,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,GAAyC,CAAC,CAAC,EAAE;QAChE,CAAC,CAAC,cAAc,EAAE,CAAA;QAElB,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAChC,OAAM;SACP;QAED,IAAI,SAAS,GAAG,eAAe,GAAG,cAAc,CAAA;QAEhD,IAAI,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE;YAC5B,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,MAAM,CAC1B;;;;;;;;;;;;;;;;;;;;;;iEAsB6D,EAC7D,WAAW,CAAC,IAAI,CAAC,EACjB,QAAQ,IAAI,gBAAgB,CAC7B,CAAA;IAED,OAAO,CACL,oBAAC,cAAc,IAAC,QAAQ,EAAC,KAAK;QAC5B,oBAAC,SAAS,IAAC,IAAI,QAAC,SAAS,EAAC,QAAQ,EAAC,MAAM;YACvC,gCACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,aAAa,IAErB,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAG,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAG,CACpD;YAET,gCACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,eAAe,IAEvB,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,oBAAC,gBAAgB,OAAG,CAAC,CAAC,CAAC,oBAAC,gBAAgB,OAAG,CACxD,CACC,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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toptal/picasso-number-input",
3
- "version": "4.0.13",
3
+ "version": "4.0.15",
4
4
  "description": "Toptal UI components library - NumberInput",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -23,6 +23,8 @@ export interface Props
23
23
  max?: number | string
24
24
  /** Next value of the `input` element will be calculated based on step */
25
25
  step?: number | string
26
+ /** Enable value change on mouse wheel */
27
+ enableChangeOnMouseWheel?: boolean
26
28
  /** Should controls be hidden or not */
27
29
  hideControls?: boolean
28
30
  /** Specify icon which should be rendered inside NumberInput */
@@ -41,6 +43,7 @@ export const NumberInput = forwardRef<HTMLInputElement, Props>(
41
43
  min = -Infinity,
42
44
  max = Infinity,
43
45
  hideControls,
46
+ enableChangeOnMouseWheel,
44
47
  value,
45
48
  onChange,
46
49
  disabled,
@@ -96,6 +99,10 @@ export const NumberInput = forwardRef<HTMLInputElement, Props>(
96
99
  step,
97
100
  min,
98
101
  max,
102
+ // TODO: [FX-6102] Add test for wheel event
103
+ onWheel: enableChangeOnMouseWheel
104
+ ? undefined
105
+ : event => event.currentTarget.blur(),
99
106
  }}
100
107
  width={width}
101
108
  onResetClick={onResetClick}
@@ -23,7 +23,7 @@ exports[`NumberInput renders 1`] = `
23
23
  class="inline-flex flex-col"
24
24
  >
25
25
  <button
26
- class="flex relative items-center justify-center align-middle p-0 bottom-0 cursor-pointer text-graphite decoration-graphite bg-inherit bg-transparent border-t border-b border-l border-r border-l border-r border-l-gray border-r hover:bg-gray hover:border-gray [&+&]:border-t [&+&]:border-solid [&+&]:border-t-gray active:[&+&]:border-t active:[&+&]:border-t active:[&+&]:border-gray active:bg-gray active:border-t-gray [&:first-child]:rounded-tr [&:last-child]:rounded-br transition-[color,_border,_background] ease-out duration-350 h-4 w-[1.625rem]"
26
+ class="flex relative items-center justify-center align-middle p-0 bottom-0 cursor-pointer text-graphite decoration-graphite bg-inherit bg-transparent border-y border-x border-x border-l-gray border-r hover:bg-gray hover:border-gray [&]:border-solid [&+&]:border-t [&+&]:border-solid [&+&]:border-t-gray active:[&+&]:border-t active:[&+&]:border-t active:[&+&]:border-gray active:bg-gray active:border-t-gray [&:first-child]:rounded-tr [&:last-child]:rounded-br transition-[color,_border,_background] ease-out duration-350 h-4 w-[1.625rem]"
27
27
  type="button"
28
28
  >
29
29
  <svg
@@ -37,7 +37,7 @@ exports[`NumberInput renders 1`] = `
37
37
  </svg>
38
38
  </button>
39
39
  <button
40
- class="flex relative items-center justify-center align-middle p-0 bottom-0 cursor-pointer text-graphite decoration-graphite bg-inherit bg-transparent border-t border-b border-l border-r border-l border-r border-l-gray border-r hover:bg-gray hover:border-gray [&+&]:border-t [&+&]:border-solid [&+&]:border-t-gray active:[&+&]:border-t active:[&+&]:border-t active:[&+&]:border-gray active:bg-gray active:border-t-gray [&:first-child]:rounded-tr [&:last-child]:rounded-br transition-[color,_border,_background] ease-out duration-350 h-4 w-[1.625rem]"
40
+ class="flex relative items-center justify-center align-middle p-0 bottom-0 cursor-pointer text-graphite decoration-graphite bg-inherit bg-transparent border-y border-x border-x border-l-gray border-r hover:bg-gray hover:border-gray [&]:border-solid [&+&]:border-t [&+&]:border-solid [&+&]:border-t-gray active:[&+&]:border-t active:[&+&]:border-t active:[&+&]:border-gray active:bg-gray active:border-t-gray [&:first-child]:rounded-tr [&:last-child]:rounded-br transition-[color,_border,_background] ease-out duration-350 h-4 w-[1.625rem]"
41
41
  type="button"
42
42
  >
43
43
  <svg
@@ -132,14 +132,15 @@ export const NumberInputEndAdornment = (props: Props) => {
132
132
  p-0 bottom-0 cursor-pointer
133
133
 
134
134
  text-graphite-700 decoration-graphite-700 bg-inherit bg-transparent
135
-
136
- border-t-0 border-b-0 border-l border-r border-l-solid border-r-solid
135
+
136
+ border-y-0 border-x border-x-solid
137
137
  border-l-gray-400 border-r-transparent
138
-
138
+
139
139
  hover:bg-gray-400 hover:border-gray-400
140
140
 
141
- [&+&]:border-t [&+&]:border-solid
142
- [&+&]:border-t-gray-400
141
+ [&]:border-solid
142
+ [&+&]:border-t [&+&]:border-solid
143
+ [&+&]:border-t-gray-400
143
144
 
144
145
  active:[&+&]:border-t active:[&+&]:border-t-solid
145
146
  active:[&+&]:border-gray-500