@multiplatform.one/forms 7.36.0 → 7.38.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.native.js +1 -1
- 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.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/{WheelEdgeFade.cjs → NativeWheel.cjs} +5 -5
- package/dist/cjs/Wheel/NativeWheel.native.js +408 -0
- package/dist/cjs/Wheel/NativeWheel.native.js.map +1 -0
- package/dist/cjs/Wheel/haptic.cjs +3 -4
- package/dist/cjs/Wheel/haptic.native.js +4 -5
- package/dist/cjs/Wheel/haptic.native.js.map +1 -1
- package/dist/cjs/Wheel/index.cjs +62 -218
- package/dist/cjs/Wheel/index.native.js +54 -228
- package/dist/cjs/Wheel/index.native.js.map +1 -1
- package/dist/cjs/Wheel/wheelShared.cjs +156 -0
- package/dist/cjs/Wheel/wheelShared.native.js +169 -0
- package/dist/cjs/Wheel/wheelShared.native.js.map +1 -0
- 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.native.js +2 -2
- 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.native.js +43 -43
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/requiredMarking.native.js.map +1 -1
- package/dist/cjs/shared/TimeColumn.cjs +0 -9
- package/dist/cjs/shared/TimeColumn.native.js +1 -10
- 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/AdaptivePopup/index.native.js.map +1 -1
- package/dist/esm/Button/index.native.js.map +1 -1
- package/dist/esm/Chip/index.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/index.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
- package/dist/esm/ControlGroup/index.native.js.map +1 -1
- package/dist/esm/DescriptionList/index.native.js.map +1 -1
- package/dist/esm/ErrorSummary.native.js.map +1 -1
- package/dist/esm/FieldDisplay/editMode.native.js.map +1 -1
- package/dist/esm/FieldDisplay/formatters.native.js.map +1 -1
- package/dist/esm/FieldDisplay/index.native.js.map +1 -1
- package/dist/esm/FieldGroup.native.js.map +1 -1
- package/dist/esm/FloatingPanel/nestedAction.native.js.map +1 -1
- package/dist/esm/FloatingPanel/pointAnchor.native.js.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/esm/Form/index.native.js.map +1 -1
- package/dist/esm/Form/submissionController.native.js.map +1 -1
- package/dist/esm/Form/validateOn.native.js.map +1 -1
- package/dist/esm/FormGrid.native.js.map +1 -1
- package/dist/esm/FormSection.native.js.map +1 -1
- package/dist/esm/InputParts/index.native.js.map +1 -1
- package/dist/esm/Label/index.native.js.map +1 -1
- package/dist/esm/MediaPicker/base64.native.js.map +1 -1
- package/dist/esm/MediaPicker/payload.native.js.map +1 -1
- package/dist/esm/MediaPicker/types.native.js.map +1 -1
- package/dist/esm/MediaPicker/useMediaPicker.native.js.map +1 -1
- package/dist/esm/Skeleton/index.native.js.map +1 -1
- package/dist/esm/Spinner/SpinnerGlyph.native.js.map +1 -1
- package/dist/esm/Spinner/spinnerSize.native.js.map +1 -1
- package/dist/esm/Table/index.native.js.map +1 -1
- package/dist/esm/Wheel/NativeWheel.mjs +5 -0
- package/dist/esm/Wheel/NativeWheel.mjs.map +1 -0
- package/dist/esm/Wheel/NativeWheel.native.js +380 -0
- package/dist/esm/Wheel/NativeWheel.native.js.map +1 -0
- package/dist/esm/Wheel/haptic.mjs +3 -4
- package/dist/esm/Wheel/haptic.mjs.map +1 -1
- package/dist/esm/Wheel/haptic.native.js +4 -5
- package/dist/esm/Wheel/haptic.native.js.map +1 -1
- package/dist/esm/Wheel/index.mjs +49 -205
- package/dist/esm/Wheel/index.mjs.map +1 -1
- package/dist/esm/Wheel/index.native.js +41 -215
- package/dist/esm/Wheel/index.native.js.map +1 -1
- package/dist/esm/Wheel/wheelShared.mjs +119 -0
- package/dist/esm/Wheel/wheelShared.mjs.map +1 -0
- package/dist/esm/Wheel/wheelShared.native.js +129 -0
- package/dist/esm/Wheel/wheelShared.native.js.map +1 -0
- package/dist/esm/actionLabel.native.js.map +1 -1
- package/dist/esm/fieldDefaults.native.js.map +1 -1
- package/dist/esm/fieldLayout.native.js.map +1 -1
- package/dist/esm/fields/Barcode/BarcodePreview.native.js.map +1 -1
- package/dist/esm/fields/Barcode/code128.native.js.map +1 -1
- package/dist/esm/fields/Barcode/index.native.js.map +1 -1
- package/dist/esm/fields/Barcode/qr.native.js.map +1 -1
- package/dist/esm/fields/Barcode/scannerTypes.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxBox.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxCard.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/index.native.js.map +1 -1
- package/dist/esm/fields/ColorPicker/index.native.js.map +1 -1
- package/dist/esm/fields/ColorPicker/parts.native.js.map +1 -1
- package/dist/esm/fields/Combobox/authorOptions.native.js.map +1 -1
- package/dist/esm/fields/Combobox/index.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/Calendar.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/fieldValueSync.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/utils.native.js.map +1 -1
- package/dist/esm/fields/Duration/durationMath.native.js.map +1 -1
- package/dist/esm/fields/Duration/index.native.js.map +1 -1
- package/dist/esm/fields/FileUpload/filePickerTypes.native.js.map +1 -1
- package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
- package/dist/esm/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/geoValue.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/geocoder.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/geocoderContext.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/mapMath.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/mapTypes.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
- package/dist/esm/fields/Geolocation/photonGeocoder.native.js.map +1 -1
- package/dist/esm/fields/Icon/drawnSet.native.js.map +1 -1
- package/dist/esm/fields/Icon/index.native.js.map +1 -1
- package/dist/esm/fields/ImageField/index.native.js.map +1 -1
- package/dist/esm/fields/Input/index.native.js.map +1 -1
- package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
- package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
- package/dist/esm/fields/OTPInput/otpCellCss.native.js.map +1 -1
- package/dist/esm/fields/PhoneInput/dialCodes.native.js.map +1 -1
- package/dist/esm/fields/PhoneInput/index.native.js.map +1 -1
- package/dist/esm/fields/PhoneInput/phone.native.js.map +1 -1
- package/dist/esm/fields/PhoneInput/regionNames.native.js.map +1 -1
- package/dist/esm/fields/Progress/index.native.js.map +1 -1
- package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/esm/fields/Rating/index.native.js.map +1 -1
- package/dist/esm/fields/Rating/ratingMath.native.js.map +1 -1
- package/dist/esm/fields/Rating/types.native.js.map +1 -1
- package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
- package/dist/esm/fields/Select/index.native.js.map +1 -1
- package/dist/esm/fields/Signature/index.native.js.map +1 -1
- package/dist/esm/fields/Slider/index.native.js.map +1 -1
- package/dist/esm/fields/Slider/jumpMotion.native.js.map +1 -1
- package/dist/esm/fields/Stepper/index.native.js.map +1 -1
- package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
- package/dist/esm/fields/Switch/footprint.native.js.map +1 -1
- package/dist/esm/fields/Switch/index.native.js.map +1 -1
- package/dist/esm/fields/TextArea/index.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
- package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -1
- package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
- package/dist/esm/fields/nativeDateTime/dateTimePickerLoader.native.js.map +1 -1
- package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
- package/dist/esm/fields/nativeSelect.native.js.map +1 -1
- package/dist/esm/fields/selectedOrder.native.js.map +1 -1
- package/dist/esm/formSpacing.native.js.map +1 -1
- package/dist/esm/hooks/useFocusManagement.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/requiredMarking.native.js.map +1 -1
- package/dist/esm/shared/TimeColumn.mjs +0 -9
- package/dist/esm/shared/TimeColumn.mjs.map +1 -1
- package/dist/esm/shared/TimeColumn.native.js +0 -9
- package/dist/esm/shared/TimeColumn.native.js.map +1 -1
- package/dist/esm/shared/capabilityPreflight.native.js.map +1 -1
- package/dist/esm/shared/colorRamps.native.js.map +1 -1
- package/dist/esm/shared/devWarn.native.js.map +1 -1
- package/dist/esm/shared/floatingList.native.js.map +1 -1
- package/dist/esm/shared/focusManagement.native.js.map +1 -1
- package/dist/esm/shared/groupContext.native.js.map +1 -1
- package/dist/esm/shared/i18n.native.js.map +1 -1
- package/dist/esm/shared/instantMotion.native.js.map +1 -1
- package/dist/esm/shared/nativeA11y.native.js.map +1 -1
- package/dist/esm/shared/panelPortal.native.js.map +1 -1
- package/dist/esm/shared/pickerTriggerContract.native.js.map +1 -1
- package/dist/esm/shared/pressSlopProps.native.js.map +1 -1
- package/dist/esm/shared/t.native.js.map +1 -1
- package/dist/esm/shared/tableCellContext.native.js.map +1 -1
- package/dist/esm/shared/useDragScroll.native.js.map +1 -1
- package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
- package/dist/esm/shared/useSheetEscapeDismiss.native.js.map +1 -1
- package/dist/esm/shared/useWheelIncrement.native.js.map +1 -1
- package/dist/esm/shared/utils.native.js.map +1 -1
- package/dist/esm/shared/zIndex.native.js.map +1 -1
- package/dist/esm/themedPrimitives.native.js.map +1 -1
- package/dist/esm/types.native.js.map +1 -1
- package/dist/esm/utils/LinkCell.native.js.map +1 -1
- package/dist/jsx/Wheel/NativeWheel.mjs +5 -0
- package/dist/jsx/Wheel/NativeWheel.mjs.map +1 -0
- package/dist/jsx/Wheel/NativeWheel.native.js +408 -0
- package/dist/jsx/Wheel/NativeWheel.native.js.map +1 -0
- package/dist/jsx/Wheel/haptic.mjs +3 -4
- package/dist/jsx/Wheel/haptic.mjs.map +1 -1
- package/dist/jsx/Wheel/haptic.native.js +4 -5
- package/dist/jsx/Wheel/haptic.native.js.map +1 -1
- package/dist/jsx/Wheel/index.mjs +49 -205
- package/dist/jsx/Wheel/index.mjs.map +1 -1
- package/dist/jsx/Wheel/index.native.js +54 -228
- package/dist/jsx/Wheel/index.native.js.map +1 -1
- package/dist/jsx/Wheel/wheelShared.mjs +119 -0
- package/dist/jsx/Wheel/wheelShared.mjs.map +1 -0
- package/dist/jsx/Wheel/wheelShared.native.js +169 -0
- package/dist/jsx/Wheel/wheelShared.native.js.map +1 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/shared/TimeColumn.mjs +0 -9
- package/dist/jsx/shared/TimeColumn.mjs.map +1 -1
- package/dist/jsx/shared/TimeColumn.native.js +0 -9
- package/dist/jsx/shared/TimeColumn.native.js.map +1 -1
- package/package.json +8 -8
- package/src/Wheel/NativeWheel.native.spec.tsx +181 -0
- package/src/Wheel/NativeWheel.native.tsx +430 -0
- package/src/Wheel/NativeWheel.tsx +6 -0
- package/src/Wheel/haptic.ts +9 -8
- package/src/Wheel/index.tsx +121 -363
- package/src/Wheel/wheelShared.spec.ts +53 -0
- package/src/Wheel/wheelShared.ts +222 -0
- package/src/shared/TimeColumn.tsx +0 -7
- package/types/Wheel/NativeWheel.d.ts +4 -0
- package/types/Wheel/NativeWheel.d.ts.map +1 -0
- package/types/Wheel/NativeWheel.native.d.ts +9 -0
- package/types/Wheel/NativeWheel.native.d.ts.map +1 -0
- package/types/Wheel/haptic.d.ts +4 -2
- package/types/Wheel/haptic.d.ts.map +1 -1
- package/types/Wheel/index.d.ts +4 -49
- package/types/Wheel/index.d.ts.map +1 -1
- package/types/Wheel/wheelShared.d.ts +87 -0
- package/types/Wheel/wheelShared.d.ts.map +1 -0
- package/types/shared/TimeColumn.d.ts.map +1 -1
- package/dist/cjs/Wheel/WheelEdgeFade.native.js +0 -116
- package/dist/cjs/Wheel/WheelEdgeFade.native.js.map +0 -1
- package/dist/esm/Wheel/WheelEdgeFade.mjs +0 -5
- package/dist/esm/Wheel/WheelEdgeFade.mjs.map +0 -1
- package/dist/esm/Wheel/WheelEdgeFade.native.js +0 -88
- package/dist/esm/Wheel/WheelEdgeFade.native.js.map +0 -1
- package/dist/jsx/Wheel/WheelEdgeFade.mjs +0 -5
- package/dist/jsx/Wheel/WheelEdgeFade.mjs.map +0 -1
- package/dist/jsx/Wheel/WheelEdgeFade.native.js +0 -116
- package/dist/jsx/Wheel/WheelEdgeFade.native.js.map +0 -1
- package/src/Wheel/WheelEdgeFade.native.tsx +0 -67
- package/src/Wheel/WheelEdgeFade.spec.tsx +0 -141
- package/src/Wheel/WheelEdgeFade.tsx +0 -7
- package/types/Wheel/WheelEdgeFade.d.ts +0 -8
- package/types/Wheel/WheelEdgeFade.d.ts.map +0 -1
- package/types/Wheel/WheelEdgeFade.native.d.ts +0 -8
- package/types/Wheel/WheelEdgeFade.native.d.ts.map +0 -1
|
@@ -1,31 +1,15 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { motionDurationMs } from "@multiplatform.one/theme";
|
|
3
2
|
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
4
|
-
import {
|
|
5
|
-
import { sizeTokenStep, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
6
|
-
import { View, getTokens, isWeb, styled, Text } from "tamagui";
|
|
3
|
+
import { View, isWeb, styled, Text } from "tamagui";
|
|
7
4
|
import { t } from "../shared/t.native.js";
|
|
8
5
|
import { fireSelectionHaptic } from "./haptic.native.js";
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
"@swc/helpers - typeof";
|
|
12
|
-
|
|
13
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
14
|
-
}
|
|
6
|
+
import { NativeWheel } from "./NativeWheel.native.js";
|
|
7
|
+
import { defaultColumnWidth, drumPose, drumReachRows, getItemLabel, getItemValue, modIndex, nearestRowForDataIndex, useWheelLayout } from "./wheelShared.native.js";
|
|
15
8
|
var friction = 0.95;
|
|
16
9
|
var minVelocity = 0.5;
|
|
17
10
|
var momentumMultiplier = 0.8;
|
|
18
11
|
var rubberBandConstant = 0.55;
|
|
19
12
|
var tapSlopPx = 8;
|
|
20
|
-
var diameterRatio = 1.07;
|
|
21
|
-
var squeeze = 1.45;
|
|
22
|
-
var perspectivePx = 400;
|
|
23
|
-
var defaultColumnWidth = 88;
|
|
24
|
-
var wheelFontByStep = {
|
|
25
|
-
[-1]: "$6",
|
|
26
|
-
0: "$8",
|
|
27
|
-
1: "$9"
|
|
28
|
-
};
|
|
29
13
|
var WHEEL_FOCUS_STYLE_ID = "mp1-wheel-focus";
|
|
30
14
|
function ensureWheelFocusStyles() {
|
|
31
15
|
if (!isWeb || typeof document === "undefined") return;
|
|
@@ -61,28 +45,6 @@ var SelectionIndicator = styled(View, {
|
|
|
61
45
|
right: 0,
|
|
62
46
|
pointerEvents: "none"
|
|
63
47
|
});
|
|
64
|
-
function normalizeItem(item) {
|
|
65
|
-
if ((typeof item === "undefined" ? "undefined" : _type_of(item)) === "object" && item !== null && "value" in item) {
|
|
66
|
-
return item;
|
|
67
|
-
}
|
|
68
|
-
return {
|
|
69
|
-
value: item,
|
|
70
|
-
label: String(item)
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
function getItemLabel(item) {
|
|
74
|
-
var _normalized_label;
|
|
75
|
-
var normalized = normalizeItem(item);
|
|
76
|
-
return (_normalized_label = normalized.label) !== null && _normalized_label !== void 0 ? _normalized_label : String(normalized.value);
|
|
77
|
-
}
|
|
78
|
-
function getItemValue(item) {
|
|
79
|
-
var normalized = normalizeItem(item);
|
|
80
|
-
return normalized.value;
|
|
81
|
-
}
|
|
82
|
-
function modIndex(row, n) {
|
|
83
|
-
if (n <= 0) return 0;
|
|
84
|
-
return (row % n + n) % n;
|
|
85
|
-
}
|
|
86
48
|
function equivalentOffsetNear(referenceOffset, targetOffset, n, itemHeight) {
|
|
87
49
|
if (n <= 0 || itemHeight <= 0) return targetOffset;
|
|
88
50
|
var rT = Math.round(targetOffset / itemHeight);
|
|
@@ -92,13 +54,6 @@ function equivalentOffsetNear(referenceOffset, targetOffset, n, itemHeight) {
|
|
|
92
54
|
var k = Math.round((referenceOffset - base) / span);
|
|
93
55
|
return base + k * span;
|
|
94
56
|
}
|
|
95
|
-
function nearestRowForDataIndex(currentRow, targetDataIndex, n) {
|
|
96
|
-
var currentMod = modIndex(currentRow, n);
|
|
97
|
-
var delta = targetDataIndex - currentMod;
|
|
98
|
-
if (delta > n / 2) delta -= n;
|
|
99
|
-
if (delta < -n / 2) delta += n;
|
|
100
|
-
return currentRow + delta;
|
|
101
|
-
}
|
|
102
57
|
function rubberBand(offset, dimension) {
|
|
103
58
|
var c = rubberBandConstant;
|
|
104
59
|
var x = Math.abs(offset);
|
|
@@ -106,69 +61,45 @@ function rubberBand(offset, dimension) {
|
|
|
106
61
|
return offset < 0 ? -result : result;
|
|
107
62
|
}
|
|
108
63
|
function getItemTransform(index, scrollOffset, itemHeight, containerHeight) {
|
|
109
|
-
var
|
|
110
|
-
var angle = (index * itemHeight - scrollOffset) / squeeze / Math.max(radius, 1);
|
|
111
|
-
var clamped = Math.max(-Math.PI / 2, Math.min(Math.PI / 2, angle));
|
|
112
|
-
var centerTop = (containerHeight - itemHeight) / 2;
|
|
113
|
-
var translateY = centerTop + radius * Math.sin(clamped);
|
|
114
|
-
var rotateX = -(clamped * 180) / Math.PI;
|
|
115
|
-
var scale = Math.max(0.72, Math.min(1, Math.cos(clamped)));
|
|
64
|
+
var pose = drumPose(index - scrollOffset / itemHeight, itemHeight, containerHeight);
|
|
116
65
|
return {
|
|
117
|
-
translateY,
|
|
118
|
-
rotateX,
|
|
119
|
-
scale,
|
|
66
|
+
translateY: (containerHeight - itemHeight) / 2 + pose.offset,
|
|
67
|
+
rotateX: pose.rotateX,
|
|
68
|
+
scale: pose.scale,
|
|
120
69
|
opacity: 1
|
|
121
70
|
};
|
|
122
71
|
}
|
|
123
|
-
function
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
return scale === "radius" ? 9 : 8;
|
|
130
|
-
}
|
|
131
|
-
function highlightBandStyle(edges, radiusToken, pointy) {
|
|
132
|
-
var r = pointy ? 0 : tokenPx(radiusToken, "radius");
|
|
133
|
-
var inset = tokenPx("$2", "space");
|
|
134
|
-
var capStart = edges === "all" || edges === "start";
|
|
135
|
-
var capEnd = edges === "all" || edges === "end";
|
|
136
|
-
return {
|
|
137
|
-
borderStartStartRadius: capStart ? r : 0,
|
|
138
|
-
borderStartEndRadius: capEnd ? r : 0,
|
|
139
|
-
borderEndStartRadius: capStart ? r : 0,
|
|
140
|
-
borderEndEndRadius: capEnd ? r : 0,
|
|
141
|
-
marginInlineStart: capStart ? inset : 0,
|
|
142
|
-
marginInlineEnd: capEnd ? inset : 0
|
|
143
|
-
};
|
|
72
|
+
function Wheel(props) {
|
|
73
|
+
return isWeb ? /* @__PURE__ */_jsx(WebWheel, {
|
|
74
|
+
...props
|
|
75
|
+
}) : /* @__PURE__ */_jsx(NativeWheel, {
|
|
76
|
+
...props
|
|
77
|
+
});
|
|
144
78
|
}
|
|
145
|
-
function
|
|
79
|
+
function WebWheel(props) {
|
|
146
80
|
var {
|
|
147
81
|
items,
|
|
148
82
|
value,
|
|
149
83
|
onChange,
|
|
150
84
|
visibleItems = 5,
|
|
151
|
-
itemHeight: itemHeightProp,
|
|
152
85
|
width: widthProp,
|
|
153
86
|
renderItem,
|
|
154
87
|
disabled = false,
|
|
155
|
-
size: sizeProp,
|
|
156
88
|
loop = false,
|
|
157
|
-
highlightEdges = "all",
|
|
158
89
|
flex,
|
|
159
90
|
onItemCross,
|
|
160
91
|
"aria-label": ariaLabel
|
|
161
|
-
} =
|
|
162
|
-
var _ref;
|
|
92
|
+
} = props;
|
|
163
93
|
var {
|
|
164
|
-
knobProps
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
94
|
+
knobProps,
|
|
95
|
+
size,
|
|
96
|
+
itemHeight,
|
|
97
|
+
snapDurationMs,
|
|
98
|
+
highlightStyle,
|
|
99
|
+
highlightClassName
|
|
100
|
+
} = useWheelLayout(props);
|
|
168
101
|
var columnWidth = widthProp !== null && widthProp !== void 0 ? widthProp : defaultColumnWidth;
|
|
169
102
|
ensureWheelFocusStyles();
|
|
170
|
-
var motionTransition = knobProps.motion.control.transition;
|
|
171
|
-
var snapDurationMs = motionDurationMs(motionTransition);
|
|
172
103
|
var containerRef = useRef(null);
|
|
173
104
|
var [scrollOffset, setScrollOffset] = useState(0);
|
|
174
105
|
var [selectedIndex, setSelectedIndex] = useState(0);
|
|
@@ -407,11 +338,11 @@ function Wheel(param) {
|
|
|
407
338
|
containerRef.current.style.cursor = disabled ? "not-allowed" : "grab";
|
|
408
339
|
}
|
|
409
340
|
if (dragDistanceRef.current < tapSlopPx) {
|
|
410
|
-
var
|
|
341
|
+
var _ref;
|
|
411
342
|
var _containerRef_current;
|
|
412
343
|
var localY = e.locationY;
|
|
413
344
|
var rect = (_containerRef_current = containerRef.current) === null || _containerRef_current === void 0 ? void 0 : _containerRef_current.getBoundingClientRect();
|
|
414
|
-
var tapY = typeof localY === "number" ? localY : e.clientY - ((
|
|
345
|
+
var tapY = typeof localY === "number" ? localY : e.clientY - ((_ref = rect === null || rect === void 0 ? void 0 : rect.top) !== null && _ref !== void 0 ? _ref : 0);
|
|
415
346
|
var tapped = hitTestDataIndex(tapY);
|
|
416
347
|
if (tapped != null) {
|
|
417
348
|
snapToIndex(tapped, true);
|
|
@@ -432,59 +363,6 @@ function Wheel(param) {
|
|
|
432
363
|
snapToNearestRow(true);
|
|
433
364
|
}
|
|
434
365
|
}, [snapToNearestRow, startMomentum, hitTestDataIndex, snapToIndex, disabled]);
|
|
435
|
-
var disabledRef = useRef(disabled);
|
|
436
|
-
disabledRef.current = disabled;
|
|
437
|
-
var pointerDownRef = useRef(handlePointerDown);
|
|
438
|
-
pointerDownRef.current = handlePointerDown;
|
|
439
|
-
var pointerMoveRef = useRef(handlePointerMove);
|
|
440
|
-
pointerMoveRef.current = handlePointerMove;
|
|
441
|
-
var pointerUpRef = useRef(handlePointerUp);
|
|
442
|
-
pointerUpRef.current = handlePointerUp;
|
|
443
|
-
var panResponder = useMemo(function () {
|
|
444
|
-
if (isWeb) return {
|
|
445
|
-
panHandlers: {}
|
|
446
|
-
};
|
|
447
|
-
return PanResponder.create({
|
|
448
|
-
onStartShouldSetPanResponder: function onStartShouldSetPanResponder() {
|
|
449
|
-
return !disabledRef.current;
|
|
450
|
-
},
|
|
451
|
-
onMoveShouldSetPanResponder: function onMoveShouldSetPanResponder(_, gesture) {
|
|
452
|
-
return Math.abs(gesture.dy) > 1;
|
|
453
|
-
},
|
|
454
|
-
onPanResponderTerminationRequest: function onPanResponderTerminationRequest() {
|
|
455
|
-
return false;
|
|
456
|
-
},
|
|
457
|
-
onShouldBlockNativeResponder: function onShouldBlockNativeResponder() {
|
|
458
|
-
return true;
|
|
459
|
-
},
|
|
460
|
-
onPanResponderGrant: function onPanResponderGrant(evt) {
|
|
461
|
-
pointerDownRef.current({
|
|
462
|
-
clientY: evt.nativeEvent.pageY,
|
|
463
|
-
pointerId: 1
|
|
464
|
-
});
|
|
465
|
-
},
|
|
466
|
-
onPanResponderMove: function onPanResponderMove(evt) {
|
|
467
|
-
pointerMoveRef.current({
|
|
468
|
-
clientY: evt.nativeEvent.pageY,
|
|
469
|
-
pointerId: 1
|
|
470
|
-
});
|
|
471
|
-
},
|
|
472
|
-
onPanResponderRelease: function onPanResponderRelease(evt) {
|
|
473
|
-
pointerUpRef.current({
|
|
474
|
-
clientY: evt.nativeEvent.pageY,
|
|
475
|
-
pointerId: 1,
|
|
476
|
-
locationY: evt.nativeEvent.locationY
|
|
477
|
-
});
|
|
478
|
-
},
|
|
479
|
-
onPanResponderTerminate: function onPanResponderTerminate(evt) {
|
|
480
|
-
pointerUpRef.current({
|
|
481
|
-
clientY: evt.nativeEvent.pageY,
|
|
482
|
-
pointerId: 1,
|
|
483
|
-
locationY: evt.nativeEvent.locationY
|
|
484
|
-
});
|
|
485
|
-
}
|
|
486
|
-
});
|
|
487
|
-
}, []);
|
|
488
366
|
var handleWheel = useCallback(function (e) {
|
|
489
367
|
if (disabled) return;
|
|
490
368
|
e.preventDefault();
|
|
@@ -574,36 +452,22 @@ function Wheel(param) {
|
|
|
574
452
|
}, []);
|
|
575
453
|
var renderRows = useMemo(function () {
|
|
576
454
|
if (n === 0) return [];
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
}
|
|
587
|
-
return list;
|
|
455
|
+
var span = Math.ceil(drumReachRows(itemHeight, containerHeight));
|
|
456
|
+
var centerRow = Math.round(scrollOffset / itemHeight);
|
|
457
|
+
var first = loopEnabled ? centerRow - span : Math.max(0, centerRow - span);
|
|
458
|
+
var last = loopEnabled ? centerRow + span : Math.min(n - 1, centerRow + span);
|
|
459
|
+
var list = [];
|
|
460
|
+
for (var vr = first; vr <= last; vr++) {
|
|
461
|
+
list.push({
|
|
462
|
+
virtualRow: vr,
|
|
463
|
+
dataIndex: modIndex(vr, n)
|
|
464
|
+
});
|
|
588
465
|
}
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
return Array.from({
|
|
592
|
-
length: end - start + 1
|
|
593
|
-
}, function (_, i) {
|
|
594
|
-
var virtualRow = start + i;
|
|
595
|
-
return {
|
|
596
|
-
virtualRow,
|
|
597
|
-
dataIndex: virtualRow
|
|
598
|
-
};
|
|
599
|
-
});
|
|
600
|
-
}, [n, loopEnabled, scrollOffset, itemHeight, paddingItems, containerHeight]);
|
|
466
|
+
return list;
|
|
467
|
+
}, [n, loopEnabled, scrollOffset, itemHeight, containerHeight]);
|
|
601
468
|
var itemColor = function itemColor2(isSelected) {
|
|
602
469
|
return disabled ? "$color10" : isSelected ? "$color12" : "$color11";
|
|
603
470
|
};
|
|
604
|
-
var radiusToken = knobProps.borderRadius.borderRadius;
|
|
605
|
-
var highlightStyle = highlightBandStyle(highlightEdges, radiusToken, Boolean(knobProps.pointy));
|
|
606
|
-
var highlightSmoothClass = "className" in knobProps.borderRadius && typeof knobProps.borderRadius.className === "string" ? knobProps.borderRadius.className : void 0;
|
|
607
471
|
var renderItemNode = function renderItemNode2(dataIndex, isSelected) {
|
|
608
472
|
var item = items[dataIndex];
|
|
609
473
|
var itemValue = getItemValue(item);
|
|
@@ -630,14 +494,14 @@ function Wheel(param) {
|
|
|
630
494
|
opacity: 1,
|
|
631
495
|
children: [/* iOS 14+ selection fill — LC-71 selected=fill, never hairline borders */
|
|
632
496
|
/* @__PURE__ */_jsx(SelectionIndicator, {
|
|
633
|
-
className:
|
|
497
|
+
className: highlightClassName,
|
|
634
498
|
backgroundColor: "$color4",
|
|
635
499
|
top: paddingItems * itemHeight,
|
|
636
500
|
height: itemHeight,
|
|
637
501
|
style: highlightStyle,
|
|
638
502
|
"data-testid": "wheel-selection"
|
|
639
503
|
}), /* Interactive container */
|
|
640
|
-
|
|
504
|
+
/* @__PURE__ */_jsx("div", {
|
|
641
505
|
ref: containerRef,
|
|
642
506
|
className: "mp1-wheel-wrapper",
|
|
643
507
|
tabIndex: disabled ? -1 : 0,
|
|
@@ -654,7 +518,7 @@ function Wheel(param) {
|
|
|
654
518
|
width: "100%",
|
|
655
519
|
height: containerHeight,
|
|
656
520
|
position: "relative",
|
|
657
|
-
perspective: `${
|
|
521
|
+
perspective: `${containerHeight * 4}px`,
|
|
658
522
|
perspectiveOrigin: "center center",
|
|
659
523
|
overflow: "hidden",
|
|
660
524
|
userSelect: "none",
|
|
@@ -668,11 +532,11 @@ function Wheel(param) {
|
|
|
668
532
|
onPointerCancel: handlePointerUp,
|
|
669
533
|
onKeyDown: handleKeyDown,
|
|
670
534
|
"data-testid": "wheel-wrapper",
|
|
671
|
-
children: renderRows.map(function (
|
|
535
|
+
children: renderRows.map(function (param) {
|
|
672
536
|
var {
|
|
673
537
|
virtualRow,
|
|
674
538
|
dataIndex
|
|
675
|
-
} =
|
|
539
|
+
} = param;
|
|
676
540
|
var isSelected = dataIndex === liveDataIndex;
|
|
677
541
|
var transform = getItemTransform(virtualRow, scrollOffset, itemHeight, containerHeight);
|
|
678
542
|
if (Math.abs(transform.rotateX) > 85) return null;
|
|
@@ -699,44 +563,6 @@ function Wheel(param) {
|
|
|
699
563
|
children: renderItemNode(dataIndex, isSelected)
|
|
700
564
|
}, `${dataIndex}-${virtualRow}`);
|
|
701
565
|
})
|
|
702
|
-
}) : /* @__PURE__ */_jsxs(View, {
|
|
703
|
-
width: "100%",
|
|
704
|
-
height: containerHeight,
|
|
705
|
-
position: "relative",
|
|
706
|
-
overflow: "hidden",
|
|
707
|
-
cursor: disabled ? "not-allowed" : "grab",
|
|
708
|
-
"data-testid": "wheel-wrapper",
|
|
709
|
-
"data-disabled": disabled ? true : void 0,
|
|
710
|
-
"aria-disabled": disabled || void 0,
|
|
711
|
-
...panResponder.panHandlers,
|
|
712
|
-
children: [renderRows.map(function (param2) {
|
|
713
|
-
var {
|
|
714
|
-
virtualRow,
|
|
715
|
-
dataIndex
|
|
716
|
-
} = param2;
|
|
717
|
-
var isSelected = dataIndex === liveDataIndex;
|
|
718
|
-
var transform = getItemTransform(virtualRow, scrollOffset, itemHeight, containerHeight);
|
|
719
|
-
if (Math.abs(transform.rotateX) > 85) return null;
|
|
720
|
-
return /* @__PURE__ */_jsx(View, {
|
|
721
|
-
position: "absolute",
|
|
722
|
-
left: 0,
|
|
723
|
-
right: 0,
|
|
724
|
-
height: itemHeight,
|
|
725
|
-
alignItems: "center",
|
|
726
|
-
justifyContent: "center",
|
|
727
|
-
opacity: transform.opacity,
|
|
728
|
-
pointerEvents: "none",
|
|
729
|
-
y: transform.translateY,
|
|
730
|
-
scale: transform.scale,
|
|
731
|
-
rotateX: `${transform.rotateX}deg`,
|
|
732
|
-
"data-testid": "wheel-item",
|
|
733
|
-
"data-index": dataIndex,
|
|
734
|
-
"data-selected": isSelected ? true : void 0,
|
|
735
|
-
children: renderItemNode(dataIndex, isSelected)
|
|
736
|
-
}, `${dataIndex}-${virtualRow}`);
|
|
737
|
-
}), /* @__PURE__ */_jsx(WheelEdgeFade, {
|
|
738
|
-
height: paddingItems * itemHeight
|
|
739
|
-
})]
|
|
740
566
|
})]
|
|
741
567
|
});
|
|
742
568
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","motionDurationMs","useCallback","useEffect","useMemo","useRef","useState","PanResponder","sizeTokenStep","useResolvedKnobs","View","getTokens","isWeb","styled","Text","t","fireSelectionHaptic","WheelEdgeFade","_type_of","obj","Symbol","constructor","friction","minVelocity","momentumMultiplier","rubberBandConstant","tapSlopPx","diameterRatio","squeeze","perspectivePx","defaultColumnWidth","wheelFontByStep","WHEEL_FOCUS_STYLE_ID","ensureWheelFocusStyles","document","getElementById","style","createElement","id","textContent","head","appendChild","wheelMaskStyle","WebkitMaskImage","maskImage","WheelContainer","name","position","overflow","userSelect","WheelItemContainer","left","right","alignItems","justifyContent","SelectionIndicator","pointerEvents","normalizeItem","item","value","label","String","getItemLabel","_normalized_label","normalized","getItemValue","modIndex","row","n","equivalentOffsetNear","referenceOffset","targetOffset","itemHeight","rT","Math","round","m","span","base","k","nearestRowForDataIndex","currentRow","targetDataIndex","currentMod","delta","rubberBand","offset","dimension","c","x","abs","result","getItemTransform","index","scrollOffset","containerHeight","radius","angle","max","clamped","PI","min","centerTop","translateY","sin","rotateX","scale","cos","opacity","tokenPx","token","_getTokens_scale_key","_getTokens_scale","key","replace","val","highlightBandStyle","edges","radiusToken","pointy","r","inset","capStart","capEnd","borderStartStartRadius","borderStartEndRadius","borderEndStartRadius","borderEndEndRadius","marginInlineStart","marginInlineEnd","Wheel","param","items","onChange","visibleItems","itemHeightProp","width","widthProp","renderItem","disabled","size","sizeProp","loop","highlightEdges","flex","onItemCross","ariaLabel","_ref","knobProps","sizeToken","nestedControl","px","columnWidth","motionTransition","motion","control","transition","snapDurationMs","containerRef","setScrollOffset","selectedIndex","setSelectedIndex","length","loopEnabled","Boolean","scrollOffsetRef","current","animationRef","isAnimatingRef","hasMountedRef","selectedIndexRef","isDraggingRef","lastYRef","downYRef","dragDistanceRef","lastTimeRef","dragVelocitiesRef","paddingItems","floor","minOffset","maxOffset","liveDataIndex","lastCrossIndexRef","onItemCrossRef","_onItemCrossRef_current","call","runSnapComplete","finalOffset","dataIndex","safeIdx","settled","animateToOffset","animated","startOffset","goal","distance","duration","startTime","performance","now","animate","animate1","currentTime","elapsed","progress","eased","pow","newOffset","requestAnimationFrame","cancelAnimationFrame","snapToIndex","targetIndex","arguments","clampedData","currentR","targetR","targetOffset1","dataIdx","findIndex","raw","snapToNearestRow","dataIdx1","hitTestDataIndex","tapY","centerRow","rowBuffer","best","vr","dist","startMomentum","initialVelocity","velocity","handlePointerDown","e","clientY","setPointerCapture","pointerId","cursor","handlePointerMove","currentY","deltaY","deltaTime","push","shift","handlePointerUp","releasePointerCapture","unused","_ref2","_containerRef_current","localY","locationY","rect","getBoundingClientRect","top","tapped","velocities","avgVelocity","reduce","a","b","disabledRef","pointerDownRef","pointerMoveRef","pointerUpRef","panResponder","panHandlers","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","_","gesture","dy","onPanResponderTerminationRequest","onShouldBlockNativeResponder","onPanResponderGrant","evt","nativeEvent","pageY","onPanResponderMove","onPanResponderRelease","onPanResponderTerminate","handleWheel","preventDefault","currentOffset","setTimeout","handleKeyDown","newIndex","newIndex1","container","wheelHandler","wheelHandler2","addEventListener","passive","removeEventListener","renderRows","list","virtualRow","start","end","ceil","Array","from","i","itemColor","itemColor2","isSelected","borderRadius","highlightStyle","highlightSmoothClass","className","renderItemNode","renderItemNode2","itemValue","body","fontSize","color","numberOfLines","ellipsizeMode","maxWidth","paddingHorizontal","children","height","minWidth","backgroundColor","ref","tabIndex","role","perspective","perspectiveOrigin","touchAction","onPointerDown","onPointerMove","onPointerUp","onPointerCancel","onKeyDown","map","param2","transform","display","transformOrigin","transformStyle","backfaceVisibility","y","Item"],"sources":["index.native.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { motionDurationMs } from \"@multiplatform.one/theme\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { PanResponder } from \"react-native\";\nimport { sizeTokenStep, useResolvedKnobs } from \"@multiplatform.one/theme\";\nimport { View, getTokens, isWeb, styled, Text } from \"tamagui\";\nimport { t } from \"../shared/t\";\nimport { fireSelectionHaptic } from \"./haptic\";\nimport { WheelEdgeFade } from \"./WheelEdgeFade\";\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar friction = 0.95;\nvar minVelocity = 0.5;\nvar momentumMultiplier = 0.8;\nvar rubberBandConstant = 0.55;\nvar tapSlopPx = 8;\nvar diameterRatio = 1.07;\nvar squeeze = 1.45;\nvar perspectivePx = 400;\nvar defaultColumnWidth = 88;\nvar wheelFontByStep = {\n [-1]: \"$6\",\n 0: \"$8\",\n 1: \"$9\"\n};\nvar WHEEL_FOCUS_STYLE_ID = \"mp1-wheel-focus\";\nfunction ensureWheelFocusStyles() {\n if (!isWeb || typeof document === \"undefined\") return;\n if (document.getElementById(WHEEL_FOCUS_STYLE_ID)) return;\n var style = document.createElement(\"style\");\n style.id = WHEEL_FOCUS_STYLE_ID;\n style.textContent = \".mp1-wheel-wrapper:focus-visible { outline: 2px solid var(--outlineColor, var(--c-outlineColor, CanvasText)); outline-offset: -2px; }\";\n document.head.appendChild(style);\n}\nvar wheelMaskStyle = isWeb ? {\n WebkitMaskImage: \"linear-gradient(to bottom, rgba(0,0,0,0.28) 0%, #000 32%, #000 68%, rgba(0,0,0,0.28) 100%)\",\n maskImage: \"linear-gradient(to bottom, rgba(0,0,0,0.28) 0%, #000 32%, #000 68%, rgba(0,0,0,0.28) 100%)\"\n} : void 0;\nvar WheelContainer = styled(View, {\n name: \"Wheel\",\n position: \"relative\",\n overflow: \"hidden\",\n userSelect: \"none\"\n});\nvar WheelItemContainer = styled(View, {\n name: \"WheelItem\",\n position: \"absolute\",\n left: 0,\n right: 0,\n alignItems: \"center\",\n justifyContent: \"center\",\n userSelect: \"none\"\n});\nvar SelectionIndicator = styled(View, {\n name: \"WheelSelectionIndicator\",\n position: \"absolute\",\n left: 0,\n right: 0,\n pointerEvents: \"none\"\n});\nfunction normalizeItem(item) {\n if ((typeof item === \"undefined\" ? \"undefined\" : _type_of(item)) === \"object\" && item !== null && \"value\" in item) {\n return item;\n }\n return {\n value: item,\n label: String(item)\n };\n}\nfunction getItemLabel(item) {\n var _normalized_label;\n var normalized = normalizeItem(item);\n return (_normalized_label = normalized.label) !== null && _normalized_label !== void 0 ? _normalized_label : String(normalized.value);\n}\nfunction getItemValue(item) {\n var normalized = normalizeItem(item);\n return normalized.value;\n}\nfunction modIndex(row, n) {\n if (n <= 0) return 0;\n return (row % n + n) % n;\n}\nfunction equivalentOffsetNear(referenceOffset, targetOffset, n, itemHeight) {\n if (n <= 0 || itemHeight <= 0) return targetOffset;\n var rT = Math.round(targetOffset / itemHeight);\n var m = modIndex(rT, n);\n var span = n * itemHeight;\n var base = m * itemHeight;\n var k = Math.round((referenceOffset - base) / span);\n return base + k * span;\n}\nfunction nearestRowForDataIndex(currentRow, targetDataIndex, n) {\n var currentMod = modIndex(currentRow, n);\n var delta = targetDataIndex - currentMod;\n if (delta > n / 2) delta -= n;\n if (delta < -n / 2) delta += n;\n return currentRow + delta;\n}\nfunction rubberBand(offset, dimension) {\n var c = rubberBandConstant;\n var x = Math.abs(offset);\n var result = x * dimension * c / (dimension + c * x);\n return offset < 0 ? -result : result;\n}\nfunction getItemTransform(index, scrollOffset, itemHeight, containerHeight) {\n var radius = containerHeight * diameterRatio / 2;\n var angle = (index * itemHeight - scrollOffset) / squeeze / Math.max(radius, 1);\n var clamped = Math.max(-Math.PI / 2, Math.min(Math.PI / 2, angle));\n var centerTop = (containerHeight - itemHeight) / 2;\n var translateY = centerTop + radius * Math.sin(clamped);\n var rotateX = -(clamped * 180) / Math.PI;\n var scale = Math.max(0.72, Math.min(1, Math.cos(clamped)));\n return {\n translateY,\n rotateX,\n scale,\n opacity: 1\n };\n}\nfunction tokenPx(token, scale) {\n var _getTokens_scale_key, _getTokens_scale;\n if (typeof token === \"number\") return token;\n var key = String(token).replace(/^\\$/, \"\");\n var val = (_getTokens_scale = getTokens()[scale]) === null || _getTokens_scale === void 0 ? void 0 : (_getTokens_scale_key = _getTokens_scale[key]) === null || _getTokens_scale_key === void 0 ? void 0 : _getTokens_scale_key.val;\n if (typeof val === \"number\") return val;\n return scale === \"radius\" ? 9 : 8;\n}\nfunction highlightBandStyle(edges, radiusToken, pointy) {\n var r = pointy ? 0 : tokenPx(radiusToken, \"radius\");\n var inset = tokenPx(\"$2\", \"space\");\n var capStart = edges === \"all\" || edges === \"start\";\n var capEnd = edges === \"all\" || edges === \"end\";\n return {\n borderStartStartRadius: capStart ? r : 0,\n borderStartEndRadius: capEnd ? r : 0,\n borderEndStartRadius: capStart ? r : 0,\n borderEndEndRadius: capEnd ? r : 0,\n marginInlineStart: capStart ? inset : 0,\n marginInlineEnd: capEnd ? inset : 0\n };\n}\nfunction Wheel(param) {\n var { items, value, onChange, visibleItems = 5, itemHeight: itemHeightProp, width: widthProp, renderItem, disabled = false, size: sizeProp, loop = false, highlightEdges = \"all\", flex, onItemCross, \"aria-label\": ariaLabel } = param;\n var _ref;\n var { knobProps } = useResolvedKnobs();\n var size = sizeProp !== null && sizeProp !== void 0 ? sizeProp : wheelFontByStep[sizeTokenStep(knobProps.sizeToken)];\n var itemHeight = (_ref = itemHeightProp !== null && itemHeightProp !== void 0 ? itemHeightProp : knobProps.nestedControl.px) !== null && _ref !== void 0 ? _ref : 32;\n var columnWidth = widthProp !== null && widthProp !== void 0 ? widthProp : defaultColumnWidth;\n ensureWheelFocusStyles();\n var motionTransition = knobProps.motion.control.transition;\n var snapDurationMs = motionDurationMs(motionTransition);\n var containerRef = useRef(null);\n var [scrollOffset, setScrollOffset] = useState(0);\n var [selectedIndex, setSelectedIndex] = useState(0);\n var n = items.length;\n var loopEnabled = Boolean(loop && n > 1);\n var scrollOffsetRef = useRef(scrollOffset);\n scrollOffsetRef.current = scrollOffset;\n var animationRef = useRef(null);\n var isAnimatingRef = useRef(false);\n var hasMountedRef = useRef(false);\n var selectedIndexRef = useRef(selectedIndex);\n selectedIndexRef.current = selectedIndex;\n var isDraggingRef = useRef(false);\n var lastYRef = useRef(0);\n var downYRef = useRef(0);\n var dragDistanceRef = useRef(0);\n var lastTimeRef = useRef(0);\n var dragVelocitiesRef = useRef([]);\n var containerHeight = itemHeight * visibleItems;\n var paddingItems = Math.floor(visibleItems / 2);\n var minOffset = 0;\n var maxOffset = n > 0 ? (n - 1) * itemHeight : 0;\n var liveDataIndex = n === 0 ? 0 : loopEnabled ? modIndex(Math.round(scrollOffset / itemHeight), n) : Math.max(0, Math.min(Math.round(scrollOffset / itemHeight), n - 1));\n var lastCrossIndexRef = useRef(null);\n var onItemCrossRef = useRef(onItemCross);\n onItemCrossRef.current = onItemCross;\n useEffect(function() {\n var _onItemCrossRef_current;\n if (n === 0) return;\n if (lastCrossIndexRef.current === null) {\n lastCrossIndexRef.current = liveDataIndex;\n return;\n }\n if (lastCrossIndexRef.current === liveDataIndex) return;\n lastCrossIndexRef.current = liveDataIndex;\n var item = items[liveDataIndex];\n if (item === void 0) return;\n (_onItemCrossRef_current = onItemCrossRef.current) === null || _onItemCrossRef_current === void 0 ? void 0 : _onItemCrossRef_current.call(onItemCrossRef, getItemValue(item), liveDataIndex);\n fireSelectionHaptic();\n }, [\n liveDataIndex,\n items,\n n\n ]);\n var runSnapComplete = useCallback(function(finalOffset, dataIndex) {\n var safeIdx = Math.max(0, Math.min(dataIndex, n - 1));\n var settled = loopEnabled && n > 0 ? equivalentOffsetNear(0, finalOffset, n, itemHeight) : finalOffset;\n scrollOffsetRef.current = settled;\n setScrollOffset(settled);\n setSelectedIndex(safeIdx);\n onChange === null || onChange === void 0 ? void 0 : onChange(getItemValue(items[safeIdx]));\n isAnimatingRef.current = false;\n }, [\n items,\n n,\n onChange,\n loopEnabled,\n itemHeight\n ]);\n var animateToOffset = useCallback(function(targetOffset, dataIndex, animated) {\n var startOffset = scrollOffsetRef.current;\n var goal = loopEnabled && n > 0 ? equivalentOffsetNear(startOffset, targetOffset, n, itemHeight) : targetOffset;\n if (!animated || snapDurationMs <= 0) {\n runSnapComplete(goal, dataIndex);\n return;\n }\n var distance = goal - startOffset;\n if (Math.abs(distance) < 0.5) {\n runSnapComplete(goal, dataIndex);\n return;\n }\n var duration = snapDurationMs;\n var startTime = performance.now();\n var animate = function animate1(currentTime) {\n var elapsed = currentTime - startTime;\n var progress = Math.min(elapsed / duration, 1);\n var eased = 1 - Math.pow(1 - progress, 3);\n var newOffset = startOffset + distance * eased;\n scrollOffsetRef.current = newOffset;\n setScrollOffset(newOffset);\n if (progress < 1) {\n animationRef.current = requestAnimationFrame(animate);\n } else {\n runSnapComplete(goal, dataIndex);\n }\n };\n isAnimatingRef.current = true;\n if (animationRef.current) cancelAnimationFrame(animationRef.current);\n animationRef.current = requestAnimationFrame(animate);\n }, [\n loopEnabled,\n n,\n itemHeight,\n runSnapComplete,\n snapDurationMs\n ]);\n var snapToIndex = useCallback(function(targetIndex) {\n var animated = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;\n if (n === 0) return;\n var clampedData = Math.max(0, Math.min(targetIndex, n - 1));\n if (!loopEnabled) {\n var targetOffset = clampedData * itemHeight;\n animateToOffset(targetOffset, clampedData, animated);\n return;\n }\n var currentR = Math.round(scrollOffsetRef.current / itemHeight);\n var targetR = nearestRowForDataIndex(currentR, clampedData, n);\n var targetOffset1 = targetR * itemHeight;\n var dataIdx = modIndex(targetR, n);\n animateToOffset(targetOffset1, dataIdx, animated);\n }, [\n n,\n itemHeight,\n loopEnabled,\n animateToOffset\n ]);\n useEffect(function() {\n if (value === void 0) return;\n var index = items.findIndex(function(item) {\n return getItemValue(item) === value;\n });\n if (index === -1) return;\n if (!hasMountedRef.current) {\n hasMountedRef.current = true;\n setSelectedIndex(index);\n var raw = index * itemHeight;\n var settled = loopEnabled && n > 1 ? equivalentOffsetNear(0, raw, n, itemHeight) : raw;\n scrollOffsetRef.current = settled;\n setScrollOffset(settled);\n return;\n }\n if (isDraggingRef.current) {\n setSelectedIndex(index);\n return;\n }\n if (index === selectedIndexRef.current && !isAnimatingRef.current) {\n return;\n }\n snapToIndex(index, true);\n }, [\n value,\n items,\n itemHeight,\n loopEnabled,\n n,\n snapToIndex\n ]);\n var snapToNearestRow = useCallback(function() {\n var animated = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;\n if (n === 0) return;\n var r = Math.round(scrollOffsetRef.current / itemHeight);\n if (loopEnabled) {\n var targetOffset = r * itemHeight;\n var dataIdx = modIndex(r, n);\n animateToOffset(targetOffset, dataIdx, animated);\n } else {\n var dataIdx1 = Math.max(0, Math.min(r, n - 1));\n animateToOffset(dataIdx1 * itemHeight, dataIdx1, animated);\n }\n }, [\n n,\n itemHeight,\n loopEnabled,\n animateToOffset\n ]);\n var hitTestDataIndex = useCallback(function(tapY) {\n if (n === 0) return null;\n var offset = scrollOffsetRef.current;\n var centerRow = Math.round(offset / itemHeight);\n var rowBuffer = paddingItems + 5;\n var best = null;\n for (var vr = centerRow - rowBuffer; vr <= centerRow + rowBuffer; vr++) {\n if (!loopEnabled && (vr < 0 || vr >= n)) continue;\n var dataIndex = loopEnabled ? modIndex(vr, n) : vr;\n var { translateY } = getItemTransform(vr, offset, itemHeight, containerHeight);\n var dist = Math.abs(translateY + itemHeight / 2 - tapY);\n if (!best || dist < best.dist) best = {\n dataIndex,\n dist\n };\n }\n if (best && best.dist <= itemHeight) return best.dataIndex;\n return null;\n }, [\n n,\n itemHeight,\n paddingItems,\n loopEnabled,\n containerHeight\n ]);\n var startMomentum = useCallback(function(initialVelocity) {\n if (snapDurationMs <= 0) {\n snapToNearestRow(false);\n return;\n }\n var velocity = initialVelocity * momentumMultiplier;\n var offset = scrollOffsetRef.current;\n var animate = function animate1() {\n velocity *= friction;\n offset += velocity;\n if (!loopEnabled) {\n if (offset < minOffset) {\n offset = minOffset + rubberBand(offset - minOffset, containerHeight);\n velocity *= 0.5;\n } else if (offset > maxOffset) {\n offset = maxOffset + rubberBand(offset - maxOffset, containerHeight);\n velocity *= 0.5;\n }\n }\n scrollOffsetRef.current = offset;\n setScrollOffset(offset);\n if (Math.abs(velocity) > minVelocity) {\n animationRef.current = requestAnimationFrame(animate);\n } else {\n snapToNearestRow(true);\n }\n };\n isAnimatingRef.current = true;\n if (animationRef.current) cancelAnimationFrame(animationRef.current);\n animationRef.current = requestAnimationFrame(animate);\n }, [\n loopEnabled,\n minOffset,\n maxOffset,\n containerHeight,\n snapToNearestRow,\n snapDurationMs\n ]);\n var handlePointerDown = useCallback(function(e) {\n if (disabled) return;\n if (animationRef.current) {\n cancelAnimationFrame(animationRef.current);\n isAnimatingRef.current = false;\n }\n isDraggingRef.current = true;\n lastYRef.current = e.clientY;\n downYRef.current = e.clientY;\n dragDistanceRef.current = 0;\n lastTimeRef.current = performance.now();\n dragVelocitiesRef.current = [];\n if (isWeb && containerRef.current) {\n containerRef.current.setPointerCapture(e.pointerId);\n containerRef.current.style.cursor = \"grabbing\";\n }\n }, [\n disabled\n ]);\n var handlePointerMove = useCallback(function(e) {\n if (!isDraggingRef.current || disabled) return;\n var currentY = e.clientY;\n var currentTime = performance.now();\n var deltaY = lastYRef.current - currentY;\n var deltaTime = currentTime - lastTimeRef.current;\n dragDistanceRef.current += Math.abs(deltaY);\n if (deltaTime > 0) {\n var velocity = deltaY / deltaTime * 16;\n dragVelocitiesRef.current.push(velocity);\n if (dragVelocitiesRef.current.length > 5) {\n dragVelocitiesRef.current.shift();\n }\n }\n var newOffset = scrollOffsetRef.current + deltaY;\n if (!loopEnabled) {\n if (newOffset < minOffset) {\n newOffset = minOffset + rubberBand(newOffset - minOffset, containerHeight);\n } else if (newOffset > maxOffset) {\n newOffset = maxOffset + rubberBand(newOffset - maxOffset, containerHeight);\n }\n }\n scrollOffsetRef.current = newOffset;\n setScrollOffset(newOffset);\n lastYRef.current = currentY;\n lastTimeRef.current = currentTime;\n }, [\n disabled,\n loopEnabled,\n minOffset,\n maxOffset,\n containerHeight\n ]);\n var handlePointerUp = useCallback(function(e) {\n if (!isDraggingRef.current) return;\n isDraggingRef.current = false;\n if (isWeb && containerRef.current) {\n try {\n containerRef.current.releasePointerCapture(e.pointerId);\n } catch (unused) {\n }\n containerRef.current.style.cursor = disabled ? \"not-allowed\" : \"grab\";\n }\n if (dragDistanceRef.current < tapSlopPx) {\n var _ref2;\n var _containerRef_current;\n var localY = e.locationY;\n var rect = (_containerRef_current = containerRef.current) === null || _containerRef_current === void 0 ? void 0 : _containerRef_current.getBoundingClientRect();\n var tapY = typeof localY === \"number\" ? localY : e.clientY - ((_ref2 = rect === null || rect === void 0 ? void 0 : rect.top) !== null && _ref2 !== void 0 ? _ref2 : 0);\n var tapped = hitTestDataIndex(tapY);\n if (tapped != null) {\n snapToIndex(tapped, true);\n return;\n }\n }\n var velocities = dragVelocitiesRef.current;\n if (velocities.length > 0) {\n var avgVelocity = velocities.reduce(function(a, b) {\n return a + b;\n }, 0) / velocities.length;\n if (Math.abs(avgVelocity) > minVelocity * 2) {\n startMomentum(avgVelocity);\n } else {\n snapToNearestRow(true);\n }\n } else {\n snapToNearestRow(true);\n }\n }, [\n snapToNearestRow,\n startMomentum,\n hitTestDataIndex,\n snapToIndex,\n disabled\n ]);\n var disabledRef = useRef(disabled);\n disabledRef.current = disabled;\n var pointerDownRef = useRef(handlePointerDown);\n pointerDownRef.current = handlePointerDown;\n var pointerMoveRef = useRef(handlePointerMove);\n pointerMoveRef.current = handlePointerMove;\n var pointerUpRef = useRef(handlePointerUp);\n pointerUpRef.current = handlePointerUp;\n var panResponder = useMemo(function() {\n if (isWeb) return {\n panHandlers: {}\n };\n return PanResponder.create({\n onStartShouldSetPanResponder: function onStartShouldSetPanResponder() {\n return !disabledRef.current;\n },\n onMoveShouldSetPanResponder: function onMoveShouldSetPanResponder(_, gesture) {\n return Math.abs(gesture.dy) > 1;\n },\n onPanResponderTerminationRequest: function onPanResponderTerminationRequest() {\n return false;\n },\n onShouldBlockNativeResponder: function onShouldBlockNativeResponder() {\n return true;\n },\n onPanResponderGrant: function onPanResponderGrant(evt) {\n pointerDownRef.current({\n clientY: evt.nativeEvent.pageY,\n pointerId: 1\n });\n },\n onPanResponderMove: function onPanResponderMove(evt) {\n pointerMoveRef.current({\n clientY: evt.nativeEvent.pageY,\n pointerId: 1\n });\n },\n onPanResponderRelease: function onPanResponderRelease(evt) {\n pointerUpRef.current({\n clientY: evt.nativeEvent.pageY,\n pointerId: 1,\n locationY: evt.nativeEvent.locationY\n });\n },\n onPanResponderTerminate: function onPanResponderTerminate(evt) {\n pointerUpRef.current({\n clientY: evt.nativeEvent.pageY,\n pointerId: 1,\n locationY: evt.nativeEvent.locationY\n });\n }\n });\n }, []);\n var handleWheel = useCallback(function(e) {\n if (disabled) return;\n e.preventDefault();\n if (animationRef.current) {\n cancelAnimationFrame(animationRef.current);\n isAnimatingRef.current = false;\n }\n var delta = e.deltaY;\n var currentOffset = scrollOffsetRef.current;\n var newOffset = currentOffset + delta;\n if (!loopEnabled) {\n if (newOffset < minOffset) {\n newOffset = minOffset;\n } else if (newOffset > maxOffset) {\n newOffset = maxOffset;\n }\n }\n scrollOffsetRef.current = newOffset;\n setScrollOffset(newOffset);\n if (animationRef.current) cancelAnimationFrame(animationRef.current);\n animationRef.current = requestAnimationFrame(function() {\n setTimeout(function() {\n if (!isDraggingRef.current && !isAnimatingRef.current) {\n snapToNearestRow(true);\n }\n }, 100);\n });\n }, [\n disabled,\n loopEnabled,\n minOffset,\n maxOffset,\n snapToNearestRow\n ]);\n var handleKeyDown = useCallback(function(e) {\n if (disabled) return;\n var delta = 0;\n switch (e.key) {\n case \"ArrowUp\":\n case \"k\":\n delta = -1;\n break;\n case \"ArrowDown\":\n case \"j\":\n delta = 1;\n break;\n case \"PageUp\":\n delta = -visibleItems;\n break;\n case \"PageDown\":\n delta = visibleItems;\n break;\n case \"Home\":\n snapToIndex(0);\n e.preventDefault();\n return;\n case \"End\":\n snapToIndex(n - 1);\n e.preventDefault();\n return;\n default:\n return;\n }\n e.preventDefault();\n if (loopEnabled) {\n var newIndex = modIndex(selectedIndex + delta, n);\n snapToIndex(newIndex);\n } else {\n var newIndex1 = Math.max(0, Math.min(selectedIndex + delta, n - 1));\n snapToIndex(newIndex1);\n }\n }, [\n disabled,\n selectedIndex,\n n,\n visibleItems,\n snapToIndex,\n loopEnabled\n ]);\n useEffect(function() {\n if (!isWeb) return;\n var container = containerRef.current;\n if (!container) return;\n var wheelHandler = function wheelHandler2(e) {\n return handleWheel(e);\n };\n container.addEventListener(\"wheel\", wheelHandler, {\n passive: false\n });\n return function() {\n container.removeEventListener(\"wheel\", wheelHandler);\n };\n }, [\n handleWheel\n ]);\n useEffect(function() {\n return function() {\n if (animationRef.current) {\n cancelAnimationFrame(animationRef.current);\n }\n };\n }, []);\n var renderRows = useMemo(function() {\n if (n === 0) return [];\n if (loopEnabled) {\n var centerRow = Math.round(scrollOffset / itemHeight);\n var rowBuffer = paddingItems + 5;\n var list = [];\n for (var vr = centerRow - rowBuffer; vr <= centerRow + rowBuffer; vr++) {\n list.push({\n virtualRow: vr,\n dataIndex: modIndex(vr, n)\n });\n }\n return list;\n }\n var start = Math.max(0, Math.floor(scrollOffset / itemHeight) - paddingItems - 1);\n var end = Math.min(n - 1, Math.ceil((scrollOffset + containerHeight) / itemHeight) + paddingItems + 1);\n return Array.from({\n length: end - start + 1\n }, function(_, i) {\n var virtualRow = start + i;\n return {\n virtualRow,\n dataIndex: virtualRow\n };\n });\n }, [\n n,\n loopEnabled,\n scrollOffset,\n itemHeight,\n paddingItems,\n containerHeight\n ]);\n var itemColor = function itemColor2(isSelected) {\n return disabled ? \"$color10\" : isSelected ? \"$color12\" : \"$color11\";\n };\n var radiusToken = knobProps.borderRadius.borderRadius;\n var highlightStyle = highlightBandStyle(highlightEdges, radiusToken, Boolean(knobProps.pointy));\n var highlightSmoothClass = \"className\" in knobProps.borderRadius && typeof knobProps.borderRadius.className === \"string\" ? knobProps.borderRadius.className : void 0;\n var renderItemNode = function renderItemNode2(dataIndex, isSelected) {\n var item = items[dataIndex];\n var itemValue = getItemValue(item);\n if (renderItem) return renderItem(itemValue, dataIndex, isSelected);\n return /* @__PURE__ */ _jsx(Text, {\n ...knobProps.body,\n fontSize: size,\n color: itemColor(isSelected),\n numberOfLines: 1,\n ellipsizeMode: \"tail\",\n maxWidth: \"100%\",\n paddingHorizontal: \"$2\",\n children: getItemLabel(item)\n });\n };\n return /* @__PURE__ */ _jsxs(WheelContainer, {\n height: containerHeight,\n width: flex ? \"100%\" : columnWidth,\n minWidth: flex ? 0 : columnWidth,\n flex,\n \"data-testid\": \"wheel\",\n \"data-disabled\": disabled ? true : void 0,\n \"aria-disabled\": disabled || void 0,\n opacity: 1,\n children: [\n /* iOS 14+ selection fill — LC-71 selected=fill, never hairline borders */\n /* @__PURE__ */ _jsx(SelectionIndicator, {\n className: highlightSmoothClass,\n backgroundColor: \"$color4\",\n top: paddingItems * itemHeight,\n height: itemHeight,\n style: highlightStyle,\n \"data-testid\": \"wheel-selection\"\n }),\n /* Interactive container */\n isWeb ? /* @__PURE__ */ _jsx(\"div\", {\n ref: containerRef,\n className: \"mp1-wheel-wrapper\",\n tabIndex: disabled ? -1 : 0,\n role: \"slider\",\n \"aria-label\": ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : t(\"Value picker\"),\n \"aria-orientation\": \"vertical\",\n \"aria-valuemin\": 0,\n \"aria-valuemax\": Math.max(0, n - 1),\n \"aria-valuenow\": selectedIndex,\n \"aria-valuetext\": items[selectedIndex] !== void 0 ? getItemLabel(items[selectedIndex]) : void 0,\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? true : void 0,\n style: {\n width: \"100%\",\n height: containerHeight,\n position: \"relative\",\n perspective: `${perspectivePx}px`,\n perspectiveOrigin: \"center center\",\n overflow: \"hidden\",\n userSelect: \"none\",\n touchAction: \"none\",\n cursor: disabled ? \"not-allowed\" : \"grab\",\n ...wheelMaskStyle\n },\n onPointerDown: handlePointerDown,\n onPointerMove: handlePointerMove,\n onPointerUp: handlePointerUp,\n onPointerCancel: handlePointerUp,\n onKeyDown: handleKeyDown,\n \"data-testid\": \"wheel-wrapper\",\n children: renderRows.map(function(param2) {\n var { virtualRow, dataIndex } = param2;\n var isSelected = dataIndex === liveDataIndex;\n var transform = getItemTransform(virtualRow, scrollOffset, itemHeight, containerHeight);\n if (Math.abs(transform.rotateX) > 85) return null;\n return /* @__PURE__ */ _jsx(\"div\", {\n \"data-testid\": \"wheel-item\",\n \"data-index\": dataIndex,\n \"data-selected\": isSelected ? true : void 0,\n \"aria-hidden\": isSelected ? void 0 : true,\n style: {\n position: \"absolute\",\n left: 0,\n right: 0,\n height: itemHeight,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n transform: `translateY(${transform.translateY}px) rotateX(${transform.rotateX}deg) scale(${transform.scale})`,\n opacity: transform.opacity,\n pointerEvents: \"none\",\n transformOrigin: \"center center\",\n transformStyle: \"preserve-3d\",\n backfaceVisibility: \"hidden\"\n },\n children: renderItemNode(dataIndex, isSelected)\n }, `${dataIndex}-${virtualRow}`);\n })\n }) : /* @__PURE__ */ _jsxs(View, {\n width: \"100%\",\n height: containerHeight,\n position: \"relative\",\n overflow: \"hidden\",\n cursor: disabled ? \"not-allowed\" : \"grab\",\n \"data-testid\": \"wheel-wrapper\",\n \"data-disabled\": disabled ? true : void 0,\n \"aria-disabled\": disabled || void 0,\n ...panResponder.panHandlers,\n children: [\n renderRows.map(function(param2) {\n var { virtualRow, dataIndex } = param2;\n var isSelected = dataIndex === liveDataIndex;\n var transform = getItemTransform(virtualRow, scrollOffset, itemHeight, containerHeight);\n if (Math.abs(transform.rotateX) > 85) return null;\n return /* @__PURE__ */ _jsx(View, {\n position: \"absolute\",\n left: 0,\n right: 0,\n height: itemHeight,\n alignItems: \"center\",\n justifyContent: \"center\",\n opacity: transform.opacity,\n pointerEvents: \"none\",\n y: transform.translateY,\n scale: transform.scale,\n rotateX: `${transform.rotateX}deg`,\n \"data-testid\": \"wheel-item\",\n \"data-index\": dataIndex,\n \"data-selected\": isSelected ? true : void 0,\n children: renderItemNode(dataIndex, isSelected)\n }, `${dataIndex}-${virtualRow}`);\n }),\n /* @__PURE__ */ _jsx(WheelEdgeFade, {\n height: paddingItems * itemHeight\n })\n ]\n })\n ]\n });\n}\nWheel.Item = WheelItemContainer;\nexport {\n Wheel\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useCallback","useEffect","useMemo","useRef","useState","View","isWeb","styled","Text","t","fireSelectionHaptic","NativeWheel","defaultColumnWidth","drumPose","drumReachRows","getItemLabel","getItemValue","modIndex","nearestRowForDataIndex","useWheelLayout","friction","minVelocity","momentumMultiplier","rubberBandConstant","tapSlopPx","WHEEL_FOCUS_STYLE_ID","ensureWheelFocusStyles","document","getElementById","style","createElement","id","textContent","head","appendChild","wheelMaskStyle","WebkitMaskImage","maskImage","WheelContainer","name","position","overflow","userSelect","WheelItemContainer","left","right","alignItems","justifyContent","SelectionIndicator","pointerEvents","equivalentOffsetNear","referenceOffset","targetOffset","n","itemHeight","rT","Math","round","m","span","base","k","rubberBand","offset","dimension","c","x","abs","result","getItemTransform","index","scrollOffset","containerHeight","pose","translateY","rotateX","scale","opacity","Wheel","props","WebWheel","items","value","onChange","visibleItems","width","widthProp","renderItem","disabled","loop","flex","onItemCross","ariaLabel","knobProps","size","snapDurationMs","highlightStyle","highlightClassName","columnWidth","containerRef","setScrollOffset","selectedIndex","setSelectedIndex","length","loopEnabled","Boolean","scrollOffsetRef","current","animationRef","isAnimatingRef","hasMountedRef","selectedIndexRef","isDraggingRef","lastYRef","downYRef","dragDistanceRef","lastTimeRef","dragVelocitiesRef","paddingItems","floor","minOffset","maxOffset","liveDataIndex","max","min","lastCrossIndexRef","onItemCrossRef","_onItemCrossRef_current","item","call","runSnapComplete","finalOffset","dataIndex","safeIdx","settled","animateToOffset","animated","startOffset","goal","distance","duration","startTime","performance","now","animate","animate1","currentTime","elapsed","progress","eased","pow","newOffset","requestAnimationFrame","cancelAnimationFrame","snapToIndex","targetIndex","arguments","clampedData","currentR","targetR","targetOffset1","dataIdx","findIndex","raw","snapToNearestRow","r","dataIdx1","hitTestDataIndex","tapY","centerRow","rowBuffer","best","vr","dist","startMomentum","initialVelocity","velocity","handlePointerDown","e","clientY","setPointerCapture","pointerId","cursor","handlePointerMove","currentY","deltaY","deltaTime","push","shift","handlePointerUp","releasePointerCapture","unused","_ref","_containerRef_current","localY","locationY","rect","getBoundingClientRect","top","tapped","velocities","avgVelocity","reduce","a","b","handleWheel","preventDefault","delta","currentOffset","setTimeout","handleKeyDown","key","newIndex","newIndex1","container","wheelHandler","wheelHandler2","addEventListener","passive","removeEventListener","renderRows","ceil","first","last","list","virtualRow","itemColor","itemColor2","isSelected","renderItemNode","renderItemNode2","itemValue","body","fontSize","color","numberOfLines","ellipsizeMode","maxWidth","paddingHorizontal","children","height","minWidth","className","backgroundColor","ref","tabIndex","role","perspective","perspectiveOrigin","touchAction"],"sources":["../../../src/Wheel/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|