@tamagui/portal 2.3.3 → 2.4.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.
@@ -31,6 +31,7 @@ var import_jsx_runtime = require("react/jsx-runtime");
31
31
  var import_constants = require("@tamagui/constants");
32
32
  var import_core = require("@tamagui/core");
33
33
  var import_native = require("@tamagui/native");
34
+ var import_web = require("@tamagui/web");
34
35
  var import_react = require("react");
35
36
  var import_GorhomPortal = require("./GorhomPortal.native.js");
36
37
  var GorhomPortalItem = function (props) {
@@ -79,13 +80,18 @@ var GorhomPortalItemFallback = function (props) {
79
80
  } = (0, import_GorhomPortal.usePortal)(hostName);
80
81
  var id = (0, import_react.useId)();
81
82
  var name = _providedName || id;
83
+ var themeName = (0, import_web.useThemeName)();
84
+ var themedChildren = passThrough ? children : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_web.Theme, {
85
+ name: themeName,
86
+ children
87
+ });
82
88
  var handleOnMount = (0, import_core.useEvent)(function () {
83
89
  if (_providedHandleOnMount) {
84
90
  _providedHandleOnMount(function () {
85
- return addUpdatePortal(name, children);
91
+ return addUpdatePortal(name, themedChildren);
86
92
  });
87
93
  } else {
88
- addUpdatePortal(name, children);
94
+ addUpdatePortal(name, themedChildren);
89
95
  }
90
96
  });
91
97
  var handleOnUnmount = (0, import_core.useEvent)(function () {
@@ -100,10 +106,10 @@ var GorhomPortalItemFallback = function (props) {
100
106
  var handleOnUpdate = (0, import_core.useEvent)(function () {
101
107
  if (_providedHandleOnUpdate) {
102
108
  _providedHandleOnUpdate(function () {
103
- return addUpdatePortal(name, children);
109
+ return addUpdatePortal(name, themedChildren);
104
110
  });
105
111
  } else {
106
- addUpdatePortal(name, children);
112
+ addUpdatePortal(name, themedChildren);
107
113
  }
108
114
  });
109
115
  (0, import_constants.useIsomorphicLayoutEffect)(function () {
@@ -116,7 +122,7 @@ var GorhomPortalItemFallback = function (props) {
116
122
  (0, import_react.useEffect)(function () {
117
123
  if (passThrough) return;
118
124
  handleOnUpdate();
119
- }, [children]);
125
+ }, [children, themeName]);
120
126
  return passThrough ? children : null;
121
127
  };
122
128
  //# sourceMappingURL=GorhomPortalItem.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GorhomPortalItem_native_exports","__export","GorhomPortalItem","module","exports","__toCommonJS","import_jsx_runtime","require","import_constants","import_core","import_native","import_react","import_GorhomPortal","props","name","_providedName","hostName","handleOnMount","_providedHandleOnMount","handleOnUnmount","_providedHandleOnUnmount","handleOnUpdate","_providedHandleOnUpdate","children","passThrough","portalState","getPortal","state","type","jsx","NativePortal","GorhomPortalItemFallback","addPortal","addUpdatePortal","removePortal","usePortal","id","useId","useEvent","useIsomorphicLayoutEffect","useEffect"],"sources":["../../src/GorhomPortalItem.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["GorhomPortalItem_native_exports","__export","GorhomPortalItem","module","exports","__toCommonJS","import_jsx_runtime","require","import_constants","import_core","import_native","import_web","import_react","import_GorhomPortal","props","name","_providedName","hostName","handleOnMount","_providedHandleOnMount","handleOnUnmount","_providedHandleOnUnmount","handleOnUpdate","_providedHandleOnUpdate","children","passThrough","portalState","getPortal","state","type","jsx","NativePortal","GorhomPortalItemFallback","addPortal","addUpdatePortal","removePortal","usePortal","id","useId","themeName","useThemeName","themedChildren","Theme","useEvent","useIsomorphicLayoutEffect","useEffect"],"sources":["../../src/GorhomPortalItem.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useIsomorphicLayoutEffect } from "@tamagui/constants";
3
3
  import { useEvent } from "@tamagui/core";
4
4
  import { getPortal, NativePortal } from "@tamagui/native";
5
+ import { Theme, useThemeName } from "@tamagui/web";
5
6
  import { useEffect, useId } from "react";
6
7
  import { usePortal } from "./GorhomPortal.native.js";
7
8
  var GorhomPortalItem = function (props) {
@@ -50,13 +51,18 @@ var GorhomPortalItemFallback = function (props) {
50
51
  } = usePortal(hostName);
51
52
  var id = useId();
52
53
  var name = _providedName || id;
54
+ var themeName = useThemeName();
55
+ var themedChildren = passThrough ? children : /* @__PURE__ */_jsx(Theme, {
56
+ name: themeName,
57
+ children
58
+ });
53
59
  var handleOnMount = useEvent(function () {
54
60
  if (_providedHandleOnMount) {
55
61
  _providedHandleOnMount(function () {
56
- return addUpdatePortal(name, children);
62
+ return addUpdatePortal(name, themedChildren);
57
63
  });
58
64
  } else {
59
- addUpdatePortal(name, children);
65
+ addUpdatePortal(name, themedChildren);
60
66
  }
61
67
  });
62
68
  var handleOnUnmount = useEvent(function () {
@@ -71,10 +77,10 @@ var GorhomPortalItemFallback = function (props) {
71
77
  var handleOnUpdate = useEvent(function () {
72
78
  if (_providedHandleOnUpdate) {
73
79
  _providedHandleOnUpdate(function () {
74
- return addUpdatePortal(name, children);
80
+ return addUpdatePortal(name, themedChildren);
75
81
  });
76
82
  } else {
77
- addUpdatePortal(name, children);
83
+ addUpdatePortal(name, themedChildren);
78
84
  }
79
85
  });
80
86
  useIsomorphicLayoutEffect(function () {
@@ -87,7 +93,7 @@ var GorhomPortalItemFallback = function (props) {
87
93
  useEffect(function () {
88
94
  if (passThrough) return;
89
95
  handleOnUpdate();
90
- }, [children]);
96
+ }, [children, themeName]);
91
97
  return passThrough ? children : null;
92
98
  };
93
99
  export { GorhomPortalItem };
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","useIsomorphicLayoutEffect","useEvent","getPortal","NativePortal","useEffect","useId","usePortal","GorhomPortalItem","props","name","_providedName","hostName","handleOnMount","_providedHandleOnMount","handleOnUnmount","_providedHandleOnUnmount","handleOnUpdate","_providedHandleOnUpdate","children","passThrough","portalState","state","type","GorhomPortalItemFallback","addPortal","addUpdatePortal","removePortal","id"],"sources":["../../src/GorhomPortalItem.native.tsx"],"sourcesContent":[null],"mappings":"AAEA,SAASA,GAAA,IAAOC,IAAA,QAAY;AAC5B,SAASC,yBAAA,QAAiC;AAC1C,SAASC,QAAA,QAAgB;AACzB,SAASC,SAAA,EAAWC,YAAA,QAAoB;AACxC,SAASC,SAAA,EAAWC,KAAA,QAAa;AACjC,SAASC,SAAA,QAAiB;AACnB,IAAIC,gBAAA,GAAmB,SAAAA,CAASC,KAAA,EAAO;EAC1C,IAAI;IAAEC,IAAA,EAAMC,aAAA;IAAeC,QAAA,GAAW;IAAQC,aAAA,EAAeC,sBAAA;IAAwBC,eAAA,EAAiBC,wBAAA;IAA0BC,cAAA,EAAgBC,uBAAA;IAAyBC,QAAA;IAAUC;EAAY,IAAIX,KAAA;EACnM,IAAIY,WAAA,GAAclB,SAAA,CAAU,EAAEmB,KAAA;EAE9B,IAAID,WAAA,CAAYE,IAAA,KAAS,YAAY;IACjC,IAAIH,WAAA,EAAa;MACb,OAAOD,QAAA;IACX;IACA,OAAqB,eAAAnB,IAAA,CAAKI,YAAA,EAAc;MACpCQ,QAAA;MACAO;IACJ,CAAC;EACL;EAEA,OAAqB,eAAAnB,IAAA,CAAKwB,wBAAA,EAA0B;IAChDd,IAAA,EAAMC,aAAA;IACNC,QAAA;IACAC,aAAA,EAAeC,sBAAA;IACfC,eAAA,EAAiBC,wBAAA;IACjBC,cAAA,EAAgBC,uBAAA;IAChBE,WAAA;IACAD;EACJ,CAAC;AACL;AAEA,IAAIK,wBAAA,GAA2B,SAAAA,CAASf,KAAA,EAAO;EAC3C,IAAI;IAAEC,IAAA,EAAMC,aAAA;IAAeC,QAAA;IAAUC,aAAA,EAAeC,sBAAA;IAAwBC,eAAA,EAAiBC,wBAAA;IAA0BC,cAAA,EAAgBC,uBAAA;IAAyBC,QAAA;IAAUC;EAAY,IAAIX,KAAA;EAC1L,IAAI;IAAEgB,SAAA,EAAWC,eAAA;IAAiBC;EAAa,IAAIpB,SAAA,CAAUK,QAAQ;EACrE,IAAIgB,EAAA,GAAKtB,KAAA,CAAM;EACf,IAAII,IAAA,GAAOC,aAAA,IAAiBiB,EAAA;EAC5B,IAAIf,aAAA,GAAgBX,QAAA,CAAS,YAAW;IACpC,IAAIY,sBAAA,EAAwB;MACxBA,sBAAA,CAAuB,YAAW;QAC9B,OAAOY,eAAA,CAAgBhB,IAAA,EAAMS,QAAQ;MACzC,CAAC;IACL,OAAO;MACHO,eAAA,CAAgBhB,IAAA,EAAMS,QAAQ;IAClC;EACJ,CAAC;EACD,IAAIJ,eAAA,GAAkBb,QAAA,CAAS,YAAW;IACtC,IAAIc,wBAAA,EAA0B;MAC1BA,wBAAA,CAAyB,YAAW;QAChC,OAAOW,YAAA,CAAajB,IAAI;MAC5B,CAAC;IACL,OAAO;MACHiB,YAAA,CAAajB,IAAI;IACrB;EACJ,CAAC;EACD,IAAIO,cAAA,GAAiBf,QAAA,CAAS,YAAW;IACrC,IAAIgB,uBAAA,EAAyB;MACzBA,uBAAA,CAAwB,YAAW;QAC/B,OAAOQ,eAAA,CAAgBhB,IAAA,EAAMS,QAAQ;MACzC,CAAC;IACL,OAAO;MACHO,eAAA,CAAgBhB,IAAA,EAAMS,QAAQ;IAClC;EACJ,CAAC;EACDlB,yBAAA,CAA0B,YAAW;IACjC,IAAImB,WAAA,EAAa;IACjBP,aAAA,CAAc;IACd,OAAO,YAAW;MACdE,eAAA,CAAgB;IACpB;EACJ,GAAG,EAAE;EACLV,SAAA,CAAU,YAAW;IACjB,IAAIe,WAAA,EAAa;IACjBH,cAAA,CAAe;EACnB,GAAG,CACCE,QAAA,CACH;EACD,OAAOC,WAAA,GAAcD,QAAA,GAAW;AACpC","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","useIsomorphicLayoutEffect","useEvent","getPortal","NativePortal","Theme","useThemeName","useEffect","useId","usePortal","GorhomPortalItem","props","name","_providedName","hostName","handleOnMount","_providedHandleOnMount","handleOnUnmount","_providedHandleOnUnmount","handleOnUpdate","_providedHandleOnUpdate","children","passThrough","portalState","state","type","GorhomPortalItemFallback","addPortal","addUpdatePortal","removePortal","id","themeName","themedChildren"],"sources":["../../src/GorhomPortalItem.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/portal",
3
- "version": "2.3.3",
3
+ "version": "2.4.0",
4
4
  "source": "src/index.ts",
5
5
  "files": [
6
6
  "src",
@@ -34,16 +34,16 @@
34
34
  "clean:build": "tamagui-build clean:build"
35
35
  },
36
36
  "dependencies": {
37
- "@tamagui/constants": "2.3.3",
38
- "@tamagui/core": "2.3.3",
39
- "@tamagui/native": "2.3.3",
40
- "@tamagui/start-transition": "2.3.3",
41
- "@tamagui/use-event": "2.3.3",
42
- "@tamagui/web": "2.3.3",
43
- "@tamagui/z-index-stack": "2.3.3"
37
+ "@tamagui/constants": "2.4.0",
38
+ "@tamagui/core": "2.4.0",
39
+ "@tamagui/native": "2.4.0",
40
+ "@tamagui/start-transition": "2.4.0",
41
+ "@tamagui/use-event": "2.4.0",
42
+ "@tamagui/web": "2.4.0",
43
+ "@tamagui/z-index-stack": "2.4.0"
44
44
  },
45
45
  "devDependencies": {
46
- "@tamagui/build": "2.3.3",
46
+ "@tamagui/build": "2.4.0",
47
47
  "react": ">=19",
48
48
  "react-dom": "*",
49
49
  "react-native": "0.83.2"
@@ -4,6 +4,7 @@
4
4
  import { useIsomorphicLayoutEffect } from '@tamagui/constants'
5
5
  import { useEvent } from '@tamagui/core'
6
6
  import { getPortal, NativePortal } from '@tamagui/native'
7
+ import { Theme, useThemeName } from '@tamagui/web'
7
8
  import { useEffect, useId } from 'react'
8
9
  import { usePortal } from './GorhomPortal'
9
10
  import type { PortalItemProps } from './types'
@@ -60,11 +61,24 @@ const GorhomPortalItemFallback = (props: PortalItemProps) => {
60
61
  const id = useId()
61
62
  const name = _providedName || id
62
63
 
64
+ // the gorhom host renders registered children in a separate flush, outside
65
+ // this subtree's theme context — so carry the theme as data: capture the
66
+ // resolved name here (reliable: this item renders at its definition site)
67
+ // and re-establish it with an absolute <Theme name> on the other side. that
68
+ // resolves themes[name] without needing the parent state, which the host
69
+ // flush can't see. mirrors the web Portal's repropagation (Portal.tsx).
70
+ const themeName = useThemeName()
71
+ const themedChildren = passThrough ? (
72
+ children
73
+ ) : (
74
+ <Theme name={themeName}>{children}</Theme>
75
+ )
76
+
63
77
  const handleOnMount = useEvent(() => {
64
78
  if (_providedHandleOnMount) {
65
- _providedHandleOnMount(() => addUpdatePortal(name, children))
79
+ _providedHandleOnMount(() => addUpdatePortal(name, themedChildren))
66
80
  } else {
67
- addUpdatePortal(name, children)
81
+ addUpdatePortal(name, themedChildren)
68
82
  }
69
83
  })
70
84
 
@@ -78,9 +92,9 @@ const GorhomPortalItemFallback = (props: PortalItemProps) => {
78
92
 
79
93
  const handleOnUpdate = useEvent(() => {
80
94
  if (_providedHandleOnUpdate) {
81
- _providedHandleOnUpdate(() => addUpdatePortal(name, children))
95
+ _providedHandleOnUpdate(() => addUpdatePortal(name, themedChildren))
82
96
  } else {
83
- addUpdatePortal(name, children)
97
+ addUpdatePortal(name, themedChildren)
84
98
  }
85
99
  })
86
100
 
@@ -97,7 +111,7 @@ const GorhomPortalItemFallback = (props: PortalItemProps) => {
97
111
  if (passThrough) return
98
112
 
99
113
  handleOnUpdate()
100
- }, [children])
114
+ }, [children, themeName])
101
115
 
102
116
  return passThrough ? children : null
103
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GorhomPortalItem.native.d.ts","sourceRoot":"","sources":["../src/GorhomPortalItem.native.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,gBAAgB,GAAI,OAAO,eAAe,4WAkCtD,CAAA"}
1
+ {"version":3,"file":"GorhomPortalItem.native.d.ts","sourceRoot":"","sources":["../src/GorhomPortalItem.native.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,gBAAgB,GAAI,OAAO,eAAe,4WAkCtD,CAAA"}