@multiplatform.one/forms 7.41.0 → 7.42.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/dist/cjs/AdaptivePopup/index.native.js +1 -1
- package/dist/cjs/AdaptivePopup/index.native.js.map +1 -1
- package/dist/cjs/Button/index.native.js +1 -1
- package/dist/cjs/Button/index.native.js.map +1 -1
- package/dist/cjs/Chip/index.native.js.map +1 -1
- package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js +1 -1
- package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
- package/dist/cjs/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
- package/dist/cjs/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
- package/dist/cjs/ContextualSaveBar/index.native.js +3 -3
- package/dist/cjs/ContextualSaveBar/index.native.js.map +1 -1
- package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
- package/dist/cjs/ControlGroup/index.native.js +1 -1
- package/dist/cjs/ControlGroup/index.native.js.map +1 -1
- package/dist/cjs/DescriptionList/index.native.js +2 -2
- package/dist/cjs/DescriptionList/index.native.js.map +1 -1
- package/dist/cjs/ErrorSummary.native.js.map +1 -1
- package/dist/cjs/FieldDisplay/editMode.native.js.map +1 -1
- package/dist/cjs/FieldDisplay/formatters.native.js.map +1 -1
- package/dist/cjs/FieldDisplay/index.native.js +1 -1
- package/dist/cjs/FieldDisplay/index.native.js.map +1 -1
- package/dist/cjs/FieldGroup.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/nestedAction.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/pointAnchor.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/cjs/Form/index.cjs +25 -22
- package/dist/cjs/Form/index.native.js +28 -25
- package/dist/cjs/Form/index.native.js.map +1 -1
- package/dist/cjs/Form/submissionController.native.js.map +1 -1
- package/dist/cjs/Form/validateOn.native.js.map +1 -1
- package/dist/cjs/FormGrid.native.js.map +1 -1
- package/dist/cjs/FormSection.native.js.map +1 -1
- package/dist/cjs/InputParts/index.cjs +16 -7
- package/dist/cjs/InputParts/index.native.js +16 -7
- package/dist/cjs/InputParts/index.native.js.map +1 -1
- package/dist/cjs/Label/index.native.js.map +1 -1
- package/dist/cjs/MediaPicker/base64.native.js.map +1 -1
- package/dist/cjs/MediaPicker/payload.native.js.map +1 -1
- package/dist/cjs/MediaPicker/types.native.js.map +1 -1
- package/dist/cjs/MediaPicker/useMediaPicker.native.js.map +1 -1
- package/dist/cjs/Skeleton/index.native.js.map +1 -1
- package/dist/cjs/Spinner/SpinnerGlyph.native.js.map +1 -1
- package/dist/cjs/Spinner/spinnerSize.native.js.map +1 -1
- package/dist/cjs/Table/index.native.js.map +1 -1
- package/dist/cjs/Wheel/haptic.native.js.map +1 -1
- package/dist/cjs/Wheel/index.native.js.map +1 -1
- package/dist/cjs/Wheel/wheelShared.native.js.map +1 -1
- package/dist/cjs/actionLabel.native.js.map +1 -1
- package/dist/cjs/fieldDefaults.native.js.map +1 -1
- package/dist/cjs/fieldLayout.native.js +1 -1
- package/dist/cjs/fieldLayout.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/BarcodePreview.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/BarcodeScanner.native.js +1 -1
- package/dist/cjs/fields/Barcode/code128.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/index.native.js +2 -2
- package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/qr.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/scannerTypes.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/Checkbox.native.js +1 -1
- package/dist/cjs/fields/Checkbox/Checkbox.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxBox.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxCard.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/index.native.js.map +1 -1
- package/dist/cjs/fields/ColorPicker/index.native.js +3 -3
- package/dist/cjs/fields/ColorPicker/index.native.js.map +1 -1
- package/dist/cjs/fields/ColorPicker/parts.native.js +2 -2
- package/dist/cjs/fields/ColorPicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/Combobox/authorOptions.native.js.map +1 -1
- package/dist/cjs/fields/Combobox/index.native.js +6 -6
- package/dist/cjs/fields/Combobox/index.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/Calendar.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +2 -2
- package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +3 -3
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +2 -2
- package/dist/cjs/fields/DatePicker/MonthPicker.native.js +2 -2
- package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +2 -2
- package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/catalog.native.js +2 -2
- package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/fieldValueSync.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/index.native.js +2 -2
- package/dist/cjs/fields/DatePicker/parts.native.js +2 -2
- package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/utils.native.js.map +1 -1
- package/dist/cjs/fields/Duration/durationMath.native.js.map +1 -1
- package/dist/cjs/fields/Duration/index.native.js +3 -3
- package/dist/cjs/fields/Duration/index.native.js.map +1 -1
- package/dist/cjs/fields/FileUpload/filePickerTypes.native.js.map +1 -1
- package/dist/cjs/fields/FileUpload/index.native.js +2 -2
- package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
- package/dist/cjs/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/geoValue.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/geocoder.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/geocoderContext.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/index.native.js +5 -5
- package/dist/cjs/fields/Geolocation/index.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/mapMath.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/mapTypes.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
- package/dist/cjs/fields/Geolocation/photonGeocoder.native.js.map +1 -1
- package/dist/cjs/fields/Icon/drawnSet.native.js.map +1 -1
- package/dist/cjs/fields/Icon/index.native.js +3 -3
- package/dist/cjs/fields/Icon/index.native.js.map +1 -1
- package/dist/cjs/fields/ImageField/index.native.js +2 -2
- package/dist/cjs/fields/ImageField/index.native.js.map +1 -1
- package/dist/cjs/fields/Input/index.cjs +40 -23
- package/dist/cjs/fields/Input/index.native.js +44 -27
- package/dist/cjs/fields/Input/index.native.js.map +1 -1
- package/dist/cjs/fields/MentionInput/index.native.js +3 -3
- package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
- package/dist/cjs/fields/OTPInput/index.native.js +3 -3
- package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
- package/dist/cjs/fields/OTPInput/otpCellCss.native.js.map +1 -1
- package/dist/cjs/fields/PhoneInput/dialCodes.native.js.map +1 -1
- package/dist/cjs/fields/PhoneInput/index.native.js +3 -3
- package/dist/cjs/fields/PhoneInput/index.native.js.map +1 -1
- package/dist/cjs/fields/PhoneInput/phone.native.js.map +1 -1
- package/dist/cjs/fields/PhoneInput/regionNames.native.js.map +1 -1
- package/dist/cjs/fields/Progress/index.native.js +1 -1
- package/dist/cjs/fields/Progress/index.native.js.map +1 -1
- package/dist/cjs/fields/RadioGroup/index.native.js +1 -1
- package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/Rating/index.native.js +1 -1
- package/dist/cjs/fields/Rating/index.native.js.map +1 -1
- package/dist/cjs/fields/Rating/ratingMath.native.js.map +1 -1
- package/dist/cjs/fields/Rating/types.native.js.map +1 -1
- package/dist/cjs/fields/SearchInput/index.native.js +2 -2
- package/dist/cjs/fields/SearchInput/index.native.js.map +1 -1
- package/dist/cjs/fields/Select/index.native.js +4 -4
- package/dist/cjs/fields/Select/index.native.js.map +1 -1
- package/dist/cjs/fields/Signature/index.native.js +2 -2
- package/dist/cjs/fields/Signature/index.native.js.map +1 -1
- package/dist/cjs/fields/Slider/index.native.js +1 -1
- package/dist/cjs/fields/Slider/index.native.js.map +1 -1
- package/dist/cjs/fields/Slider/jumpMotion.native.js.map +1 -1
- package/dist/cjs/fields/Stepper/index.native.js +2 -2
- package/dist/cjs/fields/Stepper/index.native.js.map +1 -1
- package/dist/cjs/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
- package/dist/cjs/fields/Switch/footprint.native.js.map +1 -1
- package/dist/cjs/fields/Switch/index.native.js +2 -2
- package/dist/cjs/fields/Switch/index.native.js.map +1 -1
- package/dist/cjs/fields/TextArea/index.native.js +2 -2
- package/dist/cjs/fields/TextArea/index.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/catalog.native.js +3 -3
- package/dist/cjs/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/index.native.js +2 -2
- package/dist/cjs/fields/TimePicker/parts.native.js +1 -1
- package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
- package/dist/cjs/fields/TimeRangeScrubber/index.native.js +2 -2
- package/dist/cjs/fields/TimeRangeScrubber/index.native.js.map +1 -1
- package/dist/cjs/fields/ToggleGroup/index.native.js +1 -1
- package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
- package/dist/cjs/fields/nativeDateTime/dateTimePickerLoader.native.js.map +1 -1
- package/dist/cjs/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
- package/dist/cjs/fields/nativeSelect.native.js.map +1 -1
- package/dist/cjs/fields/selectedOrder.native.js.map +1 -1
- package/dist/cjs/formSpacing.native.js.map +1 -1
- package/dist/cjs/hooks/useFocusManagement.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -0
- package/dist/cjs/index.native.js +50 -43
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/keyboard/KeyboardDoneBar.cjs +30 -0
- package/dist/cjs/keyboard/KeyboardDoneBar.native.js +65 -0
- package/dist/cjs/keyboard/KeyboardDoneBar.native.js.map +1 -0
- package/dist/cjs/keyboard/chain.cjs +106 -0
- package/dist/cjs/keyboard/chain.native.js +203 -0
- package/dist/cjs/keyboard/chain.native.js.map +1 -0
- package/dist/cjs/keyboard/index.cjs +35 -0
- package/dist/cjs/keyboard/index.native.js +38 -0
- package/dist/cjs/keyboard/index.native.js.map +1 -0
- package/dist/cjs/keyboard/types.cjs +18 -0
- package/dist/cjs/keyboard/types.native.js +21 -0
- package/dist/cjs/keyboard/types.native.js.map +1 -0
- package/dist/cjs/keyboard/useKeyboardChain.cjs +33 -0
- package/dist/cjs/keyboard/useKeyboardChain.native.js +114 -0
- package/dist/cjs/keyboard/useKeyboardChain.native.js.map +1 -0
- package/dist/cjs/requiredMarking.native.js.map +1 -1
- package/dist/cjs/shared/TimeColumn.native.js +1 -1
- package/dist/cjs/shared/TimeColumn.native.js.map +1 -1
- package/dist/cjs/shared/capabilityPreflight.native.js.map +1 -1
- package/dist/cjs/shared/colorRamps.native.js.map +1 -1
- package/dist/cjs/shared/devWarn.native.js.map +1 -1
- package/dist/cjs/shared/floatingList.native.js +1 -1
- package/dist/cjs/shared/floatingList.native.js.map +1 -1
- package/dist/cjs/shared/focusManagement.native.js.map +1 -1
- package/dist/cjs/shared/groupContext.native.js.map +1 -1
- package/dist/cjs/shared/i18n.native.js.map +1 -1
- package/dist/cjs/shared/instantMotion.native.js.map +1 -1
- package/dist/cjs/shared/nativeA11y.native.js.map +1 -1
- package/dist/cjs/shared/panelPortal.native.js.map +1 -1
- package/dist/cjs/shared/pickerTriggerContract.native.js.map +1 -1
- package/dist/cjs/shared/pressSlopProps.native.js.map +1 -1
- package/dist/cjs/shared/t.native.js.map +1 -1
- package/dist/cjs/shared/tableCellContext.native.js.map +1 -1
- package/dist/cjs/shared/useDragScroll.native.js.map +1 -1
- package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -1
- package/dist/cjs/shared/useSheetEscapeDismiss.native.js.map +1 -1
- package/dist/cjs/shared/useWheelIncrement.native.js.map +1 -1
- package/dist/cjs/shared/utils.native.js +1 -1
- package/dist/cjs/shared/utils.native.js.map +1 -1
- package/dist/cjs/shared/zIndex.native.js.map +1 -1
- package/dist/cjs/themedPrimitives.native.js.map +1 -1
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/utils/LinkCell.native.js.map +1 -1
- package/dist/esm/Form/index.mjs +25 -22
- package/dist/esm/Form/index.mjs.map +1 -1
- package/dist/esm/Form/index.native.js +27 -24
- package/dist/esm/Form/index.native.js.map +1 -1
- package/dist/esm/InputParts/index.mjs +16 -7
- package/dist/esm/InputParts/index.mjs.map +1 -1
- package/dist/esm/InputParts/index.native.js +16 -7
- package/dist/esm/InputParts/index.native.js.map +1 -1
- package/dist/esm/fields/Input/index.mjs +41 -24
- package/dist/esm/fields/Input/index.mjs.map +1 -1
- package/dist/esm/fields/Input/index.native.js +43 -26
- package/dist/esm/fields/Input/index.native.js.map +1 -1
- package/dist/esm/index.mjs +2 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/keyboard/KeyboardDoneBar.mjs +5 -0
- package/dist/esm/keyboard/KeyboardDoneBar.mjs.map +1 -0
- package/dist/esm/keyboard/KeyboardDoneBar.native.js +37 -0
- package/dist/esm/keyboard/KeyboardDoneBar.native.js.map +1 -0
- package/dist/esm/keyboard/chain.mjs +78 -0
- package/dist/esm/keyboard/chain.mjs.map +1 -0
- package/dist/esm/keyboard/chain.native.js +172 -0
- package/dist/esm/keyboard/chain.native.js.map +1 -0
- package/dist/esm/keyboard/index.mjs +5 -0
- package/dist/esm/keyboard/index.mjs.map +1 -0
- package/dist/esm/keyboard/index.native.js +5 -0
- package/dist/esm/keyboard/index.native.js.map +1 -0
- package/dist/esm/keyboard/types.mjs +2 -0
- package/dist/esm/keyboard/types.mjs.map +1 -0
- package/dist/esm/keyboard/types.native.js +2 -0
- package/dist/esm/keyboard/types.native.js.map +1 -0
- package/dist/esm/keyboard/useKeyboardChain.mjs +8 -0
- package/dist/esm/keyboard/useKeyboardChain.mjs.map +1 -0
- package/dist/esm/keyboard/useKeyboardChain.native.js +86 -0
- package/dist/esm/keyboard/useKeyboardChain.native.js.map +1 -0
- package/dist/jsx/Form/index.mjs +25 -22
- package/dist/jsx/Form/index.mjs.map +1 -1
- package/dist/jsx/Form/index.native.js +27 -24
- package/dist/jsx/Form/index.native.js.map +1 -1
- package/dist/jsx/InputParts/index.mjs +16 -7
- package/dist/jsx/InputParts/index.mjs.map +1 -1
- package/dist/jsx/InputParts/index.native.js +16 -7
- package/dist/jsx/InputParts/index.native.js.map +1 -1
- package/dist/jsx/fields/Input/index.mjs +41 -24
- package/dist/jsx/fields/Input/index.mjs.map +1 -1
- package/dist/jsx/fields/Input/index.native.js +42 -25
- package/dist/jsx/fields/Input/index.native.js.map +1 -1
- package/dist/jsx/index.js +2 -1
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +2 -1
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +7 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/keyboard/KeyboardDoneBar.mjs +5 -0
- package/dist/jsx/keyboard/KeyboardDoneBar.mjs.map +1 -0
- package/dist/jsx/keyboard/KeyboardDoneBar.native.js +65 -0
- package/dist/jsx/keyboard/KeyboardDoneBar.native.js.map +1 -0
- package/dist/jsx/keyboard/chain.mjs +78 -0
- package/dist/jsx/keyboard/chain.mjs.map +1 -0
- package/dist/jsx/keyboard/chain.native.js +203 -0
- package/dist/jsx/keyboard/chain.native.js.map +1 -0
- package/dist/jsx/keyboard/index.mjs +5 -0
- package/dist/jsx/keyboard/index.mjs.map +1 -0
- package/dist/jsx/keyboard/index.native.js +38 -0
- package/dist/jsx/keyboard/index.native.js.map +1 -0
- package/dist/jsx/keyboard/types.mjs +2 -0
- package/dist/jsx/keyboard/types.mjs.map +1 -0
- package/dist/jsx/keyboard/types.native.js +21 -0
- package/dist/jsx/keyboard/types.native.js.map +1 -0
- package/dist/jsx/keyboard/useKeyboardChain.mjs +8 -0
- package/dist/jsx/keyboard/useKeyboardChain.mjs.map +1 -0
- package/dist/jsx/keyboard/useKeyboardChain.native.js +114 -0
- package/dist/jsx/keyboard/useKeyboardChain.native.js.map +1 -0
- package/package.json +8 -8
- package/src/Form/index.tsx +31 -26
- package/src/InputParts/index.tsx +20 -12
- package/src/fields/Input/index.tsx +53 -31
- package/src/index.ts +17 -0
- package/src/keyboard/KeyboardDoneBar.native.tsx +38 -0
- package/src/keyboard/KeyboardDoneBar.tsx +6 -0
- package/src/keyboard/chain.spec.ts +98 -0
- package/src/keyboard/chain.tsx +115 -0
- package/src/keyboard/index.ts +5 -0
- package/src/keyboard/types.ts +21 -0
- package/src/keyboard/useKeyboardChain.native.tsx +79 -0
- package/src/keyboard/useKeyboardChain.ts +6 -0
- package/types/Form/index.d.ts.map +1 -1
- package/types/InputParts/index.d.ts.map +1 -1
- package/types/fields/Input/index.d.ts.map +1 -1
- package/types/index.d.ts +2 -0
- package/types/index.d.ts.map +1 -1
- package/types/keyboard/KeyboardDoneBar.d.ts +4 -0
- package/types/keyboard/KeyboardDoneBar.d.ts.map +1 -0
- package/types/keyboard/KeyboardDoneBar.native.d.ts +8 -0
- package/types/keyboard/KeyboardDoneBar.native.d.ts.map +1 -0
- package/types/keyboard/chain.d.ts +48 -0
- package/types/keyboard/chain.d.ts.map +1 -0
- package/types/keyboard/index.d.ts +6 -0
- package/types/keyboard/index.d.ts.map +1 -0
- package/types/keyboard/types.d.ts +19 -0
- package/types/keyboard/types.d.ts.map +1 -0
- package/types/keyboard/useKeyboardChain.d.ts +4 -0
- package/types/keyboard/useKeyboardChain.d.ts.map +1 -0
- package/types/keyboard/useKeyboardChain.native.d.ts +3 -0
- package/types/keyboard/useKeyboardChain.native.d.ts.map +1 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var chain_exports = {};
|
|
26
|
+
__export(chain_exports, {
|
|
27
|
+
KeyboardChain: () => KeyboardChain,
|
|
28
|
+
KeyboardChainContext: () => KeyboardChainContext,
|
|
29
|
+
KeyboardChainScope: () => KeyboardChainScope,
|
|
30
|
+
readingOrder: () => readingOrder
|
|
31
|
+
});
|
|
32
|
+
module.exports = __toCommonJS(chain_exports);
|
|
33
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
34
|
+
var import_react = require("react");
|
|
35
|
+
function _class_call_check(instance, Constructor) {
|
|
36
|
+
if (!(instance instanceof Constructor)) {
|
|
37
|
+
throw new TypeError("Cannot call a class as a function");
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function _defineProperties(target, props) {
|
|
41
|
+
for (var i = 0; i < props.length; i++) {
|
|
42
|
+
var descriptor = props[i];
|
|
43
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
44
|
+
descriptor.configurable = true;
|
|
45
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
46
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
50
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
51
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
52
|
+
return Constructor;
|
|
53
|
+
}
|
|
54
|
+
function _define_property(obj, key, value) {
|
|
55
|
+
if (key in obj) {
|
|
56
|
+
Object.defineProperty(obj, key, {
|
|
57
|
+
value,
|
|
58
|
+
enumerable: true,
|
|
59
|
+
configurable: true,
|
|
60
|
+
writable: true
|
|
61
|
+
});
|
|
62
|
+
} else {
|
|
63
|
+
obj[key] = value;
|
|
64
|
+
}
|
|
65
|
+
return obj;
|
|
66
|
+
}
|
|
67
|
+
function readingOrder(boxes) {
|
|
68
|
+
return boxes.filter(function (box) {
|
|
69
|
+
return box.width > 0 || box.height > 0;
|
|
70
|
+
}).sort(function (a, b) {
|
|
71
|
+
var sameRow = Math.abs(a.y - b.y) < Math.min(a.height, b.height) / 2;
|
|
72
|
+
return sameRow ? a.x - b.x : a.y - b.y;
|
|
73
|
+
}).map(function (box) {
|
|
74
|
+
return box.id;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
var KeyboardChain = /* @__PURE__ */function () {
|
|
78
|
+
"use strict";
|
|
79
|
+
|
|
80
|
+
function KeyboardChain2() {
|
|
81
|
+
var _this = this;
|
|
82
|
+
_class_call_check(this, KeyboardChain2);
|
|
83
|
+
_define_property(this, "entries", /* @__PURE__ */new Map());
|
|
84
|
+
_define_property(this, "order", []);
|
|
85
|
+
_define_property(this, "listeners", /* @__PURE__ */new Set());
|
|
86
|
+
_define_property(this, "pending", false);
|
|
87
|
+
_define_property(this, "subscribe", function (listener) {
|
|
88
|
+
_this.listeners.add(listener);
|
|
89
|
+
return function () {
|
|
90
|
+
_this.listeners.delete(listener);
|
|
91
|
+
};
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
_create_class(KeyboardChain2, [{
|
|
95
|
+
key: "register",
|
|
96
|
+
value: function register(entry) {
|
|
97
|
+
var _this = this;
|
|
98
|
+
this.entries.set(entry.id, entry);
|
|
99
|
+
this.invalidate();
|
|
100
|
+
return function () {
|
|
101
|
+
_this.entries.delete(entry.id);
|
|
102
|
+
_this.invalidate();
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
}, {
|
|
106
|
+
/** A field that has not been measured yet reads as last, so it never claims "next" falsely. */
|
|
107
|
+
key: "isLast",
|
|
108
|
+
value: function isLast(id) {
|
|
109
|
+
var at = this.order.indexOf(id);
|
|
110
|
+
return at === -1 || at === this.order.length - 1;
|
|
111
|
+
}
|
|
112
|
+
}, {
|
|
113
|
+
key: "invalidate",
|
|
114
|
+
value: function invalidate() {
|
|
115
|
+
var _this = this;
|
|
116
|
+
if (this.pending) return;
|
|
117
|
+
this.pending = true;
|
|
118
|
+
void Promise.resolve().then(async function () {
|
|
119
|
+
_this.pending = false;
|
|
120
|
+
await _this.refresh();
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
}, {
|
|
124
|
+
/**
|
|
125
|
+
* Focus the field after `id`, or run onLast from the last one. Uses the
|
|
126
|
+
* order measured at layout, and measures first only for a field it has not
|
|
127
|
+
* placed yet.
|
|
128
|
+
*/
|
|
129
|
+
key: "advance",
|
|
130
|
+
value: function advance(id, onLast) {
|
|
131
|
+
var _this = this;
|
|
132
|
+
if (!this.order.includes(id)) {
|
|
133
|
+
void this.refresh().then(function (order) {
|
|
134
|
+
return _this.step(order, id, onLast);
|
|
135
|
+
});
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
this.step(this.order, id, onLast);
|
|
139
|
+
}
|
|
140
|
+
}, {
|
|
141
|
+
key: "step",
|
|
142
|
+
value: function step(order, id, onLast) {
|
|
143
|
+
var next = order[order.indexOf(id) + 1];
|
|
144
|
+
var entry = order.includes(id) && next ? this.entries.get(next) : void 0;
|
|
145
|
+
if (entry) entry.focus();else onLast();
|
|
146
|
+
}
|
|
147
|
+
}, {
|
|
148
|
+
key: "refresh",
|
|
149
|
+
value: async function refresh() {
|
|
150
|
+
var _this = this;
|
|
151
|
+
var boxes = await Promise.all([...this.entries.values()].map(function (entry) {
|
|
152
|
+
return new Promise(function (resolve) {
|
|
153
|
+
return entry.measure(resolve);
|
|
154
|
+
});
|
|
155
|
+
}));
|
|
156
|
+
var order = readingOrder(boxes.filter(function (box) {
|
|
157
|
+
return Boolean(box);
|
|
158
|
+
}));
|
|
159
|
+
var changed = order.length !== this.order.length || order.some(function (id, i) {
|
|
160
|
+
return id !== _this.order[i];
|
|
161
|
+
});
|
|
162
|
+
this.order = order;
|
|
163
|
+
var _iteratorNormalCompletion = true,
|
|
164
|
+
_didIteratorError = false,
|
|
165
|
+
_iteratorError = void 0;
|
|
166
|
+
if (changed) try {
|
|
167
|
+
for (var _iterator = this.listeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
168
|
+
var listener = _step.value;
|
|
169
|
+
listener();
|
|
170
|
+
}
|
|
171
|
+
} catch (err) {
|
|
172
|
+
_didIteratorError = true;
|
|
173
|
+
_iteratorError = err;
|
|
174
|
+
} finally {
|
|
175
|
+
try {
|
|
176
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
177
|
+
_iterator.return();
|
|
178
|
+
}
|
|
179
|
+
} finally {
|
|
180
|
+
if (_didIteratorError) {
|
|
181
|
+
throw _iteratorError;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
return order;
|
|
186
|
+
}
|
|
187
|
+
}]);
|
|
188
|
+
return KeyboardChain2;
|
|
189
|
+
}();
|
|
190
|
+
var KeyboardChainContext = /* @__PURE__ */(0, import_react.createContext)(new KeyboardChain());
|
|
191
|
+
function KeyboardChainScope(param) {
|
|
192
|
+
var {
|
|
193
|
+
children
|
|
194
|
+
} = param;
|
|
195
|
+
var [chain] = (0, import_react.useState)(function () {
|
|
196
|
+
return new KeyboardChain();
|
|
197
|
+
});
|
|
198
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(KeyboardChainContext.Provider, {
|
|
199
|
+
value: chain,
|
|
200
|
+
children
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=chain.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","chain_exports","KeyboardChain","KeyboardChainContext","KeyboardChainScope","readingOrder","module","exports","import_jsx_runtime","require","import_react","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","boxes","filter","box","width","height","sort","a","b","sameRow","Math","abs","y","min","x","map","id","KeyboardChain2","_this","Map"],"sources":["../../../src/keyboard/chain.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { KeyboardChain, KeyboardChainContext, KeyboardChainScope, readingOrder } from "./chain.mjs";
|
|
2
|
+
import { KeyboardDoneBar } from "./KeyboardDoneBar.mjs";
|
|
3
|
+
import { useKeyboardChain } from "./useKeyboardChain.mjs";
|
|
4
|
+
export { KeyboardChain, KeyboardChainContext, KeyboardChainScope, KeyboardDoneBar, readingOrder, useKeyboardChain };
|
|
5
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["KeyboardChain","KeyboardChainContext","KeyboardChainScope","readingOrder","KeyboardDoneBar","useKeyboardChain"],"sources":["../../../src/keyboard/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,EAAeC,oBAAA,EAAsBC,kBAAA,EAAoBC,YAAA,QAAoB;AAEtF,SAASC,eAAA,QAAuB;AAChC,SAASC,gBAAA,QAAwB","ignoreList":[]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var keyboard_exports = {};
|
|
26
|
+
__export(keyboard_exports, {
|
|
27
|
+
KeyboardChain: () => import_chain.KeyboardChain,
|
|
28
|
+
KeyboardChainContext: () => import_chain.KeyboardChainContext,
|
|
29
|
+
KeyboardChainScope: () => import_chain.KeyboardChainScope,
|
|
30
|
+
KeyboardDoneBar: () => import_KeyboardDoneBar.KeyboardDoneBar,
|
|
31
|
+
readingOrder: () => import_chain.readingOrder,
|
|
32
|
+
useKeyboardChain: () => import_useKeyboardChain.useKeyboardChain
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(keyboard_exports);
|
|
35
|
+
var import_chain = require("./chain.native.js");
|
|
36
|
+
var import_KeyboardDoneBar = require("./KeyboardDoneBar.native.js");
|
|
37
|
+
var import_useKeyboardChain = require("./useKeyboardChain.native.js");
|
|
38
|
+
//# sourceMappingURL=index.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor"],"sources":["../../../src/keyboard/index.ts"],"sourcesContent":[null],"mappings":"AAAA,YAAS;;AAET,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAAuB;AAChC,IAAAC,gBAAS,GAAAF,MAAA,CAAAG,wBAAwB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __copyProps = (to, from, except, desc) => {
|
|
8
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
9
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
10
|
+
get: () => from[key],
|
|
11
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
return to;
|
|
15
|
+
};
|
|
16
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
17
|
+
value: true
|
|
18
|
+
}), mod);
|
|
19
|
+
var types_exports = {};
|
|
20
|
+
module.exports = __toCommonJS(types_exports);
|
|
21
|
+
//# sourceMappingURL=types.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useKeyboardChain","_options","inputProps","accessory"],"sources":["../../../src/keyboard/useKeyboardChain.ts"],"sourcesContent":[null],"mappings":"AAGO,SAASA,iBAAiBC,QAAA,EAAsD;EACrF,OAAO;IAAEC,UAAA,EAAY,CAAC;IAAGC,SAAA,EAAW;EAAK;AAC3C","ignoreList":[]}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var useKeyboardChain_native_exports = {};
|
|
26
|
+
__export(useKeyboardChain_native_exports, {
|
|
27
|
+
useKeyboardChain: () => useKeyboardChain
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(useKeyboardChain_native_exports);
|
|
30
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
|
+
var import_react = require("react");
|
|
32
|
+
var import_react_native = require("react-native");
|
|
33
|
+
var import_chain = require("./chain.native.js");
|
|
34
|
+
var import_KeyboardDoneBar = require("./KeyboardDoneBar.native.js");
|
|
35
|
+
function useKeyboardChain(param) {
|
|
36
|
+
var {
|
|
37
|
+
inputRef,
|
|
38
|
+
enabled = true,
|
|
39
|
+
multiline,
|
|
40
|
+
onSubmitLast,
|
|
41
|
+
onSubmitEditing
|
|
42
|
+
} = param;
|
|
43
|
+
var chain = (0, import_react.useContext)(import_chain.KeyboardChainContext);
|
|
44
|
+
var id = (0, import_react.useId)();
|
|
45
|
+
var accessoryId = `mpo-keyboard-done${id}`;
|
|
46
|
+
var chained = enabled && !multiline;
|
|
47
|
+
var entry = (0, import_react.useMemo)(function () {
|
|
48
|
+
return {
|
|
49
|
+
id,
|
|
50
|
+
focus: function focus() {
|
|
51
|
+
var _inputRef_current_focus, _inputRef_current;
|
|
52
|
+
return (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : (_inputRef_current_focus = _inputRef_current.focus) === null || _inputRef_current_focus === void 0 ? void 0 : _inputRef_current_focus.call(_inputRef_current);
|
|
53
|
+
},
|
|
54
|
+
measure: function measure(done) {
|
|
55
|
+
var input = inputRef.current;
|
|
56
|
+
if (!(input === null || input === void 0 ? void 0 : input.measureInWindow)) return done(void 0);
|
|
57
|
+
input.measureInWindow(function (x, y, width, height) {
|
|
58
|
+
return done({
|
|
59
|
+
id,
|
|
60
|
+
x,
|
|
61
|
+
y,
|
|
62
|
+
width,
|
|
63
|
+
height
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
}, [id, inputRef]);
|
|
69
|
+
(0, import_react.useEffect)(function () {
|
|
70
|
+
return chained ? chain.register(entry) : void 0;
|
|
71
|
+
}, [chain, chained, entry]);
|
|
72
|
+
var isLast = (0, import_react.useSyncExternalStore)(chain.subscribe, function () {
|
|
73
|
+
return chain.isLast(id);
|
|
74
|
+
}, function () {
|
|
75
|
+
return true;
|
|
76
|
+
});
|
|
77
|
+
var handleSubmitEditing = (0, import_react.useCallback)(function () {
|
|
78
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
79
|
+
args[_key] = arguments[_key];
|
|
80
|
+
}
|
|
81
|
+
onSubmitEditing === null || onSubmitEditing === void 0 ? void 0 : onSubmitEditing(...args);
|
|
82
|
+
chain.advance(id, function () {
|
|
83
|
+
import_react_native.Keyboard.dismiss();
|
|
84
|
+
onSubmitLast === null || onSubmitLast === void 0 ? void 0 : onSubmitLast();
|
|
85
|
+
});
|
|
86
|
+
}, [chain, id, onSubmitEditing, onSubmitLast]);
|
|
87
|
+
var relayout = (0, import_react.useCallback)(function () {
|
|
88
|
+
return chain.invalidate();
|
|
89
|
+
}, [chain]);
|
|
90
|
+
if (!enabled) return {
|
|
91
|
+
inputProps: {},
|
|
92
|
+
accessory: null
|
|
93
|
+
};
|
|
94
|
+
var ios = import_react_native.Platform.OS === "ios";
|
|
95
|
+
return {
|
|
96
|
+
inputProps: {
|
|
97
|
+
...(ios ? {
|
|
98
|
+
inputAccessoryViewID: accessoryId
|
|
99
|
+
} : void 0),
|
|
100
|
+
...(chained ? {
|
|
101
|
+
returnKeyType: isLast ? "done" : "next",
|
|
102
|
+
// "submit" keeps the keyboard up while focus moves on, so it does
|
|
103
|
+
// not drop and rise again between fields.
|
|
104
|
+
submitBehavior: isLast ? "blurAndSubmit" : "submit",
|
|
105
|
+
onSubmitEditing: handleSubmitEditing,
|
|
106
|
+
onLayout: relayout
|
|
107
|
+
} : void 0)
|
|
108
|
+
},
|
|
109
|
+
accessory: ios ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_KeyboardDoneBar.KeyboardDoneBar, {
|
|
110
|
+
nativeID: accessoryId
|
|
111
|
+
}) : null
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=useKeyboardChain.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useKeyboardChain_native_exports","__export","useKeyboardChain","module","exports","__toCommonJS","import_jsx_runtime","require","import_react","import_react_native","import_chain","import_KeyboardDoneBar","param","inputRef","enabled","multiline","onSubmitLast","onSubmitEditing","chain","useContext","KeyboardChainContext","id","useId","accessoryId","chained","entry","useMemo","focus","_inputRef_current_focus","_inputRef_current","current","call","measure","done","input","measureInWindow","x","y","width","height","useEffect","register","isLast","useSyncExternalStore","subscribe","handleSubmitEditing","useCallback","_len","arguments","length","args","Array","_key","advance","Keyboard","dismiss","relayout","invalidate","inputProps","accessory","ios","Platform","OS","inputAccessoryViewID","returnKeyType","submitBehavior","onLayout","jsx","KeyboardDoneBar","nativeID"],"sources":["../../../src/keyboard/useKeyboardChain.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplatform.one/forms",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.42.0",
|
|
4
4
|
"description": "Cross-platform form components with URL state management",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cross-platform",
|
|
@@ -57,10 +57,10 @@
|
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
59
|
"@floating-ui/react": "^0.27.20",
|
|
60
|
-
"@multiplatform.one/platform": "^7.
|
|
61
|
-
"@multiplatform.one/router": "^7.
|
|
62
|
-
"@multiplatform.one/table-primitives": "^7.
|
|
63
|
-
"@multiplatform.one/theme": "^7.
|
|
60
|
+
"@multiplatform.one/platform": "^7.42.0",
|
|
61
|
+
"@multiplatform.one/router": "^7.42.0",
|
|
62
|
+
"@multiplatform.one/table-primitives": "^7.42.0",
|
|
63
|
+
"@multiplatform.one/theme": "^7.42.0",
|
|
64
64
|
"@phosphor-icons/react": "^2.1.10",
|
|
65
65
|
"@tamagui/get-font-sized": "2.7.6",
|
|
66
66
|
"@tamagui/get-token": "2.7.6",
|
|
@@ -79,9 +79,9 @@
|
|
|
79
79
|
"tamagui": "2.7.6"
|
|
80
80
|
},
|
|
81
81
|
"devDependencies": {
|
|
82
|
-
"@multiplatform.one/config": "7.
|
|
83
|
-
"@multiplatform.one/storybook": "7.
|
|
84
|
-
"@multiplatform.one/test-utils": "7.
|
|
82
|
+
"@multiplatform.one/config": "7.42.0",
|
|
83
|
+
"@multiplatform.one/storybook": "7.42.0",
|
|
84
|
+
"@multiplatform.one/test-utils": "7.42.0",
|
|
85
85
|
"@tamagui/build": "2.7.6",
|
|
86
86
|
"@tamagui/config": "2.7.6",
|
|
87
87
|
"@tamagui/vite-plugin": "2.7.6",
|
package/src/Form/index.tsx
CHANGED
|
@@ -21,6 +21,7 @@ import {
|
|
|
21
21
|
import { ContextualSaveBar, type ContextualSaveBarProps } from "../ContextualSaveBar";
|
|
22
22
|
import { ErrorSummary, collectFormFieldErrors, type ErrorSummaryItem } from "../ErrorSummary";
|
|
23
23
|
import { RequiredMarkingContext, mapHouseRequiredMarking } from "../requiredMarking";
|
|
24
|
+
import { KeyboardChainScope } from "../keyboard/chain";
|
|
24
25
|
import { getFormSubmission } from "./submissionController";
|
|
25
26
|
import { type FormValidateOn, resolveEffectiveValidateOn } from "./validateOn";
|
|
26
27
|
|
|
@@ -320,32 +321,36 @@ export function Form<TFormData extends Record<string, any>, TFormValidator = any
|
|
|
320
321
|
<FormSaveModeContext.Provider value={saveMode}>
|
|
321
322
|
<RequiredMarkingContext.Provider value={{ mode: requiredMarkMode }}>
|
|
322
323
|
<FormValidateProvider form={form} validateOn={validateOn}>
|
|
323
|
-
<
|
|
324
|
-
<
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
324
|
+
<KeyboardChainScope>
|
|
325
|
+
<TamaguiForm ref={setFormRef} onSubmit={handleSubmit} {...tamaguiFormProps}>
|
|
326
|
+
<YStack
|
|
327
|
+
data-mpo-form-layout=""
|
|
328
|
+
data-gap={knobProps.gap.gap}
|
|
329
|
+
data-size-token={knobProps.sizeToken}
|
|
330
|
+
width="100%"
|
|
331
|
+
minWidth={0}
|
|
332
|
+
// A readable column: fields and actions read as one group on a
|
|
333
|
+
// wide screen. `maxWidth` on the Form ejects (e.g. "100%").
|
|
334
|
+
maxWidth={(tamaguiFormProps.maxWidth as never) ?? FORM_READABLE_WIDTH}
|
|
335
|
+
{...knobProps.gap}
|
|
336
|
+
{...(tamaguiFormProps.flex != null
|
|
337
|
+
? { flex: tamaguiFormProps.flex as never }
|
|
338
|
+
: {})}
|
|
339
|
+
>
|
|
340
|
+
{showErrorSummary ? (
|
|
341
|
+
<AutoErrorSummary
|
|
342
|
+
form={form}
|
|
343
|
+
title={errorSummaryTitle}
|
|
344
|
+
formElement={formElementRef.current}
|
|
345
|
+
/>
|
|
346
|
+
) : null}
|
|
347
|
+
{children}
|
|
348
|
+
{saveBar ? (
|
|
349
|
+
<ContextualSaveBar {...(typeof saveBar === "object" ? saveBar : {})} />
|
|
350
|
+
) : null}
|
|
351
|
+
</YStack>
|
|
352
|
+
</TamaguiForm>
|
|
353
|
+
</KeyboardChainScope>
|
|
349
354
|
</FormValidateProvider>
|
|
350
355
|
</RequiredMarkingContext.Provider>
|
|
351
356
|
</FormSaveModeContext.Provider>
|
package/src/InputParts/index.tsx
CHANGED
|
@@ -593,6 +593,13 @@ const InputGroupImpl = InputGroupFrame.styleable<{
|
|
|
593
593
|
}
|
|
594
594
|
: undefined;
|
|
595
595
|
|
|
596
|
+
const focusRing = ensureFocusVisibleRing({
|
|
597
|
+
...inputOutlineFocus,
|
|
598
|
+
...control.focusKnobProps,
|
|
599
|
+
...control.focusVisibleKnobProps,
|
|
600
|
+
outlineOffset: boxRingOffset(ringMode),
|
|
601
|
+
});
|
|
602
|
+
|
|
596
603
|
return (
|
|
597
604
|
<FocusContext.Provider focused={focused} setFocused={setFocused}>
|
|
598
605
|
{wrapNativePressable(
|
|
@@ -640,19 +647,20 @@ const InputGroupImpl = InputGroupFrame.styleable<{
|
|
|
640
647
|
// resolved backup (and the native path). Button-like Boxes
|
|
641
648
|
// (Select) do not set `focused` (no Area onFocus).
|
|
642
649
|
borderColor: formInputColors.border.focus,
|
|
643
|
-
...
|
|
644
|
-
...inputOutlineFocus,
|
|
645
|
-
...control.focusKnobProps,
|
|
646
|
-
...control.focusVisibleKnobProps,
|
|
647
|
-
outlineOffset: boxRingOffset(ringMode),
|
|
648
|
-
}),
|
|
650
|
+
...focusRing,
|
|
649
651
|
}
|
|
650
|
-
:
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
652
|
+
: isWeb
|
|
653
|
+
? {
|
|
654
|
+
// Explicit rest — avoid leaving theme `$outlineColor` (near-white in
|
|
655
|
+
// dark) as the computed outline-color while width settles.
|
|
656
|
+
// Keep outline-transparent rest (border-flicker fix); do not warn.
|
|
657
|
+
...inputOutlineRest,
|
|
658
|
+
}
|
|
659
|
+
: // FZ-7718: on iOS the outline's width and offset changing as
|
|
660
|
+
// the field takes focus makes it resign first responder, so a
|
|
661
|
+
// programmatic focus (Return to the next field) never sticks.
|
|
662
|
+
// Native keeps the ring's geometry at rest and fades its color.
|
|
663
|
+
{ ...focusRing, outlineColor: "transparent" })}
|
|
656
664
|
{...suppressedRingProps}
|
|
657
665
|
// LC-40 DISABLED-VISIBLE: the input frame is text-bearing chrome —
|
|
658
666
|
// keepLabel washes fill/border (value text keeps >= AA) and
|