@multiplatform.one/forms 7.90.5 → 8.0.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 +2 -2
- package/dist/cjs/AdaptivePopup/index.native.js.map +1 -1
- package/dist/cjs/Button/IconButtonGroup.native.js.map +1 -1
- package/dist/cjs/Button/circleGlyph.native.js.map +1 -1
- package/dist/cjs/Button/iconButtonGroupContext.native.js.map +1 -1
- package/dist/cjs/Button/index.cjs +1 -2
- package/dist/cjs/Button/index.native.js +3 -4
- package/dist/cjs/Button/index.native.js.map +1 -1
- package/dist/cjs/Button/webGlass.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.cjs +1 -1
- package/dist/cjs/ContextualSaveBar/index.native.js +4 -4
- 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/PanelHeader.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/RegularPanel.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/compactFace.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/containingBlock.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/coverRect.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/echoContext.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/index.cjs +1 -4
- package/dist/cjs/FloatingPanel/index.native.js +2 -3
- package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/nestedAction.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/paintedBox.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/panelWidth.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/pointAnchor.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/regularPlacement.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/trailingAction.native.js +1 -1
- package/dist/cjs/FloatingPanel/trailingAction.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/useFloatingPanel.cjs +1 -7
- package/dist/cjs/FloatingPanel/useFloatingPanel.native.js +1 -7
- 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/PasswordReveal.native.js.map +1 -1
- package/dist/cjs/InputParts/index.native.js.map +1 -1
- package/dist/cjs/InputParts/keyboardAppearance.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.cjs +0 -2
- package/dist/cjs/fields/Checkbox/Checkbox.native.js +1 -3
- 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.cjs +2 -4
- package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +3 -5
- 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/SystemColorField.native.js.map +1 -1
- package/dist/cjs/fields/ColorPicker/index.cjs +1 -3
- package/dist/cjs/fields/ColorPicker/index.native.js +4 -6
- 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/ColorPicker/systemColorWell.gnome.native.js.map +1 -1
- package/dist/cjs/fields/Combobox/authorOptions.native.js.map +1 -1
- package/dist/cjs/fields/Combobox/index.cjs +0 -2
- package/dist/cjs/fields/Combobox/index.native.js +6 -8
- 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.cjs +2 -5
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +5 -8
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +3 -5
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- 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.cjs +2 -5
- package/dist/cjs/fields/DatePicker/catalog.native.js +4 -7
- 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 +3 -5
- package/dist/cjs/fields/DatePicker/index.native.js.map +1 -1
- 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/DurationWheel.native.js +1 -1
- package/dist/cjs/fields/Duration/durationMath.native.js.map +1 -1
- package/dist/cjs/fields/Duration/durationWheelTypes.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.cjs +1 -3
- package/dist/cjs/fields/FileUpload/index.native.js +3 -5
- 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.cjs +4 -4
- package/dist/cjs/fields/Geolocation/index.native.js +9 -9
- 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.cjs +1 -3
- package/dist/cjs/fields/Icon/index.native.js +4 -6
- package/dist/cjs/fields/Icon/index.native.js.map +1 -1
- package/dist/cjs/fields/ImageField/index.cjs +1 -5
- package/dist/cjs/fields/ImageField/index.native.js +3 -7
- package/dist/cjs/fields/ImageField/index.native.js.map +1 -1
- package/dist/cjs/fields/Input/index.native.js +3 -3
- package/dist/cjs/fields/Input/index.native.js.map +1 -1
- package/dist/cjs/fields/MentionInput/index.cjs +3 -5
- package/dist/cjs/fields/MentionInput/index.native.js +6 -8
- 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/OTPInput/otpCellEdge.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.cjs +0 -2
- package/dist/cjs/fields/RadioGroup/index.native.js +1 -3
- 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/InlineChoices.native.js.map +1 -1
- package/dist/cjs/fields/Select/SheetPickerRow.native.js.map +1 -1
- package/dist/cjs/fields/Select/index.cjs +0 -2
- package/dist/cjs/fields/Select/index.native.js +7 -9
- package/dist/cjs/fields/Select/index.native.js.map +1 -1
- package/dist/cjs/fields/Select/shouldInlineChoices.native.js.map +1 -1
- package/dist/cjs/fields/Signature/index.cjs +1 -1
- package/dist/cjs/fields/Signature/index.native.js +7 -5
- package/dist/cjs/fields/Signature/index.native.js.map +1 -1
- package/dist/cjs/fields/Slider/index.cjs +0 -2
- package/dist/cjs/fields/Slider/index.native.js +1 -3
- 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.cjs +0 -2
- package/dist/cjs/fields/TextArea/index.native.js +3 -5
- 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.cjs +0 -2
- package/dist/cjs/fields/ToggleGroup/index.native.js +2 -4
- package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js +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/nativeDateTime/sheetKeyboard.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.gnome.cjs +200 -0
- package/dist/cjs/index.gnome.native.js +203 -0
- package/dist/cjs/index.gnome.native.js.map +1 -0
- package/dist/cjs/index.native.js +45 -45
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/keyboard/KeyboardDoneBar.native.js +1 -1
- package/dist/cjs/keyboard/chain.native.js.map +1 -1
- package/dist/cjs/keyboard/index.native.js.map +1 -1
- package/dist/cjs/keyboard/types.native.js.map +1 -1
- package/dist/cjs/nativeTwins.cjs +28 -0
- package/dist/cjs/nativeTwins.native.js +31 -0
- package/dist/cjs/nativeTwins.native.js.map +1 -0
- package/dist/cjs/requiredMarking.native.js.map +1 -1
- package/dist/cjs/shared/CheckGlyph.native.js.map +1 -1
- package/dist/cjs/shared/OverlayWindow.native.js +2 -33
- package/dist/cjs/shared/OverlayWindow.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/checkedOnField.native.js.map +1 -1
- package/dist/cjs/shared/choiceRowPress.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/fieldRowContext.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/nativeAutoFocus.native.js.map +1 -1
- package/dist/cjs/shared/nativeOverlayWindow.cjs +50 -0
- package/dist/cjs/shared/nativeOverlayWindow.native.js +54 -0
- package/dist/cjs/shared/nativeOverlayWindow.native.js.map +1 -0
- package/dist/cjs/shared/overlaySizeClass.native.js.map +1 -1
- package/dist/cjs/shared/overlayStack.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/restoreRetries.native.js.map +1 -1
- package/dist/cjs/shared/sheetNavigation.native.js.map +1 -1
- package/dist/cjs/shared/systemControlModules.gnome.native.js.map +1 -1
- package/dist/cjs/shared/systemControls.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/standardActions.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/IconButtonGroup.native.js.map +1 -1
- package/dist/esm/Button/circleGlyph.native.js.map +1 -1
- package/dist/esm/Button/iconButtonGroupContext.native.js.map +1 -1
- package/dist/esm/Button/index.mjs +2 -3
- package/dist/esm/Button/index.mjs.map +1 -1
- package/dist/esm/Button/index.native.js +2 -3
- package/dist/esm/Button/index.native.js.map +1 -1
- package/dist/esm/Button/webGlass.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.mjs +1 -1
- package/dist/esm/ContextualSaveBar/index.mjs.map +1 -1
- package/dist/esm/ContextualSaveBar/index.native.js +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/PanelHeader.native.js.map +1 -1
- package/dist/esm/FloatingPanel/RegularPanel.native.js.map +1 -1
- package/dist/esm/FloatingPanel/compactFace.native.js.map +1 -1
- package/dist/esm/FloatingPanel/containingBlock.native.js.map +1 -1
- package/dist/esm/FloatingPanel/coverRect.native.js.map +1 -1
- package/dist/esm/FloatingPanel/echoContext.native.js.map +1 -1
- package/dist/esm/FloatingPanel/index.mjs +3 -5
- package/dist/esm/FloatingPanel/index.mjs.map +1 -1
- package/dist/esm/FloatingPanel/index.native.js +3 -4
- package/dist/esm/FloatingPanel/index.native.js.map +1 -1
- package/dist/esm/FloatingPanel/nestedAction.native.js.map +1 -1
- package/dist/esm/FloatingPanel/paintedBox.native.js.map +1 -1
- package/dist/esm/FloatingPanel/panelWidth.native.js.map +1 -1
- package/dist/esm/FloatingPanel/pointAnchor.native.js.map +1 -1
- package/dist/esm/FloatingPanel/regularPlacement.native.js.map +1 -1
- package/dist/esm/FloatingPanel/trailingAction.native.js.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.mjs +2 -7
- package/dist/esm/FloatingPanel/useFloatingPanel.mjs.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.native.js +2 -7
- 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/PasswordReveal.native.js.map +1 -1
- package/dist/esm/InputParts/index.native.js.map +1 -1
- package/dist/esm/InputParts/keyboardAppearance.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/haptic.native.js.map +1 -1
- package/dist/esm/Wheel/index.native.js.map +1 -1
- package/dist/esm/Wheel/wheelShared.native.js.map +1 -1
- 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.mjs +0 -2
- package/dist/esm/fields/Checkbox/Checkbox.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/Checkbox.native.js +0 -2
- 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.mjs +2 -4
- package/dist/esm/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxGroup.native.js +2 -4
- 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/SystemColorField.native.js.map +1 -1
- package/dist/esm/fields/ColorPicker/index.mjs +1 -3
- package/dist/esm/fields/ColorPicker/index.mjs.map +1 -1
- package/dist/esm/fields/ColorPicker/index.native.js +2 -4
- 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/ColorPicker/systemColorWell.gnome.native.js.map +1 -1
- package/dist/esm/fields/Combobox/authorOptions.native.js.map +1 -1
- package/dist/esm/fields/Combobox/index.mjs +0 -2
- package/dist/esm/fields/Combobox/index.mjs.map +1 -1
- package/dist/esm/fields/Combobox/index.native.js +1 -3
- 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.mjs +2 -5
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js +2 -5
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.native.js +1 -3
- package/dist/esm/fields/DatePicker/DatetimePicker.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.mjs +2 -5
- package/dist/esm/fields/DatePicker/catalog.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/catalog.native.js +2 -5
- 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/index.native.js +1 -3
- package/dist/esm/fields/DatePicker/index.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/durationWheelTypes.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.mjs +1 -3
- package/dist/esm/fields/FileUpload/index.mjs.map +1 -1
- package/dist/esm/fields/FileUpload/index.native.js +1 -3
- 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.mjs +4 -4
- package/dist/esm/fields/Geolocation/index.mjs.map +1 -1
- package/dist/esm/fields/Geolocation/index.native.js +4 -4
- 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.mjs +1 -3
- package/dist/esm/fields/Icon/index.mjs.map +1 -1
- package/dist/esm/fields/Icon/index.native.js +1 -3
- package/dist/esm/fields/Icon/index.native.js.map +1 -1
- package/dist/esm/fields/ImageField/index.mjs +1 -5
- package/dist/esm/fields/ImageField/index.mjs.map +1 -1
- package/dist/esm/fields/ImageField/index.native.js +1 -5
- 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.mjs +3 -5
- package/dist/esm/fields/MentionInput/index.mjs.map +1 -1
- package/dist/esm/fields/MentionInput/index.native.js +3 -5
- 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/OTPInput/otpCellEdge.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.mjs +0 -2
- package/dist/esm/fields/RadioGroup/index.mjs.map +1 -1
- package/dist/esm/fields/RadioGroup/index.native.js +0 -2
- 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/InlineChoices.native.js.map +1 -1
- package/dist/esm/fields/Select/SheetPickerRow.native.js.map +1 -1
- package/dist/esm/fields/Select/index.mjs +0 -2
- package/dist/esm/fields/Select/index.mjs.map +1 -1
- package/dist/esm/fields/Select/index.native.js +3 -5
- package/dist/esm/fields/Select/index.native.js.map +1 -1
- package/dist/esm/fields/Select/shouldInlineChoices.native.js.map +1 -1
- package/dist/esm/fields/Signature/index.mjs +1 -1
- package/dist/esm/fields/Signature/index.mjs.map +1 -1
- package/dist/esm/fields/Signature/index.native.js +5 -3
- package/dist/esm/fields/Signature/index.native.js.map +1 -1
- package/dist/esm/fields/Slider/index.mjs +0 -2
- package/dist/esm/fields/Slider/index.mjs.map +1 -1
- package/dist/esm/fields/Slider/index.native.js +0 -2
- 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.mjs +0 -2
- package/dist/esm/fields/TextArea/index.mjs.map +1 -1
- package/dist/esm/fields/TextArea/index.native.js +1 -3
- 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.mjs +0 -2
- package/dist/esm/fields/ToggleGroup/index.mjs.map +1 -1
- package/dist/esm/fields/ToggleGroup/index.native.js +1 -3
- 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/nativeDateTime/sheetKeyboard.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.gnome.mjs +61 -0
- package/dist/esm/index.gnome.mjs.map +1 -0
- package/dist/esm/index.gnome.native.js +61 -0
- package/dist/esm/index.gnome.native.js.map +1 -0
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/keyboard/chain.native.js.map +1 -1
- package/dist/esm/keyboard/index.native.js.map +1 -1
- package/dist/esm/keyboard/types.native.js.map +1 -1
- package/dist/esm/nativeTwins.mjs +3 -0
- package/dist/esm/nativeTwins.mjs.map +1 -0
- package/dist/esm/nativeTwins.native.js +3 -0
- package/dist/esm/nativeTwins.native.js.map +1 -0
- package/dist/esm/requiredMarking.native.js.map +1 -1
- package/dist/esm/shared/CheckGlyph.native.js.map +1 -1
- package/dist/esm/shared/OverlayWindow.native.js +1 -25
- package/dist/esm/shared/OverlayWindow.native.js.map +1 -1
- package/dist/esm/shared/TimeColumn.native.js.map +1 -1
- package/dist/esm/shared/capabilityPreflight.native.js.map +1 -1
- package/dist/esm/shared/checkedOnField.native.js.map +1 -1
- package/dist/esm/shared/choiceRowPress.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/fieldRowContext.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/nativeAutoFocus.native.js.map +1 -1
- package/dist/esm/shared/nativeOverlayWindow.mjs +25 -0
- package/dist/esm/shared/nativeOverlayWindow.mjs.map +1 -0
- package/dist/esm/shared/nativeOverlayWindow.native.js +26 -0
- package/dist/esm/shared/nativeOverlayWindow.native.js.map +1 -0
- package/dist/esm/shared/overlaySizeClass.native.js.map +1 -1
- package/dist/esm/shared/overlayStack.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/restoreRetries.native.js.map +1 -1
- package/dist/esm/shared/sheetNavigation.native.js.map +1 -1
- package/dist/esm/shared/systemControlModules.gnome.native.js.map +1 -1
- package/dist/esm/shared/systemControls.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/standardActions.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/Button/index.mjs +2 -3
- package/dist/jsx/Button/index.mjs.map +1 -1
- package/dist/jsx/Button/index.native.js +1 -2
- package/dist/jsx/Button/index.native.js.map +1 -1
- package/dist/jsx/ContextualSaveBar/index.mjs +1 -1
- package/dist/jsx/ContextualSaveBar/index.mjs.map +1 -1
- package/dist/jsx/ContextualSaveBar/index.native.js +1 -1
- package/dist/jsx/ContextualSaveBar/index.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/index.mjs +3 -5
- package/dist/jsx/FloatingPanel/index.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/index.native.js +2 -3
- package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/useFloatingPanel.mjs +2 -7
- package/dist/jsx/FloatingPanel/useFloatingPanel.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/useFloatingPanel.native.js +1 -7
- package/dist/jsx/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/Checkbox.mjs +0 -2
- package/dist/jsx/fields/Checkbox/Checkbox.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/Checkbox.native.js +0 -2
- package/dist/jsx/fields/Checkbox/Checkbox.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs +2 -4
- package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js +2 -4
- package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
- package/dist/jsx/fields/ColorPicker/index.mjs +1 -3
- package/dist/jsx/fields/ColorPicker/index.mjs.map +1 -1
- package/dist/jsx/fields/ColorPicker/index.native.js +2 -4
- package/dist/jsx/fields/ColorPicker/index.native.js.map +1 -1
- package/dist/jsx/fields/Combobox/index.mjs +0 -2
- package/dist/jsx/fields/Combobox/index.mjs.map +1 -1
- package/dist/jsx/fields/Combobox/index.native.js +1 -3
- package/dist/jsx/fields/Combobox/index.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs +2 -5
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js +2 -5
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.native.js +1 -3
- package/dist/jsx/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/catalog.mjs +2 -5
- package/dist/jsx/fields/DatePicker/catalog.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/catalog.native.js +2 -5
- package/dist/jsx/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/index.native.js +1 -3
- package/dist/jsx/fields/DatePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/FileUpload/index.mjs +1 -3
- package/dist/jsx/fields/FileUpload/index.mjs.map +1 -1
- package/dist/jsx/fields/FileUpload/index.native.js +1 -3
- package/dist/jsx/fields/FileUpload/index.native.js.map +1 -1
- package/dist/jsx/fields/Geolocation/index.mjs +4 -4
- package/dist/jsx/fields/Geolocation/index.mjs.map +1 -1
- package/dist/jsx/fields/Geolocation/index.native.js +4 -4
- package/dist/jsx/fields/Geolocation/index.native.js.map +1 -1
- package/dist/jsx/fields/Icon/index.mjs +1 -3
- package/dist/jsx/fields/Icon/index.mjs.map +1 -1
- package/dist/jsx/fields/Icon/index.native.js +1 -3
- package/dist/jsx/fields/Icon/index.native.js.map +1 -1
- package/dist/jsx/fields/ImageField/index.mjs +1 -5
- package/dist/jsx/fields/ImageField/index.mjs.map +1 -1
- package/dist/jsx/fields/ImageField/index.native.js +1 -5
- package/dist/jsx/fields/ImageField/index.native.js.map +1 -1
- package/dist/jsx/fields/MentionInput/index.mjs +3 -5
- package/dist/jsx/fields/MentionInput/index.mjs.map +1 -1
- package/dist/jsx/fields/MentionInput/index.native.js +3 -5
- package/dist/jsx/fields/MentionInput/index.native.js.map +1 -1
- package/dist/jsx/fields/RadioGroup/index.mjs +0 -2
- package/dist/jsx/fields/RadioGroup/index.mjs.map +1 -1
- package/dist/jsx/fields/RadioGroup/index.native.js +0 -2
- package/dist/jsx/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/jsx/fields/Select/index.mjs +0 -2
- package/dist/jsx/fields/Select/index.mjs.map +1 -1
- package/dist/jsx/fields/Select/index.native.js +3 -5
- package/dist/jsx/fields/Select/index.native.js.map +1 -1
- package/dist/jsx/fields/Signature/index.mjs +1 -1
- package/dist/jsx/fields/Signature/index.mjs.map +1 -1
- package/dist/jsx/fields/Signature/index.native.js +5 -3
- package/dist/jsx/fields/Signature/index.native.js.map +1 -1
- package/dist/jsx/fields/Slider/index.mjs +0 -2
- package/dist/jsx/fields/Slider/index.mjs.map +1 -1
- package/dist/jsx/fields/Slider/index.native.js +0 -2
- package/dist/jsx/fields/Slider/index.native.js.map +1 -1
- package/dist/jsx/fields/TextArea/index.mjs +0 -2
- package/dist/jsx/fields/TextArea/index.mjs.map +1 -1
- package/dist/jsx/fields/TextArea/index.native.js +1 -3
- package/dist/jsx/fields/TextArea/index.native.js.map +1 -1
- package/dist/jsx/fields/ToggleGroup/index.mjs +0 -2
- package/dist/jsx/fields/ToggleGroup/index.mjs.map +1 -1
- package/dist/jsx/fields/ToggleGroup/index.native.js +1 -3
- package/dist/jsx/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/jsx/index.gnome.mjs +61 -0
- package/dist/jsx/index.gnome.mjs.map +1 -0
- package/dist/jsx/index.gnome.native.js +203 -0
- package/dist/jsx/index.gnome.native.js.map +1 -0
- package/dist/jsx/nativeTwins.mjs +3 -0
- package/dist/jsx/nativeTwins.mjs.map +1 -0
- package/dist/jsx/nativeTwins.native.js +31 -0
- package/dist/jsx/nativeTwins.native.js.map +1 -0
- package/dist/jsx/shared/OverlayWindow.native.js +2 -33
- package/dist/jsx/shared/OverlayWindow.native.js.map +1 -1
- package/dist/jsx/shared/nativeOverlayWindow.mjs +25 -0
- package/dist/jsx/shared/nativeOverlayWindow.mjs.map +1 -0
- package/dist/jsx/shared/nativeOverlayWindow.native.js +54 -0
- package/dist/jsx/shared/nativeOverlayWindow.native.js.map +1 -0
- package/package.json +22 -9
- package/src/Button/index.tsx +2 -7
- package/src/ContextualSaveBar/index.tsx +1 -1
- package/src/FloatingPanel/FloatingPanel.stories.tsx +1 -1
- package/src/FloatingPanel/index.native.tsx +2 -3
- package/src/FloatingPanel/index.tsx +1 -10
- package/src/FloatingPanel/panelWidthContract.spec.ts +1 -10
- package/src/FloatingPanel/useFloatingPanel.spec.tsx +0 -26
- package/src/FloatingPanel/useFloatingPanel.ts +1 -19
- package/src/FloatingPanel/viewportHydration.spec.tsx +2 -2
- package/src/fields/Checkbox/Checkbox.spec.tsx +8 -25
- package/src/fields/Checkbox/Checkbox.stories.tsx +4 -4
- package/src/fields/Checkbox/Checkbox.tsx +1 -5
- package/src/fields/Checkbox/CheckboxGroup.stories.tsx +2 -2
- package/src/fields/Checkbox/CheckboxGroup.tsx +3 -8
- package/src/fields/ColorPicker/ColorPicker.spec.tsx +2 -11
- package/src/fields/ColorPicker/index.tsx +3 -7
- package/src/fields/Combobox/Combobox.spec.tsx +1 -5
- package/src/fields/Combobox/Combobox.stories.tsx +6 -6
- package/src/fields/Combobox/index.tsx +1 -6
- package/src/fields/DatePicker/DatePicker.spec.tsx +4 -21
- package/src/fields/DatePicker/DatetimePicker.catalog.tsx +3 -9
- package/src/fields/DatePicker/DatetimePicker.native.spec.tsx +3 -13
- package/src/fields/DatePicker/DatetimePicker.native.tsx +1 -4
- package/src/fields/DatePicker/DatetimePicker.spec.tsx +3 -18
- package/src/fields/DatePicker/DatetimePicker.stories.tsx +3 -3
- package/src/fields/DatePicker/catalog.tsx +3 -9
- package/src/fields/DatePicker/index.native.tsx +1 -4
- package/src/fields/FileUpload/FileUpload.spec.tsx +2 -10
- package/src/fields/FileUpload/index.tsx +3 -7
- package/src/fields/Geolocation/Geolocation.spec.tsx +3 -3
- package/src/fields/Geolocation/index.tsx +4 -4
- package/src/fields/Icon/index.tsx +1 -5
- package/src/fields/ImageField/ImageField.spec.tsx +2 -10
- package/src/fields/ImageField/index.tsx +2 -9
- package/src/fields/MentionInput/MentionInput.spec.tsx +2 -14
- package/src/fields/MentionInput/index.tsx +3 -7
- package/src/fields/RadioGroup/RadioGroup.spec.tsx +3 -21
- package/src/fields/RadioGroup/RadioGroup.stories.tsx +4 -4
- package/src/fields/RadioGroup/index.tsx +1 -6
- package/src/fields/Select/Select.spec.tsx +1 -5
- package/src/fields/Select/Select.stories.tsx +5 -5
- package/src/fields/Select/index.tsx +1 -6
- package/src/fields/Signature/index.tsx +5 -1
- package/src/fields/Slider/Slider.spec.tsx +8 -22
- package/src/fields/Slider/Slider.stories.tsx +5 -5
- package/src/fields/Slider/index.tsx +1 -6
- package/src/fields/TextArea/TextArea.spec.tsx +17 -35
- package/src/fields/TextArea/TextArea.stories.tsx +6 -6
- package/src/fields/TextArea/index.tsx +0 -4
- package/src/fields/ToggleGroup/ToggleGroup.spec.tsx +2 -11
- package/src/fields/ToggleGroup/ToggleGroup.stories.tsx +5 -5
- package/src/fields/ToggleGroup/index.tsx +1 -6
- package/src/fields/pickerActivation.spec.tsx +1 -1
- package/src/fields/pickerRows.spec.tsx +4 -4
- package/src/index.gnome.ts +150 -0
- package/src/nativeTwins.ts +8 -0
- package/src/shared/OverlayWindow.native.tsx +1 -28
- package/src/shared/nativeOverlayWindow.tsx +28 -0
- package/types/Button/index.d.ts +1 -2
- package/types/Button/index.d.ts.map +1 -1
- package/types/FloatingPanel/index.d.ts +1 -7
- package/types/FloatingPanel/index.d.ts.map +1 -1
- package/types/FloatingPanel/index.native.d.ts +1 -1
- package/types/FloatingPanel/index.native.d.ts.map +1 -1
- package/types/FloatingPanel/useFloatingPanel.d.ts +1 -11
- package/types/FloatingPanel/useFloatingPanel.d.ts.map +1 -1
- package/types/fields/Checkbox/Checkbox.d.ts +1 -3
- package/types/fields/Checkbox/Checkbox.d.ts.map +1 -1
- package/types/fields/Checkbox/CheckboxGroup.d.ts +1 -4
- package/types/fields/Checkbox/CheckboxGroup.d.ts.map +1 -1
- package/types/fields/Checkbox/index.d.ts +3 -3
- package/types/fields/ColorPicker/index.d.ts +1 -3
- package/types/fields/ColorPicker/index.d.ts.map +1 -1
- package/types/fields/Combobox/index.d.ts +1 -4
- package/types/fields/Combobox/index.d.ts.map +1 -1
- package/types/fields/DatePicker/DatetimePicker.catalog.d.ts +0 -3
- package/types/fields/DatePicker/DatetimePicker.catalog.d.ts.map +1 -1
- package/types/fields/DatePicker/DatetimePicker.native.d.ts +0 -1
- package/types/fields/DatePicker/DatetimePicker.native.d.ts.map +1 -1
- package/types/fields/DatePicker/catalog.d.ts +0 -3
- package/types/fields/DatePicker/catalog.d.ts.map +1 -1
- package/types/fields/DatePicker/index.native.d.ts +0 -1
- package/types/fields/DatePicker/index.native.d.ts.map +1 -1
- package/types/fields/FileUpload/index.d.ts +1 -3
- package/types/fields/FileUpload/index.d.ts.map +1 -1
- package/types/fields/Icon/index.d.ts +0 -2
- package/types/fields/Icon/index.d.ts.map +1 -1
- package/types/fields/ImageField/index.d.ts +2 -4
- package/types/fields/ImageField/index.d.ts.map +1 -1
- package/types/fields/MentionInput/index.d.ts +0 -2
- package/types/fields/MentionInput/index.d.ts.map +1 -1
- package/types/fields/RadioGroup/index.d.ts +1 -4
- package/types/fields/RadioGroup/index.d.ts.map +1 -1
- package/types/fields/Select/index.d.ts +1 -4
- package/types/fields/Select/index.d.ts.map +1 -1
- package/types/fields/Signature/index.d.ts.map +1 -1
- package/types/fields/Slider/index.d.ts +1 -4
- package/types/fields/Slider/index.d.ts.map +1 -1
- package/types/fields/TextArea/index.d.ts +1 -3
- package/types/fields/TextArea/index.d.ts.map +1 -1
- package/types/fields/ToggleGroup/index.d.ts +1 -4
- package/types/fields/ToggleGroup/index.d.ts.map +1 -1
- package/types/index.gnome.d.ts +88 -0
- package/types/index.gnome.d.ts.map +1 -0
- package/types/nativeTwins.d.ts +8 -0
- package/types/nativeTwins.d.ts.map +1 -0
- package/types/shared/OverlayWindow.native.d.ts +1 -14
- package/types/shared/OverlayWindow.native.d.ts.map +1 -1
- package/types/shared/nativeOverlayWindow.d.ts +15 -0
- package/types/shared/nativeOverlayWindow.d.ts.map +1 -0
- package/types/shared/pickerTriggerContract.d.ts +3 -3
|
@@ -182,9 +182,9 @@ export const Basic: Story = {
|
|
|
182
182
|
<Combobox
|
|
183
183
|
{...args}
|
|
184
184
|
value={value}
|
|
185
|
-
|
|
185
|
+
onChange={(val) => {
|
|
186
186
|
setValue(Array.isArray(val) ? val[0] : val);
|
|
187
|
-
action("
|
|
187
|
+
action("onChange")(val);
|
|
188
188
|
}}
|
|
189
189
|
/>
|
|
190
190
|
{value && <Text color="$colorHover">Selected: {value}</Text>}
|
|
@@ -203,7 +203,7 @@ export const WithLabel: Story = {
|
|
|
203
203
|
helperText="Select an author from the list"
|
|
204
204
|
options={authorOptions}
|
|
205
205
|
value={value}
|
|
206
|
-
|
|
206
|
+
onChange={(v) => setValue(Array.isArray(v) ? v[0] : v)}
|
|
207
207
|
placeholder="Select an author..."
|
|
208
208
|
searchPlaceholder="Type to search..."
|
|
209
209
|
/>
|
|
@@ -251,7 +251,7 @@ export const Interactive: Story = {
|
|
|
251
251
|
label="Pick an author"
|
|
252
252
|
options={authorOptions}
|
|
253
253
|
value={value}
|
|
254
|
-
|
|
254
|
+
onChange={(v) => setValue(Array.isArray(v) ? v[0] : v)}
|
|
255
255
|
placeholder="Select an author..."
|
|
256
256
|
/>
|
|
257
257
|
<Text>Selected: {value || "None"}</Text>
|
|
@@ -275,7 +275,7 @@ export const CustomTrigger: StoryObj<typeof Combobox> = {
|
|
|
275
275
|
<Combobox
|
|
276
276
|
options={authorOptions}
|
|
277
277
|
value={value}
|
|
278
|
-
|
|
278
|
+
onChange={(v) => setValue(Array.isArray(v) ? v[0] : v)}
|
|
279
279
|
searchPlaceholder="Type to search..."
|
|
280
280
|
popoverWidth={260}
|
|
281
281
|
trigger={(selected) => (
|
|
@@ -321,7 +321,7 @@ export const ManyOptions: StoryObj<typeof Combobox> = {
|
|
|
321
321
|
label="Pick an item"
|
|
322
322
|
options={options}
|
|
323
323
|
value={value}
|
|
324
|
-
|
|
324
|
+
onChange={(v) => setValue(Array.isArray(v) ? v[0] : v)}
|
|
325
325
|
placeholder="Select from 100 items..."
|
|
326
326
|
searchPlaceholder="Type to filter..."
|
|
327
327
|
emptyMessage="No matching items."
|
|
@@ -163,11 +163,8 @@ export interface ComboboxProps {
|
|
|
163
163
|
defaultValue?: string | string[];
|
|
164
164
|
/**
|
|
165
165
|
* Canonical change handler, consistent with the rest of the field family.
|
|
166
|
-
* Prefer this over `onValueChange`.
|
|
167
166
|
*/
|
|
168
167
|
onChange?: (value: string | string[]) => void;
|
|
169
|
-
/** @deprecated Use `onChange` instead. */
|
|
170
|
-
onValueChange?: (value: string | string[]) => void;
|
|
171
168
|
placeholder?: string;
|
|
172
169
|
searchPlaceholder?: string;
|
|
173
170
|
emptyMessage?: string;
|
|
@@ -2564,7 +2561,6 @@ export function Combobox({
|
|
|
2564
2561
|
value: valueProp,
|
|
2565
2562
|
defaultValue,
|
|
2566
2563
|
onChange,
|
|
2567
|
-
onValueChange,
|
|
2568
2564
|
placeholder: placeholderProp,
|
|
2569
2565
|
searchPlaceholder: searchPlaceholderProp,
|
|
2570
2566
|
emptyMessage: emptyMessageProp,
|
|
@@ -2704,10 +2700,9 @@ export function Combobox({
|
|
|
2704
2700
|
onValueChange={(value) => {
|
|
2705
2701
|
if (disabled) return;
|
|
2706
2702
|
handleValueChange?.(value);
|
|
2707
|
-
// Canonical `onChange`
|
|
2703
|
+
// Canonical `onChange` fires from
|
|
2708
2704
|
// this single emit site (same reconciliation as Switch).
|
|
2709
2705
|
onChange?.(value);
|
|
2710
|
-
onValueChange?.(value);
|
|
2711
2706
|
}}
|
|
2712
2707
|
onBlur={handleBlur}
|
|
2713
2708
|
placeholder={placeholder}
|
|
@@ -82,12 +82,11 @@ describe("DatePicker", () => {
|
|
|
82
82
|
expect(document.querySelector('[data-testid="floating-panel-viewport"]')).toBeNull();
|
|
83
83
|
});
|
|
84
84
|
|
|
85
|
-
it("fires canonical onChange
|
|
85
|
+
it("fires canonical onChange once when a day is picked", async () => {
|
|
86
86
|
const DatePicker = await loadDatePicker();
|
|
87
87
|
const onChange = vi.fn();
|
|
88
|
-
const onValueChange = vi.fn();
|
|
89
88
|
const result = renderWithProviders(
|
|
90
|
-
<DatePicker label="Date" name="date" onChange={onChange}
|
|
89
|
+
<DatePicker label="Date" name="date" onChange={onChange} />,
|
|
91
90
|
);
|
|
92
91
|
|
|
93
92
|
const trigger = result.container.querySelector("input,button,[role='button']");
|
|
@@ -106,9 +105,7 @@ describe("DatePicker", () => {
|
|
|
106
105
|
});
|
|
107
106
|
|
|
108
107
|
expect(onChange).toHaveBeenCalledTimes(1);
|
|
109
|
-
expect(onValueChange).toHaveBeenCalledTimes(1);
|
|
110
108
|
expect(onChange.mock.calls[0][0]).toBeInstanceOf(Date);
|
|
111
|
-
expect(onChange.mock.calls[0][0]).toEqual(onValueChange.mock.calls[0][0]);
|
|
112
109
|
});
|
|
113
110
|
});
|
|
114
111
|
|
|
@@ -262,32 +259,18 @@ describe("DatePicker", () => {
|
|
|
262
259
|
it("standalone controlled: a value arriving after mount displays, without onChange", async () => {
|
|
263
260
|
const DatePicker = await loadDatePicker();
|
|
264
261
|
const onChange = vi.fn();
|
|
265
|
-
const onValueChange = vi.fn();
|
|
266
262
|
const result = renderWithProviders(
|
|
267
|
-
<DatePicker
|
|
268
|
-
label="Due Date"
|
|
269
|
-
value={null}
|
|
270
|
-
onChange={onChange}
|
|
271
|
-
onValueChange={onValueChange}
|
|
272
|
-
/>,
|
|
263
|
+
<DatePicker label="Due Date" value={null} onChange={onChange} />,
|
|
273
264
|
);
|
|
274
265
|
expect(getDisplayInput(result.container)?.value ?? "").toBe("");
|
|
275
266
|
|
|
276
267
|
// Late seed: the upstream doc value (frappe wire string) arrives after
|
|
277
268
|
// first paint.
|
|
278
|
-
result.rerender(
|
|
279
|
-
<DatePicker
|
|
280
|
-
label="Due Date"
|
|
281
|
-
value="2026-03-05"
|
|
282
|
-
onChange={onChange}
|
|
283
|
-
onValueChange={onValueChange}
|
|
284
|
-
/>,
|
|
285
|
-
);
|
|
269
|
+
result.rerender(<DatePicker label="Due Date" value="2026-03-05" onChange={onChange} />);
|
|
286
270
|
await waitFor(() => {
|
|
287
271
|
expect(getDisplayInput(result.container)?.value).toBe("Mar 5, 2026");
|
|
288
272
|
});
|
|
289
273
|
expect(onChange).not.toHaveBeenCalled();
|
|
290
|
-
expect(onValueChange).not.toHaveBeenCalled();
|
|
291
274
|
});
|
|
292
275
|
|
|
293
276
|
it("form-integrated: a field value set after mount displays, without onChange", async () => {
|
|
@@ -75,11 +75,8 @@ export type DatetimePickerProps<
|
|
|
75
75
|
value?: Date | string | null;
|
|
76
76
|
/**
|
|
77
77
|
* Canonical change handler, consistent with the rest of the field family.
|
|
78
|
-
* Prefer this over `onValueChange`.
|
|
79
78
|
*/
|
|
80
79
|
onChange?: (value: Date | null) => void;
|
|
81
|
-
/** @deprecated Use `onChange` instead. */
|
|
82
|
-
onValueChange?: (value: Date | null) => void;
|
|
83
80
|
/** Native only. `false` keeps the catalog overlay; omit for the OS picker. */
|
|
84
81
|
native?: boolean;
|
|
85
82
|
/**
|
|
@@ -359,7 +356,6 @@ export function DatetimePicker<
|
|
|
359
356
|
defaultValue,
|
|
360
357
|
value: controlledValue,
|
|
361
358
|
onChange,
|
|
362
|
-
onValueChange,
|
|
363
359
|
form,
|
|
364
360
|
inputProps: _inputProps,
|
|
365
361
|
placeholder = t("Select date and time"),
|
|
@@ -419,11 +415,10 @@ export function DatetimePicker<
|
|
|
419
415
|
setSelectedDatetime(date);
|
|
420
416
|
setDisplayDate(date);
|
|
421
417
|
fieldChange?.(date);
|
|
422
|
-
// Canonical `onChange`
|
|
418
|
+
// Canonical `onChange` fires (single emit).
|
|
423
419
|
onChange?.(date);
|
|
424
|
-
onValueChange?.(date);
|
|
425
420
|
},
|
|
426
|
-
[minDate, maxDate, setDisplayDate, onChange
|
|
421
|
+
[minDate, maxDate, setDisplayDate, onChange],
|
|
427
422
|
);
|
|
428
423
|
|
|
429
424
|
const handleClearDatetime = useCallback(
|
|
@@ -432,9 +427,8 @@ export function DatetimePicker<
|
|
|
432
427
|
setDisplayDate(new Date());
|
|
433
428
|
fieldChange?.(null);
|
|
434
429
|
onChange?.(null);
|
|
435
|
-
onValueChange?.(null);
|
|
436
430
|
},
|
|
437
|
-
[setDisplayDate, onChange
|
|
431
|
+
[setDisplayDate, onChange],
|
|
438
432
|
);
|
|
439
433
|
|
|
440
434
|
const displayValue = useMemo(
|
|
@@ -66,10 +66,7 @@ describe("native DatetimePicker ownership", () => {
|
|
|
66
66
|
|
|
67
67
|
it("opens from its full-width native target and commits exactly once", () => {
|
|
68
68
|
const onChange = vi.fn();
|
|
69
|
-
const
|
|
70
|
-
const result = renderWithProviders(
|
|
71
|
-
<DatetimePicker onChange={onChange} onValueChange={onValueChange} />,
|
|
72
|
-
);
|
|
69
|
+
const result = renderWithProviders(<DatetimePicker onChange={onChange} />);
|
|
73
70
|
const trigger = result.getByRole("button", { name: "Date and time" });
|
|
74
71
|
expect(getComputedStyle(trigger).width).toBe("100%");
|
|
75
72
|
fireEvent.click(trigger);
|
|
@@ -77,7 +74,6 @@ describe("native DatetimePicker ownership", () => {
|
|
|
77
74
|
fireEvent.click(result.getByRole("button", { name: "Confirm OS selection" }));
|
|
78
75
|
expect(result.queryByRole("dialog")).toBeNull();
|
|
79
76
|
expect(onChange).toHaveBeenCalledExactlyOnceWith(picked);
|
|
80
|
-
expect(onValueChange).toHaveBeenCalledExactlyOnceWith(picked);
|
|
81
77
|
expect(result.container.querySelector("input")?.value).toContain("Mar 5, 2026");
|
|
82
78
|
});
|
|
83
79
|
|
|
@@ -107,19 +103,13 @@ describe("native DatetimePicker ownership", () => {
|
|
|
107
103
|
|
|
108
104
|
it("adopts controlled values after mount without emitting changes or opening", async () => {
|
|
109
105
|
const onChange = vi.fn();
|
|
110
|
-
const
|
|
111
|
-
const result = renderWithProviders(
|
|
112
|
-
<DatetimePicker value={null} onChange={onChange} onValueChange={onValueChange} />,
|
|
113
|
-
);
|
|
106
|
+
const result = renderWithProviders(<DatetimePicker value={null} onChange={onChange} />);
|
|
114
107
|
expect(result.container.querySelector("input")?.value).toBe("");
|
|
115
|
-
result.rerender(
|
|
116
|
-
<DatetimePicker value={picked} onChange={onChange} onValueChange={onValueChange} />,
|
|
117
|
-
);
|
|
108
|
+
result.rerender(<DatetimePicker value={picked} onChange={onChange} />);
|
|
118
109
|
await waitFor(() =>
|
|
119
110
|
expect(result.container.querySelector("input")?.value).toContain("Mar 5, 2026"),
|
|
120
111
|
);
|
|
121
112
|
expect(onChange).not.toHaveBeenCalled();
|
|
122
|
-
expect(onValueChange).not.toHaveBeenCalled();
|
|
123
113
|
expect(result.queryByRole("dialog")).toBeNull();
|
|
124
114
|
});
|
|
125
115
|
|
|
@@ -55,7 +55,6 @@ export type DatetimePickerProps<
|
|
|
55
55
|
skeleton?: boolean;
|
|
56
56
|
value?: Date | string | null;
|
|
57
57
|
onChange?: (value: Date | null) => void;
|
|
58
|
-
onValueChange?: (value: Date | null) => void;
|
|
59
58
|
native?: boolean;
|
|
60
59
|
/** How wide the catalog picker opens (`native={false}`), LC-112. */
|
|
61
60
|
panelWidth?: PanelWidth;
|
|
@@ -88,7 +87,6 @@ export function DatetimePicker<
|
|
|
88
87
|
defaultValue,
|
|
89
88
|
value: controlledValue,
|
|
90
89
|
onChange,
|
|
91
|
-
onValueChange,
|
|
92
90
|
form,
|
|
93
91
|
placeholder = t("Select date & time"),
|
|
94
92
|
minDate,
|
|
@@ -134,10 +132,9 @@ export function DatetimePicker<
|
|
|
134
132
|
setSelected(date);
|
|
135
133
|
fieldChange?.(date);
|
|
136
134
|
onChange?.(date);
|
|
137
|
-
onValueChange?.(date);
|
|
138
135
|
setOpen(false);
|
|
139
136
|
},
|
|
140
|
-
[onChange
|
|
137
|
+
[onChange],
|
|
141
138
|
);
|
|
142
139
|
|
|
143
140
|
const renderControl = (
|
|
@@ -92,16 +92,10 @@ describe("DatetimePicker", () => {
|
|
|
92
92
|
expect(trigger.getAttribute("aria-labelledby")).toBe(`${trigger.id}-label`);
|
|
93
93
|
});
|
|
94
94
|
|
|
95
|
-
it("fires canonical onChange
|
|
95
|
+
it("fires canonical onChange once when a day is picked", async () => {
|
|
96
96
|
const onChange = vi.fn();
|
|
97
|
-
const onValueChange = vi.fn();
|
|
98
97
|
const result = renderWithProviders(
|
|
99
|
-
<DatetimePicker
|
|
100
|
-
label="Appointment"
|
|
101
|
-
name="appt"
|
|
102
|
-
onChange={onChange}
|
|
103
|
-
onValueChange={onValueChange}
|
|
104
|
-
/>,
|
|
98
|
+
<DatetimePicker label="Appointment" name="appt" onChange={onChange} />,
|
|
105
99
|
);
|
|
106
100
|
|
|
107
101
|
const trigger = result.container.querySelector("input,button,[role='button']");
|
|
@@ -120,9 +114,7 @@ describe("DatetimePicker", () => {
|
|
|
120
114
|
});
|
|
121
115
|
|
|
122
116
|
expect(onChange).toHaveBeenCalledTimes(1);
|
|
123
|
-
expect(onValueChange).toHaveBeenCalledTimes(1);
|
|
124
117
|
expect(onChange.mock.calls[0][0]).toBeInstanceOf(Date);
|
|
125
|
-
expect(onChange.mock.calls[0][0]).toEqual(onValueChange.mock.calls[0][0]);
|
|
126
118
|
});
|
|
127
119
|
});
|
|
128
120
|
|
|
@@ -186,19 +178,13 @@ describe("DatetimePicker", () => {
|
|
|
186
178
|
// onChange (LC-14: a seeded value is not a user edit).
|
|
187
179
|
it("form-integrated: a field value set after mount displays, without onChange", async () => {
|
|
188
180
|
const onChange = vi.fn();
|
|
189
|
-
const onValueChange = vi.fn();
|
|
190
181
|
let formApi: { setFieldValue: (name: "appt", value: Date | null) => void } | undefined;
|
|
191
182
|
const TestComponent = () => {
|
|
192
183
|
const form = useForm({ defaultValues: { appt: null as Date | null } });
|
|
193
184
|
formApi = form as unknown as typeof formApi;
|
|
194
185
|
return (
|
|
195
186
|
<Form form={form}>
|
|
196
|
-
<DatetimePicker
|
|
197
|
-
name="appt"
|
|
198
|
-
label="Appointment"
|
|
199
|
-
onChange={onChange}
|
|
200
|
-
onValueChange={onValueChange}
|
|
201
|
-
/>
|
|
187
|
+
<DatetimePicker name="appt" label="Appointment" onChange={onChange} />
|
|
202
188
|
</Form>
|
|
203
189
|
);
|
|
204
190
|
};
|
|
@@ -213,7 +199,6 @@ describe("DatetimePicker", () => {
|
|
|
213
199
|
expect(getInput()?.value ?? "").toContain("Mar 5, 2026");
|
|
214
200
|
});
|
|
215
201
|
expect(onChange).not.toHaveBeenCalled();
|
|
216
|
-
expect(onValueChange).not.toHaveBeenCalled();
|
|
217
202
|
});
|
|
218
203
|
});
|
|
219
204
|
});
|
|
@@ -131,11 +131,11 @@ export const ControlledRejection: Story = {
|
|
|
131
131
|
<DatetimePicker
|
|
132
132
|
label="Pinned Value"
|
|
133
133
|
value={pinned}
|
|
134
|
-
|
|
134
|
+
onChange={(v) => {
|
|
135
135
|
setAttempts((a) => a + 1);
|
|
136
|
-
action("
|
|
136
|
+
action("onChange")(v);
|
|
137
137
|
}}
|
|
138
|
-
helperText="Parent ignores
|
|
138
|
+
helperText="Parent ignores onChange — the value must not drift"
|
|
139
139
|
/>
|
|
140
140
|
<Text>{`attempts:${attempts}`}</Text>
|
|
141
141
|
</YStack>
|
|
@@ -72,11 +72,8 @@ export type DatePickerProps<
|
|
|
72
72
|
value?: Date | string | null;
|
|
73
73
|
/**
|
|
74
74
|
* Canonical change handler, consistent with the rest of the field family.
|
|
75
|
-
* Prefer this over `onValueChange`.
|
|
76
75
|
*/
|
|
77
76
|
onChange?: (value: Date | null) => void;
|
|
78
|
-
/** @deprecated Use `onChange` instead. */
|
|
79
|
-
onValueChange?: (value: Date | null) => void;
|
|
80
77
|
/** Native only. `false` keeps the catalog calendar; omit for the OS picker. */
|
|
81
78
|
native?: boolean;
|
|
82
79
|
/**
|
|
@@ -189,7 +186,6 @@ export function DatePicker<
|
|
|
189
186
|
defaultValue,
|
|
190
187
|
value: controlledValue,
|
|
191
188
|
onChange,
|
|
192
|
-
onValueChange,
|
|
193
189
|
form,
|
|
194
190
|
inputProps: _inputProps,
|
|
195
191
|
placeholder = t("Select date"),
|
|
@@ -253,12 +249,11 @@ export function DatePicker<
|
|
|
253
249
|
setDisplayDate(date);
|
|
254
250
|
// Form mode: commit into TanStack field state (clears meta errors on change).
|
|
255
251
|
fieldChange?.(date);
|
|
256
|
-
// Canonical `onChange`
|
|
252
|
+
// Canonical `onChange` fires (single emit).
|
|
257
253
|
onChange?.(date);
|
|
258
|
-
onValueChange?.(date);
|
|
259
254
|
closePopover();
|
|
260
255
|
},
|
|
261
|
-
[minDate, maxDate, setDisplayDate, closePopover, onChange
|
|
256
|
+
[minDate, maxDate, setDisplayDate, closePopover, onChange],
|
|
262
257
|
);
|
|
263
258
|
|
|
264
259
|
const handleClearDate = useCallback(
|
|
@@ -267,9 +262,8 @@ export function DatePicker<
|
|
|
267
262
|
setDisplayDate(new Date());
|
|
268
263
|
fieldChange?.(null);
|
|
269
264
|
onChange?.(null);
|
|
270
|
-
onValueChange?.(null);
|
|
271
265
|
},
|
|
272
|
-
[setDisplayDate, onChange
|
|
266
|
+
[setDisplayDate, onChange],
|
|
273
267
|
);
|
|
274
268
|
|
|
275
269
|
const calendarContent = (fieldChange?: (value: any) => void) => (
|
|
@@ -53,7 +53,6 @@ export type DatePickerProps<
|
|
|
53
53
|
skeleton?: boolean;
|
|
54
54
|
value?: Date | string | null;
|
|
55
55
|
onChange?: (value: Date | null) => void;
|
|
56
|
-
onValueChange?: (value: Date | null) => void;
|
|
57
56
|
/**
|
|
58
57
|
* Opt out of the OS picker and keep the catalog calendar. Default on
|
|
59
58
|
* native is the OS picker (iOS calendar / time wheel).
|
|
@@ -89,7 +88,6 @@ export function DatePicker<
|
|
|
89
88
|
defaultValue,
|
|
90
89
|
value: controlledValue,
|
|
91
90
|
onChange,
|
|
92
|
-
onValueChange,
|
|
93
91
|
form,
|
|
94
92
|
placeholder = t("Select date"),
|
|
95
93
|
minDate,
|
|
@@ -128,10 +126,9 @@ export function DatePicker<
|
|
|
128
126
|
setSelectedDate(date);
|
|
129
127
|
fieldChange?.(date);
|
|
130
128
|
onChange?.(date);
|
|
131
|
-
onValueChange?.(date);
|
|
132
129
|
setOpen(false);
|
|
133
130
|
},
|
|
134
|
-
[onChange
|
|
131
|
+
[onChange],
|
|
135
132
|
);
|
|
136
133
|
|
|
137
134
|
const renderControl = (
|
|
@@ -150,16 +150,10 @@ describe("FileUpload", () => {
|
|
|
150
150
|
expect(result.findTextElement("Pick file")).toBeDefined();
|
|
151
151
|
});
|
|
152
152
|
|
|
153
|
-
it("fires canonical onChange
|
|
153
|
+
it("fires canonical onChange once when a file is chosen", async () => {
|
|
154
154
|
const onChange = vi.fn();
|
|
155
|
-
const onValueChange = vi.fn();
|
|
156
155
|
const result = renderWithProviders(
|
|
157
|
-
<FileUpload
|
|
158
|
-
label="Attachment"
|
|
159
|
-
name="attachment"
|
|
160
|
-
onChange={onChange}
|
|
161
|
-
onValueChange={onValueChange}
|
|
162
|
-
/>,
|
|
156
|
+
<FileUpload label="Attachment" name="attachment" onChange={onChange} />,
|
|
163
157
|
);
|
|
164
158
|
|
|
165
159
|
const input = result.container.querySelector("input[type='file']") as HTMLInputElement | null;
|
|
@@ -171,8 +165,6 @@ describe("FileUpload", () => {
|
|
|
171
165
|
|
|
172
166
|
expect(onChange).toHaveBeenCalledTimes(1);
|
|
173
167
|
expect(onChange).toHaveBeenCalledWith(file);
|
|
174
|
-
expect(onValueChange).toHaveBeenCalledTimes(1);
|
|
175
|
-
expect(onValueChange).toHaveBeenCalledWith(file);
|
|
176
168
|
});
|
|
177
169
|
|
|
178
170
|
it("associates the label with the dropzone (htmlFor resolves, aria-labelledby names it)", () => {
|
|
@@ -90,11 +90,9 @@ export type FileUploadProps<
|
|
|
90
90
|
onUpload?: FileUploadHandler;
|
|
91
91
|
/**
|
|
92
92
|
* Canonical change handler, consistent with the rest of the field family.
|
|
93
|
-
* Fires in both standalone and form mode.
|
|
93
|
+
* Fires in both standalone and form mode.
|
|
94
94
|
*/
|
|
95
95
|
onChange?: (value: TData) => void;
|
|
96
|
-
/** @deprecated Use `onChange` instead. */
|
|
97
|
-
onValueChange?: (value: TData) => void;
|
|
98
96
|
/**
|
|
99
97
|
* Which native picker the field opens (no effect on web, which always
|
|
100
98
|
* uses `<input type="file">`). `auto` sends an image-only `accept` to the
|
|
@@ -220,7 +218,6 @@ export function FileUpload<
|
|
|
220
218
|
onFileRemove,
|
|
221
219
|
onUpload,
|
|
222
220
|
onChange: onChangeProp,
|
|
223
|
-
onValueChange: onValueChangeProp,
|
|
224
221
|
pickerMode = "auto",
|
|
225
222
|
mode,
|
|
226
223
|
name,
|
|
@@ -242,14 +239,13 @@ export function FileUpload<
|
|
|
242
239
|
});
|
|
243
240
|
if (isWeb) ensureKeyboardModalityTracking();
|
|
244
241
|
const [kbZoneFocus, setKbZoneFocus] = useState(false);
|
|
245
|
-
// Canonical `onChange`
|
|
242
|
+
// Canonical `onChange` fires once per
|
|
246
243
|
// change through the internal handler chain (same reconciliation as Switch).
|
|
247
244
|
const emitChange = useCallback(
|
|
248
245
|
(nextValue: TData) => {
|
|
249
246
|
onChangeProp?.(nextValue);
|
|
250
|
-
onValueChangeProp?.(nextValue);
|
|
251
247
|
},
|
|
252
|
-
[onChangeProp
|
|
248
|
+
[onChangeProp],
|
|
253
249
|
);
|
|
254
250
|
const resolvedValidators = useResolvedValidators(
|
|
255
251
|
fieldProps.required,
|
|
@@ -297,7 +297,7 @@ describe("Geolocation", () => {
|
|
|
297
297
|
typeSearch(result.container, "manner");
|
|
298
298
|
await waitFor(() => {
|
|
299
299
|
expect(document.body.textContent).toContain(
|
|
300
|
-
"Search is unavailable
|
|
300
|
+
"Search is unavailable. Check your connection.",
|
|
301
301
|
);
|
|
302
302
|
});
|
|
303
303
|
|
|
@@ -334,7 +334,7 @@ describe("Geolocation", () => {
|
|
|
334
334
|
typeSearch(result.container, "manner");
|
|
335
335
|
await waitFor(() => {
|
|
336
336
|
expect(document.body.textContent).toContain(
|
|
337
|
-
"Search is unavailable
|
|
337
|
+
"Search is unavailable. Check your connection.",
|
|
338
338
|
);
|
|
339
339
|
});
|
|
340
340
|
fireEvent.keyDown(document, { key: "Escape" });
|
|
@@ -365,7 +365,7 @@ describe("Geolocation", () => {
|
|
|
365
365
|
typeSearch(result.container, "60.169, 24.935");
|
|
366
366
|
await waitFor(() => {
|
|
367
367
|
expect(document.body.textContent).toContain("Go to 60.16900, 24.93500");
|
|
368
|
-
expect(document.body.textContent).toContain("Exact coordinates
|
|
368
|
+
expect(document.body.textContent).toContain("Exact coordinates, no address");
|
|
369
369
|
});
|
|
370
370
|
expect(geocode).not.toHaveBeenCalled();
|
|
371
371
|
fireEvent.click(
|
|
@@ -431,7 +431,7 @@ function SearchResultsList({
|
|
|
431
431
|
) : null}
|
|
432
432
|
{status === "error" ? (
|
|
433
433
|
<StatusRow testID="geolocation-search-status">
|
|
434
|
-
{t("Search is unavailable
|
|
434
|
+
{t("Search is unavailable. Check your connection.")}
|
|
435
435
|
</StatusRow>
|
|
436
436
|
) : null}
|
|
437
437
|
{status === "empty" && !pair ? (
|
|
@@ -443,7 +443,7 @@ function SearchResultsList({
|
|
|
443
443
|
<ResultRow
|
|
444
444
|
testID="geolocation-coord-result"
|
|
445
445
|
label={t("Go to {{pair}}", { pair: formatCoordPair(pair.lat, pair.lng) })}
|
|
446
|
-
description={t("Exact coordinates
|
|
446
|
+
description={t("Exact coordinates, no address")}
|
|
447
447
|
onPress={() => onPickPair(pair.lat, pair.lng)}
|
|
448
448
|
/>
|
|
449
449
|
) : null}
|
|
@@ -574,7 +574,7 @@ function GeoMapSurface({
|
|
|
574
574
|
open={coordsOpen}
|
|
575
575
|
onOpenChange={handleCoordsOpenChange}
|
|
576
576
|
disabled={disabled}
|
|
577
|
-
|
|
577
|
+
widthMode="at-least-trigger"
|
|
578
578
|
sizing="fill"
|
|
579
579
|
contentPadding="none"
|
|
580
580
|
trigger={
|
|
@@ -1371,7 +1371,7 @@ export function Geolocation({
|
|
|
1371
1371
|
open={cellOpen}
|
|
1372
1372
|
onOpenChange={setCellOpen}
|
|
1373
1373
|
disabled={disabled}
|
|
1374
|
-
|
|
1374
|
+
widthMode="at-least-trigger"
|
|
1375
1375
|
contentPadding="none"
|
|
1376
1376
|
trigger={face}
|
|
1377
1377
|
>
|
|
@@ -58,8 +58,6 @@ export type IconProps<
|
|
|
58
58
|
placeholder?: string;
|
|
59
59
|
value?: string;
|
|
60
60
|
onChange?: (value: string) => void;
|
|
61
|
-
/** @deprecated Use `onChange` instead. */
|
|
62
|
-
onValueChange?: (value: string) => void;
|
|
63
61
|
skeleton?: boolean;
|
|
64
62
|
/** Restrict the picker to a subset of the drawn set (df.options). */
|
|
65
63
|
icons?: readonly string[];
|
|
@@ -411,7 +409,6 @@ export function Icon<
|
|
|
411
409
|
onBlur,
|
|
412
410
|
value: controlledValue,
|
|
413
411
|
onChange,
|
|
414
|
-
onValueChange,
|
|
415
412
|
skeleton,
|
|
416
413
|
id: idProp,
|
|
417
414
|
icons,
|
|
@@ -426,9 +423,8 @@ export function Icon<
|
|
|
426
423
|
const emitValueChange = useCallback(
|
|
427
424
|
(newValue: string) => {
|
|
428
425
|
onChange?.(newValue);
|
|
429
|
-
onValueChange?.(newValue);
|
|
430
426
|
},
|
|
431
|
-
[onChange
|
|
427
|
+
[onChange],
|
|
432
428
|
);
|
|
433
429
|
|
|
434
430
|
const { resolvedForm, knobProps, id } = useFormField({ form, id: idProp });
|
|
@@ -129,16 +129,10 @@ describe("ImageField", () => {
|
|
|
129
129
|
expect(onChange).toHaveBeenCalledWith(null);
|
|
130
130
|
});
|
|
131
131
|
|
|
132
|
-
it("fires canonical onChange
|
|
132
|
+
it("fires canonical onChange once when an image is chosen", async () => {
|
|
133
133
|
const onChange = vi.fn();
|
|
134
|
-
const onValueChange = vi.fn();
|
|
135
134
|
const result = renderWithProviders(
|
|
136
|
-
<ImageField
|
|
137
|
-
label="Avatar"
|
|
138
|
-
name="avatar"
|
|
139
|
-
onChange={onChange}
|
|
140
|
-
onValueChange={onValueChange}
|
|
141
|
-
/>,
|
|
135
|
+
<ImageField label="Avatar" name="avatar" onChange={onChange} />,
|
|
142
136
|
);
|
|
143
137
|
|
|
144
138
|
const input = result.container.querySelector("input[type='file']") as HTMLInputElement | null;
|
|
@@ -151,8 +145,6 @@ describe("ImageField", () => {
|
|
|
151
145
|
// Exactly once each — guards against the standalone double-fire bug.
|
|
152
146
|
expect(onChange).toHaveBeenCalledTimes(1);
|
|
153
147
|
expect(onChange).toHaveBeenCalledWith(file);
|
|
154
|
-
expect(onValueChange).toHaveBeenCalledTimes(1);
|
|
155
|
-
expect(onValueChange).toHaveBeenCalledWith(file);
|
|
156
148
|
});
|
|
157
149
|
});
|
|
158
150
|
|
|
@@ -58,11 +58,9 @@ export interface ImageFieldProps {
|
|
|
58
58
|
defaultValue?: string | File | null;
|
|
59
59
|
/**
|
|
60
60
|
* Canonical change handler, consistent with the rest of the field family.
|
|
61
|
-
* Fires in both standalone and form mode.
|
|
61
|
+
* Fires in both standalone and form mode.
|
|
62
62
|
*/
|
|
63
63
|
onChange?: (value: string | File | null) => void;
|
|
64
|
-
/** @deprecated Use `onChange` instead. */
|
|
65
|
-
onValueChange?: (value: string | File | null) => void;
|
|
66
64
|
onBlur?: (...args: any[]) => void;
|
|
67
65
|
/** Accepted image types (default: "image/*") */
|
|
68
66
|
accept?: string;
|
|
@@ -112,7 +110,6 @@ type ImageControlProps = {
|
|
|
112
110
|
disabledSurface?: DisabledSurfaceProps;
|
|
113
111
|
onChange?: (val: string | File | null) => void;
|
|
114
112
|
onChangeProp?: (val: string | File | null) => void;
|
|
115
|
-
onValueChange?: (val: string | File | null) => void;
|
|
116
113
|
onInvalid?: (message: string | undefined) => void;
|
|
117
114
|
blurHandler?: (...args: any[]) => void;
|
|
118
115
|
};
|
|
@@ -149,7 +146,6 @@ function ImageControl({
|
|
|
149
146
|
disabledSurface,
|
|
150
147
|
onChange,
|
|
151
148
|
onChangeProp,
|
|
152
|
-
onValueChange,
|
|
153
149
|
onInvalid,
|
|
154
150
|
blurHandler,
|
|
155
151
|
}: ImageControlProps) {
|
|
@@ -197,10 +193,9 @@ function ImageControl({
|
|
|
197
193
|
onInvalid?.(undefined);
|
|
198
194
|
onChange?.(next);
|
|
199
195
|
onChangeProp?.(next);
|
|
200
|
-
onValueChange?.(next);
|
|
201
196
|
blurHandler?.();
|
|
202
197
|
},
|
|
203
|
-
[onChange, onChangeProp,
|
|
198
|
+
[onChange, onChangeProp, onInvalid, blurHandler],
|
|
204
199
|
);
|
|
205
200
|
|
|
206
201
|
const validateFile = useCallback(
|
|
@@ -449,7 +444,6 @@ export function ImageField({
|
|
|
449
444
|
value,
|
|
450
445
|
defaultValue,
|
|
451
446
|
onChange: onChangeProp,
|
|
452
|
-
onValueChange,
|
|
453
447
|
onBlur,
|
|
454
448
|
accept = "image/*",
|
|
455
449
|
maxSize,
|
|
@@ -491,7 +485,6 @@ export function ImageField({
|
|
|
491
485
|
knobProps,
|
|
492
486
|
disabledSurface: disabled ? disabledState.surfaceKnobProps : undefined,
|
|
493
487
|
onChangeProp,
|
|
494
|
-
onValueChange,
|
|
495
488
|
onInvalid: setValidationError,
|
|
496
489
|
};
|
|
497
490
|
|