expo-router 7.0.0-canary-20251031-b135dff → 7.0.0-canary-20251118-4ca99d5

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 (157) hide show
  1. package/build/Route.d.ts +2 -0
  2. package/build/Route.d.ts.map +1 -1
  3. package/build/Route.js.map +1 -1
  4. package/build/color/android.attr.types.d.ts +142 -0
  5. package/build/color/android.attr.types.d.ts.map +1 -0
  6. package/build/color/android.attr.types.js +3 -0
  7. package/build/color/android.attr.types.js.map +1 -0
  8. package/build/color/android.color.types.d.ts +1278 -0
  9. package/build/color/android.color.types.d.ts.map +1 -0
  10. package/build/color/android.color.types.js +3 -0
  11. package/build/color/android.color.types.js.map +1 -0
  12. package/build/color/android.dynamic.types.d.ts +384 -0
  13. package/build/color/android.dynamic.types.d.ts.map +1 -0
  14. package/build/color/android.dynamic.types.js +3 -0
  15. package/build/color/android.dynamic.types.js.map +1 -0
  16. package/build/color/android.material.types.d.ts +291 -0
  17. package/build/color/android.material.types.d.ts.map +1 -0
  18. package/build/color/android.material.types.js +3 -0
  19. package/build/color/android.material.types.js.map +1 -0
  20. package/build/color/index.d.ts +35 -0
  21. package/build/color/index.d.ts.map +1 -0
  22. package/build/color/index.js +71 -0
  23. package/build/color/index.js.map +1 -0
  24. package/build/color/ios.types.d.ts +156 -0
  25. package/build/color/ios.types.d.ts.map +1 -0
  26. package/build/color/ios.types.js +3 -0
  27. package/build/color/ios.types.js.map +1 -0
  28. package/build/color/materialColor.android.d.ts +4 -0
  29. package/build/color/materialColor.android.d.ts.map +1 -0
  30. package/build/color/materialColor.android.js +28 -0
  31. package/build/color/materialColor.android.js.map +1 -0
  32. package/build/color/materialColor.d.ts +4 -0
  33. package/build/color/materialColor.d.ts.map +1 -0
  34. package/build/color/materialColor.js +11 -0
  35. package/build/color/materialColor.js.map +1 -0
  36. package/build/exports.d.ts +2 -0
  37. package/build/exports.d.ts.map +1 -1
  38. package/build/exports.js +7 -1
  39. package/build/exports.js.map +1 -1
  40. package/build/layouts/DrawerClient.d.ts +4 -2
  41. package/build/layouts/DrawerClient.d.ts.map +1 -1
  42. package/build/layouts/Stack.d.ts.map +1 -1
  43. package/build/layouts/Stack.js +3 -2
  44. package/build/layouts/Stack.js.map +1 -1
  45. package/build/layouts/Stack.web.d.ts.map +1 -1
  46. package/build/layouts/Stack.web.js +3 -2
  47. package/build/layouts/Stack.web.js.map +1 -1
  48. package/build/layouts/StackClient.d.ts +18 -10
  49. package/build/layouts/StackClient.d.ts.map +1 -1
  50. package/build/layouts/StackClient.js +95 -5
  51. package/build/layouts/StackClient.js.map +1 -1
  52. package/build/layouts/TabsClient.d.ts +6 -3
  53. package/build/layouts/TabsClient.d.ts.map +1 -1
  54. package/build/layouts/stack-utils/StackHeaderBackButton.d.ts +14 -0
  55. package/build/layouts/stack-utils/StackHeaderBackButton.d.ts.map +1 -0
  56. package/build/layouts/stack-utils/StackHeaderBackButton.js +19 -0
  57. package/build/layouts/stack-utils/StackHeaderBackButton.js.map +1 -0
  58. package/build/layouts/stack-utils/StackHeaderComponent.d.ts +22 -0
  59. package/build/layouts/stack-utils/StackHeaderComponent.d.ts.map +1 -0
  60. package/build/layouts/stack-utils/StackHeaderComponent.js +67 -0
  61. package/build/layouts/stack-utils/StackHeaderComponent.js.map +1 -0
  62. package/build/layouts/stack-utils/StackHeaderLeft.d.ts +9 -0
  63. package/build/layouts/stack-utils/StackHeaderLeft.d.ts.map +1 -0
  64. package/build/layouts/stack-utils/StackHeaderLeft.js +17 -0
  65. package/build/layouts/stack-utils/StackHeaderLeft.js.map +1 -0
  66. package/build/layouts/stack-utils/StackHeaderRight.d.ts +9 -0
  67. package/build/layouts/stack-utils/StackHeaderRight.d.ts.map +1 -0
  68. package/build/layouts/stack-utils/StackHeaderRight.js +17 -0
  69. package/build/layouts/stack-utils/StackHeaderRight.js.map +1 -0
  70. package/build/layouts/stack-utils/StackHeaderSearchBar.d.ts +7 -0
  71. package/build/layouts/stack-utils/StackHeaderSearchBar.d.ts.map +1 -0
  72. package/build/layouts/stack-utils/StackHeaderSearchBar.js +16 -0
  73. package/build/layouts/stack-utils/StackHeaderSearchBar.js.map +1 -0
  74. package/build/layouts/stack-utils/StackHeaderTitle.d.ts +22 -0
  75. package/build/layouts/stack-utils/StackHeaderTitle.d.ts.map +1 -0
  76. package/build/layouts/stack-utils/StackHeaderTitle.js +41 -0
  77. package/build/layouts/stack-utils/StackHeaderTitle.js.map +1 -0
  78. package/build/layouts/stack-utils/StackScreen.d.ts +9 -0
  79. package/build/layouts/stack-utils/StackScreen.d.ts.map +1 -0
  80. package/build/layouts/stack-utils/StackScreen.js +34 -0
  81. package/build/layouts/stack-utils/StackScreen.js.map +1 -0
  82. package/build/layouts/stack-utils/index.d.ts +17 -0
  83. package/build/layouts/stack-utils/index.d.ts.map +1 -0
  84. package/build/layouts/stack-utils/index.js +28 -0
  85. package/build/layouts/stack-utils/index.js.map +1 -0
  86. package/build/layouts/stack-utils/utils.d.ts +3 -0
  87. package/build/layouts/stack-utils/utils.d.ts.map +1 -0
  88. package/build/layouts/stack-utils/utils.js +8 -0
  89. package/build/layouts/stack-utils/utils.js.map +1 -0
  90. package/build/layouts/withLayoutContext.js +1 -1
  91. package/build/layouts/withLayoutContext.js.map +1 -1
  92. package/build/loaders/utils.d.ts +9 -0
  93. package/build/loaders/utils.d.ts.map +1 -1
  94. package/build/loaders/utils.js +16 -2
  95. package/build/loaders/utils.js.map +1 -1
  96. package/build/native-tabs/NativeBottomTabsNavigator.d.ts.map +1 -1
  97. package/build/native-tabs/NativeBottomTabsNavigator.js.map +1 -1
  98. package/build/native-tabs/NativeTabTrigger.d.ts +9 -7
  99. package/build/native-tabs/NativeTabTrigger.d.ts.map +1 -1
  100. package/build/native-tabs/NativeTabTrigger.js +25 -64
  101. package/build/native-tabs/NativeTabTrigger.js.map +1 -1
  102. package/build/native-tabs/NativeTabs.d.ts +4 -1
  103. package/build/native-tabs/NativeTabs.d.ts.map +1 -1
  104. package/build/native-tabs/NativeTabsView.d.ts.map +1 -1
  105. package/build/native-tabs/NativeTabsView.js +8 -3
  106. package/build/native-tabs/NativeTabsView.js.map +1 -1
  107. package/build/native-tabs/common/elements.d.ts +28 -90
  108. package/build/native-tabs/common/elements.d.ts.map +1 -1
  109. package/build/native-tabs/common/elements.js +16 -18
  110. package/build/native-tabs/common/elements.js.map +1 -1
  111. package/build/native-tabs/index.d.ts +1 -2
  112. package/build/native-tabs/index.d.ts.map +1 -1
  113. package/build/native-tabs/index.js +1 -3
  114. package/build/native-tabs/index.js.map +1 -1
  115. package/build/native-tabs/types.d.ts +20 -170
  116. package/build/native-tabs/types.d.ts.map +1 -1
  117. package/build/native-tabs/types.js.map +1 -1
  118. package/build/native-tabs/utils/icon.d.ts +3 -3
  119. package/build/native-tabs/utils/icon.d.ts.map +1 -1
  120. package/build/native-tabs/utils/icon.js +22 -13
  121. package/build/native-tabs/utils/icon.js.map +1 -1
  122. package/build/primitives/elements.d.ts +18 -0
  123. package/build/primitives/elements.d.ts.map +1 -0
  124. package/build/primitives/elements.js +31 -0
  125. package/build/primitives/elements.js.map +1 -0
  126. package/build/primitives/index.d.ts +5 -0
  127. package/build/primitives/index.d.ts.map +1 -0
  128. package/build/primitives/index.js +26 -0
  129. package/build/primitives/index.js.map +1 -0
  130. package/build/primitives/menu.d.ts +12 -0
  131. package/build/primitives/menu.d.ts.map +1 -0
  132. package/build/primitives/menu.js +28 -0
  133. package/build/primitives/menu.js.map +1 -0
  134. package/build/{primitives.d.ts → primitives/navigation.d.ts} +1 -1
  135. package/build/primitives/navigation.d.ts.map +1 -0
  136. package/build/{primitives.js → primitives/navigation.js} +1 -1
  137. package/build/primitives/navigation.js.map +1 -0
  138. package/build/primitives/types.d.ts +26 -0
  139. package/build/primitives/types.d.ts.map +1 -0
  140. package/build/primitives/types.js +3 -0
  141. package/build/primitives/types.js.map +1 -0
  142. package/build/split-view/elements.js +4 -4
  143. package/build/split-view/elements.js.map +1 -1
  144. package/build/split-view/split-view.d.ts +1 -1
  145. package/build/split-view/split-view.d.ts.map +1 -1
  146. package/build/split-view/split-view.js +5 -5
  147. package/build/split-view/split-view.js.map +1 -1
  148. package/expo-module.config.json +10 -1
  149. package/ios/{ExpoHead.podspec → ExpoRouter.podspec} +1 -1
  150. package/package.json +14 -14
  151. package/build/native-tabs/NativeTabsTriggerTabBar.d.ts +0 -24
  152. package/build/native-tabs/NativeTabsTriggerTabBar.d.ts.map +0 -1
  153. package/build/native-tabs/NativeTabsTriggerTabBar.js +0 -28
  154. package/build/native-tabs/NativeTabsTriggerTabBar.js.map +0 -1
  155. package/build/primitives.d.ts.map +0 -1
  156. package/build/primitives.js.map +0 -1
  157. package/node/getExpoConstantsManifest.js +0 -163
@@ -1,24 +0,0 @@
1
- import type { NativeTabsTriggerTabBarProps } from './types';
2
- /**
3
- * The component used to customize the style of the tab bar, when given trigger is selected.
4
- *
5
- * Prefer this to global changes of tab bar styles, directly in the page.
6
- *
7
- * > **Note:** You can use the alias `NativeTabs.Trigger.TabBar` for this component.
8
- *
9
- * @example
10
- * ```tsx
11
- * <NativeTabs
12
- * backgroundColor="black"
13
- * >
14
- * <NativeTabs.Trigger name="page">
15
- * <NativeTabs.Trigger.TabBar
16
- * backgroundColor="white"
17
- * />
18
- * <Label>Page</Label>
19
- * </NativeTabs.Trigger>
20
- * </NativeTabs>
21
- *
22
- */
23
- export declare function NativeTabsTriggerTabBar(props: NativeTabsTriggerTabBarProps): React.ReactNode;
24
- //# sourceMappingURL=NativeTabsTriggerTabBar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NativeTabsTriggerTabBar.d.ts","sourceRoot":"","sources":["../../src/native-tabs/NativeTabsTriggerTabBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,GAAG,KAAK,CAAC,SAAS,CAE5F"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NativeTabsTriggerTabBar = NativeTabsTriggerTabBar;
4
- /**
5
- * The component used to customize the style of the tab bar, when given trigger is selected.
6
- *
7
- * Prefer this to global changes of tab bar styles, directly in the page.
8
- *
9
- * > **Note:** You can use the alias `NativeTabs.Trigger.TabBar` for this component.
10
- *
11
- * @example
12
- * ```tsx
13
- * <NativeTabs
14
- * backgroundColor="black"
15
- * >
16
- * <NativeTabs.Trigger name="page">
17
- * <NativeTabs.Trigger.TabBar
18
- * backgroundColor="white"
19
- * />
20
- * <Label>Page</Label>
21
- * </NativeTabs.Trigger>
22
- * </NativeTabs>
23
- *
24
- */
25
- function NativeTabsTriggerTabBar(props) {
26
- return null;
27
- }
28
- //# sourceMappingURL=NativeTabsTriggerTabBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NativeTabsTriggerTabBar.js","sourceRoot":"","sources":["../../src/native-tabs/NativeTabsTriggerTabBar.tsx"],"names":[],"mappings":";;AAuBA,0DAEC;AAvBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,uBAAuB,CAAC,KAAmC;IACzE,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import type { NativeTabsTriggerTabBarProps } from './types';\n\n/**\n * The component used to customize the style of the tab bar, when given trigger is selected.\n *\n * Prefer this to global changes of tab bar styles, directly in the page.\n *\n * > **Note:** You can use the alias `NativeTabs.Trigger.TabBar` for this component.\n *\n * @example\n * ```tsx\n * <NativeTabs\n * backgroundColor=\"black\"\n * >\n * <NativeTabs.Trigger name=\"page\">\n * <NativeTabs.Trigger.TabBar\n * backgroundColor=\"white\"\n * />\n * <Label>Page</Label>\n * </NativeTabs.Trigger>\n * </NativeTabs>\n *\n */\nexport function NativeTabsTriggerTabBar(props: NativeTabsTriggerTabBarProps): React.ReactNode {\n return null;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../src/primitives.tsx"],"names":[],"mappings":"AAMA,eAAO,MAAQ,MAAM,OAAE,KAAK,KAAwC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../src/primitives.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;AAEb,qDAAkE;AAElE,oGAAoG;AACpG,gBAAgB;AACH,KAAoB,IAAA,+BAAsB,EAAC,EAAS,CAAC,EAAE,EAArD,cAAM,cAAE,aAAK,YAAyC","sourcesContent":["'use client';\n\nimport { createNavigatorFactory } from '@react-navigation/native';\n\n// `@react-navigation/native` does not expose the Screen or Group components directly, so we have to\n// do this hack.\nexport const { Screen, Group } = createNavigatorFactory({} as any)();\n"]}
@@ -1,163 +0,0 @@
1
- const { getConfig, getNameFromConfig } = require('expo/config');
2
- // Use root to work better with create-react-app
3
- const DEFAULT_LANGUAGE_ISO_CODE = `en`;
4
- const DEFAULT_DISPLAY = 'standalone';
5
- const DEFAULT_STATUS_BAR = 'black-translucent';
6
- const DEFAULT_PREFER_RELATED_APPLICATIONS = true;
7
- // Convert expo value to PWA value
8
- function ensurePWAorientation(orientation) {
9
- if (orientation && typeof orientation === 'string') {
10
- const webOrientation = orientation.toLowerCase();
11
- if (webOrientation !== 'default') {
12
- return webOrientation;
13
- }
14
- }
15
- return undefined;
16
- }
17
-
18
- const RESTRICTED_MANIFEST_FIELDS = [
19
- // Omit app.json properties that get removed during the native build
20
- 'facebookScheme',
21
- 'facebookAppId',
22
- 'facebookDisplayName',
23
- // Remove iOS and Android.
24
- 'ios',
25
- 'android',
26
- // Hide internal / build values
27
- 'plugins',
28
- 'hooks',
29
- '_internal',
30
- // Remove metro-specific values
31
- 'assetBundlePatterns',
32
- ];
33
- function getExpoConstantsManifest(projectRoot) {
34
- const { exp } = getConfig(projectRoot, {
35
- isPublicConfig: true,
36
- skipSDKVersionRequirement: true,
37
- });
38
- const manifest = ensurePWAConfig(exp);
39
- for (const field of RESTRICTED_MANIFEST_FIELDS) {
40
- delete manifest[field];
41
- }
42
- return manifest;
43
- }
44
- function applyWebDefaults(appJSON) {
45
- // For RN CLI support
46
- // @ts-ignore: expo object doesn't exist on ExpoConfig
47
- const appManifest = appJSON.expo || appJSON || {};
48
- const { web: webManifest = {}, splash = {}, ios = {}, android = {} } = appManifest;
49
- // rn-cli apps use a displayName value as well.
50
- const { appName, webName } = getNameFromConfig(appJSON);
51
- const languageISOCode = webManifest.lang || DEFAULT_LANGUAGE_ISO_CODE;
52
- const primaryColor = appManifest.primaryColor;
53
- const description = appManifest.description;
54
- // The theme_color sets the color of the tool bar, and may be reflected in the app's preview in task switchers.
55
- const webThemeColor = webManifest.themeColor || primaryColor;
56
- const dir = webManifest.dir;
57
- const shortName = webManifest.shortName || webName;
58
- const display = webManifest.display || DEFAULT_DISPLAY;
59
- const startUrl = webManifest.startUrl;
60
- const { scope, crossorigin } = webManifest;
61
- const barStyle = webManifest.barStyle || DEFAULT_STATUS_BAR;
62
- const orientation = ensurePWAorientation(webManifest.orientation || appManifest.orientation);
63
- /**
64
- * **Splash screen background color**
65
- * `https://developers.google.com/web/fundamentals/web-app-manifest/#splash-screen`
66
- * The background_color should be the same color as the load page,
67
- * to provide a smooth transition from the splash screen to your app.
68
- */
69
- const backgroundColor = webManifest.backgroundColor || splash.backgroundColor; // No default background color
70
- /**
71
- *
72
- * https://developer.mozilla.org/en-US/docs/Web/Manifest#prefer_related_applications
73
- * Specifies a boolean value that hints for the user agent to indicate
74
- * to the user that the specified native applications (see below) are recommended over the website.
75
- * This should only be used if the related native apps really do offer something that the website can't... like Expo ;)
76
- *
77
- * >> The banner won't show up if the app is already installed:
78
- * https://github.com/GoogleChrome/samples/issues/384#issuecomment-326387680
79
- */
80
- const preferRelatedApplications =
81
- webManifest.preferRelatedApplications === undefined
82
- ? DEFAULT_PREFER_RELATED_APPLICATIONS
83
- : webManifest.preferRelatedApplications;
84
- const relatedApplications = inferWebRelatedApplicationsFromConfig(appManifest);
85
- return {
86
- ...appManifest,
87
- name: appName,
88
- description,
89
- primaryColor,
90
- // Ensure these objects exist
91
- ios: {
92
- ...ios,
93
- },
94
- android: {
95
- ...android,
96
- },
97
- web: {
98
- ...webManifest,
99
- meta: undefined,
100
- build: undefined,
101
- scope,
102
- crossorigin,
103
- description,
104
- preferRelatedApplications,
105
- relatedApplications,
106
- startUrl,
107
- shortName,
108
- display,
109
- orientation,
110
- dir,
111
- barStyle,
112
- backgroundColor,
113
- themeColor: webThemeColor,
114
- lang: languageISOCode,
115
- name: webName,
116
- },
117
- };
118
- }
119
- /**
120
- * https://developer.mozilla.org/en-US/docs/Web/Manifest#related_applications
121
- * An array of native applications that are installable by, or accessible to, the underlying platform
122
- * for example, a native Android application obtainable through the Google Play Store.
123
- * Such applications are intended to be alternatives to the
124
- * website that provides similar/equivalent functionality — like the native app version of the website.
125
- */
126
- function inferWebRelatedApplicationsFromConfig({ web = {}, ios = {}, android = {} }) {
127
- const relatedApplications = web.relatedApplications || [];
128
- const { bundleIdentifier, appStoreUrl } = ios;
129
- if (bundleIdentifier) {
130
- const PLATFORM_ITUNES = 'itunes';
131
- const iosApp = relatedApplications.some(({ platform }) => platform === PLATFORM_ITUNES);
132
- if (!iosApp) {
133
- relatedApplications.push({
134
- platform: PLATFORM_ITUNES,
135
- url: appStoreUrl,
136
- id: bundleIdentifier,
137
- });
138
- }
139
- }
140
- const { package: androidPackage, playStoreUrl } = android;
141
- if (androidPackage) {
142
- const PLATFORM_PLAY = 'play';
143
- const alreadyHasAndroidApp = relatedApplications.some(
144
- ({ platform }) => platform === PLATFORM_PLAY
145
- );
146
- if (!alreadyHasAndroidApp) {
147
- relatedApplications.push({
148
- platform: PLATFORM_PLAY,
149
- url: playStoreUrl || `http://play.google.com/store/apps/details?id=${androidPackage}`,
150
- id: androidPackage,
151
- });
152
- }
153
- }
154
- return relatedApplications;
155
- }
156
- function ensurePWAConfig(appJSON) {
157
- const config = applyWebDefaults(appJSON);
158
- return config;
159
- }
160
-
161
- module.exports = {
162
- getExpoConstantsManifest,
163
- };