@multiplatform.one/forms 7.58.0 → 7.60.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/FloatingPanel/index.native.js +8 -2
- package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DateRangePicker.cjs +5 -9
- package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +5 -9
- package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.cjs +7 -11
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +7 -11
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +5 -9
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/MonthPicker.cjs +5 -9
- package/dist/cjs/fields/DatePicker/MonthPicker.native.js +5 -9
- package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/MultiDatePicker.cjs +5 -9
- package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +5 -9
- package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/catalog.cjs +5 -9
- package/dist/cjs/fields/DatePicker/catalog.native.js +5 -9
- package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/index.native.js +5 -9
- package/dist/cjs/fields/DatePicker/index.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/parts.cjs +46 -4
- package/dist/cjs/fields/DatePicker/parts.native.js +50 -5
- package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/Select/InlineChoices.cjs +148 -0
- package/dist/cjs/fields/Select/InlineChoices.native.js +163 -0
- package/dist/cjs/fields/Select/InlineChoices.native.js.map +1 -0
- package/dist/cjs/fields/Select/index.cjs +66 -15
- package/dist/cjs/fields/Select/index.native.js +73 -17
- package/dist/cjs/fields/Select/index.native.js.map +1 -1
- package/dist/cjs/fields/Select/shouldInlineChoices.cjs +37 -0
- package/dist/cjs/fields/Select/shouldInlineChoices.native.js +43 -0
- package/dist/cjs/fields/Select/shouldInlineChoices.native.js.map +1 -0
- package/dist/cjs/fields/TimePicker/catalog.cjs +1 -1
- package/dist/cjs/fields/TimePicker/catalog.native.js +1 -1
- 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/index.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/parts.cjs +13 -11
- package/dist/cjs/fields/TimePicker/parts.native.js +16 -13
- package/dist/cjs/fields/TimePicker/parts.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/compactFace.native.js.map +1 -1
- package/dist/esm/FloatingPanel/index.native.js +8 -2
- package/dist/esm/FloatingPanel/index.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/trailingAction.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/PasswordReveal.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/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.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.mjs +6 -10
- package/dist/esm/fields/DatePicker/DateRangePicker.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/DateRangePicker.native.js +6 -10
- package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs +8 -12
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js +8 -12
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.native.js +6 -10
- package/dist/esm/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MonthPicker.mjs +6 -10
- package/dist/esm/fields/DatePicker/MonthPicker.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/MonthPicker.native.js +6 -10
- package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MultiDatePicker.mjs +6 -10
- package/dist/esm/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/MultiDatePicker.native.js +6 -10
- package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/catalog.mjs +6 -10
- package/dist/esm/fields/DatePicker/catalog.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/catalog.native.js +6 -10
- 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 +6 -10
- package/dist/esm/fields/DatePicker/index.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/parts.mjs +46 -5
- package/dist/esm/fields/DatePicker/parts.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/parts.native.js +50 -6
- 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/InlineChoices.mjs +123 -0
- package/dist/esm/fields/Select/InlineChoices.mjs.map +1 -0
- package/dist/esm/fields/Select/InlineChoices.native.js +135 -0
- package/dist/esm/fields/Select/InlineChoices.native.js.map +1 -0
- package/dist/esm/fields/Select/index.mjs +67 -16
- package/dist/esm/fields/Select/index.mjs.map +1 -1
- package/dist/esm/fields/Select/index.native.js +74 -18
- package/dist/esm/fields/Select/index.native.js.map +1 -1
- package/dist/esm/fields/Select/shouldInlineChoices.mjs +11 -0
- package/dist/esm/fields/Select/shouldInlineChoices.mjs.map +1 -0
- package/dist/esm/fields/Select/shouldInlineChoices.native.js +14 -0
- package/dist/esm/fields/Select/shouldInlineChoices.native.js.map +1 -0
- 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.mjs +1 -1
- package/dist/esm/fields/TimePicker/catalog.mjs.map +1 -1
- package/dist/esm/fields/TimePicker/catalog.native.js +1 -1
- package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/index.native.js +2 -2
- package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/parts.mjs +13 -11
- package/dist/esm/fields/TimePicker/parts.mjs.map +1 -1
- package/dist/esm/fields/TimePicker/parts.native.js +16 -13
- 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/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/requiredMarking.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/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/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/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/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/FloatingPanel/index.native.js +8 -2
- package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DateRangePicker.mjs +6 -10
- package/dist/jsx/fields/DatePicker/DateRangePicker.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/DateRangePicker.native.js +5 -9
- package/dist/jsx/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs +8 -12
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js +7 -11
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.native.js +5 -9
- package/dist/jsx/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/MonthPicker.mjs +6 -10
- package/dist/jsx/fields/DatePicker/MonthPicker.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/MonthPicker.native.js +5 -9
- package/dist/jsx/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs +6 -10
- package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js +5 -9
- package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/catalog.mjs +6 -10
- package/dist/jsx/fields/DatePicker/catalog.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/catalog.native.js +5 -9
- package/dist/jsx/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/index.native.js +5 -9
- package/dist/jsx/fields/DatePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/parts.mjs +46 -5
- package/dist/jsx/fields/DatePicker/parts.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/parts.native.js +50 -5
- package/dist/jsx/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/jsx/fields/Select/InlineChoices.mjs +123 -0
- package/dist/jsx/fields/Select/InlineChoices.mjs.map +1 -0
- package/dist/jsx/fields/Select/InlineChoices.native.js +163 -0
- package/dist/jsx/fields/Select/InlineChoices.native.js.map +1 -0
- package/dist/jsx/fields/Select/index.mjs +67 -16
- package/dist/jsx/fields/Select/index.mjs.map +1 -1
- package/dist/jsx/fields/Select/index.native.js +73 -17
- package/dist/jsx/fields/Select/index.native.js.map +1 -1
- package/dist/jsx/fields/Select/shouldInlineChoices.mjs +11 -0
- package/dist/jsx/fields/Select/shouldInlineChoices.mjs.map +1 -0
- package/dist/jsx/fields/Select/shouldInlineChoices.native.js +43 -0
- package/dist/jsx/fields/Select/shouldInlineChoices.native.js.map +1 -0
- package/dist/jsx/fields/TimePicker/catalog.mjs +1 -1
- package/dist/jsx/fields/TimePicker/catalog.mjs.map +1 -1
- package/dist/jsx/fields/TimePicker/catalog.native.js +1 -1
- package/dist/jsx/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/index.native.js +2 -2
- package/dist/jsx/fields/TimePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/parts.mjs +13 -11
- package/dist/jsx/fields/TimePicker/parts.mjs.map +1 -1
- package/dist/jsx/fields/TimePicker/parts.native.js +16 -13
- package/dist/jsx/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/jsx/index.native.js.map +1 -1
- package/package.json +8 -8
- package/src/FloatingPanel/FloatingPanel.menuFace.native.spec.tsx +13 -1
- package/src/FloatingPanel/index.native.tsx +8 -1
- package/src/fields/DatePicker/DatePicker.stories.tsx +6 -2
- package/src/fields/DatePicker/DateRangePicker.tsx +7 -10
- package/src/fields/DatePicker/DatetimePicker.catalog.tsx +9 -12
- package/src/fields/DatePicker/DatetimePicker.native.tsx +7 -11
- package/src/fields/DatePicker/DatetimePicker.stories.tsx +11 -2
- package/src/fields/DatePicker/MonthPicker.tsx +7 -10
- package/src/fields/DatePicker/MultiDatePicker.tsx +7 -10
- package/src/fields/DatePicker/catalog.tsx +7 -10
- package/src/fields/DatePicker/fieldStates.spec.tsx +120 -0
- package/src/fields/DatePicker/index.native.tsx +7 -11
- package/src/fields/DatePicker/parts.tsx +61 -2
- package/src/fields/Select/InlineChoices.tsx +156 -0
- package/src/fields/Select/index.tsx +64 -39
- package/src/fields/Select/shouldInlineChoices.spec.ts +25 -0
- package/src/fields/Select/shouldInlineChoices.ts +22 -0
- package/src/fields/TimePicker/TimePicker.stories.tsx +3 -4
- package/src/fields/TimePicker/catalog.tsx +1 -1
- package/src/fields/TimePicker/index.native.tsx +2 -2
- package/src/fields/TimePicker/parts.tsx +15 -9
- package/types/FloatingPanel/index.native.d.ts +1 -1
- package/types/FloatingPanel/index.native.d.ts.map +1 -1
- package/types/fields/Checkbox/index.d.ts +3 -3
- package/types/fields/DatePicker/DateRangePicker.d.ts.map +1 -1
- package/types/fields/DatePicker/DatetimePicker.catalog.d.ts.map +1 -1
- package/types/fields/DatePicker/DatetimePicker.native.d.ts.map +1 -1
- package/types/fields/DatePicker/MonthPicker.d.ts.map +1 -1
- package/types/fields/DatePicker/MultiDatePicker.d.ts.map +1 -1
- package/types/fields/DatePicker/catalog.d.ts.map +1 -1
- package/types/fields/DatePicker/index.native.d.ts.map +1 -1
- package/types/fields/DatePicker/parts.d.ts +14 -0
- package/types/fields/DatePicker/parts.d.ts.map +1 -1
- package/types/fields/Select/InlineChoices.d.ts +29 -0
- package/types/fields/Select/InlineChoices.d.ts.map +1 -0
- package/types/fields/Select/index.d.ts +6 -0
- package/types/fields/Select/index.d.ts.map +1 -1
- package/types/fields/Select/shouldInlineChoices.d.ts +16 -0
- package/types/fields/Select/shouldInlineChoices.d.ts.map +1 -0
- package/types/fields/TimePicker/parts.d.ts +3 -1
- package/types/fields/TimePicker/parts.d.ts.map +1 -1
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var InlineChoices_exports = {};
|
|
26
|
+
__export(InlineChoices_exports, {
|
|
27
|
+
InlineChoices: () => InlineChoices
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(InlineChoices_exports);
|
|
30
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
|
+
var import_theme = require("@multiplatform.one/theme");
|
|
32
|
+
var import_react = require("@phosphor-icons/react");
|
|
33
|
+
var import_react2 = require("react");
|
|
34
|
+
var import_react_native = require("react-native");
|
|
35
|
+
var import_tamagui = require("tamagui");
|
|
36
|
+
var import_fieldLayout = require("../../fieldLayout.native.js");
|
|
37
|
+
var import_colorRamps = require("../../shared/colorRamps.native.js");
|
|
38
|
+
var import_nativeA11y = require("../../shared/nativeA11y.native.js");
|
|
39
|
+
var nextKeys = /* @__PURE__ */new Set(["ArrowDown", "ArrowRight"]);
|
|
40
|
+
var previousKeys = /* @__PURE__ */new Set(["ArrowUp", "ArrowLeft"]);
|
|
41
|
+
function InlineChoices(param) {
|
|
42
|
+
var {
|
|
43
|
+
options,
|
|
44
|
+
value,
|
|
45
|
+
onValueChange,
|
|
46
|
+
onBlur,
|
|
47
|
+
disabled,
|
|
48
|
+
id,
|
|
49
|
+
labelledBy,
|
|
50
|
+
"aria-label": ariaLabel,
|
|
51
|
+
knobProps,
|
|
52
|
+
markColor
|
|
53
|
+
} = param;
|
|
54
|
+
var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();
|
|
55
|
+
var rowsRef = (0, import_react2.useRef)([]);
|
|
56
|
+
var textColor = knobProps.textAccentColor;
|
|
57
|
+
var selectedIndex = options.findIndex(function (option) {
|
|
58
|
+
return option.value === value;
|
|
59
|
+
});
|
|
60
|
+
var tabStop = selectedIndex >= 0 ? selectedIndex : 0;
|
|
61
|
+
var choose = function choose2(index) {
|
|
62
|
+
var option = options[index];
|
|
63
|
+
if (disabled || !option || option.value === value) return;
|
|
64
|
+
onValueChange(option.value);
|
|
65
|
+
};
|
|
66
|
+
var onKeyDown = function onKeyDown2(index) {
|
|
67
|
+
return function (event) {
|
|
68
|
+
var step = nextKeys.has(event.key) ? 1 : previousKeys.has(event.key) ? -1 : 0;
|
|
69
|
+
if (step) {
|
|
70
|
+
var _rowsRef_current_next;
|
|
71
|
+
event.preventDefault();
|
|
72
|
+
var next = (index + step + options.length) % options.length;
|
|
73
|
+
(_rowsRef_current_next = rowsRef.current[next]) === null || _rowsRef_current_next === void 0 ? void 0 : _rowsRef_current_next.focus();
|
|
74
|
+
choose(next);
|
|
75
|
+
} else if (event.key === " " || event.key === "Enter") {
|
|
76
|
+
event.preventDefault();
|
|
77
|
+
choose(index);
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
var rowContent = function rowContent2(option, index, selected) {
|
|
82
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
83
|
+
alignItems: "center",
|
|
84
|
+
height: knobProps.menuRow.minHeight,
|
|
85
|
+
paddingHorizontal: knobProps.panelPadding.padding,
|
|
86
|
+
...knobProps.gap,
|
|
87
|
+
...(index === 0 ? void 0 : import_theme.hairline.top),
|
|
88
|
+
borderColor: import_colorRamps.formCommonColors.divider,
|
|
89
|
+
pointerEvents: "none",
|
|
90
|
+
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
91
|
+
flexShrink: 0,
|
|
92
|
+
alignItems: "center",
|
|
93
|
+
justifyContent: "center",
|
|
94
|
+
minWidth: 18,
|
|
95
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_theme.IconSlot, {
|
|
96
|
+
icon: option.icon,
|
|
97
|
+
color: textColor
|
|
98
|
+
})
|
|
99
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
100
|
+
fontFamily: knobProps.body.fontFamily,
|
|
101
|
+
fontWeight: knobProps.body.fontWeight,
|
|
102
|
+
color: textColor,
|
|
103
|
+
numberOfLines: 1,
|
|
104
|
+
flex: 1,
|
|
105
|
+
children: option.label
|
|
106
|
+
}), selected ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.CheckIcon, {
|
|
107
|
+
size: 14,
|
|
108
|
+
weight: "bold",
|
|
109
|
+
color: markColor
|
|
110
|
+
}) : null]
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
|
|
114
|
+
id,
|
|
115
|
+
role: "radiogroup",
|
|
116
|
+
"aria-labelledby": labelledBy,
|
|
117
|
+
"aria-label": labelledBy ? void 0 : ariaLabel,
|
|
118
|
+
"aria-describedby": describedBy,
|
|
119
|
+
"aria-disabled": disabled || void 0,
|
|
120
|
+
"data-testid": "select-inline-choices",
|
|
121
|
+
...knobProps.borderRadius,
|
|
122
|
+
borderColor: import_colorRamps.formInputColors.border.base,
|
|
123
|
+
backgroundColor: import_colorRamps.formInputColors.background.base,
|
|
124
|
+
overflow: "hidden",
|
|
125
|
+
width: "100%",
|
|
126
|
+
children: options.map(function (option, index) {
|
|
127
|
+
var selected = option.value === value;
|
|
128
|
+
if (import_tamagui.isWeb) {
|
|
129
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
130
|
+
ref: function ref(node) {
|
|
131
|
+
rowsRef.current[index] = node;
|
|
132
|
+
},
|
|
133
|
+
role: "radio",
|
|
134
|
+
"aria-checked": selected,
|
|
135
|
+
"aria-disabled": disabled || void 0,
|
|
136
|
+
tabIndex: !disabled && index === tabStop ? 0 : -1,
|
|
137
|
+
cursor: disabled ? "default" : "pointer",
|
|
138
|
+
onPress: function onPress() {
|
|
139
|
+
return choose(index);
|
|
140
|
+
},
|
|
141
|
+
onKeyDown: onKeyDown(index),
|
|
142
|
+
onBlur,
|
|
143
|
+
outlineWidth: 0,
|
|
144
|
+
focusVisibleStyle: import_theme.keyboardFocusRingProps,
|
|
145
|
+
children: rowContent(option, index, selected)
|
|
146
|
+
}, option.value);
|
|
147
|
+
}
|
|
148
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.Pressable, {
|
|
149
|
+
...(0, import_nativeA11y.choiceItemA11y)({
|
|
150
|
+
name: option.label,
|
|
151
|
+
selected,
|
|
152
|
+
disabled: !!disabled
|
|
153
|
+
}),
|
|
154
|
+
disabled,
|
|
155
|
+
onPress: function onPress() {
|
|
156
|
+
return choose(index);
|
|
157
|
+
},
|
|
158
|
+
children: rowContent(option, index, selected)
|
|
159
|
+
}, option.value);
|
|
160
|
+
})
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=InlineChoices.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","InlineChoices_exports","InlineChoices","module","exports","import_jsx_runtime","require","import_theme","import_react","import_react2","import_react_native","import_tamagui","import_fieldLayout","import_colorRamps","import_nativeA11y","nextKeys","Set","previousKeys","param","options","onValueChange","onBlur","disabled","id","labelledBy","ariaLabel","knobProps","markColor","describedBy","useFieldDescribedBy","rowsRef","useRef","textColor","textAccentColor","selectedIndex","findIndex","option","tabStop","choose","choose2","index","onKeyDown","onKeyDown2","event","step","has","_rowsRef_current_next","preventDefault","next","length","current","focus","rowContent","rowContent2","selected","jsxs","XStack","alignItems","height","menuRow","minHeight","paddingHorizontal","panelPadding","padding","gap","hairline","top","borderColor","formCommonColors","divider","pointerEvents","children","jsx","View","flexShrink","justifyContent","minWidth","IconSlot","icon","color","Text","fontFamily","body","fontWeight","numberOfLines","flex","label","CheckIcon","size","weight","YStack","role","borderRadius","formInputColors","border","base","backgroundColor","background","overflow","width","map","isWeb","ref","node","tabIndex","cursor","onPress","outlineWidth","focusVisibleStyle","keyboardFocusRingProps","Pressable","choiceItemA11y"],"sources":["InlineChoices.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar InlineChoices_exports = {};\n__export(InlineChoices_exports, {\n InlineChoices: () => InlineChoices\n});\nmodule.exports = __toCommonJS(InlineChoices_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react = require(\"@phosphor-icons/react\");\nvar import_react2 = require(\"react\");\nvar import_react_native = require(\"react-native\");\nvar import_tamagui = require(\"tamagui\");\nvar import_fieldLayout = require(\"../../fieldLayout\");\nvar import_colorRamps = require(\"../../shared/colorRamps\");\nvar import_nativeA11y = require(\"../../shared/nativeA11y\");\nvar nextKeys = /* @__PURE__ */ new Set([\n \"ArrowDown\",\n \"ArrowRight\"\n]);\nvar previousKeys = /* @__PURE__ */ new Set([\n \"ArrowUp\",\n \"ArrowLeft\"\n]);\nfunction InlineChoices(param) {\n var { options, value, onValueChange, onBlur, disabled, id, labelledBy, \"aria-label\": ariaLabel, knobProps, markColor } = param;\n var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();\n var rowsRef = (0, import_react2.useRef)([]);\n var textColor = knobProps.textAccentColor;\n var selectedIndex = options.findIndex(function(option) {\n return option.value === value;\n });\n var tabStop = selectedIndex >= 0 ? selectedIndex : 0;\n var choose = function choose2(index) {\n var option = options[index];\n if (disabled || !option || option.value === value) return;\n onValueChange(option.value);\n };\n var onKeyDown = function onKeyDown2(index) {\n return function(event) {\n var step = nextKeys.has(event.key) ? 1 : previousKeys.has(event.key) ? -1 : 0;\n if (step) {\n var _rowsRef_current_next;\n event.preventDefault();\n var next = (index + step + options.length) % options.length;\n (_rowsRef_current_next = rowsRef.current[next]) === null || _rowsRef_current_next === void 0 ? void 0 : _rowsRef_current_next.focus();\n choose(next);\n } else if (event.key === \" \" || event.key === \"Enter\") {\n event.preventDefault();\n choose(index);\n }\n };\n };\n var rowContent = function rowContent2(option, index, selected) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n alignItems: \"center\",\n height: knobProps.menuRow.minHeight,\n paddingHorizontal: knobProps.panelPadding.padding,\n ...knobProps.gap,\n ...index === 0 ? void 0 : import_theme.hairline.top,\n borderColor: import_colorRamps.formCommonColors.divider,\n pointerEvents: \"none\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexShrink: 0,\n alignItems: \"center\",\n justifyContent: \"center\",\n minWidth: 18,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_theme.IconSlot, {\n icon: option.icon,\n color: textColor\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: option.label\n }),\n selected ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CheckIcon, {\n size: 14,\n weight: \"bold\",\n color: markColor\n }) : null\n ]\n });\n };\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n id,\n role: \"radiogroup\",\n \"aria-labelledby\": labelledBy,\n \"aria-label\": labelledBy ? void 0 : ariaLabel,\n \"aria-describedby\": describedBy,\n \"aria-disabled\": disabled || void 0,\n \"data-testid\": \"select-inline-choices\",\n ...knobProps.borderRadius,\n borderColor: import_colorRamps.formInputColors.border.base,\n backgroundColor: import_colorRamps.formInputColors.background.base,\n overflow: \"hidden\",\n width: \"100%\",\n children: options.map(function(option, index) {\n var selected = option.value === value;\n if (import_tamagui.isWeb) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ref: function ref(node) {\n rowsRef.current[index] = node;\n },\n role: \"radio\",\n \"aria-checked\": selected,\n \"aria-disabled\": disabled || void 0,\n tabIndex: !disabled && index === tabStop ? 0 : -1,\n cursor: disabled ? \"default\" : \"pointer\",\n onPress: function onPress() {\n return choose(index);\n },\n onKeyDown: onKeyDown(index),\n onBlur,\n outlineWidth: 0,\n focusVisibleStyle: import_theme.keyboardFocusRingProps,\n children: rowContent(option, index, selected)\n }, option.value);\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.Pressable, {\n ...(0, import_nativeA11y.choiceItemA11y)({\n name: option.label,\n selected,\n disabled: !!disabled\n }),\n disabled,\n onPress: function onPress() {\n return choose(index);\n },\n children: rowContent(option, index, selected)\n }, option.value);\n })\n });\n}\n//# sourceMappingURL=InlineChoices.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -62,6 +62,8 @@ var import_tableCellContext = require("../../shared/tableCellContext.cjs");
|
|
|
62
62
|
var import_t = require("../../shared/t.cjs");
|
|
63
63
|
var import_selectedOrder = require("../selectedOrder.cjs");
|
|
64
64
|
var import_nativeSelect = require("../nativeSelect.cjs");
|
|
65
|
+
var import_InlineChoices = require("./InlineChoices.cjs");
|
|
66
|
+
var import_shouldInlineChoices = require("./shouldInlineChoices.cjs");
|
|
65
67
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
66
68
|
const actionSheetIOS = ReactNative.ActionSheetIOS;
|
|
67
69
|
const selectOutlineRest = {
|
|
@@ -86,9 +88,10 @@ const SelectRow = (0, import_tamagui.styled)(import_tamagui.View, {
|
|
|
86
88
|
// Do not put outlineWidth here — Tamagui maps these onto mouse :focus and
|
|
87
89
|
// they beat instance ring props. Rows paint the ring via selectItemRingProps.
|
|
88
90
|
variants: {
|
|
91
|
+
// LC-262: the accent check alone marks the chosen row, never a grey fill.
|
|
89
92
|
selected: {
|
|
90
93
|
true: {
|
|
91
|
-
backgroundColor:
|
|
94
|
+
backgroundColor: "transparent",
|
|
92
95
|
borderRadius: 0
|
|
93
96
|
},
|
|
94
97
|
false: {
|
|
@@ -109,6 +112,21 @@ const SelectRow = (0, import_tamagui.styled)(import_tamagui.View, {
|
|
|
109
112
|
}
|
|
110
113
|
}
|
|
111
114
|
});
|
|
115
|
+
function OptionGlyph({
|
|
116
|
+
icon,
|
|
117
|
+
color
|
|
118
|
+
}) {
|
|
119
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
120
|
+
flexShrink: 0,
|
|
121
|
+
alignItems: "center",
|
|
122
|
+
justifyContent: "center",
|
|
123
|
+
minWidth: 18,
|
|
124
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_theme.IconSlot, {
|
|
125
|
+
icon,
|
|
126
|
+
color
|
|
127
|
+
})
|
|
128
|
+
});
|
|
129
|
+
}
|
|
112
130
|
function GroupHeader(props) {
|
|
113
131
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_theme2.Text, {
|
|
114
132
|
paddingHorizontal: "$3",
|
|
@@ -306,7 +324,7 @@ const SelectItem = (0, import_react.memo)(function SelectItem2({
|
|
|
306
324
|
role: "option",
|
|
307
325
|
tabIndex: -1,
|
|
308
326
|
selected: isSelected,
|
|
309
|
-
active: isActive,
|
|
327
|
+
active: Boolean(isActive) && ctx.kbNav,
|
|
310
328
|
"aria-selected": isSelected,
|
|
311
329
|
"data-state": isSelected ? "active" : "inactive",
|
|
312
330
|
height: ctx.knobProps.menuRow.minHeight,
|
|
@@ -315,15 +333,18 @@ const SelectItem = (0, import_react.memo)(function SelectItem2({
|
|
|
315
333
|
onMouseEnter: () => setActiveIndex(index),
|
|
316
334
|
...(suppressHover ? {
|
|
317
335
|
hoverStyle: {
|
|
318
|
-
backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus :
|
|
336
|
+
backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus : "transparent"
|
|
319
337
|
}
|
|
320
338
|
} : {
|
|
321
339
|
hoverStyle: {
|
|
322
|
-
backgroundColor:
|
|
340
|
+
backgroundColor: import_colorRamps.formInputColors.background.focus
|
|
323
341
|
}
|
|
324
342
|
}),
|
|
325
343
|
...(0, import_theme2.transitionProps)(ctx.knobProps.motion.control),
|
|
326
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
344
|
+
children: [option.icon ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(OptionGlyph, {
|
|
345
|
+
icon: option.icon,
|
|
346
|
+
color: ctx.textColor
|
|
347
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
327
348
|
fontFamily: ctx.knobProps.body.fontFamily,
|
|
328
349
|
fontWeight: ctx.knobProps.body.fontWeight,
|
|
329
350
|
color: ctx.textColor,
|
|
@@ -1109,16 +1130,19 @@ function NativeSelectCore({
|
|
|
1109
1130
|
onPointerDown: import_tamagui.isWeb ? () => setKbNav(false) : void 0,
|
|
1110
1131
|
...(import_tamagui.isWeb ? selectItemRingProps(active, kbNav) : void 0),
|
|
1111
1132
|
hoverStyle: activeIndex != null ? {
|
|
1112
|
-
backgroundColor: active ? import_colorRamps.formInputColors.background.focus :
|
|
1133
|
+
backgroundColor: active ? import_colorRamps.formInputColors.background.focus : "transparent"
|
|
1113
1134
|
} : {
|
|
1114
|
-
backgroundColor:
|
|
1135
|
+
backgroundColor: import_colorRamps.formInputColors.background.focus
|
|
1115
1136
|
},
|
|
1116
|
-
backgroundColor: active
|
|
1137
|
+
backgroundColor: active && kbNav ? import_colorRamps.formInputColors.background.focus : "transparent",
|
|
1117
1138
|
pressStyle: {
|
|
1118
1139
|
backgroundColor: import_colorRamps.formInputColors.background.focus
|
|
1119
1140
|
},
|
|
1120
1141
|
pointerEvents: import_tamagui.isWeb ? void 0 : "none",
|
|
1121
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
1142
|
+
children: [option.icon ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(OptionGlyph, {
|
|
1143
|
+
icon: option.icon,
|
|
1144
|
+
color: textColor
|
|
1145
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
1122
1146
|
fontFamily: knobProps.body.fontFamily,
|
|
1123
1147
|
fontWeight: knobProps.body.fontWeight,
|
|
1124
1148
|
color: textColor,
|
|
@@ -1362,18 +1386,27 @@ function Select({
|
|
|
1362
1386
|
const [uncontrolledValue, setUncontrolledValue] = (0, import_react.useState)(defaultValue);
|
|
1363
1387
|
const isControlled = value !== void 0;
|
|
1364
1388
|
const hasLabel = Boolean(label);
|
|
1365
|
-
(0, import_devWarn.warnSelectTooFewOptions)({
|
|
1366
|
-
count: options?.length ?? 0,
|
|
1367
|
-
multiple,
|
|
1368
|
-
component: "Select",
|
|
1369
|
-
id
|
|
1370
|
-
});
|
|
1371
1389
|
const viewportGtSm = (0, import_FloatingPanel.useViewportGtSm)();
|
|
1372
1390
|
const insideOverlay = (0, import_overlayStack.useInsideOverlay)();
|
|
1373
1391
|
const effectiveGtSm = typeof window !== "undefined" ? viewportGtSm : false;
|
|
1374
1392
|
const hydrated = (0, import_react.useSyncExternalStore)(subscribeNothing, clientSnapshot, serverSnapshot);
|
|
1375
1393
|
const compactMenu = hydrated && (0, import_compactFace.resolveCompactFace)((0, import_compactFace.pickerCompactFace)(options?.length ?? 0), insideOverlay) === "menu";
|
|
1376
1394
|
const shouldUseSheet = !import_tamagui.isWeb || !effectiveGtSm && !compactMenu;
|
|
1395
|
+
const inTableCell = (0, import_tableCellContext.useIsInTableCell)();
|
|
1396
|
+
const inline = !inTableCell && (0, import_shouldInlineChoices.shouldInlineChoices)({
|
|
1397
|
+
insideOverlay,
|
|
1398
|
+
multiple,
|
|
1399
|
+
options
|
|
1400
|
+
});
|
|
1401
|
+
if (!inline) {
|
|
1402
|
+
(0, import_devWarn.warnSelectTooFewOptions)({
|
|
1403
|
+
count: options?.length ?? 0,
|
|
1404
|
+
multiple,
|
|
1405
|
+
component: "Select",
|
|
1406
|
+
id
|
|
1407
|
+
});
|
|
1408
|
+
}
|
|
1409
|
+
const markColor = useSelectedMarkColor();
|
|
1377
1410
|
if (skeleton) {
|
|
1378
1411
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_InputParts.Input, {
|
|
1379
1412
|
size: sizeProp || knobProps.sizeToken,
|
|
@@ -1423,6 +1456,24 @@ function Select({
|
|
|
1423
1456
|
};
|
|
1424
1457
|
const renderSelectContent = (selectValue, handleValueChange, handleBlur) => {
|
|
1425
1458
|
if (readOnly) return renderReadOnly(selectValue);
|
|
1459
|
+
if (inline) {
|
|
1460
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_InlineChoices.InlineChoices, {
|
|
1461
|
+
options,
|
|
1462
|
+
value: typeof selectValue === "string" ? selectValue : void 0,
|
|
1463
|
+
onValueChange: val => {
|
|
1464
|
+
if (disabled) return;
|
|
1465
|
+
handleValueChange?.(val);
|
|
1466
|
+
emitValueChange(val);
|
|
1467
|
+
},
|
|
1468
|
+
onBlur: handleBlur,
|
|
1469
|
+
disabled,
|
|
1470
|
+
id,
|
|
1471
|
+
labelledBy: hasLabel ? `${id}-label` : void 0,
|
|
1472
|
+
"aria-label": ariaLabel,
|
|
1473
|
+
knobProps,
|
|
1474
|
+
markColor
|
|
1475
|
+
});
|
|
1476
|
+
}
|
|
1426
1477
|
const SelectCore = shouldUseSheet ? NativeSelectCore : FloatingSelectCore;
|
|
1427
1478
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(SelectCore, {
|
|
1428
1479
|
options,
|
|
@@ -65,6 +65,8 @@ var import_tableCellContext = require("../../shared/tableCellContext.native.js")
|
|
|
65
65
|
var import_t = require("../../shared/t.native.js");
|
|
66
66
|
var import_selectedOrder = require("../selectedOrder.native.js");
|
|
67
67
|
var import_nativeSelect = require("../nativeSelect.native.js");
|
|
68
|
+
var import_InlineChoices = require("./InlineChoices.native.js");
|
|
69
|
+
var import_shouldInlineChoices = require("./shouldInlineChoices.native.js");
|
|
68
70
|
var actionSheetIOS = ReactNative.ActionSheetIOS;
|
|
69
71
|
var selectOutlineRest = {
|
|
70
72
|
outlineWidth: 0,
|
|
@@ -88,9 +90,10 @@ var SelectRow = (0, import_tamagui.styled)(import_tamagui.View, {
|
|
|
88
90
|
// Do not put outlineWidth here — Tamagui maps these onto mouse :focus and
|
|
89
91
|
// they beat instance ring props. Rows paint the ring via selectItemRingProps.
|
|
90
92
|
variants: {
|
|
93
|
+
// LC-262: the accent check alone marks the chosen row, never a grey fill.
|
|
91
94
|
selected: {
|
|
92
95
|
true: {
|
|
93
|
-
backgroundColor:
|
|
96
|
+
backgroundColor: "transparent",
|
|
94
97
|
borderRadius: 0
|
|
95
98
|
},
|
|
96
99
|
false: {
|
|
@@ -113,6 +116,22 @@ var SelectRow = (0, import_tamagui.styled)(import_tamagui.View, {
|
|
|
113
116
|
}
|
|
114
117
|
}
|
|
115
118
|
});
|
|
119
|
+
function OptionGlyph(param) {
|
|
120
|
+
var {
|
|
121
|
+
icon,
|
|
122
|
+
color
|
|
123
|
+
} = param;
|
|
124
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
|
|
125
|
+
flexShrink: 0,
|
|
126
|
+
alignItems: "center",
|
|
127
|
+
justifyContent: "center",
|
|
128
|
+
minWidth: 18,
|
|
129
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_theme.IconSlot, {
|
|
130
|
+
icon,
|
|
131
|
+
color
|
|
132
|
+
})
|
|
133
|
+
});
|
|
134
|
+
}
|
|
116
135
|
function GroupHeader(props) {
|
|
117
136
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_theme2.Text, {
|
|
118
137
|
paddingHorizontal: "$3",
|
|
@@ -404,7 +423,9 @@ var SelectItem = /* @__PURE__ */(0, import_react.memo)(function SelectItem2(para
|
|
|
404
423
|
role: "option",
|
|
405
424
|
tabIndex: -1,
|
|
406
425
|
selected: isSelected,
|
|
407
|
-
|
|
426
|
+
// The open-time cursor sits on the chosen row; it only paints while the
|
|
427
|
+
// keyboard drives it, so the chosen row never opens grey (LC-262).
|
|
428
|
+
active: Boolean(isActive) && ctx.kbNav,
|
|
408
429
|
"aria-selected": isSelected,
|
|
409
430
|
"data-state": isSelected ? "active" : "inactive",
|
|
410
431
|
height: ctx.knobProps.menuRow.minHeight,
|
|
@@ -419,15 +440,18 @@ var SelectItem = /* @__PURE__ */(0, import_react.memo)(function SelectItem2(para
|
|
|
419
440
|
},
|
|
420
441
|
...(suppressHover ? {
|
|
421
442
|
hoverStyle: {
|
|
422
|
-
backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus :
|
|
443
|
+
backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus : "transparent"
|
|
423
444
|
}
|
|
424
445
|
} : {
|
|
425
446
|
hoverStyle: {
|
|
426
|
-
backgroundColor:
|
|
447
|
+
backgroundColor: import_colorRamps.formInputColors.background.focus
|
|
427
448
|
}
|
|
428
449
|
}),
|
|
429
450
|
...(0, import_theme2.transitionProps)(ctx.knobProps.motion.control),
|
|
430
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
451
|
+
children: [option.icon ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(OptionGlyph, {
|
|
452
|
+
icon: option.icon,
|
|
453
|
+
color: ctx.textColor
|
|
454
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
431
455
|
fontFamily: ctx.knobProps.body.fontFamily,
|
|
432
456
|
fontWeight: ctx.knobProps.body.fontWeight,
|
|
433
457
|
color: ctx.textColor,
|
|
@@ -1361,17 +1385,21 @@ function NativeSelectCore(param) {
|
|
|
1361
1385
|
} : void 0,
|
|
1362
1386
|
...(import_tamagui.isWeb ? selectItemRingProps(active, kbNav) : void 0),
|
|
1363
1387
|
hoverStyle: activeIndex != null ? {
|
|
1364
|
-
backgroundColor: active ? import_colorRamps.formInputColors.background.focus :
|
|
1388
|
+
backgroundColor: active ? import_colorRamps.formInputColors.background.focus : "transparent"
|
|
1365
1389
|
} : {
|
|
1366
|
-
backgroundColor:
|
|
1390
|
+
backgroundColor: import_colorRamps.formInputColors.background.focus
|
|
1367
1391
|
},
|
|
1368
|
-
|
|
1392
|
+
// LC-262: the accent check alone marks the chosen row.
|
|
1393
|
+
backgroundColor: active && kbNav ? import_colorRamps.formInputColors.background.focus : "transparent",
|
|
1369
1394
|
pressStyle: {
|
|
1370
1395
|
backgroundColor: import_colorRamps.formInputColors.background.focus
|
|
1371
1396
|
},
|
|
1372
1397
|
// Native: parent RNPressable owns the hit; disable child stealing.
|
|
1373
1398
|
pointerEvents: import_tamagui.isWeb ? void 0 : "none",
|
|
1374
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(
|
|
1399
|
+
children: [option.icon ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(OptionGlyph, {
|
|
1400
|
+
icon: option.icon,
|
|
1401
|
+
color: textColor
|
|
1402
|
+
}) : null, /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
1375
1403
|
fontFamily: knobProps.body.fontFamily,
|
|
1376
1404
|
fontWeight: knobProps.body.fontWeight,
|
|
1377
1405
|
color: textColor,
|
|
@@ -1626,7 +1654,7 @@ function Select(param) {
|
|
|
1626
1654
|
"aria-label": ariaLabel,
|
|
1627
1655
|
...rest
|
|
1628
1656
|
} = param;
|
|
1629
|
-
var _ref
|
|
1657
|
+
var _ref;
|
|
1630
1658
|
var emitValueChange = function emitValueChange2(val) {
|
|
1631
1659
|
onChange === null || onChange === void 0 ? void 0 : onChange(val);
|
|
1632
1660
|
onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(val);
|
|
@@ -1644,18 +1672,28 @@ function Select(param) {
|
|
|
1644
1672
|
var [uncontrolledValue, setUncontrolledValue] = (0, import_react.useState)(defaultValue);
|
|
1645
1673
|
var isControlled = value !== void 0;
|
|
1646
1674
|
var hasLabel = Boolean(label);
|
|
1647
|
-
(0, import_devWarn.warnSelectTooFewOptions)({
|
|
1648
|
-
count: (_ref = options === null || options === void 0 ? void 0 : options.length) !== null && _ref !== void 0 ? _ref : 0,
|
|
1649
|
-
multiple,
|
|
1650
|
-
component: "Select",
|
|
1651
|
-
id
|
|
1652
|
-
});
|
|
1653
1675
|
var viewportGtSm = (0, import_FloatingPanel.useViewportGtSm)();
|
|
1654
1676
|
var insideOverlay = (0, import_overlayStack.useInsideOverlay)();
|
|
1655
1677
|
var effectiveGtSm = typeof window !== "undefined" ? viewportGtSm : false;
|
|
1656
1678
|
var hydrated = (0, import_react.useSyncExternalStore)(subscribeNothing, clientSnapshot, serverSnapshot);
|
|
1657
|
-
var compactMenu = hydrated && (0, import_compactFace.resolveCompactFace)((0, import_compactFace.pickerCompactFace)((
|
|
1679
|
+
var compactMenu = hydrated && (0, import_compactFace.resolveCompactFace)((0, import_compactFace.pickerCompactFace)((_ref = options === null || options === void 0 ? void 0 : options.length) !== null && _ref !== void 0 ? _ref : 0), insideOverlay) === "menu";
|
|
1658
1680
|
var shouldUseSheet = !import_tamagui.isWeb || !effectiveGtSm && !compactMenu;
|
|
1681
|
+
var inTableCell = (0, import_tableCellContext.useIsInTableCell)();
|
|
1682
|
+
var inline = !inTableCell && (0, import_shouldInlineChoices.shouldInlineChoices)({
|
|
1683
|
+
insideOverlay,
|
|
1684
|
+
multiple,
|
|
1685
|
+
options
|
|
1686
|
+
});
|
|
1687
|
+
if (!inline) {
|
|
1688
|
+
var _ref1;
|
|
1689
|
+
(0, import_devWarn.warnSelectTooFewOptions)({
|
|
1690
|
+
count: (_ref1 = options === null || options === void 0 ? void 0 : options.length) !== null && _ref1 !== void 0 ? _ref1 : 0,
|
|
1691
|
+
multiple,
|
|
1692
|
+
component: "Select",
|
|
1693
|
+
id
|
|
1694
|
+
});
|
|
1695
|
+
}
|
|
1696
|
+
var markColor = useSelectedMarkColor();
|
|
1659
1697
|
if (skeleton) {
|
|
1660
1698
|
return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_InputParts.Input, {
|
|
1661
1699
|
size: sizeProp || knobProps.sizeToken,
|
|
@@ -1715,6 +1753,24 @@ function Select(param) {
|
|
|
1715
1753
|
};
|
|
1716
1754
|
var renderSelectContent = function renderSelectContent2(selectValue, handleValueChange, handleBlur) {
|
|
1717
1755
|
if (readOnly) return renderReadOnly(selectValue);
|
|
1756
|
+
if (inline) {
|
|
1757
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_InlineChoices.InlineChoices, {
|
|
1758
|
+
options,
|
|
1759
|
+
value: typeof selectValue === "string" ? selectValue : void 0,
|
|
1760
|
+
onValueChange: function onValueChange2(val) {
|
|
1761
|
+
if (disabled) return;
|
|
1762
|
+
handleValueChange === null || handleValueChange === void 0 ? void 0 : handleValueChange(val);
|
|
1763
|
+
emitValueChange(val);
|
|
1764
|
+
},
|
|
1765
|
+
onBlur: handleBlur,
|
|
1766
|
+
disabled,
|
|
1767
|
+
id,
|
|
1768
|
+
labelledBy: hasLabel ? `${id}-label` : void 0,
|
|
1769
|
+
"aria-label": ariaLabel,
|
|
1770
|
+
knobProps,
|
|
1771
|
+
markColor
|
|
1772
|
+
});
|
|
1773
|
+
}
|
|
1718
1774
|
var SelectCore = shouldUseSheet ? NativeSelectCore : FloatingSelectCore;
|
|
1719
1775
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(SelectCore, {
|
|
1720
1776
|
options,
|