@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":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","transitionProps","CalendarBlankIcon","CaretLeftIcon","CaretRightIcon","ClockIcon","XIcon","ensureFocusVisibleRing","formatAbsoluteDate","getMonthNames","useAccentOnSurface","useGlyphColor","useResolvedKnobs","useCallback","useEffect","useMemo","useRef","useState","AnimatePresence","SizableText","Text","View","isWeb","FloatingPanel","floatingPanelActionProps","isNestedPanelAction","Input","InputParts","formCommonColors","t","weekdays","months","yearPageSize","useDateAnimation","current","prev","direction","animation","enterStyle","opacity","x","exitStyle","animationKey","monthNames","useCalendarData","displayDate","year","getFullYear","month","getMonth","firstDay","Date","lastDay","startDate","setDate","getDate","getDay","endDate","days","push","monthName","today","useDateNavigation","initialDate","setDisplayDate","navigateMonth","next","setMonth","toWeeks","result","i","length","slice","isSameDay","a","b","toDateString","dayCellRadius","knobProps","style","borderRadius","pointy","useCalendarKnobs","CalendarPanelFrame","param","children","px","nestedControl","flexDirection","alignItems","gap","minWidth","alignSelf","panelPadding","splitNestedControl","nested","hitSlop","box","calendarKeyHandler","onPress","e","key","_e_preventDefault","preventDefault","call","CalendarChromeButton","label","role","cursor","justifyContent","outlineWidth","focusStyle","focusVisibleStyle","tabIndex","onKeyDown","accessible","CalendarTextButton","paddingVertical","paddingHorizontal","CalendarDaySlot","width","height","position","CalendarWeekRow","CalendarDayCell","day","selected","disabled","visible","dimmed","selectedBackground","accentText","showTodayMark","resolvedTabIndex","String","onPress1","pointerEvents","backgroundColor","theme","borderWidth","borderColor","zIndex","outlineOffset","onKeyDown1","textWeight","fontWeight","color","text","CalendarDays","calendarData","minDate","maxDate","isSelected","onSelect","skipEmptyWeeks","rangeStripe","onToday","selectionCapped","weeks","focusedDay","setFocusedDay","_ref","_ref1","find","moveFocus","from","delta","idx","findIndex","requestAnimationFrame","_document_querySelector_focus","_document_querySelector","document","querySelector","focus","todayOutOfRange","motion","slide","WeekView","map","week","hasCurrentMonthDay","some","d","toISOString","isCurrentMonth","isToday","isOutOfRange","isDisabled","cell","muted","textAlign","CalendarHeader","onPrevMonth","onNextMonth","onYearPress","onMonthPress","showPrev","showNext","glyphColor","size","controlIcon","fontSize","heading","MonthGrid","currentYear","selectedMonth","onSelectMonth","cellW","flexWrap","name","index","maxWidth","minHeight","maxHeight","YearGrid","yearPageStart","selectedYear","onSelectYear","onPrevPage","onNextPage","years","DatePickerClearButton","onReset","Action","DatePickerInputTrigger","value","onButtonPress","placeholder","id","open","glyph","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaRequired","ariaInvalid","touchInput","handleTriggerKey","handleTriggerKey2","code","_e_preventDefault1","Glyph","Box","flex","elevation","Section","Icon","adornment","Area","readOnly","placeholderTextColor","DatePickerReadOnlyField","DatePickerPopoverShell","onOpenChange","trigger","triggerEnd","triggerA11y","clearValue","onClear","nativeClear","sizing","contentPadding","widthMode","CalendarViewSwitcher","onSetDisplayDate","viewMode","setViewMode","setYearPageStart","handleSelectMonth","newDate","handleSelectYear","setFullYear","s","formatDateDisplay","date"],"sources":["parts.native.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { transitionProps } from \"@multiplatform.one/theme\";\nimport { CalendarBlankIcon, CaretLeftIcon, CaretRightIcon, ClockIcon, XIcon } from \"@phosphor-icons/react\";\nimport { ensureFocusVisibleRing, formatAbsoluteDate, getMonthNames, useAccentOnSurface, useGlyphColor, useResolvedKnobs } from \"@multiplatform.one/theme\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { AnimatePresence, SizableText, Text, View, isWeb } from \"tamagui\";\nimport { FloatingPanel, floatingPanelActionProps, isNestedPanelAction } from \"../../FloatingPanel\";\nimport { Input as InputParts } from \"../../InputParts\";\nimport { formCommonColors } from \"../../shared/colorRamps\";\nimport { t } from \"../../shared/t\";\nvar weekdays = [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n];\nvar months = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n];\nvar yearPageSize = 12;\nfunction useDateAnimation(current) {\n var prev = useRef(null);\n var direction = useMemo(function() {\n if (prev.current === null) return 0;\n return current > prev.current ? 1 : current < prev.current ? -1 : 0;\n }, [\n current\n ]);\n useEffect(function() {\n prev.current = current;\n }, [\n current\n ]);\n var animation = useMemo(function() {\n return {\n enterStyle: {\n opacity: 0,\n x: direction * 15\n },\n exitStyle: {\n opacity: 0,\n x: direction * -15\n }\n };\n }, [\n direction\n ]);\n return {\n animation,\n animationKey: current\n };\n}\nvar monthNames = getMonthNames();\nfunction useCalendarData(displayDate) {\n return useMemo(function() {\n var year = displayDate.getFullYear();\n var month = displayDate.getMonth();\n var firstDay = new Date(year, month, 1);\n var lastDay = new Date(year, month + 1, 0);\n var startDate = new Date(firstDay);\n startDate.setDate(startDate.getDate() - firstDay.getDay());\n var endDate = new Date(lastDay);\n endDate.setDate(endDate.getDate() + (6 - lastDay.getDay()));\n var days = [];\n var current = new Date(startDate);\n while (current <= endDate) {\n days.push(new Date(current));\n current.setDate(current.getDate() + 1);\n }\n return {\n year,\n month,\n monthName: monthNames[month],\n days,\n today: /* @__PURE__ */ new Date()\n };\n }, [\n displayDate\n ]);\n}\nfunction useDateNavigation(initialDate) {\n var [displayDate, setDisplayDate] = useState(initialDate !== null && initialDate !== void 0 ? initialDate : /* @__PURE__ */ new Date());\n var navigateMonth = useCallback(function(direction) {\n setDisplayDate(function(prev) {\n var next = new Date(prev);\n next.setDate(1);\n next.setMonth(next.getMonth() + (direction === \"prev\" ? -1 : 1));\n return next;\n });\n }, []);\n return {\n displayDate,\n setDisplayDate,\n navigateMonth\n };\n}\nfunction toWeeks(days) {\n var result = [];\n for (var i = 0; i < days.length; i += 7) {\n result.push(days.slice(i, i + 7));\n }\n return result;\n}\nfunction isSameDay(a, b) {\n if (!a || !b) return false;\n return a.toDateString() === b.toDateString();\n}\nfunction dayCellRadius(knobProps) {\n return {\n style: {\n borderRadius: knobProps.pointy ? 0 : 9999\n }\n };\n}\nfunction useCalendarKnobs() {\n return useResolvedKnobs();\n}\nfunction CalendarPanelFrame(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"column\",\n alignItems: \"center\",\n ...knobProps.gap,\n minWidth: px * 7,\n alignSelf: \"center\",\n ...knobProps.panelPadding,\n \"data-testid\": \"date-picker-calendar\",\n children\n });\n}\nfunction splitNestedControl(nested) {\n var { px, hitSlop, ...box } = nested;\n return {\n px,\n hitSlop,\n box\n };\n}\nfunction calendarKeyHandler(onPress) {\n return function(e) {\n if (e.key === \"Enter\" || e.key === \" \") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onPress();\n }\n };\n}\nfunction CalendarChromeButton(param) {\n var { onPress, label, children } = param;\n var { knobProps } = useCalendarKnobs();\n var { hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n role: \"button\",\n \"aria-label\": label,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing(),\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarTextButton(param) {\n var { onPress, children } = param;\n return /* @__PURE__ */ _jsx(View, {\n role: \"button\",\n cursor: \"pointer\",\n paddingVertical: 2,\n paddingHorizontal: 4,\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing(),\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarDaySlot(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n children\n });\n}\nfunction CalendarWeekRow(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n width: px * 7,\n children\n });\n}\nfunction CalendarDayCell(param) {\n var { day, selected, today, disabled, visible = true, dimmed, tabIndex, onPress, onKeyDown, selectedBackground } = param;\n var { knobProps } = useCalendarKnobs();\n var accentText = useAccentOnSurface();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n if (!visible) {\n return /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px\n });\n }\n var showTodayMark = !!today && !selected;\n var resolvedTabIndex = tabIndex !== null && tabIndex !== void 0 ? tabIndex : disabled ? -1 : 0;\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n ...dayCellRadius(knobProps),\n role: \"button\",\n \"aria-label\": String(day.getDate()),\n \"aria-disabled\": disabled || void 0,\n \"aria-pressed\": selected || void 0,\n \"aria-current\": today ? \"date\" : void 0,\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress: function onPress1() {\n if (!disabled) onPress();\n },\n // Adjacent-month spill uses this file's 0.45 day-cell dim.\n // Unavailable (min/max or multi-select cap) uses the 0.5 disabled\n // idiom from the Today control and the trigger Box. Unavailable\n // wins when both apply so an out-of-range adjacent day does not\n // look like a pickable spill-over day. Bento paints this state\n // identical to a choosable cell; we do not adopt that.\n opacity: disabled ? 0.5 : dimmed ? 0.45 : 1,\n pointerEvents: disabled ? \"none\" : \"auto\",\n backgroundColor: selected ? selectedBackground !== null && selectedBackground !== void 0 ? selectedBackground : \"$background\" : \"transparent\",\n theme: selected ? \"accent\" : void 0,\n borderWidth: showTodayMark ? 2 : 0,\n borderColor: showTodayMark ? accentText : \"transparent\",\n zIndex: 1,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n \"data-calendar-day\": `${day.getFullYear()}-${day.getMonth()}-${day.getDate()}`,\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: resolvedTabIndex,\n onKeyDown: function onKeyDown1(e) {\n if (!disabled) calendarKeyHandler(onPress)(e);\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n }\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n fontWeight: selected ? \"bold\" : knobProps.textWeight.fontWeight,\n color: selected ? void 0 : today ? accentText : formCommonColors.text,\n children: day.getDate()\n })\n });\n}\nfunction CalendarDays(param) {\n var { calendarData, minDate, maxDate, isSelected, onSelect, selectedBackground, skipEmptyWeeks, rangeStripe, onToday, selectionCapped } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(`${calendarData.year}-${calendarData.month}`);\n var weeks = toWeeks(calendarData.days);\n var { px } = knobProps.nestedControl;\n var [focusedDay, setFocusedDay] = useState(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n return (_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null;\n });\n useEffect(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n setFocusedDay((_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null);\n }, [\n calendarData.year,\n calendarData.month\n ]);\n var moveFocus = useCallback(function(from, delta) {\n var idx = calendarData.days.findIndex(function(day) {\n return isSameDay(day, from);\n });\n var next = calendarData.days[idx + delta];\n if (!next) return;\n setFocusedDay(next);\n if (!isWeb) return;\n var key = `${next.getFullYear()}-${next.getMonth()}-${next.getDate()}`;\n requestAnimationFrame(function() {\n var _document_querySelector_focus, _document_querySelector;\n (_document_querySelector = document.querySelector(`[data-calendar-day=\"${key}\"]`)) === null || _document_querySelector === void 0 ? void 0 : (_document_querySelector_focus = _document_querySelector.focus) === null || _document_querySelector_focus === void 0 ? void 0 : _document_querySelector_focus.call(_document_querySelector);\n });\n }, [\n calendarData.days\n ]);\n var todayOutOfRange = minDate != null && calendarData.today < minDate || maxDate != null && calendarData.today > maxDate;\n return /* @__PURE__ */ _jsx(AnimatePresence, {\n children: /* @__PURE__ */ _jsxs(View, {\n ...transitionProps(knobProps.motion.slide),\n ...animation,\n alignSelf: \"center\",\n gap: \"$1\",\n width: px * 7,\n role: \"grid\",\n \"aria-label\": t(\"Calendar\"),\n children: [\n /* @__PURE__ */ _jsx(WeekView, {}),\n weeks.map(function(week) {\n var hasCurrentMonthDay = week.some(function(d) {\n return d.getMonth() === calendarData.month;\n });\n if (skipEmptyWeeks && !hasCurrentMonthDay) {\n return /* @__PURE__ */ _jsx(View, {\n height: \"$3\"\n }, week[0].toISOString());\n }\n return /* @__PURE__ */ _jsx(CalendarWeekRow, {\n children: week.map(function(day) {\n var key = day.toISOString();\n var isCurrentMonth = day.getMonth() === calendarData.month;\n var isToday = isSameDay(calendarData.today, day);\n var isOutOfRange = minDate != null && day < minDate || maxDate != null && day > maxDate;\n var isDisabled = isOutOfRange || !!selectionCapped && !isSelected(day);\n var cell = /* @__PURE__ */ _jsx(CalendarDayCell, {\n day,\n selected: isCurrentMonth && isSelected(day),\n today: isToday,\n disabled: isDisabled,\n visible: true,\n dimmed: !isCurrentMonth,\n tabIndex: isSameDay(focusedDay, day) ? 0 : -1,\n onPress: function onPress() {\n return onSelect(day);\n },\n onKeyDown: function onKeyDown(e) {\n var _e_preventDefault;\n var delta = e.key === \"ArrowLeft\" ? -1 : e.key === \"ArrowRight\" ? 1 : e.key === \"ArrowUp\" ? -7 : e.key === \"ArrowDown\" ? 7 : 0;\n if (!delta) return;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n moveFocus(day, delta);\n },\n selectedBackground\n });\n if (!rangeStripe) {\n return /* @__PURE__ */ _jsx(View, {\n children: cell\n }, key);\n }\n return /* @__PURE__ */ _jsxs(CalendarDaySlot, {\n children: [\n rangeStripe(day),\n cell\n ]\n }, key);\n })\n }, week[0].toISOString());\n }),\n onToday ? /* @__PURE__ */ _jsx(CalendarTextButton, {\n onPress: todayOutOfRange ? function() {\n } : onToday,\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n color: todayOutOfRange ? formCommonColors.muted : formCommonColors.text,\n opacity: todayOutOfRange ? 0.5 : 1,\n children: t(\"Today\")\n })\n }) : null\n ]\n })\n }, animationKey);\n}\nfunction WeekView() {\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n children: weekdays.map(function(day) {\n return /* @__PURE__ */ _jsx(Text, {\n width: px,\n textAlign: \"center\",\n color: formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: t(day)\n }, day);\n })\n });\n}\nfunction CalendarHeader(param) {\n var { year, monthName, onPrevMonth, onNextMonth, onYearPress, onMonthPress, showPrev = true, showNext = true } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = useGlyphColor();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsxs(View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n showPrev && onPrevMonth ? /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onPrevMonth,\n label: t(\"Previous month\"),\n children: /* @__PURE__ */ _jsx(CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px\n }),\n /* @__PURE__ */ _jsxs(View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ _jsx(CalendarTextButton, {\n onPress: onMonthPress,\n children: /* @__PURE__ */ _jsx(SizableText, {\n color: \"$color\",\n size: knobProps.label.fontSize,\n ...knobProps.heading,\n children: monthName\n })\n }),\n /* @__PURE__ */ _jsx(CalendarTextButton, {\n onPress: onYearPress,\n children: /* @__PURE__ */ _jsx(Text, {\n color: formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: year\n })\n })\n ]\n }),\n showNext && onNextMonth ? /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onNextMonth,\n label: t(\"Next month\"),\n children: /* @__PURE__ */ _jsx(CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px\n })\n ]\n });\n}\nfunction MonthGrid(param) {\n var { currentYear, selectedMonth, onSelectMonth } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(currentYear);\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n return /* @__PURE__ */ _jsx(AnimatePresence, {\n children: /* @__PURE__ */ _jsx(View, {\n ...animation,\n ...transitionProps(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n alignSelf: \"center\",\n children: months.map(function(name, index) {\n var isSelected = selectedMonth === index;\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectMonth(index);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectMonth(index);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: t(name.slice(0, 3))\n })\n }, name);\n })\n })\n }, animationKey);\n}\nfunction YearGrid(param) {\n var { yearPageStart, selectedYear, onSelectYear, onPrevPage, onNextPage } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = useGlyphColor();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n var years = useMemo(function() {\n var result = [];\n for (var i = 0; i < yearPageSize; i++) {\n result.push(yearPageStart + i);\n }\n return result;\n }, [\n yearPageStart\n ]);\n var { animation, animationKey } = useDateAnimation(yearPageStart);\n return /* @__PURE__ */ _jsxs(View, {\n width: px * 7,\n alignSelf: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ _jsxs(View, {\n flexDirection: \"row\",\n width: px * 7,\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onPrevPage,\n label: t(\"Previous years\"),\n children: /* @__PURE__ */ _jsx(CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }),\n /* @__PURE__ */ _jsxs(Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n children: [\n years[0],\n \" \\u2013 \",\n years[years.length - 1]\n ]\n }),\n /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onNextPage,\n label: t(\"Next years\"),\n children: /* @__PURE__ */ _jsx(CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n })\n ]\n }),\n /* @__PURE__ */ _jsx(AnimatePresence, {\n children: /* @__PURE__ */ _jsx(View, {\n ...animation,\n ...transitionProps(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n children: years.map(function(year) {\n var isSelected = year === selectedYear;\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectYear(year);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectYear(year);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: year\n })\n }, year);\n })\n })\n }, animationKey)\n ]\n });\n}\nfunction DatePickerClearButton(param) {\n var { onReset, disabled, label } = param;\n return /* @__PURE__ */ _jsx(InputParts.Action, {\n ...floatingPanelActionProps,\n \"data-testid\": \"date-picker-clear\",\n label: label !== null && label !== void 0 ? label : t(\"Clear date\"),\n disabled,\n tabIndex: -1,\n onPress: onReset,\n children: /* @__PURE__ */ _jsx(XIcon, {})\n });\n}\nfunction DatePickerInputTrigger(param) {\n var { value, onButtonPress, onReset, disabled, placeholder, id, open, glyph = \"calendar\", \"aria-label\": ariaLabel, \"aria-labelledby\": ariaLabelledBy, \"aria-describedby\": ariaDescribedBy, \"aria-required\": ariaRequired, \"aria-invalid\": ariaInvalid, touchInput } = param;\n var handleTriggerKey = function handleTriggerKey2(e) {\n if (disabled || isNestedPanelAction(e)) return;\n var key = e.key;\n if (key === \"Enter\" || key === \" \" || key === \"ArrowDown\" || e.code === \"Space\") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onButtonPress();\n return;\n }\n if ((key === \"Backspace\" || key === \"Delete\") && value) {\n var _e_preventDefault1;\n (_e_preventDefault1 = e.preventDefault) === null || _e_preventDefault1 === void 0 ? void 0 : _e_preventDefault1.call(e);\n onReset();\n }\n };\n var Glyph = glyph === \"clock\" ? ClockIcon : CalendarBlankIcon;\n return (\n // LC-40: the disabled Box below is pointerEvents-none, so the cursor\n // affordance must ride this wrapper — the fragment's not-allowed never\n // reaches the pointer otherwise (the wrapper kept advertising\n // \"pointer\" on a disabled field).\n /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n // Native parents own the tap; expanded field paint must not consume it.\n pointerEvents: isWeb ? void 0 : \"none\",\n children: /* @__PURE__ */ _jsxs(InputParts.Box, {\n // FZ-7853: the box fills its row on every platform, so an empty\n // trigger ends on the same inset as a filled one (Yoga also has no\n // intrinsic TextInput width to size it).\n flex: 1,\n minWidth: 0,\n // Elevation is an overlay recipe: it belongs on the open panel, never\n // on the closed text-field trigger.\n elevation: void 0,\n \"data-testid\": \"date-picker-trigger\",\n // The touch input is laid absolutely over this box; without a\n // positioning context it covers the whole page and takes every tap.\n position: touchInput ? \"relative\" : void 0,\n id: touchInput ? void 0 : id,\n onPress: isWeb && !disabled && !touchInput ? onButtonPress : void 0,\n ...disabled ? {\n opacity: 0.5,\n pointerEvents: \"none\"\n } : void 0,\n ...isWeb && !touchInput ? {\n role: \"combobox\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": !!open,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-required\": ariaRequired,\n \"aria-invalid\": ariaInvalid,\n tabIndex: disabled ? -1 : 0,\n onKeyDown: handleTriggerKey\n } : void 0,\n children: [\n touchInput,\n /* @__PURE__ */ _jsx(InputParts.Section, {\n \"data-testid\": \"date-picker-glyph\",\n children: /* @__PURE__ */ _jsx(InputParts.Icon, {\n adornment: \"leading\",\n color: formCommonColors.muted,\n children: /* @__PURE__ */ _jsx(Glyph, {})\n })\n }),\n /* @__PURE__ */ _jsx(InputParts.Section, {\n children: /* @__PURE__ */ _jsx(InputParts.Area, {\n readOnly: true,\n pointerEvents: \"none\",\n tabIndex: -1,\n \"aria-hidden\": touchInput ? true : void 0,\n value,\n placeholder,\n disabled,\n color: formCommonColors.text,\n placeholderTextColor: formCommonColors.muted\n })\n }),\n value && isWeb ? /* @__PURE__ */ _jsx(InputParts.Section, {\n children: touchInput ? (\n // Above the touch input, so Clear stays reachable on the box.\n /* @__PURE__ */ _jsx(View, {\n zIndex: 2,\n children: /* @__PURE__ */ _jsx(DatePickerClearButton, {\n onReset,\n disabled\n })\n })\n ) : /* @__PURE__ */ _jsx(DatePickerClearButton, {\n onReset,\n disabled\n })\n }) : null\n ]\n })\n })\n );\n}\nfunction DatePickerReadOnlyField(param) {\n var { value, placeholder, id, glyph = \"calendar\", \"aria-label\": ariaLabel, \"aria-required\": ariaRequired, \"aria-invalid\": ariaInvalid } = param;\n var Glyph = glyph === \"clock\" ? ClockIcon : CalendarBlankIcon;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n children: /* @__PURE__ */ _jsxs(InputParts.Box, {\n flex: 1,\n minWidth: 0,\n elevation: void 0,\n \"data-testid\": \"date-picker-readonly\",\n children: [\n /* @__PURE__ */ _jsx(InputParts.Section, {\n \"data-testid\": \"date-picker-glyph\",\n children: /* @__PURE__ */ _jsx(InputParts.Icon, {\n adornment: \"leading\",\n color: formCommonColors.muted,\n children: /* @__PURE__ */ _jsx(Glyph, {})\n })\n }),\n /* @__PURE__ */ _jsx(InputParts.Section, {\n children: /* @__PURE__ */ _jsx(InputParts.Area, {\n readOnly: true,\n id,\n value,\n placeholder,\n color: formCommonColors.text,\n placeholderTextColor: formCommonColors.muted,\n \"aria-label\": ariaLabel,\n \"aria-readonly\": \"true\",\n \"aria-required\": ariaRequired,\n \"aria-invalid\": ariaInvalid\n })\n })\n ]\n })\n });\n}\nfunction DatePickerPopoverShell(param) {\n var { open, onOpenChange, trigger, triggerEnd, children, disabled, triggerA11y, clearValue, onClear } = param;\n var nativeClear = !isWeb && clearValue && onClear ? /* @__PURE__ */ _jsx(DatePickerClearButton, {\n onReset: onClear,\n disabled\n }) : void 0;\n return /* @__PURE__ */ _jsx(FloatingPanel, {\n open,\n onOpenChange,\n trigger,\n triggerEnd: triggerEnd !== null && triggerEnd !== void 0 ? triggerEnd : nativeClear,\n disabled,\n sizing: \"grow\",\n contentPadding: \"none\",\n widthMode: \"fit-content\",\n triggerA11y,\n children\n });\n}\nfunction CalendarViewSwitcher(param) {\n var { calendarData, displayDate, onSetDisplayDate, viewMode, setViewMode, yearPageStart, setYearPageStart, children } = param;\n var { knobProps } = useCalendarKnobs();\n var handleSelectMonth = useCallback(function(month) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setMonth(month);\n onSetDisplayDate(newDate);\n setViewMode(\"day\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n var handleSelectYear = useCallback(function(year) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setFullYear(year);\n onSetDisplayDate(newDate);\n setViewMode(\"month\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n if (viewMode === \"month\") {\n return /* @__PURE__ */ _jsxs(CalendarPanelFrame, {\n children: [\n /* @__PURE__ */ _jsx(Text, {\n alignSelf: \"center\",\n ...knobProps.label,\n ...knobProps.textWeight,\n children: \"Select a month\"\n }),\n /* @__PURE__ */ _jsx(MonthGrid, {\n currentYear: calendarData.year,\n selectedMonth: calendarData.month,\n onSelectMonth: handleSelectMonth\n })\n ]\n });\n }\n if (viewMode === \"year\") {\n return /* @__PURE__ */ _jsx(CalendarPanelFrame, {\n children: /* @__PURE__ */ _jsx(YearGrid, {\n yearPageStart,\n selectedYear: calendarData.year,\n onSelectYear: handleSelectYear,\n onPrevPage: function onPrevPage() {\n return setYearPageStart(function(s) {\n return s - yearPageSize;\n });\n },\n onNextPage: function onNextPage() {\n return setYearPageStart(function(s) {\n return s + yearPageSize;\n });\n }\n })\n });\n }\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n}\nfunction formatDateDisplay(date) {\n if (!date) return \"\";\n return formatAbsoluteDate(date, {\n year: \"always\"\n });\n}\nexport {\n CalendarChromeButton,\n CalendarDayCell,\n CalendarDaySlot,\n CalendarDays,\n CalendarHeader,\n CalendarPanelFrame,\n CalendarTextButton,\n CalendarViewSwitcher,\n CalendarWeekRow,\n DatePickerClearButton,\n DatePickerInputTrigger,\n DatePickerPopoverShell,\n DatePickerReadOnlyField,\n MonthGrid,\n WeekView,\n YearGrid,\n dayCellRadius,\n formatDateDisplay,\n isSameDay,\n months,\n toWeeks,\n useCalendarData,\n useCalendarKnobs,\n useDateAnimation,\n useDateNavigation,\n weekdays,\n yearPageSize\n};\n//# sourceMappingURL=parts.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","transitionProps","CalendarBlankIcon","CaretLeftIcon","CaretRightIcon","ClockIcon","XIcon","ensureFocusVisibleRing","formatAbsoluteDate","getMonthNames","useAccentOnSurface","useGlyphColor","useResolvedKnobs","useCallback","useEffect","useMemo","useRef","useState","AnimatePresence","SizableText","Text","View","isWeb","FloatingPanel","floatingPanelActionProps","isNestedPanelAction","Input","InputParts","formCommonColors","t","weekdays","months","yearPageSize","useDateAnimation","current","prev","direction","animation","enterStyle","opacity","x","exitStyle","animationKey","monthNames","useCalendarData","displayDate","year","getFullYear","month","getMonth","firstDay","Date","lastDay","startDate","setDate","getDate","getDay","endDate","days","push","monthName","today","useDateNavigation","initialDate","setDisplayDate","navigateMonth","next","setMonth","toWeeks","result","i","length","slice","isSameDay","a","b","toDateString","dayCellRadius","knobProps","style","borderRadius","pointy","useCalendarKnobs","CalendarPanelFrame","param","children","px","nestedControl","flexDirection","alignItems","gap","minWidth","alignSelf","panelPadding","splitNestedControl","nested","hitSlop","box","calendarKeyHandler","onPress","e","key","_e_preventDefault","preventDefault","call","CalendarChromeButton","label","role","cursor","justifyContent","outlineWidth","focusStyle","focusVisibleStyle","tabIndex","onKeyDown","accessible","CalendarTextButton","paddingVertical","paddingHorizontal","CalendarDaySlot","width","height","position","CalendarWeekRow","CalendarDayCell","day","selected","disabled","visible","dimmed","selectedBackground","accentText","showTodayMark","resolvedTabIndex","String","onPress1","pointerEvents","backgroundColor","theme","borderWidth","borderColor","zIndex","outlineOffset","onKeyDown1","textWeight","fontWeight","color","text","CalendarDays","calendarData","minDate","maxDate","isSelected","onSelect","skipEmptyWeeks","rangeStripe","onToday","selectionCapped","weeks","focusedDay","setFocusedDay","_ref","_ref1","find","moveFocus","from","delta","idx","findIndex","requestAnimationFrame","_document_querySelector_focus","_document_querySelector","document","querySelector","focus","todayOutOfRange","motion","slide","WeekView","map","week","hasCurrentMonthDay","some","d","toISOString","isCurrentMonth","isToday","isOutOfRange","isDisabled","cell","muted","textAlign","CalendarHeader","onPrevMonth","onNextMonth","onYearPress","onMonthPress","showPrev","showNext","glyphColor","size","controlIcon","fontSize","heading","MonthGrid","currentYear","selectedMonth","onSelectMonth","cellW","flexWrap","name","index","maxWidth","minHeight","maxHeight","YearGrid","yearPageStart","selectedYear","onSelectYear","onPrevPage","onNextPage","years","DatePickerClearButton","onReset","Action","DatePickerInputTrigger","value","onButtonPress","placeholder","id","open","glyph","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaRequired","ariaInvalid","handleTriggerKey","handleTriggerKey2","code","_e_preventDefault1","Glyph","Box","flex","elevation","Section","Icon","adornment","Area","readOnly","placeholderTextColor","DatePickerReadOnlyField","DatePickerPopoverShell","onOpenChange","trigger","triggerEnd","triggerA11y","clearValue","onClear","panelWidth","nativeClear","sizing","contentPadding","widthMode","compactFace","CalendarViewSwitcher","onSetDisplayDate","viewMode","setViewMode","setYearPageStart","handleSelectMonth","newDate","handleSelectYear","setFullYear","s","formatDateDisplay","date"],"sources":["parts.native.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { transitionProps } from \"@multiplatform.one/theme\";\nimport { CalendarBlankIcon, CaretLeftIcon, CaretRightIcon, ClockIcon, XIcon } from \"@phosphor-icons/react\";\nimport { ensureFocusVisibleRing, formatAbsoluteDate, getMonthNames, useAccentOnSurface, useGlyphColor, useResolvedKnobs } from \"@multiplatform.one/theme\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { AnimatePresence, SizableText, Text, View, isWeb } from \"tamagui\";\nimport { FloatingPanel, floatingPanelActionProps, isNestedPanelAction } from \"../../FloatingPanel\";\nimport { Input as InputParts } from \"../../InputParts\";\nimport { formCommonColors } from \"../../shared/colorRamps\";\nimport { t } from \"../../shared/t\";\nvar weekdays = [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n];\nvar months = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n];\nvar yearPageSize = 12;\nfunction useDateAnimation(current) {\n var prev = useRef(null);\n var direction = useMemo(function() {\n if (prev.current === null) return 0;\n return current > prev.current ? 1 : current < prev.current ? -1 : 0;\n }, [\n current\n ]);\n useEffect(function() {\n prev.current = current;\n }, [\n current\n ]);\n var animation = useMemo(function() {\n return {\n enterStyle: {\n opacity: 0,\n x: direction * 15\n },\n exitStyle: {\n opacity: 0,\n x: direction * -15\n }\n };\n }, [\n direction\n ]);\n return {\n animation,\n animationKey: current\n };\n}\nvar monthNames = getMonthNames();\nfunction useCalendarData(displayDate) {\n return useMemo(function() {\n var year = displayDate.getFullYear();\n var month = displayDate.getMonth();\n var firstDay = new Date(year, month, 1);\n var lastDay = new Date(year, month + 1, 0);\n var startDate = new Date(firstDay);\n startDate.setDate(startDate.getDate() - firstDay.getDay());\n var endDate = new Date(lastDay);\n endDate.setDate(endDate.getDate() + (6 - lastDay.getDay()));\n var days = [];\n var current = new Date(startDate);\n while (current <= endDate) {\n days.push(new Date(current));\n current.setDate(current.getDate() + 1);\n }\n return {\n year,\n month,\n monthName: monthNames[month],\n days,\n today: /* @__PURE__ */ new Date()\n };\n }, [\n displayDate\n ]);\n}\nfunction useDateNavigation(initialDate) {\n var [displayDate, setDisplayDate] = useState(initialDate !== null && initialDate !== void 0 ? initialDate : /* @__PURE__ */ new Date());\n var navigateMonth = useCallback(function(direction) {\n setDisplayDate(function(prev) {\n var next = new Date(prev);\n next.setDate(1);\n next.setMonth(next.getMonth() + (direction === \"prev\" ? -1 : 1));\n return next;\n });\n }, []);\n return {\n displayDate,\n setDisplayDate,\n navigateMonth\n };\n}\nfunction toWeeks(days) {\n var result = [];\n for (var i = 0; i < days.length; i += 7) {\n result.push(days.slice(i, i + 7));\n }\n return result;\n}\nfunction isSameDay(a, b) {\n if (!a || !b) return false;\n return a.toDateString() === b.toDateString();\n}\nfunction dayCellRadius(knobProps) {\n return {\n style: {\n borderRadius: knobProps.pointy ? 0 : 9999\n }\n };\n}\nfunction useCalendarKnobs() {\n return useResolvedKnobs();\n}\nfunction CalendarPanelFrame(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"column\",\n alignItems: \"center\",\n ...knobProps.gap,\n minWidth: px * 7,\n alignSelf: \"center\",\n ...knobProps.panelPadding,\n \"data-testid\": \"date-picker-calendar\",\n children\n });\n}\nfunction splitNestedControl(nested) {\n var { px, hitSlop, ...box } = nested;\n return {\n px,\n hitSlop,\n box\n };\n}\nfunction calendarKeyHandler(onPress) {\n return function(e) {\n if (e.key === \"Enter\" || e.key === \" \") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onPress();\n }\n };\n}\nfunction CalendarChromeButton(param) {\n var { onPress, label, children } = param;\n var { knobProps } = useCalendarKnobs();\n var { hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n role: \"button\",\n \"aria-label\": label,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing(),\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarTextButton(param) {\n var { onPress, children } = param;\n return /* @__PURE__ */ _jsx(View, {\n role: \"button\",\n cursor: \"pointer\",\n paddingVertical: 2,\n paddingHorizontal: 4,\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing(),\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarDaySlot(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n children\n });\n}\nfunction CalendarWeekRow(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n width: px * 7,\n children\n });\n}\nfunction CalendarDayCell(param) {\n var { day, selected, today, disabled, visible = true, dimmed, tabIndex, onPress, onKeyDown, selectedBackground } = param;\n var { knobProps } = useCalendarKnobs();\n var accentText = useAccentOnSurface();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n if (!visible) {\n return /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px\n });\n }\n var showTodayMark = !!today && !selected;\n var resolvedTabIndex = tabIndex !== null && tabIndex !== void 0 ? tabIndex : disabled ? -1 : 0;\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n ...dayCellRadius(knobProps),\n role: \"button\",\n \"aria-label\": String(day.getDate()),\n \"aria-disabled\": disabled || void 0,\n \"aria-pressed\": selected || void 0,\n \"aria-current\": today ? \"date\" : void 0,\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress: function onPress1() {\n if (!disabled) onPress();\n },\n // Adjacent-month spill uses this file's 0.45 day-cell dim.\n // Unavailable (min/max or multi-select cap) uses the 0.5 disabled\n // idiom from the Today control and the trigger Box. Unavailable\n // wins when both apply so an out-of-range adjacent day does not\n // look like a pickable spill-over day. Bento paints this state\n // identical to a choosable cell; we do not adopt that.\n opacity: disabled ? 0.5 : dimmed ? 0.45 : 1,\n pointerEvents: disabled ? \"none\" : \"auto\",\n backgroundColor: selected ? selectedBackground !== null && selectedBackground !== void 0 ? selectedBackground : \"$background\" : \"transparent\",\n theme: selected ? \"accent\" : void 0,\n borderWidth: showTodayMark ? 2 : 0,\n borderColor: showTodayMark ? accentText : \"transparent\",\n zIndex: 1,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n \"data-calendar-day\": `${day.getFullYear()}-${day.getMonth()}-${day.getDate()}`,\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: resolvedTabIndex,\n onKeyDown: function onKeyDown1(e) {\n if (!disabled) calendarKeyHandler(onPress)(e);\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n }\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n fontWeight: selected ? \"bold\" : knobProps.textWeight.fontWeight,\n color: selected ? void 0 : today ? accentText : formCommonColors.text,\n children: day.getDate()\n })\n });\n}\nfunction CalendarDays(param) {\n var { calendarData, minDate, maxDate, isSelected, onSelect, selectedBackground, skipEmptyWeeks, rangeStripe, onToday, selectionCapped } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(`${calendarData.year}-${calendarData.month}`);\n var weeks = toWeeks(calendarData.days);\n var { px } = knobProps.nestedControl;\n var [focusedDay, setFocusedDay] = useState(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n return (_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null;\n });\n useEffect(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n setFocusedDay((_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null);\n }, [\n calendarData.year,\n calendarData.month\n ]);\n var moveFocus = useCallback(function(from, delta) {\n var idx = calendarData.days.findIndex(function(day) {\n return isSameDay(day, from);\n });\n var next = calendarData.days[idx + delta];\n if (!next) return;\n setFocusedDay(next);\n if (!isWeb) return;\n var key = `${next.getFullYear()}-${next.getMonth()}-${next.getDate()}`;\n requestAnimationFrame(function() {\n var _document_querySelector_focus, _document_querySelector;\n (_document_querySelector = document.querySelector(`[data-calendar-day=\"${key}\"]`)) === null || _document_querySelector === void 0 ? void 0 : (_document_querySelector_focus = _document_querySelector.focus) === null || _document_querySelector_focus === void 0 ? void 0 : _document_querySelector_focus.call(_document_querySelector);\n });\n }, [\n calendarData.days\n ]);\n var todayOutOfRange = minDate != null && calendarData.today < minDate || maxDate != null && calendarData.today > maxDate;\n return /* @__PURE__ */ _jsx(AnimatePresence, {\n children: /* @__PURE__ */ _jsxs(View, {\n ...transitionProps(knobProps.motion.slide),\n ...animation,\n alignSelf: \"center\",\n gap: \"$1\",\n width: px * 7,\n role: \"grid\",\n \"aria-label\": t(\"Calendar\"),\n children: [\n /* @__PURE__ */ _jsx(WeekView, {}),\n weeks.map(function(week) {\n var hasCurrentMonthDay = week.some(function(d) {\n return d.getMonth() === calendarData.month;\n });\n if (skipEmptyWeeks && !hasCurrentMonthDay) {\n return /* @__PURE__ */ _jsx(View, {\n height: \"$3\"\n }, week[0].toISOString());\n }\n return /* @__PURE__ */ _jsx(CalendarWeekRow, {\n children: week.map(function(day) {\n var key = day.toISOString();\n var isCurrentMonth = day.getMonth() === calendarData.month;\n var isToday = isSameDay(calendarData.today, day);\n var isOutOfRange = minDate != null && day < minDate || maxDate != null && day > maxDate;\n var isDisabled = isOutOfRange || !!selectionCapped && !isSelected(day);\n var cell = /* @__PURE__ */ _jsx(CalendarDayCell, {\n day,\n selected: isCurrentMonth && isSelected(day),\n today: isToday,\n disabled: isDisabled,\n visible: true,\n dimmed: !isCurrentMonth,\n tabIndex: isSameDay(focusedDay, day) ? 0 : -1,\n onPress: function onPress() {\n return onSelect(day);\n },\n onKeyDown: function onKeyDown(e) {\n var _e_preventDefault;\n var delta = e.key === \"ArrowLeft\" ? -1 : e.key === \"ArrowRight\" ? 1 : e.key === \"ArrowUp\" ? -7 : e.key === \"ArrowDown\" ? 7 : 0;\n if (!delta) return;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n moveFocus(day, delta);\n },\n selectedBackground\n });\n if (!rangeStripe) {\n return /* @__PURE__ */ _jsx(View, {\n children: cell\n }, key);\n }\n return /* @__PURE__ */ _jsxs(CalendarDaySlot, {\n children: [\n rangeStripe(day),\n cell\n ]\n }, key);\n })\n }, week[0].toISOString());\n }),\n onToday ? /* @__PURE__ */ _jsx(CalendarTextButton, {\n onPress: todayOutOfRange ? function() {\n } : onToday,\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n color: todayOutOfRange ? formCommonColors.muted : formCommonColors.text,\n opacity: todayOutOfRange ? 0.5 : 1,\n children: t(\"Today\")\n })\n }) : null\n ]\n })\n }, animationKey);\n}\nfunction WeekView() {\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n children: weekdays.map(function(day) {\n return /* @__PURE__ */ _jsx(Text, {\n width: px,\n textAlign: \"center\",\n color: formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: t(day)\n }, day);\n })\n });\n}\nfunction CalendarHeader(param) {\n var { year, monthName, onPrevMonth, onNextMonth, onYearPress, onMonthPress, showPrev = true, showNext = true } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = useGlyphColor();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ _jsxs(View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n showPrev && onPrevMonth ? /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onPrevMonth,\n label: t(\"Previous month\"),\n children: /* @__PURE__ */ _jsx(CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px\n }),\n /* @__PURE__ */ _jsxs(View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ _jsx(CalendarTextButton, {\n onPress: onMonthPress,\n children: /* @__PURE__ */ _jsx(SizableText, {\n color: \"$color\",\n size: knobProps.label.fontSize,\n ...knobProps.heading,\n children: monthName\n })\n }),\n /* @__PURE__ */ _jsx(CalendarTextButton, {\n onPress: onYearPress,\n children: /* @__PURE__ */ _jsx(Text, {\n color: formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: year\n })\n })\n ]\n }),\n showNext && onNextMonth ? /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onNextMonth,\n label: t(\"Next month\"),\n children: /* @__PURE__ */ _jsx(CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ _jsx(View, {\n width: px,\n height: px\n })\n ]\n });\n}\nfunction MonthGrid(param) {\n var { currentYear, selectedMonth, onSelectMonth } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(currentYear);\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n return /* @__PURE__ */ _jsx(AnimatePresence, {\n children: /* @__PURE__ */ _jsx(View, {\n ...animation,\n ...transitionProps(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n alignSelf: \"center\",\n children: months.map(function(name, index) {\n var isSelected = selectedMonth === index;\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectMonth(index);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectMonth(index);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: t(name.slice(0, 3))\n })\n }, name);\n })\n })\n }, animationKey);\n}\nfunction YearGrid(param) {\n var { yearPageStart, selectedYear, onSelectYear, onPrevPage, onNextPage } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = useGlyphColor();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n var years = useMemo(function() {\n var result = [];\n for (var i = 0; i < yearPageSize; i++) {\n result.push(yearPageStart + i);\n }\n return result;\n }, [\n yearPageStart\n ]);\n var { animation, animationKey } = useDateAnimation(yearPageStart);\n return /* @__PURE__ */ _jsxs(View, {\n width: px * 7,\n alignSelf: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ _jsxs(View, {\n flexDirection: \"row\",\n width: px * 7,\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onPrevPage,\n label: t(\"Previous years\"),\n children: /* @__PURE__ */ _jsx(CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }),\n /* @__PURE__ */ _jsxs(Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n children: [\n years[0],\n \" \\u2013 \",\n years[years.length - 1]\n ]\n }),\n /* @__PURE__ */ _jsx(CalendarChromeButton, {\n onPress: onNextPage,\n label: t(\"Next years\"),\n children: /* @__PURE__ */ _jsx(CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n })\n ]\n }),\n /* @__PURE__ */ _jsx(AnimatePresence, {\n children: /* @__PURE__ */ _jsx(View, {\n ...animation,\n ...transitionProps(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n children: years.map(function(year) {\n var isSelected = year === selectedYear;\n return /* @__PURE__ */ _jsx(View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectYear(year);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: ensureFocusVisibleRing({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!isWeb ? {\n hitSlop\n } : {},\n ...isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectYear(year);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ _jsx(Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: year\n })\n }, year);\n })\n })\n }, animationKey)\n ]\n });\n}\nfunction DatePickerClearButton(param) {\n var { onReset, disabled, label } = param;\n return /* @__PURE__ */ _jsx(InputParts.Action, {\n ...floatingPanelActionProps,\n \"data-testid\": \"date-picker-clear\",\n label: label !== null && label !== void 0 ? label : t(\"Clear date\"),\n disabled,\n tabIndex: -1,\n onPress: onReset,\n children: /* @__PURE__ */ _jsx(XIcon, {})\n });\n}\nfunction DatePickerInputTrigger(param) {\n var { value, onButtonPress, onReset, disabled, placeholder, id, open, glyph = \"calendar\", \"aria-label\": ariaLabel, \"aria-labelledby\": ariaLabelledBy, \"aria-describedby\": ariaDescribedBy, \"aria-required\": ariaRequired, \"aria-invalid\": ariaInvalid } = param;\n var handleTriggerKey = function handleTriggerKey2(e) {\n if (disabled || isNestedPanelAction(e)) return;\n var key = e.key;\n if (key === \"Enter\" || key === \" \" || key === \"ArrowDown\" || e.code === \"Space\") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onButtonPress();\n return;\n }\n if ((key === \"Backspace\" || key === \"Delete\") && value) {\n var _e_preventDefault1;\n (_e_preventDefault1 = e.preventDefault) === null || _e_preventDefault1 === void 0 ? void 0 : _e_preventDefault1.call(e);\n onReset();\n }\n };\n var Glyph = glyph === \"clock\" ? ClockIcon : CalendarBlankIcon;\n return (\n // LC-40: the disabled Box below is pointerEvents-none, so the cursor\n // affordance must ride this wrapper — the fragment's not-allowed never\n // reaches the pointer otherwise (the wrapper kept advertising\n // \"pointer\" on a disabled field).\n /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n // Native parents own the tap; expanded field paint must not consume it.\n pointerEvents: isWeb ? void 0 : \"none\",\n children: /* @__PURE__ */ _jsxs(InputParts.Box, {\n // FZ-7853: the box fills its row on every platform, so an empty\n // trigger ends on the same inset as a filled one (Yoga also has no\n // intrinsic TextInput width to size it).\n flex: 1,\n minWidth: 0,\n // Elevation is an overlay recipe: it belongs on the open panel, never\n // on the closed text-field trigger.\n elevation: void 0,\n \"data-testid\": \"date-picker-trigger\",\n id,\n onPress: isWeb && !disabled ? onButtonPress : void 0,\n ...disabled ? {\n opacity: 0.5,\n pointerEvents: \"none\"\n } : void 0,\n ...isWeb ? {\n role: \"combobox\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": !!open,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-required\": ariaRequired,\n \"aria-invalid\": ariaInvalid,\n tabIndex: disabled ? -1 : 0,\n onKeyDown: handleTriggerKey\n } : void 0,\n children: [\n /* @__PURE__ */ _jsx(InputParts.Section, {\n \"data-testid\": \"date-picker-glyph\",\n children: /* @__PURE__ */ _jsx(InputParts.Icon, {\n adornment: \"leading\",\n color: formCommonColors.muted,\n children: /* @__PURE__ */ _jsx(Glyph, {})\n })\n }),\n /* @__PURE__ */ _jsx(InputParts.Section, {\n children: /* @__PURE__ */ _jsx(InputParts.Area, {\n readOnly: true,\n pointerEvents: \"none\",\n tabIndex: -1,\n value,\n placeholder,\n disabled,\n color: formCommonColors.text,\n placeholderTextColor: formCommonColors.muted\n })\n }),\n value && isWeb ? /* @__PURE__ */ _jsx(InputParts.Section, {\n children: /* @__PURE__ */ _jsx(DatePickerClearButton, {\n onReset,\n disabled\n })\n }) : null\n ]\n })\n })\n );\n}\nfunction DatePickerReadOnlyField(param) {\n var { value, placeholder, id, glyph = \"calendar\", \"aria-label\": ariaLabel, \"aria-required\": ariaRequired, \"aria-invalid\": ariaInvalid } = param;\n var Glyph = glyph === \"clock\" ? ClockIcon : CalendarBlankIcon;\n return /* @__PURE__ */ _jsx(View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n children: /* @__PURE__ */ _jsxs(InputParts.Box, {\n flex: 1,\n minWidth: 0,\n elevation: void 0,\n \"data-testid\": \"date-picker-readonly\",\n children: [\n /* @__PURE__ */ _jsx(InputParts.Section, {\n \"data-testid\": \"date-picker-glyph\",\n children: /* @__PURE__ */ _jsx(InputParts.Icon, {\n adornment: \"leading\",\n color: formCommonColors.muted,\n children: /* @__PURE__ */ _jsx(Glyph, {})\n })\n }),\n /* @__PURE__ */ _jsx(InputParts.Section, {\n children: /* @__PURE__ */ _jsx(InputParts.Area, {\n readOnly: true,\n id,\n value,\n placeholder,\n color: formCommonColors.text,\n placeholderTextColor: formCommonColors.muted,\n \"aria-label\": ariaLabel,\n \"aria-readonly\": \"true\",\n \"aria-required\": ariaRequired,\n \"aria-invalid\": ariaInvalid\n })\n })\n ]\n })\n });\n}\nfunction DatePickerPopoverShell(param) {\n var { open, onOpenChange, trigger, triggerEnd, children, disabled, triggerA11y, clearValue, onClear, panelWidth } = param;\n var nativeClear = !isWeb && clearValue && onClear ? /* @__PURE__ */ _jsx(DatePickerClearButton, {\n onReset: onClear,\n disabled\n }) : void 0;\n return /* @__PURE__ */ _jsx(FloatingPanel, {\n open,\n onOpenChange,\n trigger,\n triggerEnd: triggerEnd !== null && triggerEnd !== void 0 ? triggerEnd : nativeClear,\n disabled,\n sizing: \"grow\",\n contentPadding: \"none\",\n // LC-112 seamless cover (FZ-8438): the panel is the field grown open,\n // at least its width, on every web width and pointer.\n widthMode: \"at-least-trigger\",\n panelWidth,\n compactFace: isWeb ? \"menu\" : void 0,\n triggerA11y,\n children\n });\n}\nfunction CalendarViewSwitcher(param) {\n var { calendarData, displayDate, onSetDisplayDate, viewMode, setViewMode, yearPageStart, setYearPageStart, children } = param;\n var { knobProps } = useCalendarKnobs();\n var handleSelectMonth = useCallback(function(month) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setMonth(month);\n onSetDisplayDate(newDate);\n setViewMode(\"day\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n var handleSelectYear = useCallback(function(year) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setFullYear(year);\n onSetDisplayDate(newDate);\n setViewMode(\"month\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n if (viewMode === \"month\") {\n return /* @__PURE__ */ _jsxs(CalendarPanelFrame, {\n children: [\n /* @__PURE__ */ _jsx(Text, {\n alignSelf: \"center\",\n ...knobProps.label,\n ...knobProps.textWeight,\n children: \"Select a month\"\n }),\n /* @__PURE__ */ _jsx(MonthGrid, {\n currentYear: calendarData.year,\n selectedMonth: calendarData.month,\n onSelectMonth: handleSelectMonth\n })\n ]\n });\n }\n if (viewMode === \"year\") {\n return /* @__PURE__ */ _jsx(CalendarPanelFrame, {\n children: /* @__PURE__ */ _jsx(YearGrid, {\n yearPageStart,\n selectedYear: calendarData.year,\n onSelectYear: handleSelectYear,\n onPrevPage: function onPrevPage() {\n return setYearPageStart(function(s) {\n return s - yearPageSize;\n });\n },\n onNextPage: function onNextPage() {\n return setYearPageStart(function(s) {\n return s + yearPageSize;\n });\n }\n })\n });\n }\n return /* @__PURE__ */ _jsx(_Fragment, {\n children\n });\n}\nfunction formatDateDisplay(date) {\n if (!date) return \"\";\n return formatAbsoluteDate(date, {\n year: \"always\"\n });\n}\nexport {\n CalendarChromeButton,\n CalendarDayCell,\n CalendarDaySlot,\n CalendarDays,\n CalendarHeader,\n CalendarPanelFrame,\n CalendarTextButton,\n CalendarViewSwitcher,\n CalendarWeekRow,\n DatePickerClearButton,\n DatePickerInputTrigger,\n DatePickerPopoverShell,\n DatePickerReadOnlyField,\n MonthGrid,\n WeekView,\n YearGrid,\n dayCellRadius,\n formatDateDisplay,\n isSameDay,\n months,\n toWeeks,\n useCalendarData,\n useCalendarKnobs,\n useDateAnimation,\n useDateNavigation,\n weekdays,\n yearPageSize\n};\n//# sourceMappingURL=parts.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -15,7 +15,7 @@ import { formCommonColors, formInputColors } from "../../shared/colorRamps.mjs";
|
|
|
15
15
|
import { warnSelectTooFewOptions } from "../../shared/devWarn.mjs";
|
|
16
16
|
import { getFieldError, getFieldHeight, mergeFieldHandler, useFormField, useResolvedValidators } from "../../shared/utils.mjs";
|
|
17
17
|
import { ScrollArrow } from "../../shared/floatingList.mjs";
|
|
18
|
-
import { FloatingPanel, useFloatingPanel, panelViewportPadding, useViewportGtSm } from "../../FloatingPanel/index.mjs";
|
|
18
|
+
import { FloatingPanel, TriggerEchoRow, placeEchoOverTrigger, useFloatingPanel, panelViewportPadding, useViewportGtSm } from "../../FloatingPanel/index.mjs";
|
|
19
19
|
import { pickerCompactFace, resolveCompactFace } from "../../FloatingPanel/compactFace.mjs";
|
|
20
20
|
import { PanelPortal } from "../../FloatingPanel/PanelPortal.mjs";
|
|
21
21
|
import { fixedContainingBlockOrigin } from "../../FloatingPanel/containingBlock.mjs";
|
|
@@ -335,7 +335,8 @@ function FloatingSelectCore({
|
|
|
335
335
|
groupLabel,
|
|
336
336
|
multiple,
|
|
337
337
|
selectedOrder,
|
|
338
|
-
dismissible
|
|
338
|
+
dismissible,
|
|
339
|
+
panelWidth
|
|
339
340
|
}) {
|
|
340
341
|
const overlayZIndex = useOverlayZIndex("dropdown");
|
|
341
342
|
const {
|
|
@@ -409,6 +410,8 @@ function FloatingSelectCore({
|
|
|
409
410
|
const growUpOnlyRef = useRef(false);
|
|
410
411
|
const growDownOnlyRef = useRef(false);
|
|
411
412
|
const lastScrollTopRef = useRef(0);
|
|
413
|
+
const dropUpRef = useRef(false);
|
|
414
|
+
const [dropUp, setDropUp] = useState(false);
|
|
412
415
|
const repositionRef = useRef(null);
|
|
413
416
|
const panel = useFloatingPanel({
|
|
414
417
|
open,
|
|
@@ -426,7 +429,9 @@ function FloatingSelectCore({
|
|
|
426
429
|
growDownOnlyRef.current = false;
|
|
427
430
|
lastScrollTopRef.current = 0;
|
|
428
431
|
programmaticScrollRef.current = 0;
|
|
429
|
-
|
|
432
|
+
dropUpRef.current = false;
|
|
433
|
+
},
|
|
434
|
+
panelWidth
|
|
430
435
|
});
|
|
431
436
|
const {
|
|
432
437
|
scrollRef: dragScrollRef,
|
|
@@ -493,32 +498,33 @@ function FloatingSelectCore({
|
|
|
493
498
|
}
|
|
494
499
|
const triggerBounds = trigger.getBoundingClientRect();
|
|
495
500
|
const viewportHeight = window.innerHeight;
|
|
501
|
+
const originTop = fixedContainingBlockOrigin(dropdownElement).top;
|
|
496
502
|
const computedStyle = getComputedStyle(dropdownElement);
|
|
497
503
|
const borderTopWidth = parseFloat(computedStyle.borderTopWidth) || 0;
|
|
498
504
|
const borderBottomWidth = parseFloat(computedStyle.borderBottomWidth) || 0;
|
|
499
505
|
const totalBorderWidth = borderTopWidth + borderBottomWidth;
|
|
500
506
|
const scrollContentHeight = dropdownElement.scrollHeight;
|
|
501
507
|
const totalContentHeight = scrollContentHeight + totalBorderWidth;
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
idealTop = triggerBounds.top - (selectedItem.offsetTop ?? 0);
|
|
508
|
+
const firstPlacement = pinnedTopRef.current === 0 && pinnedHeightRef.current === 0;
|
|
509
|
+
const roomBelow = viewportHeight - panelViewportPadding - triggerBounds.top;
|
|
510
|
+
const roomAbove = triggerBounds.bottom - panelViewportPadding;
|
|
511
|
+
if (firstPlacement) {
|
|
512
|
+
dropUpRef.current = totalContentHeight > roomBelow && roomAbove > roomBelow;
|
|
513
|
+
setDropUp(dropUpRef.current);
|
|
509
514
|
}
|
|
510
|
-
const
|
|
515
|
+
const idealTop = dropUpRef.current ? triggerBounds.bottom - totalContentHeight : triggerBounds.top;
|
|
516
|
+
const idealBottom = dropUpRef.current ? triggerBounds.bottom : idealTop + totalContentHeight;
|
|
511
517
|
const pinnedTop = Math.max(panelViewportPadding, idealTop);
|
|
512
518
|
const pinnedBottom = Math.min(viewportHeight - panelViewportPadding, idealBottom);
|
|
513
519
|
const pinnedHeight = Math.max(120, pinnedBottom - pinnedTop);
|
|
514
|
-
if (
|
|
520
|
+
if (firstPlacement) {
|
|
515
521
|
pinnedTopRef.current = pinnedTop;
|
|
516
522
|
pinnedHeightRef.current = pinnedHeight;
|
|
517
523
|
}
|
|
518
524
|
let top = pinnedTopRef.current;
|
|
519
525
|
let height = pinnedHeightRef.current;
|
|
520
526
|
if (grownRef.current) {
|
|
521
|
-
const canGrowDown = Math.max(0, viewportHeight - panelViewportPadding - (top + height));
|
|
527
|
+
const canGrowDown = dropUpRef.current ? 0 : Math.max(0, viewportHeight - panelViewportPadding - (top + height));
|
|
522
528
|
height += canGrowDown;
|
|
523
529
|
const canGrowUp = Math.max(0, top - panelViewportPadding);
|
|
524
530
|
top -= canGrowUp;
|
|
@@ -529,7 +535,7 @@ function FloatingSelectCore({
|
|
|
529
535
|
top -= canGrowUp;
|
|
530
536
|
height += canGrowUp;
|
|
531
537
|
}
|
|
532
|
-
if (growDownOnlyRef.current) {
|
|
538
|
+
if (growDownOnlyRef.current && !dropUpRef.current) {
|
|
533
539
|
const canGrowDown = Math.max(0, viewportHeight - panelViewportPadding - (top + height));
|
|
534
540
|
height += canGrowDown;
|
|
535
541
|
}
|
|
@@ -545,40 +551,41 @@ function FloatingSelectCore({
|
|
|
545
551
|
}
|
|
546
552
|
}
|
|
547
553
|
const cachedOverlayStyle = overlayStyle.current;
|
|
548
|
-
if (!cachedOverlayStyle || cachedOverlayStyle.top !== top || cachedOverlayStyle.maxHeight !== height) {
|
|
549
|
-
dropdownElement.style.top = `${top}px`;
|
|
554
|
+
if (!cachedOverlayStyle || cachedOverlayStyle.top !== top - originTop || cachedOverlayStyle.maxHeight !== height) {
|
|
555
|
+
dropdownElement.style.top = `${top - originTop}px`;
|
|
550
556
|
dropdownElement.style.maxHeight = `${height}px`;
|
|
551
557
|
dropdownElement.style.height = "";
|
|
552
558
|
overlayStyle.current = {
|
|
553
|
-
top,
|
|
559
|
+
top: top - originTop,
|
|
554
560
|
maxHeight: height
|
|
555
561
|
};
|
|
556
562
|
void dropdownElement.offsetHeight;
|
|
557
563
|
}
|
|
558
|
-
if (!grownRef.current && !growUpOnlyRef.current && !growDownOnlyRef.current) {
|
|
559
|
-
const
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
const
|
|
563
|
-
|
|
564
|
+
if (isInitial && selectedIndex >= 0 && !grownRef.current && !growUpOnlyRef.current && !growDownOnlyRef.current) {
|
|
565
|
+
const echoHeight = triggerBounds.height;
|
|
566
|
+
const rowBottom = selectedItem.offsetTop + selectedItem.offsetHeight;
|
|
567
|
+
if (dropUpRef.current) {
|
|
568
|
+
const maxScrollTop = dropdownElement.scrollHeight - dropdownElement.clientHeight;
|
|
569
|
+
const wanted = rowBottom - (dropdownElement.clientHeight - echoHeight);
|
|
570
|
+
if (wanted > 0) {
|
|
564
571
|
programmaticScrollRef.current++;
|
|
565
|
-
dropdownElement.scrollTop =
|
|
566
|
-
}
|
|
567
|
-
if (Math.abs(neededScroll - clampedScrollTop) > 0.5) {
|
|
568
|
-
const scrollDeficit = neededScroll - clampedScrollTop;
|
|
569
|
-
top -= scrollDeficit;
|
|
570
|
-
top = Math.max(panelViewportPadding, top);
|
|
571
|
-
const remainingContentHeight = totalContentHeight - clampedScrollTop;
|
|
572
|
-
const adjustedMaxHeight = Math.min(remainingContentHeight, viewportHeight - top - panelViewportPadding);
|
|
573
|
-
dropdownElement.style.top = `${top}px`;
|
|
574
|
-
dropdownElement.style.maxHeight = `${adjustedMaxHeight}px`;
|
|
575
|
-
overlayStyle.current = {
|
|
576
|
-
top,
|
|
577
|
-
maxHeight: adjustedMaxHeight
|
|
578
|
-
};
|
|
572
|
+
dropdownElement.scrollTop = Math.min(wanted, maxScrollTop);
|
|
579
573
|
}
|
|
574
|
+
} else if (rowBottom > dropdownElement.clientHeight) {
|
|
575
|
+
const maxScrollTop = dropdownElement.scrollHeight - dropdownElement.clientHeight;
|
|
576
|
+
programmaticScrollRef.current++;
|
|
577
|
+
dropdownElement.scrollTop = Math.max(0, Math.min(selectedItem.offsetTop - echoHeight, maxScrollTop));
|
|
580
578
|
}
|
|
581
579
|
}
|
|
580
|
+
placeEchoOverTrigger(dropdownElement, {
|
|
581
|
+
triggerLeft: triggerBounds.left,
|
|
582
|
+
triggerRight: triggerBounds.right,
|
|
583
|
+
panelLeft: dropdownElement.getBoundingClientRect().left,
|
|
584
|
+
panelWidth: dropdownElement.offsetWidth,
|
|
585
|
+
rtl: getComputedStyle(trigger).direction === "rtl"
|
|
586
|
+
}, {
|
|
587
|
+
stretch: panelWidth !== void 0
|
|
588
|
+
});
|
|
582
589
|
panel.initializingRef.current = false;
|
|
583
590
|
void dropdownElement.offsetHeight;
|
|
584
591
|
if (isInitial) dropdownElement.style.transition = panel.panelTransition;
|
|
@@ -595,7 +602,7 @@ function FloatingSelectCore({
|
|
|
595
602
|
useLayoutEffect(() => {
|
|
596
603
|
if (!open || !panel.mounted) return;
|
|
597
604
|
repositionOverlay();
|
|
598
|
-
}, [open, panel.mounted, selectedIndex, repositionOverlay, panel.y]);
|
|
605
|
+
}, [open, panel.mounted, selectedIndex, repositionOverlay, panel.x, panel.y]);
|
|
599
606
|
const onMatch = useCallback(index => {
|
|
600
607
|
if (open) {
|
|
601
608
|
setActiveIndex(index);
|
|
@@ -876,7 +883,7 @@ function FloatingSelectCore({
|
|
|
876
883
|
opacity: panel.visible ? 1 : 0,
|
|
877
884
|
transform: panel.visible ? "scale(1)" : "scale(0.96)",
|
|
878
885
|
transition: panel.panelTransition,
|
|
879
|
-
transformOrigin: panel.placement.startsWith("top") ? "bottom left" : "top left",
|
|
886
|
+
transformOrigin: dropUp || panel.placement.startsWith("top") ? "bottom left" : "top left",
|
|
880
887
|
...dragProps.style
|
|
881
888
|
},
|
|
882
889
|
onPointerDown: dragProps.onPointerDown,
|
|
@@ -915,11 +922,19 @@ function FloatingSelectCore({
|
|
|
915
922
|
borderRadius: panel.dropdownRadius,
|
|
916
923
|
"data-testid": "select-dropdown",
|
|
917
924
|
paddingVertical: 0,
|
|
918
|
-
|
|
925
|
+
paddingBottom: panel.coverCornerInset || 0,
|
|
926
|
+
children: [!beside && /* @__PURE__ */jsx(TriggerEchoRow, {
|
|
927
|
+
sourceRef: panel.triggerRef,
|
|
928
|
+
source: selectedOption?.label ?? placeholder,
|
|
929
|
+
onPress: () => setOpen(false),
|
|
930
|
+
presentational: true,
|
|
931
|
+
edge: dropUp ? "bottom" : "top"
|
|
932
|
+
}), /* @__PURE__ */jsx(ScrollArrow, {
|
|
919
933
|
direction: "up",
|
|
920
934
|
scrollRef: panel.refs.floating,
|
|
921
935
|
visible: panel.arrowUp,
|
|
922
|
-
arrowScrollDirRef: panel.arrowScrollDirRef
|
|
936
|
+
arrowScrollDirRef: panel.arrowScrollDirRef,
|
|
937
|
+
topOffset: dropUp || beside ? 0 : panel.triggerRef.current?.getBoundingClientRect().height ?? 0
|
|
923
938
|
}), groupLabel && /* @__PURE__ */jsx(GroupHeader, {
|
|
924
939
|
color: textColor,
|
|
925
940
|
paddingHorizontal: knobProps.panelPadding.padding,
|
|
@@ -952,7 +967,8 @@ function FloatingSelectCore({
|
|
|
952
967
|
direction: "down",
|
|
953
968
|
scrollRef: panel.refs.floating,
|
|
954
969
|
visible: panel.arrowDown,
|
|
955
|
-
arrowScrollDirRef: panel.arrowScrollDirRef
|
|
970
|
+
arrowScrollDirRef: panel.arrowScrollDirRef,
|
|
971
|
+
bottomOffset: dropUp ? panel.triggerRef.current?.getBoundingClientRect().height ?? 0 : 0
|
|
956
972
|
})]
|
|
957
973
|
})
|
|
958
974
|
})
|
|
@@ -974,7 +990,8 @@ function NativeSelectCore({
|
|
|
974
990
|
multiple,
|
|
975
991
|
selectedOrder,
|
|
976
992
|
dismissible,
|
|
977
|
-
native
|
|
993
|
+
native,
|
|
994
|
+
panelWidth
|
|
978
995
|
}) {
|
|
979
996
|
const insideOverlay = useInsideOverlay();
|
|
980
997
|
const compactFace = pickerCompactFace(options.length);
|
|
@@ -1235,6 +1252,7 @@ function NativeSelectCore({
|
|
|
1235
1252
|
},
|
|
1236
1253
|
sheet: true,
|
|
1237
1254
|
compactFace,
|
|
1255
|
+
panelWidth,
|
|
1238
1256
|
...(asMenu && insideOverlay && opensBesideTrigger(options.length) ? {
|
|
1239
1257
|
anchorMode: "attach",
|
|
1240
1258
|
triggerEcho: false
|
|
@@ -1357,6 +1375,7 @@ function Select({
|
|
|
1357
1375
|
dismissible,
|
|
1358
1376
|
skeleton,
|
|
1359
1377
|
native,
|
|
1378
|
+
panelWidth,
|
|
1360
1379
|
"aria-label": ariaLabel,
|
|
1361
1380
|
...rest
|
|
1362
1381
|
}) {
|
|
@@ -1393,7 +1412,8 @@ function Select({
|
|
|
1393
1412
|
const pushed = !inline && !inTableCell && Boolean(rowLabel) && shouldPushChoices({
|
|
1394
1413
|
inSheet: Boolean(sheetNavigation),
|
|
1395
1414
|
multiple,
|
|
1396
|
-
options
|
|
1415
|
+
options,
|
|
1416
|
+
panelWidth
|
|
1397
1417
|
});
|
|
1398
1418
|
if (!inline) {
|
|
1399
1419
|
warnSelectTooFewOptions({
|
|
@@ -1510,7 +1530,8 @@ function Select({
|
|
|
1510
1530
|
multiple,
|
|
1511
1531
|
selectedOrder,
|
|
1512
1532
|
dismissible,
|
|
1513
|
-
native
|
|
1533
|
+
native,
|
|
1534
|
+
panelWidth
|
|
1514
1535
|
});
|
|
1515
1536
|
};
|
|
1516
1537
|
if (!resolvedForm || !name) {
|