expo-router 7.0.0-canary-20251206-615dec1 → 7.0.0-canary-20251210-1f163e3
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.
- package/android/build.gradle +2 -2
- package/build/ExpoRoot.d.ts.map +1 -1
- package/build/ExpoRoot.js +2 -1
- package/build/ExpoRoot.js.map +1 -1
- package/build/color/android.dynamic.types.d.ts +3 -3
- package/build/color/android.dynamic.types.js.map +1 -1
- package/build/color/android.material.types.d.ts +3 -3
- package/build/color/android.material.types.js.map +1 -1
- package/build/fork/getPathFromState.d.ts.map +1 -1
- package/build/fork/getPathFromState.js +2 -1
- package/build/fork/getPathFromState.js.map +1 -1
- package/build/fork/getStateFromPath-forks.d.ts.map +1 -1
- package/build/fork/getStateFromPath-forks.js +3 -7
- package/build/fork/getStateFromPath-forks.js.map +1 -1
- package/build/link/Link.d.ts +2 -0
- package/build/link/Link.d.ts.map +1 -1
- package/build/link/Link.js +2 -0
- package/build/link/Link.js.map +1 -1
- package/build/link/elements.d.ts +15 -4
- package/build/link/elements.d.ts.map +1 -1
- package/build/link/elements.js +7 -2
- package/build/link/elements.js.map +1 -1
- package/build/link/preview/native.d.ts +5 -1
- package/build/link/preview/native.d.ts.map +1 -1
- package/build/link/preview/native.js +12 -1
- package/build/link/preview/native.js.map +1 -1
- package/build/link/useLinkHooks.d.ts +1 -1
- package/build/link/zoom/link-apple-zoom-target.d.ts +3 -0
- package/build/link/zoom/link-apple-zoom-target.d.ts.map +1 -0
- package/build/link/zoom/link-apple-zoom-target.js +20 -0
- package/build/link/zoom/link-apple-zoom-target.js.map +1 -0
- package/build/link/zoom/useZoomTransitionPrimitives.ios.d.ts.map +1 -1
- package/build/link/zoom/useZoomTransitionPrimitives.ios.js +4 -1
- package/build/link/zoom/useZoomTransitionPrimitives.ios.js.map +1 -1
- package/build/link/zoom/zoom-transition-context.d.ts +7 -0
- package/build/link/zoom/zoom-transition-context.d.ts.map +1 -1
- package/build/link/zoom/zoom-transition-context.js +32 -1
- package/build/link/zoom/zoom-transition-context.js.map +1 -1
- package/build/loaders/utils.d.ts.map +1 -1
- package/build/loaders/utils.js +2 -1
- package/build/loaders/utils.js.map +1 -1
- package/build/native-tabs/NativeTabTrigger.d.ts +1 -1
- package/build/native-tabs/NativeTabTrigger.d.ts.map +1 -1
- package/build/native-tabs/NativeTabTrigger.js +5 -6
- package/build/native-tabs/NativeTabTrigger.js.map +1 -1
- package/build/native-tabs/NativeTabsView.web.js +1 -1
- package/build/native-tabs/NativeTabsView.web.js.map +1 -1
- package/build/typed-routes/types.d.ts +4 -1
- package/build/typed-routes/types.d.ts.map +1 -1
- package/build/typed-routes/types.js.map +1 -1
- package/build/useScreens.d.ts.map +1 -1
- package/build/useScreens.js +6 -3
- package/build/useScreens.js.map +1 -1
- package/build/utils/url.d.ts +1 -0
- package/build/utils/url.d.ts.map +1 -1
- package/build/utils/url.js +9 -0
- package/build/utils/url.js.map +1 -1
- package/expo-module.config.json +1 -1
- package/ios/LinkPreview/LinkPreviewNativeActionView.swift +1 -1
- package/ios/LinkPreview/LinkPreviewNativeModule.swift +11 -0
- package/ios/LinkPreview/LinkZoomTransition.swift +126 -15
- package/ios/Toolbar/RouterToolbarHostView.swift +5 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.module → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.module} +7 -7
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.module.md5 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.module.sha1 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.module.sha256 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.module.sha512 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.pom → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.pom} +1 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.pom.md5 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.pom.sha1 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.pom.sha256 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.pom.sha512 +1 -0
- package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml +4 -4
- package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.md5 +1 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.sha1 +1 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.sha256 +1 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/maven-metadata.xml.sha512 +1 -1
- package/package.json +10 -10
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.module.md5 +0 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.module.sha1 +0 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.module.sha256 +0 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.module.sha512 +0 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.pom.md5 +0 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.pom.sha1 +0 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.pom.sha256 +0 -1
- package/local-maven-repo/expo/modules/router/expo.modules.router/7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.pom.sha512 +0 -1
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1-sources.jar → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3-sources.jar} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1-sources.jar.md5 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3-sources.jar.md5} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1-sources.jar.sha1 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3-sources.jar.sha1} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1-sources.jar.sha256 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3-sources.jar.sha256} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1-sources.jar.sha512 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3-sources.jar.sha512} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.aar → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.aar} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.aar.md5 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.aar.md5} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.aar.sha1 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.aar.sha1} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.aar.sha256 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.aar.sha256} +0 -0
- /package/local-maven-repo/expo/modules/router/expo.modules.router/{7.0.0-canary-20251206-615dec1/expo.modules.router-7.0.0-canary-20251206-615dec1.aar.sha512 → 7.0.0-canary-20251210-1f163e3/expo.modules.router-7.0.0-canary-20251210-1f163e3.aar.sha512} +0 -0
|
@@ -6,7 +6,7 @@ class LinkSourceInfo {
|
|
|
6
6
|
let alignment: CGRect?
|
|
7
7
|
weak var view: UIView?
|
|
8
8
|
|
|
9
|
-
init(
|
|
9
|
+
init(view: UIView, alignment: CGRect?) {
|
|
10
10
|
self.alignment = alignment
|
|
11
11
|
self.view = view
|
|
12
12
|
}
|
|
@@ -68,13 +68,56 @@ class LinkZoomTransitionsSourceRepository {
|
|
|
68
68
|
defer { lock.unlock() }
|
|
69
69
|
if let source = sources[identifier], let view = source.view, !identifier.isEmpty {
|
|
70
70
|
sources[identifier] = LinkSourceInfo(
|
|
71
|
+
view: view,
|
|
71
72
|
alignment: alignment,
|
|
72
|
-
view: view
|
|
73
73
|
)
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
+
class LinkZoomTransitionsAlignmentViewRepository {
|
|
79
|
+
private var alignmentViews: [String: WeakUIView] = [:]
|
|
80
|
+
private let lock = NSLock()
|
|
81
|
+
|
|
82
|
+
init() {}
|
|
83
|
+
|
|
84
|
+
func addIfNotExists(
|
|
85
|
+
identifier: String,
|
|
86
|
+
alignmentView: UIView
|
|
87
|
+
) {
|
|
88
|
+
lock.lock()
|
|
89
|
+
defer { lock.unlock() }
|
|
90
|
+
if alignmentViews[identifier] == nil && !identifier.isEmpty {
|
|
91
|
+
alignmentViews[identifier] = WeakUIView(view: alignmentView)
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
func removeIfSame(
|
|
96
|
+
identifier: String,
|
|
97
|
+
alignmentView: UIView
|
|
98
|
+
) {
|
|
99
|
+
lock.lock()
|
|
100
|
+
defer { lock.unlock() }
|
|
101
|
+
if let existing = alignmentViews[identifier], existing.view === alignmentView {
|
|
102
|
+
alignmentViews.removeValue(forKey: identifier)
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
func get(identifier: String) -> UIView? {
|
|
107
|
+
lock.lock()
|
|
108
|
+
defer { lock.unlock() }
|
|
109
|
+
return alignmentViews[identifier]?.view
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
private class WeakUIView {
|
|
113
|
+
weak var view: UIView?
|
|
114
|
+
|
|
115
|
+
init(view: UIView) {
|
|
116
|
+
self.view = view
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
78
121
|
class LinkZoomTransitionSource: LinkZoomExpoView, LinkPreviewIndirectTriggerProtocol {
|
|
79
122
|
var child: UIView?
|
|
80
123
|
|
|
@@ -84,9 +127,9 @@ class LinkZoomTransitionSource: LinkZoomExpoView, LinkPreviewIndirectTriggerProt
|
|
|
84
127
|
|
|
85
128
|
var alignment: CGRect? {
|
|
86
129
|
didSet {
|
|
87
|
-
// Update alignment info in the
|
|
130
|
+
// Update alignment info in the sourceRepository
|
|
88
131
|
if child != nil {
|
|
89
|
-
|
|
132
|
+
sourceRepository?.updateAlignment(
|
|
90
133
|
identifier: identifier,
|
|
91
134
|
alignment: alignment
|
|
92
135
|
)
|
|
@@ -99,18 +142,18 @@ class LinkZoomTransitionSource: LinkZoomExpoView, LinkPreviewIndirectTriggerProt
|
|
|
99
142
|
guard identifier != oldValue else { return }
|
|
100
143
|
if let child {
|
|
101
144
|
if oldValue.isEmpty {
|
|
102
|
-
|
|
145
|
+
sourceRepository?.registerSource(
|
|
103
146
|
identifier: identifier,
|
|
104
|
-
source: LinkSourceInfo(
|
|
147
|
+
source: LinkSourceInfo(view: child, alignment: alignment)
|
|
105
148
|
)
|
|
106
149
|
} else {
|
|
107
|
-
|
|
150
|
+
sourceRepository?.updateIdentifier(
|
|
108
151
|
oldIdentifier: oldValue,
|
|
109
152
|
newIdentifier: identifier
|
|
110
153
|
)
|
|
111
154
|
}
|
|
112
155
|
} else {
|
|
113
|
-
|
|
156
|
+
sourceRepository?.unregisterSource(
|
|
114
157
|
identifier: oldValue
|
|
115
158
|
)
|
|
116
159
|
}
|
|
@@ -128,9 +171,9 @@ class LinkZoomTransitionSource: LinkZoomExpoView, LinkPreviewIndirectTriggerProt
|
|
|
128
171
|
return
|
|
129
172
|
}
|
|
130
173
|
child = childComponentView
|
|
131
|
-
|
|
174
|
+
sourceRepository?.registerSource(
|
|
132
175
|
identifier: identifier,
|
|
133
|
-
source: LinkSourceInfo(
|
|
176
|
+
source: LinkSourceInfo(view: childComponentView, alignment: alignment)
|
|
134
177
|
)
|
|
135
178
|
super.mountChildComponentView(childComponentView, index: index)
|
|
136
179
|
}
|
|
@@ -138,7 +181,7 @@ class LinkZoomTransitionSource: LinkZoomExpoView, LinkPreviewIndirectTriggerProt
|
|
|
138
181
|
override func unmountChildComponentView(_ child: UIView, index: Int) {
|
|
139
182
|
if child == self.child {
|
|
140
183
|
self.child = nil
|
|
141
|
-
|
|
184
|
+
sourceRepository?.unregisterSource(
|
|
142
185
|
identifier: identifier
|
|
143
186
|
)
|
|
144
187
|
}
|
|
@@ -146,6 +189,58 @@ class LinkZoomTransitionSource: LinkZoomExpoView, LinkPreviewIndirectTriggerProt
|
|
|
146
189
|
}
|
|
147
190
|
}
|
|
148
191
|
|
|
192
|
+
class LinkZoomTransitionAlignmentRectDetector: LinkZoomExpoView {
|
|
193
|
+
private var child: UIView?
|
|
194
|
+
|
|
195
|
+
var identifier: String = "" {
|
|
196
|
+
didSet {
|
|
197
|
+
if oldValue != identifier && !oldValue.isEmpty {
|
|
198
|
+
print(
|
|
199
|
+
"[expo-router] LinkZoomTransitionAlignmentRectDetector does not support changing the identifier after it has been set."
|
|
200
|
+
)
|
|
201
|
+
return
|
|
202
|
+
}
|
|
203
|
+
if let child = child {
|
|
204
|
+
alignmentViewRepository?.addIfNotExists(
|
|
205
|
+
identifier: identifier,
|
|
206
|
+
alignmentView: child
|
|
207
|
+
)
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
override func mountChildComponentView(
|
|
213
|
+
_ childComponentView: UIView,
|
|
214
|
+
index: Int
|
|
215
|
+
) {
|
|
216
|
+
if child != nil {
|
|
217
|
+
print(
|
|
218
|
+
"[expo-router] LinkZoomTransitionAlignmentRectDetector can only have one child view."
|
|
219
|
+
)
|
|
220
|
+
return
|
|
221
|
+
}
|
|
222
|
+
if !identifier.isEmpty {
|
|
223
|
+
alignmentViewRepository?.addIfNotExists(
|
|
224
|
+
identifier: identifier,
|
|
225
|
+
alignmentView: childComponentView
|
|
226
|
+
)
|
|
227
|
+
}
|
|
228
|
+
self.child = childComponentView
|
|
229
|
+
super.mountChildComponentView(childComponentView, index: index)
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
override func unmountChildComponentView(_ child: UIView, index: Int) {
|
|
233
|
+
if child == self.child {
|
|
234
|
+
self.child = nil
|
|
235
|
+
alignmentViewRepository?.removeIfSame(
|
|
236
|
+
identifier: identifier,
|
|
237
|
+
alignmentView: child
|
|
238
|
+
)
|
|
239
|
+
}
|
|
240
|
+
super.unmountChildComponentView(child, index: index)
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
149
244
|
class LinkZoomTransitionEnabler: LinkZoomExpoView {
|
|
150
245
|
var zoomTransitionSourceIdentifier: String = ""
|
|
151
246
|
var isPreventingInteractiveDismissal: Bool = false
|
|
@@ -169,16 +264,24 @@ class LinkZoomTransitionEnabler: LinkZoomExpoView {
|
|
|
169
264
|
if #available(iOS 18.0, *) {
|
|
170
265
|
let options = UIViewController.Transition.ZoomOptions()
|
|
171
266
|
|
|
172
|
-
options.alignmentRectProvider = {
|
|
173
|
-
let sourceInfo = self.
|
|
267
|
+
options.alignmentRectProvider = { context in
|
|
268
|
+
let sourceInfo = self.sourceRepository?.getSource(
|
|
174
269
|
identifier: self.zoomTransitionSourceIdentifier)
|
|
270
|
+
let alignmentView = self.alignmentViewRepository?.get(
|
|
271
|
+
identifier: self.zoomTransitionSourceIdentifier)
|
|
272
|
+
if let alignmentView = alignmentView {
|
|
273
|
+
return alignmentView.convert(
|
|
274
|
+
alignmentView.bounds,
|
|
275
|
+
to: context.zoomedViewController.view
|
|
276
|
+
)
|
|
277
|
+
}
|
|
175
278
|
return sourceInfo?.alignment
|
|
176
279
|
}
|
|
177
280
|
options.interactiveDismissShouldBegin = { _ in
|
|
178
281
|
!self.isPreventingInteractiveDismissal
|
|
179
282
|
}
|
|
180
283
|
controller.preferredTransition = .zoom(options: options) { _ in
|
|
181
|
-
let sourceInfo = self.
|
|
284
|
+
let sourceInfo = self.sourceRepository?.getSource(
|
|
182
285
|
identifier: self.zoomTransitionSourceIdentifier)
|
|
183
286
|
var view: UIView? = sourceInfo?.view
|
|
184
287
|
if let linkPreviewView = view as? NativeLinkPreviewView {
|
|
@@ -217,11 +320,19 @@ class LinkZoomExpoView: ExpoView {
|
|
|
217
320
|
as? LinkPreviewNativeModule
|
|
218
321
|
}
|
|
219
322
|
|
|
220
|
-
var
|
|
323
|
+
var sourceRepository: LinkZoomTransitionsSourceRepository? {
|
|
221
324
|
guard let module else {
|
|
222
325
|
print("[expo-router] LinkPreviewNativeModule not loaded")
|
|
223
326
|
return nil
|
|
224
327
|
}
|
|
225
328
|
return module.zoomSourceRepository
|
|
226
329
|
}
|
|
330
|
+
|
|
331
|
+
var alignmentViewRepository: LinkZoomTransitionsAlignmentViewRepository? {
|
|
332
|
+
guard let module else {
|
|
333
|
+
print("[expo-router] LinkPreviewNativeModule not loaded")
|
|
334
|
+
return nil
|
|
335
|
+
}
|
|
336
|
+
return module.zoomAlignmentViewRepository
|
|
337
|
+
}
|
|
227
338
|
}
|
|
@@ -57,12 +57,15 @@ class RouterToolbarHostView: ExpoView, LinkPreviewMenuUpdatable {
|
|
|
57
57
|
return item.barButtonItem
|
|
58
58
|
}
|
|
59
59
|
if let menu = menuItemsMap[$0] {
|
|
60
|
-
|
|
60
|
+
let item = UIBarButtonItem(
|
|
61
61
|
title: menu.title,
|
|
62
62
|
image: menu.icon.flatMap { UIImage(systemName: $0) },
|
|
63
63
|
primaryAction: nil,
|
|
64
64
|
menu: menu.uiAction as? UIMenu
|
|
65
65
|
)
|
|
66
|
+
// Otherwise, the menu items will be reversed in the toolbar
|
|
67
|
+
item.preferredMenuElementOrder = .fixed
|
|
68
|
+
return item
|
|
66
69
|
}
|
|
67
70
|
print(
|
|
68
71
|
"[expo-router] Warning: Could not find toolbar item or menu for identifier \($0)"
|
|
@@ -87,6 +90,7 @@ class RouterToolbarHostView: ExpoView, LinkPreviewMenuUpdatable {
|
|
|
87
90
|
}
|
|
88
91
|
addRouterToolbarItemAtIndex(toolbarItem, index: index)
|
|
89
92
|
} else if let menu = childComponentView as? LinkPreviewNativeActionView {
|
|
93
|
+
menu.parentMenuUpdatable = self
|
|
90
94
|
addMenuToolbarItemAtIndex(menu, index: index)
|
|
91
95
|
} else {
|
|
92
96
|
print(
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"component": {
|
|
4
4
|
"group": "expo.modules.router",
|
|
5
5
|
"module": "expo.modules.router",
|
|
6
|
-
"version": "7.0.0-canary-
|
|
6
|
+
"version": "7.0.0-canary-20251210-1f163e3",
|
|
7
7
|
"attributes": {
|
|
8
8
|
"org.gradle.status": "release"
|
|
9
9
|
}
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
},
|
|
25
25
|
"files": [
|
|
26
26
|
{
|
|
27
|
-
"name": "expo.modules.router-7.0.0-canary-
|
|
28
|
-
"url": "expo.modules.router-7.0.0-canary-
|
|
27
|
+
"name": "expo.modules.router-7.0.0-canary-20251210-1f163e3.aar",
|
|
28
|
+
"url": "expo.modules.router-7.0.0-canary-20251210-1f163e3.aar",
|
|
29
29
|
"size": 13671,
|
|
30
30
|
"sha512": "f51bd2a6d3fcc9075dbf99d66f77162d530586d0793d68e109a55f6edfbe4ff98bc9c9c5d587d0feec99807b6ae94a729232000e89f840278b21f4d423caa520",
|
|
31
31
|
"sha256": "089d182f36875a201ad1b30b44d39812cd5155af987f3d33cd5eef8542103c82",
|
|
@@ -60,8 +60,8 @@
|
|
|
60
60
|
],
|
|
61
61
|
"files": [
|
|
62
62
|
{
|
|
63
|
-
"name": "expo.modules.router-7.0.0-canary-
|
|
64
|
-
"url": "expo.modules.router-7.0.0-canary-
|
|
63
|
+
"name": "expo.modules.router-7.0.0-canary-20251210-1f163e3.aar",
|
|
64
|
+
"url": "expo.modules.router-7.0.0-canary-20251210-1f163e3.aar",
|
|
65
65
|
"size": 13671,
|
|
66
66
|
"sha512": "f51bd2a6d3fcc9075dbf99d66f77162d530586d0793d68e109a55f6edfbe4ff98bc9c9c5d587d0feec99807b6ae94a729232000e89f840278b21f4d423caa520",
|
|
67
67
|
"sha256": "089d182f36875a201ad1b30b44d39812cd5155af987f3d33cd5eef8542103c82",
|
|
@@ -80,8 +80,8 @@
|
|
|
80
80
|
},
|
|
81
81
|
"files": [
|
|
82
82
|
{
|
|
83
|
-
"name": "expo.modules.router-7.0.0-canary-
|
|
84
|
-
"url": "expo.modules.router-7.0.0-canary-
|
|
83
|
+
"name": "expo.modules.router-7.0.0-canary-20251210-1f163e3-sources.jar",
|
|
84
|
+
"url": "expo.modules.router-7.0.0-canary-20251210-1f163e3-sources.jar",
|
|
85
85
|
"size": 2318,
|
|
86
86
|
"sha512": "9864add8e93e3c0a9a9c930aaed67016b15054c3fafd59a0bd3a5402d7cdc5827be84c22c2c137f3e5acb4e39270d9bfb9ca3fe11234458d4f2e0d4c78747f48",
|
|
87
87
|
"sha256": "d5dff6259e86de721fc0f07fe740a5e18088e19b76738719b0a6f94caef06224",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0bb6c53d7bf6c5877348b10e5a12c204
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
9f9752ad577e8d537588e0ac11a9787abc660592
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
5d3f207f18d97552b98aec6f8d3be4f2d8d79a86d1cf4ce5510846802cab9461
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
a515fcf979f475e365d0b85ba6802ee22a632fec127125d56040f794b92f36c361cef86f37cda51e17a62549290a0a77397c88387b9f1f8168423ee05c545ef7
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
<modelVersion>4.0.0</modelVersion>
|
|
10
10
|
<groupId>expo.modules.router</groupId>
|
|
11
11
|
<artifactId>expo.modules.router</artifactId>
|
|
12
|
-
<version>7.0.0-canary-
|
|
12
|
+
<version>7.0.0-canary-20251210-1f163e3</version>
|
|
13
13
|
<packaging>aar</packaging>
|
|
14
14
|
<name>expo.modules.router</name>
|
|
15
15
|
<url>https://github.com/expo/expo</url>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
628f05edbc3f6a8b7b6b645f96a48dbb
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
246fa2076ed77c372f6faae75f0aa88d00b27dd2
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
8ed862348caf26b9fb4e76ef024470fb6f422aaab1147a6604c84e670aff9a1c
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
b51fabbef92547dabc18659dff3503dd1061831464384949c225e52f62843da9dc3dd9dd97cc7887620eb4600390c620ae3167d5d0474cf0ebe4acc5dd3fcd08
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
<groupId>expo.modules.router</groupId>
|
|
4
4
|
<artifactId>expo.modules.router</artifactId>
|
|
5
5
|
<versioning>
|
|
6
|
-
<latest>7.0.0-canary-
|
|
7
|
-
<release>7.0.0-canary-
|
|
6
|
+
<latest>7.0.0-canary-20251210-1f163e3</latest>
|
|
7
|
+
<release>7.0.0-canary-20251210-1f163e3</release>
|
|
8
8
|
<versions>
|
|
9
|
-
<version>7.0.0-canary-
|
|
9
|
+
<version>7.0.0-canary-20251210-1f163e3</version>
|
|
10
10
|
</versions>
|
|
11
|
-
<lastUpdated>
|
|
11
|
+
<lastUpdated>20251210173319</lastUpdated>
|
|
12
12
|
</versioning>
|
|
13
13
|
</metadata>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
666e7021b61603d388de573dd5a82fd4
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
2ad1e82770324771c1c2dd9b723146c670c6e286
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
a73096d6e8f9fd65a40bcd6e50a37ec4d5bc8c3764d08123034a08e5f04aa3dd
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
3c54461558c3d37336501695075e30064ad2e9313117032816445e5c38d6f7797acff409d5a39155844283842e42e31b4058442b4830a369c65fecf164ca51a2
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-router",
|
|
3
|
-
"version": "7.0.0-canary-
|
|
3
|
+
"version": "7.0.0-canary-20251210-1f163e3",
|
|
4
4
|
"description": "Expo Router is a file-based router for React Native and web applications.",
|
|
5
5
|
"author": "650 Industries, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -83,14 +83,14 @@
|
|
|
83
83
|
"expo"
|
|
84
84
|
],
|
|
85
85
|
"peerDependencies": {
|
|
86
|
-
"@expo/metro-runtime": "6.2.0-canary-
|
|
87
|
-
"@expo/log-box": "0.0.13-canary-
|
|
86
|
+
"@expo/metro-runtime": "6.2.0-canary-20251210-1f163e3",
|
|
87
|
+
"@expo/log-box": "0.0.13-canary-20251210-1f163e3",
|
|
88
88
|
"@react-navigation/drawer": "^7.7.2",
|
|
89
89
|
"@testing-library/react-native": ">= 12.0.0",
|
|
90
|
-
"expo": "55.0.0-canary-
|
|
91
|
-
"expo-constants": "18.1.0-canary-
|
|
92
|
-
"expo-linking": "8.0.11-canary-
|
|
93
|
-
"expo-symbols": "1.1.0-canary-
|
|
90
|
+
"expo": "55.0.0-canary-20251210-1f163e3",
|
|
91
|
+
"expo-constants": "18.1.0-canary-20251210-1f163e3",
|
|
92
|
+
"expo-linking": "8.0.11-canary-20251210-1f163e3",
|
|
93
|
+
"expo-symbols": "1.1.0-canary-20251210-1f163e3",
|
|
94
94
|
"react": "*",
|
|
95
95
|
"react-dom": "*",
|
|
96
96
|
"react-native": "*",
|
|
@@ -135,8 +135,8 @@
|
|
|
135
135
|
"react-server-dom-webpack": "~19.0.1"
|
|
136
136
|
},
|
|
137
137
|
"dependencies": {
|
|
138
|
-
"@expo/metro-runtime": "6.2.0-canary-
|
|
139
|
-
"@expo/schema-utils": "0.1.9-canary-
|
|
138
|
+
"@expo/metro-runtime": "6.2.0-canary-20251210-1f163e3",
|
|
139
|
+
"@expo/schema-utils": "0.1.9-canary-20251210-1f163e3",
|
|
140
140
|
"@radix-ui/react-slot": "1.2.0",
|
|
141
141
|
"@radix-ui/react-tabs": "^1.1.12",
|
|
142
142
|
"@react-navigation/bottom-tabs": "^7.7.3",
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
"client-only": "^0.0.1",
|
|
146
146
|
"debug": "^4.3.4",
|
|
147
147
|
"escape-string-regexp": "^4.0.0",
|
|
148
|
-
"expo-server": "1.0.6-canary-
|
|
148
|
+
"expo-server": "1.0.6-canary-20251210-1f163e3",
|
|
149
149
|
"fast-deep-equal": "^3.1.3",
|
|
150
150
|
"invariant": "^2.2.4",
|
|
151
151
|
"nanoid": "^3.3.8",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
e92ab331c80f691ee10d7962c868430b
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
31d237532347ec7d8eabb030a99dc410c6f5f122
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
abecb584f9f1163d5864beab7eb3a3df729ae04b04937d49c1045996302224f7
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
9880b7b66c5cb7b9bddaae42392b9e47ad1ef16946140d9da816f36a04f63b64e658392e8cf8f26066e4f96b8f94953a7097873c70ec197e3b24eed7c9691ef9
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
7bf900a075154bbee384a9b1800bf7db
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
e0f1c760dc0b9423eefe69a643251d8cd9e8339f
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
9fe8150040ac70dcbb2377e8f279713a8db2748da775ff83dc16d63ea3bc2729
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
44cc302cc47d06d42eb822f082d8e3108817b411414e68653227eeb44e2f8c98d4613104ce319ee6aba1222125bc575dd267fb3bbd0aba94d0bb53626bd389f3
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|