[{"data":1,"prerenderedAt":41291},["ShallowReactive",2],{"navigation_docs":3,"-react-native-nested-navigators-and-modals":3497,"-react-native-nested-navigators-and-modals-surround":41286},[4,1707,1912,2366,2547,2673,2880,3002,3052,3109,3143,3269,3346,3360,3423,3440,3493],{"title":5,"icon":6,"path":7,"stem":8,"children":9},"C#","i-devicon-csharp","\u002Fcsharp","01.csharp",[10,13,60,90,120,202,219,253,379,404,457,650,1364,1654,1703],{"title":11,"path":7,"stem":12},"C# та .NET","01.csharp\u002Findex",{"title":14,"icon":15,"path":16,"stem":17,"children":18,"page":59},"Fundamentals","i-lucide-book-open","\u002Fcsharp\u002Ffundamentals","01.csharp\u002F01.fundamentals",[19,23,27,31,35,39,43,47,51,55],{"title":20,"path":21,"stem":22},"Вступ до екосистеми .NET","\u002Fcsharp\u002Ffundamentals\u002Fintroduction-to-ecosystem","01.csharp\u002F01.fundamentals\u002F01.introduction-to-ecosystem",{"title":24,"path":25,"stem":26},"Структура програми на C#","\u002Fcsharp\u002Ffundamentals\u002Fprogram-structure","01.csharp\u002F01.fundamentals\u002F02.program-structure",{"title":28,"path":29,"stem":30},"Змінні та Типи Даних","\u002Fcsharp\u002Ffundamentals\u002Fvariables-data-types","01.csharp\u002F01.fundamentals\u002F03.variables-data-types",{"title":32,"path":33,"stem":34},"Масиви","\u002Fcsharp\u002Ffundamentals\u002Farrays","01.csharp\u002F01.fundamentals\u002F04.arrays",{"title":36,"path":37,"stem":38},"Strings & Text Handling","\u002Fcsharp\u002Ffundamentals\u002Fstrings-text-handling","01.csharp\u002F01.fundamentals\u002F05.strings-text-handling",{"title":40,"path":41,"stem":42},"Дати і Час","\u002Fcsharp\u002Ffundamentals\u002Fdates-time-handling","01.csharp\u002F01.fundamentals\u002F06.dates-time-handling",{"title":44,"path":45,"stem":46},"Потік Керування","\u002Fcsharp\u002Ffundamentals\u002Fcontrol-flow","01.csharp\u002F01.fundamentals\u002F07.control-flow",{"title":48,"path":49,"stem":50},"Методи","\u002Fcsharp\u002Ffundamentals\u002Fmethods","01.csharp\u002F01.fundamentals\u002F08.methods",{"title":52,"path":53,"stem":54},"Основи Відлагодження","\u002Fcsharp\u002Ffundamentals\u002Fdebugging-basics","01.csharp\u002F01.fundamentals\u002F09.debugging-basics",{"title":56,"path":57,"stem":58},"Інтерактивна Консоль (Classic)","\u002Fcsharp\u002Ffundamentals\u002Finteractive-console","01.csharp\u002F01.fundamentals\u002F10.interactive-console",false,{"title":61,"icon":62,"path":63,"stem":64,"children":65,"page":59},"OOP","i-lucide-box","\u002Fcsharp\u002Foop","01.csharp\u002F02.oop",[66,70,74,78,82,86],{"title":67,"path":68,"stem":69},"Package Management (Управління Пакетами)","\u002Fcsharp\u002Foop\u002Fpackage-management","01.csharp\u002F02.oop\u002F01.package-management",{"title":71,"path":72,"stem":73},"Класи та Об'єкти","\u002Fcsharp\u002Foop\u002Fclasses-objects","01.csharp\u002F02.oop\u002F02.classes-objects",{"title":75,"path":76,"stem":77},"Властивості та Поля","\u002Fcsharp\u002Foop\u002Fproperties-fields","01.csharp\u002F02.oop\u002F03.properties-fields",{"title":79,"path":80,"stem":81},"Стовпи ООП","\u002Fcsharp\u002Foop\u002Foop-pillars","01.csharp\u002F02.oop\u002F04.oop-pillars",{"title":83,"path":84,"stem":85},"Advanced Types","\u002Fcsharp\u002Foop\u002Fadvanced-types","01.csharp\u002F02.oop\u002F05.advanced-types",{"title":87,"path":88,"stem":89},"Namespaces (Простори Імен)","\u002Fcsharp\u002Foop\u002Fnamespaces","01.csharp\u002F02.oop\u002F06.namespaces",{"title":91,"icon":92,"path":93,"stem":94,"children":95,"page":59},"Advanced Core","i-lucide-zap","\u002Fcsharp\u002Fadvanced-core","01.csharp\u002F03.advanced-core",[96,100,104,108,112,116],{"title":97,"path":98,"stem":99},"Generics (Узагальнення)","\u002Fcsharp\u002Fadvanced-core\u002Fgenerics","01.csharp\u002F03.advanced-core\u002F01.generics",{"title":101,"path":102,"stem":103},"Делегати, Події та Лямбда-вирази","\u002Fcsharp\u002Fadvanced-core\u002Fdelegates-events-lambdas","01.csharp\u002F03.advanced-core\u002F02.delegates-events-lambdas",{"title":105,"path":106,"stem":107},"Interfaces Deep Dive (Інтерфейси: Поглиблений Розгляд)","\u002Fcsharp\u002Fadvanced-core\u002Finterfaces-deep-dive","01.csharp\u002F03.advanced-core\u002F03.interfaces-deep-dive",{"title":109,"path":110,"stem":111},"Обробка Винятків","\u002Fcsharp\u002Fadvanced-core\u002Fexception-handling","01.csharp\u002F03.advanced-core\u002F04.exception-handling",{"title":113,"path":114,"stem":115},"Pattern Matching","\u002Fcsharp\u002Fadvanced-core\u002Fpattern-matching","01.csharp\u002F03.advanced-core\u002F05.pattern-matching",{"title":117,"path":118,"stem":119},"Додаткові Можливості C#","\u002Fcsharp\u002Fadvanced-core\u002Fadditional-features","01.csharp\u002F03.advanced-core\u002F06.additional-features",{"title":121,"icon":122,"path":123,"stem":124,"children":125,"page":59},"Architecture Best Practices","i-lucide-building-2","\u002Fcsharp\u002Farchitecture-best-practices","01.csharp\u002F04.architecture-best-practices",[126,130,149,153,157,161,165,169],{"title":127,"path":128,"stem":129},"Software Design Principles (Частина 1)","\u002Fcsharp\u002Farchitecture-best-practices\u002Fsoftware-design-principles","01.csharp\u002F04.architecture-best-practices\u002F01.software-design-principles",{"title":131,"icon":132,"path":133,"stem":134,"children":135,"page":59},"Design Patterns","i-lucide-folder","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdesign-patterns","01.csharp\u002F04.architecture-best-practices\u002F02.design-patterns",[136],{"title":137,"icon":132,"path":138,"stem":139,"children":140,"page":59},"Creational","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdesign-patterns\u002Fcreational","01.csharp\u002F04.architecture-best-practices\u002F02.design-patterns\u002Fcreational",[141,145],{"title":142,"path":143,"stem":144},"Singleton (Одинак)","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdesign-patterns\u002Fcreational\u002Fsingleton","01.csharp\u002F04.architecture-best-practices\u002F02.design-patterns\u002Fcreational\u002F01.singleton",{"title":146,"path":147,"stem":148},"Builder (Будівельник)","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdesign-patterns\u002Fcreational\u002Fbuilder","01.csharp\u002F04.architecture-best-practices\u002F02.design-patterns\u002Fcreational\u002F02.builder",{"title":150,"path":151,"stem":152},"Building Professional CLIs","\u002Fcsharp\u002Farchitecture-best-practices\u002Fbuilding-professional-clis","01.csharp\u002F04.architecture-best-practices\u002F03.building-professional-clis",{"title":154,"path":155,"stem":156},"Validation & Flow Control","\u002Fcsharp\u002Farchitecture-best-practices\u002Fvalidation-flow-control","01.csharp\u002F04.architecture-best-practices\u002F04.validation-flow-control",{"title":158,"path":159,"stem":160},"The Modern .NET Host (Microsoft.Extensions)","\u002Fcsharp\u002Farchitecture-best-practices\u002Fmodern-dotnet-host","01.csharp\u002F04.architecture-best-practices\u002F05.modern-dotnet-host",{"title":162,"path":163,"stem":164},"Data Mapper: Repository та DAO патерни (Частина 1)","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdata-mapper-part1","01.csharp\u002F04.architecture-best-practices\u002F06.data-mapper-part1",{"title":166,"path":167,"stem":168},"Data Mapper: Repository та DAO патерни (Частина 2)","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdata-mapper-part2","01.csharp\u002F04.architecture-best-practices\u002F07.data-mapper-part2",{"title":170,"icon":132,"path":171,"stem":172,"children":173,"page":59},"Di Ioc","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc",[174,178,182,186,190,194,198],{"title":175,"path":176,"stem":177},"Проблема залежностей та Інверсія Контролю","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc\u002Fthe-dependency-problem","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc\u002F01.the-dependency-problem",{"title":179,"path":180,"stem":181},"Будуємо власний Service Container","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc\u002Fbuild-your-own-container","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc\u002F02.build-your-own-container",{"title":183,"path":184,"stem":185},"Service Locator: Паттерн та Анти-паттерн","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc\u002Fservice-locator-pattern","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc\u002F03.service-locator-pattern",{"title":187,"path":188,"stem":189},"Паттерни Dependency Injection","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc\u002Fdependency-injection-patterns","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc\u002F04.dependency-injection-patterns",{"title":191,"path":192,"stem":193},"Microsoft DI: IServiceCollection та IServiceProvider","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc\u002Fmicrosoft-di-deep-dive","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc\u002F05.microsoft-di-deep-dive",{"title":195,"path":196,"stem":197},"Service Lifetimes та Scopes","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc\u002Fservice-lifetimes-and-scopes","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc\u002F06.service-lifetimes-and-scopes",{"title":199,"path":200,"stem":201},"DI Анти-паттерни та Найкращі Практики","\u002Fcsharp\u002Farchitecture-best-practices\u002Fdi-ioc\u002Fdi-anti-patterns-and-best-practices","01.csharp\u002F04.architecture-best-practices\u002F08.di-ioc\u002F07.di-anti-patterns-and-best-practices",{"title":203,"icon":132,"path":204,"stem":205,"children":206,"page":59},"Standard Library","\u002Fcsharp\u002Fstandard-library","01.csharp\u002F05.standard-library",[207,211,215],{"title":208,"path":209,"stem":210},"Collections (Колекції)","\u002Fcsharp\u002Fstandard-library\u002Fcollections","01.csharp\u002F05.standard-library\u002F01.collections",{"title":212,"path":213,"stem":214},"High Performance Types (Високопродуктивні Типи)","\u002Fcsharp\u002Fstandard-library\u002Fhigh-performance-types","01.csharp\u002F05.standard-library\u002F02.high-performance-types",{"title":216,"path":217,"stem":218},"LINQ (Language Integrated Query)","\u002Fcsharp\u002Fstandard-library\u002Flinq","01.csharp\u002F05.standard-library\u002F03.linq",{"title":220,"icon":221,"path":222,"stem":223,"children":224,"page":59},"System Internals Concurrency","i-lucide-server","\u002Fcsharp\u002Fsystem-internals-concurrency","01.csharp\u002F06.system-internals-concurrency",[225,229,233,237,241,245,249],{"title":226,"path":227,"stem":228},"Memory Management","\u002Fcsharp\u002Fsystem-internals-concurrency\u002Fmemory-management","01.csharp\u002F06.system-internals-concurrency\u002F01.memory-management",{"title":230,"path":231,"stem":232},"Reflection API: System.Type та Метадані","\u002Fcsharp\u002Fsystem-internals-concurrency\u002Freflection-fundamentals","01.csharp\u002F06.system-internals-concurrency\u002F02.reflection-fundamentals",{"title":234,"path":235,"stem":236},"Attributes та Dynamic Language Runtime","\u002Fcsharp\u002Fsystem-internals-concurrency\u002Fattributes-dynamic","01.csharp\u002F06.system-internals-concurrency\u002F03.attributes-dynamic",{"title":238,"path":239,"stem":240},"Expression Trees: Швидка Альтернатива Рефлексії","\u002Fcsharp\u002Fsystem-internals-concurrency\u002Fexpression-trees-compiled","01.csharp\u002F06.system-internals-concurrency\u002F04.expression-trees-compiled",{"title":242,"path":243,"stem":244},"Source Generators: Compile-Time Code Generation","\u002Fcsharp\u002Fsystem-internals-concurrency\u002Fsource-generators","01.csharp\u002F06.system-internals-concurrency\u002F05.source-generators",{"title":246,"path":247,"stem":248},"Multithreading Fundamentals","\u002Fcsharp\u002Fsystem-internals-concurrency\u002Fmultithreading-fundamentals","01.csharp\u002F06.system-internals-concurrency\u002F06.multithreading-fundamentals",{"title":250,"path":251,"stem":252},"Synchronization Primitives","\u002Fcsharp\u002Fsystem-internals-concurrency\u002Fsynchronization-primitives","01.csharp\u002F06.system-internals-concurrency\u002F07.synchronization-primitives",{"title":254,"icon":255,"path":256,"stem":257,"children":258,"page":59},"System Programming Windows","i-lucide-cpu","\u002Fcsharp\u002Fsystem-programming-windows","01.csharp\u002F07.system-programming-windows",[259,263,267,271,275,279,283,287,291,295,299,303,307,311,315,319,323,327,331,335,339,343,347,351,355,359,363,367,371,375],{"title":260,"path":261,"stem":262},"Як Працює Операційна Система","\u002Fcsharp\u002Fsystem-programming-windows\u002Fhow-os-works","01.csharp\u002F07.system-programming-windows\u002F01.how-os-works",{"title":264,"path":265,"stem":266},"Процеси в .NET — API та Запуск","\u002Fcsharp\u002Fsystem-programming-windows\u002Fprocesses-in-dotnet","01.csharp\u002F07.system-programming-windows\u002F02.processes-in-dotnet",{"title":268,"path":269,"stem":270},"Процеси в .NET — IPC та Міжпроцесна Комунікація","\u002Fcsharp\u002Fsystem-programming-windows\u002F02a.processes-ipc","01.csharp\u002F07.system-programming-windows\u002F02a.processes-ipc",{"title":272,"path":273,"stem":274},"Application Domains та Збірки — AppDomain і AssemblyLoadContext","\u002Fcsharp\u002Fsystem-programming-windows\u002Fappdomains-assemblies","01.csharp\u002F07.system-programming-windows\u002F03.appdomains-assemblies",{"title":276,"path":277,"stem":278},"Application Domains та Збірки — Plug-in Система з Hot-Reload","\u002Fcsharp\u002Fsystem-programming-windows\u002F03a.appdomains-plugin-system","01.csharp\u002F07.system-programming-windows\u002F03a.appdomains-plugin-system",{"title":280,"path":281,"stem":282},"Потоки — Основи та API Thread","\u002Fcsharp\u002Fsystem-programming-windows\u002Fthread-fundamentals","01.csharp\u002F07.system-programming-windows\u002F04.thread-fundamentals",{"title":284,"path":285,"stem":286},"Потоки — Lifecycle, Пріоритети та Безпечне Завершення","\u002Fcsharp\u002Fsystem-programming-windows\u002F04a.thread-lifecycle-priorities","01.csharp\u002F07.system-programming-windows\u002F04a.thread-lifecycle-priorities",{"title":288,"path":289,"stem":290},"Проблеми Спільного Стану — Race Condition та Data Race","\u002Fcsharp\u002Fsystem-programming-windows\u002Fshared-state-problems","01.csharp\u002F07.system-programming-windows\u002F05.shared-state-problems",{"title":292,"path":293,"stem":294},"Проблеми Спільного Стану — Memory Model та volatile","\u002Fcsharp\u002Fsystem-programming-windows\u002F05a.shared-state-memory-model","01.csharp\u002F07.system-programming-windows\u002F05a.shared-state-memory-model",{"title":296,"path":297,"stem":298},"Синхронізація — Monitor, lock та еволюція примітивів","\u002Fcsharp\u002Fsystem-programming-windows\u002Fsynchronization-fundamentals","01.csharp\u002F07.system-programming-windows\u002F06.synchronization-fundamentals",{"title":300,"path":301,"stem":302},"Синхронізація — Наскрізний Приклад та Deadlock Detection","\u002Fcsharp\u002Fsystem-programming-windows\u002F06a.synchronization-walkthrough","01.csharp\u002F07.system-programming-windows\u002F06a.synchronization-walkthrough",{"title":304,"path":305,"stem":306},"Синхронізація — Mutex, Semaphore та Event-Based Primitives","\u002Fcsharp\u002Fsystem-programming-windows\u002Fsynchronization-advanced","01.csharp\u002F07.system-programming-windows\u002F07.synchronization-advanced",{"title":308,"path":309,"stem":310},"Синхронізація — Interlocked, Volatile та Lock-Free Структури","\u002Fcsharp\u002Fsystem-programming-windows\u002F07a.synchronization-advanced-walkthrough","01.csharp\u002F07.system-programming-windows\u002F07a.synchronization-advanced-walkthrough",{"title":312,"path":313,"stem":314},"Interlocked, CAS та Lock-Free Структури","\u002Fcsharp\u002Fsystem-programming-windows\u002Finterlocked-cas-lockfree","01.csharp\u002F07.system-programming-windows\u002F08.interlocked-cas-lockfree",{"title":316,"path":317,"stem":318},"Volatile, Memory Model та Spinning","\u002Fcsharp\u002Fsystem-programming-windows\u002F08a.volatile-memory-model","01.csharp\u002F07.system-programming-windows\u002F08a.volatile-memory-model",{"title":320,"path":321,"stem":322},"ThreadPool — Пул Потоків для Ефективного Виконання","\u002Fcsharp\u002Fsystem-programming-windows\u002Fthread-pool","01.csharp\u002F07.system-programming-windows\u002F09.thread-pool",{"title":324,"path":325,"stem":326},"ThreadPool — Просунуті Сценарії та Внутрішня Будова","\u002Fcsharp\u002Fsystem-programming-windows\u002F09a.thread-pool-advanced","01.csharp\u002F07.system-programming-windows\u002F09a.thread-pool-advanced",{"title":328,"path":329,"stem":330},"Concurrent та Immutable Collections","\u002Fcsharp\u002Fsystem-programming-windows\u002Fconcurrent-collections","01.csharp\u002F07.system-programming-windows\u002F10.concurrent-collections",{"title":332,"path":333,"stem":334},"TPL, Task та Композиція — Від Thread до Task","\u002Fcsharp\u002Fsystem-programming-windows\u002Ftpl-parallel-plinq","01.csharp\u002F07.system-programming-windows\u002F11.tpl-parallel-plinq",{"title":336,"path":337,"stem":338},"Parallel Class та PLINQ — Data Parallelism","\u002Fcsharp\u002Fsystem-programming-windows\u002F11a.tpl-parallel-plinq-advanced","01.csharp\u002F07.system-programming-windows\u002F11a.tpl-parallel-plinq-advanced",{"title":340,"path":341,"stem":342},"Async\u002FAwait — Фундамент Асинхронного Програмування","\u002Fcsharp\u002Fsystem-programming-windows\u002Fasync-fundamentals","01.csharp\u002F07.system-programming-windows\u002F12.async-fundamentals",{"title":344,"path":345,"stem":346},"SynchronizationContext та ConfigureAwait — Контекст Виконання","\u002Fcsharp\u002Fsystem-programming-windows\u002Fasync-context-configureawait","01.csharp\u002F07.system-programming-windows\u002F13.async-context-configureawait",{"title":348,"path":349,"stem":350},"Async — Просунуті Паттерни","\u002Fcsharp\u002Fsystem-programming-windows\u002Fasync-advanced","01.csharp\u002F07.system-programming-windows\u002F14.async-advanced",{"title":352,"path":353,"stem":354},"System.Threading.Channels — Async Producer-Consumer","\u002Fcsharp\u002Fsystem-programming-windows\u002Fchannels","01.csharp\u002F07.system-programming-windows\u002F15.channels",{"title":356,"path":357,"stem":358},"Асинхронна Синхронізація","\u002Fcsharp\u002Fsystem-programming-windows\u002Fasync-synchronization","01.csharp\u002F07.system-programming-windows\u002F16.async-synchronization",{"title":360,"path":361,"stem":362},"Unsafe Code та Вказівники","\u002Fcsharp\u002Fsystem-programming-windows\u002Funsafe-code","01.csharp\u002F07.system-programming-windows\u002F17.unsafe-code",{"title":364,"path":365,"stem":366},"P\u002FInvoke та Windows API — Міст між .NET та Native Code","\u002Fcsharp\u002Fsystem-programming-windows\u002Fpinvoke-winapi","01.csharp\u002F07.system-programming-windows\u002F18.pinvoke-winapi",{"title":368,"path":369,"stem":370},"Реєстр Windows — Центральна База Конфігурації Системи","\u002Fcsharp\u002Fsystem-programming-windows\u002Fwindows-registry","01.csharp\u002F07.system-programming-windows\u002F19.windows-registry",{"title":372,"path":373,"stem":374},"Windows Hooks, Hotkeys та Services — Глибока Інтеграція з ОС","\u002Fcsharp\u002Fsystem-programming-windows\u002Fwindows-hooks-services","01.csharp\u002F07.system-programming-windows\u002F20.windows-hooks-services",{"title":376,"path":377,"stem":378},"Системне Програмування C# (Windows) — 07.system-programming-windows","\u002Fcsharp\u002Fsystem-programming-windows\u002Fimplementation_plan","01.csharp\u002F07.system-programming-windows\u002Fimplementation_plan",{"title":380,"icon":132,"path":381,"stem":382,"children":383,"page":59},"Io","\u002Fcsharp\u002Fio","01.csharp\u002F08.io",[384,388,392,396,400],{"title":385,"path":386,"stem":387},"8.1.1. Основи роботи з файловою системою","\u002Fcsharp\u002Fio\u002Ffile-system-basics","01.csharp\u002F08.io\u002F01.file-system-basics",{"title":389,"path":390,"stem":391},"8.1.2. Потоки (Streams) та Серіалізація Даних","\u002Fcsharp\u002Fio\u002Fstreams-serialization","01.csharp\u002F08.io\u002F02.streams-serialization",{"title":393,"path":394,"stem":395},"8.2.1. JSON Serialization з System.Text.Json","\u002Fcsharp\u002Fio\u002Fjson-serialization","01.csharp\u002F08.io\u002F03.json-serialization",{"title":397,"path":398,"stem":399},"8.2.2. XML Serialization та LINQ to XML","\u002Fcsharp\u002Fio\u002Fxml-serialization","01.csharp\u002F08.io\u002F04.xml-serialization",{"title":401,"path":402,"stem":403},"8.2.3. Binary Serialization: MessagePack та Protocol Buffers","\u002Fcsharp\u002Fio\u002Fbinary-serialization","01.csharp\u002F08.io\u002F05.binary-serialization",{"title":405,"icon":132,"path":406,"stem":407,"children":408,"page":59},"Ado Net","\u002Fcsharp\u002Fado-net","01.csharp\u002F09.ado-net",[409,413,417,421,425,429,433,437,441,445,449,453],{"title":410,"path":411,"stem":412},"9.1. Введення в ADO.NET","\u002Fcsharp\u002Fado-net\u002Fintroduction-to-adonet","01.csharp\u002F09.ado-net\u002F01.introduction-to-adonet",{"title":414,"path":415,"stem":416},"9.2. Клас DbConnection — з'єднання з базою даних","\u002Fcsharp\u002Fado-net\u002Fconnection","01.csharp\u002F09.ado-net\u002F02.connection",{"title":418,"path":419,"stem":420},"9.3. Клас DbCommand — виконання SQL-запитів","\u002Fcsharp\u002Fado-net\u002Fcommand-and-queries","01.csharp\u002F09.ado-net\u002F03.command-and-queries",{"title":422,"path":423,"stem":424},"9.4. Клас DbDataReader — ефективне читання даних","\u002Fcsharp\u002Fado-net\u002Fdatareader","01.csharp\u002F09.ado-net\u002F04.datareader",{"title":426,"path":427,"stem":428},"9.5. Параметризовані запити та захист від SQL Injection","\u002Fcsharp\u002Fado-net\u002Fparameters-and-sql-injection","01.csharp\u002F09.ado-net\u002F05.parameters-and-sql-injection",{"title":430,"path":431,"stem":432},"9.6. Транзакції в ADO.NET","\u002Fcsharp\u002Fado-net\u002Ftransactions","01.csharp\u002F09.ado-net\u002F06.transactions",{"title":434,"path":435,"stem":436},"9.7. DbProviderFactory — провайдер-незалежний код","\u002Fcsharp\u002Fado-net\u002Fprovider-factory","01.csharp\u002F09.ado-net\u002F07.provider-factory",{"title":438,"path":439,"stem":440},"9.8. Асинхронний доступ до даних","\u002Fcsharp\u002Fado-net\u002Fasync-data-access","01.csharp\u002F09.ado-net\u002F08.async-data-access",{"title":442,"path":443,"stem":444},"9.9. Від'єднаний режим: DataSet, DataTable, DataRow","\u002Fcsharp\u002Fado-net\u002Fdisconnected-mode-dataset","01.csharp\u002F09.ado-net\u002F09.disconnected-mode-dataset",{"title":446,"path":447,"stem":448},"9.10. DataAdapter — міст між DataSet та базою даних","\u002Fcsharp\u002Fado-net\u002Fdata-adapter","01.csharp\u002F09.ado-net\u002F10.data-adapter",{"title":450,"path":451,"stem":452},"9.11. Data Mapper та Repository: Архітектура доступу до даних","\u002Fcsharp\u002Fado-net\u002Fdata-mapper-repository","01.csharp\u002F09.ado-net\u002F11.data-mapper-repository",{"title":454,"path":455,"stem":456},"9.12. Identity Map, Unit of Work та Specification Pattern","\u002Fcsharp\u002Fado-net\u002Fadvanced-patterns","01.csharp\u002F09.ado-net\u002F12.advanced-patterns",{"title":458,"icon":255,"path":459,"stem":460,"children":461,"page":59},"Ef Core","\u002Fcsharp\u002Fef-core","01.csharp\u002F10.ef-core",[462,466,470,474,478,482,486,490,494,498,502,506,510,514,518,522,526,532,538,542,546,550,554,558,562,566,570,574,578,582,586,590,594,598,602,606,610,614,618,622,626,630,634,638,642,646],{"title":463,"path":464,"stem":465},"Що таке ORM? Від SQL до об'єктів","\u002Fcsharp\u002Fef-core\u002Fwhat-is-orm","01.csharp\u002F10.ef-core\u002F01.what-is-orm",{"title":467,"path":468,"stem":469},"Перший проєкт — від нуля до CRUD","\u002Fcsharp\u002Fef-core\u002Ffirst-project","01.csharp\u002F10.ef-core\u002F02.first-project",{"title":471,"path":472,"stem":473},"DbContext — Серце EF Core","\u002Fcsharp\u002Fef-core\u002Fdbcontext-deep-dive","01.csharp\u002F10.ef-core\u002F03.dbcontext-deep-dive",{"title":475,"path":476,"stem":477},"Провайдери баз даних — Архітектура та Вибір СУБД","\u002Fcsharp\u002Fef-core\u002Fdatabase-providers","01.csharp\u002F10.ef-core\u002F04.database-providers",{"title":479,"path":480,"stem":481},"Конвенції EF Core — Магія без конфігурації","\u002Fcsharp\u002Fef-core\u002Fconventions","01.csharp\u002F10.ef-core\u002F05.conventions",{"title":483,"path":484,"stem":485},"Fluent API та Data Annotations — Явна конфігурація моделі","\u002Fcsharp\u002Fef-core\u002Ffluent-api-vs-annotations","01.csharp\u002F10.ef-core\u002F06.fluent-api-vs-annotations",{"title":487,"path":488,"stem":489},"Зв'язки — One-to-One та One-to-Many","\u002Fcsharp\u002Fef-core\u002Frelationships-basics","01.csharp\u002F10.ef-core\u002F07.relationships-basics",{"title":491,"path":492,"stem":493},"Зв'язки Advanced — Many-to-Many та Складні Сценарії","\u002Fcsharp\u002Fef-core\u002Frelationships-advanced","01.csharp\u002F10.ef-core\u002F08.relationships-advanced",{"title":495,"path":496,"stem":497},"Властивості — Типи, Конвертери, Компаратори (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fproperty-configuration-part1","01.csharp\u002F10.ef-core\u002F09.property-configuration-part1",{"title":499,"path":500,"stem":501},"Властивості — Value Comparers, Generators, Shadow Properties (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fproperty-configuration-part2","01.csharp\u002F10.ef-core\u002F09.property-configuration-part2",{"title":503,"path":504,"stem":505},"Складні типи — Owned Types та Complex Types (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fcomplex-types-owned-part1","01.csharp\u002F10.ef-core\u002F10.complex-types-owned-part1",{"title":507,"path":508,"stem":509},"Складні типи — Complex Types, Keyless Entities, Порівняння (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fcomplex-types-owned-part2","01.csharp\u002F10.ef-core\u002F10.complex-types-owned-part2",{"title":511,"path":512,"stem":513},"JSON Columns — Складні дані у JSON (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fjson-columns-part1","01.csharp\u002F10.ef-core\u002F11.json-columns-part1",{"title":515,"path":516,"stem":517},"JSON Columns — Value Comparers, Індекси, Провайдери (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fjson-columns-part2","01.csharp\u002F10.ef-core\u002F11.json-columns-part2",{"title":519,"path":520,"stem":521},"Успадкування — Абстрактні класи та TPH (Частина 1)","\u002Fcsharp\u002Fef-core\u002Finheritance-part1","01.csharp\u002F10.ef-core\u002F12.inheritance-part1",{"title":523,"path":524,"stem":525},"Успадкування — TPT, TPC та Порівняння Стратегій (Частина 2)","\u002Fcsharp\u002Fef-core\u002Finheritance-part2","01.csharp\u002F10.ef-core\u002F12.inheritance-part2",{"title":527,"path":528,"stem":529,"children":530},"Індекси, Обмеження та Схема (Частина 1)","\u002Fcsharp\u002Fef-core\u002Findexes-constraints-part1","01.csharp\u002F10.ef-core\u002F13.indexes-constraints-part1",[531],{"title":527,"path":528,"stem":529},{"title":533,"path":534,"stem":535,"children":536},"Індекси, Обмеження та Схема (Частина 2)","\u002Fcsharp\u002Fef-core\u002Findexes-constraints-part2","01.csharp\u002F10.ef-core\u002F13.indexes-constraints-part2",[537],{"title":533,"path":534,"stem":535},{"title":539,"path":540,"stem":541},"Seed Data — Початкові Дані (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fseeding-part1","01.csharp\u002F10.ef-core\u002F14.seeding-part1",{"title":543,"path":544,"stem":545},"Seed Data — SQL-скрипти, Bogus та Стратегії (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fseeding-part2","01.csharp\u002F10.ef-core\u002F14.seeding-part2",{"title":547,"path":548,"stem":549},"Global Query Filters — Глобальні Фільтри (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fglobal-query-filters-part1","01.csharp\u002F10.ef-core\u002F15.global-query-filters-part1",{"title":551,"path":552,"stem":553},"Global Query Filters — Підводні камені та Інтеграція (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fglobal-query-filters-part2","01.csharp\u002F10.ef-core\u002F15.global-query-filters-part2",{"title":555,"path":556,"stem":557},"LINQ-запити в EF Core (Частина 1)","\u002Fcsharp\u002Fef-core\u002Flinq-queries-part1","01.csharp\u002F10.ef-core\u002F16.linq-queries-part1",{"title":559,"path":560,"stem":561},"LINQ-запити в EF Core (Частина 2)","\u002Fcsharp\u002Fef-core\u002Flinq-queries-part2","01.csharp\u002F10.ef-core\u002F16.linq-queries-part2",{"title":563,"path":564,"stem":565},"Завантаження Пов'язаних Даних (Частина 1)","\u002Fcsharp\u002Fef-core\u002Floading-related-data-part1","01.csharp\u002F10.ef-core\u002F17.loading-related-data-part1",{"title":567,"path":568,"stem":569},"Завантаження Пов'язаних Даних (Частина 2)","\u002Fcsharp\u002Fef-core\u002Floading-related-data-part2","01.csharp\u002F10.ef-core\u002F17.loading-related-data-part2",{"title":571,"path":572,"stem":573},"Raw SQL, Views та Stored Procedures (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fraw-sql-part1","01.csharp\u002F10.ef-core\u002F18.raw-sql-part1",{"title":575,"path":576,"stem":577},"Raw SQL — Stored Procedures, DbFunction та Bulk Operations (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fraw-sql-part2","01.csharp\u002F10.ef-core\u002F18.raw-sql-part2",{"title":579,"path":580,"stem":581},"Продвинуті Запити — Compiled Queries, Bulk та Оптимізація (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fadvanced-queries-part1","01.csharp\u002F10.ef-core\u002F19.advanced-queries-part1",{"title":583,"path":584,"stem":585},"Продвинуті Запити — Query Tags, Bulk та Interceptors (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fadvanced-queries-part2","01.csharp\u002F10.ef-core\u002F19.advanced-queries-part2",{"title":587,"path":588,"stem":589},"Change Tracker — Відстеження Змін (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fchange-tracking-part1","01.csharp\u002F10.ef-core\u002F20.change-tracking-part1",{"title":591,"path":592,"stem":593},"Change Tracker — Графи Об'єктів та Disconnected (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fchange-tracking-part2","01.csharp\u002F10.ef-core\u002F20.change-tracking-part2",{"title":595,"path":596,"stem":597},"Збереження Даних та Транзакції (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fsaving-data-part1","01.csharp\u002F10.ef-core\u002F21.saving-data-part1",{"title":599,"path":600,"stem":601},"Збереження Даних — Concurrency та Outbox (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fsaving-data-part2","01.csharp\u002F10.ef-core\u002F21.saving-data-part2",{"title":603,"path":604,"stem":605},"Конкурентність та Блокування (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fconcurrency-part1","01.csharp\u002F10.ef-core\u002F22.concurrency-part1",{"title":607,"path":608,"stem":609},"Конкурентність — Дедлоки та Queue Processing (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fconcurrency-part2","01.csharp\u002F10.ef-core\u002F22.concurrency-part2",{"title":611,"path":612,"stem":613},"Міграції в EF Core — Основи (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fmigrations-basics-part1","01.csharp\u002F10.ef-core\u002F23.migrations-basics-part1",{"title":615,"path":616,"stem":617},"Міграції в EF Core — Основи (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fmigrations-basics-part2","01.csharp\u002F10.ef-core\u002F23.migrations-basics-part2",{"title":619,"path":620,"stem":621},"Міграції — Просунуті Сценарії (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fmigrations-advanced-part1","01.csharp\u002F10.ef-core\u002F24.migrations-advanced-part1",{"title":623,"path":624,"stem":625},"Міграції — Просунуті Сценарії (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fmigrations-advanced-part2","01.csharp\u002F10.ef-core\u002F24.migrations-advanced-part2",{"title":627,"path":628,"stem":629},"Управління Схемою та Database-First (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fschema-management-part1","01.csharp\u002F10.ef-core\u002F25.schema-management-part1",{"title":631,"path":632,"stem":633},"Управління Схемою та Database-First (Частина 2)","\u002Fcsharp\u002Fef-core\u002Fschema-management-part2","01.csharp\u002F10.ef-core\u002F25.schema-management-part2",{"title":635,"path":636,"stem":637},"Продуктивність EF Core — Основи (Частина 1)","\u002Fcsharp\u002Fef-core\u002Fperformance-fundamentals-part1","01.csharp\u002F10.ef-core\u002F26.performance-fundamentals-part1",{"title":639,"path":640,"stem":641},"Interceptors в EF Core (Частина 1)","\u002Fcsharp\u002Fef-core\u002Finterceptors-part1","01.csharp\u002F10.ef-core\u002F29.interceptors-part1",{"title":643,"path":644,"stem":645},"Interceptors в EF Core — Connection, Transaction та Materialization (Частина 2)","\u002Fcsharp\u002Fef-core\u002Finterceptors-part2","01.csharp\u002F10.ef-core\u002F29.interceptors-part2",{"title":647,"path":648,"stem":649},"План вивчення Entity Framework Core — Повний курс","\u002Fcsharp\u002Fef-core\u002Fimplementation_plan","01.csharp\u002F10.ef-core\u002Fimplementation_plan",{"title":651,"icon":652,"path":653,"stem":654,"children":655,"page":59},"ASP.NET","i-devicon-dotnetcore","\u002Fcsharp\u002Faspnet","01.csharp\u002F11.aspnet",[656,730,791,869,927,941,967,1057,1111,1182,1212,1289,1346],{"title":657,"icon":658,"path":659,"stem":660,"children":661,"page":59},"Minimal API","i-lucide-network","\u002Fcsharp\u002Faspnet\u002Fminimal-api","01.csharp\u002F11.aspnet\u002F01.minimal-api",[662,666,670,674,678,682,686,690,694,698,702,706,710,714,718,722,726],{"title":663,"path":664,"stem":665},"Вступ до ASP.NET та еволюція фреймворку","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fintroduction","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F01.introduction",{"title":667,"path":668,"stem":669},"Перший додаток на ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Ffirst-application","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F02.first-application",{"title":671,"path":672,"stem":673},"WebApplication, Builder та Dependency Injection","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fwebapplication-builder","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F03.webapplication-builder",{"title":675,"path":676,"stem":677},"Конвеєр запитів та Middleware","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Frequest-pipeline-middleware","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F04.request-pipeline-middleware",{"title":679,"path":680,"stem":681},"Маршрутизація в ASP.NET Core: Основи","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Frouting-basics","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F05.routing-basics",{"title":683,"path":684,"stem":685},"Маршрутизація в ASP.NET Core: Розширені можливості","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Frouting-advanced","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F06.routing-advanced",{"title":687,"path":688,"stem":689},"Статичні файли в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fstatic-files","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F07.static-files",{"title":691,"path":692,"stem":693},"Статичні Активи: MapStaticAssets (ASP.NET Core 9.0)","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fstatic-assets","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F08.static-assets",{"title":695,"path":696,"stem":697},"Конфігурація в ASP.NET Core: Основи","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fconfiguration-fundamentals","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F09.configuration-fundamentals",{"title":699,"path":700,"stem":701},"Конфігурація: Паттерн Options","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fconfiguration-options","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F10.configuration-options",{"title":703,"path":704,"stem":705},"Логування в ASP.NET Core: Основи","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Flogging-basics","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F11.logging-basics",{"title":707,"path":708,"stem":709},"Логування: Serilog та Middleware","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Flogging-advanced","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F12.logging-advanced",{"title":711,"path":712,"stem":713},"Управління станом: HttpContext.Items та Cookies","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fstate-management","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F13.state-management",{"title":715,"path":716,"stem":717},"Стан сесії: Sessions","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fsession-state","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F14.session-state",{"title":719,"path":720,"stem":721},"Структура проєкту: від хаосу до архітектури","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fproject-structure","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F15.project-structure",{"title":723,"path":724,"stem":725},"Scalar у Minimal API: повний проєкт і Fluent OpenAPI","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fscalar-openapi-fluent","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F16.scalar-openapi-fluent",{"title":727,"path":728,"stem":729},"Swagger \u002F Swashbuckle у Minimal API: окремий класичний шлях","\u002Fcsharp\u002Faspnet\u002Fminimal-api\u002Fswagger-swashbuckle","01.csharp\u002F11.aspnet\u002F01.minimal-api\u002F17.swagger-swashbuckle",{"title":731,"icon":658,"path":732,"stem":733,"children":734,"page":59},"API","\u002Fcsharp\u002Faspnet\u002Fapi","01.csharp\u002F11.aspnet\u002F02.api",[735,739,743,747,751,755,759,763,767,771,775,779,783,787],{"title":736,"path":737,"stem":738},"Що таке API. Клієнт-серверна архітектура","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fwhat-is-api","01.csharp\u002F11.aspnet\u002F02.api\u002F01.what-is-api",{"title":740,"path":741,"stem":742},"Формати даних: JSON, XML, TOML та бінарні формати","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fdata-formats","01.csharp\u002F11.aspnet\u002F02.api\u002F02.data-formats",{"title":744,"path":745,"stem":746},"Парадигми API та концепція REST","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fapi-paradigms-rest","01.csharp\u002F11.aspnet\u002F02.api\u002F03.api-paradigms-rest",{"title":748,"path":749,"stem":750},"HTTP-методи, статус-коди та заголовки","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fhttp-methods-status-codes","01.csharp\u002F11.aspnet\u002F02.api\u002F04.http-methods-status-codes",{"title":752,"path":753,"stem":754},"Організація HTTP API за принципами REST","\u002Fcsharp\u002Faspnet\u002Fapi\u002Frest-organizing","01.csharp\u002F11.aspnet\u002F02.api\u002F05.rest-organizing",{"title":756,"path":757,"stem":758},"Номенклатура URL та CRUD-операції","\u002Fcsharp\u002Faspnet\u002Fapi\u002Furl-nomenclature-crud","01.csharp\u002F11.aspnet\u002F02.api\u002F06.url-nomenclature-crud",{"title":760,"path":761,"stem":762},"Правила дизайну: іменування та стандарти","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fapi-design-naming","01.csharp\u002F11.aspnet\u002F02.api\u002F07.api-design-naming",{"title":764,"path":765,"stem":766},"Валідація, ліміти та обробка помилок","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fapi-design-validation","01.csharp\u002F11.aspnet\u002F02.api\u002F08.api-design-validation",{"title":768,"path":769,"stem":770},"Обробка помилок у Minimal API","\u002Fcsharp\u002Faspnet\u002Fapi\u002Ferror-handling-http","01.csharp\u002F11.aspnet\u002F02.api\u002F09.error-handling-http",{"title":772,"path":773,"stem":774},"Ідемпотентність та синхронізація стану","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fidempotency-sync","01.csharp\u002F11.aspnet\u002F02.api\u002F10.idempotency-sync",{"title":776,"path":777,"stem":778},"Пагінація та організація списків","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fpagination-lists","01.csharp\u002F11.aspnet\u002F02.api\u002F11.pagination-lists",{"title":780,"path":781,"stem":782},"Безпека API, кешування та інтернаціоналізація","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fsecurity-auth","01.csharp\u002F11.aspnet\u002F02.api\u002F12.security-auth",{"title":784,"path":785,"stem":786},"Процес проєктування API та документування","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fapi-design-process","01.csharp\u002F11.aspnet\u002F02.api\u002F13.api-design-process",{"title":788,"path":789,"stem":790},"OpenAPI: контракт, специфікація та документація API","\u002Fcsharp\u002Faspnet\u002Fapi\u002Fopenapi","01.csharp\u002F11.aspnet\u002F02.api\u002F14.openapi",{"title":792,"icon":793,"path":794,"stem":795,"children":796,"page":59},"Auth","i-lucide-shield-check","\u002Fcsharp\u002Faspnet\u002Fauth","01.csharp\u002F11.aspnet\u002F03.auth",[797,801,805,809,813,817,821,825,829,833,837,841,845,849,853,857,861,865],{"title":798,"path":799,"stem":800},"Основи аутентифікації та авторизації","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fauth-fundamentals","01.csharp\u002F11.aspnet\u002F03.auth\u002F01.auth-fundamentals",{"title":802,"path":803,"stem":804},"JWT-аутентифікація","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fjwt-authentication","01.csharp\u002F11.aspnet\u002F03.auth\u002F02.jwt-authentication",{"title":806,"path":807,"stem":808},"Авторизація: ролі, політики та resource-based доступ","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fauthorization-policies","01.csharp\u002F11.aspnet\u002F03.auth\u002F03.authorization-policies",{"title":810,"path":811,"stem":812},"Cookie-аутентифікація та ASP.NET Core Identity","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fcookie-auth-identity","01.csharp\u002F11.aspnet\u002F03.auth\u002F04.cookie-auth-identity",{"title":814,"path":815,"stem":816},"JWT + Refresh Tokens (HttpOnly Cookie)","\u002Fcsharp\u002Faspnet\u002Fauth\u002F04b.identity-auth-jwt","01.csharp\u002F11.aspnet\u002F03.auth\u002F04b.identity-auth-jwt",{"title":818,"path":819,"stem":820},"Identity: Підтвердження Email та Скидання Пароля","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fidentity-email-confirmation","01.csharp\u002F11.aspnet\u002F03.auth\u002F05.identity-email-confirmation",{"title":822,"path":823,"stem":824},"Identity: Двофакторна Аутентифікація (2FA)","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fidentity-two-factor","01.csharp\u002F11.aspnet\u002F03.auth\u002F06.identity-two-factor",{"title":826,"path":827,"stem":828},"Identity: Внутрішня Архітектура та Кастомізація","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fidentity-internals","01.csharp\u002F11.aspnet\u002F03.auth\u002F07.identity-internals",{"title":830,"path":831,"stem":832},"OAuth 2.0 та зовнішні провайдери","\u002Fcsharp\u002Faspnet\u002Fauth\u002Foauth-external-providers","01.csharp\u002F11.aspnet\u002F03.auth\u002F08.oauth-external-providers",{"title":834,"path":835,"stem":836},"Безпека на практиці: CORS, HTTPS та захист від атак","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fsecurity-hardening","01.csharp\u002F11.aspnet\u002F03.auth\u002F09.security-hardening",{"title":838,"path":839,"stem":840},"Теорія OAuth 2.0: Поняття, Аналогії та Флоу","\u002Fcsharp\u002Faspnet\u002Fauth\u002Foauth-theory","01.csharp\u002F11.aspnet\u002F03.auth\u002F10.oauth-theory",{"title":842,"path":843,"stem":844},"OIDC, OAuth 2.0 та Keycloak в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fauth\u002Foidc-keycloak","01.csharp\u002F11.aspnet\u002F03.auth\u002F10.oidc-keycloak",{"title":846,"path":847,"stem":848},"API Keys аутентифікація в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fapi-keys","01.csharp\u002F11.aspnet\u002F03.auth\u002F11.api-keys",{"title":850,"path":851,"stem":852},"Rate Limiting та Throttling в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fauth\u002Frate-limiting","01.csharp\u002F11.aspnet\u002F03.auth\u002F12.rate-limiting",{"title":854,"path":855,"stem":856},"Refresh Token Rotation в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fauth\u002Frefresh-token-rotation","01.csharp\u002F11.aspnet\u002F03.auth\u002F13.refresh-token-rotation",{"title":858,"path":859,"stem":860},"Certificate Authentication та mTLS в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fcertificate-auth","01.csharp\u002F11.aspnet\u002F03.auth\u002F14.certificate-auth",{"title":862,"path":863,"stem":864},"RBAC, ABAC та ReBAC в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fauth\u002Frbac-abac-rebac","01.csharp\u002F11.aspnet\u002F03.auth\u002F15.rbac-abac-rebac",{"title":866,"path":867,"stem":868},"Multi-tenancy та ізоляція даних в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fauth\u002Fmulti-tenancy","01.csharp\u002F11.aspnet\u002F03.auth\u002F16.multi-tenancy",{"title":870,"icon":871,"path":872,"stem":873,"children":874,"page":59},"Нотифікації","i-lucide-bell","\u002Fcsharp\u002Faspnet\u002Fnotifications","01.csharp\u002F11.aspnet\u002F04.notifications",[875,879,883,887,891,895,899,903,907,911,915,919,923],{"title":876,"path":877,"stem":878},"In-App нотифікації через базу даних","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fin-app-database-notifications","01.csharp\u002F11.aspnet\u002F04.notifications\u002F01.in-app-database-notifications",{"title":880,"path":881,"stem":882},"Polling: Регулярний запит оновлень","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fpolling","01.csharp\u002F11.aspnet\u002F04.notifications\u002F02.polling",{"title":884,"path":885,"stem":886},"Server-Sent Events: Однострімовий push від сервера","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fserver-sent-events","01.csharp\u002F11.aspnet\u002F04.notifications\u002F03.server-sent-events",{"title":888,"path":889,"stem":890},"WebSockets: Двостороннє з'єднання в реальному часі","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fwebsockets","01.csharp\u002F11.aspnet\u002F04.notifications\u002F04.websockets",{"title":892,"path":893,"stem":894},"SignalR: Абстракція над транспортами реального часу","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fsignalr","01.csharp\u002F11.aspnet\u002F04.notifications\u002F05.signalr",{"title":896,"path":897,"stem":898},"Background Services: Фонові задачі в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fbackground-services","01.csharp\u002F11.aspnet\u002F04.notifications\u002F06.background-services",{"title":900,"path":901,"stem":902},"Web Push нотифікації","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fweb-push","01.csharp\u002F11.aspnet\u002F04.notifications\u002F07.web-push",{"title":904,"path":905,"stem":906},"Email нотифікації","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Femail-notifications","01.csharp\u002F11.aspnet\u002F04.notifications\u002F08.email-notifications",{"title":908,"path":909,"stem":910},"Порівняння підходів: Як вибрати правильну технологію нотифікацій","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fchoosing-the-right-approach","01.csharp\u002F11.aspnet\u002F04.notifications\u002F09.choosing-the-right-approach",{"title":912,"path":913,"stem":914},"Hangfire: Надійне планування фонових задач","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fhangfire","01.csharp\u002F11.aspnet\u002F04.notifications\u002F10.hangfire",{"title":916,"path":917,"stem":918},"Практика: Конвертація зображень у WebP через Hangfire","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fhangfire-image-webp","01.csharp\u002F11.aspnet\u002F04.notifications\u002F11.hangfire-image-webp",{"title":920,"path":921,"stem":922},"Практика: Підготовка відео до HLS-стрімінгу через Hangfire","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Fhangfire-video-hls","01.csharp\u002F11.aspnet\u002F04.notifications\u002F12.hangfire-video-hls",{"title":924,"path":925,"stem":926},"Telegram-нотифікації: від одного повідомлення до масових розсилок і мульти-канального підходу","\u002Fcsharp\u002Faspnet\u002Fnotifications\u002Ftelegram-notifications","01.csharp\u002F11.aspnet\u002F04.notifications\u002F13.telegram-notifications",{"title":928,"icon":929,"path":930,"stem":931,"children":932,"page":59},"Інтернаціоналізація","i-lucide-languages","\u002Fcsharp\u002Faspnet\u002Fi18n","01.csharp\u002F11.aspnet\u002F05.i18n",[933,937],{"title":934,"path":935,"stem":936},"Інтернаціоналізація (i18n) у Minimal API: від A до Я","\u002Fcsharp\u002Faspnet\u002Fi18n\u002Finternationalization","01.csharp\u002F11.aspnet\u002F05.i18n\u002F01.internationalization",{"title":938,"path":939,"stem":940},"Humanizer: людиномовні рядки у .NET","\u002Fcsharp\u002Faspnet\u002Fi18n\u002Fhumanizer","01.csharp\u002F11.aspnet\u002F05.i18n\u002F02.humanizer",{"title":942,"icon":943,"path":944,"stem":945,"children":946,"page":59},"Кешування","i-lucide-layers","\u002Fcsharp\u002Faspnet\u002Fcaching","01.csharp\u002F11.aspnet\u002F06.caching",[947,951,955,959,963],{"title":948,"path":949,"stem":950},"Огляд кешування: чотири рівні і коли що обирати","\u002Fcsharp\u002Faspnet\u002Fcaching\u002Fcaching","01.csharp\u002F11.aspnet\u002F06.caching\u002F01.caching",{"title":952,"path":953,"stem":954},"IMemoryCache: кеш в оперативній пам'яті","\u002Fcsharp\u002Faspnet\u002Fcaching\u002Fmemory-cache","01.csharp\u002F11.aspnet\u002F06.caching\u002F02.memory-cache",{"title":956,"path":957,"stem":958},"IDistributedCache і Redis: розподілений кеш","\u002Fcsharp\u002Faspnet\u002Fcaching\u002Fdistributed-cache","01.csharp\u002F11.aspnet\u002F06.caching\u002F03.distributed-cache",{"title":960,"path":961,"stem":962},"Response Cache: HTTP-кешування через Cache-Control","\u002Fcsharp\u002Faspnet\u002Fcaching\u002Fresponse-cache","01.csharp\u002F11.aspnet\u002F06.caching\u002F04.response-cache",{"title":964,"path":965,"stem":966},"Output Cache: серверний кеш HTTP-відповідей (.NET 7+)","\u002Fcsharp\u002Faspnet\u002Fcaching\u002Foutput-cache","01.csharp\u002F11.aspnet\u002F06.caching\u002F05.output-cache",{"title":968,"icon":969,"path":970,"stem":971,"children":972,"page":59},"Тестування","i-lucide-test-tube","\u002Fcsharp\u002Faspnet\u002Ftesting","01.csharp\u002F11.aspnet\u002F07.testing",[973,977,981,985,989,993,997,1001,1005,1009,1013,1017,1021,1025,1029,1033,1037,1041,1045,1049,1053],{"title":974,"path":975,"stem":976},"Що таке тестування? Від інтуїції до науки","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fwhat-is-testing","01.csharp\u002F11.aspnet\u002F07.testing\u002F01.what-is-testing",{"title":978,"path":979,"stem":980},"Піраміда тестування — Стратегія, а не Догма","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Ftesting-pyramid","01.csharp\u002F11.aspnet\u002F07.testing\u002F02.testing-pyramid",{"title":982,"path":983,"stem":984},"Дві Школи Тестування — Лондон проти Детройту","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Ftesting-schools","01.csharp\u002F11.aspnet\u002F07.testing\u002F03.testing-schools",{"title":986,"path":987,"stem":988},"TDD та BDD — Тести як Дизайн-інструмент","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Ftdd-and-bdd","01.csharp\u002F11.aspnet\u002F07.testing\u002F04.tdd-and-bdd",{"title":990,"path":991,"stem":992},"Що саме тестувати — Техніки аналізу та Циклomatична складність","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fwhat-to-test","01.csharp\u002F11.aspnet\u002F07.testing\u002F05.what-to-test",{"title":994,"path":995,"stem":996},"Тестові Фреймворки — Навіщо вони і що всередині","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Ftest-frameworks","01.csharp\u002F11.aspnet\u002F07.testing\u002F06.test-frameworks",{"title":998,"path":999,"stem":1000},"xUnit — Факти, Теорії та Lifecycle тестів","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fxunit-basics","01.csharp\u002F11.aspnet\u002F07.testing\u002F07.xunit-basics",{"title":1002,"path":1003,"stem":1004},"xUnit Advanced — Fixtures, Кастомізація та Розширення","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fxunit-advanced","01.csharp\u002F11.aspnet\u002F07.testing\u002F08.xunit-advanced",{"title":1006,"path":1007,"stem":1008},"Moq — Глибоке занурення в мокування","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fmocking-with-moq","01.csharp\u002F11.aspnet\u002F07.testing\u002F09.mocking-with-moq",{"title":1010,"path":1011,"stem":1012},"Тестування Баз Даних — EF Core, SQLite та Testcontainers","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fdatabase-testing","01.csharp\u002F11.aspnet\u002F07.testing\u002F10.database-testing",{"title":1014,"path":1015,"stem":1016},"Integration Testing — Частина 1 [Теорія та WebApplicationFactory]","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fintegration-testing","01.csharp\u002F11.aspnet\u002F07.testing\u002F11.integration-testing",{"title":1018,"path":1019,"stem":1020},"Інтеграційне тестування — Практика","\u002Fcsharp\u002Faspnet\u002Ftesting\u002F11a.integration-testing-practice","01.csharp\u002F11.aspnet\u002F07.testing\u002F11a.integration-testing-practice",{"title":1022,"path":1023,"stem":1024},"Integration Testing — Частина 2 [Просунуті Сценарії та Testcontainers]","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fintegration-testing-advanced","01.csharp\u002F11.aspnet\u002F07.testing\u002F12.integration-testing-advanced",{"title":1026,"path":1027,"stem":1028},"Професійний Postman: Колекції, Змінні та GitHub Інтеграція","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fpostman-professional","01.csharp\u002F11.aspnet\u002F07.testing\u002F13.postman-professional",{"title":1030,"path":1031,"stem":1032},"HttpClient у Тестах Частина 1: Архітектура та MockHttpMessageHandler","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fhttpclient-testing","01.csharp\u002F11.aspnet\u002F07.testing\u002F14.httpclient-testing",{"title":1034,"path":1035,"stem":1036},"HttpClient у Тестах Частина 2: WireMock.Net та Resilience","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fwiremock-net","01.csharp\u002F11.aspnet\u002F07.testing\u002F15.wiremock-net",{"title":1038,"path":1039,"stem":1040},"Патерни та Анти-патерни Тестування: Test Smells","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Ftesting-patterns","01.csharp\u002F11.aspnet\u002F07.testing\u002F16.testing-patterns",{"title":1042,"path":1043,"stem":1044},"Просунуті інструменти: Time, Snapshots та Властивості","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fadvanced-testing-tools","01.csharp\u002F11.aspnet\u002F07.testing\u002F17.advanced-testing-tools",{"title":1046,"path":1047,"stem":1048},"Тестування Архітектури з NetArchTest","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Farchitecture-testing","01.csharp\u002F11.aspnet\u002F07.testing\u002F18.architecture-testing",{"title":1050,"path":1051,"stem":1052},"Тестування Продуктивності: BenchmarkDotNet, NBomber та k6","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fperformance-testing","01.csharp\u002F11.aspnet\u002F07.testing\u002F19.performance-testing",{"title":1054,"path":1055,"stem":1056},"Залишок плану для курсу \"Тестування ASP.NET Minimal API\"","\u002Fcsharp\u002Faspnet\u002Ftesting\u002Fremaining_plan","01.csharp\u002F11.aspnet\u002F07.testing\u002Fremaining_plan",{"title":1058,"icon":1059,"path":1060,"stem":1061,"children":1062,"page":59},"Платежі","i-lucide-credit-card","\u002Fcsharp\u002Faspnet\u002Fpayments","01.csharp\u002F11.aspnet\u002F08.payments",[1063,1067,1071,1075,1079,1083,1087,1091,1095,1099,1103,1107],{"title":1064,"path":1065,"stem":1066},"Основи платіжної інфраструктури","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fpayment-fundamentals","01.csharp\u002F11.aspnet\u002F08.payments\u002F01.payment-fundamentals",{"title":1068,"path":1069,"stem":1070},"Методи оплати в Україні","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fpayment-methods-ukraine","01.csharp\u002F11.aspnet\u002F08.payments\u002F02.payment-methods-ukraine",{"title":1072,"path":1073,"stem":1074},"PCI DSS та безпека платежів","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fpci-dss-security","01.csharp\u002F11.aspnet\u002F08.payments\u002F03.pci-dss-security",{"title":1076,"path":1077,"stem":1078},"Архітектура платіжної підсистеми","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fpayment-architecture","01.csharp\u002F11.aspnet\u002F08.payments\u002F04.payment-architecture",{"title":1080,"path":1081,"stem":1082},"Інтеграція LiqPay (ПриватБанк)","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fliqpay-integration","01.csharp\u002F11.aspnet\u002F08.payments\u002F05.liqpay-integration",{"title":1084,"path":1085,"stem":1086},"Інтеграція Monobank Acquiring API","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fmonobank-acquiring","01.csharp\u002F11.aspnet\u002F08.payments\u002F06.monobank-acquiring",{"title":1088,"path":1089,"stem":1090},"Інтеграція Stripe","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fstripe-integration","01.csharp\u002F11.aspnet\u002F08.payments\u002F07.stripe-integration",{"title":1092,"path":1093,"stem":1094},"Webhooks — глибоке занурення","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fwebhooks-deep-dive","01.csharp\u002F11.aspnet\u002F08.payments\u002F08.webhooks-deep-dive",{"title":1096,"path":1097,"stem":1098},"Підписки та рекурентні платежі","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fsubscriptions-recurring","01.csharp\u002F11.aspnet\u002F08.payments\u002F09.subscriptions-recurring",{"title":1100,"path":1101,"stem":1102},"Повернення коштів та диспути","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Frefunds-disputes","01.csharp\u002F11.aspnet\u002F08.payments\u002F10.refunds-disputes",{"title":1104,"path":1105,"stem":1106},"Тестування платіжних інтеграцій","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Ftesting-payments","01.csharp\u002F11.aspnet\u002F08.payments\u002F11.testing-payments",{"title":1108,"path":1109,"stem":1110},"Чекліст виходу в Production","\u002Fcsharp\u002Faspnet\u002Fpayments\u002Fproduction-checklist","01.csharp\u002F11.aspnet\u002F08.payments\u002F12.production-checklist",{"title":1112,"icon":1113,"items":1114,"path":1127,"stem":1128,"children":1129,"page":59},"Популярні бібліотеки","lucide:box",[1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126],"01.fluent-validation","02.mapster","03.erroror-result-pattern","04.serilog","05.mediatr","06.polly","07.health-checks","08.feature-management","09.fluent-email","10.quest-pdf","11.bogus","12.humanizer-guard","\u002Fcsharp\u002Faspnet\u002Flibraries","01.csharp\u002F11.aspnet\u002F09.libraries",[1130,1134,1138,1142,1146,1150,1154,1158,1162,1166,1170,1174,1178],{"title":1131,"path":1132,"stem":1133},"Валідація з FluentValidation в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Ffluent-validation","01.csharp\u002F11.aspnet\u002F09.libraries\u002F01.fluent-validation",{"title":1135,"path":1136,"stem":1137},"Маппінг об","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fmapster","01.csharp\u002F11.aspnet\u002F09.libraries\u002F02.mapster",{"title":1139,"path":1140,"stem":1141},"Обробка помилок з ErrorOr та Result Pattern в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Ferroror-result-pattern","01.csharp\u002F11.aspnet\u002F09.libraries\u002F03.erroror-result-pattern",{"title":1143,"path":1144,"stem":1145},"Структуроване логування з Serilog в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fserilog","01.csharp\u002F11.aspnet\u002F09.libraries\u002F04.serilog",{"title":1147,"path":1148,"stem":1149},"CQRS та Mediator з MediatR в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fmediatr","01.csharp\u002F11.aspnet\u002F09.libraries\u002F05.mediatr",{"title":1151,"path":1152,"stem":1153},"Відмовостійкість з Polly в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fpolly","01.csharp\u002F11.aspnet\u002F09.libraries\u002F06.polly",{"title":1155,"path":1156,"stem":1157},"Health Checks в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fhealth-checks","01.csharp\u002F11.aspnet\u002F09.libraries\u002F07.health-checks",{"title":1159,"path":1160,"stem":1161},"Feature Management та Feature Flags в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Ffeature-management","01.csharp\u002F11.aspnet\u002F09.libraries\u002F08.feature-management",{"title":1163,"path":1164,"stem":1165},"Відправка Email з FluentEmail в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Ffluent-email","01.csharp\u002F11.aspnet\u002F09.libraries\u002F09.fluent-email",{"title":1167,"path":1168,"stem":1169},"Генерація PDF з QuestPDF в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fquest-pdf","01.csharp\u002F11.aspnet\u002F09.libraries\u002F10.quest-pdf",{"title":1171,"path":1172,"stem":1173},"Генерація тестових даних з Bogus в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fbogus","01.csharp\u002F11.aspnet\u002F09.libraries\u002F11.bogus",{"title":1175,"path":1176,"stem":1177},"Humanizer та Guard Clauses в ASP.NET Core","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fhumanizer-guard","01.csharp\u002F11.aspnet\u002F09.libraries\u002F12.humanizer-guard",{"title":1179,"path":1180,"stem":1181},"План модуля 10.libraries — Популярні бібліотеки ASP.NET","\u002Fcsharp\u002Faspnet\u002Flibraries\u002Fplan","01.csharp\u002F11.aspnet\u002F09.libraries\u002Fplan",{"title":1183,"icon":1184,"path":1185,"stem":1186,"children":1187,"page":59},"Razor Pages","i-lucide-layout-template","\u002Fcsharp\u002Faspnet\u002Frazor-pages","01.csharp\u002F11.aspnet\u002F10.razor-pages",[1188,1192,1196,1200,1204,1208],{"title":1189,"path":1190,"stem":1191},"Від Minimal API до Razor Pages: концептуальний перехід","\u002Fcsharp\u002Faspnet\u002Frazor-pages\u002Ffrom-minimal-api","01.csharp\u002F11.aspnet\u002F10.razor-pages\u002F01.from-minimal-api",{"title":1193,"path":1194,"stem":1195},"PageModel: логіка сторінки Razor Pages","\u002Fcsharp\u002Faspnet\u002Frazor-pages\u002Fpage-model","01.csharp\u002F11.aspnet\u002F10.razor-pages\u002F02.page-model",{"title":1197,"path":1198,"stem":1199},"Razor синтаксис: шаблонізатор у .cshtml","\u002Fcsharp\u002Faspnet\u002Frazor-pages\u002Frazor-syntax","01.csharp\u002F11.aspnet\u002F10.razor-pages\u002F03.razor-syntax",{"title":1201,"path":1202,"stem":1203},"Tag Helpers: типізований HTML","\u002Fcsharp\u002Faspnet\u002Frazor-pages\u002Ftag-helpers","01.csharp\u002F11.aspnet\u002F10.razor-pages\u002F04.tag-helpers",{"title":1205,"path":1206,"stem":1207},"Форми і валідація: повний цикл обробки даних","\u002Fcsharp\u002Faspnet\u002Frazor-pages\u002Fforms-validation","01.csharp\u002F11.aspnet\u002F10.razor-pages\u002F05.forms-validation",{"title":1209,"path":1210,"stem":1211},"Практичний проєкт: TaskManager на Razor Pages","\u002Fcsharp\u002Faspnet\u002Frazor-pages\u002Fproject-task-manager","01.csharp\u002F11.aspnet\u002F10.razor-pages\u002F06.project-task-manager",{"title":1213,"path":1214,"stem":1215,"children":1216,"page":59},"ASP.NET Core MVC","\u002Fcsharp\u002Faspnet\u002Fmvc","01.csharp\u002F11.aspnet\u002F11.mvc",[1217,1221,1225,1229,1233,1237,1241,1245,1249,1253,1257,1261,1265,1269,1273,1277,1281,1285],{"title":1218,"path":1219,"stem":1220},"Патерн MVC: архітектура, що змінила веб","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fmvc-pattern","01.csharp\u002F11.aspnet\u002F11.mvc\u002F01.mvc-pattern",{"title":1222,"path":1223,"stem":1224},"Від Razor Pages до MVC: концептуальний перехід","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Ffrom-razor-pages","01.csharp\u002F11.aspnet\u002F11.mvc\u002F02.from-razor-pages",{"title":1226,"path":1227,"stem":1228},"Controllers та Actions: серце MVC","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fcontrollers-actions","01.csharp\u002F11.aspnet\u002F11.mvc\u002F03.controllers-actions",{"title":1230,"path":1231,"stem":1232},"Маршрутизація в MVC: Convention vs Attribute Routing","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Frouting-mvc","01.csharp\u002F11.aspnet\u002F11.mvc\u002F04.routing-mvc",{"title":1234,"path":1235,"stem":1236},"Model Binding: від HTTP до C#","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fmodel-binding","01.csharp\u002F11.aspnet\u002F11.mvc\u002F05.model-binding",{"title":1238,"path":1239,"stem":1240},"Views, ViewData, ViewBag, TempData і ViewModel","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fviews-viewdata-tempdata","01.csharp\u002F11.aspnet\u002F11.mvc\u002F06.views-viewdata-tempdata",{"title":1242,"path":1243,"stem":1244},"Filters: аспектно-орієнтоване програмування в MVC","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Ffilters","01.csharp\u002F11.aspnet\u002F11.mvc\u002F07.filters",{"title":1246,"path":1247,"stem":1248},"Areas: структурування великих застосунків","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fareas","01.csharp\u002F11.aspnet\u002F11.mvc\u002F08.areas",{"title":1250,"path":1251,"stem":1252},"View Components: повторювані незалежні блоки UI","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fview-components","01.csharp\u002F11.aspnet\u002F11.mvc\u002F09.view-components",{"title":1254,"path":1255,"stem":1256},"Display та Editor Templates","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fdisplay-editor-templates","01.csharp\u002F11.aspnet\u002F11.mvc\u002F10.display-editor-templates",{"title":1258,"path":1259,"stem":1260},"Валідація: IValidatableObject та FluentValidation","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fvalidation-advanced","01.csharp\u002F11.aspnet\u002F11.mvc\u002F11.validation-advanced",{"title":1262,"path":1263,"stem":1264},"HTMX: інтерактивність через HTML-атрибути","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fhtmx","01.csharp\u002F11.aspnet\u002F11.mvc\u002F12.htmx",{"title":1266,"path":1267,"stem":1268},"HTMX у ASP.NET Core MVC: серверна інтеграція","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fajax-htmx-mvc","01.csharp\u002F11.aspnet\u002F11.mvc\u002F13.ajax-htmx-mvc",{"title":1270,"path":1271,"stem":1272},"Практичний проєкт: Каталог товарів з HTMX","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fhtmx-project","01.csharp\u002F11.aspnet\u002F11.mvc\u002F14.htmx-project",{"title":1274,"path":1275,"stem":1276},"Завантаження та обробка файлів","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Ffile-upload","01.csharp\u002F11.aspnet\u002F11.mvc\u002F15.file-upload",{"title":1278,"path":1279,"stem":1280},"Глобалізація та Локалізація MVC","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fglobalization-localization","01.csharp\u002F11.aspnet\u002F11.mvc\u002F16.globalization-localization",{"title":1282,"path":1283,"stem":1284},"Підсумковий проєкт: Блог-платформа","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fmvc-project","01.csharp\u002F11.aspnet\u002F11.mvc\u002F17.mvc-project",{"title":1286,"path":1287,"stem":1288},"План курсу: ASP.NET Core MVC","\u002Fcsharp\u002Faspnet\u002Fmvc\u002Fplan","01.csharp\u002F11.aspnet\u002F11.mvc\u002Fplan",{"title":1290,"path":1291,"stem":1292,"children":1293,"page":59},"Web Api","\u002Fcsharp\u002Faspnet\u002Fweb-api","01.csharp\u002F11.aspnet\u002F12.web-api",[1294,1298,1302,1306,1310,1314,1318,1322,1326,1330,1334,1338,1342],{"title":1295,"path":1296,"stem":1297},"Від Minimal API до Controller-based API","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Ffrom-minimal-api-to-controllers","01.csharp\u002F11.aspnet\u002F12.web-api\u002F01.from-minimal-api-to-controllers",{"title":1299,"path":1300,"stem":1301},"ControllerBase, ActionResult\u003CT> та Response Types","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fcontroller-base-actionresult","01.csharp\u002F11.aspnet\u002F12.web-api\u002F02.controller-base-actionresult",{"title":1303,"path":1304,"stem":1305},"Content Negotiation - JSON, XML та власні форматери","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fcontent-negotiation","01.csharp\u002F11.aspnet\u002F12.web-api\u002F03.content-negotiation",{"title":1307,"path":1308,"stem":1309},"Версіонування API","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fapi-versioning","01.csharp\u002F11.aspnet\u002F12.web-api\u002F04.api-versioning",{"title":1311,"path":1312,"stem":1313},"ProblemDetails та структурована обробка помилок","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fproblemdetails-error-handling","01.csharp\u002F11.aspnet\u002F12.web-api\u002F05.problemdetails-error-handling",{"title":1315,"path":1316,"stem":1317},"Фільтри у Web API контексті","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Ffilters-for-api","01.csharp\u002F11.aspnet\u002F12.web-api\u002F06.filters-for-api",{"title":1319,"path":1320,"stem":1321},"Пагінація, фільтрація та сортування","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fpagination-filtering-sorting","01.csharp\u002F11.aspnet\u002F12.web-api\u002F07.pagination-filtering-sorting",{"title":1323,"path":1324,"stem":1325},"HATEOAS та Resource Expansion","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fhateoas-resource-expansion","01.csharp\u002F11.aspnet\u002F12.web-api\u002F08.hateoas-resource-expansion",{"title":1327,"path":1328,"stem":1329},"Гібридна архітектура - Minimal API + Controllers","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fminimal-api-vs-controllers-hybrid","01.csharp\u002F11.aspnet\u002F12.web-api\u002F09.minimal-api-vs-controllers-hybrid",{"title":1331,"path":1332,"stem":1333},"Документація API - Swashbuckle, NSwag та генерація клієнтів","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fapi-documentation-generation","01.csharp\u002F11.aspnet\u002F12.web-api\u002F10.api-documentation-generation",{"title":1335,"path":1336,"stem":1337},"Health Checks та моніторинг API","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fhealth-checks-monitoring","01.csharp\u002F11.aspnet\u002F12.web-api\u002F11.health-checks-monitoring",{"title":1339,"path":1340,"stem":1341},"Підсумковий проєкт - Production-Ready REST API","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fweb-api-project","01.csharp\u002F11.aspnet\u002F12.web-api\u002F12.web-api-project",{"title":1343,"path":1344,"stem":1345},"План курсу: ASP.NET Core Web API (Controllers)","\u002Fcsharp\u002Faspnet\u002Fweb-api\u002Fplan","01.csharp\u002F11.aspnet\u002F12.web-api\u002Fplan",{"title":1347,"icon":1348,"path":1349,"stem":1350,"children":1351,"page":59},"Моніторинг","i-lucide-activity","\u002Fcsharp\u002Faspnet\u002Fmonitoring","01.csharp\u002F11.aspnet\u002F13.monitoring",[1352,1356,1360],{"title":1353,"path":1354,"stem":1355},"Спостережуваність: від console.log до production-систем","\u002Fcsharp\u002Faspnet\u002Fmonitoring\u002Fobservability-intro","01.csharp\u002F11.aspnet\u002F13.monitoring\u002F01.observability-intro",{"title":1357,"path":1358,"stem":1359},"Health Checks: перший рівень observability","\u002Fcsharp\u002Faspnet\u002Fmonitoring\u002Fhealth-checks","01.csharp\u002F11.aspnet\u002F13.monitoring\u002F02.health-checks",{"title":1361,"path":1362,"stem":1363},"Вбудовані метрики .NET 10 та System.Diagnostics.Metrics","\u002Fcsharp\u002Faspnet\u002Fmonitoring\u002Fdotnet-metrics","01.csharp\u002F11.aspnet\u002F13.monitoring\u002F03.dotnet-metrics",{"title":1365,"icon":1366,"path":1367,"stem":1368,"children":1369,"page":59},"Desktop UI","i-lucide-app-window","\u002Fcsharp\u002Fdesktop-ui","01.csharp\u002F12.desktop-ui",[1370,1374,1378,1382,1386,1390,1394,1398,1402,1406,1410,1414,1418,1422,1426,1430,1434,1438,1442,1446,1450,1454,1458,1462,1466,1470,1474,1478,1482,1486,1490,1494,1498,1502,1506,1510,1514,1518,1522,1526,1530,1534,1538,1542,1546,1550,1554,1558,1562,1566,1570,1574,1578,1582,1586,1590,1594,1598,1602,1606,1610,1614,1618,1622,1626,1630,1634,1638,1642,1646,1650],{"title":1371,"path":1372,"stem":1373},"Що таке десктопна розробка?","\u002Fcsharp\u002Fdesktop-ui\u002Fwhat-is-desktop-dev","01.csharp\u002F12.desktop-ui\u002F01.what-is-desktop-dev",{"title":1375,"path":1376,"stem":1377},"Архітектура WPF — як влаштований графічний інтерфейс","\u002Fcsharp\u002Fdesktop-ui\u002Fwpf-architecture","01.csharp\u002F12.desktop-ui\u002F02.wpf-architecture",{"title":1379,"path":1380,"stem":1381},"Перший WPF-проєкт — від нуля до вікна","\u002Fcsharp\u002Fdesktop-ui\u002Ffirst-wpf-app","01.csharp\u002F12.desktop-ui\u002F03.first-wpf-app",{"title":1383,"path":1384,"stem":1385},"Перший Avalonia-проєкт: WPF для всіх платформ","\u002Fcsharp\u002Fdesktop-ui\u002F03a.first-avalonia-app","01.csharp\u002F12.desktop-ui\u002F03a.first-avalonia-app",{"title":1387,"path":1388,"stem":1389},"XAML: декларативний інтерфейс","\u002Fcsharp\u002Fdesktop-ui\u002Fxaml-basics","01.csharp\u002F12.desktop-ui\u002F04.xaml-basics",{"title":1391,"path":1392,"stem":1393},"Fluent UI у WPF — сучасний дизайн Windows 11","\u002Fcsharp\u002Fdesktop-ui\u002F04a.wpf-fluent-ui","01.csharp\u002F12.desktop-ui\u002F04a.wpf-fluent-ui",{"title":1395,"path":1396,"stem":1397},"WPF UI — сучасна бібліотека Fluent контролів","\u002Fcsharp\u002Fdesktop-ui\u002F04b.wpf-ui-library","01.csharp\u002F12.desktop-ui\u002F04b.wpf-ui-library",{"title":1399,"path":1400,"stem":1401},"HandyControl — велика бібліотека UI контролів для WPF","\u002Fcsharp\u002Fdesktop-ui\u002F04c.handycontrol-library","01.csharp\u002F12.desktop-ui\u002F04c.handycontrol-library",{"title":1403,"path":1404,"stem":1405},"Простори імен та ресурси XAML","\u002Fcsharp\u002Fdesktop-ui\u002Fxaml-namespaces-resources","01.csharp\u002F12.desktop-ui\u002F05.xaml-namespaces-resources",{"title":1407,"path":1408,"stem":1409},"XAML в Avalonia: ключові відмінності від WPF","\u002Fcsharp\u002Fdesktop-ui\u002F05a.avalonia-xaml-differences","01.csharp\u002F12.desktop-ui\u002F05a.avalonia-xaml-differences",{"title":1411,"path":1412,"stem":1413},"Розширення розмітки XAML (Markup Extensions)","\u002Fcsharp\u002Fdesktop-ui\u002Fxaml-markup-extensions","01.csharp\u002F12.desktop-ui\u002F06.xaml-markup-extensions",{"title":1415,"path":1416,"stem":1417},"Панелі Layout: StackPanel, WrapPanel, DockPanel","\u002Fcsharp\u002Fdesktop-ui\u002Flayout-panels-part1","01.csharp\u002F12.desktop-ui\u002F07.layout-panels-part1",{"title":1419,"path":1420,"stem":1421},"Grid, Canvas, UniformGrid","\u002Fcsharp\u002Fdesktop-ui\u002Flayout-panels-part2","01.csharp\u002F12.desktop-ui\u002F07.layout-panels-part2",{"title":1423,"path":1424,"stem":1425},"Просунуті техніки Layout","\u002Fcsharp\u002Fdesktop-ui\u002Flayout-advanced","01.csharp\u002F12.desktop-ui\u002F08.layout-advanced",{"title":1427,"path":1428,"stem":1429},"Адаптивний Layout та найкращі практики","\u002Fcsharp\u002Fdesktop-ui\u002Flayout-responsive","01.csharp\u002F12.desktop-ui\u002F09.layout-responsive",{"title":1431,"path":1432,"stem":1433},"Layout в Avalonia: відмінності та нові можливості","\u002Fcsharp\u002Fdesktop-ui\u002F09a.layout-avalonia","01.csharp\u002F12.desktop-ui\u002F09a.layout-avalonia",{"title":1435,"path":1436,"stem":1437},"Button, Image, ProgressBar та інші базові контроли","\u002Fcsharp\u002Fdesktop-ui\u002Fbasic-controls","01.csharp\u002F12.desktop-ui\u002F10.basic-controls",{"title":1439,"path":1440,"stem":1441},"Контроли в Avalonia: відмінності від WPF","\u002Fcsharp\u002Fdesktop-ui\u002F10a.controls-avalonia","01.csharp\u002F12.desktop-ui\u002F10a.controls-avalonia",{"title":1443,"path":1444,"stem":1445},"Текстові контроли — TextBlock, TextBox, RichTextBox","\u002Fcsharp\u002Fdesktop-ui\u002Ftext-controls","01.csharp\u002F12.desktop-ui\u002F11.text-controls",{"title":1447,"path":1448,"stem":1449},"Контроли вибору — CheckBox, RadioButton, ComboBox, ListBox, DatePicker","\u002Fcsharp\u002Fdesktop-ui\u002Fselection-controls","01.csharp\u002F12.desktop-ui\u002F12.selection-controls",{"title":1451,"path":1452,"stem":1453},"Content Model — GroupBox, Expander, TabControl, StatusBar","\u002Fcsharp\u002Fdesktop-ui\u002Fcontent-controls","01.csharp\u002F12.desktop-ui\u002F13.content-controls",{"title":1455,"path":1456,"stem":1457},"UI\u002FUX принципи десктопних застосунків","\u002Fcsharp\u002Fdesktop-ui\u002F13a.ui-ux-principles","01.csharp\u002F12.desktop-ui\u002F13a.ui-ux-principles",{"title":1459,"path":1460,"stem":1461},"Dependency Properties — Концепція та Value Resolution","\u002Fcsharp\u002Fdesktop-ui\u002Fdependency-properties-part1","01.csharp\u002F12.desktop-ui\u002F14.dependency-properties-part1",{"title":1463,"path":1464,"stem":1465},"Avalonia Property System — StyledProperty та DirectProperty","\u002Fcsharp\u002Fdesktop-ui\u002F14a.avalonia-property-system","01.csharp\u002F12.desktop-ui\u002F14a.avalonia-property-system",{"title":1467,"path":1468,"stem":1469},"Attached Properties — Властивості без меж","\u002Fcsharp\u002Fdesktop-ui\u002Fattached-properties","01.csharp\u002F12.desktop-ui\u002F15.attached-properties",{"title":1471,"path":1472,"stem":1473},"Routed Events — Маршрутизація подій у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Frouted-events","01.csharp\u002F12.desktop-ui\u002F16.routed-events",{"title":1475,"path":1476,"stem":1477},"Data Binding — Від Code-Behind до Декларативності","\u002Fcsharp\u002Fdesktop-ui\u002Fdata-binding-basics-part1","01.csharp\u002F12.desktop-ui\u002F17.data-binding-basics-part1",{"title":1479,"path":1480,"stem":1481},"INotifyPropertyChanged — Живе оновлення UI","\u002Fcsharp\u002Fdesktop-ui\u002Fdata-binding-basics-part2","01.csharp\u002F12.desktop-ui\u002F17.data-binding-basics-part2",{"title":1483,"path":1484,"stem":1485},"Compiled Bindings в Avalonia — Безпека на етапі компіляції","\u002Fcsharp\u002Fdesktop-ui\u002F17a.avalonia-compiled-bindings","01.csharp\u002F12.desktop-ui\u002F17a.avalonia-compiled-bindings",{"title":1487,"path":1488,"stem":1489},"Просунутий Data Binding — ElementName, RelativeSource, MultiBinding","\u002Fcsharp\u002Fdesktop-ui\u002Fdata-binding-advanced","01.csharp\u002F12.desktop-ui\u002F18.data-binding-advanced",{"title":1491,"path":1492,"stem":1493},"Value Converters — Перетворення типів даних у Data Binding","\u002Fcsharp\u002Fdesktop-ui\u002Fvalue-converters","01.csharp\u002F12.desktop-ui\u002F19.value-converters",{"title":1495,"path":1496,"stem":1497},"Data Templates — Візуалізація об'єктів у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Fdata-templates","01.csharp\u002F12.desktop-ui\u002F20.data-templates",{"title":1499,"path":1500,"stem":1501},"Collections Binding Part 1 — ObservableCollection та ItemsControl","\u002Fcsharp\u002Fdesktop-ui\u002Fcollections-binding-part1","01.csharp\u002F12.desktop-ui\u002F21.collections-binding-part1",{"title":1503,"path":1504,"stem":1505},"Collections Binding Part 2 — ICollectionView, Filtering, Sorting та Virtualization","\u002Fcsharp\u002Fdesktop-ui\u002Fcollections-binding-part2","01.csharp\u002F12.desktop-ui\u002F21.collections-binding-part2",{"title":1507,"path":1508,"stem":1509},"MVVM Pattern — Від Spaghetti Code до архітектури","\u002Fcsharp\u002Fdesktop-ui\u002Fmvvm-pattern","01.csharp\u002F12.desktop-ui\u002F22.mvvm-pattern",{"title":1511,"path":1512,"stem":1513},"ViewModel Implementation — Від BaseViewModel до валідації","\u002Fcsharp\u002Fdesktop-ui\u002Fviewmodel-implementation","01.csharp\u002F12.desktop-ui\u002F23.viewmodel-implementation",{"title":1515,"path":1516,"stem":1517},"Commands — Від event handlers до декларативних команд","\u002Fcsharp\u002Fdesktop-ui\u002Fcommands","01.csharp\u002F12.desktop-ui\u002F24.commands",{"title":1519,"path":1520,"stem":1521},"MVVM Toolkit — MVVM без boilerplate через Source Generators","\u002Fcsharp\u002Fdesktop-ui\u002Fmvvm-toolkit","01.csharp\u002F12.desktop-ui\u002F25.mvvm-toolkit",{"title":1523,"path":1524,"stem":1525},"Messenger Pattern — Комунікація між ViewModel без прямих посилань","\u002Fcsharp\u002Fdesktop-ui\u002Fmessenger-pattern","01.csharp\u002F12.desktop-ui\u002F26.messenger-pattern",{"title":1527,"path":1528,"stem":1529},"Стилі WPF — CSS для десктопу","\u002Fcsharp\u002Fdesktop-ui\u002Fstyles-basics","01.csharp\u002F12.desktop-ui\u002F27.styles-basics",{"title":1531,"path":1532,"stem":1533},"CSS-like стилі Avalonia","\u002Fcsharp\u002Fdesktop-ui\u002F27a.avalonia-css-styling","01.csharp\u002F12.desktop-ui\u002F27a.avalonia-css-styling",{"title":1535,"path":1536,"stem":1537},"Control Templates — Частина 1. Концепція та TemplateBinding","\u002Fcsharp\u002Fdesktop-ui\u002Fcontrol-templates-part1","01.csharp\u002F12.desktop-ui\u002F28.control-templates-part1",{"title":1539,"path":1540,"stem":1541},"Control Templates — Частина 2. Named Parts та ContentPresenter","\u002Fcsharp\u002Fdesktop-ui\u002Fcontrol-templates-part2","01.csharp\u002F12.desktop-ui\u002F28.control-templates-part2",{"title":1543,"path":1544,"stem":1545},"Control Themes в Avalonia — нова ера стилізації","\u002Fcsharp\u002Fdesktop-ui\u002F28a.avalonia-control-themes","01.csharp\u002F12.desktop-ui\u002F28a.avalonia-control-themes",{"title":1547,"path":1548,"stem":1549},"Triggers та Visual State Manager у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Ftriggers-visual-states","01.csharp\u002F12.desktop-ui\u002F29.triggers-visual-states",{"title":1551,"path":1552,"stem":1553},"Pseudo-classes в Avalonia — замість WPF Triggers","\u002Fcsharp\u002Fdesktop-ui\u002F29a.avalonia-pseudo-classes","01.csharp\u002F12.desktop-ui\u002F29a.avalonia-pseudo-classes",{"title":1555,"path":1556,"stem":1557},"Теми та ресурсні словники у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Fresources-themes","01.csharp\u002F12.desktop-ui\u002F30.resources-themes",{"title":1559,"path":1560,"stem":1561},"Avalonia Themes — Fluent Design та система тематизації","\u002Fcsharp\u002Fdesktop-ui\u002F30a.avalonia-themes-fluent","01.csharp\u002F12.desktop-ui\u002F30a.avalonia-themes-fluent",{"title":1563,"path":1564,"stem":1565},"Контроли колекцій — глибоке занурення","\u002Fcsharp\u002Fdesktop-ui\u002Fcollection-controls","01.csharp\u002F12.desktop-ui\u002F31.collection-controls",{"title":1567,"path":1568,"stem":1569},"DataGrid — колонки та базове відображення","\u002Fcsharp\u002Fdesktop-ui\u002Fdatagrid-part1","01.csharp\u002F12.desktop-ui\u002F32.datagrid-part1",{"title":1571,"path":1572,"stem":1573},"DataGrid — сортування, фільтрація, редагування","\u002Fcsharp\u002Fdesktop-ui\u002Fdatagrid-part2","01.csharp\u002F12.desktop-ui\u002F32.datagrid-part2",{"title":1575,"path":1576,"stem":1577},"TreeView та GridView","\u002Fcsharp\u002Fdesktop-ui\u002Ftreeview-listview","01.csharp\u002F12.desktop-ui\u002F33.treeview-listview",{"title":1579,"path":1580,"stem":1581},"Меню, Toolbar, ContextMenu, StatusBar","\u002Fcsharp\u002Fdesktop-ui\u002Fmenus-toolbars","01.csharp\u002F12.desktop-ui\u002F34.menus-toolbars",{"title":1583,"path":1584,"stem":1585},"Навігація та керування вікнами. Частина 1: вікна та сторінки","\u002Fcsharp\u002Fdesktop-ui\u002Fnavigation-windows-part1","01.csharp\u002F12.desktop-ui\u002F35.navigation-windows-part1",{"title":1587,"path":1588,"stem":1589},"Навігація та керування вікнами. Частина 2: MVVM-навігація","\u002Fcsharp\u002Fdesktop-ui\u002Fnavigation-windows-part2","01.csharp\u002F12.desktop-ui\u002F35.navigation-windows-part2",{"title":1591,"path":1592,"stem":1593},"Avalonia — Навігація та діалоги","\u002Fcsharp\u002Fdesktop-ui\u002F35a.avalonia-navigation-dialogs","01.csharp\u002F12.desktop-ui\u002F35a.avalonia-navigation-dialogs",{"title":1595,"path":1596,"stem":1597},"Діалоги та File Pickers у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Fdialogs-file-pickers","01.csharp\u002F12.desktop-ui\u002F36.dialogs-file-pickers",{"title":1599,"path":1600,"stem":1601},"UserControl: компонентний підхід у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Fuser-controls","01.csharp\u002F12.desktop-ui\u002F37.user-controls",{"title":1603,"path":1604,"stem":1605},"Custom Controls: Lookless Controls у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Fcustom-controls","01.csharp\u002F12.desktop-ui\u002F38.custom-controls",{"title":1607,"path":1608,"stem":1609},"Avalonia TemplatedControl — Lookless Controls","\u002Fcsharp\u002Fdesktop-ui\u002F38a.avalonia-templated-controls","01.csharp\u002F12.desktop-ui\u002F38a.avalonia-templated-controls",{"title":1611,"path":1612,"stem":1613},"Анімації у WPF: Storyboard та Easing Functions","\u002Fcsharp\u002Fdesktop-ui\u002Fanimations-transitions","01.csharp\u002F12.desktop-ui\u002F39.animations-transitions",{"title":1615,"path":1616,"stem":1617},"Анімації в Avalonia","\u002Fcsharp\u002Fdesktop-ui\u002F39a.avalonia-animations","01.csharp\u002F12.desktop-ui\u002F39a.avalonia-animations",{"title":1619,"path":1620,"stem":1621},"2D Графіка та Мультимедіа у WPF","\u002Fcsharp\u002Fdesktop-ui\u002Fmedia-graphics","01.csharp\u002F12.desktop-ui\u002F40.media-graphics",{"title":1623,"path":1624,"stem":1625},"Dependency Injection у WPF та Avalonia","\u002Fcsharp\u002Fdesktop-ui\u002Fdi-integration","01.csharp\u002F12.desktop-ui\u002F41.di-integration",{"title":1627,"path":1628,"stem":1629},"SQLite та EF Core у десктопних додатках","\u002Fcsharp\u002Fdesktop-ui\u002Fdata-persistence-part1","01.csharp\u002F12.desktop-ui\u002F42.data-persistence-part1",{"title":1631,"path":1632,"stem":1633},"Repository Pattern та Unit of Work","\u002Fcsharp\u002Fdesktop-ui\u002Fdata-persistence-part2","01.csharp\u002F12.desktop-ui\u002F43.data-persistence-part2",{"title":1635,"path":1636,"stem":1637},"Тестування ViewModels","\u002Fcsharp\u002Fdesktop-ui\u002Fviewmodel-testing","01.csharp\u002F12.desktop-ui\u002F44.viewmodel-testing",{"title":1639,"path":1640,"stem":1641},"Avalonia Headless Testing — тестування UI без вікон","\u002Fcsharp\u002Fdesktop-ui\u002F44a.avalonia-headless-testing","01.csharp\u002F12.desktop-ui\u002F44a.avalonia-headless-testing",{"title":1643,"path":1644,"stem":1645},"Кросплатформна розробка з Avalonia","\u002Fcsharp\u002Fdesktop-ui\u002Favalonia-cross-platform","01.csharp\u002F12.desktop-ui\u002F45.avalonia-cross-platform",{"title":1647,"path":1648,"stem":1649},"Пакування та розгортання Avalonia додатків","\u002Fcsharp\u002Fdesktop-ui\u002Favalonia-packaging-deployment","01.csharp\u002F12.desktop-ui\u002F46.avalonia-packaging-deployment",{"title":1651,"path":1652,"stem":1653},"Розгортання WPF застосунків","\u002Fcsharp\u002Fdesktop-ui\u002Fwpf-packaging-deployment","01.csharp\u002F12.desktop-ui\u002F47.wpf-packaging-deployment",{"title":1655,"icon":658,"path":1656,"stem":1657,"children":1658,"page":59},"Network Programming","\u002Fcsharp\u002Fnetwork-programming","01.csharp\u002F13.network-programming",[1659,1663,1667,1671,1675,1679,1683,1687,1691,1695,1699],{"title":1660,"path":1661,"stem":1662},"Основи комп'ютерних мереж","\u002Fcsharp\u002Fnetwork-programming\u002Ffoundations","01.csharp\u002F13.network-programming\u002F01.foundations",{"title":1664,"path":1665,"stem":1666},"Модель OSI та стек TCP\u002FIP","\u002Fcsharp\u002Fnetwork-programming\u002Fosi-model","01.csharp\u002F13.network-programming\u002F02.osi-model",{"title":1668,"path":1669,"stem":1670},"IP-протокол та адресація","\u002Fcsharp\u002Fnetwork-programming\u002Fip-addressing","01.csharp\u002F13.network-programming\u002F03.ip-addressing",{"title":1672,"path":1673,"stem":1674},"UDP — протокол без з'єднання","\u002Fcsharp\u002Fnetwork-programming\u002Fudp","01.csharp\u002F13.network-programming\u002F05.udp",{"title":1676,"path":1677,"stem":1678},"UDP Broadcast та Multicast","\u002Fcsharp\u002Fnetwork-programming\u002Fudp-broadcast-multicast","01.csharp\u002F13.network-programming\u002F06.udp-broadcast-multicast",{"title":1680,"path":1681,"stem":1682},"HTTP — протокол вебу","\u002Fcsharp\u002Fnetwork-programming\u002Fhttp-fundamentals","01.csharp\u002F13.network-programming\u002F07.http-fundamentals",{"title":1684,"path":1685,"stem":1686},"HttpListener — вбудований HTTP-сервер .NET","\u002Fcsharp\u002Fnetwork-programming\u002F07a.http-listener","01.csharp\u002F13.network-programming\u002F07a.http-listener",{"title":1688,"path":1689,"stem":1690},"HTTP Advanced — cookies, аутентифікація та HTTPS","\u002Fcsharp\u002Fnetwork-programming\u002Fhttp-advanced","01.csharp\u002F13.network-programming\u002F08.http-advanced",{"title":1692,"path":1693,"stem":1694},"SMTP та протоколи електронної пошти","\u002Fcsharp\u002Fnetwork-programming\u002Fsmtp","01.csharp\u002F13.network-programming\u002F09.smtp",{"title":1696,"path":1697,"stem":1698},"WebSocket — повнодуплексний протокол реального часу","\u002Fcsharp\u002Fnetwork-programming\u002Fwebsockets","01.csharp\u002F13.network-programming\u002F10.websockets",{"title":1700,"path":1701,"stem":1702},"TLS\u002FSSL — криптографічний захист мережевих з'єднань","\u002Fcsharp\u002Fnetwork-programming\u002Ftls-ssl","01.csharp\u002F13.network-programming\u002F11.tls-ssl",{"title":1704,"path":1705,"stem":1706},"C# & .NET: The Ultimate Roadmap","\u002Fcsharp\u002Froadmap","01.csharp\u002Froadmap",{"title":1708,"icon":1709,"path":1710,"stem":1711,"children":1712,"page":59},"C++","i-devicon-cplusplus","\u002Fcpp","02.cpp",[1713,1717,1721,1725,1729,1733,1737,1741,1745,1748,1752,1756,1760,1764,1768,1772,1776,1780,1784,1788,1792,1796,1800,1804,1808,1812,1816,1820,1824,1828,1832,1836,1840,1844,1848,1852,1856,1860,1864,1868,1872,1876,1880,1884,1888,1892,1896,1900,1904,1908],{"title":1714,"path":1715,"stem":1716},"Вступ у програмування та алгоритми","\u002Fcpp\u002Fintro-algorithms","02.cpp\u002F01.intro-algorithms",{"title":1718,"path":1719,"stem":1720},"Code Style: угоди про оформлення коду","\u002Fcpp\u002Fcode-style","02.cpp\u002F02.code-style",{"title":1722,"path":1723,"stem":1724},"Середовище розробки та перший проєкт","\u002Fcpp\u002Fide-setup","02.cpp\u002F03.ide-setup",{"title":1726,"path":1727,"stem":1728},"Вивід даних на екран","\u002Fcpp\u002Fdata-output","02.cpp\u002F04.data-output",{"title":1730,"path":1731,"stem":1732},"Типи даних, змінні та константи","\u002Fcpp\u002Fdata-types-variables","02.cpp\u002F05.data-types-variables",{"title":1734,"path":1735,"stem":1736},"Ввід даних з клавіатури","\u002Fcpp\u002Fdata-input","02.cpp\u002F06.data-input",{"title":1738,"path":1739,"stem":1740},"Оператори, перетворення типів та логічні операції","\u002Fcpp\u002Foperators-type-conversion","02.cpp\u002F07.operators-type-conversion",{"title":1742,"path":1743,"stem":1744},"Цикли","\u002Fcpp\u002Floops","02.cpp\u002F08.loops",{"title":32,"path":1746,"stem":1747},"\u002Fcpp\u002Farrays","02.cpp\u002F09.arrays",{"title":1749,"path":1750,"stem":1751},"Алгоритми сортування та аналіз складності","\u002Fcpp\u002Fsorting","02.cpp\u002F10.sorting",{"title":1753,"path":1754,"stem":1755},"Алгоритми пошуку","\u002Fcpp\u002Fsearching","02.cpp\u002F11.searching",{"title":1757,"path":1758,"stem":1759},"Функції: основи","\u002Fcpp\u002Ffunctions-basics","02.cpp\u002F12.functions-basics",{"title":1761,"path":1762,"stem":1763},"Функції: прототипи, область видимості та додаткові можливості","\u002Fcpp\u002Ffunctions-scope","02.cpp\u002F13.functions-scope",{"title":1765,"path":1766,"stem":1767},"Функції: перевантаження та шаблони","\u002Fcpp\u002Ffunctions-overloading-templates","02.cpp\u002F14.functions-overloading-templates",{"title":1769,"path":1770,"stem":1771},"Вказівники: основи","\u002Fcpp\u002Fpointers-basics","02.cpp\u002F15.pointers-basics",{"title":1773,"path":1774,"stem":1775},"Посилання (References)","\u002Fcpp\u002Freferences","02.cpp\u002F16.references",{"title":1777,"path":1778,"stem":1779},"Вказівники, const і масиви","\u002Fcpp\u002Fpointers-const-arrays","02.cpp\u002F17.pointers-const-arrays",{"title":1781,"path":1782,"stem":1783},"Адресна арифметика","\u002Fcpp\u002Fpointer-arithmetic","02.cpp\u002F18.pointer-arithmetic",{"title":1785,"path":1786,"stem":1787},"Динамічна пам'ять","\u002Fcpp\u002Fdynamic-memory","02.cpp\u002F19.dynamic-memory",{"title":1789,"path":1790,"stem":1791},"Вказівники типу void","\u002Fcpp\u002Fvoid-pointers","02.cpp\u002F20.void-pointers",{"title":1793,"path":1794,"stem":1795},"Вказівники на вказівники","\u002Fcpp\u002Fpointers-to-pointers","02.cpp\u002F21.pointers-to-pointers",{"title":1797,"path":1798,"stem":1799},"Оператор доступу до членів через вказівник (->)","\u002Fcpp\u002Fmember-access-operator","02.cpp\u002F22.member-access-operator",{"title":1801,"path":1802,"stem":1803},"Цикл for-each (Range-based for)","\u002Fcpp\u002Fforeach-loop","02.cpp\u002F23.foreach-loop",{"title":1805,"path":1806,"stem":1807},"Вказівники на функції","\u002Fcpp\u002Ffunction-pointers","02.cpp\u002F24.function-pointers",{"title":1809,"path":1810,"stem":1811},"Лямбда-вирази","\u002Fcpp\u002Flambdas","02.cpp\u002F25.lambdas",{"title":1813,"path":1814,"stem":1815},"Лямбда-захоплення","\u002Fcpp\u002Flambda-captures","02.cpp\u002F26.lambda-captures",{"title":1817,"path":1818,"stem":1819},"Еліпсис","\u002Fcpp\u002Fellipsis","02.cpp\u002F27.ellipsis",{"title":1821,"path":1822,"stem":1823},"Безпечні альтернативи еліпсису","\u002Fcpp\u002F27a.ellipsis","02.cpp\u002F27a.ellipsis",{"title":1825,"path":1826,"stem":1827},"Аргументи командного рядка","\u002Fcpp\u002Fcommand-line-arguments","02.cpp\u002F28.command-line-arguments",{"title":1829,"path":1830,"stem":1831},"Перерахування (enum)","\u002Fcpp\u002Fenum","02.cpp\u002F29.enum",{"title":1833,"path":1834,"stem":1835},"Класи-перерахування (enum class)","\u002Fcpp\u002Fenum-class","02.cpp\u002F30.enum-class",{"title":1837,"path":1838,"stem":1839},"Псевдоніми типів (typedef і using)","\u002Fcpp\u002Ftype-aliases","02.cpp\u002F31.type-aliases",{"title":1841,"path":1842,"stem":1843},"Системи числення та двійкова арифметика","\u002Fcpp\u002Fnumber-systems","02.cpp\u002F32.number-systems",{"title":1845,"path":1846,"stem":1847},"Структури (struct): агрегування даних","\u002Fcpp\u002Fstruct","02.cpp\u002F33.struct",{"title":1849,"path":1850,"stem":1851},"Структури у функціях","\u002Fcpp\u002Fstruct-functions","02.cpp\u002F34.struct-functions",{"title":1853,"path":1854,"stem":1855},"Масиви структур і вкладені структури","\u002Fcpp\u002Fstruct-arrays","02.cpp\u002F35.struct-arrays",{"title":1857,"path":1858,"stem":1859},"Патерни struct та межі застосування","\u002Fcpp\u002Fstruct-patterns","02.cpp\u002F36.struct-patterns",{"title":1861,"path":1862,"stem":1863},"Символи та таблиця ASCII","\u002Fcpp\u002Fascii-characters","02.cpp\u002F37.ascii-characters",{"title":1865,"path":1866,"stem":1867},"Unicode та кодування UTF","\u002Fcpp\u002Funicode-utf","02.cpp\u002F38.unicode-utf",{"title":1869,"path":1870,"stem":1871},"C-style рядки","\u002Fcpp\u002Fc-strings","02.cpp\u002F39.c-strings",{"title":1873,"path":1874,"stem":1875},"Вступ до std::string","\u002Fcpp\u002Fstd-string-intro","02.cpp\u002F40.std-string-intro",{"title":1877,"path":1878,"stem":1879},"Довжина, ємність та доступ до символів std::string","\u002Fcpp\u002Fstd-string-capacity-access","02.cpp\u002F41.std-string-capacity-access",{"title":1881,"path":1882,"stem":1883},"Модифікація std::string: присвоювання, додавання, вставка, видалення та заміна","\u002Fcpp\u002Fstd-string-modification","02.cpp\u002F42.std-string-modification",{"title":1885,"path":1886,"stem":1887},"Пошук у std::string: find, npos та практичні патерни","\u002Fcpp\u002Fstd-string-search","02.cpp\u002F43.std-string-search",{"title":1889,"path":1890,"stem":1891},"std::string_view: невласницький погляд на рядок без копіювання","\u002Fcpp\u002Fstd-string-view","02.cpp\u002F44.std-string-view",{"title":1893,"path":1894,"stem":1895},"Об'єднання (union): один блок пам'яті, кілька інтерпретацій","\u002Fcpp\u002Funion","02.cpp\u002F45.union",{"title":1897,"path":1898,"stem":1899},"Організація коду: файли, препроцесор, простори імен","\u002Fcpp\u002Fmultifile-programs","02.cpp\u002F46.multifile-programs",{"title":1901,"path":1902,"stem":1903},"Робота з файлами: C-стиль (stdio.h)","\u002Fcpp\u002Fc-style-files","02.cpp\u002F47.c-style-files",{"title":1905,"path":1906,"stem":1907},"Робота з файлами: C++-стиль (fstream)","\u002Fcpp\u002Fcpp-style-files","02.cpp\u002F48.cpp-style-files",{"title":1909,"path":1910,"stem":1911},"План навчання: Курс C++ — Продовження (Статті 29–60+)","\u002Fcpp\u002Fcurriculum-plan","02.cpp\u002Fcurriculum-plan",{"title":1913,"icon":1914,"path":1915,"stem":1916,"children":1917,"page":59},"JavaScript","i-devicon-javascript","\u002Fjavascript","03.javascript",[1918,1944,1998,2020,2324,2362],{"title":1919,"icon":1920,"path":1921,"stem":1922,"children":1923,"page":59},"Events","i-lucide-mouse-pointer-click","\u002Fjavascript\u002Fevents","03.javascript\u002F01.events",[1924,1928,1932,1936,1940],{"title":1925,"path":1926,"stem":1927},"Вступ до подій браузера","\u002Fjavascript\u002Fevents\u002Fintro","03.javascript\u002F01.events\u002F01.intro",{"title":1929,"path":1930,"stem":1931},"Бульбашковий механізм (Bubbling) та занурення (Capturing)","\u002Fjavascript\u002Fevents\u002Fbubbling-capturing","03.javascript\u002F01.events\u002F02.bubbling-capturing",{"title":1933,"path":1934,"stem":1935},"Делегування подій (Event Delegation)","\u002Fjavascript\u002Fevents\u002Fdelegate-events","03.javascript\u002F01.events\u002F03.delegate-events",{"title":1937,"path":1938,"stem":1939},"Типові дії браузера та preventDefault()","\u002Fjavascript\u002Fevents\u002Fprevent-default","03.javascript\u002F01.events\u002F04.prevent-default",{"title":1941,"path":1942,"stem":1943},"Запуск користувацьких подій (Custom Events)","\u002Fjavascript\u002Fevents\u002Fcustom-events","03.javascript\u002F01.events\u002F05.custom-events",{"title":1945,"icon":1946,"path":1947,"stem":1948,"children":1949,"page":59},"Network","i-lucide-globe","\u002Fjavascript\u002Fnetwork","03.javascript\u002F02.network",[1950,1954,1958,1962,1966,1970,1974,1978,1982,1986,1990,1994],{"title":1951,"path":1952,"stem":1953},"Fetch API - Сучасний підхід до HTTP-запитів","\u002Fjavascript\u002Fnetwork\u002F01-fetch-api","03.javascript\u002F02.network\u002F01-fetch-api",{"title":1955,"path":1956,"stem":1957},"FormData - Робота з формами та файлами","\u002Fjavascript\u002Fnetwork\u002F02-formdata","03.javascript\u002F02.network\u002F02-formdata",{"title":1959,"path":1960,"stem":1961},"Відстеження прогресу завантаження","\u002Fjavascript\u002Fnetwork\u002F03-download-progress","03.javascript\u002F02.network\u002F03-download-progress",{"title":1963,"path":1964,"stem":1965},"Переривання fetch-запитів","\u002Fjavascript\u002Fnetwork\u002F04-abort-requests","03.javascript\u002F02.network\u002F04-abort-requests",{"title":1967,"path":1968,"stem":1969},"CORS - Запити між різними джерелами","\u002Fjavascript\u002Fnetwork\u002F05-cors","03.javascript\u002F02.network\u002F05-cors",{"title":1971,"path":1972,"stem":1973},"Fetch API - Повний довідник опцій","\u002Fjavascript\u002Fnetwork\u002F06-fetch-options","03.javascript\u002F02.network\u002F06-fetch-options",{"title":1975,"path":1976,"stem":1977},"URL Objects - Робота з посиланнями","\u002Fjavascript\u002Fnetwork\u002F07-url-objects","03.javascript\u002F02.network\u002F07-url-objects",{"title":1979,"path":1980,"stem":1981},"XMLHttpRequest - AJAX та низькорівневі запити","\u002Fjavascript\u002Fnetwork\u002F08-xmlhttprequest","03.javascript\u002F02.network\u002F08-xmlhttprequest",{"title":1983,"path":1984,"stem":1985},"Відновлюване завантаження файлів","\u002Fjavascript\u002Fnetwork\u002F09-resumable-upload","03.javascript\u002F02.network\u002F09-resumable-upload",{"title":1987,"path":1988,"stem":1989},"Cookies, document.cookie та світ після \"Cookiepocalypse\"","\u002Fjavascript\u002Fnetwork\u002F10-cookies","03.javascript\u002F02.network\u002F10-cookies",{"title":1991,"path":1992,"stem":1993},"js-cookie: Керування Cookies без Болю","\u002Fjavascript\u002Fnetwork\u002F11-js-cookie","03.javascript\u002F02.network\u002F11-js-cookie",{"title":1995,"path":1996,"stem":1997},"Axios: Потужний HTTP-клієнт для JavaScript","\u002Fjavascript\u002Fnetwork\u002F12-axios","03.javascript\u002F02.network\u002F12-axios",{"title":1999,"icon":2000,"path":2001,"stem":2002,"children":2003,"page":59},"Bom","i-lucide-monitor","\u002Fjavascript\u002Fbom","03.javascript\u002F03.bom",[2004,2008,2012,2016],{"title":2005,"path":2006,"stem":2007},"LocalStorage, SessionStorage та patterns збереження даних","\u002Fjavascript\u002Fbom\u002F01-localstorage","03.javascript\u002F03.bom\u002F01-localstorage",{"title":2009,"path":2010,"stem":2011},"Location Object - Керування адресою сторінки","\u002Fjavascript\u002Fbom\u002F02-location-object","03.javascript\u002F03.bom\u002F02-location-object",{"title":2013,"path":2014,"stem":2015},"History API - Керування історією браузера","\u002Fjavascript\u002Fbom\u002F03-history-api","03.javascript\u002F03.bom\u002F03-history-api",{"title":2017,"path":2018,"stem":2019},"Navigator Object - Ідентифікація та Можливості Пристрою","\u002Fjavascript\u002Fbom\u002F04-navigator-object","03.javascript\u002F03.bom\u002F04-navigator-object",{"title":2021,"icon":2022,"path":2023,"stem":2024,"children":2025},"React","i-devicon-react","\u002Fjavascript\u002Freact","03.javascript\u002F04.react\u002Findex",[2026,2027,2031,2035,2039,2043,2106,2141,2293],{"title":2021,"path":2023,"stem":2024},{"title":2028,"path":2029,"stem":2030},"Робота з Формами в React","\u002Fjavascript\u002Freact\u002Freact-forms","03.javascript\u002F04.react\u002F01.react-forms",{"title":2032,"path":2033,"stem":2034},"React Hook Form: Професійна Робота з Формами","\u002Fjavascript\u002Freact\u002Freact-hook-form","03.javascript\u002F04.react\u002F02.react-hook-form",{"title":2036,"path":2037,"stem":2038},"React Hook Form: Глибоке Розуміння Архітектури та Оптимізації","\u002Fjavascript\u002Freact\u002Freact-hook-form-new","03.javascript\u002F04.react\u002F02.react-hook-form-new",{"title":2040,"path":2041,"stem":2042},"Axios та React: Професійна Архітектура Запитів","\u002Fjavascript\u002Freact\u002Fdata-fetching-axios","03.javascript\u002F04.react\u002F03.data-fetching-axios",{"title":2044,"icon":132,"path":2045,"stem":2046,"children":2047},"Tanstack Query","\u002Fjavascript\u002Freact\u002Ftanstack-query","03.javascript\u002F04.react\u002F04.tanstack-query\u002Findex",[2048,2050,2054,2058,2062,2066,2070,2074,2078,2082,2086,2090,2094,2098,2102],{"title":2049,"path":2045,"stem":2046},"TanStack Query: Майстерність Керування Станом Сервера",{"title":2051,"path":2052,"stem":2053},"Парадигма Server State: Чому useEffect недостатньо","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fserver-state-paradigm","03.javascript\u002F04.react\u002F04.tanstack-query\u002F01.server-state-paradigm",{"title":2055,"path":2056,"stem":2057},"Встановлення та Налаштування: Фундамент","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Finstallation-and-devtools","03.javascript\u002F04.react\u002F04.tanstack-query\u002F02.installation-and-devtools",{"title":2059,"path":2060,"stem":2061},"Основи Запитів та Магія Ключів","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fquery-basics-and-keys","03.javascript\u002F04.react\u002F04.tanstack-query\u002F03.query-basics-and-keys",{"title":2063,"path":2064,"stem":2065},"Синхронізація Даних: Життєвий Цикл Запиту","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fdata-synchronization","03.javascript\u002F04.react\u002F04.tanstack-query\u002F04.data-synchronization",{"title":2067,"path":2068,"stem":2069},"Мутації та Інвалідація: Зміна Даних","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fmutations-and-invalidation","03.javascript\u002F04.react\u002F04.tanstack-query\u002F05.mutations-and-invalidation",{"title":2071,"path":2072,"stem":2073},"Оптимістичні Оновлення: Швидше за Світло","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Foptimistic-updates","03.javascript\u002F04.react\u002F04.tanstack-query\u002F06.optimistic-updates",{"title":2075,"path":2076,"stem":2077},"Пагінація та Infinite Scroll","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fpagination-and-load-more","03.javascript\u002F04.react\u002F04.tanstack-query\u002F07.pagination-and-load-more",{"title":2079,"path":2080,"stem":2081},"Просунуті Патерни та Оптимізація","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fadvanced-patterns","03.javascript\u002F04.react\u002F04.tanstack-query\u002F08.advanced-patterns",{"title":2083,"path":2084,"stem":2085},"Архітектура та Best Practices","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Farchitecture-and-best-practices","03.javascript\u002F04.react\u002F04.tanstack-query\u002F09.architecture-and-best-practices",{"title":2087,"path":2088,"stem":2089},"Server-Side Rendering (SSR) та Гідратація","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fserver-side-rendering","03.javascript\u002F04.react\u002F04.tanstack-query\u002F10.server-side-rendering",{"title":2091,"path":2092,"stem":2093},"Стратегії Тестування","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Ftesting-strategies","03.javascript\u002F04.react\u002F04.tanstack-query\u002F11.testing-strategies",{"title":2095,"path":2096,"stem":2097},"Аутентифікація та Обробка Помилок","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fauthentication-and-errors","03.javascript\u002F04.react\u002F04.tanstack-query\u002F12.authentication-and-errors",{"title":2099,"path":2100,"stem":2101},"React Suspense та Майбутнє","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Freact-suspense","03.javascript\u002F04.react\u002F04.tanstack-query\u002F13.react-suspense",{"title":2103,"path":2104,"stem":2105},"Глибоке Занурення в Продуктивність","\u002Fjavascript\u002Freact\u002Ftanstack-query\u002Fperformance-deep-dive","03.javascript\u002F04.react\u002F04.tanstack-query\u002F14.performance-deep-dive",{"title":2107,"icon":2022,"path":2108,"stem":2109,"children":2110},"React Router","\u002Fjavascript\u002Freact\u002Freact-router","03.javascript\u002F04.react\u002F05.react-router\u002Findex",[2111,2113,2117,2121,2125,2129,2133,2137],{"title":2112,"path":2108,"stem":2109},"React Router: Навігаційна система сучасного вебу",{"title":2114,"path":2115,"stem":2116},"Налаштування та Базовий Роутинг","\u002Fjavascript\u002Freact\u002Freact-router\u002Fsetup-and-basic-routing","03.javascript\u002F04.react\u002F05.react-router\u002F01.setup-and-basic-routing",{"title":2118,"path":2119,"stem":2120},"Динамічна Навігація","\u002Fjavascript\u002Freact\u002Freact-router\u002Fnavigation-and-links","03.javascript\u002F04.react\u002F05.react-router\u002F02.navigation-and-links",{"title":2122,"path":2123,"stem":2124},"Вкладені Маршрути та Макети","\u002Fjavascript\u002Freact\u002Freact-router\u002Fnested-routes-and-layouts","03.javascript\u002F04.react\u002F05.react-router\u002F03.nested-routes-and-layouts",{"title":2126,"path":2127,"stem":2128},"Динамічні Маршрути та Параметри","\u002Fjavascript\u002Freact\u002Freact-router\u002Fdynamic-routing","03.javascript\u002F04.react\u002F05.react-router\u002F04.dynamic-routing",{"title":2130,"path":2131,"stem":2132},"Data APIs: Loaders та Actions","\u002Fjavascript\u002Freact\u002Freact-router\u002Fdata-loading","03.javascript\u002F04.react\u002F05.react-router\u002F05.data-loading",{"title":2134,"path":2135,"stem":2136},"Просунуті Патерни","\u002Fjavascript\u002Freact\u002Freact-router\u002Fadvanced-patterns","03.javascript\u002F04.react\u002F05.react-router\u002F06.advanced-patterns",{"title":2138,"path":2139,"stem":2140},"Legacy Routing: Компонентний підхід","\u002Fjavascript\u002Freact\u002Freact-router\u002Flegacy-routing","03.javascript\u002F04.react\u002F05.react-router\u002F07.legacy-routing",{"title":2142,"icon":132,"path":2143,"stem":2144,"children":2145},"Redux","\u002Fjavascript\u002Freact\u002Fredux","03.javascript\u002F04.react\u002F06.redux\u002Findex",[2146,2148,2164,2193,2202,2223,2239,2268],{"title":2147,"path":2143,"stem":2144},"Redux: Еволюція управління станом",{"title":14,"icon":15,"path":2149,"stem":2150,"children":2151,"page":59},"\u002Fjavascript\u002Freact\u002Fredux\u002Ffundamentals","03.javascript\u002F04.react\u002F06.redux\u002F01.fundamentals",[2152,2156,2160],{"title":2153,"path":2154,"stem":2155},"Вступ до State Management","\u002Fjavascript\u002Freact\u002Fredux\u002Ffundamentals\u002Fintro-state-management","03.javascript\u002F04.react\u002F06.redux\u002F01.fundamentals\u002F01.intro-state-management",{"title":2157,"path":2158,"stem":2159},"Філософія Redux та Три Принципи","\u002Fjavascript\u002Freact\u002Fredux\u002Ffundamentals\u002Fredux-philosophy","03.javascript\u002F04.react\u002F06.redux\u002F01.fundamentals\u002F02.redux-philosophy",{"title":2161,"path":2162,"stem":2163},"Чисті функції та Іммутабельність","\u002Fjavascript\u002Freact\u002Fredux\u002Ffundamentals\u002Fpure-functions-immutability","03.javascript\u002F04.react\u002F06.redux\u002F01.fundamentals\u002F03.pure-functions-immutability",{"title":2165,"icon":132,"path":2166,"stem":2167,"children":2168,"page":59},"Classic Redux","\u002Fjavascript\u002Freact\u002Fredux\u002Fclassic-redux","03.javascript\u002F04.react\u002F06.redux\u002F02.classic-redux",[2169,2173,2177,2181,2185,2189],{"title":2170,"path":2171,"stem":2172},"Створення Store (Classic Redux)","\u002Fjavascript\u002Freact\u002Fredux\u002Fclassic-redux\u002Fstore-setup","03.javascript\u002F04.react\u002F06.redux\u002F02.classic-redux\u002F01.store-setup",{"title":2174,"path":2175,"stem":2176},"Actions, Constants та Action Creators","\u002Fjavascript\u002Freact\u002Fredux\u002Fclassic-redux\u002Factions-constants","03.javascript\u002F04.react\u002F06.redux\u002F02.classic-redux\u002F02.actions-constants",{"title":2178,"path":2179,"stem":2180},"Логіка Reducers","\u002Fjavascript\u002Freact\u002Fredux\u002Fclassic-redux\u002Freducers","03.javascript\u002F04.react\u002F06.redux\u002F02.classic-redux\u002F03.reducers",{"title":2182,"path":2183,"stem":2184},"Комбінування Reducers (Root Reducer)","\u002Fjavascript\u002Freact\u002Fredux\u002Fclassic-redux\u002Fdata-flow","03.javascript\u002F04.react\u002F06.redux\u002F02.classic-redux\u002F04.data-flow",{"title":2186,"path":2187,"stem":2188},"Підключення до React (React-Redux)","\u002Fjavascript\u002Freact\u002Fredux\u002Fclassic-redux\u002Freact-redux-connection","03.javascript\u002F04.react\u002F06.redux\u002F02.classic-redux\u002F05.react-redux-connection",{"title":2190,"path":2191,"stem":2192},"Middleware та Асинхронність (Redux Thunk)","\u002Fjavascript\u002Freact\u002Fredux\u002Fclassic-redux\u002Fmiddleware-thunk","03.javascript\u002F04.react\u002F06.redux\u002F02.classic-redux\u002F06.middleware-thunk",{"title":2194,"icon":132,"path":2195,"stem":2196,"children":2197,"page":59},"Transition To Rtk","\u002Fjavascript\u002Freact\u002Fredux\u002Ftransition-to-rtk","03.javascript\u002F04.react\u002F06.redux\u002F03.transition-to-rtk",[2198],{"title":2199,"path":2200,"stem":2201},"Проблеми класичного Redux","\u002Fjavascript\u002Freact\u002Fredux\u002Ftransition-to-rtk\u002Fproblems-with-classic","03.javascript\u002F04.react\u002F06.redux\u002F03.transition-to-rtk\u002F01.problems-with-classic",{"title":2203,"icon":132,"path":2204,"stem":2205,"children":2206,"page":59},"Redux Toolkit","\u002Fjavascript\u002Freact\u002Fredux\u002Fredux-toolkit","03.javascript\u002F04.react\u002F06.redux\u002F04.redux-toolkit",[2207,2211,2215,2219],{"title":2208,"path":2209,"stem":2210},"Налаштування Store з configureStore","\u002Fjavascript\u002Freact\u002Fredux\u002Fredux-toolkit\u002Fconfigure-store","03.javascript\u002F04.react\u002F06.redux\u002F04.redux-toolkit\u002F01.configure-store",{"title":2212,"path":2213,"stem":2214},"createSlice: Революція в Redux","\u002Fjavascript\u002Freact\u002Fredux\u002Fredux-toolkit\u002Fcreate-slice","03.javascript\u002F04.react\u002F06.redux\u002F04.redux-toolkit\u002F02.create-slice",{"title":2216,"path":2217,"stem":2218},"Асинхронність з createAsyncThunk","\u002Fjavascript\u002Freact\u002Fredux\u002Fredux-toolkit\u002Fasync-thunks","03.javascript\u002F04.react\u002F06.redux\u002F04.redux-toolkit\u002F03.async-thunks",{"title":2220,"path":2221,"stem":2222},"04. Entity Adapter: Керування нормалізованим станом","\u002Fjavascript\u002Freact\u002Fredux\u002Fredux-toolkit\u002Fentity-adapter","03.javascript\u002F04.react\u002F06.redux\u002F04.redux-toolkit\u002F04.entity-adapter",{"title":2224,"icon":92,"path":2225,"stem":2226,"children":2227,"page":59},"Advanced","\u002Fjavascript\u002Freact\u002Fredux\u002Fadvanced","03.javascript\u002F04.react\u002F06.redux\u002F05.advanced",[2228,2232,2236],{"title":2229,"path":2230,"stem":2231},"Мемоізація та Селектори: Повний Гайд по Reselect","\u002Fjavascript\u002Freact\u002Fredux\u002Fadvanced\u002Fselectors-reselect","03.javascript\u002F04.react\u002F06.redux\u002F05.advanced\u002F01.selectors-reselect",{"title":2233,"path":2234,"stem":2235},"RTK Query: Архітектура Серверного Кешу","\u002Fjavascript\u002Freact\u002Fredux\u002Fadvanced\u002Frtk-query-intro","03.javascript\u002F04.react\u002F06.redux\u002F05.advanced\u002F02.rtk-query-intro",{"title":2083,"path":2237,"stem":2238},"\u002Fjavascript\u002Freact\u002Fredux\u002Fadvanced\u002Farchitecture-best-practices","03.javascript\u002F04.react\u002F06.redux\u002F05.advanced\u002F03.architecture-best-practices",{"title":2240,"icon":132,"path":2241,"stem":2242,"children":2243,"page":59},"Project Kanban","\u002Fjavascript\u002Freact\u002Fredux\u002Fproject-kanban","03.javascript\u002F04.react\u002F06.redux\u002F06.project-kanban",[2244,2248,2252,2256,2260,2264],{"title":2245,"path":2246,"stem":2247},"Проєкт: Kanban Board (Trello Clone)","\u002Fjavascript\u002Freact\u002Fredux\u002Fproject-kanban\u002Fproject-overview","03.javascript\u002F04.react\u002F06.redux\u002F06.project-kanban\u002F01.project-overview",{"title":2249,"path":2250,"stem":2251},"Налаштування та Типізація","\u002Fjavascript\u002Freact\u002Fredux\u002Fproject-kanban\u002Fsetup-and-types","03.javascript\u002F04.react\u002F06.redux\u002F06.project-kanban\u002F02.setup-and-types",{"title":2253,"path":2254,"stem":2255},"Board Slice: Серце Дошки","\u002Fjavascript\u002Freact\u002Fredux\u002Fproject-kanban\u002Fboard-slice","03.javascript\u002F04.react\u002F06.redux\u002F06.project-kanban\u002F03.board-slice",{"title":2257,"path":2258,"stem":2259},"Логіка Drag & Drop","\u002Fjavascript\u002Freact\u002Fredux\u002Fproject-kanban\u002Fdrag-and-drop-logic","03.javascript\u002F04.react\u002F06.redux\u002F06.project-kanban\u002F04.drag-and-drop-logic",{"title":2261,"path":2262,"stem":2263},"Інтеграція з RTK Query","\u002Fjavascript\u002Freact\u002Fredux\u002Fproject-kanban\u002Frtk-query-integration","03.javascript\u002F04.react\u002F06.redux\u002F06.project-kanban\u002F05.rtk-query-integration",{"title":2265,"path":2266,"stem":2267},"Optimistic Updates","\u002Fjavascript\u002Freact\u002Fredux\u002Fproject-kanban\u002Foptimistic-updates","03.javascript\u002F04.react\u002F06.redux\u002F06.project-kanban\u002F06.optimistic-updates",{"title":2269,"icon":132,"path":2270,"stem":2271,"children":2272,"page":59},"Testing","\u002Fjavascript\u002Freact\u002Fredux\u002Ftesting","03.javascript\u002F04.react\u002F06.redux\u002F07.testing",[2273,2277,2281,2285,2289],{"title":2274,"path":2275,"stem":2276},"Тестування Redux","\u002Fjavascript\u002Freact\u002Fredux\u002Ftesting\u002Fintro-testing","03.javascript\u002F04.react\u002F06.redux\u002F07.testing\u002F01.intro-testing",{"title":2278,"path":2279,"stem":2280},"Тестування Reducers","\u002Fjavascript\u002Freact\u002Fredux\u002Ftesting\u002Ftesting-reducers","03.javascript\u002F04.react\u002F06.redux\u002F07.testing\u002F02.testing-reducers",{"title":2282,"path":2283,"stem":2284},"Тестування Селекторів","\u002Fjavascript\u002Freact\u002Fredux\u002Ftesting\u002Ftesting-selectors","03.javascript\u002F04.react\u002F06.redux\u002F07.testing\u002F03.testing-selectors",{"title":2286,"path":2287,"stem":2288},"Тестування Компонентів (Integration)","\u002Fjavascript\u002Freact\u002Fredux\u002Ftesting\u002Ftesting-components","03.javascript\u002F04.react\u002F06.redux\u002F07.testing\u002F04.testing-components",{"title":2290,"path":2291,"stem":2292},"Тестування Async Thunks","\u002Fjavascript\u002Freact\u002Fredux\u002Ftesting\u002Ftesting-thunks","03.javascript\u002F04.react\u002F06.redux\u002F07.testing\u002F05.testing-thunks",{"title":2294,"icon":132,"path":2295,"stem":2296,"children":2297},"Ui Libraries","\u002Fjavascript\u002Freact\u002Fui-libraries","03.javascript\u002F04.react\u002F07.ui-libraries\u002Findex",[2298,2300,2304,2308,2312,2316,2320],{"title":2299,"path":2295,"stem":2296},"UI Бібліотеки в React",{"title":2301,"path":2302,"stem":2303},"Вступ до UI Бібліотек: Навіщо Винаходити Велосипед Двічі?","\u002Fjavascript\u002Freact\u002Fui-libraries\u002Fintroduction-to-ui-libraries","03.javascript\u002F04.react\u002F07.ui-libraries\u002F01.introduction-to-ui-libraries",{"title":2305,"path":2306,"stem":2307},"Філософія shadcn\u002Fui: \"Not a Component Library\"","\u002Fjavascript\u002Freact\u002Fui-libraries\u002Fshadcn-philosophy","03.javascript\u002F04.react\u002F07.ui-libraries\u002F02.shadcn-philosophy",{"title":2309,"path":2310,"stem":2311},"Установка та Налаштування shadcn\u002Fui","\u002Fjavascript\u002Freact\u002Fui-libraries\u002Fshadcn-installation","03.javascript\u002F04.react\u002F07.ui-libraries\u002F03.shadcn-installation",{"title":2313,"path":2314,"stem":2315},"Базові Компоненти shadcn\u002Fui: Фундамент Інтерфейсу","\u002Fjavascript\u002Freact\u002Fui-libraries\u002Fshadcn-components-basics","03.javascript\u002F04.react\u002F07.ui-libraries\u002F04.shadcn-components-basics",{"title":2317,"path":2318,"stem":2319},"Компоненти Форм: Побудова Інтерактивних Form","\u002Fjavascript\u002Freact\u002Fui-libraries\u002Fshadcn-components-forms","03.javascript\u002F04.react\u002F07.ui-libraries\u002F05.shadcn-components-forms",{"title":2321,"path":2322,"stem":2323},"Складні Компоненти: Dialog, Dropdown, Table та Command","\u002Fjavascript\u002Freact\u002Fui-libraries\u002Fshadcn-components-advanced","03.javascript\u002F04.react\u002F07.ui-libraries\u002F06.shadcn-components-advanced",{"title":2325,"icon":2326,"path":2327,"stem":2328,"children":2329,"page":59},"TypeScript","i-devicon-typescript","\u002Fjavascript\u002Ftypescript","03.javascript\u002F05.typescript",[2330,2334,2338,2342,2346,2350,2354,2358],{"title":2331,"path":2332,"stem":2333},"TypeScript: Броня для вашого коду","\u002Fjavascript\u002Ftypescript\u002Fintro-and-basic-types","03.javascript\u002F05.typescript\u002F01.intro-and-basic-types",{"title":2335,"path":2336,"stem":2337},"Майстерність Моделювання Даних: Інтерфейси та Просунуті Типи","\u002Fjavascript\u002Ftypescript\u002Finterfaces-and-advanced-types","03.javascript\u002F05.typescript\u002F02.interfaces-and-advanced-types",{"title":2339,"path":2340,"stem":2341},"Алхімія Типів: Generics та Utility Types","\u002Fjavascript\u002Ftypescript\u002Fgenerics-and-utilities","03.javascript\u002F05.typescript\u002F03.generics-and-utilities",{"title":2343,"path":2344,"stem":2345},"Архітектура та Шаблони: Класи в TypeScript","\u002Fjavascript\u002Ftypescript\u002Fclasses-and-oop","03.javascript\u002F05.typescript\u002F04.classes-and-oop",{"title":2347,"path":2348,"stem":2349},"Продакшн та Екосистема: Advanced Config & Workflow","\u002Fjavascript\u002Ftypescript\u002Fadvanced-patterns-and-config","03.javascript\u002F05.typescript\u002F05.advanced-patterns-and-config",{"title":2351,"path":2352,"stem":2353},"TypeScript у світі React","\u002Fjavascript\u002Ftypescript\u002Freact-basics","03.javascript\u002F05.typescript\u002F06.react-basics",{"title":2355,"path":2356,"stem":2357},"React + TypeScript: Продвинуті патерни","\u002Fjavascript\u002Ftypescript\u002Freact-advanced","03.javascript\u002F05.typescript\u002F07.react-advanced",{"title":2359,"path":2360,"stem":2361},"React + TypeScript: Екосистема та бібліотеки","\u002Fjavascript\u002Ftypescript\u002Freact-ecosystem","03.javascript\u002F05.typescript\u002F08.react-ecosystem",{"title":2363,"path":2364,"stem":2365},"Atomic Design","\u002Fjavascript\u002Fatomic-design","03.javascript\u002F2.atomic-design",{"title":2367,"icon":2368,"path":2369,"stem":2370,"children":2371,"page":59},"Java","i-devicon-java","\u002Fjava","04.java",[2372,2375,2378,2382,2386,2390,2394],{"title":162,"path":2373,"stem":2374},"\u002Fjava\u002Fdata-mapper-part1","04.java\u002F01.data-mapper-part1",{"title":166,"path":2376,"stem":2377},"\u002Fjava\u002Fdata-mapper-part2","04.java\u002F02.data-mapper-part2",{"title":2379,"path":2380,"stem":2381},"Service Layer: Організація бізнес-логіки","\u002Fjava\u002Fservice-layer","04.java\u002F03.service-layer",{"title":2383,"path":2384,"stem":2385},"Rich Domain Model та State Pattern","\u002Fjava\u002Frich-domain-model","04.java\u002F04.rich-domain-model",{"title":2387,"path":2388,"stem":2389},"Патерни для складної бізнес-логіки","\u002Fjava\u002Fbusiness-logic-patterns","04.java\u002F05.business-logic-patterns",{"title":2391,"path":2392,"stem":2393},"Обробка помилок та валідація","\u002Fjava\u002Ferror-handling-validation","04.java\u002F06.error-handling-validation",{"title":2395,"path":2396,"stem":2397,"children":2398,"page":59},"Проектування баз даних","\u002Fjava\u002Fpr2","04.java\u002Fpr2",[2399,2403,2407,2411,2415,2419,2423,2427,2431,2435,2439,2443,2447,2451,2455,2459,2463,2467,2471,2475,2479,2483,2487,2491,2495,2499,2503,2507,2511,2515,2519,2523,2527,2531,2535,2539,2543],{"title":2400,"path":2401,"stem":2402},"Концептуальне моделювання: Мистецтво розуміння предметної області","\u002Fjava\u002Fpr2\u002Fconceptual-modeling","04.java\u002Fpr2\u002F01.conceptual-modeling",{"title":2404,"path":2405,"stem":2406},"Логічне моделювання: Від бізнес-ідей до структур даних","\u002Fjava\u002Fpr2\u002Flogical-modeling","04.java\u002Fpr2\u002F02.logical-modeling",{"title":2408,"path":2409,"stem":2410},"Нормалізація: Гігієна даних та боротьба з аномаліями","\u002Fjava\u002Fpr2\u002Fnormalization","04.java\u002Fpr2\u002F03.normalization",{"title":2412,"path":2413,"stem":2414},"Фізична схема: Від абстракції до DDL","\u002Fjava\u002Fpr2\u002Fphysical-schema","04.java\u002Fpr2\u002F04.physical-schema",{"title":2416,"path":2417,"stem":2418},"Архітектурна класифікація таблиць","\u002Fjava\u002Fpr2\u002Ftable-classification","04.java\u002Fpr2\u002F05.table-classification",{"title":2420,"path":2421,"stem":2422},"Database Migrations: Версіонування схеми з Flyway","\u002Fjava\u002Fpr2\u002Fdatabase-migrations","04.java\u002Fpr2\u002F06.database-migrations",{"title":2424,"path":2425,"stem":2426},"А що, якби це була не реляційна БД?","\u002Fjava\u002Fpr2\u002Fbeyond-relational","04.java\u002Fpr2\u002F07.beyond-relational",{"title":2428,"path":2429,"stem":2430},"Object-Relational Impedance Mismatch: Два світи, що не хочуть дружити","\u002Fjava\u002Fpr2\u002Fimpedance-mismatch","04.java\u002Fpr2\u002F09.impedance-mismatch",{"title":2432,"path":2433,"stem":2434},"JDBC: Перший контакт із базою даних","\u002Fjava\u002Fpr2\u002Fjdbc-fundamentals","04.java\u002Fpr2\u002F10.jdbc-fundamentals",{"title":2436,"path":2437,"stem":2438},"Якість коду: Spotless, SpotBugs та SonarQube","\u002Fjava\u002Fpr2\u002F10a.code-quality","04.java\u002Fpr2\u002F10a.code-quality",{"title":2440,"path":2441,"stem":2442},"Connection Pool: Патерн Object Pool для JDBC-з'єднань","\u002Fjava\u002Fpr2\u002Fconnection-pool","04.java\u002Fpr2\u002F11.connection-pool",{"title":2444,"path":2445,"stem":2446},"Row Data Gateway: Об'єкт як обгортка рядка таблиці","\u002Fjava\u002Fpr2\u002Frow-data-gateway","04.java\u002Fpr2\u002F12.row-data-gateway",{"title":2448,"path":2449,"stem":2450},"Table Data Gateway: Фасад таблиці як архітектурний відступ","\u002Fjava\u002Fpr2\u002Ftable-data-gateway","04.java\u002Fpr2\u002F13.table-data-gateway",{"title":2452,"path":2453,"stem":2454},"Repository + Data Mapper: Правильна шарова архітектура з JDBC","\u002Fjava\u002Fpr2\u002Frepository-data-mapper","04.java\u002Fpr2\u002F14.repository-data-mapper",{"title":2456,"path":2457,"stem":2458},"Identity Map: Кешування сутностей у рамках сесії","\u002Fjava\u002Fpr2\u002Fidentity-map","04.java\u002Fpr2\u002F15.identity-map",{"title":2460,"path":2461,"stem":2462},"Unit of Work: Відстеження змін і координація JDBC-транзакцій","\u002Fjava\u002Fpr2\u002Funit-of-work","04.java\u002Fpr2\u002F16.unit-of-work",{"title":2464,"path":2465,"stem":2466},"Strategy: Замінювані SQL-стратегії для підтримки різних СУБД","\u002Fjava\u002Fpr2\u002Fstrategy-sql","04.java\u002Fpr2\u002F17.strategy-sql",{"title":2468,"path":2469,"stem":2470},"Proxy: Lazy Loading для One-To-Many колекцій","\u002Fjava\u002Fpr2\u002Fproxy-lazy-loading","04.java\u002Fpr2\u002F18.proxy-lazy-loading",{"title":2472,"path":2473,"stem":2474},"Generic Repository через Java Reflection: анотації та динамічний SQL","\u002Fjava\u002Fpr2\u002Fgeneric-repository-reflection","04.java\u002Fpr2\u002F19.generic-repository-reflection",{"title":2476,"path":2477,"stem":2478},"Specification Pattern: Композиція бізнес-правил для складних запитів","\u002Fjava\u002Fpr2\u002Fspecification-pattern","04.java\u002Fpr2\u002F20.specification-pattern",{"title":2480,"path":2481,"stem":2482},"Розширені можливості Specification Pattern: підзапити, агрегації та гібридний підхід","\u002Fjava\u002Fpr2\u002F20a.advanced-specifications","04.java\u002Fpr2\u002F20a.advanced-specifications",{"title":2484,"path":2485,"stem":2486},"Асинхронність у JDBC: Від блокуючих викликів до CompletableFuture","\u002Fjava\u002Fpr2\u002Fasynchronous-jdbc","04.java\u002Fpr2\u002F21.asynchronous-jdbc",{"title":2488,"path":2489,"stem":2490},"Інтеграційне тестування JDBC-репозиторіїв: Embedded H2 та патерн AAA","\u002Fjava\u002Fpr2\u002Fintegration-testing-h2","04.java\u002Fpr2\u002F22.integration-testing-h2",{"title":2492,"path":2493,"stem":2494},"Testcontainers: Тестування з реальною PostgreSQL у Docker-контейнерах","\u002Fjava\u002Fpr2\u002Fintegration-testing-testcontainers","04.java\u002Fpr2\u002F23.integration-testing-testcontainers",{"title":2496,"path":2497,"stem":2498},"Google Guice: Впровадження залежностей у JavaFX-проєкті","\u002Fjava\u002Fpr2\u002Fdependency-injection-guice","04.java\u002Fpr2\u002F24.dependency-injection-guice",{"title":2500,"path":2501,"stem":2502},"JavaFX: Основи побудови графічних інтерфейсів","\u002Fjava\u002Fpr2\u002Fjavafx-fundamentals","04.java\u002Fpr2\u002F25.javafx-fundamentals",{"title":2504,"path":2505,"stem":2506},"Properties та Bindings: Реактивність у JavaFX","\u002Fjava\u002Fpr2\u002Fjavafx-properties-bindings","04.java\u002Fpr2\u002F26.javafx-properties-bindings",{"title":2508,"path":2509,"stem":2510},"MVC vs MVP vs MVVM: Еволюція архітектурних патернів UI","\u002Fjava\u002Fpr2\u002Fui-architecture-patterns","04.java\u002Fpr2\u002F27.ui-architecture-patterns",{"title":2512,"path":2513,"stem":2514},"MVVM на практиці: Побудова ViewModel","\u002Fjava\u002Fpr2\u002Fmvvm-viewmodel-implementation","04.java\u002Fpr2\u002F28.mvvm-viewmodel-implementation",{"title":2516,"path":2517,"stem":2518},"View та Controller: Зв'язування з ViewModel через FXML","\u002Fjava\u002Fpr2\u002Fmvvm-view-controller","04.java\u002Fpr2\u002F29.mvvm-view-controller",{"title":2520,"path":2521,"stem":2522},"Інтеграція MVVM з Guice: Автоматична ін'єкція залежностей","\u002Fjava\u002Fpr2\u002Fmvvm-guice-integration","04.java\u002Fpr2\u002F30.mvvm-guice-integration",{"title":2524,"path":2525,"stem":2526},"Валідація та обробка помилок у MVVM","\u002Fjava\u002Fpr2\u002Fmvvm-validation-error-handling","04.java\u002Fpr2\u002F31.mvvm-validation-error-handling",{"title":2528,"path":2529,"stem":2530},"Навігація та управління екранами у JavaFX MVVM","\u002Fjava\u002Fpr2\u002Fmvvm-navigation-screen-management","04.java\u002Fpr2\u002F32.mvvm-navigation-screen-management",{"title":2532,"path":2533,"stem":2534},"Тестування JavaFX MVVM-додатків","\u002Fjava\u002Fpr2\u002Fmvvm-testing","04.java\u002Fpr2\u002F33.mvvm-testing",{"title":2536,"path":2537,"stem":2538},"Стилізація та теми у JavaFX: CSS та User Experience","\u002Fjava\u002Fpr2\u002Fjavafx-styling-themes","04.java\u002Fpr2\u002F34.javafx-styling-themes",{"title":2540,"path":2541,"stem":2542},"AtlantaFX: Сучасні теми для JavaFX додатків","\u002Fjava\u002Fpr2\u002Fatlantafx-modern-themes","04.java\u002Fpr2\u002F35.atlantafx-modern-themes",{"title":2544,"path":2545,"stem":2546},"Пакування та розповсюдження JavaFX-додатків","\u002Fjava\u002Fpr2\u002Fjar-packaging-distribution","04.java\u002Fpr2\u002F36.jar-packaging-distribution",{"title":2548,"icon":2549,"path":2550,"stem":2551,"children":2552,"page":59},"Python","i-devicon-python","\u002Fpython","05.python",[2553,2557,2560,2564,2568,2572,2576,2580,2584,2588,2592,2596,2600,2604,2608,2669],{"title":2554,"path":2555,"stem":2556},"Модулі, Пакети та Віртуальні Середовища","\u002Fpython\u002Fmodules-packages-venv","05.python\u002F00.modules-packages-venv",{"title":71,"path":2558,"stem":2559},"\u002Fpython\u002Fclasses-objects","05.python\u002F01.classes-objects",{"title":2561,"path":2562,"stem":2563},"Інкапсуляція, Керування Доступом та Властивості","\u002Fpython\u002Fencapsulation","05.python\u002F02.encapsulation",{"title":2565,"path":2566,"stem":2567},"Наслідування, MRO та суперсила super()","\u002Fpython\u002Finheritance-mro","05.python\u002F03.inheritance-mro",{"title":2569,"path":2570,"stem":2571},"Абстракція — ABC проти Статичних Протоколів (PEP 544)","\u002Fpython\u002Fabstraction-protocols","05.python\u002F04.abstraction-protocols",{"title":2573,"path":2574,"stem":2575},"Магічні методи (Dunder) та Емуляція протоколів","\u002Fpython\u002Fdunder-methods","05.python\u002F05.dunder-methods",{"title":2577,"path":2578,"stem":2579},"Декоратори та Керування життєвим циклом методів","\u002Fpython\u002Fdecorators-static-class","05.python\u002F06.decorators-static-class",{"title":2581,"path":2582,"stem":2583},"Дескриптори — Магія доступу до атрибутів","\u002Fpython\u002Fdescriptors","05.python\u002F07.descriptors",{"title":2585,"path":2586,"stem":2587},"Метакласи — Динамічне створення класів під капотом CPython","\u002Fpython\u002Fmetaclasses","05.python\u002F08.metaclasses",{"title":2589,"path":2590,"stem":2591},"Dataclasses, NamedTuple та сучасні контейнери Python","\u002Fpython\u002Fmodern-containers","05.python\u002F09.modern-containers",{"title":2593,"path":2594,"stem":2595},"GIL та модель конкурентності CPython — фундамент перед потоками і процесами","\u002Fpython\u002Fgil-concurrency-intro","05.python\u002F11.gil-concurrency-intro",{"title":2597,"path":2598,"stem":2599},"Threading — конкурентність для I\u002FO-bound задач","\u002Fpython\u002Fthreading","05.python\u002F12.threading",{"title":2601,"path":2602,"stem":2603},"Multiprocessing — справжній паралелізм для CPU-bound задач","\u002Fpython\u002Fmultiprocessing","05.python\u002F13.multiprocessing",{"title":2605,"path":2606,"stem":2607},"asyncio — кооперативна конкурентність та event loop","\u002Fpython\u002Fasyncio","05.python\u002F14.asyncio",{"title":2609,"icon":92,"path":2610,"stem":2611,"children":2612,"page":59},"FastAPI","\u002Fpython\u002Ffastapi","05.python\u002Ffastapi",[2613,2617,2621,2625,2629,2633,2637,2641,2645,2649,2653,2657,2661,2665],{"title":2614,"path":2615,"stem":2616},"Глибокий Typing та Pydantic v2 — від анотацій до валідації","\u002Fpython\u002Ffastapi\u002Ftyping-pydantic","05.python\u002Ffastapi\u002F15.typing-pydantic",{"title":2618,"path":2619,"stem":2620},"WSGI, ASGI та Python Web-екосистема","\u002Fpython\u002Ffastapi\u002Fwsgi-asgi-ecosystem","05.python\u002Ffastapi\u002F16.wsgi-asgi-ecosystem",{"title":2622,"path":2623,"stem":2624},"FastAPI: Перший додаток, Uvicorn та OpenAPI","\u002Fpython\u002Ffastapi\u002Ffastapi-intro","05.python\u002Ffastapi\u002F17.fastapi-intro",{"title":2626,"path":2627,"stem":2628},"Маршрутизація, параметри запитів та APIRouter","\u002Fpython\u002Ffastapi\u002Ffastapi-routing-params","05.python\u002Ffastapi\u002F18.fastapi-routing-params",{"title":2630,"path":2631,"stem":2632},"Pydantic v2 у FastAPI — схеми, валідація та серіалізація","\u002Fpython\u002Ffastapi\u002Ffastapi-pydantic-schemas","05.python\u002Ffastapi\u002F19.fastapi-pydantic-schemas",{"title":2634,"path":2635,"stem":2636},"Dependency Injection — серце архітектури FastAPI","\u002Fpython\u002Ffastapi\u002Ffastapi-dependency-injection","05.python\u002Ffastapi\u002F20.fastapi-dependency-injection",{"title":2638,"path":2639,"stem":2640},"Обробка помилок, Middleware та CORS у FastAPI","\u002Fpython\u002Ffastapi\u002Ffastapi-errors-middleware","05.python\u002Ffastapi\u002F21.fastapi-errors-middleware",{"title":2642,"path":2643,"stem":2644},"SQLAlchemy 2.0 — ORM, Core та Async Engine","\u002Fpython\u002Ffastapi\u002Fsqlalchemy-orm","05.python\u002Ffastapi\u002F22.sqlalchemy-orm",{"title":2646,"path":2647,"stem":2648},"Alembic — міграції бази даних","\u002Fpython\u002Ffastapi\u002Falembic-migrations","05.python\u002Ffastapi\u002F23.alembic-migrations",{"title":2650,"path":2651,"stem":2652},"Repository Pattern та Clean Architecture у FastAPI","\u002Fpython\u002Ffastapi\u002Ffastapi-repository-clean-arch","05.python\u002Ffastapi\u002F24.fastapi-repository-clean-arch",{"title":2654,"path":2655,"stem":2656},"Автентифікація та авторизація — JWT, OAuth2, RBAC","\u002Fpython\u002Ffastapi\u002Ffastapi-auth-security","05.python\u002Ffastapi\u002F25.fastapi-auth-security",{"title":2658,"path":2659,"stem":2660},"Тестування FastAPI — pytest, httpx, fixtures","\u002Fpython\u002Ffastapi\u002Ffastapi-testing","05.python\u002Ffastapi\u002F26.fastapi-testing",{"title":2662,"path":2663,"stem":2664},"Async на повну — Background Tasks, WebSockets, SSE та Celery","\u002Fpython\u002Ffastapi\u002Ffastapi-async-advanced","05.python\u002Ffastapi\u002F27.fastapi-async-advanced",{"title":2666,"path":2667,"stem":2668},"Deployment — Docker, CI\u002FCD, Monitoring","\u002Fpython\u002Ffastapi\u002Ffastapi-deployment","05.python\u002Ffastapi\u002F28.fastapi-deployment",{"title":2670,"path":2671,"stem":2672},"[object Object]","\u002Fpython\u002Foop-plan","05.python\u002Foop-plan",{"title":2674,"icon":2675,"path":2676,"stem":2677,"children":2678,"page":59},"Бази даних","i-lucide-database","\u002Fdatabases","06.databases",[2679,2709,2732,2769,2798,2816,2850,2862,2871],{"title":2680,"icon":2681,"path":2682,"stem":2683,"children":2684,"page":59},"Intro","i-lucide-play","\u002Fdatabases\u002Fintro","06.databases\u002F01.intro",[2685,2689,2693,2697,2701,2705],{"title":2686,"path":2687,"stem":2688},"Введення в теорію баз даних","\u002Fdatabases\u002Fintro\u002Fintroduction-to-databases","06.databases\u002F01.intro\u002F01.introduction-to-databases",{"title":2690,"path":2691,"stem":2692},"Реляційна модель даних","\u002Fdatabases\u002Fintro\u002Frelational-model-theory","06.databases\u002F01.intro\u002F02.relational-model-theory",{"title":2694,"path":2695,"stem":2696},"ER-моделювання","\u002Fdatabases\u002Fintro\u002Fer-modeling","06.databases\u002F01.intro\u002F03.er-modeling",{"title":2698,"path":2699,"stem":2700},"Логічне проектування БД","\u002Fdatabases\u002Fintro\u002Flogical-schema","06.databases\u002F01.intro\u002F04.logical-schema",{"title":2702,"path":2703,"stem":2704},"Класифікація таблиць","\u002Fdatabases\u002Fintro\u002Ftable-classification","06.databases\u002F01.intro\u002F05.table-classification",{"title":2706,"path":2707,"stem":2708},"PlantUML для баз даних","\u002Fdatabases\u002Fintro\u002Fplantuml-diagrams","06.databases\u002F01.intro\u002F06.plantuml-diagrams",{"title":2710,"icon":2675,"path":2711,"stem":2712,"children":2713,"page":59},"MS SQL Server Start","\u002Fdatabases\u002Fms-sql-server-start","06.databases\u002F02.ms-sql-server-start",[2714,2718,2724,2728],{"title":2715,"path":2716,"stem":2717},"Типи даних у MS SQL Server","\u002Fdatabases\u002Fms-sql-server-start\u002Fdata-types","06.databases\u002F02.ms-sql-server-start\u002F01.data-types",{"title":2719,"path":2720,"stem":2721,"children":2722},"Індекси у MS SQL Server","\u002Fdatabases\u002Fms-sql-server-start\u002Fsql-indexes","06.databases\u002F02.ms-sql-server-start\u002F02.sql-indexes",[2723],{"title":2719,"path":2720,"stem":2721},{"title":2725,"path":2726,"stem":2727},"Системні бази даних MS SQL Server","\u002Fdatabases\u002Fms-sql-server-start\u002Fsystem-databases","06.databases\u002F02.ms-sql-server-start\u002F03.system-databases",{"title":2729,"path":2730,"stem":2731},"Огляд мови SQL та запитів","\u002Fdatabases\u002Fms-sql-server-start\u002Fsql-queries-overview","06.databases\u002F02.ms-sql-server-start\u002F04.sql-queries-overview",{"title":2733,"icon":2675,"path":2734,"stem":2735,"children":2736,"page":59},"SQL","\u002Fdatabases\u002Fsql","06.databases\u002F03.sql",[2737,2741,2745,2749,2753,2757,2761,2765],{"title":2738,"path":2739,"stem":2740},"Налаштування демонстраційної бази даних","\u002Fdatabases\u002Fsql\u002Fsample-database-setup","06.databases\u002F03.sql\u002F00.sample-database-setup",{"title":2742,"path":2743,"stem":2744},"DDL - Створення таблиць (CREATE TABLE)","\u002Fdatabases\u002Fsql\u002Fddl-create-table","06.databases\u002F03.sql\u002F01.ddl-create-table",{"title":2746,"path":2747,"stem":2748},"DDL - Зміна та видалення таблиць (ALTER, DROP)","\u002Fdatabases\u002Fsql\u002Fddl-alter-drop-table","06.databases\u002F03.sql\u002F02.ddl-alter-drop-table",{"title":2750,"path":2751,"stem":2752},"SELECT запити - Основи","\u002Fdatabases\u002Fsql\u002Fselect-queries-fundamentals","06.databases\u002F03.sql\u002F03.select-queries-fundamentals",{"title":2754,"path":2755,"stem":2756},"SELECT запити - Розширені можливості","\u002Fdatabases\u002Fsql\u002Fselect-queries-advanced","06.databases\u002F03.sql\u002F04.select-queries-advanced",{"title":2758,"path":2759,"stem":2760},"INSERT запити - Додавання даних","\u002Fdatabases\u002Fsql\u002Finsert-queries","06.databases\u002F03.sql\u002F05.insert-queries",{"title":2762,"path":2763,"stem":2764},"UPDATE та DELETE запити","\u002Fdatabases\u002Fsql\u002Fupdate-delete-queries","06.databases\u002F03.sql\u002F06.update-delete-queries",{"title":2766,"path":2767,"stem":2768},"Транзакції в SQL","\u002Fdatabases\u002Fsql\u002Ftransactions","06.databases\u002F03.sql\u002F07.transactions",{"title":2770,"icon":2675,"path":2771,"stem":2772,"children":2773,"page":59},"Multi Table Databases","\u002Fdatabases\u002Fmulti-table-databases","06.databases\u002F04.multi-table-databases",[2774,2778,2782,2786,2790,2794],{"title":2775,"path":2776,"stem":2777},"Зв'язки та нормалізація БД","\u002Fdatabases\u002Fmulti-table-databases\u002Frelationships-and-normalization","06.databases\u002F04.multi-table-databases\u002F00.relationships-and-normalization",{"title":2779,"path":2780,"stem":2781},"INNER JOIN - З'єднання таблиць","\u002Fdatabases\u002Fmulti-table-databases\u002Finner-join","06.databases\u002F04.multi-table-databases\u002F01.inner-join",{"title":2783,"path":2784,"stem":2785},"OUTER JOINs - LEFT, RIGHT, FULL","\u002Fdatabases\u002Fmulti-table-databases\u002Fouter-joins","06.databases\u002F04.multi-table-databases\u002F02.outer-joins",{"title":2787,"path":2788,"stem":2789},"CROSS та SELF JOINs","\u002Fdatabases\u002Fmulti-table-databases\u002Fcross-self-joins","06.databases\u002F04.multi-table-databases\u002F03.cross-self-joins",{"title":2791,"path":2792,"stem":2793},"Підзапити (Subqueries)","\u002Fdatabases\u002Fmulti-table-databases\u002Fsubqueries","06.databases\u002F04.multi-table-databases\u002F04.subqueries",{"title":2795,"path":2796,"stem":2797},"Агрегації з JOIN","\u002Fdatabases\u002Fmulti-table-databases\u002Faggregations-with-joins","06.databases\u002F04.multi-table-databases\u002F05.aggregations-with-joins",{"title":2799,"icon":2800,"path":2801,"stem":2802,"children":2803,"page":59},"Aggregate Functions","i-lucide-calculator","\u002Fdatabases\u002Faggregate-functions","06.databases\u002F05.aggregate-functions",[2804,2808,2812],{"title":2805,"path":2806,"stem":2807},"Функції агрегування в MS SQL Server","\u002Fdatabases\u002Faggregate-functions\u002Fintroduction-aggregate-functions","06.databases\u002F05.aggregate-functions\u002F01.introduction-aggregate-functions",{"title":2809,"path":2810,"stem":2811},"Групування даних в MS SQL Server","\u002Fdatabases\u002Faggregate-functions\u002Fgrouping-data","06.databases\u002F05.aggregate-functions\u002F02.grouping-data",{"title":2813,"path":2814,"stem":2815},"Підзапити з агрегатними функціями","\u002Fdatabases\u002Faggregate-functions\u002Fsubqueries-aggregates","06.databases\u002F05.aggregate-functions\u002F03.subqueries-aggregates",{"title":2817,"icon":2818,"path":2819,"stem":2820,"children":2821,"page":59},"Тригери та зберігаємі процедури","i-lucide-database-zap","\u002Fdatabases\u002Ftriggers-stored-procedures","06.databases\u002F07.triggers-stored-procedures",[2822,2826,2830,2834,2838,2842,2846],{"title":2823,"path":2824,"stem":2825},"DML-тригери","\u002Fdatabases\u002Ftriggers-stored-procedures\u002Fdml-triggers","06.databases\u002F07.triggers-stored-procedures\u002F01.dml-triggers",{"title":2827,"path":2828,"stem":2829},"DDL-тригери","\u002Fdatabases\u002Ftriggers-stored-procedures\u002Fddl-triggers","06.databases\u002F07.triggers-stored-procedures\u002F02.ddl-triggers",{"title":2831,"path":2832,"stem":2833},"Transact-SQL розширення","\u002Fdatabases\u002Ftriggers-stored-procedures\u002Ftransact-sql-extensions","06.databases\u002F07.triggers-stored-procedures\u002F03.transact-sql-extensions",{"title":2835,"path":2836,"stem":2837},"Транзакції","\u002Fdatabases\u002Ftriggers-stored-procedures\u002Ftransactions","06.databases\u002F07.triggers-stored-procedures\u002F04.transactions",{"title":2839,"path":2840,"stem":2841},"Зберігаємі процедури","\u002Fdatabases\u002Ftriggers-stored-procedures\u002Fstored-procedures","06.databases\u002F07.triggers-stored-procedures\u002F05.stored-procedures",{"title":2843,"path":2844,"stem":2845},"Користувацькі функції","\u002Fdatabases\u002Ftriggers-stored-procedures\u002Fuser-defined-functions","06.databases\u002F07.triggers-stored-procedures\u002F06.user-defined-functions",{"title":2847,"path":2848,"stem":2849},"Безпека баз даних","\u002Fdatabases\u002Ftriggers-stored-procedures\u002Fsecurity","06.databases\u002F07.triggers-stored-procedures\u002F08.security",{"title":2847,"icon":793,"path":2851,"stem":2852,"children":2853,"page":59},"\u002Fdatabases\u002Fsecurity","06.databases\u002F08.security",[2854,2858],{"title":2855,"path":2856,"stem":2857},"Вступ до безпеки баз даних","\u002Fdatabases\u002Fsecurity\u002Fintroduction","06.databases\u002F08.security\u002F01.introduction",{"title":2859,"path":2860,"stem":2861},"Системні представлення та метадані","\u002Fdatabases\u002Fsecurity\u002Fsystem-views","06.databases\u002F08.security\u002F02.system-views",{"title":2863,"icon":2864,"path":2865,"stem":2866,"children":2867,"page":59},"Резервне копіювання та відновлення","i-lucide-database-backup","\u002Fdatabases\u002Fbackup-recovery","06.databases\u002F09.backup-recovery",[2868],{"title":2863,"path":2869,"stem":2870},"\u002Fdatabases\u002Fbackup-recovery\u002Fbackup-restore","06.databases\u002F09.backup-recovery\u002F01.backup-restore",{"title":2872,"icon":2873,"path":2874,"stem":2875,"children":2876,"page":59},"Повнотекстовий пошук","i-lucide-search","\u002Fdatabases\u002Ffull-text-search","06.databases\u002F10.full-text-search",[2877],{"title":2872,"path":2878,"stem":2879},"\u002Fdatabases\u002Ffull-text-search\u002Ffull-text-search","06.databases\u002F10.full-text-search\u002F01.full-text-search",{"title":2881,"icon":2882,"path":2883,"stem":2884,"children":2885,"page":59},"Tools","i-lucide-wrench","\u002Ftools","07.tools",[2886,2962],{"title":2887,"icon":2888,"path":2889,"stem":2890,"children":2891},"Docker","i-simple-icons-docker","\u002Ftools\u002Fdocker","07.tools\u002F01.docker\u002Findex",[2892,2894,2898,2902,2906,2910,2914,2918,2922,2926,2930,2934,2938,2942,2946,2950,2954,2958],{"title":2893,"path":2889,"stem":2890},"Docker: від нуля до production",{"title":2895,"path":2896,"stem":2897},"Контейнеризація — від проблеми до рішення","\u002Ftools\u002Fdocker\u002Fcontainerization-concept","07.tools\u002F01.docker\u002F01.containerization-concept",{"title":2899,"path":2900,"stem":2901},"Docker — що це і навіщо?","\u002Ftools\u002Fdocker\u002Fdocker-what-and-why","07.tools\u002F01.docker\u002F02.docker-what-and-why",{"title":2903,"path":2904,"stem":2905},"Архітектура Docker Engine","\u002Ftools\u002Fdocker\u002Fdocker-architecture","07.tools\u002F01.docker\u002F03.docker-architecture",{"title":2907,"path":2908,"stem":2909},"Встановлення Docker","\u002Ftools\u002Fdocker\u002Finstallation","07.tools\u002F01.docker\u002F04.installation",{"title":2911,"path":2912,"stem":2913},"Перший контейнер — docker run","\u002Ftools\u002Fdocker\u002Ffirst-container","07.tools\u002F01.docker\u002F05.first-container",{"title":2915,"path":2916,"stem":2917},"Життєвий цикл контейнера","\u002Ftools\u002Fdocker\u002Fcontainer-lifecycle","07.tools\u002F01.docker\u002F06.container-lifecycle",{"title":2919,"path":2920,"stem":2921},"Docker Images — фундаментальні концепції","\u002Ftools\u002Fdocker\u002Fdocker-images-fundamentals","07.tools\u002F01.docker\u002F07.docker-images-fundamentals",{"title":2923,"path":2924,"stem":2925},"Dockerfile — основи","\u002Ftools\u002Fdocker\u002Fdockerfile-basics","07.tools\u002F01.docker\u002F08.dockerfile-basics",{"title":2927,"path":2928,"stem":2929},"Dockerfile — просунуті техніки","\u002Ftools\u002Fdocker\u002Fdockerfile-advanced","07.tools\u002F01.docker\u002F09.dockerfile-advanced",{"title":2931,"path":2932,"stem":2933},"Build Context та кешування шарів","\u002Ftools\u002Fdocker\u002Fbuild-context-and-cache","07.tools\u002F01.docker\u002F10.build-context-and-cache",{"title":2935,"path":2936,"stem":2937},"Реєстри Docker-образів","\u002Ftools\u002Fdocker\u002Fimage-registries","07.tools\u002F01.docker\u002F11.image-registries",{"title":2939,"path":2940,"stem":2941},"Контейнеризація .NET додатків","\u002Ftools\u002Fdocker\u002Fdotnet-containerization","07.tools\u002F01.docker\u002F12.dotnet-containerization",{"title":2943,"path":2944,"stem":2945},"Томи та збереження даних","\u002Ftools\u002Fdocker\u002Fvolumes-and-data","07.tools\u002F01.docker\u002F13.volumes-and-data",{"title":2947,"path":2948,"stem":2949},"Основи мережі в Docker","\u002Ftools\u002Fdocker\u002Fnetworking-basics","07.tools\u002F01.docker\u002F14.networking-basics",{"title":2951,"path":2952,"stem":2953},"Змінні оточення та конфігурація","\u002Ftools\u002Fdocker\u002Fenvironment-and-configuration","07.tools\u002F01.docker\u002F15.environment-and-configuration",{"title":2955,"path":2956,"stem":2957},"Docker Compose — оркестрація контейнерів","\u002Ftools\u002Fdocker\u002Fdocker-compose-basics","07.tools\u002F01.docker\u002F16.docker-compose-basics",{"title":2959,"path":2960,"stem":2961},"Docker Compose — Multi-Service застосунки","\u002Ftools\u002Fdocker\u002Fcompose-multi-service","07.tools\u002F01.docker\u002F17.compose-multi-service",{"title":2963,"icon":2964,"path":2965,"stem":2966,"children":2967},"Kubernetes","simple-icons:kubernetes","\u002Ftools\u002Fkubernetes","07.tools\u002F02.kubernetes\u002Findex",[2968,2970,2974,2978,2982,2986,2990,2994,2998],{"title":2969,"path":2965,"stem":2966},"Kubernetes: від розробки до production",{"title":2971,"path":2972,"stem":2973},"Kubernetes — коли Docker Compose більше не вистачає","\u002Ftools\u002Fkubernetes\u002Fwhy-kubernetes","07.tools\u002F02.kubernetes\u002F01.why-kubernetes",{"title":2975,"path":2976,"stem":2977},"Архітектура Kubernetes — анатомія кластера","\u002Ftools\u002Fkubernetes\u002Fkubernetes-architecture","07.tools\u002F02.kubernetes\u002F02.kubernetes-architecture",{"title":2979,"path":2980,"stem":2981},"Локальне середовище — minikube, kind та k3s","\u002Ftools\u002Fkubernetes\u002Flocal-environment","07.tools\u002F02.kubernetes\u002F03.local-environment",{"title":2983,"path":2984,"stem":2985},"Pod — атомарна одиниця Kubernetes","\u002Ftools\u002Fkubernetes\u002Fpods-and-containers","07.tools\u002F02.kubernetes\u002F04.pods-and-containers",{"title":2987,"path":2988,"stem":2989},"Патерни використання Pod","\u002Ftools\u002Fkubernetes\u002Fpod-patterns","07.tools\u002F02.kubernetes\u002F05.pod-patterns",{"title":2991,"path":2992,"stem":2993},"Deployment — декларативне управління Pod","\u002Ftools\u002Fkubernetes\u002Fdeployment-basics","07.tools\u002F02.kubernetes\u002F06.deployment-basics",{"title":2995,"path":2996,"stem":2997},"Rolling Updates та управління життєвим циклом Deployment","\u002Ftools\u002Fkubernetes\u002Fdeployment-rolling-updates","07.tools\u002F02.kubernetes\u002F07.deployment-rolling-updates",{"title":2999,"path":3000,"stem":3001},"Service — мережева абстракція для Pod","\u002Ftools\u002Fkubernetes\u002Fservices-networking","07.tools\u002F02.kubernetes\u002F08.services-networking",{"title":3003,"icon":3004,"path":3005,"stem":3006,"children":3007,"page":59},"Software Engineering","i-lucide-code-2","\u002Fsoftware-engineering","09.software-engineering",[3008,3012,3016,3020,3024,3028,3032,3036,3040,3044,3048],{"title":3009,"path":3010,"stem":3011},"1. Аналіз предметної області. Експертні знання та складність","\u002Fsoftware-engineering\u002Fintro-subdomains","09.software-engineering\u002F01.intro-subdomains",{"title":3013,"path":3014,"stem":3015},"2. Обмежені контексти. Інтеграція обмежених контекстів","\u002Fsoftware-engineering\u002Fintegrating-limited-contexts","09.software-engineering\u002F02.integrating-limited-contexts",{"title":3017,"path":3018,"stem":3019},"3. Реалізація простої бізнес-логіки","\u002Fsoftware-engineering\u002Fsimple","09.software-engineering\u002F03.simple",{"title":3021,"path":3022,"stem":3023},"4. Опрацювання складної бізнес-логіки","\u002Fsoftware-engineering\u002Fcomplex-business-logic","09.software-engineering\u002F04.complex-business-logic",{"title":3025,"path":3026,"stem":3027},"5. Моделювання фактора часу. Подієво-орієнтована архітектура.","\u002Fsoftware-engineering\u002Fmodelling-the-time-factor","09.software-engineering\u002F05.modelling-the-time-factor",{"title":3029,"path":3030,"stem":3031},"6. Архітектурні патерни","\u002Fsoftware-engineering\u002Farchitectural-patterns","09.software-engineering\u002F06.architectural-patterns",{"title":3033,"path":3034,"stem":3035},"Паттерни взаємодії","\u002Fsoftware-engineering\u002Fpatterns-of-interaction","09.software-engineering\u002F07.patterns-of-interaction",{"title":3037,"path":3038,"stem":3039},"Евристика проєктування","\u002Fsoftware-engineering\u002Fdesign-heuristics","09.software-engineering\u002F08.design-heuristics",{"title":3041,"path":3042,"stem":3043},"Еволюція проєктних рішень","\u002Fsoftware-engineering\u002Fevolution-of-design-solutions","09.software-engineering\u002F09.evolution-of-design-solutions",{"title":3045,"path":3046,"stem":3047},"EventStorming","\u002Fsoftware-engineering\u002Feventstorming","09.software-engineering\u002F10.eventstorming",{"title":3049,"path":3050,"stem":3051},"DDD на практиці","\u002Fsoftware-engineering\u002Fddd-in-practice","09.software-engineering\u002F11.ddd-in-practice",{"title":3053,"icon":943,"path":3054,"stem":3055,"children":3056,"page":59},"DDD","\u002Fddd","10.ddd",[3057,3061,3065,3069,3073,3077,3081,3085,3089,3093,3097,3101,3105],{"title":3058,"path":3059,"stem":3060},"Аналіз предметної області","\u002Fddd\u002Fdomain-analysis","10.ddd\u002F01.domain-analysis",{"title":3062,"path":3063,"stem":3064},"Експертні знання про предметну область","\u002Fddd\u002Fdomain-expert-knowledge","10.ddd\u002F02.domain-expert-knowledge",{"title":3066,"path":3067,"stem":3068},"Як осмислити складність предметної області","\u002Fddd\u002Fmanaging-domain-complexity","10.ddd\u002F03.managing-domain-complexity",{"title":3070,"path":3071,"stem":3072},"Інтеграція обмежених контекстів","\u002Fddd\u002Fbounded-context-integration","10.ddd\u002F04.bounded-context-integration",{"title":3074,"path":3075,"stem":3076},"Реалізація простої бізнес-логіки","\u002Fddd\u002Fsimple-business-logic","10.ddd\u002F05.simple-business-logic",{"title":3078,"path":3079,"stem":3080},"Обробка складної бізнес-логіки","\u002Fddd\u002Fcomplex-business-logic","10.ddd\u002F06.complex-business-logic",{"title":3082,"path":3083,"stem":3084},"Моделювання фактора часу","\u002Fddd\u002Ftime-modeling","10.ddd\u002F07.time-modeling",{"title":3086,"path":3087,"stem":3088},"Глава 8. Архітектурні Патерни","\u002Fddd\u002Farchitectural-patterns","10.ddd\u002F08.architectural-patterns",{"title":3090,"path":3091,"stem":3092},"Глава 9. Патерни Взаємодії","\u002Fddd\u002Finteraction-patterns","10.ddd\u002F09.interaction-patterns",{"title":3094,"path":3095,"stem":3096},"Глава 10. Проектні Евристики","\u002Fddd\u002Fdesign-heuristics","10.ddd\u002F10.design-heuristics",{"title":3098,"path":3099,"stem":3100},"Глава 11. Еволюція Проектних Рішень","\u002Fddd\u002Fevolution-of-design-decisions","10.ddd\u002F11.evolution-of-design-decisions",{"title":3102,"path":3103,"stem":3104},"Глава 12. EventStorming","\u002Fddd\u002Fevent-storming","10.ddd\u002F12.event-storming",{"title":3106,"path":3107,"stem":3108},"Глава 13. DDD на Практиці","\u002Fddd\u002Fddd-in-practice","10.ddd\u002F13.ddd-in-practice",{"title":3110,"icon":3111,"path":3112,"stem":3113,"children":3114,"page":59},"Media Streaming","i-lucide-video","\u002Fmedia-streaming","11.media-streaming",[3115,3119,3123,3127,3131,3135,3139],{"title":3116,"path":3117,"stem":3118},"01. Магія Стрімінгу: Що відбувається, коли ви натискаєте \"Play\"","\u002Fmedia-streaming\u002Fintroduction","11.media-streaming\u002F01.introduction",{"title":3120,"path":3121,"stem":3122},"02. Анатомія Медіа: Кодеки, Контейнери та Стиснення","\u002Fmedia-streaming\u002Faudio-video-anatomy","11.media-streaming\u002F02.audio-video-anatomy",{"title":3124,"path":3125,"stem":3126},"03. The Gym: FFmpeg Deep Dive","\u002Fmedia-streaming\u002Fffmpeg-gym","11.media-streaming\u002F03.ffmpeg-gym",{"title":3128,"path":3129,"stem":3130},"04. HLS Protocol: HTTP Live Streaming у Деталях","\u002Fmedia-streaming\u002Fhls-protocol","11.media-streaming\u002F04.hls-protocol",{"title":3132,"path":3133,"stem":3134},"05. DASH Protocol: Відкритий Стандарт","\u002Fmedia-streaming\u002Fdash-protocol","11.media-streaming\u002F05.dash-protocol",{"title":3136,"path":3137,"stem":3138},"06. Масштабування: CDN та Adaptive Bitrate","\u002Fmedia-streaming\u002Fcdn-and-adaptive-bitrate","11.media-streaming\u002F06.cdn-and-adaptive-bitrate",{"title":3140,"path":3141,"stem":3142},"07. Війна із Затримкою (Latency)","\u002Fmedia-streaming\u002Frealtime-latency","11.media-streaming\u002F07.realtime-latency",{"title":3144,"icon":3145,"path":3146,"stem":3147,"children":3148,"page":59},"HTML & CSS","i-devicon-html5","\u002Fhtml-css","12.html-css",[3149,3153,3157,3161,3165,3169,3173,3177,3181,3185,3189,3193,3197,3201,3205,3209,3213,3217,3221,3225,3229,3233,3237,3241,3245,3249,3253,3257,3261,3265],{"title":3150,"path":3151,"stem":3152},"Вступ до HTML. Структура документа","\u002Fhtml-css\u002Fintro-html-structure","12.html-css\u002F01.intro-html-structure",{"title":3154,"path":3155,"stem":3156},"Форматування тексту в HTML","\u002Fhtml-css\u002Fhtml-text-formatting","12.html-css\u002F02.html-text-formatting",{"title":3158,"path":3159,"stem":3160},"Посилання та зображення в HTML","\u002Fhtml-css\u002Fhtml-links-images","12.html-css\u002F03.html-links-images",{"title":3162,"path":3163,"stem":3164},"Списки та таблиці в HTML","\u002Fhtml-css\u002Fhtml-lists-tables","12.html-css\u002F04.html-lists-tables",{"title":3166,"path":3167,"stem":3168},"Форми в HTML","\u002Fhtml-css\u002Fhtml-forms","12.html-css\u002F05.html-forms",{"title":3170,"path":3171,"stem":3172},"Семантичні елементи HTML5","\u002Fhtml-css\u002Fhtml-semantic-elements","12.html-css\u002F06.html-semantic-elements",{"title":3174,"path":3175,"stem":3176},"Мультимедіа та розширені елементи HTML","\u002Fhtml-css\u002Fhtml-multimedia-advanced","12.html-css\u002F07.html-multimedia-advanced",{"title":3178,"path":3179,"stem":3180},"Мікророзмітка та SEO в HTML","\u002Fhtml-css\u002Fhtml-microdata-seo","12.html-css\u002F08.html-microdata-seo",{"title":3182,"path":3183,"stem":3184},"Вступ до CSS. Селектори та специфічність","\u002Fhtml-css\u002Fcss-intro-selectors","12.html-css\u002F09.css-intro-selectors",{"title":3186,"path":3187,"stem":3188},"Блокова модель CSS. Відступи. Box Sizing","\u002Fhtml-css\u002Fcss-box-model","12.html-css\u002F10.css-box-model",{"title":3190,"path":3191,"stem":3192},"Розміри у CSS: повний довідник одиниць і ключових слів","\u002Fhtml-css\u002F10a.css-sizing","12.html-css\u002F10a.css-sizing",{"title":3194,"path":3195,"stem":3196},"Типографіка в CSS. Шрифти та текст","\u002Fhtml-css\u002Fcss-typography","12.html-css\u002F11.css-typography",{"title":3198,"path":3199,"stem":3200},"Кольори та фони в CSS","\u002Fhtml-css\u002Fcss-colors-backgrounds","12.html-css\u002F12.css-colors-backgrounds",{"title":3202,"path":3203,"stem":3204},"Тіні та фільтри в CSS","\u002Fhtml-css\u002F12b.css-shadows-filters","12.html-css\u002F12b.css-shadows-filters",{"title":3206,"path":3207,"stem":3208},"CSS Flexbox: Фундамент гнучких макетів","\u002Fhtml-css\u002Fcss-flexbox-fundamentals","12.html-css\u002F13.css-flexbox-fundamentals",{"title":3210,"path":3211,"stem":3212},"CSS Flexbox: Вирівнювання та Позиціонування","\u002Fhtml-css\u002Fcss-flexbox-alignment-sizing-and-patterns","12.html-css\u002F14.css-flexbox-alignment-sizing-and-patterns",{"title":3214,"path":3215,"stem":3216},"CSS Grid. Двовимірний макет. Частина 1","\u002Fhtml-css\u002Fcss-layout-grid","12.html-css\u002F15.css-layout-grid",{"title":3218,"path":3219,"stem":3220},"CSS Grid. Двовимірний макет. Частина 2","\u002Fhtml-css\u002Fcss-layout-grid-advanced","12.html-css\u002F16.css-layout-grid-advanced",{"title":3222,"path":3223,"stem":3224},"Позиціонування в CSS. Z-index. Stacking Context","\u002Fhtml-css\u002Fcss-positioning","12.html-css\u002F17.css-positioning",{"title":3226,"path":3227,"stem":3228},"CSS Анімації та Переходи","\u002Fhtml-css\u002Fcss-animations-transitions","12.html-css\u002F18.css-animations-transitions",{"title":3230,"path":3231,"stem":3232},"Адаптивний дизайн. Media Queries. Частина 1","\u002Fhtml-css\u002Fcss-responsive-media-queries","12.html-css\u002F19.css-responsive-media-queries",{"title":3234,"path":3235,"stem":3236},"Адаптивний дизайн. Частина 2: clamp(), Container Queries, @layer","\u002Fhtml-css\u002Fcss-responsive-advanced","12.html-css\u002F20.css-responsive-advanced",{"title":3238,"path":3239,"stem":3240},"CSS Custom Properties. Методології. Сучасний CSS","\u002Fhtml-css\u002Fcss-variables-methodologies","12.html-css\u002F21.css-variables-methodologies",{"title":3242,"path":3243,"stem":3244},"Сучасний CSS 2023–2025: Нові можливості","\u002Fhtml-css\u002Fcss-modern-features","12.html-css\u002F22.css-modern-features",{"title":3246,"path":3247,"stem":3248},"CSS Nesting, @layer, @scope та @property: нативний препроцесор","\u002Fhtml-css\u002F22a.css-nesting-modern-syntax","12.html-css\u002F22a.css-nesting-modern-syntax",{"title":3250,"path":3251,"stem":3252},"CSS для форм та інтерактивних станів","\u002Fhtml-css\u002Fcss-forms-interactive-states","12.html-css\u002F23.css-forms-interactive-states",{"title":3254,"path":3255,"stem":3256},"Доступність у CSS (CSS Accessibility)","\u002Fhtml-css\u002Fcss-accessibility","12.html-css\u002F24.css-accessibility",{"title":3258,"path":3259,"stem":3260},"CSS-функції та сучасні sizing primitives","\u002Fhtml-css\u002Fcss-functions-sizing","12.html-css\u002F25.css-functions-sizing",{"title":3262,"path":3263,"stem":3264},"Rendering Pipeline і CSS Performance","\u002Fhtml-css\u002Fcss-rendering-performance","12.html-css\u002F26.css-rendering-performance",{"title":3266,"path":3267,"stem":3268},"CSS Best Practices: типові ситуації та правильні рішення","\u002Fhtml-css\u002Fcss-best-practices","12.html-css\u002F27.css-best-practices",{"title":3270,"path":3271,"stem":3272,"children":3273,"page":59},"AWS","\u002Faws","13.aws",[3274,3278,3282,3286,3290,3294,3298,3302,3306,3310,3314,3318,3322,3326,3330,3334,3338,3342],{"title":3275,"path":3276,"stem":3277},"Реєстрація AWS акаунту та студентські програми","\u002Faws\u002Faccount-registration","13.aws\u002F00.account-registration",{"title":3279,"path":3280,"stem":3281},"Вступ до хмарних обчислень та AWS","\u002Faws\u002Fintroduction-to-cloud","13.aws\u002F01.introduction-to-cloud",{"title":3283,"path":3284,"stem":3285},"AWS IAM — Identity and Access Management","\u002Faws\u002Fiam","13.aws\u002F02.iam",{"title":3287,"path":3288,"stem":3289},"AWS IAM CLI — Довідник команд","\u002Faws\u002F02a.iam-doc","13.aws\u002F02a.iam-doc",{"title":3291,"path":3292,"stem":3293},"Docker та контейнеризація в AWS — ECR, ECS та Fargate","\u002Faws\u002Fdocker-ecs","13.aws\u002F03.docker-ecs",{"title":3295,"path":3296,"stem":3297},"AWS ECR \u002F ECS CLI — Довідник команд","\u002Faws\u002F03a.docker-ecs-doc","13.aws\u002F03a.docker-ecs-doc",{"title":3299,"path":3300,"stem":3301},"Amazon EC2 — Elastic Compute Cloud","\u002Faws\u002Fec2","13.aws\u002F04.ec2",{"title":3303,"path":3304,"stem":3305},"AWS EC2 CLI — Довідник команд","\u002Faws\u002F04a.ec2-doc","13.aws\u002F04a.ec2-doc",{"title":3307,"path":3308,"stem":3309},"Elastic Load Balancing та Auto Scaling","\u002Faws\u002Falb-asg","13.aws\u002F05.alb-asg",{"title":3311,"path":3312,"stem":3313},"Amazon S3 — Simple Storage Service","\u002Faws\u002Fs3","13.aws\u002F06.s3",{"title":3315,"path":3316,"stem":3317},"Amazon CloudFront — Content Delivery Network","\u002Faws\u002Fcloudfront","13.aws\u002F07.cloudfront",{"title":3319,"path":3320,"stem":3321},"Amazon RDS — Relational Database Service","\u002Faws\u002Frds","13.aws\u002F08.rds",{"title":3323,"path":3324,"stem":3325},"Amazon DynamoDB — NoSQL Database","\u002Faws\u002Fdynamodb","13.aws\u002F09.dynamodb",{"title":3327,"path":3328,"stem":3329},"AWS Lambda та Serverless Compute","\u002Faws\u002Flambda","13.aws\u002F10.lambda",{"title":3331,"path":3332,"stem":3333},"Amazon Bedrock - Foundation Models, RAG та Agents","\u002Faws\u002Fbedrock","13.aws\u002F22.bedrock",{"title":3335,"path":3336,"stem":3337},"Amazon Rekognition - Комп'ютерний зір","\u002Faws\u002Frekognition","13.aws\u002F23.rekognition",{"title":3339,"path":3340,"stem":3341},"Amazon Textract - Інтелектуальний аналіз документів","\u002Faws\u002Ftextract","13.aws\u002F24.textract",{"title":3343,"path":3344,"stem":3345},"Amazon Polly, Transcribe, Comprehend та Translate","\u002Faws\u002Faudio-nlp-services","13.aws\u002F25.audio-nlp-services",{"title":3347,"path":3348,"stem":3349,"children":3350,"page":59},"Ai Development","\u002Fai-development","14.ai-development",[3351],{"title":3352,"path":3353,"stem":3354,"children":3355,"page":59},"Foundations","\u002Fai-development\u002Ffoundations","14.ai-development\u002F00.foundations",[3356],{"title":3357,"path":3358,"stem":3359},"Модуль 0.1. Що таке Large Language Model (LLM)","\u002Fai-development\u002Ffoundations\u002Fwhat-is-llm","14.ai-development\u002F00.foundations\u002F01.what-is-llm",{"title":3361,"path":3362,"stem":3363,"children":3364},"React Native","\u002Freact-native","15.react-native",[3365,3367,3371,3375,3379,3383,3387,3391,3395,3399,3403,3407,3411,3415,3419],{"title":3361,"path":3362,"stem":3366},"15.react-native\u002Findex",{"title":3368,"path":3369,"stem":3370},"React Native — навіщо він потрібен","\u002Freact-native\u002Fwhy-react-native","15.react-native\u002F01.why-react-native",{"title":3372,"path":3373,"stem":3374},"Як влаштований React Native «під капотом»","\u002Freact-native\u002Freact-native-architecture","15.react-native\u002F02.react-native-architecture",{"title":3376,"path":3377,"stem":3378},"Expo і класичний React Native — два шляхи одного фреймворку","\u002Freact-native\u002Fexpo-vs-cli-landscape","15.react-native\u002F03.expo-vs-cli-landscape",{"title":3380,"path":3381,"stem":3382},"Середовище Expo — перший запуск","\u002Freact-native\u002Fexpo-setup-and-tooling","15.react-native\u002F04.expo-setup-and-tooling",{"title":3384,"path":3385,"stem":3386},"Структура проєкту та перші UI-примітиви","\u002Freact-native\u002Fproject-structure-and-conventions","15.react-native\u002F05.project-structure-and-conventions",{"title":3388,"path":3389,"stem":3390},"Базові компоненти React Native","\u002Freact-native\u002Fcore-components","15.react-native\u002F06.core-components",{"title":3392,"path":3393,"stem":3394},"Flexbox і layout у React Native","\u002Freact-native\u002Fflexbox-and-layout","15.react-native\u002F07.flexbox-and-layout",{"title":3396,"path":3397,"stem":3398},"StyleSheet і теми (light \u002F dark)","\u002Freact-native\u002Fstylesheet-and-theming","15.react-native\u002F08.stylesheet-and-theming",{"title":3400,"path":3401,"stem":3402},"Списки та віртуалізація","\u002Freact-native\u002Flists-and-virtualization","15.react-native\u002F09.lists-and-virtualization",{"title":3404,"path":3405,"stem":3406},"Форми, ввід і валідація","\u002Freact-native\u002Fforms-input-validation","15.react-native\u002F10.forms-input-validation",{"title":3408,"path":3409,"stem":3410},"Основи Expo Router","\u002Freact-native\u002Fexpo-router-basics","15.react-native\u002F11.expo-router-basics",{"title":3412,"path":3413,"stem":3414},"Вкладені навігатори та модалки","\u002Freact-native\u002Fnested-navigators-and-modals","15.react-native\u002F12.nested-navigators-and-modals",{"title":3416,"path":3417,"stem":3418},"Deep linking і параметри маршрутів","\u002Freact-native\u002Fdeep-linking-and-params","15.react-native\u002F13.deep-linking-and-params",{"title":3420,"path":3421,"stem":3422},"Робота з мережею та життєвий цикл застосунку","\u002Freact-native\u002Fnetworking-and-app-lifecycle","15.react-native\u002F14.networking-and-app-lifecycle",{"title":3424,"path":3425,"stem":3426,"children":3427,"page":59},"Ai Python","\u002Fai-python","16.ai-python",[3428,3432,3436],{"title":3429,"path":3430,"stem":3431},"Вступ до штучного інтелекту та машинного навчання","\u002Fai-python\u002Fintro-to-ai","16.ai-python\u002F01.intro-to-ai",{"title":3433,"path":3434,"stem":3435},"Знайомство з Jupyter Notebook та JupyterLab","\u002Fai-python\u002Fjupyter-notebook","16.ai-python\u002F02.jupyter-notebook",{"title":3437,"path":3438,"stem":3439},"Робота з даними з використанням NumPy і pandas","\u002Fai-python\u002Fnumpy-pandas","16.ai-python\u002F03.numpy-pandas",{"title":3441,"path":3442,"stem":3443,"children":3444,"page":59},"Tailwind","\u002Ftailwind","21.tailwind",[3445,3449,3453,3457,3461,3465,3469,3473,3477,3481,3485,3489],{"title":3446,"path":3447,"stem":3448},"Що таке Tailwind CSS і навіщо він потрібен","\u002Ftailwind\u002Ftailwind-intro-philosophy","21.tailwind\u002F01.tailwind-intro-philosophy",{"title":3450,"path":3451,"stem":3452},"Встановлення та налаштування Tailwind CSS v4","\u002Ftailwind\u002Ftailwind-installation-setup","21.tailwind\u002F02.tailwind-installation-setup",{"title":3454,"path":3455,"stem":3456},"Utility-класи: основи та система Tailwind","\u002Ftailwind\u002Ftailwind-utility-classes-core","21.tailwind\u002F03.tailwind-utility-classes-core",{"title":3458,"path":3459,"stem":3460},"Layout: Flexbox та Grid через Tailwind","\u002Ftailwind\u002Ftailwind-flexbox-grid","21.tailwind\u002F04.tailwind-flexbox-grid",{"title":3462,"path":3463,"stem":3464},"Кастомізація теми через @theme у Tailwind v4","\u002Ftailwind\u002Ftailwind-theme-customization","21.tailwind\u002F05.tailwind-theme-customization",{"title":3466,"path":3467,"stem":3468},"Варіанти: hover, focus, responsive, dark mode та нові v4","\u002Ftailwind\u002Ftailwind-variants-states","21.tailwind\u002F06.tailwind-variants-states",{"title":3470,"path":3471,"stem":3472},"Типографіка та система кольорів у Tailwind v4","\u002Ftailwind\u002Ftailwind-typography-colors","21.tailwind\u002F07.tailwind-typography-colors",{"title":3474,"path":3475,"stem":3476},"Компоненти та повторюваність: @apply, @utility та патерни","\u002Ftailwind\u002Ftailwind-components-patterns","21.tailwind\u002F08.tailwind-components-patterns",{"title":3478,"path":3479,"stem":3480},"Темна тема та система дизайн-токенів у Tailwind v4","\u002Ftailwind\u002Ftailwind-dark-mode-theming","21.tailwind\u002F09.tailwind-dark-mode-theming",{"title":3482,"path":3483,"stem":3484},"Довільні значення та контейнерні запити у Tailwind v4","\u002Ftailwind\u002Ftailwind-arbitrary-container-queries","21.tailwind\u002F10.tailwind-arbitrary-container-queries",{"title":3486,"path":3487,"stem":3488},"Анімації, трансформації та 3D у Tailwind v4","\u002Ftailwind\u002Ftailwind-animations-transforms","21.tailwind\u002F11.tailwind-animations-transforms",{"title":3490,"path":3491,"stem":3492},"Tailwind CLI, PostCSS та інтеграція з фреймворками","\u002Ftailwind\u002Ftailwind-cli-tooling","21.tailwind\u002F12.tailwind-cli-tooling",{"title":3494,"path":3495,"stem":3496},"Тестування компонентів діаграм","\u002Ftest-components","98.test-components",{"id":3498,"title":3412,"body":3499,"description":41281,"extension":15312,"links":41282,"meta":41283,"navigation":3949,"path":3413,"seo":41284,"stem":3414,"__hash__":41285},"docs\u002F15.react-native\u002F12.nested-navigators-and-modals.md",{"type":3500,"value":3501,"toc":41187},"minimark",[3502,3506,3511,3541,3560,3567,3612,3623,3626,3681,3704,3720,3730,3733,3737,3740,3755,3762,3769,3776,3778,3782,3798,3801,3815,3827,3830,3893,3903,3912,4102,4104,4108,4118,4121,4147,4163,4174,4176,4180,4183,4216,4223,4325,4327,4331,4336,4347,4350,4358,4376,4380,4410,4421,4425,4431,4450,4455,4474,4483,4487,4683,4686,4730,4752,4756,4834,4841,4844,4903,4910,4912,4916,4920,4937,4940,4943,4956,4963,4967,4975,4992,5007,5084,5090,5110,5113,5132,5136,5139,5158,5173,5180,5214,5228,5232,5258,5265,5269,5294,5349,5351,5358,5365,5372,5376,5388,5392,5402,5408,5414,5431,5435,5453,5463,5474,5481,5492,5494,5498,5502,5505,5516,5526,5533,5537,5557,5563,5569,5575,5586,5589,5740,5743,5790,5804,5851,5863,5865,5872,5875,5881,5884,5897,5900,5999,6002,6059,6066,6083,6085,6089,6095,6102,6182,6189,6191,6195,6199,6208,6212,6219,6226,6236,6240,6243,6247,6250,6254,6261,6265,6270,6272,6276,6280,6287,6305,6309,6315,6319,6404,6411,7122,7128,7452,7458,7878,7885,8088,8095,9463,9470,10241,10248,11643,11647,12071,12075,12092,12096,12146,12148,12152,12158,12162,12185,12189,12195,12200,12269,12273,40899,40903,40930,40934,41010,41012,41016,41020,41037,41041,41060,41064,41091,41093,41097,41149,41151,41155,41164,41184],[3503,3504,3412],"h1",{"id":3505},"вкладені-навігатори-та-модалки",[3507,3508,3510],"h2",{"id":3509},"з-чого-почати","З чого почати",[3512,3513,3514,3515,3519,3520,3524,3525,3528,3529,3532,3533,3536,3537,3540],"p",{},"У попередній статті ми зібрали ",[3516,3517,3518],"strong",{},"базову карту"," маршрутів Expo Router: кореневий ",[3521,3522,3523],"code",{},"Stack",", група ",[3521,3526,3527],{},"(tabs)"," із трьома вкладками, окремий файл ",[3521,3530,3531],{},"create-trip",", переходи через ",[3521,3534,3535],{},"Link"," і ",[3521,3538,3539],{},"useRouter",". Для навчального «три розділи + одна форма» цього вже вистачало.",[3512,3542,3543,3544,3547,3548,3551,3552,3555,3556,3559],{},"Але варто відкрити майже будь-який зрілий застосунок на телефоні — і картина складніша. На вкладці «Стрічка» тап по картці відкриває ",[3516,3545,3546],{},"деталі",", при цьому ",[3516,3549,3550],{},"нижня панель вкладок часто лишається"," (або зникає — залежно від продукту). Форма «щось швидко додати» виїжджає ",[3516,3553,3554],{},"зверху \u002F як sheet",", а не «вклеюється» в ту саму історію, що й глибокий перегляд. Якщо користувач набрав текст і випадково свайпнув «назад», з’являється питання: ",[3516,3557,3558],{},"«Вийти без збереження?»"," Окремо існує «світ гостя» (вхід \u002F реєстрація) і «світ авторизованого користувача» (вкладки, профіль) — це вже не один плоский список екранів.",[3512,3561,3562,3563,3566],{},"Ця стаття якраз про ",[3516,3564,3565],{},"другий поверх"," навігації:",[3568,3569,3570,3586,3596,3606],"ol",{},[3571,3572,3573,3576,3577,3581,3582,3585],"li",{},[3516,3574,3575],{},"Вкладені навігатори"," (",[3578,3579,3580],"em",{},"nested navigators",") — Stack ",[3516,3583,3584],{},"усередині"," вкладки Tabs.",[3571,3587,3588,3591,3592,3595],{},[3516,3589,3590],{},"Модальні екрани"," — той самий Stack, але з іншим ",[3521,3593,3594],{},"presentation",".",[3571,3597,3598,3601,3602,3605],{},[3516,3599,3600],{},"Групи маршрутів"," на кшталт ",[3521,3603,3604],{},"(auth)"," — організація «різних світів» UI.",[3571,3607,3608,3611],{},[3516,3609,3610],{},"Guard на back"," — перехоплення виходу з екрана з незбереженими даними.",[3512,3613,3614,3615,3618,3619,3622],{},"Глибокий розбір query-параметрів, cold start і universal links лишаємо ",[3516,3616,3617],{},"наступній"," статті. Динамічний сегмент ",[3521,3620,3621],{},"[id]"," тут з’являється лише в обсязі, потрібному для екрана деталей.",[3512,3624,3625],{},"Після матеріалу ви зможете:",[3568,3627,3628,3635,3641,3651,3662,3668,3671],{},[3571,3629,3630,3631,3634],{},"Пояснити людською мовою, ",[3516,3632,3633],{},"навіщо"," вкладати Stack у Tabs, а не тримати все в одному стеку.",[3571,3636,3637,3638,3595],{},"Намалювати на папері дерево layout для list → detail ",[3516,3639,3640],{},"зі збереженим tab bar",[3571,3642,3643,3644,3647,3648,3595],{},"Налаштувати ",[3521,3645,3646],{},"presentation: 'modal'"," і пояснити, чим це відрізняється від звичайного ",[3521,3649,3650],{},"push",[3571,3652,3653,3654,3657,3658,3661],{},"Сказати, ",[3516,3655,3656],{},"який"," саме стек реагує на ",[3521,3659,3660],{},"router.back()"," у різних ситуаціях.",[3571,3663,3664,3665,3667],{},"Описати ідею груп ",[3521,3666,3604],{}," \u002F «захищених» маршрутів без плутанини з безпекою API.",[3571,3669,3670],{},"Реалізувати guard «форма брудна → підтвердження».",[3571,3672,3673,3674,3677,3678,3595],{},"Зібрати міні-проєкт ",[3516,3675,3676],{},"«Нотатки»"," за повним кодом і перенести ідеї в ",[3516,3679,3680],{},"Nomad",[3682,3683,3684,3687,3688,3691,3692,3695,3696,3699,3700,3703],"note",{},[3516,3685,3686],{},"Головна думка."," У Expo Router (і в React Navigation під ним) навігатори — це не «один глобальний список екранів», а ",[3516,3689,3690],{},"дерево",". Батьківський layout обгортає дітей; дитина може бути ",[3516,3693,3694],{},"ще одним"," навігатором. Modal — це переважно ",[3516,3697,3698],{},"спосіб показати"," екран у Stack, а не окрема бібліотека. Guard на back — шар ",[3516,3701,3702],{},"поведінки при leave",", поверх геометрії маршрутів.",[3705,3706,3707,3708,3711,3712,3715,3716,3719],"tip",{},"Живі жести, tab bar і модальна анімація ",[3516,3709,3710],{},"не"," відтворюються в ",[3521,3713,3714],{},"::react-native-preview"," на сайті. У статті — послідовне пояснення, схеми й код; перевірка — у ",[3516,3717,3718],{},"Expo Go"," або симуляторі.",[3512,3721,3722,3723,3595],{},"Код наскрізного застосунку: ",[3724,3725,3729],"a",{"href":3726,"rel":3727},"https:\u002F\u002Fgithub.com\u002Farakviel\u002Fnomad",[3728],"nofollow","github.com\u002Farakviel\u002Fnomad",[3731,3732],"hr",{},[3507,3734,3736],{"id":3735},"життєва-сцена-що-ламається-без-вкладеності","Життєва сцена: що ламається без вкладеності",[3512,3738,3739],{},"Уявіть Nomad лише з «плоским» root Stack і без вкладеного стека у «Поїздках».",[3512,3741,3742,3743,3746,3747,3750,3751,3754],{},"Користувач на стрічці тапає «Карпати на вихідні». Якщо деталі покласти ",[3516,3744,3745],{},"на root Stack"," поруч із вкладками, часто виходить так: екран деталей відкривається ",[3516,3748,3749],{},"на весь застосунок",", нижня панель ",[3516,3752,3753],{},"зникає",". Це нормальний і навіть бажаний UX для деяких продуктів (читалка, відео). Але для щоденника подорожей часто хочуть інше: «я всередині розділу Поїздки, можу швидко глянути Місця, не гублячи контекст».",[3512,3756,3757,3758,3761],{},"Інший провал — навпаки: форму створення теж запхати ",[3516,3759,3760],{},"всередину"," вкладки як звичайний push. Тоді «Нова поїздка» виглядає як ще один «глибокий» екран розділу, tab bar може лишатись під довгою формою, а жест «закрити задачу» менш очевидний, ніж у модалки «відкрив → зберіг \u002F закрив».",[3512,3763,3764,3765,3768],{},"Третій провал — ігнорувати ",[3516,3766,3767],{},"історію",". Користувач відкрив форму, почав друкувати, випадково свайпнув dismiss — і все зникло. Людина не каже «не було usePreventRemove»; каже «додаток з’їв мою нотатку».",[3512,3770,3771,3772,3775],{},"Отже, тема статті — не «ще три API», а ",[3516,3773,3774],{},"три різні задачі UX",", які розв’язують вкладеністю, modal і guard.",[3731,3777],{},[3507,3779,3781],{"id":3780},"що-таке-вкладений-навігатор-простими-словами","Що таке «вкладений навігатор» простими словами",[3512,3783,3784,3576,3787,3790,3791,3536,3794,3797],{},[3516,3785,3786],{},"Навігатор",[3578,3788,3789],{},"navigator",") — компонент, який вирішує, ",[3516,3792,3793],{},"який із набору екранів зараз видимий",[3516,3795,3796],{},"як"," між ними перемикатися (стопка, вкладки, drawer…).",[3512,3799,3800],{},"У статті 11 ми вже мали:",[3802,3803,3804,3810],"ul",{},[3571,3805,3806,3809],{},[3516,3807,3808],{},"Tabs"," — кілька розділів «поруч»;",[3571,3811,3812,3814],{},[3516,3813,3523],{}," — екрани «один на одному» з історією back.",[3512,3816,3817,3576,3820,3823,3824,3595],{},[3516,3818,3819],{},"Вкладений навігатор",[3578,3821,3822],{},"nested navigator",") — ситуація, коли ",[3516,3825,3826],{},"один навігатор є екраном (або гілкою) іншого",[3512,3828,3829],{},"Приклад, який ми збираємо в Nomad:",[3568,3831,3832,3845,3857,3871,3881],{},[3571,3833,3834,3837,3838,3840,3841,3844],{},[3516,3835,3836],{},"Корінь"," — ",[3521,3839,3523],{}," (файл ",[3521,3842,3843],{},"app\u002F_layout.tsx",").",[3571,3846,3847,3848,3851,3852,3854,3855,3844],{},"Один із «екранів» кореня — ",[3516,3849,3850],{},"ціла група вкладок"," ",[3521,3853,3527],{}," (усередині — ",[3521,3856,3808],{},[3571,3858,3859,3860,3863,3864,3867,3868,3844],{},"Одна з вкладок — не «просто сторінка», а ",[3516,3861,3862],{},"знову Stack"," (тека ",[3521,3865,3866],{},"trips\u002F"," зі своїм ",[3521,3869,3870],{},"_layout.tsx",[3571,3872,3873,3874,3877,3878,3880],{},"У цьому внутрішньому Stack: ",[3521,3875,3876],{},"index"," (список) і ",[3521,3879,3621],{}," (деталі).",[3571,3882,3883,3884,3887,3888,3890,3891,3595],{},"Окремо на ",[3516,3885,3886],{},"кореневому"," Stack — ",[3521,3889,3531],{}," з ",[3521,3892,3646],{},[3512,3894,3895,3896,3899,3900,3902],{},"Користувач цього дерева «не бачить». Він бачить: вкладки, стрічку, деталі, модалку. Але ",[3516,3897,3898],{},"розробник"," зобов’язаний тримати дерево в голові: інакше ",[3521,3901,3660],{}," «не туди», tab bar «зник», modal «не закривається».",[3512,3904,3905],{},[3906,3907],"img",{"alt":3908,"className":3909,"src":3911},"Root Stack → Tabs → Stack у Поїздках + modal",[3910],"diagram-img","\u002Fimages\u002Freact-native\u002Fnested-navigators-and-modals\u002F01.svg",[3913,3914,3915],"plant-uml",{},[3916,3917,3922],"pre",{"className":3918,"code":3919,"language":3920,"meta":3921,"style":3921},"language-plantuml shiki shiki-themes light-plus dark-plus dark-plus","@startuml\nskinparam style plain\nskinparam backgroundColor #ffffff\n\nrectangle \"Root Stack\\n(app\u002F_layout.tsx)\" as R {\n  rectangle \"(tabs) Tabs\\n(app\u002F(tabs)\u002F_layout.tsx)\" as T {\n    rectangle \"trips Stack\\n(app\u002F(tabs)\u002Ftrips\u002F_layout.tsx)\" as S {\n      rectangle \"index\\nсписок\" as I\n      rectangle \"[id]\\nдеталі\" as D\n    }\n    rectangle \"places\" as P\n    rectangle \"about\" as A\n  }\n  rectangle \"create-trip\\npresentation: modal\" as M\n}\n\nI -down-> D : push у вкладеному Stack\nT -right-> M : push у root Stack\n\nnote right of D\n  Tab bar зазвичай\n  лишається видимим\nend note\n\nnote right of M\n  Tabs під модалкою\n  (інший шар UI)\nend note\n\n@enduml\n","plantuml","",[3521,3923,3924,3932,3938,3944,3951,3957,3963,3969,3975,3981,3987,3993,3999,4005,4011,4017,4022,4028,4034,4039,4045,4051,4057,4063,4068,4074,4080,4086,4091,4096],{"__ignoreMap":3921},[3925,3926,3929],"span",{"class":3927,"line":3928},"line",1,[3925,3930,3931],{},"@startuml\n",[3925,3933,3935],{"class":3927,"line":3934},2,[3925,3936,3937],{},"skinparam style plain\n",[3925,3939,3941],{"class":3927,"line":3940},3,[3925,3942,3943],{},"skinparam backgroundColor #ffffff\n",[3925,3945,3947],{"class":3927,"line":3946},4,[3925,3948,3950],{"emptyLinePlaceholder":3949},true,"\n",[3925,3952,3954],{"class":3927,"line":3953},5,[3925,3955,3956],{},"rectangle \"Root Stack\\n(app\u002F_layout.tsx)\" as R {\n",[3925,3958,3960],{"class":3927,"line":3959},6,[3925,3961,3962],{},"  rectangle \"(tabs) Tabs\\n(app\u002F(tabs)\u002F_layout.tsx)\" as T {\n",[3925,3964,3966],{"class":3927,"line":3965},7,[3925,3967,3968],{},"    rectangle \"trips Stack\\n(app\u002F(tabs)\u002Ftrips\u002F_layout.tsx)\" as S {\n",[3925,3970,3972],{"class":3927,"line":3971},8,[3925,3973,3974],{},"      rectangle \"index\\nсписок\" as I\n",[3925,3976,3978],{"class":3927,"line":3977},9,[3925,3979,3980],{},"      rectangle \"[id]\\nдеталі\" as D\n",[3925,3982,3984],{"class":3927,"line":3983},10,[3925,3985,3986],{},"    }\n",[3925,3988,3990],{"class":3927,"line":3989},11,[3925,3991,3992],{},"    rectangle \"places\" as P\n",[3925,3994,3996],{"class":3927,"line":3995},12,[3925,3997,3998],{},"    rectangle \"about\" as A\n",[3925,4000,4002],{"class":3927,"line":4001},13,[3925,4003,4004],{},"  }\n",[3925,4006,4008],{"class":3927,"line":4007},14,[3925,4009,4010],{},"  rectangle \"create-trip\\npresentation: modal\" as M\n",[3925,4012,4014],{"class":3927,"line":4013},15,[3925,4015,4016],{},"}\n",[3925,4018,4020],{"class":3927,"line":4019},16,[3925,4021,3950],{"emptyLinePlaceholder":3949},[3925,4023,4025],{"class":3927,"line":4024},17,[3925,4026,4027],{},"I -down-> D : push у вкладеному Stack\n",[3925,4029,4031],{"class":3927,"line":4030},18,[3925,4032,4033],{},"T -right-> M : push у root Stack\n",[3925,4035,4037],{"class":3927,"line":4036},19,[3925,4038,3950],{"emptyLinePlaceholder":3949},[3925,4040,4042],{"class":3927,"line":4041},20,[3925,4043,4044],{},"note right of D\n",[3925,4046,4048],{"class":3927,"line":4047},21,[3925,4049,4050],{},"  Tab bar зазвичай\n",[3925,4052,4054],{"class":3927,"line":4053},22,[3925,4055,4056],{},"  лишається видимим\n",[3925,4058,4060],{"class":3927,"line":4059},23,[3925,4061,4062],{},"end note\n",[3925,4064,4066],{"class":3927,"line":4065},24,[3925,4067,3950],{"emptyLinePlaceholder":3949},[3925,4069,4071],{"class":3927,"line":4070},25,[3925,4072,4073],{},"note right of M\n",[3925,4075,4077],{"class":3927,"line":4076},26,[3925,4078,4079],{},"  Tabs під модалкою\n",[3925,4081,4083],{"class":3927,"line":4082},27,[3925,4084,4085],{},"  (інший шар UI)\n",[3925,4087,4089],{"class":3927,"line":4088},28,[3925,4090,4062],{},[3925,4092,4094],{"class":3927,"line":4093},29,[3925,4095,3950],{"emptyLinePlaceholder":3949},[3925,4097,4099],{"class":3927,"line":4098},30,[3925,4100,4101],{},"@enduml\n",[3731,4103],{},[3507,4105,4107],{"id":4106},"навіщо-не-тримати-все-в-одному-stack","Навіщо не тримати «все в одному Stack»",[3512,4109,4110,4111,4114,4115,3595],{},"Можна уявити радикально простий варіант: один кореневий Stack і ",[3516,4112,4113],{},"жодних"," Tabs — Home, TripDetail, Places, About, Create, Login як послідовні екрани. Технічно це працює. Продуктово — ні, щойно з’являються ",[3516,4116,4117],{},"постійні розділи",[3512,4119,4120],{},"Типові болі «плоского» стека:",[3568,4122,4123,4129,4135,4141],{},[3571,4124,4125,4128],{},[3516,4126,4127],{},"Немає «дому» для розділу."," Користувач звик, що «Поїздки \u002F Місця \u002F Ще» завжди внизу.",[3571,4130,4131,4134],{},[3516,4132,4133],{},"Back плутає розділи."," З «Місць» back може вийти на «деталі поїздки», хоча людина вже «змінила тему».",[3571,4136,4137,4140],{},[3516,4138,4139],{},"Довга історія."," Десять push підряд — і системний back довго «відмотує» те, чого користувач уже не пам’ятає.",[3571,4142,4143,4146],{},[3516,4144,4145],{},"Складно зберігати стан розділу."," Вкладки як раз і дають паралельні «гілки» з власною (вкладеною) історією.",[3512,4148,4149,4151,4152,4155,4158,4159,4162],{},[3516,4150,3808],{}," розв’язують паралельність.",[4153,4154],"br",{},[3516,4156,4157],{},"Stack усередині вкладки"," розв’язує глибину ",[3516,4160,4161],{},"в одній"," гілці.",[3512,4164,4165,4166,4169,4170,4173],{},"Це не догма. Іноді деталі ",[3516,4167,4168],{},"свідомо"," виносять на root Stack, щоб сховати tab bar і дати більше місця. Важливо ",[3516,4171,4172],{},"обрати"," свідомо, а не отримати побічний ефект «так вийшло з файлами».",[3731,4175],{},[3507,4177,4179],{"id":4178},"місток-зі-статті-11-не-таблицею-для-своїх","Місток зі статті 11 (не таблицею «для своїх»)",[3512,4181,4182],{},"Після статті 11 у вас уже є:",[3802,4184,4185,4200,4203,4213],{},[3571,4186,4187,4188,4191,4192,4191,4194,4196,4197,4199],{},"розуміння ",[3521,4189,4190],{},"app\u002F",", ",[3521,4193,3870],{},[3521,4195,3876],{},", груп ",[3521,4198,3527],{},";",[3571,4201,4202],{},"Tabs і root Stack;",[3571,4204,4205,4191,4207,4191,4210,4199],{},[3521,4206,3535],{},[3521,4208,4209],{},"router.push",[3521,4211,4212],{},"router.back",[3571,4214,4215],{},"уявлення про typed routes.",[3512,4217,4218,4219,4222],{},"Що змінюється зараз — ",[3516,4220,4221],{},"глибина дерева",", а не «інший Router».",[4224,4225,4226,4239],"table",{},[4227,4228,4229],"thead",{},[4230,4231,4232,4236],"tr",{},[4233,4234,4235],"th",{},"Було (типово після ст. 11)",[4233,4237,4238],{},"Стає (ця стаття)",[4240,4241,4242,4261,4277,4292,4306,4317],"tbody",{},[4230,4243,4244,4252],{},[4245,4246,4247,4248,4251],"td",{},"Вкладка = один файл (",[3521,4249,4250],{},"index.tsx",")",[4245,4253,4254,4255,4258,4259,4251],{},"Вкладка = ",[3516,4256,4257],{},"тека"," з власним Stack (",[3521,4260,3866],{},[4230,4262,4263,4266],{},[4245,4264,4265],{},"Усі «другі екрани» на root",[4245,4267,4268,4269,4272,4273,4276],{},"Деталі — ",[3516,4270,4271],{},"в"," гілці вкладки; modal — ",[3516,4274,4275],{},"на"," root",[4230,4278,4279,4284],{},[4245,4280,4281,4283],{},[3521,4282,3531],{}," як звичайний card",[4245,4285,4286,4288,4289],{},[3521,4287,3531],{}," як ",[3516,4290,4291],{},"modal",[4230,4293,4294,4300],{},[4245,4295,4296,4299],{},[3521,4297,4298],{},"back"," «просто назад»",[4245,4301,4302,4303],{},"Питання: ",[3516,4304,4305],{},"назад у якому стеку?",[4230,4307,4308,4311],{},[4245,4309,4310],{},"Auth «колись потім»",[4245,4312,4313,4314,4316],{},"Карта груп ",[3521,4315,3604],{}," \u002F app (без повного login у Nomad)",[4230,4318,4319,4322],{},[4245,4320,4321],{},"—",[4245,4323,4324],{},"Guard на leave з брудної форми",[3731,4326],{},[3507,4328,4330],{"id":4329},"як-влаштований-вкладений-stack-у-вкладці","Як влаштований вкладений Stack у вкладці",[4332,4333,4335],"h3",{"id":4334},"від-одного-файлу-до-каталогу","Від одного файлу до каталогу",[3512,4337,4338,4339,4342,4343,4346],{},"У статті 11 вкладка «Поїздки» могла бути просто ",[3521,4340,4341],{},"app\u002F(tabs)\u002Findex.tsx",". Цього мало, щойно з’являється ",[3516,4344,4345],{},"другий"," екран того ж розділу.",[3512,4348,4349],{},"Трансформація:",[3916,4351,4356],{"className":4352,"code":4354,"language":4355,"meta":3921},[4353],"language-text","# було\napp\u002F(tabs)\u002F\n  index.tsx          ← і список, і «куди ж діти деталі?»\n\n# стало\napp\u002F(tabs)\u002F\n  trips\u002F\n    _layout.tsx      ← Stack тільки для гілки «Поїздки»\n    index.tsx        ← список  → маршрут \u002Ftrips\n    [id].tsx         ← деталі → маршрут \u002Ftrips\u002F42\n  places.tsx\n  about.tsx\n","text",[3521,4357,4354],{"__ignoreMap":3921},[3512,4359,4360,4361,4364,4365,4368,4369,4372,4373,4375],{},"У ",[3521,4362,4363],{},"app\u002F(tabs)\u002F_layout.tsx"," замість ",[3521,4366,4367],{},"name=\"index\""," з’являється ",[3521,4370,4371],{},"name=\"trips\""," — бо вкладка тепер ",[3516,4374,4257],{},", а не файл.",[4332,4377,4379],{"id":4378},"що-відчуває-користувач","Що відчуває користувач",[3568,4381,4382,4385,4396,4403],{},[3571,4383,4384],{},"Відкриває вкладку «Поїздки» — бачить список (як раніше).",[3571,4386,4387,4388,4391,4392,4395],{},"Тапає картку — анімація push ",[3516,4389,4390],{},"всередині"," розділу; ",[3516,4393,4394],{},"внизу лишаються"," Поїздки \u002F Місця \u002F Ще.",[3571,4397,4398,4399,4402],{},"Тисне «назад» (header або жест) — знову список ",[3516,4400,4401],{},"цієї"," вкладки, а не «виліт» із розділу.",[3571,4404,4405,4406,4409],{},"Перемикає на «Місця» — інший розділ; повернувшись на «Поїздки», часто знову бачить ",[3516,4407,4408],{},"той самий"," вкладений стан (залежить від того, чи екран розмонтували — але ідея гілки саме така).",[3512,4411,4412,4413,4416,4417,4420],{},"Порівняйте з modal «Нова поїздка»: там вкладки ",[3516,4414,4415],{},"під"," модалкою, задача відчувається як ",[3516,4418,4419],{},"оверлей",", не як «глибше в список».",[4332,4422,4424],{"id":4423},"коли-обирати-nested-detail-а-коли-root-detail","Коли обирати nested detail, а коли root detail",[3512,4426,4427,4430],{},[3516,4428,4429],{},"Nested Stack (tabs видно)"," доречний, коли:",[3802,4432,4433,4440,4447],{},[3571,4434,4435,4436,4439],{},"деталі — природне ",[3516,4437,4438],{},"продовження"," стрічки того ж розділу;",[3571,4441,4442,4443,4446],{},"користувач часто ",[3516,4444,4445],{},"стрибає"," між вкладками;",[3571,4448,4449],{},"не потрібен «кіношний» повноекранний режим.",[3512,4451,4452,4430],{},[3516,4453,4454],{},"Detail на root Stack (tabs ховаються)",[3802,4456,4457,4460,4463],{},[3571,4458,4459],{},"потрібна максимальна площа (медіа, карта на весь екран);",[3571,4461,4462],{},"flow «зайшов у деталі = тимчасово вийшов з tab-світу»;",[3571,4464,4465,4466,4469,4470,4473],{},"той самий detail відкривають ",[3516,4467,4468],{},"з кількох"," вкладок і хочуть ",[3516,4471,4472],{},"одну"," повноекранну реалізацію.",[3512,4475,4360,4476,4478,4479,4482],{},[3516,4477,3680],{}," для поїздок обрано nested: щоденник — це розділ зі стрічкою й карткою, tabs корисні поруч. Форма створення — modal на root: окрема ",[3516,4480,4481],{},"задача",", не ще один рядок стрічки.",[4332,4484,4486],{"id":4485},"мінімальний-код-вкладеного-layout","Мінімальний код вкладеного layout",[3916,4488,4492],{"className":4489,"code":4490,"language":4491,"meta":3921,"style":3921},"language-tsx shiki shiki-themes light-plus dark-plus dark-plus","\u002F\u002F app\u002F(tabs)\u002Ftrips\u002F_layout.tsx\nimport { Stack } from 'expo-router';\n\nexport default function TripsStackLayout() {\n  return (\n    \u003CStack>\n      \u003CStack.Screen name=\"index\" options={{ headerShown: false }} \u002F>\n      \u003CStack.Screen\n        name=\"[id]\"\n        options={{ title: 'Поїздка', headerBackTitle: 'Список' }}\n      \u002F>\n    \u003C\u002FStack>\n  );\n}\n","tsx",[3521,4493,4494,4500,4526,4530,4549,4557,4569,4614,4621,4631,4660,4665,4674,4679],{"__ignoreMap":3921},[3925,4495,4496],{"class":3927,"line":3928},[3925,4497,4499],{"class":4498},"spJ8K","\u002F\u002F app\u002F(tabs)\u002Ftrips\u002F_layout.tsx\n",[3925,4501,4502,4506,4510,4513,4516,4519,4523],{"class":3927,"line":3934},[3925,4503,4505],{"class":4504},"s8xlr","import",[3925,4507,4509],{"class":4508},"sHH4Y"," { ",[3925,4511,3523],{"class":4512},"siwwj",[3925,4514,4515],{"class":4508}," } ",[3925,4517,4518],{"class":4504},"from",[3925,4520,4522],{"class":4521},"sbdoH"," 'expo-router'",[3925,4524,4525],{"class":4508},";\n",[3925,4527,4528],{"class":3927,"line":3940},[3925,4529,3950],{"emptyLinePlaceholder":3949},[3925,4531,4532,4535,4538,4542,4546],{"class":3927,"line":3946},[3925,4533,4534],{"class":4504},"export",[3925,4536,4537],{"class":4504}," default",[3925,4539,4541],{"class":4540},"su1O8"," function",[3925,4543,4545],{"class":4544},"s8Opu"," TripsStackLayout",[3925,4547,4548],{"class":4508},"() {\n",[3925,4550,4551,4554],{"class":3927,"line":3953},[3925,4552,4553],{"class":4504},"  return",[3925,4555,4556],{"class":4508}," (\n",[3925,4558,4559,4563,4566],{"class":3927,"line":3959},[3925,4560,4562],{"class":4561},"s0P7L","    \u003C",[3925,4564,3523],{"class":4565},"sN1BT",[3925,4567,4568],{"class":4561},">\n",[3925,4570,4571,4574,4577,4581,4584,4587,4590,4592,4595,4599,4602,4605,4608,4611],{"class":3927,"line":3965},[3925,4572,4573],{"class":4561},"      \u003C",[3925,4575,4576],{"class":4565},"Stack.Screen",[3925,4578,4580],{"class":4579},"sa4r_"," name",[3925,4582,4583],{"class":4508},"=",[3925,4585,4586],{"class":4521},"\"index\"",[3925,4588,4589],{"class":4579}," options",[3925,4591,4583],{"class":4508},[3925,4593,4594],{"class":4540},"{",[3925,4596,4598],{"class":4597},"sD7JJ","{ ",[3925,4600,4601],{"class":4512},"headerShown:",[3925,4603,4604],{"class":4540}," false",[3925,4606,4607],{"class":4597}," }",[3925,4609,4610],{"class":4540},"}",[3925,4612,4613],{"class":4561}," \u002F>\n",[3925,4615,4616,4618],{"class":3927,"line":3971},[3925,4617,4573],{"class":4561},[3925,4619,4620],{"class":4565},"Stack.Screen\n",[3925,4622,4623,4626,4628],{"class":3927,"line":3977},[3925,4624,4625],{"class":4579},"        name",[3925,4627,4583],{"class":4508},[3925,4629,4630],{"class":4521},"\"[id]\"\n",[3925,4632,4633,4636,4638,4640,4642,4645,4648,4650,4653,4656,4658],{"class":3927,"line":3983},[3925,4634,4635],{"class":4579},"        options",[3925,4637,4583],{"class":4508},[3925,4639,4594],{"class":4540},[3925,4641,4598],{"class":4597},[3925,4643,4644],{"class":4512},"title:",[3925,4646,4647],{"class":4521}," 'Поїздка'",[3925,4649,4191],{"class":4597},[3925,4651,4652],{"class":4512},"headerBackTitle:",[3925,4654,4655],{"class":4521}," 'Список'",[3925,4657,4607],{"class":4597},[3925,4659,4016],{"class":4540},[3925,4661,4662],{"class":3927,"line":3989},[3925,4663,4664],{"class":4561},"      \u002F>\n",[3925,4666,4667,4670,4672],{"class":3927,"line":3995},[3925,4668,4669],{"class":4561},"    \u003C\u002F",[3925,4671,3523],{"class":4565},[3925,4673,4568],{"class":4561},[3925,4675,4676],{"class":3927,"line":4001},[3925,4677,4678],{"class":4508},"  );\n",[3925,4680,4681],{"class":3927,"line":4007},[3925,4682,4016],{"class":4508},[3512,4684,4685],{},"Список відкриває деталі:",[3916,4687,4689],{"className":4489,"code":4688,"language":4491,"meta":3921,"style":3921},"router.push(`\u002Ftrips\u002F${trip.id}`);\n\u002F\u002F або \u003CLink href={`\u002Ftrips\u002F${trip.id}`} asChild>…\n",[3521,4690,4691,4725],{"__ignoreMap":3921},[3925,4692,4693,4696,4698,4700,4703,4706,4709,4712,4714,4717,4719,4722],{"class":3927,"line":3928},[3925,4694,4695],{"class":4512},"router",[3925,4697,3595],{"class":4508},[3925,4699,3650],{"class":4544},[3925,4701,4702],{"class":4508},"(",[3925,4704,4705],{"class":4521},"`\u002Ftrips\u002F",[3925,4707,4708],{"class":4540},"${",[3925,4710,4711],{"class":4512},"trip",[3925,4713,3595],{"class":4597},[3925,4715,4716],{"class":4512},"id",[3925,4718,4610],{"class":4540},[3925,4720,4721],{"class":4521},"`",[3925,4723,4724],{"class":4508},");\n",[3925,4726,4727],{"class":3927,"line":3934},[3925,4728,4729],{"class":4498},"\u002F\u002F або \u003CLink href={`\u002Ftrips\u002F${trip.id}`} asChild>…\n",[3512,4731,4732,4733,4738,4739,3851,4742,4745,4746,4748,4749,4751],{},"Зверніть увагу на шлях: ",[3516,4734,4735],{},[3521,4736,4737],{},"\u002Ftrips\u002F...",", бо сегмент теки ",[3521,4740,4741],{},"trips",[3516,4743,4744],{},"входить"," у URL (на відміну від групи ",[3521,4747,3527],{},", яка в URL ",[3516,4750,3710],{}," видно).",[4332,4753,4755],{"id":4754},"хто-ким-керує","Хто ким керує",[4757,4758,4759,4787,4803,4816,4825],"field-group",{},[4760,4761,4763,4764,4767,4768,4191,4770,4191,4773,4776,4777,4779,4780,4783,4784,4786],"field",{"name":4762,"type":4363},"Tabs layout","Знає лише ",[3516,4765,4766],{},"вкладки",": ",[3521,4769,4741],{},[3521,4771,4772],{},"places",[3521,4774,4775],{},"about",". Він ",[3516,4778,3710],{}," перелічує екрани ",[3521,4781,4782],{},"trips\u002F[id]"," — для нього вкладка ",[3521,4785,4741],{}," — «один слот», усередині якого вже живе свій навігатор.",[4760,4788,4791,4792,4767,4795,3536,4797,4799,4800,3595],{"name":4789,"type":4790},"Вкладений Stack layout","app\u002F(tabs)\u002Ftrips\u002F_layout.tsx","Знає екрани ",[3516,4793,4794],{},"гілки поїздок",[3521,4796,3876],{},[3521,4798,3621],{},". Саме він малює header деталей і обробляє back ",[3516,4801,4802],{},"зі списку на деталі й назад",[4760,4804,4806,4807,4809,4810,4812,4813,4815],{"name":4805,"type":3843},"Root Stack layout","Знає «великі» гілки: ",[3521,4808,3527],{}," як ціле і, наприклад, ",[3521,4811,3531],{}," як modal. Root ",[3516,4814,3710],{}," займається push між списком і деталями поїздки — це робота nested Stack.",[4760,4817,4820,4821,4824],{"name":4818,"type":4819},"headerShown: false на index","options","Список часто з ",[3516,4822,4823],{},"власним"," заголовком у контенті (як у Nomad: «Мандрівник», чіпи теми). Системний header там зайвий. На деталях header, навпаки, зручний: title + системна «назад».",[4760,4826,4829,4830,4833],{"name":4827,"type":4828},"headerBackTitle","string (особливо iOS)","Текст біля стрілки «назад» на iOS. «Список» або «Поїздки» підказує, ",[3516,4831,4832],{},"куди"," повернетесь — важливіше, ніж здається на демо з одним екраном.",[4332,4835,4837,4838,4840],{"id":4836},"який-routerback-спрацьовує","Який ",[3521,4839,3660],{}," спрацьовує",[3512,4842,4843],{},"Це місце, де «суха» документація найчастіше підводить.",[3802,4845,4846,4864,4878],{},[3571,4847,4848,4849,4854,4855,4857,4858,4863],{},"Стоїте на ",[3516,4850,4851],{},[3521,4852,4853],{},"\u002Ftrips\u002F3"," (деталі у nested Stack) → ",[3521,4856,3660],{}," зазвичай веде на ",[3516,4859,4860],{},[3521,4861,4862],{},"\u002Ftrips"," (список). Tab bar як був.",[3571,4865,4848,4866,4871,4872,3851,4874,4877],{},[3516,4867,4868],{},[3521,4869,4870],{},"\u002Fcreate-trip"," (modal на root) → ",[3521,4873,3660],{},[3516,4875,4876],{},"закриває modal"," і повертає туди, звідки відкрили (список, about, навіть деталі).",[3571,4879,4880,4881,4884,4885,4888,4889,4892,4893,4898,4899,4902],{},"Якщо зробити ",[3521,4882,4883],{},"router.push('\u002F')"," «аби як закрити» після форми — можете ",[3516,4886,4887],{},"накласти"," зайвий екран в історію; back потім відкриє ",[3516,4890,4891],{},"порожню форму"," знову. Після modal майже завжди ",[3516,4894,4895],{},[3521,4896,4897],{},"back()"," або ",[3521,4900,4901],{},"replace",", не «push home».",[3512,4904,4905,4906,4909],{},"Правило: ",[3516,4907,4908],{},"back знімає верхівку того стека, у якому цей екран лежить."," Nested detail і root modal — різні стеки.",[3731,4911],{},[3507,4913,4915],{"id":4914},"modal-докладніше-не-інший-router-а-інший-показ","Modal докладніше: не «інший Router», а інший показ",[4332,4917,4919],{"id":4918},"що-таке-modal-у-термінах-ux","Що таке modal у термінах UX",[3512,4921,4922,3576,4925,4928,4929,4932,4933,4936],{},[3516,4923,4924],{},"Модальний екран",[3578,4926,4927],{},"modal screen",") — UI, який ",[3516,4930,4931],{},"перериває"," поточний контекст і вимагає дії (заповнити, підтвердити, закрити), після чого людина ",[3516,4934,4935],{},"повертається"," туди, де була.",[3512,4938,4939],{},"Приклади з життя телефону: «Новий контакт», «Фільтри», «Поділитись», «Швидка нотатка».",[3512,4941,4942],{},"Це відрізняється від:",[3802,4944,4945,4950],{},[3571,4946,4947,4949],{},[3516,4948,4766],{}," — довгоживучий розділ;",[3571,4951,4952,4955],{},[3516,4953,4954],{},"detail push"," — поглиблення в контент того ж розділу.",[3512,4957,4958],{},[3906,4959],{"alt":4960,"className":4961,"src":4962},"Звичайний card push проти modal",[3910],"\u002Fimages\u002Freact-native\u002Fnested-navigators-and-modals\u002F02.svg",[4332,4964,4966],{"id":4965},"що-таке-modal-у-термінах-expo-router-react-navigation","Що таке modal у термінах Expo Router \u002F React Navigation",[3512,4968,4969,4970,4974],{},"У Stack у кожного екрана є опції показу. Ключова — ",[3516,4971,4972],{},[3521,4973,3594],{},":",[3802,4976,4977,4985],{},[3571,4978,4979,4984],{},[3516,4980,4981],{},[3521,4982,4983],{},"card"," (часто за замовчуванням) — «звичайний» перехід у стос екранів;",[3571,4986,4987,4991],{},[3516,4988,4989],{},[3521,4990,4291],{}," — модальний стиль (на iOS часто card-over-card \u002F sheet-подібна метафора; на Android — свій material-перехід).",[3512,4993,4994,4995,3837,4998,5000,5001,5003,5004,5006],{},"Тобто файл ",[3521,4996,4997],{},"create-trip.tsx",[3516,4999,4408],{}," тип маршруту, що й інші. Відрізняється ",[3516,5002,4819],{}," на ",[3521,5005,4576],{}," у layout.",[3916,5008,5010],{"className":4489,"code":5009,"language":4491,"meta":3921,"style":3921},"\u003CStack.Screen\n  name=\"create-trip\"\n  options={{\n    presentation: 'modal',\n    title: 'Нова поїздка',\n    headerBackTitle: 'Закрити',\n  }}\n\u002F>\n",[3521,5011,5012,5019,5029,5041,5052,5062,5072,5079],{"__ignoreMap":3921},[3925,5013,5014,5017],{"class":3927,"line":3928},[3925,5015,5016],{"class":4561},"\u003C",[3925,5018,4620],{"class":4565},[3925,5020,5021,5024,5026],{"class":3927,"line":3934},[3925,5022,5023],{"class":4579},"  name",[3925,5025,4583],{"class":4508},[3925,5027,5028],{"class":4521},"\"create-trip\"\n",[3925,5030,5031,5034,5036,5038],{"class":3927,"line":3940},[3925,5032,5033],{"class":4579},"  options",[3925,5035,4583],{"class":4508},[3925,5037,4594],{"class":4540},[3925,5039,5040],{"class":4597},"{\n",[3925,5042,5043,5046,5049],{"class":3927,"line":3946},[3925,5044,5045],{"class":4512},"    presentation:",[3925,5047,5048],{"class":4521}," 'modal'",[3925,5050,5051],{"class":4597},",\n",[3925,5053,5054,5057,5060],{"class":3927,"line":3953},[3925,5055,5056],{"class":4512},"    title:",[3925,5058,5059],{"class":4521}," 'Нова поїздка'",[3925,5061,5051],{"class":4597},[3925,5063,5064,5067,5070],{"class":3927,"line":3959},[3925,5065,5066],{"class":4512},"    headerBackTitle:",[3925,5068,5069],{"class":4521}," 'Закрити'",[3925,5071,5051],{"class":4597},[3925,5073,5074,5077],{"class":3927,"line":3965},[3925,5075,5076],{"class":4597},"  }",[3925,5078,4016],{"class":4540},[3925,5080,5081],{"class":3927,"line":3971},[3925,5082,5083],{"class":4561},"\u002F>\n",[3512,5085,5086,5087,5089],{},"Відкриття ",[3516,5088,3710],{}," потребує окремого API:",[3916,5091,5093],{"className":4489,"code":5092,"language":4491,"meta":3921,"style":3921},"router.push('\u002Fcreate-trip');\n",[3521,5094,5095],{"__ignoreMap":3921},[3925,5096,5097,5099,5101,5103,5105,5108],{"class":3927,"line":3928},[3925,5098,4695],{"class":4512},[3925,5100,3595],{"class":4508},[3925,5102,3650],{"class":4544},[3925,5104,4702],{"class":4508},[3925,5106,5107],{"class":4521},"'\u002Fcreate-trip'",[3925,5109,4724],{"class":4508},[3512,5111,5112],{},"Закриття:",[3916,5114,5116],{"className":4489,"code":5115,"language":4491,"meta":3921,"style":3921},"router.back(); \u002F\u002F після submit або «Скасувати»\n",[3521,5117,5118],{"__ignoreMap":3921},[3925,5119,5120,5122,5124,5126,5129],{"class":3927,"line":3928},[3925,5121,4695],{"class":4512},[3925,5123,3595],{"class":4508},[3925,5125,4298],{"class":4544},[3925,5127,5128],{"class":4508},"(); ",[3925,5130,5131],{"class":4498},"\u002F\u002F після submit або «Скасувати»\n",[4332,5133,5135],{"id":5134},"де-фізично-лежить-файл-modal","Де фізично лежить файл modal",[3512,5137,5138],{},"Практичне правило курсу:",[3802,5140,5141,5149],{},[3571,5142,5143,5148],{},[3516,5144,5145],{},[3521,5146,5147],{},"(tabs)\u002F..."," — довгоживучі розділи й їхня внутрішня глибина;",[3571,5150,5151,5157],{},[3516,5152,5153,5154,5156],{},"поруч із ",[3521,5155,3527],{}," на root Stack"," — modal і інші «оверлейні» задачі.",[3512,5159,5160,5161,3851,5163,5165,5166,5168,5169,5172],{},"Якщо покласти modal ",[3516,5162,3760],{},[3521,5164,3866],{}," Stack, він стане частиною історії ",[3516,5167,4766],{},". Інколи це потрібно; для «Нова поїздка» в Nomad зручніше root: форма одна, відкривається з home, about, деталей — і ",[3516,5170,5171],{},"завжди"," виглядає як глобальна задача.",[4332,5174,5176,5179],{"id":5175},"unstable_settings-і-якір",[3521,5177,5178],{},"unstable_settings"," і якір",[3916,5181,5183],{"className":4489,"code":5182,"language":4491,"meta":3921,"style":3921},"export const unstable_settings = {\n  initialRouteName: '(tabs)',\n};\n",[3521,5184,5185,5199,5209],{"__ignoreMap":3921},[3925,5186,5187,5189,5192,5196],{"class":3927,"line":3928},[3925,5188,4534],{"class":4504},[3925,5190,5191],{"class":4540}," const",[3925,5193,5195],{"class":5194},"s-QsJ"," unstable_settings",[3925,5197,5198],{"class":4508}," = {\n",[3925,5200,5201,5204,5207],{"class":3927,"line":3934},[3925,5202,5203],{"class":4512},"  initialRouteName:",[3925,5205,5206],{"class":4521}," '(tabs)'",[3925,5208,5051],{"class":4508},[3925,5210,5211],{"class":3927,"line":3940},[3925,5212,5213],{"class":4508},"};\n",[3512,5215,5216,5217,5220,5221,5224,5225,5227],{},"Навіщо: якщо застосунок ",[3516,5218,5219],{},"перезавантажили"," або відкрили deep link одразу на modal, навігатору потрібен ",[3516,5222,5223],{},"якір"," — базовий екран, «від якого» існує історія. Інакше кнопка «закрити» може повести себе дивно (немає куди back). Назва ",[3521,5226,5178],{}," у Expo — історична; опція широко використовується. Слідкуйте за docs вашого SDK.",[4332,5229,5231],{"id":5230},"після-submit-хто-оновлює-список","Після submit: хто оновлює список",[3512,5233,5234,5235,5237,5238,5243,5244,5247,5248,3536,5251,5253,5254,5257],{},"Modal ",[3516,5236,3710],{}," «повертає props» батькові як React-колбек між деревами файлів. У Nomad список живе в ",[3516,5239,5240],{},[3521,5241,5242],{},"TripsProvider"," (Context) ",[3516,5245,5246],{},"вище"," за Stack. Форма викликає ",[3521,5249,5250],{},"addTrip(trip)",[3521,5252,3660],{},". Вкладка зі списком ",[3516,5255,5256],{},"уже"," підписана на той самий Context — картка з’являється без «перезавантаження маршруту».",[3512,5259,5260,5261,5264],{},"Це важливий архітектурний урок: ",[3516,5262,5263],{},"стан, спільний для кількох гілок навігації, піднімають над навігаторами"," (Context зараз, RTK пізніше).",[4332,5266,5268],{"id":5267},"ios-і-android","iOS і Android",[5270,5271,5272,5282],"tabs",{},[5273,5274,5277,5278,5281],"tabs-item",{"icon":5275,"label":5276},"i-lucide-smartphone","iOS","Modal часто асоціюється з карткою, що наїжджає, інколи зі свайпом dismiss. Підпис у header («Закрити» \u002F back title) варто задати явно — дефолт може бути англійським або невдалим. Перевіряйте жест dismiss: якщо форма dirty, знадобиться guard (див. нижче), інакше свайп ",[3516,5279,5280],{},"тихо"," знищить введене.",[5273,5283,5285,5286,5289,5290,5293],{"icon":5275,"label":5284},"Android","Перехід і вигляд modal ближчі до повноцінного екрана з material-анімацією (залежить від версії RN \u002F Navigation). Системна кнопка ",[3516,5287,5288],{},"Back"," зазвичай ",[3516,5291,5292],{},"знімає (робить pop)"," modal з кореневого (root) Stack — тобто «закрити». Завжди проганяйте сценарій: відкрити форму з tabs → Back → чи повернулись на вкладку, а не вийшли із застосунку.",[4757,5295,5296,5304,5319,5327],{},[4760,5297,5299,5300,5303],{"name":3594,"type":5298},"'card' \\| 'modal' \\| 'transparentModal' \\| …","Головний важіль «як виглядає push». Для курсу й Nomad достатньо пари ",[3516,5301,5302],{},"card vs modal",". Існують також formSheet та інші режими — вони дають sheet зі snap points; підключайте, коли вже стабільні базові modal, і обов’язково перевіряйте на реальних iOS\u002FAndroid вашого SDK.",[4760,5305,5308,5309,5311,5312,5314,5315,5318],{"name":5306,"type":5307},"файл create-trip.tsx","маршрут","Звичайний екран із default export. Modal-поведінка задається ",[3516,5310,3710],{}," ім’ям файлу, а ",[3521,5313,4576],{}," options у layout (хоча ім’я файлу = ",[3521,5316,5317],{},"name"," маршруту).",[4760,5320,5322,5323,5326],{"name":5321,"type":4819},"header на modal","Часто ",[3521,5324,5325],{},"headerShown: true",", title «Нова поїздка», back\u002Fclose. Можна сховати header і намалювати свій — тоді не забудьте доступний спосіб закрити (кнопка + Back).",[4760,5328,5331,5334,5335,5337,5338,5341,5342,5344,5345,5348],{"name":5329,"type":5330},"провайдери","архітектура",[3521,5332,5333],{},"ThemeProvider"," \u002F ",[3521,5336,5242],{}," мають обгортати ",[3516,5339,5340],{},"root Stack",", а не лише ",[3521,5343,3527],{},". Інакше modal «не бачить» ",[3521,5346,5347],{},"useTrips()"," або тему.",[3731,5350],{},[3507,5352,5354,5355,5357],{"id":5353},"групи-auth-два-світи-інтерфейсу","Групи ",[3521,5356,3604],{},": два світи інтерфейсу",[3512,5359,5360,5361,5364],{},"У Nomad повноцінний login ще попереду (SecureStore, сесія). Але ",[3516,5362,5363],{},"картографію"," маршрутів закладають рано, щоб потім не переписувати все дерево.",[3512,5366,5367],{},[3906,5368],{"alt":5369,"className":5370,"src":5371},"Групи (auth) і зона застосунку",[3910],"\u002Fimages\u002Freact-native\u002Fnested-navigators-and-modals\u002F03.svg",[4332,5373,5375],{"id":5374},"проблема","Проблема",[3512,5377,5378,5379,5381,5382,5384,5385,5387],{},"Екрани «Увійти» \u002F «Зареєструватись» ",[3516,5380,3710],{}," повинні сидіти всередині ",[3521,5383,3527],{}," як «ще одна вкладка». І навпаки: стрічку поїздок ",[3516,5386,3710],{}," показують гостю так само, як користувачу, який увійшов (або показують, але з іншим guard — залежить від продукту).",[4332,5389,5391],{"id":5390},"ідея-груп","Ідея груп",[3512,5393,5394,5395,5398,5399,5401],{},"Використовують ",[3516,5396,5397],{},"групи"," тек (дужки, як ",[3521,5400,3527],{},"):",[3916,5403,5406],{"className":5404,"code":5405,"language":4355,"meta":3921},[4353],"app\u002F\n  _layout.tsx\n  (auth)\u002F\n    login.tsx\n    register.tsx\n  (app)\u002F          # або одразу (tabs)\n    (tabs)\u002F...\n",[3521,5407,5405],{"__ignoreMap":3921},[3512,5409,5410,5411,5413],{},"Група ",[3516,5412,3710],{}," додає сегмент у URL, але дозволяє:",[3802,5415,5416,5419,5422],{},[3571,5417,5418],{},"окремі layout (без tab bar на логіні);",[3571,5420,5421],{},"умовний редірект: «немає сесії → login»;",[3571,5423,5424,5426,5427,5430],{},[3521,5425,4901],{}," після успішного входу, щоб ",[3516,5428,5429],{},"Back не повернув"," на форму пароля.",[4332,5432,5434],{"id":5433},"stackprotected-і-класичний-редірект","Stack.Protected і класичний редірект",[3512,5436,5437,5438,3890,5443,5446,5447,4898,5450,3595],{},"У новіших версіях Expo Router з’являється декларативний ",[3516,5439,5440],{},[3521,5441,5442],{},"Stack.Protected",[3521,5444,5445],{},"guard={isLoggedIn}"," — екрани всередині рендеряться \u002F доступні лише коли guard істинний. Класичний підхід: у root layout читаєте сесію і робите ",[3521,5448,5449],{},"router.replace('\u002Flogin')",[3521,5451,5452],{},"replace('\u002F(tabs)')",[3512,5454,5455,5456,5459,5460,5462],{},"Обидва підходи — ",[3516,5457,5458],{},"про UI-маршрути",". Вони ",[3516,5461,3710],{}," замінюють:",[3802,5464,5465,5468,5471],{},[3571,5466,5467],{},"перевірку JWT на сервері;",[3571,5469,5470],{},"secure storage;",[3571,5472,5473],{},"захист API.",[5475,5476,5477,5480],"warning",{},[3516,5478,5479],{},"Часта плутанина."," «Ми сховали вкладки, доки немає логіну» ≠ «дані захищені». Зловмисник не зобов’язаний користуватись вашим UI. Auth-групи — UX і порядок екранів; безпека — на бекенді й у правильному зберіганні сесії (окремі статті курсу).",[3512,5482,4360,5483,5486,5487,3851,5489,5491],{},[3516,5484,5485],{},"цій"," статті для Nomad повний ",[3521,5488,3604],{},[3516,5490,3710],{}," впроваджуємо — лише закладаємо розуміння. Міні-проєкт зосереджений на nested + modal + guard.",[3731,5493],{},[3507,5495,5497],{"id":5496},"guard-на-назад-не-втратити-введене","Guard на «назад»: не втратити введене",[4332,5499,5501],{"id":5500},"сценарій","Сценарій",[3512,5503,5504],{},"Користувач відкрив modal «Нова нотатка», написав абзац, випадково:",[3802,5506,5507,5510,5513],{},[3571,5508,5509],{},"свайпнув dismiss на iOS;",[3571,5511,5512],{},"натиснув системний Back на Android;",[3571,5514,5515],{},"тапнув «закрити» в header.",[3512,5517,5518,5519,5522,5523,3595],{},"Без додаткової логіки екран ",[3516,5520,5521],{},"просто знімається",", текст зникає. Це не «баг React», а ",[3516,5524,5525],{},"відсутність продуктового правила",[3512,5527,5528],{},[3906,5529],{"alt":5530,"className":5531,"src":5532},"Спроба вийти → діалог підтвердження",[3910],"\u002Fimages\u002Freact-native\u002Fnested-navigators-and-modals\u002F04.svg",[4332,5534,5536],{"id":5535},"терміни","Терміни",[3512,5538,5539,3576,5542,5545,5546,5549,5550,5553,5554,3595],{},[3516,5540,5541],{},"Dirty",[3578,5543,5544],{},"брудна форма",") — користувач уже щось змінив порівняно з початковим станом. У React Hook Form це ",[3521,5547,5548],{},"formState.isDirty",". У простому ",[3521,5551,5552],{},"useState"," — наприклад ",[3521,5555,5556],{},"title.trim() || body.trim()",[3512,5558,5559,5562],{},[3516,5560,5561],{},"Leave \u002F remove"," — подія «цей екран хочуть прибрати з навігаційної історії» (back, dismiss, replace тощо).",[3512,5564,5565,5568],{},[3516,5566,5567],{},"Guard"," — логіка «не прибирати одразу, а спитати \u002F перевірити».",[4332,5570,5572],{"id":5571},"usepreventremove",[3521,5573,5574],{},"usePreventRemove",[3512,5576,5577,5578,5582,5583,3595],{},"У React Navigation (Expo Router стоїть на ньому) є хук ",[3516,5579,5580],{},[3521,5581,5574],{}," з пакета ",[3521,5584,5585],{},"@react-navigation\u002Fnative",[3512,5587,5588],{},"Ідея API:",[3916,5590,5592],{"className":4489,"code":5591,"language":4491,"meta":3921,"style":3921},"usePreventRemove(dirty, ({ data }) => {\n  \u002F\u002F dirty === true → сюди потрапляємо замість миттєвого leave\n  Alert.alert('Вийти без збереження?', '…', [\n    { text: 'Лишитись', style: 'cancel' },\n    {\n      text: 'Вийти',\n      style: 'destructive',\n      onPress: () => navigation.dispatch(data.action),\n    },\n  ]);\n});\n",[3521,5593,5594,5618,5623,5646,5668,5673,5683,5693,5725,5730,5735],{"__ignoreMap":3921},[3925,5595,5596,5598,5600,5603,5606,5609,5612,5615],{"class":3927,"line":3928},[3925,5597,5574],{"class":4544},[3925,5599,4702],{"class":4508},[3925,5601,5602],{"class":4512},"dirty",[3925,5604,5605],{"class":4508},", ({ ",[3925,5607,5608],{"class":4512},"data",[3925,5610,5611],{"class":4508}," }) ",[3925,5613,5614],{"class":4540},"=>",[3925,5616,5617],{"class":4508}," {\n",[3925,5619,5620],{"class":3927,"line":3934},[3925,5621,5622],{"class":4498},"  \u002F\u002F dirty === true → сюди потрапляємо замість миттєвого leave\n",[3925,5624,5625,5628,5630,5633,5635,5638,5640,5643],{"class":3927,"line":3940},[3925,5626,5627],{"class":4512},"  Alert",[3925,5629,3595],{"class":4508},[3925,5631,5632],{"class":4544},"alert",[3925,5634,4702],{"class":4508},[3925,5636,5637],{"class":4521},"'Вийти без збереження?'",[3925,5639,4191],{"class":4508},[3925,5641,5642],{"class":4521},"'…'",[3925,5644,5645],{"class":4508},", [\n",[3925,5647,5648,5651,5654,5657,5659,5662,5665],{"class":3927,"line":3946},[3925,5649,5650],{"class":4508},"    { ",[3925,5652,5653],{"class":4512},"text:",[3925,5655,5656],{"class":4521}," 'Лишитись'",[3925,5658,4191],{"class":4508},[3925,5660,5661],{"class":4512},"style:",[3925,5663,5664],{"class":4521}," 'cancel'",[3925,5666,5667],{"class":4508}," },\n",[3925,5669,5670],{"class":3927,"line":3953},[3925,5671,5672],{"class":4508},"    {\n",[3925,5674,5675,5678,5681],{"class":3927,"line":3959},[3925,5676,5677],{"class":4512},"      text:",[3925,5679,5680],{"class":4521}," 'Вийти'",[3925,5682,5051],{"class":4508},[3925,5684,5685,5688,5691],{"class":3927,"line":3965},[3925,5686,5687],{"class":4512},"      style:",[3925,5689,5690],{"class":4521}," 'destructive'",[3925,5692,5051],{"class":4508},[3925,5694,5695,5698,5700,5703,5705,5708,5710,5713,5715,5717,5719,5722],{"class":3927,"line":3971},[3925,5696,5697],{"class":4544},"      onPress",[3925,5699,4974],{"class":4512},[3925,5701,5702],{"class":4508}," () ",[3925,5704,5614],{"class":4540},[3925,5706,5707],{"class":4512}," navigation",[3925,5709,3595],{"class":4508},[3925,5711,5712],{"class":4544},"dispatch",[3925,5714,4702],{"class":4508},[3925,5716,5608],{"class":4512},[3925,5718,3595],{"class":4508},[3925,5720,5721],{"class":4512},"action",[3925,5723,5724],{"class":4508},"),\n",[3925,5726,5727],{"class":3927,"line":3977},[3925,5728,5729],{"class":4508},"    },\n",[3925,5731,5732],{"class":3927,"line":3983},[3925,5733,5734],{"class":4508},"  ]);\n",[3925,5736,5737],{"class":3927,"line":3989},[3925,5738,5739],{"class":4508},"});\n",[3512,5741,5742],{},"Покроково:",[3568,5744,5745,5748,5758,5768,5777,5780],{},[3571,5746,5747],{},"Користувач ініціює back\u002Fdismiss.",[3571,5749,5750,5751,5754,5755,5757],{},"Якщо ",[3521,5752,5753],{},"dirty === false"," — хук ",[3516,5756,3710],{}," блокує; екран іде як завжди.",[3571,5759,5750,5760,5763,5764,5767],{},[3521,5761,5762],{},"dirty === true"," — навігація ",[3516,5765,5766],{},"зупиняється",", викликається callback.",[3571,5769,5770,5771,5776],{},"У callback лежить ",[3516,5772,5773],{},[3521,5774,5775],{},"data.action"," — та дія, яку хотіли виконати.",[3571,5778,5779],{},"«Лишитись» — нічого не dispatch-имо; екран лишається.",[3571,5781,5782,5783,3837,5786,5789],{},"«Вийти» — ",[3521,5784,5785],{},"navigation.dispatch(data.action)",[3516,5787,5788],{},"дозволяємо"," відкладений leave.",[3512,5791,5792,5793,5796,5797,5800,5801,5803],{},"Після ",[3516,5794,5795],{},"успішного збереження"," важливо скинути dirty (окремий прапорець ",[3521,5798,5799],{},"saved"," або reset форми), інакше ",[3521,5802,4897],{}," після save знову покаже діалог.",[4757,5805,5806,5819,5823,5834,5846],{},[4760,5807,5809,5810,5812,5813,5816,5817,3595],{"name":5602,"type":5808},"boolean","Умова блокування. Рахуйте чесно: порожня форма не повинна питати «вийти?». Після save — ",[3521,5811,5602],{}," має стати false ",[3516,5814,5815],{},"до"," або узгоджено з ",[3521,5818,3660],{},[4760,5820,5822],{"name":5574,"type":5821},"хук","Підписується на спробу remove екрана. Працює в контексті React Navigation; екран має бути змонтований у навігаторі (modal \u002F stack screen).",[4760,5824,5826,5827,5830,5831,5833],{"name":5775,"type":5825},"NavigationAction","«Що саме хотіли зробити» (goBack тощо). Без ",[3521,5828,5829],{},"dispatch(action)"," після «Вийти» екран ",[3516,5832,3710],{}," закриється — ви лише показали Alert.",[4760,5835,5838,5839,5841,5842,5845],{"name":5836,"type":5837},"navigation","useNavigation()","Потрібен для ",[3521,5840,5712],{},". Імпорт з ",[3521,5843,5844],{},"expo-router"," \u002F React Navigation — за docs вашої версії; у міні-проєкті показано робочий варіант.",[4760,5847,5850],{"name":5848,"type":5849},"Alert","діалог","Системне підтвердження. На різних платформах виглядає по-своєму, але патерн «cancel \u002F destructive» зрозумілий користувачу.",[3512,5852,4360,5853,5855,5856,5858,5859,5862],{},[3516,5854,3531],{}," Nomad guard у цій статті ",[3516,5857,3710],{}," додаємо (форма вже велика; Pro-завдання — перенести патерн). У міні-проєкті «Нотатки» — ",[3516,5860,5861],{},"повна"," реалізація.",[3731,5864],{},[3507,5866,5868,5869,5871],{"id":5867},"динамічний-сегмент-id-рівно-стільки-скільки-треба-для-деталей","Динамічний сегмент ",[3521,5870,3621],{}," — рівно стільки, скільки треба для деталей",[3512,5873,5874],{},"Файл:",[3916,5876,5879],{"className":5877,"code":5878,"language":4355,"meta":3921},[4353],"app\u002F(tabs)\u002Ftrips\u002F[id].tsx\n",[3521,5880,5878],{"__ignoreMap":3921},[3512,5882,5883],{},"Маршрути:",[3802,5885,5886,5891],{},[3571,5887,5888],{},[3521,5889,5890],{},"\u002Ftrips\u002F1",[3571,5892,5893,5896],{},[3521,5894,5895],{},"\u002Ftrips\u002Flocal-1710000000"," (локально створена поїздка)",[3512,5898,5899],{},"Читання параметра:",[3916,5901,5903],{"className":4489,"code":5902,"language":4491,"meta":3921,"style":3921},"import { useLocalSearchParams } from 'expo-router';\n\nconst { id } = useLocalSearchParams\u003C{ id: string }>();\n\u002F\u002F інколи приходить string[] — нормалізуємо:\nconst tripId = Array.isArray(id) ? id[0] : id;\n",[3521,5904,5905,5922,5926,5953,5958],{"__ignoreMap":3921},[3925,5906,5907,5909,5911,5914,5916,5918,5920],{"class":3927,"line":3928},[3925,5908,4505],{"class":4504},[3925,5910,4509],{"class":4508},[3925,5912,5913],{"class":4512},"useLocalSearchParams",[3925,5915,4515],{"class":4508},[3925,5917,4518],{"class":4504},[3925,5919,4522],{"class":4521},[3925,5921,4525],{"class":4508},[3925,5923,5924],{"class":3927,"line":3934},[3925,5925,3950],{"emptyLinePlaceholder":3949},[3925,5927,5928,5931,5933,5935,5938,5940,5943,5945,5947,5950],{"class":3927,"line":3940},[3925,5929,5930],{"class":4540},"const",[3925,5932,4509],{"class":4508},[3925,5934,4716],{"class":5194},[3925,5936,5937],{"class":4508}," } = ",[3925,5939,5913],{"class":4544},[3925,5941,5942],{"class":4508},"\u003C{ ",[3925,5944,4716],{"class":4512},[3925,5946,4767],{"class":4508},[3925,5948,5949],{"class":4565},"string",[3925,5951,5952],{"class":4508}," }>();\n",[3925,5954,5955],{"class":3927,"line":3946},[3925,5956,5957],{"class":4498},"\u002F\u002F інколи приходить string[] — нормалізуємо:\n",[3925,5959,5960,5962,5965,5968,5971,5973,5976,5978,5980,5983,5985,5988,5992,5995,5997],{"class":3927,"line":3953},[3925,5961,5930],{"class":4540},[3925,5963,5964],{"class":5194}," tripId",[3925,5966,5967],{"class":4508}," = ",[3925,5969,5970],{"class":4512},"Array",[3925,5972,3595],{"class":4508},[3925,5974,5975],{"class":4544},"isArray",[3925,5977,4702],{"class":4508},[3925,5979,4716],{"class":4512},[3925,5981,5982],{"class":4508},") ? ",[3925,5984,4716],{"class":4512},[3925,5986,5987],{"class":4508},"[",[3925,5989,5991],{"class":5990},"sJj4R","0",[3925,5993,5994],{"class":4508},"] : ",[3925,5996,4716],{"class":4512},[3925,5998,4525],{"class":4508},[3512,6000,6001],{},"Далі:",[3916,6003,6005],{"className":4489,"code":6004,"language":4491,"meta":3921,"style":3921},"const trip = tripId ? getTrip(tripId) : undefined;\nif (!trip) {\n  \u002F\u002F екран «не знайдено» + кнопка назад\n}\n",[3521,6006,6007,6037,6050,6055],{"__ignoreMap":3921},[3925,6008,6009,6011,6014,6016,6019,6022,6025,6027,6029,6032,6035],{"class":3927,"line":3928},[3925,6010,5930],{"class":4540},[3925,6012,6013],{"class":5194}," trip",[3925,6015,5967],{"class":4508},[3925,6017,6018],{"class":4512},"tripId",[3925,6020,6021],{"class":4508}," ? ",[3925,6023,6024],{"class":4544},"getTrip",[3925,6026,4702],{"class":4508},[3925,6028,6018],{"class":4512},[3925,6030,6031],{"class":4508},") : ",[3925,6033,6034],{"class":4540},"undefined",[3925,6036,4525],{"class":4508},[3925,6038,6039,6042,6045,6047],{"class":3927,"line":3934},[3925,6040,6041],{"class":4504},"if",[3925,6043,6044],{"class":4508}," (!",[3925,6046,4711],{"class":4512},[3925,6048,6049],{"class":4508},") {\n",[3925,6051,6052],{"class":3927,"line":3940},[3925,6053,6054],{"class":4498},"  \u002F\u002F екран «не знайдено» + кнопка назад\n",[3925,6056,6057],{"class":3927,"line":3946},[3925,6058,4016],{"class":4508},[3512,6060,6061,6062,6065],{},"Чому параметр може бути масивом — нюанси парсингу URL\u002FRouter; захист ",[3521,6063,6064],{},"Array.isArray"," — добра звичка.",[3512,6067,6068,6071,6072,6075,6076,6078,6079,6082],{},[3516,6069,6070],{},"Чого ми свідомо не робимо в цій статті:"," query string, universal links, cold start з пуша. Це ",[3516,6073,6074],{},"стаття 13",". Тут ",[3521,6077,3621],{}," — лише ключ, щоб відкрити ",[3516,6080,6081],{},"конкретну"," поїздку з уже відомого списку в пам’яті.",[3731,6084],{},[3507,6086,6088],{"id":6087},"звязок-ідей-на-одному-прикладі-nomad","Зв’язок ідей на одному прикладі (Nomad)",[3512,6090,6091,6092,6094],{},"Пройдімо шлях користувача й позначимо ",[3516,6093,3656],{}," механізм працює.",[3512,6096,6097],{},[3906,6098],{"alt":6099,"className":6100,"src":6101},"Список → деталі (tabs) → modal → назад",[3910],"\u002Fimages\u002Freact-native\u002Fnested-navigators-and-modals\u002F05.svg",[6103,6104,6105,6109,6123,6127,6140,6144,6151,6155,6170,6174],"steps",{},[4332,6106,6108],{"id":6107},"_1-вкладка-поїздки","1. Вкладка «Поїздки»",[3512,6110,6111,6112,6114,6115,6118,6119,6122],{},"Працює ",[3516,6113,3808],{},". Контент — ",[3521,6116,6117],{},"trips\u002Findex"," у ",[3516,6120,6121],{},"nested Stack",". Header списку свій; tab bar видимий.",[4332,6124,6126],{"id":6125},"_2-тап-по-картці","2. Тап по картці",[3512,6128,6129,6132,6133,6136,6137,3595],{},[3521,6130,6131],{},"router.push('\u002Ftrips\u002F' + id)"," — push у ",[3516,6134,6135],{},"вкладеному"," Stack. Анімація «вперед»; tab bar ",[3516,6138,6139],{},"лишається",[4332,6141,6143],{"id":6142},"_3-екран-деталей","3. Екран деталей",[3512,6145,6146,6147,6150],{},"Той самий nested Stack. Header системний («назад» → список). Можна відкрити modal «Нова поїздка» — це вже ",[3516,6148,6149],{},"root"," Stack.",[4332,6152,6154],{"id":6153},"_4-modal-create-trip","4. Modal create-trip",[3512,6156,6157,6159,6160,6162,6163,6166,6167,6169],{},[3521,6158,3646],{}," на root. Tabs ",[3516,6161,4415],{}," модалкою. Submit → ",[3521,6164,6165],{},"addTrip"," у Context → ",[3521,6168,3660],{}," → знову деталі або список (звідки відкрили).",[4332,6171,6173],{"id":6172},"_5-вкладка-місця-тап","5. Вкладка «Місця» → тап",[3512,6175,6176,5003,6178,6181],{},[3521,6177,3650],{},[3521,6179,6180],{},"\u002Ftrips\u002F{tripId}"," — знову nested detail. Користувач потрапляє в гілку «Поїздки» на екрані деталей.",[3512,6183,6184,6185,6188],{},"Якщо на кроці 2 помилково зробити detail root-екраном без nested layout, на кроці 2 tab bar зникне — і ви отримаєте ",[3516,6186,6187],{},"інший"," продукт, навіть «з тим самим» React-компонентом картки.",[3731,6190],{},[3507,6192,6194],{"id":6193},"антипатерни-і-чому-вони-болять","Антипатерни (і чому вони болять)",[4332,6196,6198],{"id":6197},"_1-деталі-винесено-на-root-без-свідомого-рішення-про-tab-bar","1. Деталі винесено на root без свідомого рішення про tab bar",[3512,6200,6201,6202,6204,6205],{},"Симптом: «чомусь пропали вкладки». Насправді файл лежить не в ",[3521,6203,3866],{}," Stack, а на root. Або навпаки — хотіли full screen, а вклали в tabs. ",[3516,6206,6207],{},"Спочатку UX, потім шлях файлу.",[4332,6209,6211],{"id":6210},"_2-modal-як-пята-вкладка","2. Modal як п’ята вкладка",[3512,6213,6214,6215,6218],{},"«Нова поїздка» в tab bar завжди висить і скидає стан. Modal-задача — ",[3516,6216,6217],{},"тимчасова","; їй місце в Stack options, не в Tabs.",[4332,6220,6222,6223],{"id":6221},"_3-закрити-modal-через-push","3. Закрити modal через ",[3521,6224,6225],{},"push('\u002F')",[3512,6227,6228,6229,4898,6233,6235],{},"Псує історію: back повертає на форму. Після успіху — ",[3516,6230,6231],{},[3521,6232,4897],{},[3521,6234,4901],{}," осмислено.",[4332,6237,6239],{"id":6238},"_4-плутати-back-nested-і-back-root","4. Плутати back nested і back root",[3512,6241,6242],{},"З деталей чекаєте «закрити застосунок», а отримуєте список — або навпаки. Малюйте дерево навігаторів, перш ніж звинувачувати Router.",[4332,6244,6246],{"id":6245},"_5-dirty-форма-без-guard","5. Dirty-форма без guard",[3512,6248,6249],{},"Тиха втрата тексту = втрата довіри. Навіть простий Alert рятує.",[4332,6251,6253],{"id":6252},"_6-auth-сховали-кнопку-увійти","6. «Auth = сховали кнопку Увійти»",[3512,6255,6256,6257,6260],{},"Без розділення маршрутів \u002F redirect користувач з deep link може опинитись «всередині» без сесії. Групи й guard маршрутів — про ",[3516,6258,6259],{},"послідовність екранів",", плюс потім справжня сесія.",[4332,6262,6264],{"id":6263},"_7-товста-бізнес-логіка-в-кожному-layout","7. Товста бізнес-логіка в кожному layout",[3512,6266,6267,6268,3844],{},"Layout має з’єднувати навігатори й options, а не тягнути fetch на 200 рядків. Дані — у features \u002F providers (як ",[3521,6269,5242],{},[3731,6271],{},[3507,6273,6275],{"id":6274},"міні-проєкт-нотатки-від-а-до-я","Міні-проєкт: «Нотатки» (від А до Я)",[4332,6277,6279],{"id":6278},"мета","Мета",[3512,6281,6282,6283,6286],{},"Окремий застосунок поза Nomad. ",[3516,6284,6285],{},"Увесь код"," — у collapsible нижче.",[3568,6288,6289,6292,6295,6302],{},[3571,6290,6291],{},"Tabs: Нотатки | Про застосунок.",[3571,6293,6294],{},"У «Нотатки» — nested Stack: список → деталі.",[3571,6296,6297,6298,6301],{},"Modal «Нова нотатка» + ",[3516,6299,6300],{},"guard"," на back.",[3571,6303,6304],{},"Збережені нотатки з’являються в списку.",[4332,6306,6308],{"id":6307},"структура","Структура",[3916,6310,6313],{"className":6311,"code":6312,"language":4355,"meta":3921},[4353],"notes-app\u002F\n  app\u002F\n    _layout.tsx\n    (tabs)\u002F\n      _layout.tsx\n      notes\u002F\n        _layout.tsx\n        index.tsx\n        [id].tsx\n      about.tsx\n    modal\u002F\n      new.tsx\n  src\u002Fdata\u002FnotesStore.ts\n",[3521,6314,6312],{"__ignoreMap":3921},[4332,6316,6318],{"id":6317},"крок-1-створити-проєкт","Крок 1. Створити проєкт",[6103,6320,6321,6325,6357,6361,6379,6383,6397],{},[4332,6322,6324],{"id":6323},"_1-скарфолд","1. Скарфолд",[3916,6326,6330],{"className":6327,"code":6328,"language":6329,"meta":3921,"style":3921},"language-bash shiki shiki-themes light-plus dark-plus dark-plus","npx create-expo-app@latest notes-app -t tabs\ncd notes-app\n","bash",[3521,6331,6332,6349],{"__ignoreMap":3921},[3925,6333,6334,6337,6340,6343,6346],{"class":3927,"line":3928},[3925,6335,6336],{"class":4544},"npx",[3925,6338,6339],{"class":4521}," create-expo-app@latest",[3925,6341,6342],{"class":4521}," notes-app",[3925,6344,6345],{"class":4540}," -t",[3925,6347,6348],{"class":4521}," tabs\n",[3925,6350,6351,6354],{"class":3927,"line":3934},[3925,6352,6353],{"class":4544},"cd",[3925,6355,6356],{"class":4521}," notes-app\n",[4332,6358,6360],{"id":6359},"_2-іконки-за-потреби","2. Іконки (за потреби)",[3916,6362,6364],{"className":6327,"code":6363,"language":6329,"meta":3921,"style":3921},"npx expo install @expo\u002Fvector-icons\n",[3521,6365,6366],{"__ignoreMap":3921},[3925,6367,6368,6370,6373,6376],{"class":3927,"line":3928},[3925,6369,6336],{"class":4544},[3925,6371,6372],{"class":4521}," expo",[3925,6374,6375],{"class":4521}," install",[3925,6377,6378],{"class":4521}," @expo\u002Fvector-icons\n",[4332,6380,6382],{"id":6381},"_3-після-підстановки-файлів","3. Після підстановки файлів",[3916,6384,6386],{"className":6327,"code":6385,"language":6329,"meta":3921,"style":3921},"npx expo start\n",[3521,6387,6388],{"__ignoreMap":3921},[3925,6389,6390,6392,6394],{"class":3927,"line":3928},[3925,6391,6336],{"class":4544},[3925,6393,6372],{"class":4521},[3925,6395,6396],{"class":4521}," start\n",[3512,6398,6399,6400,6403],{},"Видаліть зайві екрани шаблону (",[3521,6401,6402],{},"explore"," тощо), залиште структуру як вище.",[4332,6405,6407,6408],{"id":6406},"крок-2-srcdatanotesstorets","Крок 2. ",[3521,6409,6410],{},"src\u002Fdata\u002FnotesStore.ts",[6412,6413,6415],"collapsible",{"title":6414},"Повний src\u002Fdata\u002FnotesStore.ts — розгорнути",[3916,6416,6420],{"className":6417,"code":6418,"language":6419,"meta":3921,"style":3921},"language-ts shiki shiki-themes light-plus dark-plus dark-plus","export type Note = {\n  id: string;\n  title: string;\n  body: string;\n  createdAt: number;\n};\n\ntype Listener = () => void;\n\nlet notes: Note[] = [\n  {\n    id: '1',\n    title: 'Список речей',\n    body: 'Павербанк, дощовик, копія квитків.',\n    createdAt: Date.now() - 86400000,\n  },\n  {\n    id: '2',\n    title: 'Ідеї маршруту',\n    body: 'Ранок — музей, обід — ринок, вечір — набережна.',\n    createdAt: Date.now() - 3600000,\n  },\n];\n\nconst listeners = new Set\u003CListener>();\n\nfunction emit() {\n  listeners.forEach((l) => l());\n}\n\nexport function getNotes(): Note[] {\n  return [...notes].sort((a, b) => b.createdAt - a.createdAt);\n}\n\nexport function getNote(id: string): Note | undefined {\n  return notes.find((n) => n.id === id);\n}\n\nexport function addNote(title: string, body: string): Note {\n  const note: Note = {\n    id: String(Date.now()),\n    title: title.trim() || 'Без назви',\n    body: body.trim(),\n    createdAt: Date.now(),\n  };\n  notes = [note, ...notes];\n  emit();\n  return note;\n}\n\nexport function subscribe(listener: Listener): () => void {\n  listeners.add(listener);\n  return () => {\n    listeners.delete(listener);\n  };\n}\n","ts",[3521,6421,6422,6434,6445,6456,6467,6479,6483,6487,6505,6509,6525,6530,6540,6549,6559,6580,6585,6589,6598,6607,6616,6633,6637,6642,6646,6669,6673,6683,6710,6714,6718,6736,6785,6790,6795,6825,6860,6865,6870,6904,6919,6939,6960,6975,6988,6994,7012,7021,7030,7035,7040,7068,7084,7095,7112,7117],{"__ignoreMap":3921},[3925,6423,6424,6426,6429,6432],{"class":3927,"line":3928},[3925,6425,4534],{"class":4504},[3925,6427,6428],{"class":4540}," type",[3925,6430,6431],{"class":4565}," Note",[3925,6433,5198],{"class":4508},[3925,6435,6436,6439,6441,6443],{"class":3927,"line":3934},[3925,6437,6438],{"class":4512},"  id",[3925,6440,4767],{"class":4508},[3925,6442,5949],{"class":4565},[3925,6444,4525],{"class":4508},[3925,6446,6447,6450,6452,6454],{"class":3927,"line":3940},[3925,6448,6449],{"class":4512},"  title",[3925,6451,4767],{"class":4508},[3925,6453,5949],{"class":4565},[3925,6455,4525],{"class":4508},[3925,6457,6458,6461,6463,6465],{"class":3927,"line":3946},[3925,6459,6460],{"class":4512},"  body",[3925,6462,4767],{"class":4508},[3925,6464,5949],{"class":4565},[3925,6466,4525],{"class":4508},[3925,6468,6469,6472,6474,6477],{"class":3927,"line":3953},[3925,6470,6471],{"class":4512},"  createdAt",[3925,6473,4767],{"class":4508},[3925,6475,6476],{"class":4565},"number",[3925,6478,4525],{"class":4508},[3925,6480,6481],{"class":3927,"line":3959},[3925,6482,5213],{"class":4508},[3925,6484,6485],{"class":3927,"line":3965},[3925,6486,3950],{"emptyLinePlaceholder":3949},[3925,6488,6489,6492,6495,6498,6500,6503],{"class":3927,"line":3971},[3925,6490,6491],{"class":4540},"type",[3925,6493,6494],{"class":4565}," Listener",[3925,6496,6497],{"class":4508}," = () ",[3925,6499,5614],{"class":4540},[3925,6501,6502],{"class":4565}," void",[3925,6504,4525],{"class":4508},[3925,6506,6507],{"class":3927,"line":3977},[3925,6508,3950],{"emptyLinePlaceholder":3949},[3925,6510,6511,6514,6517,6519,6522],{"class":3927,"line":3983},[3925,6512,6513],{"class":4540},"let",[3925,6515,6516],{"class":4512}," notes",[3925,6518,4767],{"class":4508},[3925,6520,6521],{"class":4565},"Note",[3925,6523,6524],{"class":4508},"[] = [\n",[3925,6526,6527],{"class":3927,"line":3989},[3925,6528,6529],{"class":4508},"  {\n",[3925,6531,6532,6535,6538],{"class":3927,"line":3995},[3925,6533,6534],{"class":4512},"    id:",[3925,6536,6537],{"class":4521}," '1'",[3925,6539,5051],{"class":4508},[3925,6541,6542,6544,6547],{"class":3927,"line":4001},[3925,6543,5056],{"class":4512},[3925,6545,6546],{"class":4521}," 'Список речей'",[3925,6548,5051],{"class":4508},[3925,6550,6551,6554,6557],{"class":3927,"line":4007},[3925,6552,6553],{"class":4512},"    body:",[3925,6555,6556],{"class":4521}," 'Павербанк, дощовик, копія квитків.'",[3925,6558,5051],{"class":4508},[3925,6560,6561,6564,6567,6569,6572,6575,6578],{"class":3927,"line":4013},[3925,6562,6563],{"class":4512},"    createdAt:",[3925,6565,6566],{"class":4512}," Date",[3925,6568,3595],{"class":4508},[3925,6570,6571],{"class":4544},"now",[3925,6573,6574],{"class":4508},"() - ",[3925,6576,6577],{"class":5990},"86400000",[3925,6579,5051],{"class":4508},[3925,6581,6582],{"class":3927,"line":4019},[3925,6583,6584],{"class":4508},"  },\n",[3925,6586,6587],{"class":3927,"line":4024},[3925,6588,6529],{"class":4508},[3925,6590,6591,6593,6596],{"class":3927,"line":4030},[3925,6592,6534],{"class":4512},[3925,6594,6595],{"class":4521}," '2'",[3925,6597,5051],{"class":4508},[3925,6599,6600,6602,6605],{"class":3927,"line":4036},[3925,6601,5056],{"class":4512},[3925,6603,6604],{"class":4521}," 'Ідеї маршруту'",[3925,6606,5051],{"class":4508},[3925,6608,6609,6611,6614],{"class":3927,"line":4041},[3925,6610,6553],{"class":4512},[3925,6612,6613],{"class":4521}," 'Ранок — музей, обід — ринок, вечір — набережна.'",[3925,6615,5051],{"class":4508},[3925,6617,6618,6620,6622,6624,6626,6628,6631],{"class":3927,"line":4047},[3925,6619,6563],{"class":4512},[3925,6621,6566],{"class":4512},[3925,6623,3595],{"class":4508},[3925,6625,6571],{"class":4544},[3925,6627,6574],{"class":4508},[3925,6629,6630],{"class":5990},"3600000",[3925,6632,5051],{"class":4508},[3925,6634,6635],{"class":3927,"line":4053},[3925,6636,6584],{"class":4508},[3925,6638,6639],{"class":3927,"line":4059},[3925,6640,6641],{"class":4508},"];\n",[3925,6643,6644],{"class":3927,"line":4065},[3925,6645,3950],{"emptyLinePlaceholder":3949},[3925,6647,6648,6650,6653,6655,6658,6661,6663,6666],{"class":3927,"line":4070},[3925,6649,5930],{"class":4540},[3925,6651,6652],{"class":5194}," listeners",[3925,6654,5967],{"class":4508},[3925,6656,6657],{"class":4540},"new",[3925,6659,6660],{"class":4544}," Set",[3925,6662,5016],{"class":4508},[3925,6664,6665],{"class":4565},"Listener",[3925,6667,6668],{"class":4508},">();\n",[3925,6670,6671],{"class":3927,"line":4076},[3925,6672,3950],{"emptyLinePlaceholder":3949},[3925,6674,6675,6678,6681],{"class":3927,"line":4082},[3925,6676,6677],{"class":4540},"function",[3925,6679,6680],{"class":4544}," emit",[3925,6682,4548],{"class":4508},[3925,6684,6685,6688,6690,6693,6696,6699,6702,6704,6707],{"class":3927,"line":4088},[3925,6686,6687],{"class":4512},"  listeners",[3925,6689,3595],{"class":4508},[3925,6691,6692],{"class":4544},"forEach",[3925,6694,6695],{"class":4508},"((",[3925,6697,6698],{"class":4512},"l",[3925,6700,6701],{"class":4508},") ",[3925,6703,5614],{"class":4540},[3925,6705,6706],{"class":4544}," l",[3925,6708,6709],{"class":4508},"());\n",[3925,6711,6712],{"class":3927,"line":4093},[3925,6713,4016],{"class":4508},[3925,6715,6716],{"class":3927,"line":4098},[3925,6717,3950],{"emptyLinePlaceholder":3949},[3925,6719,6721,6723,6725,6728,6731,6733],{"class":3927,"line":6720},31,[3925,6722,4534],{"class":4504},[3925,6724,4541],{"class":4540},[3925,6726,6727],{"class":4544}," getNotes",[3925,6729,6730],{"class":4508},"(): ",[3925,6732,6521],{"class":4565},[3925,6734,6735],{"class":4508},"[] {\n",[3925,6737,6739,6741,6744,6747,6750,6753,6755,6757,6759,6762,6764,6766,6769,6771,6774,6777,6779,6781,6783],{"class":3927,"line":6738},32,[3925,6740,4553],{"class":4504},[3925,6742,6743],{"class":4508}," [...",[3925,6745,6746],{"class":4512},"notes",[3925,6748,6749],{"class":4508},"].",[3925,6751,6752],{"class":4544},"sort",[3925,6754,6695],{"class":4508},[3925,6756,3724],{"class":4512},[3925,6758,4191],{"class":4508},[3925,6760,6761],{"class":4512},"b",[3925,6763,6701],{"class":4508},[3925,6765,5614],{"class":4540},[3925,6767,6768],{"class":4512}," b",[3925,6770,3595],{"class":4508},[3925,6772,6773],{"class":4512},"createdAt",[3925,6775,6776],{"class":4508}," - ",[3925,6778,3724],{"class":4512},[3925,6780,3595],{"class":4508},[3925,6782,6773],{"class":4512},[3925,6784,4724],{"class":4508},[3925,6786,6788],{"class":3927,"line":6787},33,[3925,6789,4016],{"class":4508},[3925,6791,6793],{"class":3927,"line":6792},34,[3925,6794,3950],{"emptyLinePlaceholder":3949},[3925,6796,6798,6800,6802,6805,6807,6809,6811,6813,6816,6818,6821,6823],{"class":3927,"line":6797},35,[3925,6799,4534],{"class":4504},[3925,6801,4541],{"class":4540},[3925,6803,6804],{"class":4544}," getNote",[3925,6806,4702],{"class":4508},[3925,6808,4716],{"class":4512},[3925,6810,4767],{"class":4508},[3925,6812,5949],{"class":4565},[3925,6814,6815],{"class":4508},"): ",[3925,6817,6521],{"class":4565},[3925,6819,6820],{"class":4508}," | ",[3925,6822,6034],{"class":4565},[3925,6824,5617],{"class":4508},[3925,6826,6828,6830,6832,6834,6837,6839,6842,6844,6846,6849,6851,6853,6856,6858],{"class":3927,"line":6827},36,[3925,6829,4553],{"class":4504},[3925,6831,6516],{"class":4512},[3925,6833,3595],{"class":4508},[3925,6835,6836],{"class":4544},"find",[3925,6838,6695],{"class":4508},[3925,6840,6841],{"class":4512},"n",[3925,6843,6701],{"class":4508},[3925,6845,5614],{"class":4540},[3925,6847,6848],{"class":4512}," n",[3925,6850,3595],{"class":4508},[3925,6852,4716],{"class":4512},[3925,6854,6855],{"class":4508}," === ",[3925,6857,4716],{"class":4512},[3925,6859,4724],{"class":4508},[3925,6861,6863],{"class":3927,"line":6862},37,[3925,6864,4016],{"class":4508},[3925,6866,6868],{"class":3927,"line":6867},38,[3925,6869,3950],{"emptyLinePlaceholder":3949},[3925,6871,6873,6875,6877,6880,6882,6885,6887,6889,6891,6894,6896,6898,6900,6902],{"class":3927,"line":6872},39,[3925,6874,4534],{"class":4504},[3925,6876,4541],{"class":4540},[3925,6878,6879],{"class":4544}," addNote",[3925,6881,4702],{"class":4508},[3925,6883,6884],{"class":4512},"title",[3925,6886,4767],{"class":4508},[3925,6888,5949],{"class":4565},[3925,6890,4191],{"class":4508},[3925,6892,6893],{"class":4512},"body",[3925,6895,4767],{"class":4508},[3925,6897,5949],{"class":4565},[3925,6899,6815],{"class":4508},[3925,6901,6521],{"class":4565},[3925,6903,5617],{"class":4508},[3925,6905,6907,6910,6913,6915,6917],{"class":3927,"line":6906},40,[3925,6908,6909],{"class":4540},"  const",[3925,6911,6912],{"class":5194}," note",[3925,6914,4767],{"class":4508},[3925,6916,6521],{"class":4565},[3925,6918,5198],{"class":4508},[3925,6920,6922,6924,6927,6929,6932,6934,6936],{"class":3927,"line":6921},41,[3925,6923,6534],{"class":4512},[3925,6925,6926],{"class":4544}," String",[3925,6928,4702],{"class":4508},[3925,6930,6931],{"class":4512},"Date",[3925,6933,3595],{"class":4508},[3925,6935,6571],{"class":4544},[3925,6937,6938],{"class":4508},"()),\n",[3925,6940,6942,6944,6947,6949,6952,6955,6958],{"class":3927,"line":6941},42,[3925,6943,5056],{"class":4512},[3925,6945,6946],{"class":4512}," title",[3925,6948,3595],{"class":4508},[3925,6950,6951],{"class":4544},"trim",[3925,6953,6954],{"class":4508},"() || ",[3925,6956,6957],{"class":4521},"'Без назви'",[3925,6959,5051],{"class":4508},[3925,6961,6963,6965,6968,6970,6972],{"class":3927,"line":6962},43,[3925,6964,6553],{"class":4512},[3925,6966,6967],{"class":4512}," body",[3925,6969,3595],{"class":4508},[3925,6971,6951],{"class":4544},[3925,6973,6974],{"class":4508},"(),\n",[3925,6976,6978,6980,6982,6984,6986],{"class":3927,"line":6977},44,[3925,6979,6563],{"class":4512},[3925,6981,6566],{"class":4512},[3925,6983,3595],{"class":4508},[3925,6985,6571],{"class":4544},[3925,6987,6974],{"class":4508},[3925,6989,6991],{"class":3927,"line":6990},45,[3925,6992,6993],{"class":4508},"  };\n",[3925,6995,6997,7000,7003,7005,7008,7010],{"class":3927,"line":6996},46,[3925,6998,6999],{"class":4512},"  notes",[3925,7001,7002],{"class":4508}," = [",[3925,7004,3682],{"class":4512},[3925,7006,7007],{"class":4508},", ...",[3925,7009,6746],{"class":4512},[3925,7011,6641],{"class":4508},[3925,7013,7015,7018],{"class":3927,"line":7014},47,[3925,7016,7017],{"class":4544},"  emit",[3925,7019,7020],{"class":4508},"();\n",[3925,7022,7024,7026,7028],{"class":3927,"line":7023},48,[3925,7025,4553],{"class":4504},[3925,7027,6912],{"class":4512},[3925,7029,4525],{"class":4508},[3925,7031,7033],{"class":3927,"line":7032},49,[3925,7034,4016],{"class":4508},[3925,7036,7038],{"class":3927,"line":7037},50,[3925,7039,3950],{"emptyLinePlaceholder":3949},[3925,7041,7043,7045,7047,7050,7052,7055,7057,7059,7062,7064,7066],{"class":3927,"line":7042},51,[3925,7044,4534],{"class":4504},[3925,7046,4541],{"class":4540},[3925,7048,7049],{"class":4544}," subscribe",[3925,7051,4702],{"class":4508},[3925,7053,7054],{"class":4512},"listener",[3925,7056,4767],{"class":4508},[3925,7058,6665],{"class":4565},[3925,7060,7061],{"class":4508},"): () ",[3925,7063,5614],{"class":4540},[3925,7065,6502],{"class":4565},[3925,7067,5617],{"class":4508},[3925,7069,7071,7073,7075,7078,7080,7082],{"class":3927,"line":7070},52,[3925,7072,6687],{"class":4512},[3925,7074,3595],{"class":4508},[3925,7076,7077],{"class":4544},"add",[3925,7079,4702],{"class":4508},[3925,7081,7054],{"class":4512},[3925,7083,4724],{"class":4508},[3925,7085,7087,7089,7091,7093],{"class":3927,"line":7086},53,[3925,7088,4553],{"class":4504},[3925,7090,5702],{"class":4508},[3925,7092,5614],{"class":4540},[3925,7094,5617],{"class":4508},[3925,7096,7098,7101,7103,7106,7108,7110],{"class":3927,"line":7097},54,[3925,7099,7100],{"class":4512},"    listeners",[3925,7102,3595],{"class":4508},[3925,7104,7105],{"class":4544},"delete",[3925,7107,4702],{"class":4508},[3925,7109,7054],{"class":4512},[3925,7111,4724],{"class":4508},[3925,7113,7115],{"class":3927,"line":7114},55,[3925,7116,6993],{"class":4508},[3925,7118,7120],{"class":3927,"line":7119},56,[3925,7121,4016],{"class":4508},[4332,7123,7125,7126],{"id":7124},"крок-3-app_layouttsx","Крок 3. ",[3521,7127,3843],{},[6412,7129,7131],{"title":7130},"Повний app\u002F_layout.tsx — розгорнути",[3916,7132,7134],{"className":4489,"code":7133,"language":4491,"meta":3921,"style":3921},"import { Stack } from 'expo-router';\nimport { StatusBar } from 'expo-status-bar';\n\nexport const unstable_settings = {\n  initialRouteName: '(tabs)',\n};\n\nexport default function RootLayout() {\n  return (\n    \u003C>\n      \u003CStatusBar style=\"dark\" \u002F>\n      \u003CStack\n        screenOptions={{\n          headerStyle: { backgroundColor: '#F8FAFC' },\n          headerTintColor: '#2563EB',\n          headerTitleStyle: { color: '#0F172A', fontWeight: '600' },\n          contentStyle: { backgroundColor: '#F8FAFC' },\n        }}\n      >\n        \u003CStack.Screen name=\"(tabs)\" options={{ headerShown: false }} \u002F>\n        \u003CStack.Screen\n          name=\"modal\u002Fnew\"\n          options={{\n            presentation: 'modal',\n            title: 'Нова нотатка',\n            headerBackTitle: 'Закрити',\n          }}\n        \u002F>\n      \u003C\u002FStack>\n    \u003C\u002F>\n  );\n}\n",[3521,7135,7136,7152,7170,7174,7184,7192,7196,7200,7213,7219,7224,7240,7247,7258,7273,7283,7306,7319,7326,7331,7363,7369,7379,7390,7399,7409,7418,7425,7430,7439,7444,7448],{"__ignoreMap":3921},[3925,7137,7138,7140,7142,7144,7146,7148,7150],{"class":3927,"line":3928},[3925,7139,4505],{"class":4504},[3925,7141,4509],{"class":4508},[3925,7143,3523],{"class":4512},[3925,7145,4515],{"class":4508},[3925,7147,4518],{"class":4504},[3925,7149,4522],{"class":4521},[3925,7151,4525],{"class":4508},[3925,7153,7154,7156,7158,7161,7163,7165,7168],{"class":3927,"line":3934},[3925,7155,4505],{"class":4504},[3925,7157,4509],{"class":4508},[3925,7159,7160],{"class":4512},"StatusBar",[3925,7162,4515],{"class":4508},[3925,7164,4518],{"class":4504},[3925,7166,7167],{"class":4521}," 'expo-status-bar'",[3925,7169,4525],{"class":4508},[3925,7171,7172],{"class":3927,"line":3940},[3925,7173,3950],{"emptyLinePlaceholder":3949},[3925,7175,7176,7178,7180,7182],{"class":3927,"line":3946},[3925,7177,4534],{"class":4504},[3925,7179,5191],{"class":4540},[3925,7181,5195],{"class":5194},[3925,7183,5198],{"class":4508},[3925,7185,7186,7188,7190],{"class":3927,"line":3953},[3925,7187,5203],{"class":4512},[3925,7189,5206],{"class":4521},[3925,7191,5051],{"class":4508},[3925,7193,7194],{"class":3927,"line":3959},[3925,7195,5213],{"class":4508},[3925,7197,7198],{"class":3927,"line":3965},[3925,7199,3950],{"emptyLinePlaceholder":3949},[3925,7201,7202,7204,7206,7208,7211],{"class":3927,"line":3971},[3925,7203,4534],{"class":4504},[3925,7205,4537],{"class":4504},[3925,7207,4541],{"class":4540},[3925,7209,7210],{"class":4544}," RootLayout",[3925,7212,4548],{"class":4508},[3925,7214,7215,7217],{"class":3927,"line":3977},[3925,7216,4553],{"class":4504},[3925,7218,4556],{"class":4508},[3925,7220,7221],{"class":3927,"line":3983},[3925,7222,7223],{"class":4561},"    \u003C>\n",[3925,7225,7226,7228,7230,7233,7235,7238],{"class":3927,"line":3989},[3925,7227,4573],{"class":4561},[3925,7229,7160],{"class":4565},[3925,7231,7232],{"class":4579}," style",[3925,7234,4583],{"class":4508},[3925,7236,7237],{"class":4521},"\"dark\"",[3925,7239,4613],{"class":4561},[3925,7241,7242,7244],{"class":3927,"line":3995},[3925,7243,4573],{"class":4561},[3925,7245,7246],{"class":4565},"Stack\n",[3925,7248,7249,7252,7254,7256],{"class":3927,"line":4001},[3925,7250,7251],{"class":4579},"        screenOptions",[3925,7253,4583],{"class":4508},[3925,7255,4594],{"class":4540},[3925,7257,5040],{"class":4597},[3925,7259,7260,7263,7265,7268,7271],{"class":3927,"line":4007},[3925,7261,7262],{"class":4512},"          headerStyle:",[3925,7264,4509],{"class":4597},[3925,7266,7267],{"class":4512},"backgroundColor:",[3925,7269,7270],{"class":4521}," '#F8FAFC'",[3925,7272,5667],{"class":4597},[3925,7274,7275,7278,7281],{"class":3927,"line":4013},[3925,7276,7277],{"class":4512},"          headerTintColor:",[3925,7279,7280],{"class":4521}," '#2563EB'",[3925,7282,5051],{"class":4597},[3925,7284,7285,7288,7290,7293,7296,7298,7301,7304],{"class":3927,"line":4019},[3925,7286,7287],{"class":4512},"          headerTitleStyle:",[3925,7289,4509],{"class":4597},[3925,7291,7292],{"class":4512},"color:",[3925,7294,7295],{"class":4521}," '#0F172A'",[3925,7297,4191],{"class":4597},[3925,7299,7300],{"class":4512},"fontWeight:",[3925,7302,7303],{"class":4521}," '600'",[3925,7305,5667],{"class":4597},[3925,7307,7308,7311,7313,7315,7317],{"class":3927,"line":4024},[3925,7309,7310],{"class":4512},"          contentStyle:",[3925,7312,4509],{"class":4597},[3925,7314,7267],{"class":4512},[3925,7316,7270],{"class":4521},[3925,7318,5667],{"class":4597},[3925,7320,7321,7324],{"class":3927,"line":4030},[3925,7322,7323],{"class":4597},"        }",[3925,7325,4016],{"class":4540},[3925,7327,7328],{"class":3927,"line":4036},[3925,7329,7330],{"class":4561},"      >\n",[3925,7332,7333,7336,7338,7340,7342,7345,7347,7349,7351,7353,7355,7357,7359,7361],{"class":3927,"line":4041},[3925,7334,7335],{"class":4561},"        \u003C",[3925,7337,4576],{"class":4565},[3925,7339,4580],{"class":4579},[3925,7341,4583],{"class":4508},[3925,7343,7344],{"class":4521},"\"(tabs)\"",[3925,7346,4589],{"class":4579},[3925,7348,4583],{"class":4508},[3925,7350,4594],{"class":4540},[3925,7352,4598],{"class":4597},[3925,7354,4601],{"class":4512},[3925,7356,4604],{"class":4540},[3925,7358,4607],{"class":4597},[3925,7360,4610],{"class":4540},[3925,7362,4613],{"class":4561},[3925,7364,7365,7367],{"class":3927,"line":4047},[3925,7366,7335],{"class":4561},[3925,7368,4620],{"class":4565},[3925,7370,7371,7374,7376],{"class":3927,"line":4053},[3925,7372,7373],{"class":4579},"          name",[3925,7375,4583],{"class":4508},[3925,7377,7378],{"class":4521},"\"modal\u002Fnew\"\n",[3925,7380,7381,7384,7386,7388],{"class":3927,"line":4059},[3925,7382,7383],{"class":4579},"          options",[3925,7385,4583],{"class":4508},[3925,7387,4594],{"class":4540},[3925,7389,5040],{"class":4597},[3925,7391,7392,7395,7397],{"class":3927,"line":4065},[3925,7393,7394],{"class":4512},"            presentation:",[3925,7396,5048],{"class":4521},[3925,7398,5051],{"class":4597},[3925,7400,7401,7404,7407],{"class":3927,"line":4070},[3925,7402,7403],{"class":4512},"            title:",[3925,7405,7406],{"class":4521}," 'Нова нотатка'",[3925,7408,5051],{"class":4597},[3925,7410,7411,7414,7416],{"class":3927,"line":4076},[3925,7412,7413],{"class":4512},"            headerBackTitle:",[3925,7415,5069],{"class":4521},[3925,7417,5051],{"class":4597},[3925,7419,7420,7423],{"class":3927,"line":4082},[3925,7421,7422],{"class":4597},"          }",[3925,7424,4016],{"class":4540},[3925,7426,7427],{"class":3927,"line":4088},[3925,7428,7429],{"class":4561},"        \u002F>\n",[3925,7431,7432,7435,7437],{"class":3927,"line":4093},[3925,7433,7434],{"class":4561},"      \u003C\u002F",[3925,7436,3523],{"class":4565},[3925,7438,4568],{"class":4561},[3925,7440,7441],{"class":3927,"line":4098},[3925,7442,7443],{"class":4561},"    \u003C\u002F>\n",[3925,7445,7446],{"class":3927,"line":6720},[3925,7447,4678],{"class":4508},[3925,7449,7450],{"class":3927,"line":6738},[3925,7451,4016],{"class":4508},[4332,7453,7455,7456],{"id":7454},"крок-4-apptabs_layouttsx","Крок 4. ",[3521,7457,4363],{},[6412,7459,7461],{"title":7460},"Повний app\u002F(tabs)\u002F_layout.tsx — розгорнути",[3916,7462,7464],{"className":4489,"code":7463,"language":4491,"meta":3921,"style":3921},"import { Tabs } from 'expo-router';\nimport { Ionicons } from '@expo\u002Fvector-icons';\n\nexport default function TabsLayout() {\n  return (\n    \u003CTabs\n      screenOptions={{\n        headerShown: false,\n        tabBarActiveTintColor: '#2563EB',\n        tabBarInactiveTintColor: '#64748B',\n        tabBarStyle: {\n          backgroundColor: '#F8FAFC',\n          borderTopColor: '#E2E8F0',\n        },\n        tabBarLabelStyle: { fontSize: 12, fontWeight: '600' },\n      }}\n    >\n      \u003CTabs.Screen\n        name=\"notes\"\n        options={{\n          title: 'Нотатки',\n          tabBarIcon: ({ color, size }) => (\n            \u003CIonicons name=\"document-text-outline\" size={size} color={color} \u002F>\n          ),\n        }}\n      \u002F>\n      \u003CTabs.Screen\n        name=\"about\"\n        options={{\n          title: 'Про застосунок',\n          tabBarIcon: ({ color, size }) => (\n            \u003CIonicons\n              name=\"information-circle-outline\"\n              size={size}\n              color={color}\n            \u002F>\n          ),\n        }}\n      \u002F>\n    \u003C\u002FTabs>\n  );\n}\n",[3521,7465,7466,7482,7500,7504,7517,7523,7530,7541,7550,7559,7569,7576,7585,7595,7600,7621,7628,7633,7640,7649,7659,7669,7693,7731,7736,7742,7746,7752,7761,7771,7780,7800,7807,7817,7830,7843,7848,7852,7858,7862,7870,7874],{"__ignoreMap":3921},[3925,7467,7468,7470,7472,7474,7476,7478,7480],{"class":3927,"line":3928},[3925,7469,4505],{"class":4504},[3925,7471,4509],{"class":4508},[3925,7473,3808],{"class":4512},[3925,7475,4515],{"class":4508},[3925,7477,4518],{"class":4504},[3925,7479,4522],{"class":4521},[3925,7481,4525],{"class":4508},[3925,7483,7484,7486,7488,7491,7493,7495,7498],{"class":3927,"line":3934},[3925,7485,4505],{"class":4504},[3925,7487,4509],{"class":4508},[3925,7489,7490],{"class":4512},"Ionicons",[3925,7492,4515],{"class":4508},[3925,7494,4518],{"class":4504},[3925,7496,7497],{"class":4521}," '@expo\u002Fvector-icons'",[3925,7499,4525],{"class":4508},[3925,7501,7502],{"class":3927,"line":3940},[3925,7503,3950],{"emptyLinePlaceholder":3949},[3925,7505,7506,7508,7510,7512,7515],{"class":3927,"line":3946},[3925,7507,4534],{"class":4504},[3925,7509,4537],{"class":4504},[3925,7511,4541],{"class":4540},[3925,7513,7514],{"class":4544}," TabsLayout",[3925,7516,4548],{"class":4508},[3925,7518,7519,7521],{"class":3927,"line":3953},[3925,7520,4553],{"class":4504},[3925,7522,4556],{"class":4508},[3925,7524,7525,7527],{"class":3927,"line":3959},[3925,7526,4562],{"class":4561},[3925,7528,7529],{"class":4565},"Tabs\n",[3925,7531,7532,7535,7537,7539],{"class":3927,"line":3965},[3925,7533,7534],{"class":4579},"      screenOptions",[3925,7536,4583],{"class":4508},[3925,7538,4594],{"class":4540},[3925,7540,5040],{"class":4597},[3925,7542,7543,7546,7548],{"class":3927,"line":3971},[3925,7544,7545],{"class":4512},"        headerShown:",[3925,7547,4604],{"class":4540},[3925,7549,5051],{"class":4597},[3925,7551,7552,7555,7557],{"class":3927,"line":3977},[3925,7553,7554],{"class":4512},"        tabBarActiveTintColor:",[3925,7556,7280],{"class":4521},[3925,7558,5051],{"class":4597},[3925,7560,7561,7564,7567],{"class":3927,"line":3983},[3925,7562,7563],{"class":4512},"        tabBarInactiveTintColor:",[3925,7565,7566],{"class":4521}," '#64748B'",[3925,7568,5051],{"class":4597},[3925,7570,7571,7574],{"class":3927,"line":3989},[3925,7572,7573],{"class":4512},"        tabBarStyle:",[3925,7575,5617],{"class":4597},[3925,7577,7578,7581,7583],{"class":3927,"line":3995},[3925,7579,7580],{"class":4512},"          backgroundColor:",[3925,7582,7270],{"class":4521},[3925,7584,5051],{"class":4597},[3925,7586,7587,7590,7593],{"class":3927,"line":4001},[3925,7588,7589],{"class":4512},"          borderTopColor:",[3925,7591,7592],{"class":4521}," '#E2E8F0'",[3925,7594,5051],{"class":4597},[3925,7596,7597],{"class":3927,"line":4007},[3925,7598,7599],{"class":4597},"        },\n",[3925,7601,7602,7605,7607,7610,7613,7615,7617,7619],{"class":3927,"line":4013},[3925,7603,7604],{"class":4512},"        tabBarLabelStyle:",[3925,7606,4509],{"class":4597},[3925,7608,7609],{"class":4512},"fontSize:",[3925,7611,7612],{"class":5990}," 12",[3925,7614,4191],{"class":4597},[3925,7616,7300],{"class":4512},[3925,7618,7303],{"class":4521},[3925,7620,5667],{"class":4597},[3925,7622,7623,7626],{"class":3927,"line":4019},[3925,7624,7625],{"class":4597},"      }",[3925,7627,4016],{"class":4540},[3925,7629,7630],{"class":3927,"line":4024},[3925,7631,7632],{"class":4561},"    >\n",[3925,7634,7635,7637],{"class":3927,"line":4030},[3925,7636,4573],{"class":4561},[3925,7638,7639],{"class":4565},"Tabs.Screen\n",[3925,7641,7642,7644,7646],{"class":3927,"line":4036},[3925,7643,4625],{"class":4579},[3925,7645,4583],{"class":4508},[3925,7647,7648],{"class":4521},"\"notes\"\n",[3925,7650,7651,7653,7655,7657],{"class":3927,"line":4041},[3925,7652,4635],{"class":4579},[3925,7654,4583],{"class":4508},[3925,7656,4594],{"class":4540},[3925,7658,5040],{"class":4597},[3925,7660,7661,7664,7667],{"class":3927,"line":4047},[3925,7662,7663],{"class":4512},"          title:",[3925,7665,7666],{"class":4521}," 'Нотатки'",[3925,7668,5051],{"class":4597},[3925,7670,7671,7674,7676,7679,7682,7684,7687,7689,7691],{"class":3927,"line":4053},[3925,7672,7673],{"class":4544},"          tabBarIcon",[3925,7675,4974],{"class":4512},[3925,7677,7678],{"class":4597}," ({ ",[3925,7680,7681],{"class":4512},"color",[3925,7683,4191],{"class":4597},[3925,7685,7686],{"class":4512},"size",[3925,7688,5611],{"class":4597},[3925,7690,5614],{"class":4540},[3925,7692,4556],{"class":4597},[3925,7694,7695,7698,7700,7702,7704,7707,7710,7712,7714,7716,7718,7721,7723,7725,7727,7729],{"class":3927,"line":4059},[3925,7696,7697],{"class":4561},"            \u003C",[3925,7699,7490],{"class":4565},[3925,7701,4580],{"class":4579},[3925,7703,4583],{"class":4508},[3925,7705,7706],{"class":4521},"\"document-text-outline\"",[3925,7708,7709],{"class":4579}," size",[3925,7711,4583],{"class":4508},[3925,7713,4594],{"class":4540},[3925,7715,7686],{"class":4512},[3925,7717,4610],{"class":4540},[3925,7719,7720],{"class":4579}," color",[3925,7722,4583],{"class":4508},[3925,7724,4594],{"class":4540},[3925,7726,7681],{"class":4512},[3925,7728,4610],{"class":4540},[3925,7730,4613],{"class":4561},[3925,7732,7733],{"class":3927,"line":4065},[3925,7734,7735],{"class":4597},"          ),\n",[3925,7737,7738,7740],{"class":3927,"line":4070},[3925,7739,7323],{"class":4597},[3925,7741,4016],{"class":4540},[3925,7743,7744],{"class":3927,"line":4076},[3925,7745,4664],{"class":4561},[3925,7747,7748,7750],{"class":3927,"line":4082},[3925,7749,4573],{"class":4561},[3925,7751,7639],{"class":4565},[3925,7753,7754,7756,7758],{"class":3927,"line":4088},[3925,7755,4625],{"class":4579},[3925,7757,4583],{"class":4508},[3925,7759,7760],{"class":4521},"\"about\"\n",[3925,7762,7763,7765,7767,7769],{"class":3927,"line":4093},[3925,7764,4635],{"class":4579},[3925,7766,4583],{"class":4508},[3925,7768,4594],{"class":4540},[3925,7770,5040],{"class":4597},[3925,7772,7773,7775,7778],{"class":3927,"line":4098},[3925,7774,7663],{"class":4512},[3925,7776,7777],{"class":4521}," 'Про застосунок'",[3925,7779,5051],{"class":4597},[3925,7781,7782,7784,7786,7788,7790,7792,7794,7796,7798],{"class":3927,"line":6720},[3925,7783,7673],{"class":4544},[3925,7785,4974],{"class":4512},[3925,7787,7678],{"class":4597},[3925,7789,7681],{"class":4512},[3925,7791,4191],{"class":4597},[3925,7793,7686],{"class":4512},[3925,7795,5611],{"class":4597},[3925,7797,5614],{"class":4540},[3925,7799,4556],{"class":4597},[3925,7801,7802,7804],{"class":3927,"line":6738},[3925,7803,7697],{"class":4561},[3925,7805,7806],{"class":4565},"Ionicons\n",[3925,7808,7809,7812,7814],{"class":3927,"line":6787},[3925,7810,7811],{"class":4579},"              name",[3925,7813,4583],{"class":4508},[3925,7815,7816],{"class":4521},"\"information-circle-outline\"\n",[3925,7818,7819,7822,7824,7826,7828],{"class":3927,"line":6792},[3925,7820,7821],{"class":4579},"              size",[3925,7823,4583],{"class":4508},[3925,7825,4594],{"class":4540},[3925,7827,7686],{"class":4512},[3925,7829,4016],{"class":4540},[3925,7831,7832,7835,7837,7839,7841],{"class":3927,"line":6797},[3925,7833,7834],{"class":4579},"              color",[3925,7836,4583],{"class":4508},[3925,7838,4594],{"class":4540},[3925,7840,7681],{"class":4512},[3925,7842,4016],{"class":4540},[3925,7844,7845],{"class":3927,"line":6827},[3925,7846,7847],{"class":4561},"            \u002F>\n",[3925,7849,7850],{"class":3927,"line":6862},[3925,7851,7735],{"class":4597},[3925,7853,7854,7856],{"class":3927,"line":6867},[3925,7855,7323],{"class":4597},[3925,7857,4016],{"class":4540},[3925,7859,7860],{"class":3927,"line":6872},[3925,7861,4664],{"class":4561},[3925,7863,7864,7866,7868],{"class":3927,"line":6906},[3925,7865,4669],{"class":4561},[3925,7867,3808],{"class":4565},[3925,7869,4568],{"class":4561},[3925,7871,7872],{"class":3927,"line":6921},[3925,7873,4678],{"class":4508},[3925,7875,7876],{"class":3927,"line":6941},[3925,7877,4016],{"class":4508},[4332,7879,7881,7882],{"id":7880},"крок-5-nested-stack-apptabsnotes_layouttsx","Крок 5. Nested stack — ",[3521,7883,7884],{},"app\u002F(tabs)\u002Fnotes\u002F_layout.tsx",[6412,7886,7888],{"title":7887},"Повний app\u002F(tabs)\u002Fnotes\u002F_layout.tsx — розгорнути",[3916,7889,7891],{"className":4489,"code":7890,"language":4491,"meta":3921,"style":3921},"import { Stack } from 'expo-router';\n\nexport default function NotesStackLayout() {\n  return (\n    \u003CStack\n      screenOptions={{\n        headerStyle: { backgroundColor: '#F8FAFC' },\n        headerTintColor: '#2563EB',\n        headerTitleStyle: { color: '#0F172A', fontWeight: '600' },\n      }}\n    >\n      \u003CStack.Screen name=\"index\" options={{ headerShown: false }} \u002F>\n      \u003CStack.Screen\n        name=\"[id]\"\n        options={{ title: 'Нотатка', headerBackTitle: 'Список' }}\n      \u002F>\n    \u003C\u002FStack>\n  );\n}\n",[3521,7892,7893,7909,7913,7926,7932,7938,7948,7961,7970,7989,7995,7999,8029,8035,8043,8068,8072,8080,8084],{"__ignoreMap":3921},[3925,7894,7895,7897,7899,7901,7903,7905,7907],{"class":3927,"line":3928},[3925,7896,4505],{"class":4504},[3925,7898,4509],{"class":4508},[3925,7900,3523],{"class":4512},[3925,7902,4515],{"class":4508},[3925,7904,4518],{"class":4504},[3925,7906,4522],{"class":4521},[3925,7908,4525],{"class":4508},[3925,7910,7911],{"class":3927,"line":3934},[3925,7912,3950],{"emptyLinePlaceholder":3949},[3925,7914,7915,7917,7919,7921,7924],{"class":3927,"line":3940},[3925,7916,4534],{"class":4504},[3925,7918,4537],{"class":4504},[3925,7920,4541],{"class":4540},[3925,7922,7923],{"class":4544}," NotesStackLayout",[3925,7925,4548],{"class":4508},[3925,7927,7928,7930],{"class":3927,"line":3946},[3925,7929,4553],{"class":4504},[3925,7931,4556],{"class":4508},[3925,7933,7934,7936],{"class":3927,"line":3953},[3925,7935,4562],{"class":4561},[3925,7937,7246],{"class":4565},[3925,7939,7940,7942,7944,7946],{"class":3927,"line":3959},[3925,7941,7534],{"class":4579},[3925,7943,4583],{"class":4508},[3925,7945,4594],{"class":4540},[3925,7947,5040],{"class":4597},[3925,7949,7950,7953,7955,7957,7959],{"class":3927,"line":3965},[3925,7951,7952],{"class":4512},"        headerStyle:",[3925,7954,4509],{"class":4597},[3925,7956,7267],{"class":4512},[3925,7958,7270],{"class":4521},[3925,7960,5667],{"class":4597},[3925,7962,7963,7966,7968],{"class":3927,"line":3971},[3925,7964,7965],{"class":4512},"        headerTintColor:",[3925,7967,7280],{"class":4521},[3925,7969,5051],{"class":4597},[3925,7971,7972,7975,7977,7979,7981,7983,7985,7987],{"class":3927,"line":3977},[3925,7973,7974],{"class":4512},"        headerTitleStyle:",[3925,7976,4509],{"class":4597},[3925,7978,7292],{"class":4512},[3925,7980,7295],{"class":4521},[3925,7982,4191],{"class":4597},[3925,7984,7300],{"class":4512},[3925,7986,7303],{"class":4521},[3925,7988,5667],{"class":4597},[3925,7990,7991,7993],{"class":3927,"line":3983},[3925,7992,7625],{"class":4597},[3925,7994,4016],{"class":4540},[3925,7996,7997],{"class":3927,"line":3989},[3925,7998,7632],{"class":4561},[3925,8000,8001,8003,8005,8007,8009,8011,8013,8015,8017,8019,8021,8023,8025,8027],{"class":3927,"line":3995},[3925,8002,4573],{"class":4561},[3925,8004,4576],{"class":4565},[3925,8006,4580],{"class":4579},[3925,8008,4583],{"class":4508},[3925,8010,4586],{"class":4521},[3925,8012,4589],{"class":4579},[3925,8014,4583],{"class":4508},[3925,8016,4594],{"class":4540},[3925,8018,4598],{"class":4597},[3925,8020,4601],{"class":4512},[3925,8022,4604],{"class":4540},[3925,8024,4607],{"class":4597},[3925,8026,4610],{"class":4540},[3925,8028,4613],{"class":4561},[3925,8030,8031,8033],{"class":3927,"line":4001},[3925,8032,4573],{"class":4561},[3925,8034,4620],{"class":4565},[3925,8036,8037,8039,8041],{"class":3927,"line":4007},[3925,8038,4625],{"class":4579},[3925,8040,4583],{"class":4508},[3925,8042,4630],{"class":4521},[3925,8044,8045,8047,8049,8051,8053,8055,8058,8060,8062,8064,8066],{"class":3927,"line":4013},[3925,8046,4635],{"class":4579},[3925,8048,4583],{"class":4508},[3925,8050,4594],{"class":4540},[3925,8052,4598],{"class":4597},[3925,8054,4644],{"class":4512},[3925,8056,8057],{"class":4521}," 'Нотатка'",[3925,8059,4191],{"class":4597},[3925,8061,4652],{"class":4512},[3925,8063,4655],{"class":4521},[3925,8065,4607],{"class":4597},[3925,8067,4016],{"class":4540},[3925,8069,8070],{"class":3927,"line":4019},[3925,8071,4664],{"class":4561},[3925,8073,8074,8076,8078],{"class":3927,"line":4024},[3925,8075,4669],{"class":4561},[3925,8077,3523],{"class":4565},[3925,8079,4568],{"class":4561},[3925,8081,8082],{"class":3927,"line":4030},[3925,8083,4678],{"class":4508},[3925,8085,8086],{"class":3927,"line":4036},[3925,8087,4016],{"class":4508},[4332,8089,8091,8092],{"id":8090},"крок-6-список-apptabsnotesindextsx","Крок 6. Список — ",[3521,8093,8094],{},"app\u002F(tabs)\u002Fnotes\u002Findex.tsx",[6412,8096,8098],{"title":8097},"Повний app\u002F(tabs)\u002Fnotes\u002Findex.tsx — розгорнути",[3916,8099,8101],{"className":4489,"code":8100,"language":4491,"meta":3921,"style":3921},"import { useEffect, useState } from 'react';\nimport {\n  FlatList,\n  Pressable,\n  StyleSheet,\n  Text,\n  View,\n} from 'react-native';\nimport { Link, useRouter } from 'expo-router';\nimport { SafeAreaView } from 'react-native-safe-area-context';\n\nimport { getNotes, subscribe, type Note } from '..\u002F..\u002F..\u002Fsrc\u002Fdata\u002FnotesStore';\n\nexport default function NotesListScreen() {\n  const [notes, setNotes] = useState\u003CNote[]>(() => getNotes());\n  const router = useRouter();\n\n  useEffect(() => subscribe(() => setNotes(getNotes())), []);\n\n  return (\n    \u003CSafeAreaView style={styles.safe} edges={['top']}>\n      \u003CView style={styles.header}>\n        \u003CText style={styles.title}>Нотатки\u003C\u002FText>\n        \u003CText style={styles.muted}>\n          Nested Stack · modal · guard · {notes.length}\n        \u003C\u002FText>\n      \u003C\u002FView>\n\n      \u003CFlatList\n        data={notes}\n        keyExtractor={(item) => item.id}\n        contentContainerStyle={styles.list}\n        ItemSeparatorComponent={() => \u003CView style={{ height: 10 }} \u002F>}\n        ListEmptyComponent={\n          \u003CText style={styles.muted}>Порожньо. Створіть першу нотатку.\u003C\u002FText>\n        }\n        renderItem={({ item }) => (\n          \u003CLink href={`\u002Fnotes\u002F${item.id}`} asChild>\n            \u003CPressable style={styles.card}>\n              \u003CText style={styles.cardTitle}>{item.title}\u003C\u002FText>\n              \u003CText style={styles.cardBody} numberOfLines={2}>\n                {item.body || 'Без тексту'}\n              \u003C\u002FText>\n            \u003C\u002FPressable>\n          \u003C\u002FLink>\n        )}\n      \u002F>\n\n      \u003CView style={styles.footer}>\n        \u003CPressable\n          style={styles.btn}\n          onPress={() => router.push('\u002Fmodal\u002Fnew')}\n        >\n          \u003CText style={styles.btnText}>Нова нотатка (modal)\u003C\u002FText>\n        \u003C\u002FPressable>\n      \u003C\u002FView>\n    \u003C\u002FSafeAreaView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  safe: { flex: 1, backgroundColor: '#F8FAFC' },\n  header: {\n    paddingHorizontal: 16,\n    paddingTop: 8,\n    paddingBottom: 12,\n    borderBottomWidth: 1,\n    borderBottomColor: '#E2E8F0',\n  },\n  title: { fontSize: 24, fontWeight: '800', color: '#0F172A' },\n  muted: { marginTop: 4, color: '#64748B', fontSize: 13 },\n  list: { padding: 16, paddingBottom: 24, flexGrow: 1 },\n  card: {\n    backgroundColor: '#fff',\n    borderRadius: 12,\n    borderWidth: 1,\n    borderColor: '#E2E8F0',\n    padding: 14,\n  },\n  cardTitle: { fontSize: 17, fontWeight: '700', color: '#0F172A' },\n  cardBody: { marginTop: 6, color: '#64748B', fontSize: 14 },\n  footer: {\n    padding: 16,\n    borderTopWidth: 1,\n    borderTopColor: '#E2E8F0',\n  },\n  btn: {\n    backgroundColor: '#2563EB',\n    paddingVertical: 14,\n    borderRadius: 12,\n    alignItems: 'center',\n  },\n  btnText: { color: '#fff', fontWeight: '800' },\n});\n",[3521,8102,8103,8125,8131,8138,8145,8152,8159,8166,8178,8198,8216,8220,8249,8253,8266,8298,8311,8315,8341,8345,8351,8392,8416,8450,8473,8489,8498,8506,8510,8517,8530,8557,8575,8617,8626,8658,8663,8683,8718,8741,8781,8816,8835,8844,8853,8862,8869,8873,8877,8900,8907,8925,8953,8958,8990,8998,9006,9015,9020,9025,9030,9051,9073,9081,9092,9103,9113,9123,9133,9138,9166,9195,9224,9232,9243,9253,9263,9273,9284,9289,9317,9344,9352,9361,9371,9381,9386,9394,9403,9413,9422,9433,9438,9458],{"__ignoreMap":3921},[3925,8104,8105,8107,8109,8112,8114,8116,8118,8120,8123],{"class":3927,"line":3928},[3925,8106,4505],{"class":4504},[3925,8108,4509],{"class":4508},[3925,8110,8111],{"class":4512},"useEffect",[3925,8113,4191],{"class":4508},[3925,8115,5552],{"class":4512},[3925,8117,4515],{"class":4508},[3925,8119,4518],{"class":4504},[3925,8121,8122],{"class":4521}," 'react'",[3925,8124,4525],{"class":4508},[3925,8126,8127,8129],{"class":3927,"line":3934},[3925,8128,4505],{"class":4504},[3925,8130,5617],{"class":4508},[3925,8132,8133,8136],{"class":3927,"line":3940},[3925,8134,8135],{"class":4512},"  FlatList",[3925,8137,5051],{"class":4508},[3925,8139,8140,8143],{"class":3927,"line":3946},[3925,8141,8142],{"class":4512},"  Pressable",[3925,8144,5051],{"class":4508},[3925,8146,8147,8150],{"class":3927,"line":3953},[3925,8148,8149],{"class":4512},"  StyleSheet",[3925,8151,5051],{"class":4508},[3925,8153,8154,8157],{"class":3927,"line":3959},[3925,8155,8156],{"class":4512},"  Text",[3925,8158,5051],{"class":4508},[3925,8160,8161,8164],{"class":3927,"line":3965},[3925,8162,8163],{"class":4512},"  View",[3925,8165,5051],{"class":4508},[3925,8167,8168,8171,8173,8176],{"class":3927,"line":3971},[3925,8169,8170],{"class":4508},"} ",[3925,8172,4518],{"class":4504},[3925,8174,8175],{"class":4521}," 'react-native'",[3925,8177,4525],{"class":4508},[3925,8179,8180,8182,8184,8186,8188,8190,8192,8194,8196],{"class":3927,"line":3977},[3925,8181,4505],{"class":4504},[3925,8183,4509],{"class":4508},[3925,8185,3535],{"class":4512},[3925,8187,4191],{"class":4508},[3925,8189,3539],{"class":4512},[3925,8191,4515],{"class":4508},[3925,8193,4518],{"class":4504},[3925,8195,4522],{"class":4521},[3925,8197,4525],{"class":4508},[3925,8199,8200,8202,8204,8207,8209,8211,8214],{"class":3927,"line":3983},[3925,8201,4505],{"class":4504},[3925,8203,4509],{"class":4508},[3925,8205,8206],{"class":4512},"SafeAreaView",[3925,8208,4515],{"class":4508},[3925,8210,4518],{"class":4504},[3925,8212,8213],{"class":4521}," 'react-native-safe-area-context'",[3925,8215,4525],{"class":4508},[3925,8217,8218],{"class":3927,"line":3989},[3925,8219,3950],{"emptyLinePlaceholder":3949},[3925,8221,8222,8224,8226,8229,8231,8234,8236,8238,8240,8242,8244,8247],{"class":3927,"line":3995},[3925,8223,4505],{"class":4504},[3925,8225,4509],{"class":4508},[3925,8227,8228],{"class":4512},"getNotes",[3925,8230,4191],{"class":4508},[3925,8232,8233],{"class":4512},"subscribe",[3925,8235,4191],{"class":4508},[3925,8237,6491],{"class":4504},[3925,8239,6431],{"class":4512},[3925,8241,4515],{"class":4508},[3925,8243,4518],{"class":4504},[3925,8245,8246],{"class":4521}," '..\u002F..\u002F..\u002Fsrc\u002Fdata\u002FnotesStore'",[3925,8248,4525],{"class":4508},[3925,8250,8251],{"class":3927,"line":4001},[3925,8252,3950],{"emptyLinePlaceholder":3949},[3925,8254,8255,8257,8259,8261,8264],{"class":3927,"line":4007},[3925,8256,4534],{"class":4504},[3925,8258,4537],{"class":4504},[3925,8260,4541],{"class":4540},[3925,8262,8263],{"class":4544}," NotesListScreen",[3925,8265,4548],{"class":4508},[3925,8267,8268,8270,8273,8275,8277,8280,8283,8285,8287,8289,8292,8294,8296],{"class":3927,"line":4013},[3925,8269,6909],{"class":4540},[3925,8271,8272],{"class":4508}," [",[3925,8274,6746],{"class":5194},[3925,8276,4191],{"class":4508},[3925,8278,8279],{"class":5194},"setNotes",[3925,8281,8282],{"class":4508},"] = ",[3925,8284,5552],{"class":4544},[3925,8286,5016],{"class":4508},[3925,8288,6521],{"class":4565},[3925,8290,8291],{"class":4508},"[]>(() ",[3925,8293,5614],{"class":4540},[3925,8295,6727],{"class":4544},[3925,8297,6709],{"class":4508},[3925,8299,8300,8302,8305,8307,8309],{"class":3927,"line":4019},[3925,8301,6909],{"class":4540},[3925,8303,8304],{"class":5194}," router",[3925,8306,5967],{"class":4508},[3925,8308,3539],{"class":4544},[3925,8310,7020],{"class":4508},[3925,8312,8313],{"class":3927,"line":4024},[3925,8314,3950],{"emptyLinePlaceholder":3949},[3925,8316,8317,8320,8323,8325,8327,8329,8331,8334,8336,8338],{"class":3927,"line":4030},[3925,8318,8319],{"class":4544},"  useEffect",[3925,8321,8322],{"class":4508},"(() ",[3925,8324,5614],{"class":4540},[3925,8326,7049],{"class":4544},[3925,8328,8322],{"class":4508},[3925,8330,5614],{"class":4540},[3925,8332,8333],{"class":4544}," setNotes",[3925,8335,4702],{"class":4508},[3925,8337,8228],{"class":4544},[3925,8339,8340],{"class":4508},"())), []);\n",[3925,8342,8343],{"class":3927,"line":4036},[3925,8344,3950],{"emptyLinePlaceholder":3949},[3925,8346,8347,8349],{"class":3927,"line":4041},[3925,8348,4553],{"class":4504},[3925,8350,4556],{"class":4508},[3925,8352,8353,8355,8357,8359,8361,8363,8366,8368,8371,8373,8376,8378,8380,8382,8385,8388,8390],{"class":3927,"line":4047},[3925,8354,4562],{"class":4561},[3925,8356,8206],{"class":4565},[3925,8358,7232],{"class":4579},[3925,8360,4583],{"class":4508},[3925,8362,4594],{"class":4540},[3925,8364,8365],{"class":4512},"styles",[3925,8367,3595],{"class":4597},[3925,8369,8370],{"class":4512},"safe",[3925,8372,4610],{"class":4540},[3925,8374,8375],{"class":4579}," edges",[3925,8377,4583],{"class":4508},[3925,8379,4594],{"class":4540},[3925,8381,5987],{"class":4597},[3925,8383,8384],{"class":4521},"'top'",[3925,8386,8387],{"class":4597},"]",[3925,8389,4610],{"class":4540},[3925,8391,4568],{"class":4561},[3925,8393,8394,8396,8399,8401,8403,8405,8407,8409,8412,8414],{"class":3927,"line":4053},[3925,8395,4573],{"class":4561},[3925,8397,8398],{"class":4565},"View",[3925,8400,7232],{"class":4579},[3925,8402,4583],{"class":4508},[3925,8404,4594],{"class":4540},[3925,8406,8365],{"class":4512},[3925,8408,3595],{"class":4597},[3925,8410,8411],{"class":4512},"header",[3925,8413,4610],{"class":4540},[3925,8415,4568],{"class":4561},[3925,8417,8418,8420,8423,8425,8427,8429,8431,8433,8435,8437,8440,8443,8446,8448],{"class":3927,"line":4059},[3925,8419,7335],{"class":4561},[3925,8421,8422],{"class":4565},"Text",[3925,8424,7232],{"class":4579},[3925,8426,4583],{"class":4508},[3925,8428,4594],{"class":4540},[3925,8430,8365],{"class":4512},[3925,8432,3595],{"class":4597},[3925,8434,6884],{"class":4512},[3925,8436,4610],{"class":4540},[3925,8438,8439],{"class":4561},">",[3925,8441,8442],{"class":4508},"Нотатки",[3925,8444,8445],{"class":4561},"\u003C\u002F",[3925,8447,8422],{"class":4565},[3925,8449,4568],{"class":4561},[3925,8451,8452,8454,8456,8458,8460,8462,8464,8466,8469,8471],{"class":3927,"line":4065},[3925,8453,7335],{"class":4561},[3925,8455,8422],{"class":4565},[3925,8457,7232],{"class":4579},[3925,8459,4583],{"class":4508},[3925,8461,4594],{"class":4540},[3925,8463,8365],{"class":4512},[3925,8465,3595],{"class":4597},[3925,8467,8468],{"class":4512},"muted",[3925,8470,4610],{"class":4540},[3925,8472,4568],{"class":4561},[3925,8474,8475,8478,8480,8482,8484,8487],{"class":3927,"line":4070},[3925,8476,8477],{"class":4508},"          Nested Stack · modal · guard · ",[3925,8479,4594],{"class":4540},[3925,8481,6746],{"class":4512},[3925,8483,3595],{"class":4597},[3925,8485,8486],{"class":4512},"length",[3925,8488,4016],{"class":4540},[3925,8490,8491,8494,8496],{"class":3927,"line":4076},[3925,8492,8493],{"class":4561},"        \u003C\u002F",[3925,8495,8422],{"class":4565},[3925,8497,4568],{"class":4561},[3925,8499,8500,8502,8504],{"class":3927,"line":4082},[3925,8501,7434],{"class":4561},[3925,8503,8398],{"class":4565},[3925,8505,4568],{"class":4561},[3925,8507,8508],{"class":3927,"line":4088},[3925,8509,3950],{"emptyLinePlaceholder":3949},[3925,8511,8512,8514],{"class":3927,"line":4093},[3925,8513,4573],{"class":4561},[3925,8515,8516],{"class":4565},"FlatList\n",[3925,8518,8519,8522,8524,8526,8528],{"class":3927,"line":4098},[3925,8520,8521],{"class":4579},"        data",[3925,8523,4583],{"class":4508},[3925,8525,4594],{"class":4540},[3925,8527,6746],{"class":4512},[3925,8529,4016],{"class":4540},[3925,8531,8532,8535,8537,8539,8541,8544,8546,8548,8551,8553,8555],{"class":3927,"line":6720},[3925,8533,8534],{"class":4579},"        keyExtractor",[3925,8536,4583],{"class":4508},[3925,8538,4594],{"class":4540},[3925,8540,4702],{"class":4597},[3925,8542,8543],{"class":4512},"item",[3925,8545,6701],{"class":4597},[3925,8547,5614],{"class":4540},[3925,8549,8550],{"class":4512}," item",[3925,8552,3595],{"class":4597},[3925,8554,4716],{"class":4512},[3925,8556,4016],{"class":4540},[3925,8558,8559,8562,8564,8566,8568,8570,8573],{"class":3927,"line":6738},[3925,8560,8561],{"class":4579},"        contentContainerStyle",[3925,8563,4583],{"class":4508},[3925,8565,4594],{"class":4540},[3925,8567,8365],{"class":4512},[3925,8569,3595],{"class":4597},[3925,8571,8572],{"class":4512},"list",[3925,8574,4016],{"class":4540},[3925,8576,8577,8580,8582,8584,8587,8589,8592,8594,8596,8598,8600,8602,8605,8608,8610,8612,8615],{"class":3927,"line":6787},[3925,8578,8579],{"class":4579},"        ItemSeparatorComponent",[3925,8581,4583],{"class":4508},[3925,8583,4594],{"class":4540},[3925,8585,8586],{"class":4597},"() ",[3925,8588,5614],{"class":4540},[3925,8590,8591],{"class":4561}," \u003C",[3925,8593,8398],{"class":4565},[3925,8595,7232],{"class":4579},[3925,8597,4583],{"class":4508},[3925,8599,4594],{"class":4540},[3925,8601,4598],{"class":4597},[3925,8603,8604],{"class":4512},"height:",[3925,8606,8607],{"class":5990}," 10",[3925,8609,4607],{"class":4597},[3925,8611,4610],{"class":4540},[3925,8613,8614],{"class":4561}," \u002F>",[3925,8616,4016],{"class":4540},[3925,8618,8619,8622,8624],{"class":3927,"line":6792},[3925,8620,8621],{"class":4579},"        ListEmptyComponent",[3925,8623,4583],{"class":4508},[3925,8625,5040],{"class":4540},[3925,8627,8628,8631,8633,8635,8637,8639,8641,8643,8645,8647,8649,8652,8654,8656],{"class":3927,"line":6797},[3925,8629,8630],{"class":4561},"          \u003C",[3925,8632,8422],{"class":4565},[3925,8634,7232],{"class":4579},[3925,8636,4583],{"class":4508},[3925,8638,4594],{"class":4540},[3925,8640,8365],{"class":4512},[3925,8642,3595],{"class":4597},[3925,8644,8468],{"class":4512},[3925,8646,4610],{"class":4540},[3925,8648,8439],{"class":4561},[3925,8650,8651],{"class":4597},"Порожньо. Створіть першу нотатку.",[3925,8653,8445],{"class":4561},[3925,8655,8422],{"class":4565},[3925,8657,4568],{"class":4561},[3925,8659,8660],{"class":3927,"line":6827},[3925,8661,8662],{"class":4540},"        }\n",[3925,8664,8665,8668,8670,8672,8675,8677,8679,8681],{"class":3927,"line":6862},[3925,8666,8667],{"class":4579},"        renderItem",[3925,8669,4583],{"class":4508},[3925,8671,4594],{"class":4540},[3925,8673,8674],{"class":4597},"({ ",[3925,8676,8543],{"class":4512},[3925,8678,5611],{"class":4597},[3925,8680,5614],{"class":4540},[3925,8682,4556],{"class":4597},[3925,8684,8685,8687,8689,8692,8694,8696,8699,8701,8703,8705,8707,8709,8711,8713,8716],{"class":3927,"line":6867},[3925,8686,8630],{"class":4561},[3925,8688,3535],{"class":4565},[3925,8690,8691],{"class":4579}," href",[3925,8693,4583],{"class":4508},[3925,8695,4594],{"class":4540},[3925,8697,8698],{"class":4521},"`\u002Fnotes\u002F",[3925,8700,4708],{"class":4540},[3925,8702,8543],{"class":4512},[3925,8704,3595],{"class":4597},[3925,8706,4716],{"class":4512},[3925,8708,4610],{"class":4540},[3925,8710,4721],{"class":4521},[3925,8712,4610],{"class":4540},[3925,8714,8715],{"class":4579}," asChild",[3925,8717,4568],{"class":4561},[3925,8719,8720,8722,8725,8727,8729,8731,8733,8735,8737,8739],{"class":3927,"line":6872},[3925,8721,7697],{"class":4561},[3925,8723,8724],{"class":4565},"Pressable",[3925,8726,7232],{"class":4579},[3925,8728,4583],{"class":4508},[3925,8730,4594],{"class":4540},[3925,8732,8365],{"class":4512},[3925,8734,3595],{"class":4597},[3925,8736,4983],{"class":4512},[3925,8738,4610],{"class":4540},[3925,8740,4568],{"class":4561},[3925,8742,8743,8746,8748,8750,8752,8754,8756,8758,8761,8763,8765,8767,8769,8771,8773,8775,8777,8779],{"class":3927,"line":6906},[3925,8744,8745],{"class":4561},"              \u003C",[3925,8747,8422],{"class":4565},[3925,8749,7232],{"class":4579},[3925,8751,4583],{"class":4508},[3925,8753,4594],{"class":4540},[3925,8755,8365],{"class":4512},[3925,8757,3595],{"class":4597},[3925,8759,8760],{"class":4512},"cardTitle",[3925,8762,4610],{"class":4540},[3925,8764,8439],{"class":4561},[3925,8766,4594],{"class":4540},[3925,8768,8543],{"class":4512},[3925,8770,3595],{"class":4597},[3925,8772,6884],{"class":4512},[3925,8774,4610],{"class":4540},[3925,8776,8445],{"class":4561},[3925,8778,8422],{"class":4565},[3925,8780,4568],{"class":4561},[3925,8782,8783,8785,8787,8789,8791,8793,8795,8797,8800,8802,8805,8807,8809,8812,8814],{"class":3927,"line":6921},[3925,8784,8745],{"class":4561},[3925,8786,8422],{"class":4565},[3925,8788,7232],{"class":4579},[3925,8790,4583],{"class":4508},[3925,8792,4594],{"class":4540},[3925,8794,8365],{"class":4512},[3925,8796,3595],{"class":4597},[3925,8798,8799],{"class":4512},"cardBody",[3925,8801,4610],{"class":4540},[3925,8803,8804],{"class":4579}," numberOfLines",[3925,8806,4583],{"class":4508},[3925,8808,4594],{"class":4540},[3925,8810,8811],{"class":5990},"2",[3925,8813,4610],{"class":4540},[3925,8815,4568],{"class":4561},[3925,8817,8818,8821,8823,8825,8827,8830,8833],{"class":3927,"line":6941},[3925,8819,8820],{"class":4540},"                {",[3925,8822,8543],{"class":4512},[3925,8824,3595],{"class":4597},[3925,8826,6893],{"class":4512},[3925,8828,8829],{"class":4508}," ||",[3925,8831,8832],{"class":4521}," 'Без тексту'",[3925,8834,4016],{"class":4540},[3925,8836,8837,8840,8842],{"class":3927,"line":6962},[3925,8838,8839],{"class":4561},"              \u003C\u002F",[3925,8841,8422],{"class":4565},[3925,8843,4568],{"class":4561},[3925,8845,8846,8849,8851],{"class":3927,"line":6977},[3925,8847,8848],{"class":4561},"            \u003C\u002F",[3925,8850,8724],{"class":4565},[3925,8852,4568],{"class":4561},[3925,8854,8855,8858,8860],{"class":3927,"line":6990},[3925,8856,8857],{"class":4561},"          \u003C\u002F",[3925,8859,3535],{"class":4565},[3925,8861,4568],{"class":4561},[3925,8863,8864,8867],{"class":3927,"line":6996},[3925,8865,8866],{"class":4597},"        )",[3925,8868,4016],{"class":4540},[3925,8870,8871],{"class":3927,"line":7014},[3925,8872,4664],{"class":4561},[3925,8874,8875],{"class":3927,"line":7023},[3925,8876,3950],{"emptyLinePlaceholder":3949},[3925,8878,8879,8881,8883,8885,8887,8889,8891,8893,8896,8898],{"class":3927,"line":7032},[3925,8880,4573],{"class":4561},[3925,8882,8398],{"class":4565},[3925,8884,7232],{"class":4579},[3925,8886,4583],{"class":4508},[3925,8888,4594],{"class":4540},[3925,8890,8365],{"class":4512},[3925,8892,3595],{"class":4597},[3925,8894,8895],{"class":4512},"footer",[3925,8897,4610],{"class":4540},[3925,8899,4568],{"class":4561},[3925,8901,8902,8904],{"class":3927,"line":7037},[3925,8903,7335],{"class":4561},[3925,8905,8906],{"class":4565},"Pressable\n",[3925,8908,8909,8912,8914,8916,8918,8920,8923],{"class":3927,"line":7042},[3925,8910,8911],{"class":4579},"          style",[3925,8913,4583],{"class":4508},[3925,8915,4594],{"class":4540},[3925,8917,8365],{"class":4512},[3925,8919,3595],{"class":4597},[3925,8921,8922],{"class":4512},"btn",[3925,8924,4016],{"class":4540},[3925,8926,8927,8930,8932,8934,8936,8938,8940,8942,8944,8946,8949,8951],{"class":3927,"line":7070},[3925,8928,8929],{"class":4579},"          onPress",[3925,8931,4583],{"class":4508},[3925,8933,4594],{"class":4540},[3925,8935,8586],{"class":4597},[3925,8937,5614],{"class":4540},[3925,8939,8304],{"class":4512},[3925,8941,3595],{"class":4597},[3925,8943,3650],{"class":4544},[3925,8945,4702],{"class":4597},[3925,8947,8948],{"class":4521},"'\u002Fmodal\u002Fnew'",[3925,8950,4251],{"class":4597},[3925,8952,4016],{"class":4540},[3925,8954,8955],{"class":3927,"line":7086},[3925,8956,8957],{"class":4561},"        >\n",[3925,8959,8960,8962,8964,8966,8968,8970,8972,8974,8977,8979,8981,8984,8986,8988],{"class":3927,"line":7097},[3925,8961,8630],{"class":4561},[3925,8963,8422],{"class":4565},[3925,8965,7232],{"class":4579},[3925,8967,4583],{"class":4508},[3925,8969,4594],{"class":4540},[3925,8971,8365],{"class":4512},[3925,8973,3595],{"class":4597},[3925,8975,8976],{"class":4512},"btnText",[3925,8978,4610],{"class":4540},[3925,8980,8439],{"class":4561},[3925,8982,8983],{"class":4508},"Нова нотатка (modal)",[3925,8985,8445],{"class":4561},[3925,8987,8422],{"class":4565},[3925,8989,4568],{"class":4561},[3925,8991,8992,8994,8996],{"class":3927,"line":7114},[3925,8993,8493],{"class":4561},[3925,8995,8724],{"class":4565},[3925,8997,4568],{"class":4561},[3925,8999,9000,9002,9004],{"class":3927,"line":7119},[3925,9001,7434],{"class":4561},[3925,9003,8398],{"class":4565},[3925,9005,4568],{"class":4561},[3925,9007,9009,9011,9013],{"class":3927,"line":9008},57,[3925,9010,4669],{"class":4561},[3925,9012,8206],{"class":4565},[3925,9014,4568],{"class":4561},[3925,9016,9018],{"class":3927,"line":9017},58,[3925,9019,4678],{"class":4508},[3925,9021,9023],{"class":3927,"line":9022},59,[3925,9024,4016],{"class":4508},[3925,9026,9028],{"class":3927,"line":9027},60,[3925,9029,3950],{"emptyLinePlaceholder":3949},[3925,9031,9033,9035,9038,9040,9043,9045,9048],{"class":3927,"line":9032},61,[3925,9034,5930],{"class":4540},[3925,9036,9037],{"class":5194}," styles",[3925,9039,5967],{"class":4508},[3925,9041,9042],{"class":4512},"StyleSheet",[3925,9044,3595],{"class":4508},[3925,9046,9047],{"class":4544},"create",[3925,9049,9050],{"class":4508},"({\n",[3925,9052,9054,9057,9059,9062,9065,9067,9069,9071],{"class":3927,"line":9053},62,[3925,9055,9056],{"class":4512},"  safe:",[3925,9058,4509],{"class":4508},[3925,9060,9061],{"class":4512},"flex:",[3925,9063,9064],{"class":5990}," 1",[3925,9066,4191],{"class":4508},[3925,9068,7267],{"class":4512},[3925,9070,7270],{"class":4521},[3925,9072,5667],{"class":4508},[3925,9074,9076,9079],{"class":3927,"line":9075},63,[3925,9077,9078],{"class":4512},"  header:",[3925,9080,5617],{"class":4508},[3925,9082,9084,9087,9090],{"class":3927,"line":9083},64,[3925,9085,9086],{"class":4512},"    paddingHorizontal:",[3925,9088,9089],{"class":5990}," 16",[3925,9091,5051],{"class":4508},[3925,9093,9095,9098,9101],{"class":3927,"line":9094},65,[3925,9096,9097],{"class":4512},"    paddingTop:",[3925,9099,9100],{"class":5990}," 8",[3925,9102,5051],{"class":4508},[3925,9104,9106,9109,9111],{"class":3927,"line":9105},66,[3925,9107,9108],{"class":4512},"    paddingBottom:",[3925,9110,7612],{"class":5990},[3925,9112,5051],{"class":4508},[3925,9114,9116,9119,9121],{"class":3927,"line":9115},67,[3925,9117,9118],{"class":4512},"    borderBottomWidth:",[3925,9120,9064],{"class":5990},[3925,9122,5051],{"class":4508},[3925,9124,9126,9129,9131],{"class":3927,"line":9125},68,[3925,9127,9128],{"class":4512},"    borderBottomColor:",[3925,9130,7592],{"class":4521},[3925,9132,5051],{"class":4508},[3925,9134,9136],{"class":3927,"line":9135},69,[3925,9137,6584],{"class":4508},[3925,9139,9141,9144,9146,9148,9151,9153,9155,9158,9160,9162,9164],{"class":3927,"line":9140},70,[3925,9142,9143],{"class":4512},"  title:",[3925,9145,4509],{"class":4508},[3925,9147,7609],{"class":4512},[3925,9149,9150],{"class":5990}," 24",[3925,9152,4191],{"class":4508},[3925,9154,7300],{"class":4512},[3925,9156,9157],{"class":4521}," '800'",[3925,9159,4191],{"class":4508},[3925,9161,7292],{"class":4512},[3925,9163,7295],{"class":4521},[3925,9165,5667],{"class":4508},[3925,9167,9169,9172,9174,9177,9180,9182,9184,9186,9188,9190,9193],{"class":3927,"line":9168},71,[3925,9170,9171],{"class":4512},"  muted:",[3925,9173,4509],{"class":4508},[3925,9175,9176],{"class":4512},"marginTop:",[3925,9178,9179],{"class":5990}," 4",[3925,9181,4191],{"class":4508},[3925,9183,7292],{"class":4512},[3925,9185,7566],{"class":4521},[3925,9187,4191],{"class":4508},[3925,9189,7609],{"class":4512},[3925,9191,9192],{"class":5990}," 13",[3925,9194,5667],{"class":4508},[3925,9196,9198,9201,9203,9206,9208,9210,9213,9215,9217,9220,9222],{"class":3927,"line":9197},72,[3925,9199,9200],{"class":4512},"  list:",[3925,9202,4509],{"class":4508},[3925,9204,9205],{"class":4512},"padding:",[3925,9207,9089],{"class":5990},[3925,9209,4191],{"class":4508},[3925,9211,9212],{"class":4512},"paddingBottom:",[3925,9214,9150],{"class":5990},[3925,9216,4191],{"class":4508},[3925,9218,9219],{"class":4512},"flexGrow:",[3925,9221,9064],{"class":5990},[3925,9223,5667],{"class":4508},[3925,9225,9227,9230],{"class":3927,"line":9226},73,[3925,9228,9229],{"class":4512},"  card:",[3925,9231,5617],{"class":4508},[3925,9233,9235,9238,9241],{"class":3927,"line":9234},74,[3925,9236,9237],{"class":4512},"    backgroundColor:",[3925,9239,9240],{"class":4521}," '#fff'",[3925,9242,5051],{"class":4508},[3925,9244,9246,9249,9251],{"class":3927,"line":9245},75,[3925,9247,9248],{"class":4512},"    borderRadius:",[3925,9250,7612],{"class":5990},[3925,9252,5051],{"class":4508},[3925,9254,9256,9259,9261],{"class":3927,"line":9255},76,[3925,9257,9258],{"class":4512},"    borderWidth:",[3925,9260,9064],{"class":5990},[3925,9262,5051],{"class":4508},[3925,9264,9266,9269,9271],{"class":3927,"line":9265},77,[3925,9267,9268],{"class":4512},"    borderColor:",[3925,9270,7592],{"class":4521},[3925,9272,5051],{"class":4508},[3925,9274,9276,9279,9282],{"class":3927,"line":9275},78,[3925,9277,9278],{"class":4512},"    padding:",[3925,9280,9281],{"class":5990}," 14",[3925,9283,5051],{"class":4508},[3925,9285,9287],{"class":3927,"line":9286},79,[3925,9288,6584],{"class":4508},[3925,9290,9292,9295,9297,9299,9302,9304,9306,9309,9311,9313,9315],{"class":3927,"line":9291},80,[3925,9293,9294],{"class":4512},"  cardTitle:",[3925,9296,4509],{"class":4508},[3925,9298,7609],{"class":4512},[3925,9300,9301],{"class":5990}," 17",[3925,9303,4191],{"class":4508},[3925,9305,7300],{"class":4512},[3925,9307,9308],{"class":4521}," '700'",[3925,9310,4191],{"class":4508},[3925,9312,7292],{"class":4512},[3925,9314,7295],{"class":4521},[3925,9316,5667],{"class":4508},[3925,9318,9320,9323,9325,9327,9330,9332,9334,9336,9338,9340,9342],{"class":3927,"line":9319},81,[3925,9321,9322],{"class":4512},"  cardBody:",[3925,9324,4509],{"class":4508},[3925,9326,9176],{"class":4512},[3925,9328,9329],{"class":5990}," 6",[3925,9331,4191],{"class":4508},[3925,9333,7292],{"class":4512},[3925,9335,7566],{"class":4521},[3925,9337,4191],{"class":4508},[3925,9339,7609],{"class":4512},[3925,9341,9281],{"class":5990},[3925,9343,5667],{"class":4508},[3925,9345,9347,9350],{"class":3927,"line":9346},82,[3925,9348,9349],{"class":4512},"  footer:",[3925,9351,5617],{"class":4508},[3925,9353,9355,9357,9359],{"class":3927,"line":9354},83,[3925,9356,9278],{"class":4512},[3925,9358,9089],{"class":5990},[3925,9360,5051],{"class":4508},[3925,9362,9364,9367,9369],{"class":3927,"line":9363},84,[3925,9365,9366],{"class":4512},"    borderTopWidth:",[3925,9368,9064],{"class":5990},[3925,9370,5051],{"class":4508},[3925,9372,9374,9377,9379],{"class":3927,"line":9373},85,[3925,9375,9376],{"class":4512},"    borderTopColor:",[3925,9378,7592],{"class":4521},[3925,9380,5051],{"class":4508},[3925,9382,9384],{"class":3927,"line":9383},86,[3925,9385,6584],{"class":4508},[3925,9387,9389,9392],{"class":3927,"line":9388},87,[3925,9390,9391],{"class":4512},"  btn:",[3925,9393,5617],{"class":4508},[3925,9395,9397,9399,9401],{"class":3927,"line":9396},88,[3925,9398,9237],{"class":4512},[3925,9400,7280],{"class":4521},[3925,9402,5051],{"class":4508},[3925,9404,9406,9409,9411],{"class":3927,"line":9405},89,[3925,9407,9408],{"class":4512},"    paddingVertical:",[3925,9410,9281],{"class":5990},[3925,9412,5051],{"class":4508},[3925,9414,9416,9418,9420],{"class":3927,"line":9415},90,[3925,9417,9248],{"class":4512},[3925,9419,7612],{"class":5990},[3925,9421,5051],{"class":4508},[3925,9423,9425,9428,9431],{"class":3927,"line":9424},91,[3925,9426,9427],{"class":4512},"    alignItems:",[3925,9429,9430],{"class":4521}," 'center'",[3925,9432,5051],{"class":4508},[3925,9434,9436],{"class":3927,"line":9435},92,[3925,9437,6584],{"class":4508},[3925,9439,9441,9444,9446,9448,9450,9452,9454,9456],{"class":3927,"line":9440},93,[3925,9442,9443],{"class":4512},"  btnText:",[3925,9445,4509],{"class":4508},[3925,9447,7292],{"class":4512},[3925,9449,9240],{"class":4521},[3925,9451,4191],{"class":4508},[3925,9453,7300],{"class":4512},[3925,9455,9157],{"class":4521},[3925,9457,5667],{"class":4508},[3925,9459,9461],{"class":3927,"line":9460},94,[3925,9462,5739],{"class":4508},[4332,9464,9466,9467],{"id":9465},"крок-7-деталі-apptabsnotesidtsx","Крок 7. Деталі — ",[3521,9468,9469],{},"app\u002F(tabs)\u002Fnotes\u002F[id].tsx",[6412,9471,9473],{"title":9472},"Повний app\u002F(tabs)\u002Fnotes\u002F[id].tsx — розгорнути",[3916,9474,9476],{"className":4489,"code":9475,"language":4491,"meta":3921,"style":3921},"import { ScrollView, StyleSheet, Text, View } from 'react-native';\nimport { Stack, useLocalSearchParams, useRouter } from 'expo-router';\n\nimport { getNote } from '..\u002F..\u002F..\u002Fsrc\u002Fdata\u002FnotesStore';\n\nexport default function NoteDetailsScreen() {\n  const { id } = useLocalSearchParams\u003C{ id: string }>();\n  const noteId = Array.isArray(id) ? id[0] : id;\n  const note = noteId ? getNote(noteId) : undefined;\n  const router = useRouter();\n\n  if (!note) {\n    return (\n      \u003CView style={styles.center}>\n        \u003CStack.Screen options={{ title: 'Не знайдено' }} \u002F>\n        \u003CText style={styles.title}>Нотатку не знайдено\u003C\u002FText>\n        \u003CText style={styles.muted} onPress={() => router.back()}>\n          ← Назад до списку\n        \u003C\u002FText>\n      \u003C\u002FView>\n    );\n  }\n\n  return (\n    \u003CScrollView contentContainerStyle={styles.body}>\n      \u003CStack.Screen options={{ title: note.title }} \u002F>\n      \u003CText style={styles.title}>{note.title}\u003C\u002FText>\n      \u003CText style={styles.muted}>\n        {new Date(note.createdAt).toLocaleString('uk-UA')}\n      \u003C\u002FText>\n      \u003CText style={styles.bodyText}>{note.body || 'Порожня нотатка.'}\u003C\u002FText>\n    \u003C\u002FScrollView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  body: { padding: 16, paddingBottom: 40 },\n  center: {\n    flex: 1,\n    alignItems: 'center',\n    justifyContent: 'center',\n    padding: 24,\n    backgroundColor: '#F8FAFC',\n  },\n  title: { fontSize: 24, fontWeight: '800', color: '#0F172A' },\n  muted: { marginTop: 8, color: '#64748B' },\n  bodyText: {\n    marginTop: 16,\n    fontSize: 16,\n    lineHeight: 24,\n    color: '#334155',\n  },\n});\n",[3521,9477,9478,9507,9531,9535,9552,9556,9569,9591,9624,9649,9661,9665,9676,9683,9706,9731,9762,9806,9811,9819,9827,9832,9836,9840,9846,9869,9897,9935,9957,9986,9994,10038,10046,10050,10054,10058,10074,10094,10101,10110,10118,10127,10135,10143,10147,10171,10189,10196,10205,10214,10223,10233,10237],{"__ignoreMap":3921},[3925,9479,9480,9482,9484,9487,9489,9491,9493,9495,9497,9499,9501,9503,9505],{"class":3927,"line":3928},[3925,9481,4505],{"class":4504},[3925,9483,4509],{"class":4508},[3925,9485,9486],{"class":4512},"ScrollView",[3925,9488,4191],{"class":4508},[3925,9490,9042],{"class":4512},[3925,9492,4191],{"class":4508},[3925,9494,8422],{"class":4512},[3925,9496,4191],{"class":4508},[3925,9498,8398],{"class":4512},[3925,9500,4515],{"class":4508},[3925,9502,4518],{"class":4504},[3925,9504,8175],{"class":4521},[3925,9506,4525],{"class":4508},[3925,9508,9509,9511,9513,9515,9517,9519,9521,9523,9525,9527,9529],{"class":3927,"line":3934},[3925,9510,4505],{"class":4504},[3925,9512,4509],{"class":4508},[3925,9514,3523],{"class":4512},[3925,9516,4191],{"class":4508},[3925,9518,5913],{"class":4512},[3925,9520,4191],{"class":4508},[3925,9522,3539],{"class":4512},[3925,9524,4515],{"class":4508},[3925,9526,4518],{"class":4504},[3925,9528,4522],{"class":4521},[3925,9530,4525],{"class":4508},[3925,9532,9533],{"class":3927,"line":3940},[3925,9534,3950],{"emptyLinePlaceholder":3949},[3925,9536,9537,9539,9541,9544,9546,9548,9550],{"class":3927,"line":3946},[3925,9538,4505],{"class":4504},[3925,9540,4509],{"class":4508},[3925,9542,9543],{"class":4512},"getNote",[3925,9545,4515],{"class":4508},[3925,9547,4518],{"class":4504},[3925,9549,8246],{"class":4521},[3925,9551,4525],{"class":4508},[3925,9553,9554],{"class":3927,"line":3953},[3925,9555,3950],{"emptyLinePlaceholder":3949},[3925,9557,9558,9560,9562,9564,9567],{"class":3927,"line":3959},[3925,9559,4534],{"class":4504},[3925,9561,4537],{"class":4504},[3925,9563,4541],{"class":4540},[3925,9565,9566],{"class":4544}," NoteDetailsScreen",[3925,9568,4548],{"class":4508},[3925,9570,9571,9573,9575,9577,9579,9581,9583,9585,9587,9589],{"class":3927,"line":3965},[3925,9572,6909],{"class":4540},[3925,9574,4509],{"class":4508},[3925,9576,4716],{"class":5194},[3925,9578,5937],{"class":4508},[3925,9580,5913],{"class":4544},[3925,9582,5942],{"class":4508},[3925,9584,4716],{"class":4512},[3925,9586,4767],{"class":4508},[3925,9588,5949],{"class":4565},[3925,9590,5952],{"class":4508},[3925,9592,9593,9595,9598,9600,9602,9604,9606,9608,9610,9612,9614,9616,9618,9620,9622],{"class":3927,"line":3971},[3925,9594,6909],{"class":4540},[3925,9596,9597],{"class":5194}," noteId",[3925,9599,5967],{"class":4508},[3925,9601,5970],{"class":4512},[3925,9603,3595],{"class":4508},[3925,9605,5975],{"class":4544},[3925,9607,4702],{"class":4508},[3925,9609,4716],{"class":4512},[3925,9611,5982],{"class":4508},[3925,9613,4716],{"class":4512},[3925,9615,5987],{"class":4508},[3925,9617,5991],{"class":5990},[3925,9619,5994],{"class":4508},[3925,9621,4716],{"class":4512},[3925,9623,4525],{"class":4508},[3925,9625,9626,9628,9630,9632,9635,9637,9639,9641,9643,9645,9647],{"class":3927,"line":3977},[3925,9627,6909],{"class":4540},[3925,9629,6912],{"class":5194},[3925,9631,5967],{"class":4508},[3925,9633,9634],{"class":4512},"noteId",[3925,9636,6021],{"class":4508},[3925,9638,9543],{"class":4544},[3925,9640,4702],{"class":4508},[3925,9642,9634],{"class":4512},[3925,9644,6031],{"class":4508},[3925,9646,6034],{"class":4540},[3925,9648,4525],{"class":4508},[3925,9650,9651,9653,9655,9657,9659],{"class":3927,"line":3983},[3925,9652,6909],{"class":4540},[3925,9654,8304],{"class":5194},[3925,9656,5967],{"class":4508},[3925,9658,3539],{"class":4544},[3925,9660,7020],{"class":4508},[3925,9662,9663],{"class":3927,"line":3989},[3925,9664,3950],{"emptyLinePlaceholder":3949},[3925,9666,9667,9670,9672,9674],{"class":3927,"line":3995},[3925,9668,9669],{"class":4504},"  if",[3925,9671,6044],{"class":4508},[3925,9673,3682],{"class":4512},[3925,9675,6049],{"class":4508},[3925,9677,9678,9681],{"class":3927,"line":4001},[3925,9679,9680],{"class":4504},"    return",[3925,9682,4556],{"class":4508},[3925,9684,9685,9687,9689,9691,9693,9695,9697,9699,9702,9704],{"class":3927,"line":4007},[3925,9686,4573],{"class":4561},[3925,9688,8398],{"class":4565},[3925,9690,7232],{"class":4579},[3925,9692,4583],{"class":4508},[3925,9694,4594],{"class":4540},[3925,9696,8365],{"class":4512},[3925,9698,3595],{"class":4597},[3925,9700,9701],{"class":4512},"center",[3925,9703,4610],{"class":4540},[3925,9705,4568],{"class":4561},[3925,9707,9708,9710,9712,9714,9716,9718,9720,9722,9725,9727,9729],{"class":3927,"line":4013},[3925,9709,7335],{"class":4561},[3925,9711,4576],{"class":4565},[3925,9713,4589],{"class":4579},[3925,9715,4583],{"class":4508},[3925,9717,4594],{"class":4540},[3925,9719,4598],{"class":4597},[3925,9721,4644],{"class":4512},[3925,9723,9724],{"class":4521}," 'Не знайдено'",[3925,9726,4607],{"class":4597},[3925,9728,4610],{"class":4540},[3925,9730,4613],{"class":4561},[3925,9732,9733,9735,9737,9739,9741,9743,9745,9747,9749,9751,9753,9756,9758,9760],{"class":3927,"line":4019},[3925,9734,7335],{"class":4561},[3925,9736,8422],{"class":4565},[3925,9738,7232],{"class":4579},[3925,9740,4583],{"class":4508},[3925,9742,4594],{"class":4540},[3925,9744,8365],{"class":4512},[3925,9746,3595],{"class":4597},[3925,9748,6884],{"class":4512},[3925,9750,4610],{"class":4540},[3925,9752,8439],{"class":4561},[3925,9754,9755],{"class":4508},"Нотатку не знайдено",[3925,9757,8445],{"class":4561},[3925,9759,8422],{"class":4565},[3925,9761,4568],{"class":4561},[3925,9763,9764,9766,9768,9770,9772,9774,9776,9778,9780,9782,9785,9787,9789,9791,9793,9795,9797,9799,9802,9804],{"class":3927,"line":4024},[3925,9765,7335],{"class":4561},[3925,9767,8422],{"class":4565},[3925,9769,7232],{"class":4579},[3925,9771,4583],{"class":4508},[3925,9773,4594],{"class":4540},[3925,9775,8365],{"class":4512},[3925,9777,3595],{"class":4597},[3925,9779,8468],{"class":4512},[3925,9781,4610],{"class":4540},[3925,9783,9784],{"class":4579}," onPress",[3925,9786,4583],{"class":4508},[3925,9788,4594],{"class":4540},[3925,9790,8586],{"class":4597},[3925,9792,5614],{"class":4540},[3925,9794,8304],{"class":4512},[3925,9796,3595],{"class":4597},[3925,9798,4298],{"class":4544},[3925,9800,9801],{"class":4597},"()",[3925,9803,4610],{"class":4540},[3925,9805,4568],{"class":4561},[3925,9807,9808],{"class":3927,"line":4030},[3925,9809,9810],{"class":4508},"          ← Назад до списку\n",[3925,9812,9813,9815,9817],{"class":3927,"line":4036},[3925,9814,8493],{"class":4561},[3925,9816,8422],{"class":4565},[3925,9818,4568],{"class":4561},[3925,9820,9821,9823,9825],{"class":3927,"line":4041},[3925,9822,7434],{"class":4561},[3925,9824,8398],{"class":4565},[3925,9826,4568],{"class":4561},[3925,9828,9829],{"class":3927,"line":4047},[3925,9830,9831],{"class":4508},"    );\n",[3925,9833,9834],{"class":3927,"line":4053},[3925,9835,4004],{"class":4508},[3925,9837,9838],{"class":3927,"line":4059},[3925,9839,3950],{"emptyLinePlaceholder":3949},[3925,9841,9842,9844],{"class":3927,"line":4065},[3925,9843,4553],{"class":4504},[3925,9845,4556],{"class":4508},[3925,9847,9848,9850,9852,9855,9857,9859,9861,9863,9865,9867],{"class":3927,"line":4070},[3925,9849,4562],{"class":4561},[3925,9851,9486],{"class":4565},[3925,9853,9854],{"class":4579}," contentContainerStyle",[3925,9856,4583],{"class":4508},[3925,9858,4594],{"class":4540},[3925,9860,8365],{"class":4512},[3925,9862,3595],{"class":4597},[3925,9864,6893],{"class":4512},[3925,9866,4610],{"class":4540},[3925,9868,4568],{"class":4561},[3925,9870,9871,9873,9875,9877,9879,9881,9883,9885,9887,9889,9891,9893,9895],{"class":3927,"line":4076},[3925,9872,4573],{"class":4561},[3925,9874,4576],{"class":4565},[3925,9876,4589],{"class":4579},[3925,9878,4583],{"class":4508},[3925,9880,4594],{"class":4540},[3925,9882,4598],{"class":4597},[3925,9884,4644],{"class":4512},[3925,9886,6912],{"class":4512},[3925,9888,3595],{"class":4597},[3925,9890,6884],{"class":4512},[3925,9892,4607],{"class":4597},[3925,9894,4610],{"class":4540},[3925,9896,4613],{"class":4561},[3925,9898,9899,9901,9903,9905,9907,9909,9911,9913,9915,9917,9919,9921,9923,9925,9927,9929,9931,9933],{"class":3927,"line":4082},[3925,9900,4573],{"class":4561},[3925,9902,8422],{"class":4565},[3925,9904,7232],{"class":4579},[3925,9906,4583],{"class":4508},[3925,9908,4594],{"class":4540},[3925,9910,8365],{"class":4512},[3925,9912,3595],{"class":4597},[3925,9914,6884],{"class":4512},[3925,9916,4610],{"class":4540},[3925,9918,8439],{"class":4561},[3925,9920,4594],{"class":4540},[3925,9922,3682],{"class":4512},[3925,9924,3595],{"class":4597},[3925,9926,6884],{"class":4512},[3925,9928,4610],{"class":4540},[3925,9930,8445],{"class":4561},[3925,9932,8422],{"class":4565},[3925,9934,4568],{"class":4561},[3925,9936,9937,9939,9941,9943,9945,9947,9949,9951,9953,9955],{"class":3927,"line":4088},[3925,9938,4573],{"class":4561},[3925,9940,8422],{"class":4565},[3925,9942,7232],{"class":4579},[3925,9944,4583],{"class":4508},[3925,9946,4594],{"class":4540},[3925,9948,8365],{"class":4512},[3925,9950,3595],{"class":4597},[3925,9952,8468],{"class":4512},[3925,9954,4610],{"class":4540},[3925,9956,4568],{"class":4561},[3925,9958,9959,9962,9964,9966,9968,9970,9972,9974,9977,9979,9982,9984],{"class":3927,"line":4093},[3925,9960,9961],{"class":4540},"        {new",[3925,9963,6566],{"class":4544},[3925,9965,4702],{"class":4597},[3925,9967,3682],{"class":4512},[3925,9969,3595],{"class":4597},[3925,9971,6773],{"class":4512},[3925,9973,3844],{"class":4597},[3925,9975,9976],{"class":4544},"toLocaleString",[3925,9978,4702],{"class":4597},[3925,9980,9981],{"class":4521},"'uk-UA'",[3925,9983,4251],{"class":4597},[3925,9985,4016],{"class":4540},[3925,9987,9988,9990,9992],{"class":3927,"line":4098},[3925,9989,7434],{"class":4561},[3925,9991,8422],{"class":4565},[3925,9993,4568],{"class":4561},[3925,9995,9996,9998,10000,10002,10004,10006,10008,10010,10013,10015,10017,10019,10021,10023,10025,10027,10030,10032,10034,10036],{"class":3927,"line":6720},[3925,9997,4573],{"class":4561},[3925,9999,8422],{"class":4565},[3925,10001,7232],{"class":4579},[3925,10003,4583],{"class":4508},[3925,10005,4594],{"class":4540},[3925,10007,8365],{"class":4512},[3925,10009,3595],{"class":4597},[3925,10011,10012],{"class":4512},"bodyText",[3925,10014,4610],{"class":4540},[3925,10016,8439],{"class":4561},[3925,10018,4594],{"class":4540},[3925,10020,3682],{"class":4512},[3925,10022,3595],{"class":4597},[3925,10024,6893],{"class":4512},[3925,10026,8829],{"class":4508},[3925,10028,10029],{"class":4521}," 'Порожня нотатка.'",[3925,10031,4610],{"class":4540},[3925,10033,8445],{"class":4561},[3925,10035,8422],{"class":4565},[3925,10037,4568],{"class":4561},[3925,10039,10040,10042,10044],{"class":3927,"line":6738},[3925,10041,4669],{"class":4561},[3925,10043,9486],{"class":4565},[3925,10045,4568],{"class":4561},[3925,10047,10048],{"class":3927,"line":6787},[3925,10049,4678],{"class":4508},[3925,10051,10052],{"class":3927,"line":6792},[3925,10053,4016],{"class":4508},[3925,10055,10056],{"class":3927,"line":6797},[3925,10057,3950],{"emptyLinePlaceholder":3949},[3925,10059,10060,10062,10064,10066,10068,10070,10072],{"class":3927,"line":6827},[3925,10061,5930],{"class":4540},[3925,10063,9037],{"class":5194},[3925,10065,5967],{"class":4508},[3925,10067,9042],{"class":4512},[3925,10069,3595],{"class":4508},[3925,10071,9047],{"class":4544},[3925,10073,9050],{"class":4508},[3925,10075,10076,10079,10081,10083,10085,10087,10089,10092],{"class":3927,"line":6862},[3925,10077,10078],{"class":4512},"  body:",[3925,10080,4509],{"class":4508},[3925,10082,9205],{"class":4512},[3925,10084,9089],{"class":5990},[3925,10086,4191],{"class":4508},[3925,10088,9212],{"class":4512},[3925,10090,10091],{"class":5990}," 40",[3925,10093,5667],{"class":4508},[3925,10095,10096,10099],{"class":3927,"line":6867},[3925,10097,10098],{"class":4512},"  center:",[3925,10100,5617],{"class":4508},[3925,10102,10103,10106,10108],{"class":3927,"line":6872},[3925,10104,10105],{"class":4512},"    flex:",[3925,10107,9064],{"class":5990},[3925,10109,5051],{"class":4508},[3925,10111,10112,10114,10116],{"class":3927,"line":6906},[3925,10113,9427],{"class":4512},[3925,10115,9430],{"class":4521},[3925,10117,5051],{"class":4508},[3925,10119,10120,10123,10125],{"class":3927,"line":6921},[3925,10121,10122],{"class":4512},"    justifyContent:",[3925,10124,9430],{"class":4521},[3925,10126,5051],{"class":4508},[3925,10128,10129,10131,10133],{"class":3927,"line":6941},[3925,10130,9278],{"class":4512},[3925,10132,9150],{"class":5990},[3925,10134,5051],{"class":4508},[3925,10136,10137,10139,10141],{"class":3927,"line":6962},[3925,10138,9237],{"class":4512},[3925,10140,7270],{"class":4521},[3925,10142,5051],{"class":4508},[3925,10144,10145],{"class":3927,"line":6977},[3925,10146,6584],{"class":4508},[3925,10148,10149,10151,10153,10155,10157,10159,10161,10163,10165,10167,10169],{"class":3927,"line":6990},[3925,10150,9143],{"class":4512},[3925,10152,4509],{"class":4508},[3925,10154,7609],{"class":4512},[3925,10156,9150],{"class":5990},[3925,10158,4191],{"class":4508},[3925,10160,7300],{"class":4512},[3925,10162,9157],{"class":4521},[3925,10164,4191],{"class":4508},[3925,10166,7292],{"class":4512},[3925,10168,7295],{"class":4521},[3925,10170,5667],{"class":4508},[3925,10172,10173,10175,10177,10179,10181,10183,10185,10187],{"class":3927,"line":6996},[3925,10174,9171],{"class":4512},[3925,10176,4509],{"class":4508},[3925,10178,9176],{"class":4512},[3925,10180,9100],{"class":5990},[3925,10182,4191],{"class":4508},[3925,10184,7292],{"class":4512},[3925,10186,7566],{"class":4521},[3925,10188,5667],{"class":4508},[3925,10190,10191,10194],{"class":3927,"line":7014},[3925,10192,10193],{"class":4512},"  bodyText:",[3925,10195,5617],{"class":4508},[3925,10197,10198,10201,10203],{"class":3927,"line":7023},[3925,10199,10200],{"class":4512},"    marginTop:",[3925,10202,9089],{"class":5990},[3925,10204,5051],{"class":4508},[3925,10206,10207,10210,10212],{"class":3927,"line":7032},[3925,10208,10209],{"class":4512},"    fontSize:",[3925,10211,9089],{"class":5990},[3925,10213,5051],{"class":4508},[3925,10215,10216,10219,10221],{"class":3927,"line":7037},[3925,10217,10218],{"class":4512},"    lineHeight:",[3925,10220,9150],{"class":5990},[3925,10222,5051],{"class":4508},[3925,10224,10225,10228,10231],{"class":3927,"line":7042},[3925,10226,10227],{"class":4512},"    color:",[3925,10229,10230],{"class":4521}," '#334155'",[3925,10232,5051],{"class":4508},[3925,10234,10235],{"class":3927,"line":7070},[3925,10236,6584],{"class":4508},[3925,10238,10239],{"class":3927,"line":7086},[3925,10240,5739],{"class":4508},[4332,10242,10244,10245],{"id":10243},"крок-8-modal-guard-appmodalnewtsx","Крок 8. Modal + guard — ",[3521,10246,10247],{},"app\u002Fmodal\u002Fnew.tsx",[6412,10249,10251],{"title":10250},"Повний app\u002Fmodal\u002Fnew.tsx — розгорнути",[3916,10252,10254],{"className":4489,"code":10253,"language":4491,"meta":3921,"style":3921},"import { useState } from 'react';\nimport {\n  Alert,\n  KeyboardAvoidingView,\n  Platform,\n  Pressable,\n  StyleSheet,\n  Text,\n  TextInput,\n  View,\n} from 'react-native';\nimport { useNavigation } from 'expo-router';\nimport { useRouter } from 'expo-router';\nimport { usePreventRemove } from '@react-navigation\u002Fnative';\n\nimport { addNote } from '..\u002F..\u002Fsrc\u002Fdata\u002FnotesStore';\n\nexport default function NewNoteModal() {\n  const router = useRouter();\n  const navigation = useNavigation();\n  const [title, setTitle] = useState('');\n  const [body, setBody] = useState('');\n  \u002F** Після успішного save — дозволяємо leave без діалогу. *\u002F\n  const [saved, setSaved] = useState(false);\n\n  const dirty =\n    !saved && (title.trim().length > 0 || body.trim().length > 0);\n\n  usePreventRemove(dirty, ({ data }) => {\n    Alert.alert(\n      'Вийти без збереження?',\n      'Текст нотатки буде втрачено.',\n      [\n        { text: 'Лишитись', style: 'cancel' },\n        {\n          text: 'Вийти',\n          style: 'destructive',\n          onPress: () => navigation.dispatch(data.action),\n        },\n      ],\n    );\n  });\n\n  const onSave = () => {\n    if (!title.trim() && !body.trim()) {\n      Alert.alert('Порожньо', 'Введіть заголовок або текст.');\n      return;\n    }\n    addNote(title, body);\n    setSaved(true);\n    \u002F\u002F після setState dirty стане false на наступному рендері;\n    \u002F\u002F back у requestAnimationFrame \u002F setTimeout(0) надійніше:\n    setTimeout(() => router.back(), 0);\n  };\n\n  return (\n    \u003CKeyboardAvoidingView\n      style={styles.flex}\n      behavior={Platform.OS === 'ios' ? 'padding' : undefined}\n    >\n      \u003CView style={styles.body}>\n        \u003CText style={styles.hint}>\n          Якщо є текст і ви тиснете «назад» \u002F dismiss — з’явиться підтвердження\n          (usePreventRemove).\n        \u003C\u002FText>\n        \u003CText style={styles.label}>Заголовок\u003C\u002FText>\n        \u003CTextInput\n          style={styles.input}\n          value={title}\n          onChangeText={setTitle}\n          placeholder=\"Наприклад, Список речей\"\n        \u002F>\n        \u003CText style={styles.label}>Текст\u003C\u002FText>\n        \u003CTextInput\n          style={[styles.input, styles.multi]}\n          value={body}\n          onChangeText={setBody}\n          placeholder=\"Нотатка…\"\n          multiline\n          textAlignVertical=\"top\"\n        \u002F>\n        \u003CPressable style={styles.btn} onPress={onSave}>\n          \u003CText style={styles.btnText}>Зберегти\u003C\u002FText>\n        \u003C\u002FPressable>\n      \u003C\u002FView>\n    \u003C\u002FKeyboardAvoidingView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  flex: { flex: 1, backgroundColor: '#F8FAFC' },\n  body: { flex: 1, padding: 16, gap: 8 },\n  hint: { color: '#64748B', fontSize: 13, marginBottom: 8 },\n  label: {\n    marginTop: 8,\n    fontSize: 12,\n    fontWeight: '700',\n    color: '#64748B',\n    textTransform: 'uppercase',\n  },\n  input: {\n    borderWidth: 1,\n    borderColor: '#E2E8F0',\n    backgroundColor: '#fff',\n    borderRadius: 12,\n    paddingHorizontal: 14,\n    paddingVertical: 12,\n    fontSize: 16,\n    color: '#0F172A',\n  },\n  multi: { minHeight: 140 },\n  btn: {\n    marginTop: 20,\n    backgroundColor: '#2563EB',\n    paddingVertical: 14,\n    borderRadius: 12,\n    alignItems: 'center',\n  },\n  btnText: { color: '#fff', fontWeight: '800' },\n});\n",[3521,10255,10256,10272,10278,10284,10291,10298,10304,10310,10316,10323,10329,10339,10356,10372,10389,10393,10411,10415,10428,10440,10452,10476,10499,10504,10528,10532,10542,10587,10591,10610,10622,10629,10636,10641,10658,10663,10672,10681,10707,10711,10716,10720,10725,10729,10742,10767,10788,10795,10799,10814,10826,10831,10836,10858,10862,10866,10872,10879,10897,10932,10936,10958,10981,10986,10991,10999,11031,11038,11055,11068,11081,11091,11095,11126,11132,11161,11173,11185,11194,11199,11209,11213,11246,11277,11285,11293,11302,11306,11310,11314,11330,11349,11374,11400,11407,11416,11425,11435,11444,11455,11460,11468,11477,11486,11495,11504,11513,11522,11531,11540,11545,11561,11568,11578,11587,11596,11605,11614,11619,11638],{"__ignoreMap":3921},[3925,10257,10258,10260,10262,10264,10266,10268,10270],{"class":3927,"line":3928},[3925,10259,4505],{"class":4504},[3925,10261,4509],{"class":4508},[3925,10263,5552],{"class":4512},[3925,10265,4515],{"class":4508},[3925,10267,4518],{"class":4504},[3925,10269,8122],{"class":4521},[3925,10271,4525],{"class":4508},[3925,10273,10274,10276],{"class":3927,"line":3934},[3925,10275,4505],{"class":4504},[3925,10277,5617],{"class":4508},[3925,10279,10280,10282],{"class":3927,"line":3940},[3925,10281,5627],{"class":4512},[3925,10283,5051],{"class":4508},[3925,10285,10286,10289],{"class":3927,"line":3946},[3925,10287,10288],{"class":4512},"  KeyboardAvoidingView",[3925,10290,5051],{"class":4508},[3925,10292,10293,10296],{"class":3927,"line":3953},[3925,10294,10295],{"class":4512},"  Platform",[3925,10297,5051],{"class":4508},[3925,10299,10300,10302],{"class":3927,"line":3959},[3925,10301,8142],{"class":4512},[3925,10303,5051],{"class":4508},[3925,10305,10306,10308],{"class":3927,"line":3965},[3925,10307,8149],{"class":4512},[3925,10309,5051],{"class":4508},[3925,10311,10312,10314],{"class":3927,"line":3971},[3925,10313,8156],{"class":4512},[3925,10315,5051],{"class":4508},[3925,10317,10318,10321],{"class":3927,"line":3977},[3925,10319,10320],{"class":4512},"  TextInput",[3925,10322,5051],{"class":4508},[3925,10324,10325,10327],{"class":3927,"line":3983},[3925,10326,8163],{"class":4512},[3925,10328,5051],{"class":4508},[3925,10330,10331,10333,10335,10337],{"class":3927,"line":3989},[3925,10332,8170],{"class":4508},[3925,10334,4518],{"class":4504},[3925,10336,8175],{"class":4521},[3925,10338,4525],{"class":4508},[3925,10340,10341,10343,10345,10348,10350,10352,10354],{"class":3927,"line":3995},[3925,10342,4505],{"class":4504},[3925,10344,4509],{"class":4508},[3925,10346,10347],{"class":4512},"useNavigation",[3925,10349,4515],{"class":4508},[3925,10351,4518],{"class":4504},[3925,10353,4522],{"class":4521},[3925,10355,4525],{"class":4508},[3925,10357,10358,10360,10362,10364,10366,10368,10370],{"class":3927,"line":4001},[3925,10359,4505],{"class":4504},[3925,10361,4509],{"class":4508},[3925,10363,3539],{"class":4512},[3925,10365,4515],{"class":4508},[3925,10367,4518],{"class":4504},[3925,10369,4522],{"class":4521},[3925,10371,4525],{"class":4508},[3925,10373,10374,10376,10378,10380,10382,10384,10387],{"class":3927,"line":4007},[3925,10375,4505],{"class":4504},[3925,10377,4509],{"class":4508},[3925,10379,5574],{"class":4512},[3925,10381,4515],{"class":4508},[3925,10383,4518],{"class":4504},[3925,10385,10386],{"class":4521}," '@react-navigation\u002Fnative'",[3925,10388,4525],{"class":4508},[3925,10390,10391],{"class":3927,"line":4013},[3925,10392,3950],{"emptyLinePlaceholder":3949},[3925,10394,10395,10397,10399,10402,10404,10406,10409],{"class":3927,"line":4019},[3925,10396,4505],{"class":4504},[3925,10398,4509],{"class":4508},[3925,10400,10401],{"class":4512},"addNote",[3925,10403,4515],{"class":4508},[3925,10405,4518],{"class":4504},[3925,10407,10408],{"class":4521}," '..\u002F..\u002Fsrc\u002Fdata\u002FnotesStore'",[3925,10410,4525],{"class":4508},[3925,10412,10413],{"class":3927,"line":4024},[3925,10414,3950],{"emptyLinePlaceholder":3949},[3925,10416,10417,10419,10421,10423,10426],{"class":3927,"line":4030},[3925,10418,4534],{"class":4504},[3925,10420,4537],{"class":4504},[3925,10422,4541],{"class":4540},[3925,10424,10425],{"class":4544}," NewNoteModal",[3925,10427,4548],{"class":4508},[3925,10429,10430,10432,10434,10436,10438],{"class":3927,"line":4036},[3925,10431,6909],{"class":4540},[3925,10433,8304],{"class":5194},[3925,10435,5967],{"class":4508},[3925,10437,3539],{"class":4544},[3925,10439,7020],{"class":4508},[3925,10441,10442,10444,10446,10448,10450],{"class":3927,"line":4041},[3925,10443,6909],{"class":4540},[3925,10445,5707],{"class":5194},[3925,10447,5967],{"class":4508},[3925,10449,10347],{"class":4544},[3925,10451,7020],{"class":4508},[3925,10453,10454,10456,10458,10460,10462,10465,10467,10469,10471,10474],{"class":3927,"line":4047},[3925,10455,6909],{"class":4540},[3925,10457,8272],{"class":4508},[3925,10459,6884],{"class":5194},[3925,10461,4191],{"class":4508},[3925,10463,10464],{"class":5194},"setTitle",[3925,10466,8282],{"class":4508},[3925,10468,5552],{"class":4544},[3925,10470,4702],{"class":4508},[3925,10472,10473],{"class":4521},"''",[3925,10475,4724],{"class":4508},[3925,10477,10478,10480,10482,10484,10486,10489,10491,10493,10495,10497],{"class":3927,"line":4053},[3925,10479,6909],{"class":4540},[3925,10481,8272],{"class":4508},[3925,10483,6893],{"class":5194},[3925,10485,4191],{"class":4508},[3925,10487,10488],{"class":5194},"setBody",[3925,10490,8282],{"class":4508},[3925,10492,5552],{"class":4544},[3925,10494,4702],{"class":4508},[3925,10496,10473],{"class":4521},[3925,10498,4724],{"class":4508},[3925,10500,10501],{"class":3927,"line":4059},[3925,10502,10503],{"class":4498},"  \u002F** Після успішного save — дозволяємо leave без діалогу. *\u002F\n",[3925,10505,10506,10508,10510,10512,10514,10517,10519,10521,10523,10526],{"class":3927,"line":4065},[3925,10507,6909],{"class":4540},[3925,10509,8272],{"class":4508},[3925,10511,5799],{"class":5194},[3925,10513,4191],{"class":4508},[3925,10515,10516],{"class":5194},"setSaved",[3925,10518,8282],{"class":4508},[3925,10520,5552],{"class":4544},[3925,10522,4702],{"class":4508},[3925,10524,10525],{"class":4540},"false",[3925,10527,4724],{"class":4508},[3925,10529,10530],{"class":3927,"line":4070},[3925,10531,3950],{"emptyLinePlaceholder":3949},[3925,10533,10534,10536,10539],{"class":3927,"line":4076},[3925,10535,6909],{"class":4540},[3925,10537,10538],{"class":5194}," dirty",[3925,10540,10541],{"class":4508}," =\n",[3925,10543,10544,10547,10549,10552,10554,10556,10558,10561,10563,10566,10568,10571,10573,10575,10577,10579,10581,10583,10585],{"class":3927,"line":4082},[3925,10545,10546],{"class":4508},"    !",[3925,10548,5799],{"class":4512},[3925,10550,10551],{"class":4508}," && (",[3925,10553,6884],{"class":4512},[3925,10555,3595],{"class":4508},[3925,10557,6951],{"class":4544},[3925,10559,10560],{"class":4508},"().",[3925,10562,8486],{"class":4512},[3925,10564,10565],{"class":4508}," > ",[3925,10567,5991],{"class":5990},[3925,10569,10570],{"class":4508}," || ",[3925,10572,6893],{"class":4512},[3925,10574,3595],{"class":4508},[3925,10576,6951],{"class":4544},[3925,10578,10560],{"class":4508},[3925,10580,8486],{"class":4512},[3925,10582,10565],{"class":4508},[3925,10584,5991],{"class":5990},[3925,10586,4724],{"class":4508},[3925,10588,10589],{"class":3927,"line":4088},[3925,10590,3950],{"emptyLinePlaceholder":3949},[3925,10592,10593,10596,10598,10600,10602,10604,10606,10608],{"class":3927,"line":4093},[3925,10594,10595],{"class":4544},"  usePreventRemove",[3925,10597,4702],{"class":4508},[3925,10599,5602],{"class":4512},[3925,10601,5605],{"class":4508},[3925,10603,5608],{"class":4512},[3925,10605,5611],{"class":4508},[3925,10607,5614],{"class":4540},[3925,10609,5617],{"class":4508},[3925,10611,10612,10615,10617,10619],{"class":3927,"line":4098},[3925,10613,10614],{"class":4512},"    Alert",[3925,10616,3595],{"class":4508},[3925,10618,5632],{"class":4544},[3925,10620,10621],{"class":4508},"(\n",[3925,10623,10624,10627],{"class":3927,"line":6720},[3925,10625,10626],{"class":4521},"      'Вийти без збереження?'",[3925,10628,5051],{"class":4508},[3925,10630,10631,10634],{"class":3927,"line":6738},[3925,10632,10633],{"class":4521},"      'Текст нотатки буде втрачено.'",[3925,10635,5051],{"class":4508},[3925,10637,10638],{"class":3927,"line":6787},[3925,10639,10640],{"class":4508},"      [\n",[3925,10642,10643,10646,10648,10650,10652,10654,10656],{"class":3927,"line":6792},[3925,10644,10645],{"class":4508},"        { ",[3925,10647,5653],{"class":4512},[3925,10649,5656],{"class":4521},[3925,10651,4191],{"class":4508},[3925,10653,5661],{"class":4512},[3925,10655,5664],{"class":4521},[3925,10657,5667],{"class":4508},[3925,10659,10660],{"class":3927,"line":6797},[3925,10661,10662],{"class":4508},"        {\n",[3925,10664,10665,10668,10670],{"class":3927,"line":6827},[3925,10666,10667],{"class":4512},"          text:",[3925,10669,5680],{"class":4521},[3925,10671,5051],{"class":4508},[3925,10673,10674,10677,10679],{"class":3927,"line":6862},[3925,10675,10676],{"class":4512},"          style:",[3925,10678,5690],{"class":4521},[3925,10680,5051],{"class":4508},[3925,10682,10683,10685,10687,10689,10691,10693,10695,10697,10699,10701,10703,10705],{"class":3927,"line":6867},[3925,10684,8929],{"class":4544},[3925,10686,4974],{"class":4512},[3925,10688,5702],{"class":4508},[3925,10690,5614],{"class":4540},[3925,10692,5707],{"class":4512},[3925,10694,3595],{"class":4508},[3925,10696,5712],{"class":4544},[3925,10698,4702],{"class":4508},[3925,10700,5608],{"class":4512},[3925,10702,3595],{"class":4508},[3925,10704,5721],{"class":4512},[3925,10706,5724],{"class":4508},[3925,10708,10709],{"class":3927,"line":6872},[3925,10710,7599],{"class":4508},[3925,10712,10713],{"class":3927,"line":6906},[3925,10714,10715],{"class":4508},"      ],\n",[3925,10717,10718],{"class":3927,"line":6921},[3925,10719,9831],{"class":4508},[3925,10721,10722],{"class":3927,"line":6941},[3925,10723,10724],{"class":4508},"  });\n",[3925,10726,10727],{"class":3927,"line":6962},[3925,10728,3950],{"emptyLinePlaceholder":3949},[3925,10730,10731,10733,10736,10738,10740],{"class":3927,"line":6977},[3925,10732,6909],{"class":4540},[3925,10734,10735],{"class":4544}," onSave",[3925,10737,6497],{"class":4508},[3925,10739,5614],{"class":4540},[3925,10741,5617],{"class":4508},[3925,10743,10744,10747,10749,10751,10753,10755,10758,10760,10762,10764],{"class":3927,"line":6990},[3925,10745,10746],{"class":4504},"    if",[3925,10748,6044],{"class":4508},[3925,10750,6884],{"class":4512},[3925,10752,3595],{"class":4508},[3925,10754,6951],{"class":4544},[3925,10756,10757],{"class":4508},"() && !",[3925,10759,6893],{"class":4512},[3925,10761,3595],{"class":4508},[3925,10763,6951],{"class":4544},[3925,10765,10766],{"class":4508},"()) {\n",[3925,10768,10769,10772,10774,10776,10778,10781,10783,10786],{"class":3927,"line":6996},[3925,10770,10771],{"class":4512},"      Alert",[3925,10773,3595],{"class":4508},[3925,10775,5632],{"class":4544},[3925,10777,4702],{"class":4508},[3925,10779,10780],{"class":4521},"'Порожньо'",[3925,10782,4191],{"class":4508},[3925,10784,10785],{"class":4521},"'Введіть заголовок або текст.'",[3925,10787,4724],{"class":4508},[3925,10789,10790,10793],{"class":3927,"line":7014},[3925,10791,10792],{"class":4504},"      return",[3925,10794,4525],{"class":4508},[3925,10796,10797],{"class":3927,"line":7023},[3925,10798,3986],{"class":4508},[3925,10800,10801,10804,10806,10808,10810,10812],{"class":3927,"line":7032},[3925,10802,10803],{"class":4544},"    addNote",[3925,10805,4702],{"class":4508},[3925,10807,6884],{"class":4512},[3925,10809,4191],{"class":4508},[3925,10811,6893],{"class":4512},[3925,10813,4724],{"class":4508},[3925,10815,10816,10819,10821,10824],{"class":3927,"line":7037},[3925,10817,10818],{"class":4544},"    setSaved",[3925,10820,4702],{"class":4508},[3925,10822,10823],{"class":4540},"true",[3925,10825,4724],{"class":4508},[3925,10827,10828],{"class":3927,"line":7042},[3925,10829,10830],{"class":4498},"    \u002F\u002F після setState dirty стане false на наступному рендері;\n",[3925,10832,10833],{"class":3927,"line":7070},[3925,10834,10835],{"class":4498},"    \u002F\u002F back у requestAnimationFrame \u002F setTimeout(0) надійніше:\n",[3925,10837,10838,10841,10843,10845,10847,10849,10851,10854,10856],{"class":3927,"line":7086},[3925,10839,10840],{"class":4544},"    setTimeout",[3925,10842,8322],{"class":4508},[3925,10844,5614],{"class":4540},[3925,10846,8304],{"class":4512},[3925,10848,3595],{"class":4508},[3925,10850,4298],{"class":4544},[3925,10852,10853],{"class":4508},"(), ",[3925,10855,5991],{"class":5990},[3925,10857,4724],{"class":4508},[3925,10859,10860],{"class":3927,"line":7097},[3925,10861,6993],{"class":4508},[3925,10863,10864],{"class":3927,"line":7114},[3925,10865,3950],{"emptyLinePlaceholder":3949},[3925,10867,10868,10870],{"class":3927,"line":7119},[3925,10869,4553],{"class":4504},[3925,10871,4556],{"class":4508},[3925,10873,10874,10876],{"class":3927,"line":9008},[3925,10875,4562],{"class":4561},[3925,10877,10878],{"class":4565},"KeyboardAvoidingView\n",[3925,10880,10881,10884,10886,10888,10890,10892,10895],{"class":3927,"line":9017},[3925,10882,10883],{"class":4579},"      style",[3925,10885,4583],{"class":4508},[3925,10887,4594],{"class":4540},[3925,10889,8365],{"class":4512},[3925,10891,3595],{"class":4597},[3925,10893,10894],{"class":4512},"flex",[3925,10896,4016],{"class":4540},[3925,10898,10899,10902,10904,10906,10909,10911,10914,10917,10920,10923,10926,10929],{"class":3927,"line":9022},[3925,10900,10901],{"class":4579},"      behavior",[3925,10903,4583],{"class":4508},[3925,10905,4594],{"class":4540},[3925,10907,10908],{"class":4512},"Platform",[3925,10910,3595],{"class":4597},[3925,10912,10913],{"class":5194},"OS",[3925,10915,10916],{"class":4508}," ===",[3925,10918,10919],{"class":4521}," 'ios'",[3925,10921,10922],{"class":4508}," ?",[3925,10924,10925],{"class":4521}," 'padding'",[3925,10927,10928],{"class":4508}," :",[3925,10930,10931],{"class":4540}," undefined}\n",[3925,10933,10934],{"class":3927,"line":9027},[3925,10935,7632],{"class":4561},[3925,10937,10938,10940,10942,10944,10946,10948,10950,10952,10954,10956],{"class":3927,"line":9032},[3925,10939,4573],{"class":4561},[3925,10941,8398],{"class":4565},[3925,10943,7232],{"class":4579},[3925,10945,4583],{"class":4508},[3925,10947,4594],{"class":4540},[3925,10949,8365],{"class":4512},[3925,10951,3595],{"class":4597},[3925,10953,6893],{"class":4512},[3925,10955,4610],{"class":4540},[3925,10957,4568],{"class":4561},[3925,10959,10960,10962,10964,10966,10968,10970,10972,10974,10977,10979],{"class":3927,"line":9053},[3925,10961,7335],{"class":4561},[3925,10963,8422],{"class":4565},[3925,10965,7232],{"class":4579},[3925,10967,4583],{"class":4508},[3925,10969,4594],{"class":4540},[3925,10971,8365],{"class":4512},[3925,10973,3595],{"class":4597},[3925,10975,10976],{"class":4512},"hint",[3925,10978,4610],{"class":4540},[3925,10980,4568],{"class":4561},[3925,10982,10983],{"class":3927,"line":9075},[3925,10984,10985],{"class":4508},"          Якщо є текст і ви тиснете «назад» \u002F dismiss — з’явиться підтвердження\n",[3925,10987,10988],{"class":3927,"line":9083},[3925,10989,10990],{"class":4508},"          (usePreventRemove).\n",[3925,10992,10993,10995,10997],{"class":3927,"line":9094},[3925,10994,8493],{"class":4561},[3925,10996,8422],{"class":4565},[3925,10998,4568],{"class":4561},[3925,11000,11001,11003,11005,11007,11009,11011,11013,11015,11018,11020,11022,11025,11027,11029],{"class":3927,"line":9105},[3925,11002,7335],{"class":4561},[3925,11004,8422],{"class":4565},[3925,11006,7232],{"class":4579},[3925,11008,4583],{"class":4508},[3925,11010,4594],{"class":4540},[3925,11012,8365],{"class":4512},[3925,11014,3595],{"class":4597},[3925,11016,11017],{"class":4512},"label",[3925,11019,4610],{"class":4540},[3925,11021,8439],{"class":4561},[3925,11023,11024],{"class":4508},"Заголовок",[3925,11026,8445],{"class":4561},[3925,11028,8422],{"class":4565},[3925,11030,4568],{"class":4561},[3925,11032,11033,11035],{"class":3927,"line":9115},[3925,11034,7335],{"class":4561},[3925,11036,11037],{"class":4565},"TextInput\n",[3925,11039,11040,11042,11044,11046,11048,11050,11053],{"class":3927,"line":9125},[3925,11041,8911],{"class":4579},[3925,11043,4583],{"class":4508},[3925,11045,4594],{"class":4540},[3925,11047,8365],{"class":4512},[3925,11049,3595],{"class":4597},[3925,11051,11052],{"class":4512},"input",[3925,11054,4016],{"class":4540},[3925,11056,11057,11060,11062,11064,11066],{"class":3927,"line":9135},[3925,11058,11059],{"class":4579},"          value",[3925,11061,4583],{"class":4508},[3925,11063,4594],{"class":4540},[3925,11065,6884],{"class":4512},[3925,11067,4016],{"class":4540},[3925,11069,11070,11073,11075,11077,11079],{"class":3927,"line":9140},[3925,11071,11072],{"class":4579},"          onChangeText",[3925,11074,4583],{"class":4508},[3925,11076,4594],{"class":4540},[3925,11078,10464],{"class":4512},[3925,11080,4016],{"class":4540},[3925,11082,11083,11086,11088],{"class":3927,"line":9168},[3925,11084,11085],{"class":4579},"          placeholder",[3925,11087,4583],{"class":4508},[3925,11089,11090],{"class":4521},"\"Наприклад, Список речей\"\n",[3925,11092,11093],{"class":3927,"line":9197},[3925,11094,7429],{"class":4561},[3925,11096,11097,11099,11101,11103,11105,11107,11109,11111,11113,11115,11117,11120,11122,11124],{"class":3927,"line":9226},[3925,11098,7335],{"class":4561},[3925,11100,8422],{"class":4565},[3925,11102,7232],{"class":4579},[3925,11104,4583],{"class":4508},[3925,11106,4594],{"class":4540},[3925,11108,8365],{"class":4512},[3925,11110,3595],{"class":4597},[3925,11112,11017],{"class":4512},[3925,11114,4610],{"class":4540},[3925,11116,8439],{"class":4561},[3925,11118,11119],{"class":4508},"Текст",[3925,11121,8445],{"class":4561},[3925,11123,8422],{"class":4565},[3925,11125,4568],{"class":4561},[3925,11127,11128,11130],{"class":3927,"line":9234},[3925,11129,7335],{"class":4561},[3925,11131,11037],{"class":4565},[3925,11133,11134,11136,11138,11140,11142,11144,11146,11148,11150,11152,11154,11157,11159],{"class":3927,"line":9245},[3925,11135,8911],{"class":4579},[3925,11137,4583],{"class":4508},[3925,11139,4594],{"class":4540},[3925,11141,5987],{"class":4597},[3925,11143,8365],{"class":4512},[3925,11145,3595],{"class":4597},[3925,11147,11052],{"class":4512},[3925,11149,4191],{"class":4597},[3925,11151,8365],{"class":4512},[3925,11153,3595],{"class":4597},[3925,11155,11156],{"class":4512},"multi",[3925,11158,8387],{"class":4597},[3925,11160,4016],{"class":4540},[3925,11162,11163,11165,11167,11169,11171],{"class":3927,"line":9255},[3925,11164,11059],{"class":4579},[3925,11166,4583],{"class":4508},[3925,11168,4594],{"class":4540},[3925,11170,6893],{"class":4512},[3925,11172,4016],{"class":4540},[3925,11174,11175,11177,11179,11181,11183],{"class":3927,"line":9265},[3925,11176,11072],{"class":4579},[3925,11178,4583],{"class":4508},[3925,11180,4594],{"class":4540},[3925,11182,10488],{"class":4512},[3925,11184,4016],{"class":4540},[3925,11186,11187,11189,11191],{"class":3927,"line":9275},[3925,11188,11085],{"class":4579},[3925,11190,4583],{"class":4508},[3925,11192,11193],{"class":4521},"\"Нотатка…\"\n",[3925,11195,11196],{"class":3927,"line":9286},[3925,11197,11198],{"class":4579},"          multiline\n",[3925,11200,11201,11204,11206],{"class":3927,"line":9291},[3925,11202,11203],{"class":4579},"          textAlignVertical",[3925,11205,4583],{"class":4508},[3925,11207,11208],{"class":4521},"\"top\"\n",[3925,11210,11211],{"class":3927,"line":9319},[3925,11212,7429],{"class":4561},[3925,11214,11215,11217,11219,11221,11223,11225,11227,11229,11231,11233,11235,11237,11239,11242,11244],{"class":3927,"line":9346},[3925,11216,7335],{"class":4561},[3925,11218,8724],{"class":4565},[3925,11220,7232],{"class":4579},[3925,11222,4583],{"class":4508},[3925,11224,4594],{"class":4540},[3925,11226,8365],{"class":4512},[3925,11228,3595],{"class":4597},[3925,11230,8922],{"class":4512},[3925,11232,4610],{"class":4540},[3925,11234,9784],{"class":4579},[3925,11236,4583],{"class":4508},[3925,11238,4594],{"class":4540},[3925,11240,11241],{"class":4512},"onSave",[3925,11243,4610],{"class":4540},[3925,11245,4568],{"class":4561},[3925,11247,11248,11250,11252,11254,11256,11258,11260,11262,11264,11266,11268,11271,11273,11275],{"class":3927,"line":9354},[3925,11249,8630],{"class":4561},[3925,11251,8422],{"class":4565},[3925,11253,7232],{"class":4579},[3925,11255,4583],{"class":4508},[3925,11257,4594],{"class":4540},[3925,11259,8365],{"class":4512},[3925,11261,3595],{"class":4597},[3925,11263,8976],{"class":4512},[3925,11265,4610],{"class":4540},[3925,11267,8439],{"class":4561},[3925,11269,11270],{"class":4508},"Зберегти",[3925,11272,8445],{"class":4561},[3925,11274,8422],{"class":4565},[3925,11276,4568],{"class":4561},[3925,11278,11279,11281,11283],{"class":3927,"line":9363},[3925,11280,8493],{"class":4561},[3925,11282,8724],{"class":4565},[3925,11284,4568],{"class":4561},[3925,11286,11287,11289,11291],{"class":3927,"line":9373},[3925,11288,7434],{"class":4561},[3925,11290,8398],{"class":4565},[3925,11292,4568],{"class":4561},[3925,11294,11295,11297,11300],{"class":3927,"line":9383},[3925,11296,4669],{"class":4561},[3925,11298,11299],{"class":4565},"KeyboardAvoidingView",[3925,11301,4568],{"class":4561},[3925,11303,11304],{"class":3927,"line":9388},[3925,11305,4678],{"class":4508},[3925,11307,11308],{"class":3927,"line":9396},[3925,11309,4016],{"class":4508},[3925,11311,11312],{"class":3927,"line":9405},[3925,11313,3950],{"emptyLinePlaceholder":3949},[3925,11315,11316,11318,11320,11322,11324,11326,11328],{"class":3927,"line":9415},[3925,11317,5930],{"class":4540},[3925,11319,9037],{"class":5194},[3925,11321,5967],{"class":4508},[3925,11323,9042],{"class":4512},[3925,11325,3595],{"class":4508},[3925,11327,9047],{"class":4544},[3925,11329,9050],{"class":4508},[3925,11331,11332,11335,11337,11339,11341,11343,11345,11347],{"class":3927,"line":9424},[3925,11333,11334],{"class":4512},"  flex:",[3925,11336,4509],{"class":4508},[3925,11338,9061],{"class":4512},[3925,11340,9064],{"class":5990},[3925,11342,4191],{"class":4508},[3925,11344,7267],{"class":4512},[3925,11346,7270],{"class":4521},[3925,11348,5667],{"class":4508},[3925,11350,11351,11353,11355,11357,11359,11361,11363,11365,11367,11370,11372],{"class":3927,"line":9435},[3925,11352,10078],{"class":4512},[3925,11354,4509],{"class":4508},[3925,11356,9061],{"class":4512},[3925,11358,9064],{"class":5990},[3925,11360,4191],{"class":4508},[3925,11362,9205],{"class":4512},[3925,11364,9089],{"class":5990},[3925,11366,4191],{"class":4508},[3925,11368,11369],{"class":4512},"gap:",[3925,11371,9100],{"class":5990},[3925,11373,5667],{"class":4508},[3925,11375,11376,11379,11381,11383,11385,11387,11389,11391,11393,11396,11398],{"class":3927,"line":9440},[3925,11377,11378],{"class":4512},"  hint:",[3925,11380,4509],{"class":4508},[3925,11382,7292],{"class":4512},[3925,11384,7566],{"class":4521},[3925,11386,4191],{"class":4508},[3925,11388,7609],{"class":4512},[3925,11390,9192],{"class":5990},[3925,11392,4191],{"class":4508},[3925,11394,11395],{"class":4512},"marginBottom:",[3925,11397,9100],{"class":5990},[3925,11399,5667],{"class":4508},[3925,11401,11402,11405],{"class":3927,"line":9460},[3925,11403,11404],{"class":4512},"  label:",[3925,11406,5617],{"class":4508},[3925,11408,11410,11412,11414],{"class":3927,"line":11409},95,[3925,11411,10200],{"class":4512},[3925,11413,9100],{"class":5990},[3925,11415,5051],{"class":4508},[3925,11417,11419,11421,11423],{"class":3927,"line":11418},96,[3925,11420,10209],{"class":4512},[3925,11422,7612],{"class":5990},[3925,11424,5051],{"class":4508},[3925,11426,11428,11431,11433],{"class":3927,"line":11427},97,[3925,11429,11430],{"class":4512},"    fontWeight:",[3925,11432,9308],{"class":4521},[3925,11434,5051],{"class":4508},[3925,11436,11438,11440,11442],{"class":3927,"line":11437},98,[3925,11439,10227],{"class":4512},[3925,11441,7566],{"class":4521},[3925,11443,5051],{"class":4508},[3925,11445,11447,11450,11453],{"class":3927,"line":11446},99,[3925,11448,11449],{"class":4512},"    textTransform:",[3925,11451,11452],{"class":4521}," 'uppercase'",[3925,11454,5051],{"class":4508},[3925,11456,11458],{"class":3927,"line":11457},100,[3925,11459,6584],{"class":4508},[3925,11461,11463,11466],{"class":3927,"line":11462},101,[3925,11464,11465],{"class":4512},"  input:",[3925,11467,5617],{"class":4508},[3925,11469,11471,11473,11475],{"class":3927,"line":11470},102,[3925,11472,9258],{"class":4512},[3925,11474,9064],{"class":5990},[3925,11476,5051],{"class":4508},[3925,11478,11480,11482,11484],{"class":3927,"line":11479},103,[3925,11481,9268],{"class":4512},[3925,11483,7592],{"class":4521},[3925,11485,5051],{"class":4508},[3925,11487,11489,11491,11493],{"class":3927,"line":11488},104,[3925,11490,9237],{"class":4512},[3925,11492,9240],{"class":4521},[3925,11494,5051],{"class":4508},[3925,11496,11498,11500,11502],{"class":3927,"line":11497},105,[3925,11499,9248],{"class":4512},[3925,11501,7612],{"class":5990},[3925,11503,5051],{"class":4508},[3925,11505,11507,11509,11511],{"class":3927,"line":11506},106,[3925,11508,9086],{"class":4512},[3925,11510,9281],{"class":5990},[3925,11512,5051],{"class":4508},[3925,11514,11516,11518,11520],{"class":3927,"line":11515},107,[3925,11517,9408],{"class":4512},[3925,11519,7612],{"class":5990},[3925,11521,5051],{"class":4508},[3925,11523,11525,11527,11529],{"class":3927,"line":11524},108,[3925,11526,10209],{"class":4512},[3925,11528,9089],{"class":5990},[3925,11530,5051],{"class":4508},[3925,11532,11534,11536,11538],{"class":3927,"line":11533},109,[3925,11535,10227],{"class":4512},[3925,11537,7295],{"class":4521},[3925,11539,5051],{"class":4508},[3925,11541,11543],{"class":3927,"line":11542},110,[3925,11544,6584],{"class":4508},[3925,11546,11548,11551,11553,11556,11559],{"class":3927,"line":11547},111,[3925,11549,11550],{"class":4512},"  multi:",[3925,11552,4509],{"class":4508},[3925,11554,11555],{"class":4512},"minHeight:",[3925,11557,11558],{"class":5990}," 140",[3925,11560,5667],{"class":4508},[3925,11562,11564,11566],{"class":3927,"line":11563},112,[3925,11565,9391],{"class":4512},[3925,11567,5617],{"class":4508},[3925,11569,11571,11573,11576],{"class":3927,"line":11570},113,[3925,11572,10200],{"class":4512},[3925,11574,11575],{"class":5990}," 20",[3925,11577,5051],{"class":4508},[3925,11579,11581,11583,11585],{"class":3927,"line":11580},114,[3925,11582,9237],{"class":4512},[3925,11584,7280],{"class":4521},[3925,11586,5051],{"class":4508},[3925,11588,11590,11592,11594],{"class":3927,"line":11589},115,[3925,11591,9408],{"class":4512},[3925,11593,9281],{"class":5990},[3925,11595,5051],{"class":4508},[3925,11597,11599,11601,11603],{"class":3927,"line":11598},116,[3925,11600,9248],{"class":4512},[3925,11602,7612],{"class":5990},[3925,11604,5051],{"class":4508},[3925,11606,11608,11610,11612],{"class":3927,"line":11607},117,[3925,11609,9427],{"class":4512},[3925,11611,9430],{"class":4521},[3925,11613,5051],{"class":4508},[3925,11615,11617],{"class":3927,"line":11616},118,[3925,11618,6584],{"class":4508},[3925,11620,11622,11624,11626,11628,11630,11632,11634,11636],{"class":3927,"line":11621},119,[3925,11623,9443],{"class":4512},[3925,11625,4509],{"class":4508},[3925,11627,7292],{"class":4512},[3925,11629,9240],{"class":4521},[3925,11631,4191],{"class":4508},[3925,11633,7300],{"class":4512},[3925,11635,9157],{"class":4521},[3925,11637,5667],{"class":4508},[3925,11639,11641],{"class":3927,"line":11640},120,[3925,11642,5739],{"class":4508},[4332,11644,11646],{"id":11645},"крок-9-about","Крок 9. About",[6412,11648,11650],{"title":11649},"Повний app\u002F(tabs)\u002Fabout.tsx — розгорнути",[3916,11651,11653],{"className":4489,"code":11652,"language":4491,"meta":3921,"style":3921},"import { ScrollView, StyleSheet, Text } from 'react-native';\nimport { Link } from 'expo-router';\nimport { SafeAreaView } from 'react-native-safe-area-context';\n\nexport default function AboutScreen() {\n  return (\n    \u003CSafeAreaView style={styles.safe} edges={['top']}>\n      \u003CScrollView contentContainerStyle={styles.body}>\n        \u003CText style={styles.title}>Про застосунок\u003C\u002FText>\n        \u003CText style={styles.p}>\n          Міні-проєкт статті про вкладені навігатори: Tabs → Stack нотаток →\n          деталі; окремо root modal створення з guard на back.\n        \u003C\u002FText>\n        \u003CLink href=\"\u002Fnotes\" style={styles.link}>\n          ← До нотаток\n        \u003C\u002FLink>\n      \u003C\u002FScrollView>\n    \u003C\u002FSafeAreaView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  safe: { flex: 1, backgroundColor: '#F8FAFC' },\n  body: { padding: 16, gap: 12 },\n  title: { fontSize: 24, fontWeight: '800', color: '#0F172A' },\n  p: { fontSize: 16, lineHeight: 24, color: '#334155' },\n  link: { marginTop: 8, color: '#2563EB', fontWeight: '700', fontSize: 16 },\n});\n",[3521,11654,11655,11679,11695,11711,11715,11728,11734,11770,11792,11823,11845,11850,11855,11863,11893,11898,11906,11914,11922,11926,11930,11934,11950,11968,11986,12010,12036,12067],{"__ignoreMap":3921},[3925,11656,11657,11659,11661,11663,11665,11667,11669,11671,11673,11675,11677],{"class":3927,"line":3928},[3925,11658,4505],{"class":4504},[3925,11660,4509],{"class":4508},[3925,11662,9486],{"class":4512},[3925,11664,4191],{"class":4508},[3925,11666,9042],{"class":4512},[3925,11668,4191],{"class":4508},[3925,11670,8422],{"class":4512},[3925,11672,4515],{"class":4508},[3925,11674,4518],{"class":4504},[3925,11676,8175],{"class":4521},[3925,11678,4525],{"class":4508},[3925,11680,11681,11683,11685,11687,11689,11691,11693],{"class":3927,"line":3934},[3925,11682,4505],{"class":4504},[3925,11684,4509],{"class":4508},[3925,11686,3535],{"class":4512},[3925,11688,4515],{"class":4508},[3925,11690,4518],{"class":4504},[3925,11692,4522],{"class":4521},[3925,11694,4525],{"class":4508},[3925,11696,11697,11699,11701,11703,11705,11707,11709],{"class":3927,"line":3940},[3925,11698,4505],{"class":4504},[3925,11700,4509],{"class":4508},[3925,11702,8206],{"class":4512},[3925,11704,4515],{"class":4508},[3925,11706,4518],{"class":4504},[3925,11708,8213],{"class":4521},[3925,11710,4525],{"class":4508},[3925,11712,11713],{"class":3927,"line":3946},[3925,11714,3950],{"emptyLinePlaceholder":3949},[3925,11716,11717,11719,11721,11723,11726],{"class":3927,"line":3953},[3925,11718,4534],{"class":4504},[3925,11720,4537],{"class":4504},[3925,11722,4541],{"class":4540},[3925,11724,11725],{"class":4544}," AboutScreen",[3925,11727,4548],{"class":4508},[3925,11729,11730,11732],{"class":3927,"line":3959},[3925,11731,4553],{"class":4504},[3925,11733,4556],{"class":4508},[3925,11735,11736,11738,11740,11742,11744,11746,11748,11750,11752,11754,11756,11758,11760,11762,11764,11766,11768],{"class":3927,"line":3965},[3925,11737,4562],{"class":4561},[3925,11739,8206],{"class":4565},[3925,11741,7232],{"class":4579},[3925,11743,4583],{"class":4508},[3925,11745,4594],{"class":4540},[3925,11747,8365],{"class":4512},[3925,11749,3595],{"class":4597},[3925,11751,8370],{"class":4512},[3925,11753,4610],{"class":4540},[3925,11755,8375],{"class":4579},[3925,11757,4583],{"class":4508},[3925,11759,4594],{"class":4540},[3925,11761,5987],{"class":4597},[3925,11763,8384],{"class":4521},[3925,11765,8387],{"class":4597},[3925,11767,4610],{"class":4540},[3925,11769,4568],{"class":4561},[3925,11771,11772,11774,11776,11778,11780,11782,11784,11786,11788,11790],{"class":3927,"line":3971},[3925,11773,4573],{"class":4561},[3925,11775,9486],{"class":4565},[3925,11777,9854],{"class":4579},[3925,11779,4583],{"class":4508},[3925,11781,4594],{"class":4540},[3925,11783,8365],{"class":4512},[3925,11785,3595],{"class":4597},[3925,11787,6893],{"class":4512},[3925,11789,4610],{"class":4540},[3925,11791,4568],{"class":4561},[3925,11793,11794,11796,11798,11800,11802,11804,11806,11808,11810,11812,11814,11817,11819,11821],{"class":3927,"line":3977},[3925,11795,7335],{"class":4561},[3925,11797,8422],{"class":4565},[3925,11799,7232],{"class":4579},[3925,11801,4583],{"class":4508},[3925,11803,4594],{"class":4540},[3925,11805,8365],{"class":4512},[3925,11807,3595],{"class":4597},[3925,11809,6884],{"class":4512},[3925,11811,4610],{"class":4540},[3925,11813,8439],{"class":4561},[3925,11815,11816],{"class":4508},"Про застосунок",[3925,11818,8445],{"class":4561},[3925,11820,8422],{"class":4565},[3925,11822,4568],{"class":4561},[3925,11824,11825,11827,11829,11831,11833,11835,11837,11839,11841,11843],{"class":3927,"line":3983},[3925,11826,7335],{"class":4561},[3925,11828,8422],{"class":4565},[3925,11830,7232],{"class":4579},[3925,11832,4583],{"class":4508},[3925,11834,4594],{"class":4540},[3925,11836,8365],{"class":4512},[3925,11838,3595],{"class":4597},[3925,11840,3512],{"class":4512},[3925,11842,4610],{"class":4540},[3925,11844,4568],{"class":4561},[3925,11846,11847],{"class":3927,"line":3989},[3925,11848,11849],{"class":4508},"          Міні-проєкт статті про вкладені навігатори: Tabs → Stack нотаток →\n",[3925,11851,11852],{"class":3927,"line":3995},[3925,11853,11854],{"class":4508},"          деталі; окремо root modal створення з guard на back.\n",[3925,11856,11857,11859,11861],{"class":3927,"line":4001},[3925,11858,8493],{"class":4561},[3925,11860,8422],{"class":4565},[3925,11862,4568],{"class":4561},[3925,11864,11865,11867,11869,11871,11873,11876,11878,11880,11882,11884,11886,11889,11891],{"class":3927,"line":4007},[3925,11866,7335],{"class":4561},[3925,11868,3535],{"class":4565},[3925,11870,8691],{"class":4579},[3925,11872,4583],{"class":4508},[3925,11874,11875],{"class":4521},"\"\u002Fnotes\"",[3925,11877,7232],{"class":4579},[3925,11879,4583],{"class":4508},[3925,11881,4594],{"class":4540},[3925,11883,8365],{"class":4512},[3925,11885,3595],{"class":4597},[3925,11887,11888],{"class":4512},"link",[3925,11890,4610],{"class":4540},[3925,11892,4568],{"class":4561},[3925,11894,11895],{"class":3927,"line":4013},[3925,11896,11897],{"class":4508},"          ← До нотаток\n",[3925,11899,11900,11902,11904],{"class":3927,"line":4019},[3925,11901,8493],{"class":4561},[3925,11903,3535],{"class":4565},[3925,11905,4568],{"class":4561},[3925,11907,11908,11910,11912],{"class":3927,"line":4024},[3925,11909,7434],{"class":4561},[3925,11911,9486],{"class":4565},[3925,11913,4568],{"class":4561},[3925,11915,11916,11918,11920],{"class":3927,"line":4030},[3925,11917,4669],{"class":4561},[3925,11919,8206],{"class":4565},[3925,11921,4568],{"class":4561},[3925,11923,11924],{"class":3927,"line":4036},[3925,11925,4678],{"class":4508},[3925,11927,11928],{"class":3927,"line":4041},[3925,11929,4016],{"class":4508},[3925,11931,11932],{"class":3927,"line":4047},[3925,11933,3950],{"emptyLinePlaceholder":3949},[3925,11935,11936,11938,11940,11942,11944,11946,11948],{"class":3927,"line":4053},[3925,11937,5930],{"class":4540},[3925,11939,9037],{"class":5194},[3925,11941,5967],{"class":4508},[3925,11943,9042],{"class":4512},[3925,11945,3595],{"class":4508},[3925,11947,9047],{"class":4544},[3925,11949,9050],{"class":4508},[3925,11951,11952,11954,11956,11958,11960,11962,11964,11966],{"class":3927,"line":4059},[3925,11953,9056],{"class":4512},[3925,11955,4509],{"class":4508},[3925,11957,9061],{"class":4512},[3925,11959,9064],{"class":5990},[3925,11961,4191],{"class":4508},[3925,11963,7267],{"class":4512},[3925,11965,7270],{"class":4521},[3925,11967,5667],{"class":4508},[3925,11969,11970,11972,11974,11976,11978,11980,11982,11984],{"class":3927,"line":4065},[3925,11971,10078],{"class":4512},[3925,11973,4509],{"class":4508},[3925,11975,9205],{"class":4512},[3925,11977,9089],{"class":5990},[3925,11979,4191],{"class":4508},[3925,11981,11369],{"class":4512},[3925,11983,7612],{"class":5990},[3925,11985,5667],{"class":4508},[3925,11987,11988,11990,11992,11994,11996,11998,12000,12002,12004,12006,12008],{"class":3927,"line":4070},[3925,11989,9143],{"class":4512},[3925,11991,4509],{"class":4508},[3925,11993,7609],{"class":4512},[3925,11995,9150],{"class":5990},[3925,11997,4191],{"class":4508},[3925,11999,7300],{"class":4512},[3925,12001,9157],{"class":4521},[3925,12003,4191],{"class":4508},[3925,12005,7292],{"class":4512},[3925,12007,7295],{"class":4521},[3925,12009,5667],{"class":4508},[3925,12011,12012,12015,12017,12019,12021,12023,12026,12028,12030,12032,12034],{"class":3927,"line":4076},[3925,12013,12014],{"class":4512},"  p:",[3925,12016,4509],{"class":4508},[3925,12018,7609],{"class":4512},[3925,12020,9089],{"class":5990},[3925,12022,4191],{"class":4508},[3925,12024,12025],{"class":4512},"lineHeight:",[3925,12027,9150],{"class":5990},[3925,12029,4191],{"class":4508},[3925,12031,7292],{"class":4512},[3925,12033,10230],{"class":4521},[3925,12035,5667],{"class":4508},[3925,12037,12038,12041,12043,12045,12047,12049,12051,12053,12055,12057,12059,12061,12063,12065],{"class":3927,"line":4082},[3925,12039,12040],{"class":4512},"  link:",[3925,12042,4509],{"class":4508},[3925,12044,9176],{"class":4512},[3925,12046,9100],{"class":5990},[3925,12048,4191],{"class":4508},[3925,12050,7292],{"class":4512},[3925,12052,7280],{"class":4521},[3925,12054,4191],{"class":4508},[3925,12056,7300],{"class":4512},[3925,12058,9308],{"class":4521},[3925,12060,4191],{"class":4508},[3925,12062,7609],{"class":4512},[3925,12064,9089],{"class":5990},[3925,12066,5667],{"class":4508},[3925,12068,12069],{"class":3927,"line":4088},[3925,12070,5739],{"class":4508},[4332,12072,12074],{"id":12073},"перевірка-міні-проєкту","Перевірка міні-проєкту",[3568,12076,12077,12080,12083,12086,12089],{},[3571,12078,12079],{},"Список нотаток + вкладка «Про застосунок».",[3571,12081,12082],{},"Тап по нотатці → деталі, tab bar лишається, back → список.",[3571,12084,12085],{},"«Нова нотатка» → modal.",[3571,12087,12088],{},"Ввести текст, натиснути back → діалог. «Лишитись» \u002F «Вийти».",[3571,12090,12091],{},"«Зберегти» → modal закривається, нотатка в списку.",[4332,12093,12095],{"id":12094},"критерій-готово","Критерій «готово»",[3802,12097,12100,12112,12121,12130,12136],{"className":12098},[12099],"contains-task-list",[3571,12101,12104,12107,12108,12111],{"className":12102},[12103],"task-list-item",[11052,12105],{"disabled":3949,"type":12106},"checkbox"," Усі файли з ",[3516,12109,12110],{},"повним"," кодом підставлено",[3571,12113,12115,12117,12118],{"className":12114},[12103],[11052,12116],{"disabled":3949,"type":12106}," Nested Stack у ",[3521,12119,12120],{},"notes\u002F",[3571,12122,12124,12126,12127],{"className":12123},[12103],[11052,12125],{"disabled":3949,"type":12106}," Modal ",[3521,12128,12129],{},"modal\u002Fnew",[3571,12131,12133,12135],{"className":12132},[12103],[11052,12134],{"disabled":3949,"type":12106}," Guard на dirty",[3571,12137,12139,12141,12142,12145],{"className":12138},[12103],[11052,12140],{"disabled":3949,"type":12106}," Немає ",[3521,12143,12144],{},"useState('screen')"," замість Router",[3731,12147],{},[3507,12149,12151],{"id":12150},"nomad-стек-деталей-поїздки-та-модалки","Nomad: стек деталей поїздки та модалки",[3512,12153,12154],{},[3906,12155],{"alt":12156,"className":12157,"src":6101},"Nomad: список → деталі (tabs) → modal",[3910],[4332,12159,12161],{"id":12160},"навіщо-користувачу","Навіщо користувачу",[3802,12163,12164,12170,12176,12182],{},[3571,12165,12166,12167,12169],{},"Тап по картці поїздки відкриває ",[3516,12168,3546],{}," (опис, мітки, місця поїздки).",[3571,12171,12172,12173,12175],{},"Tab bar ",[3516,12174,6139],{}," — можна перейти в «Місця» \u002F «Ще».",[3571,12177,12178,12179,12181],{},"«Нова поїздка» відкривається як ",[3516,12180,4291],{}," (з форми на home, з about Link, з деталей).",[3571,12183,12184],{},"Місця з вкладки «Місця» ведуть на деталі відповідної поїздки.",[4332,12186,12188],{"id":12187},"нитка","Нитка",[3512,12190,12191,12194],{},[3516,12192,12193],{},"Уже є:"," tabs Поїздки\u002FМісця\u002FЩе, форма RHF, TripsProvider, тема, FlashList.",[3512,12196,12197],{},[3516,12198,12199],{},"Додаємо:",[4224,12201,12202,12212],{},[4227,12203,12204],{},[4230,12205,12206,12209],{},[4233,12207,12208],{},"Зміна",[4233,12210,12211],{},"Навіщо",[4240,12213,12214,12227,12239,12251,12261],{},[4230,12215,12216,12222],{},[4245,12217,12218,12221],{},[3521,12219,12220],{},"(tabs)\u002Ftrips\u002F"," + nested Stack",[4245,12223,12224,12225],{},"список + ",[3521,12226,3621],{},[4230,12228,12229,12236],{},[4245,12230,12231,4191,12233],{},[3521,12232,6024],{},[3521,12234,12235],{},"getPlacesForTrip",[4245,12237,12238],{},"дані деталей",[4230,12240,12241,12248],{},[4245,12242,12243,12245,12246],{},[3521,12244,3531],{}," → ",[3521,12247,3646],{},[4245,12249,12250],{},"модальна форма",[4230,12252,12253,12258],{},[4245,12254,12255],{},[3521,12256,12257],{},"unstable_settings.initialRouteName",[4245,12259,12260],{},"якір для modal",[4230,12262,12263,12266],{},[4245,12264,12265],{},"навігація з places \u002F chips",[4245,12267,12268],{},"у деталі поїздки",[4332,12270,12272],{"id":12271},"повний-знімок","Повний знімок",[12274,12275,12277,12668,12978,13078,13591,14160,14458,17590,19872,20900,22535,22846,23108,23420,23993,24581,25272,26098,26670,26778,31150,33330,34181,35782,36514,36880,37262,38154,38294,38886,39609,39906,40826],"code-tree",{"title":12276},"Nomad після nested stack + modal",[3916,12278,12283],{"className":12279,"code":12280,"filename":12281,"language":12282,"meta":3921,"style":3921},"language-json shiki shiki-themes light-plus dark-plus dark-plus","{\n  \"name\": \"nomad\",\n  \"version\": \"1.0.0\",\n  \"main\": \"expo-router\u002Fentry\",\n  \"scripts\": {\n    \"start\": \"expo start\",\n    \"android\": \"expo start --android\",\n    \"ios\": \"expo start --ios\",\n    \"web\": \"expo start --web\"\n  },\n  \"dependencies\": {\n    \"@expo\u002Fvector-icons\": \"^15.1.1\",\n    \"@hookform\u002Fresolvers\": \"^5.7.1\",\n    \"@react-native-community\u002Fcheckbox\": \"^0.6.0\",\n    \"@react-native-community\u002Fdatetimepicker\": \"8.4.4\",\n    \"@react-native-community\u002Fslider\": \"5.0.1\",\n    \"@react-native-picker\u002Fpicker\": \"2.11.1\",\n    \"@shopify\u002Fflash-list\": \"^2.3.2\",\n    \"expo\": \"~54.0.35\",\n    \"expo-constants\": \"~18.0.13\",\n    \"expo-linking\": \"~8.0.12\",\n    \"expo-router\": \"~6.0.24\",\n    \"expo-status-bar\": \"~3.0.9\",\n    \"react\": \"19.1.0\",\n    \"react-hook-form\": \"^7.84.0\",\n    \"react-native\": \"0.81.5\",\n    \"react-native-safe-area-context\": \"~5.6.0\",\n    \"react-native-screens\": \"~4.16.0\",\n    \"zod\": \"^4.4.3\"\n  },\n  \"devDependencies\": {\n    \"@expo\u002Fngrok\": \"^4.1.3\",\n    \"@types\u002Freact\": \"~19.1.0\",\n    \"typescript\": \"~5.9.2\"\n  },\n  \"private\": true\n}\n","package.json","json",[3521,12284,12285,12289,12302,12314,12326,12334,12346,12358,12370,12380,12384,12391,12403,12415,12427,12439,12451,12463,12475,12487,12499,12511,12523,12535,12547,12559,12571,12583,12595,12605,12609,12616,12628,12640,12650,12654,12664],{"__ignoreMap":3921},[3925,12286,12287],{"class":3927,"line":3928},[3925,12288,5040],{"class":4508},[3925,12290,12291,12295,12297,12300],{"class":3927,"line":3934},[3925,12292,12294],{"class":12293},"sLwNe","  \"name\"",[3925,12296,4767],{"class":4508},[3925,12298,12299],{"class":4521},"\"nomad\"",[3925,12301,5051],{"class":4508},[3925,12303,12304,12307,12309,12312],{"class":3927,"line":3940},[3925,12305,12306],{"class":12293},"  \"version\"",[3925,12308,4767],{"class":4508},[3925,12310,12311],{"class":4521},"\"1.0.0\"",[3925,12313,5051],{"class":4508},[3925,12315,12316,12319,12321,12324],{"class":3927,"line":3946},[3925,12317,12318],{"class":12293},"  \"main\"",[3925,12320,4767],{"class":4508},[3925,12322,12323],{"class":4521},"\"expo-router\u002Fentry\"",[3925,12325,5051],{"class":4508},[3925,12327,12328,12331],{"class":3927,"line":3953},[3925,12329,12330],{"class":12293},"  \"scripts\"",[3925,12332,12333],{"class":4508},": {\n",[3925,12335,12336,12339,12341,12344],{"class":3927,"line":3959},[3925,12337,12338],{"class":12293},"    \"start\"",[3925,12340,4767],{"class":4508},[3925,12342,12343],{"class":4521},"\"expo start\"",[3925,12345,5051],{"class":4508},[3925,12347,12348,12351,12353,12356],{"class":3927,"line":3965},[3925,12349,12350],{"class":12293},"    \"android\"",[3925,12352,4767],{"class":4508},[3925,12354,12355],{"class":4521},"\"expo start --android\"",[3925,12357,5051],{"class":4508},[3925,12359,12360,12363,12365,12368],{"class":3927,"line":3971},[3925,12361,12362],{"class":12293},"    \"ios\"",[3925,12364,4767],{"class":4508},[3925,12366,12367],{"class":4521},"\"expo start --ios\"",[3925,12369,5051],{"class":4508},[3925,12371,12372,12375,12377],{"class":3927,"line":3977},[3925,12373,12374],{"class":12293},"    \"web\"",[3925,12376,4767],{"class":4508},[3925,12378,12379],{"class":4521},"\"expo start --web\"\n",[3925,12381,12382],{"class":3927,"line":3983},[3925,12383,6584],{"class":4508},[3925,12385,12386,12389],{"class":3927,"line":3989},[3925,12387,12388],{"class":12293},"  \"dependencies\"",[3925,12390,12333],{"class":4508},[3925,12392,12393,12396,12398,12401],{"class":3927,"line":3995},[3925,12394,12395],{"class":12293},"    \"@expo\u002Fvector-icons\"",[3925,12397,4767],{"class":4508},[3925,12399,12400],{"class":4521},"\"^15.1.1\"",[3925,12402,5051],{"class":4508},[3925,12404,12405,12408,12410,12413],{"class":3927,"line":4001},[3925,12406,12407],{"class":12293},"    \"@hookform\u002Fresolvers\"",[3925,12409,4767],{"class":4508},[3925,12411,12412],{"class":4521},"\"^5.7.1\"",[3925,12414,5051],{"class":4508},[3925,12416,12417,12420,12422,12425],{"class":3927,"line":4007},[3925,12418,12419],{"class":12293},"    \"@react-native-community\u002Fcheckbox\"",[3925,12421,4767],{"class":4508},[3925,12423,12424],{"class":4521},"\"^0.6.0\"",[3925,12426,5051],{"class":4508},[3925,12428,12429,12432,12434,12437],{"class":3927,"line":4013},[3925,12430,12431],{"class":12293},"    \"@react-native-community\u002Fdatetimepicker\"",[3925,12433,4767],{"class":4508},[3925,12435,12436],{"class":4521},"\"8.4.4\"",[3925,12438,5051],{"class":4508},[3925,12440,12441,12444,12446,12449],{"class":3927,"line":4019},[3925,12442,12443],{"class":12293},"    \"@react-native-community\u002Fslider\"",[3925,12445,4767],{"class":4508},[3925,12447,12448],{"class":4521},"\"5.0.1\"",[3925,12450,5051],{"class":4508},[3925,12452,12453,12456,12458,12461],{"class":3927,"line":4024},[3925,12454,12455],{"class":12293},"    \"@react-native-picker\u002Fpicker\"",[3925,12457,4767],{"class":4508},[3925,12459,12460],{"class":4521},"\"2.11.1\"",[3925,12462,5051],{"class":4508},[3925,12464,12465,12468,12470,12473],{"class":3927,"line":4030},[3925,12466,12467],{"class":12293},"    \"@shopify\u002Fflash-list\"",[3925,12469,4767],{"class":4508},[3925,12471,12472],{"class":4521},"\"^2.3.2\"",[3925,12474,5051],{"class":4508},[3925,12476,12477,12480,12482,12485],{"class":3927,"line":4036},[3925,12478,12479],{"class":12293},"    \"expo\"",[3925,12481,4767],{"class":4508},[3925,12483,12484],{"class":4521},"\"~54.0.35\"",[3925,12486,5051],{"class":4508},[3925,12488,12489,12492,12494,12497],{"class":3927,"line":4041},[3925,12490,12491],{"class":12293},"    \"expo-constants\"",[3925,12493,4767],{"class":4508},[3925,12495,12496],{"class":4521},"\"~18.0.13\"",[3925,12498,5051],{"class":4508},[3925,12500,12501,12504,12506,12509],{"class":3927,"line":4047},[3925,12502,12503],{"class":12293},"    \"expo-linking\"",[3925,12505,4767],{"class":4508},[3925,12507,12508],{"class":4521},"\"~8.0.12\"",[3925,12510,5051],{"class":4508},[3925,12512,12513,12516,12518,12521],{"class":3927,"line":4053},[3925,12514,12515],{"class":12293},"    \"expo-router\"",[3925,12517,4767],{"class":4508},[3925,12519,12520],{"class":4521},"\"~6.0.24\"",[3925,12522,5051],{"class":4508},[3925,12524,12525,12528,12530,12533],{"class":3927,"line":4059},[3925,12526,12527],{"class":12293},"    \"expo-status-bar\"",[3925,12529,4767],{"class":4508},[3925,12531,12532],{"class":4521},"\"~3.0.9\"",[3925,12534,5051],{"class":4508},[3925,12536,12537,12540,12542,12545],{"class":3927,"line":4065},[3925,12538,12539],{"class":12293},"    \"react\"",[3925,12541,4767],{"class":4508},[3925,12543,12544],{"class":4521},"\"19.1.0\"",[3925,12546,5051],{"class":4508},[3925,12548,12549,12552,12554,12557],{"class":3927,"line":4070},[3925,12550,12551],{"class":12293},"    \"react-hook-form\"",[3925,12553,4767],{"class":4508},[3925,12555,12556],{"class":4521},"\"^7.84.0\"",[3925,12558,5051],{"class":4508},[3925,12560,12561,12564,12566,12569],{"class":3927,"line":4076},[3925,12562,12563],{"class":12293},"    \"react-native\"",[3925,12565,4767],{"class":4508},[3925,12567,12568],{"class":4521},"\"0.81.5\"",[3925,12570,5051],{"class":4508},[3925,12572,12573,12576,12578,12581],{"class":3927,"line":4082},[3925,12574,12575],{"class":12293},"    \"react-native-safe-area-context\"",[3925,12577,4767],{"class":4508},[3925,12579,12580],{"class":4521},"\"~5.6.0\"",[3925,12582,5051],{"class":4508},[3925,12584,12585,12588,12590,12593],{"class":3927,"line":4088},[3925,12586,12587],{"class":12293},"    \"react-native-screens\"",[3925,12589,4767],{"class":4508},[3925,12591,12592],{"class":4521},"\"~4.16.0\"",[3925,12594,5051],{"class":4508},[3925,12596,12597,12600,12602],{"class":3927,"line":4093},[3925,12598,12599],{"class":12293},"    \"zod\"",[3925,12601,4767],{"class":4508},[3925,12603,12604],{"class":4521},"\"^4.4.3\"\n",[3925,12606,12607],{"class":3927,"line":4098},[3925,12608,6584],{"class":4508},[3925,12610,12611,12614],{"class":3927,"line":6720},[3925,12612,12613],{"class":12293},"  \"devDependencies\"",[3925,12615,12333],{"class":4508},[3925,12617,12618,12621,12623,12626],{"class":3927,"line":6738},[3925,12619,12620],{"class":12293},"    \"@expo\u002Fngrok\"",[3925,12622,4767],{"class":4508},[3925,12624,12625],{"class":4521},"\"^4.1.3\"",[3925,12627,5051],{"class":4508},[3925,12629,12630,12633,12635,12638],{"class":3927,"line":6787},[3925,12631,12632],{"class":12293},"    \"@types\u002Freact\"",[3925,12634,4767],{"class":4508},[3925,12636,12637],{"class":4521},"\"~19.1.0\"",[3925,12639,5051],{"class":4508},[3925,12641,12642,12645,12647],{"class":3927,"line":6792},[3925,12643,12644],{"class":12293},"    \"typescript\"",[3925,12646,4767],{"class":4508},[3925,12648,12649],{"class":4521},"\"~5.9.2\"\n",[3925,12651,12652],{"class":3927,"line":6797},[3925,12653,6584],{"class":4508},[3925,12655,12656,12659,12661],{"class":3927,"line":6827},[3925,12657,12658],{"class":12293},"  \"private\"",[3925,12660,4767],{"class":4508},[3925,12662,12663],{"class":4540},"true\n",[3925,12665,12666],{"class":3927,"line":6862},[3925,12667,4016],{"class":4508},[3916,12669,12672],{"className":12279,"code":12670,"filename":12671,"language":12282,"meta":3921,"style":3921},"{\n  \"expo\": {\n    \"name\": \"Nomad\",\n    \"slug\": \"nomad\",\n    \"version\": \"1.0.0\",\n    \"orientation\": \"portrait\",\n    \"icon\": \".\u002Fassets\u002Ficon.png\",\n    \"userInterfaceStyle\": \"light\",\n    \"scheme\": \"nomad\",\n    \"newArchEnabled\": true,\n    \"splash\": {\n      \"image\": \".\u002Fassets\u002Fsplash-icon.png\",\n      \"resizeMode\": \"contain\",\n      \"backgroundColor\": \"#ffffff\"\n    },\n    \"ios\": {\n      \"supportsTablet\": true\n    },\n    \"android\": {\n      \"adaptiveIcon\": {\n        \"foregroundImage\": \".\u002Fassets\u002Fadaptive-icon.png\",\n        \"backgroundColor\": \"#ffffff\"\n      },\n      \"edgeToEdgeEnabled\": true,\n      \"predictiveBackGestureEnabled\": false\n    },\n    \"web\": {\n      \"favicon\": \".\u002Fassets\u002Ffavicon.png\"\n    },\n    \"plugins\": [\n      \"expo-router\",\n      \"@react-native-community\u002Fdatetimepicker\"\n    ],\n    \"experiments\": {\n      \"typedRoutes\": true\n    }\n  }\n}\n","app.json",[3521,12673,12674,12678,12685,12697,12708,12719,12731,12743,12755,12766,12777,12784,12796,12808,12818,12822,12828,12837,12841,12847,12854,12866,12875,12880,12891,12901,12905,12911,12921,12925,12933,12940,12945,12950,12957,12966,12970,12974],{"__ignoreMap":3921},[3925,12675,12676],{"class":3927,"line":3928},[3925,12677,5040],{"class":4508},[3925,12679,12680,12683],{"class":3927,"line":3934},[3925,12681,12682],{"class":12293},"  \"expo\"",[3925,12684,12333],{"class":4508},[3925,12686,12687,12690,12692,12695],{"class":3927,"line":3940},[3925,12688,12689],{"class":12293},"    \"name\"",[3925,12691,4767],{"class":4508},[3925,12693,12694],{"class":4521},"\"Nomad\"",[3925,12696,5051],{"class":4508},[3925,12698,12699,12702,12704,12706],{"class":3927,"line":3946},[3925,12700,12701],{"class":12293},"    \"slug\"",[3925,12703,4767],{"class":4508},[3925,12705,12299],{"class":4521},[3925,12707,5051],{"class":4508},[3925,12709,12710,12713,12715,12717],{"class":3927,"line":3953},[3925,12711,12712],{"class":12293},"    \"version\"",[3925,12714,4767],{"class":4508},[3925,12716,12311],{"class":4521},[3925,12718,5051],{"class":4508},[3925,12720,12721,12724,12726,12729],{"class":3927,"line":3959},[3925,12722,12723],{"class":12293},"    \"orientation\"",[3925,12725,4767],{"class":4508},[3925,12727,12728],{"class":4521},"\"portrait\"",[3925,12730,5051],{"class":4508},[3925,12732,12733,12736,12738,12741],{"class":3927,"line":3965},[3925,12734,12735],{"class":12293},"    \"icon\"",[3925,12737,4767],{"class":4508},[3925,12739,12740],{"class":4521},"\".\u002Fassets\u002Ficon.png\"",[3925,12742,5051],{"class":4508},[3925,12744,12745,12748,12750,12753],{"class":3927,"line":3971},[3925,12746,12747],{"class":12293},"    \"userInterfaceStyle\"",[3925,12749,4767],{"class":4508},[3925,12751,12752],{"class":4521},"\"light\"",[3925,12754,5051],{"class":4508},[3925,12756,12757,12760,12762,12764],{"class":3927,"line":3977},[3925,12758,12759],{"class":12293},"    \"scheme\"",[3925,12761,4767],{"class":4508},[3925,12763,12299],{"class":4521},[3925,12765,5051],{"class":4508},[3925,12767,12768,12771,12773,12775],{"class":3927,"line":3983},[3925,12769,12770],{"class":12293},"    \"newArchEnabled\"",[3925,12772,4767],{"class":4508},[3925,12774,10823],{"class":4540},[3925,12776,5051],{"class":4508},[3925,12778,12779,12782],{"class":3927,"line":3989},[3925,12780,12781],{"class":12293},"    \"splash\"",[3925,12783,12333],{"class":4508},[3925,12785,12786,12789,12791,12794],{"class":3927,"line":3995},[3925,12787,12788],{"class":12293},"      \"image\"",[3925,12790,4767],{"class":4508},[3925,12792,12793],{"class":4521},"\".\u002Fassets\u002Fsplash-icon.png\"",[3925,12795,5051],{"class":4508},[3925,12797,12798,12801,12803,12806],{"class":3927,"line":4001},[3925,12799,12800],{"class":12293},"      \"resizeMode\"",[3925,12802,4767],{"class":4508},[3925,12804,12805],{"class":4521},"\"contain\"",[3925,12807,5051],{"class":4508},[3925,12809,12810,12813,12815],{"class":3927,"line":4007},[3925,12811,12812],{"class":12293},"      \"backgroundColor\"",[3925,12814,4767],{"class":4508},[3925,12816,12817],{"class":4521},"\"#ffffff\"\n",[3925,12819,12820],{"class":3927,"line":4013},[3925,12821,5729],{"class":4508},[3925,12823,12824,12826],{"class":3927,"line":4019},[3925,12825,12362],{"class":12293},[3925,12827,12333],{"class":4508},[3925,12829,12830,12833,12835],{"class":3927,"line":4024},[3925,12831,12832],{"class":12293},"      \"supportsTablet\"",[3925,12834,4767],{"class":4508},[3925,12836,12663],{"class":4540},[3925,12838,12839],{"class":3927,"line":4030},[3925,12840,5729],{"class":4508},[3925,12842,12843,12845],{"class":3927,"line":4036},[3925,12844,12350],{"class":12293},[3925,12846,12333],{"class":4508},[3925,12848,12849,12852],{"class":3927,"line":4041},[3925,12850,12851],{"class":12293},"      \"adaptiveIcon\"",[3925,12853,12333],{"class":4508},[3925,12855,12856,12859,12861,12864],{"class":3927,"line":4047},[3925,12857,12858],{"class":12293},"        \"foregroundImage\"",[3925,12860,4767],{"class":4508},[3925,12862,12863],{"class":4521},"\".\u002Fassets\u002Fadaptive-icon.png\"",[3925,12865,5051],{"class":4508},[3925,12867,12868,12871,12873],{"class":3927,"line":4053},[3925,12869,12870],{"class":12293},"        \"backgroundColor\"",[3925,12872,4767],{"class":4508},[3925,12874,12817],{"class":4521},[3925,12876,12877],{"class":3927,"line":4059},[3925,12878,12879],{"class":4508},"      },\n",[3925,12881,12882,12885,12887,12889],{"class":3927,"line":4065},[3925,12883,12884],{"class":12293},"      \"edgeToEdgeEnabled\"",[3925,12886,4767],{"class":4508},[3925,12888,10823],{"class":4540},[3925,12890,5051],{"class":4508},[3925,12892,12893,12896,12898],{"class":3927,"line":4070},[3925,12894,12895],{"class":12293},"      \"predictiveBackGestureEnabled\"",[3925,12897,4767],{"class":4508},[3925,12899,12900],{"class":4540},"false\n",[3925,12902,12903],{"class":3927,"line":4076},[3925,12904,5729],{"class":4508},[3925,12906,12907,12909],{"class":3927,"line":4082},[3925,12908,12374],{"class":12293},[3925,12910,12333],{"class":4508},[3925,12912,12913,12916,12918],{"class":3927,"line":4088},[3925,12914,12915],{"class":12293},"      \"favicon\"",[3925,12917,4767],{"class":4508},[3925,12919,12920],{"class":4521},"\".\u002Fassets\u002Ffavicon.png\"\n",[3925,12922,12923],{"class":3927,"line":4093},[3925,12924,5729],{"class":4508},[3925,12926,12927,12930],{"class":3927,"line":4098},[3925,12928,12929],{"class":12293},"    \"plugins\"",[3925,12931,12932],{"class":4508},": [\n",[3925,12934,12935,12938],{"class":3927,"line":6720},[3925,12936,12937],{"class":4521},"      \"expo-router\"",[3925,12939,5051],{"class":4508},[3925,12941,12942],{"class":3927,"line":6738},[3925,12943,12944],{"class":4521},"      \"@react-native-community\u002Fdatetimepicker\"\n",[3925,12946,12947],{"class":3927,"line":6787},[3925,12948,12949],{"class":4508},"    ],\n",[3925,12951,12952,12955],{"class":3927,"line":6792},[3925,12953,12954],{"class":12293},"    \"experiments\"",[3925,12956,12333],{"class":4508},[3925,12958,12959,12962,12964],{"class":3927,"line":6797},[3925,12960,12961],{"class":12293},"      \"typedRoutes\"",[3925,12963,4767],{"class":4508},[3925,12965,12663],{"class":4540},[3925,12967,12968],{"class":3927,"line":6827},[3925,12969,3986],{"class":4508},[3925,12971,12972],{"class":3927,"line":6862},[3925,12973,4004],{"class":4508},[3925,12975,12976],{"class":3927,"line":6867},[3925,12977,4016],{"class":4508},[3916,12979,12982],{"className":12279,"code":12980,"filename":12981,"language":12282,"meta":3921,"style":3921},"{\n  \"extends\": \"expo\u002Ftsconfig.base\",\n  \"compilerOptions\": {\n    \"strict\": true,\n    \"paths\": {\n      \"@\u002F*\": [\n        \".\u002Fsrc\u002F*\"\n      ]\n    }\n  },\n  \"include\": [\n    \"**\u002F*.ts\",\n    \"**\u002F*.tsx\"\n  ]\n}\n","tsconfig.json",[3521,12983,12984,12988,13000,13007,13018,13025,13032,13037,13042,13046,13050,13057,13064,13069,13074],{"__ignoreMap":3921},[3925,12985,12986],{"class":3927,"line":3928},[3925,12987,5040],{"class":4508},[3925,12989,12990,12993,12995,12998],{"class":3927,"line":3934},[3925,12991,12992],{"class":12293},"  \"extends\"",[3925,12994,4767],{"class":4508},[3925,12996,12997],{"class":4521},"\"expo\u002Ftsconfig.base\"",[3925,12999,5051],{"class":4508},[3925,13001,13002,13005],{"class":3927,"line":3940},[3925,13003,13004],{"class":12293},"  \"compilerOptions\"",[3925,13006,12333],{"class":4508},[3925,13008,13009,13012,13014,13016],{"class":3927,"line":3946},[3925,13010,13011],{"class":12293},"    \"strict\"",[3925,13013,4767],{"class":4508},[3925,13015,10823],{"class":4540},[3925,13017,5051],{"class":4508},[3925,13019,13020,13023],{"class":3927,"line":3953},[3925,13021,13022],{"class":12293},"    \"paths\"",[3925,13024,12333],{"class":4508},[3925,13026,13027,13030],{"class":3927,"line":3959},[3925,13028,13029],{"class":12293},"      \"@\u002F*\"",[3925,13031,12932],{"class":4508},[3925,13033,13034],{"class":3927,"line":3965},[3925,13035,13036],{"class":4521},"        \".\u002Fsrc\u002F*\"\n",[3925,13038,13039],{"class":3927,"line":3971},[3925,13040,13041],{"class":4508},"      ]\n",[3925,13043,13044],{"class":3927,"line":3977},[3925,13045,3986],{"class":4508},[3925,13047,13048],{"class":3927,"line":3983},[3925,13049,6584],{"class":4508},[3925,13051,13052,13055],{"class":3927,"line":3989},[3925,13053,13054],{"class":12293},"  \"include\"",[3925,13056,12932],{"class":4508},[3925,13058,13059,13062],{"class":3927,"line":3995},[3925,13060,13061],{"class":4521},"    \"**\u002F*.ts\"",[3925,13063,5051],{"class":4508},[3925,13065,13066],{"class":3927,"line":4001},[3925,13067,13068],{"class":4521},"    \"**\u002F*.tsx\"\n",[3925,13070,13071],{"class":3927,"line":4007},[3925,13072,13073],{"class":4508},"  ]\n",[3925,13075,13076],{"class":3927,"line":4013},[3925,13077,4016],{"class":4508},[3916,13079,13081],{"className":4489,"code":13080,"filename":3843,"language":4491,"meta":3921,"style":3921},"import { Stack } from 'expo-router';\nimport { StatusBar } from 'expo-status-bar';\n\nimport { TripsProvider } from '@\u002Ffeatures\u002Ftrips';\nimport { ThemeProvider, useTheme } from '@\u002Fshared\u002Ftheme';\n\n\u002F**\n * Кореневий Stack:\n * - (tabs) — вкладки (всередині «Поїздки» ще один Stack)\n * - create-trip — modal поверх усього (вкладки ховаються)\n *\n * initialRouteName: щоб deep link \u002F reload на modal мав куди «спертись».\n *\u002F\nexport const unstable_settings = {\n  initialRouteName: '(tabs)',\n};\n\nfunction RootNavigator() {\n  const { colors, scheme } = useTheme();\n\n  return (\n    \u003C>\n      \u003CStatusBar style={scheme === 'dark' ? 'light' : 'dark'} \u002F>\n      \u003CStack\n        screenOptions={{\n          contentStyle: { backgroundColor: colors.background },\n          headerStyle: { backgroundColor: colors.background },\n          headerTintColor: colors.primary,\n          headerTitleStyle: { color: colors.text, fontWeight: '600' },\n          headerShadowVisible: false,\n        }}\n      >\n        \u003CStack.Screen name=\"(tabs)\" options={{ headerShown: false }} \u002F>\n        \u003CStack.Screen\n          name=\"create-trip\"\n          options={{\n            headerShown: true,\n            title: 'Нова поїздка',\n            presentation: 'modal',\n            headerBackTitle: 'Закрити',\n          }}\n        \u002F>\n      \u003C\u002FStack>\n    \u003C\u002F>\n  );\n}\n\nexport default function RootLayout() {\n  return (\n    \u003CThemeProvider>\n      \u003CTripsProvider>\n        \u003CRootNavigator \u002F>\n      \u003C\u002FTripsProvider>\n    \u003C\u002FThemeProvider>\n  );\n}\n",[3521,13082,13083,13099,13115,13119,13136,13158,13162,13167,13172,13177,13182,13187,13192,13197,13207,13215,13219,13223,13232,13252,13256,13262,13266,13298,13304,13314,13332,13348,13361,13383,13392,13398,13402,13432,13438,13446,13456,13466,13474,13482,13490,13496,13500,13508,13512,13516,13520,13524,13536,13542,13550,13558,13567,13575,13583,13587],{"__ignoreMap":3921},[3925,13084,13085,13087,13089,13091,13093,13095,13097],{"class":3927,"line":3928},[3925,13086,4505],{"class":4504},[3925,13088,4509],{"class":4508},[3925,13090,3523],{"class":4512},[3925,13092,4515],{"class":4508},[3925,13094,4518],{"class":4504},[3925,13096,4522],{"class":4521},[3925,13098,4525],{"class":4508},[3925,13100,13101,13103,13105,13107,13109,13111,13113],{"class":3927,"line":3934},[3925,13102,4505],{"class":4504},[3925,13104,4509],{"class":4508},[3925,13106,7160],{"class":4512},[3925,13108,4515],{"class":4508},[3925,13110,4518],{"class":4504},[3925,13112,7167],{"class":4521},[3925,13114,4525],{"class":4508},[3925,13116,13117],{"class":3927,"line":3940},[3925,13118,3950],{"emptyLinePlaceholder":3949},[3925,13120,13121,13123,13125,13127,13129,13131,13134],{"class":3927,"line":3946},[3925,13122,4505],{"class":4504},[3925,13124,4509],{"class":4508},[3925,13126,5242],{"class":4512},[3925,13128,4515],{"class":4508},[3925,13130,4518],{"class":4504},[3925,13132,13133],{"class":4521}," '@\u002Ffeatures\u002Ftrips'",[3925,13135,4525],{"class":4508},[3925,13137,13138,13140,13142,13144,13146,13149,13151,13153,13156],{"class":3927,"line":3953},[3925,13139,4505],{"class":4504},[3925,13141,4509],{"class":4508},[3925,13143,5333],{"class":4512},[3925,13145,4191],{"class":4508},[3925,13147,13148],{"class":4512},"useTheme",[3925,13150,4515],{"class":4508},[3925,13152,4518],{"class":4504},[3925,13154,13155],{"class":4521}," '@\u002Fshared\u002Ftheme'",[3925,13157,4525],{"class":4508},[3925,13159,13160],{"class":3927,"line":3959},[3925,13161,3950],{"emptyLinePlaceholder":3949},[3925,13163,13164],{"class":3927,"line":3965},[3925,13165,13166],{"class":4498},"\u002F**\n",[3925,13168,13169],{"class":3927,"line":3971},[3925,13170,13171],{"class":4498}," * Кореневий Stack:\n",[3925,13173,13174],{"class":3927,"line":3977},[3925,13175,13176],{"class":4498}," * - (tabs) — вкладки (всередині «Поїздки» ще один Stack)\n",[3925,13178,13179],{"class":3927,"line":3983},[3925,13180,13181],{"class":4498}," * - create-trip — modal поверх усього (вкладки ховаються)\n",[3925,13183,13184],{"class":3927,"line":3989},[3925,13185,13186],{"class":4498}," *\n",[3925,13188,13189],{"class":3927,"line":3995},[3925,13190,13191],{"class":4498}," * initialRouteName: щоб deep link \u002F reload на modal мав куди «спертись».\n",[3925,13193,13194],{"class":3927,"line":4001},[3925,13195,13196],{"class":4498}," *\u002F\n",[3925,13198,13199,13201,13203,13205],{"class":3927,"line":4007},[3925,13200,4534],{"class":4504},[3925,13202,5191],{"class":4540},[3925,13204,5195],{"class":5194},[3925,13206,5198],{"class":4508},[3925,13208,13209,13211,13213],{"class":3927,"line":4013},[3925,13210,5203],{"class":4512},[3925,13212,5206],{"class":4521},[3925,13214,5051],{"class":4508},[3925,13216,13217],{"class":3927,"line":4019},[3925,13218,5213],{"class":4508},[3925,13220,13221],{"class":3927,"line":4024},[3925,13222,3950],{"emptyLinePlaceholder":3949},[3925,13224,13225,13227,13230],{"class":3927,"line":4030},[3925,13226,6677],{"class":4540},[3925,13228,13229],{"class":4544}," RootNavigator",[3925,13231,4548],{"class":4508},[3925,13233,13234,13236,13238,13241,13243,13246,13248,13250],{"class":3927,"line":4036},[3925,13235,6909],{"class":4540},[3925,13237,4509],{"class":4508},[3925,13239,13240],{"class":5194},"colors",[3925,13242,4191],{"class":4508},[3925,13244,13245],{"class":5194},"scheme",[3925,13247,5937],{"class":4508},[3925,13249,13148],{"class":4544},[3925,13251,7020],{"class":4508},[3925,13253,13254],{"class":3927,"line":4041},[3925,13255,3950],{"emptyLinePlaceholder":3949},[3925,13257,13258,13260],{"class":3927,"line":4047},[3925,13259,4553],{"class":4504},[3925,13261,4556],{"class":4508},[3925,13263,13264],{"class":3927,"line":4053},[3925,13265,7223],{"class":4561},[3925,13267,13268,13270,13272,13274,13276,13278,13280,13282,13285,13287,13290,13292,13294,13296],{"class":3927,"line":4059},[3925,13269,4573],{"class":4561},[3925,13271,7160],{"class":4565},[3925,13273,7232],{"class":4579},[3925,13275,4583],{"class":4508},[3925,13277,4594],{"class":4540},[3925,13279,13245],{"class":4512},[3925,13281,10916],{"class":4508},[3925,13283,13284],{"class":4521}," 'dark'",[3925,13286,10922],{"class":4508},[3925,13288,13289],{"class":4521}," 'light'",[3925,13291,10928],{"class":4508},[3925,13293,13284],{"class":4521},[3925,13295,4610],{"class":4540},[3925,13297,4613],{"class":4561},[3925,13299,13300,13302],{"class":3927,"line":4065},[3925,13301,4573],{"class":4561},[3925,13303,7246],{"class":4565},[3925,13305,13306,13308,13310,13312],{"class":3927,"line":4070},[3925,13307,7251],{"class":4579},[3925,13309,4583],{"class":4508},[3925,13311,4594],{"class":4540},[3925,13313,5040],{"class":4597},[3925,13315,13316,13318,13320,13322,13325,13327,13330],{"class":3927,"line":4076},[3925,13317,7310],{"class":4512},[3925,13319,4509],{"class":4597},[3925,13321,7267],{"class":4512},[3925,13323,13324],{"class":4512}," colors",[3925,13326,3595],{"class":4597},[3925,13328,13329],{"class":4512},"background",[3925,13331,5667],{"class":4597},[3925,13333,13334,13336,13338,13340,13342,13344,13346],{"class":3927,"line":4082},[3925,13335,7262],{"class":4512},[3925,13337,4509],{"class":4597},[3925,13339,7267],{"class":4512},[3925,13341,13324],{"class":4512},[3925,13343,3595],{"class":4597},[3925,13345,13329],{"class":4512},[3925,13347,5667],{"class":4597},[3925,13349,13350,13352,13354,13356,13359],{"class":3927,"line":4088},[3925,13351,7277],{"class":4512},[3925,13353,13324],{"class":4512},[3925,13355,3595],{"class":4597},[3925,13357,13358],{"class":4512},"primary",[3925,13360,5051],{"class":4597},[3925,13362,13363,13365,13367,13369,13371,13373,13375,13377,13379,13381],{"class":3927,"line":4093},[3925,13364,7287],{"class":4512},[3925,13366,4509],{"class":4597},[3925,13368,7292],{"class":4512},[3925,13370,13324],{"class":4512},[3925,13372,3595],{"class":4597},[3925,13374,4355],{"class":4512},[3925,13376,4191],{"class":4597},[3925,13378,7300],{"class":4512},[3925,13380,7303],{"class":4521},[3925,13382,5667],{"class":4597},[3925,13384,13385,13388,13390],{"class":3927,"line":4098},[3925,13386,13387],{"class":4512},"          headerShadowVisible:",[3925,13389,4604],{"class":4540},[3925,13391,5051],{"class":4597},[3925,13393,13394,13396],{"class":3927,"line":6720},[3925,13395,7323],{"class":4597},[3925,13397,4016],{"class":4540},[3925,13399,13400],{"class":3927,"line":6738},[3925,13401,7330],{"class":4561},[3925,13403,13404,13406,13408,13410,13412,13414,13416,13418,13420,13422,13424,13426,13428,13430],{"class":3927,"line":6787},[3925,13405,7335],{"class":4561},[3925,13407,4576],{"class":4565},[3925,13409,4580],{"class":4579},[3925,13411,4583],{"class":4508},[3925,13413,7344],{"class":4521},[3925,13415,4589],{"class":4579},[3925,13417,4583],{"class":4508},[3925,13419,4594],{"class":4540},[3925,13421,4598],{"class":4597},[3925,13423,4601],{"class":4512},[3925,13425,4604],{"class":4540},[3925,13427,4607],{"class":4597},[3925,13429,4610],{"class":4540},[3925,13431,4613],{"class":4561},[3925,13433,13434,13436],{"class":3927,"line":6792},[3925,13435,7335],{"class":4561},[3925,13437,4620],{"class":4565},[3925,13439,13440,13442,13444],{"class":3927,"line":6797},[3925,13441,7373],{"class":4579},[3925,13443,4583],{"class":4508},[3925,13445,5028],{"class":4521},[3925,13447,13448,13450,13452,13454],{"class":3927,"line":6827},[3925,13449,7383],{"class":4579},[3925,13451,4583],{"class":4508},[3925,13453,4594],{"class":4540},[3925,13455,5040],{"class":4597},[3925,13457,13458,13461,13464],{"class":3927,"line":6862},[3925,13459,13460],{"class":4512},"            headerShown:",[3925,13462,13463],{"class":4540}," true",[3925,13465,5051],{"class":4597},[3925,13467,13468,13470,13472],{"class":3927,"line":6867},[3925,13469,7403],{"class":4512},[3925,13471,5059],{"class":4521},[3925,13473,5051],{"class":4597},[3925,13475,13476,13478,13480],{"class":3927,"line":6872},[3925,13477,7394],{"class":4512},[3925,13479,5048],{"class":4521},[3925,13481,5051],{"class":4597},[3925,13483,13484,13486,13488],{"class":3927,"line":6906},[3925,13485,7413],{"class":4512},[3925,13487,5069],{"class":4521},[3925,13489,5051],{"class":4597},[3925,13491,13492,13494],{"class":3927,"line":6921},[3925,13493,7422],{"class":4597},[3925,13495,4016],{"class":4540},[3925,13497,13498],{"class":3927,"line":6941},[3925,13499,7429],{"class":4561},[3925,13501,13502,13504,13506],{"class":3927,"line":6962},[3925,13503,7434],{"class":4561},[3925,13505,3523],{"class":4565},[3925,13507,4568],{"class":4561},[3925,13509,13510],{"class":3927,"line":6977},[3925,13511,7443],{"class":4561},[3925,13513,13514],{"class":3927,"line":6990},[3925,13515,4678],{"class":4508},[3925,13517,13518],{"class":3927,"line":6996},[3925,13519,4016],{"class":4508},[3925,13521,13522],{"class":3927,"line":7014},[3925,13523,3950],{"emptyLinePlaceholder":3949},[3925,13525,13526,13528,13530,13532,13534],{"class":3927,"line":7023},[3925,13527,4534],{"class":4504},[3925,13529,4537],{"class":4504},[3925,13531,4541],{"class":4540},[3925,13533,7210],{"class":4544},[3925,13535,4548],{"class":4508},[3925,13537,13538,13540],{"class":3927,"line":7032},[3925,13539,4553],{"class":4504},[3925,13541,4556],{"class":4508},[3925,13543,13544,13546,13548],{"class":3927,"line":7037},[3925,13545,4562],{"class":4561},[3925,13547,5333],{"class":4565},[3925,13549,4568],{"class":4561},[3925,13551,13552,13554,13556],{"class":3927,"line":7042},[3925,13553,4573],{"class":4561},[3925,13555,5242],{"class":4565},[3925,13557,4568],{"class":4561},[3925,13559,13560,13562,13565],{"class":3927,"line":7070},[3925,13561,7335],{"class":4561},[3925,13563,13564],{"class":4565},"RootNavigator",[3925,13566,4613],{"class":4561},[3925,13568,13569,13571,13573],{"class":3927,"line":7086},[3925,13570,7434],{"class":4561},[3925,13572,5242],{"class":4565},[3925,13574,4568],{"class":4561},[3925,13576,13577,13579,13581],{"class":3927,"line":7097},[3925,13578,4669],{"class":4561},[3925,13580,5333],{"class":4565},[3925,13582,4568],{"class":4561},[3925,13584,13585],{"class":3927,"line":7114},[3925,13586,4678],{"class":4508},[3925,13588,13589],{"class":3927,"line":7119},[3925,13590,4016],{"class":4508},[3916,13592,13594],{"className":4489,"code":13593,"filename":4363,"language":4491,"meta":3921,"style":3921},"import { Tabs } from 'expo-router';\nimport { Ionicons } from '@expo\u002Fvector-icons';\n\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\n\n\u002F**\n * Нижня панель вкладок.\n * «Поїздки» — вкладений Stack (список + деталі), не один index-файл.\n *\u002F\nexport default function TabsLayout() {\n  const { colors } = useTheme();\n\n  return (\n    \u003CTabs\n      screenOptions={{\n        headerShown: false,\n        tabBarActiveTintColor: colors.primary,\n        tabBarInactiveTintColor: colors.textSecondary,\n        tabBarStyle: {\n          backgroundColor: colors.background,\n          borderTopColor: colors.border,\n        },\n        tabBarLabelStyle: {\n          fontSize: 12,\n          fontWeight: '600',\n        },\n      }}\n    >\n      \u003CTabs.Screen\n        name=\"trips\"\n        options={{\n          title: 'Поїздки',\n          tabBarIcon: ({ color, size }) => (\n            \u003CIonicons name=\"map-outline\" size={size} color={color} \u002F>\n          ),\n        }}\n      \u002F>\n      \u003CTabs.Screen\n        name=\"places\"\n        options={{\n          title: 'Місця',\n          tabBarIcon: ({ color, size }) => (\n            \u003CIonicons name=\"location-outline\" size={size} color={color} \u002F>\n          ),\n        }}\n      \u002F>\n      \u003CTabs.Screen\n        name=\"about\"\n        options={{\n          title: 'Ще',\n          tabBarIcon: ({ color, size }) => (\n            \u003CIonicons\n              name=\"ellipsis-horizontal-circle-outline\"\n              size={size}\n              color={color}\n            \u002F>\n          ),\n        }}\n      \u002F>\n    \u003C\u002FTabs>\n  );\n}\n",[3521,13595,13596,13612,13628,13632,13648,13652,13656,13661,13666,13670,13682,13696,13700,13706,13712,13722,13730,13742,13755,13761,13773,13786,13790,13796,13805,13814,13818,13824,13828,13834,13843,13853,13862,13882,13917,13921,13927,13931,13937,13946,13956,13965,13985,14020,14024,14030,14034,14040,14048,14058,14067,14087,14093,14102,14114,14126,14130,14134,14140,14144,14152,14156],{"__ignoreMap":3921},[3925,13597,13598,13600,13602,13604,13606,13608,13610],{"class":3927,"line":3928},[3925,13599,4505],{"class":4504},[3925,13601,4509],{"class":4508},[3925,13603,3808],{"class":4512},[3925,13605,4515],{"class":4508},[3925,13607,4518],{"class":4504},[3925,13609,4522],{"class":4521},[3925,13611,4525],{"class":4508},[3925,13613,13614,13616,13618,13620,13622,13624,13626],{"class":3927,"line":3934},[3925,13615,4505],{"class":4504},[3925,13617,4509],{"class":4508},[3925,13619,7490],{"class":4512},[3925,13621,4515],{"class":4508},[3925,13623,4518],{"class":4504},[3925,13625,7497],{"class":4521},[3925,13627,4525],{"class":4508},[3925,13629,13630],{"class":3927,"line":3940},[3925,13631,3950],{"emptyLinePlaceholder":3949},[3925,13633,13634,13636,13638,13640,13642,13644,13646],{"class":3927,"line":3946},[3925,13635,4505],{"class":4504},[3925,13637,4509],{"class":4508},[3925,13639,13148],{"class":4512},[3925,13641,4515],{"class":4508},[3925,13643,4518],{"class":4504},[3925,13645,13155],{"class":4521},[3925,13647,4525],{"class":4508},[3925,13649,13650],{"class":3927,"line":3953},[3925,13651,3950],{"emptyLinePlaceholder":3949},[3925,13653,13654],{"class":3927,"line":3959},[3925,13655,13166],{"class":4498},[3925,13657,13658],{"class":3927,"line":3965},[3925,13659,13660],{"class":4498}," * Нижня панель вкладок.\n",[3925,13662,13663],{"class":3927,"line":3971},[3925,13664,13665],{"class":4498}," * «Поїздки» — вкладений Stack (список + деталі), не один index-файл.\n",[3925,13667,13668],{"class":3927,"line":3977},[3925,13669,13196],{"class":4498},[3925,13671,13672,13674,13676,13678,13680],{"class":3927,"line":3983},[3925,13673,4534],{"class":4504},[3925,13675,4537],{"class":4504},[3925,13677,4541],{"class":4540},[3925,13679,7514],{"class":4544},[3925,13681,4548],{"class":4508},[3925,13683,13684,13686,13688,13690,13692,13694],{"class":3927,"line":3989},[3925,13685,6909],{"class":4540},[3925,13687,4509],{"class":4508},[3925,13689,13240],{"class":5194},[3925,13691,5937],{"class":4508},[3925,13693,13148],{"class":4544},[3925,13695,7020],{"class":4508},[3925,13697,13698],{"class":3927,"line":3995},[3925,13699,3950],{"emptyLinePlaceholder":3949},[3925,13701,13702,13704],{"class":3927,"line":4001},[3925,13703,4553],{"class":4504},[3925,13705,4556],{"class":4508},[3925,13707,13708,13710],{"class":3927,"line":4007},[3925,13709,4562],{"class":4561},[3925,13711,7529],{"class":4565},[3925,13713,13714,13716,13718,13720],{"class":3927,"line":4013},[3925,13715,7534],{"class":4579},[3925,13717,4583],{"class":4508},[3925,13719,4594],{"class":4540},[3925,13721,5040],{"class":4597},[3925,13723,13724,13726,13728],{"class":3927,"line":4019},[3925,13725,7545],{"class":4512},[3925,13727,4604],{"class":4540},[3925,13729,5051],{"class":4597},[3925,13731,13732,13734,13736,13738,13740],{"class":3927,"line":4024},[3925,13733,7554],{"class":4512},[3925,13735,13324],{"class":4512},[3925,13737,3595],{"class":4597},[3925,13739,13358],{"class":4512},[3925,13741,5051],{"class":4597},[3925,13743,13744,13746,13748,13750,13753],{"class":3927,"line":4030},[3925,13745,7563],{"class":4512},[3925,13747,13324],{"class":4512},[3925,13749,3595],{"class":4597},[3925,13751,13752],{"class":4512},"textSecondary",[3925,13754,5051],{"class":4597},[3925,13756,13757,13759],{"class":3927,"line":4036},[3925,13758,7573],{"class":4512},[3925,13760,5617],{"class":4597},[3925,13762,13763,13765,13767,13769,13771],{"class":3927,"line":4041},[3925,13764,7580],{"class":4512},[3925,13766,13324],{"class":4512},[3925,13768,3595],{"class":4597},[3925,13770,13329],{"class":4512},[3925,13772,5051],{"class":4597},[3925,13774,13775,13777,13779,13781,13784],{"class":3927,"line":4047},[3925,13776,7589],{"class":4512},[3925,13778,13324],{"class":4512},[3925,13780,3595],{"class":4597},[3925,13782,13783],{"class":4512},"border",[3925,13785,5051],{"class":4597},[3925,13787,13788],{"class":3927,"line":4053},[3925,13789,7599],{"class":4597},[3925,13791,13792,13794],{"class":3927,"line":4059},[3925,13793,7604],{"class":4512},[3925,13795,5617],{"class":4597},[3925,13797,13798,13801,13803],{"class":3927,"line":4065},[3925,13799,13800],{"class":4512},"          fontSize:",[3925,13802,7612],{"class":5990},[3925,13804,5051],{"class":4597},[3925,13806,13807,13810,13812],{"class":3927,"line":4070},[3925,13808,13809],{"class":4512},"          fontWeight:",[3925,13811,7303],{"class":4521},[3925,13813,5051],{"class":4597},[3925,13815,13816],{"class":3927,"line":4076},[3925,13817,7599],{"class":4597},[3925,13819,13820,13822],{"class":3927,"line":4082},[3925,13821,7625],{"class":4597},[3925,13823,4016],{"class":4540},[3925,13825,13826],{"class":3927,"line":4088},[3925,13827,7632],{"class":4561},[3925,13829,13830,13832],{"class":3927,"line":4093},[3925,13831,4573],{"class":4561},[3925,13833,7639],{"class":4565},[3925,13835,13836,13838,13840],{"class":3927,"line":4098},[3925,13837,4625],{"class":4579},[3925,13839,4583],{"class":4508},[3925,13841,13842],{"class":4521},"\"trips\"\n",[3925,13844,13845,13847,13849,13851],{"class":3927,"line":6720},[3925,13846,4635],{"class":4579},[3925,13848,4583],{"class":4508},[3925,13850,4594],{"class":4540},[3925,13852,5040],{"class":4597},[3925,13854,13855,13857,13860],{"class":3927,"line":6738},[3925,13856,7663],{"class":4512},[3925,13858,13859],{"class":4521}," 'Поїздки'",[3925,13861,5051],{"class":4597},[3925,13863,13864,13866,13868,13870,13872,13874,13876,13878,13880],{"class":3927,"line":6787},[3925,13865,7673],{"class":4544},[3925,13867,4974],{"class":4512},[3925,13869,7678],{"class":4597},[3925,13871,7681],{"class":4512},[3925,13873,4191],{"class":4597},[3925,13875,7686],{"class":4512},[3925,13877,5611],{"class":4597},[3925,13879,5614],{"class":4540},[3925,13881,4556],{"class":4597},[3925,13883,13884,13886,13888,13890,13892,13895,13897,13899,13901,13903,13905,13907,13909,13911,13913,13915],{"class":3927,"line":6792},[3925,13885,7697],{"class":4561},[3925,13887,7490],{"class":4565},[3925,13889,4580],{"class":4579},[3925,13891,4583],{"class":4508},[3925,13893,13894],{"class":4521},"\"map-outline\"",[3925,13896,7709],{"class":4579},[3925,13898,4583],{"class":4508},[3925,13900,4594],{"class":4540},[3925,13902,7686],{"class":4512},[3925,13904,4610],{"class":4540},[3925,13906,7720],{"class":4579},[3925,13908,4583],{"class":4508},[3925,13910,4594],{"class":4540},[3925,13912,7681],{"class":4512},[3925,13914,4610],{"class":4540},[3925,13916,4613],{"class":4561},[3925,13918,13919],{"class":3927,"line":6797},[3925,13920,7735],{"class":4597},[3925,13922,13923,13925],{"class":3927,"line":6827},[3925,13924,7323],{"class":4597},[3925,13926,4016],{"class":4540},[3925,13928,13929],{"class":3927,"line":6862},[3925,13930,4664],{"class":4561},[3925,13932,13933,13935],{"class":3927,"line":6867},[3925,13934,4573],{"class":4561},[3925,13936,7639],{"class":4565},[3925,13938,13939,13941,13943],{"class":3927,"line":6872},[3925,13940,4625],{"class":4579},[3925,13942,4583],{"class":4508},[3925,13944,13945],{"class":4521},"\"places\"\n",[3925,13947,13948,13950,13952,13954],{"class":3927,"line":6906},[3925,13949,4635],{"class":4579},[3925,13951,4583],{"class":4508},[3925,13953,4594],{"class":4540},[3925,13955,5040],{"class":4597},[3925,13957,13958,13960,13963],{"class":3927,"line":6921},[3925,13959,7663],{"class":4512},[3925,13961,13962],{"class":4521}," 'Місця'",[3925,13964,5051],{"class":4597},[3925,13966,13967,13969,13971,13973,13975,13977,13979,13981,13983],{"class":3927,"line":6941},[3925,13968,7673],{"class":4544},[3925,13970,4974],{"class":4512},[3925,13972,7678],{"class":4597},[3925,13974,7681],{"class":4512},[3925,13976,4191],{"class":4597},[3925,13978,7686],{"class":4512},[3925,13980,5611],{"class":4597},[3925,13982,5614],{"class":4540},[3925,13984,4556],{"class":4597},[3925,13986,13987,13989,13991,13993,13995,13998,14000,14002,14004,14006,14008,14010,14012,14014,14016,14018],{"class":3927,"line":6962},[3925,13988,7697],{"class":4561},[3925,13990,7490],{"class":4565},[3925,13992,4580],{"class":4579},[3925,13994,4583],{"class":4508},[3925,13996,13997],{"class":4521},"\"location-outline\"",[3925,13999,7709],{"class":4579},[3925,14001,4583],{"class":4508},[3925,14003,4594],{"class":4540},[3925,14005,7686],{"class":4512},[3925,14007,4610],{"class":4540},[3925,14009,7720],{"class":4579},[3925,14011,4583],{"class":4508},[3925,14013,4594],{"class":4540},[3925,14015,7681],{"class":4512},[3925,14017,4610],{"class":4540},[3925,14019,4613],{"class":4561},[3925,14021,14022],{"class":3927,"line":6977},[3925,14023,7735],{"class":4597},[3925,14025,14026,14028],{"class":3927,"line":6990},[3925,14027,7323],{"class":4597},[3925,14029,4016],{"class":4540},[3925,14031,14032],{"class":3927,"line":6996},[3925,14033,4664],{"class":4561},[3925,14035,14036,14038],{"class":3927,"line":7014},[3925,14037,4573],{"class":4561},[3925,14039,7639],{"class":4565},[3925,14041,14042,14044,14046],{"class":3927,"line":7023},[3925,14043,4625],{"class":4579},[3925,14045,4583],{"class":4508},[3925,14047,7760],{"class":4521},[3925,14049,14050,14052,14054,14056],{"class":3927,"line":7032},[3925,14051,4635],{"class":4579},[3925,14053,4583],{"class":4508},[3925,14055,4594],{"class":4540},[3925,14057,5040],{"class":4597},[3925,14059,14060,14062,14065],{"class":3927,"line":7037},[3925,14061,7663],{"class":4512},[3925,14063,14064],{"class":4521}," 'Ще'",[3925,14066,5051],{"class":4597},[3925,14068,14069,14071,14073,14075,14077,14079,14081,14083,14085],{"class":3927,"line":7042},[3925,14070,7673],{"class":4544},[3925,14072,4974],{"class":4512},[3925,14074,7678],{"class":4597},[3925,14076,7681],{"class":4512},[3925,14078,4191],{"class":4597},[3925,14080,7686],{"class":4512},[3925,14082,5611],{"class":4597},[3925,14084,5614],{"class":4540},[3925,14086,4556],{"class":4597},[3925,14088,14089,14091],{"class":3927,"line":7070},[3925,14090,7697],{"class":4561},[3925,14092,7806],{"class":4565},[3925,14094,14095,14097,14099],{"class":3927,"line":7086},[3925,14096,7811],{"class":4579},[3925,14098,4583],{"class":4508},[3925,14100,14101],{"class":4521},"\"ellipsis-horizontal-circle-outline\"\n",[3925,14103,14104,14106,14108,14110,14112],{"class":3927,"line":7097},[3925,14105,7821],{"class":4579},[3925,14107,4583],{"class":4508},[3925,14109,4594],{"class":4540},[3925,14111,7686],{"class":4512},[3925,14113,4016],{"class":4540},[3925,14115,14116,14118,14120,14122,14124],{"class":3927,"line":7114},[3925,14117,7834],{"class":4579},[3925,14119,4583],{"class":4508},[3925,14121,4594],{"class":4540},[3925,14123,7681],{"class":4512},[3925,14125,4016],{"class":4540},[3925,14127,14128],{"class":3927,"line":7119},[3925,14129,7847],{"class":4561},[3925,14131,14132],{"class":3927,"line":9008},[3925,14133,7735],{"class":4597},[3925,14135,14136,14138],{"class":3927,"line":9017},[3925,14137,7323],{"class":4597},[3925,14139,4016],{"class":4540},[3925,14141,14142],{"class":3927,"line":9022},[3925,14143,4664],{"class":4561},[3925,14145,14146,14148,14150],{"class":3927,"line":9027},[3925,14147,4669],{"class":4561},[3925,14149,3808],{"class":4565},[3925,14151,4568],{"class":4561},[3925,14153,14154],{"class":3927,"line":9032},[3925,14155,4678],{"class":4508},[3925,14157,14158],{"class":3927,"line":9053},[3925,14159,4016],{"class":4508},[3916,14161,14163],{"className":4489,"code":14162,"filename":4790,"language":4491,"meta":3921,"style":3921},"import { Stack } from 'expo-router';\n\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\n\n\u002F**\n * Вкладений Stack усередині вкладки «Поїздки».\n * Список (index) → деталі ([id]); tab bar лишається видимим.\n *\u002F\nexport default function TripsStackLayout() {\n  const { colors } = useTheme();\n\n  return (\n    \u003CStack\n      screenOptions={{\n        headerStyle: { backgroundColor: colors.background },\n        headerTintColor: colors.primary,\n        headerTitleStyle: { color: colors.text, fontWeight: '600' },\n        headerShadowVisible: false,\n        contentStyle: { backgroundColor: colors.background },\n      }}\n    >\n      \u003CStack.Screen name=\"index\" options={{ headerShown: false }} \u002F>\n      \u003CStack.Screen\n        name=\"[id]\"\n        options={{\n          title: 'Поїздка',\n          headerBackTitle: 'Список',\n        }}\n      \u002F>\n    \u003C\u002FStack>\n  );\n}\n",[3521,14164,14165,14181,14185,14201,14205,14209,14214,14219,14223,14235,14249,14253,14259,14265,14275,14291,14303,14325,14334,14351,14357,14361,14391,14397,14405,14415,14423,14432,14438,14442,14450,14454],{"__ignoreMap":3921},[3925,14166,14167,14169,14171,14173,14175,14177,14179],{"class":3927,"line":3928},[3925,14168,4505],{"class":4504},[3925,14170,4509],{"class":4508},[3925,14172,3523],{"class":4512},[3925,14174,4515],{"class":4508},[3925,14176,4518],{"class":4504},[3925,14178,4522],{"class":4521},[3925,14180,4525],{"class":4508},[3925,14182,14183],{"class":3927,"line":3934},[3925,14184,3950],{"emptyLinePlaceholder":3949},[3925,14186,14187,14189,14191,14193,14195,14197,14199],{"class":3927,"line":3940},[3925,14188,4505],{"class":4504},[3925,14190,4509],{"class":4508},[3925,14192,13148],{"class":4512},[3925,14194,4515],{"class":4508},[3925,14196,4518],{"class":4504},[3925,14198,13155],{"class":4521},[3925,14200,4525],{"class":4508},[3925,14202,14203],{"class":3927,"line":3946},[3925,14204,3950],{"emptyLinePlaceholder":3949},[3925,14206,14207],{"class":3927,"line":3953},[3925,14208,13166],{"class":4498},[3925,14210,14211],{"class":3927,"line":3959},[3925,14212,14213],{"class":4498}," * Вкладений Stack усередині вкладки «Поїздки».\n",[3925,14215,14216],{"class":3927,"line":3965},[3925,14217,14218],{"class":4498}," * Список (index) → деталі ([id]); tab bar лишається видимим.\n",[3925,14220,14221],{"class":3927,"line":3971},[3925,14222,13196],{"class":4498},[3925,14224,14225,14227,14229,14231,14233],{"class":3927,"line":3977},[3925,14226,4534],{"class":4504},[3925,14228,4537],{"class":4504},[3925,14230,4541],{"class":4540},[3925,14232,4545],{"class":4544},[3925,14234,4548],{"class":4508},[3925,14236,14237,14239,14241,14243,14245,14247],{"class":3927,"line":3983},[3925,14238,6909],{"class":4540},[3925,14240,4509],{"class":4508},[3925,14242,13240],{"class":5194},[3925,14244,5937],{"class":4508},[3925,14246,13148],{"class":4544},[3925,14248,7020],{"class":4508},[3925,14250,14251],{"class":3927,"line":3989},[3925,14252,3950],{"emptyLinePlaceholder":3949},[3925,14254,14255,14257],{"class":3927,"line":3995},[3925,14256,4553],{"class":4504},[3925,14258,4556],{"class":4508},[3925,14260,14261,14263],{"class":3927,"line":4001},[3925,14262,4562],{"class":4561},[3925,14264,7246],{"class":4565},[3925,14266,14267,14269,14271,14273],{"class":3927,"line":4007},[3925,14268,7534],{"class":4579},[3925,14270,4583],{"class":4508},[3925,14272,4594],{"class":4540},[3925,14274,5040],{"class":4597},[3925,14276,14277,14279,14281,14283,14285,14287,14289],{"class":3927,"line":4013},[3925,14278,7952],{"class":4512},[3925,14280,4509],{"class":4597},[3925,14282,7267],{"class":4512},[3925,14284,13324],{"class":4512},[3925,14286,3595],{"class":4597},[3925,14288,13329],{"class":4512},[3925,14290,5667],{"class":4597},[3925,14292,14293,14295,14297,14299,14301],{"class":3927,"line":4019},[3925,14294,7965],{"class":4512},[3925,14296,13324],{"class":4512},[3925,14298,3595],{"class":4597},[3925,14300,13358],{"class":4512},[3925,14302,5051],{"class":4597},[3925,14304,14305,14307,14309,14311,14313,14315,14317,14319,14321,14323],{"class":3927,"line":4024},[3925,14306,7974],{"class":4512},[3925,14308,4509],{"class":4597},[3925,14310,7292],{"class":4512},[3925,14312,13324],{"class":4512},[3925,14314,3595],{"class":4597},[3925,14316,4355],{"class":4512},[3925,14318,4191],{"class":4597},[3925,14320,7300],{"class":4512},[3925,14322,7303],{"class":4521},[3925,14324,5667],{"class":4597},[3925,14326,14327,14330,14332],{"class":3927,"line":4030},[3925,14328,14329],{"class":4512},"        headerShadowVisible:",[3925,14331,4604],{"class":4540},[3925,14333,5051],{"class":4597},[3925,14335,14336,14339,14341,14343,14345,14347,14349],{"class":3927,"line":4036},[3925,14337,14338],{"class":4512},"        contentStyle:",[3925,14340,4509],{"class":4597},[3925,14342,7267],{"class":4512},[3925,14344,13324],{"class":4512},[3925,14346,3595],{"class":4597},[3925,14348,13329],{"class":4512},[3925,14350,5667],{"class":4597},[3925,14352,14353,14355],{"class":3927,"line":4041},[3925,14354,7625],{"class":4597},[3925,14356,4016],{"class":4540},[3925,14358,14359],{"class":3927,"line":4047},[3925,14360,7632],{"class":4561},[3925,14362,14363,14365,14367,14369,14371,14373,14375,14377,14379,14381,14383,14385,14387,14389],{"class":3927,"line":4053},[3925,14364,4573],{"class":4561},[3925,14366,4576],{"class":4565},[3925,14368,4580],{"class":4579},[3925,14370,4583],{"class":4508},[3925,14372,4586],{"class":4521},[3925,14374,4589],{"class":4579},[3925,14376,4583],{"class":4508},[3925,14378,4594],{"class":4540},[3925,14380,4598],{"class":4597},[3925,14382,4601],{"class":4512},[3925,14384,4604],{"class":4540},[3925,14386,4607],{"class":4597},[3925,14388,4610],{"class":4540},[3925,14390,4613],{"class":4561},[3925,14392,14393,14395],{"class":3927,"line":4059},[3925,14394,4573],{"class":4561},[3925,14396,4620],{"class":4565},[3925,14398,14399,14401,14403],{"class":3927,"line":4065},[3925,14400,4625],{"class":4579},[3925,14402,4583],{"class":4508},[3925,14404,4630],{"class":4521},[3925,14406,14407,14409,14411,14413],{"class":3927,"line":4070},[3925,14408,4635],{"class":4579},[3925,14410,4583],{"class":4508},[3925,14412,4594],{"class":4540},[3925,14414,5040],{"class":4597},[3925,14416,14417,14419,14421],{"class":3927,"line":4076},[3925,14418,7663],{"class":4512},[3925,14420,4647],{"class":4521},[3925,14422,5051],{"class":4597},[3925,14424,14425,14428,14430],{"class":3927,"line":4082},[3925,14426,14427],{"class":4512},"          headerBackTitle:",[3925,14429,4655],{"class":4521},[3925,14431,5051],{"class":4597},[3925,14433,14434,14436],{"class":3927,"line":4088},[3925,14435,7323],{"class":4597},[3925,14437,4016],{"class":4540},[3925,14439,14440],{"class":3927,"line":4093},[3925,14441,4664],{"class":4561},[3925,14443,14444,14446,14448],{"class":3927,"line":4098},[3925,14445,4669],{"class":4561},[3925,14447,3523],{"class":4565},[3925,14449,4568],{"class":4561},[3925,14451,14452],{"class":3927,"line":6720},[3925,14453,4678],{"class":4508},[3925,14455,14456],{"class":3927,"line":6738},[3925,14457,4016],{"class":4508},[3916,14459,14462],{"className":4489,"code":14460,"filename":14461,"language":4491,"meta":3921,"style":3921},"import { useCallback, useState } from 'react';\nimport {\n  FlatList,\n  Pressable,\n  RefreshControl,\n  StyleSheet,\n  View,\n} from 'react-native';\nimport { FlashList } from '@shopify\u002Fflash-list';\nimport { useRouter } from 'expo-router';\n\nimport {\n  mockPlaces,\n  PlaceChip,\n  TripCard,\n  useTrips,\n  type Place,\n  type Trip,\n} from '@\u002Ffeatures\u002Ftrips';\nimport { useTheme, type ThemePreference } from '@\u002Fshared\u002Ftheme';\nimport { AppText, Button, Screen } from '@\u002Fshared\u002Fui';\n\nconst PREFS: { id: ThemePreference; label: string }[] = [\n  { id: 'system', label: 'Система' },\n  { id: 'light', label: 'Світла' },\n  { id: 'dark', label: 'Темна' },\n];\n\nexport default function HomeScreen() {\n  const router = useRouter();\n  const { trips, resetToMock } = useTrips();\n  const { colors, spacing, preference, setPreference, scheme } = useTheme();\n  const [places] = useState\u003CPlace[]>(mockPlaces);\n  const [refreshing, setRefreshing] = useState(false);\n\n  const handleOpenTrip = useCallback(\n    (trip: Trip) => {\n      router.push(`\u002Ftrips\u002F${trip.id}`);\n    },\n    [router],\n  );\n\n  const handleOpenPlace = useCallback(\n    (place: Place) => {\n      \u002F\u002F Місце належить поїздці — відкриваємо її деталі у вкладеному Stack.\n      router.push(`\u002Ftrips\u002F${place.tripId}`);\n    },\n    [router],\n  );\n\n  const onRefresh = useCallback(() => {\n    setRefreshing(true);\n    \u002F\u002F Mock pull-to-refresh: повертаємо seed mock (локально створені зникають).\n    setTimeout(() => {\n      resetToMock();\n      setRefreshing(false);\n    }, 900);\n  }, [resetToMock]);\n\n  const renderTrip = useCallback(\n    ({ item }: { item: Trip }) => (\n      \u003CTripCard trip={item} onPress={handleOpenTrip} \u002F>\n    ),\n    [handleOpenTrip],\n  );\n\n  const keyExtractor = useCallback((item: Trip) => item.id, []);\n\n  const listHeader = (\n    \u003CView style={{ gap: spacing.md, marginBottom: spacing.md }}>\n      {places.length > 0 ? (\n        \u003CView style={{ gap: spacing.sm }}>\n          \u003CAppText style={{ fontWeight: '600' }}>Останні місця\u003C\u002FAppText>\n          \u003CFlatList\n            horizontal\n            data={places}\n            keyExtractor={(item) => item.id}\n            renderItem={({ item }) => (\n              \u003CPlaceChip place={item} onPress={handleOpenPlace} \u002F>\n            )}\n            showsHorizontalScrollIndicator={false}\n            ItemSeparatorComponent={() => \u003CView style={{ width: spacing.sm }} \u002F>}\n            contentContainerStyle={{ paddingVertical: 2 }}\n          \u002F>\n        \u003C\u002FView>\n      ) : null}\n\n      \u003CAppText style={{ fontWeight: '600' }}>Ваші поїздки\u003C\u002FAppText>\n    \u003C\u002FView>\n  );\n\n  const listEmpty = (\n    \u003CView\n      style={[\n        styles.empty,\n        {\n          paddingHorizontal: spacing.sm,\n          paddingVertical: spacing.xl,\n          gap: spacing.sm,\n        },\n      ]}\n    >\n      \u003CAppText variant=\"subtitle\" style={styles.emptyTitle}>\n        Поки немає поїздок\n      \u003C\u002FAppText>\n      \u003CAppText\n        variant=\"caption\"\n        color={colors.textSecondary}\n        style={styles.emptyDesc}\n      >\n        Потягніть список униз, щоб «оновити», або натисніть «Нова поїздка».\n      \u003C\u002FAppText>\n    \u003C\u002FView>\n  );\n\n  return (\n    \u003CScreen style={styles.screen}>\n      \u003CView\n        style={[\n          styles.header,\n          {\n            paddingHorizontal: spacing.md,\n            paddingTop: spacing.sm,\n            paddingBottom: spacing.md,\n            gap: spacing.xs,\n            borderBottomColor: colors.border,\n          },\n        ]}\n      >\n        \u003CAppText variant=\"title\">Мандрівник\u003C\u002FAppText>\n        \u003CAppText variant=\"caption\" style={{ marginTop: spacing.xs }}>\n          Щоденник подорожей · тема: {scheme === 'dark' ? 'темна' : 'світла'}\n        \u003C\u002FAppText>\n        \u003CAppText\n          variant=\"caption\"\n          style={{\n            marginTop: spacing.xs,\n            color: colors.primary,\n            fontWeight: '600',\n          }}\n        >\n          {trips.length > 0\n            ? `${trips.length} поїздок · ${places.length} місць`\n            : 'Список порожній'}\n        \u003C\u002FAppText>\n\n        \u003CView style={[styles.themeRow, { gap: spacing.sm, marginTop: spacing.sm }]}>\n          {PREFS.map((p) => {\n            const active = preference === p.id;\n            return (\n              \u003CPressable\n                key={p.id}\n                onPress={() => setPreference(p.id)}\n                style={[\n                  styles.themeChip,\n                  {\n                    backgroundColor: active ? colors.primary : colors.surface,\n                    borderColor: colors.border,\n                  },\n                ]}\n                accessibilityRole=\"button\"\n                accessibilityState={{ selected: active }}\n                accessibilityLabel={`Тема: ${p.label}`}\n              >\n                \u003CAppText\n                  variant=\"caption\"\n                  color={active ? colors.onPrimary : colors.text}\n                  style={styles.themeChipText}\n                >\n                  {p.label}\n                \u003C\u002FAppText>\n              \u003C\u002FPressable>\n            );\n          })}\n        \u003C\u002FView>\n      \u003C\u002FView>\n\n      \u003CView style={styles.listWrap}>\n        \u003CFlashList\n          data={trips}\n          renderItem={renderTrip}\n          keyExtractor={keyExtractor}\n          ListHeaderComponent={listHeader}\n          ListEmptyComponent={listEmpty}\n          contentContainerStyle={{\n            paddingHorizontal: spacing.md,\n            paddingTop: spacing.md,\n            paddingBottom: spacing.md,\n          }}\n          ItemSeparatorComponent={() => \u003CView style={{ height: spacing.md }} \u002F>}\n          refreshControl={\n            \u003CRefreshControl\n              refreshing={refreshing}\n              onRefresh={onRefresh}\n              tintColor={colors.primary}\n              colors={[colors.primary]}\n            \u002F>\n          }\n          showsVerticalScrollIndicator={false}\n        \u002F>\n      \u003C\u002FView>\n\n      \u003CView\n        style={[\n          styles.footer,\n          {\n            paddingHorizontal: spacing.md,\n            paddingTop: spacing.sm,\n            paddingBottom: spacing.md,\n            borderTopColor: colors.border,\n            backgroundColor: colors.background,\n          },\n        ]}\n      >\n        \u003CButton\n          label=\"Нова поїздка\"\n          onPress={() => {\n            router.push('\u002Fcreate-trip');\n          }}\n        \u002F>\n      \u003C\u002FView>\n    \u003C\u002FScreen>\n  );\n}\n\nconst styles = StyleSheet.create({\n  screen: {\n    paddingHorizontal: 0,\n  },\n  header: {\n    borderBottomWidth: 1,\n  },\n  themeRow: {\n    flexDirection: 'row',\n    flexWrap: 'wrap',\n  },\n  themeChip: {\n    paddingHorizontal: 12,\n    paddingVertical: 8,\n    borderRadius: 8,\n    borderWidth: 1,\n  },\n  themeChipText: {\n    fontWeight: '600',\n  },\n  listWrap: {\n    flex: 1,\n  },\n  empty: {\n    alignItems: 'center',\n    justifyContent: 'center',\n  },\n  emptyTitle: {\n    textAlign: 'center',\n  },\n  emptyDesc: {\n    textAlign: 'center',\n  },\n  footer: {\n    borderTopWidth: 1,\n  },\n});\n","app\u002F(tabs)\u002Ftrips\u002Findex.tsx",[3521,14463,14464,14485,14491,14497,14503,14510,14516,14522,14532,14550,14566,14570,14576,14583,14590,14597,14604,14614,14623,14633,14656,14684,14688,14717,14738,14755,14772,14776,14780,14793,14805,14825,14858,14883,14907,14911,14924,14942,14969,14973,14983,14987,14991,15004,15021,15026,15052,15056,15064,15068,15072,15089,15100,15105,15115,15122,15133,15143,15153,15157,15170,15192,15222,15227,15235,15239,15243,15275,15279,15289,15329,15350,15379,15412,15418,15423,15436,15461,15480,15511,15518,15528,15570,15591,15596,15604,15614,15618,15651,15659,15663,15667,15676,15683,15694,15706,15710,15723,15737,15750,15754,15761,15765,15796,15801,15809,15816,15826,15843,15861,15865,15870,15878,15886,15890,15894,15900,15923,15929,15939,15950,15956,15970,15984,15998,16013,16027,16033,16041,16046,16071,16107,16133,16142,16149,16159,16170,16184,16198,16208,16215,16220,16237,16272,16283,16292,16297,16347,16370,16396,16404,16411,16429,16458,16470,16483,16489,16516,16530,16536,16544,16555,16576,16603,16609,16617,16627,16659,16678,16684,16698,16708,16717,16723,16731,16740,16749,16754,16778,16786,16800,16815,16830,16845,16860,16872,16885,16898,16911,16918,16960,16970,16978,16992,17007,17025,17047,17052,17058,17068,17073,17082,17087,17094,17105,17116,17121,17134,17147,17160,17174,17188,17193,17200,17205,17213,17224,17239,17255,17262,17267,17276,17285,17290,17295,17300,17317,17325,17334,17339,17346,17355,17360,17368,17379,17390,17395,17403,17412,17421,17430,17439,17444,17452,17461,17466,17474,17483,17488,17496,17505,17514,17519,17527,17537,17542,17550,17559,17564,17571,17580,17585],{"__ignoreMap":3921},[3925,14465,14466,14468,14470,14473,14475,14477,14479,14481,14483],{"class":3927,"line":3928},[3925,14467,4505],{"class":4504},[3925,14469,4509],{"class":4508},[3925,14471,14472],{"class":4512},"useCallback",[3925,14474,4191],{"class":4508},[3925,14476,5552],{"class":4512},[3925,14478,4515],{"class":4508},[3925,14480,4518],{"class":4504},[3925,14482,8122],{"class":4521},[3925,14484,4525],{"class":4508},[3925,14486,14487,14489],{"class":3927,"line":3934},[3925,14488,4505],{"class":4504},[3925,14490,5617],{"class":4508},[3925,14492,14493,14495],{"class":3927,"line":3940},[3925,14494,8135],{"class":4512},[3925,14496,5051],{"class":4508},[3925,14498,14499,14501],{"class":3927,"line":3946},[3925,14500,8142],{"class":4512},[3925,14502,5051],{"class":4508},[3925,14504,14505,14508],{"class":3927,"line":3953},[3925,14506,14507],{"class":4512},"  RefreshControl",[3925,14509,5051],{"class":4508},[3925,14511,14512,14514],{"class":3927,"line":3959},[3925,14513,8149],{"class":4512},[3925,14515,5051],{"class":4508},[3925,14517,14518,14520],{"class":3927,"line":3965},[3925,14519,8163],{"class":4512},[3925,14521,5051],{"class":4508},[3925,14523,14524,14526,14528,14530],{"class":3927,"line":3971},[3925,14525,8170],{"class":4508},[3925,14527,4518],{"class":4504},[3925,14529,8175],{"class":4521},[3925,14531,4525],{"class":4508},[3925,14533,14534,14536,14538,14541,14543,14545,14548],{"class":3927,"line":3977},[3925,14535,4505],{"class":4504},[3925,14537,4509],{"class":4508},[3925,14539,14540],{"class":4512},"FlashList",[3925,14542,4515],{"class":4508},[3925,14544,4518],{"class":4504},[3925,14546,14547],{"class":4521}," '@shopify\u002Fflash-list'",[3925,14549,4525],{"class":4508},[3925,14551,14552,14554,14556,14558,14560,14562,14564],{"class":3927,"line":3983},[3925,14553,4505],{"class":4504},[3925,14555,4509],{"class":4508},[3925,14557,3539],{"class":4512},[3925,14559,4515],{"class":4508},[3925,14561,4518],{"class":4504},[3925,14563,4522],{"class":4521},[3925,14565,4525],{"class":4508},[3925,14567,14568],{"class":3927,"line":3989},[3925,14569,3950],{"emptyLinePlaceholder":3949},[3925,14571,14572,14574],{"class":3927,"line":3995},[3925,14573,4505],{"class":4504},[3925,14575,5617],{"class":4508},[3925,14577,14578,14581],{"class":3927,"line":4001},[3925,14579,14580],{"class":4512},"  mockPlaces",[3925,14582,5051],{"class":4508},[3925,14584,14585,14588],{"class":3927,"line":4007},[3925,14586,14587],{"class":4512},"  PlaceChip",[3925,14589,5051],{"class":4508},[3925,14591,14592,14595],{"class":3927,"line":4013},[3925,14593,14594],{"class":4512},"  TripCard",[3925,14596,5051],{"class":4508},[3925,14598,14599,14602],{"class":3927,"line":4019},[3925,14600,14601],{"class":4512},"  useTrips",[3925,14603,5051],{"class":4508},[3925,14605,14606,14609,14612],{"class":3927,"line":4024},[3925,14607,14608],{"class":4504},"  type",[3925,14610,14611],{"class":4512}," Place",[3925,14613,5051],{"class":4508},[3925,14615,14616,14618,14621],{"class":3927,"line":4030},[3925,14617,14608],{"class":4504},[3925,14619,14620],{"class":4512}," Trip",[3925,14622,5051],{"class":4508},[3925,14624,14625,14627,14629,14631],{"class":3927,"line":4036},[3925,14626,8170],{"class":4508},[3925,14628,4518],{"class":4504},[3925,14630,13133],{"class":4521},[3925,14632,4525],{"class":4508},[3925,14634,14635,14637,14639,14641,14643,14645,14648,14650,14652,14654],{"class":3927,"line":4041},[3925,14636,4505],{"class":4504},[3925,14638,4509],{"class":4508},[3925,14640,13148],{"class":4512},[3925,14642,4191],{"class":4508},[3925,14644,6491],{"class":4504},[3925,14646,14647],{"class":4512}," ThemePreference",[3925,14649,4515],{"class":4508},[3925,14651,4518],{"class":4504},[3925,14653,13155],{"class":4521},[3925,14655,4525],{"class":4508},[3925,14657,14658,14660,14662,14665,14667,14670,14672,14675,14677,14679,14682],{"class":3927,"line":4047},[3925,14659,4505],{"class":4504},[3925,14661,4509],{"class":4508},[3925,14663,14664],{"class":4512},"AppText",[3925,14666,4191],{"class":4508},[3925,14668,14669],{"class":4512},"Button",[3925,14671,4191],{"class":4508},[3925,14673,14674],{"class":4512},"Screen",[3925,14676,4515],{"class":4508},[3925,14678,4518],{"class":4504},[3925,14680,14681],{"class":4521}," '@\u002Fshared\u002Fui'",[3925,14683,4525],{"class":4508},[3925,14685,14686],{"class":3927,"line":4053},[3925,14687,3950],{"emptyLinePlaceholder":3949},[3925,14689,14690,14692,14695,14698,14700,14702,14705,14708,14710,14712,14714],{"class":3927,"line":4059},[3925,14691,5930],{"class":4540},[3925,14693,14694],{"class":5194}," PREFS",[3925,14696,14697],{"class":4508},": { ",[3925,14699,4716],{"class":4512},[3925,14701,4767],{"class":4508},[3925,14703,14704],{"class":4565},"ThemePreference",[3925,14706,14707],{"class":4508},"; ",[3925,14709,11017],{"class":4512},[3925,14711,4767],{"class":4508},[3925,14713,5949],{"class":4565},[3925,14715,14716],{"class":4508}," }[] = [\n",[3925,14718,14719,14722,14725,14728,14730,14733,14736],{"class":3927,"line":4065},[3925,14720,14721],{"class":4508},"  { ",[3925,14723,14724],{"class":4512},"id:",[3925,14726,14727],{"class":4521}," 'system'",[3925,14729,4191],{"class":4508},[3925,14731,14732],{"class":4512},"label:",[3925,14734,14735],{"class":4521}," 'Система'",[3925,14737,5667],{"class":4508},[3925,14739,14740,14742,14744,14746,14748,14750,14753],{"class":3927,"line":4070},[3925,14741,14721],{"class":4508},[3925,14743,14724],{"class":4512},[3925,14745,13289],{"class":4521},[3925,14747,4191],{"class":4508},[3925,14749,14732],{"class":4512},[3925,14751,14752],{"class":4521}," 'Світла'",[3925,14754,5667],{"class":4508},[3925,14756,14757,14759,14761,14763,14765,14767,14770],{"class":3927,"line":4076},[3925,14758,14721],{"class":4508},[3925,14760,14724],{"class":4512},[3925,14762,13284],{"class":4521},[3925,14764,4191],{"class":4508},[3925,14766,14732],{"class":4512},[3925,14768,14769],{"class":4521}," 'Темна'",[3925,14771,5667],{"class":4508},[3925,14773,14774],{"class":3927,"line":4082},[3925,14775,6641],{"class":4508},[3925,14777,14778],{"class":3927,"line":4088},[3925,14779,3950],{"emptyLinePlaceholder":3949},[3925,14781,14782,14784,14786,14788,14791],{"class":3927,"line":4093},[3925,14783,4534],{"class":4504},[3925,14785,4537],{"class":4504},[3925,14787,4541],{"class":4540},[3925,14789,14790],{"class":4544}," HomeScreen",[3925,14792,4548],{"class":4508},[3925,14794,14795,14797,14799,14801,14803],{"class":3927,"line":4098},[3925,14796,6909],{"class":4540},[3925,14798,8304],{"class":5194},[3925,14800,5967],{"class":4508},[3925,14802,3539],{"class":4544},[3925,14804,7020],{"class":4508},[3925,14806,14807,14809,14811,14813,14815,14818,14820,14823],{"class":3927,"line":6720},[3925,14808,6909],{"class":4540},[3925,14810,4509],{"class":4508},[3925,14812,4741],{"class":5194},[3925,14814,4191],{"class":4508},[3925,14816,14817],{"class":5194},"resetToMock",[3925,14819,5937],{"class":4508},[3925,14821,14822],{"class":4544},"useTrips",[3925,14824,7020],{"class":4508},[3925,14826,14827,14829,14831,14833,14835,14838,14840,14843,14845,14848,14850,14852,14854,14856],{"class":3927,"line":6738},[3925,14828,6909],{"class":4540},[3925,14830,4509],{"class":4508},[3925,14832,13240],{"class":5194},[3925,14834,4191],{"class":4508},[3925,14836,14837],{"class":5194},"spacing",[3925,14839,4191],{"class":4508},[3925,14841,14842],{"class":5194},"preference",[3925,14844,4191],{"class":4508},[3925,14846,14847],{"class":5194},"setPreference",[3925,14849,4191],{"class":4508},[3925,14851,13245],{"class":5194},[3925,14853,5937],{"class":4508},[3925,14855,13148],{"class":4544},[3925,14857,7020],{"class":4508},[3925,14859,14860,14862,14864,14866,14868,14870,14872,14875,14878,14881],{"class":3927,"line":6787},[3925,14861,6909],{"class":4540},[3925,14863,8272],{"class":4508},[3925,14865,4772],{"class":5194},[3925,14867,8282],{"class":4508},[3925,14869,5552],{"class":4544},[3925,14871,5016],{"class":4508},[3925,14873,14874],{"class":4565},"Place",[3925,14876,14877],{"class":4508},"[]>(",[3925,14879,14880],{"class":4512},"mockPlaces",[3925,14882,4724],{"class":4508},[3925,14884,14885,14887,14889,14892,14894,14897,14899,14901,14903,14905],{"class":3927,"line":6792},[3925,14886,6909],{"class":4540},[3925,14888,8272],{"class":4508},[3925,14890,14891],{"class":5194},"refreshing",[3925,14893,4191],{"class":4508},[3925,14895,14896],{"class":5194},"setRefreshing",[3925,14898,8282],{"class":4508},[3925,14900,5552],{"class":4544},[3925,14902,4702],{"class":4508},[3925,14904,10525],{"class":4540},[3925,14906,4724],{"class":4508},[3925,14908,14909],{"class":3927,"line":6797},[3925,14910,3950],{"emptyLinePlaceholder":3949},[3925,14912,14913,14915,14918,14920,14922],{"class":3927,"line":6827},[3925,14914,6909],{"class":4540},[3925,14916,14917],{"class":5194}," handleOpenTrip",[3925,14919,5967],{"class":4508},[3925,14921,14472],{"class":4544},[3925,14923,10621],{"class":4508},[3925,14925,14926,14929,14931,14933,14936,14938,14940],{"class":3927,"line":6862},[3925,14927,14928],{"class":4508},"    (",[3925,14930,4711],{"class":4512},[3925,14932,4767],{"class":4508},[3925,14934,14935],{"class":4565},"Trip",[3925,14937,6701],{"class":4508},[3925,14939,5614],{"class":4540},[3925,14941,5617],{"class":4508},[3925,14943,14944,14947,14949,14951,14953,14955,14957,14959,14961,14963,14965,14967],{"class":3927,"line":6867},[3925,14945,14946],{"class":4512},"      router",[3925,14948,3595],{"class":4508},[3925,14950,3650],{"class":4544},[3925,14952,4702],{"class":4508},[3925,14954,4705],{"class":4521},[3925,14956,4708],{"class":4540},[3925,14958,4711],{"class":4512},[3925,14960,3595],{"class":4597},[3925,14962,4716],{"class":4512},[3925,14964,4610],{"class":4540},[3925,14966,4721],{"class":4521},[3925,14968,4724],{"class":4508},[3925,14970,14971],{"class":3927,"line":6872},[3925,14972,5729],{"class":4508},[3925,14974,14975,14978,14980],{"class":3927,"line":6906},[3925,14976,14977],{"class":4508},"    [",[3925,14979,4695],{"class":4512},[3925,14981,14982],{"class":4508},"],\n",[3925,14984,14985],{"class":3927,"line":6921},[3925,14986,4678],{"class":4508},[3925,14988,14989],{"class":3927,"line":6941},[3925,14990,3950],{"emptyLinePlaceholder":3949},[3925,14992,14993,14995,14998,15000,15002],{"class":3927,"line":6962},[3925,14994,6909],{"class":4540},[3925,14996,14997],{"class":5194}," handleOpenPlace",[3925,14999,5967],{"class":4508},[3925,15001,14472],{"class":4544},[3925,15003,10621],{"class":4508},[3925,15005,15006,15008,15011,15013,15015,15017,15019],{"class":3927,"line":6977},[3925,15007,14928],{"class":4508},[3925,15009,15010],{"class":4512},"place",[3925,15012,4767],{"class":4508},[3925,15014,14874],{"class":4565},[3925,15016,6701],{"class":4508},[3925,15018,5614],{"class":4540},[3925,15020,5617],{"class":4508},[3925,15022,15023],{"class":3927,"line":6990},[3925,15024,15025],{"class":4498},"      \u002F\u002F Місце належить поїздці — відкриваємо її деталі у вкладеному Stack.\n",[3925,15027,15028,15030,15032,15034,15036,15038,15040,15042,15044,15046,15048,15050],{"class":3927,"line":6996},[3925,15029,14946],{"class":4512},[3925,15031,3595],{"class":4508},[3925,15033,3650],{"class":4544},[3925,15035,4702],{"class":4508},[3925,15037,4705],{"class":4521},[3925,15039,4708],{"class":4540},[3925,15041,15010],{"class":4512},[3925,15043,3595],{"class":4597},[3925,15045,6018],{"class":4512},[3925,15047,4610],{"class":4540},[3925,15049,4721],{"class":4521},[3925,15051,4724],{"class":4508},[3925,15053,15054],{"class":3927,"line":7014},[3925,15055,5729],{"class":4508},[3925,15057,15058,15060,15062],{"class":3927,"line":7023},[3925,15059,14977],{"class":4508},[3925,15061,4695],{"class":4512},[3925,15063,14982],{"class":4508},[3925,15065,15066],{"class":3927,"line":7032},[3925,15067,4678],{"class":4508},[3925,15069,15070],{"class":3927,"line":7037},[3925,15071,3950],{"emptyLinePlaceholder":3949},[3925,15073,15074,15076,15079,15081,15083,15085,15087],{"class":3927,"line":7042},[3925,15075,6909],{"class":4540},[3925,15077,15078],{"class":5194}," onRefresh",[3925,15080,5967],{"class":4508},[3925,15082,14472],{"class":4544},[3925,15084,8322],{"class":4508},[3925,15086,5614],{"class":4540},[3925,15088,5617],{"class":4508},[3925,15090,15091,15094,15096,15098],{"class":3927,"line":7070},[3925,15092,15093],{"class":4544},"    setRefreshing",[3925,15095,4702],{"class":4508},[3925,15097,10823],{"class":4540},[3925,15099,4724],{"class":4508},[3925,15101,15102],{"class":3927,"line":7086},[3925,15103,15104],{"class":4498},"    \u002F\u002F Mock pull-to-refresh: повертаємо seed mock (локально створені зникають).\n",[3925,15106,15107,15109,15111,15113],{"class":3927,"line":7097},[3925,15108,10840],{"class":4544},[3925,15110,8322],{"class":4508},[3925,15112,5614],{"class":4540},[3925,15114,5617],{"class":4508},[3925,15116,15117,15120],{"class":3927,"line":7114},[3925,15118,15119],{"class":4544},"      resetToMock",[3925,15121,7020],{"class":4508},[3925,15123,15124,15127,15129,15131],{"class":3927,"line":7119},[3925,15125,15126],{"class":4544},"      setRefreshing",[3925,15128,4702],{"class":4508},[3925,15130,10525],{"class":4540},[3925,15132,4724],{"class":4508},[3925,15134,15135,15138,15141],{"class":3927,"line":9008},[3925,15136,15137],{"class":4508},"    }, ",[3925,15139,15140],{"class":5990},"900",[3925,15142,4724],{"class":4508},[3925,15144,15145,15148,15150],{"class":3927,"line":9017},[3925,15146,15147],{"class":4508},"  }, [",[3925,15149,14817],{"class":4512},[3925,15151,15152],{"class":4508},"]);\n",[3925,15154,15155],{"class":3927,"line":9022},[3925,15156,3950],{"emptyLinePlaceholder":3949},[3925,15158,15159,15161,15164,15166,15168],{"class":3927,"line":9027},[3925,15160,6909],{"class":4540},[3925,15162,15163],{"class":5194}," renderTrip",[3925,15165,5967],{"class":4508},[3925,15167,14472],{"class":4544},[3925,15169,10621],{"class":4508},[3925,15171,15172,15175,15177,15180,15182,15184,15186,15188,15190],{"class":3927,"line":9032},[3925,15173,15174],{"class":4508},"    ({ ",[3925,15176,8543],{"class":4512},[3925,15178,15179],{"class":4508}," }: { ",[3925,15181,8543],{"class":4512},[3925,15183,4767],{"class":4508},[3925,15185,14935],{"class":4565},[3925,15187,5611],{"class":4508},[3925,15189,5614],{"class":4540},[3925,15191,4556],{"class":4508},[3925,15193,15194,15196,15199,15201,15203,15205,15207,15209,15211,15213,15215,15218,15220],{"class":3927,"line":9053},[3925,15195,4573],{"class":4561},[3925,15197,15198],{"class":4565},"TripCard",[3925,15200,6013],{"class":4579},[3925,15202,4583],{"class":4508},[3925,15204,4594],{"class":4540},[3925,15206,8543],{"class":4512},[3925,15208,4610],{"class":4540},[3925,15210,9784],{"class":4579},[3925,15212,4583],{"class":4508},[3925,15214,4594],{"class":4540},[3925,15216,15217],{"class":4512},"handleOpenTrip",[3925,15219,4610],{"class":4540},[3925,15221,4613],{"class":4561},[3925,15223,15224],{"class":3927,"line":9075},[3925,15225,15226],{"class":4508},"    ),\n",[3925,15228,15229,15231,15233],{"class":3927,"line":9083},[3925,15230,14977],{"class":4508},[3925,15232,15217],{"class":4512},[3925,15234,14982],{"class":4508},[3925,15236,15237],{"class":3927,"line":9094},[3925,15238,4678],{"class":4508},[3925,15240,15241],{"class":3927,"line":9105},[3925,15242,3950],{"emptyLinePlaceholder":3949},[3925,15244,15245,15247,15250,15252,15254,15256,15258,15260,15262,15264,15266,15268,15270,15272],{"class":3927,"line":9115},[3925,15246,6909],{"class":4540},[3925,15248,15249],{"class":5194}," keyExtractor",[3925,15251,5967],{"class":4508},[3925,15253,14472],{"class":4544},[3925,15255,6695],{"class":4508},[3925,15257,8543],{"class":4512},[3925,15259,4767],{"class":4508},[3925,15261,14935],{"class":4565},[3925,15263,6701],{"class":4508},[3925,15265,5614],{"class":4540},[3925,15267,8550],{"class":4512},[3925,15269,3595],{"class":4508},[3925,15271,4716],{"class":4512},[3925,15273,15274],{"class":4508},", []);\n",[3925,15276,15277],{"class":3927,"line":9125},[3925,15278,3950],{"emptyLinePlaceholder":3949},[3925,15280,15281,15283,15286],{"class":3927,"line":9135},[3925,15282,6909],{"class":4540},[3925,15284,15285],{"class":4544}," listHeader",[3925,15287,15288],{"class":4508}," = (\n",[3925,15290,15291,15293,15295,15297,15299,15301,15303,15305,15308,15310,15313,15315,15317,15319,15321,15323,15325,15327],{"class":3927,"line":9140},[3925,15292,4562],{"class":4561},[3925,15294,8398],{"class":4565},[3925,15296,7232],{"class":4579},[3925,15298,4583],{"class":4508},[3925,15300,4594],{"class":4540},[3925,15302,4598],{"class":4597},[3925,15304,11369],{"class":4512},[3925,15306,15307],{"class":4512}," spacing",[3925,15309,3595],{"class":4597},[3925,15311,15312],{"class":4512},"md",[3925,15314,4191],{"class":4597},[3925,15316,11395],{"class":4512},[3925,15318,15307],{"class":4512},[3925,15320,3595],{"class":4597},[3925,15322,15312],{"class":4512},[3925,15324,4607],{"class":4597},[3925,15326,4610],{"class":4540},[3925,15328,4568],{"class":4561},[3925,15330,15331,15334,15336,15338,15340,15343,15346,15348],{"class":3927,"line":9168},[3925,15332,15333],{"class":4540},"      {",[3925,15335,4772],{"class":4512},[3925,15337,3595],{"class":4597},[3925,15339,8486],{"class":4512},[3925,15341,15342],{"class":4508}," >",[3925,15344,15345],{"class":5990}," 0",[3925,15347,10922],{"class":4508},[3925,15349,4556],{"class":4597},[3925,15351,15352,15354,15356,15358,15360,15362,15364,15366,15368,15370,15373,15375,15377],{"class":3927,"line":9197},[3925,15353,7335],{"class":4561},[3925,15355,8398],{"class":4565},[3925,15357,7232],{"class":4579},[3925,15359,4583],{"class":4508},[3925,15361,4594],{"class":4540},[3925,15363,4598],{"class":4597},[3925,15365,11369],{"class":4512},[3925,15367,15307],{"class":4512},[3925,15369,3595],{"class":4597},[3925,15371,15372],{"class":4512},"sm",[3925,15374,4607],{"class":4597},[3925,15376,4610],{"class":4540},[3925,15378,4568],{"class":4561},[3925,15380,15381,15383,15385,15387,15389,15391,15393,15395,15397,15399,15401,15403,15406,15408,15410],{"class":3927,"line":9226},[3925,15382,8630],{"class":4561},[3925,15384,14664],{"class":4565},[3925,15386,7232],{"class":4579},[3925,15388,4583],{"class":4508},[3925,15390,4594],{"class":4540},[3925,15392,4598],{"class":4597},[3925,15394,7300],{"class":4512},[3925,15396,7303],{"class":4521},[3925,15398,4607],{"class":4597},[3925,15400,4610],{"class":4540},[3925,15402,8439],{"class":4561},[3925,15404,15405],{"class":4597},"Останні місця",[3925,15407,8445],{"class":4561},[3925,15409,14664],{"class":4565},[3925,15411,4568],{"class":4561},[3925,15413,15414,15416],{"class":3927,"line":9234},[3925,15415,8630],{"class":4561},[3925,15417,8516],{"class":4565},[3925,15419,15420],{"class":3927,"line":9245},[3925,15421,15422],{"class":4579},"            horizontal\n",[3925,15424,15425,15428,15430,15432,15434],{"class":3927,"line":9255},[3925,15426,15427],{"class":4579},"            data",[3925,15429,4583],{"class":4508},[3925,15431,4594],{"class":4540},[3925,15433,4772],{"class":4512},[3925,15435,4016],{"class":4540},[3925,15437,15438,15441,15443,15445,15447,15449,15451,15453,15455,15457,15459],{"class":3927,"line":9265},[3925,15439,15440],{"class":4579},"            keyExtractor",[3925,15442,4583],{"class":4508},[3925,15444,4594],{"class":4540},[3925,15446,4702],{"class":4597},[3925,15448,8543],{"class":4512},[3925,15450,6701],{"class":4597},[3925,15452,5614],{"class":4540},[3925,15454,8550],{"class":4512},[3925,15456,3595],{"class":4597},[3925,15458,4716],{"class":4512},[3925,15460,4016],{"class":4540},[3925,15462,15463,15466,15468,15470,15472,15474,15476,15478],{"class":3927,"line":9275},[3925,15464,15465],{"class":4579},"            renderItem",[3925,15467,4583],{"class":4508},[3925,15469,4594],{"class":4540},[3925,15471,8674],{"class":4597},[3925,15473,8543],{"class":4512},[3925,15475,5611],{"class":4597},[3925,15477,5614],{"class":4540},[3925,15479,4556],{"class":4597},[3925,15481,15482,15484,15487,15490,15492,15494,15496,15498,15500,15502,15504,15507,15509],{"class":3927,"line":9286},[3925,15483,8745],{"class":4561},[3925,15485,15486],{"class":4565},"PlaceChip",[3925,15488,15489],{"class":4579}," place",[3925,15491,4583],{"class":4508},[3925,15493,4594],{"class":4540},[3925,15495,8543],{"class":4512},[3925,15497,4610],{"class":4540},[3925,15499,9784],{"class":4579},[3925,15501,4583],{"class":4508},[3925,15503,4594],{"class":4540},[3925,15505,15506],{"class":4512},"handleOpenPlace",[3925,15508,4610],{"class":4540},[3925,15510,4613],{"class":4561},[3925,15512,15513,15516],{"class":3927,"line":9291},[3925,15514,15515],{"class":4597},"            )",[3925,15517,4016],{"class":4540},[3925,15519,15520,15523,15525],{"class":3927,"line":9319},[3925,15521,15522],{"class":4579},"            showsHorizontalScrollIndicator",[3925,15524,4583],{"class":4508},[3925,15526,15527],{"class":4540},"{false}\n",[3925,15529,15530,15533,15535,15537,15539,15541,15543,15545,15547,15549,15551,15553,15556,15558,15560,15562,15564,15566,15568],{"class":3927,"line":9346},[3925,15531,15532],{"class":4579},"            ItemSeparatorComponent",[3925,15534,4583],{"class":4508},[3925,15536,4594],{"class":4540},[3925,15538,8586],{"class":4597},[3925,15540,5614],{"class":4540},[3925,15542,8591],{"class":4561},[3925,15544,8398],{"class":4565},[3925,15546,7232],{"class":4579},[3925,15548,4583],{"class":4508},[3925,15550,4594],{"class":4540},[3925,15552,4598],{"class":4597},[3925,15554,15555],{"class":4512},"width:",[3925,15557,15307],{"class":4512},[3925,15559,3595],{"class":4597},[3925,15561,15372],{"class":4512},[3925,15563,4607],{"class":4597},[3925,15565,4610],{"class":4540},[3925,15567,8614],{"class":4561},[3925,15569,4016],{"class":4540},[3925,15571,15572,15575,15577,15579,15581,15584,15587,15589],{"class":3927,"line":9354},[3925,15573,15574],{"class":4579},"            contentContainerStyle",[3925,15576,4583],{"class":4508},[3925,15578,4594],{"class":4540},[3925,15580,4598],{"class":4597},[3925,15582,15583],{"class":4512},"paddingVertical:",[3925,15585,15586],{"class":5990}," 2",[3925,15588,4607],{"class":4597},[3925,15590,4016],{"class":4540},[3925,15592,15593],{"class":3927,"line":9363},[3925,15594,15595],{"class":4561},"          \u002F>\n",[3925,15597,15598,15600,15602],{"class":3927,"line":9373},[3925,15599,8493],{"class":4561},[3925,15601,8398],{"class":4565},[3925,15603,4568],{"class":4561},[3925,15605,15606,15609,15611],{"class":3927,"line":9383},[3925,15607,15608],{"class":4597},"      ) ",[3925,15610,4974],{"class":4508},[3925,15612,15613],{"class":4540}," null}\n",[3925,15615,15616],{"class":3927,"line":9388},[3925,15617,3950],{"emptyLinePlaceholder":3949},[3925,15619,15620,15622,15624,15626,15628,15630,15632,15634,15636,15638,15640,15642,15645,15647,15649],{"class":3927,"line":9396},[3925,15621,4573],{"class":4561},[3925,15623,14664],{"class":4565},[3925,15625,7232],{"class":4579},[3925,15627,4583],{"class":4508},[3925,15629,4594],{"class":4540},[3925,15631,4598],{"class":4597},[3925,15633,7300],{"class":4512},[3925,15635,7303],{"class":4521},[3925,15637,4607],{"class":4597},[3925,15639,4610],{"class":4540},[3925,15641,8439],{"class":4561},[3925,15643,15644],{"class":4508},"Ваші поїздки",[3925,15646,8445],{"class":4561},[3925,15648,14664],{"class":4565},[3925,15650,4568],{"class":4561},[3925,15652,15653,15655,15657],{"class":3927,"line":9405},[3925,15654,4669],{"class":4561},[3925,15656,8398],{"class":4565},[3925,15658,4568],{"class":4561},[3925,15660,15661],{"class":3927,"line":9415},[3925,15662,4678],{"class":4508},[3925,15664,15665],{"class":3927,"line":9424},[3925,15666,3950],{"emptyLinePlaceholder":3949},[3925,15668,15669,15671,15674],{"class":3927,"line":9435},[3925,15670,6909],{"class":4540},[3925,15672,15673],{"class":4544}," listEmpty",[3925,15675,15288],{"class":4508},[3925,15677,15678,15680],{"class":3927,"line":9440},[3925,15679,4562],{"class":4561},[3925,15681,15682],{"class":4565},"View\n",[3925,15684,15685,15687,15689,15691],{"class":3927,"line":9460},[3925,15686,10883],{"class":4579},[3925,15688,4583],{"class":4508},[3925,15690,4594],{"class":4540},[3925,15692,15693],{"class":4597},"[\n",[3925,15695,15696,15699,15701,15704],{"class":3927,"line":11409},[3925,15697,15698],{"class":4512},"        styles",[3925,15700,3595],{"class":4597},[3925,15702,15703],{"class":4512},"empty",[3925,15705,5051],{"class":4597},[3925,15707,15708],{"class":3927,"line":11418},[3925,15709,10662],{"class":4597},[3925,15711,15712,15715,15717,15719,15721],{"class":3927,"line":11427},[3925,15713,15714],{"class":4512},"          paddingHorizontal:",[3925,15716,15307],{"class":4512},[3925,15718,3595],{"class":4597},[3925,15720,15372],{"class":4512},[3925,15722,5051],{"class":4597},[3925,15724,15725,15728,15730,15732,15735],{"class":3927,"line":11437},[3925,15726,15727],{"class":4512},"          paddingVertical:",[3925,15729,15307],{"class":4512},[3925,15731,3595],{"class":4597},[3925,15733,15734],{"class":4512},"xl",[3925,15736,5051],{"class":4597},[3925,15738,15739,15742,15744,15746,15748],{"class":3927,"line":11446},[3925,15740,15741],{"class":4512},"          gap:",[3925,15743,15307],{"class":4512},[3925,15745,3595],{"class":4597},[3925,15747,15372],{"class":4512},[3925,15749,5051],{"class":4597},[3925,15751,15752],{"class":3927,"line":11457},[3925,15753,7599],{"class":4597},[3925,15755,15756,15759],{"class":3927,"line":11462},[3925,15757,15758],{"class":4597},"      ]",[3925,15760,4016],{"class":4540},[3925,15762,15763],{"class":3927,"line":11470},[3925,15764,7632],{"class":4561},[3925,15766,15767,15769,15771,15774,15776,15779,15781,15783,15785,15787,15789,15792,15794],{"class":3927,"line":11479},[3925,15768,4573],{"class":4561},[3925,15770,14664],{"class":4565},[3925,15772,15773],{"class":4579}," variant",[3925,15775,4583],{"class":4508},[3925,15777,15778],{"class":4521},"\"subtitle\"",[3925,15780,7232],{"class":4579},[3925,15782,4583],{"class":4508},[3925,15784,4594],{"class":4540},[3925,15786,8365],{"class":4512},[3925,15788,3595],{"class":4597},[3925,15790,15791],{"class":4512},"emptyTitle",[3925,15793,4610],{"class":4540},[3925,15795,4568],{"class":4561},[3925,15797,15798],{"class":3927,"line":11488},[3925,15799,15800],{"class":4508},"        Поки немає поїздок\n",[3925,15802,15803,15805,15807],{"class":3927,"line":11497},[3925,15804,7434],{"class":4561},[3925,15806,14664],{"class":4565},[3925,15808,4568],{"class":4561},[3925,15810,15811,15813],{"class":3927,"line":11506},[3925,15812,4573],{"class":4561},[3925,15814,15815],{"class":4565},"AppText\n",[3925,15817,15818,15821,15823],{"class":3927,"line":11515},[3925,15819,15820],{"class":4579},"        variant",[3925,15822,4583],{"class":4508},[3925,15824,15825],{"class":4521},"\"caption\"\n",[3925,15827,15828,15831,15833,15835,15837,15839,15841],{"class":3927,"line":11524},[3925,15829,15830],{"class":4579},"        color",[3925,15832,4583],{"class":4508},[3925,15834,4594],{"class":4540},[3925,15836,13240],{"class":4512},[3925,15838,3595],{"class":4597},[3925,15840,13752],{"class":4512},[3925,15842,4016],{"class":4540},[3925,15844,15845,15848,15850,15852,15854,15856,15859],{"class":3927,"line":11533},[3925,15846,15847],{"class":4579},"        style",[3925,15849,4583],{"class":4508},[3925,15851,4594],{"class":4540},[3925,15853,8365],{"class":4512},[3925,15855,3595],{"class":4597},[3925,15857,15858],{"class":4512},"emptyDesc",[3925,15860,4016],{"class":4540},[3925,15862,15863],{"class":3927,"line":11542},[3925,15864,7330],{"class":4561},[3925,15866,15867],{"class":3927,"line":11547},[3925,15868,15869],{"class":4508},"        Потягніть список униз, щоб «оновити», або натисніть «Нова поїздка».\n",[3925,15871,15872,15874,15876],{"class":3927,"line":11563},[3925,15873,7434],{"class":4561},[3925,15875,14664],{"class":4565},[3925,15877,4568],{"class":4561},[3925,15879,15880,15882,15884],{"class":3927,"line":11570},[3925,15881,4669],{"class":4561},[3925,15883,8398],{"class":4565},[3925,15885,4568],{"class":4561},[3925,15887,15888],{"class":3927,"line":11580},[3925,15889,4678],{"class":4508},[3925,15891,15892],{"class":3927,"line":11589},[3925,15893,3950],{"emptyLinePlaceholder":3949},[3925,15895,15896,15898],{"class":3927,"line":11598},[3925,15897,4553],{"class":4504},[3925,15899,4556],{"class":4508},[3925,15901,15902,15904,15906,15908,15910,15912,15914,15916,15919,15921],{"class":3927,"line":11607},[3925,15903,4562],{"class":4561},[3925,15905,14674],{"class":4565},[3925,15907,7232],{"class":4579},[3925,15909,4583],{"class":4508},[3925,15911,4594],{"class":4540},[3925,15913,8365],{"class":4512},[3925,15915,3595],{"class":4597},[3925,15917,15918],{"class":4512},"screen",[3925,15920,4610],{"class":4540},[3925,15922,4568],{"class":4561},[3925,15924,15925,15927],{"class":3927,"line":11616},[3925,15926,4573],{"class":4561},[3925,15928,15682],{"class":4565},[3925,15930,15931,15933,15935,15937],{"class":3927,"line":11621},[3925,15932,15847],{"class":4579},[3925,15934,4583],{"class":4508},[3925,15936,4594],{"class":4540},[3925,15938,15693],{"class":4597},[3925,15940,15941,15944,15946,15948],{"class":3927,"line":11640},[3925,15942,15943],{"class":4512},"          styles",[3925,15945,3595],{"class":4597},[3925,15947,8411],{"class":4512},[3925,15949,5051],{"class":4597},[3925,15951,15953],{"class":3927,"line":15952},121,[3925,15954,15955],{"class":4597},"          {\n",[3925,15957,15959,15962,15964,15966,15968],{"class":3927,"line":15958},122,[3925,15960,15961],{"class":4512},"            paddingHorizontal:",[3925,15963,15307],{"class":4512},[3925,15965,3595],{"class":4597},[3925,15967,15312],{"class":4512},[3925,15969,5051],{"class":4597},[3925,15971,15973,15976,15978,15980,15982],{"class":3927,"line":15972},123,[3925,15974,15975],{"class":4512},"            paddingTop:",[3925,15977,15307],{"class":4512},[3925,15979,3595],{"class":4597},[3925,15981,15372],{"class":4512},[3925,15983,5051],{"class":4597},[3925,15985,15987,15990,15992,15994,15996],{"class":3927,"line":15986},124,[3925,15988,15989],{"class":4512},"            paddingBottom:",[3925,15991,15307],{"class":4512},[3925,15993,3595],{"class":4597},[3925,15995,15312],{"class":4512},[3925,15997,5051],{"class":4597},[3925,15999,16001,16004,16006,16008,16011],{"class":3927,"line":16000},125,[3925,16002,16003],{"class":4512},"            gap:",[3925,16005,15307],{"class":4512},[3925,16007,3595],{"class":4597},[3925,16009,16010],{"class":4512},"xs",[3925,16012,5051],{"class":4597},[3925,16014,16016,16019,16021,16023,16025],{"class":3927,"line":16015},126,[3925,16017,16018],{"class":4512},"            borderBottomColor:",[3925,16020,13324],{"class":4512},[3925,16022,3595],{"class":4597},[3925,16024,13783],{"class":4512},[3925,16026,5051],{"class":4597},[3925,16028,16030],{"class":3927,"line":16029},127,[3925,16031,16032],{"class":4597},"          },\n",[3925,16034,16036,16039],{"class":3927,"line":16035},128,[3925,16037,16038],{"class":4597},"        ]",[3925,16040,4016],{"class":4540},[3925,16042,16044],{"class":3927,"line":16043},129,[3925,16045,7330],{"class":4561},[3925,16047,16049,16051,16053,16055,16057,16060,16062,16065,16067,16069],{"class":3927,"line":16048},130,[3925,16050,7335],{"class":4561},[3925,16052,14664],{"class":4565},[3925,16054,15773],{"class":4579},[3925,16056,4583],{"class":4508},[3925,16058,16059],{"class":4521},"\"title\"",[3925,16061,8439],{"class":4561},[3925,16063,16064],{"class":4508},"Мандрівник",[3925,16066,8445],{"class":4561},[3925,16068,14664],{"class":4565},[3925,16070,4568],{"class":4561},[3925,16072,16074,16076,16078,16080,16082,16085,16087,16089,16091,16093,16095,16097,16099,16101,16103,16105],{"class":3927,"line":16073},131,[3925,16075,7335],{"class":4561},[3925,16077,14664],{"class":4565},[3925,16079,15773],{"class":4579},[3925,16081,4583],{"class":4508},[3925,16083,16084],{"class":4521},"\"caption\"",[3925,16086,7232],{"class":4579},[3925,16088,4583],{"class":4508},[3925,16090,4594],{"class":4540},[3925,16092,4598],{"class":4597},[3925,16094,9176],{"class":4512},[3925,16096,15307],{"class":4512},[3925,16098,3595],{"class":4597},[3925,16100,16010],{"class":4512},[3925,16102,4607],{"class":4597},[3925,16104,4610],{"class":4540},[3925,16106,4568],{"class":4561},[3925,16108,16110,16113,16115,16117,16119,16121,16123,16126,16128,16131],{"class":3927,"line":16109},132,[3925,16111,16112],{"class":4508},"          Щоденник подорожей · тема: ",[3925,16114,4594],{"class":4540},[3925,16116,13245],{"class":4512},[3925,16118,10916],{"class":4508},[3925,16120,13284],{"class":4521},[3925,16122,10922],{"class":4508},[3925,16124,16125],{"class":4521}," 'темна'",[3925,16127,10928],{"class":4508},[3925,16129,16130],{"class":4521}," 'світла'",[3925,16132,4016],{"class":4540},[3925,16134,16136,16138,16140],{"class":3927,"line":16135},133,[3925,16137,8493],{"class":4561},[3925,16139,14664],{"class":4565},[3925,16141,4568],{"class":4561},[3925,16143,16145,16147],{"class":3927,"line":16144},134,[3925,16146,7335],{"class":4561},[3925,16148,15815],{"class":4565},[3925,16150,16152,16155,16157],{"class":3927,"line":16151},135,[3925,16153,16154],{"class":4579},"          variant",[3925,16156,4583],{"class":4508},[3925,16158,15825],{"class":4521},[3925,16160,16162,16164,16166,16168],{"class":3927,"line":16161},136,[3925,16163,8911],{"class":4579},[3925,16165,4583],{"class":4508},[3925,16167,4594],{"class":4540},[3925,16169,5040],{"class":4597},[3925,16171,16173,16176,16178,16180,16182],{"class":3927,"line":16172},137,[3925,16174,16175],{"class":4512},"            marginTop:",[3925,16177,15307],{"class":4512},[3925,16179,3595],{"class":4597},[3925,16181,16010],{"class":4512},[3925,16183,5051],{"class":4597},[3925,16185,16187,16190,16192,16194,16196],{"class":3927,"line":16186},138,[3925,16188,16189],{"class":4512},"            color:",[3925,16191,13324],{"class":4512},[3925,16193,3595],{"class":4597},[3925,16195,13358],{"class":4512},[3925,16197,5051],{"class":4597},[3925,16199,16201,16204,16206],{"class":3927,"line":16200},139,[3925,16202,16203],{"class":4512},"            fontWeight:",[3925,16205,7303],{"class":4521},[3925,16207,5051],{"class":4597},[3925,16209,16211,16213],{"class":3927,"line":16210},140,[3925,16212,7422],{"class":4597},[3925,16214,4016],{"class":4540},[3925,16216,16218],{"class":3927,"line":16217},141,[3925,16219,8957],{"class":4561},[3925,16221,16223,16226,16228,16230,16232,16234],{"class":3927,"line":16222},142,[3925,16224,16225],{"class":4540},"          {",[3925,16227,4741],{"class":4512},[3925,16229,3595],{"class":4597},[3925,16231,8486],{"class":4512},[3925,16233,15342],{"class":4508},[3925,16235,16236],{"class":5990}," 0\n",[3925,16238,16240,16243,16246,16248,16250,16252,16254,16256,16259,16261,16263,16265,16267,16269],{"class":3927,"line":16239},143,[3925,16241,16242],{"class":4508},"            ?",[3925,16244,16245],{"class":4521}," `",[3925,16247,4708],{"class":4540},[3925,16249,4741],{"class":4512},[3925,16251,3595],{"class":4597},[3925,16253,8486],{"class":4512},[3925,16255,4610],{"class":4540},[3925,16257,16258],{"class":4521}," поїздок · ",[3925,16260,4708],{"class":4540},[3925,16262,4772],{"class":4512},[3925,16264,3595],{"class":4597},[3925,16266,8486],{"class":4512},[3925,16268,4610],{"class":4540},[3925,16270,16271],{"class":4521}," місць`\n",[3925,16273,16275,16278,16281],{"class":3927,"line":16274},144,[3925,16276,16277],{"class":4508},"            :",[3925,16279,16280],{"class":4521}," 'Список порожній'",[3925,16282,4016],{"class":4540},[3925,16284,16286,16288,16290],{"class":3927,"line":16285},145,[3925,16287,8493],{"class":4561},[3925,16289,14664],{"class":4565},[3925,16291,4568],{"class":4561},[3925,16293,16295],{"class":3927,"line":16294},146,[3925,16296,3950],{"emptyLinePlaceholder":3949},[3925,16298,16300,16302,16304,16306,16308,16310,16312,16314,16316,16319,16322,16324,16326,16328,16330,16332,16334,16336,16338,16340,16343,16345],{"class":3927,"line":16299},147,[3925,16301,7335],{"class":4561},[3925,16303,8398],{"class":4565},[3925,16305,7232],{"class":4579},[3925,16307,4583],{"class":4508},[3925,16309,4594],{"class":4540},[3925,16311,5987],{"class":4597},[3925,16313,8365],{"class":4512},[3925,16315,3595],{"class":4597},[3925,16317,16318],{"class":4512},"themeRow",[3925,16320,16321],{"class":4597},", { ",[3925,16323,11369],{"class":4512},[3925,16325,15307],{"class":4512},[3925,16327,3595],{"class":4597},[3925,16329,15372],{"class":4512},[3925,16331,4191],{"class":4597},[3925,16333,9176],{"class":4512},[3925,16335,15307],{"class":4512},[3925,16337,3595],{"class":4597},[3925,16339,15372],{"class":4512},[3925,16341,16342],{"class":4597}," }]",[3925,16344,4610],{"class":4540},[3925,16346,4568],{"class":4561},[3925,16348,16350,16352,16355,16357,16360,16362,16364,16366,16368],{"class":3927,"line":16349},148,[3925,16351,16225],{"class":4540},[3925,16353,16354],{"class":5194},"PREFS",[3925,16356,3595],{"class":4597},[3925,16358,16359],{"class":4544},"map",[3925,16361,6695],{"class":4597},[3925,16363,3512],{"class":4512},[3925,16365,6701],{"class":4597},[3925,16367,5614],{"class":4540},[3925,16369,5617],{"class":4597},[3925,16371,16373,16376,16379,16382,16385,16387,16390,16392,16394],{"class":3927,"line":16372},149,[3925,16374,16375],{"class":4540},"            const",[3925,16377,16378],{"class":5194}," active",[3925,16380,16381],{"class":4508}," =",[3925,16383,16384],{"class":4512}," preference",[3925,16386,10916],{"class":4508},[3925,16388,16389],{"class":4512}," p",[3925,16391,3595],{"class":4597},[3925,16393,4716],{"class":4512},[3925,16395,4525],{"class":4597},[3925,16397,16399,16402],{"class":3927,"line":16398},150,[3925,16400,16401],{"class":4504},"            return",[3925,16403,4556],{"class":4597},[3925,16405,16407,16409],{"class":3927,"line":16406},151,[3925,16408,8745],{"class":4561},[3925,16410,8906],{"class":4565},[3925,16412,16414,16417,16419,16421,16423,16425,16427],{"class":3927,"line":16413},152,[3925,16415,16416],{"class":4579},"                key",[3925,16418,4583],{"class":4508},[3925,16420,4594],{"class":4540},[3925,16422,3512],{"class":4512},[3925,16424,3595],{"class":4597},[3925,16426,4716],{"class":4512},[3925,16428,4016],{"class":4540},[3925,16430,16432,16435,16437,16439,16441,16443,16446,16448,16450,16452,16454,16456],{"class":3927,"line":16431},153,[3925,16433,16434],{"class":4579},"                onPress",[3925,16436,4583],{"class":4508},[3925,16438,4594],{"class":4540},[3925,16440,8586],{"class":4597},[3925,16442,5614],{"class":4540},[3925,16444,16445],{"class":4544}," setPreference",[3925,16447,4702],{"class":4597},[3925,16449,3512],{"class":4512},[3925,16451,3595],{"class":4597},[3925,16453,4716],{"class":4512},[3925,16455,4251],{"class":4597},[3925,16457,4016],{"class":4540},[3925,16459,16461,16464,16466,16468],{"class":3927,"line":16460},154,[3925,16462,16463],{"class":4579},"                style",[3925,16465,4583],{"class":4508},[3925,16467,4594],{"class":4540},[3925,16469,15693],{"class":4597},[3925,16471,16473,16476,16478,16481],{"class":3927,"line":16472},155,[3925,16474,16475],{"class":4512},"                  styles",[3925,16477,3595],{"class":4597},[3925,16479,16480],{"class":4512},"themeChip",[3925,16482,5051],{"class":4597},[3925,16484,16486],{"class":3927,"line":16485},156,[3925,16487,16488],{"class":4597},"                  {\n",[3925,16490,16492,16495,16497,16499,16501,16503,16505,16507,16509,16511,16514],{"class":3927,"line":16491},157,[3925,16493,16494],{"class":4512},"                    backgroundColor:",[3925,16496,16378],{"class":4512},[3925,16498,10922],{"class":4508},[3925,16500,13324],{"class":4512},[3925,16502,3595],{"class":4597},[3925,16504,13358],{"class":4512},[3925,16506,10928],{"class":4508},[3925,16508,13324],{"class":4512},[3925,16510,3595],{"class":4597},[3925,16512,16513],{"class":4512},"surface",[3925,16515,5051],{"class":4597},[3925,16517,16519,16522,16524,16526,16528],{"class":3927,"line":16518},158,[3925,16520,16521],{"class":4512},"                    borderColor:",[3925,16523,13324],{"class":4512},[3925,16525,3595],{"class":4597},[3925,16527,13783],{"class":4512},[3925,16529,5051],{"class":4597},[3925,16531,16533],{"class":3927,"line":16532},159,[3925,16534,16535],{"class":4597},"                  },\n",[3925,16537,16539,16542],{"class":3927,"line":16538},160,[3925,16540,16541],{"class":4597},"                ]",[3925,16543,4016],{"class":4540},[3925,16545,16547,16550,16552],{"class":3927,"line":16546},161,[3925,16548,16549],{"class":4579},"                accessibilityRole",[3925,16551,4583],{"class":4508},[3925,16553,16554],{"class":4521},"\"button\"\n",[3925,16556,16558,16561,16563,16565,16567,16570,16572,16574],{"class":3927,"line":16557},162,[3925,16559,16560],{"class":4579},"                accessibilityState",[3925,16562,4583],{"class":4508},[3925,16564,4594],{"class":4540},[3925,16566,4598],{"class":4597},[3925,16568,16569],{"class":4512},"selected:",[3925,16571,16378],{"class":4512},[3925,16573,4607],{"class":4597},[3925,16575,4016],{"class":4540},[3925,16577,16579,16582,16584,16586,16589,16591,16593,16595,16597,16599,16601],{"class":3927,"line":16578},163,[3925,16580,16581],{"class":4579},"                accessibilityLabel",[3925,16583,4583],{"class":4508},[3925,16585,4594],{"class":4540},[3925,16587,16588],{"class":4521},"`Тема: ",[3925,16590,4708],{"class":4540},[3925,16592,3512],{"class":4512},[3925,16594,3595],{"class":4597},[3925,16596,11017],{"class":4512},[3925,16598,4610],{"class":4540},[3925,16600,4721],{"class":4521},[3925,16602,4016],{"class":4540},[3925,16604,16606],{"class":3927,"line":16605},164,[3925,16607,16608],{"class":4561},"              >\n",[3925,16610,16612,16615],{"class":3927,"line":16611},165,[3925,16613,16614],{"class":4561},"                \u003C",[3925,16616,15815],{"class":4565},[3925,16618,16620,16623,16625],{"class":3927,"line":16619},166,[3925,16621,16622],{"class":4579},"                  variant",[3925,16624,4583],{"class":4508},[3925,16626,15825],{"class":4521},[3925,16628,16630,16633,16635,16637,16640,16642,16644,16646,16649,16651,16653,16655,16657],{"class":3927,"line":16629},167,[3925,16631,16632],{"class":4579},"                  color",[3925,16634,4583],{"class":4508},[3925,16636,4594],{"class":4540},[3925,16638,16639],{"class":4512},"active",[3925,16641,10922],{"class":4508},[3925,16643,13324],{"class":4512},[3925,16645,3595],{"class":4597},[3925,16647,16648],{"class":4512},"onPrimary",[3925,16650,10928],{"class":4508},[3925,16652,13324],{"class":4512},[3925,16654,3595],{"class":4597},[3925,16656,4355],{"class":4512},[3925,16658,4016],{"class":4540},[3925,16660,16662,16665,16667,16669,16671,16673,16676],{"class":3927,"line":16661},168,[3925,16663,16664],{"class":4579},"                  style",[3925,16666,4583],{"class":4508},[3925,16668,4594],{"class":4540},[3925,16670,8365],{"class":4512},[3925,16672,3595],{"class":4597},[3925,16674,16675],{"class":4512},"themeChipText",[3925,16677,4016],{"class":4540},[3925,16679,16681],{"class":3927,"line":16680},169,[3925,16682,16683],{"class":4561},"                >\n",[3925,16685,16687,16690,16692,16694,16696],{"class":3927,"line":16686},170,[3925,16688,16689],{"class":4540},"                  {",[3925,16691,3512],{"class":4512},[3925,16693,3595],{"class":4597},[3925,16695,11017],{"class":4512},[3925,16697,4016],{"class":4540},[3925,16699,16701,16704,16706],{"class":3927,"line":16700},171,[3925,16702,16703],{"class":4561},"                \u003C\u002F",[3925,16705,14664],{"class":4565},[3925,16707,4568],{"class":4561},[3925,16709,16711,16713,16715],{"class":3927,"line":16710},172,[3925,16712,8839],{"class":4561},[3925,16714,8724],{"class":4565},[3925,16716,4568],{"class":4561},[3925,16718,16720],{"class":3927,"line":16719},173,[3925,16721,16722],{"class":4597},"            );\n",[3925,16724,16726,16729],{"class":3927,"line":16725},174,[3925,16727,16728],{"class":4597},"          })",[3925,16730,4016],{"class":4540},[3925,16732,16734,16736,16738],{"class":3927,"line":16733},175,[3925,16735,8493],{"class":4561},[3925,16737,8398],{"class":4565},[3925,16739,4568],{"class":4561},[3925,16741,16743,16745,16747],{"class":3927,"line":16742},176,[3925,16744,7434],{"class":4561},[3925,16746,8398],{"class":4565},[3925,16748,4568],{"class":4561},[3925,16750,16752],{"class":3927,"line":16751},177,[3925,16753,3950],{"emptyLinePlaceholder":3949},[3925,16755,16757,16759,16761,16763,16765,16767,16769,16771,16774,16776],{"class":3927,"line":16756},178,[3925,16758,4573],{"class":4561},[3925,16760,8398],{"class":4565},[3925,16762,7232],{"class":4579},[3925,16764,4583],{"class":4508},[3925,16766,4594],{"class":4540},[3925,16768,8365],{"class":4512},[3925,16770,3595],{"class":4597},[3925,16772,16773],{"class":4512},"listWrap",[3925,16775,4610],{"class":4540},[3925,16777,4568],{"class":4561},[3925,16779,16781,16783],{"class":3927,"line":16780},179,[3925,16782,7335],{"class":4561},[3925,16784,16785],{"class":4565},"FlashList\n",[3925,16787,16789,16792,16794,16796,16798],{"class":3927,"line":16788},180,[3925,16790,16791],{"class":4579},"          data",[3925,16793,4583],{"class":4508},[3925,16795,4594],{"class":4540},[3925,16797,4741],{"class":4512},[3925,16799,4016],{"class":4540},[3925,16801,16803,16806,16808,16810,16813],{"class":3927,"line":16802},181,[3925,16804,16805],{"class":4579},"          renderItem",[3925,16807,4583],{"class":4508},[3925,16809,4594],{"class":4540},[3925,16811,16812],{"class":4512},"renderTrip",[3925,16814,4016],{"class":4540},[3925,16816,16818,16821,16823,16825,16828],{"class":3927,"line":16817},182,[3925,16819,16820],{"class":4579},"          keyExtractor",[3925,16822,4583],{"class":4508},[3925,16824,4594],{"class":4540},[3925,16826,16827],{"class":4512},"keyExtractor",[3925,16829,4016],{"class":4540},[3925,16831,16833,16836,16838,16840,16843],{"class":3927,"line":16832},183,[3925,16834,16835],{"class":4579},"          ListHeaderComponent",[3925,16837,4583],{"class":4508},[3925,16839,4594],{"class":4540},[3925,16841,16842],{"class":4512},"listHeader",[3925,16844,4016],{"class":4540},[3925,16846,16848,16851,16853,16855,16858],{"class":3927,"line":16847},184,[3925,16849,16850],{"class":4579},"          ListEmptyComponent",[3925,16852,4583],{"class":4508},[3925,16854,4594],{"class":4540},[3925,16856,16857],{"class":4512},"listEmpty",[3925,16859,4016],{"class":4540},[3925,16861,16863,16866,16868,16870],{"class":3927,"line":16862},185,[3925,16864,16865],{"class":4579},"          contentContainerStyle",[3925,16867,4583],{"class":4508},[3925,16869,4594],{"class":4540},[3925,16871,5040],{"class":4597},[3925,16873,16875,16877,16879,16881,16883],{"class":3927,"line":16874},186,[3925,16876,15961],{"class":4512},[3925,16878,15307],{"class":4512},[3925,16880,3595],{"class":4597},[3925,16882,15312],{"class":4512},[3925,16884,5051],{"class":4597},[3925,16886,16888,16890,16892,16894,16896],{"class":3927,"line":16887},187,[3925,16889,15975],{"class":4512},[3925,16891,15307],{"class":4512},[3925,16893,3595],{"class":4597},[3925,16895,15312],{"class":4512},[3925,16897,5051],{"class":4597},[3925,16899,16901,16903,16905,16907,16909],{"class":3927,"line":16900},188,[3925,16902,15989],{"class":4512},[3925,16904,15307],{"class":4512},[3925,16906,3595],{"class":4597},[3925,16908,15312],{"class":4512},[3925,16910,5051],{"class":4597},[3925,16912,16914,16916],{"class":3927,"line":16913},189,[3925,16915,7422],{"class":4597},[3925,16917,4016],{"class":4540},[3925,16919,16921,16924,16926,16928,16930,16932,16934,16936,16938,16940,16942,16944,16946,16948,16950,16952,16954,16956,16958],{"class":3927,"line":16920},190,[3925,16922,16923],{"class":4579},"          ItemSeparatorComponent",[3925,16925,4583],{"class":4508},[3925,16927,4594],{"class":4540},[3925,16929,8586],{"class":4597},[3925,16931,5614],{"class":4540},[3925,16933,8591],{"class":4561},[3925,16935,8398],{"class":4565},[3925,16937,7232],{"class":4579},[3925,16939,4583],{"class":4508},[3925,16941,4594],{"class":4540},[3925,16943,4598],{"class":4597},[3925,16945,8604],{"class":4512},[3925,16947,15307],{"class":4512},[3925,16949,3595],{"class":4597},[3925,16951,15312],{"class":4512},[3925,16953,4607],{"class":4597},[3925,16955,4610],{"class":4540},[3925,16957,8614],{"class":4561},[3925,16959,4016],{"class":4540},[3925,16961,16963,16966,16968],{"class":3927,"line":16962},191,[3925,16964,16965],{"class":4579},"          refreshControl",[3925,16967,4583],{"class":4508},[3925,16969,5040],{"class":4540},[3925,16971,16973,16975],{"class":3927,"line":16972},192,[3925,16974,7697],{"class":4561},[3925,16976,16977],{"class":4565},"RefreshControl\n",[3925,16979,16981,16984,16986,16988,16990],{"class":3927,"line":16980},193,[3925,16982,16983],{"class":4579},"              refreshing",[3925,16985,4583],{"class":4508},[3925,16987,4594],{"class":4540},[3925,16989,14891],{"class":4512},[3925,16991,4016],{"class":4540},[3925,16993,16995,16998,17000,17002,17005],{"class":3927,"line":16994},194,[3925,16996,16997],{"class":4579},"              onRefresh",[3925,16999,4583],{"class":4508},[3925,17001,4594],{"class":4540},[3925,17003,17004],{"class":4512},"onRefresh",[3925,17006,4016],{"class":4540},[3925,17008,17010,17013,17015,17017,17019,17021,17023],{"class":3927,"line":17009},195,[3925,17011,17012],{"class":4579},"              tintColor",[3925,17014,4583],{"class":4508},[3925,17016,4594],{"class":4540},[3925,17018,13240],{"class":4512},[3925,17020,3595],{"class":4597},[3925,17022,13358],{"class":4512},[3925,17024,4016],{"class":4540},[3925,17026,17028,17031,17033,17035,17037,17039,17041,17043,17045],{"class":3927,"line":17027},196,[3925,17029,17030],{"class":4579},"              colors",[3925,17032,4583],{"class":4508},[3925,17034,4594],{"class":4540},[3925,17036,5987],{"class":4597},[3925,17038,13240],{"class":4512},[3925,17040,3595],{"class":4597},[3925,17042,13358],{"class":4512},[3925,17044,8387],{"class":4597},[3925,17046,4016],{"class":4540},[3925,17048,17050],{"class":3927,"line":17049},197,[3925,17051,7847],{"class":4561},[3925,17053,17055],{"class":3927,"line":17054},198,[3925,17056,17057],{"class":4540},"          }\n",[3925,17059,17061,17064,17066],{"class":3927,"line":17060},199,[3925,17062,17063],{"class":4579},"          showsVerticalScrollIndicator",[3925,17065,4583],{"class":4508},[3925,17067,15527],{"class":4540},[3925,17069,17071],{"class":3927,"line":17070},200,[3925,17072,7429],{"class":4561},[3925,17074,17076,17078,17080],{"class":3927,"line":17075},201,[3925,17077,7434],{"class":4561},[3925,17079,8398],{"class":4565},[3925,17081,4568],{"class":4561},[3925,17083,17085],{"class":3927,"line":17084},202,[3925,17086,3950],{"emptyLinePlaceholder":3949},[3925,17088,17090,17092],{"class":3927,"line":17089},203,[3925,17091,4573],{"class":4561},[3925,17093,15682],{"class":4565},[3925,17095,17097,17099,17101,17103],{"class":3927,"line":17096},204,[3925,17098,15847],{"class":4579},[3925,17100,4583],{"class":4508},[3925,17102,4594],{"class":4540},[3925,17104,15693],{"class":4597},[3925,17106,17108,17110,17112,17114],{"class":3927,"line":17107},205,[3925,17109,15943],{"class":4512},[3925,17111,3595],{"class":4597},[3925,17113,8895],{"class":4512},[3925,17115,5051],{"class":4597},[3925,17117,17119],{"class":3927,"line":17118},206,[3925,17120,15955],{"class":4597},[3925,17122,17124,17126,17128,17130,17132],{"class":3927,"line":17123},207,[3925,17125,15961],{"class":4512},[3925,17127,15307],{"class":4512},[3925,17129,3595],{"class":4597},[3925,17131,15312],{"class":4512},[3925,17133,5051],{"class":4597},[3925,17135,17137,17139,17141,17143,17145],{"class":3927,"line":17136},208,[3925,17138,15975],{"class":4512},[3925,17140,15307],{"class":4512},[3925,17142,3595],{"class":4597},[3925,17144,15372],{"class":4512},[3925,17146,5051],{"class":4597},[3925,17148,17150,17152,17154,17156,17158],{"class":3927,"line":17149},209,[3925,17151,15989],{"class":4512},[3925,17153,15307],{"class":4512},[3925,17155,3595],{"class":4597},[3925,17157,15312],{"class":4512},[3925,17159,5051],{"class":4597},[3925,17161,17163,17166,17168,17170,17172],{"class":3927,"line":17162},210,[3925,17164,17165],{"class":4512},"            borderTopColor:",[3925,17167,13324],{"class":4512},[3925,17169,3595],{"class":4597},[3925,17171,13783],{"class":4512},[3925,17173,5051],{"class":4597},[3925,17175,17177,17180,17182,17184,17186],{"class":3927,"line":17176},211,[3925,17178,17179],{"class":4512},"            backgroundColor:",[3925,17181,13324],{"class":4512},[3925,17183,3595],{"class":4597},[3925,17185,13329],{"class":4512},[3925,17187,5051],{"class":4597},[3925,17189,17191],{"class":3927,"line":17190},212,[3925,17192,16032],{"class":4597},[3925,17194,17196,17198],{"class":3927,"line":17195},213,[3925,17197,16038],{"class":4597},[3925,17199,4016],{"class":4540},[3925,17201,17203],{"class":3927,"line":17202},214,[3925,17204,7330],{"class":4561},[3925,17206,17208,17210],{"class":3927,"line":17207},215,[3925,17209,7335],{"class":4561},[3925,17211,17212],{"class":4565},"Button\n",[3925,17214,17216,17219,17221],{"class":3927,"line":17215},216,[3925,17217,17218],{"class":4579},"          label",[3925,17220,4583],{"class":4508},[3925,17222,17223],{"class":4521},"\"Нова поїздка\"\n",[3925,17225,17227,17229,17231,17233,17235,17237],{"class":3927,"line":17226},217,[3925,17228,8929],{"class":4579},[3925,17230,4583],{"class":4508},[3925,17232,4594],{"class":4540},[3925,17234,8586],{"class":4597},[3925,17236,5614],{"class":4540},[3925,17238,5617],{"class":4597},[3925,17240,17242,17245,17247,17249,17251,17253],{"class":3927,"line":17241},218,[3925,17243,17244],{"class":4512},"            router",[3925,17246,3595],{"class":4597},[3925,17248,3650],{"class":4544},[3925,17250,4702],{"class":4597},[3925,17252,5107],{"class":4521},[3925,17254,4724],{"class":4597},[3925,17256,17258,17260],{"class":3927,"line":17257},219,[3925,17259,7422],{"class":4597},[3925,17261,4016],{"class":4540},[3925,17263,17265],{"class":3927,"line":17264},220,[3925,17266,7429],{"class":4561},[3925,17268,17270,17272,17274],{"class":3927,"line":17269},221,[3925,17271,7434],{"class":4561},[3925,17273,8398],{"class":4565},[3925,17275,4568],{"class":4561},[3925,17277,17279,17281,17283],{"class":3927,"line":17278},222,[3925,17280,4669],{"class":4561},[3925,17282,14674],{"class":4565},[3925,17284,4568],{"class":4561},[3925,17286,17288],{"class":3927,"line":17287},223,[3925,17289,4678],{"class":4508},[3925,17291,17293],{"class":3927,"line":17292},224,[3925,17294,4016],{"class":4508},[3925,17296,17298],{"class":3927,"line":17297},225,[3925,17299,3950],{"emptyLinePlaceholder":3949},[3925,17301,17303,17305,17307,17309,17311,17313,17315],{"class":3927,"line":17302},226,[3925,17304,5930],{"class":4540},[3925,17306,9037],{"class":5194},[3925,17308,5967],{"class":4508},[3925,17310,9042],{"class":4512},[3925,17312,3595],{"class":4508},[3925,17314,9047],{"class":4544},[3925,17316,9050],{"class":4508},[3925,17318,17320,17323],{"class":3927,"line":17319},227,[3925,17321,17322],{"class":4512},"  screen:",[3925,17324,5617],{"class":4508},[3925,17326,17328,17330,17332],{"class":3927,"line":17327},228,[3925,17329,9086],{"class":4512},[3925,17331,15345],{"class":5990},[3925,17333,5051],{"class":4508},[3925,17335,17337],{"class":3927,"line":17336},229,[3925,17338,6584],{"class":4508},[3925,17340,17342,17344],{"class":3927,"line":17341},230,[3925,17343,9078],{"class":4512},[3925,17345,5617],{"class":4508},[3925,17347,17349,17351,17353],{"class":3927,"line":17348},231,[3925,17350,9118],{"class":4512},[3925,17352,9064],{"class":5990},[3925,17354,5051],{"class":4508},[3925,17356,17358],{"class":3927,"line":17357},232,[3925,17359,6584],{"class":4508},[3925,17361,17363,17366],{"class":3927,"line":17362},233,[3925,17364,17365],{"class":4512},"  themeRow:",[3925,17367,5617],{"class":4508},[3925,17369,17371,17374,17377],{"class":3927,"line":17370},234,[3925,17372,17373],{"class":4512},"    flexDirection:",[3925,17375,17376],{"class":4521}," 'row'",[3925,17378,5051],{"class":4508},[3925,17380,17382,17385,17388],{"class":3927,"line":17381},235,[3925,17383,17384],{"class":4512},"    flexWrap:",[3925,17386,17387],{"class":4521}," 'wrap'",[3925,17389,5051],{"class":4508},[3925,17391,17393],{"class":3927,"line":17392},236,[3925,17394,6584],{"class":4508},[3925,17396,17398,17401],{"class":3927,"line":17397},237,[3925,17399,17400],{"class":4512},"  themeChip:",[3925,17402,5617],{"class":4508},[3925,17404,17406,17408,17410],{"class":3927,"line":17405},238,[3925,17407,9086],{"class":4512},[3925,17409,7612],{"class":5990},[3925,17411,5051],{"class":4508},[3925,17413,17415,17417,17419],{"class":3927,"line":17414},239,[3925,17416,9408],{"class":4512},[3925,17418,9100],{"class":5990},[3925,17420,5051],{"class":4508},[3925,17422,17424,17426,17428],{"class":3927,"line":17423},240,[3925,17425,9248],{"class":4512},[3925,17427,9100],{"class":5990},[3925,17429,5051],{"class":4508},[3925,17431,17433,17435,17437],{"class":3927,"line":17432},241,[3925,17434,9258],{"class":4512},[3925,17436,9064],{"class":5990},[3925,17438,5051],{"class":4508},[3925,17440,17442],{"class":3927,"line":17441},242,[3925,17443,6584],{"class":4508},[3925,17445,17447,17450],{"class":3927,"line":17446},243,[3925,17448,17449],{"class":4512},"  themeChipText:",[3925,17451,5617],{"class":4508},[3925,17453,17455,17457,17459],{"class":3927,"line":17454},244,[3925,17456,11430],{"class":4512},[3925,17458,7303],{"class":4521},[3925,17460,5051],{"class":4508},[3925,17462,17464],{"class":3927,"line":17463},245,[3925,17465,6584],{"class":4508},[3925,17467,17469,17472],{"class":3927,"line":17468},246,[3925,17470,17471],{"class":4512},"  listWrap:",[3925,17473,5617],{"class":4508},[3925,17475,17477,17479,17481],{"class":3927,"line":17476},247,[3925,17478,10105],{"class":4512},[3925,17480,9064],{"class":5990},[3925,17482,5051],{"class":4508},[3925,17484,17486],{"class":3927,"line":17485},248,[3925,17487,6584],{"class":4508},[3925,17489,17491,17494],{"class":3927,"line":17490},249,[3925,17492,17493],{"class":4512},"  empty:",[3925,17495,5617],{"class":4508},[3925,17497,17499,17501,17503],{"class":3927,"line":17498},250,[3925,17500,9427],{"class":4512},[3925,17502,9430],{"class":4521},[3925,17504,5051],{"class":4508},[3925,17506,17508,17510,17512],{"class":3927,"line":17507},251,[3925,17509,10122],{"class":4512},[3925,17511,9430],{"class":4521},[3925,17513,5051],{"class":4508},[3925,17515,17517],{"class":3927,"line":17516},252,[3925,17518,6584],{"class":4508},[3925,17520,17522,17525],{"class":3927,"line":17521},253,[3925,17523,17524],{"class":4512},"  emptyTitle:",[3925,17526,5617],{"class":4508},[3925,17528,17530,17533,17535],{"class":3927,"line":17529},254,[3925,17531,17532],{"class":4512},"    textAlign:",[3925,17534,9430],{"class":4521},[3925,17536,5051],{"class":4508},[3925,17538,17540],{"class":3927,"line":17539},255,[3925,17541,6584],{"class":4508},[3925,17543,17545,17548],{"class":3927,"line":17544},256,[3925,17546,17547],{"class":4512},"  emptyDesc:",[3925,17549,5617],{"class":4508},[3925,17551,17553,17555,17557],{"class":3927,"line":17552},257,[3925,17554,17532],{"class":4512},[3925,17556,9430],{"class":4521},[3925,17558,5051],{"class":4508},[3925,17560,17562],{"class":3927,"line":17561},258,[3925,17563,6584],{"class":4508},[3925,17565,17567,17569],{"class":3927,"line":17566},259,[3925,17568,9349],{"class":4512},[3925,17570,5617],{"class":4508},[3925,17572,17574,17576,17578],{"class":3927,"line":17573},260,[3925,17575,9366],{"class":4512},[3925,17577,9064],{"class":5990},[3925,17579,5051],{"class":4508},[3925,17581,17583],{"class":3927,"line":17582},261,[3925,17584,6584],{"class":4508},[3925,17586,17588],{"class":3927,"line":17587},262,[3925,17589,5739],{"class":4508},[3916,17591,17594],{"className":4489,"code":17592,"filename":17593,"language":4491,"meta":3921,"style":3921},"import { useCallback, useMemo } from 'react';\nimport {\n  Image,\n  Platform,\n  ScrollView,\n  StyleSheet,\n  View,\n} from 'react-native';\nimport { Stack, useLocalSearchParams, useRouter } from 'expo-router';\n\nimport {\n  getPlacesForTrip,\n  useTrips,\n  type Place,\n} from '@\u002Ffeatures\u002Ftrips';\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText, Button, Screen } from '@\u002Fshared\u002Fui';\n\n\u002F**\n * Деталі поїздки — вкладений Stack у вкладці «Поїздки».\n * Tab bar знизу лишається (на відміну від root-modal create-trip).\n *\u002F\nexport default function TripDetailsScreen() {\n  const { id } = useLocalSearchParams\u003C{ id: string }>();\n  const tripId = Array.isArray(id) ? id[0] : id;\n  const { getTrip } = useTrips();\n  const trip = tripId ? getTrip(tripId) : undefined;\n  const places = useMemo(\n    () => (tripId ? getPlacesForTrip(tripId) : []),\n    [tripId],\n  );\n  const { colors, spacing, radius } = useTheme();\n  const router = useRouter();\n\n  const openCreateModal = useCallback(() => {\n    router.push('\u002Fcreate-trip');\n  }, [router]);\n\n  if (!trip) {\n    return (\n      \u003CScreen>\n        \u003CStack.Screen options={{ title: 'Не знайдено' }} \u002F>\n        \u003CView style={[styles.center, { padding: spacing.lg }]}>\n          \u003CAppText variant=\"subtitle\">Поїздку не знайдено\u003C\u002FAppText>\n          \u003CAppText\n            variant=\"caption\"\n            color={colors.textSecondary}\n            style={{ marginTop: spacing.sm, textAlign: 'center' }}\n          >\n            Немає запису з id: {String(tripId)}. Можливо, список скинули\n            pull-to-refresh.\n          \u003C\u002FAppText>\n          \u003CButton\n            label=\"До списку\"\n            onPress={() => router.back()}\n            style={{ marginTop: spacing.md }}\n          \u002F>\n        \u003C\u002FView>\n      \u003C\u002FScreen>\n    );\n  }\n\n  return (\n    \u003CScreen style={styles.screen}>\n      \u003CStack.Screen options={{ title: trip.title }} \u002F>\n      \u003CScrollView\n        contentContainerStyle={{\n          paddingBottom: spacing.xl,\n        }}\n        showsVerticalScrollIndicator={false}\n      >\n        \u003CImage\n          source={{ uri: trip.coverUri }}\n          style={[styles.cover, { backgroundColor: colors.border }]}\n          resizeMode=\"cover\"\n        \u002F>\n        \u003CView style={{ padding: spacing.md, gap: spacing.sm }}>\n          \u003CAppText variant=\"title\">{trip.title}\u003C\u002FAppText>\n          \u003CAppText variant=\"caption\" color={colors.primary} style={styles.meta}>\n            {trip.dateLabel} · {trip.region}\n            {trip.plannedDays\n              ? ` · ${trip.plannedDays} дн.`\n              : ''}\n          \u003C\u002FAppText>\n\n          \u003CView style={[styles.badges, { gap: spacing.sm }]}>\n            {trip.isPrivate ? (\n              \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n                приватна\n              \u003C\u002FAppText>\n            ) : null}\n            {trip.hasItinerary ? (\n              \u003CAppText variant=\"caption\" color={colors.primary}>\n                є план маршруту\n              \u003C\u002FAppText>\n            ) : null}\n          \u003C\u002FView>\n\n          \u003CAppText style={{ marginTop: spacing.sm, lineHeight: 24 }}>\n            {trip.description}\n          \u003C\u002FAppText>\n\n          \u003CAppText\n            style={{ fontWeight: '700', marginTop: spacing.md }}\n          >\n            Місця в цій поїздці\n          \u003C\u002FAppText>\n          {places.length === 0 ? (\n            \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n              Поки немає точок у mock-даних для цієї поїздки.\n            \u003C\u002FAppText>\n          ) : (\n            places.map((place) => (\n              \u003CPlaceRow key={place.id} place={place} \u002F>\n            ))\n          )}\n\n          \u003CView style={{ gap: spacing.sm, marginTop: spacing.lg }}>\n            \u003CButton\n              label=\"Нова поїздка (modal)\"\n              onPress={openCreateModal}\n            \u002F>\n            \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n              Кнопка відкриває create-trip як modal на кореневому Stack —\n              вкладки ховаються під модалкою.\n            \u003C\u002FAppText>\n          \u003C\u002FView>\n        \u003C\u002FView>\n      \u003C\u002FScrollView>\n    \u003C\u002FScreen>\n  );\n}\n\nfunction PlaceRow({ place }: { place: Place }) {\n  const { colors, spacing, radius } = useTheme();\n  return (\n    \u003CView\n      style={[\n        styles.place,\n        {\n          backgroundColor: colors.surface,\n          borderColor: colors.border,\n          borderRadius: radius.md,\n          padding: spacing.sm,\n        },\n      ]}\n    >\n      \u003CAppText style={{ fontWeight: '700' }}>{place.name}\u003C\u002FAppText>\n      \u003CAppText variant=\"caption\" color={colors.primary}>\n        {place.city}\n      \u003C\u002FAppText>\n      \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n        {place.note}\n      \u003C\u002FAppText>\n    \u003C\u002FView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  screen: {\n    paddingHorizontal: 0,\n  },\n  center: {\n    flex: 1,\n    alignItems: 'center',\n    justifyContent: 'center',\n  },\n  cover: {\n    width: '100%',\n    height: 200,\n  },\n  meta: {\n    fontWeight: '600',\n  },\n  badges: {\n    flexDirection: 'row',\n    flexWrap: 'wrap',\n  },\n  place: {\n    borderWidth: 1,\n    marginTop: 8,\n    ...Platform.select({\n      ios: {\n        shadowColor: '#000',\n        shadowOpacity: 0.04,\n        shadowRadius: 6,\n        shadowOffset: { width: 0, height: 2 },\n      },\n      android: { elevation: 1 },\n      default: {},\n    }),\n  },\n});\n","app\u002F(tabs)\u002Ftrips\u002F[id].tsx",[3521,17595,17596,17617,17623,17630,17636,17643,17649,17655,17665,17689,17693,17699,17706,17712,17720,17730,17746,17770,17774,17778,17783,17788,17792,17805,17827,17859,17873,17897,17910,17932,17940,17944,17967,17979,17983,18000,18015,18023,18027,18037,18043,18051,18075,18112,18135,18141,18150,18167,18197,18202,18223,18228,18236,18242,18252,18275,18297,18301,18309,18317,18321,18325,18329,18335,18357,18385,18392,18402,18415,18421,18430,18434,18441,18466,18497,18507,18511,18549,18579,18622,18650,18661,18683,18693,18701,18705,18742,18757,18785,18790,18798,18807,18822,18850,18855,18863,18871,18879,18883,18917,18930,18938,18942,18948,18976,18980,18985,18993,19011,19039,19044,19052,19061,19080,19114,19119,19126,19130,19168,19174,19184,19198,19202,19230,19235,19240,19248,19256,19264,19272,19280,19284,19288,19292,19314,19336,19342,19348,19358,19368,19372,19384,19397,19411,19424,19428,19434,19438,19478,19506,19520,19528,19556,19568,19576,19584,19588,19592,19596,19612,19618,19626,19630,19636,19644,19652,19660,19664,19671,19681,19691,19695,19702,19710,19714,19721,19729,19737,19741,19748,19756,19764,19778,19785,19795,19805,19814,19833,19837,19851,19859,19864,19868],{"__ignoreMap":3921},[3925,17597,17598,17600,17602,17604,17606,17609,17611,17613,17615],{"class":3927,"line":3928},[3925,17599,4505],{"class":4504},[3925,17601,4509],{"class":4508},[3925,17603,14472],{"class":4512},[3925,17605,4191],{"class":4508},[3925,17607,17608],{"class":4512},"useMemo",[3925,17610,4515],{"class":4508},[3925,17612,4518],{"class":4504},[3925,17614,8122],{"class":4521},[3925,17616,4525],{"class":4508},[3925,17618,17619,17621],{"class":3927,"line":3934},[3925,17620,4505],{"class":4504},[3925,17622,5617],{"class":4508},[3925,17624,17625,17628],{"class":3927,"line":3940},[3925,17626,17627],{"class":4512},"  Image",[3925,17629,5051],{"class":4508},[3925,17631,17632,17634],{"class":3927,"line":3946},[3925,17633,10295],{"class":4512},[3925,17635,5051],{"class":4508},[3925,17637,17638,17641],{"class":3927,"line":3953},[3925,17639,17640],{"class":4512},"  ScrollView",[3925,17642,5051],{"class":4508},[3925,17644,17645,17647],{"class":3927,"line":3959},[3925,17646,8149],{"class":4512},[3925,17648,5051],{"class":4508},[3925,17650,17651,17653],{"class":3927,"line":3965},[3925,17652,8163],{"class":4512},[3925,17654,5051],{"class":4508},[3925,17656,17657,17659,17661,17663],{"class":3927,"line":3971},[3925,17658,8170],{"class":4508},[3925,17660,4518],{"class":4504},[3925,17662,8175],{"class":4521},[3925,17664,4525],{"class":4508},[3925,17666,17667,17669,17671,17673,17675,17677,17679,17681,17683,17685,17687],{"class":3927,"line":3977},[3925,17668,4505],{"class":4504},[3925,17670,4509],{"class":4508},[3925,17672,3523],{"class":4512},[3925,17674,4191],{"class":4508},[3925,17676,5913],{"class":4512},[3925,17678,4191],{"class":4508},[3925,17680,3539],{"class":4512},[3925,17682,4515],{"class":4508},[3925,17684,4518],{"class":4504},[3925,17686,4522],{"class":4521},[3925,17688,4525],{"class":4508},[3925,17690,17691],{"class":3927,"line":3983},[3925,17692,3950],{"emptyLinePlaceholder":3949},[3925,17694,17695,17697],{"class":3927,"line":3989},[3925,17696,4505],{"class":4504},[3925,17698,5617],{"class":4508},[3925,17700,17701,17704],{"class":3927,"line":3995},[3925,17702,17703],{"class":4512},"  getPlacesForTrip",[3925,17705,5051],{"class":4508},[3925,17707,17708,17710],{"class":3927,"line":4001},[3925,17709,14601],{"class":4512},[3925,17711,5051],{"class":4508},[3925,17713,17714,17716,17718],{"class":3927,"line":4007},[3925,17715,14608],{"class":4504},[3925,17717,14611],{"class":4512},[3925,17719,5051],{"class":4508},[3925,17721,17722,17724,17726,17728],{"class":3927,"line":4013},[3925,17723,8170],{"class":4508},[3925,17725,4518],{"class":4504},[3925,17727,13133],{"class":4521},[3925,17729,4525],{"class":4508},[3925,17731,17732,17734,17736,17738,17740,17742,17744],{"class":3927,"line":4019},[3925,17733,4505],{"class":4504},[3925,17735,4509],{"class":4508},[3925,17737,13148],{"class":4512},[3925,17739,4515],{"class":4508},[3925,17741,4518],{"class":4504},[3925,17743,13155],{"class":4521},[3925,17745,4525],{"class":4508},[3925,17747,17748,17750,17752,17754,17756,17758,17760,17762,17764,17766,17768],{"class":3927,"line":4024},[3925,17749,4505],{"class":4504},[3925,17751,4509],{"class":4508},[3925,17753,14664],{"class":4512},[3925,17755,4191],{"class":4508},[3925,17757,14669],{"class":4512},[3925,17759,4191],{"class":4508},[3925,17761,14674],{"class":4512},[3925,17763,4515],{"class":4508},[3925,17765,4518],{"class":4504},[3925,17767,14681],{"class":4521},[3925,17769,4525],{"class":4508},[3925,17771,17772],{"class":3927,"line":4030},[3925,17773,3950],{"emptyLinePlaceholder":3949},[3925,17775,17776],{"class":3927,"line":4036},[3925,17777,13166],{"class":4498},[3925,17779,17780],{"class":3927,"line":4041},[3925,17781,17782],{"class":4498}," * Деталі поїздки — вкладений Stack у вкладці «Поїздки».\n",[3925,17784,17785],{"class":3927,"line":4047},[3925,17786,17787],{"class":4498}," * Tab bar знизу лишається (на відміну від root-modal create-trip).\n",[3925,17789,17790],{"class":3927,"line":4053},[3925,17791,13196],{"class":4498},[3925,17793,17794,17796,17798,17800,17803],{"class":3927,"line":4059},[3925,17795,4534],{"class":4504},[3925,17797,4537],{"class":4504},[3925,17799,4541],{"class":4540},[3925,17801,17802],{"class":4544}," TripDetailsScreen",[3925,17804,4548],{"class":4508},[3925,17806,17807,17809,17811,17813,17815,17817,17819,17821,17823,17825],{"class":3927,"line":4065},[3925,17808,6909],{"class":4540},[3925,17810,4509],{"class":4508},[3925,17812,4716],{"class":5194},[3925,17814,5937],{"class":4508},[3925,17816,5913],{"class":4544},[3925,17818,5942],{"class":4508},[3925,17820,4716],{"class":4512},[3925,17822,4767],{"class":4508},[3925,17824,5949],{"class":4565},[3925,17826,5952],{"class":4508},[3925,17828,17829,17831,17833,17835,17837,17839,17841,17843,17845,17847,17849,17851,17853,17855,17857],{"class":3927,"line":4070},[3925,17830,6909],{"class":4540},[3925,17832,5964],{"class":5194},[3925,17834,5967],{"class":4508},[3925,17836,5970],{"class":4512},[3925,17838,3595],{"class":4508},[3925,17840,5975],{"class":4544},[3925,17842,4702],{"class":4508},[3925,17844,4716],{"class":4512},[3925,17846,5982],{"class":4508},[3925,17848,4716],{"class":4512},[3925,17850,5987],{"class":4508},[3925,17852,5991],{"class":5990},[3925,17854,5994],{"class":4508},[3925,17856,4716],{"class":4512},[3925,17858,4525],{"class":4508},[3925,17860,17861,17863,17865,17867,17869,17871],{"class":3927,"line":4076},[3925,17862,6909],{"class":4540},[3925,17864,4509],{"class":4508},[3925,17866,6024],{"class":5194},[3925,17868,5937],{"class":4508},[3925,17870,14822],{"class":4544},[3925,17872,7020],{"class":4508},[3925,17874,17875,17877,17879,17881,17883,17885,17887,17889,17891,17893,17895],{"class":3927,"line":4082},[3925,17876,6909],{"class":4540},[3925,17878,6013],{"class":5194},[3925,17880,5967],{"class":4508},[3925,17882,6018],{"class":4512},[3925,17884,6021],{"class":4508},[3925,17886,6024],{"class":4544},[3925,17888,4702],{"class":4508},[3925,17890,6018],{"class":4512},[3925,17892,6031],{"class":4508},[3925,17894,6034],{"class":4540},[3925,17896,4525],{"class":4508},[3925,17898,17899,17901,17904,17906,17908],{"class":3927,"line":4088},[3925,17900,6909],{"class":4540},[3925,17902,17903],{"class":5194}," places",[3925,17905,5967],{"class":4508},[3925,17907,17608],{"class":4544},[3925,17909,10621],{"class":4508},[3925,17911,17912,17915,17917,17919,17921,17923,17925,17927,17929],{"class":3927,"line":4093},[3925,17913,17914],{"class":4508},"    () ",[3925,17916,5614],{"class":4540},[3925,17918,3576],{"class":4508},[3925,17920,6018],{"class":4512},[3925,17922,6021],{"class":4508},[3925,17924,12235],{"class":4544},[3925,17926,4702],{"class":4508},[3925,17928,6018],{"class":4512},[3925,17930,17931],{"class":4508},") : []),\n",[3925,17933,17934,17936,17938],{"class":3927,"line":4098},[3925,17935,14977],{"class":4508},[3925,17937,6018],{"class":4512},[3925,17939,14982],{"class":4508},[3925,17941,17942],{"class":3927,"line":6720},[3925,17943,4678],{"class":4508},[3925,17945,17946,17948,17950,17952,17954,17956,17958,17961,17963,17965],{"class":3927,"line":6738},[3925,17947,6909],{"class":4540},[3925,17949,4509],{"class":4508},[3925,17951,13240],{"class":5194},[3925,17953,4191],{"class":4508},[3925,17955,14837],{"class":5194},[3925,17957,4191],{"class":4508},[3925,17959,17960],{"class":5194},"radius",[3925,17962,5937],{"class":4508},[3925,17964,13148],{"class":4544},[3925,17966,7020],{"class":4508},[3925,17968,17969,17971,17973,17975,17977],{"class":3927,"line":6787},[3925,17970,6909],{"class":4540},[3925,17972,8304],{"class":5194},[3925,17974,5967],{"class":4508},[3925,17976,3539],{"class":4544},[3925,17978,7020],{"class":4508},[3925,17980,17981],{"class":3927,"line":6792},[3925,17982,3950],{"emptyLinePlaceholder":3949},[3925,17984,17985,17987,17990,17992,17994,17996,17998],{"class":3927,"line":6797},[3925,17986,6909],{"class":4540},[3925,17988,17989],{"class":5194}," openCreateModal",[3925,17991,5967],{"class":4508},[3925,17993,14472],{"class":4544},[3925,17995,8322],{"class":4508},[3925,17997,5614],{"class":4540},[3925,17999,5617],{"class":4508},[3925,18001,18002,18005,18007,18009,18011,18013],{"class":3927,"line":6827},[3925,18003,18004],{"class":4512},"    router",[3925,18006,3595],{"class":4508},[3925,18008,3650],{"class":4544},[3925,18010,4702],{"class":4508},[3925,18012,5107],{"class":4521},[3925,18014,4724],{"class":4508},[3925,18016,18017,18019,18021],{"class":3927,"line":6862},[3925,18018,15147],{"class":4508},[3925,18020,4695],{"class":4512},[3925,18022,15152],{"class":4508},[3925,18024,18025],{"class":3927,"line":6867},[3925,18026,3950],{"emptyLinePlaceholder":3949},[3925,18028,18029,18031,18033,18035],{"class":3927,"line":6872},[3925,18030,9669],{"class":4504},[3925,18032,6044],{"class":4508},[3925,18034,4711],{"class":4512},[3925,18036,6049],{"class":4508},[3925,18038,18039,18041],{"class":3927,"line":6906},[3925,18040,9680],{"class":4504},[3925,18042,4556],{"class":4508},[3925,18044,18045,18047,18049],{"class":3927,"line":6921},[3925,18046,4573],{"class":4561},[3925,18048,14674],{"class":4565},[3925,18050,4568],{"class":4561},[3925,18052,18053,18055,18057,18059,18061,18063,18065,18067,18069,18071,18073],{"class":3927,"line":6941},[3925,18054,7335],{"class":4561},[3925,18056,4576],{"class":4565},[3925,18058,4589],{"class":4579},[3925,18060,4583],{"class":4508},[3925,18062,4594],{"class":4540},[3925,18064,4598],{"class":4597},[3925,18066,4644],{"class":4512},[3925,18068,9724],{"class":4521},[3925,18070,4607],{"class":4597},[3925,18072,4610],{"class":4540},[3925,18074,4613],{"class":4561},[3925,18076,18077,18079,18081,18083,18085,18087,18089,18091,18093,18095,18097,18099,18101,18103,18106,18108,18110],{"class":3927,"line":6962},[3925,18078,7335],{"class":4561},[3925,18080,8398],{"class":4565},[3925,18082,7232],{"class":4579},[3925,18084,4583],{"class":4508},[3925,18086,4594],{"class":4540},[3925,18088,5987],{"class":4597},[3925,18090,8365],{"class":4512},[3925,18092,3595],{"class":4597},[3925,18094,9701],{"class":4512},[3925,18096,16321],{"class":4597},[3925,18098,9205],{"class":4512},[3925,18100,15307],{"class":4512},[3925,18102,3595],{"class":4597},[3925,18104,18105],{"class":4512},"lg",[3925,18107,16342],{"class":4597},[3925,18109,4610],{"class":4540},[3925,18111,4568],{"class":4561},[3925,18113,18114,18116,18118,18120,18122,18124,18126,18129,18131,18133],{"class":3927,"line":6977},[3925,18115,8630],{"class":4561},[3925,18117,14664],{"class":4565},[3925,18119,15773],{"class":4579},[3925,18121,4583],{"class":4508},[3925,18123,15778],{"class":4521},[3925,18125,8439],{"class":4561},[3925,18127,18128],{"class":4508},"Поїздку не знайдено",[3925,18130,8445],{"class":4561},[3925,18132,14664],{"class":4565},[3925,18134,4568],{"class":4561},[3925,18136,18137,18139],{"class":3927,"line":6990},[3925,18138,8630],{"class":4561},[3925,18140,15815],{"class":4565},[3925,18142,18143,18146,18148],{"class":3927,"line":6996},[3925,18144,18145],{"class":4579},"            variant",[3925,18147,4583],{"class":4508},[3925,18149,15825],{"class":4521},[3925,18151,18152,18155,18157,18159,18161,18163,18165],{"class":3927,"line":7014},[3925,18153,18154],{"class":4579},"            color",[3925,18156,4583],{"class":4508},[3925,18158,4594],{"class":4540},[3925,18160,13240],{"class":4512},[3925,18162,3595],{"class":4597},[3925,18164,13752],{"class":4512},[3925,18166,4016],{"class":4540},[3925,18168,18169,18172,18174,18176,18178,18180,18182,18184,18186,18188,18191,18193,18195],{"class":3927,"line":7023},[3925,18170,18171],{"class":4579},"            style",[3925,18173,4583],{"class":4508},[3925,18175,4594],{"class":4540},[3925,18177,4598],{"class":4597},[3925,18179,9176],{"class":4512},[3925,18181,15307],{"class":4512},[3925,18183,3595],{"class":4597},[3925,18185,15372],{"class":4512},[3925,18187,4191],{"class":4597},[3925,18189,18190],{"class":4512},"textAlign:",[3925,18192,9430],{"class":4521},[3925,18194,4607],{"class":4597},[3925,18196,4016],{"class":4540},[3925,18198,18199],{"class":3927,"line":7032},[3925,18200,18201],{"class":4561},"          >\n",[3925,18203,18204,18207,18209,18212,18214,18216,18218,18220],{"class":3927,"line":7037},[3925,18205,18206],{"class":4508},"            Немає запису з id: ",[3925,18208,4594],{"class":4540},[3925,18210,18211],{"class":4544},"String",[3925,18213,4702],{"class":4597},[3925,18215,6018],{"class":4512},[3925,18217,4251],{"class":4597},[3925,18219,4610],{"class":4540},[3925,18221,18222],{"class":4508},". Можливо, список скинули\n",[3925,18224,18225],{"class":3927,"line":7042},[3925,18226,18227],{"class":4508},"            pull-to-refresh.\n",[3925,18229,18230,18232,18234],{"class":3927,"line":7070},[3925,18231,8857],{"class":4561},[3925,18233,14664],{"class":4565},[3925,18235,4568],{"class":4561},[3925,18237,18238,18240],{"class":3927,"line":7086},[3925,18239,8630],{"class":4561},[3925,18241,17212],{"class":4565},[3925,18243,18244,18247,18249],{"class":3927,"line":7097},[3925,18245,18246],{"class":4579},"            label",[3925,18248,4583],{"class":4508},[3925,18250,18251],{"class":4521},"\"До списку\"\n",[3925,18253,18254,18257,18259,18261,18263,18265,18267,18269,18271,18273],{"class":3927,"line":7114},[3925,18255,18256],{"class":4579},"            onPress",[3925,18258,4583],{"class":4508},[3925,18260,4594],{"class":4540},[3925,18262,8586],{"class":4597},[3925,18264,5614],{"class":4540},[3925,18266,8304],{"class":4512},[3925,18268,3595],{"class":4597},[3925,18270,4298],{"class":4544},[3925,18272,9801],{"class":4597},[3925,18274,4016],{"class":4540},[3925,18276,18277,18279,18281,18283,18285,18287,18289,18291,18293,18295],{"class":3927,"line":7119},[3925,18278,18171],{"class":4579},[3925,18280,4583],{"class":4508},[3925,18282,4594],{"class":4540},[3925,18284,4598],{"class":4597},[3925,18286,9176],{"class":4512},[3925,18288,15307],{"class":4512},[3925,18290,3595],{"class":4597},[3925,18292,15312],{"class":4512},[3925,18294,4607],{"class":4597},[3925,18296,4016],{"class":4540},[3925,18298,18299],{"class":3927,"line":9008},[3925,18300,15595],{"class":4561},[3925,18302,18303,18305,18307],{"class":3927,"line":9017},[3925,18304,8493],{"class":4561},[3925,18306,8398],{"class":4565},[3925,18308,4568],{"class":4561},[3925,18310,18311,18313,18315],{"class":3927,"line":9022},[3925,18312,7434],{"class":4561},[3925,18314,14674],{"class":4565},[3925,18316,4568],{"class":4561},[3925,18318,18319],{"class":3927,"line":9027},[3925,18320,9831],{"class":4508},[3925,18322,18323],{"class":3927,"line":9032},[3925,18324,4004],{"class":4508},[3925,18326,18327],{"class":3927,"line":9053},[3925,18328,3950],{"emptyLinePlaceholder":3949},[3925,18330,18331,18333],{"class":3927,"line":9075},[3925,18332,4553],{"class":4504},[3925,18334,4556],{"class":4508},[3925,18336,18337,18339,18341,18343,18345,18347,18349,18351,18353,18355],{"class":3927,"line":9083},[3925,18338,4562],{"class":4561},[3925,18340,14674],{"class":4565},[3925,18342,7232],{"class":4579},[3925,18344,4583],{"class":4508},[3925,18346,4594],{"class":4540},[3925,18348,8365],{"class":4512},[3925,18350,3595],{"class":4597},[3925,18352,15918],{"class":4512},[3925,18354,4610],{"class":4540},[3925,18356,4568],{"class":4561},[3925,18358,18359,18361,18363,18365,18367,18369,18371,18373,18375,18377,18379,18381,18383],{"class":3927,"line":9094},[3925,18360,4573],{"class":4561},[3925,18362,4576],{"class":4565},[3925,18364,4589],{"class":4579},[3925,18366,4583],{"class":4508},[3925,18368,4594],{"class":4540},[3925,18370,4598],{"class":4597},[3925,18372,4644],{"class":4512},[3925,18374,6013],{"class":4512},[3925,18376,3595],{"class":4597},[3925,18378,6884],{"class":4512},[3925,18380,4607],{"class":4597},[3925,18382,4610],{"class":4540},[3925,18384,4613],{"class":4561},[3925,18386,18387,18389],{"class":3927,"line":9105},[3925,18388,4573],{"class":4561},[3925,18390,18391],{"class":4565},"ScrollView\n",[3925,18393,18394,18396,18398,18400],{"class":3927,"line":9115},[3925,18395,8561],{"class":4579},[3925,18397,4583],{"class":4508},[3925,18399,4594],{"class":4540},[3925,18401,5040],{"class":4597},[3925,18403,18404,18407,18409,18411,18413],{"class":3927,"line":9125},[3925,18405,18406],{"class":4512},"          paddingBottom:",[3925,18408,15307],{"class":4512},[3925,18410,3595],{"class":4597},[3925,18412,15734],{"class":4512},[3925,18414,5051],{"class":4597},[3925,18416,18417,18419],{"class":3927,"line":9135},[3925,18418,7323],{"class":4597},[3925,18420,4016],{"class":4540},[3925,18422,18423,18426,18428],{"class":3927,"line":9140},[3925,18424,18425],{"class":4579},"        showsVerticalScrollIndicator",[3925,18427,4583],{"class":4508},[3925,18429,15527],{"class":4540},[3925,18431,18432],{"class":3927,"line":9168},[3925,18433,7330],{"class":4561},[3925,18435,18436,18438],{"class":3927,"line":9197},[3925,18437,7335],{"class":4561},[3925,18439,18440],{"class":4565},"Image\n",[3925,18442,18443,18446,18448,18450,18452,18455,18457,18459,18462,18464],{"class":3927,"line":9226},[3925,18444,18445],{"class":4579},"          source",[3925,18447,4583],{"class":4508},[3925,18449,4594],{"class":4540},[3925,18451,4598],{"class":4597},[3925,18453,18454],{"class":4512},"uri:",[3925,18456,6013],{"class":4512},[3925,18458,3595],{"class":4597},[3925,18460,18461],{"class":4512},"coverUri",[3925,18463,4607],{"class":4597},[3925,18465,4016],{"class":4540},[3925,18467,18468,18470,18472,18474,18476,18478,18480,18483,18485,18487,18489,18491,18493,18495],{"class":3927,"line":9234},[3925,18469,8911],{"class":4579},[3925,18471,4583],{"class":4508},[3925,18473,4594],{"class":4540},[3925,18475,5987],{"class":4597},[3925,18477,8365],{"class":4512},[3925,18479,3595],{"class":4597},[3925,18481,18482],{"class":4512},"cover",[3925,18484,16321],{"class":4597},[3925,18486,7267],{"class":4512},[3925,18488,13324],{"class":4512},[3925,18490,3595],{"class":4597},[3925,18492,13783],{"class":4512},[3925,18494,16342],{"class":4597},[3925,18496,4016],{"class":4540},[3925,18498,18499,18502,18504],{"class":3927,"line":9245},[3925,18500,18501],{"class":4579},"          resizeMode",[3925,18503,4583],{"class":4508},[3925,18505,18506],{"class":4521},"\"cover\"\n",[3925,18508,18509],{"class":3927,"line":9255},[3925,18510,7429],{"class":4561},[3925,18512,18513,18515,18517,18519,18521,18523,18525,18527,18529,18531,18533,18535,18537,18539,18541,18543,18545,18547],{"class":3927,"line":9265},[3925,18514,7335],{"class":4561},[3925,18516,8398],{"class":4565},[3925,18518,7232],{"class":4579},[3925,18520,4583],{"class":4508},[3925,18522,4594],{"class":4540},[3925,18524,4598],{"class":4597},[3925,18526,9205],{"class":4512},[3925,18528,15307],{"class":4512},[3925,18530,3595],{"class":4597},[3925,18532,15312],{"class":4512},[3925,18534,4191],{"class":4597},[3925,18536,11369],{"class":4512},[3925,18538,15307],{"class":4512},[3925,18540,3595],{"class":4597},[3925,18542,15372],{"class":4512},[3925,18544,4607],{"class":4597},[3925,18546,4610],{"class":4540},[3925,18548,4568],{"class":4561},[3925,18550,18551,18553,18555,18557,18559,18561,18563,18565,18567,18569,18571,18573,18575,18577],{"class":3927,"line":9275},[3925,18552,8630],{"class":4561},[3925,18554,14664],{"class":4565},[3925,18556,15773],{"class":4579},[3925,18558,4583],{"class":4508},[3925,18560,16059],{"class":4521},[3925,18562,8439],{"class":4561},[3925,18564,4594],{"class":4540},[3925,18566,4711],{"class":4512},[3925,18568,3595],{"class":4597},[3925,18570,6884],{"class":4512},[3925,18572,4610],{"class":4540},[3925,18574,8445],{"class":4561},[3925,18576,14664],{"class":4565},[3925,18578,4568],{"class":4561},[3925,18580,18581,18583,18585,18587,18589,18591,18593,18595,18597,18599,18601,18603,18605,18607,18609,18611,18613,18615,18618,18620],{"class":3927,"line":9286},[3925,18582,8630],{"class":4561},[3925,18584,14664],{"class":4565},[3925,18586,15773],{"class":4579},[3925,18588,4583],{"class":4508},[3925,18590,16084],{"class":4521},[3925,18592,7720],{"class":4579},[3925,18594,4583],{"class":4508},[3925,18596,4594],{"class":4540},[3925,18598,13240],{"class":4512},[3925,18600,3595],{"class":4597},[3925,18602,13358],{"class":4512},[3925,18604,4610],{"class":4540},[3925,18606,7232],{"class":4579},[3925,18608,4583],{"class":4508},[3925,18610,4594],{"class":4540},[3925,18612,8365],{"class":4512},[3925,18614,3595],{"class":4597},[3925,18616,18617],{"class":4512},"meta",[3925,18619,4610],{"class":4540},[3925,18621,4568],{"class":4561},[3925,18623,18624,18627,18629,18631,18634,18636,18639,18641,18643,18645,18648],{"class":3927,"line":9291},[3925,18625,18626],{"class":4540},"            {",[3925,18628,4711],{"class":4512},[3925,18630,3595],{"class":4597},[3925,18632,18633],{"class":4512},"dateLabel",[3925,18635,4610],{"class":4540},[3925,18637,18638],{"class":4508}," · ",[3925,18640,4594],{"class":4540},[3925,18642,4711],{"class":4512},[3925,18644,3595],{"class":4597},[3925,18646,18647],{"class":4512},"region",[3925,18649,4016],{"class":4540},[3925,18651,18652,18654,18656,18658],{"class":3927,"line":9319},[3925,18653,18626],{"class":4540},[3925,18655,4711],{"class":4512},[3925,18657,3595],{"class":4597},[3925,18659,18660],{"class":4512},"plannedDays\n",[3925,18662,18663,18666,18669,18671,18673,18675,18678,18680],{"class":3927,"line":9346},[3925,18664,18665],{"class":4508},"              ?",[3925,18667,18668],{"class":4521}," ` · ",[3925,18670,4708],{"class":4540},[3925,18672,4711],{"class":4512},[3925,18674,3595],{"class":4597},[3925,18676,18677],{"class":4512},"plannedDays",[3925,18679,4610],{"class":4540},[3925,18681,18682],{"class":4521}," дн.`\n",[3925,18684,18685,18688,18691],{"class":3927,"line":9354},[3925,18686,18687],{"class":4508},"              :",[3925,18689,18690],{"class":4521}," ''",[3925,18692,4016],{"class":4540},[3925,18694,18695,18697,18699],{"class":3927,"line":9363},[3925,18696,8857],{"class":4561},[3925,18698,14664],{"class":4565},[3925,18700,4568],{"class":4561},[3925,18702,18703],{"class":3927,"line":9373},[3925,18704,3950],{"emptyLinePlaceholder":3949},[3925,18706,18707,18709,18711,18713,18715,18717,18719,18721,18723,18726,18728,18730,18732,18734,18736,18738,18740],{"class":3927,"line":9383},[3925,18708,8630],{"class":4561},[3925,18710,8398],{"class":4565},[3925,18712,7232],{"class":4579},[3925,18714,4583],{"class":4508},[3925,18716,4594],{"class":4540},[3925,18718,5987],{"class":4597},[3925,18720,8365],{"class":4512},[3925,18722,3595],{"class":4597},[3925,18724,18725],{"class":4512},"badges",[3925,18727,16321],{"class":4597},[3925,18729,11369],{"class":4512},[3925,18731,15307],{"class":4512},[3925,18733,3595],{"class":4597},[3925,18735,15372],{"class":4512},[3925,18737,16342],{"class":4597},[3925,18739,4610],{"class":4540},[3925,18741,4568],{"class":4561},[3925,18743,18744,18746,18748,18750,18753,18755],{"class":3927,"line":9388},[3925,18745,18626],{"class":4540},[3925,18747,4711],{"class":4512},[3925,18749,3595],{"class":4597},[3925,18751,18752],{"class":4512},"isPrivate",[3925,18754,10922],{"class":4508},[3925,18756,4556],{"class":4597},[3925,18758,18759,18761,18763,18765,18767,18769,18771,18773,18775,18777,18779,18781,18783],{"class":3927,"line":9396},[3925,18760,8745],{"class":4561},[3925,18762,14664],{"class":4565},[3925,18764,15773],{"class":4579},[3925,18766,4583],{"class":4508},[3925,18768,16084],{"class":4521},[3925,18770,7720],{"class":4579},[3925,18772,4583],{"class":4508},[3925,18774,4594],{"class":4540},[3925,18776,13240],{"class":4512},[3925,18778,3595],{"class":4597},[3925,18780,13752],{"class":4512},[3925,18782,4610],{"class":4540},[3925,18784,4568],{"class":4561},[3925,18786,18787],{"class":3927,"line":9405},[3925,18788,18789],{"class":4597},"                приватна\n",[3925,18791,18792,18794,18796],{"class":3927,"line":9415},[3925,18793,8839],{"class":4561},[3925,18795,14664],{"class":4565},[3925,18797,4568],{"class":4561},[3925,18799,18800,18803,18805],{"class":3927,"line":9424},[3925,18801,18802],{"class":4597},"            ) ",[3925,18804,4974],{"class":4508},[3925,18806,15613],{"class":4540},[3925,18808,18809,18811,18813,18815,18818,18820],{"class":3927,"line":9435},[3925,18810,18626],{"class":4540},[3925,18812,4711],{"class":4512},[3925,18814,3595],{"class":4597},[3925,18816,18817],{"class":4512},"hasItinerary",[3925,18819,10922],{"class":4508},[3925,18821,4556],{"class":4597},[3925,18823,18824,18826,18828,18830,18832,18834,18836,18838,18840,18842,18844,18846,18848],{"class":3927,"line":9440},[3925,18825,8745],{"class":4561},[3925,18827,14664],{"class":4565},[3925,18829,15773],{"class":4579},[3925,18831,4583],{"class":4508},[3925,18833,16084],{"class":4521},[3925,18835,7720],{"class":4579},[3925,18837,4583],{"class":4508},[3925,18839,4594],{"class":4540},[3925,18841,13240],{"class":4512},[3925,18843,3595],{"class":4597},[3925,18845,13358],{"class":4512},[3925,18847,4610],{"class":4540},[3925,18849,4568],{"class":4561},[3925,18851,18852],{"class":3927,"line":9460},[3925,18853,18854],{"class":4597},"                є план маршруту\n",[3925,18856,18857,18859,18861],{"class":3927,"line":11409},[3925,18858,8839],{"class":4561},[3925,18860,14664],{"class":4565},[3925,18862,4568],{"class":4561},[3925,18864,18865,18867,18869],{"class":3927,"line":11418},[3925,18866,18802],{"class":4597},[3925,18868,4974],{"class":4508},[3925,18870,15613],{"class":4540},[3925,18872,18873,18875,18877],{"class":3927,"line":11427},[3925,18874,8857],{"class":4561},[3925,18876,8398],{"class":4565},[3925,18878,4568],{"class":4561},[3925,18880,18881],{"class":3927,"line":11437},[3925,18882,3950],{"emptyLinePlaceholder":3949},[3925,18884,18885,18887,18889,18891,18893,18895,18897,18899,18901,18903,18905,18907,18909,18911,18913,18915],{"class":3927,"line":11446},[3925,18886,8630],{"class":4561},[3925,18888,14664],{"class":4565},[3925,18890,7232],{"class":4579},[3925,18892,4583],{"class":4508},[3925,18894,4594],{"class":4540},[3925,18896,4598],{"class":4597},[3925,18898,9176],{"class":4512},[3925,18900,15307],{"class":4512},[3925,18902,3595],{"class":4597},[3925,18904,15372],{"class":4512},[3925,18906,4191],{"class":4597},[3925,18908,12025],{"class":4512},[3925,18910,9150],{"class":5990},[3925,18912,4607],{"class":4597},[3925,18914,4610],{"class":4540},[3925,18916,4568],{"class":4561},[3925,18918,18919,18921,18923,18925,18928],{"class":3927,"line":11457},[3925,18920,18626],{"class":4540},[3925,18922,4711],{"class":4512},[3925,18924,3595],{"class":4597},[3925,18926,18927],{"class":4512},"description",[3925,18929,4016],{"class":4540},[3925,18931,18932,18934,18936],{"class":3927,"line":11462},[3925,18933,8857],{"class":4561},[3925,18935,14664],{"class":4565},[3925,18937,4568],{"class":4561},[3925,18939,18940],{"class":3927,"line":11470},[3925,18941,3950],{"emptyLinePlaceholder":3949},[3925,18943,18944,18946],{"class":3927,"line":11479},[3925,18945,8630],{"class":4561},[3925,18947,15815],{"class":4565},[3925,18949,18950,18952,18954,18956,18958,18960,18962,18964,18966,18968,18970,18972,18974],{"class":3927,"line":11488},[3925,18951,18171],{"class":4579},[3925,18953,4583],{"class":4508},[3925,18955,4594],{"class":4540},[3925,18957,4598],{"class":4597},[3925,18959,7300],{"class":4512},[3925,18961,9308],{"class":4521},[3925,18963,4191],{"class":4597},[3925,18965,9176],{"class":4512},[3925,18967,15307],{"class":4512},[3925,18969,3595],{"class":4597},[3925,18971,15312],{"class":4512},[3925,18973,4607],{"class":4597},[3925,18975,4016],{"class":4540},[3925,18977,18978],{"class":3927,"line":11497},[3925,18979,18201],{"class":4561},[3925,18981,18982],{"class":3927,"line":11506},[3925,18983,18984],{"class":4508},"            Місця в цій поїздці\n",[3925,18986,18987,18989,18991],{"class":3927,"line":11515},[3925,18988,8857],{"class":4561},[3925,18990,14664],{"class":4565},[3925,18992,4568],{"class":4561},[3925,18994,18995,18997,18999,19001,19003,19005,19007,19009],{"class":3927,"line":11524},[3925,18996,16225],{"class":4540},[3925,18998,4772],{"class":4512},[3925,19000,3595],{"class":4597},[3925,19002,8486],{"class":4512},[3925,19004,10916],{"class":4508},[3925,19006,15345],{"class":5990},[3925,19008,10922],{"class":4508},[3925,19010,4556],{"class":4597},[3925,19012,19013,19015,19017,19019,19021,19023,19025,19027,19029,19031,19033,19035,19037],{"class":3927,"line":11533},[3925,19014,7697],{"class":4561},[3925,19016,14664],{"class":4565},[3925,19018,15773],{"class":4579},[3925,19020,4583],{"class":4508},[3925,19022,16084],{"class":4521},[3925,19024,7720],{"class":4579},[3925,19026,4583],{"class":4508},[3925,19028,4594],{"class":4540},[3925,19030,13240],{"class":4512},[3925,19032,3595],{"class":4597},[3925,19034,13752],{"class":4512},[3925,19036,4610],{"class":4540},[3925,19038,4568],{"class":4561},[3925,19040,19041],{"class":3927,"line":11542},[3925,19042,19043],{"class":4597},"              Поки немає точок у mock-даних для цієї поїздки.\n",[3925,19045,19046,19048,19050],{"class":3927,"line":11547},[3925,19047,8848],{"class":4561},[3925,19049,14664],{"class":4565},[3925,19051,4568],{"class":4561},[3925,19053,19054,19057,19059],{"class":3927,"line":11563},[3925,19055,19056],{"class":4597},"          ) ",[3925,19058,4974],{"class":4508},[3925,19060,4556],{"class":4597},[3925,19062,19063,19066,19068,19070,19072,19074,19076,19078],{"class":3927,"line":11570},[3925,19064,19065],{"class":4512},"            places",[3925,19067,3595],{"class":4597},[3925,19069,16359],{"class":4544},[3925,19071,6695],{"class":4597},[3925,19073,15010],{"class":4512},[3925,19075,6701],{"class":4597},[3925,19077,5614],{"class":4540},[3925,19079,4556],{"class":4597},[3925,19081,19082,19084,19087,19090,19092,19094,19096,19098,19100,19102,19104,19106,19108,19110,19112],{"class":3927,"line":11580},[3925,19083,8745],{"class":4561},[3925,19085,19086],{"class":4565},"PlaceRow",[3925,19088,19089],{"class":4579}," key",[3925,19091,4583],{"class":4508},[3925,19093,4594],{"class":4540},[3925,19095,15010],{"class":4512},[3925,19097,3595],{"class":4597},[3925,19099,4716],{"class":4512},[3925,19101,4610],{"class":4540},[3925,19103,15489],{"class":4579},[3925,19105,4583],{"class":4508},[3925,19107,4594],{"class":4540},[3925,19109,15010],{"class":4512},[3925,19111,4610],{"class":4540},[3925,19113,4613],{"class":4561},[3925,19115,19116],{"class":3927,"line":11589},[3925,19117,19118],{"class":4597},"            ))\n",[3925,19120,19121,19124],{"class":3927,"line":11598},[3925,19122,19123],{"class":4597},"          )",[3925,19125,4016],{"class":4540},[3925,19127,19128],{"class":3927,"line":11607},[3925,19129,3950],{"emptyLinePlaceholder":3949},[3925,19131,19132,19134,19136,19138,19140,19142,19144,19146,19148,19150,19152,19154,19156,19158,19160,19162,19164,19166],{"class":3927,"line":11616},[3925,19133,8630],{"class":4561},[3925,19135,8398],{"class":4565},[3925,19137,7232],{"class":4579},[3925,19139,4583],{"class":4508},[3925,19141,4594],{"class":4540},[3925,19143,4598],{"class":4597},[3925,19145,11369],{"class":4512},[3925,19147,15307],{"class":4512},[3925,19149,3595],{"class":4597},[3925,19151,15372],{"class":4512},[3925,19153,4191],{"class":4597},[3925,19155,9176],{"class":4512},[3925,19157,15307],{"class":4512},[3925,19159,3595],{"class":4597},[3925,19161,18105],{"class":4512},[3925,19163,4607],{"class":4597},[3925,19165,4610],{"class":4540},[3925,19167,4568],{"class":4561},[3925,19169,19170,19172],{"class":3927,"line":11621},[3925,19171,7697],{"class":4561},[3925,19173,17212],{"class":4565},[3925,19175,19176,19179,19181],{"class":3927,"line":11640},[3925,19177,19178],{"class":4579},"              label",[3925,19180,4583],{"class":4508},[3925,19182,19183],{"class":4521},"\"Нова поїздка (modal)\"\n",[3925,19185,19186,19189,19191,19193,19196],{"class":3927,"line":15952},[3925,19187,19188],{"class":4579},"              onPress",[3925,19190,4583],{"class":4508},[3925,19192,4594],{"class":4540},[3925,19194,19195],{"class":4512},"openCreateModal",[3925,19197,4016],{"class":4540},[3925,19199,19200],{"class":3927,"line":15958},[3925,19201,7847],{"class":4561},[3925,19203,19204,19206,19208,19210,19212,19214,19216,19218,19220,19222,19224,19226,19228],{"class":3927,"line":15972},[3925,19205,7697],{"class":4561},[3925,19207,14664],{"class":4565},[3925,19209,15773],{"class":4579},[3925,19211,4583],{"class":4508},[3925,19213,16084],{"class":4521},[3925,19215,7720],{"class":4579},[3925,19217,4583],{"class":4508},[3925,19219,4594],{"class":4540},[3925,19221,13240],{"class":4512},[3925,19223,3595],{"class":4597},[3925,19225,13752],{"class":4512},[3925,19227,4610],{"class":4540},[3925,19229,4568],{"class":4561},[3925,19231,19232],{"class":3927,"line":15986},[3925,19233,19234],{"class":4508},"              Кнопка відкриває create-trip як modal на кореневому Stack —\n",[3925,19236,19237],{"class":3927,"line":16000},[3925,19238,19239],{"class":4508},"              вкладки ховаються під модалкою.\n",[3925,19241,19242,19244,19246],{"class":3927,"line":16015},[3925,19243,8848],{"class":4561},[3925,19245,14664],{"class":4565},[3925,19247,4568],{"class":4561},[3925,19249,19250,19252,19254],{"class":3927,"line":16029},[3925,19251,8857],{"class":4561},[3925,19253,8398],{"class":4565},[3925,19255,4568],{"class":4561},[3925,19257,19258,19260,19262],{"class":3927,"line":16035},[3925,19259,8493],{"class":4561},[3925,19261,8398],{"class":4565},[3925,19263,4568],{"class":4561},[3925,19265,19266,19268,19270],{"class":3927,"line":16043},[3925,19267,7434],{"class":4561},[3925,19269,9486],{"class":4565},[3925,19271,4568],{"class":4561},[3925,19273,19274,19276,19278],{"class":3927,"line":16048},[3925,19275,4669],{"class":4561},[3925,19277,14674],{"class":4565},[3925,19279,4568],{"class":4561},[3925,19281,19282],{"class":3927,"line":16073},[3925,19283,4678],{"class":4508},[3925,19285,19286],{"class":3927,"line":16109},[3925,19287,4016],{"class":4508},[3925,19289,19290],{"class":3927,"line":16135},[3925,19291,3950],{"emptyLinePlaceholder":3949},[3925,19293,19294,19296,19299,19301,19303,19305,19307,19309,19311],{"class":3927,"line":16144},[3925,19295,6677],{"class":4540},[3925,19297,19298],{"class":4544}," PlaceRow",[3925,19300,8674],{"class":4508},[3925,19302,15010],{"class":4512},[3925,19304,15179],{"class":4508},[3925,19306,15010],{"class":4512},[3925,19308,4767],{"class":4508},[3925,19310,14874],{"class":4565},[3925,19312,19313],{"class":4508}," }) {\n",[3925,19315,19316,19318,19320,19322,19324,19326,19328,19330,19332,19334],{"class":3927,"line":16151},[3925,19317,6909],{"class":4540},[3925,19319,4509],{"class":4508},[3925,19321,13240],{"class":5194},[3925,19323,4191],{"class":4508},[3925,19325,14837],{"class":5194},[3925,19327,4191],{"class":4508},[3925,19329,17960],{"class":5194},[3925,19331,5937],{"class":4508},[3925,19333,13148],{"class":4544},[3925,19335,7020],{"class":4508},[3925,19337,19338,19340],{"class":3927,"line":16161},[3925,19339,4553],{"class":4504},[3925,19341,4556],{"class":4508},[3925,19343,19344,19346],{"class":3927,"line":16172},[3925,19345,4562],{"class":4561},[3925,19347,15682],{"class":4565},[3925,19349,19350,19352,19354,19356],{"class":3927,"line":16186},[3925,19351,10883],{"class":4579},[3925,19353,4583],{"class":4508},[3925,19355,4594],{"class":4540},[3925,19357,15693],{"class":4597},[3925,19359,19360,19362,19364,19366],{"class":3927,"line":16200},[3925,19361,15698],{"class":4512},[3925,19363,3595],{"class":4597},[3925,19365,15010],{"class":4512},[3925,19367,5051],{"class":4597},[3925,19369,19370],{"class":3927,"line":16210},[3925,19371,10662],{"class":4597},[3925,19373,19374,19376,19378,19380,19382],{"class":3927,"line":16217},[3925,19375,7580],{"class":4512},[3925,19377,13324],{"class":4512},[3925,19379,3595],{"class":4597},[3925,19381,16513],{"class":4512},[3925,19383,5051],{"class":4597},[3925,19385,19386,19389,19391,19393,19395],{"class":3927,"line":16222},[3925,19387,19388],{"class":4512},"          borderColor:",[3925,19390,13324],{"class":4512},[3925,19392,3595],{"class":4597},[3925,19394,13783],{"class":4512},[3925,19396,5051],{"class":4597},[3925,19398,19399,19402,19405,19407,19409],{"class":3927,"line":16239},[3925,19400,19401],{"class":4512},"          borderRadius:",[3925,19403,19404],{"class":4512}," radius",[3925,19406,3595],{"class":4597},[3925,19408,15312],{"class":4512},[3925,19410,5051],{"class":4597},[3925,19412,19413,19416,19418,19420,19422],{"class":3927,"line":16274},[3925,19414,19415],{"class":4512},"          padding:",[3925,19417,15307],{"class":4512},[3925,19419,3595],{"class":4597},[3925,19421,15372],{"class":4512},[3925,19423,5051],{"class":4597},[3925,19425,19426],{"class":3927,"line":16285},[3925,19427,7599],{"class":4597},[3925,19429,19430,19432],{"class":3927,"line":16294},[3925,19431,15758],{"class":4597},[3925,19433,4016],{"class":4540},[3925,19435,19436],{"class":3927,"line":16299},[3925,19437,7632],{"class":4561},[3925,19439,19440,19442,19444,19446,19448,19450,19452,19454,19456,19458,19460,19462,19464,19466,19468,19470,19472,19474,19476],{"class":3927,"line":16349},[3925,19441,4573],{"class":4561},[3925,19443,14664],{"class":4565},[3925,19445,7232],{"class":4579},[3925,19447,4583],{"class":4508},[3925,19449,4594],{"class":4540},[3925,19451,4598],{"class":4597},[3925,19453,7300],{"class":4512},[3925,19455,9308],{"class":4521},[3925,19457,4607],{"class":4597},[3925,19459,4610],{"class":4540},[3925,19461,8439],{"class":4561},[3925,19463,4594],{"class":4540},[3925,19465,15010],{"class":4512},[3925,19467,3595],{"class":4597},[3925,19469,5317],{"class":4512},[3925,19471,4610],{"class":4540},[3925,19473,8445],{"class":4561},[3925,19475,14664],{"class":4565},[3925,19477,4568],{"class":4561},[3925,19479,19480,19482,19484,19486,19488,19490,19492,19494,19496,19498,19500,19502,19504],{"class":3927,"line":16372},[3925,19481,4573],{"class":4561},[3925,19483,14664],{"class":4565},[3925,19485,15773],{"class":4579},[3925,19487,4583],{"class":4508},[3925,19489,16084],{"class":4521},[3925,19491,7720],{"class":4579},[3925,19493,4583],{"class":4508},[3925,19495,4594],{"class":4540},[3925,19497,13240],{"class":4512},[3925,19499,3595],{"class":4597},[3925,19501,13358],{"class":4512},[3925,19503,4610],{"class":4540},[3925,19505,4568],{"class":4561},[3925,19507,19508,19511,19513,19515,19518],{"class":3927,"line":16398},[3925,19509,19510],{"class":4540},"        {",[3925,19512,15010],{"class":4512},[3925,19514,3595],{"class":4597},[3925,19516,19517],{"class":4512},"city",[3925,19519,4016],{"class":4540},[3925,19521,19522,19524,19526],{"class":3927,"line":16406},[3925,19523,7434],{"class":4561},[3925,19525,14664],{"class":4565},[3925,19527,4568],{"class":4561},[3925,19529,19530,19532,19534,19536,19538,19540,19542,19544,19546,19548,19550,19552,19554],{"class":3927,"line":16413},[3925,19531,4573],{"class":4561},[3925,19533,14664],{"class":4565},[3925,19535,15773],{"class":4579},[3925,19537,4583],{"class":4508},[3925,19539,16084],{"class":4521},[3925,19541,7720],{"class":4579},[3925,19543,4583],{"class":4508},[3925,19545,4594],{"class":4540},[3925,19547,13240],{"class":4512},[3925,19549,3595],{"class":4597},[3925,19551,13752],{"class":4512},[3925,19553,4610],{"class":4540},[3925,19555,4568],{"class":4561},[3925,19557,19558,19560,19562,19564,19566],{"class":3927,"line":16431},[3925,19559,19510],{"class":4540},[3925,19561,15010],{"class":4512},[3925,19563,3595],{"class":4597},[3925,19565,3682],{"class":4512},[3925,19567,4016],{"class":4540},[3925,19569,19570,19572,19574],{"class":3927,"line":16460},[3925,19571,7434],{"class":4561},[3925,19573,14664],{"class":4565},[3925,19575,4568],{"class":4561},[3925,19577,19578,19580,19582],{"class":3927,"line":16472},[3925,19579,4669],{"class":4561},[3925,19581,8398],{"class":4565},[3925,19583,4568],{"class":4561},[3925,19585,19586],{"class":3927,"line":16485},[3925,19587,4678],{"class":4508},[3925,19589,19590],{"class":3927,"line":16491},[3925,19591,4016],{"class":4508},[3925,19593,19594],{"class":3927,"line":16518},[3925,19595,3950],{"emptyLinePlaceholder":3949},[3925,19597,19598,19600,19602,19604,19606,19608,19610],{"class":3927,"line":16532},[3925,19599,5930],{"class":4540},[3925,19601,9037],{"class":5194},[3925,19603,5967],{"class":4508},[3925,19605,9042],{"class":4512},[3925,19607,3595],{"class":4508},[3925,19609,9047],{"class":4544},[3925,19611,9050],{"class":4508},[3925,19613,19614,19616],{"class":3927,"line":16538},[3925,19615,17322],{"class":4512},[3925,19617,5617],{"class":4508},[3925,19619,19620,19622,19624],{"class":3927,"line":16546},[3925,19621,9086],{"class":4512},[3925,19623,15345],{"class":5990},[3925,19625,5051],{"class":4508},[3925,19627,19628],{"class":3927,"line":16557},[3925,19629,6584],{"class":4508},[3925,19631,19632,19634],{"class":3927,"line":16578},[3925,19633,10098],{"class":4512},[3925,19635,5617],{"class":4508},[3925,19637,19638,19640,19642],{"class":3927,"line":16605},[3925,19639,10105],{"class":4512},[3925,19641,9064],{"class":5990},[3925,19643,5051],{"class":4508},[3925,19645,19646,19648,19650],{"class":3927,"line":16611},[3925,19647,9427],{"class":4512},[3925,19649,9430],{"class":4521},[3925,19651,5051],{"class":4508},[3925,19653,19654,19656,19658],{"class":3927,"line":16619},[3925,19655,10122],{"class":4512},[3925,19657,9430],{"class":4521},[3925,19659,5051],{"class":4508},[3925,19661,19662],{"class":3927,"line":16629},[3925,19663,6584],{"class":4508},[3925,19665,19666,19669],{"class":3927,"line":16661},[3925,19667,19668],{"class":4512},"  cover:",[3925,19670,5617],{"class":4508},[3925,19672,19673,19676,19679],{"class":3927,"line":16680},[3925,19674,19675],{"class":4512},"    width:",[3925,19677,19678],{"class":4521}," '100%'",[3925,19680,5051],{"class":4508},[3925,19682,19683,19686,19689],{"class":3927,"line":16686},[3925,19684,19685],{"class":4512},"    height:",[3925,19687,19688],{"class":5990}," 200",[3925,19690,5051],{"class":4508},[3925,19692,19693],{"class":3927,"line":16700},[3925,19694,6584],{"class":4508},[3925,19696,19697,19700],{"class":3927,"line":16710},[3925,19698,19699],{"class":4512},"  meta:",[3925,19701,5617],{"class":4508},[3925,19703,19704,19706,19708],{"class":3927,"line":16719},[3925,19705,11430],{"class":4512},[3925,19707,7303],{"class":4521},[3925,19709,5051],{"class":4508},[3925,19711,19712],{"class":3927,"line":16725},[3925,19713,6584],{"class":4508},[3925,19715,19716,19719],{"class":3927,"line":16733},[3925,19717,19718],{"class":4512},"  badges:",[3925,19720,5617],{"class":4508},[3925,19722,19723,19725,19727],{"class":3927,"line":16742},[3925,19724,17373],{"class":4512},[3925,19726,17376],{"class":4521},[3925,19728,5051],{"class":4508},[3925,19730,19731,19733,19735],{"class":3927,"line":16751},[3925,19732,17384],{"class":4512},[3925,19734,17387],{"class":4521},[3925,19736,5051],{"class":4508},[3925,19738,19739],{"class":3927,"line":16756},[3925,19740,6584],{"class":4508},[3925,19742,19743,19746],{"class":3927,"line":16780},[3925,19744,19745],{"class":4512},"  place:",[3925,19747,5617],{"class":4508},[3925,19749,19750,19752,19754],{"class":3927,"line":16788},[3925,19751,9258],{"class":4512},[3925,19753,9064],{"class":5990},[3925,19755,5051],{"class":4508},[3925,19757,19758,19760,19762],{"class":3927,"line":16802},[3925,19759,10200],{"class":4512},[3925,19761,9100],{"class":5990},[3925,19763,5051],{"class":4508},[3925,19765,19766,19769,19771,19773,19776],{"class":3927,"line":16817},[3925,19767,19768],{"class":4508},"    ...",[3925,19770,10908],{"class":4512},[3925,19772,3595],{"class":4508},[3925,19774,19775],{"class":4544},"select",[3925,19777,9050],{"class":4508},[3925,19779,19780,19783],{"class":3927,"line":16832},[3925,19781,19782],{"class":4512},"      ios:",[3925,19784,5617],{"class":4508},[3925,19786,19787,19790,19793],{"class":3927,"line":16847},[3925,19788,19789],{"class":4512},"        shadowColor:",[3925,19791,19792],{"class":4521}," '#000'",[3925,19794,5051],{"class":4508},[3925,19796,19797,19800,19803],{"class":3927,"line":16862},[3925,19798,19799],{"class":4512},"        shadowOpacity:",[3925,19801,19802],{"class":5990}," 0.04",[3925,19804,5051],{"class":4508},[3925,19806,19807,19810,19812],{"class":3927,"line":16874},[3925,19808,19809],{"class":4512},"        shadowRadius:",[3925,19811,9329],{"class":5990},[3925,19813,5051],{"class":4508},[3925,19815,19816,19819,19821,19823,19825,19827,19829,19831],{"class":3927,"line":16887},[3925,19817,19818],{"class":4512},"        shadowOffset:",[3925,19820,4509],{"class":4508},[3925,19822,15555],{"class":4512},[3925,19824,15345],{"class":5990},[3925,19826,4191],{"class":4508},[3925,19828,8604],{"class":4512},[3925,19830,15586],{"class":5990},[3925,19832,5667],{"class":4508},[3925,19834,19835],{"class":3927,"line":16900},[3925,19836,12879],{"class":4508},[3925,19838,19839,19842,19844,19847,19849],{"class":3927,"line":16913},[3925,19840,19841],{"class":4512},"      android:",[3925,19843,4509],{"class":4508},[3925,19845,19846],{"class":4512},"elevation:",[3925,19848,9064],{"class":5990},[3925,19850,5667],{"class":4508},[3925,19852,19853,19856],{"class":3927,"line":16920},[3925,19854,19855],{"class":4512},"      default:",[3925,19857,19858],{"class":4508}," {},\n",[3925,19860,19861],{"class":3927,"line":16962},[3925,19862,19863],{"class":4508},"    }),\n",[3925,19865,19866],{"class":3927,"line":16972},[3925,19867,6584],{"class":4508},[3925,19869,19870],{"class":3927,"line":16980},[3925,19871,5739],{"class":4508},[3916,19873,19876],{"className":4489,"code":19874,"filename":19875,"language":4491,"meta":3921,"style":3921},"import { useCallback, useState } from 'react';\nimport { FlatList, StyleSheet, View } from 'react-native';\nimport { useRouter } from 'expo-router';\n\nimport { mockPlaces, PlaceChip, type Place } from '@\u002Ffeatures\u002Ftrips';\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText, Screen } from '@\u002Fshared\u002Fui';\n\n\u002F**\n * Вкладка «Місця» — повний список місць (раніше лише горизонтальна стрічка на home).\n *\u002F\nexport default function PlacesScreen() {\n  const router = useRouter();\n  const { colors, spacing } = useTheme();\n  const [places] = useState\u003CPlace[]>(mockPlaces);\n\n  const handleOpenPlace = useCallback(\n    (place: Place) => {\n      router.push(`\u002Ftrips\u002F${place.tripId}`);\n    },\n    [router],\n  );\n\n  return (\n    \u003CScreen style={styles.screen}>\n      \u003CView\n        style={[\n          styles.header,\n          {\n            paddingHorizontal: spacing.md,\n            paddingTop: spacing.sm,\n            paddingBottom: spacing.md,\n            borderBottomColor: colors.border,\n          },\n        ]}\n      >\n        \u003CAppText variant=\"title\">Місця\u003C\u002FAppText>\n        \u003CAppText variant=\"caption\" style={{ marginTop: spacing.xs }}>\n          Усі збережені точки з mock-даних · {places.length}\n        \u003C\u002FAppText>\n      \u003C\u002FView>\n\n      \u003CFlatList\n        data={places}\n        keyExtractor={(item) => item.id}\n        numColumns={2}\n        columnWrapperStyle={{\n          gap: spacing.sm,\n          paddingHorizontal: spacing.md,\n        }}\n        contentContainerStyle={{\n          paddingTop: spacing.md,\n          paddingBottom: spacing.xl,\n          gap: spacing.sm,\n        }}\n        renderItem={({ item }) => (\n          \u003CView style={styles.cell}>\n            \u003CPlaceChip place={item} onPress={handleOpenPlace} \u002F>\n          \u003C\u002FView>\n        )}\n        ListEmptyComponent={\n          \u003CView style={styles.empty}>\n            \u003CAppText variant=\"subtitle\" style={styles.center}>\n              Місць поки немає\n            \u003C\u002FAppText>\n            \u003CAppText variant=\"caption\" color={colors.textSecondary} style={styles.center}>\n              Вони з’являться разом із поїздками.\n            \u003C\u002FAppText>\n          \u003C\u002FView>\n        }\n        showsVerticalScrollIndicator={false}\n      \u002F>\n    \u003C\u002FScreen>\n  );\n}\n\nconst styles = StyleSheet.create({\n  screen: {\n    paddingHorizontal: 0,\n  },\n  header: {\n    borderBottomWidth: 1,\n  },\n  cell: {\n    flex: 1,\n  },\n  empty: {\n    padding: 32,\n    gap: 8,\n  },\n  center: {\n    textAlign: 'center',\n  },\n});\n","app\u002F(tabs)\u002Fplaces.tsx",[3521,19877,19878,19898,19923,19939,19943,19969,19985,20005,20009,20013,20018,20022,20035,20047,20065,20087,20091,20103,20119,20145,20149,20157,20161,20165,20171,20193,20199,20209,20219,20223,20235,20247,20259,20271,20275,20281,20285,20308,20342,20357,20365,20373,20377,20383,20395,20419,20432,20443,20455,20467,20473,20483,20496,20508,20520,20526,20544,20567,20595,20603,20609,20617,20639,20667,20672,20680,20722,20727,20735,20743,20747,20755,20759,20767,20771,20775,20779,20795,20801,20809,20813,20819,20827,20831,20838,20846,20850,20856,20865,20874,20878,20884,20892,20896],{"__ignoreMap":3921},[3925,19879,19880,19882,19884,19886,19888,19890,19892,19894,19896],{"class":3927,"line":3928},[3925,19881,4505],{"class":4504},[3925,19883,4509],{"class":4508},[3925,19885,14472],{"class":4512},[3925,19887,4191],{"class":4508},[3925,19889,5552],{"class":4512},[3925,19891,4515],{"class":4508},[3925,19893,4518],{"class":4504},[3925,19895,8122],{"class":4521},[3925,19897,4525],{"class":4508},[3925,19899,19900,19902,19904,19907,19909,19911,19913,19915,19917,19919,19921],{"class":3927,"line":3934},[3925,19901,4505],{"class":4504},[3925,19903,4509],{"class":4508},[3925,19905,19906],{"class":4512},"FlatList",[3925,19908,4191],{"class":4508},[3925,19910,9042],{"class":4512},[3925,19912,4191],{"class":4508},[3925,19914,8398],{"class":4512},[3925,19916,4515],{"class":4508},[3925,19918,4518],{"class":4504},[3925,19920,8175],{"class":4521},[3925,19922,4525],{"class":4508},[3925,19924,19925,19927,19929,19931,19933,19935,19937],{"class":3927,"line":3940},[3925,19926,4505],{"class":4504},[3925,19928,4509],{"class":4508},[3925,19930,3539],{"class":4512},[3925,19932,4515],{"class":4508},[3925,19934,4518],{"class":4504},[3925,19936,4522],{"class":4521},[3925,19938,4525],{"class":4508},[3925,19940,19941],{"class":3927,"line":3946},[3925,19942,3950],{"emptyLinePlaceholder":3949},[3925,19944,19945,19947,19949,19951,19953,19955,19957,19959,19961,19963,19965,19967],{"class":3927,"line":3953},[3925,19946,4505],{"class":4504},[3925,19948,4509],{"class":4508},[3925,19950,14880],{"class":4512},[3925,19952,4191],{"class":4508},[3925,19954,15486],{"class":4512},[3925,19956,4191],{"class":4508},[3925,19958,6491],{"class":4504},[3925,19960,14611],{"class":4512},[3925,19962,4515],{"class":4508},[3925,19964,4518],{"class":4504},[3925,19966,13133],{"class":4521},[3925,19968,4525],{"class":4508},[3925,19970,19971,19973,19975,19977,19979,19981,19983],{"class":3927,"line":3959},[3925,19972,4505],{"class":4504},[3925,19974,4509],{"class":4508},[3925,19976,13148],{"class":4512},[3925,19978,4515],{"class":4508},[3925,19980,4518],{"class":4504},[3925,19982,13155],{"class":4521},[3925,19984,4525],{"class":4508},[3925,19986,19987,19989,19991,19993,19995,19997,19999,20001,20003],{"class":3927,"line":3965},[3925,19988,4505],{"class":4504},[3925,19990,4509],{"class":4508},[3925,19992,14664],{"class":4512},[3925,19994,4191],{"class":4508},[3925,19996,14674],{"class":4512},[3925,19998,4515],{"class":4508},[3925,20000,4518],{"class":4504},[3925,20002,14681],{"class":4521},[3925,20004,4525],{"class":4508},[3925,20006,20007],{"class":3927,"line":3971},[3925,20008,3950],{"emptyLinePlaceholder":3949},[3925,20010,20011],{"class":3927,"line":3977},[3925,20012,13166],{"class":4498},[3925,20014,20015],{"class":3927,"line":3983},[3925,20016,20017],{"class":4498}," * Вкладка «Місця» — повний список місць (раніше лише горизонтальна стрічка на home).\n",[3925,20019,20020],{"class":3927,"line":3989},[3925,20021,13196],{"class":4498},[3925,20023,20024,20026,20028,20030,20033],{"class":3927,"line":3995},[3925,20025,4534],{"class":4504},[3925,20027,4537],{"class":4504},[3925,20029,4541],{"class":4540},[3925,20031,20032],{"class":4544}," PlacesScreen",[3925,20034,4548],{"class":4508},[3925,20036,20037,20039,20041,20043,20045],{"class":3927,"line":4001},[3925,20038,6909],{"class":4540},[3925,20040,8304],{"class":5194},[3925,20042,5967],{"class":4508},[3925,20044,3539],{"class":4544},[3925,20046,7020],{"class":4508},[3925,20048,20049,20051,20053,20055,20057,20059,20061,20063],{"class":3927,"line":4007},[3925,20050,6909],{"class":4540},[3925,20052,4509],{"class":4508},[3925,20054,13240],{"class":5194},[3925,20056,4191],{"class":4508},[3925,20058,14837],{"class":5194},[3925,20060,5937],{"class":4508},[3925,20062,13148],{"class":4544},[3925,20064,7020],{"class":4508},[3925,20066,20067,20069,20071,20073,20075,20077,20079,20081,20083,20085],{"class":3927,"line":4013},[3925,20068,6909],{"class":4540},[3925,20070,8272],{"class":4508},[3925,20072,4772],{"class":5194},[3925,20074,8282],{"class":4508},[3925,20076,5552],{"class":4544},[3925,20078,5016],{"class":4508},[3925,20080,14874],{"class":4565},[3925,20082,14877],{"class":4508},[3925,20084,14880],{"class":4512},[3925,20086,4724],{"class":4508},[3925,20088,20089],{"class":3927,"line":4019},[3925,20090,3950],{"emptyLinePlaceholder":3949},[3925,20092,20093,20095,20097,20099,20101],{"class":3927,"line":4024},[3925,20094,6909],{"class":4540},[3925,20096,14997],{"class":5194},[3925,20098,5967],{"class":4508},[3925,20100,14472],{"class":4544},[3925,20102,10621],{"class":4508},[3925,20104,20105,20107,20109,20111,20113,20115,20117],{"class":3927,"line":4030},[3925,20106,14928],{"class":4508},[3925,20108,15010],{"class":4512},[3925,20110,4767],{"class":4508},[3925,20112,14874],{"class":4565},[3925,20114,6701],{"class":4508},[3925,20116,5614],{"class":4540},[3925,20118,5617],{"class":4508},[3925,20120,20121,20123,20125,20127,20129,20131,20133,20135,20137,20139,20141,20143],{"class":3927,"line":4036},[3925,20122,14946],{"class":4512},[3925,20124,3595],{"class":4508},[3925,20126,3650],{"class":4544},[3925,20128,4702],{"class":4508},[3925,20130,4705],{"class":4521},[3925,20132,4708],{"class":4540},[3925,20134,15010],{"class":4512},[3925,20136,3595],{"class":4597},[3925,20138,6018],{"class":4512},[3925,20140,4610],{"class":4540},[3925,20142,4721],{"class":4521},[3925,20144,4724],{"class":4508},[3925,20146,20147],{"class":3927,"line":4041},[3925,20148,5729],{"class":4508},[3925,20150,20151,20153,20155],{"class":3927,"line":4047},[3925,20152,14977],{"class":4508},[3925,20154,4695],{"class":4512},[3925,20156,14982],{"class":4508},[3925,20158,20159],{"class":3927,"line":4053},[3925,20160,4678],{"class":4508},[3925,20162,20163],{"class":3927,"line":4059},[3925,20164,3950],{"emptyLinePlaceholder":3949},[3925,20166,20167,20169],{"class":3927,"line":4065},[3925,20168,4553],{"class":4504},[3925,20170,4556],{"class":4508},[3925,20172,20173,20175,20177,20179,20181,20183,20185,20187,20189,20191],{"class":3927,"line":4070},[3925,20174,4562],{"class":4561},[3925,20176,14674],{"class":4565},[3925,20178,7232],{"class":4579},[3925,20180,4583],{"class":4508},[3925,20182,4594],{"class":4540},[3925,20184,8365],{"class":4512},[3925,20186,3595],{"class":4597},[3925,20188,15918],{"class":4512},[3925,20190,4610],{"class":4540},[3925,20192,4568],{"class":4561},[3925,20194,20195,20197],{"class":3927,"line":4076},[3925,20196,4573],{"class":4561},[3925,20198,15682],{"class":4565},[3925,20200,20201,20203,20205,20207],{"class":3927,"line":4082},[3925,20202,15847],{"class":4579},[3925,20204,4583],{"class":4508},[3925,20206,4594],{"class":4540},[3925,20208,15693],{"class":4597},[3925,20210,20211,20213,20215,20217],{"class":3927,"line":4088},[3925,20212,15943],{"class":4512},[3925,20214,3595],{"class":4597},[3925,20216,8411],{"class":4512},[3925,20218,5051],{"class":4597},[3925,20220,20221],{"class":3927,"line":4093},[3925,20222,15955],{"class":4597},[3925,20224,20225,20227,20229,20231,20233],{"class":3927,"line":4098},[3925,20226,15961],{"class":4512},[3925,20228,15307],{"class":4512},[3925,20230,3595],{"class":4597},[3925,20232,15312],{"class":4512},[3925,20234,5051],{"class":4597},[3925,20236,20237,20239,20241,20243,20245],{"class":3927,"line":6720},[3925,20238,15975],{"class":4512},[3925,20240,15307],{"class":4512},[3925,20242,3595],{"class":4597},[3925,20244,15372],{"class":4512},[3925,20246,5051],{"class":4597},[3925,20248,20249,20251,20253,20255,20257],{"class":3927,"line":6738},[3925,20250,15989],{"class":4512},[3925,20252,15307],{"class":4512},[3925,20254,3595],{"class":4597},[3925,20256,15312],{"class":4512},[3925,20258,5051],{"class":4597},[3925,20260,20261,20263,20265,20267,20269],{"class":3927,"line":6787},[3925,20262,16018],{"class":4512},[3925,20264,13324],{"class":4512},[3925,20266,3595],{"class":4597},[3925,20268,13783],{"class":4512},[3925,20270,5051],{"class":4597},[3925,20272,20273],{"class":3927,"line":6792},[3925,20274,16032],{"class":4597},[3925,20276,20277,20279],{"class":3927,"line":6797},[3925,20278,16038],{"class":4597},[3925,20280,4016],{"class":4540},[3925,20282,20283],{"class":3927,"line":6827},[3925,20284,7330],{"class":4561},[3925,20286,20287,20289,20291,20293,20295,20297,20299,20302,20304,20306],{"class":3927,"line":6862},[3925,20288,7335],{"class":4561},[3925,20290,14664],{"class":4565},[3925,20292,15773],{"class":4579},[3925,20294,4583],{"class":4508},[3925,20296,16059],{"class":4521},[3925,20298,8439],{"class":4561},[3925,20300,20301],{"class":4508},"Місця",[3925,20303,8445],{"class":4561},[3925,20305,14664],{"class":4565},[3925,20307,4568],{"class":4561},[3925,20309,20310,20312,20314,20316,20318,20320,20322,20324,20326,20328,20330,20332,20334,20336,20338,20340],{"class":3927,"line":6867},[3925,20311,7335],{"class":4561},[3925,20313,14664],{"class":4565},[3925,20315,15773],{"class":4579},[3925,20317,4583],{"class":4508},[3925,20319,16084],{"class":4521},[3925,20321,7232],{"class":4579},[3925,20323,4583],{"class":4508},[3925,20325,4594],{"class":4540},[3925,20327,4598],{"class":4597},[3925,20329,9176],{"class":4512},[3925,20331,15307],{"class":4512},[3925,20333,3595],{"class":4597},[3925,20335,16010],{"class":4512},[3925,20337,4607],{"class":4597},[3925,20339,4610],{"class":4540},[3925,20341,4568],{"class":4561},[3925,20343,20344,20347,20349,20351,20353,20355],{"class":3927,"line":6872},[3925,20345,20346],{"class":4508},"          Усі збережені точки з mock-даних · ",[3925,20348,4594],{"class":4540},[3925,20350,4772],{"class":4512},[3925,20352,3595],{"class":4597},[3925,20354,8486],{"class":4512},[3925,20356,4016],{"class":4540},[3925,20358,20359,20361,20363],{"class":3927,"line":6906},[3925,20360,8493],{"class":4561},[3925,20362,14664],{"class":4565},[3925,20364,4568],{"class":4561},[3925,20366,20367,20369,20371],{"class":3927,"line":6921},[3925,20368,7434],{"class":4561},[3925,20370,8398],{"class":4565},[3925,20372,4568],{"class":4561},[3925,20374,20375],{"class":3927,"line":6941},[3925,20376,3950],{"emptyLinePlaceholder":3949},[3925,20378,20379,20381],{"class":3927,"line":6962},[3925,20380,4573],{"class":4561},[3925,20382,8516],{"class":4565},[3925,20384,20385,20387,20389,20391,20393],{"class":3927,"line":6977},[3925,20386,8521],{"class":4579},[3925,20388,4583],{"class":4508},[3925,20390,4594],{"class":4540},[3925,20392,4772],{"class":4512},[3925,20394,4016],{"class":4540},[3925,20396,20397,20399,20401,20403,20405,20407,20409,20411,20413,20415,20417],{"class":3927,"line":6990},[3925,20398,8534],{"class":4579},[3925,20400,4583],{"class":4508},[3925,20402,4594],{"class":4540},[3925,20404,4702],{"class":4597},[3925,20406,8543],{"class":4512},[3925,20408,6701],{"class":4597},[3925,20410,5614],{"class":4540},[3925,20412,8550],{"class":4512},[3925,20414,3595],{"class":4597},[3925,20416,4716],{"class":4512},[3925,20418,4016],{"class":4540},[3925,20420,20421,20424,20426,20428,20430],{"class":3927,"line":6996},[3925,20422,20423],{"class":4579},"        numColumns",[3925,20425,4583],{"class":4508},[3925,20427,4594],{"class":4540},[3925,20429,8811],{"class":5990},[3925,20431,4016],{"class":4540},[3925,20433,20434,20437,20439,20441],{"class":3927,"line":7014},[3925,20435,20436],{"class":4579},"        columnWrapperStyle",[3925,20438,4583],{"class":4508},[3925,20440,4594],{"class":4540},[3925,20442,5040],{"class":4597},[3925,20444,20445,20447,20449,20451,20453],{"class":3927,"line":7023},[3925,20446,15741],{"class":4512},[3925,20448,15307],{"class":4512},[3925,20450,3595],{"class":4597},[3925,20452,15372],{"class":4512},[3925,20454,5051],{"class":4597},[3925,20456,20457,20459,20461,20463,20465],{"class":3927,"line":7032},[3925,20458,15714],{"class":4512},[3925,20460,15307],{"class":4512},[3925,20462,3595],{"class":4597},[3925,20464,15312],{"class":4512},[3925,20466,5051],{"class":4597},[3925,20468,20469,20471],{"class":3927,"line":7037},[3925,20470,7323],{"class":4597},[3925,20472,4016],{"class":4540},[3925,20474,20475,20477,20479,20481],{"class":3927,"line":7042},[3925,20476,8561],{"class":4579},[3925,20478,4583],{"class":4508},[3925,20480,4594],{"class":4540},[3925,20482,5040],{"class":4597},[3925,20484,20485,20488,20490,20492,20494],{"class":3927,"line":7070},[3925,20486,20487],{"class":4512},"          paddingTop:",[3925,20489,15307],{"class":4512},[3925,20491,3595],{"class":4597},[3925,20493,15312],{"class":4512},[3925,20495,5051],{"class":4597},[3925,20497,20498,20500,20502,20504,20506],{"class":3927,"line":7086},[3925,20499,18406],{"class":4512},[3925,20501,15307],{"class":4512},[3925,20503,3595],{"class":4597},[3925,20505,15734],{"class":4512},[3925,20507,5051],{"class":4597},[3925,20509,20510,20512,20514,20516,20518],{"class":3927,"line":7097},[3925,20511,15741],{"class":4512},[3925,20513,15307],{"class":4512},[3925,20515,3595],{"class":4597},[3925,20517,15372],{"class":4512},[3925,20519,5051],{"class":4597},[3925,20521,20522,20524],{"class":3927,"line":7114},[3925,20523,7323],{"class":4597},[3925,20525,4016],{"class":4540},[3925,20527,20528,20530,20532,20534,20536,20538,20540,20542],{"class":3927,"line":7119},[3925,20529,8667],{"class":4579},[3925,20531,4583],{"class":4508},[3925,20533,4594],{"class":4540},[3925,20535,8674],{"class":4597},[3925,20537,8543],{"class":4512},[3925,20539,5611],{"class":4597},[3925,20541,5614],{"class":4540},[3925,20543,4556],{"class":4597},[3925,20545,20546,20548,20550,20552,20554,20556,20558,20560,20563,20565],{"class":3927,"line":9008},[3925,20547,8630],{"class":4561},[3925,20549,8398],{"class":4565},[3925,20551,7232],{"class":4579},[3925,20553,4583],{"class":4508},[3925,20555,4594],{"class":4540},[3925,20557,8365],{"class":4512},[3925,20559,3595],{"class":4597},[3925,20561,20562],{"class":4512},"cell",[3925,20564,4610],{"class":4540},[3925,20566,4568],{"class":4561},[3925,20568,20569,20571,20573,20575,20577,20579,20581,20583,20585,20587,20589,20591,20593],{"class":3927,"line":9017},[3925,20570,7697],{"class":4561},[3925,20572,15486],{"class":4565},[3925,20574,15489],{"class":4579},[3925,20576,4583],{"class":4508},[3925,20578,4594],{"class":4540},[3925,20580,8543],{"class":4512},[3925,20582,4610],{"class":4540},[3925,20584,9784],{"class":4579},[3925,20586,4583],{"class":4508},[3925,20588,4594],{"class":4540},[3925,20590,15506],{"class":4512},[3925,20592,4610],{"class":4540},[3925,20594,4613],{"class":4561},[3925,20596,20597,20599,20601],{"class":3927,"line":9022},[3925,20598,8857],{"class":4561},[3925,20600,8398],{"class":4565},[3925,20602,4568],{"class":4561},[3925,20604,20605,20607],{"class":3927,"line":9027},[3925,20606,8866],{"class":4597},[3925,20608,4016],{"class":4540},[3925,20610,20611,20613,20615],{"class":3927,"line":9032},[3925,20612,8621],{"class":4579},[3925,20614,4583],{"class":4508},[3925,20616,5040],{"class":4540},[3925,20618,20619,20621,20623,20625,20627,20629,20631,20633,20635,20637],{"class":3927,"line":9053},[3925,20620,8630],{"class":4561},[3925,20622,8398],{"class":4565},[3925,20624,7232],{"class":4579},[3925,20626,4583],{"class":4508},[3925,20628,4594],{"class":4540},[3925,20630,8365],{"class":4512},[3925,20632,3595],{"class":4597},[3925,20634,15703],{"class":4512},[3925,20636,4610],{"class":4540},[3925,20638,4568],{"class":4561},[3925,20640,20641,20643,20645,20647,20649,20651,20653,20655,20657,20659,20661,20663,20665],{"class":3927,"line":9075},[3925,20642,7697],{"class":4561},[3925,20644,14664],{"class":4565},[3925,20646,15773],{"class":4579},[3925,20648,4583],{"class":4508},[3925,20650,15778],{"class":4521},[3925,20652,7232],{"class":4579},[3925,20654,4583],{"class":4508},[3925,20656,4594],{"class":4540},[3925,20658,8365],{"class":4512},[3925,20660,3595],{"class":4597},[3925,20662,9701],{"class":4512},[3925,20664,4610],{"class":4540},[3925,20666,4568],{"class":4561},[3925,20668,20669],{"class":3927,"line":9083},[3925,20670,20671],{"class":4597},"              Місць поки немає\n",[3925,20673,20674,20676,20678],{"class":3927,"line":9094},[3925,20675,8848],{"class":4561},[3925,20677,14664],{"class":4565},[3925,20679,4568],{"class":4561},[3925,20681,20682,20684,20686,20688,20690,20692,20694,20696,20698,20700,20702,20704,20706,20708,20710,20712,20714,20716,20718,20720],{"class":3927,"line":9105},[3925,20683,7697],{"class":4561},[3925,20685,14664],{"class":4565},[3925,20687,15773],{"class":4579},[3925,20689,4583],{"class":4508},[3925,20691,16084],{"class":4521},[3925,20693,7720],{"class":4579},[3925,20695,4583],{"class":4508},[3925,20697,4594],{"class":4540},[3925,20699,13240],{"class":4512},[3925,20701,3595],{"class":4597},[3925,20703,13752],{"class":4512},[3925,20705,4610],{"class":4540},[3925,20707,7232],{"class":4579},[3925,20709,4583],{"class":4508},[3925,20711,4594],{"class":4540},[3925,20713,8365],{"class":4512},[3925,20715,3595],{"class":4597},[3925,20717,9701],{"class":4512},[3925,20719,4610],{"class":4540},[3925,20721,4568],{"class":4561},[3925,20723,20724],{"class":3927,"line":9115},[3925,20725,20726],{"class":4597},"              Вони з’являться разом із поїздками.\n",[3925,20728,20729,20731,20733],{"class":3927,"line":9125},[3925,20730,8848],{"class":4561},[3925,20732,14664],{"class":4565},[3925,20734,4568],{"class":4561},[3925,20736,20737,20739,20741],{"class":3927,"line":9135},[3925,20738,8857],{"class":4561},[3925,20740,8398],{"class":4565},[3925,20742,4568],{"class":4561},[3925,20744,20745],{"class":3927,"line":9140},[3925,20746,8662],{"class":4540},[3925,20748,20749,20751,20753],{"class":3927,"line":9168},[3925,20750,18425],{"class":4579},[3925,20752,4583],{"class":4508},[3925,20754,15527],{"class":4540},[3925,20756,20757],{"class":3927,"line":9197},[3925,20758,4664],{"class":4561},[3925,20760,20761,20763,20765],{"class":3927,"line":9226},[3925,20762,4669],{"class":4561},[3925,20764,14674],{"class":4565},[3925,20766,4568],{"class":4561},[3925,20768,20769],{"class":3927,"line":9234},[3925,20770,4678],{"class":4508},[3925,20772,20773],{"class":3927,"line":9245},[3925,20774,4016],{"class":4508},[3925,20776,20777],{"class":3927,"line":9255},[3925,20778,3950],{"emptyLinePlaceholder":3949},[3925,20780,20781,20783,20785,20787,20789,20791,20793],{"class":3927,"line":9265},[3925,20782,5930],{"class":4540},[3925,20784,9037],{"class":5194},[3925,20786,5967],{"class":4508},[3925,20788,9042],{"class":4512},[3925,20790,3595],{"class":4508},[3925,20792,9047],{"class":4544},[3925,20794,9050],{"class":4508},[3925,20796,20797,20799],{"class":3927,"line":9275},[3925,20798,17322],{"class":4512},[3925,20800,5617],{"class":4508},[3925,20802,20803,20805,20807],{"class":3927,"line":9286},[3925,20804,9086],{"class":4512},[3925,20806,15345],{"class":5990},[3925,20808,5051],{"class":4508},[3925,20810,20811],{"class":3927,"line":9291},[3925,20812,6584],{"class":4508},[3925,20814,20815,20817],{"class":3927,"line":9319},[3925,20816,9078],{"class":4512},[3925,20818,5617],{"class":4508},[3925,20820,20821,20823,20825],{"class":3927,"line":9346},[3925,20822,9118],{"class":4512},[3925,20824,9064],{"class":5990},[3925,20826,5051],{"class":4508},[3925,20828,20829],{"class":3927,"line":9354},[3925,20830,6584],{"class":4508},[3925,20832,20833,20836],{"class":3927,"line":9363},[3925,20834,20835],{"class":4512},"  cell:",[3925,20837,5617],{"class":4508},[3925,20839,20840,20842,20844],{"class":3927,"line":9373},[3925,20841,10105],{"class":4512},[3925,20843,9064],{"class":5990},[3925,20845,5051],{"class":4508},[3925,20847,20848],{"class":3927,"line":9383},[3925,20849,6584],{"class":4508},[3925,20851,20852,20854],{"class":3927,"line":9388},[3925,20853,17493],{"class":4512},[3925,20855,5617],{"class":4508},[3925,20857,20858,20860,20863],{"class":3927,"line":9396},[3925,20859,9278],{"class":4512},[3925,20861,20862],{"class":5990}," 32",[3925,20864,5051],{"class":4508},[3925,20866,20867,20870,20872],{"class":3927,"line":9405},[3925,20868,20869],{"class":4512},"    gap:",[3925,20871,9100],{"class":5990},[3925,20873,5051],{"class":4508},[3925,20875,20876],{"class":3927,"line":9415},[3925,20877,6584],{"class":4508},[3925,20879,20880,20882],{"class":3927,"line":9424},[3925,20881,10098],{"class":4512},[3925,20883,5617],{"class":4508},[3925,20885,20886,20888,20890],{"class":3927,"line":9435},[3925,20887,17532],{"class":4512},[3925,20889,9430],{"class":4521},[3925,20891,5051],{"class":4508},[3925,20893,20894],{"class":3927,"line":9440},[3925,20895,6584],{"class":4508},[3925,20897,20898],{"class":3927,"line":9460},[3925,20899,5739],{"class":4508},[3916,20901,20904],{"className":4489,"code":20902,"filename":20903,"language":4491,"meta":3921,"style":3921},"import { Pressable, ScrollView, StyleSheet, View } from 'react-native';\nimport { Link } from 'expo-router';\n\nimport { useTheme, type ThemePreference } from '@\u002Fshared\u002Ftheme';\nimport { AppText, Screen } from '@\u002Fshared\u002Fui';\n\nconst PREFS: { id: ThemePreference; label: string }[] = [\n  { id: 'system', label: 'Система' },\n  { id: 'light', label: 'Світла' },\n  { id: 'dark', label: 'Темна' },\n];\n\n\u002F**\n * Вкладка «Ще» — про застосунок, тема, посилання на створення поїздки (Link).\n *\u002F\nexport default function AboutScreen() {\n  const { colors, spacing, preference, setPreference, scheme } = useTheme();\n\n  return (\n    \u003CScreen style={styles.screen}>\n      \u003CScrollView\n        contentContainerStyle={{\n          paddingHorizontal: spacing.md,\n          paddingTop: spacing.sm,\n          paddingBottom: spacing.xl,\n          gap: spacing.md,\n        }}\n        showsVerticalScrollIndicator={false}\n      >\n        \u003CAppText variant=\"title\">Мандрівник\u003C\u002FAppText>\n        \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n          Навчальний щоденник подорожей курсу React Native (Nomad). Тема зараз:{' '}\n          {scheme === 'dark' ? 'темна' : 'світла'}.\n        \u003C\u002FAppText>\n\n        \u003CView\n          style={[\n            styles.card,\n            {\n              backgroundColor: colors.surface,\n              borderColor: colors.border,\n              padding: spacing.md,\n              gap: spacing.sm,\n            },\n          ]}\n        >\n          \u003CAppText style={{ fontWeight: '700' }}>Тема оформлення\u003C\u002FAppText>\n          \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n            Ті самі чіпи, що були на головному екрані — винесені також сюди, щоб\n            налаштування жили на окремій вкладці.\n          \u003C\u002FAppText>\n          \u003CView style={[styles.themeRow, { gap: spacing.sm }]}>\n            {PREFS.map((p) => {\n              const active = preference === p.id;\n              return (\n                \u003CPressable\n                  key={p.id}\n                  onPress={() => setPreference(p.id)}\n                  style={[\n                    styles.themeChip,\n                    {\n                      backgroundColor: active ? colors.primary : colors.surface,\n                      borderColor: colors.border,\n                    },\n                  ]}\n                  accessibilityRole=\"button\"\n                  accessibilityState={{ selected: active }}\n                  accessibilityLabel={`Тема: ${p.label}`}\n                >\n                  \u003CAppText\n                    variant=\"caption\"\n                    color={active ? colors.onPrimary : colors.text}\n                    style={styles.themeChipText}\n                  >\n                    {p.label}\n                  \u003C\u002FAppText>\n                \u003C\u002FPressable>\n              );\n            })}\n          \u003C\u002FView>\n        \u003C\u002FView>\n\n        \u003CView\n          style={[\n            styles.card,\n            {\n              backgroundColor: colors.surface,\n              borderColor: colors.border,\n              padding: spacing.md,\n              gap: spacing.sm,\n            },\n          ]}\n        >\n          \u003CAppText style={{ fontWeight: '700' }}>Навігація (Expo Router)\u003C\u002FAppText>\n          \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n            Нижні вкладки — група маршрутів (tabs). «Нова поїздка» відкривається\n            поверх вкладок у Stack. Нижче — приклад компонента Link (як якір на\n            вебі).\n          \u003C\u002FAppText>\n          \u003CLink href=\"\u002Fcreate-trip\" asChild>\n            {\u002F* presentation: modal задано в кореневому Stack *\u002F}\n\n            \u003CPressable\n              style={[\n                styles.linkBtn,\n                {\n                  backgroundColor: colors.primary,\n                  paddingVertical: spacing.sm + 4,\n                  borderRadius: 12,\n                },\n              ]}\n            >\n              \u003CAppText color={colors.onPrimary} style={{ fontWeight: '700' }}>\n                Відкрити форму (Link)\n              \u003C\u002FAppText>\n            \u003C\u002FPressable>\n          \u003C\u002FLink>\n        \u003C\u002FView>\n\n        \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n          Репозиторій: github.com\u002Farakviel\u002Fnomad\n        \u003C\u002FAppText>\n      \u003C\u002FScrollView>\n    \u003C\u002FScreen>\n  );\n}\n\nconst styles = StyleSheet.create({\n  screen: {\n    paddingHorizontal: 0,\n  },\n  card: {\n    borderWidth: 1,\n    borderRadius: 12,\n  },\n  themeRow: {\n    flexDirection: 'row',\n    flexWrap: 'wrap',\n  },\n  themeChip: {\n    paddingHorizontal: 12,\n    paddingVertical: 8,\n    borderRadius: 8,\n    borderWidth: 1,\n  },\n  themeChipText: {\n    fontWeight: '600',\n  },\n  linkBtn: {\n    alignItems: 'center',\n  },\n});\n","app\u002F(tabs)\u002Fabout.tsx",[3521,20905,20906,20934,20950,20954,20976,20996,21000,21024,21040,21056,21072,21076,21080,21084,21089,21093,21105,21135,21139,21145,21167,21173,21183,21195,21207,21219,21231,21237,21245,21249,21271,21299,21311,21334,21342,21346,21352,21362,21373,21378,21391,21404,21417,21430,21435,21442,21446,21479,21507,21512,21517,21525,21561,21581,21602,21609,21615,21632,21659,21669,21680,21685,21710,21723,21728,21735,21744,21763,21788,21792,21799,21808,21837,21854,21859,21872,21881,21889,21894,21901,21909,21917,21921,21927,21937,21947,21951,21963,21975,21987,21999,22003,22009,22013,22046,22074,22079,22084,22089,22097,22114,22123,22127,22133,22144,22156,22161,22174,22192,22201,22206,22213,22218,22256,22261,22269,22277,22285,22293,22297,22325,22330,22338,22346,22354,22358,22362,22366,22382,22388,22396,22400,22406,22414,22422,22426,22432,22440,22448,22452,22458,22466,22474,22482,22490,22494,22500,22508,22512,22519,22527,22531],{"__ignoreMap":3921},[3925,20907,20908,20910,20912,20914,20916,20918,20920,20922,20924,20926,20928,20930,20932],{"class":3927,"line":3928},[3925,20909,4505],{"class":4504},[3925,20911,4509],{"class":4508},[3925,20913,8724],{"class":4512},[3925,20915,4191],{"class":4508},[3925,20917,9486],{"class":4512},[3925,20919,4191],{"class":4508},[3925,20921,9042],{"class":4512},[3925,20923,4191],{"class":4508},[3925,20925,8398],{"class":4512},[3925,20927,4515],{"class":4508},[3925,20929,4518],{"class":4504},[3925,20931,8175],{"class":4521},[3925,20933,4525],{"class":4508},[3925,20935,20936,20938,20940,20942,20944,20946,20948],{"class":3927,"line":3934},[3925,20937,4505],{"class":4504},[3925,20939,4509],{"class":4508},[3925,20941,3535],{"class":4512},[3925,20943,4515],{"class":4508},[3925,20945,4518],{"class":4504},[3925,20947,4522],{"class":4521},[3925,20949,4525],{"class":4508},[3925,20951,20952],{"class":3927,"line":3940},[3925,20953,3950],{"emptyLinePlaceholder":3949},[3925,20955,20956,20958,20960,20962,20964,20966,20968,20970,20972,20974],{"class":3927,"line":3946},[3925,20957,4505],{"class":4504},[3925,20959,4509],{"class":4508},[3925,20961,13148],{"class":4512},[3925,20963,4191],{"class":4508},[3925,20965,6491],{"class":4504},[3925,20967,14647],{"class":4512},[3925,20969,4515],{"class":4508},[3925,20971,4518],{"class":4504},[3925,20973,13155],{"class":4521},[3925,20975,4525],{"class":4508},[3925,20977,20978,20980,20982,20984,20986,20988,20990,20992,20994],{"class":3927,"line":3953},[3925,20979,4505],{"class":4504},[3925,20981,4509],{"class":4508},[3925,20983,14664],{"class":4512},[3925,20985,4191],{"class":4508},[3925,20987,14674],{"class":4512},[3925,20989,4515],{"class":4508},[3925,20991,4518],{"class":4504},[3925,20993,14681],{"class":4521},[3925,20995,4525],{"class":4508},[3925,20997,20998],{"class":3927,"line":3959},[3925,20999,3950],{"emptyLinePlaceholder":3949},[3925,21001,21002,21004,21006,21008,21010,21012,21014,21016,21018,21020,21022],{"class":3927,"line":3965},[3925,21003,5930],{"class":4540},[3925,21005,14694],{"class":5194},[3925,21007,14697],{"class":4508},[3925,21009,4716],{"class":4512},[3925,21011,4767],{"class":4508},[3925,21013,14704],{"class":4565},[3925,21015,14707],{"class":4508},[3925,21017,11017],{"class":4512},[3925,21019,4767],{"class":4508},[3925,21021,5949],{"class":4565},[3925,21023,14716],{"class":4508},[3925,21025,21026,21028,21030,21032,21034,21036,21038],{"class":3927,"line":3971},[3925,21027,14721],{"class":4508},[3925,21029,14724],{"class":4512},[3925,21031,14727],{"class":4521},[3925,21033,4191],{"class":4508},[3925,21035,14732],{"class":4512},[3925,21037,14735],{"class":4521},[3925,21039,5667],{"class":4508},[3925,21041,21042,21044,21046,21048,21050,21052,21054],{"class":3927,"line":3977},[3925,21043,14721],{"class":4508},[3925,21045,14724],{"class":4512},[3925,21047,13289],{"class":4521},[3925,21049,4191],{"class":4508},[3925,21051,14732],{"class":4512},[3925,21053,14752],{"class":4521},[3925,21055,5667],{"class":4508},[3925,21057,21058,21060,21062,21064,21066,21068,21070],{"class":3927,"line":3983},[3925,21059,14721],{"class":4508},[3925,21061,14724],{"class":4512},[3925,21063,13284],{"class":4521},[3925,21065,4191],{"class":4508},[3925,21067,14732],{"class":4512},[3925,21069,14769],{"class":4521},[3925,21071,5667],{"class":4508},[3925,21073,21074],{"class":3927,"line":3989},[3925,21075,6641],{"class":4508},[3925,21077,21078],{"class":3927,"line":3995},[3925,21079,3950],{"emptyLinePlaceholder":3949},[3925,21081,21082],{"class":3927,"line":4001},[3925,21083,13166],{"class":4498},[3925,21085,21086],{"class":3927,"line":4007},[3925,21087,21088],{"class":4498}," * Вкладка «Ще» — про застосунок, тема, посилання на створення поїздки (Link).\n",[3925,21090,21091],{"class":3927,"line":4013},[3925,21092,13196],{"class":4498},[3925,21094,21095,21097,21099,21101,21103],{"class":3927,"line":4019},[3925,21096,4534],{"class":4504},[3925,21098,4537],{"class":4504},[3925,21100,4541],{"class":4540},[3925,21102,11725],{"class":4544},[3925,21104,4548],{"class":4508},[3925,21106,21107,21109,21111,21113,21115,21117,21119,21121,21123,21125,21127,21129,21131,21133],{"class":3927,"line":4024},[3925,21108,6909],{"class":4540},[3925,21110,4509],{"class":4508},[3925,21112,13240],{"class":5194},[3925,21114,4191],{"class":4508},[3925,21116,14837],{"class":5194},[3925,21118,4191],{"class":4508},[3925,21120,14842],{"class":5194},[3925,21122,4191],{"class":4508},[3925,21124,14847],{"class":5194},[3925,21126,4191],{"class":4508},[3925,21128,13245],{"class":5194},[3925,21130,5937],{"class":4508},[3925,21132,13148],{"class":4544},[3925,21134,7020],{"class":4508},[3925,21136,21137],{"class":3927,"line":4030},[3925,21138,3950],{"emptyLinePlaceholder":3949},[3925,21140,21141,21143],{"class":3927,"line":4036},[3925,21142,4553],{"class":4504},[3925,21144,4556],{"class":4508},[3925,21146,21147,21149,21151,21153,21155,21157,21159,21161,21163,21165],{"class":3927,"line":4041},[3925,21148,4562],{"class":4561},[3925,21150,14674],{"class":4565},[3925,21152,7232],{"class":4579},[3925,21154,4583],{"class":4508},[3925,21156,4594],{"class":4540},[3925,21158,8365],{"class":4512},[3925,21160,3595],{"class":4597},[3925,21162,15918],{"class":4512},[3925,21164,4610],{"class":4540},[3925,21166,4568],{"class":4561},[3925,21168,21169,21171],{"class":3927,"line":4047},[3925,21170,4573],{"class":4561},[3925,21172,18391],{"class":4565},[3925,21174,21175,21177,21179,21181],{"class":3927,"line":4053},[3925,21176,8561],{"class":4579},[3925,21178,4583],{"class":4508},[3925,21180,4594],{"class":4540},[3925,21182,5040],{"class":4597},[3925,21184,21185,21187,21189,21191,21193],{"class":3927,"line":4059},[3925,21186,15714],{"class":4512},[3925,21188,15307],{"class":4512},[3925,21190,3595],{"class":4597},[3925,21192,15312],{"class":4512},[3925,21194,5051],{"class":4597},[3925,21196,21197,21199,21201,21203,21205],{"class":3927,"line":4065},[3925,21198,20487],{"class":4512},[3925,21200,15307],{"class":4512},[3925,21202,3595],{"class":4597},[3925,21204,15372],{"class":4512},[3925,21206,5051],{"class":4597},[3925,21208,21209,21211,21213,21215,21217],{"class":3927,"line":4070},[3925,21210,18406],{"class":4512},[3925,21212,15307],{"class":4512},[3925,21214,3595],{"class":4597},[3925,21216,15734],{"class":4512},[3925,21218,5051],{"class":4597},[3925,21220,21221,21223,21225,21227,21229],{"class":3927,"line":4076},[3925,21222,15741],{"class":4512},[3925,21224,15307],{"class":4512},[3925,21226,3595],{"class":4597},[3925,21228,15312],{"class":4512},[3925,21230,5051],{"class":4597},[3925,21232,21233,21235],{"class":3927,"line":4082},[3925,21234,7323],{"class":4597},[3925,21236,4016],{"class":4540},[3925,21238,21239,21241,21243],{"class":3927,"line":4088},[3925,21240,18425],{"class":4579},[3925,21242,4583],{"class":4508},[3925,21244,15527],{"class":4540},[3925,21246,21247],{"class":3927,"line":4093},[3925,21248,7330],{"class":4561},[3925,21250,21251,21253,21255,21257,21259,21261,21263,21265,21267,21269],{"class":3927,"line":4098},[3925,21252,7335],{"class":4561},[3925,21254,14664],{"class":4565},[3925,21256,15773],{"class":4579},[3925,21258,4583],{"class":4508},[3925,21260,16059],{"class":4521},[3925,21262,8439],{"class":4561},[3925,21264,16064],{"class":4508},[3925,21266,8445],{"class":4561},[3925,21268,14664],{"class":4565},[3925,21270,4568],{"class":4561},[3925,21272,21273,21275,21277,21279,21281,21283,21285,21287,21289,21291,21293,21295,21297],{"class":3927,"line":6720},[3925,21274,7335],{"class":4561},[3925,21276,14664],{"class":4565},[3925,21278,15773],{"class":4579},[3925,21280,4583],{"class":4508},[3925,21282,16084],{"class":4521},[3925,21284,7720],{"class":4579},[3925,21286,4583],{"class":4508},[3925,21288,4594],{"class":4540},[3925,21290,13240],{"class":4512},[3925,21292,3595],{"class":4597},[3925,21294,13752],{"class":4512},[3925,21296,4610],{"class":4540},[3925,21298,4568],{"class":4561},[3925,21300,21301,21304,21306,21309],{"class":3927,"line":6738},[3925,21302,21303],{"class":4508},"          Навчальний щоденник подорожей курсу React Native (Nomad). Тема зараз:",[3925,21305,4594],{"class":4540},[3925,21307,21308],{"class":4521},"' '",[3925,21310,4016],{"class":4540},[3925,21312,21313,21315,21317,21319,21321,21323,21325,21327,21329,21331],{"class":3927,"line":6787},[3925,21314,16225],{"class":4540},[3925,21316,13245],{"class":4512},[3925,21318,10916],{"class":4508},[3925,21320,13284],{"class":4521},[3925,21322,10922],{"class":4508},[3925,21324,16125],{"class":4521},[3925,21326,10928],{"class":4508},[3925,21328,16130],{"class":4521},[3925,21330,4610],{"class":4540},[3925,21332,21333],{"class":4508},".\n",[3925,21335,21336,21338,21340],{"class":3927,"line":6792},[3925,21337,8493],{"class":4561},[3925,21339,14664],{"class":4565},[3925,21341,4568],{"class":4561},[3925,21343,21344],{"class":3927,"line":6797},[3925,21345,3950],{"emptyLinePlaceholder":3949},[3925,21347,21348,21350],{"class":3927,"line":6827},[3925,21349,7335],{"class":4561},[3925,21351,15682],{"class":4565},[3925,21353,21354,21356,21358,21360],{"class":3927,"line":6862},[3925,21355,8911],{"class":4579},[3925,21357,4583],{"class":4508},[3925,21359,4594],{"class":4540},[3925,21361,15693],{"class":4597},[3925,21363,21364,21367,21369,21371],{"class":3927,"line":6867},[3925,21365,21366],{"class":4512},"            styles",[3925,21368,3595],{"class":4597},[3925,21370,4983],{"class":4512},[3925,21372,5051],{"class":4597},[3925,21374,21375],{"class":3927,"line":6872},[3925,21376,21377],{"class":4597},"            {\n",[3925,21379,21380,21383,21385,21387,21389],{"class":3927,"line":6906},[3925,21381,21382],{"class":4512},"              backgroundColor:",[3925,21384,13324],{"class":4512},[3925,21386,3595],{"class":4597},[3925,21388,16513],{"class":4512},[3925,21390,5051],{"class":4597},[3925,21392,21393,21396,21398,21400,21402],{"class":3927,"line":6921},[3925,21394,21395],{"class":4512},"              borderColor:",[3925,21397,13324],{"class":4512},[3925,21399,3595],{"class":4597},[3925,21401,13783],{"class":4512},[3925,21403,5051],{"class":4597},[3925,21405,21406,21409,21411,21413,21415],{"class":3927,"line":6941},[3925,21407,21408],{"class":4512},"              padding:",[3925,21410,15307],{"class":4512},[3925,21412,3595],{"class":4597},[3925,21414,15312],{"class":4512},[3925,21416,5051],{"class":4597},[3925,21418,21419,21422,21424,21426,21428],{"class":3927,"line":6962},[3925,21420,21421],{"class":4512},"              gap:",[3925,21423,15307],{"class":4512},[3925,21425,3595],{"class":4597},[3925,21427,15372],{"class":4512},[3925,21429,5051],{"class":4597},[3925,21431,21432],{"class":3927,"line":6977},[3925,21433,21434],{"class":4597},"            },\n",[3925,21436,21437,21440],{"class":3927,"line":6990},[3925,21438,21439],{"class":4597},"          ]",[3925,21441,4016],{"class":4540},[3925,21443,21444],{"class":3927,"line":6996},[3925,21445,8957],{"class":4561},[3925,21447,21448,21450,21452,21454,21456,21458,21460,21462,21464,21466,21468,21470,21473,21475,21477],{"class":3927,"line":7014},[3925,21449,8630],{"class":4561},[3925,21451,14664],{"class":4565},[3925,21453,7232],{"class":4579},[3925,21455,4583],{"class":4508},[3925,21457,4594],{"class":4540},[3925,21459,4598],{"class":4597},[3925,21461,7300],{"class":4512},[3925,21463,9308],{"class":4521},[3925,21465,4607],{"class":4597},[3925,21467,4610],{"class":4540},[3925,21469,8439],{"class":4561},[3925,21471,21472],{"class":4508},"Тема оформлення",[3925,21474,8445],{"class":4561},[3925,21476,14664],{"class":4565},[3925,21478,4568],{"class":4561},[3925,21480,21481,21483,21485,21487,21489,21491,21493,21495,21497,21499,21501,21503,21505],{"class":3927,"line":7023},[3925,21482,8630],{"class":4561},[3925,21484,14664],{"class":4565},[3925,21486,15773],{"class":4579},[3925,21488,4583],{"class":4508},[3925,21490,16084],{"class":4521},[3925,21492,7720],{"class":4579},[3925,21494,4583],{"class":4508},[3925,21496,4594],{"class":4540},[3925,21498,13240],{"class":4512},[3925,21500,3595],{"class":4597},[3925,21502,13752],{"class":4512},[3925,21504,4610],{"class":4540},[3925,21506,4568],{"class":4561},[3925,21508,21509],{"class":3927,"line":7032},[3925,21510,21511],{"class":4508},"            Ті самі чіпи, що були на головному екрані — винесені також сюди, щоб\n",[3925,21513,21514],{"class":3927,"line":7037},[3925,21515,21516],{"class":4508},"            налаштування жили на окремій вкладці.\n",[3925,21518,21519,21521,21523],{"class":3927,"line":7042},[3925,21520,8857],{"class":4561},[3925,21522,14664],{"class":4565},[3925,21524,4568],{"class":4561},[3925,21526,21527,21529,21531,21533,21535,21537,21539,21541,21543,21545,21547,21549,21551,21553,21555,21557,21559],{"class":3927,"line":7070},[3925,21528,8630],{"class":4561},[3925,21530,8398],{"class":4565},[3925,21532,7232],{"class":4579},[3925,21534,4583],{"class":4508},[3925,21536,4594],{"class":4540},[3925,21538,5987],{"class":4597},[3925,21540,8365],{"class":4512},[3925,21542,3595],{"class":4597},[3925,21544,16318],{"class":4512},[3925,21546,16321],{"class":4597},[3925,21548,11369],{"class":4512},[3925,21550,15307],{"class":4512},[3925,21552,3595],{"class":4597},[3925,21554,15372],{"class":4512},[3925,21556,16342],{"class":4597},[3925,21558,4610],{"class":4540},[3925,21560,4568],{"class":4561},[3925,21562,21563,21565,21567,21569,21571,21573,21575,21577,21579],{"class":3927,"line":7086},[3925,21564,18626],{"class":4540},[3925,21566,16354],{"class":5194},[3925,21568,3595],{"class":4597},[3925,21570,16359],{"class":4544},[3925,21572,6695],{"class":4597},[3925,21574,3512],{"class":4512},[3925,21576,6701],{"class":4597},[3925,21578,5614],{"class":4540},[3925,21580,5617],{"class":4597},[3925,21582,21583,21586,21588,21590,21592,21594,21596,21598,21600],{"class":3927,"line":7097},[3925,21584,21585],{"class":4540},"              const",[3925,21587,16378],{"class":5194},[3925,21589,16381],{"class":4508},[3925,21591,16384],{"class":4512},[3925,21593,10916],{"class":4508},[3925,21595,16389],{"class":4512},[3925,21597,3595],{"class":4597},[3925,21599,4716],{"class":4512},[3925,21601,4525],{"class":4597},[3925,21603,21604,21607],{"class":3927,"line":7114},[3925,21605,21606],{"class":4504},"              return",[3925,21608,4556],{"class":4597},[3925,21610,21611,21613],{"class":3927,"line":7119},[3925,21612,16614],{"class":4561},[3925,21614,8906],{"class":4565},[3925,21616,21617,21620,21622,21624,21626,21628,21630],{"class":3927,"line":9008},[3925,21618,21619],{"class":4579},"                  key",[3925,21621,4583],{"class":4508},[3925,21623,4594],{"class":4540},[3925,21625,3512],{"class":4512},[3925,21627,3595],{"class":4597},[3925,21629,4716],{"class":4512},[3925,21631,4016],{"class":4540},[3925,21633,21634,21637,21639,21641,21643,21645,21647,21649,21651,21653,21655,21657],{"class":3927,"line":9017},[3925,21635,21636],{"class":4579},"                  onPress",[3925,21638,4583],{"class":4508},[3925,21640,4594],{"class":4540},[3925,21642,8586],{"class":4597},[3925,21644,5614],{"class":4540},[3925,21646,16445],{"class":4544},[3925,21648,4702],{"class":4597},[3925,21650,3512],{"class":4512},[3925,21652,3595],{"class":4597},[3925,21654,4716],{"class":4512},[3925,21656,4251],{"class":4597},[3925,21658,4016],{"class":4540},[3925,21660,21661,21663,21665,21667],{"class":3927,"line":9022},[3925,21662,16664],{"class":4579},[3925,21664,4583],{"class":4508},[3925,21666,4594],{"class":4540},[3925,21668,15693],{"class":4597},[3925,21670,21671,21674,21676,21678],{"class":3927,"line":9027},[3925,21672,21673],{"class":4512},"                    styles",[3925,21675,3595],{"class":4597},[3925,21677,16480],{"class":4512},[3925,21679,5051],{"class":4597},[3925,21681,21682],{"class":3927,"line":9032},[3925,21683,21684],{"class":4597},"                    {\n",[3925,21686,21687,21690,21692,21694,21696,21698,21700,21702,21704,21706,21708],{"class":3927,"line":9053},[3925,21688,21689],{"class":4512},"                      backgroundColor:",[3925,21691,16378],{"class":4512},[3925,21693,10922],{"class":4508},[3925,21695,13324],{"class":4512},[3925,21697,3595],{"class":4597},[3925,21699,13358],{"class":4512},[3925,21701,10928],{"class":4508},[3925,21703,13324],{"class":4512},[3925,21705,3595],{"class":4597},[3925,21707,16513],{"class":4512},[3925,21709,5051],{"class":4597},[3925,21711,21712,21715,21717,21719,21721],{"class":3927,"line":9075},[3925,21713,21714],{"class":4512},"                      borderColor:",[3925,21716,13324],{"class":4512},[3925,21718,3595],{"class":4597},[3925,21720,13783],{"class":4512},[3925,21722,5051],{"class":4597},[3925,21724,21725],{"class":3927,"line":9083},[3925,21726,21727],{"class":4597},"                    },\n",[3925,21729,21730,21733],{"class":3927,"line":9094},[3925,21731,21732],{"class":4597},"                  ]",[3925,21734,4016],{"class":4540},[3925,21736,21737,21740,21742],{"class":3927,"line":9105},[3925,21738,21739],{"class":4579},"                  accessibilityRole",[3925,21741,4583],{"class":4508},[3925,21743,16554],{"class":4521},[3925,21745,21746,21749,21751,21753,21755,21757,21759,21761],{"class":3927,"line":9115},[3925,21747,21748],{"class":4579},"                  accessibilityState",[3925,21750,4583],{"class":4508},[3925,21752,4594],{"class":4540},[3925,21754,4598],{"class":4597},[3925,21756,16569],{"class":4512},[3925,21758,16378],{"class":4512},[3925,21760,4607],{"class":4597},[3925,21762,4016],{"class":4540},[3925,21764,21765,21768,21770,21772,21774,21776,21778,21780,21782,21784,21786],{"class":3927,"line":9125},[3925,21766,21767],{"class":4579},"                  accessibilityLabel",[3925,21769,4583],{"class":4508},[3925,21771,4594],{"class":4540},[3925,21773,16588],{"class":4521},[3925,21775,4708],{"class":4540},[3925,21777,3512],{"class":4512},[3925,21779,3595],{"class":4597},[3925,21781,11017],{"class":4512},[3925,21783,4610],{"class":4540},[3925,21785,4721],{"class":4521},[3925,21787,4016],{"class":4540},[3925,21789,21790],{"class":3927,"line":9135},[3925,21791,16683],{"class":4561},[3925,21793,21794,21797],{"class":3927,"line":9140},[3925,21795,21796],{"class":4561},"                  \u003C",[3925,21798,15815],{"class":4565},[3925,21800,21801,21804,21806],{"class":3927,"line":9168},[3925,21802,21803],{"class":4579},"                    variant",[3925,21805,4583],{"class":4508},[3925,21807,15825],{"class":4521},[3925,21809,21810,21813,21815,21817,21819,21821,21823,21825,21827,21829,21831,21833,21835],{"class":3927,"line":9197},[3925,21811,21812],{"class":4579},"                    color",[3925,21814,4583],{"class":4508},[3925,21816,4594],{"class":4540},[3925,21818,16639],{"class":4512},[3925,21820,10922],{"class":4508},[3925,21822,13324],{"class":4512},[3925,21824,3595],{"class":4597},[3925,21826,16648],{"class":4512},[3925,21828,10928],{"class":4508},[3925,21830,13324],{"class":4512},[3925,21832,3595],{"class":4597},[3925,21834,4355],{"class":4512},[3925,21836,4016],{"class":4540},[3925,21838,21839,21842,21844,21846,21848,21850,21852],{"class":3927,"line":9226},[3925,21840,21841],{"class":4579},"                    style",[3925,21843,4583],{"class":4508},[3925,21845,4594],{"class":4540},[3925,21847,8365],{"class":4512},[3925,21849,3595],{"class":4597},[3925,21851,16675],{"class":4512},[3925,21853,4016],{"class":4540},[3925,21855,21856],{"class":3927,"line":9234},[3925,21857,21858],{"class":4561},"                  >\n",[3925,21860,21861,21864,21866,21868,21870],{"class":3927,"line":9245},[3925,21862,21863],{"class":4540},"                    {",[3925,21865,3512],{"class":4512},[3925,21867,3595],{"class":4597},[3925,21869,11017],{"class":4512},[3925,21871,4016],{"class":4540},[3925,21873,21874,21877,21879],{"class":3927,"line":9255},[3925,21875,21876],{"class":4561},"                  \u003C\u002F",[3925,21878,14664],{"class":4565},[3925,21880,4568],{"class":4561},[3925,21882,21883,21885,21887],{"class":3927,"line":9265},[3925,21884,16703],{"class":4561},[3925,21886,8724],{"class":4565},[3925,21888,4568],{"class":4561},[3925,21890,21891],{"class":3927,"line":9275},[3925,21892,21893],{"class":4597},"              );\n",[3925,21895,21896,21899],{"class":3927,"line":9286},[3925,21897,21898],{"class":4597},"            })",[3925,21900,4016],{"class":4540},[3925,21902,21903,21905,21907],{"class":3927,"line":9291},[3925,21904,8857],{"class":4561},[3925,21906,8398],{"class":4565},[3925,21908,4568],{"class":4561},[3925,21910,21911,21913,21915],{"class":3927,"line":9319},[3925,21912,8493],{"class":4561},[3925,21914,8398],{"class":4565},[3925,21916,4568],{"class":4561},[3925,21918,21919],{"class":3927,"line":9346},[3925,21920,3950],{"emptyLinePlaceholder":3949},[3925,21922,21923,21925],{"class":3927,"line":9354},[3925,21924,7335],{"class":4561},[3925,21926,15682],{"class":4565},[3925,21928,21929,21931,21933,21935],{"class":3927,"line":9363},[3925,21930,8911],{"class":4579},[3925,21932,4583],{"class":4508},[3925,21934,4594],{"class":4540},[3925,21936,15693],{"class":4597},[3925,21938,21939,21941,21943,21945],{"class":3927,"line":9373},[3925,21940,21366],{"class":4512},[3925,21942,3595],{"class":4597},[3925,21944,4983],{"class":4512},[3925,21946,5051],{"class":4597},[3925,21948,21949],{"class":3927,"line":9383},[3925,21950,21377],{"class":4597},[3925,21952,21953,21955,21957,21959,21961],{"class":3927,"line":9388},[3925,21954,21382],{"class":4512},[3925,21956,13324],{"class":4512},[3925,21958,3595],{"class":4597},[3925,21960,16513],{"class":4512},[3925,21962,5051],{"class":4597},[3925,21964,21965,21967,21969,21971,21973],{"class":3927,"line":9396},[3925,21966,21395],{"class":4512},[3925,21968,13324],{"class":4512},[3925,21970,3595],{"class":4597},[3925,21972,13783],{"class":4512},[3925,21974,5051],{"class":4597},[3925,21976,21977,21979,21981,21983,21985],{"class":3927,"line":9405},[3925,21978,21408],{"class":4512},[3925,21980,15307],{"class":4512},[3925,21982,3595],{"class":4597},[3925,21984,15312],{"class":4512},[3925,21986,5051],{"class":4597},[3925,21988,21989,21991,21993,21995,21997],{"class":3927,"line":9415},[3925,21990,21421],{"class":4512},[3925,21992,15307],{"class":4512},[3925,21994,3595],{"class":4597},[3925,21996,15372],{"class":4512},[3925,21998,5051],{"class":4597},[3925,22000,22001],{"class":3927,"line":9424},[3925,22002,21434],{"class":4597},[3925,22004,22005,22007],{"class":3927,"line":9435},[3925,22006,21439],{"class":4597},[3925,22008,4016],{"class":4540},[3925,22010,22011],{"class":3927,"line":9440},[3925,22012,8957],{"class":4561},[3925,22014,22015,22017,22019,22021,22023,22025,22027,22029,22031,22033,22035,22037,22040,22042,22044],{"class":3927,"line":9460},[3925,22016,8630],{"class":4561},[3925,22018,14664],{"class":4565},[3925,22020,7232],{"class":4579},[3925,22022,4583],{"class":4508},[3925,22024,4594],{"class":4540},[3925,22026,4598],{"class":4597},[3925,22028,7300],{"class":4512},[3925,22030,9308],{"class":4521},[3925,22032,4607],{"class":4597},[3925,22034,4610],{"class":4540},[3925,22036,8439],{"class":4561},[3925,22038,22039],{"class":4508},"Навігація (Expo Router)",[3925,22041,8445],{"class":4561},[3925,22043,14664],{"class":4565},[3925,22045,4568],{"class":4561},[3925,22047,22048,22050,22052,22054,22056,22058,22060,22062,22064,22066,22068,22070,22072],{"class":3927,"line":11409},[3925,22049,8630],{"class":4561},[3925,22051,14664],{"class":4565},[3925,22053,15773],{"class":4579},[3925,22055,4583],{"class":4508},[3925,22057,16084],{"class":4521},[3925,22059,7720],{"class":4579},[3925,22061,4583],{"class":4508},[3925,22063,4594],{"class":4540},[3925,22065,13240],{"class":4512},[3925,22067,3595],{"class":4597},[3925,22069,13752],{"class":4512},[3925,22071,4610],{"class":4540},[3925,22073,4568],{"class":4561},[3925,22075,22076],{"class":3927,"line":11418},[3925,22077,22078],{"class":4508},"            Нижні вкладки — група маршрутів (tabs). «Нова поїздка» відкривається\n",[3925,22080,22081],{"class":3927,"line":11427},[3925,22082,22083],{"class":4508},"            поверх вкладок у Stack. Нижче — приклад компонента Link (як якір на\n",[3925,22085,22086],{"class":3927,"line":11437},[3925,22087,22088],{"class":4508},"            вебі).\n",[3925,22090,22091,22093,22095],{"class":3927,"line":11446},[3925,22092,8857],{"class":4561},[3925,22094,14664],{"class":4565},[3925,22096,4568],{"class":4561},[3925,22098,22099,22101,22103,22105,22107,22110,22112],{"class":3927,"line":11457},[3925,22100,8630],{"class":4561},[3925,22102,3535],{"class":4565},[3925,22104,8691],{"class":4579},[3925,22106,4583],{"class":4508},[3925,22108,22109],{"class":4521},"\"\u002Fcreate-trip\"",[3925,22111,8715],{"class":4579},[3925,22113,4568],{"class":4561},[3925,22115,22116,22118,22121],{"class":3927,"line":11462},[3925,22117,18626],{"class":4540},[3925,22119,22120],{"class":4498},"\u002F* presentation: modal задано в кореневому Stack *\u002F",[3925,22122,4016],{"class":4540},[3925,22124,22125],{"class":3927,"line":11470},[3925,22126,3950],{"emptyLinePlaceholder":3949},[3925,22128,22129,22131],{"class":3927,"line":11479},[3925,22130,7697],{"class":4561},[3925,22132,8906],{"class":4565},[3925,22134,22135,22138,22140,22142],{"class":3927,"line":11488},[3925,22136,22137],{"class":4579},"              style",[3925,22139,4583],{"class":4508},[3925,22141,4594],{"class":4540},[3925,22143,15693],{"class":4597},[3925,22145,22146,22149,22151,22154],{"class":3927,"line":11497},[3925,22147,22148],{"class":4512},"                styles",[3925,22150,3595],{"class":4597},[3925,22152,22153],{"class":4512},"linkBtn",[3925,22155,5051],{"class":4597},[3925,22157,22158],{"class":3927,"line":11506},[3925,22159,22160],{"class":4597},"                {\n",[3925,22162,22163,22166,22168,22170,22172],{"class":3927,"line":11515},[3925,22164,22165],{"class":4512},"                  backgroundColor:",[3925,22167,13324],{"class":4512},[3925,22169,3595],{"class":4597},[3925,22171,13358],{"class":4512},[3925,22173,5051],{"class":4597},[3925,22175,22176,22179,22181,22183,22185,22188,22190],{"class":3927,"line":11524},[3925,22177,22178],{"class":4512},"                  paddingVertical:",[3925,22180,15307],{"class":4512},[3925,22182,3595],{"class":4597},[3925,22184,15372],{"class":4512},[3925,22186,22187],{"class":4508}," +",[3925,22189,9179],{"class":5990},[3925,22191,5051],{"class":4597},[3925,22193,22194,22197,22199],{"class":3927,"line":11533},[3925,22195,22196],{"class":4512},"                  borderRadius:",[3925,22198,7612],{"class":5990},[3925,22200,5051],{"class":4597},[3925,22202,22203],{"class":3927,"line":11542},[3925,22204,22205],{"class":4597},"                },\n",[3925,22207,22208,22211],{"class":3927,"line":11547},[3925,22209,22210],{"class":4597},"              ]",[3925,22212,4016],{"class":4540},[3925,22214,22215],{"class":3927,"line":11563},[3925,22216,22217],{"class":4561},"            >\n",[3925,22219,22220,22222,22224,22226,22228,22230,22232,22234,22236,22238,22240,22242,22244,22246,22248,22250,22252,22254],{"class":3927,"line":11570},[3925,22221,8745],{"class":4561},[3925,22223,14664],{"class":4565},[3925,22225,7720],{"class":4579},[3925,22227,4583],{"class":4508},[3925,22229,4594],{"class":4540},[3925,22231,13240],{"class":4512},[3925,22233,3595],{"class":4597},[3925,22235,16648],{"class":4512},[3925,22237,4610],{"class":4540},[3925,22239,7232],{"class":4579},[3925,22241,4583],{"class":4508},[3925,22243,4594],{"class":4540},[3925,22245,4598],{"class":4597},[3925,22247,7300],{"class":4512},[3925,22249,9308],{"class":4521},[3925,22251,4607],{"class":4597},[3925,22253,4610],{"class":4540},[3925,22255,4568],{"class":4561},[3925,22257,22258],{"class":3927,"line":11580},[3925,22259,22260],{"class":4508},"                Відкрити форму (Link)\n",[3925,22262,22263,22265,22267],{"class":3927,"line":11589},[3925,22264,8839],{"class":4561},[3925,22266,14664],{"class":4565},[3925,22268,4568],{"class":4561},[3925,22270,22271,22273,22275],{"class":3927,"line":11598},[3925,22272,8848],{"class":4561},[3925,22274,8724],{"class":4565},[3925,22276,4568],{"class":4561},[3925,22278,22279,22281,22283],{"class":3927,"line":11607},[3925,22280,8857],{"class":4561},[3925,22282,3535],{"class":4565},[3925,22284,4568],{"class":4561},[3925,22286,22287,22289,22291],{"class":3927,"line":11616},[3925,22288,8493],{"class":4561},[3925,22290,8398],{"class":4565},[3925,22292,4568],{"class":4561},[3925,22294,22295],{"class":3927,"line":11621},[3925,22296,3950],{"emptyLinePlaceholder":3949},[3925,22298,22299,22301,22303,22305,22307,22309,22311,22313,22315,22317,22319,22321,22323],{"class":3927,"line":11640},[3925,22300,7335],{"class":4561},[3925,22302,14664],{"class":4565},[3925,22304,15773],{"class":4579},[3925,22306,4583],{"class":4508},[3925,22308,16084],{"class":4521},[3925,22310,7720],{"class":4579},[3925,22312,4583],{"class":4508},[3925,22314,4594],{"class":4540},[3925,22316,13240],{"class":4512},[3925,22318,3595],{"class":4597},[3925,22320,13752],{"class":4512},[3925,22322,4610],{"class":4540},[3925,22324,4568],{"class":4561},[3925,22326,22327],{"class":3927,"line":15952},[3925,22328,22329],{"class":4508},"          Репозиторій: github.com\u002Farakviel\u002Fnomad\n",[3925,22331,22332,22334,22336],{"class":3927,"line":15958},[3925,22333,8493],{"class":4561},[3925,22335,14664],{"class":4565},[3925,22337,4568],{"class":4561},[3925,22339,22340,22342,22344],{"class":3927,"line":15972},[3925,22341,7434],{"class":4561},[3925,22343,9486],{"class":4565},[3925,22345,4568],{"class":4561},[3925,22347,22348,22350,22352],{"class":3927,"line":15986},[3925,22349,4669],{"class":4561},[3925,22351,14674],{"class":4565},[3925,22353,4568],{"class":4561},[3925,22355,22356],{"class":3927,"line":16000},[3925,22357,4678],{"class":4508},[3925,22359,22360],{"class":3927,"line":16015},[3925,22361,4016],{"class":4508},[3925,22363,22364],{"class":3927,"line":16029},[3925,22365,3950],{"emptyLinePlaceholder":3949},[3925,22367,22368,22370,22372,22374,22376,22378,22380],{"class":3927,"line":16035},[3925,22369,5930],{"class":4540},[3925,22371,9037],{"class":5194},[3925,22373,5967],{"class":4508},[3925,22375,9042],{"class":4512},[3925,22377,3595],{"class":4508},[3925,22379,9047],{"class":4544},[3925,22381,9050],{"class":4508},[3925,22383,22384,22386],{"class":3927,"line":16043},[3925,22385,17322],{"class":4512},[3925,22387,5617],{"class":4508},[3925,22389,22390,22392,22394],{"class":3927,"line":16048},[3925,22391,9086],{"class":4512},[3925,22393,15345],{"class":5990},[3925,22395,5051],{"class":4508},[3925,22397,22398],{"class":3927,"line":16073},[3925,22399,6584],{"class":4508},[3925,22401,22402,22404],{"class":3927,"line":16109},[3925,22403,9229],{"class":4512},[3925,22405,5617],{"class":4508},[3925,22407,22408,22410,22412],{"class":3927,"line":16135},[3925,22409,9258],{"class":4512},[3925,22411,9064],{"class":5990},[3925,22413,5051],{"class":4508},[3925,22415,22416,22418,22420],{"class":3927,"line":16144},[3925,22417,9248],{"class":4512},[3925,22419,7612],{"class":5990},[3925,22421,5051],{"class":4508},[3925,22423,22424],{"class":3927,"line":16151},[3925,22425,6584],{"class":4508},[3925,22427,22428,22430],{"class":3927,"line":16161},[3925,22429,17365],{"class":4512},[3925,22431,5617],{"class":4508},[3925,22433,22434,22436,22438],{"class":3927,"line":16172},[3925,22435,17373],{"class":4512},[3925,22437,17376],{"class":4521},[3925,22439,5051],{"class":4508},[3925,22441,22442,22444,22446],{"class":3927,"line":16186},[3925,22443,17384],{"class":4512},[3925,22445,17387],{"class":4521},[3925,22447,5051],{"class":4508},[3925,22449,22450],{"class":3927,"line":16200},[3925,22451,6584],{"class":4508},[3925,22453,22454,22456],{"class":3927,"line":16210},[3925,22455,17400],{"class":4512},[3925,22457,5617],{"class":4508},[3925,22459,22460,22462,22464],{"class":3927,"line":16217},[3925,22461,9086],{"class":4512},[3925,22463,7612],{"class":5990},[3925,22465,5051],{"class":4508},[3925,22467,22468,22470,22472],{"class":3927,"line":16222},[3925,22469,9408],{"class":4512},[3925,22471,9100],{"class":5990},[3925,22473,5051],{"class":4508},[3925,22475,22476,22478,22480],{"class":3927,"line":16239},[3925,22477,9248],{"class":4512},[3925,22479,9100],{"class":5990},[3925,22481,5051],{"class":4508},[3925,22483,22484,22486,22488],{"class":3927,"line":16274},[3925,22485,9258],{"class":4512},[3925,22487,9064],{"class":5990},[3925,22489,5051],{"class":4508},[3925,22491,22492],{"class":3927,"line":16285},[3925,22493,6584],{"class":4508},[3925,22495,22496,22498],{"class":3927,"line":16294},[3925,22497,17449],{"class":4512},[3925,22499,5617],{"class":4508},[3925,22501,22502,22504,22506],{"class":3927,"line":16299},[3925,22503,11430],{"class":4512},[3925,22505,7303],{"class":4521},[3925,22507,5051],{"class":4508},[3925,22509,22510],{"class":3927,"line":16349},[3925,22511,6584],{"class":4508},[3925,22513,22514,22517],{"class":3927,"line":16372},[3925,22515,22516],{"class":4512},"  linkBtn:",[3925,22518,5617],{"class":4508},[3925,22520,22521,22523,22525],{"class":3927,"line":16398},[3925,22522,9427],{"class":4512},[3925,22524,9430],{"class":4521},[3925,22526,5051],{"class":4508},[3925,22528,22529],{"class":3927,"line":16406},[3925,22530,6584],{"class":4508},[3925,22532,22533],{"class":3927,"line":16413},[3925,22534,5739],{"class":4508},[3916,22536,22539],{"className":4489,"code":22537,"filename":22538,"language":4491,"meta":3921,"style":3921},"import { StyleSheet } from 'react-native';\nimport { useRouter } from 'expo-router';\n\nimport { CreateTripForm, useTrips } from '@\u002Ffeatures\u002Ftrips';\nimport { Screen } from '@\u002Fshared\u002Fui';\n\n\u002F**\n * Екран створення поїздки — Stack-екран поза Tabs.\n * Заголовок і системна кнопка «назад» задаються в app\u002F_layout.tsx (Stack.Screen options).\n *\u002F\nexport default function CreateTripScreen() {\n  const router = useRouter();\n  const { addTrip } = useTrips();\n\n  return (\n    \u003CScreen style={styles.screen}>\n      \u003CCreateTripForm\n        onSubmitSuccess={(trip) => {\n          addTrip(trip);\n          router.back();\n        }}\n        onCancel={() => router.back()}\n      \u002F>\n    \u003C\u002FScreen>\n  );\n}\n\nconst styles = StyleSheet.create({\n  screen: {\n    paddingHorizontal: 0,\n  },\n});\n","app\u002Fcreate-trip.tsx",[3521,22540,22541,22557,22573,22577,22598,22614,22618,22622,22627,22632,22636,22649,22661,22675,22679,22685,22707,22714,22733,22744,22755,22761,22784,22788,22796,22800,22804,22808,22824,22830,22838,22842],{"__ignoreMap":3921},[3925,22542,22543,22545,22547,22549,22551,22553,22555],{"class":3927,"line":3928},[3925,22544,4505],{"class":4504},[3925,22546,4509],{"class":4508},[3925,22548,9042],{"class":4512},[3925,22550,4515],{"class":4508},[3925,22552,4518],{"class":4504},[3925,22554,8175],{"class":4521},[3925,22556,4525],{"class":4508},[3925,22558,22559,22561,22563,22565,22567,22569,22571],{"class":3927,"line":3934},[3925,22560,4505],{"class":4504},[3925,22562,4509],{"class":4508},[3925,22564,3539],{"class":4512},[3925,22566,4515],{"class":4508},[3925,22568,4518],{"class":4504},[3925,22570,4522],{"class":4521},[3925,22572,4525],{"class":4508},[3925,22574,22575],{"class":3927,"line":3940},[3925,22576,3950],{"emptyLinePlaceholder":3949},[3925,22578,22579,22581,22583,22586,22588,22590,22592,22594,22596],{"class":3927,"line":3946},[3925,22580,4505],{"class":4504},[3925,22582,4509],{"class":4508},[3925,22584,22585],{"class":4512},"CreateTripForm",[3925,22587,4191],{"class":4508},[3925,22589,14822],{"class":4512},[3925,22591,4515],{"class":4508},[3925,22593,4518],{"class":4504},[3925,22595,13133],{"class":4521},[3925,22597,4525],{"class":4508},[3925,22599,22600,22602,22604,22606,22608,22610,22612],{"class":3927,"line":3953},[3925,22601,4505],{"class":4504},[3925,22603,4509],{"class":4508},[3925,22605,14674],{"class":4512},[3925,22607,4515],{"class":4508},[3925,22609,4518],{"class":4504},[3925,22611,14681],{"class":4521},[3925,22613,4525],{"class":4508},[3925,22615,22616],{"class":3927,"line":3959},[3925,22617,3950],{"emptyLinePlaceholder":3949},[3925,22619,22620],{"class":3927,"line":3965},[3925,22621,13166],{"class":4498},[3925,22623,22624],{"class":3927,"line":3971},[3925,22625,22626],{"class":4498}," * Екран створення поїздки — Stack-екран поза Tabs.\n",[3925,22628,22629],{"class":3927,"line":3977},[3925,22630,22631],{"class":4498}," * Заголовок і системна кнопка «назад» задаються в app\u002F_layout.tsx (Stack.Screen options).\n",[3925,22633,22634],{"class":3927,"line":3983},[3925,22635,13196],{"class":4498},[3925,22637,22638,22640,22642,22644,22647],{"class":3927,"line":3989},[3925,22639,4534],{"class":4504},[3925,22641,4537],{"class":4504},[3925,22643,4541],{"class":4540},[3925,22645,22646],{"class":4544}," CreateTripScreen",[3925,22648,4548],{"class":4508},[3925,22650,22651,22653,22655,22657,22659],{"class":3927,"line":3995},[3925,22652,6909],{"class":4540},[3925,22654,8304],{"class":5194},[3925,22656,5967],{"class":4508},[3925,22658,3539],{"class":4544},[3925,22660,7020],{"class":4508},[3925,22662,22663,22665,22667,22669,22671,22673],{"class":3927,"line":4001},[3925,22664,6909],{"class":4540},[3925,22666,4509],{"class":4508},[3925,22668,6165],{"class":5194},[3925,22670,5937],{"class":4508},[3925,22672,14822],{"class":4544},[3925,22674,7020],{"class":4508},[3925,22676,22677],{"class":3927,"line":4007},[3925,22678,3950],{"emptyLinePlaceholder":3949},[3925,22680,22681,22683],{"class":3927,"line":4013},[3925,22682,4553],{"class":4504},[3925,22684,4556],{"class":4508},[3925,22686,22687,22689,22691,22693,22695,22697,22699,22701,22703,22705],{"class":3927,"line":4019},[3925,22688,4562],{"class":4561},[3925,22690,14674],{"class":4565},[3925,22692,7232],{"class":4579},[3925,22694,4583],{"class":4508},[3925,22696,4594],{"class":4540},[3925,22698,8365],{"class":4512},[3925,22700,3595],{"class":4597},[3925,22702,15918],{"class":4512},[3925,22704,4610],{"class":4540},[3925,22706,4568],{"class":4561},[3925,22708,22709,22711],{"class":3927,"line":4024},[3925,22710,4573],{"class":4561},[3925,22712,22713],{"class":4565},"CreateTripForm\n",[3925,22715,22716,22719,22721,22723,22725,22727,22729,22731],{"class":3927,"line":4030},[3925,22717,22718],{"class":4579},"        onSubmitSuccess",[3925,22720,4583],{"class":4508},[3925,22722,4594],{"class":4540},[3925,22724,4702],{"class":4597},[3925,22726,4711],{"class":4512},[3925,22728,6701],{"class":4597},[3925,22730,5614],{"class":4540},[3925,22732,5617],{"class":4597},[3925,22734,22735,22738,22740,22742],{"class":3927,"line":4036},[3925,22736,22737],{"class":4544},"          addTrip",[3925,22739,4702],{"class":4597},[3925,22741,4711],{"class":4512},[3925,22743,4724],{"class":4597},[3925,22745,22746,22749,22751,22753],{"class":3927,"line":4041},[3925,22747,22748],{"class":4512},"          router",[3925,22750,3595],{"class":4597},[3925,22752,4298],{"class":4544},[3925,22754,7020],{"class":4597},[3925,22756,22757,22759],{"class":3927,"line":4047},[3925,22758,7323],{"class":4597},[3925,22760,4016],{"class":4540},[3925,22762,22763,22766,22768,22770,22772,22774,22776,22778,22780,22782],{"class":3927,"line":4053},[3925,22764,22765],{"class":4579},"        onCancel",[3925,22767,4583],{"class":4508},[3925,22769,4594],{"class":4540},[3925,22771,8586],{"class":4597},[3925,22773,5614],{"class":4540},[3925,22775,8304],{"class":4512},[3925,22777,3595],{"class":4597},[3925,22779,4298],{"class":4544},[3925,22781,9801],{"class":4597},[3925,22783,4016],{"class":4540},[3925,22785,22786],{"class":3927,"line":4059},[3925,22787,4664],{"class":4561},[3925,22789,22790,22792,22794],{"class":3927,"line":4065},[3925,22791,4669],{"class":4561},[3925,22793,14674],{"class":4565},[3925,22795,4568],{"class":4561},[3925,22797,22798],{"class":3927,"line":4070},[3925,22799,4678],{"class":4508},[3925,22801,22802],{"class":3927,"line":4076},[3925,22803,4016],{"class":4508},[3925,22805,22806],{"class":3927,"line":4082},[3925,22807,3950],{"emptyLinePlaceholder":3949},[3925,22809,22810,22812,22814,22816,22818,22820,22822],{"class":3927,"line":4088},[3925,22811,5930],{"class":4540},[3925,22813,9037],{"class":5194},[3925,22815,5967],{"class":4508},[3925,22817,9042],{"class":4512},[3925,22819,3595],{"class":4508},[3925,22821,9047],{"class":4544},[3925,22823,9050],{"class":4508},[3925,22825,22826,22828],{"class":3927,"line":4093},[3925,22827,17322],{"class":4512},[3925,22829,5617],{"class":4508},[3925,22831,22832,22834,22836],{"class":3927,"line":4098},[3925,22833,9086],{"class":4512},[3925,22835,15345],{"class":5990},[3925,22837,5051],{"class":4508},[3925,22839,22840],{"class":3927,"line":6720},[3925,22841,6584],{"class":4508},[3925,22843,22844],{"class":3927,"line":6738},[3925,22845,5739],{"class":4508},[3916,22847,22850],{"className":6417,"code":22848,"filename":22849,"language":6419,"meta":3921,"style":3921},"export { mockTrips } from '.\u002Fmodel\u002FmockTrips';\nexport { mockPlaces } from '.\u002Fmodel\u002FmockPlaces';\nexport { getPlacesForTrip } from '.\u002Fmodel\u002FplacesHelpers';\nexport type { Trip, Place, TripRegion } from '.\u002Fmodel\u002Ftypes';\nexport { TRIP_REGIONS } from '.\u002Fmodel\u002Ftypes';\nexport { TripCard } from '.\u002Fui\u002FTripCard';\nexport { PlaceChip } from '.\u002Fui\u002FPlaceChip';\nexport { CreateTripForm } from '.\u002Fui\u002FCreateTripForm';\nexport { DateField } from '.\u002Fui\u002FDateField';\nexport { FormRow } from '.\u002Fui\u002FFormRow';\nexport { TripsProvider, useTrips } from '.\u002Fmodel\u002FTripsProvider';\nexport {\n  createTripSchema,\n  type CreateTripFormValues,\n} from '.\u002Fmodel\u002FcreateTripSchema';\nexport { formatTripDateLabel } from '.\u002Fmodel\u002FformatTripDates';\n","src\u002Ffeatures\u002Ftrips\u002Findex.ts",[3521,22851,22852,22870,22887,22904,22932,22949,22966,22983,23000,23018,23036,23057,23063,23070,23079,23090],{"__ignoreMap":3921},[3925,22853,22854,22856,22858,22861,22863,22865,22868],{"class":3927,"line":3928},[3925,22855,4534],{"class":4504},[3925,22857,4509],{"class":4508},[3925,22859,22860],{"class":4512},"mockTrips",[3925,22862,4515],{"class":4508},[3925,22864,4518],{"class":4504},[3925,22866,22867],{"class":4521}," '.\u002Fmodel\u002FmockTrips'",[3925,22869,4525],{"class":4508},[3925,22871,22872,22874,22876,22878,22880,22882,22885],{"class":3927,"line":3934},[3925,22873,4534],{"class":4504},[3925,22875,4509],{"class":4508},[3925,22877,14880],{"class":4512},[3925,22879,4515],{"class":4508},[3925,22881,4518],{"class":4504},[3925,22883,22884],{"class":4521}," '.\u002Fmodel\u002FmockPlaces'",[3925,22886,4525],{"class":4508},[3925,22888,22889,22891,22893,22895,22897,22899,22902],{"class":3927,"line":3940},[3925,22890,4534],{"class":4504},[3925,22892,4509],{"class":4508},[3925,22894,12235],{"class":4512},[3925,22896,4515],{"class":4508},[3925,22898,4518],{"class":4504},[3925,22900,22901],{"class":4521}," '.\u002Fmodel\u002FplacesHelpers'",[3925,22903,4525],{"class":4508},[3925,22905,22906,22908,22910,22912,22914,22916,22918,22920,22923,22925,22927,22930],{"class":3927,"line":3946},[3925,22907,4534],{"class":4504},[3925,22909,6428],{"class":4504},[3925,22911,4509],{"class":4508},[3925,22913,14935],{"class":4512},[3925,22915,4191],{"class":4508},[3925,22917,14874],{"class":4512},[3925,22919,4191],{"class":4508},[3925,22921,22922],{"class":4512},"TripRegion",[3925,22924,4515],{"class":4508},[3925,22926,4518],{"class":4504},[3925,22928,22929],{"class":4521}," '.\u002Fmodel\u002Ftypes'",[3925,22931,4525],{"class":4508},[3925,22933,22934,22936,22938,22941,22943,22945,22947],{"class":3927,"line":3953},[3925,22935,4534],{"class":4504},[3925,22937,4509],{"class":4508},[3925,22939,22940],{"class":4512},"TRIP_REGIONS",[3925,22942,4515],{"class":4508},[3925,22944,4518],{"class":4504},[3925,22946,22929],{"class":4521},[3925,22948,4525],{"class":4508},[3925,22950,22951,22953,22955,22957,22959,22961,22964],{"class":3927,"line":3959},[3925,22952,4534],{"class":4504},[3925,22954,4509],{"class":4508},[3925,22956,15198],{"class":4512},[3925,22958,4515],{"class":4508},[3925,22960,4518],{"class":4504},[3925,22962,22963],{"class":4521}," '.\u002Fui\u002FTripCard'",[3925,22965,4525],{"class":4508},[3925,22967,22968,22970,22972,22974,22976,22978,22981],{"class":3927,"line":3965},[3925,22969,4534],{"class":4504},[3925,22971,4509],{"class":4508},[3925,22973,15486],{"class":4512},[3925,22975,4515],{"class":4508},[3925,22977,4518],{"class":4504},[3925,22979,22980],{"class":4521}," '.\u002Fui\u002FPlaceChip'",[3925,22982,4525],{"class":4508},[3925,22984,22985,22987,22989,22991,22993,22995,22998],{"class":3927,"line":3971},[3925,22986,4534],{"class":4504},[3925,22988,4509],{"class":4508},[3925,22990,22585],{"class":4512},[3925,22992,4515],{"class":4508},[3925,22994,4518],{"class":4504},[3925,22996,22997],{"class":4521}," '.\u002Fui\u002FCreateTripForm'",[3925,22999,4525],{"class":4508},[3925,23001,23002,23004,23006,23009,23011,23013,23016],{"class":3927,"line":3977},[3925,23003,4534],{"class":4504},[3925,23005,4509],{"class":4508},[3925,23007,23008],{"class":4512},"DateField",[3925,23010,4515],{"class":4508},[3925,23012,4518],{"class":4504},[3925,23014,23015],{"class":4521}," '.\u002Fui\u002FDateField'",[3925,23017,4525],{"class":4508},[3925,23019,23020,23022,23024,23027,23029,23031,23034],{"class":3927,"line":3983},[3925,23021,4534],{"class":4504},[3925,23023,4509],{"class":4508},[3925,23025,23026],{"class":4512},"FormRow",[3925,23028,4515],{"class":4508},[3925,23030,4518],{"class":4504},[3925,23032,23033],{"class":4521}," '.\u002Fui\u002FFormRow'",[3925,23035,4525],{"class":4508},[3925,23037,23038,23040,23042,23044,23046,23048,23050,23052,23055],{"class":3927,"line":3989},[3925,23039,4534],{"class":4504},[3925,23041,4509],{"class":4508},[3925,23043,5242],{"class":4512},[3925,23045,4191],{"class":4508},[3925,23047,14822],{"class":4512},[3925,23049,4515],{"class":4508},[3925,23051,4518],{"class":4504},[3925,23053,23054],{"class":4521}," '.\u002Fmodel\u002FTripsProvider'",[3925,23056,4525],{"class":4508},[3925,23058,23059,23061],{"class":3927,"line":3995},[3925,23060,4534],{"class":4504},[3925,23062,5617],{"class":4508},[3925,23064,23065,23068],{"class":3927,"line":4001},[3925,23066,23067],{"class":4512},"  createTripSchema",[3925,23069,5051],{"class":4508},[3925,23071,23072,23074,23077],{"class":3927,"line":4007},[3925,23073,14608],{"class":4504},[3925,23075,23076],{"class":4512}," CreateTripFormValues",[3925,23078,5051],{"class":4508},[3925,23080,23081,23083,23085,23088],{"class":3927,"line":4013},[3925,23082,8170],{"class":4508},[3925,23084,4518],{"class":4504},[3925,23086,23087],{"class":4521}," '.\u002Fmodel\u002FcreateTripSchema'",[3925,23089,4525],{"class":4508},[3925,23091,23092,23094,23096,23099,23101,23103,23106],{"class":3927,"line":4019},[3925,23093,4534],{"class":4504},[3925,23095,4509],{"class":4508},[3925,23097,23098],{"class":4512},"formatTripDateLabel",[3925,23100,4515],{"class":4508},[3925,23102,4518],{"class":4504},[3925,23104,23105],{"class":4521}," '.\u002Fmodel\u002FformatTripDates'",[3925,23107,4525],{"class":4508},[3916,23109,23112],{"className":6417,"code":23110,"filename":23111,"language":6419,"meta":3921,"style":3921},"export type Trip = {\n  id: string;\n  title: string;\n  dateLabel: string;\n  description: string;\n  coverUri: string;\n  \u002F** Регіон \u002F макрозона (з Picker у формі створення). *\u002F\n  region: string;\n  \u002F** Приватна поїздка (Switch) — навчальна мітка на картці. *\u002F\n  isPrivate?: boolean;\n  \u002F** Скільки днів плануємо (Slider 1–14). *\u002F\n  plannedDays?: number;\n  \u002F** Є попередній план маршруту (Checkbox). *\u002F\n  hasItinerary?: boolean;\n};\n\nexport type Place = {\n  id: string;\n  tripId: string;\n  name: string;\n  city: string;\n  note: string;\n};\n\n\u002F** Варіанти регіону для Picker — ті самі рядки, що в mock-стрічці. *\u002F\nexport const TRIP_REGIONS = [\n  'Карпати',\n  'Захід',\n  'Південь',\n  'Центр',\n  'Схід',\n  'Інше',\n] as const;\n\nexport type TripRegion = (typeof TRIP_REGIONS)[number];\n","src\u002Ffeatures\u002Ftrips\u002Fmodel\u002Ftypes.ts",[3521,23113,23114,23124,23134,23144,23155,23166,23177,23182,23193,23198,23210,23215,23226,23231,23242,23246,23250,23260,23270,23281,23291,23302,23313,23317,23321,23326,23338,23345,23352,23359,23366,23373,23380,23392,23396],{"__ignoreMap":3921},[3925,23115,23116,23118,23120,23122],{"class":3927,"line":3928},[3925,23117,4534],{"class":4504},[3925,23119,6428],{"class":4540},[3925,23121,14620],{"class":4565},[3925,23123,5198],{"class":4508},[3925,23125,23126,23128,23130,23132],{"class":3927,"line":3934},[3925,23127,6438],{"class":4512},[3925,23129,4767],{"class":4508},[3925,23131,5949],{"class":4565},[3925,23133,4525],{"class":4508},[3925,23135,23136,23138,23140,23142],{"class":3927,"line":3940},[3925,23137,6449],{"class":4512},[3925,23139,4767],{"class":4508},[3925,23141,5949],{"class":4565},[3925,23143,4525],{"class":4508},[3925,23145,23146,23149,23151,23153],{"class":3927,"line":3946},[3925,23147,23148],{"class":4512},"  dateLabel",[3925,23150,4767],{"class":4508},[3925,23152,5949],{"class":4565},[3925,23154,4525],{"class":4508},[3925,23156,23157,23160,23162,23164],{"class":3927,"line":3953},[3925,23158,23159],{"class":4512},"  description",[3925,23161,4767],{"class":4508},[3925,23163,5949],{"class":4565},[3925,23165,4525],{"class":4508},[3925,23167,23168,23171,23173,23175],{"class":3927,"line":3959},[3925,23169,23170],{"class":4512},"  coverUri",[3925,23172,4767],{"class":4508},[3925,23174,5949],{"class":4565},[3925,23176,4525],{"class":4508},[3925,23178,23179],{"class":3927,"line":3965},[3925,23180,23181],{"class":4498},"  \u002F** Регіон \u002F макрозона (з Picker у формі створення). *\u002F\n",[3925,23183,23184,23187,23189,23191],{"class":3927,"line":3971},[3925,23185,23186],{"class":4512},"  region",[3925,23188,4767],{"class":4508},[3925,23190,5949],{"class":4565},[3925,23192,4525],{"class":4508},[3925,23194,23195],{"class":3927,"line":3977},[3925,23196,23197],{"class":4498},"  \u002F** Приватна поїздка (Switch) — навчальна мітка на картці. *\u002F\n",[3925,23199,23200,23203,23206,23208],{"class":3927,"line":3983},[3925,23201,23202],{"class":4512},"  isPrivate",[3925,23204,23205],{"class":4508},"?: ",[3925,23207,5808],{"class":4565},[3925,23209,4525],{"class":4508},[3925,23211,23212],{"class":3927,"line":3989},[3925,23213,23214],{"class":4498},"  \u002F** Скільки днів плануємо (Slider 1–14). *\u002F\n",[3925,23216,23217,23220,23222,23224],{"class":3927,"line":3995},[3925,23218,23219],{"class":4512},"  plannedDays",[3925,23221,23205],{"class":4508},[3925,23223,6476],{"class":4565},[3925,23225,4525],{"class":4508},[3925,23227,23228],{"class":3927,"line":4001},[3925,23229,23230],{"class":4498},"  \u002F** Є попередній план маршруту (Checkbox). *\u002F\n",[3925,23232,23233,23236,23238,23240],{"class":3927,"line":4007},[3925,23234,23235],{"class":4512},"  hasItinerary",[3925,23237,23205],{"class":4508},[3925,23239,5808],{"class":4565},[3925,23241,4525],{"class":4508},[3925,23243,23244],{"class":3927,"line":4013},[3925,23245,5213],{"class":4508},[3925,23247,23248],{"class":3927,"line":4019},[3925,23249,3950],{"emptyLinePlaceholder":3949},[3925,23251,23252,23254,23256,23258],{"class":3927,"line":4024},[3925,23253,4534],{"class":4504},[3925,23255,6428],{"class":4540},[3925,23257,14611],{"class":4565},[3925,23259,5198],{"class":4508},[3925,23261,23262,23264,23266,23268],{"class":3927,"line":4030},[3925,23263,6438],{"class":4512},[3925,23265,4767],{"class":4508},[3925,23267,5949],{"class":4565},[3925,23269,4525],{"class":4508},[3925,23271,23272,23275,23277,23279],{"class":3927,"line":4036},[3925,23273,23274],{"class":4512},"  tripId",[3925,23276,4767],{"class":4508},[3925,23278,5949],{"class":4565},[3925,23280,4525],{"class":4508},[3925,23282,23283,23285,23287,23289],{"class":3927,"line":4041},[3925,23284,5023],{"class":4512},[3925,23286,4767],{"class":4508},[3925,23288,5949],{"class":4565},[3925,23290,4525],{"class":4508},[3925,23292,23293,23296,23298,23300],{"class":3927,"line":4047},[3925,23294,23295],{"class":4512},"  city",[3925,23297,4767],{"class":4508},[3925,23299,5949],{"class":4565},[3925,23301,4525],{"class":4508},[3925,23303,23304,23307,23309,23311],{"class":3927,"line":4053},[3925,23305,23306],{"class":4512},"  note",[3925,23308,4767],{"class":4508},[3925,23310,5949],{"class":4565},[3925,23312,4525],{"class":4508},[3925,23314,23315],{"class":3927,"line":4059},[3925,23316,5213],{"class":4508},[3925,23318,23319],{"class":3927,"line":4065},[3925,23320,3950],{"emptyLinePlaceholder":3949},[3925,23322,23323],{"class":3927,"line":4070},[3925,23324,23325],{"class":4498},"\u002F** Варіанти регіону для Picker — ті самі рядки, що в mock-стрічці. *\u002F\n",[3925,23327,23328,23330,23332,23335],{"class":3927,"line":4076},[3925,23329,4534],{"class":4504},[3925,23331,5191],{"class":4540},[3925,23333,23334],{"class":5194}," TRIP_REGIONS",[3925,23336,23337],{"class":4508}," = [\n",[3925,23339,23340,23343],{"class":3927,"line":4082},[3925,23341,23342],{"class":4521},"  'Карпати'",[3925,23344,5051],{"class":4508},[3925,23346,23347,23350],{"class":3927,"line":4088},[3925,23348,23349],{"class":4521},"  'Захід'",[3925,23351,5051],{"class":4508},[3925,23353,23354,23357],{"class":3927,"line":4093},[3925,23355,23356],{"class":4521},"  'Південь'",[3925,23358,5051],{"class":4508},[3925,23360,23361,23364],{"class":3927,"line":4098},[3925,23362,23363],{"class":4521},"  'Центр'",[3925,23365,5051],{"class":4508},[3925,23367,23368,23371],{"class":3927,"line":6720},[3925,23369,23370],{"class":4521},"  'Схід'",[3925,23372,5051],{"class":4508},[3925,23374,23375,23378],{"class":3927,"line":6738},[3925,23376,23377],{"class":4521},"  'Інше'",[3925,23379,5051],{"class":4508},[3925,23381,23382,23385,23388,23390],{"class":3927,"line":6787},[3925,23383,23384],{"class":4508},"] ",[3925,23386,23387],{"class":4504},"as",[3925,23389,5191],{"class":4540},[3925,23391,4525],{"class":4508},[3925,23393,23394],{"class":3927,"line":6792},[3925,23395,3950],{"emptyLinePlaceholder":3949},[3925,23397,23398,23400,23402,23405,23408,23411,23413,23416,23418],{"class":3927,"line":6797},[3925,23399,4534],{"class":4504},[3925,23401,6428],{"class":4540},[3925,23403,23404],{"class":4565}," TripRegion",[3925,23406,23407],{"class":4508}," = (",[3925,23409,23410],{"class":4540},"typeof",[3925,23412,23334],{"class":5194},[3925,23414,23415],{"class":4508},")[",[3925,23417,6476],{"class":4565},[3925,23419,6641],{"class":4508},[3916,23421,23424],{"className":6417,"code":23422,"filename":23423,"language":6419,"meta":3921,"style":3921},"import { z } from 'zod';\n\nimport { TRIP_REGIONS } from '.\u002Ftypes';\n\n\u002F**\n * Схема створення поїздки (Zod).\n * Повідомлення — українською: саме їх побачить користувач під полем.\n *\n * Покриває різні типи контролів:\n * - string → TextInput\n * - enum → Picker\n * - date → DateTimePicker\n * - boolean → Switch \u002F Checkbox\n * - number → Slider\n *\u002F\nexport const createTripSchema = z\n  .object({\n    title: z\n      .string()\n      .trim()\n      .min(2, 'Назва має містити щонайменше 2 символи')\n      .max(80, 'Назва занадто довга (макс. 80)'),\n    region: z.enum(TRIP_REGIONS, {\n      error: 'Оберіть регіон зі списку',\n    }),\n    description: z\n      .string()\n      .trim()\n      .min(10, 'Опис — щонайменше 10 символів')\n      .max(500, 'Опис занадто довгий (макс. 500)'),\n    startDate: z.date({ error: 'Оберіть дату початку' }),\n    endDate: z.date({ error: 'Оберіть дату завершення' }),\n    \u002F** Switch: чи ховати поїздку з «публічної» стрічки (навчальна семантика). *\u002F\n    isPrivate: z.boolean(),\n    \u002F** Slider: орієнтовна тривалість у днях. *\u002F\n    plannedDays: z\n      .number()\n      .min(1, 'Мінімум 1 день')\n      .max(14, 'У формі максимум 14 днів'),\n    \u002F** Checkbox: чи є план маршруту. *\u002F\n    hasItinerary: z.boolean(),\n    \u002F**\n     * Checkbox з обов’язковою згодою.\n     * `true` — єдине прийнятне значення (як «прийняти умови»).\n     *\u002F\n    acceptedLocalSave: z.literal(true, {\n      error: 'Підтвердіть, що дані поки зберігаються лише на пристрої',\n    }),\n  })\n  .refine((data) => data.endDate.getTime() >= data.startDate.getTime(), {\n    message: 'Дата завершення не може бути раніше початку',\n    path: ['endDate'],\n  });\n\nexport type CreateTripFormValues = z.infer\u003Ctypeof createTripSchema>;\n","src\u002Ffeatures\u002Ftrips\u002Fmodel\u002FcreateTripSchema.ts",[3521,23425,23426,23444,23448,23465,23469,23473,23478,23483,23487,23492,23497,23502,23507,23512,23517,23521,23535,23545,23552,23562,23570,23589,23608,23628,23638,23642,23649,23657,23665,23683,23701,23724,23744,23749,23762,23767,23774,23782,23800,23818,23823,23836,23841,23846,23851,23856,23874,23883,23887,23892,23937,23947,23959,23963,23967],{"__ignoreMap":3921},[3925,23427,23428,23430,23432,23435,23437,23439,23442],{"class":3927,"line":3928},[3925,23429,4505],{"class":4504},[3925,23431,4509],{"class":4508},[3925,23433,23434],{"class":4512},"z",[3925,23436,4515],{"class":4508},[3925,23438,4518],{"class":4504},[3925,23440,23441],{"class":4521}," 'zod'",[3925,23443,4525],{"class":4508},[3925,23445,23446],{"class":3927,"line":3934},[3925,23447,3950],{"emptyLinePlaceholder":3949},[3925,23449,23450,23452,23454,23456,23458,23460,23463],{"class":3927,"line":3940},[3925,23451,4505],{"class":4504},[3925,23453,4509],{"class":4508},[3925,23455,22940],{"class":4512},[3925,23457,4515],{"class":4508},[3925,23459,4518],{"class":4504},[3925,23461,23462],{"class":4521}," '.\u002Ftypes'",[3925,23464,4525],{"class":4508},[3925,23466,23467],{"class":3927,"line":3946},[3925,23468,3950],{"emptyLinePlaceholder":3949},[3925,23470,23471],{"class":3927,"line":3953},[3925,23472,13166],{"class":4498},[3925,23474,23475],{"class":3927,"line":3959},[3925,23476,23477],{"class":4498}," * Схема створення поїздки (Zod).\n",[3925,23479,23480],{"class":3927,"line":3965},[3925,23481,23482],{"class":4498}," * Повідомлення — українською: саме їх побачить користувач під полем.\n",[3925,23484,23485],{"class":3927,"line":3971},[3925,23486,13186],{"class":4498},[3925,23488,23489],{"class":3927,"line":3977},[3925,23490,23491],{"class":4498}," * Покриває різні типи контролів:\n",[3925,23493,23494],{"class":3927,"line":3983},[3925,23495,23496],{"class":4498}," * - string → TextInput\n",[3925,23498,23499],{"class":3927,"line":3989},[3925,23500,23501],{"class":4498}," * - enum → Picker\n",[3925,23503,23504],{"class":3927,"line":3995},[3925,23505,23506],{"class":4498}," * - date → DateTimePicker\n",[3925,23508,23509],{"class":3927,"line":4001},[3925,23510,23511],{"class":4498}," * - boolean → Switch \u002F Checkbox\n",[3925,23513,23514],{"class":3927,"line":4007},[3925,23515,23516],{"class":4498}," * - number → Slider\n",[3925,23518,23519],{"class":3927,"line":4013},[3925,23520,13196],{"class":4498},[3925,23522,23523,23525,23527,23530,23532],{"class":3927,"line":4019},[3925,23524,4534],{"class":4504},[3925,23526,5191],{"class":4540},[3925,23528,23529],{"class":5194}," createTripSchema",[3925,23531,5967],{"class":4508},[3925,23533,23534],{"class":4512},"z\n",[3925,23536,23537,23540,23543],{"class":3927,"line":4024},[3925,23538,23539],{"class":4508},"  .",[3925,23541,23542],{"class":4544},"object",[3925,23544,9050],{"class":4508},[3925,23546,23547,23549],{"class":3927,"line":4030},[3925,23548,5056],{"class":4512},[3925,23550,23551],{"class":4512}," z\n",[3925,23553,23554,23557,23559],{"class":3927,"line":4036},[3925,23555,23556],{"class":4508},"      .",[3925,23558,5949],{"class":4544},[3925,23560,23561],{"class":4508},"()\n",[3925,23563,23564,23566,23568],{"class":3927,"line":4041},[3925,23565,23556],{"class":4508},[3925,23567,6951],{"class":4544},[3925,23569,23561],{"class":4508},[3925,23571,23572,23574,23577,23579,23581,23583,23586],{"class":3927,"line":4047},[3925,23573,23556],{"class":4508},[3925,23575,23576],{"class":4544},"min",[3925,23578,4702],{"class":4508},[3925,23580,8811],{"class":5990},[3925,23582,4191],{"class":4508},[3925,23584,23585],{"class":4521},"'Назва має містити щонайменше 2 символи'",[3925,23587,23588],{"class":4508},")\n",[3925,23590,23591,23593,23596,23598,23601,23603,23606],{"class":3927,"line":4053},[3925,23592,23556],{"class":4508},[3925,23594,23595],{"class":4544},"max",[3925,23597,4702],{"class":4508},[3925,23599,23600],{"class":5990},"80",[3925,23602,4191],{"class":4508},[3925,23604,23605],{"class":4521},"'Назва занадто довга (макс. 80)'",[3925,23607,5724],{"class":4508},[3925,23609,23610,23613,23616,23618,23621,23623,23625],{"class":3927,"line":4059},[3925,23611,23612],{"class":4512},"    region:",[3925,23614,23615],{"class":4512}," z",[3925,23617,3595],{"class":4508},[3925,23619,23620],{"class":4544},"enum",[3925,23622,4702],{"class":4508},[3925,23624,22940],{"class":5194},[3925,23626,23627],{"class":4508},", {\n",[3925,23629,23630,23633,23636],{"class":3927,"line":4065},[3925,23631,23632],{"class":4512},"      error:",[3925,23634,23635],{"class":4521}," 'Оберіть регіон зі списку'",[3925,23637,5051],{"class":4508},[3925,23639,23640],{"class":3927,"line":4070},[3925,23641,19863],{"class":4508},[3925,23643,23644,23647],{"class":3927,"line":4076},[3925,23645,23646],{"class":4512},"    description:",[3925,23648,23551],{"class":4512},[3925,23650,23651,23653,23655],{"class":3927,"line":4082},[3925,23652,23556],{"class":4508},[3925,23654,5949],{"class":4544},[3925,23656,23561],{"class":4508},[3925,23658,23659,23661,23663],{"class":3927,"line":4088},[3925,23660,23556],{"class":4508},[3925,23662,6951],{"class":4544},[3925,23664,23561],{"class":4508},[3925,23666,23667,23669,23671,23673,23676,23678,23681],{"class":3927,"line":4093},[3925,23668,23556],{"class":4508},[3925,23670,23576],{"class":4544},[3925,23672,4702],{"class":4508},[3925,23674,23675],{"class":5990},"10",[3925,23677,4191],{"class":4508},[3925,23679,23680],{"class":4521},"'Опис — щонайменше 10 символів'",[3925,23682,23588],{"class":4508},[3925,23684,23685,23687,23689,23691,23694,23696,23699],{"class":3927,"line":4098},[3925,23686,23556],{"class":4508},[3925,23688,23595],{"class":4544},[3925,23690,4702],{"class":4508},[3925,23692,23693],{"class":5990},"500",[3925,23695,4191],{"class":4508},[3925,23697,23698],{"class":4521},"'Опис занадто довгий (макс. 500)'",[3925,23700,5724],{"class":4508},[3925,23702,23703,23706,23708,23710,23713,23715,23718,23721],{"class":3927,"line":6720},[3925,23704,23705],{"class":4512},"    startDate:",[3925,23707,23615],{"class":4512},[3925,23709,3595],{"class":4508},[3925,23711,23712],{"class":4544},"date",[3925,23714,8674],{"class":4508},[3925,23716,23717],{"class":4512},"error:",[3925,23719,23720],{"class":4521}," 'Оберіть дату початку'",[3925,23722,23723],{"class":4508}," }),\n",[3925,23725,23726,23729,23731,23733,23735,23737,23739,23742],{"class":3927,"line":6738},[3925,23727,23728],{"class":4512},"    endDate:",[3925,23730,23615],{"class":4512},[3925,23732,3595],{"class":4508},[3925,23734,23712],{"class":4544},[3925,23736,8674],{"class":4508},[3925,23738,23717],{"class":4512},[3925,23740,23741],{"class":4521}," 'Оберіть дату завершення'",[3925,23743,23723],{"class":4508},[3925,23745,23746],{"class":3927,"line":6787},[3925,23747,23748],{"class":4498},"    \u002F** Switch: чи ховати поїздку з «публічної» стрічки (навчальна семантика). *\u002F\n",[3925,23750,23751,23754,23756,23758,23760],{"class":3927,"line":6792},[3925,23752,23753],{"class":4512},"    isPrivate:",[3925,23755,23615],{"class":4512},[3925,23757,3595],{"class":4508},[3925,23759,5808],{"class":4544},[3925,23761,6974],{"class":4508},[3925,23763,23764],{"class":3927,"line":6797},[3925,23765,23766],{"class":4498},"    \u002F** Slider: орієнтовна тривалість у днях. *\u002F\n",[3925,23768,23769,23772],{"class":3927,"line":6827},[3925,23770,23771],{"class":4512},"    plannedDays:",[3925,23773,23551],{"class":4512},[3925,23775,23776,23778,23780],{"class":3927,"line":6862},[3925,23777,23556],{"class":4508},[3925,23779,6476],{"class":4544},[3925,23781,23561],{"class":4508},[3925,23783,23784,23786,23788,23790,23793,23795,23798],{"class":3927,"line":6867},[3925,23785,23556],{"class":4508},[3925,23787,23576],{"class":4544},[3925,23789,4702],{"class":4508},[3925,23791,23792],{"class":5990},"1",[3925,23794,4191],{"class":4508},[3925,23796,23797],{"class":4521},"'Мінімум 1 день'",[3925,23799,23588],{"class":4508},[3925,23801,23802,23804,23806,23808,23811,23813,23816],{"class":3927,"line":6872},[3925,23803,23556],{"class":4508},[3925,23805,23595],{"class":4544},[3925,23807,4702],{"class":4508},[3925,23809,23810],{"class":5990},"14",[3925,23812,4191],{"class":4508},[3925,23814,23815],{"class":4521},"'У формі максимум 14 днів'",[3925,23817,5724],{"class":4508},[3925,23819,23820],{"class":3927,"line":6906},[3925,23821,23822],{"class":4498},"    \u002F** Checkbox: чи є план маршруту. *\u002F\n",[3925,23824,23825,23828,23830,23832,23834],{"class":3927,"line":6921},[3925,23826,23827],{"class":4512},"    hasItinerary:",[3925,23829,23615],{"class":4512},[3925,23831,3595],{"class":4508},[3925,23833,5808],{"class":4544},[3925,23835,6974],{"class":4508},[3925,23837,23838],{"class":3927,"line":6941},[3925,23839,23840],{"class":4498},"    \u002F**\n",[3925,23842,23843],{"class":3927,"line":6962},[3925,23844,23845],{"class":4498},"     * Checkbox з обов’язковою згодою.\n",[3925,23847,23848],{"class":3927,"line":6977},[3925,23849,23850],{"class":4498},"     * `true` — єдине прийнятне значення (як «прийняти умови»).\n",[3925,23852,23853],{"class":3927,"line":6990},[3925,23854,23855],{"class":4498},"     *\u002F\n",[3925,23857,23858,23861,23863,23865,23868,23870,23872],{"class":3927,"line":6996},[3925,23859,23860],{"class":4512},"    acceptedLocalSave:",[3925,23862,23615],{"class":4512},[3925,23864,3595],{"class":4508},[3925,23866,23867],{"class":4544},"literal",[3925,23869,4702],{"class":4508},[3925,23871,10823],{"class":4540},[3925,23873,23627],{"class":4508},[3925,23875,23876,23878,23881],{"class":3927,"line":7014},[3925,23877,23632],{"class":4512},[3925,23879,23880],{"class":4521}," 'Підтвердіть, що дані поки зберігаються лише на пристрої'",[3925,23882,5051],{"class":4508},[3925,23884,23885],{"class":3927,"line":7023},[3925,23886,19863],{"class":4508},[3925,23888,23889],{"class":3927,"line":7032},[3925,23890,23891],{"class":4508},"  })\n",[3925,23893,23894,23896,23899,23901,23903,23905,23907,23910,23912,23915,23917,23920,23923,23925,23927,23930,23932,23934],{"class":3927,"line":7037},[3925,23895,23539],{"class":4508},[3925,23897,23898],{"class":4544},"refine",[3925,23900,6695],{"class":4508},[3925,23902,5608],{"class":4512},[3925,23904,6701],{"class":4508},[3925,23906,5614],{"class":4540},[3925,23908,23909],{"class":4512}," data",[3925,23911,3595],{"class":4508},[3925,23913,23914],{"class":4512},"endDate",[3925,23916,3595],{"class":4508},[3925,23918,23919],{"class":4544},"getTime",[3925,23921,23922],{"class":4508},"() >= ",[3925,23924,5608],{"class":4512},[3925,23926,3595],{"class":4508},[3925,23928,23929],{"class":4512},"startDate",[3925,23931,3595],{"class":4508},[3925,23933,23919],{"class":4544},[3925,23935,23936],{"class":4508},"(), {\n",[3925,23938,23939,23942,23945],{"class":3927,"line":7042},[3925,23940,23941],{"class":4512},"    message:",[3925,23943,23944],{"class":4521}," 'Дата завершення не може бути раніше початку'",[3925,23946,5051],{"class":4508},[3925,23948,23949,23952,23954,23957],{"class":3927,"line":7070},[3925,23950,23951],{"class":4512},"    path:",[3925,23953,8272],{"class":4508},[3925,23955,23956],{"class":4521},"'endDate'",[3925,23958,14982],{"class":4508},[3925,23960,23961],{"class":3927,"line":7086},[3925,23962,10724],{"class":4508},[3925,23964,23965],{"class":3927,"line":7097},[3925,23966,3950],{"emptyLinePlaceholder":3949},[3925,23968,23969,23971,23973,23975,23977,23979,23981,23984,23986,23988,23990],{"class":3927,"line":7114},[3925,23970,4534],{"class":4504},[3925,23972,6428],{"class":4540},[3925,23974,23076],{"class":4565},[3925,23976,5967],{"class":4508},[3925,23978,23434],{"class":4565},[3925,23980,3595],{"class":4508},[3925,23982,23983],{"class":4565},"infer",[3925,23985,5016],{"class":4508},[3925,23987,23410],{"class":4540},[3925,23989,23529],{"class":4512},[3925,23991,23992],{"class":4508},">;\n",[3916,23994,23997],{"className":6417,"code":23995,"filename":23996,"language":6419,"meta":3921,"style":3921},"const MONTHS_UK_SHORT = [\n  'січ.',\n  'лют.',\n  'бер.',\n  'квіт.',\n  'трав.',\n  'черв.',\n  'лип.',\n  'серп.',\n  'вер.',\n  'жовт.',\n  'лист.',\n  'груд.',\n] as const;\n\nfunction dayMonth(d: Date): string {\n  return `${d.getDate()} ${MONTHS_UK_SHORT[d.getMonth()]}`;\n}\n\n\u002F**\n * Людський підпис періоду, як у mock-стрічці:\n * «12–14 бер. 2026» або «28 бер. – 2 квіт. 2026».\n *\u002F\nexport function formatTripDateLabel(start: Date, end: Date): string {\n  const y1 = start.getFullYear();\n  const y2 = end.getFullYear();\n  const m1 = start.getMonth();\n  const m2 = end.getMonth();\n  const d1 = start.getDate();\n  const d2 = end.getDate();\n\n  if (y1 === y2 && m1 === m2) {\n    if (d1 === d2) {\n      return `${dayMonth(start)} ${y1}`;\n    }\n    return `${d1}–${d2} ${MONTHS_UK_SHORT[m1]} ${y1}`;\n  }\n\n  if (y1 === y2) {\n    return `${dayMonth(start)} – ${dayMonth(end)} ${y1}`;\n  }\n\n  return `${dayMonth(start)} ${y1} – ${dayMonth(end)} ${y2}`;\n}\n","src\u002Ffeatures\u002Ftrips\u002Fmodel\u002FformatTripDates.ts",[3521,23998,23999,24008,24015,24022,24029,24036,24043,24050,24057,24064,24071,24078,24085,24092,24102,24106,24128,24171,24175,24179,24183,24188,24193,24197,24230,24248,24265,24282,24299,24316,24333,24337,24364,24380,24409,24413,24456,24460,24464,24478,24521,24525,24529,24577],{"__ignoreMap":3921},[3925,24000,24001,24003,24006],{"class":3927,"line":3928},[3925,24002,5930],{"class":4540},[3925,24004,24005],{"class":5194}," MONTHS_UK_SHORT",[3925,24007,23337],{"class":4508},[3925,24009,24010,24013],{"class":3927,"line":3934},[3925,24011,24012],{"class":4521},"  'січ.'",[3925,24014,5051],{"class":4508},[3925,24016,24017,24020],{"class":3927,"line":3940},[3925,24018,24019],{"class":4521},"  'лют.'",[3925,24021,5051],{"class":4508},[3925,24023,24024,24027],{"class":3927,"line":3946},[3925,24025,24026],{"class":4521},"  'бер.'",[3925,24028,5051],{"class":4508},[3925,24030,24031,24034],{"class":3927,"line":3953},[3925,24032,24033],{"class":4521},"  'квіт.'",[3925,24035,5051],{"class":4508},[3925,24037,24038,24041],{"class":3927,"line":3959},[3925,24039,24040],{"class":4521},"  'трав.'",[3925,24042,5051],{"class":4508},[3925,24044,24045,24048],{"class":3927,"line":3965},[3925,24046,24047],{"class":4521},"  'черв.'",[3925,24049,5051],{"class":4508},[3925,24051,24052,24055],{"class":3927,"line":3971},[3925,24053,24054],{"class":4521},"  'лип.'",[3925,24056,5051],{"class":4508},[3925,24058,24059,24062],{"class":3927,"line":3977},[3925,24060,24061],{"class":4521},"  'серп.'",[3925,24063,5051],{"class":4508},[3925,24065,24066,24069],{"class":3927,"line":3983},[3925,24067,24068],{"class":4521},"  'вер.'",[3925,24070,5051],{"class":4508},[3925,24072,24073,24076],{"class":3927,"line":3989},[3925,24074,24075],{"class":4521},"  'жовт.'",[3925,24077,5051],{"class":4508},[3925,24079,24080,24083],{"class":3927,"line":3995},[3925,24081,24082],{"class":4521},"  'лист.'",[3925,24084,5051],{"class":4508},[3925,24086,24087,24090],{"class":3927,"line":4001},[3925,24088,24089],{"class":4521},"  'груд.'",[3925,24091,5051],{"class":4508},[3925,24093,24094,24096,24098,24100],{"class":3927,"line":4007},[3925,24095,23384],{"class":4508},[3925,24097,23387],{"class":4504},[3925,24099,5191],{"class":4540},[3925,24101,4525],{"class":4508},[3925,24103,24104],{"class":3927,"line":4013},[3925,24105,3950],{"emptyLinePlaceholder":3949},[3925,24107,24108,24110,24113,24115,24118,24120,24122,24124,24126],{"class":3927,"line":4019},[3925,24109,6677],{"class":4540},[3925,24111,24112],{"class":4544}," dayMonth",[3925,24114,4702],{"class":4508},[3925,24116,24117],{"class":4512},"d",[3925,24119,4767],{"class":4508},[3925,24121,6931],{"class":4565},[3925,24123,6815],{"class":4508},[3925,24125,5949],{"class":4565},[3925,24127,5617],{"class":4508},[3925,24129,24130,24132,24134,24136,24138,24140,24143,24145,24147,24150,24153,24155,24157,24159,24162,24165,24167,24169],{"class":3927,"line":4024},[3925,24131,4553],{"class":4504},[3925,24133,16245],{"class":4521},[3925,24135,4708],{"class":4540},[3925,24137,24117],{"class":4512},[3925,24139,3595],{"class":4597},[3925,24141,24142],{"class":4544},"getDate",[3925,24144,9801],{"class":4597},[3925,24146,4610],{"class":4540},[3925,24148,24149],{"class":4540}," ${",[3925,24151,24152],{"class":5194},"MONTHS_UK_SHORT",[3925,24154,5987],{"class":4597},[3925,24156,24117],{"class":4512},[3925,24158,3595],{"class":4597},[3925,24160,24161],{"class":4544},"getMonth",[3925,24163,24164],{"class":4597},"()]",[3925,24166,4610],{"class":4540},[3925,24168,4721],{"class":4521},[3925,24170,4525],{"class":4508},[3925,24172,24173],{"class":3927,"line":4030},[3925,24174,4016],{"class":4508},[3925,24176,24177],{"class":3927,"line":4036},[3925,24178,3950],{"emptyLinePlaceholder":3949},[3925,24180,24181],{"class":3927,"line":4041},[3925,24182,13166],{"class":4498},[3925,24184,24185],{"class":3927,"line":4047},[3925,24186,24187],{"class":4498}," * Людський підпис періоду, як у mock-стрічці:\n",[3925,24189,24190],{"class":3927,"line":4053},[3925,24191,24192],{"class":4498}," * «12–14 бер. 2026» або «28 бер. – 2 квіт. 2026».\n",[3925,24194,24195],{"class":3927,"line":4059},[3925,24196,13196],{"class":4498},[3925,24198,24199,24201,24203,24206,24208,24211,24213,24215,24217,24220,24222,24224,24226,24228],{"class":3927,"line":4065},[3925,24200,4534],{"class":4504},[3925,24202,4541],{"class":4540},[3925,24204,24205],{"class":4544}," formatTripDateLabel",[3925,24207,4702],{"class":4508},[3925,24209,24210],{"class":4512},"start",[3925,24212,4767],{"class":4508},[3925,24214,6931],{"class":4565},[3925,24216,4191],{"class":4508},[3925,24218,24219],{"class":4512},"end",[3925,24221,4767],{"class":4508},[3925,24223,6931],{"class":4565},[3925,24225,6815],{"class":4508},[3925,24227,5949],{"class":4565},[3925,24229,5617],{"class":4508},[3925,24231,24232,24234,24237,24239,24241,24243,24246],{"class":3927,"line":4070},[3925,24233,6909],{"class":4540},[3925,24235,24236],{"class":5194}," y1",[3925,24238,5967],{"class":4508},[3925,24240,24210],{"class":4512},[3925,24242,3595],{"class":4508},[3925,24244,24245],{"class":4544},"getFullYear",[3925,24247,7020],{"class":4508},[3925,24249,24250,24252,24255,24257,24259,24261,24263],{"class":3927,"line":4076},[3925,24251,6909],{"class":4540},[3925,24253,24254],{"class":5194}," y2",[3925,24256,5967],{"class":4508},[3925,24258,24219],{"class":4512},[3925,24260,3595],{"class":4508},[3925,24262,24245],{"class":4544},[3925,24264,7020],{"class":4508},[3925,24266,24267,24269,24272,24274,24276,24278,24280],{"class":3927,"line":4082},[3925,24268,6909],{"class":4540},[3925,24270,24271],{"class":5194}," m1",[3925,24273,5967],{"class":4508},[3925,24275,24210],{"class":4512},[3925,24277,3595],{"class":4508},[3925,24279,24161],{"class":4544},[3925,24281,7020],{"class":4508},[3925,24283,24284,24286,24289,24291,24293,24295,24297],{"class":3927,"line":4088},[3925,24285,6909],{"class":4540},[3925,24287,24288],{"class":5194}," m2",[3925,24290,5967],{"class":4508},[3925,24292,24219],{"class":4512},[3925,24294,3595],{"class":4508},[3925,24296,24161],{"class":4544},[3925,24298,7020],{"class":4508},[3925,24300,24301,24303,24306,24308,24310,24312,24314],{"class":3927,"line":4093},[3925,24302,6909],{"class":4540},[3925,24304,24305],{"class":5194}," d1",[3925,24307,5967],{"class":4508},[3925,24309,24210],{"class":4512},[3925,24311,3595],{"class":4508},[3925,24313,24142],{"class":4544},[3925,24315,7020],{"class":4508},[3925,24317,24318,24320,24323,24325,24327,24329,24331],{"class":3927,"line":4098},[3925,24319,6909],{"class":4540},[3925,24321,24322],{"class":5194}," d2",[3925,24324,5967],{"class":4508},[3925,24326,24219],{"class":4512},[3925,24328,3595],{"class":4508},[3925,24330,24142],{"class":4544},[3925,24332,7020],{"class":4508},[3925,24334,24335],{"class":3927,"line":6720},[3925,24336,3950],{"emptyLinePlaceholder":3949},[3925,24338,24339,24341,24343,24346,24348,24351,24354,24357,24359,24362],{"class":3927,"line":6738},[3925,24340,9669],{"class":4504},[3925,24342,3576],{"class":4508},[3925,24344,24345],{"class":4512},"y1",[3925,24347,6855],{"class":4508},[3925,24349,24350],{"class":4512},"y2",[3925,24352,24353],{"class":4508}," && ",[3925,24355,24356],{"class":4512},"m1",[3925,24358,6855],{"class":4508},[3925,24360,24361],{"class":4512},"m2",[3925,24363,6049],{"class":4508},[3925,24365,24366,24368,24370,24373,24375,24378],{"class":3927,"line":6787},[3925,24367,10746],{"class":4504},[3925,24369,3576],{"class":4508},[3925,24371,24372],{"class":4512},"d1",[3925,24374,6855],{"class":4508},[3925,24376,24377],{"class":4512},"d2",[3925,24379,6049],{"class":4508},[3925,24381,24382,24384,24386,24388,24391,24393,24395,24397,24399,24401,24403,24405,24407],{"class":3927,"line":6792},[3925,24383,10792],{"class":4504},[3925,24385,16245],{"class":4521},[3925,24387,4708],{"class":4540},[3925,24389,24390],{"class":4544},"dayMonth",[3925,24392,4702],{"class":4597},[3925,24394,24210],{"class":4512},[3925,24396,4251],{"class":4597},[3925,24398,4610],{"class":4540},[3925,24400,24149],{"class":4540},[3925,24402,24345],{"class":4512},[3925,24404,4610],{"class":4540},[3925,24406,4721],{"class":4521},[3925,24408,4525],{"class":4508},[3925,24410,24411],{"class":3927,"line":6797},[3925,24412,3986],{"class":4508},[3925,24414,24415,24417,24419,24421,24423,24425,24428,24430,24432,24434,24436,24438,24440,24442,24444,24446,24448,24450,24452,24454],{"class":3927,"line":6827},[3925,24416,9680],{"class":4504},[3925,24418,16245],{"class":4521},[3925,24420,4708],{"class":4540},[3925,24422,24372],{"class":4512},[3925,24424,4610],{"class":4540},[3925,24426,24427],{"class":4521},"–",[3925,24429,4708],{"class":4540},[3925,24431,24377],{"class":4512},[3925,24433,4610],{"class":4540},[3925,24435,24149],{"class":4540},[3925,24437,24152],{"class":5194},[3925,24439,5987],{"class":4597},[3925,24441,24356],{"class":4512},[3925,24443,8387],{"class":4597},[3925,24445,4610],{"class":4540},[3925,24447,24149],{"class":4540},[3925,24449,24345],{"class":4512},[3925,24451,4610],{"class":4540},[3925,24453,4721],{"class":4521},[3925,24455,4525],{"class":4508},[3925,24457,24458],{"class":3927,"line":6862},[3925,24459,4004],{"class":4508},[3925,24461,24462],{"class":3927,"line":6867},[3925,24463,3950],{"emptyLinePlaceholder":3949},[3925,24465,24466,24468,24470,24472,24474,24476],{"class":3927,"line":6872},[3925,24467,9669],{"class":4504},[3925,24469,3576],{"class":4508},[3925,24471,24345],{"class":4512},[3925,24473,6855],{"class":4508},[3925,24475,24350],{"class":4512},[3925,24477,6049],{"class":4508},[3925,24479,24480,24482,24484,24486,24488,24490,24492,24494,24496,24499,24501,24503,24505,24507,24509,24511,24513,24515,24517,24519],{"class":3927,"line":6906},[3925,24481,9680],{"class":4504},[3925,24483,16245],{"class":4521},[3925,24485,4708],{"class":4540},[3925,24487,24390],{"class":4544},[3925,24489,4702],{"class":4597},[3925,24491,24210],{"class":4512},[3925,24493,4251],{"class":4597},[3925,24495,4610],{"class":4540},[3925,24497,24498],{"class":4521}," – ",[3925,24500,4708],{"class":4540},[3925,24502,24390],{"class":4544},[3925,24504,4702],{"class":4597},[3925,24506,24219],{"class":4512},[3925,24508,4251],{"class":4597},[3925,24510,4610],{"class":4540},[3925,24512,24149],{"class":4540},[3925,24514,24345],{"class":4512},[3925,24516,4610],{"class":4540},[3925,24518,4721],{"class":4521},[3925,24520,4525],{"class":4508},[3925,24522,24523],{"class":3927,"line":6921},[3925,24524,4004],{"class":4508},[3925,24526,24527],{"class":3927,"line":6941},[3925,24528,3950],{"emptyLinePlaceholder":3949},[3925,24530,24531,24533,24535,24537,24539,24541,24543,24545,24547,24549,24551,24553,24555,24557,24559,24561,24563,24565,24567,24569,24571,24573,24575],{"class":3927,"line":6962},[3925,24532,4553],{"class":4504},[3925,24534,16245],{"class":4521},[3925,24536,4708],{"class":4540},[3925,24538,24390],{"class":4544},[3925,24540,4702],{"class":4597},[3925,24542,24210],{"class":4512},[3925,24544,4251],{"class":4597},[3925,24546,4610],{"class":4540},[3925,24548,24149],{"class":4540},[3925,24550,24345],{"class":4512},[3925,24552,4610],{"class":4540},[3925,24554,24498],{"class":4521},[3925,24556,4708],{"class":4540},[3925,24558,24390],{"class":4544},[3925,24560,4702],{"class":4597},[3925,24562,24219],{"class":4512},[3925,24564,4251],{"class":4597},[3925,24566,4610],{"class":4540},[3925,24568,24149],{"class":4540},[3925,24570,24350],{"class":4512},[3925,24572,4610],{"class":4540},[3925,24574,4721],{"class":4521},[3925,24576,4525],{"class":4508},[3925,24578,24579],{"class":3927,"line":6977},[3925,24580,4016],{"class":4508},[3916,24582,24585],{"className":4489,"code":24583,"filename":24584,"language":4491,"meta":3921,"style":3921},"import {\n  createContext,\n  ReactNode,\n  useCallback,\n  useContext,\n  useMemo,\n  useState,\n} from 'react';\n\nimport { mockTrips } from '.\u002FmockTrips';\nimport type { Trip } from '.\u002Ftypes';\n\ntype TripsContextValue = {\n  trips: Trip[];\n  \u002F** Знайти поїздку за id (екран деталей). *\u002F\n  getTrip: (id: string) => Trip | undefined;\n  \u002F** Додати нову поїздку на початок стрічки (найсвіжіша зверху). *\u002F\n  addTrip: (trip: Trip) => void;\n  \u002F** Mock «оновити з сервера» — повертає seed mockTrips (без локально створених). *\u002F\n  resetToMock: () => void;\n};\n\nconst TripsContext = createContext\u003CTripsContextValue | null>(null);\n\ntype TripsProviderProps = {\n  children: ReactNode;\n};\n\nexport function TripsProvider({ children }: TripsProviderProps) {\n  const [trips, setTrips] = useState\u003CTrip[]>(() => [...mockTrips]);\n\n  const getTrip = useCallback(\n    (id: string) => trips.find((t) => t.id === id),\n    [trips],\n  );\n\n  const addTrip = useCallback((trip: Trip) => {\n    setTrips((prev) => [trip, ...prev]);\n  }, []);\n\n  const resetToMock = useCallback(() => {\n    setTrips([...mockTrips]);\n  }, []);\n\n  const value = useMemo(\n    () => ({ trips, getTrip, addTrip, resetToMock }),\n    [trips, getTrip, addTrip, resetToMock],\n  );\n\n  return (\n    \u003CTripsContext.Provider value={value}>{children}\u003C\u002FTripsContext.Provider>\n  );\n}\n\nexport function useTrips(): TripsContextValue {\n  const ctx = useContext(TripsContext);\n  if (!ctx) {\n    throw new Error('useTrips треба викликати всередині TripsProvider');\n  }\n  return ctx;\n}\n","src\u002Ffeatures\u002Ftrips\u002Fmodel\u002FTripsProvider.tsx",[3521,24586,24587,24593,24600,24607,24614,24621,24628,24635,24645,24649,24666,24684,24688,24697,24709,24714,24740,24745,24766,24771,24785,24789,24793,24822,24826,24835,24847,24851,24855,24877,24908,24912,24925,24968,24976,24980,24984,25009,25033,25038,25042,25059,25070,25074,25078,25091,25115,25135,25139,25143,25149,25181,25185,25189,25193,25208,25227,25238,25256,25260,25268],{"__ignoreMap":3921},[3925,24588,24589,24591],{"class":3927,"line":3928},[3925,24590,4505],{"class":4504},[3925,24592,5617],{"class":4508},[3925,24594,24595,24598],{"class":3927,"line":3934},[3925,24596,24597],{"class":4512},"  createContext",[3925,24599,5051],{"class":4508},[3925,24601,24602,24605],{"class":3927,"line":3940},[3925,24603,24604],{"class":4512},"  ReactNode",[3925,24606,5051],{"class":4508},[3925,24608,24609,24612],{"class":3927,"line":3946},[3925,24610,24611],{"class":4512},"  useCallback",[3925,24613,5051],{"class":4508},[3925,24615,24616,24619],{"class":3927,"line":3953},[3925,24617,24618],{"class":4512},"  useContext",[3925,24620,5051],{"class":4508},[3925,24622,24623,24626],{"class":3927,"line":3959},[3925,24624,24625],{"class":4512},"  useMemo",[3925,24627,5051],{"class":4508},[3925,24629,24630,24633],{"class":3927,"line":3965},[3925,24631,24632],{"class":4512},"  useState",[3925,24634,5051],{"class":4508},[3925,24636,24637,24639,24641,24643],{"class":3927,"line":3971},[3925,24638,8170],{"class":4508},[3925,24640,4518],{"class":4504},[3925,24642,8122],{"class":4521},[3925,24644,4525],{"class":4508},[3925,24646,24647],{"class":3927,"line":3977},[3925,24648,3950],{"emptyLinePlaceholder":3949},[3925,24650,24651,24653,24655,24657,24659,24661,24664],{"class":3927,"line":3983},[3925,24652,4505],{"class":4504},[3925,24654,4509],{"class":4508},[3925,24656,22860],{"class":4512},[3925,24658,4515],{"class":4508},[3925,24660,4518],{"class":4504},[3925,24662,24663],{"class":4521}," '.\u002FmockTrips'",[3925,24665,4525],{"class":4508},[3925,24667,24668,24670,24672,24674,24676,24678,24680,24682],{"class":3927,"line":3989},[3925,24669,4505],{"class":4504},[3925,24671,6428],{"class":4504},[3925,24673,4509],{"class":4508},[3925,24675,14935],{"class":4512},[3925,24677,4515],{"class":4508},[3925,24679,4518],{"class":4504},[3925,24681,23462],{"class":4521},[3925,24683,4525],{"class":4508},[3925,24685,24686],{"class":3927,"line":3995},[3925,24687,3950],{"emptyLinePlaceholder":3949},[3925,24689,24690,24692,24695],{"class":3927,"line":4001},[3925,24691,6491],{"class":4540},[3925,24693,24694],{"class":4565}," TripsContextValue",[3925,24696,5198],{"class":4508},[3925,24698,24699,24702,24704,24706],{"class":3927,"line":4007},[3925,24700,24701],{"class":4512},"  trips",[3925,24703,4767],{"class":4508},[3925,24705,14935],{"class":4565},[3925,24707,24708],{"class":4508},"[];\n",[3925,24710,24711],{"class":3927,"line":4013},[3925,24712,24713],{"class":4498},"  \u002F** Знайти поїздку за id (екран деталей). *\u002F\n",[3925,24715,24716,24719,24722,24724,24726,24728,24730,24732,24734,24736,24738],{"class":3927,"line":4019},[3925,24717,24718],{"class":4544},"  getTrip",[3925,24720,24721],{"class":4508},": (",[3925,24723,4716],{"class":4512},[3925,24725,4767],{"class":4508},[3925,24727,5949],{"class":4565},[3925,24729,6701],{"class":4508},[3925,24731,5614],{"class":4540},[3925,24733,14620],{"class":4565},[3925,24735,6820],{"class":4508},[3925,24737,6034],{"class":4565},[3925,24739,4525],{"class":4508},[3925,24741,24742],{"class":3927,"line":4024},[3925,24743,24744],{"class":4498},"  \u002F** Додати нову поїздку на початок стрічки (найсвіжіша зверху). *\u002F\n",[3925,24746,24747,24750,24752,24754,24756,24758,24760,24762,24764],{"class":3927,"line":4030},[3925,24748,24749],{"class":4544},"  addTrip",[3925,24751,24721],{"class":4508},[3925,24753,4711],{"class":4512},[3925,24755,4767],{"class":4508},[3925,24757,14935],{"class":4565},[3925,24759,6701],{"class":4508},[3925,24761,5614],{"class":4540},[3925,24763,6502],{"class":4565},[3925,24765,4525],{"class":4508},[3925,24767,24768],{"class":3927,"line":4036},[3925,24769,24770],{"class":4498},"  \u002F** Mock «оновити з сервера» — повертає seed mockTrips (без локально створених). *\u002F\n",[3925,24772,24773,24776,24779,24781,24783],{"class":3927,"line":4041},[3925,24774,24775],{"class":4544},"  resetToMock",[3925,24777,24778],{"class":4508},": () ",[3925,24780,5614],{"class":4540},[3925,24782,6502],{"class":4565},[3925,24784,4525],{"class":4508},[3925,24786,24787],{"class":3927,"line":4047},[3925,24788,5213],{"class":4508},[3925,24790,24791],{"class":3927,"line":4053},[3925,24792,3950],{"emptyLinePlaceholder":3949},[3925,24794,24795,24797,24800,24802,24805,24807,24810,24812,24815,24818,24820],{"class":3927,"line":4059},[3925,24796,5930],{"class":4540},[3925,24798,24799],{"class":5194}," TripsContext",[3925,24801,5967],{"class":4508},[3925,24803,24804],{"class":4544},"createContext",[3925,24806,5016],{"class":4508},[3925,24808,24809],{"class":4565},"TripsContextValue",[3925,24811,6820],{"class":4508},[3925,24813,24814],{"class":4565},"null",[3925,24816,24817],{"class":4508},">(",[3925,24819,24814],{"class":4540},[3925,24821,4724],{"class":4508},[3925,24823,24824],{"class":3927,"line":4065},[3925,24825,3950],{"emptyLinePlaceholder":3949},[3925,24827,24828,24830,24833],{"class":3927,"line":4070},[3925,24829,6491],{"class":4540},[3925,24831,24832],{"class":4565}," TripsProviderProps",[3925,24834,5198],{"class":4508},[3925,24836,24837,24840,24842,24845],{"class":3927,"line":4076},[3925,24838,24839],{"class":4512},"  children",[3925,24841,4767],{"class":4508},[3925,24843,24844],{"class":4565},"ReactNode",[3925,24846,4525],{"class":4508},[3925,24848,24849],{"class":3927,"line":4082},[3925,24850,5213],{"class":4508},[3925,24852,24853],{"class":3927,"line":4088},[3925,24854,3950],{"emptyLinePlaceholder":3949},[3925,24856,24857,24859,24861,24864,24866,24869,24872,24875],{"class":3927,"line":4093},[3925,24858,4534],{"class":4504},[3925,24860,4541],{"class":4540},[3925,24862,24863],{"class":4544}," TripsProvider",[3925,24865,8674],{"class":4508},[3925,24867,24868],{"class":4512},"children",[3925,24870,24871],{"class":4508}," }: ",[3925,24873,24874],{"class":4565},"TripsProviderProps",[3925,24876,6049],{"class":4508},[3925,24878,24879,24881,24883,24885,24887,24890,24892,24894,24896,24898,24900,24902,24904,24906],{"class":3927,"line":4098},[3925,24880,6909],{"class":4540},[3925,24882,8272],{"class":4508},[3925,24884,4741],{"class":5194},[3925,24886,4191],{"class":4508},[3925,24888,24889],{"class":5194},"setTrips",[3925,24891,8282],{"class":4508},[3925,24893,5552],{"class":4544},[3925,24895,5016],{"class":4508},[3925,24897,14935],{"class":4565},[3925,24899,8291],{"class":4508},[3925,24901,5614],{"class":4540},[3925,24903,6743],{"class":4508},[3925,24905,22860],{"class":4512},[3925,24907,15152],{"class":4508},[3925,24909,24910],{"class":3927,"line":6720},[3925,24911,3950],{"emptyLinePlaceholder":3949},[3925,24913,24914,24916,24919,24921,24923],{"class":3927,"line":6738},[3925,24915,6909],{"class":4540},[3925,24917,24918],{"class":5194}," getTrip",[3925,24920,5967],{"class":4508},[3925,24922,14472],{"class":4544},[3925,24924,10621],{"class":4508},[3925,24926,24927,24929,24931,24933,24935,24937,24939,24942,24944,24946,24948,24951,24953,24955,24958,24960,24962,24964,24966],{"class":3927,"line":6787},[3925,24928,14928],{"class":4508},[3925,24930,4716],{"class":4512},[3925,24932,4767],{"class":4508},[3925,24934,5949],{"class":4565},[3925,24936,6701],{"class":4508},[3925,24938,5614],{"class":4540},[3925,24940,24941],{"class":4512}," trips",[3925,24943,3595],{"class":4508},[3925,24945,6836],{"class":4544},[3925,24947,6695],{"class":4508},[3925,24949,24950],{"class":4512},"t",[3925,24952,6701],{"class":4508},[3925,24954,5614],{"class":4540},[3925,24956,24957],{"class":4512}," t",[3925,24959,3595],{"class":4508},[3925,24961,4716],{"class":4512},[3925,24963,6855],{"class":4508},[3925,24965,4716],{"class":4512},[3925,24967,5724],{"class":4508},[3925,24969,24970,24972,24974],{"class":3927,"line":6792},[3925,24971,14977],{"class":4508},[3925,24973,4741],{"class":4512},[3925,24975,14982],{"class":4508},[3925,24977,24978],{"class":3927,"line":6797},[3925,24979,4678],{"class":4508},[3925,24981,24982],{"class":3927,"line":6827},[3925,24983,3950],{"emptyLinePlaceholder":3949},[3925,24985,24986,24988,24991,24993,24995,24997,24999,25001,25003,25005,25007],{"class":3927,"line":6862},[3925,24987,6909],{"class":4540},[3925,24989,24990],{"class":5194}," addTrip",[3925,24992,5967],{"class":4508},[3925,24994,14472],{"class":4544},[3925,24996,6695],{"class":4508},[3925,24998,4711],{"class":4512},[3925,25000,4767],{"class":4508},[3925,25002,14935],{"class":4565},[3925,25004,6701],{"class":4508},[3925,25006,5614],{"class":4540},[3925,25008,5617],{"class":4508},[3925,25010,25011,25014,25016,25019,25021,25023,25025,25027,25029,25031],{"class":3927,"line":6867},[3925,25012,25013],{"class":4544},"    setTrips",[3925,25015,6695],{"class":4508},[3925,25017,25018],{"class":4512},"prev",[3925,25020,6701],{"class":4508},[3925,25022,5614],{"class":4540},[3925,25024,8272],{"class":4508},[3925,25026,4711],{"class":4512},[3925,25028,7007],{"class":4508},[3925,25030,25018],{"class":4512},[3925,25032,15152],{"class":4508},[3925,25034,25035],{"class":3927,"line":6872},[3925,25036,25037],{"class":4508},"  }, []);\n",[3925,25039,25040],{"class":3927,"line":6906},[3925,25041,3950],{"emptyLinePlaceholder":3949},[3925,25043,25044,25046,25049,25051,25053,25055,25057],{"class":3927,"line":6921},[3925,25045,6909],{"class":4540},[3925,25047,25048],{"class":5194}," resetToMock",[3925,25050,5967],{"class":4508},[3925,25052,14472],{"class":4544},[3925,25054,8322],{"class":4508},[3925,25056,5614],{"class":4540},[3925,25058,5617],{"class":4508},[3925,25060,25061,25063,25066,25068],{"class":3927,"line":6941},[3925,25062,25013],{"class":4544},[3925,25064,25065],{"class":4508},"([...",[3925,25067,22860],{"class":4512},[3925,25069,15152],{"class":4508},[3925,25071,25072],{"class":3927,"line":6962},[3925,25073,25037],{"class":4508},[3925,25075,25076],{"class":3927,"line":6977},[3925,25077,3950],{"emptyLinePlaceholder":3949},[3925,25079,25080,25082,25085,25087,25089],{"class":3927,"line":6990},[3925,25081,6909],{"class":4540},[3925,25083,25084],{"class":5194}," value",[3925,25086,5967],{"class":4508},[3925,25088,17608],{"class":4544},[3925,25090,10621],{"class":4508},[3925,25092,25093,25095,25097,25099,25101,25103,25105,25107,25109,25111,25113],{"class":3927,"line":6996},[3925,25094,17914],{"class":4508},[3925,25096,5614],{"class":4540},[3925,25098,7678],{"class":4508},[3925,25100,4741],{"class":4512},[3925,25102,4191],{"class":4508},[3925,25104,6024],{"class":4512},[3925,25106,4191],{"class":4508},[3925,25108,6165],{"class":4512},[3925,25110,4191],{"class":4508},[3925,25112,14817],{"class":4512},[3925,25114,23723],{"class":4508},[3925,25116,25117,25119,25121,25123,25125,25127,25129,25131,25133],{"class":3927,"line":7014},[3925,25118,14977],{"class":4508},[3925,25120,4741],{"class":4512},[3925,25122,4191],{"class":4508},[3925,25124,6024],{"class":4512},[3925,25126,4191],{"class":4508},[3925,25128,6165],{"class":4512},[3925,25130,4191],{"class":4508},[3925,25132,14817],{"class":4512},[3925,25134,14982],{"class":4508},[3925,25136,25137],{"class":3927,"line":7023},[3925,25138,4678],{"class":4508},[3925,25140,25141],{"class":3927,"line":7032},[3925,25142,3950],{"emptyLinePlaceholder":3949},[3925,25144,25145,25147],{"class":3927,"line":7037},[3925,25146,4553],{"class":4504},[3925,25148,4556],{"class":4508},[3925,25150,25151,25153,25156,25158,25160,25162,25165,25167,25169,25171,25173,25175,25177,25179],{"class":3927,"line":7042},[3925,25152,4562],{"class":4561},[3925,25154,25155],{"class":4565},"TripsContext.Provider",[3925,25157,25084],{"class":4579},[3925,25159,4583],{"class":4508},[3925,25161,4594],{"class":4540},[3925,25163,25164],{"class":4512},"value",[3925,25166,4610],{"class":4540},[3925,25168,8439],{"class":4561},[3925,25170,4594],{"class":4540},[3925,25172,24868],{"class":4512},[3925,25174,4610],{"class":4540},[3925,25176,8445],{"class":4561},[3925,25178,25155],{"class":4565},[3925,25180,4568],{"class":4561},[3925,25182,25183],{"class":3927,"line":7070},[3925,25184,4678],{"class":4508},[3925,25186,25187],{"class":3927,"line":7086},[3925,25188,4016],{"class":4508},[3925,25190,25191],{"class":3927,"line":7097},[3925,25192,3950],{"emptyLinePlaceholder":3949},[3925,25194,25195,25197,25199,25202,25204,25206],{"class":3927,"line":7114},[3925,25196,4534],{"class":4504},[3925,25198,4541],{"class":4540},[3925,25200,25201],{"class":4544}," useTrips",[3925,25203,6730],{"class":4508},[3925,25205,24809],{"class":4565},[3925,25207,5617],{"class":4508},[3925,25209,25210,25212,25215,25217,25220,25222,25225],{"class":3927,"line":7119},[3925,25211,6909],{"class":4540},[3925,25213,25214],{"class":5194}," ctx",[3925,25216,5967],{"class":4508},[3925,25218,25219],{"class":4544},"useContext",[3925,25221,4702],{"class":4508},[3925,25223,25224],{"class":4512},"TripsContext",[3925,25226,4724],{"class":4508},[3925,25228,25229,25231,25233,25236],{"class":3927,"line":9008},[3925,25230,9669],{"class":4504},[3925,25232,6044],{"class":4508},[3925,25234,25235],{"class":4512},"ctx",[3925,25237,6049],{"class":4508},[3925,25239,25240,25243,25246,25249,25251,25254],{"class":3927,"line":9017},[3925,25241,25242],{"class":4504},"    throw",[3925,25244,25245],{"class":4540}," new",[3925,25247,25248],{"class":4544}," Error",[3925,25250,4702],{"class":4508},[3925,25252,25253],{"class":4521},"'useTrips треба викликати всередині TripsProvider'",[3925,25255,4724],{"class":4508},[3925,25257,25258],{"class":3927,"line":9022},[3925,25259,4004],{"class":4508},[3925,25261,25262,25264,25266],{"class":3927,"line":9027},[3925,25263,4553],{"class":4504},[3925,25265,25214],{"class":4512},[3925,25267,4525],{"class":4508},[3925,25269,25270],{"class":3927,"line":9032},[3925,25271,4016],{"class":4508},[3916,25273,25276],{"className":6417,"code":25274,"filename":25275,"language":6419,"meta":3921,"style":3921},"import type { Trip } from '.\u002Ftypes';\n\n\u002F**\n * Mock-стрічка поїздок. Більше за 3–5 елементів — щоб віртуалізація\n * (FlashList \u002F FlatList) мала сенс на домашньому екрані.\n *\u002F\nexport const mockTrips: Trip[] = [\n  {\n    id: '1',\n    title: 'Карпати на вихідні',\n    dateLabel: '12–14 бер. 2026',\n    description: 'Говерла, полонини й вечірній чай біля каміну в котеджі.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1464822759023-fed622ff2c3b?w=800&q=80',\n    region: 'Карпати',\n  },\n  {\n    id: '2',\n    title: 'Львівський вікенд',\n    dateLabel: '2–4 трав. 2026',\n    description: 'Кава, площа Ринок, закапелки й нічний трамвай.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555881400-74d7acaacd8b?w=800&q=80',\n    region: 'Захід',\n  },\n  {\n    id: '3',\n    title: 'Одеса біля моря',\n    dateLabel: '18–22 лип. 2026',\n    description: 'Схід сонця на набережній, рибний ринок і вечірній Привоз.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1507525428034-b723cf961d3e?w=800&q=80',\n    region: 'Південь',\n  },\n  {\n    id: '4',\n    title: 'Київ на три дні',\n    dateLabel: '5–7 черв. 2026',\n    description: 'Поділ, Андріївський узвіз, вечірня прогулянка Хрещатиком.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1565008576549-57569a49371d?w=800&q=80',\n    region: 'Центр',\n  },\n  {\n    id: '5',\n    title: 'Чернівці: університет і дворики',\n    dateLabel: '20–22 вер. 2026',\n    description: 'Резиденція митрополитів, кава на Кобилянській, нічний двір.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1519681393784-d120267933ba?w=800&q=80',\n    region: 'Захід',\n  },\n  {\n    id: '6',\n    title: 'Кам’янець-Подільський',\n    dateLabel: '11–13 квіт. 2026',\n    description: 'Фортеця, каньйон Смотрича, захід сонця з оглядового майданчика.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1506905925346-21bda4d32df4?w=800&q=80',\n    region: 'Захід',\n  },\n  {\n    id: '7',\n    title: 'Харків: місто й парки',\n    dateLabel: '8–10 серп. 2026',\n    description: 'Саржин яр, набережна, вечірні вогні Сумської.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1449824913935-59a10b8d2000?w=800&q=80',\n    region: 'Схід',\n  },\n  {\n    id: '8',\n    title: 'Дніпро: мости й пагорби',\n    dateLabel: '15–17 трав. 2026',\n    description: 'Мереживо мостів, прогулянка набережною, кава з видом на річку.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1476514525535-07fb3b4ae5f1?w=800&q=80',\n    region: 'Центр',\n  },\n  {\n    id: '9',\n    title: 'Ужгород і виноград',\n    dateLabel: '25–27 жовт. 2026',\n    description: 'Замок, липова алея, дегустація біля місцевих виноробів.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1500530855697-b586d89ba3ee?w=800&q=80',\n    region: 'Карпати',\n  },\n  {\n    id: '10',\n    title: 'Полтава: смаки й історія',\n    dateLabel: '3–5 лип. 2026',\n    description: 'Котлета по-київськи — ні, галушки; музей і тихі двори.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1469474968028-56623f02e42e?w=800&q=80',\n    region: 'Центр',\n  },\n  {\n    id: '11',\n    title: 'Затока: пісок і шторм',\n    dateLabel: '1–7 серп. 2026',\n    description: 'Ранкові купання, вечірній вітер, книжка під парасолькою.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1507525428034-b723cf961d3e?w=600&q=80',\n    region: 'Південь',\n  },\n  {\n    id: '12',\n    title: 'Яремче: водоспад і ліс',\n    dateLabel: '19–21 черв. 2026',\n    description: 'Прогулянка до водоспаду, гуцульська кухня, туман над смереками.',\n    coverUri:\n      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1441974231531-c6227db76b6e?w=800&q=80',\n    region: 'Карпати',\n  },\n];\n","src\u002Ffeatures\u002Ftrips\u002Fmodel\u002FmockTrips.ts",[3521,25277,25278,25296,25300,25304,25309,25314,25318,25333,25337,25345,25354,25364,25373,25378,25385,25394,25398,25402,25410,25419,25428,25437,25441,25448,25457,25461,25465,25474,25483,25492,25501,25505,25512,25521,25525,25529,25538,25547,25556,25565,25569,25576,25585,25589,25593,25602,25611,25620,25629,25633,25640,25648,25652,25656,25665,25674,25683,25692,25696,25703,25711,25715,25719,25728,25737,25746,25755,25759,25766,25775,25779,25783,25792,25801,25810,25819,25823,25830,25838,25842,25846,25855,25864,25873,25882,25886,25893,25901,25905,25909,25918,25927,25936,25945,25949,25956,25964,25968,25972,25981,25990,25999,26008,26012,26019,26027,26031,26035,26044,26053,26062,26071,26075,26082,26090,26094],{"__ignoreMap":3921},[3925,25279,25280,25282,25284,25286,25288,25290,25292,25294],{"class":3927,"line":3928},[3925,25281,4505],{"class":4504},[3925,25283,6428],{"class":4504},[3925,25285,4509],{"class":4508},[3925,25287,14935],{"class":4512},[3925,25289,4515],{"class":4508},[3925,25291,4518],{"class":4504},[3925,25293,23462],{"class":4521},[3925,25295,4525],{"class":4508},[3925,25297,25298],{"class":3927,"line":3934},[3925,25299,3950],{"emptyLinePlaceholder":3949},[3925,25301,25302],{"class":3927,"line":3940},[3925,25303,13166],{"class":4498},[3925,25305,25306],{"class":3927,"line":3946},[3925,25307,25308],{"class":4498}," * Mock-стрічка поїздок. Більше за 3–5 елементів — щоб віртуалізація\n",[3925,25310,25311],{"class":3927,"line":3953},[3925,25312,25313],{"class":4498}," * (FlashList \u002F FlatList) мала сенс на домашньому екрані.\n",[3925,25315,25316],{"class":3927,"line":3959},[3925,25317,13196],{"class":4498},[3925,25319,25320,25322,25324,25327,25329,25331],{"class":3927,"line":3965},[3925,25321,4534],{"class":4504},[3925,25323,5191],{"class":4540},[3925,25325,25326],{"class":5194}," mockTrips",[3925,25328,4767],{"class":4508},[3925,25330,14935],{"class":4565},[3925,25332,6524],{"class":4508},[3925,25334,25335],{"class":3927,"line":3971},[3925,25336,6529],{"class":4508},[3925,25338,25339,25341,25343],{"class":3927,"line":3977},[3925,25340,6534],{"class":4512},[3925,25342,6537],{"class":4521},[3925,25344,5051],{"class":4508},[3925,25346,25347,25349,25352],{"class":3927,"line":3983},[3925,25348,5056],{"class":4512},[3925,25350,25351],{"class":4521}," 'Карпати на вихідні'",[3925,25353,5051],{"class":4508},[3925,25355,25356,25359,25362],{"class":3927,"line":3989},[3925,25357,25358],{"class":4512},"    dateLabel:",[3925,25360,25361],{"class":4521}," '12–14 бер. 2026'",[3925,25363,5051],{"class":4508},[3925,25365,25366,25368,25371],{"class":3927,"line":3995},[3925,25367,23646],{"class":4512},[3925,25369,25370],{"class":4521}," 'Говерла, полонини й вечірній чай біля каміну в котеджі.'",[3925,25372,5051],{"class":4508},[3925,25374,25375],{"class":3927,"line":4001},[3925,25376,25377],{"class":4512},"    coverUri:\n",[3925,25379,25380,25383],{"class":3927,"line":4007},[3925,25381,25382],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1464822759023-fed622ff2c3b?w=800&q=80'",[3925,25384,5051],{"class":4508},[3925,25386,25387,25389,25392],{"class":3927,"line":4013},[3925,25388,23612],{"class":4512},[3925,25390,25391],{"class":4521}," 'Карпати'",[3925,25393,5051],{"class":4508},[3925,25395,25396],{"class":3927,"line":4019},[3925,25397,6584],{"class":4508},[3925,25399,25400],{"class":3927,"line":4024},[3925,25401,6529],{"class":4508},[3925,25403,25404,25406,25408],{"class":3927,"line":4030},[3925,25405,6534],{"class":4512},[3925,25407,6595],{"class":4521},[3925,25409,5051],{"class":4508},[3925,25411,25412,25414,25417],{"class":3927,"line":4036},[3925,25413,5056],{"class":4512},[3925,25415,25416],{"class":4521}," 'Львівський вікенд'",[3925,25418,5051],{"class":4508},[3925,25420,25421,25423,25426],{"class":3927,"line":4041},[3925,25422,25358],{"class":4512},[3925,25424,25425],{"class":4521}," '2–4 трав. 2026'",[3925,25427,5051],{"class":4508},[3925,25429,25430,25432,25435],{"class":3927,"line":4047},[3925,25431,23646],{"class":4512},[3925,25433,25434],{"class":4521}," 'Кава, площа Ринок, закапелки й нічний трамвай.'",[3925,25436,5051],{"class":4508},[3925,25438,25439],{"class":3927,"line":4053},[3925,25440,25377],{"class":4512},[3925,25442,25443,25446],{"class":3927,"line":4059},[3925,25444,25445],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555881400-74d7acaacd8b?w=800&q=80'",[3925,25447,5051],{"class":4508},[3925,25449,25450,25452,25455],{"class":3927,"line":4065},[3925,25451,23612],{"class":4512},[3925,25453,25454],{"class":4521}," 'Захід'",[3925,25456,5051],{"class":4508},[3925,25458,25459],{"class":3927,"line":4070},[3925,25460,6584],{"class":4508},[3925,25462,25463],{"class":3927,"line":4076},[3925,25464,6529],{"class":4508},[3925,25466,25467,25469,25472],{"class":3927,"line":4082},[3925,25468,6534],{"class":4512},[3925,25470,25471],{"class":4521}," '3'",[3925,25473,5051],{"class":4508},[3925,25475,25476,25478,25481],{"class":3927,"line":4088},[3925,25477,5056],{"class":4512},[3925,25479,25480],{"class":4521}," 'Одеса біля моря'",[3925,25482,5051],{"class":4508},[3925,25484,25485,25487,25490],{"class":3927,"line":4093},[3925,25486,25358],{"class":4512},[3925,25488,25489],{"class":4521}," '18–22 лип. 2026'",[3925,25491,5051],{"class":4508},[3925,25493,25494,25496,25499],{"class":3927,"line":4098},[3925,25495,23646],{"class":4512},[3925,25497,25498],{"class":4521}," 'Схід сонця на набережній, рибний ринок і вечірній Привоз.'",[3925,25500,5051],{"class":4508},[3925,25502,25503],{"class":3927,"line":6720},[3925,25504,25377],{"class":4512},[3925,25506,25507,25510],{"class":3927,"line":6738},[3925,25508,25509],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1507525428034-b723cf961d3e?w=800&q=80'",[3925,25511,5051],{"class":4508},[3925,25513,25514,25516,25519],{"class":3927,"line":6787},[3925,25515,23612],{"class":4512},[3925,25517,25518],{"class":4521}," 'Південь'",[3925,25520,5051],{"class":4508},[3925,25522,25523],{"class":3927,"line":6792},[3925,25524,6584],{"class":4508},[3925,25526,25527],{"class":3927,"line":6797},[3925,25528,6529],{"class":4508},[3925,25530,25531,25533,25536],{"class":3927,"line":6827},[3925,25532,6534],{"class":4512},[3925,25534,25535],{"class":4521}," '4'",[3925,25537,5051],{"class":4508},[3925,25539,25540,25542,25545],{"class":3927,"line":6862},[3925,25541,5056],{"class":4512},[3925,25543,25544],{"class":4521}," 'Київ на три дні'",[3925,25546,5051],{"class":4508},[3925,25548,25549,25551,25554],{"class":3927,"line":6867},[3925,25550,25358],{"class":4512},[3925,25552,25553],{"class":4521}," '5–7 черв. 2026'",[3925,25555,5051],{"class":4508},[3925,25557,25558,25560,25563],{"class":3927,"line":6872},[3925,25559,23646],{"class":4512},[3925,25561,25562],{"class":4521}," 'Поділ, Андріївський узвіз, вечірня прогулянка Хрещатиком.'",[3925,25564,5051],{"class":4508},[3925,25566,25567],{"class":3927,"line":6906},[3925,25568,25377],{"class":4512},[3925,25570,25571,25574],{"class":3927,"line":6921},[3925,25572,25573],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1565008576549-57569a49371d?w=800&q=80'",[3925,25575,5051],{"class":4508},[3925,25577,25578,25580,25583],{"class":3927,"line":6941},[3925,25579,23612],{"class":4512},[3925,25581,25582],{"class":4521}," 'Центр'",[3925,25584,5051],{"class":4508},[3925,25586,25587],{"class":3927,"line":6962},[3925,25588,6584],{"class":4508},[3925,25590,25591],{"class":3927,"line":6977},[3925,25592,6529],{"class":4508},[3925,25594,25595,25597,25600],{"class":3927,"line":6990},[3925,25596,6534],{"class":4512},[3925,25598,25599],{"class":4521}," '5'",[3925,25601,5051],{"class":4508},[3925,25603,25604,25606,25609],{"class":3927,"line":6996},[3925,25605,5056],{"class":4512},[3925,25607,25608],{"class":4521}," 'Чернівці: університет і дворики'",[3925,25610,5051],{"class":4508},[3925,25612,25613,25615,25618],{"class":3927,"line":7014},[3925,25614,25358],{"class":4512},[3925,25616,25617],{"class":4521}," '20–22 вер. 2026'",[3925,25619,5051],{"class":4508},[3925,25621,25622,25624,25627],{"class":3927,"line":7023},[3925,25623,23646],{"class":4512},[3925,25625,25626],{"class":4521}," 'Резиденція митрополитів, кава на Кобилянській, нічний двір.'",[3925,25628,5051],{"class":4508},[3925,25630,25631],{"class":3927,"line":7032},[3925,25632,25377],{"class":4512},[3925,25634,25635,25638],{"class":3927,"line":7037},[3925,25636,25637],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1519681393784-d120267933ba?w=800&q=80'",[3925,25639,5051],{"class":4508},[3925,25641,25642,25644,25646],{"class":3927,"line":7042},[3925,25643,23612],{"class":4512},[3925,25645,25454],{"class":4521},[3925,25647,5051],{"class":4508},[3925,25649,25650],{"class":3927,"line":7070},[3925,25651,6584],{"class":4508},[3925,25653,25654],{"class":3927,"line":7086},[3925,25655,6529],{"class":4508},[3925,25657,25658,25660,25663],{"class":3927,"line":7097},[3925,25659,6534],{"class":4512},[3925,25661,25662],{"class":4521}," '6'",[3925,25664,5051],{"class":4508},[3925,25666,25667,25669,25672],{"class":3927,"line":7114},[3925,25668,5056],{"class":4512},[3925,25670,25671],{"class":4521}," 'Кам’янець-Подільський'",[3925,25673,5051],{"class":4508},[3925,25675,25676,25678,25681],{"class":3927,"line":7119},[3925,25677,25358],{"class":4512},[3925,25679,25680],{"class":4521}," '11–13 квіт. 2026'",[3925,25682,5051],{"class":4508},[3925,25684,25685,25687,25690],{"class":3927,"line":9008},[3925,25686,23646],{"class":4512},[3925,25688,25689],{"class":4521}," 'Фортеця, каньйон Смотрича, захід сонця з оглядового майданчика.'",[3925,25691,5051],{"class":4508},[3925,25693,25694],{"class":3927,"line":9017},[3925,25695,25377],{"class":4512},[3925,25697,25698,25701],{"class":3927,"line":9022},[3925,25699,25700],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1506905925346-21bda4d32df4?w=800&q=80'",[3925,25702,5051],{"class":4508},[3925,25704,25705,25707,25709],{"class":3927,"line":9027},[3925,25706,23612],{"class":4512},[3925,25708,25454],{"class":4521},[3925,25710,5051],{"class":4508},[3925,25712,25713],{"class":3927,"line":9032},[3925,25714,6584],{"class":4508},[3925,25716,25717],{"class":3927,"line":9053},[3925,25718,6529],{"class":4508},[3925,25720,25721,25723,25726],{"class":3927,"line":9075},[3925,25722,6534],{"class":4512},[3925,25724,25725],{"class":4521}," '7'",[3925,25727,5051],{"class":4508},[3925,25729,25730,25732,25735],{"class":3927,"line":9083},[3925,25731,5056],{"class":4512},[3925,25733,25734],{"class":4521}," 'Харків: місто й парки'",[3925,25736,5051],{"class":4508},[3925,25738,25739,25741,25744],{"class":3927,"line":9094},[3925,25740,25358],{"class":4512},[3925,25742,25743],{"class":4521}," '8–10 серп. 2026'",[3925,25745,5051],{"class":4508},[3925,25747,25748,25750,25753],{"class":3927,"line":9105},[3925,25749,23646],{"class":4512},[3925,25751,25752],{"class":4521}," 'Саржин яр, набережна, вечірні вогні Сумської.'",[3925,25754,5051],{"class":4508},[3925,25756,25757],{"class":3927,"line":9115},[3925,25758,25377],{"class":4512},[3925,25760,25761,25764],{"class":3927,"line":9125},[3925,25762,25763],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1449824913935-59a10b8d2000?w=800&q=80'",[3925,25765,5051],{"class":4508},[3925,25767,25768,25770,25773],{"class":3927,"line":9135},[3925,25769,23612],{"class":4512},[3925,25771,25772],{"class":4521}," 'Схід'",[3925,25774,5051],{"class":4508},[3925,25776,25777],{"class":3927,"line":9140},[3925,25778,6584],{"class":4508},[3925,25780,25781],{"class":3927,"line":9168},[3925,25782,6529],{"class":4508},[3925,25784,25785,25787,25790],{"class":3927,"line":9197},[3925,25786,6534],{"class":4512},[3925,25788,25789],{"class":4521}," '8'",[3925,25791,5051],{"class":4508},[3925,25793,25794,25796,25799],{"class":3927,"line":9226},[3925,25795,5056],{"class":4512},[3925,25797,25798],{"class":4521}," 'Дніпро: мости й пагорби'",[3925,25800,5051],{"class":4508},[3925,25802,25803,25805,25808],{"class":3927,"line":9234},[3925,25804,25358],{"class":4512},[3925,25806,25807],{"class":4521}," '15–17 трав. 2026'",[3925,25809,5051],{"class":4508},[3925,25811,25812,25814,25817],{"class":3927,"line":9245},[3925,25813,23646],{"class":4512},[3925,25815,25816],{"class":4521}," 'Мереживо мостів, прогулянка набережною, кава з видом на річку.'",[3925,25818,5051],{"class":4508},[3925,25820,25821],{"class":3927,"line":9255},[3925,25822,25377],{"class":4512},[3925,25824,25825,25828],{"class":3927,"line":9265},[3925,25826,25827],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1476514525535-07fb3b4ae5f1?w=800&q=80'",[3925,25829,5051],{"class":4508},[3925,25831,25832,25834,25836],{"class":3927,"line":9275},[3925,25833,23612],{"class":4512},[3925,25835,25582],{"class":4521},[3925,25837,5051],{"class":4508},[3925,25839,25840],{"class":3927,"line":9286},[3925,25841,6584],{"class":4508},[3925,25843,25844],{"class":3927,"line":9291},[3925,25845,6529],{"class":4508},[3925,25847,25848,25850,25853],{"class":3927,"line":9319},[3925,25849,6534],{"class":4512},[3925,25851,25852],{"class":4521}," '9'",[3925,25854,5051],{"class":4508},[3925,25856,25857,25859,25862],{"class":3927,"line":9346},[3925,25858,5056],{"class":4512},[3925,25860,25861],{"class":4521}," 'Ужгород і виноград'",[3925,25863,5051],{"class":4508},[3925,25865,25866,25868,25871],{"class":3927,"line":9354},[3925,25867,25358],{"class":4512},[3925,25869,25870],{"class":4521}," '25–27 жовт. 2026'",[3925,25872,5051],{"class":4508},[3925,25874,25875,25877,25880],{"class":3927,"line":9363},[3925,25876,23646],{"class":4512},[3925,25878,25879],{"class":4521}," 'Замок, липова алея, дегустація біля місцевих виноробів.'",[3925,25881,5051],{"class":4508},[3925,25883,25884],{"class":3927,"line":9373},[3925,25885,25377],{"class":4512},[3925,25887,25888,25891],{"class":3927,"line":9383},[3925,25889,25890],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1500530855697-b586d89ba3ee?w=800&q=80'",[3925,25892,5051],{"class":4508},[3925,25894,25895,25897,25899],{"class":3927,"line":9388},[3925,25896,23612],{"class":4512},[3925,25898,25391],{"class":4521},[3925,25900,5051],{"class":4508},[3925,25902,25903],{"class":3927,"line":9396},[3925,25904,6584],{"class":4508},[3925,25906,25907],{"class":3927,"line":9405},[3925,25908,6529],{"class":4508},[3925,25910,25911,25913,25916],{"class":3927,"line":9415},[3925,25912,6534],{"class":4512},[3925,25914,25915],{"class":4521}," '10'",[3925,25917,5051],{"class":4508},[3925,25919,25920,25922,25925],{"class":3927,"line":9424},[3925,25921,5056],{"class":4512},[3925,25923,25924],{"class":4521}," 'Полтава: смаки й історія'",[3925,25926,5051],{"class":4508},[3925,25928,25929,25931,25934],{"class":3927,"line":9435},[3925,25930,25358],{"class":4512},[3925,25932,25933],{"class":4521}," '3–5 лип. 2026'",[3925,25935,5051],{"class":4508},[3925,25937,25938,25940,25943],{"class":3927,"line":9440},[3925,25939,23646],{"class":4512},[3925,25941,25942],{"class":4521}," 'Котлета по-київськи — ні, галушки; музей і тихі двори.'",[3925,25944,5051],{"class":4508},[3925,25946,25947],{"class":3927,"line":9460},[3925,25948,25377],{"class":4512},[3925,25950,25951,25954],{"class":3927,"line":11409},[3925,25952,25953],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1469474968028-56623f02e42e?w=800&q=80'",[3925,25955,5051],{"class":4508},[3925,25957,25958,25960,25962],{"class":3927,"line":11418},[3925,25959,23612],{"class":4512},[3925,25961,25582],{"class":4521},[3925,25963,5051],{"class":4508},[3925,25965,25966],{"class":3927,"line":11427},[3925,25967,6584],{"class":4508},[3925,25969,25970],{"class":3927,"line":11437},[3925,25971,6529],{"class":4508},[3925,25973,25974,25976,25979],{"class":3927,"line":11446},[3925,25975,6534],{"class":4512},[3925,25977,25978],{"class":4521}," '11'",[3925,25980,5051],{"class":4508},[3925,25982,25983,25985,25988],{"class":3927,"line":11457},[3925,25984,5056],{"class":4512},[3925,25986,25987],{"class":4521}," 'Затока: пісок і шторм'",[3925,25989,5051],{"class":4508},[3925,25991,25992,25994,25997],{"class":3927,"line":11462},[3925,25993,25358],{"class":4512},[3925,25995,25996],{"class":4521}," '1–7 серп. 2026'",[3925,25998,5051],{"class":4508},[3925,26000,26001,26003,26006],{"class":3927,"line":11470},[3925,26002,23646],{"class":4512},[3925,26004,26005],{"class":4521}," 'Ранкові купання, вечірній вітер, книжка під парасолькою.'",[3925,26007,5051],{"class":4508},[3925,26009,26010],{"class":3927,"line":11479},[3925,26011,25377],{"class":4512},[3925,26013,26014,26017],{"class":3927,"line":11488},[3925,26015,26016],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1507525428034-b723cf961d3e?w=600&q=80'",[3925,26018,5051],{"class":4508},[3925,26020,26021,26023,26025],{"class":3927,"line":11497},[3925,26022,23612],{"class":4512},[3925,26024,25518],{"class":4521},[3925,26026,5051],{"class":4508},[3925,26028,26029],{"class":3927,"line":11506},[3925,26030,6584],{"class":4508},[3925,26032,26033],{"class":3927,"line":11515},[3925,26034,6529],{"class":4508},[3925,26036,26037,26039,26042],{"class":3927,"line":11524},[3925,26038,6534],{"class":4512},[3925,26040,26041],{"class":4521}," '12'",[3925,26043,5051],{"class":4508},[3925,26045,26046,26048,26051],{"class":3927,"line":11533},[3925,26047,5056],{"class":4512},[3925,26049,26050],{"class":4521}," 'Яремче: водоспад і ліс'",[3925,26052,5051],{"class":4508},[3925,26054,26055,26057,26060],{"class":3927,"line":11542},[3925,26056,25358],{"class":4512},[3925,26058,26059],{"class":4521}," '19–21 черв. 2026'",[3925,26061,5051],{"class":4508},[3925,26063,26064,26066,26069],{"class":3927,"line":11547},[3925,26065,23646],{"class":4512},[3925,26067,26068],{"class":4521}," 'Прогулянка до водоспаду, гуцульська кухня, туман над смереками.'",[3925,26070,5051],{"class":4508},[3925,26072,26073],{"class":3927,"line":11563},[3925,26074,25377],{"class":4512},[3925,26076,26077,26080],{"class":3927,"line":11570},[3925,26078,26079],{"class":4521},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1441974231531-c6227db76b6e?w=800&q=80'",[3925,26081,5051],{"class":4508},[3925,26083,26084,26086,26088],{"class":3927,"line":11580},[3925,26085,23612],{"class":4512},[3925,26087,25391],{"class":4521},[3925,26089,5051],{"class":4508},[3925,26091,26092],{"class":3927,"line":11589},[3925,26093,6584],{"class":4508},[3925,26095,26096],{"class":3927,"line":11598},[3925,26097,6641],{"class":4508},[3916,26099,26102],{"className":6417,"code":26100,"filename":26101,"language":6419,"meta":3921,"style":3921},"import type { Place } from '.\u002Ftypes';\n\n\u002F** Місця всередині поїздок — для горизонтальної стрічки на home. *\u002F\nexport const mockPlaces: Place[] = [\n  {\n    id: 'p1',\n    tripId: '1',\n    name: 'Говерла',\n    city: 'Карпати',\n    note: 'Схід сонця з вершини',\n  },\n  {\n    id: 'p2',\n    tripId: '1',\n    name: 'Котедж біля полонини',\n    city: 'Карпати',\n    note: 'Вечірній чай і камін',\n  },\n  {\n    id: 'p3',\n    tripId: '2',\n    name: 'Площа Ринок',\n    city: 'Львів',\n    note: 'Ратуша й кав’ярні',\n  },\n  {\n    id: 'p4',\n    tripId: '2',\n    name: 'Високий Замок',\n    city: 'Львів',\n    note: 'Панорама міста',\n  },\n  {\n    id: 'p5',\n    tripId: '3',\n    name: 'Дерибасівська',\n    city: 'Одеса',\n    note: 'Прогулянка ввечері',\n  },\n  {\n    id: 'p6',\n    tripId: '3',\n    name: 'Ланжерон',\n    city: 'Одеса',\n    note: 'Пляж і набережна',\n  },\n  {\n    id: 'p7',\n    tripId: '4',\n    name: 'Андріївський узвіз',\n    city: 'Київ',\n    note: 'Галереї й бруківка',\n  },\n  {\n    id: 'p8',\n    tripId: '6',\n    name: 'Стара фортеця',\n    city: 'Кам’янець',\n    note: 'Фото з мосту',\n  },\n  {\n    id: 'p9',\n    tripId: '9',\n    name: 'Ужгородський замок',\n    city: 'Ужгород',\n    note: 'Музей і сад',\n  },\n  {\n    id: 'p10',\n    tripId: '12',\n    name: 'Водоспад Пробій',\n    city: 'Яремче',\n    note: 'Шум води й місток',\n  },\n];\n","src\u002Ffeatures\u002Ftrips\u002Fmodel\u002FmockPlaces.ts",[3521,26103,26104,26122,26126,26131,26146,26150,26159,26168,26178,26187,26197,26201,26205,26214,26222,26231,26239,26248,26252,26256,26265,26273,26282,26291,26300,26304,26308,26317,26325,26334,26342,26351,26355,26359,26368,26376,26385,26394,26403,26407,26411,26420,26428,26437,26445,26454,26458,26462,26471,26479,26488,26497,26506,26510,26514,26523,26531,26540,26549,26558,26562,26566,26575,26583,26592,26601,26610,26614,26618,26627,26635,26644,26653,26662,26666],{"__ignoreMap":3921},[3925,26105,26106,26108,26110,26112,26114,26116,26118,26120],{"class":3927,"line":3928},[3925,26107,4505],{"class":4504},[3925,26109,6428],{"class":4504},[3925,26111,4509],{"class":4508},[3925,26113,14874],{"class":4512},[3925,26115,4515],{"class":4508},[3925,26117,4518],{"class":4504},[3925,26119,23462],{"class":4521},[3925,26121,4525],{"class":4508},[3925,26123,26124],{"class":3927,"line":3934},[3925,26125,3950],{"emptyLinePlaceholder":3949},[3925,26127,26128],{"class":3927,"line":3940},[3925,26129,26130],{"class":4498},"\u002F** Місця всередині поїздок — для горизонтальної стрічки на home. *\u002F\n",[3925,26132,26133,26135,26137,26140,26142,26144],{"class":3927,"line":3946},[3925,26134,4534],{"class":4504},[3925,26136,5191],{"class":4540},[3925,26138,26139],{"class":5194}," mockPlaces",[3925,26141,4767],{"class":4508},[3925,26143,14874],{"class":4565},[3925,26145,6524],{"class":4508},[3925,26147,26148],{"class":3927,"line":3953},[3925,26149,6529],{"class":4508},[3925,26151,26152,26154,26157],{"class":3927,"line":3959},[3925,26153,6534],{"class":4512},[3925,26155,26156],{"class":4521}," 'p1'",[3925,26158,5051],{"class":4508},[3925,26160,26161,26164,26166],{"class":3927,"line":3965},[3925,26162,26163],{"class":4512},"    tripId:",[3925,26165,6537],{"class":4521},[3925,26167,5051],{"class":4508},[3925,26169,26170,26173,26176],{"class":3927,"line":3971},[3925,26171,26172],{"class":4512},"    name:",[3925,26174,26175],{"class":4521}," 'Говерла'",[3925,26177,5051],{"class":4508},[3925,26179,26180,26183,26185],{"class":3927,"line":3977},[3925,26181,26182],{"class":4512},"    city:",[3925,26184,25391],{"class":4521},[3925,26186,5051],{"class":4508},[3925,26188,26189,26192,26195],{"class":3927,"line":3983},[3925,26190,26191],{"class":4512},"    note:",[3925,26193,26194],{"class":4521}," 'Схід сонця з вершини'",[3925,26196,5051],{"class":4508},[3925,26198,26199],{"class":3927,"line":3989},[3925,26200,6584],{"class":4508},[3925,26202,26203],{"class":3927,"line":3995},[3925,26204,6529],{"class":4508},[3925,26206,26207,26209,26212],{"class":3927,"line":4001},[3925,26208,6534],{"class":4512},[3925,26210,26211],{"class":4521}," 'p2'",[3925,26213,5051],{"class":4508},[3925,26215,26216,26218,26220],{"class":3927,"line":4007},[3925,26217,26163],{"class":4512},[3925,26219,6537],{"class":4521},[3925,26221,5051],{"class":4508},[3925,26223,26224,26226,26229],{"class":3927,"line":4013},[3925,26225,26172],{"class":4512},[3925,26227,26228],{"class":4521}," 'Котедж біля полонини'",[3925,26230,5051],{"class":4508},[3925,26232,26233,26235,26237],{"class":3927,"line":4019},[3925,26234,26182],{"class":4512},[3925,26236,25391],{"class":4521},[3925,26238,5051],{"class":4508},[3925,26240,26241,26243,26246],{"class":3927,"line":4024},[3925,26242,26191],{"class":4512},[3925,26244,26245],{"class":4521}," 'Вечірній чай і камін'",[3925,26247,5051],{"class":4508},[3925,26249,26250],{"class":3927,"line":4030},[3925,26251,6584],{"class":4508},[3925,26253,26254],{"class":3927,"line":4036},[3925,26255,6529],{"class":4508},[3925,26257,26258,26260,26263],{"class":3927,"line":4041},[3925,26259,6534],{"class":4512},[3925,26261,26262],{"class":4521}," 'p3'",[3925,26264,5051],{"class":4508},[3925,26266,26267,26269,26271],{"class":3927,"line":4047},[3925,26268,26163],{"class":4512},[3925,26270,6595],{"class":4521},[3925,26272,5051],{"class":4508},[3925,26274,26275,26277,26280],{"class":3927,"line":4053},[3925,26276,26172],{"class":4512},[3925,26278,26279],{"class":4521}," 'Площа Ринок'",[3925,26281,5051],{"class":4508},[3925,26283,26284,26286,26289],{"class":3927,"line":4059},[3925,26285,26182],{"class":4512},[3925,26287,26288],{"class":4521}," 'Львів'",[3925,26290,5051],{"class":4508},[3925,26292,26293,26295,26298],{"class":3927,"line":4065},[3925,26294,26191],{"class":4512},[3925,26296,26297],{"class":4521}," 'Ратуша й кав’ярні'",[3925,26299,5051],{"class":4508},[3925,26301,26302],{"class":3927,"line":4070},[3925,26303,6584],{"class":4508},[3925,26305,26306],{"class":3927,"line":4076},[3925,26307,6529],{"class":4508},[3925,26309,26310,26312,26315],{"class":3927,"line":4082},[3925,26311,6534],{"class":4512},[3925,26313,26314],{"class":4521}," 'p4'",[3925,26316,5051],{"class":4508},[3925,26318,26319,26321,26323],{"class":3927,"line":4088},[3925,26320,26163],{"class":4512},[3925,26322,6595],{"class":4521},[3925,26324,5051],{"class":4508},[3925,26326,26327,26329,26332],{"class":3927,"line":4093},[3925,26328,26172],{"class":4512},[3925,26330,26331],{"class":4521}," 'Високий Замок'",[3925,26333,5051],{"class":4508},[3925,26335,26336,26338,26340],{"class":3927,"line":4098},[3925,26337,26182],{"class":4512},[3925,26339,26288],{"class":4521},[3925,26341,5051],{"class":4508},[3925,26343,26344,26346,26349],{"class":3927,"line":6720},[3925,26345,26191],{"class":4512},[3925,26347,26348],{"class":4521}," 'Панорама міста'",[3925,26350,5051],{"class":4508},[3925,26352,26353],{"class":3927,"line":6738},[3925,26354,6584],{"class":4508},[3925,26356,26357],{"class":3927,"line":6787},[3925,26358,6529],{"class":4508},[3925,26360,26361,26363,26366],{"class":3927,"line":6792},[3925,26362,6534],{"class":4512},[3925,26364,26365],{"class":4521}," 'p5'",[3925,26367,5051],{"class":4508},[3925,26369,26370,26372,26374],{"class":3927,"line":6797},[3925,26371,26163],{"class":4512},[3925,26373,25471],{"class":4521},[3925,26375,5051],{"class":4508},[3925,26377,26378,26380,26383],{"class":3927,"line":6827},[3925,26379,26172],{"class":4512},[3925,26381,26382],{"class":4521}," 'Дерибасівська'",[3925,26384,5051],{"class":4508},[3925,26386,26387,26389,26392],{"class":3927,"line":6862},[3925,26388,26182],{"class":4512},[3925,26390,26391],{"class":4521}," 'Одеса'",[3925,26393,5051],{"class":4508},[3925,26395,26396,26398,26401],{"class":3927,"line":6867},[3925,26397,26191],{"class":4512},[3925,26399,26400],{"class":4521}," 'Прогулянка ввечері'",[3925,26402,5051],{"class":4508},[3925,26404,26405],{"class":3927,"line":6872},[3925,26406,6584],{"class":4508},[3925,26408,26409],{"class":3927,"line":6906},[3925,26410,6529],{"class":4508},[3925,26412,26413,26415,26418],{"class":3927,"line":6921},[3925,26414,6534],{"class":4512},[3925,26416,26417],{"class":4521}," 'p6'",[3925,26419,5051],{"class":4508},[3925,26421,26422,26424,26426],{"class":3927,"line":6941},[3925,26423,26163],{"class":4512},[3925,26425,25471],{"class":4521},[3925,26427,5051],{"class":4508},[3925,26429,26430,26432,26435],{"class":3927,"line":6962},[3925,26431,26172],{"class":4512},[3925,26433,26434],{"class":4521}," 'Ланжерон'",[3925,26436,5051],{"class":4508},[3925,26438,26439,26441,26443],{"class":3927,"line":6977},[3925,26440,26182],{"class":4512},[3925,26442,26391],{"class":4521},[3925,26444,5051],{"class":4508},[3925,26446,26447,26449,26452],{"class":3927,"line":6990},[3925,26448,26191],{"class":4512},[3925,26450,26451],{"class":4521}," 'Пляж і набережна'",[3925,26453,5051],{"class":4508},[3925,26455,26456],{"class":3927,"line":6996},[3925,26457,6584],{"class":4508},[3925,26459,26460],{"class":3927,"line":7014},[3925,26461,6529],{"class":4508},[3925,26463,26464,26466,26469],{"class":3927,"line":7023},[3925,26465,6534],{"class":4512},[3925,26467,26468],{"class":4521}," 'p7'",[3925,26470,5051],{"class":4508},[3925,26472,26473,26475,26477],{"class":3927,"line":7032},[3925,26474,26163],{"class":4512},[3925,26476,25535],{"class":4521},[3925,26478,5051],{"class":4508},[3925,26480,26481,26483,26486],{"class":3927,"line":7037},[3925,26482,26172],{"class":4512},[3925,26484,26485],{"class":4521}," 'Андріївський узвіз'",[3925,26487,5051],{"class":4508},[3925,26489,26490,26492,26495],{"class":3927,"line":7042},[3925,26491,26182],{"class":4512},[3925,26493,26494],{"class":4521}," 'Київ'",[3925,26496,5051],{"class":4508},[3925,26498,26499,26501,26504],{"class":3927,"line":7070},[3925,26500,26191],{"class":4512},[3925,26502,26503],{"class":4521}," 'Галереї й бруківка'",[3925,26505,5051],{"class":4508},[3925,26507,26508],{"class":3927,"line":7086},[3925,26509,6584],{"class":4508},[3925,26511,26512],{"class":3927,"line":7097},[3925,26513,6529],{"class":4508},[3925,26515,26516,26518,26521],{"class":3927,"line":7114},[3925,26517,6534],{"class":4512},[3925,26519,26520],{"class":4521}," 'p8'",[3925,26522,5051],{"class":4508},[3925,26524,26525,26527,26529],{"class":3927,"line":7119},[3925,26526,26163],{"class":4512},[3925,26528,25662],{"class":4521},[3925,26530,5051],{"class":4508},[3925,26532,26533,26535,26538],{"class":3927,"line":9008},[3925,26534,26172],{"class":4512},[3925,26536,26537],{"class":4521}," 'Стара фортеця'",[3925,26539,5051],{"class":4508},[3925,26541,26542,26544,26547],{"class":3927,"line":9017},[3925,26543,26182],{"class":4512},[3925,26545,26546],{"class":4521}," 'Кам’янець'",[3925,26548,5051],{"class":4508},[3925,26550,26551,26553,26556],{"class":3927,"line":9022},[3925,26552,26191],{"class":4512},[3925,26554,26555],{"class":4521}," 'Фото з мосту'",[3925,26557,5051],{"class":4508},[3925,26559,26560],{"class":3927,"line":9027},[3925,26561,6584],{"class":4508},[3925,26563,26564],{"class":3927,"line":9032},[3925,26565,6529],{"class":4508},[3925,26567,26568,26570,26573],{"class":3927,"line":9053},[3925,26569,6534],{"class":4512},[3925,26571,26572],{"class":4521}," 'p9'",[3925,26574,5051],{"class":4508},[3925,26576,26577,26579,26581],{"class":3927,"line":9075},[3925,26578,26163],{"class":4512},[3925,26580,25852],{"class":4521},[3925,26582,5051],{"class":4508},[3925,26584,26585,26587,26590],{"class":3927,"line":9083},[3925,26586,26172],{"class":4512},[3925,26588,26589],{"class":4521}," 'Ужгородський замок'",[3925,26591,5051],{"class":4508},[3925,26593,26594,26596,26599],{"class":3927,"line":9094},[3925,26595,26182],{"class":4512},[3925,26597,26598],{"class":4521}," 'Ужгород'",[3925,26600,5051],{"class":4508},[3925,26602,26603,26605,26608],{"class":3927,"line":9105},[3925,26604,26191],{"class":4512},[3925,26606,26607],{"class":4521}," 'Музей і сад'",[3925,26609,5051],{"class":4508},[3925,26611,26612],{"class":3927,"line":9115},[3925,26613,6584],{"class":4508},[3925,26615,26616],{"class":3927,"line":9125},[3925,26617,6529],{"class":4508},[3925,26619,26620,26622,26625],{"class":3927,"line":9135},[3925,26621,6534],{"class":4512},[3925,26623,26624],{"class":4521}," 'p10'",[3925,26626,5051],{"class":4508},[3925,26628,26629,26631,26633],{"class":3927,"line":9140},[3925,26630,26163],{"class":4512},[3925,26632,26041],{"class":4521},[3925,26634,5051],{"class":4508},[3925,26636,26637,26639,26642],{"class":3927,"line":9168},[3925,26638,26172],{"class":4512},[3925,26640,26641],{"class":4521}," 'Водоспад Пробій'",[3925,26643,5051],{"class":4508},[3925,26645,26646,26648,26651],{"class":3927,"line":9197},[3925,26647,26182],{"class":4512},[3925,26649,26650],{"class":4521}," 'Яремче'",[3925,26652,5051],{"class":4508},[3925,26654,26655,26657,26660],{"class":3927,"line":9226},[3925,26656,26191],{"class":4512},[3925,26658,26659],{"class":4521}," 'Шум води й місток'",[3925,26661,5051],{"class":4508},[3925,26663,26664],{"class":3927,"line":9234},[3925,26665,6584],{"class":4508},[3925,26667,26668],{"class":3927,"line":9245},[3925,26669,6641],{"class":4508},[3916,26671,26674],{"className":6417,"code":26672,"filename":26673,"language":6419,"meta":3921,"style":3921},"import { mockPlaces } from '.\u002FmockPlaces';\nimport type { Place } from '.\u002Ftypes';\n\n\u002F** Місця, прив’язані до поїздки (mock). *\u002F\nexport function getPlacesForTrip(tripId: string): Place[] {\n  return mockPlaces.filter((p) => p.tripId === tripId);\n}\n","src\u002Ffeatures\u002Ftrips\u002Fmodel\u002FplacesHelpers.ts",[3521,26675,26676,26693,26711,26715,26720,26743,26774],{"__ignoreMap":3921},[3925,26677,26678,26680,26682,26684,26686,26688,26691],{"class":3927,"line":3928},[3925,26679,4505],{"class":4504},[3925,26681,4509],{"class":4508},[3925,26683,14880],{"class":4512},[3925,26685,4515],{"class":4508},[3925,26687,4518],{"class":4504},[3925,26689,26690],{"class":4521}," '.\u002FmockPlaces'",[3925,26692,4525],{"class":4508},[3925,26694,26695,26697,26699,26701,26703,26705,26707,26709],{"class":3927,"line":3934},[3925,26696,4505],{"class":4504},[3925,26698,6428],{"class":4504},[3925,26700,4509],{"class":4508},[3925,26702,14874],{"class":4512},[3925,26704,4515],{"class":4508},[3925,26706,4518],{"class":4504},[3925,26708,23462],{"class":4521},[3925,26710,4525],{"class":4508},[3925,26712,26713],{"class":3927,"line":3940},[3925,26714,3950],{"emptyLinePlaceholder":3949},[3925,26716,26717],{"class":3927,"line":3946},[3925,26718,26719],{"class":4498},"\u002F** Місця, прив’язані до поїздки (mock). *\u002F\n",[3925,26721,26722,26724,26726,26729,26731,26733,26735,26737,26739,26741],{"class":3927,"line":3953},[3925,26723,4534],{"class":4504},[3925,26725,4541],{"class":4540},[3925,26727,26728],{"class":4544}," getPlacesForTrip",[3925,26730,4702],{"class":4508},[3925,26732,6018],{"class":4512},[3925,26734,4767],{"class":4508},[3925,26736,5949],{"class":4565},[3925,26738,6815],{"class":4508},[3925,26740,14874],{"class":4565},[3925,26742,6735],{"class":4508},[3925,26744,26745,26747,26749,26751,26754,26756,26758,26760,26762,26764,26766,26768,26770,26772],{"class":3927,"line":3959},[3925,26746,4553],{"class":4504},[3925,26748,26139],{"class":4512},[3925,26750,3595],{"class":4508},[3925,26752,26753],{"class":4544},"filter",[3925,26755,6695],{"class":4508},[3925,26757,3512],{"class":4512},[3925,26759,6701],{"class":4508},[3925,26761,5614],{"class":4540},[3925,26763,16389],{"class":4512},[3925,26765,3595],{"class":4508},[3925,26767,6018],{"class":4512},[3925,26769,6855],{"class":4508},[3925,26771,6018],{"class":4512},[3925,26773,4724],{"class":4508},[3925,26775,26776],{"class":3927,"line":3965},[3925,26777,4016],{"class":4508},[3916,26779,26782],{"className":4489,"code":26780,"filename":26781,"language":4491,"meta":3921,"style":3921},"import { useState } from 'react';\nimport {\n  KeyboardAvoidingView,\n  Platform,\n  ScrollView,\n  StyleSheet,\n  Switch,\n  View,\n} from 'react-native';\nimport { Controller, useForm } from 'react-hook-form';\nimport { zodResolver } from '@hookform\u002Fresolvers\u002Fzod';\nimport { Picker } from '@react-native-picker\u002Fpicker';\nimport Checkbox from '@react-native-community\u002Fcheckbox';\nimport Slider from '@react-native-community\u002Fslider';\n\nimport {\n  createTripSchema,\n  type CreateTripFormValues,\n} from '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002FcreateTripSchema';\nimport { formatTripDateLabel } from '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002FformatTripDates';\nimport { TRIP_REGIONS, type Trip } from '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002Ftypes';\nimport { DateField } from '@\u002Ffeatures\u002Ftrips\u002Fui\u002FDateField';\nimport { FormRow } from '@\u002Ffeatures\u002Ftrips\u002Fui\u002FFormRow';\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText, Button, TextField } from '@\u002Fshared\u002Fui';\n\ntype CreateTripFormProps = {\n  onSubmitSuccess: (trip: Trip) => void;\n  onCancel?: () => void;\n};\n\nfunction startOfToday(): Date {\n  const d = new Date();\n  d.setHours(12, 0, 0, 0);\n  return d;\n}\n\nfunction addDays(base: Date, days: number): Date {\n  const d = new Date(base);\n  d.setDate(d.getDate() + days);\n  return d;\n}\n\n\u002F**\n * Форма «Нова поїздка»: усі основні form-контроли + RHF + Zod.\n * Не залежить від навігації — батько вирішує, куди піти після submit.\n *\u002F\nexport function CreateTripForm({\n  onSubmitSuccess,\n  onCancel,\n}: CreateTripFormProps) {\n  const { colors, spacing, radius } = useTheme();\n  const [submitting, setSubmitting] = useState(false);\n\n  const {\n    control,\n    handleSubmit,\n    watch,\n    formState: { errors },\n  } = useForm\u003CCreateTripFormValues>({\n    resolver: zodResolver(createTripSchema),\n    defaultValues: {\n      title: '',\n      region: 'Карпати',\n      description: '',\n      startDate: startOfToday(),\n      endDate: addDays(startOfToday(), 2),\n      isPrivate: false,\n      plannedDays: 3,\n      hasItinerary: false,\n      \u002F\u002F literal true — у default false, щоб користувач свідомо поставив галочку\n      acceptedLocalSave: false as unknown as true,\n    },\n    mode: 'onSubmit',\n    reValidateMode: 'onChange',\n  });\n\n  const startDate = watch('startDate');\n  const plannedDays = watch('plannedDays');\n\n  const onValid = (values: CreateTripFormValues) => {\n    setSubmitting(true);\n    const trip: Trip = {\n      id: `local-${Date.now()}`,\n      title: values.title,\n      region: values.region,\n      description: values.description,\n      dateLabel: formatTripDateLabel(values.startDate, values.endDate),\n      coverUri: `https:\u002F\u002Fpicsum.photos\u002Fseed\u002F${encodeURIComponent(values.title)}\u002F800\u002F400`,\n      isPrivate: values.isPrivate,\n      plannedDays: values.plannedDays,\n      hasItinerary: values.hasItinerary,\n    };\n    onSubmitSuccess(trip);\n    setSubmitting(false);\n  };\n\n  return (\n    \u003CKeyboardAvoidingView\n      style={styles.flex}\n      behavior={Platform.OS === 'ios' ? 'padding' : 'height'}\n      keyboardVerticalOffset={Platform.OS === 'ios' ? 8 : 0}\n    >\n      \u003CScrollView\n        style={styles.flex}\n        contentContainerStyle={[\n          styles.content,\n          { padding: spacing.md, gap: spacing.md, paddingBottom: spacing.xl },\n        ]}\n        keyboardShouldPersistTaps=\"handled\"\n        keyboardDismissMode=\"on-drag\"\n        showsVerticalScrollIndicator={false}\n      >\n        \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n          Заповніть поля. Помилки з’являться після натискання «Створити», якщо\n          щось не так. Тут зібрані різні типи контролів: текст, список, дати,\n          перемикач, галочка, повзунок.\n        \u003C\u002FAppText>\n\n        {\u002F* ——— TextInput ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"title\"\n          render={({ field: { onChange, onBlur, value } }) => (\n            \u003CTextField\n              label=\"Назва поїздки\"\n              placeholder=\"Наприклад, Карпати на вихідні\"\n              value={value}\n              onChangeText={onChange}\n              onBlur={onBlur}\n              error={errors.title?.message}\n              autoCapitalize=\"sentences\"\n              returnKeyType=\"next\"\n              maxLength={80}\n            \u002F>\n          )}\n        \u002F>\n\n        {\u002F* ——— Picker ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"region\"\n          render={({ field: { onChange, value } }) => (\n            \u003CFormRow\n              label=\"Регіон\"\n              description=\"Оберіть зі списку (Picker), а не вводьте вручну\"\n              error={errors.region?.message}\n              stacked\n              control={\n                \u003CView\n                  style={[\n                    styles.pickerWrap,\n                    {\n                      borderColor: errors.region\n                        ? colors.danger\n                        : colors.border,\n                      backgroundColor: colors.surface,\n                      borderRadius: radius.md,\n                    },\n                  ]}\n                >\n                  \u003CPicker\n                    selectedValue={value}\n                    onValueChange={onChange}\n                    dropdownIconColor={colors.text}\n                    style={{ color: colors.text }}\n                  >\n                    {TRIP_REGIONS.map((region) => (\n                      \u003CPicker.Item\n                        key={region}\n                        label={region}\n                        value={region}\n                        color={colors.text}\n                      \u002F>\n                    ))}\n                  \u003C\u002FPicker>\n                \u003C\u002FView>\n              }\n            \u002F>\n          )}\n        \u002F>\n\n        {\u002F* ——— DateTimePicker через DateField ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"startDate\"\n          render={({ field: { onChange, onBlur, value } }) => (\n            \u003CDateField\n              label=\"Дата початку\"\n              value={value}\n              onChange={onChange}\n              onBlur={onBlur}\n              error={errors.startDate?.message}\n            \u002F>\n          )}\n        \u002F>\n\n        \u003CController\n          control={control}\n          name=\"endDate\"\n          render={({ field: { onChange, onBlur, value } }) => (\n            \u003CDateField\n              label=\"Дата завершення\"\n              value={value}\n              onChange={onChange}\n              onBlur={onBlur}\n              error={errors.endDate?.message}\n              minimumDate={startDate}\n            \u002F>\n          )}\n        \u002F>\n\n        {\u002F* ——— TextInput multiline ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"description\"\n          render={({ field: { onChange, onBlur, value } }) => (\n            \u003CTextField\n              label=\"Опис\"\n              placeholder=\"Коротко: що плануєте побачити, з ким їдете…\"\n              value={value}\n              onChangeText={onChange}\n              onBlur={onBlur}\n              error={errors.description?.message}\n              multiline\n              numberOfLines={4}\n              textAlignVertical=\"top\"\n              style={styles.multiline}\n              maxLength={500}\n              hint=\"Мінімум 10 символів\"\n            \u002F>\n          )}\n        \u002F>\n\n        {\u002F* ——— Slider ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"plannedDays\"\n          render={({ field: { onChange, value } }) => (\n            \u003CFormRow\n              label={`Тривалість: ${value} ${daysWord(value)}`}\n              description=\"Повзунок (Slider) — зручно для діапазону 1–14\"\n              error={errors.plannedDays?.message}\n              stacked\n              control={\n                \u003CSlider\n                  minimumValue={1}\n                  maximumValue={14}\n                  step={1}\n                  value={value}\n                  onValueChange={onChange}\n                  minimumTrackTintColor={colors.primary}\n                  maximumTrackTintColor={colors.border}\n                  thumbTintColor={colors.primary}\n                \u002F>\n              }\n            \u002F>\n          )}\n        \u002F>\n        \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n          Зараз на слайдері: {plannedDays}{' '}\n          {daysWord(plannedDays ?? 1)} (можна не збігатися з датами — це\n          окреме «орієнтовне» поле для навчання).\n        \u003C\u002FAppText>\n\n        {\u002F* ——— Switch ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"isPrivate\"\n          render={({ field: { onChange, value } }) => (\n            \u003CFormRow\n              label=\"Приватна поїздка\"\n              description=\"Switch: увімкнено — мітка «приватна» на картці\"\n              error={errors.isPrivate?.message}\n              control={\n                \u003CSwitch\n                  value={value}\n                  onValueChange={onChange}\n                  trackColor={{\n                    false: colors.border,\n                    true: colors.primary,\n                  }}\n                  thumbColor={colors.onPrimary}\n                  ios_backgroundColor={colors.border}\n                \u002F>\n              }\n            \u002F>\n          )}\n        \u002F>\n\n        {\u002F* ——— Checkbox (опційний прапорець) ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"hasItinerary\"\n          render={({ field: { onChange, value } }) => (\n            \u003CFormRow\n              label=\"Є план маршруту\"\n              description=\"Checkbox: так \u002F ні, без обов’язковості\"\n              error={errors.hasItinerary?.message}\n              control={\n                \u003CCheckbox\n                  value={value}\n                  onValueChange={onChange}\n                  tintColors={{\n                    true: colors.primary,\n                    false: colors.border,\n                  }}\n                  onCheckColor={colors.onPrimary}\n                  onFillColor={colors.primary}\n                  onTintColor={colors.primary}\n                  boxType=\"square\"\n                \u002F>\n              }\n            \u002F>\n          )}\n        \u002F>\n\n        {\u002F* ——— Checkbox (обов’язкова згода) ——— *\u002F}\n        \u003CController\n          control={control}\n          name=\"acceptedLocalSave\"\n          render={({ field: { onChange, value } }) => (\n            \u003CFormRow\n              label=\"Згода на локальне збереження\"\n              description=\"Поки немає API: дані лишаються в пам’яті застосунку\"\n              error={errors.acceptedLocalSave?.message}\n              control={\n                \u003CCheckbox\n                  value={Boolean(value)}\n                  onValueChange={onChange}\n                  tintColors={{\n                    true: colors.primary,\n                    false: colors.border,\n                  }}\n                  onCheckColor={colors.onPrimary}\n                  onFillColor={colors.primary}\n                  onTintColor={colors.primary}\n                  boxType=\"square\"\n                \u002F>\n              }\n            \u002F>\n          )}\n        \u002F>\n\n        {\u002F* ——— Button (Pressable-обгортка з shared\u002Fui) ——— *\u002F}\n        \u003CView style={{ gap: spacing.sm, marginTop: spacing.sm }}>\n          \u003CButton\n            label={submitting ? 'Створюємо…' : 'Створити поїздку'}\n            onPress={handleSubmit(onValid)}\n            disabled={submitting}\n          \u002F>\n          {onCancel ? (\n            \u003CButton\n              label=\"Скасувати\"\n              variant=\"secondary\"\n              onPress={onCancel}\n              disabled={submitting}\n            \u002F>\n          ) : null}\n        \u003C\u002FView>\n      \u003C\u002FScrollView>\n    \u003C\u002FKeyboardAvoidingView>\n  );\n}\n\nfunction daysWord(n: number): string {\n  const abs = Math.abs(n) % 100;\n  const last = abs % 10;\n  if (abs > 10 && abs \u003C 20) return 'днів';\n  if (last === 1) return 'день';\n  if (last >= 2 && last \u003C= 4) return 'дні';\n  return 'днів';\n}\n\nconst styles = StyleSheet.create({\n  flex: {\n    flex: 1,\n  },\n  content: {\n    flexGrow: 1,\n  },\n  multiline: {\n    minHeight: 110,\n  },\n  pickerWrap: {\n    borderWidth: 1,\n    overflow: 'hidden',\n  },\n});\n","src\u002Ffeatures\u002Ftrips\u002Fui\u002FCreateTripForm.tsx",[3521,26783,26784,26800,26806,26812,26818,26824,26830,26837,26843,26853,26876,26894,26912,26927,26941,26945,26951,26957,26965,26976,26993,27016,27033,27050,27066,27091,27095,27104,27125,27139,27143,27147,27160,27175,27204,27212,27216,27220,27251,27269,27293,27301,27305,27309,27313,27318,27323,27327,27338,27344,27350,27360,27382,27406,27410,27416,27423,27430,27437,27449,27464,27479,27486,27495,27504,27513,27522,27540,27549,27559,27568,27573,27592,27596,27606,27616,27620,27624,27643,27661,27665,27687,27698,27711,27735,27748,27760,27772,27797,27827,27839,27851,27863,27868,27879,27889,27893,27897,27903,27909,27925,27954,27983,27987,27993,28009,28019,28030,28065,28071,28081,28091,28099,28103,28131,28136,28141,28146,28154,28158,28167,28174,28188,28197,28231,28238,28247,28257,28270,28283,28296,28319,28329,28339,28352,28356,28362,28366,28370,28379,28385,28397,28406,28432,28439,28448,28458,28478,28483,28492,28498,28508,28519,28523,28535,28547,28560,28572,28585,28589,28595,28599,28606,28619,28632,28649,28671,28675,28695,28703,28716,28729,28742,28759,28764,28771,28779,28787,28792,28796,28802,28806,28810,28819,28825,28837,28846,28876,28883,28892,28904,28917,28929,28949,28953,28959,28963,28967,28973,28985,28994,29024,29030,29039,29051,29063,29075,29095,29108,29112,29118,29122,29126,29135,29141,29153,29162,29192,29198,29207,29216,29228,29240,29252,29272,29277,29291,29300,29317,29329,29339,29343,29349,29353,29357,29366,29372,29384,29393,29419,29425,29459,29468,29488,29492,29500,29507,29520,29533,29546,29559,29572,29589,29606,29623,29628,29632,29636,29642,29646,29674,29690,29712,29718,29727,29732,29742,29749,29762,29772,29799,29806,29816,29826,29847,29856,29864,29877,29890,29902,29916,29930,29938,29956,29974,29979,29984,29989,29996,30001,30006,30016,30023,30036,30046,30073,30080,30090,30100,30121,30130,30138,30151,30164,30176,30189,30202,30209,30227,30245,30263,30274,30279,30284,30289,30296,30301,30306,30316,30323,30336,30346,30373,30380,30390,30400,30422,30431,30438,30458,30471,30482,30495,30508,30515,30532,30549,30566,30575,30580,30585,30590,30597,30602,30607,30617,30656,30663,30686,30707,30721,30726,30738,30745,30755,30766,30779,30793,30798,30807,30816,30825,30834,30839,30844,30849,30871,30901,30920,30953,30976,31008,31017,31022,31027,31044,31051,31060,31065,31073,31083,31088,31096,31107,31112,31120,31129,31140,31145],{"__ignoreMap":3921},[3925,26785,26786,26788,26790,26792,26794,26796,26798],{"class":3927,"line":3928},[3925,26787,4505],{"class":4504},[3925,26789,4509],{"class":4508},[3925,26791,5552],{"class":4512},[3925,26793,4515],{"class":4508},[3925,26795,4518],{"class":4504},[3925,26797,8122],{"class":4521},[3925,26799,4525],{"class":4508},[3925,26801,26802,26804],{"class":3927,"line":3934},[3925,26803,4505],{"class":4504},[3925,26805,5617],{"class":4508},[3925,26807,26808,26810],{"class":3927,"line":3940},[3925,26809,10288],{"class":4512},[3925,26811,5051],{"class":4508},[3925,26813,26814,26816],{"class":3927,"line":3946},[3925,26815,10295],{"class":4512},[3925,26817,5051],{"class":4508},[3925,26819,26820,26822],{"class":3927,"line":3953},[3925,26821,17640],{"class":4512},[3925,26823,5051],{"class":4508},[3925,26825,26826,26828],{"class":3927,"line":3959},[3925,26827,8149],{"class":4512},[3925,26829,5051],{"class":4508},[3925,26831,26832,26835],{"class":3927,"line":3965},[3925,26833,26834],{"class":4512},"  Switch",[3925,26836,5051],{"class":4508},[3925,26838,26839,26841],{"class":3927,"line":3971},[3925,26840,8163],{"class":4512},[3925,26842,5051],{"class":4508},[3925,26844,26845,26847,26849,26851],{"class":3927,"line":3977},[3925,26846,8170],{"class":4508},[3925,26848,4518],{"class":4504},[3925,26850,8175],{"class":4521},[3925,26852,4525],{"class":4508},[3925,26854,26855,26857,26859,26862,26864,26867,26869,26871,26874],{"class":3927,"line":3983},[3925,26856,4505],{"class":4504},[3925,26858,4509],{"class":4508},[3925,26860,26861],{"class":4512},"Controller",[3925,26863,4191],{"class":4508},[3925,26865,26866],{"class":4512},"useForm",[3925,26868,4515],{"class":4508},[3925,26870,4518],{"class":4504},[3925,26872,26873],{"class":4521}," 'react-hook-form'",[3925,26875,4525],{"class":4508},[3925,26877,26878,26880,26882,26885,26887,26889,26892],{"class":3927,"line":3989},[3925,26879,4505],{"class":4504},[3925,26881,4509],{"class":4508},[3925,26883,26884],{"class":4512},"zodResolver",[3925,26886,4515],{"class":4508},[3925,26888,4518],{"class":4504},[3925,26890,26891],{"class":4521}," '@hookform\u002Fresolvers\u002Fzod'",[3925,26893,4525],{"class":4508},[3925,26895,26896,26898,26900,26903,26905,26907,26910],{"class":3927,"line":3995},[3925,26897,4505],{"class":4504},[3925,26899,4509],{"class":4508},[3925,26901,26902],{"class":4512},"Picker",[3925,26904,4515],{"class":4508},[3925,26906,4518],{"class":4504},[3925,26908,26909],{"class":4521}," '@react-native-picker\u002Fpicker'",[3925,26911,4525],{"class":4508},[3925,26913,26914,26916,26919,26922,26925],{"class":3927,"line":4001},[3925,26915,4505],{"class":4504},[3925,26917,26918],{"class":4512}," Checkbox",[3925,26920,26921],{"class":4504}," from",[3925,26923,26924],{"class":4521}," '@react-native-community\u002Fcheckbox'",[3925,26926,4525],{"class":4508},[3925,26928,26929,26931,26934,26936,26939],{"class":3927,"line":4007},[3925,26930,4505],{"class":4504},[3925,26932,26933],{"class":4512}," Slider",[3925,26935,26921],{"class":4504},[3925,26937,26938],{"class":4521}," '@react-native-community\u002Fslider'",[3925,26940,4525],{"class":4508},[3925,26942,26943],{"class":3927,"line":4013},[3925,26944,3950],{"emptyLinePlaceholder":3949},[3925,26946,26947,26949],{"class":3927,"line":4019},[3925,26948,4505],{"class":4504},[3925,26950,5617],{"class":4508},[3925,26952,26953,26955],{"class":3927,"line":4024},[3925,26954,23067],{"class":4512},[3925,26956,5051],{"class":4508},[3925,26958,26959,26961,26963],{"class":3927,"line":4030},[3925,26960,14608],{"class":4504},[3925,26962,23076],{"class":4512},[3925,26964,5051],{"class":4508},[3925,26966,26967,26969,26971,26974],{"class":3927,"line":4036},[3925,26968,8170],{"class":4508},[3925,26970,4518],{"class":4504},[3925,26972,26973],{"class":4521}," '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002FcreateTripSchema'",[3925,26975,4525],{"class":4508},[3925,26977,26978,26980,26982,26984,26986,26988,26991],{"class":3927,"line":4041},[3925,26979,4505],{"class":4504},[3925,26981,4509],{"class":4508},[3925,26983,23098],{"class":4512},[3925,26985,4515],{"class":4508},[3925,26987,4518],{"class":4504},[3925,26989,26990],{"class":4521}," '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002FformatTripDates'",[3925,26992,4525],{"class":4508},[3925,26994,26995,26997,26999,27001,27003,27005,27007,27009,27011,27014],{"class":3927,"line":4047},[3925,26996,4505],{"class":4504},[3925,26998,4509],{"class":4508},[3925,27000,22940],{"class":4512},[3925,27002,4191],{"class":4508},[3925,27004,6491],{"class":4504},[3925,27006,14620],{"class":4512},[3925,27008,4515],{"class":4508},[3925,27010,4518],{"class":4504},[3925,27012,27013],{"class":4521}," '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002Ftypes'",[3925,27015,4525],{"class":4508},[3925,27017,27018,27020,27022,27024,27026,27028,27031],{"class":3927,"line":4053},[3925,27019,4505],{"class":4504},[3925,27021,4509],{"class":4508},[3925,27023,23008],{"class":4512},[3925,27025,4515],{"class":4508},[3925,27027,4518],{"class":4504},[3925,27029,27030],{"class":4521}," '@\u002Ffeatures\u002Ftrips\u002Fui\u002FDateField'",[3925,27032,4525],{"class":4508},[3925,27034,27035,27037,27039,27041,27043,27045,27048],{"class":3927,"line":4059},[3925,27036,4505],{"class":4504},[3925,27038,4509],{"class":4508},[3925,27040,23026],{"class":4512},[3925,27042,4515],{"class":4508},[3925,27044,4518],{"class":4504},[3925,27046,27047],{"class":4521}," '@\u002Ffeatures\u002Ftrips\u002Fui\u002FFormRow'",[3925,27049,4525],{"class":4508},[3925,27051,27052,27054,27056,27058,27060,27062,27064],{"class":3927,"line":4065},[3925,27053,4505],{"class":4504},[3925,27055,4509],{"class":4508},[3925,27057,13148],{"class":4512},[3925,27059,4515],{"class":4508},[3925,27061,4518],{"class":4504},[3925,27063,13155],{"class":4521},[3925,27065,4525],{"class":4508},[3925,27067,27068,27070,27072,27074,27076,27078,27080,27083,27085,27087,27089],{"class":3927,"line":4070},[3925,27069,4505],{"class":4504},[3925,27071,4509],{"class":4508},[3925,27073,14664],{"class":4512},[3925,27075,4191],{"class":4508},[3925,27077,14669],{"class":4512},[3925,27079,4191],{"class":4508},[3925,27081,27082],{"class":4512},"TextField",[3925,27084,4515],{"class":4508},[3925,27086,4518],{"class":4504},[3925,27088,14681],{"class":4521},[3925,27090,4525],{"class":4508},[3925,27092,27093],{"class":3927,"line":4076},[3925,27094,3950],{"emptyLinePlaceholder":3949},[3925,27096,27097,27099,27102],{"class":3927,"line":4082},[3925,27098,6491],{"class":4540},[3925,27100,27101],{"class":4565}," CreateTripFormProps",[3925,27103,5198],{"class":4508},[3925,27105,27106,27109,27111,27113,27115,27117,27119,27121,27123],{"class":3927,"line":4088},[3925,27107,27108],{"class":4544},"  onSubmitSuccess",[3925,27110,24721],{"class":4508},[3925,27112,4711],{"class":4512},[3925,27114,4767],{"class":4508},[3925,27116,14935],{"class":4565},[3925,27118,6701],{"class":4508},[3925,27120,5614],{"class":4540},[3925,27122,6502],{"class":4565},[3925,27124,4525],{"class":4508},[3925,27126,27127,27130,27133,27135,27137],{"class":3927,"line":4093},[3925,27128,27129],{"class":4544},"  onCancel",[3925,27131,27132],{"class":4508},"?: () ",[3925,27134,5614],{"class":4540},[3925,27136,6502],{"class":4565},[3925,27138,4525],{"class":4508},[3925,27140,27141],{"class":3927,"line":4098},[3925,27142,5213],{"class":4508},[3925,27144,27145],{"class":3927,"line":6720},[3925,27146,3950],{"emptyLinePlaceholder":3949},[3925,27148,27149,27151,27154,27156,27158],{"class":3927,"line":6738},[3925,27150,6677],{"class":4540},[3925,27152,27153],{"class":4544}," startOfToday",[3925,27155,6730],{"class":4508},[3925,27157,6931],{"class":4565},[3925,27159,5617],{"class":4508},[3925,27161,27162,27164,27167,27169,27171,27173],{"class":3927,"line":6787},[3925,27163,6909],{"class":4540},[3925,27165,27166],{"class":5194}," d",[3925,27168,5967],{"class":4508},[3925,27170,6657],{"class":4540},[3925,27172,6566],{"class":4544},[3925,27174,7020],{"class":4508},[3925,27176,27177,27180,27182,27185,27187,27190,27192,27194,27196,27198,27200,27202],{"class":3927,"line":6792},[3925,27178,27179],{"class":4512},"  d",[3925,27181,3595],{"class":4508},[3925,27183,27184],{"class":4544},"setHours",[3925,27186,4702],{"class":4508},[3925,27188,27189],{"class":5990},"12",[3925,27191,4191],{"class":4508},[3925,27193,5991],{"class":5990},[3925,27195,4191],{"class":4508},[3925,27197,5991],{"class":5990},[3925,27199,4191],{"class":4508},[3925,27201,5991],{"class":5990},[3925,27203,4724],{"class":4508},[3925,27205,27206,27208,27210],{"class":3927,"line":6797},[3925,27207,4553],{"class":4504},[3925,27209,27166],{"class":4512},[3925,27211,4525],{"class":4508},[3925,27213,27214],{"class":3927,"line":6827},[3925,27215,4016],{"class":4508},[3925,27217,27218],{"class":3927,"line":6862},[3925,27219,3950],{"emptyLinePlaceholder":3949},[3925,27221,27222,27224,27227,27229,27232,27234,27236,27238,27241,27243,27245,27247,27249],{"class":3927,"line":6867},[3925,27223,6677],{"class":4540},[3925,27225,27226],{"class":4544}," addDays",[3925,27228,4702],{"class":4508},[3925,27230,27231],{"class":4512},"base",[3925,27233,4767],{"class":4508},[3925,27235,6931],{"class":4565},[3925,27237,4191],{"class":4508},[3925,27239,27240],{"class":4512},"days",[3925,27242,4767],{"class":4508},[3925,27244,6476],{"class":4565},[3925,27246,6815],{"class":4508},[3925,27248,6931],{"class":4565},[3925,27250,5617],{"class":4508},[3925,27252,27253,27255,27257,27259,27261,27263,27265,27267],{"class":3927,"line":6872},[3925,27254,6909],{"class":4540},[3925,27256,27166],{"class":5194},[3925,27258,5967],{"class":4508},[3925,27260,6657],{"class":4540},[3925,27262,6566],{"class":4544},[3925,27264,4702],{"class":4508},[3925,27266,27231],{"class":4512},[3925,27268,4724],{"class":4508},[3925,27270,27271,27273,27275,27278,27280,27282,27284,27286,27289,27291],{"class":3927,"line":6906},[3925,27272,27179],{"class":4512},[3925,27274,3595],{"class":4508},[3925,27276,27277],{"class":4544},"setDate",[3925,27279,4702],{"class":4508},[3925,27281,24117],{"class":4512},[3925,27283,3595],{"class":4508},[3925,27285,24142],{"class":4544},[3925,27287,27288],{"class":4508},"() + ",[3925,27290,27240],{"class":4512},[3925,27292,4724],{"class":4508},[3925,27294,27295,27297,27299],{"class":3927,"line":6921},[3925,27296,4553],{"class":4504},[3925,27298,27166],{"class":4512},[3925,27300,4525],{"class":4508},[3925,27302,27303],{"class":3927,"line":6941},[3925,27304,4016],{"class":4508},[3925,27306,27307],{"class":3927,"line":6962},[3925,27308,3950],{"emptyLinePlaceholder":3949},[3925,27310,27311],{"class":3927,"line":6977},[3925,27312,13166],{"class":4498},[3925,27314,27315],{"class":3927,"line":6990},[3925,27316,27317],{"class":4498}," * Форма «Нова поїздка»: усі основні form-контроли + RHF + Zod.\n",[3925,27319,27320],{"class":3927,"line":6996},[3925,27321,27322],{"class":4498}," * Не залежить від навігації — батько вирішує, куди піти після submit.\n",[3925,27324,27325],{"class":3927,"line":7014},[3925,27326,13196],{"class":4498},[3925,27328,27329,27331,27333,27336],{"class":3927,"line":7023},[3925,27330,4534],{"class":4504},[3925,27332,4541],{"class":4540},[3925,27334,27335],{"class":4544}," CreateTripForm",[3925,27337,9050],{"class":4508},[3925,27339,27340,27342],{"class":3927,"line":7032},[3925,27341,27108],{"class":4512},[3925,27343,5051],{"class":4508},[3925,27345,27346,27348],{"class":3927,"line":7037},[3925,27347,27129],{"class":4512},[3925,27349,5051],{"class":4508},[3925,27351,27352,27355,27358],{"class":3927,"line":7042},[3925,27353,27354],{"class":4508},"}: ",[3925,27356,27357],{"class":4565},"CreateTripFormProps",[3925,27359,6049],{"class":4508},[3925,27361,27362,27364,27366,27368,27370,27372,27374,27376,27378,27380],{"class":3927,"line":7070},[3925,27363,6909],{"class":4540},[3925,27365,4509],{"class":4508},[3925,27367,13240],{"class":5194},[3925,27369,4191],{"class":4508},[3925,27371,14837],{"class":5194},[3925,27373,4191],{"class":4508},[3925,27375,17960],{"class":5194},[3925,27377,5937],{"class":4508},[3925,27379,13148],{"class":4544},[3925,27381,7020],{"class":4508},[3925,27383,27384,27386,27388,27391,27393,27396,27398,27400,27402,27404],{"class":3927,"line":7086},[3925,27385,6909],{"class":4540},[3925,27387,8272],{"class":4508},[3925,27389,27390],{"class":5194},"submitting",[3925,27392,4191],{"class":4508},[3925,27394,27395],{"class":5194},"setSubmitting",[3925,27397,8282],{"class":4508},[3925,27399,5552],{"class":4544},[3925,27401,4702],{"class":4508},[3925,27403,10525],{"class":4540},[3925,27405,4724],{"class":4508},[3925,27407,27408],{"class":3927,"line":7097},[3925,27409,3950],{"emptyLinePlaceholder":3949},[3925,27411,27412,27414],{"class":3927,"line":7114},[3925,27413,6909],{"class":4540},[3925,27415,5617],{"class":4508},[3925,27417,27418,27421],{"class":3927,"line":7119},[3925,27419,27420],{"class":5194},"    control",[3925,27422,5051],{"class":4508},[3925,27424,27425,27428],{"class":3927,"line":9008},[3925,27426,27427],{"class":5194},"    handleSubmit",[3925,27429,5051],{"class":4508},[3925,27431,27432,27435],{"class":3927,"line":9017},[3925,27433,27434],{"class":5194},"    watch",[3925,27436,5051],{"class":4508},[3925,27438,27439,27442,27444,27447],{"class":3927,"line":9022},[3925,27440,27441],{"class":4512},"    formState",[3925,27443,14697],{"class":4508},[3925,27445,27446],{"class":5194},"errors",[3925,27448,5667],{"class":4508},[3925,27450,27451,27454,27456,27458,27461],{"class":3927,"line":9027},[3925,27452,27453],{"class":4508},"  } = ",[3925,27455,26866],{"class":4544},[3925,27457,5016],{"class":4508},[3925,27459,27460],{"class":4565},"CreateTripFormValues",[3925,27462,27463],{"class":4508},">({\n",[3925,27465,27466,27469,27472,27474,27477],{"class":3927,"line":9032},[3925,27467,27468],{"class":4512},"    resolver:",[3925,27470,27471],{"class":4544}," zodResolver",[3925,27473,4702],{"class":4508},[3925,27475,27476],{"class":4512},"createTripSchema",[3925,27478,5724],{"class":4508},[3925,27480,27481,27484],{"class":3927,"line":9053},[3925,27482,27483],{"class":4512},"    defaultValues:",[3925,27485,5617],{"class":4508},[3925,27487,27488,27491,27493],{"class":3927,"line":9075},[3925,27489,27490],{"class":4512},"      title:",[3925,27492,18690],{"class":4521},[3925,27494,5051],{"class":4508},[3925,27496,27497,27500,27502],{"class":3927,"line":9083},[3925,27498,27499],{"class":4512},"      region:",[3925,27501,25391],{"class":4521},[3925,27503,5051],{"class":4508},[3925,27505,27506,27509,27511],{"class":3927,"line":9094},[3925,27507,27508],{"class":4512},"      description:",[3925,27510,18690],{"class":4521},[3925,27512,5051],{"class":4508},[3925,27514,27515,27518,27520],{"class":3927,"line":9105},[3925,27516,27517],{"class":4512},"      startDate:",[3925,27519,27153],{"class":4544},[3925,27521,6974],{"class":4508},[3925,27523,27524,27527,27529,27531,27534,27536,27538],{"class":3927,"line":9115},[3925,27525,27526],{"class":4512},"      endDate:",[3925,27528,27226],{"class":4544},[3925,27530,4702],{"class":4508},[3925,27532,27533],{"class":4544},"startOfToday",[3925,27535,10853],{"class":4508},[3925,27537,8811],{"class":5990},[3925,27539,5724],{"class":4508},[3925,27541,27542,27545,27547],{"class":3927,"line":9125},[3925,27543,27544],{"class":4512},"      isPrivate:",[3925,27546,4604],{"class":4540},[3925,27548,5051],{"class":4508},[3925,27550,27551,27554,27557],{"class":3927,"line":9135},[3925,27552,27553],{"class":4512},"      plannedDays:",[3925,27555,27556],{"class":5990}," 3",[3925,27558,5051],{"class":4508},[3925,27560,27561,27564,27566],{"class":3927,"line":9140},[3925,27562,27563],{"class":4512},"      hasItinerary:",[3925,27565,4604],{"class":4540},[3925,27567,5051],{"class":4508},[3925,27569,27570],{"class":3927,"line":9168},[3925,27571,27572],{"class":4498},"      \u002F\u002F literal true — у default false, щоб користувач свідомо поставив галочку\n",[3925,27574,27575,27578,27580,27583,27586,27588,27590],{"class":3927,"line":9197},[3925,27576,27577],{"class":4512},"      acceptedLocalSave:",[3925,27579,4604],{"class":4540},[3925,27581,27582],{"class":4504}," as",[3925,27584,27585],{"class":4565}," unknown",[3925,27587,27582],{"class":4504},[3925,27589,13463],{"class":4565},[3925,27591,5051],{"class":4508},[3925,27593,27594],{"class":3927,"line":9226},[3925,27595,5729],{"class":4508},[3925,27597,27598,27601,27604],{"class":3927,"line":9234},[3925,27599,27600],{"class":4512},"    mode:",[3925,27602,27603],{"class":4521}," 'onSubmit'",[3925,27605,5051],{"class":4508},[3925,27607,27608,27611,27614],{"class":3927,"line":9245},[3925,27609,27610],{"class":4512},"    reValidateMode:",[3925,27612,27613],{"class":4521}," 'onChange'",[3925,27615,5051],{"class":4508},[3925,27617,27618],{"class":3927,"line":9255},[3925,27619,10724],{"class":4508},[3925,27621,27622],{"class":3927,"line":9265},[3925,27623,3950],{"emptyLinePlaceholder":3949},[3925,27625,27626,27628,27631,27633,27636,27638,27641],{"class":3927,"line":9275},[3925,27627,6909],{"class":4540},[3925,27629,27630],{"class":5194}," startDate",[3925,27632,5967],{"class":4508},[3925,27634,27635],{"class":4544},"watch",[3925,27637,4702],{"class":4508},[3925,27639,27640],{"class":4521},"'startDate'",[3925,27642,4724],{"class":4508},[3925,27644,27645,27647,27650,27652,27654,27656,27659],{"class":3927,"line":9286},[3925,27646,6909],{"class":4540},[3925,27648,27649],{"class":5194}," plannedDays",[3925,27651,5967],{"class":4508},[3925,27653,27635],{"class":4544},[3925,27655,4702],{"class":4508},[3925,27657,27658],{"class":4521},"'plannedDays'",[3925,27660,4724],{"class":4508},[3925,27662,27663],{"class":3927,"line":9291},[3925,27664,3950],{"emptyLinePlaceholder":3949},[3925,27666,27667,27669,27672,27674,27677,27679,27681,27683,27685],{"class":3927,"line":9319},[3925,27668,6909],{"class":4540},[3925,27670,27671],{"class":4544}," onValid",[3925,27673,23407],{"class":4508},[3925,27675,27676],{"class":4512},"values",[3925,27678,4767],{"class":4508},[3925,27680,27460],{"class":4565},[3925,27682,6701],{"class":4508},[3925,27684,5614],{"class":4540},[3925,27686,5617],{"class":4508},[3925,27688,27689,27692,27694,27696],{"class":3927,"line":9346},[3925,27690,27691],{"class":4544},"    setSubmitting",[3925,27693,4702],{"class":4508},[3925,27695,10823],{"class":4540},[3925,27697,4724],{"class":4508},[3925,27699,27700,27703,27705,27707,27709],{"class":3927,"line":9354},[3925,27701,27702],{"class":4540},"    const",[3925,27704,6013],{"class":5194},[3925,27706,4767],{"class":4508},[3925,27708,14935],{"class":4565},[3925,27710,5198],{"class":4508},[3925,27712,27713,27716,27719,27721,27723,27725,27727,27729,27731,27733],{"class":3927,"line":9363},[3925,27714,27715],{"class":4512},"      id:",[3925,27717,27718],{"class":4521}," `local-",[3925,27720,4708],{"class":4540},[3925,27722,6931],{"class":4512},[3925,27724,3595],{"class":4597},[3925,27726,6571],{"class":4544},[3925,27728,9801],{"class":4597},[3925,27730,4610],{"class":4540},[3925,27732,4721],{"class":4521},[3925,27734,5051],{"class":4508},[3925,27736,27737,27739,27742,27744,27746],{"class":3927,"line":9373},[3925,27738,27490],{"class":4512},[3925,27740,27741],{"class":4512}," values",[3925,27743,3595],{"class":4508},[3925,27745,6884],{"class":4512},[3925,27747,5051],{"class":4508},[3925,27749,27750,27752,27754,27756,27758],{"class":3927,"line":9383},[3925,27751,27499],{"class":4512},[3925,27753,27741],{"class":4512},[3925,27755,3595],{"class":4508},[3925,27757,18647],{"class":4512},[3925,27759,5051],{"class":4508},[3925,27761,27762,27764,27766,27768,27770],{"class":3927,"line":9388},[3925,27763,27508],{"class":4512},[3925,27765,27741],{"class":4512},[3925,27767,3595],{"class":4508},[3925,27769,18927],{"class":4512},[3925,27771,5051],{"class":4508},[3925,27773,27774,27777,27779,27781,27783,27785,27787,27789,27791,27793,27795],{"class":3927,"line":9396},[3925,27775,27776],{"class":4512},"      dateLabel:",[3925,27778,24205],{"class":4544},[3925,27780,4702],{"class":4508},[3925,27782,27676],{"class":4512},[3925,27784,3595],{"class":4508},[3925,27786,23929],{"class":4512},[3925,27788,4191],{"class":4508},[3925,27790,27676],{"class":4512},[3925,27792,3595],{"class":4508},[3925,27794,23914],{"class":4512},[3925,27796,5724],{"class":4508},[3925,27798,27799,27802,27805,27807,27810,27812,27814,27816,27818,27820,27822,27825],{"class":3927,"line":9405},[3925,27800,27801],{"class":4512},"      coverUri:",[3925,27803,27804],{"class":4521}," `https:\u002F\u002Fpicsum.photos\u002Fseed\u002F",[3925,27806,4708],{"class":4540},[3925,27808,27809],{"class":4544},"encodeURIComponent",[3925,27811,4702],{"class":4597},[3925,27813,27676],{"class":4512},[3925,27815,3595],{"class":4597},[3925,27817,6884],{"class":4512},[3925,27819,4251],{"class":4597},[3925,27821,4610],{"class":4540},[3925,27823,27824],{"class":4521},"\u002F800\u002F400`",[3925,27826,5051],{"class":4508},[3925,27828,27829,27831,27833,27835,27837],{"class":3927,"line":9415},[3925,27830,27544],{"class":4512},[3925,27832,27741],{"class":4512},[3925,27834,3595],{"class":4508},[3925,27836,18752],{"class":4512},[3925,27838,5051],{"class":4508},[3925,27840,27841,27843,27845,27847,27849],{"class":3927,"line":9424},[3925,27842,27553],{"class":4512},[3925,27844,27741],{"class":4512},[3925,27846,3595],{"class":4508},[3925,27848,18677],{"class":4512},[3925,27850,5051],{"class":4508},[3925,27852,27853,27855,27857,27859,27861],{"class":3927,"line":9435},[3925,27854,27563],{"class":4512},[3925,27856,27741],{"class":4512},[3925,27858,3595],{"class":4508},[3925,27860,18817],{"class":4512},[3925,27862,5051],{"class":4508},[3925,27864,27865],{"class":3927,"line":9440},[3925,27866,27867],{"class":4508},"    };\n",[3925,27869,27870,27873,27875,27877],{"class":3927,"line":9460},[3925,27871,27872],{"class":4544},"    onSubmitSuccess",[3925,27874,4702],{"class":4508},[3925,27876,4711],{"class":4512},[3925,27878,4724],{"class":4508},[3925,27880,27881,27883,27885,27887],{"class":3927,"line":11409},[3925,27882,27691],{"class":4544},[3925,27884,4702],{"class":4508},[3925,27886,10525],{"class":4540},[3925,27888,4724],{"class":4508},[3925,27890,27891],{"class":3927,"line":11418},[3925,27892,6993],{"class":4508},[3925,27894,27895],{"class":3927,"line":11427},[3925,27896,3950],{"emptyLinePlaceholder":3949},[3925,27898,27899,27901],{"class":3927,"line":11437},[3925,27900,4553],{"class":4504},[3925,27902,4556],{"class":4508},[3925,27904,27905,27907],{"class":3927,"line":11446},[3925,27906,4562],{"class":4561},[3925,27908,10878],{"class":4565},[3925,27910,27911,27913,27915,27917,27919,27921,27923],{"class":3927,"line":11457},[3925,27912,10883],{"class":4579},[3925,27914,4583],{"class":4508},[3925,27916,4594],{"class":4540},[3925,27918,8365],{"class":4512},[3925,27920,3595],{"class":4597},[3925,27922,10894],{"class":4512},[3925,27924,4016],{"class":4540},[3925,27926,27927,27929,27931,27933,27935,27937,27939,27941,27943,27945,27947,27949,27952],{"class":3927,"line":11462},[3925,27928,10901],{"class":4579},[3925,27930,4583],{"class":4508},[3925,27932,4594],{"class":4540},[3925,27934,10908],{"class":4512},[3925,27936,3595],{"class":4597},[3925,27938,10913],{"class":5194},[3925,27940,10916],{"class":4508},[3925,27942,10919],{"class":4521},[3925,27944,10922],{"class":4508},[3925,27946,10925],{"class":4521},[3925,27948,10928],{"class":4508},[3925,27950,27951],{"class":4521}," 'height'",[3925,27953,4016],{"class":4540},[3925,27955,27956,27959,27961,27963,27965,27967,27969,27971,27973,27975,27977,27979,27981],{"class":3927,"line":11470},[3925,27957,27958],{"class":4579},"      keyboardVerticalOffset",[3925,27960,4583],{"class":4508},[3925,27962,4594],{"class":4540},[3925,27964,10908],{"class":4512},[3925,27966,3595],{"class":4597},[3925,27968,10913],{"class":5194},[3925,27970,10916],{"class":4508},[3925,27972,10919],{"class":4521},[3925,27974,10922],{"class":4508},[3925,27976,9100],{"class":5990},[3925,27978,10928],{"class":4508},[3925,27980,15345],{"class":5990},[3925,27982,4016],{"class":4540},[3925,27984,27985],{"class":3927,"line":11479},[3925,27986,7632],{"class":4561},[3925,27988,27989,27991],{"class":3927,"line":11488},[3925,27990,4573],{"class":4561},[3925,27992,18391],{"class":4565},[3925,27994,27995,27997,27999,28001,28003,28005,28007],{"class":3927,"line":11497},[3925,27996,15847],{"class":4579},[3925,27998,4583],{"class":4508},[3925,28000,4594],{"class":4540},[3925,28002,8365],{"class":4512},[3925,28004,3595],{"class":4597},[3925,28006,10894],{"class":4512},[3925,28008,4016],{"class":4540},[3925,28010,28011,28013,28015,28017],{"class":3927,"line":11506},[3925,28012,8561],{"class":4579},[3925,28014,4583],{"class":4508},[3925,28016,4594],{"class":4540},[3925,28018,15693],{"class":4597},[3925,28020,28021,28023,28025,28028],{"class":3927,"line":11515},[3925,28022,15943],{"class":4512},[3925,28024,3595],{"class":4597},[3925,28026,28027],{"class":4512},"content",[3925,28029,5051],{"class":4597},[3925,28031,28032,28035,28037,28039,28041,28043,28045,28047,28049,28051,28053,28055,28057,28059,28061,28063],{"class":3927,"line":11524},[3925,28033,28034],{"class":4597},"          { ",[3925,28036,9205],{"class":4512},[3925,28038,15307],{"class":4512},[3925,28040,3595],{"class":4597},[3925,28042,15312],{"class":4512},[3925,28044,4191],{"class":4597},[3925,28046,11369],{"class":4512},[3925,28048,15307],{"class":4512},[3925,28050,3595],{"class":4597},[3925,28052,15312],{"class":4512},[3925,28054,4191],{"class":4597},[3925,28056,9212],{"class":4512},[3925,28058,15307],{"class":4512},[3925,28060,3595],{"class":4597},[3925,28062,15734],{"class":4512},[3925,28064,5667],{"class":4597},[3925,28066,28067,28069],{"class":3927,"line":11533},[3925,28068,16038],{"class":4597},[3925,28070,4016],{"class":4540},[3925,28072,28073,28076,28078],{"class":3927,"line":11542},[3925,28074,28075],{"class":4579},"        keyboardShouldPersistTaps",[3925,28077,4583],{"class":4508},[3925,28079,28080],{"class":4521},"\"handled\"\n",[3925,28082,28083,28086,28088],{"class":3927,"line":11547},[3925,28084,28085],{"class":4579},"        keyboardDismissMode",[3925,28087,4583],{"class":4508},[3925,28089,28090],{"class":4521},"\"on-drag\"\n",[3925,28092,28093,28095,28097],{"class":3927,"line":11563},[3925,28094,18425],{"class":4579},[3925,28096,4583],{"class":4508},[3925,28098,15527],{"class":4540},[3925,28100,28101],{"class":3927,"line":11570},[3925,28102,7330],{"class":4561},[3925,28104,28105,28107,28109,28111,28113,28115,28117,28119,28121,28123,28125,28127,28129],{"class":3927,"line":11580},[3925,28106,7335],{"class":4561},[3925,28108,14664],{"class":4565},[3925,28110,15773],{"class":4579},[3925,28112,4583],{"class":4508},[3925,28114,16084],{"class":4521},[3925,28116,7720],{"class":4579},[3925,28118,4583],{"class":4508},[3925,28120,4594],{"class":4540},[3925,28122,13240],{"class":4512},[3925,28124,3595],{"class":4597},[3925,28126,13752],{"class":4512},[3925,28128,4610],{"class":4540},[3925,28130,4568],{"class":4561},[3925,28132,28133],{"class":3927,"line":11589},[3925,28134,28135],{"class":4508},"          Заповніть поля. Помилки з’являться після натискання «Створити», якщо\n",[3925,28137,28138],{"class":3927,"line":11598},[3925,28139,28140],{"class":4508},"          щось не так. Тут зібрані різні типи контролів: текст, список, дати,\n",[3925,28142,28143],{"class":3927,"line":11607},[3925,28144,28145],{"class":4508},"          перемикач, галочка, повзунок.\n",[3925,28147,28148,28150,28152],{"class":3927,"line":11616},[3925,28149,8493],{"class":4561},[3925,28151,14664],{"class":4565},[3925,28153,4568],{"class":4561},[3925,28155,28156],{"class":3927,"line":11621},[3925,28157,3950],{"emptyLinePlaceholder":3949},[3925,28159,28160,28162,28165],{"class":3927,"line":11640},[3925,28161,19510],{"class":4540},[3925,28163,28164],{"class":4498},"\u002F* ——— TextInput ——— *\u002F",[3925,28166,4016],{"class":4540},[3925,28168,28169,28171],{"class":3927,"line":15952},[3925,28170,7335],{"class":4561},[3925,28172,28173],{"class":4565},"Controller\n",[3925,28175,28176,28179,28181,28183,28186],{"class":3927,"line":15958},[3925,28177,28178],{"class":4579},"          control",[3925,28180,4583],{"class":4508},[3925,28182,4594],{"class":4540},[3925,28184,28185],{"class":4512},"control",[3925,28187,4016],{"class":4540},[3925,28189,28190,28192,28194],{"class":3927,"line":15972},[3925,28191,7373],{"class":4579},[3925,28193,4583],{"class":4508},[3925,28195,28196],{"class":4521},"\"title\"\n",[3925,28198,28199,28202,28204,28206,28208,28210,28212,28215,28217,28220,28222,28224,28227,28229],{"class":3927,"line":15986},[3925,28200,28201],{"class":4579},"          render",[3925,28203,4583],{"class":4508},[3925,28205,4594],{"class":4540},[3925,28207,8674],{"class":4597},[3925,28209,4760],{"class":4512},[3925,28211,14697],{"class":4597},[3925,28213,28214],{"class":4512},"onChange",[3925,28216,4191],{"class":4597},[3925,28218,28219],{"class":4512},"onBlur",[3925,28221,4191],{"class":4597},[3925,28223,25164],{"class":4512},[3925,28225,28226],{"class":4597}," } }) ",[3925,28228,5614],{"class":4540},[3925,28230,4556],{"class":4597},[3925,28232,28233,28235],{"class":3927,"line":16000},[3925,28234,7697],{"class":4561},[3925,28236,28237],{"class":4565},"TextField\n",[3925,28239,28240,28242,28244],{"class":3927,"line":16015},[3925,28241,19178],{"class":4579},[3925,28243,4583],{"class":4508},[3925,28245,28246],{"class":4521},"\"Назва поїздки\"\n",[3925,28248,28249,28252,28254],{"class":3927,"line":16029},[3925,28250,28251],{"class":4579},"              placeholder",[3925,28253,4583],{"class":4508},[3925,28255,28256],{"class":4521},"\"Наприклад, Карпати на вихідні\"\n",[3925,28258,28259,28262,28264,28266,28268],{"class":3927,"line":16035},[3925,28260,28261],{"class":4579},"              value",[3925,28263,4583],{"class":4508},[3925,28265,4594],{"class":4540},[3925,28267,25164],{"class":4512},[3925,28269,4016],{"class":4540},[3925,28271,28272,28275,28277,28279,28281],{"class":3927,"line":16043},[3925,28273,28274],{"class":4579},"              onChangeText",[3925,28276,4583],{"class":4508},[3925,28278,4594],{"class":4540},[3925,28280,28214],{"class":4512},[3925,28282,4016],{"class":4540},[3925,28284,28285,28288,28290,28292,28294],{"class":3927,"line":16048},[3925,28286,28287],{"class":4579},"              onBlur",[3925,28289,4583],{"class":4508},[3925,28291,4594],{"class":4540},[3925,28293,28219],{"class":4512},[3925,28295,4016],{"class":4540},[3925,28297,28298,28301,28303,28305,28307,28309,28311,28314,28317],{"class":3927,"line":16073},[3925,28299,28300],{"class":4579},"              error",[3925,28302,4583],{"class":4508},[3925,28304,4594],{"class":4540},[3925,28306,27446],{"class":4512},[3925,28308,3595],{"class":4597},[3925,28310,6884],{"class":4512},[3925,28312,28313],{"class":4597},"?.",[3925,28315,28316],{"class":4512},"message",[3925,28318,4016],{"class":4540},[3925,28320,28321,28324,28326],{"class":3927,"line":16109},[3925,28322,28323],{"class":4579},"              autoCapitalize",[3925,28325,4583],{"class":4508},[3925,28327,28328],{"class":4521},"\"sentences\"\n",[3925,28330,28331,28334,28336],{"class":3927,"line":16135},[3925,28332,28333],{"class":4579},"              returnKeyType",[3925,28335,4583],{"class":4508},[3925,28337,28338],{"class":4521},"\"next\"\n",[3925,28340,28341,28344,28346,28348,28350],{"class":3927,"line":16144},[3925,28342,28343],{"class":4579},"              maxLength",[3925,28345,4583],{"class":4508},[3925,28347,4594],{"class":4540},[3925,28349,23600],{"class":5990},[3925,28351,4016],{"class":4540},[3925,28353,28354],{"class":3927,"line":16151},[3925,28355,7847],{"class":4561},[3925,28357,28358,28360],{"class":3927,"line":16161},[3925,28359,19123],{"class":4597},[3925,28361,4016],{"class":4540},[3925,28363,28364],{"class":3927,"line":16172},[3925,28365,7429],{"class":4561},[3925,28367,28368],{"class":3927,"line":16186},[3925,28369,3950],{"emptyLinePlaceholder":3949},[3925,28371,28372,28374,28377],{"class":3927,"line":16200},[3925,28373,19510],{"class":4540},[3925,28375,28376],{"class":4498},"\u002F* ——— Picker ——— *\u002F",[3925,28378,4016],{"class":4540},[3925,28380,28381,28383],{"class":3927,"line":16210},[3925,28382,7335],{"class":4561},[3925,28384,28173],{"class":4565},[3925,28386,28387,28389,28391,28393,28395],{"class":3927,"line":16217},[3925,28388,28178],{"class":4579},[3925,28390,4583],{"class":4508},[3925,28392,4594],{"class":4540},[3925,28394,28185],{"class":4512},[3925,28396,4016],{"class":4540},[3925,28398,28399,28401,28403],{"class":3927,"line":16222},[3925,28400,7373],{"class":4579},[3925,28402,4583],{"class":4508},[3925,28404,28405],{"class":4521},"\"region\"\n",[3925,28407,28408,28410,28412,28414,28416,28418,28420,28422,28424,28426,28428,28430],{"class":3927,"line":16239},[3925,28409,28201],{"class":4579},[3925,28411,4583],{"class":4508},[3925,28413,4594],{"class":4540},[3925,28415,8674],{"class":4597},[3925,28417,4760],{"class":4512},[3925,28419,14697],{"class":4597},[3925,28421,28214],{"class":4512},[3925,28423,4191],{"class":4597},[3925,28425,25164],{"class":4512},[3925,28427,28226],{"class":4597},[3925,28429,5614],{"class":4540},[3925,28431,4556],{"class":4597},[3925,28433,28434,28436],{"class":3927,"line":16274},[3925,28435,7697],{"class":4561},[3925,28437,28438],{"class":4565},"FormRow\n",[3925,28440,28441,28443,28445],{"class":3927,"line":16285},[3925,28442,19178],{"class":4579},[3925,28444,4583],{"class":4508},[3925,28446,28447],{"class":4521},"\"Регіон\"\n",[3925,28449,28450,28453,28455],{"class":3927,"line":16294},[3925,28451,28452],{"class":4579},"              description",[3925,28454,4583],{"class":4508},[3925,28456,28457],{"class":4521},"\"Оберіть зі списку (Picker), а не вводьте вручну\"\n",[3925,28459,28460,28462,28464,28466,28468,28470,28472,28474,28476],{"class":3927,"line":16299},[3925,28461,28300],{"class":4579},[3925,28463,4583],{"class":4508},[3925,28465,4594],{"class":4540},[3925,28467,27446],{"class":4512},[3925,28469,3595],{"class":4597},[3925,28471,18647],{"class":4512},[3925,28473,28313],{"class":4597},[3925,28475,28316],{"class":4512},[3925,28477,4016],{"class":4540},[3925,28479,28480],{"class":3927,"line":16349},[3925,28481,28482],{"class":4579},"              stacked\n",[3925,28484,28485,28488,28490],{"class":3927,"line":16372},[3925,28486,28487],{"class":4579},"              control",[3925,28489,4583],{"class":4508},[3925,28491,5040],{"class":4540},[3925,28493,28494,28496],{"class":3927,"line":16398},[3925,28495,16614],{"class":4561},[3925,28497,15682],{"class":4565},[3925,28499,28500,28502,28504,28506],{"class":3927,"line":16406},[3925,28501,16664],{"class":4579},[3925,28503,4583],{"class":4508},[3925,28505,4594],{"class":4540},[3925,28507,15693],{"class":4597},[3925,28509,28510,28512,28514,28517],{"class":3927,"line":16413},[3925,28511,21673],{"class":4512},[3925,28513,3595],{"class":4597},[3925,28515,28516],{"class":4512},"pickerWrap",[3925,28518,5051],{"class":4597},[3925,28520,28521],{"class":3927,"line":16431},[3925,28522,21684],{"class":4597},[3925,28524,28525,28527,28530,28532],{"class":3927,"line":16460},[3925,28526,21714],{"class":4512},[3925,28528,28529],{"class":4512}," errors",[3925,28531,3595],{"class":4597},[3925,28533,28534],{"class":4512},"region\n",[3925,28536,28537,28540,28542,28544],{"class":3927,"line":16472},[3925,28538,28539],{"class":4508},"                        ?",[3925,28541,13324],{"class":4512},[3925,28543,3595],{"class":4597},[3925,28545,28546],{"class":4512},"danger\n",[3925,28548,28549,28552,28554,28556,28558],{"class":3927,"line":16485},[3925,28550,28551],{"class":4508},"                        :",[3925,28553,13324],{"class":4512},[3925,28555,3595],{"class":4597},[3925,28557,13783],{"class":4512},[3925,28559,5051],{"class":4597},[3925,28561,28562,28564,28566,28568,28570],{"class":3927,"line":16491},[3925,28563,21689],{"class":4512},[3925,28565,13324],{"class":4512},[3925,28567,3595],{"class":4597},[3925,28569,16513],{"class":4512},[3925,28571,5051],{"class":4597},[3925,28573,28574,28577,28579,28581,28583],{"class":3927,"line":16518},[3925,28575,28576],{"class":4512},"                      borderRadius:",[3925,28578,19404],{"class":4512},[3925,28580,3595],{"class":4597},[3925,28582,15312],{"class":4512},[3925,28584,5051],{"class":4597},[3925,28586,28587],{"class":3927,"line":16532},[3925,28588,21727],{"class":4597},[3925,28590,28591,28593],{"class":3927,"line":16538},[3925,28592,21732],{"class":4597},[3925,28594,4016],{"class":4540},[3925,28596,28597],{"class":3927,"line":16546},[3925,28598,16683],{"class":4561},[3925,28600,28601,28603],{"class":3927,"line":16557},[3925,28602,21796],{"class":4561},[3925,28604,28605],{"class":4565},"Picker\n",[3925,28607,28608,28611,28613,28615,28617],{"class":3927,"line":16578},[3925,28609,28610],{"class":4579},"                    selectedValue",[3925,28612,4583],{"class":4508},[3925,28614,4594],{"class":4540},[3925,28616,25164],{"class":4512},[3925,28618,4016],{"class":4540},[3925,28620,28621,28624,28626,28628,28630],{"class":3927,"line":16605},[3925,28622,28623],{"class":4579},"                    onValueChange",[3925,28625,4583],{"class":4508},[3925,28627,4594],{"class":4540},[3925,28629,28214],{"class":4512},[3925,28631,4016],{"class":4540},[3925,28633,28634,28637,28639,28641,28643,28645,28647],{"class":3927,"line":16611},[3925,28635,28636],{"class":4579},"                    dropdownIconColor",[3925,28638,4583],{"class":4508},[3925,28640,4594],{"class":4540},[3925,28642,13240],{"class":4512},[3925,28644,3595],{"class":4597},[3925,28646,4355],{"class":4512},[3925,28648,4016],{"class":4540},[3925,28650,28651,28653,28655,28657,28659,28661,28663,28665,28667,28669],{"class":3927,"line":16619},[3925,28652,21841],{"class":4579},[3925,28654,4583],{"class":4508},[3925,28656,4594],{"class":4540},[3925,28658,4598],{"class":4597},[3925,28660,7292],{"class":4512},[3925,28662,13324],{"class":4512},[3925,28664,3595],{"class":4597},[3925,28666,4355],{"class":4512},[3925,28668,4607],{"class":4597},[3925,28670,4016],{"class":4540},[3925,28672,28673],{"class":3927,"line":16629},[3925,28674,21858],{"class":4561},[3925,28676,28677,28679,28681,28683,28685,28687,28689,28691,28693],{"class":3927,"line":16661},[3925,28678,21863],{"class":4540},[3925,28680,22940],{"class":5194},[3925,28682,3595],{"class":4597},[3925,28684,16359],{"class":4544},[3925,28686,6695],{"class":4597},[3925,28688,18647],{"class":4512},[3925,28690,6701],{"class":4597},[3925,28692,5614],{"class":4540},[3925,28694,4556],{"class":4597},[3925,28696,28697,28700],{"class":3927,"line":16680},[3925,28698,28699],{"class":4561},"                      \u003C",[3925,28701,28702],{"class":4565},"Picker.Item\n",[3925,28704,28705,28708,28710,28712,28714],{"class":3927,"line":16686},[3925,28706,28707],{"class":4579},"                        key",[3925,28709,4583],{"class":4508},[3925,28711,4594],{"class":4540},[3925,28713,18647],{"class":4512},[3925,28715,4016],{"class":4540},[3925,28717,28718,28721,28723,28725,28727],{"class":3927,"line":16700},[3925,28719,28720],{"class":4579},"                        label",[3925,28722,4583],{"class":4508},[3925,28724,4594],{"class":4540},[3925,28726,18647],{"class":4512},[3925,28728,4016],{"class":4540},[3925,28730,28731,28734,28736,28738,28740],{"class":3927,"line":16710},[3925,28732,28733],{"class":4579},"                        value",[3925,28735,4583],{"class":4508},[3925,28737,4594],{"class":4540},[3925,28739,18647],{"class":4512},[3925,28741,4016],{"class":4540},[3925,28743,28744,28747,28749,28751,28753,28755,28757],{"class":3927,"line":16719},[3925,28745,28746],{"class":4579},"                        color",[3925,28748,4583],{"class":4508},[3925,28750,4594],{"class":4540},[3925,28752,13240],{"class":4512},[3925,28754,3595],{"class":4597},[3925,28756,4355],{"class":4512},[3925,28758,4016],{"class":4540},[3925,28760,28761],{"class":3927,"line":16725},[3925,28762,28763],{"class":4561},"                      \u002F>\n",[3925,28765,28766,28769],{"class":3927,"line":16733},[3925,28767,28768],{"class":4597},"                    ))",[3925,28770,4016],{"class":4540},[3925,28772,28773,28775,28777],{"class":3927,"line":16742},[3925,28774,21876],{"class":4561},[3925,28776,26902],{"class":4565},[3925,28778,4568],{"class":4561},[3925,28780,28781,28783,28785],{"class":3927,"line":16751},[3925,28782,16703],{"class":4561},[3925,28784,8398],{"class":4565},[3925,28786,4568],{"class":4561},[3925,28788,28789],{"class":3927,"line":16756},[3925,28790,28791],{"class":4540},"              }\n",[3925,28793,28794],{"class":3927,"line":16780},[3925,28795,7847],{"class":4561},[3925,28797,28798,28800],{"class":3927,"line":16788},[3925,28799,19123],{"class":4597},[3925,28801,4016],{"class":4540},[3925,28803,28804],{"class":3927,"line":16802},[3925,28805,7429],{"class":4561},[3925,28807,28808],{"class":3927,"line":16817},[3925,28809,3950],{"emptyLinePlaceholder":3949},[3925,28811,28812,28814,28817],{"class":3927,"line":16832},[3925,28813,19510],{"class":4540},[3925,28815,28816],{"class":4498},"\u002F* ——— DateTimePicker через DateField ——— *\u002F",[3925,28818,4016],{"class":4540},[3925,28820,28821,28823],{"class":3927,"line":16847},[3925,28822,7335],{"class":4561},[3925,28824,28173],{"class":4565},[3925,28826,28827,28829,28831,28833,28835],{"class":3927,"line":16862},[3925,28828,28178],{"class":4579},[3925,28830,4583],{"class":4508},[3925,28832,4594],{"class":4540},[3925,28834,28185],{"class":4512},[3925,28836,4016],{"class":4540},[3925,28838,28839,28841,28843],{"class":3927,"line":16874},[3925,28840,7373],{"class":4579},[3925,28842,4583],{"class":4508},[3925,28844,28845],{"class":4521},"\"startDate\"\n",[3925,28847,28848,28850,28852,28854,28856,28858,28860,28862,28864,28866,28868,28870,28872,28874],{"class":3927,"line":16887},[3925,28849,28201],{"class":4579},[3925,28851,4583],{"class":4508},[3925,28853,4594],{"class":4540},[3925,28855,8674],{"class":4597},[3925,28857,4760],{"class":4512},[3925,28859,14697],{"class":4597},[3925,28861,28214],{"class":4512},[3925,28863,4191],{"class":4597},[3925,28865,28219],{"class":4512},[3925,28867,4191],{"class":4597},[3925,28869,25164],{"class":4512},[3925,28871,28226],{"class":4597},[3925,28873,5614],{"class":4540},[3925,28875,4556],{"class":4597},[3925,28877,28878,28880],{"class":3927,"line":16900},[3925,28879,7697],{"class":4561},[3925,28881,28882],{"class":4565},"DateField\n",[3925,28884,28885,28887,28889],{"class":3927,"line":16913},[3925,28886,19178],{"class":4579},[3925,28888,4583],{"class":4508},[3925,28890,28891],{"class":4521},"\"Дата початку\"\n",[3925,28893,28894,28896,28898,28900,28902],{"class":3927,"line":16920},[3925,28895,28261],{"class":4579},[3925,28897,4583],{"class":4508},[3925,28899,4594],{"class":4540},[3925,28901,25164],{"class":4512},[3925,28903,4016],{"class":4540},[3925,28905,28906,28909,28911,28913,28915],{"class":3927,"line":16962},[3925,28907,28908],{"class":4579},"              onChange",[3925,28910,4583],{"class":4508},[3925,28912,4594],{"class":4540},[3925,28914,28214],{"class":4512},[3925,28916,4016],{"class":4540},[3925,28918,28919,28921,28923,28925,28927],{"class":3927,"line":16972},[3925,28920,28287],{"class":4579},[3925,28922,4583],{"class":4508},[3925,28924,4594],{"class":4540},[3925,28926,28219],{"class":4512},[3925,28928,4016],{"class":4540},[3925,28930,28931,28933,28935,28937,28939,28941,28943,28945,28947],{"class":3927,"line":16980},[3925,28932,28300],{"class":4579},[3925,28934,4583],{"class":4508},[3925,28936,4594],{"class":4540},[3925,28938,27446],{"class":4512},[3925,28940,3595],{"class":4597},[3925,28942,23929],{"class":4512},[3925,28944,28313],{"class":4597},[3925,28946,28316],{"class":4512},[3925,28948,4016],{"class":4540},[3925,28950,28951],{"class":3927,"line":16994},[3925,28952,7847],{"class":4561},[3925,28954,28955,28957],{"class":3927,"line":17009},[3925,28956,19123],{"class":4597},[3925,28958,4016],{"class":4540},[3925,28960,28961],{"class":3927,"line":17027},[3925,28962,7429],{"class":4561},[3925,28964,28965],{"class":3927,"line":17049},[3925,28966,3950],{"emptyLinePlaceholder":3949},[3925,28968,28969,28971],{"class":3927,"line":17054},[3925,28970,7335],{"class":4561},[3925,28972,28173],{"class":4565},[3925,28974,28975,28977,28979,28981,28983],{"class":3927,"line":17060},[3925,28976,28178],{"class":4579},[3925,28978,4583],{"class":4508},[3925,28980,4594],{"class":4540},[3925,28982,28185],{"class":4512},[3925,28984,4016],{"class":4540},[3925,28986,28987,28989,28991],{"class":3927,"line":17070},[3925,28988,7373],{"class":4579},[3925,28990,4583],{"class":4508},[3925,28992,28993],{"class":4521},"\"endDate\"\n",[3925,28995,28996,28998,29000,29002,29004,29006,29008,29010,29012,29014,29016,29018,29020,29022],{"class":3927,"line":17075},[3925,28997,28201],{"class":4579},[3925,28999,4583],{"class":4508},[3925,29001,4594],{"class":4540},[3925,29003,8674],{"class":4597},[3925,29005,4760],{"class":4512},[3925,29007,14697],{"class":4597},[3925,29009,28214],{"class":4512},[3925,29011,4191],{"class":4597},[3925,29013,28219],{"class":4512},[3925,29015,4191],{"class":4597},[3925,29017,25164],{"class":4512},[3925,29019,28226],{"class":4597},[3925,29021,5614],{"class":4540},[3925,29023,4556],{"class":4597},[3925,29025,29026,29028],{"class":3927,"line":17084},[3925,29027,7697],{"class":4561},[3925,29029,28882],{"class":4565},[3925,29031,29032,29034,29036],{"class":3927,"line":17089},[3925,29033,19178],{"class":4579},[3925,29035,4583],{"class":4508},[3925,29037,29038],{"class":4521},"\"Дата завершення\"\n",[3925,29040,29041,29043,29045,29047,29049],{"class":3927,"line":17096},[3925,29042,28261],{"class":4579},[3925,29044,4583],{"class":4508},[3925,29046,4594],{"class":4540},[3925,29048,25164],{"class":4512},[3925,29050,4016],{"class":4540},[3925,29052,29053,29055,29057,29059,29061],{"class":3927,"line":17107},[3925,29054,28908],{"class":4579},[3925,29056,4583],{"class":4508},[3925,29058,4594],{"class":4540},[3925,29060,28214],{"class":4512},[3925,29062,4016],{"class":4540},[3925,29064,29065,29067,29069,29071,29073],{"class":3927,"line":17118},[3925,29066,28287],{"class":4579},[3925,29068,4583],{"class":4508},[3925,29070,4594],{"class":4540},[3925,29072,28219],{"class":4512},[3925,29074,4016],{"class":4540},[3925,29076,29077,29079,29081,29083,29085,29087,29089,29091,29093],{"class":3927,"line":17123},[3925,29078,28300],{"class":4579},[3925,29080,4583],{"class":4508},[3925,29082,4594],{"class":4540},[3925,29084,27446],{"class":4512},[3925,29086,3595],{"class":4597},[3925,29088,23914],{"class":4512},[3925,29090,28313],{"class":4597},[3925,29092,28316],{"class":4512},[3925,29094,4016],{"class":4540},[3925,29096,29097,29100,29102,29104,29106],{"class":3927,"line":17136},[3925,29098,29099],{"class":4579},"              minimumDate",[3925,29101,4583],{"class":4508},[3925,29103,4594],{"class":4540},[3925,29105,23929],{"class":4512},[3925,29107,4016],{"class":4540},[3925,29109,29110],{"class":3927,"line":17149},[3925,29111,7847],{"class":4561},[3925,29113,29114,29116],{"class":3927,"line":17162},[3925,29115,19123],{"class":4597},[3925,29117,4016],{"class":4540},[3925,29119,29120],{"class":3927,"line":17176},[3925,29121,7429],{"class":4561},[3925,29123,29124],{"class":3927,"line":17190},[3925,29125,3950],{"emptyLinePlaceholder":3949},[3925,29127,29128,29130,29133],{"class":3927,"line":17195},[3925,29129,19510],{"class":4540},[3925,29131,29132],{"class":4498},"\u002F* ——— TextInput multiline ——— *\u002F",[3925,29134,4016],{"class":4540},[3925,29136,29137,29139],{"class":3927,"line":17202},[3925,29138,7335],{"class":4561},[3925,29140,28173],{"class":4565},[3925,29142,29143,29145,29147,29149,29151],{"class":3927,"line":17207},[3925,29144,28178],{"class":4579},[3925,29146,4583],{"class":4508},[3925,29148,4594],{"class":4540},[3925,29150,28185],{"class":4512},[3925,29152,4016],{"class":4540},[3925,29154,29155,29157,29159],{"class":3927,"line":17215},[3925,29156,7373],{"class":4579},[3925,29158,4583],{"class":4508},[3925,29160,29161],{"class":4521},"\"description\"\n",[3925,29163,29164,29166,29168,29170,29172,29174,29176,29178,29180,29182,29184,29186,29188,29190],{"class":3927,"line":17226},[3925,29165,28201],{"class":4579},[3925,29167,4583],{"class":4508},[3925,29169,4594],{"class":4540},[3925,29171,8674],{"class":4597},[3925,29173,4760],{"class":4512},[3925,29175,14697],{"class":4597},[3925,29177,28214],{"class":4512},[3925,29179,4191],{"class":4597},[3925,29181,28219],{"class":4512},[3925,29183,4191],{"class":4597},[3925,29185,25164],{"class":4512},[3925,29187,28226],{"class":4597},[3925,29189,5614],{"class":4540},[3925,29191,4556],{"class":4597},[3925,29193,29194,29196],{"class":3927,"line":17241},[3925,29195,7697],{"class":4561},[3925,29197,28237],{"class":4565},[3925,29199,29200,29202,29204],{"class":3927,"line":17257},[3925,29201,19178],{"class":4579},[3925,29203,4583],{"class":4508},[3925,29205,29206],{"class":4521},"\"Опис\"\n",[3925,29208,29209,29211,29213],{"class":3927,"line":17264},[3925,29210,28251],{"class":4579},[3925,29212,4583],{"class":4508},[3925,29214,29215],{"class":4521},"\"Коротко: що плануєте побачити, з ким їдете…\"\n",[3925,29217,29218,29220,29222,29224,29226],{"class":3927,"line":17269},[3925,29219,28261],{"class":4579},[3925,29221,4583],{"class":4508},[3925,29223,4594],{"class":4540},[3925,29225,25164],{"class":4512},[3925,29227,4016],{"class":4540},[3925,29229,29230,29232,29234,29236,29238],{"class":3927,"line":17278},[3925,29231,28274],{"class":4579},[3925,29233,4583],{"class":4508},[3925,29235,4594],{"class":4540},[3925,29237,28214],{"class":4512},[3925,29239,4016],{"class":4540},[3925,29241,29242,29244,29246,29248,29250],{"class":3927,"line":17287},[3925,29243,28287],{"class":4579},[3925,29245,4583],{"class":4508},[3925,29247,4594],{"class":4540},[3925,29249,28219],{"class":4512},[3925,29251,4016],{"class":4540},[3925,29253,29254,29256,29258,29260,29262,29264,29266,29268,29270],{"class":3927,"line":17292},[3925,29255,28300],{"class":4579},[3925,29257,4583],{"class":4508},[3925,29259,4594],{"class":4540},[3925,29261,27446],{"class":4512},[3925,29263,3595],{"class":4597},[3925,29265,18927],{"class":4512},[3925,29267,28313],{"class":4597},[3925,29269,28316],{"class":4512},[3925,29271,4016],{"class":4540},[3925,29273,29274],{"class":3927,"line":17297},[3925,29275,29276],{"class":4579},"              multiline\n",[3925,29278,29279,29282,29284,29286,29289],{"class":3927,"line":17302},[3925,29280,29281],{"class":4579},"              numberOfLines",[3925,29283,4583],{"class":4508},[3925,29285,4594],{"class":4540},[3925,29287,29288],{"class":5990},"4",[3925,29290,4016],{"class":4540},[3925,29292,29293,29296,29298],{"class":3927,"line":17319},[3925,29294,29295],{"class":4579},"              textAlignVertical",[3925,29297,4583],{"class":4508},[3925,29299,11208],{"class":4521},[3925,29301,29302,29304,29306,29308,29310,29312,29315],{"class":3927,"line":17327},[3925,29303,22137],{"class":4579},[3925,29305,4583],{"class":4508},[3925,29307,4594],{"class":4540},[3925,29309,8365],{"class":4512},[3925,29311,3595],{"class":4597},[3925,29313,29314],{"class":4512},"multiline",[3925,29316,4016],{"class":4540},[3925,29318,29319,29321,29323,29325,29327],{"class":3927,"line":17336},[3925,29320,28343],{"class":4579},[3925,29322,4583],{"class":4508},[3925,29324,4594],{"class":4540},[3925,29326,23693],{"class":5990},[3925,29328,4016],{"class":4540},[3925,29330,29331,29334,29336],{"class":3927,"line":17341},[3925,29332,29333],{"class":4579},"              hint",[3925,29335,4583],{"class":4508},[3925,29337,29338],{"class":4521},"\"Мінімум 10 символів\"\n",[3925,29340,29341],{"class":3927,"line":17348},[3925,29342,7847],{"class":4561},[3925,29344,29345,29347],{"class":3927,"line":17357},[3925,29346,19123],{"class":4597},[3925,29348,4016],{"class":4540},[3925,29350,29351],{"class":3927,"line":17362},[3925,29352,7429],{"class":4561},[3925,29354,29355],{"class":3927,"line":17370},[3925,29356,3950],{"emptyLinePlaceholder":3949},[3925,29358,29359,29361,29364],{"class":3927,"line":17381},[3925,29360,19510],{"class":4540},[3925,29362,29363],{"class":4498},"\u002F* ——— Slider ——— *\u002F",[3925,29365,4016],{"class":4540},[3925,29367,29368,29370],{"class":3927,"line":17392},[3925,29369,7335],{"class":4561},[3925,29371,28173],{"class":4565},[3925,29373,29374,29376,29378,29380,29382],{"class":3927,"line":17397},[3925,29375,28178],{"class":4579},[3925,29377,4583],{"class":4508},[3925,29379,4594],{"class":4540},[3925,29381,28185],{"class":4512},[3925,29383,4016],{"class":4540},[3925,29385,29386,29388,29390],{"class":3927,"line":17405},[3925,29387,7373],{"class":4579},[3925,29389,4583],{"class":4508},[3925,29391,29392],{"class":4521},"\"plannedDays\"\n",[3925,29394,29395,29397,29399,29401,29403,29405,29407,29409,29411,29413,29415,29417],{"class":3927,"line":17414},[3925,29396,28201],{"class":4579},[3925,29398,4583],{"class":4508},[3925,29400,4594],{"class":4540},[3925,29402,8674],{"class":4597},[3925,29404,4760],{"class":4512},[3925,29406,14697],{"class":4597},[3925,29408,28214],{"class":4512},[3925,29410,4191],{"class":4597},[3925,29412,25164],{"class":4512},[3925,29414,28226],{"class":4597},[3925,29416,5614],{"class":4540},[3925,29418,4556],{"class":4597},[3925,29420,29421,29423],{"class":3927,"line":17423},[3925,29422,7697],{"class":4561},[3925,29424,28438],{"class":4565},[3925,29426,29427,29429,29431,29433,29436,29438,29440,29442,29444,29447,29449,29451,29453,29455,29457],{"class":3927,"line":17432},[3925,29428,19178],{"class":4579},[3925,29430,4583],{"class":4508},[3925,29432,4594],{"class":4540},[3925,29434,29435],{"class":4521},"`Тривалість: ",[3925,29437,4708],{"class":4540},[3925,29439,25164],{"class":4512},[3925,29441,4610],{"class":4540},[3925,29443,24149],{"class":4540},[3925,29445,29446],{"class":4544},"daysWord",[3925,29448,4702],{"class":4597},[3925,29450,25164],{"class":4512},[3925,29452,4251],{"class":4597},[3925,29454,4610],{"class":4540},[3925,29456,4721],{"class":4521},[3925,29458,4016],{"class":4540},[3925,29460,29461,29463,29465],{"class":3927,"line":17441},[3925,29462,28452],{"class":4579},[3925,29464,4583],{"class":4508},[3925,29466,29467],{"class":4521},"\"Повзунок (Slider) — зручно для діапазону 1–14\"\n",[3925,29469,29470,29472,29474,29476,29478,29480,29482,29484,29486],{"class":3927,"line":17446},[3925,29471,28300],{"class":4579},[3925,29473,4583],{"class":4508},[3925,29475,4594],{"class":4540},[3925,29477,27446],{"class":4512},[3925,29479,3595],{"class":4597},[3925,29481,18677],{"class":4512},[3925,29483,28313],{"class":4597},[3925,29485,28316],{"class":4512},[3925,29487,4016],{"class":4540},[3925,29489,29490],{"class":3927,"line":17454},[3925,29491,28482],{"class":4579},[3925,29493,29494,29496,29498],{"class":3927,"line":17463},[3925,29495,28487],{"class":4579},[3925,29497,4583],{"class":4508},[3925,29499,5040],{"class":4540},[3925,29501,29502,29504],{"class":3927,"line":17468},[3925,29503,16614],{"class":4561},[3925,29505,29506],{"class":4565},"Slider\n",[3925,29508,29509,29512,29514,29516,29518],{"class":3927,"line":17476},[3925,29510,29511],{"class":4579},"                  minimumValue",[3925,29513,4583],{"class":4508},[3925,29515,4594],{"class":4540},[3925,29517,23792],{"class":5990},[3925,29519,4016],{"class":4540},[3925,29521,29522,29525,29527,29529,29531],{"class":3927,"line":17485},[3925,29523,29524],{"class":4579},"                  maximumValue",[3925,29526,4583],{"class":4508},[3925,29528,4594],{"class":4540},[3925,29530,23810],{"class":5990},[3925,29532,4016],{"class":4540},[3925,29534,29535,29538,29540,29542,29544],{"class":3927,"line":17490},[3925,29536,29537],{"class":4579},"                  step",[3925,29539,4583],{"class":4508},[3925,29541,4594],{"class":4540},[3925,29543,23792],{"class":5990},[3925,29545,4016],{"class":4540},[3925,29547,29548,29551,29553,29555,29557],{"class":3927,"line":17498},[3925,29549,29550],{"class":4579},"                  value",[3925,29552,4583],{"class":4508},[3925,29554,4594],{"class":4540},[3925,29556,25164],{"class":4512},[3925,29558,4016],{"class":4540},[3925,29560,29561,29564,29566,29568,29570],{"class":3927,"line":17507},[3925,29562,29563],{"class":4579},"                  onValueChange",[3925,29565,4583],{"class":4508},[3925,29567,4594],{"class":4540},[3925,29569,28214],{"class":4512},[3925,29571,4016],{"class":4540},[3925,29573,29574,29577,29579,29581,29583,29585,29587],{"class":3927,"line":17516},[3925,29575,29576],{"class":4579},"                  minimumTrackTintColor",[3925,29578,4583],{"class":4508},[3925,29580,4594],{"class":4540},[3925,29582,13240],{"class":4512},[3925,29584,3595],{"class":4597},[3925,29586,13358],{"class":4512},[3925,29588,4016],{"class":4540},[3925,29590,29591,29594,29596,29598,29600,29602,29604],{"class":3927,"line":17521},[3925,29592,29593],{"class":4579},"                  maximumTrackTintColor",[3925,29595,4583],{"class":4508},[3925,29597,4594],{"class":4540},[3925,29599,13240],{"class":4512},[3925,29601,3595],{"class":4597},[3925,29603,13783],{"class":4512},[3925,29605,4016],{"class":4540},[3925,29607,29608,29611,29613,29615,29617,29619,29621],{"class":3927,"line":17529},[3925,29609,29610],{"class":4579},"                  thumbTintColor",[3925,29612,4583],{"class":4508},[3925,29614,4594],{"class":4540},[3925,29616,13240],{"class":4512},[3925,29618,3595],{"class":4597},[3925,29620,13358],{"class":4512},[3925,29622,4016],{"class":4540},[3925,29624,29625],{"class":3927,"line":17539},[3925,29626,29627],{"class":4561},"                \u002F>\n",[3925,29629,29630],{"class":3927,"line":17544},[3925,29631,28791],{"class":4540},[3925,29633,29634],{"class":3927,"line":17552},[3925,29635,7847],{"class":4561},[3925,29637,29638,29640],{"class":3927,"line":17561},[3925,29639,19123],{"class":4597},[3925,29641,4016],{"class":4540},[3925,29643,29644],{"class":3927,"line":17566},[3925,29645,7429],{"class":4561},[3925,29647,29648,29650,29652,29654,29656,29658,29660,29662,29664,29666,29668,29670,29672],{"class":3927,"line":17573},[3925,29649,7335],{"class":4561},[3925,29651,14664],{"class":4565},[3925,29653,15773],{"class":4579},[3925,29655,4583],{"class":4508},[3925,29657,16084],{"class":4521},[3925,29659,7720],{"class":4579},[3925,29661,4583],{"class":4508},[3925,29663,4594],{"class":4540},[3925,29665,13240],{"class":4512},[3925,29667,3595],{"class":4597},[3925,29669,13752],{"class":4512},[3925,29671,4610],{"class":4540},[3925,29673,4568],{"class":4561},[3925,29675,29676,29679,29681,29683,29686,29688],{"class":3927,"line":17582},[3925,29677,29678],{"class":4508},"          Зараз на слайдері: ",[3925,29680,4594],{"class":4540},[3925,29682,18677],{"class":4512},[3925,29684,29685],{"class":4540},"}{",[3925,29687,21308],{"class":4521},[3925,29689,4016],{"class":4540},[3925,29691,29692,29694,29696,29698,29700,29703,29705,29707,29709],{"class":3927,"line":17587},[3925,29693,16225],{"class":4540},[3925,29695,29446],{"class":4544},[3925,29697,4702],{"class":4597},[3925,29699,18677],{"class":4512},[3925,29701,29702],{"class":4508}," ??",[3925,29704,9064],{"class":5990},[3925,29706,4251],{"class":4597},[3925,29708,4610],{"class":4540},[3925,29710,29711],{"class":4508}," (можна не збігатися з датами — це\n",[3925,29713,29715],{"class":3927,"line":29714},263,[3925,29716,29717],{"class":4508},"          окреме «орієнтовне» поле для навчання).\n",[3925,29719,29721,29723,29725],{"class":3927,"line":29720},264,[3925,29722,8493],{"class":4561},[3925,29724,14664],{"class":4565},[3925,29726,4568],{"class":4561},[3925,29728,29730],{"class":3927,"line":29729},265,[3925,29731,3950],{"emptyLinePlaceholder":3949},[3925,29733,29735,29737,29740],{"class":3927,"line":29734},266,[3925,29736,19510],{"class":4540},[3925,29738,29739],{"class":4498},"\u002F* ——— Switch ——— *\u002F",[3925,29741,4016],{"class":4540},[3925,29743,29745,29747],{"class":3927,"line":29744},267,[3925,29746,7335],{"class":4561},[3925,29748,28173],{"class":4565},[3925,29750,29752,29754,29756,29758,29760],{"class":3927,"line":29751},268,[3925,29753,28178],{"class":4579},[3925,29755,4583],{"class":4508},[3925,29757,4594],{"class":4540},[3925,29759,28185],{"class":4512},[3925,29761,4016],{"class":4540},[3925,29763,29765,29767,29769],{"class":3927,"line":29764},269,[3925,29766,7373],{"class":4579},[3925,29768,4583],{"class":4508},[3925,29770,29771],{"class":4521},"\"isPrivate\"\n",[3925,29773,29775,29777,29779,29781,29783,29785,29787,29789,29791,29793,29795,29797],{"class":3927,"line":29774},270,[3925,29776,28201],{"class":4579},[3925,29778,4583],{"class":4508},[3925,29780,4594],{"class":4540},[3925,29782,8674],{"class":4597},[3925,29784,4760],{"class":4512},[3925,29786,14697],{"class":4597},[3925,29788,28214],{"class":4512},[3925,29790,4191],{"class":4597},[3925,29792,25164],{"class":4512},[3925,29794,28226],{"class":4597},[3925,29796,5614],{"class":4540},[3925,29798,4556],{"class":4597},[3925,29800,29802,29804],{"class":3927,"line":29801},271,[3925,29803,7697],{"class":4561},[3925,29805,28438],{"class":4565},[3925,29807,29809,29811,29813],{"class":3927,"line":29808},272,[3925,29810,19178],{"class":4579},[3925,29812,4583],{"class":4508},[3925,29814,29815],{"class":4521},"\"Приватна поїздка\"\n",[3925,29817,29819,29821,29823],{"class":3927,"line":29818},273,[3925,29820,28452],{"class":4579},[3925,29822,4583],{"class":4508},[3925,29824,29825],{"class":4521},"\"Switch: увімкнено — мітка «приватна» на картці\"\n",[3925,29827,29829,29831,29833,29835,29837,29839,29841,29843,29845],{"class":3927,"line":29828},274,[3925,29830,28300],{"class":4579},[3925,29832,4583],{"class":4508},[3925,29834,4594],{"class":4540},[3925,29836,27446],{"class":4512},[3925,29838,3595],{"class":4597},[3925,29840,18752],{"class":4512},[3925,29842,28313],{"class":4597},[3925,29844,28316],{"class":4512},[3925,29846,4016],{"class":4540},[3925,29848,29850,29852,29854],{"class":3927,"line":29849},275,[3925,29851,28487],{"class":4579},[3925,29853,4583],{"class":4508},[3925,29855,5040],{"class":4540},[3925,29857,29859,29861],{"class":3927,"line":29858},276,[3925,29860,16614],{"class":4561},[3925,29862,29863],{"class":4565},"Switch\n",[3925,29865,29867,29869,29871,29873,29875],{"class":3927,"line":29866},277,[3925,29868,29550],{"class":4579},[3925,29870,4583],{"class":4508},[3925,29872,4594],{"class":4540},[3925,29874,25164],{"class":4512},[3925,29876,4016],{"class":4540},[3925,29878,29880,29882,29884,29886,29888],{"class":3927,"line":29879},278,[3925,29881,29563],{"class":4579},[3925,29883,4583],{"class":4508},[3925,29885,4594],{"class":4540},[3925,29887,28214],{"class":4512},[3925,29889,4016],{"class":4540},[3925,29891,29893,29896,29898,29900],{"class":3927,"line":29892},279,[3925,29894,29895],{"class":4579},"                  trackColor",[3925,29897,4583],{"class":4508},[3925,29899,4594],{"class":4540},[3925,29901,5040],{"class":4597},[3925,29903,29905,29908,29910,29912,29914],{"class":3927,"line":29904},280,[3925,29906,29907],{"class":4512},"                    false:",[3925,29909,13324],{"class":4512},[3925,29911,3595],{"class":4597},[3925,29913,13783],{"class":4512},[3925,29915,5051],{"class":4597},[3925,29917,29919,29922,29924,29926,29928],{"class":3927,"line":29918},281,[3925,29920,29921],{"class":4512},"                    true:",[3925,29923,13324],{"class":4512},[3925,29925,3595],{"class":4597},[3925,29927,13358],{"class":4512},[3925,29929,5051],{"class":4597},[3925,29931,29933,29936],{"class":3927,"line":29932},282,[3925,29934,29935],{"class":4597},"                  }",[3925,29937,4016],{"class":4540},[3925,29939,29941,29944,29946,29948,29950,29952,29954],{"class":3927,"line":29940},283,[3925,29942,29943],{"class":4579},"                  thumbColor",[3925,29945,4583],{"class":4508},[3925,29947,4594],{"class":4540},[3925,29949,13240],{"class":4512},[3925,29951,3595],{"class":4597},[3925,29953,16648],{"class":4512},[3925,29955,4016],{"class":4540},[3925,29957,29959,29962,29964,29966,29968,29970,29972],{"class":3927,"line":29958},284,[3925,29960,29961],{"class":4579},"                  ios_backgroundColor",[3925,29963,4583],{"class":4508},[3925,29965,4594],{"class":4540},[3925,29967,13240],{"class":4512},[3925,29969,3595],{"class":4597},[3925,29971,13783],{"class":4512},[3925,29973,4016],{"class":4540},[3925,29975,29977],{"class":3927,"line":29976},285,[3925,29978,29627],{"class":4561},[3925,29980,29982],{"class":3927,"line":29981},286,[3925,29983,28791],{"class":4540},[3925,29985,29987],{"class":3927,"line":29986},287,[3925,29988,7847],{"class":4561},[3925,29990,29992,29994],{"class":3927,"line":29991},288,[3925,29993,19123],{"class":4597},[3925,29995,4016],{"class":4540},[3925,29997,29999],{"class":3927,"line":29998},289,[3925,30000,7429],{"class":4561},[3925,30002,30004],{"class":3927,"line":30003},290,[3925,30005,3950],{"emptyLinePlaceholder":3949},[3925,30007,30009,30011,30014],{"class":3927,"line":30008},291,[3925,30010,19510],{"class":4540},[3925,30012,30013],{"class":4498},"\u002F* ——— Checkbox (опційний прапорець) ——— *\u002F",[3925,30015,4016],{"class":4540},[3925,30017,30019,30021],{"class":3927,"line":30018},292,[3925,30020,7335],{"class":4561},[3925,30022,28173],{"class":4565},[3925,30024,30026,30028,30030,30032,30034],{"class":3927,"line":30025},293,[3925,30027,28178],{"class":4579},[3925,30029,4583],{"class":4508},[3925,30031,4594],{"class":4540},[3925,30033,28185],{"class":4512},[3925,30035,4016],{"class":4540},[3925,30037,30039,30041,30043],{"class":3927,"line":30038},294,[3925,30040,7373],{"class":4579},[3925,30042,4583],{"class":4508},[3925,30044,30045],{"class":4521},"\"hasItinerary\"\n",[3925,30047,30049,30051,30053,30055,30057,30059,30061,30063,30065,30067,30069,30071],{"class":3927,"line":30048},295,[3925,30050,28201],{"class":4579},[3925,30052,4583],{"class":4508},[3925,30054,4594],{"class":4540},[3925,30056,8674],{"class":4597},[3925,30058,4760],{"class":4512},[3925,30060,14697],{"class":4597},[3925,30062,28214],{"class":4512},[3925,30064,4191],{"class":4597},[3925,30066,25164],{"class":4512},[3925,30068,28226],{"class":4597},[3925,30070,5614],{"class":4540},[3925,30072,4556],{"class":4597},[3925,30074,30076,30078],{"class":3927,"line":30075},296,[3925,30077,7697],{"class":4561},[3925,30079,28438],{"class":4565},[3925,30081,30083,30085,30087],{"class":3927,"line":30082},297,[3925,30084,19178],{"class":4579},[3925,30086,4583],{"class":4508},[3925,30088,30089],{"class":4521},"\"Є план маршруту\"\n",[3925,30091,30093,30095,30097],{"class":3927,"line":30092},298,[3925,30094,28452],{"class":4579},[3925,30096,4583],{"class":4508},[3925,30098,30099],{"class":4521},"\"Checkbox: так \u002F ні, без обов’язковості\"\n",[3925,30101,30103,30105,30107,30109,30111,30113,30115,30117,30119],{"class":3927,"line":30102},299,[3925,30104,28300],{"class":4579},[3925,30106,4583],{"class":4508},[3925,30108,4594],{"class":4540},[3925,30110,27446],{"class":4512},[3925,30112,3595],{"class":4597},[3925,30114,18817],{"class":4512},[3925,30116,28313],{"class":4597},[3925,30118,28316],{"class":4512},[3925,30120,4016],{"class":4540},[3925,30122,30124,30126,30128],{"class":3927,"line":30123},300,[3925,30125,28487],{"class":4579},[3925,30127,4583],{"class":4508},[3925,30129,5040],{"class":4540},[3925,30131,30133,30135],{"class":3927,"line":30132},301,[3925,30134,16614],{"class":4561},[3925,30136,30137],{"class":4565},"Checkbox\n",[3925,30139,30141,30143,30145,30147,30149],{"class":3927,"line":30140},302,[3925,30142,29550],{"class":4579},[3925,30144,4583],{"class":4508},[3925,30146,4594],{"class":4540},[3925,30148,25164],{"class":4512},[3925,30150,4016],{"class":4540},[3925,30152,30154,30156,30158,30160,30162],{"class":3927,"line":30153},303,[3925,30155,29563],{"class":4579},[3925,30157,4583],{"class":4508},[3925,30159,4594],{"class":4540},[3925,30161,28214],{"class":4512},[3925,30163,4016],{"class":4540},[3925,30165,30167,30170,30172,30174],{"class":3927,"line":30166},304,[3925,30168,30169],{"class":4579},"                  tintColors",[3925,30171,4583],{"class":4508},[3925,30173,4594],{"class":4540},[3925,30175,5040],{"class":4597},[3925,30177,30179,30181,30183,30185,30187],{"class":3927,"line":30178},305,[3925,30180,29921],{"class":4512},[3925,30182,13324],{"class":4512},[3925,30184,3595],{"class":4597},[3925,30186,13358],{"class":4512},[3925,30188,5051],{"class":4597},[3925,30190,30192,30194,30196,30198,30200],{"class":3927,"line":30191},306,[3925,30193,29907],{"class":4512},[3925,30195,13324],{"class":4512},[3925,30197,3595],{"class":4597},[3925,30199,13783],{"class":4512},[3925,30201,5051],{"class":4597},[3925,30203,30205,30207],{"class":3927,"line":30204},307,[3925,30206,29935],{"class":4597},[3925,30208,4016],{"class":4540},[3925,30210,30212,30215,30217,30219,30221,30223,30225],{"class":3927,"line":30211},308,[3925,30213,30214],{"class":4579},"                  onCheckColor",[3925,30216,4583],{"class":4508},[3925,30218,4594],{"class":4540},[3925,30220,13240],{"class":4512},[3925,30222,3595],{"class":4597},[3925,30224,16648],{"class":4512},[3925,30226,4016],{"class":4540},[3925,30228,30230,30233,30235,30237,30239,30241,30243],{"class":3927,"line":30229},309,[3925,30231,30232],{"class":4579},"                  onFillColor",[3925,30234,4583],{"class":4508},[3925,30236,4594],{"class":4540},[3925,30238,13240],{"class":4512},[3925,30240,3595],{"class":4597},[3925,30242,13358],{"class":4512},[3925,30244,4016],{"class":4540},[3925,30246,30248,30251,30253,30255,30257,30259,30261],{"class":3927,"line":30247},310,[3925,30249,30250],{"class":4579},"                  onTintColor",[3925,30252,4583],{"class":4508},[3925,30254,4594],{"class":4540},[3925,30256,13240],{"class":4512},[3925,30258,3595],{"class":4597},[3925,30260,13358],{"class":4512},[3925,30262,4016],{"class":4540},[3925,30264,30266,30269,30271],{"class":3927,"line":30265},311,[3925,30267,30268],{"class":4579},"                  boxType",[3925,30270,4583],{"class":4508},[3925,30272,30273],{"class":4521},"\"square\"\n",[3925,30275,30277],{"class":3927,"line":30276},312,[3925,30278,29627],{"class":4561},[3925,30280,30282],{"class":3927,"line":30281},313,[3925,30283,28791],{"class":4540},[3925,30285,30287],{"class":3927,"line":30286},314,[3925,30288,7847],{"class":4561},[3925,30290,30292,30294],{"class":3927,"line":30291},315,[3925,30293,19123],{"class":4597},[3925,30295,4016],{"class":4540},[3925,30297,30299],{"class":3927,"line":30298},316,[3925,30300,7429],{"class":4561},[3925,30302,30304],{"class":3927,"line":30303},317,[3925,30305,3950],{"emptyLinePlaceholder":3949},[3925,30307,30309,30311,30314],{"class":3927,"line":30308},318,[3925,30310,19510],{"class":4540},[3925,30312,30313],{"class":4498},"\u002F* ——— Checkbox (обов’язкова згода) ——— *\u002F",[3925,30315,4016],{"class":4540},[3925,30317,30319,30321],{"class":3927,"line":30318},319,[3925,30320,7335],{"class":4561},[3925,30322,28173],{"class":4565},[3925,30324,30326,30328,30330,30332,30334],{"class":3927,"line":30325},320,[3925,30327,28178],{"class":4579},[3925,30329,4583],{"class":4508},[3925,30331,4594],{"class":4540},[3925,30333,28185],{"class":4512},[3925,30335,4016],{"class":4540},[3925,30337,30339,30341,30343],{"class":3927,"line":30338},321,[3925,30340,7373],{"class":4579},[3925,30342,4583],{"class":4508},[3925,30344,30345],{"class":4521},"\"acceptedLocalSave\"\n",[3925,30347,30349,30351,30353,30355,30357,30359,30361,30363,30365,30367,30369,30371],{"class":3927,"line":30348},322,[3925,30350,28201],{"class":4579},[3925,30352,4583],{"class":4508},[3925,30354,4594],{"class":4540},[3925,30356,8674],{"class":4597},[3925,30358,4760],{"class":4512},[3925,30360,14697],{"class":4597},[3925,30362,28214],{"class":4512},[3925,30364,4191],{"class":4597},[3925,30366,25164],{"class":4512},[3925,30368,28226],{"class":4597},[3925,30370,5614],{"class":4540},[3925,30372,4556],{"class":4597},[3925,30374,30376,30378],{"class":3927,"line":30375},323,[3925,30377,7697],{"class":4561},[3925,30379,28438],{"class":4565},[3925,30381,30383,30385,30387],{"class":3927,"line":30382},324,[3925,30384,19178],{"class":4579},[3925,30386,4583],{"class":4508},[3925,30388,30389],{"class":4521},"\"Згода на локальне збереження\"\n",[3925,30391,30393,30395,30397],{"class":3927,"line":30392},325,[3925,30394,28452],{"class":4579},[3925,30396,4583],{"class":4508},[3925,30398,30399],{"class":4521},"\"Поки немає API: дані лишаються в пам’яті застосунку\"\n",[3925,30401,30403,30405,30407,30409,30411,30413,30416,30418,30420],{"class":3927,"line":30402},326,[3925,30404,28300],{"class":4579},[3925,30406,4583],{"class":4508},[3925,30408,4594],{"class":4540},[3925,30410,27446],{"class":4512},[3925,30412,3595],{"class":4597},[3925,30414,30415],{"class":4512},"acceptedLocalSave",[3925,30417,28313],{"class":4597},[3925,30419,28316],{"class":4512},[3925,30421,4016],{"class":4540},[3925,30423,30425,30427,30429],{"class":3927,"line":30424},327,[3925,30426,28487],{"class":4579},[3925,30428,4583],{"class":4508},[3925,30430,5040],{"class":4540},[3925,30432,30434,30436],{"class":3927,"line":30433},328,[3925,30435,16614],{"class":4561},[3925,30437,30137],{"class":4565},[3925,30439,30441,30443,30445,30447,30450,30452,30454,30456],{"class":3927,"line":30440},329,[3925,30442,29550],{"class":4579},[3925,30444,4583],{"class":4508},[3925,30446,4594],{"class":4540},[3925,30448,30449],{"class":4544},"Boolean",[3925,30451,4702],{"class":4597},[3925,30453,25164],{"class":4512},[3925,30455,4251],{"class":4597},[3925,30457,4016],{"class":4540},[3925,30459,30461,30463,30465,30467,30469],{"class":3927,"line":30460},330,[3925,30462,29563],{"class":4579},[3925,30464,4583],{"class":4508},[3925,30466,4594],{"class":4540},[3925,30468,28214],{"class":4512},[3925,30470,4016],{"class":4540},[3925,30472,30474,30476,30478,30480],{"class":3927,"line":30473},331,[3925,30475,30169],{"class":4579},[3925,30477,4583],{"class":4508},[3925,30479,4594],{"class":4540},[3925,30481,5040],{"class":4597},[3925,30483,30485,30487,30489,30491,30493],{"class":3927,"line":30484},332,[3925,30486,29921],{"class":4512},[3925,30488,13324],{"class":4512},[3925,30490,3595],{"class":4597},[3925,30492,13358],{"class":4512},[3925,30494,5051],{"class":4597},[3925,30496,30498,30500,30502,30504,30506],{"class":3927,"line":30497},333,[3925,30499,29907],{"class":4512},[3925,30501,13324],{"class":4512},[3925,30503,3595],{"class":4597},[3925,30505,13783],{"class":4512},[3925,30507,5051],{"class":4597},[3925,30509,30511,30513],{"class":3927,"line":30510},334,[3925,30512,29935],{"class":4597},[3925,30514,4016],{"class":4540},[3925,30516,30518,30520,30522,30524,30526,30528,30530],{"class":3927,"line":30517},335,[3925,30519,30214],{"class":4579},[3925,30521,4583],{"class":4508},[3925,30523,4594],{"class":4540},[3925,30525,13240],{"class":4512},[3925,30527,3595],{"class":4597},[3925,30529,16648],{"class":4512},[3925,30531,4016],{"class":4540},[3925,30533,30535,30537,30539,30541,30543,30545,30547],{"class":3927,"line":30534},336,[3925,30536,30232],{"class":4579},[3925,30538,4583],{"class":4508},[3925,30540,4594],{"class":4540},[3925,30542,13240],{"class":4512},[3925,30544,3595],{"class":4597},[3925,30546,13358],{"class":4512},[3925,30548,4016],{"class":4540},[3925,30550,30552,30554,30556,30558,30560,30562,30564],{"class":3927,"line":30551},337,[3925,30553,30250],{"class":4579},[3925,30555,4583],{"class":4508},[3925,30557,4594],{"class":4540},[3925,30559,13240],{"class":4512},[3925,30561,3595],{"class":4597},[3925,30563,13358],{"class":4512},[3925,30565,4016],{"class":4540},[3925,30567,30569,30571,30573],{"class":3927,"line":30568},338,[3925,30570,30268],{"class":4579},[3925,30572,4583],{"class":4508},[3925,30574,30273],{"class":4521},[3925,30576,30578],{"class":3927,"line":30577},339,[3925,30579,29627],{"class":4561},[3925,30581,30583],{"class":3927,"line":30582},340,[3925,30584,28791],{"class":4540},[3925,30586,30588],{"class":3927,"line":30587},341,[3925,30589,7847],{"class":4561},[3925,30591,30593,30595],{"class":3927,"line":30592},342,[3925,30594,19123],{"class":4597},[3925,30596,4016],{"class":4540},[3925,30598,30600],{"class":3927,"line":30599},343,[3925,30601,7429],{"class":4561},[3925,30603,30605],{"class":3927,"line":30604},344,[3925,30606,3950],{"emptyLinePlaceholder":3949},[3925,30608,30610,30612,30615],{"class":3927,"line":30609},345,[3925,30611,19510],{"class":4540},[3925,30613,30614],{"class":4498},"\u002F* ——— Button (Pressable-обгортка з shared\u002Fui) ——— *\u002F",[3925,30616,4016],{"class":4540},[3925,30618,30620,30622,30624,30626,30628,30630,30632,30634,30636,30638,30640,30642,30644,30646,30648,30650,30652,30654],{"class":3927,"line":30619},346,[3925,30621,7335],{"class":4561},[3925,30623,8398],{"class":4565},[3925,30625,7232],{"class":4579},[3925,30627,4583],{"class":4508},[3925,30629,4594],{"class":4540},[3925,30631,4598],{"class":4597},[3925,30633,11369],{"class":4512},[3925,30635,15307],{"class":4512},[3925,30637,3595],{"class":4597},[3925,30639,15372],{"class":4512},[3925,30641,4191],{"class":4597},[3925,30643,9176],{"class":4512},[3925,30645,15307],{"class":4512},[3925,30647,3595],{"class":4597},[3925,30649,15372],{"class":4512},[3925,30651,4607],{"class":4597},[3925,30653,4610],{"class":4540},[3925,30655,4568],{"class":4561},[3925,30657,30659,30661],{"class":3927,"line":30658},347,[3925,30660,8630],{"class":4561},[3925,30662,17212],{"class":4565},[3925,30664,30666,30668,30670,30672,30674,30676,30679,30681,30684],{"class":3927,"line":30665},348,[3925,30667,18246],{"class":4579},[3925,30669,4583],{"class":4508},[3925,30671,4594],{"class":4540},[3925,30673,27390],{"class":4512},[3925,30675,10922],{"class":4508},[3925,30677,30678],{"class":4521}," 'Створюємо…'",[3925,30680,10928],{"class":4508},[3925,30682,30683],{"class":4521}," 'Створити поїздку'",[3925,30685,4016],{"class":4540},[3925,30687,30689,30691,30693,30695,30698,30700,30703,30705],{"class":3927,"line":30688},349,[3925,30690,18256],{"class":4579},[3925,30692,4583],{"class":4508},[3925,30694,4594],{"class":4540},[3925,30696,30697],{"class":4544},"handleSubmit",[3925,30699,4702],{"class":4597},[3925,30701,30702],{"class":4512},"onValid",[3925,30704,4251],{"class":4597},[3925,30706,4016],{"class":4540},[3925,30708,30710,30713,30715,30717,30719],{"class":3927,"line":30709},350,[3925,30711,30712],{"class":4579},"            disabled",[3925,30714,4583],{"class":4508},[3925,30716,4594],{"class":4540},[3925,30718,27390],{"class":4512},[3925,30720,4016],{"class":4540},[3925,30722,30724],{"class":3927,"line":30723},351,[3925,30725,15595],{"class":4561},[3925,30727,30729,30731,30734,30736],{"class":3927,"line":30728},352,[3925,30730,16225],{"class":4540},[3925,30732,30733],{"class":4512},"onCancel",[3925,30735,10922],{"class":4508},[3925,30737,4556],{"class":4597},[3925,30739,30741,30743],{"class":3927,"line":30740},353,[3925,30742,7697],{"class":4561},[3925,30744,17212],{"class":4565},[3925,30746,30748,30750,30752],{"class":3927,"line":30747},354,[3925,30749,19178],{"class":4579},[3925,30751,4583],{"class":4508},[3925,30753,30754],{"class":4521},"\"Скасувати\"\n",[3925,30756,30758,30761,30763],{"class":3927,"line":30757},355,[3925,30759,30760],{"class":4579},"              variant",[3925,30762,4583],{"class":4508},[3925,30764,30765],{"class":4521},"\"secondary\"\n",[3925,30767,30769,30771,30773,30775,30777],{"class":3927,"line":30768},356,[3925,30770,19188],{"class":4579},[3925,30772,4583],{"class":4508},[3925,30774,4594],{"class":4540},[3925,30776,30733],{"class":4512},[3925,30778,4016],{"class":4540},[3925,30780,30782,30785,30787,30789,30791],{"class":3927,"line":30781},357,[3925,30783,30784],{"class":4579},"              disabled",[3925,30786,4583],{"class":4508},[3925,30788,4594],{"class":4540},[3925,30790,27390],{"class":4512},[3925,30792,4016],{"class":4540},[3925,30794,30796],{"class":3927,"line":30795},358,[3925,30797,7847],{"class":4561},[3925,30799,30801,30803,30805],{"class":3927,"line":30800},359,[3925,30802,19056],{"class":4597},[3925,30804,4974],{"class":4508},[3925,30806,15613],{"class":4540},[3925,30808,30810,30812,30814],{"class":3927,"line":30809},360,[3925,30811,8493],{"class":4561},[3925,30813,8398],{"class":4565},[3925,30815,4568],{"class":4561},[3925,30817,30819,30821,30823],{"class":3927,"line":30818},361,[3925,30820,7434],{"class":4561},[3925,30822,9486],{"class":4565},[3925,30824,4568],{"class":4561},[3925,30826,30828,30830,30832],{"class":3927,"line":30827},362,[3925,30829,4669],{"class":4561},[3925,30831,11299],{"class":4565},[3925,30833,4568],{"class":4561},[3925,30835,30837],{"class":3927,"line":30836},363,[3925,30838,4678],{"class":4508},[3925,30840,30842],{"class":3927,"line":30841},364,[3925,30843,4016],{"class":4508},[3925,30845,30847],{"class":3927,"line":30846},365,[3925,30848,3950],{"emptyLinePlaceholder":3949},[3925,30850,30852,30854,30857,30859,30861,30863,30865,30867,30869],{"class":3927,"line":30851},366,[3925,30853,6677],{"class":4540},[3925,30855,30856],{"class":4544}," daysWord",[3925,30858,4702],{"class":4508},[3925,30860,6841],{"class":4512},[3925,30862,4767],{"class":4508},[3925,30864,6476],{"class":4565},[3925,30866,6815],{"class":4508},[3925,30868,5949],{"class":4565},[3925,30870,5617],{"class":4508},[3925,30872,30874,30876,30879,30881,30884,30886,30889,30891,30893,30896,30899],{"class":3927,"line":30873},367,[3925,30875,6909],{"class":4540},[3925,30877,30878],{"class":5194}," abs",[3925,30880,5967],{"class":4508},[3925,30882,30883],{"class":4512},"Math",[3925,30885,3595],{"class":4508},[3925,30887,30888],{"class":4544},"abs",[3925,30890,4702],{"class":4508},[3925,30892,6841],{"class":4512},[3925,30894,30895],{"class":4508},") % ",[3925,30897,30898],{"class":5990},"100",[3925,30900,4525],{"class":4508},[3925,30902,30904,30906,30909,30911,30913,30916,30918],{"class":3927,"line":30903},368,[3925,30905,6909],{"class":4540},[3925,30907,30908],{"class":5194}," last",[3925,30910,5967],{"class":4508},[3925,30912,30888],{"class":4512},[3925,30914,30915],{"class":4508}," % ",[3925,30917,23675],{"class":5990},[3925,30919,4525],{"class":4508},[3925,30921,30923,30925,30927,30929,30931,30933,30935,30937,30940,30943,30945,30948,30951],{"class":3927,"line":30922},369,[3925,30924,9669],{"class":4504},[3925,30926,3576],{"class":4508},[3925,30928,30888],{"class":4512},[3925,30930,10565],{"class":4508},[3925,30932,23675],{"class":5990},[3925,30934,24353],{"class":4508},[3925,30936,30888],{"class":4512},[3925,30938,30939],{"class":4508}," \u003C ",[3925,30941,30942],{"class":5990},"20",[3925,30944,6701],{"class":4508},[3925,30946,30947],{"class":4504},"return",[3925,30949,30950],{"class":4521}," 'днів'",[3925,30952,4525],{"class":4508},[3925,30954,30956,30958,30960,30963,30965,30967,30969,30971,30974],{"class":3927,"line":30955},370,[3925,30957,9669],{"class":4504},[3925,30959,3576],{"class":4508},[3925,30961,30962],{"class":4512},"last",[3925,30964,6855],{"class":4508},[3925,30966,23792],{"class":5990},[3925,30968,6701],{"class":4508},[3925,30970,30947],{"class":4504},[3925,30972,30973],{"class":4521}," 'день'",[3925,30975,4525],{"class":4508},[3925,30977,30979,30981,30983,30985,30988,30990,30992,30994,30997,30999,31001,31003,31006],{"class":3927,"line":30978},371,[3925,30980,9669],{"class":4504},[3925,30982,3576],{"class":4508},[3925,30984,30962],{"class":4512},[3925,30986,30987],{"class":4508}," >= ",[3925,30989,8811],{"class":5990},[3925,30991,24353],{"class":4508},[3925,30993,30962],{"class":4512},[3925,30995,30996],{"class":4508}," \u003C= ",[3925,30998,29288],{"class":5990},[3925,31000,6701],{"class":4508},[3925,31002,30947],{"class":4504},[3925,31004,31005],{"class":4521}," 'дні'",[3925,31007,4525],{"class":4508},[3925,31009,31011,31013,31015],{"class":3927,"line":31010},372,[3925,31012,4553],{"class":4504},[3925,31014,30950],{"class":4521},[3925,31016,4525],{"class":4508},[3925,31018,31020],{"class":3927,"line":31019},373,[3925,31021,4016],{"class":4508},[3925,31023,31025],{"class":3927,"line":31024},374,[3925,31026,3950],{"emptyLinePlaceholder":3949},[3925,31028,31030,31032,31034,31036,31038,31040,31042],{"class":3927,"line":31029},375,[3925,31031,5930],{"class":4540},[3925,31033,9037],{"class":5194},[3925,31035,5967],{"class":4508},[3925,31037,9042],{"class":4512},[3925,31039,3595],{"class":4508},[3925,31041,9047],{"class":4544},[3925,31043,9050],{"class":4508},[3925,31045,31047,31049],{"class":3927,"line":31046},376,[3925,31048,11334],{"class":4512},[3925,31050,5617],{"class":4508},[3925,31052,31054,31056,31058],{"class":3927,"line":31053},377,[3925,31055,10105],{"class":4512},[3925,31057,9064],{"class":5990},[3925,31059,5051],{"class":4508},[3925,31061,31063],{"class":3927,"line":31062},378,[3925,31064,6584],{"class":4508},[3925,31066,31068,31071],{"class":3927,"line":31067},379,[3925,31069,31070],{"class":4512},"  content:",[3925,31072,5617],{"class":4508},[3925,31074,31076,31079,31081],{"class":3927,"line":31075},380,[3925,31077,31078],{"class":4512},"    flexGrow:",[3925,31080,9064],{"class":5990},[3925,31082,5051],{"class":4508},[3925,31084,31086],{"class":3927,"line":31085},381,[3925,31087,6584],{"class":4508},[3925,31089,31091,31094],{"class":3927,"line":31090},382,[3925,31092,31093],{"class":4512},"  multiline:",[3925,31095,5617],{"class":4508},[3925,31097,31099,31102,31105],{"class":3927,"line":31098},383,[3925,31100,31101],{"class":4512},"    minHeight:",[3925,31103,31104],{"class":5990}," 110",[3925,31106,5051],{"class":4508},[3925,31108,31110],{"class":3927,"line":31109},384,[3925,31111,6584],{"class":4508},[3925,31113,31115,31118],{"class":3927,"line":31114},385,[3925,31116,31117],{"class":4512},"  pickerWrap:",[3925,31119,5617],{"class":4508},[3925,31121,31123,31125,31127],{"class":3927,"line":31122},386,[3925,31124,9258],{"class":4512},[3925,31126,9064],{"class":5990},[3925,31128,5051],{"class":4508},[3925,31130,31132,31135,31138],{"class":3927,"line":31131},387,[3925,31133,31134],{"class":4512},"    overflow:",[3925,31136,31137],{"class":4521}," 'hidden'",[3925,31139,5051],{"class":4508},[3925,31141,31143],{"class":3927,"line":31142},388,[3925,31144,6584],{"class":4508},[3925,31146,31148],{"class":3927,"line":31147},389,[3925,31149,5739],{"class":4508},[3916,31151,31154],{"className":4489,"code":31152,"filename":31153,"language":4491,"meta":3921,"style":3921},"import { useState } from 'react';\nimport {\n  Modal,\n  Platform,\n  Pressable,\n  StyleSheet,\n  View,\n} from 'react-native';\nimport DateTimePicker, {\n  type DateTimePickerEvent,\n} from '@react-native-community\u002Fdatetimepicker';\n\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText, Button } from '@\u002Fshared\u002Fui';\n\ntype DateFieldProps = {\n  label: string;\n  value: Date;\n  onChange: (date: Date) => void;\n  onBlur?: () => void;\n  error?: string;\n  \u002F** Мінімальна дата (наприклад, endDate ≥ startDate). *\u002F\n  minimumDate?: Date;\n  maximumDate?: Date;\n};\n\n\u002F**\n * Поле дати: натискання відкриває системний date picker.\n * iOS — spinner у Modal; Android — нативний діалог.\n *\u002F\nexport function DateField({\n  label,\n  value,\n  onChange,\n  onBlur,\n  error,\n  minimumDate,\n  maximumDate,\n}: DateFieldProps) {\n  const { colors, spacing, radius } = useTheme();\n  const [open, setOpen] = useState(false);\n  \u002F** Тимчасове значення на iOS, поки користувач крутить spinner. *\u002F\n  const [draft, setDraft] = useState(value);\n\n  const hasError = Boolean(error);\n\n  const openPicker = () => {\n    setDraft(value);\n    setOpen(true);\n  };\n\n  const closePicker = () => {\n    setOpen(false);\n    onBlur?.();\n  };\n\n  const applyIos = () => {\n    onChange(draft);\n    closePicker();\n  };\n\n  const onAndroidChange = (event: DateTimePickerEvent, selected?: Date) => {\n    \u002F\u002F Android закриває діалог сам; event.type: set | dismissed\n    setOpen(false);\n    if (event.type === 'set' && selected) {\n      onChange(selected);\n    }\n    onBlur?.();\n  };\n\n  const onIosChange = (_event: DateTimePickerEvent, selected?: Date) => {\n    if (selected) {\n      setDraft(selected);\n    }\n  };\n\n  const display = formatDisplay(value);\n\n  return (\n    \u003CView style={{ gap: spacing.xs }}>\n      \u003CAppText variant=\"caption\" style={styles.label}>\n        {label}\n      \u003C\u002FAppText>\n      \u003CPressable\n        accessibilityRole=\"button\"\n        accessibilityLabel={`${label}: ${display}`}\n        onPress={openPicker}\n        style={[\n          styles.field,\n          {\n            borderColor: hasError ? colors.danger : colors.border,\n            backgroundColor: colors.surface,\n            borderRadius: radius.md,\n            paddingVertical: spacing.sm + 4,\n            paddingHorizontal: spacing.md,\n          },\n        ]}\n      >\n        \u003CAppText>{display}\u003C\u002FAppText>\n      \u003C\u002FPressable>\n      {hasError ? (\n        \u003CAppText variant=\"caption\" color={colors.danger}>\n          {error}\n        \u003C\u002FAppText>\n      ) : null}\n\n      {\u002F* Android: системний діалог; iOS\u002Fweb: spinner у Modal *\u002F}\n      {Platform.OS === 'android' && open ? (\n        \u003CDateTimePicker\n          value={value}\n          mode=\"date\"\n          display=\"default\"\n          onChange={onAndroidChange}\n          minimumDate={minimumDate}\n          maximumDate={maximumDate}\n        \u002F>\n      ) : null}\n\n      {Platform.OS !== 'android' ? (\n        \u003CModal\n          visible={open}\n          transparent\n          animationType=\"slide\"\n          onRequestClose={closePicker}\n        >\n          \u003CPressable style={styles.backdrop} onPress={closePicker} \u002F>\n          \u003CView\n            style={[\n              styles.sheet,\n              {\n                backgroundColor: colors.surface,\n                borderColor: colors.border,\n                paddingBottom: spacing.lg,\n              },\n            ]}\n          >\n            \u003CView\n              style={[\n                styles.sheetHeader,\n                { paddingHorizontal: spacing.md, paddingTop: spacing.md },\n              ]}\n            >\n              \u003CAppText variant=\"subtitle\">{label}\u003C\u002FAppText>\n            \u003C\u002FView>\n            \u003CDateTimePicker\n              value={draft}\n              mode=\"date\"\n              display=\"spinner\"\n              onChange={onIosChange}\n              minimumDate={minimumDate}\n              maximumDate={maximumDate}\n              style={{ alignSelf: 'center' }}\n            \u002F>\n            \u003CView\n              style={[\n                styles.sheetActions,\n                { paddingHorizontal: spacing.md, gap: spacing.sm },\n              ]}\n            >\n              \u003CButton label=\"Готово\" onPress={applyIos} \u002F>\n              \u003CPressable onPress={closePicker} style={styles.cancel}>\n                \u003CAppText color={colors.textSecondary}>Скасувати\u003C\u002FAppText>\n              \u003C\u002FPressable>\n            \u003C\u002FView>\n          \u003C\u002FView>\n        \u003C\u002FModal>\n      ) : null}\n    \u003C\u002FView>\n  );\n}\n\nfunction formatDisplay(d: Date): string {\n  const dd = String(d.getDate()).padStart(2, '0');\n  const mm = String(d.getMonth() + 1).padStart(2, '0');\n  const yyyy = d.getFullYear();\n  return `${dd}.${mm}.${yyyy}`;\n}\n\nconst styles = StyleSheet.create({\n  label: {\n    fontWeight: '600',\n  },\n  field: {\n    borderWidth: 1,\n    minHeight: 48,\n    justifyContent: 'center',\n  },\n  backdrop: {\n    flex: 1,\n    backgroundColor: 'rgba(0,0,0,0.35)',\n  },\n  sheet: {\n    borderTopLeftRadius: 16,\n    borderTopRightRadius: 16,\n    borderTopWidth: 1,\n  },\n  sheetHeader: {\n    alignItems: 'center',\n  },\n  sheetActions: {\n    marginTop: 8,\n  },\n  cancel: {\n    alignItems: 'center',\n    paddingVertical: 10,\n  },\n});\n","src\u002Ffeatures\u002Ftrips\u002Fui\u002FDateField.tsx",[3521,31155,31156,31172,31178,31185,31191,31197,31203,31209,31219,31228,31237,31248,31252,31268,31288,31292,31301,31312,31323,31344,31357,31368,31373,31384,31395,31399,31403,31407,31412,31417,31421,31432,31438,31444,31450,31456,31462,31468,31474,31483,31505,31529,31534,31558,31562,31580,31584,31597,31608,31619,31623,31627,31640,31650,31658,31662,31666,31679,31690,31697,31701,31705,31737,31742,31752,31775,31786,31790,31796,31800,31804,31834,31844,31855,31859,31863,31867,31885,31889,31895,31923,31951,31959,31967,31973,31982,32012,32026,32036,32046,32050,32076,32088,32101,32118,32130,32134,32140,32144,32164,32172,32183,32211,32219,32227,32235,32239,32248,32273,32280,32292,32302,32312,32326,32340,32354,32358,32366,32370,32389,32396,32409,32414,32424,32438,32442,32475,32481,32491,32503,32508,32521,32534,32547,32552,32559,32563,32569,32579,32590,32617,32623,32627,32653,32661,32667,32679,32688,32698,32711,32723,32736,32755,32759,32765,32775,32786,32810,32816,32820,32847,32880,32911,32919,32927,32935,32944,32952,32960,32964,32968,32972,32993,33029,33066,33083,33118,33122,33126,33142,33148,33156,33160,33167,33175,33184,33192,33196,33203,33211,33220,33224,33231,33240,33249,33257,33261,33268,33276,33280,33287,33295,33299,33306,33314,33322,33326],{"__ignoreMap":3921},[3925,31157,31158,31160,31162,31164,31166,31168,31170],{"class":3927,"line":3928},[3925,31159,4505],{"class":4504},[3925,31161,4509],{"class":4508},[3925,31163,5552],{"class":4512},[3925,31165,4515],{"class":4508},[3925,31167,4518],{"class":4504},[3925,31169,8122],{"class":4521},[3925,31171,4525],{"class":4508},[3925,31173,31174,31176],{"class":3927,"line":3934},[3925,31175,4505],{"class":4504},[3925,31177,5617],{"class":4508},[3925,31179,31180,31183],{"class":3927,"line":3940},[3925,31181,31182],{"class":4512},"  Modal",[3925,31184,5051],{"class":4508},[3925,31186,31187,31189],{"class":3927,"line":3946},[3925,31188,10295],{"class":4512},[3925,31190,5051],{"class":4508},[3925,31192,31193,31195],{"class":3927,"line":3953},[3925,31194,8142],{"class":4512},[3925,31196,5051],{"class":4508},[3925,31198,31199,31201],{"class":3927,"line":3959},[3925,31200,8149],{"class":4512},[3925,31202,5051],{"class":4508},[3925,31204,31205,31207],{"class":3927,"line":3965},[3925,31206,8163],{"class":4512},[3925,31208,5051],{"class":4508},[3925,31210,31211,31213,31215,31217],{"class":3927,"line":3971},[3925,31212,8170],{"class":4508},[3925,31214,4518],{"class":4504},[3925,31216,8175],{"class":4521},[3925,31218,4525],{"class":4508},[3925,31220,31221,31223,31226],{"class":3927,"line":3977},[3925,31222,4505],{"class":4504},[3925,31224,31225],{"class":4512}," DateTimePicker",[3925,31227,23627],{"class":4508},[3925,31229,31230,31232,31235],{"class":3927,"line":3983},[3925,31231,14608],{"class":4504},[3925,31233,31234],{"class":4512}," DateTimePickerEvent",[3925,31236,5051],{"class":4508},[3925,31238,31239,31241,31243,31246],{"class":3927,"line":3989},[3925,31240,8170],{"class":4508},[3925,31242,4518],{"class":4504},[3925,31244,31245],{"class":4521}," '@react-native-community\u002Fdatetimepicker'",[3925,31247,4525],{"class":4508},[3925,31249,31250],{"class":3927,"line":3995},[3925,31251,3950],{"emptyLinePlaceholder":3949},[3925,31253,31254,31256,31258,31260,31262,31264,31266],{"class":3927,"line":4001},[3925,31255,4505],{"class":4504},[3925,31257,4509],{"class":4508},[3925,31259,13148],{"class":4512},[3925,31261,4515],{"class":4508},[3925,31263,4518],{"class":4504},[3925,31265,13155],{"class":4521},[3925,31267,4525],{"class":4508},[3925,31269,31270,31272,31274,31276,31278,31280,31282,31284,31286],{"class":3927,"line":4007},[3925,31271,4505],{"class":4504},[3925,31273,4509],{"class":4508},[3925,31275,14664],{"class":4512},[3925,31277,4191],{"class":4508},[3925,31279,14669],{"class":4512},[3925,31281,4515],{"class":4508},[3925,31283,4518],{"class":4504},[3925,31285,14681],{"class":4521},[3925,31287,4525],{"class":4508},[3925,31289,31290],{"class":3927,"line":4013},[3925,31291,3950],{"emptyLinePlaceholder":3949},[3925,31293,31294,31296,31299],{"class":3927,"line":4019},[3925,31295,6491],{"class":4540},[3925,31297,31298],{"class":4565}," DateFieldProps",[3925,31300,5198],{"class":4508},[3925,31302,31303,31306,31308,31310],{"class":3927,"line":4024},[3925,31304,31305],{"class":4512},"  label",[3925,31307,4767],{"class":4508},[3925,31309,5949],{"class":4565},[3925,31311,4525],{"class":4508},[3925,31313,31314,31317,31319,31321],{"class":3927,"line":4030},[3925,31315,31316],{"class":4512},"  value",[3925,31318,4767],{"class":4508},[3925,31320,6931],{"class":4565},[3925,31322,4525],{"class":4508},[3925,31324,31325,31328,31330,31332,31334,31336,31338,31340,31342],{"class":3927,"line":4036},[3925,31326,31327],{"class":4544},"  onChange",[3925,31329,24721],{"class":4508},[3925,31331,23712],{"class":4512},[3925,31333,4767],{"class":4508},[3925,31335,6931],{"class":4565},[3925,31337,6701],{"class":4508},[3925,31339,5614],{"class":4540},[3925,31341,6502],{"class":4565},[3925,31343,4525],{"class":4508},[3925,31345,31346,31349,31351,31353,31355],{"class":3927,"line":4041},[3925,31347,31348],{"class":4544},"  onBlur",[3925,31350,27132],{"class":4508},[3925,31352,5614],{"class":4540},[3925,31354,6502],{"class":4565},[3925,31356,4525],{"class":4508},[3925,31358,31359,31362,31364,31366],{"class":3927,"line":4047},[3925,31360,31361],{"class":4512},"  error",[3925,31363,23205],{"class":4508},[3925,31365,5949],{"class":4565},[3925,31367,4525],{"class":4508},[3925,31369,31370],{"class":3927,"line":4053},[3925,31371,31372],{"class":4498},"  \u002F** Мінімальна дата (наприклад, endDate ≥ startDate). *\u002F\n",[3925,31374,31375,31378,31380,31382],{"class":3927,"line":4059},[3925,31376,31377],{"class":4512},"  minimumDate",[3925,31379,23205],{"class":4508},[3925,31381,6931],{"class":4565},[3925,31383,4525],{"class":4508},[3925,31385,31386,31389,31391,31393],{"class":3927,"line":4065},[3925,31387,31388],{"class":4512},"  maximumDate",[3925,31390,23205],{"class":4508},[3925,31392,6931],{"class":4565},[3925,31394,4525],{"class":4508},[3925,31396,31397],{"class":3927,"line":4070},[3925,31398,5213],{"class":4508},[3925,31400,31401],{"class":3927,"line":4076},[3925,31402,3950],{"emptyLinePlaceholder":3949},[3925,31404,31405],{"class":3927,"line":4082},[3925,31406,13166],{"class":4498},[3925,31408,31409],{"class":3927,"line":4088},[3925,31410,31411],{"class":4498}," * Поле дати: натискання відкриває системний date picker.\n",[3925,31413,31414],{"class":3927,"line":4093},[3925,31415,31416],{"class":4498}," * iOS — spinner у Modal; Android — нативний діалог.\n",[3925,31418,31419],{"class":3927,"line":4098},[3925,31420,13196],{"class":4498},[3925,31422,31423,31425,31427,31430],{"class":3927,"line":6720},[3925,31424,4534],{"class":4504},[3925,31426,4541],{"class":4540},[3925,31428,31429],{"class":4544}," DateField",[3925,31431,9050],{"class":4508},[3925,31433,31434,31436],{"class":3927,"line":6738},[3925,31435,31305],{"class":4512},[3925,31437,5051],{"class":4508},[3925,31439,31440,31442],{"class":3927,"line":6787},[3925,31441,31316],{"class":4512},[3925,31443,5051],{"class":4508},[3925,31445,31446,31448],{"class":3927,"line":6792},[3925,31447,31327],{"class":4512},[3925,31449,5051],{"class":4508},[3925,31451,31452,31454],{"class":3927,"line":6797},[3925,31453,31348],{"class":4512},[3925,31455,5051],{"class":4508},[3925,31457,31458,31460],{"class":3927,"line":6827},[3925,31459,31361],{"class":4512},[3925,31461,5051],{"class":4508},[3925,31463,31464,31466],{"class":3927,"line":6862},[3925,31465,31377],{"class":4512},[3925,31467,5051],{"class":4508},[3925,31469,31470,31472],{"class":3927,"line":6867},[3925,31471,31388],{"class":4512},[3925,31473,5051],{"class":4508},[3925,31475,31476,31478,31481],{"class":3927,"line":6872},[3925,31477,27354],{"class":4508},[3925,31479,31480],{"class":4565},"DateFieldProps",[3925,31482,6049],{"class":4508},[3925,31484,31485,31487,31489,31491,31493,31495,31497,31499,31501,31503],{"class":3927,"line":6906},[3925,31486,6909],{"class":4540},[3925,31488,4509],{"class":4508},[3925,31490,13240],{"class":5194},[3925,31492,4191],{"class":4508},[3925,31494,14837],{"class":5194},[3925,31496,4191],{"class":4508},[3925,31498,17960],{"class":5194},[3925,31500,5937],{"class":4508},[3925,31502,13148],{"class":4544},[3925,31504,7020],{"class":4508},[3925,31506,31507,31509,31511,31514,31516,31519,31521,31523,31525,31527],{"class":3927,"line":6921},[3925,31508,6909],{"class":4540},[3925,31510,8272],{"class":4508},[3925,31512,31513],{"class":5194},"open",[3925,31515,4191],{"class":4508},[3925,31517,31518],{"class":5194},"setOpen",[3925,31520,8282],{"class":4508},[3925,31522,5552],{"class":4544},[3925,31524,4702],{"class":4508},[3925,31526,10525],{"class":4540},[3925,31528,4724],{"class":4508},[3925,31530,31531],{"class":3927,"line":6941},[3925,31532,31533],{"class":4498},"  \u002F** Тимчасове значення на iOS, поки користувач крутить spinner. *\u002F\n",[3925,31535,31536,31538,31540,31543,31545,31548,31550,31552,31554,31556],{"class":3927,"line":6962},[3925,31537,6909],{"class":4540},[3925,31539,8272],{"class":4508},[3925,31541,31542],{"class":5194},"draft",[3925,31544,4191],{"class":4508},[3925,31546,31547],{"class":5194},"setDraft",[3925,31549,8282],{"class":4508},[3925,31551,5552],{"class":4544},[3925,31553,4702],{"class":4508},[3925,31555,25164],{"class":4512},[3925,31557,4724],{"class":4508},[3925,31559,31560],{"class":3927,"line":6977},[3925,31561,3950],{"emptyLinePlaceholder":3949},[3925,31563,31564,31566,31569,31571,31573,31575,31578],{"class":3927,"line":6990},[3925,31565,6909],{"class":4540},[3925,31567,31568],{"class":5194}," hasError",[3925,31570,5967],{"class":4508},[3925,31572,30449],{"class":4544},[3925,31574,4702],{"class":4508},[3925,31576,31577],{"class":4512},"error",[3925,31579,4724],{"class":4508},[3925,31581,31582],{"class":3927,"line":6996},[3925,31583,3950],{"emptyLinePlaceholder":3949},[3925,31585,31586,31588,31591,31593,31595],{"class":3927,"line":7014},[3925,31587,6909],{"class":4540},[3925,31589,31590],{"class":4544}," openPicker",[3925,31592,6497],{"class":4508},[3925,31594,5614],{"class":4540},[3925,31596,5617],{"class":4508},[3925,31598,31599,31602,31604,31606],{"class":3927,"line":7023},[3925,31600,31601],{"class":4544},"    setDraft",[3925,31603,4702],{"class":4508},[3925,31605,25164],{"class":4512},[3925,31607,4724],{"class":4508},[3925,31609,31610,31613,31615,31617],{"class":3927,"line":7032},[3925,31611,31612],{"class":4544},"    setOpen",[3925,31614,4702],{"class":4508},[3925,31616,10823],{"class":4540},[3925,31618,4724],{"class":4508},[3925,31620,31621],{"class":3927,"line":7037},[3925,31622,6993],{"class":4508},[3925,31624,31625],{"class":3927,"line":7042},[3925,31626,3950],{"emptyLinePlaceholder":3949},[3925,31628,31629,31631,31634,31636,31638],{"class":3927,"line":7070},[3925,31630,6909],{"class":4540},[3925,31632,31633],{"class":4544}," closePicker",[3925,31635,6497],{"class":4508},[3925,31637,5614],{"class":4540},[3925,31639,5617],{"class":4508},[3925,31641,31642,31644,31646,31648],{"class":3927,"line":7086},[3925,31643,31612],{"class":4544},[3925,31645,4702],{"class":4508},[3925,31647,10525],{"class":4540},[3925,31649,4724],{"class":4508},[3925,31651,31652,31655],{"class":3927,"line":7097},[3925,31653,31654],{"class":4544},"    onBlur",[3925,31656,31657],{"class":4508},"?.();\n",[3925,31659,31660],{"class":3927,"line":7114},[3925,31661,6993],{"class":4508},[3925,31663,31664],{"class":3927,"line":7119},[3925,31665,3950],{"emptyLinePlaceholder":3949},[3925,31667,31668,31670,31673,31675,31677],{"class":3927,"line":9008},[3925,31669,6909],{"class":4540},[3925,31671,31672],{"class":4544}," applyIos",[3925,31674,6497],{"class":4508},[3925,31676,5614],{"class":4540},[3925,31678,5617],{"class":4508},[3925,31680,31681,31684,31686,31688],{"class":3927,"line":9017},[3925,31682,31683],{"class":4544},"    onChange",[3925,31685,4702],{"class":4508},[3925,31687,31542],{"class":4512},[3925,31689,4724],{"class":4508},[3925,31691,31692,31695],{"class":3927,"line":9022},[3925,31693,31694],{"class":4544},"    closePicker",[3925,31696,7020],{"class":4508},[3925,31698,31699],{"class":3927,"line":9027},[3925,31700,6993],{"class":4508},[3925,31702,31703],{"class":3927,"line":9032},[3925,31704,3950],{"emptyLinePlaceholder":3949},[3925,31706,31707,31709,31712,31714,31717,31719,31722,31724,31727,31729,31731,31733,31735],{"class":3927,"line":9053},[3925,31708,6909],{"class":4540},[3925,31710,31711],{"class":4544}," onAndroidChange",[3925,31713,23407],{"class":4508},[3925,31715,31716],{"class":4512},"event",[3925,31718,4767],{"class":4508},[3925,31720,31721],{"class":4565},"DateTimePickerEvent",[3925,31723,4191],{"class":4508},[3925,31725,31726],{"class":4512},"selected",[3925,31728,23205],{"class":4508},[3925,31730,6931],{"class":4565},[3925,31732,6701],{"class":4508},[3925,31734,5614],{"class":4540},[3925,31736,5617],{"class":4508},[3925,31738,31739],{"class":3927,"line":9075},[3925,31740,31741],{"class":4498},"    \u002F\u002F Android закриває діалог сам; event.type: set | dismissed\n",[3925,31743,31744,31746,31748,31750],{"class":3927,"line":9083},[3925,31745,31612],{"class":4544},[3925,31747,4702],{"class":4508},[3925,31749,10525],{"class":4540},[3925,31751,4724],{"class":4508},[3925,31753,31754,31756,31758,31760,31762,31764,31766,31769,31771,31773],{"class":3927,"line":9094},[3925,31755,10746],{"class":4504},[3925,31757,3576],{"class":4508},[3925,31759,31716],{"class":4512},[3925,31761,3595],{"class":4508},[3925,31763,6491],{"class":4512},[3925,31765,6855],{"class":4508},[3925,31767,31768],{"class":4521},"'set'",[3925,31770,24353],{"class":4508},[3925,31772,31726],{"class":4512},[3925,31774,6049],{"class":4508},[3925,31776,31777,31780,31782,31784],{"class":3927,"line":9105},[3925,31778,31779],{"class":4544},"      onChange",[3925,31781,4702],{"class":4508},[3925,31783,31726],{"class":4512},[3925,31785,4724],{"class":4508},[3925,31787,31788],{"class":3927,"line":9115},[3925,31789,3986],{"class":4508},[3925,31791,31792,31794],{"class":3927,"line":9125},[3925,31793,31654],{"class":4544},[3925,31795,31657],{"class":4508},[3925,31797,31798],{"class":3927,"line":9135},[3925,31799,6993],{"class":4508},[3925,31801,31802],{"class":3927,"line":9140},[3925,31803,3950],{"emptyLinePlaceholder":3949},[3925,31805,31806,31808,31811,31813,31816,31818,31820,31822,31824,31826,31828,31830,31832],{"class":3927,"line":9168},[3925,31807,6909],{"class":4540},[3925,31809,31810],{"class":4544}," onIosChange",[3925,31812,23407],{"class":4508},[3925,31814,31815],{"class":4512},"_event",[3925,31817,4767],{"class":4508},[3925,31819,31721],{"class":4565},[3925,31821,4191],{"class":4508},[3925,31823,31726],{"class":4512},[3925,31825,23205],{"class":4508},[3925,31827,6931],{"class":4565},[3925,31829,6701],{"class":4508},[3925,31831,5614],{"class":4540},[3925,31833,5617],{"class":4508},[3925,31835,31836,31838,31840,31842],{"class":3927,"line":9197},[3925,31837,10746],{"class":4504},[3925,31839,3576],{"class":4508},[3925,31841,31726],{"class":4512},[3925,31843,6049],{"class":4508},[3925,31845,31846,31849,31851,31853],{"class":3927,"line":9226},[3925,31847,31848],{"class":4544},"      setDraft",[3925,31850,4702],{"class":4508},[3925,31852,31726],{"class":4512},[3925,31854,4724],{"class":4508},[3925,31856,31857],{"class":3927,"line":9234},[3925,31858,3986],{"class":4508},[3925,31860,31861],{"class":3927,"line":9245},[3925,31862,6993],{"class":4508},[3925,31864,31865],{"class":3927,"line":9255},[3925,31866,3950],{"emptyLinePlaceholder":3949},[3925,31868,31869,31871,31874,31876,31879,31881,31883],{"class":3927,"line":9265},[3925,31870,6909],{"class":4540},[3925,31872,31873],{"class":5194}," display",[3925,31875,5967],{"class":4508},[3925,31877,31878],{"class":4544},"formatDisplay",[3925,31880,4702],{"class":4508},[3925,31882,25164],{"class":4512},[3925,31884,4724],{"class":4508},[3925,31886,31887],{"class":3927,"line":9275},[3925,31888,3950],{"emptyLinePlaceholder":3949},[3925,31890,31891,31893],{"class":3927,"line":9286},[3925,31892,4553],{"class":4504},[3925,31894,4556],{"class":4508},[3925,31896,31897,31899,31901,31903,31905,31907,31909,31911,31913,31915,31917,31919,31921],{"class":3927,"line":9291},[3925,31898,4562],{"class":4561},[3925,31900,8398],{"class":4565},[3925,31902,7232],{"class":4579},[3925,31904,4583],{"class":4508},[3925,31906,4594],{"class":4540},[3925,31908,4598],{"class":4597},[3925,31910,11369],{"class":4512},[3925,31912,15307],{"class":4512},[3925,31914,3595],{"class":4597},[3925,31916,16010],{"class":4512},[3925,31918,4607],{"class":4597},[3925,31920,4610],{"class":4540},[3925,31922,4568],{"class":4561},[3925,31924,31925,31927,31929,31931,31933,31935,31937,31939,31941,31943,31945,31947,31949],{"class":3927,"line":9319},[3925,31926,4573],{"class":4561},[3925,31928,14664],{"class":4565},[3925,31930,15773],{"class":4579},[3925,31932,4583],{"class":4508},[3925,31934,16084],{"class":4521},[3925,31936,7232],{"class":4579},[3925,31938,4583],{"class":4508},[3925,31940,4594],{"class":4540},[3925,31942,8365],{"class":4512},[3925,31944,3595],{"class":4597},[3925,31946,11017],{"class":4512},[3925,31948,4610],{"class":4540},[3925,31950,4568],{"class":4561},[3925,31952,31953,31955,31957],{"class":3927,"line":9346},[3925,31954,19510],{"class":4540},[3925,31956,11017],{"class":4512},[3925,31958,4016],{"class":4540},[3925,31960,31961,31963,31965],{"class":3927,"line":9354},[3925,31962,7434],{"class":4561},[3925,31964,14664],{"class":4565},[3925,31966,4568],{"class":4561},[3925,31968,31969,31971],{"class":3927,"line":9363},[3925,31970,4573],{"class":4561},[3925,31972,8906],{"class":4565},[3925,31974,31975,31978,31980],{"class":3927,"line":9373},[3925,31976,31977],{"class":4579},"        accessibilityRole",[3925,31979,4583],{"class":4508},[3925,31981,16554],{"class":4521},[3925,31983,31984,31987,31989,31991,31993,31995,31997,31999,32001,32003,32006,32008,32010],{"class":3927,"line":9383},[3925,31985,31986],{"class":4579},"        accessibilityLabel",[3925,31988,4583],{"class":4508},[3925,31990,4594],{"class":4540},[3925,31992,4721],{"class":4521},[3925,31994,4708],{"class":4540},[3925,31996,11017],{"class":4512},[3925,31998,4610],{"class":4540},[3925,32000,4767],{"class":4521},[3925,32002,4708],{"class":4540},[3925,32004,32005],{"class":4512},"display",[3925,32007,4610],{"class":4540},[3925,32009,4721],{"class":4521},[3925,32011,4016],{"class":4540},[3925,32013,32014,32017,32019,32021,32024],{"class":3927,"line":9388},[3925,32015,32016],{"class":4579},"        onPress",[3925,32018,4583],{"class":4508},[3925,32020,4594],{"class":4540},[3925,32022,32023],{"class":4512},"openPicker",[3925,32025,4016],{"class":4540},[3925,32027,32028,32030,32032,32034],{"class":3927,"line":9396},[3925,32029,15847],{"class":4579},[3925,32031,4583],{"class":4508},[3925,32033,4594],{"class":4540},[3925,32035,15693],{"class":4597},[3925,32037,32038,32040,32042,32044],{"class":3927,"line":9405},[3925,32039,15943],{"class":4512},[3925,32041,3595],{"class":4597},[3925,32043,4760],{"class":4512},[3925,32045,5051],{"class":4597},[3925,32047,32048],{"class":3927,"line":9415},[3925,32049,15955],{"class":4597},[3925,32051,32052,32055,32057,32059,32061,32063,32066,32068,32070,32072,32074],{"class":3927,"line":9424},[3925,32053,32054],{"class":4512},"            borderColor:",[3925,32056,31568],{"class":4512},[3925,32058,10922],{"class":4508},[3925,32060,13324],{"class":4512},[3925,32062,3595],{"class":4597},[3925,32064,32065],{"class":4512},"danger",[3925,32067,10928],{"class":4508},[3925,32069,13324],{"class":4512},[3925,32071,3595],{"class":4597},[3925,32073,13783],{"class":4512},[3925,32075,5051],{"class":4597},[3925,32077,32078,32080,32082,32084,32086],{"class":3927,"line":9435},[3925,32079,17179],{"class":4512},[3925,32081,13324],{"class":4512},[3925,32083,3595],{"class":4597},[3925,32085,16513],{"class":4512},[3925,32087,5051],{"class":4597},[3925,32089,32090,32093,32095,32097,32099],{"class":3927,"line":9440},[3925,32091,32092],{"class":4512},"            borderRadius:",[3925,32094,19404],{"class":4512},[3925,32096,3595],{"class":4597},[3925,32098,15312],{"class":4512},[3925,32100,5051],{"class":4597},[3925,32102,32103,32106,32108,32110,32112,32114,32116],{"class":3927,"line":9460},[3925,32104,32105],{"class":4512},"            paddingVertical:",[3925,32107,15307],{"class":4512},[3925,32109,3595],{"class":4597},[3925,32111,15372],{"class":4512},[3925,32113,22187],{"class":4508},[3925,32115,9179],{"class":5990},[3925,32117,5051],{"class":4597},[3925,32119,32120,32122,32124,32126,32128],{"class":3927,"line":11409},[3925,32121,15961],{"class":4512},[3925,32123,15307],{"class":4512},[3925,32125,3595],{"class":4597},[3925,32127,15312],{"class":4512},[3925,32129,5051],{"class":4597},[3925,32131,32132],{"class":3927,"line":11418},[3925,32133,16032],{"class":4597},[3925,32135,32136,32138],{"class":3927,"line":11427},[3925,32137,16038],{"class":4597},[3925,32139,4016],{"class":4540},[3925,32141,32142],{"class":3927,"line":11437},[3925,32143,7330],{"class":4561},[3925,32145,32146,32148,32150,32152,32154,32156,32158,32160,32162],{"class":3927,"line":11446},[3925,32147,7335],{"class":4561},[3925,32149,14664],{"class":4565},[3925,32151,8439],{"class":4561},[3925,32153,4594],{"class":4540},[3925,32155,32005],{"class":4512},[3925,32157,4610],{"class":4540},[3925,32159,8445],{"class":4561},[3925,32161,14664],{"class":4565},[3925,32163,4568],{"class":4561},[3925,32165,32166,32168,32170],{"class":3927,"line":11457},[3925,32167,7434],{"class":4561},[3925,32169,8724],{"class":4565},[3925,32171,4568],{"class":4561},[3925,32173,32174,32176,32179,32181],{"class":3927,"line":11462},[3925,32175,15333],{"class":4540},[3925,32177,32178],{"class":4512},"hasError",[3925,32180,10922],{"class":4508},[3925,32182,4556],{"class":4597},[3925,32184,32185,32187,32189,32191,32193,32195,32197,32199,32201,32203,32205,32207,32209],{"class":3927,"line":11470},[3925,32186,7335],{"class":4561},[3925,32188,14664],{"class":4565},[3925,32190,15773],{"class":4579},[3925,32192,4583],{"class":4508},[3925,32194,16084],{"class":4521},[3925,32196,7720],{"class":4579},[3925,32198,4583],{"class":4508},[3925,32200,4594],{"class":4540},[3925,32202,13240],{"class":4512},[3925,32204,3595],{"class":4597},[3925,32206,32065],{"class":4512},[3925,32208,4610],{"class":4540},[3925,32210,4568],{"class":4561},[3925,32212,32213,32215,32217],{"class":3927,"line":11479},[3925,32214,16225],{"class":4540},[3925,32216,31577],{"class":4512},[3925,32218,4016],{"class":4540},[3925,32220,32221,32223,32225],{"class":3927,"line":11488},[3925,32222,8493],{"class":4561},[3925,32224,14664],{"class":4565},[3925,32226,4568],{"class":4561},[3925,32228,32229,32231,32233],{"class":3927,"line":11497},[3925,32230,15608],{"class":4597},[3925,32232,4974],{"class":4508},[3925,32234,15613],{"class":4540},[3925,32236,32237],{"class":3927,"line":11506},[3925,32238,3950],{"emptyLinePlaceholder":3949},[3925,32240,32241,32243,32246],{"class":3927,"line":11515},[3925,32242,15333],{"class":4540},[3925,32244,32245],{"class":4498},"\u002F* Android: системний діалог; iOS\u002Fweb: spinner у Modal *\u002F",[3925,32247,4016],{"class":4540},[3925,32249,32250,32252,32254,32256,32258,32260,32263,32266,32269,32271],{"class":3927,"line":11524},[3925,32251,15333],{"class":4540},[3925,32253,10908],{"class":4512},[3925,32255,3595],{"class":4597},[3925,32257,10913],{"class":5194},[3925,32259,10916],{"class":4508},[3925,32261,32262],{"class":4521}," 'android'",[3925,32264,32265],{"class":4508}," &&",[3925,32267,32268],{"class":4512}," open",[3925,32270,10922],{"class":4508},[3925,32272,4556],{"class":4597},[3925,32274,32275,32277],{"class":3927,"line":11533},[3925,32276,7335],{"class":4561},[3925,32278,32279],{"class":4565},"DateTimePicker\n",[3925,32281,32282,32284,32286,32288,32290],{"class":3927,"line":11542},[3925,32283,11059],{"class":4579},[3925,32285,4583],{"class":4508},[3925,32287,4594],{"class":4540},[3925,32289,25164],{"class":4512},[3925,32291,4016],{"class":4540},[3925,32293,32294,32297,32299],{"class":3927,"line":11547},[3925,32295,32296],{"class":4579},"          mode",[3925,32298,4583],{"class":4508},[3925,32300,32301],{"class":4521},"\"date\"\n",[3925,32303,32304,32307,32309],{"class":3927,"line":11563},[3925,32305,32306],{"class":4579},"          display",[3925,32308,4583],{"class":4508},[3925,32310,32311],{"class":4521},"\"default\"\n",[3925,32313,32314,32317,32319,32321,32324],{"class":3927,"line":11570},[3925,32315,32316],{"class":4579},"          onChange",[3925,32318,4583],{"class":4508},[3925,32320,4594],{"class":4540},[3925,32322,32323],{"class":4512},"onAndroidChange",[3925,32325,4016],{"class":4540},[3925,32327,32328,32331,32333,32335,32338],{"class":3927,"line":11580},[3925,32329,32330],{"class":4579},"          minimumDate",[3925,32332,4583],{"class":4508},[3925,32334,4594],{"class":4540},[3925,32336,32337],{"class":4512},"minimumDate",[3925,32339,4016],{"class":4540},[3925,32341,32342,32345,32347,32349,32352],{"class":3927,"line":11589},[3925,32343,32344],{"class":4579},"          maximumDate",[3925,32346,4583],{"class":4508},[3925,32348,4594],{"class":4540},[3925,32350,32351],{"class":4512},"maximumDate",[3925,32353,4016],{"class":4540},[3925,32355,32356],{"class":3927,"line":11598},[3925,32357,7429],{"class":4561},[3925,32359,32360,32362,32364],{"class":3927,"line":11607},[3925,32361,15608],{"class":4597},[3925,32363,4974],{"class":4508},[3925,32365,15613],{"class":4540},[3925,32367,32368],{"class":3927,"line":11616},[3925,32369,3950],{"emptyLinePlaceholder":3949},[3925,32371,32372,32374,32376,32378,32380,32383,32385,32387],{"class":3927,"line":11621},[3925,32373,15333],{"class":4540},[3925,32375,10908],{"class":4512},[3925,32377,3595],{"class":4597},[3925,32379,10913],{"class":5194},[3925,32381,32382],{"class":4508}," !==",[3925,32384,32262],{"class":4521},[3925,32386,10922],{"class":4508},[3925,32388,4556],{"class":4597},[3925,32390,32391,32393],{"class":3927,"line":11640},[3925,32392,7335],{"class":4561},[3925,32394,32395],{"class":4565},"Modal\n",[3925,32397,32398,32401,32403,32405,32407],{"class":3927,"line":15952},[3925,32399,32400],{"class":4579},"          visible",[3925,32402,4583],{"class":4508},[3925,32404,4594],{"class":4540},[3925,32406,31513],{"class":4512},[3925,32408,4016],{"class":4540},[3925,32410,32411],{"class":3927,"line":15958},[3925,32412,32413],{"class":4579},"          transparent\n",[3925,32415,32416,32419,32421],{"class":3927,"line":15972},[3925,32417,32418],{"class":4579},"          animationType",[3925,32420,4583],{"class":4508},[3925,32422,32423],{"class":4521},"\"slide\"\n",[3925,32425,32426,32429,32431,32433,32436],{"class":3927,"line":15986},[3925,32427,32428],{"class":4579},"          onRequestClose",[3925,32430,4583],{"class":4508},[3925,32432,4594],{"class":4540},[3925,32434,32435],{"class":4512},"closePicker",[3925,32437,4016],{"class":4540},[3925,32439,32440],{"class":3927,"line":16000},[3925,32441,8957],{"class":4561},[3925,32443,32444,32446,32448,32450,32452,32454,32456,32458,32461,32463,32465,32467,32469,32471,32473],{"class":3927,"line":16015},[3925,32445,8630],{"class":4561},[3925,32447,8724],{"class":4565},[3925,32449,7232],{"class":4579},[3925,32451,4583],{"class":4508},[3925,32453,4594],{"class":4540},[3925,32455,8365],{"class":4512},[3925,32457,3595],{"class":4597},[3925,32459,32460],{"class":4512},"backdrop",[3925,32462,4610],{"class":4540},[3925,32464,9784],{"class":4579},[3925,32466,4583],{"class":4508},[3925,32468,4594],{"class":4540},[3925,32470,32435],{"class":4512},[3925,32472,4610],{"class":4540},[3925,32474,4613],{"class":4561},[3925,32476,32477,32479],{"class":3927,"line":16029},[3925,32478,8630],{"class":4561},[3925,32480,15682],{"class":4565},[3925,32482,32483,32485,32487,32489],{"class":3927,"line":16035},[3925,32484,18171],{"class":4579},[3925,32486,4583],{"class":4508},[3925,32488,4594],{"class":4540},[3925,32490,15693],{"class":4597},[3925,32492,32493,32496,32498,32501],{"class":3927,"line":16043},[3925,32494,32495],{"class":4512},"              styles",[3925,32497,3595],{"class":4597},[3925,32499,32500],{"class":4512},"sheet",[3925,32502,5051],{"class":4597},[3925,32504,32505],{"class":3927,"line":16048},[3925,32506,32507],{"class":4597},"              {\n",[3925,32509,32510,32513,32515,32517,32519],{"class":3927,"line":16073},[3925,32511,32512],{"class":4512},"                backgroundColor:",[3925,32514,13324],{"class":4512},[3925,32516,3595],{"class":4597},[3925,32518,16513],{"class":4512},[3925,32520,5051],{"class":4597},[3925,32522,32523,32526,32528,32530,32532],{"class":3927,"line":16109},[3925,32524,32525],{"class":4512},"                borderColor:",[3925,32527,13324],{"class":4512},[3925,32529,3595],{"class":4597},[3925,32531,13783],{"class":4512},[3925,32533,5051],{"class":4597},[3925,32535,32536,32539,32541,32543,32545],{"class":3927,"line":16135},[3925,32537,32538],{"class":4512},"                paddingBottom:",[3925,32540,15307],{"class":4512},[3925,32542,3595],{"class":4597},[3925,32544,18105],{"class":4512},[3925,32546,5051],{"class":4597},[3925,32548,32549],{"class":3927,"line":16144},[3925,32550,32551],{"class":4597},"              },\n",[3925,32553,32554,32557],{"class":3927,"line":16151},[3925,32555,32556],{"class":4597},"            ]",[3925,32558,4016],{"class":4540},[3925,32560,32561],{"class":3927,"line":16161},[3925,32562,18201],{"class":4561},[3925,32564,32565,32567],{"class":3927,"line":16172},[3925,32566,7697],{"class":4561},[3925,32568,15682],{"class":4565},[3925,32570,32571,32573,32575,32577],{"class":3927,"line":16186},[3925,32572,22137],{"class":4579},[3925,32574,4583],{"class":4508},[3925,32576,4594],{"class":4540},[3925,32578,15693],{"class":4597},[3925,32580,32581,32583,32585,32588],{"class":3927,"line":16200},[3925,32582,22148],{"class":4512},[3925,32584,3595],{"class":4597},[3925,32586,32587],{"class":4512},"sheetHeader",[3925,32589,5051],{"class":4597},[3925,32591,32592,32595,32598,32600,32602,32604,32606,32609,32611,32613,32615],{"class":3927,"line":16210},[3925,32593,32594],{"class":4597},"                { ",[3925,32596,32597],{"class":4512},"paddingHorizontal:",[3925,32599,15307],{"class":4512},[3925,32601,3595],{"class":4597},[3925,32603,15312],{"class":4512},[3925,32605,4191],{"class":4597},[3925,32607,32608],{"class":4512},"paddingTop:",[3925,32610,15307],{"class":4512},[3925,32612,3595],{"class":4597},[3925,32614,15312],{"class":4512},[3925,32616,5667],{"class":4597},[3925,32618,32619,32621],{"class":3927,"line":16217},[3925,32620,22210],{"class":4597},[3925,32622,4016],{"class":4540},[3925,32624,32625],{"class":3927,"line":16222},[3925,32626,22217],{"class":4561},[3925,32628,32629,32631,32633,32635,32637,32639,32641,32643,32645,32647,32649,32651],{"class":3927,"line":16239},[3925,32630,8745],{"class":4561},[3925,32632,14664],{"class":4565},[3925,32634,15773],{"class":4579},[3925,32636,4583],{"class":4508},[3925,32638,15778],{"class":4521},[3925,32640,8439],{"class":4561},[3925,32642,4594],{"class":4540},[3925,32644,11017],{"class":4512},[3925,32646,4610],{"class":4540},[3925,32648,8445],{"class":4561},[3925,32650,14664],{"class":4565},[3925,32652,4568],{"class":4561},[3925,32654,32655,32657,32659],{"class":3927,"line":16274},[3925,32656,8848],{"class":4561},[3925,32658,8398],{"class":4565},[3925,32660,4568],{"class":4561},[3925,32662,32663,32665],{"class":3927,"line":16285},[3925,32664,7697],{"class":4561},[3925,32666,32279],{"class":4565},[3925,32668,32669,32671,32673,32675,32677],{"class":3927,"line":16294},[3925,32670,28261],{"class":4579},[3925,32672,4583],{"class":4508},[3925,32674,4594],{"class":4540},[3925,32676,31542],{"class":4512},[3925,32678,4016],{"class":4540},[3925,32680,32681,32684,32686],{"class":3927,"line":16299},[3925,32682,32683],{"class":4579},"              mode",[3925,32685,4583],{"class":4508},[3925,32687,32301],{"class":4521},[3925,32689,32690,32693,32695],{"class":3927,"line":16349},[3925,32691,32692],{"class":4579},"              display",[3925,32694,4583],{"class":4508},[3925,32696,32697],{"class":4521},"\"spinner\"\n",[3925,32699,32700,32702,32704,32706,32709],{"class":3927,"line":16372},[3925,32701,28908],{"class":4579},[3925,32703,4583],{"class":4508},[3925,32705,4594],{"class":4540},[3925,32707,32708],{"class":4512},"onIosChange",[3925,32710,4016],{"class":4540},[3925,32712,32713,32715,32717,32719,32721],{"class":3927,"line":16398},[3925,32714,29099],{"class":4579},[3925,32716,4583],{"class":4508},[3925,32718,4594],{"class":4540},[3925,32720,32337],{"class":4512},[3925,32722,4016],{"class":4540},[3925,32724,32725,32728,32730,32732,32734],{"class":3927,"line":16406},[3925,32726,32727],{"class":4579},"              maximumDate",[3925,32729,4583],{"class":4508},[3925,32731,4594],{"class":4540},[3925,32733,32351],{"class":4512},[3925,32735,4016],{"class":4540},[3925,32737,32738,32740,32742,32744,32746,32749,32751,32753],{"class":3927,"line":16413},[3925,32739,22137],{"class":4579},[3925,32741,4583],{"class":4508},[3925,32743,4594],{"class":4540},[3925,32745,4598],{"class":4597},[3925,32747,32748],{"class":4512},"alignSelf:",[3925,32750,9430],{"class":4521},[3925,32752,4607],{"class":4597},[3925,32754,4016],{"class":4540},[3925,32756,32757],{"class":3927,"line":16431},[3925,32758,7847],{"class":4561},[3925,32760,32761,32763],{"class":3927,"line":16460},[3925,32762,7697],{"class":4561},[3925,32764,15682],{"class":4565},[3925,32766,32767,32769,32771,32773],{"class":3927,"line":16472},[3925,32768,22137],{"class":4579},[3925,32770,4583],{"class":4508},[3925,32772,4594],{"class":4540},[3925,32774,15693],{"class":4597},[3925,32776,32777,32779,32781,32784],{"class":3927,"line":16485},[3925,32778,22148],{"class":4512},[3925,32780,3595],{"class":4597},[3925,32782,32783],{"class":4512},"sheetActions",[3925,32785,5051],{"class":4597},[3925,32787,32788,32790,32792,32794,32796,32798,32800,32802,32804,32806,32808],{"class":3927,"line":16491},[3925,32789,32594],{"class":4597},[3925,32791,32597],{"class":4512},[3925,32793,15307],{"class":4512},[3925,32795,3595],{"class":4597},[3925,32797,15312],{"class":4512},[3925,32799,4191],{"class":4597},[3925,32801,11369],{"class":4512},[3925,32803,15307],{"class":4512},[3925,32805,3595],{"class":4597},[3925,32807,15372],{"class":4512},[3925,32809,5667],{"class":4597},[3925,32811,32812,32814],{"class":3927,"line":16518},[3925,32813,22210],{"class":4597},[3925,32815,4016],{"class":4540},[3925,32817,32818],{"class":3927,"line":16532},[3925,32819,22217],{"class":4561},[3925,32821,32822,32824,32826,32829,32831,32834,32836,32838,32840,32843,32845],{"class":3927,"line":16538},[3925,32823,8745],{"class":4561},[3925,32825,14669],{"class":4565},[3925,32827,32828],{"class":4579}," label",[3925,32830,4583],{"class":4508},[3925,32832,32833],{"class":4521},"\"Готово\"",[3925,32835,9784],{"class":4579},[3925,32837,4583],{"class":4508},[3925,32839,4594],{"class":4540},[3925,32841,32842],{"class":4512},"applyIos",[3925,32844,4610],{"class":4540},[3925,32846,4613],{"class":4561},[3925,32848,32849,32851,32853,32855,32857,32859,32861,32863,32865,32867,32869,32871,32873,32876,32878],{"class":3927,"line":16546},[3925,32850,8745],{"class":4561},[3925,32852,8724],{"class":4565},[3925,32854,9784],{"class":4579},[3925,32856,4583],{"class":4508},[3925,32858,4594],{"class":4540},[3925,32860,32435],{"class":4512},[3925,32862,4610],{"class":4540},[3925,32864,7232],{"class":4579},[3925,32866,4583],{"class":4508},[3925,32868,4594],{"class":4540},[3925,32870,8365],{"class":4512},[3925,32872,3595],{"class":4597},[3925,32874,32875],{"class":4512},"cancel",[3925,32877,4610],{"class":4540},[3925,32879,4568],{"class":4561},[3925,32881,32882,32884,32886,32888,32890,32892,32894,32896,32898,32900,32902,32905,32907,32909],{"class":3927,"line":16557},[3925,32883,16614],{"class":4561},[3925,32885,14664],{"class":4565},[3925,32887,7720],{"class":4579},[3925,32889,4583],{"class":4508},[3925,32891,4594],{"class":4540},[3925,32893,13240],{"class":4512},[3925,32895,3595],{"class":4597},[3925,32897,13752],{"class":4512},[3925,32899,4610],{"class":4540},[3925,32901,8439],{"class":4561},[3925,32903,32904],{"class":4597},"Скасувати",[3925,32906,8445],{"class":4561},[3925,32908,14664],{"class":4565},[3925,32910,4568],{"class":4561},[3925,32912,32913,32915,32917],{"class":3927,"line":16578},[3925,32914,8839],{"class":4561},[3925,32916,8724],{"class":4565},[3925,32918,4568],{"class":4561},[3925,32920,32921,32923,32925],{"class":3927,"line":16605},[3925,32922,8848],{"class":4561},[3925,32924,8398],{"class":4565},[3925,32926,4568],{"class":4561},[3925,32928,32929,32931,32933],{"class":3927,"line":16611},[3925,32930,8857],{"class":4561},[3925,32932,8398],{"class":4565},[3925,32934,4568],{"class":4561},[3925,32936,32937,32939,32942],{"class":3927,"line":16619},[3925,32938,8493],{"class":4561},[3925,32940,32941],{"class":4565},"Modal",[3925,32943,4568],{"class":4561},[3925,32945,32946,32948,32950],{"class":3927,"line":16629},[3925,32947,15608],{"class":4597},[3925,32949,4974],{"class":4508},[3925,32951,15613],{"class":4540},[3925,32953,32954,32956,32958],{"class":3927,"line":16661},[3925,32955,4669],{"class":4561},[3925,32957,8398],{"class":4565},[3925,32959,4568],{"class":4561},[3925,32961,32962],{"class":3927,"line":16680},[3925,32963,4678],{"class":4508},[3925,32965,32966],{"class":3927,"line":16686},[3925,32967,4016],{"class":4508},[3925,32969,32970],{"class":3927,"line":16700},[3925,32971,3950],{"emptyLinePlaceholder":3949},[3925,32973,32974,32976,32979,32981,32983,32985,32987,32989,32991],{"class":3927,"line":16710},[3925,32975,6677],{"class":4540},[3925,32977,32978],{"class":4544}," formatDisplay",[3925,32980,4702],{"class":4508},[3925,32982,24117],{"class":4512},[3925,32984,4767],{"class":4508},[3925,32986,6931],{"class":4565},[3925,32988,6815],{"class":4508},[3925,32990,5949],{"class":4565},[3925,32992,5617],{"class":4508},[3925,32994,32995,32997,33000,33002,33004,33006,33008,33010,33012,33015,33018,33020,33022,33024,33027],{"class":3927,"line":16719},[3925,32996,6909],{"class":4540},[3925,32998,32999],{"class":5194}," dd",[3925,33001,5967],{"class":4508},[3925,33003,18211],{"class":4544},[3925,33005,4702],{"class":4508},[3925,33007,24117],{"class":4512},[3925,33009,3595],{"class":4508},[3925,33011,24142],{"class":4544},[3925,33013,33014],{"class":4508},"()).",[3925,33016,33017],{"class":4544},"padStart",[3925,33019,4702],{"class":4508},[3925,33021,8811],{"class":5990},[3925,33023,4191],{"class":4508},[3925,33025,33026],{"class":4521},"'0'",[3925,33028,4724],{"class":4508},[3925,33030,33031,33033,33036,33038,33040,33042,33044,33046,33048,33050,33052,33054,33056,33058,33060,33062,33064],{"class":3927,"line":16725},[3925,33032,6909],{"class":4540},[3925,33034,33035],{"class":5194}," mm",[3925,33037,5967],{"class":4508},[3925,33039,18211],{"class":4544},[3925,33041,4702],{"class":4508},[3925,33043,24117],{"class":4512},[3925,33045,3595],{"class":4508},[3925,33047,24161],{"class":4544},[3925,33049,27288],{"class":4508},[3925,33051,23792],{"class":5990},[3925,33053,3844],{"class":4508},[3925,33055,33017],{"class":4544},[3925,33057,4702],{"class":4508},[3925,33059,8811],{"class":5990},[3925,33061,4191],{"class":4508},[3925,33063,33026],{"class":4521},[3925,33065,4724],{"class":4508},[3925,33067,33068,33070,33073,33075,33077,33079,33081],{"class":3927,"line":16733},[3925,33069,6909],{"class":4540},[3925,33071,33072],{"class":5194}," yyyy",[3925,33074,5967],{"class":4508},[3925,33076,24117],{"class":4512},[3925,33078,3595],{"class":4508},[3925,33080,24245],{"class":4544},[3925,33082,7020],{"class":4508},[3925,33084,33085,33087,33089,33091,33094,33096,33098,33100,33103,33105,33107,33109,33112,33114,33116],{"class":3927,"line":16742},[3925,33086,4553],{"class":4504},[3925,33088,16245],{"class":4521},[3925,33090,4708],{"class":4540},[3925,33092,33093],{"class":4512},"dd",[3925,33095,4610],{"class":4540},[3925,33097,3595],{"class":4521},[3925,33099,4708],{"class":4540},[3925,33101,33102],{"class":4512},"mm",[3925,33104,4610],{"class":4540},[3925,33106,3595],{"class":4521},[3925,33108,4708],{"class":4540},[3925,33110,33111],{"class":4512},"yyyy",[3925,33113,4610],{"class":4540},[3925,33115,4721],{"class":4521},[3925,33117,4525],{"class":4508},[3925,33119,33120],{"class":3927,"line":16751},[3925,33121,4016],{"class":4508},[3925,33123,33124],{"class":3927,"line":16756},[3925,33125,3950],{"emptyLinePlaceholder":3949},[3925,33127,33128,33130,33132,33134,33136,33138,33140],{"class":3927,"line":16780},[3925,33129,5930],{"class":4540},[3925,33131,9037],{"class":5194},[3925,33133,5967],{"class":4508},[3925,33135,9042],{"class":4512},[3925,33137,3595],{"class":4508},[3925,33139,9047],{"class":4544},[3925,33141,9050],{"class":4508},[3925,33143,33144,33146],{"class":3927,"line":16788},[3925,33145,11404],{"class":4512},[3925,33147,5617],{"class":4508},[3925,33149,33150,33152,33154],{"class":3927,"line":16802},[3925,33151,11430],{"class":4512},[3925,33153,7303],{"class":4521},[3925,33155,5051],{"class":4508},[3925,33157,33158],{"class":3927,"line":16817},[3925,33159,6584],{"class":4508},[3925,33161,33162,33165],{"class":3927,"line":16832},[3925,33163,33164],{"class":4512},"  field:",[3925,33166,5617],{"class":4508},[3925,33168,33169,33171,33173],{"class":3927,"line":16847},[3925,33170,9258],{"class":4512},[3925,33172,9064],{"class":5990},[3925,33174,5051],{"class":4508},[3925,33176,33177,33179,33182],{"class":3927,"line":16862},[3925,33178,31101],{"class":4512},[3925,33180,33181],{"class":5990}," 48",[3925,33183,5051],{"class":4508},[3925,33185,33186,33188,33190],{"class":3927,"line":16874},[3925,33187,10122],{"class":4512},[3925,33189,9430],{"class":4521},[3925,33191,5051],{"class":4508},[3925,33193,33194],{"class":3927,"line":16887},[3925,33195,6584],{"class":4508},[3925,33197,33198,33201],{"class":3927,"line":16900},[3925,33199,33200],{"class":4512},"  backdrop:",[3925,33202,5617],{"class":4508},[3925,33204,33205,33207,33209],{"class":3927,"line":16913},[3925,33206,10105],{"class":4512},[3925,33208,9064],{"class":5990},[3925,33210,5051],{"class":4508},[3925,33212,33213,33215,33218],{"class":3927,"line":16920},[3925,33214,9237],{"class":4512},[3925,33216,33217],{"class":4521}," 'rgba(0,0,0,0.35)'",[3925,33219,5051],{"class":4508},[3925,33221,33222],{"class":3927,"line":16962},[3925,33223,6584],{"class":4508},[3925,33225,33226,33229],{"class":3927,"line":16972},[3925,33227,33228],{"class":4512},"  sheet:",[3925,33230,5617],{"class":4508},[3925,33232,33233,33236,33238],{"class":3927,"line":16980},[3925,33234,33235],{"class":4512},"    borderTopLeftRadius:",[3925,33237,9089],{"class":5990},[3925,33239,5051],{"class":4508},[3925,33241,33242,33245,33247],{"class":3927,"line":16994},[3925,33243,33244],{"class":4512},"    borderTopRightRadius:",[3925,33246,9089],{"class":5990},[3925,33248,5051],{"class":4508},[3925,33250,33251,33253,33255],{"class":3927,"line":17009},[3925,33252,9366],{"class":4512},[3925,33254,9064],{"class":5990},[3925,33256,5051],{"class":4508},[3925,33258,33259],{"class":3927,"line":17027},[3925,33260,6584],{"class":4508},[3925,33262,33263,33266],{"class":3927,"line":17049},[3925,33264,33265],{"class":4512},"  sheetHeader:",[3925,33267,5617],{"class":4508},[3925,33269,33270,33272,33274],{"class":3927,"line":17054},[3925,33271,9427],{"class":4512},[3925,33273,9430],{"class":4521},[3925,33275,5051],{"class":4508},[3925,33277,33278],{"class":3927,"line":17060},[3925,33279,6584],{"class":4508},[3925,33281,33282,33285],{"class":3927,"line":17070},[3925,33283,33284],{"class":4512},"  sheetActions:",[3925,33286,5617],{"class":4508},[3925,33288,33289,33291,33293],{"class":3927,"line":17075},[3925,33290,10200],{"class":4512},[3925,33292,9100],{"class":5990},[3925,33294,5051],{"class":4508},[3925,33296,33297],{"class":3927,"line":17084},[3925,33298,6584],{"class":4508},[3925,33300,33301,33304],{"class":3927,"line":17089},[3925,33302,33303],{"class":4512},"  cancel:",[3925,33305,5617],{"class":4508},[3925,33307,33308,33310,33312],{"class":3927,"line":17096},[3925,33309,9427],{"class":4512},[3925,33311,9430],{"class":4521},[3925,33313,5051],{"class":4508},[3925,33315,33316,33318,33320],{"class":3927,"line":17107},[3925,33317,9408],{"class":4512},[3925,33319,8607],{"class":5990},[3925,33321,5051],{"class":4508},[3925,33323,33324],{"class":3927,"line":17118},[3925,33325,6584],{"class":4508},[3925,33327,33328],{"class":3927,"line":17123},[3925,33329,5739],{"class":4508},[3916,33331,33334],{"className":4489,"code":33332,"filename":33333,"language":4491,"meta":3921,"style":3921},"import { ReactNode } from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText } from '@\u002Fshared\u002Fui';\n\ntype FormRowProps = {\n  label: string;\n  \u002F** Короткий опис під label (для Switch \u002F Checkbox \u002F Slider). *\u002F\n  description?: string;\n  error?: string;\n  \u002F** Правий слот: Switch, Checkbox тощо. *\u002F\n  control: ReactNode;\n  \u002F** Якщо true — control під label на всю ширину (Slider, Picker). *\u002F\n  stacked?: boolean;\n};\n\n\u002F**\n * Рядок форми для не-текстових контролів:\n * label + опис зліва, control справа (або stacked).\n *\u002F\nexport function FormRow({\n  label,\n  description,\n  error,\n  control,\n  stacked = false,\n}: FormRowProps) {\n  const { colors, spacing } = useTheme();\n\n  return (\n    \u003CView style={[styles.wrap, { gap: spacing.xs }]}>\n      \u003CView\n        style={[\n          stacked ? styles.stacked : styles.row,\n          !stacked && { gap: spacing.md },\n        ]}\n      >\n        \u003CView style={styles.texts}>\n          \u003CAppText variant=\"caption\" style={styles.label}>\n            {label}\n          \u003C\u002FAppText>\n          {description ? (\n            \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n              {description}\n            \u003C\u002FAppText>\n          ) : null}\n        \u003C\u002FView>\n        \u003CView style={stacked ? styles.fullControl : styles.sideControl}>\n          {control}\n        \u003C\u002FView>\n      \u003C\u002FView>\n      {error ? (\n        \u003CAppText variant=\"caption\" color={colors.danger}>\n          {error}\n        \u003C\u002FAppText>\n      ) : null}\n    \u003C\u002FView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  wrap: {\n    width: '100%',\n  },\n  row: {\n    flexDirection: 'row',\n    alignItems: 'center',\n    justifyContent: 'space-between',\n  },\n  stacked: {\n    flexDirection: 'column',\n    alignItems: 'stretch',\n  },\n  texts: {\n    flex: 1,\n    gap: 2,\n  },\n  label: {\n    fontWeight: '600',\n  },\n  sideControl: {\n    flexShrink: 0,\n  },\n  fullControl: {\n    marginTop: 8,\n    width: '100%',\n  },\n});\n","src\u002Ffeatures\u002Ftrips\u002Fui\u002FFormRow.tsx",[3521,33335,33336,33352,33372,33376,33392,33408,33412,33421,33431,33436,33446,33456,33461,33472,33477,33488,33492,33496,33500,33505,33510,33514,33525,33531,33537,33543,33549,33559,33568,33586,33590,33596,33633,33639,33649,33674,33695,33701,33705,33728,33756,33764,33772,33782,33810,33819,33827,33835,33843,33879,33887,33895,33903,33913,33941,33949,33957,33965,33973,33977,33981,33985,34001,34008,34016,34020,34027,34035,34043,34052,34056,34063,34072,34081,34085,34092,34100,34108,34112,34118,34126,34130,34137,34146,34150,34157,34165,34173,34177],{"__ignoreMap":3921},[3925,33337,33338,33340,33342,33344,33346,33348,33350],{"class":3927,"line":3928},[3925,33339,4505],{"class":4504},[3925,33341,4509],{"class":4508},[3925,33343,24844],{"class":4512},[3925,33345,4515],{"class":4508},[3925,33347,4518],{"class":4504},[3925,33349,8122],{"class":4521},[3925,33351,4525],{"class":4508},[3925,33353,33354,33356,33358,33360,33362,33364,33366,33368,33370],{"class":3927,"line":3934},[3925,33355,4505],{"class":4504},[3925,33357,4509],{"class":4508},[3925,33359,9042],{"class":4512},[3925,33361,4191],{"class":4508},[3925,33363,8398],{"class":4512},[3925,33365,4515],{"class":4508},[3925,33367,4518],{"class":4504},[3925,33369,8175],{"class":4521},[3925,33371,4525],{"class":4508},[3925,33373,33374],{"class":3927,"line":3940},[3925,33375,3950],{"emptyLinePlaceholder":3949},[3925,33377,33378,33380,33382,33384,33386,33388,33390],{"class":3927,"line":3946},[3925,33379,4505],{"class":4504},[3925,33381,4509],{"class":4508},[3925,33383,13148],{"class":4512},[3925,33385,4515],{"class":4508},[3925,33387,4518],{"class":4504},[3925,33389,13155],{"class":4521},[3925,33391,4525],{"class":4508},[3925,33393,33394,33396,33398,33400,33402,33404,33406],{"class":3927,"line":3953},[3925,33395,4505],{"class":4504},[3925,33397,4509],{"class":4508},[3925,33399,14664],{"class":4512},[3925,33401,4515],{"class":4508},[3925,33403,4518],{"class":4504},[3925,33405,14681],{"class":4521},[3925,33407,4525],{"class":4508},[3925,33409,33410],{"class":3927,"line":3959},[3925,33411,3950],{"emptyLinePlaceholder":3949},[3925,33413,33414,33416,33419],{"class":3927,"line":3965},[3925,33415,6491],{"class":4540},[3925,33417,33418],{"class":4565}," FormRowProps",[3925,33420,5198],{"class":4508},[3925,33422,33423,33425,33427,33429],{"class":3927,"line":3971},[3925,33424,31305],{"class":4512},[3925,33426,4767],{"class":4508},[3925,33428,5949],{"class":4565},[3925,33430,4525],{"class":4508},[3925,33432,33433],{"class":3927,"line":3977},[3925,33434,33435],{"class":4498},"  \u002F** Короткий опис під label (для Switch \u002F Checkbox \u002F Slider). *\u002F\n",[3925,33437,33438,33440,33442,33444],{"class":3927,"line":3983},[3925,33439,23159],{"class":4512},[3925,33441,23205],{"class":4508},[3925,33443,5949],{"class":4565},[3925,33445,4525],{"class":4508},[3925,33447,33448,33450,33452,33454],{"class":3927,"line":3989},[3925,33449,31361],{"class":4512},[3925,33451,23205],{"class":4508},[3925,33453,5949],{"class":4565},[3925,33455,4525],{"class":4508},[3925,33457,33458],{"class":3927,"line":3995},[3925,33459,33460],{"class":4498},"  \u002F** Правий слот: Switch, Checkbox тощо. *\u002F\n",[3925,33462,33463,33466,33468,33470],{"class":3927,"line":4001},[3925,33464,33465],{"class":4512},"  control",[3925,33467,4767],{"class":4508},[3925,33469,24844],{"class":4565},[3925,33471,4525],{"class":4508},[3925,33473,33474],{"class":3927,"line":4007},[3925,33475,33476],{"class":4498},"  \u002F** Якщо true — control під label на всю ширину (Slider, Picker). *\u002F\n",[3925,33478,33479,33482,33484,33486],{"class":3927,"line":4013},[3925,33480,33481],{"class":4512},"  stacked",[3925,33483,23205],{"class":4508},[3925,33485,5808],{"class":4565},[3925,33487,4525],{"class":4508},[3925,33489,33490],{"class":3927,"line":4019},[3925,33491,5213],{"class":4508},[3925,33493,33494],{"class":3927,"line":4024},[3925,33495,3950],{"emptyLinePlaceholder":3949},[3925,33497,33498],{"class":3927,"line":4030},[3925,33499,13166],{"class":4498},[3925,33501,33502],{"class":3927,"line":4036},[3925,33503,33504],{"class":4498}," * Рядок форми для не-текстових контролів:\n",[3925,33506,33507],{"class":3927,"line":4041},[3925,33508,33509],{"class":4498}," * label + опис зліва, control справа (або stacked).\n",[3925,33511,33512],{"class":3927,"line":4047},[3925,33513,13196],{"class":4498},[3925,33515,33516,33518,33520,33523],{"class":3927,"line":4053},[3925,33517,4534],{"class":4504},[3925,33519,4541],{"class":4540},[3925,33521,33522],{"class":4544}," FormRow",[3925,33524,9050],{"class":4508},[3925,33526,33527,33529],{"class":3927,"line":4059},[3925,33528,31305],{"class":4512},[3925,33530,5051],{"class":4508},[3925,33532,33533,33535],{"class":3927,"line":4065},[3925,33534,23159],{"class":4512},[3925,33536,5051],{"class":4508},[3925,33538,33539,33541],{"class":3927,"line":4070},[3925,33540,31361],{"class":4512},[3925,33542,5051],{"class":4508},[3925,33544,33545,33547],{"class":3927,"line":4076},[3925,33546,33465],{"class":4512},[3925,33548,5051],{"class":4508},[3925,33550,33551,33553,33555,33557],{"class":3927,"line":4082},[3925,33552,33481],{"class":4512},[3925,33554,5967],{"class":4508},[3925,33556,10525],{"class":4540},[3925,33558,5051],{"class":4508},[3925,33560,33561,33563,33566],{"class":3927,"line":4088},[3925,33562,27354],{"class":4508},[3925,33564,33565],{"class":4565},"FormRowProps",[3925,33567,6049],{"class":4508},[3925,33569,33570,33572,33574,33576,33578,33580,33582,33584],{"class":3927,"line":4093},[3925,33571,6909],{"class":4540},[3925,33573,4509],{"class":4508},[3925,33575,13240],{"class":5194},[3925,33577,4191],{"class":4508},[3925,33579,14837],{"class":5194},[3925,33581,5937],{"class":4508},[3925,33583,13148],{"class":4544},[3925,33585,7020],{"class":4508},[3925,33587,33588],{"class":3927,"line":4098},[3925,33589,3950],{"emptyLinePlaceholder":3949},[3925,33591,33592,33594],{"class":3927,"line":6720},[3925,33593,4553],{"class":4504},[3925,33595,4556],{"class":4508},[3925,33597,33598,33600,33602,33604,33606,33608,33610,33612,33614,33617,33619,33621,33623,33625,33627,33629,33631],{"class":3927,"line":6738},[3925,33599,4562],{"class":4561},[3925,33601,8398],{"class":4565},[3925,33603,7232],{"class":4579},[3925,33605,4583],{"class":4508},[3925,33607,4594],{"class":4540},[3925,33609,5987],{"class":4597},[3925,33611,8365],{"class":4512},[3925,33613,3595],{"class":4597},[3925,33615,33616],{"class":4512},"wrap",[3925,33618,16321],{"class":4597},[3925,33620,11369],{"class":4512},[3925,33622,15307],{"class":4512},[3925,33624,3595],{"class":4597},[3925,33626,16010],{"class":4512},[3925,33628,16342],{"class":4597},[3925,33630,4610],{"class":4540},[3925,33632,4568],{"class":4561},[3925,33634,33635,33637],{"class":3927,"line":6787},[3925,33636,4573],{"class":4561},[3925,33638,15682],{"class":4565},[3925,33640,33641,33643,33645,33647],{"class":3927,"line":6792},[3925,33642,15847],{"class":4579},[3925,33644,4583],{"class":4508},[3925,33646,4594],{"class":4540},[3925,33648,15693],{"class":4597},[3925,33650,33651,33654,33656,33658,33660,33663,33665,33667,33669,33672],{"class":3927,"line":6797},[3925,33652,33653],{"class":4512},"          stacked",[3925,33655,10922],{"class":4508},[3925,33657,9037],{"class":4512},[3925,33659,3595],{"class":4597},[3925,33661,33662],{"class":4512},"stacked",[3925,33664,10928],{"class":4508},[3925,33666,9037],{"class":4512},[3925,33668,3595],{"class":4597},[3925,33670,33671],{"class":4512},"row",[3925,33673,5051],{"class":4597},[3925,33675,33676,33679,33681,33683,33685,33687,33689,33691,33693],{"class":3927,"line":6827},[3925,33677,33678],{"class":4508},"          !",[3925,33680,33662],{"class":4512},[3925,33682,32265],{"class":4508},[3925,33684,4509],{"class":4597},[3925,33686,11369],{"class":4512},[3925,33688,15307],{"class":4512},[3925,33690,3595],{"class":4597},[3925,33692,15312],{"class":4512},[3925,33694,5667],{"class":4597},[3925,33696,33697,33699],{"class":3927,"line":6862},[3925,33698,16038],{"class":4597},[3925,33700,4016],{"class":4540},[3925,33702,33703],{"class":3927,"line":6867},[3925,33704,7330],{"class":4561},[3925,33706,33707,33709,33711,33713,33715,33717,33719,33721,33724,33726],{"class":3927,"line":6872},[3925,33708,7335],{"class":4561},[3925,33710,8398],{"class":4565},[3925,33712,7232],{"class":4579},[3925,33714,4583],{"class":4508},[3925,33716,4594],{"class":4540},[3925,33718,8365],{"class":4512},[3925,33720,3595],{"class":4597},[3925,33722,33723],{"class":4512},"texts",[3925,33725,4610],{"class":4540},[3925,33727,4568],{"class":4561},[3925,33729,33730,33732,33734,33736,33738,33740,33742,33744,33746,33748,33750,33752,33754],{"class":3927,"line":6906},[3925,33731,8630],{"class":4561},[3925,33733,14664],{"class":4565},[3925,33735,15773],{"class":4579},[3925,33737,4583],{"class":4508},[3925,33739,16084],{"class":4521},[3925,33741,7232],{"class":4579},[3925,33743,4583],{"class":4508},[3925,33745,4594],{"class":4540},[3925,33747,8365],{"class":4512},[3925,33749,3595],{"class":4597},[3925,33751,11017],{"class":4512},[3925,33753,4610],{"class":4540},[3925,33755,4568],{"class":4561},[3925,33757,33758,33760,33762],{"class":3927,"line":6921},[3925,33759,18626],{"class":4540},[3925,33761,11017],{"class":4512},[3925,33763,4016],{"class":4540},[3925,33765,33766,33768,33770],{"class":3927,"line":6941},[3925,33767,8857],{"class":4561},[3925,33769,14664],{"class":4565},[3925,33771,4568],{"class":4561},[3925,33773,33774,33776,33778,33780],{"class":3927,"line":6962},[3925,33775,16225],{"class":4540},[3925,33777,18927],{"class":4512},[3925,33779,10922],{"class":4508},[3925,33781,4556],{"class":4597},[3925,33783,33784,33786,33788,33790,33792,33794,33796,33798,33800,33802,33804,33806,33808],{"class":3927,"line":6977},[3925,33785,7697],{"class":4561},[3925,33787,14664],{"class":4565},[3925,33789,15773],{"class":4579},[3925,33791,4583],{"class":4508},[3925,33793,16084],{"class":4521},[3925,33795,7720],{"class":4579},[3925,33797,4583],{"class":4508},[3925,33799,4594],{"class":4540},[3925,33801,13240],{"class":4512},[3925,33803,3595],{"class":4597},[3925,33805,13752],{"class":4512},[3925,33807,4610],{"class":4540},[3925,33809,4568],{"class":4561},[3925,33811,33812,33815,33817],{"class":3927,"line":6990},[3925,33813,33814],{"class":4540},"              {",[3925,33816,18927],{"class":4512},[3925,33818,4016],{"class":4540},[3925,33820,33821,33823,33825],{"class":3927,"line":6996},[3925,33822,8848],{"class":4561},[3925,33824,14664],{"class":4565},[3925,33826,4568],{"class":4561},[3925,33828,33829,33831,33833],{"class":3927,"line":7014},[3925,33830,19056],{"class":4597},[3925,33832,4974],{"class":4508},[3925,33834,15613],{"class":4540},[3925,33836,33837,33839,33841],{"class":3927,"line":7023},[3925,33838,8493],{"class":4561},[3925,33840,8398],{"class":4565},[3925,33842,4568],{"class":4561},[3925,33844,33845,33847,33849,33851,33853,33855,33857,33859,33861,33863,33866,33868,33870,33872,33875,33877],{"class":3927,"line":7032},[3925,33846,7335],{"class":4561},[3925,33848,8398],{"class":4565},[3925,33850,7232],{"class":4579},[3925,33852,4583],{"class":4508},[3925,33854,4594],{"class":4540},[3925,33856,33662],{"class":4512},[3925,33858,10922],{"class":4508},[3925,33860,9037],{"class":4512},[3925,33862,3595],{"class":4597},[3925,33864,33865],{"class":4512},"fullControl",[3925,33867,10928],{"class":4508},[3925,33869,9037],{"class":4512},[3925,33871,3595],{"class":4597},[3925,33873,33874],{"class":4512},"sideControl",[3925,33876,4610],{"class":4540},[3925,33878,4568],{"class":4561},[3925,33880,33881,33883,33885],{"class":3927,"line":7037},[3925,33882,16225],{"class":4540},[3925,33884,28185],{"class":4512},[3925,33886,4016],{"class":4540},[3925,33888,33889,33891,33893],{"class":3927,"line":7042},[3925,33890,8493],{"class":4561},[3925,33892,8398],{"class":4565},[3925,33894,4568],{"class":4561},[3925,33896,33897,33899,33901],{"class":3927,"line":7070},[3925,33898,7434],{"class":4561},[3925,33900,8398],{"class":4565},[3925,33902,4568],{"class":4561},[3925,33904,33905,33907,33909,33911],{"class":3927,"line":7086},[3925,33906,15333],{"class":4540},[3925,33908,31577],{"class":4512},[3925,33910,10922],{"class":4508},[3925,33912,4556],{"class":4597},[3925,33914,33915,33917,33919,33921,33923,33925,33927,33929,33931,33933,33935,33937,33939],{"class":3927,"line":7097},[3925,33916,7335],{"class":4561},[3925,33918,14664],{"class":4565},[3925,33920,15773],{"class":4579},[3925,33922,4583],{"class":4508},[3925,33924,16084],{"class":4521},[3925,33926,7720],{"class":4579},[3925,33928,4583],{"class":4508},[3925,33930,4594],{"class":4540},[3925,33932,13240],{"class":4512},[3925,33934,3595],{"class":4597},[3925,33936,32065],{"class":4512},[3925,33938,4610],{"class":4540},[3925,33940,4568],{"class":4561},[3925,33942,33943,33945,33947],{"class":3927,"line":7114},[3925,33944,16225],{"class":4540},[3925,33946,31577],{"class":4512},[3925,33948,4016],{"class":4540},[3925,33950,33951,33953,33955],{"class":3927,"line":7119},[3925,33952,8493],{"class":4561},[3925,33954,14664],{"class":4565},[3925,33956,4568],{"class":4561},[3925,33958,33959,33961,33963],{"class":3927,"line":9008},[3925,33960,15608],{"class":4597},[3925,33962,4974],{"class":4508},[3925,33964,15613],{"class":4540},[3925,33966,33967,33969,33971],{"class":3927,"line":9017},[3925,33968,4669],{"class":4561},[3925,33970,8398],{"class":4565},[3925,33972,4568],{"class":4561},[3925,33974,33975],{"class":3927,"line":9022},[3925,33976,4678],{"class":4508},[3925,33978,33979],{"class":3927,"line":9027},[3925,33980,4016],{"class":4508},[3925,33982,33983],{"class":3927,"line":9032},[3925,33984,3950],{"emptyLinePlaceholder":3949},[3925,33986,33987,33989,33991,33993,33995,33997,33999],{"class":3927,"line":9053},[3925,33988,5930],{"class":4540},[3925,33990,9037],{"class":5194},[3925,33992,5967],{"class":4508},[3925,33994,9042],{"class":4512},[3925,33996,3595],{"class":4508},[3925,33998,9047],{"class":4544},[3925,34000,9050],{"class":4508},[3925,34002,34003,34006],{"class":3927,"line":9075},[3925,34004,34005],{"class":4512},"  wrap:",[3925,34007,5617],{"class":4508},[3925,34009,34010,34012,34014],{"class":3927,"line":9083},[3925,34011,19675],{"class":4512},[3925,34013,19678],{"class":4521},[3925,34015,5051],{"class":4508},[3925,34017,34018],{"class":3927,"line":9094},[3925,34019,6584],{"class":4508},[3925,34021,34022,34025],{"class":3927,"line":9105},[3925,34023,34024],{"class":4512},"  row:",[3925,34026,5617],{"class":4508},[3925,34028,34029,34031,34033],{"class":3927,"line":9115},[3925,34030,17373],{"class":4512},[3925,34032,17376],{"class":4521},[3925,34034,5051],{"class":4508},[3925,34036,34037,34039,34041],{"class":3927,"line":9125},[3925,34038,9427],{"class":4512},[3925,34040,9430],{"class":4521},[3925,34042,5051],{"class":4508},[3925,34044,34045,34047,34050],{"class":3927,"line":9135},[3925,34046,10122],{"class":4512},[3925,34048,34049],{"class":4521}," 'space-between'",[3925,34051,5051],{"class":4508},[3925,34053,34054],{"class":3927,"line":9140},[3925,34055,6584],{"class":4508},[3925,34057,34058,34061],{"class":3927,"line":9168},[3925,34059,34060],{"class":4512},"  stacked:",[3925,34062,5617],{"class":4508},[3925,34064,34065,34067,34070],{"class":3927,"line":9197},[3925,34066,17373],{"class":4512},[3925,34068,34069],{"class":4521}," 'column'",[3925,34071,5051],{"class":4508},[3925,34073,34074,34076,34079],{"class":3927,"line":9226},[3925,34075,9427],{"class":4512},[3925,34077,34078],{"class":4521}," 'stretch'",[3925,34080,5051],{"class":4508},[3925,34082,34083],{"class":3927,"line":9234},[3925,34084,6584],{"class":4508},[3925,34086,34087,34090],{"class":3927,"line":9245},[3925,34088,34089],{"class":4512},"  texts:",[3925,34091,5617],{"class":4508},[3925,34093,34094,34096,34098],{"class":3927,"line":9255},[3925,34095,10105],{"class":4512},[3925,34097,9064],{"class":5990},[3925,34099,5051],{"class":4508},[3925,34101,34102,34104,34106],{"class":3927,"line":9265},[3925,34103,20869],{"class":4512},[3925,34105,15586],{"class":5990},[3925,34107,5051],{"class":4508},[3925,34109,34110],{"class":3927,"line":9275},[3925,34111,6584],{"class":4508},[3925,34113,34114,34116],{"class":3927,"line":9286},[3925,34115,11404],{"class":4512},[3925,34117,5617],{"class":4508},[3925,34119,34120,34122,34124],{"class":3927,"line":9291},[3925,34121,11430],{"class":4512},[3925,34123,7303],{"class":4521},[3925,34125,5051],{"class":4508},[3925,34127,34128],{"class":3927,"line":9319},[3925,34129,6584],{"class":4508},[3925,34131,34132,34135],{"class":3927,"line":9346},[3925,34133,34134],{"class":4512},"  sideControl:",[3925,34136,5617],{"class":4508},[3925,34138,34139,34142,34144],{"class":3927,"line":9354},[3925,34140,34141],{"class":4512},"    flexShrink:",[3925,34143,15345],{"class":5990},[3925,34145,5051],{"class":4508},[3925,34147,34148],{"class":3927,"line":9363},[3925,34149,6584],{"class":4508},[3925,34151,34152,34155],{"class":3927,"line":9373},[3925,34153,34154],{"class":4512},"  fullControl:",[3925,34156,5617],{"class":4508},[3925,34158,34159,34161,34163],{"class":3927,"line":9383},[3925,34160,10200],{"class":4512},[3925,34162,9100],{"class":5990},[3925,34164,5051],{"class":4508},[3925,34166,34167,34169,34171],{"class":3927,"line":9388},[3925,34168,19675],{"class":4512},[3925,34170,19678],{"class":4521},[3925,34172,5051],{"class":4508},[3925,34174,34175],{"class":3927,"line":9396},[3925,34176,6584],{"class":4508},[3925,34178,34179],{"class":3927,"line":9405},[3925,34180,5739],{"class":4508},[3916,34182,34185],{"className":4489,"code":34183,"filename":34184,"language":4491,"meta":3921,"style":3921},"import { memo } from 'react';\nimport { Image, Platform, Pressable, StyleSheet, View } from 'react-native';\n\nimport type { Trip } from '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002Ftypes';\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText } from '@\u002Fshared\u002Fui';\n\ntype TripCardProps = {\n  trip: Trip;\n  onPress?: (trip: Trip) => void;\n};\n\nfunction TripCardComponent({ trip, onPress }: TripCardProps) {\n  const { colors, spacing, radius } = useTheme();\n\n  return (\n    \u003CPressable\n      accessibilityRole=\"button\"\n      accessibilityLabel={`Поїздка ${trip.title}`}\n      onPress={() => onPress?.(trip)}\n      style={({ pressed }) => [\n        styles.card,\n        {\n          backgroundColor: colors.surface,\n          borderColor: colors.border,\n          borderRadius: radius.lg,\n        },\n        pressed && styles.cardPressed,\n      ]}\n    >\n      \u003CImage\n        source={{ uri: trip.coverUri }}\n        style={[styles.cover, { backgroundColor: colors.border }]}\n        resizeMode=\"cover\"\n        accessibilityIgnoresInvertColors\n      \u002F>\n      \u003CView style={[styles.body, { padding: spacing.md, gap: spacing.xs }]}>\n        \u003CView style={[styles.titleRow, { gap: spacing.sm }]}>\n          \u003CAppText variant=\"subtitle\" numberOfLines={1} style={styles.titleFlex}>\n            {trip.title}\n          \u003C\u002FAppText>\n          \u003CAppText variant=\"caption\" style={styles.dates}>\n            {trip.dateLabel}\n          \u003C\u002FAppText>\n        \u003C\u002FView>\n        \u003CAppText variant=\"caption\" color={colors.primary} style={styles.region}>\n          {trip.region}\n          {trip.plannedDays\n            ? ` · ${trip.plannedDays} ${trip.plannedDays === 1 ? 'день' : 'дні'}`\n            : ''}\n        \u003C\u002FAppText>\n        {(trip.isPrivate || trip.hasItinerary) && (\n          \u003CView style={[styles.badges, { gap: spacing.xs, marginTop: spacing.xs }]}>\n            {trip.isPrivate ? (\n              \u003CAppText\n                variant=\"caption\"\n                style={[styles.badge, { color: colors.textSecondary }]}\n              >\n                приватна\n              \u003C\u002FAppText>\n            ) : null}\n            {trip.hasItinerary ? (\n              \u003CAppText\n                variant=\"caption\"\n                style={[styles.badge, { color: colors.primary }]}\n              >\n                є план\n              \u003C\u002FAppText>\n            ) : null}\n          \u003C\u002FView>\n        )}\n        \u003CAppText\n          numberOfLines={2}\n          style={{ marginTop: spacing.xs, color: colors.textSecondary }}\n        >\n          {trip.description}\n        \u003C\u002FAppText>\n        \u003CView style={[styles.footer, { marginTop: spacing.sm }]}>\n          \u003CAppText variant=\"caption\" color={colors.primary}>\n            Відкрити\n          \u003C\u002FAppText>\n        \u003C\u002FView>\n      \u003C\u002FView>\n    \u003C\u002FPressable>\n  );\n}\n\n\u002F** memo: рядок списку не перемальовується, якщо props ті самі. *\u002F\nexport const TripCard = memo(TripCardComponent);\n\nconst styles = StyleSheet.create({\n  card: {\n    borderWidth: 1,\n    overflow: 'hidden',\n    ...Platform.select({\n      ios: {\n        shadowColor: '#000',\n        shadowOpacity: 0.08,\n        shadowRadius: 10,\n        shadowOffset: { width: 0, height: 4 },\n      },\n      android: {\n        elevation: 3,\n      },\n      default: {},\n    }),\n  },\n  cardPressed: {\n    opacity: 0.92,\n  },\n  cover: {\n    width: '100%',\n    height: 160,\n  },\n  body: {},\n  titleRow: {\n    flexDirection: 'row',\n    alignItems: 'center',\n  },\n  titleFlex: {\n    flex: 1,\n  },\n  dates: {\n    flexShrink: 0,\n  },\n  region: {\n    fontWeight: '600',\n  },\n  badges: {\n    flexDirection: 'row',\n    flexWrap: 'wrap',\n  },\n  badge: {\n    fontWeight: '600',\n    fontSize: 12,\n  },\n  footer: {\n    alignItems: 'flex-start',\n  },\n});\n","src\u002Ffeatures\u002Ftrips\u002Fui\u002FTripCard.tsx",[3521,34186,34187,34204,34237,34241,34259,34275,34291,34295,34304,34315,34337,34341,34345,34368,34390,34394,34400,34406,34415,34441,34464,34484,34494,34498,34510,34522,34534,34538,34554,34560,34564,34570,34593,34623,34632,34637,34641,34687,34724,34763,34775,34783,34812,34824,34832,34840,34882,34894,34904,34945,34953,34961,34988,35034,35048,35054,35063,35094,35098,35102,35110,35118,35132,35138,35146,35176,35180,35185,35193,35201,35209,35215,35221,35234,35266,35270,35282,35290,35326,35354,35359,35367,35375,35383,35391,35395,35399,35403,35408,35428,35432,35448,35454,35462,35470,35482,35488,35496,35505,35513,35531,35535,35541,35550,35554,35560,35564,35568,35575,35585,35589,35595,35603,35612,35616,35622,35629,35637,35645,35649,35656,35664,35668,35675,35683,35687,35694,35702,35706,35712,35720,35728,35732,35739,35747,35755,35759,35765,35774,35778],{"__ignoreMap":3921},[3925,34188,34189,34191,34193,34196,34198,34200,34202],{"class":3927,"line":3928},[3925,34190,4505],{"class":4504},[3925,34192,4509],{"class":4508},[3925,34194,34195],{"class":4512},"memo",[3925,34197,4515],{"class":4508},[3925,34199,4518],{"class":4504},[3925,34201,8122],{"class":4521},[3925,34203,4525],{"class":4508},[3925,34205,34206,34208,34210,34213,34215,34217,34219,34221,34223,34225,34227,34229,34231,34233,34235],{"class":3927,"line":3934},[3925,34207,4505],{"class":4504},[3925,34209,4509],{"class":4508},[3925,34211,34212],{"class":4512},"Image",[3925,34214,4191],{"class":4508},[3925,34216,10908],{"class":4512},[3925,34218,4191],{"class":4508},[3925,34220,8724],{"class":4512},[3925,34222,4191],{"class":4508},[3925,34224,9042],{"class":4512},[3925,34226,4191],{"class":4508},[3925,34228,8398],{"class":4512},[3925,34230,4515],{"class":4508},[3925,34232,4518],{"class":4504},[3925,34234,8175],{"class":4521},[3925,34236,4525],{"class":4508},[3925,34238,34239],{"class":3927,"line":3940},[3925,34240,3950],{"emptyLinePlaceholder":3949},[3925,34242,34243,34245,34247,34249,34251,34253,34255,34257],{"class":3927,"line":3946},[3925,34244,4505],{"class":4504},[3925,34246,6428],{"class":4504},[3925,34248,4509],{"class":4508},[3925,34250,14935],{"class":4512},[3925,34252,4515],{"class":4508},[3925,34254,4518],{"class":4504},[3925,34256,27013],{"class":4521},[3925,34258,4525],{"class":4508},[3925,34260,34261,34263,34265,34267,34269,34271,34273],{"class":3927,"line":3953},[3925,34262,4505],{"class":4504},[3925,34264,4509],{"class":4508},[3925,34266,13148],{"class":4512},[3925,34268,4515],{"class":4508},[3925,34270,4518],{"class":4504},[3925,34272,13155],{"class":4521},[3925,34274,4525],{"class":4508},[3925,34276,34277,34279,34281,34283,34285,34287,34289],{"class":3927,"line":3959},[3925,34278,4505],{"class":4504},[3925,34280,4509],{"class":4508},[3925,34282,14664],{"class":4512},[3925,34284,4515],{"class":4508},[3925,34286,4518],{"class":4504},[3925,34288,14681],{"class":4521},[3925,34290,4525],{"class":4508},[3925,34292,34293],{"class":3927,"line":3965},[3925,34294,3950],{"emptyLinePlaceholder":3949},[3925,34296,34297,34299,34302],{"class":3927,"line":3971},[3925,34298,6491],{"class":4540},[3925,34300,34301],{"class":4565}," TripCardProps",[3925,34303,5198],{"class":4508},[3925,34305,34306,34309,34311,34313],{"class":3927,"line":3977},[3925,34307,34308],{"class":4512},"  trip",[3925,34310,4767],{"class":4508},[3925,34312,14935],{"class":4565},[3925,34314,4525],{"class":4508},[3925,34316,34317,34320,34323,34325,34327,34329,34331,34333,34335],{"class":3927,"line":3983},[3925,34318,34319],{"class":4544},"  onPress",[3925,34321,34322],{"class":4508},"?: (",[3925,34324,4711],{"class":4512},[3925,34326,4767],{"class":4508},[3925,34328,14935],{"class":4565},[3925,34330,6701],{"class":4508},[3925,34332,5614],{"class":4540},[3925,34334,6502],{"class":4565},[3925,34336,4525],{"class":4508},[3925,34338,34339],{"class":3927,"line":3989},[3925,34340,5213],{"class":4508},[3925,34342,34343],{"class":3927,"line":3995},[3925,34344,3950],{"emptyLinePlaceholder":3949},[3925,34346,34347,34349,34352,34354,34356,34358,34361,34363,34366],{"class":3927,"line":4001},[3925,34348,6677],{"class":4540},[3925,34350,34351],{"class":4544}," TripCardComponent",[3925,34353,8674],{"class":4508},[3925,34355,4711],{"class":4512},[3925,34357,4191],{"class":4508},[3925,34359,34360],{"class":4512},"onPress",[3925,34362,24871],{"class":4508},[3925,34364,34365],{"class":4565},"TripCardProps",[3925,34367,6049],{"class":4508},[3925,34369,34370,34372,34374,34376,34378,34380,34382,34384,34386,34388],{"class":3927,"line":4007},[3925,34371,6909],{"class":4540},[3925,34373,4509],{"class":4508},[3925,34375,13240],{"class":5194},[3925,34377,4191],{"class":4508},[3925,34379,14837],{"class":5194},[3925,34381,4191],{"class":4508},[3925,34383,17960],{"class":5194},[3925,34385,5937],{"class":4508},[3925,34387,13148],{"class":4544},[3925,34389,7020],{"class":4508},[3925,34391,34392],{"class":3927,"line":4013},[3925,34393,3950],{"emptyLinePlaceholder":3949},[3925,34395,34396,34398],{"class":3927,"line":4019},[3925,34397,4553],{"class":4504},[3925,34399,4556],{"class":4508},[3925,34401,34402,34404],{"class":3927,"line":4024},[3925,34403,4562],{"class":4561},[3925,34405,8906],{"class":4565},[3925,34407,34408,34411,34413],{"class":3927,"line":4030},[3925,34409,34410],{"class":4579},"      accessibilityRole",[3925,34412,4583],{"class":4508},[3925,34414,16554],{"class":4521},[3925,34416,34417,34420,34422,34424,34427,34429,34431,34433,34435,34437,34439],{"class":3927,"line":4036},[3925,34418,34419],{"class":4579},"      accessibilityLabel",[3925,34421,4583],{"class":4508},[3925,34423,4594],{"class":4540},[3925,34425,34426],{"class":4521},"`Поїздка ",[3925,34428,4708],{"class":4540},[3925,34430,4711],{"class":4512},[3925,34432,3595],{"class":4597},[3925,34434,6884],{"class":4512},[3925,34436,4610],{"class":4540},[3925,34438,4721],{"class":4521},[3925,34440,4016],{"class":4540},[3925,34442,34443,34445,34447,34449,34451,34453,34455,34458,34460,34462],{"class":3927,"line":4041},[3925,34444,5697],{"class":4579},[3925,34446,4583],{"class":4508},[3925,34448,4594],{"class":4540},[3925,34450,8586],{"class":4597},[3925,34452,5614],{"class":4540},[3925,34454,9784],{"class":4544},[3925,34456,34457],{"class":4597},"?.(",[3925,34459,4711],{"class":4512},[3925,34461,4251],{"class":4597},[3925,34463,4016],{"class":4540},[3925,34465,34466,34468,34470,34472,34474,34477,34479,34481],{"class":3927,"line":4047},[3925,34467,10883],{"class":4579},[3925,34469,4583],{"class":4508},[3925,34471,4594],{"class":4540},[3925,34473,8674],{"class":4597},[3925,34475,34476],{"class":4512},"pressed",[3925,34478,5611],{"class":4597},[3925,34480,5614],{"class":4540},[3925,34482,34483],{"class":4597}," [\n",[3925,34485,34486,34488,34490,34492],{"class":3927,"line":4053},[3925,34487,15698],{"class":4512},[3925,34489,3595],{"class":4597},[3925,34491,4983],{"class":4512},[3925,34493,5051],{"class":4597},[3925,34495,34496],{"class":3927,"line":4059},[3925,34497,10662],{"class":4597},[3925,34499,34500,34502,34504,34506,34508],{"class":3927,"line":4065},[3925,34501,7580],{"class":4512},[3925,34503,13324],{"class":4512},[3925,34505,3595],{"class":4597},[3925,34507,16513],{"class":4512},[3925,34509,5051],{"class":4597},[3925,34511,34512,34514,34516,34518,34520],{"class":3927,"line":4070},[3925,34513,19388],{"class":4512},[3925,34515,13324],{"class":4512},[3925,34517,3595],{"class":4597},[3925,34519,13783],{"class":4512},[3925,34521,5051],{"class":4597},[3925,34523,34524,34526,34528,34530,34532],{"class":3927,"line":4076},[3925,34525,19401],{"class":4512},[3925,34527,19404],{"class":4512},[3925,34529,3595],{"class":4597},[3925,34531,18105],{"class":4512},[3925,34533,5051],{"class":4597},[3925,34535,34536],{"class":3927,"line":4082},[3925,34537,7599],{"class":4597},[3925,34539,34540,34543,34545,34547,34549,34552],{"class":3927,"line":4088},[3925,34541,34542],{"class":4512},"        pressed",[3925,34544,32265],{"class":4508},[3925,34546,9037],{"class":4512},[3925,34548,3595],{"class":4597},[3925,34550,34551],{"class":4512},"cardPressed",[3925,34553,5051],{"class":4597},[3925,34555,34556,34558],{"class":3927,"line":4093},[3925,34557,15758],{"class":4597},[3925,34559,4016],{"class":4540},[3925,34561,34562],{"class":3927,"line":4098},[3925,34563,7632],{"class":4561},[3925,34565,34566,34568],{"class":3927,"line":6720},[3925,34567,4573],{"class":4561},[3925,34569,18440],{"class":4565},[3925,34571,34572,34575,34577,34579,34581,34583,34585,34587,34589,34591],{"class":3927,"line":6738},[3925,34573,34574],{"class":4579},"        source",[3925,34576,4583],{"class":4508},[3925,34578,4594],{"class":4540},[3925,34580,4598],{"class":4597},[3925,34582,18454],{"class":4512},[3925,34584,6013],{"class":4512},[3925,34586,3595],{"class":4597},[3925,34588,18461],{"class":4512},[3925,34590,4607],{"class":4597},[3925,34592,4016],{"class":4540},[3925,34594,34595,34597,34599,34601,34603,34605,34607,34609,34611,34613,34615,34617,34619,34621],{"class":3927,"line":6787},[3925,34596,15847],{"class":4579},[3925,34598,4583],{"class":4508},[3925,34600,4594],{"class":4540},[3925,34602,5987],{"class":4597},[3925,34604,8365],{"class":4512},[3925,34606,3595],{"class":4597},[3925,34608,18482],{"class":4512},[3925,34610,16321],{"class":4597},[3925,34612,7267],{"class":4512},[3925,34614,13324],{"class":4512},[3925,34616,3595],{"class":4597},[3925,34618,13783],{"class":4512},[3925,34620,16342],{"class":4597},[3925,34622,4016],{"class":4540},[3925,34624,34625,34628,34630],{"class":3927,"line":6792},[3925,34626,34627],{"class":4579},"        resizeMode",[3925,34629,4583],{"class":4508},[3925,34631,18506],{"class":4521},[3925,34633,34634],{"class":3927,"line":6797},[3925,34635,34636],{"class":4579},"        accessibilityIgnoresInvertColors\n",[3925,34638,34639],{"class":3927,"line":6827},[3925,34640,4664],{"class":4561},[3925,34642,34643,34645,34647,34649,34651,34653,34655,34657,34659,34661,34663,34665,34667,34669,34671,34673,34675,34677,34679,34681,34683,34685],{"class":3927,"line":6862},[3925,34644,4573],{"class":4561},[3925,34646,8398],{"class":4565},[3925,34648,7232],{"class":4579},[3925,34650,4583],{"class":4508},[3925,34652,4594],{"class":4540},[3925,34654,5987],{"class":4597},[3925,34656,8365],{"class":4512},[3925,34658,3595],{"class":4597},[3925,34660,6893],{"class":4512},[3925,34662,16321],{"class":4597},[3925,34664,9205],{"class":4512},[3925,34666,15307],{"class":4512},[3925,34668,3595],{"class":4597},[3925,34670,15312],{"class":4512},[3925,34672,4191],{"class":4597},[3925,34674,11369],{"class":4512},[3925,34676,15307],{"class":4512},[3925,34678,3595],{"class":4597},[3925,34680,16010],{"class":4512},[3925,34682,16342],{"class":4597},[3925,34684,4610],{"class":4540},[3925,34686,4568],{"class":4561},[3925,34688,34689,34691,34693,34695,34697,34699,34701,34703,34705,34708,34710,34712,34714,34716,34718,34720,34722],{"class":3927,"line":6867},[3925,34690,7335],{"class":4561},[3925,34692,8398],{"class":4565},[3925,34694,7232],{"class":4579},[3925,34696,4583],{"class":4508},[3925,34698,4594],{"class":4540},[3925,34700,5987],{"class":4597},[3925,34702,8365],{"class":4512},[3925,34704,3595],{"class":4597},[3925,34706,34707],{"class":4512},"titleRow",[3925,34709,16321],{"class":4597},[3925,34711,11369],{"class":4512},[3925,34713,15307],{"class":4512},[3925,34715,3595],{"class":4597},[3925,34717,15372],{"class":4512},[3925,34719,16342],{"class":4597},[3925,34721,4610],{"class":4540},[3925,34723,4568],{"class":4561},[3925,34725,34726,34728,34730,34732,34734,34736,34738,34740,34742,34744,34746,34748,34750,34752,34754,34756,34759,34761],{"class":3927,"line":6872},[3925,34727,8630],{"class":4561},[3925,34729,14664],{"class":4565},[3925,34731,15773],{"class":4579},[3925,34733,4583],{"class":4508},[3925,34735,15778],{"class":4521},[3925,34737,8804],{"class":4579},[3925,34739,4583],{"class":4508},[3925,34741,4594],{"class":4540},[3925,34743,23792],{"class":5990},[3925,34745,4610],{"class":4540},[3925,34747,7232],{"class":4579},[3925,34749,4583],{"class":4508},[3925,34751,4594],{"class":4540},[3925,34753,8365],{"class":4512},[3925,34755,3595],{"class":4597},[3925,34757,34758],{"class":4512},"titleFlex",[3925,34760,4610],{"class":4540},[3925,34762,4568],{"class":4561},[3925,34764,34765,34767,34769,34771,34773],{"class":3927,"line":6906},[3925,34766,18626],{"class":4540},[3925,34768,4711],{"class":4512},[3925,34770,3595],{"class":4597},[3925,34772,6884],{"class":4512},[3925,34774,4016],{"class":4540},[3925,34776,34777,34779,34781],{"class":3927,"line":6921},[3925,34778,8857],{"class":4561},[3925,34780,14664],{"class":4565},[3925,34782,4568],{"class":4561},[3925,34784,34785,34787,34789,34791,34793,34795,34797,34799,34801,34803,34805,34808,34810],{"class":3927,"line":6941},[3925,34786,8630],{"class":4561},[3925,34788,14664],{"class":4565},[3925,34790,15773],{"class":4579},[3925,34792,4583],{"class":4508},[3925,34794,16084],{"class":4521},[3925,34796,7232],{"class":4579},[3925,34798,4583],{"class":4508},[3925,34800,4594],{"class":4540},[3925,34802,8365],{"class":4512},[3925,34804,3595],{"class":4597},[3925,34806,34807],{"class":4512},"dates",[3925,34809,4610],{"class":4540},[3925,34811,4568],{"class":4561},[3925,34813,34814,34816,34818,34820,34822],{"class":3927,"line":6962},[3925,34815,18626],{"class":4540},[3925,34817,4711],{"class":4512},[3925,34819,3595],{"class":4597},[3925,34821,18633],{"class":4512},[3925,34823,4016],{"class":4540},[3925,34825,34826,34828,34830],{"class":3927,"line":6977},[3925,34827,8857],{"class":4561},[3925,34829,14664],{"class":4565},[3925,34831,4568],{"class":4561},[3925,34833,34834,34836,34838],{"class":3927,"line":6990},[3925,34835,8493],{"class":4561},[3925,34837,8398],{"class":4565},[3925,34839,4568],{"class":4561},[3925,34841,34842,34844,34846,34848,34850,34852,34854,34856,34858,34860,34862,34864,34866,34868,34870,34872,34874,34876,34878,34880],{"class":3927,"line":6996},[3925,34843,7335],{"class":4561},[3925,34845,14664],{"class":4565},[3925,34847,15773],{"class":4579},[3925,34849,4583],{"class":4508},[3925,34851,16084],{"class":4521},[3925,34853,7720],{"class":4579},[3925,34855,4583],{"class":4508},[3925,34857,4594],{"class":4540},[3925,34859,13240],{"class":4512},[3925,34861,3595],{"class":4597},[3925,34863,13358],{"class":4512},[3925,34865,4610],{"class":4540},[3925,34867,7232],{"class":4579},[3925,34869,4583],{"class":4508},[3925,34871,4594],{"class":4540},[3925,34873,8365],{"class":4512},[3925,34875,3595],{"class":4597},[3925,34877,18647],{"class":4512},[3925,34879,4610],{"class":4540},[3925,34881,4568],{"class":4561},[3925,34883,34884,34886,34888,34890,34892],{"class":3927,"line":7014},[3925,34885,16225],{"class":4540},[3925,34887,4711],{"class":4512},[3925,34889,3595],{"class":4597},[3925,34891,18647],{"class":4512},[3925,34893,4016],{"class":4540},[3925,34895,34896,34898,34900,34902],{"class":3927,"line":7023},[3925,34897,16225],{"class":4540},[3925,34899,4711],{"class":4512},[3925,34901,3595],{"class":4597},[3925,34903,18660],{"class":4512},[3925,34905,34906,34908,34910,34912,34914,34916,34918,34920,34922,34924,34926,34928,34930,34932,34934,34936,34938,34940,34942],{"class":3927,"line":7032},[3925,34907,16242],{"class":4508},[3925,34909,18668],{"class":4521},[3925,34911,4708],{"class":4540},[3925,34913,4711],{"class":4512},[3925,34915,3595],{"class":4597},[3925,34917,18677],{"class":4512},[3925,34919,4610],{"class":4540},[3925,34921,24149],{"class":4540},[3925,34923,4711],{"class":4512},[3925,34925,3595],{"class":4597},[3925,34927,18677],{"class":4512},[3925,34929,10916],{"class":4508},[3925,34931,9064],{"class":5990},[3925,34933,10922],{"class":4508},[3925,34935,30973],{"class":4521},[3925,34937,10928],{"class":4508},[3925,34939,31005],{"class":4521},[3925,34941,4610],{"class":4540},[3925,34943,34944],{"class":4521},"`\n",[3925,34946,34947,34949,34951],{"class":3927,"line":7037},[3925,34948,16277],{"class":4508},[3925,34950,18690],{"class":4521},[3925,34952,4016],{"class":4540},[3925,34954,34955,34957,34959],{"class":3927,"line":7042},[3925,34956,8493],{"class":4561},[3925,34958,14664],{"class":4565},[3925,34960,4568],{"class":4561},[3925,34962,34963,34965,34967,34969,34971,34973,34975,34977,34979,34981,34983,34986],{"class":3927,"line":7070},[3925,34964,19510],{"class":4540},[3925,34966,4702],{"class":4597},[3925,34968,4711],{"class":4512},[3925,34970,3595],{"class":4597},[3925,34972,18752],{"class":4512},[3925,34974,8829],{"class":4508},[3925,34976,6013],{"class":4512},[3925,34978,3595],{"class":4597},[3925,34980,18817],{"class":4512},[3925,34982,6701],{"class":4597},[3925,34984,34985],{"class":4508},"&&",[3925,34987,4556],{"class":4597},[3925,34989,34990,34992,34994,34996,34998,35000,35002,35004,35006,35008,35010,35012,35014,35016,35018,35020,35022,35024,35026,35028,35030,35032],{"class":3927,"line":7086},[3925,34991,8630],{"class":4561},[3925,34993,8398],{"class":4565},[3925,34995,7232],{"class":4579},[3925,34997,4583],{"class":4508},[3925,34999,4594],{"class":4540},[3925,35001,5987],{"class":4597},[3925,35003,8365],{"class":4512},[3925,35005,3595],{"class":4597},[3925,35007,18725],{"class":4512},[3925,35009,16321],{"class":4597},[3925,35011,11369],{"class":4512},[3925,35013,15307],{"class":4512},[3925,35015,3595],{"class":4597},[3925,35017,16010],{"class":4512},[3925,35019,4191],{"class":4597},[3925,35021,9176],{"class":4512},[3925,35023,15307],{"class":4512},[3925,35025,3595],{"class":4597},[3925,35027,16010],{"class":4512},[3925,35029,16342],{"class":4597},[3925,35031,4610],{"class":4540},[3925,35033,4568],{"class":4561},[3925,35035,35036,35038,35040,35042,35044,35046],{"class":3927,"line":7097},[3925,35037,18626],{"class":4540},[3925,35039,4711],{"class":4512},[3925,35041,3595],{"class":4597},[3925,35043,18752],{"class":4512},[3925,35045,10922],{"class":4508},[3925,35047,4556],{"class":4597},[3925,35049,35050,35052],{"class":3927,"line":7114},[3925,35051,8745],{"class":4561},[3925,35053,15815],{"class":4565},[3925,35055,35056,35059,35061],{"class":3927,"line":7119},[3925,35057,35058],{"class":4579},"                variant",[3925,35060,4583],{"class":4508},[3925,35062,15825],{"class":4521},[3925,35064,35065,35067,35069,35071,35073,35075,35077,35080,35082,35084,35086,35088,35090,35092],{"class":3927,"line":9008},[3925,35066,16463],{"class":4579},[3925,35068,4583],{"class":4508},[3925,35070,4594],{"class":4540},[3925,35072,5987],{"class":4597},[3925,35074,8365],{"class":4512},[3925,35076,3595],{"class":4597},[3925,35078,35079],{"class":4512},"badge",[3925,35081,16321],{"class":4597},[3925,35083,7292],{"class":4512},[3925,35085,13324],{"class":4512},[3925,35087,3595],{"class":4597},[3925,35089,13752],{"class":4512},[3925,35091,16342],{"class":4597},[3925,35093,4016],{"class":4540},[3925,35095,35096],{"class":3927,"line":9017},[3925,35097,16608],{"class":4561},[3925,35099,35100],{"class":3927,"line":9022},[3925,35101,18789],{"class":4597},[3925,35103,35104,35106,35108],{"class":3927,"line":9027},[3925,35105,8839],{"class":4561},[3925,35107,14664],{"class":4565},[3925,35109,4568],{"class":4561},[3925,35111,35112,35114,35116],{"class":3927,"line":9032},[3925,35113,18802],{"class":4597},[3925,35115,4974],{"class":4508},[3925,35117,15613],{"class":4540},[3925,35119,35120,35122,35124,35126,35128,35130],{"class":3927,"line":9053},[3925,35121,18626],{"class":4540},[3925,35123,4711],{"class":4512},[3925,35125,3595],{"class":4597},[3925,35127,18817],{"class":4512},[3925,35129,10922],{"class":4508},[3925,35131,4556],{"class":4597},[3925,35133,35134,35136],{"class":3927,"line":9075},[3925,35135,8745],{"class":4561},[3925,35137,15815],{"class":4565},[3925,35139,35140,35142,35144],{"class":3927,"line":9083},[3925,35141,35058],{"class":4579},[3925,35143,4583],{"class":4508},[3925,35145,15825],{"class":4521},[3925,35147,35148,35150,35152,35154,35156,35158,35160,35162,35164,35166,35168,35170,35172,35174],{"class":3927,"line":9094},[3925,35149,16463],{"class":4579},[3925,35151,4583],{"class":4508},[3925,35153,4594],{"class":4540},[3925,35155,5987],{"class":4597},[3925,35157,8365],{"class":4512},[3925,35159,3595],{"class":4597},[3925,35161,35079],{"class":4512},[3925,35163,16321],{"class":4597},[3925,35165,7292],{"class":4512},[3925,35167,13324],{"class":4512},[3925,35169,3595],{"class":4597},[3925,35171,13358],{"class":4512},[3925,35173,16342],{"class":4597},[3925,35175,4016],{"class":4540},[3925,35177,35178],{"class":3927,"line":9105},[3925,35179,16608],{"class":4561},[3925,35181,35182],{"class":3927,"line":9115},[3925,35183,35184],{"class":4597},"                є план\n",[3925,35186,35187,35189,35191],{"class":3927,"line":9125},[3925,35188,8839],{"class":4561},[3925,35190,14664],{"class":4565},[3925,35192,4568],{"class":4561},[3925,35194,35195,35197,35199],{"class":3927,"line":9135},[3925,35196,18802],{"class":4597},[3925,35198,4974],{"class":4508},[3925,35200,15613],{"class":4540},[3925,35202,35203,35205,35207],{"class":3927,"line":9140},[3925,35204,8857],{"class":4561},[3925,35206,8398],{"class":4565},[3925,35208,4568],{"class":4561},[3925,35210,35211,35213],{"class":3927,"line":9168},[3925,35212,8866],{"class":4597},[3925,35214,4016],{"class":4540},[3925,35216,35217,35219],{"class":3927,"line":9197},[3925,35218,7335],{"class":4561},[3925,35220,15815],{"class":4565},[3925,35222,35223,35226,35228,35230,35232],{"class":3927,"line":9226},[3925,35224,35225],{"class":4579},"          numberOfLines",[3925,35227,4583],{"class":4508},[3925,35229,4594],{"class":4540},[3925,35231,8811],{"class":5990},[3925,35233,4016],{"class":4540},[3925,35235,35236,35238,35240,35242,35244,35246,35248,35250,35252,35254,35256,35258,35260,35262,35264],{"class":3927,"line":9234},[3925,35237,8911],{"class":4579},[3925,35239,4583],{"class":4508},[3925,35241,4594],{"class":4540},[3925,35243,4598],{"class":4597},[3925,35245,9176],{"class":4512},[3925,35247,15307],{"class":4512},[3925,35249,3595],{"class":4597},[3925,35251,16010],{"class":4512},[3925,35253,4191],{"class":4597},[3925,35255,7292],{"class":4512},[3925,35257,13324],{"class":4512},[3925,35259,3595],{"class":4597},[3925,35261,13752],{"class":4512},[3925,35263,4607],{"class":4597},[3925,35265,4016],{"class":4540},[3925,35267,35268],{"class":3927,"line":9245},[3925,35269,8957],{"class":4561},[3925,35271,35272,35274,35276,35278,35280],{"class":3927,"line":9255},[3925,35273,16225],{"class":4540},[3925,35275,4711],{"class":4512},[3925,35277,3595],{"class":4597},[3925,35279,18927],{"class":4512},[3925,35281,4016],{"class":4540},[3925,35283,35284,35286,35288],{"class":3927,"line":9265},[3925,35285,8493],{"class":4561},[3925,35287,14664],{"class":4565},[3925,35289,4568],{"class":4561},[3925,35291,35292,35294,35296,35298,35300,35302,35304,35306,35308,35310,35312,35314,35316,35318,35320,35322,35324],{"class":3927,"line":9275},[3925,35293,7335],{"class":4561},[3925,35295,8398],{"class":4565},[3925,35297,7232],{"class":4579},[3925,35299,4583],{"class":4508},[3925,35301,4594],{"class":4540},[3925,35303,5987],{"class":4597},[3925,35305,8365],{"class":4512},[3925,35307,3595],{"class":4597},[3925,35309,8895],{"class":4512},[3925,35311,16321],{"class":4597},[3925,35313,9176],{"class":4512},[3925,35315,15307],{"class":4512},[3925,35317,3595],{"class":4597},[3925,35319,15372],{"class":4512},[3925,35321,16342],{"class":4597},[3925,35323,4610],{"class":4540},[3925,35325,4568],{"class":4561},[3925,35327,35328,35330,35332,35334,35336,35338,35340,35342,35344,35346,35348,35350,35352],{"class":3927,"line":9286},[3925,35329,8630],{"class":4561},[3925,35331,14664],{"class":4565},[3925,35333,15773],{"class":4579},[3925,35335,4583],{"class":4508},[3925,35337,16084],{"class":4521},[3925,35339,7720],{"class":4579},[3925,35341,4583],{"class":4508},[3925,35343,4594],{"class":4540},[3925,35345,13240],{"class":4512},[3925,35347,3595],{"class":4597},[3925,35349,13358],{"class":4512},[3925,35351,4610],{"class":4540},[3925,35353,4568],{"class":4561},[3925,35355,35356],{"class":3927,"line":9291},[3925,35357,35358],{"class":4508},"            Відкрити\n",[3925,35360,35361,35363,35365],{"class":3927,"line":9319},[3925,35362,8857],{"class":4561},[3925,35364,14664],{"class":4565},[3925,35366,4568],{"class":4561},[3925,35368,35369,35371,35373],{"class":3927,"line":9346},[3925,35370,8493],{"class":4561},[3925,35372,8398],{"class":4565},[3925,35374,4568],{"class":4561},[3925,35376,35377,35379,35381],{"class":3927,"line":9354},[3925,35378,7434],{"class":4561},[3925,35380,8398],{"class":4565},[3925,35382,4568],{"class":4561},[3925,35384,35385,35387,35389],{"class":3927,"line":9363},[3925,35386,4669],{"class":4561},[3925,35388,8724],{"class":4565},[3925,35390,4568],{"class":4561},[3925,35392,35393],{"class":3927,"line":9373},[3925,35394,4678],{"class":4508},[3925,35396,35397],{"class":3927,"line":9383},[3925,35398,4016],{"class":4508},[3925,35400,35401],{"class":3927,"line":9388},[3925,35402,3950],{"emptyLinePlaceholder":3949},[3925,35404,35405],{"class":3927,"line":9396},[3925,35406,35407],{"class":4498},"\u002F** memo: рядок списку не перемальовується, якщо props ті самі. *\u002F\n",[3925,35409,35410,35412,35414,35417,35419,35421,35423,35426],{"class":3927,"line":9405},[3925,35411,4534],{"class":4504},[3925,35413,5191],{"class":4540},[3925,35415,35416],{"class":5194}," TripCard",[3925,35418,5967],{"class":4508},[3925,35420,34195],{"class":4544},[3925,35422,4702],{"class":4508},[3925,35424,35425],{"class":4512},"TripCardComponent",[3925,35427,4724],{"class":4508},[3925,35429,35430],{"class":3927,"line":9415},[3925,35431,3950],{"emptyLinePlaceholder":3949},[3925,35433,35434,35436,35438,35440,35442,35444,35446],{"class":3927,"line":9424},[3925,35435,5930],{"class":4540},[3925,35437,9037],{"class":5194},[3925,35439,5967],{"class":4508},[3925,35441,9042],{"class":4512},[3925,35443,3595],{"class":4508},[3925,35445,9047],{"class":4544},[3925,35447,9050],{"class":4508},[3925,35449,35450,35452],{"class":3927,"line":9435},[3925,35451,9229],{"class":4512},[3925,35453,5617],{"class":4508},[3925,35455,35456,35458,35460],{"class":3927,"line":9440},[3925,35457,9258],{"class":4512},[3925,35459,9064],{"class":5990},[3925,35461,5051],{"class":4508},[3925,35463,35464,35466,35468],{"class":3927,"line":9460},[3925,35465,31134],{"class":4512},[3925,35467,31137],{"class":4521},[3925,35469,5051],{"class":4508},[3925,35471,35472,35474,35476,35478,35480],{"class":3927,"line":11409},[3925,35473,19768],{"class":4508},[3925,35475,10908],{"class":4512},[3925,35477,3595],{"class":4508},[3925,35479,19775],{"class":4544},[3925,35481,9050],{"class":4508},[3925,35483,35484,35486],{"class":3927,"line":11418},[3925,35485,19782],{"class":4512},[3925,35487,5617],{"class":4508},[3925,35489,35490,35492,35494],{"class":3927,"line":11427},[3925,35491,19789],{"class":4512},[3925,35493,19792],{"class":4521},[3925,35495,5051],{"class":4508},[3925,35497,35498,35500,35503],{"class":3927,"line":11437},[3925,35499,19799],{"class":4512},[3925,35501,35502],{"class":5990}," 0.08",[3925,35504,5051],{"class":4508},[3925,35506,35507,35509,35511],{"class":3927,"line":11446},[3925,35508,19809],{"class":4512},[3925,35510,8607],{"class":5990},[3925,35512,5051],{"class":4508},[3925,35514,35515,35517,35519,35521,35523,35525,35527,35529],{"class":3927,"line":11457},[3925,35516,19818],{"class":4512},[3925,35518,4509],{"class":4508},[3925,35520,15555],{"class":4512},[3925,35522,15345],{"class":5990},[3925,35524,4191],{"class":4508},[3925,35526,8604],{"class":4512},[3925,35528,9179],{"class":5990},[3925,35530,5667],{"class":4508},[3925,35532,35533],{"class":3927,"line":11462},[3925,35534,12879],{"class":4508},[3925,35536,35537,35539],{"class":3927,"line":11470},[3925,35538,19841],{"class":4512},[3925,35540,5617],{"class":4508},[3925,35542,35543,35546,35548],{"class":3927,"line":11479},[3925,35544,35545],{"class":4512},"        elevation:",[3925,35547,27556],{"class":5990},[3925,35549,5051],{"class":4508},[3925,35551,35552],{"class":3927,"line":11488},[3925,35553,12879],{"class":4508},[3925,35555,35556,35558],{"class":3927,"line":11497},[3925,35557,19855],{"class":4512},[3925,35559,19858],{"class":4508},[3925,35561,35562],{"class":3927,"line":11506},[3925,35563,19863],{"class":4508},[3925,35565,35566],{"class":3927,"line":11515},[3925,35567,6584],{"class":4508},[3925,35569,35570,35573],{"class":3927,"line":11524},[3925,35571,35572],{"class":4512},"  cardPressed:",[3925,35574,5617],{"class":4508},[3925,35576,35577,35580,35583],{"class":3927,"line":11533},[3925,35578,35579],{"class":4512},"    opacity:",[3925,35581,35582],{"class":5990}," 0.92",[3925,35584,5051],{"class":4508},[3925,35586,35587],{"class":3927,"line":11542},[3925,35588,6584],{"class":4508},[3925,35590,35591,35593],{"class":3927,"line":11547},[3925,35592,19668],{"class":4512},[3925,35594,5617],{"class":4508},[3925,35596,35597,35599,35601],{"class":3927,"line":11563},[3925,35598,19675],{"class":4512},[3925,35600,19678],{"class":4521},[3925,35602,5051],{"class":4508},[3925,35604,35605,35607,35610],{"class":3927,"line":11570},[3925,35606,19685],{"class":4512},[3925,35608,35609],{"class":5990}," 160",[3925,35611,5051],{"class":4508},[3925,35613,35614],{"class":3927,"line":11580},[3925,35615,6584],{"class":4508},[3925,35617,35618,35620],{"class":3927,"line":11589},[3925,35619,10078],{"class":4512},[3925,35621,19858],{"class":4508},[3925,35623,35624,35627],{"class":3927,"line":11598},[3925,35625,35626],{"class":4512},"  titleRow:",[3925,35628,5617],{"class":4508},[3925,35630,35631,35633,35635],{"class":3927,"line":11607},[3925,35632,17373],{"class":4512},[3925,35634,17376],{"class":4521},[3925,35636,5051],{"class":4508},[3925,35638,35639,35641,35643],{"class":3927,"line":11616},[3925,35640,9427],{"class":4512},[3925,35642,9430],{"class":4521},[3925,35644,5051],{"class":4508},[3925,35646,35647],{"class":3927,"line":11621},[3925,35648,6584],{"class":4508},[3925,35650,35651,35654],{"class":3927,"line":11640},[3925,35652,35653],{"class":4512},"  titleFlex:",[3925,35655,5617],{"class":4508},[3925,35657,35658,35660,35662],{"class":3927,"line":15952},[3925,35659,10105],{"class":4512},[3925,35661,9064],{"class":5990},[3925,35663,5051],{"class":4508},[3925,35665,35666],{"class":3927,"line":15958},[3925,35667,6584],{"class":4508},[3925,35669,35670,35673],{"class":3927,"line":15972},[3925,35671,35672],{"class":4512},"  dates:",[3925,35674,5617],{"class":4508},[3925,35676,35677,35679,35681],{"class":3927,"line":15986},[3925,35678,34141],{"class":4512},[3925,35680,15345],{"class":5990},[3925,35682,5051],{"class":4508},[3925,35684,35685],{"class":3927,"line":16000},[3925,35686,6584],{"class":4508},[3925,35688,35689,35692],{"class":3927,"line":16015},[3925,35690,35691],{"class":4512},"  region:",[3925,35693,5617],{"class":4508},[3925,35695,35696,35698,35700],{"class":3927,"line":16029},[3925,35697,11430],{"class":4512},[3925,35699,7303],{"class":4521},[3925,35701,5051],{"class":4508},[3925,35703,35704],{"class":3927,"line":16035},[3925,35705,6584],{"class":4508},[3925,35707,35708,35710],{"class":3927,"line":16043},[3925,35709,19718],{"class":4512},[3925,35711,5617],{"class":4508},[3925,35713,35714,35716,35718],{"class":3927,"line":16048},[3925,35715,17373],{"class":4512},[3925,35717,17376],{"class":4521},[3925,35719,5051],{"class":4508},[3925,35721,35722,35724,35726],{"class":3927,"line":16073},[3925,35723,17384],{"class":4512},[3925,35725,17387],{"class":4521},[3925,35727,5051],{"class":4508},[3925,35729,35730],{"class":3927,"line":16109},[3925,35731,6584],{"class":4508},[3925,35733,35734,35737],{"class":3927,"line":16135},[3925,35735,35736],{"class":4512},"  badge:",[3925,35738,5617],{"class":4508},[3925,35740,35741,35743,35745],{"class":3927,"line":16144},[3925,35742,11430],{"class":4512},[3925,35744,7303],{"class":4521},[3925,35746,5051],{"class":4508},[3925,35748,35749,35751,35753],{"class":3927,"line":16151},[3925,35750,10209],{"class":4512},[3925,35752,7612],{"class":5990},[3925,35754,5051],{"class":4508},[3925,35756,35757],{"class":3927,"line":16161},[3925,35758,6584],{"class":4508},[3925,35760,35761,35763],{"class":3927,"line":16172},[3925,35762,9349],{"class":4512},[3925,35764,5617],{"class":4508},[3925,35766,35767,35769,35772],{"class":3927,"line":16186},[3925,35768,9427],{"class":4512},[3925,35770,35771],{"class":4521}," 'flex-start'",[3925,35773,5051],{"class":4508},[3925,35775,35776],{"class":3927,"line":16200},[3925,35777,6584],{"class":4508},[3925,35779,35780],{"class":3927,"line":16210},[3925,35781,5739],{"class":4508},[3916,35783,35786],{"className":4489,"code":35784,"filename":35785,"language":4491,"meta":3921,"style":3921},"import { memo } from 'react';\nimport { Pressable, StyleSheet } from 'react-native';\n\nimport type { Place } from '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002Ftypes';\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText } from '@\u002Fshared\u002Fui';\n\ntype PlaceChipProps = {\n  place: Place;\n  onPress?: (place: Place) => void;\n};\n\nfunction PlaceChipComponent({ place, onPress }: PlaceChipProps) {\n  const { colors, spacing, radius } = useTheme();\n\n  return (\n    \u003CPressable\n      accessibilityRole=\"button\"\n      accessibilityLabel={`Місце ${place.name}, ${place.city}`}\n      onPress={() => onPress?.(place)}\n      style={({ pressed }) => [\n        styles.chip,\n        {\n          backgroundColor: colors.surface,\n          borderColor: colors.border,\n          borderRadius: radius.md,\n          padding: spacing.sm,\n          opacity: pressed ? 0.9 : 1,\n        },\n      ]}\n    >\n      \u003CAppText variant=\"subtitle\" numberOfLines={1} style={styles.name}>\n        {place.name}\n      \u003C\u002FAppText>\n      \u003CAppText variant=\"caption\" color={colors.primary} style={styles.city}>\n        {place.city}\n      \u003C\u002FAppText>\n      \u003CAppText variant=\"caption\" numberOfLines={2} style={styles.note}>\n        {place.note}\n      \u003C\u002FAppText>\n    \u003C\u002FPressable>\n  );\n}\n\nexport const PlaceChip = memo(PlaceChipComponent);\n\nconst styles = StyleSheet.create({\n  chip: {\n    width: 160,\n    borderWidth: 1,\n    minHeight: 96,\n  },\n  name: {\n    fontSize: 16,\n  },\n  city: {\n    marginTop: 4,\n    fontWeight: '600',\n  },\n  note: {\n    marginTop: 6,\n  },\n});\n","src\u002Ffeatures\u002Ftrips\u002Fui\u002FPlaceChip.tsx",[3521,35787,35788,35804,35824,35828,35846,35862,35878,35882,35891,35902,35922,35926,35930,35952,35974,35978,35984,35990,35998,36035,36057,36075,36086,36090,36102,36114,36126,36138,36157,36161,36167,36171,36209,36221,36229,36271,36283,36291,36329,36341,36349,36357,36361,36365,36369,36389,36393,36409,36416,36424,36432,36441,36445,36452,36460,36464,36471,36479,36487,36491,36498,36506,36510],{"__ignoreMap":3921},[3925,35789,35790,35792,35794,35796,35798,35800,35802],{"class":3927,"line":3928},[3925,35791,4505],{"class":4504},[3925,35793,4509],{"class":4508},[3925,35795,34195],{"class":4512},[3925,35797,4515],{"class":4508},[3925,35799,4518],{"class":4504},[3925,35801,8122],{"class":4521},[3925,35803,4525],{"class":4508},[3925,35805,35806,35808,35810,35812,35814,35816,35818,35820,35822],{"class":3927,"line":3934},[3925,35807,4505],{"class":4504},[3925,35809,4509],{"class":4508},[3925,35811,8724],{"class":4512},[3925,35813,4191],{"class":4508},[3925,35815,9042],{"class":4512},[3925,35817,4515],{"class":4508},[3925,35819,4518],{"class":4504},[3925,35821,8175],{"class":4521},[3925,35823,4525],{"class":4508},[3925,35825,35826],{"class":3927,"line":3940},[3925,35827,3950],{"emptyLinePlaceholder":3949},[3925,35829,35830,35832,35834,35836,35838,35840,35842,35844],{"class":3927,"line":3946},[3925,35831,4505],{"class":4504},[3925,35833,6428],{"class":4504},[3925,35835,4509],{"class":4508},[3925,35837,14874],{"class":4512},[3925,35839,4515],{"class":4508},[3925,35841,4518],{"class":4504},[3925,35843,27013],{"class":4521},[3925,35845,4525],{"class":4508},[3925,35847,35848,35850,35852,35854,35856,35858,35860],{"class":3927,"line":3953},[3925,35849,4505],{"class":4504},[3925,35851,4509],{"class":4508},[3925,35853,13148],{"class":4512},[3925,35855,4515],{"class":4508},[3925,35857,4518],{"class":4504},[3925,35859,13155],{"class":4521},[3925,35861,4525],{"class":4508},[3925,35863,35864,35866,35868,35870,35872,35874,35876],{"class":3927,"line":3959},[3925,35865,4505],{"class":4504},[3925,35867,4509],{"class":4508},[3925,35869,14664],{"class":4512},[3925,35871,4515],{"class":4508},[3925,35873,4518],{"class":4504},[3925,35875,14681],{"class":4521},[3925,35877,4525],{"class":4508},[3925,35879,35880],{"class":3927,"line":3965},[3925,35881,3950],{"emptyLinePlaceholder":3949},[3925,35883,35884,35886,35889],{"class":3927,"line":3971},[3925,35885,6491],{"class":4540},[3925,35887,35888],{"class":4565}," PlaceChipProps",[3925,35890,5198],{"class":4508},[3925,35892,35893,35896,35898,35900],{"class":3927,"line":3977},[3925,35894,35895],{"class":4512},"  place",[3925,35897,4767],{"class":4508},[3925,35899,14874],{"class":4565},[3925,35901,4525],{"class":4508},[3925,35903,35904,35906,35908,35910,35912,35914,35916,35918,35920],{"class":3927,"line":3983},[3925,35905,34319],{"class":4544},[3925,35907,34322],{"class":4508},[3925,35909,15010],{"class":4512},[3925,35911,4767],{"class":4508},[3925,35913,14874],{"class":4565},[3925,35915,6701],{"class":4508},[3925,35917,5614],{"class":4540},[3925,35919,6502],{"class":4565},[3925,35921,4525],{"class":4508},[3925,35923,35924],{"class":3927,"line":3989},[3925,35925,5213],{"class":4508},[3925,35927,35928],{"class":3927,"line":3995},[3925,35929,3950],{"emptyLinePlaceholder":3949},[3925,35931,35932,35934,35937,35939,35941,35943,35945,35947,35950],{"class":3927,"line":4001},[3925,35933,6677],{"class":4540},[3925,35935,35936],{"class":4544}," PlaceChipComponent",[3925,35938,8674],{"class":4508},[3925,35940,15010],{"class":4512},[3925,35942,4191],{"class":4508},[3925,35944,34360],{"class":4512},[3925,35946,24871],{"class":4508},[3925,35948,35949],{"class":4565},"PlaceChipProps",[3925,35951,6049],{"class":4508},[3925,35953,35954,35956,35958,35960,35962,35964,35966,35968,35970,35972],{"class":3927,"line":4007},[3925,35955,6909],{"class":4540},[3925,35957,4509],{"class":4508},[3925,35959,13240],{"class":5194},[3925,35961,4191],{"class":4508},[3925,35963,14837],{"class":5194},[3925,35965,4191],{"class":4508},[3925,35967,17960],{"class":5194},[3925,35969,5937],{"class":4508},[3925,35971,13148],{"class":4544},[3925,35973,7020],{"class":4508},[3925,35975,35976],{"class":3927,"line":4013},[3925,35977,3950],{"emptyLinePlaceholder":3949},[3925,35979,35980,35982],{"class":3927,"line":4019},[3925,35981,4553],{"class":4504},[3925,35983,4556],{"class":4508},[3925,35985,35986,35988],{"class":3927,"line":4024},[3925,35987,4562],{"class":4561},[3925,35989,8906],{"class":4565},[3925,35991,35992,35994,35996],{"class":3927,"line":4030},[3925,35993,34410],{"class":4579},[3925,35995,4583],{"class":4508},[3925,35997,16554],{"class":4521},[3925,35999,36000,36002,36004,36006,36009,36011,36013,36015,36017,36019,36021,36023,36025,36027,36029,36031,36033],{"class":3927,"line":4036},[3925,36001,34419],{"class":4579},[3925,36003,4583],{"class":4508},[3925,36005,4594],{"class":4540},[3925,36007,36008],{"class":4521},"`Місце ",[3925,36010,4708],{"class":4540},[3925,36012,15010],{"class":4512},[3925,36014,3595],{"class":4597},[3925,36016,5317],{"class":4512},[3925,36018,4610],{"class":4540},[3925,36020,4191],{"class":4521},[3925,36022,4708],{"class":4540},[3925,36024,15010],{"class":4512},[3925,36026,3595],{"class":4597},[3925,36028,19517],{"class":4512},[3925,36030,4610],{"class":4540},[3925,36032,4721],{"class":4521},[3925,36034,4016],{"class":4540},[3925,36036,36037,36039,36041,36043,36045,36047,36049,36051,36053,36055],{"class":3927,"line":4041},[3925,36038,5697],{"class":4579},[3925,36040,4583],{"class":4508},[3925,36042,4594],{"class":4540},[3925,36044,8586],{"class":4597},[3925,36046,5614],{"class":4540},[3925,36048,9784],{"class":4544},[3925,36050,34457],{"class":4597},[3925,36052,15010],{"class":4512},[3925,36054,4251],{"class":4597},[3925,36056,4016],{"class":4540},[3925,36058,36059,36061,36063,36065,36067,36069,36071,36073],{"class":3927,"line":4047},[3925,36060,10883],{"class":4579},[3925,36062,4583],{"class":4508},[3925,36064,4594],{"class":4540},[3925,36066,8674],{"class":4597},[3925,36068,34476],{"class":4512},[3925,36070,5611],{"class":4597},[3925,36072,5614],{"class":4540},[3925,36074,34483],{"class":4597},[3925,36076,36077,36079,36081,36084],{"class":3927,"line":4053},[3925,36078,15698],{"class":4512},[3925,36080,3595],{"class":4597},[3925,36082,36083],{"class":4512},"chip",[3925,36085,5051],{"class":4597},[3925,36087,36088],{"class":3927,"line":4059},[3925,36089,10662],{"class":4597},[3925,36091,36092,36094,36096,36098,36100],{"class":3927,"line":4065},[3925,36093,7580],{"class":4512},[3925,36095,13324],{"class":4512},[3925,36097,3595],{"class":4597},[3925,36099,16513],{"class":4512},[3925,36101,5051],{"class":4597},[3925,36103,36104,36106,36108,36110,36112],{"class":3927,"line":4070},[3925,36105,19388],{"class":4512},[3925,36107,13324],{"class":4512},[3925,36109,3595],{"class":4597},[3925,36111,13783],{"class":4512},[3925,36113,5051],{"class":4597},[3925,36115,36116,36118,36120,36122,36124],{"class":3927,"line":4076},[3925,36117,19401],{"class":4512},[3925,36119,19404],{"class":4512},[3925,36121,3595],{"class":4597},[3925,36123,15312],{"class":4512},[3925,36125,5051],{"class":4597},[3925,36127,36128,36130,36132,36134,36136],{"class":3927,"line":4082},[3925,36129,19415],{"class":4512},[3925,36131,15307],{"class":4512},[3925,36133,3595],{"class":4597},[3925,36135,15372],{"class":4512},[3925,36137,5051],{"class":4597},[3925,36139,36140,36143,36146,36148,36151,36153,36155],{"class":3927,"line":4088},[3925,36141,36142],{"class":4512},"          opacity:",[3925,36144,36145],{"class":4512}," pressed",[3925,36147,10922],{"class":4508},[3925,36149,36150],{"class":5990}," 0.9",[3925,36152,10928],{"class":4508},[3925,36154,9064],{"class":5990},[3925,36156,5051],{"class":4597},[3925,36158,36159],{"class":3927,"line":4093},[3925,36160,7599],{"class":4597},[3925,36162,36163,36165],{"class":3927,"line":4098},[3925,36164,15758],{"class":4597},[3925,36166,4016],{"class":4540},[3925,36168,36169],{"class":3927,"line":6720},[3925,36170,7632],{"class":4561},[3925,36172,36173,36175,36177,36179,36181,36183,36185,36187,36189,36191,36193,36195,36197,36199,36201,36203,36205,36207],{"class":3927,"line":6738},[3925,36174,4573],{"class":4561},[3925,36176,14664],{"class":4565},[3925,36178,15773],{"class":4579},[3925,36180,4583],{"class":4508},[3925,36182,15778],{"class":4521},[3925,36184,8804],{"class":4579},[3925,36186,4583],{"class":4508},[3925,36188,4594],{"class":4540},[3925,36190,23792],{"class":5990},[3925,36192,4610],{"class":4540},[3925,36194,7232],{"class":4579},[3925,36196,4583],{"class":4508},[3925,36198,4594],{"class":4540},[3925,36200,8365],{"class":4512},[3925,36202,3595],{"class":4597},[3925,36204,5317],{"class":4512},[3925,36206,4610],{"class":4540},[3925,36208,4568],{"class":4561},[3925,36210,36211,36213,36215,36217,36219],{"class":3927,"line":6787},[3925,36212,19510],{"class":4540},[3925,36214,15010],{"class":4512},[3925,36216,3595],{"class":4597},[3925,36218,5317],{"class":4512},[3925,36220,4016],{"class":4540},[3925,36222,36223,36225,36227],{"class":3927,"line":6792},[3925,36224,7434],{"class":4561},[3925,36226,14664],{"class":4565},[3925,36228,4568],{"class":4561},[3925,36230,36231,36233,36235,36237,36239,36241,36243,36245,36247,36249,36251,36253,36255,36257,36259,36261,36263,36265,36267,36269],{"class":3927,"line":6797},[3925,36232,4573],{"class":4561},[3925,36234,14664],{"class":4565},[3925,36236,15773],{"class":4579},[3925,36238,4583],{"class":4508},[3925,36240,16084],{"class":4521},[3925,36242,7720],{"class":4579},[3925,36244,4583],{"class":4508},[3925,36246,4594],{"class":4540},[3925,36248,13240],{"class":4512},[3925,36250,3595],{"class":4597},[3925,36252,13358],{"class":4512},[3925,36254,4610],{"class":4540},[3925,36256,7232],{"class":4579},[3925,36258,4583],{"class":4508},[3925,36260,4594],{"class":4540},[3925,36262,8365],{"class":4512},[3925,36264,3595],{"class":4597},[3925,36266,19517],{"class":4512},[3925,36268,4610],{"class":4540},[3925,36270,4568],{"class":4561},[3925,36272,36273,36275,36277,36279,36281],{"class":3927,"line":6827},[3925,36274,19510],{"class":4540},[3925,36276,15010],{"class":4512},[3925,36278,3595],{"class":4597},[3925,36280,19517],{"class":4512},[3925,36282,4016],{"class":4540},[3925,36284,36285,36287,36289],{"class":3927,"line":6862},[3925,36286,7434],{"class":4561},[3925,36288,14664],{"class":4565},[3925,36290,4568],{"class":4561},[3925,36292,36293,36295,36297,36299,36301,36303,36305,36307,36309,36311,36313,36315,36317,36319,36321,36323,36325,36327],{"class":3927,"line":6867},[3925,36294,4573],{"class":4561},[3925,36296,14664],{"class":4565},[3925,36298,15773],{"class":4579},[3925,36300,4583],{"class":4508},[3925,36302,16084],{"class":4521},[3925,36304,8804],{"class":4579},[3925,36306,4583],{"class":4508},[3925,36308,4594],{"class":4540},[3925,36310,8811],{"class":5990},[3925,36312,4610],{"class":4540},[3925,36314,7232],{"class":4579},[3925,36316,4583],{"class":4508},[3925,36318,4594],{"class":4540},[3925,36320,8365],{"class":4512},[3925,36322,3595],{"class":4597},[3925,36324,3682],{"class":4512},[3925,36326,4610],{"class":4540},[3925,36328,4568],{"class":4561},[3925,36330,36331,36333,36335,36337,36339],{"class":3927,"line":6872},[3925,36332,19510],{"class":4540},[3925,36334,15010],{"class":4512},[3925,36336,3595],{"class":4597},[3925,36338,3682],{"class":4512},[3925,36340,4016],{"class":4540},[3925,36342,36343,36345,36347],{"class":3927,"line":6906},[3925,36344,7434],{"class":4561},[3925,36346,14664],{"class":4565},[3925,36348,4568],{"class":4561},[3925,36350,36351,36353,36355],{"class":3927,"line":6921},[3925,36352,4669],{"class":4561},[3925,36354,8724],{"class":4565},[3925,36356,4568],{"class":4561},[3925,36358,36359],{"class":3927,"line":6941},[3925,36360,4678],{"class":4508},[3925,36362,36363],{"class":3927,"line":6962},[3925,36364,4016],{"class":4508},[3925,36366,36367],{"class":3927,"line":6977},[3925,36368,3950],{"emptyLinePlaceholder":3949},[3925,36370,36371,36373,36375,36378,36380,36382,36384,36387],{"class":3927,"line":6990},[3925,36372,4534],{"class":4504},[3925,36374,5191],{"class":4540},[3925,36376,36377],{"class":5194}," PlaceChip",[3925,36379,5967],{"class":4508},[3925,36381,34195],{"class":4544},[3925,36383,4702],{"class":4508},[3925,36385,36386],{"class":4512},"PlaceChipComponent",[3925,36388,4724],{"class":4508},[3925,36390,36391],{"class":3927,"line":6996},[3925,36392,3950],{"emptyLinePlaceholder":3949},[3925,36394,36395,36397,36399,36401,36403,36405,36407],{"class":3927,"line":7014},[3925,36396,5930],{"class":4540},[3925,36398,9037],{"class":5194},[3925,36400,5967],{"class":4508},[3925,36402,9042],{"class":4512},[3925,36404,3595],{"class":4508},[3925,36406,9047],{"class":4544},[3925,36408,9050],{"class":4508},[3925,36410,36411,36414],{"class":3927,"line":7023},[3925,36412,36413],{"class":4512},"  chip:",[3925,36415,5617],{"class":4508},[3925,36417,36418,36420,36422],{"class":3927,"line":7032},[3925,36419,19675],{"class":4512},[3925,36421,35609],{"class":5990},[3925,36423,5051],{"class":4508},[3925,36425,36426,36428,36430],{"class":3927,"line":7037},[3925,36427,9258],{"class":4512},[3925,36429,9064],{"class":5990},[3925,36431,5051],{"class":4508},[3925,36433,36434,36436,36439],{"class":3927,"line":7042},[3925,36435,31101],{"class":4512},[3925,36437,36438],{"class":5990}," 96",[3925,36440,5051],{"class":4508},[3925,36442,36443],{"class":3927,"line":7070},[3925,36444,6584],{"class":4508},[3925,36446,36447,36450],{"class":3927,"line":7086},[3925,36448,36449],{"class":4512},"  name:",[3925,36451,5617],{"class":4508},[3925,36453,36454,36456,36458],{"class":3927,"line":7097},[3925,36455,10209],{"class":4512},[3925,36457,9089],{"class":5990},[3925,36459,5051],{"class":4508},[3925,36461,36462],{"class":3927,"line":7114},[3925,36463,6584],{"class":4508},[3925,36465,36466,36469],{"class":3927,"line":7119},[3925,36467,36468],{"class":4512},"  city:",[3925,36470,5617],{"class":4508},[3925,36472,36473,36475,36477],{"class":3927,"line":9008},[3925,36474,10200],{"class":4512},[3925,36476,9179],{"class":5990},[3925,36478,5051],{"class":4508},[3925,36480,36481,36483,36485],{"class":3927,"line":9017},[3925,36482,11430],{"class":4512},[3925,36484,7303],{"class":4521},[3925,36486,5051],{"class":4508},[3925,36488,36489],{"class":3927,"line":9022},[3925,36490,6584],{"class":4508},[3925,36492,36493,36496],{"class":3927,"line":9027},[3925,36494,36495],{"class":4512},"  note:",[3925,36497,5617],{"class":4508},[3925,36499,36500,36502,36504],{"class":3927,"line":9032},[3925,36501,10200],{"class":4512},[3925,36503,9329],{"class":5990},[3925,36505,5051],{"class":4508},[3925,36507,36508],{"class":3927,"line":9053},[3925,36509,6584],{"class":4508},[3925,36511,36512],{"class":3927,"line":9075},[3925,36513,5739],{"class":4508},[3916,36515,36518],{"className":6417,"code":36516,"filename":36517,"language":6419,"meta":3921,"style":3921},"\u002F**\n * Семантичні кольори: назва = роль на екрані, не «синій-500».\n * light \u002F dark — дві палітри з однаковими ключами.\n *\u002F\n\nexport const lightColors = {\n  background: '#F8FAFC',\n  surface: '#FFFFFF',\n  text: '#0F172A',\n  textSecondary: '#64748B',\n  primary: '#2563EB',\n  primaryPressed: '#1D4ED8',\n  border: '#E2E8F0',\n  danger: '#DC2626',\n  onPrimary: '#FFFFFF',\n} as const;\n\nexport const darkColors = {\n  background: '#000000',\n  surface: '#1C1C1E',\n  text: '#F5F5F7',\n  textSecondary: '#A1A1AA',\n  primary: '#3B82F6',\n  primaryPressed: '#2563EB',\n  border: '#3A3A3C',\n  danger: '#F87171',\n  onPrimary: '#FFFFFF',\n} as const;\n\nexport type ColorTokens = {\n  [K in keyof typeof lightColors]: string;\n};\n\nexport type ColorSchemeName = 'light' | 'dark';\n\nexport function colorsForScheme(scheme: ColorSchemeName): ColorTokens {\n  return scheme === 'dark' ? { ...darkColors } : { ...lightColors };\n}\n","src\u002Fshared\u002Ftheme\u002Fcolors.ts",[3521,36519,36520,36524,36529,36534,36538,36542,36553,36562,36572,36581,36590,36599,36609,36618,36628,36637,36647,36651,36662,36671,36680,36689,36698,36707,36715,36724,36733,36741,36751,36755,36766,36792,36796,36800,36821,36825,36850,36876],{"__ignoreMap":3921},[3925,36521,36522],{"class":3927,"line":3928},[3925,36523,13166],{"class":4498},[3925,36525,36526],{"class":3927,"line":3934},[3925,36527,36528],{"class":4498}," * Семантичні кольори: назва = роль на екрані, не «синій-500».\n",[3925,36530,36531],{"class":3927,"line":3940},[3925,36532,36533],{"class":4498}," * light \u002F dark — дві палітри з однаковими ключами.\n",[3925,36535,36536],{"class":3927,"line":3946},[3925,36537,13196],{"class":4498},[3925,36539,36540],{"class":3927,"line":3953},[3925,36541,3950],{"emptyLinePlaceholder":3949},[3925,36543,36544,36546,36548,36551],{"class":3927,"line":3959},[3925,36545,4534],{"class":4504},[3925,36547,5191],{"class":4540},[3925,36549,36550],{"class":5194}," lightColors",[3925,36552,5198],{"class":4508},[3925,36554,36555,36558,36560],{"class":3927,"line":3965},[3925,36556,36557],{"class":4512},"  background:",[3925,36559,7270],{"class":4521},[3925,36561,5051],{"class":4508},[3925,36563,36564,36567,36570],{"class":3927,"line":3971},[3925,36565,36566],{"class":4512},"  surface:",[3925,36568,36569],{"class":4521}," '#FFFFFF'",[3925,36571,5051],{"class":4508},[3925,36573,36574,36577,36579],{"class":3927,"line":3977},[3925,36575,36576],{"class":4512},"  text:",[3925,36578,7295],{"class":4521},[3925,36580,5051],{"class":4508},[3925,36582,36583,36586,36588],{"class":3927,"line":3983},[3925,36584,36585],{"class":4512},"  textSecondary:",[3925,36587,7566],{"class":4521},[3925,36589,5051],{"class":4508},[3925,36591,36592,36595,36597],{"class":3927,"line":3989},[3925,36593,36594],{"class":4512},"  primary:",[3925,36596,7280],{"class":4521},[3925,36598,5051],{"class":4508},[3925,36600,36601,36604,36607],{"class":3927,"line":3995},[3925,36602,36603],{"class":4512},"  primaryPressed:",[3925,36605,36606],{"class":4521}," '#1D4ED8'",[3925,36608,5051],{"class":4508},[3925,36610,36611,36614,36616],{"class":3927,"line":4001},[3925,36612,36613],{"class":4512},"  border:",[3925,36615,7592],{"class":4521},[3925,36617,5051],{"class":4508},[3925,36619,36620,36623,36626],{"class":3927,"line":4007},[3925,36621,36622],{"class":4512},"  danger:",[3925,36624,36625],{"class":4521}," '#DC2626'",[3925,36627,5051],{"class":4508},[3925,36629,36630,36633,36635],{"class":3927,"line":4013},[3925,36631,36632],{"class":4512},"  onPrimary:",[3925,36634,36569],{"class":4521},[3925,36636,5051],{"class":4508},[3925,36638,36639,36641,36643,36645],{"class":3927,"line":4019},[3925,36640,8170],{"class":4508},[3925,36642,23387],{"class":4504},[3925,36644,5191],{"class":4540},[3925,36646,4525],{"class":4508},[3925,36648,36649],{"class":3927,"line":4024},[3925,36650,3950],{"emptyLinePlaceholder":3949},[3925,36652,36653,36655,36657,36660],{"class":3927,"line":4030},[3925,36654,4534],{"class":4504},[3925,36656,5191],{"class":4540},[3925,36658,36659],{"class":5194}," darkColors",[3925,36661,5198],{"class":4508},[3925,36663,36664,36666,36669],{"class":3927,"line":4036},[3925,36665,36557],{"class":4512},[3925,36667,36668],{"class":4521}," '#000000'",[3925,36670,5051],{"class":4508},[3925,36672,36673,36675,36678],{"class":3927,"line":4041},[3925,36674,36566],{"class":4512},[3925,36676,36677],{"class":4521}," '#1C1C1E'",[3925,36679,5051],{"class":4508},[3925,36681,36682,36684,36687],{"class":3927,"line":4047},[3925,36683,36576],{"class":4512},[3925,36685,36686],{"class":4521}," '#F5F5F7'",[3925,36688,5051],{"class":4508},[3925,36690,36691,36693,36696],{"class":3927,"line":4053},[3925,36692,36585],{"class":4512},[3925,36694,36695],{"class":4521}," '#A1A1AA'",[3925,36697,5051],{"class":4508},[3925,36699,36700,36702,36705],{"class":3927,"line":4059},[3925,36701,36594],{"class":4512},[3925,36703,36704],{"class":4521}," '#3B82F6'",[3925,36706,5051],{"class":4508},[3925,36708,36709,36711,36713],{"class":3927,"line":4065},[3925,36710,36603],{"class":4512},[3925,36712,7280],{"class":4521},[3925,36714,5051],{"class":4508},[3925,36716,36717,36719,36722],{"class":3927,"line":4070},[3925,36718,36613],{"class":4512},[3925,36720,36721],{"class":4521}," '#3A3A3C'",[3925,36723,5051],{"class":4508},[3925,36725,36726,36728,36731],{"class":3927,"line":4076},[3925,36727,36622],{"class":4512},[3925,36729,36730],{"class":4521}," '#F87171'",[3925,36732,5051],{"class":4508},[3925,36734,36735,36737,36739],{"class":3927,"line":4082},[3925,36736,36632],{"class":4512},[3925,36738,36569],{"class":4521},[3925,36740,5051],{"class":4508},[3925,36742,36743,36745,36747,36749],{"class":3927,"line":4088},[3925,36744,8170],{"class":4508},[3925,36746,23387],{"class":4504},[3925,36748,5191],{"class":4540},[3925,36750,4525],{"class":4508},[3925,36752,36753],{"class":3927,"line":4093},[3925,36754,3950],{"emptyLinePlaceholder":3949},[3925,36756,36757,36759,36761,36764],{"class":3927,"line":4098},[3925,36758,4534],{"class":4504},[3925,36760,6428],{"class":4540},[3925,36762,36763],{"class":4565}," ColorTokens",[3925,36765,5198],{"class":4508},[3925,36767,36768,36771,36774,36777,36780,36783,36785,36788,36790],{"class":3927,"line":6720},[3925,36769,36770],{"class":4508},"  [",[3925,36772,36773],{"class":4565},"K",[3925,36775,36776],{"class":4540}," in",[3925,36778,36779],{"class":4540}," keyof",[3925,36781,36782],{"class":4540}," typeof",[3925,36784,36550],{"class":4512},[3925,36786,36787],{"class":4508},"]: ",[3925,36789,5949],{"class":4565},[3925,36791,4525],{"class":4508},[3925,36793,36794],{"class":3927,"line":6738},[3925,36795,5213],{"class":4508},[3925,36797,36798],{"class":3927,"line":6787},[3925,36799,3950],{"emptyLinePlaceholder":3949},[3925,36801,36802,36804,36806,36809,36811,36814,36816,36819],{"class":3927,"line":6792},[3925,36803,4534],{"class":4504},[3925,36805,6428],{"class":4540},[3925,36807,36808],{"class":4565}," ColorSchemeName",[3925,36810,5967],{"class":4508},[3925,36812,36813],{"class":4521},"'light'",[3925,36815,6820],{"class":4508},[3925,36817,36818],{"class":4521},"'dark'",[3925,36820,4525],{"class":4508},[3925,36822,36823],{"class":3927,"line":6797},[3925,36824,3950],{"emptyLinePlaceholder":3949},[3925,36826,36827,36829,36831,36834,36836,36838,36840,36843,36845,36848],{"class":3927,"line":6827},[3925,36828,4534],{"class":4504},[3925,36830,4541],{"class":4540},[3925,36832,36833],{"class":4544}," colorsForScheme",[3925,36835,4702],{"class":4508},[3925,36837,13245],{"class":4512},[3925,36839,4767],{"class":4508},[3925,36841,36842],{"class":4565},"ColorSchemeName",[3925,36844,6815],{"class":4508},[3925,36846,36847],{"class":4565},"ColorTokens",[3925,36849,5617],{"class":4508},[3925,36851,36852,36854,36857,36859,36861,36864,36867,36870,36873],{"class":3927,"line":6862},[3925,36853,4553],{"class":4504},[3925,36855,36856],{"class":4512}," scheme",[3925,36858,6855],{"class":4508},[3925,36860,36818],{"class":4521},[3925,36862,36863],{"class":4508}," ? { ...",[3925,36865,36866],{"class":4512},"darkColors",[3925,36868,36869],{"class":4508}," } : { ...",[3925,36871,36872],{"class":4512},"lightColors",[3925,36874,36875],{"class":4508}," };\n",[3925,36877,36878],{"class":3927,"line":6867},[3925,36879,4016],{"class":4508},[3916,36881,36884],{"className":6417,"code":36882,"filename":36883,"language":6419,"meta":3921,"style":3921},"\u002F**\n * Токени, що **не** залежать від light\u002Fdark:\n * відступи, радіуси, розміри шрифтів.\n * Кольори — у colors.ts + ThemeProvider.\n *\u002F\n\nexport const space = {\n  xs: 4,\n  sm: 8,\n  md: 16,\n  lg: 24,\n  xl: 32,\n} as const;\n\nexport const radius = {\n  sm: 8,\n  md: 12,\n  lg: 16,\n} as const;\n\nexport const fontSize = {\n  sm: 14,\n  md: 16,\n  lg: 20,\n  xl: 28,\n} as const;\n\n\u002F** @deprecated Використовуйте useTheme() для кольорів; space\u002Fradius\u002FfontSize — нижче. *\u002F\nexport const tokens = {\n  \u002F** Світла палітра (fallback, якщо хтось імпортує tokens.colors без теми). *\u002F\n  colors: {\n    background: '#F8FAFC',\n    surface: '#FFFFFF',\n    text: '#0F172A',\n    textSecondary: '#64748B',\n    primary: '#2563EB',\n    primaryPressed: '#1D4ED8',\n    border: '#E2E8F0',\n    danger: '#DC2626',\n    onPrimary: '#FFFFFF',\n  },\n  spacing: space,\n  radius,\n  fontSize,\n} as const;\n\nexport type Tokens = typeof tokens;\n","src\u002Fshared\u002Ftheme\u002Ftokens.ts",[3521,36885,36886,36890,36895,36900,36905,36909,36913,36924,36933,36942,36951,36960,36969,36979,36983,36993,37001,37009,37017,37027,37031,37042,37050,37058,37066,37075,37085,37089,37100,37111,37116,37123,37132,37141,37150,37159,37168,37177,37186,37195,37204,37208,37217,37224,37231,37241,37245],{"__ignoreMap":3921},[3925,36887,36888],{"class":3927,"line":3928},[3925,36889,13166],{"class":4498},[3925,36891,36892],{"class":3927,"line":3934},[3925,36893,36894],{"class":4498}," * Токени, що **не** залежать від light\u002Fdark:\n",[3925,36896,36897],{"class":3927,"line":3940},[3925,36898,36899],{"class":4498}," * відступи, радіуси, розміри шрифтів.\n",[3925,36901,36902],{"class":3927,"line":3946},[3925,36903,36904],{"class":4498}," * Кольори — у colors.ts + ThemeProvider.\n",[3925,36906,36907],{"class":3927,"line":3953},[3925,36908,13196],{"class":4498},[3925,36910,36911],{"class":3927,"line":3959},[3925,36912,3950],{"emptyLinePlaceholder":3949},[3925,36914,36915,36917,36919,36922],{"class":3927,"line":3965},[3925,36916,4534],{"class":4504},[3925,36918,5191],{"class":4540},[3925,36920,36921],{"class":5194}," space",[3925,36923,5198],{"class":4508},[3925,36925,36926,36929,36931],{"class":3927,"line":3971},[3925,36927,36928],{"class":4512},"  xs:",[3925,36930,9179],{"class":5990},[3925,36932,5051],{"class":4508},[3925,36934,36935,36938,36940],{"class":3927,"line":3977},[3925,36936,36937],{"class":4512},"  sm:",[3925,36939,9100],{"class":5990},[3925,36941,5051],{"class":4508},[3925,36943,36944,36947,36949],{"class":3927,"line":3983},[3925,36945,36946],{"class":4512},"  md:",[3925,36948,9089],{"class":5990},[3925,36950,5051],{"class":4508},[3925,36952,36953,36956,36958],{"class":3927,"line":3989},[3925,36954,36955],{"class":4512},"  lg:",[3925,36957,9150],{"class":5990},[3925,36959,5051],{"class":4508},[3925,36961,36962,36965,36967],{"class":3927,"line":3995},[3925,36963,36964],{"class":4512},"  xl:",[3925,36966,20862],{"class":5990},[3925,36968,5051],{"class":4508},[3925,36970,36971,36973,36975,36977],{"class":3927,"line":4001},[3925,36972,8170],{"class":4508},[3925,36974,23387],{"class":4504},[3925,36976,5191],{"class":4540},[3925,36978,4525],{"class":4508},[3925,36980,36981],{"class":3927,"line":4007},[3925,36982,3950],{"emptyLinePlaceholder":3949},[3925,36984,36985,36987,36989,36991],{"class":3927,"line":4013},[3925,36986,4534],{"class":4504},[3925,36988,5191],{"class":4540},[3925,36990,19404],{"class":5194},[3925,36992,5198],{"class":4508},[3925,36994,36995,36997,36999],{"class":3927,"line":4019},[3925,36996,36937],{"class":4512},[3925,36998,9100],{"class":5990},[3925,37000,5051],{"class":4508},[3925,37002,37003,37005,37007],{"class":3927,"line":4024},[3925,37004,36946],{"class":4512},[3925,37006,7612],{"class":5990},[3925,37008,5051],{"class":4508},[3925,37010,37011,37013,37015],{"class":3927,"line":4030},[3925,37012,36955],{"class":4512},[3925,37014,9089],{"class":5990},[3925,37016,5051],{"class":4508},[3925,37018,37019,37021,37023,37025],{"class":3927,"line":4036},[3925,37020,8170],{"class":4508},[3925,37022,23387],{"class":4504},[3925,37024,5191],{"class":4540},[3925,37026,4525],{"class":4508},[3925,37028,37029],{"class":3927,"line":4041},[3925,37030,3950],{"emptyLinePlaceholder":3949},[3925,37032,37033,37035,37037,37040],{"class":3927,"line":4047},[3925,37034,4534],{"class":4504},[3925,37036,5191],{"class":4540},[3925,37038,37039],{"class":5194}," fontSize",[3925,37041,5198],{"class":4508},[3925,37043,37044,37046,37048],{"class":3927,"line":4053},[3925,37045,36937],{"class":4512},[3925,37047,9281],{"class":5990},[3925,37049,5051],{"class":4508},[3925,37051,37052,37054,37056],{"class":3927,"line":4059},[3925,37053,36946],{"class":4512},[3925,37055,9089],{"class":5990},[3925,37057,5051],{"class":4508},[3925,37059,37060,37062,37064],{"class":3927,"line":4065},[3925,37061,36955],{"class":4512},[3925,37063,11575],{"class":5990},[3925,37065,5051],{"class":4508},[3925,37067,37068,37070,37073],{"class":3927,"line":4070},[3925,37069,36964],{"class":4512},[3925,37071,37072],{"class":5990}," 28",[3925,37074,5051],{"class":4508},[3925,37076,37077,37079,37081,37083],{"class":3927,"line":4076},[3925,37078,8170],{"class":4508},[3925,37080,23387],{"class":4504},[3925,37082,5191],{"class":4540},[3925,37084,4525],{"class":4508},[3925,37086,37087],{"class":3927,"line":4082},[3925,37088,3950],{"emptyLinePlaceholder":3949},[3925,37090,37091,37094,37097],{"class":3927,"line":4088},[3925,37092,37093],{"class":4498},"\u002F** ",[3925,37095,37096],{"class":4540},"@deprecated",[3925,37098,37099],{"class":4498}," Використовуйте useTheme() для кольорів; space\u002Fradius\u002FfontSize — нижче. *\u002F\n",[3925,37101,37102,37104,37106,37109],{"class":3927,"line":4093},[3925,37103,4534],{"class":4504},[3925,37105,5191],{"class":4540},[3925,37107,37108],{"class":5194}," tokens",[3925,37110,5198],{"class":4508},[3925,37112,37113],{"class":3927,"line":4098},[3925,37114,37115],{"class":4498},"  \u002F** Світла палітра (fallback, якщо хтось імпортує tokens.colors без теми). *\u002F\n",[3925,37117,37118,37121],{"class":3927,"line":6720},[3925,37119,37120],{"class":4512},"  colors:",[3925,37122,5617],{"class":4508},[3925,37124,37125,37128,37130],{"class":3927,"line":6738},[3925,37126,37127],{"class":4512},"    background:",[3925,37129,7270],{"class":4521},[3925,37131,5051],{"class":4508},[3925,37133,37134,37137,37139],{"class":3927,"line":6787},[3925,37135,37136],{"class":4512},"    surface:",[3925,37138,36569],{"class":4521},[3925,37140,5051],{"class":4508},[3925,37142,37143,37146,37148],{"class":3927,"line":6792},[3925,37144,37145],{"class":4512},"    text:",[3925,37147,7295],{"class":4521},[3925,37149,5051],{"class":4508},[3925,37151,37152,37155,37157],{"class":3927,"line":6797},[3925,37153,37154],{"class":4512},"    textSecondary:",[3925,37156,7566],{"class":4521},[3925,37158,5051],{"class":4508},[3925,37160,37161,37164,37166],{"class":3927,"line":6827},[3925,37162,37163],{"class":4512},"    primary:",[3925,37165,7280],{"class":4521},[3925,37167,5051],{"class":4508},[3925,37169,37170,37173,37175],{"class":3927,"line":6862},[3925,37171,37172],{"class":4512},"    primaryPressed:",[3925,37174,36606],{"class":4521},[3925,37176,5051],{"class":4508},[3925,37178,37179,37182,37184],{"class":3927,"line":6867},[3925,37180,37181],{"class":4512},"    border:",[3925,37183,7592],{"class":4521},[3925,37185,5051],{"class":4508},[3925,37187,37188,37191,37193],{"class":3927,"line":6872},[3925,37189,37190],{"class":4512},"    danger:",[3925,37192,36625],{"class":4521},[3925,37194,5051],{"class":4508},[3925,37196,37197,37200,37202],{"class":3927,"line":6906},[3925,37198,37199],{"class":4512},"    onPrimary:",[3925,37201,36569],{"class":4521},[3925,37203,5051],{"class":4508},[3925,37205,37206],{"class":3927,"line":6921},[3925,37207,6584],{"class":4508},[3925,37209,37210,37213,37215],{"class":3927,"line":6941},[3925,37211,37212],{"class":4512},"  spacing:",[3925,37214,36921],{"class":4512},[3925,37216,5051],{"class":4508},[3925,37218,37219,37222],{"class":3927,"line":6962},[3925,37220,37221],{"class":4512},"  radius",[3925,37223,5051],{"class":4508},[3925,37225,37226,37229],{"class":3927,"line":6977},[3925,37227,37228],{"class":4512},"  fontSize",[3925,37230,5051],{"class":4508},[3925,37232,37233,37235,37237,37239],{"class":3927,"line":6990},[3925,37234,8170],{"class":4508},[3925,37236,23387],{"class":4504},[3925,37238,5191],{"class":4540},[3925,37240,4525],{"class":4508},[3925,37242,37243],{"class":3927,"line":6996},[3925,37244,3950],{"emptyLinePlaceholder":3949},[3925,37246,37247,37249,37251,37254,37256,37258,37260],{"class":3927,"line":7014},[3925,37248,4534],{"class":4504},[3925,37250,6428],{"class":4540},[3925,37252,37253],{"class":4565}," Tokens",[3925,37255,5967],{"class":4508},[3925,37257,23410],{"class":4540},[3925,37259,37108],{"class":4512},[3925,37261,4525],{"class":4508},[3916,37263,37266],{"className":4489,"code":37264,"filename":37265,"language":4491,"meta":3921,"style":3921},"import {\n  createContext,\n  ReactNode,\n  useCallback,\n  useContext,\n  useMemo,\n  useState,\n} from 'react';\nimport { useColorScheme as useSystemColorScheme } from 'react-native';\n\nimport {\n  colorsForScheme,\n  type ColorSchemeName,\n  type ColorTokens,\n} from '.\u002Fcolors';\nimport { fontSize, radius, space } from '.\u002Ftokens';\n\n\u002F** Що обрав користувач: слідувати системі або примусово light\u002Fdark. *\u002F\nexport type ThemePreference = 'system' | ColorSchemeName;\n\ntype ThemeContextValue = {\n  \u002F** Фактична схема, якою малюємо UI. *\u002F\n  scheme: ColorSchemeName;\n  preference: ThemePreference;\n  setPreference: (value: ThemePreference) => void;\n  colors: ColorTokens;\n  spacing: typeof space;\n  radius: typeof radius;\n  fontSize: typeof fontSize;\n};\n\nconst ThemeContext = createContext\u003CThemeContextValue | null>(null);\n\nfunction resolveScheme(\n  preference: ThemePreference,\n  system: string | null | undefined,\n): ColorSchemeName {\n  if (preference === 'light' || preference === 'dark') {\n    return preference;\n  }\n  return system === 'dark' ? 'dark' : 'light';\n}\n\ntype ThemeProviderProps = {\n  children: ReactNode;\n  \u002F** Початкова перевага (за замовчуванням — як у системі). *\u002F\n  initialPreference?: ThemePreference;\n};\n\nexport function ThemeProvider({\n  children,\n  initialPreference = 'system',\n}: ThemeProviderProps) {\n  const systemScheme = useSystemColorScheme();\n  const [preference, setPreferenceState] =\n    useState\u003CThemePreference>(initialPreference);\n\n  const setPreference = useCallback((value: ThemePreference) => {\n    setPreferenceState(value);\n  }, []);\n\n  const scheme = resolveScheme(preference, systemScheme);\n  const colors = useMemo(() => colorsForScheme(scheme), [scheme]);\n\n  const value = useMemo\u003CThemeContextValue>(\n    () => ({\n      scheme,\n      preference,\n      setPreference,\n      colors,\n      spacing: space,\n      radius,\n      fontSize,\n    }),\n    [scheme, preference, setPreference, colors],\n  );\n\n  return (\n    \u003CThemeContext.Provider value={value}>{children}\u003C\u002FThemeContext.Provider>\n  );\n}\n\nexport function useTheme(): ThemeContextValue {\n  const ctx = useContext(ThemeContext);\n  if (!ctx) {\n    throw new Error('useTheme() потрібно викликати всередині \u003CThemeProvider>.');\n  }\n  return ctx;\n}\n","src\u002Fshared\u002Ftheme\u002FThemeProvider.tsx",[3521,37267,37268,37274,37280,37286,37292,37298,37304,37310,37320,37342,37346,37352,37359,37367,37375,37386,37413,37417,37422,37441,37445,37454,37459,37470,37481,37502,37513,37526,37538,37550,37554,37558,37584,37588,37597,37607,37626,37634,37656,37664,37668,37690,37694,37698,37707,37717,37722,37733,37737,37741,37752,37758,37768,37777,37791,37807,37823,37827,37851,37862,37866,37870,37892,37919,37923,37940,37949,37956,37963,37970,37977,37986,37993,38000,38004,38024,38028,38032,38038,38069,38073,38077,38081,38096,38113,38123,38138,38142,38150],{"__ignoreMap":3921},[3925,37269,37270,37272],{"class":3927,"line":3928},[3925,37271,4505],{"class":4504},[3925,37273,5617],{"class":4508},[3925,37275,37276,37278],{"class":3927,"line":3934},[3925,37277,24597],{"class":4512},[3925,37279,5051],{"class":4508},[3925,37281,37282,37284],{"class":3927,"line":3940},[3925,37283,24604],{"class":4512},[3925,37285,5051],{"class":4508},[3925,37287,37288,37290],{"class":3927,"line":3946},[3925,37289,24611],{"class":4512},[3925,37291,5051],{"class":4508},[3925,37293,37294,37296],{"class":3927,"line":3953},[3925,37295,24618],{"class":4512},[3925,37297,5051],{"class":4508},[3925,37299,37300,37302],{"class":3927,"line":3959},[3925,37301,24625],{"class":4512},[3925,37303,5051],{"class":4508},[3925,37305,37306,37308],{"class":3927,"line":3965},[3925,37307,24632],{"class":4512},[3925,37309,5051],{"class":4508},[3925,37311,37312,37314,37316,37318],{"class":3927,"line":3971},[3925,37313,8170],{"class":4508},[3925,37315,4518],{"class":4504},[3925,37317,8122],{"class":4521},[3925,37319,4525],{"class":4508},[3925,37321,37322,37324,37326,37329,37331,37334,37336,37338,37340],{"class":3927,"line":3977},[3925,37323,4505],{"class":4504},[3925,37325,4509],{"class":4508},[3925,37327,37328],{"class":4512},"useColorScheme",[3925,37330,27582],{"class":4504},[3925,37332,37333],{"class":4512}," useSystemColorScheme",[3925,37335,4515],{"class":4508},[3925,37337,4518],{"class":4504},[3925,37339,8175],{"class":4521},[3925,37341,4525],{"class":4508},[3925,37343,37344],{"class":3927,"line":3983},[3925,37345,3950],{"emptyLinePlaceholder":3949},[3925,37347,37348,37350],{"class":3927,"line":3989},[3925,37349,4505],{"class":4504},[3925,37351,5617],{"class":4508},[3925,37353,37354,37357],{"class":3927,"line":3995},[3925,37355,37356],{"class":4512},"  colorsForScheme",[3925,37358,5051],{"class":4508},[3925,37360,37361,37363,37365],{"class":3927,"line":4001},[3925,37362,14608],{"class":4504},[3925,37364,36808],{"class":4512},[3925,37366,5051],{"class":4508},[3925,37368,37369,37371,37373],{"class":3927,"line":4007},[3925,37370,14608],{"class":4504},[3925,37372,36763],{"class":4512},[3925,37374,5051],{"class":4508},[3925,37376,37377,37379,37381,37384],{"class":3927,"line":4013},[3925,37378,8170],{"class":4508},[3925,37380,4518],{"class":4504},[3925,37382,37383],{"class":4521}," '.\u002Fcolors'",[3925,37385,4525],{"class":4508},[3925,37387,37388,37390,37392,37395,37397,37399,37401,37404,37406,37408,37411],{"class":3927,"line":4019},[3925,37389,4505],{"class":4504},[3925,37391,4509],{"class":4508},[3925,37393,37394],{"class":4512},"fontSize",[3925,37396,4191],{"class":4508},[3925,37398,17960],{"class":4512},[3925,37400,4191],{"class":4508},[3925,37402,37403],{"class":4512},"space",[3925,37405,4515],{"class":4508},[3925,37407,4518],{"class":4504},[3925,37409,37410],{"class":4521}," '.\u002Ftokens'",[3925,37412,4525],{"class":4508},[3925,37414,37415],{"class":3927,"line":4024},[3925,37416,3950],{"emptyLinePlaceholder":3949},[3925,37418,37419],{"class":3927,"line":4030},[3925,37420,37421],{"class":4498},"\u002F** Що обрав користувач: слідувати системі або примусово light\u002Fdark. *\u002F\n",[3925,37423,37424,37426,37428,37430,37432,37435,37437,37439],{"class":3927,"line":4036},[3925,37425,4534],{"class":4504},[3925,37427,6428],{"class":4540},[3925,37429,14647],{"class":4565},[3925,37431,5967],{"class":4508},[3925,37433,37434],{"class":4521},"'system'",[3925,37436,6820],{"class":4508},[3925,37438,36842],{"class":4565},[3925,37440,4525],{"class":4508},[3925,37442,37443],{"class":3927,"line":4041},[3925,37444,3950],{"emptyLinePlaceholder":3949},[3925,37446,37447,37449,37452],{"class":3927,"line":4047},[3925,37448,6491],{"class":4540},[3925,37450,37451],{"class":4565}," ThemeContextValue",[3925,37453,5198],{"class":4508},[3925,37455,37456],{"class":3927,"line":4053},[3925,37457,37458],{"class":4498},"  \u002F** Фактична схема, якою малюємо UI. *\u002F\n",[3925,37460,37461,37464,37466,37468],{"class":3927,"line":4059},[3925,37462,37463],{"class":4512},"  scheme",[3925,37465,4767],{"class":4508},[3925,37467,36842],{"class":4565},[3925,37469,4525],{"class":4508},[3925,37471,37472,37475,37477,37479],{"class":3927,"line":4065},[3925,37473,37474],{"class":4512},"  preference",[3925,37476,4767],{"class":4508},[3925,37478,14704],{"class":4565},[3925,37480,4525],{"class":4508},[3925,37482,37483,37486,37488,37490,37492,37494,37496,37498,37500],{"class":3927,"line":4070},[3925,37484,37485],{"class":4544},"  setPreference",[3925,37487,24721],{"class":4508},[3925,37489,25164],{"class":4512},[3925,37491,4767],{"class":4508},[3925,37493,14704],{"class":4565},[3925,37495,6701],{"class":4508},[3925,37497,5614],{"class":4540},[3925,37499,6502],{"class":4565},[3925,37501,4525],{"class":4508},[3925,37503,37504,37507,37509,37511],{"class":3927,"line":4076},[3925,37505,37506],{"class":4512},"  colors",[3925,37508,4767],{"class":4508},[3925,37510,36847],{"class":4565},[3925,37512,4525],{"class":4508},[3925,37514,37515,37518,37520,37522,37524],{"class":3927,"line":4082},[3925,37516,37517],{"class":4512},"  spacing",[3925,37519,4767],{"class":4508},[3925,37521,23410],{"class":4540},[3925,37523,36921],{"class":4512},[3925,37525,4525],{"class":4508},[3925,37527,37528,37530,37532,37534,37536],{"class":3927,"line":4088},[3925,37529,37221],{"class":4512},[3925,37531,4767],{"class":4508},[3925,37533,23410],{"class":4540},[3925,37535,19404],{"class":4512},[3925,37537,4525],{"class":4508},[3925,37539,37540,37542,37544,37546,37548],{"class":3927,"line":4093},[3925,37541,37228],{"class":4512},[3925,37543,4767],{"class":4508},[3925,37545,23410],{"class":4540},[3925,37547,37039],{"class":4512},[3925,37549,4525],{"class":4508},[3925,37551,37552],{"class":3927,"line":4098},[3925,37553,5213],{"class":4508},[3925,37555,37556],{"class":3927,"line":6720},[3925,37557,3950],{"emptyLinePlaceholder":3949},[3925,37559,37560,37562,37565,37567,37569,37571,37574,37576,37578,37580,37582],{"class":3927,"line":6738},[3925,37561,5930],{"class":4540},[3925,37563,37564],{"class":5194}," ThemeContext",[3925,37566,5967],{"class":4508},[3925,37568,24804],{"class":4544},[3925,37570,5016],{"class":4508},[3925,37572,37573],{"class":4565},"ThemeContextValue",[3925,37575,6820],{"class":4508},[3925,37577,24814],{"class":4565},[3925,37579,24817],{"class":4508},[3925,37581,24814],{"class":4540},[3925,37583,4724],{"class":4508},[3925,37585,37586],{"class":3927,"line":6787},[3925,37587,3950],{"emptyLinePlaceholder":3949},[3925,37589,37590,37592,37595],{"class":3927,"line":6792},[3925,37591,6677],{"class":4540},[3925,37593,37594],{"class":4544}," resolveScheme",[3925,37596,10621],{"class":4508},[3925,37598,37599,37601,37603,37605],{"class":3927,"line":6797},[3925,37600,37474],{"class":4512},[3925,37602,4767],{"class":4508},[3925,37604,14704],{"class":4565},[3925,37606,5051],{"class":4508},[3925,37608,37609,37612,37614,37616,37618,37620,37622,37624],{"class":3927,"line":6827},[3925,37610,37611],{"class":4512},"  system",[3925,37613,4767],{"class":4508},[3925,37615,5949],{"class":4565},[3925,37617,6820],{"class":4508},[3925,37619,24814],{"class":4565},[3925,37621,6820],{"class":4508},[3925,37623,6034],{"class":4565},[3925,37625,5051],{"class":4508},[3925,37627,37628,37630,37632],{"class":3927,"line":6862},[3925,37629,6815],{"class":4508},[3925,37631,36842],{"class":4565},[3925,37633,5617],{"class":4508},[3925,37635,37636,37638,37640,37642,37644,37646,37648,37650,37652,37654],{"class":3927,"line":6867},[3925,37637,9669],{"class":4504},[3925,37639,3576],{"class":4508},[3925,37641,14842],{"class":4512},[3925,37643,6855],{"class":4508},[3925,37645,36813],{"class":4521},[3925,37647,10570],{"class":4508},[3925,37649,14842],{"class":4512},[3925,37651,6855],{"class":4508},[3925,37653,36818],{"class":4521},[3925,37655,6049],{"class":4508},[3925,37657,37658,37660,37662],{"class":3927,"line":6872},[3925,37659,9680],{"class":4504},[3925,37661,16384],{"class":4512},[3925,37663,4525],{"class":4508},[3925,37665,37666],{"class":3927,"line":6906},[3925,37667,4004],{"class":4508},[3925,37669,37670,37672,37675,37677,37679,37681,37683,37686,37688],{"class":3927,"line":6921},[3925,37671,4553],{"class":4504},[3925,37673,37674],{"class":4512}," system",[3925,37676,6855],{"class":4508},[3925,37678,36818],{"class":4521},[3925,37680,6021],{"class":4508},[3925,37682,36818],{"class":4521},[3925,37684,37685],{"class":4508}," : ",[3925,37687,36813],{"class":4521},[3925,37689,4525],{"class":4508},[3925,37691,37692],{"class":3927,"line":6941},[3925,37693,4016],{"class":4508},[3925,37695,37696],{"class":3927,"line":6962},[3925,37697,3950],{"emptyLinePlaceholder":3949},[3925,37699,37700,37702,37705],{"class":3927,"line":6977},[3925,37701,6491],{"class":4540},[3925,37703,37704],{"class":4565}," ThemeProviderProps",[3925,37706,5198],{"class":4508},[3925,37708,37709,37711,37713,37715],{"class":3927,"line":6990},[3925,37710,24839],{"class":4512},[3925,37712,4767],{"class":4508},[3925,37714,24844],{"class":4565},[3925,37716,4525],{"class":4508},[3925,37718,37719],{"class":3927,"line":6996},[3925,37720,37721],{"class":4498},"  \u002F** Початкова перевага (за замовчуванням — як у системі). *\u002F\n",[3925,37723,37724,37727,37729,37731],{"class":3927,"line":7014},[3925,37725,37726],{"class":4512},"  initialPreference",[3925,37728,23205],{"class":4508},[3925,37730,14704],{"class":4565},[3925,37732,4525],{"class":4508},[3925,37734,37735],{"class":3927,"line":7023},[3925,37736,5213],{"class":4508},[3925,37738,37739],{"class":3927,"line":7032},[3925,37740,3950],{"emptyLinePlaceholder":3949},[3925,37742,37743,37745,37747,37750],{"class":3927,"line":7037},[3925,37744,4534],{"class":4504},[3925,37746,4541],{"class":4540},[3925,37748,37749],{"class":4544}," ThemeProvider",[3925,37751,9050],{"class":4508},[3925,37753,37754,37756],{"class":3927,"line":7042},[3925,37755,24839],{"class":4512},[3925,37757,5051],{"class":4508},[3925,37759,37760,37762,37764,37766],{"class":3927,"line":7070},[3925,37761,37726],{"class":4512},[3925,37763,5967],{"class":4508},[3925,37765,37434],{"class":4521},[3925,37767,5051],{"class":4508},[3925,37769,37770,37772,37775],{"class":3927,"line":7086},[3925,37771,27354],{"class":4508},[3925,37773,37774],{"class":4565},"ThemeProviderProps",[3925,37776,6049],{"class":4508},[3925,37778,37779,37781,37784,37786,37789],{"class":3927,"line":7097},[3925,37780,6909],{"class":4540},[3925,37782,37783],{"class":5194}," systemScheme",[3925,37785,5967],{"class":4508},[3925,37787,37788],{"class":4544},"useSystemColorScheme",[3925,37790,7020],{"class":4508},[3925,37792,37793,37795,37797,37799,37801,37804],{"class":3927,"line":7114},[3925,37794,6909],{"class":4540},[3925,37796,8272],{"class":4508},[3925,37798,14842],{"class":5194},[3925,37800,4191],{"class":4508},[3925,37802,37803],{"class":5194},"setPreferenceState",[3925,37805,37806],{"class":4508},"] =\n",[3925,37808,37809,37812,37814,37816,37818,37821],{"class":3927,"line":7119},[3925,37810,37811],{"class":4544},"    useState",[3925,37813,5016],{"class":4508},[3925,37815,14704],{"class":4565},[3925,37817,24817],{"class":4508},[3925,37819,37820],{"class":4512},"initialPreference",[3925,37822,4724],{"class":4508},[3925,37824,37825],{"class":3927,"line":9008},[3925,37826,3950],{"emptyLinePlaceholder":3949},[3925,37828,37829,37831,37833,37835,37837,37839,37841,37843,37845,37847,37849],{"class":3927,"line":9017},[3925,37830,6909],{"class":4540},[3925,37832,16445],{"class":5194},[3925,37834,5967],{"class":4508},[3925,37836,14472],{"class":4544},[3925,37838,6695],{"class":4508},[3925,37840,25164],{"class":4512},[3925,37842,4767],{"class":4508},[3925,37844,14704],{"class":4565},[3925,37846,6701],{"class":4508},[3925,37848,5614],{"class":4540},[3925,37850,5617],{"class":4508},[3925,37852,37853,37856,37858,37860],{"class":3927,"line":9022},[3925,37854,37855],{"class":4544},"    setPreferenceState",[3925,37857,4702],{"class":4508},[3925,37859,25164],{"class":4512},[3925,37861,4724],{"class":4508},[3925,37863,37864],{"class":3927,"line":9027},[3925,37865,25037],{"class":4508},[3925,37867,37868],{"class":3927,"line":9032},[3925,37869,3950],{"emptyLinePlaceholder":3949},[3925,37871,37872,37874,37876,37878,37881,37883,37885,37887,37890],{"class":3927,"line":9053},[3925,37873,6909],{"class":4540},[3925,37875,36856],{"class":5194},[3925,37877,5967],{"class":4508},[3925,37879,37880],{"class":4544},"resolveScheme",[3925,37882,4702],{"class":4508},[3925,37884,14842],{"class":4512},[3925,37886,4191],{"class":4508},[3925,37888,37889],{"class":4512},"systemScheme",[3925,37891,4724],{"class":4508},[3925,37893,37894,37896,37898,37900,37902,37904,37906,37908,37910,37912,37915,37917],{"class":3927,"line":9075},[3925,37895,6909],{"class":4540},[3925,37897,13324],{"class":5194},[3925,37899,5967],{"class":4508},[3925,37901,17608],{"class":4544},[3925,37903,8322],{"class":4508},[3925,37905,5614],{"class":4540},[3925,37907,36833],{"class":4544},[3925,37909,4702],{"class":4508},[3925,37911,13245],{"class":4512},[3925,37913,37914],{"class":4508},"), [",[3925,37916,13245],{"class":4512},[3925,37918,15152],{"class":4508},[3925,37920,37921],{"class":3927,"line":9083},[3925,37922,3950],{"emptyLinePlaceholder":3949},[3925,37924,37925,37927,37929,37931,37933,37935,37937],{"class":3927,"line":9094},[3925,37926,6909],{"class":4540},[3925,37928,25084],{"class":5194},[3925,37930,5967],{"class":4508},[3925,37932,17608],{"class":4544},[3925,37934,5016],{"class":4508},[3925,37936,37573],{"class":4565},[3925,37938,37939],{"class":4508},">(\n",[3925,37941,37942,37944,37946],{"class":3927,"line":9105},[3925,37943,17914],{"class":4508},[3925,37945,5614],{"class":4540},[3925,37947,37948],{"class":4508}," ({\n",[3925,37950,37951,37954],{"class":3927,"line":9115},[3925,37952,37953],{"class":4512},"      scheme",[3925,37955,5051],{"class":4508},[3925,37957,37958,37961],{"class":3927,"line":9125},[3925,37959,37960],{"class":4512},"      preference",[3925,37962,5051],{"class":4508},[3925,37964,37965,37968],{"class":3927,"line":9135},[3925,37966,37967],{"class":4512},"      setPreference",[3925,37969,5051],{"class":4508},[3925,37971,37972,37975],{"class":3927,"line":9140},[3925,37973,37974],{"class":4512},"      colors",[3925,37976,5051],{"class":4508},[3925,37978,37979,37982,37984],{"class":3927,"line":9168},[3925,37980,37981],{"class":4512},"      spacing:",[3925,37983,36921],{"class":4512},[3925,37985,5051],{"class":4508},[3925,37987,37988,37991],{"class":3927,"line":9197},[3925,37989,37990],{"class":4512},"      radius",[3925,37992,5051],{"class":4508},[3925,37994,37995,37998],{"class":3927,"line":9226},[3925,37996,37997],{"class":4512},"      fontSize",[3925,37999,5051],{"class":4508},[3925,38001,38002],{"class":3927,"line":9234},[3925,38003,19863],{"class":4508},[3925,38005,38006,38008,38010,38012,38014,38016,38018,38020,38022],{"class":3927,"line":9245},[3925,38007,14977],{"class":4508},[3925,38009,13245],{"class":4512},[3925,38011,4191],{"class":4508},[3925,38013,14842],{"class":4512},[3925,38015,4191],{"class":4508},[3925,38017,14847],{"class":4512},[3925,38019,4191],{"class":4508},[3925,38021,13240],{"class":4512},[3925,38023,14982],{"class":4508},[3925,38025,38026],{"class":3927,"line":9255},[3925,38027,4678],{"class":4508},[3925,38029,38030],{"class":3927,"line":9265},[3925,38031,3950],{"emptyLinePlaceholder":3949},[3925,38033,38034,38036],{"class":3927,"line":9275},[3925,38035,4553],{"class":4504},[3925,38037,4556],{"class":4508},[3925,38039,38040,38042,38045,38047,38049,38051,38053,38055,38057,38059,38061,38063,38065,38067],{"class":3927,"line":9286},[3925,38041,4562],{"class":4561},[3925,38043,38044],{"class":4565},"ThemeContext.Provider",[3925,38046,25084],{"class":4579},[3925,38048,4583],{"class":4508},[3925,38050,4594],{"class":4540},[3925,38052,25164],{"class":4512},[3925,38054,4610],{"class":4540},[3925,38056,8439],{"class":4561},[3925,38058,4594],{"class":4540},[3925,38060,24868],{"class":4512},[3925,38062,4610],{"class":4540},[3925,38064,8445],{"class":4561},[3925,38066,38044],{"class":4565},[3925,38068,4568],{"class":4561},[3925,38070,38071],{"class":3927,"line":9291},[3925,38072,4678],{"class":4508},[3925,38074,38075],{"class":3927,"line":9319},[3925,38076,4016],{"class":4508},[3925,38078,38079],{"class":3927,"line":9346},[3925,38080,3950],{"emptyLinePlaceholder":3949},[3925,38082,38083,38085,38087,38090,38092,38094],{"class":3927,"line":9354},[3925,38084,4534],{"class":4504},[3925,38086,4541],{"class":4540},[3925,38088,38089],{"class":4544}," useTheme",[3925,38091,6730],{"class":4508},[3925,38093,37573],{"class":4565},[3925,38095,5617],{"class":4508},[3925,38097,38098,38100,38102,38104,38106,38108,38111],{"class":3927,"line":9363},[3925,38099,6909],{"class":4540},[3925,38101,25214],{"class":5194},[3925,38103,5967],{"class":4508},[3925,38105,25219],{"class":4544},[3925,38107,4702],{"class":4508},[3925,38109,38110],{"class":4512},"ThemeContext",[3925,38112,4724],{"class":4508},[3925,38114,38115,38117,38119,38121],{"class":3927,"line":9373},[3925,38116,9669],{"class":4504},[3925,38118,6044],{"class":4508},[3925,38120,25235],{"class":4512},[3925,38122,6049],{"class":4508},[3925,38124,38125,38127,38129,38131,38133,38136],{"class":3927,"line":9383},[3925,38126,25242],{"class":4504},[3925,38128,25245],{"class":4540},[3925,38130,25248],{"class":4544},[3925,38132,4702],{"class":4508},[3925,38134,38135],{"class":4521},"'useTheme() потрібно викликати всередині \u003CThemeProvider>.'",[3925,38137,4724],{"class":4508},[3925,38139,38140],{"class":3927,"line":9388},[3925,38141,4004],{"class":4508},[3925,38143,38144,38146,38148],{"class":3927,"line":9396},[3925,38145,4553],{"class":4504},[3925,38147,25214],{"class":4512},[3925,38149,4525],{"class":4508},[3925,38151,38152],{"class":3927,"line":9405},[3925,38153,4016],{"class":4508},[3916,38155,38158],{"className":6417,"code":38156,"filename":38157,"language":6419,"meta":3921,"style":3921},"export { lightColors, darkColors, colorsForScheme } from '.\u002Fcolors';\nexport type { ColorTokens, ColorSchemeName } from '.\u002Fcolors';\nexport { tokens, space, radius, fontSize } from '.\u002Ftokens';\nexport type { Tokens } from '.\u002Ftokens';\nexport { ThemeProvider, useTheme } from '.\u002FThemeProvider';\nexport type { ThemePreference } from '.\u002FThemeProvider';\n","src\u002Fshared\u002Ftheme\u002Findex.ts",[3521,38159,38160,38185,38207,38236,38255,38276],{"__ignoreMap":3921},[3925,38161,38162,38164,38166,38168,38170,38172,38174,38177,38179,38181,38183],{"class":3927,"line":3928},[3925,38163,4534],{"class":4504},[3925,38165,4509],{"class":4508},[3925,38167,36872],{"class":4512},[3925,38169,4191],{"class":4508},[3925,38171,36866],{"class":4512},[3925,38173,4191],{"class":4508},[3925,38175,38176],{"class":4512},"colorsForScheme",[3925,38178,4515],{"class":4508},[3925,38180,4518],{"class":4504},[3925,38182,37383],{"class":4521},[3925,38184,4525],{"class":4508},[3925,38186,38187,38189,38191,38193,38195,38197,38199,38201,38203,38205],{"class":3927,"line":3934},[3925,38188,4534],{"class":4504},[3925,38190,6428],{"class":4504},[3925,38192,4509],{"class":4508},[3925,38194,36847],{"class":4512},[3925,38196,4191],{"class":4508},[3925,38198,36842],{"class":4512},[3925,38200,4515],{"class":4508},[3925,38202,4518],{"class":4504},[3925,38204,37383],{"class":4521},[3925,38206,4525],{"class":4508},[3925,38208,38209,38211,38213,38216,38218,38220,38222,38224,38226,38228,38230,38232,38234],{"class":3927,"line":3940},[3925,38210,4534],{"class":4504},[3925,38212,4509],{"class":4508},[3925,38214,38215],{"class":4512},"tokens",[3925,38217,4191],{"class":4508},[3925,38219,37403],{"class":4512},[3925,38221,4191],{"class":4508},[3925,38223,17960],{"class":4512},[3925,38225,4191],{"class":4508},[3925,38227,37394],{"class":4512},[3925,38229,4515],{"class":4508},[3925,38231,4518],{"class":4504},[3925,38233,37410],{"class":4521},[3925,38235,4525],{"class":4508},[3925,38237,38238,38240,38242,38244,38247,38249,38251,38253],{"class":3927,"line":3946},[3925,38239,4534],{"class":4504},[3925,38241,6428],{"class":4504},[3925,38243,4509],{"class":4508},[3925,38245,38246],{"class":4512},"Tokens",[3925,38248,4515],{"class":4508},[3925,38250,4518],{"class":4504},[3925,38252,37410],{"class":4521},[3925,38254,4525],{"class":4508},[3925,38256,38257,38259,38261,38263,38265,38267,38269,38271,38274],{"class":3927,"line":3953},[3925,38258,4534],{"class":4504},[3925,38260,4509],{"class":4508},[3925,38262,5333],{"class":4512},[3925,38264,4191],{"class":4508},[3925,38266,13148],{"class":4512},[3925,38268,4515],{"class":4508},[3925,38270,4518],{"class":4504},[3925,38272,38273],{"class":4521}," '.\u002FThemeProvider'",[3925,38275,4525],{"class":4508},[3925,38277,38278,38280,38282,38284,38286,38288,38290,38292],{"class":3927,"line":3959},[3925,38279,4534],{"class":4504},[3925,38281,6428],{"class":4504},[3925,38283,4509],{"class":4508},[3925,38285,14704],{"class":4512},[3925,38287,4515],{"class":4508},[3925,38289,4518],{"class":4504},[3925,38291,38273],{"class":4521},[3925,38293,4525],{"class":4508},[3916,38295,38298],{"className":4489,"code":38296,"filename":38297,"language":4491,"meta":3921,"style":3921},"import { ReactNode } from 'react';\nimport { StyleSheet, Text, TextProps, TextStyle } from 'react-native';\n\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\n\ntype AppTextVariant = 'body' | 'title' | 'subtitle' | 'caption';\n\ntype AppTextProps = TextProps & {\n  children: ReactNode;\n  variant?: AppTextVariant;\n  \u002F** Якщо не передано — body\u002Ftitle\u002Fsubtitle → text, caption → textSecondary. *\u002F\n  color?: string;\n  style?: TextStyle | TextStyle[];\n};\n\nexport function AppText({\n  children,\n  variant = 'body',\n  color,\n  style,\n  ...rest\n}: AppTextProps) {\n  const { colors, fontSize } = useTheme();\n  const resolvedColor =\n    color ??\n    (variant === 'caption' ? colors.textSecondary : colors.text);\n\n  return (\n    \u003CText\n      style={[\n        styles.base,\n        variant === 'body' && { fontSize: fontSize.md, lineHeight: 24 },\n        variant === 'title' && {\n          fontSize: fontSize.xl,\n          fontWeight: '700',\n          lineHeight: 34,\n        },\n        variant === 'subtitle' && {\n          fontSize: fontSize.lg,\n          fontWeight: '600',\n          lineHeight: 28,\n        },\n        variant === 'caption' && {\n          fontSize: fontSize.sm,\n          lineHeight: 20,\n        },\n        { color: resolvedColor },\n        style,\n      ]}\n      {...rest}\n    >\n      {children}\n    \u003C\u002FText>\n  );\n}\n\nconst styles = StyleSheet.create({\n  base: {},\n});\n","src\u002Fshared\u002Fui\u002FAppText.tsx",[3521,38299,38300,38316,38346,38350,38366,38370,38399,38403,38417,38427,38439,38444,38455,38470,38474,38478,38489,38495,38505,38511,38517,38525,38534,38552,38561,38569,38598,38602,38608,38615,38625,38635,38664,38677,38689,38697,38707,38711,38724,38736,38744,38752,38756,38769,38781,38789,38793,38803,38809,38815,38827,38831,38839,38847,38851,38855,38859,38875,38882],{"__ignoreMap":3921},[3925,38301,38302,38304,38306,38308,38310,38312,38314],{"class":3927,"line":3928},[3925,38303,4505],{"class":4504},[3925,38305,4509],{"class":4508},[3925,38307,24844],{"class":4512},[3925,38309,4515],{"class":4508},[3925,38311,4518],{"class":4504},[3925,38313,8122],{"class":4521},[3925,38315,4525],{"class":4508},[3925,38317,38318,38320,38322,38324,38326,38328,38330,38333,38335,38338,38340,38342,38344],{"class":3927,"line":3934},[3925,38319,4505],{"class":4504},[3925,38321,4509],{"class":4508},[3925,38323,9042],{"class":4512},[3925,38325,4191],{"class":4508},[3925,38327,8422],{"class":4512},[3925,38329,4191],{"class":4508},[3925,38331,38332],{"class":4512},"TextProps",[3925,38334,4191],{"class":4508},[3925,38336,38337],{"class":4512},"TextStyle",[3925,38339,4515],{"class":4508},[3925,38341,4518],{"class":4504},[3925,38343,8175],{"class":4521},[3925,38345,4525],{"class":4508},[3925,38347,38348],{"class":3927,"line":3940},[3925,38349,3950],{"emptyLinePlaceholder":3949},[3925,38351,38352,38354,38356,38358,38360,38362,38364],{"class":3927,"line":3946},[3925,38353,4505],{"class":4504},[3925,38355,4509],{"class":4508},[3925,38357,13148],{"class":4512},[3925,38359,4515],{"class":4508},[3925,38361,4518],{"class":4504},[3925,38363,13155],{"class":4521},[3925,38365,4525],{"class":4508},[3925,38367,38368],{"class":3927,"line":3953},[3925,38369,3950],{"emptyLinePlaceholder":3949},[3925,38371,38372,38374,38377,38379,38382,38384,38387,38389,38392,38394,38397],{"class":3927,"line":3959},[3925,38373,6491],{"class":4540},[3925,38375,38376],{"class":4565}," AppTextVariant",[3925,38378,5967],{"class":4508},[3925,38380,38381],{"class":4521},"'body'",[3925,38383,6820],{"class":4508},[3925,38385,38386],{"class":4521},"'title'",[3925,38388,6820],{"class":4508},[3925,38390,38391],{"class":4521},"'subtitle'",[3925,38393,6820],{"class":4508},[3925,38395,38396],{"class":4521},"'caption'",[3925,38398,4525],{"class":4508},[3925,38400,38401],{"class":3927,"line":3965},[3925,38402,3950],{"emptyLinePlaceholder":3949},[3925,38404,38405,38407,38410,38412,38414],{"class":3927,"line":3971},[3925,38406,6491],{"class":4540},[3925,38408,38409],{"class":4565}," AppTextProps",[3925,38411,5967],{"class":4508},[3925,38413,38332],{"class":4565},[3925,38415,38416],{"class":4508}," & {\n",[3925,38418,38419,38421,38423,38425],{"class":3927,"line":3977},[3925,38420,24839],{"class":4512},[3925,38422,4767],{"class":4508},[3925,38424,24844],{"class":4565},[3925,38426,4525],{"class":4508},[3925,38428,38429,38432,38434,38437],{"class":3927,"line":3983},[3925,38430,38431],{"class":4512},"  variant",[3925,38433,23205],{"class":4508},[3925,38435,38436],{"class":4565},"AppTextVariant",[3925,38438,4525],{"class":4508},[3925,38440,38441],{"class":3927,"line":3989},[3925,38442,38443],{"class":4498},"  \u002F** Якщо не передано — body\u002Ftitle\u002Fsubtitle → text, caption → textSecondary. *\u002F\n",[3925,38445,38446,38449,38451,38453],{"class":3927,"line":3995},[3925,38447,38448],{"class":4512},"  color",[3925,38450,23205],{"class":4508},[3925,38452,5949],{"class":4565},[3925,38454,4525],{"class":4508},[3925,38456,38457,38460,38462,38464,38466,38468],{"class":3927,"line":4001},[3925,38458,38459],{"class":4512},"  style",[3925,38461,23205],{"class":4508},[3925,38463,38337],{"class":4565},[3925,38465,6820],{"class":4508},[3925,38467,38337],{"class":4565},[3925,38469,24708],{"class":4508},[3925,38471,38472],{"class":3927,"line":4007},[3925,38473,5213],{"class":4508},[3925,38475,38476],{"class":3927,"line":4013},[3925,38477,3950],{"emptyLinePlaceholder":3949},[3925,38479,38480,38482,38484,38487],{"class":3927,"line":4019},[3925,38481,4534],{"class":4504},[3925,38483,4541],{"class":4540},[3925,38485,38486],{"class":4544}," AppText",[3925,38488,9050],{"class":4508},[3925,38490,38491,38493],{"class":3927,"line":4024},[3925,38492,24839],{"class":4512},[3925,38494,5051],{"class":4508},[3925,38496,38497,38499,38501,38503],{"class":3927,"line":4030},[3925,38498,38431],{"class":4512},[3925,38500,5967],{"class":4508},[3925,38502,38381],{"class":4521},[3925,38504,5051],{"class":4508},[3925,38506,38507,38509],{"class":3927,"line":4036},[3925,38508,38448],{"class":4512},[3925,38510,5051],{"class":4508},[3925,38512,38513,38515],{"class":3927,"line":4041},[3925,38514,38459],{"class":4512},[3925,38516,5051],{"class":4508},[3925,38518,38519,38522],{"class":3927,"line":4047},[3925,38520,38521],{"class":4508},"  ...",[3925,38523,38524],{"class":4512},"rest\n",[3925,38526,38527,38529,38532],{"class":3927,"line":4053},[3925,38528,27354],{"class":4508},[3925,38530,38531],{"class":4565},"AppTextProps",[3925,38533,6049],{"class":4508},[3925,38535,38536,38538,38540,38542,38544,38546,38548,38550],{"class":3927,"line":4059},[3925,38537,6909],{"class":4540},[3925,38539,4509],{"class":4508},[3925,38541,13240],{"class":5194},[3925,38543,4191],{"class":4508},[3925,38545,37394],{"class":5194},[3925,38547,5937],{"class":4508},[3925,38549,13148],{"class":4544},[3925,38551,7020],{"class":4508},[3925,38553,38554,38556,38559],{"class":3927,"line":4065},[3925,38555,6909],{"class":4540},[3925,38557,38558],{"class":5194}," resolvedColor",[3925,38560,10541],{"class":4508},[3925,38562,38563,38566],{"class":3927,"line":4070},[3925,38564,38565],{"class":4512},"    color",[3925,38567,38568],{"class":4508}," ??\n",[3925,38570,38571,38573,38576,38578,38580,38582,38584,38586,38588,38590,38592,38594,38596],{"class":3927,"line":4076},[3925,38572,14928],{"class":4508},[3925,38574,38575],{"class":4512},"variant",[3925,38577,6855],{"class":4508},[3925,38579,38396],{"class":4521},[3925,38581,6021],{"class":4508},[3925,38583,13240],{"class":4512},[3925,38585,3595],{"class":4508},[3925,38587,13752],{"class":4512},[3925,38589,37685],{"class":4508},[3925,38591,13240],{"class":4512},[3925,38593,3595],{"class":4508},[3925,38595,4355],{"class":4512},[3925,38597,4724],{"class":4508},[3925,38599,38600],{"class":3927,"line":4082},[3925,38601,3950],{"emptyLinePlaceholder":3949},[3925,38603,38604,38606],{"class":3927,"line":4088},[3925,38605,4553],{"class":4504},[3925,38607,4556],{"class":4508},[3925,38609,38610,38612],{"class":3927,"line":4093},[3925,38611,4562],{"class":4561},[3925,38613,38614],{"class":4565},"Text\n",[3925,38616,38617,38619,38621,38623],{"class":3927,"line":4098},[3925,38618,10883],{"class":4579},[3925,38620,4583],{"class":4508},[3925,38622,4594],{"class":4540},[3925,38624,15693],{"class":4597},[3925,38626,38627,38629,38631,38633],{"class":3927,"line":6720},[3925,38628,15698],{"class":4512},[3925,38630,3595],{"class":4597},[3925,38632,27231],{"class":4512},[3925,38634,5051],{"class":4597},[3925,38636,38637,38639,38641,38644,38646,38648,38650,38652,38654,38656,38658,38660,38662],{"class":3927,"line":6738},[3925,38638,15820],{"class":4512},[3925,38640,10916],{"class":4508},[3925,38642,38643],{"class":4521}," 'body'",[3925,38645,32265],{"class":4508},[3925,38647,4509],{"class":4597},[3925,38649,7609],{"class":4512},[3925,38651,37039],{"class":4512},[3925,38653,3595],{"class":4597},[3925,38655,15312],{"class":4512},[3925,38657,4191],{"class":4597},[3925,38659,12025],{"class":4512},[3925,38661,9150],{"class":5990},[3925,38663,5667],{"class":4597},[3925,38665,38666,38668,38670,38673,38675],{"class":3927,"line":6787},[3925,38667,15820],{"class":4512},[3925,38669,10916],{"class":4508},[3925,38671,38672],{"class":4521}," 'title'",[3925,38674,32265],{"class":4508},[3925,38676,5617],{"class":4597},[3925,38678,38679,38681,38683,38685,38687],{"class":3927,"line":6792},[3925,38680,13800],{"class":4512},[3925,38682,37039],{"class":4512},[3925,38684,3595],{"class":4597},[3925,38686,15734],{"class":4512},[3925,38688,5051],{"class":4597},[3925,38690,38691,38693,38695],{"class":3927,"line":6797},[3925,38692,13809],{"class":4512},[3925,38694,9308],{"class":4521},[3925,38696,5051],{"class":4597},[3925,38698,38699,38702,38705],{"class":3927,"line":6827},[3925,38700,38701],{"class":4512},"          lineHeight:",[3925,38703,38704],{"class":5990}," 34",[3925,38706,5051],{"class":4597},[3925,38708,38709],{"class":3927,"line":6862},[3925,38710,7599],{"class":4597},[3925,38712,38713,38715,38717,38720,38722],{"class":3927,"line":6867},[3925,38714,15820],{"class":4512},[3925,38716,10916],{"class":4508},[3925,38718,38719],{"class":4521}," 'subtitle'",[3925,38721,32265],{"class":4508},[3925,38723,5617],{"class":4597},[3925,38725,38726,38728,38730,38732,38734],{"class":3927,"line":6872},[3925,38727,13800],{"class":4512},[3925,38729,37039],{"class":4512},[3925,38731,3595],{"class":4597},[3925,38733,18105],{"class":4512},[3925,38735,5051],{"class":4597},[3925,38737,38738,38740,38742],{"class":3927,"line":6906},[3925,38739,13809],{"class":4512},[3925,38741,7303],{"class":4521},[3925,38743,5051],{"class":4597},[3925,38745,38746,38748,38750],{"class":3927,"line":6921},[3925,38747,38701],{"class":4512},[3925,38749,37072],{"class":5990},[3925,38751,5051],{"class":4597},[3925,38753,38754],{"class":3927,"line":6941},[3925,38755,7599],{"class":4597},[3925,38757,38758,38760,38762,38765,38767],{"class":3927,"line":6962},[3925,38759,15820],{"class":4512},[3925,38761,10916],{"class":4508},[3925,38763,38764],{"class":4521}," 'caption'",[3925,38766,32265],{"class":4508},[3925,38768,5617],{"class":4597},[3925,38770,38771,38773,38775,38777,38779],{"class":3927,"line":6977},[3925,38772,13800],{"class":4512},[3925,38774,37039],{"class":4512},[3925,38776,3595],{"class":4597},[3925,38778,15372],{"class":4512},[3925,38780,5051],{"class":4597},[3925,38782,38783,38785,38787],{"class":3927,"line":6990},[3925,38784,38701],{"class":4512},[3925,38786,11575],{"class":5990},[3925,38788,5051],{"class":4597},[3925,38790,38791],{"class":3927,"line":6996},[3925,38792,7599],{"class":4597},[3925,38794,38795,38797,38799,38801],{"class":3927,"line":7014},[3925,38796,10645],{"class":4597},[3925,38798,7292],{"class":4512},[3925,38800,38558],{"class":4512},[3925,38802,5667],{"class":4597},[3925,38804,38805,38807],{"class":3927,"line":7023},[3925,38806,15847],{"class":4512},[3925,38808,5051],{"class":4597},[3925,38810,38811,38813],{"class":3927,"line":7032},[3925,38812,15758],{"class":4597},[3925,38814,4016],{"class":4540},[3925,38816,38817,38819,38822,38825],{"class":3927,"line":7037},[3925,38818,15333],{"class":4540},[3925,38820,38821],{"class":4508},"...",[3925,38823,38824],{"class":4512},"rest",[3925,38826,4016],{"class":4540},[3925,38828,38829],{"class":3927,"line":7042},[3925,38830,7632],{"class":4561},[3925,38832,38833,38835,38837],{"class":3927,"line":7070},[3925,38834,15333],{"class":4540},[3925,38836,24868],{"class":4512},[3925,38838,4016],{"class":4540},[3925,38840,38841,38843,38845],{"class":3927,"line":7086},[3925,38842,4669],{"class":4561},[3925,38844,8422],{"class":4565},[3925,38846,4568],{"class":4561},[3925,38848,38849],{"class":3927,"line":7097},[3925,38850,4678],{"class":4508},[3925,38852,38853],{"class":3927,"line":7114},[3925,38854,4016],{"class":4508},[3925,38856,38857],{"class":3927,"line":7119},[3925,38858,3950],{"emptyLinePlaceholder":3949},[3925,38860,38861,38863,38865,38867,38869,38871,38873],{"class":3927,"line":9008},[3925,38862,5930],{"class":4540},[3925,38864,9037],{"class":5194},[3925,38866,5967],{"class":4508},[3925,38868,9042],{"class":4512},[3925,38870,3595],{"class":4508},[3925,38872,9047],{"class":4544},[3925,38874,9050],{"class":4508},[3925,38876,38877,38880],{"class":3927,"line":9017},[3925,38878,38879],{"class":4512},"  base:",[3925,38881,19858],{"class":4508},[3925,38883,38884],{"class":3927,"line":9022},[3925,38885,5739],{"class":4508},[3916,38887,38890],{"className":4489,"code":38888,"filename":38889,"language":4491,"meta":3921,"style":3921},"import { Pressable, StyleSheet, Text, ViewStyle } from 'react-native';\n\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\n\ntype ButtonVariant = 'primary' | 'secondary';\n\ntype ButtonProps = {\n  label: string;\n  onPress: () => void;\n  disabled?: boolean;\n  style?: ViewStyle;\n  variant?: ButtonVariant;\n};\n\nexport function Button({\n  label,\n  onPress,\n  disabled = false,\n  style,\n  variant = 'primary',\n}: ButtonProps) {\n  const { colors, spacing, radius, fontSize } = useTheme();\n  const isPrimary = variant === 'primary';\n\n  return (\n    \u003CPressable\n      accessibilityRole=\"button\"\n      disabled={disabled}\n      onPress={onPress}\n      style={({ pressed }) => [\n        styles.base,\n        {\n          paddingVertical: spacing.sm + 4,\n          paddingHorizontal: spacing.md,\n          borderRadius: radius.md,\n          backgroundColor: isPrimary ? colors.primary : colors.surface,\n          borderWidth: isPrimary ? 0 : 1,\n          borderColor: colors.border,\n        },\n        pressed && !disabled\n          ? isPrimary\n            ? { backgroundColor: colors.primaryPressed }\n            : { opacity: 0.85 }\n          : null,\n        disabled ? styles.disabled : null,\n        style,\n      ]}\n    >\n      \u003CText\n        style={[\n          styles.label,\n          {\n            color: isPrimary ? colors.onPrimary : colors.text,\n            fontSize: fontSize.md,\n          },\n        ]}\n      >\n        {label}\n      \u003C\u002FText>\n    \u003C\u002FPressable>\n  );\n}\n\nconst styles = StyleSheet.create({\n  base: {\n    alignItems: 'center',\n  },\n  disabled: {\n    opacity: 0.5,\n  },\n  label: {\n    fontWeight: '600',\n  },\n});\n","src\u002Fshared\u002Fui\u002FButton.tsx",[3521,38891,38892,38921,38925,38941,38945,38964,38968,38977,38987,38999,39010,39020,39031,39035,39039,39050,39056,39062,39072,39078,39088,39097,39123,39140,39144,39150,39156,39164,39178,39190,39208,39218,39222,39238,39250,39262,39286,39303,39315,39319,39331,39339,39357,39371,39381,39400,39406,39412,39416,39422,39432,39442,39446,39470,39483,39487,39493,39497,39505,39513,39521,39525,39529,39533,39549,39555,39563,39567,39574,39583,39587,39593,39601,39605],{"__ignoreMap":3921},[3925,38893,38894,38896,38898,38900,38902,38904,38906,38908,38910,38913,38915,38917,38919],{"class":3927,"line":3928},[3925,38895,4505],{"class":4504},[3925,38897,4509],{"class":4508},[3925,38899,8724],{"class":4512},[3925,38901,4191],{"class":4508},[3925,38903,9042],{"class":4512},[3925,38905,4191],{"class":4508},[3925,38907,8422],{"class":4512},[3925,38909,4191],{"class":4508},[3925,38911,38912],{"class":4512},"ViewStyle",[3925,38914,4515],{"class":4508},[3925,38916,4518],{"class":4504},[3925,38918,8175],{"class":4521},[3925,38920,4525],{"class":4508},[3925,38922,38923],{"class":3927,"line":3934},[3925,38924,3950],{"emptyLinePlaceholder":3949},[3925,38926,38927,38929,38931,38933,38935,38937,38939],{"class":3927,"line":3940},[3925,38928,4505],{"class":4504},[3925,38930,4509],{"class":4508},[3925,38932,13148],{"class":4512},[3925,38934,4515],{"class":4508},[3925,38936,4518],{"class":4504},[3925,38938,13155],{"class":4521},[3925,38940,4525],{"class":4508},[3925,38942,38943],{"class":3927,"line":3946},[3925,38944,3950],{"emptyLinePlaceholder":3949},[3925,38946,38947,38949,38952,38954,38957,38959,38962],{"class":3927,"line":3953},[3925,38948,6491],{"class":4540},[3925,38950,38951],{"class":4565}," ButtonVariant",[3925,38953,5967],{"class":4508},[3925,38955,38956],{"class":4521},"'primary'",[3925,38958,6820],{"class":4508},[3925,38960,38961],{"class":4521},"'secondary'",[3925,38963,4525],{"class":4508},[3925,38965,38966],{"class":3927,"line":3959},[3925,38967,3950],{"emptyLinePlaceholder":3949},[3925,38969,38970,38972,38975],{"class":3927,"line":3965},[3925,38971,6491],{"class":4540},[3925,38973,38974],{"class":4565}," ButtonProps",[3925,38976,5198],{"class":4508},[3925,38978,38979,38981,38983,38985],{"class":3927,"line":3971},[3925,38980,31305],{"class":4512},[3925,38982,4767],{"class":4508},[3925,38984,5949],{"class":4565},[3925,38986,4525],{"class":4508},[3925,38988,38989,38991,38993,38995,38997],{"class":3927,"line":3977},[3925,38990,34319],{"class":4544},[3925,38992,24778],{"class":4508},[3925,38994,5614],{"class":4540},[3925,38996,6502],{"class":4565},[3925,38998,4525],{"class":4508},[3925,39000,39001,39004,39006,39008],{"class":3927,"line":3983},[3925,39002,39003],{"class":4512},"  disabled",[3925,39005,23205],{"class":4508},[3925,39007,5808],{"class":4565},[3925,39009,4525],{"class":4508},[3925,39011,39012,39014,39016,39018],{"class":3927,"line":3989},[3925,39013,38459],{"class":4512},[3925,39015,23205],{"class":4508},[3925,39017,38912],{"class":4565},[3925,39019,4525],{"class":4508},[3925,39021,39022,39024,39026,39029],{"class":3927,"line":3995},[3925,39023,38431],{"class":4512},[3925,39025,23205],{"class":4508},[3925,39027,39028],{"class":4565},"ButtonVariant",[3925,39030,4525],{"class":4508},[3925,39032,39033],{"class":3927,"line":4001},[3925,39034,5213],{"class":4508},[3925,39036,39037],{"class":3927,"line":4007},[3925,39038,3950],{"emptyLinePlaceholder":3949},[3925,39040,39041,39043,39045,39048],{"class":3927,"line":4013},[3925,39042,4534],{"class":4504},[3925,39044,4541],{"class":4540},[3925,39046,39047],{"class":4544}," Button",[3925,39049,9050],{"class":4508},[3925,39051,39052,39054],{"class":3927,"line":4019},[3925,39053,31305],{"class":4512},[3925,39055,5051],{"class":4508},[3925,39057,39058,39060],{"class":3927,"line":4024},[3925,39059,34319],{"class":4512},[3925,39061,5051],{"class":4508},[3925,39063,39064,39066,39068,39070],{"class":3927,"line":4030},[3925,39065,39003],{"class":4512},[3925,39067,5967],{"class":4508},[3925,39069,10525],{"class":4540},[3925,39071,5051],{"class":4508},[3925,39073,39074,39076],{"class":3927,"line":4036},[3925,39075,38459],{"class":4512},[3925,39077,5051],{"class":4508},[3925,39079,39080,39082,39084,39086],{"class":3927,"line":4041},[3925,39081,38431],{"class":4512},[3925,39083,5967],{"class":4508},[3925,39085,38956],{"class":4521},[3925,39087,5051],{"class":4508},[3925,39089,39090,39092,39095],{"class":3927,"line":4047},[3925,39091,27354],{"class":4508},[3925,39093,39094],{"class":4565},"ButtonProps",[3925,39096,6049],{"class":4508},[3925,39098,39099,39101,39103,39105,39107,39109,39111,39113,39115,39117,39119,39121],{"class":3927,"line":4053},[3925,39100,6909],{"class":4540},[3925,39102,4509],{"class":4508},[3925,39104,13240],{"class":5194},[3925,39106,4191],{"class":4508},[3925,39108,14837],{"class":5194},[3925,39110,4191],{"class":4508},[3925,39112,17960],{"class":5194},[3925,39114,4191],{"class":4508},[3925,39116,37394],{"class":5194},[3925,39118,5937],{"class":4508},[3925,39120,13148],{"class":4544},[3925,39122,7020],{"class":4508},[3925,39124,39125,39127,39130,39132,39134,39136,39138],{"class":3927,"line":4059},[3925,39126,6909],{"class":4540},[3925,39128,39129],{"class":5194}," isPrimary",[3925,39131,5967],{"class":4508},[3925,39133,38575],{"class":4512},[3925,39135,6855],{"class":4508},[3925,39137,38956],{"class":4521},[3925,39139,4525],{"class":4508},[3925,39141,39142],{"class":3927,"line":4065},[3925,39143,3950],{"emptyLinePlaceholder":3949},[3925,39145,39146,39148],{"class":3927,"line":4070},[3925,39147,4553],{"class":4504},[3925,39149,4556],{"class":4508},[3925,39151,39152,39154],{"class":3927,"line":4076},[3925,39153,4562],{"class":4561},[3925,39155,8906],{"class":4565},[3925,39157,39158,39160,39162],{"class":3927,"line":4082},[3925,39159,34410],{"class":4579},[3925,39161,4583],{"class":4508},[3925,39163,16554],{"class":4521},[3925,39165,39166,39169,39171,39173,39176],{"class":3927,"line":4088},[3925,39167,39168],{"class":4579},"      disabled",[3925,39170,4583],{"class":4508},[3925,39172,4594],{"class":4540},[3925,39174,39175],{"class":4512},"disabled",[3925,39177,4016],{"class":4540},[3925,39179,39180,39182,39184,39186,39188],{"class":3927,"line":4093},[3925,39181,5697],{"class":4579},[3925,39183,4583],{"class":4508},[3925,39185,4594],{"class":4540},[3925,39187,34360],{"class":4512},[3925,39189,4016],{"class":4540},[3925,39191,39192,39194,39196,39198,39200,39202,39204,39206],{"class":3927,"line":4098},[3925,39193,10883],{"class":4579},[3925,39195,4583],{"class":4508},[3925,39197,4594],{"class":4540},[3925,39199,8674],{"class":4597},[3925,39201,34476],{"class":4512},[3925,39203,5611],{"class":4597},[3925,39205,5614],{"class":4540},[3925,39207,34483],{"class":4597},[3925,39209,39210,39212,39214,39216],{"class":3927,"line":6720},[3925,39211,15698],{"class":4512},[3925,39213,3595],{"class":4597},[3925,39215,27231],{"class":4512},[3925,39217,5051],{"class":4597},[3925,39219,39220],{"class":3927,"line":6738},[3925,39221,10662],{"class":4597},[3925,39223,39224,39226,39228,39230,39232,39234,39236],{"class":3927,"line":6787},[3925,39225,15727],{"class":4512},[3925,39227,15307],{"class":4512},[3925,39229,3595],{"class":4597},[3925,39231,15372],{"class":4512},[3925,39233,22187],{"class":4508},[3925,39235,9179],{"class":5990},[3925,39237,5051],{"class":4597},[3925,39239,39240,39242,39244,39246,39248],{"class":3927,"line":6792},[3925,39241,15714],{"class":4512},[3925,39243,15307],{"class":4512},[3925,39245,3595],{"class":4597},[3925,39247,15312],{"class":4512},[3925,39249,5051],{"class":4597},[3925,39251,39252,39254,39256,39258,39260],{"class":3927,"line":6797},[3925,39253,19401],{"class":4512},[3925,39255,19404],{"class":4512},[3925,39257,3595],{"class":4597},[3925,39259,15312],{"class":4512},[3925,39261,5051],{"class":4597},[3925,39263,39264,39266,39268,39270,39272,39274,39276,39278,39280,39282,39284],{"class":3927,"line":6827},[3925,39265,7580],{"class":4512},[3925,39267,39129],{"class":4512},[3925,39269,10922],{"class":4508},[3925,39271,13324],{"class":4512},[3925,39273,3595],{"class":4597},[3925,39275,13358],{"class":4512},[3925,39277,10928],{"class":4508},[3925,39279,13324],{"class":4512},[3925,39281,3595],{"class":4597},[3925,39283,16513],{"class":4512},[3925,39285,5051],{"class":4597},[3925,39287,39288,39291,39293,39295,39297,39299,39301],{"class":3927,"line":6862},[3925,39289,39290],{"class":4512},"          borderWidth:",[3925,39292,39129],{"class":4512},[3925,39294,10922],{"class":4508},[3925,39296,15345],{"class":5990},[3925,39298,10928],{"class":4508},[3925,39300,9064],{"class":5990},[3925,39302,5051],{"class":4597},[3925,39304,39305,39307,39309,39311,39313],{"class":3927,"line":6867},[3925,39306,19388],{"class":4512},[3925,39308,13324],{"class":4512},[3925,39310,3595],{"class":4597},[3925,39312,13783],{"class":4512},[3925,39314,5051],{"class":4597},[3925,39316,39317],{"class":3927,"line":6872},[3925,39318,7599],{"class":4597},[3925,39320,39321,39323,39325,39328],{"class":3927,"line":6906},[3925,39322,34542],{"class":4512},[3925,39324,32265],{"class":4508},[3925,39326,39327],{"class":4508}," !",[3925,39329,39330],{"class":4512},"disabled\n",[3925,39332,39333,39336],{"class":3927,"line":6921},[3925,39334,39335],{"class":4508},"          ?",[3925,39337,39338],{"class":4512}," isPrimary\n",[3925,39340,39341,39343,39345,39347,39349,39351,39354],{"class":3927,"line":6941},[3925,39342,16242],{"class":4508},[3925,39344,4509],{"class":4597},[3925,39346,7267],{"class":4512},[3925,39348,13324],{"class":4512},[3925,39350,3595],{"class":4597},[3925,39352,39353],{"class":4512},"primaryPressed",[3925,39355,39356],{"class":4597}," }\n",[3925,39358,39359,39361,39363,39366,39369],{"class":3927,"line":6962},[3925,39360,16277],{"class":4508},[3925,39362,4509],{"class":4597},[3925,39364,39365],{"class":4512},"opacity:",[3925,39367,39368],{"class":5990}," 0.85",[3925,39370,39356],{"class":4597},[3925,39372,39373,39376,39379],{"class":3927,"line":6977},[3925,39374,39375],{"class":4508},"          :",[3925,39377,39378],{"class":4540}," null",[3925,39380,5051],{"class":4597},[3925,39382,39383,39386,39388,39390,39392,39394,39396,39398],{"class":3927,"line":6990},[3925,39384,39385],{"class":4512},"        disabled",[3925,39387,10922],{"class":4508},[3925,39389,9037],{"class":4512},[3925,39391,3595],{"class":4597},[3925,39393,39175],{"class":4512},[3925,39395,10928],{"class":4508},[3925,39397,39378],{"class":4540},[3925,39399,5051],{"class":4597},[3925,39401,39402,39404],{"class":3927,"line":6996},[3925,39403,15847],{"class":4512},[3925,39405,5051],{"class":4597},[3925,39407,39408,39410],{"class":3927,"line":7014},[3925,39409,15758],{"class":4597},[3925,39411,4016],{"class":4540},[3925,39413,39414],{"class":3927,"line":7023},[3925,39415,7632],{"class":4561},[3925,39417,39418,39420],{"class":3927,"line":7032},[3925,39419,4573],{"class":4561},[3925,39421,38614],{"class":4565},[3925,39423,39424,39426,39428,39430],{"class":3927,"line":7037},[3925,39425,15847],{"class":4579},[3925,39427,4583],{"class":4508},[3925,39429,4594],{"class":4540},[3925,39431,15693],{"class":4597},[3925,39433,39434,39436,39438,39440],{"class":3927,"line":7042},[3925,39435,15943],{"class":4512},[3925,39437,3595],{"class":4597},[3925,39439,11017],{"class":4512},[3925,39441,5051],{"class":4597},[3925,39443,39444],{"class":3927,"line":7070},[3925,39445,15955],{"class":4597},[3925,39447,39448,39450,39452,39454,39456,39458,39460,39462,39464,39466,39468],{"class":3927,"line":7086},[3925,39449,16189],{"class":4512},[3925,39451,39129],{"class":4512},[3925,39453,10922],{"class":4508},[3925,39455,13324],{"class":4512},[3925,39457,3595],{"class":4597},[3925,39459,16648],{"class":4512},[3925,39461,10928],{"class":4508},[3925,39463,13324],{"class":4512},[3925,39465,3595],{"class":4597},[3925,39467,4355],{"class":4512},[3925,39469,5051],{"class":4597},[3925,39471,39472,39475,39477,39479,39481],{"class":3927,"line":7097},[3925,39473,39474],{"class":4512},"            fontSize:",[3925,39476,37039],{"class":4512},[3925,39478,3595],{"class":4597},[3925,39480,15312],{"class":4512},[3925,39482,5051],{"class":4597},[3925,39484,39485],{"class":3927,"line":7114},[3925,39486,16032],{"class":4597},[3925,39488,39489,39491],{"class":3927,"line":7119},[3925,39490,16038],{"class":4597},[3925,39492,4016],{"class":4540},[3925,39494,39495],{"class":3927,"line":9008},[3925,39496,7330],{"class":4561},[3925,39498,39499,39501,39503],{"class":3927,"line":9017},[3925,39500,19510],{"class":4540},[3925,39502,11017],{"class":4512},[3925,39504,4016],{"class":4540},[3925,39506,39507,39509,39511],{"class":3927,"line":9022},[3925,39508,7434],{"class":4561},[3925,39510,8422],{"class":4565},[3925,39512,4568],{"class":4561},[3925,39514,39515,39517,39519],{"class":3927,"line":9027},[3925,39516,4669],{"class":4561},[3925,39518,8724],{"class":4565},[3925,39520,4568],{"class":4561},[3925,39522,39523],{"class":3927,"line":9032},[3925,39524,4678],{"class":4508},[3925,39526,39527],{"class":3927,"line":9053},[3925,39528,4016],{"class":4508},[3925,39530,39531],{"class":3927,"line":9075},[3925,39532,3950],{"emptyLinePlaceholder":3949},[3925,39534,39535,39537,39539,39541,39543,39545,39547],{"class":3927,"line":9083},[3925,39536,5930],{"class":4540},[3925,39538,9037],{"class":5194},[3925,39540,5967],{"class":4508},[3925,39542,9042],{"class":4512},[3925,39544,3595],{"class":4508},[3925,39546,9047],{"class":4544},[3925,39548,9050],{"class":4508},[3925,39550,39551,39553],{"class":3927,"line":9094},[3925,39552,38879],{"class":4512},[3925,39554,5617],{"class":4508},[3925,39556,39557,39559,39561],{"class":3927,"line":9105},[3925,39558,9427],{"class":4512},[3925,39560,9430],{"class":4521},[3925,39562,5051],{"class":4508},[3925,39564,39565],{"class":3927,"line":9115},[3925,39566,6584],{"class":4508},[3925,39568,39569,39572],{"class":3927,"line":9125},[3925,39570,39571],{"class":4512},"  disabled:",[3925,39573,5617],{"class":4508},[3925,39575,39576,39578,39581],{"class":3927,"line":9135},[3925,39577,35579],{"class":4512},[3925,39579,39580],{"class":5990}," 0.5",[3925,39582,5051],{"class":4508},[3925,39584,39585],{"class":3927,"line":9140},[3925,39586,6584],{"class":4508},[3925,39588,39589,39591],{"class":3927,"line":9168},[3925,39590,11404],{"class":4512},[3925,39592,5617],{"class":4508},[3925,39594,39595,39597,39599],{"class":3927,"line":9197},[3925,39596,11430],{"class":4512},[3925,39598,7303],{"class":4521},[3925,39600,5051],{"class":4508},[3925,39602,39603],{"class":3927,"line":9226},[3925,39604,6584],{"class":4508},[3925,39606,39607],{"class":3927,"line":9234},[3925,39608,5739],{"class":4508},[3916,39610,39613],{"className":4489,"code":39611,"filename":39612,"language":4491,"meta":3921,"style":3921},"import { ReactNode } from 'react';\nimport { StyleSheet, ViewStyle } from 'react-native';\nimport { SafeAreaView } from 'react-native-safe-area-context';\n\nimport { space, useTheme } from '@\u002Fshared\u002Ftheme';\n\ntype ScreenProps = {\n  children: ReactNode;\n  style?: ViewStyle;\n};\n\nexport function Screen({ children, style }: ScreenProps) {\n  const { colors } = useTheme();\n\n  return (\n    \u003CSafeAreaView\n      style={[styles.root, { backgroundColor: colors.background }, style]}\n    >\n      {children}\n    \u003C\u002FSafeAreaView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  root: {\n    flex: 1,\n    paddingHorizontal: space.md,\n  },\n});\n","src\u002Fshared\u002Fui\u002FScreen.tsx",[3521,39614,39615,39631,39651,39667,39671,39691,39695,39704,39714,39724,39728,39732,39757,39771,39775,39781,39788,39823,39827,39835,39843,39847,39851,39855,39871,39878,39886,39898,39902],{"__ignoreMap":3921},[3925,39616,39617,39619,39621,39623,39625,39627,39629],{"class":3927,"line":3928},[3925,39618,4505],{"class":4504},[3925,39620,4509],{"class":4508},[3925,39622,24844],{"class":4512},[3925,39624,4515],{"class":4508},[3925,39626,4518],{"class":4504},[3925,39628,8122],{"class":4521},[3925,39630,4525],{"class":4508},[3925,39632,39633,39635,39637,39639,39641,39643,39645,39647,39649],{"class":3927,"line":3934},[3925,39634,4505],{"class":4504},[3925,39636,4509],{"class":4508},[3925,39638,9042],{"class":4512},[3925,39640,4191],{"class":4508},[3925,39642,38912],{"class":4512},[3925,39644,4515],{"class":4508},[3925,39646,4518],{"class":4504},[3925,39648,8175],{"class":4521},[3925,39650,4525],{"class":4508},[3925,39652,39653,39655,39657,39659,39661,39663,39665],{"class":3927,"line":3940},[3925,39654,4505],{"class":4504},[3925,39656,4509],{"class":4508},[3925,39658,8206],{"class":4512},[3925,39660,4515],{"class":4508},[3925,39662,4518],{"class":4504},[3925,39664,8213],{"class":4521},[3925,39666,4525],{"class":4508},[3925,39668,39669],{"class":3927,"line":3946},[3925,39670,3950],{"emptyLinePlaceholder":3949},[3925,39672,39673,39675,39677,39679,39681,39683,39685,39687,39689],{"class":3927,"line":3953},[3925,39674,4505],{"class":4504},[3925,39676,4509],{"class":4508},[3925,39678,37403],{"class":4512},[3925,39680,4191],{"class":4508},[3925,39682,13148],{"class":4512},[3925,39684,4515],{"class":4508},[3925,39686,4518],{"class":4504},[3925,39688,13155],{"class":4521},[3925,39690,4525],{"class":4508},[3925,39692,39693],{"class":3927,"line":3959},[3925,39694,3950],{"emptyLinePlaceholder":3949},[3925,39696,39697,39699,39702],{"class":3927,"line":3965},[3925,39698,6491],{"class":4540},[3925,39700,39701],{"class":4565}," ScreenProps",[3925,39703,5198],{"class":4508},[3925,39705,39706,39708,39710,39712],{"class":3927,"line":3971},[3925,39707,24839],{"class":4512},[3925,39709,4767],{"class":4508},[3925,39711,24844],{"class":4565},[3925,39713,4525],{"class":4508},[3925,39715,39716,39718,39720,39722],{"class":3927,"line":3977},[3925,39717,38459],{"class":4512},[3925,39719,23205],{"class":4508},[3925,39721,38912],{"class":4565},[3925,39723,4525],{"class":4508},[3925,39725,39726],{"class":3927,"line":3983},[3925,39727,5213],{"class":4508},[3925,39729,39730],{"class":3927,"line":3989},[3925,39731,3950],{"emptyLinePlaceholder":3949},[3925,39733,39734,39736,39738,39741,39743,39745,39747,39750,39752,39755],{"class":3927,"line":3995},[3925,39735,4534],{"class":4504},[3925,39737,4541],{"class":4540},[3925,39739,39740],{"class":4544}," Screen",[3925,39742,8674],{"class":4508},[3925,39744,24868],{"class":4512},[3925,39746,4191],{"class":4508},[3925,39748,39749],{"class":4512},"style",[3925,39751,24871],{"class":4508},[3925,39753,39754],{"class":4565},"ScreenProps",[3925,39756,6049],{"class":4508},[3925,39758,39759,39761,39763,39765,39767,39769],{"class":3927,"line":4001},[3925,39760,6909],{"class":4540},[3925,39762,4509],{"class":4508},[3925,39764,13240],{"class":5194},[3925,39766,5937],{"class":4508},[3925,39768,13148],{"class":4544},[3925,39770,7020],{"class":4508},[3925,39772,39773],{"class":3927,"line":4007},[3925,39774,3950],{"emptyLinePlaceholder":3949},[3925,39776,39777,39779],{"class":3927,"line":4013},[3925,39778,4553],{"class":4504},[3925,39780,4556],{"class":4508},[3925,39782,39783,39785],{"class":3927,"line":4019},[3925,39784,4562],{"class":4561},[3925,39786,39787],{"class":4565},"SafeAreaView\n",[3925,39789,39790,39792,39794,39796,39798,39800,39802,39804,39806,39808,39810,39812,39814,39817,39819,39821],{"class":3927,"line":4024},[3925,39791,10883],{"class":4579},[3925,39793,4583],{"class":4508},[3925,39795,4594],{"class":4540},[3925,39797,5987],{"class":4597},[3925,39799,8365],{"class":4512},[3925,39801,3595],{"class":4597},[3925,39803,6149],{"class":4512},[3925,39805,16321],{"class":4597},[3925,39807,7267],{"class":4512},[3925,39809,13324],{"class":4512},[3925,39811,3595],{"class":4597},[3925,39813,13329],{"class":4512},[3925,39815,39816],{"class":4597}," }, ",[3925,39818,39749],{"class":4512},[3925,39820,8387],{"class":4597},[3925,39822,4016],{"class":4540},[3925,39824,39825],{"class":3927,"line":4030},[3925,39826,7632],{"class":4561},[3925,39828,39829,39831,39833],{"class":3927,"line":4036},[3925,39830,15333],{"class":4540},[3925,39832,24868],{"class":4512},[3925,39834,4016],{"class":4540},[3925,39836,39837,39839,39841],{"class":3927,"line":4041},[3925,39838,4669],{"class":4561},[3925,39840,8206],{"class":4565},[3925,39842,4568],{"class":4561},[3925,39844,39845],{"class":3927,"line":4047},[3925,39846,4678],{"class":4508},[3925,39848,39849],{"class":3927,"line":4053},[3925,39850,4016],{"class":4508},[3925,39852,39853],{"class":3927,"line":4059},[3925,39854,3950],{"emptyLinePlaceholder":3949},[3925,39856,39857,39859,39861,39863,39865,39867,39869],{"class":3927,"line":4065},[3925,39858,5930],{"class":4540},[3925,39860,9037],{"class":5194},[3925,39862,5967],{"class":4508},[3925,39864,9042],{"class":4512},[3925,39866,3595],{"class":4508},[3925,39868,9047],{"class":4544},[3925,39870,9050],{"class":4508},[3925,39872,39873,39876],{"class":3927,"line":4070},[3925,39874,39875],{"class":4512},"  root:",[3925,39877,5617],{"class":4508},[3925,39879,39880,39882,39884],{"class":3927,"line":4076},[3925,39881,10105],{"class":4512},[3925,39883,9064],{"class":5990},[3925,39885,5051],{"class":4508},[3925,39887,39888,39890,39892,39894,39896],{"class":3927,"line":4082},[3925,39889,9086],{"class":4512},[3925,39891,36921],{"class":4512},[3925,39893,3595],{"class":4508},[3925,39895,15312],{"class":4512},[3925,39897,5051],{"class":4508},[3925,39899,39900],{"class":3927,"line":4088},[3925,39901,6584],{"class":4508},[3925,39903,39904],{"class":3927,"line":4093},[3925,39905,5739],{"class":4508},[3916,39907,39910],{"className":4489,"code":39908,"filename":39909,"language":4491,"meta":3921,"style":3921},"import { ReactNode } from 'react';\nimport {\n  StyleSheet,\n  TextInput,\n  TextInputProps,\n  View,\n  ViewStyle,\n} from 'react-native';\n\nimport { useTheme } from '@\u002Fshared\u002Ftheme';\nimport { AppText } from '.\u002FAppText';\n\ntype TextFieldProps = TextInputProps & {\n  label: string;\n  error?: string;\n  \u002F** Допоміжний текст під полем (коли немає error). *\u002F\n  hint?: string;\n  containerStyle?: ViewStyle;\n  \u002F** Опційний правий слот (іконка, кнопка дати). *\u002F\n  rightSlot?: ReactNode;\n};\n\n\u002F**\n * Поле форми: label + TextInput + помилка\u002Fпідказка.\n * Контрольоване ззовні (value \u002F onChangeText) — зручно з RHF Controller.\n *\u002F\nexport function TextField({\n  label,\n  error,\n  hint,\n  containerStyle,\n  rightSlot,\n  style,\n  ...inputProps\n}: TextFieldProps) {\n  const { colors, spacing, radius, fontSize } = useTheme();\n  const hasError = Boolean(error);\n\n  return (\n    \u003CView style={[styles.wrap, { gap: spacing.xs }, containerStyle]}>\n      \u003CAppText variant=\"caption\" style={styles.label}>\n        {label}\n      \u003C\u002FAppText>\n      \u003CView\n        style={[\n          styles.row,\n          {\n            borderColor: hasError ? colors.danger : colors.border,\n            backgroundColor: colors.surface,\n            borderRadius: radius.md,\n          },\n        ]}\n      >\n        \u003CTextInput\n          placeholderTextColor={colors.textSecondary}\n          style={[\n            styles.input,\n            {\n              color: colors.text,\n              fontSize: fontSize.md,\n              paddingVertical: spacing.sm + 4,\n              paddingHorizontal: spacing.md,\n            },\n            style,\n          ]}\n          {...inputProps}\n        \u002F>\n        {rightSlot}\n      \u003C\u002FView>\n      {hasError ? (\n        \u003CAppText variant=\"caption\" color={colors.danger}>\n          {error}\n        \u003C\u002FAppText>\n      ) : hint ? (\n        \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n          {hint}\n        \u003C\u002FAppText>\n      ) : null}\n    \u003C\u002FView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  wrap: {\n    width: '100%',\n  },\n  label: {\n    fontWeight: '600',\n  },\n  row: {\n    flexDirection: 'row',\n    alignItems: 'center',\n    borderWidth: 1,\n    overflow: 'hidden',\n  },\n  input: {\n    flex: 1,\n    minHeight: 48,\n  },\n});\n","src\u002Fshared\u002Fui\u002FTextField.tsx",[3521,39911,39912,39928,39934,39940,39946,39953,39959,39966,39976,39980,39996,40013,40017,40031,40041,40051,40056,40067,40078,40083,40094,40098,40102,40106,40111,40116,40120,40131,40137,40143,40149,40155,40161,40167,40174,40183,40209,40225,40229,40235,40276,40304,40312,40320,40326,40336,40346,40350,40374,40386,40398,40402,40408,40412,40418,40435,40445,40455,40459,40472,40485,40502,40515,40519,40525,40531,40542,40546,40555,40563,40573,40601,40609,40617,40630,40658,40666,40674,40682,40690,40694,40698,40702,40718,40724,40732,40736,40742,40750,40754,40760,40768,40776,40784,40792,40796,40802,40810,40818,40822],{"__ignoreMap":3921},[3925,39913,39914,39916,39918,39920,39922,39924,39926],{"class":3927,"line":3928},[3925,39915,4505],{"class":4504},[3925,39917,4509],{"class":4508},[3925,39919,24844],{"class":4512},[3925,39921,4515],{"class":4508},[3925,39923,4518],{"class":4504},[3925,39925,8122],{"class":4521},[3925,39927,4525],{"class":4508},[3925,39929,39930,39932],{"class":3927,"line":3934},[3925,39931,4505],{"class":4504},[3925,39933,5617],{"class":4508},[3925,39935,39936,39938],{"class":3927,"line":3940},[3925,39937,8149],{"class":4512},[3925,39939,5051],{"class":4508},[3925,39941,39942,39944],{"class":3927,"line":3946},[3925,39943,10320],{"class":4512},[3925,39945,5051],{"class":4508},[3925,39947,39948,39951],{"class":3927,"line":3953},[3925,39949,39950],{"class":4512},"  TextInputProps",[3925,39952,5051],{"class":4508},[3925,39954,39955,39957],{"class":3927,"line":3959},[3925,39956,8163],{"class":4512},[3925,39958,5051],{"class":4508},[3925,39960,39961,39964],{"class":3927,"line":3965},[3925,39962,39963],{"class":4512},"  ViewStyle",[3925,39965,5051],{"class":4508},[3925,39967,39968,39970,39972,39974],{"class":3927,"line":3971},[3925,39969,8170],{"class":4508},[3925,39971,4518],{"class":4504},[3925,39973,8175],{"class":4521},[3925,39975,4525],{"class":4508},[3925,39977,39978],{"class":3927,"line":3977},[3925,39979,3950],{"emptyLinePlaceholder":3949},[3925,39981,39982,39984,39986,39988,39990,39992,39994],{"class":3927,"line":3983},[3925,39983,4505],{"class":4504},[3925,39985,4509],{"class":4508},[3925,39987,13148],{"class":4512},[3925,39989,4515],{"class":4508},[3925,39991,4518],{"class":4504},[3925,39993,13155],{"class":4521},[3925,39995,4525],{"class":4508},[3925,39997,39998,40000,40002,40004,40006,40008,40011],{"class":3927,"line":3989},[3925,39999,4505],{"class":4504},[3925,40001,4509],{"class":4508},[3925,40003,14664],{"class":4512},[3925,40005,4515],{"class":4508},[3925,40007,4518],{"class":4504},[3925,40009,40010],{"class":4521}," '.\u002FAppText'",[3925,40012,4525],{"class":4508},[3925,40014,40015],{"class":3927,"line":3995},[3925,40016,3950],{"emptyLinePlaceholder":3949},[3925,40018,40019,40021,40024,40026,40029],{"class":3927,"line":4001},[3925,40020,6491],{"class":4540},[3925,40022,40023],{"class":4565}," TextFieldProps",[3925,40025,5967],{"class":4508},[3925,40027,40028],{"class":4565},"TextInputProps",[3925,40030,38416],{"class":4508},[3925,40032,40033,40035,40037,40039],{"class":3927,"line":4007},[3925,40034,31305],{"class":4512},[3925,40036,4767],{"class":4508},[3925,40038,5949],{"class":4565},[3925,40040,4525],{"class":4508},[3925,40042,40043,40045,40047,40049],{"class":3927,"line":4013},[3925,40044,31361],{"class":4512},[3925,40046,23205],{"class":4508},[3925,40048,5949],{"class":4565},[3925,40050,4525],{"class":4508},[3925,40052,40053],{"class":3927,"line":4019},[3925,40054,40055],{"class":4498},"  \u002F** Допоміжний текст під полем (коли немає error). *\u002F\n",[3925,40057,40058,40061,40063,40065],{"class":3927,"line":4024},[3925,40059,40060],{"class":4512},"  hint",[3925,40062,23205],{"class":4508},[3925,40064,5949],{"class":4565},[3925,40066,4525],{"class":4508},[3925,40068,40069,40072,40074,40076],{"class":3927,"line":4030},[3925,40070,40071],{"class":4512},"  containerStyle",[3925,40073,23205],{"class":4508},[3925,40075,38912],{"class":4565},[3925,40077,4525],{"class":4508},[3925,40079,40080],{"class":3927,"line":4036},[3925,40081,40082],{"class":4498},"  \u002F** Опційний правий слот (іконка, кнопка дати). *\u002F\n",[3925,40084,40085,40088,40090,40092],{"class":3927,"line":4041},[3925,40086,40087],{"class":4512},"  rightSlot",[3925,40089,23205],{"class":4508},[3925,40091,24844],{"class":4565},[3925,40093,4525],{"class":4508},[3925,40095,40096],{"class":3927,"line":4047},[3925,40097,5213],{"class":4508},[3925,40099,40100],{"class":3927,"line":4053},[3925,40101,3950],{"emptyLinePlaceholder":3949},[3925,40103,40104],{"class":3927,"line":4059},[3925,40105,13166],{"class":4498},[3925,40107,40108],{"class":3927,"line":4065},[3925,40109,40110],{"class":4498}," * Поле форми: label + TextInput + помилка\u002Fпідказка.\n",[3925,40112,40113],{"class":3927,"line":4070},[3925,40114,40115],{"class":4498}," * Контрольоване ззовні (value \u002F onChangeText) — зручно з RHF Controller.\n",[3925,40117,40118],{"class":3927,"line":4076},[3925,40119,13196],{"class":4498},[3925,40121,40122,40124,40126,40129],{"class":3927,"line":4082},[3925,40123,4534],{"class":4504},[3925,40125,4541],{"class":4540},[3925,40127,40128],{"class":4544}," TextField",[3925,40130,9050],{"class":4508},[3925,40132,40133,40135],{"class":3927,"line":4088},[3925,40134,31305],{"class":4512},[3925,40136,5051],{"class":4508},[3925,40138,40139,40141],{"class":3927,"line":4093},[3925,40140,31361],{"class":4512},[3925,40142,5051],{"class":4508},[3925,40144,40145,40147],{"class":3927,"line":4098},[3925,40146,40060],{"class":4512},[3925,40148,5051],{"class":4508},[3925,40150,40151,40153],{"class":3927,"line":6720},[3925,40152,40071],{"class":4512},[3925,40154,5051],{"class":4508},[3925,40156,40157,40159],{"class":3927,"line":6738},[3925,40158,40087],{"class":4512},[3925,40160,5051],{"class":4508},[3925,40162,40163,40165],{"class":3927,"line":6787},[3925,40164,38459],{"class":4512},[3925,40166,5051],{"class":4508},[3925,40168,40169,40171],{"class":3927,"line":6792},[3925,40170,38521],{"class":4508},[3925,40172,40173],{"class":4512},"inputProps\n",[3925,40175,40176,40178,40181],{"class":3927,"line":6797},[3925,40177,27354],{"class":4508},[3925,40179,40180],{"class":4565},"TextFieldProps",[3925,40182,6049],{"class":4508},[3925,40184,40185,40187,40189,40191,40193,40195,40197,40199,40201,40203,40205,40207],{"class":3927,"line":6827},[3925,40186,6909],{"class":4540},[3925,40188,4509],{"class":4508},[3925,40190,13240],{"class":5194},[3925,40192,4191],{"class":4508},[3925,40194,14837],{"class":5194},[3925,40196,4191],{"class":4508},[3925,40198,17960],{"class":5194},[3925,40200,4191],{"class":4508},[3925,40202,37394],{"class":5194},[3925,40204,5937],{"class":4508},[3925,40206,13148],{"class":4544},[3925,40208,7020],{"class":4508},[3925,40210,40211,40213,40215,40217,40219,40221,40223],{"class":3927,"line":6862},[3925,40212,6909],{"class":4540},[3925,40214,31568],{"class":5194},[3925,40216,5967],{"class":4508},[3925,40218,30449],{"class":4544},[3925,40220,4702],{"class":4508},[3925,40222,31577],{"class":4512},[3925,40224,4724],{"class":4508},[3925,40226,40227],{"class":3927,"line":6867},[3925,40228,3950],{"emptyLinePlaceholder":3949},[3925,40230,40231,40233],{"class":3927,"line":6872},[3925,40232,4553],{"class":4504},[3925,40234,4556],{"class":4508},[3925,40236,40237,40239,40241,40243,40245,40247,40249,40251,40253,40255,40257,40259,40261,40263,40265,40267,40270,40272,40274],{"class":3927,"line":6906},[3925,40238,4562],{"class":4561},[3925,40240,8398],{"class":4565},[3925,40242,7232],{"class":4579},[3925,40244,4583],{"class":4508},[3925,40246,4594],{"class":4540},[3925,40248,5987],{"class":4597},[3925,40250,8365],{"class":4512},[3925,40252,3595],{"class":4597},[3925,40254,33616],{"class":4512},[3925,40256,16321],{"class":4597},[3925,40258,11369],{"class":4512},[3925,40260,15307],{"class":4512},[3925,40262,3595],{"class":4597},[3925,40264,16010],{"class":4512},[3925,40266,39816],{"class":4597},[3925,40268,40269],{"class":4512},"containerStyle",[3925,40271,8387],{"class":4597},[3925,40273,4610],{"class":4540},[3925,40275,4568],{"class":4561},[3925,40277,40278,40280,40282,40284,40286,40288,40290,40292,40294,40296,40298,40300,40302],{"class":3927,"line":6921},[3925,40279,4573],{"class":4561},[3925,40281,14664],{"class":4565},[3925,40283,15773],{"class":4579},[3925,40285,4583],{"class":4508},[3925,40287,16084],{"class":4521},[3925,40289,7232],{"class":4579},[3925,40291,4583],{"class":4508},[3925,40293,4594],{"class":4540},[3925,40295,8365],{"class":4512},[3925,40297,3595],{"class":4597},[3925,40299,11017],{"class":4512},[3925,40301,4610],{"class":4540},[3925,40303,4568],{"class":4561},[3925,40305,40306,40308,40310],{"class":3927,"line":6941},[3925,40307,19510],{"class":4540},[3925,40309,11017],{"class":4512},[3925,40311,4016],{"class":4540},[3925,40313,40314,40316,40318],{"class":3927,"line":6962},[3925,40315,7434],{"class":4561},[3925,40317,14664],{"class":4565},[3925,40319,4568],{"class":4561},[3925,40321,40322,40324],{"class":3927,"line":6977},[3925,40323,4573],{"class":4561},[3925,40325,15682],{"class":4565},[3925,40327,40328,40330,40332,40334],{"class":3927,"line":6990},[3925,40329,15847],{"class":4579},[3925,40331,4583],{"class":4508},[3925,40333,4594],{"class":4540},[3925,40335,15693],{"class":4597},[3925,40337,40338,40340,40342,40344],{"class":3927,"line":6996},[3925,40339,15943],{"class":4512},[3925,40341,3595],{"class":4597},[3925,40343,33671],{"class":4512},[3925,40345,5051],{"class":4597},[3925,40347,40348],{"class":3927,"line":7014},[3925,40349,15955],{"class":4597},[3925,40351,40352,40354,40356,40358,40360,40362,40364,40366,40368,40370,40372],{"class":3927,"line":7023},[3925,40353,32054],{"class":4512},[3925,40355,31568],{"class":4512},[3925,40357,10922],{"class":4508},[3925,40359,13324],{"class":4512},[3925,40361,3595],{"class":4597},[3925,40363,32065],{"class":4512},[3925,40365,10928],{"class":4508},[3925,40367,13324],{"class":4512},[3925,40369,3595],{"class":4597},[3925,40371,13783],{"class":4512},[3925,40373,5051],{"class":4597},[3925,40375,40376,40378,40380,40382,40384],{"class":3927,"line":7032},[3925,40377,17179],{"class":4512},[3925,40379,13324],{"class":4512},[3925,40381,3595],{"class":4597},[3925,40383,16513],{"class":4512},[3925,40385,5051],{"class":4597},[3925,40387,40388,40390,40392,40394,40396],{"class":3927,"line":7037},[3925,40389,32092],{"class":4512},[3925,40391,19404],{"class":4512},[3925,40393,3595],{"class":4597},[3925,40395,15312],{"class":4512},[3925,40397,5051],{"class":4597},[3925,40399,40400],{"class":3927,"line":7042},[3925,40401,16032],{"class":4597},[3925,40403,40404,40406],{"class":3927,"line":7070},[3925,40405,16038],{"class":4597},[3925,40407,4016],{"class":4540},[3925,40409,40410],{"class":3927,"line":7086},[3925,40411,7330],{"class":4561},[3925,40413,40414,40416],{"class":3927,"line":7097},[3925,40415,7335],{"class":4561},[3925,40417,11037],{"class":4565},[3925,40419,40420,40423,40425,40427,40429,40431,40433],{"class":3927,"line":7114},[3925,40421,40422],{"class":4579},"          placeholderTextColor",[3925,40424,4583],{"class":4508},[3925,40426,4594],{"class":4540},[3925,40428,13240],{"class":4512},[3925,40430,3595],{"class":4597},[3925,40432,13752],{"class":4512},[3925,40434,4016],{"class":4540},[3925,40436,40437,40439,40441,40443],{"class":3927,"line":7119},[3925,40438,8911],{"class":4579},[3925,40440,4583],{"class":4508},[3925,40442,4594],{"class":4540},[3925,40444,15693],{"class":4597},[3925,40446,40447,40449,40451,40453],{"class":3927,"line":9008},[3925,40448,21366],{"class":4512},[3925,40450,3595],{"class":4597},[3925,40452,11052],{"class":4512},[3925,40454,5051],{"class":4597},[3925,40456,40457],{"class":3927,"line":9017},[3925,40458,21377],{"class":4597},[3925,40460,40461,40464,40466,40468,40470],{"class":3927,"line":9022},[3925,40462,40463],{"class":4512},"              color:",[3925,40465,13324],{"class":4512},[3925,40467,3595],{"class":4597},[3925,40469,4355],{"class":4512},[3925,40471,5051],{"class":4597},[3925,40473,40474,40477,40479,40481,40483],{"class":3927,"line":9027},[3925,40475,40476],{"class":4512},"              fontSize:",[3925,40478,37039],{"class":4512},[3925,40480,3595],{"class":4597},[3925,40482,15312],{"class":4512},[3925,40484,5051],{"class":4597},[3925,40486,40487,40490,40492,40494,40496,40498,40500],{"class":3927,"line":9032},[3925,40488,40489],{"class":4512},"              paddingVertical:",[3925,40491,15307],{"class":4512},[3925,40493,3595],{"class":4597},[3925,40495,15372],{"class":4512},[3925,40497,22187],{"class":4508},[3925,40499,9179],{"class":5990},[3925,40501,5051],{"class":4597},[3925,40503,40504,40507,40509,40511,40513],{"class":3927,"line":9053},[3925,40505,40506],{"class":4512},"              paddingHorizontal:",[3925,40508,15307],{"class":4512},[3925,40510,3595],{"class":4597},[3925,40512,15312],{"class":4512},[3925,40514,5051],{"class":4597},[3925,40516,40517],{"class":3927,"line":9075},[3925,40518,21434],{"class":4597},[3925,40520,40521,40523],{"class":3927,"line":9083},[3925,40522,18171],{"class":4512},[3925,40524,5051],{"class":4597},[3925,40526,40527,40529],{"class":3927,"line":9094},[3925,40528,21439],{"class":4597},[3925,40530,4016],{"class":4540},[3925,40532,40533,40535,40537,40540],{"class":3927,"line":9105},[3925,40534,16225],{"class":4540},[3925,40536,38821],{"class":4508},[3925,40538,40539],{"class":4512},"inputProps",[3925,40541,4016],{"class":4540},[3925,40543,40544],{"class":3927,"line":9115},[3925,40545,7429],{"class":4561},[3925,40547,40548,40550,40553],{"class":3927,"line":9125},[3925,40549,19510],{"class":4540},[3925,40551,40552],{"class":4512},"rightSlot",[3925,40554,4016],{"class":4540},[3925,40556,40557,40559,40561],{"class":3927,"line":9135},[3925,40558,7434],{"class":4561},[3925,40560,8398],{"class":4565},[3925,40562,4568],{"class":4561},[3925,40564,40565,40567,40569,40571],{"class":3927,"line":9140},[3925,40566,15333],{"class":4540},[3925,40568,32178],{"class":4512},[3925,40570,10922],{"class":4508},[3925,40572,4556],{"class":4597},[3925,40574,40575,40577,40579,40581,40583,40585,40587,40589,40591,40593,40595,40597,40599],{"class":3927,"line":9168},[3925,40576,7335],{"class":4561},[3925,40578,14664],{"class":4565},[3925,40580,15773],{"class":4579},[3925,40582,4583],{"class":4508},[3925,40584,16084],{"class":4521},[3925,40586,7720],{"class":4579},[3925,40588,4583],{"class":4508},[3925,40590,4594],{"class":4540},[3925,40592,13240],{"class":4512},[3925,40594,3595],{"class":4597},[3925,40596,32065],{"class":4512},[3925,40598,4610],{"class":4540},[3925,40600,4568],{"class":4561},[3925,40602,40603,40605,40607],{"class":3927,"line":9197},[3925,40604,16225],{"class":4540},[3925,40606,31577],{"class":4512},[3925,40608,4016],{"class":4540},[3925,40610,40611,40613,40615],{"class":3927,"line":9226},[3925,40612,8493],{"class":4561},[3925,40614,14664],{"class":4565},[3925,40616,4568],{"class":4561},[3925,40618,40619,40621,40623,40626,40628],{"class":3927,"line":9234},[3925,40620,15608],{"class":4597},[3925,40622,4974],{"class":4508},[3925,40624,40625],{"class":4512}," hint",[3925,40627,10922],{"class":4508},[3925,40629,4556],{"class":4597},[3925,40631,40632,40634,40636,40638,40640,40642,40644,40646,40648,40650,40652,40654,40656],{"class":3927,"line":9245},[3925,40633,7335],{"class":4561},[3925,40635,14664],{"class":4565},[3925,40637,15773],{"class":4579},[3925,40639,4583],{"class":4508},[3925,40641,16084],{"class":4521},[3925,40643,7720],{"class":4579},[3925,40645,4583],{"class":4508},[3925,40647,4594],{"class":4540},[3925,40649,13240],{"class":4512},[3925,40651,3595],{"class":4597},[3925,40653,13752],{"class":4512},[3925,40655,4610],{"class":4540},[3925,40657,4568],{"class":4561},[3925,40659,40660,40662,40664],{"class":3927,"line":9255},[3925,40661,16225],{"class":4540},[3925,40663,10976],{"class":4512},[3925,40665,4016],{"class":4540},[3925,40667,40668,40670,40672],{"class":3927,"line":9265},[3925,40669,8493],{"class":4561},[3925,40671,14664],{"class":4565},[3925,40673,4568],{"class":4561},[3925,40675,40676,40678,40680],{"class":3927,"line":9275},[3925,40677,15608],{"class":4597},[3925,40679,4974],{"class":4508},[3925,40681,15613],{"class":4540},[3925,40683,40684,40686,40688],{"class":3927,"line":9286},[3925,40685,4669],{"class":4561},[3925,40687,8398],{"class":4565},[3925,40689,4568],{"class":4561},[3925,40691,40692],{"class":3927,"line":9291},[3925,40693,4678],{"class":4508},[3925,40695,40696],{"class":3927,"line":9319},[3925,40697,4016],{"class":4508},[3925,40699,40700],{"class":3927,"line":9346},[3925,40701,3950],{"emptyLinePlaceholder":3949},[3925,40703,40704,40706,40708,40710,40712,40714,40716],{"class":3927,"line":9354},[3925,40705,5930],{"class":4540},[3925,40707,9037],{"class":5194},[3925,40709,5967],{"class":4508},[3925,40711,9042],{"class":4512},[3925,40713,3595],{"class":4508},[3925,40715,9047],{"class":4544},[3925,40717,9050],{"class":4508},[3925,40719,40720,40722],{"class":3927,"line":9363},[3925,40721,34005],{"class":4512},[3925,40723,5617],{"class":4508},[3925,40725,40726,40728,40730],{"class":3927,"line":9373},[3925,40727,19675],{"class":4512},[3925,40729,19678],{"class":4521},[3925,40731,5051],{"class":4508},[3925,40733,40734],{"class":3927,"line":9383},[3925,40735,6584],{"class":4508},[3925,40737,40738,40740],{"class":3927,"line":9388},[3925,40739,11404],{"class":4512},[3925,40741,5617],{"class":4508},[3925,40743,40744,40746,40748],{"class":3927,"line":9396},[3925,40745,11430],{"class":4512},[3925,40747,7303],{"class":4521},[3925,40749,5051],{"class":4508},[3925,40751,40752],{"class":3927,"line":9405},[3925,40753,6584],{"class":4508},[3925,40755,40756,40758],{"class":3927,"line":9415},[3925,40757,34024],{"class":4512},[3925,40759,5617],{"class":4508},[3925,40761,40762,40764,40766],{"class":3927,"line":9424},[3925,40763,17373],{"class":4512},[3925,40765,17376],{"class":4521},[3925,40767,5051],{"class":4508},[3925,40769,40770,40772,40774],{"class":3927,"line":9435},[3925,40771,9427],{"class":4512},[3925,40773,9430],{"class":4521},[3925,40775,5051],{"class":4508},[3925,40777,40778,40780,40782],{"class":3927,"line":9440},[3925,40779,9258],{"class":4512},[3925,40781,9064],{"class":5990},[3925,40783,5051],{"class":4508},[3925,40785,40786,40788,40790],{"class":3927,"line":9460},[3925,40787,31134],{"class":4512},[3925,40789,31137],{"class":4521},[3925,40791,5051],{"class":4508},[3925,40793,40794],{"class":3927,"line":11409},[3925,40795,6584],{"class":4508},[3925,40797,40798,40800],{"class":3927,"line":11418},[3925,40799,11465],{"class":4512},[3925,40801,5617],{"class":4508},[3925,40803,40804,40806,40808],{"class":3927,"line":11427},[3925,40805,10105],{"class":4512},[3925,40807,9064],{"class":5990},[3925,40809,5051],{"class":4508},[3925,40811,40812,40814,40816],{"class":3927,"line":11437},[3925,40813,31101],{"class":4512},[3925,40815,33181],{"class":5990},[3925,40817,5051],{"class":4508},[3925,40819,40820],{"class":3927,"line":11446},[3925,40821,6584],{"class":4508},[3925,40823,40824],{"class":3927,"line":11457},[3925,40825,5739],{"class":4508},[3916,40827,40830],{"className":6417,"code":40828,"filename":40829,"language":6419,"meta":3921,"style":3921},"export { AppText } from '.\u002FAppText';\nexport { Button } from '.\u002FButton';\nexport { Screen } from '.\u002FScreen';\nexport { TextField } from '.\u002FTextField';\n","src\u002Fshared\u002Fui\u002Findex.ts",[3521,40831,40832,40848,40865,40882],{"__ignoreMap":3921},[3925,40833,40834,40836,40838,40840,40842,40844,40846],{"class":3927,"line":3928},[3925,40835,4534],{"class":4504},[3925,40837,4509],{"class":4508},[3925,40839,14664],{"class":4512},[3925,40841,4515],{"class":4508},[3925,40843,4518],{"class":4504},[3925,40845,40010],{"class":4521},[3925,40847,4525],{"class":4508},[3925,40849,40850,40852,40854,40856,40858,40860,40863],{"class":3927,"line":3934},[3925,40851,4534],{"class":4504},[3925,40853,4509],{"class":4508},[3925,40855,14669],{"class":4512},[3925,40857,4515],{"class":4508},[3925,40859,4518],{"class":4504},[3925,40861,40862],{"class":4521}," '.\u002FButton'",[3925,40864,4525],{"class":4508},[3925,40866,40867,40869,40871,40873,40875,40877,40880],{"class":3927,"line":3940},[3925,40868,4534],{"class":4504},[3925,40870,4509],{"class":4508},[3925,40872,14674],{"class":4512},[3925,40874,4515],{"class":4508},[3925,40876,4518],{"class":4504},[3925,40878,40879],{"class":4521}," '.\u002FScreen'",[3925,40881,4525],{"class":4508},[3925,40883,40884,40886,40888,40890,40892,40894,40897],{"class":3927,"line":3946},[3925,40885,4534],{"class":4504},[3925,40887,4509],{"class":4508},[3925,40889,27082],{"class":4512},[3925,40891,4515],{"class":4508},[3925,40893,4518],{"class":4504},[3925,40895,40896],{"class":4521}," '.\u002FTextField'",[3925,40898,4525],{"class":4508},[4332,40900,40902],{"id":40901},"перевірка-nomad","Перевірка Nomad",[3568,40904,40905,40908,40915,40921,40924,40927],{},[3571,40906,40907],{},"Вкладка «Поїздки» — список як раніше.",[3571,40909,40910,40911,40914],{},"Тап по картці → деталі, ",[3516,40912,40913],{},"tabs знизу",". Back → список.",[3571,40916,40917,40918,40920],{},"«Нова поїздка» → ",[3516,40919,4291],{}," поверх. Зберегти \u002F скасувати → dismiss.",[3571,40922,40923],{},"З деталей кнопка «Нова поїздка (modal)» теж відкриває modal.",[3571,40925,40926],{},"Вкладка «Місця» → тап → деталі поїздки цього місця.",[3571,40928,40929],{},"Тема \u002F форма \u002F списки не зламані.",[4332,40931,40933],{"id":40932},"коміт","Коміт",[3916,40935,40937],{"className":6327,"code":40936,"language":6329,"meta":3921,"style":3921},"cd \u002Fpath\u002Fto\u002Fnomad\ngit add -A\ngit commit -m \"$(cat \u003C\u003C'EOF'\nfeat: trip details stack and modals\n\nMaterial: content\u002F15.react-native\u002F12.nested-navigators-and-modals.md\nEOF\n)\"\ngit push\n",[3521,40938,40939,40946,40957,40979,40984,40988,40993,40998,41003],{"__ignoreMap":3921},[3925,40940,40941,40943],{"class":3927,"line":3928},[3925,40942,6353],{"class":4544},[3925,40944,40945],{"class":4521}," \u002Fpath\u002Fto\u002Fnomad\n",[3925,40947,40948,40951,40954],{"class":3927,"line":3934},[3925,40949,40950],{"class":4544},"git",[3925,40952,40953],{"class":4521}," add",[3925,40955,40956],{"class":4540}," -A\n",[3925,40958,40959,40961,40964,40967,40970,40973,40976],{"class":3927,"line":3940},[3925,40960,40950],{"class":4544},[3925,40962,40963],{"class":4521}," commit",[3925,40965,40966],{"class":4540}," -m",[3925,40968,40969],{"class":4521}," \"$(",[3925,40971,40972],{"class":4544},"cat",[3925,40974,40975],{"class":4508}," \u003C\u003C",[3925,40977,40978],{"class":4521},"'EOF'\n",[3925,40980,40981],{"class":3927,"line":3946},[3925,40982,40983],{"class":4521},"feat: trip details stack and modals\n",[3925,40985,40986],{"class":3927,"line":3953},[3925,40987,3950],{"emptyLinePlaceholder":3949},[3925,40989,40990],{"class":3927,"line":3959},[3925,40991,40992],{"class":4521},"Material: content\u002F15.react-native\u002F12.nested-navigators-and-modals.md\n",[3925,40994,40995],{"class":3927,"line":3965},[3925,40996,40997],{"class":4521},"EOF\n",[3925,40999,41000],{"class":3927,"line":3971},[3925,41001,41002],{"class":4521},")\"\n",[3925,41004,41005,41007],{"class":3927,"line":3977},[3925,41006,40950],{"class":4544},[3925,41008,41009],{"class":4521}," push\n",[3731,41011],{},[3507,41013,41015],{"id":41014},"практичні-завдання","Практичні завдання",[4332,41017,41019],{"id":41018},"базовий","Базовий",[3568,41021,41022,41025,41031],{},[3571,41023,41024],{},"Своїми словами: card vs modal.",[3571,41026,41027,41028,41030],{},"Чому tabs лишаються на ",[3521,41029,5890],{},", але ховаються під create-trip modal.",[3571,41032,41033,41034,3595],{},"Навіщо ",[3521,41035,41036],{},"initialRouteName: '(tabs)'",[4332,41038,41040],{"id":41039},"середній","Середній",[3568,41042,41043,41046,41055],{},[3571,41044,41045],{},"Міні-проєкт «Нотатки» повністю.",[3571,41047,41048,41049,41052,41053,3844],{},"У Nomad додати ",[3521,41050,41051],{},"headerRight"," на деталях — кнопка «Поділитись» (поки ",[3521,41054,5848],{},[3571,41056,41057,41058,3595],{},"Guard на create-trip, якщо ",[3521,41059,5548],{},[4332,41061,41063],{"id":41062},"професійний","Професійний",[3568,41065,41066,41076,41085],{},[3571,41067,41068,41069,41072,41073,41075],{},"Порівняти detail ",[3516,41070,41071],{},"у nested stack"," vs detail на ",[3516,41074,6149],{}," Stack (tabs hide) — короткий висновок UX.",[3571,41077,41078,41079,41081,41082,41084],{},"Нарис структури ",[3521,41080,3604],{}," + ",[3521,41083,5442],{}," без повного SecureStore.",[3571,41086,41087,41090],{},[3521,41088,41089],{},"presentation: 'formSheet'"," на iOS (якщо SDK дозволяє) — нотатка з відмінностей.",[3731,41092],{},[3507,41094,41096],{"id":41095},"часті-запитання","Часті запитання",[41098,41099,41100,41106,41116,41122,41136],"accordion",{},[41101,41102,41105],"accordion-item",{"icon":41103,"label":41104},"i-lucide-circle-help","Back закриває весь застосунок","Немає історії в поточному стеку. Перевірте, чи detail push був у правильний navigator; чи modal не replace-нув tabs.",[41101,41107,41109,41110,41112,41113,41115],{"icon":41103,"label":41108},"Tab bar зник на деталях","Деталі, ймовірно, на ",[3516,41111,6149],{}," Stack, а не у ",[3521,41114,3866],{}," nested. Перенесіть файл під теку вкладки зі Stack layout.",[41101,41117,41119,41121],{"icon":41103,"label":41118},"Modal не схожий на iOS sheet",[3521,41120,3646],{}," vs formSheet \u002F transparentModal — різні режими. Дивіться docs вашого SDK і тестуйте на девайсі.",[41101,41123,41125,41126,41128,41129,41132,41133,41135],{"icon":41103,"label":41124},"usePreventRemove не спрацьовує","Перевірте, що ",[3521,41127,5762],{},", що хук на ",[3516,41130,41131],{},"тому"," екрані, який знімають, і що після Save вимикаєте dirty (",[3521,41134,5799],{}," flag).",[41101,41137,41139,41141,41142,41145,41146,3595],{"icon":41103,"label":41138},"id масив, не рядок",[3521,41140,5913],{}," інколи дає ",[3521,41143,41144],{},"string | string[]",". Нормалізуйте: ",[3521,41147,41148],{},"Array.isArray(id) ? id[0] : id",[3731,41150],{},[3507,41152,41154],{"id":41153},"що-далі","Що далі",[3512,41156,41157,41158,41163],{},"Вкладеність і modal закривають «геометрію» навігації. Далі — ",[3724,41159,41160],{"href":3417},[3516,41161,41162],{},"deep linking і params",": параметри маршруту, scheme, universal links і cold start.",[3512,41165,41166,18638,41171,18638,41176,18638,41181],{},[3724,41167,41170],{"href":41168,"rel":41169},"https:\u002F\u002Fdocs.expo.dev\u002Frouter\u002Fadvanced\u002Fnesting-navigators\u002F",[3728],"Expo Router nested",[3724,41172,41175],{"href":41173,"rel":41174},"https:\u002F\u002Fdocs.expo.dev\u002Frouter\u002Fadvanced\u002Fmodals\u002F",[3728],"Modals",[3724,41177,41180],{"href":41178,"rel":41179},"https:\u002F\u002Fdocs.expo.dev\u002Frouter\u002Fbasics\u002Fcommon-navigation-patterns\u002F",[3728],"Common patterns",[3724,41182,3680],{"href":3726,"rel":41183},[3728],[39749,41185,41186],{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spJ8K, html code.shiki .spJ8K{--shiki-light:#008000;--shiki-default:#6A9955;--shiki-dark:#6A9955}html pre.shiki code .s8xlr, html code.shiki .s8xlr{--shiki-light:#AF00DB;--shiki-default:#C586C0;--shiki-dark:#C586C0}html pre.shiki code .sHH4Y, html code.shiki .sHH4Y{--shiki-light:#000000;--shiki-default:#D4D4D4;--shiki-dark:#D4D4D4}html pre.shiki code .siwwj, html code.shiki .siwwj{--shiki-light:#001080;--shiki-default:#9CDCFE;--shiki-dark:#9CDCFE}html pre.shiki code .sbdoH, html code.shiki .sbdoH{--shiki-light:#A31515;--shiki-default:#CE9178;--shiki-dark:#CE9178}html pre.shiki code .su1O8, html code.shiki .su1O8{--shiki-light:#0000FF;--shiki-default:#569CD6;--shiki-dark:#569CD6}html pre.shiki code .s8Opu, html code.shiki .s8Opu{--shiki-light:#795E26;--shiki-default:#DCDCAA;--shiki-dark:#DCDCAA}html pre.shiki code .s0P7L, html code.shiki .s0P7L{--shiki-light:#800000;--shiki-default:#808080;--shiki-dark:#808080}html pre.shiki code .sN1BT, html code.shiki .sN1BT{--shiki-light:#267F99;--shiki-default:#4EC9B0;--shiki-dark:#4EC9B0}html pre.shiki code .sa4r_, html code.shiki .sa4r_{--shiki-light:#E50000;--shiki-default:#9CDCFE;--shiki-dark:#9CDCFE}html pre.shiki code .sD7JJ, html code.shiki .sD7JJ{--shiki-light:#000000FF;--shiki-default:#D4D4D4;--shiki-dark:#D4D4D4}html pre.shiki code .s-QsJ, html code.shiki .s-QsJ{--shiki-light:#0070C1;--shiki-default:#4FC1FF;--shiki-dark:#4FC1FF}html pre.shiki code .sJj4R, html code.shiki .sJj4R{--shiki-light:#098658;--shiki-default:#B5CEA8;--shiki-dark:#B5CEA8}html pre.shiki code .sLwNe, html code.shiki .sLwNe{--shiki-light:#0451A5;--shiki-default:#9CDCFE;--shiki-dark:#9CDCFE}",{"title":3921,"searchDepth":3934,"depth":3934,"links":41188},[41189,41190,41191,41192,41193,41194,41203,41212,41218,41223,41225,41232,41242,41267,41274,41279,41280],{"id":3509,"depth":3934,"text":3510},{"id":3735,"depth":3934,"text":3736},{"id":3780,"depth":3934,"text":3781},{"id":4106,"depth":3934,"text":4107},{"id":4178,"depth":3934,"text":4179},{"id":4329,"depth":3934,"text":4330,"children":41195},[41196,41197,41198,41199,41200,41201],{"id":4334,"depth":3940,"text":4335},{"id":4378,"depth":3940,"text":4379},{"id":4423,"depth":3940,"text":4424},{"id":4485,"depth":3940,"text":4486},{"id":4754,"depth":3940,"text":4755},{"id":4836,"depth":3940,"text":41202},"Який router.back() спрацьовує",{"id":4914,"depth":3934,"text":4915,"children":41204},[41205,41206,41207,41208,41210,41211],{"id":4918,"depth":3940,"text":4919},{"id":4965,"depth":3940,"text":4966},{"id":5134,"depth":3940,"text":5135},{"id":5175,"depth":3940,"text":41209},"unstable_settings і якір",{"id":5230,"depth":3940,"text":5231},{"id":5267,"depth":3940,"text":5268},{"id":5353,"depth":3934,"text":41213,"children":41214},"Групи (auth): два світи інтерфейсу",[41215,41216,41217],{"id":5374,"depth":3940,"text":5375},{"id":5390,"depth":3940,"text":5391},{"id":5433,"depth":3940,"text":5434},{"id":5496,"depth":3934,"text":5497,"children":41219},[41220,41221,41222],{"id":5500,"depth":3940,"text":5501},{"id":5535,"depth":3940,"text":5536},{"id":5571,"depth":3940,"text":5574},{"id":5867,"depth":3934,"text":41224},"Динамічний сегмент [id] — рівно стільки, скільки треба для деталей",{"id":6087,"depth":3934,"text":6088,"children":41226},[41227,41228,41229,41230,41231],{"id":6107,"depth":3940,"text":6108},{"id":6125,"depth":3940,"text":6126},{"id":6142,"depth":3940,"text":6143},{"id":6153,"depth":3940,"text":6154},{"id":6172,"depth":3940,"text":6173},{"id":6193,"depth":3934,"text":6194,"children":41233},[41234,41235,41236,41238,41239,41240,41241],{"id":6197,"depth":3940,"text":6198},{"id":6210,"depth":3940,"text":6211},{"id":6221,"depth":3940,"text":41237},"3. Закрити modal через push('\u002F')",{"id":6238,"depth":3940,"text":6239},{"id":6245,"depth":3940,"text":6246},{"id":6252,"depth":3940,"text":6253},{"id":6263,"depth":3940,"text":6264},{"id":6274,"depth":3934,"text":6275,"children":41243},[41244,41245,41246,41247,41248,41249,41250,41252,41254,41256,41258,41260,41262,41264,41265,41266],{"id":6278,"depth":3940,"text":6279},{"id":6307,"depth":3940,"text":6308},{"id":6317,"depth":3940,"text":6318},{"id":6323,"depth":3940,"text":6324},{"id":6359,"depth":3940,"text":6360},{"id":6381,"depth":3940,"text":6382},{"id":6406,"depth":3940,"text":41251},"Крок 2. src\u002Fdata\u002FnotesStore.ts",{"id":7124,"depth":3940,"text":41253},"Крок 3. app\u002F_layout.tsx",{"id":7454,"depth":3940,"text":41255},"Крок 4. app\u002F(tabs)\u002F_layout.tsx",{"id":7880,"depth":3940,"text":41257},"Крок 5. Nested stack — app\u002F(tabs)\u002Fnotes\u002F_layout.tsx",{"id":8090,"depth":3940,"text":41259},"Крок 6. Список — app\u002F(tabs)\u002Fnotes\u002Findex.tsx",{"id":9465,"depth":3940,"text":41261},"Крок 7. Деталі — app\u002F(tabs)\u002Fnotes\u002F[id].tsx",{"id":10243,"depth":3940,"text":41263},"Крок 8. Modal + guard — app\u002Fmodal\u002Fnew.tsx",{"id":11645,"depth":3940,"text":11646},{"id":12073,"depth":3940,"text":12074},{"id":12094,"depth":3940,"text":12095},{"id":12150,"depth":3934,"text":12151,"children":41268},[41269,41270,41271,41272,41273],{"id":12160,"depth":3940,"text":12161},{"id":12187,"depth":3940,"text":12188},{"id":12271,"depth":3940,"text":12272},{"id":40901,"depth":3940,"text":40902},{"id":40932,"depth":3940,"text":40933},{"id":41014,"depth":3934,"text":41015,"children":41275},[41276,41277,41278],{"id":41018,"depth":3940,"text":41019},{"id":41039,"depth":3940,"text":41040},{"id":41062,"depth":3940,"text":41063},{"id":41095,"depth":3934,"text":41096},{"id":41153,"depth":3934,"text":41154},"Stack усередині Tabs, presentation modal, групи auth, guard на back — нотатки з модалкою і деталі поїздки в Nomad",null,{},{"title":3412,"description":41281},"PcbPbpp0kiLgiYZ-vikgN8E_DWsIIgjo4DJrPABRXDE",[41287,41289],{"title":3408,"path":3409,"stem":3410,"description":41288,"children":-1},"File-based routing у Expo — тека app\u002F, layout, Stack і Tabs, Link і useRouter, назад, typed routes; довідник міст і навігаційна оболонка Nomad",{"title":3416,"path":3417,"stem":3418,"description":41290,"children":-1},"Параметри в Expo Router — динамічні сегменти, query, useLocalSearchParams; scheme, universal links і cold start",1785915329979]