first commit

This commit is contained in:
2026-03-10 16:18:05 +00:00
commit 11f9c069b5
31635 changed files with 3187747 additions and 0 deletions

20
node_modules/expo-router/build/ExpoRoot.d.ts generated vendored Normal file
View File

@@ -0,0 +1,20 @@
import React, { type PropsWithChildren, type ComponentType } from 'react';
import { ExpoLinkingOptions } from './getLinkingConfig';
import { RequireContext } from './types';
export type ExpoRootProps = {
context: RequireContext;
location?: URL | string;
wrapper?: ComponentType<PropsWithChildren>;
linking?: Partial<ExpoLinkingOptions>;
};
export type NativeIntent = {
redirectSystemPath?: (event: {
path: string | null;
initial: boolean;
}) => Promise<string | null | undefined> | string | null | undefined;
};
/**
* @hidden
*/
export declare function ExpoRoot({ wrapper: ParentWrapper, ...props }: ExpoRootProps): React.JSX.Element;
//# sourceMappingURL=ExpoRoot.d.ts.map

1
node_modules/expo-router/build/ExpoRoot.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"ExpoRoot.d.ts","sourceRoot":"","sources":["../src/ExpoRoot.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAY,KAAK,aAAa,EAAW,MAAM,OAAO,CAAC;AAO7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAQxD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAOzC,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,QAAQ,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,OAAO,EAAE,OAAO,CAAC;KAClB,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACtE,CAAC;AAgBF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EAAE,OAAO,EAAE,aAAwB,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,qBA4BtF"}

208
node_modules/expo-router/build/ExpoRoot.js generated vendored Normal file
View File

@@ -0,0 +1,208 @@
"use strict";
'use client';
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExpoRoot = ExpoRoot;
const native_1 = require("@react-navigation/native");
const react_1 = __importStar(require("react"));
const react_native_1 = require("react-native");
const react_native_safe_area_context_1 = require("react-native-safe-area-context");
const constants_1 = require("./constants");
const useDomComponentNavigation_1 = require("./domComponents/useDomComponentNavigation");
const NavigationContainer_1 = require("./fork/NavigationContainer");
const router_store_1 = require("./global-state/router-store");
const serverLocationContext_1 = require("./global-state/serverLocationContext");
const storeContext_1 = require("./global-state/storeContext");
const utils_1 = require("./global-state/utils");
const LinkPreviewContext_1 = require("./link/preview/LinkPreviewContext");
const primitives_1 = require("./primitives");
const screensFeatureFlags_1 = require("./screensFeatureFlags");
const statusbar_1 = require("./utils/statusbar");
const url_1 = require("./utils/url");
const Sitemap_1 = require("./views/Sitemap");
const SplashScreen = __importStar(require("./views/Splash"));
const Unmatched_1 = require("./views/Unmatched");
const isTestEnv = process.env.NODE_ENV === 'test';
const INITIAL_METRICS = react_native_1.Platform.OS === 'web' || isTestEnv
? {
frame: { x: 0, y: 0, width: 0, height: 0 },
insets: { top: 0, left: 0, right: 0, bottom: 0 },
}
: undefined;
const documentTitle = {
enabled: false,
};
/**
* @hidden
*/
function ExpoRoot({ wrapper: ParentWrapper = react_1.Fragment, ...props }) {
(0, screensFeatureFlags_1.initScreensFeatureFlags)();
/*
* Due to static rendering we need to wrap these top level views in second wrapper
* View's like <SafeAreaProvider /> generate a <div> so if the parent wrapper
* is a HTML document, we need to ensure its inside the <body>
*/
const wrapper = (0, react_1.useMemo)(() => ({ children }) => {
return (<ParentWrapper>
<LinkPreviewContext_1.LinkPreviewContextProvider>
<react_native_safe_area_context_1.SafeAreaProvider
// SSR support
initialMetrics={INITIAL_METRICS}>
{/* Users can override this by adding another StatusBar element anywhere higher in the component tree. */}
{statusbar_1.canOverrideStatusBarBehavior && <AutoStatusBar />}
{children}
</react_native_safe_area_context_1.SafeAreaProvider>
</LinkPreviewContext_1.LinkPreviewContextProvider>
</ParentWrapper>);
}, [ParentWrapper]);
return <ContextNavigator {...props} wrapper={wrapper}/>;
}
function AutoStatusBar() {
return <react_native_1.StatusBar barStyle={(0, react_native_1.useColorScheme)() === 'light' ? 'dark-content' : 'light-content'}/>;
}
const initialUrl = react_native_1.Platform.OS === 'web' && typeof window !== 'undefined'
? new URL(window.location.href)
: undefined;
function ContextNavigator({ context, location: initialLocation = initialUrl, wrapper: WrapperComponent = react_1.Fragment, linking = {}, }) {
// location and linking.getInitialURL are both used to initialize the router state
// - location is used on web and during static rendering
// - linking.getInitialURL is used on native
const serverContext = (0, react_1.useMemo)(() => {
let contextType = {};
if (initialLocation instanceof URL) {
contextType = {
location: {
pathname: initialLocation.pathname + initialLocation.hash,
search: initialLocation.search,
},
};
}
else if (typeof initialLocation === 'string') {
// The initial location is a string, so we need to parse it into a URL.
const url = (0, url_1.parseUrlUsingCustomBase)(initialLocation);
contextType = {
location: {
pathname: url.pathname,
search: url.search,
},
};
}
return contextType;
}, []);
/*
* The serverUrl is an initial URL used in server rendering environments.
* e.g Static renders, units tests, etc
*/
const serverUrl = serverContext.location
? `${serverContext.location.pathname}${serverContext.location.search}`
: undefined;
const store = (0, router_store_1.useStore)(context, linking, serverUrl);
(0, useDomComponentNavigation_1.useDomComponentNavigation)();
if (store.shouldShowTutorial()) {
SplashScreen.hideAsync();
if (process.env.NODE_ENV === 'development') {
const Tutorial = require('./onboard/Tutorial').Tutorial;
return (<WrapperComponent>
<Tutorial />
</WrapperComponent>);
}
else {
// Ensure tutorial styles are stripped in production.
return null;
}
}
return (<storeContext_1.StoreContext.Provider value={store}>
<NavigationContainer_1.NavigationContainer ref={store.navigationRef} initialState={store.state} linking={store.linking} onUnhandledAction={onUnhandledAction} onStateChange={store.onStateChange} documentTitle={documentTitle} onReady={store.onReady}>
<serverLocationContext_1.ServerContext.Provider value={serverContext}>
<WrapperComponent>
<Content />
</WrapperComponent>
</serverLocationContext_1.ServerContext.Provider>
</NavigationContainer_1.NavigationContainer>
</storeContext_1.StoreContext.Provider>);
}
function Content() {
const children = [<primitives_1.Screen name={constants_1.INTERNAL_SLOT_NAME} component={router_store_1.store.rootComponent}/>];
if ((0, utils_1.shouldAppendNotFound)()) {
children.push(<primitives_1.Screen name={constants_1.NOT_FOUND_ROUTE_NAME} component={Unmatched_1.Unmatched}/>);
}
if ((0, utils_1.shouldAppendSitemap)()) {
children.push(<primitives_1.Screen name={constants_1.SITEMAP_ROUTE_NAME} component={Sitemap_1.Sitemap}/>);
}
const { state, descriptors, NavigationContent } = (0, native_1.useNavigationBuilder)(native_1.StackRouter, {
children,
id: constants_1.INTERNAL_SLOT_NAME,
});
return (<NavigationContent>{descriptors[state.routes[state.index].key].render()}</NavigationContent>);
}
let onUnhandledAction;
if (process.env.NODE_ENV !== 'production') {
onUnhandledAction = (action) => {
const payload = action.payload;
let message = `The action '${action.type}'${payload ? ` with payload ${JSON.stringify(action.payload)}` : ''} was not handled by any navigator.`;
switch (action.type) {
case 'NAVIGATE':
case 'PUSH':
case 'REPLACE':
case 'JUMP_TO':
if (payload?.name) {
message += `\n\nDo you have a route named '${payload.name}'?`;
}
else {
message += `\n\nYou need to pass the name of the screen to navigate to. This may be a bug.`;
}
break;
case 'GO_BACK':
case 'POP':
case 'POP_TO_TOP':
message += `\n\nIs there any screen to go back to?`;
break;
case 'OPEN_DRAWER':
case 'CLOSE_DRAWER':
case 'TOGGLE_DRAWER':
message += `\n\nIs your screen inside a Drawer navigator?`;
break;
}
message += `\n\nThis is a development-only warning and won't be shown in production.`;
if (process.env.NODE_ENV === 'test') {
throw new Error(message);
}
console.error(message);
};
}
else {
onUnhandledAction = function () { };
}
//# sourceMappingURL=ExpoRoot.js.map

1
node_modules/expo-router/build/ExpoRoot.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

19
node_modules/expo-router/build/LocationProvider.d.ts generated vendored Normal file
View File

@@ -0,0 +1,19 @@
import { type State } from './fork/getPathFromState';
type SearchParams = Record<string, string | string[]>;
export type UrlObject = {
unstable_globalHref: string;
pathname: string;
readonly params: SearchParams;
segments: string[];
isIndex: boolean;
};
export declare function getRouteInfoFromState(getPathFromState: (state: State, asPath: boolean) => {
path: string;
params: any;
}, state: State, baseUrl?: string): UrlObject;
export declare function getNormalizedStatePath({ path: statePath, params, }: {
path: string;
params: any;
}, baseUrl?: string): Pick<UrlObject, 'segments' | 'params'>;
export {};
//# sourceMappingURL=LocationProvider.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"LocationProvider.d.ts","sourceRoot":"","sources":["../src/LocationProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAEtD,MAAM,MAAM,SAAS,GAAG;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAgB,qBAAqB,CACnC,gBAAgB,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,KAAK;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE,EAClF,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,MAAM,GACf,SAAS,CAWX;AA0BD,wBAAgB,sBAAsB,CACpC,EACE,IAAI,EAAE,SAAS,EACf,MAAM,GACP,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,GAAG,CAAC;CACb,EACD,OAAO,CAAC,EAAE,MAAM,GACf,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,QAAQ,CAAC,CASxC"}

67
node_modules/expo-router/build/LocationProvider.js generated vendored Normal file
View File

@@ -0,0 +1,67 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRouteInfoFromState = getRouteInfoFromState;
exports.getNormalizedStatePath = getNormalizedStatePath;
const getStateFromPath_forks_1 = require("./fork/getStateFromPath-forks");
function getRouteInfoFromState(getPathFromState, state, baseUrl) {
const { path } = getPathFromState(state, false);
const qualified = getPathFromState(state, true);
return {
// TODO: This may have a predefined origin attached in the future.
unstable_globalHref: path,
pathname: (0, getStateFromPath_forks_1.stripBaseUrl)(path, baseUrl).split('?')['0'],
isIndex: isIndexPath(state),
...getNormalizedStatePath(qualified, baseUrl),
};
}
function isIndexPath(state) {
const route = state.routes[state.index ?? state.routes.length - 1];
if (route.state) {
return isIndexPath(route.state);
}
// Index routes on the same level as a layout do not have `index` in their name
if (route.params && 'screen' in route.params) {
return route.params.screen === 'index';
}
// The `params` key will not exist if there are no params
// So we need to do a positive lookahead to check if the route ends with /index
// Nested routes that are hoisted will have a name ending with /index
// e.g name could be /user/[id]/index
if (route.name.match(/.+\/index$/))
return true;
// The state will either have params (because there are multiple _layout) or it will be hoisted with a name
// If we don't match the above cases, then it's not an index route
return false;
}
// TODO: Split up getPathFromState to return all this info at once.
function getNormalizedStatePath({ path: statePath, params, }, baseUrl) {
const [pathname] = statePath.split('?');
return {
// Strip empty path at the start
segments: (0, getStateFromPath_forks_1.stripBaseUrl)(pathname, baseUrl).split('/').filter(Boolean).map(decodeURIComponent),
// TODO: This is not efficient, we should generate based on the state instead
// of converting to string then back to object
params: decodeParams(params),
};
}
function decodeParams(params) {
const parsed = {};
for (const [key, value] of Object.entries(params)) {
try {
if (key === 'params' && typeof value === 'object') {
parsed[key] = decodeParams(value);
}
else if (Array.isArray(value)) {
parsed[key] = value.map((v) => decodeURIComponent(v));
}
else {
parsed[key] = decodeURIComponent(value);
}
}
catch {
parsed[key] = value;
}
}
return parsed;
}
//# sourceMappingURL=LocationProvider.js.map

File diff suppressed because one or more lines are too long

9
node_modules/expo-router/build/Prefetch.d.ts generated vendored Normal file
View File

@@ -0,0 +1,9 @@
import { Href } from './types';
export type PreloadProps = {
href: Href;
};
/**
* When rendered on a focused screen, this component will preload the specified route.
*/
export declare function Prefetch(props: PreloadProps): null;
//# sourceMappingURL=Prefetch.d.ts.map

1
node_modules/expo-router/build/Prefetch.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"Prefetch.d.ts","sourceRoot":"","sources":["../src/Prefetch.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,YAAY,QAU3C"}

19
node_modules/expo-router/build/Prefetch.js generated vendored Normal file
View File

@@ -0,0 +1,19 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Prefetch = Prefetch;
const react_1 = require("react");
const imperative_api_1 = require("./imperative-api");
const useLoadedNavigation_1 = require("./link/useLoadedNavigation");
/**
* When rendered on a focused screen, this component will preload the specified route.
*/
function Prefetch(props) {
const navigation = (0, useLoadedNavigation_1.useOptionalNavigation)();
(0, react_1.useLayoutEffect)(() => {
if (navigation?.isFocused()) {
imperative_api_1.router.prefetch(props.href);
}
}, [navigation, props.href]);
return null;
}
//# sourceMappingURL=Prefetch.js.map

1
node_modules/expo-router/build/Prefetch.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"Prefetch.js","sourceRoot":"","sources":["../src/Prefetch.tsx"],"names":[],"mappings":";;AAaA,4BAUC;AAvBD,iCAAwC;AAExC,qDAA0C;AAC1C,oEAAmE;AAOnE;;GAEG;AACH,SAAgB,QAAQ,CAAC,KAAmB;IAC1C,MAAM,UAAU,GAAG,IAAA,2CAAqB,GAAE,CAAC;IAE3C,IAAA,uBAAe,EAAC,GAAG,EAAE;QACnB,IAAI,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC;YAC5B,uBAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7B,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { useLayoutEffect } from 'react';\n\nimport { router } from './imperative-api';\nimport { useOptionalNavigation } from './link/useLoadedNavigation';\nimport { Href } from './types';\n\nexport type PreloadProps = {\n href: Href;\n};\n\n/**\n * When rendered on a focused screen, this component will preload the specified route.\n */\nexport function Prefetch(props: PreloadProps) {\n const navigation = useOptionalNavigation();\n\n useLayoutEffect(() => {\n if (navigation?.isFocused()) {\n router.prefetch(props.href);\n }\n }, [navigation, props.href]);\n\n return null;\n}\n"]}

71
node_modules/expo-router/build/Route.d.ts generated vendored Normal file
View File

@@ -0,0 +1,71 @@
import type { LoaderFunction } from 'expo-server';
import { type ComponentType, type PropsWithChildren } from 'react';
import { sortRoutesWithInitial, sortRoutes } from './sortRoutes';
import { type ErrorBoundaryProps } from './views/Try';
export type DynamicConvention = {
name: string;
deep: boolean;
notFound?: boolean;
};
type Params = Record<string, string | string[]>;
export type LoadedRoute = {
ErrorBoundary?: ComponentType<ErrorBoundaryProps>;
default?: ComponentType<any>;
unstable_settings?: Record<string, any>;
getNavOptions?: (args: any) => any;
generateStaticParams?: (props: {
params?: Params;
}) => Params[];
loader?: LoaderFunction;
};
export type LoadedMiddleware = Pick<LoadedRoute, 'default' | 'unstable_settings'>;
export type MiddlewareNode = {
/** Context Module ID. Used to resolve the middleware module */
contextKey: string;
/** Loads middleware into memory. Returns the exports from +middleware.ts */
loadRoute: () => Partial<LoadedMiddleware>;
};
export type RouteNode = {
/** The type of RouteNode */
type: 'route' | 'api' | 'layout' | 'redirect' | 'rewrite';
/** Load a route into memory. Returns the exports from a route. */
loadRoute: () => Partial<LoadedRoute>;
/** Loaded initial route name. */
initialRouteName?: string;
/** Nested routes */
children: RouteNode[];
/** Is the route a dynamic path */
dynamic: null | DynamicConvention[];
/** `index`, `error-boundary`, etc. Relative to the nearest `_layout.tsx` */
route: string;
/** Context Module ID, used for matching children. */
contextKey: string;
/** Redirect Context Module ID, used for matching children. */
destinationContextKey?: string;
/** Parent Context Module ID, used for matching static routes to their parent dynamic route. */
parentContextKey?: string;
/** Is the redirect permanent. */
permanent?: boolean;
/** Added in-memory */
generated?: boolean;
/** Internal screens like the directory or the auto 404 should be marked as internal. */
internal?: boolean;
/** File paths for async entry modules that should be included in the initial chunk request to ensure the runtime JavaScript matches the statically rendered HTML representation. */
entryPoints?: string[];
/** HTTP methods for this route. If undefined, assumed to be ['GET'] */
methods?: string[];
/** Middleware function for server-side request processing. Only present on the root route node. */
middleware?: MiddlewareNode;
};
export declare const LocalRouteParamsContext: import("react").Context<object | undefined>;
/** Return the RouteNode at the current contextual boundary. */
export declare function useRouteNode(): RouteNode | null;
export declare function useContextKey(): string;
export type RouteProps = PropsWithChildren<{
node: RouteNode;
params: object | undefined;
}>;
/** Provides the matching routes and filename to the children. */
export declare function Route({ children, node, params }: RouteProps): import("react").JSX.Element;
export { sortRoutesWithInitial, sortRoutes };
//# sourceMappingURL=Route.d.ts.map

1
node_modules/expo-router/build/Route.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../src/Route.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAsB,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAGvF,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,MAAM,iBAAiB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEpF,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAEhD,MAAM,MAAM,WAAW,GAAG;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAClD,OAAO,CAAC,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,EAAE,CAAC;IAChE,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,mBAAmB,CAAC,CAAC;AAElF,MAAM,MAAM,cAAc,GAAG;IAC3B,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,SAAS,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,4BAA4B;IAC5B,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1D,kEAAkE;IAClE,SAAS,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,iCAAiC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB;IACpB,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,kCAAkC;IAClC,OAAO,EAAE,IAAI,GAAG,iBAAiB,EAAE,CAAC;IACpC,4EAA4E;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iCAAiC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sBAAsB;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oLAAoL;IACpL,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,mGAAmG;IACnG,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,CAAC;AAGF,eAAO,MAAM,uBAAuB,6CAAwC,CAAC;AAM7E,+DAA+D;AAC/D,wBAAgB,YAAY,IAAI,SAAS,GAAG,IAAI,CAE/C;AAED,wBAAgB,aAAa,IAAI,MAAM,CAMtC;AAED,MAAM,MAAM,UAAU,GAAG,iBAAiB,CAAC;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC,CAAC;AAEH,iEAAiE;AACjE,wBAAgB,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,UAAU,+BAM3D;AAED,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,CAAC"}

35
node_modules/expo-router/build/Route.js generated vendored Normal file
View File

@@ -0,0 +1,35 @@
"use strict";
'use client';
Object.defineProperty(exports, "__esModule", { value: true });
exports.sortRoutes = exports.sortRoutesWithInitial = exports.LocalRouteParamsContext = void 0;
exports.useRouteNode = useRouteNode;
exports.useContextKey = useContextKey;
exports.Route = Route;
const react_1 = require("react");
const matchers_1 = require("./matchers");
const sortRoutes_1 = require("./sortRoutes");
Object.defineProperty(exports, "sortRoutesWithInitial", { enumerable: true, get: function () { return sortRoutes_1.sortRoutesWithInitial; } });
Object.defineProperty(exports, "sortRoutes", { enumerable: true, get: function () { return sortRoutes_1.sortRoutes; } });
const CurrentRouteContext = (0, react_1.createContext)(null);
exports.LocalRouteParamsContext = (0, react_1.createContext)({});
if (process.env.NODE_ENV !== 'production') {
CurrentRouteContext.displayName = 'RouteNode';
}
/** Return the RouteNode at the current contextual boundary. */
function useRouteNode() {
return (0, react_1.use)(CurrentRouteContext);
}
function useContextKey() {
const node = useRouteNode();
if (node == null) {
throw new Error('No filename found. This is likely a bug in expo-router.');
}
return (0, matchers_1.getContextKey)(node.contextKey);
}
/** Provides the matching routes and filename to the children. */
function Route({ children, node, params }) {
return (<exports.LocalRouteParamsContext.Provider value={params}>
<CurrentRouteContext.Provider value={node}>{children}</CurrentRouteContext.Provider>
</exports.LocalRouteParamsContext.Provider>);
}
//# sourceMappingURL=Route.js.map

1
node_modules/expo-router/build/Route.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"Route.js","sourceRoot":"","sources":["../src/Route.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;AAwEb,oCAEC;AAED,sCAMC;AAQD,sBAMC;AA7FD,iCAAuF;AAEvF,yCAA2C;AAC3C,6CAAiE;AA4FxD,sGA5FA,kCAAqB,OA4FA;AAAE,2FA5FA,uBAAU,OA4FA;AAlC1C,MAAM,mBAAmB,GAAG,IAAA,qBAAa,EAAmB,IAAI,CAAC,CAAC;AACrD,QAAA,uBAAuB,GAAG,IAAA,qBAAa,EAAqB,EAAE,CAAC,CAAC;AAE7E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,mBAAmB,CAAC,WAAW,GAAG,WAAW,CAAC;AAChD,CAAC;AAED,+DAA+D;AAC/D,SAAgB,YAAY;IAC1B,OAAO,IAAA,WAAG,EAAC,mBAAmB,CAAC,CAAC;AAClC,CAAC;AAED,SAAgB,aAAa;IAC3B,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,IAAA,wBAAa,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACxC,CAAC;AAOD,iEAAiE;AACjE,SAAgB,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAc;IAC1D,OAAO,CACL,CAAC,+BAAuB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAC9C;MAAA,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CACrF;IAAA,EAAE,+BAAuB,CAAC,QAAQ,CAAC,CACpC,CAAC;AACJ,CAAC","sourcesContent":["'use client';\n\nimport type { LoaderFunction } from 'expo-server';\nimport { createContext, use, type ComponentType, type PropsWithChildren } from 'react';\n\nimport { getContextKey } from './matchers';\nimport { sortRoutesWithInitial, sortRoutes } from './sortRoutes';\nimport { type ErrorBoundaryProps } from './views/Try';\n\nexport type DynamicConvention = { name: string; deep: boolean; notFound?: boolean };\n\ntype Params = Record<string, string | string[]>;\n\nexport type LoadedRoute = {\n ErrorBoundary?: ComponentType<ErrorBoundaryProps>;\n default?: ComponentType<any>;\n unstable_settings?: Record<string, any>;\n getNavOptions?: (args: any) => any;\n generateStaticParams?: (props: { params?: Params }) => Params[];\n loader?: LoaderFunction;\n};\n\nexport type LoadedMiddleware = Pick<LoadedRoute, 'default' | 'unstable_settings'>;\n\nexport type MiddlewareNode = {\n /** Context Module ID. Used to resolve the middleware module */\n contextKey: string;\n /** Loads middleware into memory. Returns the exports from +middleware.ts */\n loadRoute: () => Partial<LoadedMiddleware>;\n};\n\nexport type RouteNode = {\n /** The type of RouteNode */\n type: 'route' | 'api' | 'layout' | 'redirect' | 'rewrite';\n /** Load a route into memory. Returns the exports from a route. */\n loadRoute: () => Partial<LoadedRoute>;\n /** Loaded initial route name. */\n initialRouteName?: string;\n /** Nested routes */\n children: RouteNode[];\n /** Is the route a dynamic path */\n dynamic: null | DynamicConvention[];\n /** `index`, `error-boundary`, etc. Relative to the nearest `_layout.tsx` */\n route: string;\n /** Context Module ID, used for matching children. */\n contextKey: string;\n /** Redirect Context Module ID, used for matching children. */\n destinationContextKey?: string;\n /** Parent Context Module ID, used for matching static routes to their parent dynamic route. */\n parentContextKey?: string;\n /** Is the redirect permanent. */\n permanent?: boolean;\n /** Added in-memory */\n generated?: boolean;\n /** Internal screens like the directory or the auto 404 should be marked as internal. */\n internal?: boolean;\n /** File paths for async entry modules that should be included in the initial chunk request to ensure the runtime JavaScript matches the statically rendered HTML representation. */\n entryPoints?: string[];\n /** HTTP methods for this route. If undefined, assumed to be ['GET'] */\n methods?: string[];\n /** Middleware function for server-side request processing. Only present on the root route node. */\n middleware?: MiddlewareNode;\n};\n\nconst CurrentRouteContext = createContext<RouteNode | null>(null);\nexport const LocalRouteParamsContext = createContext<object | undefined>({});\n\nif (process.env.NODE_ENV !== 'production') {\n CurrentRouteContext.displayName = 'RouteNode';\n}\n\n/** Return the RouteNode at the current contextual boundary. */\nexport function useRouteNode(): RouteNode | null {\n return use(CurrentRouteContext);\n}\n\nexport function useContextKey(): string {\n const node = useRouteNode();\n if (node == null) {\n throw new Error('No filename found. This is likely a bug in expo-router.');\n }\n return getContextKey(node.contextKey);\n}\n\nexport type RouteProps = PropsWithChildren<{\n node: RouteNode;\n params: object | undefined;\n}>;\n\n/** Provides the matching routes and filename to the children. */\nexport function Route({ children, node, params }: RouteProps) {\n return (\n <LocalRouteParamsContext.Provider value={params}>\n <CurrentRouteContext.Provider value={node}>{children}</CurrentRouteContext.Provider>\n </LocalRouteParamsContext.Provider>\n );\n}\n\nexport { sortRoutesWithInitial, sortRoutes };\n"]}

View File

@@ -0,0 +1,142 @@
import type { ColorValue } from 'react-native';
export interface AndroidColorAttrSDK1 {
/**
* PlatformColor("?attr/colorBackground")
*
* @since Android SDK 1
*/
colorBackground: ColorValue;
/**
* PlatformColor("?attr/colorForeground")
*
* @since Android SDK 1
*/
colorForeground: ColorValue;
/**
* PlatformColor("?attr/colorForegroundInverse")
*
* @since Android SDK 1
*/
colorForegroundInverse: ColorValue;
}
export interface AndroidColorAttrSDK5 {
/**
* PlatformColor("?attr/colorBackgroundCacheHint")
*
* @since Android SDK 5
*/
colorBackgroundCacheHint: ColorValue;
}
export interface AndroidColorAttrSDK14 {
/**
* PlatformColor("?attr/colorActivatedHighlight")
*
* @since Android SDK 14
*/
colorActivatedHighlight: ColorValue;
/**
* PlatformColor("?attr/colorFocusedHighlight")
*
* @since Android SDK 14
*/
colorFocusedHighlight: ColorValue;
/**
* PlatformColor("?attr/colorLongPressedHighlight")
*
* @since Android SDK 14
*/
colorLongPressedHighlight: ColorValue;
/**
* PlatformColor("?attr/colorMultiSelectHighlight")
*
* @since Android SDK 14
*/
colorMultiSelectHighlight: ColorValue;
/**
* PlatformColor("?attr/colorPressedHighlight")
*
* @since Android SDK 14
*/
colorPressedHighlight: ColorValue;
}
export interface AndroidColorAttrSDK21 {
/**
* PlatformColor("?attr/colorAccent")
*
* @since Android SDK 21
*/
colorAccent: ColorValue;
/**
* PlatformColor("?attr/colorButtonNormal")
*
* @since Android SDK 21
*/
colorButtonNormal: ColorValue;
/**
* PlatformColor("?attr/colorControlActivated")
*
* @since Android SDK 21
*/
colorControlActivated: ColorValue;
/**
* PlatformColor("?attr/colorControlHighlight")
*
* @since Android SDK 21
*/
colorControlHighlight: ColorValue;
/**
* PlatformColor("?attr/colorControlNormal")
*
* @since Android SDK 21
*/
colorControlNormal: ColorValue;
/**
* PlatformColor("?attr/colorEdgeEffect")
*
* @since Android SDK 21
*/
colorEdgeEffect: ColorValue;
/**
* PlatformColor("?attr/colorPrimary")
*
* @since Android SDK 21
*/
colorPrimary: ColorValue;
/**
* PlatformColor("?attr/colorPrimaryDark")
*
* @since Android SDK 21
*/
colorPrimaryDark: ColorValue;
}
export interface AndroidColorAttrSDK23 {
/**
* PlatformColor("?attr/colorBackgroundFloating")
*
* @since Android SDK 23
*/
colorBackgroundFloating: ColorValue;
}
export interface AndroidColorAttrSDK25 {
/**
* PlatformColor("?attr/colorSecondary")
*
* @since Android SDK 25
*/
colorSecondary: ColorValue;
}
export interface AndroidColorAttrSDK26 {
/**
* PlatformColor("?attr/colorError")
*
* @since Android SDK 26
*/
colorError: ColorValue;
/**
* PlatformColor("?attr/colorMode")
*
* @since Android SDK 26
*/
colorMode: ColorValue;
}
//# sourceMappingURL=android.attr.types.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"android.attr.types.d.ts","sourceRoot":"","sources":["../../src/color/android.attr.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;;;OAIG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;;;OAIG;IACH,sBAAsB,EAAE,UAAU,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,wBAAwB,EAAE,UAAU,CAAC;CACtC;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,uBAAuB,EAAE,UAAU,CAAC;IACpC;;;;OAIG;IACH,qBAAqB,EAAE,UAAU,CAAC;IAClC;;;;OAIG;IACH,yBAAyB,EAAE,UAAU,CAAC;IACtC;;;;OAIG;IACH,yBAAyB,EAAE,UAAU,CAAC;IACtC;;;;OAIG;IACH,qBAAqB,EAAE,UAAU,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;;;OAIG;IACH,iBAAiB,EAAE,UAAU,CAAC;IAC9B;;;;OAIG;IACH,qBAAqB,EAAE,UAAU,CAAC;IAClC;;;;OAIG;IACH,qBAAqB,EAAE,UAAU,CAAC;IAClC;;;;OAIG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B;;;;OAIG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;;;OAIG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;;;OAIG;IACH,gBAAgB,EAAE,UAAU,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,uBAAuB,EAAE,UAAU,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,cAAc,EAAE,UAAU,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,SAAS,EAAE,UAAU,CAAC;CACvB"}

View File

@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=android.attr.types.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"android.attr.types.js","sourceRoot":"","sources":["../../src/color/android.attr.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ColorValue } from 'react-native';\n\nexport interface AndroidColorAttrSDK1 {\n /**\n * PlatformColor(\"?attr/colorBackground\")\n *\n * @since Android SDK 1\n */\n colorBackground: ColorValue;\n /**\n * PlatformColor(\"?attr/colorForeground\")\n *\n * @since Android SDK 1\n */\n colorForeground: ColorValue;\n /**\n * PlatformColor(\"?attr/colorForegroundInverse\")\n *\n * @since Android SDK 1\n */\n colorForegroundInverse: ColorValue;\n}\n\nexport interface AndroidColorAttrSDK5 {\n /**\n * PlatformColor(\"?attr/colorBackgroundCacheHint\")\n *\n * @since Android SDK 5\n */\n colorBackgroundCacheHint: ColorValue;\n}\n\nexport interface AndroidColorAttrSDK14 {\n /**\n * PlatformColor(\"?attr/colorActivatedHighlight\")\n *\n * @since Android SDK 14\n */\n colorActivatedHighlight: ColorValue;\n /**\n * PlatformColor(\"?attr/colorFocusedHighlight\")\n *\n * @since Android SDK 14\n */\n colorFocusedHighlight: ColorValue;\n /**\n * PlatformColor(\"?attr/colorLongPressedHighlight\")\n *\n * @since Android SDK 14\n */\n colorLongPressedHighlight: ColorValue;\n /**\n * PlatformColor(\"?attr/colorMultiSelectHighlight\")\n *\n * @since Android SDK 14\n */\n colorMultiSelectHighlight: ColorValue;\n /**\n * PlatformColor(\"?attr/colorPressedHighlight\")\n *\n * @since Android SDK 14\n */\n colorPressedHighlight: ColorValue;\n}\n\nexport interface AndroidColorAttrSDK21 {\n /**\n * PlatformColor(\"?attr/colorAccent\")\n *\n * @since Android SDK 21\n */\n colorAccent: ColorValue;\n /**\n * PlatformColor(\"?attr/colorButtonNormal\")\n *\n * @since Android SDK 21\n */\n colorButtonNormal: ColorValue;\n /**\n * PlatformColor(\"?attr/colorControlActivated\")\n *\n * @since Android SDK 21\n */\n colorControlActivated: ColorValue;\n /**\n * PlatformColor(\"?attr/colorControlHighlight\")\n *\n * @since Android SDK 21\n */\n colorControlHighlight: ColorValue;\n /**\n * PlatformColor(\"?attr/colorControlNormal\")\n *\n * @since Android SDK 21\n */\n colorControlNormal: ColorValue;\n /**\n * PlatformColor(\"?attr/colorEdgeEffect\")\n *\n * @since Android SDK 21\n */\n colorEdgeEffect: ColorValue;\n /**\n * PlatformColor(\"?attr/colorPrimary\")\n *\n * @since Android SDK 21\n */\n colorPrimary: ColorValue;\n /**\n * PlatformColor(\"?attr/colorPrimaryDark\")\n *\n * @since Android SDK 21\n */\n colorPrimaryDark: ColorValue;\n}\n\nexport interface AndroidColorAttrSDK23 {\n /**\n * PlatformColor(\"?attr/colorBackgroundFloating\")\n *\n * @since Android SDK 23\n */\n colorBackgroundFloating: ColorValue;\n}\n\nexport interface AndroidColorAttrSDK25 {\n /**\n * PlatformColor(\"?attr/colorSecondary\")\n *\n * @since Android SDK 25\n */\n colorSecondary: ColorValue;\n}\n\nexport interface AndroidColorAttrSDK26 {\n /**\n * PlatformColor(\"?attr/colorError\")\n *\n * @since Android SDK 26\n */\n colorError: ColorValue;\n /**\n * PlatformColor(\"?attr/colorMode\")\n *\n * @since Android SDK 26\n */\n colorMode: ColorValue;\n}\n"]}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=android.color.types.js.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,384 @@
import type { ColorValue } from 'react-native';
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* You can find out more about color roles in [official Material Design 3 documentation](https://m3.material.io/styles/color/roles).
*
* You can read about the difference between dynamic and static colors in [official Material Design 3 documentation](https://m3.material.io/styles/color/choosing-a-scheme).
*
* For a detailed definition of each color role, see [material components color documentation](https://github.com/material-components/material-components-android/blob/master/docs/theming/Color.md).
*/
export interface AndroidDynamicMaterialColorType {
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primary: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimary: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primaryContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimaryContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*
* [Read more about Inverse colors](https://m3.material.io/styles/color/roles#7fc6b47e-db22-4e98-8359-7649a099e4a1)
*/
primaryInverse: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primaryFixed: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primaryFixedDim: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimaryFixed: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimaryFixedVariant: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondary: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondary: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondaryContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondaryContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondaryFixed: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondaryFixedDim: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondaryFixed: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondaryFixedVariant: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiary: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiary: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiaryContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiaryContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiaryFixed: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiaryFixedDim: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiaryFixed: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiaryFixedVariant: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
error: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
onError: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
errorContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
onErrorContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Outline color role](https://m3.material.io/styles/color/roles#e7d72e44-72e2-4ce9-a18d-df07b1433d18)
*/
outline: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Outline color role](https://m3.material.io/styles/color/roles#e7d72e44-72e2-4ce9-a18d-df07b1433d18)
*/
outlineVariant: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*/
background: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*/
onBackground: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surface: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
onSurface: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceVariant: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
onSurfaceVariant: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*
* [Read more about Inverse colors](https://m3.material.io/styles/color/roles#7fc6b47e-db22-4e98-8359-7649a099e4a1)
*/
surfaceInverse: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*
* [Read more about Inverse colors](https://m3.material.io/styles/color/roles#7fc6b47e-db22-4e98-8359-7649a099e4a1)
*/
onSurfaceInverse: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceBright: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceDim: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainer: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerLow: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerLowest: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerHigh: ColorValue;
/**
* [Android Dynamic Material Colors](https://m3.material.io/styles/color/dynamic/user-generated-source)
*
* This color adapts based on the user's wallpaper and theme settings.
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerHighest: ColorValue;
}
//# sourceMappingURL=android.dynamic.types.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"android.dynamic.types.d.ts","sourceRoot":"","sources":["../../src/color/android.dynamic.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,WAAW,+BAA+B;IAC9C;;;;;;;OAOG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;;;OAMG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;;;OAMG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B;;;;;;;;OAQG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;;;OAMG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;;;;;OAMG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;;;;;OAMG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;;;OAMG;IACH,qBAAqB,EAAE,UAAU,CAAC;IAClC;;;;;;OAMG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;;;OAMG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;;;;;OAMG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B;;;;;;OAMG;IACH,oBAAoB,EAAE,UAAU,CAAC;IACjC;;;;;;OAMG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;;;OAMG;IACH,iBAAiB,EAAE,UAAU,CAAC;IAC9B;;;;;;OAMG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,uBAAuB,EAAE,UAAU,CAAC;IACpC;;;;;;OAMG;IACH,QAAQ,EAAE,UAAU,CAAC;IACrB;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;;;OAMG;IACH,iBAAiB,EAAE,UAAU,CAAC;IAC9B;;;;;;OAMG;IACH,mBAAmB,EAAE,UAAU,CAAC;IAChC;;;;;;OAMG;IACH,aAAa,EAAE,UAAU,CAAC;IAC1B;;;;;;OAMG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;;;;;OAMG;IACH,sBAAsB,EAAE,UAAU,CAAC;IACnC;;;;;;OAMG;IACH,KAAK,EAAE,UAAU,CAAC;IAClB;;;;;;OAMG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;;;OAMG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;;;OAMG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;;;OAMG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;OAIG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;;;;;OAMG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;;;OAMG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;;;OAMG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;;;OAMG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;;;OAQG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;;;;;OAQG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,aAAa,EAAE,UAAU,CAAC;IAC1B;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;;;OAMG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,mBAAmB,EAAE,UAAU,CAAC;IAChC;;;;;;OAMG;IACH,sBAAsB,EAAE,UAAU,CAAC;IACnC;;;;;;OAMG;IACH,oBAAoB,EAAE,UAAU,CAAC;IACjC;;;;;;OAMG;IACH,uBAAuB,EAAE,UAAU,CAAC;CACrC"}

View File

@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=android.dynamic.types.js.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,291 @@
import type { ColorValue } from 'react-native';
/**
* [Android Static Material Colors](https://m3.material.io/styles/color/static/baseline)
*
* You can find out more about color roles in [official Material Design 3 documentation](https://m3.material.io/styles/color/roles).
*
* You can read about the difference between dynamic and static colors in [official Material Design 3 documentation](https://m3.material.io/styles/color/choosing-a-scheme).
*
* For a detailed definition of each color role, see [material components color documentation](https://github.com/material-components/material-components-android/blob/master/docs/theming/Color.md).
*/
export interface AndroidStaticMaterialColorType {
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primary: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimary: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primaryContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimaryContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*
* [Read more about Inverse colors](https://m3.material.io/styles/color/roles#7fc6b47e-db22-4e98-8359-7649a099e4a1)
*/
primaryInverse: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primaryFixed: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
primaryFixedDim: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimaryFixed: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Primary color role](https://m3.material.io/styles/color/roles#41f55188-5c63-4107-ac41-822ebca8ae1b)
*/
onPrimaryFixedVariant: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondary: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondary: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondaryContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondaryContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondaryFixed: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
secondaryFixedDim: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondaryFixed: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Secondary color role](https://m3.material.io/styles/color/roles#290bcc49-b728-414c-8cc5-04336c1c799c)
*/
onSecondaryFixedVariant: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiary: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiary: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiaryContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiaryContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiaryFixed: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
tertiaryFixedDim: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiaryFixed: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Tertiary color role](https://m3.material.io/styles/color/roles#727a0bf8-c95f-4f83-bc43-290d20f24e8e)
*/
onTertiaryFixedVariant: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
error: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
onError: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
errorContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Error color role](https://m3.material.io/styles/color/roles#47a25970-8a80-43be-8307-c12e0f7a2b43)
*/
onErrorContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Outline color role](https://m3.material.io/styles/color/roles#e7d72e44-72e2-4ce9-a18d-df07b1433d18)
*/
outline: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Outline color role](https://m3.material.io/styles/color/roles#e7d72e44-72e2-4ce9-a18d-df07b1433d18)
*/
outlineVariant: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*/
background: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*/
onBackground: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surface: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
onSurface: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceVariant: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
onSurfaceVariant: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*
* [Read more about Inverse colors](https://m3.material.io/styles/color/roles#7fc6b47e-db22-4e98-8359-7649a099e4a1)
*/
surfaceInverse: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*
* [Read more about Inverse colors](https://m3.material.io/styles/color/roles#7fc6b47e-db22-4e98-8359-7649a099e4a1)
*/
onSurfaceInverse: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceBright: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceDim: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainer: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerLow: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerLowest: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerHigh: ColorValue;
/**
* [Android Static Material Color](https://m3.material.io/styles/color/static/baseline)
*
* [Read more about Surface color role](https://m3.material.io/styles/color/roles#89f972b1-e372-494c-aabc-69aea34ed591)
*/
surfaceContainerHighest: ColorValue;
}
//# sourceMappingURL=android.material.types.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"android.material.types.d.ts","sourceRoot":"","sources":["../../src/color/android.material.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;;;OAIG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;OAIG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;OAIG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B;;;;;;OAMG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;OAIG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;;;OAIG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;;;OAIG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;OAIG;IACH,qBAAqB,EAAE,UAAU,CAAC;IAClC;;;;OAIG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;OAIG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;;;OAIG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B;;;;OAIG;IACH,oBAAoB,EAAE,UAAU,CAAC;IACjC;;;;OAIG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;OAIG;IACH,iBAAiB,EAAE,UAAU,CAAC;IAC9B;;;;OAIG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,uBAAuB,EAAE,UAAU,CAAC;IACpC;;;;OAIG;IACH,QAAQ,EAAE,UAAU,CAAC;IACrB;;;;OAIG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,iBAAiB,EAAE,UAAU,CAAC;IAC9B;;;;OAIG;IACH,mBAAmB,EAAE,UAAU,CAAC;IAChC;;;;OAIG;IACH,aAAa,EAAE,UAAU,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;;;OAIG;IACH,sBAAsB,EAAE,UAAU,CAAC;IACnC;;;;OAIG;IACH,KAAK,EAAE,UAAU,CAAC;IAClB;;;;OAIG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;OAIG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;OAIG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;OAIG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;;;OAIG;IACH,OAAO,EAAE,UAAU,CAAC;IACpB;;;;OAIG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;;;OAIG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;OAIG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;;;;;OAMG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,aAAa,EAAE,UAAU,CAAC;IAC1B;;;;OAIG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,mBAAmB,EAAE,UAAU,CAAC;IAChC;;;;OAIG;IACH,sBAAsB,EAAE,UAAU,CAAC;IACnC;;;;OAIG;IACH,oBAAoB,EAAE,UAAU,CAAC;IACjC;;;;OAIG;IACH,uBAAuB,EAAE,UAAU,CAAC;CACrC"}

View File

@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=android.material.types.js.map

File diff suppressed because one or more lines are too long

79
node_modules/expo-router/build/color/index.d.ts generated vendored Normal file
View File

@@ -0,0 +1,79 @@
import { type ColorValue } from 'react-native';
import type { AndroidColorAttrSDK1, AndroidColorAttrSDK5, AndroidColorAttrSDK14, AndroidColorAttrSDK21, AndroidColorAttrSDK23, AndroidColorAttrSDK25, AndroidColorAttrSDK26 } from './android.attr.types';
import type { AndroidBaseColorSDK1, AndroidBaseColorSDK14, AndroidBaseColorSDK31, AndroidBaseColorSDK34, AndroidBaseColorSDK35, AndroidDeprecatedColor } from './android.color.types';
import type { AndroidDynamicMaterialColorType } from './android.dynamic.types';
import type { AndroidStaticMaterialColorType } from './android.material.types';
import type { IOSBaseColor } from './ios.types';
export * from './android.color.types';
export * from './android.attr.types';
export * from './android.dynamic.types';
export * from './android.material.types';
export * from './ios.types';
export type AndroidBaseColor = AndroidBaseColorSDK1 & AndroidBaseColorSDK14 & AndroidBaseColorSDK31 & AndroidBaseColorSDK34 & AndroidBaseColorSDK35 & AndroidDeprecatedColor & {
[key: string]: ColorValue;
};
export type AndroidBaseColorAttr = AndroidColorAttrSDK1 & AndroidColorAttrSDK5 & AndroidColorAttrSDK14 & AndroidColorAttrSDK21 & AndroidColorAttrSDK23 & AndroidColorAttrSDK25 & AndroidColorAttrSDK26 & {
[key: string]: ColorValue;
};
export type AndroidMaterialColor = AndroidStaticMaterialColorType & {
[key: string]: ColorValue;
};
export type AndroidDynamicMaterialColor = AndroidDynamicMaterialColorType & {
[key: string]: ColorValue;
};
export interface ColorType {
ios: IOSBaseColor & {
[key: string]: ColorValue;
};
android: AndroidBaseColor & {
attr: AndroidBaseColorAttr;
material: AndroidMaterialColor;
dynamic: AndroidDynamicMaterialColor;
};
}
/**
* Color utility to access platform-specific colors easily.
*
* On **Android**, it provides access to:
* - System colors, as a type-safe wrapper over `PlatformColor`. For example, `Color.android.background`.
* - Attribute colors, as a type-safe wrapper over `PlatformColor`. For example, `Color.android.attr.colorPrimary`.
* - [Material Design 3 static colors](https://m3.material.io/styles/color/static/baseline). For example, `Color.android.material.primary`.
* - [Material Design 3 dynamic colors](https://m3.material.io/styles/color/dynamic/user-generated-source). For example, `Color.android.dynamic.primary`.
*
* On **iOS**, it is a type-safe wrapper over `PlatformColor`, providing access to system colors. For example, `Color.ios.label`.
*
* > **Note**: To ensure the colors align with the system theme on Android, make sure they are used within a component that responds to theme changes, such as by using the `useColorScheme` hook from React Native. This is especially important when using React Compiler, which can memoize components.
*
* @example
* ```tsx
* import { Color } from 'expo-router';
*
* Color.ios.label; // Access iOS system color
* Color.android.background; // Access Android system color
* Color.android.attr.colorPrimary; // Access Android attribute color
* Color.android.material.primary; // Access Android Material Design 3 static color
* Color.android.dynamic.primary; // Access Android Material Design 3 dynamic color
* ```
*
* @example
* ```tsx
* import { Color } from 'expo-router';
* import { View, Text, useColorScheme } from 'react-native';
*
* export default function MyComponent() {
* useColorScheme(); // Ensure the app responds to system theme changes
* return (
* <View style={{ flex: 1, backgroundColor: Color.android.dynamic.primary }}>
* <Text style={{ color: Color.android.dynamic.onPrimary }}>
* Hello, World!
* </Text>
* </View>
* );
* }
* ```
*
* @platform android
* @platform ios
*/
export declare const Color: ColorType;
//# sourceMappingURL=index.d.ts.map

1
node_modules/expo-router/build/color/index.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/color/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE9D,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAE5B,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GACjD,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,sBAAsB,GAAG;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CAC3B,CAAC;AAEJ,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,GACrD,oBAAoB,GACpB,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GACrB,qBAAqB,GAAG;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CAC3B,CAAC;AAEJ,MAAM,MAAM,oBAAoB,GAAG,8BAA8B,GAAG;IAClE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,+BAA+B,GAAG;IAC1E,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,YAAY,GAAG;QAClB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;KAC3B,CAAC;IACF,OAAO,EAAE,gBAAgB,GAAG;QAC1B,IAAI,EAAE,oBAAoB,CAAC;QAC3B,QAAQ,EAAE,oBAAoB,CAAC;QAC/B,OAAO,EAAE,2BAA2B,CAAC;KACtC,CAAC;CACH;AA+DD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,eAAO,MAAM,KAAK,EAAE,SAOnB,CAAC"}

130
node_modules/expo-router/build/color/index.js generated vendored Normal file
View File

@@ -0,0 +1,130 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Color = void 0;
const react_native_1 = require("react-native");
const materialColor_1 = require("./materialColor");
__exportStar(require("./android.color.types"), exports);
__exportStar(require("./android.attr.types"), exports);
__exportStar(require("./android.dynamic.types"), exports);
__exportStar(require("./android.material.types"), exports);
__exportStar(require("./ios.types"), exports);
const iosColor = new Proxy({}, {
get(_, prop) {
if (process.env.EXPO_OS === 'ios') {
return (0, react_native_1.PlatformColor)(prop);
}
return null;
},
});
const androidAttrColor = new Proxy({}, {
get(_, prop) {
if (process.env.EXPO_OS === 'android') {
return (0, react_native_1.PlatformColor)('?attr/' + prop);
}
return null;
},
});
const androidMaterialColor = new Proxy({}, {
get(_, prop) {
if (process.env.EXPO_OS === 'android') {
return (0, materialColor_1.Material3Color)(prop);
}
return null;
},
});
const androidDynamicColor = new Proxy({}, {
get(_, prop) {
if (process.env.EXPO_OS === 'android') {
return (0, materialColor_1.Material3DynamicColor)(prop);
}
return null;
},
});
const androidColor = new Proxy({
get attr() {
return androidAttrColor;
},
get material() {
return androidMaterialColor;
},
get dynamic() {
return androidDynamicColor;
},
}, {
get(target, prop) {
if (prop in target) {
return target[prop];
}
if (process.env.EXPO_OS === 'android') {
return (0, react_native_1.PlatformColor)('@android:color/' + prop);
}
return null;
},
});
/**
* Color utility to access platform-specific colors easily.
*
* On **Android**, it provides access to:
* - System colors, as a type-safe wrapper over `PlatformColor`. For example, `Color.android.background`.
* - Attribute colors, as a type-safe wrapper over `PlatformColor`. For example, `Color.android.attr.colorPrimary`.
* - [Material Design 3 static colors](https://m3.material.io/styles/color/static/baseline). For example, `Color.android.material.primary`.
* - [Material Design 3 dynamic colors](https://m3.material.io/styles/color/dynamic/user-generated-source). For example, `Color.android.dynamic.primary`.
*
* On **iOS**, it is a type-safe wrapper over `PlatformColor`, providing access to system colors. For example, `Color.ios.label`.
*
* > **Note**: To ensure the colors align with the system theme on Android, make sure they are used within a component that responds to theme changes, such as by using the `useColorScheme` hook from React Native. This is especially important when using React Compiler, which can memoize components.
*
* @example
* ```tsx
* import { Color } from 'expo-router';
*
* Color.ios.label; // Access iOS system color
* Color.android.background; // Access Android system color
* Color.android.attr.colorPrimary; // Access Android attribute color
* Color.android.material.primary; // Access Android Material Design 3 static color
* Color.android.dynamic.primary; // Access Android Material Design 3 dynamic color
* ```
*
* @example
* ```tsx
* import { Color } from 'expo-router';
* import { View, Text, useColorScheme } from 'react-native';
*
* export default function MyComponent() {
* useColorScheme(); // Ensure the app responds to system theme changes
* return (
* <View style={{ flex: 1, backgroundColor: Color.android.dynamic.primary }}>
* <Text style={{ color: Color.android.dynamic.onPrimary }}>
* Hello, World!
* </Text>
* </View>
* );
* }
* ```
*
* @platform android
* @platform ios
*/
exports.Color = {
get ios() {
return iosColor;
},
get android() {
return androidColor;
},
};
//# sourceMappingURL=index.js.map

1
node_modules/expo-router/build/color/index.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

156
node_modules/expo-router/build/color/ios.types.d.ts generated vendored Normal file
View File

@@ -0,0 +1,156 @@
import type { ColorValue } from 'react-native';
export interface IOSBaseColor {
/**
* PlatformColor("systemBlue")
*/
systemBlue: ColorValue;
/**
* PlatformColor("systemBrown")
*/
systemBrown: ColorValue;
/**
* PlatformColor("systemCyan")
*/
systemCyan: ColorValue;
/**
* PlatformColor("systemGreen")
*/
systemGreen: ColorValue;
/**
* PlatformColor("systemIndigo")
*/
systemIndigo: ColorValue;
/**
* PlatformColor("systemMint")
*/
systemMint: ColorValue;
/**
* PlatformColor("systemOrange")
*/
systemOrange: ColorValue;
/**
* PlatformColor("systemPink")
*/
systemPink: ColorValue;
/**
* PlatformColor("systemPurple")
*/
systemPurple: ColorValue;
/**
* PlatformColor("systemRed")
*/
systemRed: ColorValue;
/**
* PlatformColor("systemTeal")
*/
systemTeal: ColorValue;
/**
* PlatformColor("systemYellow")
*/
systemYellow: ColorValue;
/**
* PlatformColor("systemGray")
*/
systemGray: ColorValue;
/**
* PlatformColor("systemGray2")
*/
systemGray2: ColorValue;
/**
* PlatformColor("systemGray3")
*/
systemGray3: ColorValue;
/**
* PlatformColor("systemGray4")
*/
systemGray4: ColorValue;
/**
* PlatformColor("systemGray5")
*/
systemGray5: ColorValue;
/**
* PlatformColor("systemGray6")
*/
systemGray6: ColorValue;
/**
* PlatformColor("label")
*/
label: ColorValue;
/**
* PlatformColor("secondaryLabel")
*/
secondaryLabel: ColorValue;
/**
* PlatformColor("tertiaryLabel")
*/
tertiaryLabel: ColorValue;
/**
* PlatformColor("quaternaryLabel")
*/
quaternaryLabel: ColorValue;
/**
* PlatformColor("systemFill")
*/
systemFill: ColorValue;
/**
* PlatformColor("secondarySystemFill")
*/
secondarySystemFill: ColorValue;
/**
* PlatformColor("tertiarySystemFill")
*/
tertiarySystemFill: ColorValue;
/**
* PlatformColor("quaternarySystemFill")
*/
quaternarySystemFill: ColorValue;
/**
* PlatformColor("placeholderText")
*/
placeholderText: ColorValue;
/**
* PlatformColor("systemBackground")
*/
systemBackground: ColorValue;
/**
* PlatformColor("secondarySystemBackground")
*/
secondarySystemBackground: ColorValue;
/**
* PlatformColor("tertiarySystemBackground")
*/
tertiarySystemBackground: ColorValue;
/**
* PlatformColor("systemGroupedBackground")
*/
systemGroupedBackground: ColorValue;
/**
* PlatformColor("secondarySystemGroupedBackground")
*/
secondarySystemGroupedBackground: ColorValue;
/**
* PlatformColor("tertiarySystemGroupedBackground")
*/
tertiarySystemGroupedBackground: ColorValue;
/**
* PlatformColor("separator")
*/
separator: ColorValue;
/**
* PlatformColor("opaqueSeparator")
*/
opaqueSeparator: ColorValue;
/**
* PlatformColor("link")
*/
link: ColorValue;
/**
* PlatformColor("darkText")
*/
darkText: ColorValue;
/**
* PlatformColor("lightText")
*/
lightText: ColorValue;
}
//# sourceMappingURL=ios.types.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ios.types.d.ts","sourceRoot":"","sources":["../../src/color/ios.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,YAAY,EAAE,UAAU,CAAC;IACzB;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,UAAU,CAAC;IACxB;;OAEG;IACH,KAAK,EAAE,UAAU,CAAC;IAClB;;OAEG;IACH,cAAc,EAAE,UAAU,CAAC;IAC3B;;OAEG;IACH,aAAa,EAAE,UAAU,CAAC;IAC1B;;OAEG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,mBAAmB,EAAE,UAAU,CAAC;IAChC;;OAEG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B;;OAEG;IACH,oBAAoB,EAAE,UAAU,CAAC;IACjC;;OAEG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;OAEG;IACH,gBAAgB,EAAE,UAAU,CAAC;IAC7B;;OAEG;IACH,yBAAyB,EAAE,UAAU,CAAC;IACtC;;OAEG;IACH,wBAAwB,EAAE,UAAU,CAAC;IACrC;;OAEG;IACH,uBAAuB,EAAE,UAAU,CAAC;IACpC;;OAEG;IACH,gCAAgC,EAAE,UAAU,CAAC;IAC7C;;OAEG;IACH,+BAA+B,EAAE,UAAU,CAAC;IAC5C;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;IACtB;;OAEG;IACH,eAAe,EAAE,UAAU,CAAC;IAC5B;;OAEG;IACH,IAAI,EAAE,UAAU,CAAC;IACjB;;OAEG;IACH,QAAQ,EAAE,UAAU,CAAC;IACrB;;OAEG;IACH,SAAS,EAAE,UAAU,CAAC;CACvB"}

3
node_modules/expo-router/build/color/ios.types.js generated vendored Normal file
View File

@@ -0,0 +1,3 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=ios.types.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ios.types.js","sourceRoot":"","sources":["../../src/color/ios.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ColorValue } from 'react-native';\n\nexport interface IOSBaseColor {\n /**\n * PlatformColor(\"systemBlue\")\n */\n systemBlue: ColorValue;\n /**\n * PlatformColor(\"systemBrown\")\n */\n systemBrown: ColorValue;\n /**\n * PlatformColor(\"systemCyan\")\n */\n systemCyan: ColorValue;\n /**\n * PlatformColor(\"systemGreen\")\n */\n systemGreen: ColorValue;\n /**\n * PlatformColor(\"systemIndigo\")\n */\n systemIndigo: ColorValue;\n /**\n * PlatformColor(\"systemMint\")\n */\n systemMint: ColorValue;\n /**\n * PlatformColor(\"systemOrange\")\n */\n systemOrange: ColorValue;\n /**\n * PlatformColor(\"systemPink\")\n */\n systemPink: ColorValue;\n /**\n * PlatformColor(\"systemPurple\")\n */\n systemPurple: ColorValue;\n /**\n * PlatformColor(\"systemRed\")\n */\n systemRed: ColorValue;\n /**\n * PlatformColor(\"systemTeal\")\n */\n systemTeal: ColorValue;\n /**\n * PlatformColor(\"systemYellow\")\n */\n systemYellow: ColorValue;\n /**\n * PlatformColor(\"systemGray\")\n */\n systemGray: ColorValue;\n /**\n * PlatformColor(\"systemGray2\")\n */\n systemGray2: ColorValue;\n /**\n * PlatformColor(\"systemGray3\")\n */\n systemGray3: ColorValue;\n /**\n * PlatformColor(\"systemGray4\")\n */\n systemGray4: ColorValue;\n /**\n * PlatformColor(\"systemGray5\")\n */\n systemGray5: ColorValue;\n /**\n * PlatformColor(\"systemGray6\")\n */\n systemGray6: ColorValue;\n /**\n * PlatformColor(\"label\")\n */\n label: ColorValue;\n /**\n * PlatformColor(\"secondaryLabel\")\n */\n secondaryLabel: ColorValue;\n /**\n * PlatformColor(\"tertiaryLabel\")\n */\n tertiaryLabel: ColorValue;\n /**\n * PlatformColor(\"quaternaryLabel\")\n */\n quaternaryLabel: ColorValue;\n /**\n * PlatformColor(\"systemFill\")\n */\n systemFill: ColorValue;\n /**\n * PlatformColor(\"secondarySystemFill\")\n */\n secondarySystemFill: ColorValue;\n /**\n * PlatformColor(\"tertiarySystemFill\")\n */\n tertiarySystemFill: ColorValue;\n /**\n * PlatformColor(\"quaternarySystemFill\")\n */\n quaternarySystemFill: ColorValue;\n /**\n * PlatformColor(\"placeholderText\")\n */\n placeholderText: ColorValue;\n /**\n * PlatformColor(\"systemBackground\")\n */\n systemBackground: ColorValue;\n /**\n * PlatformColor(\"secondarySystemBackground\")\n */\n secondarySystemBackground: ColorValue;\n /**\n * PlatformColor(\"tertiarySystemBackground\")\n */\n tertiarySystemBackground: ColorValue;\n /**\n * PlatformColor(\"systemGroupedBackground\")\n */\n systemGroupedBackground: ColorValue;\n /**\n * PlatformColor(\"secondarySystemGroupedBackground\")\n */\n secondarySystemGroupedBackground: ColorValue;\n /**\n * PlatformColor(\"tertiarySystemGroupedBackground\")\n */\n tertiarySystemGroupedBackground: ColorValue;\n /**\n * PlatformColor(\"separator\")\n */\n separator: ColorValue;\n /**\n * PlatformColor(\"opaqueSeparator\")\n */\n opaqueSeparator: ColorValue;\n /**\n * PlatformColor(\"link\")\n */\n link: ColorValue;\n /**\n * PlatformColor(\"darkText\")\n */\n darkText: ColorValue;\n /**\n * PlatformColor(\"lightText\")\n */\n lightText: ColorValue;\n}\n"]}

View File

@@ -0,0 +1,4 @@
export type AndroidMaterialColorName = 'primary' | 'onPrimary' | 'primaryContainer' | 'onPrimaryContainer' | 'primaryInverse' | 'primaryFixed' | 'primaryFixedDim' | 'onPrimaryFixed' | 'onPrimaryFixedVariant' | 'secondary' | 'onSecondary' | 'secondaryContainer' | 'onSecondaryContainer' | 'secondaryFixed' | 'secondaryFixedDim' | 'onSecondaryFixed' | 'onSecondaryFixedVariant' | 'tertiary' | 'onTertiary' | 'tertiaryContainer' | 'onTertiaryContainer' | 'tertiaryFixed' | 'tertiaryFixedDim' | 'onTertiaryFixed' | 'onTertiaryFixedVariant' | 'error' | 'onError' | 'errorContainer' | 'onErrorContainer' | 'outline' | 'outlineVariant' | 'onBackground' | 'surface' | 'onSurface' | 'surfaceVariant' | 'onSurfaceVariant' | 'surfaceInverse' | 'onSurfaceInverse' | 'surfaceBright' | 'surfaceDim' | 'surfaceContainer' | 'surfaceContainerLow' | 'surfaceContainerLowest' | 'surfaceContainerHigh' | 'surfaceContainerHighest';
export declare function Material3DynamicColor(name: string): string | null;
export declare function Material3Color(name: string): string | null;
//# sourceMappingURL=materialColor.android.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"materialColor.android.d.ts","sourceRoot":"","sources":["../../src/color/materialColor.android.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,wBAAwB,GAChC,SAAS,GACT,WAAW,GACX,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,GAChB,cAAc,GACd,iBAAiB,GACjB,gBAAgB,GAChB,uBAAuB,GACvB,WAAW,GACX,aAAa,GACb,oBAAoB,GACpB,sBAAsB,GACtB,gBAAgB,GAChB,mBAAmB,GACnB,kBAAkB,GAClB,yBAAyB,GACzB,UAAU,GACV,YAAY,GACZ,mBAAmB,GACnB,qBAAqB,GACrB,eAAe,GACf,kBAAkB,GAClB,iBAAiB,GACjB,wBAAwB,GACxB,OAAO,GACP,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,SAAS,GACT,gBAAgB,GAChB,cAAc,GACd,SAAS,GACT,WAAW,GACX,gBAAgB,GAChB,kBAAkB,GAClB,gBAAgB,GAChB,kBAAkB,GAClB,eAAe,GACf,YAAY,GACZ,kBAAkB,GAClB,qBAAqB,GACrB,wBAAwB,GACxB,sBAAsB,GACtB,yBAAyB,CAAC;AAyB9B,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGjE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG1D"}

View File

@@ -0,0 +1,28 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Material3DynamicColor = Material3DynamicColor;
exports.Material3Color = Material3Color;
const expo_modules_core_1 = require("expo-modules-core");
const react_native_1 = require("react-native");
let AndroidExpoRouterModule = null;
function NativeDynamicColor(name, scheme) {
if (!AndroidExpoRouterModule) {
AndroidExpoRouterModule = (0, expo_modules_core_1.requireNativeModule)('ExpoRouter');
}
return AndroidExpoRouterModule.Material3DynamicColor(name, scheme);
}
function NativeMaterialColor(name, scheme) {
if (!AndroidExpoRouterModule) {
AndroidExpoRouterModule = (0, expo_modules_core_1.requireNativeModule)('ExpoRouter');
}
return AndroidExpoRouterModule.Material3Color(name, scheme);
}
function Material3DynamicColor(name) {
const scheme = react_native_1.Appearance.getColorScheme();
return NativeDynamicColor(name, scheme ?? 'unspecified');
}
function Material3Color(name) {
const scheme = react_native_1.Appearance.getColorScheme();
return NativeMaterialColor(name, scheme ?? 'unspecified');
}
//# sourceMappingURL=materialColor.android.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"materialColor.android.js","sourceRoot":"","sources":["../../src/color/materialColor.android.ts"],"names":[],"mappings":";;AAyEA,sDAGC;AAED,wCAGC;AAjFD,yDAAwD;AACxD,+CAA0C;AAwD1C,IAAI,uBAAuB,GAAuC,IAAI,CAAC;AAEvE,SAAS,kBAAkB,CAAC,IAAY,EAAE,MAAkB;IAC1D,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7B,uBAAuB,GAAG,IAAA,uCAAmB,EAA8B,YAAY,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,uBAAuB,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,MAAkB;IAC3D,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7B,uBAAuB,GAAG,IAAA,uCAAmB,EAA8B,YAAY,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,uBAAuB,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED,SAAgB,qBAAqB,CAAC,IAAY;IAChD,MAAM,MAAM,GAAG,yBAAU,CAAC,cAAc,EAAE,CAAC;IAC3C,OAAO,kBAAkB,CAAC,IAAI,EAAE,MAAM,IAAI,aAAa,CAAC,CAAC;AAC3D,CAAC;AAED,SAAgB,cAAc,CAAC,IAAY;IACzC,MAAM,MAAM,GAAG,yBAAU,CAAC,cAAc,EAAE,CAAC;IAC3C,OAAO,mBAAmB,CAAC,IAAI,EAAE,MAAM,IAAI,aAAa,CAAC,CAAC;AAC5D,CAAC","sourcesContent":["import { requireNativeModule } from 'expo-modules-core';\nimport { Appearance } from 'react-native';\n\nexport type AndroidMaterialColorName =\n | 'primary'\n | 'onPrimary'\n | 'primaryContainer'\n | 'onPrimaryContainer'\n | 'primaryInverse'\n | 'primaryFixed'\n | 'primaryFixedDim'\n | 'onPrimaryFixed'\n | 'onPrimaryFixedVariant'\n | 'secondary'\n | 'onSecondary'\n | 'secondaryContainer'\n | 'onSecondaryContainer'\n | 'secondaryFixed'\n | 'secondaryFixedDim'\n | 'onSecondaryFixed'\n | 'onSecondaryFixedVariant'\n | 'tertiary'\n | 'onTertiary'\n | 'tertiaryContainer'\n | 'onTertiaryContainer'\n | 'tertiaryFixed'\n | 'tertiaryFixedDim'\n | 'onTertiaryFixed'\n | 'onTertiaryFixedVariant'\n | 'error'\n | 'onError'\n | 'errorContainer'\n | 'onErrorContainer'\n | 'outline'\n | 'outlineVariant'\n | 'onBackground'\n | 'surface'\n | 'onSurface'\n | 'surfaceVariant'\n | 'onSurfaceVariant'\n | 'surfaceInverse'\n | 'onSurfaceInverse'\n | 'surfaceBright'\n | 'surfaceDim'\n | 'surfaceContainer'\n | 'surfaceContainerLow'\n | 'surfaceContainerLowest'\n | 'surfaceContainerHigh'\n | 'surfaceContainerHighest';\n\ntype SchemeName = 'light' | 'dark' | 'unspecified';\n\ninterface AndroidExpoRouterModuleType {\n Material3DynamicColor(name: string, scheme: SchemeName): string | null;\n Material3Color(name: string, scheme: SchemeName): string | null;\n}\n\nlet AndroidExpoRouterModule: AndroidExpoRouterModuleType | null = null;\n\nfunction NativeDynamicColor(name: string, scheme: SchemeName): string | null {\n if (!AndroidExpoRouterModule) {\n AndroidExpoRouterModule = requireNativeModule<AndroidExpoRouterModuleType>('ExpoRouter');\n }\n return AndroidExpoRouterModule.Material3DynamicColor(name, scheme);\n}\n\nfunction NativeMaterialColor(name: string, scheme: SchemeName): string | null {\n if (!AndroidExpoRouterModule) {\n AndroidExpoRouterModule = requireNativeModule<AndroidExpoRouterModuleType>('ExpoRouter');\n }\n return AndroidExpoRouterModule.Material3Color(name, scheme);\n}\n\nexport function Material3DynamicColor(name: string): string | null {\n const scheme = Appearance.getColorScheme();\n return NativeDynamicColor(name, scheme ?? 'unspecified');\n}\n\nexport function Material3Color(name: string): string | null {\n const scheme = Appearance.getColorScheme();\n return NativeMaterialColor(name, scheme ?? 'unspecified');\n}\n"]}

View File

@@ -0,0 +1,4 @@
export type AndroidMaterialColorName = 'primary' | 'onPrimary' | 'primaryContainer' | 'onPrimaryContainer' | 'primaryInverse' | 'primaryFixed' | 'primaryFixedDim' | 'onPrimaryFixed' | 'onPrimaryFixedVariant' | 'secondary' | 'onSecondary' | 'secondaryContainer' | 'onSecondaryContainer' | 'secondaryFixed' | 'secondaryFixedDim' | 'onSecondaryFixed' | 'onSecondaryFixedVariant' | 'tertiary' | 'onTertiary' | 'tertiaryContainer' | 'onTertiaryContainer' | 'tertiaryFixed' | 'tertiaryFixedDim' | 'onTertiaryFixed' | 'onTertiaryFixedVariant' | 'error' | 'onError' | 'errorContainer' | 'onErrorContainer' | 'outline' | 'outlineVariant' | 'onBackground' | 'surface' | 'onSurface' | 'surfaceVariant' | 'onSurfaceVariant' | 'surfaceInverse' | 'onSurfaceInverse' | 'surfaceBright' | 'surfaceDim' | 'surfaceContainer' | 'surfaceContainerLow' | 'surfaceContainerLowest' | 'surfaceContainerHigh' | 'surfaceContainerHighest';
export declare function Material3DynamicColor(name: string): string | null;
export declare function Material3Color(name: string): string | null;
//# sourceMappingURL=materialColor.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"materialColor.d.ts","sourceRoot":"","sources":["../../src/color/materialColor.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,wBAAwB,GAChC,SAAS,GACT,WAAW,GACX,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,GAChB,cAAc,GACd,iBAAiB,GACjB,gBAAgB,GAChB,uBAAuB,GACvB,WAAW,GACX,aAAa,GACb,oBAAoB,GACpB,sBAAsB,GACtB,gBAAgB,GAChB,mBAAmB,GACnB,kBAAkB,GAClB,yBAAyB,GACzB,UAAU,GACV,YAAY,GACZ,mBAAmB,GACnB,qBAAqB,GACrB,eAAe,GACf,kBAAkB,GAClB,iBAAiB,GACjB,wBAAwB,GACxB,OAAO,GACP,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,SAAS,GACT,gBAAgB,GAChB,cAAc,GACd,SAAS,GACT,WAAW,GACX,gBAAgB,GAChB,kBAAkB,GAClB,gBAAgB,GAChB,kBAAkB,GAClB,eAAe,GACf,YAAY,GACZ,kBAAkB,GAClB,qBAAqB,GACrB,wBAAwB,GACxB,sBAAsB,GACtB,yBAAyB,CAAC;AAE9B,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEjE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE1D"}

11
node_modules/expo-router/build/color/materialColor.js generated vendored Normal file
View File

@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Material3DynamicColor = Material3DynamicColor;
exports.Material3Color = Material3Color;
function Material3DynamicColor(name) {
return null;
}
function Material3Color(name) {
return null;
}
//# sourceMappingURL=materialColor.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"materialColor.js","sourceRoot":"","sources":["../../src/color/materialColor.ts"],"names":[],"mappings":";;AA+CA,sDAEC;AAED,wCAEC;AAND,SAAgB,qBAAqB,CAAC,IAAY;IAChD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,cAAc,CAAC,IAAY;IACzC,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["export type AndroidMaterialColorName =\n | 'primary'\n | 'onPrimary'\n | 'primaryContainer'\n | 'onPrimaryContainer'\n | 'primaryInverse'\n | 'primaryFixed'\n | 'primaryFixedDim'\n | 'onPrimaryFixed'\n | 'onPrimaryFixedVariant'\n | 'secondary'\n | 'onSecondary'\n | 'secondaryContainer'\n | 'onSecondaryContainer'\n | 'secondaryFixed'\n | 'secondaryFixedDim'\n | 'onSecondaryFixed'\n | 'onSecondaryFixedVariant'\n | 'tertiary'\n | 'onTertiary'\n | 'tertiaryContainer'\n | 'onTertiaryContainer'\n | 'tertiaryFixed'\n | 'tertiaryFixedDim'\n | 'onTertiaryFixed'\n | 'onTertiaryFixedVariant'\n | 'error'\n | 'onError'\n | 'errorContainer'\n | 'onErrorContainer'\n | 'outline'\n | 'outlineVariant'\n | 'onBackground'\n | 'surface'\n | 'onSurface'\n | 'surfaceVariant'\n | 'onSurfaceVariant'\n | 'surfaceInverse'\n | 'onSurfaceInverse'\n | 'surfaceBright'\n | 'surfaceDim'\n | 'surfaceContainer'\n | 'surfaceContainerLow'\n | 'surfaceContainerLowest'\n | 'surfaceContainerHigh'\n | 'surfaceContainerHighest';\n\nexport function Material3DynamicColor(name: string): string | null {\n return null;\n}\n\nexport function Material3Color(name: string): string | null {\n return null;\n}\n"]}

4
node_modules/expo-router/build/constants.d.ts generated vendored Normal file
View File

@@ -0,0 +1,4 @@
export declare const INTERNAL_SLOT_NAME = "__root";
export declare const NOT_FOUND_ROUTE_NAME = "+not-found";
export declare const SITEMAP_ROUTE_NAME = "_sitemap";
//# sourceMappingURL=constants.d.ts.map

1
node_modules/expo-router/build/constants.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAC3C,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,kBAAkB,aAAa,CAAC"}

7
node_modules/expo-router/build/constants.js generated vendored Normal file
View File

@@ -0,0 +1,7 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SITEMAP_ROUTE_NAME = exports.NOT_FOUND_ROUTE_NAME = exports.INTERNAL_SLOT_NAME = void 0;
exports.INTERNAL_SLOT_NAME = '__root';
exports.NOT_FOUND_ROUTE_NAME = '+not-found';
exports.SITEMAP_ROUTE_NAME = '_sitemap';
//# sourceMappingURL=constants.js.map

1
node_modules/expo-router/build/constants.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG,QAAQ,CAAC;AAC9B,QAAA,oBAAoB,GAAG,YAAY,CAAC;AACpC,QAAA,kBAAkB,GAAG,UAAU,CAAC","sourcesContent":["export const INTERNAL_SLOT_NAME = '__root';\nexport const NOT_FOUND_ROUTE_NAME = '+not-found';\nexport const SITEMAP_ROUTE_NAME = '_sitemap';\n"]}

16
node_modules/expo-router/build/doctor/index.d.ts generated vendored Normal file
View File

@@ -0,0 +1,16 @@
import type { PackageJSONConfig } from 'expo/config';
type IncorrectDependency = {
packageName: string;
packageType: 'dependencies' | 'devDependencies';
expectedVersionOrRange: string;
actualVersion: string;
};
export declare function doctor(pkg: PackageJSONConfig, appReactNavigationPath: string | undefined, { bold, learnMore, }: {
bold: (text: string) => string;
learnMore: (url: string, options?: {
learnMoreMessage?: string;
dim?: boolean;
}) => string;
}): IncorrectDependency[];
export {};
//# sourceMappingURL=index.d.ts.map

1
node_modules/expo-router/build/doctor/index.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/doctor/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAgBrD,KAAK,mBAAmB,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,cAAc,GAAG,iBAAiB,CAAC;IAChD,sBAAsB,EAAE,MAAM,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,wBAAgB,MAAM,CACpB,GAAG,EAAE,iBAAiB,EACtB,sBAAsB,EAAE,MAAM,GAAG,SAAS,EAE1C,EACE,IAAI,EACJ,SAAS,GACV,EAAE;IACD,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/B,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,CAAC;CAC5F,GACA,mBAAmB,EAAE,CA4DvB"}

68
node_modules/expo-router/build/doctor/index.js generated vendored Normal file
View File

@@ -0,0 +1,68 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.doctor = doctor;
const debug_1 = __importDefault(require("debug"));
const subset_1 = __importDefault(require("semver/ranges/subset"));
const debug = (0, debug_1.default)('expo:router:doctor');
/**
* Small hack to get the package.json.
* We do no use import() as this would require changing the rootDir in `tsconfig.json`,
* which in turn will change the structure of the outDir.
*/
const routerPkg = require('../../package.json');
const routerDependencies = Object.entries(Object.assign({}, routerPkg.dependencies, routerPkg.peerDependencies)).filter((entry) => entry[0].startsWith('@react-navigation') && entry[1] !== '*');
function doctor(pkg, appReactNavigationPath,
// Reuse the formatting functions from expo-cli
{ bold, learnMore, }) {
const resolvedDependencies = { ...pkg.dependencies, ...pkg.devDependencies };
const libReactNavigationPath = require.resolve('@react-navigation/native');
const userExcluded = new Set(pkg.expo?.install?.exclude);
const incorrectDependencies = [];
/**
* If the user has a dependency with a sub-dependency on @react-navigation/native, this may install a different
* version of @react-navigation/native than the one required by expo-router.
*
* To detect this, we require the caller of this function to first resolve their path to @react-navigation/native, as
* they will get the 'top' level package. When expo-router resolves the path to @react-navigation/native, if it is different
* when the versions must not have matched and the package manager installed a nested node_module folder with a different
* version of @react-navigation/native.
*/
if (
// NOTE(@kitten): This looks inverted. However, this check will soon be redundant
userExcluded.has('@react-navigation/native') &&
appReactNavigationPath &&
appReactNavigationPath !== libReactNavigationPath) {
console.warn(`Detected multiple versions of ${bold('@react-navigation/native')} in your ${bold('node_modules')}. This may lead to unexpected navigation behavior and errors. ${learnMore('https://expo.fyi/router-navigation-deps')}.`);
}
for (const [dep, allowedRange] of routerDependencies) {
if (userExcluded.has(dep)) {
debug(`Skipping ${dep} because it is excluded in the config`);
continue;
}
const usersRange = resolvedDependencies[dep];
/**
* routerDependencies contains all the dependencies that are required by expo-router,
* both peerDependencies and dependencies. If the user has not manually installed
* them, then we should skip them.
*/
if (!usersRange) {
continue;
}
debug(`Checking ${dep} with ${allowedRange} and found ${usersRange}`);
if (!usersRange || (0, subset_1.default)(allowedRange, usersRange)) {
continue;
}
debug(`Incorrect dependency found for ${dep}`);
incorrectDependencies.push({
packageName: dep,
packageType: pkg.dependencies && dep in pkg.dependencies ? 'dependencies' : 'devDependencies',
expectedVersionOrRange: allowedRange,
actualVersion: usersRange,
});
}
return incorrectDependencies;
}
//# sourceMappingURL=index.js.map

1
node_modules/expo-router/build/doctor/index.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,7 @@
import { LinkToOptions } from '../global-state/routing';
export declare function emitDomSetParams(params?: Record<string, undefined | string | number | (string | number)[]>): boolean;
export declare function emitDomDismiss(count?: number): boolean;
export declare function emitDomGoBack(): boolean;
export declare function emitDomDismissAll(): boolean;
export declare function emitDomLinkEvent(href: string, options: LinkToOptions): boolean;
//# sourceMappingURL=emitDomEvent.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"emitDomEvent.d.ts","sourceRoot":"","sources":["../../src/domComponents/emitDomEvent.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAWxD,wBAAgB,gBAAgB,CAC9B,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAM,WAG/E;AAED,wBAAgB,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,WAE5C;AAED,wBAAgB,aAAa,YAE5B;AAED,wBAAgB,iBAAiB,YAEhC;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,WAEpE"}

View File

@@ -0,0 +1,32 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.emitDomSetParams = emitDomSetParams;
exports.emitDomDismiss = emitDomDismiss;
exports.emitDomGoBack = emitDomGoBack;
exports.emitDomDismissAll = emitDomDismissAll;
exports.emitDomLinkEvent = emitDomLinkEvent;
const events_1 = require("./events");
function emitDomEvent(type, data = {}) {
// @ts-expect-error: ReactNativeWebView is a global variable injected by the WebView
if (typeof $$EXPO_INITIAL_PROPS !== 'undefined' && typeof ReactNativeWebView !== 'undefined') {
window.ReactNativeWebView.postMessage(JSON.stringify({ type, data }));
return true;
}
return false;
}
function emitDomSetParams(params = {}) {
return emitDomEvent(events_1.ROUTER_SET_PARAMS_TYPE, { params });
}
function emitDomDismiss(count) {
return emitDomEvent(events_1.ROUTER_DISMISS_TYPE, { count });
}
function emitDomGoBack() {
return emitDomEvent(events_1.ROUTER_BACK_TYPE);
}
function emitDomDismissAll() {
return emitDomEvent(events_1.ROUTER_DISMISS_ALL_TYPE);
}
function emitDomLinkEvent(href, options) {
return emitDomEvent(events_1.ROUTER_LINK_TYPE, { href, options });
}
//# sourceMappingURL=emitDomEvent.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"emitDomEvent.js","sourceRoot":"","sources":["../../src/domComponents/emitDomEvent.ts"],"names":[],"mappings":";;AAkBA,4CAIC;AAED,wCAEC;AAED,sCAEC;AAED,8CAEC;AAED,4CAEC;AAtCD,qCAMkB;AAGlB,SAAS,YAAY,CAAC,IAAY,EAAE,OAAY,EAAE;IAChD,oFAAoF;IACpF,IAAI,OAAO,oBAAoB,KAAK,WAAW,IAAI,OAAO,kBAAkB,KAAK,WAAW,EAAE,CAAC;QAC5F,MAAc,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/E,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,gBAAgB,CAC9B,SAA4E,EAAE;IAE9E,OAAO,YAAY,CAAC,+BAAsB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED,SAAgB,cAAc,CAAC,KAAc;IAC3C,OAAO,YAAY,CAAC,4BAAmB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AACtD,CAAC;AAED,SAAgB,aAAa;IAC3B,OAAO,YAAY,CAAC,yBAAgB,CAAC,CAAC;AACxC,CAAC;AAED,SAAgB,iBAAiB;IAC/B,OAAO,YAAY,CAAC,gCAAuB,CAAC,CAAC;AAC/C,CAAC;AAED,SAAgB,gBAAgB,CAAC,IAAY,EAAE,OAAsB;IACnE,OAAO,YAAY,CAAC,yBAAgB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAC3D,CAAC","sourcesContent":["import {\n ROUTER_SET_PARAMS_TYPE,\n ROUTER_DISMISS_TYPE,\n ROUTER_BACK_TYPE,\n ROUTER_DISMISS_ALL_TYPE,\n ROUTER_LINK_TYPE,\n} from './events';\nimport { LinkToOptions } from '../global-state/routing';\n\nfunction emitDomEvent(type: string, data: any = {}) {\n // @ts-expect-error: ReactNativeWebView is a global variable injected by the WebView\n if (typeof $$EXPO_INITIAL_PROPS !== 'undefined' && typeof ReactNativeWebView !== 'undefined') {\n (window as any).ReactNativeWebView.postMessage(JSON.stringify({ type, data }));\n return true;\n }\n return false;\n}\n\nexport function emitDomSetParams(\n params: Record<string, undefined | string | number | (string | number)[]> = {}\n) {\n return emitDomEvent(ROUTER_SET_PARAMS_TYPE, { params });\n}\n\nexport function emitDomDismiss(count?: number) {\n return emitDomEvent(ROUTER_DISMISS_TYPE, { count });\n}\n\nexport function emitDomGoBack() {\n return emitDomEvent(ROUTER_BACK_TYPE);\n}\n\nexport function emitDomDismissAll() {\n return emitDomEvent(ROUTER_DISMISS_ALL_TYPE);\n}\n\nexport function emitDomLinkEvent(href: string, options: LinkToOptions) {\n return emitDomEvent(ROUTER_LINK_TYPE, { href, options });\n}\n"]}

View File

@@ -0,0 +1,6 @@
export declare const ROUTER_LINK_TYPE = "$$router_link";
export declare const ROUTER_DISMISS_ALL_TYPE = "$$router_dismissAll";
export declare const ROUTER_DISMISS_TYPE = "$$router_dismiss";
export declare const ROUTER_BACK_TYPE = "$$router_goBack";
export declare const ROUTER_SET_PARAMS_TYPE = "$$router_setParams";
//# sourceMappingURL=events.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/domComponents/events.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAChD,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAC7D,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AACtD,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAClD,eAAO,MAAM,sBAAsB,uBAAuB,CAAC"}

View File

@@ -0,0 +1,9 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ROUTER_SET_PARAMS_TYPE = exports.ROUTER_BACK_TYPE = exports.ROUTER_DISMISS_TYPE = exports.ROUTER_DISMISS_ALL_TYPE = exports.ROUTER_LINK_TYPE = void 0;
exports.ROUTER_LINK_TYPE = '$$router_link';
exports.ROUTER_DISMISS_ALL_TYPE = '$$router_dismissAll';
exports.ROUTER_DISMISS_TYPE = '$$router_dismiss';
exports.ROUTER_BACK_TYPE = '$$router_goBack';
exports.ROUTER_SET_PARAMS_TYPE = '$$router_setParams';
//# sourceMappingURL=events.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/domComponents/events.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,eAAe,CAAC;AACnC,QAAA,uBAAuB,GAAG,qBAAqB,CAAC;AAChD,QAAA,mBAAmB,GAAG,kBAAkB,CAAC;AACzC,QAAA,gBAAgB,GAAG,iBAAiB,CAAC;AACrC,QAAA,sBAAsB,GAAG,oBAAoB,CAAC","sourcesContent":["export const ROUTER_LINK_TYPE = '$$router_link';\nexport const ROUTER_DISMISS_ALL_TYPE = '$$router_dismissAll';\nexport const ROUTER_DISMISS_TYPE = '$$router_dismiss';\nexport const ROUTER_BACK_TYPE = '$$router_goBack';\nexport const ROUTER_SET_PARAMS_TYPE = '$$router_setParams';\n"]}

View File

@@ -0,0 +1,2 @@
export declare function useDomComponentNavigation(): void;
//# sourceMappingURL=useDomComponentNavigation.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"useDomComponentNavigation.d.ts","sourceRoot":"","sources":["../../src/domComponents/useDomComponentNavigation.ts"],"names":[],"mappings":"AAYA,wBAAgB,yBAAyB,SAyBxC"}

View File

@@ -0,0 +1,37 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.useDomComponentNavigation = useDomComponentNavigation;
const global_1 = require("expo/dom/global");
const react_1 = __importDefault(require("react"));
const events_1 = require("./events");
const routing_1 = require("../global-state/routing");
function useDomComponentNavigation() {
react_1.default.useEffect(() => {
if (process.env.EXPO_OS === 'web') {
return () => { };
}
return (0, global_1.addGlobalDomEventListener)(({ type, data }) => {
switch (type) {
case events_1.ROUTER_LINK_TYPE:
(0, routing_1.linkTo)(data.href, data.options);
break;
case events_1.ROUTER_DISMISS_ALL_TYPE:
(0, routing_1.dismissAll)();
break;
case events_1.ROUTER_DISMISS_TYPE:
(0, routing_1.dismiss)(data.count);
break;
case events_1.ROUTER_BACK_TYPE:
(0, routing_1.goBack)();
break;
case events_1.ROUTER_SET_PARAMS_TYPE:
(0, routing_1.setParams)(data.params);
break;
}
});
}, []);
}
//# sourceMappingURL=useDomComponentNavigation.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"useDomComponentNavigation.js","sourceRoot":"","sources":["../../src/domComponents/useDomComponentNavigation.ts"],"names":[],"mappings":";;;;;AAYA,8DAyBC;AArCD,4CAA4D;AAC5D,kDAA0B;AAE1B,qCAMkB;AAClB,qDAAyF;AAEzF,SAAgB,yBAAyB;IACvC,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAClC,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,IAAA,kCAAyB,EAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE;YACvD,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,yBAAgB;oBACnB,IAAA,gBAAM,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBAChC,MAAM;gBACR,KAAK,gCAAuB;oBAC1B,IAAA,oBAAU,GAAE,CAAC;oBACb,MAAM;gBACR,KAAK,4BAAmB;oBACtB,IAAA,iBAAO,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACpB,MAAM;gBACR,KAAK,yBAAgB;oBACnB,IAAA,gBAAM,GAAE,CAAC;oBACT,MAAM;gBACR,KAAK,+BAAsB;oBACzB,IAAA,mBAAS,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACvB,MAAM;YACV,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC","sourcesContent":["import { addGlobalDomEventListener } from 'expo/dom/global';\nimport React from 'react';\n\nimport {\n ROUTER_LINK_TYPE,\n ROUTER_DISMISS_ALL_TYPE,\n ROUTER_DISMISS_TYPE,\n ROUTER_BACK_TYPE,\n ROUTER_SET_PARAMS_TYPE,\n} from './events';\nimport { dismiss, dismissAll, goBack, linkTo, setParams } from '../global-state/routing';\n\nexport function useDomComponentNavigation() {\n React.useEffect(() => {\n if (process.env.EXPO_OS === 'web') {\n return () => {};\n }\n return addGlobalDomEventListener<any>(({ type, data }) => {\n switch (type) {\n case ROUTER_LINK_TYPE:\n linkTo(data.href, data.options);\n break;\n case ROUTER_DISMISS_ALL_TYPE:\n dismissAll();\n break;\n case ROUTER_DISMISS_TYPE:\n dismiss(data.count);\n break;\n case ROUTER_BACK_TYPE:\n goBack();\n break;\n case ROUTER_SET_PARAMS_TYPE:\n setParams(data.params);\n break;\n }\n });\n }, []);\n}\n"]}

37
node_modules/expo-router/build/exports.d.ts generated vendored Normal file
View File

@@ -0,0 +1,37 @@
import { Navigator, Slot } from './views/Navigator';
export { useRouter, useUnstableGlobalHref, usePathname, useNavigationContainerRef, useGlobalSearchParams, useLocalSearchParams, useSegments, useRootNavigation, useRootNavigationState, useLoaderData, } from './hooks';
export { router, Router } from './imperative-api';
export * from './link/Link';
export type { LinkMenuActionProps, LinkMenuProps, LinkPreviewProps, LinkTriggerProps, } from './link/elements';
export type { LinkAppleZoomProps } from './link/zoom/link-apple-zoom';
export { usePreventZoomTransitionDismissal } from './link/zoom/usePreventZoomTransitionDismissal';
export { type UsePreventZoomTransitionDismissalOptions } from './link/zoom/usePreventZoomTransitionDismissal.types';
export type { DismissalBoundsRect } from './link/zoom/zoom-transition-context';
export { useIsPreview } from './link/preview/PreviewRouteContext';
export { withLayoutContext } from './layouts/withLayoutContext';
export { Navigator, Slot };
export { ExpoRoot } from './ExpoRoot';
export { Unmatched } from './views/Unmatched';
export { Sitemap } from './views/Sitemap';
export { useSitemap, SitemapType } from './views/useSitemap';
export { ErrorBoundaryProps } from './views/Try';
export { ErrorBoundary } from './views/ErrorBoundary';
export type { ScreenProps } from './useScreens';
/**
* @hidden
*/
export * as SplashScreen from './views/Splash';
export { useNavigation } from './useNavigation';
export { useFocusEffect, EffectCallback } from './useFocusEffect';
export { useIsFocused } from './useIsFocused';
export type { ResultState } from './fork/getStateFromPath';
export type { RedirectConfig } from './getRoutesCore';
export type { SingularOptions } from './useScreens';
export type * from './types';
export * from './color';
export { Badge, BadgeProps, Icon, IconProps, Label, LabelProps, VectorIcon, VectorIconProps, } from './primitives';
export type { StackHeaderProps, StackHeaderItemSharedProps, StackScreenProps, StackScreenBackButtonProps, StackScreenTitleProps, StackSearchBarProps, StackToolbarBadgeProps, StackToolbarButtonProps, StackToolbarIconProps, StackToolbarLabelProps, StackToolbarMenuActionProps, StackToolbarMenuProps, StackToolbarProps, StackToolbarSearchBarSlotProps, StackToolbarSpacerProps, StackToolbarViewProps, } from './layouts/stack-utils';
export { unstable_navigationEvents } from './navigationEvents';
export { Stack } from './layouts/Stack';
export { Tabs } from './layouts/Tabs';
//# sourceMappingURL=exports.d.ts.map

1
node_modules/expo-router/build/exports.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"exports.d.ts","sourceRoot":"","sources":["../src/exports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,WAAW,EACX,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAElD,cAAc,aAAa,CAAC;AAC5B,YAAY,EACV,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,KAAK,wCAAwC,EAAE,MAAM,qDAAqD,CAAC;AACpH,YAAY,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAG3B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,mBAAmB,SAAS,CAAC;AAE7B,cAAc,SAAS,CAAC;AAExB,OAAO,EACL,KAAK,EACL,UAAU,EACV,IAAI,EACJ,SAAS,EACT,KAAK,EACL,UAAU,EACV,UAAU,EACV,eAAe,GAChB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,gBAAgB,EAChB,0BAA0B,EAC1B,gBAAgB,EAChB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC"}

99
node_modules/expo-router/build/exports.js generated vendored Normal file
View File

@@ -0,0 +1,99 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.Tabs = exports.Stack = exports.unstable_navigationEvents = exports.VectorIcon = exports.Label = exports.Icon = exports.Badge = exports.useIsFocused = exports.useFocusEffect = exports.useNavigation = exports.SplashScreen = exports.ErrorBoundary = exports.useSitemap = exports.Sitemap = exports.Unmatched = exports.ExpoRoot = exports.Slot = exports.Navigator = exports.withLayoutContext = exports.useIsPreview = exports.usePreventZoomTransitionDismissal = exports.router = exports.useLoaderData = exports.useRootNavigationState = exports.useRootNavigation = exports.useSegments = exports.useLocalSearchParams = exports.useGlobalSearchParams = exports.useNavigationContainerRef = exports.usePathname = exports.useUnstableGlobalHref = exports.useRouter = void 0;
// Expo Router API
const Navigator_1 = require("./views/Navigator");
Object.defineProperty(exports, "Navigator", { enumerable: true, get: function () { return Navigator_1.Navigator; } });
Object.defineProperty(exports, "Slot", { enumerable: true, get: function () { return Navigator_1.Slot; } });
var hooks_1 = require("./hooks");
Object.defineProperty(exports, "useRouter", { enumerable: true, get: function () { return hooks_1.useRouter; } });
Object.defineProperty(exports, "useUnstableGlobalHref", { enumerable: true, get: function () { return hooks_1.useUnstableGlobalHref; } });
Object.defineProperty(exports, "usePathname", { enumerable: true, get: function () { return hooks_1.usePathname; } });
Object.defineProperty(exports, "useNavigationContainerRef", { enumerable: true, get: function () { return hooks_1.useNavigationContainerRef; } });
Object.defineProperty(exports, "useGlobalSearchParams", { enumerable: true, get: function () { return hooks_1.useGlobalSearchParams; } });
Object.defineProperty(exports, "useLocalSearchParams", { enumerable: true, get: function () { return hooks_1.useLocalSearchParams; } });
Object.defineProperty(exports, "useSegments", { enumerable: true, get: function () { return hooks_1.useSegments; } });
Object.defineProperty(exports, "useRootNavigation", { enumerable: true, get: function () { return hooks_1.useRootNavigation; } });
Object.defineProperty(exports, "useRootNavigationState", { enumerable: true, get: function () { return hooks_1.useRootNavigationState; } });
Object.defineProperty(exports, "useLoaderData", { enumerable: true, get: function () { return hooks_1.useLoaderData; } });
var imperative_api_1 = require("./imperative-api");
Object.defineProperty(exports, "router", { enumerable: true, get: function () { return imperative_api_1.router; } });
__exportStar(require("./link/Link"), exports);
var usePreventZoomTransitionDismissal_1 = require("./link/zoom/usePreventZoomTransitionDismissal");
Object.defineProperty(exports, "usePreventZoomTransitionDismissal", { enumerable: true, get: function () { return usePreventZoomTransitionDismissal_1.usePreventZoomTransitionDismissal; } });
var PreviewRouteContext_1 = require("./link/preview/PreviewRouteContext");
Object.defineProperty(exports, "useIsPreview", { enumerable: true, get: function () { return PreviewRouteContext_1.useIsPreview; } });
var withLayoutContext_1 = require("./layouts/withLayoutContext");
Object.defineProperty(exports, "withLayoutContext", { enumerable: true, get: function () { return withLayoutContext_1.withLayoutContext; } });
// Expo Router Views
var ExpoRoot_1 = require("./ExpoRoot");
Object.defineProperty(exports, "ExpoRoot", { enumerable: true, get: function () { return ExpoRoot_1.ExpoRoot; } });
var Unmatched_1 = require("./views/Unmatched");
Object.defineProperty(exports, "Unmatched", { enumerable: true, get: function () { return Unmatched_1.Unmatched; } });
var Sitemap_1 = require("./views/Sitemap");
Object.defineProperty(exports, "Sitemap", { enumerable: true, get: function () { return Sitemap_1.Sitemap; } });
var useSitemap_1 = require("./views/useSitemap");
Object.defineProperty(exports, "useSitemap", { enumerable: true, get: function () { return useSitemap_1.useSitemap; } });
var ErrorBoundary_1 = require("./views/ErrorBoundary");
Object.defineProperty(exports, "ErrorBoundary", { enumerable: true, get: function () { return ErrorBoundary_1.ErrorBoundary; } });
// Platform
/**
* @hidden
*/
exports.SplashScreen = __importStar(require("./views/Splash"));
// React Navigation
var useNavigation_1 = require("./useNavigation");
Object.defineProperty(exports, "useNavigation", { enumerable: true, get: function () { return useNavigation_1.useNavigation; } });
var useFocusEffect_1 = require("./useFocusEffect");
Object.defineProperty(exports, "useFocusEffect", { enumerable: true, get: function () { return useFocusEffect_1.useFocusEffect; } });
var useIsFocused_1 = require("./useIsFocused");
Object.defineProperty(exports, "useIsFocused", { enumerable: true, get: function () { return useIsFocused_1.useIsFocused; } });
__exportStar(require("./color"), exports);
var primitives_1 = require("./primitives");
Object.defineProperty(exports, "Badge", { enumerable: true, get: function () { return primitives_1.Badge; } });
Object.defineProperty(exports, "Icon", { enumerable: true, get: function () { return primitives_1.Icon; } });
Object.defineProperty(exports, "Label", { enumerable: true, get: function () { return primitives_1.Label; } });
Object.defineProperty(exports, "VectorIcon", { enumerable: true, get: function () { return primitives_1.VectorIcon; } });
var navigationEvents_1 = require("./navigationEvents");
Object.defineProperty(exports, "unstable_navigationEvents", { enumerable: true, get: function () { return navigationEvents_1.unstable_navigationEvents; } });
var Stack_1 = require("./layouts/Stack");
Object.defineProperty(exports, "Stack", { enumerable: true, get: function () { return Stack_1.Stack; } });
var Tabs_1 = require("./layouts/Tabs");
Object.defineProperty(exports, "Tabs", { enumerable: true, get: function () { return Tabs_1.Tabs; } });
//# sourceMappingURL=exports.js.map

1
node_modules/expo-router/build/exports.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../src/exports.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kBAAkB;AAClB,iDAAoD;AA+B3C,0FA/BA,qBAAS,OA+BA;AAAE,qFA/BA,gBAAI,OA+BA;AA7BxB,iCAWiB;AAVf,kGAAA,SAAS,OAAA;AACT,8GAAA,qBAAqB,OAAA;AACrB,oGAAA,WAAW,OAAA;AACX,kHAAA,yBAAyB,OAAA;AACzB,8GAAA,qBAAqB,OAAA;AACrB,6GAAA,oBAAoB,OAAA;AACpB,oGAAA,WAAW,OAAA;AACX,0GAAA,iBAAiB,OAAA;AACjB,+GAAA,sBAAsB,OAAA;AACtB,sGAAA,aAAa,OAAA;AAGf,mDAAkD;AAAzC,wGAAA,MAAM,OAAA;AAEf,8CAA4B;AAQ5B,mGAAkG;AAAzF,sJAAA,iCAAiC,OAAA;AAG1C,0EAAkE;AAAzD,mHAAA,YAAY,OAAA;AAErB,iEAAgE;AAAvD,sHAAA,iBAAiB,OAAA;AAG1B,oBAAoB;AACpB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,+CAA8C;AAArC,sGAAA,SAAS,OAAA;AAClB,2CAA0C;AAAjC,kGAAA,OAAO,OAAA;AAChB,iDAA6D;AAApD,wGAAA,UAAU,OAAA;AAEnB,uDAAsD;AAA7C,8GAAA,aAAa,OAAA;AAGtB,WAAW;AACX;;GAEG;AACH,+DAA+C;AAE/C,mBAAmB;AACnB,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,mDAAkE;AAAzD,gHAAA,cAAc,OAAA;AACvB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AAQrB,0CAAwB;AAExB,2CASsB;AARpB,mGAAA,KAAK,OAAA;AAEL,kGAAA,IAAI,OAAA;AAEJ,mGAAA,KAAK,OAAA;AAEL,wGAAA,UAAU,OAAA;AAuBZ,uDAA+D;AAAtD,6HAAA,yBAAyB,OAAA;AAElC,yCAAwC;AAA/B,8FAAA,KAAK,OAAA;AACd,uCAAsC;AAA7B,4FAAA,IAAI,OAAA","sourcesContent":["// Expo Router API\nimport { Navigator, Slot } from './views/Navigator';\n\nexport {\n useRouter,\n useUnstableGlobalHref,\n usePathname,\n useNavigationContainerRef,\n useGlobalSearchParams,\n useLocalSearchParams,\n useSegments,\n useRootNavigation,\n useRootNavigationState,\n useLoaderData,\n} from './hooks';\n\nexport { router, Router } from './imperative-api';\n\nexport * from './link/Link';\nexport type {\n LinkMenuActionProps,\n LinkMenuProps,\n LinkPreviewProps,\n LinkTriggerProps,\n} from './link/elements';\nexport type { LinkAppleZoomProps } from './link/zoom/link-apple-zoom';\nexport { usePreventZoomTransitionDismissal } from './link/zoom/usePreventZoomTransitionDismissal';\nexport { type UsePreventZoomTransitionDismissalOptions } from './link/zoom/usePreventZoomTransitionDismissal.types';\nexport type { DismissalBoundsRect } from './link/zoom/zoom-transition-context';\nexport { useIsPreview } from './link/preview/PreviewRouteContext';\n\nexport { withLayoutContext } from './layouts/withLayoutContext';\nexport { Navigator, Slot };\n\n// Expo Router Views\nexport { ExpoRoot } from './ExpoRoot';\nexport { Unmatched } from './views/Unmatched';\nexport { Sitemap } from './views/Sitemap';\nexport { useSitemap, SitemapType } from './views/useSitemap';\nexport { ErrorBoundaryProps } from './views/Try';\nexport { ErrorBoundary } from './views/ErrorBoundary';\nexport type { ScreenProps } from './useScreens';\n\n// Platform\n/**\n * @hidden\n */\nexport * as SplashScreen from './views/Splash';\n\n// React Navigation\nexport { useNavigation } from './useNavigation';\nexport { useFocusEffect, EffectCallback } from './useFocusEffect';\nexport { useIsFocused } from './useIsFocused';\nexport type { ResultState } from './fork/getStateFromPath';\n\nexport type { RedirectConfig } from './getRoutesCore';\nexport type { SingularOptions } from './useScreens';\n\nexport type * from './types';\n\nexport * from './color';\n\nexport {\n Badge,\n BadgeProps,\n Icon,\n IconProps,\n Label,\n LabelProps,\n VectorIcon,\n VectorIconProps,\n} from './primitives';\n\nexport type {\n StackHeaderProps,\n StackHeaderItemSharedProps,\n StackScreenProps,\n StackScreenBackButtonProps,\n StackScreenTitleProps,\n StackSearchBarProps,\n StackToolbarBadgeProps,\n StackToolbarButtonProps,\n StackToolbarIconProps,\n StackToolbarLabelProps,\n StackToolbarMenuActionProps,\n StackToolbarMenuProps,\n StackToolbarProps,\n StackToolbarSearchBarSlotProps,\n StackToolbarSpacerProps,\n StackToolbarViewProps,\n} from './layouts/stack-utils';\n\nexport { unstable_navigationEvents } from './navigationEvents';\n\nexport { Stack } from './layouts/Stack';\nexport { Tabs } from './layouts/Tabs';\n"]}

2
node_modules/expo-router/build/fast-refresh.d.ts generated vendored Normal file
View File

@@ -0,0 +1,2 @@
export {};
//# sourceMappingURL=fast-refresh.d.ts.map

1
node_modules/expo-router/build/fast-refresh.d.ts.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"fast-refresh.d.ts","sourceRoot":"","sources":["../src/fast-refresh.ts"],"names":[],"mappings":"AAyEA,OAAO,EAAE,CAAC"}

71
node_modules/expo-router/build/fast-refresh.js generated vendored Normal file
View File

@@ -0,0 +1,71 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/**
* This is a hack for Expo Router to support Fast Refresh on _layout files
*
* Fast Refresh only works when:
* - Files only export React Components
* - All inverse dependencies only export React Components
*
* Expo Router's _layout files support exporting both 'unstable_settings' and 'ErrorBoundary'
*
* 'unstable_settings':
* - This is a plain object, so it will break Fast Refresh
*
* 'ErrorBoundary'
* - While this is a React component, it is imported from 'expo-router'
* - 'expo-router' has an inverse dependency on _ctx, which is a require.context object
*
* 'generateStaticParams'
* - This is a function that is not a React Component, so it will break Fast Refresh
*
*
* To resolve this issue, we extend ReactRefresh to flag these exports as React components
*
* @see https://reactnative.dev/docs/fast-refresh
*/
if (process.env.NODE_ENV === 'development') {
if (
// Should be a string at runtime
typeof __METRO_GLOBAL_PREFIX__ !== 'undefined' &&
// Should be set by Metro's require polyfill
global[__METRO_GLOBAL_PREFIX__ + '__ReactRefresh']) {
// source: https://github.com/facebook/metro/blob/main/packages/metro-runtime/src/polyfills/require.js
// TODO(@kitten): Add type for this and use `globalThis` over `global`
const Refresh = global[__METRO_GLOBAL_PREFIX__ + '__ReactRefresh'];
// Keep a reference to the original
const isLikelyComponentType = Refresh.isLikelyComponentType;
// Modules can be dereferenced at any time
const expoRouterExports = new WeakSet();
Object.assign(Refresh, {
/*
* isLikelyComponentType is called twice.
* 1. Initially with a modules export object
* 2. With each individual export of a module
*/
isLikelyComponentType(value) {
try {
if (typeof value === 'object') {
if ('unstable_settings' in value) {
expoRouterExports.add(value.unstable_settings);
}
if ('ErrorBoundary' in value) {
expoRouterExports.add(value.ErrorBoundary);
}
if ('generateStaticParams' in value) {
expoRouterExports.add(value.generateStaticParams);
}
}
}
catch {
// Ignore - we're just trying to avoid breaking Fast Refresh by using exports
// that aren't JS objects valid as keys for the WeakSet - like we've seen with
// some JSI::HostObject instances that are exported in a module - see #33670
// https://github.com/expo/expo/issues/33670
}
return expoRouterExports.has(value) || isLikelyComponentType(value);
},
});
}
}
//# sourceMappingURL=fast-refresh.js.map

1
node_modules/expo-router/build/fast-refresh.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"fast-refresh.js","sourceRoot":"","sources":["../src/fast-refresh.ts"],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;IAC3C;IACE,gCAAgC;IAChC,OAAO,uBAAuB,KAAK,WAAW;QAC9C,4CAA4C;QAC5C,MAAM,CAAC,uBAAuB,GAAG,gBAAgB,CAAC,EAClD,CAAC;QACD,sGAAsG;QACtG,sEAAsE;QACtE,MAAM,OAAO,GAAG,MAAM,CAAC,uBAAuB,GAAG,gBAAgB,CAAC,CAAC;QACnE,mCAAmC;QACnC,MAAM,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;QAC5D,0CAA0C;QAC1C,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAE,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;YACrB;;;;eAIG;YACH,qBAAqB,CAAC,KAAU;gBAC9B,IAAI,CAAC;oBACH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,IAAI,mBAAmB,IAAI,KAAK,EAAE,CAAC;4BACjC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;wBACjD,CAAC;wBACD,IAAI,eAAe,IAAI,KAAK,EAAE,CAAC;4BAC7B,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;wBAC7C,CAAC;wBACD,IAAI,sBAAsB,IAAI,KAAK,EAAE,CAAC;4BACpC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;wBACpD,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,6EAA6E;oBAC7E,8EAA8E;oBAC9E,4EAA4E;oBAC5E,4CAA4C;gBAC9C,CAAC;gBACD,OAAO,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACtE,CAAC;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC","sourcesContent":["declare let __METRO_GLOBAL_PREFIX__: string;\n\n/**\n * This is a hack for Expo Router to support Fast Refresh on _layout files\n *\n * Fast Refresh only works when:\n * - Files only export React Components\n * - All inverse dependencies only export React Components\n *\n * Expo Router's _layout files support exporting both 'unstable_settings' and 'ErrorBoundary'\n *\n * 'unstable_settings':\n * - This is a plain object, so it will break Fast Refresh\n *\n * 'ErrorBoundary'\n * - While this is a React component, it is imported from 'expo-router'\n * - 'expo-router' has an inverse dependency on _ctx, which is a require.context object\n *\n * 'generateStaticParams'\n * - This is a function that is not a React Component, so it will break Fast Refresh\n *\n *\n * To resolve this issue, we extend ReactRefresh to flag these exports as React components\n *\n * @see https://reactnative.dev/docs/fast-refresh\n */\nif (process.env.NODE_ENV === 'development') {\n if (\n // Should be a string at runtime\n typeof __METRO_GLOBAL_PREFIX__ !== 'undefined' &&\n // Should be set by Metro's require polyfill\n global[__METRO_GLOBAL_PREFIX__ + '__ReactRefresh']\n ) {\n // source: https://github.com/facebook/metro/blob/main/packages/metro-runtime/src/polyfills/require.js\n // TODO(@kitten): Add type for this and use `globalThis` over `global`\n const Refresh = global[__METRO_GLOBAL_PREFIX__ + '__ReactRefresh'];\n // Keep a reference to the original\n const isLikelyComponentType = Refresh.isLikelyComponentType;\n // Modules can be dereferenced at any time\n const expoRouterExports = new WeakSet();\n\n Object.assign(Refresh, {\n /*\n * isLikelyComponentType is called twice.\n * 1. Initially with a modules export object\n * 2. With each individual export of a module\n */\n isLikelyComponentType(value: any) {\n try {\n if (typeof value === 'object') {\n if ('unstable_settings' in value) {\n expoRouterExports.add(value.unstable_settings);\n }\n if ('ErrorBoundary' in value) {\n expoRouterExports.add(value.ErrorBoundary);\n }\n if ('generateStaticParams' in value) {\n expoRouterExports.add(value.generateStaticParams);\n }\n }\n } catch {\n // Ignore - we're just trying to avoid breaking Fast Refresh by using exports\n // that aren't JS objects valid as keys for the WeakSet - like we've seen with\n // some JSI::HostObject instances that are exported in a module - see #33670\n // https://github.com/expo/expo/issues/33670\n }\n return expoRouterExports.has(value) || isLikelyComponentType(value);\n },\n });\n }\n}\n\n// Export an empty object so TypeScript doesn't consider this an ambient module\nexport {};\n"]}

View File

@@ -0,0 +1,18 @@
import { DocumentTitleOptions, LinkingOptions, LocaleDirection, NavigationContainerProps, NavigationContainerRef } from '@react-navigation/native';
import React from 'react';
declare global {
var REACT_NAVIGATION_DEVTOOLS: WeakMap<NavigationContainerRef<any>, {
readonly linking: LinkingOptions<any>;
}>;
}
type Props<ParamList extends object> = NavigationContainerProps & {
direction?: LocaleDirection;
linking?: LinkingOptions<ParamList>;
fallback?: React.ReactNode;
documentTitle?: DocumentTitleOptions;
};
export declare const NavigationContainer: <RootParamList extends object = ReactNavigation.RootParamList>(props: Props<RootParamList> & {
ref?: React.Ref<NavigationContainerRef<RootParamList>>;
}) => React.ReactElement;
export {};
//# sourceMappingURL=NavigationContainer.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"NavigationContainer.d.ts","sourceRoot":"","sources":["../../src/fork/NavigationContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,oBAAoB,EAEpB,cAAc,EAEd,eAAe,EACf,wBAAwB,EACxB,sBAAsB,EASvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,yBAAyB,EAAE,OAAO,CACpC,sBAAsB,CAAC,GAAG,CAAC,EAC3B;QAAE,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,CAAA;KAAE,CAC1C,CAAC;CACH;AAID,KAAK,KAAK,CAAC,SAAS,SAAS,MAAM,IAAI,wBAAwB,GAAG;IAChE,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC,CAAC;AAwIF,eAAO,MAAM,mBAAmB,EAAiD,CAC/E,aAAa,SAAS,MAAM,GAAG,eAAe,CAAC,aAAa,EAE5D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG;IAC5B,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC;CACxD,KACE,KAAK,CAAC,YAAY,CAAC"}

View File

@@ -0,0 +1,107 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.NavigationContainer = void 0;
const native_1 = require("@react-navigation/native");
const react_1 = __importDefault(require("react"));
const react_native_1 = require("react-native");
const use_latest_callback_1 = __importDefault(require("use-latest-callback"));
const useBackButton_1 = require("./useBackButton");
const useDocumentTitle_1 = require("./useDocumentTitle");
const useLinking_1 = require("./useLinking");
const useThenable_1 = require("./useThenable");
const imperative_api_1 = require("../imperative-api");
globalThis.REACT_NAVIGATION_DEVTOOLS = new WeakMap();
/**
* Container component which holds the navigation state designed for React Native apps.
* This should be rendered at the root wrapping the whole app.
*
* @param props.initialState Initial state object for the navigation tree. When deep link handling is enabled, this will override deep links when specified. Make sure that you don't specify an `initialState` when there's a deep link (`Linking.getInitialURL()`).
* @param props.onReady Callback which is called after the navigation tree mounts.
* @param props.onStateChange Callback which is called with the latest navigation state when it changes.
* @param props.onUnhandledAction Callback which is called when an action is not handled.
* @param props.direction Text direction of the components. Defaults to `'ltr'`.
* @param props.theme Theme object for the UI elements.
* @param props.linking Options for deep linking. Deep link handling is enabled when this prop is provided, unless `linking.enabled` is `false`.
* @param props.fallback Fallback component to render until we have finished getting initial state when linking is enabled. Defaults to `null`.
* @param props.documentTitle Options to configure the document title on Web. Updating document title is handled by default unless `documentTitle.enabled` is `false`.
* @param props.children Child elements to render the content.
* @param props.ref Ref object which refers to the navigation object containing helper methods.
*/
function NavigationContainerInner({ direction = react_native_1.I18nManager.getConstants().isRTL ? 'rtl' : 'ltr', theme = native_1.DefaultTheme, linking, fallback = null, documentTitle, onReady, onStateChange, ...rest }, ref) {
const isLinkingEnabled = linking ? linking.enabled !== false : false;
if (linking?.config) {
(0, native_1.validatePathConfig)(linking.config);
}
const refContainer = react_1.default.useRef(null);
(0, useBackButton_1.useBackButton)(refContainer);
(0, useDocumentTitle_1.useDocumentTitle)(refContainer, documentTitle);
(0, imperative_api_1.useImperativeApiEmitter)(refContainer);
const [lastUnhandledLink, setLastUnhandledLink] = react_1.default.useState();
const { getInitialState } = (0, useLinking_1.useLinking)(refContainer, {
enabled: isLinkingEnabled,
prefixes: [],
...linking,
}, setLastUnhandledLink);
const linkingContext = react_1.default.useMemo(() => ({ options: linking }), [linking]);
const unhandledLinkingContext = react_1.default.useMemo(() => ({ lastUnhandledLink, setLastUnhandledLink }), [lastUnhandledLink, setLastUnhandledLink]);
const onReadyForLinkingHandling = (0, use_latest_callback_1.default)(() => {
// If the screen path matches lastUnhandledLink, we do not track it
const path = refContainer.current?.getCurrentRoute()?.path;
setLastUnhandledLink((previousLastUnhandledLink) => {
if (previousLastUnhandledLink === path) {
return undefined;
}
return previousLastUnhandledLink;
});
onReady?.();
});
const onStateChangeForLinkingHandling = (0, use_latest_callback_1.default)((state) => {
// If the screen path matches lastUnhandledLink, we do not track it
const path = refContainer.current?.getCurrentRoute()?.path;
setLastUnhandledLink((previousLastUnhandledLink) => {
if (previousLastUnhandledLink === path) {
return undefined;
}
return previousLastUnhandledLink;
});
onStateChange?.(state);
});
// Add additional linking related info to the ref
// This will be used by the devtools
react_1.default.useEffect(() => {
if (refContainer.current) {
REACT_NAVIGATION_DEVTOOLS.set(refContainer.current, {
get linking() {
return {
...linking,
enabled: isLinkingEnabled,
prefixes: linking?.prefixes ?? [],
getStateFromPath: linking?.getStateFromPath ?? native_1.getStateFromPath,
getPathFromState: linking?.getPathFromState ?? native_1.getPathFromState,
getActionFromState: linking?.getActionFromState ?? native_1.getActionFromState,
};
},
});
}
});
const [isResolved, initialState] = (0, useThenable_1.useThenable)(getInitialState);
react_1.default.useImperativeHandle(ref, () => refContainer.current);
const isLinkingReady = rest.initialState != null || !isLinkingEnabled || isResolved;
if (!isLinkingReady) {
// This is temporary until we have Suspense for data-fetching
// Then the fallback will be handled by a parent `Suspense` component
return <native_1.ThemeProvider value={theme}>{fallback}</native_1.ThemeProvider>;
}
return (<native_1.LocaleDirContext.Provider value={direction}>
<native_1.UNSTABLE_UnhandledLinkingContext.Provider value={unhandledLinkingContext}>
<native_1.LinkingContext.Provider value={linkingContext}>
<native_1.BaseNavigationContainer {...rest} theme={theme} onReady={onReadyForLinkingHandling} onStateChange={onStateChangeForLinkingHandling} initialState={rest.initialState == null ? initialState : rest.initialState} ref={refContainer}/>
</native_1.LinkingContext.Provider>
</native_1.UNSTABLE_UnhandledLinkingContext.Provider>
</native_1.LocaleDirContext.Provider>);
}
exports.NavigationContainer = react_1.default.forwardRef(NavigationContainerInner);
//# sourceMappingURL=NavigationContainer.js.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,25 @@
import type { NavigationState } from '@react-navigation/core';
type HistoryRecord = {
id: string;
state: NavigationState;
path: string;
};
export declare function createMemoryHistory(): {
readonly index: number;
get(index: number): HistoryRecord;
backIndex({ path }: {
path: string;
}): number;
push({ path, state }: {
path: string;
state: NavigationState;
}): void;
replace({ path, state }: {
path: string;
state: NavigationState;
}): void;
go(n: number): Promise<void> | undefined;
listen(listener: () => void): () => void;
};
export {};
//# sourceMappingURL=createMemoryHistory.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"createMemoryHistory.d.ts","sourceRoot":"","sources":["../../src/fork/createMemoryHistory.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,KAAK,aAAa,GAAG;IAEnB,EAAE,EAAE,MAAM,CAAC;IAEX,KAAK,EAAE,eAAe,CAAC;IAEvB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,wBAAgB,mBAAmB;oBAmBlB,MAAM;eAcR,MAAM;wBAIG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;0BAad;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE;6BAmBrC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE;UAoC3D,MAAM;qBA2FK,MAAM,IAAI;EAiB9B"}

View File

@@ -0,0 +1,180 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createMemoryHistory = createMemoryHistory;
const non_secure_1 = require("nanoid/non-secure");
function createMemoryHistory() {
let index = 0;
let items = [];
// Pending callbacks for `history.go(n)`
// We might modify the callback stored if it was interrupted, so we have a ref to identify it
const pending = [];
const interrupt = () => {
// If another history operation was performed we need to interrupt existing ones
// This makes sure that calls such as `history.replace` after `history.go` don't happen
// Since otherwise it won't be correct if something else has changed
pending.forEach((it) => {
const cb = it.cb;
it.cb = () => cb(true);
});
};
const history = {
get index() {
// We store an id in the state instead of an index
// Index could get out of sync with in-memory values if page reloads
const id = window.history.state?.id;
if (id) {
const index = items.findIndex((item) => item.id === id);
return index > -1 ? index : 0;
}
return 0;
},
get(index) {
return items[index];
},
backIndex({ path }) {
// We need to find the index from the element before current to get closest path to go back to
for (let i = index - 1; i >= 0; i--) {
const item = items[i];
if (item.path === path) {
return i;
}
}
return -1;
},
push({ path, state }) {
interrupt();
const id = (0, non_secure_1.nanoid)();
// When a new entry is pushed, all the existing entries after index will be inaccessible
// So we remove any existing entries after the current index to clean them up
items = items.slice(0, index + 1);
items.push({ path, state, id });
index = items.length - 1;
// We pass empty string for title because it's ignored in all browsers except safari
// We don't store state object in history.state because:
// - browsers have limits on how big it can be, and we don't control the size
// - while not recommended, there could be non-serializable data in state
window.history.pushState({ id }, '', path);
},
replace({ path, state }) {
interrupt();
const id = window.history.state?.id ?? (0, non_secure_1.nanoid)();
// Need to keep the hash part of the path if there was no previous history entry
// or the previous history entry had the same path
let pathWithHash = path;
const hash = pathWithHash.includes('#') ? '' : location.hash;
if (!items.length || items.findIndex((item) => item.id === id) < 0) {
// There are two scenarios for creating an array with only one history record:
// - When loaded id not found in the items array, this function by default will replace
// the first item. We need to keep only the new updated object, otherwise it will break
// the page when navigating forward in history.
// - This is the first time any state modifications are done
// So we need to push the entry as there's nothing to replace
pathWithHash = pathWithHash + hash;
items = [{ path: pathWithHash, state, id }];
index = 0;
}
else {
if (items[index].path === path) {
pathWithHash = pathWithHash + hash;
}
items[index] = { path, state, id };
}
window.history.replaceState({ id }, '', pathWithHash);
},
// `history.go(n)` is asynchronous, there are couple of things to keep in mind:
// - it won't do anything if we can't go `n` steps, the `popstate` event won't fire.
// - each `history.go(n)` call will trigger a separate `popstate` event with correct location.
// - the `popstate` event fires before the next frame after calling `history.go(n)`.
// This method differs from `history.go(n)` in the sense that it'll go back as many steps it can.
go(n) {
interrupt();
// To guard against unexpected navigation out of the app we will assume that browser history is only as deep as the length of our memory
// history. If we don't have an item to navigate to then update our index and navigate as far as we can without taking the user out of the app.
const nextIndex = index + n;
const lastItemIndex = items.length - 1;
if (n < 0 && !items[nextIndex]) {
// Attempted to navigate beyond the first index. Negating the current index will align the browser history with the first item.
n = -index;
index = 0;
}
else if (n > 0 && nextIndex > lastItemIndex) {
// Attempted to navigate past the last index. Calculate how many indices away from the last index and go there.
n = lastItemIndex - index;
index = lastItemIndex;
}
else {
index = nextIndex;
}
if (n === 0) {
return;
}
// When we call `history.go`, `popstate` will fire when there's history to go back to
// So we need to somehow handle following cases:
// - There's history to go back, `history.go` is called, and `popstate` fires
// - `history.go` is called multiple times, we need to resolve on respective `popstate`
// - No history to go back, but `history.go` was called, browser has no API to detect it
return new Promise((resolve, reject) => {
const done = (interrupted) => {
clearTimeout(timer);
if (interrupted) {
reject(new Error('History was changed during navigation.'));
return;
}
// There seems to be a bug in Chrome regarding updating the title
// If we set a title just before calling `history.go`, the title gets lost
// However the value of `document.title` is still what we set it to
// It's just not displayed in the tab bar
// To update the tab bar, we need to reset the title to something else first (e.g. '')
// And set the title to what it was before so it gets applied
// It won't work without setting it to empty string coz otherwise title isn't changing
// Which means that the browser won't do anything after setting the title
const { title } = window.document;
window.document.title = '';
window.document.title = title;
resolve();
};
pending.push({ ref: done, cb: done });
// If navigation didn't happen within 100ms, assume that it won't happen
// This may not be accurate, but hopefully it won't take so much time
// In Chrome, navigation seems to happen instantly in next microtask
// But on Firefox, it seems to take much longer, around 50ms from our testing
// We're using a hacky timeout since there doesn't seem to be way to know for sure
const timer = setTimeout(() => {
const index = pending.findIndex((it) => it.ref === done);
if (index > -1) {
pending[index].cb();
pending.splice(index, 1);
}
}, 100);
const onPopState = () => {
const id = window.history.state?.id;
const currentIndex = items.findIndex((item) => item.id === id);
// Fix createMemoryHistory.index variable's value
// as it may go out of sync when navigating in the browser.
index = Math.max(currentIndex, 0);
const last = pending.pop();
window.removeEventListener('popstate', onPopState);
last?.cb();
};
window.addEventListener('popstate', onPopState);
window.history.go(n);
});
},
// The `popstate` event is triggered when history changes, except `pushState` and `replaceState`
// If we call `history.go(n)` ourselves, we don't want it to trigger the listener
// Here we normalize it so that only external changes (e.g. user pressing back/forward) trigger the listener
listen(listener) {
const onPopState = () => {
if (pending.length) {
// This was triggered by `history.go(n)`, we shouldn't call the listener
return;
}
listener();
};
window.addEventListener('popstate', onPopState);
return () => window.removeEventListener('popstate', onPopState);
},
};
return history;
}
//# sourceMappingURL=createMemoryHistory.js.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,7 @@
export declare function parsePathAndParamsFromExpoGoLink(url: string): {
pathname: string;
queryString: string;
};
export declare function parsePathFromExpoGoLink(url: string): string;
export declare function extractExpoPathFromURL(_prefixes: string[], url?: string): string;
//# sourceMappingURL=extractPathFromURL.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"extractPathFromURL.d.ts","sourceRoot":"","sources":["../../src/fork/extractPathFromURL.ts"],"names":[],"mappings":"AAAA,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,MAAM,GAAG;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CAUA;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI3D;AA2GD,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,GAAE,MAAW,UAM3E"}

View File

@@ -0,0 +1,110 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.parsePathAndParamsFromExpoGoLink = parsePathAndParamsFromExpoGoLink;
exports.parsePathFromExpoGoLink = parsePathFromExpoGoLink;
exports.extractExpoPathFromURL = extractExpoPathFromURL;
function parsePathAndParamsFromExpoGoLink(url) {
// If the URL is defined (default in Expo Go dev apps) and the URL has no path:
// `exp://192.168.87.39:19000/` then use the default `exp://192.168.87.39:19000/--/`
const href = parsePathFromExpoGoLink(url);
const results = href.match(/([^?]*)(\?.*)?/);
return {
pathname: results?.[1] ?? '',
queryString: results?.[2] ?? '',
};
}
function parsePathFromExpoGoLink(url) {
// If the URL is defined (default in Expo Go dev apps) and the URL has no path:
// `exp://192.168.87.39:19000/` then use the default `exp://192.168.87.39:19000/--/`
return url.match(/exps?:\/\/.*?\/--\/(.*)/)?.[1] ?? '';
}
// This is only run on native.
function extractExactPathFromURL(url) {
if (
// If a universal link / app link / web URL is used, we should use the path
// from the URL, while stripping the origin.
url.match(/^https?:\/\//)) {
const { origin, href, hostname } = new URL(url);
if (hostname === 'exp.host' || hostname === 'u.expo.dev') {
// These are QR code generate deep-link that always like to the '/' path
// TODO: In the future, QR code may link to a specific path and this logic will need to be udpated
return '';
}
return href.replace(origin, '');
}
const isExpoGo = typeof expo !== 'undefined' && globalThis.expo?.modules?.ExpoGo;
// Handle special URLs used in Expo Go: `/--/pathname` -> `pathname`
if (isExpoGo &&
// while not exhaustive, `exp` and `exps` are the only two schemes which
// are passed through to other apps in Expo Go.
url.match(/^exp(s)?:\/\//)) {
const pathname = parsePathFromExpoGoLink(url);
if (pathname) {
return fromDeepLink('a://' + pathname);
}
// Match the `?.*` segment of the URL.
const queryParams = url.match(/exps?:\/\/.*\?(.*)/)?.[1];
if (queryParams) {
return fromDeepLink('a://?' + queryParams);
}
return '';
}
// TODO: Support dev client URLs
return fromDeepLink(url);
}
/** Major hack to support the makeshift expo-development-client system. */
function isExpoDevelopmentClient(url) {
return url.hostname === 'expo-development-client';
}
function fromDeepLink(url) {
let res;
try {
// This is for all standard deep links, e.g. `foobar://` where everything
// after the `://` is the path.
res = new URL(url);
}
catch {
/**
* We failed to parse the URL. This can occur for a variety of reasons, including:
* - Its a partial URL (e.g. `/route?query=param`).
* - It has a valid App scheme, but the scheme isn't a valid URL scheme (e.g. `my_app://`)
*/
// If `url` is already a path (starts with `/`), return it as-is
if (url.startsWith('/')) {
return url;
}
/**
* App schemes are not valid URL schemes, so they will fail to parse.
* We need to strip the scheme from these URLs
*/
return url.replace(/^[^:]+:\/\//, '');
}
if (isExpoDevelopmentClient(res)) {
if (!res.searchParams.get('url')) {
return '';
}
const incomingUrl = res.searchParams.get('url');
return extractExactPathFromURL(decodeURI(incomingUrl));
}
let results = '';
if (res.host) {
results += res.host;
}
if (res.pathname) {
results += res.pathname;
}
const qs = !res.search
? ''
: // @ts-ignore: `entries` is not on `URLSearchParams` in some typechecks.
[...res.searchParams.entries()].map(([k, v]) => `${k}=${decodeURIComponent(v)}`).join('&');
if (qs) {
results += '?' + qs;
}
return results;
}
function extractExpoPathFromURL(_prefixes, url = '') {
return (extractExactPathFromURL(url)
// TODO: We should get rid of this, dropping specificities is not good
.replace(/^\//, ''));
}
//# sourceMappingURL=extractPathFromURL.js.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,5 @@
import type { InitialState } from '@react-navigation/routers';
export declare function findFocusedRoute(state: InitialState): (Omit<import("@react-navigation/routers").Route<string, object | undefined>, "key"> & {
state?: InitialState;
}) | undefined;
//# sourceMappingURL=findFocusedRoute.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"findFocusedRoute.d.ts","sourceRoot":"","sources":["../../src/fork/findFocusedRoute.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY;;eAUnD"}

View File

@@ -0,0 +1,13 @@
"use strict";
// Forked so we can access without importing any React Native code in Node.js environments.
Object.defineProperty(exports, "__esModule", { value: true });
exports.findFocusedRoute = findFocusedRoute;
function findFocusedRoute(state) {
let current = state;
while (current?.routes[current.index ?? 0].state != null) {
current = current.routes[current.index ?? 0].state;
}
const route = current?.routes[current?.index ?? 0];
return route;
}
//# sourceMappingURL=findFocusedRoute.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"findFocusedRoute.js","sourceRoot":"","sources":["../../src/fork/findFocusedRoute.tsx"],"names":[],"mappings":";AAAA,2FAA2F;;AAI3F,4CAUC;AAVD,SAAgB,gBAAgB,CAAC,KAAmB;IAClD,IAAI,OAAO,GAA6B,KAAK,CAAC;IAE9C,OAAO,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;QACzD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACrD,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;IAEnD,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["// Forked so we can access without importing any React Native code in Node.js environments.\n\nimport type { InitialState } from '@react-navigation/routers';\n\nexport function findFocusedRoute(state: InitialState) {\n let current: InitialState | undefined = state;\n\n while (current?.routes[current.index ?? 0].state != null) {\n current = current.routes[current.index ?? 0].state;\n }\n\n const route = current?.routes[current?.index ?? 0];\n\n return route;\n}\n"]}

View File

@@ -0,0 +1,27 @@
import { type Route } from '@react-navigation/native';
import type { Options, State, StringifyConfig } from './getPathFromState';
export type ExpoOptions = {
preserveDynamicRoutes?: boolean;
preserveGroups?: boolean;
shouldEncodeURISegment?: boolean;
};
export type ExpoConfigItem = {
initialRouteName?: string;
};
export declare function validatePathConfig<ParamList extends object>({ preserveDynamicRoutes, preserveGroups, shouldEncodeURISegment, ...options }: Options<ParamList>): void;
export declare function fixCurrentParams(allParams: Record<string, any>, route: Route<string> & {
state?: State;
}, stringify?: StringifyConfig): {
[k: string]: string | string[];
};
export declare function appendQueryAndHash(path: string, { '#': hash, ...focusedParams }: Record<string, any>): string;
export declare function appendBaseUrl(path: string, baseUrl?: string | undefined): string;
export declare function getPathWithConventionsCollapsed({ pattern, route, params, preserveGroups, preserveDynamicRoutes, shouldEncodeURISegment, initialRouteName, }: ExpoOptions & {
pattern: string;
route: Route<any>;
params: Record<string, any>;
initialRouteName?: string;
}): string;
export declare const getParamName: (pattern: string) => string;
export declare function isDynamicPart(p: string): boolean;
//# sourceMappingURL=getPathFromState-forks.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getPathFromState-forks.d.ts","sourceRoot":"","sources":["../../src/fork/getPathFromState-forks.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,KAAK,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGlG,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG1E,MAAM,MAAM,WAAW,GAAG;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAE3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,SAAS,SAAS,MAAM,EAAE,EAC3D,qBAAqB,EACrB,cAAc,EACd,sBAAsB,EACtB,GAAG,OAAO,EACX,EAAE,OAAO,CAAC,SAAS,CAAC,QAEpB;AAED,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG;IACrB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,EACD,SAAS,CAAC,EAAE,eAAe;;EA0B5B;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,aAAa,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,UAarD;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC,UASxD;AAED,wBAAgB,+BAA+B,CAAC,EAC9C,OAAO,EACP,KAAK,EACL,MAAM,EACN,cAAc,EACd,qBAAqB,EACrB,sBAA6B,EAC7B,gBAAgB,GACjB,EAAE,WAAW,GAAG;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,UAkEA;AAED,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,WAAoD,CAAC;AAEjG,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,WAEtC"}

View File

@@ -0,0 +1,171 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.getParamName = void 0;
exports.validatePathConfig = validatePathConfig;
exports.fixCurrentParams = fixCurrentParams;
exports.appendQueryAndHash = appendQueryAndHash;
exports.appendBaseUrl = appendBaseUrl;
exports.getPathWithConventionsCollapsed = getPathWithConventionsCollapsed;
exports.isDynamicPart = isDynamicPart;
const native_1 = require("@react-navigation/native");
const queryString = __importStar(require("query-string"));
const matchers_1 = require("../matchers");
function validatePathConfig({ preserveDynamicRoutes, preserveGroups, shouldEncodeURISegment, ...options }) {
(0, native_1.validatePathConfig)(options);
}
function fixCurrentParams(allParams, route, stringify) {
// Better handle array params
const currentParams = Object.fromEntries(Object.entries(route.params).flatMap(([key, value]) => {
if (key === 'screen' || key === 'params') {
return [];
}
return [
[
key,
stringify?.[key]
? stringify[key](value)
: Array.isArray(value)
? value.map(String)
: String(value),
],
];
}));
// We always assign params, as non pattern routes may still have query params
Object.assign(allParams, currentParams);
return currentParams;
}
function appendQueryAndHash(path, { '#': hash, ...focusedParams }) {
const query = queryString.stringify(focusedParams, { sort: false });
if (query) {
path += `?${query}`;
}
if (hash) {
path += `#${hash}`;
}
return path;
}
function appendBaseUrl(path, baseUrl = process.env.EXPO_BASE_URL) {
if (process.env.NODE_ENV !== 'development') {
if (baseUrl) {
return `/${baseUrl.replace(/^\/+/, '').replace(/\/$/, '')}${path}`;
}
}
return path;
}
function getPathWithConventionsCollapsed({ pattern, route, params, preserveGroups, preserveDynamicRoutes, shouldEncodeURISegment = true, initialRouteName, }) {
const segments = pattern.split('/');
return segments
.map((p, i) => {
const name = (0, exports.getParamName)(p);
// Showing the route name seems ok, though whatever we show here will be incorrect
// Since the page doesn't actually exist
if (p.startsWith('*')) {
if (preserveDynamicRoutes) {
if (name === 'not-found') {
return '+not-found';
}
return `[...${name}]`;
}
else if (params[name]) {
if (Array.isArray(params[name])) {
return params[name].join('/');
}
return params[name];
}
else if (route.name.startsWith('[') && route.name.endsWith(']')) {
return '';
}
else if (p === '*not-found') {
return '';
}
else {
return route.name;
}
}
// If the path has a pattern for a param, put the param in the path
if (p.startsWith(':')) {
if (preserveDynamicRoutes) {
return `[${name}]`;
}
// Optional params without value assigned in route.params should be ignored
const value = params[name];
if (value === undefined && p.endsWith('?')) {
return;
}
return (shouldEncodeURISegment ? encodeURISegment(value) : value) ?? 'undefined';
}
if (!preserveGroups && (0, matchers_1.matchGroupName)(p) != null) {
// When the last part is a group it could be a shared URL
// if the route has an initialRouteName defined, then we should
// use that as the component path as we can assume it will be shown.
if (segments.length - 1 === i) {
if (initialRouteName) {
// Return an empty string if the init route is ambiguous.
if (segmentMatchesConvention(initialRouteName)) {
return '';
}
return shouldEncodeURISegment
? encodeURISegment(initialRouteName, { preserveBrackets: true })
: initialRouteName;
}
}
return '';
}
// Preserve dynamic syntax for rehydration
return shouldEncodeURISegment ? encodeURISegment(p, { preserveBrackets: true }) : p;
})
.map((v) => v ?? '')
.join('/');
}
const getParamName = (pattern) => pattern.replace(/^[:*]/, '').replace(/\?$/, '');
exports.getParamName = getParamName;
function isDynamicPart(p) {
return p.startsWith(':') || p.startsWith('*');
}
function segmentMatchesConvention(segment) {
return (segment === 'index' || (0, matchers_1.matchGroupName)(segment) != null || (0, matchers_1.matchDynamicName)(segment) != null);
}
function encodeURISegment(str, { preserveBrackets = false } = {}) {
// Valid characters according to
// https://datatracker.ietf.org/doc/html/rfc3986#section-3.3 (see pchar definition)
str = String(str).replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]/g, (char) => encodeURIComponent(char));
if (preserveBrackets) {
// Preserve brackets
str = str.replace(/%5B/g, '[').replace(/%5D/g, ']');
}
return str;
}
//# sourceMappingURL=getPathFromState-forks.js.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,46 @@
import { PathConfigMap } from '@react-navigation/native';
import type { NavigationState, PartialState } from '@react-navigation/routers';
import type { ExpoOptions } from './getPathFromState-forks';
export type Options<ParamList extends object> = ExpoOptions & {
path?: string;
initialRouteName?: string;
screens: PathConfigMap<ParamList>;
};
export type State = NavigationState | Omit<PartialState<NavigationState>, 'stale'>;
export type StringifyConfig = Record<string, (value: any) => string>;
/**
* Utility to serialize a navigation state object to a path string.
*
* @example
* ```js
* getPathFromState(
* {
* routes: [
* {
* name: 'Chat',
* params: { author: 'Jane', id: 42 },
* },
* ],
* },
* {
* screens: {
* Chat: {
* path: 'chat/:author/:id',
* stringify: { author: author => author.toLowerCase() }
* }
* }
* }
* )
* ```
*
* @param state Navigation state to serialize.
* @param options Extra options to fine-tune how to serialize the path.
* @returns Path representing the state, e.g. /foo/bar?count=42.
*/
export declare function getPathFromState<ParamList extends object>(state: State, options?: Options<ParamList>): string;
export declare function getPathDataFromState<ParamList extends object>(state: State, options?: Options<ParamList>): {
path: string;
params: Record<string, any>;
};
export declare function appendBaseUrl(path: string, baseUrl?: string | undefined): string;
//# sourceMappingURL=getPathFromState.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getPathFromState.d.ts","sourceRoot":"","sources":["../../src/fork/getPathFromState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAS,MAAM,2BAA2B,CAAC;AAItF,OAAO,KAAK,EAAkB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAI5E,MAAM,MAAM,OAAO,CAAC,SAAS,SAAS,MAAM,IAAI,WAAW,GAAG;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC,CAAC;AAGF,MAAM,MAAM,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,CAAC;AAEnF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAC,CAAC;AA4BrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,MAAM,EACvD,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAAC,SAAS,SAAS,MAAM,EAC3D,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC;;;EA2P7B;AAsDD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,GAAG,SAAqC,UAQxD"}

337
node_modules/expo-router/build/fork/getPathFromState.js generated vendored Normal file
View File

@@ -0,0 +1,337 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.getPathFromState = getPathFromState;
exports.getPathDataFromState = getPathDataFromState;
exports.appendBaseUrl = appendBaseUrl;
const queryString = __importStar(require("query-string"));
const expo = __importStar(require("./getPathFromState-forks"));
const navigationParams_1 = require("../navigationParams");
// END FORK
const getActiveRoute = (state) => {
const route = typeof state.index === 'number'
? state.routes[state.index]
: state.routes[state.routes.length - 1];
if (route.state) {
return getActiveRoute(route.state);
}
return route;
};
let cachedNormalizedConfigs = [
undefined,
{},
];
/**
* Utility to serialize a navigation state object to a path string.
*
* @example
* ```js
* getPathFromState(
* {
* routes: [
* {
* name: 'Chat',
* params: { author: 'Jane', id: 42 },
* },
* ],
* },
* {
* screens: {
* Chat: {
* path: 'chat/:author/:id',
* stringify: { author: author => author.toLowerCase() }
* }
* }
* }
* )
* ```
*
* @param state Navigation state to serialize.
* @param options Extra options to fine-tune how to serialize the path.
* @returns Path representing the state, e.g. /foo/bar?count=42.
*/
function getPathFromState(state, options) {
return getPathDataFromState(state, options).path;
}
function getPathDataFromState(state, options) {
if (state == null) {
throw Error("Got 'undefined' for the navigation state. You must pass a valid state object.");
}
if (options) {
// START FORK
expo.validatePathConfig(options);
// validatePathConfig(options);
// END FORK
}
// Create a normalized configs object which will be easier to use
if (cachedNormalizedConfigs[0] !== options?.screens) {
cachedNormalizedConfigs = [
options?.screens,
options?.screens ? createNormalizedConfigs(options.screens) : {},
];
}
const configs = cachedNormalizedConfigs[1];
let path = '/';
let current = state;
const allParams = {};
while (current) {
let index = typeof current.index === 'number' ? current.index : 0;
let route = current.routes[index];
let pattern;
let focusedParams;
const focusedRoute = getActiveRoute(state);
let currentOptions = configs;
// Keep all the route names that appeared during going deeper in config in case the pattern is resolved to undefined
const nestedRouteNames = [];
let hasNext = true;
while (route.name in currentOptions && hasNext) {
pattern = currentOptions[route.name].pattern;
nestedRouteNames.push(route.name);
if (route.params) {
const stringify = currentOptions[route.name]?.stringify;
// START FORK
// This mutates allParams
const currentParams = expo.fixCurrentParams(allParams, route, stringify);
// const currentParams = Object.fromEntries(
// Object.entries(route.params).map(([key, value]) => [
// key,
// stringify?.[key] ? stringify[key](value) : String(value),
// ])
// );
// if (pattern) {
// Object.assign(allParams, currentParams);
// }
// END FORK
if (focusedRoute === route) {
// If this is the focused route, keep the params for later use
// We save it here since it's been stringified already
focusedParams = { ...currentParams };
pattern
?.split('/')
.filter((p) => expo.isDynamicPart(p))
// eslint-disable-next-line no-loop-func
.forEach((p) => {
const name = expo.getParamName(p);
// Remove the params present in the pattern since we'll only use the rest for query string
if (focusedParams) {
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
delete focusedParams[name];
}
});
}
}
// If there is no `screens` property or no nested state, we return pattern
if (!currentOptions[route.name].screens || route.state === undefined) {
// START FORK
// Expo Router allows you to navigate to a (group) and not specify a target screen
// This is different from React Navigation, which requires a target screen
// We need to handle this case here, by selecting either the index screen or the first screen of the group
// IMPORTANT: This does not affect groups that use _layout files with initialRouteNames
// Layout files create a new route config. This only affects groups without layouts that have their screens
// hoisted.
// Example:
// - /home/_layout
// - /home/(a|b|c)/index --> Hoisted to /home/_layout navigator
// - /home/(a|b|c)/other --> Hoisted to /home/_layout navigator
// - /home/(profile)/me --> Hoisted to /home/_layout navigator
//
// route.push('/home/(a)') --> This should navigate to /home/(a)/index
// route.push('/home/(profile)') --> This should navigate to /home/(profile)/me
const screens = currentOptions[route.name].screens;
// Determine what screen the user wants to navigate to. If no screen is specified, assume there is an index screen
// In the examples above, this ensures that /home/(a) navigates to /home/(a)/index
const targetScreen =
// This is typed as unknown, so we need to add these extra assertions
route.params && 'screen' in route.params && typeof route.params.screen === 'string'
? route.params.screen
: 'index';
// If the target screen is not in the screens object, default to the first screen
// In the examples above, this ensures that /home/(profile) navigates to /home/(profile)/me
// As there is no index screen in the group
const screen = screens
? screens[targetScreen]
? targetScreen
: Object.keys(screens)[0]
: undefined;
if (screen && screens && currentOptions[route.name].screens?.[screen]) {
const nestedParams = route.params?.params;
route = { ...screens[screen], name: screen, key: screen, params: nestedParams };
currentOptions = screens;
}
else {
hasNext = false;
}
// hasNext = false;
// END FORK
}
else {
index =
typeof route.state.index === 'number' ? route.state.index : route.state.routes.length - 1;
const nextRoute = route.state.routes[index];
const nestedConfig = currentOptions[route.name].screens;
// if there is config for next route name, we go deeper
if (nestedConfig && nextRoute.name in nestedConfig) {
route = nextRoute;
currentOptions = nestedConfig;
}
else {
// If not, there is no sense in going deeper in config
hasNext = false;
}
}
}
if (pattern === undefined) {
pattern = nestedRouteNames.join('/');
}
if (currentOptions[route.name] !== undefined) {
// START FORK
path += expo.getPathWithConventionsCollapsed({
...options,
pattern,
route,
params: allParams,
initialRouteName: configs[route.name]?.initialRouteName,
});
// path += pattern
// .split('/')
// .map((p) => {
// const name = getParamName(p);
// // We don't know what to show for wildcard patterns
// // Showing the route name seems ok, though whatever we show here will be incorrect
// // Since the page doesn't actually exist
// if (p === '*') {
// return route.name;
// }
// // If the path has a pattern for a param, put the param in the path
// if (p.startsWith(':')) {
// const value = allParams[name];
// if (value === undefined && p.endsWith('?')) {
// // Optional params without value assigned in route.params should be ignored
// return '';
// }
// // Valid characters according to
// // https://datatracker.ietf.org/doc/html/rfc3986#section-3.3 (see pchar definition)
// return String(value).replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]/g, (char) =>
// encodeURIComponent(char)
// );
// }
// return encodeURIComponent(p);
// })
// .join('/');
// } else {
}
else if (!route.name.startsWith('+')) {
path += encodeURIComponent(route.name);
}
// END FORK
if (!focusedParams) {
focusedParams = focusedRoute.params;
}
if (route.state) {
path += '/';
}
else if (focusedParams) {
for (const param in focusedParams) {
if (focusedParams[param] === 'undefined') {
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
delete focusedParams[param];
}
}
// START FORK
delete focusedParams['#'];
focusedParams = (0, navigationParams_1.removeInternalExpoRouterParams)(focusedParams);
// END FORK
const query = queryString.stringify(focusedParams, { sort: false });
if (query) {
path += `?${query}`;
}
}
current = route.state;
}
// Remove multiple as well as trailing slashes
path = path.replace(/\/+/g, '/');
path = path.length > 1 ? path.replace(/\/$/, '') : path;
// Include the root path if specified
if (options?.path) {
path = joinPaths(options.path, path);
}
// START FORK
path = expo.appendBaseUrl(path);
if (allParams['#']) {
path += `#${allParams['#']}`;
}
// END FORK
// START FORK
return { path, params: allParams };
// END FORK
}
// const getParamName = (pattern: string) => pattern.replace(/^:/, '').replace(/\?$/, '');
const joinPaths = (...paths) => []
.concat(...paths.map((p) => p.split('/')))
.filter(Boolean)
.join('/');
const createConfigItem = (config, parentPattern) => {
if (typeof config === 'string') {
// If a string is specified as the value of the key(e.g. Foo: '/path'), use it as the pattern
const pattern = parentPattern ? joinPaths(parentPattern, config) : config;
return { pattern };
}
if (config.exact && config.path === undefined) {
throw new Error("A 'path' needs to be specified when specifying 'exact: true'. If you don't want this screen in the URL, specify it as empty string, e.g. `path: ''`.");
}
// If an object is specified as the value (e.g. Foo: { ... }),
// It can have `path` property and `screens` prop which has nested configs
const pattern = config.exact !== true ? joinPaths(parentPattern || '', config.path || '') : config.path || '';
const screens = config.screens ? createNormalizedConfigs(config.screens, pattern) : undefined;
return {
// Normalize pattern to remove any leading, trailing slashes, duplicate slashes etc.
pattern: pattern?.split('/').filter(Boolean).join('/'),
stringify: config.stringify,
screens,
};
};
const createNormalizedConfigs = (options, pattern) => Object.fromEntries(Object.entries(options).map(([name, c]) => {
const result = createConfigItem(c, pattern);
return [name, result];
}));
function appendBaseUrl(path, baseUrl = process.env.EXPO_BASE_URL) {
if (process.env.NODE_ENV !== 'development') {
if (baseUrl) {
return `/${baseUrl.replace(/^\/+/, '').replace(/\/$/, '')}${path}`;
}
}
return path;
}
//# sourceMappingURL=getPathFromState.js.map

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More