@react-aria/spinbutton 3.0.0-nightly.1356 → 3.0.0-nightly.1375

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/dist/main.js CHANGED
@@ -209,6 +209,8 @@ function $85d07e5d20aa402a$export$e908e06f4b8e3402(props) {
209
209
  const _async = $8LiPN$react.useRef();
210
210
  let { value: value , textValue: textValue , minValue: minValue , maxValue: maxValue , isDisabled: isDisabled , isReadOnly: isReadOnly , isRequired: isRequired , onIncrement: onIncrement , onIncrementPage: onIncrementPage , onDecrement: onDecrement , onDecrementPage: onDecrementPage , onDecrementToMin: onDecrementToMin , onIncrementToMax: onIncrementToMax } = props;
211
211
  const formatMessage = $8LiPN$reactariai18n.useMessageFormatter((/*@__PURE__*/$parcel$interopDefault($c7f3ada02256814d$exports)));
212
+ const propsRef = $8LiPN$react.useRef(props);
213
+ propsRef.current = props;
212
214
  const clearAsync = ()=>clearTimeout(_async.current)
213
215
  ;
214
216
  // eslint-disable-next-line arrow-body-style
@@ -280,7 +282,7 @@ function $85d07e5d20aa402a$export$e908e06f4b8e3402(props) {
280
282
  ]);
281
283
  const onIncrementPressStart = $8LiPN$react.useCallback((initialStepDelay)=>{
282
284
  clearAsync();
283
- onIncrement();
285
+ propsRef.current.onIncrement();
284
286
  // Start spinning after initial delay
285
287
  _async.current = window.setTimeout(()=>{
286
288
  if (isNaN(maxValue) || isNaN(value) || value < maxValue) onIncrementPressStart(60);
@@ -292,7 +294,7 @@ function $85d07e5d20aa402a$export$e908e06f4b8e3402(props) {
292
294
  ]);
293
295
  const onDecrementPressStart = $8LiPN$react.useCallback((initialStepDelay)=>{
294
296
  clearAsync();
295
- onDecrement();
297
+ propsRef.current.onDecrement();
296
298
  // Start spinning after initial delay
297
299
  _async.current = window.setTimeout(()=>{
298
300
  if (isNaN(minValue) || isNaN(value) || value > minValue) onDecrementPressStart(60);
@@ -302,6 +304,9 @@ function $85d07e5d20aa402a$export$e908e06f4b8e3402(props) {
302
304
  minValue,
303
305
  value
304
306
  ]);
307
+ let cancelContextMenu = (e)=>{
308
+ e.preventDefault();
309
+ };
305
310
  return {
306
311
  spinButtonProps: {
307
312
  role: 'spinbutton',
@@ -317,16 +322,26 @@ function $85d07e5d20aa402a$export$e908e06f4b8e3402(props) {
317
322
  onBlur: onBlur
318
323
  },
319
324
  incrementButtonProps: {
320
- onPressStart: ()=>onIncrementPressStart(400)
321
- ,
322
- onPressEnd: clearAsync,
325
+ onPressStart: ()=>{
326
+ onIncrementPressStart(400);
327
+ window.addEventListener('contextmenu', cancelContextMenu);
328
+ },
329
+ onPressEnd: ()=>{
330
+ clearAsync();
331
+ window.removeEventListener('contextmenu', cancelContextMenu);
332
+ },
323
333
  onFocus: onFocus,
324
334
  onBlur: onBlur
325
335
  },
326
336
  decrementButtonProps: {
327
- onPressStart: ()=>onDecrementPressStart(400)
328
- ,
329
- onPressEnd: clearAsync,
337
+ onPressStart: ()=>{
338
+ onDecrementPressStart(400);
339
+ window.addEventListener('contextmenu', cancelContextMenu);
340
+ },
341
+ onPressEnd: ()=>{
342
+ clearAsync();
343
+ window.removeEventListener('contextmenu', cancelContextMenu);
344
+ },
330
345
  onFocus: onFocus,
331
346
  onBlur: onBlur
332
347
  }
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-aria/spinbutton/src/index.ts","packages/@react-aria/spinbutton/src/useSpinButton.ts","packages/@react-aria/spinbutton/intl/*.js","packages/@react-aria/spinbutton/intl/ar-AE.json","packages/@react-aria/spinbutton/intl/bg-BG.json","packages/@react-aria/spinbutton/intl/cs-CZ.json","packages/@react-aria/spinbutton/intl/da-DK.json","packages/@react-aria/spinbutton/intl/de-DE.json","packages/@react-aria/spinbutton/intl/el-GR.json","packages/@react-aria/spinbutton/intl/en-US.json","packages/@react-aria/spinbutton/intl/es-ES.json","packages/@react-aria/spinbutton/intl/et-EE.json","packages/@react-aria/spinbutton/intl/fi-FI.json","packages/@react-aria/spinbutton/intl/fr-FR.json","packages/@react-aria/spinbutton/intl/he-IL.json","packages/@react-aria/spinbutton/intl/hr-HR.json","packages/@react-aria/spinbutton/intl/hu-HU.json","packages/@react-aria/spinbutton/intl/it-IT.json","packages/@react-aria/spinbutton/intl/ja-JP.json","packages/@react-aria/spinbutton/intl/ko-KR.json","packages/@react-aria/spinbutton/intl/lt-LT.json","packages/@react-aria/spinbutton/intl/lv-LV.json","packages/@react-aria/spinbutton/intl/nb-NO.json","packages/@react-aria/spinbutton/intl/nl-NL.json","packages/@react-aria/spinbutton/intl/pl-PL.json","packages/@react-aria/spinbutton/intl/pt-BR.json","packages/@react-aria/spinbutton/intl/pt-PT.json","packages/@react-aria/spinbutton/intl/ro-RO.json","packages/@react-aria/spinbutton/intl/ru-RU.json","packages/@react-aria/spinbutton/intl/sk-SK.json","packages/@react-aria/spinbutton/intl/sl-SI.json","packages/@react-aria/spinbutton/intl/sr-SP.json","packages/@react-aria/spinbutton/intl/sv-SE.json","packages/@react-aria/spinbutton/intl/tr-TR.json","packages/@react-aria/spinbutton/intl/uk-UA.json","packages/@react-aria/spinbutton/intl/zh-CN.json","packages/@react-aria/spinbutton/intl/zh-TW.json"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useSpinButton';\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {announce} from '@react-aria/live-announcer';\nimport {AriaButtonProps} from '@react-types/button';\nimport {HTMLAttributes, useCallback, useEffect, useRef} from 'react';\nimport {InputBase, RangeInputBase, Validation, ValueBase} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\n\nexport interface SpinButtonProps extends InputBase, Validation, ValueBase<number>, RangeInputBase<number> {\n textValue?: string,\n onIncrement?: () => void,\n onIncrementPage?: () => void,\n onDecrement?: () => void,\n onDecrementPage?: () => void,\n onDecrementToMin?: () => void,\n onIncrementToMax?: () => void\n}\n\nexport interface SpinbuttonAria {\n spinButtonProps: HTMLAttributes<HTMLDivElement>,\n incrementButtonProps: AriaButtonProps,\n decrementButtonProps: AriaButtonProps\n}\n\nexport function useSpinButton(\n props: SpinButtonProps\n): SpinbuttonAria {\n const _async = useRef<number>();\n let {\n value,\n textValue,\n minValue,\n maxValue,\n isDisabled,\n isReadOnly,\n isRequired,\n onIncrement,\n onIncrementPage,\n onDecrement,\n onDecrementPage,\n onDecrementToMin,\n onIncrementToMax\n } = props;\n const formatMessage = useMessageFormatter(intlMessages);\n\n const clearAsync = () => clearTimeout(_async.current);\n\n // eslint-disable-next-line arrow-body-style\n useEffect(() => {\n return () => clearAsync();\n }, []);\n\n let onKeyDown = (e) => {\n if (e.ctrlKey || e.metaKey || e.shiftKey || e.altKey || isReadOnly) {\n return;\n }\n\n switch (e.key) {\n case 'PageUp':\n if (onIncrementPage) {\n e.preventDefault();\n onIncrementPage();\n break;\n }\n // fallthrough!\n case 'ArrowUp':\n case 'Up':\n if (onIncrement) {\n e.preventDefault();\n onIncrement();\n }\n break;\n case 'PageDown':\n if (onDecrementPage) {\n e.preventDefault();\n onDecrementPage();\n break;\n }\n // fallthrough\n case 'ArrowDown':\n case 'Down':\n if (onDecrement) {\n e.preventDefault();\n onDecrement();\n }\n break;\n case 'Home':\n if (onDecrementToMin) {\n e.preventDefault();\n onDecrementToMin();\n }\n break;\n case 'End':\n if (onIncrementToMax) {\n e.preventDefault();\n onIncrementToMax();\n }\n break;\n }\n };\n\n let isFocused = useRef(false);\n let onFocus = () => {\n isFocused.current = true;\n };\n\n let onBlur = () => {\n isFocused.current = false;\n };\n\n // Replace Unicode hyphen-minus (U+002D) with minus sign (U+2212).\n // This ensures that macOS VoiceOver announces it as \"minus\" even with other characters between the minus sign\n // and the number (e.g. currency symbol). Otherwise it announces nothing because it assumes the character is a hyphen.\n // In addition, replace the empty string with the word \"Empty\" so that iOS VoiceOver does not read \"50%\" for an empty field.\n textValue = textValue === '' ? formatMessage('Empty') : (textValue || `${value}`).replace('-', '\\u2212');\n\n useEffect(() => {\n if (isFocused.current) {\n announce(textValue, 'assertive');\n }\n }, [textValue]);\n\n const onIncrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n onIncrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(maxValue) || isNaN(value) || value < maxValue) {\n onIncrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onIncrement, maxValue, value]\n );\n\n const onDecrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n onDecrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(minValue) || isNaN(value) || value > minValue) {\n onDecrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onDecrement, minValue, value]\n );\n\n return {\n spinButtonProps: {\n role: 'spinbutton',\n 'aria-valuenow': !isNaN(value) ? value : null,\n 'aria-valuetext': textValue,\n 'aria-valuemin': minValue,\n 'aria-valuemax': maxValue,\n 'aria-disabled': isDisabled || null,\n 'aria-readonly': isReadOnly || null,\n 'aria-required': isRequired || null,\n onKeyDown,\n onFocus,\n onBlur\n },\n incrementButtonProps: {\n onPressStart: () => onIncrementPressStart(400),\n onPressEnd: clearAsync,\n onFocus,\n onBlur\n },\n decrementButtonProps: {\n onPressStart: () => onDecrementPressStart(400),\n onPressEnd: clearAsync,\n onFocus,\n onBlur\n }\n };\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"Empty\": \"فارغ\"\n}\n","{\n \"Empty\": \"Изпразни\"\n}\n","{\n \"Empty\": \"Prázdné\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leer\"\n}\n","{\n \"Empty\": \"Άδειο\"\n}\n","{\n \"Empty\": \"Empty\"\n}\n","{\n \"Empty\": \"Vacío\"\n}\n","{\n \"Empty\": \"Tühjenda\"\n}\n","{\n \"Empty\": \"Tyhjä\"\n}\n","{\n \"Empty\": \"Vide\"\n}\n","{\n \"Empty\": \"ריק\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Üres\"\n}\n","{\n \"Empty\": \"Vuoto\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"비어 있음\"\n}\n","{\n \"Empty\": \"Tuščias\"\n}\n","{\n \"Empty\": \"Tukšs\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leeg\"\n}\n","{\n \"Empty\": \"Pusty\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Gol\"\n}\n","{\n \"Empty\": \"Не заполнено\"\n}\n","{\n \"Empty\": \"Prázdne\"\n}\n","{\n \"Empty\": \"Prazen\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Tomt\"\n}\n","{\n \"Empty\": \"Boş\"\n}\n","{\n \"Empty\": \"Пусто\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"空白\"\n}\n"],"names":[],"version":3,"file":"main.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-aria/spinbutton/src/index.ts","packages/@react-aria/spinbutton/src/useSpinButton.ts","packages/@react-aria/spinbutton/intl/*.js","packages/@react-aria/spinbutton/intl/ar-AE.json","packages/@react-aria/spinbutton/intl/bg-BG.json","packages/@react-aria/spinbutton/intl/cs-CZ.json","packages/@react-aria/spinbutton/intl/da-DK.json","packages/@react-aria/spinbutton/intl/de-DE.json","packages/@react-aria/spinbutton/intl/el-GR.json","packages/@react-aria/spinbutton/intl/en-US.json","packages/@react-aria/spinbutton/intl/es-ES.json","packages/@react-aria/spinbutton/intl/et-EE.json","packages/@react-aria/spinbutton/intl/fi-FI.json","packages/@react-aria/spinbutton/intl/fr-FR.json","packages/@react-aria/spinbutton/intl/he-IL.json","packages/@react-aria/spinbutton/intl/hr-HR.json","packages/@react-aria/spinbutton/intl/hu-HU.json","packages/@react-aria/spinbutton/intl/it-IT.json","packages/@react-aria/spinbutton/intl/ja-JP.json","packages/@react-aria/spinbutton/intl/ko-KR.json","packages/@react-aria/spinbutton/intl/lt-LT.json","packages/@react-aria/spinbutton/intl/lv-LV.json","packages/@react-aria/spinbutton/intl/nb-NO.json","packages/@react-aria/spinbutton/intl/nl-NL.json","packages/@react-aria/spinbutton/intl/pl-PL.json","packages/@react-aria/spinbutton/intl/pt-BR.json","packages/@react-aria/spinbutton/intl/pt-PT.json","packages/@react-aria/spinbutton/intl/ro-RO.json","packages/@react-aria/spinbutton/intl/ru-RU.json","packages/@react-aria/spinbutton/intl/sk-SK.json","packages/@react-aria/spinbutton/intl/sl-SI.json","packages/@react-aria/spinbutton/intl/sr-SP.json","packages/@react-aria/spinbutton/intl/sv-SE.json","packages/@react-aria/spinbutton/intl/tr-TR.json","packages/@react-aria/spinbutton/intl/uk-UA.json","packages/@react-aria/spinbutton/intl/zh-CN.json","packages/@react-aria/spinbutton/intl/zh-TW.json"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useSpinButton';\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {announce} from '@react-aria/live-announcer';\nimport {AriaButtonProps} from '@react-types/button';\nimport {HTMLAttributes, useCallback, useEffect, useRef} from 'react';\nimport {InputBase, RangeInputBase, Validation, ValueBase} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\n\nexport interface SpinButtonProps extends InputBase, Validation, ValueBase<number>, RangeInputBase<number> {\n textValue?: string,\n onIncrement?: () => void,\n onIncrementPage?: () => void,\n onDecrement?: () => void,\n onDecrementPage?: () => void,\n onDecrementToMin?: () => void,\n onIncrementToMax?: () => void\n}\n\nexport interface SpinbuttonAria {\n spinButtonProps: HTMLAttributes<HTMLDivElement>,\n incrementButtonProps: AriaButtonProps,\n decrementButtonProps: AriaButtonProps\n}\n\nexport function useSpinButton(\n props: SpinButtonProps\n): SpinbuttonAria {\n const _async = useRef<number>();\n let {\n value,\n textValue,\n minValue,\n maxValue,\n isDisabled,\n isReadOnly,\n isRequired,\n onIncrement,\n onIncrementPage,\n onDecrement,\n onDecrementPage,\n onDecrementToMin,\n onIncrementToMax\n } = props;\n const formatMessage = useMessageFormatter(intlMessages);\n const propsRef = useRef(props);\n propsRef.current = props;\n\n const clearAsync = () => clearTimeout(_async.current);\n\n // eslint-disable-next-line arrow-body-style\n useEffect(() => {\n return () => clearAsync();\n }, []);\n\n let onKeyDown = (e) => {\n if (e.ctrlKey || e.metaKey || e.shiftKey || e.altKey || isReadOnly) {\n return;\n }\n\n switch (e.key) {\n case 'PageUp':\n if (onIncrementPage) {\n e.preventDefault();\n onIncrementPage();\n break;\n }\n // fallthrough!\n case 'ArrowUp':\n case 'Up':\n if (onIncrement) {\n e.preventDefault();\n onIncrement();\n }\n break;\n case 'PageDown':\n if (onDecrementPage) {\n e.preventDefault();\n onDecrementPage();\n break;\n }\n // fallthrough\n case 'ArrowDown':\n case 'Down':\n if (onDecrement) {\n e.preventDefault();\n onDecrement();\n }\n break;\n case 'Home':\n if (onDecrementToMin) {\n e.preventDefault();\n onDecrementToMin();\n }\n break;\n case 'End':\n if (onIncrementToMax) {\n e.preventDefault();\n onIncrementToMax();\n }\n break;\n }\n };\n\n let isFocused = useRef(false);\n let onFocus = () => {\n isFocused.current = true;\n };\n\n let onBlur = () => {\n isFocused.current = false;\n };\n\n // Replace Unicode hyphen-minus (U+002D) with minus sign (U+2212).\n // This ensures that macOS VoiceOver announces it as \"minus\" even with other characters between the minus sign\n // and the number (e.g. currency symbol). Otherwise it announces nothing because it assumes the character is a hyphen.\n // In addition, replace the empty string with the word \"Empty\" so that iOS VoiceOver does not read \"50%\" for an empty field.\n textValue = textValue === '' ? formatMessage('Empty') : (textValue || `${value}`).replace('-', '\\u2212');\n\n useEffect(() => {\n if (isFocused.current) {\n announce(textValue, 'assertive');\n }\n }, [textValue]);\n\n const onIncrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n propsRef.current.onIncrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(maxValue) || isNaN(value) || value < maxValue) {\n onIncrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onIncrement, maxValue, value]\n );\n\n const onDecrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n propsRef.current.onDecrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(minValue) || isNaN(value) || value > minValue) {\n onDecrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onDecrement, minValue, value]\n );\n\n let cancelContextMenu = (e) => {\n e.preventDefault();\n };\n\n return {\n spinButtonProps: {\n role: 'spinbutton',\n 'aria-valuenow': !isNaN(value) ? value : null,\n 'aria-valuetext': textValue,\n 'aria-valuemin': minValue,\n 'aria-valuemax': maxValue,\n 'aria-disabled': isDisabled || null,\n 'aria-readonly': isReadOnly || null,\n 'aria-required': isRequired || null,\n onKeyDown,\n onFocus,\n onBlur\n },\n incrementButtonProps: {\n onPressStart: () => {\n onIncrementPressStart(400);\n window.addEventListener('contextmenu', cancelContextMenu);\n },\n onPressEnd: () => {\n clearAsync();\n window.removeEventListener('contextmenu', cancelContextMenu);\n },\n onFocus,\n onBlur\n },\n decrementButtonProps: {\n onPressStart: () => {\n onDecrementPressStart(400);\n window.addEventListener('contextmenu', cancelContextMenu);\n },\n onPressEnd: () => {\n clearAsync();\n window.removeEventListener('contextmenu', cancelContextMenu);\n },\n onFocus,\n onBlur\n }\n };\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"Empty\": \"فارغ\"\n}\n","{\n \"Empty\": \"Изпразни\"\n}\n","{\n \"Empty\": \"Prázdné\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leer\"\n}\n","{\n \"Empty\": \"Άδειο\"\n}\n","{\n \"Empty\": \"Empty\"\n}\n","{\n \"Empty\": \"Vacío\"\n}\n","{\n \"Empty\": \"Tühjenda\"\n}\n","{\n \"Empty\": \"Tyhjä\"\n}\n","{\n \"Empty\": \"Vide\"\n}\n","{\n \"Empty\": \"ריק\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Üres\"\n}\n","{\n \"Empty\": \"Vuoto\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"비어 있음\"\n}\n","{\n \"Empty\": \"Tuščias\"\n}\n","{\n \"Empty\": \"Tukšs\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leeg\"\n}\n","{\n \"Empty\": \"Pusty\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Gol\"\n}\n","{\n \"Empty\": \"Не заполнено\"\n}\n","{\n \"Empty\": \"Prázdne\"\n}\n","{\n \"Empty\": \"Prazen\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Tomt\"\n}\n","{\n \"Empty\": \"Boş\"\n}\n","{\n \"Empty\": \"Пусто\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"空白\"\n}\n"],"names":[],"version":3,"file":"main.js.map"}
package/dist/module.js CHANGED
@@ -193,6 +193,8 @@ function $fade679e6d148269$export$e908e06f4b8e3402(props) {
193
193
  const _async = $2ZufI$useRef();
194
194
  let { value: value , textValue: textValue , minValue: minValue , maxValue: maxValue , isDisabled: isDisabled , isReadOnly: isReadOnly , isRequired: isRequired , onIncrement: onIncrement , onIncrementPage: onIncrementPage , onDecrement: onDecrement , onDecrementPage: onDecrementPage , onDecrementToMin: onDecrementToMin , onIncrementToMax: onIncrementToMax } = props;
195
195
  const formatMessage = $2ZufI$useMessageFormatter((/*@__PURE__*/$parcel$interopDefault($00b653b26a900380$exports)));
196
+ const propsRef = $2ZufI$useRef(props);
197
+ propsRef.current = props;
196
198
  const clearAsync = ()=>clearTimeout(_async.current)
197
199
  ;
198
200
  // eslint-disable-next-line arrow-body-style
@@ -264,7 +266,7 @@ function $fade679e6d148269$export$e908e06f4b8e3402(props) {
264
266
  ]);
265
267
  const onIncrementPressStart = $2ZufI$useCallback((initialStepDelay)=>{
266
268
  clearAsync();
267
- onIncrement();
269
+ propsRef.current.onIncrement();
268
270
  // Start spinning after initial delay
269
271
  _async.current = window.setTimeout(()=>{
270
272
  if (isNaN(maxValue) || isNaN(value) || value < maxValue) onIncrementPressStart(60);
@@ -276,7 +278,7 @@ function $fade679e6d148269$export$e908e06f4b8e3402(props) {
276
278
  ]);
277
279
  const onDecrementPressStart = $2ZufI$useCallback((initialStepDelay)=>{
278
280
  clearAsync();
279
- onDecrement();
281
+ propsRef.current.onDecrement();
280
282
  // Start spinning after initial delay
281
283
  _async.current = window.setTimeout(()=>{
282
284
  if (isNaN(minValue) || isNaN(value) || value > minValue) onDecrementPressStart(60);
@@ -286,6 +288,9 @@ function $fade679e6d148269$export$e908e06f4b8e3402(props) {
286
288
  minValue,
287
289
  value
288
290
  ]);
291
+ let cancelContextMenu = (e)=>{
292
+ e.preventDefault();
293
+ };
289
294
  return {
290
295
  spinButtonProps: {
291
296
  role: 'spinbutton',
@@ -301,16 +306,26 @@ function $fade679e6d148269$export$e908e06f4b8e3402(props) {
301
306
  onBlur: onBlur
302
307
  },
303
308
  incrementButtonProps: {
304
- onPressStart: ()=>onIncrementPressStart(400)
305
- ,
306
- onPressEnd: clearAsync,
309
+ onPressStart: ()=>{
310
+ onIncrementPressStart(400);
311
+ window.addEventListener('contextmenu', cancelContextMenu);
312
+ },
313
+ onPressEnd: ()=>{
314
+ clearAsync();
315
+ window.removeEventListener('contextmenu', cancelContextMenu);
316
+ },
307
317
  onFocus: onFocus,
308
318
  onBlur: onBlur
309
319
  },
310
320
  decrementButtonProps: {
311
- onPressStart: ()=>onDecrementPressStart(400)
312
- ,
313
- onPressEnd: clearAsync,
321
+ onPressStart: ()=>{
322
+ onDecrementPressStart(400);
323
+ window.addEventListener('contextmenu', cancelContextMenu);
324
+ },
325
+ onPressEnd: ()=>{
326
+ clearAsync();
327
+ window.removeEventListener('contextmenu', cancelContextMenu);
328
+ },
314
329
  onFocus: onFocus,
315
330
  onBlur: onBlur
316
331
  }
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-aria/spinbutton/src/index.ts","packages/@react-aria/spinbutton/src/useSpinButton.ts","packages/@react-aria/spinbutton/intl/*.js","packages/@react-aria/spinbutton/intl/ar-AE.json","packages/@react-aria/spinbutton/intl/bg-BG.json","packages/@react-aria/spinbutton/intl/cs-CZ.json","packages/@react-aria/spinbutton/intl/da-DK.json","packages/@react-aria/spinbutton/intl/de-DE.json","packages/@react-aria/spinbutton/intl/el-GR.json","packages/@react-aria/spinbutton/intl/en-US.json","packages/@react-aria/spinbutton/intl/es-ES.json","packages/@react-aria/spinbutton/intl/et-EE.json","packages/@react-aria/spinbutton/intl/fi-FI.json","packages/@react-aria/spinbutton/intl/fr-FR.json","packages/@react-aria/spinbutton/intl/he-IL.json","packages/@react-aria/spinbutton/intl/hr-HR.json","packages/@react-aria/spinbutton/intl/hu-HU.json","packages/@react-aria/spinbutton/intl/it-IT.json","packages/@react-aria/spinbutton/intl/ja-JP.json","packages/@react-aria/spinbutton/intl/ko-KR.json","packages/@react-aria/spinbutton/intl/lt-LT.json","packages/@react-aria/spinbutton/intl/lv-LV.json","packages/@react-aria/spinbutton/intl/nb-NO.json","packages/@react-aria/spinbutton/intl/nl-NL.json","packages/@react-aria/spinbutton/intl/pl-PL.json","packages/@react-aria/spinbutton/intl/pt-BR.json","packages/@react-aria/spinbutton/intl/pt-PT.json","packages/@react-aria/spinbutton/intl/ro-RO.json","packages/@react-aria/spinbutton/intl/ru-RU.json","packages/@react-aria/spinbutton/intl/sk-SK.json","packages/@react-aria/spinbutton/intl/sl-SI.json","packages/@react-aria/spinbutton/intl/sr-SP.json","packages/@react-aria/spinbutton/intl/sv-SE.json","packages/@react-aria/spinbutton/intl/tr-TR.json","packages/@react-aria/spinbutton/intl/uk-UA.json","packages/@react-aria/spinbutton/intl/zh-CN.json","packages/@react-aria/spinbutton/intl/zh-TW.json"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useSpinButton';\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {announce} from '@react-aria/live-announcer';\nimport {AriaButtonProps} from '@react-types/button';\nimport {HTMLAttributes, useCallback, useEffect, useRef} from 'react';\nimport {InputBase, RangeInputBase, Validation, ValueBase} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\n\nexport interface SpinButtonProps extends InputBase, Validation, ValueBase<number>, RangeInputBase<number> {\n textValue?: string,\n onIncrement?: () => void,\n onIncrementPage?: () => void,\n onDecrement?: () => void,\n onDecrementPage?: () => void,\n onDecrementToMin?: () => void,\n onIncrementToMax?: () => void\n}\n\nexport interface SpinbuttonAria {\n spinButtonProps: HTMLAttributes<HTMLDivElement>,\n incrementButtonProps: AriaButtonProps,\n decrementButtonProps: AriaButtonProps\n}\n\nexport function useSpinButton(\n props: SpinButtonProps\n): SpinbuttonAria {\n const _async = useRef<number>();\n let {\n value,\n textValue,\n minValue,\n maxValue,\n isDisabled,\n isReadOnly,\n isRequired,\n onIncrement,\n onIncrementPage,\n onDecrement,\n onDecrementPage,\n onDecrementToMin,\n onIncrementToMax\n } = props;\n const formatMessage = useMessageFormatter(intlMessages);\n\n const clearAsync = () => clearTimeout(_async.current);\n\n // eslint-disable-next-line arrow-body-style\n useEffect(() => {\n return () => clearAsync();\n }, []);\n\n let onKeyDown = (e) => {\n if (e.ctrlKey || e.metaKey || e.shiftKey || e.altKey || isReadOnly) {\n return;\n }\n\n switch (e.key) {\n case 'PageUp':\n if (onIncrementPage) {\n e.preventDefault();\n onIncrementPage();\n break;\n }\n // fallthrough!\n case 'ArrowUp':\n case 'Up':\n if (onIncrement) {\n e.preventDefault();\n onIncrement();\n }\n break;\n case 'PageDown':\n if (onDecrementPage) {\n e.preventDefault();\n onDecrementPage();\n break;\n }\n // fallthrough\n case 'ArrowDown':\n case 'Down':\n if (onDecrement) {\n e.preventDefault();\n onDecrement();\n }\n break;\n case 'Home':\n if (onDecrementToMin) {\n e.preventDefault();\n onDecrementToMin();\n }\n break;\n case 'End':\n if (onIncrementToMax) {\n e.preventDefault();\n onIncrementToMax();\n }\n break;\n }\n };\n\n let isFocused = useRef(false);\n let onFocus = () => {\n isFocused.current = true;\n };\n\n let onBlur = () => {\n isFocused.current = false;\n };\n\n // Replace Unicode hyphen-minus (U+002D) with minus sign (U+2212).\n // This ensures that macOS VoiceOver announces it as \"minus\" even with other characters between the minus sign\n // and the number (e.g. currency symbol). Otherwise it announces nothing because it assumes the character is a hyphen.\n // In addition, replace the empty string with the word \"Empty\" so that iOS VoiceOver does not read \"50%\" for an empty field.\n textValue = textValue === '' ? formatMessage('Empty') : (textValue || `${value}`).replace('-', '\\u2212');\n\n useEffect(() => {\n if (isFocused.current) {\n announce(textValue, 'assertive');\n }\n }, [textValue]);\n\n const onIncrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n onIncrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(maxValue) || isNaN(value) || value < maxValue) {\n onIncrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onIncrement, maxValue, value]\n );\n\n const onDecrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n onDecrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(minValue) || isNaN(value) || value > minValue) {\n onDecrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onDecrement, minValue, value]\n );\n\n return {\n spinButtonProps: {\n role: 'spinbutton',\n 'aria-valuenow': !isNaN(value) ? value : null,\n 'aria-valuetext': textValue,\n 'aria-valuemin': minValue,\n 'aria-valuemax': maxValue,\n 'aria-disabled': isDisabled || null,\n 'aria-readonly': isReadOnly || null,\n 'aria-required': isRequired || null,\n onKeyDown,\n onFocus,\n onBlur\n },\n incrementButtonProps: {\n onPressStart: () => onIncrementPressStart(400),\n onPressEnd: clearAsync,\n onFocus,\n onBlur\n },\n decrementButtonProps: {\n onPressStart: () => onDecrementPressStart(400),\n onPressEnd: clearAsync,\n onFocus,\n onBlur\n }\n };\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"Empty\": \"فارغ\"\n}\n","{\n \"Empty\": \"Изпразни\"\n}\n","{\n \"Empty\": \"Prázdné\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leer\"\n}\n","{\n \"Empty\": \"Άδειο\"\n}\n","{\n \"Empty\": \"Empty\"\n}\n","{\n \"Empty\": \"Vacío\"\n}\n","{\n \"Empty\": \"Tühjenda\"\n}\n","{\n \"Empty\": \"Tyhjä\"\n}\n","{\n \"Empty\": \"Vide\"\n}\n","{\n \"Empty\": \"ריק\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Üres\"\n}\n","{\n \"Empty\": \"Vuoto\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"비어 있음\"\n}\n","{\n \"Empty\": \"Tuščias\"\n}\n","{\n \"Empty\": \"Tukšs\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leeg\"\n}\n","{\n \"Empty\": \"Pusty\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Gol\"\n}\n","{\n \"Empty\": \"Не заполнено\"\n}\n","{\n \"Empty\": \"Prázdne\"\n}\n","{\n \"Empty\": \"Prazen\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Tomt\"\n}\n","{\n \"Empty\": \"Boş\"\n}\n","{\n \"Empty\": \"Пусто\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"空白\"\n}\n"],"names":[],"version":3,"file":"module.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-aria/spinbutton/src/index.ts","packages/@react-aria/spinbutton/src/useSpinButton.ts","packages/@react-aria/spinbutton/intl/*.js","packages/@react-aria/spinbutton/intl/ar-AE.json","packages/@react-aria/spinbutton/intl/bg-BG.json","packages/@react-aria/spinbutton/intl/cs-CZ.json","packages/@react-aria/spinbutton/intl/da-DK.json","packages/@react-aria/spinbutton/intl/de-DE.json","packages/@react-aria/spinbutton/intl/el-GR.json","packages/@react-aria/spinbutton/intl/en-US.json","packages/@react-aria/spinbutton/intl/es-ES.json","packages/@react-aria/spinbutton/intl/et-EE.json","packages/@react-aria/spinbutton/intl/fi-FI.json","packages/@react-aria/spinbutton/intl/fr-FR.json","packages/@react-aria/spinbutton/intl/he-IL.json","packages/@react-aria/spinbutton/intl/hr-HR.json","packages/@react-aria/spinbutton/intl/hu-HU.json","packages/@react-aria/spinbutton/intl/it-IT.json","packages/@react-aria/spinbutton/intl/ja-JP.json","packages/@react-aria/spinbutton/intl/ko-KR.json","packages/@react-aria/spinbutton/intl/lt-LT.json","packages/@react-aria/spinbutton/intl/lv-LV.json","packages/@react-aria/spinbutton/intl/nb-NO.json","packages/@react-aria/spinbutton/intl/nl-NL.json","packages/@react-aria/spinbutton/intl/pl-PL.json","packages/@react-aria/spinbutton/intl/pt-BR.json","packages/@react-aria/spinbutton/intl/pt-PT.json","packages/@react-aria/spinbutton/intl/ro-RO.json","packages/@react-aria/spinbutton/intl/ru-RU.json","packages/@react-aria/spinbutton/intl/sk-SK.json","packages/@react-aria/spinbutton/intl/sl-SI.json","packages/@react-aria/spinbutton/intl/sr-SP.json","packages/@react-aria/spinbutton/intl/sv-SE.json","packages/@react-aria/spinbutton/intl/tr-TR.json","packages/@react-aria/spinbutton/intl/uk-UA.json","packages/@react-aria/spinbutton/intl/zh-CN.json","packages/@react-aria/spinbutton/intl/zh-TW.json"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useSpinButton';\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {announce} from '@react-aria/live-announcer';\nimport {AriaButtonProps} from '@react-types/button';\nimport {HTMLAttributes, useCallback, useEffect, useRef} from 'react';\nimport {InputBase, RangeInputBase, Validation, ValueBase} from '@react-types/shared';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {useMessageFormatter} from '@react-aria/i18n';\n\n\nexport interface SpinButtonProps extends InputBase, Validation, ValueBase<number>, RangeInputBase<number> {\n textValue?: string,\n onIncrement?: () => void,\n onIncrementPage?: () => void,\n onDecrement?: () => void,\n onDecrementPage?: () => void,\n onDecrementToMin?: () => void,\n onIncrementToMax?: () => void\n}\n\nexport interface SpinbuttonAria {\n spinButtonProps: HTMLAttributes<HTMLDivElement>,\n incrementButtonProps: AriaButtonProps,\n decrementButtonProps: AriaButtonProps\n}\n\nexport function useSpinButton(\n props: SpinButtonProps\n): SpinbuttonAria {\n const _async = useRef<number>();\n let {\n value,\n textValue,\n minValue,\n maxValue,\n isDisabled,\n isReadOnly,\n isRequired,\n onIncrement,\n onIncrementPage,\n onDecrement,\n onDecrementPage,\n onDecrementToMin,\n onIncrementToMax\n } = props;\n const formatMessage = useMessageFormatter(intlMessages);\n const propsRef = useRef(props);\n propsRef.current = props;\n\n const clearAsync = () => clearTimeout(_async.current);\n\n // eslint-disable-next-line arrow-body-style\n useEffect(() => {\n return () => clearAsync();\n }, []);\n\n let onKeyDown = (e) => {\n if (e.ctrlKey || e.metaKey || e.shiftKey || e.altKey || isReadOnly) {\n return;\n }\n\n switch (e.key) {\n case 'PageUp':\n if (onIncrementPage) {\n e.preventDefault();\n onIncrementPage();\n break;\n }\n // fallthrough!\n case 'ArrowUp':\n case 'Up':\n if (onIncrement) {\n e.preventDefault();\n onIncrement();\n }\n break;\n case 'PageDown':\n if (onDecrementPage) {\n e.preventDefault();\n onDecrementPage();\n break;\n }\n // fallthrough\n case 'ArrowDown':\n case 'Down':\n if (onDecrement) {\n e.preventDefault();\n onDecrement();\n }\n break;\n case 'Home':\n if (onDecrementToMin) {\n e.preventDefault();\n onDecrementToMin();\n }\n break;\n case 'End':\n if (onIncrementToMax) {\n e.preventDefault();\n onIncrementToMax();\n }\n break;\n }\n };\n\n let isFocused = useRef(false);\n let onFocus = () => {\n isFocused.current = true;\n };\n\n let onBlur = () => {\n isFocused.current = false;\n };\n\n // Replace Unicode hyphen-minus (U+002D) with minus sign (U+2212).\n // This ensures that macOS VoiceOver announces it as \"minus\" even with other characters between the minus sign\n // and the number (e.g. currency symbol). Otherwise it announces nothing because it assumes the character is a hyphen.\n // In addition, replace the empty string with the word \"Empty\" so that iOS VoiceOver does not read \"50%\" for an empty field.\n textValue = textValue === '' ? formatMessage('Empty') : (textValue || `${value}`).replace('-', '\\u2212');\n\n useEffect(() => {\n if (isFocused.current) {\n announce(textValue, 'assertive');\n }\n }, [textValue]);\n\n const onIncrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n propsRef.current.onIncrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(maxValue) || isNaN(value) || value < maxValue) {\n onIncrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onIncrement, maxValue, value]\n );\n\n const onDecrementPressStart = useCallback(\n (initialStepDelay: number) => {\n clearAsync();\n propsRef.current.onDecrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(\n () => {\n if (isNaN(minValue) || isNaN(value) || value > minValue) {\n onDecrementPressStart(60);\n }\n },\n initialStepDelay\n );\n },\n [onDecrement, minValue, value]\n );\n\n let cancelContextMenu = (e) => {\n e.preventDefault();\n };\n\n return {\n spinButtonProps: {\n role: 'spinbutton',\n 'aria-valuenow': !isNaN(value) ? value : null,\n 'aria-valuetext': textValue,\n 'aria-valuemin': minValue,\n 'aria-valuemax': maxValue,\n 'aria-disabled': isDisabled || null,\n 'aria-readonly': isReadOnly || null,\n 'aria-required': isRequired || null,\n onKeyDown,\n onFocus,\n onBlur\n },\n incrementButtonProps: {\n onPressStart: () => {\n onIncrementPressStart(400);\n window.addEventListener('contextmenu', cancelContextMenu);\n },\n onPressEnd: () => {\n clearAsync();\n window.removeEventListener('contextmenu', cancelContextMenu);\n },\n onFocus,\n onBlur\n },\n decrementButtonProps: {\n onPressStart: () => {\n onDecrementPressStart(400);\n window.addEventListener('contextmenu', cancelContextMenu);\n },\n onPressEnd: () => {\n clearAsync();\n window.removeEventListener('contextmenu', cancelContextMenu);\n },\n onFocus,\n onBlur\n }\n };\n}\n","const _temp0 = require(\"./ar-AE.json\");\nconst _temp1 = require(\"./bg-BG.json\");\nconst _temp2 = require(\"./cs-CZ.json\");\nconst _temp3 = require(\"./da-DK.json\");\nconst _temp4 = require(\"./de-DE.json\");\nconst _temp5 = require(\"./el-GR.json\");\nconst _temp6 = require(\"./en-US.json\");\nconst _temp7 = require(\"./es-ES.json\");\nconst _temp8 = require(\"./et-EE.json\");\nconst _temp9 = require(\"./fi-FI.json\");\nconst _temp10 = require(\"./fr-FR.json\");\nconst _temp11 = require(\"./he-IL.json\");\nconst _temp12 = require(\"./hr-HR.json\");\nconst _temp13 = require(\"./hu-HU.json\");\nconst _temp14 = require(\"./it-IT.json\");\nconst _temp15 = require(\"./ja-JP.json\");\nconst _temp16 = require(\"./ko-KR.json\");\nconst _temp17 = require(\"./lt-LT.json\");\nconst _temp18 = require(\"./lv-LV.json\");\nconst _temp19 = require(\"./nb-NO.json\");\nconst _temp20 = require(\"./nl-NL.json\");\nconst _temp21 = require(\"./pl-PL.json\");\nconst _temp22 = require(\"./pt-BR.json\");\nconst _temp23 = require(\"./pt-PT.json\");\nconst _temp24 = require(\"./ro-RO.json\");\nconst _temp25 = require(\"./ru-RU.json\");\nconst _temp26 = require(\"./sk-SK.json\");\nconst _temp27 = require(\"./sl-SI.json\");\nconst _temp28 = require(\"./sr-SP.json\");\nconst _temp29 = require(\"./sv-SE.json\");\nconst _temp30 = require(\"./tr-TR.json\");\nconst _temp31 = require(\"./uk-UA.json\");\nconst _temp32 = require(\"./zh-CN.json\");\nconst _temp33 = require(\"./zh-TW.json\");\nmodule.exports = {\n \"ar-AE\": _temp0,\n \"bg-BG\": _temp1,\n \"cs-CZ\": _temp2,\n \"da-DK\": _temp3,\n \"de-DE\": _temp4,\n \"el-GR\": _temp5,\n \"en-US\": _temp6,\n \"es-ES\": _temp7,\n \"et-EE\": _temp8,\n \"fi-FI\": _temp9,\n \"fr-FR\": _temp10,\n \"he-IL\": _temp11,\n \"hr-HR\": _temp12,\n \"hu-HU\": _temp13,\n \"it-IT\": _temp14,\n \"ja-JP\": _temp15,\n \"ko-KR\": _temp16,\n \"lt-LT\": _temp17,\n \"lv-LV\": _temp18,\n \"nb-NO\": _temp19,\n \"nl-NL\": _temp20,\n \"pl-PL\": _temp21,\n \"pt-BR\": _temp22,\n \"pt-PT\": _temp23,\n \"ro-RO\": _temp24,\n \"ru-RU\": _temp25,\n \"sk-SK\": _temp26,\n \"sl-SI\": _temp27,\n \"sr-SP\": _temp28,\n \"sv-SE\": _temp29,\n \"tr-TR\": _temp30,\n \"uk-UA\": _temp31,\n \"zh-CN\": _temp32,\n \"zh-TW\": _temp33\n}","{\n \"Empty\": \"فارغ\"\n}\n","{\n \"Empty\": \"Изпразни\"\n}\n","{\n \"Empty\": \"Prázdné\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leer\"\n}\n","{\n \"Empty\": \"Άδειο\"\n}\n","{\n \"Empty\": \"Empty\"\n}\n","{\n \"Empty\": \"Vacío\"\n}\n","{\n \"Empty\": \"Tühjenda\"\n}\n","{\n \"Empty\": \"Tyhjä\"\n}\n","{\n \"Empty\": \"Vide\"\n}\n","{\n \"Empty\": \"ריק\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Üres\"\n}\n","{\n \"Empty\": \"Vuoto\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"비어 있음\"\n}\n","{\n \"Empty\": \"Tuščias\"\n}\n","{\n \"Empty\": \"Tukšs\"\n}\n","{\n \"Empty\": \"Tom\"\n}\n","{\n \"Empty\": \"Leeg\"\n}\n","{\n \"Empty\": \"Pusty\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Vazio\"\n}\n","{\n \"Empty\": \"Gol\"\n}\n","{\n \"Empty\": \"Не заполнено\"\n}\n","{\n \"Empty\": \"Prázdne\"\n}\n","{\n \"Empty\": \"Prazen\"\n}\n","{\n \"Empty\": \"Prazno\"\n}\n","{\n \"Empty\": \"Tomt\"\n}\n","{\n \"Empty\": \"Boş\"\n}\n","{\n \"Empty\": \"Пусто\"\n}\n","{\n \"Empty\": \"空\"\n}\n","{\n \"Empty\": \"空白\"\n}\n"],"names":[],"version":3,"file":"module.js.map"}
@@ -1 +1 @@
1
- {"mappings":";;;AAqBA,gCAAiC,SAAQ,SAAS,EAAE,UAAU,EAAE,UAAU,MAAM,CAAC,EAAE,eAAe,MAAM,CAAC;IACvG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B;AAED;IACE,eAAe,EAAE,eAAe,cAAc,CAAC,CAAC;IAChD,oBAAoB,EAAE,eAAe,CAAC;IACtC,oBAAoB,EAAE,eAAe,CAAA;CACtC;AAED,8BACE,KAAK,EAAE,eAAe,GACrB,cAAc,CA6JhB","sources":["packages/@react-aria/spinbutton/src/packages/@react-aria/spinbutton/src/useSpinButton.ts","packages/@react-aria/spinbutton/src/packages/@react-aria/spinbutton/src/index.ts","packages/@react-aria/spinbutton/src/index.ts"],"sourcesContent":[null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useSpinButton';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
1
+ {"mappings":";;;AAqBA,gCAAiC,SAAQ,SAAS,EAAE,UAAU,EAAE,UAAU,MAAM,CAAC,EAAE,eAAe,MAAM,CAAC;IACvG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;CAC9B;AAED;IACE,eAAe,EAAE,eAAe,cAAc,CAAC,CAAC;IAChD,oBAAoB,EAAE,eAAe,CAAC;IACtC,oBAAoB,EAAE,eAAe,CAAA;CACtC;AAED,8BACE,KAAK,EAAE,eAAe,GACrB,cAAc,CA+KhB","sources":["packages/@react-aria/spinbutton/src/packages/@react-aria/spinbutton/src/useSpinButton.ts","packages/@react-aria/spinbutton/src/packages/@react-aria/spinbutton/src/index.ts","packages/@react-aria/spinbutton/src/index.ts"],"sourcesContent":[null,null,"/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nexport * from './useSpinButton';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-aria/spinbutton",
3
- "version": "3.0.0-nightly.1356+87960ad25",
3
+ "version": "3.0.0-nightly.1375+10e57d449",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -18,11 +18,11 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@babel/runtime": "^7.6.2",
21
- "@react-aria/i18n": "3.0.0-nightly.1356+87960ad25",
22
- "@react-aria/live-announcer": "3.0.0-nightly.1356+87960ad25",
23
- "@react-aria/utils": "3.0.0-nightly.1356+87960ad25",
24
- "@react-types/button": "3.4.2-nightly.3047+87960ad25",
25
- "@react-types/shared": "3.0.0-nightly.1356+87960ad25"
21
+ "@react-aria/i18n": "3.0.0-nightly.1375+10e57d449",
22
+ "@react-aria/live-announcer": "3.0.0-nightly.1375+10e57d449",
23
+ "@react-aria/utils": "3.0.0-nightly.1375+10e57d449",
24
+ "@react-types/button": "3.4.2-nightly.3066+10e57d449",
25
+ "@react-types/shared": "3.0.0-nightly.1375+10e57d449"
26
26
  },
27
27
  "peerDependencies": {
28
28
  "react": "^16.8.0 || ^17.0.0-rc.1",
@@ -31,5 +31,5 @@
31
31
  "publishConfig": {
32
32
  "access": "public"
33
33
  },
34
- "gitHead": "87960ad25c26bc4cd6af506bb5e7e0f06621556c"
34
+ "gitHead": "10e57d449dde2ae6bd095a63a8339e1d4c61cf59"
35
35
  }
@@ -55,6 +55,8 @@ export function useSpinButton(
55
55
  onIncrementToMax
56
56
  } = props;
57
57
  const formatMessage = useMessageFormatter(intlMessages);
58
+ const propsRef = useRef(props);
59
+ propsRef.current = props;
58
60
 
59
61
  const clearAsync = () => clearTimeout(_async.current);
60
62
 
@@ -136,7 +138,7 @@ export function useSpinButton(
136
138
  const onIncrementPressStart = useCallback(
137
139
  (initialStepDelay: number) => {
138
140
  clearAsync();
139
- onIncrement();
141
+ propsRef.current.onIncrement();
140
142
  // Start spinning after initial delay
141
143
  _async.current = window.setTimeout(
142
144
  () => {
@@ -153,7 +155,7 @@ export function useSpinButton(
153
155
  const onDecrementPressStart = useCallback(
154
156
  (initialStepDelay: number) => {
155
157
  clearAsync();
156
- onDecrement();
158
+ propsRef.current.onDecrement();
157
159
  // Start spinning after initial delay
158
160
  _async.current = window.setTimeout(
159
161
  () => {
@@ -167,6 +169,10 @@ export function useSpinButton(
167
169
  [onDecrement, minValue, value]
168
170
  );
169
171
 
172
+ let cancelContextMenu = (e) => {
173
+ e.preventDefault();
174
+ };
175
+
170
176
  return {
171
177
  spinButtonProps: {
172
178
  role: 'spinbutton',
@@ -182,14 +188,26 @@ export function useSpinButton(
182
188
  onBlur
183
189
  },
184
190
  incrementButtonProps: {
185
- onPressStart: () => onIncrementPressStart(400),
186
- onPressEnd: clearAsync,
191
+ onPressStart: () => {
192
+ onIncrementPressStart(400);
193
+ window.addEventListener('contextmenu', cancelContextMenu);
194
+ },
195
+ onPressEnd: () => {
196
+ clearAsync();
197
+ window.removeEventListener('contextmenu', cancelContextMenu);
198
+ },
187
199
  onFocus,
188
200
  onBlur
189
201
  },
190
202
  decrementButtonProps: {
191
- onPressStart: () => onDecrementPressStart(400),
192
- onPressEnd: clearAsync,
203
+ onPressStart: () => {
204
+ onDecrementPressStart(400);
205
+ window.addEventListener('contextmenu', cancelContextMenu);
206
+ },
207
+ onPressEnd: () => {
208
+ clearAsync();
209
+ window.removeEventListener('contextmenu', cancelContextMenu);
210
+ },
193
211
  onFocus,
194
212
  onBlur
195
213
  }