2026-07-20 16:05:17 +00:00
// Module ID: 1540
2026-07-24 07:16:23 +00:00
// Function ID: 17538
2026-07-20 16:05:17 +00:00
// Name: useLinking
2026-07-23 10:11:24 +00:00
// Dependencies: [31, 27, 1459, 1541]
2026-07-20 16:05:17 +00:00
// Exports: default
// Module 1540 (useLinking)
2026-07-23 10:11:24 +00:00
import result from "result" ;
import get _ActivityIndicator from "get ActivityIndicator" ;
2026-07-20 16:05:17 +00:00
let Platform ;
2026-07-23 10:11:24 +00:00
let closure _4 ;
const require = arg1 ;
( { Linking : closure _4 , Platform } = get _ActivityIndicator ) ;
2026-07-20 16:05:17 +00:00
export default function useLinking ( arg0 , enabled ) {
2026-07-23 10:11:24 +00:00
const _require = arg0 ;
2026-07-20 16:05:17 +00:00
enabled = enabled . enabled ;
let tmp = undefined === enabled ;
if ( ! tmp ) {
tmp = enabled ;
}
const importDefault = tmp ;
const prefixes = enabled . prefixes ;
2026-07-23 10:11:24 +00:00
let filter = enabled . filter ;
2026-07-20 16:05:17 +00:00
const config = enabled . config ;
let fn = enabled . getInitialURL ;
if ( undefined === fn ) {
fn = ( ) => {
const items = [ config . getInitialURL ( ) , new Promise ( ( arg0 ) => setTimeout ( arg0 , 150 ) ) ] ;
return Promise . race ( items ) ;
} ;
}
let fn2 = enabled . subscribe ;
if ( undefined === fn2 ) {
fn2 = ( arg0 ) => {
2026-07-23 10:11:24 +00:00
let closure _0 = arg0 ;
2026-07-20 16:05:17 +00:00
function callback ( url ) {
2026-07-23 10:11:24 +00:00
return callback ( url . url ) ;
2026-07-20 16:05:17 +00:00
}
let closure _2 = config . addEventListener ( "url" , callback ) ;
const removeEventListener = config . removeEventListener ;
let bindResult ;
if ( null != removeEventListener ) {
bindResult = removeEventListener . bind ( config ) ;
}
const filter = bindResult ;
return ( ) => {
if ( null != closure _2 ) {
if ( closure _2 . remove ) {
closure _2 . remove ( ) ;
}
}
if ( null != bindResult ) {
bindResult ( "url" , callback ) ;
}
} ;
} ;
}
let getStateFromPath = enabled . getStateFromPath ;
if ( undefined === getStateFromPath ) {
2026-07-23 10:11:24 +00:00
getStateFromPath = _require ( prefixes [ 2 ] ) . getStateFromPath ;
2026-07-20 16:05:17 +00:00
}
let getActionFromState = enabled . getActionFromState ;
if ( undefined === getActionFromState ) {
2026-07-23 10:11:24 +00:00
getActionFromState = _require ( prefixes [ 2 ] ) . getActionFromState ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let items = [ tmp , enabled . independent ] ;
const effect = filter . useEffect ( ( ) => {
2026-07-20 16:05:17 +00:00
} , items ) ;
2026-07-23 10:11:24 +00:00
let closure _9 = filter . useRef ( tmp ) ;
let closure _10 = filter . useRef ( prefixes ) ;
let closure _11 = filter . useRef ( filter ) ;
let closure _12 = filter . useRef ( config ) ;
let closure _13 = filter . useRef ( fn ) ;
let closure _14 = filter . useRef ( getStateFromPath ) ;
let closure _15 = filter . useRef ( getActionFromState ) ;
const effect1 = filter . useEffect ( ( ) => {
closure _9 . current = closure _1 ;
2026-07-20 16:05:17 +00:00
closure _10 . current = prefixes ;
closure _11 . current = filter ;
closure _12 . current = config ;
closure _13 . current = fn ;
closure _14 . current = getStateFromPath ;
closure _15 . current = getActionFromState ;
} ) ;
2026-07-23 10:11:24 +00:00
let callback = filter . useCallback ( ( arg0 ) => {
2026-07-20 16:05:17 +00:00
if ( arg0 ) {
let currentResult ;
const tmp7 = ref3 ( prefixes [ 3 ] ) ( ref2 . current , arg0 ) ;
if ( undefined !== tmp7 ) {
currentResult = ref6 . current ( tmp7 , ref4 . current ) ;
}
return currentResult ;
}
} , [ ] ) ;
const items1 = [ callback ] ;
const items2 = [ tmp , callback , arg0 , fn2 ] ;
2026-07-23 10:11:24 +00:00
const getInitialState = filter . useCallback ( ( ) => {
2026-07-20 16:05:17 +00:00
if ( ref . current ) {
const currentResult = ref5 . current ( ) ;
if ( null != currentResult ) {
if ( "string" !== typeof currentResult ) {
2026-07-23 10:11:24 +00:00
return currentResult . then ( ( arg0 ) => outer1 _16 ( arg0 ) ) ;
2026-07-20 16:05:17 +00:00
}
}
let closure _0 = callback ( currentResult ) ;
}
const obj = {
then ( arg0 ) {
if ( arg0 ) {
let tmp2 = arg0 ( tmp ) ;
} else {
tmp2 = tmp ;
}
return Promise . resolve ( tmp2 ) ;
} ,
catch : function _catch ( ) {
return obj ;
}
} ;
return obj ;
} , items1 ) ;
2026-07-23 10:11:24 +00:00
const effect2 = filter . useEffect ( ( ) => fn2 ( function listener ( arg0 ) {
if ( outer1 _1 ) {
const current = outer1 _0 . current ;
2026-07-20 16:05:17 +00:00
if ( current ) {
2026-07-23 10:11:24 +00:00
const tmp2 = outer1 _16 ( arg0 ) ;
2026-07-20 16:05:17 +00:00
}
if ( current ) {
if ( tmp2 ) {
2026-07-23 10:11:24 +00:00
const rootState = obj . getRootState ( ) ;
2026-07-20 16:05:17 +00:00
const routes = tmp2 . routes ;
if ( routes . some ( ( name ) => {
let hasItem = null != routeNames ;
if ( hasItem ) {
2026-07-23 10:11:24 +00:00
routeNames = routeNames . routeNames ;
2026-07-20 16:05:17 +00:00
hasItem = routeNames . includes ( name . name ) ;
}
return ! hasItem ;
} ) ) {
const _console = console ;
console . warn ( "The navigation state parsed from the URL contains routes not present in the root navigator. This usually means that the linking configuration doesn't match the navigation structure. See https://reactnavigation.org/docs/configuring-links for more details on how to specify a linking configuration." ) ;
} else {
2026-07-23 10:11:24 +00:00
const currentResult = outer1 _15 . current ( tmp2 , outer1 _12 . current ) ;
2026-07-20 16:05:17 +00:00
if ( undefined !== currentResult ) {
obj . dispatch ( currentResult ) ;
} else {
obj . resetRoot ( tmp2 ) ;
}
}
}
}
}
} ) , items2 ) ;
return { getInitialState } ;
} ;