@multiplatform.one/forms 7.71.0 → 7.73.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Button/circleGlyph.cjs +28 -0
- package/dist/cjs/Button/circleGlyph.native.js +31 -0
- package/dist/cjs/Button/circleGlyph.native.js.map +1 -0
- package/dist/cjs/Button/index.cjs +19 -3
- package/dist/cjs/Button/index.native.js +19 -3
- package/dist/cjs/Button/index.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/PanelHeader.cjs +49 -0
- package/dist/cjs/FloatingPanel/PanelHeader.native.js +53 -0
- package/dist/cjs/FloatingPanel/PanelHeader.native.js.map +1 -0
- package/dist/cjs/FloatingPanel/echoContext.cjs +67 -0
- package/dist/cjs/FloatingPanel/echoContext.native.js +71 -0
- package/dist/cjs/FloatingPanel/echoContext.native.js.map +1 -0
- package/dist/cjs/FloatingPanel/iconEcho.cjs +104 -0
- package/dist/cjs/FloatingPanel/iconEcho.native.js +114 -0
- package/dist/cjs/FloatingPanel/iconEcho.native.js.map +1 -0
- package/dist/cjs/FloatingPanel/index.cjs +371 -86
- package/dist/cjs/FloatingPanel/index.native.js +164 -20
- package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/paintedBox.cjs +80 -0
- package/dist/cjs/FloatingPanel/paintedBox.native.js +85 -0
- package/dist/cjs/FloatingPanel/paintedBox.native.js.map +1 -0
- package/dist/cjs/FloatingPanel/panelWidth.cjs +92 -0
- package/dist/cjs/FloatingPanel/panelWidth.native.js +99 -0
- package/dist/cjs/FloatingPanel/panelWidth.native.js.map +1 -0
- package/dist/cjs/FloatingPanel/pointAnchor.cjs +34 -5
- package/dist/cjs/FloatingPanel/pointAnchor.native.js +37 -8
- package/dist/cjs/FloatingPanel/pointAnchor.native.js.map +1 -1
- package/dist/cjs/FloatingPanel/useFloatingPanel.cjs +60 -5
- package/dist/cjs/FloatingPanel/useFloatingPanel.native.js +72 -5
- package/dist/cjs/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/cjs/InputParts/index.cjs +18 -0
- package/dist/cjs/InputParts/index.native.js +19 -1
- package/dist/cjs/InputParts/index.native.js.map +1 -1
- package/dist/cjs/Wheel/NativeWheel.native.js +1 -1
- package/dist/cjs/Wheel/NativeWheel.native.js.map +1 -1
- package/dist/cjs/Wheel/index.cjs +2 -1
- package/dist/cjs/Wheel/index.native.js +4 -1
- package/dist/cjs/Wheel/index.native.js.map +1 -1
- package/dist/cjs/Wheel/wheelShared.cjs +6 -1
- package/dist/cjs/Wheel/wheelShared.native.js +7 -1
- package/dist/cjs/Wheel/wheelShared.native.js.map +1 -1
- package/dist/cjs/fields/Combobox/index.cjs +1 -0
- package/dist/cjs/fields/Combobox/index.native.js +1 -0
- package/dist/cjs/fields/Combobox/index.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.cjs +6 -30
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +11 -34
- package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/catalog.cjs +2 -28
- package/dist/cjs/fields/DatePicker/catalog.native.js +2 -30
- package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/index.native.js.map +1 -1
- package/dist/cjs/fields/DatePicker/parts.cjs +11 -20
- package/dist/cjs/fields/DatePicker/parts.native.js +13 -22
- package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/cjs/fields/Select/index.cjs +65 -44
- package/dist/cjs/fields/Select/index.native.js +69 -47
- package/dist/cjs/fields/Select/index.native.js.map +1 -1
- package/dist/cjs/fields/Select/shouldInlineChoices.cjs +3 -1
- package/dist/cjs/fields/Select/shouldInlineChoices.native.js +3 -1
- package/dist/cjs/fields/Select/shouldInlineChoices.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/catalog.cjs +4 -25
- package/dist/cjs/fields/TimePicker/catalog.native.js +7 -29
- package/dist/cjs/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
- package/dist/cjs/fields/TimePicker/parts.cjs +8 -21
- package/dist/cjs/fields/TimePicker/parts.native.js +8 -21
- package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/cjs/index.cjs +2 -0
- package/dist/cjs/index.native.js +2 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/shared/floatingList.cjs +13 -4
- package/dist/cjs/shared/floatingList.native.js +15 -4
- package/dist/cjs/shared/floatingList.native.js.map +1 -1
- package/dist/esm/Button/circleGlyph.mjs +3 -0
- package/dist/esm/Button/circleGlyph.mjs.map +1 -0
- package/dist/esm/Button/circleGlyph.native.js +3 -0
- package/dist/esm/Button/circleGlyph.native.js.map +1 -0
- package/dist/esm/Button/index.mjs +18 -2
- package/dist/esm/Button/index.mjs.map +1 -1
- package/dist/esm/Button/index.native.js +18 -2
- package/dist/esm/Button/index.native.js.map +1 -1
- package/dist/esm/FloatingPanel/PanelHeader.mjs +24 -0
- package/dist/esm/FloatingPanel/PanelHeader.mjs.map +1 -0
- package/dist/esm/FloatingPanel/PanelHeader.native.js +25 -0
- package/dist/esm/FloatingPanel/PanelHeader.native.js.map +1 -0
- package/dist/esm/FloatingPanel/echoContext.mjs +35 -0
- package/dist/esm/FloatingPanel/echoContext.mjs.map +1 -0
- package/dist/esm/FloatingPanel/echoContext.native.js +36 -0
- package/dist/esm/FloatingPanel/echoContext.native.js.map +1 -0
- package/dist/esm/FloatingPanel/iconEcho.mjs +77 -0
- package/dist/esm/FloatingPanel/iconEcho.mjs.map +1 -0
- package/dist/esm/FloatingPanel/iconEcho.native.js +84 -0
- package/dist/esm/FloatingPanel/iconEcho.native.js.map +1 -0
- package/dist/esm/FloatingPanel/index.mjs +373 -90
- package/dist/esm/FloatingPanel/index.mjs.map +1 -1
- package/dist/esm/FloatingPanel/index.native.js +165 -23
- package/dist/esm/FloatingPanel/index.native.js.map +1 -1
- package/dist/esm/FloatingPanel/paintedBox.mjs +52 -0
- package/dist/esm/FloatingPanel/paintedBox.mjs.map +1 -0
- package/dist/esm/FloatingPanel/paintedBox.native.js +54 -0
- package/dist/esm/FloatingPanel/paintedBox.native.js.map +1 -0
- package/dist/esm/FloatingPanel/panelWidth.mjs +63 -0
- package/dist/esm/FloatingPanel/panelWidth.mjs.map +1 -0
- package/dist/esm/FloatingPanel/panelWidth.native.js +67 -0
- package/dist/esm/FloatingPanel/panelWidth.native.js.map +1 -0
- package/dist/esm/FloatingPanel/pointAnchor.mjs +34 -5
- package/dist/esm/FloatingPanel/pointAnchor.mjs.map +1 -1
- package/dist/esm/FloatingPanel/pointAnchor.native.js +37 -8
- package/dist/esm/FloatingPanel/pointAnchor.native.js.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.mjs +60 -6
- package/dist/esm/FloatingPanel/useFloatingPanel.mjs.map +1 -1
- package/dist/esm/FloatingPanel/useFloatingPanel.native.js +72 -6
- package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/esm/InputParts/index.mjs +19 -1
- package/dist/esm/InputParts/index.mjs.map +1 -1
- package/dist/esm/InputParts/index.native.js +20 -2
- package/dist/esm/InputParts/index.native.js.map +1 -1
- package/dist/esm/Wheel/NativeWheel.native.js +1 -1
- package/dist/esm/Wheel/NativeWheel.native.js.map +1 -1
- package/dist/esm/Wheel/index.mjs +2 -1
- package/dist/esm/Wheel/index.mjs.map +1 -1
- package/dist/esm/Wheel/index.native.js +4 -1
- package/dist/esm/Wheel/index.native.js.map +1 -1
- package/dist/esm/Wheel/wheelShared.mjs +6 -1
- package/dist/esm/Wheel/wheelShared.mjs.map +1 -1
- package/dist/esm/Wheel/wheelShared.native.js +7 -1
- package/dist/esm/Wheel/wheelShared.native.js.map +1 -1
- package/dist/esm/fields/Combobox/index.mjs +1 -0
- package/dist/esm/fields/Combobox/index.mjs.map +1 -1
- package/dist/esm/fields/Combobox/index.native.js +1 -0
- package/dist/esm/fields/Combobox/index.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs +6 -30
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js +11 -34
- package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/catalog.mjs +2 -28
- package/dist/esm/fields/DatePicker/catalog.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/catalog.native.js +2 -30
- package/dist/esm/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/index.native.js.map +1 -1
- package/dist/esm/fields/DatePicker/parts.mjs +11 -20
- package/dist/esm/fields/DatePicker/parts.mjs.map +1 -1
- package/dist/esm/fields/DatePicker/parts.native.js +13 -22
- package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/esm/fields/Select/index.mjs +66 -45
- package/dist/esm/fields/Select/index.mjs.map +1 -1
- package/dist/esm/fields/Select/index.native.js +70 -48
- package/dist/esm/fields/Select/index.native.js.map +1 -1
- package/dist/esm/fields/Select/shouldInlineChoices.mjs +3 -1
- package/dist/esm/fields/Select/shouldInlineChoices.mjs.map +1 -1
- package/dist/esm/fields/Select/shouldInlineChoices.native.js +3 -1
- package/dist/esm/fields/Select/shouldInlineChoices.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/catalog.mjs +4 -25
- package/dist/esm/fields/TimePicker/catalog.mjs.map +1 -1
- package/dist/esm/fields/TimePicker/catalog.native.js +7 -29
- package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
- package/dist/esm/fields/TimePicker/parts.mjs +8 -21
- package/dist/esm/fields/TimePicker/parts.mjs.map +1 -1
- package/dist/esm/fields/TimePicker/parts.native.js +8 -21
- package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/esm/index.mjs +2 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +2 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/shared/floatingList.mjs +14 -5
- package/dist/esm/shared/floatingList.mjs.map +1 -1
- package/dist/esm/shared/floatingList.native.js +16 -5
- package/dist/esm/shared/floatingList.native.js.map +1 -1
- package/dist/jsx/Button/circleGlyph.mjs +3 -0
- package/dist/jsx/Button/circleGlyph.mjs.map +1 -0
- package/dist/jsx/Button/circleGlyph.native.js +31 -0
- package/dist/jsx/Button/circleGlyph.native.js.map +1 -0
- package/dist/jsx/Button/index.mjs +18 -2
- package/dist/jsx/Button/index.mjs.map +1 -1
- package/dist/jsx/Button/index.native.js +19 -3
- package/dist/jsx/Button/index.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/PanelHeader.mjs +24 -0
- package/dist/jsx/FloatingPanel/PanelHeader.mjs.map +1 -0
- package/dist/jsx/FloatingPanel/PanelHeader.native.js +53 -0
- package/dist/jsx/FloatingPanel/PanelHeader.native.js.map +1 -0
- package/dist/jsx/FloatingPanel/echoContext.mjs +35 -0
- package/dist/jsx/FloatingPanel/echoContext.mjs.map +1 -0
- package/dist/jsx/FloatingPanel/echoContext.native.js +71 -0
- package/dist/jsx/FloatingPanel/echoContext.native.js.map +1 -0
- package/dist/jsx/FloatingPanel/iconEcho.mjs +77 -0
- package/dist/jsx/FloatingPanel/iconEcho.mjs.map +1 -0
- package/dist/jsx/FloatingPanel/iconEcho.native.js +114 -0
- package/dist/jsx/FloatingPanel/iconEcho.native.js.map +1 -0
- package/dist/jsx/FloatingPanel/index.mjs +373 -90
- package/dist/jsx/FloatingPanel/index.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/index.native.js +164 -20
- package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/paintedBox.mjs +52 -0
- package/dist/jsx/FloatingPanel/paintedBox.mjs.map +1 -0
- package/dist/jsx/FloatingPanel/paintedBox.native.js +85 -0
- package/dist/jsx/FloatingPanel/paintedBox.native.js.map +1 -0
- package/dist/jsx/FloatingPanel/panelWidth.mjs +63 -0
- package/dist/jsx/FloatingPanel/panelWidth.mjs.map +1 -0
- package/dist/jsx/FloatingPanel/panelWidth.native.js +99 -0
- package/dist/jsx/FloatingPanel/panelWidth.native.js.map +1 -0
- package/dist/jsx/FloatingPanel/pointAnchor.mjs +34 -5
- package/dist/jsx/FloatingPanel/pointAnchor.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/pointAnchor.native.js +37 -8
- package/dist/jsx/FloatingPanel/pointAnchor.native.js.map +1 -1
- package/dist/jsx/FloatingPanel/useFloatingPanel.mjs +60 -6
- package/dist/jsx/FloatingPanel/useFloatingPanel.mjs.map +1 -1
- package/dist/jsx/FloatingPanel/useFloatingPanel.native.js +72 -5
- package/dist/jsx/FloatingPanel/useFloatingPanel.native.js.map +1 -1
- package/dist/jsx/InputParts/index.mjs +19 -1
- package/dist/jsx/InputParts/index.mjs.map +1 -1
- package/dist/jsx/InputParts/index.native.js +19 -1
- package/dist/jsx/InputParts/index.native.js.map +1 -1
- package/dist/jsx/Wheel/NativeWheel.native.js +1 -1
- package/dist/jsx/Wheel/NativeWheel.native.js.map +1 -1
- package/dist/jsx/Wheel/index.mjs +2 -1
- package/dist/jsx/Wheel/index.mjs.map +1 -1
- package/dist/jsx/Wheel/index.native.js +4 -1
- package/dist/jsx/Wheel/index.native.js.map +1 -1
- package/dist/jsx/Wheel/wheelShared.mjs +6 -1
- package/dist/jsx/Wheel/wheelShared.mjs.map +1 -1
- package/dist/jsx/Wheel/wheelShared.native.js +7 -1
- package/dist/jsx/Wheel/wheelShared.native.js.map +1 -1
- package/dist/jsx/fields/Combobox/index.mjs +1 -0
- package/dist/jsx/fields/Combobox/index.mjs.map +1 -1
- package/dist/jsx/fields/Combobox/index.native.js +1 -0
- package/dist/jsx/fields/Combobox/index.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs +6 -30
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js +11 -34
- package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/DatetimePicker.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/catalog.mjs +2 -28
- package/dist/jsx/fields/DatePicker/catalog.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/catalog.native.js +2 -30
- package/dist/jsx/fields/DatePicker/catalog.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/DatePicker/parts.mjs +11 -20
- package/dist/jsx/fields/DatePicker/parts.mjs.map +1 -1
- package/dist/jsx/fields/DatePicker/parts.native.js +13 -22
- package/dist/jsx/fields/DatePicker/parts.native.js.map +1 -1
- package/dist/jsx/fields/Select/index.mjs +66 -45
- package/dist/jsx/fields/Select/index.mjs.map +1 -1
- package/dist/jsx/fields/Select/index.native.js +69 -47
- package/dist/jsx/fields/Select/index.native.js.map +1 -1
- package/dist/jsx/fields/Select/shouldInlineChoices.mjs +3 -1
- package/dist/jsx/fields/Select/shouldInlineChoices.mjs.map +1 -1
- package/dist/jsx/fields/Select/shouldInlineChoices.native.js +3 -1
- package/dist/jsx/fields/Select/shouldInlineChoices.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/catalog.mjs +4 -25
- package/dist/jsx/fields/TimePicker/catalog.mjs.map +1 -1
- package/dist/jsx/fields/TimePicker/catalog.native.js +7 -29
- package/dist/jsx/fields/TimePicker/catalog.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/index.native.js.map +1 -1
- package/dist/jsx/fields/TimePicker/parts.mjs +8 -21
- package/dist/jsx/fields/TimePicker/parts.mjs.map +1 -1
- package/dist/jsx/fields/TimePicker/parts.native.js +8 -21
- package/dist/jsx/fields/TimePicker/parts.native.js.map +1 -1
- package/dist/jsx/index.js +2 -1
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +2 -1
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +2 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/shared/floatingList.mjs +14 -5
- package/dist/jsx/shared/floatingList.mjs.map +1 -1
- package/dist/jsx/shared/floatingList.native.js +15 -4
- package/dist/jsx/shared/floatingList.native.js.map +1 -1
- package/package.json +8 -8
- package/src/Button/circleGlyph.ts +6 -0
- package/src/Button/index.tsx +25 -7
- package/src/FloatingPanel/FloatingPanel.echoStretch.spec.tsx +67 -0
- package/src/FloatingPanel/FloatingPanel.iconEcho.spec.tsx +297 -0
- package/src/FloatingPanel/FloatingPanel.menuFace.native.spec.tsx +280 -3
- package/src/FloatingPanel/FloatingPanel.seamlessCover.spec.tsx +237 -0
- package/src/FloatingPanel/PanelHeader.tsx +26 -0
- package/src/FloatingPanel/echoContext.ts +67 -0
- package/src/FloatingPanel/iconEcho.tsx +118 -0
- package/src/FloatingPanel/index.native.tsx +220 -12
- package/src/FloatingPanel/index.tsx +539 -109
- package/src/FloatingPanel/paintedBox.spec.ts +95 -0
- package/src/FloatingPanel/paintedBox.ts +75 -0
- package/src/FloatingPanel/panelWidth.spec.ts +158 -0
- package/src/FloatingPanel/panelWidth.ts +122 -0
- package/src/FloatingPanel/panelWidthContract.spec.ts +10 -10
- package/src/FloatingPanel/pointAnchor.spec.ts +111 -2
- package/src/FloatingPanel/pointAnchor.ts +56 -3
- package/src/FloatingPanel/useFloatingPanel.spec.tsx +124 -4
- package/src/FloatingPanel/useFloatingPanel.ts +112 -34
- package/src/InputParts/index.tsx +26 -0
- package/src/Wheel/NativeWheel.native.tsx +1 -1
- package/src/Wheel/Wheel.spec.tsx +9 -0
- package/src/Wheel/index.tsx +12 -3
- package/src/Wheel/wheelShared.ts +6 -2
- package/src/fields/Combobox/index.tsx +1 -0
- package/src/fields/DatePicker/DatePicker.stories.tsx +3 -3
- package/src/fields/DatePicker/DatetimePicker.catalog.tsx +17 -45
- package/src/fields/DatePicker/DatetimePicker.native.tsx +3 -0
- package/src/fields/DatePicker/catalog.tsx +8 -39
- package/src/fields/DatePicker/index.native.tsx +3 -0
- package/src/fields/DatePicker/parts.tsx +13 -23
- package/src/fields/DatePicker/seamlessCover.spec.tsx +180 -0
- package/src/fields/DatePicker/touchWeb.spec.tsx +109 -167
- package/src/fields/Select/Select.containingBlock.spec.tsx +191 -0
- package/src/fields/Select/Select.stories.tsx +43 -0
- package/src/fields/Select/index.tsx +109 -45
- package/src/fields/Select/shouldInlineChoices.spec.ts +13 -0
- package/src/fields/Select/shouldInlineChoices.ts +6 -0
- package/src/fields/TimePicker/catalog.tsx +12 -33
- package/src/fields/TimePicker/index.native.tsx +2 -0
- package/src/fields/TimePicker/parts.tsx +6 -20
- package/src/index.ts +3 -0
- package/src/shared/floatingList.tsx +21 -5
- package/types/Button/circleGlyph.d.ts +7 -0
- package/types/Button/circleGlyph.d.ts.map +1 -0
- package/types/Button/index.d.ts +2 -6
- package/types/Button/index.d.ts.map +1 -1
- package/types/FloatingPanel/PanelHeader.d.ts +9 -0
- package/types/FloatingPanel/PanelHeader.d.ts.map +1 -0
- package/types/FloatingPanel/echoContext.d.ts +38 -0
- package/types/FloatingPanel/echoContext.d.ts.map +1 -0
- package/types/FloatingPanel/iconEcho.d.ts +29 -0
- package/types/FloatingPanel/iconEcho.d.ts.map +1 -0
- package/types/FloatingPanel/index.d.ts +69 -0
- package/types/FloatingPanel/index.d.ts.map +1 -1
- package/types/FloatingPanel/index.native.d.ts +9 -1
- package/types/FloatingPanel/index.native.d.ts.map +1 -1
- package/types/FloatingPanel/paintedBox.d.ts +29 -0
- package/types/FloatingPanel/paintedBox.d.ts.map +1 -0
- package/types/FloatingPanel/panelWidth.d.ts +71 -0
- package/types/FloatingPanel/panelWidth.d.ts.map +1 -0
- package/types/FloatingPanel/pointAnchor.d.ts +17 -1
- package/types/FloatingPanel/pointAnchor.d.ts.map +1 -1
- package/types/FloatingPanel/useFloatingPanel.d.ts +33 -2
- package/types/FloatingPanel/useFloatingPanel.d.ts.map +1 -1
- package/types/InputParts/index.d.ts.map +1 -1
- package/types/Wheel/index.d.ts.map +1 -1
- package/types/Wheel/wheelShared.d.ts +2 -1
- package/types/Wheel/wheelShared.d.ts.map +1 -1
- package/types/fields/Combobox/index.d.ts.map +1 -1
- package/types/fields/DatePicker/DatetimePicker.catalog.d.ts +6 -0
- package/types/fields/DatePicker/DatetimePicker.catalog.d.ts.map +1 -1
- package/types/fields/DatePicker/DatetimePicker.native.d.ts +3 -0
- package/types/fields/DatePicker/DatetimePicker.native.d.ts.map +1 -1
- package/types/fields/DatePicker/catalog.d.ts +6 -0
- package/types/fields/DatePicker/catalog.d.ts.map +1 -1
- package/types/fields/DatePicker/index.native.d.ts +3 -0
- package/types/fields/DatePicker/index.native.d.ts.map +1 -1
- package/types/fields/DatePicker/parts.d.ts +5 -7
- package/types/fields/DatePicker/parts.d.ts.map +1 -1
- package/types/fields/Select/index.d.ts +8 -1
- package/types/fields/Select/index.d.ts.map +1 -1
- package/types/fields/Select/shouldInlineChoices.d.ts +5 -1
- package/types/fields/Select/shouldInlineChoices.d.ts.map +1 -1
- package/types/fields/TimePicker/catalog.d.ts +7 -1
- package/types/fields/TimePicker/catalog.d.ts.map +1 -1
- package/types/fields/TimePicker/index.native.d.ts +2 -0
- package/types/fields/TimePicker/index.native.d.ts.map +1 -1
- package/types/fields/TimePicker/parts.d.ts +1 -3
- package/types/fields/TimePicker/parts.d.ts.map +1 -1
- package/types/index.d.ts +3 -0
- package/types/index.d.ts.map +1 -1
- package/types/shared/floatingList.d.ts +5 -1
- package/types/shared/floatingList.d.ts.map +1 -1
- package/dist/cjs/shared/touchWebPicker.cjs +0 -136
- package/dist/cjs/shared/touchWebPicker.native.js +0 -154
- package/dist/cjs/shared/touchWebPicker.native.js.map +0 -1
- package/dist/esm/shared/touchWebPicker.mjs +0 -105
- package/dist/esm/shared/touchWebPicker.mjs.map +0 -1
- package/dist/esm/shared/touchWebPicker.native.js +0 -120
- package/dist/esm/shared/touchWebPicker.native.js.map +0 -1
- package/dist/jsx/shared/touchWebPicker.mjs +0 -105
- package/dist/jsx/shared/touchWebPicker.mjs.map +0 -1
- package/dist/jsx/shared/touchWebPicker.native.js +0 -154
- package/dist/jsx/shared/touchWebPicker.native.js.map +0 -1
- package/src/shared/touchWebPicker.spec.ts +0 -98
- package/src/shared/touchWebPicker.tsx +0 -158
- package/types/shared/touchWebPicker.d.ts +0 -40
- package/types/shared/touchWebPicker.d.ts.map +0 -1
|
@@ -373,7 +373,8 @@ function FloatingSelectCore({
|
|
|
373
373
|
groupLabel,
|
|
374
374
|
multiple,
|
|
375
375
|
selectedOrder,
|
|
376
|
-
dismissible
|
|
376
|
+
dismissible,
|
|
377
|
+
panelWidth
|
|
377
378
|
}) {
|
|
378
379
|
const overlayZIndex = (0, import_overlayStack.useOverlayZIndex)("dropdown");
|
|
379
380
|
const {
|
|
@@ -447,6 +448,8 @@ function FloatingSelectCore({
|
|
|
447
448
|
const growUpOnlyRef = (0, import_react.useRef)(false);
|
|
448
449
|
const growDownOnlyRef = (0, import_react.useRef)(false);
|
|
449
450
|
const lastScrollTopRef = (0, import_react.useRef)(0);
|
|
451
|
+
const dropUpRef = (0, import_react.useRef)(false);
|
|
452
|
+
const [dropUp, setDropUp] = (0, import_react.useState)(false);
|
|
450
453
|
const repositionRef = (0, import_react.useRef)(null);
|
|
451
454
|
const panel = (0, import_FloatingPanel.useFloatingPanel)({
|
|
452
455
|
open,
|
|
@@ -464,7 +467,9 @@ function FloatingSelectCore({
|
|
|
464
467
|
growDownOnlyRef.current = false;
|
|
465
468
|
lastScrollTopRef.current = 0;
|
|
466
469
|
programmaticScrollRef.current = 0;
|
|
467
|
-
|
|
470
|
+
dropUpRef.current = false;
|
|
471
|
+
},
|
|
472
|
+
panelWidth
|
|
468
473
|
});
|
|
469
474
|
const {
|
|
470
475
|
scrollRef: dragScrollRef,
|
|
@@ -531,32 +536,33 @@ function FloatingSelectCore({
|
|
|
531
536
|
}
|
|
532
537
|
const triggerBounds = trigger.getBoundingClientRect();
|
|
533
538
|
const viewportHeight = window.innerHeight;
|
|
539
|
+
const originTop = (0, import_containingBlock.fixedContainingBlockOrigin)(dropdownElement).top;
|
|
534
540
|
const computedStyle = getComputedStyle(dropdownElement);
|
|
535
541
|
const borderTopWidth = parseFloat(computedStyle.borderTopWidth) || 0;
|
|
536
542
|
const borderBottomWidth = parseFloat(computedStyle.borderBottomWidth) || 0;
|
|
537
543
|
const totalBorderWidth = borderTopWidth + borderBottomWidth;
|
|
538
544
|
const scrollContentHeight = dropdownElement.scrollHeight;
|
|
539
545
|
const totalContentHeight = scrollContentHeight + totalBorderWidth;
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
idealTop = triggerBounds.top - (selectedItem.offsetTop ?? 0);
|
|
546
|
+
const firstPlacement = pinnedTopRef.current === 0 && pinnedHeightRef.current === 0;
|
|
547
|
+
const roomBelow = viewportHeight - import_FloatingPanel.panelViewportPadding - triggerBounds.top;
|
|
548
|
+
const roomAbove = triggerBounds.bottom - import_FloatingPanel.panelViewportPadding;
|
|
549
|
+
if (firstPlacement) {
|
|
550
|
+
dropUpRef.current = totalContentHeight > roomBelow && roomAbove > roomBelow;
|
|
551
|
+
setDropUp(dropUpRef.current);
|
|
547
552
|
}
|
|
548
|
-
const
|
|
553
|
+
const idealTop = dropUpRef.current ? triggerBounds.bottom - totalContentHeight : triggerBounds.top;
|
|
554
|
+
const idealBottom = dropUpRef.current ? triggerBounds.bottom : idealTop + totalContentHeight;
|
|
549
555
|
const pinnedTop = Math.max(import_FloatingPanel.panelViewportPadding, idealTop);
|
|
550
556
|
const pinnedBottom = Math.min(viewportHeight - import_FloatingPanel.panelViewportPadding, idealBottom);
|
|
551
557
|
const pinnedHeight = Math.max(120, pinnedBottom - pinnedTop);
|
|
552
|
-
if (
|
|
558
|
+
if (firstPlacement) {
|
|
553
559
|
pinnedTopRef.current = pinnedTop;
|
|
554
560
|
pinnedHeightRef.current = pinnedHeight;
|
|
555
561
|
}
|
|
556
562
|
let top = pinnedTopRef.current;
|
|
557
563
|
let height = pinnedHeightRef.current;
|
|
558
564
|
if (grownRef.current) {
|
|
559
|
-
const canGrowDown = Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top + height));
|
|
565
|
+
const canGrowDown = dropUpRef.current ? 0 : Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top + height));
|
|
560
566
|
height += canGrowDown;
|
|
561
567
|
const canGrowUp = Math.max(0, top - import_FloatingPanel.panelViewportPadding);
|
|
562
568
|
top -= canGrowUp;
|
|
@@ -567,7 +573,7 @@ function FloatingSelectCore({
|
|
|
567
573
|
top -= canGrowUp;
|
|
568
574
|
height += canGrowUp;
|
|
569
575
|
}
|
|
570
|
-
if (growDownOnlyRef.current) {
|
|
576
|
+
if (growDownOnlyRef.current && !dropUpRef.current) {
|
|
571
577
|
const canGrowDown = Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top + height));
|
|
572
578
|
height += canGrowDown;
|
|
573
579
|
}
|
|
@@ -583,40 +589,41 @@ function FloatingSelectCore({
|
|
|
583
589
|
}
|
|
584
590
|
}
|
|
585
591
|
const cachedOverlayStyle = overlayStyle.current;
|
|
586
|
-
if (!cachedOverlayStyle || cachedOverlayStyle.top !== top || cachedOverlayStyle.maxHeight !== height) {
|
|
587
|
-
dropdownElement.style.top = `${top}px`;
|
|
592
|
+
if (!cachedOverlayStyle || cachedOverlayStyle.top !== top - originTop || cachedOverlayStyle.maxHeight !== height) {
|
|
593
|
+
dropdownElement.style.top = `${top - originTop}px`;
|
|
588
594
|
dropdownElement.style.maxHeight = `${height}px`;
|
|
589
595
|
dropdownElement.style.height = "";
|
|
590
596
|
overlayStyle.current = {
|
|
591
|
-
top,
|
|
597
|
+
top: top - originTop,
|
|
592
598
|
maxHeight: height
|
|
593
599
|
};
|
|
594
600
|
void dropdownElement.offsetHeight;
|
|
595
601
|
}
|
|
596
|
-
if (!grownRef.current && !growUpOnlyRef.current && !growDownOnlyRef.current) {
|
|
597
|
-
const
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
const
|
|
601
|
-
|
|
602
|
+
if (isInitial && selectedIndex >= 0 && !grownRef.current && !growUpOnlyRef.current && !growDownOnlyRef.current) {
|
|
603
|
+
const echoHeight = triggerBounds.height;
|
|
604
|
+
const rowBottom = selectedItem.offsetTop + selectedItem.offsetHeight;
|
|
605
|
+
if (dropUpRef.current) {
|
|
606
|
+
const maxScrollTop = dropdownElement.scrollHeight - dropdownElement.clientHeight;
|
|
607
|
+
const wanted = rowBottom - (dropdownElement.clientHeight - echoHeight);
|
|
608
|
+
if (wanted > 0) {
|
|
602
609
|
programmaticScrollRef.current++;
|
|
603
|
-
dropdownElement.scrollTop =
|
|
604
|
-
}
|
|
605
|
-
if (Math.abs(neededScroll - clampedScrollTop) > 0.5) {
|
|
606
|
-
const scrollDeficit = neededScroll - clampedScrollTop;
|
|
607
|
-
top -= scrollDeficit;
|
|
608
|
-
top = Math.max(import_FloatingPanel.panelViewportPadding, top);
|
|
609
|
-
const remainingContentHeight = totalContentHeight - clampedScrollTop;
|
|
610
|
-
const adjustedMaxHeight = Math.min(remainingContentHeight, viewportHeight - top - import_FloatingPanel.panelViewportPadding);
|
|
611
|
-
dropdownElement.style.top = `${top}px`;
|
|
612
|
-
dropdownElement.style.maxHeight = `${adjustedMaxHeight}px`;
|
|
613
|
-
overlayStyle.current = {
|
|
614
|
-
top,
|
|
615
|
-
maxHeight: adjustedMaxHeight
|
|
616
|
-
};
|
|
610
|
+
dropdownElement.scrollTop = Math.min(wanted, maxScrollTop);
|
|
617
611
|
}
|
|
612
|
+
} else if (rowBottom > dropdownElement.clientHeight) {
|
|
613
|
+
const maxScrollTop = dropdownElement.scrollHeight - dropdownElement.clientHeight;
|
|
614
|
+
programmaticScrollRef.current++;
|
|
615
|
+
dropdownElement.scrollTop = Math.max(0, Math.min(selectedItem.offsetTop - echoHeight, maxScrollTop));
|
|
618
616
|
}
|
|
619
617
|
}
|
|
618
|
+
(0, import_FloatingPanel.placeEchoOverTrigger)(dropdownElement, {
|
|
619
|
+
triggerLeft: triggerBounds.left,
|
|
620
|
+
triggerRight: triggerBounds.right,
|
|
621
|
+
panelLeft: dropdownElement.getBoundingClientRect().left,
|
|
622
|
+
panelWidth: dropdownElement.offsetWidth,
|
|
623
|
+
rtl: getComputedStyle(trigger).direction === "rtl"
|
|
624
|
+
}, {
|
|
625
|
+
stretch: panelWidth !== void 0
|
|
626
|
+
});
|
|
620
627
|
panel.initializingRef.current = false;
|
|
621
628
|
void dropdownElement.offsetHeight;
|
|
622
629
|
if (isInitial) dropdownElement.style.transition = panel.panelTransition;
|
|
@@ -633,7 +640,7 @@ function FloatingSelectCore({
|
|
|
633
640
|
(0, import_react.useLayoutEffect)(() => {
|
|
634
641
|
if (!open || !panel.mounted) return;
|
|
635
642
|
repositionOverlay();
|
|
636
|
-
}, [open, panel.mounted, selectedIndex, repositionOverlay, panel.y]);
|
|
643
|
+
}, [open, panel.mounted, selectedIndex, repositionOverlay, panel.x, panel.y]);
|
|
637
644
|
const onMatch = (0, import_react.useCallback)(index => {
|
|
638
645
|
if (open) {
|
|
639
646
|
setActiveIndex(index);
|
|
@@ -914,7 +921,7 @@ function FloatingSelectCore({
|
|
|
914
921
|
opacity: panel.visible ? 1 : 0,
|
|
915
922
|
transform: panel.visible ? "scale(1)" : "scale(0.96)",
|
|
916
923
|
transition: panel.panelTransition,
|
|
917
|
-
transformOrigin: panel.placement.startsWith("top") ? "bottom left" : "top left",
|
|
924
|
+
transformOrigin: dropUp || panel.placement.startsWith("top") ? "bottom left" : "top left",
|
|
918
925
|
...dragProps.style
|
|
919
926
|
},
|
|
920
927
|
onPointerDown: dragProps.onPointerDown,
|
|
@@ -953,11 +960,19 @@ function FloatingSelectCore({
|
|
|
953
960
|
borderRadius: panel.dropdownRadius,
|
|
954
961
|
"data-testid": "select-dropdown",
|
|
955
962
|
paddingVertical: 0,
|
|
956
|
-
|
|
963
|
+
paddingBottom: panel.coverCornerInset || 0,
|
|
964
|
+
children: [!beside && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_FloatingPanel.TriggerEchoRow, {
|
|
965
|
+
sourceRef: panel.triggerRef,
|
|
966
|
+
source: selectedOption?.label ?? placeholder,
|
|
967
|
+
onPress: () => setOpen(false),
|
|
968
|
+
presentational: true,
|
|
969
|
+
edge: dropUp ? "bottom" : "top"
|
|
970
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_floatingList.ScrollArrow, {
|
|
957
971
|
direction: "up",
|
|
958
972
|
scrollRef: panel.refs.floating,
|
|
959
973
|
visible: panel.arrowUp,
|
|
960
|
-
arrowScrollDirRef: panel.arrowScrollDirRef
|
|
974
|
+
arrowScrollDirRef: panel.arrowScrollDirRef,
|
|
975
|
+
topOffset: dropUp || beside ? 0 : panel.triggerRef.current?.getBoundingClientRect().height ?? 0
|
|
961
976
|
}), groupLabel && /* @__PURE__ */(0, import_jsx_runtime.jsx)(GroupHeader, {
|
|
962
977
|
color: textColor,
|
|
963
978
|
paddingHorizontal: knobProps.panelPadding.padding,
|
|
@@ -990,7 +1005,8 @@ function FloatingSelectCore({
|
|
|
990
1005
|
direction: "down",
|
|
991
1006
|
scrollRef: panel.refs.floating,
|
|
992
1007
|
visible: panel.arrowDown,
|
|
993
|
-
arrowScrollDirRef: panel.arrowScrollDirRef
|
|
1008
|
+
arrowScrollDirRef: panel.arrowScrollDirRef,
|
|
1009
|
+
bottomOffset: dropUp ? panel.triggerRef.current?.getBoundingClientRect().height ?? 0 : 0
|
|
994
1010
|
})]
|
|
995
1011
|
})
|
|
996
1012
|
})
|
|
@@ -1012,7 +1028,8 @@ function NativeSelectCore({
|
|
|
1012
1028
|
multiple,
|
|
1013
1029
|
selectedOrder,
|
|
1014
1030
|
dismissible,
|
|
1015
|
-
native
|
|
1031
|
+
native,
|
|
1032
|
+
panelWidth
|
|
1016
1033
|
}) {
|
|
1017
1034
|
const insideOverlay = (0, import_overlayStack.useInsideOverlay)();
|
|
1018
1035
|
const compactFace = (0, import_compactFace.pickerCompactFace)(options.length);
|
|
@@ -1273,6 +1290,7 @@ function NativeSelectCore({
|
|
|
1273
1290
|
},
|
|
1274
1291
|
sheet: true,
|
|
1275
1292
|
compactFace,
|
|
1293
|
+
panelWidth,
|
|
1276
1294
|
...(asMenu && insideOverlay && (0, import_shouldInlineChoices.opensBesideTrigger)(options.length) ? {
|
|
1277
1295
|
anchorMode: "attach",
|
|
1278
1296
|
triggerEcho: false
|
|
@@ -1395,6 +1413,7 @@ function Select({
|
|
|
1395
1413
|
dismissible,
|
|
1396
1414
|
skeleton,
|
|
1397
1415
|
native,
|
|
1416
|
+
panelWidth,
|
|
1398
1417
|
"aria-label": ariaLabel,
|
|
1399
1418
|
...rest
|
|
1400
1419
|
}) {
|
|
@@ -1431,7 +1450,8 @@ function Select({
|
|
|
1431
1450
|
const pushed = !inline && !inTableCell && Boolean(rowLabel) && (0, import_shouldInlineChoices.shouldPushChoices)({
|
|
1432
1451
|
inSheet: Boolean(sheetNavigation),
|
|
1433
1452
|
multiple,
|
|
1434
|
-
options
|
|
1453
|
+
options,
|
|
1454
|
+
panelWidth
|
|
1435
1455
|
});
|
|
1436
1456
|
if (!inline) {
|
|
1437
1457
|
(0, import_devWarn.warnSelectTooFewOptions)({
|
|
@@ -1548,7 +1568,8 @@ function Select({
|
|
|
1548
1568
|
multiple,
|
|
1549
1569
|
selectedOrder,
|
|
1550
1570
|
dismissible,
|
|
1551
|
-
native
|
|
1571
|
+
native,
|
|
1572
|
+
panelWidth
|
|
1552
1573
|
});
|
|
1553
1574
|
};
|
|
1554
1575
|
if (!resolvedForm || !name) {
|
|
@@ -479,10 +479,11 @@ function FloatingSelectCore(param) {
|
|
|
479
479
|
groupLabel,
|
|
480
480
|
multiple,
|
|
481
481
|
selectedOrder,
|
|
482
|
-
dismissible
|
|
482
|
+
dismissible,
|
|
483
|
+
panelWidth
|
|
483
484
|
} = param;
|
|
484
|
-
var _ref, _ref1, _ref2, _panel_x;
|
|
485
|
-
var _overlayStyle_current;
|
|
485
|
+
var _ref, _ref1, _ref2, _panel_x, _ref3, _ref4, _ref5;
|
|
486
|
+
var _overlayStyle_current, _panel_triggerRef_current, _panel_triggerRef_current1;
|
|
486
487
|
var overlayZIndex = (0, import_overlayStack.useOverlayZIndex)("dropdown");
|
|
487
488
|
var {
|
|
488
489
|
style: elevatedSurfaceStyle,
|
|
@@ -595,6 +596,8 @@ function FloatingSelectCore(param) {
|
|
|
595
596
|
var growUpOnlyRef = (0, import_react.useRef)(false);
|
|
596
597
|
var growDownOnlyRef = (0, import_react.useRef)(false);
|
|
597
598
|
var lastScrollTopRef = (0, import_react.useRef)(0);
|
|
599
|
+
var dropUpRef = (0, import_react.useRef)(false);
|
|
600
|
+
var [dropUp, setDropUp] = (0, import_react.useState)(false);
|
|
598
601
|
var repositionRef = (0, import_react.useRef)(null);
|
|
599
602
|
var panel = (0, import_FloatingPanel.useFloatingPanel)({
|
|
600
603
|
open,
|
|
@@ -612,7 +615,9 @@ function FloatingSelectCore(param) {
|
|
|
612
615
|
growDownOnlyRef.current = false;
|
|
613
616
|
lastScrollTopRef.current = 0;
|
|
614
617
|
programmaticScrollRef.current = 0;
|
|
615
|
-
|
|
618
|
+
dropUpRef.current = false;
|
|
619
|
+
},
|
|
620
|
+
panelWidth
|
|
616
621
|
});
|
|
617
622
|
var {
|
|
618
623
|
scrollRef: dragScrollRef,
|
|
@@ -679,33 +684,33 @@ function FloatingSelectCore(param) {
|
|
|
679
684
|
}
|
|
680
685
|
var triggerBounds = trigger.getBoundingClientRect();
|
|
681
686
|
var viewportHeight = window.innerHeight;
|
|
687
|
+
var originTop = (0, import_containingBlock.fixedContainingBlockOrigin)(dropdownElement).top;
|
|
682
688
|
var computedStyle = getComputedStyle(dropdownElement);
|
|
683
689
|
var borderTopWidth = parseFloat(computedStyle.borderTopWidth) || 0;
|
|
684
690
|
var borderBottomWidth = parseFloat(computedStyle.borderBottomWidth) || 0;
|
|
685
691
|
var totalBorderWidth = borderTopWidth + borderBottomWidth;
|
|
686
692
|
var scrollContentHeight = dropdownElement.scrollHeight;
|
|
687
693
|
var totalContentHeight = scrollContentHeight + totalBorderWidth;
|
|
688
|
-
var
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
var _selectedItem_offsetTop;
|
|
695
|
-
idealTop = triggerBounds.top - ((_selectedItem_offsetTop = selectedItem.offsetTop) !== null && _selectedItem_offsetTop !== void 0 ? _selectedItem_offsetTop : 0);
|
|
694
|
+
var firstPlacement = pinnedTopRef.current === 0 && pinnedHeightRef.current === 0;
|
|
695
|
+
var roomBelow = viewportHeight - import_FloatingPanel.panelViewportPadding - triggerBounds.top;
|
|
696
|
+
var roomAbove = triggerBounds.bottom - import_FloatingPanel.panelViewportPadding;
|
|
697
|
+
if (firstPlacement) {
|
|
698
|
+
dropUpRef.current = totalContentHeight > roomBelow && roomAbove > roomBelow;
|
|
699
|
+
setDropUp(dropUpRef.current);
|
|
696
700
|
}
|
|
697
|
-
var
|
|
701
|
+
var idealTop = dropUpRef.current ? triggerBounds.bottom - totalContentHeight : triggerBounds.top;
|
|
702
|
+
var idealBottom = dropUpRef.current ? triggerBounds.bottom : idealTop + totalContentHeight;
|
|
698
703
|
var pinnedTop = Math.max(import_FloatingPanel.panelViewportPadding, idealTop);
|
|
699
704
|
var pinnedBottom = Math.min(viewportHeight - import_FloatingPanel.panelViewportPadding, idealBottom);
|
|
700
705
|
var pinnedHeight = Math.max(120, pinnedBottom - pinnedTop);
|
|
701
|
-
if (
|
|
706
|
+
if (firstPlacement) {
|
|
702
707
|
pinnedTopRef.current = pinnedTop;
|
|
703
708
|
pinnedHeightRef.current = pinnedHeight;
|
|
704
709
|
}
|
|
705
710
|
var top1 = pinnedTopRef.current;
|
|
706
711
|
var height = pinnedHeightRef.current;
|
|
707
712
|
if (grownRef.current) {
|
|
708
|
-
var canGrowDown = Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top1 + height));
|
|
713
|
+
var canGrowDown = dropUpRef.current ? 0 : Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top1 + height));
|
|
709
714
|
height += canGrowDown;
|
|
710
715
|
var canGrowUp = Math.max(0, top1 - import_FloatingPanel.panelViewportPadding);
|
|
711
716
|
top1 -= canGrowUp;
|
|
@@ -716,7 +721,7 @@ function FloatingSelectCore(param) {
|
|
|
716
721
|
top1 -= canGrowUp1;
|
|
717
722
|
height += canGrowUp1;
|
|
718
723
|
}
|
|
719
|
-
if (growDownOnlyRef.current) {
|
|
724
|
+
if (growDownOnlyRef.current && !dropUpRef.current) {
|
|
720
725
|
var canGrowDown1 = Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top1 + height));
|
|
721
726
|
height += canGrowDown1;
|
|
722
727
|
}
|
|
@@ -732,40 +737,41 @@ function FloatingSelectCore(param) {
|
|
|
732
737
|
}
|
|
733
738
|
}
|
|
734
739
|
var cachedOverlayStyle = overlayStyle.current;
|
|
735
|
-
if (!cachedOverlayStyle || cachedOverlayStyle.top !== top1 || cachedOverlayStyle.maxHeight !== height) {
|
|
736
|
-
dropdownElement.style.top = `${top1}px`;
|
|
740
|
+
if (!cachedOverlayStyle || cachedOverlayStyle.top !== top1 - originTop || cachedOverlayStyle.maxHeight !== height) {
|
|
741
|
+
dropdownElement.style.top = `${top1 - originTop}px`;
|
|
737
742
|
dropdownElement.style.maxHeight = `${height}px`;
|
|
738
743
|
dropdownElement.style.height = "";
|
|
739
744
|
overlayStyle.current = {
|
|
740
|
-
top: top1,
|
|
745
|
+
top: top1 - originTop,
|
|
741
746
|
maxHeight: height
|
|
742
747
|
};
|
|
743
748
|
void dropdownElement.offsetHeight;
|
|
744
749
|
}
|
|
745
|
-
if (!grownRef.current && !growUpOnlyRef.current && !growDownOnlyRef.current) {
|
|
746
|
-
var
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
var
|
|
750
|
-
|
|
750
|
+
if (isInitial1 && selectedIndex >= 0 && !grownRef.current && !growUpOnlyRef.current && !growDownOnlyRef.current) {
|
|
751
|
+
var echoHeight = triggerBounds.height;
|
|
752
|
+
var rowBottom = selectedItem.offsetTop + selectedItem.offsetHeight;
|
|
753
|
+
if (dropUpRef.current) {
|
|
754
|
+
var maxScrollTop = dropdownElement.scrollHeight - dropdownElement.clientHeight;
|
|
755
|
+
var wanted = rowBottom - (dropdownElement.clientHeight - echoHeight);
|
|
756
|
+
if (wanted > 0) {
|
|
751
757
|
programmaticScrollRef.current++;
|
|
752
|
-
dropdownElement.scrollTop =
|
|
753
|
-
}
|
|
754
|
-
if (Math.abs(neededScroll - clampedScrollTop) > 0.5) {
|
|
755
|
-
var scrollDeficit = neededScroll - clampedScrollTop;
|
|
756
|
-
top1 -= scrollDeficit;
|
|
757
|
-
top1 = Math.max(import_FloatingPanel.panelViewportPadding, top1);
|
|
758
|
-
var remainingContentHeight = totalContentHeight - clampedScrollTop;
|
|
759
|
-
var adjustedMaxHeight = Math.min(remainingContentHeight, viewportHeight - top1 - import_FloatingPanel.panelViewportPadding);
|
|
760
|
-
dropdownElement.style.top = `${top1}px`;
|
|
761
|
-
dropdownElement.style.maxHeight = `${adjustedMaxHeight}px`;
|
|
762
|
-
overlayStyle.current = {
|
|
763
|
-
top: top1,
|
|
764
|
-
maxHeight: adjustedMaxHeight
|
|
765
|
-
};
|
|
758
|
+
dropdownElement.scrollTop = Math.min(wanted, maxScrollTop);
|
|
766
759
|
}
|
|
760
|
+
} else if (rowBottom > dropdownElement.clientHeight) {
|
|
761
|
+
var maxScrollTop1 = dropdownElement.scrollHeight - dropdownElement.clientHeight;
|
|
762
|
+
programmaticScrollRef.current++;
|
|
763
|
+
dropdownElement.scrollTop = Math.max(0, Math.min(selectedItem.offsetTop - echoHeight, maxScrollTop1));
|
|
767
764
|
}
|
|
768
765
|
}
|
|
766
|
+
(0, import_FloatingPanel.placeEchoOverTrigger)(dropdownElement, {
|
|
767
|
+
triggerLeft: triggerBounds.left,
|
|
768
|
+
triggerRight: triggerBounds.right,
|
|
769
|
+
panelLeft: dropdownElement.getBoundingClientRect().left,
|
|
770
|
+
panelWidth: dropdownElement.offsetWidth,
|
|
771
|
+
rtl: getComputedStyle(trigger).direction === "rtl"
|
|
772
|
+
}, {
|
|
773
|
+
stretch: panelWidth !== void 0
|
|
774
|
+
});
|
|
769
775
|
panel.initializingRef.current = false;
|
|
770
776
|
void dropdownElement.offsetHeight;
|
|
771
777
|
if (isInitial1) dropdownElement.style.transition = panel.panelTransition;
|
|
@@ -782,7 +788,7 @@ function FloatingSelectCore(param) {
|
|
|
782
788
|
(0, import_react.useLayoutEffect)(function () {
|
|
783
789
|
if (!open || !panel.mounted) return;
|
|
784
790
|
repositionOverlay();
|
|
785
|
-
}, [open, panel.mounted, selectedIndex, repositionOverlay, panel.y]);
|
|
791
|
+
}, [open, panel.mounted, selectedIndex, repositionOverlay, panel.x, panel.y]);
|
|
786
792
|
var onMatch = (0, import_react.useCallback)(function (index) {
|
|
787
793
|
if (open) {
|
|
788
794
|
setActiveIndex(index);
|
|
@@ -1103,7 +1109,7 @@ function FloatingSelectCore(param) {
|
|
|
1103
1109
|
opacity: panel.visible ? 1 : 0,
|
|
1104
1110
|
transform: panel.visible ? "scale(1)" : "scale(0.96)",
|
|
1105
1111
|
transition: panel.panelTransition,
|
|
1106
|
-
transformOrigin: panel.placement.startsWith("top") ? "bottom left" : "top left",
|
|
1112
|
+
transformOrigin: dropUp || panel.placement.startsWith("top") ? "bottom left" : "top left",
|
|
1107
1113
|
...dragProps.style
|
|
1108
1114
|
},
|
|
1109
1115
|
onPointerDown: dragProps.onPointerDown,
|
|
@@ -1146,11 +1152,21 @@ function FloatingSelectCore(param) {
|
|
|
1146
1152
|
borderRadius: panel.dropdownRadius,
|
|
1147
1153
|
"data-testid": "select-dropdown",
|
|
1148
1154
|
paddingVertical: 0,
|
|
1149
|
-
|
|
1155
|
+
paddingBottom: panel.coverCornerInset || 0,
|
|
1156
|
+
children: [!beside && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_FloatingPanel.TriggerEchoRow, {
|
|
1157
|
+
sourceRef: panel.triggerRef,
|
|
1158
|
+
source: (_ref3 = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref3 !== void 0 ? _ref3 : placeholder,
|
|
1159
|
+
onPress: function onPress() {
|
|
1160
|
+
return setOpen(false);
|
|
1161
|
+
},
|
|
1162
|
+
presentational: true,
|
|
1163
|
+
edge: dropUp ? "bottom" : "top"
|
|
1164
|
+
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_floatingList.ScrollArrow, {
|
|
1150
1165
|
direction: "up",
|
|
1151
1166
|
scrollRef: panel.refs.floating,
|
|
1152
1167
|
visible: panel.arrowUp,
|
|
1153
|
-
arrowScrollDirRef: panel.arrowScrollDirRef
|
|
1168
|
+
arrowScrollDirRef: panel.arrowScrollDirRef,
|
|
1169
|
+
topOffset: dropUp || beside ? 0 : (_ref4 = (_panel_triggerRef_current = panel.triggerRef.current) === null || _panel_triggerRef_current === void 0 ? void 0 : _panel_triggerRef_current.getBoundingClientRect().height) !== null && _ref4 !== void 0 ? _ref4 : 0
|
|
1154
1170
|
}), groupLabel && /* @__PURE__ */(0, import_jsx_runtime.jsx)(GroupHeader, {
|
|
1155
1171
|
color: textColor,
|
|
1156
1172
|
paddingHorizontal: knobProps.panelPadding.padding,
|
|
@@ -1187,7 +1203,8 @@ function FloatingSelectCore(param) {
|
|
|
1187
1203
|
direction: "down",
|
|
1188
1204
|
scrollRef: panel.refs.floating,
|
|
1189
1205
|
visible: panel.arrowDown,
|
|
1190
|
-
arrowScrollDirRef: panel.arrowScrollDirRef
|
|
1206
|
+
arrowScrollDirRef: panel.arrowScrollDirRef,
|
|
1207
|
+
bottomOffset: dropUp ? (_ref5 = (_panel_triggerRef_current1 = panel.triggerRef.current) === null || _panel_triggerRef_current1 === void 0 ? void 0 : _panel_triggerRef_current1.getBoundingClientRect().height) !== null && _ref5 !== void 0 ? _ref5 : 0 : 0
|
|
1191
1208
|
})]
|
|
1192
1209
|
})
|
|
1193
1210
|
})
|
|
@@ -1210,7 +1227,8 @@ function NativeSelectCore(param) {
|
|
|
1210
1227
|
multiple,
|
|
1211
1228
|
selectedOrder,
|
|
1212
1229
|
dismissible,
|
|
1213
|
-
native
|
|
1230
|
+
native,
|
|
1231
|
+
panelWidth
|
|
1214
1232
|
} = param;
|
|
1215
1233
|
var _ref, _ref1, _ref2;
|
|
1216
1234
|
var insideOverlay = (0, import_overlayStack.useInsideOverlay)();
|
|
@@ -1533,6 +1551,7 @@ function NativeSelectCore(param) {
|
|
|
1533
1551
|
// A short list opens as a menu over its trigger; a long one keeps its
|
|
1534
1552
|
// sheet at page level and opens as a menu inside another overlay (FZ-7830).
|
|
1535
1553
|
compactFace,
|
|
1554
|
+
panelWidth,
|
|
1536
1555
|
...(asMenu && insideOverlay && (0, import_shouldInlineChoices.opensBesideTrigger)(options.length) ? {
|
|
1537
1556
|
anchorMode: "attach",
|
|
1538
1557
|
triggerEcho: false
|
|
@@ -1671,6 +1690,7 @@ function Select(param) {
|
|
|
1671
1690
|
dismissible,
|
|
1672
1691
|
skeleton,
|
|
1673
1692
|
native,
|
|
1693
|
+
panelWidth,
|
|
1674
1694
|
"aria-label": ariaLabel,
|
|
1675
1695
|
...rest
|
|
1676
1696
|
} = param;
|
|
@@ -1708,7 +1728,8 @@ function Select(param) {
|
|
|
1708
1728
|
var pushed = !inline && !inTableCell && Boolean(rowLabel) && (0, import_shouldInlineChoices.shouldPushChoices)({
|
|
1709
1729
|
inSheet: Boolean(sheetNavigation),
|
|
1710
1730
|
multiple,
|
|
1711
|
-
options
|
|
1731
|
+
options,
|
|
1732
|
+
panelWidth
|
|
1712
1733
|
});
|
|
1713
1734
|
if (!inline) {
|
|
1714
1735
|
var _ref1;
|
|
@@ -1836,7 +1857,8 @@ function Select(param) {
|
|
|
1836
1857
|
multiple,
|
|
1837
1858
|
selectedOrder,
|
|
1838
1859
|
dismissible,
|
|
1839
|
-
native
|
|
1860
|
+
native,
|
|
1861
|
+
panelWidth
|
|
1840
1862
|
});
|
|
1841
1863
|
};
|
|
1842
1864
|
if (!resolvedForm || !name) {
|