one 2.0.0-beta.107.1 → 2.0.0-beta.108.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.
@@ -505,11 +505,18 @@ extension View {
505
505
  }
506
506
  }
507
507
 
508
+ // every TabContent modifier the SDK declares, applied only where the React side set it. each
509
+ // conditional modifier carries its content in both branches, so the chain's concrete type doubles
510
+ // per modifier. inline, that type spelled out the whole tab (and each section around its tabs) 2^n
511
+ // times, and the swift runtime spent most of a minute demangling it before the first frame. inside
512
+ // this struct the chain names its content once, as a generic parameter.
508
513
  @available(iOS 18.0, *)
509
- extension TabContent where TabValue == String {
510
- // every TabContent modifier the SDK declares, applied only where the React side set it.
511
- func oneNativeTabContent(_ m: OneNativeTabModifiers) -> some TabContent<String> {
512
- self
514
+ struct OneNativeTabModified<Content: TabContent>: TabContent where Content.TabValue == String {
515
+ let content: Content
516
+ let m: OneNativeTabModifiers
517
+
518
+ var body: some TabContent<String> {
519
+ content
513
520
  .hidden(m.hidden ?? false)
514
521
  .accessibilityLabel(Text(m.accessibilityLabel ?? ""), isEnabled: m.accessibilityLabel != nil)
515
522
  .accessibilityHint(Text(m.accessibilityHint ?? ""), isEnabled: m.accessibilityHint != nil)
@@ -524,6 +531,13 @@ extension TabContent where TabValue == String {
524
531
  .oneNativeDefaultSectionExpansion(m.defaultSectionExpansion)
525
532
  .oneNativeHelp(m.help)
526
533
  }
534
+ }
535
+
536
+ @available(iOS 18.0, *)
537
+ extension TabContent where TabValue == String {
538
+ func oneNativeTabContent(_ m: OneNativeTabModifiers) -> OneNativeTabModified<Self> {
539
+ OneNativeTabModified(content: self, m: m)
540
+ }
527
541
 
528
542
  @TabContentBuilder<String>
529
543
  func oneNativeDisabled(_ disabled: Bool?) -> some TabContent<String> {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "2.0.0-beta.107.1",
3
+ "version": "2.0.0-beta.108.1",
4
4
  "description": "One is a React framework for web, iOS, and Android apps.",
5
5
  "license": "BSD-3-Clause",
6
6
  "sideEffects": [
@@ -207,18 +207,18 @@
207
207
  "@react-navigation/native-stack": "~8.0.0-alpha.52",
208
208
  "@react-navigation/routers": "~8.0.0-alpha.17",
209
209
  "@ungap/structured-clone": "^1.2.0",
210
- "@vxrn/color-scheme": "2.0.0-beta.107.1",
211
- "@vxrn/compiler": "2.0.0-beta.107.1",
212
- "@vxrn/resolve": "2.0.0-beta.107.1",
213
- "@vxrn/tslib-lite": "2.0.0-beta.107.1",
214
- "@vxrn/use-isomorphic-layout-effect": "2.0.0-beta.107.1",
215
- "@vxrn/utils": "2.0.0-beta.107.1",
216
- "@vxrn/vite-plugin-metro": "2.0.0-beta.107.1",
210
+ "@vxrn/color-scheme": "2.0.0-beta.108.1",
211
+ "@vxrn/compiler": "2.0.0-beta.108.1",
212
+ "@vxrn/resolve": "2.0.0-beta.108.1",
213
+ "@vxrn/tslib-lite": "2.0.0-beta.108.1",
214
+ "@vxrn/use-isomorphic-layout-effect": "2.0.0-beta.108.1",
215
+ "@vxrn/utils": "2.0.0-beta.108.1",
216
+ "@vxrn/vite-plugin-metro": "2.0.0-beta.108.1",
217
217
  "babel-dead-code-elimination": "1.0.10",
218
218
  "babel-plugin-module-resolver": "^5.0.2",
219
219
  "citty": "^0.1.6",
220
220
  "core-js": "^3.38.1",
221
- "create-vxrn": "2.0.0-beta.107.1",
221
+ "create-vxrn": "2.0.0-beta.108.1",
222
222
  "escape-string-regexp": "^5.0.0",
223
223
  "fast-deep-equal": "^3.1.3",
224
224
  "fast-glob": "^3.3.3",
@@ -240,7 +240,7 @@
240
240
  "tsconfig-paths": "^4",
241
241
  "use-latest-callback": "^0.2.3",
242
242
  "vite": "^8.2.2",
243
- "vxrn": "2.0.0-beta.107.1",
243
+ "vxrn": "2.0.0-beta.108.1",
244
244
  "web-streams-polyfill": "^4.3.0",
245
245
  "ws": "^8.21.0",
246
246
  "xxhashjs": "^0.2.2"