@lodev09/react-native-true-sheet 3.10.0 → 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.
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +11 -4
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +10 -5
- package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetStackManager.kt +2 -5
- package/lib/module/TrueSheet.js +3 -0
- package/lib/module/TrueSheet.js.map +1 -1
- package/lib/module/TrueSheet.web.js +604 -376
- package/lib/module/TrueSheet.web.js.map +1 -1
- package/lib/module/TrueSheetProvider.js.map +1 -1
- package/lib/module/TrueSheetProvider.web.js +141 -100
- package/lib/module/TrueSheetProvider.web.js.map +1 -1
- package/lib/module/mocks/index.js.map +1 -1
- package/lib/module/reanimated/ReanimatedTrueSheet.web.js.map +1 -1
- package/lib/module/reanimated/useReanimatedPositionChangeHandler.web.js +2 -3
- package/lib/module/reanimated/useReanimatedPositionChangeHandler.web.js.map +1 -1
- package/lib/module/web/constants.js +16 -0
- package/lib/module/web/constants.js.map +1 -0
- package/lib/module/web/vaul/README.md +9 -0
- package/lib/module/web/vaul/browser.js +30 -0
- package/lib/module/web/vaul/browser.js.map +1 -0
- package/lib/module/web/vaul/constants.js +14 -0
- package/lib/module/web/vaul/constants.js.map +1 -0
- package/lib/module/web/vaul/context.js +57 -0
- package/lib/module/web/vaul/context.js.map +1 -0
- package/lib/module/web/vaul/helpers.js +93 -0
- package/lib/module/web/vaul/helpers.js.map +1 -0
- package/lib/module/web/vaul/index.js +1206 -0
- package/lib/module/web/vaul/index.js.map +1 -0
- package/lib/module/web/vaul/style.css +264 -0
- package/lib/module/web/vaul/types.js +2 -0
- package/lib/module/web/vaul/types.js.map +1 -0
- package/lib/module/web/vaul/use-composed-refs.js +34 -0
- package/lib/module/web/vaul/use-composed-refs.js.map +1 -0
- package/lib/module/web/vaul/use-controllable-state.js +54 -0
- package/lib/module/web/vaul/use-controllable-state.js.map +1 -0
- package/lib/module/web/vaul/use-position-fixed.js +123 -0
- package/lib/module/web/vaul/use-position-fixed.js.map +1 -0
- package/lib/module/web/vaul/use-prevent-scroll.js +258 -0
- package/lib/module/web/vaul/use-prevent-scroll.js.map +1 -0
- package/lib/module/web/vaul/use-scale-background.js +57 -0
- package/lib/module/web/vaul/use-scale-background.js.map +1 -0
- package/lib/module/web/vaul/use-snap-points.js +294 -0
- package/lib/module/web/vaul/use-snap-points.js.map +1 -0
- package/lib/typescript/src/TrueSheet.d.ts +2 -2
- package/lib/typescript/src/TrueSheet.d.ts.map +1 -1
- package/lib/typescript/src/TrueSheet.types.d.ts +79 -36
- package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
- package/lib/typescript/src/TrueSheet.web.d.ts +3 -11
- package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -1
- package/lib/typescript/src/TrueSheetProvider.d.ts +2 -2
- package/lib/typescript/src/TrueSheetProvider.d.ts.map +1 -1
- package/lib/typescript/src/TrueSheetProvider.web.d.ts +17 -14
- package/lib/typescript/src/TrueSheetProvider.web.d.ts.map +1 -1
- package/lib/typescript/src/mocks/index.d.ts +1 -2
- package/lib/typescript/src/mocks/index.d.ts.map +1 -1
- package/lib/typescript/src/navigation/types.d.ts +1 -1
- package/lib/typescript/src/navigation/types.d.ts.map +1 -1
- package/lib/typescript/src/reanimated/ReanimatedTrueSheet.web.d.ts +0 -1
- package/lib/typescript/src/reanimated/ReanimatedTrueSheet.web.d.ts.map +1 -1
- package/lib/typescript/src/reanimated/useReanimatedPositionChangeHandler.web.d.ts +2 -3
- package/lib/typescript/src/reanimated/useReanimatedPositionChangeHandler.web.d.ts.map +1 -1
- package/lib/typescript/src/web/constants.d.ts +14 -0
- package/lib/typescript/src/web/constants.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/browser.d.ts +8 -0
- package/lib/typescript/src/web/vaul/browser.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/constants.d.ts +12 -0
- package/lib/typescript/src/web/vaul/constants.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/context.d.ts +45 -0
- package/lib/typescript/src/web/vaul/context.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/helpers.d.ts +17 -0
- package/lib/typescript/src/web/vaul/helpers.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/index.d.ts +210 -0
- package/lib/typescript/src/web/vaul/index.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/types.d.ts +7 -0
- package/lib/typescript/src/web/vaul/types.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/use-composed-refs.d.ts +14 -0
- package/lib/typescript/src/web/vaul/use-composed-refs.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/use-controllable-state.d.ts +9 -0
- package/lib/typescript/src/web/vaul/use-controllable-state.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/use-position-fixed.d.ts +19 -0
- package/lib/typescript/src/web/vaul/use-position-fixed.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/use-prevent-scroll.d.ts +18 -0
- package/lib/typescript/src/web/vaul/use-prevent-scroll.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/use-scale-background.d.ts +2 -0
- package/lib/typescript/src/web/vaul/use-scale-background.d.ts.map +1 -0
- package/lib/typescript/src/web/vaul/use-snap-points.d.ts +37 -0
- package/lib/typescript/src/web/vaul/use-snap-points.d.ts.map +1 -0
- package/package.json +4 -4
- package/src/TrueSheet.tsx +9 -1
- package/src/TrueSheet.types.ts +88 -38
- package/src/TrueSheet.web.tsx +675 -450
- package/src/TrueSheetProvider.tsx +2 -4
- package/src/TrueSheetProvider.web.tsx +193 -125
- package/src/mocks/index.ts +1 -2
- package/src/navigation/types.ts +0 -1
- package/src/reanimated/ReanimatedTrueSheet.web.tsx +0 -1
- package/src/reanimated/useReanimatedPositionChangeHandler.web.ts +2 -3
- package/src/web/constants.ts +13 -0
- package/src/web/vaul/README.md +9 -0
- package/src/web/vaul/browser.ts +38 -0
- package/src/web/vaul/constants.ts +18 -0
- package/src/web/vaul/context.ts +87 -0
- package/src/web/vaul/helpers.ts +124 -0
- package/src/web/vaul/index.tsx +1590 -0
- package/src/web/vaul/style.css +264 -0
- package/src/web/vaul/types.ts +7 -0
- package/src/web/vaul/use-composed-refs.ts +35 -0
- package/src/web/vaul/use-controllable-state.ts +66 -0
- package/src/web/vaul/use-position-fixed.ts +147 -0
- package/src/web/vaul/use-prevent-scroll.ts +309 -0
- package/src/web/vaul/use-scale-background.ts +64 -0
- package/src/web/vaul/use-snap-points.ts +433 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","DrawerContext","createContext","drawerRef","current","overlayRef","onPress","onRelease","onDrag","onNestedDrag","onNestedOpenChange","onNestedRelease","openProp","undefined","dismissible","isOpen","isDragging","keyboardIsOpen","snapPointsOffset","snapPoints","handleOnly","modal","shouldFade","activeSnapPoint","onOpenChange","setActiveSnapPoint","closeDrawer","direction","shouldAnimate","shouldScaleBackground","setBackgroundColorOnScale","noBodyStyles","container","autoFocus","onPositionChangeRef","setContentHeight","detached","detachedOffset","detachedRadius","useDrawerContext","context","useContext","Error"],"sourceRoot":"../../../../src","sources":["web/vaul/context.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AA2CzB,OAAO,MAAMC,aAAa,gBAAGD,KAAK,CAACE,aAAa,CAAqB;EACnEC,SAAS,EAAE;IAAEC,OAAO,EAAE;EAAK,CAAC;EAC5BC,UAAU,EAAE;IAAED,OAAO,EAAE;EAAK,CAAC;EAC7BE,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;EACjBC,SAAS,EAAEA,CAAA,KAAM,CAAC,CAAC;EACnBC,MAAM,EAAEA,CAAA,KAAM,CAAC,CAAC;EAChBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,eAAe,EAAEA,CAAA,KAAM,CAAC,CAAC;EACzBC,QAAQ,EAAEC,SAAS;EACnBC,WAAW,EAAE,KAAK;EAClBC,MAAM,EAAE,KAAK;EACbC,UAAU,EAAE,KAAK;EACjBC,cAAc,EAAE;IAAEb,OAAO,EAAE;EAAM,CAAC;EAClCc,gBAAgB,EAAE,IAAI;EACtBC,UAAU,EAAE,IAAI;EAChBC,UAAU,EAAE,KAAK;EACjBC,KAAK,EAAE,KAAK;EACZC,UAAU,EAAE,KAAK;EACjBC,eAAe,EAAE,IAAI;EACrBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,aAAa,EAAE;IAAExB,OAAO,EAAE;EAAK,CAAC;EAChCyB,qBAAqB,EAAE,KAAK;EAC5BC,yBAAyB,EAAE,IAAI;EAC/BC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,KAAK;EAChBC,mBAAmB,EAAE;IAAE9B,OAAO,EAAES;EAAU,CAAC;EAC3CsB,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BC,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,CAAC;EACjBC,cAAc,EAAE;AAClB,CAAC,CAAC;AAEF,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAMC,OAAO,GAAGxC,KAAK,CAACyC,UAAU,CAACxC,aAAa,CAAC;EAC/C,IAAI,CAACuC,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,oDAAoD,CAAC;EACvE;EACA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const cache = new WeakMap();
|
|
4
|
+
export function isInView(el) {
|
|
5
|
+
const rect = el.getBoundingClientRect();
|
|
6
|
+
if (!window.visualViewport) return false;
|
|
7
|
+
return rect.top >= 0 && rect.left >= 0 &&
|
|
8
|
+
// Need + 40 for safari detection
|
|
9
|
+
rect.bottom <= window.visualViewport.height - 40 && rect.right <= window.visualViewport.width;
|
|
10
|
+
}
|
|
11
|
+
export function set(el, styles, ignoreCache = false) {
|
|
12
|
+
if (!el || !(el instanceof HTMLElement)) return;
|
|
13
|
+
let originalStyles = {};
|
|
14
|
+
Object.entries(styles).forEach(([key, value]) => {
|
|
15
|
+
if (key.startsWith('--')) {
|
|
16
|
+
el.style.setProperty(key, value);
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
originalStyles[key] = el.style[key];
|
|
20
|
+
el.style[key] = value;
|
|
21
|
+
});
|
|
22
|
+
if (ignoreCache) return;
|
|
23
|
+
cache.set(el, originalStyles);
|
|
24
|
+
}
|
|
25
|
+
export function reset(el, prop) {
|
|
26
|
+
if (!el || !(el instanceof HTMLElement)) return;
|
|
27
|
+
let originalStyles = cache.get(el);
|
|
28
|
+
if (!originalStyles) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
if (prop) {
|
|
32
|
+
el.style[prop] = originalStyles[prop];
|
|
33
|
+
} else {
|
|
34
|
+
Object.entries(originalStyles).forEach(([key, value]) => {
|
|
35
|
+
el.style[key] = value;
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
export const isVertical = direction => {
|
|
40
|
+
switch (direction) {
|
|
41
|
+
case 'top':
|
|
42
|
+
case 'bottom':
|
|
43
|
+
return true;
|
|
44
|
+
case 'left':
|
|
45
|
+
case 'right':
|
|
46
|
+
return false;
|
|
47
|
+
default:
|
|
48
|
+
return direction;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
export function getTranslate(element, direction) {
|
|
52
|
+
if (!element) {
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
const style = window.getComputedStyle(element);
|
|
56
|
+
const transform =
|
|
57
|
+
// @ts-ignore
|
|
58
|
+
style.transform || style.webkitTransform || style.mozTransform;
|
|
59
|
+
let mat = transform.match(/^matrix3d\((.+)\)$/);
|
|
60
|
+
if (mat) {
|
|
61
|
+
// https://developer.mozilla.org/en-US/docs/Web/CSS/transform-function/matrix3d
|
|
62
|
+
return parseFloat(mat[1].split(', ')[isVertical(direction) ? 13 : 12]);
|
|
63
|
+
}
|
|
64
|
+
// https://developer.mozilla.org/en-US/docs/Web/CSS/transform-function/matrix
|
|
65
|
+
mat = transform.match(/^matrix\((.+)\)$/);
|
|
66
|
+
return mat ? parseFloat(mat[1].split(', ')[isVertical(direction) ? 5 : 4]) : null;
|
|
67
|
+
}
|
|
68
|
+
export function dampenValue(v) {
|
|
69
|
+
return 8 * (Math.log(v + 1) - 2);
|
|
70
|
+
}
|
|
71
|
+
export function assignStyle(element, style) {
|
|
72
|
+
if (!element) return () => {};
|
|
73
|
+
const prevStyle = element.style.cssText;
|
|
74
|
+
Object.assign(element.style, style);
|
|
75
|
+
return () => {
|
|
76
|
+
element.style.cssText = prevStyle;
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Receives functions as arguments and returns a new function that calls all.
|
|
82
|
+
*/
|
|
83
|
+
export function chain(...fns) {
|
|
84
|
+
return (...args) => {
|
|
85
|
+
for (const fn of fns) {
|
|
86
|
+
if (typeof fn === 'function') {
|
|
87
|
+
// @ts-ignore
|
|
88
|
+
fn(...args);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["cache","WeakMap","isInView","el","rect","getBoundingClientRect","window","visualViewport","top","left","bottom","height","right","width","set","styles","ignoreCache","HTMLElement","originalStyles","Object","entries","forEach","key","value","startsWith","style","setProperty","reset","prop","get","isVertical","direction","getTranslate","element","getComputedStyle","transform","webkitTransform","mozTransform","mat","match","parseFloat","split","dampenValue","v","Math","log","assignStyle","prevStyle","cssText","assign","chain","fns","args","fn"],"sourceRoot":"../../../../src","sources":["web/vaul/helpers.ts"],"mappings":"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","ignoreList":[]}
|