@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["OVERLAY_ANCHOR_GAP","pointPanelLeft","point","width","bounds","rtl","arguments","length","towardEnd","x","towardStart","fits","fits2","left","right","alignEnd","raw","Math","max","min","pointOpensUp","height","gap","below","bottom","y","above","top","placeAtPoint","param","dropup","maxHeight","contextMenuPoint","event","reference","fromPointer","pointerType","button","clientX","clientY","referenceCornerPoint","rect","getBoundingClientRect","placeOverTrigger","trigger","room","w","wantLeft","h","shifted","placeBesideTrigger","opensUp"],"sources":["pointAnchor.native.js"],"sourcesContent":["import { OVERLAY_ANCHOR_GAP } from \"@multiplatform.one/theme\";\nfunction pointPanelLeft(point, width, bounds) {\n var rtl = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : false;\n var towardEnd = rtl ? point.x - width : point.x;\n var towardStart = rtl ? point.x : point.x - width;\n var fits = function fits2(left) {\n return left >= bounds.left && left + width <= bounds.right;\n };\n var alignEnd = !fits(towardEnd) && fits(towardStart);\n var raw = alignEnd ? towardStart : towardEnd;\n return {\n left: Math.max(bounds.left, Math.min(raw, bounds.right - width)),\n alignEnd\n };\n}\nfunction pointOpensUp(point, height, bounds) {\n var gap = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : OVERLAY_ANCHOR_GAP;\n var below = bounds.bottom - (point.y + gap);\n var above = point.y - gap - bounds.top;\n if (height <= below) return false;\n if (height <= above) return true;\n return above > below;\n}\nfunction placeAtPoint(param) {\n var { point, width, height, bounds, gap = OVERLAY_ANCHOR_GAP, rtl = false } = param;\n var { left, alignEnd } = pointPanelLeft(point, width, bounds, rtl);\n var dropup = pointOpensUp(point, height, bounds, gap);\n var maxHeight = Math.max(0, dropup ? point.y - gap - bounds.top : bounds.bottom - (point.y + gap));\n var top = dropup ? point.y - gap - Math.min(height, maxHeight) : point.y + gap;\n return {\n left,\n top,\n maxHeight,\n dropup,\n alignEnd\n };\n}\nfunction contextMenuPoint(event, reference) {\n var rtl = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;\n var fromPointer = event.pointerType !== void 0 ? event.pointerType !== \"\" : event.button === 2 || event.clientX !== 0 || event.clientY !== 0;\n if (fromPointer) return {\n x: event.clientX,\n y: event.clientY\n };\n return reference ? referenceCornerPoint(reference, rtl) : null;\n}\nfunction referenceCornerPoint(reference) {\n var rtl = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n var rect = reference.getBoundingClientRect();\n return {\n x: rtl ? rect.right : rect.left,\n y: rect.bottom\n };\n}\nfunction placeOverTrigger(param) {\n var { trigger, width, height, bounds, rtl = false } = param;\n var room = Math.max(0, bounds.right - bounds.left);\n var w = Math.min(Math.max(width, trigger.width), room);\n var wantLeft = rtl ? trigger.x + trigger.width - w : trigger.x;\n var left = Math.max(bounds.left, Math.min(wantLeft, bounds.right - w));\n var h = Math.min(height, Math.max(0, bounds.bottom - bounds.top));\n var top = Math.max(bounds.top, Math.min(trigger.y, bounds.bottom - h));\n return {\n left,\n top,\n width: w,\n maxHeight: Math.max(0, bounds.bottom - top),\n shifted: left !== wantLeft || top !== trigger.y\n };\n}\nfunction placeBesideTrigger(param) {\n var { trigger, width, height, bounds, rtl = false } = param;\n var room = Math.max(0, bounds.right - bounds.left);\n var w = Math.min(Math.max(width, trigger.width), room);\n var wantLeft = rtl ? trigger.x + trigger.width - w : trigger.x;\n var left = Math.max(bounds.left, Math.min(wantLeft, bounds.right - w));\n var below = Math.max(0, bounds.bottom - (trigger.y + trigger.height));\n var above = Math.max(0, trigger.y - bounds.top);\n var opensUp = height > below && above > below;\n var maxHeight = Math.min(height, opensUp ? above : below);\n var top = opensUp ? trigger.y - maxHeight : trigger.y + trigger.height;\n return {\n left,\n top,\n width: w,\n maxHeight,\n shifted: left !== wantLeft || opensUp\n };\n}\nexport {\n contextMenuPoint,\n placeAtPoint,\n placeBesideTrigger,\n placeOverTrigger,\n pointOpensUp,\n pointPanelLeft,\n referenceCornerPoint\n};\n//# sourceMappingURL=pointAnchor.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["OVERLAY_ANCHOR_GAP","pointPanelLeft","point","width","bounds","rtl","arguments","length","towardEnd","x","towardStart","fits","fits2","left","right","alignEnd","raw","Math","max","min","pointOpensUp","height","gap","below","bottom","y","above","top","placeAtPoint","param","dropup","maxHeight","contextMenuPoint","event","reference","fromPointer","pointerType","button","clientX","clientY","referenceCornerPoint","rect","getBoundingClientRect","placeOverTrigger","trigger","align","pinned","room","w","startLeft","endLeft","startFree","endFree","auto","end","wantLeft","keep","triggerBottom","up","shifted","h","top1","placeBesideTrigger","opensUp"],"sources":["pointAnchor.native.js"],"sourcesContent":["import { OVERLAY_ANCHOR_GAP } from \"@multiplatform.one/theme\";\nfunction pointPanelLeft(point, width, bounds) {\n var rtl = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : false;\n var towardEnd = rtl ? point.x - width : point.x;\n var towardStart = rtl ? point.x : point.x - width;\n var fits = function fits2(left) {\n return left >= bounds.left && left + width <= bounds.right;\n };\n var alignEnd = !fits(towardEnd) && fits(towardStart);\n var raw = alignEnd ? towardStart : towardEnd;\n return {\n left: Math.max(bounds.left, Math.min(raw, bounds.right - width)),\n alignEnd\n };\n}\nfunction pointOpensUp(point, height, bounds) {\n var gap = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : OVERLAY_ANCHOR_GAP;\n var below = bounds.bottom - (point.y + gap);\n var above = point.y - gap - bounds.top;\n if (height <= below) return false;\n if (height <= above) return true;\n return above > below;\n}\nfunction placeAtPoint(param) {\n var { point, width, height, bounds, gap = OVERLAY_ANCHOR_GAP, rtl = false } = param;\n var { left, alignEnd } = pointPanelLeft(point, width, bounds, rtl);\n var dropup = pointOpensUp(point, height, bounds, gap);\n var maxHeight = Math.max(0, dropup ? point.y - gap - bounds.top : bounds.bottom - (point.y + gap));\n var top = dropup ? point.y - gap - Math.min(height, maxHeight) : point.y + gap;\n return {\n left,\n top,\n maxHeight,\n dropup,\n alignEnd\n };\n}\nfunction contextMenuPoint(event, reference) {\n var rtl = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;\n var fromPointer = event.pointerType !== void 0 ? event.pointerType !== \"\" : event.button === 2 || event.clientX !== 0 || event.clientY !== 0;\n if (fromPointer) return {\n x: event.clientX,\n y: event.clientY\n };\n return reference ? referenceCornerPoint(reference, rtl) : null;\n}\nfunction referenceCornerPoint(reference) {\n var rtl = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n var rect = reference.getBoundingClientRect();\n return {\n x: rtl ? rect.right : rect.left,\n y: rect.bottom\n };\n}\nfunction placeOverTrigger(param) {\n var { trigger, width, height, bounds, rtl = false, align = \"start\", pinned = false } = param;\n var room = Math.max(0, bounds.right - bounds.left);\n var w = Math.min(Math.max(width, trigger.width), room);\n var startLeft = rtl ? trigger.x + trigger.width - w : trigger.x;\n var endLeft = rtl ? trigger.x : trigger.x + trigger.width - w;\n var startFree = rtl ? startLeft >= bounds.left : startLeft + w <= bounds.right;\n var endFree = rtl ? endLeft + w <= bounds.right : endLeft >= bounds.left;\n var auto = align === \"auto\";\n var end = auto && !startFree && endFree;\n var wantLeft = end ? endLeft : startLeft;\n var keep = auto && (end || startFree);\n var left = keep ? wantLeft : Math.max(bounds.left, Math.min(wantLeft, bounds.right - w));\n if (pinned) {\n var triggerBottom = trigger.y + trigger.height;\n var below = Math.max(0, bounds.bottom - trigger.y);\n var above = Math.max(0, triggerBottom - bounds.top);\n var up = height > below && above > below;\n var top = up ? Math.max(bounds.top, triggerBottom - height) : trigger.y;\n return {\n left,\n top,\n width: w,\n maxHeight: up ? above : below,\n shifted: left !== wantLeft,\n end,\n up\n };\n }\n var h = Math.min(height, Math.max(0, bounds.bottom - bounds.top));\n var top1 = Math.max(bounds.top, Math.min(trigger.y, bounds.bottom - h));\n return {\n left,\n top: top1,\n width: w,\n maxHeight: Math.max(0, bounds.bottom - top1),\n shifted: left !== wantLeft || top1 !== trigger.y,\n end,\n up: false\n };\n}\nfunction placeBesideTrigger(param) {\n var { trigger, width, height, bounds, rtl = false } = param;\n var room = Math.max(0, bounds.right - bounds.left);\n var w = Math.min(Math.max(width, trigger.width), room);\n var wantLeft = rtl ? trigger.x + trigger.width - w : trigger.x;\n var left = Math.max(bounds.left, Math.min(wantLeft, bounds.right - w));\n var below = Math.max(0, bounds.bottom - (trigger.y + trigger.height));\n var above = Math.max(0, trigger.y - bounds.top);\n var opensUp = height > below && above > below;\n var maxHeight = Math.min(height, opensUp ? above : below);\n var top = opensUp ? trigger.y - maxHeight : trigger.y + trigger.height;\n return {\n left,\n top,\n width: w,\n maxHeight,\n shifted: left !== wantLeft || opensUp,\n end: false,\n up: opensUp\n };\n}\nexport {\n contextMenuPoint,\n placeAtPoint,\n placeBesideTrigger,\n placeOverTrigger,\n pointOpensUp,\n pointPanelLeft,\n referenceCornerPoint\n};\n//# sourceMappingURL=pointAnchor.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,8 @@ import { useCallback, useEffect, useLayoutEffect, useRef, useState } from "react
|
|
|
6
6
|
import { getTokenValue } from "tamagui";
|
|
7
7
|
import { clampDropdownRadius, scrollArrowThreshold } from "../shared/floatingList.mjs";
|
|
8
8
|
import { containsAcrossPanels } from "../shared/panelPortal.mjs";
|
|
9
|
+
import { groupSurfaceOf } from "./paintedBox.mjs";
|
|
10
|
+
import { panelWidthBox, screenBounds } from "./panelWidth.mjs";
|
|
9
11
|
const canUseDom = typeof window !== "undefined" && typeof window.addEventListener === "function";
|
|
10
12
|
function roundToDevicePixel(value) {
|
|
11
13
|
const dpr = typeof window !== "undefined" ? window.devicePixelRatio || 1 : 1;
|
|
@@ -14,6 +16,16 @@ function roundToDevicePixel(value) {
|
|
|
14
16
|
const panelAnimationDuration = motionDurationMs(motionFor("quick").overlay.transition);
|
|
15
17
|
const panelGrowDuration = panelAnimationDuration;
|
|
16
18
|
const panelViewportPadding = 10;
|
|
19
|
+
function screenRoom(reference, viewportWidth) {
|
|
20
|
+
const box = reference.getBoundingClientRect();
|
|
21
|
+
return screenBounds({
|
|
22
|
+
triggerLeft: box.left,
|
|
23
|
+
triggerRight: box.right,
|
|
24
|
+
boundsLeft: panelViewportPadding,
|
|
25
|
+
boundsRight: viewportWidth - panelViewportPadding,
|
|
26
|
+
rtl: typeof Element !== "undefined" && reference instanceof Element && getComputedStyle(reference).direction === "rtl"
|
|
27
|
+
});
|
|
28
|
+
}
|
|
17
29
|
const panelAnchorOffset = OVERLAY_ATTACH_GAP;
|
|
18
30
|
function panelCoverOffset(referenceHeight) {
|
|
19
31
|
return panelAnchorOffset - referenceHeight;
|
|
@@ -68,7 +80,9 @@ function useFloatingPanel({
|
|
|
68
80
|
widthMode: widthModeProp,
|
|
69
81
|
fitContent,
|
|
70
82
|
freeOverlay = false,
|
|
71
|
-
cover = true
|
|
83
|
+
cover = true,
|
|
84
|
+
panelWidth,
|
|
85
|
+
echo = cover && !freeOverlay
|
|
72
86
|
}) {
|
|
73
87
|
const widthMode = resolvePanelWidthMode(widthModeProp, fitContent);
|
|
74
88
|
const {
|
|
@@ -83,7 +97,9 @@ function useFloatingPanel({
|
|
|
83
97
|
const radiusCap = radiusStop && typeof panelPadPx === "number" ? resolveRadiusClass("CONTAINER-CAP", radiusStop, {
|
|
84
98
|
paddingPx: panelPadPx
|
|
85
99
|
}) : void 0;
|
|
86
|
-
const
|
|
100
|
+
const capped = radiusCap === void 0 ? measuredRadius ?? clampDropdownRadius(knobProps.borderRadius.borderRadius) : Math.min(measuredRadius ?? radiusCap, radiusCap);
|
|
101
|
+
const dropdownRadius = cover && !freeOverlay && measuredRadius != null ? measuredRadius : capped;
|
|
102
|
+
const coverCornerInset = typeof dropdownRadius === "number" && typeof capped === "number" && dropdownRadius > capped ? Math.ceil(dropdownRadius * (1 - Math.SQRT1_2)) : 0;
|
|
87
103
|
const [mounted, setMounted] = useState(false);
|
|
88
104
|
const [visible, setVisible] = useState(false);
|
|
89
105
|
const [arrowUp, setArrowUp] = useState(false);
|
|
@@ -114,7 +130,7 @@ function useFloatingPanel({
|
|
|
114
130
|
const setupForOpen = useCallback(() => {
|
|
115
131
|
computePlacement();
|
|
116
132
|
if (canUseDom && triggerRef.current) {
|
|
117
|
-
setMeasuredRadius(freeOverlay ? null : measureDrawnRadius(triggerRef.current));
|
|
133
|
+
setMeasuredRadius(freeOverlay ? null : measureDrawnRadius(groupSurfaceOf(triggerRef.current) ?? triggerRef.current));
|
|
118
134
|
}
|
|
119
135
|
onBeforeOpenRef.current?.();
|
|
120
136
|
if (closingTimerRef.current) clearTimeout(closingTimerRef.current);
|
|
@@ -159,9 +175,46 @@ function useFloatingPanel({
|
|
|
159
175
|
// Horizontal collision handling: panels anchored near the right viewport
|
|
160
176
|
// edge (e.g. a ColorPicker in the last table column) shift back into view
|
|
161
177
|
// instead of clipping. Vertical placement is handled by computePlacement.
|
|
162
|
-
|
|
178
|
+
// A screen-wide panel shifts inside the same room its width was cut to,
|
|
179
|
+
// so a trigger in the page gutter keeps its start edge.
|
|
180
|
+
shift(({
|
|
181
|
+
elements
|
|
182
|
+
}) => {
|
|
183
|
+
if (panelWidth !== "screen") return {
|
|
184
|
+
padding: panelViewportPadding
|
|
185
|
+
};
|
|
186
|
+
const viewportWidth = document.documentElement.clientWidth || window.innerWidth || 0;
|
|
187
|
+
const room = screenRoom(elements.reference, viewportWidth);
|
|
188
|
+
return {
|
|
189
|
+
padding: {
|
|
190
|
+
left: room.left,
|
|
191
|
+
right: viewportWidth - room.right
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
}), ...(panelWidth !== void 0 ? [size({
|
|
195
|
+
apply({
|
|
196
|
+
rects: {
|
|
197
|
+
reference
|
|
198
|
+
},
|
|
199
|
+
elements
|
|
200
|
+
}) {
|
|
201
|
+
const viewportWidth = document.documentElement.clientWidth || window.innerWidth || 0;
|
|
202
|
+
const room = panelWidth === "screen" ? screenRoom(elements.reference, viewportWidth) : {
|
|
203
|
+
left: panelViewportPadding,
|
|
204
|
+
right: viewportWidth - panelViewportPadding
|
|
205
|
+
};
|
|
206
|
+
const box = panelWidthBox(panelWidth, {
|
|
207
|
+
trigger: reference.width,
|
|
208
|
+
available: room.right - room.left,
|
|
209
|
+
echo
|
|
210
|
+
});
|
|
211
|
+
Object.assign(floatingStyleRef.current, box);
|
|
212
|
+
elements.floating.style.minWidth = `${box.minWidth}px`;
|
|
213
|
+
elements.floating.style.maxWidth = `${box.maxWidth}px`;
|
|
214
|
+
elements.floating.style.width = box.width === void 0 ? "" : `${box.width}px`;
|
|
215
|
+
},
|
|
163
216
|
padding: panelViewportPadding
|
|
164
|
-
})
|
|
217
|
+
})] : widthMode === "fit-content" ? [] : [size({
|
|
165
218
|
apply({
|
|
166
219
|
rects: {
|
|
167
220
|
reference: {
|
|
@@ -327,10 +380,11 @@ function useFloatingPanel({
|
|
|
327
380
|
setReferenceRef,
|
|
328
381
|
setMounted,
|
|
329
382
|
dropdownRadius,
|
|
383
|
+
coverCornerInset,
|
|
330
384
|
hasBorder,
|
|
331
385
|
panelTransition: panelTransitionFor(knobProps.motion.overlay.transition),
|
|
332
386
|
knobProps
|
|
333
387
|
};
|
|
334
388
|
}
|
|
335
|
-
export { measureDrawnRadius, panelAnchorOffset, panelAnimationDuration, panelCoverOffset, panelGrowDuration, panelTransition, panelTransitionFor, panelViewportPadding, resolvePanelWidthMode, useFloatingPanel };
|
|
389
|
+
export { measureDrawnRadius, paintedCornerBox, panelAnchorOffset, panelAnimationDuration, panelCoverOffset, panelGrowDuration, panelTransition, panelTransitionFor, panelViewportPadding, resolvePanelWidthMode, useFloatingPanel };
|
|
336
390
|
//# sourceMappingURL=useFloatingPanel.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["motionDurationMs","motionFor","cssAnimationConfig","autoUpdate","offset","shift","size","useFloating","OVERLAY_ANCHOR_GAP","OVERLAY_ATTACH_GAP","radiusStopFromToken","resolveRadiusClass","useResolvedKnobs","useCallback","useEffect","useLayoutEffect","useRef","useState","getTokenValue","clampDropdownRadius","scrollArrowThreshold","containsAcrossPanels","canUseDom","window","addEventListener","roundToDevicePixel","value","dpr","devicePixelRatio","Math","round","panelAnimationDuration","overlay","transition","panelGrowDuration","panelViewportPadding","panelAnchorOffset","panelCoverOffset","referenceHeight","panelTransitionFor","timing","medium","map","property","join","panelTransition","resolvePanelWidthMode","widthMode","fitContent","paintsACorner","el","cs","getComputedStyle","Number","parseFloat","borderTopLeftRadius","borderTopWidth","borderTopStyle","bg","backgroundColor","paintedCornerBox","root","rootRect","getBoundingClientRect","Array","from","querySelectorAll","rect","width","height","abs","left","top","measureDrawnRadius","box","raw","isFinite","min","useFloatingPanel","open","onOpenChange","disabled","onBeforeOpen","repositionRef","scrollBoundaryRef","middleware","middlewareProp","useAutoUpdate","useAutoUpdateProp","wheelGrowRef","widthModeProp","freeOverlay","cover","knobProps","painted","hasBorder","borderRadius","borderWidth","measuredRadius","setMeasuredRadius","radiusStop","panelPadPx","panelPadding","padding","radiusCap","paddingPx","dropdownRadius","mounted","setMounted","visible","setVisible","arrowUp","setArrowUp","arrowDown","setArrowDown","placement","setPlacement","onBeforeOpenRef","current","onOpenChangeRef","closingTimerRef","triggerRef","arrowScrollDirRef","floatingStyleRef","initializingRef","needsSetupRef","computePlacement","innerHeight","bottom","updateArrows","element","up","scrollTop","down","scrollHeight","clientHeight","prev","setupForOpen","clearTimeout","inner","outer","requestAnimationFrame","cancelAnimationFrame","setTimeout","motion","defaultMiddleware","rects","reference","apply","elements","style","minWidth","maxWidth","Object","assign","floating","x","y","strategy","context","refs","update","nextOpen","whileElementsMounted","setReferenceRef","node","setReference","scrollY","floatingEl","preventScroll","e","contains","target","deltaY","scrollEl","atTop","atBottom","preventDefault","preventKeyScroll","includes","code","preventTouchScroll","scrollTo","restoreScroll","document","passive","capture","removeEventListener","rafId","throttled","trig"],"sources":["../../../src/FloatingPanel/useFloatingPanel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["motionDurationMs","motionFor","cssAnimationConfig","autoUpdate","offset","shift","size","useFloating","OVERLAY_ANCHOR_GAP","OVERLAY_ATTACH_GAP","radiusStopFromToken","resolveRadiusClass","useResolvedKnobs","useCallback","useEffect","useLayoutEffect","useRef","useState","getTokenValue","clampDropdownRadius","scrollArrowThreshold","containsAcrossPanels","groupSurfaceOf","panelWidthBox","screenBounds","canUseDom","window","addEventListener","roundToDevicePixel","value","dpr","devicePixelRatio","Math","round","panelAnimationDuration","overlay","transition","panelGrowDuration","panelViewportPadding","screenRoom","reference","viewportWidth","box","getBoundingClientRect","triggerLeft","left","triggerRight","right","boundsLeft","boundsRight","rtl","Element","getComputedStyle","direction","panelAnchorOffset","panelCoverOffset","referenceHeight","panelTransitionFor","timing","medium","map","property","join","panelTransition","resolvePanelWidthMode","widthMode","fitContent","paintsACorner","el","cs","Number","parseFloat","borderTopLeftRadius","borderTopWidth","borderTopStyle","bg","backgroundColor","paintedCornerBox","root","rootRect","Array","from","querySelectorAll","rect","width","height","abs","top","measureDrawnRadius","raw","isFinite","min","useFloatingPanel","open","onOpenChange","disabled","onBeforeOpen","repositionRef","scrollBoundaryRef","middleware","middlewareProp","useAutoUpdate","useAutoUpdateProp","wheelGrowRef","widthModeProp","freeOverlay","cover","panelWidth","echo","knobProps","painted","hasBorder","borderRadius","borderWidth","measuredRadius","setMeasuredRadius","radiusStop","panelPadPx","panelPadding","padding","radiusCap","paddingPx","capped","dropdownRadius","coverCornerInset","ceil","SQRT1_2","mounted","setMounted","visible","setVisible","arrowUp","setArrowUp","arrowDown","setArrowDown","placement","setPlacement","onBeforeOpenRef","current","onOpenChangeRef","closingTimerRef","triggerRef","arrowScrollDirRef","floatingStyleRef","initializingRef","needsSetupRef","computePlacement","innerHeight","bottom","updateArrows","element","up","scrollTop","down","scrollHeight","clientHeight","prev","setupForOpen","clearTimeout","inner","outer","requestAnimationFrame","cancelAnimationFrame","setTimeout","motion","defaultMiddleware","rects","elements","document","documentElement","clientWidth","innerWidth","room","apply","trigger","available","Object","assign","floating","style","minWidth","maxWidth","x","y","strategy","context","refs","update","nextOpen","whileElementsMounted","setReferenceRef","node","setReference","scrollY","floatingEl","preventScroll","e","contains","target","deltaY","scrollEl","atTop","atBottom","preventDefault","preventKeyScroll","includes","code","preventTouchScroll","scrollTo","restoreScroll","passive","capture","removeEventListener","rafId","throttled","trig"],"sources":["../../../src/FloatingPanel/useFloatingPanel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,17 @@ import { useCallback, useEffect, useLayoutEffect, useRef, useState } from "react
|
|
|
6
6
|
import { getTokenValue } from "tamagui";
|
|
7
7
|
import { clampDropdownRadius, scrollArrowThreshold } from "../shared/floatingList.native.js";
|
|
8
8
|
import { containsAcrossPanels } from "../shared/panelPortal.native.js";
|
|
9
|
+
import { groupSurfaceOf } from "./paintedBox.native.js";
|
|
10
|
+
import { panelWidthBox, screenBounds } from "./panelWidth.native.js";
|
|
11
|
+
function _instanceof(left, right) {
|
|
12
|
+
"@swc/helpers - instanceof";
|
|
13
|
+
|
|
14
|
+
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
15
|
+
return !!right[Symbol.hasInstance](left);
|
|
16
|
+
} else {
|
|
17
|
+
return left instanceof right;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
9
20
|
var canUseDom = typeof window !== "undefined" && typeof window.addEventListener === "function";
|
|
10
21
|
function roundToDevicePixel(value) {
|
|
11
22
|
var dpr = typeof window !== "undefined" ? window.devicePixelRatio || 1 : 1;
|
|
@@ -14,6 +25,16 @@ function roundToDevicePixel(value) {
|
|
|
14
25
|
var panelAnimationDuration = motionDurationMs(motionFor("quick").overlay.transition);
|
|
15
26
|
var panelGrowDuration = panelAnimationDuration;
|
|
16
27
|
var panelViewportPadding = 10;
|
|
28
|
+
function screenRoom(reference, viewportWidth) {
|
|
29
|
+
var box = reference.getBoundingClientRect();
|
|
30
|
+
return screenBounds({
|
|
31
|
+
triggerLeft: box.left,
|
|
32
|
+
triggerRight: box.right,
|
|
33
|
+
boundsLeft: panelViewportPadding,
|
|
34
|
+
boundsRight: viewportWidth - panelViewportPadding,
|
|
35
|
+
rtl: typeof Element !== "undefined" && _instanceof(reference, Element) && getComputedStyle(reference).direction === "rtl"
|
|
36
|
+
});
|
|
37
|
+
}
|
|
17
38
|
var panelAnchorOffset = OVERLAY_ATTACH_GAP;
|
|
18
39
|
function panelCoverOffset(referenceHeight) {
|
|
19
40
|
return panelAnchorOffset - referenceHeight;
|
|
@@ -91,7 +112,9 @@ function useFloatingPanel(param) {
|
|
|
91
112
|
widthMode: widthModeProp,
|
|
92
113
|
fitContent,
|
|
93
114
|
freeOverlay = false,
|
|
94
|
-
cover = true
|
|
115
|
+
cover = true,
|
|
116
|
+
panelWidth,
|
|
117
|
+
echo = cover && !freeOverlay
|
|
95
118
|
} = param;
|
|
96
119
|
var widthMode = resolvePanelWidthMode(widthModeProp, fitContent);
|
|
97
120
|
var {
|
|
@@ -106,7 +129,9 @@ function useFloatingPanel(param) {
|
|
|
106
129
|
var radiusCap = radiusStop && typeof panelPadPx === "number" ? resolveRadiusClass("CONTAINER-CAP", radiusStop, {
|
|
107
130
|
paddingPx: panelPadPx
|
|
108
131
|
}) : void 0;
|
|
109
|
-
var
|
|
132
|
+
var capped = radiusCap === void 0 ? measuredRadius !== null && measuredRadius !== void 0 ? measuredRadius : clampDropdownRadius(knobProps.borderRadius.borderRadius) : Math.min(measuredRadius !== null && measuredRadius !== void 0 ? measuredRadius : radiusCap, radiusCap);
|
|
133
|
+
var dropdownRadius = cover && !freeOverlay && measuredRadius != null ? measuredRadius : capped;
|
|
134
|
+
var coverCornerInset = typeof dropdownRadius === "number" && typeof capped === "number" && dropdownRadius > capped ? Math.ceil(dropdownRadius * (1 - Math.SQRT1_2)) : 0;
|
|
110
135
|
var [mounted, setMounted] = useState(false);
|
|
111
136
|
var [visible, setVisible] = useState(false);
|
|
112
137
|
var [arrowUp, setArrowUp] = useState(false);
|
|
@@ -142,7 +167,8 @@ function useFloatingPanel(param) {
|
|
|
142
167
|
var _onBeforeOpenRef_current;
|
|
143
168
|
computePlacement();
|
|
144
169
|
if (canUseDom && triggerRef.current) {
|
|
145
|
-
|
|
170
|
+
var _groupSurfaceOf;
|
|
171
|
+
setMeasuredRadius(freeOverlay ? null : measureDrawnRadius((_groupSurfaceOf = groupSurfaceOf(triggerRef.current)) !== null && _groupSurfaceOf !== void 0 ? _groupSurfaceOf : triggerRef.current));
|
|
146
172
|
}
|
|
147
173
|
(_onBeforeOpenRef_current = onBeforeOpenRef.current) === null || _onBeforeOpenRef_current === void 0 ? void 0 : _onBeforeOpenRef_current.call(onBeforeOpenRef);
|
|
148
174
|
if (closingTimerRef.current) clearTimeout(closingTimerRef.current);
|
|
@@ -194,9 +220,48 @@ function useFloatingPanel(param) {
|
|
|
194
220
|
// Horizontal collision handling: panels anchored near the right viewport
|
|
195
221
|
// edge (e.g. a ColorPicker in the last table column) shift back into view
|
|
196
222
|
// instead of clipping. Vertical placement is handled by computePlacement.
|
|
197
|
-
|
|
223
|
+
// A screen-wide panel shifts inside the same room its width was cut to,
|
|
224
|
+
// so a trigger in the page gutter keeps its start edge.
|
|
225
|
+
shift(function (param2) {
|
|
226
|
+
var {
|
|
227
|
+
elements
|
|
228
|
+
} = param2;
|
|
229
|
+
if (panelWidth !== "screen") return {
|
|
230
|
+
padding: panelViewportPadding
|
|
231
|
+
};
|
|
232
|
+
var viewportWidth = document.documentElement.clientWidth || window.innerWidth || 0;
|
|
233
|
+
var room = screenRoom(elements.reference, viewportWidth);
|
|
234
|
+
return {
|
|
235
|
+
padding: {
|
|
236
|
+
left: room.left,
|
|
237
|
+
right: viewportWidth - room.right
|
|
238
|
+
}
|
|
239
|
+
};
|
|
240
|
+
}), ...(panelWidth !== void 0 ? [size({
|
|
241
|
+
apply(param2) {
|
|
242
|
+
var {
|
|
243
|
+
rects: {
|
|
244
|
+
reference
|
|
245
|
+
},
|
|
246
|
+
elements
|
|
247
|
+
} = param2;
|
|
248
|
+
var viewportWidth = document.documentElement.clientWidth || window.innerWidth || 0;
|
|
249
|
+
var room = panelWidth === "screen" ? screenRoom(elements.reference, viewportWidth) : {
|
|
250
|
+
left: panelViewportPadding,
|
|
251
|
+
right: viewportWidth - panelViewportPadding
|
|
252
|
+
};
|
|
253
|
+
var box = panelWidthBox(panelWidth, {
|
|
254
|
+
trigger: reference.width,
|
|
255
|
+
available: room.right - room.left,
|
|
256
|
+
echo
|
|
257
|
+
});
|
|
258
|
+
Object.assign(floatingStyleRef.current, box);
|
|
259
|
+
elements.floating.style.minWidth = `${box.minWidth}px`;
|
|
260
|
+
elements.floating.style.maxWidth = `${box.maxWidth}px`;
|
|
261
|
+
elements.floating.style.width = box.width === void 0 ? "" : `${box.width}px`;
|
|
262
|
+
},
|
|
198
263
|
padding: panelViewportPadding
|
|
199
|
-
})
|
|
264
|
+
})] : widthMode === "fit-content" ? [] : [size({
|
|
200
265
|
apply(param2) {
|
|
201
266
|
var {
|
|
202
267
|
rects: {
|
|
@@ -370,10 +435,11 @@ function useFloatingPanel(param) {
|
|
|
370
435
|
setReferenceRef,
|
|
371
436
|
setMounted,
|
|
372
437
|
dropdownRadius,
|
|
438
|
+
coverCornerInset,
|
|
373
439
|
hasBorder,
|
|
374
440
|
panelTransition: panelTransitionFor(knobProps.motion.overlay.transition),
|
|
375
441
|
knobProps
|
|
376
442
|
};
|
|
377
443
|
}
|
|
378
|
-
export { measureDrawnRadius, panelAnchorOffset, panelAnimationDuration, panelCoverOffset, panelGrowDuration, panelTransition, panelTransitionFor, panelViewportPadding, resolvePanelWidthMode, useFloatingPanel };
|
|
444
|
+
export { measureDrawnRadius, paintedCornerBox, panelAnchorOffset, panelAnimationDuration, panelCoverOffset, panelGrowDuration, panelTransition, panelTransitionFor, panelViewportPadding, resolvePanelWidthMode, useFloatingPanel };
|
|
379
445
|
//# sourceMappingURL=useFloatingPanel.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["motionDurationMs","motionFor","cssAnimationConfig","autoUpdate","offset","shift","size","useFloating","OVERLAY_ANCHOR_GAP","OVERLAY_ATTACH_GAP","radiusStopFromToken","resolveRadiusClass","useResolvedKnobs","useCallback","useEffect","useLayoutEffect","useRef","useState","getTokenValue","clampDropdownRadius","scrollArrowThreshold","containsAcrossPanels","canUseDom","window","addEventListener","roundToDevicePixel","value","dpr","devicePixelRatio","Math","round","panelAnimationDuration","overlay","transition","panelGrowDuration","panelViewportPadding","panelAnchorOffset","panelCoverOffset","referenceHeight","panelTransitionFor","_cssAnimationConfig_transition","timing","medium","map","property","join","panelTransition","resolvePanelWidthMode","widthMode","fitContent","paintsACorner","el","cs","getComputedStyle","Number","parseFloat","borderTopLeftRadius","borderTopWidth","borderTopStyle","bg","backgroundColor","paintedCornerBox","root","rootRect","getBoundingClientRect","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Array","from","querySelectorAll","Symbol","iterator","_step","next","done","rect","width","height","abs","left","top","err","return","measureDrawnRadius","box","raw","isFinite","min","useFloatingPanel","param","open","onOpenChange","disabled","onBeforeOpen","repositionRef","scrollBoundaryRef","middleware","middlewareProp","useAutoUpdate","useAutoUpdateProp","wheelGrowRef","widthModeProp","freeOverlay","cover","knobProps","painted","hasBorder","borderRadius","borderWidth","measuredRadius","setMeasuredRadius","radiusStop","panelPadPx","panelPadding","padding","radiusCap","paddingPx","dropdownRadius","mounted","setMounted","visible","setVisible","arrowUp","setArrowUp","arrowDown","setArrowDown","placement","setPlacement","onBeforeOpenRef","current","onOpenChangeRef","closingTimerRef","triggerRef","arrowScrollDirRef","floatingStyleRef","initializingRef","needsSetupRef","computePlacement","innerHeight","bottom","updateArrows","element","up","scrollTop","down","scrollHeight","clientHeight","prev","setupForOpen","_onBeforeOpenRef_current","call","clearTimeout","inner","outer","requestAnimationFrame","cancelAnimationFrame","setTimeout","motion","defaultMiddleware","param2","rects","reference","apply","elements","style","minWidth","maxWidth","Object","assign","floating","x","y","strategy","context","refs","update","onOpenChange2","nextOpen","whileElementsMounted","setReferenceRef","node","setReference","scrollY","floatingEl","preventScroll","preventScroll2","e","contains","target","_ref","deltaY","_repositionRef_current","scrollEl","atTop","atBottom","preventDefault","preventKeyScroll","preventKeyScroll2","includes","code","preventTouchScroll","preventTouchScroll2","scrollTo","restoreScroll","document","passive","capture","removeEventListener","rafId","throttled","throttled2","trig"],"sources":["useFloatingPanel.native.js"],"sourcesContent":["import { motionDurationMs, motionFor } from \"@multiplatform.one/theme\";\nimport { cssAnimationConfig } from \"@multiplatform.one/theme\";\nimport { autoUpdate, offset, shift, size, useFloating } from \"@floating-ui/react\";\nimport { OVERLAY_ANCHOR_GAP, OVERLAY_ATTACH_GAP, radiusStopFromToken, resolveRadiusClass, useResolvedKnobs } from \"@multiplatform.one/theme\";\nimport { useCallback, useEffect, useLayoutEffect, useRef, useState } from \"react\";\nimport { getTokenValue } from \"tamagui\";\nimport { clampDropdownRadius, scrollArrowThreshold } from \"../shared/floatingList\";\nimport { containsAcrossPanels } from \"../shared/panelPortal\";\nvar canUseDom = typeof window !== \"undefined\" && typeof window.addEventListener === \"function\";\nfunction roundToDevicePixel(value) {\n var dpr = typeof window !== \"undefined\" ? window.devicePixelRatio || 1 : 1;\n return Math.round(value * dpr) / dpr;\n}\nvar panelAnimationDuration = motionDurationMs(motionFor(\"quick\").overlay.transition);\nvar panelGrowDuration = panelAnimationDuration;\nvar panelViewportPadding = 10;\nvar panelAnchorOffset = OVERLAY_ATTACH_GAP;\nfunction panelCoverOffset(referenceHeight) {\n return panelAnchorOffset - referenceHeight;\n}\nfunction panelTransitionFor(transition) {\n var _cssAnimationConfig_transition;\n if (!transition) return \"none\";\n var timing = (_cssAnimationConfig_transition = cssAnimationConfig[transition]) !== null && _cssAnimationConfig_transition !== void 0 ? _cssAnimationConfig_transition : cssAnimationConfig.medium;\n return [\n \"opacity\",\n \"transform\",\n \"top\",\n \"max-height\",\n \"height\"\n ].map(function(property) {\n return `${property} ${timing}`;\n }).join(\", \");\n}\nvar panelTransition = panelTransitionFor(motionFor(\"quick\").overlay.transition);\nfunction resolvePanelWidthMode(widthMode, fitContent) {\n if (widthMode) return widthMode;\n return fitContent ? \"fit-content\" : \"at-least-trigger\";\n}\nfunction paintsACorner(el) {\n var cs = getComputedStyle(el);\n if (Number.parseFloat(cs.borderTopLeftRadius) > 0) return true;\n if (Number.parseFloat(cs.borderTopWidth) > 0 && cs.borderTopStyle !== \"none\") return true;\n var bg = cs.backgroundColor;\n return !!bg && bg !== \"transparent\" && bg !== \"rgba(0, 0, 0, 0)\";\n}\nfunction paintedCornerBox(root) {\n if (paintsACorner(root)) return root;\n var rootRect = root.getBoundingClientRect();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Array.from(root.querySelectorAll(\"*\"))[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n var rect = el.getBoundingClientRect();\n if (rect.width <= 0 || rect.height <= 0) continue;\n if (Math.abs(rect.left - rootRect.left) > 1 || Math.abs(rect.top - rootRect.top) > 1) continue;\n if (paintsACorner(el)) return el;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return null;\n}\nfunction measureDrawnRadius(el) {\n var box = paintedCornerBox(el);\n if (!box) return null;\n var raw = parseFloat(getComputedStyle(box).borderTopLeftRadius);\n if (!Number.isFinite(raw)) return null;\n var rect = box.getBoundingClientRect();\n if (rect.width <= 0 || rect.height <= 0) return null;\n return Math.min(raw, rect.height / 2, rect.width / 2);\n}\nfunction useFloatingPanel(param) {\n var { open, onOpenChange, disabled, onBeforeOpen, repositionRef, scrollBoundaryRef, middleware: middlewareProp, useAutoUpdate: useAutoUpdateProp = true, wheelGrowRef, widthMode: widthModeProp, fitContent, freeOverlay = false, cover = true } = param;\n var widthMode = resolvePanelWidthMode(widthModeProp, fitContent);\n var { knobProps } = useResolvedKnobs({\n painted: false\n });\n var hasBorder = knobProps.borderRadius.borderWidth > 0;\n var [measuredRadius, setMeasuredRadius] = useState(null);\n var radiusStop = radiusStopFromToken(knobProps.borderRadius.borderRadius);\n var panelPadPx = getTokenValue(knobProps.panelPadding.padding, \"space\");\n var radiusCap = radiusStop && typeof panelPadPx === \"number\" ? resolveRadiusClass(\"CONTAINER-CAP\", radiusStop, {\n paddingPx: panelPadPx\n }) : void 0;\n var dropdownRadius = radiusCap === void 0 ? measuredRadius !== null && measuredRadius !== void 0 ? measuredRadius : clampDropdownRadius(knobProps.borderRadius.borderRadius) : Math.min(measuredRadius !== null && measuredRadius !== void 0 ? measuredRadius : radiusCap, radiusCap);\n var [mounted, setMounted] = useState(false);\n var [visible, setVisible] = useState(false);\n var [arrowUp, setArrowUp] = useState(false);\n var [arrowDown, setArrowDown] = useState(false);\n var [placement, setPlacement] = useState(\"bottom-start\");\n var onBeforeOpenRef = useRef(onBeforeOpen);\n onBeforeOpenRef.current = onBeforeOpen;\n var onOpenChangeRef = useRef(onOpenChange);\n onOpenChangeRef.current = onOpenChange;\n var closingTimerRef = useRef(null);\n var triggerRef = useRef(null);\n var arrowScrollDirRef = useRef(null);\n var floatingStyleRef = useRef({});\n var initializingRef = useRef(false);\n var needsSetupRef = useRef(true);\n var computePlacement = useCallback(function() {\n var el = triggerRef.current;\n if (!el || typeof window === \"undefined\") return;\n var rect = el.getBoundingClientRect();\n setPlacement(rect.top > window.innerHeight - rect.bottom ? \"top-start\" : \"bottom-start\");\n }, []);\n var updateArrows = useCallback(function(element) {\n var up = element.scrollTop > scrollArrowThreshold;\n var down = element.scrollTop < element.scrollHeight - element.clientHeight - scrollArrowThreshold;\n setArrowUp(function(prev) {\n return prev !== up ? up : prev;\n });\n setArrowDown(function(prev) {\n return prev !== down ? down : prev;\n });\n }, []);\n var setupForOpen = useCallback(function() {\n var _onBeforeOpenRef_current;\n computePlacement();\n if (canUseDom && triggerRef.current) {\n setMeasuredRadius(freeOverlay ? null : measureDrawnRadius(triggerRef.current));\n }\n (_onBeforeOpenRef_current = onBeforeOpenRef.current) === null || _onBeforeOpenRef_current === void 0 ? void 0 : _onBeforeOpenRef_current.call(onBeforeOpenRef);\n if (closingTimerRef.current) clearTimeout(closingTimerRef.current);\n floatingStyleRef.current = {};\n initializingRef.current = true;\n setMounted(true);\n }, [\n computePlacement,\n freeOverlay\n ]);\n useEffect(function() {\n if (open) {\n if (needsSetupRef.current) setupForOpen();\n needsSetupRef.current = true;\n var inner = 0;\n var outer = requestAnimationFrame(function() {\n if (typeof requestAnimationFrame === \"function\") {\n inner = requestAnimationFrame(function() {\n return setVisible(true);\n });\n }\n });\n return function() {\n if (typeof cancelAnimationFrame !== \"function\") return;\n cancelAnimationFrame(outer);\n cancelAnimationFrame(inner);\n };\n } else {\n setVisible(false);\n setArrowUp(false);\n setArrowDown(false);\n if (closingTimerRef.current) clearTimeout(closingTimerRef.current);\n closingTimerRef.current = setTimeout(function() {\n setMounted(false);\n }, motionDurationMs(knobProps.motion.overlay.transition));\n }\n }, [\n open,\n setupForOpen,\n knobProps.motion.overlay.transition\n ]);\n useEffect(function() {\n return function() {\n if (closingTimerRef.current) clearTimeout(closingTimerRef.current);\n };\n }, []);\n var defaultMiddleware = [\n // Cover ruling: the family opens OVER its trigger (top edge on the\n // trigger's top edge). A free overlay keeps the anchor gap.\n offset(function(param2) {\n var { rects } = param2;\n return freeOverlay ? OVERLAY_ANCHOR_GAP : cover ? panelCoverOffset(rects.reference.height) : panelAnchorOffset;\n }),\n // Horizontal collision handling: panels anchored near the right viewport\n // edge (e.g. a ColorPicker in the last table column) shift back into view\n // instead of clipping. Vertical placement is handled by computePlacement.\n shift({\n padding: panelViewportPadding\n }),\n ...widthMode === \"fit-content\" ? [] : [\n size({\n apply(param2) {\n var { rects: { reference: { width } }, elements } = param2;\n var style = widthMode === \"match-trigger\" ? {\n minWidth: width,\n width,\n maxWidth: width\n } : {\n minWidth: width\n };\n Object.assign(floatingStyleRef.current, style);\n elements.floating.style.minWidth = `${width}px`;\n if (widthMode === \"match-trigger\") {\n elements.floating.style.width = `${width}px`;\n elements.floating.style.maxWidth = `${width}px`;\n }\n },\n padding: panelViewportPadding\n })\n ]\n ];\n var { x, y, strategy, context, refs, update } = useFloating({\n open,\n onOpenChange: function onOpenChange2(nextOpen) {\n if (disabled && nextOpen) return;\n if (nextOpen) {\n needsSetupRef.current = false;\n setupForOpen();\n var el = refs.floating.current;\n if (el) el.scrollTop = 0;\n }\n onOpenChangeRef.current(nextOpen);\n },\n strategy: \"fixed\",\n placement,\n whileElementsMounted: useAutoUpdateProp ? autoUpdate : void 0,\n middleware: middlewareProp !== null && middlewareProp !== void 0 ? middlewareProp : defaultMiddleware\n });\n var setReferenceRef = useCallback(function(node) {\n triggerRef.current = node;\n refs.setReference(node);\n }, [\n refs\n ]);\n useLayoutEffect(function() {\n if (!open || !mounted || !canUseDom) return;\n var scrollY = window.scrollY;\n var floatingEl = refs.floating.current;\n if (!floatingEl) return;\n var preventScroll = function preventScroll2(e) {\n if (floatingEl.contains(e.target)) {\n var _ref;\n if (wheelGrowRef && Math.abs(e.deltaY) > 0) {\n var _repositionRef_current;\n wheelGrowRef.current = true;\n repositionRef === null || repositionRef === void 0 ? void 0 : (_repositionRef_current = repositionRef.current) === null || _repositionRef_current === void 0 ? void 0 : _repositionRef_current.call(repositionRef);\n }\n var scrollEl = (_ref = scrollBoundaryRef === null || scrollBoundaryRef === void 0 ? void 0 : scrollBoundaryRef.current) !== null && _ref !== void 0 ? _ref : floatingEl;\n var atTop = scrollEl.scrollTop <= 0 && e.deltaY < 0;\n var atBottom = scrollEl.scrollTop >= scrollEl.scrollHeight - scrollEl.clientHeight - 1 && e.deltaY > 0;\n if (atTop || atBottom) e.preventDefault();\n return;\n }\n if (containsAcrossPanels(floatingEl, e.target)) return;\n e.preventDefault();\n };\n var preventKeyScroll = function preventKeyScroll2(e) {\n if (containsAcrossPanels(floatingEl, e.target)) return;\n if ([\n \"ArrowDown\",\n \"ArrowUp\",\n \"Space\",\n \"PageDown\",\n \"PageUp\",\n \"Home\",\n \"End\"\n ].includes(e.code)) {\n e.preventDefault();\n }\n };\n var preventTouchScroll = function preventTouchScroll2(e) {\n if (containsAcrossPanels(floatingEl, e.target)) return;\n e.preventDefault();\n };\n window.scrollTo(0, scrollY);\n var restoreScroll = requestAnimationFrame(function() {\n return window.scrollTo(0, scrollY);\n });\n document.addEventListener(\"wheel\", preventScroll, {\n passive: false,\n capture: true\n });\n document.addEventListener(\"keydown\", preventKeyScroll, {\n capture: true\n });\n document.addEventListener(\"touchmove\", preventTouchScroll, {\n passive: false,\n capture: true\n });\n return function() {\n if (typeof cancelAnimationFrame === \"function\") cancelAnimationFrame(restoreScroll);\n document.removeEventListener(\"wheel\", preventScroll, {\n capture: true\n });\n document.removeEventListener(\"keydown\", preventKeyScroll, {\n capture: true\n });\n document.removeEventListener(\"touchmove\", preventTouchScroll, {\n capture: true\n });\n };\n }, [\n open,\n mounted,\n refs,\n scrollBoundaryRef,\n wheelGrowRef,\n repositionRef\n ]);\n useEffect(function() {\n if (!open || !canUseDom) return;\n var rafId = 0;\n var throttled = function throttled2() {\n if (rafId) return;\n rafId = requestAnimationFrame(function() {\n var _repositionRef_current;\n rafId = 0;\n var trig = triggerRef.current;\n if (trig) {\n var rect = trig.getBoundingClientRect();\n if (rect.bottom < 0 || rect.top > window.innerHeight) {\n onOpenChangeRef.current(false);\n return;\n }\n }\n repositionRef === null || repositionRef === void 0 ? void 0 : (_repositionRef_current = repositionRef.current) === null || _repositionRef_current === void 0 ? void 0 : _repositionRef_current.call(repositionRef);\n });\n };\n window.addEventListener(\"scroll\", throttled, {\n passive: true\n });\n window.addEventListener(\"resize\", throttled, {\n passive: true\n });\n return function() {\n window.removeEventListener(\"scroll\", throttled);\n window.removeEventListener(\"resize\", throttled);\n if (rafId) cancelAnimationFrame(rafId);\n };\n }, [\n open,\n repositionRef\n ]);\n useLayoutEffect(function() {\n if (!canUseDom) return;\n window.addEventListener(\"resize\", update);\n if (open) update();\n return function() {\n return window.removeEventListener(\"resize\", update);\n };\n }, [\n update,\n open\n ]);\n return {\n context,\n refs,\n x: roundToDevicePixel(x),\n y: roundToDevicePixel(y),\n strategy,\n update,\n mounted,\n visible,\n placement,\n arrowUp,\n arrowDown,\n triggerRef,\n arrowScrollDirRef,\n floatingStyleRef,\n initializingRef,\n computePlacement,\n updateArrows,\n setReferenceRef,\n setMounted,\n dropdownRadius,\n hasBorder,\n panelTransition: panelTransitionFor(knobProps.motion.overlay.transition),\n knobProps\n };\n}\nexport {\n measureDrawnRadius,\n panelAnchorOffset,\n panelAnimationDuration,\n panelCoverOffset,\n panelGrowDuration,\n panelTransition,\n panelTransitionFor,\n panelViewportPadding,\n resolvePanelWidthMode,\n useFloatingPanel\n};\n//# sourceMappingURL=useFloatingPanel.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["motionDurationMs","motionFor","cssAnimationConfig","autoUpdate","offset","shift","size","useFloating","OVERLAY_ANCHOR_GAP","OVERLAY_ATTACH_GAP","radiusStopFromToken","resolveRadiusClass","useResolvedKnobs","useCallback","useEffect","useLayoutEffect","useRef","useState","getTokenValue","clampDropdownRadius","scrollArrowThreshold","containsAcrossPanels","groupSurfaceOf","panelWidthBox","screenBounds","_instanceof","left","right","Symbol","hasInstance","canUseDom","window","addEventListener","roundToDevicePixel","value","dpr","devicePixelRatio","Math","round","panelAnimationDuration","overlay","transition","panelGrowDuration","panelViewportPadding","screenRoom","reference","viewportWidth","box","getBoundingClientRect","triggerLeft","triggerRight","boundsLeft","boundsRight","rtl","Element","getComputedStyle","direction","panelAnchorOffset","panelCoverOffset","referenceHeight","panelTransitionFor","_cssAnimationConfig_transition","timing","medium","map","property","join","panelTransition","resolvePanelWidthMode","widthMode","fitContent","paintsACorner","el","cs","Number","parseFloat","borderTopLeftRadius","borderTopWidth","borderTopStyle","bg","backgroundColor","paintedCornerBox","root","rootRect","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Array","from","querySelectorAll","iterator","_step","next","done","rect","width","height","abs","top","err","return","measureDrawnRadius","raw","isFinite","min","useFloatingPanel","param","open","onOpenChange","disabled","onBeforeOpen","repositionRef","scrollBoundaryRef","middleware","middlewareProp","useAutoUpdate","useAutoUpdateProp","wheelGrowRef","widthModeProp","freeOverlay","cover","panelWidth","echo","knobProps","painted","hasBorder","borderRadius","borderWidth","measuredRadius","setMeasuredRadius","radiusStop","panelPadPx","panelPadding","padding","radiusCap","paddingPx","capped","dropdownRadius","coverCornerInset","ceil","SQRT1_2","mounted","setMounted","visible","setVisible","arrowUp","setArrowUp","arrowDown","setArrowDown","placement","setPlacement","onBeforeOpenRef","current","onOpenChangeRef","closingTimerRef","triggerRef","arrowScrollDirRef","floatingStyleRef","initializingRef","needsSetupRef","computePlacement","innerHeight","bottom","updateArrows","element","up","scrollTop","down","scrollHeight","clientHeight","prev","setupForOpen","_onBeforeOpenRef_current","_groupSurfaceOf","call","clearTimeout","inner","outer","requestAnimationFrame","cancelAnimationFrame","setTimeout","motion","defaultMiddleware","param2","rects","elements","document","documentElement","clientWidth","innerWidth","room","apply","trigger","available","Object","assign","floating","style","minWidth","maxWidth","x","y","strategy","context","refs","update","onOpenChange2","nextOpen","whileElementsMounted","setReferenceRef","node","setReference","scrollY","floatingEl","preventScroll","preventScroll2","e","contains","target","_ref","deltaY","_repositionRef_current","scrollEl","atTop","atBottom","preventDefault","preventKeyScroll","preventKeyScroll2","includes","code","preventTouchScroll","preventTouchScroll2","scrollTo","restoreScroll","passive","capture","removeEventListener","rafId","throttled","throttled2","trig"],"sources":["useFloatingPanel.native.js"],"sourcesContent":["import { motionDurationMs, motionFor } from \"@multiplatform.one/theme\";\nimport { cssAnimationConfig } from \"@multiplatform.one/theme\";\nimport { autoUpdate, offset, shift, size, useFloating } from \"@floating-ui/react\";\nimport { OVERLAY_ANCHOR_GAP, OVERLAY_ATTACH_GAP, radiusStopFromToken, resolveRadiusClass, useResolvedKnobs } from \"@multiplatform.one/theme\";\nimport { useCallback, useEffect, useLayoutEffect, useRef, useState } from \"react\";\nimport { getTokenValue } from \"tamagui\";\nimport { clampDropdownRadius, scrollArrowThreshold } from \"../shared/floatingList\";\nimport { containsAcrossPanels } from \"../shared/panelPortal\";\nimport { groupSurfaceOf } from \"./paintedBox\";\nimport { panelWidthBox, screenBounds } from \"./panelWidth\";\nfunction _instanceof(left, right) {\n \"@swc/helpers - instanceof\";\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nvar canUseDom = typeof window !== \"undefined\" && typeof window.addEventListener === \"function\";\nfunction roundToDevicePixel(value) {\n var dpr = typeof window !== \"undefined\" ? window.devicePixelRatio || 1 : 1;\n return Math.round(value * dpr) / dpr;\n}\nvar panelAnimationDuration = motionDurationMs(motionFor(\"quick\").overlay.transition);\nvar panelGrowDuration = panelAnimationDuration;\nvar panelViewportPadding = 10;\nfunction screenRoom(reference, viewportWidth) {\n var box = reference.getBoundingClientRect();\n return screenBounds({\n triggerLeft: box.left,\n triggerRight: box.right,\n boundsLeft: panelViewportPadding,\n boundsRight: viewportWidth - panelViewportPadding,\n rtl: typeof Element !== \"undefined\" && _instanceof(reference, Element) && getComputedStyle(reference).direction === \"rtl\"\n });\n}\nvar panelAnchorOffset = OVERLAY_ATTACH_GAP;\nfunction panelCoverOffset(referenceHeight) {\n return panelAnchorOffset - referenceHeight;\n}\nfunction panelTransitionFor(transition) {\n var _cssAnimationConfig_transition;\n if (!transition) return \"none\";\n var timing = (_cssAnimationConfig_transition = cssAnimationConfig[transition]) !== null && _cssAnimationConfig_transition !== void 0 ? _cssAnimationConfig_transition : cssAnimationConfig.medium;\n return [\n \"opacity\",\n \"transform\",\n \"top\",\n \"max-height\",\n \"height\"\n ].map(function(property) {\n return `${property} ${timing}`;\n }).join(\", \");\n}\nvar panelTransition = panelTransitionFor(motionFor(\"quick\").overlay.transition);\nfunction resolvePanelWidthMode(widthMode, fitContent) {\n if (widthMode) return widthMode;\n return fitContent ? \"fit-content\" : \"at-least-trigger\";\n}\nfunction paintsACorner(el) {\n var cs = getComputedStyle(el);\n if (Number.parseFloat(cs.borderTopLeftRadius) > 0) return true;\n if (Number.parseFloat(cs.borderTopWidth) > 0 && cs.borderTopStyle !== \"none\") return true;\n var bg = cs.backgroundColor;\n return !!bg && bg !== \"transparent\" && bg !== \"rgba(0, 0, 0, 0)\";\n}\nfunction paintedCornerBox(root) {\n if (paintsACorner(root)) return root;\n var rootRect = root.getBoundingClientRect();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Array.from(root.querySelectorAll(\"*\"))[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var el = _step.value;\n var rect = el.getBoundingClientRect();\n if (rect.width <= 0 || rect.height <= 0) continue;\n if (Math.abs(rect.left - rootRect.left) > 1 || Math.abs(rect.top - rootRect.top) > 1) continue;\n if (paintsACorner(el)) return el;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return null;\n}\nfunction measureDrawnRadius(el) {\n var box = paintedCornerBox(el);\n if (!box) return null;\n var raw = parseFloat(getComputedStyle(box).borderTopLeftRadius);\n if (!Number.isFinite(raw)) return null;\n var rect = box.getBoundingClientRect();\n if (rect.width <= 0 || rect.height <= 0) return null;\n return Math.min(raw, rect.height / 2, rect.width / 2);\n}\nfunction useFloatingPanel(param) {\n var { open, onOpenChange, disabled, onBeforeOpen, repositionRef, scrollBoundaryRef, middleware: middlewareProp, useAutoUpdate: useAutoUpdateProp = true, wheelGrowRef, widthMode: widthModeProp, fitContent, freeOverlay = false, cover = true, panelWidth, echo = cover && !freeOverlay } = param;\n var widthMode = resolvePanelWidthMode(widthModeProp, fitContent);\n var { knobProps } = useResolvedKnobs({\n painted: false\n });\n var hasBorder = knobProps.borderRadius.borderWidth > 0;\n var [measuredRadius, setMeasuredRadius] = useState(null);\n var radiusStop = radiusStopFromToken(knobProps.borderRadius.borderRadius);\n var panelPadPx = getTokenValue(knobProps.panelPadding.padding, \"space\");\n var radiusCap = radiusStop && typeof panelPadPx === \"number\" ? resolveRadiusClass(\"CONTAINER-CAP\", radiusStop, {\n paddingPx: panelPadPx\n }) : void 0;\n var capped = radiusCap === void 0 ? measuredRadius !== null && measuredRadius !== void 0 ? measuredRadius : clampDropdownRadius(knobProps.borderRadius.borderRadius) : Math.min(measuredRadius !== null && measuredRadius !== void 0 ? measuredRadius : radiusCap, radiusCap);\n var dropdownRadius = cover && !freeOverlay && measuredRadius != null ? measuredRadius : capped;\n var coverCornerInset = typeof dropdownRadius === \"number\" && typeof capped === \"number\" && dropdownRadius > capped ? Math.ceil(dropdownRadius * (1 - Math.SQRT1_2)) : 0;\n var [mounted, setMounted] = useState(false);\n var [visible, setVisible] = useState(false);\n var [arrowUp, setArrowUp] = useState(false);\n var [arrowDown, setArrowDown] = useState(false);\n var [placement, setPlacement] = useState(\"bottom-start\");\n var onBeforeOpenRef = useRef(onBeforeOpen);\n onBeforeOpenRef.current = onBeforeOpen;\n var onOpenChangeRef = useRef(onOpenChange);\n onOpenChangeRef.current = onOpenChange;\n var closingTimerRef = useRef(null);\n var triggerRef = useRef(null);\n var arrowScrollDirRef = useRef(null);\n var floatingStyleRef = useRef({});\n var initializingRef = useRef(false);\n var needsSetupRef = useRef(true);\n var computePlacement = useCallback(function() {\n var el = triggerRef.current;\n if (!el || typeof window === \"undefined\") return;\n var rect = el.getBoundingClientRect();\n setPlacement(rect.top > window.innerHeight - rect.bottom ? \"top-start\" : \"bottom-start\");\n }, []);\n var updateArrows = useCallback(function(element) {\n var up = element.scrollTop > scrollArrowThreshold;\n var down = element.scrollTop < element.scrollHeight - element.clientHeight - scrollArrowThreshold;\n setArrowUp(function(prev) {\n return prev !== up ? up : prev;\n });\n setArrowDown(function(prev) {\n return prev !== down ? down : prev;\n });\n }, []);\n var setupForOpen = useCallback(function() {\n var _onBeforeOpenRef_current;\n computePlacement();\n if (canUseDom && triggerRef.current) {\n var _groupSurfaceOf;\n setMeasuredRadius(freeOverlay ? null : measureDrawnRadius((_groupSurfaceOf = groupSurfaceOf(triggerRef.current)) !== null && _groupSurfaceOf !== void 0 ? _groupSurfaceOf : triggerRef.current));\n }\n (_onBeforeOpenRef_current = onBeforeOpenRef.current) === null || _onBeforeOpenRef_current === void 0 ? void 0 : _onBeforeOpenRef_current.call(onBeforeOpenRef);\n if (closingTimerRef.current) clearTimeout(closingTimerRef.current);\n floatingStyleRef.current = {};\n initializingRef.current = true;\n setMounted(true);\n }, [\n computePlacement,\n freeOverlay\n ]);\n useEffect(function() {\n if (open) {\n if (needsSetupRef.current) setupForOpen();\n needsSetupRef.current = true;\n var inner = 0;\n var outer = requestAnimationFrame(function() {\n if (typeof requestAnimationFrame === \"function\") {\n inner = requestAnimationFrame(function() {\n return setVisible(true);\n });\n }\n });\n return function() {\n if (typeof cancelAnimationFrame !== \"function\") return;\n cancelAnimationFrame(outer);\n cancelAnimationFrame(inner);\n };\n } else {\n setVisible(false);\n setArrowUp(false);\n setArrowDown(false);\n if (closingTimerRef.current) clearTimeout(closingTimerRef.current);\n closingTimerRef.current = setTimeout(function() {\n setMounted(false);\n }, motionDurationMs(knobProps.motion.overlay.transition));\n }\n }, [\n open,\n setupForOpen,\n knobProps.motion.overlay.transition\n ]);\n useEffect(function() {\n return function() {\n if (closingTimerRef.current) clearTimeout(closingTimerRef.current);\n };\n }, []);\n var defaultMiddleware = [\n // Cover ruling: the family opens OVER its trigger (top edge on the\n // trigger's top edge). A free overlay keeps the anchor gap.\n offset(function(param2) {\n var { rects } = param2;\n return freeOverlay ? OVERLAY_ANCHOR_GAP : cover ? panelCoverOffset(rects.reference.height) : panelAnchorOffset;\n }),\n // Horizontal collision handling: panels anchored near the right viewport\n // edge (e.g. a ColorPicker in the last table column) shift back into view\n // instead of clipping. Vertical placement is handled by computePlacement.\n // A screen-wide panel shifts inside the same room its width was cut to,\n // so a trigger in the page gutter keeps its start edge.\n shift(function(param2) {\n var { elements } = param2;\n if (panelWidth !== \"screen\") return {\n padding: panelViewportPadding\n };\n var viewportWidth = document.documentElement.clientWidth || window.innerWidth || 0;\n var room = screenRoom(elements.reference, viewportWidth);\n return {\n padding: {\n left: room.left,\n right: viewportWidth - room.right\n }\n };\n }),\n ...panelWidth !== void 0 ? [\n size({\n apply(param2) {\n var { rects: { reference }, elements } = param2;\n var viewportWidth = document.documentElement.clientWidth || window.innerWidth || 0;\n var room = panelWidth === \"screen\" ? screenRoom(elements.reference, viewportWidth) : {\n left: panelViewportPadding,\n right: viewportWidth - panelViewportPadding\n };\n var box = panelWidthBox(panelWidth, {\n trigger: reference.width,\n available: room.right - room.left,\n echo\n });\n Object.assign(floatingStyleRef.current, box);\n elements.floating.style.minWidth = `${box.minWidth}px`;\n elements.floating.style.maxWidth = `${box.maxWidth}px`;\n elements.floating.style.width = box.width === void 0 ? \"\" : `${box.width}px`;\n },\n padding: panelViewportPadding\n })\n ] : widthMode === \"fit-content\" ? [] : [\n size({\n apply(param2) {\n var { rects: { reference: { width } }, elements } = param2;\n var style = widthMode === \"match-trigger\" ? {\n minWidth: width,\n width,\n maxWidth: width\n } : {\n minWidth: width\n };\n Object.assign(floatingStyleRef.current, style);\n elements.floating.style.minWidth = `${width}px`;\n if (widthMode === \"match-trigger\") {\n elements.floating.style.width = `${width}px`;\n elements.floating.style.maxWidth = `${width}px`;\n }\n },\n padding: panelViewportPadding\n })\n ]\n ];\n var { x, y, strategy, context, refs, update } = useFloating({\n open,\n onOpenChange: function onOpenChange2(nextOpen) {\n if (disabled && nextOpen) return;\n if (nextOpen) {\n needsSetupRef.current = false;\n setupForOpen();\n var el = refs.floating.current;\n if (el) el.scrollTop = 0;\n }\n onOpenChangeRef.current(nextOpen);\n },\n strategy: \"fixed\",\n placement,\n whileElementsMounted: useAutoUpdateProp ? autoUpdate : void 0,\n middleware: middlewareProp !== null && middlewareProp !== void 0 ? middlewareProp : defaultMiddleware\n });\n var setReferenceRef = useCallback(function(node) {\n triggerRef.current = node;\n refs.setReference(node);\n }, [\n refs\n ]);\n useLayoutEffect(function() {\n if (!open || !mounted || !canUseDom) return;\n var scrollY = window.scrollY;\n var floatingEl = refs.floating.current;\n if (!floatingEl) return;\n var preventScroll = function preventScroll2(e) {\n if (floatingEl.contains(e.target)) {\n var _ref;\n if (wheelGrowRef && Math.abs(e.deltaY) > 0) {\n var _repositionRef_current;\n wheelGrowRef.current = true;\n repositionRef === null || repositionRef === void 0 ? void 0 : (_repositionRef_current = repositionRef.current) === null || _repositionRef_current === void 0 ? void 0 : _repositionRef_current.call(repositionRef);\n }\n var scrollEl = (_ref = scrollBoundaryRef === null || scrollBoundaryRef === void 0 ? void 0 : scrollBoundaryRef.current) !== null && _ref !== void 0 ? _ref : floatingEl;\n var atTop = scrollEl.scrollTop <= 0 && e.deltaY < 0;\n var atBottom = scrollEl.scrollTop >= scrollEl.scrollHeight - scrollEl.clientHeight - 1 && e.deltaY > 0;\n if (atTop || atBottom) e.preventDefault();\n return;\n }\n if (containsAcrossPanels(floatingEl, e.target)) return;\n e.preventDefault();\n };\n var preventKeyScroll = function preventKeyScroll2(e) {\n if (containsAcrossPanels(floatingEl, e.target)) return;\n if ([\n \"ArrowDown\",\n \"ArrowUp\",\n \"Space\",\n \"PageDown\",\n \"PageUp\",\n \"Home\",\n \"End\"\n ].includes(e.code)) {\n e.preventDefault();\n }\n };\n var preventTouchScroll = function preventTouchScroll2(e) {\n if (containsAcrossPanels(floatingEl, e.target)) return;\n e.preventDefault();\n };\n window.scrollTo(0, scrollY);\n var restoreScroll = requestAnimationFrame(function() {\n return window.scrollTo(0, scrollY);\n });\n document.addEventListener(\"wheel\", preventScroll, {\n passive: false,\n capture: true\n });\n document.addEventListener(\"keydown\", preventKeyScroll, {\n capture: true\n });\n document.addEventListener(\"touchmove\", preventTouchScroll, {\n passive: false,\n capture: true\n });\n return function() {\n if (typeof cancelAnimationFrame === \"function\") cancelAnimationFrame(restoreScroll);\n document.removeEventListener(\"wheel\", preventScroll, {\n capture: true\n });\n document.removeEventListener(\"keydown\", preventKeyScroll, {\n capture: true\n });\n document.removeEventListener(\"touchmove\", preventTouchScroll, {\n capture: true\n });\n };\n }, [\n open,\n mounted,\n refs,\n scrollBoundaryRef,\n wheelGrowRef,\n repositionRef\n ]);\n useEffect(function() {\n if (!open || !canUseDom) return;\n var rafId = 0;\n var throttled = function throttled2() {\n if (rafId) return;\n rafId = requestAnimationFrame(function() {\n var _repositionRef_current;\n rafId = 0;\n var trig = triggerRef.current;\n if (trig) {\n var rect = trig.getBoundingClientRect();\n if (rect.bottom < 0 || rect.top > window.innerHeight) {\n onOpenChangeRef.current(false);\n return;\n }\n }\n repositionRef === null || repositionRef === void 0 ? void 0 : (_repositionRef_current = repositionRef.current) === null || _repositionRef_current === void 0 ? void 0 : _repositionRef_current.call(repositionRef);\n });\n };\n window.addEventListener(\"scroll\", throttled, {\n passive: true\n });\n window.addEventListener(\"resize\", throttled, {\n passive: true\n });\n return function() {\n window.removeEventListener(\"scroll\", throttled);\n window.removeEventListener(\"resize\", throttled);\n if (rafId) cancelAnimationFrame(rafId);\n };\n }, [\n open,\n repositionRef\n ]);\n useLayoutEffect(function() {\n if (!canUseDom) return;\n window.addEventListener(\"resize\", update);\n if (open) update();\n return function() {\n return window.removeEventListener(\"resize\", update);\n };\n }, [\n update,\n open\n ]);\n return {\n context,\n refs,\n x: roundToDevicePixel(x),\n y: roundToDevicePixel(y),\n strategy,\n update,\n mounted,\n visible,\n placement,\n arrowUp,\n arrowDown,\n triggerRef,\n arrowScrollDirRef,\n floatingStyleRef,\n initializingRef,\n computePlacement,\n updateArrows,\n setReferenceRef,\n setMounted,\n dropdownRadius,\n coverCornerInset,\n hasBorder,\n panelTransition: panelTransitionFor(knobProps.motion.overlay.transition),\n knobProps\n };\n}\nexport {\n measureDrawnRadius,\n paintedCornerBox,\n panelAnchorOffset,\n panelAnimationDuration,\n panelCoverOffset,\n panelGrowDuration,\n panelTransition,\n panelTransitionFor,\n panelViewportPadding,\n resolvePanelWidthMode,\n useFloatingPanel\n};\n//# sourceMappingURL=useFloatingPanel.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,13 +2,14 @@ import { transitionProps } from "@multiplatform.one/theme";
|
|
|
2
2
|
import { getFontSized } from "@tamagui/get-font-sized";
|
|
3
3
|
import { createContext, forwardRef, useCallback, useContext, useEffect, useState } from "react";
|
|
4
4
|
import { Platform, Pressable as RNPressable } from "react-native-web";
|
|
5
|
-
import { Button as TButton, Input as TInput, Label, Text, View, XGroup, createStyledContext, getVariable, isWeb, styled, useGetThemedIcon, useTheme } from "tamagui";
|
|
5
|
+
import { Button as TButton, Input as TInput, Label, Text, View, XGroup, createStyledContext, getTokenValue, getVariable, isWeb, styled, useGetThemedIcon, useTheme } from "tamagui";
|
|
6
6
|
import { ensureCompositeFocusRing, FIELD_FOCUS_REST, FIELD_FOCUS_STYLE, fieldFocusCss, useTouchSurface, isTouchSurface, recipeFamilies, resolveControlRadius, resolveGlyphPaint, SIZE_RECIPE_RADIUS_TOKEN_TO_STOP, sizeRecipeBoxVariants, sizeRecipeForToken, sizeRecipeIconVariants, sizeRecipeTypeVariants, textFieldInset, useResolvedKnobs, warnOutlineNone, warnPositiveTabIndex, warnSizeRecipeEscape } from "@multiplatform.one/theme";
|
|
7
7
|
import { formButtonColors, formCommonColors, formInputColors } from "../shared/colorRamps.mjs";
|
|
8
8
|
import { useControlGroupVertical, useControlGrouped } from "../shared/groupContext.mjs";
|
|
9
9
|
import { nativeAutoFocus } from "../shared/nativeAutoFocus.mjs";
|
|
10
10
|
import { pressSlopProps } from "../shared/pressSlopProps.mjs";
|
|
11
11
|
import { useIsInTableCell } from "../shared/tableCellContext.mjs";
|
|
12
|
+
import { useInPanelEcho, usePanelTriggerRadiusReporter } from "../FloatingPanel/echoContext.mjs";
|
|
12
13
|
import { useFieldA11y, useFieldDescribedBy } from "../fieldLayout.mjs";
|
|
13
14
|
import { ThemedTextArea } from "../themedPrimitives.mjs";
|
|
14
15
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -328,6 +329,22 @@ const InputGroupImpl = InputGroupFrame.styleable((groupProps, forwardedRef) => {
|
|
|
328
329
|
minWidth: 0,
|
|
329
330
|
maxWidth: "100%"
|
|
330
331
|
} : void 0;
|
|
332
|
+
const inPanelEcho = useInPanelEcho();
|
|
333
|
+
const reportRadius = usePanelTriggerRadiusReporter();
|
|
334
|
+
const drawnRadiusToken = sizeTableRadius?.borderRadius ?? knobProps.borderRadius.borderRadius;
|
|
335
|
+
const drawnRadius = typeof drawnRadiusToken === "number" ? drawnRadiusToken : Number(getTokenValue(drawnRadiusToken, "radius"));
|
|
336
|
+
useEffect(() => {
|
|
337
|
+
if (reportRadius && !inPanelEcho && !grouped && !inTableCell && Number.isFinite(drawnRadius)) {
|
|
338
|
+
reportRadius(drawnRadius);
|
|
339
|
+
}
|
|
340
|
+
}, [reportRadius, inPanelEcho, grouped, inTableCell, drawnRadius]);
|
|
341
|
+
const echoChrome = inPanelEcho ? {
|
|
342
|
+
borderColor: "transparent",
|
|
343
|
+
backgroundColor: "transparent",
|
|
344
|
+
elevation: void 0,
|
|
345
|
+
shadowColor: "transparent",
|
|
346
|
+
shadowOpacity: 0
|
|
347
|
+
} : void 0;
|
|
331
348
|
if (inTableCell) {
|
|
332
349
|
return /* @__PURE__ */jsx(FocusContext.Provider, {
|
|
333
350
|
focused,
|
|
@@ -423,6 +440,7 @@ const InputGroupImpl = InputGroupFrame.styleable((groupProps, forwardedRef) => {
|
|
|
423
440
|
...disabledState.surfaceKnobProps
|
|
424
441
|
}
|
|
425
442
|
} : void 0),
|
|
443
|
+
...echoChrome,
|
|
426
444
|
overflow: boxOverflow,
|
|
427
445
|
children: [children, trailingSlot]
|
|
428
446
|
}))
|