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

7
node_modules/expo-router/build/utils/children.d.ts generated vendored Normal file
View File

@@ -0,0 +1,7 @@
import { type JSXElementConstructor, type ReactElement, type ReactNode } from 'react';
export declare function isChildOfType<ComponentT extends JSXElementConstructor<any>>(element: React.ReactNode, type: ComponentT): element is ReactElement<React.ComponentProps<ComponentT>, ComponentT>;
export declare function getFirstChildOfType<ComponentT extends JSXElementConstructor<any>>(children: React.ReactNode | React.ReactNode[], type: ComponentT): ReactElement<import("react").ComponentProps<ComponentT>, ComponentT> | undefined;
export declare function getAllChildrenOfType<ComponentT extends JSXElementConstructor<any>>(children: React.ReactNode | React.ReactNode[], type: ComponentT): ReactElement<import("react").ComponentProps<ComponentT>, ComponentT>[];
export declare function getAllChildrenNotOfType<ComponentT extends JSXElementConstructor<any>>(children: React.ReactNode | React.ReactNode[], type: ComponentT): (string | number | bigint | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | import("react").ReactPortal | Promise<string | number | bigint | boolean | import("react").ReactPortal | ReactElement<unknown, string | JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined>)[];
export declare function filterAllowedChildrenElements<Components extends JSXElementConstructor<any>[]>(children: ReactNode | ReactNode[], components: Components): React.ReactElement<React.ComponentProps<Components[number]>, Components[number]>[];
//# sourceMappingURL=children.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"children.d.ts","sourceRoot":"","sources":["../../src/utils/children.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,wBAAgB,aAAa,CAAC,UAAU,SAAS,qBAAqB,CAAC,GAAG,CAAC,EACzE,OAAO,EAAE,KAAK,CAAC,SAAS,EACxB,IAAI,EAAE,UAAU,GACf,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,CAEvE;AAED,wBAAgB,mBAAmB,CAAC,UAAU,SAAS,qBAAqB,CAAC,GAAG,CAAC,EAC/E,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,EAC7C,IAAI,EAAE,UAAU,oFAGjB;AAED,wBAAgB,oBAAoB,CAAC,UAAU,SAAS,qBAAqB,CAAC,GAAG,CAAC,EAChF,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,EAC7C,IAAI,EAAE,UAAU,0EAGjB;AAED,wBAAgB,uBAAuB,CAAC,UAAU,SAAS,qBAAqB,CAAC,GAAG,CAAC,EACnF,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,EAC7C,IAAI,EAAE,UAAU,mUAGjB;AAED,wBAAgB,6BAA6B,CAAC,UAAU,SAAS,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAC3F,QAAQ,EAAE,SAAS,GAAG,SAAS,EAAE,EACjC,UAAU,EAAE,UAAU,GACrB,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAOpF"}

24
node_modules/expo-router/build/utils/children.js generated vendored Normal file
View File

@@ -0,0 +1,24 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isChildOfType = isChildOfType;
exports.getFirstChildOfType = getFirstChildOfType;
exports.getAllChildrenOfType = getAllChildrenOfType;
exports.getAllChildrenNotOfType = getAllChildrenNotOfType;
exports.filterAllowedChildrenElements = filterAllowedChildrenElements;
const react_1 = require("react");
function isChildOfType(element, type) {
return (0, react_1.isValidElement)(element) && element.type === type;
}
function getFirstChildOfType(children, type) {
return react_1.Children.toArray(children).find((child) => isChildOfType(child, type));
}
function getAllChildrenOfType(children, type) {
return react_1.Children.toArray(children).filter((child) => isChildOfType(child, type));
}
function getAllChildrenNotOfType(children, type) {
return react_1.Children.toArray(children).filter((child) => !isChildOfType(child, type));
}
function filterAllowedChildrenElements(children, components) {
return react_1.Children.toArray(children).filter((child) => (0, react_1.isValidElement)(child) && components.includes(child.type));
}
//# sourceMappingURL=children.js.map

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

@@ -0,0 +1 @@
{"version":3,"file":"children.js","sourceRoot":"","sources":["../../src/utils/children.ts"],"names":[],"mappings":";;AAQA,sCAKC;AAED,kDAKC;AAED,oDAKC;AAED,0DAKC;AAED,sEAUC;AA9CD,iCAMe;AAEf,SAAgB,aAAa,CAC3B,OAAwB,EACxB,IAAgB;IAEhB,OAAO,IAAA,sBAAc,EAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;AAC1D,CAAC;AAED,SAAgB,mBAAmB,CACjC,QAA6C,EAC7C,IAAgB;IAEhB,OAAO,gBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAgB,oBAAoB,CAClC,QAA6C,EAC7C,IAAgB;IAEhB,OAAO,gBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,SAAgB,uBAAuB,CACrC,QAA6C,EAC7C,IAAgB;IAEhB,OAAO,gBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,SAAgB,6BAA6B,CAC3C,QAAiC,EACjC,UAAsB;IAEtB,OAAO,gBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CACtC,CACE,KAAK,EACsF,EAAE,CAC7F,IAAA,sBAAc,EAAC,KAAK,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAiC,CAAC,CACxF,CAAC;AACJ,CAAC","sourcesContent":["import {\n Children,\n isValidElement,\n type JSXElementConstructor,\n type ReactElement,\n type ReactNode,\n} from 'react';\n\nexport function isChildOfType<ComponentT extends JSXElementConstructor<any>>(\n element: React.ReactNode,\n type: ComponentT\n): element is ReactElement<React.ComponentProps<ComponentT>, ComponentT> {\n return isValidElement(element) && element.type === type;\n}\n\nexport function getFirstChildOfType<ComponentT extends JSXElementConstructor<any>>(\n children: React.ReactNode | React.ReactNode[],\n type: ComponentT\n) {\n return Children.toArray(children).find((child) => isChildOfType(child, type));\n}\n\nexport function getAllChildrenOfType<ComponentT extends JSXElementConstructor<any>>(\n children: React.ReactNode | React.ReactNode[],\n type: ComponentT\n) {\n return Children.toArray(children).filter((child) => isChildOfType(child, type));\n}\n\nexport function getAllChildrenNotOfType<ComponentT extends JSXElementConstructor<any>>(\n children: React.ReactNode | React.ReactNode[],\n type: ComponentT\n) {\n return Children.toArray(children).filter((child) => !isChildOfType(child, type));\n}\n\nexport function filterAllowedChildrenElements<Components extends JSXElementConstructor<any>[]>(\n children: ReactNode | ReactNode[],\n components: Components\n): React.ReactElement<React.ComponentProps<Components[number]>, Components[number]>[] {\n return Children.toArray(children).filter(\n (\n child\n ): child is React.ReactElement<React.ComponentProps<Components[number]>, Components[number]> =>\n isValidElement(child) && components.includes(child.type as (props: any) => ReactNode)\n );\n}\n"]}

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

@@ -0,0 +1,9 @@
import { type StyleProp, type TextStyle } from 'react-native';
type NumericFontWeight = 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
type ConvertedFontWeightType = Exclude<TextStyle['fontWeight'], number> | `${NumericFontWeight}`;
export declare function convertTextStyleToRNTextStyle<BaseStyleType extends Pick<TextStyle, 'fontWeight'>>(style: StyleProp<BaseStyleType | undefined>): (Omit<BaseStyleType, 'fontWeight'> & {
fontWeight?: ConvertedFontWeightType;
}) | undefined;
export type BasicTextStyle = Pick<TextStyle, 'fontSize' | 'fontWeight' | 'fontFamily' | 'color'>;
export {};
//# sourceMappingURL=font.d.ts.map

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

@@ -0,0 +1 @@
{"version":3,"file":"font.d.ts","sourceRoot":"","sources":["../../src/utils/font.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAE1E,KAAK,iBAAiB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE7E,KAAK,uBAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,GAAG,GAAG,iBAAiB,EAAE,CAAC;AAEjG,wBAAgB,6BAA6B,CAAC,aAAa,SAAS,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAC/F,KAAK,EAAE,SAAS,CAAC,aAAa,GAAG,SAAS,CAAC,GAEzC,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG;IACnC,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC,CAAC,GACF,SAAS,CAeZ;AAED,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,YAAY,GAAG,YAAY,GAAG,OAAO,CAAC,CAAC"}

20
node_modules/expo-router/build/utils/font.js generated vendored Normal file
View File

@@ -0,0 +1,20 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.convertTextStyleToRNTextStyle = convertTextStyleToRNTextStyle;
const react_native_1 = require("react-native");
function convertTextStyleToRNTextStyle(style) {
const flattenedStyle = react_native_1.StyleSheet.flatten(style);
if (!flattenedStyle) {
return undefined;
}
if ('fontWeight' in flattenedStyle) {
return {
...flattenedStyle,
fontWeight: typeof flattenedStyle.fontWeight === 'number'
? String(flattenedStyle.fontWeight)
: flattenedStyle.fontWeight,
};
}
return flattenedStyle;
}
//# sourceMappingURL=font.js.map

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

@@ -0,0 +1 @@
{"version":3,"file":"font.js","sourceRoot":"","sources":["../../src/utils/font.ts"],"names":[],"mappings":";;AAMA,sEAqBC;AA3BD,+CAA0E;AAM1E,SAAgB,6BAA6B,CAC3C,KAA2C;IAM3C,MAAM,cAAc,GAAG,yBAAU,CAAC,OAAO,CAAC,KAAK,CAA8B,CAAC;IAC9E,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,YAAY,IAAI,cAAc,EAAE,CAAC;QACnC,OAAO;YACL,GAAG,cAAc;YACjB,UAAU,EACR,OAAO,cAAc,CAAC,UAAU,KAAK,QAAQ;gBAC3C,CAAC,CAAE,MAAM,CAAC,cAAc,CAAC,UAAU,CAA4B;gBAC/D,CAAC,CAAC,cAAc,CAAC,UAAU;SAChC,CAAC;IACJ,CAAC;IACD,OAAO,cAAmD,CAAC;AAC7D,CAAC","sourcesContent":["import { StyleSheet, type StyleProp, type TextStyle } from 'react-native';\n\ntype NumericFontWeight = 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;\n\ntype ConvertedFontWeightType = Exclude<TextStyle['fontWeight'], number> | `${NumericFontWeight}`;\n\nexport function convertTextStyleToRNTextStyle<BaseStyleType extends Pick<TextStyle, 'fontWeight'>>(\n style: StyleProp<BaseStyleType | undefined>\n):\n | (Omit<BaseStyleType, 'fontWeight'> & {\n fontWeight?: ConvertedFontWeightType;\n })\n | undefined {\n const flattenedStyle = StyleSheet.flatten(style) as BaseStyleType | undefined;\n if (!flattenedStyle) {\n return undefined;\n }\n if ('fontWeight' in flattenedStyle) {\n return {\n ...flattenedStyle,\n fontWeight:\n typeof flattenedStyle.fontWeight === 'number'\n ? (String(flattenedStyle.fontWeight) as `${NumericFontWeight}`)\n : flattenedStyle.fontWeight,\n };\n }\n return flattenedStyle as Omit<BaseStyleType, 'fontWeight'>;\n}\n\nexport type BasicTextStyle = Pick<TextStyle, 'fontSize' | 'fontWeight' | 'fontFamily' | 'color'>;\n"]}

6
node_modules/expo-router/build/utils/splash.d.ts generated vendored Normal file
View File

@@ -0,0 +1,6 @@
export declare function hide(): void;
export declare function hideAsync(): Promise<void>;
export declare function preventAutoHideAsync(): Promise<any>;
export declare function _internal_preventAutoHideAsync(): Promise<boolean>;
export declare function _internal_maybeHideAsync(): Promise<any>;
//# sourceMappingURL=splash.d.ts.map

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

@@ -0,0 +1 @@
{"version":3,"file":"splash.d.ts","sourceRoot":"","sources":["../../src/utils/splash.ts"],"names":[],"mappings":"AAMA,wBAAgB,IAAI,SAMnB;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED,wBAAsB,oBAAoB,iBAMzC;AAED,wBAAsB,8BAA8B,IAAI,OAAO,CAAC,OAAO,CAAC,CAqBvE;AAED,wBAAsB,wBAAwB,iBAO7C"}

52
node_modules/expo-router/build/utils/splash.js generated vendored Normal file
View File

@@ -0,0 +1,52 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.hide = hide;
exports.hideAsync = hideAsync;
exports.preventAutoHideAsync = preventAutoHideAsync;
exports._internal_preventAutoHideAsync = _internal_preventAutoHideAsync;
exports._internal_maybeHideAsync = _internal_maybeHideAsync;
const expo_1 = require("expo");
const SplashModule = (0, expo_1.requireOptionalNativeModule)('ExpoSplashScreen');
let _initializedErrorHandler = false;
function hide() {
if (!SplashModule) {
return;
}
SplashModule.hide();
}
async function hideAsync() {
hide();
}
async function preventAutoHideAsync() {
if (!SplashModule) {
return;
}
return SplashModule.preventAutoHideAsync();
}
async function _internal_preventAutoHideAsync() {
// The internal function might be missing if an app is using an older version of the SplashModule
if (!SplashModule || !SplashModule.internalPreventAutoHideAsync) {
return false;
}
if (!_initializedErrorHandler) {
// Append error handling to ensure any uncaught exceptions result in the splash screen being hidden.
// This prevents the splash screen from floating over error screens.
if (ErrorUtils?.getGlobalHandler) {
const originalHandler = ErrorUtils.getGlobalHandler();
ErrorUtils.setGlobalHandler((error, isFatal) => {
hide();
originalHandler(error, isFatal);
});
}
_initializedErrorHandler = true;
}
return SplashModule.internalPreventAutoHideAsync();
}
async function _internal_maybeHideAsync() {
// The internal function might be missing if an app is using an older version of the SplashModule
if (!SplashModule || !SplashModule.internalMaybeHideAsync) {
return false;
}
return SplashModule.internalMaybeHideAsync();
}
//# sourceMappingURL=splash.js.map

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

@@ -0,0 +1 @@
{"version":3,"file":"splash.js","sourceRoot":"","sources":["../../src/utils/splash.ts"],"names":[],"mappings":";;AAMA,oBAMC;AAED,8BAEC;AAED,oDAMC;AAED,wEAqBC;AAED,4DAOC;AAxDD,+BAAmD;AAEnD,MAAM,YAAY,GAAG,IAAA,kCAA2B,EAAC,kBAAkB,CAAC,CAAC;AAErE,IAAI,wBAAwB,GAAG,KAAK,CAAC;AAErC,SAAgB,IAAI;IAClB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IAED,YAAY,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC;AAEM,KAAK,UAAU,SAAS;IAC7B,IAAI,EAAE,CAAC;AACT,CAAC;AAEM,KAAK,UAAU,oBAAoB;IACxC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IAED,OAAO,YAAY,CAAC,oBAAoB,EAAE,CAAC;AAC7C,CAAC;AAEM,KAAK,UAAU,8BAA8B;IAClD,iGAAiG;IACjG,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,4BAA4B,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC9B,oGAAoG;QACpG,oEAAoE;QACpE,IAAI,UAAU,EAAE,gBAAgB,EAAE,CAAC;YACjC,MAAM,eAAe,GAAG,UAAU,CAAC,gBAAgB,EAAE,CAAC;YACtD,UAAU,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC7C,IAAI,EAAE,CAAC;gBACP,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,wBAAwB,GAAG,IAAI,CAAC;IAClC,CAAC;IAED,OAAO,YAAY,CAAC,4BAA4B,EAAE,CAAC;AACrD,CAAC;AAEM,KAAK,UAAU,wBAAwB;IAC5C,iGAAiG;IACjG,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,YAAY,CAAC,sBAAsB,EAAE,CAAC;AAC/C,CAAC","sourcesContent":["import { requireOptionalNativeModule } from 'expo';\n\nconst SplashModule = requireOptionalNativeModule('ExpoSplashScreen');\n\nlet _initializedErrorHandler = false;\n\nexport function hide() {\n if (!SplashModule) {\n return;\n }\n\n SplashModule.hide();\n}\n\nexport async function hideAsync(): Promise<void> {\n hide();\n}\n\nexport async function preventAutoHideAsync() {\n if (!SplashModule) {\n return;\n }\n\n return SplashModule.preventAutoHideAsync();\n}\n\nexport async function _internal_preventAutoHideAsync(): Promise<boolean> {\n // The internal function might be missing if an app is using an older version of the SplashModule\n if (!SplashModule || !SplashModule.internalPreventAutoHideAsync) {\n return false;\n }\n\n if (!_initializedErrorHandler) {\n // Append error handling to ensure any uncaught exceptions result in the splash screen being hidden.\n // This prevents the splash screen from floating over error screens.\n if (ErrorUtils?.getGlobalHandler) {\n const originalHandler = ErrorUtils.getGlobalHandler();\n ErrorUtils.setGlobalHandler((error, isFatal) => {\n hide();\n originalHandler(error, isFatal);\n });\n }\n\n _initializedErrorHandler = true;\n }\n\n return SplashModule.internalPreventAutoHideAsync();\n}\n\nexport async function _internal_maybeHideAsync() {\n // The internal function might be missing if an app is using an older version of the SplashModule\n if (!SplashModule || !SplashModule.internalMaybeHideAsync) {\n return false;\n }\n\n return SplashModule.internalMaybeHideAsync();\n}\n"]}

5
node_modules/expo-router/build/utils/stack.d.ts generated vendored Normal file
View File

@@ -0,0 +1,5 @@
import type { NavigationState } from '@react-navigation/native';
export declare function isRoutePreloadedInStack(navigationState: NavigationState | undefined, route: {
key: string;
}): boolean;
//# sourceMappingURL=stack.d.ts.map

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

@@ -0,0 +1 @@
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../src/utils/stack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAGhB,MAAM,0BAA0B,CAAC;AAElC,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,eAAe,GAAG,SAAS,EAC5C,KAAK,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GACrB,OAAO,CAOT"}

10
node_modules/expo-router/build/utils/stack.js generated vendored Normal file
View File

@@ -0,0 +1,10 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isRoutePreloadedInStack = isRoutePreloadedInStack;
function isRoutePreloadedInStack(navigationState, route) {
if (!navigationState || navigationState.type !== 'stack') {
return false;
}
return navigationState.preloadedRoutes.some((preloaded) => preloaded.key === route.key);
}
//# sourceMappingURL=stack.js.map

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

@@ -0,0 +1 @@
{"version":3,"file":"stack.js","sourceRoot":"","sources":["../../src/utils/stack.ts"],"names":[],"mappings":";;AAMA,0DAUC;AAVD,SAAgB,uBAAuB,CACrC,eAA4C,EAC5C,KAAsB;IAEtB,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAQ,eAAuD,CAAC,eAAe,CAAC,IAAI,CAClF,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAC3C,CAAC;AACJ,CAAC","sourcesContent":["import type {\n NavigationState,\n ParamListBase,\n StackNavigationState,\n} from '@react-navigation/native';\n\nexport function isRoutePreloadedInStack(\n navigationState: NavigationState | undefined,\n route: { key: string }\n): boolean {\n if (!navigationState || navigationState.type !== 'stack') {\n return false;\n }\n return (navigationState as StackNavigationState<ParamListBase>).preloadedRoutes.some(\n (preloaded) => preloaded.key === route.key\n );\n}\n"]}

View File

@@ -0,0 +1,11 @@
import type { NativeStackNavigationOptions } from '@react-navigation/native-stack';
/**
* Helper to determine if a given screen should be treated as a modal-type presentation
*
* @param options - The navigation options.
* @returns Whether the screen should be treated as a modal-type presentation.
*
* @internal
*/
export declare function isModalPresentation(options: NativeStackNavigationOptions | undefined | null): boolean;
//# sourceMappingURL=stackPresentation.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"stackPresentation.d.ts","sourceRoot":"","sources":["../../src/utils/stackPresentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAYnF;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,4BAA4B,GAAG,SAAS,GAAG,IAAI,GACvD,OAAO,CAMT"}

View File

@@ -0,0 +1,28 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isModalPresentation = isModalPresentation;
const MODAL_PRESENTATIONS = [
'modal',
'transparentModal',
'fullScreenModal',
'formSheet',
'pageSheet',
'containedModal',
'containedTransparentModal',
];
/**
* Helper to determine if a given screen should be treated as a modal-type presentation
*
* @param options - The navigation options.
* @returns Whether the screen should be treated as a modal-type presentation.
*
* @internal
*/
function isModalPresentation(options) {
const presentation = options?.presentation;
if (!presentation) {
return false;
}
return MODAL_PRESENTATIONS.includes(presentation);
}
//# sourceMappingURL=stackPresentation.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"stackPresentation.js","sourceRoot":"","sources":["../../src/utils/stackPresentation.ts"],"names":[],"mappings":";;AAoBA,kDAQC;AA1BD,MAAM,mBAAmB,GAAmD;IAC1E,OAAO;IACP,kBAAkB;IAClB,iBAAiB;IACjB,WAAW;IACX,WAAW;IACX,gBAAgB;IAChB,2BAA2B;CAC5B,CAAC;AAEF;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CACjC,OAAwD;IAExD,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,CAAC;IAC3C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,mBAAmB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AACpD,CAAC","sourcesContent":["import type { NativeStackNavigationOptions } from '@react-navigation/native-stack';\n\nconst MODAL_PRESENTATIONS: NativeStackNavigationOptions['presentation'][] = [\n 'modal',\n 'transparentModal',\n 'fullScreenModal',\n 'formSheet',\n 'pageSheet',\n 'containedModal',\n 'containedTransparentModal',\n];\n\n/**\n * Helper to determine if a given screen should be treated as a modal-type presentation\n *\n * @param options - The navigation options.\n * @returns Whether the screen should be treated as a modal-type presentation.\n *\n * @internal\n */\nexport function isModalPresentation(\n options: NativeStackNavigationOptions | undefined | null\n): boolean {\n const presentation = options?.presentation;\n if (!presentation) {\n return false;\n }\n return MODAL_PRESENTATIONS.includes(presentation);\n}\n"]}

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

@@ -0,0 +1,2 @@
export declare const canOverrideStatusBarBehavior: boolean;
//# sourceMappingURL=statusbar.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"statusbar.d.ts","sourceRoot":"","sources":["../../src/utils/statusbar.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,4BAA4B,SACsB,CAAC"}

13
node_modules/expo-router/build/utils/statusbar.js generated vendored Normal file
View File

@@ -0,0 +1,13 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.canOverrideStatusBarBehavior = void 0;
const expo_constants_1 = __importDefault(require("expo-constants"));
const react_native_1 = require("react-native");
const react_native_is_edge_to_edge_1 = require("react-native-is-edge-to-edge");
const hasViewControllerBasedStatusBarAppearance = react_native_1.Platform.OS === 'ios' &&
!!expo_constants_1.default.expoConfig?.ios?.infoPlist?.UIViewControllerBasedStatusBarAppearance;
exports.canOverrideStatusBarBehavior = !(0, react_native_is_edge_to_edge_1.isEdgeToEdge)() && !hasViewControllerBasedStatusBarAppearance;
//# sourceMappingURL=statusbar.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"statusbar.js","sourceRoot":"","sources":["../../src/utils/statusbar.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAuC;AACvC,+CAAwC;AACxC,+EAA4D;AAE5D,MAAM,yCAAyC,GAC7C,uBAAQ,CAAC,EAAE,KAAK,KAAK;IACrB,CAAC,CAAC,wBAAS,CAAC,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,wCAAwC,CAAC;AAEtE,QAAA,4BAA4B,GACvC,CAAC,IAAA,2CAAY,GAAE,IAAI,CAAC,yCAAyC,CAAC","sourcesContent":["import Constants from 'expo-constants';\nimport { Platform } from 'react-native';\nimport { isEdgeToEdge } from 'react-native-is-edge-to-edge';\n\nconst hasViewControllerBasedStatusBarAppearance =\n Platform.OS === 'ios' &&\n !!Constants.expoConfig?.ios?.infoPlist?.UIViewControllerBasedStatusBarAppearance;\n\nexport const canOverrideStatusBarBehavior =\n !isEdgeToEdge() && !hasViewControllerBasedStatusBarAppearance;\n"]}

3
node_modules/expo-router/build/utils/style.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
import type { TextStyle } from 'react-native';
export declare function convertFontWeightToStringFontWeight(fontWeight: TextStyle['fontWeight']): Exclude<TextStyle['fontWeight'], number> | undefined;
//# sourceMappingURL=style.d.ts.map

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

@@ -0,0 +1 @@
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/utils/style.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,wBAAgB,mCAAmC,CACjD,UAAU,EAAE,SAAS,CAAC,YAAY,CAAC,GAClC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,GAAG,SAAS,CAKtD"}

10
node_modules/expo-router/build/utils/style.js generated vendored Normal file
View File

@@ -0,0 +1,10 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.convertFontWeightToStringFontWeight = convertFontWeightToStringFontWeight;
function convertFontWeightToStringFontWeight(fontWeight) {
if (typeof fontWeight === 'number') {
return String(fontWeight);
}
return fontWeight;
}
//# sourceMappingURL=style.js.map

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

@@ -0,0 +1 @@
{"version":3,"file":"style.js","sourceRoot":"","sources":["../../src/utils/style.ts"],"names":[],"mappings":";;AAEA,kFAOC;AAPD,SAAgB,mCAAmC,CACjD,UAAmC;IAEnC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,MAAM,CAAC,UAAU,CAAkD,CAAC;IAC7E,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC","sourcesContent":["import type { TextStyle } from 'react-native';\n\nexport function convertFontWeightToStringFontWeight(\n fontWeight: TextStyle['fontWeight']\n): Exclude<TextStyle['fontWeight'], number> | undefined {\n if (typeof fontWeight === 'number') {\n return String(fontWeight) as `${Extract<TextStyle['fontWeight'], number>}`;\n }\n return fontWeight;\n}\n"]}

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

@@ -0,0 +1,9 @@
/**
* Does the input string start with a valid URL scheme.
* NOTE: Additional strictness added to ensure URLs sent in query parameters for in-app navigation are not matched.
*/
export declare function hasUrlProtocolPrefix(href: string): boolean;
export declare function isWellKnownUri(href: string): boolean;
export declare function shouldLinkExternally(href: string): boolean;
export declare function parseUrlUsingCustomBase(href: string): URL;
//# sourceMappingURL=url.d.ts.map

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

@@ -0,0 +1 @@
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../src/utils/url.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAKpD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG1D;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAOzD"}

32
node_modules/expo-router/build/utils/url.js generated vendored Normal file
View File

@@ -0,0 +1,32 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.hasUrlProtocolPrefix = hasUrlProtocolPrefix;
exports.isWellKnownUri = isWellKnownUri;
exports.shouldLinkExternally = shouldLinkExternally;
exports.parseUrlUsingCustomBase = parseUrlUsingCustomBase;
/**
* Does the input string start with a valid URL scheme.
* NOTE: Additional strictness added to ensure URLs sent in query parameters for in-app navigation are not matched.
*/
function hasUrlProtocolPrefix(href) {
return /^([\w\d_+.-]+:)?\/\//.test(href);
}
function isWellKnownUri(href) {
// This is a hack and we should change this to work like the web in the future where we have full confidence in the
// ability to match URLs and send anything unmatched to the OS. The main difference between this and `hasUrlProtocolPrefix` is
// that we don't require `//`, e.g. `mailto:` is valid and common, and `mailto://bacon` is invalid.
return /^(https?|mailto|tel|sms|geo|maps|market|itmss?|itms-apps|content|file):/.test(href);
}
function shouldLinkExternally(href) {
// Cheap check first to avoid regex if the href is not a path fragment.
return !href.startsWith('.') && (hasUrlProtocolPrefix(href) || isWellKnownUri(href));
}
function parseUrlUsingCustomBase(href) {
// NOTE(@kitten): This used to use a dummy base URL for parsing (phony [.] example)
// However, this seems to get flagged since it's preserved 1:1 in the output bytecode by certain scanners
// Instead, we use an empty `file:` URL. This will still perform `pathname` normalization, search parameter parsing
// encoding, and all other logic, except the logic that applies to hostnames and protocols, and also not leave a
// dummy URL in the output bytecode
return new URL(href, 'file:');
}
//# sourceMappingURL=url.js.map

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

@@ -0,0 +1 @@
{"version":3,"file":"url.js","sourceRoot":"","sources":["../../src/utils/url.ts"],"names":[],"mappings":";;AAIA,oDAEC;AAED,wCAKC;AAED,oDAGC;AAED,0DAOC;AA3BD;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAED,SAAgB,cAAc,CAAC,IAAY;IACzC,mHAAmH;IACnH,8HAA8H;IAC9H,mGAAmG;IACnG,OAAO,yEAAyE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9F,CAAC;AAED,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,uEAAuE;IACvE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,SAAgB,uBAAuB,CAAC,IAAY;IAClD,mFAAmF;IACnF,yGAAyG;IACzG,mHAAmH;IACnH,gHAAgH;IAChH,mCAAmC;IACnC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAChC,CAAC","sourcesContent":["/**\n * Does the input string start with a valid URL scheme.\n * NOTE: Additional strictness added to ensure URLs sent in query parameters for in-app navigation are not matched.\n */\nexport function hasUrlProtocolPrefix(href: string): boolean {\n return /^([\\w\\d_+.-]+:)?\\/\\//.test(href);\n}\n\nexport function isWellKnownUri(href: string): boolean {\n // This is a hack and we should change this to work like the web in the future where we have full confidence in the\n // ability to match URLs and send anything unmatched to the OS. The main difference between this and `hasUrlProtocolPrefix` is\n // that we don't require `//`, e.g. `mailto:` is valid and common, and `mailto://bacon` is invalid.\n return /^(https?|mailto|tel|sms|geo|maps|market|itmss?|itms-apps|content|file):/.test(href);\n}\n\nexport function shouldLinkExternally(href: string): boolean {\n // Cheap check first to avoid regex if the href is not a path fragment.\n return !href.startsWith('.') && (hasUrlProtocolPrefix(href) || isWellKnownUri(href));\n}\n\nexport function parseUrlUsingCustomBase(href: string): URL {\n // NOTE(@kitten): This used to use a dummy base URL for parsing (phony [.] example)\n // However, this seems to get flagged since it's preserved 1:1 in the output bytecode by certain scanners\n // Instead, we use an empty `file:` URL. This will still perform `pathname` normalization, search parameter parsing\n // encoding, and all other logic, except the logic that applies to hostnames and protocols, and also not leave a\n // dummy URL in the output bytecode\n return new URL(href, 'file:');\n}\n"]}