@tamagui/sheet 1.110.5 → 1.111.1

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 (91) hide show
  1. package/dist/cjs/SheetContext.native.js +1 -43
  2. package/dist/cjs/SheetContext.native.js.map +2 -2
  3. package/dist/cjs/SheetController.native.js +2 -23
  4. package/dist/cjs/SheetController.native.js.map +2 -2
  5. package/dist/cjs/SheetImplementationCustom.native.js +89 -158
  6. package/dist/cjs/SheetImplementationCustom.native.js.map +2 -2
  7. package/dist/cjs/SheetScrollView.native.js +7 -63
  8. package/dist/cjs/SheetScrollView.native.js.map +1 -1
  9. package/dist/cjs/createSheet.native.js +27 -82
  10. package/dist/cjs/createSheet.native.js.map +2 -2
  11. package/dist/cjs/nativeSheet.native.js +5 -39
  12. package/dist/cjs/nativeSheet.native.js.map +1 -1
  13. package/dist/cjs/useSheetOffscreenSize.native.js +1 -1
  14. package/dist/cjs/useSheetOffscreenSize.native.js.map +1 -1
  15. package/dist/cjs/useSheetOpenState.native.js +4 -46
  16. package/dist/cjs/useSheetOpenState.native.js.map +2 -2
  17. package/dist/cjs/useSheetProviderProps.native.js +7 -59
  18. package/dist/cjs/useSheetProviderProps.native.js.map +2 -2
  19. package/dist/esm/Sheet.native.mjs +92 -0
  20. package/dist/esm/Sheet.native.mjs.map +1 -0
  21. package/dist/esm/SheetContext.native.js +1 -42
  22. package/dist/esm/SheetContext.native.js.map +1 -1
  23. package/dist/esm/SheetContext.native.mjs +6 -0
  24. package/dist/esm/SheetContext.native.mjs.map +1 -0
  25. package/dist/esm/SheetController.native.js +2 -22
  26. package/dist/esm/SheetController.native.js.map +2 -2
  27. package/dist/esm/SheetController.native.mjs +26 -0
  28. package/dist/esm/SheetController.native.mjs.map +1 -0
  29. package/dist/esm/SheetImplementationCustom.native.js +88 -156
  30. package/dist/esm/SheetImplementationCustom.native.js.map +2 -2
  31. package/dist/esm/SheetImplementationCustom.native.mjs +347 -0
  32. package/dist/esm/SheetImplementationCustom.native.mjs.map +1 -0
  33. package/dist/esm/SheetScrollView.native.js +8 -63
  34. package/dist/esm/SheetScrollView.native.js.map +1 -1
  35. package/dist/esm/SheetScrollView.native.mjs +107 -0
  36. package/dist/esm/SheetScrollView.native.mjs.map +1 -0
  37. package/dist/esm/constants.native.mjs +9 -0
  38. package/dist/esm/constants.native.mjs.map +1 -0
  39. package/dist/esm/contexts.native.mjs +7 -0
  40. package/dist/esm/contexts.native.mjs.map +1 -0
  41. package/dist/esm/createSheet.native.js +27 -82
  42. package/dist/esm/createSheet.native.js.map +2 -2
  43. package/dist/esm/createSheet.native.mjs +161 -0
  44. package/dist/esm/createSheet.native.mjs.map +1 -0
  45. package/dist/esm/helpers.native.mjs +13 -0
  46. package/dist/esm/helpers.native.mjs.map +1 -0
  47. package/dist/esm/index.native.mjs +12 -0
  48. package/dist/esm/index.native.mjs.map +1 -0
  49. package/dist/esm/nativeSheet.native.js +4 -37
  50. package/dist/esm/nativeSheet.native.js.map +1 -1
  51. package/dist/esm/nativeSheet.native.mjs +56 -0
  52. package/dist/esm/nativeSheet.native.mjs.map +1 -0
  53. package/dist/esm/types.native.mjs +2 -0
  54. package/dist/esm/types.native.mjs.map +1 -0
  55. package/dist/esm/useSheet.native.mjs +6 -0
  56. package/dist/esm/useSheet.native.mjs.map +1 -0
  57. package/dist/esm/useSheetController.native.js +2 -2
  58. package/dist/esm/useSheetController.native.js.map +1 -1
  59. package/dist/esm/useSheetController.native.mjs +15 -0
  60. package/dist/esm/useSheetController.native.mjs.map +1 -0
  61. package/dist/esm/useSheetOffscreenSize.native.js +1 -1
  62. package/dist/esm/useSheetOffscreenSize.native.js.map +1 -1
  63. package/dist/esm/useSheetOffscreenSize.native.mjs +35 -0
  64. package/dist/esm/useSheetOffscreenSize.native.mjs.map +1 -0
  65. package/dist/esm/useSheetOpenState.native.js +4 -45
  66. package/dist/esm/useSheetOpenState.native.js.map +2 -2
  67. package/dist/esm/useSheetOpenState.native.mjs +29 -0
  68. package/dist/esm/useSheetOpenState.native.mjs.map +1 -0
  69. package/dist/esm/useSheetProviderProps.native.js +7 -59
  70. package/dist/esm/useSheetProviderProps.native.js.map +2 -2
  71. package/dist/esm/useSheetProviderProps.native.mjs +103 -0
  72. package/dist/esm/useSheetProviderProps.native.mjs.map +1 -0
  73. package/dist/jsx/SheetContext.native.js +1 -42
  74. package/dist/jsx/SheetContext.native.js.map +1 -1
  75. package/dist/jsx/SheetController.native.js +2 -22
  76. package/dist/jsx/SheetController.native.js.map +2 -2
  77. package/dist/jsx/SheetImplementationCustom.native.js +88 -156
  78. package/dist/jsx/SheetImplementationCustom.native.js.map +2 -2
  79. package/dist/jsx/SheetScrollView.native.js +7 -62
  80. package/dist/jsx/SheetScrollView.native.js.map +1 -1
  81. package/dist/jsx/createSheet.native.js +27 -82
  82. package/dist/jsx/createSheet.native.js.map +2 -2
  83. package/dist/jsx/nativeSheet.native.js +4 -37
  84. package/dist/jsx/nativeSheet.native.js.map +1 -1
  85. package/dist/jsx/useSheetOffscreenSize.native.js +1 -1
  86. package/dist/jsx/useSheetOffscreenSize.native.js.map +1 -1
  87. package/dist/jsx/useSheetOpenState.native.js +3 -44
  88. package/dist/jsx/useSheetOpenState.native.js.map +2 -2
  89. package/dist/jsx/useSheetProviderProps.native.js +7 -59
  90. package/dist/jsx/useSheetProviderProps.native.js.map +2 -2
  91. package/package.json +16 -16
@@ -0,0 +1,92 @@
1
+ import { styled } from "@tamagui/core";
2
+ import { ThemeableStack, XStack, YStack } from "@tamagui/stacks";
3
+ import { SHEET_HANDLE_NAME, SHEET_NAME, SHEET_OVERLAY_NAME } from "./constants.mjs";
4
+ import { createSheet } from "./createSheet.mjs";
5
+ import { createSheetScope } from "./SheetContext.mjs";
6
+ export * from "./types.mjs";
7
+ var Handle = styled(XStack, {
8
+ name: SHEET_HANDLE_NAME,
9
+ variants: {
10
+ open: {
11
+ true: {
12
+ pointerEvents: "auto"
13
+ },
14
+ false: {
15
+ opacity: 0,
16
+ pointerEvents: "none"
17
+ }
18
+ },
19
+ unstyled: {
20
+ false: {
21
+ height: 10,
22
+ borderRadius: 100,
23
+ backgroundColor: "$background",
24
+ zIndex: 10,
25
+ marginHorizontal: "35%",
26
+ marginBottom: "$2",
27
+ opacity: 0.5,
28
+ hoverStyle: {
29
+ opacity: 0.7
30
+ }
31
+ }
32
+ }
33
+ },
34
+ defaultVariants: {
35
+ unstyled: process.env.TAMAGUI_HEADLESS === "1"
36
+ }
37
+ }),
38
+ Overlay = styled(ThemeableStack, {
39
+ name: SHEET_OVERLAY_NAME,
40
+ variants: {
41
+ open: {
42
+ true: {
43
+ opacity: 1,
44
+ pointerEvents: "auto"
45
+ },
46
+ false: {
47
+ opacity: 0,
48
+ pointerEvents: "none"
49
+ }
50
+ },
51
+ unstyled: {
52
+ false: {
53
+ fullscreen: !0,
54
+ position: "absolute",
55
+ backgrounded: !0,
56
+ zIndex: 99999,
57
+ pointerEvents: "auto"
58
+ }
59
+ }
60
+ },
61
+ defaultVariants: {
62
+ unstyled: process.env.TAMAGUI_HEADLESS === "1"
63
+ }
64
+ }),
65
+ Frame = styled(YStack, {
66
+ name: SHEET_NAME,
67
+ variants: {
68
+ unstyled: {
69
+ false: {
70
+ flex: 1,
71
+ backgroundColor: "$background",
72
+ borderTopLeftRadius: "$true",
73
+ borderTopRightRadius: "$true",
74
+ width: "100%",
75
+ maxHeight: "100%",
76
+ overflow: "hidden"
77
+ }
78
+ }
79
+ },
80
+ defaultVariants: {
81
+ unstyled: process.env.TAMAGUI_HEADLESS === "1"
82
+ }
83
+ }),
84
+ Sheet = createSheet({
85
+ Frame,
86
+ Handle,
87
+ Overlay
88
+ }),
89
+ SheetOverlayFrame = Overlay,
90
+ SheetHandleFrame = Handle;
91
+ export { Frame, Handle, Overlay, Sheet, SheetHandleFrame, SheetOverlayFrame, createSheetScope };
92
+ //# sourceMappingURL=Sheet.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["styled","ThemeableStack","XStack","YStack","SHEET_HANDLE_NAME","SHEET_NAME","SHEET_OVERLAY_NAME","createSheet","createSheetScope","Handle","name","variants","open","true","pointerEvents","false","opacity","unstyled","height","borderRadius","backgroundColor","zIndex","marginHorizontal","marginBottom","hoverStyle","defaultVariants","process","env","TAMAGUI_HEADLESS","Overlay","fullscreen","position","backgrounded","Frame","flex","borderTopLeftRadius","borderTopRightRadius","width","maxHeight","overflow","Sheet","SheetOverlayFrame","SheetHandleFrame"],"sources":["../../src/Sheet.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,MAAA,QAAc;AACvB,SAASC,cAAA,EAAgBC,MAAA,EAAQC,MAAA,QAAc;AAE/C,SAASC,iBAAA,EAAmBC,UAAA,EAAYC,kBAAA,QAA0B;AAClE,SAASC,WAAA,QAAmB;AAE5B,SAASC,gBAAA,QAAwB;AACjC,cAAc;AAMP,IAAAC,MAAM,GAAAT,MAAS,CAAAE,MAAO;IAC3BQ,IAAA,EAAMN,iBAAA;IAENO,QAAA,EAAU;MACRC,IAAA,EAAM;QACJC,IAAA,EAAM;UACJC,aAAA,EAAe;QACjB;QACAC,KAAA,EAAO;UACLC,OAAA,EAAS;UACTF,aAAA,EAAe;QACjB;MACF;MAEAG,QAAA,EAAU;QACRF,KAAA,EAAO;UACLG,MAAA,EAAQ;UACRC,YAAA,EAAc;UACdC,eAAA,EAAiB;UACjBC,MAAA,EAAQ;UACRC,gBAAA,EAAkB;UAClBC,YAAA,EAAc;UACdP,OAAA,EAAS;UAETQ,UAAA,EAAY;YACVR,OAAA,EAAS;UACX;QACF;MACF;IACF;IAEAS,eAAA,EAAiB;MACfR,QAAA,EAAUS,OAAA,CAAQC,GAAA,CAAIC,gBAAA,KAAqB;IAC7C;EACF,CAAC;EAMYC,OAAA,GAAU7B,MAAA,CAAOC,cAAA,EAAgB;IAC5CS,IAAA,EAAMJ,kBAAA;IAENK,QAAA,EAAU;MACRC,IAAA,EAAM;QACJC,IAAA,EAAM;UACJG,OAAA,EAAS;UACTF,aAAA,EAAe;QACjB;QACAC,KAAA,EAAO;UACLC,OAAA,EAAS;UACTF,aAAA,EAAe;QACjB;MACF;MAEAG,QAAA,EAAU;QACRF,KAAA,EAAO;UACLe,UAAA,EAAY;UACZC,QAAA,EAAU;UACVC,YAAA,EAAc;UACdX,MAAA,EAAQ;UACRP,aAAA,EAAe;QACjB;MACF;IACF;IAEAW,eAAA,EAAiB;MACfR,QAAA,EAAUS,OAAA,CAAQC,GAAA,CAAIC,gBAAA,KAAqB;IAC7C;EACF,CAAC;EAMYK,KAAA,GAAQjC,MAAA,CAAOG,MAAA,EAAQ;IAClCO,IAAA,EAAML,UAAA;IAENM,QAAA,EAAU;MACRM,QAAA,EAAU;QACRF,KAAA,EAAO;UACLmB,IAAA,EAAM;UACNd,eAAA,EAAiB;UACjBe,mBAAA,EAAqB;UACrBC,oBAAA,EAAsB;UACtBC,KAAA,EAAO;UACPC,SAAA,EAAW;UACXC,QAAA,EAAU;QACZ;MACF;IACF;IAEAd,eAAA,EAAiB;MACfR,QAAA,EAAUS,OAAA,CAAQC,GAAA,CAAIC,gBAAA,KAAqB;IAC7C;EACF,CAAC;EAEYY,KAAA,GAAQjC,WAAA,CAAY;IAC/B0B,KAAA;IACAxB,MAAA;IACAoB;EACF,CAAC;EAGYY,iBAAA,GAAoBZ,OAAA;EAGpBa,gBAAA,GAAmBjC,MAAA","ignoreList":[]}
@@ -1,47 +1,6 @@
1
1
  import { createContextScope } from "@tamagui/create-context";
2
2
  import { SHEET_NAME } from "./constants";
3
- function _array_like_to_array(arr, len) {
4
- (len == null || len > arr.length) && (len = arr.length);
5
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
6
- return arr2;
7
- }
8
- function _array_with_holes(arr) {
9
- if (Array.isArray(arr)) return arr;
10
- }
11
- function _iterable_to_array_limit(arr, i) {
12
- var _i = arr == null ? null : typeof Symbol < "u" && arr[Symbol.iterator] || arr["@@iterator"];
13
- if (_i != null) {
14
- var _arr = [], _n = !0, _d = !1, _s, _e;
15
- try {
16
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done) && (_arr.push(_s.value), !(i && _arr.length === i)); _n = !0)
17
- ;
18
- } catch (err) {
19
- _d = !0, _e = err;
20
- } finally {
21
- try {
22
- !_n && _i.return != null && _i.return();
23
- } finally {
24
- if (_d) throw _e;
25
- }
26
- }
27
- return _arr;
28
- }
29
- }
30
- function _non_iterable_rest() {
31
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
32
- }
33
- function _sliced_to_array(arr, i) {
34
- return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
35
- }
36
- function _unsupported_iterable_to_array(o, minLen) {
37
- if (o) {
38
- if (typeof o == "string") return _array_like_to_array(o, minLen);
39
- var n = Object.prototype.toString.call(o).slice(8, -1);
40
- if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set") return Array.from(n);
41
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
42
- }
43
- }
44
- var _createContextScope = _sliced_to_array(createContextScope(SHEET_NAME), 2), createSheetContext = _createContextScope[0], createSheetScope = _createContextScope[1], _createSheetContext = _sliced_to_array(createSheetContext(SHEET_NAME, {}), 2), SheetProvider = _createSheetContext[0], useSheetContext = _createSheetContext[1];
3
+ var [createSheetContext, createSheetScope] = createContextScope(SHEET_NAME), [SheetProvider, useSheetContext] = createSheetContext(SHEET_NAME, {});
45
4
  export {
46
5
  SheetProvider,
47
6
  createSheetContext,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/ui/sheet/src/SheetContext.tsx"],
4
- "mappings": "AAAA,SAASA,0BAA0B;AAEnC,SAASC,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG2BD,sBAAAA,iBAAAA,mBAAmBC,UAAAA,GAAAA,CAAAA,GAA3DC,qBAAwCF,oBAAAA,CAAAA,GAApBG,mBAAoBH,oBAAAA,CAAAA,GAENE,sBAAAA,iBAAAA,mBAC9CD,YACA,CAAC,CAAA,GAAA,CAAA,GAFWG,gBAAkCF,oBAAAA,CAAAA,GAAnBG,kBAAmBH,oBAAAA,CAAAA;",
4
+ "mappings": "AAAA,SAASA,0BAA0B;AAEnC,SAASC,kBAAkB;AAGpB,IAAM,CAACC,oBAAoBC,gBAAAA,IAAoBH,mBAAmBC,UAAAA,GAE5D,CAACG,eAAeC,eAAAA,IAAmBH,mBAC9CD,YACA,CAAC,CAAA;",
5
5
  "names": ["createContextScope", "SHEET_NAME", "createSheetContext", "createSheetScope", "SheetProvider", "useSheetContext"]
6
6
  }
@@ -0,0 +1,6 @@
1
+ import { createContextScope } from "@tamagui/create-context";
2
+ import { SHEET_NAME } from "./constants.mjs";
3
+ var [createSheetContext, createSheetScope] = createContextScope(SHEET_NAME),
4
+ [SheetProvider, useSheetContext] = createSheetContext(SHEET_NAME, {});
5
+ export { SheetProvider, createSheetContext, createSheetScope, useSheetContext };
6
+ //# sourceMappingURL=SheetContext.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContextScope","SHEET_NAME","createSheetContext","createSheetScope","SheetProvider","useSheetContext"],"sources":["../../src/SheetContext.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,kBAAA,QAA0B;AAEnC,SAASC,UAAA,QAAkB;AAGpB,KAAAC,kBAAO,EAAAC,gBAAoB,IAAgBH,kBAAI,CAAAC,UAAmB;EAAU,CAAAG,aAErE,EAAAC,eAAe,IAAeH,kBAAI,CAAAD,UAAA;AAAA,SAE9CG,aAAC,EACHF,kBAAA,E","ignoreList":[]}
@@ -2,28 +2,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import React from "react";
3
3
  import { useEvent } from "@tamagui/core";
4
4
  import { SheetControllerContext } from "./useSheetController";
5
- function _object_without_properties(source, excluded) {
6
- if (source == null) return {};
7
- var target = _object_without_properties_loose(source, excluded), key, i;
8
- if (Object.getOwnPropertySymbols) {
9
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
10
- for (i = 0; i < sourceSymbolKeys.length; i++)
11
- key = sourceSymbolKeys[i], !(excluded.indexOf(key) >= 0) && Object.prototype.propertyIsEnumerable.call(source, key) && (target[key] = source[key]);
12
- }
13
- return target;
14
- }
15
- function _object_without_properties_loose(source, excluded) {
16
- if (source == null) return {};
17
- var target = {}, sourceKeys = Object.keys(source), key, i;
18
- for (i = 0; i < sourceKeys.length; i++)
19
- key = sourceKeys[i], !(excluded.indexOf(key) >= 0) && (target[key] = source[key]);
20
- return target;
21
- }
22
- var SheetController = function(_param) {
23
- var children = _param.children, onOpenChangeProp = _param.onOpenChange, value = _object_without_properties(_param, [
24
- "children",
25
- "onOpenChange"
26
- ]), onOpenChange = useEvent(onOpenChangeProp), memoValue = React.useMemo(function() {
5
+ var SheetController = function(param) {
6
+ var { children, onOpenChange: onOpenChangeProp, ...value } = param, onOpenChange = useEvent(onOpenChangeProp), memoValue = React.useMemo(function() {
27
7
  return {
28
8
  open: value.open,
29
9
  hidden: value.hidden,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/ui/sheet/src/SheetController.tsx"],
4
- "mappings": ";AAAA,OAAOA,WAAW;AAClB,SAASC,gBAAgB;AAIzB,SAASC,8BAA8B;;;;;;;;;;;;;;;;;;AAEhC,IAAMC,kBAAkB,SAAA,QAAA;MAC7BC,WAAAA,OAAAA,UACcC,mBAAAA,OAAdC,cACGC,QAAAA,2BAAAA,QAAAA;IAFHH;IACAE;MAGMA,eAAeL,SAASI,gBAAAA,GAExBG,YAAYR,MAAMS,QACtB,WAAA;WAAO;MACLC,MAAMH,MAAMG;MACZC,QAAQJ,MAAMI;MACdC,aAAaL,MAAMK;MACnBN;IACF;KACA;IAACA;IAAcC,MAAMG;IAAMH,MAAMI;IAAQJ,MAAMK;GAAY;AAG7D,SACE,qBAACV,uBAAuBW,UAAQ;IAACN,OAAOC;;;AAI5C;",
5
- "names": ["React", "useEvent", "SheetControllerContext", "SheetController", "children", "onOpenChangeProp", "onOpenChange", "value", "memoValue", "useMemo", "open", "hidden", "disableDrag", "Provider"]
4
+ "mappings": ";AAAA,OAAOA,WAAW;AAClB,SAASC,gBAAgB;AAIzB,SAASC,8BAA8B;AAEhC,IAAMC,kBAAkB,SAAA,OAAA;MAAC,EAC9BC,UACAC,cAAcC,kBACd,GAAGC,MAAAA,IAC6D,OAC1DF,eAAeJ,SAASK,gBAAAA,GAExBE,YAAYR,MAAMS,QACtB,WAAA;WAAO;MACLC,MAAMH,MAAMG;MACZC,QAAQJ,MAAMI;MACdC,aAAaL,MAAMK;MACnBP;IACF;KACA;IAACA;IAAcE,MAAMG;IAAMH,MAAMI;IAAQJ,MAAMK;GAAY;AAG7D,SACE,qBAACV,uBAAuBW,UAAQ;IAACN,OAAOC;;;AAI5C;",
5
+ "names": ["React", "useEvent", "SheetControllerContext", "SheetController", "children", "onOpenChange", "onOpenChangeProp", "value", "memoValue", "useMemo", "open", "hidden", "disableDrag", "Provider"]
6
6
  }
@@ -0,0 +1,26 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { useEvent } from "@tamagui/core";
4
+ import { SheetControllerContext } from "./useSheetController.mjs";
5
+ var SheetController = function (param) {
6
+ var {
7
+ children,
8
+ onOpenChange: onOpenChangeProp,
9
+ ...value
10
+ } = param,
11
+ onOpenChange = useEvent(onOpenChangeProp),
12
+ memoValue = React.useMemo(function () {
13
+ return {
14
+ open: value.open,
15
+ hidden: value.hidden,
16
+ disableDrag: value.disableDrag,
17
+ onOpenChange
18
+ };
19
+ }, [onOpenChange, value.open, value.hidden, value.disableDrag]);
20
+ return /* @__PURE__ */_jsx(SheetControllerContext.Provider, {
21
+ value: memoValue,
22
+ children
23
+ });
24
+ };
25
+ export { SheetController };
26
+ //# sourceMappingURL=SheetController.native.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["jsx","_jsx","React","useEvent","SheetControllerContext","SheetController","param","children","onOpenChange","onOpenChangeProp","value","memoValue","useMemo","open","hidden","disableDrag","Provider"],"sources":["../../src/SheetController.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAOA,GAAA,IAAAC,IAAW;AAClB,OAAAC,KAAS,aAAgB;AAIzB,SAASC,QAAA,uBAA8B;AAoBnC,SAAAC,sBAAA;AAlBG,IAAAC,eAAM,YAAAA,CAAmBC,KAAA;EAC9B;MAAAC,QAAA;MAAAC,YAAA,EAAAC,gBAAA;MAAA,GAAAC;IAAA,IAAAJ,KAAA;IAAAE,YAAA,GAAAL,QAAA,CAAAM,gBAAA;IAAAE,SAAA,GAAAT,KAAA,CAAAU,OAAA;MACA;QACGC,IAAA,EAAAH,KAAA,CAAAG,IAAA;QACkEC,MAAA,EAAAJ,KAAA,CAAAI,MAAA;QACrEC,WAAM,EAAAL,KAAe,CAAAK,WAAS;QAG5BP;MAAO;IACO,IACEA,YACd,EAAmBE,KACnB,CAAAG,IAAA,EACFH,KAAA,CAAAI,MAAA,EACAJ,KAAC,CAAAK,WAAc,CACjB;EAEA,OACE,eAAAd,IAAC,CAAAG,sBAAuB,CAAAY,QAAA,EAAvB;IAILN,KAAA,EAAAC,SAAA","ignoreList":[]}
@@ -14,90 +14,18 @@ import { resisted } from "./helpers";
14
14
  import { SheetProvider } from "./SheetContext";
15
15
  import { useSheetOpenState } from "./useSheetOpenState";
16
16
  import { useSheetProviderProps } from "./useSheetProviderProps";
17
- function _array_like_to_array(arr, len) {
18
- (len == null || len > arr.length) && (len = arr.length);
19
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
20
- return arr2;
21
- }
22
- function _array_with_holes(arr) {
23
- if (Array.isArray(arr)) return arr;
24
- }
25
- function _define_property(obj, key, value) {
26
- return key in obj ? Object.defineProperty(obj, key, {
27
- value,
28
- enumerable: !0,
29
- configurable: !0,
30
- writable: !0
31
- }) : obj[key] = value, obj;
32
- }
33
- function _iterable_to_array_limit(arr, i) {
34
- var _i = arr == null ? null : typeof Symbol < "u" && arr[Symbol.iterator] || arr["@@iterator"];
35
- if (_i != null) {
36
- var _arr = [], _n = !0, _d = !1, _s, _e;
37
- try {
38
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done) && (_arr.push(_s.value), !(i && _arr.length === i)); _n = !0)
39
- ;
40
- } catch (err) {
41
- _d = !0, _e = err;
42
- } finally {
43
- try {
44
- !_n && _i.return != null && _i.return();
45
- } finally {
46
- if (_d) throw _e;
47
- }
48
- }
49
- return _arr;
50
- }
51
- }
52
- function _non_iterable_rest() {
53
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
54
- }
55
- function _object_spread(target) {
56
- for (var i = 1; i < arguments.length; i++) {
57
- var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
58
- typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
59
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
60
- }))), ownKeys2.forEach(function(key) {
61
- _define_property(target, key, source[key]);
62
- });
63
- }
64
- return target;
65
- }
66
- function ownKeys(object, enumerableOnly) {
67
- var keys = Object.keys(object);
68
- if (Object.getOwnPropertySymbols) {
69
- var symbols = Object.getOwnPropertySymbols(object);
70
- enumerableOnly && (symbols = symbols.filter(function(sym) {
71
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
72
- })), keys.push.apply(keys, symbols);
73
- }
74
- return keys;
75
- }
76
- function _object_spread_props(target, source) {
77
- return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
78
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
79
- }), target;
80
- }
81
- function _sliced_to_array(arr, i) {
82
- return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
83
- }
84
- function _unsupported_iterable_to_array(o, minLen) {
85
- if (o) {
86
- if (typeof o == "string") return _array_like_to_array(o, minLen);
87
- var n = Object.prototype.toString.call(o).slice(8, -1);
88
- if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set") return Array.from(n);
89
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
90
- }
91
- }
92
17
  var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */ React.forwardRef(function(props, forwardedRef) {
93
- var parentSheet = React.useContext(ParentSheetContext), animation = props.animation, animationConfigProp = props.animationConfig, _props_modal = props.modal, modal = _props_modal === void 0 ? !1 : _props_modal, _props_zIndex = props.zIndex, zIndex = _props_zIndex === void 0 ? parentSheet.zIndex + 1 : _props_zIndex, _props_moveOnKeyboardChange = props.moveOnKeyboardChange, moveOnKeyboardChange = _props_moveOnKeyboardChange === void 0 ? !1 : _props_moveOnKeyboardChange, _props_unmountChildrenWhenHidden = props.unmountChildrenWhenHidden, unmountChildrenWhenHidden = _props_unmountChildrenWhenHidden === void 0 ? !1 : _props_unmountChildrenWhenHidden, portalProps = props.portalProps, tmp = props.containerComponent, ContainerComponent = tmp === void 0 ? React.Fragment : tmp, keyboardIsVisible = useKeyboardVisible(), state = useSheetOpenState(props), _React_useState = _sliced_to_array(React.useState(null), 2), overlayComponent = _React_useState[0], setOverlayComponent = _React_useState[1], providerProps = useSheetProviderProps(props, state, {
18
+ var parentSheet = React.useContext(ParentSheetContext), { animation, animationConfig: animationConfigProp, modal = !1, zIndex = parentSheet.zIndex + 1, moveOnKeyboardChange = !1, unmountChildrenWhenHidden = !1, portalProps, containerComponent: ContainerComponent = React.Fragment } = props, keyboardIsVisible = useKeyboardVisible(), state = useSheetOpenState(props), [overlayComponent, setOverlayComponent] = React.useState(null), providerProps = useSheetProviderProps(props, state, {
94
19
  onOverlayComponent: setOverlayComponent
95
- }), frameSize = providerProps.frameSize, setFrameSize = providerProps.setFrameSize, snapPoints = providerProps.snapPoints, snapPointsMode = providerProps.snapPointsMode, hasFit = providerProps.hasFit, position = providerProps.position, setPosition = providerProps.setPosition, scrollBridge = providerProps.scrollBridge, screenSize = providerProps.screenSize, setMaxContentSize = providerProps.setMaxContentSize, maxSnapPoint = providerProps.maxSnapPoint, open = state.open, controller = state.controller, isHidden = state.isHidden, sheetRef = React.useRef(null), ref = useComposedRefs(forwardedRef, sheetRef), animationConfig = function() {
96
- var _ref = _sliced_to_array(animation ? Array.isArray(animation) ? animation : [
20
+ }), { frameSize, setFrameSize, snapPoints, snapPointsMode, hasFit, position, setPosition, scrollBridge, screenSize, setMaxContentSize, maxSnapPoint } = providerProps, { open, controller, isHidden } = state, sheetRef = React.useRef(null), ref = useComposedRefs(forwardedRef, sheetRef), animationConfig = function() {
21
+ var [animationProp, animationPropConfig] = animation ? Array.isArray(animation) ? animation : [
97
22
  animation
98
- ] : [], 2), animationProp = _ref[0], animationPropConfig = _ref[1];
99
- return animationConfigProp ?? (animationProp ? _object_spread({}, getConfig().animations.animations[animationProp], animationPropConfig) : null);
100
- }(), _React_useState1 = _sliced_to_array(React.useState(!1), 2), isShowingInnerSheet = _React_useState1[0], setIsShowingInnerSheet = _React_useState1[1], shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet, parentSheetContext = React.useContext(SheetInsideSheetContext), onInnerSheet = React.useCallback(function(hasChild) {
23
+ ] : [];
24
+ return animationConfigProp ?? (animationProp ? {
25
+ ...getConfig().animations.animations[animationProp],
26
+ ...animationPropConfig
27
+ } : null);
28
+ }(), [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(!1), shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet, parentSheetContext = React.useContext(SheetInsideSheetContext), onInnerSheet = React.useCallback(function(hasChild) {
101
29
  setIsShowingInnerSheet(hasChild);
102
30
  }, []), positions = React.useMemo(function() {
103
31
  return snapPoints.map(function(point) {
@@ -108,7 +36,7 @@ var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */
108
36
  frameSize,
109
37
  snapPoints,
110
38
  snapPointsMode
111
- ]), animationDriver = useConfiguration().animationDriver, useAnimatedNumber = animationDriver.useAnimatedNumber, useAnimatedNumberStyle = animationDriver.useAnimatedNumberStyle, useAnimatedNumberReaction = animationDriver.useAnimatedNumberReaction, _animationDriver_View, AnimatedView = (_animationDriver_View = animationDriver.View) !== null && _animationDriver_View !== void 0 ? _animationDriver_View : Stack;
39
+ ]), { animationDriver } = useConfiguration(), { useAnimatedNumber, useAnimatedNumberStyle, useAnimatedNumberReaction } = animationDriver, _animationDriver_View, AnimatedView = (_animationDriver_View = animationDriver.View) !== null && _animationDriver_View !== void 0 ? _animationDriver_View : Stack;
112
40
  useIsomorphicLayoutEffect(function() {
113
41
  if (parentSheetContext && open)
114
42
  return parentSheetContext(!0), function() {
@@ -145,15 +73,17 @@ var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */
145
73
  type: "timing",
146
74
  duration: 0
147
75
  }, function() {
148
- isHidden || (toValue = positions[position2], at.current = toValue, animatedNumber.setValue(toValue, _object_spread({
149
- type: "spring"
150
- }, animationConfig)));
76
+ isHidden || (toValue = positions[position2], at.current = toValue, animatedNumber.setValue(toValue, {
77
+ type: "spring",
78
+ ...animationConfig
79
+ }));
151
80
  });
152
81
  return;
153
82
  }
154
- animatedNumber.setValue(toValue, _object_spread({
155
- type: "spring"
156
- }, animationConfig));
83
+ animatedNumber.setValue(toValue, {
84
+ type: "spring",
85
+ ...animationConfig
86
+ });
157
87
  }
158
88
  }
159
89
  });
@@ -174,55 +104,55 @@ var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */
174
104
  open,
175
105
  position
176
106
  ]);
177
- var _props_disableDrag, disableDrag = (_props_disableDrag = props.disableDrag) !== null && _props_disableDrag !== void 0 ? _props_disableDrag : controller == null ? void 0 : controller.disableDrag, themeName = useThemeName(), _React_useState2 = _sliced_to_array(React.useState(!1), 2), isDragging = _React_useState2[0], setIsDragging = _React_useState2[1], panResponder = React.useMemo(function() {
178
- var setPanning = function(val) {
107
+ var _props_disableDrag, disableDrag = (_props_disableDrag = props.disableDrag) !== null && _props_disableDrag !== void 0 ? _props_disableDrag : controller?.disableDrag, themeName = useThemeName(), [isDragging, setIsDragging] = React.useState(!1), panResponder = React.useMemo(function() {
108
+ if (disableDrag || !frameSize || isShowingInnerSheet) return;
109
+ var minY = positions[0];
110
+ scrollBridge.paneMinY = minY;
111
+ var startY = at.current;
112
+ function setPanning(val) {
179
113
  setIsDragging(val), SHEET_HIDDEN_STYLESHEET && (val ? SHEET_HIDDEN_STYLESHEET.innerText = ":root * { user-select: none !important; -webkit-user-select: none !important; }" : SHEET_HIDDEN_STYLESHEET.innerText = "");
180
- };
181
- if (!disableDrag && frameSize && !isShowingInnerSheet) {
182
- var minY = positions[0];
183
- scrollBridge.paneMinY = minY;
184
- var startY = at.current, release = function(param) {
185
- var vy = param.vy, dragAt = param.dragAt;
186
- isExternalDrag = !1, previouslyScrolling = !1, setPanning(!1);
187
- for (var at2 = dragAt + startY, end = at2 + frameSize * vy * 0.2, closestPoint = 0, dist = Number.POSITIVE_INFINITY, i = 0; i < positions.length; i++) {
188
- var position2 = positions[i], curDist = end > position2 ? end - position2 : position2 - end;
189
- curDist < dist && (dist = curDist, closestPoint = i);
190
- }
191
- setPosition(closestPoint), animateTo(closestPoint);
192
- }, finish = function(_e, state2) {
193
- release({
194
- vy: state2.vy,
195
- dragAt: state2.dy
196
- });
197
- }, previouslyScrolling = !1, onMoveShouldSet = function(e, param) {
198
- var dy = param.dy;
199
- if (e.target === providerProps.handleRef.current)
200
- return !0;
201
- var isScrolled = scrollBridge.y !== 0, isDraggingUp = dy < 0, isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;
202
- return isScrolled ? (previouslyScrolling = !0, !1) : isNearTop && !isScrolled && isDraggingUp && !isWeb ? !1 : Math.abs(dy) > 5;
203
- }, grant = function() {
204
- setPanning(!0), stopSpring(), startY = at.current;
205
- }, isExternalDrag = !1;
206
- return scrollBridge.drag = function(dy) {
207
- isExternalDrag || (isExternalDrag = !0, grant());
208
- var to = dy + startY;
209
- animatedNumber.setValue(resisted(to, minY), {
114
+ }
115
+ var release = function(param) {
116
+ var { vy, dragAt } = param;
117
+ isExternalDrag = !1, previouslyScrolling = !1, setPanning(!1);
118
+ for (var at2 = dragAt + startY, end = at2 + frameSize * vy * 0.2, closestPoint = 0, dist = Number.POSITIVE_INFINITY, i = 0; i < positions.length; i++) {
119
+ var position2 = positions[i], curDist = end > position2 ? end - position2 : position2 - end;
120
+ curDist < dist && (dist = curDist, closestPoint = i);
121
+ }
122
+ setPosition(closestPoint), animateTo(closestPoint);
123
+ }, finish = function(_e, state2) {
124
+ release({
125
+ vy: state2.vy,
126
+ dragAt: state2.dy
127
+ });
128
+ }, previouslyScrolling = !1, onMoveShouldSet = function(e, param) {
129
+ var { dy } = param;
130
+ if (e.target === providerProps.handleRef.current)
131
+ return !0;
132
+ var isScrolled = scrollBridge.y !== 0, isDraggingUp = dy < 0, isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;
133
+ return isScrolled ? (previouslyScrolling = !0, !1) : isNearTop && !isScrolled && isDraggingUp && !isWeb ? !1 : Math.abs(dy) > 5;
134
+ }, grant = function() {
135
+ setPanning(!0), stopSpring(), startY = at.current;
136
+ }, isExternalDrag = !1;
137
+ return scrollBridge.drag = function(dy) {
138
+ isExternalDrag || (isExternalDrag = !0, grant());
139
+ var to = dy + startY;
140
+ animatedNumber.setValue(resisted(to, minY), {
141
+ type: "direct"
142
+ });
143
+ }, scrollBridge.release = release, PanResponder.create({
144
+ onMoveShouldSetPanResponder: onMoveShouldSet,
145
+ onPanResponderGrant: grant,
146
+ onPanResponderMove: function(_e, param) {
147
+ var { dy } = param, toFull = dy + startY, to = resisted(toFull, minY);
148
+ animatedNumber.setValue(to, {
210
149
  type: "direct"
211
150
  });
212
- }, scrollBridge.release = release, PanResponder.create({
213
- onMoveShouldSetPanResponder: onMoveShouldSet,
214
- onPanResponderGrant: grant,
215
- onPanResponderMove: function(_e, param) {
216
- var dy = param.dy, toFull = dy + startY, to = resisted(toFull, minY);
217
- animatedNumber.setValue(to, {
218
- type: "direct"
219
- });
220
- },
221
- onPanResponderEnd: finish,
222
- onPanResponderTerminate: finish,
223
- onPanResponderRelease: finish
224
- });
225
- }
151
+ },
152
+ onPanResponderEnd: finish,
153
+ onPanResponderTerminate: finish,
154
+ onPanResponderRelease: finish
155
+ });
226
156
  }, [
227
157
  disableDrag,
228
158
  isShowingInnerSheet,
@@ -274,7 +204,7 @@ var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */
274
204
  position,
275
205
  isHidden
276
206
  ]);
277
- var _React_useState3 = _sliced_to_array(React.useState(open ? 1 : 0), 2), opacity = _React_useState3[0], setOpacity = _React_useState3[1];
207
+ var [opacity, setOpacity] = React.useState(open ? 1 : 0);
278
208
  open && opacity === 0 && setOpacity(1), React.useEffect(function() {
279
209
  if (!open) {
280
210
  var tm = setTimeout(function() {
@@ -287,9 +217,10 @@ var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */
287
217
  }, [
288
218
  open
289
219
  ]);
290
- var forcedContentHeight = hasFit ? void 0 : snapPointsMode === "percent" ? "".concat(maxSnapPoint).concat(isWeb ? "dvh" : "%") : maxSnapPoint, contents = /* @__PURE__ */ _jsx(ParentSheetContext.Provider, {
220
+ var forcedContentHeight = hasFit ? void 0 : snapPointsMode === "percent" ? `${maxSnapPoint}${isWeb ? "dvh" : "%"}` : maxSnapPoint, contents = /* @__PURE__ */ _jsx(ParentSheetContext.Provider, {
291
221
  value: nextParentContext,
292
- children: /* @__PURE__ */ _jsxs(SheetProvider, _object_spread_props(_object_spread({}, providerProps), {
222
+ children: /* @__PURE__ */ _jsxs(SheetProvider, {
223
+ ...providerProps,
293
224
  children: [
294
225
  /* @__PURE__ */ _jsx(AnimatePresence, {
295
226
  custom: {
@@ -309,38 +240,39 @@ var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */
309
240
  },
310
241
  onLayout: handleMaxContentViewLayout
311
242
  }),
312
- /* @__PURE__ */ _jsx(AnimatedView, _object_spread_props(_object_spread(_object_spread_props(_object_spread({
313
- ref
314
- }, panResponder == null ? void 0 : panResponder.panHandlers), {
315
- onLayout: handleAnimationViewLayout
316
- }), !isDragging && {
317
- // @ts-ignore for CSS driver this is necessary to attach the transition
318
- animation
319
- }), {
243
+ /* @__PURE__ */ _jsx(AnimatedView, {
244
+ ref,
245
+ ...panResponder?.panHandlers,
246
+ onLayout: handleAnimationViewLayout,
247
+ ...!isDragging && {
248
+ // @ts-ignore for CSS driver this is necessary to attach the transition
249
+ animation
250
+ },
320
251
  // @ts-ignore
321
252
  disableClassName: !0,
322
253
  style: [
323
- _object_spread({
254
+ {
324
255
  position: "absolute",
325
256
  zIndex,
326
257
  width: "100%",
327
258
  height: forcedContentHeight,
328
259
  minHeight: forcedContentHeight,
329
- opacity
330
- }, (shouldHideParentSheet || !open) && {
331
- pointerEvents: "none"
332
- }),
260
+ opacity,
261
+ ...(shouldHideParentSheet || !open) && {
262
+ pointerEvents: "none"
263
+ }
264
+ },
333
265
  animatedStyle
334
266
  ],
335
267
  children: props.children
336
- }))
268
+ })
337
269
  ]
338
- }))
270
+ })
339
271
  }), adaptContext = React.useContext(AdaptParentContext), shouldMountChildren = !!(opacity || !unmountChildrenWhenHidden);
340
272
  if (modal) {
341
- var modalContents = /* @__PURE__ */ _jsx(Portal, _object_spread_props(_object_spread({
342
- zIndex
343
- }, portalProps), {
273
+ var modalContents = /* @__PURE__ */ _jsx(Portal, {
274
+ zIndex,
275
+ ...portalProps,
344
276
  children: shouldMountChildren && /* @__PURE__ */ _jsx(ContainerComponent, {
345
277
  children: /* @__PURE__ */ _jsx(Theme, {
346
278
  forceClassName: !0,
@@ -351,7 +283,7 @@ var hiddenSize = 10000.1, SheetImplementationCustom = themeable(/* @__PURE__ */
351
283
  })
352
284
  })
353
285
  })
354
- }));
286
+ });
355
287
  return isWeb ? modalContents : /* @__PURE__ */ _jsx(SheetInsideSheetContext.Provider, {
356
288
  value: onInnerSheet,
357
289
  children: modalContents