@multiplatform.one/forms 7.4.1 → 7.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/AdaptivePopup/index.cjs +139 -20
- package/dist/cjs/AdaptivePopup/index.native.js +139 -21
- package/dist/cjs/AdaptivePopup/index.native.js.map +1 -1
- package/dist/cjs/Button/index.cjs +20 -15
- package/dist/cjs/Button/index.native.js +26 -15
- package/dist/cjs/Button/index.native.js.map +1 -1
- package/dist/cjs/Chip/index.cjs +7 -3
- package/dist/cjs/Chip/index.native.js +7 -3
- package/dist/cjs/Chip/index.native.js.map +1 -1
- package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.cjs +142 -0
- package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js +150 -0
- package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -0
- package/dist/cjs/ContextualSaveBar/clientKnownIdentity.cjs +37 -0
- package/dist/cjs/ContextualSaveBar/clientKnownIdentity.native.js +40 -0
- package/dist/cjs/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -0
- package/dist/cjs/ContextualSaveBar/commitImmediateField.cjs +50 -0
- package/dist/cjs/ContextualSaveBar/commitImmediateField.native.js +55 -0
- package/dist/cjs/ContextualSaveBar/commitImmediateField.native.js.map +1 -0
- package/dist/cjs/ContextualSaveBar/index.cjs +301 -0
- package/dist/cjs/ContextualSaveBar/index.native.js +325 -0
- package/dist/cjs/ContextualSaveBar/index.native.js.map +1 -0
- package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.cjs +49 -0
- package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.native.js +55 -0
- package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -0
- package/dist/cjs/ControlGroup/index.cjs +10 -9
- package/dist/cjs/ControlGroup/index.native.js +10 -10
- package/dist/cjs/ControlGroup/index.native.js.map +1 -1
- package/dist/cjs/DescriptionList/index.cjs +416 -0
- package/dist/cjs/DescriptionList/index.native.js +441 -0
- package/dist/cjs/DescriptionList/index.native.js.map +1 -0
- package/dist/cjs/FieldDisplay/index.cjs +104 -43
- package/dist/cjs/FieldDisplay/index.native.js +115 -45
- package/dist/cjs/FieldDisplay/index.native.js.map +1 -1
- package/dist/cjs/FieldGroup.cjs +13 -3
- package/dist/cjs/FieldGroup.native.js +13 -3
- package/dist/cjs/FieldGroup.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/index.cjs +40 -9
- package/dist/cjs/FloatingPanel/index.native.js +229 -46
- package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/useFloatingPanel.cjs +26 -9
- package/dist/cjs/FloatingPanel/useFloatingPanel.native.js +26 -9
- package/dist/cjs/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/cjs/Form/index.cjs +51 -28
- package/dist/cjs/Form/index.native.js +56 -28
- package/dist/cjs/Form/index.native.js.map +1 -1
- package/dist/cjs/FormGrid.cjs +11 -4
- package/dist/cjs/FormGrid.native.js +11 -4
- package/dist/cjs/FormGrid.native.js.map +1 -1
- package/dist/cjs/FormSection.cjs +10 -3
- package/dist/cjs/FormSection.native.js +10 -3
- package/dist/cjs/FormSection.native.js.map +1 -1
- package/dist/cjs/InputParts/index.cjs +139 -58
- package/dist/cjs/InputParts/index.native.js +146 -64
- package/dist/cjs/InputParts/index.native.js.map +1 -1
- package/dist/cjs/Label/index.cjs +1 -0
- package/dist/cjs/Label/index.native.js +1 -0
- package/dist/cjs/Label/index.native.js.map +1 -1
- package/dist/cjs/Spinner/index.cjs +1 -0
- package/dist/cjs/Spinner/index.native.js +14 -1
- package/dist/cjs/Spinner/index.native.js.map +1 -1
- package/dist/cjs/Wheel/WheelEdgeFade.cjs +30 -0
- package/dist/cjs/Wheel/WheelEdgeFade.native.js +116 -0
- package/dist/cjs/Wheel/WheelEdgeFade.native.js.map +1 -0
- package/dist/cjs/Wheel/haptic.cjs +35 -0
- package/dist/cjs/Wheel/haptic.native.js +39 -0
- package/dist/cjs/Wheel/haptic.native.js.map +1 -0
- package/dist/cjs/Wheel/index.cjs +293 -109
- package/dist/cjs/Wheel/index.native.js +311 -112
- package/dist/cjs/Wheel/index.native.js.map +1 -1
- package/dist/cjs/fieldDefaults.cjs +4 -0
- package/dist/cjs/fieldDefaults.native.js +6 -0
- package/dist/cjs/fieldDefaults.native.js.map +1 -1
- package/dist/cjs/fieldLayout.cjs +11 -7
- package/dist/cjs/fieldLayout.native.js +11 -7
- package/dist/cjs/fieldLayout.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/BarcodePreview.cjs +86 -18
- package/dist/cjs/fields/Barcode/BarcodePreview.native.js +92 -18
- package/dist/cjs/fields/Barcode/BarcodePreview.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/index.cjs +8 -2
- package/dist/cjs/fields/Barcode/index.native.js +8 -2
- package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
- package/dist/cjs/fields/Barcode/qr.cjs +406 -0
- package/dist/cjs/fields/Barcode/qr.native.js +637 -0
- package/dist/cjs/fields/Barcode/qr.native.js.map +1 -0
- package/dist/cjs/fields/Barcode/scannerTypes.cjs +6 -1
- package/dist/cjs/fields/Barcode/scannerTypes.native.js +6 -1
- package/dist/cjs/fields/Barcode/scannerTypes.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/Checkbox.cjs +12 -6
- package/dist/cjs/fields/Checkbox/Checkbox.native.js +14 -6
- package/dist/cjs/fields/Checkbox/Checkbox.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxBox.cjs +18 -1
- package/dist/cjs/fields/Checkbox/CheckboxBox.native.js +21 -1
- package/dist/cjs/fields/Checkbox/CheckboxBox.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxCard.cjs +0 -1
- package/dist/cjs/fields/Checkbox/CheckboxCard.native.js +0 -1
- package/dist/cjs/fields/Checkbox/CheckboxCard.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.cjs +1 -0
- package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.native.js +1 -0
- package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/CheckboxGroup.cjs +6 -3
- package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +7 -4
- package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
- package/dist/cjs/fields/Checkbox/index.cjs +11 -3
- package/dist/cjs/fields/Checkbox/index.native.js +11 -3
- package/dist/cjs/fields/Checkbox/index.native.js.map +1 -1
- package/dist/cjs/fields/ColorPicker/index.cjs +13 -10
- package/dist/cjs/fields/ColorPicker/index.native.js +15 -11
- package/dist/cjs/fields/ColorPicker/index.native.js.map +1 -1
- package/dist/cjs/fields/ColorPicker/parts.cjs +10 -6
- package/dist/cjs/fields/ColorPicker/parts.native.js +10 -6
- package/dist/cjs/fields/ColorPicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/Combobox/index.cjs +72 -64
- package/dist/cjs/fields/Combobox/index.native.js +85 -84
- package/dist/cjs/fields/Combobox/index.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/Calendar.cjs +12 -4
- package/dist/cjs/fields/DatePicker/Calendar.native.js +12 -4
- package/dist/cjs/fields/DatePicker/Calendar.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DateRangePicker.cjs +19 -5
- package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +21 -5
- package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.cjs +22 -136
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +24 -150
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/MonthPicker.cjs +2 -0
- package/dist/cjs/fields/DatePicker/MonthPicker.native.js +4 -0
- package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/MultiDatePicker.cjs +26 -9
- package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +28 -9
- package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/index.cjs +2 -0
- package/dist/cjs/fields/DatePicker/index.native.js +4 -0
- package/dist/cjs/fields/DatePicker/index.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/parts.cjs +65 -38
- package/dist/cjs/fields/DatePicker/parts.native.js +72 -38
- package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/Duration/durationMath.cjs +93 -0
- package/dist/cjs/fields/Duration/durationMath.native.js +115 -0
- package/dist/cjs/fields/Duration/durationMath.native.js.map +1 -0
- package/dist/cjs/fields/Duration/index.cjs +80 -111
- package/dist/cjs/fields/Duration/index.native.js +87 -118
- package/dist/cjs/fields/Duration/index.native.js.map +1 -1
- package/dist/cjs/fields/FileUpload/filePickerTypes.cjs +18 -0
- package/dist/cjs/fields/FileUpload/filePickerTypes.native.js +21 -0
- package/dist/cjs/fields/FileUpload/filePickerTypes.native.js.map +1 -0
- package/dist/cjs/fields/FileUpload/index.cjs +356 -156
- package/dist/cjs/fields/FileUpload/index.native.js +454 -166
- package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
- package/dist/cjs/fields/FileUpload/nativeFilePicker.cjs +37 -0
- package/dist/cjs/fields/FileUpload/nativeFilePicker.native.js +174 -0
- package/dist/cjs/fields/FileUpload/nativeFilePicker.native.js.map +1 -0
- package/dist/cjs/fields/FileUpload/nativePickerLoader.cjs +62 -0
- package/dist/cjs/fields/FileUpload/nativePickerLoader.native.js +65 -0
- package/dist/cjs/fields/FileUpload/nativePickerLoader.native.js.map +1 -0
- package/dist/cjs/fields/Icon/drawnSet.cjs +388 -0
- package/dist/cjs/fields/Icon/drawnSet.native.js +398 -0
- package/dist/cjs/fields/Icon/drawnSet.native.js.map +1 -0
- package/dist/cjs/fields/Icon/index.cjs +381 -0
- package/dist/cjs/fields/Icon/index.native.js +399 -0
- package/dist/cjs/fields/Icon/index.native.js.map +1 -0
- package/dist/cjs/fields/ImageField/index.cjs +18 -25
- package/dist/cjs/fields/ImageField/index.native.js +18 -26
- package/dist/cjs/fields/ImageField/index.native.js.map +1 -1
- package/dist/cjs/fields/Input/index.cjs +175 -91
- package/dist/cjs/fields/Input/index.native.js +88 -5
- package/dist/cjs/fields/Input/index.native.js.map +1 -1
- package/dist/cjs/fields/MentionInput/index.cjs +133 -58
- package/dist/cjs/fields/MentionInput/index.native.js +158 -81
- package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
- package/dist/cjs/fields/OTPInput/index.cjs +15 -4
- package/dist/cjs/fields/OTPInput/index.native.js +15 -4
- package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
- package/dist/cjs/fields/PhoneInput/index.cjs +4 -2
- package/dist/cjs/fields/PhoneInput/index.native.js +5 -2
- package/dist/cjs/fields/PhoneInput/index.native.js.map +1 -1
- package/dist/cjs/fields/Progress/index.cjs +29 -19
- package/dist/cjs/fields/Progress/index.native.js +31 -19
- package/dist/cjs/fields/Progress/index.native.js.map +1 -1
- package/dist/cjs/fields/RadioGroup/index.cjs +15 -14
- package/dist/cjs/fields/RadioGroup/index.native.js +15 -14
- package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/Rating/index.cjs +31 -23
- package/dist/cjs/fields/Rating/index.native.js +33 -25
- package/dist/cjs/fields/Rating/index.native.js.map +1 -1
- package/dist/cjs/fields/Rating/ratingMath.cjs +36 -0
- package/dist/cjs/fields/Rating/ratingMath.native.js +39 -0
- package/dist/cjs/fields/Rating/ratingMath.native.js.map +1 -0
- package/dist/cjs/fields/SearchInput/index.cjs +216 -151
- package/dist/cjs/fields/SearchInput/index.native.js +225 -155
- package/dist/cjs/fields/SearchInput/index.native.js.map +1 -1
- package/dist/cjs/fields/Select/index.cjs +36 -19
- package/dist/cjs/fields/Select/index.native.js +38 -25
- package/dist/cjs/fields/Select/index.native.js.map +1 -1
- package/dist/cjs/fields/Signature/index.cjs +26 -18
- package/dist/cjs/fields/Signature/index.native.js +26 -18
- package/dist/cjs/fields/Signature/index.native.js.map +1 -1
- package/dist/cjs/fields/Slider/index.cjs +39 -11
- package/dist/cjs/fields/Slider/index.native.js +60 -14
- package/dist/cjs/fields/Slider/index.native.js.map +1 -1
- package/dist/cjs/fields/Stepper/index.cjs +17 -7
- package/dist/cjs/fields/Stepper/index.native.js +17 -7
- package/dist/cjs/fields/Stepper/index.native.js.map +1 -1
- package/dist/cjs/fields/Stepper/resolveStepperPlacement.cjs +32 -0
- package/dist/cjs/fields/Stepper/resolveStepperPlacement.native.js +35 -0
- package/dist/cjs/fields/Stepper/resolveStepperPlacement.native.js.map +1 -0
- package/dist/cjs/fields/Switch/index.cjs +134 -46
- package/dist/cjs/fields/Switch/index.native.js +154 -47
- package/dist/cjs/fields/Switch/index.native.js.map +1 -1
- package/dist/cjs/fields/TextArea/index.cjs +33 -35
- package/dist/cjs/fields/TextArea/index.native.js +33 -38
- package/dist/cjs/fields/TextArea/index.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/index.cjs +6 -2
- package/dist/cjs/fields/TimePicker/index.native.js +8 -2
- package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/parts.cjs +54 -495
- package/dist/cjs/fields/TimePicker/parts.native.js +59 -526
- package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/TimeRangeScrubber/geometry.cjs +288 -0
- package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js +352 -0
- package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js.map +1 -0
- package/dist/cjs/fields/TimeRangeScrubber/index.cjs +855 -0
- package/dist/cjs/fields/TimeRangeScrubber/index.native.js +936 -0
- package/dist/cjs/fields/TimeRangeScrubber/index.native.js.map +1 -0
- package/dist/cjs/fields/ToggleGroup/index.cjs +56 -46
- package/dist/cjs/fields/ToggleGroup/index.native.js +59 -51
- package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/cjs/fields/selectedOrder.cjs +36 -0
- package/dist/cjs/fields/selectedOrder.native.js +46 -0
- package/dist/cjs/fields/selectedOrder.native.js.map +1 -0
- package/dist/cjs/index.cjs +47 -11
- package/dist/cjs/index.native.js +47 -11
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/shared/TimeColumn.cjs +122 -80
- package/dist/cjs/shared/TimeColumn.native.js +146 -88
- package/dist/cjs/shared/TimeColumn.native.js.map +1 -1
- package/dist/cjs/shared/colorRamps.cjs +23 -1
- package/dist/cjs/shared/colorRamps.native.js +23 -1
- package/dist/cjs/shared/colorRamps.native.js.map +1 -1
- package/dist/cjs/shared/floatingList.cjs +17 -4
- package/dist/cjs/shared/floatingList.native.js +17 -4
- package/dist/cjs/shared/floatingList.native.js.map +1 -1
- package/dist/cjs/shared/useKeyboardInset.cjs +48 -0
- package/dist/cjs/shared/useKeyboardInset.native.js +53 -0
- package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -0
- package/dist/cjs/shared/utils.cjs +69 -73
- package/dist/cjs/shared/utils.native.js +119 -75
- package/dist/cjs/shared/utils.native.js.map +1 -1
- package/dist/cjs/themedPrimitives.cjs +4 -2
- package/dist/cjs/themedPrimitives.native.js +4 -2
- package/dist/cjs/themedPrimitives.native.js.map +1 -1
- package/dist/esm/AdaptivePopup/index.mjs +138 -20
- package/dist/esm/AdaptivePopup/index.mjs.map +1 -1
- package/dist/esm/AdaptivePopup/index.native.js +138 -21
- package/dist/esm/AdaptivePopup/index.native.js.map +1 -1
- package/dist/esm/Button/index.mjs +20 -14
- package/dist/esm/Button/index.mjs.map +1 -1
- package/dist/esm/Button/index.native.js +26 -14
- package/dist/esm/Button/index.native.js.map +1 -1
- package/dist/esm/Chip/index.mjs +7 -3
- package/dist/esm/Chip/index.mjs.map +1 -1
- package/dist/esm/Chip/index.native.js +7 -3
- package/dist/esm/Chip/index.native.js.map +1 -1
- package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.mjs +117 -0
- package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.mjs.map +1 -0
- package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js +122 -0
- package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -0
- package/dist/esm/ContextualSaveBar/clientKnownIdentity.mjs +12 -0
- package/dist/esm/ContextualSaveBar/clientKnownIdentity.mjs.map +1 -0
- package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js +12 -0
- package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -0
- package/dist/esm/ContextualSaveBar/commitImmediateField.mjs +25 -0
- package/dist/esm/ContextualSaveBar/commitImmediateField.mjs.map +1 -0
- package/dist/esm/ContextualSaveBar/commitImmediateField.native.js +27 -0
- package/dist/esm/ContextualSaveBar/commitImmediateField.native.js.map +1 -0
- package/dist/esm/ContextualSaveBar/index.mjs +274 -0
- package/dist/esm/ContextualSaveBar/index.mjs.map +1 -0
- package/dist/esm/ContextualSaveBar/index.native.js +295 -0
- package/dist/esm/ContextualSaveBar/index.native.js.map +1 -0
- package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.mjs +24 -0
- package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.mjs.map +1 -0
- package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js +27 -0
- package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -0
- package/dist/esm/ControlGroup/index.mjs +11 -10
- package/dist/esm/ControlGroup/index.mjs.map +1 -1
- package/dist/esm/ControlGroup/index.native.js +11 -11
- package/dist/esm/ControlGroup/index.native.js.map +1 -1
- package/dist/esm/DescriptionList/index.mjs +389 -0
- package/dist/esm/DescriptionList/index.mjs.map +1 -0
- package/dist/esm/DescriptionList/index.native.js +411 -0
- package/dist/esm/DescriptionList/index.native.js.map +1 -0
- package/dist/esm/FieldDisplay/index.mjs +104 -45
- package/dist/esm/FieldDisplay/index.mjs.map +1 -1
- package/dist/esm/FieldDisplay/index.native.js +115 -47
- package/dist/esm/FieldDisplay/index.native.js.map +1 -1
- package/dist/esm/FieldGroup.mjs +14 -4
- package/dist/esm/FieldGroup.mjs.map +1 -1
- package/dist/esm/FieldGroup.native.js +14 -4
- package/dist/esm/FieldGroup.native.js.map +1 -1
- package/dist/esm/FloatingPanel/index.mjs +41 -12
- package/dist/esm/FloatingPanel/index.mjs.map +1 -1
- package/dist/esm/FloatingPanel/index.native.js +231 -48
- package/dist/esm/FloatingPanel/index.native.js.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.mjs +27 -11
- package/dist/esm/FloatingPanel/useFloatingPanel.mjs.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.native.js +27 -11
- package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/esm/Form/index.mjs +50 -29
- package/dist/esm/Form/index.mjs.map +1 -1
- package/dist/esm/Form/index.native.js +55 -29
- package/dist/esm/Form/index.native.js.map +1 -1
- package/dist/esm/FormGrid.mjs +11 -4
- package/dist/esm/FormGrid.mjs.map +1 -1
- package/dist/esm/FormGrid.native.js +11 -4
- package/dist/esm/FormGrid.native.js.map +1 -1
- package/dist/esm/FormSection.mjs +10 -3
- package/dist/esm/FormSection.mjs.map +1 -1
- package/dist/esm/FormSection.native.js +10 -3
- package/dist/esm/FormSection.native.js.map +1 -1
- package/dist/esm/InputParts/index.mjs +137 -60
- package/dist/esm/InputParts/index.mjs.map +1 -1
- package/dist/esm/InputParts/index.native.js +144 -66
- package/dist/esm/InputParts/index.native.js.map +1 -1
- package/dist/esm/Label/index.mjs +1 -0
- package/dist/esm/Label/index.mjs.map +1 -1
- package/dist/esm/Label/index.native.js +1 -0
- package/dist/esm/Label/index.native.js.map +1 -1
- package/dist/esm/Spinner/index.mjs +1 -0
- package/dist/esm/Spinner/index.mjs.map +1 -1
- package/dist/esm/Spinner/index.native.js +16 -3
- package/dist/esm/Spinner/index.native.js.map +1 -1
- package/dist/esm/Wheel/WheelEdgeFade.mjs +5 -0
- package/dist/esm/Wheel/WheelEdgeFade.mjs.map +1 -0
- package/dist/esm/Wheel/WheelEdgeFade.native.js +88 -0
- package/dist/esm/Wheel/WheelEdgeFade.native.js.map +1 -0
- package/dist/esm/Wheel/haptic.mjs +10 -0
- package/dist/esm/Wheel/haptic.mjs.map +1 -0
- package/dist/esm/Wheel/haptic.native.js +11 -0
- package/dist/esm/Wheel/haptic.native.js.map +1 -0
- package/dist/esm/Wheel/index.mjs +294 -110
- package/dist/esm/Wheel/index.mjs.map +1 -1
- package/dist/esm/Wheel/index.native.js +312 -113
- package/dist/esm/Wheel/index.native.js.map +1 -1
- package/dist/esm/fieldDefaults.mjs +3 -1
- package/dist/esm/fieldDefaults.mjs.map +1 -1
- package/dist/esm/fieldDefaults.native.js +5 -1
- package/dist/esm/fieldDefaults.native.js.map +1 -1
- package/dist/esm/fieldLayout.mjs +12 -8
- package/dist/esm/fieldLayout.mjs.map +1 -1
- package/dist/esm/fieldLayout.native.js +12 -8
- package/dist/esm/fieldLayout.native.js.map +1 -1
- package/dist/esm/fields/Barcode/BarcodePreview.mjs +86 -19
- package/dist/esm/fields/Barcode/BarcodePreview.mjs.map +1 -1
- package/dist/esm/fields/Barcode/BarcodePreview.native.js +92 -19
- package/dist/esm/fields/Barcode/BarcodePreview.native.js.map +1 -1
- package/dist/esm/fields/Barcode/index.mjs +8 -2
- package/dist/esm/fields/Barcode/index.mjs.map +1 -1
- package/dist/esm/fields/Barcode/index.native.js +8 -2
- package/dist/esm/fields/Barcode/index.native.js.map +1 -1
- package/dist/esm/fields/Barcode/qr.mjs +379 -0
- package/dist/esm/fields/Barcode/qr.mjs.map +1 -0
- package/dist/esm/fields/Barcode/qr.native.js +607 -0
- package/dist/esm/fields/Barcode/qr.native.js.map +1 -0
- package/dist/esm/fields/Barcode/scannerTypes.mjs +6 -2
- package/dist/esm/fields/Barcode/scannerTypes.mjs.map +1 -1
- package/dist/esm/fields/Barcode/scannerTypes.native.js +6 -2
- package/dist/esm/fields/Barcode/scannerTypes.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/Checkbox.mjs +14 -8
- package/dist/esm/fields/Checkbox/Checkbox.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/Checkbox.native.js +16 -8
- package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxBox.mjs +15 -1
- package/dist/esm/fields/Checkbox/CheckboxBox.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxBox.native.js +18 -1
- package/dist/esm/fields/Checkbox/CheckboxBox.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxCard.mjs +0 -1
- package/dist/esm/fields/Checkbox/CheckboxCard.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxCard.native.js +0 -1
- package/dist/esm/fields/Checkbox/CheckboxCard.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxFieldFrame.mjs +1 -0
- package/dist/esm/fields/Checkbox/CheckboxFieldFrame.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js +1 -0
- package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxGroup.mjs +8 -5
- package/dist/esm/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/CheckboxGroup.native.js +9 -6
- package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
- package/dist/esm/fields/Checkbox/index.mjs +8 -4
- package/dist/esm/fields/Checkbox/index.mjs.map +1 -1
- package/dist/esm/fields/Checkbox/index.native.js +8 -4
- package/dist/esm/fields/Checkbox/index.native.js.map +1 -1
- package/dist/esm/fields/ColorPicker/index.mjs +13 -10
- package/dist/esm/fields/ColorPicker/index.mjs.map +1 -1
- package/dist/esm/fields/ColorPicker/index.native.js +15 -11
- package/dist/esm/fields/ColorPicker/index.native.js.map +1 -1
- package/dist/esm/fields/ColorPicker/parts.mjs +8 -7
- package/dist/esm/fields/ColorPicker/parts.mjs.map +1 -1
- package/dist/esm/fields/ColorPicker/parts.native.js +8 -7
- package/dist/esm/fields/ColorPicker/parts.native.js.map +1 -1
- package/dist/esm/fields/Combobox/index.mjs +74 -66
- package/dist/esm/fields/Combobox/index.mjs.map +1 -1
- package/dist/esm/fields/Combobox/index.native.js +87 -86
- package/dist/esm/fields/Combobox/index.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/Calendar.mjs +12 -4
- package/dist/esm/fields/DatePicker/Calendar.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/Calendar.native.js +12 -4
- package/dist/esm/fields/DatePicker/Calendar.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DateRangePicker.mjs +20 -6
- package/dist/esm/fields/DatePicker/DateRangePicker.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/DateRangePicker.native.js +22 -6
- package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.mjs +25 -139
- package/dist/esm/fields/DatePicker/DatetimePicker.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.native.js +27 -153
- package/dist/esm/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MonthPicker.mjs +2 -0
- package/dist/esm/fields/DatePicker/MonthPicker.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/MonthPicker.native.js +4 -0
- package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/MultiDatePicker.mjs +27 -10
- package/dist/esm/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/MultiDatePicker.native.js +29 -10
- package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/index.mjs +2 -0
- package/dist/esm/fields/DatePicker/index.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/index.native.js +4 -0
- package/dist/esm/fields/DatePicker/index.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/parts.mjs +52 -26
- package/dist/esm/fields/DatePicker/parts.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/parts.native.js +59 -26
- package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/esm/fields/Duration/durationMath.mjs +64 -0
- package/dist/esm/fields/Duration/durationMath.mjs.map +1 -0
- package/dist/esm/fields/Duration/durationMath.native.js +83 -0
- package/dist/esm/fields/Duration/durationMath.native.js.map +1 -0
- package/dist/esm/fields/Duration/index.mjs +70 -102
- package/dist/esm/fields/Duration/index.mjs.map +1 -1
- package/dist/esm/fields/Duration/index.native.js +77 -109
- package/dist/esm/fields/Duration/index.native.js.map +1 -1
- package/dist/esm/fields/FileUpload/filePickerTypes.mjs +2 -0
- package/dist/esm/fields/FileUpload/filePickerTypes.mjs.map +1 -0
- package/dist/esm/fields/FileUpload/filePickerTypes.native.js +2 -0
- package/dist/esm/fields/FileUpload/filePickerTypes.native.js.map +1 -0
- package/dist/esm/fields/FileUpload/index.mjs +359 -159
- package/dist/esm/fields/FileUpload/index.mjs.map +1 -1
- package/dist/esm/fields/FileUpload/index.native.js +457 -169
- package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
- package/dist/esm/fields/FileUpload/nativeFilePicker.mjs +11 -0
- package/dist/esm/fields/FileUpload/nativeFilePicker.mjs.map +1 -0
- package/dist/esm/fields/FileUpload/nativeFilePicker.native.js +143 -0
- package/dist/esm/fields/FileUpload/nativeFilePicker.native.js.map +1 -0
- package/dist/esm/fields/FileUpload/nativePickerLoader.mjs +35 -0
- package/dist/esm/fields/FileUpload/nativePickerLoader.mjs.map +1 -0
- package/dist/esm/fields/FileUpload/nativePickerLoader.native.js +35 -0
- package/dist/esm/fields/FileUpload/nativePickerLoader.native.js.map +1 -0
- package/dist/esm/fields/Icon/drawnSet.mjs +358 -0
- package/dist/esm/fields/Icon/drawnSet.mjs.map +1 -0
- package/dist/esm/fields/Icon/drawnSet.native.js +365 -0
- package/dist/esm/fields/Icon/drawnSet.native.js.map +1 -0
- package/dist/esm/fields/Icon/index.mjs +350 -0
- package/dist/esm/fields/Icon/index.mjs.map +1 -0
- package/dist/esm/fields/Icon/index.native.js +365 -0
- package/dist/esm/fields/Icon/index.native.js.map +1 -0
- package/dist/esm/fields/ImageField/index.mjs +20 -27
- package/dist/esm/fields/ImageField/index.mjs.map +1 -1
- package/dist/esm/fields/ImageField/index.native.js +20 -28
- package/dist/esm/fields/ImageField/index.native.js.map +1 -1
- package/dist/esm/fields/Input/index.mjs +177 -94
- package/dist/esm/fields/Input/index.mjs.map +1 -1
- package/dist/esm/fields/Input/index.native.js +90 -8
- package/dist/esm/fields/Input/index.native.js.map +1 -1
- package/dist/esm/fields/MentionInput/index.mjs +133 -59
- package/dist/esm/fields/MentionInput/index.mjs.map +1 -1
- package/dist/esm/fields/MentionInput/index.native.js +158 -82
- package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
- package/dist/esm/fields/OTPInput/index.mjs +16 -6
- package/dist/esm/fields/OTPInput/index.mjs.map +1 -1
- package/dist/esm/fields/OTPInput/index.native.js +16 -6
- package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
- package/dist/esm/fields/PhoneInput/index.mjs +5 -3
- package/dist/esm/fields/PhoneInput/index.mjs.map +1 -1
- package/dist/esm/fields/PhoneInput/index.native.js +6 -3
- package/dist/esm/fields/PhoneInput/index.native.js.map +1 -1
- package/dist/esm/fields/Progress/index.mjs +29 -19
- package/dist/esm/fields/Progress/index.mjs.map +1 -1
- package/dist/esm/fields/Progress/index.native.js +31 -19
- package/dist/esm/fields/Progress/index.native.js.map +1 -1
- package/dist/esm/fields/RadioGroup/index.mjs +16 -15
- package/dist/esm/fields/RadioGroup/index.mjs.map +1 -1
- package/dist/esm/fields/RadioGroup/index.native.js +16 -15
- package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/esm/fields/Rating/index.mjs +29 -22
- package/dist/esm/fields/Rating/index.mjs.map +1 -1
- package/dist/esm/fields/Rating/index.native.js +31 -24
- package/dist/esm/fields/Rating/index.native.js.map +1 -1
- package/dist/esm/fields/Rating/ratingMath.mjs +11 -0
- package/dist/esm/fields/Rating/ratingMath.mjs.map +1 -0
- package/dist/esm/fields/Rating/ratingMath.native.js +11 -0
- package/dist/esm/fields/Rating/ratingMath.native.js.map +1 -0
- package/dist/esm/fields/SearchInput/index.mjs +220 -155
- package/dist/esm/fields/SearchInput/index.mjs.map +1 -1
- package/dist/esm/fields/SearchInput/index.native.js +229 -159
- package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
- package/dist/esm/fields/Select/index.mjs +39 -22
- package/dist/esm/fields/Select/index.mjs.map +1 -1
- package/dist/esm/fields/Select/index.native.js +41 -28
- package/dist/esm/fields/Select/index.native.js.map +1 -1
- package/dist/esm/fields/Signature/index.mjs +26 -18
- package/dist/esm/fields/Signature/index.mjs.map +1 -1
- package/dist/esm/fields/Signature/index.native.js +26 -18
- package/dist/esm/fields/Signature/index.native.js.map +1 -1
- package/dist/esm/fields/Slider/index.mjs +40 -12
- package/dist/esm/fields/Slider/index.mjs.map +1 -1
- package/dist/esm/fields/Slider/index.native.js +61 -15
- package/dist/esm/fields/Slider/index.native.js.map +1 -1
- package/dist/esm/fields/Stepper/index.mjs +17 -8
- package/dist/esm/fields/Stepper/index.mjs.map +1 -1
- package/dist/esm/fields/Stepper/index.native.js +17 -8
- package/dist/esm/fields/Stepper/index.native.js.map +1 -1
- package/dist/esm/fields/Stepper/resolveStepperPlacement.mjs +7 -0
- package/dist/esm/fields/Stepper/resolveStepperPlacement.mjs.map +1 -0
- package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js +7 -0
- package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js.map +1 -0
- package/dist/esm/fields/Switch/index.mjs +135 -47
- package/dist/esm/fields/Switch/index.mjs.map +1 -1
- package/dist/esm/fields/Switch/index.native.js +155 -48
- package/dist/esm/fields/Switch/index.native.js.map +1 -1
- package/dist/esm/fields/TextArea/index.mjs +34 -36
- package/dist/esm/fields/TextArea/index.mjs.map +1 -1
- package/dist/esm/fields/TextArea/index.native.js +34 -39
- package/dist/esm/fields/TextArea/index.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/index.mjs +7 -3
- package/dist/esm/fields/TimePicker/index.mjs.map +1 -1
- package/dist/esm/fields/TimePicker/index.native.js +9 -3
- package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/parts.mjs +58 -499
- package/dist/esm/fields/TimePicker/parts.mjs.map +1 -1
- package/dist/esm/fields/TimePicker/parts.native.js +63 -530
- package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/esm/fields/TimeRangeScrubber/geometry.mjs +229 -0
- package/dist/esm/fields/TimeRangeScrubber/geometry.mjs.map +1 -0
- package/dist/esm/fields/TimeRangeScrubber/geometry.native.js +290 -0
- package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -0
- package/dist/esm/fields/TimeRangeScrubber/index.mjs +822 -0
- package/dist/esm/fields/TimeRangeScrubber/index.mjs.map +1 -0
- package/dist/esm/fields/TimeRangeScrubber/index.native.js +900 -0
- package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -0
- package/dist/esm/fields/ToggleGroup/index.mjs +58 -48
- package/dist/esm/fields/ToggleGroup/index.mjs.map +1 -1
- package/dist/esm/fields/ToggleGroup/index.native.js +61 -53
- package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/esm/fields/selectedOrder.mjs +11 -0
- package/dist/esm/fields/selectedOrder.mjs.map +1 -0
- package/dist/esm/fields/selectedOrder.native.js +18 -0
- package/dist/esm/fields/selectedOrder.native.js.map +1 -0
- package/dist/esm/index.mjs +15 -8
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +15 -8
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/shared/TimeColumn.mjs +123 -80
- package/dist/esm/shared/TimeColumn.mjs.map +1 -1
- package/dist/esm/shared/TimeColumn.native.js +147 -88
- package/dist/esm/shared/TimeColumn.native.js.map +1 -1
- package/dist/esm/shared/colorRamps.mjs +23 -2
- package/dist/esm/shared/colorRamps.mjs.map +1 -1
- package/dist/esm/shared/colorRamps.native.js +23 -2
- package/dist/esm/shared/colorRamps.native.js.map +1 -1
- package/dist/esm/shared/floatingList.mjs +18 -5
- package/dist/esm/shared/floatingList.mjs.map +1 -1
- package/dist/esm/shared/floatingList.native.js +18 -5
- package/dist/esm/shared/floatingList.native.js.map +1 -1
- package/dist/esm/shared/useKeyboardInset.mjs +23 -0
- package/dist/esm/shared/useKeyboardInset.mjs.map +1 -0
- package/dist/esm/shared/useKeyboardInset.native.js +25 -0
- package/dist/esm/shared/useKeyboardInset.native.js.map +1 -0
- package/dist/esm/shared/utils.mjs +70 -74
- package/dist/esm/shared/utils.mjs.map +1 -1
- package/dist/esm/shared/utils.native.js +120 -76
- package/dist/esm/shared/utils.native.js.map +1 -1
- package/dist/esm/themedPrimitives.mjs +5 -3
- package/dist/esm/themedPrimitives.mjs.map +1 -1
- package/dist/esm/themedPrimitives.native.js +5 -3
- package/dist/esm/themedPrimitives.native.js.map +1 -1
- package/dist/jsx/AdaptivePopup/index.mjs +138 -20
- package/dist/jsx/AdaptivePopup/index.mjs.map +1 -1
- package/dist/jsx/AdaptivePopup/index.native.js +140 -22
- package/dist/jsx/AdaptivePopup/index.native.js.map +1 -1
- package/dist/jsx/Button/index.mjs +20 -14
- package/dist/jsx/Button/index.mjs.map +1 -1
- package/dist/jsx/Button/index.native.js +27 -16
- package/dist/jsx/Button/index.native.js.map +1 -1
- package/dist/jsx/Chip/index.mjs +7 -3
- package/dist/jsx/Chip/index.mjs.map +1 -1
- package/dist/jsx/Chip/index.native.js +7 -3
- package/dist/jsx/Chip/index.native.js.map +1 -1
- package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.mjs +117 -0
- package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.mjs.map +1 -0
- package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.native.js +150 -0
- package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -0
- package/dist/jsx/ContextualSaveBar/clientKnownIdentity.mjs +12 -0
- package/dist/jsx/ContextualSaveBar/clientKnownIdentity.mjs.map +1 -0
- package/dist/jsx/ContextualSaveBar/clientKnownIdentity.native.js +40 -0
- package/dist/jsx/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -0
- package/dist/jsx/ContextualSaveBar/commitImmediateField.mjs +25 -0
- package/dist/jsx/ContextualSaveBar/commitImmediateField.mjs.map +1 -0
- package/dist/jsx/ContextualSaveBar/commitImmediateField.native.js +55 -0
- package/dist/jsx/ContextualSaveBar/commitImmediateField.native.js.map +1 -0
- package/dist/jsx/ContextualSaveBar/index.mjs +274 -0
- package/dist/jsx/ContextualSaveBar/index.mjs.map +1 -0
- package/dist/jsx/ContextualSaveBar/index.native.js +325 -0
- package/dist/jsx/ContextualSaveBar/index.native.js.map +1 -0
- package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.mjs +24 -0
- package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.mjs.map +1 -0
- package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.native.js +55 -0
- package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -0
- package/dist/jsx/ControlGroup/index.mjs +11 -10
- package/dist/jsx/ControlGroup/index.mjs.map +1 -1
- package/dist/jsx/ControlGroup/index.native.js +11 -11
- package/dist/jsx/ControlGroup/index.native.js.map +1 -1
- package/dist/jsx/DescriptionList/index.mjs +389 -0
- package/dist/jsx/DescriptionList/index.mjs.map +1 -0
- package/dist/jsx/DescriptionList/index.native.js +441 -0
- package/dist/jsx/DescriptionList/index.native.js.map +1 -0
- package/dist/jsx/ErrorSummary.native.js.map +1 -1
- package/dist/jsx/FieldDisplay/editMode.native.js.map +1 -1
- package/dist/jsx/FieldDisplay/formatters.native.js.map +1 -1
- package/dist/jsx/FieldDisplay/index.mjs +104 -45
- package/dist/jsx/FieldDisplay/index.mjs.map +1 -1
- package/dist/jsx/FieldDisplay/index.native.js +116 -46
- package/dist/jsx/FieldDisplay/index.native.js.map +1 -1
- package/dist/jsx/FieldGroup.mjs +14 -4
- package/dist/jsx/FieldGroup.mjs.map +1 -1
- package/dist/jsx/FieldGroup.native.js +13 -3
- package/dist/jsx/FieldGroup.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/index.mjs +41 -12
- package/dist/jsx/FloatingPanel/index.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/index.native.js +229 -46
- package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/useFloatingPanel.mjs +27 -11
- package/dist/jsx/FloatingPanel/useFloatingPanel.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/useFloatingPanel.native.js +26 -9
- package/dist/jsx/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/jsx/Form/index.mjs +50 -29
- package/dist/jsx/Form/index.mjs.map +1 -1
- package/dist/jsx/Form/index.native.js +56 -28
- package/dist/jsx/Form/index.native.js.map +1 -1
- package/dist/jsx/Form/validateOn.native.js.map +1 -1
- package/dist/jsx/FormGrid.mjs +11 -4
- package/dist/jsx/FormGrid.mjs.map +1 -1
- package/dist/jsx/FormGrid.native.js +11 -4
- package/dist/jsx/FormGrid.native.js.map +1 -1
- package/dist/jsx/FormSection.mjs +10 -3
- package/dist/jsx/FormSection.mjs.map +1 -1
- package/dist/jsx/FormSection.native.js +10 -3
- package/dist/jsx/FormSection.native.js.map +1 -1
- package/dist/jsx/InputParts/index.mjs +137 -60
- package/dist/jsx/InputParts/index.mjs.map +1 -1
- package/dist/jsx/InputParts/index.native.js +146 -64
- package/dist/jsx/InputParts/index.native.js.map +1 -1
- package/dist/jsx/Label/index.mjs +1 -0
- package/dist/jsx/Label/index.mjs.map +1 -1
- package/dist/jsx/Label/index.native.js +1 -0
- package/dist/jsx/Label/index.native.js.map +1 -1
- package/dist/jsx/Skeleton/index.native.js.map +1 -1
- package/dist/jsx/Spinner/SpinnerGlyph.native.js.map +1 -1
- package/dist/jsx/Spinner/index.mjs +1 -0
- package/dist/jsx/Spinner/index.mjs.map +1 -1
- package/dist/jsx/Spinner/index.native.js +14 -1
- package/dist/jsx/Spinner/index.native.js.map +1 -1
- package/dist/jsx/Spinner/spinnerSize.native.js.map +1 -1
- package/dist/jsx/Table/index.native.js.map +1 -1
- package/dist/jsx/Wheel/WheelEdgeFade.mjs +5 -0
- package/dist/jsx/Wheel/WheelEdgeFade.mjs.map +1 -0
- package/dist/jsx/Wheel/WheelEdgeFade.native.js +116 -0
- package/dist/jsx/Wheel/WheelEdgeFade.native.js.map +1 -0
- package/dist/jsx/Wheel/haptic.mjs +10 -0
- package/dist/jsx/Wheel/haptic.mjs.map +1 -0
- package/dist/jsx/Wheel/haptic.native.js +39 -0
- package/dist/jsx/Wheel/haptic.native.js.map +1 -0
- package/dist/jsx/Wheel/index.mjs +294 -110
- package/dist/jsx/Wheel/index.mjs.map +1 -1
- package/dist/jsx/Wheel/index.native.js +311 -112
- package/dist/jsx/Wheel/index.native.js.map +1 -1
- package/dist/jsx/actionLabel.native.js.map +1 -1
- package/dist/jsx/fieldDefaults.mjs +3 -1
- package/dist/jsx/fieldDefaults.mjs.map +1 -1
- package/dist/jsx/fieldDefaults.native.js +6 -0
- package/dist/jsx/fieldDefaults.native.js.map +1 -1
- package/dist/jsx/fieldLayout.mjs +12 -8
- package/dist/jsx/fieldLayout.mjs.map +1 -1
- package/dist/jsx/fieldLayout.native.js +11 -7
- package/dist/jsx/fieldLayout.native.js.map +1 -1
- package/dist/jsx/fields/Barcode/BarcodePreview.mjs +86 -19
- package/dist/jsx/fields/Barcode/BarcodePreview.mjs.map +1 -1
- package/dist/jsx/fields/Barcode/BarcodePreview.native.js +92 -18
- package/dist/jsx/fields/Barcode/BarcodePreview.native.js.map +1 -1
- package/dist/jsx/fields/Barcode/BarcodeScanner.native.js +1 -1
- package/dist/jsx/fields/Barcode/code128.native.js.map +1 -1
- package/dist/jsx/fields/Barcode/index.mjs +8 -2
- package/dist/jsx/fields/Barcode/index.mjs.map +1 -1
- package/dist/jsx/fields/Barcode/index.native.js +10 -4
- package/dist/jsx/fields/Barcode/index.native.js.map +1 -1
- package/dist/jsx/fields/Barcode/qr.mjs +379 -0
- package/dist/jsx/fields/Barcode/qr.mjs.map +1 -0
- package/dist/jsx/fields/Barcode/qr.native.js +637 -0
- package/dist/jsx/fields/Barcode/qr.native.js.map +1 -0
- package/dist/jsx/fields/Barcode/scannerTypes.mjs +6 -2
- package/dist/jsx/fields/Barcode/scannerTypes.mjs.map +1 -1
- package/dist/jsx/fields/Barcode/scannerTypes.native.js +6 -1
- package/dist/jsx/fields/Barcode/scannerTypes.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/Checkbox.mjs +14 -8
- package/dist/jsx/fields/Checkbox/Checkbox.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/Checkbox.native.js +15 -7
- package/dist/jsx/fields/Checkbox/Checkbox.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxBox.mjs +15 -1
- package/dist/jsx/fields/Checkbox/CheckboxBox.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxBox.native.js +21 -1
- package/dist/jsx/fields/Checkbox/CheckboxBox.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxCard.mjs +0 -1
- package/dist/jsx/fields/Checkbox/CheckboxCard.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxCard.native.js +0 -1
- package/dist/jsx/fields/Checkbox/CheckboxCard.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.mjs +1 -0
- package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.native.js +1 -0
- package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs +8 -5
- package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js +8 -5
- package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
- package/dist/jsx/fields/Checkbox/index.mjs +8 -4
- package/dist/jsx/fields/Checkbox/index.mjs.map +1 -1
- package/dist/jsx/fields/Checkbox/index.native.js +11 -3
- package/dist/jsx/fields/Checkbox/index.native.js.map +1 -1
- package/dist/jsx/fields/ColorPicker/index.mjs +13 -10
- package/dist/jsx/fields/ColorPicker/index.mjs.map +1 -1
- package/dist/jsx/fields/ColorPicker/index.native.js +18 -14
- package/dist/jsx/fields/ColorPicker/index.native.js.map +1 -1
- package/dist/jsx/fields/ColorPicker/parts.mjs +8 -7
- package/dist/jsx/fields/ColorPicker/parts.mjs.map +1 -1
- package/dist/jsx/fields/ColorPicker/parts.native.js +12 -8
- package/dist/jsx/fields/ColorPicker/parts.native.js.map +1 -1
- package/dist/jsx/fields/Combobox/authorOptions.native.js.map +1 -1
- package/dist/jsx/fields/Combobox/index.mjs +74 -66
- package/dist/jsx/fields/Combobox/index.mjs.map +1 -1
- package/dist/jsx/fields/Combobox/index.native.js +90 -89
- package/dist/jsx/fields/Combobox/index.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/Calendar.mjs +12 -4
- package/dist/jsx/fields/DatePicker/Calendar.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/Calendar.native.js +12 -4
- package/dist/jsx/fields/DatePicker/Calendar.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DateRangePicker.mjs +20 -6
- package/dist/jsx/fields/DatePicker/DateRangePicker.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/DateRangePicker.native.js +23 -7
- package/dist/jsx/fields/DatePicker/DateRangePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.mjs +25 -139
- package/dist/jsx/fields/DatePicker/DatetimePicker.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.native.js +27 -153
- package/dist/jsx/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/MonthPicker.mjs +2 -0
- package/dist/jsx/fields/DatePicker/MonthPicker.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/MonthPicker.native.js +6 -2
- package/dist/jsx/fields/DatePicker/MonthPicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs +27 -10
- package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js +30 -11
- package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/fieldValueSync.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/index.mjs +2 -0
- package/dist/jsx/fields/DatePicker/index.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/index.native.js +6 -2
- package/dist/jsx/fields/DatePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/parts.mjs +52 -26
- package/dist/jsx/fields/DatePicker/parts.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/parts.native.js +74 -40
- package/dist/jsx/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/utils.native.js.map +1 -1
- package/dist/jsx/fields/Duration/durationMath.mjs +64 -0
- package/dist/jsx/fields/Duration/durationMath.mjs.map +1 -0
- package/dist/jsx/fields/Duration/durationMath.native.js +115 -0
- package/dist/jsx/fields/Duration/durationMath.native.js.map +1 -0
- package/dist/jsx/fields/Duration/index.mjs +70 -102
- package/dist/jsx/fields/Duration/index.mjs.map +1 -1
- package/dist/jsx/fields/Duration/index.native.js +90 -121
- package/dist/jsx/fields/Duration/index.native.js.map +1 -1
- package/dist/jsx/fields/FileUpload/filePickerTypes.mjs +2 -0
- package/dist/jsx/fields/FileUpload/filePickerTypes.mjs.map +1 -0
- package/dist/jsx/fields/FileUpload/filePickerTypes.native.js +21 -0
- package/dist/jsx/fields/FileUpload/filePickerTypes.native.js.map +1 -0
- package/dist/jsx/fields/FileUpload/index.mjs +359 -159
- package/dist/jsx/fields/FileUpload/index.mjs.map +1 -1
- package/dist/jsx/fields/FileUpload/index.native.js +456 -168
- package/dist/jsx/fields/FileUpload/index.native.js.map +1 -1
- package/dist/jsx/fields/FileUpload/nativeFilePicker.mjs +11 -0
- package/dist/jsx/fields/FileUpload/nativeFilePicker.mjs.map +1 -0
- package/dist/jsx/fields/FileUpload/nativeFilePicker.native.js +174 -0
- package/dist/jsx/fields/FileUpload/nativeFilePicker.native.js.map +1 -0
- package/dist/jsx/fields/FileUpload/nativePickerLoader.mjs +35 -0
- package/dist/jsx/fields/FileUpload/nativePickerLoader.mjs.map +1 -0
- package/dist/jsx/fields/FileUpload/nativePickerLoader.native.js +65 -0
- package/dist/jsx/fields/FileUpload/nativePickerLoader.native.js.map +1 -0
- package/dist/jsx/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
- package/dist/jsx/fields/Geolocation/index.native.js +5 -5
- package/dist/jsx/fields/Geolocation/index.native.js.map +1 -1
- package/dist/jsx/fields/Geolocation/mapMath.native.js.map +1 -1
- package/dist/jsx/fields/Geolocation/mapTypes.native.js.map +1 -1
- package/dist/jsx/fields/Icon/drawnSet.mjs +358 -0
- package/dist/jsx/fields/Icon/drawnSet.mjs.map +1 -0
- package/dist/jsx/fields/Icon/drawnSet.native.js +398 -0
- package/dist/jsx/fields/Icon/drawnSet.native.js.map +1 -0
- package/dist/jsx/fields/Icon/index.mjs +350 -0
- package/dist/jsx/fields/Icon/index.mjs.map +1 -0
- package/dist/jsx/fields/Icon/index.native.js +399 -0
- package/dist/jsx/fields/Icon/index.native.js.map +1 -0
- package/dist/jsx/fields/ImageField/index.mjs +20 -27
- package/dist/jsx/fields/ImageField/index.mjs.map +1 -1
- package/dist/jsx/fields/ImageField/index.native.js +20 -28
- package/dist/jsx/fields/ImageField/index.native.js.map +1 -1
- package/dist/jsx/fields/Input/index.mjs +177 -94
- package/dist/jsx/fields/Input/index.mjs.map +1 -1
- package/dist/jsx/fields/Input/index.native.js +90 -7
- package/dist/jsx/fields/Input/index.native.js.map +1 -1
- package/dist/jsx/fields/MentionInput/index.mjs +133 -59
- package/dist/jsx/fields/MentionInput/index.mjs.map +1 -1
- package/dist/jsx/fields/MentionInput/index.native.js +161 -84
- package/dist/jsx/fields/MentionInput/index.native.js.map +1 -1
- package/dist/jsx/fields/OTPInput/index.mjs +16 -6
- package/dist/jsx/fields/OTPInput/index.mjs.map +1 -1
- package/dist/jsx/fields/OTPInput/index.native.js +18 -7
- package/dist/jsx/fields/OTPInput/index.native.js.map +1 -1
- package/dist/jsx/fields/OTPInput/otpCellCss.native.js.map +1 -1
- package/dist/jsx/fields/PhoneInput/dialCodes.native.js.map +1 -1
- package/dist/jsx/fields/PhoneInput/index.mjs +5 -3
- package/dist/jsx/fields/PhoneInput/index.mjs.map +1 -1
- package/dist/jsx/fields/PhoneInput/index.native.js +8 -5
- package/dist/jsx/fields/PhoneInput/index.native.js.map +1 -1
- package/dist/jsx/fields/PhoneInput/phone.native.js.map +1 -1
- package/dist/jsx/fields/Progress/index.mjs +29 -19
- package/dist/jsx/fields/Progress/index.mjs.map +1 -1
- package/dist/jsx/fields/Progress/index.native.js +32 -20
- package/dist/jsx/fields/Progress/index.native.js.map +1 -1
- package/dist/jsx/fields/RadioGroup/index.mjs +16 -15
- package/dist/jsx/fields/RadioGroup/index.mjs.map +1 -1
- package/dist/jsx/fields/RadioGroup/index.native.js +16 -15
- package/dist/jsx/fields/RadioGroup/index.native.js.map +1 -1
- package/dist/jsx/fields/Rating/index.mjs +29 -22
- package/dist/jsx/fields/Rating/index.mjs.map +1 -1
- package/dist/jsx/fields/Rating/index.native.js +34 -26
- package/dist/jsx/fields/Rating/index.native.js.map +1 -1
- package/dist/jsx/fields/Rating/ratingMath.mjs +11 -0
- package/dist/jsx/fields/Rating/ratingMath.mjs.map +1 -0
- package/dist/jsx/fields/Rating/ratingMath.native.js +39 -0
- package/dist/jsx/fields/Rating/ratingMath.native.js.map +1 -0
- package/dist/jsx/fields/Rating/types.native.js.map +1 -1
- package/dist/jsx/fields/SearchInput/index.mjs +220 -155
- package/dist/jsx/fields/SearchInput/index.mjs.map +1 -1
- package/dist/jsx/fields/SearchInput/index.native.js +226 -156
- package/dist/jsx/fields/SearchInput/index.native.js.map +1 -1
- package/dist/jsx/fields/Select/index.mjs +39 -22
- package/dist/jsx/fields/Select/index.mjs.map +1 -1
- package/dist/jsx/fields/Select/index.native.js +42 -29
- package/dist/jsx/fields/Select/index.native.js.map +1 -1
- package/dist/jsx/fields/Signature/index.mjs +26 -18
- package/dist/jsx/fields/Signature/index.mjs.map +1 -1
- package/dist/jsx/fields/Signature/index.native.js +28 -20
- package/dist/jsx/fields/Signature/index.native.js.map +1 -1
- package/dist/jsx/fields/Slider/index.mjs +40 -12
- package/dist/jsx/fields/Slider/index.mjs.map +1 -1
- package/dist/jsx/fields/Slider/index.native.js +61 -15
- package/dist/jsx/fields/Slider/index.native.js.map +1 -1
- package/dist/jsx/fields/Slider/jumpMotion.native.js.map +1 -1
- package/dist/jsx/fields/Stepper/index.mjs +17 -8
- package/dist/jsx/fields/Stepper/index.mjs.map +1 -1
- package/dist/jsx/fields/Stepper/index.native.js +19 -9
- package/dist/jsx/fields/Stepper/index.native.js.map +1 -1
- package/dist/jsx/fields/Stepper/resolveStepperPlacement.mjs +7 -0
- package/dist/jsx/fields/Stepper/resolveStepperPlacement.mjs.map +1 -0
- package/dist/jsx/fields/Stepper/resolveStepperPlacement.native.js +35 -0
- package/dist/jsx/fields/Stepper/resolveStepperPlacement.native.js.map +1 -0
- package/dist/jsx/fields/Switch/index.mjs +135 -47
- package/dist/jsx/fields/Switch/index.mjs.map +1 -1
- package/dist/jsx/fields/Switch/index.native.js +155 -48
- package/dist/jsx/fields/Switch/index.native.js.map +1 -1
- package/dist/jsx/fields/TextArea/index.mjs +34 -36
- package/dist/jsx/fields/TextArea/index.mjs.map +1 -1
- package/dist/jsx/fields/TextArea/index.native.js +35 -40
- package/dist/jsx/fields/TextArea/index.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/index.mjs +7 -3
- package/dist/jsx/fields/TimePicker/index.mjs.map +1 -1
- package/dist/jsx/fields/TimePicker/index.native.js +11 -5
- package/dist/jsx/fields/TimePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/parts.mjs +58 -499
- package/dist/jsx/fields/TimePicker/parts.mjs.map +1 -1
- package/dist/jsx/fields/TimePicker/parts.native.js +60 -527
- package/dist/jsx/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/jsx/fields/TimeRangeScrubber/geometry.mjs +229 -0
- package/dist/jsx/fields/TimeRangeScrubber/geometry.mjs.map +1 -0
- package/dist/jsx/fields/TimeRangeScrubber/geometry.native.js +352 -0
- package/dist/jsx/fields/TimeRangeScrubber/geometry.native.js.map +1 -0
- package/dist/jsx/fields/TimeRangeScrubber/index.mjs +822 -0
- package/dist/jsx/fields/TimeRangeScrubber/index.mjs.map +1 -0
- package/dist/jsx/fields/TimeRangeScrubber/index.native.js +936 -0
- package/dist/jsx/fields/TimeRangeScrubber/index.native.js.map +1 -0
- package/dist/jsx/fields/ToggleGroup/index.mjs +58 -48
- package/dist/jsx/fields/ToggleGroup/index.mjs.map +1 -1
- package/dist/jsx/fields/ToggleGroup/index.native.js +60 -52
- package/dist/jsx/fields/ToggleGroup/index.native.js.map +1 -1
- package/dist/jsx/fields/selectedOrder.mjs +11 -0
- package/dist/jsx/fields/selectedOrder.mjs.map +1 -0
- package/dist/jsx/fields/selectedOrder.native.js +46 -0
- package/dist/jsx/fields/selectedOrder.native.js.map +1 -0
- package/dist/jsx/formSpacing.native.js.map +1 -1
- package/dist/jsx/hooks/useFocusManagement.native.js.map +1 -1
- package/dist/jsx/index.js +15 -8
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +15 -8
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +84 -48
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/requiredMarking.native.js.map +1 -1
- package/dist/jsx/shared/TimeColumn.mjs +123 -80
- package/dist/jsx/shared/TimeColumn.mjs.map +1 -1
- package/dist/jsx/shared/TimeColumn.native.js +146 -88
- package/dist/jsx/shared/TimeColumn.native.js.map +1 -1
- package/dist/jsx/shared/capabilityPreflight.native.js.map +1 -1
- package/dist/jsx/shared/colorRamps.mjs +23 -2
- package/dist/jsx/shared/colorRamps.mjs.map +1 -1
- package/dist/jsx/shared/colorRamps.native.js +23 -1
- package/dist/jsx/shared/colorRamps.native.js.map +1 -1
- package/dist/jsx/shared/devWarn.native.js.map +1 -1
- package/dist/jsx/shared/floatingList.mjs +18 -5
- package/dist/jsx/shared/floatingList.mjs.map +1 -1
- package/dist/jsx/shared/floatingList.native.js +18 -5
- package/dist/jsx/shared/floatingList.native.js.map +1 -1
- package/dist/jsx/shared/focusManagement.native.js.map +1 -1
- package/dist/jsx/shared/groupContext.native.js.map +1 -1
- package/dist/jsx/shared/i18n.native.js.map +1 -1
- package/dist/jsx/shared/t.native.js.map +1 -1
- package/dist/jsx/shared/tableCellContext.native.js.map +1 -1
- package/dist/jsx/shared/useDragScroll.native.js.map +1 -1
- package/dist/jsx/shared/useKeyboardInset.mjs +23 -0
- package/dist/jsx/shared/useKeyboardInset.mjs.map +1 -0
- package/dist/jsx/shared/useKeyboardInset.native.js +53 -0
- package/dist/jsx/shared/useKeyboardInset.native.js.map +1 -0
- package/dist/jsx/shared/useSheetEscapeDismiss.native.js.map +1 -1
- package/dist/jsx/shared/useWheelIncrement.native.js.map +1 -1
- package/dist/jsx/shared/utils.mjs +70 -74
- package/dist/jsx/shared/utils.mjs.map +1 -1
- package/dist/jsx/shared/utils.native.js +120 -76
- package/dist/jsx/shared/utils.native.js.map +1 -1
- package/dist/jsx/shared/zIndex.native.js.map +1 -1
- package/dist/jsx/themedPrimitives.mjs +5 -3
- package/dist/jsx/themedPrimitives.mjs.map +1 -1
- package/dist/jsx/themedPrimitives.native.js +4 -2
- package/dist/jsx/themedPrimitives.native.js.map +1 -1
- package/dist/jsx/types.native.js.map +1 -1
- package/dist/jsx/utils/LinkCell.native.js.map +1 -1
- package/package.json +21 -7
- package/src/AdaptivePopup/AdaptivePopup.spec.tsx +213 -2
- package/src/AdaptivePopup/AdaptivePopup.stories.tsx +42 -1
- package/src/AdaptivePopup/index.tsx +162 -24
- package/src/Button/Button.density.spec.tsx +164 -0
- package/src/Button/Button.filledBorder.spec.tsx +74 -0
- package/src/Button/Button.labelInk.spec.tsx +196 -0
- package/src/Button/Button.lc71.spec.tsx +10 -3
- package/src/Button/Button.stories.tsx +40 -21
- package/src/Button/index.tsx +52 -20
- package/src/Chip/index.tsx +7 -3
- package/src/ContextualSaveBar/ContextualSaveBar.spec.tsx +269 -0
- package/src/ContextualSaveBar/ContextualSaveBar.stories.tsx +72 -0
- package/src/ContextualSaveBar/UnsavedChangesDialog.tsx +118 -0
- package/src/ContextualSaveBar/clientKnownIdentity.ts +15 -0
- package/src/ContextualSaveBar/commitImmediateField.ts +31 -0
- package/src/ContextualSaveBar/index.tsx +327 -0
- package/src/ContextualSaveBar/useUnsavedChangesGuard.ts +38 -0
- package/src/ControlGroup/ControlGroup.spec.tsx +86 -0
- package/src/ControlGroup/index.tsx +16 -8
- package/src/DescriptionList/DescriptionList.spec.tsx +254 -0
- package/src/DescriptionList/DescriptionList.stories.tsx +244 -0
- package/src/DescriptionList/index.tsx +503 -0
- package/src/FieldDisplay/FieldDisplay.spec.tsx +17 -0
- package/src/FieldDisplay/index.tsx +155 -41
- package/src/FieldGroup.spec.tsx +63 -0
- package/src/FieldGroup.tsx +17 -4
- package/src/Fieldset.spec.tsx +39 -0
- package/src/FloatingPanel/index.native.tsx +253 -46
- package/src/FloatingPanel/index.tsx +93 -12
- package/src/FloatingPanel/panelWidthContract.spec.ts +58 -0
- package/src/FloatingPanel/useFloatingPanel.spec.tsx +127 -18
- package/src/FloatingPanel/useFloatingPanel.ts +62 -18
- package/src/Form/Form.stories.tsx +19 -0
- package/src/Form/form.spec.tsx +4 -2
- package/src/Form/index.tsx +66 -28
- package/src/FormGrid.spec.tsx +13 -1
- package/src/FormGrid.tsx +11 -4
- package/src/FormSection.tsx +14 -4
- package/src/FormsIntegration.stories.tsx +329 -344
- package/src/InputParts/InputButton.spec.tsx +60 -0
- package/src/InputParts/index.spec.tsx +41 -1
- package/src/InputParts/index.tsx +221 -61
- package/src/Label/Label.spec.tsx +8 -0
- package/src/Label/index.tsx +1 -0
- package/src/Spinner/Spinner.spec.tsx +14 -0
- package/src/Spinner/index.native.tsx +16 -3
- package/src/Spinner/index.tsx +1 -0
- package/src/Wheel/Wheel.spec.tsx +292 -0
- package/src/Wheel/WheelEdgeFade.native.tsx +67 -0
- package/src/Wheel/WheelEdgeFade.tsx +7 -0
- package/src/Wheel/haptic.ts +15 -0
- package/src/Wheel/index.tsx +389 -146
- package/src/fieldDefaults.spec.ts +7 -0
- package/src/fieldDefaults.ts +13 -0
- package/src/fieldLayout.spec.tsx +39 -0
- package/src/fieldLayout.tsx +17 -7
- package/src/fields/Barcode/Barcode.spec.tsx +30 -0
- package/src/fields/Barcode/Barcode.stories.tsx +18 -0
- package/src/fields/Barcode/BarcodePreview.spec.tsx +210 -1
- package/src/fields/Barcode/BarcodePreview.tsx +147 -21
- package/src/fields/Barcode/index.tsx +9 -1
- package/src/fields/Barcode/qr.spec.ts +332 -0
- package/src/fields/Barcode/qr.ts +590 -0
- package/src/fields/Barcode/scannerTypes.ts +12 -1
- package/src/fields/Checkbox/Checkbox.spec.tsx +101 -2
- package/src/fields/Checkbox/Checkbox.stories.tsx +23 -0
- package/src/fields/Checkbox/Checkbox.tsx +25 -6
- package/src/fields/Checkbox/CheckboxBox.tsx +33 -0
- package/src/fields/Checkbox/CheckboxCard.tsx +0 -1
- package/src/fields/Checkbox/CheckboxFieldFrame.tsx +1 -0
- package/src/fields/Checkbox/CheckboxGroup.tsx +12 -5
- package/src/fields/Checkbox/index.tsx +16 -4
- package/src/fields/ColorPicker/ColorPicker.spec.tsx +93 -2
- package/src/fields/ColorPicker/ColorPicker.stories.tsx +29 -0
- package/src/fields/ColorPicker/index.tsx +15 -19
- package/src/fields/ColorPicker/parts.tsx +13 -13
- package/src/fields/Combobox/Combobox.spec.tsx +193 -1
- package/src/fields/Combobox/Combobox.stories.tsx +46 -0
- package/src/fields/Combobox/index.tsx +161 -104
- package/src/fields/DatePicker/Calendar.spec.tsx +157 -2
- package/src/fields/DatePicker/Calendar.tsx +11 -1
- package/src/fields/DatePicker/DatePicker.stories.tsx +28 -0
- package/src/fields/DatePicker/DateRangePicker.spec.tsx +53 -0
- package/src/fields/DatePicker/DateRangePicker.stories.tsx +41 -0
- package/src/fields/DatePicker/DateRangePicker.tsx +17 -3
- package/src/fields/DatePicker/DatetimePicker.spec.tsx +17 -0
- package/src/fields/DatePicker/DatetimePicker.stories.tsx +29 -1
- package/src/fields/DatePicker/DatetimePicker.tsx +42 -147
- package/src/fields/DatePicker/MonthPicker.tsx +3 -6
- package/src/fields/DatePicker/MultiDatePicker.spec.tsx +29 -0
- package/src/fields/DatePicker/MultiDatePicker.stories.tsx +33 -0
- package/src/fields/DatePicker/MultiDatePicker.tsx +26 -2
- package/src/fields/DatePicker/index.tsx +2 -0
- package/src/fields/DatePicker/parts.tsx +79 -40
- package/src/fields/Duration/Duration.spec.tsx +135 -6
- package/src/fields/Duration/Duration.stories.tsx +30 -1
- package/src/fields/Duration/durationMath.spec.ts +67 -0
- package/src/fields/Duration/durationMath.ts +78 -0
- package/src/fields/Duration/index.tsx +89 -112
- package/src/fields/FileUpload/FileUpload.spec.tsx +348 -1
- package/src/fields/FileUpload/FileUpload.stories.tsx +71 -1
- package/src/fields/FileUpload/filePickerTypes.ts +42 -0
- package/src/fields/FileUpload/index.tsx +533 -182
- package/src/fields/FileUpload/nativeFilePicker.native.spec.ts +168 -0
- package/src/fields/FileUpload/nativeFilePicker.native.ts +150 -0
- package/src/fields/FileUpload/nativeFilePicker.ts +21 -0
- package/src/fields/FileUpload/nativePickerLoader.ts +65 -0
- package/src/fields/Geolocation/Geolocation.stories.tsx +29 -0
- package/src/fields/Icon/Icon.spec.tsx +67 -0
- package/src/fields/Icon/Icon.stories.tsx +59 -0
- package/src/fields/Icon/drawnSet.spec.ts +47 -0
- package/src/fields/Icon/drawnSet.tsx +288 -0
- package/src/fields/Icon/index.tsx +466 -0
- package/src/fields/ImageField/ImageField.spec.tsx +84 -2
- package/src/fields/ImageField/ImageField.stories.tsx +30 -1
- package/src/fields/ImageField/index.tsx +35 -31
- package/src/fields/Input/Input.copy.spec.tsx +113 -0
- package/src/fields/Input/Input.spec.tsx +57 -0
- package/src/fields/Input/Input.stories.tsx +39 -0
- package/src/fields/Input/index.tsx +189 -84
- package/src/fields/MentionInput/MentionInput.spec.tsx +140 -38
- package/src/fields/MentionInput/MentionInput.stories.tsx +39 -2
- package/src/fields/MentionInput/index.tsx +166 -82
- package/src/fields/OTPInput/OtpInput.spec.tsx +99 -4
- package/src/fields/OTPInput/OtpInput.stories.tsx +28 -0
- package/src/fields/OTPInput/index.tsx +33 -5
- package/src/fields/OTPInput/otpCellHeightTouch.spec.ts +44 -0
- package/src/fields/PhoneInput/PhoneInput.spec.tsx +109 -0
- package/src/fields/PhoneInput/PhoneInput.stories.tsx +28 -0
- package/src/fields/PhoneInput/index.tsx +5 -3
- package/src/fields/Progress/Progress.spec.tsx +132 -18
- package/src/fields/Progress/Progress.stories.tsx +32 -3
- package/src/fields/Progress/index.tsx +38 -15
- package/src/fields/RadioGroup/RadioGroup.spec.tsx +58 -0
- package/src/fields/RadioGroup/RadioGroup.stories.tsx +42 -7
- package/src/fields/RadioGroup/index.tsx +26 -18
- package/src/fields/Rating/Rating.spec.tsx +71 -1
- package/src/fields/Rating/Rating.stories.tsx +28 -0
- package/src/fields/Rating/index.tsx +39 -25
- package/src/fields/Rating/ratingMath.spec.ts +24 -0
- package/src/fields/Rating/ratingMath.ts +14 -0
- package/src/fields/SearchInput/SearchInput.spec.tsx +86 -0
- package/src/fields/SearchInput/SearchInput.stories.tsx +14 -0
- package/src/fields/SearchInput/index.tsx +257 -154
- package/src/fields/Select/Select.stories.tsx +91 -42
- package/src/fields/Select/index.tsx +62 -23
- package/src/fields/Signature/Signature.spec.tsx +70 -0
- package/src/fields/Signature/Signature.stories.tsx +29 -0
- package/src/fields/Signature/index.tsx +27 -20
- package/src/fields/Slider/Slider.spec.tsx +57 -0
- package/src/fields/Slider/Slider.stories.tsx +28 -0
- package/src/fields/Slider/index.tsx +38 -15
- package/src/fields/Stepper/Stepper.spec.tsx +8 -0
- package/src/fields/Stepper/Stepper.stories.tsx +28 -0
- package/src/fields/Stepper/index.tsx +28 -18
- package/src/fields/Stepper/resolveStepperPlacement.spec.ts +21 -0
- package/src/fields/Stepper/resolveStepperPlacement.ts +14 -0
- package/src/fields/Switch/Switch.radius.spec.tsx +114 -0
- package/src/fields/Switch/Switch.stories.tsx +23 -0
- package/src/fields/Switch/index.tsx +157 -52
- package/src/fields/TextArea/TextArea.spec.tsx +103 -0
- package/src/fields/TextArea/TextArea.stories.tsx +28 -0
- package/src/fields/TextArea/index.tsx +36 -42
- package/src/fields/TimePicker/TimePicker.spec.tsx +73 -11
- package/src/fields/TimePicker/TimePicker.stories.tsx +29 -1
- package/src/fields/TimePicker/index.tsx +8 -2
- package/src/fields/TimePicker/parts.tsx +74 -584
- package/src/fields/TimeRangeScrubber/TimeRangeScrubber.spec.tsx +483 -0
- package/src/fields/TimeRangeScrubber/TimeRangeScrubber.stories.tsx +151 -0
- package/src/fields/TimeRangeScrubber/geometry.ts +285 -0
- package/src/fields/TimeRangeScrubber/index.tsx +1049 -0
- package/src/fields/ToggleGroup/ToggleGroup.spec.tsx +118 -2
- package/src/fields/ToggleGroup/ToggleGroup.stories.tsx +41 -0
- package/src/fields/ToggleGroup/index.tsx +70 -67
- package/src/fields/selectedOrder.spec.ts +29 -0
- package/src/fields/selectedOrder.ts +26 -0
- package/src/index.ts +71 -8
- package/src/shared/TimeColumn.tsx +135 -87
- package/src/shared/TimeWheels.spec.tsx +39 -0
- package/src/shared/colorRamps.ts +35 -1
- package/src/shared/floatingList.spec.tsx +65 -0
- package/src/shared/floatingList.tsx +18 -5
- package/src/shared/useKeyboardInset.ts +43 -0
- package/src/shared/utils.spec.ts +122 -9
- package/src/shared/utils.ts +161 -71
- package/src/themedPrimitives.tsx +5 -3
- package/types/AdaptivePopup/index.d.ts +19 -1
- package/types/AdaptivePopup/index.d.ts.map +1 -1
- package/types/Button/index.d.ts +8 -3
- package/types/Button/index.d.ts.map +1 -1
- package/types/Chip/index.d.ts +1 -1
- package/types/Chip/index.d.ts.map +1 -1
- package/types/ContextualSaveBar/UnsavedChangesDialog.d.ts +13 -0
- package/types/ContextualSaveBar/UnsavedChangesDialog.d.ts.map +1 -0
- package/types/ContextualSaveBar/clientKnownIdentity.d.ts +7 -0
- package/types/ContextualSaveBar/clientKnownIdentity.d.ts.map +1 -0
- package/types/ContextualSaveBar/commitImmediateField.d.ts +8 -0
- package/types/ContextualSaveBar/commitImmediateField.d.ts.map +1 -0
- package/types/ContextualSaveBar/index.d.ts +27 -0
- package/types/ContextualSaveBar/index.d.ts.map +1 -0
- package/types/ContextualSaveBar/useUnsavedChangesGuard.d.ts +9 -0
- package/types/ContextualSaveBar/useUnsavedChangesGuard.d.ts.map +1 -0
- package/types/ControlGroup/index.d.ts.map +1 -1
- package/types/DescriptionList/index.d.ts +69 -0
- package/types/DescriptionList/index.d.ts.map +1 -0
- package/types/FieldDisplay/index.d.ts +26 -5
- package/types/FieldDisplay/index.d.ts.map +1 -1
- package/types/FieldGroup.d.ts +2 -0
- package/types/FieldGroup.d.ts.map +1 -1
- package/types/FloatingPanel/index.d.ts +30 -5
- package/types/FloatingPanel/index.d.ts.map +1 -1
- package/types/FloatingPanel/index.native.d.ts +1 -1
- package/types/FloatingPanel/index.native.d.ts.map +1 -1
- package/types/FloatingPanel/useFloatingPanel.d.ts +30 -7
- package/types/FloatingPanel/useFloatingPanel.d.ts.map +1 -1
- package/types/Form/index.d.ts +19 -3
- package/types/Form/index.d.ts.map +1 -1
- package/types/FormGrid.d.ts.map +1 -1
- package/types/FormSection.d.ts +2 -2
- package/types/FormSection.d.ts.map +1 -1
- package/types/InputParts/index.d.ts +51 -17
- package/types/InputParts/index.d.ts.map +1 -1
- package/types/Label/index.d.ts.map +1 -1
- package/types/Spinner/index.d.ts.map +1 -1
- package/types/Spinner/index.native.d.ts.map +1 -1
- package/types/Wheel/WheelEdgeFade.d.ts +8 -0
- package/types/Wheel/WheelEdgeFade.d.ts.map +1 -0
- package/types/Wheel/WheelEdgeFade.native.d.ts +8 -0
- package/types/Wheel/WheelEdgeFade.native.d.ts.map +1 -0
- package/types/Wheel/haptic.d.ts +6 -0
- package/types/Wheel/haptic.d.ts.map +1 -0
- package/types/Wheel/index.d.ts +19 -1
- package/types/Wheel/index.d.ts.map +1 -1
- package/types/fieldDefaults.d.ts +7 -0
- package/types/fieldDefaults.d.ts.map +1 -1
- package/types/fieldLayout.d.ts.map +1 -1
- package/types/fields/Barcode/BarcodePreview.d.ts +46 -11
- package/types/fields/Barcode/BarcodePreview.d.ts.map +1 -1
- package/types/fields/Barcode/index.d.ts.map +1 -1
- package/types/fields/Barcode/qr.d.ts +53 -0
- package/types/fields/Barcode/qr.d.ts.map +1 -0
- package/types/fields/Barcode/scannerTypes.d.ts +7 -0
- package/types/fields/Barcode/scannerTypes.d.ts.map +1 -1
- package/types/fields/Checkbox/Checkbox.d.ts.map +1 -1
- package/types/fields/Checkbox/CheckboxBox.d.ts +16 -0
- package/types/fields/Checkbox/CheckboxBox.d.ts.map +1 -1
- package/types/fields/Checkbox/CheckboxCard.d.ts.map +1 -1
- package/types/fields/Checkbox/CheckboxFieldFrame.d.ts.map +1 -1
- package/types/fields/Checkbox/CheckboxGroup.d.ts.map +1 -1
- package/types/fields/Checkbox/index.d.ts +5 -4
- package/types/fields/Checkbox/index.d.ts.map +1 -1
- package/types/fields/ColorPicker/index.d.ts.map +1 -1
- package/types/fields/ColorPicker/parts.d.ts +9 -6
- package/types/fields/ColorPicker/parts.d.ts.map +1 -1
- package/types/fields/Combobox/index.d.ts +7 -1
- package/types/fields/Combobox/index.d.ts.map +1 -1
- package/types/fields/DatePicker/Calendar.d.ts.map +1 -1
- package/types/fields/DatePicker/DateRangePicker.d.ts.map +1 -1
- package/types/fields/DatePicker/DatetimePicker.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/index.d.ts.map +1 -1
- package/types/fields/DatePicker/parts.d.ts +15 -3
- package/types/fields/DatePicker/parts.d.ts.map +1 -1
- package/types/fields/Duration/durationMath.d.ts +17 -0
- package/types/fields/Duration/durationMath.d.ts.map +1 -0
- package/types/fields/Duration/index.d.ts +3 -11
- package/types/fields/Duration/index.d.ts.map +1 -1
- package/types/fields/FileUpload/filePickerTypes.d.ts +39 -0
- package/types/fields/FileUpload/filePickerTypes.d.ts.map +1 -0
- package/types/fields/FileUpload/index.d.ts +38 -0
- package/types/fields/FileUpload/index.d.ts.map +1 -1
- package/types/fields/FileUpload/nativeFilePicker.d.ts +10 -0
- package/types/fields/FileUpload/nativeFilePicker.d.ts.map +1 -0
- package/types/fields/FileUpload/nativeFilePicker.native.d.ts +23 -0
- package/types/fields/FileUpload/nativeFilePicker.native.d.ts.map +1 -0
- package/types/fields/FileUpload/nativePickerLoader.d.ts +15 -0
- package/types/fields/FileUpload/nativePickerLoader.d.ts.map +1 -0
- package/types/fields/Icon/drawnSet.d.ts +17 -0
- package/types/fields/Icon/drawnSet.d.ts.map +1 -0
- package/types/fields/Icon/index.d.ts +20 -0
- package/types/fields/Icon/index.d.ts.map +1 -0
- package/types/fields/ImageField/index.d.ts +5 -0
- package/types/fields/ImageField/index.d.ts.map +1 -1
- package/types/fields/Input/index.d.ts +29 -17
- package/types/fields/Input/index.d.ts.map +1 -1
- package/types/fields/MentionInput/index.d.ts +11 -4
- package/types/fields/MentionInput/index.d.ts.map +1 -1
- package/types/fields/OTPInput/index.d.ts +12 -0
- package/types/fields/OTPInput/index.d.ts.map +1 -1
- package/types/fields/PhoneInput/index.d.ts.map +1 -1
- package/types/fields/Progress/index.d.ts +9 -2
- package/types/fields/Progress/index.d.ts.map +1 -1
- package/types/fields/RadioGroup/index.d.ts +7 -4
- package/types/fields/RadioGroup/index.d.ts.map +1 -1
- package/types/fields/Rating/index.d.ts +1 -0
- package/types/fields/Rating/index.d.ts.map +1 -1
- package/types/fields/Rating/ratingMath.d.ts +7 -0
- package/types/fields/Rating/ratingMath.d.ts.map +1 -0
- package/types/fields/SearchInput/index.d.ts +15 -3
- package/types/fields/SearchInput/index.d.ts.map +1 -1
- package/types/fields/Select/index.d.ts +7 -1
- package/types/fields/Select/index.d.ts.map +1 -1
- package/types/fields/Signature/index.d.ts +3 -3
- package/types/fields/Signature/index.d.ts.map +1 -1
- package/types/fields/Slider/index.d.ts.map +1 -1
- package/types/fields/Stepper/index.d.ts +4 -4
- package/types/fields/Stepper/index.d.ts.map +1 -1
- package/types/fields/Stepper/resolveStepperPlacement.d.ts +7 -0
- package/types/fields/Stepper/resolveStepperPlacement.d.ts.map +1 -0
- package/types/fields/Switch/index.d.ts.map +1 -1
- package/types/fields/TextArea/index.d.ts +3 -1
- package/types/fields/TextArea/index.d.ts.map +1 -1
- package/types/fields/TimePicker/index.d.ts.map +1 -1
- package/types/fields/TimePicker/parts.d.ts +5 -13
- package/types/fields/TimePicker/parts.d.ts.map +1 -1
- package/types/fields/TimeRangeScrubber/geometry.d.ts +87 -0
- package/types/fields/TimeRangeScrubber/geometry.d.ts.map +1 -0
- package/types/fields/TimeRangeScrubber/index.d.ts +51 -0
- package/types/fields/TimeRangeScrubber/index.d.ts.map +1 -0
- package/types/fields/ToggleGroup/index.d.ts +1 -1
- package/types/fields/ToggleGroup/index.d.ts.map +1 -1
- package/types/fields/selectedOrder.d.ts +15 -0
- package/types/fields/selectedOrder.d.ts.map +1 -0
- package/types/index.d.ts +26 -13
- package/types/index.d.ts.map +1 -1
- package/types/shared/TimeColumn.d.ts +15 -13
- package/types/shared/TimeColumn.d.ts.map +1 -1
- package/types/shared/colorRamps.d.ts +28 -1
- package/types/shared/colorRamps.d.ts.map +1 -1
- package/types/shared/floatingList.d.ts.map +1 -1
- package/types/shared/useKeyboardInset.d.ts +16 -0
- package/types/shared/useKeyboardInset.d.ts.map +1 -0
- package/types/shared/utils.d.ts +36 -6
- package/types/shared/utils.d.ts.map +1 -1
- package/types/themedPrimitives.d.ts +1 -1
- package/types/themedPrimitives.d.ts.map +1 -1
|
@@ -29,6 +29,7 @@ module.exports = __toCommonJS(Signature_exports);
|
|
|
29
29
|
var import_theme = require("@multiplatform.one/theme");
|
|
30
30
|
var import_react = require("react");
|
|
31
31
|
var import_tamagui = require("tamagui");
|
|
32
|
+
var import_react2 = require("@phosphor-icons/react");
|
|
32
33
|
var import_perfect_freehand = require("perfect-freehand");
|
|
33
34
|
var import_react_native_svg = require("react-native-svg");
|
|
34
35
|
var import_Button = require("../../Button/index.cjs");
|
|
@@ -168,7 +169,7 @@ function parseSignatureValue(value) {
|
|
|
168
169
|
} catch {}
|
|
169
170
|
return [];
|
|
170
171
|
}
|
|
171
|
-
function signatureValueToSvg(value, width = 500, height = 200, penColor = "
|
|
172
|
+
function signatureValueToSvg(value, width = 500, height = 200, penColor = "currentColor") {
|
|
172
173
|
const strokes = parseSignatureValue(value);
|
|
173
174
|
if (strokes.length === 0) return "";
|
|
174
175
|
const strokeSize = getScaledStrokeSize(width, height);
|
|
@@ -183,6 +184,10 @@ function signatureValueToSvg(value, width = 500, height = 200, penColor = "#0000
|
|
|
183
184
|
return `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${width} ${height}" width="${width}" height="${height}">${pathElements}</svg>`;
|
|
184
185
|
}
|
|
185
186
|
const signatureHeightRows = 3;
|
|
187
|
+
const signatureAspect = 2.5;
|
|
188
|
+
const defaultClearIcon = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react2.EraserIcon, {
|
|
189
|
+
size: 16
|
|
190
|
+
});
|
|
186
191
|
function isPrimaryDrawPointer(event) {
|
|
187
192
|
if (!import_tamagui.isWeb) return true;
|
|
188
193
|
const webEvent = event;
|
|
@@ -394,9 +399,7 @@ function SignatureCanvasImpl({
|
|
|
394
399
|
position: "relative",
|
|
395
400
|
onLayout: handleLayout,
|
|
396
401
|
...knobProps.inputSurface,
|
|
397
|
-
|
|
398
|
-
backgroundColor
|
|
399
|
-
} : void 0),
|
|
402
|
+
backgroundColor: backgroundColor ?? knobProps.inputBackground,
|
|
400
403
|
...(disabled ? disabledSurface : void 0),
|
|
401
404
|
borderRadius: cappedRadius,
|
|
402
405
|
borderWidth: knobProps.borderRadius.borderWidth,
|
|
@@ -436,6 +439,7 @@ function SignatureCanvasImpl({
|
|
|
436
439
|
"aria-describedby": describedBy,
|
|
437
440
|
"aria-keyshortcuts": canDraw ? "Delete Backspace Escape" : void 0,
|
|
438
441
|
"data-signature": "pad",
|
|
442
|
+
"data-min-height": minHeightPx,
|
|
439
443
|
"data-signed": hasInk ? "true" : "false",
|
|
440
444
|
"data-keyboard-ring": kbFocus ? "true" : void 0,
|
|
441
445
|
...(!hasLabel ? {
|
|
@@ -444,18 +448,17 @@ function SignatureCanvasImpl({
|
|
|
444
448
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
445
449
|
position: "absolute",
|
|
446
450
|
bottom: "22%",
|
|
447
|
-
left:
|
|
448
|
-
right:
|
|
451
|
+
left: knobProps.control.paddingHorizontal,
|
|
452
|
+
right: knobProps.control.paddingHorizontal,
|
|
449
453
|
alignItems: "center",
|
|
450
|
-
gap: "$2",
|
|
451
454
|
pointerEvents: "none",
|
|
452
455
|
opacity: 0.55,
|
|
456
|
+
...knobProps.gap,
|
|
453
457
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
454
458
|
color: import_colorRamps.formCommonColors.muted,
|
|
455
459
|
fontStyle: "italic",
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
lineHeight: 20,
|
|
460
|
+
...knobProps.body,
|
|
461
|
+
...knobProps.controlType,
|
|
459
462
|
children: (0, import_t.t)("X")
|
|
460
463
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
|
|
461
464
|
flex: 1,
|
|
@@ -486,6 +489,7 @@ function SignatureCanvasImpl({
|
|
|
486
489
|
onPress: handleClear,
|
|
487
490
|
icon: clearIcon,
|
|
488
491
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Button.Button.Text, {
|
|
492
|
+
...knobProps.body,
|
|
489
493
|
children: (0, import_t.t)("Clear")
|
|
490
494
|
})
|
|
491
495
|
})
|
|
@@ -509,11 +513,11 @@ function Signature({
|
|
|
509
513
|
onBlur,
|
|
510
514
|
disabled,
|
|
511
515
|
readOnly,
|
|
512
|
-
width
|
|
513
|
-
height
|
|
516
|
+
width,
|
|
517
|
+
height,
|
|
514
518
|
penColor: penColorProp,
|
|
515
519
|
backgroundColor: backgroundColorProp,
|
|
516
|
-
clearIcon,
|
|
520
|
+
clearIcon = defaultClearIcon,
|
|
517
521
|
skeleton,
|
|
518
522
|
compact
|
|
519
523
|
}) {
|
|
@@ -529,9 +533,12 @@ function Signature({
|
|
|
529
533
|
});
|
|
530
534
|
const resolvedValidators = (0, import_utils.useResolvedValidators)(required, validators, label, name);
|
|
531
535
|
const tamaguiTheme = (0, import_tamagui.useTheme)();
|
|
536
|
+
const resolvedSizeToken = size ?? knobProps.sizeToken;
|
|
537
|
+
const minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);
|
|
538
|
+
const padHeight = height ?? minHeightPx;
|
|
539
|
+
const padWidth = width ?? Math.round(padHeight * signatureAspect);
|
|
532
540
|
if (skeleton) {
|
|
533
|
-
const
|
|
534
|
-
const minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);
|
|
541
|
+
const cappedRadius = (0, import_utils.clampRadiusForLargeComponent)(knobProps.borderRadius.borderRadius);
|
|
535
542
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {
|
|
536
543
|
id,
|
|
537
544
|
label,
|
|
@@ -540,7 +547,8 @@ function Signature({
|
|
|
540
547
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {
|
|
541
548
|
variant: "rounded",
|
|
542
549
|
width: "100%",
|
|
543
|
-
height: minHeightPx
|
|
550
|
+
height: minHeightPx,
|
|
551
|
+
borderRadius: cappedRadius
|
|
544
552
|
})
|
|
545
553
|
});
|
|
546
554
|
}
|
|
@@ -550,8 +558,8 @@ function Signature({
|
|
|
550
558
|
hasLabel: !!label,
|
|
551
559
|
disabled: !!disabled,
|
|
552
560
|
readOnly: !!readOnly,
|
|
553
|
-
width,
|
|
554
|
-
height,
|
|
561
|
+
width: padWidth,
|
|
562
|
+
height: padHeight,
|
|
555
563
|
penColor,
|
|
556
564
|
backgroundColor: backgroundColorProp,
|
|
557
565
|
knobProps,
|
|
@@ -32,6 +32,7 @@ var import_jsx_runtime = require("react/jsx-runtime");
|
|
|
32
32
|
var import_theme = require("@multiplatform.one/theme");
|
|
33
33
|
var import_react = require("react");
|
|
34
34
|
var import_tamagui = require("tamagui");
|
|
35
|
+
var import_react2 = require("@phosphor-icons/react");
|
|
35
36
|
var import_perfect_freehand = require("perfect-freehand");
|
|
36
37
|
var import_react_native_svg = require("react-native-svg");
|
|
37
38
|
var import_Button = require("../../Button");
|
|
@@ -198,7 +199,7 @@ function parseSignatureValue(value) {
|
|
|
198
199
|
function signatureValueToSvg(value) {
|
|
199
200
|
var width = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 500,
|
|
200
201
|
height = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 200,
|
|
201
|
-
penColor = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : "
|
|
202
|
+
penColor = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : "currentColor";
|
|
202
203
|
var strokes = parseSignatureValue(value);
|
|
203
204
|
if (strokes.length === 0) return "";
|
|
204
205
|
var strokeSize = getScaledStrokeSize(width, height);
|
|
@@ -215,6 +216,10 @@ function signatureValueToSvg(value) {
|
|
|
215
216
|
return `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${width} ${height}" width="${width}" height="${height}">${pathElements}</svg>`;
|
|
216
217
|
}
|
|
217
218
|
var signatureHeightRows = 3;
|
|
219
|
+
var signatureAspect = 2.5;
|
|
220
|
+
var defaultClearIcon = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react2.EraserIcon, {
|
|
221
|
+
size: 16
|
|
222
|
+
});
|
|
218
223
|
function isPrimaryDrawPointer(event) {
|
|
219
224
|
if (!import_tamagui.isWeb) return true;
|
|
220
225
|
var webEvent = event;
|
|
@@ -434,9 +439,7 @@ function SignatureCanvasImpl(param) {
|
|
|
434
439
|
position: "relative",
|
|
435
440
|
onLayout: handleLayout,
|
|
436
441
|
...knobProps.inputSurface,
|
|
437
|
-
|
|
438
|
-
backgroundColor
|
|
439
|
-
} : void 0),
|
|
442
|
+
backgroundColor: backgroundColor !== null && backgroundColor !== void 0 ? backgroundColor : knobProps.inputBackground,
|
|
440
443
|
...(disabled ? disabledSurface : void 0),
|
|
441
444
|
borderRadius: cappedRadius,
|
|
442
445
|
borderWidth: knobProps.borderRadius.borderWidth,
|
|
@@ -478,6 +481,7 @@ function SignatureCanvasImpl(param) {
|
|
|
478
481
|
"aria-describedby": describedBy,
|
|
479
482
|
"aria-keyshortcuts": canDraw ? "Delete Backspace Escape" : void 0,
|
|
480
483
|
"data-signature": "pad",
|
|
484
|
+
"data-min-height": minHeightPx,
|
|
481
485
|
"data-signed": hasInk ? "true" : "false",
|
|
482
486
|
"data-keyboard-ring": kbFocus ? "true" : void 0,
|
|
483
487
|
...(!hasLabel ? {
|
|
@@ -487,18 +491,17 @@ function SignatureCanvasImpl(param) {
|
|
|
487
491
|
/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
|
|
488
492
|
position: "absolute",
|
|
489
493
|
bottom: "22%",
|
|
490
|
-
left:
|
|
491
|
-
right:
|
|
494
|
+
left: knobProps.control.paddingHorizontal,
|
|
495
|
+
right: knobProps.control.paddingHorizontal,
|
|
492
496
|
alignItems: "center",
|
|
493
|
-
gap: "$2",
|
|
494
497
|
pointerEvents: "none",
|
|
495
498
|
opacity: 0.55,
|
|
499
|
+
...knobProps.gap,
|
|
496
500
|
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
|
|
497
501
|
color: import_colorRamps.formCommonColors.muted,
|
|
498
502
|
fontStyle: "italic",
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
lineHeight: 20,
|
|
503
|
+
...knobProps.body,
|
|
504
|
+
...knobProps.controlType,
|
|
502
505
|
children: (0, import_t.t)("X")
|
|
503
506
|
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
|
|
504
507
|
flex: 1,
|
|
@@ -536,6 +539,7 @@ function SignatureCanvasImpl(param) {
|
|
|
536
539
|
onPress: handleClear,
|
|
537
540
|
icon: clearIcon,
|
|
538
541
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Button.Button.Text, {
|
|
542
|
+
...knobProps.body,
|
|
539
543
|
children: (0, import_t.t)("Clear")
|
|
540
544
|
})
|
|
541
545
|
})
|
|
@@ -560,11 +564,11 @@ function Signature(param) {
|
|
|
560
564
|
onBlur,
|
|
561
565
|
disabled,
|
|
562
566
|
readOnly,
|
|
563
|
-
width
|
|
564
|
-
height
|
|
567
|
+
width,
|
|
568
|
+
height,
|
|
565
569
|
penColor: penColorProp,
|
|
566
570
|
backgroundColor: backgroundColorProp,
|
|
567
|
-
clearIcon,
|
|
571
|
+
clearIcon = defaultClearIcon,
|
|
568
572
|
skeleton,
|
|
569
573
|
compact
|
|
570
574
|
} = param;
|
|
@@ -582,9 +586,12 @@ function Signature(param) {
|
|
|
582
586
|
});
|
|
583
587
|
var resolvedValidators = (0, import_utils.useResolvedValidators)(required, validators, label, name);
|
|
584
588
|
var tamaguiTheme = (0, import_tamagui.useTheme)();
|
|
589
|
+
var resolvedSizeToken = size !== null && size !== void 0 ? size : knobProps.sizeToken;
|
|
590
|
+
var minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);
|
|
591
|
+
var padHeight = height !== null && height !== void 0 ? height : minHeightPx;
|
|
592
|
+
var padWidth = width !== null && width !== void 0 ? width : Math.round(padHeight * signatureAspect);
|
|
585
593
|
if (skeleton) {
|
|
586
|
-
var
|
|
587
|
-
var minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);
|
|
594
|
+
var cappedRadius = (0, import_utils.clampRadiusForLargeComponent)(knobProps.borderRadius.borderRadius);
|
|
588
595
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {
|
|
589
596
|
id,
|
|
590
597
|
label,
|
|
@@ -593,7 +600,8 @@ function Signature(param) {
|
|
|
593
600
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {
|
|
594
601
|
variant: "rounded",
|
|
595
602
|
width: "100%",
|
|
596
|
-
height: minHeightPx
|
|
603
|
+
height: minHeightPx,
|
|
604
|
+
borderRadius: cappedRadius
|
|
597
605
|
})
|
|
598
606
|
});
|
|
599
607
|
}
|
|
@@ -603,8 +611,8 @@ function Signature(param) {
|
|
|
603
611
|
hasLabel: !!label,
|
|
604
612
|
disabled: !!disabled,
|
|
605
613
|
readOnly: !!readOnly,
|
|
606
|
-
width,
|
|
607
|
-
height,
|
|
614
|
+
width: padWidth,
|
|
615
|
+
height: padHeight,
|
|
608
616
|
penColor,
|
|
609
617
|
backgroundColor: backgroundColorProp,
|
|
610
618
|
knobProps,
|
|
@@ -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","Signature_exports","Signature","signatureValueToSvg","module","exports","import_jsx_runtime","require","import_theme","import_react","import_tamagui","import_perfect_freehand","import_react_native_svg","import_Button","import_fieldLayout","import_Skeleton","import_colorRamps","import_t","import_utils","encodeBase64","str","btoa","unescape","encodeURIComponent","Buffer","toString","chars","bytes","TextEncoder","encode","result","i","length","_bytes_","_bytes_1","b1","b2","b3","decodeBase64","base64","atob","decodeURIComponent","escape","e1","indexOf","e2","e3","e4","push","TextDecoder","decode","Uint8Array","minPointDistance","baseStrokeSize","referenceWidth","referenceHeight","strokeOptionsBase","thinning","smoothing","streamline","easing","t2","start","taper","cap","end","normalizeStroke","stroke","width","height","map","param","x","y","p","denormalizeStroke","getScaledStrokeSize","scale","Math","sqrt","max","round","pointDistance","p1","p2","pow","hasRealPressure","points","some","slowDistance","fastDistance","pressureFromSpacing","distances","d","i2","d2","min","pressure","getStrokeOptions","_points","strokeSize","size","simulatePressure","getSvgPathFromStroke","reduce","acc","arr","x0","y0","x1","y1","join","parseSignatureValue","startsWith","replace","json","parsed","JSON","parse","v","Array","isArray","s","allX","flatMap","allY","maxX","maxY","unused","arguments","penColor","strokes","paths","denormalized","pointsWithPressure","options","outlinePoints","getStroke","pathElements","filter","Boolean","signatureHeightRows","isPrimaryDrawPointer","event","isWeb","webEvent","isPrimary","pointerType","button","SignatureCanvasImpl","id","hasLabel","onValueChange","disabled","readOnly","backgroundColor","knobProps","disabledSurface","error","clearIcon","required","hasError","setStrokes","useState","currentStroke","setCurrentStroke","dimensions","setDimensions","kbFocus","setKbFocus","svgRef","useRef","isDrawing","strokesRef","currentStrokeRef","describedBy","useFieldDescribedBy","aspectRatio","resolvedSizeToken","sizeToken","minHeightPx","getFieldHeight","cappedRadius","clampRadiusForLargeComponent","borderRadius","canDraw","canFocus","hasInk","ensureKeyboardModalityTracking","setCommittedStrokes","useCallback","next","current","useEffect","saveStrokes","newStrokes","payload","stringify","handleLayout","w","h","nativeEvent","layout","getPoint","_webEvent_pressure","svg","currentTarget","rect","getBoundingClientRect","clientX","left","clientY","top","locationX","locationY","handleStart","point","_target_setPointerCapture","pointerId","setPointerCapture","handleMove","prev","base","lastPoint","handleEnd","normalized","handleClear","handlePadKeyDown","e","_e_preventDefault","preventDefault","canvasW","canvasH","completedPaths","currentPath","cursor","svgProps","onPointerDown","onPointerMove","onPointerUp","onLostPointerCapture","style","touchAction","userSelect","outline","onStartShouldSetResponder","onMoveShouldSetResponder","onResponderGrant","onResponderMove","onResponderRelease","onResponderTerminate","frameRing","ensureFocusVisibleRing","outlineOffset","jsxs","YStack","position","onLayout","inputSurface","borderWidth","borderColor","formCommonColors","formInputColors","border","overflow","minHeight","outlineWidth","hoverStyle","hover","focusStyle","focus","focusVisibleStyle","transition","focusable","tabIndex","onFocus","wasKeyboardFocus","onBlur","onKeyDown","t","children","XStack","bottom","right","alignItems","gap","pointerEvents","opacity","jsx","Text","color","muted","fontStyle","fontWeight","fontSize","lineHeight","flex","divider","Svg","ref","viewBox","Path","fill","strokeWidth","insetInlineEnd","justifyContent","Button","onPress","icon","form","formProp","validators","label","labelProps","helperText","idProp","defaultValue","onChange","penColorProp","backgroundColorProp","skeleton","compact","_ref","_tamaguiTheme_color12","resolvedForm","disabledState","useFormField","resolvedValidators","useResolvedValidators","tamaguiTheme","useTheme","FieldLayout","Skeleton","variant","color12","val","canvasProps","surfaceKnobProps","_ref1","Field","field","_field_state_value","resolvedError","getFieldError","mergeFieldHandler","state","handleChange"],"sources":["index.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 Signature_exports = {};\n__export(Signature_exports, {\n Signature: () => Signature,\n signatureValueToSvg: () => signatureValueToSvg\n});\nmodule.exports = __toCommonJS(Signature_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react = require(\"react\");\nvar import_tamagui = require(\"tamagui\");\nvar import_perfect_freehand = require(\"perfect-freehand\");\nvar import_react_native_svg = require(\"react-native-svg\");\nvar import_Button = require(\"../../Button\");\nvar import_fieldLayout = require(\"../../fieldLayout\");\nvar import_Skeleton = require(\"../../Skeleton\");\nvar import_colorRamps = require(\"../../shared/colorRamps\");\nvar import_t = require(\"../../shared/t\");\nvar import_utils = require(\"../../shared/utils\");\nfunction encodeBase64(str) {\n if (typeof btoa === \"function\") {\n return btoa(unescape(encodeURIComponent(str)));\n }\n if (typeof Buffer !== \"undefined\") {\n return Buffer.from(str, \"utf-8\").toString(\"base64\");\n }\n var chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n var bytes = new TextEncoder().encode(str);\n var result = \"\";\n for (var i = 0; i < bytes.length; i += 3) {\n var _bytes_, _bytes_1;\n var b1 = bytes[i];\n var b2 = (_bytes_ = bytes[i + 1]) !== null && _bytes_ !== void 0 ? _bytes_ : 0;\n var b3 = (_bytes_1 = bytes[i + 2]) !== null && _bytes_1 !== void 0 ? _bytes_1 : 0;\n result += chars[b1 >> 2];\n result += chars[(b1 & 3) << 4 | b2 >> 4];\n result += i + 1 < bytes.length ? chars[(b2 & 15) << 2 | b3 >> 6] : \"=\";\n result += i + 2 < bytes.length ? chars[b3 & 63] : \"=\";\n }\n return result;\n}\nfunction decodeBase64(base64) {\n if (typeof atob === \"function\") {\n return decodeURIComponent(escape(atob(base64)));\n }\n if (typeof Buffer !== \"undefined\") {\n return Buffer.from(base64, \"base64\").toString(\"utf-8\");\n }\n var chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n var bytes = [];\n for (var i = 0; i < base64.length; i += 4) {\n var e1 = chars.indexOf(base64[i]);\n var e2 = chars.indexOf(base64[i + 1]);\n var e3 = chars.indexOf(base64[i + 2]);\n var e4 = chars.indexOf(base64[i + 3]);\n bytes.push(e1 << 2 | e2 >> 4);\n if (e3 !== 64) bytes.push((e2 & 15) << 4 | e3 >> 2);\n if (e4 !== 64) bytes.push((e3 & 3) << 6 | e4);\n }\n return new TextDecoder().decode(new Uint8Array(bytes));\n}\nvar minPointDistance = 1;\nvar baseStrokeSize = 8;\nvar referenceWidth = 500;\nvar referenceHeight = 200;\nvar strokeOptionsBase = {\n thinning: 0.65,\n // Moderate pressure effect (fast=thin, slow=thick)\n smoothing: 0.2,\n streamline: 0,\n // No streamline = preserve point spacing for pressure\n easing: function easing(t2) {\n return t2;\n },\n start: {\n taper: 0,\n cap: true\n },\n end: {\n taper: 0,\n cap: true\n }\n};\nfunction normalizeStroke(stroke, width, height) {\n if (width <= 0 || height <= 0) return stroke;\n return stroke.map(function(param) {\n var [x, y, p] = param;\n return [\n x / width,\n y / height,\n p\n ];\n });\n}\nfunction denormalizeStroke(stroke, width, height) {\n if (width <= 0 || height <= 0) return stroke;\n return stroke.map(function(param) {\n var [x, y, p] = param;\n return [\n x * width,\n y * height,\n p\n ];\n });\n}\nfunction getScaledStrokeSize(width, height) {\n var scale = Math.sqrt(width * height / (referenceWidth * referenceHeight));\n return Math.max(4, Math.round(baseStrokeSize * scale));\n}\nfunction pointDistance(p1, p2) {\n return Math.sqrt(Math.pow(p1[0] - p2[0], 2) + Math.pow(p1[1] - p2[1], 2));\n}\nfunction hasRealPressure(points) {\n return points.some(function(p) {\n return p[2] !== void 0 && p[2] !== 0.5 && p[2] > 0 && p[2] < 1;\n });\n}\nvar slowDistance = 4;\nvar fastDistance = 25;\nfunction pressureFromSpacing(points) {\n if (points.length < 2) return points;\n if (hasRealPressure(points)) return points;\n var distances = [];\n for (var i = 0; i < points.length; i++) {\n var d = i === 0 ? points.length > 1 ? pointDistance(points[1], points[0]) : slowDistance : pointDistance(points[i], points[i - 1]);\n distances.push(d);\n }\n return points.map(function(p, i2) {\n var d2 = distances[i2];\n var t2 = Math.max(0, Math.min(1, (d2 - slowDistance) / (fastDistance - slowDistance)));\n var pressure = 0.7 - t2 * 0.35;\n return [\n p[0],\n p[1],\n Math.max(0.3, Math.min(0.8, pressure))\n ];\n });\n}\nfunction getStrokeOptions(_points, strokeSize) {\n return {\n ...strokeOptionsBase,\n size: strokeSize,\n simulatePressure: false\n };\n}\nfunction getSvgPathFromStroke(stroke) {\n if (!stroke.length) return \"\";\n var d = stroke.reduce(function(acc, param, i, arr) {\n var [x0, y0] = param;\n var [x1, y1] = arr[(i + 1) % arr.length];\n acc.push(x0, y0, (x0 + x1) / 2, (y0 + y1) / 2);\n return acc;\n }, [\n \"M\",\n ...stroke[0],\n \"Q\"\n ]);\n d.push(\"Z\");\n return d.join(\" \");\n}\nfunction parseSignatureValue(value) {\n if (!value || !value.startsWith(\"data:application/json;base64,\")) return [];\n try {\n var base64 = value.replace(\"data:application/json;base64,\", \"\");\n var json = decodeBase64(base64);\n var parsed = JSON.parse(json);\n if ((parsed === null || parsed === void 0 ? void 0 : parsed.v) === 2 && Array.isArray(parsed.s)) return parsed.s;\n if (Array.isArray(parsed)) {\n var allX = parsed.flatMap(function(s) {\n return s.map(function(p) {\n return p[0];\n });\n });\n var allY = parsed.flatMap(function(s) {\n return s.map(function(p) {\n return p[1];\n });\n });\n var maxX = Math.max(...allX, 1);\n var maxY = Math.max(...allY, 1);\n return parsed.map(function(stroke) {\n return stroke.map(function(param) {\n var [x, y, p] = param;\n return [\n x / maxX,\n y / maxY,\n p\n ];\n });\n });\n }\n } catch (unused) {\n }\n return [];\n}\nfunction signatureValueToSvg(value) {\n var width = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 500, height = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 200, penColor = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : \"#000000\";\n var strokes = parseSignatureValue(value);\n if (strokes.length === 0) return \"\";\n var strokeSize = getScaledStrokeSize(width, height);\n var paths = strokes.map(function(stroke) {\n var denormalized = denormalizeStroke(stroke, width, height);\n var pointsWithPressure = pressureFromSpacing(denormalized);\n var options = getStrokeOptions(pointsWithPressure, strokeSize);\n var outlinePoints = (0, import_perfect_freehand.getStroke)(pointsWithPressure, options);\n return getSvgPathFromStroke(outlinePoints);\n });\n var pathElements = paths.filter(Boolean).map(function(d) {\n return `<path d=\"${d}\" fill=\"${penColor}\" stroke=\"${penColor}\" stroke-width=\"1\"/>`;\n }).join(\"\\n\");\n return `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 ${width} ${height}\" width=\"${width}\" height=\"${height}\">${pathElements}</svg>`;\n}\nvar signatureHeightRows = 3;\nfunction isPrimaryDrawPointer(event) {\n if (!import_tamagui.isWeb) return true;\n var webEvent = event;\n if (webEvent.isPrimary === false) return false;\n if (webEvent.pointerType === \"mouse\" && webEvent.button !== 0) return false;\n return true;\n}\nfunction SignatureCanvasImpl(param) {\n var { id, hasLabel, value, onValueChange, disabled, readOnly, width, height, penColor, backgroundColor, knobProps, disabledSurface, size, error, clearIcon, required, hasError } = param;\n var [strokes, setStrokes] = (0, import_react.useState)([]);\n var [currentStroke, setCurrentStroke] = (0, import_react.useState)(null);\n var [dimensions, setDimensions] = (0, import_react.useState)({\n width: 0,\n height: 0\n });\n var [kbFocus, setKbFocus] = (0, import_react.useState)(false);\n var svgRef = (0, import_react.useRef)(null);\n var isDrawing = (0, import_react.useRef)(false);\n var strokesRef = (0, import_react.useRef)([]);\n var currentStrokeRef = (0, import_react.useRef)(null);\n var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();\n var aspectRatio = width / height;\n var resolvedSizeToken = size !== null && size !== void 0 ? size : knobProps.sizeToken;\n var minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);\n var cappedRadius = (0, import_utils.clampRadiusForLargeComponent)(knobProps.borderRadius.borderRadius);\n var canDraw = !disabled && !readOnly;\n var canFocus = !disabled;\n var hasInk = strokes.length > 0 || !!currentStroke;\n if (import_tamagui.isWeb) (0, import_theme.ensureKeyboardModalityTracking)();\n var setCommittedStrokes = (0, import_react.useCallback)(function(next) {\n strokesRef.current = next;\n setStrokes(next);\n }, []);\n (0, import_react.useEffect)(function() {\n if (!value) {\n setCommittedStrokes([]);\n return;\n }\n if (value.startsWith(\"data:application/json;base64,\")) {\n try {\n var base64 = value.replace(\"data:application/json;base64,\", \"\");\n var json = decodeBase64(base64);\n var parsed = JSON.parse(json);\n if ((parsed === null || parsed === void 0 ? void 0 : parsed.v) === 2 && Array.isArray(parsed.s)) {\n setCommittedStrokes(parsed.s);\n return;\n }\n } catch (unused) {\n }\n }\n setCommittedStrokes([]);\n }, [\n value,\n setCommittedStrokes\n ]);\n var saveStrokes = (0, import_react.useCallback)(function(newStrokes) {\n if (newStrokes.length === 0) {\n onValueChange(\"\");\n return;\n }\n var payload = {\n v: 2,\n s: newStrokes\n };\n var json = JSON.stringify(payload);\n var base64 = encodeBase64(json);\n onValueChange(`data:application/json;base64,${base64}`);\n }, [\n onValueChange\n ]);\n var handleLayout = (0, import_react.useCallback)(function(event) {\n var { width: w, height: h } = event.nativeEvent.layout;\n setDimensions({\n width: w,\n height: h\n });\n }, []);\n var getPoint = (0, import_react.useCallback)(function(event) {\n if (import_tamagui.isWeb) {\n var _webEvent_pressure;\n var webEvent = event;\n var svg = webEvent.currentTarget;\n var rect = svg.getBoundingClientRect();\n var x = webEvent.clientX - rect.left;\n var y = webEvent.clientY - rect.top;\n var pressure = (_webEvent_pressure = webEvent.pressure) !== null && _webEvent_pressure !== void 0 ? _webEvent_pressure : 0.5;\n return [\n x,\n y,\n pressure\n ];\n }\n var nativeEvent = event.nativeEvent;\n return [\n nativeEvent.locationX,\n nativeEvent.locationY,\n 0.5\n ];\n }, []);\n var handleStart = (0, import_react.useCallback)(function(event) {\n if (!canDraw || !isPrimaryDrawPointer(event)) return;\n isDrawing.current = true;\n var point = getPoint(event);\n currentStrokeRef.current = [\n point\n ];\n setCurrentStroke([\n point\n ]);\n if (import_tamagui.isWeb) {\n var _target_setPointerCapture;\n var target = event.currentTarget;\n var pointerId = event.pointerId;\n (_target_setPointerCapture = target.setPointerCapture) === null || _target_setPointerCapture === void 0 ? void 0 : _target_setPointerCapture.call(target, pointerId);\n }\n }, [\n canDraw,\n getPoint\n ]);\n var handleMove = (0, import_react.useCallback)(function(event) {\n if (!isDrawing.current || !canDraw) return;\n var point = getPoint(event);\n setCurrentStroke(function(prev) {\n var base = prev !== null && prev !== void 0 ? prev : currentStrokeRef.current;\n if (!base) {\n currentStrokeRef.current = [\n point\n ];\n return [\n point\n ];\n }\n var lastPoint = base[base.length - 1];\n if (pointDistance(point, lastPoint) < minPointDistance) {\n return prev !== null && prev !== void 0 ? prev : base;\n }\n var next = [\n ...base,\n point\n ];\n currentStrokeRef.current = next;\n return next;\n });\n }, [\n canDraw,\n getPoint\n ]);\n var handleEnd = (0, import_react.useCallback)(function() {\n if (!isDrawing.current) return;\n isDrawing.current = false;\n var stroke = currentStrokeRef.current;\n currentStrokeRef.current = null;\n setCurrentStroke(null);\n if (stroke && stroke.length > 0 && dimensions.width > 0 && dimensions.height > 0) {\n var normalized = normalizeStroke(stroke, dimensions.width, dimensions.height);\n var newStrokes = [\n ...strokesRef.current,\n normalized\n ];\n setCommittedStrokes(newStrokes);\n saveStrokes(newStrokes);\n }\n }, [\n dimensions,\n saveStrokes,\n setCommittedStrokes\n ]);\n var handleClear = (0, import_react.useCallback)(function() {\n isDrawing.current = false;\n currentStrokeRef.current = null;\n setCurrentStroke(null);\n setCommittedStrokes([]);\n onValueChange(\"\");\n }, [\n onValueChange,\n setCommittedStrokes\n ]);\n var handlePadKeyDown = (0, import_react.useCallback)(function(e) {\n if (e.target !== e.currentTarget) return;\n if (!canDraw) return;\n if (e.key === \"Backspace\" || e.key === \"Delete\" || e.key === \"Escape\") {\n var _e_preventDefault;\n if (strokesRef.current.length === 0 && !currentStrokeRef.current) return;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n handleClear();\n }\n }, [\n canDraw,\n handleClear\n ]);\n var strokeSize = getScaledStrokeSize(dimensions.width || width, dimensions.height || height);\n var canvasW = dimensions.width || width;\n var canvasH = dimensions.height || height;\n var completedPaths = strokes.map(function(stroke) {\n var denormalized = denormalizeStroke(stroke, canvasW, canvasH);\n var pointsWithPressure = pressureFromSpacing(denormalized);\n var options = getStrokeOptions(pointsWithPressure, strokeSize);\n var outlinePoints = (0, import_perfect_freehand.getStroke)(pointsWithPressure, options);\n return getSvgPathFromStroke(outlinePoints);\n });\n var currentPath = currentStroke ? (function() {\n var pointsWithPressure = pressureFromSpacing(currentStroke);\n var options = getStrokeOptions(pointsWithPressure, strokeSize);\n return getSvgPathFromStroke((0, import_perfect_freehand.getStroke)(pointsWithPressure, options));\n })() : null;\n var paths = currentPath ? [\n ...completedPaths,\n currentPath\n ] : completedPaths;\n var cursor = disabled ? \"not-allowed\" : readOnly ? \"default\" : \"crosshair\";\n var svgProps = import_tamagui.isWeb ? {\n onPointerDown: handleStart,\n onPointerMove: handleMove,\n onPointerUp: handleEnd,\n onLostPointerCapture: handleEnd,\n style: {\n touchAction: \"none\",\n userSelect: \"none\",\n outline: \"none\",\n cursor,\n backgroundColor: \"transparent\"\n }\n } : {\n onStartShouldSetResponder: function onStartShouldSetResponder() {\n return canDraw;\n },\n onMoveShouldSetResponder: function onMoveShouldSetResponder() {\n return canDraw;\n },\n onResponderGrant: handleStart,\n onResponderMove: handleMove,\n onResponderRelease: handleEnd,\n onResponderTerminate: handleEnd,\n style: {\n backgroundColor: \"transparent\"\n }\n };\n var frameRing = kbFocus ? (0, import_theme.ensureFocusVisibleRing)({\n outlineOffset: -2\n }) : void 0;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n id,\n position: \"relative\",\n onLayout: handleLayout,\n ...knobProps.inputSurface,\n ...backgroundColor ? {\n backgroundColor\n } : void 0,\n ...disabled ? disabledSurface : void 0,\n borderRadius: cappedRadius,\n borderWidth: knobProps.borderRadius.borderWidth,\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.base,\n overflow: \"hidden\",\n aspectRatio,\n minHeight: minHeightPx,\n userSelect: \"none\",\n cursor,\n outlineWidth: 0,\n hoverStyle: disabled ? void 0 : {\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.hover\n },\n focusStyle: {\n outlineWidth: 0,\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.focus\n },\n focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)({\n outlineOffset: -2,\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.focus\n }),\n ...frameRing,\n ...knobProps.transition ? {\n transition: knobProps.transition\n } : void 0,\n focusable: canFocus,\n tabIndex: import_tamagui.isWeb ? canFocus ? 0 : -1 : void 0,\n onFocus: function onFocus() {\n if (import_tamagui.isWeb && (0, import_theme.wasKeyboardFocus)()) setKbFocus(true);\n },\n onBlur: function onBlur() {\n return setKbFocus(false);\n },\n onKeyDown: import_tamagui.isWeb ? handlePadKeyDown : void 0,\n \"aria-required\": required || void 0,\n \"aria-invalid\": hasError || void 0,\n \"aria-readonly\": readOnly || void 0,\n \"aria-disabled\": disabled || void 0,\n \"aria-describedby\": describedBy,\n \"aria-keyshortcuts\": canDraw ? \"Delete Backspace Escape\" : void 0,\n \"data-signature\": \"pad\",\n \"data-signed\": hasInk ? \"true\" : \"false\",\n \"data-keyboard-ring\": kbFocus ? \"true\" : void 0,\n ...!hasLabel ? {\n \"aria-label\": hasInk ? (0, import_t.t)(\"Signature, signed\") : (0, import_t.t)(\"Signature, empty\")\n } : null,\n children: [\n /* Legal-pad baseline (DocuSign / Adobe Sign): X + rule behind ink. */\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n position: \"absolute\",\n bottom: \"22%\",\n left: \"$3\",\n right: \"$3\",\n alignItems: \"center\",\n gap: \"$2\",\n pointerEvents: \"none\",\n opacity: 0.55,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n fontStyle: \"italic\",\n fontWeight: \"700\",\n fontSize: 18,\n lineHeight: 20,\n children: (0, import_t.t)(\"X\")\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n flex: 1,\n height: 1,\n backgroundColor: import_colorRamps.formCommonColors.divider\n })\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native_svg.Svg, {\n ref: svgRef,\n width: \"100%\",\n height: \"100%\",\n viewBox: `0 0 ${dimensions.width || 100} ${dimensions.height || 100}`,\n ...svgProps,\n children: paths.map(function(d, i) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native_svg.Path, {\n d,\n fill: penColor,\n stroke: penColor,\n strokeWidth: 1\n }, i);\n })\n }),\n /* DG-ST-03 hide arm (UX-P19): with nothing drawn (or the field\n disabled) clearing is irrelevant — hide the action instead of\n rendering a bare-disabled button. The overlay is absolutely\n positioned, so appearing at first stroke shifts no layout. */\n !readOnly && !disabled && strokes.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.XStack, {\n position: \"absolute\",\n bottom: \"$2\",\n insetInlineEnd: \"$2\",\n pointerEvents: \"box-none\",\n alignItems: \"flex-end\",\n justifyContent: \"flex-end\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Button.Button, {\n size: \"$2\",\n onPress: handleClear,\n icon: clearIcon,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Button.Button.Text, {\n children: (0, import_t.t)(\"Clear\")\n })\n })\n })\n ]\n });\n}\nfunction Signature(param) {\n var { name, form: formProp, validators, label, labelProps, helperText, error, required, size, id: idProp, value, defaultValue, onChange, onBlur, disabled, readOnly, width = 500, height = 200, penColor: penColorProp, backgroundColor: backgroundColorProp, clearIcon, skeleton, compact } = param;\n var _ref;\n var _tamaguiTheme_color12;\n var { resolvedForm, knobProps, disabledState, id } = (0, import_utils.useFormField)({\n form: formProp,\n id: idProp,\n compact\n });\n var resolvedValidators = (0, import_utils.useResolvedValidators)(required, validators, label, name);\n var tamaguiTheme = (0, import_tamagui.useTheme)();\n if (skeleton) {\n var resolvedSizeToken = size !== null && size !== void 0 ? size : knobProps.sizeToken;\n var minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n size,\n knobProps,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"rounded\",\n width: \"100%\",\n height: minHeightPx\n })\n });\n }\n var penColor = (_ref = penColorProp !== null && penColorProp !== void 0 ? penColorProp : (_tamaguiTheme_color12 = tamaguiTheme.color12) === null || _tamaguiTheme_color12 === void 0 ? void 0 : _tamaguiTheme_color12.val) !== null && _ref !== void 0 ? _ref : \"currentColor\";\n var canvasProps = {\n id,\n hasLabel: !!label,\n disabled: !!disabled,\n readOnly: !!readOnly,\n width,\n height,\n penColor,\n backgroundColor: backgroundColorProp,\n knobProps,\n disabledSurface: disabledState.surfaceKnobProps,\n size,\n clearIcon\n };\n if (!resolvedForm || !name) {\n var _ref1;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error,\n helperText,\n required,\n size,\n knobProps,\n onBlur,\n // LC-40: FieldLayout owns the dimWhole assembly dim (keepLabel pins\n // the sibling label/helper readable) — it needs the disabled state.\n disabled,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SignatureCanvasImpl, {\n ...canvasProps,\n value: (_ref1 = value !== null && value !== void 0 ? value : defaultValue) !== null && _ref1 !== void 0 ? _ref1 : \"\",\n onValueChange: function onValueChange(v) {\n return onChange === null || onChange === void 0 ? void 0 : onChange(v);\n },\n error,\n required,\n hasError: !!error\n })\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.Field, {\n form: resolvedForm,\n name,\n defaultValue,\n validators: resolvedValidators,\n children: function children(field) {\n var _field_state_value;\n var resolvedError = (0, import_utils.getFieldError)(field, error);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error: resolvedError,\n helperText,\n required,\n size,\n knobProps,\n onBlur: (0, import_utils.mergeFieldHandler)(field, \"handleBlur\", onBlur),\n // LC-40: see standalone branch — FieldLayout carries dimWhole.\n disabled,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SignatureCanvasImpl, {\n ...canvasProps,\n value: (_field_state_value = field.state.value) !== null && _field_state_value !== void 0 ? _field_state_value : \"\",\n onValueChange: function onValueChange(v) {\n field.handleChange(v);\n onChange === null || onChange === void 0 ? void 0 : onChange(v);\n },\n error: resolvedError,\n required,\n hasError: !!resolvedError\n })\n });\n }\n });\n}\n//# sourceMappingURL=index.js.map\n"],"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","Signature_exports","Signature","signatureValueToSvg","module","exports","import_jsx_runtime","require","import_theme","import_react","import_tamagui","import_react2","import_perfect_freehand","import_react_native_svg","import_Button","import_fieldLayout","import_Skeleton","import_colorRamps","import_t","import_utils","encodeBase64","str","btoa","unescape","encodeURIComponent","Buffer","toString","chars","bytes","TextEncoder","encode","result","i","length","_bytes_","_bytes_1","b1","b2","b3","decodeBase64","base64","atob","decodeURIComponent","escape","e1","indexOf","e2","e3","e4","push","TextDecoder","decode","Uint8Array","minPointDistance","baseStrokeSize","referenceWidth","referenceHeight","strokeOptionsBase","thinning","smoothing","streamline","easing","t2","start","taper","cap","end","normalizeStroke","stroke","width","height","map","param","x","y","p","denormalizeStroke","getScaledStrokeSize","scale","Math","sqrt","max","round","pointDistance","p1","p2","pow","hasRealPressure","points","some","slowDistance","fastDistance","pressureFromSpacing","distances","d","i2","d2","min","pressure","getStrokeOptions","_points","strokeSize","size","simulatePressure","getSvgPathFromStroke","reduce","acc","arr","x0","y0","x1","y1","join","parseSignatureValue","startsWith","replace","json","parsed","JSON","parse","v","Array","isArray","s","allX","flatMap","allY","maxX","maxY","unused","arguments","penColor","strokes","paths","denormalized","pointsWithPressure","options","outlinePoints","getStroke","pathElements","filter","Boolean","signatureHeightRows","signatureAspect","defaultClearIcon","jsx","EraserIcon","isPrimaryDrawPointer","event","isWeb","webEvent","isPrimary","pointerType","button","SignatureCanvasImpl","id","hasLabel","onValueChange","disabled","readOnly","backgroundColor","knobProps","disabledSurface","error","clearIcon","required","hasError","setStrokes","useState","currentStroke","setCurrentStroke","dimensions","setDimensions","kbFocus","setKbFocus","svgRef","useRef","isDrawing","strokesRef","currentStrokeRef","describedBy","useFieldDescribedBy","aspectRatio","resolvedSizeToken","sizeToken","minHeightPx","getFieldHeight","cappedRadius","clampRadiusForLargeComponent","borderRadius","canDraw","canFocus","hasInk","ensureKeyboardModalityTracking","setCommittedStrokes","useCallback","next","current","useEffect","saveStrokes","newStrokes","payload","stringify","handleLayout","w","h","nativeEvent","layout","getPoint","_webEvent_pressure","svg","currentTarget","rect","getBoundingClientRect","clientX","left","clientY","top","locationX","locationY","handleStart","point","_target_setPointerCapture","pointerId","setPointerCapture","handleMove","prev","base","lastPoint","handleEnd","normalized","handleClear","handlePadKeyDown","e","_e_preventDefault","preventDefault","canvasW","canvasH","completedPaths","currentPath","cursor","svgProps","onPointerDown","onPointerMove","onPointerUp","onLostPointerCapture","style","touchAction","userSelect","outline","onStartShouldSetResponder","onMoveShouldSetResponder","onResponderGrant","onResponderMove","onResponderRelease","onResponderTerminate","frameRing","ensureFocusVisibleRing","outlineOffset","jsxs","YStack","position","onLayout","inputSurface","inputBackground","borderWidth","borderColor","formCommonColors","formInputColors","border","overflow","minHeight","outlineWidth","hoverStyle","hover","focusStyle","focus","focusVisibleStyle","transition","focusable","tabIndex","onFocus","wasKeyboardFocus","onBlur","onKeyDown","t","children","XStack","bottom","control","paddingHorizontal","right","alignItems","pointerEvents","opacity","gap","Text","color","muted","fontStyle","body","controlType","flex","divider","Svg","ref","viewBox","Path","fill","strokeWidth","insetInlineEnd","justifyContent","Button","onPress","icon","form","formProp","validators","label","labelProps","helperText","idProp","defaultValue","onChange","penColorProp","backgroundColorProp","skeleton","compact","_ref","_tamaguiTheme_color12","resolvedForm","disabledState","useFormField","resolvedValidators","useResolvedValidators","tamaguiTheme","useTheme","padHeight","padWidth","FieldLayout","Skeleton","variant","color12","val","canvasProps","surfaceKnobProps","_ref1","Field","field","_field_state_value","resolvedError","getFieldError","mergeFieldHandler","state","handleChange"],"sources":["index.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 Signature_exports = {};\n__export(Signature_exports, {\n Signature: () => Signature,\n signatureValueToSvg: () => signatureValueToSvg\n});\nmodule.exports = __toCommonJS(Signature_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react = require(\"react\");\nvar import_tamagui = require(\"tamagui\");\nvar import_react2 = require(\"@phosphor-icons/react\");\nvar import_perfect_freehand = require(\"perfect-freehand\");\nvar import_react_native_svg = require(\"react-native-svg\");\nvar import_Button = require(\"../../Button\");\nvar import_fieldLayout = require(\"../../fieldLayout\");\nvar import_Skeleton = require(\"../../Skeleton\");\nvar import_colorRamps = require(\"../../shared/colorRamps\");\nvar import_t = require(\"../../shared/t\");\nvar import_utils = require(\"../../shared/utils\");\nfunction encodeBase64(str) {\n if (typeof btoa === \"function\") {\n return btoa(unescape(encodeURIComponent(str)));\n }\n if (typeof Buffer !== \"undefined\") {\n return Buffer.from(str, \"utf-8\").toString(\"base64\");\n }\n var chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n var bytes = new TextEncoder().encode(str);\n var result = \"\";\n for (var i = 0; i < bytes.length; i += 3) {\n var _bytes_, _bytes_1;\n var b1 = bytes[i];\n var b2 = (_bytes_ = bytes[i + 1]) !== null && _bytes_ !== void 0 ? _bytes_ : 0;\n var b3 = (_bytes_1 = bytes[i + 2]) !== null && _bytes_1 !== void 0 ? _bytes_1 : 0;\n result += chars[b1 >> 2];\n result += chars[(b1 & 3) << 4 | b2 >> 4];\n result += i + 1 < bytes.length ? chars[(b2 & 15) << 2 | b3 >> 6] : \"=\";\n result += i + 2 < bytes.length ? chars[b3 & 63] : \"=\";\n }\n return result;\n}\nfunction decodeBase64(base64) {\n if (typeof atob === \"function\") {\n return decodeURIComponent(escape(atob(base64)));\n }\n if (typeof Buffer !== \"undefined\") {\n return Buffer.from(base64, \"base64\").toString(\"utf-8\");\n }\n var chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n var bytes = [];\n for (var i = 0; i < base64.length; i += 4) {\n var e1 = chars.indexOf(base64[i]);\n var e2 = chars.indexOf(base64[i + 1]);\n var e3 = chars.indexOf(base64[i + 2]);\n var e4 = chars.indexOf(base64[i + 3]);\n bytes.push(e1 << 2 | e2 >> 4);\n if (e3 !== 64) bytes.push((e2 & 15) << 4 | e3 >> 2);\n if (e4 !== 64) bytes.push((e3 & 3) << 6 | e4);\n }\n return new TextDecoder().decode(new Uint8Array(bytes));\n}\nvar minPointDistance = 1;\nvar baseStrokeSize = 8;\nvar referenceWidth = 500;\nvar referenceHeight = 200;\nvar strokeOptionsBase = {\n thinning: 0.65,\n // Moderate pressure effect (fast=thin, slow=thick)\n smoothing: 0.2,\n streamline: 0,\n // No streamline = preserve point spacing for pressure\n easing: function easing(t2) {\n return t2;\n },\n start: {\n taper: 0,\n cap: true\n },\n end: {\n taper: 0,\n cap: true\n }\n};\nfunction normalizeStroke(stroke, width, height) {\n if (width <= 0 || height <= 0) return stroke;\n return stroke.map(function(param) {\n var [x, y, p] = param;\n return [\n x / width,\n y / height,\n p\n ];\n });\n}\nfunction denormalizeStroke(stroke, width, height) {\n if (width <= 0 || height <= 0) return stroke;\n return stroke.map(function(param) {\n var [x, y, p] = param;\n return [\n x * width,\n y * height,\n p\n ];\n });\n}\nfunction getScaledStrokeSize(width, height) {\n var scale = Math.sqrt(width * height / (referenceWidth * referenceHeight));\n return Math.max(4, Math.round(baseStrokeSize * scale));\n}\nfunction pointDistance(p1, p2) {\n return Math.sqrt(Math.pow(p1[0] - p2[0], 2) + Math.pow(p1[1] - p2[1], 2));\n}\nfunction hasRealPressure(points) {\n return points.some(function(p) {\n return p[2] !== void 0 && p[2] !== 0.5 && p[2] > 0 && p[2] < 1;\n });\n}\nvar slowDistance = 4;\nvar fastDistance = 25;\nfunction pressureFromSpacing(points) {\n if (points.length < 2) return points;\n if (hasRealPressure(points)) return points;\n var distances = [];\n for (var i = 0; i < points.length; i++) {\n var d = i === 0 ? points.length > 1 ? pointDistance(points[1], points[0]) : slowDistance : pointDistance(points[i], points[i - 1]);\n distances.push(d);\n }\n return points.map(function(p, i2) {\n var d2 = distances[i2];\n var t2 = Math.max(0, Math.min(1, (d2 - slowDistance) / (fastDistance - slowDistance)));\n var pressure = 0.7 - t2 * 0.35;\n return [\n p[0],\n p[1],\n Math.max(0.3, Math.min(0.8, pressure))\n ];\n });\n}\nfunction getStrokeOptions(_points, strokeSize) {\n return {\n ...strokeOptionsBase,\n size: strokeSize,\n simulatePressure: false\n };\n}\nfunction getSvgPathFromStroke(stroke) {\n if (!stroke.length) return \"\";\n var d = stroke.reduce(function(acc, param, i, arr) {\n var [x0, y0] = param;\n var [x1, y1] = arr[(i + 1) % arr.length];\n acc.push(x0, y0, (x0 + x1) / 2, (y0 + y1) / 2);\n return acc;\n }, [\n \"M\",\n ...stroke[0],\n \"Q\"\n ]);\n d.push(\"Z\");\n return d.join(\" \");\n}\nfunction parseSignatureValue(value) {\n if (!value || !value.startsWith(\"data:application/json;base64,\")) return [];\n try {\n var base64 = value.replace(\"data:application/json;base64,\", \"\");\n var json = decodeBase64(base64);\n var parsed = JSON.parse(json);\n if ((parsed === null || parsed === void 0 ? void 0 : parsed.v) === 2 && Array.isArray(parsed.s)) return parsed.s;\n if (Array.isArray(parsed)) {\n var allX = parsed.flatMap(function(s) {\n return s.map(function(p) {\n return p[0];\n });\n });\n var allY = parsed.flatMap(function(s) {\n return s.map(function(p) {\n return p[1];\n });\n });\n var maxX = Math.max(...allX, 1);\n var maxY = Math.max(...allY, 1);\n return parsed.map(function(stroke) {\n return stroke.map(function(param) {\n var [x, y, p] = param;\n return [\n x / maxX,\n y / maxY,\n p\n ];\n });\n });\n }\n } catch (unused) {\n }\n return [];\n}\nfunction signatureValueToSvg(value) {\n var width = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 500, height = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 200, penColor = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : \"currentColor\";\n var strokes = parseSignatureValue(value);\n if (strokes.length === 0) return \"\";\n var strokeSize = getScaledStrokeSize(width, height);\n var paths = strokes.map(function(stroke) {\n var denormalized = denormalizeStroke(stroke, width, height);\n var pointsWithPressure = pressureFromSpacing(denormalized);\n var options = getStrokeOptions(pointsWithPressure, strokeSize);\n var outlinePoints = (0, import_perfect_freehand.getStroke)(pointsWithPressure, options);\n return getSvgPathFromStroke(outlinePoints);\n });\n var pathElements = paths.filter(Boolean).map(function(d) {\n return `<path d=\"${d}\" fill=\"${penColor}\" stroke=\"${penColor}\" stroke-width=\"1\"/>`;\n }).join(\"\\n\");\n return `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 ${width} ${height}\" width=\"${width}\" height=\"${height}\">${pathElements}</svg>`;\n}\nvar signatureHeightRows = 3;\nvar signatureAspect = 2.5;\nvar defaultClearIcon = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.EraserIcon, {\n size: 16\n});\nfunction isPrimaryDrawPointer(event) {\n if (!import_tamagui.isWeb) return true;\n var webEvent = event;\n if (webEvent.isPrimary === false) return false;\n if (webEvent.pointerType === \"mouse\" && webEvent.button !== 0) return false;\n return true;\n}\nfunction SignatureCanvasImpl(param) {\n var { id, hasLabel, value, onValueChange, disabled, readOnly, width, height, penColor, backgroundColor, knobProps, disabledSurface, size, error, clearIcon, required, hasError } = param;\n var [strokes, setStrokes] = (0, import_react.useState)([]);\n var [currentStroke, setCurrentStroke] = (0, import_react.useState)(null);\n var [dimensions, setDimensions] = (0, import_react.useState)({\n width: 0,\n height: 0\n });\n var [kbFocus, setKbFocus] = (0, import_react.useState)(false);\n var svgRef = (0, import_react.useRef)(null);\n var isDrawing = (0, import_react.useRef)(false);\n var strokesRef = (0, import_react.useRef)([]);\n var currentStrokeRef = (0, import_react.useRef)(null);\n var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();\n var aspectRatio = width / height;\n var resolvedSizeToken = size !== null && size !== void 0 ? size : knobProps.sizeToken;\n var minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);\n var cappedRadius = (0, import_utils.clampRadiusForLargeComponent)(knobProps.borderRadius.borderRadius);\n var canDraw = !disabled && !readOnly;\n var canFocus = !disabled;\n var hasInk = strokes.length > 0 || !!currentStroke;\n if (import_tamagui.isWeb) (0, import_theme.ensureKeyboardModalityTracking)();\n var setCommittedStrokes = (0, import_react.useCallback)(function(next) {\n strokesRef.current = next;\n setStrokes(next);\n }, []);\n (0, import_react.useEffect)(function() {\n if (!value) {\n setCommittedStrokes([]);\n return;\n }\n if (value.startsWith(\"data:application/json;base64,\")) {\n try {\n var base64 = value.replace(\"data:application/json;base64,\", \"\");\n var json = decodeBase64(base64);\n var parsed = JSON.parse(json);\n if ((parsed === null || parsed === void 0 ? void 0 : parsed.v) === 2 && Array.isArray(parsed.s)) {\n setCommittedStrokes(parsed.s);\n return;\n }\n } catch (unused) {\n }\n }\n setCommittedStrokes([]);\n }, [\n value,\n setCommittedStrokes\n ]);\n var saveStrokes = (0, import_react.useCallback)(function(newStrokes) {\n if (newStrokes.length === 0) {\n onValueChange(\"\");\n return;\n }\n var payload = {\n v: 2,\n s: newStrokes\n };\n var json = JSON.stringify(payload);\n var base64 = encodeBase64(json);\n onValueChange(`data:application/json;base64,${base64}`);\n }, [\n onValueChange\n ]);\n var handleLayout = (0, import_react.useCallback)(function(event) {\n var { width: w, height: h } = event.nativeEvent.layout;\n setDimensions({\n width: w,\n height: h\n });\n }, []);\n var getPoint = (0, import_react.useCallback)(function(event) {\n if (import_tamagui.isWeb) {\n var _webEvent_pressure;\n var webEvent = event;\n var svg = webEvent.currentTarget;\n var rect = svg.getBoundingClientRect();\n var x = webEvent.clientX - rect.left;\n var y = webEvent.clientY - rect.top;\n var pressure = (_webEvent_pressure = webEvent.pressure) !== null && _webEvent_pressure !== void 0 ? _webEvent_pressure : 0.5;\n return [\n x,\n y,\n pressure\n ];\n }\n var nativeEvent = event.nativeEvent;\n return [\n nativeEvent.locationX,\n nativeEvent.locationY,\n 0.5\n ];\n }, []);\n var handleStart = (0, import_react.useCallback)(function(event) {\n if (!canDraw || !isPrimaryDrawPointer(event)) return;\n isDrawing.current = true;\n var point = getPoint(event);\n currentStrokeRef.current = [\n point\n ];\n setCurrentStroke([\n point\n ]);\n if (import_tamagui.isWeb) {\n var _target_setPointerCapture;\n var target = event.currentTarget;\n var pointerId = event.pointerId;\n (_target_setPointerCapture = target.setPointerCapture) === null || _target_setPointerCapture === void 0 ? void 0 : _target_setPointerCapture.call(target, pointerId);\n }\n }, [\n canDraw,\n getPoint\n ]);\n var handleMove = (0, import_react.useCallback)(function(event) {\n if (!isDrawing.current || !canDraw) return;\n var point = getPoint(event);\n setCurrentStroke(function(prev) {\n var base = prev !== null && prev !== void 0 ? prev : currentStrokeRef.current;\n if (!base) {\n currentStrokeRef.current = [\n point\n ];\n return [\n point\n ];\n }\n var lastPoint = base[base.length - 1];\n if (pointDistance(point, lastPoint) < minPointDistance) {\n return prev !== null && prev !== void 0 ? prev : base;\n }\n var next = [\n ...base,\n point\n ];\n currentStrokeRef.current = next;\n return next;\n });\n }, [\n canDraw,\n getPoint\n ]);\n var handleEnd = (0, import_react.useCallback)(function() {\n if (!isDrawing.current) return;\n isDrawing.current = false;\n var stroke = currentStrokeRef.current;\n currentStrokeRef.current = null;\n setCurrentStroke(null);\n if (stroke && stroke.length > 0 && dimensions.width > 0 && dimensions.height > 0) {\n var normalized = normalizeStroke(stroke, dimensions.width, dimensions.height);\n var newStrokes = [\n ...strokesRef.current,\n normalized\n ];\n setCommittedStrokes(newStrokes);\n saveStrokes(newStrokes);\n }\n }, [\n dimensions,\n saveStrokes,\n setCommittedStrokes\n ]);\n var handleClear = (0, import_react.useCallback)(function() {\n isDrawing.current = false;\n currentStrokeRef.current = null;\n setCurrentStroke(null);\n setCommittedStrokes([]);\n onValueChange(\"\");\n }, [\n onValueChange,\n setCommittedStrokes\n ]);\n var handlePadKeyDown = (0, import_react.useCallback)(function(e) {\n if (e.target !== e.currentTarget) return;\n if (!canDraw) return;\n if (e.key === \"Backspace\" || e.key === \"Delete\" || e.key === \"Escape\") {\n var _e_preventDefault;\n if (strokesRef.current.length === 0 && !currentStrokeRef.current) return;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n handleClear();\n }\n }, [\n canDraw,\n handleClear\n ]);\n var strokeSize = getScaledStrokeSize(dimensions.width || width, dimensions.height || height);\n var canvasW = dimensions.width || width;\n var canvasH = dimensions.height || height;\n var completedPaths = strokes.map(function(stroke) {\n var denormalized = denormalizeStroke(stroke, canvasW, canvasH);\n var pointsWithPressure = pressureFromSpacing(denormalized);\n var options = getStrokeOptions(pointsWithPressure, strokeSize);\n var outlinePoints = (0, import_perfect_freehand.getStroke)(pointsWithPressure, options);\n return getSvgPathFromStroke(outlinePoints);\n });\n var currentPath = currentStroke ? (function() {\n var pointsWithPressure = pressureFromSpacing(currentStroke);\n var options = getStrokeOptions(pointsWithPressure, strokeSize);\n return getSvgPathFromStroke((0, import_perfect_freehand.getStroke)(pointsWithPressure, options));\n })() : null;\n var paths = currentPath ? [\n ...completedPaths,\n currentPath\n ] : completedPaths;\n var cursor = disabled ? \"not-allowed\" : readOnly ? \"default\" : \"crosshair\";\n var svgProps = import_tamagui.isWeb ? {\n onPointerDown: handleStart,\n onPointerMove: handleMove,\n onPointerUp: handleEnd,\n onLostPointerCapture: handleEnd,\n style: {\n touchAction: \"none\",\n userSelect: \"none\",\n outline: \"none\",\n cursor,\n backgroundColor: \"transparent\"\n }\n } : {\n onStartShouldSetResponder: function onStartShouldSetResponder() {\n return canDraw;\n },\n onMoveShouldSetResponder: function onMoveShouldSetResponder() {\n return canDraw;\n },\n onResponderGrant: handleStart,\n onResponderMove: handleMove,\n onResponderRelease: handleEnd,\n onResponderTerminate: handleEnd,\n style: {\n backgroundColor: \"transparent\"\n }\n };\n var frameRing = kbFocus ? (0, import_theme.ensureFocusVisibleRing)({\n outlineOffset: -2\n }) : void 0;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n id,\n position: \"relative\",\n onLayout: handleLayout,\n ...knobProps.inputSurface,\n backgroundColor: backgroundColor !== null && backgroundColor !== void 0 ? backgroundColor : knobProps.inputBackground,\n ...disabled ? disabledSurface : void 0,\n borderRadius: cappedRadius,\n borderWidth: knobProps.borderRadius.borderWidth,\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.base,\n overflow: \"hidden\",\n aspectRatio,\n minHeight: minHeightPx,\n userSelect: \"none\",\n cursor,\n outlineWidth: 0,\n hoverStyle: disabled ? void 0 : {\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.hover\n },\n focusStyle: {\n outlineWidth: 0,\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.focus\n },\n focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)({\n outlineOffset: -2,\n borderColor: error ? import_colorRamps.formCommonColors.error : import_colorRamps.formInputColors.border.focus\n }),\n ...frameRing,\n ...knobProps.transition ? {\n transition: knobProps.transition\n } : void 0,\n focusable: canFocus,\n tabIndex: import_tamagui.isWeb ? canFocus ? 0 : -1 : void 0,\n onFocus: function onFocus() {\n if (import_tamagui.isWeb && (0, import_theme.wasKeyboardFocus)()) setKbFocus(true);\n },\n onBlur: function onBlur() {\n return setKbFocus(false);\n },\n onKeyDown: import_tamagui.isWeb ? handlePadKeyDown : void 0,\n \"aria-required\": required || void 0,\n \"aria-invalid\": hasError || void 0,\n \"aria-readonly\": readOnly || void 0,\n \"aria-disabled\": disabled || void 0,\n \"aria-describedby\": describedBy,\n \"aria-keyshortcuts\": canDraw ? \"Delete Backspace Escape\" : void 0,\n \"data-signature\": \"pad\",\n \"data-min-height\": minHeightPx,\n \"data-signed\": hasInk ? \"true\" : \"false\",\n \"data-keyboard-ring\": kbFocus ? \"true\" : void 0,\n ...!hasLabel ? {\n \"aria-label\": hasInk ? (0, import_t.t)(\"Signature, signed\") : (0, import_t.t)(\"Signature, empty\")\n } : null,\n children: [\n /* Legal-pad baseline (DocuSign / Adobe Sign): X + rule behind ink. */\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n position: \"absolute\",\n bottom: \"22%\",\n left: knobProps.control.paddingHorizontal,\n right: knobProps.control.paddingHorizontal,\n alignItems: \"center\",\n pointerEvents: \"none\",\n opacity: 0.55,\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n fontStyle: \"italic\",\n ...knobProps.body,\n ...knobProps.controlType,\n children: (0, import_t.t)(\"X\")\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n flex: 1,\n height: 1,\n backgroundColor: import_colorRamps.formCommonColors.divider\n })\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native_svg.Svg, {\n ref: svgRef,\n width: \"100%\",\n height: \"100%\",\n viewBox: `0 0 ${dimensions.width || 100} ${dimensions.height || 100}`,\n ...svgProps,\n children: paths.map(function(d, i) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native_svg.Path, {\n d,\n fill: penColor,\n stroke: penColor,\n strokeWidth: 1\n }, i);\n })\n }),\n /* DG-ST-03 hide arm (UX-P19): with nothing drawn (or the field\n disabled) clearing is irrelevant — hide the action instead of\n rendering a bare-disabled button. The overlay is absolutely\n positioned, so appearing at first stroke shifts no layout. */\n !readOnly && !disabled && strokes.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.XStack, {\n position: \"absolute\",\n bottom: \"$2\",\n insetInlineEnd: \"$2\",\n pointerEvents: \"box-none\",\n alignItems: \"flex-end\",\n justifyContent: \"flex-end\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Button.Button, {\n size: \"$2\",\n onPress: handleClear,\n icon: clearIcon,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Button.Button.Text, {\n ...knobProps.body,\n children: (0, import_t.t)(\"Clear\")\n })\n })\n })\n ]\n });\n}\nfunction Signature(param) {\n var { name, form: formProp, validators, label, labelProps, helperText, error, required, size, id: idProp, value, defaultValue, onChange, onBlur, disabled, readOnly, width, height, penColor: penColorProp, backgroundColor: backgroundColorProp, clearIcon = defaultClearIcon, skeleton, compact } = param;\n var _ref;\n var _tamaguiTheme_color12;\n var { resolvedForm, knobProps, disabledState, id } = (0, import_utils.useFormField)({\n form: formProp,\n id: idProp,\n compact\n });\n var resolvedValidators = (0, import_utils.useResolvedValidators)(required, validators, label, name);\n var tamaguiTheme = (0, import_tamagui.useTheme)();\n var resolvedSizeToken = size !== null && size !== void 0 ? size : knobProps.sizeToken;\n var minHeightPx = (0, import_utils.getFieldHeight)(resolvedSizeToken, signatureHeightRows);\n var padHeight = height !== null && height !== void 0 ? height : minHeightPx;\n var padWidth = width !== null && width !== void 0 ? width : Math.round(padHeight * signatureAspect);\n if (skeleton) {\n var cappedRadius = (0, import_utils.clampRadiusForLargeComponent)(knobProps.borderRadius.borderRadius);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n size,\n knobProps,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"rounded\",\n width: \"100%\",\n height: minHeightPx,\n borderRadius: cappedRadius\n })\n });\n }\n var penColor = (_ref = penColorProp !== null && penColorProp !== void 0 ? penColorProp : (_tamaguiTheme_color12 = tamaguiTheme.color12) === null || _tamaguiTheme_color12 === void 0 ? void 0 : _tamaguiTheme_color12.val) !== null && _ref !== void 0 ? _ref : \"currentColor\";\n var canvasProps = {\n id,\n hasLabel: !!label,\n disabled: !!disabled,\n readOnly: !!readOnly,\n width: padWidth,\n height: padHeight,\n penColor,\n backgroundColor: backgroundColorProp,\n knobProps,\n disabledSurface: disabledState.surfaceKnobProps,\n size,\n clearIcon\n };\n if (!resolvedForm || !name) {\n var _ref1;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error,\n helperText,\n required,\n size,\n knobProps,\n onBlur,\n // LC-40: FieldLayout owns the dimWhole assembly dim (keepLabel pins\n // the sibling label/helper readable) — it needs the disabled state.\n disabled,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SignatureCanvasImpl, {\n ...canvasProps,\n value: (_ref1 = value !== null && value !== void 0 ? value : defaultValue) !== null && _ref1 !== void 0 ? _ref1 : \"\",\n onValueChange: function onValueChange(v) {\n return onChange === null || onChange === void 0 ? void 0 : onChange(v);\n },\n error,\n required,\n hasError: !!error\n })\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.Field, {\n form: resolvedForm,\n name,\n defaultValue,\n validators: resolvedValidators,\n children: function children(field) {\n var _field_state_value;\n var resolvedError = (0, import_utils.getFieldError)(field, error);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error: resolvedError,\n helperText,\n required,\n size,\n knobProps,\n onBlur: (0, import_utils.mergeFieldHandler)(field, \"handleBlur\", onBlur),\n // LC-40: see standalone branch — FieldLayout carries dimWhole.\n disabled,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SignatureCanvasImpl, {\n ...canvasProps,\n value: (_field_state_value = field.state.value) !== null && _field_state_value !== void 0 ? _field_state_value : \"\",\n onValueChange: function onValueChange(v) {\n field.handleChange(v);\n onChange === null || onChange === void 0 ? void 0 : onChange(v);\n },\n error: resolvedError,\n required,\n hasError: !!resolvedError\n })\n });\n }\n });\n}\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}
|