@multiplatform.one/forms 7.8.0 → 7.10.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/Button/index.cjs +1 -1
- package/dist/cjs/Button/index.native.js +5 -3
- package/dist/cjs/Button/index.native.js.map +1 -1
- package/dist/cjs/InputParts/index.cjs +11 -2
- package/dist/cjs/InputParts/index.native.js +11 -2
- package/dist/cjs/InputParts/index.native.js.map +1 -1
- package/dist/cjs/fields/FileUpload/index.cjs +6 -0
- package/dist/cjs/fields/FileUpload/index.native.js +6 -0
- package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
- package/dist/cjs/fields/Icon/drawnSet.cjs +3 -1
- package/dist/cjs/fields/Icon/drawnSet.native.js +3 -1
- package/dist/cjs/fields/Icon/drawnSet.native.js.map +1 -1
- package/dist/cjs/fields/RadioGroup/index.cjs +34 -5
- package/dist/cjs/fields/RadioGroup/index.native.js +49 -7
- package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/ToggleGroup/index.cjs +35 -2
- package/dist/cjs/fields/ToggleGroup/index.native.js +42 -2
- package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/cjs/shared/nativeA11y.cjs +57 -0
- package/dist/cjs/shared/nativeA11y.native.js +61 -0
- package/dist/cjs/shared/nativeA11y.native.js.map +1 -0
- package/dist/esm/AdaptivePopup/index.native.js.map +1 -1
- package/dist/esm/Button/index.mjs +1 -1
- package/dist/esm/Button/index.mjs.map +1 -1
- package/dist/esm/Button/index.native.js +5 -3
- package/dist/esm/Button/index.native.js.map +1 -1
- package/dist/esm/Chip/index.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/index.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
- package/dist/esm/ControlGroup/index.native.js.map +1 -1
- package/dist/esm/DescriptionList/index.native.js.map +1 -1
- package/dist/esm/ErrorSummary.native.js.map +1 -1
- package/dist/esm/FieldDisplay/editMode.native.js.map +1 -1
- package/dist/esm/FieldDisplay/formatters.native.js.map +1 -1
- package/dist/esm/FieldDisplay/index.native.js.map +1 -1
- package/dist/esm/FieldGroup.native.js.map +1 -1
- package/dist/esm/FloatingPanel/nestedAction.native.js.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/esm/Form/index.native.js.map +1 -1
- package/dist/esm/Form/validateOn.native.js.map +1 -1
- package/dist/esm/FormGrid.native.js.map +1 -1
- package/dist/esm/FormSection.native.js.map +1 -1
- package/dist/esm/InputParts/index.mjs +11 -2
- package/dist/esm/InputParts/index.mjs.map +1 -1
- package/dist/esm/InputParts/index.native.js +11 -2
- package/dist/esm/InputParts/index.native.js.map +1 -1
- package/dist/esm/Label/index.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/actionLabel.native.js.map +1 -1
- package/dist/esm/fieldDefaults.native.js.map +1 -1
- package/dist/esm/fieldLayout.native.js.map +1 -1
- package/dist/esm/fields/Barcode/BarcodePreview.native.js.map +1 -1
- package/dist/esm/fields/Barcode/code128.native.js.map +1 -1
- package/dist/esm/fields/Barcode/index.native.js.map +1 -1
- package/dist/esm/fields/Barcode/qr.native.js.map +1 -1
- package/dist/esm/fields/Barcode/scannerTypes.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxBox.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxCard.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/index.native.js.map +1 -1
- package/dist/esm/fields/ColorPicker/index.native.js.map +1 -1
- package/dist/esm/fields/ColorPicker/parts.native.js.map +1 -1
- package/dist/esm/fields/Combobox/authorOptions.native.js.map +1 -1
- package/dist/esm/fields/Combobox/index.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/Calendar.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/fieldValueSync.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/utils.native.js.map +1 -1
- package/dist/esm/fields/Duration/durationMath.native.js.map +1 -1
- package/dist/esm/fields/Duration/index.native.js.map +1 -1
- package/dist/esm/fields/FileUpload/filePickerTypes.native.js.map +1 -1
- package/dist/esm/fields/FileUpload/index.mjs +6 -0
- package/dist/esm/fields/FileUpload/index.mjs.map +1 -1
- package/dist/esm/fields/FileUpload/index.native.js +6 -0
- 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/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/Icon/drawnSet.mjs +3 -1
- package/dist/esm/fields/Icon/drawnSet.mjs.map +1 -1
- package/dist/esm/fields/Icon/drawnSet.native.js +3 -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/Progress/index.native.js.map +1 -1
- package/dist/esm/fields/RadioGroup/index.mjs +34 -5
- package/dist/esm/fields/RadioGroup/index.mjs.map +1 -1
- package/dist/esm/fields/RadioGroup/index.native.js +49 -7
- package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/esm/fields/Rating/index.native.js.map +1 -1
- package/dist/esm/fields/Rating/ratingMath.native.js.map +1 -1
- package/dist/esm/fields/Rating/types.native.js.map +1 -1
- package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
- package/dist/esm/fields/Select/index.native.js.map +1 -1
- package/dist/esm/fields/Signature/index.native.js.map +1 -1
- package/dist/esm/fields/Slider/index.native.js.map +1 -1
- package/dist/esm/fields/Slider/jumpMotion.native.js.map +1 -1
- package/dist/esm/fields/Stepper/index.native.js.map +1 -1
- package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
- package/dist/esm/fields/Switch/index.native.js.map +1 -1
- package/dist/esm/fields/TextArea/index.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
- package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -1
- package/dist/esm/fields/ToggleGroup/index.mjs +35 -2
- package/dist/esm/fields/ToggleGroup/index.mjs.map +1 -1
- package/dist/esm/fields/ToggleGroup/index.native.js +42 -2
- 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/osDateTimeIosDisplay.native.js.map +1 -1
- package/dist/esm/fields/nativeSelect.native.js.map +1 -1
- package/dist/esm/fields/selectedOrder.native.js.map +1 -1
- package/dist/esm/formSpacing.native.js.map +1 -1
- package/dist/esm/hooks/useFocusManagement.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/requiredMarking.native.js.map +1 -1
- package/dist/esm/shared/TimeColumn.native.js.map +1 -1
- package/dist/esm/shared/capabilityPreflight.native.js.map +1 -1
- package/dist/esm/shared/colorRamps.native.js.map +1 -1
- package/dist/esm/shared/devWarn.native.js.map +1 -1
- package/dist/esm/shared/floatingList.native.js.map +1 -1
- package/dist/esm/shared/focusManagement.native.js.map +1 -1
- package/dist/esm/shared/groupContext.native.js.map +1 -1
- package/dist/esm/shared/i18n.native.js.map +1 -1
- package/dist/esm/shared/nativeA11y.mjs +31 -0
- package/dist/esm/shared/nativeA11y.mjs.map +1 -0
- package/dist/esm/shared/nativeA11y.native.js +32 -0
- package/dist/esm/shared/nativeA11y.native.js.map +1 -0
- package/dist/esm/shared/pickerTriggerContract.native.js.map +1 -1
- package/dist/esm/shared/pressSlopProps.native.js.map +1 -1
- package/dist/esm/shared/t.native.js.map +1 -1
- package/dist/esm/shared/tableCellContext.native.js.map +1 -1
- package/dist/esm/shared/useDragScroll.native.js.map +1 -1
- package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
- package/dist/esm/shared/useSheetEscapeDismiss.native.js.map +1 -1
- package/dist/esm/shared/useWheelIncrement.native.js.map +1 -1
- package/dist/esm/shared/utils.native.js.map +1 -1
- package/dist/esm/shared/zIndex.native.js.map +1 -1
- package/dist/esm/themedPrimitives.native.js.map +1 -1
- package/dist/esm/types.native.js.map +1 -1
- package/dist/esm/utils/LinkCell.native.js.map +1 -1
- package/dist/jsx/Button/index.mjs +1 -1
- package/dist/jsx/Button/index.mjs.map +1 -1
- package/dist/jsx/Button/index.native.js +5 -3
- package/dist/jsx/Button/index.native.js.map +1 -1
- package/dist/jsx/InputParts/index.mjs +11 -2
- package/dist/jsx/InputParts/index.mjs.map +1 -1
- package/dist/jsx/InputParts/index.native.js +11 -2
- package/dist/jsx/InputParts/index.native.js.map +1 -1
- package/dist/jsx/fields/FileUpload/index.mjs +6 -0
- package/dist/jsx/fields/FileUpload/index.mjs.map +1 -1
- package/dist/jsx/fields/FileUpload/index.native.js +6 -0
- package/dist/jsx/fields/FileUpload/index.native.js.map +1 -1
- package/dist/jsx/fields/Icon/drawnSet.mjs +3 -1
- package/dist/jsx/fields/Icon/drawnSet.mjs.map +1 -1
- package/dist/jsx/fields/Icon/drawnSet.native.js +3 -1
- package/dist/jsx/fields/Icon/drawnSet.native.js.map +1 -1
- package/dist/jsx/fields/RadioGroup/index.mjs +34 -5
- package/dist/jsx/fields/RadioGroup/index.mjs.map +1 -1
- package/dist/jsx/fields/RadioGroup/index.native.js +49 -7
- package/dist/jsx/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/jsx/fields/ToggleGroup/index.mjs +35 -2
- package/dist/jsx/fields/ToggleGroup/index.mjs.map +1 -1
- package/dist/jsx/fields/ToggleGroup/index.native.js +42 -2
- package/dist/jsx/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/jsx/shared/nativeA11y.mjs +31 -0
- package/dist/jsx/shared/nativeA11y.mjs.map +1 -0
- package/dist/jsx/shared/nativeA11y.native.js +61 -0
- package/dist/jsx/shared/nativeA11y.native.js.map +1 -0
- package/package.json +9 -8
- package/src/Button/Button.fontWeight.spec.tsx +75 -0
- package/src/Button/index.tsx +5 -3
- package/src/FieldGroup.stories.tsx +3 -7
- package/src/FieldLayout.stories.tsx +34 -12
- package/src/Fieldset.stories.tsx +3 -7
- package/src/FormGrid.stories.tsx +5 -11
- package/src/InputParts/InputButton.spec.tsx +16 -0
- package/src/InputParts/index.tsx +19 -2
- package/src/fieldFamilyStories.radius.spec.tsx +118 -0
- package/src/fields/Barcode/Barcode.spec.tsx +2 -0
- package/src/fields/FileUpload/FileUpload.spec.tsx +29 -0
- package/src/fields/FileUpload/index.tsx +6 -0
- package/src/fields/Icon/drawnSet.tsx +7 -2
- package/src/fields/RadioGroup/RadioGroup.native.spec.tsx +67 -0
- package/src/fields/RadioGroup/index.tsx +82 -8
- package/src/fields/ToggleGroup/ToggleGroup.native.spec.tsx +73 -0
- package/src/fields/ToggleGroup/ToggleGroup.spec.tsx +49 -0
- package/src/fields/ToggleGroup/index.tsx +76 -1
- package/src/shared/nativeA11y.spec.ts +64 -0
- package/src/shared/nativeA11y.ts +80 -0
- package/types/Button/index.d.ts.map +1 -1
- package/types/InputParts/index.d.ts.map +1 -1
- package/types/fields/FileUpload/index.d.ts.map +1 -1
- package/types/fields/Icon/drawnSet.d.ts.map +1 -1
- package/types/fields/RadioGroup/index.d.ts +28 -1
- package/types/fields/RadioGroup/index.d.ts.map +1 -1
- package/types/fields/ToggleGroup/index.d.ts +30 -1
- package/types/fields/ToggleGroup/index.d.ts.map +1 -1
- package/types/shared/nativeA11y.d.ts +61 -0
- package/types/shared/nativeA11y.d.ts.map +1 -0
|
@@ -1 +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","ToggleGroup_exports","ToggleGroup","module","exports","import_jsx_runtime","require","import_react","import_theme","import_tamagui","import_Skeleton","import_fieldLayout","import_colorRamps","import_devWarn","import_utils","ToggleItemFrame","styled","Item","unstyled","cursor","userSelect","display","alignItems","justifyContent","flexDirection","backgroundColor","borderColor","borderWidth","margin","outlineWidth","position","focusStyle","focusVisibleStyle","SEGMENT_MOTION_MS","bouncy","lazy","slow","medium","quick","tooltip","snappy","gentle","segmentFillState","props","ToggleItemWithElevation","param","elevationWrapperProps","groupedRadius","elevation","jsx","View","children","form","formProp","validators","label","labelProps","helperText","error","required","disabled","disabledReason","readOnly","size","id","idProp","type","defaultValue","onChange","onValueChange","onBlur","options","orientation","skeleton","compact","handleValueChange","handleValueChange2","val","resolvedForm","knobProps","control","text","disabledState","useFormField","selectedTint","useAccentTintedSurface","selectedFill","formButtonColors","border","active","onSelectedLabel","useReadableTextOn","kbFocusValue","setKbFocusValue","useState","focusValue","setFocusValue","isWeb","ensureKeyboardModalityTracking","resolvedValidators","useResolvedValidators","getElevationWrapperProps","segmentHitSlop","pressTargetHitSlop","height","motionMs","transition","segmentMotionStyle","className","style","transitionProperty","transitionDuration","transitionTimingFunction","warnBareDisabled","component","Boolean","skip","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","option","_option_disabledReason","err","return","resolvedHelperText","trim","uniqueItemReasons","Set","filter","o","_o_disabledReason","map","itemReasonIdFor","itemReasonIdFor2","reason","index","indexOf","optionDisabledByValue","optionDisabledByValue2","_options_find","find","_ref","optionCount","length","segmentH","segmentW","paddingHorizontal","FieldLayout","alignSelf","overflow","borderRadius","inputSurface","Array","_","i","Skeleton","variant","width","renderContent","renderContent2","resolvedValue","radius","count","isSelected","isSelected2","isArray","includes","focusedIdx","findIndex","firstSelectedEnabled","tabStopIndex","option2","stackRadiusProps","getGroupPosition","selected","nextSelected","itemDisabled","itemDescribedBy","isTabStop","showSeam","activeColors","hoverFill","hoverKnobProps","pressFill","pressKnobProps","jsxs","tabIndex","hitSlop","flexShrink","flexGrow","flexBasis","gap","selectedSurfaceKnobProps","surfaceKnobProps","pointerEvents","hoverStyle","background","hover","pressStyle","keyboardFocusRingProps","onFocus","wasKeyboardFocus","onBlur2","prev","icon","SizableText","controlType","body","color","textKnobProps","focusKnobProps","zIndex","hairline","vline","top","bottom","insetInlineEnd","hairlineWidth","line","insetInlineStart","renderToggleGroup","renderToggleGroup2","isControlled","handleChange","handleBlur","hasError","emptyValue","toggleProps","disableDeactivation","onValueChange2","prevArr","nextArr","toggled","v","sizeToken","Fragment","outlined","formInputColors","base","gridAutoFlow","gridAutoColumns"],"sources":["../../../../src/fields/ToggleGroup/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
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","ToggleGroup_exports","ToggleGroup","module","exports","import_jsx_runtime","require","import_react","import_theme","import_tamagui","import_Skeleton","import_fieldLayout","import_colorRamps","import_devWarn","import_nativeA11y","import_utils","ToggleItemFrame","styled","Item","unstyled","cursor","userSelect","display","alignItems","justifyContent","flexDirection","backgroundColor","borderColor","borderWidth","margin","outlineWidth","position","focusStyle","focusVisibleStyle","SEGMENT_MOTION_MS","bouncy","lazy","slow","medium","quick","tooltip","snappy","gentle","segmentFillState","props","ToggleItemWithElevation","param","elevationWrapperProps","groupedRadius","elevation","jsx","View","flexGrow","flexShrink","children","form","formProp","validators","label","labelProps","helperText","error","required","disabled","disabledReason","readOnly","size","id","idProp","type","defaultValue","onChange","onValueChange","onBlur","options","orientation","skeleton","compact","accessibilityLabel","accessibilityHint","ariaLabel","ariaLabelledBy","handleValueChange","handleValueChange2","val","groupA11yName","resolvedForm","knobProps","control","text","disabledState","useFormField","selectedTint","useAccentTintedSurface","selectedFill","formButtonColors","border","active","onSelectedLabel","useReadableTextOn","kbFocusValue","setKbFocusValue","useState","focusValue","setFocusValue","isWeb","ensureKeyboardModalityTracking","resolvedValidators","useResolvedValidators","getElevationWrapperProps","segmentHitSlop","pressTargetHitSlop","height","motionMs","transition","segmentMotionStyle","className","style","transitionProperty","transitionDuration","transitionTimingFunction","warnBareDisabled","component","Boolean","skip","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","option","_option_disabledReason","err","return","resolvedHelperText","trim","uniqueItemReasons","Set","filter","o","_o_disabledReason","map","itemReasonIdFor","itemReasonIdFor2","reason","index","indexOf","optionDisabledByValue","optionDisabledByValue2","_options_find","find","_ref","optionCount","length","segmentH","segmentW","paddingHorizontal","FieldLayout","alignSelf","overflow","borderRadius","inputSurface","Array","_","i","Skeleton","variant","width","renderContent","renderContent2","resolvedValue","radius","count","isSelected","isSelected2","isArray","includes","focusedIdx","findIndex","firstSelectedEnabled","tabStopIndex","option2","_option_accessibilityLabel","_option_accessibilityHint","stackRadiusProps","getGroupPosition","selected","nextSelected","itemDisabled","itemDescribedBy","isTabStop","showSeam","activeColors","hoverFill","hoverKnobProps","pressFill","pressKnobProps","jsxs","tabIndex","hitSlop","flexBasis","gap","selectedSurfaceKnobProps","surfaceKnobProps","pointerEvents","hoverStyle","background","hover","pressStyle","keyboardFocusRingProps","onFocus","wasKeyboardFocus","onBlur2","prev","choiceItemA11y","kind","composeA11yName","hint","icon","SizableText","controlType","body","color","textKnobProps","focusKnobProps","zIndex","hairline","vline","top","bottom","insetInlineEnd","hairlineWidth","line","insetInlineStart","renderToggleGroup","renderToggleGroup2","isControlled","handleChange","handleBlur","hasError","emptyValue","toggleProps","disableDeactivation","onValueChange2","prevArr","nextArr","toggled","v","sizeToken","accessibilityRole","Fragment","outlined","formInputColors","base"],"sources":["../../../../src/fields/ToggleGroup/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
const nativeChoiceRole = "button";
|
|
2
|
+
function composeA11yName(groupName, ownName) {
|
|
3
|
+
const group = groupName?.trim();
|
|
4
|
+
return group ? `${group}, ${ownName}` : ownName;
|
|
5
|
+
}
|
|
6
|
+
function choiceItemA11y({
|
|
7
|
+
name,
|
|
8
|
+
selected,
|
|
9
|
+
disabled,
|
|
10
|
+
hint
|
|
11
|
+
}) {
|
|
12
|
+
return {
|
|
13
|
+
accessible: true,
|
|
14
|
+
role: nativeChoiceRole,
|
|
15
|
+
accessibilityRole: nativeChoiceRole,
|
|
16
|
+
accessibilityLabel: name,
|
|
17
|
+
// `selected` is what a reader announces for a segment, `checked` what it
|
|
18
|
+
// announces for a radio; the iOS tree surfaces them as `selected: true`
|
|
19
|
+
// and `value: "checked"`. Both are set so one shape serves both controls.
|
|
20
|
+
accessibilityState: {
|
|
21
|
+
disabled,
|
|
22
|
+
selected,
|
|
23
|
+
checked: selected
|
|
24
|
+
},
|
|
25
|
+
...(hint ? {
|
|
26
|
+
accessibilityHint: hint
|
|
27
|
+
} : void 0)
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export { choiceItemA11y, composeA11yName };
|
|
31
|
+
//# sourceMappingURL=nativeA11y.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["nativeChoiceRole","composeA11yName","groupName","ownName","group","trim","choiceItemA11y","name","selected","disabled","hint","accessible","role","accessibilityRole","accessibilityLabel","accessibilityState","checked","accessibilityHint"],"sources":["../../../src/shared/nativeA11y.ts"],"sourcesContent":[null],"mappings":"AAiCA,MAAMA,gBAAA,GAAmB;AAiBlB,SAASC,gBAAgBC,SAAA,EAA+BC,OAAA,EAAyB;EACtF,MAAMC,KAAA,GAAQF,SAAA,EAAWG,IAAA,CAAK;EAC9B,OAAOD,KAAA,GAAQ,GAAGA,KAAK,KAAKD,OAAO,KAAKA,OAAA;AAC1C;AAEO,SAASG,eAAe;EAC7BC,IAAA;EACAC,QAAA;EACAC,QAAA;EACAC;AACF,GAOoB;EAClB,OAAO;IACLC,UAAA,EAAY;IACZC,IAAA,EAAMZ,gBAAA;IACNa,iBAAA,EAAmBb,gBAAA;IACnBc,kBAAA,EAAoBP,IAAA;IAAA;IAAA;IAAA;IAIpBQ,kBAAA,EAAoB;MAAEN,QAAA;MAAUD,QAAA;MAAUQ,OAAA,EAASR;IAAS;IAC5D,IAAIE,IAAA,GAAO;MAAEO,iBAAA,EAAmBP;IAAK,IAAI;EAC3C;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
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 nativeA11y_exports = {};
|
|
26
|
+
__export(nativeA11y_exports, {
|
|
27
|
+
choiceItemA11y: () => choiceItemA11y,
|
|
28
|
+
composeA11yName: () => composeA11yName
|
|
29
|
+
});
|
|
30
|
+
module.exports = __toCommonJS(nativeA11y_exports);
|
|
31
|
+
var nativeChoiceRole = "button";
|
|
32
|
+
function composeA11yName(groupName, ownName) {
|
|
33
|
+
var group = groupName === null || groupName === void 0 ? void 0 : groupName.trim();
|
|
34
|
+
return group ? `${group}, ${ownName}` : ownName;
|
|
35
|
+
}
|
|
36
|
+
function choiceItemA11y(param) {
|
|
37
|
+
var {
|
|
38
|
+
name,
|
|
39
|
+
selected,
|
|
40
|
+
disabled,
|
|
41
|
+
hint
|
|
42
|
+
} = param;
|
|
43
|
+
return {
|
|
44
|
+
accessible: true,
|
|
45
|
+
role: nativeChoiceRole,
|
|
46
|
+
accessibilityRole: nativeChoiceRole,
|
|
47
|
+
accessibilityLabel: name,
|
|
48
|
+
// `selected` is what a reader announces for a segment, `checked` what it
|
|
49
|
+
// announces for a radio; the iOS tree surfaces them as `selected: true`
|
|
50
|
+
// and `value: "checked"`. Both are set so one shape serves both controls.
|
|
51
|
+
accessibilityState: {
|
|
52
|
+
disabled,
|
|
53
|
+
selected,
|
|
54
|
+
checked: selected
|
|
55
|
+
},
|
|
56
|
+
...(hint ? {
|
|
57
|
+
accessibilityHint: hint
|
|
58
|
+
} : void 0)
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=nativeA11y.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","nativeA11y_exports","choiceItemA11y","composeA11yName"],"sources":["../../../src/shared/nativeA11y.ts"],"sourcesContent":[null],"mappings":"AAiCA,YAAM;;AAiBC,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAA+C;AAC7D,IAAAC,gBAAc,GAAAF,MAAW,CAAAG,wBAAK;AAC9B,IAAAC,iBAAkB,GAAAJ,MAAU,CAAAK,mBAAY;AAC1C,IAAAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAEO,IAAAC,QAAS,GAAAA,CAAAC,MAAA,EAAeC,GAAA;EAC7B,SAAAC,IAAA,IAAAD,GAAA,EACAZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;AACA,IACAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EACF,IAOoBF,IAAA,WAAAA,IAAA,wBAAAA,IAAA;IAClB,KAAO,IAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GACL,KAAAX,YAAY,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EACZnB,SAAM,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EAAA;EACa,OACnBE,EAAA;AAAoB;AAAA,IAAAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IAAAE,kBAAA;AAAAhB,QAIpB,CAAAgB,kBAAsB;EAAsCC,cAC/C,EAAAA,CAAA,KAAAA,cAAmB;EAClCC,eAAA,EAAAA,CAAA,KAAAA;AACF","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplatform.one/forms",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.10.0",
|
|
4
4
|
"description": "Cross-platform form components with URL state management",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cross-platform",
|
|
@@ -64,16 +64,17 @@
|
|
|
64
64
|
"@tamagui/roving-focus": "2.7.6",
|
|
65
65
|
"@tamagui/web": "2.7.6",
|
|
66
66
|
"@tanstack/react-form": "^1.29.1",
|
|
67
|
+
"@tanstack/react-store": "0.9.2",
|
|
67
68
|
"expo-camera": "~55.0.18",
|
|
68
69
|
"expo-linear-gradient": "~55.0.13",
|
|
69
70
|
"html5-qrcode": "^2.3.8",
|
|
70
71
|
"perfect-freehand": "^1.2.3",
|
|
71
72
|
"react-native-svg": "15.15.4",
|
|
72
73
|
"tamagui": "2.7.6",
|
|
73
|
-
"@multiplatform.one/platform": "7.
|
|
74
|
-
"@multiplatform.one/
|
|
75
|
-
"@multiplatform.one/table-primitives": "7.
|
|
76
|
-
"@multiplatform.one/
|
|
74
|
+
"@multiplatform.one/platform": "7.10.0",
|
|
75
|
+
"@multiplatform.one/theme": "7.10.0",
|
|
76
|
+
"@multiplatform.one/table-primitives": "7.10.0",
|
|
77
|
+
"@multiplatform.one/router": "7.10.0"
|
|
77
78
|
},
|
|
78
79
|
"devDependencies": {
|
|
79
80
|
"@tamagui/build": "2.7.6",
|
|
@@ -95,9 +96,9 @@
|
|
|
95
96
|
"react-i18next": "^16.6.6",
|
|
96
97
|
"react-native-web": "^0.21.2",
|
|
97
98
|
"vitest": "^4.1.5",
|
|
98
|
-
"@multiplatform.one/
|
|
99
|
-
"@multiplatform.one/
|
|
100
|
-
"@multiplatform.one/
|
|
99
|
+
"@multiplatform.one/config": "7.10.0",
|
|
100
|
+
"@multiplatform.one/test-utils": "7.10.0",
|
|
101
|
+
"@multiplatform.one/storybook": "7.10.0"
|
|
101
102
|
},
|
|
102
103
|
"peerDependencies": {
|
|
103
104
|
"@react-native-community/datetimepicker": ">=8.0.1",
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @vitest-environment jsdom
|
|
3
|
+
*
|
|
4
|
+
* MPO-125: the `fontWeight` knob must reach the Button LABEL. A literal
|
|
5
|
+
* `fontWeight="400"` sat after the `knobProps.body` spread and pinned the
|
|
6
|
+
* label at 400 in both schemes, while Input and Select moved to 700 off the
|
|
7
|
+
* same knob. `docs/design/knob-laws.md` § Family rules already says
|
|
8
|
+
* `button | ... | fonts honour`, so the render was the thing that was wrong.
|
|
9
|
+
*
|
|
10
|
+
* The weight is read off the TEXT NODE, not the frame — the frame reported
|
|
11
|
+
* 400 either way, which is how the defect survived. jsdom cannot cascade
|
|
12
|
+
* Tamagui CSS, so the rendered value is the atomic class the text node emits
|
|
13
|
+
* (`_fow-700`); it exists only when the prop survived the merge, which is the
|
|
14
|
+
* thing under test. Same measurement Button.labelInk.spec.tsx uses.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
18
|
+
import { Preset } from "@multiplatform.one/theme";
|
|
19
|
+
import { cleanup, screen } from "@testing-library/react";
|
|
20
|
+
import { Theme } from "tamagui";
|
|
21
|
+
import { afterEach, describe, expect, it } from "vitest";
|
|
22
|
+
import { Button } from "./index";
|
|
23
|
+
|
|
24
|
+
afterEach(cleanup);
|
|
25
|
+
|
|
26
|
+
const SCHEMES = ["light", "dark"] as const;
|
|
27
|
+
|
|
28
|
+
function inkWeight(el: HTMLElement): string {
|
|
29
|
+
const inline = el.style.fontWeight;
|
|
30
|
+
if (inline) return String(inline);
|
|
31
|
+
for (const cls of String(el.className ?? "").split(/\s+/)) {
|
|
32
|
+
const match = cls.match(/^_fow-(\d+)$/);
|
|
33
|
+
if (match) return match[1];
|
|
34
|
+
}
|
|
35
|
+
return "";
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function labelNode(
|
|
39
|
+
fontWeight: "regular" | "bold",
|
|
40
|
+
scheme: (typeof SCHEMES)[number],
|
|
41
|
+
label: string,
|
|
42
|
+
): HTMLElement {
|
|
43
|
+
renderWithProviders(
|
|
44
|
+
<Theme name={scheme}>
|
|
45
|
+
<Preset overrides={{ fontWeight }}>
|
|
46
|
+
<Button>{label}</Button>
|
|
47
|
+
</Preset>
|
|
48
|
+
</Theme>,
|
|
49
|
+
);
|
|
50
|
+
const node = screen.getByText(label) as HTMLElement;
|
|
51
|
+
expect(node.tagName).not.toBe("BUTTON");
|
|
52
|
+
return node;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
describe("Button MPO-125 fontWeight knob", () => {
|
|
56
|
+
it.each(SCHEMES)("%s: bold takes the label to 700", (scheme) => {
|
|
57
|
+
const node = labelNode("bold", scheme, `bold-${scheme}`);
|
|
58
|
+
expect(inkWeight(node)).toBe("700");
|
|
59
|
+
expect(node.className).not.toMatch(/_fow-400\b/);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
it.each(SCHEMES)("%s: regular keeps the label at 400", (scheme) => {
|
|
63
|
+
const node = labelNode("regular", scheme, `regular-${scheme}`);
|
|
64
|
+
expect(inkWeight(node)).toBe("400");
|
|
65
|
+
expect(node.className).not.toMatch(/_fow-700\b/);
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
it.each(SCHEMES)("%s: the size variant never leaks 500/600 at either stop", (scheme) => {
|
|
69
|
+
for (const stop of ["regular", "bold"] as const) {
|
|
70
|
+
const node = labelNode(stop, scheme, `leak-${stop}-${scheme}`);
|
|
71
|
+
expect(node.className).not.toMatch(/_fow-500\b/);
|
|
72
|
+
expect(node.className).not.toMatch(/_fow-600\b/);
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
});
|
package/src/Button/index.tsx
CHANGED
|
@@ -545,9 +545,11 @@ export function Button({
|
|
|
545
545
|
// LC-40: on the washed disabled chrome the label leaves the on-fill
|
|
546
546
|
// foreground and pins to the lowest AA tier (keepLabel keeps >=4.5:1).
|
|
547
547
|
{...(isDisabled ? disabledState.textKnobProps : undefined)}
|
|
548
|
-
// Boards measure ink.weight on the TEXT NODE, never the frame.
|
|
549
|
-
//
|
|
550
|
-
|
|
548
|
+
// Boards measure ink.weight on the TEXT NODE, never the frame. The
|
|
549
|
+
// prop is restated after the spreads because SizableText's size
|
|
550
|
+
// variant otherwise leaks 500/600 over it (MPO-125: a literal 400
|
|
551
|
+
// here pinned the label and swallowed the fontWeight knob).
|
|
552
|
+
fontWeight={knobProps.body.fontWeight}
|
|
551
553
|
transition={knobProps.transition}
|
|
552
554
|
>
|
|
553
555
|
{label}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
|
|
2
|
-
import {
|
|
2
|
+
import { YStack } from "tamagui";
|
|
3
3
|
import { FieldGroup } from "./FieldGroup";
|
|
4
4
|
import { FormSection, FormSectionStack } from "./FormSection";
|
|
5
|
-
import {
|
|
5
|
+
import { Input } from "./fields/Input";
|
|
6
6
|
|
|
7
7
|
const meta: Meta<typeof FieldGroup> = {
|
|
8
8
|
title: "Forms/FieldGroup",
|
|
@@ -18,11 +18,7 @@ export default meta;
|
|
|
18
18
|
type Story = StoryObj<typeof FieldGroup>;
|
|
19
19
|
|
|
20
20
|
function Field({ id, label }: { id: string; label: string }) {
|
|
21
|
-
return
|
|
22
|
-
<FieldLayout id={id} label={label}>
|
|
23
|
-
<TamaguiInput id={id} placeholder={label} />
|
|
24
|
-
</FieldLayout>
|
|
25
|
-
);
|
|
21
|
+
return <Input id={id} label={label} placeholder={label} />;
|
|
26
22
|
}
|
|
27
23
|
|
|
28
24
|
export const Basic: Story = {
|
|
@@ -3,13 +3,35 @@ import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
|
|
|
3
3
|
import { useForm } from "@tanstack/react-form";
|
|
4
4
|
import { useState } from "react";
|
|
5
5
|
import { Preset } from "@multiplatform.one/theme";
|
|
6
|
-
import {
|
|
6
|
+
import { Paragraph, YStack, XStack } from "tamagui";
|
|
7
7
|
import { Button } from "./Button";
|
|
8
8
|
import { Form } from "./Form";
|
|
9
9
|
import { Field, FieldLayout } from "./fieldLayout";
|
|
10
10
|
import { Input } from "./fields/Input";
|
|
11
|
+
import { Input as InputParts } from "./InputParts";
|
|
11
12
|
import { Checkbox } from "./fields/Checkbox";
|
|
12
13
|
|
|
14
|
+
/**
|
|
15
|
+
* FieldLayout wraps a CONTROL, so these stories cannot mount the house `Input`
|
|
16
|
+
* field — it brings its own FieldLayout. `InputParts.Box` is the house chrome
|
|
17
|
+
* underneath that field, and it is the part that consumes the knobs.
|
|
18
|
+
*/
|
|
19
|
+
function Control(props: {
|
|
20
|
+
id?: string;
|
|
21
|
+
placeholder?: string;
|
|
22
|
+
value?: string;
|
|
23
|
+
onChangeText?: (text: string) => void;
|
|
24
|
+
secureTextEntry?: boolean;
|
|
25
|
+
}) {
|
|
26
|
+
return (
|
|
27
|
+
<InputParts>
|
|
28
|
+
<InputParts.Box>
|
|
29
|
+
<InputParts.Area {...props} />
|
|
30
|
+
</InputParts.Box>
|
|
31
|
+
</InputParts>
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
|
|
13
35
|
const meta: Meta<typeof FieldLayout> = {
|
|
14
36
|
title: "Forms/FieldLayout",
|
|
15
37
|
component: FieldLayout,
|
|
@@ -37,7 +59,7 @@ export const Basic: Story = {
|
|
|
37
59
|
render: (args) => (
|
|
38
60
|
<YStack maxWidth={360}>
|
|
39
61
|
<FieldLayout {...args}>
|
|
40
|
-
<
|
|
62
|
+
<Control id={args.id} placeholder="you@example.com" />
|
|
41
63
|
</FieldLayout>
|
|
42
64
|
</YStack>
|
|
43
65
|
),
|
|
@@ -90,7 +112,7 @@ export const ErrorStates: Story = {
|
|
|
90
112
|
// DG-COPY-02: error copy states the rule broken — never "invalid"/"please"/"error".
|
|
91
113
|
error="Value must use letters only"
|
|
92
114
|
>
|
|
93
|
-
<
|
|
115
|
+
<Control id="fl-err-string" />
|
|
94
116
|
</FieldLayout>
|
|
95
117
|
<FieldLayout
|
|
96
118
|
id="fl-err-bool"
|
|
@@ -98,7 +120,7 @@ export const ErrorStates: Story = {
|
|
|
98
120
|
helperText="Helper should remain visible"
|
|
99
121
|
error={true}
|
|
100
122
|
>
|
|
101
|
-
<
|
|
123
|
+
<Control id="fl-err-bool" />
|
|
102
124
|
</FieldLayout>
|
|
103
125
|
<FieldLayout
|
|
104
126
|
id="fl-err-empty"
|
|
@@ -106,7 +128,7 @@ export const ErrorStates: Story = {
|
|
|
106
128
|
helperText="Empty string should act as no message"
|
|
107
129
|
error=""
|
|
108
130
|
>
|
|
109
|
-
<
|
|
131
|
+
<Control id="fl-err-empty" />
|
|
110
132
|
</FieldLayout>
|
|
111
133
|
</YStack>
|
|
112
134
|
),
|
|
@@ -116,13 +138,13 @@ export const AnatomyEdgeCases: Story = {
|
|
|
116
138
|
render: () => (
|
|
117
139
|
<YStack gap="$6" maxWidth={360}>
|
|
118
140
|
<FieldLayout id="fl-required" label="Required field" required>
|
|
119
|
-
<
|
|
141
|
+
<Control id="fl-required" />
|
|
120
142
|
</FieldLayout>
|
|
121
143
|
<FieldLayout id="fl-nolabel" helperText="No label means compact $1 gap">
|
|
122
|
-
<
|
|
144
|
+
<Control id="fl-nolabel" />
|
|
123
145
|
</FieldLayout>
|
|
124
146
|
<FieldLayout id="fl-compact" label="Compact spacing" compactSpacing helperText="Compact gap">
|
|
125
|
-
<
|
|
147
|
+
<Control id="fl-compact" />
|
|
126
148
|
</FieldLayout>
|
|
127
149
|
<FieldLayout
|
|
128
150
|
id="fl-node-label"
|
|
@@ -133,14 +155,14 @@ export const AnatomyEdgeCases: Story = {
|
|
|
133
155
|
</XStack>
|
|
134
156
|
}
|
|
135
157
|
>
|
|
136
|
-
<
|
|
158
|
+
<Control id="fl-node-label" />
|
|
137
159
|
</FieldLayout>
|
|
138
160
|
<FieldLayout
|
|
139
161
|
id="fl-long"
|
|
140
162
|
label="Long messages"
|
|
141
163
|
error="This validation message is extremely long and keeps going to make sure long validation copy wraps correctly under the control without pushing the layout sideways or clipping any of its content at narrow widths"
|
|
142
164
|
>
|
|
143
|
-
<
|
|
165
|
+
<Control id="fl-long" />
|
|
144
166
|
</FieldLayout>
|
|
145
167
|
</YStack>
|
|
146
168
|
),
|
|
@@ -166,7 +188,7 @@ export const FieldWrapper: Story = {
|
|
|
166
188
|
helperText="TanStack Field wrapper"
|
|
167
189
|
field={field as any}
|
|
168
190
|
>
|
|
169
|
-
<
|
|
191
|
+
<Control
|
|
170
192
|
id="field-username"
|
|
171
193
|
value={String(field.state.value ?? "")}
|
|
172
194
|
onChangeText={(text) => field.handleChange(text)}
|
|
@@ -208,7 +230,7 @@ export const FieldRequiredValidator: Story = {
|
|
|
208
230
|
>
|
|
209
231
|
{(field) => (
|
|
210
232
|
<FieldLayout id="field-nickname" label="Nickname" required field={field as any}>
|
|
211
|
-
<
|
|
233
|
+
<Control
|
|
212
234
|
id="field-nickname"
|
|
213
235
|
value={String(field.state.value ?? "")}
|
|
214
236
|
onChangeText={(text) => field.handleChange(text)}
|
package/src/Fieldset.stories.tsx
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
|
|
2
|
-
import {
|
|
3
|
-
import { FieldLayout } from "./fieldLayout";
|
|
2
|
+
import { YStack } from "tamagui";
|
|
4
3
|
import { Fieldset, FormSectionStack } from "./FormSection";
|
|
4
|
+
import { Input } from "./fields/Input";
|
|
5
5
|
|
|
6
6
|
function Field({ id, label, ...rest }: { id: string; label: string; secureTextEntry?: boolean }) {
|
|
7
|
-
return
|
|
8
|
-
<FieldLayout id={id} label={label}>
|
|
9
|
-
<TamaguiInput id={id} placeholder={label} {...rest} />
|
|
10
|
-
</FieldLayout>
|
|
11
|
-
);
|
|
7
|
+
return <Input id={id} label={label} placeholder={label} {...rest} />;
|
|
12
8
|
}
|
|
13
9
|
|
|
14
10
|
const meta: Meta<typeof Fieldset> = {
|
package/src/FormGrid.stories.tsx
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from "@storybook/react-native-web-vite";
|
|
2
|
-
import {
|
|
2
|
+
import { Paragraph, YStack } from "tamagui";
|
|
3
3
|
import { FieldGroup } from "./FieldGroup";
|
|
4
4
|
import { FormGrid } from "./FormGrid";
|
|
5
5
|
import { FormSection, FormSectionStack } from "./FormSection";
|
|
6
|
-
import {
|
|
6
|
+
import { Input } from "./fields/Input";
|
|
7
7
|
|
|
8
8
|
const meta: Meta<typeof FormGrid> = {
|
|
9
9
|
title: "Forms/FormGrid",
|
|
@@ -24,11 +24,7 @@ export default meta;
|
|
|
24
24
|
type Story = StoryObj<typeof FormGrid>;
|
|
25
25
|
|
|
26
26
|
function GridField({ id, label }: { id: string; label: string }) {
|
|
27
|
-
return
|
|
28
|
-
<FieldLayout id={id} label={label}>
|
|
29
|
-
<TamaguiInput id={id} placeholder={label} />
|
|
30
|
-
</FieldLayout>
|
|
31
|
-
);
|
|
27
|
+
return <Input id={id} label={label} placeholder={label} />;
|
|
32
28
|
}
|
|
33
29
|
|
|
34
30
|
export const Basic: Story = {
|
|
@@ -99,13 +95,11 @@ export const LongErrors: Story = {
|
|
|
99
95
|
render: () => (
|
|
100
96
|
<YStack maxWidth={640}>
|
|
101
97
|
<FormGrid columns={2}>
|
|
102
|
-
<
|
|
98
|
+
<Input
|
|
103
99
|
id="fge-a"
|
|
104
100
|
label="With long error"
|
|
105
101
|
error="This validation message is extremely long and should wrap inside its own grid cell without breaking the neighbouring column alignment or overflowing the grid container"
|
|
106
|
-
|
|
107
|
-
<TamaguiInput id="fge-a" />
|
|
108
|
-
</FieldLayout>
|
|
102
|
+
/>
|
|
109
103
|
<GridField id="fge-b" label="Neighbour" />
|
|
110
104
|
</FormGrid>
|
|
111
105
|
</YStack>
|
|
@@ -40,6 +40,22 @@ describe("Input.Button", () => {
|
|
|
40
40
|
expect(btn.contains(ring)).toBe(true);
|
|
41
41
|
});
|
|
42
42
|
|
|
43
|
+
it("a bare string child is a LABEL, not an icon type to createElement", () => {
|
|
44
|
+
const result = renderWithProviders(
|
|
45
|
+
<Input size="$4">
|
|
46
|
+
<Input.Box size="$4">
|
|
47
|
+
<Input.Button size="$4" aria-label="cap">
|
|
48
|
+
Scan
|
|
49
|
+
</Input.Button>
|
|
50
|
+
</Input.Box>
|
|
51
|
+
</Input>,
|
|
52
|
+
);
|
|
53
|
+
const btn = result.container.querySelector("[aria-label='cap']") as HTMLElement;
|
|
54
|
+
expect(btn).not.toBeNull();
|
|
55
|
+
expect(btn.textContent).toContain("Scan");
|
|
56
|
+
expect(result.container.querySelector("scan")).toBeNull();
|
|
57
|
+
});
|
|
58
|
+
|
|
43
59
|
it("end-cap square is generated from the size recipe at every token", () => {
|
|
44
60
|
for (const token of SIZE_RECIPE_TOKENS) {
|
|
45
61
|
if (token === "$true") continue;
|
package/src/InputParts/index.tsx
CHANGED
|
@@ -1035,6 +1035,23 @@ const InputButtonImpl = InputButton.styleable<{ glyphRing?: boolean }>((buttonPr
|
|
|
1035
1035
|
size: knobProps.controlIcon.width,
|
|
1036
1036
|
color: paint as never,
|
|
1037
1037
|
});
|
|
1038
|
+
// A string/number child is a LABEL, not an icon. `getThemedIcon` treats an
|
|
1039
|
+
// un-elemented child as a component TYPE and `createElement`s it, so "Scan"
|
|
1040
|
+
// becomes an invented `<scan>` element that paints nothing (MPO-208); a bare
|
|
1041
|
+
// string under the glyphRing View is the same category error on native.
|
|
1042
|
+
const textChild =
|
|
1043
|
+
typeof children === "string" || typeof children === "number" ? (
|
|
1044
|
+
<Text
|
|
1045
|
+
{...knobProps.controlType}
|
|
1046
|
+
fontFamily={knobProps.body.fontFamily}
|
|
1047
|
+
fontWeight={knobProps.body.fontWeight}
|
|
1048
|
+
color={paint as never}
|
|
1049
|
+
numberOfLines={1}
|
|
1050
|
+
userSelect="none"
|
|
1051
|
+
>
|
|
1052
|
+
{children}
|
|
1053
|
+
</Text>
|
|
1054
|
+
) : null;
|
|
1038
1055
|
const decorativeRef = useCallback(
|
|
1039
1056
|
(node: TamaguiElement | null) => {
|
|
1040
1057
|
// Tamagui 2.7.6 Button stamps tabIndex=0 after consumer props.
|
|
@@ -1078,7 +1095,7 @@ const InputButtonImpl = InputButton.styleable<{ glyphRing?: boolean }>((buttonPr
|
|
|
1078
1095
|
alignItems="center"
|
|
1079
1096
|
justifyContent="center"
|
|
1080
1097
|
>
|
|
1081
|
-
{children}
|
|
1098
|
+
{textChild ?? children}
|
|
1082
1099
|
</View>
|
|
1083
1100
|
</InputGlyphButton>
|
|
1084
1101
|
);
|
|
@@ -1101,7 +1118,7 @@ const InputButtonImpl = InputButton.styleable<{ glyphRing?: boolean }>((buttonPr
|
|
|
1101
1118
|
data-end-cap={square}
|
|
1102
1119
|
{...props}
|
|
1103
1120
|
>
|
|
1104
|
-
{getThemedIcon(children)}
|
|
1121
|
+
{textChild ?? getThemedIcon(children)}
|
|
1105
1122
|
</InputButton>
|
|
1106
1123
|
);
|
|
1107
1124
|
});
|