@lodev09/react-native-true-sheet 3.10.1 → 3.11.0-beta.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.
Files changed (108) hide show
  1. package/lib/module/TrueSheet.js +3 -0
  2. package/lib/module/TrueSheet.js.map +1 -1
  3. package/lib/module/TrueSheet.web.js +604 -376
  4. package/lib/module/TrueSheet.web.js.map +1 -1
  5. package/lib/module/TrueSheetProvider.js.map +1 -1
  6. package/lib/module/TrueSheetProvider.web.js +141 -100
  7. package/lib/module/TrueSheetProvider.web.js.map +1 -1
  8. package/lib/module/mocks/index.js.map +1 -1
  9. package/lib/module/reanimated/ReanimatedTrueSheet.web.js.map +1 -1
  10. package/lib/module/reanimated/useReanimatedPositionChangeHandler.web.js +2 -3
  11. package/lib/module/reanimated/useReanimatedPositionChangeHandler.web.js.map +1 -1
  12. package/lib/module/web/constants.js +16 -0
  13. package/lib/module/web/constants.js.map +1 -0
  14. package/lib/module/web/vaul/README.md +9 -0
  15. package/lib/module/web/vaul/browser.js +30 -0
  16. package/lib/module/web/vaul/browser.js.map +1 -0
  17. package/lib/module/web/vaul/constants.js +14 -0
  18. package/lib/module/web/vaul/constants.js.map +1 -0
  19. package/lib/module/web/vaul/context.js +57 -0
  20. package/lib/module/web/vaul/context.js.map +1 -0
  21. package/lib/module/web/vaul/helpers.js +93 -0
  22. package/lib/module/web/vaul/helpers.js.map +1 -0
  23. package/lib/module/web/vaul/index.js +1206 -0
  24. package/lib/module/web/vaul/index.js.map +1 -0
  25. package/lib/module/web/vaul/style.css +264 -0
  26. package/lib/module/web/vaul/types.js +2 -0
  27. package/lib/module/web/vaul/types.js.map +1 -0
  28. package/lib/module/web/vaul/use-composed-refs.js +34 -0
  29. package/lib/module/web/vaul/use-composed-refs.js.map +1 -0
  30. package/lib/module/web/vaul/use-controllable-state.js +54 -0
  31. package/lib/module/web/vaul/use-controllable-state.js.map +1 -0
  32. package/lib/module/web/vaul/use-position-fixed.js +123 -0
  33. package/lib/module/web/vaul/use-position-fixed.js.map +1 -0
  34. package/lib/module/web/vaul/use-prevent-scroll.js +258 -0
  35. package/lib/module/web/vaul/use-prevent-scroll.js.map +1 -0
  36. package/lib/module/web/vaul/use-scale-background.js +57 -0
  37. package/lib/module/web/vaul/use-scale-background.js.map +1 -0
  38. package/lib/module/web/vaul/use-snap-points.js +294 -0
  39. package/lib/module/web/vaul/use-snap-points.js.map +1 -0
  40. package/lib/typescript/src/TrueSheet.d.ts +2 -2
  41. package/lib/typescript/src/TrueSheet.d.ts.map +1 -1
  42. package/lib/typescript/src/TrueSheet.types.d.ts +79 -36
  43. package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
  44. package/lib/typescript/src/TrueSheet.web.d.ts +3 -11
  45. package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -1
  46. package/lib/typescript/src/TrueSheetProvider.d.ts +2 -2
  47. package/lib/typescript/src/TrueSheetProvider.d.ts.map +1 -1
  48. package/lib/typescript/src/TrueSheetProvider.web.d.ts +17 -14
  49. package/lib/typescript/src/TrueSheetProvider.web.d.ts.map +1 -1
  50. package/lib/typescript/src/mocks/index.d.ts +1 -2
  51. package/lib/typescript/src/mocks/index.d.ts.map +1 -1
  52. package/lib/typescript/src/navigation/types.d.ts +1 -1
  53. package/lib/typescript/src/navigation/types.d.ts.map +1 -1
  54. package/lib/typescript/src/reanimated/ReanimatedTrueSheet.web.d.ts +0 -1
  55. package/lib/typescript/src/reanimated/ReanimatedTrueSheet.web.d.ts.map +1 -1
  56. package/lib/typescript/src/reanimated/useReanimatedPositionChangeHandler.web.d.ts +2 -3
  57. package/lib/typescript/src/reanimated/useReanimatedPositionChangeHandler.web.d.ts.map +1 -1
  58. package/lib/typescript/src/web/constants.d.ts +14 -0
  59. package/lib/typescript/src/web/constants.d.ts.map +1 -0
  60. package/lib/typescript/src/web/vaul/browser.d.ts +8 -0
  61. package/lib/typescript/src/web/vaul/browser.d.ts.map +1 -0
  62. package/lib/typescript/src/web/vaul/constants.d.ts +12 -0
  63. package/lib/typescript/src/web/vaul/constants.d.ts.map +1 -0
  64. package/lib/typescript/src/web/vaul/context.d.ts +45 -0
  65. package/lib/typescript/src/web/vaul/context.d.ts.map +1 -0
  66. package/lib/typescript/src/web/vaul/helpers.d.ts +17 -0
  67. package/lib/typescript/src/web/vaul/helpers.d.ts.map +1 -0
  68. package/lib/typescript/src/web/vaul/index.d.ts +210 -0
  69. package/lib/typescript/src/web/vaul/index.d.ts.map +1 -0
  70. package/lib/typescript/src/web/vaul/types.d.ts +7 -0
  71. package/lib/typescript/src/web/vaul/types.d.ts.map +1 -0
  72. package/lib/typescript/src/web/vaul/use-composed-refs.d.ts +14 -0
  73. package/lib/typescript/src/web/vaul/use-composed-refs.d.ts.map +1 -0
  74. package/lib/typescript/src/web/vaul/use-controllable-state.d.ts +9 -0
  75. package/lib/typescript/src/web/vaul/use-controllable-state.d.ts.map +1 -0
  76. package/lib/typescript/src/web/vaul/use-position-fixed.d.ts +19 -0
  77. package/lib/typescript/src/web/vaul/use-position-fixed.d.ts.map +1 -0
  78. package/lib/typescript/src/web/vaul/use-prevent-scroll.d.ts +18 -0
  79. package/lib/typescript/src/web/vaul/use-prevent-scroll.d.ts.map +1 -0
  80. package/lib/typescript/src/web/vaul/use-scale-background.d.ts +2 -0
  81. package/lib/typescript/src/web/vaul/use-scale-background.d.ts.map +1 -0
  82. package/lib/typescript/src/web/vaul/use-snap-points.d.ts +37 -0
  83. package/lib/typescript/src/web/vaul/use-snap-points.d.ts.map +1 -0
  84. package/package.json +4 -4
  85. package/src/TrueSheet.tsx +9 -1
  86. package/src/TrueSheet.types.ts +88 -38
  87. package/src/TrueSheet.web.tsx +675 -450
  88. package/src/TrueSheetProvider.tsx +2 -4
  89. package/src/TrueSheetProvider.web.tsx +193 -125
  90. package/src/mocks/index.ts +1 -2
  91. package/src/navigation/types.ts +0 -1
  92. package/src/reanimated/ReanimatedTrueSheet.web.tsx +0 -1
  93. package/src/reanimated/useReanimatedPositionChangeHandler.web.ts +2 -3
  94. package/src/web/constants.ts +13 -0
  95. package/src/web/vaul/README.md +9 -0
  96. package/src/web/vaul/browser.ts +38 -0
  97. package/src/web/vaul/constants.ts +18 -0
  98. package/src/web/vaul/context.ts +87 -0
  99. package/src/web/vaul/helpers.ts +124 -0
  100. package/src/web/vaul/index.tsx +1590 -0
  101. package/src/web/vaul/style.css +264 -0
  102. package/src/web/vaul/types.ts +7 -0
  103. package/src/web/vaul/use-composed-refs.ts +35 -0
  104. package/src/web/vaul/use-controllable-state.ts +66 -0
  105. package/src/web/vaul/use-position-fixed.ts +147 -0
  106. package/src/web/vaul/use-prevent-scroll.ts +309 -0
  107. package/src/web/vaul/use-scale-background.ts +64 -0
  108. package/src/web/vaul/use-snap-points.ts +433 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DialogPrimitive","React","DrawerContext","useDrawerContext","usePreventScroll","isInput","useComposedRefs","useSnapPoints","set","getTranslate","dampenValue","isVertical","reset","TRANSITIONS","VELOCITY_THRESHOLD","CLOSE_THRESHOLD","SCROLL_LOCK_TIMEOUT","BORDER_RADIUS","NESTED_DISPLACEMENT","WINDOW_TOP_OFFSET","DRAG_CLASS","useControllableState","useScaleBackground","usePositionFixed","isIOS","isMobileFirefox","jsx","_jsx","jsxs","_jsxs","Root","open","openProp","onOpenChange","children","onDrag","onDragProp","onRelease","onReleaseProp","snapPoints","shouldScaleBackground","setBackgroundColorOnScale","closeThreshold","scrollLockTimeout","dismissible","draggable","handleOnly","fadeFromIndex","length","activeSnapPoint","activeSnapPointProp","setActiveSnapPoint","setActiveSnapPointProp","fixed","modal","onClose","nested","noBodyStyles","direction","defaultOpen","disablePreventScroll","snapToSequentialPoint","preventScrollRestoration","repositionInputs","onAnimationEnd","onPositionChange","container","autoFocus","detached","detachedOffset","detachedRadius","detachedWrapperStyle","maxContentHeight","initialAnimated","isOpen","setIsOpen","defaultProp","prop","onChange","o","restorePositionSetting","setTimeout","DURATION","window","requestAnimationFrame","document","body","style","pointerEvents","hasBeenOpened","setHasBeenOpened","useState","isDragging","setIsDragging","justReleased","setJustReleased","overlayRef","useRef","openTime","dragStartTime","dragEndTime","lastTimeDragPrevented","isAllowedToDrag","nestedOpenChangeTimer","pointerStart","keyboardIsOpen","shouldAnimate","previousDiffFromInitial","drawerRef","drawerHeightRef","current","getBoundingClientRect","height","drawerWidthRef","width","initialDrawerHeight","contentHeight","setContentHeight","onSnapPointChange","useCallback","activeSnapPointIndex","snapPointsOffset","Date","onReleaseSnapPoints","onDragSnapPoints","shouldFade","getPercentageDragged","getSnapPointsPercentageDragged","isDisabled","getScale","innerWidth","onPress","event","contains","target","addEventListener","once","setPointerCapture","pointerId","pageY","pageX","shouldDrag","el","isDraggingInDirection","element","highlightedText","getSelection","toString","swipeAmount","date","tagName","hasAttribute","closest","getTime","scrollHeight","clientHeight","scrollTop","getAttribute","parentNode","directionMultiplier","draggedDistance","noCloseSnapPointsPreCondition","absDraggedDistance","Math","abs","wrapper","querySelector","drawerDimension","percentageDragged","snapPointPercentageDragged","classList","add","transition","dampenedDraggedDistance","translateValue","min","transform","opacityValue","opacity","scaleValue","borderRadiusValue","max","borderRadius","useEffect","undefined","onPositionChangeRef","isBelowFade","value","id","observer","rafId","startObserving","node","IntersectionObserver","entries","entry","isIntersecting","observe","cancelAnimationFrame","disconnect","onVisualViewportChange","focusedElement","activeElement","visualViewportHeight","visualViewport","totalHeight","innerHeight","diffFromInitial","drawerHeight","isTallEnough","offsetFromTop","top","activeSnapPointHeight","newDrawerHeight","bottom","removeEventListener","closeDrawer","fromWithin","cancelDrag","resetDrawer","currentSwipeAmount","EASE","join","overflow","transformOrigin","transitionProperty","transitionDuration","transitionTimingFunction","remove","Number","isNaN","timeTaken","distMoved","velocity","visibleDrawerHeight","visibleDrawerWidth","isHorizontalSwipe","documentElement","scrollBehavior","onNestedOpenChange","scale","initialTranslate","clearTimeout","onNestedDrag","_event","initialScale","newScale","newTranslate","onNestedRelease","dim","translate","Provider","Overlay","forwardRef","rest","ref","composedRef","hasSnapPoints","delayedSnapPoints","setDelayedSnapPoints","onMouseUp","overlayBelowFadeStyle","displayName","overlayPointerEventsNone","Content","onPointerDownOutside","onOpenAutoFocus","detachedSiblings","detachedWrapperStyleProp","hasAutoSnapPoint","useMemo","some","p","autoRoRef","setAutoSizeNode","measure","offsetHeight","ro","ResizeObserver","pointerStartRef","lastKnownPointerEventRef","wasBeyondThePointRef","isDeltaInDirection","delta","dir","threshold","deltaY","y","deltaX","x","isDeltaX","dFactor","includes","isReverseDirection","positionTrackingRef","drawer","state","movingCount","lastPosition","NaN","start","stop","emit","cb","position","tick","onTransitionRun","e","propertyName","onTransitionDone","onAnimationStart","onAnimationDone","handleOnPointerUp","wrapperStyle","left","right","contain","borderBottomLeftRadius","borderBottomRightRadius","wasOpenRef","viewportH","contentNode","onPointerDown","preventDefault","defaultPrevented","onFocusOutside","onPointerMove","yPosition","xPosition","swipeStartThreshold","pointerType","isAllowedToSwipe","onPointerUp","onPointerOut","onContextMenu","autoSizeWrapperStyle","display","LONG_HANDLE_PRESS_TIMEOUT","DOUBLE_TAP_TIMEOUT","Handle","preventCycle","closeTimeoutIdRef","shouldCancelInteractionRef","handleStartCycle","handleCancelInteraction","handleCycleSnapPoints","isLastSnapPoint","currentSnapIndex","findIndex","point","nextSnapPoint","handleStartInteraction","onClick","onPointerCancel","NestedRoot","nestedIsOpen","Error","Portal","props","context","portalProps","Drawer","Trigger","Close","Title","Description"],"sourceRoot":"../../../../src","sources":["web/vaul/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,264 @@
1
+ [data-vaul-drawer] {
2
+ touch-action: none;
3
+ will-change: transform;
4
+ transition: transform 0.5s cubic-bezier(0.32, 0.72, 0, 1);
5
+ animation-duration: 0.5s;
6
+ animation-timing-function: cubic-bezier(0.32, 0.72, 0, 1);
7
+ }
8
+
9
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='bottom'][data-state='open'] {
10
+ animation-name: slideFromBottom;
11
+ }
12
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='bottom'][data-state='closed'] {
13
+ animation-name: slideToBottom;
14
+ }
15
+
16
+ /* Drawers always dismiss by sliding the wrapper off-screen, so we don't want
17
+ vaul's default `slideTo*` drawer keyframes (they'd stack with the wrapper
18
+ translate and look twice as fast). Override with a no-op animation of
19
+ matching duration so Radix Presence still waits for it before unmounting.
20
+ Specificity needs to beat the 4-attribute `slideTo*` selectors above. */
21
+ [data-vaul-drawer][data-vaul-drawer-direction='bottom'][data-vaul-animate='true'][data-state='closed'] {
22
+ animation-name: vaulHold;
23
+ animation-duration: 0.5s;
24
+ }
25
+ @keyframes vaulHold {
26
+ from {
27
+ opacity: 1;
28
+ }
29
+ to {
30
+ opacity: 1;
31
+ }
32
+ }
33
+
34
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='top'][data-state='open'] {
35
+ animation-name: slideFromTop;
36
+ }
37
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='top'][data-state='closed'] {
38
+ animation-name: slideToTop;
39
+ }
40
+
41
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='left'][data-state='open'] {
42
+ animation-name: slideFromLeft;
43
+ }
44
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='left'][data-state='closed'] {
45
+ animation-name: slideToLeft;
46
+ }
47
+
48
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='right'][data-state='open'] {
49
+ animation-name: slideFromRight;
50
+ }
51
+ [data-vaul-drawer][data-vaul-snap-points='false'][data-vaul-drawer-direction='right'][data-state='closed'] {
52
+ animation-name: slideToRight;
53
+ }
54
+
55
+ [data-vaul-drawer][data-vaul-snap-points='true'][data-vaul-drawer-direction='bottom'] {
56
+ transform: translate3d(0, var(--initial-transform, 100%), 0);
57
+ }
58
+
59
+ [data-vaul-drawer][data-vaul-snap-points='true'][data-vaul-drawer-direction='top'] {
60
+ transform: translate3d(0, calc(var(--initial-transform, 100%) * -1), 0);
61
+ }
62
+
63
+ [data-vaul-drawer][data-vaul-snap-points='true'][data-vaul-drawer-direction='left'] {
64
+ transform: translate3d(calc(var(--initial-transform, 100%) * -1), 0, 0);
65
+ }
66
+
67
+ [data-vaul-drawer][data-vaul-snap-points='true'][data-vaul-drawer-direction='right'] {
68
+ transform: translate3d(var(--initial-transform, 100%), 0, 0);
69
+ }
70
+
71
+ [data-vaul-drawer][data-vaul-delayed-snap-points='true'][data-vaul-drawer-direction='top'] {
72
+ transform: translate3d(0, var(--snap-point-height, 0), 0);
73
+ }
74
+
75
+ [data-vaul-drawer][data-vaul-delayed-snap-points='true'][data-vaul-drawer-direction='bottom'] {
76
+ transform: translate3d(0, var(--snap-point-height, 0), 0);
77
+ }
78
+
79
+ [data-vaul-drawer][data-vaul-delayed-snap-points='true'][data-vaul-drawer-direction='left'] {
80
+ transform: translate3d(var(--snap-point-height, 0), 0, 0);
81
+ }
82
+
83
+ [data-vaul-drawer][data-vaul-delayed-snap-points='true'][data-vaul-drawer-direction='right'] {
84
+ transform: translate3d(var(--snap-point-height, 0), 0, 0);
85
+ }
86
+
87
+ [data-vaul-overlay][data-vaul-snap-points='false'] {
88
+ animation-duration: 0.5s;
89
+ animation-timing-function: cubic-bezier(0.32, 0.72, 0, 1);
90
+ }
91
+ [data-vaul-overlay][data-vaul-snap-points='false'][data-state='open'] {
92
+ animation-name: fadeIn;
93
+ }
94
+ [data-vaul-overlay][data-state='closed'] {
95
+ animation-name: fadeOut;
96
+ }
97
+
98
+ [data-vaul-animate='false'] {
99
+ animation: none !important;
100
+ }
101
+
102
+ [data-vaul-overlay][data-vaul-snap-points='true'] {
103
+ opacity: 0;
104
+ transition: opacity 0.5s cubic-bezier(0.32, 0.72, 0, 1);
105
+ }
106
+
107
+ [data-vaul-drawer]:not([data-vaul-custom-container='true'])::after {
108
+ content: '';
109
+ position: absolute;
110
+ background: inherit;
111
+ background-color: inherit;
112
+ }
113
+
114
+ [data-vaul-drawer][data-vaul-drawer-direction='top']::after {
115
+ top: initial;
116
+ bottom: 100%;
117
+ left: 0;
118
+ right: 0;
119
+ height: 200%;
120
+ }
121
+
122
+ [data-vaul-drawer][data-vaul-drawer-direction='bottom']::after {
123
+ top: 100%;
124
+ bottom: initial;
125
+ left: 0;
126
+ right: 0;
127
+ height: 200%;
128
+ }
129
+
130
+ [data-vaul-drawer][data-vaul-drawer-direction='left']::after {
131
+ left: initial;
132
+ right: 100%;
133
+ top: 0;
134
+ bottom: 0;
135
+ width: 200%;
136
+ }
137
+
138
+ [data-vaul-drawer][data-vaul-drawer-direction='right']::after {
139
+ left: 100%;
140
+ right: initial;
141
+ top: 0;
142
+ bottom: 0;
143
+ width: 200%;
144
+ }
145
+
146
+ [data-vaul-overlay][data-vaul-snap-points='true'][data-vaul-delayed-snap-points='true'][data-vaul-snap-points-overlay='true'] {
147
+ opacity: 1;
148
+ }
149
+
150
+ [data-vaul-handle] {
151
+ display: block;
152
+ position: relative;
153
+ opacity: 0.7;
154
+ background: #e2e2e4;
155
+ margin-left: auto;
156
+ margin-right: auto;
157
+ height: 5px;
158
+ width: 32px;
159
+ border-radius: 1rem;
160
+ touch-action: pan-y;
161
+ }
162
+
163
+ [data-vaul-handle]:hover,
164
+ [data-vaul-handle]:active {
165
+ opacity: 1;
166
+ }
167
+
168
+ [data-vaul-handle-hitarea] {
169
+ position: absolute;
170
+ left: 50%;
171
+ top: 50%;
172
+ transform: translate(-50%, -50%);
173
+ width: max(100%, 2.75rem); /* 44px */
174
+ height: max(100%, 2.75rem); /* 44px */
175
+ touch-action: inherit;
176
+ }
177
+
178
+ @media (hover: hover) and (pointer: fine) {
179
+ [data-vaul-drawer] {
180
+ user-select: none;
181
+ }
182
+ }
183
+
184
+ @media (pointer: fine) {
185
+ [data-vaul-handle-hitarea]: {
186
+ width: 100%;
187
+ height: 100%;
188
+ }
189
+ }
190
+
191
+ @keyframes fadeIn {
192
+ from {
193
+ opacity: 0;
194
+ }
195
+ to {
196
+ opacity: 1;
197
+ }
198
+ }
199
+
200
+ @keyframes fadeOut {
201
+ to {
202
+ opacity: 0;
203
+ }
204
+ }
205
+
206
+ @keyframes slideFromBottom {
207
+ from {
208
+ transform: translate3d(0, var(--initial-transform, 100%), 0);
209
+ }
210
+ to {
211
+ transform: translate3d(0, 0, 0);
212
+ }
213
+ }
214
+
215
+ @keyframes slideToBottom {
216
+ to {
217
+ transform: translate3d(0, var(--initial-transform, 100%), 0);
218
+ }
219
+ }
220
+
221
+ @keyframes slideFromTop {
222
+ from {
223
+ transform: translate3d(0, calc(var(--initial-transform, 100%) * -1), 0);
224
+ }
225
+ to {
226
+ transform: translate3d(0, 0, 0);
227
+ }
228
+ }
229
+
230
+ @keyframes slideToTop {
231
+ to {
232
+ transform: translate3d(0, calc(var(--initial-transform, 100%) * -1), 0);
233
+ }
234
+ }
235
+
236
+ @keyframes slideFromLeft {
237
+ from {
238
+ transform: translate3d(calc(var(--initial-transform, 100%) * -1), 0, 0);
239
+ }
240
+ to {
241
+ transform: translate3d(0, 0, 0);
242
+ }
243
+ }
244
+
245
+ @keyframes slideToLeft {
246
+ to {
247
+ transform: translate3d(calc(var(--initial-transform, 100%) * -1), 0, 0);
248
+ }
249
+ }
250
+
251
+ @keyframes slideFromRight {
252
+ from {
253
+ transform: translate3d(var(--initial-transform, 100%), 0, 0);
254
+ }
255
+ to {
256
+ transform: translate3d(0, 0, 0);
257
+ }
258
+ }
259
+
260
+ @keyframes slideToRight {
261
+ to {
262
+ transform: translate3d(var(--initial-transform, 100%), 0, 0);
263
+ }
264
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["web/vaul/types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ // This code comes from https://github.com/radix-ui/primitives/tree/main/packages/react/compose-refs
4
+
5
+ import * as React from 'react';
6
+ /**
7
+ * Set a given ref to a given value
8
+ * This utility takes care of different types of refs: callback refs and RefObject(s)
9
+ */
10
+ function setRef(ref, value) {
11
+ if (typeof ref === 'function') {
12
+ ref(value);
13
+ } else if (ref !== null && ref !== undefined) {
14
+ ref.current = value;
15
+ }
16
+ }
17
+
18
+ /**
19
+ * A utility to compose multiple refs together
20
+ * Accepts callback refs and RefObject(s)
21
+ */
22
+ function composeRefs(...refs) {
23
+ return node => refs.forEach(ref => setRef(ref, node));
24
+ }
25
+
26
+ /**
27
+ * A custom hook that composes multiple refs
28
+ * Accepts callback refs and RefObject(s)
29
+ */
30
+ function useComposedRefs(...refs) {
31
+ return React.useCallback(composeRefs(...refs), refs);
32
+ }
33
+ export { composeRefs, useComposedRefs };
34
+ //# sourceMappingURL=use-composed-refs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","setRef","ref","value","undefined","current","composeRefs","refs","node","forEach","useComposedRefs","useCallback"],"sourceRoot":"../../../../src","sources":["web/vaul/use-composed-refs.ts"],"mappings":";;AAAA;;AAEA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAI9B;AACA;AACA;AACA;AACA,SAASC,MAAMA,CAAIC,GAAmB,EAAEC,KAAQ,EAAE;EAChD,IAAI,OAAOD,GAAG,KAAK,UAAU,EAAE;IAC7BA,GAAG,CAACC,KAAK,CAAC;EACZ,CAAC,MAAM,IAAID,GAAG,KAAK,IAAI,IAAIA,GAAG,KAAKE,SAAS,EAAE;IAC3CF,GAAG,CAA+BG,OAAO,GAAGF,KAAK;EACpD;AACF;;AAEA;AACA;AACA;AACA;AACA,SAASG,WAAWA,CAAI,GAAGC,IAAsB,EAAE;EACjD,OAAQC,IAAO,IAAKD,IAAI,CAACE,OAAO,CAAEP,GAAG,IAAKD,MAAM,CAACC,GAAG,EAAEM,IAAI,CAAC,CAAC;AAC9D;;AAEA;AACA;AACA;AACA;AACA,SAASE,eAAeA,CAAI,GAAGH,IAAsB,EAAE;EACrD,OAAOP,KAAK,CAACW,WAAW,CAACL,WAAW,CAAC,GAAGC,IAAI,CAAC,EAAEA,IAAI,CAAC;AACtD;AAEA,SAASD,WAAW,EAAEI,eAAe","ignoreList":[]}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ // This code comes from https://github.com/radix-ui/primitives/blob/main/packages/react/use-controllable-state/src/useControllableState.tsx
4
+
5
+ import React from 'react';
6
+ function useCallbackRef(callback) {
7
+ const callbackRef = React.useRef(callback);
8
+ React.useEffect(() => {
9
+ callbackRef.current = callback;
10
+ });
11
+
12
+ // https://github.com/facebook/react/issues/19240
13
+ return React.useMemo(() => (...args) => callbackRef.current?.(...args), []);
14
+ }
15
+ function useUncontrolledState({
16
+ defaultProp,
17
+ onChange
18
+ }) {
19
+ const uncontrolledState = React.useState(defaultProp);
20
+ const [value] = uncontrolledState;
21
+ const prevValueRef = React.useRef(value);
22
+ const handleChange = useCallbackRef(onChange);
23
+ React.useEffect(() => {
24
+ if (prevValueRef.current !== value) {
25
+ handleChange(value);
26
+ prevValueRef.current = value;
27
+ }
28
+ }, [value, prevValueRef, handleChange]);
29
+ return uncontrolledState;
30
+ }
31
+ export function useControllableState({
32
+ prop,
33
+ defaultProp,
34
+ onChange = () => {}
35
+ }) {
36
+ const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({
37
+ defaultProp,
38
+ onChange
39
+ });
40
+ const isControlled = prop !== undefined;
41
+ const value = isControlled ? prop : uncontrolledProp;
42
+ const handleChange = useCallbackRef(onChange);
43
+ const setValue = React.useCallback(nextValue => {
44
+ if (isControlled) {
45
+ const setter = nextValue;
46
+ const next = typeof nextValue === 'function' ? setter(prop) : nextValue;
47
+ if (next !== prop) handleChange(next);
48
+ } else {
49
+ setUncontrolledProp(nextValue);
50
+ }
51
+ }, [isControlled, prop, setUncontrolledProp, handleChange]);
52
+ return [value, setValue];
53
+ }
54
+ //# sourceMappingURL=use-controllable-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useCallbackRef","callback","callbackRef","useRef","useEffect","current","useMemo","args","useUncontrolledState","defaultProp","onChange","uncontrolledState","useState","value","prevValueRef","handleChange","useControllableState","prop","uncontrolledProp","setUncontrolledProp","isControlled","undefined","setValue","useCallback","nextValue","setter","next"],"sourceRoot":"../../../../src","sources":["web/vaul/use-controllable-state.ts"],"mappings":";;AAAA;;AAEA,OAAOA,KAAK,MAAM,OAAO;AAUzB,SAASC,cAAcA,CAAoCC,QAAuB,EAAK;EACrF,MAAMC,WAAW,GAAGH,KAAK,CAACI,MAAM,CAACF,QAAQ,CAAC;EAE1CF,KAAK,CAACK,SAAS,CAAC,MAAM;IACpBF,WAAW,CAACG,OAAO,GAAGJ,QAAQ;EAChC,CAAC,CAAC;;EAEF;EACA,OAAOF,KAAK,CAACO,OAAO,CAAC,MAAO,CAAC,GAAGC,IAAI,KAAKL,WAAW,CAACG,OAAO,GAAG,GAAGE,IAAI,CAAO,EAAE,EAAE,CAAC;AACpF;AAEA,SAASC,oBAAoBA,CAAI;EAC/BC,WAAW;EACXC;AAC2C,CAAC,EAAE;EAC9C,MAAMC,iBAAiB,GAAGZ,KAAK,CAACa,QAAQ,CAAgBH,WAAW,CAAC;EACpE,MAAM,CAACI,KAAK,CAAC,GAAGF,iBAAiB;EACjC,MAAMG,YAAY,GAAGf,KAAK,CAACI,MAAM,CAACU,KAAK,CAAC;EACxC,MAAME,YAAY,GAAGf,cAAc,CAACU,QAAQ,CAAC;EAE7CX,KAAK,CAACK,SAAS,CAAC,MAAM;IACpB,IAAIU,YAAY,CAACT,OAAO,KAAKQ,KAAK,EAAE;MAClCE,YAAY,CAACF,KAAU,CAAC;MACxBC,YAAY,CAACT,OAAO,GAAGQ,KAAK;IAC9B;EACF,CAAC,EAAE,CAACA,KAAK,EAAEC,YAAY,EAAEC,YAAY,CAAC,CAAC;EAEvC,OAAOJ,iBAAiB;AAC1B;AACA,OAAO,SAASK,oBAAoBA,CAAI;EACtCC,IAAI;EACJR,WAAW;EACXC,QAAQ,GAAGA,CAAA,KAAM,CAAC;AACW,CAAC,EAAE;EAChC,MAAM,CAACQ,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGX,oBAAoB,CAAC;IAAEC,WAAW;IAAEC;EAAS,CAAC,CAAC;EAC/F,MAAMU,YAAY,GAAGH,IAAI,KAAKI,SAAS;EACvC,MAAMR,KAAK,GAAGO,YAAY,GAAGH,IAAI,GAAGC,gBAAgB;EACpD,MAAMH,YAAY,GAAGf,cAAc,CAACU,QAAQ,CAAC;EAE7C,MAAMY,QAA6D,GAAGvB,KAAK,CAACwB,WAAW,CACpFC,SAAS,IAAK;IACb,IAAIJ,YAAY,EAAE;MAChB,MAAMK,MAAM,GAAGD,SAA0B;MACzC,MAAME,IAAI,GAAG,OAAOF,SAAS,KAAK,UAAU,GAAGC,MAAM,CAACR,IAAI,CAAC,GAAGO,SAAS;MACvE,IAAIE,IAAI,KAAKT,IAAI,EAAEF,YAAY,CAACW,IAAS,CAAC;IAC5C,CAAC,MAAM;MACLP,mBAAmB,CAACK,SAAS,CAAC;IAChC;EACF,CAAC,EACD,CAACJ,YAAY,EAAEH,IAAI,EAAEE,mBAAmB,EAAEJ,YAAY,CACxD,CAAC;EAED,OAAO,CAACF,KAAK,EAAES,QAAQ,CAAC;AAC1B","ignoreList":[]}
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { isSafari } from "./browser.js";
5
+ let previousBodyPosition = null;
6
+
7
+ /**
8
+ * This hook is necessary to prevent buggy behavior on iOS devices (need to test on Android).
9
+ * I won't get into too much detail about what bugs it solves, but so far I've found that setting the body to `position: fixed` is the most reliable way to prevent those bugs.
10
+ * Issues that this hook solves:
11
+ * https://github.com/emilkowalski/vaul/issues/435
12
+ * https://github.com/emilkowalski/vaul/issues/433
13
+ * And more that I discovered, but were just not reported.
14
+ */
15
+
16
+ export function usePositionFixed({
17
+ isOpen,
18
+ modal,
19
+ nested,
20
+ hasBeenOpened,
21
+ preventScrollRestoration,
22
+ noBodyStyles
23
+ }) {
24
+ const [activeUrl, setActiveUrl] = React.useState(() => typeof window !== 'undefined' ? window.location.href : '');
25
+ const scrollPos = React.useRef(0);
26
+ const setPositionFixed = React.useCallback(() => {
27
+ // All browsers on iOS will return true here.
28
+ if (!isSafari()) return;
29
+
30
+ // If previousBodyPosition is already set, don't set it again.
31
+ if (previousBodyPosition === null && isOpen && !noBodyStyles) {
32
+ previousBodyPosition = {
33
+ position: document.body.style.position,
34
+ top: document.body.style.top,
35
+ left: document.body.style.left,
36
+ height: document.body.style.height,
37
+ right: 'unset'
38
+ };
39
+
40
+ // Update the dom inside an animation frame
41
+ const {
42
+ scrollX,
43
+ innerHeight
44
+ } = window;
45
+ document.body.style.setProperty('position', 'fixed', 'important');
46
+ Object.assign(document.body.style, {
47
+ top: `${-scrollPos.current}px`,
48
+ left: `${-scrollX}px`,
49
+ right: '0px',
50
+ height: 'auto'
51
+ });
52
+ window.setTimeout(() => window.requestAnimationFrame(() => {
53
+ // Attempt to check if the bottom bar appeared due to the position change
54
+ const bottomBarHeight = innerHeight - window.innerHeight;
55
+ if (bottomBarHeight && scrollPos.current >= innerHeight) {
56
+ // Move the content further up so that the bottom bar doesn't hide it
57
+ document.body.style.top = `${-(scrollPos.current + bottomBarHeight)}px`;
58
+ }
59
+ }), 300);
60
+ }
61
+ }, [isOpen]);
62
+ const restorePositionSetting = React.useCallback(() => {
63
+ // All browsers on iOS will return true here.
64
+ if (!isSafari()) return;
65
+ if (previousBodyPosition !== null && !noBodyStyles) {
66
+ // Convert the position from "px" to Int
67
+ const y = -parseInt(document.body.style.top, 10);
68
+ const x = -parseInt(document.body.style.left, 10);
69
+
70
+ // Restore styles
71
+ Object.assign(document.body.style, previousBodyPosition);
72
+ window.requestAnimationFrame(() => {
73
+ if (preventScrollRestoration && activeUrl !== window.location.href) {
74
+ setActiveUrl(window.location.href);
75
+ return;
76
+ }
77
+ window.scrollTo(x, y);
78
+ });
79
+ previousBodyPosition = null;
80
+ }
81
+ }, [activeUrl]);
82
+ React.useEffect(() => {
83
+ function onScroll() {
84
+ scrollPos.current = window.scrollY;
85
+ }
86
+ onScroll();
87
+ window.addEventListener('scroll', onScroll);
88
+ return () => {
89
+ window.removeEventListener('scroll', onScroll);
90
+ };
91
+ }, []);
92
+ React.useEffect(() => {
93
+ if (!modal) return;
94
+ return () => {
95
+ if (typeof document === 'undefined') return;
96
+
97
+ // Another drawer is opened, safe to ignore the execution
98
+ const hasDrawerOpened = !!document.querySelector('[data-vaul-drawer]');
99
+ if (hasDrawerOpened) return;
100
+ restorePositionSetting();
101
+ };
102
+ }, [modal, restorePositionSetting]);
103
+ React.useEffect(() => {
104
+ if (nested || !hasBeenOpened) return;
105
+ // This is needed to force Safari toolbar to show **before** the drawer starts animating to prevent a gnarly shift from happening
106
+ if (isOpen) {
107
+ // avoid for standalone mode (PWA)
108
+ const isStandalone = window.matchMedia('(display-mode: standalone)').matches;
109
+ !isStandalone && setPositionFixed();
110
+ if (!modal) {
111
+ window.setTimeout(() => {
112
+ restorePositionSetting();
113
+ }, 500);
114
+ }
115
+ } else {
116
+ restorePositionSetting();
117
+ }
118
+ }, [isOpen, hasBeenOpened, activeUrl, modal, nested, setPositionFixed, restorePositionSetting]);
119
+ return {
120
+ restorePositionSetting
121
+ };
122
+ }
123
+ //# sourceMappingURL=use-position-fixed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","isSafari","previousBodyPosition","usePositionFixed","isOpen","modal","nested","hasBeenOpened","preventScrollRestoration","noBodyStyles","activeUrl","setActiveUrl","useState","window","location","href","scrollPos","useRef","setPositionFixed","useCallback","position","document","body","style","top","left","height","right","scrollX","innerHeight","setProperty","Object","assign","current","setTimeout","requestAnimationFrame","bottomBarHeight","restorePositionSetting","y","parseInt","x","scrollTo","useEffect","onScroll","scrollY","addEventListener","removeEventListener","hasDrawerOpened","querySelector","isStandalone","matchMedia","matches"],"sourceRoot":"../../../../src","sources":["web/vaul/use-position-fixed.ts"],"mappings":"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","ignoreList":[]}