@tamagui/portal 1.111.8 → 1.111.10

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.
@@ -4,172 +4,204 @@ import { useEvent } from "@tamagui/core";
4
4
  import React, { createContext, memo, useCallback, useContext, useEffect, useId, useMemo, useReducer } from "react";
5
5
  import { startTransition } from "@tamagui/start-transition";
6
6
  var ACTIONS;
7
- (function(ACTIONS2) {
7
+ (function (ACTIONS2) {
8
8
  ACTIONS2[ACTIONS2.REGISTER_HOST = 0] = "REGISTER_HOST", ACTIONS2[ACTIONS2.DEREGISTER_HOST = 1] = "DEREGISTER_HOST", ACTIONS2[ACTIONS2.ADD_UPDATE_PORTAL = 2] = "ADD_UPDATE_PORTAL", ACTIONS2[ACTIONS2.REMOVE_PORTAL = 3] = "REMOVE_PORTAL";
9
9
  })(ACTIONS || (ACTIONS = {}));
10
10
  var INITIAL_STATE = {};
11
- var registerHost = function(state, hostName) {
12
- return hostName in state || (state[hostName] = []), state;
13
- }, deregisterHost = function(state, hostName) {
14
- return delete state[hostName], state;
15
- }, addUpdatePortal = function(state, hostName, portalName, node) {
16
- hostName in state || (state = registerHost(state, hostName));
17
- var index = state[hostName].findIndex(function(item) {
18
- return item.name === portalName;
19
- });
20
- return index !== -1 ? state[hostName][index].node = node : state[hostName].push({
21
- name: portalName,
22
- node
23
- }), state;
24
- }, removePortal = function(state, hostName, portalName) {
25
- if (!(hostName in state))
26
- return console.info(`Failed to remove portal '${portalName}', '${hostName}' was not registered!`), state;
27
- var index = state[hostName].findIndex(function(item) {
28
- return item.name === portalName;
29
- });
30
- return index !== -1 && state[hostName].splice(index, 1), state;
31
- }, reducer = function(state, action) {
32
- var { type } = action;
33
- switch (type) {
34
- case 0:
35
- return registerHost({
36
- ...state
37
- }, action.hostName);
38
- case 1:
39
- return deregisterHost({
40
- ...state
41
- }, action.hostName);
42
- case 2:
43
- return addUpdatePortal({
44
- ...state
45
- }, action.hostName, action.portalName, action.node);
46
- case 3:
47
- return removePortal({
48
- ...state
49
- }, action.hostName, action.portalName);
50
- default:
51
- return state;
52
- }
53
- }, PortalStateContext = /* @__PURE__ */ createContext(null), PortalDispatchContext = /* @__PURE__ */ createContext(null), usePortalState = function(hostName) {
54
- var state = useContext(PortalStateContext);
55
- if (state === null)
56
- throw new Error("'PortalStateContext' cannot be null, please add 'PortalProvider' to the root component.");
57
- return state[hostName] || [];
58
- }, usePortal = function() {
59
- var hostName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "root", dispatch = useContext(PortalDispatchContext);
60
- if (dispatch === null)
61
- throw new Error("'PortalDispatchContext' cannot be null, please add 'PortalProvider' to the root component.");
62
- var registerHost2 = useCallback(function() {
63
- dispatch({
64
- type: 0,
65
- hostName
11
+ var registerHost = function (state, hostName) {
12
+ return hostName in state || (state[hostName] = []), state;
13
+ },
14
+ deregisterHost = function (state, hostName) {
15
+ return delete state[hostName], state;
16
+ },
17
+ addUpdatePortal = function (state, hostName, portalName, node) {
18
+ hostName in state || (state = registerHost(state, hostName));
19
+ var index = state[hostName].findIndex(function (item) {
20
+ return item.name === portalName;
66
21
  });
67
- }, []), deregisterHost2 = useCallback(function() {
68
- dispatch({
69
- type: 1,
70
- hostName
71
- });
72
- }, []), addUpdatePortal2 = useCallback(function(name, node) {
73
- dispatch({
74
- type: 2,
75
- hostName,
76
- portalName: name,
22
+ return index !== -1 ? state[hostName][index].node = node : state[hostName].push({
23
+ name: portalName,
77
24
  node
25
+ }), state;
26
+ },
27
+ removePortal = function (state, hostName, portalName) {
28
+ if (!(hostName in state)) return console.info(`Failed to remove portal '${portalName}', '${hostName}' was not registered!`), state;
29
+ var index = state[hostName].findIndex(function (item) {
30
+ return item.name === portalName;
78
31
  });
79
- }, []), removePortal2 = useCallback(function(name) {
80
- dispatch({
81
- type: 3,
82
- hostName,
83
- portalName: name
84
- });
85
- }, []);
86
- return {
87
- registerHost: registerHost2,
88
- deregisterHost: deregisterHost2,
89
- addPortal: addUpdatePortal2,
90
- updatePortal: addUpdatePortal2,
91
- removePortal: removePortal2
92
- };
93
- }, PortalProviderComponent = function(param) {
94
- var { rootHostName = "root", shouldAddRootHost = !0, children } = param, [state, dispatch] = useReducer(reducer, INITIAL_STATE), transitionDispatch = useMemo(function() {
95
- var next = function(value) {
96
- startTransition(function() {
97
- dispatch(value);
98
- });
32
+ return index !== -1 && state[hostName].splice(index, 1), state;
33
+ },
34
+ reducer = function (state, action) {
35
+ var {
36
+ type
37
+ } = action;
38
+ switch (type) {
39
+ case 0:
40
+ return registerHost({
41
+ ...state
42
+ }, action.hostName);
43
+ case 1:
44
+ return deregisterHost({
45
+ ...state
46
+ }, action.hostName);
47
+ case 2:
48
+ return addUpdatePortal({
49
+ ...state
50
+ }, action.hostName, action.portalName, action.node);
51
+ case 3:
52
+ return removePortal({
53
+ ...state
54
+ }, action.hostName, action.portalName);
55
+ default:
56
+ return state;
57
+ }
58
+ },
59
+ PortalStateContext = /* @__PURE__ */createContext(null),
60
+ PortalDispatchContext = /* @__PURE__ */createContext(null),
61
+ usePortalState = function (hostName) {
62
+ var state = useContext(PortalStateContext);
63
+ if (state === null) throw new Error("'PortalStateContext' cannot be null, please add 'PortalProvider' to the root component.");
64
+ return state[hostName] || [];
65
+ },
66
+ usePortal = function () {
67
+ var hostName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "root",
68
+ dispatch = useContext(PortalDispatchContext);
69
+ if (dispatch === null) throw new Error("'PortalDispatchContext' cannot be null, please add 'PortalProvider' to the root component.");
70
+ var registerHost2 = useCallback(function () {
71
+ dispatch({
72
+ type: 0,
73
+ hostName
74
+ });
75
+ }, []),
76
+ deregisterHost2 = useCallback(function () {
77
+ dispatch({
78
+ type: 1,
79
+ hostName
80
+ });
81
+ }, []),
82
+ addUpdatePortal2 = useCallback(function (name, node) {
83
+ dispatch({
84
+ type: 2,
85
+ hostName,
86
+ portalName: name,
87
+ node
88
+ });
89
+ }, []),
90
+ removePortal2 = useCallback(function (name) {
91
+ dispatch({
92
+ type: 3,
93
+ hostName,
94
+ portalName: name
95
+ });
96
+ }, []);
97
+ return {
98
+ registerHost: registerHost2,
99
+ deregisterHost: deregisterHost2,
100
+ addPortal: addUpdatePortal2,
101
+ updatePortal: addUpdatePortal2,
102
+ removePortal: removePortal2
99
103
  };
100
- return next;
101
- }, [
102
- dispatch
103
- ]);
104
- return /* @__PURE__ */ _jsx(PortalDispatchContext.Provider, {
105
- value: transitionDispatch,
106
- children: /* @__PURE__ */ _jsxs(PortalStateContext.Provider, {
107
- value: state,
108
- children: [
109
- children,
110
- shouldAddRootHost && /* @__PURE__ */ _jsx(PortalHost, {
104
+ },
105
+ PortalProviderComponent = function (param) {
106
+ var {
107
+ rootHostName = "root",
108
+ shouldAddRootHost = !0,
109
+ children
110
+ } = param,
111
+ [state, dispatch] = useReducer(reducer, INITIAL_STATE),
112
+ transitionDispatch = useMemo(function () {
113
+ var next = function (value) {
114
+ startTransition(function () {
115
+ dispatch(value);
116
+ });
117
+ };
118
+ return next;
119
+ }, [dispatch]);
120
+ return /* @__PURE__ */_jsx(PortalDispatchContext.Provider, {
121
+ value: transitionDispatch,
122
+ children: /* @__PURE__ */_jsxs(PortalStateContext.Provider, {
123
+ value: state,
124
+ children: [children, shouldAddRootHost && /* @__PURE__ */_jsx(PortalHost, {
111
125
  name: rootHostName
112
- })
113
- ]
114
- })
115
- });
116
- }, PortalProvider = /* @__PURE__ */ memo(PortalProviderComponent);
126
+ })]
127
+ })
128
+ });
129
+ },
130
+ PortalProvider = /* @__PURE__ */memo(PortalProviderComponent);
117
131
  PortalProvider.displayName = "PortalProvider";
118
- var defaultRenderer = function(children) {
119
- return /* @__PURE__ */ _jsx(_Fragment, {
120
- children
121
- });
122
- }, PortalHostComponent = function(props) {
123
- var { name, forwardProps, render = defaultRenderer } = props, state = usePortalState(name), { registerHost: registerHost2, deregisterHost: deregisterHost2 } = usePortal(props.name);
124
- return useEffect(function() {
125
- if (!(typeof window > "u"))
126
- return registerHost2(), function() {
132
+ var defaultRenderer = function (children) {
133
+ return /* @__PURE__ */_jsx(_Fragment, {
134
+ children
135
+ });
136
+ },
137
+ PortalHostComponent = function (props) {
138
+ var {
139
+ name,
140
+ forwardProps,
141
+ render = defaultRenderer
142
+ } = props,
143
+ state = usePortalState(name),
144
+ {
145
+ registerHost: registerHost2,
146
+ deregisterHost: deregisterHost2
147
+ } = usePortal(props.name);
148
+ return useEffect(function () {
149
+ if (!(typeof window > "u")) return registerHost2(), function () {
127
150
  deregisterHost2();
128
151
  };
129
- }, []), render(forwardProps ? state.map(function(item) {
130
- var next = item.node;
131
- return forwardProps ? React.Children.map(next, function(child) {
132
- return /* @__PURE__ */ React.isValidElement(child) ? /* @__PURE__ */ React.cloneElement(child, {
133
- key: child.key,
134
- ...forwardProps
135
- }) : child;
136
- }) : next;
137
- }) : state.map(function(item) {
138
- return item.node;
139
- }));
140
- }, PortalHost = /* @__PURE__ */ memo(PortalHostComponent);
152
+ }, []), render(forwardProps ? state.map(function (item) {
153
+ var next = item.node;
154
+ return forwardProps ? React.Children.map(next, function (child) {
155
+ return /* @__PURE__ */React.isValidElement(child) ? /* @__PURE__ */React.cloneElement(child, {
156
+ key: child.key,
157
+ ...forwardProps
158
+ }) : child;
159
+ }) : next;
160
+ }) : state.map(function (item) {
161
+ return item.node;
162
+ }));
163
+ },
164
+ PortalHost = /* @__PURE__ */memo(PortalHostComponent);
141
165
  PortalHost.displayName = "PortalHost";
142
- var PortalComponent = function(props) {
143
- var { name: _providedName, hostName, handleOnMount: _providedHandleOnMount, handleOnUnmount: _providedHandleOnUnmount, handleOnUpdate: _providedHandleOnUpdate, children } = props, { addPortal: addUpdatePortal2, removePortal: removePortal2 } = usePortal(hostName), id = useId(), name = _providedName || id, handleOnMount = useEvent(function() {
144
- _providedHandleOnMount ? _providedHandleOnMount(function() {
145
- return addUpdatePortal2(name, children);
146
- }) : addUpdatePortal2(name, children);
147
- }), handleOnUnmount = useEvent(function() {
148
- _providedHandleOnUnmount ? _providedHandleOnUnmount(function() {
149
- return removePortal2(name);
150
- }) : removePortal2(name);
151
- }), handleOnUpdate = useEvent(function() {
152
- _providedHandleOnUpdate ? _providedHandleOnUpdate(function() {
153
- return addUpdatePortal2(name, children);
154
- }) : addUpdatePortal2(name, children);
155
- });
156
- return useIsomorphicLayoutEffect(function() {
157
- return handleOnMount(), function() {
158
- handleOnUnmount();
159
- };
160
- }, []), useEffect(function() {
161
- handleOnUpdate();
162
- }, [
163
- children
164
- ]), null;
165
- }, PortalItem = /* @__PURE__ */ memo(PortalComponent);
166
+ var PortalComponent = function (props) {
167
+ var {
168
+ name: _providedName,
169
+ hostName,
170
+ handleOnMount: _providedHandleOnMount,
171
+ handleOnUnmount: _providedHandleOnUnmount,
172
+ handleOnUpdate: _providedHandleOnUpdate,
173
+ children
174
+ } = props,
175
+ {
176
+ addPortal: addUpdatePortal2,
177
+ removePortal: removePortal2
178
+ } = usePortal(hostName),
179
+ id = useId(),
180
+ name = _providedName || id,
181
+ handleOnMount = useEvent(function () {
182
+ _providedHandleOnMount ? _providedHandleOnMount(function () {
183
+ return addUpdatePortal2(name, children);
184
+ }) : addUpdatePortal2(name, children);
185
+ }),
186
+ handleOnUnmount = useEvent(function () {
187
+ _providedHandleOnUnmount ? _providedHandleOnUnmount(function () {
188
+ return removePortal2(name);
189
+ }) : removePortal2(name);
190
+ }),
191
+ handleOnUpdate = useEvent(function () {
192
+ _providedHandleOnUpdate ? _providedHandleOnUpdate(function () {
193
+ return addUpdatePortal2(name, children);
194
+ }) : addUpdatePortal2(name, children);
195
+ });
196
+ return useIsomorphicLayoutEffect(function () {
197
+ return handleOnMount(), function () {
198
+ handleOnUnmount();
199
+ };
200
+ }, []), useEffect(function () {
201
+ handleOnUpdate();
202
+ }, [children]), null;
203
+ },
204
+ PortalItem = /* @__PURE__ */memo(PortalComponent);
166
205
  PortalItem.displayName = "Portal";
167
- export {
168
- ACTIONS,
169
- INITIAL_STATE,
170
- PortalHost,
171
- PortalItem,
172
- PortalProvider,
173
- usePortal
174
- };
175
- //# sourceMappingURL=GorhomPortal.js.map
206
+ export { ACTIONS, INITIAL_STATE, PortalHost, PortalItem, PortalProvider, usePortal };
207
+ //# sourceMappingURL=GorhomPortal.native.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/Users/n8/tamagui/code/ui/portal/src/GorhomPortal.tsx"],
4
- "mappings": "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",
5
- "names": ["useIsomorphicLayoutEffect", "useEvent", "React", "createContext", "memo", "useCallback", "useContext", "useEffect", "useId", "useMemo", "useReducer", "startTransition", "ACTIONS", "INITIAL_STATE", "registerHost", "state", "hostName", "deregisterHost", "addUpdatePortal", "portalName", "node", "index", "findIndex", "item", "name", "push", "removePortal", "console", "info", "splice", "reducer", "action", "type", "PortalStateContext", "createContext", "PortalDispatchContext", "usePortalState", "useContext", "Error", "usePortal", "dispatch", "useCallback", "addPortal", "updatePortal", "PortalProviderComponent", "rootHostName", "shouldAddRootHost", "children", "useReducer", "INITIAL_STATE", "transitionDispatch", "useMemo", "next", "value", "startTransition", "Provider", "PortalHost", "PortalProvider", "memo", "displayName", "defaultRenderer", "PortalHostComponent", "props", "forwardProps", "render", "useEffect", "window", "map", "React", "Children", "child", "isValidElement", "cloneElement", "key", "PortalComponent", "_providedName", "handleOnMount", "_providedHandleOnMount", "handleOnUnmount", "_providedHandleOnUnmount", "handleOnUpdate", "_providedHandleOnUpdate", "id", "useId", "useEvent", "useIsomorphicLayoutEffect", "PortalItem"]
6
- }
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useIsomorphicLayoutEffect","useEvent","React","createContext","memo","useCallback","useContext","useEffect","useId","useMemo","useReducer","startTransition","ACTIONS","ACTIONS2","REGISTER_HOST","DEREGISTER_HOST","ADD_UPDATE_PORTAL","REMOVE_PORTAL","INITIAL_STATE","registerHost","state","hostName","deregisterHost","addUpdatePortal","portalName","node","index","findIndex","item","name","push","removePortal","console","info","splice","reducer","action","type","PortalStateContext","PortalDispatchContext","usePortalState","Error","usePortal","arguments","length","dispatch","registerHost2","deregisterHost2","addUpdatePortal2","removePortal2","addPortal","updatePortal","PortalProviderComponent","param","rootHostName","shouldAddRootHost","children","transitionDispatch","next","value","Provider","PortalHost","PortalProvider","displayName","defaultRenderer","PortalHostComponent","props","forwardProps","render","window","map","Children","child","isValidElement","cloneElement","key","PortalComponent","_providedName","handleOnMount","_providedHandleOnMount","handleOnUnmount","_providedHandleOnUnmount","handleOnUpdate","_providedHandleOnUpdate","id"],"sources":["../../src/GorhomPortal.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2,24 +2,25 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { YStack } from "@tamagui/stacks";
3
3
  import * as React from "react";
4
4
  import { Platform, RootTagContext } from "react-native";
5
- import { PortalItem } from "./GorhomPortal";
6
- var _global, isFabric = (_global = global) === null || _global === void 0 ? void 0 : _global.nativeFabricUIManager, createPortal;
5
+ import { PortalItem } from "./GorhomPortal.native.js";
6
+ var _global,
7
+ isFabric = (_global = global) === null || _global === void 0 ? void 0 : _global.nativeFabricUIManager,
8
+ createPortal;
7
9
  isFabric ? createPortal = require("react-native/Libraries/Renderer/shims/ReactFabric").createPortal : createPortal = require("react-native/Libraries/Renderer/shims/ReactNative").createPortal;
8
- var Portal = function(props) {
9
- var rootTag = React.useContext(RootTagContext), contents = /* @__PURE__ */ _jsx(YStack, {
10
- pointerEvents: "box-none",
11
- fullscreen: !0,
12
- position: "absolute",
13
- maxWidth: "100%",
14
- zIndex: 1e5,
15
- ...props
16
- });
17
- return Platform.OS === "android" || !rootTag ? /* @__PURE__ */ _jsx(PortalItem, {
10
+ var Portal = function (props) {
11
+ var rootTag = React.useContext(RootTagContext),
12
+ contents = /* @__PURE__ */_jsx(YStack, {
13
+ pointerEvents: "box-none",
14
+ fullscreen: !0,
15
+ position: "absolute",
16
+ maxWidth: "100%",
17
+ zIndex: 1e5,
18
+ ...props
19
+ });
20
+ return Platform.OS === "android" || !rootTag ? /* @__PURE__ */_jsx(PortalItem, {
18
21
  hostName: "root",
19
22
  children: contents
20
23
  }) : createPortal(contents, rootTag);
21
24
  };
22
- export {
23
- Portal
24
- };
25
+ export { Portal };
25
26
  //# sourceMappingURL=Portal.native.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/Users/n8/tamagui/code/ui/portal/src/Portal.native.tsx"],
4
- "mappings": ";AAAA,SAASA,cAAc;AACvB,YAAYC,WAAW;AAEvB,SAASC,UAAUC,sBAAsB;AAEzC,SAASC,kBAAkB;IAGVC,SAAXC,YAAWD,UAAAA,YAAAA,QAAAA,YAAAA,SAAAA,SAAAA,QAAQE,uBACrBC;AACAF,WACFE,eAAeC,QAAQ,mDAAA,EAAqDD,eAE5EA,eAAeC,QAAQ,mDAAA,EAAqDD;AAGvE,IAAME,SAAS,SAACC,OAAAA;AACrB,MAAMC,UAAUX,MAAMY,WAAWV,cAAAA,GAE3BW,WACJ,qBAACd,QAAAA;IACCe,eAAc;IACdC,YAAU;IACVC,UAAS;IACTC,UAAS;IACTC,QAAQ;IACP,GAAGR;;AAIR,SAAIT,SAASkB,OAAO,aAAa,CAACR,UACzB,qBAACR,YAAAA;IAAWiB,UAAS;cAAQP;OAG/BN,aAAaM,UAAUF,OAAAA;AAChC;",
5
- "names": ["YStack", "React", "Platform", "RootTagContext", "PortalItem", "global", "isFabric", "nativeFabricUIManager", "createPortal", "require", "Portal", "props", "rootTag", "useContext", "contents", "pointerEvents", "fullscreen", "position", "maxWidth", "zIndex", "OS", "hostName"]
6
- }
1
+ {"version":3,"names":["YStack","React","Platform","RootTagContext","PortalItem","_global","isFabric","global","nativeFabricUIManager","createPortal","require","Portal","props","rootTag","useContext","contents","_jsx","pointerEvents","fullscreen","position","maxWidth","zIndex","OS","hostName"],"sources":["../../src/Users/n8/tamagui/code/ui/portal/src/Portal.native.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,MAAA,QAAc;AACvB,YAAYC,KAAA,MAAW;AAEvB,SAASC,QAAA,EAAUC,cAAA,QAAsB;AAEzC,SAASC,UAAA,QAAkB;IAGVC,OAAA;EAAXC,QAAA,IAAWD,OAAA,GAAAE,MAAA,cAAAF,OAAA,uBAAAA,OAAA,CAAQG,qBAAA;EACrBC,YAAA;AACAH,QAAA,GACFG,YAAA,GAAeC,OAAA,CAAQ,qDAAqDD,YAAA,GAE5EA,YAAA,GAAeC,OAAA,CAAQ,qDAAqDD,YAAA;AAGvE,IAAME,MAAA,GAAS,SAAAA,CAACC,KAAA;EACrB,IAAMC,OAAA,GAAUZ,KAAA,CAAMa,UAAA,CAAWX,cAAA;IAE3BY,QAAA,GACJ,eAAAC,IAAA,CAAChB,MAAA;MACCiB,aAAA,EAAc;MACdC,UAAA,EAAU;MACVC,QAAA,EAAS;MACTC,QAAA,EAAS;MACTC,MAAA,EAAQ;MACP,GAAGT;;EAIR,OAAIV,QAAA,CAASoB,EAAA,KAAO,aAAa,CAACT,OAAA,GACzB,eAAAG,IAAA,CAACZ,UAAA;IAAWmB,QAAA,EAAS;cAAQR;OAG/BN,YAAA,CAAaM,QAAA,EAAUF,OAAA;AAChC","ignoreList":[]}
@@ -1 +1,2 @@
1
- //# sourceMappingURL=PortalProps.js.map
1
+
2
+ //# sourceMappingURL=PortalProps.native.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "mappings": "",
5
- "names": []
6
- }
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- export * from "./Portal";
2
- export * from "./PortalProps";
3
- export * from "./GorhomPortal";
4
- //# sourceMappingURL=index.js.map
1
+ export * from "./Portal.native.js";
2
+ export * from "./PortalProps.native.js";
3
+ export * from "./GorhomPortal.native.js";
4
+ //# sourceMappingURL=index.native.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/Users/n8/tamagui/code/ui/portal/src/index.ts"],
4
- "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;",
5
- "names": []
6
- }
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/portal",
3
- "version": "1.111.8",
3
+ "version": "1.111.10",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "main": "dist/cjs",
@@ -21,7 +21,7 @@
21
21
  "exports": {
22
22
  "./package.json": "./package.json",
23
23
  ".": {
24
- "react-native-import": "./dist/esm/index.native.mjs",
24
+ "react-native-import": "./dist/esm/index.native.js",
25
25
  "react-native": "./dist/cjs/index.native.js",
26
26
  "types": "./types/index.d.ts",
27
27
  "import": "./dist/esm/index.mjs",
@@ -29,18 +29,18 @@
29
29
  }
30
30
  },
31
31
  "dependencies": {
32
- "@tamagui/constants": "1.111.8",
33
- "@tamagui/core": "1.111.8",
34
- "@tamagui/stacks": "1.111.8",
35
- "@tamagui/start-transition": "1.111.8",
36
- "@tamagui/use-did-finish-ssr": "1.111.8",
37
- "@tamagui/use-event": "1.111.8"
32
+ "@tamagui/constants": "1.111.10",
33
+ "@tamagui/core": "1.111.10",
34
+ "@tamagui/stacks": "1.111.10",
35
+ "@tamagui/start-transition": "1.111.10",
36
+ "@tamagui/use-did-finish-ssr": "1.111.10",
37
+ "@tamagui/use-event": "1.111.10"
38
38
  },
39
39
  "peerDependencies": {
40
40
  "react": "*"
41
41
  },
42
42
  "devDependencies": {
43
- "@tamagui/build": "1.111.8",
43
+ "@tamagui/build": "1.111.10",
44
44
  "react": "^18.2.0 || ^19.0.0",
45
45
  "react-native": "0.74.1"
46
46
  },
@@ -1,207 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useIsomorphicLayoutEffect } from "@tamagui/constants";
3
- import { useEvent } from "@tamagui/core";
4
- import React, { createContext, memo, useCallback, useContext, useEffect, useId, useMemo, useReducer } from "react";
5
- import { startTransition } from "@tamagui/start-transition";
6
- var ACTIONS;
7
- (function (ACTIONS2) {
8
- ACTIONS2[ACTIONS2.REGISTER_HOST = 0] = "REGISTER_HOST", ACTIONS2[ACTIONS2.DEREGISTER_HOST = 1] = "DEREGISTER_HOST", ACTIONS2[ACTIONS2.ADD_UPDATE_PORTAL = 2] = "ADD_UPDATE_PORTAL", ACTIONS2[ACTIONS2.REMOVE_PORTAL = 3] = "REMOVE_PORTAL";
9
- })(ACTIONS || (ACTIONS = {}));
10
- var INITIAL_STATE = {};
11
- var registerHost = function (state, hostName) {
12
- return hostName in state || (state[hostName] = []), state;
13
- },
14
- deregisterHost = function (state, hostName) {
15
- return delete state[hostName], state;
16
- },
17
- addUpdatePortal = function (state, hostName, portalName, node) {
18
- hostName in state || (state = registerHost(state, hostName));
19
- var index = state[hostName].findIndex(function (item) {
20
- return item.name === portalName;
21
- });
22
- return index !== -1 ? state[hostName][index].node = node : state[hostName].push({
23
- name: portalName,
24
- node
25
- }), state;
26
- },
27
- removePortal = function (state, hostName, portalName) {
28
- if (!(hostName in state)) return console.info(`Failed to remove portal '${portalName}', '${hostName}' was not registered!`), state;
29
- var index = state[hostName].findIndex(function (item) {
30
- return item.name === portalName;
31
- });
32
- return index !== -1 && state[hostName].splice(index, 1), state;
33
- },
34
- reducer = function (state, action) {
35
- var {
36
- type
37
- } = action;
38
- switch (type) {
39
- case 0:
40
- return registerHost({
41
- ...state
42
- }, action.hostName);
43
- case 1:
44
- return deregisterHost({
45
- ...state
46
- }, action.hostName);
47
- case 2:
48
- return addUpdatePortal({
49
- ...state
50
- }, action.hostName, action.portalName, action.node);
51
- case 3:
52
- return removePortal({
53
- ...state
54
- }, action.hostName, action.portalName);
55
- default:
56
- return state;
57
- }
58
- },
59
- PortalStateContext = /* @__PURE__ */createContext(null),
60
- PortalDispatchContext = /* @__PURE__ */createContext(null),
61
- usePortalState = function (hostName) {
62
- var state = useContext(PortalStateContext);
63
- if (state === null) throw new Error("'PortalStateContext' cannot be null, please add 'PortalProvider' to the root component.");
64
- return state[hostName] || [];
65
- },
66
- usePortal = function () {
67
- var hostName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "root",
68
- dispatch = useContext(PortalDispatchContext);
69
- if (dispatch === null) throw new Error("'PortalDispatchContext' cannot be null, please add 'PortalProvider' to the root component.");
70
- var registerHost2 = useCallback(function () {
71
- dispatch({
72
- type: 0,
73
- hostName
74
- });
75
- }, []),
76
- deregisterHost2 = useCallback(function () {
77
- dispatch({
78
- type: 1,
79
- hostName
80
- });
81
- }, []),
82
- addUpdatePortal2 = useCallback(function (name, node) {
83
- dispatch({
84
- type: 2,
85
- hostName,
86
- portalName: name,
87
- node
88
- });
89
- }, []),
90
- removePortal2 = useCallback(function (name) {
91
- dispatch({
92
- type: 3,
93
- hostName,
94
- portalName: name
95
- });
96
- }, []);
97
- return {
98
- registerHost: registerHost2,
99
- deregisterHost: deregisterHost2,
100
- addPortal: addUpdatePortal2,
101
- updatePortal: addUpdatePortal2,
102
- removePortal: removePortal2
103
- };
104
- },
105
- PortalProviderComponent = function (param) {
106
- var {
107
- rootHostName = "root",
108
- shouldAddRootHost = !0,
109
- children
110
- } = param,
111
- [state, dispatch] = useReducer(reducer, INITIAL_STATE),
112
- transitionDispatch = useMemo(function () {
113
- var next = function (value) {
114
- startTransition(function () {
115
- dispatch(value);
116
- });
117
- };
118
- return next;
119
- }, [dispatch]);
120
- return /* @__PURE__ */_jsx(PortalDispatchContext.Provider, {
121
- value: transitionDispatch,
122
- children: /* @__PURE__ */_jsxs(PortalStateContext.Provider, {
123
- value: state,
124
- children: [children, shouldAddRootHost && /* @__PURE__ */_jsx(PortalHost, {
125
- name: rootHostName
126
- })]
127
- })
128
- });
129
- },
130
- PortalProvider = /* @__PURE__ */memo(PortalProviderComponent);
131
- PortalProvider.displayName = "PortalProvider";
132
- var defaultRenderer = function (children) {
133
- return /* @__PURE__ */_jsx(_Fragment, {
134
- children
135
- });
136
- },
137
- PortalHostComponent = function (props) {
138
- var {
139
- name,
140
- forwardProps,
141
- render = defaultRenderer
142
- } = props,
143
- state = usePortalState(name),
144
- {
145
- registerHost: registerHost2,
146
- deregisterHost: deregisterHost2
147
- } = usePortal(props.name);
148
- return useEffect(function () {
149
- if (!(typeof window > "u")) return registerHost2(), function () {
150
- deregisterHost2();
151
- };
152
- }, []), render(forwardProps ? state.map(function (item) {
153
- var next = item.node;
154
- return forwardProps ? React.Children.map(next, function (child) {
155
- return /* @__PURE__ */React.isValidElement(child) ? /* @__PURE__ */React.cloneElement(child, {
156
- key: child.key,
157
- ...forwardProps
158
- }) : child;
159
- }) : next;
160
- }) : state.map(function (item) {
161
- return item.node;
162
- }));
163
- },
164
- PortalHost = /* @__PURE__ */memo(PortalHostComponent);
165
- PortalHost.displayName = "PortalHost";
166
- var PortalComponent = function (props) {
167
- var {
168
- name: _providedName,
169
- hostName,
170
- handleOnMount: _providedHandleOnMount,
171
- handleOnUnmount: _providedHandleOnUnmount,
172
- handleOnUpdate: _providedHandleOnUpdate,
173
- children
174
- } = props,
175
- {
176
- addPortal: addUpdatePortal2,
177
- removePortal: removePortal2
178
- } = usePortal(hostName),
179
- id = useId(),
180
- name = _providedName || id,
181
- handleOnMount = useEvent(function () {
182
- _providedHandleOnMount ? _providedHandleOnMount(function () {
183
- return addUpdatePortal2(name, children);
184
- }) : addUpdatePortal2(name, children);
185
- }),
186
- handleOnUnmount = useEvent(function () {
187
- _providedHandleOnUnmount ? _providedHandleOnUnmount(function () {
188
- return removePortal2(name);
189
- }) : removePortal2(name);
190
- }),
191
- handleOnUpdate = useEvent(function () {
192
- _providedHandleOnUpdate ? _providedHandleOnUpdate(function () {
193
- return addUpdatePortal2(name, children);
194
- }) : addUpdatePortal2(name, children);
195
- });
196
- return useIsomorphicLayoutEffect(function () {
197
- return handleOnMount(), function () {
198
- handleOnUnmount();
199
- };
200
- }, []), useEffect(function () {
201
- handleOnUpdate();
202
- }, [children]), null;
203
- },
204
- PortalItem = /* @__PURE__ */memo(PortalComponent);
205
- PortalItem.displayName = "Portal";
206
- export { ACTIONS, INITIAL_STATE, PortalHost, PortalItem, PortalProvider, usePortal };
207
- //# sourceMappingURL=GorhomPortal.native.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useIsomorphicLayoutEffect","useEvent","React","createContext","memo","useCallback","useContext","useEffect","useId","useMemo","useReducer","startTransition","ACTIONS","ACTIONS2","REGISTER_HOST","DEREGISTER_HOST","ADD_UPDATE_PORTAL","REMOVE_PORTAL","INITIAL_STATE","registerHost","state","hostName","deregisterHost","addUpdatePortal","portalName","node","index","findIndex","item","name","push","removePortal","console","info","splice","reducer","action","type","PortalStateContext","PortalDispatchContext","usePortalState","Error","usePortal","arguments","length","dispatch","registerHost2","deregisterHost2","addUpdatePortal2","removePortal2","addPortal","updatePortal","PortalProviderComponent","param","rootHostName","shouldAddRootHost","children","transitionDispatch","next","value","Provider","PortalHost","PortalProvider","displayName","defaultRenderer","PortalHostComponent","props","forwardProps","render","window","map","Children","child","isValidElement","cloneElement","key","PortalComponent","_providedName","handleOnMount","_providedHandleOnMount","handleOnUnmount","_providedHandleOnUnmount","handleOnUpdate","_providedHandleOnUpdate","id"],"sources":["../../src/GorhomPortal.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAiC,IAAAC,SAAA;AAG1C,SAASC,yBAAgB;AAGzB,SAAOC,QAAA;AAAA,OACLC,KAAA,IAAAC,aAAA,EAAAC,IAAA,EAAAC,WAAA,EAAAC,UAAA,EAAAC,SAAA,EAAAC,KAAA,EAAAC,OAAA,EAAAC,UAAA;AAAA,SACAC,eAAA;AAAA,IACAC,OAAA;AAAA,WACAC,QAAA;EACAA,QAAA,CAAAA,QAAA,CAAAC,aAAA,yBAAAD,QAAA,CAAAA,QAAA,CAAAE,eAAA,2BAAAF,QAAA,CAAAA,QAAA,CAAAG,iBAAA,6BAAAH,QAAA,CAAAA,QAAA,CAAAI,aAAA;AAAA,GACAL,OAAA,KAAAA,OAAA;AAAA,IACAM,aAAA;AAAA,IACAC,YAAA,YAAAA,CAAAC,KAAA,EAAAC,QAAA;IAAA,OACKA,QAAA,IAAAD,KAAA,KAAAA,KAAA,CAAAC,QAAA,SAAAD,KAAA;EACP;EAAAE,cAAS,YAAAA,CAAAF,KAAuB,EAAAC,QAAA;IAqO1B,OA2B2D,OAAAD,KAzBnC,CAAAC,QAFxB,GAAAD,KAAA;EA9NN;EAAAG,eAAA,YAAAA,CAAAH,KAAK,EAAAC,QAAA,EACHG,UAAA,EAAAC,IAAA;IAMFJ,QAAM,IAAAD,KAAA,KAAiBA,KAAA,GAAAD,YAAA,CAAAC,KAAA,EAAAC,QAAA;IAiCvB,IAAMK,KAAA,GAAAN,KAAA,CAAAC,QAAgB,CAA0C,CAAAM,SAAA,WACxDC,IAAA,EAAY;MAiBZ,OAAAA,IAAY,CAAAC,IAAA,KAChBL,UAAQ;IAMV;IACA,OAAIE,KAAA,KAAU,KACZN,KAAA,CAAMC,QAAQ,EAAEK,KAAK,EAAED,IAAA,GAAOA,IAAA,GAE9BL,KAAA,CAAMC,QAAQ,EAAES,IAAA,CAAK;MACnBD,IAAA,EAAML,UAAA;MACNC;IACF,CAAC,GAEIL,KAAA;EACT;EAEMW,YAAA,GAAe,SAAAA,CAEnBX,KAAA,EAAAC,QACA,EAAAG,UACG;IACH,IAAI,EAAEH,QAAA,IAAYD,KAAA,GAChB,OAAAY,OAAA,CAAQC,IAAA,6BAAAT,UAAA,OAAAH,QAAA,0BAAAD,KAAA;IAAA,IACNM,KAAA,GAAAN,KAAA,CAAAC,QAAA,EAAAM,SAA4B,WAAUC,IAAO;MAC/C,OACOA,IAAA,CAAAC,IAAA,KAAAL,UAAA;IAGT;IACA,OAAIE,KAAA,KAAU,MAAIN,KAAA,CAAMC,QAAQ,EAAEa,MAAA,CAAOR,KAAA,EAAO,CAAC,GAC1CN,KAAA;EACT;EAEMe,OAAA,GAAU,SAAAA,CAA2Cf,KAAA,EAAAgB,MAAwB;IACjF;MAAMC;IAAE,IAAKD,MAAI;IACjB,QAAQC,IAAA;MACN,KAAK;QACH,OAAOlB,YAAA,CAAa;UACtB,GAAKC;QACH,GAAAgB,MAAO,CAAAf,QAAA;MACT,KAAK;QACH,OAAOC,cAAA;UACL,GAAEF;QAAS,GACXgB,MAAO,CAAAf,QAAA;MAAA,KACN;QAAiC,OACjCE,eAAiC;UACpC,GAAAH;QACF,GAAKgB,MAAA,CAAAf,QAAA,EAAAe,MAAA,CAAAZ,UAAA,EAAAY,MAAA,CAAAX,IAAA;MACH;QAAO,OACAM,YAAM;UACX,GAAAX;QAAO,GACNgB,MAA8B,CAAAf,QAAA,EAAAe,MAAA,CAAAZ,UAAA;MAAA;QAEnC,OAAAJ,KAAA;IACE;EAAO;EACXkB,kBAAA,kBAAAnC,aAAA;EAAAoC,qBAAA,kBAAApC,aAAA;EAAAqC,cAAA,YAAAA,CAAAnB,QAAA;IACF,IAEMD,KAAA,GAAAd,UAAqB,CAAAgC,kBAA4D;IAIrF,IAAAlB,KAAM,KAAQ,MAEd,MAAI,IAAAqB,KAAU;IACZ,OAAArB,KAAU,CAAAC,QAAA;EAAA;EAAAqB,SACR,YAAAA,CAAA;IAAA,IACFrB,QAAA,GAAAsB,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;MAAAE,QAAA,GAAAvC,UAAA,CAAAiC,qBAAA;IAGF,IAAAM,QAAO,KAAM,IAAQ,EAGV,UAAAJ,KAAa,6FAAsB;IAC9C,IAAAK,aAAiB,GAAAzC,WAAW;QAE5BwC,QAAI;UACFR,IAAM;UACJhB;QACF;MAIF,MAAM;MAAA0B,eAAe,GAAA1C,WAAY,aAAM;QACrCwC,QAAA,CAAS;UACPR,IAAA,EAAM;UACNhB;QACF,CAAC;MACH,GAAG,EAAE;MAEC2B,gBAAA,GAAiB3C,WAAY,WAAMwB,IAAA,EAAAJ,IAAA;QACvCoB,QAAA,CAAS;UACPR,IAAA,EAAM;UACNhB,QAAA;UACDG,UAAA,EAAAK,IAAA;UACCJ;QAGF;MAAS,KACP;MAAAwB,aAAM,GAAA5C,WAAA,WAAAwB,IAAA;QAAAgB,QACN;UACAR,IAAA;UACAhB,QAAA;UACDG,UAAA,EAAAK;QACH,CAAG,CAAC;MAGF;IAAS,OACP;MAAMV,YACN,EAAA2B,aAAA;MAAAxB,cACY,EAAAyB,eAAA;MACdG,SAAC,EAAAF,gBAAA;MACHG,YAAK,EAAAH,gBAAA;MAGLjB,YAAO,EAAAkB;IAAA;EACL;EAAAG,uBACA,YAAAA,CAAAC,KAAA;IAAA,IACA;QAAAC,YAAW;QAAAC,iBAAA;QAAAC;MAAA,IAAAH,KAAA;MAAA,CAAAjC,KAAA,EAAAyB,QAAA,IAAAnC,UAAA,CAAAyB,OAAA,EAAAjB,aAAA;MAAAuC,kBAAA,GAAAhD,OAAA;QACX,IAAAiD,IAAA,YAAAA,CAAcC,KAAA;UACdhD,eAAA;YACFkC,QAAA,CAAAc,KAAA;UAuBI;QACJ;QACA,OAAAD,IAAA;MACA,IACFb,QAA2B,CACzB;IAGI,sBAAgBlD,IAAM,CAAA4C,qBAAA,CAAAqB,QAAA;MACpBD,KAAA,EAAAF,kBAAc;MAChBD,QAAC,iBAAA3D,KAAA,CAAAyC,kBAAA,CAAAsB,QAAA;QAGDD,KAAA,EAAAvC,KAAS;QAEboC,QACE,GAEKA,QAAA,EACAD,iBAAqB,mBAAC5D,IAAA,CAAAkE,UAAW;UAEtChC,IAAA,EAAAyB;QAIS;MAmBb;IAGE;EAcA;EAAAQ,cATA,GAAU,eAAM1D,IAAA,CAAAgD,uBAAA;AACdU,cAAI,CAAAC,WAAkB;AACtB,IAAAC,eAAA,YAAAA,CACOR,QAAM;IACX,sBAAe7D,IAAA,CAAAI,SAAA;MAAAyD;IAEnB;EAIS;EAAAS,mBACL,GAAM,SAAAA,CAAKC,KAAS;IAClB;QAAArC,IAAI;QAAAsC,YAAY;QAAAC,MAAA,GAAAJ;MAAA,IAAAE,KAAA;MAAA9C,KAAA,GAAAoB,cAAA,CAAAX,IAAA;MAAA;QAAAV,YAAA,EAAA2B,aAAA;QAAAxB,cAAA,EAAAyB;MAAA,IAAAL,SAAA,CAAAwB,KAAA,CAAArC,IAAA;IAEhB,OAAAtB,SAAI,aACK;MAQX,IAAC,EAKS,OAAM8D,MAAK,MAAS,GAJhC,OAAAvB,aAAA;QAQSC,eAAkB;MAC/B;IA4CA,KAAM,GAAAqB,MAAA,CAAAD,YAAmB,GAAA/C,KAA2B,CAAAkD,GAAA,WAAA1C,IAAA;MAClD,IAAM8B,IAAA,GAAA9B,IAAA,CAAAH,IAAA;MACJ,OAAM0C,YAAA,GAAAjE,KAAA,CAAAqE,QAAA,CAAAD,GAAA,CAAAZ,IAAA,YAAAc,KAAA;QACN,sBAAAtE,KAAA,CAAAuE,cAAA,CAAAD,KAAA,mBAAAtE,KAAA,CAAAwE,YAAA,CAAAF,KAAA;UACAG,GAAA,EAAAH,KAAA,CAAeG,GAAA;UACf,GAAAR;QACA,KAAAK,KAAA;MACA,KAAAd,IAAA;IACF,KAAItC,KAAA,CACEkD,GAAE,WAAW1C,IAAA;MAKb,OAAAA,IAAA,CAAAH,IAAA;IAKN,CAAC;EAGC;EAAAoC,UAAI,kBACFzD,IAAA,CAAA6D,mBAAyB;AAERJ,UAIf,CAAAE,WAAA,GAAiB,YAAS;AAC9B,IAAIa,eAAA,YAAAA,CACFV,KAAA;IAIJ,IAAC;QAAArC,IAAA,EAAAgD,aAAA;QAAAxD,QAAA;QAAAyD,aAAA,EAAAC,sBAAA;QAAAC,eAAA,EAAAC,wBAAA;QAAAC,cAAA,EAAAC,uBAAA;QAAA3B;MAAA,IAAAU,KAAA;MAAA;QAAAhB,SAAA,EAAAF,gBAAA;QAAAjB,YAAA,EAAAkB;MAAA,IAAAP,SAAA,CAAArB,QAAA;MAAA+D,EAAA,GAAA5E,KAAA;MAAAqB,IAAA,GAAAgD,aAAA,IAAAO,EAAA;MAAAN,aAAA,GAAA7E,QAAA;QAED8E,sBAAA,GAAAA,sBACE,aACO;UACL,OAAA/B,gBAAgB,CAAAnB,IAAA,EAAA2B,QAAA;QAClB,EACC,GAAER,gBAEK,CAAAnB,IAAM,EAAA2B,QAAA;MACd;MAAAwB,eAAe,GAAA/E,QAAA;QACjBgF,wBAEO,GAAAA,wBAAA;UAGI,OAAAhC,aAAkB,CAAApB,IAAA;QAC/B,KAAAoB,aAAW,CAAApB,IAAc","ignoreList":[]}
@@ -1,26 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { YStack } from "@tamagui/stacks";
3
- import * as React from "react";
4
- import { Platform, RootTagContext } from "react-native";
5
- import { PortalItem } from "./GorhomPortal.native.mjs";
6
- var _global,
7
- isFabric = (_global = global) === null || _global === void 0 ? void 0 : _global.nativeFabricUIManager,
8
- createPortal;
9
- isFabric ? createPortal = require("react-native/Libraries/Renderer/shims/ReactFabric").createPortal : createPortal = require("react-native/Libraries/Renderer/shims/ReactNative").createPortal;
10
- var Portal = function (props) {
11
- var rootTag = React.useContext(RootTagContext),
12
- contents = /* @__PURE__ */_jsx(YStack, {
13
- pointerEvents: "box-none",
14
- fullscreen: !0,
15
- position: "absolute",
16
- maxWidth: "100%",
17
- zIndex: 1e5,
18
- ...props
19
- });
20
- return Platform.OS === "android" || !rootTag ? /* @__PURE__ */_jsx(PortalItem, {
21
- hostName: "root",
22
- children: contents
23
- }) : createPortal(contents, rootTag);
24
- };
25
- export { Portal };
26
- //# sourceMappingURL=Portal.native.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["YStack","React","Platform","RootTagContext","PortalItem","_global","isFabric","global","nativeFabricUIManager","createPortal","require","Portal","props","rootTag","useContext","contents","_jsx","pointerEvents","fullscreen","position","maxWidth","zIndex","OS","hostName"],"sources":["../../src/Users/n8/tamagui/code/ui/portal/src/Portal.native.tsx"],"sourcesContent":[null],"mappings":";AAAA,SAASA,MAAA,QAAc;AACvB,YAAYC,KAAA,MAAW;AAEvB,SAASC,QAAA,EAAUC,cAAA,QAAsB;AAEzC,SAASC,UAAA,QAAkB;IAGVC,OAAA;EAAXC,QAAA,IAAWD,OAAA,GAAAE,MAAA,cAAAF,OAAA,uBAAAA,OAAA,CAAQG,qBAAA;EACrBC,YAAA;AACAH,QAAA,GACFG,YAAA,GAAeC,OAAA,CAAQ,qDAAqDD,YAAA,GAE5EA,YAAA,GAAeC,OAAA,CAAQ,qDAAqDD,YAAA;AAGvE,IAAME,MAAA,GAAS,SAAAA,CAACC,KAAA;EACrB,IAAMC,OAAA,GAAUZ,KAAA,CAAMa,UAAA,CAAWX,cAAA;IAE3BY,QAAA,GACJ,eAAAC,IAAA,CAAChB,MAAA;MACCiB,aAAA,EAAc;MACdC,UAAA,EAAU;MACVC,QAAA,EAAS;MACTC,QAAA,EAAS;MACTC,MAAA,EAAQ;MACP,GAAGT;;EAIR,OAAIV,QAAA,CAASoB,EAAA,KAAO,aAAa,CAACT,OAAA,GACzB,eAAAG,IAAA,CAACZ,UAAA;IAAWmB,QAAA,EAAS;cAAQR;OAG/BN,YAAA,CAAaM,QAAA,EAAUF,OAAA;AAChC","ignoreList":[]}
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=PortalProps.native.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- export * from "./Portal.native.mjs";
2
- export * from "./PortalProps.native.mjs";
3
- export * from "./GorhomPortal.native.mjs";
4
- //# sourceMappingURL=index.native.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc","ignoreList":[]}