@mobileai/react-native 0.7.17 → 0.7.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -219,17 +219,6 @@ export class AgentRuntime {
219
219
  }
220
220
  logger.info('AgentRuntime', `🧭 Navigate matched: "${args.screen}" → "${matchedScreen}"`);
221
221
 
222
- // Safe navigation guard: reject paramless navigation to detail screens
223
- // that are not currently in the active route stack (they need params from tap flow)
224
- if (!params) {
225
- const isInActiveStack = this.isScreenInActiveRoutes(matchedScreen);
226
- if (!isInActiveStack) {
227
- const errMsg = `❌ "${matchedScreen}" is a detail screen that requires parameters (e.g. an item ID). Navigate to it by tapping the relevant button in the UI instead of using navigate() directly. Use tap actions to reach detail screens through the normal app flow.`;
228
- logger.warn('AgentRuntime', `🧭 Navigate REJECTED (safe nav): ${errMsg}`);
229
- return errMsg;
230
- }
231
- }
232
-
233
222
  // Find the path to the screen (handles nested navigators)
234
223
  const screenPath = this.findScreenPath(matchedScreen);
235
224
  if (screenPath.length > 1) {
@@ -555,32 +544,6 @@ export class AgentRuntime {
555
544
  }
556
545
  }
557
546
 
558
- /**
559
- * Check if a screen currently exists as an active (instantiated) route
560
- * in the navigation state. Screens in state.routes have been visited
561
- * and retain their params. Screens only in state.routeNames are declared
562
- * but never visited — navigating to them without params will crash.
563
- */
564
- isScreenInActiveRoutes(screenName) {
565
- try {
566
- const state = this.navRef?.getRootState?.() || this.navRef?.getState?.();
567
- if (!state) return false;
568
- return this.searchActiveRoutes(state, screenName);
569
- } catch {
570
- return false;
571
- }
572
- }
573
- searchActiveRoutes(state, screenName) {
574
- if (!state?.routes) return false;
575
- for (const route of state.routes) {
576
- if (route.name === screenName) return true;
577
- if (route.state && this.searchActiveRoutes(route.state, screenName)) {
578
- return true;
579
- }
580
- }
581
- return false;
582
- }
583
-
584
547
  /**
585
548
  * Build nested params for React Navigation nested screen navigation.
586
549
  * ['HomeTab', 'Home'] → { screen: 'Home', params }
@@ -1 +1 @@
1
- {"version":3,"names":["logger","walkFiberTree","findScrollableContainers","dehydrateScreen","buildSystemPrompt","buildKnowledgeOnlyPrompt","KnowledgeBaseService","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","lastAskUserQuestion","knowledgeService","constructor","provider","config","rootRef","navRef","debug","screenMap","knowledgeBase","knowledgeMaxTokens","enableUIControl","registerKnowledgeOnlyTools","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","description","parameters","index","type","required","execute","args","interactives","elements","getWalkConfig","element","find","el","map","e","join","props","onValueChange","value","Promise","resolve","setTimeout","label","error","message","onPress","fiber","fiberNode","return","bubbleDepth","parentProps","memoizedProps","text","onChangeText","screen","params","router","path","startsWith","push","isReady","JSON","parse","undefined","availableRoutes","getRouteNames","stringify","matchedScreen","r","toLowerCase","errMsg","warn","isInActiveStack","isScreenInActiveRoutes","screenPath","findScreenPath","length","nestedParams","buildNestedParams","navigate","success","seconds","Math","min","Number","question","onAskUser","onStatusUpdate","answer","screenshot","captureScreenshot","round","direction","enum","amount","containerIndex","screenName","getCurrentScreenName","containers","targetIndex","container","available","c","componentName","scrollRef","stateNode","scrollToEnd","animated","scrollTo","y","scrollToOffset","offset","PAGE_OFFSET","amountLabel","retrieve","registerAction","action","unregisterAction","state","getRootState","getState","names","collectRouteNames","routeNames","routes","route","Set","targetScreen","some","nestedNames","includes","searchActiveRoutes","leafParams","result","i","pathname","segments","split","filter","Boolean","getDeepestScreenName","setUIControlOverride","enabled","uiControlOverride","isUIEnabled","getToolStatusLabel","toolName","moduleName","viewShot","require","captureRef","default","uri","format","quality","width","code","getScreenContext","keys","screens","chains","walkResult","elementsText","availableScreensText","appMapText","screenLines","entry","title","line","chainLines","chain","detectStaleMap","context","substring","staleMapWarned","mapScreens","missing","has","console","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","chatHistory","prompt","recentHistory","slice","msg","role","content","stepIndex","event","reflection","previousGoalEval","memory","plan","output","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","hasKnowledge","systemPrompt","userPrompt","response","generateContent","tokenUsage","onTokenUsage","toolCalls","tc","followUp","followUpResponse","ftc","doneResult","onAfterTask","onBeforeStep","transformScreenContent","contextMessage","reasoning","toolCall","statusLabel","statusDisplay","agentStep","input","onAfterStep","updateRefs","getIsRunning"],"sourceRoot":"../../../src","sources":["core/AgentRuntime.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,MAAM,QAAQ,oBAAiB;AACxC,SAASC,aAAa,EAAEC,wBAAwB,QAAQ,sBAAmB;AAE3E,SAASC,eAAe,QAAQ,uBAAoB;AACpD,SAASC,iBAAiB,EAAEC,wBAAwB,QAAQ,mBAAgB;AAC5E,SAASC,oBAAoB,QAAQ,qCAAkC;AAWvE,MAAMC,iBAAiB,GAAG,EAAE;;AAE5B;;AAEA,OAAO,MAAMC,YAAY,CAAC;EAKhBC,KAAK,GAAgC,IAAIC,GAAG,CAAC,CAAC;EAC9CC,OAAO,GAAkC,IAAID,GAAG,CAAC,CAAC;EAClDE,OAAO,GAAgB,EAAE;EACzBC,SAAS,GAAG,KAAK;EACjBC,mBAAmB,GAAkB,IAAI;EACzCC,gBAAgB,GAAgC,IAAI;EAG5DC,WAAWA,CACTC,QAAoB,EACpBC,MAAmB,EACnBC,OAAY,EACZC,MAAW,EACX;IACA,IAAI,CAACH,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpBpB,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,uCAAuC,EAAE,CAAC,CAACH,MAAM,CAACI,SAAS,CAAC;;IAEzF;IACA,IAAIJ,MAAM,CAACK,aAAa,EAAE;MACxB,IAAI,CAACR,gBAAgB,GAAG,IAAIT,oBAAoB,CAC9CY,MAAM,CAACK,aAAa,EACpBL,MAAM,CAACM,kBACT,CAAC;IACH;;IAEA;IACA,IAAIN,MAAM,CAACO,eAAe,KAAK,KAAK,EAAE;MACpC,IAAI,CAACC,0BAA0B,CAAC,CAAC;IACnC,CAAC,MAAM;MACL,IAAI,CAACC,oBAAoB,CAAC,CAAC;IAC7B;;IAEA;IACA,IAAIT,MAAM,CAACU,WAAW,EAAE;MACtB,KAAK,MAAM,CAACC,IAAI,EAAEC,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACd,MAAM,CAACU,WAAW,CAAC,EAAE;QAC7D,IAAIE,IAAI,KAAK,IAAI,EAAE;UACjB,IAAI,CAACrB,KAAK,CAACwB,MAAM,CAACJ,IAAI,CAAC;UACvB7B,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,iBAAiBL,IAAI,EAAE,CAAC;QACtD,CAAC,MAAM;UACL,IAAI,CAACpB,KAAK,CAAC0B,GAAG,CAACN,IAAI,EAAEC,IAAI,CAAC;UAC1B9B,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,kBAAkBL,IAAI,EAAE,CAAC;QACvD;MACF;IACF;EACF;;EAEA;;EAEQF,oBAAoBA,CAAA,EAAS;IACnC;IACA,IAAI,CAAClB,KAAK,CAAC0B,GAAG,CAAC,KAAK,EAAE;MACpBN,IAAI,EAAE,KAAK;MACXO,WAAW,EAAE,yGAAyG;MACtHC,UAAU,EAAE;QACVC,KAAK,EAAE;UAAEC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,iCAAiC;UAAEI,QAAQ,EAAE;QAAK;MAC1F,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,MAAM;UAAEC,YAAY,EAAEC;QAAS,CAAC,GAAG3C,aAAa,CAAC,IAAI,CAACkB,OAAO,EAAE,IAAI,CAAC0B,aAAa,CAAC,CAAC,CAAC;QACpF,MAAMC,OAAO,GAAGF,QAAQ,CAACG,IAAI,CAACC,EAAE,IAAIA,EAAE,CAACV,KAAK,KAAKI,IAAI,CAACJ,KAAK,CAAC;QAC5D,IAAI,CAACQ,OAAO,EAAE;UACZ,OAAO,wBAAwBJ,IAAI,CAACJ,KAAK,kCAAkCM,QAAQ,CAACK,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACZ,KAAK,CAAC,CAACa,IAAI,CAAC,IAAI,CAAC,EAAE;QACpH;;QAEA;QACA,IAAIL,OAAO,CAACP,IAAI,KAAK,QAAQ,IAAIO,OAAO,CAACM,KAAK,CAACC,aAAa,EAAE;UAC5D,IAAI;YACFP,OAAO,CAACM,KAAK,CAACC,aAAa,CAAC,CAACP,OAAO,CAACM,KAAK,CAACE,KAAK,CAAC;YACjD,MAAM,IAAIC,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,OAAO,cAAcd,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,QAAQ,CAACZ,OAAO,CAACM,KAAK,CAACE,KAAK,EAAE;UAClF,CAAC,CAAC,OAAOK,KAAU,EAAE;YACnB,OAAO,qBAAqBjB,IAAI,CAACJ,KAAK,MAAMqB,KAAK,CAACC,OAAO,EAAE;UAC7D;QACF;;QAEA;QACA,IAAId,OAAO,CAACM,KAAK,CAACS,OAAO,EAAE;UACzB,IAAI;YACFf,OAAO,CAACM,KAAK,CAACS,OAAO,CAAC,CAAC;YACvB,MAAM,IAAIN,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,OAAO,aAAad,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,GAAG;UACtD,CAAC,CAAC,OAAOC,KAAU,EAAE;YACnB,OAAO,oBAAoBjB,IAAI,CAACJ,KAAK,MAAMqB,KAAK,CAACC,OAAO,EAAE;UAC5D;QACF;;QAEA;QACA,IAAIE,KAAK,GAAGhB,OAAO,CAACiB,SAAS,EAAEC,MAAM;QACrC,IAAIC,WAAW,GAAG,CAAC;QACnB,OAAOH,KAAK,IAAIG,WAAW,GAAG,CAAC,EAAE;UAC/B,MAAMC,WAAW,GAAGJ,KAAK,CAACK,aAAa,IAAI,CAAC,CAAC;UAC7C,IAAID,WAAW,CAACL,OAAO,IAAI,OAAOK,WAAW,CAACL,OAAO,KAAK,UAAU,EAAE;YACpE,IAAI;cACFK,WAAW,CAACL,OAAO,CAAC,CAAC;cACrB,MAAM,IAAIN,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;cACtD,OAAO,uBAAuBd,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,GAAG;YAChE,CAAC,CAAC,OAAOC,KAAU,EAAE;cACnB,OAAO,8BAA8BjB,IAAI,CAACJ,KAAK,MAAMqB,KAAK,CAACC,OAAO,EAAE;YACtE;UACF;UACAE,KAAK,GAAGA,KAAK,CAACE,MAAM;UACpBC,WAAW,EAAE;QACf;QAEA,OAAO,cAAcvB,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,2DAA2D;MAC/G;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACjD,KAAK,CAAC0B,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZO,WAAW,EAAE,mDAAmD;MAChEC,UAAU,EAAE;QACVC,KAAK,EAAE;UAAEC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,qCAAqC;UAAEI,QAAQ,EAAE;QAAK,CAAC;QAC7F4B,IAAI,EAAE;UAAE7B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,kBAAkB;UAAEI,QAAQ,EAAE;QAAK;MAC1E,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,MAAM;UAAEC,YAAY,EAAEC;QAAS,CAAC,GAAG3C,aAAa,CAAC,IAAI,CAACkB,OAAO,EAAE,IAAI,CAAC0B,aAAa,CAAC,CAAC,CAAC;QACpF,MAAMC,OAAO,GAAGF,QAAQ,CAACG,IAAI,CAACC,EAAE,IAAIA,EAAE,CAACV,KAAK,KAAKI,IAAI,CAACJ,KAAK,CAAC;QAC5D,IAAI,CAACQ,OAAO,EAAE;UACZ,OAAO,wBAAwBJ,IAAI,CAACJ,KAAK,aAAa;QACxD;QACA,IAAI,CAACQ,OAAO,CAACM,KAAK,CAACiB,YAAY,EAAE;UAC/B,OAAO,cAAc3B,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,wBAAwB;QAC5E;QACA,IAAI;UACFZ,OAAO,CAACM,KAAK,CAACiB,YAAY,CAAC3B,IAAI,CAAC0B,IAAI,CAAC;UACrC;UACA;UACA,MAAM,IAAIb,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;UACtD,OAAO,YAAYd,IAAI,CAAC0B,IAAI,WAAW1B,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,GAAG;QACzE,CAAC,CAAC,OAAOC,KAAU,EAAE;UACnB,OAAO,mBAAmBA,KAAK,CAACC,OAAO,EAAE;QAC3C;MACF;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACnD,KAAK,CAAC0B,GAAG,CAAC,UAAU,EAAE;MACzBN,IAAI,EAAE,UAAU;MAChBO,WAAW,EAAE,2CAA2C;MACxDC,UAAU,EAAE;QACViC,MAAM,EAAE;UAAE/B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,oCAAoC;UAAEI,QAAQ,EAAE;QAAK,CAAC;QAC7F+B,MAAM,EAAE;UAAEhC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,6BAA6B;UAAEI,QAAQ,EAAE;QAAM;MACxF,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB;QACA,IAAI,IAAI,CAACxB,MAAM,CAACsD,MAAM,EAAE;UACtB,IAAI;YACF,MAAMC,IAAI,GAAG/B,IAAI,CAAC4B,MAAM,CAACI,UAAU,CAAC,GAAG,CAAC,GAAGhC,IAAI,CAAC4B,MAAM,GAAG,IAAI5B,IAAI,CAAC4B,MAAM,EAAE;YAC1E,IAAI,CAACpD,MAAM,CAACsD,MAAM,CAACG,IAAI,CAACF,IAAI,CAAC;YAC7B,MAAM,IAAIlB,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,OAAO,mBAAmBiB,IAAI,GAAG;UACnC,CAAC,CAAC,OAAOd,KAAU,EAAE;YACnB,OAAO,uBAAuBA,KAAK,CAACC,OAAO,EAAE;UAC/C;QACF;;QAEA;QACA,IAAI,CAAC,IAAI,CAACxC,MAAM,EAAE;UAChB,OAAO,iCAAiC;QAC1C;QACA,IAAI,CAAC,IAAI,CAACA,MAAM,CAACwD,OAAO,CAAC,CAAC,EAAE;UAC1B,MAAM,IAAIrB,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,IAAI,CAAC,CAAC;UACvD,IAAI,CAAC,IAAI,CAACpC,MAAM,CAACwD,OAAO,CAAC,CAAC,EAAE;YAC1B,OAAO,gCAAgC;UACzC;QACF;QACA,IAAI;UACF,MAAML,MAAM,GAAG7B,IAAI,CAAC6B,MAAM,GAAI,OAAO7B,IAAI,CAAC6B,MAAM,KAAK,QAAQ,GAAGM,IAAI,CAACC,KAAK,CAACpC,IAAI,CAAC6B,MAAM,CAAC,GAAG7B,IAAI,CAAC6B,MAAM,GAAIQ,SAAS;UAClH;UACA,MAAMC,eAAe,GAAG,IAAI,CAACC,aAAa,CAAC,CAAC;UAC5CjF,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,2BAA2BQ,IAAI,CAAC4B,MAAM,mBAAmBU,eAAe,CAAC7B,IAAI,CAAC,IAAI,CAAC,eAAe0B,IAAI,CAACK,SAAS,CAACX,MAAM,CAAC,EAAE,CAAC;UACvJ,MAAMY,aAAa,GAAGH,eAAe,CAACjC,IAAI,CACxCqC,CAAC,IAAIA,CAAC,CAACC,WAAW,CAAC,CAAC,KAAK3C,IAAI,CAAC4B,MAAM,CAACe,WAAW,CAAC,CACnD,CAAC;;UAED;UACA,IAAI,CAACF,aAAa,EAAE;YAClB,MAAMG,MAAM,GAAG,MAAM5C,IAAI,CAAC4B,MAAM,6EAA6EU,eAAe,CAAC7B,IAAI,CAAC,IAAI,CAAC,6CAA6CT,IAAI,CAAC4B,MAAM,uIAAuI;YACtUtE,MAAM,CAACuF,IAAI,CAAC,cAAc,EAAE,yBAAyBD,MAAM,EAAE,CAAC;YAC9D,OAAOA,MAAM;UACf;UACAtF,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,yBAAyBQ,IAAI,CAAC4B,MAAM,QAAQa,aAAa,GAAG,CAAC;;UAEzF;UACA;UACA,IAAI,CAACZ,MAAM,EAAE;YACX,MAAMiB,eAAe,GAAG,IAAI,CAACC,sBAAsB,CAACN,aAAa,CAAC;YAClE,IAAI,CAACK,eAAe,EAAE;cACpB,MAAMF,MAAM,GAAG,MAAMH,aAAa,qOAAqO;cACvQnF,MAAM,CAACuF,IAAI,CAAC,cAAc,EAAE,oCAAoCD,MAAM,EAAE,CAAC;cACzE,OAAOA,MAAM;YACf;UACF;;UAEA;UACA,MAAMI,UAAU,GAAG,IAAI,CAACC,cAAc,CAACR,aAAa,CAAC;UACrD,IAAIO,UAAU,CAACE,MAAM,GAAG,CAAC,EAAE;YACzB;YACA;YACA5F,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,sBAAsBwD,UAAU,CAACvC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3E,MAAM0C,YAAY,GAAG,IAAI,CAACC,iBAAiB,CAACJ,UAAU,EAAEnB,MAAM,CAAC;YAC/D,IAAI,CAACnD,MAAM,CAAC2E,QAAQ,CAACL,UAAU,CAAC,CAAC,CAAC,EAAEG,YAAY,CAAC;UACnD,CAAC,MAAM;YACL;YACA,IAAI,CAACzE,MAAM,CAAC2E,QAAQ,CAACZ,aAAa,EAAEZ,MAAM,CAAC;UAC7C;UACA,MAAM,IAAIhB,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;UACtD,OAAO,mBAAmB2B,aAAa,IAAIZ,MAAM,GAAG,iBAAiBM,IAAI,CAACK,SAAS,CAACX,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE;QACtG,CAAC,CAAC,OAAOZ,KAAU,EAAE;UACnB,OAAO,uBAAuBA,KAAK,CAACC,OAAO,wBAAwB,IAAI,CAACqB,aAAa,CAAC,CAAC,CAAC9B,IAAI,CAAC,IAAI,CAAC,EAAE;QACtG;MACF;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC1C,KAAK,CAAC0B,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZO,WAAW,EAAE,+CAA+C;MAC5DC,UAAU,EAAE;QACV+B,IAAI,EAAE;UAAE7B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,8BAA8B;UAAEI,QAAQ,EAAE;QAAK,CAAC;QACrFwD,OAAO,EAAE;UAAEzD,IAAI,EAAE,SAAS;UAAEH,WAAW,EAAE,6CAA6C;UAAEI,QAAQ,EAAE;QAAK;MACzG,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,OAAOA,IAAI,CAAC0B,IAAI;MAClB;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC3D,KAAK,CAAC0B,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZO,WAAW,EAAE,wMAAwM;MACrNC,UAAU,EAAE;QACV4D,OAAO,EAAE;UAAE1D,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,mCAAmC;UAAEI,QAAQ,EAAE;QAAK;MAC9F,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,MAAMuD,OAAO,GAAGC,IAAI,CAACC,GAAG,CAACC,MAAM,CAAC1D,IAAI,CAACuD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtD,MAAM,IAAI1C,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAEyC,OAAO,GAAG,IAAI,CAAC,CAAC;QACjE,OAAO,YAAYA,OAAO,oCAAoC;MAChE;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACxF,KAAK,CAAC0B,GAAG,CAAC,UAAU,EAAE;MACzBN,IAAI,EAAE,UAAU;MAChBO,WAAW,EAAE,4GAA4G;MACzHC,UAAU,EAAE;QACVgE,QAAQ,EAAE;UAAE9D,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,0BAA0B;UAAEI,QAAQ,EAAE;QAAK;MACtF,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,IAAI,IAAI,CAACxB,MAAM,CAACoF,SAAS,EAAE;UACzB;UACA,IAAI,CAACpF,MAAM,CAACqF,cAAc,GAAG,4BAA4B,CAAC;UAC1D,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACtF,MAAM,CAACoF,SAAS,CAAC5D,IAAI,CAAC2D,QAAQ,CAAC;UACzD,OAAO,kBAAkBG,MAAM,EAAE;QACnC;QACA;QACA,OAAO,KAAK9D,IAAI,CAAC2D,QAAQ,EAAE;MAC7B;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC5F,KAAK,CAAC0B,GAAG,CAAC,oBAAoB,EAAE;MACnCN,IAAI,EAAE,oBAAoB;MAC1BO,WAAW,EAAE,4LAA4L;MACzMC,UAAU,EAAE,CAAC,CAAC;MACdI,OAAO,EAAE,MAAAA,CAAA,KAAY;QACnB,MAAMgE,UAAU,GAAG,MAAM,IAAI,CAACC,iBAAiB,CAAC,CAAC;QACjD,IAAID,UAAU,EAAE;UACd,OAAO,0BAA0BP,IAAI,CAACS,KAAK,CAACF,UAAU,CAACb,MAAM,GAAG,IAAI,CAAC,oDAAoD;QAC3H;QACA,OAAO,2EAA2E;MACpF;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACnF,KAAK,CAAC0B,GAAG,CAAC,QAAQ,EAAE;MACvBN,IAAI,EAAE,QAAQ;MACdO,WAAW,EAAE,uQAAuQ;MACpRC,UAAU,EAAE;QACVuE,SAAS,EAAE;UACTrE,IAAI,EAAE,QAAQ;UACdH,WAAW,EAAE,kCAAkC;UAC/CI,QAAQ,EAAE,IAAI;UACdqE,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI;QACrB,CAAC;QACDC,MAAM,EAAE;UACNvE,IAAI,EAAE,QAAQ;UACdH,WAAW,EAAE,2GAA2G;UACxHI,QAAQ,EAAE,KAAK;UACfqE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS;QACnC,CAAC;QACDE,cAAc,EAAE;UACdxE,IAAI,EAAE,QAAQ;UACdH,WAAW,EAAE,wJAAwJ;UACrKI,QAAQ,EAAE;QACZ;MACF,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,MAAMsE,UAAU,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;QAC9C,MAAMC,UAAU,GAAGhH,wBAAwB,CAAC,IAAI,CAACiB,OAAO,EAAE6F,UAAU,CAAC;QAErE,IAAIE,UAAU,CAACtB,MAAM,KAAK,CAAC,EAAE;UAC3B,OAAO,8CAA8CoB,UAAU,uDAAuD;QACxH;QAEA,MAAMG,WAAW,GAAGzE,IAAI,CAACqE,cAAc,IAAI,CAAC;QAC5C,MAAMK,SAAS,GAAGF,UAAU,CAACC,WAAW,CAAC;QACzC,IAAI,CAACC,SAAS,EAAE;UACd,MAAMC,SAAS,GAAGH,UAAU,CAACjE,GAAG,CAACqE,CAAC,IAAI,IAAIA,CAAC,CAAChF,KAAK,KAAKgF,CAAC,CAAC5D,KAAK,KAAK4D,CAAC,CAACC,aAAa,GAAG,CAAC,CAACpE,IAAI,CAAC,IAAI,CAAC;UAChG,OAAO,qBAAqBgE,WAAW,6BAA6BH,UAAU,MAAMK,SAAS,EAAE;QACjG;QAEA,MAAMT,SAAiB,GAAGlE,IAAI,CAACkE,SAAS,IAAI,MAAM;QAClD,MAAME,MAAc,GAAGpE,IAAI,CAACoE,MAAM,IAAI,MAAM;QAC5C,MAAMU,SAAS,GAAGJ,SAAS,CAACK,SAAS;QAErC,IAAI;UACF,IAAIX,MAAM,KAAK,OAAO,EAAE;YACtB,IAAI,OAAOU,SAAS,CAACE,WAAW,KAAK,UAAU,EAAE;cAC/CF,SAAS,CAACE,WAAW,CAAC;gBAAEC,QAAQ,EAAE;cAAK,CAAC,CAAC;YAC3C,CAAC,MAAM,IAAI,OAAOH,SAAS,CAACI,QAAQ,KAAK,UAAU,EAAE;cACnDJ,SAAS,CAACI,QAAQ,CAAC;gBAAEC,CAAC,EAAE,MAAM;gBAAEF,QAAQ,EAAE;cAAK,CAAC,CAAC;YACnD;UACF,CAAC,MAAM,IAAIb,MAAM,KAAK,SAAS,EAAE;YAC/B,IAAI,OAAOU,SAAS,CAACI,QAAQ,KAAK,UAAU,EAAE;cAC5CJ,SAAS,CAACI,QAAQ,CAAC;gBAAEC,CAAC,EAAE,CAAC;gBAAEF,QAAQ,EAAE;cAAK,CAAC,CAAC;YAC9C,CAAC,MAAM,IAAI,OAAOH,SAAS,CAACM,cAAc,KAAK,UAAU,EAAE;cACzDN,SAAS,CAACM,cAAc,CAAC;gBAAEC,MAAM,EAAE,CAAC;gBAAEJ,QAAQ,EAAE;cAAK,CAAC,CAAC;YACzD;UACF,CAAC,MAAM;YACL;YACA,MAAMK,WAAW,GAAG,GAAG;YAEvB,IAAI,OAAOR,SAAS,CAACM,cAAc,KAAK,UAAU,EAAE;cAClD;cACAN,SAAS,CAACM,cAAc,CAAC;gBACvBC,MAAM,EAAEnB,SAAS,KAAK,MAAM,GAAGoB,WAAW,GAAG,CAAC;gBAC9CL,QAAQ,EAAE;cACZ,CAAC,CAAC;YACJ,CAAC,MAAM,IAAI,OAAOH,SAAS,CAACI,QAAQ,KAAK,UAAU,EAAE;cACnDJ,SAAS,CAACI,QAAQ,CAAC;gBACjBC,CAAC,EAAEjB,SAAS,KAAK,MAAM,GAAGoB,WAAW,GAAG,CAAC;gBACzCL,QAAQ,EAAE;cACZ,CAAC,CAAC;YACJ;UACF;;UAEA;UACA,MAAM,IAAIpE,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,IAAI,CAAC,CAAC;UAEvD,MAAMyE,WAAW,GAAGnB,MAAM,KAAK,OAAO,GAAG,QAAQ,GAAGA,MAAM,KAAK,SAAS,GAAG,UAAU,GAAG,GAAGF,SAAS,WAAW;UAC/G,OAAO,cAAcqB,WAAW,OAAOb,SAAS,CAAC1D,KAAK,KAAK0D,SAAS,CAACG,aAAa,6DAA6D;QACjJ,CAAC,CAAC,OAAO5D,KAAU,EAAE;UACnB,OAAO,oBAAoBA,KAAK,CAACC,OAAO,EAAE;QAC5C;MACF;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,IAAI,CAAC7C,gBAAgB,EAAE;MACzB,IAAI,CAACN,KAAK,CAAC0B,GAAG,CAAC,iBAAiB,EAAE;QAChCN,IAAI,EAAE,iBAAiB;QACvBO,WAAW,EACT,gEAAgE,GAC9D,qEAAqE,GACrE,2FAA2F;QAC/FC,UAAU,EAAE;UACVgE,QAAQ,EAAE;YACR9D,IAAI,EAAE,QAAQ;YACdH,WAAW,EAAE,qCAAqC;YAClDI,QAAQ,EAAE;UACZ;QACF,CAAC;QACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;UACvB,MAAMsE,UAAU,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;UAC9C,OAAO,IAAI,CAAClG,gBAAgB,CAAEmH,QAAQ,CAACxF,IAAI,CAAC2D,QAAQ,EAAEW,UAAU,CAAC;QACnE;MACF,CAAC,CAAC;IACJ;EACF;;EAEA;AACF;AACA;AACA;EACUtF,0BAA0BA,CAAA,EAAS;IACzC;IACA,IAAI,CAACjB,KAAK,CAAC0B,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZO,WAAW,EAAE,+CAA+C;MAC5DC,UAAU,EAAE;QACV+B,IAAI,EAAE;UAAE7B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,8BAA8B;UAAEI,QAAQ,EAAE;QAAK,CAAC;QACrFwD,OAAO,EAAE;UAAEzD,IAAI,EAAE,SAAS;UAAEH,WAAW,EAAE,6CAA6C;UAAEI,QAAQ,EAAE;QAAK;MACzG,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,OAAOA,IAAI,CAAC0B,IAAI;MAClB;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,IAAI,CAACrD,gBAAgB,EAAE;MACzB,IAAI,CAACN,KAAK,CAAC0B,GAAG,CAAC,iBAAiB,EAAE;QAChCN,IAAI,EAAE,iBAAiB;QACvBO,WAAW,EACT,gEAAgE,GAC9D,qEAAqE,GACrE,2FAA2F;QAC/FC,UAAU,EAAE;UACVgE,QAAQ,EAAE;YACR9D,IAAI,EAAE,QAAQ;YACdH,WAAW,EAAE,qCAAqC;YAClDI,QAAQ,EAAE;UACZ;QACF,CAAC;QACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;UACvB,MAAMsE,UAAU,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;UAC9C,OAAO,IAAI,CAAClG,gBAAgB,CAAEmH,QAAQ,CAACxF,IAAI,CAAC2D,QAAQ,EAAEW,UAAU,CAAC;QACnE;MACF,CAAC,CAAC;IACJ;EACF;;EAEA;;EAEAmB,cAAcA,CAACC,MAAwB,EAAQ;IAC7C,IAAI,CAACzH,OAAO,CAACwB,GAAG,CAACiG,MAAM,CAACvG,IAAI,EAAEuG,MAAM,CAAC;IACrCpI,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,sBAAsBkG,MAAM,CAACvG,IAAI,EAAE,CAAC;EAClE;EAEAwG,gBAAgBA,CAACxG,IAAY,EAAQ;IACnC,IAAI,CAAClB,OAAO,CAACsB,MAAM,CAACJ,IAAI,CAAC;EAC3B;;EAEA;;EAEA;AACF;AACA;AACA;EACUoD,aAAaA,CAAA,EAAa;IAChC,IAAI;MACF,IAAI,CAAC,IAAI,CAAC7D,MAAM,EAAEwD,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE;MACxC,MAAM0D,KAAK,GAAG,IAAI,CAAClH,MAAM,EAAEmH,YAAY,GAAG,CAAC,IAAI,IAAI,CAACnH,MAAM,EAAEoH,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAE,OAAO,EAAE;MACrB,MAAMG,KAAK,GAAG,IAAI,CAACC,iBAAiB,CAACJ,KAAK,CAAC;MAC3CtI,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,mBAAmB,EAAEoH,KAAK,CAACtF,IAAI,CAAC,IAAI,CAAC,CAAC;MACnE,OAAOsF,KAAK;IACd,CAAC,CAAC,MAAM;MACN,OAAO,EAAE;IACX;EACF;EAEQC,iBAAiBA,CAACJ,KAAU,EAAY;IAC9C,MAAMG,KAAe,GAAG,EAAE;IAC1B;IACA,IAAIH,KAAK,EAAEK,UAAU,EAAE;MACrBF,KAAK,CAAC9D,IAAI,CAAC,GAAG2D,KAAK,CAACK,UAAU,CAAC;IACjC;IACA,IAAIL,KAAK,EAAEM,MAAM,EAAE;MACjB,KAAK,MAAMC,KAAK,IAAIP,KAAK,CAACM,MAAM,EAAE;QAChCH,KAAK,CAAC9D,IAAI,CAACkE,KAAK,CAAChH,IAAI,CAAC;QACtB;QACA,IAAIgH,KAAK,CAACP,KAAK,EAAE;UACfG,KAAK,CAAC9D,IAAI,CAAC,GAAG,IAAI,CAAC+D,iBAAiB,CAACG,KAAK,CAACP,KAAK,CAAC,CAAC;QACpD;MACF;IACF;IACA,OAAO,CAAC,GAAG,IAAIQ,GAAG,CAACL,KAAK,CAAC,CAAC;EAC5B;;EAEA;AACF;AACA;AACA;AACA;EACU9C,cAAcA,CAACoD,YAAoB,EAAY;IACrD,IAAI;MACF,MAAMT,KAAK,GAAG,IAAI,CAAClH,MAAM,EAAEmH,YAAY,GAAG,CAAC,IAAI,IAAI,CAACnH,MAAM,EAAEoH,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAEM,MAAM,EAAE,OAAO,CAACG,YAAY,CAAC;;MAEzC;MACA,IAAIT,KAAK,CAACM,MAAM,CAACI,IAAI,CAAE5D,CAAM,IAAKA,CAAC,CAACvD,IAAI,KAAKkH,YAAY,CAAC,EAAE;QAC1D,OAAO,CAACA,YAAY,CAAC;MACvB;;MAEA;MACA,KAAK,MAAMF,KAAK,IAAIP,KAAK,CAACM,MAAM,EAAE;QAChC,MAAMK,WAAW,GAAGJ,KAAK,CAACP,KAAK,GAAG,IAAI,CAACI,iBAAiB,CAACG,KAAK,CAACP,KAAK,CAAC,GAAG,EAAE;QAC1E,IAAIW,WAAW,CAACC,QAAQ,CAACH,YAAY,CAAC,EAAE;UACtC,OAAO,CAACF,KAAK,CAAChH,IAAI,EAAEkH,YAAY,CAAC;QACnC;MACF;MAEA,OAAO,CAACA,YAAY,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,MAAM;MACN,OAAO,CAACA,YAAY,CAAC;IACvB;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;EACUtD,sBAAsBA,CAACuB,UAAkB,EAAW;IAC1D,IAAI;MACF,MAAMsB,KAAK,GAAG,IAAI,CAAClH,MAAM,EAAEmH,YAAY,GAAG,CAAC,IAAI,IAAI,CAACnH,MAAM,EAAEoH,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAE,OAAO,KAAK;MACxB,OAAO,IAAI,CAACa,kBAAkB,CAACb,KAAK,EAAEtB,UAAU,CAAC;IACnD,CAAC,CAAC,MAAM;MACN,OAAO,KAAK;IACd;EACF;EAEQmC,kBAAkBA,CAACb,KAAU,EAAEtB,UAAkB,EAAW;IAClE,IAAI,CAACsB,KAAK,EAAEM,MAAM,EAAE,OAAO,KAAK;IAChC,KAAK,MAAMC,KAAK,IAAIP,KAAK,CAACM,MAAM,EAAE;MAChC,IAAIC,KAAK,CAAChH,IAAI,KAAKmF,UAAU,EAAE,OAAO,IAAI;MAC1C,IAAI6B,KAAK,CAACP,KAAK,IAAI,IAAI,CAACa,kBAAkB,CAACN,KAAK,CAACP,KAAK,EAAEtB,UAAU,CAAC,EAAE;QACnE,OAAO,IAAI;MACb;IACF;IACA,OAAO,KAAK;EACd;;EAEA;AACF;AACA;AACA;AACA;EACUlB,iBAAiBA,CAACrB,IAAc,EAAE2E,UAAgB,EAAO;IAC/D;IACA,IAAIC,MAAM,GAAGD,UAAU;IACvB,KAAK,IAAIE,CAAC,GAAG7E,IAAI,CAACmB,MAAM,GAAG,CAAC,EAAE0D,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;MACzCD,MAAM,GAAG;QAAE/E,MAAM,EAAEG,IAAI,CAAC6E,CAAC,CAAC;QAAE,IAAID,MAAM,KAAKtE,SAAS,GAAG;UAAER,MAAM,EAAE8E;QAAO,CAAC,GAAG,CAAC,CAAC;MAAE,CAAC;IACnF;IACA,OAAOA,MAAM;EACf;;EAEA;AACF;AACA;AACA;EACUpC,oBAAoBA,CAAA,EAAW;IACrC;IACA,IAAI,IAAI,CAAC/F,MAAM,CAACqI,QAAQ,EAAE;MACxB,MAAMC,QAAQ,GAAG,IAAI,CAACtI,MAAM,CAACqI,QAAQ,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;MAChE,OAAOH,QAAQ,CAACA,QAAQ,CAAC5D,MAAM,GAAG,CAAC,CAAC,IAAI,SAAS;IACnD;IAEA,IAAI;MACF,IAAI,CAAC,IAAI,CAACxE,MAAM,EAAEwD,OAAO,GAAG,CAAC,EAAE,OAAO,SAAS;MAC/C,MAAM0D,KAAK,GAAG,IAAI,CAAClH,MAAM,EAAEmH,YAAY,GAAG,CAAC,IAAI,IAAI,CAACnH,MAAM,EAAEoH,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAE,OAAO,SAAS;MAC5B,OAAO,IAAI,CAACsB,oBAAoB,CAACtB,KAAK,CAAC;IACzC,CAAC,CAAC,MAAM;MACN,OAAO,SAAS;IAClB;EACF;EAEQsB,oBAAoBA,CAACtB,KAAU,EAAU;IAC/C,IAAI,CAACA,KAAK,EAAEM,MAAM,IAAIN,KAAK,CAAChG,KAAK,IAAI,IAAI,EAAE,OAAO,SAAS;IAC3D,MAAMuG,KAAK,GAAGP,KAAK,CAACM,MAAM,CAACN,KAAK,CAAChG,KAAK,CAAC;IACvC,IAAI,CAACuG,KAAK,EAAE,OAAO,SAAS;IAC5B;IACA,IAAIA,KAAK,CAACP,KAAK,EAAE;MACf,OAAO,IAAI,CAACsB,oBAAoB,CAACf,KAAK,CAACP,KAAK,CAAC;IAC/C;IACA,OAAOO,KAAK,CAAChH,IAAI,IAAI,SAAS;EAChC;;EAEA;;EAEOgI,oBAAoBA,CAACC,OAA4B,EAAE;IACxD,IAAI,CAACC,iBAAiB,GAAGD,OAAO;EAClC;EAEQE,WAAWA,CAAA,EAAY;IAC7B,IAAI,IAAI,CAACD,iBAAiB,KAAKhF,SAAS,EAAE,OAAO,IAAI,CAACgF,iBAAiB;IACvE,OAAO,IAAI,CAAC7I,MAAM,CAACO,eAAe,KAAK,KAAK,CAAC,CAAC;EAChD;;EAEA;EACQwI,kBAAkBA,CAACC,QAAgB,EAAExH,IAAyB,EAAU;IAC9E,QAAQwH,QAAQ;MACd,KAAK,KAAK;QACR,OAAO,mBAAmBxH,IAAI,CAACJ,KAAK,IAAI,EAAE,KAAK;MACjD,KAAK,MAAM;QACT,OAAO,sBAAsB;MAC/B,KAAK,UAAU;QACb,OAAO,iBAAiBI,IAAI,CAAC4B,MAAM,IAAI,QAAQ,KAAK;MACtD,KAAK,MAAM;QACT,OAAO,gBAAgB;MACzB,KAAK,UAAU;QACb,OAAO,0BAA0B;MACnC,KAAK,iBAAiB;QACpB,OAAO,6BAA6B;MACtC,KAAK,QAAQ;QACX,OAAO,aAAa5B,IAAI,CAACkE,SAAS,IAAI,MAAM,KAAK;MACnD,KAAK,MAAM;QACT,OAAO,eAAelE,IAAI,CAACuD,OAAO,IAAI,CAAC,aAAa;MACtD;QACE,OAAO,WAAWiE,QAAQ,KAAK;IACnC;EACF;;EAEA;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAcxD,iBAAiBA,CAAA,EAAgC;IAC7D,IAAI;MACF;MACA;MACA;MACA,MAAMyD,UAAU,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAChH,IAAI,CAAC,GAAG,CAAC;MAC1D,MAAMiH,QAAQ,GAAGC,OAAO,CAACF,UAAU,CAAC;MACpC,MAAMG,UAAU,GAAGF,QAAQ,CAACE,UAAU,IAAIF,QAAQ,CAACG,OAAO,EAAED,UAAU;MACtE,IAAI,CAACA,UAAU,IAAI,CAAC,IAAI,CAACnJ,OAAO,EAAE,OAAO4D,SAAS;MAElD,MAAMyF,GAAG,GAAG,MAAMF,UAAU,CAAC,IAAI,CAACnJ,OAAO,EAAE;QACzCsJ,MAAM,EAAE,KAAK;QACbC,OAAO,EAAE,GAAG;QACZC,KAAK,EAAE,GAAG;QACVtB,MAAM,EAAE;MACV,CAAC,CAAC;MAEFrJ,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,wBAAwBgE,IAAI,CAACS,KAAK,CAAC,CAAC6D,GAAG,EAAE5E,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC;MACtG,OAAO4E,GAAG,IAAIzF,SAAS;IACzB,CAAC,CAAC,OAAOpB,KAAU,EAAE;MACnB,IAAIA,KAAK,CAACC,OAAO,EAAEsF,QAAQ,CAAC,oBAAoB,CAAC,IAAIvF,KAAK,CAACiH,IAAI,KAAK,kBAAkB,IAAIjH,KAAK,CAACC,OAAO,EAAEsF,QAAQ,CAAC,gBAAgB,CAAC,EAAE;QACnIlJ,MAAM,CAACuF,IAAI,CAAC,cAAc,EAAE,mGAAmG,CAAC;MAClI,CAAC,MAAM;QACLvF,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,uBAAuBsC,KAAK,CAACC,OAAO,EAAE,CAAC;MACtE;MACA,OAAOmB,SAAS;IAClB;EACF;;EAEA;;EAEA;AACF;AACA;AACA;AACA;EACS8F,gBAAgBA,CAAA,EAAW;IAChC,IAAI;MACF7K,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,yBAAyB,CAAC;MACvDrB,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAACH,MAAM,CAACI,SAAS,CAAC;MACjF,IAAI,IAAI,CAACJ,MAAM,CAACI,SAAS,EAAE;QACzBtB,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,0BAA0B,EAAEU,MAAM,CAAC+I,IAAI,CAAC,IAAI,CAAC5J,MAAM,CAACI,SAAS,CAACyJ,OAAO,CAAC,CAACnF,MAAM,CAAC;QAC3G5F,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,yBAAyB,EAAE,IAAI,CAACH,MAAM,CAACI,SAAS,CAAC0J,MAAM,EAAEpF,MAAM,CAAC;MAC/F;MAEA,MAAMqF,UAAU,GAAGhL,aAAa,CAAC,IAAI,CAACkB,OAAO,EAAE,IAAI,CAAC0B,aAAa,CAAC,CAAC,CAAC;MACpE,MAAMmE,UAAU,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;MAC9CjH,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,iBAAiB,EAAE2F,UAAU,CAAC;MAE3D,MAAM1C,MAAM,GAAGnE,eAAe,CAC5B6G,UAAU,EACV,IAAI,CAAC/B,aAAa,CAAC,CAAC,EACpBgG,UAAU,CAACC,YAAY,EACvBD,UAAU,CAACtI,YACb,CAAC;MAED,MAAMgG,UAAU,GAAG,IAAI,CAAC1D,aAAa,CAAC,CAAC;MACvCjF,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,aAAa,EAAEsH,UAAU,CAAC;MACvD,IAAIwC,oBAA4B;MAChC,IAAIC,UAAU,GAAG,EAAE;MAEnB,IAAI,IAAI,CAAClK,MAAM,CAACI,SAAS,EAAE;QACzB,MAAM2B,GAAG,GAAG,IAAI,CAAC/B,MAAM,CAACI,SAAS;QACjCtB,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,sCAAsC,CAAC;QAEpE,MAAMgK,WAAW,GAAG1C,UAAU,CAAC1F,GAAG,CAACpB,IAAI,IAAI;UACzC,MAAMyJ,KAAK,GAAGrI,GAAG,CAAC8H,OAAO,CAAClJ,IAAI,CAAC;UAC/B,IAAIyJ,KAAK,EAAE;YACT,MAAMC,KAAK,GAAGD,KAAK,CAACC,KAAK,GAAG,KAAKD,KAAK,CAACC,KAAK,GAAG,GAAG,EAAE;YACpD,MAAMC,IAAI,GAAG,KAAK3J,IAAI,GAAG0J,KAAK,KAAKD,KAAK,CAAClJ,WAAW,EAAE;YACtDpC,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,UAAU,EAAEmK,IAAI,CAAC;YAC9C,OAAOA,IAAI;UACb;UACAxL,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,qBAAqB,EAAEQ,IAAI,CAAC;UACzD,OAAO,KAAKA,IAAI,EAAE;QACpB,CAAC,CAAC;QACFsJ,oBAAoB,GAAG,uBAAuBE,WAAW,CAAClI,IAAI,CAAC,IAAI,CAAC,EAAE;QAEtE,IAAIF,GAAG,CAAC+H,MAAM,IAAI/H,GAAG,CAAC+H,MAAM,CAACpF,MAAM,GAAG,CAAC,EAAE;UACvC,MAAM6F,UAAU,GAAGxI,GAAG,CAAC+H,MAAM,CAAC/H,GAAG,CAACyI,KAAK,IAAI,KAAKA,KAAK,CAACvI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;UACpEiI,UAAU,GAAG,yBAAyBK,UAAU,CAACtI,IAAI,CAAC,IAAI,CAAC,EAAE;UAC7DnD,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,SAAS,EAAEoK,UAAU,CAAC7F,MAAM,CAAC;QAC5D;QAEA,IAAI,CAAC+F,cAAc,CAAChD,UAAU,EAAE1F,GAAG,CAAC;MACtC,CAAC,MAAM;QACLjD,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,iCAAiC,CAAC;QAC/D8J,oBAAoB,GAAG,sBAAsBxC,UAAU,CAACxF,IAAI,CAAC,IAAI,CAAC,EAAE;MACtE;MAEA,MAAMyI,OAAO,GAAG;AACtB,kBAAkB5E,UAAU;AAC5B,EAAEmE,oBAAoB,GAAGC,UAAU;AACnC;AACA,EAAE9G,MAAM,CAAC4G,YAAY;AACrB,iBAAiB;MACXlL,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,eAAe,EAAEuK,OAAO,CAACC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;MACxE,OAAOD,OAAO;IAChB,CAAC,CAAC,OAAOjI,KAAU,EAAE;MACnB3D,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,yBAAyB,EAAEsC,KAAK,CAACC,OAAO,CAAC;MACtE5D,MAAM,CAAC2D,KAAK,CAAC,cAAc,EAAE,4BAA4BA,KAAK,CAACC,OAAO,EAAE,CAAC;MACzE,OAAO,qDAAqD;IAC9D;EACF;EACA;;EAEQkI,cAAc,GAAG,KAAK;EAEtBH,cAAcA,CAAChD,UAAoB,EAAE1F,GAAqC,EAAE;IAClF,IAAI,IAAI,CAAC6I,cAAc,EAAE,OAAO,CAAC;;IAEjC,MAAMC,UAAU,GAAG,IAAIjD,GAAG,CAAC/G,MAAM,CAAC+I,IAAI,CAAC7H,GAAG,CAAC8H,OAAO,CAAC,CAAC;IACpD,MAAMiB,OAAO,GAAGrD,UAAU,CAACe,MAAM,CAACtE,CAAC,IAAI,CAAC2G,UAAU,CAACE,GAAG,CAAC7G,CAAC,CAAC,CAAC;IAE1D,IAAI4G,OAAO,CAACpG,MAAM,GAAG,CAAC,EAAE;MACtB,IAAI,CAACkG,cAAc,GAAG,IAAI;MAC1BI,OAAO,CAAC3G,IAAI,CACV,qCAAqCyG,OAAO,CAAC7I,IAAI,CAAC,MAAM,CAAC,KAAK,GAC9D,yDACF,CAAC;IACH;EACF;;EAEA;;EAEQgJ,qBAAqBA,CAAA,EAAqB;IAChD,MAAMC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC3L,KAAK,CAAC4L,MAAM,CAAC,CAAC,CAAC;;IAEzC;IACA,KAAK,MAAMjE,MAAM,IAAI,IAAI,CAACzH,OAAO,CAAC0L,MAAM,CAAC,CAAC,EAAE;MAC1CD,QAAQ,CAACzH,IAAI,CAAC;QACZ9C,IAAI,EAAEuG,MAAM,CAACvG,IAAI;QACjBO,WAAW,EAAEgG,MAAM,CAAChG,WAAW;QAC/BC,UAAU,EAAEN,MAAM,CAACuK,WAAW,CAC5BvK,MAAM,CAACC,OAAO,CAACoG,MAAM,CAAC/F,UAAU,CAAC,CAACY,GAAG,CAAC,CAAC,CAACsJ,GAAG,EAAEC,OAAO,CAAC,KAAK,CACxDD,GAAG,EACH;UAAEhK,IAAI,EAAEiK,OAAc;UAAEpK,WAAW,EAAEmK,GAAG;UAAE/J,QAAQ,EAAE;QAAK,CAAC,CAC3D,CACH,CAAC;QACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;UACvB,IAAI;YACF,MAAM2G,MAAM,GAAG,MAAMjB,MAAM,CAACqE,OAAO,CAAC/J,IAAI,CAAC;YACzC1C,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,WAAWkG,MAAM,CAACvG,IAAI,WAAW,EAAEgD,IAAI,CAACK,SAAS,CAACmE,MAAM,CAAC,CAAC;YACtF,OAAO,OAAOA,MAAM,KAAK,QAAQ,GAAGA,MAAM,GAAGxE,IAAI,CAACK,SAAS,CAACmE,MAAM,CAAC;UACrE,CAAC,CAAC,OAAO1F,KAAU,EAAE;YACnB,OAAO,aAAayE,MAAM,CAACvG,IAAI,aAAa8B,KAAK,CAACC,OAAO,EAAE;UAC7D;QACF;MACF,CAAC,CAAC;IACJ;IAEA,OAAOwI,QAAQ;EACjB;;EAEA;EACOM,QAAQA,CAAA,EAAqB;IAClC,OAAO,IAAI,CAACP,qBAAqB,CAAC,CAAC;EACrC;;EAEA;EACA,MAAaQ,WAAWA,CAAC9K,IAAY,EAAEa,IAAyB,EAAmB;IACjF,MAAMZ,IAAI,GAAG,IAAI,CAACrB,KAAK,CAACmM,GAAG,CAAC/K,IAAI,CAAC,IAC/B,IAAI,CAACsK,qBAAqB,CAAC,CAAC,CAACpJ,IAAI,CAAC8J,CAAC,IAAIA,CAAC,CAAChL,IAAI,KAAKA,IAAI,CAAC;IACzD,IAAI,CAACC,IAAI,EAAE;MACT,OAAO,mBAAmBD,IAAI,EAAE;IAClC;IACA,IAAI;MACF,MAAMwH,MAAM,GAAG,MAAMvH,IAAI,CAACW,OAAO,CAACC,IAAI,CAAC;MACvC1C,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,wBAAwBL,IAAI,MAAMwH,MAAM,EAAE,CAAC;MACvE,OAAOA,MAAM;IACf,CAAC,CAAC,OAAO1F,KAAU,EAAE;MACnB3D,MAAM,CAAC2D,KAAK,CAAC,cAAc,EAAE,qBAAqB9B,IAAI,MAAM8B,KAAK,CAACC,OAAO,EAAE,CAAC;MAC5E,OAAO,WAAW/B,IAAI,aAAa8B,KAAK,CAACC,OAAO,EAAE;IACpD;EACF;;EAEA;;EAEQf,aAAaA,CAAA,EAAe;IAClC,OAAO;MACLiK,oBAAoB,EAAE,IAAI,CAAC5L,MAAM,CAAC4L,oBAAoB;MACtDC,oBAAoB,EAAE,IAAI,CAAC7L,MAAM,CAAC6L,oBAAoB;MACtD/F,UAAU,EAAE,IAAI,CAACC,oBAAoB,CAAC;IACxC,CAAC;EACH;;EAEA;;EAEQ+F,eAAeA,CAAChG,UAAkB,EAAU;IAClD,MAAM;MAAEiG;IAAa,CAAC,GAAG,IAAI,CAAC/L,MAAM;IACpC,IAAI,CAAC+L,YAAY,EAAE,OAAO,EAAE;IAE5B,IAAI5D,MAAM,GAAG,EAAE;IACf,IAAI4D,YAAY,CAACC,MAAM,EAAEC,IAAI,CAAC,CAAC,EAAE;MAC/B9D,MAAM,IAAI,0BAA0B4D,YAAY,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,4BAA4B;IAC5F;IAEA,IAAIF,YAAY,CAACG,qBAAqB,EAAE;MACtC,IAAI;QACF,MAAMC,kBAAkB,GAAGJ,YAAY,CAACG,qBAAqB,CAACpG,UAAU,CAAC,EAAEmG,IAAI,CAAC,CAAC;QACjF,IAAIE,kBAAkB,EAAE;UACtBhE,MAAM,IAAI,0BAA0BgE,kBAAkB,4BAA4B;QACpF;MACF,CAAC,CAAC,OAAO1J,KAAK,EAAE;QACd3D,MAAM,CAAC2D,KAAK,CAAC,cAAc,EAAE,oCAAoC,EAAEA,KAAK,CAAC;MAC3E;IACF;IAEA,OAAO0F,MAAM,GAAG,mBAAmBA,MAAM,qBAAqB,GAAG,EAAE;EACrE;;EAEA;;EAEQiE,YAAY,GAAa,EAAE;EAC3BC,cAAc,GAAW,EAAE;EAE3BC,kBAAkBA,CAACC,IAAY,EAAEC,QAAgB,EAAE1G,UAAkB,EAAQ;IACnF;IACA,IAAI,IAAI,CAACuG,cAAc,IAAIvG,UAAU,KAAK,IAAI,CAACuG,cAAc,EAAE;MAC7D,IAAI,CAACD,YAAY,CAAC3I,IAAI,CAAC,yBAAyBqC,UAAU,EAAE,CAAC;IAC/D;IACA,IAAI,CAACuG,cAAc,GAAGvG,UAAU;;IAEhC;IACA,MAAM2G,SAAS,GAAGD,QAAQ,GAAGD,IAAI;IACjC,IAAIE,SAAS,KAAK,CAAC,EAAE;MACnB,IAAI,CAACL,YAAY,CAAC3I,IAAI,CACpB,WAAWgJ,SAAS,8EACtB,CAAC;IACH,CAAC,MAAM,IAAIA,SAAS,KAAK,CAAC,EAAE;MAC1B,IAAI,CAACL,YAAY,CAAC3I,IAAI,CACpB,qBAAqBgJ,SAAS,iEAChC,CAAC;IACH;EACF;;EAEA;;EAEQC,kBAAkBA,CACxBH,IAAY,EACZC,QAAgB,EAChBG,iBAAyB,EACzB7G,UAAkB,EAClB8G,aAAqB,EACrBC,WAAiD,EACzC;IACR,IAAIC,MAAM,GAAG,EAAE;;IAEf;IACAA,MAAM,IAAI,IAAI,CAAChB,eAAe,CAAChG,UAAU,CAAC;;IAE1C;IACAgH,MAAM,IAAI,iBAAiB;IAC3BA,MAAM,IAAI,kBAAkB;IAC5BA,MAAM,IAAI,GAAGH,iBAAiB,IAAI;IAClCG,MAAM,IAAI,mBAAmB;IAE7B,IAAID,WAAW,IAAIA,WAAW,CAACnI,MAAM,GAAG,CAAC,EAAE;MACzCoI,MAAM,IAAI,kBAAkB;MAC5B;MACA,MAAMC,aAAa,GAAGF,WAAW,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC;MAC5C,KAAK,MAAMC,GAAG,IAAIF,aAAa,EAAE;QAC/BD,MAAM,IAAI,IAAIG,GAAG,CAACC,IAAI,MAAMD,GAAG,CAACE,OAAO,IAAI;MAC7C;MACAL,MAAM,IAAI,mBAAmB;IAC/B;IAEAA,MAAM,IAAI,eAAe;IACzBA,MAAM,IAAI,QAAQP,IAAI,GAAG,CAAC,OAAOC,QAAQ,uBAAuB;IAChEM,MAAM,IAAI,gBAAgB;IAC1BA,MAAM,IAAI,oBAAoB;;IAE9B;IACAA,MAAM,IAAI,mBAAmB;IAE7B,IAAIM,SAAS,GAAG,CAAC;IACjB,KAAK,MAAMC,KAAK,IAAI,IAAI,CAAC3N,OAAO,EAAE;MAChC0N,SAAS,EAAE;MACXN,MAAM,IAAI,SAASM,SAAS,KAAK;MACjCN,MAAM,IAAI,uBAAuBO,KAAK,CAACC,UAAU,CAACC,gBAAgB,IAAI;MACtET,MAAM,IAAI,WAAWO,KAAK,CAACC,UAAU,CAACE,MAAM,IAAI;MAChDV,MAAM,IAAI,SAASO,KAAK,CAACC,UAAU,CAACG,IAAI,IAAI;MAC5CX,MAAM,IAAI,kBAAkBO,KAAK,CAACnG,MAAM,CAACwG,MAAM,IAAI;MACnDZ,MAAM,IAAI,UAAUM,SAAS,KAAK;IACpC;;IAEA;IACA,KAAK,MAAMO,GAAG,IAAI,IAAI,CAACvB,YAAY,EAAE;MACnCU,MAAM,IAAI,QAAQa,GAAG,UAAU;IACjC;IACA,IAAI,CAACvB,YAAY,GAAG,EAAE;IAEtBU,MAAM,IAAI,sBAAsB;;IAEhC;IACAhO,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,uCAAuC,EAAE,CAAC,CAAC,IAAI,CAACH,MAAM,CAACI,SAAS,CAAC;IAC9F0M,MAAM,IAAI,kBAAkB;IAC5BA,MAAM,IAAI,mBAAmBhH,UAAU,IAAI;;IAE3C;IACA,IAAI,IAAI,CAAC9F,MAAM,CAACI,SAAS,EAAE;MACzB,MAAM2B,GAAG,GAAG,IAAI,CAAC/B,MAAM,CAACI,SAAS;MACjC,MAAMqH,UAAU,GAAG,IAAI,CAAC1D,aAAa,CAAC,CAAC;MACvCjF,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,6CAA6C,EAAE2F,UAAU,CAAC;;MAEvF;MACA,MAAMqE,WAAW,GAAG1C,UAAU,CAAC1F,GAAG,CAACpB,IAAI,IAAI;QACzC,MAAMyJ,KAAK,GAAGrI,GAAG,CAAC8H,OAAO,CAAClJ,IAAI,CAAC;QAC/B,IAAIyJ,KAAK,EAAE;UACT,MAAMC,KAAK,GAAGD,KAAK,CAACC,KAAK,GAAG,KAAKD,KAAK,CAACC,KAAK,GAAG,GAAG,EAAE;UACpD,OAAO,KAAK1J,IAAI,GAAG0J,KAAK,KAAKD,KAAK,CAAClJ,WAAW,EAAE;QAClD;QACA,OAAO,KAAKP,IAAI,EAAE;MACpB,CAAC,CAAC;MACFmM,MAAM,IAAI,yBAAyB3C,WAAW,CAAClI,IAAI,CAAC,IAAI,CAAC,IAAI;;MAE7D;MACA,IAAIF,GAAG,CAAC+H,MAAM,IAAI/H,GAAG,CAAC+H,MAAM,CAACpF,MAAM,GAAG,CAAC,EAAE;QACvC,MAAM6F,UAAU,GAAGxI,GAAG,CAAC+H,MAAM,CAAC/H,GAAG,CAACyI,KAAK,IAAI,KAAKA,KAAK,CAACvI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACpE6K,MAAM,IAAI,yBAAyBvC,UAAU,CAACtI,IAAI,CAAC,IAAI,CAAC,IAAI;MAC9D;IACF,CAAC,MAAM;MACL;MACA,MAAMwF,UAAU,GAAG,IAAI,CAAC1D,aAAa,CAAC,CAAC;MACvC+I,MAAM,IAAI,sBAAsBrF,UAAU,CAACxF,IAAI,CAAC,IAAI,CAAC,IAAI;IAC3D;IAEA6K,MAAM,IAAI,IAAI,GAAGF,aAAa,GAAG,IAAI;IACrCE,MAAM,IAAI,mBAAmB;IAE7B,OAAOA,MAAM;EACf;;EAEA;;EAEA,MAAMvL,OAAOA,CAACqM,WAAmB,EAAEf,WAAiD,EAA4B;IAC9G,IAAI,IAAI,CAAClN,SAAS,EAAE;MAClB,OAAO;QAAEmF,OAAO,EAAE,KAAK;QAAEpC,OAAO,EAAE,2BAA2B;QAAEmL,KAAK,EAAE;MAAG,CAAC;IAC5E;IAEA,IAAI,CAAClO,SAAS,GAAG,IAAI;IACrB,IAAI,CAACD,OAAO,GAAG,EAAE;IACjB,IAAI,CAAC0M,YAAY,GAAG,EAAE;IACtB,IAAI,CAACC,cAAc,GAAG,EAAE;IACxB,MAAMG,QAAQ,GAAG,IAAI,CAACxM,MAAM,CAACwM,QAAQ,IAAInN,iBAAiB;IAC1D,MAAMyO,SAAS,GAAG,IAAI,CAAC9N,MAAM,CAAC8N,SAAS,IAAI,GAAG;;IAE9C;IACA,MAAMC,YAAwB,GAAG;MAC/BC,YAAY,EAAE,CAAC;MACfC,gBAAgB,EAAE,CAAC;MACnBC,WAAW,EAAE,CAAC;MACdC,gBAAgB,EAAE;IACpB,CAAC;;IAED;IACA,IAAIxB,iBAAiB,GAAGiB,WAAW;IACnC,IAAI,IAAI,CAAChO,mBAAmB,EAAE;MAC5B+M,iBAAiB,GAAG,oCAAoC,IAAI,CAAC/M,mBAAmB,uBAAuBgO,WAAW,EAAE;MACpH,IAAI,CAAChO,mBAAmB,GAAG,IAAI,CAAC,CAAC;IACnC;IAEAd,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,wBAAwB2L,iBAAiB,GAAG,CAAC;;IAEzE;IACA,MAAM,IAAI,CAAC3M,MAAM,CAACoO,YAAY,GAAG,CAAC;IAElC,IAAI;MACF;MACA;MACA;MACA,IAAI,CAAC,IAAI,CAACtF,WAAW,CAAC,CAAC,EAAE;QACvB,IAAI,CAAC9I,MAAM,CAACqF,cAAc,GAAG,aAAa,CAAC;QAC3C,MAAMgJ,YAAY,GAAG,CAAC,CAAC,IAAI,CAACxO,gBAAgB;QAC5C,MAAMyO,YAAY,GAAGnP,wBAAwB,CAC3C,IAAI,EAAEkP,YAAY,EAAE,IAAI,CAACrO,MAAM,CAAC+L,YAAY,EAAEC,MAChD,CAAC;QACD,MAAMzM,KAAK,GAAG,IAAI,CAAC0L,qBAAqB,CAAC,CAAC;QAC1C,MAAMnF,UAAU,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;;QAE9C;QACA,MAAMwI,UAAU,GAAG,mBAAmBzI,UAAU,aAAa6G,iBAAiB,EAAE;QAEhF,MAAM6B,QAAQ,GAAG,MAAM,IAAI,CAACzO,QAAQ,CAAC0O,eAAe,CAClDH,YAAY,EAAEC,UAAU,EAAEhP,KAAK,EAAE,EAAE,EAAEsE,SACvC,CAAC;;QAED;QACA,IAAI2K,QAAQ,CAACE,UAAU,EAAE;UACvBX,YAAY,CAACC,YAAY,IAAIQ,QAAQ,CAACE,UAAU,CAACV,YAAY;UAC7DD,YAAY,CAACE,gBAAgB,IAAIO,QAAQ,CAACE,UAAU,CAACT,gBAAgB;UACrEF,YAAY,CAACG,WAAW,IAAIM,QAAQ,CAACE,UAAU,CAACR,WAAW;UAC3DH,YAAY,CAACI,gBAAgB,IAAIK,QAAQ,CAACE,UAAU,CAACP,gBAAgB;UACrE,IAAI,CAACnO,MAAM,CAAC2O,YAAY,GAAGH,QAAQ,CAACE,UAAU,CAAC;QACjD;;QAEA;QACA,IAAIhM,OAAO,GAAG8L,QAAQ,CAACtL,IAAI,IAAI,EAAE;QACjC,IAAIsL,QAAQ,CAACI,SAAS,EAAE;UACtB,KAAK,MAAMC,EAAE,IAAIL,QAAQ,CAACI,SAAS,EAAE;YACnC,MAAMhO,IAAI,GAAG,IAAI,CAACrB,KAAK,CAACmM,GAAG,CAACmD,EAAE,CAAClO,IAAI,CAAC;YACpC,IAAIC,IAAI,EAAE;cACR,MAAMuH,MAAM,GAAG,MAAMvH,IAAI,CAACW,OAAO,CAACsN,EAAE,CAACrN,IAAI,CAAC;cAC1C,IAAIqN,EAAE,CAAClO,IAAI,KAAK,MAAM,EAAE;gBACtB+B,OAAO,GAAGyF,MAAM;cAClB,CAAC,MAAM,IAAI0G,EAAE,CAAClO,IAAI,KAAK,iBAAiB,EAAE;gBACxC;gBACA,MAAMmO,QAAQ,GAAG,sBAAsB3G,MAAM,sBAAsBwE,iBAAiB,4EAA4E;gBAChK,MAAMoC,gBAAgB,GAAG,MAAM,IAAI,CAAChP,QAAQ,CAAC0O,eAAe,CAC1DH,YAAY,EAAEQ,QAAQ,EAAEvP,KAAK,EAAE,EAAE,EAAEsE,SACrC,CAAC;gBACD,IAAIkL,gBAAgB,CAACL,UAAU,EAAE;kBAC/BX,YAAY,CAACC,YAAY,IAAIe,gBAAgB,CAACL,UAAU,CAACV,YAAY;kBACrED,YAAY,CAACE,gBAAgB,IAAIc,gBAAgB,CAACL,UAAU,CAACT,gBAAgB;kBAC7EF,YAAY,CAACG,WAAW,IAAIa,gBAAgB,CAACL,UAAU,CAACR,WAAW;kBACnEH,YAAY,CAACI,gBAAgB,IAAIY,gBAAgB,CAACL,UAAU,CAACP,gBAAgB;kBAC7E,IAAI,CAACnO,MAAM,CAAC2O,YAAY,GAAGI,gBAAgB,CAACL,UAAU,CAAC;gBACzD;gBACA,IAAIK,gBAAgB,CAACH,SAAS,EAAE;kBAC9B,KAAK,MAAMI,GAAG,IAAID,gBAAgB,CAACH,SAAS,EAAE;oBAC5C,IAAII,GAAG,CAACrO,IAAI,KAAK,MAAM,EAAE;sBACvB,MAAMsO,UAAU,GAAG,MAAM,IAAI,CAAC1P,KAAK,CAACmM,GAAG,CAAC,MAAM,CAAC,CAAEnK,OAAO,CAACyN,GAAG,CAACxN,IAAI,CAAC;sBAClEkB,OAAO,GAAGuM,UAAU;oBACtB;kBACF;gBACF;gBACA,IAAI,CAACvM,OAAO,IAAIqM,gBAAgB,CAAC7L,IAAI,EAAE;kBACrCR,OAAO,GAAGqM,gBAAgB,CAAC7L,IAAI;gBACjC;cACF;YACF;UACF;QACF;QAEA,MAAMiF,MAAuB,GAAG;UAC9BrD,OAAO,EAAE,IAAI;UACbpC,OAAO,EAAEA,OAAO,IAAI,6BAA6B;UACjDmL,KAAK,EAAE,EAAE;UACTa,UAAU,EAAEX;QACd,CAAC;QACD,MAAM,IAAI,CAAC/N,MAAM,CAACkP,WAAW,GAAG/G,MAAM,CAAC;QACvC,OAAOA,MAAM;MACf;;MAEA;MACA,KAAK,IAAIoE,IAAI,GAAG,CAAC,EAAEA,IAAI,GAAGC,QAAQ,EAAED,IAAI,EAAE,EAAE;QAC1CzN,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,cAAcuL,IAAI,GAAG,CAAC,IAAIC,QAAQ,QAAQ,CAAC;;QAEvE;QACA,MAAM,IAAI,CAACxM,MAAM,CAACmP,YAAY,GAAG5C,IAAI,CAAC;;QAEtC;QACA,MAAMxC,UAAU,GAAGhL,aAAa,CAAC,IAAI,CAACkB,OAAO,EAAE,IAAI,CAAC0B,aAAa,CAAC,CAAC,CAAC;QACpE,MAAMmE,UAAU,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;QAC9C,MAAM3C,MAAM,GAAGnE,eAAe,CAC5B6G,UAAU,EACV,IAAI,CAAC/B,aAAa,CAAC,CAAC,EACpBgG,UAAU,CAACC,YAAY,EACvBD,UAAU,CAACtI,YACb,CAAC;QAED3C,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,WAAWoC,MAAM,CAAC0C,UAAU,EAAE,CAAC;QAC3DhH,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,gBAAgBiD,MAAM,CAAC4G,YAAY,EAAE,CAAC;;QAEnE;QACA,IAAI4C,aAAa,GAAGxJ,MAAM,CAAC4G,YAAY;QACvC,IAAI,IAAI,CAAChK,MAAM,CAACoP,sBAAsB,EAAE;UACtCxC,aAAa,GAAG,MAAM,IAAI,CAAC5M,MAAM,CAACoP,sBAAsB,CAACxC,aAAa,CAAC;QACzE;;QAEA;QACA,IAAI,CAACN,kBAAkB,CAACC,IAAI,EAAEC,QAAQ,EAAE1G,UAAU,CAAC;;QAEnD;QACA,MAAMuJ,cAAc,GAAG,IAAI,CAAC3C,kBAAkB,CAC5CH,IAAI,EAAEC,QAAQ,EAAEG,iBAAiB,EAAE7G,UAAU,EAAE8G,aAAa,EAAEC,WAChE,CAAC;;QAED;QACA,MAAMtH,UAAU,GAAG,MAAM,IAAI,CAACC,iBAAiB,CAAC,CAAC;;QAEjD;QACA,IAAI,CAACxF,MAAM,CAACqF,cAAc,GAAG,qBAAqB,CAAC;QACnD,MAAMgJ,YAAY,GAAG,CAAC,CAAC,IAAI,CAACxO,gBAAgB;QAC5C,MAAMyO,YAAY,GAAGpP,iBAAiB,CAAC,IAAI,EAAEmP,YAAY,CAAC;QAC1D,MAAM9O,KAAK,GAAG,IAAI,CAAC0L,qBAAqB,CAAC,CAAC;QAE1CnM,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,sBAAsBzB,KAAK,CAACmF,MAAM,WAAW,CAAC;QAC1E5F,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,uBAAuB,EAAEmO,YAAY,CAAC5J,MAAM,CAAC;QAC1E5F,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,uBAAuB,EAAEkP,cAAc,CAAC1E,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAEvF,MAAM6D,QAAQ,GAAG,MAAM,IAAI,CAACzO,QAAQ,CAAC0O,eAAe,CAClDH,YAAY,EACZe,cAAc,EACd9P,KAAK,EACL,IAAI,CAACG,OAAO,EACZ6F,UACF,CAAC;;QAED;QACA,IAAIiJ,QAAQ,CAACE,UAAU,EAAE;UACvBX,YAAY,CAACC,YAAY,IAAIQ,QAAQ,CAACE,UAAU,CAACV,YAAY;UAC7DD,YAAY,CAACE,gBAAgB,IAAIO,QAAQ,CAACE,UAAU,CAACT,gBAAgB;UACrEF,YAAY,CAACG,WAAW,IAAIM,QAAQ,CAACE,UAAU,CAACR,WAAW;UAC3DH,YAAY,CAACI,gBAAgB,IAAIK,QAAQ,CAACE,UAAU,CAACP,gBAAgB;UACrE,IAAI,CAACnO,MAAM,CAAC2O,YAAY,GAAGH,QAAQ,CAACE,UAAU,CAAC;QACjD;;QAEA;QACA,IAAI,CAACF,QAAQ,CAACI,SAAS,IAAIJ,QAAQ,CAACI,SAAS,CAAClK,MAAM,KAAK,CAAC,EAAE;UAC1D5F,MAAM,CAACuF,IAAI,CAAC,cAAc,EAAE,kCAAkC,EAAEmK,QAAQ,CAACtL,IAAI,CAAC;UAC9E,MAAMiF,MAAuB,GAAG;YAC9BrD,OAAO,EAAE,IAAI;YACbpC,OAAO,EAAE8L,QAAQ,CAACtL,IAAI,IAAI,iBAAiB;YAC3C2K,KAAK,EAAE,IAAI,CAACnO,OAAO;YACnBgP,UAAU,EAAEX;UACd,CAAC;UACD,MAAM,IAAI,CAAC/N,MAAM,CAACkP,WAAW,GAAG/G,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,MAAM;UAAEmH;QAAU,CAAC,GAAGd,QAAQ;QAC9B1P,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,YAAYsO,SAAS,CAAC7B,IAAI,EAAE,CAAC;QACzD,IAAI6B,SAAS,CAAC9B,MAAM,EAAE;UACpB1O,MAAM,CAACqB,KAAK,CAAC,cAAc,EAAE,cAAcmP,SAAS,CAAC9B,MAAM,EAAE,CAAC;QAChE;;QAEA;QACA;QACA,MAAM+B,QAAQ,GAAGf,QAAQ,CAACI,SAAS,CAAC,CAAC,CAAE;QACvC,IAAIJ,QAAQ,CAACI,SAAS,CAAClK,MAAM,GAAG,CAAC,EAAE;UACjC5F,MAAM,CAACuF,IAAI,CAAC,cAAc,EAAE,eAAemK,QAAQ,CAACI,SAAS,CAAClK,MAAM,4CAA4C,CAAC;QACnH;QAEA5F,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,SAASuO,QAAQ,CAAC5O,IAAI,IAAIgD,IAAI,CAACK,SAAS,CAACuL,QAAQ,CAAC/N,IAAI,CAAC,GAAG,CAAC;;QAEvF;QACA,MAAMgO,WAAW,GAAG,IAAI,CAACzG,kBAAkB,CAACwG,QAAQ,CAAC5O,IAAI,EAAE4O,QAAQ,CAAC/N,IAAI,CAAC;QACzE;QACA,MAAMiO,aAAa,GAAGH,SAAS,CAAC7B,IAAI,GAAG,MAAM6B,SAAS,CAAC7B,IAAI,EAAE,GAAG,MAAM+B,WAAW,EAAE;QACnF,IAAI,CAACxP,MAAM,CAACqF,cAAc,GAAGoK,aAAa,CAAC;;QAE3C;QACA,MAAM7O,IAAI,GAAG,IAAI,CAACrB,KAAK,CAACmM,GAAG,CAAC6D,QAAQ,CAAC5O,IAAI,CAAC,IACxC,IAAI,CAACsK,qBAAqB,CAAC,CAAC,CAACpJ,IAAI,CAAC8J,CAAC,IAAIA,CAAC,CAAChL,IAAI,KAAK4O,QAAQ,CAAC5O,IAAI,CAAC;QAElE,IAAI+M,MAAc;QAClB,IAAI9M,IAAI,EAAE;UACR8M,MAAM,GAAG,MAAM9M,IAAI,CAACW,OAAO,CAACgO,QAAQ,CAAC/N,IAAI,CAAC;QAC5C,CAAC,MAAM;UACLkM,MAAM,GAAG,mBAAmB6B,QAAQ,CAAC5O,IAAI,EAAE;QAC7C;QAEA7B,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,WAAW0M,MAAM,EAAE,CAAC;;QAEhD;QACA,MAAMgC,SAAoB,GAAG;UAC3BtC,SAAS,EAAEb,IAAI;UACfe,UAAU,EAAEgC,SAAS;UACrBpI,MAAM,EAAE;YACNvG,IAAI,EAAE4O,QAAQ,CAAC5O,IAAI;YACnBgP,KAAK,EAAEJ,QAAQ,CAAC/N,IAAI;YACpBkM;UACF;QACF,CAAC;QACD,IAAI,CAAChO,OAAO,CAAC+D,IAAI,CAACiM,SAAS,CAAC;;QAE5B;QACA,MAAM,IAAI,CAAC1P,MAAM,CAAC4P,WAAW,GAAG,IAAI,CAAClQ,OAAO,CAAC;;QAE7C;QACA,IAAI6P,QAAQ,CAAC5O,IAAI,KAAK,MAAM,EAAE;UAC5B,MAAMwH,MAAuB,GAAG;YAC9BrD,OAAO,EAAEyK,QAAQ,CAAC/N,IAAI,CAACsD,OAAO,KAAK,KAAK;YACxCpC,OAAO,EAAE6M,QAAQ,CAAC/N,IAAI,CAAC0B,IAAI,IAAIwK,MAAM;YACrCG,KAAK,EAAE,IAAI,CAACnO;UACd,CAAC;UACDZ,MAAM,CAACkC,IAAI,CAAC,cAAc,EAAE,mBAAmBmH,MAAM,CAACzF,OAAO,EAAE,CAAC;UAChE,MAAM,IAAI,CAAC1C,MAAM,CAACkP,WAAW,GAAG/G,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,IAAIoH,QAAQ,CAAC5O,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,CAACX,MAAM,CAACoF,SAAS,EAAE;UAC1D,IAAI,CAACxF,mBAAmB,GAAG2P,QAAQ,CAAC/N,IAAI,CAAC2D,QAAQ,IAAIuI,MAAM;UAE3D,MAAMvF,MAAuB,GAAG;YAC9BrD,OAAO,EAAE,IAAI;YACbpC,OAAO,EAAEgL,MAAM;YACfG,KAAK,EAAE,IAAI,CAACnO;UACd,CAAC;UACD,MAAM,IAAI,CAACM,MAAM,CAACkP,WAAW,GAAG/G,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,MAAM,IAAI9F,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAEwL,SAAS,CAAC,CAAC;MAC9D;;MAEA;MACA,MAAM3F,MAAuB,GAAG;QAC9BrD,OAAO,EAAE,KAAK;QACdpC,OAAO,EAAE,0BAA0B8J,QAAQ,gCAAgC;QAC3EqB,KAAK,EAAE,IAAI,CAACnO,OAAO;QACnBgP,UAAU,EAAEX;MACd,CAAC;MACD,MAAM,IAAI,CAAC/N,MAAM,CAACkP,WAAW,GAAG/G,MAAM,CAAC;MACvC,OAAOA,MAAM;IACf,CAAC,CAAC,OAAO1F,KAAU,EAAE;MACnB3D,MAAM,CAAC2D,KAAK,CAAC,cAAc,EAAE,kBAAkB,EAAEA,KAAK,CAAC;MACvD,MAAM0F,MAAuB,GAAG;QAC9BrD,OAAO,EAAE,KAAK;QACdpC,OAAO,EAAE,UAAUD,KAAK,CAACC,OAAO,EAAE;QAClCmL,KAAK,EAAE,IAAI,CAACnO,OAAO;QACnBgP,UAAU,EAAEX;MACd,CAAC;MACD,MAAM,IAAI,CAAC/N,MAAM,CAACkP,WAAW,GAAG/G,MAAM,CAAC;MACvC,OAAOA,MAAM;IACf,CAAC,SAAS;MACR,IAAI,CAACxI,SAAS,GAAG,KAAK;IACxB;EACF;;EAEA;EACAkQ,UAAUA,CAAC5P,OAAY,EAAEC,MAAW,EAAQ;IAC1C,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,MAAM,GAAGA,MAAM;EACtB;;EAEA;EACA4P,YAAYA,CAAA,EAAY;IACtB,OAAO,IAAI,CAACnQ,SAAS;EACvB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["logger","walkFiberTree","findScrollableContainers","dehydrateScreen","buildSystemPrompt","buildKnowledgeOnlyPrompt","KnowledgeBaseService","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","lastAskUserQuestion","knowledgeService","constructor","provider","config","rootRef","navRef","debug","screenMap","knowledgeBase","knowledgeMaxTokens","enableUIControl","registerKnowledgeOnlyTools","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","description","parameters","index","type","required","execute","args","interactives","elements","getWalkConfig","element","find","el","map","e","join","props","onValueChange","value","Promise","resolve","setTimeout","label","error","message","onPress","fiber","fiberNode","return","bubbleDepth","parentProps","memoizedProps","text","onChangeText","screen","params","router","path","startsWith","push","isReady","JSON","parse","undefined","availableRoutes","getRouteNames","stringify","matchedScreen","r","toLowerCase","errMsg","warn","screenPath","findScreenPath","length","nestedParams","buildNestedParams","navigate","success","seconds","Math","min","Number","question","onAskUser","onStatusUpdate","answer","screenshot","captureScreenshot","round","direction","enum","amount","containerIndex","screenName","getCurrentScreenName","containers","targetIndex","container","available","c","componentName","scrollRef","stateNode","scrollToEnd","animated","scrollTo","y","scrollToOffset","offset","PAGE_OFFSET","amountLabel","retrieve","registerAction","action","unregisterAction","state","getRootState","getState","names","collectRouteNames","routeNames","routes","route","Set","targetScreen","some","nestedNames","includes","leafParams","result","i","pathname","segments","split","filter","Boolean","getDeepestScreenName","setUIControlOverride","enabled","uiControlOverride","isUIEnabled","getToolStatusLabel","toolName","moduleName","viewShot","require","captureRef","default","uri","format","quality","width","code","getScreenContext","keys","screens","chains","walkResult","elementsText","availableScreensText","appMapText","screenLines","entry","title","line","chainLines","chain","detectStaleMap","context","substring","staleMapWarned","mapScreens","missing","has","console","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","chatHistory","prompt","recentHistory","slice","msg","role","content","stepIndex","event","reflection","previousGoalEval","memory","plan","output","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","hasKnowledge","systemPrompt","userPrompt","response","generateContent","tokenUsage","onTokenUsage","toolCalls","tc","followUp","followUpResponse","ftc","doneResult","onAfterTask","onBeforeStep","transformScreenContent","contextMessage","reasoning","toolCall","statusLabel","statusDisplay","agentStep","input","onAfterStep","updateRefs","getIsRunning"],"sourceRoot":"../../../src","sources":["core/AgentRuntime.ts"],"mappings":"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","ignoreList":[]}
@@ -63,7 +63,6 @@ Pure text elements without [] are NOT interactive — they are informational con
63
63
  Available tools:
64
64
  - tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
65
65
  - type(index, text): Type text into a text-input element by its index.
66
- - navigate(screen, params): Navigate to a specific screen. params is optional JSON object. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens (menus, chats, orders) require context — reach them by tapping through the UI instead.
67
66
  - scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
68
67
  - wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
69
68
  - done(text, success): Complete task. Text is your final response to the user — keep it concise unless the user explicitly asks for detail.
@@ -103,7 +102,7 @@ If a UI element is hidden (aiIgnore) but a matching custom action exists, use th
103
102
  - Do not guess or auto-fill sensitive data (passwords, payment info, personal details). Always ask the user.
104
103
  - Trying too hard can be harmful. If stuck, call done() with partial results rather than repeating failed actions.
105
104
  - If you do not know how to proceed with the current screen, use ask_user to request specific instructions from the user.
106
- - SAFE NAVIGATION: Only use navigate() for top-level screens like tabs, search, settings, cart, and orders. Detail screens (e.g. a specific chef's menu, a specific chat, order tracking) require context parameters that are only set when you tap through the UI naturally. If navigate() returns an error about missing parameters, use tap actions to reach that screen through the normal app flow.
105
+ - NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters (like item IDs) are passed automatically by the app. Use the Available Screens list and screen descriptions to identify which screen has the feature you need, then find and tap the UI element that leads there.
107
106
  </rules>
108
107
 
109
108
  <task_completion_rules>
@@ -221,7 +220,6 @@ Pure text elements without [] are NOT interactive — they are informational con
221
220
  Available tools:
222
221
  - tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
223
222
  - type(index, text): Type text into a text-input element by its index. ONLY works on text-input elements.
224
- - navigate(screen, params): Navigate to a screen listed in Available Screens. ONLY use screen names from the Available Screens list — section titles, category names, or other visible text are content within a screen, not navigable screens. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens require context — reach them by tapping through the UI instead.
225
223
  - scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
226
224
  - wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
227
225
  - done(text, success): Complete task and respond to the user.${hasKnowledge ? `
@@ -268,7 +266,7 @@ If a UI element is hidden but a matching custom action exists, use the action.
268
266
  - SECURITY & PRIVACY: Do not fill in login/signup forms unless the user provides credentials.
269
267
  - Do NOT ask for confirmation of actions the user explicitly requested. If they said "place my order", just do it.
270
268
  - If the user's intent is ambiguous — it could mean multiple things or lead to different screens — ask the user to clarify before navigating to the wrong place.
271
- - SAFE NAVIGATION: Only use navigate() for top-level screens like tabs, search, settings, cart, and orders. Detail screens (e.g. a specific chef's menu, a specific chat, order tracking) require context parameters that are only set when you tap through the UI naturally. If navigate() returns an error about missing parameters, use tap actions to reach that screen through the normal app flow.
269
+ - NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters are passed automatically by the app. Use the Available Screens list to identify which screen has the feature you need, then tap the UI element that leads there.
272
270
  </rules>
273
271
 
274
272
  <capability>
@@ -1 +1 @@
1
- {"version":3,"names":["buildSystemPrompt","language","hasKnowledge","isArabic","buildVoiceSystemPrompt","userInstructions","prompt","trim","buildKnowledgeOnlyPrompt"],"sourceRoot":"../../../src","sources":["core/systemPrompt.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASA,iBAAiBA,CAACC,QAAgB,EAAEC,YAAY,GAAG,KAAK,EAAU;EAChF,MAAMC,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,OAAO;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAEE,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0GAA0GD,YAAY,GAAG;AACzH,sQAAsQ,GAAG,EAAE;AAC3Q;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+DA,YAAY,GAAG,uDAAuD,GAAG,EAAE,8CAA8CA,YAAY,GAAG,kBAAkB,GAAG,EAAE;AAC9N;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoFA,YAAY,GAAG;AACnG,qJAAqJ,GAAG,EAAE;AAC1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,sBAAsBA,CACpCH,QAAgB,EAChBI,gBAAyB,EACzBH,YAAY,GAAG,KAAK,EACZ;EACR,MAAMC,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,IAAIK,MAAM,GAAG;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+DJ,YAAY,GAAG;AAC9E,2OAA2O,GAAG,EAAE;AAChP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsDA,YAAY,GAAG,uDAAuD,GAAG,EAAE,8CAA8CA,YAAY,GAAG,kBAAkB,GAAG,EAAE;AACrN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiFA,YAAY,GAAG;AAChG,qJAAqJ,GAAG,EAAE;AAC1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAEC,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA,qBAAqB;;EAEnB;EACA,IAAIE,gBAAgB,EAAEE,IAAI,CAAC,CAAC,EAAE;IAC5BD,MAAM,IAAI,2BAA2BD,gBAAgB,CAACE,IAAI,CAAC,CAAC,uBAAuB;EACrF;EAEA,OAAOD,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,wBAAwBA,CACtCP,QAAgB,EAChBC,YAAqB,EACrBG,gBAAyB,EACjB;EACR,MAAMF,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,IAAIK,MAAM,GAAG;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2GAA2GJ,YAAY,GAAG;AAC1H,2OAA2O,GAAG,EAAE;AAChP;AACA;AACA;AACA,kEAAkEA,YAAY,GAAG;AACjF,0IAA0I,GAAG,EAAE;AAC/I;AACA;AACA;AACA;AACA;AACA;AACA,EAAEC,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA,qBAAqB;EAEnB,IAAIE,gBAAgB,EAAEE,IAAI,CAAC,CAAC,EAAE;IAC5BD,MAAM,IAAI,2BAA2BD,gBAAgB,CAACE,IAAI,CAAC,CAAC,uBAAuB;EACrF;EAEA,OAAOD,MAAM;AACf","ignoreList":[]}
1
+ {"version":3,"names":["buildSystemPrompt","language","hasKnowledge","isArabic","buildVoiceSystemPrompt","userInstructions","prompt","trim","buildKnowledgeOnlyPrompt"],"sourceRoot":"../../../src","sources":["core/systemPrompt.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASA,iBAAiBA,CAACC,QAAgB,EAAEC,YAAY,GAAG,KAAK,EAAU;EAChF,MAAMC,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,OAAO;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAEE,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0GAA0GD,YAAY,GAAG;AACzH,sQAAsQ,GAAG,EAAE;AAC3Q;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+DA,YAAY,GAAG,uDAAuD,GAAG,EAAE,8CAA8CA,YAAY,GAAG,kBAAkB,GAAG,EAAE;AAC9N;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoFA,YAAY,GAAG;AACnG,qJAAqJ,GAAG,EAAE;AAC1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,sBAAsBA,CACpCH,QAAgB,EAChBI,gBAAyB,EACzBH,YAAY,GAAG,KAAK,EACZ;EACR,MAAMC,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,IAAIK,MAAM,GAAG;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+DJ,YAAY,GAAG;AAC9E,2OAA2O,GAAG,EAAE;AAChP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsDA,YAAY,GAAG,uDAAuD,GAAG,EAAE,8CAA8CA,YAAY,GAAG,kBAAkB,GAAG,EAAE;AACrN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiFA,YAAY,GAAG;AAChG,qJAAqJ,GAAG,EAAE;AAC1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAEC,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA,qBAAqB;;EAEnB;EACA,IAAIE,gBAAgB,EAAEE,IAAI,CAAC,CAAC,EAAE;IAC5BD,MAAM,IAAI,2BAA2BD,gBAAgB,CAACE,IAAI,CAAC,CAAC,uBAAuB;EACrF;EAEA,OAAOD,MAAM;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,wBAAwBA,CACtCP,QAAgB,EAChBC,YAAqB,EACrBG,gBAAyB,EACjB;EACR,MAAMF,QAAQ,GAAGF,QAAQ,KAAK,IAAI;EAElC,IAAIK,MAAM,GAAG;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2GAA2GJ,YAAY,GAAG;AAC1H,2OAA2O,GAAG,EAAE;AAChP;AACA;AACA;AACA,kEAAkEA,YAAY,GAAG;AACjF,0IAA0I,GAAG,EAAE;AAC/I;AACA;AACA;AACA;AACA;AACA;AACA,EAAEC,QAAQ,GAAG,oDAAoD,GAAG,sDAAsD;AAC1H;AACA,qBAAqB;EAEnB,IAAIE,gBAAgB,EAAEE,IAAI,CAAC,CAAC,EAAE;IAC5BD,MAAM,IAAI,2BAA2BD,gBAAgB,CAACE,IAAI,CAAC,CAAC,uBAAuB;EACrF;EAEA,OAAOD,MAAM;AACf","ignoreList":[]}
@@ -42,14 +42,6 @@ export declare class AgentRuntime {
42
42
  * Example: findScreenPath('Home') → ['HomeTab', 'Home']
43
43
  */
44
44
  private findScreenPath;
45
- /**
46
- * Check if a screen currently exists as an active (instantiated) route
47
- * in the navigation state. Screens in state.routes have been visited
48
- * and retain their params. Screens only in state.routeNames are declared
49
- * but never visited — navigating to them without params will crash.
50
- */
51
- private isScreenInActiveRoutes;
52
- private searchActiveRoutes;
53
45
  /**
54
46
  * Build nested params for React Navigation nested screen navigation.
55
47
  * ['HomeTab', 'Home'] → { screen: 'Home', params }
@@ -1 +1 @@
1
- {"version":3,"file":"AgentRuntime.d.ts","sourceRoot":"","sources":["../../../../src/core/AgentRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,eAAe,EACf,cAAc,EACd,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAMjB,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,OAAO,CAA4C;IAC3D,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,iBAAiB,CAAC,CAAU;gBAGlC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,GAAG;IAuCb,OAAO,CAAC,oBAAoB;IA8U5B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAuClC,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAK9C,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMpC;;;OAGG;IACH,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,iBAAiB;IAkBzB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAwBtB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAU9B,OAAO,CAAC,kBAAkB;IAW1B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IASzB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,oBAAoB;IAarB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS;IAIxD,OAAO,CAAC,WAAW;IAKnB,gFAAgF;IAChF,OAAO,CAAC,kBAAkB;IAyB1B;;;;OAIG;YACW,iBAAiB;IA+B/B;;;;OAIG;IACI,gBAAgB,IAAI,MAAM;IAsEjC,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,qBAAqB;IA6B7B,gFAAgF;IACzE,QAAQ,IAAI,cAAc,EAAE;IAInC,yEAAyE;IAC5D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBlF,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,cAAc,CAAc;IAEpC,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,kBAAkB;IAiGpB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAiS/G,qDAAqD;IACrD,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI;IAK3C,4CAA4C;IAC5C,YAAY,IAAI,OAAO;CAGxB"}
1
+ {"version":3,"file":"AgentRuntime.d.ts","sourceRoot":"","sources":["../../../../src/core/AgentRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EAEX,eAAe,EACf,cAAc,EACd,gBAAgB,EAEjB,MAAM,SAAS,CAAC;AAMjB,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,OAAO,CAA4C;IAC3D,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,iBAAiB,CAAC,CAAU;gBAGlC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,GAAG,EACZ,MAAM,EAAE,GAAG;IAuCb,OAAO,CAAC,oBAAoB;IAmU5B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAuClC,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAK9C,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMpC;;;OAGG;IACH,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,iBAAiB;IAkBzB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAyBtB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IASzB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,oBAAoB;IAarB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS;IAIxD,OAAO,CAAC,WAAW;IAKnB,gFAAgF;IAChF,OAAO,CAAC,kBAAkB;IAyB1B;;;;OAIG;YACW,iBAAiB;IA+B/B;;;;OAIG;IACI,gBAAgB,IAAI,MAAM;IAsEjC,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,qBAAqB;IA6B7B,gFAAgF;IACzE,QAAQ,IAAI,cAAc,EAAE;IAInC,yEAAyE;IAC5D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBlF,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,cAAc,CAAc;IAEpC,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,kBAAkB;IAiGpB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAiS/G,qDAAqD;IACrD,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI;IAK3C,4CAA4C;IAC5C,YAAY,IAAI,OAAO;CAGxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../../../src/core/systemPrompt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,MAAM,CAiLhF;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,CAAC,EAAE,MAAM,EACzB,YAAY,UAAQ,GACnB,MAAM,CA8GR;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,EACrB,gBAAgB,CAAC,EAAE,MAAM,GACxB,MAAM,CAyCR"}
1
+ {"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../../../src/core/systemPrompt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,MAAM,CAgLhF;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,CAAC,EAAE,MAAM,EACzB,YAAY,UAAQ,GACnB,MAAM,CA6GR;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,EACrB,gBAAgB,CAAC,EAAE,MAAM,GACxB,MAAM,CAyCR"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mobileai/react-native",
3
- "version": "0.7.17",
3
+ "version": "0.7.18",
4
4
  "description": "Build autonomous AI agents for React Native and Expo apps. Provides AI-native UI traversal, tool calling, and structured reasoning.",
5
5
  "main": "./lib/module/index.js",
6
6
  "source": "./src/index.ts",
@@ -221,17 +221,6 @@ export class AgentRuntime {
221
221
  }
222
222
  logger.info('AgentRuntime', `🧭 Navigate matched: "${args.screen}" → "${matchedScreen}"`);
223
223
 
224
- // Safe navigation guard: reject paramless navigation to detail screens
225
- // that are not currently in the active route stack (they need params from tap flow)
226
- if (!params) {
227
- const isInActiveStack = this.isScreenInActiveRoutes(matchedScreen);
228
- if (!isInActiveStack) {
229
- const errMsg = `❌ "${matchedScreen}" is a detail screen that requires parameters (e.g. an item ID). Navigate to it by tapping the relevant button in the UI instead of using navigate() directly. Use tap actions to reach detail screens through the normal app flow.`;
230
- logger.warn('AgentRuntime', `🧭 Navigate REJECTED (safe nav): ${errMsg}`);
231
- return errMsg;
232
- }
233
- }
234
-
235
224
  // Find the path to the screen (handles nested navigators)
236
225
  const screenPath = this.findScreenPath(matchedScreen);
237
226
  if (screenPath.length > 1) {
@@ -537,32 +526,6 @@ export class AgentRuntime {
537
526
  }
538
527
  }
539
528
 
540
- /**
541
- * Check if a screen currently exists as an active (instantiated) route
542
- * in the navigation state. Screens in state.routes have been visited
543
- * and retain their params. Screens only in state.routeNames are declared
544
- * but never visited — navigating to them without params will crash.
545
- */
546
- private isScreenInActiveRoutes(screenName: string): boolean {
547
- try {
548
- const state = this.navRef?.getRootState?.() || this.navRef?.getState?.();
549
- if (!state) return false;
550
- return this.searchActiveRoutes(state, screenName);
551
- } catch {
552
- return false;
553
- }
554
- }
555
-
556
- private searchActiveRoutes(state: any, screenName: string): boolean {
557
- if (!state?.routes) return false;
558
- for (const route of state.routes) {
559
- if (route.name === screenName) return true;
560
- if (route.state && this.searchActiveRoutes(route.state, screenName)) {
561
- return true;
562
- }
563
- }
564
- return false;
565
- }
566
529
 
567
530
  /**
568
531
  * Build nested params for React Navigation nested screen navigation.
@@ -62,7 +62,6 @@ Pure text elements without [] are NOT interactive — they are informational con
62
62
  Available tools:
63
63
  - tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
64
64
  - type(index, text): Type text into a text-input element by its index.
65
- - navigate(screen, params): Navigate to a specific screen. params is optional JSON object. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens (menus, chats, orders) require context — reach them by tapping through the UI instead.
66
65
  - scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
67
66
  - wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
68
67
  - done(text, success): Complete task. Text is your final response to the user — keep it concise unless the user explicitly asks for detail.
@@ -102,7 +101,7 @@ If a UI element is hidden (aiIgnore) but a matching custom action exists, use th
102
101
  - Do not guess or auto-fill sensitive data (passwords, payment info, personal details). Always ask the user.
103
102
  - Trying too hard can be harmful. If stuck, call done() with partial results rather than repeating failed actions.
104
103
  - If you do not know how to proceed with the current screen, use ask_user to request specific instructions from the user.
105
- - SAFE NAVIGATION: Only use navigate() for top-level screens like tabs, search, settings, cart, and orders. Detail screens (e.g. a specific chef's menu, a specific chat, order tracking) require context parameters that are only set when you tap through the UI naturally. If navigate() returns an error about missing parameters, use tap actions to reach that screen through the normal app flow.
104
+ - NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters (like item IDs) are passed automatically by the app. Use the Available Screens list and screen descriptions to identify which screen has the feature you need, then find and tap the UI element that leads there.
106
105
  </rules>
107
106
 
108
107
  <task_completion_rules>
@@ -225,7 +224,6 @@ Pure text elements without [] are NOT interactive — they are informational con
225
224
  Available tools:
226
225
  - tap(index): Tap an interactive element by its index. Works universally on buttons, switches, and custom components. For switches, this toggles their state.
227
226
  - type(index, text): Type text into a text-input element by its index. ONLY works on text-input elements.
228
- - navigate(screen, params): Navigate to a screen listed in Available Screens. ONLY use screen names from the Available Screens list — section titles, category names, or other visible text are content within a screen, not navigable screens. IMPORTANT: Only use for top-level screens (tabs, settings, cart). Detail screens require context — reach them by tapping through the UI instead.
229
227
  - scroll(direction, amount, containerIndex): Scroll the current screen to reveal more content (e.g. lazy-loaded lists). direction: 'down' or 'up'. amount: 'page' (default), 'toEnd', or 'toStart'. containerIndex: optional 0-based index if the screen has multiple scrollable areas (default: 0). Use when you need to see items below/above the current viewport.
230
228
  - wait(seconds): Wait for a specified number of seconds before taking the next action. Use this when the screen explicitly shows "Loading...", "Please wait", or loading skeletons, to give the app time to fetch data.
231
229
  - done(text, success): Complete task and respond to the user.${hasKnowledge ? `
@@ -272,7 +270,7 @@ If a UI element is hidden but a matching custom action exists, use the action.
272
270
  - SECURITY & PRIVACY: Do not fill in login/signup forms unless the user provides credentials.
273
271
  - Do NOT ask for confirmation of actions the user explicitly requested. If they said "place my order", just do it.
274
272
  - If the user's intent is ambiguous — it could mean multiple things or lead to different screens — ask the user to clarify before navigating to the wrong place.
275
- - SAFE NAVIGATION: Only use navigate() for top-level screens like tabs, search, settings, cart, and orders. Detail screens (e.g. a specific chef's menu, a specific chat, order tracking) require context parameters that are only set when you tap through the UI naturally. If navigate() returns an error about missing parameters, use tap actions to reach that screen through the normal app flow.
273
+ - NAVIGATION: Always use tap actions to move between screens. Tap tab bar buttons, back buttons, and navigation links in the UI. This ensures all required screen parameters are passed automatically by the app. Use the Available Screens list to identify which screen has the feature you need, then tap the UI element that leads there.
276
274
  </rules>
277
275
 
278
276
  <capability>