one 2.0.0-beta.65.1 → 2.0.0-beta.82.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/dist/cjs/cli/prebuild.cjs +14 -0
  2. package/dist/cjs/cli/prebuild.native.cjs +18 -0
  3. package/dist/cjs/cli/prebuild.native.js +18 -0
  4. package/dist/cjs/cli/prebuild.native.js.map +1 -1
  5. package/dist/cjs/layouts/Stack.cjs +14 -11
  6. package/dist/cjs/layouts/Stack.native.cjs +31 -11
  7. package/dist/cjs/layouts/Stack.native.js +31 -11
  8. package/dist/cjs/layouts/Stack.native.js.map +1 -1
  9. package/dist/cjs/layouts/stack-utils/StackToolbar.cjs +57 -14
  10. package/dist/cjs/layouts/stack-utils/StackToolbar.native.cjs +61 -14
  11. package/dist/cjs/layouts/stack-utils/StackToolbar.native.js +61 -14
  12. package/dist/cjs/layouts/stack-utils/StackToolbar.native.js.map +1 -1
  13. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.cjs +82 -23
  14. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.native.cjs +86 -25
  15. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.native.js +86 -25
  16. package/dist/cjs/layouts/stack-utils/StackToolbarBottomHost.native.js.map +1 -1
  17. package/dist/cjs/layouts/stack-utils/index.cjs +9 -3
  18. package/dist/cjs/layouts/stack-utils/index.native.cjs +9 -3
  19. package/dist/cjs/layouts/stack-utils/index.native.js +9 -3
  20. package/dist/cjs/layouts/stack-utils/index.native.js.map +1 -1
  21. package/dist/cjs/layouts/stack-utils/stackToolbarDescriptors.cjs +354 -160
  22. package/dist/cjs/layouts/stack-utils/stackToolbarDescriptors.native.cjs +374 -169
  23. package/dist/cjs/layouts/stack-utils/stackToolbarDescriptors.native.js +374 -169
  24. package/dist/cjs/layouts/stack-utils/stackToolbarDescriptors.native.js.map +1 -1
  25. package/dist/cjs/metro-config/getViteMetroPluginOptions.cjs +7 -0
  26. package/dist/cjs/metro-config/getViteMetroPluginOptions.native.cjs +7 -0
  27. package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js +7 -0
  28. package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
  29. package/dist/cjs/one.cjs +8 -1
  30. package/dist/cjs/one.native.cjs +8 -1
  31. package/dist/cjs/one.native.js +8 -1
  32. package/dist/cjs/one.native.js.map +1 -1
  33. package/dist/cjs/router/web/WebStackNavigator.cjs +32 -0
  34. package/dist/cjs/router/web/WebStackNavigator.native.cjs +37 -0
  35. package/dist/cjs/router/web/WebStackNavigator.native.js +37 -0
  36. package/dist/cjs/router/web/WebStackNavigator.native.js.map +1 -1
  37. package/dist/cjs/vite/one.cjs +25 -12
  38. package/dist/cjs/vite/one.native.cjs +27 -12
  39. package/dist/cjs/vite/one.native.js +27 -12
  40. package/dist/cjs/vite/one.native.js.map +1 -1
  41. package/dist/cjs/vite/plugins/clientTreeShakePlugin.cjs +1 -1
  42. package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.cjs +1 -1
  43. package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js +1 -1
  44. package/dist/cjs/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
  45. package/dist/cjs/vite/plugins/swiftPackagePlugin.cjs +46 -0
  46. package/dist/cjs/vite/plugins/swiftPackagePlugin.native.cjs +48 -0
  47. package/dist/cjs/vite/plugins/swiftPackagePlugin.native.js +50 -0
  48. package/dist/cjs/vite/plugins/swiftPackagePlugin.native.js.map +1 -0
  49. package/dist/esm/cli/prebuild.mjs +15 -1
  50. package/dist/esm/cli/prebuild.mjs.map +1 -1
  51. package/dist/esm/cli/prebuild.native.js +19 -1
  52. package/dist/esm/cli/prebuild.native.js.map +1 -1
  53. package/dist/esm/layouts/Stack.mjs +15 -12
  54. package/dist/esm/layouts/Stack.mjs.map +1 -1
  55. package/dist/esm/layouts/Stack.native.js +32 -12
  56. package/dist/esm/layouts/Stack.native.js.map +1 -1
  57. package/dist/esm/layouts/stack-utils/StackToolbar.mjs +50 -12
  58. package/dist/esm/layouts/stack-utils/StackToolbar.mjs.map +1 -1
  59. package/dist/esm/layouts/stack-utils/StackToolbar.native.js +54 -12
  60. package/dist/esm/layouts/stack-utils/StackToolbar.native.js.map +1 -1
  61. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.mjs +83 -24
  62. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.mjs.map +1 -1
  63. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.native.js +87 -26
  64. package/dist/esm/layouts/stack-utils/StackToolbarBottomHost.native.js.map +1 -1
  65. package/dist/esm/layouts/stack-utils/index.mjs +3 -2
  66. package/dist/esm/layouts/stack-utils/index.mjs.map +1 -1
  67. package/dist/esm/layouts/stack-utils/index.native.js +3 -2
  68. package/dist/esm/layouts/stack-utils/index.native.js.map +1 -1
  69. package/dist/esm/layouts/stack-utils/stackToolbarDescriptors.mjs +352 -156
  70. package/dist/esm/layouts/stack-utils/stackToolbarDescriptors.mjs.map +1 -1
  71. package/dist/esm/layouts/stack-utils/stackToolbarDescriptors.native.js +372 -165
  72. package/dist/esm/layouts/stack-utils/stackToolbarDescriptors.native.js.map +1 -1
  73. package/dist/esm/metro-config/getViteMetroPluginOptions.mjs +7 -0
  74. package/dist/esm/metro-config/getViteMetroPluginOptions.mjs.map +1 -1
  75. package/dist/esm/metro-config/getViteMetroPluginOptions.native.js +7 -0
  76. package/dist/esm/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
  77. package/dist/esm/one.mjs +9 -2
  78. package/dist/esm/one.mjs.map +1 -1
  79. package/dist/esm/one.native.js +9 -2
  80. package/dist/esm/one.native.js.map +1 -1
  81. package/dist/esm/router/web/WebStackNavigator.mjs +33 -1
  82. package/dist/esm/router/web/WebStackNavigator.mjs.map +1 -1
  83. package/dist/esm/router/web/WebStackNavigator.native.js +38 -1
  84. package/dist/esm/router/web/WebStackNavigator.native.js.map +1 -1
  85. package/dist/esm/vite/one.mjs +26 -13
  86. package/dist/esm/vite/one.mjs.map +1 -1
  87. package/dist/esm/vite/one.native.js +28 -13
  88. package/dist/esm/vite/one.native.js.map +1 -1
  89. package/dist/esm/vite/plugins/clientTreeShakePlugin.mjs +1 -1
  90. package/dist/esm/vite/plugins/clientTreeShakePlugin.mjs.map +1 -1
  91. package/dist/esm/vite/plugins/clientTreeShakePlugin.native.js +1 -1
  92. package/dist/esm/vite/plugins/clientTreeShakePlugin.native.js.map +1 -1
  93. package/dist/esm/vite/plugins/swiftPackagePlugin.mjs +27 -0
  94. package/dist/esm/vite/plugins/swiftPackagePlugin.mjs.map +1 -0
  95. package/dist/esm/vite/plugins/swiftPackagePlugin.native.js +27 -0
  96. package/dist/esm/vite/plugins/swiftPackagePlugin.native.js.map +1 -0
  97. package/package.json +12 -12
  98. package/react-native-config.cjs +14 -1
  99. package/src/cli/prebuild.test.ts +59 -1
  100. package/src/cli/prebuild.ts +30 -1
  101. package/src/index.ts +14 -4
  102. package/src/layouts/Stack.tsx +31 -26
  103. package/src/layouts/stack-utils/StackToolbar.tsx +97 -32
  104. package/src/layouts/stack-utils/StackToolbarBottomHost.tsx +124 -35
  105. package/src/layouts/stack-utils/__tests__/toolbar.test.tsx +434 -187
  106. package/src/layouts/stack-utils/index.tsx +24 -7
  107. package/src/layouts/stack-utils/stackToolbarDescriptors.ts +752 -305
  108. package/src/metro-config/getViteMetroPluginOptions.integration.test.ts +15 -0
  109. package/src/metro-config/getViteMetroPluginOptions.ts +10 -0
  110. package/src/native/packedClosure.test.ts +19 -1
  111. package/src/one.ts +17 -1
  112. package/src/router/web/WebStackNavigator.tsx +32 -0
  113. package/src/router/web/stackStateUtils.ts +4 -2
  114. package/src/vite/one.ts +30 -7
  115. package/src/vite/plugins/clientTreeShakePlugin.ts +4 -1
  116. package/src/vite/plugins/swiftPackagePlugin.ts +30 -0
  117. package/types/cli/prebuild.d.ts.map +1 -1
  118. package/types/index.d.ts +1 -1
  119. package/types/index.d.ts.map +1 -1
  120. package/types/layouts/Stack.d.ts +8 -10
  121. package/types/layouts/Stack.d.ts.map +1 -1
  122. package/types/layouts/stack-utils/StackToolbar.d.ts +26 -21
  123. package/types/layouts/stack-utils/StackToolbar.d.ts.map +1 -1
  124. package/types/layouts/stack-utils/StackToolbarBottomHost.d.ts +10 -6
  125. package/types/layouts/stack-utils/StackToolbarBottomHost.d.ts.map +1 -1
  126. package/types/layouts/stack-utils/index.d.ts +2 -1
  127. package/types/layouts/stack-utils/index.d.ts.map +1 -1
  128. package/types/layouts/stack-utils/stackToolbarDescriptors.d.ts +199 -95
  129. package/types/layouts/stack-utils/stackToolbarDescriptors.d.ts.map +1 -1
  130. package/types/metro-config/getViteMetroPluginOptions.d.ts.map +1 -1
  131. package/types/one.d.ts +8 -2
  132. package/types/one.d.ts.map +1 -1
  133. package/types/router/web/WebStackNavigator.d.ts.map +1 -1
  134. package/types/router/web/stackStateUtils.d.ts +2 -2
  135. package/types/router/web/stackStateUtils.d.ts.map +1 -1
  136. package/types/vite/one.d.ts.map +1 -1
  137. package/types/vite/plugins/clientTreeShakePlugin.d.ts.map +1 -1
  138. package/types/vite/plugins/swiftPackagePlugin.d.ts +3 -0
  139. package/types/vite/plugins/swiftPackagePlugin.d.ts.map +1 -0
@@ -31,6 +31,14 @@ var import_node_fs = require("node:fs");
31
31
  var import_node_path = require("node:path");
32
32
  var import_appManifest = require("../native/appManifest.cjs");
33
33
  var import_loadConfig = require("../vite/loadConfig.cjs");
34
+ const REACT_NATIVE_CONFIG = `module.exports = require('one/react-native-config')
35
+ `;
36
+ const REACT_NATIVE_CONFIG_NAMES = [
37
+ "react-native.config.js",
38
+ "react-native.config.cjs",
39
+ "react-native.config.mjs",
40
+ "react-native.config.ts"
41
+ ];
34
42
  async function run(args) {
35
43
  const root = process.cwd();
36
44
  const packageJson = JSON.parse((0, import_node_fs.readFileSync)((0, import_node_path.join)(root, "package.json"), "utf8"));
@@ -45,6 +53,12 @@ async function run(args) {
45
53
  throw new Error("[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId");
46
54
  }
47
55
  (0, import_appManifest.validateNativeApp)(app);
56
+ const present = REACT_NATIVE_CONFIG_NAMES.filter((name) => (0, import_node_fs.existsSync)((0, import_node_path.join)(root, name)));
57
+ if (present.length === 0) {
58
+ (0, import_node_fs.writeFileSync)((0, import_node_path.join)(root, "react-native.config.cjs"), REACT_NATIVE_CONFIG);
59
+ } else if (!present.some((name) => (0, import_node_fs.readFileSync)((0, import_node_path.join)(root, name), "utf8").includes("one/react-native-config"))) {
60
+ throw new Error(`[one] ${present.join(", ")} does not load one/react-native-config, so Release builds would run the stock React Native bundler instead of One's. Set it to \`module.exports = require('one/react-native-config')\` or spread that into your config, then re-run one prebuild.`);
61
+ }
48
62
  const { prebuild } = await import("vxrn");
49
63
  await prebuild({
50
64
  root: process.cwd(),
@@ -33,6 +33,14 @@ var import_fs = require("fs");
33
33
  var import_path = require("path");
34
34
  var import_appManifest = require("../native/appManifest.native.js");
35
35
  var import_loadConfig = require("../vite/loadConfig.native.js");
36
+ var REACT_NATIVE_CONFIG = `module.exports = require('one/react-native-config')
37
+ `;
38
+ var REACT_NATIVE_CONFIG_NAMES = [
39
+ "react-native.config.js",
40
+ "react-native.config.cjs",
41
+ "react-native.config.mjs",
42
+ "react-native.config.ts"
43
+ ];
36
44
  async function run(args) {
37
45
  var _packageJson_dependencies, _packageJson_devDependencies;
38
46
  var root = process.cwd();
@@ -48,6 +56,16 @@ async function run(args) {
48
56
  throw new Error("[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId");
49
57
  }
50
58
  (0, import_appManifest.validateNativeApp)(app);
59
+ var present = REACT_NATIVE_CONFIG_NAMES.filter(function(name) {
60
+ return (0, import_fs.existsSync)((0, import_path.join)(root, name));
61
+ });
62
+ if (present.length === 0) {
63
+ (0, import_fs.writeFileSync)((0, import_path.join)(root, "react-native.config.cjs"), REACT_NATIVE_CONFIG);
64
+ } else if (!present.some(function(name) {
65
+ return (0, import_fs.readFileSync)((0, import_path.join)(root, name), "utf8").includes("one/react-native-config");
66
+ })) {
67
+ throw new Error(`[one] ${present.join(", ")} does not load one/react-native-config, so Release builds would run the stock React Native bundler instead of One's. Set it to \`module.exports = require('one/react-native-config')\` or spread that into your config, then re-run one prebuild.`);
68
+ }
51
69
  var { prebuild } = await import("vxrn");
52
70
  await prebuild({
53
71
  root: process.cwd(),
@@ -33,6 +33,14 @@ var import_fs = require("fs");
33
33
  var import_path = require("path");
34
34
  var import_appManifest = require("../native/appManifest.native.js");
35
35
  var import_loadConfig = require("../vite/loadConfig.native.js");
36
+ var REACT_NATIVE_CONFIG = `module.exports = require('one/react-native-config')
37
+ `;
38
+ var REACT_NATIVE_CONFIG_NAMES = [
39
+ "react-native.config.js",
40
+ "react-native.config.cjs",
41
+ "react-native.config.mjs",
42
+ "react-native.config.ts"
43
+ ];
36
44
  async function run(args) {
37
45
  var _packageJson_dependencies, _packageJson_devDependencies;
38
46
  var root = process.cwd();
@@ -48,6 +56,16 @@ async function run(args) {
48
56
  throw new Error("[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId");
49
57
  }
50
58
  (0, import_appManifest.validateNativeApp)(app);
59
+ var present = REACT_NATIVE_CONFIG_NAMES.filter(function(name) {
60
+ return (0, import_fs.existsSync)((0, import_path.join)(root, name));
61
+ });
62
+ if (present.length === 0) {
63
+ (0, import_fs.writeFileSync)((0, import_path.join)(root, "react-native.config.cjs"), REACT_NATIVE_CONFIG);
64
+ } else if (!present.some(function(name) {
65
+ return (0, import_fs.readFileSync)((0, import_path.join)(root, name), "utf8").includes("one/react-native-config");
66
+ })) {
67
+ throw new Error(`[one] ${present.join(", ")} does not load one/react-native-config, so Release builds would run the stock React Native bundler instead of One's. Set it to \`module.exports = require('one/react-native-config')\` or spread that into your config, then re-run one prebuild.`);
68
+ }
51
69
  var { prebuild } = await import("vxrn");
52
70
  await prebuild({
53
71
  root: process.cwd(),
@@ -1 +1 @@
1
- {"version":3,"file":"prebuild.native.js","names":[],"sources":["cjs/cli/prebuild.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar prebuild_exports = {};\n__export(prebuild_exports, {\n run: () => run\n});\nmodule.exports = __toCommonJS(prebuild_exports);\nvar import_fs = require(\"fs\");\nvar import_path = require(\"path\");\nvar import_appManifest = require(\"../native/appManifest\");\nvar import_loadConfig = require(\"../vite/loadConfig\");\nasync function run(args) {\n var _packageJson_dependencies, _packageJson_devDependencies;\n var root = process.cwd();\n var packageJson = JSON.parse((0, import_fs.readFileSync)((0, import_path.join)(root, \"package.json\"), \"utf8\"));\n var hasExpo = Object.hasOwn((_packageJson_dependencies = packageJson.dependencies) !== null && _packageJson_dependencies !== void 0 ? _packageJson_dependencies : {}, \"expo\") || Object.hasOwn((_packageJson_devDependencies = packageJson.devDependencies) !== null && _packageJson_devDependencies !== void 0 ? _packageJson_devDependencies : {}, \"expo\");\n if (hasExpo) {\n throw new Error('[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.');\n }\n var { oneOptions } = await (0, import_loadConfig.loadUserOneOptions)(\"build\", true);\n var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;\n var app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\");\n }\n (0, import_appManifest.validateNativeApp)(app);\n var { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,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,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,mBAAmB,CAAC;AACxB,SAAS,kBAAkB,EACzB,WAAW,IACb,CAAC;AACD,OAAO,UAAU,aAAa,gBAAgB;AAC9C,IAAI,YAAY,QAAQ,IAAI;AAC5B,IAAI,cAAc,QAAQ,MAAM;AAChC,IAAI,qBAAqB,QAAQ,iCAAuB;AACxD,IAAI,oBAAoB,QAAQ,8BAAoB;AACpD,eAAe,IAAI,MAAM;CACvB,IAAI,2BAA2B;CAC/B,IAAI,OAAO,QAAQ,IAAI;CACvB,IAAI,cAAc,KAAK,OAAO,GAAG,UAAU,aAAY,EAAG,GAAG,YAAY,KAAI,CAAE,MAAM,cAAc,GAAG,MAAM,CAAC;CAC7G,IAAI,UAAU,OAAO,QAAQ,4BAA4B,YAAY,kBAAkB,QAAQ,8BAA8B,KAAK,IAAI,4BAA4B,CAAC,GAAG,MAAM,KAAK,OAAO,QAAQ,+BAA+B,YAAY,qBAAqB,QAAQ,iCAAiC,KAAK,IAAI,+BAA+B,CAAC,GAAG,MAAM;CAC3V,IAAI,SAAS;EACX,MAAM,IAAI,MAAM,mJAAiJ;CACnK;CACA,IAAI,EAAE,eAAe,OAAO,GAAG,kBAAkB,mBAAkB,CAAE,SAAS,IAAI;CAClF,IAAI,SAAS,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW;CAChF,IAAI,MAAM,OAAO,WAAW,WAAW,OAAO,MAAM,KAAK;CACzD,IAAI,CAAC,KAAK;EACR,MAAM,IAAI,MAAM,qHAAqH;CACvI;CACA,CAAC,GAAG,mBAAmB,kBAAiB,CAAE,GAAG;CAC7C,IAAI,EAAE,aAAa,MAAM,OAAO;CAChC,MAAM,SAAS;EACb,MAAM,QAAQ,IAAI;EAClB,GAAG;EACH;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"prebuild.native.js","names":[],"sources":["cjs/cli/prebuild.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar prebuild_exports = {};\n__export(prebuild_exports, {\n run: () => run\n});\nmodule.exports = __toCommonJS(prebuild_exports);\nvar import_fs = require(\"fs\");\nvar import_path = require(\"path\");\nvar import_appManifest = require(\"../native/appManifest\");\nvar import_loadConfig = require(\"../vite/loadConfig\");\nvar REACT_NATIVE_CONFIG = `module.exports = require('one/react-native-config')\n`;\nvar REACT_NATIVE_CONFIG_NAMES = [\n \"react-native.config.js\",\n \"react-native.config.cjs\",\n \"react-native.config.mjs\",\n \"react-native.config.ts\"\n];\nasync function run(args) {\n var _packageJson_dependencies, _packageJson_devDependencies;\n var root = process.cwd();\n var packageJson = JSON.parse((0, import_fs.readFileSync)((0, import_path.join)(root, \"package.json\"), \"utf8\"));\n var hasExpo = Object.hasOwn((_packageJson_dependencies = packageJson.dependencies) !== null && _packageJson_dependencies !== void 0 ? _packageJson_dependencies : {}, \"expo\") || Object.hasOwn((_packageJson_devDependencies = packageJson.devDependencies) !== null && _packageJson_devDependencies !== void 0 ? _packageJson_devDependencies : {}, \"expo\");\n if (hasExpo) {\n throw new Error('[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.');\n }\n var { oneOptions } = await (0, import_loadConfig.loadUserOneOptions)(\"build\", true);\n var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;\n var app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\");\n }\n (0, import_appManifest.validateNativeApp)(app);\n var present = REACT_NATIVE_CONFIG_NAMES.filter(function(name) {\n return (0, import_fs.existsSync)((0, import_path.join)(root, name));\n });\n if (present.length === 0) {\n (0, import_fs.writeFileSync)((0, import_path.join)(root, \"react-native.config.cjs\"), REACT_NATIVE_CONFIG);\n } else if (!present.some(function(name) {\n return (0, import_fs.readFileSync)((0, import_path.join)(root, name), \"utf8\").includes(\"one/react-native-config\");\n })) {\n throw new Error(`[one] ${present.join(\", \")} does not load one/react-native-config, so Release builds would run the stock React Native bundler instead of One's. Set it to \\`module.exports = require('one/react-native-config')\\` or spread that into your config, then re-run one prebuild.`);\n }\n var { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":"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"}
@@ -36,7 +36,6 @@ var import_Protected = require("../views/Protected.cjs");
36
36
  var import_Screen = require("../views/Screen.cjs");
37
37
  var import_stack_navigator = require("./stack-navigator.cjs");
38
38
  var import_stack_utils = require("./stack-utils/index.cjs");
39
- var import_StackToolbarBottomHost = require("./stack-utils/StackToolbarBottomHost.cjs");
40
39
  var import_withLayoutContext = require("./withLayoutContext.cjs");
41
40
  var import_jsx_runtime = require("react/jsx-runtime");
42
41
  const NativeStackNavigator = (0, import_stack_navigator.createStackNavigator)().Navigator;
@@ -70,10 +69,13 @@ const StackWithComposition = import_react.default.forwardRef((props, ref) => {
70
69
  const { children, screenOptions, ...rest } = props;
71
70
  const screenOptionsWithHeader = (0, import_react.useMemo)(() => {
72
71
  const stackHeader = import_react.Children.toArray(children).find((child) => (0, import_children.isChildOfType)(child, import_stack_utils.StackHeaderComponent));
73
- const stackToolbar = import_react.Children.toArray(children).find((child) => (0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent));
74
- if (!stackHeader && !stackToolbar) return screenOptions;
72
+ const stackToolbars = import_react.Children.toArray(children).filter((child) => (0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent));
73
+ if (!stackHeader && !stackToolbars.length) return screenOptions;
75
74
  const applyComposition = (opts) => {
76
- let result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(opts, stackToolbar && (0, import_children.isChildOfType)(stackToolbar, import_stack_utils.StackToolbarComponent) ? stackToolbar.props : {});
75
+ let result = opts;
76
+ for (const stackToolbar of stackToolbars) {
77
+ result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(result, stackToolbar.props);
78
+ }
77
79
  if (stackHeader && (0, import_children.isChildOfType)(stackHeader, import_stack_utils.StackHeaderComponent)) {
78
80
  const headerProps = { children: stackHeader };
79
81
  result = (0, import_stack_utils.appendScreenStackPropsToOptions)(result, headerProps);
@@ -102,13 +104,14 @@ const StackWithComposition = import_react.default.forwardRef((props, ref) => {
102
104
  });
103
105
  });
104
106
  const StackToolbar = Object.assign(import_stack_utils.StackToolbarComponent, {
105
- Leading: import_stack_utils.StackToolbarLeading,
106
- Left: import_stack_utils.StackToolbarLeading,
107
- Trailing: import_stack_utils.StackToolbarTrailing,
108
- Right: import_stack_utils.StackToolbarTrailing,
109
- Bottom: import_StackToolbarBottomHost.StackToolbarBottom,
110
- Item: import_stack_utils.StackToolbarItem,
111
- Menu: import_stack_utils.StackToolbarMenu
107
+ Button: import_stack_utils.StackToolbarButton,
108
+ Menu: import_stack_utils.StackToolbarMenu,
109
+ MenuAction: import_stack_utils.StackToolbarMenuAction,
110
+ Spacer: import_stack_utils.StackToolbarSpacer,
111
+ SearchBarSlot: import_stack_utils.StackToolbarSearchBarSlot,
112
+ Label: import_stack_utils.StackToolbarLabel,
113
+ Icon: import_stack_utils.StackToolbarIcon,
114
+ Badge: import_stack_utils.StackToolbarBadge
112
115
  });
113
116
  const Stack = Object.assign(StackWithComposition, {
114
117
  Screen: import_stack_utils.StackScreen,
@@ -39,7 +39,6 @@ var import_Protected = require("../views/Protected.native.js");
39
39
  var import_Screen = require("../views/Screen.native.js");
40
40
  var import_stack_navigator = require("./stack-navigator.native.js");
41
41
  var import_stack_utils = require("./stack-utils/index.native.js");
42
- var import_StackToolbarBottomHost = require("./stack-utils/StackToolbarBottomHost.native.js");
43
42
  var import_withLayoutContext = require("./withLayoutContext.native.js");
44
43
  var NativeStackNavigator = (0, import_stack_navigator.createStackNavigator)().Navigator;
45
44
  var RNStack = (0, import_withLayoutContext.withLayoutContext)(NativeStackNavigator);
@@ -75,12 +74,32 @@ var StackWithComposition = /* @__PURE__ */ import_react.default.forwardRef(funct
75
74
  var stackHeader = import_react.Children.toArray(children).find(function(child) {
76
75
  return (0, import_children.isChildOfType)(child, import_stack_utils.StackHeaderComponent);
77
76
  });
78
- var stackToolbar = import_react.Children.toArray(children).find(function(child) {
77
+ var stackToolbars = import_react.Children.toArray(children).filter(function(child) {
79
78
  return (0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent);
80
79
  });
81
- if (!stackHeader && !stackToolbar) return screenOptions;
80
+ if (!stackHeader && !stackToolbars.length) return screenOptions;
82
81
  var applyComposition = function(opts) {
83
- var result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(opts, stackToolbar && (0, import_children.isChildOfType)(stackToolbar, import_stack_utils.StackToolbarComponent) ? stackToolbar.props : {});
82
+ var result = opts;
83
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
84
+ try {
85
+ for (var _iterator = stackToolbars[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
86
+ var stackToolbar = _step.value;
87
+ result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(result, stackToolbar.props);
88
+ }
89
+ } catch (err) {
90
+ _didIteratorError = true;
91
+ _iteratorError = err;
92
+ } finally {
93
+ try {
94
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
95
+ _iterator.return();
96
+ }
97
+ } finally {
98
+ if (_didIteratorError) {
99
+ throw _iteratorError;
100
+ }
101
+ }
102
+ }
84
103
  if (stackHeader && (0, import_children.isChildOfType)(stackHeader, import_stack_utils.StackHeaderComponent)) {
85
104
  var headerProps = { children: stackHeader };
86
105
  result = (0, import_stack_utils.appendScreenStackPropsToOptions)(result, headerProps);
@@ -116,13 +135,14 @@ var StackWithComposition = /* @__PURE__ */ import_react.default.forwardRef(funct
116
135
  });
117
136
  });
118
137
  var StackToolbar = Object.assign(import_stack_utils.StackToolbarComponent, {
119
- Leading: import_stack_utils.StackToolbarLeading,
120
- Left: import_stack_utils.StackToolbarLeading,
121
- Trailing: import_stack_utils.StackToolbarTrailing,
122
- Right: import_stack_utils.StackToolbarTrailing,
123
- Bottom: import_StackToolbarBottomHost.StackToolbarBottom,
124
- Item: import_stack_utils.StackToolbarItem,
125
- Menu: import_stack_utils.StackToolbarMenu
138
+ Button: import_stack_utils.StackToolbarButton,
139
+ Menu: import_stack_utils.StackToolbarMenu,
140
+ MenuAction: import_stack_utils.StackToolbarMenuAction,
141
+ Spacer: import_stack_utils.StackToolbarSpacer,
142
+ SearchBarSlot: import_stack_utils.StackToolbarSearchBarSlot,
143
+ Label: import_stack_utils.StackToolbarLabel,
144
+ Icon: import_stack_utils.StackToolbarIcon,
145
+ Badge: import_stack_utils.StackToolbarBadge
126
146
  });
127
147
  var Stack = Object.assign(StackWithComposition, {
128
148
  Screen: import_stack_utils.StackScreen,
@@ -39,7 +39,6 @@ var import_Protected = require("../views/Protected.native.js");
39
39
  var import_Screen = require("../views/Screen.native.js");
40
40
  var import_stack_navigator = require("./stack-navigator.native.js");
41
41
  var import_stack_utils = require("./stack-utils/index.native.js");
42
- var import_StackToolbarBottomHost = require("./stack-utils/StackToolbarBottomHost.native.js");
43
42
  var import_withLayoutContext = require("./withLayoutContext.native.js");
44
43
  var NativeStackNavigator = (0, import_stack_navigator.createStackNavigator)().Navigator;
45
44
  var RNStack = (0, import_withLayoutContext.withLayoutContext)(NativeStackNavigator);
@@ -75,12 +74,32 @@ var StackWithComposition = /* @__PURE__ */ import_react.default.forwardRef(funct
75
74
  var stackHeader = import_react.Children.toArray(children).find(function(child) {
76
75
  return (0, import_children.isChildOfType)(child, import_stack_utils.StackHeaderComponent);
77
76
  });
78
- var stackToolbar = import_react.Children.toArray(children).find(function(child) {
77
+ var stackToolbars = import_react.Children.toArray(children).filter(function(child) {
79
78
  return (0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent);
80
79
  });
81
- if (!stackHeader && !stackToolbar) return screenOptions;
80
+ if (!stackHeader && !stackToolbars.length) return screenOptions;
82
81
  var applyComposition = function(opts) {
83
- var result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(opts, stackToolbar && (0, import_children.isChildOfType)(stackToolbar, import_stack_utils.StackToolbarComponent) ? stackToolbar.props : {});
82
+ var result = opts;
83
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
84
+ try {
85
+ for (var _iterator = stackToolbars[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
86
+ var stackToolbar = _step.value;
87
+ result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(result, stackToolbar.props);
88
+ }
89
+ } catch (err) {
90
+ _didIteratorError = true;
91
+ _iteratorError = err;
92
+ } finally {
93
+ try {
94
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
95
+ _iterator.return();
96
+ }
97
+ } finally {
98
+ if (_didIteratorError) {
99
+ throw _iteratorError;
100
+ }
101
+ }
102
+ }
84
103
  if (stackHeader && (0, import_children.isChildOfType)(stackHeader, import_stack_utils.StackHeaderComponent)) {
85
104
  var headerProps = { children: stackHeader };
86
105
  result = (0, import_stack_utils.appendScreenStackPropsToOptions)(result, headerProps);
@@ -116,13 +135,14 @@ var StackWithComposition = /* @__PURE__ */ import_react.default.forwardRef(funct
116
135
  });
117
136
  });
118
137
  var StackToolbar = Object.assign(import_stack_utils.StackToolbarComponent, {
119
- Leading: import_stack_utils.StackToolbarLeading,
120
- Left: import_stack_utils.StackToolbarLeading,
121
- Trailing: import_stack_utils.StackToolbarTrailing,
122
- Right: import_stack_utils.StackToolbarTrailing,
123
- Bottom: import_StackToolbarBottomHost.StackToolbarBottom,
124
- Item: import_stack_utils.StackToolbarItem,
125
- Menu: import_stack_utils.StackToolbarMenu
138
+ Button: import_stack_utils.StackToolbarButton,
139
+ Menu: import_stack_utils.StackToolbarMenu,
140
+ MenuAction: import_stack_utils.StackToolbarMenuAction,
141
+ Spacer: import_stack_utils.StackToolbarSpacer,
142
+ SearchBarSlot: import_stack_utils.StackToolbarSearchBarSlot,
143
+ Label: import_stack_utils.StackToolbarLabel,
144
+ Icon: import_stack_utils.StackToolbarIcon,
145
+ Badge: import_stack_utils.StackToolbarBadge
126
146
  });
127
147
  var Stack = Object.assign(StackWithComposition, {
128
148
  Screen: import_stack_utils.StackScreen,
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.native.js","names":[],"sources":["cjs/layouts/Stack.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar Stack_exports = {};\n__export(Stack_exports, {\n Stack: () => Stack,\n default: () => Stack_default\n});\nmodule.exports = __toCommonJS(Stack_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_react = __toESM(require(\"react\"), 1);\nvar import_children = require(\"../utils/children\");\nvar import_Protected = require(\"../views/Protected\");\nvar import_Screen = require(\"../views/Screen\");\nvar import_stack_navigator = require(\"./stack-navigator\");\nvar import_stack_utils = require(\"./stack-utils\");\nvar import_StackToolbarBottomHost = require(\"./stack-utils/StackToolbarBottomHost\");\nvar import_withLayoutContext = require(\"./withLayoutContext\");\nvar NativeStackNavigator = (0, import_stack_navigator.createStackNavigator)().Navigator;\nvar RNStack = (0, import_withLayoutContext.withLayoutContext)(NativeStackNavigator);\nfunction mapChildren(children) {\n return import_react.Children.toArray(children).map(function(child, index) {\n if ((0, import_children.isChildOfType)(child, import_stack_utils.StackScreen)) {\n var _child_props_name;\n var options = (0, import_stack_utils.appendScreenStackPropsToOptions)({}, child.props);\n var { children: _, ...rest } = child.props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Screen.Screen, {\n ...rest,\n options\n }, (_child_props_name = child.props.name) !== null && _child_props_name !== void 0 ? _child_props_name : index);\n }\n if ((0, import_children.isChildOfType)(child, import_Protected.Protected)) {\n return /* @__PURE__ */ import_react.default.cloneElement(child, {\n key: `protected-${index}`\n }, mapChildren(child.props.children));\n }\n if ((0, import_children.isChildOfType)(child, import_stack_utils.StackHeaderComponent)) {\n return null;\n }\n if ((0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent)) {\n return null;\n }\n if ((0, import_children.isChildOfType)(child, import_Screen.Screen)) {\n return child;\n }\n return null;\n }).filter(Boolean);\n}\nvar StackWithComposition = /* @__PURE__ */ import_react.default.forwardRef(function(props, ref) {\n var { children, screenOptions, ...rest } = props;\n var screenOptionsWithHeader = (0, import_react.useMemo)(function() {\n var stackHeader = import_react.Children.toArray(children).find(function(child) {\n return (0, import_children.isChildOfType)(child, import_stack_utils.StackHeaderComponent);\n });\n var stackToolbar = import_react.Children.toArray(children).find(function(child) {\n return (0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent);\n });\n if (!stackHeader && !stackToolbar) return screenOptions;\n var applyComposition = function(opts) {\n var result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(opts, stackToolbar && (0, import_children.isChildOfType)(stackToolbar, import_stack_utils.StackToolbarComponent) ? stackToolbar.props : {});\n if (stackHeader && (0, import_children.isChildOfType)(stackHeader, import_stack_utils.StackHeaderComponent)) {\n var headerProps = {\n children: stackHeader\n };\n result = (0, import_stack_utils.appendScreenStackPropsToOptions)(result, headerProps);\n }\n return result;\n };\n if (screenOptions) {\n if (typeof screenOptions === \"function\") {\n return function() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var opts = screenOptions(...args);\n return applyComposition(opts);\n };\n }\n return applyComposition(screenOptions);\n }\n return applyComposition({});\n }, [\n children,\n screenOptions\n ]);\n var processedChildren = (0, import_react.useMemo)(function() {\n return mapChildren(children);\n }, [\n children\n ]);\n var navigatorProps = (0, import_react.useMemo)(function() {\n return (0, import_stack_navigator.getStackNavigatorProps)(children);\n }, [\n children\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RNStack, {\n ...rest,\n ...navigatorProps,\n ref,\n screenOptions: screenOptionsWithHeader,\n children: processedChildren\n });\n});\nvar StackToolbar = Object.assign(import_stack_utils.StackToolbarComponent, {\n Leading: import_stack_utils.StackToolbarLeading,\n Left: import_stack_utils.StackToolbarLeading,\n Trailing: import_stack_utils.StackToolbarTrailing,\n Right: import_stack_utils.StackToolbarTrailing,\n Bottom: import_StackToolbarBottomHost.StackToolbarBottom,\n Item: import_stack_utils.StackToolbarItem,\n Menu: import_stack_utils.StackToolbarMenu\n});\nvar Stack = Object.assign(StackWithComposition, {\n Screen: import_stack_utils.StackScreen,\n Header: import_stack_utils.StackHeader,\n Toolbar: StackToolbar,\n Protected: import_Protected.Protected,\n SearchBar: import_stack_utils.StackHeaderSearchBar\n});\nvar Stack_default = Stack;\n//# sourceMappingURL=Stack.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"Stack.native.js","names":[],"sources":["cjs/layouts/Stack.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar Stack_exports = {};\n__export(Stack_exports, {\n Stack: () => Stack,\n default: () => Stack_default\n});\nmodule.exports = __toCommonJS(Stack_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_react = __toESM(require(\"react\"), 1);\nvar import_children = require(\"../utils/children\");\nvar import_Protected = require(\"../views/Protected\");\nvar import_Screen = require(\"../views/Screen\");\nvar import_stack_navigator = require(\"./stack-navigator\");\nvar import_stack_utils = require(\"./stack-utils\");\nvar import_withLayoutContext = require(\"./withLayoutContext\");\nvar NativeStackNavigator = (0, import_stack_navigator.createStackNavigator)().Navigator;\nvar RNStack = (0, import_withLayoutContext.withLayoutContext)(NativeStackNavigator);\nfunction mapChildren(children) {\n return import_react.Children.toArray(children).map(function(child, index) {\n if ((0, import_children.isChildOfType)(child, import_stack_utils.StackScreen)) {\n var _child_props_name;\n var options = (0, import_stack_utils.appendScreenStackPropsToOptions)({}, child.props);\n var { children: _, ...rest } = child.props;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Screen.Screen, {\n ...rest,\n options\n }, (_child_props_name = child.props.name) !== null && _child_props_name !== void 0 ? _child_props_name : index);\n }\n if ((0, import_children.isChildOfType)(child, import_Protected.Protected)) {\n return /* @__PURE__ */ import_react.default.cloneElement(child, {\n key: `protected-${index}`\n }, mapChildren(child.props.children));\n }\n if ((0, import_children.isChildOfType)(child, import_stack_utils.StackHeaderComponent)) {\n return null;\n }\n if ((0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent)) {\n return null;\n }\n if ((0, import_children.isChildOfType)(child, import_Screen.Screen)) {\n return child;\n }\n return null;\n }).filter(Boolean);\n}\nvar StackWithComposition = /* @__PURE__ */ import_react.default.forwardRef(function(props, ref) {\n var { children, screenOptions, ...rest } = props;\n var screenOptionsWithHeader = (0, import_react.useMemo)(function() {\n var stackHeader = import_react.Children.toArray(children).find(function(child) {\n return (0, import_children.isChildOfType)(child, import_stack_utils.StackHeaderComponent);\n });\n var stackToolbars = import_react.Children.toArray(children).filter(function(child) {\n return (0, import_children.isChildOfType)(child, import_stack_utils.StackToolbarComponent);\n });\n if (!stackHeader && !stackToolbars.length) return screenOptions;\n var applyComposition = function(opts) {\n var result = opts;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = stackToolbars[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var stackToolbar = _step.value;\n result = (0, import_stack_utils.appendStackToolbarPropsToOptions)(result, stackToolbar.props);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n if (stackHeader && (0, import_children.isChildOfType)(stackHeader, import_stack_utils.StackHeaderComponent)) {\n var headerProps = {\n children: stackHeader\n };\n result = (0, import_stack_utils.appendScreenStackPropsToOptions)(result, headerProps);\n }\n return result;\n };\n if (screenOptions) {\n if (typeof screenOptions === \"function\") {\n return function() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var opts = screenOptions(...args);\n return applyComposition(opts);\n };\n }\n return applyComposition(screenOptions);\n }\n return applyComposition({});\n }, [\n children,\n screenOptions\n ]);\n var processedChildren = (0, import_react.useMemo)(function() {\n return mapChildren(children);\n }, [\n children\n ]);\n var navigatorProps = (0, import_react.useMemo)(function() {\n return (0, import_stack_navigator.getStackNavigatorProps)(children);\n }, [\n children\n ]);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RNStack, {\n ...rest,\n ...navigatorProps,\n ref,\n screenOptions: screenOptionsWithHeader,\n children: processedChildren\n });\n});\nvar StackToolbar = Object.assign(import_stack_utils.StackToolbarComponent, {\n Button: import_stack_utils.StackToolbarButton,\n Menu: import_stack_utils.StackToolbarMenu,\n MenuAction: import_stack_utils.StackToolbarMenuAction,\n Spacer: import_stack_utils.StackToolbarSpacer,\n SearchBarSlot: import_stack_utils.StackToolbarSearchBarSlot,\n Label: import_stack_utils.StackToolbarLabel,\n Icon: import_stack_utils.StackToolbarIcon,\n Badge: import_stack_utils.StackToolbarBadge\n});\nvar Stack = Object.assign(StackWithComposition, {\n Screen: import_stack_utils.StackScreen,\n Header: import_stack_utils.StackHeader,\n Toolbar: StackToolbar,\n Protected: import_Protected.Protected,\n SearchBar: import_stack_utils.StackHeaderSearchBar\n});\nvar Stack_default = Stack;\n//# sourceMappingURL=Stack.js.map\n"],"mappings":"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"}
@@ -20,40 +20,83 @@ var __copyProps = (to, from, except, desc) => {
20
20
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
21
  var StackToolbar_exports = {};
22
22
  __export(StackToolbar_exports, {
23
+ StackToolbarBadge: () => StackToolbarBadge,
24
+ StackToolbarButton: () => StackToolbarButton,
23
25
  StackToolbarComponent: () => StackToolbarComponent,
24
- StackToolbarItem: () => StackToolbarItem,
25
- StackToolbarLeading: () => StackToolbarLeading,
26
+ StackToolbarIcon: () => StackToolbarIcon,
27
+ StackToolbarLabel: () => StackToolbarLabel,
26
28
  StackToolbarMenu: () => StackToolbarMenu,
27
- StackToolbarTrailing: () => StackToolbarTrailing,
28
- appendStackToolbarPropsToOptions: () => import_stackToolbarDescriptors2.appendStackToolbarPropsToOptions
29
+ StackToolbarMenuAction: () => StackToolbarMenuAction,
30
+ StackToolbarSearchBarSlot: () => StackToolbarSearchBarSlot,
31
+ StackToolbarSpacer: () => StackToolbarSpacer,
32
+ appendStackToolbarPropsToOptions: () => import_stackToolbarDescriptors2.appendStackToolbarPropsToOptions,
33
+ isToolbarKind: () => import_stackToolbarDescriptors.isToolbarKind
29
34
  });
30
35
  module.exports = __toCommonJS(StackToolbar_exports);
36
+ var import_react = require("react");
37
+ var import_native = require("@react-navigation/native");
31
38
  var import_children = require("../../headless/children.cjs");
39
+ var import_platform = require("../../utils/platform.cjs");
32
40
  var import_stackToolbarDescriptors = require("./stackToolbarDescriptors.cjs");
41
+ var import_StackToolbarBottomHost = require("./StackToolbarBottomHost.cjs");
33
42
  var import_stackToolbarDescriptors2 = require("./stackToolbarDescriptors.cjs");
43
+ var import_jsx_runtime = require("react/jsx-runtime");
34
44
  function mark(component, kind) {
35
45
  return Object.assign(component, {
36
46
  [import_children.NAVIGATOR_CONFIG]: true,
37
47
  [import_stackToolbarDescriptors.TOOLBAR_KIND]: kind
38
48
  });
39
49
  }
40
- function StackToolbarComponent(_props) {
41
- return null;
50
+ function StackToolbarComponent(props) {
51
+ const placement = props.placement ?? "bottom";
52
+ if (placement === "bottom") {
53
+ if (import_platform.PLATFORM !== "ios") return null;
54
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_StackToolbarBottomHost.BottomToolbarHost, { children: props.children });
55
+ }
56
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StackToolbarHeaderOptions, { props });
42
57
  }
43
58
  mark(StackToolbarComponent, "toolbar");
44
- function StackToolbarLeading(_props) {
45
- return null;
46
- }
47
- mark(StackToolbarLeading, "leading");
48
- function StackToolbarTrailing(_props) {
59
+ function StackToolbarHeaderOptions({ props }) {
60
+ const navigation = (0, import_native.useNavigation)();
61
+ const options = (0, import_react.useMemo)(() => (0, import_stackToolbarDescriptors.appendStackToolbarPropsToOptions)({}, props), [
62
+ props.children,
63
+ props.placement,
64
+ props.asChild
65
+ ]);
66
+ (0, import_react.useEffect)(() => {
67
+ navigation.setOptions(options);
68
+ }, [navigation, options]);
49
69
  return null;
50
70
  }
51
- mark(StackToolbarTrailing, "trailing");
52
- function StackToolbarItem(_props) {
71
+ function StackToolbarButton(_props) {
53
72
  return null;
54
73
  }
55
- mark(StackToolbarItem, "item");
74
+ mark(StackToolbarButton, "button");
56
75
  function StackToolbarMenu(_props) {
57
76
  return null;
58
77
  }
59
78
  mark(StackToolbarMenu, "menu");
79
+ function StackToolbarMenuAction(_props) {
80
+ return null;
81
+ }
82
+ mark(StackToolbarMenuAction, "menuAction");
83
+ function StackToolbarSpacer(_props) {
84
+ return null;
85
+ }
86
+ mark(StackToolbarSpacer, "spacer");
87
+ function StackToolbarSearchBarSlot(_props) {
88
+ return null;
89
+ }
90
+ mark(StackToolbarSearchBarSlot, "searchBarSlot");
91
+ function StackToolbarLabel(_props) {
92
+ return null;
93
+ }
94
+ mark(StackToolbarLabel, "label");
95
+ function StackToolbarIcon(_props) {
96
+ return null;
97
+ }
98
+ mark(StackToolbarIcon, "icon");
99
+ function StackToolbarBadge(_props) {
100
+ return null;
101
+ }
102
+ mark(StackToolbarBadge, "badge");
@@ -22,16 +22,26 @@ var __copyProps = (to, from, except, desc) => {
22
22
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
23
23
  var StackToolbar_exports = {};
24
24
  __export(StackToolbar_exports, {
25
+ StackToolbarBadge: () => StackToolbarBadge,
26
+ StackToolbarButton: () => StackToolbarButton,
25
27
  StackToolbarComponent: () => StackToolbarComponent,
26
- StackToolbarItem: () => StackToolbarItem,
27
- StackToolbarLeading: () => StackToolbarLeading,
28
+ StackToolbarIcon: () => StackToolbarIcon,
29
+ StackToolbarLabel: () => StackToolbarLabel,
28
30
  StackToolbarMenu: () => StackToolbarMenu,
29
- StackToolbarTrailing: () => StackToolbarTrailing,
30
- appendStackToolbarPropsToOptions: () => import_stackToolbarDescriptors2.appendStackToolbarPropsToOptions
31
+ StackToolbarMenuAction: () => StackToolbarMenuAction,
32
+ StackToolbarSearchBarSlot: () => StackToolbarSearchBarSlot,
33
+ StackToolbarSpacer: () => StackToolbarSpacer,
34
+ appendStackToolbarPropsToOptions: () => import_stackToolbarDescriptors2.appendStackToolbarPropsToOptions,
35
+ isToolbarKind: () => import_stackToolbarDescriptors.isToolbarKind
31
36
  });
32
37
  module.exports = __toCommonJS(StackToolbar_exports);
38
+ var import_jsx_runtime = require("react/jsx-runtime");
39
+ var import_react = require("react");
40
+ var import_native = require("@react-navigation/native");
33
41
  var import_children = require("../../headless/children.native.js");
42
+ var import_platform = require("../../utils/platform.native.js");
34
43
  var import_stackToolbarDescriptors = require("./stackToolbarDescriptors.native.js");
44
+ var import_StackToolbarBottomHost = require("./StackToolbarBottomHost.native.js");
35
45
  var import_stackToolbarDescriptors2 = require("./stackToolbarDescriptors.native.js");
36
46
  function mark(component, kind) {
37
47
  return Object.assign(component, {
@@ -39,23 +49,60 @@ function mark(component, kind) {
39
49
  [import_stackToolbarDescriptors.TOOLBAR_KIND]: kind
40
50
  });
41
51
  }
42
- function StackToolbarComponent(_props) {
43
- return null;
52
+ function StackToolbarComponent(props) {
53
+ var _props_placement;
54
+ var placement = (_props_placement = props.placement) !== null && _props_placement !== void 0 ? _props_placement : "bottom";
55
+ if (placement === "bottom") {
56
+ if (import_platform.PLATFORM !== "ios") return null;
57
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_StackToolbarBottomHost.BottomToolbarHost, { children: props.children });
58
+ }
59
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StackToolbarHeaderOptions, { props });
44
60
  }
45
61
  mark(StackToolbarComponent, "toolbar");
46
- function StackToolbarLeading(_props) {
47
- return null;
48
- }
49
- mark(StackToolbarLeading, "leading");
50
- function StackToolbarTrailing(_props) {
62
+ function StackToolbarHeaderOptions(param) {
63
+ var { props } = param;
64
+ var navigation = (0, import_native.useNavigation)();
65
+ var options = (0, import_react.useMemo)(function() {
66
+ return (0, import_stackToolbarDescriptors.appendStackToolbarPropsToOptions)({}, props);
67
+ }, [
68
+ props.children,
69
+ props.placement,
70
+ props.asChild
71
+ ]);
72
+ (0, import_react.useEffect)(function() {
73
+ navigation.setOptions(options);
74
+ }, [navigation, options]);
51
75
  return null;
52
76
  }
53
- mark(StackToolbarTrailing, "trailing");
54
- function StackToolbarItem(_props) {
77
+ function StackToolbarButton(_props) {
55
78
  return null;
56
79
  }
57
- mark(StackToolbarItem, "item");
80
+ mark(StackToolbarButton, "button");
58
81
  function StackToolbarMenu(_props) {
59
82
  return null;
60
83
  }
61
84
  mark(StackToolbarMenu, "menu");
85
+ function StackToolbarMenuAction(_props) {
86
+ return null;
87
+ }
88
+ mark(StackToolbarMenuAction, "menuAction");
89
+ function StackToolbarSpacer(_props) {
90
+ return null;
91
+ }
92
+ mark(StackToolbarSpacer, "spacer");
93
+ function StackToolbarSearchBarSlot(_props) {
94
+ return null;
95
+ }
96
+ mark(StackToolbarSearchBarSlot, "searchBarSlot");
97
+ function StackToolbarLabel(_props) {
98
+ return null;
99
+ }
100
+ mark(StackToolbarLabel, "label");
101
+ function StackToolbarIcon(_props) {
102
+ return null;
103
+ }
104
+ mark(StackToolbarIcon, "icon");
105
+ function StackToolbarBadge(_props) {
106
+ return null;
107
+ }
108
+ mark(StackToolbarBadge, "badge");