@tamagui/toast 3.0.0-beta.922.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/cjs/ToastComposable.cjs +61 -68
  2. package/dist/cjs/ToastComposable.native.cjs +80 -94
  3. package/dist/cjs/ToastComposable.native.js +80 -94
  4. package/dist/cjs/ToastComposable.native.js.map +1 -1
  5. package/dist/cjs/ToastItemFrame.cjs +4 -3
  6. package/dist/cjs/ToastItemFrame.native.cjs +4 -3
  7. package/dist/cjs/ToastItemFrame.native.js +4 -3
  8. package/dist/cjs/ToastItemFrame.native.js.map +1 -1
  9. package/dist/cjs/ToastState.cjs +1 -0
  10. package/dist/cjs/ToastState.native.cjs +3 -13
  11. package/dist/cjs/ToastState.native.js +3 -13
  12. package/dist/cjs/ToastState.native.js.map +1 -1
  13. package/dist/esm/ToastComposable.mjs +62 -69
  14. package/dist/esm/ToastComposable.mjs.map +1 -1
  15. package/dist/esm/ToastComposable.native.js +81 -95
  16. package/dist/esm/ToastComposable.native.js.map +1 -1
  17. package/dist/esm/ToastItemFrame.mjs +4 -3
  18. package/dist/esm/ToastItemFrame.mjs.map +1 -1
  19. package/dist/esm/ToastItemFrame.native.js +4 -3
  20. package/dist/esm/ToastItemFrame.native.js.map +1 -1
  21. package/dist/esm/ToastState.mjs +1 -0
  22. package/dist/esm/ToastState.mjs.map +1 -1
  23. package/dist/esm/ToastState.native.js +3 -13
  24. package/dist/esm/ToastState.native.js.map +1 -1
  25. package/dist/jsx/ToastComposable.mjs +62 -69
  26. package/dist/jsx/ToastComposable.mjs.map +1 -1
  27. package/dist/jsx/ToastComposable.native.cjs +80 -94
  28. package/dist/jsx/ToastComposable.native.js +80 -94
  29. package/dist/jsx/ToastComposable.native.js.map +1 -1
  30. package/dist/jsx/ToastItemFrame.mjs +4 -3
  31. package/dist/jsx/ToastItemFrame.mjs.map +1 -1
  32. package/dist/jsx/ToastItemFrame.native.cjs +4 -3
  33. package/dist/jsx/ToastItemFrame.native.js +4 -3
  34. package/dist/jsx/ToastItemFrame.native.js.map +1 -1
  35. package/dist/jsx/ToastState.mjs +1 -0
  36. package/dist/jsx/ToastState.mjs.map +1 -1
  37. package/dist/jsx/ToastState.native.cjs +3 -13
  38. package/dist/jsx/ToastState.native.js +3 -13
  39. package/dist/jsx/ToastState.native.js.map +1 -1
  40. package/package.json +22 -20
  41. package/src/ToastComposable.tsx +107 -113
  42. package/src/ToastItemFrame.tsx +7 -3
  43. package/src/ToastState.ts +4 -1
  44. package/src/useToastAnimations.ts +3 -4
  45. package/types/ToastComposable.d.ts +32 -72
  46. package/types/ToastComposable.d.ts.map +1 -1
  47. package/types/ToastItemFrame.d.ts +12 -36
  48. package/types/ToastItemFrame.d.ts.map +1 -1
  49. package/types/ToastState.d.ts.map +1 -1
  50. package/types/useAnimatedDragGesture.native.d.ts +1 -1
  51. package/types/useToastAnimations.d.ts +2 -3
  52. package/types/useToastAnimations.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ToastItemFrame.native.js","names":[],"sources":["cjs/ToastItemFrame.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar ToastItemFrame_exports = {};\n__export(ToastItemFrame_exports, {\n DefaultCloseIcon: () => DefaultCloseIcon,\n ToastActionFrame: () => ToastActionFrame,\n ToastCloseFrame: () => ToastCloseFrame,\n ToastItemFrame: () => ToastItemFrame,\n ToastPositionWrapper: () => ToastPositionWrapper\n});\nmodule.exports = __toCommonJS(ToastItemFrame_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_core = require(\"@tamagui/core\");\nvar import_stacks = require(\"@tamagui/stacks\");\nvar import_text = require(\"@tamagui/text\");\nvar ToastPositionWrapper = (0, import_core.styled)(import_stacks.YStack, {\n displayName: \"ToastPositionWrapper\",\n pointerEvents: \"auto\",\n position: \"absolute\",\n left: 0,\n right: 0,\n opacity: 1,\n scale: 1,\n y: 0,\n x: 0\n});\nvar ToastItemFrame = (0, import_core.styled)(import_stacks.YStack, {\n displayName: \"ToastItem\",\n userSelect: \"none\",\n cursor: \"default\",\n tabIndex: 0\n});\nvar ToastCloseFrame = (0, import_core.styled)(import_stacks.XStack, {\n displayName: \"ToastClose\",\n render: \"button\",\n alignItems: \"center\",\n justifyContent: \"center\",\n cursor: \"pointer\",\n width: 18,\n height: 18\n});\nvar ToastActionFrame = (0, import_core.styled)(import_stacks.XStack, {\n displayName: \"ToastAction\",\n render: \"button\",\n alignItems: \"center\",\n justifyContent: \"center\",\n cursor: \"pointer\",\n height: 24\n});\nvar DefaultCloseIcon = function() {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, {\n size: \"1\",\n children: \"\\u2715\"\n });\n};\n//# sourceMappingURL=ToastItemFrame.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,yBAAyB,CAAC;AAC9B,SAAS,wBAAwB;CAC/B,wBAAwB;CACxB,wBAAwB;CACxB,uBAAuB;CACvB,sBAAsB;CACtB,4BAA4B;AAC9B,CAAC;AACD,OAAO,UAAU,aAAa,sBAAsB;AACpD,IAAI,qBAAqB,QAAQ,mBAAmB;AACpD,IAAI,cAAc,QAAQ,eAAe;AACzC,IAAI,gBAAgB,QAAQ,iBAAiB;AAC7C,IAAI,cAAc,QAAQ,eAAe;AACzC,IAAI,wBAAwB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CACvE,aAAa;CACb,eAAe;CACf,UAAU;CACV,MAAM;CACN,OAAO;CACP,SAAS;CACT,OAAO;CACP,GAAG;CACH,GAAG;AACL,CAAC;AACD,IAAI,kBAAkB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CACjE,aAAa;CACb,YAAY;CACZ,QAAQ;CACR,UAAU;AACZ,CAAC;AACD,IAAI,mBAAmB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CAClE,aAAa;CACb,QAAQ;CACR,YAAY;CACZ,gBAAgB;CAChB,QAAQ;CACR,OAAO;CACP,QAAQ;AACV,CAAC;AACD,IAAI,oBAAoB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CACnE,aAAa;CACb,QAAQ;CACR,YAAY;CACZ,gBAAgB;CAChB,QAAQ;CACR,QAAQ;AACV,CAAC;AACD,IAAI,mBAAmB,WAAW;CAChC,OAAuB,iBAAC,GAAG,mBAAmB,IAAG,CAAE,YAAY,aAAa;EAC1E,MAAM;EACN,UAAU;CACZ,CAAC;AACH"}
1
+ {"version":3,"file":"ToastItemFrame.native.js","names":[],"sources":["cjs/ToastItemFrame.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar ToastItemFrame_exports = {};\n__export(ToastItemFrame_exports, {\n DefaultCloseIcon: () => DefaultCloseIcon,\n ToastActionFrame: () => ToastActionFrame,\n ToastCloseFrame: () => ToastCloseFrame,\n ToastItemFrame: () => ToastItemFrame,\n ToastPositionWrapper: () => ToastPositionWrapper\n});\nmodule.exports = __toCommonJS(ToastItemFrame_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_core = require(\"@tamagui/core\");\nvar import_stacks = require(\"@tamagui/stacks\");\nvar import_text = require(\"@tamagui/text\");\nvar ToastPositionWrapper = (0, import_core.styled)(import_stacks.YStack, {\n displayName: \"ToastPositionWrapper\",\n pointerEvents: \"auto\",\n position: \"absolute\",\n left: 0,\n right: 0,\n opacity: 1,\n scale: 1,\n y: 0,\n x: 0\n});\nvar ToastItemFrame = (0, import_core.styled)(import_stacks.YStack, {\n displayName: \"ToastItem\",\n userSelect: \"none\",\n cursor: \"default\",\n tabIndex: 0\n});\nvar ToastCloseFrame = (0, import_core.styled)(import_stacks.XStack, {\n displayName: \"ToastClose\",\n render: \"button\",\n alignItems: \"center\",\n justifyContent: \"center\",\n cursor: \"pointer\",\n width: 24,\n height: 24\n});\nvar ToastActionFrame = (0, import_core.styled)(import_stacks.XStack, {\n displayName: \"ToastAction\",\n render: \"button\",\n alignItems: \"center\",\n justifyContent: \"center\",\n cursor: \"pointer\",\n height: 24\n});\nvar DefaultCloseIcon = function() {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, {\n size: \"5\",\n lineHeight: \"1\",\n children: \"\\u2715\"\n });\n};\n//# sourceMappingURL=ToastItemFrame.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,yBAAyB,CAAC;AAC9B,SAAS,wBAAwB;CAC/B,wBAAwB;CACxB,wBAAwB;CACxB,uBAAuB;CACvB,sBAAsB;CACtB,4BAA4B;AAC9B,CAAC;AACD,OAAO,UAAU,aAAa,sBAAsB;AACpD,IAAI,qBAAqB,QAAQ,mBAAmB;AACpD,IAAI,cAAc,QAAQ,eAAe;AACzC,IAAI,gBAAgB,QAAQ,iBAAiB;AAC7C,IAAI,cAAc,QAAQ,eAAe;AACzC,IAAI,wBAAwB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CACvE,aAAa;CACb,eAAe;CACf,UAAU;CACV,MAAM;CACN,OAAO;CACP,SAAS;CACT,OAAO;CACP,GAAG;CACH,GAAG;AACL,CAAC;AACD,IAAI,kBAAkB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CACjE,aAAa;CACb,YAAY;CACZ,QAAQ;CACR,UAAU;AACZ,CAAC;AACD,IAAI,mBAAmB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CAClE,aAAa;CACb,QAAQ;CACR,YAAY;CACZ,gBAAgB;CAChB,QAAQ;CACR,OAAO;CACP,QAAQ;AACV,CAAC;AACD,IAAI,oBAAoB,GAAG,YAAY,OAAM,CAAE,cAAc,QAAQ;CACnE,aAAa;CACb,QAAQ;CACR,YAAY;CACZ,gBAAgB;CAChB,QAAQ;CACR,QAAQ;AACV,CAAC;AACD,IAAI,mBAAmB,WAAW;CAChC,OAAuB,iBAAC,GAAG,mBAAmB,IAAG,CAAE,YAAY,aAAa;EAC1E,MAAM;EACN,YAAY;EACZ,UAAU;CACZ,CAAC;AACH"}
@@ -103,6 +103,7 @@ var Observer = class {
103
103
  if (id !== void 0) {
104
104
  this.dismissedToasts.add(id);
105
105
  requestAnimationFrame(() => {
106
+ if (!this.dismissedToasts.has(id)) return;
106
107
  this.subscribers.forEach((subscriber) => subscriber({
107
108
  id,
108
109
  dismiss: true
@@ -44,17 +44,6 @@ function _define_property(obj, key, value) {
44
44
  }
45
45
  return obj;
46
46
  }
47
- function _instanceof(left, right) {
48
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
49
- return !!right[Symbol.hasInstance](left);
50
- } else {
51
- return left instanceof right;
52
- }
53
- }
54
- function _type_of(obj) {
55
- "@swc/helpers - typeof";
56
- return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
57
- }
58
47
  var toastsCounter = 1;
59
48
  var Observer = function Observer2() {
60
49
  "use strict";
@@ -126,6 +115,7 @@ var Observer = function Observer2() {
126
115
  if (id !== void 0) {
127
116
  _this.dismissedToasts.add(id);
128
117
  requestAnimationFrame(function() {
118
+ if (!_this.dismissedToasts.has(id)) return;
129
119
  _this.subscribers.forEach(function(subscriber) {
130
120
  return subscriber({
131
121
  id,
@@ -201,7 +191,7 @@ var Observer = function Observer2() {
201
191
  duration: Number.POSITIVE_INFINITY
202
192
  });
203
193
  }
204
- var p = Promise.resolve(_instanceof(promise, Function) ? promise() : promise);
194
+ var p = Promise.resolve(promise instanceof Function ? promise() : promise);
205
195
  var shouldDismiss = id !== void 0;
206
196
  var result;
207
197
  var originalPromise = p.then(async function(response) {
@@ -281,7 +271,7 @@ var Observer = function Observer2() {
281
271
  });
282
272
  };
283
273
  function isHttpResponse(data) {
284
- return data && (typeof data === "undefined" ? "undefined" : _type_of(data)) === "object" && "ok" in data && typeof data.ok === "boolean" && "status" in data && typeof data.status === "number";
274
+ return data && typeof data === "object" && "ok" in data && typeof data.ok === "boolean" && "status" in data && typeof data.status === "number";
285
275
  }
286
276
  var ToastState = new Observer();
287
277
  var toastFunction = function(title, data) {
@@ -44,17 +44,6 @@ function _define_property(obj, key, value) {
44
44
  }
45
45
  return obj;
46
46
  }
47
- function _instanceof(left, right) {
48
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
49
- return !!right[Symbol.hasInstance](left);
50
- } else {
51
- return left instanceof right;
52
- }
53
- }
54
- function _type_of(obj) {
55
- "@swc/helpers - typeof";
56
- return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
57
- }
58
47
  var toastsCounter = 1;
59
48
  var Observer = function Observer2() {
60
49
  "use strict";
@@ -126,6 +115,7 @@ var Observer = function Observer2() {
126
115
  if (id !== void 0) {
127
116
  _this.dismissedToasts.add(id);
128
117
  requestAnimationFrame(function() {
118
+ if (!_this.dismissedToasts.has(id)) return;
129
119
  _this.subscribers.forEach(function(subscriber) {
130
120
  return subscriber({
131
121
  id,
@@ -201,7 +191,7 @@ var Observer = function Observer2() {
201
191
  duration: Number.POSITIVE_INFINITY
202
192
  });
203
193
  }
204
- var p = Promise.resolve(_instanceof(promise, Function) ? promise() : promise);
194
+ var p = Promise.resolve(promise instanceof Function ? promise() : promise);
205
195
  var shouldDismiss = id !== void 0;
206
196
  var result;
207
197
  var originalPromise = p.then(async function(response) {
@@ -281,7 +271,7 @@ var Observer = function Observer2() {
281
271
  });
282
272
  };
283
273
  function isHttpResponse(data) {
284
- return data && (typeof data === "undefined" ? "undefined" : _type_of(data)) === "object" && "ok" in data && typeof data.ok === "boolean" && "status" in data && typeof data.status === "number";
274
+ return data && typeof data === "object" && "ok" in data && typeof data.ok === "boolean" && "status" in data && typeof data.status === "number";
285
275
  }
286
276
  var ToastState = new Observer();
287
277
  var toastFunction = function(title, data) {
@@ -1 +1 @@
1
- {"version":3,"file":"ToastState.native.js","names":[],"sources":["cjs/ToastState.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar ToastState_exports = {};\n__export(ToastState_exports, {\n ToastState: () => ToastState,\n toast: () => toast\n});\nmodule.exports = __toCommonJS(ToastState_exports);\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _instanceof(left, right) {\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar toastsCounter = 1;\nvar Observer = function Observer2() {\n \"use strict\";\n var _this = this;\n _class_call_check(this, Observer2);\n _define_property(this, \"subscribers\", []);\n _define_property(this, \"toasts\", []);\n _define_property(this, \"dismissedToasts\", /* @__PURE__ */ new Set());\n _define_property(this, \"subscribe\", function(subscriber) {\n _this.subscribers.push(subscriber);\n return function() {\n var index = _this.subscribers.indexOf(subscriber);\n if (index > -1) {\n _this.subscribers.splice(index, 1);\n }\n };\n });\n _define_property(this, \"publish\", function(data) {\n _this.subscribers.forEach(function(subscriber) {\n return subscriber(data);\n });\n });\n _define_property(this, \"addToast\", function(data) {\n _this.publish(data);\n _this.toasts = [\n ..._this.toasts,\n data\n ];\n });\n _define_property(this, \"create\", function(data) {\n var { title, ...rest } = data;\n var id = typeof (data === null || data === void 0 ? void 0 : data.id) === \"number\" || typeof (data === null || data === void 0 ? void 0 : data.id) === \"string\" && data.id.length > 0 ? data.id : toastsCounter++;\n var alreadyExists = _this.toasts.find(function(toast2) {\n return toast2.id === id;\n });\n var _data_dismissible;\n var dismissible = (_data_dismissible = data.dismissible) !== null && _data_dismissible !== void 0 ? _data_dismissible : true;\n if (_this.dismissedToasts.has(id)) {\n _this.dismissedToasts.delete(id);\n }\n if (alreadyExists) {\n _this.toasts = _this.toasts.map(function(toast2) {\n if (toast2.id === id) {\n _this.publish({\n ...toast2,\n ...data,\n id,\n title,\n dismissible\n });\n return {\n ...toast2,\n ...data,\n id,\n title,\n dismissible\n };\n }\n return toast2;\n });\n } else {\n _this.addToast({\n title,\n ...rest,\n dismissible,\n id\n });\n }\n return id;\n });\n _define_property(this, \"dismiss\", function(id) {\n if (id !== void 0) {\n _this.dismissedToasts.add(id);\n requestAnimationFrame(function() {\n _this.subscribers.forEach(function(subscriber) {\n return subscriber({\n id,\n dismiss: true\n });\n });\n });\n } else {\n _this.toasts.forEach(function(toast2) {\n _this.subscribers.forEach(function(subscriber) {\n return subscriber({\n id: toast2.id,\n dismiss: true\n });\n });\n });\n }\n return id;\n });\n _define_property(this, \"message\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"default\"\n });\n });\n _define_property(this, \"success\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"success\"\n });\n });\n _define_property(this, \"error\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"error\"\n });\n });\n _define_property(this, \"warning\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"warning\"\n });\n });\n _define_property(this, \"info\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"info\"\n });\n });\n _define_property(this, \"loading\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"loading\"\n });\n });\n _define_property(this, \"promise\", function(promise, data) {\n if (!data) {\n return;\n }\n var id = void 0;\n if (data.loading !== void 0) {\n id = _this.create({\n promise,\n type: \"loading\",\n title: data.loading,\n description: typeof data.description !== \"function\" ? data.description : void 0,\n // loading toasts shouldn't auto-dismiss\n duration: Number.POSITIVE_INFINITY\n });\n }\n var p = Promise.resolve(_instanceof(promise, Function) ? promise() : promise);\n var shouldDismiss = id !== void 0;\n var result;\n var originalPromise = p.then(async function(response) {\n result = [\n \"resolve\",\n response\n ];\n if (isHttpResponse(response) && !response.ok) {\n shouldDismiss = false;\n var errorMsg = typeof data.error === \"function\" ? await data.error(`HTTP error! status: ${response.status}`) : data.error;\n var description = typeof data.description === \"function\" ? await data.description(`HTTP error! status: ${response.status}`) : data.description;\n _this.create({\n id,\n type: \"error\",\n title: errorMsg,\n description\n });\n } else if (data.success !== void 0) {\n shouldDismiss = false;\n var successMsg = typeof data.success === \"function\" ? await data.success(response) : data.success;\n var description1 = typeof data.description === \"function\" ? await data.description(response) : data.description;\n _this.create({\n id,\n type: \"success\",\n title: successMsg,\n description: description1\n });\n }\n }).catch(async function(error) {\n result = [\n \"reject\",\n error\n ];\n if (data.error !== void 0) {\n shouldDismiss = false;\n var errorMsg = typeof data.error === \"function\" ? await data.error(error) : data.error;\n var description = typeof data.description === \"function\" ? await data.description(error) : data.description;\n _this.create({\n id,\n type: \"error\",\n title: errorMsg,\n description\n });\n }\n }).finally(function() {\n var _data_finally;\n if (shouldDismiss) {\n _this.dismiss(id);\n id = void 0;\n }\n (_data_finally = data.finally) === null || _data_finally === void 0 ? void 0 : _data_finally.call(data);\n });\n var unwrap = function() {\n return new Promise(function(resolve, reject) {\n return originalPromise.then(function() {\n return result[0] === \"reject\" ? reject(result[1]) : resolve(result[1]);\n }).catch(reject);\n });\n };\n if (typeof id !== \"string\" && typeof id !== \"number\") {\n return {\n unwrap\n };\n } else {\n return Object.assign(id, {\n unwrap\n });\n }\n });\n _define_property(this, \"custom\", function(jsx, data) {\n var _data_id;\n var id = (_data_id = data === null || data === void 0 ? void 0 : data.id) !== null && _data_id !== void 0 ? _data_id : toastsCounter++;\n _this.create({\n jsx: jsx(id),\n ...data,\n id\n });\n return id;\n });\n _define_property(this, \"getActiveToasts\", function() {\n return _this.toasts.filter(function(toast2) {\n return !_this.dismissedToasts.has(toast2.id);\n });\n });\n _define_property(this, \"getHistory\", function() {\n return _this.toasts;\n });\n};\nfunction isHttpResponse(data) {\n return data && (typeof data === \"undefined\" ? \"undefined\" : _type_of(data)) === \"object\" && \"ok\" in data && typeof data.ok === \"boolean\" && \"status\" in data && typeof data.status === \"number\";\n}\nvar ToastState = new Observer();\nvar toastFunction = function(title, data) {\n return ToastState.create({\n ...data,\n title\n });\n};\nvar getHistory = function() {\n return ToastState.getHistory();\n};\nvar getToasts = function() {\n return ToastState.getActiveToasts();\n};\nvar toast = Object.assign(toastFunction, {\n success: ToastState.success,\n error: ToastState.error,\n warning: ToastState.warning,\n info: ToastState.info,\n loading: ToastState.loading,\n promise: ToastState.promise,\n custom: ToastState.custom,\n dismiss: ToastState.dismiss,\n message: ToastState.message,\n getHistory,\n getToasts\n});\n//# sourceMappingURL=ToastState.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"ToastState.native.js","names":[],"sources":["cjs/ToastState.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar ToastState_exports = {};\n__export(ToastState_exports, {\n ToastState: () => ToastState,\n toast: () => toast\n});\nmodule.exports = __toCommonJS(ToastState_exports);\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar toastsCounter = 1;\nvar Observer = function Observer2() {\n \"use strict\";\n var _this = this;\n _class_call_check(this, Observer2);\n _define_property(this, \"subscribers\", []);\n _define_property(this, \"toasts\", []);\n _define_property(this, \"dismissedToasts\", /* @__PURE__ */ new Set());\n _define_property(this, \"subscribe\", function(subscriber) {\n _this.subscribers.push(subscriber);\n return function() {\n var index = _this.subscribers.indexOf(subscriber);\n if (index > -1) {\n _this.subscribers.splice(index, 1);\n }\n };\n });\n _define_property(this, \"publish\", function(data) {\n _this.subscribers.forEach(function(subscriber) {\n return subscriber(data);\n });\n });\n _define_property(this, \"addToast\", function(data) {\n _this.publish(data);\n _this.toasts = [\n ..._this.toasts,\n data\n ];\n });\n _define_property(this, \"create\", function(data) {\n var { title, ...rest } = data;\n var id = typeof (data === null || data === void 0 ? void 0 : data.id) === \"number\" || typeof (data === null || data === void 0 ? void 0 : data.id) === \"string\" && data.id.length > 0 ? data.id : toastsCounter++;\n var alreadyExists = _this.toasts.find(function(toast2) {\n return toast2.id === id;\n });\n var _data_dismissible;\n var dismissible = (_data_dismissible = data.dismissible) !== null && _data_dismissible !== void 0 ? _data_dismissible : true;\n if (_this.dismissedToasts.has(id)) {\n _this.dismissedToasts.delete(id);\n }\n if (alreadyExists) {\n _this.toasts = _this.toasts.map(function(toast2) {\n if (toast2.id === id) {\n _this.publish({\n ...toast2,\n ...data,\n id,\n title,\n dismissible\n });\n return {\n ...toast2,\n ...data,\n id,\n title,\n dismissible\n };\n }\n return toast2;\n });\n } else {\n _this.addToast({\n title,\n ...rest,\n dismissible,\n id\n });\n }\n return id;\n });\n _define_property(this, \"dismiss\", function(id) {\n if (id !== void 0) {\n _this.dismissedToasts.add(id);\n requestAnimationFrame(function() {\n if (!_this.dismissedToasts.has(id)) return;\n _this.subscribers.forEach(function(subscriber) {\n return subscriber({\n id,\n dismiss: true\n });\n });\n });\n } else {\n _this.toasts.forEach(function(toast2) {\n _this.subscribers.forEach(function(subscriber) {\n return subscriber({\n id: toast2.id,\n dismiss: true\n });\n });\n });\n }\n return id;\n });\n _define_property(this, \"message\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"default\"\n });\n });\n _define_property(this, \"success\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"success\"\n });\n });\n _define_property(this, \"error\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"error\"\n });\n });\n _define_property(this, \"warning\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"warning\"\n });\n });\n _define_property(this, \"info\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"info\"\n });\n });\n _define_property(this, \"loading\", function(title, data) {\n return _this.create({\n ...data,\n title,\n type: \"loading\"\n });\n });\n _define_property(this, \"promise\", function(promise, data) {\n if (!data) {\n return;\n }\n var id = void 0;\n if (data.loading !== void 0) {\n id = _this.create({\n promise,\n type: \"loading\",\n title: data.loading,\n description: typeof data.description !== \"function\" ? data.description : void 0,\n // loading toasts shouldn't auto-dismiss\n duration: Number.POSITIVE_INFINITY\n });\n }\n var p = Promise.resolve(promise instanceof Function ? promise() : promise);\n var shouldDismiss = id !== void 0;\n var result;\n var originalPromise = p.then(async function(response) {\n result = [\n \"resolve\",\n response\n ];\n if (isHttpResponse(response) && !response.ok) {\n shouldDismiss = false;\n var errorMsg = typeof data.error === \"function\" ? await data.error(`HTTP error! status: ${response.status}`) : data.error;\n var description = typeof data.description === \"function\" ? await data.description(`HTTP error! status: ${response.status}`) : data.description;\n _this.create({\n id,\n type: \"error\",\n title: errorMsg,\n description\n });\n } else if (data.success !== void 0) {\n shouldDismiss = false;\n var successMsg = typeof data.success === \"function\" ? await data.success(response) : data.success;\n var description1 = typeof data.description === \"function\" ? await data.description(response) : data.description;\n _this.create({\n id,\n type: \"success\",\n title: successMsg,\n description: description1\n });\n }\n }).catch(async function(error) {\n result = [\n \"reject\",\n error\n ];\n if (data.error !== void 0) {\n shouldDismiss = false;\n var errorMsg = typeof data.error === \"function\" ? await data.error(error) : data.error;\n var description = typeof data.description === \"function\" ? await data.description(error) : data.description;\n _this.create({\n id,\n type: \"error\",\n title: errorMsg,\n description\n });\n }\n }).finally(function() {\n var _data_finally;\n if (shouldDismiss) {\n _this.dismiss(id);\n id = void 0;\n }\n (_data_finally = data.finally) === null || _data_finally === void 0 ? void 0 : _data_finally.call(data);\n });\n var unwrap = function() {\n return new Promise(function(resolve, reject) {\n return originalPromise.then(function() {\n return result[0] === \"reject\" ? reject(result[1]) : resolve(result[1]);\n }).catch(reject);\n });\n };\n if (typeof id !== \"string\" && typeof id !== \"number\") {\n return {\n unwrap\n };\n } else {\n return Object.assign(id, {\n unwrap\n });\n }\n });\n _define_property(this, \"custom\", function(jsx, data) {\n var _data_id;\n var id = (_data_id = data === null || data === void 0 ? void 0 : data.id) !== null && _data_id !== void 0 ? _data_id : toastsCounter++;\n _this.create({\n jsx: jsx(id),\n ...data,\n id\n });\n return id;\n });\n _define_property(this, \"getActiveToasts\", function() {\n return _this.toasts.filter(function(toast2) {\n return !_this.dismissedToasts.has(toast2.id);\n });\n });\n _define_property(this, \"getHistory\", function() {\n return _this.toasts;\n });\n};\nfunction isHttpResponse(data) {\n return data && typeof data === \"object\" && \"ok\" in data && typeof data.ok === \"boolean\" && \"status\" in data && typeof data.status === \"number\";\n}\nvar ToastState = new Observer();\nvar toastFunction = function(title, data) {\n return ToastState.create({\n ...data,\n title\n });\n};\nvar getHistory = function() {\n return ToastState.getHistory();\n};\nvar getToasts = function() {\n return ToastState.getActiveToasts();\n};\nvar toast = Object.assign(toastFunction, {\n success: ToastState.success,\n error: ToastState.error,\n warning: ToastState.warning,\n info: ToastState.info,\n loading: ToastState.loading,\n promise: ToastState.promise,\n custom: ToastState.custom,\n dismiss: ToastState.dismiss,\n message: ToastState.message,\n getHistory,\n getToasts\n});\n//# sourceMappingURL=ToastState.js.map\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Theme, View, createRefComponent, createStyledContext, createStyledHOC, styled, useConfiguration, useEvent, useThemeName } from "@tamagui/core";
1
+ import { View, createRefComponent, createStyledContext, createStyledHOC, styled, useEvent } from "@tamagui/core";
2
2
  import { AnimatePresence } from "@tamagui/animate-presence";
3
3
  import { isWeb } from "@tamagui/constants";
4
4
  import { getGestureHandler } from "@tamagui/native";
@@ -53,7 +53,7 @@ function resolveSwipeDirection(direction, position) {
53
53
  return "horizontal";
54
54
  }
55
55
  const ToastRoot = createRefComponent(function ToastRoot2(props, _ref) {
56
- const { children, toasterId, position = "bottom-right", duration = TOAST_LIFETIME, gap = TOAST_GAP, visibleToasts = VISIBLE_TOASTS_AMOUNT, swipeDirection: swipeDirectionProp = "auto", swipeThreshold = 50, toastHeight = FIXED_TOAST_HEIGHT, closeButton = false, expand = false, theme: themeProp, reducedMotion: reducedMotionProp, native = false, burntOptions, notificationOptions, icons } = props;
56
+ const { children, toasterId, position = "bottom-right", duration = TOAST_LIFETIME, gap = TOAST_GAP, visibleToasts = VISIBLE_TOASTS_AMOUNT, swipeDirection: swipeDirectionProp = "auto", swipeThreshold = 50, toastHeight = FIXED_TOAST_HEIGHT, closeButton = false, expand = false, reducedMotion: reducedMotionProp, native = false, burntOptions, notificationOptions, icons } = props;
57
57
  const reducedMotion = useReducedMotion(reducedMotionProp);
58
58
  const [toasts, setToasts] = React.useState([]);
59
59
  const [heights, setHeights] = React.useState({});
@@ -139,7 +139,8 @@ const ToastRoot = createRefComponent(function ToastRoot2(props, _ref) {
139
139
  ...toasts2.slice(0, idx),
140
140
  {
141
141
  ...toasts2[idx],
142
- ...toast
142
+ ...toast,
143
+ delete: false
143
144
  },
144
145
  ...toasts2.slice(idx + 1)
145
146
  ];
@@ -171,8 +172,6 @@ const ToastRoot = createRefComponent(function ToastRoot2(props, _ref) {
171
172
  });
172
173
  }, []);
173
174
  const swipeDirection = resolveSwipeDirection(swipeDirectionProp, position);
174
- const currentTheme = useThemeName();
175
- const resolvedTheme = themeProp === "system" || !themeProp ? currentTheme?.includes("dark") ? "dark" : "light" : themeProp;
176
175
  const contextValue = {
177
176
  toasts,
178
177
  heights,
@@ -201,10 +200,7 @@ const ToastRoot = createRefComponent(function ToastRoot2(props, _ref) {
201
200
  };
202
201
  return /* @__PURE__ */ jsx(ToastContext.Provider, {
203
202
  ...contextValue,
204
- children: /* @__PURE__ */ jsx(Theme, {
205
- name: resolvedTheme,
206
- children
207
- })
203
+ children
208
204
  });
209
205
  });
210
206
  const ToastViewportFrame = styled(View, {
@@ -225,39 +221,36 @@ const ToastViewport = createStyledHOC(ToastViewportFrame, function ToastViewport
225
221
  const deferredCollapseRef = React.useRef(null);
226
222
  const mouseInsideRef = React.useRef(false);
227
223
  const [yPosition, xPosition] = ctx.position.split("-");
228
- const { insets: safeInsets } = useConfiguration();
229
- const offsetStyles = React.useMemo(() => {
230
- const styles = {};
231
- const defaultOffset = typeof offset === "number" ? offset : VIEWPORT_OFFSET;
232
- const offsetObj = typeof offset === "object" ? offset : {
233
- top: defaultOffset,
234
- right: defaultOffset,
235
- bottom: defaultOffset,
236
- left: defaultOffset
237
- };
238
- const safeTop = safeInsets?.top ?? 0;
239
- const safeBottom = safeInsets?.bottom ?? 0;
240
- const topOffset = safeTop > 0 ? safeTop : offsetObj.top ?? defaultOffset;
241
- const bottomOffset = safeBottom > 0 ? safeBottom : offsetObj.bottom ?? defaultOffset;
242
- if (yPosition === "top") styles.top = topOffset;
243
- else styles.bottom = bottomOffset;
244
- if (isWeb) {
245
- if (xPosition === "left") styles.left = offsetObj.left ?? defaultOffset;
246
- else if (xPosition === "right") styles.right = offsetObj.right ?? defaultOffset;
247
- else {
248
- styles.left = "50%";
249
- styles.transform = "translateX(-50%)";
250
- }
251
- } else {
252
- styles.left = offsetObj.left ?? defaultOffset;
253
- styles.right = offsetObj.right ?? defaultOffset;
254
- }
255
- return styles;
256
- }, [
257
- offset,
258
- yPosition,
259
- xPosition
260
- ]);
224
+ const defaultOffset = typeof offset === "number" ? offset : VIEWPORT_OFFSET;
225
+ const offsetObj = typeof offset === "object" ? offset : {
226
+ top: defaultOffset,
227
+ right: defaultOffset,
228
+ bottom: defaultOffset,
229
+ left: defaultOffset
230
+ };
231
+ const edgeProps = yPosition === "top" ? {
232
+ top: "safe",
233
+ marginTop: offsetObj.top ?? defaultOffset
234
+ } : {
235
+ bottom: "safe",
236
+ marginBottom: offsetObj.bottom ?? defaultOffset
237
+ };
238
+ const sideProps = isWeb ? xPosition === "left" ? {
239
+ left: "safe",
240
+ marginLeft: offsetObj.left ?? defaultOffset
241
+ } : xPosition === "right" ? {
242
+ right: "safe",
243
+ marginRight: offsetObj.right ?? defaultOffset
244
+ } : null : {
245
+ left: "safe",
246
+ marginLeft: offsetObj.left ?? defaultOffset,
247
+ right: "safe",
248
+ marginRight: offsetObj.right ?? defaultOffset
249
+ };
250
+ const centerStyle = isWeb && xPosition === "center" ? {
251
+ left: "50%",
252
+ transform: "translateX(-50%)"
253
+ } : null;
261
254
  React.useEffect(() => {
262
255
  if (!isWeb) return;
263
256
  const handleKeyDown = (event) => {
@@ -277,7 +270,9 @@ const ToastViewport = createStyledHOC(ToastViewportFrame, function ToastViewport
277
270
  "aria-label": `${label} ${hotkeyLabel}`,
278
271
  tabIndex: -1,
279
272
  "aria-live": "polite",
280
- style: offsetStyles,
273
+ ...edgeProps,
274
+ ...sideProps,
275
+ ...centerStyle ? { style: centerStyle } : null,
281
276
  "data-y-position": yPosition,
282
277
  "data-x-position": xPosition,
283
278
  ...isWeb ? {
@@ -548,13 +543,16 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
548
543
  setMounted(true);
549
544
  }, []);
550
545
  React.useEffect(() => {
551
- if (toast.delete) {
552
- setRemoved(true);
553
- if (isExpandedRef.current) {
554
- setOffsetBeforeRemove(expandedOffsetRef.current);
555
- }
556
- setTimeout(() => ctx.removeToast(toast), TIME_BEFORE_UNMOUNT);
546
+ if (!toast.delete) {
547
+ setRemoved(false);
548
+ return;
549
+ }
550
+ setRemoved(true);
551
+ if (isExpandedRef.current) {
552
+ setOffsetBeforeRemove(expandedOffsetRef.current);
557
553
  }
554
+ const timer = setTimeout(() => ctx.removeToast(toast), TIME_BEFORE_UNMOUNT);
555
+ return () => clearTimeout(timer);
558
556
  }, [
559
557
  toast.delete,
560
558
  toast,
@@ -601,9 +599,8 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
601
599
  }
602
600
  });
603
601
  const handleLayout = React.useCallback((event) => {
604
- if (!isWeb) return;
605
602
  if (removed) return;
606
- if (!ctx.expanded && index !== 0) return;
603
+ if ((!isWeb || !ctx.expanded) && index !== 0) return;
607
604
  const { height } = event.nativeEvent.layout;
608
605
  ctx.setToastHeight(toast.id, height);
609
606
  }, [
@@ -614,7 +611,6 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
614
611
  removed
615
612
  ]);
616
613
  React.useEffect(() => {
617
- if (!isWeb) return;
618
614
  return () => {
619
615
  ctx.removeToastHeight(toast.id);
620
616
  };
@@ -639,13 +635,11 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
639
635
  handleClose
640
636
  }), [toast, handleClose]);
641
637
  let frontToastHeight = -1;
642
- if (isWeb) {
643
- for (const t of ctx.toasts) {
644
- const h = ctx.heights[t.id];
645
- if (h != null && h > 0) {
646
- frontToastHeight = h;
647
- break;
648
- }
638
+ for (const t of ctx.toasts) {
639
+ const h = ctx.heights[t.id];
640
+ if (h != null && h > 0) {
641
+ frontToastHeight = h;
642
+ break;
649
643
  }
650
644
  }
651
645
  const stackScale = !ctx.expanded && !isFront ? 1 - index * .05 : 1;
@@ -653,7 +647,8 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
653
647
  const stackY = ctx.expanded ? isTop ? activeExpandedOffset : -activeExpandedOffset : isFront ? 0 : isTop ? ctx.gap * index : -ctx.gap * index;
654
648
  const computedOpacity = removed && !swipeOut ? 0 : index >= ctx.visibleToasts ? 0 : 1;
655
649
  const computedZIndex = removed ? 0 : ctx.visibleToasts - index + 1;
656
- const computedHeight = isWeb ? ctx.expanded ? ctx.heights[toast.id] || void 0 : !isFront && frontToastHeight > 0 ? frontToastHeight : void 0 : void 0;
650
+ const collapsedHeight = !isFront && frontToastHeight > 0 ? frontToastHeight : void 0;
651
+ const computedHeight = ctx.expanded ? isWeb ? ctx.heights[toast.id] || void 0 : void 0 : collapsedHeight;
657
652
  const computedPointerEvents = index >= ctx.visibleToasts ? "none" : "auto";
658
653
  const gapFillerHeight = ctx.expanded ? ctx.gap + 1 : 0;
659
654
  const dataAttributes = {
@@ -669,10 +664,12 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
669
664
  return /* @__PURE__ */ jsx(ToastPositionWrapper, {
670
665
  ref,
671
666
  testID: rest.testID,
672
- "aria-label": rest["aria-label"],
673
667
  ...dataAttributes,
674
- transition: isDragging || ctx.reducedMotion ? void 0 : removed ? "200ms" : "400ms",
675
- y: ctx.reducedMotion ? stackY : `${stackY} enter:${isTop ? -80 : 80}px exit:${swipeOut ? swipeExitYRef.current ?? stackY : stackY}px`,
668
+ transition: isDragging || ctx.reducedMotion ? void 0 : {
669
+ duration: removed ? 200 : 400,
670
+ properties: isWeb ? "transform, opacity, height" : "transform, opacity"
671
+ },
672
+ y: ctx.reducedMotion ? stackY : `${stackY}px enter:${isTop ? -80 : 80}px exit:${swipeOut ? swipeExitYRef.current ?? stackY : stackY}px`,
676
673
  scale: stackScale,
677
674
  opacity: `${computedOpacity} enter:0 exit:0`,
678
675
  zIndex: computedZIndex,
@@ -681,12 +678,7 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
681
678
  pointerEvents: computedPointerEvents,
682
679
  top: isTop ? 0 : void 0,
683
680
  bottom: isTop ? void 0 : 0,
684
- ...isWeb && !isFront && { style: { transformOrigin: isTop ? "top center" : "bottom center" } },
685
- animateOnly: isWeb ? [
686
- "transform",
687
- "opacity",
688
- "height"
689
- ] : ["transform", "opacity"],
681
+ ...!isFront && { style: { transformOrigin: isTop ? "top center" : "bottom center" } },
690
682
  children: /* @__PURE__ */ jsx(DragWrapper, {
691
683
  animatedStyle,
692
684
  gestureHandlers,
@@ -713,6 +705,7 @@ const ToastItemInner = createStyledHOC(ToastItemFrame, function ToastItem(props,
713
705
  handleClose();
714
706
  }
715
707
  } },
708
+ ...!isWeb && computedHeight != null && { flex: 1 },
716
709
  ...rest,
717
710
  children: [ctx.expanded && gapFillerHeight > 0 && /* @__PURE__ */ jsx(View, {
718
711
  position: "absolute",