MCPcopy Create free account
hub / github.com/adobe/react-spectrum / backspace

Function backspace

packages/react-aria/src/datepicker/useDateSegment.ts:110–127  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

108 let parser = useMemo(() => new NumberParser(locale, {maximumFractionDigits: 0}), [locale]);
109
110 let backspace = () => {
111 if (segment.text === segment.placeholder) {
112 focusManager.focusPrevious();
113 }
114 if (parser.isValidPartialNumber(segment.text) && !state.isReadOnly && !segment.isPlaceholder) {
115 let newValue = segment.text.slice(0, -1);
116 let parsed = parser.parse(newValue);
117 newValue = parsed === 0 ? '' : newValue;
118 if (newValue.length === 0 || parsed === 0) {
119 state.clearSegment(segment.type);
120 } else {
121 state.setSegment(segment.type, parsed);
122 }
123 enteredKeys.current = newValue;
124 } else if (segment.type === 'dayPeriod' || segment.type === 'era') {
125 state.clearSegment(segment.type);
126 }
127 };
128
129 let {keyboardProps} = useKeyboard({
130 shortcuts: {

Callers 1

useDateSegmentFunction · 0.85

Calls 6

sliceMethod · 0.80
clearSegmentMethod · 0.80
setSegmentMethod · 0.80
focusPreviousMethod · 0.65
isValidPartialNumberMethod · 0.45
parseMethod · 0.45

Tested by

no test coverage detected