[{"data":1,"prerenderedAt":41001},["ShallowReactive",2],{"navigation_docs":3,"-react-native-deep-linking-and-params":3497,"-react-native-deep-linking-and-params-surround":40996},[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":3416,"body":3499,"description":40991,"extension":14224,"links":40992,"meta":40993,"navigation":4747,"path":3417,"seo":40994,"stem":3418,"__hash__":40995},"docs\u002F15.react-native\u002F13.deep-linking-and-params.md",{"type":3500,"value":3501,"toc":40872},"minimark",[3502,3506,3511,3516,3525,3581,3584,3621,3632,3647,3651,3666,3685,3688,3707,3725,3728,3788,3811,3814,3818,3827,3836,3848,3851,3923,3947,3960,3967,3988,3996,4010,4017,4021,4104,4121,4123,4130,4133,4139,4156,4159,4175,4200,4223,4227,4230,4236,4250,4252,4260,4270,4300,4353,4356,4363,4418,4497,4515,4518,4584,4599,4603,4632,4645,4649,4660,4681,4684,4695,4697,4706,4710,4716,4798,4801,4814,4821,4832,4906,4912,4919,4923,4926,4949,4955,5077,5080,5084,5087,5130,5137,5140,5142,5146,5149,5240,5255,5257,5261,5316,5318,5322,5347,5349,5353,5384,5401,5408,5428,5430,5434,5438,5457,5460,5511,5516,5544,5548,5565,5604,5614,5620,5631,5683,5687,5690,5696,5740,5743,5749,5770,5772,5779,5786,5799,5805,5816,5835,5911,5914,5958,5976,5982,5985,6038,6044,6051,6106,6117,6124,6140,6153,6191,6193,6197,6204,6212,6216,6274,6284,6288,6294,6318,6324,6354,6360,6409,6419,6423,6426,6446,6456,6458,6462,6468,6491,6503,6532,6538,6540,6544,6549,6610,6620,6622,6626,6687,6689,6693,6722,6724,6728,6738,6744,6771,6778,6782,6852,6859,6863,6874,6888,7016,7020,7025,7086,7091,7269,7275,7279,7282,7287,7315,7324,7328,7378,7380,7384,7388,7401,7405,7433,7437,7443,7447,7599,7603,7609,7955,7962,8233,8240,9696,9703,10980,10984,11008,11012,11057,11059,11063,11067,11077,11081,11098,11103,11117,11121,40582,40586,40616,40620,40696,40698,40702,40706,40727,40731,40749,40753,40771,40773,40777,40824,40826,40830,40840,40869],[3503,3504,3416],"h1",{"id":3505},"deep-linking-і-параметри-маршрутів",[3507,3508,3510],"h2",{"id":3509},"параметри-маршруту-навіщо-вони-взагалі","Параметри маршруту: навіщо вони взагалі",[3512,3513,3515],"h3",{"id":3514},"звязок-із-тим-що-вже-є","Зв’язок із тим, що вже є",[3517,3518,3519,3520,3524],"p",{},"У статтях 11–12 ми вже ",[3521,3522,3523],"strong",{},"відкривали"," конкретну поїздку:",[3526,3527,3532],"pre",{"className":3528,"code":3529,"language":3530,"meta":3531,"style":3531},"language-tsx shiki shiki-themes light-plus dark-plus dark-plus","router.push(`\u002Ftrips\u002F${trip.id}`);\n","tsx","",[3533,3534,3535],"code",{"__ignoreMap":3531},[3536,3537,3540,3544,3548,3552,3555,3559,3563,3566,3569,3572,3575,3578],"span",{"class":3538,"line":3539},"line",1,[3536,3541,3543],{"class":3542},"siwwj","router",[3536,3545,3547],{"class":3546},"sHH4Y",".",[3536,3549,3551],{"class":3550},"s8Opu","push",[3536,3553,3554],{"class":3546},"(",[3536,3556,3558],{"class":3557},"sbdoH","`\u002Ftrips\u002F",[3536,3560,3562],{"class":3561},"su1O8","${",[3536,3564,3565],{"class":3542},"trip",[3536,3567,3547],{"class":3568},"sD7JJ",[3536,3570,3571],{"class":3542},"id",[3536,3573,3574],{"class":3561},"}",[3536,3576,3577],{"class":3557},"`",[3536,3579,3580],{"class":3546},");\n",[3517,3582,3583],{},"і на екрані деталей читали:",[3526,3585,3587],{"className":3528,"code":3586,"language":3530,"meta":3531,"style":3531},"const { id } = useLocalSearchParams\u003C{ id: string }>();\n",[3533,3588,3589],{"__ignoreMap":3531},[3536,3590,3591,3594,3597,3600,3603,3606,3609,3611,3614,3618],{"class":3538,"line":3539},[3536,3592,3593],{"class":3561},"const",[3536,3595,3596],{"class":3546}," { ",[3536,3598,3571],{"class":3599},"s-QsJ",[3536,3601,3602],{"class":3546}," } = ",[3536,3604,3605],{"class":3550},"useLocalSearchParams",[3536,3607,3608],{"class":3546},"\u003C{ ",[3536,3610,3571],{"class":3542},[3536,3612,3613],{"class":3546},": ",[3536,3615,3617],{"class":3616},"sN1BT","string",[3536,3619,3620],{"class":3546}," }>();\n",[3517,3622,3623,3624,3627,3628,3631],{},"Тобто ",[3521,3625,3626],{},"механізм params"," у проєкті вже живе. Але він з’явився «по дорозі» — рівно стільки, щоб деталі працювали. Тут ми розкладаємо його ",[3521,3629,3630],{},"з нуля",": що саме летить у маршруті, які бувають види параметрів, як їх передавати охайно і що ламається, якщо id немає або прийшов масивом.",[3517,3633,3634,3635,3638,3639,3642,3643,3646],{},"Deep linking (відкриття застосунку ",[3521,3636,3637],{},"ззовні"," за посиланням) — окрема надбудова ",[3521,3640,3641],{},"над"," тими самими шляхами. Спочатку має сенс міцно зрозуміти params ",[3521,3644,3645],{},"всередині"," застосунку; потім scheme і universal links стануть природним продовженням, а не магією.",[3512,3648,3650],{"id":3649},"життєва-сцена","Життєва сцена",[3517,3652,3653,3654,3657,3658,3661,3662,3665],{},"Користувач у стрічці бачить двадцять карток. Усі вони ведуть на «той самий» тип екрана — деталі поїздки, — але ",[3521,3655,3656],{},"з різним змістом",". Питання до навігації: як сказати системі «відкрий шаблон деталей ",[3521,3659,3660],{},"для поїздки 3","», а не «відкрий один фіксований файл ",[3533,3663,3664],{},"trip-carpathians.tsx","»?",[3517,3667,3668,3669,3672,3673,3676,3677,3680,3681,3684],{},"Відповідь у file-based router: ",[3521,3670,3671],{},"один файл"," з динамічним сегментом у імені (",[3533,3674,3675],{},"[id].tsx",") і ",[3521,3678,3679],{},"значення"," цього сегмента в шляху (",[3533,3682,3683],{},"\u002Ftrips\u002F3",").",[3517,3686,3687],{},"На вебі ви вже бачили те саме:",[3689,3690,3691,3697,3702],"ul",{},[3692,3693,3694],"li",{},[3533,3695,3696],{},"\u002Fproducts\u002F42",[3692,3698,3699],{},[3533,3700,3701],{},"\u002Fusers\u002Fanna\u002Fsettings",[3692,3703,3704],{},[3533,3705,3706],{},"\u002Fsearch?q=київ&page=2",[3517,3708,3709,3710,3713,3714,3717,3718,3721,3722,3724],{},"На телефоні з Expo Router ідея близька: шлях описує ",[3521,3711,3712],{},"який екран"," і ",[3521,3715,3716],{},"з якими даними його налаштувати",". Відмінність середовища — звідки може прийти цей шлях (тап у застосунку, пуш, QR, Safari), і як ОС віддає його вашому JS. Спочатку розберемо ",[3521,3719,3720],{},"що всередині шляху","; відкриття ",[3521,3723,3637],{}," (scheme, universal links) — логічне продовження тих самих адрес.",[3517,3726,3727],{},"Після статті ви зможете:",[3729,3730,3731,3741,3749,3760,3769,3772,3782],"ol",{},[3692,3732,3733,3734,3713,3737,3740],{},"Пояснити різницю між ",[3521,3735,3736],{},"динамічним сегментом",[3521,3738,3739],{},"query","-параметром.",[3692,3742,3743,3744,3746,3747,3547],{},"Зв’язати ім’я файлу ",[3533,3745,3675],{}," зі шляхом ",[3533,3748,3683],{},[3692,3750,3751,3752,3755,3756,3759],{},"Передати params через ",[3533,3753,3754],{},"Link",", ",[3533,3757,3758],{},"router.push"," (рядок і об’єкт).",[3692,3761,3762,3763,3765,3766,3547],{},"Прочитати params через ",[3533,3764,3605],{}," і безпечно нормалізувати ",[3533,3767,3768],{},"string | string[]",[3692,3770,3771],{},"Обробити «немає id» \u002F «поїздки немає в даних» без падіння застосунку.",[3692,3773,3774,3775,3713,3778,3781],{},"Коротко відрізнити ",[3521,3776,3777],{},"local",[3521,3779,3780],{},"global"," search params.",[3692,3783,3784,3785,3787],{},"Відкрити маршрут ",[3521,3786,3637],{}," через scheme \u002F links і врахувати cold start.",[3789,3790,3791,3794,3795,3798,3799,3802,3803,3806,3807,3810],"note",{},[3521,3792,3793],{},"Головна думка."," Параметри — це ",[3521,3796,3797],{},"дані, вкладені в адресу екрана",". Динамічний сегмент каже: «",[3521,3800,3801],{},"який"," ресурс». Query каже: «",[3521,3804,3805],{},"як"," показати \u002F з якими опціями». Читання йде через хуки Expo Router; значення завжди варто вважати ",[3521,3808,3809],{},"рядками ззовні"," (навіть якщо ви «передавали число»).",[3812,3813],"hr",{},[3507,3815,3817],{"id":3816},"два-види-параметрів","Два види параметрів",[3517,3819,3820],{},[3821,3822],"img",{"alt":3823,"className":3824,"src":3826},"Динамічний сегмент vs query",[3825],"diagram-img","\u002Fimages\u002Freact-native\u002Fdeep-linking-and-params\u002F01.svg",[3512,3828,3830,3831,3835],{"id":3829},"_1-динамічний-сегмент-шляху-path-route-param","1. Динамічний сегмент шляху (",[3832,3833,3834],"em",{},"path \u002F route param",")",[3517,3837,3838,3841,3842,3713,3845,3547],{},[3521,3839,3840],{},"Динамічний сегмент"," — частина шляху, яка ",[3521,3843,3844],{},"змінюється",[3521,3846,3847],{},"обирає ресурс",[3517,3849,3850],{},"Приклади:",[3852,3853,3854,3870],"table",{},[3855,3856,3857],"thead",{},[3858,3859,3860,3864,3867],"tr",{},[3861,3862,3863],"th",{},"Шлях",[3861,3865,3866],{},"Файл (схема)",[3861,3868,3869],{},"Параметр",[3871,3872,3873,3890,3905],"tbody",{},[3858,3874,3875,3880,3885],{},[3876,3877,3878],"td",{},[3533,3879,3683],{},[3876,3881,3882],{},[3533,3883,3884],{},"…\u002Ftrips\u002F[id].tsx",[3876,3886,3887],{},[3533,3888,3889],{},"id = \"3\"",[3858,3891,3892,3897,3900],{},[3876,3893,3894],{},[3533,3895,3896],{},"\u002Ftrips\u002Flocal-1710",[3876,3898,3899],{},"той самий файл",[3876,3901,3902],{},[3533,3903,3904],{},"id = \"local-1710\"",[3858,3906,3907,3913,3918],{},[3876,3908,3909,3912],{},[3533,3910,3911],{},"\u002Fcity\u002Flviv"," (міні-проєкт ст. 11)",[3876,3914,3915],{},[3533,3916,3917],{},"city\u002F[id].tsx",[3876,3919,3920],{},[3533,3921,3922],{},"id = \"lviv\"",[3517,3924,3925,3926,3929,3930,3613,3933,3755,3936,3755,3939,3942,3943,3946],{},"У ",[3521,3927,3928],{},"імені файлу"," сегмент пишуть у ",[3521,3931,3932],{},"квадратних дужках",[3533,3934,3935],{},"[id]",[3533,3937,3938],{},"[slug]",[3533,3940,3941],{},"[userId]",". Ім’я в дужках стає ",[3521,3944,3945],{},"ключем"," у об’єкті params.",[3517,3948,3949,3950,3953,3954,3957,3958,3547],{},"Це не «папка на всі id». Це ",[3521,3951,3952],{},"один"," React-екран-шаблон, який Router відкриває знову і знову з ",[3521,3955,3956],{},"різним"," ",[3533,3959,3571],{},[3512,3961,3963,3964,3835],{"id":3962},"_2-query-параметри-search-query-params","2. Query-параметри (",[3832,3965,3966],{},"search \u002F query params",[3517,3968,3969,3972,3973,3979,3980,3983,3984,3987],{},[3521,3970,3971],{},"Query"," — те, що йде ",[3521,3974,3975,3976],{},"після ",[3533,3977,3978],{},"?",", у вигляді ",[3533,3981,3982],{},"ключ=значення",", кілька пар через ",[3533,3985,3986],{},"&",":",[3526,3989,3994],{"className":3990,"code":3992,"language":3993,"meta":3531},[3991],"language-text","\u002Ftrips\u002F3?tab=places\n\u002Ftrips\u002F3?tab=places&highlight=p1\n","text",[3533,3995,3992],{"__ignoreMap":3531},[3517,3997,3998,3999,4002,4003,4005,4006,4009],{},"Вони ",[3521,4000,4001],{},"не"," створюють новий файл маршруту. Той самий ",[3533,4004,3675],{}," може прочитати ",[3533,4007,4008],{},"tab"," і, наприклад, одразу розгорнути секцію «Місця».",[3517,4011,4012,4013,4016],{},"На вебі query звичні для фільтрів і пагінації. У мобільному Router їх теж використовують, але рідше зловживають довгими рядками: зручніше тримати складний UI-стан у React state \u002F глобальному store, а в params — ",[3521,4014,4015],{},"короткі"," підказки (вкладка, id, прапорець).",[3512,4018,4020],{"id":4019},"порівняння","Порівняння",[3852,4022,4023,4033],{},[3855,4024,4025],{},[3858,4026,4027,4029,4031],{},[3861,4028],{},[3861,4030,3840],{},[3861,4032,3971],{},[3871,4034,4035,4052,4065,4082,4093],{},[3858,4036,4037,4040,4045],{},[3876,4038,4039],{},"Де в URL",[3876,4041,4042,4043],{},"всередині path: ",[3533,4044,3683],{},[3876,4046,3975,4047,3613,4049],{},[3533,4048,3978],{},[3533,4050,4051],{},"?tab=places",[3858,4053,4054,4057,4062],{},[3876,4055,4056],{},"Файл",[3876,4058,4059,4060],{},"потрібен ",[3533,4061,3675],{},[3876,4063,4064],{},"файл той самий",[3858,4066,4067,4070,4076],{},[3876,4068,4069],{},"Типовий сенс",[3876,4071,4072,4075],{},[3521,4073,4074],{},"ідентичність"," ресурсу",[3876,4077,4078,4081],{},[3521,4079,4080],{},"опції"," показу",[3858,4083,4084,4087,4090],{},[3876,4085,4086],{},"Обов’язковість",[3876,4088,4089],{},"часто обов’язковий для маршруту",[3876,4091,4092],{},"часто опційний",[3858,4094,4095,4098,4101],{},[3876,4096,4097],{},"Приклад",[3876,4099,4100],{},"яка поїздка",[3876,4102,4103],{},"який таб на екрані деталей",[3517,4105,4106,4107,4110,4111,4114,4115,4117,4118,4120],{},"Обидва види потрапляють у ",[3521,4108,4109],{},"search params"," хуків Expo Router (назви історичні: «search» з вебу). Тобто ",[3533,4112,4113],{},"useLocalSearchParams()"," може повернути і ",[3533,4116,3571],{},", і ",[3533,4119,4008],{}," разом.",[3812,4122],{},[3507,4124,4126,4127,4129],{"id":4125},"файл-idtsx-і-шлях","Файл ",[3533,4128,3675],{}," і шлях",[3517,4131,4132],{},"У Nomad уже є:",[3526,4134,4137],{"className":4135,"code":4136,"language":3993,"meta":3531},[3991],"app\u002F(tabs)\u002Ftrips\u002F\n  _layout.tsx\n  index.tsx      → \u002Ftrips   (або \u002Ftrips\u002F залежно від нормалізації)\n  [id].tsx       → \u002Ftrips\u002F:id\n",[3533,4138,4136],{"__ignoreMap":3531},[3517,4140,4141,4142,3957,4145,4147,4148,4151,4152,4155],{},"Група ",[3533,4143,4144],{},"(tabs)",[3521,4146,4001],{}," з’являється в URL. Сегмент ",[3533,4149,4150],{},"trips"," — ",[3521,4153,4154],{},"з’являється",", бо це звичайна тека, не в дужках.",[3517,4157,4158],{},"Отже:",[3689,4160,4161,4167],{},[3692,4162,4163,4164],{},"список: ",[3533,4165,4166],{},"\u002Ftrips",[3692,4168,4169,4170,3613,4173],{},"деталі поїздки з id ",[3533,4171,4172],{},"3",[3533,4174,3683],{},[3517,4176,4177,4178,4182,4183,4185,4186,4189,4190,4193,4194,4196,4197,3547],{},"Ім’я параметра ",[3521,4179,4180],{},[3533,4181,3571],{}," взято з імені файлу ",[3533,4184,3935],{},". Якби файл називався ",[3533,4187,4188],{},"[tripId].tsx",", у params був би ключ ",[3533,4191,4192],{},"tripId",", а шлях виглядав би так само структурно: ",[3533,4195,3683],{},", але читали б ",[3533,4198,4199],{},"const { tripId } = useLocalSearchParams()",[4201,4202,4203,4204,3755,4207,3713,4210,4213,4214,4216,4217,4216,4219,4222],"tip",{},"Узгоджуйте ",[3521,4205,4206],{},"ім’я в дужках",[3521,4208,4209],{},"ключ у TypeScript",[3521,4211,4212],{},"те, як говорите в команді"," («id поїздки»). Плутанина ",[3533,4215,3571],{}," \u002F ",[3533,4218,4192],{},[3533,4220,4221],{},"tripID"," — джерело дрібних багів.",[3512,4224,4226],{"id":4225},"кілька-динамічних-сегментів","Кілька динамічних сегментів",[3517,4228,4229],{},"Можна глибше (на майбутнє):",[3526,4231,4234],{"className":4232,"code":4233,"language":3993,"meta":3531},[3991],"app\u002Ftrips\u002F[tripId]\u002Fplaces\u002F[placeId].tsx\n→ \u002Ftrips\u002F3\u002Fplaces\u002Fp1\n",[3533,4235,4233],{"__ignoreMap":3531},[3517,4237,4238,4239,4242,4243,3957,4246,4249],{},"У частині 1 достатньо ",[3521,4240,4241],{},"одного"," сегмента — як у Nomad. Головне зрозуміти правило: ",[3521,4244,4245],{},"кожна",[3533,4247,4248],{},"[назва]"," у path ↔ ключ у params.",[3812,4251],{},[3507,4253,4255,4256,4259],{"id":4254},"як-передати-параметри","Як ",[3521,4257,4258],{},"передати"," параметри",[3512,4261,4263,4264,4216,4267,4269],{"id":4262},"спосіб-a-рядок-у-href-push-найнаочніший","Спосіб A. Рядок у ",[3533,4265,4266],{},"href",[3533,4268,3551],{}," (найнаочніший)",[3526,4271,4272],{"className":3528,"code":3529,"language":3530,"meta":3531,"style":3531},[3533,4273,4274],{"__ignoreMap":3531},[3536,4275,4276,4278,4280,4282,4284,4286,4288,4290,4292,4294,4296,4298],{"class":3538,"line":3539},[3536,4277,3543],{"class":3542},[3536,4279,3547],{"class":3546},[3536,4281,3551],{"class":3550},[3536,4283,3554],{"class":3546},[3536,4285,3558],{"class":3557},[3536,4287,3562],{"class":3561},[3536,4289,3565],{"class":3542},[3536,4291,3547],{"class":3568},[3536,4293,3571],{"class":3542},[3536,4295,3574],{"class":3561},[3536,4297,3577],{"class":3557},[3536,4299,3580],{"class":3546},[3526,4301,4303],{"className":3528,"code":4302,"language":3530,"meta":3531,"style":3531},"\u003CLink href={`\u002Ftrips\u002F${trip.id}`}>Відкрити\u003C\u002FLink>\n",[3533,4304,4305],{"__ignoreMap":3531},[3536,4306,4307,4311,4313,4317,4320,4323,4325,4327,4329,4331,4333,4335,4337,4339,4342,4345,4348,4350],{"class":3538,"line":3539},[3536,4308,4310],{"class":4309},"s0P7L","\u003C",[3536,4312,3754],{"class":3616},[3536,4314,4316],{"class":4315},"sa4r_"," href",[3536,4318,4319],{"class":3546},"=",[3536,4321,4322],{"class":3561},"{",[3536,4324,3558],{"class":3557},[3536,4326,3562],{"class":3561},[3536,4328,3565],{"class":3542},[3536,4330,3547],{"class":3568},[3536,4332,3571],{"class":3542},[3536,4334,3574],{"class":3561},[3536,4336,3577],{"class":3557},[3536,4338,3574],{"class":3561},[3536,4340,4341],{"class":4309},">",[3536,4343,4344],{"class":3546},"Відкрити",[3536,4346,4347],{"class":4309},"\u003C\u002F",[3536,4349,3754],{"class":3616},[3536,4351,4352],{"class":4309},">\n",[3517,4354,4355],{},"Перевага: видно весь шлях. Недолік: легко помилитись у слешах; для typed routes інколи зручніший об’єкт (нижче).",[3512,4357,4359,4360],{"id":4358},"спосіб-b-обєкт-pathname-params","Спосіб B. Об’єкт ",[3533,4361,4362],{},"{ pathname, params }",[3526,4364,4366],{"className":3528,"code":4365,"language":3530,"meta":3531,"style":3531},"router.push({\n  pathname: '\u002Ftrips\u002F[id]',\n  params: { id: trip.id },\n});\n",[3533,4367,4368,4379,4391,4412],{"__ignoreMap":3531},[3536,4369,4370,4372,4374,4376],{"class":3538,"line":3539},[3536,4371,3543],{"class":3542},[3536,4373,3547],{"class":3546},[3536,4375,3551],{"class":3550},[3536,4377,4378],{"class":3546},"({\n",[3536,4380,4382,4385,4388],{"class":3538,"line":4381},2,[3536,4383,4384],{"class":3542},"  pathname:",[3536,4386,4387],{"class":3557}," '\u002Ftrips\u002F[id]'",[3536,4389,4390],{"class":3546},",\n",[3536,4392,4394,4397,4399,4402,4405,4407,4409],{"class":3538,"line":4393},3,[3536,4395,4396],{"class":3542},"  params:",[3536,4398,3596],{"class":3546},[3536,4400,4401],{"class":3542},"id:",[3536,4403,4404],{"class":3542}," trip",[3536,4406,3547],{"class":3546},[3536,4408,3571],{"class":3542},[3536,4410,4411],{"class":3546}," },\n",[3536,4413,4415],{"class":3538,"line":4414},4,[3536,4416,4417],{"class":3546},"});\n",[3526,4419,4421],{"className":3528,"code":4420,"language":3530,"meta":3531,"style":3531},"\u003CLink\n  href={{\n    pathname: '\u002Ftrips\u002F[id]',\n    params: { id: trip.id },\n  }}\n>\n  Відкрити\n\u003C\u002FLink>\n",[3533,4422,4423,4430,4442,4451,4468,4477,4482,4488],{"__ignoreMap":3531},[3536,4424,4425,4427],{"class":3538,"line":3539},[3536,4426,4310],{"class":4309},[3536,4428,4429],{"class":3616},"Link\n",[3536,4431,4432,4435,4437,4439],{"class":3538,"line":4381},[3536,4433,4434],{"class":4315},"  href",[3536,4436,4319],{"class":3546},[3536,4438,4322],{"class":3561},[3536,4440,4441],{"class":3568},"{\n",[3536,4443,4444,4447,4449],{"class":3538,"line":4393},[3536,4445,4446],{"class":3542},"    pathname:",[3536,4448,4387],{"class":3557},[3536,4450,4390],{"class":3568},[3536,4452,4453,4456,4458,4460,4462,4464,4466],{"class":3538,"line":4414},[3536,4454,4455],{"class":3542},"    params:",[3536,4457,3596],{"class":3568},[3536,4459,4401],{"class":3542},[3536,4461,4404],{"class":3542},[3536,4463,3547],{"class":3568},[3536,4465,3571],{"class":3542},[3536,4467,4411],{"class":3568},[3536,4469,4471,4474],{"class":3538,"line":4470},5,[3536,4472,4473],{"class":3568},"  }",[3536,4475,4476],{"class":3561},"}\n",[3536,4478,4480],{"class":3538,"line":4479},6,[3536,4481,4352],{"class":4309},[3536,4483,4485],{"class":3538,"line":4484},7,[3536,4486,4487],{"class":3546},"  Відкрити\n",[3536,4489,4491,4493,4495],{"class":3538,"line":4490},8,[3536,4492,4347],{"class":4309},[3536,4494,3754],{"class":3616},[3536,4496,4352],{"class":4309},[3517,4498,4499,4500,4151,4503,4506,4507,4510,4511,4514],{},"Тут ",[3533,4501,4502],{},"pathname",[3521,4504,4505],{},"шаблон"," маршруту (як у файловій системі), а ",[3533,4508,4509],{},"params"," заповнює динамічні шматки ",[3521,4512,4513],{},"і"," може додати query.",[3517,4516,4517],{},"Передача query:",[3526,4519,4521],{"className":3528,"code":4520,"language":3530,"meta":3531,"style":3531},"router.push({\n  pathname: '\u002Ftrips\u002F[id]',\n  params: {\n    id: trip.id,\n    tab: 'places', \u002F\u002F стане query, бо не є ім’ям сегмента [id] у path… \n  },\n});\n",[3533,4522,4523,4533,4541,4548,4561,4575,4580],{"__ignoreMap":3531},[3536,4524,4525,4527,4529,4531],{"class":3538,"line":3539},[3536,4526,3543],{"class":3542},[3536,4528,3547],{"class":3546},[3536,4530,3551],{"class":3550},[3536,4532,4378],{"class":3546},[3536,4534,4535,4537,4539],{"class":3538,"line":4381},[3536,4536,4384],{"class":3542},[3536,4538,4387],{"class":3557},[3536,4540,4390],{"class":3546},[3536,4542,4543,4545],{"class":3538,"line":4393},[3536,4544,4396],{"class":3542},[3536,4546,4547],{"class":3546}," {\n",[3536,4549,4550,4553,4555,4557,4559],{"class":3538,"line":4414},[3536,4551,4552],{"class":3542},"    id:",[3536,4554,4404],{"class":3542},[3536,4556,3547],{"class":3546},[3536,4558,3571],{"class":3542},[3536,4560,4390],{"class":3546},[3536,4562,4563,4566,4569,4571],{"class":3538,"line":4470},[3536,4564,4565],{"class":3542},"    tab:",[3536,4567,4568],{"class":3557}," 'places'",[3536,4570,3755],{"class":3546},[3536,4572,4574],{"class":4573},"spJ8K","\u002F\u002F стане query, бо не є ім’ям сегмента [id] у path… \n",[3536,4576,4577],{"class":3538,"line":4479},[3536,4578,4579],{"class":3546},"  },\n",[3536,4581,4582],{"class":3538,"line":4484},[3536,4583,4417],{"class":3546},[3517,4585,4586,4587,4589,4590,4592,4593,4595,4596,4598],{},"У Expo Router параметри, які ",[3521,4588,4001],{}," відповідають динамічному сегменту в path, зазвичай потрапляють у ",[3521,4591,3739],{},"-частину. Тобто ",[3533,4594,4008],{}," не «замінить» id, а додасться як ",[3533,4597,4051],{}," (поведінку завжди перевіряйте на своїй версії Router — ідея саме така: path params vs зайві keys).",[3512,4600,4602],{"id":4601},"спосіб-c-лише-query-на-статичний-шлях","Спосіб C. Лише query на статичний шлях",[3526,4604,4606],{"className":3528,"code":4605,"language":3530,"meta":3531,"style":3531},"\u003CLink href=\"\u002Ftrips?filter=private\">Приватні\u003C\u002FLink>\n",[3533,4607,4608],{"__ignoreMap":3531},[3536,4609,4610,4612,4614,4616,4618,4621,4623,4626,4628,4630],{"class":3538,"line":3539},[3536,4611,4310],{"class":4309},[3536,4613,3754],{"class":3616},[3536,4615,4316],{"class":4315},[3536,4617,4319],{"class":3546},[3536,4619,4620],{"class":3557},"\"\u002Ftrips?filter=private\"",[3536,4622,4341],{"class":4309},[3536,4624,4625],{"class":3546},"Приватні",[3536,4627,4347],{"class":4309},[3536,4629,3754],{"class":3616},[3536,4631,4352],{"class":4309},[3517,4633,4634,4635,4637,4638,4641,4642,3547],{},"Тут немає ",[3533,4636,3935],{},"; екран списку може прочитати ",[3533,4639,4640],{},"filter"," і відфільтрувати ",[3533,4643,4644],{},"data",[3512,4646,4648],{"id":4647},"що-передавати-рядок-не-надію-на-обєкт","Що передавати: рядок, не «надію на об’єкт»",[3517,4650,4651,4652,4655,4656,4659],{},"Params у URL — ",[3521,4653,4654],{},"рядки"," (або те, що стане рядком). Не варто розраховувати, що через params «пролізе» складний об’єкт ",[3533,4657,4658],{},"Trip",". Правильний патерн Nomad:",[3729,4661,4662,4667],{},[3692,4663,4664,4665,3547],{},"У маршрут кладете ",[3521,4666,3571],{},[3692,4668,4669,4670,4673,4674,4676,4677,4680],{},"На екрані деталей ",[3521,4671,4672],{},"дістаєте"," повний ",[3533,4675,4658],{}," з ",[3533,4678,4679],{},"TripsProvider"," \u002F API за цим id.",[3517,4682,4683],{},"Так deep link «відкрий поїздку 3» теж матиме сенс: ззовні прийде лише id, а дані підвантажаться з джерела правди.",[4685,4686,4687,4690,4691,4694],"warning",{},[3521,4688,4689],{},"Антипатерн."," Серіалізувати весь об’єкт у query (",[3533,4692,4693],{},"?data=...JSON...",") — крихко, довго, погано для логів і лімітів URL. Id + сховище\u002FAPI надійніше.",[3812,4696],{},[3507,4698,4255,4700,4703,4704],{"id":4699},"як-прочитати-параметри-uselocalsearchparams",[3521,4701,4702],{},"прочитати"," параметри: ",[3533,4705,3605],{},[3512,4707,4709],{"id":4708},"базовий-виклик","Базовий виклик",[3517,4711,4712,4713,3987],{},"На екрані ",[3533,4714,4715],{},"app\u002F(tabs)\u002Ftrips\u002F[id].tsx",[3526,4717,4719],{"className":3528,"code":4718,"language":3530,"meta":3531,"style":3531},"import { useLocalSearchParams } from 'expo-router';\n\nexport default function TripDetailsScreen() {\n  const { id } = useLocalSearchParams\u003C{ id: string }>();\n  \u002F\u002F …\n}\n",[3533,4720,4721,4743,4749,4766,4789,4794],{"__ignoreMap":3531},[3536,4722,4723,4727,4729,4731,4734,4737,4740],{"class":3538,"line":3539},[3536,4724,4726],{"class":4725},"s8xlr","import",[3536,4728,3596],{"class":3546},[3536,4730,3605],{"class":3542},[3536,4732,4733],{"class":3546}," } ",[3536,4735,4736],{"class":4725},"from",[3536,4738,4739],{"class":3557}," 'expo-router'",[3536,4741,4742],{"class":3546},";\n",[3536,4744,4745],{"class":3538,"line":4381},[3536,4746,4748],{"emptyLinePlaceholder":4747},true,"\n",[3536,4750,4751,4754,4757,4760,4763],{"class":3538,"line":4393},[3536,4752,4753],{"class":4725},"export",[3536,4755,4756],{"class":4725}," default",[3536,4758,4759],{"class":3561}," function",[3536,4761,4762],{"class":3550}," TripDetailsScreen",[3536,4764,4765],{"class":3546},"() {\n",[3536,4767,4768,4771,4773,4775,4777,4779,4781,4783,4785,4787],{"class":3538,"line":4414},[3536,4769,4770],{"class":3561},"  const",[3536,4772,3596],{"class":3546},[3536,4774,3571],{"class":3599},[3536,4776,3602],{"class":3546},[3536,4778,3605],{"class":3550},[3536,4780,3608],{"class":3546},[3536,4782,3571],{"class":3542},[3536,4784,3613],{"class":3546},[3536,4786,3617],{"class":3616},[3536,4788,3620],{"class":3546},[3536,4790,4791],{"class":3538,"line":4470},[3536,4792,4793],{"class":4573},"  \u002F\u002F …\n",[3536,4795,4796],{"class":3538,"line":4479},[3536,4797,4476],{"class":3546},[3517,4799,4800],{},"Хук повертає об’єкт «ключі → значення з поточного маршруту» (і path, і query — у змішаному вигляді search params).",[3517,4802,4803,4804,4807,4808,4810,4811,3547],{},"Дженерик ",[3533,4805,4806],{},"\u003C{ id: string }>"," допомагає TypeScript; це ",[3521,4809,4001],{}," runtime-валідація. Якщо id немає, у рантаймі буде ",[3533,4812,4813],{},"undefined",[3512,4815,4817,4818,4820],{"id":4816},"чому-string-string-і-нормалізація","Чому ",[3533,4819,3768],{}," і нормалізація",[3517,4822,4823,4824,4827,4828,4831],{},"На практиці значення ",[3521,4825,4826],{},"інколи"," приходить ",[3521,4829,4830],{},"масивом"," рядків (особливо з query або крайових випадків парсингу). Тому в Nomad і в міні-проєктах курсу вже є звичка:",[3526,4833,4835],{"className":3528,"code":4834,"language":3530,"meta":3531,"style":3531},"const { id } = useLocalSearchParams\u003C{ id: string | string[] }>();\nconst tripId = Array.isArray(id) ? id[0] : id;\n",[3533,4836,4837,4865],{"__ignoreMap":3531},[3536,4838,4839,4841,4843,4845,4847,4849,4851,4853,4855,4857,4860,4862],{"class":3538,"line":3539},[3536,4840,3593],{"class":3561},[3536,4842,3596],{"class":3546},[3536,4844,3571],{"class":3599},[3536,4846,3602],{"class":3546},[3536,4848,3605],{"class":3550},[3536,4850,3608],{"class":3546},[3536,4852,3571],{"class":3542},[3536,4854,3613],{"class":3546},[3536,4856,3617],{"class":3616},[3536,4858,4859],{"class":3546}," | ",[3536,4861,3617],{"class":3616},[3536,4863,4864],{"class":3546},"[] }>();\n",[3536,4866,4867,4869,4872,4875,4878,4880,4883,4885,4887,4890,4892,4895,4899,4902,4904],{"class":3538,"line":4381},[3536,4868,3593],{"class":3561},[3536,4870,4871],{"class":3599}," tripId",[3536,4873,4874],{"class":3546}," = ",[3536,4876,4877],{"class":3542},"Array",[3536,4879,3547],{"class":3546},[3536,4881,4882],{"class":3550},"isArray",[3536,4884,3554],{"class":3546},[3536,4886,3571],{"class":3542},[3536,4888,4889],{"class":3546},") ? ",[3536,4891,3571],{"class":3542},[3536,4893,4894],{"class":3546},"[",[3536,4896,4898],{"class":4897},"sJj4R","0",[3536,4900,4901],{"class":3546},"] : ",[3536,4903,3571],{"class":3542},[3536,4905,4742],{"class":3546},[3517,4907,4908,4909,3547],{},"Далі працюєте з ",[3533,4910,4911],{},"tripId: string | undefined",[3517,4913,4914,4915,4918],{},"Це не «перестраховка для галочки» — це захист від рідкісного, але неприємного ",[3533,4916,4917],{},"id.join is not a function"," \u002F порівнянь масиву з рядком.",[3512,4920,4922],{"id":4921},"немає-id-або-немає-сутності-в-даних","Немає id або немає сутності в даних",[3517,4924,4925],{},"Два різні провали:",[3729,4927,4928,4936],{},[3692,4929,4930,4933,4934,3547],{},[3521,4931,4932],{},"Немає параметра"," — шлях зібраний криво, опечатка в ",[3533,4935,4266],{},[3692,4937,4938,4941,4942,4948],{},[3521,4939,4940],{},"Параметр є",", але ",[3521,4943,4944,4947],{},[3533,4945,4946],{},"getTrip(id)"," повернув undefined"," — поїздку видалили, mock скинули pull-to-refresh, id з пуша застарів.",[3517,4950,4951,4952,3987],{},"UI в обох випадках має ",[3521,4953,4954],{},"не падати",[3526,4956,4958],{"className":3528,"code":4957,"language":3530,"meta":3531,"style":3531},"if (!tripId || !trip) {\n  return (\n    \u003CView>\n      \u003CText>Поїздку не знайдено\u003C\u002FText>\n      \u003CButton title=\"Назад\" onPress={() => router.back()} \u002F>\n    \u003C\u002FView>\n  );\n}\n",[3533,4959,4960,4978,4986,4996,5015,5059,5068,5073],{"__ignoreMap":3531},[3536,4961,4962,4965,4968,4970,4973,4975],{"class":3538,"line":3539},[3536,4963,4964],{"class":4725},"if",[3536,4966,4967],{"class":3546}," (!",[3536,4969,4192],{"class":3542},[3536,4971,4972],{"class":3546}," || !",[3536,4974,3565],{"class":3542},[3536,4976,4977],{"class":3546},") {\n",[3536,4979,4980,4983],{"class":3538,"line":4381},[3536,4981,4982],{"class":4725},"  return",[3536,4984,4985],{"class":3546}," (\n",[3536,4987,4988,4991,4994],{"class":3538,"line":4393},[3536,4989,4990],{"class":4309},"    \u003C",[3536,4992,4993],{"class":3616},"View",[3536,4995,4352],{"class":4309},[3536,4997,4998,5001,5004,5006,5009,5011,5013],{"class":3538,"line":4414},[3536,4999,5000],{"class":4309},"      \u003C",[3536,5002,5003],{"class":3616},"Text",[3536,5005,4341],{"class":4309},[3536,5007,5008],{"class":3546},"Поїздку не знайдено",[3536,5010,4347],{"class":4309},[3536,5012,5003],{"class":3616},[3536,5014,4352],{"class":4309},[3536,5016,5017,5019,5022,5025,5027,5030,5033,5035,5037,5040,5043,5046,5048,5051,5054,5056],{"class":3538,"line":4470},[3536,5018,5000],{"class":4309},[3536,5020,5021],{"class":3616},"Button",[3536,5023,5024],{"class":4315}," title",[3536,5026,4319],{"class":3546},[3536,5028,5029],{"class":3557},"\"Назад\"",[3536,5031,5032],{"class":4315}," onPress",[3536,5034,4319],{"class":3546},[3536,5036,4322],{"class":3561},[3536,5038,5039],{"class":3568},"() ",[3536,5041,5042],{"class":3561},"=>",[3536,5044,5045],{"class":3542}," router",[3536,5047,3547],{"class":3568},[3536,5049,5050],{"class":3550},"back",[3536,5052,5053],{"class":3568},"()",[3536,5055,3574],{"class":3561},[3536,5057,5058],{"class":4309}," \u002F>\n",[3536,5060,5061,5064,5066],{"class":3538,"line":4479},[3536,5062,5063],{"class":4309},"    \u003C\u002F",[3536,5065,4993],{"class":3616},[3536,5067,4352],{"class":4309},[3536,5069,5070],{"class":3538,"line":4484},[3536,5071,5072],{"class":3546},"  );\n",[3536,5074,5075],{"class":3538,"line":4490},[3536,5076,4476],{"class":3546},[3517,5078,5079],{},"У Nomad це вже зроблено на екрані деталей — для deep link ззовні той самий UI «не знайдено» лишається обов’язковим (id з посилання може бути застарілим або хибним).",[3512,5081,5083],{"id":5082},"local-vs-global-коротко-деталі-за-потреби-пізніше","Local vs Global (коротко; деталі — за потреби пізніше)",[3517,5085,5086],{},"Expo Router дає два схожі хуки:",[3852,5088,5089,5099],{},[3855,5090,5091],{},[3858,5092,5093,5096],{},[3861,5094,5095],{},"Хук",[3861,5097,5098],{},"Ідея",[3871,5100,5101,5118],{},[3858,5102,5103,5109],{},[3876,5104,5105],{},[3521,5106,5107],{},[3533,5108,3605],{},[3876,5110,5111,5112,5115,5116,3547],{},"Params ",[3521,5113,5114],{},"цього"," екрана \u002F локального стану маршруту. Типовий вибір для ",[3533,5117,3675],{},[3858,5119,5120,5127],{},[3876,5121,5122],{},[3521,5123,5124],{},[3533,5125,5126],{},"useGlobalSearchParams",[3876,5128,5129],{},"Params, ближчі до «глобального» URL; оновлюються інакше при навігації по стеку (сусідні екрани в історії).",[3517,5131,5132,5133,5136],{},"Для екрана деталей поїздки ",[3521,5134,5135],{},"починайте з local",". Global знадобиться, коли свідомо підписуєтесь на зміну URL «вище» по дереву або дебажите розбіжності — не як перший інструмент.",[4201,5138,5139],{},"Якщо дані «не ті» після швидких push\u002Fpop — перевірте, чи не читаєте global там, де потрібен local (і навпаки). У більшості навчальних екранів local достатньо.",[3812,5141],{},[3507,5143,5145],{"id":5144},"повний-міні-цикл-на-прикладі-без-deep-link","Повний міні-цикл на прикладі (без deep link)",[3517,5147,5148],{},"Покроково те, що вже має відбуватись у Nomad при тапі по картці.",[5150,5151,5152,5156,5165,5169,5180,5184,5196,5200,5219,5223,5226,5230],"steps",{},[3512,5153,5155],{"id":5154},"_1-користувач-на-списку","1. Користувач на списку",[3517,5157,5158,5159,5161,5162,5164],{},"Маршрут на кшталт ",[3533,5160,4166],{},". Дані — масив ",[3533,5163,4150],{}," із Context.",[3512,5166,5168],{"id":5167},"_2-тап-по-картці","2. Тап по картці",[3517,5170,5171,5172,5175,5176,5179],{},"Код: ",[3533,5173,5174],{},"router.push(\\","\u002Ftrips\u002F${trip.id}`)",[3533,5177,5178],{},"(або Link з тим самим href).   У шлях потрапляє **конкретний** id, наприклад","1`.",[3512,5181,5183],{"id":5182},"_3-router-обирає-файл","3. Router обирає файл",[3517,5185,5186,5187,5189,5190,5193,5194,3547],{},"Зіставляє path із ",[3533,5188,4715],{},". Сегмент ",[3533,5191,5192],{},"1"," → param ",[3533,5195,3571],{},[3512,5197,5199],{"id":5198},"_4-монтується-екран-деталей","4. Монтується екран деталей",[3517,5201,5202,5204,5205,5207,5208,3547,5210,5213,5216,5217,3547],{},[3533,5203,3605],{}," → ",[3533,5206,3571],{},". Нормалізація → ",[3533,5209,4192],{},[5211,5212],"br",{},[3533,5214,5215],{},"getTrip(tripId)"," → об’єкт поїздки або ",[3533,5218,4813],{},[3512,5220,5222],{"id":5221},"_5-рендер","5. Рендер",[3517,5224,5225],{},"Є trip — title, опис, місця. Немає — «не знайдено» + back.",[3512,5227,5229],{"id":5228},"_6-back","6. Back",[3517,5231,5232,5235,5236,5239],{},[3533,5233,5234],{},"router.back()"," у ",[3521,5237,5238],{},"вкладеному"," Stack → знову список. Param id для списку не потрібен.",[3517,5241,5242,5243,5246,5247,5250,5251,5254],{},"Deep link «ззовні» пізніше ",[3521,5244,5245],{},"вклиниться"," між кроками 0 і 3: ОС відкриє застосунок уже з path ",[3533,5248,5249],{},"\u002Ftrips\u002F1",", і кроки 3–5 виконаються ",[3521,5252,5253],{},"без"," тапу по картці. Саме тому id у path такий важливий: зовнішнє посилання не може «передати» React-об’єкт, лише адресу.",[3812,5256],{},[3507,5258,5260],{"id":5259},"типові-помилки-з-params","Типові помилки з params",[3729,5262,5263,5276,5282,5288,5298,5307],{},[3692,5264,5265,4151,5268,5271,5272,5275],{},[3521,5266,5267],{},"Опечатка в сегменті",[3533,5269,5270],{},"push('\u002Ftrip\u002F3')"," при файлі ",[3533,5273,5274],{},"trips\u002F[id].tsx"," → route not found \u002F wrong screen.",[3692,5277,5278,5281],{},[3521,5279,5280],{},"Забули нормалізувати масив"," — рідкісні креші при порівнянні id.",[3692,5283,5284,5287],{},[3521,5285,5286],{},"Чекають об’єкт у params"," — приходить рядок; об’єкт треба дістати зі store.",[3692,5289,5290,5293,5294,5297],{},[3521,5291,5292],{},"Немає UI на missing"," — білий екран або crash при ",[3533,5295,5296],{},".title"," від undefined.",[3692,5299,5300,5303,5304,3547],{},[3521,5301,5302],{},"Плутають query і path"," — фільтр у динамічному сегменті («файл на кожен filter») замість ",[3533,5305,5306],{},"?filter=",[3692,5308,5309,5312,5313,3547],{},[3521,5310,5311],{},"Жорстко прошиті id в Link"," — у демо ок; у списку завжди з ",[3533,5314,5315],{},"item.id",[3812,5317],{},[3507,5319,5321],{"id":5320},"коротка-практика","Коротка практика",[3729,5323,5324,5330,5340],{},[3692,5325,5326,5327,5329],{},"У Nomad (локально) тимчасово залогуйте ",[3533,5328,4113],{}," на екрані деталей і відкрийте дві різні поїздки — порівняйте об’єкт params.",[3692,5331,5332,5333,5336,5337,5339],{},"Додайте в push query ",[3533,5334,5335],{},"?from=list"," і виведіть ",[3533,5338,4736],{}," під заголовком деталей (потім приберіть).",[3692,5341,5342,5343,5346],{},"Відкрийте неіснуючий id (",[3533,5344,5345],{},"\u002Ftrips\u002Fno-such",") через тимчасову кнопку — переконайтесь, що бачите «не знайдено», а не crash.",[3812,5348],{},[3507,5350,5352],{"id":5351},"deep-linking-відкриття-застосунку-ззовні","Deep linking: відкриття застосунку ззовні",[3517,5354,5355,5356,5358,5359,5361,5362,5365,5366,5369,5370,4827,5373,5375,5376,5379,5380,5383],{},"Досі ми розглядали шлях ",[3521,5357,3645],{}," вже відкритого застосунку: тап → ",[3533,5360,3758],{}," → params. ",[3521,5363,5364],{},"Deep linking"," (",[3832,5367,5368],{},"глибоке посилання",") — ситуація, коли ",[3521,5371,5372],{},"адреса",[3521,5374,3637],{},": з браузера, нотаток, QR-коду, пуш-сповіщення, іншого застосунку. ОС дивиться на URL, знаходить ваш застосунок (якщо він зареєстрований на цей тип посилань) і ",[3521,5377,5378],{},"передає"," URL у нього. Далі Expo Router зіставляє path із файлами в ",[3533,5381,5382],{},"app\u002F"," — і ви опиняєтесь на тому ж екрані деталей, що після тапу по картці.",[3517,5385,5386,5387,5390,5391,5393,5394,5397,5398,5400],{},"Саме тому params у path були першими: зовнішнє посилання ",[3521,5388,5389],{},"не може"," передати React-об’єкт ",[3533,5392,4658],{},". Воно передає лише рядок на кшталт ",[3533,5395,5396],{},"nomad:\u002F\u002Ftrips\u002F3",". Усе інше — ваш код: прочитати ",[3533,5399,3571],{},", знайти дані в store \u002F API, намалювати UI або «не знайдено».",[3517,5402,5403],{},[3821,5404],{"alt":5405,"className":5406,"src":5407},"Зовнішній URL → ОС → застосунок → екран",[3825],"\u002Fimages\u002Freact-native\u002Fdeep-linking-and-params\u002F02.svg",[3789,5409,5410,5412,5413,5416,5417,5420,5421,5424,5425,5427],{},[3521,5411,3793],{}," Deep link — це не «інша навігація». Це ",[3521,5414,5415],{},"той самий"," file-based маршрут, лише ",[3521,5418,5419],{},"вхідна точка"," інша: не ",[3533,5422,5423],{},"onPress"," у списку, а ОС із URL. Якщо всередині застосунку ",[3533,5426,3683],{}," уже відкриває деталі, deep link із тим самим path має зробити те саме — за умови, що scheme\u002Fасоціація налаштовані.",[3812,5429],{},[3507,5431,5433],{"id":5432},"custom-url-scheme","Custom URL scheme",[3512,5435,5437],{"id":5436},"що-це-таке","Що це таке",[3517,5439,5440,5365,5442,5445,5446,5449,5450,5453,5454,3547],{},[3521,5441,5433],{},[3832,5443,5444],{},"власна схема URL",") — префікс протоколу, який ",[3521,5447,5448],{},"ваша"," програма реєструє в системі, наприклад ",[3533,5451,5452],{},"nomad:\u002F\u002F"," або ",[3533,5455,5456],{},"myapp:\u002F\u002F",[3517,5458,5459],{},"Порівняння з вебом:",[3852,5461,5462,5474],{},[3855,5463,5464],{},[3858,5465,5466,5468,5471],{},[3861,5467],{},[3861,5469,5470],{},"Веб",[3861,5472,5473],{},"Custom scheme",[3871,5475,5476,5489,5500],{},[3858,5477,5478,5480,5485],{},[3876,5479,4097],{},[3876,5481,5482],{},[3533,5483,5484],{},"https:\u002F\u002Fkostyl.dev\u002F…",[3876,5486,5487],{},[3533,5488,5396],{},[3858,5490,5491,5494,5497],{},[3876,5492,5493],{},"Хто «володіє»",[3876,5495,5496],{},"DNS + HTTPS",[3876,5498,5499],{},"пакет, встановлений на телефоні",[3858,5501,5502,5505,5508],{},[3876,5503,5504],{},"Де працює",[3876,5506,5507],{},"будь-який браузер",[3876,5509,5510],{},"лише якщо встановлено застосунок із цією схемою",[3517,5512,5513,5514,3987],{},"Коли користувач (або інший застосунок) відкриває ",[3533,5515,5396],{},[3729,5517,5518,5528,5531,5534],{},[3692,5519,5520,5521,5524,5525,3547],{},"ОС шукає, ",[3521,5522,5523],{},"хто"," заявив scheme ",[3533,5526,5527],{},"nomad",[3692,5529,5530],{},"Запускає або «будить» цей застосунок.",[3692,5532,5533],{},"Передає повний URL у runtime.",[3692,5535,5536,5537,5540,5541,5543],{},"Expo Router \u002F linking шар витягує path (",[3533,5538,5539],{},"trips\u002F3"," → маршрут ",[3533,5542,3683],{},") і відкриває відповідний екран.",[3512,5545,5547],{"id":5546},"де-задається-в-expo","Де задається в Expo",[3517,5549,3925,5550,5555,5556,5559,5560,3987],{},[3521,5551,5552],{},[3533,5553,5554],{},"app.json"," (або ",[3533,5557,5558],{},"app.config.*",") поле ",[3521,5561,5562],{},[3533,5563,5564],{},"scheme",[3526,5566,5570],{"className":5567,"code":5568,"language":5569,"meta":3531,"style":3531},"language-json shiki shiki-themes light-plus dark-plus dark-plus","{\n  \"expo\": {\n    \"scheme\": \"nomad\"\n  }\n}\n","json",[3533,5571,5572,5576,5585,5595,5600],{"__ignoreMap":3531},[3536,5573,5574],{"class":3538,"line":3539},[3536,5575,4441],{"class":3546},[3536,5577,5578,5582],{"class":3538,"line":4381},[3536,5579,5581],{"class":5580},"sLwNe","  \"expo\"",[3536,5583,5584],{"class":3546},": {\n",[3536,5586,5587,5590,5592],{"class":3538,"line":4393},[3536,5588,5589],{"class":5580},"    \"scheme\"",[3536,5591,3613],{"class":3546},[3536,5593,5594],{"class":3557},"\"nomad\"\n",[3536,5596,5597],{"class":3538,"line":4414},[3536,5598,5599],{"class":3546},"  }\n",[3536,5601,5602],{"class":3538,"line":4470},[3536,5603,4476],{"class":3546},[3517,5605,5606,5607,3613,5610,5613],{},"У репозиторії Nomad це ",[3521,5608,5609],{},"вже є",[3533,5611,5612],{},"\"scheme\": \"nomad\"",". Тобто цільові посилання виглядатимуть як:",[3526,5615,5618],{"className":5616,"code":5617,"language":3993,"meta":3531},[3991],"nomad:\u002F\u002Ftrips\u002F1\nnomad:\u002F\u002Ftrips\u002Flocal-1710000000\nnomad:\u002F\u002Fcreate-trip\n",[3533,5619,5617],{"__ignoreMap":3531},[3517,5621,5622,5623,5626,5627,5630],{},"Після ",[3521,5624,5625],{},"зміни"," scheme у вже зібраному нативному бінарнику інколи потрібен ",[3521,5628,5629],{},"новий dev build"," \u002F перезбірка (Expo Go має власні правила — див. нижче). Для чистого JS-оновлення в Expo Go scheme проєкту підхоплюється в dev-сесії, але поведінка відрізняється від production-збірки з «вашим» іменем у магазині.",[5632,5633,5634,5662,5667],"field-group",{},[5635,5636,5638,5639,3957,5641,5644,5645,3755,5647,5650,5651,5365,5654,5657,5658,5661],"field",{"name":5564,"type":5637},"string \\| string[] у app.json","Ідентифікатор протоколу ",[3521,5640,5253],{},[3533,5642,5643],{},":\u002F\u002F",". Лише латиниця, цифри, дефіс — у стилі ",[3533,5646,5527],{},[3533,5648,5649],{},"my-app",". Не плутати зі ",[3521,5652,5653],{},"slug",[3533,5655,5656],{},"\"slug\": \"nomad\""," — id проєкту Expo) і ",[3521,5659,5660],{},"name"," (відображувана назва).",[5635,5663,5666],{"name":5664,"type":5665},"кілька scheme","масив","Можна передати масив схем, якщо потрібні аліаси (рідше на старті курсу). Для Nomad достатньо однієї.",[5635,5668,5671,5672,5675,5676,5678,5679,5682],{"name":5669,"type":5670},"колізії","ризик","Scheme ",[3521,5673,5674],{},"глобальний"," на пристрої. Якщо два застосунки заявлять ",[3533,5677,5456],{},", поведінка ОС неоднозначна. Для навчального й продакшен-імені обирайте ",[3521,5680,5681],{},"унікальніший"," префікс (бренд, суфікс).",[3512,5684,5686],{"id":5685},"анатомія-url-зі-scheme","Анатомія URL зі scheme",[3517,5688,5689],{},"Розберемо рядок:",[3526,5691,5694],{"className":5692,"code":5693,"language":3993,"meta":3531},[3991],"nomad:\u002F\u002Ftrips\u002F3?tab=places\n",[3533,5695,5693],{"__ignoreMap":3531},[3852,5697,5698,5708],{},[3855,5699,5700],{},[3858,5701,5702,5705],{},[3861,5703,5704],{},"Шматок",[3861,5706,5707],{},"Значення",[3871,5709,5710,5719,5730],{},[3858,5711,5712,5716],{},[3876,5713,5714],{},[3533,5715,5527],{},[3876,5717,5718],{},"scheme (хто відкриває)",[3858,5720,5721,5725],{},[3876,5722,5723],{},[3533,5724,5539],{},[3876,5726,5727,5728,3835],{},"path → маршрут Router (часто нормалізують до ",[3533,5729,3683],{},[3858,5731,5732,5737],{},[3876,5733,5734],{},[3533,5735,5736],{},"tab=places",[3876,5738,5739],{},"query → params на екрані",[3517,5741,5742],{},"Іноді зустрічається host:",[3526,5744,5747],{"className":5745,"code":5746,"language":3993,"meta":3531},[3991],"nomad:\u002F\u002Fexpo-development-client\u002F?url=…\n",[3533,5748,5746],{"__ignoreMap":3531},[3517,5750,3925,5751,5754,5755,5757,5758,5761,5762,5765,5766,5769],{},[3521,5752,5753],{},"production"," custom scheme для ваших екранів зазвичай ",[3521,5756,5253],{}," зайвого host або з домовленістю, яку очікує Router. У ",[3521,5759,5760],{},"розробці"," Expo підставляє складніші URL (Expo Go \u002F dev client) — тому для генерації посилань краще не хардкодити ",[3533,5763,5764],{},"nomad:\u002F\u002F…"," вручну скрізь, а знати про ",[3533,5767,5768],{},"Linking.createURL"," (нижче).",[3812,5771],{},[3507,5773,5775,5776],{"id":5774},"пакет-expo-linking","Пакет ",[3533,5777,5778],{},"expo-linking",[3517,5780,5781,5785],{},[3521,5782,5783],{},[3533,5784,5778],{}," — модуль Expo для роботи з URL: зібрати посилання на свій застосунок, розпарсити URL, відкрити зовнішнє посилання, підписатись на вхідні URL.",[3517,5787,5788,5789,5792,5793,5235,5795,5798],{},"У Nomad пакет ",[3521,5790,5791],{},"уже"," в залежностях (",[3533,5794,5778],{},[3533,5796,5797],{},"package.json",") — його тягне екосистема Router.",[3512,5800,5802],{"id":5801},"linkingcreateurlpath-options",[3533,5803,5804],{},"Linking.createURL(path, options?)",[3517,5806,5807,5808,5811,5812,5815],{},"Будує ",[3521,5809,5810],{},"коректний"," URL для ",[3521,5813,5814],{},"поточного"," середовища:",[3689,5817,5818,5828],{},[3692,5819,5820,5821,5823,5824,5827],{},"у production-збірці з ",[3533,5822,5612],{}," — щось на кшталт ",[3533,5825,5826],{},"nomad:\u002F\u002F\u002Ftrips\u002F3"," (точний вигляд залежить від платформи\u002Fверсії);",[3692,5829,5830,5831,5834],{},"у Expo Go — URL виду ",[3533,5832,5833],{},"exp:\u002F\u002F…"," із шляхом, бо Go відкриває проєкти інакше.",[3526,5836,5838],{"className":3528,"code":5837,"language":3530,"meta":3531,"style":3531},"import * as Linking from 'expo-linking';\n\nconst url = Linking.createURL('\u002Ftrips\u002F3');\n\u002F\u002F зручно залогувати або показати в UI «поділитись»\nconsole.log(url);\n",[3533,5839,5840,5861,5865,5889,5894],{"__ignoreMap":3531},[3536,5841,5842,5844,5847,5850,5853,5856,5859],{"class":3538,"line":3539},[3536,5843,4726],{"class":4725},[3536,5845,5846],{"class":3561}," *",[3536,5848,5849],{"class":4725}," as",[3536,5851,5852],{"class":3542}," Linking",[3536,5854,5855],{"class":4725}," from",[3536,5857,5858],{"class":3557}," 'expo-linking'",[3536,5860,4742],{"class":3546},[3536,5862,5863],{"class":3538,"line":4381},[3536,5864,4748],{"emptyLinePlaceholder":4747},[3536,5866,5867,5869,5872,5874,5877,5879,5882,5884,5887],{"class":3538,"line":4393},[3536,5868,3593],{"class":3561},[3536,5870,5871],{"class":3599}," url",[3536,5873,4874],{"class":3546},[3536,5875,5876],{"class":3542},"Linking",[3536,5878,3547],{"class":3546},[3536,5880,5881],{"class":3550},"createURL",[3536,5883,3554],{"class":3546},[3536,5885,5886],{"class":3557},"'\u002Ftrips\u002F3'",[3536,5888,3580],{"class":3546},[3536,5890,5891],{"class":3538,"line":4414},[3536,5892,5893],{"class":4573},"\u002F\u002F зручно залогувати або показати в UI «поділитись»\n",[3536,5895,5896,5899,5901,5904,5906,5909],{"class":3538,"line":4470},[3536,5897,5898],{"class":3542},"console",[3536,5900,3547],{"class":3546},[3536,5902,5903],{"class":3550},"log",[3536,5905,3554],{"class":3546},[3536,5907,5908],{"class":3542},"url",[3536,5910,3580],{"class":3546},[3517,5912,5913],{},"З query:",[3526,5915,5917],{"className":3528,"code":5916,"language":3530,"meta":3531,"style":3531},"const url = Linking.createURL('\u002Ftrips\u002F3', {\n  queryParams: { tab: 'places' },\n});\n",[3533,5918,5919,5940,5954],{"__ignoreMap":3531},[3536,5920,5921,5923,5925,5927,5929,5931,5933,5935,5937],{"class":3538,"line":3539},[3536,5922,3593],{"class":3561},[3536,5924,5871],{"class":3599},[3536,5926,4874],{"class":3546},[3536,5928,5876],{"class":3542},[3536,5930,3547],{"class":3546},[3536,5932,5881],{"class":3550},[3536,5934,3554],{"class":3546},[3536,5936,5886],{"class":3557},[3536,5938,5939],{"class":3546},", {\n",[3536,5941,5942,5945,5947,5950,5952],{"class":3538,"line":4381},[3536,5943,5944],{"class":3542},"  queryParams:",[3536,5946,3596],{"class":3546},[3536,5948,5949],{"class":3542},"tab:",[3536,5951,4568],{"class":3557},[3536,5953,4411],{"class":3546},[3536,5955,5956],{"class":3538,"line":4393},[3536,5957,4417],{"class":3546},[4201,5959,5960,3957,5963,5965,5966,5968,5969,5972,5973,5975],{},[3521,5961,5962],{},"Не хардкодте",[3533,5964,5396],{}," у всьому коді «для шерингу», якщо той самий код крутиться в Expo Go і в standalone. ",[3533,5967,5881],{}," підлаштовує base під середовище. Для ",[3521,5970,5971],{},"документації"," й тестів на пристрої з установленим білдом ",[3533,5974,5764],{}," — нормально.",[3512,5977,5979],{"id":5978},"linkingparseurl",[3533,5980,5981],{},"Linking.parse(url)",[3517,5983,5984],{},"Розбирає рядок URL на складові (scheme, path, queryParams тощо) — корисно в логах і дебазі:",[3526,5986,5988],{"className":3528,"code":5987,"language":3530,"meta":3531,"style":3531},"import * as Linking from 'expo-linking';\n\nconst parsed = Linking.parse('nomad:\u002F\u002Ftrips\u002F3?tab=places');\n\u002F\u002F path \u002F hostname \u002F queryParams — дивіться об’єкт у консолі\n",[3533,5989,5990,6006,6010,6033],{"__ignoreMap":3531},[3536,5991,5992,5994,5996,5998,6000,6002,6004],{"class":3538,"line":3539},[3536,5993,4726],{"class":4725},[3536,5995,5846],{"class":3561},[3536,5997,5849],{"class":4725},[3536,5999,5852],{"class":3542},[3536,6001,5855],{"class":4725},[3536,6003,5858],{"class":3557},[3536,6005,4742],{"class":3546},[3536,6007,6008],{"class":3538,"line":4381},[3536,6009,4748],{"emptyLinePlaceholder":4747},[3536,6011,6012,6014,6017,6019,6021,6023,6026,6028,6031],{"class":3538,"line":4393},[3536,6013,3593],{"class":3561},[3536,6015,6016],{"class":3599}," parsed",[3536,6018,4874],{"class":3546},[3536,6020,5876],{"class":3542},[3536,6022,3547],{"class":3546},[3536,6024,6025],{"class":3550},"parse",[3536,6027,3554],{"class":3546},[3536,6029,6030],{"class":3557},"'nomad:\u002F\u002Ftrips\u002F3?tab=places'",[3536,6032,3580],{"class":3546},[3536,6034,6035],{"class":3538,"line":4414},[3536,6036,6037],{"class":4573},"\u002F\u002F path \u002F hostname \u002F queryParams — дивіться об’єкт у консолі\n",[3512,6039,6041],{"id":6040},"linkingopenurlurl",[3533,6042,6043],{},"Linking.openURL(url)",[3517,6045,6046,6047,6050],{},"Відкриває URL ",[3521,6048,6049],{},"системно",": браузер, інший застосунок, інколи знову ваш (якщо scheme ваш).",[3526,6052,6054],{"className":3528,"code":6053,"language":3530,"meta":3531,"style":3531},"await Linking.openURL('https:\u002F\u002Fkostyl.dev');\n\u002F\u002F або\nawait Linking.openURL(Linking.createURL('\u002Ftrips\u002F1'));\n",[3533,6055,6056,6075,6080],{"__ignoreMap":3531},[3536,6057,6058,6061,6063,6065,6068,6070,6073],{"class":3538,"line":3539},[3536,6059,6060],{"class":4725},"await",[3536,6062,5852],{"class":3542},[3536,6064,3547],{"class":3546},[3536,6066,6067],{"class":3550},"openURL",[3536,6069,3554],{"class":3546},[3536,6071,6072],{"class":3557},"'https:\u002F\u002Fkostyl.dev'",[3536,6074,3580],{"class":3546},[3536,6076,6077],{"class":3538,"line":4381},[3536,6078,6079],{"class":4573},"\u002F\u002F або\n",[3536,6081,6082,6084,6086,6088,6090,6092,6094,6096,6098,6100,6103],{"class":3538,"line":4393},[3536,6083,6060],{"class":4725},[3536,6085,5852],{"class":3542},[3536,6087,3547],{"class":3546},[3536,6089,6067],{"class":3550},[3536,6091,3554],{"class":3546},[3536,6093,5876],{"class":3542},[3536,6095,3547],{"class":3546},[3536,6097,5881],{"class":3550},[3536,6099,3554],{"class":3546},[3536,6101,6102],{"class":3557},"'\u002Ftrips\u002F1'",[3536,6104,6105],{"class":3546},"));\n",[3517,6107,6108,6109,6112,6113,6116],{},"Перед відкриттям інколи перевіряють ",[3533,6110,6111],{},"Linking.canOpenURL"," (на iOS для чужих scheme можуть знадобитись записи в Info.plist \u002F config plugins — для відкриття ",[3521,6114,6115],{},"свого"," scheme зсередини зазвичай простіше).",[3512,6118,6120,6123],{"id":6119},"linkinguseurl-події",[3533,6121,6122],{},"Linking.useURL()"," \u002F події",[3517,6125,6126,6127,6132,6133,5555,6136,6139],{},"Хук ",[3521,6128,6129],{},[3533,6130,6131],{},"useURL()"," повертає URL, з яким застосунок ",[3521,6134,6135],{},"відкрили",[3533,6137,6138],{},"null","). Корисно для діагностики: «з яким рядком мене зараз відкрили?».",[3517,6141,6142,6143,6146,6147,6149,6150,6152],{},"Expo Router ",[3521,6144,6145],{},"сам"," підписується на вхідні URL і навигує на відповідний маршрут, якщо path збігається з ",[3533,6148,5382],{},". Вам рідко треба вручну парсити кожен deep link і викликати ",[3533,6151,3758],{}," — але розуміти шар linking потрібно, коли щось «не відкривається» або path приходить у несподіваному вигляді.",[5632,6154,6155,6173,6177,6181,6186],{},[5635,6156,6158,6159,6162,6163,6166,6167,6170,6171,3547],{"name":5881,"type":6157},"(path, options?) => string","Зібрати deep link на ",[3521,6160,6161],{},"цей"," застосунок у ",[3521,6164,6165],{},"поточному"," середовищі (Go vs standalone). Path краще з провідним ",[3533,6168,6169],{},"\u002F"," для маршрутів Router: ",[3533,6172,5886],{},[5635,6174,6176],{"name":6025,"type":6175},"(url) => ParsedURL","Розкласти URL на path \u002F query \u002F scheme для логів і власної логіки.",[5635,6178,6180],{"name":6067,"type":6179},"(url) => Promise","Віддати URL системі (браузер, maps, інший app, інколи свій).",[5635,6182,6185],{"name":6183,"type":6184},"useURL","hook → string \\| null","Поточний «вхідний» URL сесії відкриття. Для UI-діагностики; навігацією зазвичай керує Router.",[5635,6187,6190],{"name":6188,"type":6189},"canOpenURL","(url) => Promise\u003Cboolean>","Чи є на пристрої хтось, хто відкриє цей URL. Обмеження платформ (особливо iOS) читайте в docs, коли підете в інтеграції з чужими scheme.",[3812,6192],{},[3507,6194,6196],{"id":6195},"як-перевірити-scheme-на-практиці","Як перевірити scheme на практиці",[3512,6198,6200,6201,6203],{"id":6199},"_1-переконайтесь-що-scheme-у-конфігу","1. Переконайтесь, що ",[3533,6202,5564],{}," у конфігу",[3517,6205,6206,6207,5235,6209,6211],{},"Nomad: ",[3533,6208,5612],{},[3533,6210,5554],{},". Після зміни — перезапуск \u002F новий білд за потреби.",[3512,6213,6215],{"id":6214},"_2-expo-go-vs-dev-client-standalone","2. Expo Go vs dev client \u002F standalone",[3852,6217,6218,6228],{},[3855,6219,6220],{},[3858,6221,6222,6225],{},[3861,6223,6224],{},"Середовище",[3861,6226,6227],{},"Що очікувати",[3871,6229,6230,6258],{},[3858,6231,6232,6237],{},[3876,6233,6234],{},[3521,6235,6236],{},"Expo Go",[3876,6238,6239,6240,6243,6244,6247,6248,6250,6251,6253,6254,6257],{},"Deep link часто йде через ",[3533,6241,6242],{},"exp:\u002F\u002F"," і UI Go; custom scheme проєкту працює ",[3521,6245,6246],{},"обмежено"," \u002F інакше, ніж у магазині. Для навчання params ",[3521,6249,3645],{}," app — Go достатньо; для «як у проді ",[3533,6252,5452],{},"» надійніше ",[3521,6255,6256],{},"development build"," або preview build.",[3858,6259,6260,6265],{},[3876,6261,6262],{},[3521,6263,6264],{},"Dev client \u002F preview \u002F store",[3876,6266,6267,6268,6270,6271,6273],{},"Custom scheme з ",[3533,6269,5554],{}," реєструється в нативному проєкті; ",[3533,6272,5396],{}," має відкривати застосунок.",[3517,6275,6276,6277,6280,6281,6283],{},"Курс не вимагає одразу EAS build для кожної вправи, але варто ",[3521,6278,6279],{},"знати",": «у Go не відкрилось ",[3533,6282,5452],{},"» ≠ «Router зламаний».",[3512,6285,6287],{"id":6286},"_3-команди-й-системні-способи-тесту","3. Команди й системні способи тесту",[3517,6289,6290,6293],{},[3521,6291,6292],{},"iOS Simulator"," (якщо білд установлений):",[3526,6295,6299],{"className":6296,"code":6297,"language":6298,"meta":3531,"style":3531},"language-bash shiki shiki-themes light-plus dark-plus dark-plus","xcrun simctl openurl booted \"nomad:\u002F\u002Ftrips\u002F1\"\n","bash",[3533,6300,6301],{"__ignoreMap":3531},[3536,6302,6303,6306,6309,6312,6315],{"class":3538,"line":3539},[3536,6304,6305],{"class":3550},"xcrun",[3536,6307,6308],{"class":3557}," simctl",[3536,6310,6311],{"class":3557}," openurl",[3536,6313,6314],{"class":3557}," booted",[3536,6316,6317],{"class":3557}," \"nomad:\u002F\u002Ftrips\u002F1\"\n",[3517,6319,6320,6323],{},[3521,6321,6322],{},"Android"," (емулятор \u002F девайс з adb, пакет установлений):",[3526,6325,6327],{"className":6296,"code":6326,"language":6298,"meta":3531,"style":3531},"adb shell am start -a android.intent.action.VIEW -d \"nomad:\u002F\u002Ftrips\u002F1\"\n",[3533,6328,6329],{"__ignoreMap":3531},[3536,6330,6331,6334,6337,6340,6343,6346,6349,6352],{"class":3538,"line":3539},[3536,6332,6333],{"class":3550},"adb",[3536,6335,6336],{"class":3557}," shell",[3536,6338,6339],{"class":3557}," am",[3536,6341,6342],{"class":3557}," start",[3536,6344,6345],{"class":3561}," -a",[3536,6347,6348],{"class":3557}," android.intent.action.VIEW",[3536,6350,6351],{"class":3561}," -d",[3536,6353,6317],{"class":3557},[3517,6355,6356,6359],{},[3521,6357,6358],{},"У застосунку:"," кнопка «Відкрити тестове посилання»:",[3526,6361,6363],{"className":3528,"code":6362,"language":3530,"meta":3531,"style":3531},"import * as Linking from 'expo-linking';\n\nawait Linking.openURL(Linking.createURL('\u002Ftrips\u002F1'));\n",[3533,6364,6365,6381,6385],{"__ignoreMap":3531},[3536,6366,6367,6369,6371,6373,6375,6377,6379],{"class":3538,"line":3539},[3536,6368,4726],{"class":4725},[3536,6370,5846],{"class":3561},[3536,6372,5849],{"class":4725},[3536,6374,5852],{"class":3542},[3536,6376,5855],{"class":4725},[3536,6378,5858],{"class":3557},[3536,6380,4742],{"class":3546},[3536,6382,6383],{"class":3538,"line":4381},[3536,6384,4748],{"emptyLinePlaceholder":4747},[3536,6386,6387,6389,6391,6393,6395,6397,6399,6401,6403,6405,6407],{"class":3538,"line":4393},[3536,6388,6060],{"class":4725},[3536,6390,5852],{"class":3542},[3536,6392,3547],{"class":3546},[3536,6394,6067],{"class":3550},[3536,6396,3554],{"class":3546},[3536,6398,5876],{"class":3542},[3536,6400,3547],{"class":3546},[3536,6402,5881],{"class":3550},[3536,6404,3554],{"class":3546},[3536,6406,6102],{"class":3557},[3536,6408,6105],{"class":3546},[3517,6410,6411,6414,6415,6418],{},[3521,6412,6413],{},"Нотатки \u002F Safari:"," вставити ",[3533,6416,6417],{},"nomad:\u002F\u002Ftrips\u002F1"," (на реальному пристрої з установленим білдом). Поведінка Safari з custom scheme різниться; інколи зручніше Notes або QR.",[3512,6420,6422],{"id":6421},"_4-що-має-статись-у-nomad","4. Що має статись у Nomad",[3517,6424,6425],{},"Якщо Router і вкладений стек налаштовані (ст. 11–12):",[3729,6427,6428,6431,6440],{},[3692,6429,6430],{},"Відкривається застосунок (або виходить на передній план).",[3692,6432,6433,6434,4676,6437,3547],{},"Навігація веде на екран ",[3533,6435,6436],{},"trips\u002F[id]",[3533,6438,6439],{},"id=1",[3692,6441,6442,6443,6445],{},"Якщо поїздка є в ",[3533,6444,4679],{}," — деталі; якщо ні — «не знайдено».",[3517,6447,6448,6449,6452,6453,3684],{},"Перевіряйте ",[3521,6450,6451],{},"обидва"," стани: валідний id з mock і свідомо невалідний (",[3533,6454,6455],{},"nomad:\u002F\u002Ftrips\u002Fnope",[3812,6457],{},[3507,6459,6461],{"id":6460},"cold-start-і-warm-start-на-рівні-ідеї","Cold start і warm start (на рівні ідеї)",[3517,6463,6464,6465,3547],{},"Коли deep link відкриває застосунок, важливий ",[3521,6466,6467],{},"стан процесу",[3517,6469,6470,5365,6473,6476,6477,6479,6480,6483,6484,6487,6488,3684],{},[3521,6471,6472],{},"Cold start",[3832,6474,6475],{},"холодний старт",") — застосунок ",[3521,6478,4001],{}," крутився в пам’яті (або був убитий системою). ОС запускає процес з нуля: JS-бандл, providers, Router, ",[3521,6481,6482],{},"потім"," (або разом) обробка URL. Час до першого кадру довший; порядок ініціалізації критичний (провайдери мають існувати, ",[3521,6485,6486],{},"перш ніж"," екран деталей читає ",[3533,6489,6490],{},"getTrip",[3517,6492,6493,5365,6496,6499,6500,3547],{},[3521,6494,6495],{},"Warm start",[3832,6497,6498],{},"теплий",") — застосунок уже був у фоні. ОС лише передає новий URL; Router навигує на маршрут. Стан у пам’яті (наприклад, уже завантажені trips) може ",[3521,6501,6502],{},"зберегтись",[5632,6504,6505,6520,6524],{},[5635,6506,6509,6510,6512,6513,6516,6517,6519],{"name":6507,"type":6508},"cold start","сценарій","Повне підняття JS. Deep link на ",[3533,6511,3683],{}," має спрацювати ",[3521,6514,6515],{},"після"," того, як root layout змонтував ",[3533,6518,4679],{},". Якщо дані лише «випадково» були в state з попередньої сесії — на cold start їх не буде: потрібні mock seed, persist (MMKV — пізніше) або fetch.",[5635,6521,6523],{"name":6522,"type":6508},"warm start","Процес живий. Новий URL змінює маршрут. Можливі нюанси: уже відкрита modal, dirty-форма, інша вкладка — deep link «перебиває» UI; продуктово вирішуйте, чи завжди replace на ціль.",[5635,6525,6528,6529,6531],{"name":6526,"type":6527},"initialRouteName \u002F unstable_settings","якір","Як у статті про modal: якір ",[3533,6530,4144],{}," допомагає мати базу історії, коли вхід одразу на глибокий екран.",[3517,6533,6534,6535],{},"Детальний порядок «що першим: splash, auth, url» у великих застосунках розростається. На рівні курсу достатньо: ",[3521,6536,6537],{},"cold start = даних у RAM може не бути; path у URL — єдине, що точно прийшло ззовні.",[3812,6539],{},[3507,6541,6543],{"id":6542},"звязок-scheme-і-params-зшивка","Зв’язок scheme і params (зшивка)",[3517,6545,6546,6547,3987],{},"Повний шлях даних для ",[3533,6548,5396],{},[5150,6550,6551,6555,6558,6562,6568,6572,6580,6584,6593,6597,6603,6607],{},[3512,6552,6554],{"id":6553},"_1-зовнішній-світ","1. Зовнішній світ",[3517,6556,6557],{},"Користувач відкриває посилання (Notes, QR, adb, інший app).",[3512,6559,6561],{"id":6560},"_2-ос","2. ОС",[3517,6563,6564,6565,6567],{},"Бачить scheme ",[3533,6566,5527],{}," → знаходить пакет Nomad → стартує \u002F resume.",[3512,6569,6571],{"id":6570},"_3-linking-expo-router","3. Linking + Expo Router",[3517,6573,6574,6575,6577,6578,3547],{},"URL → path ",[3533,6576,3683],{}," (нормалізація) → файл ",[3533,6579,4715],{},[3512,6581,6583],{"id":6582},"_4-params","4. Params",[3517,6585,6586,5204,6588,5204,6590,3547],{},[3533,6587,3605],{},[3533,6589,3571],{},[3533,6591,6592],{},"tripId = \"3\"",[3512,6594,6596],{"id":6595},"_5-дані","5. Дані",[3517,6598,6599,6602],{},[3533,6600,6601],{},"getTrip(\"3\")"," з Context \u002F API. Не з URL (у URL лише id).",[3512,6604,6606],{"id":6605},"_6-ui","6. UI",[3517,6608,6609],{},"Деталі або «не знайдено». Back \u002F tabs — як у звичайній внутрішній навігації.",[3517,6611,6612,6613,6616,6617,6619],{},"Якщо крок 5 падає на cold start (порожній store) — це вже ",[3521,6614,6615],{},"архітектура даних",", не «Router не вміє deep link». Mock у ",[3533,6618,4679],{}," при старті якраз рятує демо; у проді з’являться persist і мережа.",[3812,6621],{},[3507,6623,6625],{"id":6624},"типові-помилки-з-scheme-і-linking","Типові помилки з scheme і linking",[3729,6627,6628,6637,6646,6657,6669,6675,6681],{},[3692,6629,6630,6636],{},[3521,6631,6632,6633,6635],{},"Забули ",[3533,6634,5564],{}," у app.json"," — custom URL «нічий».",[3692,6638,6639,6645],{},[3521,6640,6641,6642,6644],{},"Тестують ",[3533,6643,5452],{}," лише в Expo Go"," і роблять висновок, що все зламано.",[3692,6647,6648,6653,6654,6656],{},[3521,6649,6650,6651],{},"Хардкод ",[3533,6652,5452],{}," у коді, який крутиться в Go — краще ",[3533,6655,5881],{}," для шерингу з того ж білда.",[3692,6658,6659,4151,6664,5271,6667,3547],{},[3521,6660,6661,6662],{},"Path без узгодження з ",[3533,6663,5382],{},[3533,6665,6666],{},"nomad:\u002F\u002Ftrip\u002F3",[3533,6668,6436],{},[3692,6670,6671,6674],{},[3521,6672,6673],{},"Очікують об’єкт Trip у URL"," — ззовні лише рядки.",[3692,6676,6677,6680],{},[3521,6678,6679],{},"Не перевіряють missing entity"," на cold start.",[3692,6682,6683,6686],{},[3521,6684,6685],{},"Колізія scheme"," з іншим навчальним додатком на тому ж симуляторі.",[3812,6688],{},[3507,6690,6692],{"id":6691},"практика","Практика",[3729,6694,6695,6706,6712,6719],{},[3692,6696,6697,6698,6701,6702,6705],{},"Виведіть на екран «Ще» у Nomad результат ",[3533,6699,6700],{},"Linking.createURL('\u002Ftrips\u002F1')"," (тимчасовий ",[3533,6703,6704],{},"AppText",") — порівняйте рядок у Go і, якщо є, у standalone.",[3692,6707,6708,6709,6711],{},"З симулятора \u002F adb надішліть ",[3533,6710,6417],{}," на білд, де scheme зареєстровано.",[3692,6713,6714,6715,6718],{},"Надішліть ",[3533,6716,6717],{},"nomad:\u002F\u002Ftrips\u002Fdoes-not-exist"," — має бути спокійний empty\u002Ferror UI.",[3692,6720,6721],{},"Відкрийте deep link, коли застосунок уже на екрані форми create-trip (warm) — подивіться, чи прийнятна поведінка.",[3812,6723],{},[3507,6725,6727],{"id":6726},"universal-links-і-android-app-links","Universal Links і Android App Links",[3517,6729,6730,6731,6733,6734,6737],{},"Custom scheme (",[3533,6732,5764],{},") зручний для розробки й внутрішніх сценаріїв. Для ",[3521,6735,6736],{},"користувача в месенджері чи пошті"," частіше хочуть звичайне посилання:",[3526,6739,6742],{"className":6740,"code":6741,"language":3993,"meta":3531},[3991],"https:\u002F\u002Fapp.example.com\u002Ftrips\u002F3\n",[3533,6743,6741],{"__ignoreMap":3531},[3517,6745,6746,6747,6750,6751,6754,6755,6758,6759,6762,6763,6766,6767,6770],{},"Якщо застосунок ",[3521,6748,6749],{},"установлений"," і домен ",[3521,6752,6753],{},"прив’язаний"," до нього, система може відкрити ",[3521,6756,6757],{},"застосунок",", а не (або не лише) браузер. Якщо застосунку немає — відкривається ",[3521,6760,6761],{},"сайт"," (fallback). Це і є ідея ",[3521,6764,6765],{},"Universal Links"," (iOS) та ",[3521,6768,6769],{},"App Links"," (Android).",[3517,6772,6773],{},[3821,6774],{"alt":6775,"className":6776,"src":6777},"https-посилання vs custom scheme",[3825],"\u002Fimages\u002Freact-native\u002Fdeep-linking-and-params\u002F03.svg",[3512,6779,6781],{"id":6780},"навіщо-ускладнення","Навіщо ускладнення",[3852,6783,6784,6799],{},[3855,6785,6786],{},[3858,6787,6788,6793],{},[3861,6789,6790,6791],{},"Custom scheme ",[3533,6792,5452],{},[3861,6794,6795,6798],{},[3533,6796,6797],{},"https:\u002F\u002F…"," (universal \u002F app links)",[3871,6800,6801,6813,6824,6832,6844],{},[3858,6802,6803,6806],{},[3876,6804,6805],{},"Працює без домену",[3876,6807,6808,6809,6812],{},"Потрібен ",[3521,6810,6811],{},"ваш"," домен і файли на ньому",[3858,6814,6815,6818],{},[3876,6816,6817],{},"Якщо app немає — часто «нічого» \u002F помилка",[3876,6819,6820,6821],{},"Якщо app немає — ",[3521,6822,6823],{},"веб-сторінка",[3858,6825,6826,6829],{},[3876,6827,6828],{},"У чатах інколи виглядає «підозріло»",[3876,6830,6831],{},"Звичайне https-посилання",[3858,6833,6834,6837],{},[3876,6835,6836],{},"Швидко для dev",[3876,6838,6839,6840,6843],{},"Потрібна ",[3521,6841,6842],{},"верифікація"," ОС (AASA \u002F assetlinks)",[3858,6845,6846,6849],{},[3876,6847,6848],{},"Колізії scheme між apps",[3876,6850,6851],{},"Прив’язка до bundle id + сертифікатів",[3517,6853,6854,6855,6858],{},"У проді обидва підходи часто ",[3521,6856,6857],{},"співіснують",": https для людей, scheme для внутрішніх інструментів і legacy.",[3512,6860,6862],{"id":6861},"як-це-влаштовано-ідея-не-чекліст-магазину","Як це влаштовано (ідея, не чекліст магазину)",[3517,6864,6865,6866,6869,6870,6873],{},"Система ",[3521,6867,6868],{},"не вірить"," застосунку на слово «я відкриваю example.com». Потрібна ",[3521,6871,6872],{},"двостороння"," асоціація:",[3729,6875,6876,6882],{},[3692,6877,6878,6881],{},[3521,6879,6880],{},"На сайті"," лежить файл, який каже: «ці path відкриває app з таким id».",[3692,6883,6884,6887],{},[3521,6885,6886],{},"У застосунку"," (нативна конфігурація) заявлено: «я обслуговую цей домен».",[5150,6889,6890,6894,6950,6954,6996,7000],{},[3512,6891,6893],{"id":6892},"_1-ios-universal-links","1. iOS — Universal Links",[3689,6895,6896,6914,6933,6947],{},[3692,6897,3925,6898,6900,6901,6904,6905,5365,6908,3957,6910,6913],{},[3533,6899,5554],{}," \u002F config: ",[3533,6902,6903],{},"ios.associatedDomains",", наприклад ",[3533,6906,6907],{},"applinks:app.example.com",[3521,6909,5253],{},[3533,6911,6912],{},"https:\u002F\u002F"," у цьому рядку — поширена помилка).",[3692,6915,6916,6917,6920,6921,6923,6926,6928,6929,6932],{},"На сервері: файл ",[3521,6918,6919],{},"Apple App Site Association"," (AASA), зазвичай",[5211,6922],{},[3533,6924,6925],{},"https:\u002F\u002Fapp.example.com\u002F.well-known\u002Fapple-app-site-association",[5211,6927],{},"\n(без зайвого ",[3533,6930,6931],{},".json"," у проді Apple, content-type як у docs).",[3692,6934,6935,6936,6939,6940,5365,6943,6946],{},"Усередині — ",[3533,6937,6938],{},"appID"," = TeamID + bundle identifier і список ",[3533,6941,6942],{},"paths",[3533,6944,6945],{},"\u002Ftrips\u002F*"," тощо).",[3692,6948,6949],{},"Збірка з entitlements Associated Domains (EAS Build підхоплює з config).",[3512,6951,6953],{"id":6952},"_2-android-app-links","2. Android — App Links",[3689,6955,6956,6975,6993],{},[3692,6957,6958,6959,4676,6962,3755,6965,3755,6968,6971,6972,3547],{},"У config: ",[3533,6960,6961],{},"android.intentFilters",[3533,6963,6964],{},"https",[3533,6966,6967],{},"host",[3533,6969,6970],{},"pathPrefix",", часто ",[3533,6973,6974],{},"autoVerify: true",[3692,6976,6977,6978,6980,6983,6985,6986,3713,6989,6992],{},"На сервері:",[5211,6979],{},[3533,6981,6982],{},"https:\u002F\u002Fapp.example.com\u002F.well-known\u002Fassetlinks.json",[5211,6984],{},"\nз ",[3533,6987,6988],{},"package_name",[3521,6990,6991],{},"SHA-256"," відбитками підпису (debug і release — різні!).",[3692,6994,6995],{},"Система верифікує файл; після успіху https-лінки можуть відкривати app без діалогу «чим відкрити».",[3512,6997,6999],{"id":6998},"_3-expo-eas","3. Expo \u002F EAS",[3517,7001,7002,7003,4216,7005,7008,7009,7011,7012,7015],{},"Конфіг у ",[3533,7004,5554],{},[3533,7006,7007],{},"app.config.js"," — джерело для prebuild. Самі AASA \u002F assetlinks ",[3521,7010,4001],{}," з’являються «самі» на домені: їх викладає бекенд \u002F static hosting \u002F CDN. Для курсу достатньо ",[3521,7013,7014],{},"розуміти ланцюг","; повний setup з реальним доменом — окремий інфраструктурний крок продукту.",[3512,7017,7019],{"id":7018},"приклад-фрагментів-config-орієнтир","Приклад фрагментів config (орієнтир)",[3517,7021,7022],{},[3521,7023,7024],{},"iOS associated domain:",[3526,7026,7028],{"className":5567,"code":7027,"language":5569,"meta":3531,"style":3531},"{\n  \"expo\": {\n    \"ios\": {\n      \"bundleIdentifier\": \"com.example.nomad\",\n      \"associatedDomains\": [\"applinks:app.example.com\"]\n    }\n  }\n}\n",[3533,7029,7030,7034,7040,7047,7059,7073,7078,7082],{"__ignoreMap":3531},[3536,7031,7032],{"class":3538,"line":3539},[3536,7033,4441],{"class":3546},[3536,7035,7036,7038],{"class":3538,"line":4381},[3536,7037,5581],{"class":5580},[3536,7039,5584],{"class":3546},[3536,7041,7042,7045],{"class":3538,"line":4393},[3536,7043,7044],{"class":5580},"    \"ios\"",[3536,7046,5584],{"class":3546},[3536,7048,7049,7052,7054,7057],{"class":3538,"line":4414},[3536,7050,7051],{"class":5580},"      \"bundleIdentifier\"",[3536,7053,3613],{"class":3546},[3536,7055,7056],{"class":3557},"\"com.example.nomad\"",[3536,7058,4390],{"class":3546},[3536,7060,7061,7064,7067,7070],{"class":3538,"line":4470},[3536,7062,7063],{"class":5580},"      \"associatedDomains\"",[3536,7065,7066],{"class":3546},": [",[3536,7068,7069],{"class":3557},"\"applinks:app.example.com\"",[3536,7071,7072],{"class":3546},"]\n",[3536,7074,7075],{"class":3538,"line":4479},[3536,7076,7077],{"class":3546},"    }\n",[3536,7079,7080],{"class":3538,"line":4484},[3536,7081,5599],{"class":3546},[3536,7083,7084],{"class":3538,"line":4490},[3536,7085,4476],{"class":3546},[3517,7087,7088],{},[3521,7089,7090],{},"Android intent filter (схема):",[3526,7092,7094],{"className":5567,"code":7093,"language":5569,"meta":3531,"style":3531},"{\n  \"expo\": {\n    \"android\": {\n      \"package\": \"com.example.nomad\",\n      \"intentFilters\": [\n        {\n          \"action\": \"VIEW\",\n          \"autoVerify\": true,\n          \"data\": [\n            {\n              \"scheme\": \"https\",\n              \"host\": \"app.example.com\",\n              \"pathPrefix\": \"\u002Ftrips\"\n            }\n          ],\n          \"category\": [\"BROWSABLE\", \"DEFAULT\"]\n        }\n      ]\n    }\n  }\n}\n",[3533,7095,7096,7100,7106,7113,7124,7132,7137,7149,7161,7169,7175,7188,7201,7212,7218,7224,7242,7248,7254,7259,7264],{"__ignoreMap":3531},[3536,7097,7098],{"class":3538,"line":3539},[3536,7099,4441],{"class":3546},[3536,7101,7102,7104],{"class":3538,"line":4381},[3536,7103,5581],{"class":5580},[3536,7105,5584],{"class":3546},[3536,7107,7108,7111],{"class":3538,"line":4393},[3536,7109,7110],{"class":5580},"    \"android\"",[3536,7112,5584],{"class":3546},[3536,7114,7115,7118,7120,7122],{"class":3538,"line":4414},[3536,7116,7117],{"class":5580},"      \"package\"",[3536,7119,3613],{"class":3546},[3536,7121,7056],{"class":3557},[3536,7123,4390],{"class":3546},[3536,7125,7126,7129],{"class":3538,"line":4470},[3536,7127,7128],{"class":5580},"      \"intentFilters\"",[3536,7130,7131],{"class":3546},": [\n",[3536,7133,7134],{"class":3538,"line":4479},[3536,7135,7136],{"class":3546},"        {\n",[3536,7138,7139,7142,7144,7147],{"class":3538,"line":4484},[3536,7140,7141],{"class":5580},"          \"action\"",[3536,7143,3613],{"class":3546},[3536,7145,7146],{"class":3557},"\"VIEW\"",[3536,7148,4390],{"class":3546},[3536,7150,7151,7154,7156,7159],{"class":3538,"line":4490},[3536,7152,7153],{"class":5580},"          \"autoVerify\"",[3536,7155,3613],{"class":3546},[3536,7157,7158],{"class":3561},"true",[3536,7160,4390],{"class":3546},[3536,7162,7164,7167],{"class":3538,"line":7163},9,[3536,7165,7166],{"class":5580},"          \"data\"",[3536,7168,7131],{"class":3546},[3536,7170,7172],{"class":3538,"line":7171},10,[3536,7173,7174],{"class":3546},"            {\n",[3536,7176,7178,7181,7183,7186],{"class":3538,"line":7177},11,[3536,7179,7180],{"class":5580},"              \"scheme\"",[3536,7182,3613],{"class":3546},[3536,7184,7185],{"class":3557},"\"https\"",[3536,7187,4390],{"class":3546},[3536,7189,7191,7194,7196,7199],{"class":3538,"line":7190},12,[3536,7192,7193],{"class":5580},"              \"host\"",[3536,7195,3613],{"class":3546},[3536,7197,7198],{"class":3557},"\"app.example.com\"",[3536,7200,4390],{"class":3546},[3536,7202,7204,7207,7209],{"class":3538,"line":7203},13,[3536,7205,7206],{"class":5580},"              \"pathPrefix\"",[3536,7208,3613],{"class":3546},[3536,7210,7211],{"class":3557},"\"\u002Ftrips\"\n",[3536,7213,7215],{"class":3538,"line":7214},14,[3536,7216,7217],{"class":3546},"            }\n",[3536,7219,7221],{"class":3538,"line":7220},15,[3536,7222,7223],{"class":3546},"          ],\n",[3536,7225,7227,7230,7232,7235,7237,7240],{"class":3538,"line":7226},16,[3536,7228,7229],{"class":5580},"          \"category\"",[3536,7231,7066],{"class":3546},[3536,7233,7234],{"class":3557},"\"BROWSABLE\"",[3536,7236,3755],{"class":3546},[3536,7238,7239],{"class":3557},"\"DEFAULT\"",[3536,7241,7072],{"class":3546},[3536,7243,7245],{"class":3538,"line":7244},17,[3536,7246,7247],{"class":3546},"        }\n",[3536,7249,7251],{"class":3538,"line":7250},18,[3536,7252,7253],{"class":3546},"      ]\n",[3536,7255,7257],{"class":3538,"line":7256},19,[3536,7258,7077],{"class":3546},[3536,7260,7262],{"class":3538,"line":7261},20,[3536,7263,5599],{"class":3546},[3536,7265,7267],{"class":3538,"line":7266},21,[3536,7268,4476],{"class":3546},[3517,7270,7271,7272,7274],{},"Це ",[3521,7273,4001],{}," копіювати сліпо в Nomad без реального домену — інакше білд лише «заявить» права, які ОС не підтвердить.",[3512,7276,7278],{"id":7277},"що-спільного-з-params","Що спільного з params",[3517,7280,7281],{},"Після того, як ОС віддала застосунку URL:",[3526,7283,7285],{"className":7284,"code":6741,"language":3993,"meta":3531},[3991],[3533,7286,6741],{"__ignoreMap":3531},[3517,7288,7289,7290,3755,7294,5204,7296,3755,7298,7300,7301,7303,7304,7306,7307,7310,7311,7314],{},"Router знову бачить path ",[3521,7291,7292],{},[3533,7293,3683],{},[3533,7295,3935],{},[3533,7297,4172],{},[3533,7299,3605],{}," — як після ",[3533,7302,5396],{}," або внутрішнього ",[3533,7305,3551],{},". ",[3521,7308,7309],{},"Екран і params ті самі","; відрізняється лише ",[3521,7312,7313],{},"транспорт"," доставки URL.",[4685,7316,7317,7320,7321,7323],{},[3521,7318,7319],{},"Веб-fallback."," Якщо публікуєте https-лінки, хтось без app потрапить на сайт. Сторінка ",[3533,7322,3683],{}," на вебі має існувати або редіректити розумно — інакше «мертве» посилання. Це продуктове рішення (маркетинг + app), не лише RN.",[3512,7325,7327],{"id":7326},"коли-в-курсі-що-використовувати","Коли в курсі що використовувати",[3852,7329,7330,7340],{},[3855,7331,7332],{},[3858,7333,7334,7337],{},[3861,7335,7336],{},"Задача",[3861,7338,7339],{},"Рекомендація курсу",[3871,7341,7342,7353,7363,7371],{},[3858,7343,7344,7347],{},[3876,7345,7346],{},"Навчання params і Router",[3876,7348,7349,7350,7352],{},"внутрішній ",[3533,7351,3551],{}," + scheme у dev",[3858,7354,7355,7358],{},[3876,7356,7357],{},"Демо deep link на симуляторі",[3876,7359,7360,7362],{},[3533,7361,5764],{}," + dev\u002Fpreview build",[3858,7364,7365,7368],{},[3876,7366,7367],{},"Прод «поділитись у Telegram»",[3876,7369,7370],{},"https + universal\u002Fapp links (коли є домен)",[3858,7372,7373,7375],{},[3876,7374,6236],{},[3876,7376,7377],{},"не критерій «прод deep link»",[3812,7379],{},[3507,7381,7383],{"id":7382},"міні-проєкт-купон-за-лінком-від-а-до-я","Міні-проєкт: «Купон за лінком» (від А до Я)",[3512,7385,7387],{"id":7386},"мета","Мета",[3517,7389,7390,7391,7394,7395,5555,7398,7400],{},"Окремий застосунок ",[3521,7392,7393],{},"поза"," Nomad. Відкриваєте ",[3533,7396,7397],{},"couponapp:\u002F\u002Fcoupon\u002FSUMMER25",[3533,7399,5881],{},") → екран купона з кодом. Повний код нижче.",[3512,7402,7404],{"id":7403},"що-має-вийти","Що має вийти",[3729,7406,7407,7410,7417,7423,7426],{},[3692,7408,7409],{},"Головний екран зі списком купонів (тап → деталі).",[3692,7411,7412,7413,7416],{},"Екран ",[3533,7414,7415],{},"\u002Fcoupon\u002F[code]"," — великі літери коду, опис, кнопка «Скопіювати» (опційно Alert).",[3692,7418,7419,7420,3547],{},"Кнопка «Відкрити deep link» через ",[3533,7421,7422],{},"Linking.openURL(createURL(...))",[3692,7424,7425],{},"Невідомий код → спокійний «Купон не знайдено».",[3692,7427,3925,7428,4151,7430,3547],{},[3533,7429,5554],{},[3533,7431,7432],{},"\"scheme\": \"couponapp\"",[3512,7434,7436],{"id":7435},"структура","Структура",[3526,7438,7441],{"className":7439,"code":7440,"language":3993,"meta":3531},[3991],"coupon-app\u002F\n  app\u002F\n    _layout.tsx\n    index.tsx\n    coupon\u002F\n      [code].tsx\n  src\u002F\n    data\u002F\n      coupons.ts\n  app.json\n  package.json\n",[3533,7442,7440],{"__ignoreMap":3531},[3512,7444,7446],{"id":7445},"крок-1-проєкт","Крок 1. Проєкт",[5150,7448,7449,7453,7483,7487,7520,7525,7540,7544,7552,7581,7585],{},[3512,7450,7452],{"id":7451},"_1-скарфолд","1. Скарфолд",[3526,7454,7456],{"className":6296,"code":7455,"language":6298,"meta":3531,"style":3531},"npx create-expo-app@latest coupon-app -t blank-typescript\ncd coupon-app\n",[3533,7457,7458,7475],{"__ignoreMap":3531},[3536,7459,7460,7463,7466,7469,7472],{"class":3538,"line":3539},[3536,7461,7462],{"class":3550},"npx",[3536,7464,7465],{"class":3557}," create-expo-app@latest",[3536,7467,7468],{"class":3557}," coupon-app",[3536,7470,7471],{"class":3561}," -t",[3536,7473,7474],{"class":3557}," blank-typescript\n",[3536,7476,7477,7480],{"class":3538,"line":4381},[3536,7478,7479],{"class":3550},"cd",[3536,7481,7482],{"class":3557}," coupon-app\n",[3512,7484,7486],{"id":7485},"_2-router-і-залежності","2. Router і залежності",[3526,7488,7490],{"className":6296,"code":7489,"language":6298,"meta":3531,"style":3531},"npx expo install expo-router expo-linking expo-constants expo-status-bar react-native-safe-area-context react-native-screens\n",[3533,7491,7492],{"__ignoreMap":3531},[3536,7493,7494,7496,7499,7502,7505,7508,7511,7514,7517],{"class":3538,"line":3539},[3536,7495,7462],{"class":3550},[3536,7497,7498],{"class":3557}," expo",[3536,7500,7501],{"class":3557}," install",[3536,7503,7504],{"class":3557}," expo-router",[3536,7506,7507],{"class":3557}," expo-linking",[3536,7509,7510],{"class":3557}," expo-constants",[3536,7512,7513],{"class":3557}," expo-status-bar",[3536,7515,7516],{"class":3557}," react-native-safe-area-context",[3536,7518,7519],{"class":3557}," react-native-screens\n",[3517,7521,3925,7522,7524],{},[3533,7523,5797],{}," встановіть:",[3526,7526,7528],{"className":5567,"code":7527,"language":5569,"meta":3531,"style":3531},"\"main\": \"expo-router\u002Fentry\"\n",[3533,7529,7530],{"__ignoreMap":3531},[3536,7531,7532,7535,7537],{"class":3538,"line":3539},[3536,7533,7534],{"class":3557},"\"main\"",[3536,7536,3613],{"class":3546},[3536,7538,7539],{"class":3557},"\"expo-router\u002Fentry\"\n",[3512,7541,7543],{"id":7542},"_3-scheme","3. Scheme",[3517,7545,3925,7546,7548,7549,3987],{},[3533,7547,5554],{}," всередині ",[3533,7550,7551],{},"\"expo\"",[3526,7553,7555],{"className":5567,"code":7554,"language":5569,"meta":3531,"style":3531},"\"scheme\": \"couponapp\",\n\"plugins\": [\"expo-router\"]\n",[3533,7556,7557,7569],{"__ignoreMap":3531},[3536,7558,7559,7562,7564,7567],{"class":3538,"line":3539},[3536,7560,7561],{"class":3557},"\"scheme\"",[3536,7563,3613],{"class":3546},[3536,7565,7566],{"class":3557},"\"couponapp\"",[3536,7568,4390],{"class":3546},[3536,7570,7571,7574,7576,7579],{"class":3538,"line":4381},[3536,7572,7573],{"class":3557},"\"plugins\"",[3536,7575,7066],{"class":3546},[3536,7577,7578],{"class":3557},"\"expo-router\"",[3536,7580,7072],{"class":3546},[3512,7582,7584],{"id":7583},"_4-запуск-після-файлів","4. Запуск після файлів",[3526,7586,7588],{"className":6296,"code":7587,"language":6298,"meta":3531,"style":3531},"npx expo start\n",[3533,7589,7590],{"__ignoreMap":3531},[3536,7591,7592,7594,7596],{"class":3538,"line":3539},[3536,7593,7462],{"class":3550},[3536,7595,7498],{"class":3557},[3536,7597,7598],{"class":3557}," start\n",[3512,7600,7602],{"id":7601},"крок-2-дані","Крок 2. Дані",[3517,7604,7605,7606,3987],{},"Створіть ",[3533,7607,7608],{},"src\u002Fdata\u002Fcoupons.ts",[7610,7611,7613],"collapsible",{"title":7612},"Повний src\u002Fdata\u002Fcoupons.ts — розгорнути",[3526,7614,7618],{"className":7615,"code":7616,"language":7617,"meta":3531,"style":3531},"language-ts shiki shiki-themes light-plus dark-plus dark-plus","export type Coupon = {\n  code: string;\n  title: string;\n  description: string;\n  discountLabel: string;\n};\n\nexport const coupons: Coupon[] = [\n  {\n    code: 'SUMMER25',\n    title: 'Літо −25%',\n    description: 'Знижка на будь-який тур з виїздом у червні–серпні.',\n    discountLabel: '−25%',\n  },\n  {\n    code: 'WELCOME10',\n    title: 'Вітальний',\n    description: 'Для першої поїздки в застосунку.',\n    discountLabel: '−10%',\n  },\n  {\n    code: 'CITY50',\n    title: 'Міський вікенд',\n    description: '50 грн на каву в партнера (навчальний купон).',\n    discountLabel: '50 ₴',\n  },\n];\n\nexport function getCoupon(code: string): Coupon | undefined {\n  const normalized = code.trim().toUpperCase();\n  return coupons.find((c) => c.code === normalized);\n}\n","ts",[3533,7619,7620,7633,7644,7655,7666,7677,7682,7686,7704,7709,7719,7729,7739,7749,7753,7757,7766,7775,7784,7793,7797,7801,7811,7821,7831,7841,7846,7852,7857,7886,7912,7950],{"__ignoreMap":3531},[3536,7621,7622,7624,7627,7630],{"class":3538,"line":3539},[3536,7623,4753],{"class":4725},[3536,7625,7626],{"class":3561}," type",[3536,7628,7629],{"class":3616}," Coupon",[3536,7631,7632],{"class":3546}," = {\n",[3536,7634,7635,7638,7640,7642],{"class":3538,"line":4381},[3536,7636,7637],{"class":3542},"  code",[3536,7639,3613],{"class":3546},[3536,7641,3617],{"class":3616},[3536,7643,4742],{"class":3546},[3536,7645,7646,7649,7651,7653],{"class":3538,"line":4393},[3536,7647,7648],{"class":3542},"  title",[3536,7650,3613],{"class":3546},[3536,7652,3617],{"class":3616},[3536,7654,4742],{"class":3546},[3536,7656,7657,7660,7662,7664],{"class":3538,"line":4414},[3536,7658,7659],{"class":3542},"  description",[3536,7661,3613],{"class":3546},[3536,7663,3617],{"class":3616},[3536,7665,4742],{"class":3546},[3536,7667,7668,7671,7673,7675],{"class":3538,"line":4470},[3536,7669,7670],{"class":3542},"  discountLabel",[3536,7672,3613],{"class":3546},[3536,7674,3617],{"class":3616},[3536,7676,4742],{"class":3546},[3536,7678,7679],{"class":3538,"line":4479},[3536,7680,7681],{"class":3546},"};\n",[3536,7683,7684],{"class":3538,"line":4484},[3536,7685,4748],{"emptyLinePlaceholder":4747},[3536,7687,7688,7690,7693,7696,7698,7701],{"class":3538,"line":4490},[3536,7689,4753],{"class":4725},[3536,7691,7692],{"class":3561}," const",[3536,7694,7695],{"class":3599}," coupons",[3536,7697,3613],{"class":3546},[3536,7699,7700],{"class":3616},"Coupon",[3536,7702,7703],{"class":3546},"[] = [\n",[3536,7705,7706],{"class":3538,"line":7163},[3536,7707,7708],{"class":3546},"  {\n",[3536,7710,7711,7714,7717],{"class":3538,"line":7171},[3536,7712,7713],{"class":3542},"    code:",[3536,7715,7716],{"class":3557}," 'SUMMER25'",[3536,7718,4390],{"class":3546},[3536,7720,7721,7724,7727],{"class":3538,"line":7177},[3536,7722,7723],{"class":3542},"    title:",[3536,7725,7726],{"class":3557}," 'Літо −25%'",[3536,7728,4390],{"class":3546},[3536,7730,7731,7734,7737],{"class":3538,"line":7190},[3536,7732,7733],{"class":3542},"    description:",[3536,7735,7736],{"class":3557}," 'Знижка на будь-який тур з виїздом у червні–серпні.'",[3536,7738,4390],{"class":3546},[3536,7740,7741,7744,7747],{"class":3538,"line":7203},[3536,7742,7743],{"class":3542},"    discountLabel:",[3536,7745,7746],{"class":3557}," '−25%'",[3536,7748,4390],{"class":3546},[3536,7750,7751],{"class":3538,"line":7214},[3536,7752,4579],{"class":3546},[3536,7754,7755],{"class":3538,"line":7220},[3536,7756,7708],{"class":3546},[3536,7758,7759,7761,7764],{"class":3538,"line":7226},[3536,7760,7713],{"class":3542},[3536,7762,7763],{"class":3557}," 'WELCOME10'",[3536,7765,4390],{"class":3546},[3536,7767,7768,7770,7773],{"class":3538,"line":7244},[3536,7769,7723],{"class":3542},[3536,7771,7772],{"class":3557}," 'Вітальний'",[3536,7774,4390],{"class":3546},[3536,7776,7777,7779,7782],{"class":3538,"line":7250},[3536,7778,7733],{"class":3542},[3536,7780,7781],{"class":3557}," 'Для першої поїздки в застосунку.'",[3536,7783,4390],{"class":3546},[3536,7785,7786,7788,7791],{"class":3538,"line":7256},[3536,7787,7743],{"class":3542},[3536,7789,7790],{"class":3557}," '−10%'",[3536,7792,4390],{"class":3546},[3536,7794,7795],{"class":3538,"line":7261},[3536,7796,4579],{"class":3546},[3536,7798,7799],{"class":3538,"line":7266},[3536,7800,7708],{"class":3546},[3536,7802,7804,7806,7809],{"class":3538,"line":7803},22,[3536,7805,7713],{"class":3542},[3536,7807,7808],{"class":3557}," 'CITY50'",[3536,7810,4390],{"class":3546},[3536,7812,7814,7816,7819],{"class":3538,"line":7813},23,[3536,7815,7723],{"class":3542},[3536,7817,7818],{"class":3557}," 'Міський вікенд'",[3536,7820,4390],{"class":3546},[3536,7822,7824,7826,7829],{"class":3538,"line":7823},24,[3536,7825,7733],{"class":3542},[3536,7827,7828],{"class":3557}," '50 грн на каву в партнера (навчальний купон).'",[3536,7830,4390],{"class":3546},[3536,7832,7834,7836,7839],{"class":3538,"line":7833},25,[3536,7835,7743],{"class":3542},[3536,7837,7838],{"class":3557}," '50 ₴'",[3536,7840,4390],{"class":3546},[3536,7842,7844],{"class":3538,"line":7843},26,[3536,7845,4579],{"class":3546},[3536,7847,7849],{"class":3538,"line":7848},27,[3536,7850,7851],{"class":3546},"];\n",[3536,7853,7855],{"class":3538,"line":7854},28,[3536,7856,4748],{"emptyLinePlaceholder":4747},[3536,7858,7860,7862,7864,7867,7869,7871,7873,7875,7878,7880,7882,7884],{"class":3538,"line":7859},29,[3536,7861,4753],{"class":4725},[3536,7863,4759],{"class":3561},[3536,7865,7866],{"class":3550}," getCoupon",[3536,7868,3554],{"class":3546},[3536,7870,3533],{"class":3542},[3536,7872,3613],{"class":3546},[3536,7874,3617],{"class":3616},[3536,7876,7877],{"class":3546},"): ",[3536,7879,7700],{"class":3616},[3536,7881,4859],{"class":3546},[3536,7883,4813],{"class":3616},[3536,7885,4547],{"class":3546},[3536,7887,7889,7891,7894,7896,7898,7900,7903,7906,7909],{"class":3538,"line":7888},30,[3536,7890,4770],{"class":3561},[3536,7892,7893],{"class":3599}," normalized",[3536,7895,4874],{"class":3546},[3536,7897,3533],{"class":3542},[3536,7899,3547],{"class":3546},[3536,7901,7902],{"class":3550},"trim",[3536,7904,7905],{"class":3546},"().",[3536,7907,7908],{"class":3550},"toUpperCase",[3536,7910,7911],{"class":3546},"();\n",[3536,7913,7915,7917,7919,7921,7924,7927,7930,7933,7935,7938,7940,7942,7945,7948],{"class":3538,"line":7914},31,[3536,7916,4982],{"class":4725},[3536,7918,7695],{"class":3542},[3536,7920,3547],{"class":3546},[3536,7922,7923],{"class":3550},"find",[3536,7925,7926],{"class":3546},"((",[3536,7928,7929],{"class":3542},"c",[3536,7931,7932],{"class":3546},") ",[3536,7934,5042],{"class":3561},[3536,7936,7937],{"class":3542}," c",[3536,7939,3547],{"class":3546},[3536,7941,3533],{"class":3542},[3536,7943,7944],{"class":3546}," === ",[3536,7946,7947],{"class":3542},"normalized",[3536,7949,3580],{"class":3546},[3536,7951,7953],{"class":3538,"line":7952},32,[3536,7954,4476],{"class":3546},[3512,7956,7958,7959],{"id":7957},"крок-3-app_layouttsx","Крок 3. ",[3533,7960,7961],{},"app\u002F_layout.tsx",[7610,7963,7965],{"title":7964},"Повний app\u002F_layout.tsx — розгорнути",[3526,7966,7968],{"className":3528,"code":7967,"language":3530,"meta":3531,"style":3531},"import { Stack } from 'expo-router';\nimport { StatusBar } from 'expo-status-bar';\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=\"index\" options={{ title: 'Купони' }} \u002F>\n        \u003CStack.Screen name=\"coupon\u002F[code]\" options={{ title: 'Купон' }} \u002F>\n      \u003C\u002FStack>\n    \u003C\u002F>\n  );\n}\n",[3533,7969,7970,7987,8005,8009,8022,8028,8033,8049,8056,8067,8082,8092,8115,8128,8135,8140,8179,8211,8220,8225,8229],{"__ignoreMap":3531},[3536,7971,7972,7974,7976,7979,7981,7983,7985],{"class":3538,"line":3539},[3536,7973,4726],{"class":4725},[3536,7975,3596],{"class":3546},[3536,7977,7978],{"class":3542},"Stack",[3536,7980,4733],{"class":3546},[3536,7982,4736],{"class":4725},[3536,7984,4739],{"class":3557},[3536,7986,4742],{"class":3546},[3536,7988,7989,7991,7993,7996,7998,8000,8003],{"class":3538,"line":4381},[3536,7990,4726],{"class":4725},[3536,7992,3596],{"class":3546},[3536,7994,7995],{"class":3542},"StatusBar",[3536,7997,4733],{"class":3546},[3536,7999,4736],{"class":4725},[3536,8001,8002],{"class":3557}," 'expo-status-bar'",[3536,8004,4742],{"class":3546},[3536,8006,8007],{"class":3538,"line":4393},[3536,8008,4748],{"emptyLinePlaceholder":4747},[3536,8010,8011,8013,8015,8017,8020],{"class":3538,"line":4414},[3536,8012,4753],{"class":4725},[3536,8014,4756],{"class":4725},[3536,8016,4759],{"class":3561},[3536,8018,8019],{"class":3550}," RootLayout",[3536,8021,4765],{"class":3546},[3536,8023,8024,8026],{"class":3538,"line":4470},[3536,8025,4982],{"class":4725},[3536,8027,4985],{"class":3546},[3536,8029,8030],{"class":3538,"line":4479},[3536,8031,8032],{"class":4309},"    \u003C>\n",[3536,8034,8035,8037,8039,8042,8044,8047],{"class":3538,"line":4484},[3536,8036,5000],{"class":4309},[3536,8038,7995],{"class":3616},[3536,8040,8041],{"class":4315}," style",[3536,8043,4319],{"class":3546},[3536,8045,8046],{"class":3557},"\"dark\"",[3536,8048,5058],{"class":4309},[3536,8050,8051,8053],{"class":3538,"line":4490},[3536,8052,5000],{"class":4309},[3536,8054,8055],{"class":3616},"Stack\n",[3536,8057,8058,8061,8063,8065],{"class":3538,"line":7163},[3536,8059,8060],{"class":4315},"        screenOptions",[3536,8062,4319],{"class":3546},[3536,8064,4322],{"class":3561},[3536,8066,4441],{"class":3568},[3536,8068,8069,8072,8074,8077,8080],{"class":3538,"line":7171},[3536,8070,8071],{"class":3542},"          headerStyle:",[3536,8073,3596],{"class":3568},[3536,8075,8076],{"class":3542},"backgroundColor:",[3536,8078,8079],{"class":3557}," '#F8FAFC'",[3536,8081,4411],{"class":3568},[3536,8083,8084,8087,8090],{"class":3538,"line":7177},[3536,8085,8086],{"class":3542},"          headerTintColor:",[3536,8088,8089],{"class":3557}," '#2563EB'",[3536,8091,4390],{"class":3568},[3536,8093,8094,8097,8099,8102,8105,8107,8110,8113],{"class":3538,"line":7190},[3536,8095,8096],{"class":3542},"          headerTitleStyle:",[3536,8098,3596],{"class":3568},[3536,8100,8101],{"class":3542},"color:",[3536,8103,8104],{"class":3557}," '#0F172A'",[3536,8106,3755],{"class":3568},[3536,8108,8109],{"class":3542},"fontWeight:",[3536,8111,8112],{"class":3557}," '600'",[3536,8114,4411],{"class":3568},[3536,8116,8117,8120,8122,8124,8126],{"class":3538,"line":7203},[3536,8118,8119],{"class":3542},"          contentStyle:",[3536,8121,3596],{"class":3568},[3536,8123,8076],{"class":3542},[3536,8125,8079],{"class":3557},[3536,8127,4411],{"class":3568},[3536,8129,8130,8133],{"class":3538,"line":7214},[3536,8131,8132],{"class":3568},"        }",[3536,8134,4476],{"class":3561},[3536,8136,8137],{"class":3538,"line":7220},[3536,8138,8139],{"class":4309},"      >\n",[3536,8141,8142,8145,8148,8151,8153,8156,8159,8161,8163,8166,8169,8172,8175,8177],{"class":3538,"line":7226},[3536,8143,8144],{"class":4309},"        \u003C",[3536,8146,8147],{"class":3616},"Stack.Screen",[3536,8149,8150],{"class":4315}," name",[3536,8152,4319],{"class":3546},[3536,8154,8155],{"class":3557},"\"index\"",[3536,8157,8158],{"class":4315}," options",[3536,8160,4319],{"class":3546},[3536,8162,4322],{"class":3561},[3536,8164,8165],{"class":3568},"{ ",[3536,8167,8168],{"class":3542},"title:",[3536,8170,8171],{"class":3557}," 'Купони'",[3536,8173,8174],{"class":3568}," }",[3536,8176,3574],{"class":3561},[3536,8178,5058],{"class":4309},[3536,8180,8181,8183,8185,8187,8189,8192,8194,8196,8198,8200,8202,8205,8207,8209],{"class":3538,"line":7244},[3536,8182,8144],{"class":4309},[3536,8184,8147],{"class":3616},[3536,8186,8150],{"class":4315},[3536,8188,4319],{"class":3546},[3536,8190,8191],{"class":3557},"\"coupon\u002F[code]\"",[3536,8193,8158],{"class":4315},[3536,8195,4319],{"class":3546},[3536,8197,4322],{"class":3561},[3536,8199,8165],{"class":3568},[3536,8201,8168],{"class":3542},[3536,8203,8204],{"class":3557}," 'Купон'",[3536,8206,8174],{"class":3568},[3536,8208,3574],{"class":3561},[3536,8210,5058],{"class":4309},[3536,8212,8213,8216,8218],{"class":3538,"line":7250},[3536,8214,8215],{"class":4309},"      \u003C\u002F",[3536,8217,7978],{"class":3616},[3536,8219,4352],{"class":4309},[3536,8221,8222],{"class":3538,"line":7256},[3536,8223,8224],{"class":4309},"    \u003C\u002F>\n",[3536,8226,8227],{"class":3538,"line":7261},[3536,8228,5072],{"class":3546},[3536,8230,8231],{"class":3538,"line":7266},[3536,8232,4476],{"class":3546},[3512,8234,8236,8237],{"id":8235},"крок-4-головна-appindextsx","Крок 4. Головна — ",[3533,8238,8239],{},"app\u002Findex.tsx",[7610,8241,8243],{"title":8242},"Повний app\u002Findex.tsx — розгорнути",[3526,8244,8246],{"className":3528,"code":8245,"language":3530,"meta":3531,"style":3531},"import { FlatList, Pressable, StyleSheet, Text, View } from 'react-native';\nimport { Link, useRouter } from 'expo-router';\nimport * as Linking from 'expo-linking';\nimport { SafeAreaView } from 'react-native-safe-area-context';\n\nimport { coupons } from '..\u002Fsrc\u002Fdata\u002Fcoupons';\n\nexport default function HomeScreen() {\n  const router = useRouter();\n\n  const openDeepLink = async (code: string) => {\n    const url = Linking.createURL(`\u002Fcoupon\u002F${code}`);\n    await Linking.openURL(url);\n  };\n\n  return (\n    \u003CSafeAreaView style={styles.safe} edges={['bottom']}>\n      \u003CText style={styles.lead}>\n        Тап по картці — звичайний push. Кнопка «Deep link» — через\n        Linking.openURL(createURL), ніби ззовні.\n      \u003C\u002FText>\n      \u003CText style={styles.mono}>scheme: couponapp\u003C\u002FText>\n\n      \u003CFlatList\n        data={coupons}\n        keyExtractor={(item) => item.code}\n        contentContainerStyle={styles.list}\n        ItemSeparatorComponent={() => \u003CView style={{ height: 10 }} \u002F>}\n        renderItem={({ item }) => (\n          \u003CView style={styles.card}>\n            \u003CLink href={`\u002Fcoupon\u002F${item.code}`} asChild>\n              \u003CPressable>\n                \u003CText style={styles.cardTitle}>{item.title}\u003C\u002FText>\n                \u003CText style={styles.code}>{item.code}\u003C\u002FText>\n                \u003CText style={styles.muted}>{item.discountLabel}\u003C\u002FText>\n              \u003C\u002FPressable>\n            \u003C\u002FLink>\n            \u003CPressable\n              style={styles.secondaryBtn}\n              onPress={() => openDeepLink(item.code)}\n            >\n              \u003CText style={styles.secondaryBtnText}>Відкрити deep link\u003C\u002FText>\n            \u003C\u002FPressable>\n          \u003C\u002FView>\n        )}\n      \u002F>\n\n      \u003CPressable\n        style={styles.ghost}\n        onPress={() => router.push('\u002Fcoupon\u002FUNKNOWN')}\n      >\n        \u003CText style={styles.ghostText}>Тест: неіснуючий код\u003C\u002FText>\n      \u003C\u002FPressable>\n    \u003C\u002FSafeAreaView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  safe: { flex: 1, backgroundColor: '#F8FAFC' },\n  lead: {\n    paddingHorizontal: 16,\n    paddingTop: 8,\n    color: '#64748B',\n    fontSize: 13,\n    lineHeight: 18,\n  },\n  mono: {\n    paddingHorizontal: 16,\n    marginTop: 6,\n    marginBottom: 8,\n    color: '#2563EB',\n    fontSize: 12,\n    fontWeight: '600',\n  },\n  list: { padding: 16, paddingBottom: 24 },\n  card: {\n    backgroundColor: '#fff',\n    borderRadius: 12,\n    borderWidth: 1,\n    borderColor: '#E2E8F0',\n    padding: 14,\n    gap: 8,\n  },\n  cardTitle: { fontSize: 17, fontWeight: '700', color: '#0F172A' },\n  code: { fontSize: 20, fontWeight: '800', color: '#2563EB', letterSpacing: 1 },\n  muted: { color: '#64748B', fontSize: 13 },\n  secondaryBtn: {\n    marginTop: 4,\n    paddingVertical: 10,\n    borderRadius: 10,\n    borderWidth: 1,\n    borderColor: '#2563EB',\n    alignItems: 'center',\n  },\n  secondaryBtnText: { color: '#2563EB', fontWeight: '700' },\n  ghost: { padding: 16, alignItems: 'center' },\n  ghostText: { color: '#94A3B8', fontWeight: '600' },\n});\n",[3533,8247,8248,8284,8305,8321,8339,8343,8361,8365,8378,8390,8394,8420,8450,8467,8472,8476,8482,8523,8546,8551,8556,8564,8596,8600,8607,8620,8647,8665,8706,8727,8751,8785,8794,8836,8875,8916,8926,8936,8944,8963,8991,8997,9030,9039,9049,9057,9063,9068,9075,9094,9123,9128,9161,9170,9179,9184,9189,9194,9213,9235,9243,9254,9265,9276,9287,9298,9303,9311,9320,9331,9341,9350,9360,9370,9375,9398,9406,9417,9427,9437,9448,9459,9469,9474,9503,9538,9558,9566,9576,9586,9595,9604,9613,9624,9629,9649,9670,9691],{"__ignoreMap":3531},[3536,8249,8250,8252,8254,8257,8259,8262,8264,8267,8269,8271,8273,8275,8277,8279,8282],{"class":3538,"line":3539},[3536,8251,4726],{"class":4725},[3536,8253,3596],{"class":3546},[3536,8255,8256],{"class":3542},"FlatList",[3536,8258,3755],{"class":3546},[3536,8260,8261],{"class":3542},"Pressable",[3536,8263,3755],{"class":3546},[3536,8265,8266],{"class":3542},"StyleSheet",[3536,8268,3755],{"class":3546},[3536,8270,5003],{"class":3542},[3536,8272,3755],{"class":3546},[3536,8274,4993],{"class":3542},[3536,8276,4733],{"class":3546},[3536,8278,4736],{"class":4725},[3536,8280,8281],{"class":3557}," 'react-native'",[3536,8283,4742],{"class":3546},[3536,8285,8286,8288,8290,8292,8294,8297,8299,8301,8303],{"class":3538,"line":4381},[3536,8287,4726],{"class":4725},[3536,8289,3596],{"class":3546},[3536,8291,3754],{"class":3542},[3536,8293,3755],{"class":3546},[3536,8295,8296],{"class":3542},"useRouter",[3536,8298,4733],{"class":3546},[3536,8300,4736],{"class":4725},[3536,8302,4739],{"class":3557},[3536,8304,4742],{"class":3546},[3536,8306,8307,8309,8311,8313,8315,8317,8319],{"class":3538,"line":4393},[3536,8308,4726],{"class":4725},[3536,8310,5846],{"class":3561},[3536,8312,5849],{"class":4725},[3536,8314,5852],{"class":3542},[3536,8316,5855],{"class":4725},[3536,8318,5858],{"class":3557},[3536,8320,4742],{"class":3546},[3536,8322,8323,8325,8327,8330,8332,8334,8337],{"class":3538,"line":4414},[3536,8324,4726],{"class":4725},[3536,8326,3596],{"class":3546},[3536,8328,8329],{"class":3542},"SafeAreaView",[3536,8331,4733],{"class":3546},[3536,8333,4736],{"class":4725},[3536,8335,8336],{"class":3557}," 'react-native-safe-area-context'",[3536,8338,4742],{"class":3546},[3536,8340,8341],{"class":3538,"line":4470},[3536,8342,4748],{"emptyLinePlaceholder":4747},[3536,8344,8345,8347,8349,8352,8354,8356,8359],{"class":3538,"line":4479},[3536,8346,4726],{"class":4725},[3536,8348,3596],{"class":3546},[3536,8350,8351],{"class":3542},"coupons",[3536,8353,4733],{"class":3546},[3536,8355,4736],{"class":4725},[3536,8357,8358],{"class":3557}," '..\u002Fsrc\u002Fdata\u002Fcoupons'",[3536,8360,4742],{"class":3546},[3536,8362,8363],{"class":3538,"line":4484},[3536,8364,4748],{"emptyLinePlaceholder":4747},[3536,8366,8367,8369,8371,8373,8376],{"class":3538,"line":4490},[3536,8368,4753],{"class":4725},[3536,8370,4756],{"class":4725},[3536,8372,4759],{"class":3561},[3536,8374,8375],{"class":3550}," HomeScreen",[3536,8377,4765],{"class":3546},[3536,8379,8380,8382,8384,8386,8388],{"class":3538,"line":7163},[3536,8381,4770],{"class":3561},[3536,8383,5045],{"class":3599},[3536,8385,4874],{"class":3546},[3536,8387,8296],{"class":3550},[3536,8389,7911],{"class":3546},[3536,8391,8392],{"class":3538,"line":7171},[3536,8393,4748],{"emptyLinePlaceholder":4747},[3536,8395,8396,8398,8401,8403,8406,8408,8410,8412,8414,8416,8418],{"class":3538,"line":7177},[3536,8397,4770],{"class":3561},[3536,8399,8400],{"class":3550}," openDeepLink",[3536,8402,4874],{"class":3546},[3536,8404,8405],{"class":3561},"async",[3536,8407,5365],{"class":3546},[3536,8409,3533],{"class":3542},[3536,8411,3613],{"class":3546},[3536,8413,3617],{"class":3616},[3536,8415,7932],{"class":3546},[3536,8417,5042],{"class":3561},[3536,8419,4547],{"class":3546},[3536,8421,8422,8425,8427,8429,8431,8433,8435,8437,8440,8442,8444,8446,8448],{"class":3538,"line":7190},[3536,8423,8424],{"class":3561},"    const",[3536,8426,5871],{"class":3599},[3536,8428,4874],{"class":3546},[3536,8430,5876],{"class":3542},[3536,8432,3547],{"class":3546},[3536,8434,5881],{"class":3550},[3536,8436,3554],{"class":3546},[3536,8438,8439],{"class":3557},"`\u002Fcoupon\u002F",[3536,8441,3562],{"class":3561},[3536,8443,3533],{"class":3542},[3536,8445,3574],{"class":3561},[3536,8447,3577],{"class":3557},[3536,8449,3580],{"class":3546},[3536,8451,8452,8455,8457,8459,8461,8463,8465],{"class":3538,"line":7203},[3536,8453,8454],{"class":4725},"    await",[3536,8456,5852],{"class":3542},[3536,8458,3547],{"class":3546},[3536,8460,6067],{"class":3550},[3536,8462,3554],{"class":3546},[3536,8464,5908],{"class":3542},[3536,8466,3580],{"class":3546},[3536,8468,8469],{"class":3538,"line":7214},[3536,8470,8471],{"class":3546},"  };\n",[3536,8473,8474],{"class":3538,"line":7220},[3536,8475,4748],{"emptyLinePlaceholder":4747},[3536,8477,8478,8480],{"class":3538,"line":7226},[3536,8479,4982],{"class":4725},[3536,8481,4985],{"class":3546},[3536,8483,8484,8486,8488,8490,8492,8494,8497,8499,8502,8504,8507,8509,8511,8513,8516,8519,8521],{"class":3538,"line":7244},[3536,8485,4990],{"class":4309},[3536,8487,8329],{"class":3616},[3536,8489,8041],{"class":4315},[3536,8491,4319],{"class":3546},[3536,8493,4322],{"class":3561},[3536,8495,8496],{"class":3542},"styles",[3536,8498,3547],{"class":3568},[3536,8500,8501],{"class":3542},"safe",[3536,8503,3574],{"class":3561},[3536,8505,8506],{"class":4315}," edges",[3536,8508,4319],{"class":3546},[3536,8510,4322],{"class":3561},[3536,8512,4894],{"class":3568},[3536,8514,8515],{"class":3557},"'bottom'",[3536,8517,8518],{"class":3568},"]",[3536,8520,3574],{"class":3561},[3536,8522,4352],{"class":4309},[3536,8524,8525,8527,8529,8531,8533,8535,8537,8539,8542,8544],{"class":3538,"line":7250},[3536,8526,5000],{"class":4309},[3536,8528,5003],{"class":3616},[3536,8530,8041],{"class":4315},[3536,8532,4319],{"class":3546},[3536,8534,4322],{"class":3561},[3536,8536,8496],{"class":3542},[3536,8538,3547],{"class":3568},[3536,8540,8541],{"class":3542},"lead",[3536,8543,3574],{"class":3561},[3536,8545,4352],{"class":4309},[3536,8547,8548],{"class":3538,"line":7256},[3536,8549,8550],{"class":3546},"        Тап по картці — звичайний push. Кнопка «Deep link» — через\n",[3536,8552,8553],{"class":3538,"line":7261},[3536,8554,8555],{"class":3546},"        Linking.openURL(createURL), ніби ззовні.\n",[3536,8557,8558,8560,8562],{"class":3538,"line":7266},[3536,8559,8215],{"class":4309},[3536,8561,5003],{"class":3616},[3536,8563,4352],{"class":4309},[3536,8565,8566,8568,8570,8572,8574,8576,8578,8580,8583,8585,8587,8590,8592,8594],{"class":3538,"line":7803},[3536,8567,5000],{"class":4309},[3536,8569,5003],{"class":3616},[3536,8571,8041],{"class":4315},[3536,8573,4319],{"class":3546},[3536,8575,4322],{"class":3561},[3536,8577,8496],{"class":3542},[3536,8579,3547],{"class":3568},[3536,8581,8582],{"class":3542},"mono",[3536,8584,3574],{"class":3561},[3536,8586,4341],{"class":4309},[3536,8588,8589],{"class":3546},"scheme: couponapp",[3536,8591,4347],{"class":4309},[3536,8593,5003],{"class":3616},[3536,8595,4352],{"class":4309},[3536,8597,8598],{"class":3538,"line":7813},[3536,8599,4748],{"emptyLinePlaceholder":4747},[3536,8601,8602,8604],{"class":3538,"line":7823},[3536,8603,5000],{"class":4309},[3536,8605,8606],{"class":3616},"FlatList\n",[3536,8608,8609,8612,8614,8616,8618],{"class":3538,"line":7833},[3536,8610,8611],{"class":4315},"        data",[3536,8613,4319],{"class":3546},[3536,8615,4322],{"class":3561},[3536,8617,8351],{"class":3542},[3536,8619,4476],{"class":3561},[3536,8621,8622,8625,8627,8629,8631,8634,8636,8638,8641,8643,8645],{"class":3538,"line":7843},[3536,8623,8624],{"class":4315},"        keyExtractor",[3536,8626,4319],{"class":3546},[3536,8628,4322],{"class":3561},[3536,8630,3554],{"class":3568},[3536,8632,8633],{"class":3542},"item",[3536,8635,7932],{"class":3568},[3536,8637,5042],{"class":3561},[3536,8639,8640],{"class":3542}," item",[3536,8642,3547],{"class":3568},[3536,8644,3533],{"class":3542},[3536,8646,4476],{"class":3561},[3536,8648,8649,8652,8654,8656,8658,8660,8663],{"class":3538,"line":7848},[3536,8650,8651],{"class":4315},"        contentContainerStyle",[3536,8653,4319],{"class":3546},[3536,8655,4322],{"class":3561},[3536,8657,8496],{"class":3542},[3536,8659,3547],{"class":3568},[3536,8661,8662],{"class":3542},"list",[3536,8664,4476],{"class":3561},[3536,8666,8667,8670,8672,8674,8676,8678,8681,8683,8685,8687,8689,8691,8694,8697,8699,8701,8704],{"class":3538,"line":7854},[3536,8668,8669],{"class":4315},"        ItemSeparatorComponent",[3536,8671,4319],{"class":3546},[3536,8673,4322],{"class":3561},[3536,8675,5039],{"class":3568},[3536,8677,5042],{"class":3561},[3536,8679,8680],{"class":4309}," \u003C",[3536,8682,4993],{"class":3616},[3536,8684,8041],{"class":4315},[3536,8686,4319],{"class":3546},[3536,8688,4322],{"class":3561},[3536,8690,8165],{"class":3568},[3536,8692,8693],{"class":3542},"height:",[3536,8695,8696],{"class":4897}," 10",[3536,8698,8174],{"class":3568},[3536,8700,3574],{"class":3561},[3536,8702,8703],{"class":4309}," \u002F>",[3536,8705,4476],{"class":3561},[3536,8707,8708,8711,8713,8715,8718,8720,8723,8725],{"class":3538,"line":7859},[3536,8709,8710],{"class":4315},"        renderItem",[3536,8712,4319],{"class":3546},[3536,8714,4322],{"class":3561},[3536,8716,8717],{"class":3568},"({ ",[3536,8719,8633],{"class":3542},[3536,8721,8722],{"class":3568}," }) ",[3536,8724,5042],{"class":3561},[3536,8726,4985],{"class":3568},[3536,8728,8729,8732,8734,8736,8738,8740,8742,8744,8747,8749],{"class":3538,"line":7888},[3536,8730,8731],{"class":4309},"          \u003C",[3536,8733,4993],{"class":3616},[3536,8735,8041],{"class":4315},[3536,8737,4319],{"class":3546},[3536,8739,4322],{"class":3561},[3536,8741,8496],{"class":3542},[3536,8743,3547],{"class":3568},[3536,8745,8746],{"class":3542},"card",[3536,8748,3574],{"class":3561},[3536,8750,4352],{"class":4309},[3536,8752,8753,8756,8758,8760,8762,8764,8766,8768,8770,8772,8774,8776,8778,8780,8783],{"class":3538,"line":7914},[3536,8754,8755],{"class":4309},"            \u003C",[3536,8757,3754],{"class":3616},[3536,8759,4316],{"class":4315},[3536,8761,4319],{"class":3546},[3536,8763,4322],{"class":3561},[3536,8765,8439],{"class":3557},[3536,8767,3562],{"class":3561},[3536,8769,8633],{"class":3542},[3536,8771,3547],{"class":3568},[3536,8773,3533],{"class":3542},[3536,8775,3574],{"class":3561},[3536,8777,3577],{"class":3557},[3536,8779,3574],{"class":3561},[3536,8781,8782],{"class":4315}," asChild",[3536,8784,4352],{"class":4309},[3536,8786,8787,8790,8792],{"class":3538,"line":7952},[3536,8788,8789],{"class":4309},"              \u003C",[3536,8791,8261],{"class":3616},[3536,8793,4352],{"class":4309},[3536,8795,8797,8800,8802,8804,8806,8808,8810,8812,8815,8817,8819,8821,8823,8825,8828,8830,8832,8834],{"class":3538,"line":8796},33,[3536,8798,8799],{"class":4309},"                \u003C",[3536,8801,5003],{"class":3616},[3536,8803,8041],{"class":4315},[3536,8805,4319],{"class":3546},[3536,8807,4322],{"class":3561},[3536,8809,8496],{"class":3542},[3536,8811,3547],{"class":3568},[3536,8813,8814],{"class":3542},"cardTitle",[3536,8816,3574],{"class":3561},[3536,8818,4341],{"class":4309},[3536,8820,4322],{"class":3561},[3536,8822,8633],{"class":3542},[3536,8824,3547],{"class":3568},[3536,8826,8827],{"class":3542},"title",[3536,8829,3574],{"class":3561},[3536,8831,4347],{"class":4309},[3536,8833,5003],{"class":3616},[3536,8835,4352],{"class":4309},[3536,8837,8839,8841,8843,8845,8847,8849,8851,8853,8855,8857,8859,8861,8863,8865,8867,8869,8871,8873],{"class":3538,"line":8838},34,[3536,8840,8799],{"class":4309},[3536,8842,5003],{"class":3616},[3536,8844,8041],{"class":4315},[3536,8846,4319],{"class":3546},[3536,8848,4322],{"class":3561},[3536,8850,8496],{"class":3542},[3536,8852,3547],{"class":3568},[3536,8854,3533],{"class":3542},[3536,8856,3574],{"class":3561},[3536,8858,4341],{"class":4309},[3536,8860,4322],{"class":3561},[3536,8862,8633],{"class":3542},[3536,8864,3547],{"class":3568},[3536,8866,3533],{"class":3542},[3536,8868,3574],{"class":3561},[3536,8870,4347],{"class":4309},[3536,8872,5003],{"class":3616},[3536,8874,4352],{"class":4309},[3536,8876,8878,8880,8882,8884,8886,8888,8890,8892,8895,8897,8899,8901,8903,8905,8908,8910,8912,8914],{"class":3538,"line":8877},35,[3536,8879,8799],{"class":4309},[3536,8881,5003],{"class":3616},[3536,8883,8041],{"class":4315},[3536,8885,4319],{"class":3546},[3536,8887,4322],{"class":3561},[3536,8889,8496],{"class":3542},[3536,8891,3547],{"class":3568},[3536,8893,8894],{"class":3542},"muted",[3536,8896,3574],{"class":3561},[3536,8898,4341],{"class":4309},[3536,8900,4322],{"class":3561},[3536,8902,8633],{"class":3542},[3536,8904,3547],{"class":3568},[3536,8906,8907],{"class":3542},"discountLabel",[3536,8909,3574],{"class":3561},[3536,8911,4347],{"class":4309},[3536,8913,5003],{"class":3616},[3536,8915,4352],{"class":4309},[3536,8917,8919,8922,8924],{"class":3538,"line":8918},36,[3536,8920,8921],{"class":4309},"              \u003C\u002F",[3536,8923,8261],{"class":3616},[3536,8925,4352],{"class":4309},[3536,8927,8929,8932,8934],{"class":3538,"line":8928},37,[3536,8930,8931],{"class":4309},"            \u003C\u002F",[3536,8933,3754],{"class":3616},[3536,8935,4352],{"class":4309},[3536,8937,8939,8941],{"class":3538,"line":8938},38,[3536,8940,8755],{"class":4309},[3536,8942,8943],{"class":3616},"Pressable\n",[3536,8945,8947,8950,8952,8954,8956,8958,8961],{"class":3538,"line":8946},39,[3536,8948,8949],{"class":4315},"              style",[3536,8951,4319],{"class":3546},[3536,8953,4322],{"class":3561},[3536,8955,8496],{"class":3542},[3536,8957,3547],{"class":3568},[3536,8959,8960],{"class":3542},"secondaryBtn",[3536,8962,4476],{"class":3561},[3536,8964,8966,8969,8971,8973,8975,8977,8979,8981,8983,8985,8987,8989],{"class":3538,"line":8965},40,[3536,8967,8968],{"class":4315},"              onPress",[3536,8970,4319],{"class":3546},[3536,8972,4322],{"class":3561},[3536,8974,5039],{"class":3568},[3536,8976,5042],{"class":3561},[3536,8978,8400],{"class":3550},[3536,8980,3554],{"class":3568},[3536,8982,8633],{"class":3542},[3536,8984,3547],{"class":3568},[3536,8986,3533],{"class":3542},[3536,8988,3835],{"class":3568},[3536,8990,4476],{"class":3561},[3536,8992,8994],{"class":3538,"line":8993},41,[3536,8995,8996],{"class":4309},"            >\n",[3536,8998,9000,9002,9004,9006,9008,9010,9012,9014,9017,9019,9021,9024,9026,9028],{"class":3538,"line":8999},42,[3536,9001,8789],{"class":4309},[3536,9003,5003],{"class":3616},[3536,9005,8041],{"class":4315},[3536,9007,4319],{"class":3546},[3536,9009,4322],{"class":3561},[3536,9011,8496],{"class":3542},[3536,9013,3547],{"class":3568},[3536,9015,9016],{"class":3542},"secondaryBtnText",[3536,9018,3574],{"class":3561},[3536,9020,4341],{"class":4309},[3536,9022,9023],{"class":3568},"Відкрити deep link",[3536,9025,4347],{"class":4309},[3536,9027,5003],{"class":3616},[3536,9029,4352],{"class":4309},[3536,9031,9033,9035,9037],{"class":3538,"line":9032},43,[3536,9034,8931],{"class":4309},[3536,9036,8261],{"class":3616},[3536,9038,4352],{"class":4309},[3536,9040,9042,9045,9047],{"class":3538,"line":9041},44,[3536,9043,9044],{"class":4309},"          \u003C\u002F",[3536,9046,4993],{"class":3616},[3536,9048,4352],{"class":4309},[3536,9050,9052,9055],{"class":3538,"line":9051},45,[3536,9053,9054],{"class":3568},"        )",[3536,9056,4476],{"class":3561},[3536,9058,9060],{"class":3538,"line":9059},46,[3536,9061,9062],{"class":4309},"      \u002F>\n",[3536,9064,9066],{"class":3538,"line":9065},47,[3536,9067,4748],{"emptyLinePlaceholder":4747},[3536,9069,9071,9073],{"class":3538,"line":9070},48,[3536,9072,5000],{"class":4309},[3536,9074,8943],{"class":3616},[3536,9076,9078,9081,9083,9085,9087,9089,9092],{"class":3538,"line":9077},49,[3536,9079,9080],{"class":4315},"        style",[3536,9082,4319],{"class":3546},[3536,9084,4322],{"class":3561},[3536,9086,8496],{"class":3542},[3536,9088,3547],{"class":3568},[3536,9090,9091],{"class":3542},"ghost",[3536,9093,4476],{"class":3561},[3536,9095,9097,9100,9102,9104,9106,9108,9110,9112,9114,9116,9119,9121],{"class":3538,"line":9096},50,[3536,9098,9099],{"class":4315},"        onPress",[3536,9101,4319],{"class":3546},[3536,9103,4322],{"class":3561},[3536,9105,5039],{"class":3568},[3536,9107,5042],{"class":3561},[3536,9109,5045],{"class":3542},[3536,9111,3547],{"class":3568},[3536,9113,3551],{"class":3550},[3536,9115,3554],{"class":3568},[3536,9117,9118],{"class":3557},"'\u002Fcoupon\u002FUNKNOWN'",[3536,9120,3835],{"class":3568},[3536,9122,4476],{"class":3561},[3536,9124,9126],{"class":3538,"line":9125},51,[3536,9127,8139],{"class":4309},[3536,9129,9131,9133,9135,9137,9139,9141,9143,9145,9148,9150,9152,9155,9157,9159],{"class":3538,"line":9130},52,[3536,9132,8144],{"class":4309},[3536,9134,5003],{"class":3616},[3536,9136,8041],{"class":4315},[3536,9138,4319],{"class":3546},[3536,9140,4322],{"class":3561},[3536,9142,8496],{"class":3542},[3536,9144,3547],{"class":3568},[3536,9146,9147],{"class":3542},"ghostText",[3536,9149,3574],{"class":3561},[3536,9151,4341],{"class":4309},[3536,9153,9154],{"class":3546},"Тест: неіснуючий код",[3536,9156,4347],{"class":4309},[3536,9158,5003],{"class":3616},[3536,9160,4352],{"class":4309},[3536,9162,9164,9166,9168],{"class":3538,"line":9163},53,[3536,9165,8215],{"class":4309},[3536,9167,8261],{"class":3616},[3536,9169,4352],{"class":4309},[3536,9171,9173,9175,9177],{"class":3538,"line":9172},54,[3536,9174,5063],{"class":4309},[3536,9176,8329],{"class":3616},[3536,9178,4352],{"class":4309},[3536,9180,9182],{"class":3538,"line":9181},55,[3536,9183,5072],{"class":3546},[3536,9185,9187],{"class":3538,"line":9186},56,[3536,9188,4476],{"class":3546},[3536,9190,9192],{"class":3538,"line":9191},57,[3536,9193,4748],{"emptyLinePlaceholder":4747},[3536,9195,9197,9199,9202,9204,9206,9208,9211],{"class":3538,"line":9196},58,[3536,9198,3593],{"class":3561},[3536,9200,9201],{"class":3599}," styles",[3536,9203,4874],{"class":3546},[3536,9205,8266],{"class":3542},[3536,9207,3547],{"class":3546},[3536,9209,9210],{"class":3550},"create",[3536,9212,4378],{"class":3546},[3536,9214,9216,9219,9221,9224,9227,9229,9231,9233],{"class":3538,"line":9215},59,[3536,9217,9218],{"class":3542},"  safe:",[3536,9220,3596],{"class":3546},[3536,9222,9223],{"class":3542},"flex:",[3536,9225,9226],{"class":4897}," 1",[3536,9228,3755],{"class":3546},[3536,9230,8076],{"class":3542},[3536,9232,8079],{"class":3557},[3536,9234,4411],{"class":3546},[3536,9236,9238,9241],{"class":3538,"line":9237},60,[3536,9239,9240],{"class":3542},"  lead:",[3536,9242,4547],{"class":3546},[3536,9244,9246,9249,9252],{"class":3538,"line":9245},61,[3536,9247,9248],{"class":3542},"    paddingHorizontal:",[3536,9250,9251],{"class":4897}," 16",[3536,9253,4390],{"class":3546},[3536,9255,9257,9260,9263],{"class":3538,"line":9256},62,[3536,9258,9259],{"class":3542},"    paddingTop:",[3536,9261,9262],{"class":4897}," 8",[3536,9264,4390],{"class":3546},[3536,9266,9268,9271,9274],{"class":3538,"line":9267},63,[3536,9269,9270],{"class":3542},"    color:",[3536,9272,9273],{"class":3557}," '#64748B'",[3536,9275,4390],{"class":3546},[3536,9277,9279,9282,9285],{"class":3538,"line":9278},64,[3536,9280,9281],{"class":3542},"    fontSize:",[3536,9283,9284],{"class":4897}," 13",[3536,9286,4390],{"class":3546},[3536,9288,9290,9293,9296],{"class":3538,"line":9289},65,[3536,9291,9292],{"class":3542},"    lineHeight:",[3536,9294,9295],{"class":4897}," 18",[3536,9297,4390],{"class":3546},[3536,9299,9301],{"class":3538,"line":9300},66,[3536,9302,4579],{"class":3546},[3536,9304,9306,9309],{"class":3538,"line":9305},67,[3536,9307,9308],{"class":3542},"  mono:",[3536,9310,4547],{"class":3546},[3536,9312,9314,9316,9318],{"class":3538,"line":9313},68,[3536,9315,9248],{"class":3542},[3536,9317,9251],{"class":4897},[3536,9319,4390],{"class":3546},[3536,9321,9323,9326,9329],{"class":3538,"line":9322},69,[3536,9324,9325],{"class":3542},"    marginTop:",[3536,9327,9328],{"class":4897}," 6",[3536,9330,4390],{"class":3546},[3536,9332,9334,9337,9339],{"class":3538,"line":9333},70,[3536,9335,9336],{"class":3542},"    marginBottom:",[3536,9338,9262],{"class":4897},[3536,9340,4390],{"class":3546},[3536,9342,9344,9346,9348],{"class":3538,"line":9343},71,[3536,9345,9270],{"class":3542},[3536,9347,8089],{"class":3557},[3536,9349,4390],{"class":3546},[3536,9351,9353,9355,9358],{"class":3538,"line":9352},72,[3536,9354,9281],{"class":3542},[3536,9356,9357],{"class":4897}," 12",[3536,9359,4390],{"class":3546},[3536,9361,9363,9366,9368],{"class":3538,"line":9362},73,[3536,9364,9365],{"class":3542},"    fontWeight:",[3536,9367,8112],{"class":3557},[3536,9369,4390],{"class":3546},[3536,9371,9373],{"class":3538,"line":9372},74,[3536,9374,4579],{"class":3546},[3536,9376,9378,9381,9383,9386,9388,9390,9393,9396],{"class":3538,"line":9377},75,[3536,9379,9380],{"class":3542},"  list:",[3536,9382,3596],{"class":3546},[3536,9384,9385],{"class":3542},"padding:",[3536,9387,9251],{"class":4897},[3536,9389,3755],{"class":3546},[3536,9391,9392],{"class":3542},"paddingBottom:",[3536,9394,9395],{"class":4897}," 24",[3536,9397,4411],{"class":3546},[3536,9399,9401,9404],{"class":3538,"line":9400},76,[3536,9402,9403],{"class":3542},"  card:",[3536,9405,4547],{"class":3546},[3536,9407,9409,9412,9415],{"class":3538,"line":9408},77,[3536,9410,9411],{"class":3542},"    backgroundColor:",[3536,9413,9414],{"class":3557}," '#fff'",[3536,9416,4390],{"class":3546},[3536,9418,9420,9423,9425],{"class":3538,"line":9419},78,[3536,9421,9422],{"class":3542},"    borderRadius:",[3536,9424,9357],{"class":4897},[3536,9426,4390],{"class":3546},[3536,9428,9430,9433,9435],{"class":3538,"line":9429},79,[3536,9431,9432],{"class":3542},"    borderWidth:",[3536,9434,9226],{"class":4897},[3536,9436,4390],{"class":3546},[3536,9438,9440,9443,9446],{"class":3538,"line":9439},80,[3536,9441,9442],{"class":3542},"    borderColor:",[3536,9444,9445],{"class":3557}," '#E2E8F0'",[3536,9447,4390],{"class":3546},[3536,9449,9451,9454,9457],{"class":3538,"line":9450},81,[3536,9452,9453],{"class":3542},"    padding:",[3536,9455,9456],{"class":4897}," 14",[3536,9458,4390],{"class":3546},[3536,9460,9462,9465,9467],{"class":3538,"line":9461},82,[3536,9463,9464],{"class":3542},"    gap:",[3536,9466,9262],{"class":4897},[3536,9468,4390],{"class":3546},[3536,9470,9472],{"class":3538,"line":9471},83,[3536,9473,4579],{"class":3546},[3536,9475,9477,9480,9482,9485,9488,9490,9492,9495,9497,9499,9501],{"class":3538,"line":9476},84,[3536,9478,9479],{"class":3542},"  cardTitle:",[3536,9481,3596],{"class":3546},[3536,9483,9484],{"class":3542},"fontSize:",[3536,9486,9487],{"class":4897}," 17",[3536,9489,3755],{"class":3546},[3536,9491,8109],{"class":3542},[3536,9493,9494],{"class":3557}," '700'",[3536,9496,3755],{"class":3546},[3536,9498,8101],{"class":3542},[3536,9500,8104],{"class":3557},[3536,9502,4411],{"class":3546},[3536,9504,9506,9509,9511,9513,9516,9518,9520,9523,9525,9527,9529,9531,9534,9536],{"class":3538,"line":9505},85,[3536,9507,9508],{"class":3542},"  code:",[3536,9510,3596],{"class":3546},[3536,9512,9484],{"class":3542},[3536,9514,9515],{"class":4897}," 20",[3536,9517,3755],{"class":3546},[3536,9519,8109],{"class":3542},[3536,9521,9522],{"class":3557}," '800'",[3536,9524,3755],{"class":3546},[3536,9526,8101],{"class":3542},[3536,9528,8089],{"class":3557},[3536,9530,3755],{"class":3546},[3536,9532,9533],{"class":3542},"letterSpacing:",[3536,9535,9226],{"class":4897},[3536,9537,4411],{"class":3546},[3536,9539,9541,9544,9546,9548,9550,9552,9554,9556],{"class":3538,"line":9540},86,[3536,9542,9543],{"class":3542},"  muted:",[3536,9545,3596],{"class":3546},[3536,9547,8101],{"class":3542},[3536,9549,9273],{"class":3557},[3536,9551,3755],{"class":3546},[3536,9553,9484],{"class":3542},[3536,9555,9284],{"class":4897},[3536,9557,4411],{"class":3546},[3536,9559,9561,9564],{"class":3538,"line":9560},87,[3536,9562,9563],{"class":3542},"  secondaryBtn:",[3536,9565,4547],{"class":3546},[3536,9567,9569,9571,9574],{"class":3538,"line":9568},88,[3536,9570,9325],{"class":3542},[3536,9572,9573],{"class":4897}," 4",[3536,9575,4390],{"class":3546},[3536,9577,9579,9582,9584],{"class":3538,"line":9578},89,[3536,9580,9581],{"class":3542},"    paddingVertical:",[3536,9583,8696],{"class":4897},[3536,9585,4390],{"class":3546},[3536,9587,9589,9591,9593],{"class":3538,"line":9588},90,[3536,9590,9422],{"class":3542},[3536,9592,8696],{"class":4897},[3536,9594,4390],{"class":3546},[3536,9596,9598,9600,9602],{"class":3538,"line":9597},91,[3536,9599,9432],{"class":3542},[3536,9601,9226],{"class":4897},[3536,9603,4390],{"class":3546},[3536,9605,9607,9609,9611],{"class":3538,"line":9606},92,[3536,9608,9442],{"class":3542},[3536,9610,8089],{"class":3557},[3536,9612,4390],{"class":3546},[3536,9614,9616,9619,9622],{"class":3538,"line":9615},93,[3536,9617,9618],{"class":3542},"    alignItems:",[3536,9620,9621],{"class":3557}," 'center'",[3536,9623,4390],{"class":3546},[3536,9625,9627],{"class":3538,"line":9626},94,[3536,9628,4579],{"class":3546},[3536,9630,9632,9635,9637,9639,9641,9643,9645,9647],{"class":3538,"line":9631},95,[3536,9633,9634],{"class":3542},"  secondaryBtnText:",[3536,9636,3596],{"class":3546},[3536,9638,8101],{"class":3542},[3536,9640,8089],{"class":3557},[3536,9642,3755],{"class":3546},[3536,9644,8109],{"class":3542},[3536,9646,9494],{"class":3557},[3536,9648,4411],{"class":3546},[3536,9650,9652,9655,9657,9659,9661,9663,9666,9668],{"class":3538,"line":9651},96,[3536,9653,9654],{"class":3542},"  ghost:",[3536,9656,3596],{"class":3546},[3536,9658,9385],{"class":3542},[3536,9660,9251],{"class":4897},[3536,9662,3755],{"class":3546},[3536,9664,9665],{"class":3542},"alignItems:",[3536,9667,9621],{"class":3557},[3536,9669,4411],{"class":3546},[3536,9671,9673,9676,9678,9680,9683,9685,9687,9689],{"class":3538,"line":9672},97,[3536,9674,9675],{"class":3542},"  ghostText:",[3536,9677,3596],{"class":3546},[3536,9679,8101],{"class":3542},[3536,9681,9682],{"class":3557}," '#94A3B8'",[3536,9684,3755],{"class":3546},[3536,9686,8109],{"class":3542},[3536,9688,8112],{"class":3557},[3536,9690,4411],{"class":3546},[3536,9692,9694],{"class":3538,"line":9693},98,[3536,9695,4417],{"class":3546},[3512,9697,9699,9700],{"id":9698},"крок-5-екран-купона-appcouponcodetsx","Крок 5. Екран купона — ",[3533,9701,9702],{},"app\u002Fcoupon\u002F[code].tsx",[7610,9704,9706],{"title":9705},"Повний app\u002Fcoupon\u002F[code].tsx — розгорнути",[3526,9707,9709],{"className":3528,"code":9708,"language":3530,"meta":3531,"style":3531},"import { Alert, Pressable, StyleSheet, Text, View } from 'react-native';\nimport { Stack, useLocalSearchParams, useRouter } from 'expo-router';\nimport * as Linking from 'expo-linking';\n\nimport { getCoupon } from '..\u002F..\u002Fsrc\u002Fdata\u002Fcoupons';\n\nexport default function CouponScreen() {\n  const { code } = useLocalSearchParams\u003C{ code: string | string[] }>();\n  const raw = Array.isArray(code) ? code[0] : code;\n  const coupon = raw ? getCoupon(raw) : undefined;\n  const router = useRouter();\n\n  const deepLink = raw\n    ? Linking.createURL(`\u002Fcoupon\u002F${String(raw).toUpperCase()}`)\n    : '';\n\n  if (!coupon) {\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}>Код: {String(raw)}\u003C\u002FText>\n        \u003CPressable style={styles.btn} onPress={() => router.back()}>\n          \u003CText style={styles.btnText}>Назад\u003C\u002FText>\n        \u003C\u002FPressable>\n      \u003C\u002FView>\n    );\n  }\n\n  return (\n    \u003CView style={styles.body}>\n      \u003CStack.Screen options={{ title: coupon.title }} \u002F>\n      \u003CText style={styles.discount}>{coupon.discountLabel}\u003C\u002FText>\n      \u003CText style={styles.code}>{coupon.code}\u003C\u002FText>\n      \u003CText style={styles.desc}>{coupon.description}\u003C\u002FText>\n      \u003CText style={styles.muted}>Deep link цього екрана:\u003C\u002FText>\n      \u003CText style={styles.link}>{deepLink}\u003C\u002FText>\n      \u003CPressable\n        style={styles.btn}\n        onPress={() => Alert.alert('Купон', `Умовно застосовано ${coupon.code}`)}\n      >\n        \u003CText style={styles.btnText}>Застосувати\u003C\u002FText>\n      \u003C\u002FPressable>\n    \u003C\u002FView>\n  );\n}\n\nconst styles = StyleSheet.create({\n  body: { flex: 1, padding: 24, backgroundColor: '#F8FAFC', gap: 10 },\n  center: {\n    flex: 1,\n    padding: 24,\n    justifyContent: 'center',\n    alignItems: 'center',\n    backgroundColor: '#F8FAFC',\n    gap: 8,\n  },\n  title: { fontSize: 22, fontWeight: '800', color: '#0F172A' },\n  discount: { fontSize: 36, fontWeight: '800', color: '#16A34A' },\n  code: {\n    fontSize: 28,\n    fontWeight: '800',\n    color: '#2563EB',\n    letterSpacing: 2,\n  },\n  desc: { fontSize: 16, lineHeight: 24, color: '#334155', marginTop: 8 },\n  muted: { color: '#64748B', fontSize: 13, marginTop: 16 },\n  link: { color: '#0F172A', fontSize: 12, fontWeight: '600' },\n  btn: {\n    marginTop: 24,\n    backgroundColor: '#2563EB',\n    paddingVertical: 14,\n    borderRadius: 12,\n    alignItems: 'center',\n    alignSelf: 'stretch',\n  },\n  btnText: { color: '#fff', fontWeight: '800' },\n});\n",[3533,9710,9711,9744,9768,9784,9788,9806,9810,9823,9849,9882,9910,9922,9926,9938,9975,9985,9989,10001,10008,10031,10056,10087,10129,10172,10204,10213,10221,10226,10230,10234,10240,10263,10291,10330,10368,10408,10439,10475,10481,10497,10543,10547,10578,10586,10594,10598,10602,10606,10622,10654,10661,10670,10678,10687,10695,10703,10711,10715,10741,10768,10774,10783,10791,10799,10809,10813,10847,10871,10896,10903,10911,10919,10927,10935,10943,10953,10957,10976],{"__ignoreMap":3531},[3536,9712,9713,9715,9717,9720,9722,9724,9726,9728,9730,9732,9734,9736,9738,9740,9742],{"class":3538,"line":3539},[3536,9714,4726],{"class":4725},[3536,9716,3596],{"class":3546},[3536,9718,9719],{"class":3542},"Alert",[3536,9721,3755],{"class":3546},[3536,9723,8261],{"class":3542},[3536,9725,3755],{"class":3546},[3536,9727,8266],{"class":3542},[3536,9729,3755],{"class":3546},[3536,9731,5003],{"class":3542},[3536,9733,3755],{"class":3546},[3536,9735,4993],{"class":3542},[3536,9737,4733],{"class":3546},[3536,9739,4736],{"class":4725},[3536,9741,8281],{"class":3557},[3536,9743,4742],{"class":3546},[3536,9745,9746,9748,9750,9752,9754,9756,9758,9760,9762,9764,9766],{"class":3538,"line":4381},[3536,9747,4726],{"class":4725},[3536,9749,3596],{"class":3546},[3536,9751,7978],{"class":3542},[3536,9753,3755],{"class":3546},[3536,9755,3605],{"class":3542},[3536,9757,3755],{"class":3546},[3536,9759,8296],{"class":3542},[3536,9761,4733],{"class":3546},[3536,9763,4736],{"class":4725},[3536,9765,4739],{"class":3557},[3536,9767,4742],{"class":3546},[3536,9769,9770,9772,9774,9776,9778,9780,9782],{"class":3538,"line":4393},[3536,9771,4726],{"class":4725},[3536,9773,5846],{"class":3561},[3536,9775,5849],{"class":4725},[3536,9777,5852],{"class":3542},[3536,9779,5855],{"class":4725},[3536,9781,5858],{"class":3557},[3536,9783,4742],{"class":3546},[3536,9785,9786],{"class":3538,"line":4414},[3536,9787,4748],{"emptyLinePlaceholder":4747},[3536,9789,9790,9792,9794,9797,9799,9801,9804],{"class":3538,"line":4470},[3536,9791,4726],{"class":4725},[3536,9793,3596],{"class":3546},[3536,9795,9796],{"class":3542},"getCoupon",[3536,9798,4733],{"class":3546},[3536,9800,4736],{"class":4725},[3536,9802,9803],{"class":3557}," '..\u002F..\u002Fsrc\u002Fdata\u002Fcoupons'",[3536,9805,4742],{"class":3546},[3536,9807,9808],{"class":3538,"line":4479},[3536,9809,4748],{"emptyLinePlaceholder":4747},[3536,9811,9812,9814,9816,9818,9821],{"class":3538,"line":4484},[3536,9813,4753],{"class":4725},[3536,9815,4756],{"class":4725},[3536,9817,4759],{"class":3561},[3536,9819,9820],{"class":3550}," CouponScreen",[3536,9822,4765],{"class":3546},[3536,9824,9825,9827,9829,9831,9833,9835,9837,9839,9841,9843,9845,9847],{"class":3538,"line":4490},[3536,9826,4770],{"class":3561},[3536,9828,3596],{"class":3546},[3536,9830,3533],{"class":3599},[3536,9832,3602],{"class":3546},[3536,9834,3605],{"class":3550},[3536,9836,3608],{"class":3546},[3536,9838,3533],{"class":3542},[3536,9840,3613],{"class":3546},[3536,9842,3617],{"class":3616},[3536,9844,4859],{"class":3546},[3536,9846,3617],{"class":3616},[3536,9848,4864],{"class":3546},[3536,9850,9851,9853,9856,9858,9860,9862,9864,9866,9868,9870,9872,9874,9876,9878,9880],{"class":3538,"line":7163},[3536,9852,4770],{"class":3561},[3536,9854,9855],{"class":3599}," raw",[3536,9857,4874],{"class":3546},[3536,9859,4877],{"class":3542},[3536,9861,3547],{"class":3546},[3536,9863,4882],{"class":3550},[3536,9865,3554],{"class":3546},[3536,9867,3533],{"class":3542},[3536,9869,4889],{"class":3546},[3536,9871,3533],{"class":3542},[3536,9873,4894],{"class":3546},[3536,9875,4898],{"class":4897},[3536,9877,4901],{"class":3546},[3536,9879,3533],{"class":3542},[3536,9881,4742],{"class":3546},[3536,9883,9884,9886,9889,9891,9894,9897,9899,9901,9903,9906,9908],{"class":3538,"line":7171},[3536,9885,4770],{"class":3561},[3536,9887,9888],{"class":3599}," coupon",[3536,9890,4874],{"class":3546},[3536,9892,9893],{"class":3542},"raw",[3536,9895,9896],{"class":3546}," ? ",[3536,9898,9796],{"class":3550},[3536,9900,3554],{"class":3546},[3536,9902,9893],{"class":3542},[3536,9904,9905],{"class":3546},") : ",[3536,9907,4813],{"class":3561},[3536,9909,4742],{"class":3546},[3536,9911,9912,9914,9916,9918,9920],{"class":3538,"line":7177},[3536,9913,4770],{"class":3561},[3536,9915,5045],{"class":3599},[3536,9917,4874],{"class":3546},[3536,9919,8296],{"class":3550},[3536,9921,7911],{"class":3546},[3536,9923,9924],{"class":3538,"line":7190},[3536,9925,4748],{"emptyLinePlaceholder":4747},[3536,9927,9928,9930,9933,9935],{"class":3538,"line":7203},[3536,9929,4770],{"class":3561},[3536,9931,9932],{"class":3599}," deepLink",[3536,9934,4874],{"class":3546},[3536,9936,9937],{"class":3542},"raw\n",[3536,9939,9940,9943,9945,9947,9949,9951,9953,9955,9958,9960,9962,9964,9966,9968,9970,9972],{"class":3538,"line":7214},[3536,9941,9942],{"class":3546},"    ? ",[3536,9944,5876],{"class":3542},[3536,9946,3547],{"class":3546},[3536,9948,5881],{"class":3550},[3536,9950,3554],{"class":3546},[3536,9952,8439],{"class":3557},[3536,9954,3562],{"class":3561},[3536,9956,9957],{"class":3550},"String",[3536,9959,3554],{"class":3568},[3536,9961,9893],{"class":3542},[3536,9963,3684],{"class":3568},[3536,9965,7908],{"class":3550},[3536,9967,5053],{"class":3568},[3536,9969,3574],{"class":3561},[3536,9971,3577],{"class":3557},[3536,9973,9974],{"class":3546},")\n",[3536,9976,9977,9980,9983],{"class":3538,"line":7220},[3536,9978,9979],{"class":3546},"    : ",[3536,9981,9982],{"class":3557},"''",[3536,9984,4742],{"class":3546},[3536,9986,9987],{"class":3538,"line":7226},[3536,9988,4748],{"emptyLinePlaceholder":4747},[3536,9990,9991,9994,9996,9999],{"class":3538,"line":7244},[3536,9992,9993],{"class":4725},"  if",[3536,9995,4967],{"class":3546},[3536,9997,9998],{"class":3542},"coupon",[3536,10000,4977],{"class":3546},[3536,10002,10003,10006],{"class":3538,"line":7250},[3536,10004,10005],{"class":4725},"    return",[3536,10007,4985],{"class":3546},[3536,10009,10010,10012,10014,10016,10018,10020,10022,10024,10027,10029],{"class":3538,"line":7256},[3536,10011,5000],{"class":4309},[3536,10013,4993],{"class":3616},[3536,10015,8041],{"class":4315},[3536,10017,4319],{"class":3546},[3536,10019,4322],{"class":3561},[3536,10021,8496],{"class":3542},[3536,10023,3547],{"class":3568},[3536,10025,10026],{"class":3542},"center",[3536,10028,3574],{"class":3561},[3536,10030,4352],{"class":4309},[3536,10032,10033,10035,10037,10039,10041,10043,10045,10047,10050,10052,10054],{"class":3538,"line":7261},[3536,10034,8144],{"class":4309},[3536,10036,8147],{"class":3616},[3536,10038,8158],{"class":4315},[3536,10040,4319],{"class":3546},[3536,10042,4322],{"class":3561},[3536,10044,8165],{"class":3568},[3536,10046,8168],{"class":3542},[3536,10048,10049],{"class":3557}," 'Не знайдено'",[3536,10051,8174],{"class":3568},[3536,10053,3574],{"class":3561},[3536,10055,5058],{"class":4309},[3536,10057,10058,10060,10062,10064,10066,10068,10070,10072,10074,10076,10078,10081,10083,10085],{"class":3538,"line":7266},[3536,10059,8144],{"class":4309},[3536,10061,5003],{"class":3616},[3536,10063,8041],{"class":4315},[3536,10065,4319],{"class":3546},[3536,10067,4322],{"class":3561},[3536,10069,8496],{"class":3542},[3536,10071,3547],{"class":3568},[3536,10073,8827],{"class":3542},[3536,10075,3574],{"class":3561},[3536,10077,4341],{"class":4309},[3536,10079,10080],{"class":3546},"Купон не знайдено",[3536,10082,4347],{"class":4309},[3536,10084,5003],{"class":3616},[3536,10086,4352],{"class":4309},[3536,10088,10089,10091,10093,10095,10097,10099,10101,10103,10105,10107,10109,10111,10113,10115,10117,10119,10121,10123,10125,10127],{"class":3538,"line":7803},[3536,10090,8144],{"class":4309},[3536,10092,5003],{"class":3616},[3536,10094,8041],{"class":4315},[3536,10096,4319],{"class":3546},[3536,10098,4322],{"class":3561},[3536,10100,8496],{"class":3542},[3536,10102,3547],{"class":3568},[3536,10104,8894],{"class":3542},[3536,10106,3574],{"class":3561},[3536,10108,4341],{"class":4309},[3536,10110,5171],{"class":3546},[3536,10112,4322],{"class":3561},[3536,10114,9957],{"class":3550},[3536,10116,3554],{"class":3568},[3536,10118,9893],{"class":3542},[3536,10120,3835],{"class":3568},[3536,10122,3574],{"class":3561},[3536,10124,4347],{"class":4309},[3536,10126,5003],{"class":3616},[3536,10128,4352],{"class":4309},[3536,10130,10131,10133,10135,10137,10139,10141,10143,10145,10148,10150,10152,10154,10156,10158,10160,10162,10164,10166,10168,10170],{"class":3538,"line":7813},[3536,10132,8144],{"class":4309},[3536,10134,8261],{"class":3616},[3536,10136,8041],{"class":4315},[3536,10138,4319],{"class":3546},[3536,10140,4322],{"class":3561},[3536,10142,8496],{"class":3542},[3536,10144,3547],{"class":3568},[3536,10146,10147],{"class":3542},"btn",[3536,10149,3574],{"class":3561},[3536,10151,5032],{"class":4315},[3536,10153,4319],{"class":3546},[3536,10155,4322],{"class":3561},[3536,10157,5039],{"class":3568},[3536,10159,5042],{"class":3561},[3536,10161,5045],{"class":3542},[3536,10163,3547],{"class":3568},[3536,10165,5050],{"class":3550},[3536,10167,5053],{"class":3568},[3536,10169,3574],{"class":3561},[3536,10171,4352],{"class":4309},[3536,10173,10174,10176,10178,10180,10182,10184,10186,10188,10191,10193,10195,10198,10200,10202],{"class":3538,"line":7823},[3536,10175,8731],{"class":4309},[3536,10177,5003],{"class":3616},[3536,10179,8041],{"class":4315},[3536,10181,4319],{"class":3546},[3536,10183,4322],{"class":3561},[3536,10185,8496],{"class":3542},[3536,10187,3547],{"class":3568},[3536,10189,10190],{"class":3542},"btnText",[3536,10192,3574],{"class":3561},[3536,10194,4341],{"class":4309},[3536,10196,10197],{"class":3546},"Назад",[3536,10199,4347],{"class":4309},[3536,10201,5003],{"class":3616},[3536,10203,4352],{"class":4309},[3536,10205,10206,10209,10211],{"class":3538,"line":7833},[3536,10207,10208],{"class":4309},"        \u003C\u002F",[3536,10210,8261],{"class":3616},[3536,10212,4352],{"class":4309},[3536,10214,10215,10217,10219],{"class":3538,"line":7843},[3536,10216,8215],{"class":4309},[3536,10218,4993],{"class":3616},[3536,10220,4352],{"class":4309},[3536,10222,10223],{"class":3538,"line":7848},[3536,10224,10225],{"class":3546},"    );\n",[3536,10227,10228],{"class":3538,"line":7854},[3536,10229,5599],{"class":3546},[3536,10231,10232],{"class":3538,"line":7859},[3536,10233,4748],{"emptyLinePlaceholder":4747},[3536,10235,10236,10238],{"class":3538,"line":7888},[3536,10237,4982],{"class":4725},[3536,10239,4985],{"class":3546},[3536,10241,10242,10244,10246,10248,10250,10252,10254,10256,10259,10261],{"class":3538,"line":7914},[3536,10243,4990],{"class":4309},[3536,10245,4993],{"class":3616},[3536,10247,8041],{"class":4315},[3536,10249,4319],{"class":3546},[3536,10251,4322],{"class":3561},[3536,10253,8496],{"class":3542},[3536,10255,3547],{"class":3568},[3536,10257,10258],{"class":3542},"body",[3536,10260,3574],{"class":3561},[3536,10262,4352],{"class":4309},[3536,10264,10265,10267,10269,10271,10273,10275,10277,10279,10281,10283,10285,10287,10289],{"class":3538,"line":7952},[3536,10266,5000],{"class":4309},[3536,10268,8147],{"class":3616},[3536,10270,8158],{"class":4315},[3536,10272,4319],{"class":3546},[3536,10274,4322],{"class":3561},[3536,10276,8165],{"class":3568},[3536,10278,8168],{"class":3542},[3536,10280,9888],{"class":3542},[3536,10282,3547],{"class":3568},[3536,10284,8827],{"class":3542},[3536,10286,8174],{"class":3568},[3536,10288,3574],{"class":3561},[3536,10290,5058],{"class":4309},[3536,10292,10293,10295,10297,10299,10301,10303,10305,10307,10310,10312,10314,10316,10318,10320,10322,10324,10326,10328],{"class":3538,"line":8796},[3536,10294,5000],{"class":4309},[3536,10296,5003],{"class":3616},[3536,10298,8041],{"class":4315},[3536,10300,4319],{"class":3546},[3536,10302,4322],{"class":3561},[3536,10304,8496],{"class":3542},[3536,10306,3547],{"class":3568},[3536,10308,10309],{"class":3542},"discount",[3536,10311,3574],{"class":3561},[3536,10313,4341],{"class":4309},[3536,10315,4322],{"class":3561},[3536,10317,9998],{"class":3542},[3536,10319,3547],{"class":3568},[3536,10321,8907],{"class":3542},[3536,10323,3574],{"class":3561},[3536,10325,4347],{"class":4309},[3536,10327,5003],{"class":3616},[3536,10329,4352],{"class":4309},[3536,10331,10332,10334,10336,10338,10340,10342,10344,10346,10348,10350,10352,10354,10356,10358,10360,10362,10364,10366],{"class":3538,"line":8838},[3536,10333,5000],{"class":4309},[3536,10335,5003],{"class":3616},[3536,10337,8041],{"class":4315},[3536,10339,4319],{"class":3546},[3536,10341,4322],{"class":3561},[3536,10343,8496],{"class":3542},[3536,10345,3547],{"class":3568},[3536,10347,3533],{"class":3542},[3536,10349,3574],{"class":3561},[3536,10351,4341],{"class":4309},[3536,10353,4322],{"class":3561},[3536,10355,9998],{"class":3542},[3536,10357,3547],{"class":3568},[3536,10359,3533],{"class":3542},[3536,10361,3574],{"class":3561},[3536,10363,4347],{"class":4309},[3536,10365,5003],{"class":3616},[3536,10367,4352],{"class":4309},[3536,10369,10370,10372,10374,10376,10378,10380,10382,10384,10387,10389,10391,10393,10395,10397,10400,10402,10404,10406],{"class":3538,"line":8877},[3536,10371,5000],{"class":4309},[3536,10373,5003],{"class":3616},[3536,10375,8041],{"class":4315},[3536,10377,4319],{"class":3546},[3536,10379,4322],{"class":3561},[3536,10381,8496],{"class":3542},[3536,10383,3547],{"class":3568},[3536,10385,10386],{"class":3542},"desc",[3536,10388,3574],{"class":3561},[3536,10390,4341],{"class":4309},[3536,10392,4322],{"class":3561},[3536,10394,9998],{"class":3542},[3536,10396,3547],{"class":3568},[3536,10398,10399],{"class":3542},"description",[3536,10401,3574],{"class":3561},[3536,10403,4347],{"class":4309},[3536,10405,5003],{"class":3616},[3536,10407,4352],{"class":4309},[3536,10409,10410,10412,10414,10416,10418,10420,10422,10424,10426,10428,10430,10433,10435,10437],{"class":3538,"line":8918},[3536,10411,5000],{"class":4309},[3536,10413,5003],{"class":3616},[3536,10415,8041],{"class":4315},[3536,10417,4319],{"class":3546},[3536,10419,4322],{"class":3561},[3536,10421,8496],{"class":3542},[3536,10423,3547],{"class":3568},[3536,10425,8894],{"class":3542},[3536,10427,3574],{"class":3561},[3536,10429,4341],{"class":4309},[3536,10431,10432],{"class":3546},"Deep link цього екрана:",[3536,10434,4347],{"class":4309},[3536,10436,5003],{"class":3616},[3536,10438,4352],{"class":4309},[3536,10440,10441,10443,10445,10447,10449,10451,10453,10455,10458,10460,10462,10464,10467,10469,10471,10473],{"class":3538,"line":8928},[3536,10442,5000],{"class":4309},[3536,10444,5003],{"class":3616},[3536,10446,8041],{"class":4315},[3536,10448,4319],{"class":3546},[3536,10450,4322],{"class":3561},[3536,10452,8496],{"class":3542},[3536,10454,3547],{"class":3568},[3536,10456,10457],{"class":3542},"link",[3536,10459,3574],{"class":3561},[3536,10461,4341],{"class":4309},[3536,10463,4322],{"class":3561},[3536,10465,10466],{"class":3542},"deepLink",[3536,10468,3574],{"class":3561},[3536,10470,4347],{"class":4309},[3536,10472,5003],{"class":3616},[3536,10474,4352],{"class":4309},[3536,10476,10477,10479],{"class":3538,"line":8938},[3536,10478,5000],{"class":4309},[3536,10480,8943],{"class":3616},[3536,10482,10483,10485,10487,10489,10491,10493,10495],{"class":3538,"line":8946},[3536,10484,9080],{"class":4315},[3536,10486,4319],{"class":3546},[3536,10488,4322],{"class":3561},[3536,10490,8496],{"class":3542},[3536,10492,3547],{"class":3568},[3536,10494,10147],{"class":3542},[3536,10496,4476],{"class":3561},[3536,10498,10499,10501,10503,10505,10507,10509,10512,10514,10517,10519,10522,10524,10527,10529,10531,10533,10535,10537,10539,10541],{"class":3538,"line":8965},[3536,10500,9099],{"class":4315},[3536,10502,4319],{"class":3546},[3536,10504,4322],{"class":3561},[3536,10506,5039],{"class":3568},[3536,10508,5042],{"class":3561},[3536,10510,10511],{"class":3542}," Alert",[3536,10513,3547],{"class":3568},[3536,10515,10516],{"class":3550},"alert",[3536,10518,3554],{"class":3568},[3536,10520,10521],{"class":3557},"'Купон'",[3536,10523,3755],{"class":3568},[3536,10525,10526],{"class":3557},"`Умовно застосовано ",[3536,10528,3562],{"class":3561},[3536,10530,9998],{"class":3542},[3536,10532,3547],{"class":3568},[3536,10534,3533],{"class":3542},[3536,10536,3574],{"class":3561},[3536,10538,3577],{"class":3557},[3536,10540,3835],{"class":3568},[3536,10542,4476],{"class":3561},[3536,10544,10545],{"class":3538,"line":8993},[3536,10546,8139],{"class":4309},[3536,10548,10549,10551,10553,10555,10557,10559,10561,10563,10565,10567,10569,10572,10574,10576],{"class":3538,"line":8999},[3536,10550,8144],{"class":4309},[3536,10552,5003],{"class":3616},[3536,10554,8041],{"class":4315},[3536,10556,4319],{"class":3546},[3536,10558,4322],{"class":3561},[3536,10560,8496],{"class":3542},[3536,10562,3547],{"class":3568},[3536,10564,10190],{"class":3542},[3536,10566,3574],{"class":3561},[3536,10568,4341],{"class":4309},[3536,10570,10571],{"class":3546},"Застосувати",[3536,10573,4347],{"class":4309},[3536,10575,5003],{"class":3616},[3536,10577,4352],{"class":4309},[3536,10579,10580,10582,10584],{"class":3538,"line":9032},[3536,10581,8215],{"class":4309},[3536,10583,8261],{"class":3616},[3536,10585,4352],{"class":4309},[3536,10587,10588,10590,10592],{"class":3538,"line":9041},[3536,10589,5063],{"class":4309},[3536,10591,4993],{"class":3616},[3536,10593,4352],{"class":4309},[3536,10595,10596],{"class":3538,"line":9051},[3536,10597,5072],{"class":3546},[3536,10599,10600],{"class":3538,"line":9059},[3536,10601,4476],{"class":3546},[3536,10603,10604],{"class":3538,"line":9065},[3536,10605,4748],{"emptyLinePlaceholder":4747},[3536,10607,10608,10610,10612,10614,10616,10618,10620],{"class":3538,"line":9070},[3536,10609,3593],{"class":3561},[3536,10611,9201],{"class":3599},[3536,10613,4874],{"class":3546},[3536,10615,8266],{"class":3542},[3536,10617,3547],{"class":3546},[3536,10619,9210],{"class":3550},[3536,10621,4378],{"class":3546},[3536,10623,10624,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10650,10652],{"class":3538,"line":9077},[3536,10625,10626],{"class":3542},"  body:",[3536,10628,3596],{"class":3546},[3536,10630,9223],{"class":3542},[3536,10632,9226],{"class":4897},[3536,10634,3755],{"class":3546},[3536,10636,9385],{"class":3542},[3536,10638,9395],{"class":4897},[3536,10640,3755],{"class":3546},[3536,10642,8076],{"class":3542},[3536,10644,8079],{"class":3557},[3536,10646,3755],{"class":3546},[3536,10648,10649],{"class":3542},"gap:",[3536,10651,8696],{"class":4897},[3536,10653,4411],{"class":3546},[3536,10655,10656,10659],{"class":3538,"line":9096},[3536,10657,10658],{"class":3542},"  center:",[3536,10660,4547],{"class":3546},[3536,10662,10663,10666,10668],{"class":3538,"line":9125},[3536,10664,10665],{"class":3542},"    flex:",[3536,10667,9226],{"class":4897},[3536,10669,4390],{"class":3546},[3536,10671,10672,10674,10676],{"class":3538,"line":9130},[3536,10673,9453],{"class":3542},[3536,10675,9395],{"class":4897},[3536,10677,4390],{"class":3546},[3536,10679,10680,10683,10685],{"class":3538,"line":9163},[3536,10681,10682],{"class":3542},"    justifyContent:",[3536,10684,9621],{"class":3557},[3536,10686,4390],{"class":3546},[3536,10688,10689,10691,10693],{"class":3538,"line":9172},[3536,10690,9618],{"class":3542},[3536,10692,9621],{"class":3557},[3536,10694,4390],{"class":3546},[3536,10696,10697,10699,10701],{"class":3538,"line":9181},[3536,10698,9411],{"class":3542},[3536,10700,8079],{"class":3557},[3536,10702,4390],{"class":3546},[3536,10704,10705,10707,10709],{"class":3538,"line":9186},[3536,10706,9464],{"class":3542},[3536,10708,9262],{"class":4897},[3536,10710,4390],{"class":3546},[3536,10712,10713],{"class":3538,"line":9191},[3536,10714,4579],{"class":3546},[3536,10716,10717,10720,10722,10724,10727,10729,10731,10733,10735,10737,10739],{"class":3538,"line":9196},[3536,10718,10719],{"class":3542},"  title:",[3536,10721,3596],{"class":3546},[3536,10723,9484],{"class":3542},[3536,10725,10726],{"class":4897}," 22",[3536,10728,3755],{"class":3546},[3536,10730,8109],{"class":3542},[3536,10732,9522],{"class":3557},[3536,10734,3755],{"class":3546},[3536,10736,8101],{"class":3542},[3536,10738,8104],{"class":3557},[3536,10740,4411],{"class":3546},[3536,10742,10743,10746,10748,10750,10753,10755,10757,10759,10761,10763,10766],{"class":3538,"line":9215},[3536,10744,10745],{"class":3542},"  discount:",[3536,10747,3596],{"class":3546},[3536,10749,9484],{"class":3542},[3536,10751,10752],{"class":4897}," 36",[3536,10754,3755],{"class":3546},[3536,10756,8109],{"class":3542},[3536,10758,9522],{"class":3557},[3536,10760,3755],{"class":3546},[3536,10762,8101],{"class":3542},[3536,10764,10765],{"class":3557}," '#16A34A'",[3536,10767,4411],{"class":3546},[3536,10769,10770,10772],{"class":3538,"line":9237},[3536,10771,9508],{"class":3542},[3536,10773,4547],{"class":3546},[3536,10775,10776,10778,10781],{"class":3538,"line":9245},[3536,10777,9281],{"class":3542},[3536,10779,10780],{"class":4897}," 28",[3536,10782,4390],{"class":3546},[3536,10784,10785,10787,10789],{"class":3538,"line":9256},[3536,10786,9365],{"class":3542},[3536,10788,9522],{"class":3557},[3536,10790,4390],{"class":3546},[3536,10792,10793,10795,10797],{"class":3538,"line":9267},[3536,10794,9270],{"class":3542},[3536,10796,8089],{"class":3557},[3536,10798,4390],{"class":3546},[3536,10800,10801,10804,10807],{"class":3538,"line":9278},[3536,10802,10803],{"class":3542},"    letterSpacing:",[3536,10805,10806],{"class":4897}," 2",[3536,10808,4390],{"class":3546},[3536,10810,10811],{"class":3538,"line":9289},[3536,10812,4579],{"class":3546},[3536,10814,10815,10818,10820,10822,10824,10826,10829,10831,10833,10835,10838,10840,10843,10845],{"class":3538,"line":9300},[3536,10816,10817],{"class":3542},"  desc:",[3536,10819,3596],{"class":3546},[3536,10821,9484],{"class":3542},[3536,10823,9251],{"class":4897},[3536,10825,3755],{"class":3546},[3536,10827,10828],{"class":3542},"lineHeight:",[3536,10830,9395],{"class":4897},[3536,10832,3755],{"class":3546},[3536,10834,8101],{"class":3542},[3536,10836,10837],{"class":3557}," '#334155'",[3536,10839,3755],{"class":3546},[3536,10841,10842],{"class":3542},"marginTop:",[3536,10844,9262],{"class":4897},[3536,10846,4411],{"class":3546},[3536,10848,10849,10851,10853,10855,10857,10859,10861,10863,10865,10867,10869],{"class":3538,"line":9305},[3536,10850,9543],{"class":3542},[3536,10852,3596],{"class":3546},[3536,10854,8101],{"class":3542},[3536,10856,9273],{"class":3557},[3536,10858,3755],{"class":3546},[3536,10860,9484],{"class":3542},[3536,10862,9284],{"class":4897},[3536,10864,3755],{"class":3546},[3536,10866,10842],{"class":3542},[3536,10868,9251],{"class":4897},[3536,10870,4411],{"class":3546},[3536,10872,10873,10876,10878,10880,10882,10884,10886,10888,10890,10892,10894],{"class":3538,"line":9313},[3536,10874,10875],{"class":3542},"  link:",[3536,10877,3596],{"class":3546},[3536,10879,8101],{"class":3542},[3536,10881,8104],{"class":3557},[3536,10883,3755],{"class":3546},[3536,10885,9484],{"class":3542},[3536,10887,9357],{"class":4897},[3536,10889,3755],{"class":3546},[3536,10891,8109],{"class":3542},[3536,10893,8112],{"class":3557},[3536,10895,4411],{"class":3546},[3536,10897,10898,10901],{"class":3538,"line":9322},[3536,10899,10900],{"class":3542},"  btn:",[3536,10902,4547],{"class":3546},[3536,10904,10905,10907,10909],{"class":3538,"line":9333},[3536,10906,9325],{"class":3542},[3536,10908,9395],{"class":4897},[3536,10910,4390],{"class":3546},[3536,10912,10913,10915,10917],{"class":3538,"line":9343},[3536,10914,9411],{"class":3542},[3536,10916,8089],{"class":3557},[3536,10918,4390],{"class":3546},[3536,10920,10921,10923,10925],{"class":3538,"line":9352},[3536,10922,9581],{"class":3542},[3536,10924,9456],{"class":4897},[3536,10926,4390],{"class":3546},[3536,10928,10929,10931,10933],{"class":3538,"line":9362},[3536,10930,9422],{"class":3542},[3536,10932,9357],{"class":4897},[3536,10934,4390],{"class":3546},[3536,10936,10937,10939,10941],{"class":3538,"line":9372},[3536,10938,9618],{"class":3542},[3536,10940,9621],{"class":3557},[3536,10942,4390],{"class":3546},[3536,10944,10945,10948,10951],{"class":3538,"line":9377},[3536,10946,10947],{"class":3542},"    alignSelf:",[3536,10949,10950],{"class":3557}," 'stretch'",[3536,10952,4390],{"class":3546},[3536,10954,10955],{"class":3538,"line":9400},[3536,10956,4579],{"class":3546},[3536,10958,10959,10962,10964,10966,10968,10970,10972,10974],{"class":3538,"line":9408},[3536,10960,10961],{"class":3542},"  btnText:",[3536,10963,3596],{"class":3546},[3536,10965,8101],{"class":3542},[3536,10967,9414],{"class":3557},[3536,10969,3755],{"class":3546},[3536,10971,8109],{"class":3542},[3536,10973,9522],{"class":3557},[3536,10975,4411],{"class":3546},[3536,10977,10978],{"class":3538,"line":9419},[3536,10979,4417],{"class":3546},[3512,10981,10983],{"id":10982},"крок-6-перевірка","Крок 6. Перевірка",[3729,10985,10986,10989,10992,10995],{},[3692,10987,10988],{},"Список купонів → тап → екран коду.",[3692,10990,10991],{},"«Відкрити deep link» → той самий екран через linking.",[3692,10993,10994],{},"Неіснуючий код → «не знайдено».",[3692,10996,10997,10998,11000,11003,11005,11006,3547],{},"На білді з scheme:",[5211,10999],{},[3533,11001,11002],{},"xcrun simctl openurl booted \"couponapp:\u002F\u002Fcoupon\u002FSUMMER25\"",[5211,11004],{},"\nабо adb з ",[3533,11007,7397],{},[3512,11009,11011],{"id":11010},"критерій-готово","Критерій «готово»",[3689,11013,11016,11026,11032,11041,11051],{"className":11014},[11015],"contains-task-list",[3692,11017,11020,3957,11024],{"className":11018},[11019],"task-list-item",[11021,11022],"input",{"disabled":4747,"type":11023},"checkbox",[3533,11025,8589],{},[3692,11027,11029,11031],{"className":11028},[11019],[11021,11030],{"disabled":4747,"type":11023}," Повні файли з collapsible",[3692,11033,11035,11037,11038,11040],{"className":11034},[11019],[11021,11036],{"disabled":4747,"type":11023}," Path param ",[3533,11039,3533],{}," + нормалізація регістру",[3692,11042,11044,3957,11046,11048,11049],{"className":11043},[11019],[11021,11045],{"disabled":4747,"type":11023},[3533,11047,5881],{}," + ",[3533,11050,6067],{},[3692,11052,11054,11056],{"className":11053},[11019],[11021,11055],{"disabled":4747,"type":11023}," Missing coupon UI",[3812,11058],{},[3507,11060,11062],{"id":11061},"nomad-typed-routes-і-deep-link-на-поїздку","Nomad: typed routes і deep link на поїздку",[3512,11064,11066],{"id":11065},"навіщо-користувачу","Навіщо користувачу",[3517,11068,11069,11070,11073,11074,11076],{},"Поділитись ",[3521,11071,11072],{},"посиланням на конкретну поїздку"," (у навчанні — показати URL і відкрити його). Зовнішній світ передає лише id; екран деталей і ",[3533,11075,6490],{}," уже вміють решту.",[3512,11078,11080],{"id":11079},"нитка","Нитка",[3517,11082,11083,3957,11086,3755,11089,3755,11092,3755,11095,11097],{},[3521,11084,11085],{},"Уже є:",[3533,11087,11088],{},"scheme: \"nomad\"",[3533,11090,11091],{},"typedRoutes: true",[3533,11093,11094],{},"\u002Ftrips\u002F[id]",[3533,11096,3605],{},", nested stack, modal create-trip.",[3517,11099,11100],{},[3521,11101,11102],{},"Додаємо:",[3689,11104,11105,11112],{},[3692,11106,11107,11108,11111],{},"на екрані деталей — рядок ",[3533,11109,11110],{},"Linking.createURL('\u002Ftrips\u002F' + id)"," і кнопка «Відкрити це посилання»;",[3692,11113,11114,11115,3547],{},"на вкладці «Ще» — підказка scheme + приклад createURL для ",[3533,11116,5249],{},[3512,11118,11120],{"id":11119},"повний-знімок-проєкту","Повний знімок проєкту",[11122,11123,11125,11509,11816,11915,12450,13053,13359,16534,19227,20255,22187,22499,22761,23076,23647,24238,24933,25761,26333,26441,30824,33006,33855,35458,36190,36556,36937,37830,37970,38564,39287,39585,40509],"code-tree",{"title":11124},"Nomad після deep link UI",[3526,11126,11128],{"className":5567,"code":11127,"filename":5797,"language":5569,"meta":3531,"style":3531},"{\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",[3533,11129,11130,11134,11146,11158,11170,11177,11189,11200,11211,11221,11225,11232,11244,11256,11268,11280,11292,11304,11316,11328,11340,11352,11364,11376,11388,11400,11412,11424,11436,11446,11450,11457,11469,11481,11491,11495,11505],{"__ignoreMap":3531},[3536,11131,11132],{"class":3538,"line":3539},[3536,11133,4441],{"class":3546},[3536,11135,11136,11139,11141,11144],{"class":3538,"line":4381},[3536,11137,11138],{"class":5580},"  \"name\"",[3536,11140,3613],{"class":3546},[3536,11142,11143],{"class":3557},"\"nomad\"",[3536,11145,4390],{"class":3546},[3536,11147,11148,11151,11153,11156],{"class":3538,"line":4393},[3536,11149,11150],{"class":5580},"  \"version\"",[3536,11152,3613],{"class":3546},[3536,11154,11155],{"class":3557},"\"1.0.0\"",[3536,11157,4390],{"class":3546},[3536,11159,11160,11163,11165,11168],{"class":3538,"line":4414},[3536,11161,11162],{"class":5580},"  \"main\"",[3536,11164,3613],{"class":3546},[3536,11166,11167],{"class":3557},"\"expo-router\u002Fentry\"",[3536,11169,4390],{"class":3546},[3536,11171,11172,11175],{"class":3538,"line":4470},[3536,11173,11174],{"class":5580},"  \"scripts\"",[3536,11176,5584],{"class":3546},[3536,11178,11179,11182,11184,11187],{"class":3538,"line":4479},[3536,11180,11181],{"class":5580},"    \"start\"",[3536,11183,3613],{"class":3546},[3536,11185,11186],{"class":3557},"\"expo start\"",[3536,11188,4390],{"class":3546},[3536,11190,11191,11193,11195,11198],{"class":3538,"line":4484},[3536,11192,7110],{"class":5580},[3536,11194,3613],{"class":3546},[3536,11196,11197],{"class":3557},"\"expo start --android\"",[3536,11199,4390],{"class":3546},[3536,11201,11202,11204,11206,11209],{"class":3538,"line":4490},[3536,11203,7044],{"class":5580},[3536,11205,3613],{"class":3546},[3536,11207,11208],{"class":3557},"\"expo start --ios\"",[3536,11210,4390],{"class":3546},[3536,11212,11213,11216,11218],{"class":3538,"line":7163},[3536,11214,11215],{"class":5580},"    \"web\"",[3536,11217,3613],{"class":3546},[3536,11219,11220],{"class":3557},"\"expo start --web\"\n",[3536,11222,11223],{"class":3538,"line":7171},[3536,11224,4579],{"class":3546},[3536,11226,11227,11230],{"class":3538,"line":7177},[3536,11228,11229],{"class":5580},"  \"dependencies\"",[3536,11231,5584],{"class":3546},[3536,11233,11234,11237,11239,11242],{"class":3538,"line":7190},[3536,11235,11236],{"class":5580},"    \"@expo\u002Fvector-icons\"",[3536,11238,3613],{"class":3546},[3536,11240,11241],{"class":3557},"\"^15.1.1\"",[3536,11243,4390],{"class":3546},[3536,11245,11246,11249,11251,11254],{"class":3538,"line":7203},[3536,11247,11248],{"class":5580},"    \"@hookform\u002Fresolvers\"",[3536,11250,3613],{"class":3546},[3536,11252,11253],{"class":3557},"\"^5.7.1\"",[3536,11255,4390],{"class":3546},[3536,11257,11258,11261,11263,11266],{"class":3538,"line":7214},[3536,11259,11260],{"class":5580},"    \"@react-native-community\u002Fcheckbox\"",[3536,11262,3613],{"class":3546},[3536,11264,11265],{"class":3557},"\"^0.6.0\"",[3536,11267,4390],{"class":3546},[3536,11269,11270,11273,11275,11278],{"class":3538,"line":7220},[3536,11271,11272],{"class":5580},"    \"@react-native-community\u002Fdatetimepicker\"",[3536,11274,3613],{"class":3546},[3536,11276,11277],{"class":3557},"\"8.4.4\"",[3536,11279,4390],{"class":3546},[3536,11281,11282,11285,11287,11290],{"class":3538,"line":7226},[3536,11283,11284],{"class":5580},"    \"@react-native-community\u002Fslider\"",[3536,11286,3613],{"class":3546},[3536,11288,11289],{"class":3557},"\"5.0.1\"",[3536,11291,4390],{"class":3546},[3536,11293,11294,11297,11299,11302],{"class":3538,"line":7244},[3536,11295,11296],{"class":5580},"    \"@react-native-picker\u002Fpicker\"",[3536,11298,3613],{"class":3546},[3536,11300,11301],{"class":3557},"\"2.11.1\"",[3536,11303,4390],{"class":3546},[3536,11305,11306,11309,11311,11314],{"class":3538,"line":7250},[3536,11307,11308],{"class":5580},"    \"@shopify\u002Fflash-list\"",[3536,11310,3613],{"class":3546},[3536,11312,11313],{"class":3557},"\"^2.3.2\"",[3536,11315,4390],{"class":3546},[3536,11317,11318,11321,11323,11326],{"class":3538,"line":7256},[3536,11319,11320],{"class":5580},"    \"expo\"",[3536,11322,3613],{"class":3546},[3536,11324,11325],{"class":3557},"\"~54.0.35\"",[3536,11327,4390],{"class":3546},[3536,11329,11330,11333,11335,11338],{"class":3538,"line":7261},[3536,11331,11332],{"class":5580},"    \"expo-constants\"",[3536,11334,3613],{"class":3546},[3536,11336,11337],{"class":3557},"\"~18.0.13\"",[3536,11339,4390],{"class":3546},[3536,11341,11342,11345,11347,11350],{"class":3538,"line":7266},[3536,11343,11344],{"class":5580},"    \"expo-linking\"",[3536,11346,3613],{"class":3546},[3536,11348,11349],{"class":3557},"\"~8.0.12\"",[3536,11351,4390],{"class":3546},[3536,11353,11354,11357,11359,11362],{"class":3538,"line":7803},[3536,11355,11356],{"class":5580},"    \"expo-router\"",[3536,11358,3613],{"class":3546},[3536,11360,11361],{"class":3557},"\"~6.0.24\"",[3536,11363,4390],{"class":3546},[3536,11365,11366,11369,11371,11374],{"class":3538,"line":7813},[3536,11367,11368],{"class":5580},"    \"expo-status-bar\"",[3536,11370,3613],{"class":3546},[3536,11372,11373],{"class":3557},"\"~3.0.9\"",[3536,11375,4390],{"class":3546},[3536,11377,11378,11381,11383,11386],{"class":3538,"line":7823},[3536,11379,11380],{"class":5580},"    \"react\"",[3536,11382,3613],{"class":3546},[3536,11384,11385],{"class":3557},"\"19.1.0\"",[3536,11387,4390],{"class":3546},[3536,11389,11390,11393,11395,11398],{"class":3538,"line":7833},[3536,11391,11392],{"class":5580},"    \"react-hook-form\"",[3536,11394,3613],{"class":3546},[3536,11396,11397],{"class":3557},"\"^7.84.0\"",[3536,11399,4390],{"class":3546},[3536,11401,11402,11405,11407,11410],{"class":3538,"line":7843},[3536,11403,11404],{"class":5580},"    \"react-native\"",[3536,11406,3613],{"class":3546},[3536,11408,11409],{"class":3557},"\"0.81.5\"",[3536,11411,4390],{"class":3546},[3536,11413,11414,11417,11419,11422],{"class":3538,"line":7848},[3536,11415,11416],{"class":5580},"    \"react-native-safe-area-context\"",[3536,11418,3613],{"class":3546},[3536,11420,11421],{"class":3557},"\"~5.6.0\"",[3536,11423,4390],{"class":3546},[3536,11425,11426,11429,11431,11434],{"class":3538,"line":7854},[3536,11427,11428],{"class":5580},"    \"react-native-screens\"",[3536,11430,3613],{"class":3546},[3536,11432,11433],{"class":3557},"\"~4.16.0\"",[3536,11435,4390],{"class":3546},[3536,11437,11438,11441,11443],{"class":3538,"line":7859},[3536,11439,11440],{"class":5580},"    \"zod\"",[3536,11442,3613],{"class":3546},[3536,11444,11445],{"class":3557},"\"^4.4.3\"\n",[3536,11447,11448],{"class":3538,"line":7888},[3536,11449,4579],{"class":3546},[3536,11451,11452,11455],{"class":3538,"line":7914},[3536,11453,11454],{"class":5580},"  \"devDependencies\"",[3536,11456,5584],{"class":3546},[3536,11458,11459,11462,11464,11467],{"class":3538,"line":7952},[3536,11460,11461],{"class":5580},"    \"@expo\u002Fngrok\"",[3536,11463,3613],{"class":3546},[3536,11465,11466],{"class":3557},"\"^4.1.3\"",[3536,11468,4390],{"class":3546},[3536,11470,11471,11474,11476,11479],{"class":3538,"line":8796},[3536,11472,11473],{"class":5580},"    \"@types\u002Freact\"",[3536,11475,3613],{"class":3546},[3536,11477,11478],{"class":3557},"\"~19.1.0\"",[3536,11480,4390],{"class":3546},[3536,11482,11483,11486,11488],{"class":3538,"line":8838},[3536,11484,11485],{"class":5580},"    \"typescript\"",[3536,11487,3613],{"class":3546},[3536,11489,11490],{"class":3557},"\"~5.9.2\"\n",[3536,11492,11493],{"class":3538,"line":8877},[3536,11494,4579],{"class":3546},[3536,11496,11497,11500,11502],{"class":3538,"line":8918},[3536,11498,11499],{"class":5580},"  \"private\"",[3536,11501,3613],{"class":3546},[3536,11503,11504],{"class":3561},"true\n",[3536,11506,11507],{"class":3538,"line":8928},[3536,11508,4476],{"class":3546},[3526,11510,11512],{"className":5567,"code":11511,"filename":5554,"language":5569,"meta":3531,"style":3531},"{\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",[3533,11513,11514,11518,11524,11536,11547,11558,11570,11582,11594,11604,11615,11622,11634,11646,11656,11661,11667,11676,11680,11686,11693,11705,11714,11719,11730,11740,11744,11750,11760,11764,11771,11778,11783,11788,11795,11804,11808,11812],{"__ignoreMap":3531},[3536,11515,11516],{"class":3538,"line":3539},[3536,11517,4441],{"class":3546},[3536,11519,11520,11522],{"class":3538,"line":4381},[3536,11521,5581],{"class":5580},[3536,11523,5584],{"class":3546},[3536,11525,11526,11529,11531,11534],{"class":3538,"line":4393},[3536,11527,11528],{"class":5580},"    \"name\"",[3536,11530,3613],{"class":3546},[3536,11532,11533],{"class":3557},"\"Nomad\"",[3536,11535,4390],{"class":3546},[3536,11537,11538,11541,11543,11545],{"class":3538,"line":4414},[3536,11539,11540],{"class":5580},"    \"slug\"",[3536,11542,3613],{"class":3546},[3536,11544,11143],{"class":3557},[3536,11546,4390],{"class":3546},[3536,11548,11549,11552,11554,11556],{"class":3538,"line":4470},[3536,11550,11551],{"class":5580},"    \"version\"",[3536,11553,3613],{"class":3546},[3536,11555,11155],{"class":3557},[3536,11557,4390],{"class":3546},[3536,11559,11560,11563,11565,11568],{"class":3538,"line":4479},[3536,11561,11562],{"class":5580},"    \"orientation\"",[3536,11564,3613],{"class":3546},[3536,11566,11567],{"class":3557},"\"portrait\"",[3536,11569,4390],{"class":3546},[3536,11571,11572,11575,11577,11580],{"class":3538,"line":4484},[3536,11573,11574],{"class":5580},"    \"icon\"",[3536,11576,3613],{"class":3546},[3536,11578,11579],{"class":3557},"\".\u002Fassets\u002Ficon.png\"",[3536,11581,4390],{"class":3546},[3536,11583,11584,11587,11589,11592],{"class":3538,"line":4490},[3536,11585,11586],{"class":5580},"    \"userInterfaceStyle\"",[3536,11588,3613],{"class":3546},[3536,11590,11591],{"class":3557},"\"light\"",[3536,11593,4390],{"class":3546},[3536,11595,11596,11598,11600,11602],{"class":3538,"line":7163},[3536,11597,5589],{"class":5580},[3536,11599,3613],{"class":3546},[3536,11601,11143],{"class":3557},[3536,11603,4390],{"class":3546},[3536,11605,11606,11609,11611,11613],{"class":3538,"line":7171},[3536,11607,11608],{"class":5580},"    \"newArchEnabled\"",[3536,11610,3613],{"class":3546},[3536,11612,7158],{"class":3561},[3536,11614,4390],{"class":3546},[3536,11616,11617,11620],{"class":3538,"line":7177},[3536,11618,11619],{"class":5580},"    \"splash\"",[3536,11621,5584],{"class":3546},[3536,11623,11624,11627,11629,11632],{"class":3538,"line":7190},[3536,11625,11626],{"class":5580},"      \"image\"",[3536,11628,3613],{"class":3546},[3536,11630,11631],{"class":3557},"\".\u002Fassets\u002Fsplash-icon.png\"",[3536,11633,4390],{"class":3546},[3536,11635,11636,11639,11641,11644],{"class":3538,"line":7203},[3536,11637,11638],{"class":5580},"      \"resizeMode\"",[3536,11640,3613],{"class":3546},[3536,11642,11643],{"class":3557},"\"contain\"",[3536,11645,4390],{"class":3546},[3536,11647,11648,11651,11653],{"class":3538,"line":7214},[3536,11649,11650],{"class":5580},"      \"backgroundColor\"",[3536,11652,3613],{"class":3546},[3536,11654,11655],{"class":3557},"\"#ffffff\"\n",[3536,11657,11658],{"class":3538,"line":7220},[3536,11659,11660],{"class":3546},"    },\n",[3536,11662,11663,11665],{"class":3538,"line":7226},[3536,11664,7044],{"class":5580},[3536,11666,5584],{"class":3546},[3536,11668,11669,11672,11674],{"class":3538,"line":7244},[3536,11670,11671],{"class":5580},"      \"supportsTablet\"",[3536,11673,3613],{"class":3546},[3536,11675,11504],{"class":3561},[3536,11677,11678],{"class":3538,"line":7250},[3536,11679,11660],{"class":3546},[3536,11681,11682,11684],{"class":3538,"line":7256},[3536,11683,7110],{"class":5580},[3536,11685,5584],{"class":3546},[3536,11687,11688,11691],{"class":3538,"line":7261},[3536,11689,11690],{"class":5580},"      \"adaptiveIcon\"",[3536,11692,5584],{"class":3546},[3536,11694,11695,11698,11700,11703],{"class":3538,"line":7266},[3536,11696,11697],{"class":5580},"        \"foregroundImage\"",[3536,11699,3613],{"class":3546},[3536,11701,11702],{"class":3557},"\".\u002Fassets\u002Fadaptive-icon.png\"",[3536,11704,4390],{"class":3546},[3536,11706,11707,11710,11712],{"class":3538,"line":7803},[3536,11708,11709],{"class":5580},"        \"backgroundColor\"",[3536,11711,3613],{"class":3546},[3536,11713,11655],{"class":3557},[3536,11715,11716],{"class":3538,"line":7813},[3536,11717,11718],{"class":3546},"      },\n",[3536,11720,11721,11724,11726,11728],{"class":3538,"line":7823},[3536,11722,11723],{"class":5580},"      \"edgeToEdgeEnabled\"",[3536,11725,3613],{"class":3546},[3536,11727,7158],{"class":3561},[3536,11729,4390],{"class":3546},[3536,11731,11732,11735,11737],{"class":3538,"line":7833},[3536,11733,11734],{"class":5580},"      \"predictiveBackGestureEnabled\"",[3536,11736,3613],{"class":3546},[3536,11738,11739],{"class":3561},"false\n",[3536,11741,11742],{"class":3538,"line":7843},[3536,11743,11660],{"class":3546},[3536,11745,11746,11748],{"class":3538,"line":7848},[3536,11747,11215],{"class":5580},[3536,11749,5584],{"class":3546},[3536,11751,11752,11755,11757],{"class":3538,"line":7854},[3536,11753,11754],{"class":5580},"      \"favicon\"",[3536,11756,3613],{"class":3546},[3536,11758,11759],{"class":3557},"\".\u002Fassets\u002Ffavicon.png\"\n",[3536,11761,11762],{"class":3538,"line":7859},[3536,11763,11660],{"class":3546},[3536,11765,11766,11769],{"class":3538,"line":7888},[3536,11767,11768],{"class":5580},"    \"plugins\"",[3536,11770,7131],{"class":3546},[3536,11772,11773,11776],{"class":3538,"line":7914},[3536,11774,11775],{"class":3557},"      \"expo-router\"",[3536,11777,4390],{"class":3546},[3536,11779,11780],{"class":3538,"line":7952},[3536,11781,11782],{"class":3557},"      \"@react-native-community\u002Fdatetimepicker\"\n",[3536,11784,11785],{"class":3538,"line":8796},[3536,11786,11787],{"class":3546},"    ],\n",[3536,11789,11790,11793],{"class":3538,"line":8838},[3536,11791,11792],{"class":5580},"    \"experiments\"",[3536,11794,5584],{"class":3546},[3536,11796,11797,11800,11802],{"class":3538,"line":8877},[3536,11798,11799],{"class":5580},"      \"typedRoutes\"",[3536,11801,3613],{"class":3546},[3536,11803,11504],{"class":3561},[3536,11805,11806],{"class":3538,"line":8918},[3536,11807,7077],{"class":3546},[3536,11809,11810],{"class":3538,"line":8928},[3536,11811,5599],{"class":3546},[3536,11813,11814],{"class":3538,"line":8938},[3536,11815,4476],{"class":3546},[3526,11817,11820],{"className":5567,"code":11818,"filename":11819,"language":5569,"meta":3531,"style":3531},"{\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",[3533,11821,11822,11826,11838,11845,11856,11863,11870,11875,11879,11883,11887,11894,11901,11906,11911],{"__ignoreMap":3531},[3536,11823,11824],{"class":3538,"line":3539},[3536,11825,4441],{"class":3546},[3536,11827,11828,11831,11833,11836],{"class":3538,"line":4381},[3536,11829,11830],{"class":5580},"  \"extends\"",[3536,11832,3613],{"class":3546},[3536,11834,11835],{"class":3557},"\"expo\u002Ftsconfig.base\"",[3536,11837,4390],{"class":3546},[3536,11839,11840,11843],{"class":3538,"line":4393},[3536,11841,11842],{"class":5580},"  \"compilerOptions\"",[3536,11844,5584],{"class":3546},[3536,11846,11847,11850,11852,11854],{"class":3538,"line":4414},[3536,11848,11849],{"class":5580},"    \"strict\"",[3536,11851,3613],{"class":3546},[3536,11853,7158],{"class":3561},[3536,11855,4390],{"class":3546},[3536,11857,11858,11861],{"class":3538,"line":4470},[3536,11859,11860],{"class":5580},"    \"paths\"",[3536,11862,5584],{"class":3546},[3536,11864,11865,11868],{"class":3538,"line":4479},[3536,11866,11867],{"class":5580},"      \"@\u002F*\"",[3536,11869,7131],{"class":3546},[3536,11871,11872],{"class":3538,"line":4484},[3536,11873,11874],{"class":3557},"        \".\u002Fsrc\u002F*\"\n",[3536,11876,11877],{"class":3538,"line":4490},[3536,11878,7253],{"class":3546},[3536,11880,11881],{"class":3538,"line":7163},[3536,11882,7077],{"class":3546},[3536,11884,11885],{"class":3538,"line":7171},[3536,11886,4579],{"class":3546},[3536,11888,11889,11892],{"class":3538,"line":7177},[3536,11890,11891],{"class":5580},"  \"include\"",[3536,11893,7131],{"class":3546},[3536,11895,11896,11899],{"class":3538,"line":7190},[3536,11897,11898],{"class":3557},"    \"**\u002F*.ts\"",[3536,11900,4390],{"class":3546},[3536,11902,11903],{"class":3538,"line":7203},[3536,11904,11905],{"class":3557},"    \"**\u002F*.tsx\"\n",[3536,11907,11908],{"class":3538,"line":7214},[3536,11909,11910],{"class":3546},"  ]\n",[3536,11912,11913],{"class":3538,"line":7220},[3536,11914,4476],{"class":3546},[3526,11916,11918],{"className":3528,"code":11917,"filename":7961,"language":3530,"meta":3531,"style":3531},"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",[3533,11919,11920,11936,11952,11956,11973,11996,12000,12005,12010,12015,12020,12025,12030,12035,12046,12056,12060,12064,12074,12093,12097,12103,12107,12142,12148,12158,12176,12192,12205,12227,12237,12243,12247,12279,12286,12296,12307,12317,12327,12337,12347,12354,12359,12367,12371,12375,12379,12383,12395,12401,12409,12417,12426,12434,12442,12446],{"__ignoreMap":3531},[3536,11921,11922,11924,11926,11928,11930,11932,11934],{"class":3538,"line":3539},[3536,11923,4726],{"class":4725},[3536,11925,3596],{"class":3546},[3536,11927,7978],{"class":3542},[3536,11929,4733],{"class":3546},[3536,11931,4736],{"class":4725},[3536,11933,4739],{"class":3557},[3536,11935,4742],{"class":3546},[3536,11937,11938,11940,11942,11944,11946,11948,11950],{"class":3538,"line":4381},[3536,11939,4726],{"class":4725},[3536,11941,3596],{"class":3546},[3536,11943,7995],{"class":3542},[3536,11945,4733],{"class":3546},[3536,11947,4736],{"class":4725},[3536,11949,8002],{"class":3557},[3536,11951,4742],{"class":3546},[3536,11953,11954],{"class":3538,"line":4393},[3536,11955,4748],{"emptyLinePlaceholder":4747},[3536,11957,11958,11960,11962,11964,11966,11968,11971],{"class":3538,"line":4414},[3536,11959,4726],{"class":4725},[3536,11961,3596],{"class":3546},[3536,11963,4679],{"class":3542},[3536,11965,4733],{"class":3546},[3536,11967,4736],{"class":4725},[3536,11969,11970],{"class":3557}," '@\u002Ffeatures\u002Ftrips'",[3536,11972,4742],{"class":3546},[3536,11974,11975,11977,11979,11982,11984,11987,11989,11991,11994],{"class":3538,"line":4470},[3536,11976,4726],{"class":4725},[3536,11978,3596],{"class":3546},[3536,11980,11981],{"class":3542},"ThemeProvider",[3536,11983,3755],{"class":3546},[3536,11985,11986],{"class":3542},"useTheme",[3536,11988,4733],{"class":3546},[3536,11990,4736],{"class":4725},[3536,11992,11993],{"class":3557}," '@\u002Fshared\u002Ftheme'",[3536,11995,4742],{"class":3546},[3536,11997,11998],{"class":3538,"line":4479},[3536,11999,4748],{"emptyLinePlaceholder":4747},[3536,12001,12002],{"class":3538,"line":4484},[3536,12003,12004],{"class":4573},"\u002F**\n",[3536,12006,12007],{"class":3538,"line":4490},[3536,12008,12009],{"class":4573}," * Кореневий Stack:\n",[3536,12011,12012],{"class":3538,"line":7163},[3536,12013,12014],{"class":4573}," * - (tabs) — вкладки (всередині «Поїздки» ще один Stack)\n",[3536,12016,12017],{"class":3538,"line":7171},[3536,12018,12019],{"class":4573}," * - create-trip — modal поверх усього (вкладки ховаються)\n",[3536,12021,12022],{"class":3538,"line":7177},[3536,12023,12024],{"class":4573}," *\n",[3536,12026,12027],{"class":3538,"line":7190},[3536,12028,12029],{"class":4573}," * initialRouteName: щоб deep link \u002F reload на modal мав куди «спертись».\n",[3536,12031,12032],{"class":3538,"line":7203},[3536,12033,12034],{"class":4573}," *\u002F\n",[3536,12036,12037,12039,12041,12044],{"class":3538,"line":7214},[3536,12038,4753],{"class":4725},[3536,12040,7692],{"class":3561},[3536,12042,12043],{"class":3599}," unstable_settings",[3536,12045,7632],{"class":3546},[3536,12047,12048,12051,12054],{"class":3538,"line":7220},[3536,12049,12050],{"class":3542},"  initialRouteName:",[3536,12052,12053],{"class":3557}," '(tabs)'",[3536,12055,4390],{"class":3546},[3536,12057,12058],{"class":3538,"line":7226},[3536,12059,7681],{"class":3546},[3536,12061,12062],{"class":3538,"line":7244},[3536,12063,4748],{"emptyLinePlaceholder":4747},[3536,12065,12066,12069,12072],{"class":3538,"line":7250},[3536,12067,12068],{"class":3561},"function",[3536,12070,12071],{"class":3550}," RootNavigator",[3536,12073,4765],{"class":3546},[3536,12075,12076,12078,12080,12083,12085,12087,12089,12091],{"class":3538,"line":7256},[3536,12077,4770],{"class":3561},[3536,12079,3596],{"class":3546},[3536,12081,12082],{"class":3599},"colors",[3536,12084,3755],{"class":3546},[3536,12086,5564],{"class":3599},[3536,12088,3602],{"class":3546},[3536,12090,11986],{"class":3550},[3536,12092,7911],{"class":3546},[3536,12094,12095],{"class":3538,"line":7261},[3536,12096,4748],{"emptyLinePlaceholder":4747},[3536,12098,12099,12101],{"class":3538,"line":7266},[3536,12100,4982],{"class":4725},[3536,12102,4985],{"class":3546},[3536,12104,12105],{"class":3538,"line":7803},[3536,12106,8032],{"class":4309},[3536,12108,12109,12111,12113,12115,12117,12119,12121,12124,12127,12130,12133,12136,12138,12140],{"class":3538,"line":7813},[3536,12110,5000],{"class":4309},[3536,12112,7995],{"class":3616},[3536,12114,8041],{"class":4315},[3536,12116,4319],{"class":3546},[3536,12118,4322],{"class":3561},[3536,12120,5564],{"class":3542},[3536,12122,12123],{"class":3546}," ===",[3536,12125,12126],{"class":3557}," 'dark'",[3536,12128,12129],{"class":3546}," ?",[3536,12131,12132],{"class":3557}," 'light'",[3536,12134,12135],{"class":3546}," :",[3536,12137,12126],{"class":3557},[3536,12139,3574],{"class":3561},[3536,12141,5058],{"class":4309},[3536,12143,12144,12146],{"class":3538,"line":7823},[3536,12145,5000],{"class":4309},[3536,12147,8055],{"class":3616},[3536,12149,12150,12152,12154,12156],{"class":3538,"line":7833},[3536,12151,8060],{"class":4315},[3536,12153,4319],{"class":3546},[3536,12155,4322],{"class":3561},[3536,12157,4441],{"class":3568},[3536,12159,12160,12162,12164,12166,12169,12171,12174],{"class":3538,"line":7843},[3536,12161,8119],{"class":3542},[3536,12163,3596],{"class":3568},[3536,12165,8076],{"class":3542},[3536,12167,12168],{"class":3542}," colors",[3536,12170,3547],{"class":3568},[3536,12172,12173],{"class":3542},"background",[3536,12175,4411],{"class":3568},[3536,12177,12178,12180,12182,12184,12186,12188,12190],{"class":3538,"line":7848},[3536,12179,8071],{"class":3542},[3536,12181,3596],{"class":3568},[3536,12183,8076],{"class":3542},[3536,12185,12168],{"class":3542},[3536,12187,3547],{"class":3568},[3536,12189,12173],{"class":3542},[3536,12191,4411],{"class":3568},[3536,12193,12194,12196,12198,12200,12203],{"class":3538,"line":7854},[3536,12195,8086],{"class":3542},[3536,12197,12168],{"class":3542},[3536,12199,3547],{"class":3568},[3536,12201,12202],{"class":3542},"primary",[3536,12204,4390],{"class":3568},[3536,12206,12207,12209,12211,12213,12215,12217,12219,12221,12223,12225],{"class":3538,"line":7859},[3536,12208,8096],{"class":3542},[3536,12210,3596],{"class":3568},[3536,12212,8101],{"class":3542},[3536,12214,12168],{"class":3542},[3536,12216,3547],{"class":3568},[3536,12218,3993],{"class":3542},[3536,12220,3755],{"class":3568},[3536,12222,8109],{"class":3542},[3536,12224,8112],{"class":3557},[3536,12226,4411],{"class":3568},[3536,12228,12229,12232,12235],{"class":3538,"line":7888},[3536,12230,12231],{"class":3542},"          headerShadowVisible:",[3536,12233,12234],{"class":3561}," false",[3536,12236,4390],{"class":3568},[3536,12238,12239,12241],{"class":3538,"line":7914},[3536,12240,8132],{"class":3568},[3536,12242,4476],{"class":3561},[3536,12244,12245],{"class":3538,"line":7952},[3536,12246,8139],{"class":4309},[3536,12248,12249,12251,12253,12255,12257,12260,12262,12264,12266,12268,12271,12273,12275,12277],{"class":3538,"line":8796},[3536,12250,8144],{"class":4309},[3536,12252,8147],{"class":3616},[3536,12254,8150],{"class":4315},[3536,12256,4319],{"class":3546},[3536,12258,12259],{"class":3557},"\"(tabs)\"",[3536,12261,8158],{"class":4315},[3536,12263,4319],{"class":3546},[3536,12265,4322],{"class":3561},[3536,12267,8165],{"class":3568},[3536,12269,12270],{"class":3542},"headerShown:",[3536,12272,12234],{"class":3561},[3536,12274,8174],{"class":3568},[3536,12276,3574],{"class":3561},[3536,12278,5058],{"class":4309},[3536,12280,12281,12283],{"class":3538,"line":8838},[3536,12282,8144],{"class":4309},[3536,12284,12285],{"class":3616},"Stack.Screen\n",[3536,12287,12288,12291,12293],{"class":3538,"line":8877},[3536,12289,12290],{"class":4315},"          name",[3536,12292,4319],{"class":3546},[3536,12294,12295],{"class":3557},"\"create-trip\"\n",[3536,12297,12298,12301,12303,12305],{"class":3538,"line":8918},[3536,12299,12300],{"class":4315},"          options",[3536,12302,4319],{"class":3546},[3536,12304,4322],{"class":3561},[3536,12306,4441],{"class":3568},[3536,12308,12309,12312,12315],{"class":3538,"line":8928},[3536,12310,12311],{"class":3542},"            headerShown:",[3536,12313,12314],{"class":3561}," true",[3536,12316,4390],{"class":3568},[3536,12318,12319,12322,12325],{"class":3538,"line":8938},[3536,12320,12321],{"class":3542},"            title:",[3536,12323,12324],{"class":3557}," 'Нова поїздка'",[3536,12326,4390],{"class":3568},[3536,12328,12329,12332,12335],{"class":3538,"line":8946},[3536,12330,12331],{"class":3542},"            presentation:",[3536,12333,12334],{"class":3557}," 'modal'",[3536,12336,4390],{"class":3568},[3536,12338,12339,12342,12345],{"class":3538,"line":8965},[3536,12340,12341],{"class":3542},"            headerBackTitle:",[3536,12343,12344],{"class":3557}," 'Закрити'",[3536,12346,4390],{"class":3568},[3536,12348,12349,12352],{"class":3538,"line":8993},[3536,12350,12351],{"class":3568},"          }",[3536,12353,4476],{"class":3561},[3536,12355,12356],{"class":3538,"line":8999},[3536,12357,12358],{"class":4309},"        \u002F>\n",[3536,12360,12361,12363,12365],{"class":3538,"line":9032},[3536,12362,8215],{"class":4309},[3536,12364,7978],{"class":3616},[3536,12366,4352],{"class":4309},[3536,12368,12369],{"class":3538,"line":9041},[3536,12370,8224],{"class":4309},[3536,12372,12373],{"class":3538,"line":9051},[3536,12374,5072],{"class":3546},[3536,12376,12377],{"class":3538,"line":9059},[3536,12378,4476],{"class":3546},[3536,12380,12381],{"class":3538,"line":9065},[3536,12382,4748],{"emptyLinePlaceholder":4747},[3536,12384,12385,12387,12389,12391,12393],{"class":3538,"line":9070},[3536,12386,4753],{"class":4725},[3536,12388,4756],{"class":4725},[3536,12390,4759],{"class":3561},[3536,12392,8019],{"class":3550},[3536,12394,4765],{"class":3546},[3536,12396,12397,12399],{"class":3538,"line":9077},[3536,12398,4982],{"class":4725},[3536,12400,4985],{"class":3546},[3536,12402,12403,12405,12407],{"class":3538,"line":9096},[3536,12404,4990],{"class":4309},[3536,12406,11981],{"class":3616},[3536,12408,4352],{"class":4309},[3536,12410,12411,12413,12415],{"class":3538,"line":9125},[3536,12412,5000],{"class":4309},[3536,12414,4679],{"class":3616},[3536,12416,4352],{"class":4309},[3536,12418,12419,12421,12424],{"class":3538,"line":9130},[3536,12420,8144],{"class":4309},[3536,12422,12423],{"class":3616},"RootNavigator",[3536,12425,5058],{"class":4309},[3536,12427,12428,12430,12432],{"class":3538,"line":9163},[3536,12429,8215],{"class":4309},[3536,12431,4679],{"class":3616},[3536,12433,4352],{"class":4309},[3536,12435,12436,12438,12440],{"class":3538,"line":9172},[3536,12437,5063],{"class":4309},[3536,12439,11981],{"class":3616},[3536,12441,4352],{"class":4309},[3536,12443,12444],{"class":3538,"line":9181},[3536,12445,5072],{"class":3546},[3536,12447,12448],{"class":3538,"line":9186},[3536,12449,4476],{"class":3546},[3526,12451,12454],{"className":3528,"code":12452,"filename":12453,"language":3530,"meta":3531,"style":3531},"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","app\u002F(tabs)\u002F_layout.tsx",[3533,12455,12456,12473,12491,12495,12511,12515,12519,12524,12529,12533,12546,12560,12564,12570,12577,12588,12597,12610,12624,12631,12644,12658,12663,12670,12679,12688,12692,12699,12704,12711,12721,12732,12742,12766,12803,12808,12814,12818,12824,12833,12843,12852,12872,12907,12911,12917,12921,12927,12936,12946,12955,12975,12982,12992,13005,13018,13023,13027,13033,13037,13045,13049],{"__ignoreMap":3531},[3536,12457,12458,12460,12462,12465,12467,12469,12471],{"class":3538,"line":3539},[3536,12459,4726],{"class":4725},[3536,12461,3596],{"class":3546},[3536,12463,12464],{"class":3542},"Tabs",[3536,12466,4733],{"class":3546},[3536,12468,4736],{"class":4725},[3536,12470,4739],{"class":3557},[3536,12472,4742],{"class":3546},[3536,12474,12475,12477,12479,12482,12484,12486,12489],{"class":3538,"line":4381},[3536,12476,4726],{"class":4725},[3536,12478,3596],{"class":3546},[3536,12480,12481],{"class":3542},"Ionicons",[3536,12483,4733],{"class":3546},[3536,12485,4736],{"class":4725},[3536,12487,12488],{"class":3557}," '@expo\u002Fvector-icons'",[3536,12490,4742],{"class":3546},[3536,12492,12493],{"class":3538,"line":4393},[3536,12494,4748],{"emptyLinePlaceholder":4747},[3536,12496,12497,12499,12501,12503,12505,12507,12509],{"class":3538,"line":4414},[3536,12498,4726],{"class":4725},[3536,12500,3596],{"class":3546},[3536,12502,11986],{"class":3542},[3536,12504,4733],{"class":3546},[3536,12506,4736],{"class":4725},[3536,12508,11993],{"class":3557},[3536,12510,4742],{"class":3546},[3536,12512,12513],{"class":3538,"line":4470},[3536,12514,4748],{"emptyLinePlaceholder":4747},[3536,12516,12517],{"class":3538,"line":4479},[3536,12518,12004],{"class":4573},[3536,12520,12521],{"class":3538,"line":4484},[3536,12522,12523],{"class":4573}," * Нижня панель вкладок.\n",[3536,12525,12526],{"class":3538,"line":4490},[3536,12527,12528],{"class":4573}," * «Поїздки» — вкладений Stack (список + деталі), не один index-файл.\n",[3536,12530,12531],{"class":3538,"line":7163},[3536,12532,12034],{"class":4573},[3536,12534,12535,12537,12539,12541,12544],{"class":3538,"line":7171},[3536,12536,4753],{"class":4725},[3536,12538,4756],{"class":4725},[3536,12540,4759],{"class":3561},[3536,12542,12543],{"class":3550}," TabsLayout",[3536,12545,4765],{"class":3546},[3536,12547,12548,12550,12552,12554,12556,12558],{"class":3538,"line":7177},[3536,12549,4770],{"class":3561},[3536,12551,3596],{"class":3546},[3536,12553,12082],{"class":3599},[3536,12555,3602],{"class":3546},[3536,12557,11986],{"class":3550},[3536,12559,7911],{"class":3546},[3536,12561,12562],{"class":3538,"line":7190},[3536,12563,4748],{"emptyLinePlaceholder":4747},[3536,12565,12566,12568],{"class":3538,"line":7203},[3536,12567,4982],{"class":4725},[3536,12569,4985],{"class":3546},[3536,12571,12572,12574],{"class":3538,"line":7214},[3536,12573,4990],{"class":4309},[3536,12575,12576],{"class":3616},"Tabs\n",[3536,12578,12579,12582,12584,12586],{"class":3538,"line":7220},[3536,12580,12581],{"class":4315},"      screenOptions",[3536,12583,4319],{"class":3546},[3536,12585,4322],{"class":3561},[3536,12587,4441],{"class":3568},[3536,12589,12590,12593,12595],{"class":3538,"line":7226},[3536,12591,12592],{"class":3542},"        headerShown:",[3536,12594,12234],{"class":3561},[3536,12596,4390],{"class":3568},[3536,12598,12599,12602,12604,12606,12608],{"class":3538,"line":7244},[3536,12600,12601],{"class":3542},"        tabBarActiveTintColor:",[3536,12603,12168],{"class":3542},[3536,12605,3547],{"class":3568},[3536,12607,12202],{"class":3542},[3536,12609,4390],{"class":3568},[3536,12611,12612,12615,12617,12619,12622],{"class":3538,"line":7250},[3536,12613,12614],{"class":3542},"        tabBarInactiveTintColor:",[3536,12616,12168],{"class":3542},[3536,12618,3547],{"class":3568},[3536,12620,12621],{"class":3542},"textSecondary",[3536,12623,4390],{"class":3568},[3536,12625,12626,12629],{"class":3538,"line":7256},[3536,12627,12628],{"class":3542},"        tabBarStyle:",[3536,12630,4547],{"class":3568},[3536,12632,12633,12636,12638,12640,12642],{"class":3538,"line":7261},[3536,12634,12635],{"class":3542},"          backgroundColor:",[3536,12637,12168],{"class":3542},[3536,12639,3547],{"class":3568},[3536,12641,12173],{"class":3542},[3536,12643,4390],{"class":3568},[3536,12645,12646,12649,12651,12653,12656],{"class":3538,"line":7266},[3536,12647,12648],{"class":3542},"          borderTopColor:",[3536,12650,12168],{"class":3542},[3536,12652,3547],{"class":3568},[3536,12654,12655],{"class":3542},"border",[3536,12657,4390],{"class":3568},[3536,12659,12660],{"class":3538,"line":7803},[3536,12661,12662],{"class":3568},"        },\n",[3536,12664,12665,12668],{"class":3538,"line":7813},[3536,12666,12667],{"class":3542},"        tabBarLabelStyle:",[3536,12669,4547],{"class":3568},[3536,12671,12672,12675,12677],{"class":3538,"line":7823},[3536,12673,12674],{"class":3542},"          fontSize:",[3536,12676,9357],{"class":4897},[3536,12678,4390],{"class":3568},[3536,12680,12681,12684,12686],{"class":3538,"line":7833},[3536,12682,12683],{"class":3542},"          fontWeight:",[3536,12685,8112],{"class":3557},[3536,12687,4390],{"class":3568},[3536,12689,12690],{"class":3538,"line":7843},[3536,12691,12662],{"class":3568},[3536,12693,12694,12697],{"class":3538,"line":7848},[3536,12695,12696],{"class":3568},"      }",[3536,12698,4476],{"class":3561},[3536,12700,12701],{"class":3538,"line":7854},[3536,12702,12703],{"class":4309},"    >\n",[3536,12705,12706,12708],{"class":3538,"line":7859},[3536,12707,5000],{"class":4309},[3536,12709,12710],{"class":3616},"Tabs.Screen\n",[3536,12712,12713,12716,12718],{"class":3538,"line":7888},[3536,12714,12715],{"class":4315},"        name",[3536,12717,4319],{"class":3546},[3536,12719,12720],{"class":3557},"\"trips\"\n",[3536,12722,12723,12726,12728,12730],{"class":3538,"line":7914},[3536,12724,12725],{"class":4315},"        options",[3536,12727,4319],{"class":3546},[3536,12729,4322],{"class":3561},[3536,12731,4441],{"class":3568},[3536,12733,12734,12737,12740],{"class":3538,"line":7952},[3536,12735,12736],{"class":3542},"          title:",[3536,12738,12739],{"class":3557}," 'Поїздки'",[3536,12741,4390],{"class":3568},[3536,12743,12744,12747,12749,12752,12755,12757,12760,12762,12764],{"class":3538,"line":8796},[3536,12745,12746],{"class":3550},"          tabBarIcon",[3536,12748,3987],{"class":3542},[3536,12750,12751],{"class":3568}," ({ ",[3536,12753,12754],{"class":3542},"color",[3536,12756,3755],{"class":3568},[3536,12758,12759],{"class":3542},"size",[3536,12761,8722],{"class":3568},[3536,12763,5042],{"class":3561},[3536,12765,4985],{"class":3568},[3536,12767,12768,12770,12772,12774,12776,12779,12782,12784,12786,12788,12790,12793,12795,12797,12799,12801],{"class":3538,"line":8838},[3536,12769,8755],{"class":4309},[3536,12771,12481],{"class":3616},[3536,12773,8150],{"class":4315},[3536,12775,4319],{"class":3546},[3536,12777,12778],{"class":3557},"\"map-outline\"",[3536,12780,12781],{"class":4315}," size",[3536,12783,4319],{"class":3546},[3536,12785,4322],{"class":3561},[3536,12787,12759],{"class":3542},[3536,12789,3574],{"class":3561},[3536,12791,12792],{"class":4315}," color",[3536,12794,4319],{"class":3546},[3536,12796,4322],{"class":3561},[3536,12798,12754],{"class":3542},[3536,12800,3574],{"class":3561},[3536,12802,5058],{"class":4309},[3536,12804,12805],{"class":3538,"line":8877},[3536,12806,12807],{"class":3568},"          ),\n",[3536,12809,12810,12812],{"class":3538,"line":8918},[3536,12811,8132],{"class":3568},[3536,12813,4476],{"class":3561},[3536,12815,12816],{"class":3538,"line":8928},[3536,12817,9062],{"class":4309},[3536,12819,12820,12822],{"class":3538,"line":8938},[3536,12821,5000],{"class":4309},[3536,12823,12710],{"class":3616},[3536,12825,12826,12828,12830],{"class":3538,"line":8946},[3536,12827,12715],{"class":4315},[3536,12829,4319],{"class":3546},[3536,12831,12832],{"class":3557},"\"places\"\n",[3536,12834,12835,12837,12839,12841],{"class":3538,"line":8965},[3536,12836,12725],{"class":4315},[3536,12838,4319],{"class":3546},[3536,12840,4322],{"class":3561},[3536,12842,4441],{"class":3568},[3536,12844,12845,12847,12850],{"class":3538,"line":8993},[3536,12846,12736],{"class":3542},[3536,12848,12849],{"class":3557}," 'Місця'",[3536,12851,4390],{"class":3568},[3536,12853,12854,12856,12858,12860,12862,12864,12866,12868,12870],{"class":3538,"line":8999},[3536,12855,12746],{"class":3550},[3536,12857,3987],{"class":3542},[3536,12859,12751],{"class":3568},[3536,12861,12754],{"class":3542},[3536,12863,3755],{"class":3568},[3536,12865,12759],{"class":3542},[3536,12867,8722],{"class":3568},[3536,12869,5042],{"class":3561},[3536,12871,4985],{"class":3568},[3536,12873,12874,12876,12878,12880,12882,12885,12887,12889,12891,12893,12895,12897,12899,12901,12903,12905],{"class":3538,"line":9032},[3536,12875,8755],{"class":4309},[3536,12877,12481],{"class":3616},[3536,12879,8150],{"class":4315},[3536,12881,4319],{"class":3546},[3536,12883,12884],{"class":3557},"\"location-outline\"",[3536,12886,12781],{"class":4315},[3536,12888,4319],{"class":3546},[3536,12890,4322],{"class":3561},[3536,12892,12759],{"class":3542},[3536,12894,3574],{"class":3561},[3536,12896,12792],{"class":4315},[3536,12898,4319],{"class":3546},[3536,12900,4322],{"class":3561},[3536,12902,12754],{"class":3542},[3536,12904,3574],{"class":3561},[3536,12906,5058],{"class":4309},[3536,12908,12909],{"class":3538,"line":9041},[3536,12910,12807],{"class":3568},[3536,12912,12913,12915],{"class":3538,"line":9051},[3536,12914,8132],{"class":3568},[3536,12916,4476],{"class":3561},[3536,12918,12919],{"class":3538,"line":9059},[3536,12920,9062],{"class":4309},[3536,12922,12923,12925],{"class":3538,"line":9065},[3536,12924,5000],{"class":4309},[3536,12926,12710],{"class":3616},[3536,12928,12929,12931,12933],{"class":3538,"line":9070},[3536,12930,12715],{"class":4315},[3536,12932,4319],{"class":3546},[3536,12934,12935],{"class":3557},"\"about\"\n",[3536,12937,12938,12940,12942,12944],{"class":3538,"line":9077},[3536,12939,12725],{"class":4315},[3536,12941,4319],{"class":3546},[3536,12943,4322],{"class":3561},[3536,12945,4441],{"class":3568},[3536,12947,12948,12950,12953],{"class":3538,"line":9096},[3536,12949,12736],{"class":3542},[3536,12951,12952],{"class":3557}," 'Ще'",[3536,12954,4390],{"class":3568},[3536,12956,12957,12959,12961,12963,12965,12967,12969,12971,12973],{"class":3538,"line":9125},[3536,12958,12746],{"class":3550},[3536,12960,3987],{"class":3542},[3536,12962,12751],{"class":3568},[3536,12964,12754],{"class":3542},[3536,12966,3755],{"class":3568},[3536,12968,12759],{"class":3542},[3536,12970,8722],{"class":3568},[3536,12972,5042],{"class":3561},[3536,12974,4985],{"class":3568},[3536,12976,12977,12979],{"class":3538,"line":9130},[3536,12978,8755],{"class":4309},[3536,12980,12981],{"class":3616},"Ionicons\n",[3536,12983,12984,12987,12989],{"class":3538,"line":9163},[3536,12985,12986],{"class":4315},"              name",[3536,12988,4319],{"class":3546},[3536,12990,12991],{"class":3557},"\"ellipsis-horizontal-circle-outline\"\n",[3536,12993,12994,12997,12999,13001,13003],{"class":3538,"line":9172},[3536,12995,12996],{"class":4315},"              size",[3536,12998,4319],{"class":3546},[3536,13000,4322],{"class":3561},[3536,13002,12759],{"class":3542},[3536,13004,4476],{"class":3561},[3536,13006,13007,13010,13012,13014,13016],{"class":3538,"line":9181},[3536,13008,13009],{"class":4315},"              color",[3536,13011,4319],{"class":3546},[3536,13013,4322],{"class":3561},[3536,13015,12754],{"class":3542},[3536,13017,4476],{"class":3561},[3536,13019,13020],{"class":3538,"line":9186},[3536,13021,13022],{"class":4309},"            \u002F>\n",[3536,13024,13025],{"class":3538,"line":9191},[3536,13026,12807],{"class":3568},[3536,13028,13029,13031],{"class":3538,"line":9196},[3536,13030,8132],{"class":3568},[3536,13032,4476],{"class":3561},[3536,13034,13035],{"class":3538,"line":9215},[3536,13036,9062],{"class":4309},[3536,13038,13039,13041,13043],{"class":3538,"line":9237},[3536,13040,5063],{"class":4309},[3536,13042,12464],{"class":3616},[3536,13044,4352],{"class":4309},[3536,13046,13047],{"class":3538,"line":9245},[3536,13048,5072],{"class":3546},[3536,13050,13051],{"class":3538,"line":9256},[3536,13052,4476],{"class":3546},[3526,13054,13057],{"className":3528,"code":13055,"filename":13056,"language":3530,"meta":3531,"style":3531},"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","app\u002F(tabs)\u002Ftrips\u002F_layout.tsx",[3533,13058,13059,13075,13079,13095,13099,13103,13108,13113,13117,13130,13144,13148,13154,13160,13170,13187,13200,13223,13232,13249,13255,13259,13289,13295,13304,13314,13323,13333,13339,13343,13351,13355],{"__ignoreMap":3531},[3536,13060,13061,13063,13065,13067,13069,13071,13073],{"class":3538,"line":3539},[3536,13062,4726],{"class":4725},[3536,13064,3596],{"class":3546},[3536,13066,7978],{"class":3542},[3536,13068,4733],{"class":3546},[3536,13070,4736],{"class":4725},[3536,13072,4739],{"class":3557},[3536,13074,4742],{"class":3546},[3536,13076,13077],{"class":3538,"line":4381},[3536,13078,4748],{"emptyLinePlaceholder":4747},[3536,13080,13081,13083,13085,13087,13089,13091,13093],{"class":3538,"line":4393},[3536,13082,4726],{"class":4725},[3536,13084,3596],{"class":3546},[3536,13086,11986],{"class":3542},[3536,13088,4733],{"class":3546},[3536,13090,4736],{"class":4725},[3536,13092,11993],{"class":3557},[3536,13094,4742],{"class":3546},[3536,13096,13097],{"class":3538,"line":4414},[3536,13098,4748],{"emptyLinePlaceholder":4747},[3536,13100,13101],{"class":3538,"line":4470},[3536,13102,12004],{"class":4573},[3536,13104,13105],{"class":3538,"line":4479},[3536,13106,13107],{"class":4573}," * Вкладений Stack усередині вкладки «Поїздки».\n",[3536,13109,13110],{"class":3538,"line":4484},[3536,13111,13112],{"class":4573}," * Список (index) → деталі ([id]); tab bar лишається видимим.\n",[3536,13114,13115],{"class":3538,"line":4490},[3536,13116,12034],{"class":4573},[3536,13118,13119,13121,13123,13125,13128],{"class":3538,"line":7163},[3536,13120,4753],{"class":4725},[3536,13122,4756],{"class":4725},[3536,13124,4759],{"class":3561},[3536,13126,13127],{"class":3550}," TripsStackLayout",[3536,13129,4765],{"class":3546},[3536,13131,13132,13134,13136,13138,13140,13142],{"class":3538,"line":7171},[3536,13133,4770],{"class":3561},[3536,13135,3596],{"class":3546},[3536,13137,12082],{"class":3599},[3536,13139,3602],{"class":3546},[3536,13141,11986],{"class":3550},[3536,13143,7911],{"class":3546},[3536,13145,13146],{"class":3538,"line":7177},[3536,13147,4748],{"emptyLinePlaceholder":4747},[3536,13149,13150,13152],{"class":3538,"line":7190},[3536,13151,4982],{"class":4725},[3536,13153,4985],{"class":3546},[3536,13155,13156,13158],{"class":3538,"line":7203},[3536,13157,4990],{"class":4309},[3536,13159,8055],{"class":3616},[3536,13161,13162,13164,13166,13168],{"class":3538,"line":7214},[3536,13163,12581],{"class":4315},[3536,13165,4319],{"class":3546},[3536,13167,4322],{"class":3561},[3536,13169,4441],{"class":3568},[3536,13171,13172,13175,13177,13179,13181,13183,13185],{"class":3538,"line":7220},[3536,13173,13174],{"class":3542},"        headerStyle:",[3536,13176,3596],{"class":3568},[3536,13178,8076],{"class":3542},[3536,13180,12168],{"class":3542},[3536,13182,3547],{"class":3568},[3536,13184,12173],{"class":3542},[3536,13186,4411],{"class":3568},[3536,13188,13189,13192,13194,13196,13198],{"class":3538,"line":7226},[3536,13190,13191],{"class":3542},"        headerTintColor:",[3536,13193,12168],{"class":3542},[3536,13195,3547],{"class":3568},[3536,13197,12202],{"class":3542},[3536,13199,4390],{"class":3568},[3536,13201,13202,13205,13207,13209,13211,13213,13215,13217,13219,13221],{"class":3538,"line":7244},[3536,13203,13204],{"class":3542},"        headerTitleStyle:",[3536,13206,3596],{"class":3568},[3536,13208,8101],{"class":3542},[3536,13210,12168],{"class":3542},[3536,13212,3547],{"class":3568},[3536,13214,3993],{"class":3542},[3536,13216,3755],{"class":3568},[3536,13218,8109],{"class":3542},[3536,13220,8112],{"class":3557},[3536,13222,4411],{"class":3568},[3536,13224,13225,13228,13230],{"class":3538,"line":7250},[3536,13226,13227],{"class":3542},"        headerShadowVisible:",[3536,13229,12234],{"class":3561},[3536,13231,4390],{"class":3568},[3536,13233,13234,13237,13239,13241,13243,13245,13247],{"class":3538,"line":7256},[3536,13235,13236],{"class":3542},"        contentStyle:",[3536,13238,3596],{"class":3568},[3536,13240,8076],{"class":3542},[3536,13242,12168],{"class":3542},[3536,13244,3547],{"class":3568},[3536,13246,12173],{"class":3542},[3536,13248,4411],{"class":3568},[3536,13250,13251,13253],{"class":3538,"line":7261},[3536,13252,12696],{"class":3568},[3536,13254,4476],{"class":3561},[3536,13256,13257],{"class":3538,"line":7266},[3536,13258,12703],{"class":4309},[3536,13260,13261,13263,13265,13267,13269,13271,13273,13275,13277,13279,13281,13283,13285,13287],{"class":3538,"line":7803},[3536,13262,5000],{"class":4309},[3536,13264,8147],{"class":3616},[3536,13266,8150],{"class":4315},[3536,13268,4319],{"class":3546},[3536,13270,8155],{"class":3557},[3536,13272,8158],{"class":4315},[3536,13274,4319],{"class":3546},[3536,13276,4322],{"class":3561},[3536,13278,8165],{"class":3568},[3536,13280,12270],{"class":3542},[3536,13282,12234],{"class":3561},[3536,13284,8174],{"class":3568},[3536,13286,3574],{"class":3561},[3536,13288,5058],{"class":4309},[3536,13290,13291,13293],{"class":3538,"line":7813},[3536,13292,5000],{"class":4309},[3536,13294,12285],{"class":3616},[3536,13296,13297,13299,13301],{"class":3538,"line":7823},[3536,13298,12715],{"class":4315},[3536,13300,4319],{"class":3546},[3536,13302,13303],{"class":3557},"\"[id]\"\n",[3536,13305,13306,13308,13310,13312],{"class":3538,"line":7833},[3536,13307,12725],{"class":4315},[3536,13309,4319],{"class":3546},[3536,13311,4322],{"class":3561},[3536,13313,4441],{"class":3568},[3536,13315,13316,13318,13321],{"class":3538,"line":7843},[3536,13317,12736],{"class":3542},[3536,13319,13320],{"class":3557}," 'Поїздка'",[3536,13322,4390],{"class":3568},[3536,13324,13325,13328,13331],{"class":3538,"line":7848},[3536,13326,13327],{"class":3542},"          headerBackTitle:",[3536,13329,13330],{"class":3557}," 'Список'",[3536,13332,4390],{"class":3568},[3536,13334,13335,13337],{"class":3538,"line":7854},[3536,13336,8132],{"class":3568},[3536,13338,4476],{"class":3561},[3536,13340,13341],{"class":3538,"line":7859},[3536,13342,9062],{"class":4309},[3536,13344,13345,13347,13349],{"class":3538,"line":7888},[3536,13346,5063],{"class":4309},[3536,13348,7978],{"class":3616},[3536,13350,4352],{"class":4309},[3536,13352,13353],{"class":3538,"line":7914},[3536,13354,5072],{"class":3546},[3536,13356,13357],{"class":3538,"line":7952},[3536,13358,4476],{"class":3546},[3526,13360,13363],{"className":3528,"code":13361,"filename":13362,"language":3530,"meta":3531,"style":3531},"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",[3533,13364,13365,13388,13394,13401,13408,13415,13422,13429,13440,13458,13474,13478,13484,13491,13498,13505,13512,13522,13531,13541,13565,13591,13595,13625,13645,13662,13679,13683,13687,13699,13711,13731,13764,13792,13817,13821,13835,13852,13879,13883,13893,13897,13901,13914,13931,13936,13962,13966,13974,13978,13982,14000,14011,14016,14027,14034,14045,14055,14065,14069,14082,14104,14134,14139,14147,14151,14155,14187,14191,14201,14242,14264,14293,14326,14332,14337,14350,14375,14394,14425,14432,14442,14484,14504,14509,14517,14527,14531,14564,14572,14576,14580,14589,14596,14608,14620,14624,14637,14651,14665,14670,14678,14683,14715,14721,14730,14738,14749,14767,14785,14790,14796,14805,14814,14819,14824,14831,14855,14862,14873,14886,14892,14906,14920,14934,14949,14963,14969,14977,14982,15007,15043,15069,15078,15085,15095,15107,15121,15135,15145,15152,15158,15175,15210,15221,15230,15235,15285,15308,15334,15342,15349,15367,15396,15408,15421,15427,15454,15468,15474,15482,15493,15514,15541,15547,15554,15564,15596,15615,15621,15635,15645,15654,15660,15668,15677,15686,15691,15715,15723,15737,15752,15767,15782,15797,15809,15822,15835,15848,15855,15897,15907,15915,15929,15944,15962,15984,15989,15995,16005,16010,16019,16024,16031,16042,16054,16059,16072,16085,16098,16112,16126,16131,16138,16143,16151,16162,16178,16195,16202,16207,16216,16225,16230,16235,16240,16257,16265,16274,16279,16287,16297,16302,16310,16321,16332,16337,16345,16354,16363,16372,16381,16386,16394,16403,16408,16416,16425,16430,16438,16447,16456,16461,16469,16479,16484,16492,16501,16506,16514,16524,16529],{"__ignoreMap":3531},[3536,13366,13367,13369,13371,13374,13376,13379,13381,13383,13386],{"class":3538,"line":3539},[3536,13368,4726],{"class":4725},[3536,13370,3596],{"class":3546},[3536,13372,13373],{"class":3542},"useCallback",[3536,13375,3755],{"class":3546},[3536,13377,13378],{"class":3542},"useState",[3536,13380,4733],{"class":3546},[3536,13382,4736],{"class":4725},[3536,13384,13385],{"class":3557}," 'react'",[3536,13387,4742],{"class":3546},[3536,13389,13390,13392],{"class":3538,"line":4381},[3536,13391,4726],{"class":4725},[3536,13393,4547],{"class":3546},[3536,13395,13396,13399],{"class":3538,"line":4393},[3536,13397,13398],{"class":3542},"  FlatList",[3536,13400,4390],{"class":3546},[3536,13402,13403,13406],{"class":3538,"line":4414},[3536,13404,13405],{"class":3542},"  Pressable",[3536,13407,4390],{"class":3546},[3536,13409,13410,13413],{"class":3538,"line":4470},[3536,13411,13412],{"class":3542},"  RefreshControl",[3536,13414,4390],{"class":3546},[3536,13416,13417,13420],{"class":3538,"line":4479},[3536,13418,13419],{"class":3542},"  StyleSheet",[3536,13421,4390],{"class":3546},[3536,13423,13424,13427],{"class":3538,"line":4484},[3536,13425,13426],{"class":3542},"  View",[3536,13428,4390],{"class":3546},[3536,13430,13431,13434,13436,13438],{"class":3538,"line":4490},[3536,13432,13433],{"class":3546},"} ",[3536,13435,4736],{"class":4725},[3536,13437,8281],{"class":3557},[3536,13439,4742],{"class":3546},[3536,13441,13442,13444,13446,13449,13451,13453,13456],{"class":3538,"line":7163},[3536,13443,4726],{"class":4725},[3536,13445,3596],{"class":3546},[3536,13447,13448],{"class":3542},"FlashList",[3536,13450,4733],{"class":3546},[3536,13452,4736],{"class":4725},[3536,13454,13455],{"class":3557}," '@shopify\u002Fflash-list'",[3536,13457,4742],{"class":3546},[3536,13459,13460,13462,13464,13466,13468,13470,13472],{"class":3538,"line":7171},[3536,13461,4726],{"class":4725},[3536,13463,3596],{"class":3546},[3536,13465,8296],{"class":3542},[3536,13467,4733],{"class":3546},[3536,13469,4736],{"class":4725},[3536,13471,4739],{"class":3557},[3536,13473,4742],{"class":3546},[3536,13475,13476],{"class":3538,"line":7177},[3536,13477,4748],{"emptyLinePlaceholder":4747},[3536,13479,13480,13482],{"class":3538,"line":7190},[3536,13481,4726],{"class":4725},[3536,13483,4547],{"class":3546},[3536,13485,13486,13489],{"class":3538,"line":7203},[3536,13487,13488],{"class":3542},"  mockPlaces",[3536,13490,4390],{"class":3546},[3536,13492,13493,13496],{"class":3538,"line":7214},[3536,13494,13495],{"class":3542},"  PlaceChip",[3536,13497,4390],{"class":3546},[3536,13499,13500,13503],{"class":3538,"line":7220},[3536,13501,13502],{"class":3542},"  TripCard",[3536,13504,4390],{"class":3546},[3536,13506,13507,13510],{"class":3538,"line":7226},[3536,13508,13509],{"class":3542},"  useTrips",[3536,13511,4390],{"class":3546},[3536,13513,13514,13517,13520],{"class":3538,"line":7244},[3536,13515,13516],{"class":4725},"  type",[3536,13518,13519],{"class":3542}," Place",[3536,13521,4390],{"class":3546},[3536,13523,13524,13526,13529],{"class":3538,"line":7250},[3536,13525,13516],{"class":4725},[3536,13527,13528],{"class":3542}," Trip",[3536,13530,4390],{"class":3546},[3536,13532,13533,13535,13537,13539],{"class":3538,"line":7256},[3536,13534,13433],{"class":3546},[3536,13536,4736],{"class":4725},[3536,13538,11970],{"class":3557},[3536,13540,4742],{"class":3546},[3536,13542,13543,13545,13547,13549,13551,13554,13557,13559,13561,13563],{"class":3538,"line":7261},[3536,13544,4726],{"class":4725},[3536,13546,3596],{"class":3546},[3536,13548,11986],{"class":3542},[3536,13550,3755],{"class":3546},[3536,13552,13553],{"class":4725},"type",[3536,13555,13556],{"class":3542}," ThemePreference",[3536,13558,4733],{"class":3546},[3536,13560,4736],{"class":4725},[3536,13562,11993],{"class":3557},[3536,13564,4742],{"class":3546},[3536,13566,13567,13569,13571,13573,13575,13577,13579,13582,13584,13586,13589],{"class":3538,"line":7266},[3536,13568,4726],{"class":4725},[3536,13570,3596],{"class":3546},[3536,13572,6704],{"class":3542},[3536,13574,3755],{"class":3546},[3536,13576,5021],{"class":3542},[3536,13578,3755],{"class":3546},[3536,13580,13581],{"class":3542},"Screen",[3536,13583,4733],{"class":3546},[3536,13585,4736],{"class":4725},[3536,13587,13588],{"class":3557}," '@\u002Fshared\u002Fui'",[3536,13590,4742],{"class":3546},[3536,13592,13593],{"class":3538,"line":7803},[3536,13594,4748],{"emptyLinePlaceholder":4747},[3536,13596,13597,13599,13602,13605,13607,13609,13612,13615,13618,13620,13622],{"class":3538,"line":7813},[3536,13598,3593],{"class":3561},[3536,13600,13601],{"class":3599}," PREFS",[3536,13603,13604],{"class":3546},": { ",[3536,13606,3571],{"class":3542},[3536,13608,3613],{"class":3546},[3536,13610,13611],{"class":3616},"ThemePreference",[3536,13613,13614],{"class":3546},"; ",[3536,13616,13617],{"class":3542},"label",[3536,13619,3613],{"class":3546},[3536,13621,3617],{"class":3616},[3536,13623,13624],{"class":3546}," }[] = [\n",[3536,13626,13627,13630,13632,13635,13637,13640,13643],{"class":3538,"line":7823},[3536,13628,13629],{"class":3546},"  { ",[3536,13631,4401],{"class":3542},[3536,13633,13634],{"class":3557}," 'system'",[3536,13636,3755],{"class":3546},[3536,13638,13639],{"class":3542},"label:",[3536,13641,13642],{"class":3557}," 'Система'",[3536,13644,4411],{"class":3546},[3536,13646,13647,13649,13651,13653,13655,13657,13660],{"class":3538,"line":7833},[3536,13648,13629],{"class":3546},[3536,13650,4401],{"class":3542},[3536,13652,12132],{"class":3557},[3536,13654,3755],{"class":3546},[3536,13656,13639],{"class":3542},[3536,13658,13659],{"class":3557}," 'Світла'",[3536,13661,4411],{"class":3546},[3536,13663,13664,13666,13668,13670,13672,13674,13677],{"class":3538,"line":7843},[3536,13665,13629],{"class":3546},[3536,13667,4401],{"class":3542},[3536,13669,12126],{"class":3557},[3536,13671,3755],{"class":3546},[3536,13673,13639],{"class":3542},[3536,13675,13676],{"class":3557}," 'Темна'",[3536,13678,4411],{"class":3546},[3536,13680,13681],{"class":3538,"line":7848},[3536,13682,7851],{"class":3546},[3536,13684,13685],{"class":3538,"line":7854},[3536,13686,4748],{"emptyLinePlaceholder":4747},[3536,13688,13689,13691,13693,13695,13697],{"class":3538,"line":7859},[3536,13690,4753],{"class":4725},[3536,13692,4756],{"class":4725},[3536,13694,4759],{"class":3561},[3536,13696,8375],{"class":3550},[3536,13698,4765],{"class":3546},[3536,13700,13701,13703,13705,13707,13709],{"class":3538,"line":7888},[3536,13702,4770],{"class":3561},[3536,13704,5045],{"class":3599},[3536,13706,4874],{"class":3546},[3536,13708,8296],{"class":3550},[3536,13710,7911],{"class":3546},[3536,13712,13713,13715,13717,13719,13721,13724,13726,13729],{"class":3538,"line":7914},[3536,13714,4770],{"class":3561},[3536,13716,3596],{"class":3546},[3536,13718,4150],{"class":3599},[3536,13720,3755],{"class":3546},[3536,13722,13723],{"class":3599},"resetToMock",[3536,13725,3602],{"class":3546},[3536,13727,13728],{"class":3550},"useTrips",[3536,13730,7911],{"class":3546},[3536,13732,13733,13735,13737,13739,13741,13744,13746,13749,13751,13754,13756,13758,13760,13762],{"class":3538,"line":7952},[3536,13734,4770],{"class":3561},[3536,13736,3596],{"class":3546},[3536,13738,12082],{"class":3599},[3536,13740,3755],{"class":3546},[3536,13742,13743],{"class":3599},"spacing",[3536,13745,3755],{"class":3546},[3536,13747,13748],{"class":3599},"preference",[3536,13750,3755],{"class":3546},[3536,13752,13753],{"class":3599},"setPreference",[3536,13755,3755],{"class":3546},[3536,13757,5564],{"class":3599},[3536,13759,3602],{"class":3546},[3536,13761,11986],{"class":3550},[3536,13763,7911],{"class":3546},[3536,13765,13766,13768,13771,13774,13777,13779,13781,13784,13787,13790],{"class":3538,"line":8796},[3536,13767,4770],{"class":3561},[3536,13769,13770],{"class":3546}," [",[3536,13772,13773],{"class":3599},"places",[3536,13775,13776],{"class":3546},"] = ",[3536,13778,13378],{"class":3550},[3536,13780,4310],{"class":3546},[3536,13782,13783],{"class":3616},"Place",[3536,13785,13786],{"class":3546},"[]>(",[3536,13788,13789],{"class":3542},"mockPlaces",[3536,13791,3580],{"class":3546},[3536,13793,13794,13796,13798,13801,13803,13806,13808,13810,13812,13815],{"class":3538,"line":8838},[3536,13795,4770],{"class":3561},[3536,13797,13770],{"class":3546},[3536,13799,13800],{"class":3599},"refreshing",[3536,13802,3755],{"class":3546},[3536,13804,13805],{"class":3599},"setRefreshing",[3536,13807,13776],{"class":3546},[3536,13809,13378],{"class":3550},[3536,13811,3554],{"class":3546},[3536,13813,13814],{"class":3561},"false",[3536,13816,3580],{"class":3546},[3536,13818,13819],{"class":3538,"line":8877},[3536,13820,4748],{"emptyLinePlaceholder":4747},[3536,13822,13823,13825,13828,13830,13832],{"class":3538,"line":8918},[3536,13824,4770],{"class":3561},[3536,13826,13827],{"class":3599}," handleOpenTrip",[3536,13829,4874],{"class":3546},[3536,13831,13373],{"class":3550},[3536,13833,13834],{"class":3546},"(\n",[3536,13836,13837,13840,13842,13844,13846,13848,13850],{"class":3538,"line":8928},[3536,13838,13839],{"class":3546},"    (",[3536,13841,3565],{"class":3542},[3536,13843,3613],{"class":3546},[3536,13845,4658],{"class":3616},[3536,13847,7932],{"class":3546},[3536,13849,5042],{"class":3561},[3536,13851,4547],{"class":3546},[3536,13853,13854,13857,13859,13861,13863,13865,13867,13869,13871,13873,13875,13877],{"class":3538,"line":8938},[3536,13855,13856],{"class":3542},"      router",[3536,13858,3547],{"class":3546},[3536,13860,3551],{"class":3550},[3536,13862,3554],{"class":3546},[3536,13864,3558],{"class":3557},[3536,13866,3562],{"class":3561},[3536,13868,3565],{"class":3542},[3536,13870,3547],{"class":3568},[3536,13872,3571],{"class":3542},[3536,13874,3574],{"class":3561},[3536,13876,3577],{"class":3557},[3536,13878,3580],{"class":3546},[3536,13880,13881],{"class":3538,"line":8946},[3536,13882,11660],{"class":3546},[3536,13884,13885,13888,13890],{"class":3538,"line":8965},[3536,13886,13887],{"class":3546},"    [",[3536,13889,3543],{"class":3542},[3536,13891,13892],{"class":3546},"],\n",[3536,13894,13895],{"class":3538,"line":8993},[3536,13896,5072],{"class":3546},[3536,13898,13899],{"class":3538,"line":8999},[3536,13900,4748],{"emptyLinePlaceholder":4747},[3536,13902,13903,13905,13908,13910,13912],{"class":3538,"line":9032},[3536,13904,4770],{"class":3561},[3536,13906,13907],{"class":3599}," handleOpenPlace",[3536,13909,4874],{"class":3546},[3536,13911,13373],{"class":3550},[3536,13913,13834],{"class":3546},[3536,13915,13916,13918,13921,13923,13925,13927,13929],{"class":3538,"line":9041},[3536,13917,13839],{"class":3546},[3536,13919,13920],{"class":3542},"place",[3536,13922,3613],{"class":3546},[3536,13924,13783],{"class":3616},[3536,13926,7932],{"class":3546},[3536,13928,5042],{"class":3561},[3536,13930,4547],{"class":3546},[3536,13932,13933],{"class":3538,"line":9051},[3536,13934,13935],{"class":4573},"      \u002F\u002F Місце належить поїздці — відкриваємо її деталі у вкладеному Stack.\n",[3536,13937,13938,13940,13942,13944,13946,13948,13950,13952,13954,13956,13958,13960],{"class":3538,"line":9059},[3536,13939,13856],{"class":3542},[3536,13941,3547],{"class":3546},[3536,13943,3551],{"class":3550},[3536,13945,3554],{"class":3546},[3536,13947,3558],{"class":3557},[3536,13949,3562],{"class":3561},[3536,13951,13920],{"class":3542},[3536,13953,3547],{"class":3568},[3536,13955,4192],{"class":3542},[3536,13957,3574],{"class":3561},[3536,13959,3577],{"class":3557},[3536,13961,3580],{"class":3546},[3536,13963,13964],{"class":3538,"line":9065},[3536,13965,11660],{"class":3546},[3536,13967,13968,13970,13972],{"class":3538,"line":9070},[3536,13969,13887],{"class":3546},[3536,13971,3543],{"class":3542},[3536,13973,13892],{"class":3546},[3536,13975,13976],{"class":3538,"line":9077},[3536,13977,5072],{"class":3546},[3536,13979,13980],{"class":3538,"line":9096},[3536,13981,4748],{"emptyLinePlaceholder":4747},[3536,13983,13984,13986,13989,13991,13993,13996,13998],{"class":3538,"line":9125},[3536,13985,4770],{"class":3561},[3536,13987,13988],{"class":3599}," onRefresh",[3536,13990,4874],{"class":3546},[3536,13992,13373],{"class":3550},[3536,13994,13995],{"class":3546},"(() ",[3536,13997,5042],{"class":3561},[3536,13999,4547],{"class":3546},[3536,14001,14002,14005,14007,14009],{"class":3538,"line":9130},[3536,14003,14004],{"class":3550},"    setRefreshing",[3536,14006,3554],{"class":3546},[3536,14008,7158],{"class":3561},[3536,14010,3580],{"class":3546},[3536,14012,14013],{"class":3538,"line":9163},[3536,14014,14015],{"class":4573},"    \u002F\u002F Mock pull-to-refresh: повертаємо seed mock (локально створені зникають).\n",[3536,14017,14018,14021,14023,14025],{"class":3538,"line":9172},[3536,14019,14020],{"class":3550},"    setTimeout",[3536,14022,13995],{"class":3546},[3536,14024,5042],{"class":3561},[3536,14026,4547],{"class":3546},[3536,14028,14029,14032],{"class":3538,"line":9181},[3536,14030,14031],{"class":3550},"      resetToMock",[3536,14033,7911],{"class":3546},[3536,14035,14036,14039,14041,14043],{"class":3538,"line":9186},[3536,14037,14038],{"class":3550},"      setRefreshing",[3536,14040,3554],{"class":3546},[3536,14042,13814],{"class":3561},[3536,14044,3580],{"class":3546},[3536,14046,14047,14050,14053],{"class":3538,"line":9191},[3536,14048,14049],{"class":3546},"    }, ",[3536,14051,14052],{"class":4897},"900",[3536,14054,3580],{"class":3546},[3536,14056,14057,14060,14062],{"class":3538,"line":9196},[3536,14058,14059],{"class":3546},"  }, [",[3536,14061,13723],{"class":3542},[3536,14063,14064],{"class":3546},"]);\n",[3536,14066,14067],{"class":3538,"line":9215},[3536,14068,4748],{"emptyLinePlaceholder":4747},[3536,14070,14071,14073,14076,14078,14080],{"class":3538,"line":9237},[3536,14072,4770],{"class":3561},[3536,14074,14075],{"class":3599}," renderTrip",[3536,14077,4874],{"class":3546},[3536,14079,13373],{"class":3550},[3536,14081,13834],{"class":3546},[3536,14083,14084,14087,14089,14092,14094,14096,14098,14100,14102],{"class":3538,"line":9245},[3536,14085,14086],{"class":3546},"    ({ ",[3536,14088,8633],{"class":3542},[3536,14090,14091],{"class":3546}," }: { ",[3536,14093,8633],{"class":3542},[3536,14095,3613],{"class":3546},[3536,14097,4658],{"class":3616},[3536,14099,8722],{"class":3546},[3536,14101,5042],{"class":3561},[3536,14103,4985],{"class":3546},[3536,14105,14106,14108,14111,14113,14115,14117,14119,14121,14123,14125,14127,14130,14132],{"class":3538,"line":9256},[3536,14107,5000],{"class":4309},[3536,14109,14110],{"class":3616},"TripCard",[3536,14112,4404],{"class":4315},[3536,14114,4319],{"class":3546},[3536,14116,4322],{"class":3561},[3536,14118,8633],{"class":3542},[3536,14120,3574],{"class":3561},[3536,14122,5032],{"class":4315},[3536,14124,4319],{"class":3546},[3536,14126,4322],{"class":3561},[3536,14128,14129],{"class":3542},"handleOpenTrip",[3536,14131,3574],{"class":3561},[3536,14133,5058],{"class":4309},[3536,14135,14136],{"class":3538,"line":9267},[3536,14137,14138],{"class":3546},"    ),\n",[3536,14140,14141,14143,14145],{"class":3538,"line":9278},[3536,14142,13887],{"class":3546},[3536,14144,14129],{"class":3542},[3536,14146,13892],{"class":3546},[3536,14148,14149],{"class":3538,"line":9289},[3536,14150,5072],{"class":3546},[3536,14152,14153],{"class":3538,"line":9300},[3536,14154,4748],{"emptyLinePlaceholder":4747},[3536,14156,14157,14159,14162,14164,14166,14168,14170,14172,14174,14176,14178,14180,14182,14184],{"class":3538,"line":9305},[3536,14158,4770],{"class":3561},[3536,14160,14161],{"class":3599}," keyExtractor",[3536,14163,4874],{"class":3546},[3536,14165,13373],{"class":3550},[3536,14167,7926],{"class":3546},[3536,14169,8633],{"class":3542},[3536,14171,3613],{"class":3546},[3536,14173,4658],{"class":3616},[3536,14175,7932],{"class":3546},[3536,14177,5042],{"class":3561},[3536,14179,8640],{"class":3542},[3536,14181,3547],{"class":3546},[3536,14183,3571],{"class":3542},[3536,14185,14186],{"class":3546},", []);\n",[3536,14188,14189],{"class":3538,"line":9313},[3536,14190,4748],{"emptyLinePlaceholder":4747},[3536,14192,14193,14195,14198],{"class":3538,"line":9322},[3536,14194,4770],{"class":3561},[3536,14196,14197],{"class":3550}," listHeader",[3536,14199,14200],{"class":3546}," = (\n",[3536,14202,14203,14205,14207,14209,14211,14213,14215,14217,14220,14222,14225,14227,14230,14232,14234,14236,14238,14240],{"class":3538,"line":9333},[3536,14204,4990],{"class":4309},[3536,14206,4993],{"class":3616},[3536,14208,8041],{"class":4315},[3536,14210,4319],{"class":3546},[3536,14212,4322],{"class":3561},[3536,14214,8165],{"class":3568},[3536,14216,10649],{"class":3542},[3536,14218,14219],{"class":3542}," spacing",[3536,14221,3547],{"class":3568},[3536,14223,14224],{"class":3542},"md",[3536,14226,3755],{"class":3568},[3536,14228,14229],{"class":3542},"marginBottom:",[3536,14231,14219],{"class":3542},[3536,14233,3547],{"class":3568},[3536,14235,14224],{"class":3542},[3536,14237,8174],{"class":3568},[3536,14239,3574],{"class":3561},[3536,14241,4352],{"class":4309},[3536,14243,14244,14247,14249,14251,14254,14257,14260,14262],{"class":3538,"line":9343},[3536,14245,14246],{"class":3561},"      {",[3536,14248,13773],{"class":3542},[3536,14250,3547],{"class":3568},[3536,14252,14253],{"class":3542},"length",[3536,14255,14256],{"class":3546}," >",[3536,14258,14259],{"class":4897}," 0",[3536,14261,12129],{"class":3546},[3536,14263,4985],{"class":3568},[3536,14265,14266,14268,14270,14272,14274,14276,14278,14280,14282,14284,14287,14289,14291],{"class":3538,"line":9352},[3536,14267,8144],{"class":4309},[3536,14269,4993],{"class":3616},[3536,14271,8041],{"class":4315},[3536,14273,4319],{"class":3546},[3536,14275,4322],{"class":3561},[3536,14277,8165],{"class":3568},[3536,14279,10649],{"class":3542},[3536,14281,14219],{"class":3542},[3536,14283,3547],{"class":3568},[3536,14285,14286],{"class":3542},"sm",[3536,14288,8174],{"class":3568},[3536,14290,3574],{"class":3561},[3536,14292,4352],{"class":4309},[3536,14294,14295,14297,14299,14301,14303,14305,14307,14309,14311,14313,14315,14317,14320,14322,14324],{"class":3538,"line":9362},[3536,14296,8731],{"class":4309},[3536,14298,6704],{"class":3616},[3536,14300,8041],{"class":4315},[3536,14302,4319],{"class":3546},[3536,14304,4322],{"class":3561},[3536,14306,8165],{"class":3568},[3536,14308,8109],{"class":3542},[3536,14310,8112],{"class":3557},[3536,14312,8174],{"class":3568},[3536,14314,3574],{"class":3561},[3536,14316,4341],{"class":4309},[3536,14318,14319],{"class":3568},"Останні місця",[3536,14321,4347],{"class":4309},[3536,14323,6704],{"class":3616},[3536,14325,4352],{"class":4309},[3536,14327,14328,14330],{"class":3538,"line":9372},[3536,14329,8731],{"class":4309},[3536,14331,8606],{"class":3616},[3536,14333,14334],{"class":3538,"line":9377},[3536,14335,14336],{"class":4315},"            horizontal\n",[3536,14338,14339,14342,14344,14346,14348],{"class":3538,"line":9400},[3536,14340,14341],{"class":4315},"            data",[3536,14343,4319],{"class":3546},[3536,14345,4322],{"class":3561},[3536,14347,13773],{"class":3542},[3536,14349,4476],{"class":3561},[3536,14351,14352,14355,14357,14359,14361,14363,14365,14367,14369,14371,14373],{"class":3538,"line":9408},[3536,14353,14354],{"class":4315},"            keyExtractor",[3536,14356,4319],{"class":3546},[3536,14358,4322],{"class":3561},[3536,14360,3554],{"class":3568},[3536,14362,8633],{"class":3542},[3536,14364,7932],{"class":3568},[3536,14366,5042],{"class":3561},[3536,14368,8640],{"class":3542},[3536,14370,3547],{"class":3568},[3536,14372,3571],{"class":3542},[3536,14374,4476],{"class":3561},[3536,14376,14377,14380,14382,14384,14386,14388,14390,14392],{"class":3538,"line":9419},[3536,14378,14379],{"class":4315},"            renderItem",[3536,14381,4319],{"class":3546},[3536,14383,4322],{"class":3561},[3536,14385,8717],{"class":3568},[3536,14387,8633],{"class":3542},[3536,14389,8722],{"class":3568},[3536,14391,5042],{"class":3561},[3536,14393,4985],{"class":3568},[3536,14395,14396,14398,14401,14404,14406,14408,14410,14412,14414,14416,14418,14421,14423],{"class":3538,"line":9429},[3536,14397,8789],{"class":4309},[3536,14399,14400],{"class":3616},"PlaceChip",[3536,14402,14403],{"class":4315}," place",[3536,14405,4319],{"class":3546},[3536,14407,4322],{"class":3561},[3536,14409,8633],{"class":3542},[3536,14411,3574],{"class":3561},[3536,14413,5032],{"class":4315},[3536,14415,4319],{"class":3546},[3536,14417,4322],{"class":3561},[3536,14419,14420],{"class":3542},"handleOpenPlace",[3536,14422,3574],{"class":3561},[3536,14424,5058],{"class":4309},[3536,14426,14427,14430],{"class":3538,"line":9439},[3536,14428,14429],{"class":3568},"            )",[3536,14431,4476],{"class":3561},[3536,14433,14434,14437,14439],{"class":3538,"line":9450},[3536,14435,14436],{"class":4315},"            showsHorizontalScrollIndicator",[3536,14438,4319],{"class":3546},[3536,14440,14441],{"class":3561},"{false}\n",[3536,14443,14444,14447,14449,14451,14453,14455,14457,14459,14461,14463,14465,14467,14470,14472,14474,14476,14478,14480,14482],{"class":3538,"line":9461},[3536,14445,14446],{"class":4315},"            ItemSeparatorComponent",[3536,14448,4319],{"class":3546},[3536,14450,4322],{"class":3561},[3536,14452,5039],{"class":3568},[3536,14454,5042],{"class":3561},[3536,14456,8680],{"class":4309},[3536,14458,4993],{"class":3616},[3536,14460,8041],{"class":4315},[3536,14462,4319],{"class":3546},[3536,14464,4322],{"class":3561},[3536,14466,8165],{"class":3568},[3536,14468,14469],{"class":3542},"width:",[3536,14471,14219],{"class":3542},[3536,14473,3547],{"class":3568},[3536,14475,14286],{"class":3542},[3536,14477,8174],{"class":3568},[3536,14479,3574],{"class":3561},[3536,14481,8703],{"class":4309},[3536,14483,4476],{"class":3561},[3536,14485,14486,14489,14491,14493,14495,14498,14500,14502],{"class":3538,"line":9471},[3536,14487,14488],{"class":4315},"            contentContainerStyle",[3536,14490,4319],{"class":3546},[3536,14492,4322],{"class":3561},[3536,14494,8165],{"class":3568},[3536,14496,14497],{"class":3542},"paddingVertical:",[3536,14499,10806],{"class":4897},[3536,14501,8174],{"class":3568},[3536,14503,4476],{"class":3561},[3536,14505,14506],{"class":3538,"line":9476},[3536,14507,14508],{"class":4309},"          \u002F>\n",[3536,14510,14511,14513,14515],{"class":3538,"line":9505},[3536,14512,10208],{"class":4309},[3536,14514,4993],{"class":3616},[3536,14516,4352],{"class":4309},[3536,14518,14519,14522,14524],{"class":3538,"line":9540},[3536,14520,14521],{"class":3568},"      ) ",[3536,14523,3987],{"class":3546},[3536,14525,14526],{"class":3561}," null}\n",[3536,14528,14529],{"class":3538,"line":9560},[3536,14530,4748],{"emptyLinePlaceholder":4747},[3536,14532,14533,14535,14537,14539,14541,14543,14545,14547,14549,14551,14553,14555,14558,14560,14562],{"class":3538,"line":9568},[3536,14534,5000],{"class":4309},[3536,14536,6704],{"class":3616},[3536,14538,8041],{"class":4315},[3536,14540,4319],{"class":3546},[3536,14542,4322],{"class":3561},[3536,14544,8165],{"class":3568},[3536,14546,8109],{"class":3542},[3536,14548,8112],{"class":3557},[3536,14550,8174],{"class":3568},[3536,14552,3574],{"class":3561},[3536,14554,4341],{"class":4309},[3536,14556,14557],{"class":3546},"Ваші поїздки",[3536,14559,4347],{"class":4309},[3536,14561,6704],{"class":3616},[3536,14563,4352],{"class":4309},[3536,14565,14566,14568,14570],{"class":3538,"line":9578},[3536,14567,5063],{"class":4309},[3536,14569,4993],{"class":3616},[3536,14571,4352],{"class":4309},[3536,14573,14574],{"class":3538,"line":9588},[3536,14575,5072],{"class":3546},[3536,14577,14578],{"class":3538,"line":9597},[3536,14579,4748],{"emptyLinePlaceholder":4747},[3536,14581,14582,14584,14587],{"class":3538,"line":9606},[3536,14583,4770],{"class":3561},[3536,14585,14586],{"class":3550}," listEmpty",[3536,14588,14200],{"class":3546},[3536,14590,14591,14593],{"class":3538,"line":9615},[3536,14592,4990],{"class":4309},[3536,14594,14595],{"class":3616},"View\n",[3536,14597,14598,14601,14603,14605],{"class":3538,"line":9626},[3536,14599,14600],{"class":4315},"      style",[3536,14602,4319],{"class":3546},[3536,14604,4322],{"class":3561},[3536,14606,14607],{"class":3568},"[\n",[3536,14609,14610,14613,14615,14618],{"class":3538,"line":9631},[3536,14611,14612],{"class":3542},"        styles",[3536,14614,3547],{"class":3568},[3536,14616,14617],{"class":3542},"empty",[3536,14619,4390],{"class":3568},[3536,14621,14622],{"class":3538,"line":9651},[3536,14623,7136],{"class":3568},[3536,14625,14626,14629,14631,14633,14635],{"class":3538,"line":9672},[3536,14627,14628],{"class":3542},"          paddingHorizontal:",[3536,14630,14219],{"class":3542},[3536,14632,3547],{"class":3568},[3536,14634,14286],{"class":3542},[3536,14636,4390],{"class":3568},[3536,14638,14639,14642,14644,14646,14649],{"class":3538,"line":9693},[3536,14640,14641],{"class":3542},"          paddingVertical:",[3536,14643,14219],{"class":3542},[3536,14645,3547],{"class":3568},[3536,14647,14648],{"class":3542},"xl",[3536,14650,4390],{"class":3568},[3536,14652,14654,14657,14659,14661,14663],{"class":3538,"line":14653},99,[3536,14655,14656],{"class":3542},"          gap:",[3536,14658,14219],{"class":3542},[3536,14660,3547],{"class":3568},[3536,14662,14286],{"class":3542},[3536,14664,4390],{"class":3568},[3536,14666,14668],{"class":3538,"line":14667},100,[3536,14669,12662],{"class":3568},[3536,14671,14673,14676],{"class":3538,"line":14672},101,[3536,14674,14675],{"class":3568},"      ]",[3536,14677,4476],{"class":3561},[3536,14679,14681],{"class":3538,"line":14680},102,[3536,14682,12703],{"class":4309},[3536,14684,14686,14688,14690,14693,14695,14698,14700,14702,14704,14706,14708,14711,14713],{"class":3538,"line":14685},103,[3536,14687,5000],{"class":4309},[3536,14689,6704],{"class":3616},[3536,14691,14692],{"class":4315}," variant",[3536,14694,4319],{"class":3546},[3536,14696,14697],{"class":3557},"\"subtitle\"",[3536,14699,8041],{"class":4315},[3536,14701,4319],{"class":3546},[3536,14703,4322],{"class":3561},[3536,14705,8496],{"class":3542},[3536,14707,3547],{"class":3568},[3536,14709,14710],{"class":3542},"emptyTitle",[3536,14712,3574],{"class":3561},[3536,14714,4352],{"class":4309},[3536,14716,14718],{"class":3538,"line":14717},104,[3536,14719,14720],{"class":3546},"        Поки немає поїздок\n",[3536,14722,14724,14726,14728],{"class":3538,"line":14723},105,[3536,14725,8215],{"class":4309},[3536,14727,6704],{"class":3616},[3536,14729,4352],{"class":4309},[3536,14731,14733,14735],{"class":3538,"line":14732},106,[3536,14734,5000],{"class":4309},[3536,14736,14737],{"class":3616},"AppText\n",[3536,14739,14741,14744,14746],{"class":3538,"line":14740},107,[3536,14742,14743],{"class":4315},"        variant",[3536,14745,4319],{"class":3546},[3536,14747,14748],{"class":3557},"\"caption\"\n",[3536,14750,14752,14755,14757,14759,14761,14763,14765],{"class":3538,"line":14751},108,[3536,14753,14754],{"class":4315},"        color",[3536,14756,4319],{"class":3546},[3536,14758,4322],{"class":3561},[3536,14760,12082],{"class":3542},[3536,14762,3547],{"class":3568},[3536,14764,12621],{"class":3542},[3536,14766,4476],{"class":3561},[3536,14768,14770,14772,14774,14776,14778,14780,14783],{"class":3538,"line":14769},109,[3536,14771,9080],{"class":4315},[3536,14773,4319],{"class":3546},[3536,14775,4322],{"class":3561},[3536,14777,8496],{"class":3542},[3536,14779,3547],{"class":3568},[3536,14781,14782],{"class":3542},"emptyDesc",[3536,14784,4476],{"class":3561},[3536,14786,14788],{"class":3538,"line":14787},110,[3536,14789,8139],{"class":4309},[3536,14791,14793],{"class":3538,"line":14792},111,[3536,14794,14795],{"class":3546},"        Потягніть список униз, щоб «оновити», або натисніть «Нова поїздка».\n",[3536,14797,14799,14801,14803],{"class":3538,"line":14798},112,[3536,14800,8215],{"class":4309},[3536,14802,6704],{"class":3616},[3536,14804,4352],{"class":4309},[3536,14806,14808,14810,14812],{"class":3538,"line":14807},113,[3536,14809,5063],{"class":4309},[3536,14811,4993],{"class":3616},[3536,14813,4352],{"class":4309},[3536,14815,14817],{"class":3538,"line":14816},114,[3536,14818,5072],{"class":3546},[3536,14820,14822],{"class":3538,"line":14821},115,[3536,14823,4748],{"emptyLinePlaceholder":4747},[3536,14825,14827,14829],{"class":3538,"line":14826},116,[3536,14828,4982],{"class":4725},[3536,14830,4985],{"class":3546},[3536,14832,14834,14836,14838,14840,14842,14844,14846,14848,14851,14853],{"class":3538,"line":14833},117,[3536,14835,4990],{"class":4309},[3536,14837,13581],{"class":3616},[3536,14839,8041],{"class":4315},[3536,14841,4319],{"class":3546},[3536,14843,4322],{"class":3561},[3536,14845,8496],{"class":3542},[3536,14847,3547],{"class":3568},[3536,14849,14850],{"class":3542},"screen",[3536,14852,3574],{"class":3561},[3536,14854,4352],{"class":4309},[3536,14856,14858,14860],{"class":3538,"line":14857},118,[3536,14859,5000],{"class":4309},[3536,14861,14595],{"class":3616},[3536,14863,14865,14867,14869,14871],{"class":3538,"line":14864},119,[3536,14866,9080],{"class":4315},[3536,14868,4319],{"class":3546},[3536,14870,4322],{"class":3561},[3536,14872,14607],{"class":3568},[3536,14874,14876,14879,14881,14884],{"class":3538,"line":14875},120,[3536,14877,14878],{"class":3542},"          styles",[3536,14880,3547],{"class":3568},[3536,14882,14883],{"class":3542},"header",[3536,14885,4390],{"class":3568},[3536,14887,14889],{"class":3538,"line":14888},121,[3536,14890,14891],{"class":3568},"          {\n",[3536,14893,14895,14898,14900,14902,14904],{"class":3538,"line":14894},122,[3536,14896,14897],{"class":3542},"            paddingHorizontal:",[3536,14899,14219],{"class":3542},[3536,14901,3547],{"class":3568},[3536,14903,14224],{"class":3542},[3536,14905,4390],{"class":3568},[3536,14907,14909,14912,14914,14916,14918],{"class":3538,"line":14908},123,[3536,14910,14911],{"class":3542},"            paddingTop:",[3536,14913,14219],{"class":3542},[3536,14915,3547],{"class":3568},[3536,14917,14286],{"class":3542},[3536,14919,4390],{"class":3568},[3536,14921,14923,14926,14928,14930,14932],{"class":3538,"line":14922},124,[3536,14924,14925],{"class":3542},"            paddingBottom:",[3536,14927,14219],{"class":3542},[3536,14929,3547],{"class":3568},[3536,14931,14224],{"class":3542},[3536,14933,4390],{"class":3568},[3536,14935,14937,14940,14942,14944,14947],{"class":3538,"line":14936},125,[3536,14938,14939],{"class":3542},"            gap:",[3536,14941,14219],{"class":3542},[3536,14943,3547],{"class":3568},[3536,14945,14946],{"class":3542},"xs",[3536,14948,4390],{"class":3568},[3536,14950,14952,14955,14957,14959,14961],{"class":3538,"line":14951},126,[3536,14953,14954],{"class":3542},"            borderBottomColor:",[3536,14956,12168],{"class":3542},[3536,14958,3547],{"class":3568},[3536,14960,12655],{"class":3542},[3536,14962,4390],{"class":3568},[3536,14964,14966],{"class":3538,"line":14965},127,[3536,14967,14968],{"class":3568},"          },\n",[3536,14970,14972,14975],{"class":3538,"line":14971},128,[3536,14973,14974],{"class":3568},"        ]",[3536,14976,4476],{"class":3561},[3536,14978,14980],{"class":3538,"line":14979},129,[3536,14981,8139],{"class":4309},[3536,14983,14985,14987,14989,14991,14993,14996,14998,15001,15003,15005],{"class":3538,"line":14984},130,[3536,14986,8144],{"class":4309},[3536,14988,6704],{"class":3616},[3536,14990,14692],{"class":4315},[3536,14992,4319],{"class":3546},[3536,14994,14995],{"class":3557},"\"title\"",[3536,14997,4341],{"class":4309},[3536,14999,15000],{"class":3546},"Мандрівник",[3536,15002,4347],{"class":4309},[3536,15004,6704],{"class":3616},[3536,15006,4352],{"class":4309},[3536,15008,15010,15012,15014,15016,15018,15021,15023,15025,15027,15029,15031,15033,15035,15037,15039,15041],{"class":3538,"line":15009},131,[3536,15011,8144],{"class":4309},[3536,15013,6704],{"class":3616},[3536,15015,14692],{"class":4315},[3536,15017,4319],{"class":3546},[3536,15019,15020],{"class":3557},"\"caption\"",[3536,15022,8041],{"class":4315},[3536,15024,4319],{"class":3546},[3536,15026,4322],{"class":3561},[3536,15028,8165],{"class":3568},[3536,15030,10842],{"class":3542},[3536,15032,14219],{"class":3542},[3536,15034,3547],{"class":3568},[3536,15036,14946],{"class":3542},[3536,15038,8174],{"class":3568},[3536,15040,3574],{"class":3561},[3536,15042,4352],{"class":4309},[3536,15044,15046,15049,15051,15053,15055,15057,15059,15062,15064,15067],{"class":3538,"line":15045},132,[3536,15047,15048],{"class":3546},"          Щоденник подорожей · тема: ",[3536,15050,4322],{"class":3561},[3536,15052,5564],{"class":3542},[3536,15054,12123],{"class":3546},[3536,15056,12126],{"class":3557},[3536,15058,12129],{"class":3546},[3536,15060,15061],{"class":3557}," 'темна'",[3536,15063,12135],{"class":3546},[3536,15065,15066],{"class":3557}," 'світла'",[3536,15068,4476],{"class":3561},[3536,15070,15072,15074,15076],{"class":3538,"line":15071},133,[3536,15073,10208],{"class":4309},[3536,15075,6704],{"class":3616},[3536,15077,4352],{"class":4309},[3536,15079,15081,15083],{"class":3538,"line":15080},134,[3536,15082,8144],{"class":4309},[3536,15084,14737],{"class":3616},[3536,15086,15088,15091,15093],{"class":3538,"line":15087},135,[3536,15089,15090],{"class":4315},"          variant",[3536,15092,4319],{"class":3546},[3536,15094,14748],{"class":3557},[3536,15096,15098,15101,15103,15105],{"class":3538,"line":15097},136,[3536,15099,15100],{"class":4315},"          style",[3536,15102,4319],{"class":3546},[3536,15104,4322],{"class":3561},[3536,15106,4441],{"class":3568},[3536,15108,15110,15113,15115,15117,15119],{"class":3538,"line":15109},137,[3536,15111,15112],{"class":3542},"            marginTop:",[3536,15114,14219],{"class":3542},[3536,15116,3547],{"class":3568},[3536,15118,14946],{"class":3542},[3536,15120,4390],{"class":3568},[3536,15122,15124,15127,15129,15131,15133],{"class":3538,"line":15123},138,[3536,15125,15126],{"class":3542},"            color:",[3536,15128,12168],{"class":3542},[3536,15130,3547],{"class":3568},[3536,15132,12202],{"class":3542},[3536,15134,4390],{"class":3568},[3536,15136,15138,15141,15143],{"class":3538,"line":15137},139,[3536,15139,15140],{"class":3542},"            fontWeight:",[3536,15142,8112],{"class":3557},[3536,15144,4390],{"class":3568},[3536,15146,15148,15150],{"class":3538,"line":15147},140,[3536,15149,12351],{"class":3568},[3536,15151,4476],{"class":3561},[3536,15153,15155],{"class":3538,"line":15154},141,[3536,15156,15157],{"class":4309},"        >\n",[3536,15159,15161,15164,15166,15168,15170,15172],{"class":3538,"line":15160},142,[3536,15162,15163],{"class":3561},"          {",[3536,15165,4150],{"class":3542},[3536,15167,3547],{"class":3568},[3536,15169,14253],{"class":3542},[3536,15171,14256],{"class":3546},[3536,15173,15174],{"class":4897}," 0\n",[3536,15176,15178,15181,15184,15186,15188,15190,15192,15194,15197,15199,15201,15203,15205,15207],{"class":3538,"line":15177},143,[3536,15179,15180],{"class":3546},"            ?",[3536,15182,15183],{"class":3557}," `",[3536,15185,3562],{"class":3561},[3536,15187,4150],{"class":3542},[3536,15189,3547],{"class":3568},[3536,15191,14253],{"class":3542},[3536,15193,3574],{"class":3561},[3536,15195,15196],{"class":3557}," поїздок · ",[3536,15198,3562],{"class":3561},[3536,15200,13773],{"class":3542},[3536,15202,3547],{"class":3568},[3536,15204,14253],{"class":3542},[3536,15206,3574],{"class":3561},[3536,15208,15209],{"class":3557}," місць`\n",[3536,15211,15213,15216,15219],{"class":3538,"line":15212},144,[3536,15214,15215],{"class":3546},"            :",[3536,15217,15218],{"class":3557}," 'Список порожній'",[3536,15220,4476],{"class":3561},[3536,15222,15224,15226,15228],{"class":3538,"line":15223},145,[3536,15225,10208],{"class":4309},[3536,15227,6704],{"class":3616},[3536,15229,4352],{"class":4309},[3536,15231,15233],{"class":3538,"line":15232},146,[3536,15234,4748],{"emptyLinePlaceholder":4747},[3536,15236,15238,15240,15242,15244,15246,15248,15250,15252,15254,15257,15260,15262,15264,15266,15268,15270,15272,15274,15276,15278,15281,15283],{"class":3538,"line":15237},147,[3536,15239,8144],{"class":4309},[3536,15241,4993],{"class":3616},[3536,15243,8041],{"class":4315},[3536,15245,4319],{"class":3546},[3536,15247,4322],{"class":3561},[3536,15249,4894],{"class":3568},[3536,15251,8496],{"class":3542},[3536,15253,3547],{"class":3568},[3536,15255,15256],{"class":3542},"themeRow",[3536,15258,15259],{"class":3568},", { ",[3536,15261,10649],{"class":3542},[3536,15263,14219],{"class":3542},[3536,15265,3547],{"class":3568},[3536,15267,14286],{"class":3542},[3536,15269,3755],{"class":3568},[3536,15271,10842],{"class":3542},[3536,15273,14219],{"class":3542},[3536,15275,3547],{"class":3568},[3536,15277,14286],{"class":3542},[3536,15279,15280],{"class":3568}," }]",[3536,15282,3574],{"class":3561},[3536,15284,4352],{"class":4309},[3536,15286,15288,15290,15293,15295,15298,15300,15302,15304,15306],{"class":3538,"line":15287},148,[3536,15289,15163],{"class":3561},[3536,15291,15292],{"class":3599},"PREFS",[3536,15294,3547],{"class":3568},[3536,15296,15297],{"class":3550},"map",[3536,15299,7926],{"class":3568},[3536,15301,3517],{"class":3542},[3536,15303,7932],{"class":3568},[3536,15305,5042],{"class":3561},[3536,15307,4547],{"class":3568},[3536,15309,15311,15314,15317,15320,15323,15325,15328,15330,15332],{"class":3538,"line":15310},149,[3536,15312,15313],{"class":3561},"            const",[3536,15315,15316],{"class":3599}," active",[3536,15318,15319],{"class":3546}," =",[3536,15321,15322],{"class":3542}," preference",[3536,15324,12123],{"class":3546},[3536,15326,15327],{"class":3542}," p",[3536,15329,3547],{"class":3568},[3536,15331,3571],{"class":3542},[3536,15333,4742],{"class":3568},[3536,15335,15337,15340],{"class":3538,"line":15336},150,[3536,15338,15339],{"class":4725},"            return",[3536,15341,4985],{"class":3568},[3536,15343,15345,15347],{"class":3538,"line":15344},151,[3536,15346,8789],{"class":4309},[3536,15348,8943],{"class":3616},[3536,15350,15352,15355,15357,15359,15361,15363,15365],{"class":3538,"line":15351},152,[3536,15353,15354],{"class":4315},"                key",[3536,15356,4319],{"class":3546},[3536,15358,4322],{"class":3561},[3536,15360,3517],{"class":3542},[3536,15362,3547],{"class":3568},[3536,15364,3571],{"class":3542},[3536,15366,4476],{"class":3561},[3536,15368,15370,15373,15375,15377,15379,15381,15384,15386,15388,15390,15392,15394],{"class":3538,"line":15369},153,[3536,15371,15372],{"class":4315},"                onPress",[3536,15374,4319],{"class":3546},[3536,15376,4322],{"class":3561},[3536,15378,5039],{"class":3568},[3536,15380,5042],{"class":3561},[3536,15382,15383],{"class":3550}," setPreference",[3536,15385,3554],{"class":3568},[3536,15387,3517],{"class":3542},[3536,15389,3547],{"class":3568},[3536,15391,3571],{"class":3542},[3536,15393,3835],{"class":3568},[3536,15395,4476],{"class":3561},[3536,15397,15399,15402,15404,15406],{"class":3538,"line":15398},154,[3536,15400,15401],{"class":4315},"                style",[3536,15403,4319],{"class":3546},[3536,15405,4322],{"class":3561},[3536,15407,14607],{"class":3568},[3536,15409,15411,15414,15416,15419],{"class":3538,"line":15410},155,[3536,15412,15413],{"class":3542},"                  styles",[3536,15415,3547],{"class":3568},[3536,15417,15418],{"class":3542},"themeChip",[3536,15420,4390],{"class":3568},[3536,15422,15424],{"class":3538,"line":15423},156,[3536,15425,15426],{"class":3568},"                  {\n",[3536,15428,15430,15433,15435,15437,15439,15441,15443,15445,15447,15449,15452],{"class":3538,"line":15429},157,[3536,15431,15432],{"class":3542},"                    backgroundColor:",[3536,15434,15316],{"class":3542},[3536,15436,12129],{"class":3546},[3536,15438,12168],{"class":3542},[3536,15440,3547],{"class":3568},[3536,15442,12202],{"class":3542},[3536,15444,12135],{"class":3546},[3536,15446,12168],{"class":3542},[3536,15448,3547],{"class":3568},[3536,15450,15451],{"class":3542},"surface",[3536,15453,4390],{"class":3568},[3536,15455,15457,15460,15462,15464,15466],{"class":3538,"line":15456},158,[3536,15458,15459],{"class":3542},"                    borderColor:",[3536,15461,12168],{"class":3542},[3536,15463,3547],{"class":3568},[3536,15465,12655],{"class":3542},[3536,15467,4390],{"class":3568},[3536,15469,15471],{"class":3538,"line":15470},159,[3536,15472,15473],{"class":3568},"                  },\n",[3536,15475,15477,15480],{"class":3538,"line":15476},160,[3536,15478,15479],{"class":3568},"                ]",[3536,15481,4476],{"class":3561},[3536,15483,15485,15488,15490],{"class":3538,"line":15484},161,[3536,15486,15487],{"class":4315},"                accessibilityRole",[3536,15489,4319],{"class":3546},[3536,15491,15492],{"class":3557},"\"button\"\n",[3536,15494,15496,15499,15501,15503,15505,15508,15510,15512],{"class":3538,"line":15495},162,[3536,15497,15498],{"class":4315},"                accessibilityState",[3536,15500,4319],{"class":3546},[3536,15502,4322],{"class":3561},[3536,15504,8165],{"class":3568},[3536,15506,15507],{"class":3542},"selected:",[3536,15509,15316],{"class":3542},[3536,15511,8174],{"class":3568},[3536,15513,4476],{"class":3561},[3536,15515,15517,15520,15522,15524,15527,15529,15531,15533,15535,15537,15539],{"class":3538,"line":15516},163,[3536,15518,15519],{"class":4315},"                accessibilityLabel",[3536,15521,4319],{"class":3546},[3536,15523,4322],{"class":3561},[3536,15525,15526],{"class":3557},"`Тема: ",[3536,15528,3562],{"class":3561},[3536,15530,3517],{"class":3542},[3536,15532,3547],{"class":3568},[3536,15534,13617],{"class":3542},[3536,15536,3574],{"class":3561},[3536,15538,3577],{"class":3557},[3536,15540,4476],{"class":3561},[3536,15542,15544],{"class":3538,"line":15543},164,[3536,15545,15546],{"class":4309},"              >\n",[3536,15548,15550,15552],{"class":3538,"line":15549},165,[3536,15551,8799],{"class":4309},[3536,15553,14737],{"class":3616},[3536,15555,15557,15560,15562],{"class":3538,"line":15556},166,[3536,15558,15559],{"class":4315},"                  variant",[3536,15561,4319],{"class":3546},[3536,15563,14748],{"class":3557},[3536,15565,15567,15570,15572,15574,15577,15579,15581,15583,15586,15588,15590,15592,15594],{"class":3538,"line":15566},167,[3536,15568,15569],{"class":4315},"                  color",[3536,15571,4319],{"class":3546},[3536,15573,4322],{"class":3561},[3536,15575,15576],{"class":3542},"active",[3536,15578,12129],{"class":3546},[3536,15580,12168],{"class":3542},[3536,15582,3547],{"class":3568},[3536,15584,15585],{"class":3542},"onPrimary",[3536,15587,12135],{"class":3546},[3536,15589,12168],{"class":3542},[3536,15591,3547],{"class":3568},[3536,15593,3993],{"class":3542},[3536,15595,4476],{"class":3561},[3536,15597,15599,15602,15604,15606,15608,15610,15613],{"class":3538,"line":15598},168,[3536,15600,15601],{"class":4315},"                  style",[3536,15603,4319],{"class":3546},[3536,15605,4322],{"class":3561},[3536,15607,8496],{"class":3542},[3536,15609,3547],{"class":3568},[3536,15611,15612],{"class":3542},"themeChipText",[3536,15614,4476],{"class":3561},[3536,15616,15618],{"class":3538,"line":15617},169,[3536,15619,15620],{"class":4309},"                >\n",[3536,15622,15624,15627,15629,15631,15633],{"class":3538,"line":15623},170,[3536,15625,15626],{"class":3561},"                  {",[3536,15628,3517],{"class":3542},[3536,15630,3547],{"class":3568},[3536,15632,13617],{"class":3542},[3536,15634,4476],{"class":3561},[3536,15636,15638,15641,15643],{"class":3538,"line":15637},171,[3536,15639,15640],{"class":4309},"                \u003C\u002F",[3536,15642,6704],{"class":3616},[3536,15644,4352],{"class":4309},[3536,15646,15648,15650,15652],{"class":3538,"line":15647},172,[3536,15649,8921],{"class":4309},[3536,15651,8261],{"class":3616},[3536,15653,4352],{"class":4309},[3536,15655,15657],{"class":3538,"line":15656},173,[3536,15658,15659],{"class":3568},"            );\n",[3536,15661,15663,15666],{"class":3538,"line":15662},174,[3536,15664,15665],{"class":3568},"          })",[3536,15667,4476],{"class":3561},[3536,15669,15671,15673,15675],{"class":3538,"line":15670},175,[3536,15672,10208],{"class":4309},[3536,15674,4993],{"class":3616},[3536,15676,4352],{"class":4309},[3536,15678,15680,15682,15684],{"class":3538,"line":15679},176,[3536,15681,8215],{"class":4309},[3536,15683,4993],{"class":3616},[3536,15685,4352],{"class":4309},[3536,15687,15689],{"class":3538,"line":15688},177,[3536,15690,4748],{"emptyLinePlaceholder":4747},[3536,15692,15694,15696,15698,15700,15702,15704,15706,15708,15711,15713],{"class":3538,"line":15693},178,[3536,15695,5000],{"class":4309},[3536,15697,4993],{"class":3616},[3536,15699,8041],{"class":4315},[3536,15701,4319],{"class":3546},[3536,15703,4322],{"class":3561},[3536,15705,8496],{"class":3542},[3536,15707,3547],{"class":3568},[3536,15709,15710],{"class":3542},"listWrap",[3536,15712,3574],{"class":3561},[3536,15714,4352],{"class":4309},[3536,15716,15718,15720],{"class":3538,"line":15717},179,[3536,15719,8144],{"class":4309},[3536,15721,15722],{"class":3616},"FlashList\n",[3536,15724,15726,15729,15731,15733,15735],{"class":3538,"line":15725},180,[3536,15727,15728],{"class":4315},"          data",[3536,15730,4319],{"class":3546},[3536,15732,4322],{"class":3561},[3536,15734,4150],{"class":3542},[3536,15736,4476],{"class":3561},[3536,15738,15740,15743,15745,15747,15750],{"class":3538,"line":15739},181,[3536,15741,15742],{"class":4315},"          renderItem",[3536,15744,4319],{"class":3546},[3536,15746,4322],{"class":3561},[3536,15748,15749],{"class":3542},"renderTrip",[3536,15751,4476],{"class":3561},[3536,15753,15755,15758,15760,15762,15765],{"class":3538,"line":15754},182,[3536,15756,15757],{"class":4315},"          keyExtractor",[3536,15759,4319],{"class":3546},[3536,15761,4322],{"class":3561},[3536,15763,15764],{"class":3542},"keyExtractor",[3536,15766,4476],{"class":3561},[3536,15768,15770,15773,15775,15777,15780],{"class":3538,"line":15769},183,[3536,15771,15772],{"class":4315},"          ListHeaderComponent",[3536,15774,4319],{"class":3546},[3536,15776,4322],{"class":3561},[3536,15778,15779],{"class":3542},"listHeader",[3536,15781,4476],{"class":3561},[3536,15783,15785,15788,15790,15792,15795],{"class":3538,"line":15784},184,[3536,15786,15787],{"class":4315},"          ListEmptyComponent",[3536,15789,4319],{"class":3546},[3536,15791,4322],{"class":3561},[3536,15793,15794],{"class":3542},"listEmpty",[3536,15796,4476],{"class":3561},[3536,15798,15800,15803,15805,15807],{"class":3538,"line":15799},185,[3536,15801,15802],{"class":4315},"          contentContainerStyle",[3536,15804,4319],{"class":3546},[3536,15806,4322],{"class":3561},[3536,15808,4441],{"class":3568},[3536,15810,15812,15814,15816,15818,15820],{"class":3538,"line":15811},186,[3536,15813,14897],{"class":3542},[3536,15815,14219],{"class":3542},[3536,15817,3547],{"class":3568},[3536,15819,14224],{"class":3542},[3536,15821,4390],{"class":3568},[3536,15823,15825,15827,15829,15831,15833],{"class":3538,"line":15824},187,[3536,15826,14911],{"class":3542},[3536,15828,14219],{"class":3542},[3536,15830,3547],{"class":3568},[3536,15832,14224],{"class":3542},[3536,15834,4390],{"class":3568},[3536,15836,15838,15840,15842,15844,15846],{"class":3538,"line":15837},188,[3536,15839,14925],{"class":3542},[3536,15841,14219],{"class":3542},[3536,15843,3547],{"class":3568},[3536,15845,14224],{"class":3542},[3536,15847,4390],{"class":3568},[3536,15849,15851,15853],{"class":3538,"line":15850},189,[3536,15852,12351],{"class":3568},[3536,15854,4476],{"class":3561},[3536,15856,15858,15861,15863,15865,15867,15869,15871,15873,15875,15877,15879,15881,15883,15885,15887,15889,15891,15893,15895],{"class":3538,"line":15857},190,[3536,15859,15860],{"class":4315},"          ItemSeparatorComponent",[3536,15862,4319],{"class":3546},[3536,15864,4322],{"class":3561},[3536,15866,5039],{"class":3568},[3536,15868,5042],{"class":3561},[3536,15870,8680],{"class":4309},[3536,15872,4993],{"class":3616},[3536,15874,8041],{"class":4315},[3536,15876,4319],{"class":3546},[3536,15878,4322],{"class":3561},[3536,15880,8165],{"class":3568},[3536,15882,8693],{"class":3542},[3536,15884,14219],{"class":3542},[3536,15886,3547],{"class":3568},[3536,15888,14224],{"class":3542},[3536,15890,8174],{"class":3568},[3536,15892,3574],{"class":3561},[3536,15894,8703],{"class":4309},[3536,15896,4476],{"class":3561},[3536,15898,15900,15903,15905],{"class":3538,"line":15899},191,[3536,15901,15902],{"class":4315},"          refreshControl",[3536,15904,4319],{"class":3546},[3536,15906,4441],{"class":3561},[3536,15908,15910,15912],{"class":3538,"line":15909},192,[3536,15911,8755],{"class":4309},[3536,15913,15914],{"class":3616},"RefreshControl\n",[3536,15916,15918,15921,15923,15925,15927],{"class":3538,"line":15917},193,[3536,15919,15920],{"class":4315},"              refreshing",[3536,15922,4319],{"class":3546},[3536,15924,4322],{"class":3561},[3536,15926,13800],{"class":3542},[3536,15928,4476],{"class":3561},[3536,15930,15932,15935,15937,15939,15942],{"class":3538,"line":15931},194,[3536,15933,15934],{"class":4315},"              onRefresh",[3536,15936,4319],{"class":3546},[3536,15938,4322],{"class":3561},[3536,15940,15941],{"class":3542},"onRefresh",[3536,15943,4476],{"class":3561},[3536,15945,15947,15950,15952,15954,15956,15958,15960],{"class":3538,"line":15946},195,[3536,15948,15949],{"class":4315},"              tintColor",[3536,15951,4319],{"class":3546},[3536,15953,4322],{"class":3561},[3536,15955,12082],{"class":3542},[3536,15957,3547],{"class":3568},[3536,15959,12202],{"class":3542},[3536,15961,4476],{"class":3561},[3536,15963,15965,15968,15970,15972,15974,15976,15978,15980,15982],{"class":3538,"line":15964},196,[3536,15966,15967],{"class":4315},"              colors",[3536,15969,4319],{"class":3546},[3536,15971,4322],{"class":3561},[3536,15973,4894],{"class":3568},[3536,15975,12082],{"class":3542},[3536,15977,3547],{"class":3568},[3536,15979,12202],{"class":3542},[3536,15981,8518],{"class":3568},[3536,15983,4476],{"class":3561},[3536,15985,15987],{"class":3538,"line":15986},197,[3536,15988,13022],{"class":4309},[3536,15990,15992],{"class":3538,"line":15991},198,[3536,15993,15994],{"class":3561},"          }\n",[3536,15996,15998,16001,16003],{"class":3538,"line":15997},199,[3536,15999,16000],{"class":4315},"          showsVerticalScrollIndicator",[3536,16002,4319],{"class":3546},[3536,16004,14441],{"class":3561},[3536,16006,16008],{"class":3538,"line":16007},200,[3536,16009,12358],{"class":4309},[3536,16011,16013,16015,16017],{"class":3538,"line":16012},201,[3536,16014,8215],{"class":4309},[3536,16016,4993],{"class":3616},[3536,16018,4352],{"class":4309},[3536,16020,16022],{"class":3538,"line":16021},202,[3536,16023,4748],{"emptyLinePlaceholder":4747},[3536,16025,16027,16029],{"class":3538,"line":16026},203,[3536,16028,5000],{"class":4309},[3536,16030,14595],{"class":3616},[3536,16032,16034,16036,16038,16040],{"class":3538,"line":16033},204,[3536,16035,9080],{"class":4315},[3536,16037,4319],{"class":3546},[3536,16039,4322],{"class":3561},[3536,16041,14607],{"class":3568},[3536,16043,16045,16047,16049,16052],{"class":3538,"line":16044},205,[3536,16046,14878],{"class":3542},[3536,16048,3547],{"class":3568},[3536,16050,16051],{"class":3542},"footer",[3536,16053,4390],{"class":3568},[3536,16055,16057],{"class":3538,"line":16056},206,[3536,16058,14891],{"class":3568},[3536,16060,16062,16064,16066,16068,16070],{"class":3538,"line":16061},207,[3536,16063,14897],{"class":3542},[3536,16065,14219],{"class":3542},[3536,16067,3547],{"class":3568},[3536,16069,14224],{"class":3542},[3536,16071,4390],{"class":3568},[3536,16073,16075,16077,16079,16081,16083],{"class":3538,"line":16074},208,[3536,16076,14911],{"class":3542},[3536,16078,14219],{"class":3542},[3536,16080,3547],{"class":3568},[3536,16082,14286],{"class":3542},[3536,16084,4390],{"class":3568},[3536,16086,16088,16090,16092,16094,16096],{"class":3538,"line":16087},209,[3536,16089,14925],{"class":3542},[3536,16091,14219],{"class":3542},[3536,16093,3547],{"class":3568},[3536,16095,14224],{"class":3542},[3536,16097,4390],{"class":3568},[3536,16099,16101,16104,16106,16108,16110],{"class":3538,"line":16100},210,[3536,16102,16103],{"class":3542},"            borderTopColor:",[3536,16105,12168],{"class":3542},[3536,16107,3547],{"class":3568},[3536,16109,12655],{"class":3542},[3536,16111,4390],{"class":3568},[3536,16113,16115,16118,16120,16122,16124],{"class":3538,"line":16114},211,[3536,16116,16117],{"class":3542},"            backgroundColor:",[3536,16119,12168],{"class":3542},[3536,16121,3547],{"class":3568},[3536,16123,12173],{"class":3542},[3536,16125,4390],{"class":3568},[3536,16127,16129],{"class":3538,"line":16128},212,[3536,16130,14968],{"class":3568},[3536,16132,16134,16136],{"class":3538,"line":16133},213,[3536,16135,14974],{"class":3568},[3536,16137,4476],{"class":3561},[3536,16139,16141],{"class":3538,"line":16140},214,[3536,16142,8139],{"class":4309},[3536,16144,16146,16148],{"class":3538,"line":16145},215,[3536,16147,8144],{"class":4309},[3536,16149,16150],{"class":3616},"Button\n",[3536,16152,16154,16157,16159],{"class":3538,"line":16153},216,[3536,16155,16156],{"class":4315},"          label",[3536,16158,4319],{"class":3546},[3536,16160,16161],{"class":3557},"\"Нова поїздка\"\n",[3536,16163,16165,16168,16170,16172,16174,16176],{"class":3538,"line":16164},217,[3536,16166,16167],{"class":4315},"          onPress",[3536,16169,4319],{"class":3546},[3536,16171,4322],{"class":3561},[3536,16173,5039],{"class":3568},[3536,16175,5042],{"class":3561},[3536,16177,4547],{"class":3568},[3536,16179,16181,16184,16186,16188,16190,16193],{"class":3538,"line":16180},218,[3536,16182,16183],{"class":3542},"            router",[3536,16185,3547],{"class":3568},[3536,16187,3551],{"class":3550},[3536,16189,3554],{"class":3568},[3536,16191,16192],{"class":3557},"'\u002Fcreate-trip'",[3536,16194,3580],{"class":3568},[3536,16196,16198,16200],{"class":3538,"line":16197},219,[3536,16199,12351],{"class":3568},[3536,16201,4476],{"class":3561},[3536,16203,16205],{"class":3538,"line":16204},220,[3536,16206,12358],{"class":4309},[3536,16208,16210,16212,16214],{"class":3538,"line":16209},221,[3536,16211,8215],{"class":4309},[3536,16213,4993],{"class":3616},[3536,16215,4352],{"class":4309},[3536,16217,16219,16221,16223],{"class":3538,"line":16218},222,[3536,16220,5063],{"class":4309},[3536,16222,13581],{"class":3616},[3536,16224,4352],{"class":4309},[3536,16226,16228],{"class":3538,"line":16227},223,[3536,16229,5072],{"class":3546},[3536,16231,16233],{"class":3538,"line":16232},224,[3536,16234,4476],{"class":3546},[3536,16236,16238],{"class":3538,"line":16237},225,[3536,16239,4748],{"emptyLinePlaceholder":4747},[3536,16241,16243,16245,16247,16249,16251,16253,16255],{"class":3538,"line":16242},226,[3536,16244,3593],{"class":3561},[3536,16246,9201],{"class":3599},[3536,16248,4874],{"class":3546},[3536,16250,8266],{"class":3542},[3536,16252,3547],{"class":3546},[3536,16254,9210],{"class":3550},[3536,16256,4378],{"class":3546},[3536,16258,16260,16263],{"class":3538,"line":16259},227,[3536,16261,16262],{"class":3542},"  screen:",[3536,16264,4547],{"class":3546},[3536,16266,16268,16270,16272],{"class":3538,"line":16267},228,[3536,16269,9248],{"class":3542},[3536,16271,14259],{"class":4897},[3536,16273,4390],{"class":3546},[3536,16275,16277],{"class":3538,"line":16276},229,[3536,16278,4579],{"class":3546},[3536,16280,16282,16285],{"class":3538,"line":16281},230,[3536,16283,16284],{"class":3542},"  header:",[3536,16286,4547],{"class":3546},[3536,16288,16290,16293,16295],{"class":3538,"line":16289},231,[3536,16291,16292],{"class":3542},"    borderBottomWidth:",[3536,16294,9226],{"class":4897},[3536,16296,4390],{"class":3546},[3536,16298,16300],{"class":3538,"line":16299},232,[3536,16301,4579],{"class":3546},[3536,16303,16305,16308],{"class":3538,"line":16304},233,[3536,16306,16307],{"class":3542},"  themeRow:",[3536,16309,4547],{"class":3546},[3536,16311,16313,16316,16319],{"class":3538,"line":16312},234,[3536,16314,16315],{"class":3542},"    flexDirection:",[3536,16317,16318],{"class":3557}," 'row'",[3536,16320,4390],{"class":3546},[3536,16322,16324,16327,16330],{"class":3538,"line":16323},235,[3536,16325,16326],{"class":3542},"    flexWrap:",[3536,16328,16329],{"class":3557}," 'wrap'",[3536,16331,4390],{"class":3546},[3536,16333,16335],{"class":3538,"line":16334},236,[3536,16336,4579],{"class":3546},[3536,16338,16340,16343],{"class":3538,"line":16339},237,[3536,16341,16342],{"class":3542},"  themeChip:",[3536,16344,4547],{"class":3546},[3536,16346,16348,16350,16352],{"class":3538,"line":16347},238,[3536,16349,9248],{"class":3542},[3536,16351,9357],{"class":4897},[3536,16353,4390],{"class":3546},[3536,16355,16357,16359,16361],{"class":3538,"line":16356},239,[3536,16358,9581],{"class":3542},[3536,16360,9262],{"class":4897},[3536,16362,4390],{"class":3546},[3536,16364,16366,16368,16370],{"class":3538,"line":16365},240,[3536,16367,9422],{"class":3542},[3536,16369,9262],{"class":4897},[3536,16371,4390],{"class":3546},[3536,16373,16375,16377,16379],{"class":3538,"line":16374},241,[3536,16376,9432],{"class":3542},[3536,16378,9226],{"class":4897},[3536,16380,4390],{"class":3546},[3536,16382,16384],{"class":3538,"line":16383},242,[3536,16385,4579],{"class":3546},[3536,16387,16389,16392],{"class":3538,"line":16388},243,[3536,16390,16391],{"class":3542},"  themeChipText:",[3536,16393,4547],{"class":3546},[3536,16395,16397,16399,16401],{"class":3538,"line":16396},244,[3536,16398,9365],{"class":3542},[3536,16400,8112],{"class":3557},[3536,16402,4390],{"class":3546},[3536,16404,16406],{"class":3538,"line":16405},245,[3536,16407,4579],{"class":3546},[3536,16409,16411,16414],{"class":3538,"line":16410},246,[3536,16412,16413],{"class":3542},"  listWrap:",[3536,16415,4547],{"class":3546},[3536,16417,16419,16421,16423],{"class":3538,"line":16418},247,[3536,16420,10665],{"class":3542},[3536,16422,9226],{"class":4897},[3536,16424,4390],{"class":3546},[3536,16426,16428],{"class":3538,"line":16427},248,[3536,16429,4579],{"class":3546},[3536,16431,16433,16436],{"class":3538,"line":16432},249,[3536,16434,16435],{"class":3542},"  empty:",[3536,16437,4547],{"class":3546},[3536,16439,16441,16443,16445],{"class":3538,"line":16440},250,[3536,16442,9618],{"class":3542},[3536,16444,9621],{"class":3557},[3536,16446,4390],{"class":3546},[3536,16448,16450,16452,16454],{"class":3538,"line":16449},251,[3536,16451,10682],{"class":3542},[3536,16453,9621],{"class":3557},[3536,16455,4390],{"class":3546},[3536,16457,16459],{"class":3538,"line":16458},252,[3536,16460,4579],{"class":3546},[3536,16462,16464,16467],{"class":3538,"line":16463},253,[3536,16465,16466],{"class":3542},"  emptyTitle:",[3536,16468,4547],{"class":3546},[3536,16470,16472,16475,16477],{"class":3538,"line":16471},254,[3536,16473,16474],{"class":3542},"    textAlign:",[3536,16476,9621],{"class":3557},[3536,16478,4390],{"class":3546},[3536,16480,16482],{"class":3538,"line":16481},255,[3536,16483,4579],{"class":3546},[3536,16485,16487,16490],{"class":3538,"line":16486},256,[3536,16488,16489],{"class":3542},"  emptyDesc:",[3536,16491,4547],{"class":3546},[3536,16493,16495,16497,16499],{"class":3538,"line":16494},257,[3536,16496,16474],{"class":3542},[3536,16498,9621],{"class":3557},[3536,16500,4390],{"class":3546},[3536,16502,16504],{"class":3538,"line":16503},258,[3536,16505,4579],{"class":3546},[3536,16507,16509,16512],{"class":3538,"line":16508},259,[3536,16510,16511],{"class":3542},"  footer:",[3536,16513,4547],{"class":3546},[3536,16515,16517,16520,16522],{"class":3538,"line":16516},260,[3536,16518,16519],{"class":3542},"    borderTopWidth:",[3536,16521,9226],{"class":4897},[3536,16523,4390],{"class":3546},[3536,16525,16527],{"class":3538,"line":16526},261,[3536,16528,4579],{"class":3546},[3536,16530,16532],{"class":3538,"line":16531},262,[3536,16533,4417],{"class":3546},[3526,16535,16537],{"className":3528,"code":16536,"filename":4715,"language":3530,"meta":3531,"style":3531},"import { useCallback, useMemo } from 'react';\nimport {\n  Alert,\n  Image,\n  Platform,\n  ScrollView,\n  StyleSheet,\n  View,\n} from 'react-native';\nimport { Stack, useLocalSearchParams, useRouter } from 'expo-router';\nimport * as Linking from 'expo-linking';\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  const deepLink = tripId\n    ? Linking.createURL(`\u002Ftrips\u002F${tripId}`)\n    : Linking.createURL('\u002Ftrips');\n\n  const shareDeepLink = useCallback(async () => {\n    try {\n      await Linking.openURL(deepLink);\n    } catch {\n      Alert.alert('Deep link', deepLink);\n    }\n  }, [deepLink]);\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            \u003CAppText style={{ fontWeight: '700' }}>Deep link\u003C\u002FAppText>\n            \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n              Посилання на цей екран (scheme з app.json + path). У Expo Go\n              рядок може бути exp:\u002F\u002F…; у standalone — nomad:\u002F\u002F…\n            \u003C\u002FAppText>\n            \u003CAppText\n              variant=\"caption\"\n              color={colors.primary}\n              style={styles.linkMono}\n            >\n              {deepLink}\n            \u003C\u002FAppText>\n            \u003CButton\n              label=\"Відкрити це посилання\"\n              variant=\"secondary\"\n              onPress={shareDeepLink}\n            \u002F>\n\n            \u003CButton\n              label=\"Нова поїздка (modal)\"\n              onPress={openCreateModal}\n            \u002F>\n            \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n              Modal create-trip на кореневому 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  linkMono: {\n    fontFamily: Platform.select({ ios: 'Menlo', android: 'monospace', default: 'monospace' }),\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",[3533,16538,16539,16560,16566,16573,16580,16587,16594,16600,16606,16616,16640,16656,16660,16666,16673,16679,16687,16697,16713,16737,16741,16745,16750,16755,16759,16771,16793,16825,16839,16863,16876,16899,16907,16911,16934,16946,16950,16967,16982,16990,16994,17005,17029,17046,17050,17072,17079,17096,17106,17126,17130,17138,17142,17152,17158,17166,17190,17227,17249,17255,17264,17281,17311,17316,17336,17341,17349,17355,17365,17388,17410,17414,17422,17430,17434,17438,17442,17448,17470,17498,17505,17515,17528,17534,17543,17547,17554,17579,17610,17620,17624,17662,17692,17735,17763,17774,17796,17806,17814,17818,17855,17870,17898,17903,17911,17920,17935,17963,17968,17976,17984,17992,17996,18030,18042,18050,18054,18060,18088,18092,18097,18105,18123,18151,18156,18164,18173,18192,18226,18231,18238,18242,18280,18313,18341,18346,18351,18359,18365,18374,18390,18407,18411,18420,18428,18434,18444,18453,18466,18470,18474,18480,18489,18502,18506,18534,18539,18544,18552,18560,18568,18577,18585,18589,18593,18597,18619,18641,18647,18653,18663,18673,18677,18689,18702,18716,18729,18733,18739,18743,18783,18811,18825,18833,18861,18873,18881,18889,18893,18897,18901,18917,18923,18931,18935,18941,18949,18957,18965,18969,18976,18986,18996,19000,19007,19015,19019,19026,19034,19042,19046,19053,19092,19096,19103,19111,19119,19133,19140,19150,19160,19169,19188,19192,19206,19214,19219,19223],{"__ignoreMap":3531},[3536,16540,16541,16543,16545,16547,16549,16552,16554,16556,16558],{"class":3538,"line":3539},[3536,16542,4726],{"class":4725},[3536,16544,3596],{"class":3546},[3536,16546,13373],{"class":3542},[3536,16548,3755],{"class":3546},[3536,16550,16551],{"class":3542},"useMemo",[3536,16553,4733],{"class":3546},[3536,16555,4736],{"class":4725},[3536,16557,13385],{"class":3557},[3536,16559,4742],{"class":3546},[3536,16561,16562,16564],{"class":3538,"line":4381},[3536,16563,4726],{"class":4725},[3536,16565,4547],{"class":3546},[3536,16567,16568,16571],{"class":3538,"line":4393},[3536,16569,16570],{"class":3542},"  Alert",[3536,16572,4390],{"class":3546},[3536,16574,16575,16578],{"class":3538,"line":4414},[3536,16576,16577],{"class":3542},"  Image",[3536,16579,4390],{"class":3546},[3536,16581,16582,16585],{"class":3538,"line":4470},[3536,16583,16584],{"class":3542},"  Platform",[3536,16586,4390],{"class":3546},[3536,16588,16589,16592],{"class":3538,"line":4479},[3536,16590,16591],{"class":3542},"  ScrollView",[3536,16593,4390],{"class":3546},[3536,16595,16596,16598],{"class":3538,"line":4484},[3536,16597,13419],{"class":3542},[3536,16599,4390],{"class":3546},[3536,16601,16602,16604],{"class":3538,"line":4490},[3536,16603,13426],{"class":3542},[3536,16605,4390],{"class":3546},[3536,16607,16608,16610,16612,16614],{"class":3538,"line":7163},[3536,16609,13433],{"class":3546},[3536,16611,4736],{"class":4725},[3536,16613,8281],{"class":3557},[3536,16615,4742],{"class":3546},[3536,16617,16618,16620,16622,16624,16626,16628,16630,16632,16634,16636,16638],{"class":3538,"line":7171},[3536,16619,4726],{"class":4725},[3536,16621,3596],{"class":3546},[3536,16623,7978],{"class":3542},[3536,16625,3755],{"class":3546},[3536,16627,3605],{"class":3542},[3536,16629,3755],{"class":3546},[3536,16631,8296],{"class":3542},[3536,16633,4733],{"class":3546},[3536,16635,4736],{"class":4725},[3536,16637,4739],{"class":3557},[3536,16639,4742],{"class":3546},[3536,16641,16642,16644,16646,16648,16650,16652,16654],{"class":3538,"line":7177},[3536,16643,4726],{"class":4725},[3536,16645,5846],{"class":3561},[3536,16647,5849],{"class":4725},[3536,16649,5852],{"class":3542},[3536,16651,5855],{"class":4725},[3536,16653,5858],{"class":3557},[3536,16655,4742],{"class":3546},[3536,16657,16658],{"class":3538,"line":7190},[3536,16659,4748],{"emptyLinePlaceholder":4747},[3536,16661,16662,16664],{"class":3538,"line":7203},[3536,16663,4726],{"class":4725},[3536,16665,4547],{"class":3546},[3536,16667,16668,16671],{"class":3538,"line":7214},[3536,16669,16670],{"class":3542},"  getPlacesForTrip",[3536,16672,4390],{"class":3546},[3536,16674,16675,16677],{"class":3538,"line":7220},[3536,16676,13509],{"class":3542},[3536,16678,4390],{"class":3546},[3536,16680,16681,16683,16685],{"class":3538,"line":7226},[3536,16682,13516],{"class":4725},[3536,16684,13519],{"class":3542},[3536,16686,4390],{"class":3546},[3536,16688,16689,16691,16693,16695],{"class":3538,"line":7244},[3536,16690,13433],{"class":3546},[3536,16692,4736],{"class":4725},[3536,16694,11970],{"class":3557},[3536,16696,4742],{"class":3546},[3536,16698,16699,16701,16703,16705,16707,16709,16711],{"class":3538,"line":7250},[3536,16700,4726],{"class":4725},[3536,16702,3596],{"class":3546},[3536,16704,11986],{"class":3542},[3536,16706,4733],{"class":3546},[3536,16708,4736],{"class":4725},[3536,16710,11993],{"class":3557},[3536,16712,4742],{"class":3546},[3536,16714,16715,16717,16719,16721,16723,16725,16727,16729,16731,16733,16735],{"class":3538,"line":7256},[3536,16716,4726],{"class":4725},[3536,16718,3596],{"class":3546},[3536,16720,6704],{"class":3542},[3536,16722,3755],{"class":3546},[3536,16724,5021],{"class":3542},[3536,16726,3755],{"class":3546},[3536,16728,13581],{"class":3542},[3536,16730,4733],{"class":3546},[3536,16732,4736],{"class":4725},[3536,16734,13588],{"class":3557},[3536,16736,4742],{"class":3546},[3536,16738,16739],{"class":3538,"line":7261},[3536,16740,4748],{"emptyLinePlaceholder":4747},[3536,16742,16743],{"class":3538,"line":7266},[3536,16744,12004],{"class":4573},[3536,16746,16747],{"class":3538,"line":7803},[3536,16748,16749],{"class":4573}," * Деталі поїздки — вкладений Stack у вкладці «Поїздки».\n",[3536,16751,16752],{"class":3538,"line":7813},[3536,16753,16754],{"class":4573}," * Tab bar знизу лишається (на відміну від root-modal create-trip).\n",[3536,16756,16757],{"class":3538,"line":7823},[3536,16758,12034],{"class":4573},[3536,16760,16761,16763,16765,16767,16769],{"class":3538,"line":7833},[3536,16762,4753],{"class":4725},[3536,16764,4756],{"class":4725},[3536,16766,4759],{"class":3561},[3536,16768,4762],{"class":3550},[3536,16770,4765],{"class":3546},[3536,16772,16773,16775,16777,16779,16781,16783,16785,16787,16789,16791],{"class":3538,"line":7843},[3536,16774,4770],{"class":3561},[3536,16776,3596],{"class":3546},[3536,16778,3571],{"class":3599},[3536,16780,3602],{"class":3546},[3536,16782,3605],{"class":3550},[3536,16784,3608],{"class":3546},[3536,16786,3571],{"class":3542},[3536,16788,3613],{"class":3546},[3536,16790,3617],{"class":3616},[3536,16792,3620],{"class":3546},[3536,16794,16795,16797,16799,16801,16803,16805,16807,16809,16811,16813,16815,16817,16819,16821,16823],{"class":3538,"line":7848},[3536,16796,4770],{"class":3561},[3536,16798,4871],{"class":3599},[3536,16800,4874],{"class":3546},[3536,16802,4877],{"class":3542},[3536,16804,3547],{"class":3546},[3536,16806,4882],{"class":3550},[3536,16808,3554],{"class":3546},[3536,16810,3571],{"class":3542},[3536,16812,4889],{"class":3546},[3536,16814,3571],{"class":3542},[3536,16816,4894],{"class":3546},[3536,16818,4898],{"class":4897},[3536,16820,4901],{"class":3546},[3536,16822,3571],{"class":3542},[3536,16824,4742],{"class":3546},[3536,16826,16827,16829,16831,16833,16835,16837],{"class":3538,"line":7854},[3536,16828,4770],{"class":3561},[3536,16830,3596],{"class":3546},[3536,16832,6490],{"class":3599},[3536,16834,3602],{"class":3546},[3536,16836,13728],{"class":3550},[3536,16838,7911],{"class":3546},[3536,16840,16841,16843,16845,16847,16849,16851,16853,16855,16857,16859,16861],{"class":3538,"line":7859},[3536,16842,4770],{"class":3561},[3536,16844,4404],{"class":3599},[3536,16846,4874],{"class":3546},[3536,16848,4192],{"class":3542},[3536,16850,9896],{"class":3546},[3536,16852,6490],{"class":3550},[3536,16854,3554],{"class":3546},[3536,16856,4192],{"class":3542},[3536,16858,9905],{"class":3546},[3536,16860,4813],{"class":3561},[3536,16862,4742],{"class":3546},[3536,16864,16865,16867,16870,16872,16874],{"class":3538,"line":7888},[3536,16866,4770],{"class":3561},[3536,16868,16869],{"class":3599}," places",[3536,16871,4874],{"class":3546},[3536,16873,16551],{"class":3550},[3536,16875,13834],{"class":3546},[3536,16877,16878,16881,16883,16885,16887,16889,16892,16894,16896],{"class":3538,"line":7914},[3536,16879,16880],{"class":3546},"    () ",[3536,16882,5042],{"class":3561},[3536,16884,5365],{"class":3546},[3536,16886,4192],{"class":3542},[3536,16888,9896],{"class":3546},[3536,16890,16891],{"class":3550},"getPlacesForTrip",[3536,16893,3554],{"class":3546},[3536,16895,4192],{"class":3542},[3536,16897,16898],{"class":3546},") : []),\n",[3536,16900,16901,16903,16905],{"class":3538,"line":7952},[3536,16902,13887],{"class":3546},[3536,16904,4192],{"class":3542},[3536,16906,13892],{"class":3546},[3536,16908,16909],{"class":3538,"line":8796},[3536,16910,5072],{"class":3546},[3536,16912,16913,16915,16917,16919,16921,16923,16925,16928,16930,16932],{"class":3538,"line":8838},[3536,16914,4770],{"class":3561},[3536,16916,3596],{"class":3546},[3536,16918,12082],{"class":3599},[3536,16920,3755],{"class":3546},[3536,16922,13743],{"class":3599},[3536,16924,3755],{"class":3546},[3536,16926,16927],{"class":3599},"radius",[3536,16929,3602],{"class":3546},[3536,16931,11986],{"class":3550},[3536,16933,7911],{"class":3546},[3536,16935,16936,16938,16940,16942,16944],{"class":3538,"line":8877},[3536,16937,4770],{"class":3561},[3536,16939,5045],{"class":3599},[3536,16941,4874],{"class":3546},[3536,16943,8296],{"class":3550},[3536,16945,7911],{"class":3546},[3536,16947,16948],{"class":3538,"line":8918},[3536,16949,4748],{"emptyLinePlaceholder":4747},[3536,16951,16952,16954,16957,16959,16961,16963,16965],{"class":3538,"line":8928},[3536,16953,4770],{"class":3561},[3536,16955,16956],{"class":3599}," openCreateModal",[3536,16958,4874],{"class":3546},[3536,16960,13373],{"class":3550},[3536,16962,13995],{"class":3546},[3536,16964,5042],{"class":3561},[3536,16966,4547],{"class":3546},[3536,16968,16969,16972,16974,16976,16978,16980],{"class":3538,"line":8938},[3536,16970,16971],{"class":3542},"    router",[3536,16973,3547],{"class":3546},[3536,16975,3551],{"class":3550},[3536,16977,3554],{"class":3546},[3536,16979,16192],{"class":3557},[3536,16981,3580],{"class":3546},[3536,16983,16984,16986,16988],{"class":3538,"line":8946},[3536,16985,14059],{"class":3546},[3536,16987,3543],{"class":3542},[3536,16989,14064],{"class":3546},[3536,16991,16992],{"class":3538,"line":8965},[3536,16993,4748],{"emptyLinePlaceholder":4747},[3536,16995,16996,16998,17000,17002],{"class":3538,"line":8993},[3536,16997,4770],{"class":3561},[3536,16999,9932],{"class":3599},[3536,17001,4874],{"class":3546},[3536,17003,17004],{"class":3542},"tripId\n",[3536,17006,17007,17009,17011,17013,17015,17017,17019,17021,17023,17025,17027],{"class":3538,"line":8999},[3536,17008,9942],{"class":3546},[3536,17010,5876],{"class":3542},[3536,17012,3547],{"class":3546},[3536,17014,5881],{"class":3550},[3536,17016,3554],{"class":3546},[3536,17018,3558],{"class":3557},[3536,17020,3562],{"class":3561},[3536,17022,4192],{"class":3542},[3536,17024,3574],{"class":3561},[3536,17026,3577],{"class":3557},[3536,17028,9974],{"class":3546},[3536,17030,17031,17033,17035,17037,17039,17041,17044],{"class":3538,"line":9032},[3536,17032,9979],{"class":3546},[3536,17034,5876],{"class":3542},[3536,17036,3547],{"class":3546},[3536,17038,5881],{"class":3550},[3536,17040,3554],{"class":3546},[3536,17042,17043],{"class":3557},"'\u002Ftrips'",[3536,17045,3580],{"class":3546},[3536,17047,17048],{"class":3538,"line":9041},[3536,17049,4748],{"emptyLinePlaceholder":4747},[3536,17051,17052,17054,17057,17059,17061,17063,17065,17068,17070],{"class":3538,"line":9051},[3536,17053,4770],{"class":3561},[3536,17055,17056],{"class":3599}," shareDeepLink",[3536,17058,4874],{"class":3546},[3536,17060,13373],{"class":3550},[3536,17062,3554],{"class":3546},[3536,17064,8405],{"class":3561},[3536,17066,17067],{"class":3546}," () ",[3536,17069,5042],{"class":3561},[3536,17071,4547],{"class":3546},[3536,17073,17074,17077],{"class":3538,"line":9059},[3536,17075,17076],{"class":4725},"    try",[3536,17078,4547],{"class":3546},[3536,17080,17081,17084,17086,17088,17090,17092,17094],{"class":3538,"line":9065},[3536,17082,17083],{"class":4725},"      await",[3536,17085,5852],{"class":3542},[3536,17087,3547],{"class":3546},[3536,17089,6067],{"class":3550},[3536,17091,3554],{"class":3546},[3536,17093,10466],{"class":3542},[3536,17095,3580],{"class":3546},[3536,17097,17098,17101,17104],{"class":3538,"line":9070},[3536,17099,17100],{"class":3546},"    } ",[3536,17102,17103],{"class":4725},"catch",[3536,17105,4547],{"class":3546},[3536,17107,17108,17111,17113,17115,17117,17120,17122,17124],{"class":3538,"line":9077},[3536,17109,17110],{"class":3542},"      Alert",[3536,17112,3547],{"class":3546},[3536,17114,10516],{"class":3550},[3536,17116,3554],{"class":3546},[3536,17118,17119],{"class":3557},"'Deep link'",[3536,17121,3755],{"class":3546},[3536,17123,10466],{"class":3542},[3536,17125,3580],{"class":3546},[3536,17127,17128],{"class":3538,"line":9096},[3536,17129,7077],{"class":3546},[3536,17131,17132,17134,17136],{"class":3538,"line":9125},[3536,17133,14059],{"class":3546},[3536,17135,10466],{"class":3542},[3536,17137,14064],{"class":3546},[3536,17139,17140],{"class":3538,"line":9130},[3536,17141,4748],{"emptyLinePlaceholder":4747},[3536,17143,17144,17146,17148,17150],{"class":3538,"line":9163},[3536,17145,9993],{"class":4725},[3536,17147,4967],{"class":3546},[3536,17149,3565],{"class":3542},[3536,17151,4977],{"class":3546},[3536,17153,17154,17156],{"class":3538,"line":9172},[3536,17155,10005],{"class":4725},[3536,17157,4985],{"class":3546},[3536,17159,17160,17162,17164],{"class":3538,"line":9181},[3536,17161,5000],{"class":4309},[3536,17163,13581],{"class":3616},[3536,17165,4352],{"class":4309},[3536,17167,17168,17170,17172,17174,17176,17178,17180,17182,17184,17186,17188],{"class":3538,"line":9186},[3536,17169,8144],{"class":4309},[3536,17171,8147],{"class":3616},[3536,17173,8158],{"class":4315},[3536,17175,4319],{"class":3546},[3536,17177,4322],{"class":3561},[3536,17179,8165],{"class":3568},[3536,17181,8168],{"class":3542},[3536,17183,10049],{"class":3557},[3536,17185,8174],{"class":3568},[3536,17187,3574],{"class":3561},[3536,17189,5058],{"class":4309},[3536,17191,17192,17194,17196,17198,17200,17202,17204,17206,17208,17210,17212,17214,17216,17218,17221,17223,17225],{"class":3538,"line":9191},[3536,17193,8144],{"class":4309},[3536,17195,4993],{"class":3616},[3536,17197,8041],{"class":4315},[3536,17199,4319],{"class":3546},[3536,17201,4322],{"class":3561},[3536,17203,4894],{"class":3568},[3536,17205,8496],{"class":3542},[3536,17207,3547],{"class":3568},[3536,17209,10026],{"class":3542},[3536,17211,15259],{"class":3568},[3536,17213,9385],{"class":3542},[3536,17215,14219],{"class":3542},[3536,17217,3547],{"class":3568},[3536,17219,17220],{"class":3542},"lg",[3536,17222,15280],{"class":3568},[3536,17224,3574],{"class":3561},[3536,17226,4352],{"class":4309},[3536,17228,17229,17231,17233,17235,17237,17239,17241,17243,17245,17247],{"class":3538,"line":9196},[3536,17230,8731],{"class":4309},[3536,17232,6704],{"class":3616},[3536,17234,14692],{"class":4315},[3536,17236,4319],{"class":3546},[3536,17238,14697],{"class":3557},[3536,17240,4341],{"class":4309},[3536,17242,5008],{"class":3546},[3536,17244,4347],{"class":4309},[3536,17246,6704],{"class":3616},[3536,17248,4352],{"class":4309},[3536,17250,17251,17253],{"class":3538,"line":9215},[3536,17252,8731],{"class":4309},[3536,17254,14737],{"class":3616},[3536,17256,17257,17260,17262],{"class":3538,"line":9237},[3536,17258,17259],{"class":4315},"            variant",[3536,17261,4319],{"class":3546},[3536,17263,14748],{"class":3557},[3536,17265,17266,17269,17271,17273,17275,17277,17279],{"class":3538,"line":9245},[3536,17267,17268],{"class":4315},"            color",[3536,17270,4319],{"class":3546},[3536,17272,4322],{"class":3561},[3536,17274,12082],{"class":3542},[3536,17276,3547],{"class":3568},[3536,17278,12621],{"class":3542},[3536,17280,4476],{"class":3561},[3536,17282,17283,17286,17288,17290,17292,17294,17296,17298,17300,17302,17305,17307,17309],{"class":3538,"line":9256},[3536,17284,17285],{"class":4315},"            style",[3536,17287,4319],{"class":3546},[3536,17289,4322],{"class":3561},[3536,17291,8165],{"class":3568},[3536,17293,10842],{"class":3542},[3536,17295,14219],{"class":3542},[3536,17297,3547],{"class":3568},[3536,17299,14286],{"class":3542},[3536,17301,3755],{"class":3568},[3536,17303,17304],{"class":3542},"textAlign:",[3536,17306,9621],{"class":3557},[3536,17308,8174],{"class":3568},[3536,17310,4476],{"class":3561},[3536,17312,17313],{"class":3538,"line":9267},[3536,17314,17315],{"class":4309},"          >\n",[3536,17317,17318,17321,17323,17325,17327,17329,17331,17333],{"class":3538,"line":9278},[3536,17319,17320],{"class":3546},"            Немає запису з id: ",[3536,17322,4322],{"class":3561},[3536,17324,9957],{"class":3550},[3536,17326,3554],{"class":3568},[3536,17328,4192],{"class":3542},[3536,17330,3835],{"class":3568},[3536,17332,3574],{"class":3561},[3536,17334,17335],{"class":3546},". Можливо, список скинули\n",[3536,17337,17338],{"class":3538,"line":9289},[3536,17339,17340],{"class":3546},"            pull-to-refresh.\n",[3536,17342,17343,17345,17347],{"class":3538,"line":9300},[3536,17344,9044],{"class":4309},[3536,17346,6704],{"class":3616},[3536,17348,4352],{"class":4309},[3536,17350,17351,17353],{"class":3538,"line":9305},[3536,17352,8731],{"class":4309},[3536,17354,16150],{"class":3616},[3536,17356,17357,17360,17362],{"class":3538,"line":9313},[3536,17358,17359],{"class":4315},"            label",[3536,17361,4319],{"class":3546},[3536,17363,17364],{"class":3557},"\"До списку\"\n",[3536,17366,17367,17370,17372,17374,17376,17378,17380,17382,17384,17386],{"class":3538,"line":9322},[3536,17368,17369],{"class":4315},"            onPress",[3536,17371,4319],{"class":3546},[3536,17373,4322],{"class":3561},[3536,17375,5039],{"class":3568},[3536,17377,5042],{"class":3561},[3536,17379,5045],{"class":3542},[3536,17381,3547],{"class":3568},[3536,17383,5050],{"class":3550},[3536,17385,5053],{"class":3568},[3536,17387,4476],{"class":3561},[3536,17389,17390,17392,17394,17396,17398,17400,17402,17404,17406,17408],{"class":3538,"line":9333},[3536,17391,17285],{"class":4315},[3536,17393,4319],{"class":3546},[3536,17395,4322],{"class":3561},[3536,17397,8165],{"class":3568},[3536,17399,10842],{"class":3542},[3536,17401,14219],{"class":3542},[3536,17403,3547],{"class":3568},[3536,17405,14224],{"class":3542},[3536,17407,8174],{"class":3568},[3536,17409,4476],{"class":3561},[3536,17411,17412],{"class":3538,"line":9343},[3536,17413,14508],{"class":4309},[3536,17415,17416,17418,17420],{"class":3538,"line":9352},[3536,17417,10208],{"class":4309},[3536,17419,4993],{"class":3616},[3536,17421,4352],{"class":4309},[3536,17423,17424,17426,17428],{"class":3538,"line":9362},[3536,17425,8215],{"class":4309},[3536,17427,13581],{"class":3616},[3536,17429,4352],{"class":4309},[3536,17431,17432],{"class":3538,"line":9372},[3536,17433,10225],{"class":3546},[3536,17435,17436],{"class":3538,"line":9377},[3536,17437,5599],{"class":3546},[3536,17439,17440],{"class":3538,"line":9400},[3536,17441,4748],{"emptyLinePlaceholder":4747},[3536,17443,17444,17446],{"class":3538,"line":9408},[3536,17445,4982],{"class":4725},[3536,17447,4985],{"class":3546},[3536,17449,17450,17452,17454,17456,17458,17460,17462,17464,17466,17468],{"class":3538,"line":9419},[3536,17451,4990],{"class":4309},[3536,17453,13581],{"class":3616},[3536,17455,8041],{"class":4315},[3536,17457,4319],{"class":3546},[3536,17459,4322],{"class":3561},[3536,17461,8496],{"class":3542},[3536,17463,3547],{"class":3568},[3536,17465,14850],{"class":3542},[3536,17467,3574],{"class":3561},[3536,17469,4352],{"class":4309},[3536,17471,17472,17474,17476,17478,17480,17482,17484,17486,17488,17490,17492,17494,17496],{"class":3538,"line":9429},[3536,17473,5000],{"class":4309},[3536,17475,8147],{"class":3616},[3536,17477,8158],{"class":4315},[3536,17479,4319],{"class":3546},[3536,17481,4322],{"class":3561},[3536,17483,8165],{"class":3568},[3536,17485,8168],{"class":3542},[3536,17487,4404],{"class":3542},[3536,17489,3547],{"class":3568},[3536,17491,8827],{"class":3542},[3536,17493,8174],{"class":3568},[3536,17495,3574],{"class":3561},[3536,17497,5058],{"class":4309},[3536,17499,17500,17502],{"class":3538,"line":9439},[3536,17501,5000],{"class":4309},[3536,17503,17504],{"class":3616},"ScrollView\n",[3536,17506,17507,17509,17511,17513],{"class":3538,"line":9450},[3536,17508,8651],{"class":4315},[3536,17510,4319],{"class":3546},[3536,17512,4322],{"class":3561},[3536,17514,4441],{"class":3568},[3536,17516,17517,17520,17522,17524,17526],{"class":3538,"line":9461},[3536,17518,17519],{"class":3542},"          paddingBottom:",[3536,17521,14219],{"class":3542},[3536,17523,3547],{"class":3568},[3536,17525,14648],{"class":3542},[3536,17527,4390],{"class":3568},[3536,17529,17530,17532],{"class":3538,"line":9471},[3536,17531,8132],{"class":3568},[3536,17533,4476],{"class":3561},[3536,17535,17536,17539,17541],{"class":3538,"line":9476},[3536,17537,17538],{"class":4315},"        showsVerticalScrollIndicator",[3536,17540,4319],{"class":3546},[3536,17542,14441],{"class":3561},[3536,17544,17545],{"class":3538,"line":9505},[3536,17546,8139],{"class":4309},[3536,17548,17549,17551],{"class":3538,"line":9540},[3536,17550,8144],{"class":4309},[3536,17552,17553],{"class":3616},"Image\n",[3536,17555,17556,17559,17561,17563,17565,17568,17570,17572,17575,17577],{"class":3538,"line":9560},[3536,17557,17558],{"class":4315},"          source",[3536,17560,4319],{"class":3546},[3536,17562,4322],{"class":3561},[3536,17564,8165],{"class":3568},[3536,17566,17567],{"class":3542},"uri:",[3536,17569,4404],{"class":3542},[3536,17571,3547],{"class":3568},[3536,17573,17574],{"class":3542},"coverUri",[3536,17576,8174],{"class":3568},[3536,17578,4476],{"class":3561},[3536,17580,17581,17583,17585,17587,17589,17591,17593,17596,17598,17600,17602,17604,17606,17608],{"class":3538,"line":9568},[3536,17582,15100],{"class":4315},[3536,17584,4319],{"class":3546},[3536,17586,4322],{"class":3561},[3536,17588,4894],{"class":3568},[3536,17590,8496],{"class":3542},[3536,17592,3547],{"class":3568},[3536,17594,17595],{"class":3542},"cover",[3536,17597,15259],{"class":3568},[3536,17599,8076],{"class":3542},[3536,17601,12168],{"class":3542},[3536,17603,3547],{"class":3568},[3536,17605,12655],{"class":3542},[3536,17607,15280],{"class":3568},[3536,17609,4476],{"class":3561},[3536,17611,17612,17615,17617],{"class":3538,"line":9578},[3536,17613,17614],{"class":4315},"          resizeMode",[3536,17616,4319],{"class":3546},[3536,17618,17619],{"class":3557},"\"cover\"\n",[3536,17621,17622],{"class":3538,"line":9588},[3536,17623,12358],{"class":4309},[3536,17625,17626,17628,17630,17632,17634,17636,17638,17640,17642,17644,17646,17648,17650,17652,17654,17656,17658,17660],{"class":3538,"line":9597},[3536,17627,8144],{"class":4309},[3536,17629,4993],{"class":3616},[3536,17631,8041],{"class":4315},[3536,17633,4319],{"class":3546},[3536,17635,4322],{"class":3561},[3536,17637,8165],{"class":3568},[3536,17639,9385],{"class":3542},[3536,17641,14219],{"class":3542},[3536,17643,3547],{"class":3568},[3536,17645,14224],{"class":3542},[3536,17647,3755],{"class":3568},[3536,17649,10649],{"class":3542},[3536,17651,14219],{"class":3542},[3536,17653,3547],{"class":3568},[3536,17655,14286],{"class":3542},[3536,17657,8174],{"class":3568},[3536,17659,3574],{"class":3561},[3536,17661,4352],{"class":4309},[3536,17663,17664,17666,17668,17670,17672,17674,17676,17678,17680,17682,17684,17686,17688,17690],{"class":3538,"line":9606},[3536,17665,8731],{"class":4309},[3536,17667,6704],{"class":3616},[3536,17669,14692],{"class":4315},[3536,17671,4319],{"class":3546},[3536,17673,14995],{"class":3557},[3536,17675,4341],{"class":4309},[3536,17677,4322],{"class":3561},[3536,17679,3565],{"class":3542},[3536,17681,3547],{"class":3568},[3536,17683,8827],{"class":3542},[3536,17685,3574],{"class":3561},[3536,17687,4347],{"class":4309},[3536,17689,6704],{"class":3616},[3536,17691,4352],{"class":4309},[3536,17693,17694,17696,17698,17700,17702,17704,17706,17708,17710,17712,17714,17716,17718,17720,17722,17724,17726,17728,17731,17733],{"class":3538,"line":9615},[3536,17695,8731],{"class":4309},[3536,17697,6704],{"class":3616},[3536,17699,14692],{"class":4315},[3536,17701,4319],{"class":3546},[3536,17703,15020],{"class":3557},[3536,17705,12792],{"class":4315},[3536,17707,4319],{"class":3546},[3536,17709,4322],{"class":3561},[3536,17711,12082],{"class":3542},[3536,17713,3547],{"class":3568},[3536,17715,12202],{"class":3542},[3536,17717,3574],{"class":3561},[3536,17719,8041],{"class":4315},[3536,17721,4319],{"class":3546},[3536,17723,4322],{"class":3561},[3536,17725,8496],{"class":3542},[3536,17727,3547],{"class":3568},[3536,17729,17730],{"class":3542},"meta",[3536,17732,3574],{"class":3561},[3536,17734,4352],{"class":4309},[3536,17736,17737,17740,17742,17744,17747,17749,17752,17754,17756,17758,17761],{"class":3538,"line":9626},[3536,17738,17739],{"class":3561},"            {",[3536,17741,3565],{"class":3542},[3536,17743,3547],{"class":3568},[3536,17745,17746],{"class":3542},"dateLabel",[3536,17748,3574],{"class":3561},[3536,17750,17751],{"class":3546}," · ",[3536,17753,4322],{"class":3561},[3536,17755,3565],{"class":3542},[3536,17757,3547],{"class":3568},[3536,17759,17760],{"class":3542},"region",[3536,17762,4476],{"class":3561},[3536,17764,17765,17767,17769,17771],{"class":3538,"line":9631},[3536,17766,17739],{"class":3561},[3536,17768,3565],{"class":3542},[3536,17770,3547],{"class":3568},[3536,17772,17773],{"class":3542},"plannedDays\n",[3536,17775,17776,17779,17782,17784,17786,17788,17791,17793],{"class":3538,"line":9651},[3536,17777,17778],{"class":3546},"              ?",[3536,17780,17781],{"class":3557}," ` · ",[3536,17783,3562],{"class":3561},[3536,17785,3565],{"class":3542},[3536,17787,3547],{"class":3568},[3536,17789,17790],{"class":3542},"plannedDays",[3536,17792,3574],{"class":3561},[3536,17794,17795],{"class":3557}," дн.`\n",[3536,17797,17798,17801,17804],{"class":3538,"line":9672},[3536,17799,17800],{"class":3546},"              :",[3536,17802,17803],{"class":3557}," ''",[3536,17805,4476],{"class":3561},[3536,17807,17808,17810,17812],{"class":3538,"line":9693},[3536,17809,9044],{"class":4309},[3536,17811,6704],{"class":3616},[3536,17813,4352],{"class":4309},[3536,17815,17816],{"class":3538,"line":14653},[3536,17817,4748],{"emptyLinePlaceholder":4747},[3536,17819,17820,17822,17824,17826,17828,17830,17832,17834,17836,17839,17841,17843,17845,17847,17849,17851,17853],{"class":3538,"line":14667},[3536,17821,8731],{"class":4309},[3536,17823,4993],{"class":3616},[3536,17825,8041],{"class":4315},[3536,17827,4319],{"class":3546},[3536,17829,4322],{"class":3561},[3536,17831,4894],{"class":3568},[3536,17833,8496],{"class":3542},[3536,17835,3547],{"class":3568},[3536,17837,17838],{"class":3542},"badges",[3536,17840,15259],{"class":3568},[3536,17842,10649],{"class":3542},[3536,17844,14219],{"class":3542},[3536,17846,3547],{"class":3568},[3536,17848,14286],{"class":3542},[3536,17850,15280],{"class":3568},[3536,17852,3574],{"class":3561},[3536,17854,4352],{"class":4309},[3536,17856,17857,17859,17861,17863,17866,17868],{"class":3538,"line":14672},[3536,17858,17739],{"class":3561},[3536,17860,3565],{"class":3542},[3536,17862,3547],{"class":3568},[3536,17864,17865],{"class":3542},"isPrivate",[3536,17867,12129],{"class":3546},[3536,17869,4985],{"class":3568},[3536,17871,17872,17874,17876,17878,17880,17882,17884,17886,17888,17890,17892,17894,17896],{"class":3538,"line":14680},[3536,17873,8789],{"class":4309},[3536,17875,6704],{"class":3616},[3536,17877,14692],{"class":4315},[3536,17879,4319],{"class":3546},[3536,17881,15020],{"class":3557},[3536,17883,12792],{"class":4315},[3536,17885,4319],{"class":3546},[3536,17887,4322],{"class":3561},[3536,17889,12082],{"class":3542},[3536,17891,3547],{"class":3568},[3536,17893,12621],{"class":3542},[3536,17895,3574],{"class":3561},[3536,17897,4352],{"class":4309},[3536,17899,17900],{"class":3538,"line":14685},[3536,17901,17902],{"class":3568},"                приватна\n",[3536,17904,17905,17907,17909],{"class":3538,"line":14717},[3536,17906,8921],{"class":4309},[3536,17908,6704],{"class":3616},[3536,17910,4352],{"class":4309},[3536,17912,17913,17916,17918],{"class":3538,"line":14723},[3536,17914,17915],{"class":3568},"            ) ",[3536,17917,3987],{"class":3546},[3536,17919,14526],{"class":3561},[3536,17921,17922,17924,17926,17928,17931,17933],{"class":3538,"line":14732},[3536,17923,17739],{"class":3561},[3536,17925,3565],{"class":3542},[3536,17927,3547],{"class":3568},[3536,17929,17930],{"class":3542},"hasItinerary",[3536,17932,12129],{"class":3546},[3536,17934,4985],{"class":3568},[3536,17936,17937,17939,17941,17943,17945,17947,17949,17951,17953,17955,17957,17959,17961],{"class":3538,"line":14740},[3536,17938,8789],{"class":4309},[3536,17940,6704],{"class":3616},[3536,17942,14692],{"class":4315},[3536,17944,4319],{"class":3546},[3536,17946,15020],{"class":3557},[3536,17948,12792],{"class":4315},[3536,17950,4319],{"class":3546},[3536,17952,4322],{"class":3561},[3536,17954,12082],{"class":3542},[3536,17956,3547],{"class":3568},[3536,17958,12202],{"class":3542},[3536,17960,3574],{"class":3561},[3536,17962,4352],{"class":4309},[3536,17964,17965],{"class":3538,"line":14751},[3536,17966,17967],{"class":3568},"                є план маршруту\n",[3536,17969,17970,17972,17974],{"class":3538,"line":14769},[3536,17971,8921],{"class":4309},[3536,17973,6704],{"class":3616},[3536,17975,4352],{"class":4309},[3536,17977,17978,17980,17982],{"class":3538,"line":14787},[3536,17979,17915],{"class":3568},[3536,17981,3987],{"class":3546},[3536,17983,14526],{"class":3561},[3536,17985,17986,17988,17990],{"class":3538,"line":14792},[3536,17987,9044],{"class":4309},[3536,17989,4993],{"class":3616},[3536,17991,4352],{"class":4309},[3536,17993,17994],{"class":3538,"line":14798},[3536,17995,4748],{"emptyLinePlaceholder":4747},[3536,17997,17998,18000,18002,18004,18006,18008,18010,18012,18014,18016,18018,18020,18022,18024,18026,18028],{"class":3538,"line":14807},[3536,17999,8731],{"class":4309},[3536,18001,6704],{"class":3616},[3536,18003,8041],{"class":4315},[3536,18005,4319],{"class":3546},[3536,18007,4322],{"class":3561},[3536,18009,8165],{"class":3568},[3536,18011,10842],{"class":3542},[3536,18013,14219],{"class":3542},[3536,18015,3547],{"class":3568},[3536,18017,14286],{"class":3542},[3536,18019,3755],{"class":3568},[3536,18021,10828],{"class":3542},[3536,18023,9395],{"class":4897},[3536,18025,8174],{"class":3568},[3536,18027,3574],{"class":3561},[3536,18029,4352],{"class":4309},[3536,18031,18032,18034,18036,18038,18040],{"class":3538,"line":14816},[3536,18033,17739],{"class":3561},[3536,18035,3565],{"class":3542},[3536,18037,3547],{"class":3568},[3536,18039,10399],{"class":3542},[3536,18041,4476],{"class":3561},[3536,18043,18044,18046,18048],{"class":3538,"line":14821},[3536,18045,9044],{"class":4309},[3536,18047,6704],{"class":3616},[3536,18049,4352],{"class":4309},[3536,18051,18052],{"class":3538,"line":14826},[3536,18053,4748],{"emptyLinePlaceholder":4747},[3536,18055,18056,18058],{"class":3538,"line":14833},[3536,18057,8731],{"class":4309},[3536,18059,14737],{"class":3616},[3536,18061,18062,18064,18066,18068,18070,18072,18074,18076,18078,18080,18082,18084,18086],{"class":3538,"line":14857},[3536,18063,17285],{"class":4315},[3536,18065,4319],{"class":3546},[3536,18067,4322],{"class":3561},[3536,18069,8165],{"class":3568},[3536,18071,8109],{"class":3542},[3536,18073,9494],{"class":3557},[3536,18075,3755],{"class":3568},[3536,18077,10842],{"class":3542},[3536,18079,14219],{"class":3542},[3536,18081,3547],{"class":3568},[3536,18083,14224],{"class":3542},[3536,18085,8174],{"class":3568},[3536,18087,4476],{"class":3561},[3536,18089,18090],{"class":3538,"line":14864},[3536,18091,17315],{"class":4309},[3536,18093,18094],{"class":3538,"line":14875},[3536,18095,18096],{"class":3546},"            Місця в цій поїздці\n",[3536,18098,18099,18101,18103],{"class":3538,"line":14888},[3536,18100,9044],{"class":4309},[3536,18102,6704],{"class":3616},[3536,18104,4352],{"class":4309},[3536,18106,18107,18109,18111,18113,18115,18117,18119,18121],{"class":3538,"line":14894},[3536,18108,15163],{"class":3561},[3536,18110,13773],{"class":3542},[3536,18112,3547],{"class":3568},[3536,18114,14253],{"class":3542},[3536,18116,12123],{"class":3546},[3536,18118,14259],{"class":4897},[3536,18120,12129],{"class":3546},[3536,18122,4985],{"class":3568},[3536,18124,18125,18127,18129,18131,18133,18135,18137,18139,18141,18143,18145,18147,18149],{"class":3538,"line":14908},[3536,18126,8755],{"class":4309},[3536,18128,6704],{"class":3616},[3536,18130,14692],{"class":4315},[3536,18132,4319],{"class":3546},[3536,18134,15020],{"class":3557},[3536,18136,12792],{"class":4315},[3536,18138,4319],{"class":3546},[3536,18140,4322],{"class":3561},[3536,18142,12082],{"class":3542},[3536,18144,3547],{"class":3568},[3536,18146,12621],{"class":3542},[3536,18148,3574],{"class":3561},[3536,18150,4352],{"class":4309},[3536,18152,18153],{"class":3538,"line":14922},[3536,18154,18155],{"class":3568},"              Поки немає точок у mock-даних для цієї поїздки.\n",[3536,18157,18158,18160,18162],{"class":3538,"line":14936},[3536,18159,8931],{"class":4309},[3536,18161,6704],{"class":3616},[3536,18163,4352],{"class":4309},[3536,18165,18166,18169,18171],{"class":3538,"line":14951},[3536,18167,18168],{"class":3568},"          ) ",[3536,18170,3987],{"class":3546},[3536,18172,4985],{"class":3568},[3536,18174,18175,18178,18180,18182,18184,18186,18188,18190],{"class":3538,"line":14965},[3536,18176,18177],{"class":3542},"            places",[3536,18179,3547],{"class":3568},[3536,18181,15297],{"class":3550},[3536,18183,7926],{"class":3568},[3536,18185,13920],{"class":3542},[3536,18187,7932],{"class":3568},[3536,18189,5042],{"class":3561},[3536,18191,4985],{"class":3568},[3536,18193,18194,18196,18199,18202,18204,18206,18208,18210,18212,18214,18216,18218,18220,18222,18224],{"class":3538,"line":14971},[3536,18195,8789],{"class":4309},[3536,18197,18198],{"class":3616},"PlaceRow",[3536,18200,18201],{"class":4315}," key",[3536,18203,4319],{"class":3546},[3536,18205,4322],{"class":3561},[3536,18207,13920],{"class":3542},[3536,18209,3547],{"class":3568},[3536,18211,3571],{"class":3542},[3536,18213,3574],{"class":3561},[3536,18215,14403],{"class":4315},[3536,18217,4319],{"class":3546},[3536,18219,4322],{"class":3561},[3536,18221,13920],{"class":3542},[3536,18223,3574],{"class":3561},[3536,18225,5058],{"class":4309},[3536,18227,18228],{"class":3538,"line":14979},[3536,18229,18230],{"class":3568},"            ))\n",[3536,18232,18233,18236],{"class":3538,"line":14984},[3536,18234,18235],{"class":3568},"          )",[3536,18237,4476],{"class":3561},[3536,18239,18240],{"class":3538,"line":15009},[3536,18241,4748],{"emptyLinePlaceholder":4747},[3536,18243,18244,18246,18248,18250,18252,18254,18256,18258,18260,18262,18264,18266,18268,18270,18272,18274,18276,18278],{"class":3538,"line":15045},[3536,18245,8731],{"class":4309},[3536,18247,4993],{"class":3616},[3536,18249,8041],{"class":4315},[3536,18251,4319],{"class":3546},[3536,18253,4322],{"class":3561},[3536,18255,8165],{"class":3568},[3536,18257,10649],{"class":3542},[3536,18259,14219],{"class":3542},[3536,18261,3547],{"class":3568},[3536,18263,14286],{"class":3542},[3536,18265,3755],{"class":3568},[3536,18267,10842],{"class":3542},[3536,18269,14219],{"class":3542},[3536,18271,3547],{"class":3568},[3536,18273,17220],{"class":3542},[3536,18275,8174],{"class":3568},[3536,18277,3574],{"class":3561},[3536,18279,4352],{"class":4309},[3536,18281,18282,18284,18286,18288,18290,18292,18294,18296,18298,18300,18302,18304,18307,18309,18311],{"class":3538,"line":15071},[3536,18283,8755],{"class":4309},[3536,18285,6704],{"class":3616},[3536,18287,8041],{"class":4315},[3536,18289,4319],{"class":3546},[3536,18291,4322],{"class":3561},[3536,18293,8165],{"class":3568},[3536,18295,8109],{"class":3542},[3536,18297,9494],{"class":3557},[3536,18299,8174],{"class":3568},[3536,18301,3574],{"class":3561},[3536,18303,4341],{"class":4309},[3536,18305,18306],{"class":3546},"Deep link",[3536,18308,4347],{"class":4309},[3536,18310,6704],{"class":3616},[3536,18312,4352],{"class":4309},[3536,18314,18315,18317,18319,18321,18323,18325,18327,18329,18331,18333,18335,18337,18339],{"class":3538,"line":15080},[3536,18316,8755],{"class":4309},[3536,18318,6704],{"class":3616},[3536,18320,14692],{"class":4315},[3536,18322,4319],{"class":3546},[3536,18324,15020],{"class":3557},[3536,18326,12792],{"class":4315},[3536,18328,4319],{"class":3546},[3536,18330,4322],{"class":3561},[3536,18332,12082],{"class":3542},[3536,18334,3547],{"class":3568},[3536,18336,12621],{"class":3542},[3536,18338,3574],{"class":3561},[3536,18340,4352],{"class":4309},[3536,18342,18343],{"class":3538,"line":15087},[3536,18344,18345],{"class":3546},"              Посилання на цей екран (scheme з app.json + path). У Expo Go\n",[3536,18347,18348],{"class":3538,"line":15097},[3536,18349,18350],{"class":3546},"              рядок може бути exp:\u002F\u002F…; у standalone — nomad:\u002F\u002F…\n",[3536,18352,18353,18355,18357],{"class":3538,"line":15109},[3536,18354,8931],{"class":4309},[3536,18356,6704],{"class":3616},[3536,18358,4352],{"class":4309},[3536,18360,18361,18363],{"class":3538,"line":15123},[3536,18362,8755],{"class":4309},[3536,18364,14737],{"class":3616},[3536,18366,18367,18370,18372],{"class":3538,"line":15137},[3536,18368,18369],{"class":4315},"              variant",[3536,18371,4319],{"class":3546},[3536,18373,14748],{"class":3557},[3536,18375,18376,18378,18380,18382,18384,18386,18388],{"class":3538,"line":15147},[3536,18377,13009],{"class":4315},[3536,18379,4319],{"class":3546},[3536,18381,4322],{"class":3561},[3536,18383,12082],{"class":3542},[3536,18385,3547],{"class":3568},[3536,18387,12202],{"class":3542},[3536,18389,4476],{"class":3561},[3536,18391,18392,18394,18396,18398,18400,18402,18405],{"class":3538,"line":15154},[3536,18393,8949],{"class":4315},[3536,18395,4319],{"class":3546},[3536,18397,4322],{"class":3561},[3536,18399,8496],{"class":3542},[3536,18401,3547],{"class":3568},[3536,18403,18404],{"class":3542},"linkMono",[3536,18406,4476],{"class":3561},[3536,18408,18409],{"class":3538,"line":15160},[3536,18410,8996],{"class":4309},[3536,18412,18413,18416,18418],{"class":3538,"line":15177},[3536,18414,18415],{"class":3561},"              {",[3536,18417,10466],{"class":3542},[3536,18419,4476],{"class":3561},[3536,18421,18422,18424,18426],{"class":3538,"line":15212},[3536,18423,8931],{"class":4309},[3536,18425,6704],{"class":3616},[3536,18427,4352],{"class":4309},[3536,18429,18430,18432],{"class":3538,"line":15223},[3536,18431,8755],{"class":4309},[3536,18433,16150],{"class":3616},[3536,18435,18436,18439,18441],{"class":3538,"line":15232},[3536,18437,18438],{"class":4315},"              label",[3536,18440,4319],{"class":3546},[3536,18442,18443],{"class":3557},"\"Відкрити це посилання\"\n",[3536,18445,18446,18448,18450],{"class":3538,"line":15237},[3536,18447,18369],{"class":4315},[3536,18449,4319],{"class":3546},[3536,18451,18452],{"class":3557},"\"secondary\"\n",[3536,18454,18455,18457,18459,18461,18464],{"class":3538,"line":15287},[3536,18456,8968],{"class":4315},[3536,18458,4319],{"class":3546},[3536,18460,4322],{"class":3561},[3536,18462,18463],{"class":3542},"shareDeepLink",[3536,18465,4476],{"class":3561},[3536,18467,18468],{"class":3538,"line":15310},[3536,18469,13022],{"class":4309},[3536,18471,18472],{"class":3538,"line":15336},[3536,18473,4748],{"emptyLinePlaceholder":4747},[3536,18475,18476,18478],{"class":3538,"line":15344},[3536,18477,8755],{"class":4309},[3536,18479,16150],{"class":3616},[3536,18481,18482,18484,18486],{"class":3538,"line":15351},[3536,18483,18438],{"class":4315},[3536,18485,4319],{"class":3546},[3536,18487,18488],{"class":3557},"\"Нова поїздка (modal)\"\n",[3536,18490,18491,18493,18495,18497,18500],{"class":3538,"line":15369},[3536,18492,8968],{"class":4315},[3536,18494,4319],{"class":3546},[3536,18496,4322],{"class":3561},[3536,18498,18499],{"class":3542},"openCreateModal",[3536,18501,4476],{"class":3561},[3536,18503,18504],{"class":3538,"line":15398},[3536,18505,13022],{"class":4309},[3536,18507,18508,18510,18512,18514,18516,18518,18520,18522,18524,18526,18528,18530,18532],{"class":3538,"line":15410},[3536,18509,8755],{"class":4309},[3536,18511,6704],{"class":3616},[3536,18513,14692],{"class":4315},[3536,18515,4319],{"class":3546},[3536,18517,15020],{"class":3557},[3536,18519,12792],{"class":4315},[3536,18521,4319],{"class":3546},[3536,18523,4322],{"class":3561},[3536,18525,12082],{"class":3542},[3536,18527,3547],{"class":3568},[3536,18529,12621],{"class":3542},[3536,18531,3574],{"class":3561},[3536,18533,4352],{"class":4309},[3536,18535,18536],{"class":3538,"line":15423},[3536,18537,18538],{"class":3546},"              Modal create-trip на кореневому Stack — вкладки ховаються під\n",[3536,18540,18541],{"class":3538,"line":15429},[3536,18542,18543],{"class":3546},"              модалкою.\n",[3536,18545,18546,18548,18550],{"class":3538,"line":15456},[3536,18547,8931],{"class":4309},[3536,18549,6704],{"class":3616},[3536,18551,4352],{"class":4309},[3536,18553,18554,18556,18558],{"class":3538,"line":15470},[3536,18555,9044],{"class":4309},[3536,18557,4993],{"class":3616},[3536,18559,4352],{"class":4309},[3536,18561,18562,18564,18566],{"class":3538,"line":15476},[3536,18563,10208],{"class":4309},[3536,18565,4993],{"class":3616},[3536,18567,4352],{"class":4309},[3536,18569,18570,18572,18575],{"class":3538,"line":15484},[3536,18571,8215],{"class":4309},[3536,18573,18574],{"class":3616},"ScrollView",[3536,18576,4352],{"class":4309},[3536,18578,18579,18581,18583],{"class":3538,"line":15495},[3536,18580,5063],{"class":4309},[3536,18582,13581],{"class":3616},[3536,18584,4352],{"class":4309},[3536,18586,18587],{"class":3538,"line":15516},[3536,18588,5072],{"class":3546},[3536,18590,18591],{"class":3538,"line":15543},[3536,18592,4476],{"class":3546},[3536,18594,18595],{"class":3538,"line":15549},[3536,18596,4748],{"emptyLinePlaceholder":4747},[3536,18598,18599,18601,18604,18606,18608,18610,18612,18614,18616],{"class":3538,"line":15556},[3536,18600,12068],{"class":3561},[3536,18602,18603],{"class":3550}," PlaceRow",[3536,18605,8717],{"class":3546},[3536,18607,13920],{"class":3542},[3536,18609,14091],{"class":3546},[3536,18611,13920],{"class":3542},[3536,18613,3613],{"class":3546},[3536,18615,13783],{"class":3616},[3536,18617,18618],{"class":3546}," }) {\n",[3536,18620,18621,18623,18625,18627,18629,18631,18633,18635,18637,18639],{"class":3538,"line":15566},[3536,18622,4770],{"class":3561},[3536,18624,3596],{"class":3546},[3536,18626,12082],{"class":3599},[3536,18628,3755],{"class":3546},[3536,18630,13743],{"class":3599},[3536,18632,3755],{"class":3546},[3536,18634,16927],{"class":3599},[3536,18636,3602],{"class":3546},[3536,18638,11986],{"class":3550},[3536,18640,7911],{"class":3546},[3536,18642,18643,18645],{"class":3538,"line":15598},[3536,18644,4982],{"class":4725},[3536,18646,4985],{"class":3546},[3536,18648,18649,18651],{"class":3538,"line":15617},[3536,18650,4990],{"class":4309},[3536,18652,14595],{"class":3616},[3536,18654,18655,18657,18659,18661],{"class":3538,"line":15623},[3536,18656,14600],{"class":4315},[3536,18658,4319],{"class":3546},[3536,18660,4322],{"class":3561},[3536,18662,14607],{"class":3568},[3536,18664,18665,18667,18669,18671],{"class":3538,"line":15637},[3536,18666,14612],{"class":3542},[3536,18668,3547],{"class":3568},[3536,18670,13920],{"class":3542},[3536,18672,4390],{"class":3568},[3536,18674,18675],{"class":3538,"line":15647},[3536,18676,7136],{"class":3568},[3536,18678,18679,18681,18683,18685,18687],{"class":3538,"line":15656},[3536,18680,12635],{"class":3542},[3536,18682,12168],{"class":3542},[3536,18684,3547],{"class":3568},[3536,18686,15451],{"class":3542},[3536,18688,4390],{"class":3568},[3536,18690,18691,18694,18696,18698,18700],{"class":3538,"line":15662},[3536,18692,18693],{"class":3542},"          borderColor:",[3536,18695,12168],{"class":3542},[3536,18697,3547],{"class":3568},[3536,18699,12655],{"class":3542},[3536,18701,4390],{"class":3568},[3536,18703,18704,18707,18710,18712,18714],{"class":3538,"line":15670},[3536,18705,18706],{"class":3542},"          borderRadius:",[3536,18708,18709],{"class":3542}," radius",[3536,18711,3547],{"class":3568},[3536,18713,14224],{"class":3542},[3536,18715,4390],{"class":3568},[3536,18717,18718,18721,18723,18725,18727],{"class":3538,"line":15679},[3536,18719,18720],{"class":3542},"          padding:",[3536,18722,14219],{"class":3542},[3536,18724,3547],{"class":3568},[3536,18726,14286],{"class":3542},[3536,18728,4390],{"class":3568},[3536,18730,18731],{"class":3538,"line":15688},[3536,18732,12662],{"class":3568},[3536,18734,18735,18737],{"class":3538,"line":15693},[3536,18736,14675],{"class":3568},[3536,18738,4476],{"class":3561},[3536,18740,18741],{"class":3538,"line":15717},[3536,18742,12703],{"class":4309},[3536,18744,18745,18747,18749,18751,18753,18755,18757,18759,18761,18763,18765,18767,18769,18771,18773,18775,18777,18779,18781],{"class":3538,"line":15725},[3536,18746,5000],{"class":4309},[3536,18748,6704],{"class":3616},[3536,18750,8041],{"class":4315},[3536,18752,4319],{"class":3546},[3536,18754,4322],{"class":3561},[3536,18756,8165],{"class":3568},[3536,18758,8109],{"class":3542},[3536,18760,9494],{"class":3557},[3536,18762,8174],{"class":3568},[3536,18764,3574],{"class":3561},[3536,18766,4341],{"class":4309},[3536,18768,4322],{"class":3561},[3536,18770,13920],{"class":3542},[3536,18772,3547],{"class":3568},[3536,18774,5660],{"class":3542},[3536,18776,3574],{"class":3561},[3536,18778,4347],{"class":4309},[3536,18780,6704],{"class":3616},[3536,18782,4352],{"class":4309},[3536,18784,18785,18787,18789,18791,18793,18795,18797,18799,18801,18803,18805,18807,18809],{"class":3538,"line":15739},[3536,18786,5000],{"class":4309},[3536,18788,6704],{"class":3616},[3536,18790,14692],{"class":4315},[3536,18792,4319],{"class":3546},[3536,18794,15020],{"class":3557},[3536,18796,12792],{"class":4315},[3536,18798,4319],{"class":3546},[3536,18800,4322],{"class":3561},[3536,18802,12082],{"class":3542},[3536,18804,3547],{"class":3568},[3536,18806,12202],{"class":3542},[3536,18808,3574],{"class":3561},[3536,18810,4352],{"class":4309},[3536,18812,18813,18816,18818,18820,18823],{"class":3538,"line":15754},[3536,18814,18815],{"class":3561},"        {",[3536,18817,13920],{"class":3542},[3536,18819,3547],{"class":3568},[3536,18821,18822],{"class":3542},"city",[3536,18824,4476],{"class":3561},[3536,18826,18827,18829,18831],{"class":3538,"line":15769},[3536,18828,8215],{"class":4309},[3536,18830,6704],{"class":3616},[3536,18832,4352],{"class":4309},[3536,18834,18835,18837,18839,18841,18843,18845,18847,18849,18851,18853,18855,18857,18859],{"class":3538,"line":15784},[3536,18836,5000],{"class":4309},[3536,18838,6704],{"class":3616},[3536,18840,14692],{"class":4315},[3536,18842,4319],{"class":3546},[3536,18844,15020],{"class":3557},[3536,18846,12792],{"class":4315},[3536,18848,4319],{"class":3546},[3536,18850,4322],{"class":3561},[3536,18852,12082],{"class":3542},[3536,18854,3547],{"class":3568},[3536,18856,12621],{"class":3542},[3536,18858,3574],{"class":3561},[3536,18860,4352],{"class":4309},[3536,18862,18863,18865,18867,18869,18871],{"class":3538,"line":15799},[3536,18864,18815],{"class":3561},[3536,18866,13920],{"class":3542},[3536,18868,3547],{"class":3568},[3536,18870,3789],{"class":3542},[3536,18872,4476],{"class":3561},[3536,18874,18875,18877,18879],{"class":3538,"line":15811},[3536,18876,8215],{"class":4309},[3536,18878,6704],{"class":3616},[3536,18880,4352],{"class":4309},[3536,18882,18883,18885,18887],{"class":3538,"line":15824},[3536,18884,5063],{"class":4309},[3536,18886,4993],{"class":3616},[3536,18888,4352],{"class":4309},[3536,18890,18891],{"class":3538,"line":15837},[3536,18892,5072],{"class":3546},[3536,18894,18895],{"class":3538,"line":15850},[3536,18896,4476],{"class":3546},[3536,18898,18899],{"class":3538,"line":15857},[3536,18900,4748],{"emptyLinePlaceholder":4747},[3536,18902,18903,18905,18907,18909,18911,18913,18915],{"class":3538,"line":15899},[3536,18904,3593],{"class":3561},[3536,18906,9201],{"class":3599},[3536,18908,4874],{"class":3546},[3536,18910,8266],{"class":3542},[3536,18912,3547],{"class":3546},[3536,18914,9210],{"class":3550},[3536,18916,4378],{"class":3546},[3536,18918,18919,18921],{"class":3538,"line":15909},[3536,18920,16262],{"class":3542},[3536,18922,4547],{"class":3546},[3536,18924,18925,18927,18929],{"class":3538,"line":15917},[3536,18926,9248],{"class":3542},[3536,18928,14259],{"class":4897},[3536,18930,4390],{"class":3546},[3536,18932,18933],{"class":3538,"line":15931},[3536,18934,4579],{"class":3546},[3536,18936,18937,18939],{"class":3538,"line":15946},[3536,18938,10658],{"class":3542},[3536,18940,4547],{"class":3546},[3536,18942,18943,18945,18947],{"class":3538,"line":15964},[3536,18944,10665],{"class":3542},[3536,18946,9226],{"class":4897},[3536,18948,4390],{"class":3546},[3536,18950,18951,18953,18955],{"class":3538,"line":15986},[3536,18952,9618],{"class":3542},[3536,18954,9621],{"class":3557},[3536,18956,4390],{"class":3546},[3536,18958,18959,18961,18963],{"class":3538,"line":15991},[3536,18960,10682],{"class":3542},[3536,18962,9621],{"class":3557},[3536,18964,4390],{"class":3546},[3536,18966,18967],{"class":3538,"line":15997},[3536,18968,4579],{"class":3546},[3536,18970,18971,18974],{"class":3538,"line":16007},[3536,18972,18973],{"class":3542},"  cover:",[3536,18975,4547],{"class":3546},[3536,18977,18978,18981,18984],{"class":3538,"line":16012},[3536,18979,18980],{"class":3542},"    width:",[3536,18982,18983],{"class":3557}," '100%'",[3536,18985,4390],{"class":3546},[3536,18987,18988,18991,18994],{"class":3538,"line":16021},[3536,18989,18990],{"class":3542},"    height:",[3536,18992,18993],{"class":4897}," 200",[3536,18995,4390],{"class":3546},[3536,18997,18998],{"class":3538,"line":16026},[3536,18999,4579],{"class":3546},[3536,19001,19002,19005],{"class":3538,"line":16033},[3536,19003,19004],{"class":3542},"  meta:",[3536,19006,4547],{"class":3546},[3536,19008,19009,19011,19013],{"class":3538,"line":16044},[3536,19010,9365],{"class":3542},[3536,19012,8112],{"class":3557},[3536,19014,4390],{"class":3546},[3536,19016,19017],{"class":3538,"line":16056},[3536,19018,4579],{"class":3546},[3536,19020,19021,19024],{"class":3538,"line":16061},[3536,19022,19023],{"class":3542},"  badges:",[3536,19025,4547],{"class":3546},[3536,19027,19028,19030,19032],{"class":3538,"line":16074},[3536,19029,16315],{"class":3542},[3536,19031,16318],{"class":3557},[3536,19033,4390],{"class":3546},[3536,19035,19036,19038,19040],{"class":3538,"line":16087},[3536,19037,16326],{"class":3542},[3536,19039,16329],{"class":3557},[3536,19041,4390],{"class":3546},[3536,19043,19044],{"class":3538,"line":16100},[3536,19045,4579],{"class":3546},[3536,19047,19048,19051],{"class":3538,"line":16114},[3536,19049,19050],{"class":3542},"  linkMono:",[3536,19052,4547],{"class":3546},[3536,19054,19055,19058,19061,19063,19066,19068,19071,19074,19076,19079,19082,19084,19087,19089],{"class":3538,"line":16128},[3536,19056,19057],{"class":3542},"    fontFamily:",[3536,19059,19060],{"class":3542}," Platform",[3536,19062,3547],{"class":3546},[3536,19064,19065],{"class":3550},"select",[3536,19067,8717],{"class":3546},[3536,19069,19070],{"class":3542},"ios:",[3536,19072,19073],{"class":3557}," 'Menlo'",[3536,19075,3755],{"class":3546},[3536,19077,19078],{"class":3542},"android:",[3536,19080,19081],{"class":3557}," 'monospace'",[3536,19083,3755],{"class":3546},[3536,19085,19086],{"class":3542},"default:",[3536,19088,19081],{"class":3557},[3536,19090,19091],{"class":3546}," }),\n",[3536,19093,19094],{"class":3538,"line":16133},[3536,19095,4579],{"class":3546},[3536,19097,19098,19101],{"class":3538,"line":16140},[3536,19099,19100],{"class":3542},"  place:",[3536,19102,4547],{"class":3546},[3536,19104,19105,19107,19109],{"class":3538,"line":16145},[3536,19106,9432],{"class":3542},[3536,19108,9226],{"class":4897},[3536,19110,4390],{"class":3546},[3536,19112,19113,19115,19117],{"class":3538,"line":16153},[3536,19114,9325],{"class":3542},[3536,19116,9262],{"class":4897},[3536,19118,4390],{"class":3546},[3536,19120,19121,19124,19127,19129,19131],{"class":3538,"line":16164},[3536,19122,19123],{"class":3546},"    ...",[3536,19125,19126],{"class":3542},"Platform",[3536,19128,3547],{"class":3546},[3536,19130,19065],{"class":3550},[3536,19132,4378],{"class":3546},[3536,19134,19135,19138],{"class":3538,"line":16180},[3536,19136,19137],{"class":3542},"      ios:",[3536,19139,4547],{"class":3546},[3536,19141,19142,19145,19148],{"class":3538,"line":16197},[3536,19143,19144],{"class":3542},"        shadowColor:",[3536,19146,19147],{"class":3557}," '#000'",[3536,19149,4390],{"class":3546},[3536,19151,19152,19155,19158],{"class":3538,"line":16204},[3536,19153,19154],{"class":3542},"        shadowOpacity:",[3536,19156,19157],{"class":4897}," 0.04",[3536,19159,4390],{"class":3546},[3536,19161,19162,19165,19167],{"class":3538,"line":16209},[3536,19163,19164],{"class":3542},"        shadowRadius:",[3536,19166,9328],{"class":4897},[3536,19168,4390],{"class":3546},[3536,19170,19171,19174,19176,19178,19180,19182,19184,19186],{"class":3538,"line":16218},[3536,19172,19173],{"class":3542},"        shadowOffset:",[3536,19175,3596],{"class":3546},[3536,19177,14469],{"class":3542},[3536,19179,14259],{"class":4897},[3536,19181,3755],{"class":3546},[3536,19183,8693],{"class":3542},[3536,19185,10806],{"class":4897},[3536,19187,4411],{"class":3546},[3536,19189,19190],{"class":3538,"line":16227},[3536,19191,11718],{"class":3546},[3536,19193,19194,19197,19199,19202,19204],{"class":3538,"line":16232},[3536,19195,19196],{"class":3542},"      android:",[3536,19198,3596],{"class":3546},[3536,19200,19201],{"class":3542},"elevation:",[3536,19203,9226],{"class":4897},[3536,19205,4411],{"class":3546},[3536,19207,19208,19211],{"class":3538,"line":16237},[3536,19209,19210],{"class":3542},"      default:",[3536,19212,19213],{"class":3546}," {},\n",[3536,19215,19216],{"class":3538,"line":16242},[3536,19217,19218],{"class":3546},"    }),\n",[3536,19220,19221],{"class":3538,"line":16259},[3536,19222,4579],{"class":3546},[3536,19224,19225],{"class":3538,"line":16267},[3536,19226,4417],{"class":3546},[3526,19228,19231],{"className":3528,"code":19229,"filename":19230,"language":3530,"meta":3531,"style":3531},"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",[3533,19232,19233,19253,19277,19293,19297,19323,19339,19359,19363,19367,19372,19376,19389,19401,19419,19441,19445,19457,19473,19499,19503,19511,19515,19519,19525,19547,19553,19563,19573,19577,19589,19601,19613,19625,19629,19635,19639,19662,19696,19711,19719,19727,19731,19737,19749,19773,19787,19798,19810,19822,19828,19838,19851,19863,19875,19881,19899,19922,19950,19958,19964,19973,19995,20023,20028,20036,20078,20083,20091,20099,20103,20111,20115,20123,20127,20131,20135,20151,20157,20165,20169,20175,20183,20187,20194,20202,20206,20212,20221,20229,20233,20239,20247,20251],{"__ignoreMap":3531},[3536,19234,19235,19237,19239,19241,19243,19245,19247,19249,19251],{"class":3538,"line":3539},[3536,19236,4726],{"class":4725},[3536,19238,3596],{"class":3546},[3536,19240,13373],{"class":3542},[3536,19242,3755],{"class":3546},[3536,19244,13378],{"class":3542},[3536,19246,4733],{"class":3546},[3536,19248,4736],{"class":4725},[3536,19250,13385],{"class":3557},[3536,19252,4742],{"class":3546},[3536,19254,19255,19257,19259,19261,19263,19265,19267,19269,19271,19273,19275],{"class":3538,"line":4381},[3536,19256,4726],{"class":4725},[3536,19258,3596],{"class":3546},[3536,19260,8256],{"class":3542},[3536,19262,3755],{"class":3546},[3536,19264,8266],{"class":3542},[3536,19266,3755],{"class":3546},[3536,19268,4993],{"class":3542},[3536,19270,4733],{"class":3546},[3536,19272,4736],{"class":4725},[3536,19274,8281],{"class":3557},[3536,19276,4742],{"class":3546},[3536,19278,19279,19281,19283,19285,19287,19289,19291],{"class":3538,"line":4393},[3536,19280,4726],{"class":4725},[3536,19282,3596],{"class":3546},[3536,19284,8296],{"class":3542},[3536,19286,4733],{"class":3546},[3536,19288,4736],{"class":4725},[3536,19290,4739],{"class":3557},[3536,19292,4742],{"class":3546},[3536,19294,19295],{"class":3538,"line":4414},[3536,19296,4748],{"emptyLinePlaceholder":4747},[3536,19298,19299,19301,19303,19305,19307,19309,19311,19313,19315,19317,19319,19321],{"class":3538,"line":4470},[3536,19300,4726],{"class":4725},[3536,19302,3596],{"class":3546},[3536,19304,13789],{"class":3542},[3536,19306,3755],{"class":3546},[3536,19308,14400],{"class":3542},[3536,19310,3755],{"class":3546},[3536,19312,13553],{"class":4725},[3536,19314,13519],{"class":3542},[3536,19316,4733],{"class":3546},[3536,19318,4736],{"class":4725},[3536,19320,11970],{"class":3557},[3536,19322,4742],{"class":3546},[3536,19324,19325,19327,19329,19331,19333,19335,19337],{"class":3538,"line":4479},[3536,19326,4726],{"class":4725},[3536,19328,3596],{"class":3546},[3536,19330,11986],{"class":3542},[3536,19332,4733],{"class":3546},[3536,19334,4736],{"class":4725},[3536,19336,11993],{"class":3557},[3536,19338,4742],{"class":3546},[3536,19340,19341,19343,19345,19347,19349,19351,19353,19355,19357],{"class":3538,"line":4484},[3536,19342,4726],{"class":4725},[3536,19344,3596],{"class":3546},[3536,19346,6704],{"class":3542},[3536,19348,3755],{"class":3546},[3536,19350,13581],{"class":3542},[3536,19352,4733],{"class":3546},[3536,19354,4736],{"class":4725},[3536,19356,13588],{"class":3557},[3536,19358,4742],{"class":3546},[3536,19360,19361],{"class":3538,"line":4490},[3536,19362,4748],{"emptyLinePlaceholder":4747},[3536,19364,19365],{"class":3538,"line":7163},[3536,19366,12004],{"class":4573},[3536,19368,19369],{"class":3538,"line":7171},[3536,19370,19371],{"class":4573}," * Вкладка «Місця» — повний список місць (раніше лише горизонтальна стрічка на home).\n",[3536,19373,19374],{"class":3538,"line":7177},[3536,19375,12034],{"class":4573},[3536,19377,19378,19380,19382,19384,19387],{"class":3538,"line":7190},[3536,19379,4753],{"class":4725},[3536,19381,4756],{"class":4725},[3536,19383,4759],{"class":3561},[3536,19385,19386],{"class":3550}," PlacesScreen",[3536,19388,4765],{"class":3546},[3536,19390,19391,19393,19395,19397,19399],{"class":3538,"line":7203},[3536,19392,4770],{"class":3561},[3536,19394,5045],{"class":3599},[3536,19396,4874],{"class":3546},[3536,19398,8296],{"class":3550},[3536,19400,7911],{"class":3546},[3536,19402,19403,19405,19407,19409,19411,19413,19415,19417],{"class":3538,"line":7214},[3536,19404,4770],{"class":3561},[3536,19406,3596],{"class":3546},[3536,19408,12082],{"class":3599},[3536,19410,3755],{"class":3546},[3536,19412,13743],{"class":3599},[3536,19414,3602],{"class":3546},[3536,19416,11986],{"class":3550},[3536,19418,7911],{"class":3546},[3536,19420,19421,19423,19425,19427,19429,19431,19433,19435,19437,19439],{"class":3538,"line":7220},[3536,19422,4770],{"class":3561},[3536,19424,13770],{"class":3546},[3536,19426,13773],{"class":3599},[3536,19428,13776],{"class":3546},[3536,19430,13378],{"class":3550},[3536,19432,4310],{"class":3546},[3536,19434,13783],{"class":3616},[3536,19436,13786],{"class":3546},[3536,19438,13789],{"class":3542},[3536,19440,3580],{"class":3546},[3536,19442,19443],{"class":3538,"line":7226},[3536,19444,4748],{"emptyLinePlaceholder":4747},[3536,19446,19447,19449,19451,19453,19455],{"class":3538,"line":7244},[3536,19448,4770],{"class":3561},[3536,19450,13907],{"class":3599},[3536,19452,4874],{"class":3546},[3536,19454,13373],{"class":3550},[3536,19456,13834],{"class":3546},[3536,19458,19459,19461,19463,19465,19467,19469,19471],{"class":3538,"line":7250},[3536,19460,13839],{"class":3546},[3536,19462,13920],{"class":3542},[3536,19464,3613],{"class":3546},[3536,19466,13783],{"class":3616},[3536,19468,7932],{"class":3546},[3536,19470,5042],{"class":3561},[3536,19472,4547],{"class":3546},[3536,19474,19475,19477,19479,19481,19483,19485,19487,19489,19491,19493,19495,19497],{"class":3538,"line":7256},[3536,19476,13856],{"class":3542},[3536,19478,3547],{"class":3546},[3536,19480,3551],{"class":3550},[3536,19482,3554],{"class":3546},[3536,19484,3558],{"class":3557},[3536,19486,3562],{"class":3561},[3536,19488,13920],{"class":3542},[3536,19490,3547],{"class":3568},[3536,19492,4192],{"class":3542},[3536,19494,3574],{"class":3561},[3536,19496,3577],{"class":3557},[3536,19498,3580],{"class":3546},[3536,19500,19501],{"class":3538,"line":7261},[3536,19502,11660],{"class":3546},[3536,19504,19505,19507,19509],{"class":3538,"line":7266},[3536,19506,13887],{"class":3546},[3536,19508,3543],{"class":3542},[3536,19510,13892],{"class":3546},[3536,19512,19513],{"class":3538,"line":7803},[3536,19514,5072],{"class":3546},[3536,19516,19517],{"class":3538,"line":7813},[3536,19518,4748],{"emptyLinePlaceholder":4747},[3536,19520,19521,19523],{"class":3538,"line":7823},[3536,19522,4982],{"class":4725},[3536,19524,4985],{"class":3546},[3536,19526,19527,19529,19531,19533,19535,19537,19539,19541,19543,19545],{"class":3538,"line":7833},[3536,19528,4990],{"class":4309},[3536,19530,13581],{"class":3616},[3536,19532,8041],{"class":4315},[3536,19534,4319],{"class":3546},[3536,19536,4322],{"class":3561},[3536,19538,8496],{"class":3542},[3536,19540,3547],{"class":3568},[3536,19542,14850],{"class":3542},[3536,19544,3574],{"class":3561},[3536,19546,4352],{"class":4309},[3536,19548,19549,19551],{"class":3538,"line":7843},[3536,19550,5000],{"class":4309},[3536,19552,14595],{"class":3616},[3536,19554,19555,19557,19559,19561],{"class":3538,"line":7848},[3536,19556,9080],{"class":4315},[3536,19558,4319],{"class":3546},[3536,19560,4322],{"class":3561},[3536,19562,14607],{"class":3568},[3536,19564,19565,19567,19569,19571],{"class":3538,"line":7854},[3536,19566,14878],{"class":3542},[3536,19568,3547],{"class":3568},[3536,19570,14883],{"class":3542},[3536,19572,4390],{"class":3568},[3536,19574,19575],{"class":3538,"line":7859},[3536,19576,14891],{"class":3568},[3536,19578,19579,19581,19583,19585,19587],{"class":3538,"line":7888},[3536,19580,14897],{"class":3542},[3536,19582,14219],{"class":3542},[3536,19584,3547],{"class":3568},[3536,19586,14224],{"class":3542},[3536,19588,4390],{"class":3568},[3536,19590,19591,19593,19595,19597,19599],{"class":3538,"line":7914},[3536,19592,14911],{"class":3542},[3536,19594,14219],{"class":3542},[3536,19596,3547],{"class":3568},[3536,19598,14286],{"class":3542},[3536,19600,4390],{"class":3568},[3536,19602,19603,19605,19607,19609,19611],{"class":3538,"line":7952},[3536,19604,14925],{"class":3542},[3536,19606,14219],{"class":3542},[3536,19608,3547],{"class":3568},[3536,19610,14224],{"class":3542},[3536,19612,4390],{"class":3568},[3536,19614,19615,19617,19619,19621,19623],{"class":3538,"line":8796},[3536,19616,14954],{"class":3542},[3536,19618,12168],{"class":3542},[3536,19620,3547],{"class":3568},[3536,19622,12655],{"class":3542},[3536,19624,4390],{"class":3568},[3536,19626,19627],{"class":3538,"line":8838},[3536,19628,14968],{"class":3568},[3536,19630,19631,19633],{"class":3538,"line":8877},[3536,19632,14974],{"class":3568},[3536,19634,4476],{"class":3561},[3536,19636,19637],{"class":3538,"line":8918},[3536,19638,8139],{"class":4309},[3536,19640,19641,19643,19645,19647,19649,19651,19653,19656,19658,19660],{"class":3538,"line":8928},[3536,19642,8144],{"class":4309},[3536,19644,6704],{"class":3616},[3536,19646,14692],{"class":4315},[3536,19648,4319],{"class":3546},[3536,19650,14995],{"class":3557},[3536,19652,4341],{"class":4309},[3536,19654,19655],{"class":3546},"Місця",[3536,19657,4347],{"class":4309},[3536,19659,6704],{"class":3616},[3536,19661,4352],{"class":4309},[3536,19663,19664,19666,19668,19670,19672,19674,19676,19678,19680,19682,19684,19686,19688,19690,19692,19694],{"class":3538,"line":8938},[3536,19665,8144],{"class":4309},[3536,19667,6704],{"class":3616},[3536,19669,14692],{"class":4315},[3536,19671,4319],{"class":3546},[3536,19673,15020],{"class":3557},[3536,19675,8041],{"class":4315},[3536,19677,4319],{"class":3546},[3536,19679,4322],{"class":3561},[3536,19681,8165],{"class":3568},[3536,19683,10842],{"class":3542},[3536,19685,14219],{"class":3542},[3536,19687,3547],{"class":3568},[3536,19689,14946],{"class":3542},[3536,19691,8174],{"class":3568},[3536,19693,3574],{"class":3561},[3536,19695,4352],{"class":4309},[3536,19697,19698,19701,19703,19705,19707,19709],{"class":3538,"line":8946},[3536,19699,19700],{"class":3546},"          Усі збережені точки з mock-даних · ",[3536,19702,4322],{"class":3561},[3536,19704,13773],{"class":3542},[3536,19706,3547],{"class":3568},[3536,19708,14253],{"class":3542},[3536,19710,4476],{"class":3561},[3536,19712,19713,19715,19717],{"class":3538,"line":8965},[3536,19714,10208],{"class":4309},[3536,19716,6704],{"class":3616},[3536,19718,4352],{"class":4309},[3536,19720,19721,19723,19725],{"class":3538,"line":8993},[3536,19722,8215],{"class":4309},[3536,19724,4993],{"class":3616},[3536,19726,4352],{"class":4309},[3536,19728,19729],{"class":3538,"line":8999},[3536,19730,4748],{"emptyLinePlaceholder":4747},[3536,19732,19733,19735],{"class":3538,"line":9032},[3536,19734,5000],{"class":4309},[3536,19736,8606],{"class":3616},[3536,19738,19739,19741,19743,19745,19747],{"class":3538,"line":9041},[3536,19740,8611],{"class":4315},[3536,19742,4319],{"class":3546},[3536,19744,4322],{"class":3561},[3536,19746,13773],{"class":3542},[3536,19748,4476],{"class":3561},[3536,19750,19751,19753,19755,19757,19759,19761,19763,19765,19767,19769,19771],{"class":3538,"line":9051},[3536,19752,8624],{"class":4315},[3536,19754,4319],{"class":3546},[3536,19756,4322],{"class":3561},[3536,19758,3554],{"class":3568},[3536,19760,8633],{"class":3542},[3536,19762,7932],{"class":3568},[3536,19764,5042],{"class":3561},[3536,19766,8640],{"class":3542},[3536,19768,3547],{"class":3568},[3536,19770,3571],{"class":3542},[3536,19772,4476],{"class":3561},[3536,19774,19775,19778,19780,19782,19785],{"class":3538,"line":9059},[3536,19776,19777],{"class":4315},"        numColumns",[3536,19779,4319],{"class":3546},[3536,19781,4322],{"class":3561},[3536,19783,19784],{"class":4897},"2",[3536,19786,4476],{"class":3561},[3536,19788,19789,19792,19794,19796],{"class":3538,"line":9065},[3536,19790,19791],{"class":4315},"        columnWrapperStyle",[3536,19793,4319],{"class":3546},[3536,19795,4322],{"class":3561},[3536,19797,4441],{"class":3568},[3536,19799,19800,19802,19804,19806,19808],{"class":3538,"line":9070},[3536,19801,14656],{"class":3542},[3536,19803,14219],{"class":3542},[3536,19805,3547],{"class":3568},[3536,19807,14286],{"class":3542},[3536,19809,4390],{"class":3568},[3536,19811,19812,19814,19816,19818,19820],{"class":3538,"line":9077},[3536,19813,14628],{"class":3542},[3536,19815,14219],{"class":3542},[3536,19817,3547],{"class":3568},[3536,19819,14224],{"class":3542},[3536,19821,4390],{"class":3568},[3536,19823,19824,19826],{"class":3538,"line":9096},[3536,19825,8132],{"class":3568},[3536,19827,4476],{"class":3561},[3536,19829,19830,19832,19834,19836],{"class":3538,"line":9125},[3536,19831,8651],{"class":4315},[3536,19833,4319],{"class":3546},[3536,19835,4322],{"class":3561},[3536,19837,4441],{"class":3568},[3536,19839,19840,19843,19845,19847,19849],{"class":3538,"line":9130},[3536,19841,19842],{"class":3542},"          paddingTop:",[3536,19844,14219],{"class":3542},[3536,19846,3547],{"class":3568},[3536,19848,14224],{"class":3542},[3536,19850,4390],{"class":3568},[3536,19852,19853,19855,19857,19859,19861],{"class":3538,"line":9163},[3536,19854,17519],{"class":3542},[3536,19856,14219],{"class":3542},[3536,19858,3547],{"class":3568},[3536,19860,14648],{"class":3542},[3536,19862,4390],{"class":3568},[3536,19864,19865,19867,19869,19871,19873],{"class":3538,"line":9172},[3536,19866,14656],{"class":3542},[3536,19868,14219],{"class":3542},[3536,19870,3547],{"class":3568},[3536,19872,14286],{"class":3542},[3536,19874,4390],{"class":3568},[3536,19876,19877,19879],{"class":3538,"line":9181},[3536,19878,8132],{"class":3568},[3536,19880,4476],{"class":3561},[3536,19882,19883,19885,19887,19889,19891,19893,19895,19897],{"class":3538,"line":9186},[3536,19884,8710],{"class":4315},[3536,19886,4319],{"class":3546},[3536,19888,4322],{"class":3561},[3536,19890,8717],{"class":3568},[3536,19892,8633],{"class":3542},[3536,19894,8722],{"class":3568},[3536,19896,5042],{"class":3561},[3536,19898,4985],{"class":3568},[3536,19900,19901,19903,19905,19907,19909,19911,19913,19915,19918,19920],{"class":3538,"line":9191},[3536,19902,8731],{"class":4309},[3536,19904,4993],{"class":3616},[3536,19906,8041],{"class":4315},[3536,19908,4319],{"class":3546},[3536,19910,4322],{"class":3561},[3536,19912,8496],{"class":3542},[3536,19914,3547],{"class":3568},[3536,19916,19917],{"class":3542},"cell",[3536,19919,3574],{"class":3561},[3536,19921,4352],{"class":4309},[3536,19923,19924,19926,19928,19930,19932,19934,19936,19938,19940,19942,19944,19946,19948],{"class":3538,"line":9196},[3536,19925,8755],{"class":4309},[3536,19927,14400],{"class":3616},[3536,19929,14403],{"class":4315},[3536,19931,4319],{"class":3546},[3536,19933,4322],{"class":3561},[3536,19935,8633],{"class":3542},[3536,19937,3574],{"class":3561},[3536,19939,5032],{"class":4315},[3536,19941,4319],{"class":3546},[3536,19943,4322],{"class":3561},[3536,19945,14420],{"class":3542},[3536,19947,3574],{"class":3561},[3536,19949,5058],{"class":4309},[3536,19951,19952,19954,19956],{"class":3538,"line":9215},[3536,19953,9044],{"class":4309},[3536,19955,4993],{"class":3616},[3536,19957,4352],{"class":4309},[3536,19959,19960,19962],{"class":3538,"line":9237},[3536,19961,9054],{"class":3568},[3536,19963,4476],{"class":3561},[3536,19965,19966,19969,19971],{"class":3538,"line":9245},[3536,19967,19968],{"class":4315},"        ListEmptyComponent",[3536,19970,4319],{"class":3546},[3536,19972,4441],{"class":3561},[3536,19974,19975,19977,19979,19981,19983,19985,19987,19989,19991,19993],{"class":3538,"line":9256},[3536,19976,8731],{"class":4309},[3536,19978,4993],{"class":3616},[3536,19980,8041],{"class":4315},[3536,19982,4319],{"class":3546},[3536,19984,4322],{"class":3561},[3536,19986,8496],{"class":3542},[3536,19988,3547],{"class":3568},[3536,19990,14617],{"class":3542},[3536,19992,3574],{"class":3561},[3536,19994,4352],{"class":4309},[3536,19996,19997,19999,20001,20003,20005,20007,20009,20011,20013,20015,20017,20019,20021],{"class":3538,"line":9267},[3536,19998,8755],{"class":4309},[3536,20000,6704],{"class":3616},[3536,20002,14692],{"class":4315},[3536,20004,4319],{"class":3546},[3536,20006,14697],{"class":3557},[3536,20008,8041],{"class":4315},[3536,20010,4319],{"class":3546},[3536,20012,4322],{"class":3561},[3536,20014,8496],{"class":3542},[3536,20016,3547],{"class":3568},[3536,20018,10026],{"class":3542},[3536,20020,3574],{"class":3561},[3536,20022,4352],{"class":4309},[3536,20024,20025],{"class":3538,"line":9278},[3536,20026,20027],{"class":3568},"              Місць поки немає\n",[3536,20029,20030,20032,20034],{"class":3538,"line":9289},[3536,20031,8931],{"class":4309},[3536,20033,6704],{"class":3616},[3536,20035,4352],{"class":4309},[3536,20037,20038,20040,20042,20044,20046,20048,20050,20052,20054,20056,20058,20060,20062,20064,20066,20068,20070,20072,20074,20076],{"class":3538,"line":9300},[3536,20039,8755],{"class":4309},[3536,20041,6704],{"class":3616},[3536,20043,14692],{"class":4315},[3536,20045,4319],{"class":3546},[3536,20047,15020],{"class":3557},[3536,20049,12792],{"class":4315},[3536,20051,4319],{"class":3546},[3536,20053,4322],{"class":3561},[3536,20055,12082],{"class":3542},[3536,20057,3547],{"class":3568},[3536,20059,12621],{"class":3542},[3536,20061,3574],{"class":3561},[3536,20063,8041],{"class":4315},[3536,20065,4319],{"class":3546},[3536,20067,4322],{"class":3561},[3536,20069,8496],{"class":3542},[3536,20071,3547],{"class":3568},[3536,20073,10026],{"class":3542},[3536,20075,3574],{"class":3561},[3536,20077,4352],{"class":4309},[3536,20079,20080],{"class":3538,"line":9305},[3536,20081,20082],{"class":3568},"              Вони з’являться разом із поїздками.\n",[3536,20084,20085,20087,20089],{"class":3538,"line":9313},[3536,20086,8931],{"class":4309},[3536,20088,6704],{"class":3616},[3536,20090,4352],{"class":4309},[3536,20092,20093,20095,20097],{"class":3538,"line":9322},[3536,20094,9044],{"class":4309},[3536,20096,4993],{"class":3616},[3536,20098,4352],{"class":4309},[3536,20100,20101],{"class":3538,"line":9333},[3536,20102,7247],{"class":3561},[3536,20104,20105,20107,20109],{"class":3538,"line":9343},[3536,20106,17538],{"class":4315},[3536,20108,4319],{"class":3546},[3536,20110,14441],{"class":3561},[3536,20112,20113],{"class":3538,"line":9352},[3536,20114,9062],{"class":4309},[3536,20116,20117,20119,20121],{"class":3538,"line":9362},[3536,20118,5063],{"class":4309},[3536,20120,13581],{"class":3616},[3536,20122,4352],{"class":4309},[3536,20124,20125],{"class":3538,"line":9372},[3536,20126,5072],{"class":3546},[3536,20128,20129],{"class":3538,"line":9377},[3536,20130,4476],{"class":3546},[3536,20132,20133],{"class":3538,"line":9400},[3536,20134,4748],{"emptyLinePlaceholder":4747},[3536,20136,20137,20139,20141,20143,20145,20147,20149],{"class":3538,"line":9408},[3536,20138,3593],{"class":3561},[3536,20140,9201],{"class":3599},[3536,20142,4874],{"class":3546},[3536,20144,8266],{"class":3542},[3536,20146,3547],{"class":3546},[3536,20148,9210],{"class":3550},[3536,20150,4378],{"class":3546},[3536,20152,20153,20155],{"class":3538,"line":9419},[3536,20154,16262],{"class":3542},[3536,20156,4547],{"class":3546},[3536,20158,20159,20161,20163],{"class":3538,"line":9429},[3536,20160,9248],{"class":3542},[3536,20162,14259],{"class":4897},[3536,20164,4390],{"class":3546},[3536,20166,20167],{"class":3538,"line":9439},[3536,20168,4579],{"class":3546},[3536,20170,20171,20173],{"class":3538,"line":9450},[3536,20172,16284],{"class":3542},[3536,20174,4547],{"class":3546},[3536,20176,20177,20179,20181],{"class":3538,"line":9461},[3536,20178,16292],{"class":3542},[3536,20180,9226],{"class":4897},[3536,20182,4390],{"class":3546},[3536,20184,20185],{"class":3538,"line":9471},[3536,20186,4579],{"class":3546},[3536,20188,20189,20192],{"class":3538,"line":9476},[3536,20190,20191],{"class":3542},"  cell:",[3536,20193,4547],{"class":3546},[3536,20195,20196,20198,20200],{"class":3538,"line":9505},[3536,20197,10665],{"class":3542},[3536,20199,9226],{"class":4897},[3536,20201,4390],{"class":3546},[3536,20203,20204],{"class":3538,"line":9540},[3536,20205,4579],{"class":3546},[3536,20207,20208,20210],{"class":3538,"line":9560},[3536,20209,16435],{"class":3542},[3536,20211,4547],{"class":3546},[3536,20213,20214,20216,20219],{"class":3538,"line":9568},[3536,20215,9453],{"class":3542},[3536,20217,20218],{"class":4897}," 32",[3536,20220,4390],{"class":3546},[3536,20222,20223,20225,20227],{"class":3538,"line":9578},[3536,20224,9464],{"class":3542},[3536,20226,9262],{"class":4897},[3536,20228,4390],{"class":3546},[3536,20230,20231],{"class":3538,"line":9588},[3536,20232,4579],{"class":3546},[3536,20234,20235,20237],{"class":3538,"line":9597},[3536,20236,10658],{"class":3542},[3536,20238,4547],{"class":3546},[3536,20240,20241,20243,20245],{"class":3538,"line":9606},[3536,20242,16474],{"class":3542},[3536,20244,9621],{"class":3557},[3536,20246,4390],{"class":3546},[3536,20248,20249],{"class":3538,"line":9615},[3536,20250,4579],{"class":3546},[3536,20252,20253],{"class":3538,"line":9626},[3536,20254,4417],{"class":3546},[3526,20256,20259],{"className":3528,"code":20257,"filename":20258,"language":3530,"meta":3531,"style":3531},"import { Pressable, ScrollView, StyleSheet, View } from 'react-native';\nimport { Link } from 'expo-router';\nimport * as Linking from 'expo-linking';\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        \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' }}>Deep link (scheme)\u003C\u002FAppText>\n          \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n            У app.json: scheme «nomad». Приклад createURL для поїздки id=1\n            (залежить від Expo Go \u002F standalone):\n          \u003C\u002FAppText>\n          \u003CAppText variant=\"caption\" color={colors.primary}>\n            {Linking.createURL('\u002Ftrips\u002F1')}\n          \u003C\u002FAppText>\n          \u003CAppText variant=\"caption\" color={colors.textSecondary}>\n            Тест на білді: nomad:\u002F\u002Ftrips\u002F1 (симулятор \u002F adb). Деталі — у\n            статті про deep linking.\n          \u003C\u002FAppText>\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",[3533,20260,20261,20289,20305,20321,20325,20347,20367,20371,20395,20411,20427,20443,20447,20451,20455,20460,20464,20477,20507,20511,20517,20539,20545,20555,20567,20579,20591,20603,20609,20617,20621,20643,20671,20683,20706,20714,20718,20724,20734,20745,20749,20762,20775,20788,20801,20806,20813,20817,20850,20878,20883,20888,20896,20932,20952,20973,20980,20986,21003,21030,21040,21051,21056,21081,21094,21099,21106,21115,21134,21159,21163,21170,21179,21208,21225,21230,21243,21252,21260,21265,21272,21280,21288,21292,21298,21308,21318,21322,21334,21346,21358,21370,21374,21380,21384,21417,21445,21450,21455,21460,21468,21485,21494,21498,21504,21514,21526,21531,21544,21562,21571,21576,21583,21587,21625,21630,21638,21646,21654,21662,21666,21672,21682,21692,21696,21708,21720,21732,21744,21748,21754,21758,21791,21819,21824,21829,21837,21865,21883,21891,21919,21924,21929,21937,21945,21949,21977,21982,21990,21998,22006,22010,22014,22018,22034,22040,22048,22052,22058,22066,22074,22078,22084,22092,22100,22104,22110,22118,22126,22134,22142,22146,22152,22160,22164,22171,22179,22183],{"__ignoreMap":3531},[3536,20262,20263,20265,20267,20269,20271,20273,20275,20277,20279,20281,20283,20285,20287],{"class":3538,"line":3539},[3536,20264,4726],{"class":4725},[3536,20266,3596],{"class":3546},[3536,20268,8261],{"class":3542},[3536,20270,3755],{"class":3546},[3536,20272,18574],{"class":3542},[3536,20274,3755],{"class":3546},[3536,20276,8266],{"class":3542},[3536,20278,3755],{"class":3546},[3536,20280,4993],{"class":3542},[3536,20282,4733],{"class":3546},[3536,20284,4736],{"class":4725},[3536,20286,8281],{"class":3557},[3536,20288,4742],{"class":3546},[3536,20290,20291,20293,20295,20297,20299,20301,20303],{"class":3538,"line":4381},[3536,20292,4726],{"class":4725},[3536,20294,3596],{"class":3546},[3536,20296,3754],{"class":3542},[3536,20298,4733],{"class":3546},[3536,20300,4736],{"class":4725},[3536,20302,4739],{"class":3557},[3536,20304,4742],{"class":3546},[3536,20306,20307,20309,20311,20313,20315,20317,20319],{"class":3538,"line":4393},[3536,20308,4726],{"class":4725},[3536,20310,5846],{"class":3561},[3536,20312,5849],{"class":4725},[3536,20314,5852],{"class":3542},[3536,20316,5855],{"class":4725},[3536,20318,5858],{"class":3557},[3536,20320,4742],{"class":3546},[3536,20322,20323],{"class":3538,"line":4414},[3536,20324,4748],{"emptyLinePlaceholder":4747},[3536,20326,20327,20329,20331,20333,20335,20337,20339,20341,20343,20345],{"class":3538,"line":4470},[3536,20328,4726],{"class":4725},[3536,20330,3596],{"class":3546},[3536,20332,11986],{"class":3542},[3536,20334,3755],{"class":3546},[3536,20336,13553],{"class":4725},[3536,20338,13556],{"class":3542},[3536,20340,4733],{"class":3546},[3536,20342,4736],{"class":4725},[3536,20344,11993],{"class":3557},[3536,20346,4742],{"class":3546},[3536,20348,20349,20351,20353,20355,20357,20359,20361,20363,20365],{"class":3538,"line":4479},[3536,20350,4726],{"class":4725},[3536,20352,3596],{"class":3546},[3536,20354,6704],{"class":3542},[3536,20356,3755],{"class":3546},[3536,20358,13581],{"class":3542},[3536,20360,4733],{"class":3546},[3536,20362,4736],{"class":4725},[3536,20364,13588],{"class":3557},[3536,20366,4742],{"class":3546},[3536,20368,20369],{"class":3538,"line":4484},[3536,20370,4748],{"emptyLinePlaceholder":4747},[3536,20372,20373,20375,20377,20379,20381,20383,20385,20387,20389,20391,20393],{"class":3538,"line":4490},[3536,20374,3593],{"class":3561},[3536,20376,13601],{"class":3599},[3536,20378,13604],{"class":3546},[3536,20380,3571],{"class":3542},[3536,20382,3613],{"class":3546},[3536,20384,13611],{"class":3616},[3536,20386,13614],{"class":3546},[3536,20388,13617],{"class":3542},[3536,20390,3613],{"class":3546},[3536,20392,3617],{"class":3616},[3536,20394,13624],{"class":3546},[3536,20396,20397,20399,20401,20403,20405,20407,20409],{"class":3538,"line":7163},[3536,20398,13629],{"class":3546},[3536,20400,4401],{"class":3542},[3536,20402,13634],{"class":3557},[3536,20404,3755],{"class":3546},[3536,20406,13639],{"class":3542},[3536,20408,13642],{"class":3557},[3536,20410,4411],{"class":3546},[3536,20412,20413,20415,20417,20419,20421,20423,20425],{"class":3538,"line":7171},[3536,20414,13629],{"class":3546},[3536,20416,4401],{"class":3542},[3536,20418,12132],{"class":3557},[3536,20420,3755],{"class":3546},[3536,20422,13639],{"class":3542},[3536,20424,13659],{"class":3557},[3536,20426,4411],{"class":3546},[3536,20428,20429,20431,20433,20435,20437,20439,20441],{"class":3538,"line":7177},[3536,20430,13629],{"class":3546},[3536,20432,4401],{"class":3542},[3536,20434,12126],{"class":3557},[3536,20436,3755],{"class":3546},[3536,20438,13639],{"class":3542},[3536,20440,13676],{"class":3557},[3536,20442,4411],{"class":3546},[3536,20444,20445],{"class":3538,"line":7190},[3536,20446,7851],{"class":3546},[3536,20448,20449],{"class":3538,"line":7203},[3536,20450,4748],{"emptyLinePlaceholder":4747},[3536,20452,20453],{"class":3538,"line":7214},[3536,20454,12004],{"class":4573},[3536,20456,20457],{"class":3538,"line":7220},[3536,20458,20459],{"class":4573}," * Вкладка «Ще» — про застосунок, тема, посилання на створення поїздки (Link).\n",[3536,20461,20462],{"class":3538,"line":7226},[3536,20463,12034],{"class":4573},[3536,20465,20466,20468,20470,20472,20475],{"class":3538,"line":7244},[3536,20467,4753],{"class":4725},[3536,20469,4756],{"class":4725},[3536,20471,4759],{"class":3561},[3536,20473,20474],{"class":3550}," AboutScreen",[3536,20476,4765],{"class":3546},[3536,20478,20479,20481,20483,20485,20487,20489,20491,20493,20495,20497,20499,20501,20503,20505],{"class":3538,"line":7250},[3536,20480,4770],{"class":3561},[3536,20482,3596],{"class":3546},[3536,20484,12082],{"class":3599},[3536,20486,3755],{"class":3546},[3536,20488,13743],{"class":3599},[3536,20490,3755],{"class":3546},[3536,20492,13748],{"class":3599},[3536,20494,3755],{"class":3546},[3536,20496,13753],{"class":3599},[3536,20498,3755],{"class":3546},[3536,20500,5564],{"class":3599},[3536,20502,3602],{"class":3546},[3536,20504,11986],{"class":3550},[3536,20506,7911],{"class":3546},[3536,20508,20509],{"class":3538,"line":7256},[3536,20510,4748],{"emptyLinePlaceholder":4747},[3536,20512,20513,20515],{"class":3538,"line":7261},[3536,20514,4982],{"class":4725},[3536,20516,4985],{"class":3546},[3536,20518,20519,20521,20523,20525,20527,20529,20531,20533,20535,20537],{"class":3538,"line":7266},[3536,20520,4990],{"class":4309},[3536,20522,13581],{"class":3616},[3536,20524,8041],{"class":4315},[3536,20526,4319],{"class":3546},[3536,20528,4322],{"class":3561},[3536,20530,8496],{"class":3542},[3536,20532,3547],{"class":3568},[3536,20534,14850],{"class":3542},[3536,20536,3574],{"class":3561},[3536,20538,4352],{"class":4309},[3536,20540,20541,20543],{"class":3538,"line":7803},[3536,20542,5000],{"class":4309},[3536,20544,17504],{"class":3616},[3536,20546,20547,20549,20551,20553],{"class":3538,"line":7813},[3536,20548,8651],{"class":4315},[3536,20550,4319],{"class":3546},[3536,20552,4322],{"class":3561},[3536,20554,4441],{"class":3568},[3536,20556,20557,20559,20561,20563,20565],{"class":3538,"line":7823},[3536,20558,14628],{"class":3542},[3536,20560,14219],{"class":3542},[3536,20562,3547],{"class":3568},[3536,20564,14224],{"class":3542},[3536,20566,4390],{"class":3568},[3536,20568,20569,20571,20573,20575,20577],{"class":3538,"line":7833},[3536,20570,19842],{"class":3542},[3536,20572,14219],{"class":3542},[3536,20574,3547],{"class":3568},[3536,20576,14286],{"class":3542},[3536,20578,4390],{"class":3568},[3536,20580,20581,20583,20585,20587,20589],{"class":3538,"line":7843},[3536,20582,17519],{"class":3542},[3536,20584,14219],{"class":3542},[3536,20586,3547],{"class":3568},[3536,20588,14648],{"class":3542},[3536,20590,4390],{"class":3568},[3536,20592,20593,20595,20597,20599,20601],{"class":3538,"line":7848},[3536,20594,14656],{"class":3542},[3536,20596,14219],{"class":3542},[3536,20598,3547],{"class":3568},[3536,20600,14224],{"class":3542},[3536,20602,4390],{"class":3568},[3536,20604,20605,20607],{"class":3538,"line":7854},[3536,20606,8132],{"class":3568},[3536,20608,4476],{"class":3561},[3536,20610,20611,20613,20615],{"class":3538,"line":7859},[3536,20612,17538],{"class":4315},[3536,20614,4319],{"class":3546},[3536,20616,14441],{"class":3561},[3536,20618,20619],{"class":3538,"line":7888},[3536,20620,8139],{"class":4309},[3536,20622,20623,20625,20627,20629,20631,20633,20635,20637,20639,20641],{"class":3538,"line":7914},[3536,20624,8144],{"class":4309},[3536,20626,6704],{"class":3616},[3536,20628,14692],{"class":4315},[3536,20630,4319],{"class":3546},[3536,20632,14995],{"class":3557},[3536,20634,4341],{"class":4309},[3536,20636,15000],{"class":3546},[3536,20638,4347],{"class":4309},[3536,20640,6704],{"class":3616},[3536,20642,4352],{"class":4309},[3536,20644,20645,20647,20649,20651,20653,20655,20657,20659,20661,20663,20665,20667,20669],{"class":3538,"line":7952},[3536,20646,8144],{"class":4309},[3536,20648,6704],{"class":3616},[3536,20650,14692],{"class":4315},[3536,20652,4319],{"class":3546},[3536,20654,15020],{"class":3557},[3536,20656,12792],{"class":4315},[3536,20658,4319],{"class":3546},[3536,20660,4322],{"class":3561},[3536,20662,12082],{"class":3542},[3536,20664,3547],{"class":3568},[3536,20666,12621],{"class":3542},[3536,20668,3574],{"class":3561},[3536,20670,4352],{"class":4309},[3536,20672,20673,20676,20678,20681],{"class":3538,"line":8796},[3536,20674,20675],{"class":3546},"          Навчальний щоденник подорожей курсу React Native (Nomad). Тема зараз:",[3536,20677,4322],{"class":3561},[3536,20679,20680],{"class":3557},"' '",[3536,20682,4476],{"class":3561},[3536,20684,20685,20687,20689,20691,20693,20695,20697,20699,20701,20703],{"class":3538,"line":8838},[3536,20686,15163],{"class":3561},[3536,20688,5564],{"class":3542},[3536,20690,12123],{"class":3546},[3536,20692,12126],{"class":3557},[3536,20694,12129],{"class":3546},[3536,20696,15061],{"class":3557},[3536,20698,12135],{"class":3546},[3536,20700,15066],{"class":3557},[3536,20702,3574],{"class":3561},[3536,20704,20705],{"class":3546},".\n",[3536,20707,20708,20710,20712],{"class":3538,"line":8877},[3536,20709,10208],{"class":4309},[3536,20711,6704],{"class":3616},[3536,20713,4352],{"class":4309},[3536,20715,20716],{"class":3538,"line":8918},[3536,20717,4748],{"emptyLinePlaceholder":4747},[3536,20719,20720,20722],{"class":3538,"line":8928},[3536,20721,8144],{"class":4309},[3536,20723,14595],{"class":3616},[3536,20725,20726,20728,20730,20732],{"class":3538,"line":8938},[3536,20727,15100],{"class":4315},[3536,20729,4319],{"class":3546},[3536,20731,4322],{"class":3561},[3536,20733,14607],{"class":3568},[3536,20735,20736,20739,20741,20743],{"class":3538,"line":8946},[3536,20737,20738],{"class":3542},"            styles",[3536,20740,3547],{"class":3568},[3536,20742,8746],{"class":3542},[3536,20744,4390],{"class":3568},[3536,20746,20747],{"class":3538,"line":8965},[3536,20748,7174],{"class":3568},[3536,20750,20751,20754,20756,20758,20760],{"class":3538,"line":8993},[3536,20752,20753],{"class":3542},"              backgroundColor:",[3536,20755,12168],{"class":3542},[3536,20757,3547],{"class":3568},[3536,20759,15451],{"class":3542},[3536,20761,4390],{"class":3568},[3536,20763,20764,20767,20769,20771,20773],{"class":3538,"line":8999},[3536,20765,20766],{"class":3542},"              borderColor:",[3536,20768,12168],{"class":3542},[3536,20770,3547],{"class":3568},[3536,20772,12655],{"class":3542},[3536,20774,4390],{"class":3568},[3536,20776,20777,20780,20782,20784,20786],{"class":3538,"line":9032},[3536,20778,20779],{"class":3542},"              padding:",[3536,20781,14219],{"class":3542},[3536,20783,3547],{"class":3568},[3536,20785,14224],{"class":3542},[3536,20787,4390],{"class":3568},[3536,20789,20790,20793,20795,20797,20799],{"class":3538,"line":9041},[3536,20791,20792],{"class":3542},"              gap:",[3536,20794,14219],{"class":3542},[3536,20796,3547],{"class":3568},[3536,20798,14286],{"class":3542},[3536,20800,4390],{"class":3568},[3536,20802,20803],{"class":3538,"line":9051},[3536,20804,20805],{"class":3568},"            },\n",[3536,20807,20808,20811],{"class":3538,"line":9059},[3536,20809,20810],{"class":3568},"          ]",[3536,20812,4476],{"class":3561},[3536,20814,20815],{"class":3538,"line":9065},[3536,20816,15157],{"class":4309},[3536,20818,20819,20821,20823,20825,20827,20829,20831,20833,20835,20837,20839,20841,20844,20846,20848],{"class":3538,"line":9070},[3536,20820,8731],{"class":4309},[3536,20822,6704],{"class":3616},[3536,20824,8041],{"class":4315},[3536,20826,4319],{"class":3546},[3536,20828,4322],{"class":3561},[3536,20830,8165],{"class":3568},[3536,20832,8109],{"class":3542},[3536,20834,9494],{"class":3557},[3536,20836,8174],{"class":3568},[3536,20838,3574],{"class":3561},[3536,20840,4341],{"class":4309},[3536,20842,20843],{"class":3546},"Тема оформлення",[3536,20845,4347],{"class":4309},[3536,20847,6704],{"class":3616},[3536,20849,4352],{"class":4309},[3536,20851,20852,20854,20856,20858,20860,20862,20864,20866,20868,20870,20872,20874,20876],{"class":3538,"line":9077},[3536,20853,8731],{"class":4309},[3536,20855,6704],{"class":3616},[3536,20857,14692],{"class":4315},[3536,20859,4319],{"class":3546},[3536,20861,15020],{"class":3557},[3536,20863,12792],{"class":4315},[3536,20865,4319],{"class":3546},[3536,20867,4322],{"class":3561},[3536,20869,12082],{"class":3542},[3536,20871,3547],{"class":3568},[3536,20873,12621],{"class":3542},[3536,20875,3574],{"class":3561},[3536,20877,4352],{"class":4309},[3536,20879,20880],{"class":3538,"line":9096},[3536,20881,20882],{"class":3546},"            Ті самі чіпи, що були на головному екрані — винесені також сюди, щоб\n",[3536,20884,20885],{"class":3538,"line":9125},[3536,20886,20887],{"class":3546},"            налаштування жили на окремій вкладці.\n",[3536,20889,20890,20892,20894],{"class":3538,"line":9130},[3536,20891,9044],{"class":4309},[3536,20893,6704],{"class":3616},[3536,20895,4352],{"class":4309},[3536,20897,20898,20900,20902,20904,20906,20908,20910,20912,20914,20916,20918,20920,20922,20924,20926,20928,20930],{"class":3538,"line":9163},[3536,20899,8731],{"class":4309},[3536,20901,4993],{"class":3616},[3536,20903,8041],{"class":4315},[3536,20905,4319],{"class":3546},[3536,20907,4322],{"class":3561},[3536,20909,4894],{"class":3568},[3536,20911,8496],{"class":3542},[3536,20913,3547],{"class":3568},[3536,20915,15256],{"class":3542},[3536,20917,15259],{"class":3568},[3536,20919,10649],{"class":3542},[3536,20921,14219],{"class":3542},[3536,20923,3547],{"class":3568},[3536,20925,14286],{"class":3542},[3536,20927,15280],{"class":3568},[3536,20929,3574],{"class":3561},[3536,20931,4352],{"class":4309},[3536,20933,20934,20936,20938,20940,20942,20944,20946,20948,20950],{"class":3538,"line":9172},[3536,20935,17739],{"class":3561},[3536,20937,15292],{"class":3599},[3536,20939,3547],{"class":3568},[3536,20941,15297],{"class":3550},[3536,20943,7926],{"class":3568},[3536,20945,3517],{"class":3542},[3536,20947,7932],{"class":3568},[3536,20949,5042],{"class":3561},[3536,20951,4547],{"class":3568},[3536,20953,20954,20957,20959,20961,20963,20965,20967,20969,20971],{"class":3538,"line":9181},[3536,20955,20956],{"class":3561},"              const",[3536,20958,15316],{"class":3599},[3536,20960,15319],{"class":3546},[3536,20962,15322],{"class":3542},[3536,20964,12123],{"class":3546},[3536,20966,15327],{"class":3542},[3536,20968,3547],{"class":3568},[3536,20970,3571],{"class":3542},[3536,20972,4742],{"class":3568},[3536,20974,20975,20978],{"class":3538,"line":9186},[3536,20976,20977],{"class":4725},"              return",[3536,20979,4985],{"class":3568},[3536,20981,20982,20984],{"class":3538,"line":9191},[3536,20983,8799],{"class":4309},[3536,20985,8943],{"class":3616},[3536,20987,20988,20991,20993,20995,20997,20999,21001],{"class":3538,"line":9196},[3536,20989,20990],{"class":4315},"                  key",[3536,20992,4319],{"class":3546},[3536,20994,4322],{"class":3561},[3536,20996,3517],{"class":3542},[3536,20998,3547],{"class":3568},[3536,21000,3571],{"class":3542},[3536,21002,4476],{"class":3561},[3536,21004,21005,21008,21010,21012,21014,21016,21018,21020,21022,21024,21026,21028],{"class":3538,"line":9215},[3536,21006,21007],{"class":4315},"                  onPress",[3536,21009,4319],{"class":3546},[3536,21011,4322],{"class":3561},[3536,21013,5039],{"class":3568},[3536,21015,5042],{"class":3561},[3536,21017,15383],{"class":3550},[3536,21019,3554],{"class":3568},[3536,21021,3517],{"class":3542},[3536,21023,3547],{"class":3568},[3536,21025,3571],{"class":3542},[3536,21027,3835],{"class":3568},[3536,21029,4476],{"class":3561},[3536,21031,21032,21034,21036,21038],{"class":3538,"line":9237},[3536,21033,15601],{"class":4315},[3536,21035,4319],{"class":3546},[3536,21037,4322],{"class":3561},[3536,21039,14607],{"class":3568},[3536,21041,21042,21045,21047,21049],{"class":3538,"line":9245},[3536,21043,21044],{"class":3542},"                    styles",[3536,21046,3547],{"class":3568},[3536,21048,15418],{"class":3542},[3536,21050,4390],{"class":3568},[3536,21052,21053],{"class":3538,"line":9256},[3536,21054,21055],{"class":3568},"                    {\n",[3536,21057,21058,21061,21063,21065,21067,21069,21071,21073,21075,21077,21079],{"class":3538,"line":9267},[3536,21059,21060],{"class":3542},"                      backgroundColor:",[3536,21062,15316],{"class":3542},[3536,21064,12129],{"class":3546},[3536,21066,12168],{"class":3542},[3536,21068,3547],{"class":3568},[3536,21070,12202],{"class":3542},[3536,21072,12135],{"class":3546},[3536,21074,12168],{"class":3542},[3536,21076,3547],{"class":3568},[3536,21078,15451],{"class":3542},[3536,21080,4390],{"class":3568},[3536,21082,21083,21086,21088,21090,21092],{"class":3538,"line":9278},[3536,21084,21085],{"class":3542},"                      borderColor:",[3536,21087,12168],{"class":3542},[3536,21089,3547],{"class":3568},[3536,21091,12655],{"class":3542},[3536,21093,4390],{"class":3568},[3536,21095,21096],{"class":3538,"line":9289},[3536,21097,21098],{"class":3568},"                    },\n",[3536,21100,21101,21104],{"class":3538,"line":9300},[3536,21102,21103],{"class":3568},"                  ]",[3536,21105,4476],{"class":3561},[3536,21107,21108,21111,21113],{"class":3538,"line":9305},[3536,21109,21110],{"class":4315},"                  accessibilityRole",[3536,21112,4319],{"class":3546},[3536,21114,15492],{"class":3557},[3536,21116,21117,21120,21122,21124,21126,21128,21130,21132],{"class":3538,"line":9313},[3536,21118,21119],{"class":4315},"                  accessibilityState",[3536,21121,4319],{"class":3546},[3536,21123,4322],{"class":3561},[3536,21125,8165],{"class":3568},[3536,21127,15507],{"class":3542},[3536,21129,15316],{"class":3542},[3536,21131,8174],{"class":3568},[3536,21133,4476],{"class":3561},[3536,21135,21136,21139,21141,21143,21145,21147,21149,21151,21153,21155,21157],{"class":3538,"line":9322},[3536,21137,21138],{"class":4315},"                  accessibilityLabel",[3536,21140,4319],{"class":3546},[3536,21142,4322],{"class":3561},[3536,21144,15526],{"class":3557},[3536,21146,3562],{"class":3561},[3536,21148,3517],{"class":3542},[3536,21150,3547],{"class":3568},[3536,21152,13617],{"class":3542},[3536,21154,3574],{"class":3561},[3536,21156,3577],{"class":3557},[3536,21158,4476],{"class":3561},[3536,21160,21161],{"class":3538,"line":9333},[3536,21162,15620],{"class":4309},[3536,21164,21165,21168],{"class":3538,"line":9343},[3536,21166,21167],{"class":4309},"                  \u003C",[3536,21169,14737],{"class":3616},[3536,21171,21172,21175,21177],{"class":3538,"line":9352},[3536,21173,21174],{"class":4315},"                    variant",[3536,21176,4319],{"class":3546},[3536,21178,14748],{"class":3557},[3536,21180,21181,21184,21186,21188,21190,21192,21194,21196,21198,21200,21202,21204,21206],{"class":3538,"line":9362},[3536,21182,21183],{"class":4315},"                    color",[3536,21185,4319],{"class":3546},[3536,21187,4322],{"class":3561},[3536,21189,15576],{"class":3542},[3536,21191,12129],{"class":3546},[3536,21193,12168],{"class":3542},[3536,21195,3547],{"class":3568},[3536,21197,15585],{"class":3542},[3536,21199,12135],{"class":3546},[3536,21201,12168],{"class":3542},[3536,21203,3547],{"class":3568},[3536,21205,3993],{"class":3542},[3536,21207,4476],{"class":3561},[3536,21209,21210,21213,21215,21217,21219,21221,21223],{"class":3538,"line":9372},[3536,21211,21212],{"class":4315},"                    style",[3536,21214,4319],{"class":3546},[3536,21216,4322],{"class":3561},[3536,21218,8496],{"class":3542},[3536,21220,3547],{"class":3568},[3536,21222,15612],{"class":3542},[3536,21224,4476],{"class":3561},[3536,21226,21227],{"class":3538,"line":9377},[3536,21228,21229],{"class":4309},"                  >\n",[3536,21231,21232,21235,21237,21239,21241],{"class":3538,"line":9400},[3536,21233,21234],{"class":3561},"                    {",[3536,21236,3517],{"class":3542},[3536,21238,3547],{"class":3568},[3536,21240,13617],{"class":3542},[3536,21242,4476],{"class":3561},[3536,21244,21245,21248,21250],{"class":3538,"line":9408},[3536,21246,21247],{"class":4309},"                  \u003C\u002F",[3536,21249,6704],{"class":3616},[3536,21251,4352],{"class":4309},[3536,21253,21254,21256,21258],{"class":3538,"line":9419},[3536,21255,15640],{"class":4309},[3536,21257,8261],{"class":3616},[3536,21259,4352],{"class":4309},[3536,21261,21262],{"class":3538,"line":9429},[3536,21263,21264],{"class":3568},"              );\n",[3536,21266,21267,21270],{"class":3538,"line":9439},[3536,21268,21269],{"class":3568},"            })",[3536,21271,4476],{"class":3561},[3536,21273,21274,21276,21278],{"class":3538,"line":9450},[3536,21275,9044],{"class":4309},[3536,21277,4993],{"class":3616},[3536,21279,4352],{"class":4309},[3536,21281,21282,21284,21286],{"class":3538,"line":9461},[3536,21283,10208],{"class":4309},[3536,21285,4993],{"class":3616},[3536,21287,4352],{"class":4309},[3536,21289,21290],{"class":3538,"line":9471},[3536,21291,4748],{"emptyLinePlaceholder":4747},[3536,21293,21294,21296],{"class":3538,"line":9476},[3536,21295,8144],{"class":4309},[3536,21297,14595],{"class":3616},[3536,21299,21300,21302,21304,21306],{"class":3538,"line":9505},[3536,21301,15100],{"class":4315},[3536,21303,4319],{"class":3546},[3536,21305,4322],{"class":3561},[3536,21307,14607],{"class":3568},[3536,21309,21310,21312,21314,21316],{"class":3538,"line":9540},[3536,21311,20738],{"class":3542},[3536,21313,3547],{"class":3568},[3536,21315,8746],{"class":3542},[3536,21317,4390],{"class":3568},[3536,21319,21320],{"class":3538,"line":9560},[3536,21321,7174],{"class":3568},[3536,21323,21324,21326,21328,21330,21332],{"class":3538,"line":9568},[3536,21325,20753],{"class":3542},[3536,21327,12168],{"class":3542},[3536,21329,3547],{"class":3568},[3536,21331,15451],{"class":3542},[3536,21333,4390],{"class":3568},[3536,21335,21336,21338,21340,21342,21344],{"class":3538,"line":9578},[3536,21337,20766],{"class":3542},[3536,21339,12168],{"class":3542},[3536,21341,3547],{"class":3568},[3536,21343,12655],{"class":3542},[3536,21345,4390],{"class":3568},[3536,21347,21348,21350,21352,21354,21356],{"class":3538,"line":9588},[3536,21349,20779],{"class":3542},[3536,21351,14219],{"class":3542},[3536,21353,3547],{"class":3568},[3536,21355,14224],{"class":3542},[3536,21357,4390],{"class":3568},[3536,21359,21360,21362,21364,21366,21368],{"class":3538,"line":9597},[3536,21361,20792],{"class":3542},[3536,21363,14219],{"class":3542},[3536,21365,3547],{"class":3568},[3536,21367,14286],{"class":3542},[3536,21369,4390],{"class":3568},[3536,21371,21372],{"class":3538,"line":9606},[3536,21373,20805],{"class":3568},[3536,21375,21376,21378],{"class":3538,"line":9615},[3536,21377,20810],{"class":3568},[3536,21379,4476],{"class":3561},[3536,21381,21382],{"class":3538,"line":9626},[3536,21383,15157],{"class":4309},[3536,21385,21386,21388,21390,21392,21394,21396,21398,21400,21402,21404,21406,21408,21411,21413,21415],{"class":3538,"line":9631},[3536,21387,8731],{"class":4309},[3536,21389,6704],{"class":3616},[3536,21391,8041],{"class":4315},[3536,21393,4319],{"class":3546},[3536,21395,4322],{"class":3561},[3536,21397,8165],{"class":3568},[3536,21399,8109],{"class":3542},[3536,21401,9494],{"class":3557},[3536,21403,8174],{"class":3568},[3536,21405,3574],{"class":3561},[3536,21407,4341],{"class":4309},[3536,21409,21410],{"class":3546},"Навігація (Expo Router)",[3536,21412,4347],{"class":4309},[3536,21414,6704],{"class":3616},[3536,21416,4352],{"class":4309},[3536,21418,21419,21421,21423,21425,21427,21429,21431,21433,21435,21437,21439,21441,21443],{"class":3538,"line":9651},[3536,21420,8731],{"class":4309},[3536,21422,6704],{"class":3616},[3536,21424,14692],{"class":4315},[3536,21426,4319],{"class":3546},[3536,21428,15020],{"class":3557},[3536,21430,12792],{"class":4315},[3536,21432,4319],{"class":3546},[3536,21434,4322],{"class":3561},[3536,21436,12082],{"class":3542},[3536,21438,3547],{"class":3568},[3536,21440,12621],{"class":3542},[3536,21442,3574],{"class":3561},[3536,21444,4352],{"class":4309},[3536,21446,21447],{"class":3538,"line":9672},[3536,21448,21449],{"class":3546},"            Нижні вкладки — група маршрутів (tabs). «Нова поїздка» відкривається\n",[3536,21451,21452],{"class":3538,"line":9693},[3536,21453,21454],{"class":3546},"            поверх вкладок у Stack. Нижче — приклад компонента Link (як якір на\n",[3536,21456,21457],{"class":3538,"line":14653},[3536,21458,21459],{"class":3546},"            вебі).\n",[3536,21461,21462,21464,21466],{"class":3538,"line":14667},[3536,21463,9044],{"class":4309},[3536,21465,6704],{"class":3616},[3536,21467,4352],{"class":4309},[3536,21469,21470,21472,21474,21476,21478,21481,21483],{"class":3538,"line":14672},[3536,21471,8731],{"class":4309},[3536,21473,3754],{"class":3616},[3536,21475,4316],{"class":4315},[3536,21477,4319],{"class":3546},[3536,21479,21480],{"class":3557},"\"\u002Fcreate-trip\"",[3536,21482,8782],{"class":4315},[3536,21484,4352],{"class":4309},[3536,21486,21487,21489,21492],{"class":3538,"line":14680},[3536,21488,17739],{"class":3561},[3536,21490,21491],{"class":4573},"\u002F* presentation: modal задано в кореневому Stack *\u002F",[3536,21493,4476],{"class":3561},[3536,21495,21496],{"class":3538,"line":14685},[3536,21497,4748],{"emptyLinePlaceholder":4747},[3536,21499,21500,21502],{"class":3538,"line":14717},[3536,21501,8755],{"class":4309},[3536,21503,8943],{"class":3616},[3536,21505,21506,21508,21510,21512],{"class":3538,"line":14723},[3536,21507,8949],{"class":4315},[3536,21509,4319],{"class":3546},[3536,21511,4322],{"class":3561},[3536,21513,14607],{"class":3568},[3536,21515,21516,21519,21521,21524],{"class":3538,"line":14732},[3536,21517,21518],{"class":3542},"                styles",[3536,21520,3547],{"class":3568},[3536,21522,21523],{"class":3542},"linkBtn",[3536,21525,4390],{"class":3568},[3536,21527,21528],{"class":3538,"line":14740},[3536,21529,21530],{"class":3568},"                {\n",[3536,21532,21533,21536,21538,21540,21542],{"class":3538,"line":14751},[3536,21534,21535],{"class":3542},"                  backgroundColor:",[3536,21537,12168],{"class":3542},[3536,21539,3547],{"class":3568},[3536,21541,12202],{"class":3542},[3536,21543,4390],{"class":3568},[3536,21545,21546,21549,21551,21553,21555,21558,21560],{"class":3538,"line":14769},[3536,21547,21548],{"class":3542},"                  paddingVertical:",[3536,21550,14219],{"class":3542},[3536,21552,3547],{"class":3568},[3536,21554,14286],{"class":3542},[3536,21556,21557],{"class":3546}," +",[3536,21559,9573],{"class":4897},[3536,21561,4390],{"class":3568},[3536,21563,21564,21567,21569],{"class":3538,"line":14787},[3536,21565,21566],{"class":3542},"                  borderRadius:",[3536,21568,9357],{"class":4897},[3536,21570,4390],{"class":3568},[3536,21572,21573],{"class":3538,"line":14792},[3536,21574,21575],{"class":3568},"                },\n",[3536,21577,21578,21581],{"class":3538,"line":14798},[3536,21579,21580],{"class":3568},"              ]",[3536,21582,4476],{"class":3561},[3536,21584,21585],{"class":3538,"line":14807},[3536,21586,8996],{"class":4309},[3536,21588,21589,21591,21593,21595,21597,21599,21601,21603,21605,21607,21609,21611,21613,21615,21617,21619,21621,21623],{"class":3538,"line":14816},[3536,21590,8789],{"class":4309},[3536,21592,6704],{"class":3616},[3536,21594,12792],{"class":4315},[3536,21596,4319],{"class":3546},[3536,21598,4322],{"class":3561},[3536,21600,12082],{"class":3542},[3536,21602,3547],{"class":3568},[3536,21604,15585],{"class":3542},[3536,21606,3574],{"class":3561},[3536,21608,8041],{"class":4315},[3536,21610,4319],{"class":3546},[3536,21612,4322],{"class":3561},[3536,21614,8165],{"class":3568},[3536,21616,8109],{"class":3542},[3536,21618,9494],{"class":3557},[3536,21620,8174],{"class":3568},[3536,21622,3574],{"class":3561},[3536,21624,4352],{"class":4309},[3536,21626,21627],{"class":3538,"line":14821},[3536,21628,21629],{"class":3546},"                Відкрити форму (Link)\n",[3536,21631,21632,21634,21636],{"class":3538,"line":14826},[3536,21633,8921],{"class":4309},[3536,21635,6704],{"class":3616},[3536,21637,4352],{"class":4309},[3536,21639,21640,21642,21644],{"class":3538,"line":14833},[3536,21641,8931],{"class":4309},[3536,21643,8261],{"class":3616},[3536,21645,4352],{"class":4309},[3536,21647,21648,21650,21652],{"class":3538,"line":14857},[3536,21649,9044],{"class":4309},[3536,21651,3754],{"class":3616},[3536,21653,4352],{"class":4309},[3536,21655,21656,21658,21660],{"class":3538,"line":14864},[3536,21657,10208],{"class":4309},[3536,21659,4993],{"class":3616},[3536,21661,4352],{"class":4309},[3536,21663,21664],{"class":3538,"line":14875},[3536,21665,4748],{"emptyLinePlaceholder":4747},[3536,21667,21668,21670],{"class":3538,"line":14888},[3536,21669,8144],{"class":4309},[3536,21671,14595],{"class":3616},[3536,21673,21674,21676,21678,21680],{"class":3538,"line":14894},[3536,21675,15100],{"class":4315},[3536,21677,4319],{"class":3546},[3536,21679,4322],{"class":3561},[3536,21681,14607],{"class":3568},[3536,21683,21684,21686,21688,21690],{"class":3538,"line":14908},[3536,21685,20738],{"class":3542},[3536,21687,3547],{"class":3568},[3536,21689,8746],{"class":3542},[3536,21691,4390],{"class":3568},[3536,21693,21694],{"class":3538,"line":14922},[3536,21695,7174],{"class":3568},[3536,21697,21698,21700,21702,21704,21706],{"class":3538,"line":14936},[3536,21699,20753],{"class":3542},[3536,21701,12168],{"class":3542},[3536,21703,3547],{"class":3568},[3536,21705,15451],{"class":3542},[3536,21707,4390],{"class":3568},[3536,21709,21710,21712,21714,21716,21718],{"class":3538,"line":14951},[3536,21711,20766],{"class":3542},[3536,21713,12168],{"class":3542},[3536,21715,3547],{"class":3568},[3536,21717,12655],{"class":3542},[3536,21719,4390],{"class":3568},[3536,21721,21722,21724,21726,21728,21730],{"class":3538,"line":14965},[3536,21723,20779],{"class":3542},[3536,21725,14219],{"class":3542},[3536,21727,3547],{"class":3568},[3536,21729,14224],{"class":3542},[3536,21731,4390],{"class":3568},[3536,21733,21734,21736,21738,21740,21742],{"class":3538,"line":14971},[3536,21735,20792],{"class":3542},[3536,21737,14219],{"class":3542},[3536,21739,3547],{"class":3568},[3536,21741,14286],{"class":3542},[3536,21743,4390],{"class":3568},[3536,21745,21746],{"class":3538,"line":14979},[3536,21747,20805],{"class":3568},[3536,21749,21750,21752],{"class":3538,"line":14984},[3536,21751,20810],{"class":3568},[3536,21753,4476],{"class":3561},[3536,21755,21756],{"class":3538,"line":15009},[3536,21757,15157],{"class":4309},[3536,21759,21760,21762,21764,21766,21768,21770,21772,21774,21776,21778,21780,21782,21785,21787,21789],{"class":3538,"line":15045},[3536,21761,8731],{"class":4309},[3536,21763,6704],{"class":3616},[3536,21765,8041],{"class":4315},[3536,21767,4319],{"class":3546},[3536,21769,4322],{"class":3561},[3536,21771,8165],{"class":3568},[3536,21773,8109],{"class":3542},[3536,21775,9494],{"class":3557},[3536,21777,8174],{"class":3568},[3536,21779,3574],{"class":3561},[3536,21781,4341],{"class":4309},[3536,21783,21784],{"class":3546},"Deep link (scheme)",[3536,21786,4347],{"class":4309},[3536,21788,6704],{"class":3616},[3536,21790,4352],{"class":4309},[3536,21792,21793,21795,21797,21799,21801,21803,21805,21807,21809,21811,21813,21815,21817],{"class":3538,"line":15071},[3536,21794,8731],{"class":4309},[3536,21796,6704],{"class":3616},[3536,21798,14692],{"class":4315},[3536,21800,4319],{"class":3546},[3536,21802,15020],{"class":3557},[3536,21804,12792],{"class":4315},[3536,21806,4319],{"class":3546},[3536,21808,4322],{"class":3561},[3536,21810,12082],{"class":3542},[3536,21812,3547],{"class":3568},[3536,21814,12621],{"class":3542},[3536,21816,3574],{"class":3561},[3536,21818,4352],{"class":4309},[3536,21820,21821],{"class":3538,"line":15080},[3536,21822,21823],{"class":3546},"            У app.json: scheme «nomad». Приклад createURL для поїздки id=1\n",[3536,21825,21826],{"class":3538,"line":15087},[3536,21827,21828],{"class":3546},"            (залежить від Expo Go \u002F standalone):\n",[3536,21830,21831,21833,21835],{"class":3538,"line":15097},[3536,21832,9044],{"class":4309},[3536,21834,6704],{"class":3616},[3536,21836,4352],{"class":4309},[3536,21838,21839,21841,21843,21845,21847,21849,21851,21853,21855,21857,21859,21861,21863],{"class":3538,"line":15109},[3536,21840,8731],{"class":4309},[3536,21842,6704],{"class":3616},[3536,21844,14692],{"class":4315},[3536,21846,4319],{"class":3546},[3536,21848,15020],{"class":3557},[3536,21850,12792],{"class":4315},[3536,21852,4319],{"class":3546},[3536,21854,4322],{"class":3561},[3536,21856,12082],{"class":3542},[3536,21858,3547],{"class":3568},[3536,21860,12202],{"class":3542},[3536,21862,3574],{"class":3561},[3536,21864,4352],{"class":4309},[3536,21866,21867,21869,21871,21873,21875,21877,21879,21881],{"class":3538,"line":15123},[3536,21868,17739],{"class":3561},[3536,21870,5876],{"class":3542},[3536,21872,3547],{"class":3568},[3536,21874,5881],{"class":3550},[3536,21876,3554],{"class":3568},[3536,21878,6102],{"class":3557},[3536,21880,3835],{"class":3568},[3536,21882,4476],{"class":3561},[3536,21884,21885,21887,21889],{"class":3538,"line":15137},[3536,21886,9044],{"class":4309},[3536,21888,6704],{"class":3616},[3536,21890,4352],{"class":4309},[3536,21892,21893,21895,21897,21899,21901,21903,21905,21907,21909,21911,21913,21915,21917],{"class":3538,"line":15147},[3536,21894,8731],{"class":4309},[3536,21896,6704],{"class":3616},[3536,21898,14692],{"class":4315},[3536,21900,4319],{"class":3546},[3536,21902,15020],{"class":3557},[3536,21904,12792],{"class":4315},[3536,21906,4319],{"class":3546},[3536,21908,4322],{"class":3561},[3536,21910,12082],{"class":3542},[3536,21912,3547],{"class":3568},[3536,21914,12621],{"class":3542},[3536,21916,3574],{"class":3561},[3536,21918,4352],{"class":4309},[3536,21920,21921],{"class":3538,"line":15154},[3536,21922,21923],{"class":3546},"            Тест на білді: nomad:\u002F\u002Ftrips\u002F1 (симулятор \u002F adb). Деталі — у\n",[3536,21925,21926],{"class":3538,"line":15160},[3536,21927,21928],{"class":3546},"            статті про deep linking.\n",[3536,21930,21931,21933,21935],{"class":3538,"line":15177},[3536,21932,9044],{"class":4309},[3536,21934,6704],{"class":3616},[3536,21936,4352],{"class":4309},[3536,21938,21939,21941,21943],{"class":3538,"line":15212},[3536,21940,10208],{"class":4309},[3536,21942,4993],{"class":3616},[3536,21944,4352],{"class":4309},[3536,21946,21947],{"class":3538,"line":15223},[3536,21948,4748],{"emptyLinePlaceholder":4747},[3536,21950,21951,21953,21955,21957,21959,21961,21963,21965,21967,21969,21971,21973,21975],{"class":3538,"line":15232},[3536,21952,8144],{"class":4309},[3536,21954,6704],{"class":3616},[3536,21956,14692],{"class":4315},[3536,21958,4319],{"class":3546},[3536,21960,15020],{"class":3557},[3536,21962,12792],{"class":4315},[3536,21964,4319],{"class":3546},[3536,21966,4322],{"class":3561},[3536,21968,12082],{"class":3542},[3536,21970,3547],{"class":3568},[3536,21972,12621],{"class":3542},[3536,21974,3574],{"class":3561},[3536,21976,4352],{"class":4309},[3536,21978,21979],{"class":3538,"line":15237},[3536,21980,21981],{"class":3546},"          Репозиторій: github.com\u002Farakviel\u002Fnomad\n",[3536,21983,21984,21986,21988],{"class":3538,"line":15287},[3536,21985,10208],{"class":4309},[3536,21987,6704],{"class":3616},[3536,21989,4352],{"class":4309},[3536,21991,21992,21994,21996],{"class":3538,"line":15310},[3536,21993,8215],{"class":4309},[3536,21995,18574],{"class":3616},[3536,21997,4352],{"class":4309},[3536,21999,22000,22002,22004],{"class":3538,"line":15336},[3536,22001,5063],{"class":4309},[3536,22003,13581],{"class":3616},[3536,22005,4352],{"class":4309},[3536,22007,22008],{"class":3538,"line":15344},[3536,22009,5072],{"class":3546},[3536,22011,22012],{"class":3538,"line":15351},[3536,22013,4476],{"class":3546},[3536,22015,22016],{"class":3538,"line":15369},[3536,22017,4748],{"emptyLinePlaceholder":4747},[3536,22019,22020,22022,22024,22026,22028,22030,22032],{"class":3538,"line":15398},[3536,22021,3593],{"class":3561},[3536,22023,9201],{"class":3599},[3536,22025,4874],{"class":3546},[3536,22027,8266],{"class":3542},[3536,22029,3547],{"class":3546},[3536,22031,9210],{"class":3550},[3536,22033,4378],{"class":3546},[3536,22035,22036,22038],{"class":3538,"line":15410},[3536,22037,16262],{"class":3542},[3536,22039,4547],{"class":3546},[3536,22041,22042,22044,22046],{"class":3538,"line":15423},[3536,22043,9248],{"class":3542},[3536,22045,14259],{"class":4897},[3536,22047,4390],{"class":3546},[3536,22049,22050],{"class":3538,"line":15429},[3536,22051,4579],{"class":3546},[3536,22053,22054,22056],{"class":3538,"line":15456},[3536,22055,9403],{"class":3542},[3536,22057,4547],{"class":3546},[3536,22059,22060,22062,22064],{"class":3538,"line":15470},[3536,22061,9432],{"class":3542},[3536,22063,9226],{"class":4897},[3536,22065,4390],{"class":3546},[3536,22067,22068,22070,22072],{"class":3538,"line":15476},[3536,22069,9422],{"class":3542},[3536,22071,9357],{"class":4897},[3536,22073,4390],{"class":3546},[3536,22075,22076],{"class":3538,"line":15484},[3536,22077,4579],{"class":3546},[3536,22079,22080,22082],{"class":3538,"line":15495},[3536,22081,16307],{"class":3542},[3536,22083,4547],{"class":3546},[3536,22085,22086,22088,22090],{"class":3538,"line":15516},[3536,22087,16315],{"class":3542},[3536,22089,16318],{"class":3557},[3536,22091,4390],{"class":3546},[3536,22093,22094,22096,22098],{"class":3538,"line":15543},[3536,22095,16326],{"class":3542},[3536,22097,16329],{"class":3557},[3536,22099,4390],{"class":3546},[3536,22101,22102],{"class":3538,"line":15549},[3536,22103,4579],{"class":3546},[3536,22105,22106,22108],{"class":3538,"line":15556},[3536,22107,16342],{"class":3542},[3536,22109,4547],{"class":3546},[3536,22111,22112,22114,22116],{"class":3538,"line":15566},[3536,22113,9248],{"class":3542},[3536,22115,9357],{"class":4897},[3536,22117,4390],{"class":3546},[3536,22119,22120,22122,22124],{"class":3538,"line":15598},[3536,22121,9581],{"class":3542},[3536,22123,9262],{"class":4897},[3536,22125,4390],{"class":3546},[3536,22127,22128,22130,22132],{"class":3538,"line":15617},[3536,22129,9422],{"class":3542},[3536,22131,9262],{"class":4897},[3536,22133,4390],{"class":3546},[3536,22135,22136,22138,22140],{"class":3538,"line":15623},[3536,22137,9432],{"class":3542},[3536,22139,9226],{"class":4897},[3536,22141,4390],{"class":3546},[3536,22143,22144],{"class":3538,"line":15637},[3536,22145,4579],{"class":3546},[3536,22147,22148,22150],{"class":3538,"line":15647},[3536,22149,16391],{"class":3542},[3536,22151,4547],{"class":3546},[3536,22153,22154,22156,22158],{"class":3538,"line":15656},[3536,22155,9365],{"class":3542},[3536,22157,8112],{"class":3557},[3536,22159,4390],{"class":3546},[3536,22161,22162],{"class":3538,"line":15662},[3536,22163,4579],{"class":3546},[3536,22165,22166,22169],{"class":3538,"line":15670},[3536,22167,22168],{"class":3542},"  linkBtn:",[3536,22170,4547],{"class":3546},[3536,22172,22173,22175,22177],{"class":3538,"line":15679},[3536,22174,9618],{"class":3542},[3536,22176,9621],{"class":3557},[3536,22178,4390],{"class":3546},[3536,22180,22181],{"class":3538,"line":15688},[3536,22182,4579],{"class":3546},[3536,22184,22185],{"class":3538,"line":15693},[3536,22186,4417],{"class":3546},[3526,22188,22191],{"className":3528,"code":22189,"filename":22190,"language":3530,"meta":3531,"style":3531},"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",[3533,22192,22193,22209,22225,22229,22250,22266,22270,22274,22279,22284,22288,22301,22313,22328,22332,22338,22360,22367,22386,22397,22408,22414,22437,22441,22449,22453,22457,22461,22477,22483,22491,22495],{"__ignoreMap":3531},[3536,22194,22195,22197,22199,22201,22203,22205,22207],{"class":3538,"line":3539},[3536,22196,4726],{"class":4725},[3536,22198,3596],{"class":3546},[3536,22200,8266],{"class":3542},[3536,22202,4733],{"class":3546},[3536,22204,4736],{"class":4725},[3536,22206,8281],{"class":3557},[3536,22208,4742],{"class":3546},[3536,22210,22211,22213,22215,22217,22219,22221,22223],{"class":3538,"line":4381},[3536,22212,4726],{"class":4725},[3536,22214,3596],{"class":3546},[3536,22216,8296],{"class":3542},[3536,22218,4733],{"class":3546},[3536,22220,4736],{"class":4725},[3536,22222,4739],{"class":3557},[3536,22224,4742],{"class":3546},[3536,22226,22227],{"class":3538,"line":4393},[3536,22228,4748],{"emptyLinePlaceholder":4747},[3536,22230,22231,22233,22235,22238,22240,22242,22244,22246,22248],{"class":3538,"line":4414},[3536,22232,4726],{"class":4725},[3536,22234,3596],{"class":3546},[3536,22236,22237],{"class":3542},"CreateTripForm",[3536,22239,3755],{"class":3546},[3536,22241,13728],{"class":3542},[3536,22243,4733],{"class":3546},[3536,22245,4736],{"class":4725},[3536,22247,11970],{"class":3557},[3536,22249,4742],{"class":3546},[3536,22251,22252,22254,22256,22258,22260,22262,22264],{"class":3538,"line":4470},[3536,22253,4726],{"class":4725},[3536,22255,3596],{"class":3546},[3536,22257,13581],{"class":3542},[3536,22259,4733],{"class":3546},[3536,22261,4736],{"class":4725},[3536,22263,13588],{"class":3557},[3536,22265,4742],{"class":3546},[3536,22267,22268],{"class":3538,"line":4479},[3536,22269,4748],{"emptyLinePlaceholder":4747},[3536,22271,22272],{"class":3538,"line":4484},[3536,22273,12004],{"class":4573},[3536,22275,22276],{"class":3538,"line":4490},[3536,22277,22278],{"class":4573}," * Екран створення поїздки — Stack-екран поза Tabs.\n",[3536,22280,22281],{"class":3538,"line":7163},[3536,22282,22283],{"class":4573}," * Заголовок і системна кнопка «назад» задаються в app\u002F_layout.tsx (Stack.Screen options).\n",[3536,22285,22286],{"class":3538,"line":7171},[3536,22287,12034],{"class":4573},[3536,22289,22290,22292,22294,22296,22299],{"class":3538,"line":7177},[3536,22291,4753],{"class":4725},[3536,22293,4756],{"class":4725},[3536,22295,4759],{"class":3561},[3536,22297,22298],{"class":3550}," CreateTripScreen",[3536,22300,4765],{"class":3546},[3536,22302,22303,22305,22307,22309,22311],{"class":3538,"line":7190},[3536,22304,4770],{"class":3561},[3536,22306,5045],{"class":3599},[3536,22308,4874],{"class":3546},[3536,22310,8296],{"class":3550},[3536,22312,7911],{"class":3546},[3536,22314,22315,22317,22319,22322,22324,22326],{"class":3538,"line":7203},[3536,22316,4770],{"class":3561},[3536,22318,3596],{"class":3546},[3536,22320,22321],{"class":3599},"addTrip",[3536,22323,3602],{"class":3546},[3536,22325,13728],{"class":3550},[3536,22327,7911],{"class":3546},[3536,22329,22330],{"class":3538,"line":7214},[3536,22331,4748],{"emptyLinePlaceholder":4747},[3536,22333,22334,22336],{"class":3538,"line":7220},[3536,22335,4982],{"class":4725},[3536,22337,4985],{"class":3546},[3536,22339,22340,22342,22344,22346,22348,22350,22352,22354,22356,22358],{"class":3538,"line":7226},[3536,22341,4990],{"class":4309},[3536,22343,13581],{"class":3616},[3536,22345,8041],{"class":4315},[3536,22347,4319],{"class":3546},[3536,22349,4322],{"class":3561},[3536,22351,8496],{"class":3542},[3536,22353,3547],{"class":3568},[3536,22355,14850],{"class":3542},[3536,22357,3574],{"class":3561},[3536,22359,4352],{"class":4309},[3536,22361,22362,22364],{"class":3538,"line":7244},[3536,22363,5000],{"class":4309},[3536,22365,22366],{"class":3616},"CreateTripForm\n",[3536,22368,22369,22372,22374,22376,22378,22380,22382,22384],{"class":3538,"line":7250},[3536,22370,22371],{"class":4315},"        onSubmitSuccess",[3536,22373,4319],{"class":3546},[3536,22375,4322],{"class":3561},[3536,22377,3554],{"class":3568},[3536,22379,3565],{"class":3542},[3536,22381,7932],{"class":3568},[3536,22383,5042],{"class":3561},[3536,22385,4547],{"class":3568},[3536,22387,22388,22391,22393,22395],{"class":3538,"line":7256},[3536,22389,22390],{"class":3550},"          addTrip",[3536,22392,3554],{"class":3568},[3536,22394,3565],{"class":3542},[3536,22396,3580],{"class":3568},[3536,22398,22399,22402,22404,22406],{"class":3538,"line":7261},[3536,22400,22401],{"class":3542},"          router",[3536,22403,3547],{"class":3568},[3536,22405,5050],{"class":3550},[3536,22407,7911],{"class":3568},[3536,22409,22410,22412],{"class":3538,"line":7266},[3536,22411,8132],{"class":3568},[3536,22413,4476],{"class":3561},[3536,22415,22416,22419,22421,22423,22425,22427,22429,22431,22433,22435],{"class":3538,"line":7803},[3536,22417,22418],{"class":4315},"        onCancel",[3536,22420,4319],{"class":3546},[3536,22422,4322],{"class":3561},[3536,22424,5039],{"class":3568},[3536,22426,5042],{"class":3561},[3536,22428,5045],{"class":3542},[3536,22430,3547],{"class":3568},[3536,22432,5050],{"class":3550},[3536,22434,5053],{"class":3568},[3536,22436,4476],{"class":3561},[3536,22438,22439],{"class":3538,"line":7813},[3536,22440,9062],{"class":4309},[3536,22442,22443,22445,22447],{"class":3538,"line":7823},[3536,22444,5063],{"class":4309},[3536,22446,13581],{"class":3616},[3536,22448,4352],{"class":4309},[3536,22450,22451],{"class":3538,"line":7833},[3536,22452,5072],{"class":3546},[3536,22454,22455],{"class":3538,"line":7843},[3536,22456,4476],{"class":3546},[3536,22458,22459],{"class":3538,"line":7848},[3536,22460,4748],{"emptyLinePlaceholder":4747},[3536,22462,22463,22465,22467,22469,22471,22473,22475],{"class":3538,"line":7854},[3536,22464,3593],{"class":3561},[3536,22466,9201],{"class":3599},[3536,22468,4874],{"class":3546},[3536,22470,8266],{"class":3542},[3536,22472,3547],{"class":3546},[3536,22474,9210],{"class":3550},[3536,22476,4378],{"class":3546},[3536,22478,22479,22481],{"class":3538,"line":7859},[3536,22480,16262],{"class":3542},[3536,22482,4547],{"class":3546},[3536,22484,22485,22487,22489],{"class":3538,"line":7888},[3536,22486,9248],{"class":3542},[3536,22488,14259],{"class":4897},[3536,22490,4390],{"class":3546},[3536,22492,22493],{"class":3538,"line":7914},[3536,22494,4579],{"class":3546},[3536,22496,22497],{"class":3538,"line":7952},[3536,22498,4417],{"class":3546},[3526,22500,22503],{"className":7615,"code":22501,"filename":22502,"language":7617,"meta":3531,"style":3531},"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",[3533,22504,22505,22523,22540,22557,22585,22602,22619,22636,22653,22671,22689,22710,22716,22723,22732,22743],{"__ignoreMap":3531},[3536,22506,22507,22509,22511,22514,22516,22518,22521],{"class":3538,"line":3539},[3536,22508,4753],{"class":4725},[3536,22510,3596],{"class":3546},[3536,22512,22513],{"class":3542},"mockTrips",[3536,22515,4733],{"class":3546},[3536,22517,4736],{"class":4725},[3536,22519,22520],{"class":3557}," '.\u002Fmodel\u002FmockTrips'",[3536,22522,4742],{"class":3546},[3536,22524,22525,22527,22529,22531,22533,22535,22538],{"class":3538,"line":4381},[3536,22526,4753],{"class":4725},[3536,22528,3596],{"class":3546},[3536,22530,13789],{"class":3542},[3536,22532,4733],{"class":3546},[3536,22534,4736],{"class":4725},[3536,22536,22537],{"class":3557}," '.\u002Fmodel\u002FmockPlaces'",[3536,22539,4742],{"class":3546},[3536,22541,22542,22544,22546,22548,22550,22552,22555],{"class":3538,"line":4393},[3536,22543,4753],{"class":4725},[3536,22545,3596],{"class":3546},[3536,22547,16891],{"class":3542},[3536,22549,4733],{"class":3546},[3536,22551,4736],{"class":4725},[3536,22553,22554],{"class":3557}," '.\u002Fmodel\u002FplacesHelpers'",[3536,22556,4742],{"class":3546},[3536,22558,22559,22561,22563,22565,22567,22569,22571,22573,22576,22578,22580,22583],{"class":3538,"line":4414},[3536,22560,4753],{"class":4725},[3536,22562,7626],{"class":4725},[3536,22564,3596],{"class":3546},[3536,22566,4658],{"class":3542},[3536,22568,3755],{"class":3546},[3536,22570,13783],{"class":3542},[3536,22572,3755],{"class":3546},[3536,22574,22575],{"class":3542},"TripRegion",[3536,22577,4733],{"class":3546},[3536,22579,4736],{"class":4725},[3536,22581,22582],{"class":3557}," '.\u002Fmodel\u002Ftypes'",[3536,22584,4742],{"class":3546},[3536,22586,22587,22589,22591,22594,22596,22598,22600],{"class":3538,"line":4470},[3536,22588,4753],{"class":4725},[3536,22590,3596],{"class":3546},[3536,22592,22593],{"class":3542},"TRIP_REGIONS",[3536,22595,4733],{"class":3546},[3536,22597,4736],{"class":4725},[3536,22599,22582],{"class":3557},[3536,22601,4742],{"class":3546},[3536,22603,22604,22606,22608,22610,22612,22614,22617],{"class":3538,"line":4479},[3536,22605,4753],{"class":4725},[3536,22607,3596],{"class":3546},[3536,22609,14110],{"class":3542},[3536,22611,4733],{"class":3546},[3536,22613,4736],{"class":4725},[3536,22615,22616],{"class":3557}," '.\u002Fui\u002FTripCard'",[3536,22618,4742],{"class":3546},[3536,22620,22621,22623,22625,22627,22629,22631,22634],{"class":3538,"line":4484},[3536,22622,4753],{"class":4725},[3536,22624,3596],{"class":3546},[3536,22626,14400],{"class":3542},[3536,22628,4733],{"class":3546},[3536,22630,4736],{"class":4725},[3536,22632,22633],{"class":3557}," '.\u002Fui\u002FPlaceChip'",[3536,22635,4742],{"class":3546},[3536,22637,22638,22640,22642,22644,22646,22648,22651],{"class":3538,"line":4490},[3536,22639,4753],{"class":4725},[3536,22641,3596],{"class":3546},[3536,22643,22237],{"class":3542},[3536,22645,4733],{"class":3546},[3536,22647,4736],{"class":4725},[3536,22649,22650],{"class":3557}," '.\u002Fui\u002FCreateTripForm'",[3536,22652,4742],{"class":3546},[3536,22654,22655,22657,22659,22662,22664,22666,22669],{"class":3538,"line":7163},[3536,22656,4753],{"class":4725},[3536,22658,3596],{"class":3546},[3536,22660,22661],{"class":3542},"DateField",[3536,22663,4733],{"class":3546},[3536,22665,4736],{"class":4725},[3536,22667,22668],{"class":3557}," '.\u002Fui\u002FDateField'",[3536,22670,4742],{"class":3546},[3536,22672,22673,22675,22677,22680,22682,22684,22687],{"class":3538,"line":7171},[3536,22674,4753],{"class":4725},[3536,22676,3596],{"class":3546},[3536,22678,22679],{"class":3542},"FormRow",[3536,22681,4733],{"class":3546},[3536,22683,4736],{"class":4725},[3536,22685,22686],{"class":3557}," '.\u002Fui\u002FFormRow'",[3536,22688,4742],{"class":3546},[3536,22690,22691,22693,22695,22697,22699,22701,22703,22705,22708],{"class":3538,"line":7177},[3536,22692,4753],{"class":4725},[3536,22694,3596],{"class":3546},[3536,22696,4679],{"class":3542},[3536,22698,3755],{"class":3546},[3536,22700,13728],{"class":3542},[3536,22702,4733],{"class":3546},[3536,22704,4736],{"class":4725},[3536,22706,22707],{"class":3557}," '.\u002Fmodel\u002FTripsProvider'",[3536,22709,4742],{"class":3546},[3536,22711,22712,22714],{"class":3538,"line":7190},[3536,22713,4753],{"class":4725},[3536,22715,4547],{"class":3546},[3536,22717,22718,22721],{"class":3538,"line":7203},[3536,22719,22720],{"class":3542},"  createTripSchema",[3536,22722,4390],{"class":3546},[3536,22724,22725,22727,22730],{"class":3538,"line":7214},[3536,22726,13516],{"class":4725},[3536,22728,22729],{"class":3542}," CreateTripFormValues",[3536,22731,4390],{"class":3546},[3536,22733,22734,22736,22738,22741],{"class":3538,"line":7220},[3536,22735,13433],{"class":3546},[3536,22737,4736],{"class":4725},[3536,22739,22740],{"class":3557}," '.\u002Fmodel\u002FcreateTripSchema'",[3536,22742,4742],{"class":3546},[3536,22744,22745,22747,22749,22752,22754,22756,22759],{"class":3538,"line":7226},[3536,22746,4753],{"class":4725},[3536,22748,3596],{"class":3546},[3536,22750,22751],{"class":3542},"formatTripDateLabel",[3536,22753,4733],{"class":3546},[3536,22755,4736],{"class":4725},[3536,22757,22758],{"class":3557}," '.\u002Fmodel\u002FformatTripDates'",[3536,22760,4742],{"class":3546},[3526,22762,22765],{"className":7615,"code":22763,"filename":22764,"language":7617,"meta":3531,"style":3531},"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",[3533,22766,22767,22777,22788,22798,22809,22819,22830,22835,22846,22851,22864,22869,22881,22886,22897,22901,22905,22915,22925,22936,22947,22958,22969,22973,22977,22982,22994,23001,23008,23015,23022,23029,23036,23048,23052],{"__ignoreMap":3531},[3536,22768,22769,22771,22773,22775],{"class":3538,"line":3539},[3536,22770,4753],{"class":4725},[3536,22772,7626],{"class":3561},[3536,22774,13528],{"class":3616},[3536,22776,7632],{"class":3546},[3536,22778,22779,22782,22784,22786],{"class":3538,"line":4381},[3536,22780,22781],{"class":3542},"  id",[3536,22783,3613],{"class":3546},[3536,22785,3617],{"class":3616},[3536,22787,4742],{"class":3546},[3536,22789,22790,22792,22794,22796],{"class":3538,"line":4393},[3536,22791,7648],{"class":3542},[3536,22793,3613],{"class":3546},[3536,22795,3617],{"class":3616},[3536,22797,4742],{"class":3546},[3536,22799,22800,22803,22805,22807],{"class":3538,"line":4414},[3536,22801,22802],{"class":3542},"  dateLabel",[3536,22804,3613],{"class":3546},[3536,22806,3617],{"class":3616},[3536,22808,4742],{"class":3546},[3536,22810,22811,22813,22815,22817],{"class":3538,"line":4470},[3536,22812,7659],{"class":3542},[3536,22814,3613],{"class":3546},[3536,22816,3617],{"class":3616},[3536,22818,4742],{"class":3546},[3536,22820,22821,22824,22826,22828],{"class":3538,"line":4479},[3536,22822,22823],{"class":3542},"  coverUri",[3536,22825,3613],{"class":3546},[3536,22827,3617],{"class":3616},[3536,22829,4742],{"class":3546},[3536,22831,22832],{"class":3538,"line":4484},[3536,22833,22834],{"class":4573},"  \u002F** Регіон \u002F макрозона (з Picker у формі створення). *\u002F\n",[3536,22836,22837,22840,22842,22844],{"class":3538,"line":4490},[3536,22838,22839],{"class":3542},"  region",[3536,22841,3613],{"class":3546},[3536,22843,3617],{"class":3616},[3536,22845,4742],{"class":3546},[3536,22847,22848],{"class":3538,"line":7163},[3536,22849,22850],{"class":4573},"  \u002F** Приватна поїздка (Switch) — навчальна мітка на картці. *\u002F\n",[3536,22852,22853,22856,22859,22862],{"class":3538,"line":7171},[3536,22854,22855],{"class":3542},"  isPrivate",[3536,22857,22858],{"class":3546},"?: ",[3536,22860,22861],{"class":3616},"boolean",[3536,22863,4742],{"class":3546},[3536,22865,22866],{"class":3538,"line":7177},[3536,22867,22868],{"class":4573},"  \u002F** Скільки днів плануємо (Slider 1–14). *\u002F\n",[3536,22870,22871,22874,22876,22879],{"class":3538,"line":7190},[3536,22872,22873],{"class":3542},"  plannedDays",[3536,22875,22858],{"class":3546},[3536,22877,22878],{"class":3616},"number",[3536,22880,4742],{"class":3546},[3536,22882,22883],{"class":3538,"line":7203},[3536,22884,22885],{"class":4573},"  \u002F** Є попередній план маршруту (Checkbox). *\u002F\n",[3536,22887,22888,22891,22893,22895],{"class":3538,"line":7214},[3536,22889,22890],{"class":3542},"  hasItinerary",[3536,22892,22858],{"class":3546},[3536,22894,22861],{"class":3616},[3536,22896,4742],{"class":3546},[3536,22898,22899],{"class":3538,"line":7220},[3536,22900,7681],{"class":3546},[3536,22902,22903],{"class":3538,"line":7226},[3536,22904,4748],{"emptyLinePlaceholder":4747},[3536,22906,22907,22909,22911,22913],{"class":3538,"line":7244},[3536,22908,4753],{"class":4725},[3536,22910,7626],{"class":3561},[3536,22912,13519],{"class":3616},[3536,22914,7632],{"class":3546},[3536,22916,22917,22919,22921,22923],{"class":3538,"line":7250},[3536,22918,22781],{"class":3542},[3536,22920,3613],{"class":3546},[3536,22922,3617],{"class":3616},[3536,22924,4742],{"class":3546},[3536,22926,22927,22930,22932,22934],{"class":3538,"line":7256},[3536,22928,22929],{"class":3542},"  tripId",[3536,22931,3613],{"class":3546},[3536,22933,3617],{"class":3616},[3536,22935,4742],{"class":3546},[3536,22937,22938,22941,22943,22945],{"class":3538,"line":7261},[3536,22939,22940],{"class":3542},"  name",[3536,22942,3613],{"class":3546},[3536,22944,3617],{"class":3616},[3536,22946,4742],{"class":3546},[3536,22948,22949,22952,22954,22956],{"class":3538,"line":7266},[3536,22950,22951],{"class":3542},"  city",[3536,22953,3613],{"class":3546},[3536,22955,3617],{"class":3616},[3536,22957,4742],{"class":3546},[3536,22959,22960,22963,22965,22967],{"class":3538,"line":7803},[3536,22961,22962],{"class":3542},"  note",[3536,22964,3613],{"class":3546},[3536,22966,3617],{"class":3616},[3536,22968,4742],{"class":3546},[3536,22970,22971],{"class":3538,"line":7813},[3536,22972,7681],{"class":3546},[3536,22974,22975],{"class":3538,"line":7823},[3536,22976,4748],{"emptyLinePlaceholder":4747},[3536,22978,22979],{"class":3538,"line":7833},[3536,22980,22981],{"class":4573},"\u002F** Варіанти регіону для Picker — ті самі рядки, що в mock-стрічці. *\u002F\n",[3536,22983,22984,22986,22988,22991],{"class":3538,"line":7843},[3536,22985,4753],{"class":4725},[3536,22987,7692],{"class":3561},[3536,22989,22990],{"class":3599}," TRIP_REGIONS",[3536,22992,22993],{"class":3546}," = [\n",[3536,22995,22996,22999],{"class":3538,"line":7848},[3536,22997,22998],{"class":3557},"  'Карпати'",[3536,23000,4390],{"class":3546},[3536,23002,23003,23006],{"class":3538,"line":7854},[3536,23004,23005],{"class":3557},"  'Захід'",[3536,23007,4390],{"class":3546},[3536,23009,23010,23013],{"class":3538,"line":7859},[3536,23011,23012],{"class":3557},"  'Південь'",[3536,23014,4390],{"class":3546},[3536,23016,23017,23020],{"class":3538,"line":7888},[3536,23018,23019],{"class":3557},"  'Центр'",[3536,23021,4390],{"class":3546},[3536,23023,23024,23027],{"class":3538,"line":7914},[3536,23025,23026],{"class":3557},"  'Схід'",[3536,23028,4390],{"class":3546},[3536,23030,23031,23034],{"class":3538,"line":7952},[3536,23032,23033],{"class":3557},"  'Інше'",[3536,23035,4390],{"class":3546},[3536,23037,23038,23041,23044,23046],{"class":3538,"line":8796},[3536,23039,23040],{"class":3546},"] ",[3536,23042,23043],{"class":4725},"as",[3536,23045,7692],{"class":3561},[3536,23047,4742],{"class":3546},[3536,23049,23050],{"class":3538,"line":8838},[3536,23051,4748],{"emptyLinePlaceholder":4747},[3536,23053,23054,23056,23058,23061,23064,23067,23069,23072,23074],{"class":3538,"line":8877},[3536,23055,4753],{"class":4725},[3536,23057,7626],{"class":3561},[3536,23059,23060],{"class":3616}," TripRegion",[3536,23062,23063],{"class":3546}," = (",[3536,23065,23066],{"class":3561},"typeof",[3536,23068,22990],{"class":3599},[3536,23070,23071],{"class":3546},")[",[3536,23073,22878],{"class":3616},[3536,23075,7851],{"class":3546},[3526,23077,23080],{"className":7615,"code":23078,"filename":23079,"language":7617,"meta":3531,"style":3531},"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",[3533,23081,23082,23100,23104,23121,23125,23129,23134,23139,23143,23148,23153,23158,23163,23168,23173,23177,23191,23201,23208,23218,23226,23244,23264,23283,23293,23297,23303,23311,23319,23337,23355,23377,23397,23402,23416,23421,23428,23436,23453,23471,23476,23489,23494,23499,23504,23509,23527,23536,23540,23545,23590,23600,23612,23617,23621],{"__ignoreMap":3531},[3536,23083,23084,23086,23088,23091,23093,23095,23098],{"class":3538,"line":3539},[3536,23085,4726],{"class":4725},[3536,23087,3596],{"class":3546},[3536,23089,23090],{"class":3542},"z",[3536,23092,4733],{"class":3546},[3536,23094,4736],{"class":4725},[3536,23096,23097],{"class":3557}," 'zod'",[3536,23099,4742],{"class":3546},[3536,23101,23102],{"class":3538,"line":4381},[3536,23103,4748],{"emptyLinePlaceholder":4747},[3536,23105,23106,23108,23110,23112,23114,23116,23119],{"class":3538,"line":4393},[3536,23107,4726],{"class":4725},[3536,23109,3596],{"class":3546},[3536,23111,22593],{"class":3542},[3536,23113,4733],{"class":3546},[3536,23115,4736],{"class":4725},[3536,23117,23118],{"class":3557}," '.\u002Ftypes'",[3536,23120,4742],{"class":3546},[3536,23122,23123],{"class":3538,"line":4414},[3536,23124,4748],{"emptyLinePlaceholder":4747},[3536,23126,23127],{"class":3538,"line":4470},[3536,23128,12004],{"class":4573},[3536,23130,23131],{"class":3538,"line":4479},[3536,23132,23133],{"class":4573}," * Схема створення поїздки (Zod).\n",[3536,23135,23136],{"class":3538,"line":4484},[3536,23137,23138],{"class":4573}," * Повідомлення — українською: саме їх побачить користувач під полем.\n",[3536,23140,23141],{"class":3538,"line":4490},[3536,23142,12024],{"class":4573},[3536,23144,23145],{"class":3538,"line":7163},[3536,23146,23147],{"class":4573}," * Покриває різні типи контролів:\n",[3536,23149,23150],{"class":3538,"line":7171},[3536,23151,23152],{"class":4573}," * - string → TextInput\n",[3536,23154,23155],{"class":3538,"line":7177},[3536,23156,23157],{"class":4573}," * - enum → Picker\n",[3536,23159,23160],{"class":3538,"line":7190},[3536,23161,23162],{"class":4573}," * - date → DateTimePicker\n",[3536,23164,23165],{"class":3538,"line":7203},[3536,23166,23167],{"class":4573}," * - boolean → Switch \u002F Checkbox\n",[3536,23169,23170],{"class":3538,"line":7214},[3536,23171,23172],{"class":4573}," * - number → Slider\n",[3536,23174,23175],{"class":3538,"line":7220},[3536,23176,12034],{"class":4573},[3536,23178,23179,23181,23183,23186,23188],{"class":3538,"line":7226},[3536,23180,4753],{"class":4725},[3536,23182,7692],{"class":3561},[3536,23184,23185],{"class":3599}," createTripSchema",[3536,23187,4874],{"class":3546},[3536,23189,23190],{"class":3542},"z\n",[3536,23192,23193,23196,23199],{"class":3538,"line":7244},[3536,23194,23195],{"class":3546},"  .",[3536,23197,23198],{"class":3550},"object",[3536,23200,4378],{"class":3546},[3536,23202,23203,23205],{"class":3538,"line":7250},[3536,23204,7723],{"class":3542},[3536,23206,23207],{"class":3542}," z\n",[3536,23209,23210,23213,23215],{"class":3538,"line":7256},[3536,23211,23212],{"class":3546},"      .",[3536,23214,3617],{"class":3550},[3536,23216,23217],{"class":3546},"()\n",[3536,23219,23220,23222,23224],{"class":3538,"line":7261},[3536,23221,23212],{"class":3546},[3536,23223,7902],{"class":3550},[3536,23225,23217],{"class":3546},[3536,23227,23228,23230,23233,23235,23237,23239,23242],{"class":3538,"line":7266},[3536,23229,23212],{"class":3546},[3536,23231,23232],{"class":3550},"min",[3536,23234,3554],{"class":3546},[3536,23236,19784],{"class":4897},[3536,23238,3755],{"class":3546},[3536,23240,23241],{"class":3557},"'Назва має містити щонайменше 2 символи'",[3536,23243,9974],{"class":3546},[3536,23245,23246,23248,23251,23253,23256,23258,23261],{"class":3538,"line":7803},[3536,23247,23212],{"class":3546},[3536,23249,23250],{"class":3550},"max",[3536,23252,3554],{"class":3546},[3536,23254,23255],{"class":4897},"80",[3536,23257,3755],{"class":3546},[3536,23259,23260],{"class":3557},"'Назва занадто довга (макс. 80)'",[3536,23262,23263],{"class":3546},"),\n",[3536,23265,23266,23269,23272,23274,23277,23279,23281],{"class":3538,"line":7813},[3536,23267,23268],{"class":3542},"    region:",[3536,23270,23271],{"class":3542}," z",[3536,23273,3547],{"class":3546},[3536,23275,23276],{"class":3550},"enum",[3536,23278,3554],{"class":3546},[3536,23280,22593],{"class":3599},[3536,23282,5939],{"class":3546},[3536,23284,23285,23288,23291],{"class":3538,"line":7823},[3536,23286,23287],{"class":3542},"      error:",[3536,23289,23290],{"class":3557}," 'Оберіть регіон зі списку'",[3536,23292,4390],{"class":3546},[3536,23294,23295],{"class":3538,"line":7833},[3536,23296,19218],{"class":3546},[3536,23298,23299,23301],{"class":3538,"line":7843},[3536,23300,7733],{"class":3542},[3536,23302,23207],{"class":3542},[3536,23304,23305,23307,23309],{"class":3538,"line":7848},[3536,23306,23212],{"class":3546},[3536,23308,3617],{"class":3550},[3536,23310,23217],{"class":3546},[3536,23312,23313,23315,23317],{"class":3538,"line":7854},[3536,23314,23212],{"class":3546},[3536,23316,7902],{"class":3550},[3536,23318,23217],{"class":3546},[3536,23320,23321,23323,23325,23327,23330,23332,23335],{"class":3538,"line":7859},[3536,23322,23212],{"class":3546},[3536,23324,23232],{"class":3550},[3536,23326,3554],{"class":3546},[3536,23328,23329],{"class":4897},"10",[3536,23331,3755],{"class":3546},[3536,23333,23334],{"class":3557},"'Опис — щонайменше 10 символів'",[3536,23336,9974],{"class":3546},[3536,23338,23339,23341,23343,23345,23348,23350,23353],{"class":3538,"line":7888},[3536,23340,23212],{"class":3546},[3536,23342,23250],{"class":3550},[3536,23344,3554],{"class":3546},[3536,23346,23347],{"class":4897},"500",[3536,23349,3755],{"class":3546},[3536,23351,23352],{"class":3557},"'Опис занадто довгий (макс. 500)'",[3536,23354,23263],{"class":3546},[3536,23356,23357,23360,23362,23364,23367,23369,23372,23375],{"class":3538,"line":7914},[3536,23358,23359],{"class":3542},"    startDate:",[3536,23361,23271],{"class":3542},[3536,23363,3547],{"class":3546},[3536,23365,23366],{"class":3550},"date",[3536,23368,8717],{"class":3546},[3536,23370,23371],{"class":3542},"error:",[3536,23373,23374],{"class":3557}," 'Оберіть дату початку'",[3536,23376,19091],{"class":3546},[3536,23378,23379,23382,23384,23386,23388,23390,23392,23395],{"class":3538,"line":7952},[3536,23380,23381],{"class":3542},"    endDate:",[3536,23383,23271],{"class":3542},[3536,23385,3547],{"class":3546},[3536,23387,23366],{"class":3550},[3536,23389,8717],{"class":3546},[3536,23391,23371],{"class":3542},[3536,23393,23394],{"class":3557}," 'Оберіть дату завершення'",[3536,23396,19091],{"class":3546},[3536,23398,23399],{"class":3538,"line":8796},[3536,23400,23401],{"class":4573},"    \u002F** Switch: чи ховати поїздку з «публічної» стрічки (навчальна семантика). *\u002F\n",[3536,23403,23404,23407,23409,23411,23413],{"class":3538,"line":8838},[3536,23405,23406],{"class":3542},"    isPrivate:",[3536,23408,23271],{"class":3542},[3536,23410,3547],{"class":3546},[3536,23412,22861],{"class":3550},[3536,23414,23415],{"class":3546},"(),\n",[3536,23417,23418],{"class":3538,"line":8877},[3536,23419,23420],{"class":4573},"    \u002F** Slider: орієнтовна тривалість у днях. *\u002F\n",[3536,23422,23423,23426],{"class":3538,"line":8918},[3536,23424,23425],{"class":3542},"    plannedDays:",[3536,23427,23207],{"class":3542},[3536,23429,23430,23432,23434],{"class":3538,"line":8928},[3536,23431,23212],{"class":3546},[3536,23433,22878],{"class":3550},[3536,23435,23217],{"class":3546},[3536,23437,23438,23440,23442,23444,23446,23448,23451],{"class":3538,"line":8938},[3536,23439,23212],{"class":3546},[3536,23441,23232],{"class":3550},[3536,23443,3554],{"class":3546},[3536,23445,5192],{"class":4897},[3536,23447,3755],{"class":3546},[3536,23449,23450],{"class":3557},"'Мінімум 1 день'",[3536,23452,9974],{"class":3546},[3536,23454,23455,23457,23459,23461,23464,23466,23469],{"class":3538,"line":8946},[3536,23456,23212],{"class":3546},[3536,23458,23250],{"class":3550},[3536,23460,3554],{"class":3546},[3536,23462,23463],{"class":4897},"14",[3536,23465,3755],{"class":3546},[3536,23467,23468],{"class":3557},"'У формі максимум 14 днів'",[3536,23470,23263],{"class":3546},[3536,23472,23473],{"class":3538,"line":8965},[3536,23474,23475],{"class":4573},"    \u002F** Checkbox: чи є план маршруту. *\u002F\n",[3536,23477,23478,23481,23483,23485,23487],{"class":3538,"line":8993},[3536,23479,23480],{"class":3542},"    hasItinerary:",[3536,23482,23271],{"class":3542},[3536,23484,3547],{"class":3546},[3536,23486,22861],{"class":3550},[3536,23488,23415],{"class":3546},[3536,23490,23491],{"class":3538,"line":8999},[3536,23492,23493],{"class":4573},"    \u002F**\n",[3536,23495,23496],{"class":3538,"line":9032},[3536,23497,23498],{"class":4573},"     * Checkbox з обов’язковою згодою.\n",[3536,23500,23501],{"class":3538,"line":9041},[3536,23502,23503],{"class":4573},"     * `true` — єдине прийнятне значення (як «прийняти умови»).\n",[3536,23505,23506],{"class":3538,"line":9051},[3536,23507,23508],{"class":4573},"     *\u002F\n",[3536,23510,23511,23514,23516,23518,23521,23523,23525],{"class":3538,"line":9059},[3536,23512,23513],{"class":3542},"    acceptedLocalSave:",[3536,23515,23271],{"class":3542},[3536,23517,3547],{"class":3546},[3536,23519,23520],{"class":3550},"literal",[3536,23522,3554],{"class":3546},[3536,23524,7158],{"class":3561},[3536,23526,5939],{"class":3546},[3536,23528,23529,23531,23534],{"class":3538,"line":9065},[3536,23530,23287],{"class":3542},[3536,23532,23533],{"class":3557}," 'Підтвердіть, що дані поки зберігаються лише на пристрої'",[3536,23535,4390],{"class":3546},[3536,23537,23538],{"class":3538,"line":9070},[3536,23539,19218],{"class":3546},[3536,23541,23542],{"class":3538,"line":9077},[3536,23543,23544],{"class":3546},"  })\n",[3536,23546,23547,23549,23552,23554,23556,23558,23560,23563,23565,23568,23570,23573,23576,23578,23580,23583,23585,23587],{"class":3538,"line":9096},[3536,23548,23195],{"class":3546},[3536,23550,23551],{"class":3550},"refine",[3536,23553,7926],{"class":3546},[3536,23555,4644],{"class":3542},[3536,23557,7932],{"class":3546},[3536,23559,5042],{"class":3561},[3536,23561,23562],{"class":3542}," data",[3536,23564,3547],{"class":3546},[3536,23566,23567],{"class":3542},"endDate",[3536,23569,3547],{"class":3546},[3536,23571,23572],{"class":3550},"getTime",[3536,23574,23575],{"class":3546},"() >= ",[3536,23577,4644],{"class":3542},[3536,23579,3547],{"class":3546},[3536,23581,23582],{"class":3542},"startDate",[3536,23584,3547],{"class":3546},[3536,23586,23572],{"class":3550},[3536,23588,23589],{"class":3546},"(), {\n",[3536,23591,23592,23595,23598],{"class":3538,"line":9125},[3536,23593,23594],{"class":3542},"    message:",[3536,23596,23597],{"class":3557}," 'Дата завершення не може бути раніше початку'",[3536,23599,4390],{"class":3546},[3536,23601,23602,23605,23607,23610],{"class":3538,"line":9130},[3536,23603,23604],{"class":3542},"    path:",[3536,23606,13770],{"class":3546},[3536,23608,23609],{"class":3557},"'endDate'",[3536,23611,13892],{"class":3546},[3536,23613,23614],{"class":3538,"line":9163},[3536,23615,23616],{"class":3546},"  });\n",[3536,23618,23619],{"class":3538,"line":9172},[3536,23620,4748],{"emptyLinePlaceholder":4747},[3536,23622,23623,23625,23627,23629,23631,23633,23635,23638,23640,23642,23644],{"class":3538,"line":9181},[3536,23624,4753],{"class":4725},[3536,23626,7626],{"class":3561},[3536,23628,22729],{"class":3616},[3536,23630,4874],{"class":3546},[3536,23632,23090],{"class":3616},[3536,23634,3547],{"class":3546},[3536,23636,23637],{"class":3616},"infer",[3536,23639,4310],{"class":3546},[3536,23641,23066],{"class":3561},[3536,23643,23185],{"class":3542},[3536,23645,23646],{"class":3546},">;\n",[3526,23648,23651],{"className":7615,"code":23649,"filename":23650,"language":7617,"meta":3531,"style":3531},"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",[3533,23652,23653,23662,23669,23676,23683,23690,23697,23704,23711,23718,23725,23732,23739,23746,23756,23760,23783,23826,23830,23834,23838,23843,23848,23852,23885,23903,23920,23937,23954,23971,23988,23992,24019,24036,24066,24070,24113,24117,24121,24135,24178,24182,24186,24234],{"__ignoreMap":3531},[3536,23654,23655,23657,23660],{"class":3538,"line":3539},[3536,23656,3593],{"class":3561},[3536,23658,23659],{"class":3599}," MONTHS_UK_SHORT",[3536,23661,22993],{"class":3546},[3536,23663,23664,23667],{"class":3538,"line":4381},[3536,23665,23666],{"class":3557},"  'січ.'",[3536,23668,4390],{"class":3546},[3536,23670,23671,23674],{"class":3538,"line":4393},[3536,23672,23673],{"class":3557},"  'лют.'",[3536,23675,4390],{"class":3546},[3536,23677,23678,23681],{"class":3538,"line":4414},[3536,23679,23680],{"class":3557},"  'бер.'",[3536,23682,4390],{"class":3546},[3536,23684,23685,23688],{"class":3538,"line":4470},[3536,23686,23687],{"class":3557},"  'квіт.'",[3536,23689,4390],{"class":3546},[3536,23691,23692,23695],{"class":3538,"line":4479},[3536,23693,23694],{"class":3557},"  'трав.'",[3536,23696,4390],{"class":3546},[3536,23698,23699,23702],{"class":3538,"line":4484},[3536,23700,23701],{"class":3557},"  'черв.'",[3536,23703,4390],{"class":3546},[3536,23705,23706,23709],{"class":3538,"line":4490},[3536,23707,23708],{"class":3557},"  'лип.'",[3536,23710,4390],{"class":3546},[3536,23712,23713,23716],{"class":3538,"line":7163},[3536,23714,23715],{"class":3557},"  'серп.'",[3536,23717,4390],{"class":3546},[3536,23719,23720,23723],{"class":3538,"line":7171},[3536,23721,23722],{"class":3557},"  'вер.'",[3536,23724,4390],{"class":3546},[3536,23726,23727,23730],{"class":3538,"line":7177},[3536,23728,23729],{"class":3557},"  'жовт.'",[3536,23731,4390],{"class":3546},[3536,23733,23734,23737],{"class":3538,"line":7190},[3536,23735,23736],{"class":3557},"  'лист.'",[3536,23738,4390],{"class":3546},[3536,23740,23741,23744],{"class":3538,"line":7203},[3536,23742,23743],{"class":3557},"  'груд.'",[3536,23745,4390],{"class":3546},[3536,23747,23748,23750,23752,23754],{"class":3538,"line":7214},[3536,23749,23040],{"class":3546},[3536,23751,23043],{"class":4725},[3536,23753,7692],{"class":3561},[3536,23755,4742],{"class":3546},[3536,23757,23758],{"class":3538,"line":7220},[3536,23759,4748],{"emptyLinePlaceholder":4747},[3536,23761,23762,23764,23767,23769,23772,23774,23777,23779,23781],{"class":3538,"line":7226},[3536,23763,12068],{"class":3561},[3536,23765,23766],{"class":3550}," dayMonth",[3536,23768,3554],{"class":3546},[3536,23770,23771],{"class":3542},"d",[3536,23773,3613],{"class":3546},[3536,23775,23776],{"class":3616},"Date",[3536,23778,7877],{"class":3546},[3536,23780,3617],{"class":3616},[3536,23782,4547],{"class":3546},[3536,23784,23785,23787,23789,23791,23793,23795,23798,23800,23802,23805,23808,23810,23812,23814,23817,23820,23822,23824],{"class":3538,"line":7244},[3536,23786,4982],{"class":4725},[3536,23788,15183],{"class":3557},[3536,23790,3562],{"class":3561},[3536,23792,23771],{"class":3542},[3536,23794,3547],{"class":3568},[3536,23796,23797],{"class":3550},"getDate",[3536,23799,5053],{"class":3568},[3536,23801,3574],{"class":3561},[3536,23803,23804],{"class":3561}," ${",[3536,23806,23807],{"class":3599},"MONTHS_UK_SHORT",[3536,23809,4894],{"class":3568},[3536,23811,23771],{"class":3542},[3536,23813,3547],{"class":3568},[3536,23815,23816],{"class":3550},"getMonth",[3536,23818,23819],{"class":3568},"()]",[3536,23821,3574],{"class":3561},[3536,23823,3577],{"class":3557},[3536,23825,4742],{"class":3546},[3536,23827,23828],{"class":3538,"line":7250},[3536,23829,4476],{"class":3546},[3536,23831,23832],{"class":3538,"line":7256},[3536,23833,4748],{"emptyLinePlaceholder":4747},[3536,23835,23836],{"class":3538,"line":7261},[3536,23837,12004],{"class":4573},[3536,23839,23840],{"class":3538,"line":7266},[3536,23841,23842],{"class":4573}," * Людський підпис періоду, як у mock-стрічці:\n",[3536,23844,23845],{"class":3538,"line":7803},[3536,23846,23847],{"class":4573}," * «12–14 бер. 2026» або «28 бер. – 2 квіт. 2026».\n",[3536,23849,23850],{"class":3538,"line":7813},[3536,23851,12034],{"class":4573},[3536,23853,23854,23856,23858,23861,23863,23866,23868,23870,23872,23875,23877,23879,23881,23883],{"class":3538,"line":7823},[3536,23855,4753],{"class":4725},[3536,23857,4759],{"class":3561},[3536,23859,23860],{"class":3550}," formatTripDateLabel",[3536,23862,3554],{"class":3546},[3536,23864,23865],{"class":3542},"start",[3536,23867,3613],{"class":3546},[3536,23869,23776],{"class":3616},[3536,23871,3755],{"class":3546},[3536,23873,23874],{"class":3542},"end",[3536,23876,3613],{"class":3546},[3536,23878,23776],{"class":3616},[3536,23880,7877],{"class":3546},[3536,23882,3617],{"class":3616},[3536,23884,4547],{"class":3546},[3536,23886,23887,23889,23892,23894,23896,23898,23901],{"class":3538,"line":7833},[3536,23888,4770],{"class":3561},[3536,23890,23891],{"class":3599}," y1",[3536,23893,4874],{"class":3546},[3536,23895,23865],{"class":3542},[3536,23897,3547],{"class":3546},[3536,23899,23900],{"class":3550},"getFullYear",[3536,23902,7911],{"class":3546},[3536,23904,23905,23907,23910,23912,23914,23916,23918],{"class":3538,"line":7843},[3536,23906,4770],{"class":3561},[3536,23908,23909],{"class":3599}," y2",[3536,23911,4874],{"class":3546},[3536,23913,23874],{"class":3542},[3536,23915,3547],{"class":3546},[3536,23917,23900],{"class":3550},[3536,23919,7911],{"class":3546},[3536,23921,23922,23924,23927,23929,23931,23933,23935],{"class":3538,"line":7848},[3536,23923,4770],{"class":3561},[3536,23925,23926],{"class":3599}," m1",[3536,23928,4874],{"class":3546},[3536,23930,23865],{"class":3542},[3536,23932,3547],{"class":3546},[3536,23934,23816],{"class":3550},[3536,23936,7911],{"class":3546},[3536,23938,23939,23941,23944,23946,23948,23950,23952],{"class":3538,"line":7854},[3536,23940,4770],{"class":3561},[3536,23942,23943],{"class":3599}," m2",[3536,23945,4874],{"class":3546},[3536,23947,23874],{"class":3542},[3536,23949,3547],{"class":3546},[3536,23951,23816],{"class":3550},[3536,23953,7911],{"class":3546},[3536,23955,23956,23958,23961,23963,23965,23967,23969],{"class":3538,"line":7859},[3536,23957,4770],{"class":3561},[3536,23959,23960],{"class":3599}," d1",[3536,23962,4874],{"class":3546},[3536,23964,23865],{"class":3542},[3536,23966,3547],{"class":3546},[3536,23968,23797],{"class":3550},[3536,23970,7911],{"class":3546},[3536,23972,23973,23975,23978,23980,23982,23984,23986],{"class":3538,"line":7888},[3536,23974,4770],{"class":3561},[3536,23976,23977],{"class":3599}," d2",[3536,23979,4874],{"class":3546},[3536,23981,23874],{"class":3542},[3536,23983,3547],{"class":3546},[3536,23985,23797],{"class":3550},[3536,23987,7911],{"class":3546},[3536,23989,23990],{"class":3538,"line":7914},[3536,23991,4748],{"emptyLinePlaceholder":4747},[3536,23993,23994,23996,23998,24001,24003,24006,24009,24012,24014,24017],{"class":3538,"line":7952},[3536,23995,9993],{"class":4725},[3536,23997,5365],{"class":3546},[3536,23999,24000],{"class":3542},"y1",[3536,24002,7944],{"class":3546},[3536,24004,24005],{"class":3542},"y2",[3536,24007,24008],{"class":3546}," && ",[3536,24010,24011],{"class":3542},"m1",[3536,24013,7944],{"class":3546},[3536,24015,24016],{"class":3542},"m2",[3536,24018,4977],{"class":3546},[3536,24020,24021,24024,24026,24029,24031,24034],{"class":3538,"line":8796},[3536,24022,24023],{"class":4725},"    if",[3536,24025,5365],{"class":3546},[3536,24027,24028],{"class":3542},"d1",[3536,24030,7944],{"class":3546},[3536,24032,24033],{"class":3542},"d2",[3536,24035,4977],{"class":3546},[3536,24037,24038,24041,24043,24045,24048,24050,24052,24054,24056,24058,24060,24062,24064],{"class":3538,"line":8838},[3536,24039,24040],{"class":4725},"      return",[3536,24042,15183],{"class":3557},[3536,24044,3562],{"class":3561},[3536,24046,24047],{"class":3550},"dayMonth",[3536,24049,3554],{"class":3568},[3536,24051,23865],{"class":3542},[3536,24053,3835],{"class":3568},[3536,24055,3574],{"class":3561},[3536,24057,23804],{"class":3561},[3536,24059,24000],{"class":3542},[3536,24061,3574],{"class":3561},[3536,24063,3577],{"class":3557},[3536,24065,4742],{"class":3546},[3536,24067,24068],{"class":3538,"line":8877},[3536,24069,7077],{"class":3546},[3536,24071,24072,24074,24076,24078,24080,24082,24085,24087,24089,24091,24093,24095,24097,24099,24101,24103,24105,24107,24109,24111],{"class":3538,"line":8918},[3536,24073,10005],{"class":4725},[3536,24075,15183],{"class":3557},[3536,24077,3562],{"class":3561},[3536,24079,24028],{"class":3542},[3536,24081,3574],{"class":3561},[3536,24083,24084],{"class":3557},"–",[3536,24086,3562],{"class":3561},[3536,24088,24033],{"class":3542},[3536,24090,3574],{"class":3561},[3536,24092,23804],{"class":3561},[3536,24094,23807],{"class":3599},[3536,24096,4894],{"class":3568},[3536,24098,24011],{"class":3542},[3536,24100,8518],{"class":3568},[3536,24102,3574],{"class":3561},[3536,24104,23804],{"class":3561},[3536,24106,24000],{"class":3542},[3536,24108,3574],{"class":3561},[3536,24110,3577],{"class":3557},[3536,24112,4742],{"class":3546},[3536,24114,24115],{"class":3538,"line":8928},[3536,24116,5599],{"class":3546},[3536,24118,24119],{"class":3538,"line":8938},[3536,24120,4748],{"emptyLinePlaceholder":4747},[3536,24122,24123,24125,24127,24129,24131,24133],{"class":3538,"line":8946},[3536,24124,9993],{"class":4725},[3536,24126,5365],{"class":3546},[3536,24128,24000],{"class":3542},[3536,24130,7944],{"class":3546},[3536,24132,24005],{"class":3542},[3536,24134,4977],{"class":3546},[3536,24136,24137,24139,24141,24143,24145,24147,24149,24151,24153,24156,24158,24160,24162,24164,24166,24168,24170,24172,24174,24176],{"class":3538,"line":8965},[3536,24138,10005],{"class":4725},[3536,24140,15183],{"class":3557},[3536,24142,3562],{"class":3561},[3536,24144,24047],{"class":3550},[3536,24146,3554],{"class":3568},[3536,24148,23865],{"class":3542},[3536,24150,3835],{"class":3568},[3536,24152,3574],{"class":3561},[3536,24154,24155],{"class":3557}," – ",[3536,24157,3562],{"class":3561},[3536,24159,24047],{"class":3550},[3536,24161,3554],{"class":3568},[3536,24163,23874],{"class":3542},[3536,24165,3835],{"class":3568},[3536,24167,3574],{"class":3561},[3536,24169,23804],{"class":3561},[3536,24171,24000],{"class":3542},[3536,24173,3574],{"class":3561},[3536,24175,3577],{"class":3557},[3536,24177,4742],{"class":3546},[3536,24179,24180],{"class":3538,"line":8993},[3536,24181,5599],{"class":3546},[3536,24183,24184],{"class":3538,"line":8999},[3536,24185,4748],{"emptyLinePlaceholder":4747},[3536,24187,24188,24190,24192,24194,24196,24198,24200,24202,24204,24206,24208,24210,24212,24214,24216,24218,24220,24222,24224,24226,24228,24230,24232],{"class":3538,"line":9032},[3536,24189,4982],{"class":4725},[3536,24191,15183],{"class":3557},[3536,24193,3562],{"class":3561},[3536,24195,24047],{"class":3550},[3536,24197,3554],{"class":3568},[3536,24199,23865],{"class":3542},[3536,24201,3835],{"class":3568},[3536,24203,3574],{"class":3561},[3536,24205,23804],{"class":3561},[3536,24207,24000],{"class":3542},[3536,24209,3574],{"class":3561},[3536,24211,24155],{"class":3557},[3536,24213,3562],{"class":3561},[3536,24215,24047],{"class":3550},[3536,24217,3554],{"class":3568},[3536,24219,23874],{"class":3542},[3536,24221,3835],{"class":3568},[3536,24223,3574],{"class":3561},[3536,24225,23804],{"class":3561},[3536,24227,24005],{"class":3542},[3536,24229,3574],{"class":3561},[3536,24231,3577],{"class":3557},[3536,24233,4742],{"class":3546},[3536,24235,24236],{"class":3538,"line":9041},[3536,24237,4476],{"class":3546},[3526,24239,24242],{"className":3528,"code":24240,"filename":24241,"language":3530,"meta":3531,"style":3531},"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",[3533,24243,24244,24250,24257,24264,24271,24278,24285,24292,24302,24306,24323,24341,24345,24354,24366,24371,24397,24402,24424,24429,24443,24447,24451,24479,24483,24492,24504,24508,24512,24534,24567,24571,24584,24627,24635,24639,24643,24668,24693,24698,24702,24719,24730,24734,24738,24751,24775,24795,24799,24803,24809,24841,24845,24849,24853,24869,24888,24899,24917,24921,24929],{"__ignoreMap":3531},[3536,24245,24246,24248],{"class":3538,"line":3539},[3536,24247,4726],{"class":4725},[3536,24249,4547],{"class":3546},[3536,24251,24252,24255],{"class":3538,"line":4381},[3536,24253,24254],{"class":3542},"  createContext",[3536,24256,4390],{"class":3546},[3536,24258,24259,24262],{"class":3538,"line":4393},[3536,24260,24261],{"class":3542},"  ReactNode",[3536,24263,4390],{"class":3546},[3536,24265,24266,24269],{"class":3538,"line":4414},[3536,24267,24268],{"class":3542},"  useCallback",[3536,24270,4390],{"class":3546},[3536,24272,24273,24276],{"class":3538,"line":4470},[3536,24274,24275],{"class":3542},"  useContext",[3536,24277,4390],{"class":3546},[3536,24279,24280,24283],{"class":3538,"line":4479},[3536,24281,24282],{"class":3542},"  useMemo",[3536,24284,4390],{"class":3546},[3536,24286,24287,24290],{"class":3538,"line":4484},[3536,24288,24289],{"class":3542},"  useState",[3536,24291,4390],{"class":3546},[3536,24293,24294,24296,24298,24300],{"class":3538,"line":4490},[3536,24295,13433],{"class":3546},[3536,24297,4736],{"class":4725},[3536,24299,13385],{"class":3557},[3536,24301,4742],{"class":3546},[3536,24303,24304],{"class":3538,"line":7163},[3536,24305,4748],{"emptyLinePlaceholder":4747},[3536,24307,24308,24310,24312,24314,24316,24318,24321],{"class":3538,"line":7171},[3536,24309,4726],{"class":4725},[3536,24311,3596],{"class":3546},[3536,24313,22513],{"class":3542},[3536,24315,4733],{"class":3546},[3536,24317,4736],{"class":4725},[3536,24319,24320],{"class":3557}," '.\u002FmockTrips'",[3536,24322,4742],{"class":3546},[3536,24324,24325,24327,24329,24331,24333,24335,24337,24339],{"class":3538,"line":7177},[3536,24326,4726],{"class":4725},[3536,24328,7626],{"class":4725},[3536,24330,3596],{"class":3546},[3536,24332,4658],{"class":3542},[3536,24334,4733],{"class":3546},[3536,24336,4736],{"class":4725},[3536,24338,23118],{"class":3557},[3536,24340,4742],{"class":3546},[3536,24342,24343],{"class":3538,"line":7190},[3536,24344,4748],{"emptyLinePlaceholder":4747},[3536,24346,24347,24349,24352],{"class":3538,"line":7203},[3536,24348,13553],{"class":3561},[3536,24350,24351],{"class":3616}," TripsContextValue",[3536,24353,7632],{"class":3546},[3536,24355,24356,24359,24361,24363],{"class":3538,"line":7214},[3536,24357,24358],{"class":3542},"  trips",[3536,24360,3613],{"class":3546},[3536,24362,4658],{"class":3616},[3536,24364,24365],{"class":3546},"[];\n",[3536,24367,24368],{"class":3538,"line":7220},[3536,24369,24370],{"class":4573},"  \u002F** Знайти поїздку за id (екран деталей). *\u002F\n",[3536,24372,24373,24376,24379,24381,24383,24385,24387,24389,24391,24393,24395],{"class":3538,"line":7226},[3536,24374,24375],{"class":3550},"  getTrip",[3536,24377,24378],{"class":3546},": (",[3536,24380,3571],{"class":3542},[3536,24382,3613],{"class":3546},[3536,24384,3617],{"class":3616},[3536,24386,7932],{"class":3546},[3536,24388,5042],{"class":3561},[3536,24390,13528],{"class":3616},[3536,24392,4859],{"class":3546},[3536,24394,4813],{"class":3616},[3536,24396,4742],{"class":3546},[3536,24398,24399],{"class":3538,"line":7244},[3536,24400,24401],{"class":4573},"  \u002F** Додати нову поїздку на початок стрічки (найсвіжіша зверху). *\u002F\n",[3536,24403,24404,24407,24409,24411,24413,24415,24417,24419,24422],{"class":3538,"line":7250},[3536,24405,24406],{"class":3550},"  addTrip",[3536,24408,24378],{"class":3546},[3536,24410,3565],{"class":3542},[3536,24412,3613],{"class":3546},[3536,24414,4658],{"class":3616},[3536,24416,7932],{"class":3546},[3536,24418,5042],{"class":3561},[3536,24420,24421],{"class":3616}," void",[3536,24423,4742],{"class":3546},[3536,24425,24426],{"class":3538,"line":7256},[3536,24427,24428],{"class":4573},"  \u002F** Mock «оновити з сервера» — повертає seed mockTrips (без локально створених). *\u002F\n",[3536,24430,24431,24434,24437,24439,24441],{"class":3538,"line":7261},[3536,24432,24433],{"class":3550},"  resetToMock",[3536,24435,24436],{"class":3546},": () ",[3536,24438,5042],{"class":3561},[3536,24440,24421],{"class":3616},[3536,24442,4742],{"class":3546},[3536,24444,24445],{"class":3538,"line":7266},[3536,24446,7681],{"class":3546},[3536,24448,24449],{"class":3538,"line":7803},[3536,24450,4748],{"emptyLinePlaceholder":4747},[3536,24452,24453,24455,24458,24460,24463,24465,24468,24470,24472,24475,24477],{"class":3538,"line":7813},[3536,24454,3593],{"class":3561},[3536,24456,24457],{"class":3599}," TripsContext",[3536,24459,4874],{"class":3546},[3536,24461,24462],{"class":3550},"createContext",[3536,24464,4310],{"class":3546},[3536,24466,24467],{"class":3616},"TripsContextValue",[3536,24469,4859],{"class":3546},[3536,24471,6138],{"class":3616},[3536,24473,24474],{"class":3546},">(",[3536,24476,6138],{"class":3561},[3536,24478,3580],{"class":3546},[3536,24480,24481],{"class":3538,"line":7823},[3536,24482,4748],{"emptyLinePlaceholder":4747},[3536,24484,24485,24487,24490],{"class":3538,"line":7833},[3536,24486,13553],{"class":3561},[3536,24488,24489],{"class":3616}," TripsProviderProps",[3536,24491,7632],{"class":3546},[3536,24493,24494,24497,24499,24502],{"class":3538,"line":7843},[3536,24495,24496],{"class":3542},"  children",[3536,24498,3613],{"class":3546},[3536,24500,24501],{"class":3616},"ReactNode",[3536,24503,4742],{"class":3546},[3536,24505,24506],{"class":3538,"line":7848},[3536,24507,7681],{"class":3546},[3536,24509,24510],{"class":3538,"line":7854},[3536,24511,4748],{"emptyLinePlaceholder":4747},[3536,24513,24514,24516,24518,24521,24523,24526,24529,24532],{"class":3538,"line":7859},[3536,24515,4753],{"class":4725},[3536,24517,4759],{"class":3561},[3536,24519,24520],{"class":3550}," TripsProvider",[3536,24522,8717],{"class":3546},[3536,24524,24525],{"class":3542},"children",[3536,24527,24528],{"class":3546}," }: ",[3536,24530,24531],{"class":3616},"TripsProviderProps",[3536,24533,4977],{"class":3546},[3536,24535,24536,24538,24540,24542,24544,24547,24549,24551,24553,24555,24558,24560,24563,24565],{"class":3538,"line":7888},[3536,24537,4770],{"class":3561},[3536,24539,13770],{"class":3546},[3536,24541,4150],{"class":3599},[3536,24543,3755],{"class":3546},[3536,24545,24546],{"class":3599},"setTrips",[3536,24548,13776],{"class":3546},[3536,24550,13378],{"class":3550},[3536,24552,4310],{"class":3546},[3536,24554,4658],{"class":3616},[3536,24556,24557],{"class":3546},"[]>(() ",[3536,24559,5042],{"class":3561},[3536,24561,24562],{"class":3546}," [...",[3536,24564,22513],{"class":3542},[3536,24566,14064],{"class":3546},[3536,24568,24569],{"class":3538,"line":7914},[3536,24570,4748],{"emptyLinePlaceholder":4747},[3536,24572,24573,24575,24578,24580,24582],{"class":3538,"line":7952},[3536,24574,4770],{"class":3561},[3536,24576,24577],{"class":3599}," getTrip",[3536,24579,4874],{"class":3546},[3536,24581,13373],{"class":3550},[3536,24583,13834],{"class":3546},[3536,24585,24586,24588,24590,24592,24594,24596,24598,24601,24603,24605,24607,24610,24612,24614,24617,24619,24621,24623,24625],{"class":3538,"line":8796},[3536,24587,13839],{"class":3546},[3536,24589,3571],{"class":3542},[3536,24591,3613],{"class":3546},[3536,24593,3617],{"class":3616},[3536,24595,7932],{"class":3546},[3536,24597,5042],{"class":3561},[3536,24599,24600],{"class":3542}," trips",[3536,24602,3547],{"class":3546},[3536,24604,7923],{"class":3550},[3536,24606,7926],{"class":3546},[3536,24608,24609],{"class":3542},"t",[3536,24611,7932],{"class":3546},[3536,24613,5042],{"class":3561},[3536,24615,24616],{"class":3542}," t",[3536,24618,3547],{"class":3546},[3536,24620,3571],{"class":3542},[3536,24622,7944],{"class":3546},[3536,24624,3571],{"class":3542},[3536,24626,23263],{"class":3546},[3536,24628,24629,24631,24633],{"class":3538,"line":8838},[3536,24630,13887],{"class":3546},[3536,24632,4150],{"class":3542},[3536,24634,13892],{"class":3546},[3536,24636,24637],{"class":3538,"line":8877},[3536,24638,5072],{"class":3546},[3536,24640,24641],{"class":3538,"line":8918},[3536,24642,4748],{"emptyLinePlaceholder":4747},[3536,24644,24645,24647,24650,24652,24654,24656,24658,24660,24662,24664,24666],{"class":3538,"line":8928},[3536,24646,4770],{"class":3561},[3536,24648,24649],{"class":3599}," addTrip",[3536,24651,4874],{"class":3546},[3536,24653,13373],{"class":3550},[3536,24655,7926],{"class":3546},[3536,24657,3565],{"class":3542},[3536,24659,3613],{"class":3546},[3536,24661,4658],{"class":3616},[3536,24663,7932],{"class":3546},[3536,24665,5042],{"class":3561},[3536,24667,4547],{"class":3546},[3536,24669,24670,24673,24675,24678,24680,24682,24684,24686,24689,24691],{"class":3538,"line":8938},[3536,24671,24672],{"class":3550},"    setTrips",[3536,24674,7926],{"class":3546},[3536,24676,24677],{"class":3542},"prev",[3536,24679,7932],{"class":3546},[3536,24681,5042],{"class":3561},[3536,24683,13770],{"class":3546},[3536,24685,3565],{"class":3542},[3536,24687,24688],{"class":3546},", ...",[3536,24690,24677],{"class":3542},[3536,24692,14064],{"class":3546},[3536,24694,24695],{"class":3538,"line":8946},[3536,24696,24697],{"class":3546},"  }, []);\n",[3536,24699,24700],{"class":3538,"line":8965},[3536,24701,4748],{"emptyLinePlaceholder":4747},[3536,24703,24704,24706,24709,24711,24713,24715,24717],{"class":3538,"line":8993},[3536,24705,4770],{"class":3561},[3536,24707,24708],{"class":3599}," resetToMock",[3536,24710,4874],{"class":3546},[3536,24712,13373],{"class":3550},[3536,24714,13995],{"class":3546},[3536,24716,5042],{"class":3561},[3536,24718,4547],{"class":3546},[3536,24720,24721,24723,24726,24728],{"class":3538,"line":8999},[3536,24722,24672],{"class":3550},[3536,24724,24725],{"class":3546},"([...",[3536,24727,22513],{"class":3542},[3536,24729,14064],{"class":3546},[3536,24731,24732],{"class":3538,"line":9032},[3536,24733,24697],{"class":3546},[3536,24735,24736],{"class":3538,"line":9041},[3536,24737,4748],{"emptyLinePlaceholder":4747},[3536,24739,24740,24742,24745,24747,24749],{"class":3538,"line":9051},[3536,24741,4770],{"class":3561},[3536,24743,24744],{"class":3599}," value",[3536,24746,4874],{"class":3546},[3536,24748,16551],{"class":3550},[3536,24750,13834],{"class":3546},[3536,24752,24753,24755,24757,24759,24761,24763,24765,24767,24769,24771,24773],{"class":3538,"line":9059},[3536,24754,16880],{"class":3546},[3536,24756,5042],{"class":3561},[3536,24758,12751],{"class":3546},[3536,24760,4150],{"class":3542},[3536,24762,3755],{"class":3546},[3536,24764,6490],{"class":3542},[3536,24766,3755],{"class":3546},[3536,24768,22321],{"class":3542},[3536,24770,3755],{"class":3546},[3536,24772,13723],{"class":3542},[3536,24774,19091],{"class":3546},[3536,24776,24777,24779,24781,24783,24785,24787,24789,24791,24793],{"class":3538,"line":9065},[3536,24778,13887],{"class":3546},[3536,24780,4150],{"class":3542},[3536,24782,3755],{"class":3546},[3536,24784,6490],{"class":3542},[3536,24786,3755],{"class":3546},[3536,24788,22321],{"class":3542},[3536,24790,3755],{"class":3546},[3536,24792,13723],{"class":3542},[3536,24794,13892],{"class":3546},[3536,24796,24797],{"class":3538,"line":9070},[3536,24798,5072],{"class":3546},[3536,24800,24801],{"class":3538,"line":9077},[3536,24802,4748],{"emptyLinePlaceholder":4747},[3536,24804,24805,24807],{"class":3538,"line":9096},[3536,24806,4982],{"class":4725},[3536,24808,4985],{"class":3546},[3536,24810,24811,24813,24816,24818,24820,24822,24825,24827,24829,24831,24833,24835,24837,24839],{"class":3538,"line":9125},[3536,24812,4990],{"class":4309},[3536,24814,24815],{"class":3616},"TripsContext.Provider",[3536,24817,24744],{"class":4315},[3536,24819,4319],{"class":3546},[3536,24821,4322],{"class":3561},[3536,24823,24824],{"class":3542},"value",[3536,24826,3574],{"class":3561},[3536,24828,4341],{"class":4309},[3536,24830,4322],{"class":3561},[3536,24832,24525],{"class":3542},[3536,24834,3574],{"class":3561},[3536,24836,4347],{"class":4309},[3536,24838,24815],{"class":3616},[3536,24840,4352],{"class":4309},[3536,24842,24843],{"class":3538,"line":9130},[3536,24844,5072],{"class":3546},[3536,24846,24847],{"class":3538,"line":9163},[3536,24848,4476],{"class":3546},[3536,24850,24851],{"class":3538,"line":9172},[3536,24852,4748],{"emptyLinePlaceholder":4747},[3536,24854,24855,24857,24859,24862,24865,24867],{"class":3538,"line":9181},[3536,24856,4753],{"class":4725},[3536,24858,4759],{"class":3561},[3536,24860,24861],{"class":3550}," useTrips",[3536,24863,24864],{"class":3546},"(): ",[3536,24866,24467],{"class":3616},[3536,24868,4547],{"class":3546},[3536,24870,24871,24873,24876,24878,24881,24883,24886],{"class":3538,"line":9186},[3536,24872,4770],{"class":3561},[3536,24874,24875],{"class":3599}," ctx",[3536,24877,4874],{"class":3546},[3536,24879,24880],{"class":3550},"useContext",[3536,24882,3554],{"class":3546},[3536,24884,24885],{"class":3542},"TripsContext",[3536,24887,3580],{"class":3546},[3536,24889,24890,24892,24894,24897],{"class":3538,"line":9191},[3536,24891,9993],{"class":4725},[3536,24893,4967],{"class":3546},[3536,24895,24896],{"class":3542},"ctx",[3536,24898,4977],{"class":3546},[3536,24900,24901,24904,24907,24910,24912,24915],{"class":3538,"line":9196},[3536,24902,24903],{"class":4725},"    throw",[3536,24905,24906],{"class":3561}," new",[3536,24908,24909],{"class":3550}," Error",[3536,24911,3554],{"class":3546},[3536,24913,24914],{"class":3557},"'useTrips треба викликати всередині TripsProvider'",[3536,24916,3580],{"class":3546},[3536,24918,24919],{"class":3538,"line":9215},[3536,24920,5599],{"class":3546},[3536,24922,24923,24925,24927],{"class":3538,"line":9237},[3536,24924,4982],{"class":4725},[3536,24926,24875],{"class":3542},[3536,24928,4742],{"class":3546},[3536,24930,24931],{"class":3538,"line":9245},[3536,24932,4476],{"class":3546},[3526,24934,24937],{"className":7615,"code":24935,"filename":24936,"language":7617,"meta":3531,"style":3531},"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",[3533,24938,24939,24957,24961,24965,24970,24975,24979,24994,24998,25007,25016,25026,25035,25040,25047,25056,25060,25064,25073,25082,25091,25100,25104,25111,25120,25124,25128,25137,25146,25155,25164,25168,25175,25184,25188,25192,25201,25210,25219,25228,25232,25239,25248,25252,25256,25265,25274,25283,25292,25296,25303,25311,25315,25319,25328,25337,25346,25355,25359,25366,25374,25378,25382,25391,25400,25409,25418,25422,25429,25438,25442,25446,25455,25464,25473,25482,25486,25493,25501,25505,25509,25518,25527,25536,25545,25549,25556,25564,25568,25572,25581,25590,25599,25608,25612,25619,25627,25631,25635,25644,25653,25662,25671,25675,25682,25690,25694,25698,25707,25716,25725,25734,25738,25745,25753,25757],{"__ignoreMap":3531},[3536,24940,24941,24943,24945,24947,24949,24951,24953,24955],{"class":3538,"line":3539},[3536,24942,4726],{"class":4725},[3536,24944,7626],{"class":4725},[3536,24946,3596],{"class":3546},[3536,24948,4658],{"class":3542},[3536,24950,4733],{"class":3546},[3536,24952,4736],{"class":4725},[3536,24954,23118],{"class":3557},[3536,24956,4742],{"class":3546},[3536,24958,24959],{"class":3538,"line":4381},[3536,24960,4748],{"emptyLinePlaceholder":4747},[3536,24962,24963],{"class":3538,"line":4393},[3536,24964,12004],{"class":4573},[3536,24966,24967],{"class":3538,"line":4414},[3536,24968,24969],{"class":4573}," * Mock-стрічка поїздок. Більше за 3–5 елементів — щоб віртуалізація\n",[3536,24971,24972],{"class":3538,"line":4470},[3536,24973,24974],{"class":4573}," * (FlashList \u002F FlatList) мала сенс на домашньому екрані.\n",[3536,24976,24977],{"class":3538,"line":4479},[3536,24978,12034],{"class":4573},[3536,24980,24981,24983,24985,24988,24990,24992],{"class":3538,"line":4484},[3536,24982,4753],{"class":4725},[3536,24984,7692],{"class":3561},[3536,24986,24987],{"class":3599}," mockTrips",[3536,24989,3613],{"class":3546},[3536,24991,4658],{"class":3616},[3536,24993,7703],{"class":3546},[3536,24995,24996],{"class":3538,"line":4490},[3536,24997,7708],{"class":3546},[3536,24999,25000,25002,25005],{"class":3538,"line":7163},[3536,25001,4552],{"class":3542},[3536,25003,25004],{"class":3557}," '1'",[3536,25006,4390],{"class":3546},[3536,25008,25009,25011,25014],{"class":3538,"line":7171},[3536,25010,7723],{"class":3542},[3536,25012,25013],{"class":3557}," 'Карпати на вихідні'",[3536,25015,4390],{"class":3546},[3536,25017,25018,25021,25024],{"class":3538,"line":7177},[3536,25019,25020],{"class":3542},"    dateLabel:",[3536,25022,25023],{"class":3557}," '12–14 бер. 2026'",[3536,25025,4390],{"class":3546},[3536,25027,25028,25030,25033],{"class":3538,"line":7190},[3536,25029,7733],{"class":3542},[3536,25031,25032],{"class":3557}," 'Говерла, полонини й вечірній чай біля каміну в котеджі.'",[3536,25034,4390],{"class":3546},[3536,25036,25037],{"class":3538,"line":7203},[3536,25038,25039],{"class":3542},"    coverUri:\n",[3536,25041,25042,25045],{"class":3538,"line":7214},[3536,25043,25044],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1464822759023-fed622ff2c3b?w=800&q=80'",[3536,25046,4390],{"class":3546},[3536,25048,25049,25051,25054],{"class":3538,"line":7220},[3536,25050,23268],{"class":3542},[3536,25052,25053],{"class":3557}," 'Карпати'",[3536,25055,4390],{"class":3546},[3536,25057,25058],{"class":3538,"line":7226},[3536,25059,4579],{"class":3546},[3536,25061,25062],{"class":3538,"line":7244},[3536,25063,7708],{"class":3546},[3536,25065,25066,25068,25071],{"class":3538,"line":7250},[3536,25067,4552],{"class":3542},[3536,25069,25070],{"class":3557}," '2'",[3536,25072,4390],{"class":3546},[3536,25074,25075,25077,25080],{"class":3538,"line":7256},[3536,25076,7723],{"class":3542},[3536,25078,25079],{"class":3557}," 'Львівський вікенд'",[3536,25081,4390],{"class":3546},[3536,25083,25084,25086,25089],{"class":3538,"line":7261},[3536,25085,25020],{"class":3542},[3536,25087,25088],{"class":3557}," '2–4 трав. 2026'",[3536,25090,4390],{"class":3546},[3536,25092,25093,25095,25098],{"class":3538,"line":7266},[3536,25094,7733],{"class":3542},[3536,25096,25097],{"class":3557}," 'Кава, площа Ринок, закапелки й нічний трамвай.'",[3536,25099,4390],{"class":3546},[3536,25101,25102],{"class":3538,"line":7803},[3536,25103,25039],{"class":3542},[3536,25105,25106,25109],{"class":3538,"line":7813},[3536,25107,25108],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555881400-74d7acaacd8b?w=800&q=80'",[3536,25110,4390],{"class":3546},[3536,25112,25113,25115,25118],{"class":3538,"line":7823},[3536,25114,23268],{"class":3542},[3536,25116,25117],{"class":3557}," 'Захід'",[3536,25119,4390],{"class":3546},[3536,25121,25122],{"class":3538,"line":7833},[3536,25123,4579],{"class":3546},[3536,25125,25126],{"class":3538,"line":7843},[3536,25127,7708],{"class":3546},[3536,25129,25130,25132,25135],{"class":3538,"line":7848},[3536,25131,4552],{"class":3542},[3536,25133,25134],{"class":3557}," '3'",[3536,25136,4390],{"class":3546},[3536,25138,25139,25141,25144],{"class":3538,"line":7854},[3536,25140,7723],{"class":3542},[3536,25142,25143],{"class":3557}," 'Одеса біля моря'",[3536,25145,4390],{"class":3546},[3536,25147,25148,25150,25153],{"class":3538,"line":7859},[3536,25149,25020],{"class":3542},[3536,25151,25152],{"class":3557}," '18–22 лип. 2026'",[3536,25154,4390],{"class":3546},[3536,25156,25157,25159,25162],{"class":3538,"line":7888},[3536,25158,7733],{"class":3542},[3536,25160,25161],{"class":3557}," 'Схід сонця на набережній, рибний ринок і вечірній Привоз.'",[3536,25163,4390],{"class":3546},[3536,25165,25166],{"class":3538,"line":7914},[3536,25167,25039],{"class":3542},[3536,25169,25170,25173],{"class":3538,"line":7952},[3536,25171,25172],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1507525428034-b723cf961d3e?w=800&q=80'",[3536,25174,4390],{"class":3546},[3536,25176,25177,25179,25182],{"class":3538,"line":8796},[3536,25178,23268],{"class":3542},[3536,25180,25181],{"class":3557}," 'Південь'",[3536,25183,4390],{"class":3546},[3536,25185,25186],{"class":3538,"line":8838},[3536,25187,4579],{"class":3546},[3536,25189,25190],{"class":3538,"line":8877},[3536,25191,7708],{"class":3546},[3536,25193,25194,25196,25199],{"class":3538,"line":8918},[3536,25195,4552],{"class":3542},[3536,25197,25198],{"class":3557}," '4'",[3536,25200,4390],{"class":3546},[3536,25202,25203,25205,25208],{"class":3538,"line":8928},[3536,25204,7723],{"class":3542},[3536,25206,25207],{"class":3557}," 'Київ на три дні'",[3536,25209,4390],{"class":3546},[3536,25211,25212,25214,25217],{"class":3538,"line":8938},[3536,25213,25020],{"class":3542},[3536,25215,25216],{"class":3557}," '5–7 черв. 2026'",[3536,25218,4390],{"class":3546},[3536,25220,25221,25223,25226],{"class":3538,"line":8946},[3536,25222,7733],{"class":3542},[3536,25224,25225],{"class":3557}," 'Поділ, Андріївський узвіз, вечірня прогулянка Хрещатиком.'",[3536,25227,4390],{"class":3546},[3536,25229,25230],{"class":3538,"line":8965},[3536,25231,25039],{"class":3542},[3536,25233,25234,25237],{"class":3538,"line":8993},[3536,25235,25236],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1565008576549-57569a49371d?w=800&q=80'",[3536,25238,4390],{"class":3546},[3536,25240,25241,25243,25246],{"class":3538,"line":8999},[3536,25242,23268],{"class":3542},[3536,25244,25245],{"class":3557}," 'Центр'",[3536,25247,4390],{"class":3546},[3536,25249,25250],{"class":3538,"line":9032},[3536,25251,4579],{"class":3546},[3536,25253,25254],{"class":3538,"line":9041},[3536,25255,7708],{"class":3546},[3536,25257,25258,25260,25263],{"class":3538,"line":9051},[3536,25259,4552],{"class":3542},[3536,25261,25262],{"class":3557}," '5'",[3536,25264,4390],{"class":3546},[3536,25266,25267,25269,25272],{"class":3538,"line":9059},[3536,25268,7723],{"class":3542},[3536,25270,25271],{"class":3557}," 'Чернівці: університет і дворики'",[3536,25273,4390],{"class":3546},[3536,25275,25276,25278,25281],{"class":3538,"line":9065},[3536,25277,25020],{"class":3542},[3536,25279,25280],{"class":3557}," '20–22 вер. 2026'",[3536,25282,4390],{"class":3546},[3536,25284,25285,25287,25290],{"class":3538,"line":9070},[3536,25286,7733],{"class":3542},[3536,25288,25289],{"class":3557}," 'Резиденція митрополитів, кава на Кобилянській, нічний двір.'",[3536,25291,4390],{"class":3546},[3536,25293,25294],{"class":3538,"line":9077},[3536,25295,25039],{"class":3542},[3536,25297,25298,25301],{"class":3538,"line":9096},[3536,25299,25300],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1519681393784-d120267933ba?w=800&q=80'",[3536,25302,4390],{"class":3546},[3536,25304,25305,25307,25309],{"class":3538,"line":9125},[3536,25306,23268],{"class":3542},[3536,25308,25117],{"class":3557},[3536,25310,4390],{"class":3546},[3536,25312,25313],{"class":3538,"line":9130},[3536,25314,4579],{"class":3546},[3536,25316,25317],{"class":3538,"line":9163},[3536,25318,7708],{"class":3546},[3536,25320,25321,25323,25326],{"class":3538,"line":9172},[3536,25322,4552],{"class":3542},[3536,25324,25325],{"class":3557}," '6'",[3536,25327,4390],{"class":3546},[3536,25329,25330,25332,25335],{"class":3538,"line":9181},[3536,25331,7723],{"class":3542},[3536,25333,25334],{"class":3557}," 'Кам’янець-Подільський'",[3536,25336,4390],{"class":3546},[3536,25338,25339,25341,25344],{"class":3538,"line":9186},[3536,25340,25020],{"class":3542},[3536,25342,25343],{"class":3557}," '11–13 квіт. 2026'",[3536,25345,4390],{"class":3546},[3536,25347,25348,25350,25353],{"class":3538,"line":9191},[3536,25349,7733],{"class":3542},[3536,25351,25352],{"class":3557}," 'Фортеця, каньйон Смотрича, захід сонця з оглядового майданчика.'",[3536,25354,4390],{"class":3546},[3536,25356,25357],{"class":3538,"line":9196},[3536,25358,25039],{"class":3542},[3536,25360,25361,25364],{"class":3538,"line":9215},[3536,25362,25363],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1506905925346-21bda4d32df4?w=800&q=80'",[3536,25365,4390],{"class":3546},[3536,25367,25368,25370,25372],{"class":3538,"line":9237},[3536,25369,23268],{"class":3542},[3536,25371,25117],{"class":3557},[3536,25373,4390],{"class":3546},[3536,25375,25376],{"class":3538,"line":9245},[3536,25377,4579],{"class":3546},[3536,25379,25380],{"class":3538,"line":9256},[3536,25381,7708],{"class":3546},[3536,25383,25384,25386,25389],{"class":3538,"line":9267},[3536,25385,4552],{"class":3542},[3536,25387,25388],{"class":3557}," '7'",[3536,25390,4390],{"class":3546},[3536,25392,25393,25395,25398],{"class":3538,"line":9278},[3536,25394,7723],{"class":3542},[3536,25396,25397],{"class":3557}," 'Харків: місто й парки'",[3536,25399,4390],{"class":3546},[3536,25401,25402,25404,25407],{"class":3538,"line":9289},[3536,25403,25020],{"class":3542},[3536,25405,25406],{"class":3557}," '8–10 серп. 2026'",[3536,25408,4390],{"class":3546},[3536,25410,25411,25413,25416],{"class":3538,"line":9300},[3536,25412,7733],{"class":3542},[3536,25414,25415],{"class":3557}," 'Саржин яр, набережна, вечірні вогні Сумської.'",[3536,25417,4390],{"class":3546},[3536,25419,25420],{"class":3538,"line":9305},[3536,25421,25039],{"class":3542},[3536,25423,25424,25427],{"class":3538,"line":9313},[3536,25425,25426],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1449824913935-59a10b8d2000?w=800&q=80'",[3536,25428,4390],{"class":3546},[3536,25430,25431,25433,25436],{"class":3538,"line":9322},[3536,25432,23268],{"class":3542},[3536,25434,25435],{"class":3557}," 'Схід'",[3536,25437,4390],{"class":3546},[3536,25439,25440],{"class":3538,"line":9333},[3536,25441,4579],{"class":3546},[3536,25443,25444],{"class":3538,"line":9343},[3536,25445,7708],{"class":3546},[3536,25447,25448,25450,25453],{"class":3538,"line":9352},[3536,25449,4552],{"class":3542},[3536,25451,25452],{"class":3557}," '8'",[3536,25454,4390],{"class":3546},[3536,25456,25457,25459,25462],{"class":3538,"line":9362},[3536,25458,7723],{"class":3542},[3536,25460,25461],{"class":3557}," 'Дніпро: мости й пагорби'",[3536,25463,4390],{"class":3546},[3536,25465,25466,25468,25471],{"class":3538,"line":9372},[3536,25467,25020],{"class":3542},[3536,25469,25470],{"class":3557}," '15–17 трав. 2026'",[3536,25472,4390],{"class":3546},[3536,25474,25475,25477,25480],{"class":3538,"line":9377},[3536,25476,7733],{"class":3542},[3536,25478,25479],{"class":3557}," 'Мереживо мостів, прогулянка набережною, кава з видом на річку.'",[3536,25481,4390],{"class":3546},[3536,25483,25484],{"class":3538,"line":9400},[3536,25485,25039],{"class":3542},[3536,25487,25488,25491],{"class":3538,"line":9408},[3536,25489,25490],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1476514525535-07fb3b4ae5f1?w=800&q=80'",[3536,25492,4390],{"class":3546},[3536,25494,25495,25497,25499],{"class":3538,"line":9419},[3536,25496,23268],{"class":3542},[3536,25498,25245],{"class":3557},[3536,25500,4390],{"class":3546},[3536,25502,25503],{"class":3538,"line":9429},[3536,25504,4579],{"class":3546},[3536,25506,25507],{"class":3538,"line":9439},[3536,25508,7708],{"class":3546},[3536,25510,25511,25513,25516],{"class":3538,"line":9450},[3536,25512,4552],{"class":3542},[3536,25514,25515],{"class":3557}," '9'",[3536,25517,4390],{"class":3546},[3536,25519,25520,25522,25525],{"class":3538,"line":9461},[3536,25521,7723],{"class":3542},[3536,25523,25524],{"class":3557}," 'Ужгород і виноград'",[3536,25526,4390],{"class":3546},[3536,25528,25529,25531,25534],{"class":3538,"line":9471},[3536,25530,25020],{"class":3542},[3536,25532,25533],{"class":3557}," '25–27 жовт. 2026'",[3536,25535,4390],{"class":3546},[3536,25537,25538,25540,25543],{"class":3538,"line":9476},[3536,25539,7733],{"class":3542},[3536,25541,25542],{"class":3557}," 'Замок, липова алея, дегустація біля місцевих виноробів.'",[3536,25544,4390],{"class":3546},[3536,25546,25547],{"class":3538,"line":9505},[3536,25548,25039],{"class":3542},[3536,25550,25551,25554],{"class":3538,"line":9540},[3536,25552,25553],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1500530855697-b586d89ba3ee?w=800&q=80'",[3536,25555,4390],{"class":3546},[3536,25557,25558,25560,25562],{"class":3538,"line":9560},[3536,25559,23268],{"class":3542},[3536,25561,25053],{"class":3557},[3536,25563,4390],{"class":3546},[3536,25565,25566],{"class":3538,"line":9568},[3536,25567,4579],{"class":3546},[3536,25569,25570],{"class":3538,"line":9578},[3536,25571,7708],{"class":3546},[3536,25573,25574,25576,25579],{"class":3538,"line":9588},[3536,25575,4552],{"class":3542},[3536,25577,25578],{"class":3557}," '10'",[3536,25580,4390],{"class":3546},[3536,25582,25583,25585,25588],{"class":3538,"line":9597},[3536,25584,7723],{"class":3542},[3536,25586,25587],{"class":3557}," 'Полтава: смаки й історія'",[3536,25589,4390],{"class":3546},[3536,25591,25592,25594,25597],{"class":3538,"line":9606},[3536,25593,25020],{"class":3542},[3536,25595,25596],{"class":3557}," '3–5 лип. 2026'",[3536,25598,4390],{"class":3546},[3536,25600,25601,25603,25606],{"class":3538,"line":9615},[3536,25602,7733],{"class":3542},[3536,25604,25605],{"class":3557}," 'Котлета по-київськи — ні, галушки; музей і тихі двори.'",[3536,25607,4390],{"class":3546},[3536,25609,25610],{"class":3538,"line":9626},[3536,25611,25039],{"class":3542},[3536,25613,25614,25617],{"class":3538,"line":9631},[3536,25615,25616],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1469474968028-56623f02e42e?w=800&q=80'",[3536,25618,4390],{"class":3546},[3536,25620,25621,25623,25625],{"class":3538,"line":9651},[3536,25622,23268],{"class":3542},[3536,25624,25245],{"class":3557},[3536,25626,4390],{"class":3546},[3536,25628,25629],{"class":3538,"line":9672},[3536,25630,4579],{"class":3546},[3536,25632,25633],{"class":3538,"line":9693},[3536,25634,7708],{"class":3546},[3536,25636,25637,25639,25642],{"class":3538,"line":14653},[3536,25638,4552],{"class":3542},[3536,25640,25641],{"class":3557}," '11'",[3536,25643,4390],{"class":3546},[3536,25645,25646,25648,25651],{"class":3538,"line":14667},[3536,25647,7723],{"class":3542},[3536,25649,25650],{"class":3557}," 'Затока: пісок і шторм'",[3536,25652,4390],{"class":3546},[3536,25654,25655,25657,25660],{"class":3538,"line":14672},[3536,25656,25020],{"class":3542},[3536,25658,25659],{"class":3557}," '1–7 серп. 2026'",[3536,25661,4390],{"class":3546},[3536,25663,25664,25666,25669],{"class":3538,"line":14680},[3536,25665,7733],{"class":3542},[3536,25667,25668],{"class":3557}," 'Ранкові купання, вечірній вітер, книжка під парасолькою.'",[3536,25670,4390],{"class":3546},[3536,25672,25673],{"class":3538,"line":14685},[3536,25674,25039],{"class":3542},[3536,25676,25677,25680],{"class":3538,"line":14717},[3536,25678,25679],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1507525428034-b723cf961d3e?w=600&q=80'",[3536,25681,4390],{"class":3546},[3536,25683,25684,25686,25688],{"class":3538,"line":14723},[3536,25685,23268],{"class":3542},[3536,25687,25181],{"class":3557},[3536,25689,4390],{"class":3546},[3536,25691,25692],{"class":3538,"line":14732},[3536,25693,4579],{"class":3546},[3536,25695,25696],{"class":3538,"line":14740},[3536,25697,7708],{"class":3546},[3536,25699,25700,25702,25705],{"class":3538,"line":14751},[3536,25701,4552],{"class":3542},[3536,25703,25704],{"class":3557}," '12'",[3536,25706,4390],{"class":3546},[3536,25708,25709,25711,25714],{"class":3538,"line":14769},[3536,25710,7723],{"class":3542},[3536,25712,25713],{"class":3557}," 'Яремче: водоспад і ліс'",[3536,25715,4390],{"class":3546},[3536,25717,25718,25720,25723],{"class":3538,"line":14787},[3536,25719,25020],{"class":3542},[3536,25721,25722],{"class":3557}," '19–21 черв. 2026'",[3536,25724,4390],{"class":3546},[3536,25726,25727,25729,25732],{"class":3538,"line":14792},[3536,25728,7733],{"class":3542},[3536,25730,25731],{"class":3557}," 'Прогулянка до водоспаду, гуцульська кухня, туман над смереками.'",[3536,25733,4390],{"class":3546},[3536,25735,25736],{"class":3538,"line":14798},[3536,25737,25039],{"class":3542},[3536,25739,25740,25743],{"class":3538,"line":14807},[3536,25741,25742],{"class":3557},"      'https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1441974231531-c6227db76b6e?w=800&q=80'",[3536,25744,4390],{"class":3546},[3536,25746,25747,25749,25751],{"class":3538,"line":14816},[3536,25748,23268],{"class":3542},[3536,25750,25053],{"class":3557},[3536,25752,4390],{"class":3546},[3536,25754,25755],{"class":3538,"line":14821},[3536,25756,4579],{"class":3546},[3536,25758,25759],{"class":3538,"line":14826},[3536,25760,7851],{"class":3546},[3526,25762,25765],{"className":7615,"code":25763,"filename":25764,"language":7617,"meta":3531,"style":3531},"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",[3533,25766,25767,25785,25789,25794,25809,25813,25822,25831,25841,25850,25860,25864,25868,25877,25885,25894,25902,25911,25915,25919,25928,25936,25945,25954,25963,25967,25971,25980,25988,25997,26005,26014,26018,26022,26031,26039,26048,26057,26066,26070,26074,26083,26091,26100,26108,26117,26121,26125,26134,26142,26151,26160,26169,26173,26177,26186,26194,26203,26212,26221,26225,26229,26238,26246,26255,26264,26273,26277,26281,26290,26298,26307,26316,26325,26329],{"__ignoreMap":3531},[3536,25768,25769,25771,25773,25775,25777,25779,25781,25783],{"class":3538,"line":3539},[3536,25770,4726],{"class":4725},[3536,25772,7626],{"class":4725},[3536,25774,3596],{"class":3546},[3536,25776,13783],{"class":3542},[3536,25778,4733],{"class":3546},[3536,25780,4736],{"class":4725},[3536,25782,23118],{"class":3557},[3536,25784,4742],{"class":3546},[3536,25786,25787],{"class":3538,"line":4381},[3536,25788,4748],{"emptyLinePlaceholder":4747},[3536,25790,25791],{"class":3538,"line":4393},[3536,25792,25793],{"class":4573},"\u002F** Місця всередині поїздок — для горизонтальної стрічки на home. *\u002F\n",[3536,25795,25796,25798,25800,25803,25805,25807],{"class":3538,"line":4414},[3536,25797,4753],{"class":4725},[3536,25799,7692],{"class":3561},[3536,25801,25802],{"class":3599}," mockPlaces",[3536,25804,3613],{"class":3546},[3536,25806,13783],{"class":3616},[3536,25808,7703],{"class":3546},[3536,25810,25811],{"class":3538,"line":4470},[3536,25812,7708],{"class":3546},[3536,25814,25815,25817,25820],{"class":3538,"line":4479},[3536,25816,4552],{"class":3542},[3536,25818,25819],{"class":3557}," 'p1'",[3536,25821,4390],{"class":3546},[3536,25823,25824,25827,25829],{"class":3538,"line":4484},[3536,25825,25826],{"class":3542},"    tripId:",[3536,25828,25004],{"class":3557},[3536,25830,4390],{"class":3546},[3536,25832,25833,25836,25839],{"class":3538,"line":4490},[3536,25834,25835],{"class":3542},"    name:",[3536,25837,25838],{"class":3557}," 'Говерла'",[3536,25840,4390],{"class":3546},[3536,25842,25843,25846,25848],{"class":3538,"line":7163},[3536,25844,25845],{"class":3542},"    city:",[3536,25847,25053],{"class":3557},[3536,25849,4390],{"class":3546},[3536,25851,25852,25855,25858],{"class":3538,"line":7171},[3536,25853,25854],{"class":3542},"    note:",[3536,25856,25857],{"class":3557}," 'Схід сонця з вершини'",[3536,25859,4390],{"class":3546},[3536,25861,25862],{"class":3538,"line":7177},[3536,25863,4579],{"class":3546},[3536,25865,25866],{"class":3538,"line":7190},[3536,25867,7708],{"class":3546},[3536,25869,25870,25872,25875],{"class":3538,"line":7203},[3536,25871,4552],{"class":3542},[3536,25873,25874],{"class":3557}," 'p2'",[3536,25876,4390],{"class":3546},[3536,25878,25879,25881,25883],{"class":3538,"line":7214},[3536,25880,25826],{"class":3542},[3536,25882,25004],{"class":3557},[3536,25884,4390],{"class":3546},[3536,25886,25887,25889,25892],{"class":3538,"line":7220},[3536,25888,25835],{"class":3542},[3536,25890,25891],{"class":3557}," 'Котедж біля полонини'",[3536,25893,4390],{"class":3546},[3536,25895,25896,25898,25900],{"class":3538,"line":7226},[3536,25897,25845],{"class":3542},[3536,25899,25053],{"class":3557},[3536,25901,4390],{"class":3546},[3536,25903,25904,25906,25909],{"class":3538,"line":7244},[3536,25905,25854],{"class":3542},[3536,25907,25908],{"class":3557}," 'Вечірній чай і камін'",[3536,25910,4390],{"class":3546},[3536,25912,25913],{"class":3538,"line":7250},[3536,25914,4579],{"class":3546},[3536,25916,25917],{"class":3538,"line":7256},[3536,25918,7708],{"class":3546},[3536,25920,25921,25923,25926],{"class":3538,"line":7261},[3536,25922,4552],{"class":3542},[3536,25924,25925],{"class":3557}," 'p3'",[3536,25927,4390],{"class":3546},[3536,25929,25930,25932,25934],{"class":3538,"line":7266},[3536,25931,25826],{"class":3542},[3536,25933,25070],{"class":3557},[3536,25935,4390],{"class":3546},[3536,25937,25938,25940,25943],{"class":3538,"line":7803},[3536,25939,25835],{"class":3542},[3536,25941,25942],{"class":3557}," 'Площа Ринок'",[3536,25944,4390],{"class":3546},[3536,25946,25947,25949,25952],{"class":3538,"line":7813},[3536,25948,25845],{"class":3542},[3536,25950,25951],{"class":3557}," 'Львів'",[3536,25953,4390],{"class":3546},[3536,25955,25956,25958,25961],{"class":3538,"line":7823},[3536,25957,25854],{"class":3542},[3536,25959,25960],{"class":3557}," 'Ратуша й кав’ярні'",[3536,25962,4390],{"class":3546},[3536,25964,25965],{"class":3538,"line":7833},[3536,25966,4579],{"class":3546},[3536,25968,25969],{"class":3538,"line":7843},[3536,25970,7708],{"class":3546},[3536,25972,25973,25975,25978],{"class":3538,"line":7848},[3536,25974,4552],{"class":3542},[3536,25976,25977],{"class":3557}," 'p4'",[3536,25979,4390],{"class":3546},[3536,25981,25982,25984,25986],{"class":3538,"line":7854},[3536,25983,25826],{"class":3542},[3536,25985,25070],{"class":3557},[3536,25987,4390],{"class":3546},[3536,25989,25990,25992,25995],{"class":3538,"line":7859},[3536,25991,25835],{"class":3542},[3536,25993,25994],{"class":3557}," 'Високий Замок'",[3536,25996,4390],{"class":3546},[3536,25998,25999,26001,26003],{"class":3538,"line":7888},[3536,26000,25845],{"class":3542},[3536,26002,25951],{"class":3557},[3536,26004,4390],{"class":3546},[3536,26006,26007,26009,26012],{"class":3538,"line":7914},[3536,26008,25854],{"class":3542},[3536,26010,26011],{"class":3557}," 'Панорама міста'",[3536,26013,4390],{"class":3546},[3536,26015,26016],{"class":3538,"line":7952},[3536,26017,4579],{"class":3546},[3536,26019,26020],{"class":3538,"line":8796},[3536,26021,7708],{"class":3546},[3536,26023,26024,26026,26029],{"class":3538,"line":8838},[3536,26025,4552],{"class":3542},[3536,26027,26028],{"class":3557}," 'p5'",[3536,26030,4390],{"class":3546},[3536,26032,26033,26035,26037],{"class":3538,"line":8877},[3536,26034,25826],{"class":3542},[3536,26036,25134],{"class":3557},[3536,26038,4390],{"class":3546},[3536,26040,26041,26043,26046],{"class":3538,"line":8918},[3536,26042,25835],{"class":3542},[3536,26044,26045],{"class":3557}," 'Дерибасівська'",[3536,26047,4390],{"class":3546},[3536,26049,26050,26052,26055],{"class":3538,"line":8928},[3536,26051,25845],{"class":3542},[3536,26053,26054],{"class":3557}," 'Одеса'",[3536,26056,4390],{"class":3546},[3536,26058,26059,26061,26064],{"class":3538,"line":8938},[3536,26060,25854],{"class":3542},[3536,26062,26063],{"class":3557}," 'Прогулянка ввечері'",[3536,26065,4390],{"class":3546},[3536,26067,26068],{"class":3538,"line":8946},[3536,26069,4579],{"class":3546},[3536,26071,26072],{"class":3538,"line":8965},[3536,26073,7708],{"class":3546},[3536,26075,26076,26078,26081],{"class":3538,"line":8993},[3536,26077,4552],{"class":3542},[3536,26079,26080],{"class":3557}," 'p6'",[3536,26082,4390],{"class":3546},[3536,26084,26085,26087,26089],{"class":3538,"line":8999},[3536,26086,25826],{"class":3542},[3536,26088,25134],{"class":3557},[3536,26090,4390],{"class":3546},[3536,26092,26093,26095,26098],{"class":3538,"line":9032},[3536,26094,25835],{"class":3542},[3536,26096,26097],{"class":3557}," 'Ланжерон'",[3536,26099,4390],{"class":3546},[3536,26101,26102,26104,26106],{"class":3538,"line":9041},[3536,26103,25845],{"class":3542},[3536,26105,26054],{"class":3557},[3536,26107,4390],{"class":3546},[3536,26109,26110,26112,26115],{"class":3538,"line":9051},[3536,26111,25854],{"class":3542},[3536,26113,26114],{"class":3557}," 'Пляж і набережна'",[3536,26116,4390],{"class":3546},[3536,26118,26119],{"class":3538,"line":9059},[3536,26120,4579],{"class":3546},[3536,26122,26123],{"class":3538,"line":9065},[3536,26124,7708],{"class":3546},[3536,26126,26127,26129,26132],{"class":3538,"line":9070},[3536,26128,4552],{"class":3542},[3536,26130,26131],{"class":3557}," 'p7'",[3536,26133,4390],{"class":3546},[3536,26135,26136,26138,26140],{"class":3538,"line":9077},[3536,26137,25826],{"class":3542},[3536,26139,25198],{"class":3557},[3536,26141,4390],{"class":3546},[3536,26143,26144,26146,26149],{"class":3538,"line":9096},[3536,26145,25835],{"class":3542},[3536,26147,26148],{"class":3557}," 'Андріївський узвіз'",[3536,26150,4390],{"class":3546},[3536,26152,26153,26155,26158],{"class":3538,"line":9125},[3536,26154,25845],{"class":3542},[3536,26156,26157],{"class":3557}," 'Київ'",[3536,26159,4390],{"class":3546},[3536,26161,26162,26164,26167],{"class":3538,"line":9130},[3536,26163,25854],{"class":3542},[3536,26165,26166],{"class":3557}," 'Галереї й бруківка'",[3536,26168,4390],{"class":3546},[3536,26170,26171],{"class":3538,"line":9163},[3536,26172,4579],{"class":3546},[3536,26174,26175],{"class":3538,"line":9172},[3536,26176,7708],{"class":3546},[3536,26178,26179,26181,26184],{"class":3538,"line":9181},[3536,26180,4552],{"class":3542},[3536,26182,26183],{"class":3557}," 'p8'",[3536,26185,4390],{"class":3546},[3536,26187,26188,26190,26192],{"class":3538,"line":9186},[3536,26189,25826],{"class":3542},[3536,26191,25325],{"class":3557},[3536,26193,4390],{"class":3546},[3536,26195,26196,26198,26201],{"class":3538,"line":9191},[3536,26197,25835],{"class":3542},[3536,26199,26200],{"class":3557}," 'Стара фортеця'",[3536,26202,4390],{"class":3546},[3536,26204,26205,26207,26210],{"class":3538,"line":9196},[3536,26206,25845],{"class":3542},[3536,26208,26209],{"class":3557}," 'Кам’янець'",[3536,26211,4390],{"class":3546},[3536,26213,26214,26216,26219],{"class":3538,"line":9215},[3536,26215,25854],{"class":3542},[3536,26217,26218],{"class":3557}," 'Фото з мосту'",[3536,26220,4390],{"class":3546},[3536,26222,26223],{"class":3538,"line":9237},[3536,26224,4579],{"class":3546},[3536,26226,26227],{"class":3538,"line":9245},[3536,26228,7708],{"class":3546},[3536,26230,26231,26233,26236],{"class":3538,"line":9256},[3536,26232,4552],{"class":3542},[3536,26234,26235],{"class":3557}," 'p9'",[3536,26237,4390],{"class":3546},[3536,26239,26240,26242,26244],{"class":3538,"line":9267},[3536,26241,25826],{"class":3542},[3536,26243,25515],{"class":3557},[3536,26245,4390],{"class":3546},[3536,26247,26248,26250,26253],{"class":3538,"line":9278},[3536,26249,25835],{"class":3542},[3536,26251,26252],{"class":3557}," 'Ужгородський замок'",[3536,26254,4390],{"class":3546},[3536,26256,26257,26259,26262],{"class":3538,"line":9289},[3536,26258,25845],{"class":3542},[3536,26260,26261],{"class":3557}," 'Ужгород'",[3536,26263,4390],{"class":3546},[3536,26265,26266,26268,26271],{"class":3538,"line":9300},[3536,26267,25854],{"class":3542},[3536,26269,26270],{"class":3557}," 'Музей і сад'",[3536,26272,4390],{"class":3546},[3536,26274,26275],{"class":3538,"line":9305},[3536,26276,4579],{"class":3546},[3536,26278,26279],{"class":3538,"line":9313},[3536,26280,7708],{"class":3546},[3536,26282,26283,26285,26288],{"class":3538,"line":9322},[3536,26284,4552],{"class":3542},[3536,26286,26287],{"class":3557}," 'p10'",[3536,26289,4390],{"class":3546},[3536,26291,26292,26294,26296],{"class":3538,"line":9333},[3536,26293,25826],{"class":3542},[3536,26295,25704],{"class":3557},[3536,26297,4390],{"class":3546},[3536,26299,26300,26302,26305],{"class":3538,"line":9343},[3536,26301,25835],{"class":3542},[3536,26303,26304],{"class":3557}," 'Водоспад Пробій'",[3536,26306,4390],{"class":3546},[3536,26308,26309,26311,26314],{"class":3538,"line":9352},[3536,26310,25845],{"class":3542},[3536,26312,26313],{"class":3557}," 'Яремче'",[3536,26315,4390],{"class":3546},[3536,26317,26318,26320,26323],{"class":3538,"line":9362},[3536,26319,25854],{"class":3542},[3536,26321,26322],{"class":3557}," 'Шум води й місток'",[3536,26324,4390],{"class":3546},[3536,26326,26327],{"class":3538,"line":9372},[3536,26328,4579],{"class":3546},[3536,26330,26331],{"class":3538,"line":9377},[3536,26332,7851],{"class":3546},[3526,26334,26337],{"className":7615,"code":26335,"filename":26336,"language":7617,"meta":3531,"style":3531},"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",[3533,26338,26339,26356,26374,26378,26383,26407,26437],{"__ignoreMap":3531},[3536,26340,26341,26343,26345,26347,26349,26351,26354],{"class":3538,"line":3539},[3536,26342,4726],{"class":4725},[3536,26344,3596],{"class":3546},[3536,26346,13789],{"class":3542},[3536,26348,4733],{"class":3546},[3536,26350,4736],{"class":4725},[3536,26352,26353],{"class":3557}," '.\u002FmockPlaces'",[3536,26355,4742],{"class":3546},[3536,26357,26358,26360,26362,26364,26366,26368,26370,26372],{"class":3538,"line":4381},[3536,26359,4726],{"class":4725},[3536,26361,7626],{"class":4725},[3536,26363,3596],{"class":3546},[3536,26365,13783],{"class":3542},[3536,26367,4733],{"class":3546},[3536,26369,4736],{"class":4725},[3536,26371,23118],{"class":3557},[3536,26373,4742],{"class":3546},[3536,26375,26376],{"class":3538,"line":4393},[3536,26377,4748],{"emptyLinePlaceholder":4747},[3536,26379,26380],{"class":3538,"line":4414},[3536,26381,26382],{"class":4573},"\u002F** Місця, прив’язані до поїздки (mock). *\u002F\n",[3536,26384,26385,26387,26389,26392,26394,26396,26398,26400,26402,26404],{"class":3538,"line":4470},[3536,26386,4753],{"class":4725},[3536,26388,4759],{"class":3561},[3536,26390,26391],{"class":3550}," getPlacesForTrip",[3536,26393,3554],{"class":3546},[3536,26395,4192],{"class":3542},[3536,26397,3613],{"class":3546},[3536,26399,3617],{"class":3616},[3536,26401,7877],{"class":3546},[3536,26403,13783],{"class":3616},[3536,26405,26406],{"class":3546},"[] {\n",[3536,26408,26409,26411,26413,26415,26417,26419,26421,26423,26425,26427,26429,26431,26433,26435],{"class":3538,"line":4479},[3536,26410,4982],{"class":4725},[3536,26412,25802],{"class":3542},[3536,26414,3547],{"class":3546},[3536,26416,4640],{"class":3550},[3536,26418,7926],{"class":3546},[3536,26420,3517],{"class":3542},[3536,26422,7932],{"class":3546},[3536,26424,5042],{"class":3561},[3536,26426,15327],{"class":3542},[3536,26428,3547],{"class":3546},[3536,26430,4192],{"class":3542},[3536,26432,7944],{"class":3546},[3536,26434,4192],{"class":3542},[3536,26436,3580],{"class":3546},[3536,26438,26439],{"class":3538,"line":4484},[3536,26440,4476],{"class":3546},[3526,26442,26445],{"className":3528,"code":26443,"filename":26444,"language":3530,"meta":3531,"style":3531},"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",[3533,26446,26447,26463,26469,26476,26482,26488,26494,26501,26507,26517,26540,26558,26576,26590,26604,26608,26614,26620,26628,26639,26656,26679,26696,26713,26729,26754,26758,26767,26788,26802,26806,26810,26823,26840,26869,26877,26881,26885,26916,26934,26958,26966,26970,26974,26978,26983,26988,26992,27003,27009,27015,27025,27047,27071,27075,27081,27088,27095,27102,27114,27129,27144,27151,27160,27169,27178,27187,27206,27215,27225,27234,27239,27257,27261,27271,27281,27285,27289,27308,27326,27330,27352,27363,27375,27400,27413,27425,27437,27462,27492,27504,27516,27528,27533,27544,27554,27558,27562,27568,27575,27592,27625,27654,27658,27664,27680,27690,27701,27736,27742,27752,27762,27770,27774,27802,27807,27812,27817,27825,27829,27838,27845,27859,27868,27902,27909,27918,27928,27941,27954,27967,27990,28000,28010,28023,28027,28033,28037,28041,28050,28056,28068,28077,28103,28110,28119,28129,28149,28154,28163,28169,28179,28190,28194,28206,28218,28231,28243,28256,28260,28266,28270,28277,28290,28303,28320,28342,28346,28366,28374,28387,28400,28413,28430,28435,28442,28450,28458,28463,28467,28473,28477,28481,28490,28496,28508,28517,28547,28554,28563,28575,28588,28600,28620,28624,28630,28634,28638,28644,28656,28665,28695,28701,28710,28722,28734,28746,28766,28779,28783,28789,28793,28797,28806,28812,28824,28833,28863,28869,28878,28887,28899,28911,28923,28943,28948,28962,28972,28989,29001,29011,29015,29021,29025,29029,29038,29044,29056,29065,29091,29097,29131,29140,29160,29164,29172,29179,29192,29205,29218,29231,29244,29261,29278,29295,29300,29304,29308,29314,29318,29346,29362,29384,29390,29399,29404,29414,29421,29434,29444,29471,29478,29488,29498,29519,29528,29536,29549,29562,29574,29588,29602,29610,29628,29646,29651,29656,29661,29668,29673,29678,29688,29695,29708,29718,29745,29752,29762,29772,29793,29802,29810,29823,29836,29848,29861,29874,29881,29899,29917,29935,29946,29951,29956,29961,29968,29973,29978,29988,29995,30008,30018,30045,30052,30062,30072,30094,30103,30110,30130,30143,30154,30167,30180,30187,30204,30221,30238,30247,30252,30257,30262,30269,30274,30279,30289,30328,30335,30358,30379,30393,30398,30410,30417,30427,30436,30449,30463,30468,30477,30486,30495,30505,30510,30515,30520,30543,30573,30592,30626,30649,30681,30690,30695,30700,30717,30725,30734,30739,30747,30757,30762,30770,30781,30786,30794,30803,30814,30819],{"__ignoreMap":3531},[3536,26448,26449,26451,26453,26455,26457,26459,26461],{"class":3538,"line":3539},[3536,26450,4726],{"class":4725},[3536,26452,3596],{"class":3546},[3536,26454,13378],{"class":3542},[3536,26456,4733],{"class":3546},[3536,26458,4736],{"class":4725},[3536,26460,13385],{"class":3557},[3536,26462,4742],{"class":3546},[3536,26464,26465,26467],{"class":3538,"line":4381},[3536,26466,4726],{"class":4725},[3536,26468,4547],{"class":3546},[3536,26470,26471,26474],{"class":3538,"line":4393},[3536,26472,26473],{"class":3542},"  KeyboardAvoidingView",[3536,26475,4390],{"class":3546},[3536,26477,26478,26480],{"class":3538,"line":4414},[3536,26479,16584],{"class":3542},[3536,26481,4390],{"class":3546},[3536,26483,26484,26486],{"class":3538,"line":4470},[3536,26485,16591],{"class":3542},[3536,26487,4390],{"class":3546},[3536,26489,26490,26492],{"class":3538,"line":4479},[3536,26491,13419],{"class":3542},[3536,26493,4390],{"class":3546},[3536,26495,26496,26499],{"class":3538,"line":4484},[3536,26497,26498],{"class":3542},"  Switch",[3536,26500,4390],{"class":3546},[3536,26502,26503,26505],{"class":3538,"line":4490},[3536,26504,13426],{"class":3542},[3536,26506,4390],{"class":3546},[3536,26508,26509,26511,26513,26515],{"class":3538,"line":7163},[3536,26510,13433],{"class":3546},[3536,26512,4736],{"class":4725},[3536,26514,8281],{"class":3557},[3536,26516,4742],{"class":3546},[3536,26518,26519,26521,26523,26526,26528,26531,26533,26535,26538],{"class":3538,"line":7171},[3536,26520,4726],{"class":4725},[3536,26522,3596],{"class":3546},[3536,26524,26525],{"class":3542},"Controller",[3536,26527,3755],{"class":3546},[3536,26529,26530],{"class":3542},"useForm",[3536,26532,4733],{"class":3546},[3536,26534,4736],{"class":4725},[3536,26536,26537],{"class":3557}," 'react-hook-form'",[3536,26539,4742],{"class":3546},[3536,26541,26542,26544,26546,26549,26551,26553,26556],{"class":3538,"line":7177},[3536,26543,4726],{"class":4725},[3536,26545,3596],{"class":3546},[3536,26547,26548],{"class":3542},"zodResolver",[3536,26550,4733],{"class":3546},[3536,26552,4736],{"class":4725},[3536,26554,26555],{"class":3557}," '@hookform\u002Fresolvers\u002Fzod'",[3536,26557,4742],{"class":3546},[3536,26559,26560,26562,26564,26567,26569,26571,26574],{"class":3538,"line":7190},[3536,26561,4726],{"class":4725},[3536,26563,3596],{"class":3546},[3536,26565,26566],{"class":3542},"Picker",[3536,26568,4733],{"class":3546},[3536,26570,4736],{"class":4725},[3536,26572,26573],{"class":3557}," '@react-native-picker\u002Fpicker'",[3536,26575,4742],{"class":3546},[3536,26577,26578,26580,26583,26585,26588],{"class":3538,"line":7203},[3536,26579,4726],{"class":4725},[3536,26581,26582],{"class":3542}," Checkbox",[3536,26584,5855],{"class":4725},[3536,26586,26587],{"class":3557}," '@react-native-community\u002Fcheckbox'",[3536,26589,4742],{"class":3546},[3536,26591,26592,26594,26597,26599,26602],{"class":3538,"line":7214},[3536,26593,4726],{"class":4725},[3536,26595,26596],{"class":3542}," Slider",[3536,26598,5855],{"class":4725},[3536,26600,26601],{"class":3557}," '@react-native-community\u002Fslider'",[3536,26603,4742],{"class":3546},[3536,26605,26606],{"class":3538,"line":7220},[3536,26607,4748],{"emptyLinePlaceholder":4747},[3536,26609,26610,26612],{"class":3538,"line":7226},[3536,26611,4726],{"class":4725},[3536,26613,4547],{"class":3546},[3536,26615,26616,26618],{"class":3538,"line":7244},[3536,26617,22720],{"class":3542},[3536,26619,4390],{"class":3546},[3536,26621,26622,26624,26626],{"class":3538,"line":7250},[3536,26623,13516],{"class":4725},[3536,26625,22729],{"class":3542},[3536,26627,4390],{"class":3546},[3536,26629,26630,26632,26634,26637],{"class":3538,"line":7256},[3536,26631,13433],{"class":3546},[3536,26633,4736],{"class":4725},[3536,26635,26636],{"class":3557}," '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002FcreateTripSchema'",[3536,26638,4742],{"class":3546},[3536,26640,26641,26643,26645,26647,26649,26651,26654],{"class":3538,"line":7261},[3536,26642,4726],{"class":4725},[3536,26644,3596],{"class":3546},[3536,26646,22751],{"class":3542},[3536,26648,4733],{"class":3546},[3536,26650,4736],{"class":4725},[3536,26652,26653],{"class":3557}," '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002FformatTripDates'",[3536,26655,4742],{"class":3546},[3536,26657,26658,26660,26662,26664,26666,26668,26670,26672,26674,26677],{"class":3538,"line":7266},[3536,26659,4726],{"class":4725},[3536,26661,3596],{"class":3546},[3536,26663,22593],{"class":3542},[3536,26665,3755],{"class":3546},[3536,26667,13553],{"class":4725},[3536,26669,13528],{"class":3542},[3536,26671,4733],{"class":3546},[3536,26673,4736],{"class":4725},[3536,26675,26676],{"class":3557}," '@\u002Ffeatures\u002Ftrips\u002Fmodel\u002Ftypes'",[3536,26678,4742],{"class":3546},[3536,26680,26681,26683,26685,26687,26689,26691,26694],{"class":3538,"line":7803},[3536,26682,4726],{"class":4725},[3536,26684,3596],{"class":3546},[3536,26686,22661],{"class":3542},[3536,26688,4733],{"class":3546},[3536,26690,4736],{"class":4725},[3536,26692,26693],{"class":3557}," '@\u002Ffeatures\u002Ftrips\u002Fui\u002FDateField'",[3536,26695,4742],{"class":3546},[3536,26697,26698,26700,26702,26704,26706,26708,26711],{"class":3538,"line":7813},[3536,26699,4726],{"class":4725},[3536,26701,3596],{"class":3546},[3536,26703,22679],{"class":3542},[3536,26705,4733],{"class":3546},[3536,26707,4736],{"class":4725},[3536,26709,26710],{"class":3557}," '@\u002Ffeatures\u002Ftrips\u002Fui\u002FFormRow'",[3536,26712,4742],{"class":3546},[3536,26714,26715,26717,26719,26721,26723,26725,26727],{"class":3538,"line":7823},[3536,26716,4726],{"class":4725},[3536,26718,3596],{"class":3546},[3536,26720,11986],{"class":3542},[3536,26722,4733],{"class":3546},[3536,26724,4736],{"class":4725},[3536,26726,11993],{"class":3557},[3536,26728,4742],{"class":3546},[3536,26730,26731,26733,26735,26737,26739,26741,26743,26746,26748,26750,26752],{"class":3538,"line":7833},[3536,26732,4726],{"class":4725},[3536,26734,3596],{"class":3546},[3536,26736,6704],{"class":3542},[3536,26738,3755],{"class":3546},[3536,26740,5021],{"class":3542},[3536,26742,3755],{"class":3546},[3536,26744,26745],{"class":3542},"TextField",[3536,26747,4733],{"class":3546},[3536,26749,4736],{"class":4725},[3536,26751,13588],{"class":3557},[3536,26753,4742],{"class":3546},[3536,26755,26756],{"class":3538,"line":7843},[3536,26757,4748],{"emptyLinePlaceholder":4747},[3536,26759,26760,26762,26765],{"class":3538,"line":7848},[3536,26761,13553],{"class":3561},[3536,26763,26764],{"class":3616}," CreateTripFormProps",[3536,26766,7632],{"class":3546},[3536,26768,26769,26772,26774,26776,26778,26780,26782,26784,26786],{"class":3538,"line":7854},[3536,26770,26771],{"class":3550},"  onSubmitSuccess",[3536,26773,24378],{"class":3546},[3536,26775,3565],{"class":3542},[3536,26777,3613],{"class":3546},[3536,26779,4658],{"class":3616},[3536,26781,7932],{"class":3546},[3536,26783,5042],{"class":3561},[3536,26785,24421],{"class":3616},[3536,26787,4742],{"class":3546},[3536,26789,26790,26793,26796,26798,26800],{"class":3538,"line":7859},[3536,26791,26792],{"class":3550},"  onCancel",[3536,26794,26795],{"class":3546},"?: () ",[3536,26797,5042],{"class":3561},[3536,26799,24421],{"class":3616},[3536,26801,4742],{"class":3546},[3536,26803,26804],{"class":3538,"line":7888},[3536,26805,7681],{"class":3546},[3536,26807,26808],{"class":3538,"line":7914},[3536,26809,4748],{"emptyLinePlaceholder":4747},[3536,26811,26812,26814,26817,26819,26821],{"class":3538,"line":7952},[3536,26813,12068],{"class":3561},[3536,26815,26816],{"class":3550}," startOfToday",[3536,26818,24864],{"class":3546},[3536,26820,23776],{"class":3616},[3536,26822,4547],{"class":3546},[3536,26824,26825,26827,26830,26832,26835,26838],{"class":3538,"line":8796},[3536,26826,4770],{"class":3561},[3536,26828,26829],{"class":3599}," d",[3536,26831,4874],{"class":3546},[3536,26833,26834],{"class":3561},"new",[3536,26836,26837],{"class":3550}," Date",[3536,26839,7911],{"class":3546},[3536,26841,26842,26845,26847,26850,26852,26855,26857,26859,26861,26863,26865,26867],{"class":3538,"line":8838},[3536,26843,26844],{"class":3542},"  d",[3536,26846,3547],{"class":3546},[3536,26848,26849],{"class":3550},"setHours",[3536,26851,3554],{"class":3546},[3536,26853,26854],{"class":4897},"12",[3536,26856,3755],{"class":3546},[3536,26858,4898],{"class":4897},[3536,26860,3755],{"class":3546},[3536,26862,4898],{"class":4897},[3536,26864,3755],{"class":3546},[3536,26866,4898],{"class":4897},[3536,26868,3580],{"class":3546},[3536,26870,26871,26873,26875],{"class":3538,"line":8877},[3536,26872,4982],{"class":4725},[3536,26874,26829],{"class":3542},[3536,26876,4742],{"class":3546},[3536,26878,26879],{"class":3538,"line":8918},[3536,26880,4476],{"class":3546},[3536,26882,26883],{"class":3538,"line":8928},[3536,26884,4748],{"emptyLinePlaceholder":4747},[3536,26886,26887,26889,26892,26894,26897,26899,26901,26903,26906,26908,26910,26912,26914],{"class":3538,"line":8938},[3536,26888,12068],{"class":3561},[3536,26890,26891],{"class":3550}," addDays",[3536,26893,3554],{"class":3546},[3536,26895,26896],{"class":3542},"base",[3536,26898,3613],{"class":3546},[3536,26900,23776],{"class":3616},[3536,26902,3755],{"class":3546},[3536,26904,26905],{"class":3542},"days",[3536,26907,3613],{"class":3546},[3536,26909,22878],{"class":3616},[3536,26911,7877],{"class":3546},[3536,26913,23776],{"class":3616},[3536,26915,4547],{"class":3546},[3536,26917,26918,26920,26922,26924,26926,26928,26930,26932],{"class":3538,"line":8946},[3536,26919,4770],{"class":3561},[3536,26921,26829],{"class":3599},[3536,26923,4874],{"class":3546},[3536,26925,26834],{"class":3561},[3536,26927,26837],{"class":3550},[3536,26929,3554],{"class":3546},[3536,26931,26896],{"class":3542},[3536,26933,3580],{"class":3546},[3536,26935,26936,26938,26940,26943,26945,26947,26949,26951,26954,26956],{"class":3538,"line":8965},[3536,26937,26844],{"class":3542},[3536,26939,3547],{"class":3546},[3536,26941,26942],{"class":3550},"setDate",[3536,26944,3554],{"class":3546},[3536,26946,23771],{"class":3542},[3536,26948,3547],{"class":3546},[3536,26950,23797],{"class":3550},[3536,26952,26953],{"class":3546},"() + ",[3536,26955,26905],{"class":3542},[3536,26957,3580],{"class":3546},[3536,26959,26960,26962,26964],{"class":3538,"line":8993},[3536,26961,4982],{"class":4725},[3536,26963,26829],{"class":3542},[3536,26965,4742],{"class":3546},[3536,26967,26968],{"class":3538,"line":8999},[3536,26969,4476],{"class":3546},[3536,26971,26972],{"class":3538,"line":9032},[3536,26973,4748],{"emptyLinePlaceholder":4747},[3536,26975,26976],{"class":3538,"line":9041},[3536,26977,12004],{"class":4573},[3536,26979,26980],{"class":3538,"line":9051},[3536,26981,26982],{"class":4573}," * Форма «Нова поїздка»: усі основні form-контроли + RHF + Zod.\n",[3536,26984,26985],{"class":3538,"line":9059},[3536,26986,26987],{"class":4573}," * Не залежить від навігації — батько вирішує, куди піти після submit.\n",[3536,26989,26990],{"class":3538,"line":9065},[3536,26991,12034],{"class":4573},[3536,26993,26994,26996,26998,27001],{"class":3538,"line":9070},[3536,26995,4753],{"class":4725},[3536,26997,4759],{"class":3561},[3536,26999,27000],{"class":3550}," CreateTripForm",[3536,27002,4378],{"class":3546},[3536,27004,27005,27007],{"class":3538,"line":9077},[3536,27006,26771],{"class":3542},[3536,27008,4390],{"class":3546},[3536,27010,27011,27013],{"class":3538,"line":9096},[3536,27012,26792],{"class":3542},[3536,27014,4390],{"class":3546},[3536,27016,27017,27020,27023],{"class":3538,"line":9125},[3536,27018,27019],{"class":3546},"}: ",[3536,27021,27022],{"class":3616},"CreateTripFormProps",[3536,27024,4977],{"class":3546},[3536,27026,27027,27029,27031,27033,27035,27037,27039,27041,27043,27045],{"class":3538,"line":9130},[3536,27028,4770],{"class":3561},[3536,27030,3596],{"class":3546},[3536,27032,12082],{"class":3599},[3536,27034,3755],{"class":3546},[3536,27036,13743],{"class":3599},[3536,27038,3755],{"class":3546},[3536,27040,16927],{"class":3599},[3536,27042,3602],{"class":3546},[3536,27044,11986],{"class":3550},[3536,27046,7911],{"class":3546},[3536,27048,27049,27051,27053,27056,27058,27061,27063,27065,27067,27069],{"class":3538,"line":9163},[3536,27050,4770],{"class":3561},[3536,27052,13770],{"class":3546},[3536,27054,27055],{"class":3599},"submitting",[3536,27057,3755],{"class":3546},[3536,27059,27060],{"class":3599},"setSubmitting",[3536,27062,13776],{"class":3546},[3536,27064,13378],{"class":3550},[3536,27066,3554],{"class":3546},[3536,27068,13814],{"class":3561},[3536,27070,3580],{"class":3546},[3536,27072,27073],{"class":3538,"line":9172},[3536,27074,4748],{"emptyLinePlaceholder":4747},[3536,27076,27077,27079],{"class":3538,"line":9181},[3536,27078,4770],{"class":3561},[3536,27080,4547],{"class":3546},[3536,27082,27083,27086],{"class":3538,"line":9186},[3536,27084,27085],{"class":3599},"    control",[3536,27087,4390],{"class":3546},[3536,27089,27090,27093],{"class":3538,"line":9191},[3536,27091,27092],{"class":3599},"    handleSubmit",[3536,27094,4390],{"class":3546},[3536,27096,27097,27100],{"class":3538,"line":9196},[3536,27098,27099],{"class":3599},"    watch",[3536,27101,4390],{"class":3546},[3536,27103,27104,27107,27109,27112],{"class":3538,"line":9215},[3536,27105,27106],{"class":3542},"    formState",[3536,27108,13604],{"class":3546},[3536,27110,27111],{"class":3599},"errors",[3536,27113,4411],{"class":3546},[3536,27115,27116,27119,27121,27123,27126],{"class":3538,"line":9237},[3536,27117,27118],{"class":3546},"  } = ",[3536,27120,26530],{"class":3550},[3536,27122,4310],{"class":3546},[3536,27124,27125],{"class":3616},"CreateTripFormValues",[3536,27127,27128],{"class":3546},">({\n",[3536,27130,27131,27134,27137,27139,27142],{"class":3538,"line":9245},[3536,27132,27133],{"class":3542},"    resolver:",[3536,27135,27136],{"class":3550}," zodResolver",[3536,27138,3554],{"class":3546},[3536,27140,27141],{"class":3542},"createTripSchema",[3536,27143,23263],{"class":3546},[3536,27145,27146,27149],{"class":3538,"line":9256},[3536,27147,27148],{"class":3542},"    defaultValues:",[3536,27150,4547],{"class":3546},[3536,27152,27153,27156,27158],{"class":3538,"line":9267},[3536,27154,27155],{"class":3542},"      title:",[3536,27157,17803],{"class":3557},[3536,27159,4390],{"class":3546},[3536,27161,27162,27165,27167],{"class":3538,"line":9278},[3536,27163,27164],{"class":3542},"      region:",[3536,27166,25053],{"class":3557},[3536,27168,4390],{"class":3546},[3536,27170,27171,27174,27176],{"class":3538,"line":9289},[3536,27172,27173],{"class":3542},"      description:",[3536,27175,17803],{"class":3557},[3536,27177,4390],{"class":3546},[3536,27179,27180,27183,27185],{"class":3538,"line":9300},[3536,27181,27182],{"class":3542},"      startDate:",[3536,27184,26816],{"class":3550},[3536,27186,23415],{"class":3546},[3536,27188,27189,27192,27194,27196,27199,27202,27204],{"class":3538,"line":9305},[3536,27190,27191],{"class":3542},"      endDate:",[3536,27193,26891],{"class":3550},[3536,27195,3554],{"class":3546},[3536,27197,27198],{"class":3550},"startOfToday",[3536,27200,27201],{"class":3546},"(), ",[3536,27203,19784],{"class":4897},[3536,27205,23263],{"class":3546},[3536,27207,27208,27211,27213],{"class":3538,"line":9313},[3536,27209,27210],{"class":3542},"      isPrivate:",[3536,27212,12234],{"class":3561},[3536,27214,4390],{"class":3546},[3536,27216,27217,27220,27223],{"class":3538,"line":9322},[3536,27218,27219],{"class":3542},"      plannedDays:",[3536,27221,27222],{"class":4897}," 3",[3536,27224,4390],{"class":3546},[3536,27226,27227,27230,27232],{"class":3538,"line":9333},[3536,27228,27229],{"class":3542},"      hasItinerary:",[3536,27231,12234],{"class":3561},[3536,27233,4390],{"class":3546},[3536,27235,27236],{"class":3538,"line":9343},[3536,27237,27238],{"class":4573},"      \u002F\u002F literal true — у default false, щоб користувач свідомо поставив галочку\n",[3536,27240,27241,27244,27246,27248,27251,27253,27255],{"class":3538,"line":9352},[3536,27242,27243],{"class":3542},"      acceptedLocalSave:",[3536,27245,12234],{"class":3561},[3536,27247,5849],{"class":4725},[3536,27249,27250],{"class":3616}," unknown",[3536,27252,5849],{"class":4725},[3536,27254,12314],{"class":3616},[3536,27256,4390],{"class":3546},[3536,27258,27259],{"class":3538,"line":9362},[3536,27260,11660],{"class":3546},[3536,27262,27263,27266,27269],{"class":3538,"line":9372},[3536,27264,27265],{"class":3542},"    mode:",[3536,27267,27268],{"class":3557}," 'onSubmit'",[3536,27270,4390],{"class":3546},[3536,27272,27273,27276,27279],{"class":3538,"line":9377},[3536,27274,27275],{"class":3542},"    reValidateMode:",[3536,27277,27278],{"class":3557}," 'onChange'",[3536,27280,4390],{"class":3546},[3536,27282,27283],{"class":3538,"line":9400},[3536,27284,23616],{"class":3546},[3536,27286,27287],{"class":3538,"line":9408},[3536,27288,4748],{"emptyLinePlaceholder":4747},[3536,27290,27291,27293,27296,27298,27301,27303,27306],{"class":3538,"line":9419},[3536,27292,4770],{"class":3561},[3536,27294,27295],{"class":3599}," startDate",[3536,27297,4874],{"class":3546},[3536,27299,27300],{"class":3550},"watch",[3536,27302,3554],{"class":3546},[3536,27304,27305],{"class":3557},"'startDate'",[3536,27307,3580],{"class":3546},[3536,27309,27310,27312,27315,27317,27319,27321,27324],{"class":3538,"line":9429},[3536,27311,4770],{"class":3561},[3536,27313,27314],{"class":3599}," plannedDays",[3536,27316,4874],{"class":3546},[3536,27318,27300],{"class":3550},[3536,27320,3554],{"class":3546},[3536,27322,27323],{"class":3557},"'plannedDays'",[3536,27325,3580],{"class":3546},[3536,27327,27328],{"class":3538,"line":9439},[3536,27329,4748],{"emptyLinePlaceholder":4747},[3536,27331,27332,27334,27337,27339,27342,27344,27346,27348,27350],{"class":3538,"line":9450},[3536,27333,4770],{"class":3561},[3536,27335,27336],{"class":3550}," onValid",[3536,27338,23063],{"class":3546},[3536,27340,27341],{"class":3542},"values",[3536,27343,3613],{"class":3546},[3536,27345,27125],{"class":3616},[3536,27347,7932],{"class":3546},[3536,27349,5042],{"class":3561},[3536,27351,4547],{"class":3546},[3536,27353,27354,27357,27359,27361],{"class":3538,"line":9461},[3536,27355,27356],{"class":3550},"    setSubmitting",[3536,27358,3554],{"class":3546},[3536,27360,7158],{"class":3561},[3536,27362,3580],{"class":3546},[3536,27364,27365,27367,27369,27371,27373],{"class":3538,"line":9471},[3536,27366,8424],{"class":3561},[3536,27368,4404],{"class":3599},[3536,27370,3613],{"class":3546},[3536,27372,4658],{"class":3616},[3536,27374,7632],{"class":3546},[3536,27376,27377,27380,27383,27385,27387,27389,27392,27394,27396,27398],{"class":3538,"line":9476},[3536,27378,27379],{"class":3542},"      id:",[3536,27381,27382],{"class":3557}," `local-",[3536,27384,3562],{"class":3561},[3536,27386,23776],{"class":3542},[3536,27388,3547],{"class":3568},[3536,27390,27391],{"class":3550},"now",[3536,27393,5053],{"class":3568},[3536,27395,3574],{"class":3561},[3536,27397,3577],{"class":3557},[3536,27399,4390],{"class":3546},[3536,27401,27402,27404,27407,27409,27411],{"class":3538,"line":9505},[3536,27403,27155],{"class":3542},[3536,27405,27406],{"class":3542}," values",[3536,27408,3547],{"class":3546},[3536,27410,8827],{"class":3542},[3536,27412,4390],{"class":3546},[3536,27414,27415,27417,27419,27421,27423],{"class":3538,"line":9540},[3536,27416,27164],{"class":3542},[3536,27418,27406],{"class":3542},[3536,27420,3547],{"class":3546},[3536,27422,17760],{"class":3542},[3536,27424,4390],{"class":3546},[3536,27426,27427,27429,27431,27433,27435],{"class":3538,"line":9560},[3536,27428,27173],{"class":3542},[3536,27430,27406],{"class":3542},[3536,27432,3547],{"class":3546},[3536,27434,10399],{"class":3542},[3536,27436,4390],{"class":3546},[3536,27438,27439,27442,27444,27446,27448,27450,27452,27454,27456,27458,27460],{"class":3538,"line":9568},[3536,27440,27441],{"class":3542},"      dateLabel:",[3536,27443,23860],{"class":3550},[3536,27445,3554],{"class":3546},[3536,27447,27341],{"class":3542},[3536,27449,3547],{"class":3546},[3536,27451,23582],{"class":3542},[3536,27453,3755],{"class":3546},[3536,27455,27341],{"class":3542},[3536,27457,3547],{"class":3546},[3536,27459,23567],{"class":3542},[3536,27461,23263],{"class":3546},[3536,27463,27464,27467,27470,27472,27475,27477,27479,27481,27483,27485,27487,27490],{"class":3538,"line":9578},[3536,27465,27466],{"class":3542},"      coverUri:",[3536,27468,27469],{"class":3557}," `https:\u002F\u002Fpicsum.photos\u002Fseed\u002F",[3536,27471,3562],{"class":3561},[3536,27473,27474],{"class":3550},"encodeURIComponent",[3536,27476,3554],{"class":3568},[3536,27478,27341],{"class":3542},[3536,27480,3547],{"class":3568},[3536,27482,8827],{"class":3542},[3536,27484,3835],{"class":3568},[3536,27486,3574],{"class":3561},[3536,27488,27489],{"class":3557},"\u002F800\u002F400`",[3536,27491,4390],{"class":3546},[3536,27493,27494,27496,27498,27500,27502],{"class":3538,"line":9588},[3536,27495,27210],{"class":3542},[3536,27497,27406],{"class":3542},[3536,27499,3547],{"class":3546},[3536,27501,17865],{"class":3542},[3536,27503,4390],{"class":3546},[3536,27505,27506,27508,27510,27512,27514],{"class":3538,"line":9597},[3536,27507,27219],{"class":3542},[3536,27509,27406],{"class":3542},[3536,27511,3547],{"class":3546},[3536,27513,17790],{"class":3542},[3536,27515,4390],{"class":3546},[3536,27517,27518,27520,27522,27524,27526],{"class":3538,"line":9606},[3536,27519,27229],{"class":3542},[3536,27521,27406],{"class":3542},[3536,27523,3547],{"class":3546},[3536,27525,17930],{"class":3542},[3536,27527,4390],{"class":3546},[3536,27529,27530],{"class":3538,"line":9615},[3536,27531,27532],{"class":3546},"    };\n",[3536,27534,27535,27538,27540,27542],{"class":3538,"line":9626},[3536,27536,27537],{"class":3550},"    onSubmitSuccess",[3536,27539,3554],{"class":3546},[3536,27541,3565],{"class":3542},[3536,27543,3580],{"class":3546},[3536,27545,27546,27548,27550,27552],{"class":3538,"line":9631},[3536,27547,27356],{"class":3550},[3536,27549,3554],{"class":3546},[3536,27551,13814],{"class":3561},[3536,27553,3580],{"class":3546},[3536,27555,27556],{"class":3538,"line":9651},[3536,27557,8471],{"class":3546},[3536,27559,27560],{"class":3538,"line":9672},[3536,27561,4748],{"emptyLinePlaceholder":4747},[3536,27563,27564,27566],{"class":3538,"line":9693},[3536,27565,4982],{"class":4725},[3536,27567,4985],{"class":3546},[3536,27569,27570,27572],{"class":3538,"line":14653},[3536,27571,4990],{"class":4309},[3536,27573,27574],{"class":3616},"KeyboardAvoidingView\n",[3536,27576,27577,27579,27581,27583,27585,27587,27590],{"class":3538,"line":14667},[3536,27578,14600],{"class":4315},[3536,27580,4319],{"class":3546},[3536,27582,4322],{"class":3561},[3536,27584,8496],{"class":3542},[3536,27586,3547],{"class":3568},[3536,27588,27589],{"class":3542},"flex",[3536,27591,4476],{"class":3561},[3536,27593,27594,27597,27599,27601,27603,27605,27608,27610,27613,27615,27618,27620,27623],{"class":3538,"line":14672},[3536,27595,27596],{"class":4315},"      behavior",[3536,27598,4319],{"class":3546},[3536,27600,4322],{"class":3561},[3536,27602,19126],{"class":3542},[3536,27604,3547],{"class":3568},[3536,27606,27607],{"class":3599},"OS",[3536,27609,12123],{"class":3546},[3536,27611,27612],{"class":3557}," 'ios'",[3536,27614,12129],{"class":3546},[3536,27616,27617],{"class":3557}," 'padding'",[3536,27619,12135],{"class":3546},[3536,27621,27622],{"class":3557}," 'height'",[3536,27624,4476],{"class":3561},[3536,27626,27627,27630,27632,27634,27636,27638,27640,27642,27644,27646,27648,27650,27652],{"class":3538,"line":14680},[3536,27628,27629],{"class":4315},"      keyboardVerticalOffset",[3536,27631,4319],{"class":3546},[3536,27633,4322],{"class":3561},[3536,27635,19126],{"class":3542},[3536,27637,3547],{"class":3568},[3536,27639,27607],{"class":3599},[3536,27641,12123],{"class":3546},[3536,27643,27612],{"class":3557},[3536,27645,12129],{"class":3546},[3536,27647,9262],{"class":4897},[3536,27649,12135],{"class":3546},[3536,27651,14259],{"class":4897},[3536,27653,4476],{"class":3561},[3536,27655,27656],{"class":3538,"line":14685},[3536,27657,12703],{"class":4309},[3536,27659,27660,27662],{"class":3538,"line":14717},[3536,27661,5000],{"class":4309},[3536,27663,17504],{"class":3616},[3536,27665,27666,27668,27670,27672,27674,27676,27678],{"class":3538,"line":14723},[3536,27667,9080],{"class":4315},[3536,27669,4319],{"class":3546},[3536,27671,4322],{"class":3561},[3536,27673,8496],{"class":3542},[3536,27675,3547],{"class":3568},[3536,27677,27589],{"class":3542},[3536,27679,4476],{"class":3561},[3536,27681,27682,27684,27686,27688],{"class":3538,"line":14732},[3536,27683,8651],{"class":4315},[3536,27685,4319],{"class":3546},[3536,27687,4322],{"class":3561},[3536,27689,14607],{"class":3568},[3536,27691,27692,27694,27696,27699],{"class":3538,"line":14740},[3536,27693,14878],{"class":3542},[3536,27695,3547],{"class":3568},[3536,27697,27698],{"class":3542},"content",[3536,27700,4390],{"class":3568},[3536,27702,27703,27706,27708,27710,27712,27714,27716,27718,27720,27722,27724,27726,27728,27730,27732,27734],{"class":3538,"line":14751},[3536,27704,27705],{"class":3568},"          { ",[3536,27707,9385],{"class":3542},[3536,27709,14219],{"class":3542},[3536,27711,3547],{"class":3568},[3536,27713,14224],{"class":3542},[3536,27715,3755],{"class":3568},[3536,27717,10649],{"class":3542},[3536,27719,14219],{"class":3542},[3536,27721,3547],{"class":3568},[3536,27723,14224],{"class":3542},[3536,27725,3755],{"class":3568},[3536,27727,9392],{"class":3542},[3536,27729,14219],{"class":3542},[3536,27731,3547],{"class":3568},[3536,27733,14648],{"class":3542},[3536,27735,4411],{"class":3568},[3536,27737,27738,27740],{"class":3538,"line":14769},[3536,27739,14974],{"class":3568},[3536,27741,4476],{"class":3561},[3536,27743,27744,27747,27749],{"class":3538,"line":14787},[3536,27745,27746],{"class":4315},"        keyboardShouldPersistTaps",[3536,27748,4319],{"class":3546},[3536,27750,27751],{"class":3557},"\"handled\"\n",[3536,27753,27754,27757,27759],{"class":3538,"line":14792},[3536,27755,27756],{"class":4315},"        keyboardDismissMode",[3536,27758,4319],{"class":3546},[3536,27760,27761],{"class":3557},"\"on-drag\"\n",[3536,27763,27764,27766,27768],{"class":3538,"line":14798},[3536,27765,17538],{"class":4315},[3536,27767,4319],{"class":3546},[3536,27769,14441],{"class":3561},[3536,27771,27772],{"class":3538,"line":14807},[3536,27773,8139],{"class":4309},[3536,27775,27776,27778,27780,27782,27784,27786,27788,27790,27792,27794,27796,27798,27800],{"class":3538,"line":14816},[3536,27777,8144],{"class":4309},[3536,27779,6704],{"class":3616},[3536,27781,14692],{"class":4315},[3536,27783,4319],{"class":3546},[3536,27785,15020],{"class":3557},[3536,27787,12792],{"class":4315},[3536,27789,4319],{"class":3546},[3536,27791,4322],{"class":3561},[3536,27793,12082],{"class":3542},[3536,27795,3547],{"class":3568},[3536,27797,12621],{"class":3542},[3536,27799,3574],{"class":3561},[3536,27801,4352],{"class":4309},[3536,27803,27804],{"class":3538,"line":14821},[3536,27805,27806],{"class":3546},"          Заповніть поля. Помилки з’являться після натискання «Створити», якщо\n",[3536,27808,27809],{"class":3538,"line":14826},[3536,27810,27811],{"class":3546},"          щось не так. Тут зібрані різні типи контролів: текст, список, дати,\n",[3536,27813,27814],{"class":3538,"line":14833},[3536,27815,27816],{"class":3546},"          перемикач, галочка, повзунок.\n",[3536,27818,27819,27821,27823],{"class":3538,"line":14857},[3536,27820,10208],{"class":4309},[3536,27822,6704],{"class":3616},[3536,27824,4352],{"class":4309},[3536,27826,27827],{"class":3538,"line":14864},[3536,27828,4748],{"emptyLinePlaceholder":4747},[3536,27830,27831,27833,27836],{"class":3538,"line":14875},[3536,27832,18815],{"class":3561},[3536,27834,27835],{"class":4573},"\u002F* ——— TextInput ——— *\u002F",[3536,27837,4476],{"class":3561},[3536,27839,27840,27842],{"class":3538,"line":14888},[3536,27841,8144],{"class":4309},[3536,27843,27844],{"class":3616},"Controller\n",[3536,27846,27847,27850,27852,27854,27857],{"class":3538,"line":14894},[3536,27848,27849],{"class":4315},"          control",[3536,27851,4319],{"class":3546},[3536,27853,4322],{"class":3561},[3536,27855,27856],{"class":3542},"control",[3536,27858,4476],{"class":3561},[3536,27860,27861,27863,27865],{"class":3538,"line":14908},[3536,27862,12290],{"class":4315},[3536,27864,4319],{"class":3546},[3536,27866,27867],{"class":3557},"\"title\"\n",[3536,27869,27870,27873,27875,27877,27879,27881,27883,27886,27888,27891,27893,27895,27898,27900],{"class":3538,"line":14922},[3536,27871,27872],{"class":4315},"          render",[3536,27874,4319],{"class":3546},[3536,27876,4322],{"class":3561},[3536,27878,8717],{"class":3568},[3536,27880,5635],{"class":3542},[3536,27882,13604],{"class":3568},[3536,27884,27885],{"class":3542},"onChange",[3536,27887,3755],{"class":3568},[3536,27889,27890],{"class":3542},"onBlur",[3536,27892,3755],{"class":3568},[3536,27894,24824],{"class":3542},[3536,27896,27897],{"class":3568}," } }) ",[3536,27899,5042],{"class":3561},[3536,27901,4985],{"class":3568},[3536,27903,27904,27906],{"class":3538,"line":14936},[3536,27905,8755],{"class":4309},[3536,27907,27908],{"class":3616},"TextField\n",[3536,27910,27911,27913,27915],{"class":3538,"line":14951},[3536,27912,18438],{"class":4315},[3536,27914,4319],{"class":3546},[3536,27916,27917],{"class":3557},"\"Назва поїздки\"\n",[3536,27919,27920,27923,27925],{"class":3538,"line":14965},[3536,27921,27922],{"class":4315},"              placeholder",[3536,27924,4319],{"class":3546},[3536,27926,27927],{"class":3557},"\"Наприклад, Карпати на вихідні\"\n",[3536,27929,27930,27933,27935,27937,27939],{"class":3538,"line":14971},[3536,27931,27932],{"class":4315},"              value",[3536,27934,4319],{"class":3546},[3536,27936,4322],{"class":3561},[3536,27938,24824],{"class":3542},[3536,27940,4476],{"class":3561},[3536,27942,27943,27946,27948,27950,27952],{"class":3538,"line":14979},[3536,27944,27945],{"class":4315},"              onChangeText",[3536,27947,4319],{"class":3546},[3536,27949,4322],{"class":3561},[3536,27951,27885],{"class":3542},[3536,27953,4476],{"class":3561},[3536,27955,27956,27959,27961,27963,27965],{"class":3538,"line":14984},[3536,27957,27958],{"class":4315},"              onBlur",[3536,27960,4319],{"class":3546},[3536,27962,4322],{"class":3561},[3536,27964,27890],{"class":3542},[3536,27966,4476],{"class":3561},[3536,27968,27969,27972,27974,27976,27978,27980,27982,27985,27988],{"class":3538,"line":15009},[3536,27970,27971],{"class":4315},"              error",[3536,27973,4319],{"class":3546},[3536,27975,4322],{"class":3561},[3536,27977,27111],{"class":3542},[3536,27979,3547],{"class":3568},[3536,27981,8827],{"class":3542},[3536,27983,27984],{"class":3568},"?.",[3536,27986,27987],{"class":3542},"message",[3536,27989,4476],{"class":3561},[3536,27991,27992,27995,27997],{"class":3538,"line":15045},[3536,27993,27994],{"class":4315},"              autoCapitalize",[3536,27996,4319],{"class":3546},[3536,27998,27999],{"class":3557},"\"sentences\"\n",[3536,28001,28002,28005,28007],{"class":3538,"line":15071},[3536,28003,28004],{"class":4315},"              returnKeyType",[3536,28006,4319],{"class":3546},[3536,28008,28009],{"class":3557},"\"next\"\n",[3536,28011,28012,28015,28017,28019,28021],{"class":3538,"line":15080},[3536,28013,28014],{"class":4315},"              maxLength",[3536,28016,4319],{"class":3546},[3536,28018,4322],{"class":3561},[3536,28020,23255],{"class":4897},[3536,28022,4476],{"class":3561},[3536,28024,28025],{"class":3538,"line":15087},[3536,28026,13022],{"class":4309},[3536,28028,28029,28031],{"class":3538,"line":15097},[3536,28030,18235],{"class":3568},[3536,28032,4476],{"class":3561},[3536,28034,28035],{"class":3538,"line":15109},[3536,28036,12358],{"class":4309},[3536,28038,28039],{"class":3538,"line":15123},[3536,28040,4748],{"emptyLinePlaceholder":4747},[3536,28042,28043,28045,28048],{"class":3538,"line":15137},[3536,28044,18815],{"class":3561},[3536,28046,28047],{"class":4573},"\u002F* ——— Picker ——— *\u002F",[3536,28049,4476],{"class":3561},[3536,28051,28052,28054],{"class":3538,"line":15147},[3536,28053,8144],{"class":4309},[3536,28055,27844],{"class":3616},[3536,28057,28058,28060,28062,28064,28066],{"class":3538,"line":15154},[3536,28059,27849],{"class":4315},[3536,28061,4319],{"class":3546},[3536,28063,4322],{"class":3561},[3536,28065,27856],{"class":3542},[3536,28067,4476],{"class":3561},[3536,28069,28070,28072,28074],{"class":3538,"line":15160},[3536,28071,12290],{"class":4315},[3536,28073,4319],{"class":3546},[3536,28075,28076],{"class":3557},"\"region\"\n",[3536,28078,28079,28081,28083,28085,28087,28089,28091,28093,28095,28097,28099,28101],{"class":3538,"line":15177},[3536,28080,27872],{"class":4315},[3536,28082,4319],{"class":3546},[3536,28084,4322],{"class":3561},[3536,28086,8717],{"class":3568},[3536,28088,5635],{"class":3542},[3536,28090,13604],{"class":3568},[3536,28092,27885],{"class":3542},[3536,28094,3755],{"class":3568},[3536,28096,24824],{"class":3542},[3536,28098,27897],{"class":3568},[3536,28100,5042],{"class":3561},[3536,28102,4985],{"class":3568},[3536,28104,28105,28107],{"class":3538,"line":15212},[3536,28106,8755],{"class":4309},[3536,28108,28109],{"class":3616},"FormRow\n",[3536,28111,28112,28114,28116],{"class":3538,"line":15223},[3536,28113,18438],{"class":4315},[3536,28115,4319],{"class":3546},[3536,28117,28118],{"class":3557},"\"Регіон\"\n",[3536,28120,28121,28124,28126],{"class":3538,"line":15232},[3536,28122,28123],{"class":4315},"              description",[3536,28125,4319],{"class":3546},[3536,28127,28128],{"class":3557},"\"Оберіть зі списку (Picker), а не вводьте вручну\"\n",[3536,28130,28131,28133,28135,28137,28139,28141,28143,28145,28147],{"class":3538,"line":15237},[3536,28132,27971],{"class":4315},[3536,28134,4319],{"class":3546},[3536,28136,4322],{"class":3561},[3536,28138,27111],{"class":3542},[3536,28140,3547],{"class":3568},[3536,28142,17760],{"class":3542},[3536,28144,27984],{"class":3568},[3536,28146,27987],{"class":3542},[3536,28148,4476],{"class":3561},[3536,28150,28151],{"class":3538,"line":15287},[3536,28152,28153],{"class":4315},"              stacked\n",[3536,28155,28156,28159,28161],{"class":3538,"line":15310},[3536,28157,28158],{"class":4315},"              control",[3536,28160,4319],{"class":3546},[3536,28162,4441],{"class":3561},[3536,28164,28165,28167],{"class":3538,"line":15336},[3536,28166,8799],{"class":4309},[3536,28168,14595],{"class":3616},[3536,28170,28171,28173,28175,28177],{"class":3538,"line":15344},[3536,28172,15601],{"class":4315},[3536,28174,4319],{"class":3546},[3536,28176,4322],{"class":3561},[3536,28178,14607],{"class":3568},[3536,28180,28181,28183,28185,28188],{"class":3538,"line":15351},[3536,28182,21044],{"class":3542},[3536,28184,3547],{"class":3568},[3536,28186,28187],{"class":3542},"pickerWrap",[3536,28189,4390],{"class":3568},[3536,28191,28192],{"class":3538,"line":15369},[3536,28193,21055],{"class":3568},[3536,28195,28196,28198,28201,28203],{"class":3538,"line":15398},[3536,28197,21085],{"class":3542},[3536,28199,28200],{"class":3542}," errors",[3536,28202,3547],{"class":3568},[3536,28204,28205],{"class":3542},"region\n",[3536,28207,28208,28211,28213,28215],{"class":3538,"line":15410},[3536,28209,28210],{"class":3546},"                        ?",[3536,28212,12168],{"class":3542},[3536,28214,3547],{"class":3568},[3536,28216,28217],{"class":3542},"danger\n",[3536,28219,28220,28223,28225,28227,28229],{"class":3538,"line":15423},[3536,28221,28222],{"class":3546},"                        :",[3536,28224,12168],{"class":3542},[3536,28226,3547],{"class":3568},[3536,28228,12655],{"class":3542},[3536,28230,4390],{"class":3568},[3536,28232,28233,28235,28237,28239,28241],{"class":3538,"line":15429},[3536,28234,21060],{"class":3542},[3536,28236,12168],{"class":3542},[3536,28238,3547],{"class":3568},[3536,28240,15451],{"class":3542},[3536,28242,4390],{"class":3568},[3536,28244,28245,28248,28250,28252,28254],{"class":3538,"line":15456},[3536,28246,28247],{"class":3542},"                      borderRadius:",[3536,28249,18709],{"class":3542},[3536,28251,3547],{"class":3568},[3536,28253,14224],{"class":3542},[3536,28255,4390],{"class":3568},[3536,28257,28258],{"class":3538,"line":15470},[3536,28259,21098],{"class":3568},[3536,28261,28262,28264],{"class":3538,"line":15476},[3536,28263,21103],{"class":3568},[3536,28265,4476],{"class":3561},[3536,28267,28268],{"class":3538,"line":15484},[3536,28269,15620],{"class":4309},[3536,28271,28272,28274],{"class":3538,"line":15495},[3536,28273,21167],{"class":4309},[3536,28275,28276],{"class":3616},"Picker\n",[3536,28278,28279,28282,28284,28286,28288],{"class":3538,"line":15516},[3536,28280,28281],{"class":4315},"                    selectedValue",[3536,28283,4319],{"class":3546},[3536,28285,4322],{"class":3561},[3536,28287,24824],{"class":3542},[3536,28289,4476],{"class":3561},[3536,28291,28292,28295,28297,28299,28301],{"class":3538,"line":15543},[3536,28293,28294],{"class":4315},"                    onValueChange",[3536,28296,4319],{"class":3546},[3536,28298,4322],{"class":3561},[3536,28300,27885],{"class":3542},[3536,28302,4476],{"class":3561},[3536,28304,28305,28308,28310,28312,28314,28316,28318],{"class":3538,"line":15549},[3536,28306,28307],{"class":4315},"                    dropdownIconColor",[3536,28309,4319],{"class":3546},[3536,28311,4322],{"class":3561},[3536,28313,12082],{"class":3542},[3536,28315,3547],{"class":3568},[3536,28317,3993],{"class":3542},[3536,28319,4476],{"class":3561},[3536,28321,28322,28324,28326,28328,28330,28332,28334,28336,28338,28340],{"class":3538,"line":15556},[3536,28323,21212],{"class":4315},[3536,28325,4319],{"class":3546},[3536,28327,4322],{"class":3561},[3536,28329,8165],{"class":3568},[3536,28331,8101],{"class":3542},[3536,28333,12168],{"class":3542},[3536,28335,3547],{"class":3568},[3536,28337,3993],{"class":3542},[3536,28339,8174],{"class":3568},[3536,28341,4476],{"class":3561},[3536,28343,28344],{"class":3538,"line":15566},[3536,28345,21229],{"class":4309},[3536,28347,28348,28350,28352,28354,28356,28358,28360,28362,28364],{"class":3538,"line":15598},[3536,28349,21234],{"class":3561},[3536,28351,22593],{"class":3599},[3536,28353,3547],{"class":3568},[3536,28355,15297],{"class":3550},[3536,28357,7926],{"class":3568},[3536,28359,17760],{"class":3542},[3536,28361,7932],{"class":3568},[3536,28363,5042],{"class":3561},[3536,28365,4985],{"class":3568},[3536,28367,28368,28371],{"class":3538,"line":15617},[3536,28369,28370],{"class":4309},"                      \u003C",[3536,28372,28373],{"class":3616},"Picker.Item\n",[3536,28375,28376,28379,28381,28383,28385],{"class":3538,"line":15623},[3536,28377,28378],{"class":4315},"                        key",[3536,28380,4319],{"class":3546},[3536,28382,4322],{"class":3561},[3536,28384,17760],{"class":3542},[3536,28386,4476],{"class":3561},[3536,28388,28389,28392,28394,28396,28398],{"class":3538,"line":15637},[3536,28390,28391],{"class":4315},"                        label",[3536,28393,4319],{"class":3546},[3536,28395,4322],{"class":3561},[3536,28397,17760],{"class":3542},[3536,28399,4476],{"class":3561},[3536,28401,28402,28405,28407,28409,28411],{"class":3538,"line":15647},[3536,28403,28404],{"class":4315},"                        value",[3536,28406,4319],{"class":3546},[3536,28408,4322],{"class":3561},[3536,28410,17760],{"class":3542},[3536,28412,4476],{"class":3561},[3536,28414,28415,28418,28420,28422,28424,28426,28428],{"class":3538,"line":15656},[3536,28416,28417],{"class":4315},"                        color",[3536,28419,4319],{"class":3546},[3536,28421,4322],{"class":3561},[3536,28423,12082],{"class":3542},[3536,28425,3547],{"class":3568},[3536,28427,3993],{"class":3542},[3536,28429,4476],{"class":3561},[3536,28431,28432],{"class":3538,"line":15662},[3536,28433,28434],{"class":4309},"                      \u002F>\n",[3536,28436,28437,28440],{"class":3538,"line":15670},[3536,28438,28439],{"class":3568},"                    ))",[3536,28441,4476],{"class":3561},[3536,28443,28444,28446,28448],{"class":3538,"line":15679},[3536,28445,21247],{"class":4309},[3536,28447,26566],{"class":3616},[3536,28449,4352],{"class":4309},[3536,28451,28452,28454,28456],{"class":3538,"line":15688},[3536,28453,15640],{"class":4309},[3536,28455,4993],{"class":3616},[3536,28457,4352],{"class":4309},[3536,28459,28460],{"class":3538,"line":15693},[3536,28461,28462],{"class":3561},"              }\n",[3536,28464,28465],{"class":3538,"line":15717},[3536,28466,13022],{"class":4309},[3536,28468,28469,28471],{"class":3538,"line":15725},[3536,28470,18235],{"class":3568},[3536,28472,4476],{"class":3561},[3536,28474,28475],{"class":3538,"line":15739},[3536,28476,12358],{"class":4309},[3536,28478,28479],{"class":3538,"line":15754},[3536,28480,4748],{"emptyLinePlaceholder":4747},[3536,28482,28483,28485,28488],{"class":3538,"line":15769},[3536,28484,18815],{"class":3561},[3536,28486,28487],{"class":4573},"\u002F* ——— DateTimePicker через DateField ——— *\u002F",[3536,28489,4476],{"class":3561},[3536,28491,28492,28494],{"class":3538,"line":15784},[3536,28493,8144],{"class":4309},[3536,28495,27844],{"class":3616},[3536,28497,28498,28500,28502,28504,28506],{"class":3538,"line":15799},[3536,28499,27849],{"class":4315},[3536,28501,4319],{"class":3546},[3536,28503,4322],{"class":3561},[3536,28505,27856],{"class":3542},[3536,28507,4476],{"class":3561},[3536,28509,28510,28512,28514],{"class":3538,"line":15811},[3536,28511,12290],{"class":4315},[3536,28513,4319],{"class":3546},[3536,28515,28516],{"class":3557},"\"startDate\"\n",[3536,28518,28519,28521,28523,28525,28527,28529,28531,28533,28535,28537,28539,28541,28543,28545],{"class":3538,"line":15824},[3536,28520,27872],{"class":4315},[3536,28522,4319],{"class":3546},[3536,28524,4322],{"class":3561},[3536,28526,8717],{"class":3568},[3536,28528,5635],{"class":3542},[3536,28530,13604],{"class":3568},[3536,28532,27885],{"class":3542},[3536,28534,3755],{"class":3568},[3536,28536,27890],{"class":3542},[3536,28538,3755],{"class":3568},[3536,28540,24824],{"class":3542},[3536,28542,27897],{"class":3568},[3536,28544,5042],{"class":3561},[3536,28546,4985],{"class":3568},[3536,28548,28549,28551],{"class":3538,"line":15837},[3536,28550,8755],{"class":4309},[3536,28552,28553],{"class":3616},"DateField\n",[3536,28555,28556,28558,28560],{"class":3538,"line":15850},[3536,28557,18438],{"class":4315},[3536,28559,4319],{"class":3546},[3536,28561,28562],{"class":3557},"\"Дата початку\"\n",[3536,28564,28565,28567,28569,28571,28573],{"class":3538,"line":15857},[3536,28566,27932],{"class":4315},[3536,28568,4319],{"class":3546},[3536,28570,4322],{"class":3561},[3536,28572,24824],{"class":3542},[3536,28574,4476],{"class":3561},[3536,28576,28577,28580,28582,28584,28586],{"class":3538,"line":15899},[3536,28578,28579],{"class":4315},"              onChange",[3536,28581,4319],{"class":3546},[3536,28583,4322],{"class":3561},[3536,28585,27885],{"class":3542},[3536,28587,4476],{"class":3561},[3536,28589,28590,28592,28594,28596,28598],{"class":3538,"line":15909},[3536,28591,27958],{"class":4315},[3536,28593,4319],{"class":3546},[3536,28595,4322],{"class":3561},[3536,28597,27890],{"class":3542},[3536,28599,4476],{"class":3561},[3536,28601,28602,28604,28606,28608,28610,28612,28614,28616,28618],{"class":3538,"line":15917},[3536,28603,27971],{"class":4315},[3536,28605,4319],{"class":3546},[3536,28607,4322],{"class":3561},[3536,28609,27111],{"class":3542},[3536,28611,3547],{"class":3568},[3536,28613,23582],{"class":3542},[3536,28615,27984],{"class":3568},[3536,28617,27987],{"class":3542},[3536,28619,4476],{"class":3561},[3536,28621,28622],{"class":3538,"line":15931},[3536,28623,13022],{"class":4309},[3536,28625,28626,28628],{"class":3538,"line":15946},[3536,28627,18235],{"class":3568},[3536,28629,4476],{"class":3561},[3536,28631,28632],{"class":3538,"line":15964},[3536,28633,12358],{"class":4309},[3536,28635,28636],{"class":3538,"line":15986},[3536,28637,4748],{"emptyLinePlaceholder":4747},[3536,28639,28640,28642],{"class":3538,"line":15991},[3536,28641,8144],{"class":4309},[3536,28643,27844],{"class":3616},[3536,28645,28646,28648,28650,28652,28654],{"class":3538,"line":15997},[3536,28647,27849],{"class":4315},[3536,28649,4319],{"class":3546},[3536,28651,4322],{"class":3561},[3536,28653,27856],{"class":3542},[3536,28655,4476],{"class":3561},[3536,28657,28658,28660,28662],{"class":3538,"line":16007},[3536,28659,12290],{"class":4315},[3536,28661,4319],{"class":3546},[3536,28663,28664],{"class":3557},"\"endDate\"\n",[3536,28666,28667,28669,28671,28673,28675,28677,28679,28681,28683,28685,28687,28689,28691,28693],{"class":3538,"line":16012},[3536,28668,27872],{"class":4315},[3536,28670,4319],{"class":3546},[3536,28672,4322],{"class":3561},[3536,28674,8717],{"class":3568},[3536,28676,5635],{"class":3542},[3536,28678,13604],{"class":3568},[3536,28680,27885],{"class":3542},[3536,28682,3755],{"class":3568},[3536,28684,27890],{"class":3542},[3536,28686,3755],{"class":3568},[3536,28688,24824],{"class":3542},[3536,28690,27897],{"class":3568},[3536,28692,5042],{"class":3561},[3536,28694,4985],{"class":3568},[3536,28696,28697,28699],{"class":3538,"line":16021},[3536,28698,8755],{"class":4309},[3536,28700,28553],{"class":3616},[3536,28702,28703,28705,28707],{"class":3538,"line":16026},[3536,28704,18438],{"class":4315},[3536,28706,4319],{"class":3546},[3536,28708,28709],{"class":3557},"\"Дата завершення\"\n",[3536,28711,28712,28714,28716,28718,28720],{"class":3538,"line":16033},[3536,28713,27932],{"class":4315},[3536,28715,4319],{"class":3546},[3536,28717,4322],{"class":3561},[3536,28719,24824],{"class":3542},[3536,28721,4476],{"class":3561},[3536,28723,28724,28726,28728,28730,28732],{"class":3538,"line":16044},[3536,28725,28579],{"class":4315},[3536,28727,4319],{"class":3546},[3536,28729,4322],{"class":3561},[3536,28731,27885],{"class":3542},[3536,28733,4476],{"class":3561},[3536,28735,28736,28738,28740,28742,28744],{"class":3538,"line":16056},[3536,28737,27958],{"class":4315},[3536,28739,4319],{"class":3546},[3536,28741,4322],{"class":3561},[3536,28743,27890],{"class":3542},[3536,28745,4476],{"class":3561},[3536,28747,28748,28750,28752,28754,28756,28758,28760,28762,28764],{"class":3538,"line":16061},[3536,28749,27971],{"class":4315},[3536,28751,4319],{"class":3546},[3536,28753,4322],{"class":3561},[3536,28755,27111],{"class":3542},[3536,28757,3547],{"class":3568},[3536,28759,23567],{"class":3542},[3536,28761,27984],{"class":3568},[3536,28763,27987],{"class":3542},[3536,28765,4476],{"class":3561},[3536,28767,28768,28771,28773,28775,28777],{"class":3538,"line":16074},[3536,28769,28770],{"class":4315},"              minimumDate",[3536,28772,4319],{"class":3546},[3536,28774,4322],{"class":3561},[3536,28776,23582],{"class":3542},[3536,28778,4476],{"class":3561},[3536,28780,28781],{"class":3538,"line":16087},[3536,28782,13022],{"class":4309},[3536,28784,28785,28787],{"class":3538,"line":16100},[3536,28786,18235],{"class":3568},[3536,28788,4476],{"class":3561},[3536,28790,28791],{"class":3538,"line":16114},[3536,28792,12358],{"class":4309},[3536,28794,28795],{"class":3538,"line":16128},[3536,28796,4748],{"emptyLinePlaceholder":4747},[3536,28798,28799,28801,28804],{"class":3538,"line":16133},[3536,28800,18815],{"class":3561},[3536,28802,28803],{"class":4573},"\u002F* ——— TextInput multiline ——— *\u002F",[3536,28805,4476],{"class":3561},[3536,28807,28808,28810],{"class":3538,"line":16140},[3536,28809,8144],{"class":4309},[3536,28811,27844],{"class":3616},[3536,28813,28814,28816,28818,28820,28822],{"class":3538,"line":16145},[3536,28815,27849],{"class":4315},[3536,28817,4319],{"class":3546},[3536,28819,4322],{"class":3561},[3536,28821,27856],{"class":3542},[3536,28823,4476],{"class":3561},[3536,28825,28826,28828,28830],{"class":3538,"line":16153},[3536,28827,12290],{"class":4315},[3536,28829,4319],{"class":3546},[3536,28831,28832],{"class":3557},"\"description\"\n",[3536,28834,28835,28837,28839,28841,28843,28845,28847,28849,28851,28853,28855,28857,28859,28861],{"class":3538,"line":16164},[3536,28836,27872],{"class":4315},[3536,28838,4319],{"class":3546},[3536,28840,4322],{"class":3561},[3536,28842,8717],{"class":3568},[3536,28844,5635],{"class":3542},[3536,28846,13604],{"class":3568},[3536,28848,27885],{"class":3542},[3536,28850,3755],{"class":3568},[3536,28852,27890],{"class":3542},[3536,28854,3755],{"class":3568},[3536,28856,24824],{"class":3542},[3536,28858,27897],{"class":3568},[3536,28860,5042],{"class":3561},[3536,28862,4985],{"class":3568},[3536,28864,28865,28867],{"class":3538,"line":16180},[3536,28866,8755],{"class":4309},[3536,28868,27908],{"class":3616},[3536,28870,28871,28873,28875],{"class":3538,"line":16197},[3536,28872,18438],{"class":4315},[3536,28874,4319],{"class":3546},[3536,28876,28877],{"class":3557},"\"Опис\"\n",[3536,28879,28880,28882,28884],{"class":3538,"line":16204},[3536,28881,27922],{"class":4315},[3536,28883,4319],{"class":3546},[3536,28885,28886],{"class":3557},"\"Коротко: що плануєте побачити, з ким їдете…\"\n",[3536,28888,28889,28891,28893,28895,28897],{"class":3538,"line":16209},[3536,28890,27932],{"class":4315},[3536,28892,4319],{"class":3546},[3536,28894,4322],{"class":3561},[3536,28896,24824],{"class":3542},[3536,28898,4476],{"class":3561},[3536,28900,28901,28903,28905,28907,28909],{"class":3538,"line":16218},[3536,28902,27945],{"class":4315},[3536,28904,4319],{"class":3546},[3536,28906,4322],{"class":3561},[3536,28908,27885],{"class":3542},[3536,28910,4476],{"class":3561},[3536,28912,28913,28915,28917,28919,28921],{"class":3538,"line":16227},[3536,28914,27958],{"class":4315},[3536,28916,4319],{"class":3546},[3536,28918,4322],{"class":3561},[3536,28920,27890],{"class":3542},[3536,28922,4476],{"class":3561},[3536,28924,28925,28927,28929,28931,28933,28935,28937,28939,28941],{"class":3538,"line":16232},[3536,28926,27971],{"class":4315},[3536,28928,4319],{"class":3546},[3536,28930,4322],{"class":3561},[3536,28932,27111],{"class":3542},[3536,28934,3547],{"class":3568},[3536,28936,10399],{"class":3542},[3536,28938,27984],{"class":3568},[3536,28940,27987],{"class":3542},[3536,28942,4476],{"class":3561},[3536,28944,28945],{"class":3538,"line":16237},[3536,28946,28947],{"class":4315},"              multiline\n",[3536,28949,28950,28953,28955,28957,28960],{"class":3538,"line":16242},[3536,28951,28952],{"class":4315},"              numberOfLines",[3536,28954,4319],{"class":3546},[3536,28956,4322],{"class":3561},[3536,28958,28959],{"class":4897},"4",[3536,28961,4476],{"class":3561},[3536,28963,28964,28967,28969],{"class":3538,"line":16259},[3536,28965,28966],{"class":4315},"              textAlignVertical",[3536,28968,4319],{"class":3546},[3536,28970,28971],{"class":3557},"\"top\"\n",[3536,28973,28974,28976,28978,28980,28982,28984,28987],{"class":3538,"line":16267},[3536,28975,8949],{"class":4315},[3536,28977,4319],{"class":3546},[3536,28979,4322],{"class":3561},[3536,28981,8496],{"class":3542},[3536,28983,3547],{"class":3568},[3536,28985,28986],{"class":3542},"multiline",[3536,28988,4476],{"class":3561},[3536,28990,28991,28993,28995,28997,28999],{"class":3538,"line":16276},[3536,28992,28014],{"class":4315},[3536,28994,4319],{"class":3546},[3536,28996,4322],{"class":3561},[3536,28998,23347],{"class":4897},[3536,29000,4476],{"class":3561},[3536,29002,29003,29006,29008],{"class":3538,"line":16281},[3536,29004,29005],{"class":4315},"              hint",[3536,29007,4319],{"class":3546},[3536,29009,29010],{"class":3557},"\"Мінімум 10 символів\"\n",[3536,29012,29013],{"class":3538,"line":16289},[3536,29014,13022],{"class":4309},[3536,29016,29017,29019],{"class":3538,"line":16299},[3536,29018,18235],{"class":3568},[3536,29020,4476],{"class":3561},[3536,29022,29023],{"class":3538,"line":16304},[3536,29024,12358],{"class":4309},[3536,29026,29027],{"class":3538,"line":16312},[3536,29028,4748],{"emptyLinePlaceholder":4747},[3536,29030,29031,29033,29036],{"class":3538,"line":16323},[3536,29032,18815],{"class":3561},[3536,29034,29035],{"class":4573},"\u002F* ——— Slider ——— *\u002F",[3536,29037,4476],{"class":3561},[3536,29039,29040,29042],{"class":3538,"line":16334},[3536,29041,8144],{"class":4309},[3536,29043,27844],{"class":3616},[3536,29045,29046,29048,29050,29052,29054],{"class":3538,"line":16339},[3536,29047,27849],{"class":4315},[3536,29049,4319],{"class":3546},[3536,29051,4322],{"class":3561},[3536,29053,27856],{"class":3542},[3536,29055,4476],{"class":3561},[3536,29057,29058,29060,29062],{"class":3538,"line":16347},[3536,29059,12290],{"class":4315},[3536,29061,4319],{"class":3546},[3536,29063,29064],{"class":3557},"\"plannedDays\"\n",[3536,29066,29067,29069,29071,29073,29075,29077,29079,29081,29083,29085,29087,29089],{"class":3538,"line":16356},[3536,29068,27872],{"class":4315},[3536,29070,4319],{"class":3546},[3536,29072,4322],{"class":3561},[3536,29074,8717],{"class":3568},[3536,29076,5635],{"class":3542},[3536,29078,13604],{"class":3568},[3536,29080,27885],{"class":3542},[3536,29082,3755],{"class":3568},[3536,29084,24824],{"class":3542},[3536,29086,27897],{"class":3568},[3536,29088,5042],{"class":3561},[3536,29090,4985],{"class":3568},[3536,29092,29093,29095],{"class":3538,"line":16365},[3536,29094,8755],{"class":4309},[3536,29096,28109],{"class":3616},[3536,29098,29099,29101,29103,29105,29108,29110,29112,29114,29116,29119,29121,29123,29125,29127,29129],{"class":3538,"line":16374},[3536,29100,18438],{"class":4315},[3536,29102,4319],{"class":3546},[3536,29104,4322],{"class":3561},[3536,29106,29107],{"class":3557},"`Тривалість: ",[3536,29109,3562],{"class":3561},[3536,29111,24824],{"class":3542},[3536,29113,3574],{"class":3561},[3536,29115,23804],{"class":3561},[3536,29117,29118],{"class":3550},"daysWord",[3536,29120,3554],{"class":3568},[3536,29122,24824],{"class":3542},[3536,29124,3835],{"class":3568},[3536,29126,3574],{"class":3561},[3536,29128,3577],{"class":3557},[3536,29130,4476],{"class":3561},[3536,29132,29133,29135,29137],{"class":3538,"line":16383},[3536,29134,28123],{"class":4315},[3536,29136,4319],{"class":3546},[3536,29138,29139],{"class":3557},"\"Повзунок (Slider) — зручно для діапазону 1–14\"\n",[3536,29141,29142,29144,29146,29148,29150,29152,29154,29156,29158],{"class":3538,"line":16388},[3536,29143,27971],{"class":4315},[3536,29145,4319],{"class":3546},[3536,29147,4322],{"class":3561},[3536,29149,27111],{"class":3542},[3536,29151,3547],{"class":3568},[3536,29153,17790],{"class":3542},[3536,29155,27984],{"class":3568},[3536,29157,27987],{"class":3542},[3536,29159,4476],{"class":3561},[3536,29161,29162],{"class":3538,"line":16396},[3536,29163,28153],{"class":4315},[3536,29165,29166,29168,29170],{"class":3538,"line":16405},[3536,29167,28158],{"class":4315},[3536,29169,4319],{"class":3546},[3536,29171,4441],{"class":3561},[3536,29173,29174,29176],{"class":3538,"line":16410},[3536,29175,8799],{"class":4309},[3536,29177,29178],{"class":3616},"Slider\n",[3536,29180,29181,29184,29186,29188,29190],{"class":3538,"line":16418},[3536,29182,29183],{"class":4315},"                  minimumValue",[3536,29185,4319],{"class":3546},[3536,29187,4322],{"class":3561},[3536,29189,5192],{"class":4897},[3536,29191,4476],{"class":3561},[3536,29193,29194,29197,29199,29201,29203],{"class":3538,"line":16427},[3536,29195,29196],{"class":4315},"                  maximumValue",[3536,29198,4319],{"class":3546},[3536,29200,4322],{"class":3561},[3536,29202,23463],{"class":4897},[3536,29204,4476],{"class":3561},[3536,29206,29207,29210,29212,29214,29216],{"class":3538,"line":16432},[3536,29208,29209],{"class":4315},"                  step",[3536,29211,4319],{"class":3546},[3536,29213,4322],{"class":3561},[3536,29215,5192],{"class":4897},[3536,29217,4476],{"class":3561},[3536,29219,29220,29223,29225,29227,29229],{"class":3538,"line":16440},[3536,29221,29222],{"class":4315},"                  value",[3536,29224,4319],{"class":3546},[3536,29226,4322],{"class":3561},[3536,29228,24824],{"class":3542},[3536,29230,4476],{"class":3561},[3536,29232,29233,29236,29238,29240,29242],{"class":3538,"line":16449},[3536,29234,29235],{"class":4315},"                  onValueChange",[3536,29237,4319],{"class":3546},[3536,29239,4322],{"class":3561},[3536,29241,27885],{"class":3542},[3536,29243,4476],{"class":3561},[3536,29245,29246,29249,29251,29253,29255,29257,29259],{"class":3538,"line":16458},[3536,29247,29248],{"class":4315},"                  minimumTrackTintColor",[3536,29250,4319],{"class":3546},[3536,29252,4322],{"class":3561},[3536,29254,12082],{"class":3542},[3536,29256,3547],{"class":3568},[3536,29258,12202],{"class":3542},[3536,29260,4476],{"class":3561},[3536,29262,29263,29266,29268,29270,29272,29274,29276],{"class":3538,"line":16463},[3536,29264,29265],{"class":4315},"                  maximumTrackTintColor",[3536,29267,4319],{"class":3546},[3536,29269,4322],{"class":3561},[3536,29271,12082],{"class":3542},[3536,29273,3547],{"class":3568},[3536,29275,12655],{"class":3542},[3536,29277,4476],{"class":3561},[3536,29279,29280,29283,29285,29287,29289,29291,29293],{"class":3538,"line":16471},[3536,29281,29282],{"class":4315},"                  thumbTintColor",[3536,29284,4319],{"class":3546},[3536,29286,4322],{"class":3561},[3536,29288,12082],{"class":3542},[3536,29290,3547],{"class":3568},[3536,29292,12202],{"class":3542},[3536,29294,4476],{"class":3561},[3536,29296,29297],{"class":3538,"line":16481},[3536,29298,29299],{"class":4309},"                \u002F>\n",[3536,29301,29302],{"class":3538,"line":16486},[3536,29303,28462],{"class":3561},[3536,29305,29306],{"class":3538,"line":16494},[3536,29307,13022],{"class":4309},[3536,29309,29310,29312],{"class":3538,"line":16503},[3536,29311,18235],{"class":3568},[3536,29313,4476],{"class":3561},[3536,29315,29316],{"class":3538,"line":16508},[3536,29317,12358],{"class":4309},[3536,29319,29320,29322,29324,29326,29328,29330,29332,29334,29336,29338,29340,29342,29344],{"class":3538,"line":16516},[3536,29321,8144],{"class":4309},[3536,29323,6704],{"class":3616},[3536,29325,14692],{"class":4315},[3536,29327,4319],{"class":3546},[3536,29329,15020],{"class":3557},[3536,29331,12792],{"class":4315},[3536,29333,4319],{"class":3546},[3536,29335,4322],{"class":3561},[3536,29337,12082],{"class":3542},[3536,29339,3547],{"class":3568},[3536,29341,12621],{"class":3542},[3536,29343,3574],{"class":3561},[3536,29345,4352],{"class":4309},[3536,29347,29348,29351,29353,29355,29358,29360],{"class":3538,"line":16526},[3536,29349,29350],{"class":3546},"          Зараз на слайдері: ",[3536,29352,4322],{"class":3561},[3536,29354,17790],{"class":3542},[3536,29356,29357],{"class":3561},"}{",[3536,29359,20680],{"class":3557},[3536,29361,4476],{"class":3561},[3536,29363,29364,29366,29368,29370,29372,29375,29377,29379,29381],{"class":3538,"line":16531},[3536,29365,15163],{"class":3561},[3536,29367,29118],{"class":3550},[3536,29369,3554],{"class":3568},[3536,29371,17790],{"class":3542},[3536,29373,29374],{"class":3546}," ??",[3536,29376,9226],{"class":4897},[3536,29378,3835],{"class":3568},[3536,29380,3574],{"class":3561},[3536,29382,29383],{"class":3546}," (можна не збігатися з датами — це\n",[3536,29385,29387],{"class":3538,"line":29386},263,[3536,29388,29389],{"class":3546},"          окреме «орієнтовне» поле для навчання).\n",[3536,29391,29393,29395,29397],{"class":3538,"line":29392},264,[3536,29394,10208],{"class":4309},[3536,29396,6704],{"class":3616},[3536,29398,4352],{"class":4309},[3536,29400,29402],{"class":3538,"line":29401},265,[3536,29403,4748],{"emptyLinePlaceholder":4747},[3536,29405,29407,29409,29412],{"class":3538,"line":29406},266,[3536,29408,18815],{"class":3561},[3536,29410,29411],{"class":4573},"\u002F* ——— Switch ——— *\u002F",[3536,29413,4476],{"class":3561},[3536,29415,29417,29419],{"class":3538,"line":29416},267,[3536,29418,8144],{"class":4309},[3536,29420,27844],{"class":3616},[3536,29422,29424,29426,29428,29430,29432],{"class":3538,"line":29423},268,[3536,29425,27849],{"class":4315},[3536,29427,4319],{"class":3546},[3536,29429,4322],{"class":3561},[3536,29431,27856],{"class":3542},[3536,29433,4476],{"class":3561},[3536,29435,29437,29439,29441],{"class":3538,"line":29436},269,[3536,29438,12290],{"class":4315},[3536,29440,4319],{"class":3546},[3536,29442,29443],{"class":3557},"\"isPrivate\"\n",[3536,29445,29447,29449,29451,29453,29455,29457,29459,29461,29463,29465,29467,29469],{"class":3538,"line":29446},270,[3536,29448,27872],{"class":4315},[3536,29450,4319],{"class":3546},[3536,29452,4322],{"class":3561},[3536,29454,8717],{"class":3568},[3536,29456,5635],{"class":3542},[3536,29458,13604],{"class":3568},[3536,29460,27885],{"class":3542},[3536,29462,3755],{"class":3568},[3536,29464,24824],{"class":3542},[3536,29466,27897],{"class":3568},[3536,29468,5042],{"class":3561},[3536,29470,4985],{"class":3568},[3536,29472,29474,29476],{"class":3538,"line":29473},271,[3536,29475,8755],{"class":4309},[3536,29477,28109],{"class":3616},[3536,29479,29481,29483,29485],{"class":3538,"line":29480},272,[3536,29482,18438],{"class":4315},[3536,29484,4319],{"class":3546},[3536,29486,29487],{"class":3557},"\"Приватна поїздка\"\n",[3536,29489,29491,29493,29495],{"class":3538,"line":29490},273,[3536,29492,28123],{"class":4315},[3536,29494,4319],{"class":3546},[3536,29496,29497],{"class":3557},"\"Switch: увімкнено — мітка «приватна» на картці\"\n",[3536,29499,29501,29503,29505,29507,29509,29511,29513,29515,29517],{"class":3538,"line":29500},274,[3536,29502,27971],{"class":4315},[3536,29504,4319],{"class":3546},[3536,29506,4322],{"class":3561},[3536,29508,27111],{"class":3542},[3536,29510,3547],{"class":3568},[3536,29512,17865],{"class":3542},[3536,29514,27984],{"class":3568},[3536,29516,27987],{"class":3542},[3536,29518,4476],{"class":3561},[3536,29520,29522,29524,29526],{"class":3538,"line":29521},275,[3536,29523,28158],{"class":4315},[3536,29525,4319],{"class":3546},[3536,29527,4441],{"class":3561},[3536,29529,29531,29533],{"class":3538,"line":29530},276,[3536,29532,8799],{"class":4309},[3536,29534,29535],{"class":3616},"Switch\n",[3536,29537,29539,29541,29543,29545,29547],{"class":3538,"line":29538},277,[3536,29540,29222],{"class":4315},[3536,29542,4319],{"class":3546},[3536,29544,4322],{"class":3561},[3536,29546,24824],{"class":3542},[3536,29548,4476],{"class":3561},[3536,29550,29552,29554,29556,29558,29560],{"class":3538,"line":29551},278,[3536,29553,29235],{"class":4315},[3536,29555,4319],{"class":3546},[3536,29557,4322],{"class":3561},[3536,29559,27885],{"class":3542},[3536,29561,4476],{"class":3561},[3536,29563,29565,29568,29570,29572],{"class":3538,"line":29564},279,[3536,29566,29567],{"class":4315},"                  trackColor",[3536,29569,4319],{"class":3546},[3536,29571,4322],{"class":3561},[3536,29573,4441],{"class":3568},[3536,29575,29577,29580,29582,29584,29586],{"class":3538,"line":29576},280,[3536,29578,29579],{"class":3542},"                    false:",[3536,29581,12168],{"class":3542},[3536,29583,3547],{"class":3568},[3536,29585,12655],{"class":3542},[3536,29587,4390],{"class":3568},[3536,29589,29591,29594,29596,29598,29600],{"class":3538,"line":29590},281,[3536,29592,29593],{"class":3542},"                    true:",[3536,29595,12168],{"class":3542},[3536,29597,3547],{"class":3568},[3536,29599,12202],{"class":3542},[3536,29601,4390],{"class":3568},[3536,29603,29605,29608],{"class":3538,"line":29604},282,[3536,29606,29607],{"class":3568},"                  }",[3536,29609,4476],{"class":3561},[3536,29611,29613,29616,29618,29620,29622,29624,29626],{"class":3538,"line":29612},283,[3536,29614,29615],{"class":4315},"                  thumbColor",[3536,29617,4319],{"class":3546},[3536,29619,4322],{"class":3561},[3536,29621,12082],{"class":3542},[3536,29623,3547],{"class":3568},[3536,29625,15585],{"class":3542},[3536,29627,4476],{"class":3561},[3536,29629,29631,29634,29636,29638,29640,29642,29644],{"class":3538,"line":29630},284,[3536,29632,29633],{"class":4315},"                  ios_backgroundColor",[3536,29635,4319],{"class":3546},[3536,29637,4322],{"class":3561},[3536,29639,12082],{"class":3542},[3536,29641,3547],{"class":3568},[3536,29643,12655],{"class":3542},[3536,29645,4476],{"class":3561},[3536,29647,29649],{"class":3538,"line":29648},285,[3536,29650,29299],{"class":4309},[3536,29652,29654],{"class":3538,"line":29653},286,[3536,29655,28462],{"class":3561},[3536,29657,29659],{"class":3538,"line":29658},287,[3536,29660,13022],{"class":4309},[3536,29662,29664,29666],{"class":3538,"line":29663},288,[3536,29665,18235],{"class":3568},[3536,29667,4476],{"class":3561},[3536,29669,29671],{"class":3538,"line":29670},289,[3536,29672,12358],{"class":4309},[3536,29674,29676],{"class":3538,"line":29675},290,[3536,29677,4748],{"emptyLinePlaceholder":4747},[3536,29679,29681,29683,29686],{"class":3538,"line":29680},291,[3536,29682,18815],{"class":3561},[3536,29684,29685],{"class":4573},"\u002F* ——— Checkbox (опційний прапорець) ——— *\u002F",[3536,29687,4476],{"class":3561},[3536,29689,29691,29693],{"class":3538,"line":29690},292,[3536,29692,8144],{"class":4309},[3536,29694,27844],{"class":3616},[3536,29696,29698,29700,29702,29704,29706],{"class":3538,"line":29697},293,[3536,29699,27849],{"class":4315},[3536,29701,4319],{"class":3546},[3536,29703,4322],{"class":3561},[3536,29705,27856],{"class":3542},[3536,29707,4476],{"class":3561},[3536,29709,29711,29713,29715],{"class":3538,"line":29710},294,[3536,29712,12290],{"class":4315},[3536,29714,4319],{"class":3546},[3536,29716,29717],{"class":3557},"\"hasItinerary\"\n",[3536,29719,29721,29723,29725,29727,29729,29731,29733,29735,29737,29739,29741,29743],{"class":3538,"line":29720},295,[3536,29722,27872],{"class":4315},[3536,29724,4319],{"class":3546},[3536,29726,4322],{"class":3561},[3536,29728,8717],{"class":3568},[3536,29730,5635],{"class":3542},[3536,29732,13604],{"class":3568},[3536,29734,27885],{"class":3542},[3536,29736,3755],{"class":3568},[3536,29738,24824],{"class":3542},[3536,29740,27897],{"class":3568},[3536,29742,5042],{"class":3561},[3536,29744,4985],{"class":3568},[3536,29746,29748,29750],{"class":3538,"line":29747},296,[3536,29749,8755],{"class":4309},[3536,29751,28109],{"class":3616},[3536,29753,29755,29757,29759],{"class":3538,"line":29754},297,[3536,29756,18438],{"class":4315},[3536,29758,4319],{"class":3546},[3536,29760,29761],{"class":3557},"\"Є план маршруту\"\n",[3536,29763,29765,29767,29769],{"class":3538,"line":29764},298,[3536,29766,28123],{"class":4315},[3536,29768,4319],{"class":3546},[3536,29770,29771],{"class":3557},"\"Checkbox: так \u002F ні, без обов’язковості\"\n",[3536,29773,29775,29777,29779,29781,29783,29785,29787,29789,29791],{"class":3538,"line":29774},299,[3536,29776,27971],{"class":4315},[3536,29778,4319],{"class":3546},[3536,29780,4322],{"class":3561},[3536,29782,27111],{"class":3542},[3536,29784,3547],{"class":3568},[3536,29786,17930],{"class":3542},[3536,29788,27984],{"class":3568},[3536,29790,27987],{"class":3542},[3536,29792,4476],{"class":3561},[3536,29794,29796,29798,29800],{"class":3538,"line":29795},300,[3536,29797,28158],{"class":4315},[3536,29799,4319],{"class":3546},[3536,29801,4441],{"class":3561},[3536,29803,29805,29807],{"class":3538,"line":29804},301,[3536,29806,8799],{"class":4309},[3536,29808,29809],{"class":3616},"Checkbox\n",[3536,29811,29813,29815,29817,29819,29821],{"class":3538,"line":29812},302,[3536,29814,29222],{"class":4315},[3536,29816,4319],{"class":3546},[3536,29818,4322],{"class":3561},[3536,29820,24824],{"class":3542},[3536,29822,4476],{"class":3561},[3536,29824,29826,29828,29830,29832,29834],{"class":3538,"line":29825},303,[3536,29827,29235],{"class":4315},[3536,29829,4319],{"class":3546},[3536,29831,4322],{"class":3561},[3536,29833,27885],{"class":3542},[3536,29835,4476],{"class":3561},[3536,29837,29839,29842,29844,29846],{"class":3538,"line":29838},304,[3536,29840,29841],{"class":4315},"                  tintColors",[3536,29843,4319],{"class":3546},[3536,29845,4322],{"class":3561},[3536,29847,4441],{"class":3568},[3536,29849,29851,29853,29855,29857,29859],{"class":3538,"line":29850},305,[3536,29852,29593],{"class":3542},[3536,29854,12168],{"class":3542},[3536,29856,3547],{"class":3568},[3536,29858,12202],{"class":3542},[3536,29860,4390],{"class":3568},[3536,29862,29864,29866,29868,29870,29872],{"class":3538,"line":29863},306,[3536,29865,29579],{"class":3542},[3536,29867,12168],{"class":3542},[3536,29869,3547],{"class":3568},[3536,29871,12655],{"class":3542},[3536,29873,4390],{"class":3568},[3536,29875,29877,29879],{"class":3538,"line":29876},307,[3536,29878,29607],{"class":3568},[3536,29880,4476],{"class":3561},[3536,29882,29884,29887,29889,29891,29893,29895,29897],{"class":3538,"line":29883},308,[3536,29885,29886],{"class":4315},"                  onCheckColor",[3536,29888,4319],{"class":3546},[3536,29890,4322],{"class":3561},[3536,29892,12082],{"class":3542},[3536,29894,3547],{"class":3568},[3536,29896,15585],{"class":3542},[3536,29898,4476],{"class":3561},[3536,29900,29902,29905,29907,29909,29911,29913,29915],{"class":3538,"line":29901},309,[3536,29903,29904],{"class":4315},"                  onFillColor",[3536,29906,4319],{"class":3546},[3536,29908,4322],{"class":3561},[3536,29910,12082],{"class":3542},[3536,29912,3547],{"class":3568},[3536,29914,12202],{"class":3542},[3536,29916,4476],{"class":3561},[3536,29918,29920,29923,29925,29927,29929,29931,29933],{"class":3538,"line":29919},310,[3536,29921,29922],{"class":4315},"                  onTintColor",[3536,29924,4319],{"class":3546},[3536,29926,4322],{"class":3561},[3536,29928,12082],{"class":3542},[3536,29930,3547],{"class":3568},[3536,29932,12202],{"class":3542},[3536,29934,4476],{"class":3561},[3536,29936,29938,29941,29943],{"class":3538,"line":29937},311,[3536,29939,29940],{"class":4315},"                  boxType",[3536,29942,4319],{"class":3546},[3536,29944,29945],{"class":3557},"\"square\"\n",[3536,29947,29949],{"class":3538,"line":29948},312,[3536,29950,29299],{"class":4309},[3536,29952,29954],{"class":3538,"line":29953},313,[3536,29955,28462],{"class":3561},[3536,29957,29959],{"class":3538,"line":29958},314,[3536,29960,13022],{"class":4309},[3536,29962,29964,29966],{"class":3538,"line":29963},315,[3536,29965,18235],{"class":3568},[3536,29967,4476],{"class":3561},[3536,29969,29971],{"class":3538,"line":29970},316,[3536,29972,12358],{"class":4309},[3536,29974,29976],{"class":3538,"line":29975},317,[3536,29977,4748],{"emptyLinePlaceholder":4747},[3536,29979,29981,29983,29986],{"class":3538,"line":29980},318,[3536,29982,18815],{"class":3561},[3536,29984,29985],{"class":4573},"\u002F* ——— Checkbox (обов’язкова згода) ——— *\u002F",[3536,29987,4476],{"class":3561},[3536,29989,29991,29993],{"class":3538,"line":29990},319,[3536,29992,8144],{"class":4309},[3536,29994,27844],{"class":3616},[3536,29996,29998,30000,30002,30004,30006],{"class":3538,"line":29997},320,[3536,29999,27849],{"class":4315},[3536,30001,4319],{"class":3546},[3536,30003,4322],{"class":3561},[3536,30005,27856],{"class":3542},[3536,30007,4476],{"class":3561},[3536,30009,30011,30013,30015],{"class":3538,"line":30010},321,[3536,30012,12290],{"class":4315},[3536,30014,4319],{"class":3546},[3536,30016,30017],{"class":3557},"\"acceptedLocalSave\"\n",[3536,30019,30021,30023,30025,30027,30029,30031,30033,30035,30037,30039,30041,30043],{"class":3538,"line":30020},322,[3536,30022,27872],{"class":4315},[3536,30024,4319],{"class":3546},[3536,30026,4322],{"class":3561},[3536,30028,8717],{"class":3568},[3536,30030,5635],{"class":3542},[3536,30032,13604],{"class":3568},[3536,30034,27885],{"class":3542},[3536,30036,3755],{"class":3568},[3536,30038,24824],{"class":3542},[3536,30040,27897],{"class":3568},[3536,30042,5042],{"class":3561},[3536,30044,4985],{"class":3568},[3536,30046,30048,30050],{"class":3538,"line":30047},323,[3536,30049,8755],{"class":4309},[3536,30051,28109],{"class":3616},[3536,30053,30055,30057,30059],{"class":3538,"line":30054},324,[3536,30056,18438],{"class":4315},[3536,30058,4319],{"class":3546},[3536,30060,30061],{"class":3557},"\"Згода на локальне збереження\"\n",[3536,30063,30065,30067,30069],{"class":3538,"line":30064},325,[3536,30066,28123],{"class":4315},[3536,30068,4319],{"class":3546},[3536,30070,30071],{"class":3557},"\"Поки немає API: дані лишаються в пам’яті застосунку\"\n",[3536,30073,30075,30077,30079,30081,30083,30085,30088,30090,30092],{"class":3538,"line":30074},326,[3536,30076,27971],{"class":4315},[3536,30078,4319],{"class":3546},[3536,30080,4322],{"class":3561},[3536,30082,27111],{"class":3542},[3536,30084,3547],{"class":3568},[3536,30086,30087],{"class":3542},"acceptedLocalSave",[3536,30089,27984],{"class":3568},[3536,30091,27987],{"class":3542},[3536,30093,4476],{"class":3561},[3536,30095,30097,30099,30101],{"class":3538,"line":30096},327,[3536,30098,28158],{"class":4315},[3536,30100,4319],{"class":3546},[3536,30102,4441],{"class":3561},[3536,30104,30106,30108],{"class":3538,"line":30105},328,[3536,30107,8799],{"class":4309},[3536,30109,29809],{"class":3616},[3536,30111,30113,30115,30117,30119,30122,30124,30126,30128],{"class":3538,"line":30112},329,[3536,30114,29222],{"class":4315},[3536,30116,4319],{"class":3546},[3536,30118,4322],{"class":3561},[3536,30120,30121],{"class":3550},"Boolean",[3536,30123,3554],{"class":3568},[3536,30125,24824],{"class":3542},[3536,30127,3835],{"class":3568},[3536,30129,4476],{"class":3561},[3536,30131,30133,30135,30137,30139,30141],{"class":3538,"line":30132},330,[3536,30134,29235],{"class":4315},[3536,30136,4319],{"class":3546},[3536,30138,4322],{"class":3561},[3536,30140,27885],{"class":3542},[3536,30142,4476],{"class":3561},[3536,30144,30146,30148,30150,30152],{"class":3538,"line":30145},331,[3536,30147,29841],{"class":4315},[3536,30149,4319],{"class":3546},[3536,30151,4322],{"class":3561},[3536,30153,4441],{"class":3568},[3536,30155,30157,30159,30161,30163,30165],{"class":3538,"line":30156},332,[3536,30158,29593],{"class":3542},[3536,30160,12168],{"class":3542},[3536,30162,3547],{"class":3568},[3536,30164,12202],{"class":3542},[3536,30166,4390],{"class":3568},[3536,30168,30170,30172,30174,30176,30178],{"class":3538,"line":30169},333,[3536,30171,29579],{"class":3542},[3536,30173,12168],{"class":3542},[3536,30175,3547],{"class":3568},[3536,30177,12655],{"class":3542},[3536,30179,4390],{"class":3568},[3536,30181,30183,30185],{"class":3538,"line":30182},334,[3536,30184,29607],{"class":3568},[3536,30186,4476],{"class":3561},[3536,30188,30190,30192,30194,30196,30198,30200,30202],{"class":3538,"line":30189},335,[3536,30191,29886],{"class":4315},[3536,30193,4319],{"class":3546},[3536,30195,4322],{"class":3561},[3536,30197,12082],{"class":3542},[3536,30199,3547],{"class":3568},[3536,30201,15585],{"class":3542},[3536,30203,4476],{"class":3561},[3536,30205,30207,30209,30211,30213,30215,30217,30219],{"class":3538,"line":30206},336,[3536,30208,29904],{"class":4315},[3536,30210,4319],{"class":3546},[3536,30212,4322],{"class":3561},[3536,30214,12082],{"class":3542},[3536,30216,3547],{"class":3568},[3536,30218,12202],{"class":3542},[3536,30220,4476],{"class":3561},[3536,30222,30224,30226,30228,30230,30232,30234,30236],{"class":3538,"line":30223},337,[3536,30225,29922],{"class":4315},[3536,30227,4319],{"class":3546},[3536,30229,4322],{"class":3561},[3536,30231,12082],{"class":3542},[3536,30233,3547],{"class":3568},[3536,30235,12202],{"class":3542},[3536,30237,4476],{"class":3561},[3536,30239,30241,30243,30245],{"class":3538,"line":30240},338,[3536,30242,29940],{"class":4315},[3536,30244,4319],{"class":3546},[3536,30246,29945],{"class":3557},[3536,30248,30250],{"class":3538,"line":30249},339,[3536,30251,29299],{"class":4309},[3536,30253,30255],{"class":3538,"line":30254},340,[3536,30256,28462],{"class":3561},[3536,30258,30260],{"class":3538,"line":30259},341,[3536,30261,13022],{"class":4309},[3536,30263,30265,30267],{"class":3538,"line":30264},342,[3536,30266,18235],{"class":3568},[3536,30268,4476],{"class":3561},[3536,30270,30272],{"class":3538,"line":30271},343,[3536,30273,12358],{"class":4309},[3536,30275,30277],{"class":3538,"line":30276},344,[3536,30278,4748],{"emptyLinePlaceholder":4747},[3536,30280,30282,30284,30287],{"class":3538,"line":30281},345,[3536,30283,18815],{"class":3561},[3536,30285,30286],{"class":4573},"\u002F* ——— Button (Pressable-обгортка з shared\u002Fui) ——— *\u002F",[3536,30288,4476],{"class":3561},[3536,30290,30292,30294,30296,30298,30300,30302,30304,30306,30308,30310,30312,30314,30316,30318,30320,30322,30324,30326],{"class":3538,"line":30291},346,[3536,30293,8144],{"class":4309},[3536,30295,4993],{"class":3616},[3536,30297,8041],{"class":4315},[3536,30299,4319],{"class":3546},[3536,30301,4322],{"class":3561},[3536,30303,8165],{"class":3568},[3536,30305,10649],{"class":3542},[3536,30307,14219],{"class":3542},[3536,30309,3547],{"class":3568},[3536,30311,14286],{"class":3542},[3536,30313,3755],{"class":3568},[3536,30315,10842],{"class":3542},[3536,30317,14219],{"class":3542},[3536,30319,3547],{"class":3568},[3536,30321,14286],{"class":3542},[3536,30323,8174],{"class":3568},[3536,30325,3574],{"class":3561},[3536,30327,4352],{"class":4309},[3536,30329,30331,30333],{"class":3538,"line":30330},347,[3536,30332,8731],{"class":4309},[3536,30334,16150],{"class":3616},[3536,30336,30338,30340,30342,30344,30346,30348,30351,30353,30356],{"class":3538,"line":30337},348,[3536,30339,17359],{"class":4315},[3536,30341,4319],{"class":3546},[3536,30343,4322],{"class":3561},[3536,30345,27055],{"class":3542},[3536,30347,12129],{"class":3546},[3536,30349,30350],{"class":3557}," 'Створюємо…'",[3536,30352,12135],{"class":3546},[3536,30354,30355],{"class":3557}," 'Створити поїздку'",[3536,30357,4476],{"class":3561},[3536,30359,30361,30363,30365,30367,30370,30372,30375,30377],{"class":3538,"line":30360},349,[3536,30362,17369],{"class":4315},[3536,30364,4319],{"class":3546},[3536,30366,4322],{"class":3561},[3536,30368,30369],{"class":3550},"handleSubmit",[3536,30371,3554],{"class":3568},[3536,30373,30374],{"class":3542},"onValid",[3536,30376,3835],{"class":3568},[3536,30378,4476],{"class":3561},[3536,30380,30382,30385,30387,30389,30391],{"class":3538,"line":30381},350,[3536,30383,30384],{"class":4315},"            disabled",[3536,30386,4319],{"class":3546},[3536,30388,4322],{"class":3561},[3536,30390,27055],{"class":3542},[3536,30392,4476],{"class":3561},[3536,30394,30396],{"class":3538,"line":30395},351,[3536,30397,14508],{"class":4309},[3536,30399,30401,30403,30406,30408],{"class":3538,"line":30400},352,[3536,30402,15163],{"class":3561},[3536,30404,30405],{"class":3542},"onCancel",[3536,30407,12129],{"class":3546},[3536,30409,4985],{"class":3568},[3536,30411,30413,30415],{"class":3538,"line":30412},353,[3536,30414,8755],{"class":4309},[3536,30416,16150],{"class":3616},[3536,30418,30420,30422,30424],{"class":3538,"line":30419},354,[3536,30421,18438],{"class":4315},[3536,30423,4319],{"class":3546},[3536,30425,30426],{"class":3557},"\"Скасувати\"\n",[3536,30428,30430,30432,30434],{"class":3538,"line":30429},355,[3536,30431,18369],{"class":4315},[3536,30433,4319],{"class":3546},[3536,30435,18452],{"class":3557},[3536,30437,30439,30441,30443,30445,30447],{"class":3538,"line":30438},356,[3536,30440,8968],{"class":4315},[3536,30442,4319],{"class":3546},[3536,30444,4322],{"class":3561},[3536,30446,30405],{"class":3542},[3536,30448,4476],{"class":3561},[3536,30450,30452,30455,30457,30459,30461],{"class":3538,"line":30451},357,[3536,30453,30454],{"class":4315},"              disabled",[3536,30456,4319],{"class":3546},[3536,30458,4322],{"class":3561},[3536,30460,27055],{"class":3542},[3536,30462,4476],{"class":3561},[3536,30464,30466],{"class":3538,"line":30465},358,[3536,30467,13022],{"class":4309},[3536,30469,30471,30473,30475],{"class":3538,"line":30470},359,[3536,30472,18168],{"class":3568},[3536,30474,3987],{"class":3546},[3536,30476,14526],{"class":3561},[3536,30478,30480,30482,30484],{"class":3538,"line":30479},360,[3536,30481,10208],{"class":4309},[3536,30483,4993],{"class":3616},[3536,30485,4352],{"class":4309},[3536,30487,30489,30491,30493],{"class":3538,"line":30488},361,[3536,30490,8215],{"class":4309},[3536,30492,18574],{"class":3616},[3536,30494,4352],{"class":4309},[3536,30496,30498,30500,30503],{"class":3538,"line":30497},362,[3536,30499,5063],{"class":4309},[3536,30501,30502],{"class":3616},"KeyboardAvoidingView",[3536,30504,4352],{"class":4309},[3536,30506,30508],{"class":3538,"line":30507},363,[3536,30509,5072],{"class":3546},[3536,30511,30513],{"class":3538,"line":30512},364,[3536,30514,4476],{"class":3546},[3536,30516,30518],{"class":3538,"line":30517},365,[3536,30519,4748],{"emptyLinePlaceholder":4747},[3536,30521,30523,30525,30528,30530,30533,30535,30537,30539,30541],{"class":3538,"line":30522},366,[3536,30524,12068],{"class":3561},[3536,30526,30527],{"class":3550}," daysWord",[3536,30529,3554],{"class":3546},[3536,30531,30532],{"class":3542},"n",[3536,30534,3613],{"class":3546},[3536,30536,22878],{"class":3616},[3536,30538,7877],{"class":3546},[3536,30540,3617],{"class":3616},[3536,30542,4547],{"class":3546},[3536,30544,30546,30548,30551,30553,30556,30558,30561,30563,30565,30568,30571],{"class":3538,"line":30545},367,[3536,30547,4770],{"class":3561},[3536,30549,30550],{"class":3599}," abs",[3536,30552,4874],{"class":3546},[3536,30554,30555],{"class":3542},"Math",[3536,30557,3547],{"class":3546},[3536,30559,30560],{"class":3550},"abs",[3536,30562,3554],{"class":3546},[3536,30564,30532],{"class":3542},[3536,30566,30567],{"class":3546},") % ",[3536,30569,30570],{"class":4897},"100",[3536,30572,4742],{"class":3546},[3536,30574,30576,30578,30581,30583,30585,30588,30590],{"class":3538,"line":30575},368,[3536,30577,4770],{"class":3561},[3536,30579,30580],{"class":3599}," last",[3536,30582,4874],{"class":3546},[3536,30584,30560],{"class":3542},[3536,30586,30587],{"class":3546}," % ",[3536,30589,23329],{"class":4897},[3536,30591,4742],{"class":3546},[3536,30593,30595,30597,30599,30601,30604,30606,30608,30610,30613,30616,30618,30621,30624],{"class":3538,"line":30594},369,[3536,30596,9993],{"class":4725},[3536,30598,5365],{"class":3546},[3536,30600,30560],{"class":3542},[3536,30602,30603],{"class":3546}," > ",[3536,30605,23329],{"class":4897},[3536,30607,24008],{"class":3546},[3536,30609,30560],{"class":3542},[3536,30611,30612],{"class":3546}," \u003C ",[3536,30614,30615],{"class":4897},"20",[3536,30617,7932],{"class":3546},[3536,30619,30620],{"class":4725},"return",[3536,30622,30623],{"class":3557}," 'днів'",[3536,30625,4742],{"class":3546},[3536,30627,30629,30631,30633,30636,30638,30640,30642,30644,30647],{"class":3538,"line":30628},370,[3536,30630,9993],{"class":4725},[3536,30632,5365],{"class":3546},[3536,30634,30635],{"class":3542},"last",[3536,30637,7944],{"class":3546},[3536,30639,5192],{"class":4897},[3536,30641,7932],{"class":3546},[3536,30643,30620],{"class":4725},[3536,30645,30646],{"class":3557}," 'день'",[3536,30648,4742],{"class":3546},[3536,30650,30652,30654,30656,30658,30661,30663,30665,30667,30670,30672,30674,30676,30679],{"class":3538,"line":30651},371,[3536,30653,9993],{"class":4725},[3536,30655,5365],{"class":3546},[3536,30657,30635],{"class":3542},[3536,30659,30660],{"class":3546}," >= ",[3536,30662,19784],{"class":4897},[3536,30664,24008],{"class":3546},[3536,30666,30635],{"class":3542},[3536,30668,30669],{"class":3546}," \u003C= ",[3536,30671,28959],{"class":4897},[3536,30673,7932],{"class":3546},[3536,30675,30620],{"class":4725},[3536,30677,30678],{"class":3557}," 'дні'",[3536,30680,4742],{"class":3546},[3536,30682,30684,30686,30688],{"class":3538,"line":30683},372,[3536,30685,4982],{"class":4725},[3536,30687,30623],{"class":3557},[3536,30689,4742],{"class":3546},[3536,30691,30693],{"class":3538,"line":30692},373,[3536,30694,4476],{"class":3546},[3536,30696,30698],{"class":3538,"line":30697},374,[3536,30699,4748],{"emptyLinePlaceholder":4747},[3536,30701,30703,30705,30707,30709,30711,30713,30715],{"class":3538,"line":30702},375,[3536,30704,3593],{"class":3561},[3536,30706,9201],{"class":3599},[3536,30708,4874],{"class":3546},[3536,30710,8266],{"class":3542},[3536,30712,3547],{"class":3546},[3536,30714,9210],{"class":3550},[3536,30716,4378],{"class":3546},[3536,30718,30720,30723],{"class":3538,"line":30719},376,[3536,30721,30722],{"class":3542},"  flex:",[3536,30724,4547],{"class":3546},[3536,30726,30728,30730,30732],{"class":3538,"line":30727},377,[3536,30729,10665],{"class":3542},[3536,30731,9226],{"class":4897},[3536,30733,4390],{"class":3546},[3536,30735,30737],{"class":3538,"line":30736},378,[3536,30738,4579],{"class":3546},[3536,30740,30742,30745],{"class":3538,"line":30741},379,[3536,30743,30744],{"class":3542},"  content:",[3536,30746,4547],{"class":3546},[3536,30748,30750,30753,30755],{"class":3538,"line":30749},380,[3536,30751,30752],{"class":3542},"    flexGrow:",[3536,30754,9226],{"class":4897},[3536,30756,4390],{"class":3546},[3536,30758,30760],{"class":3538,"line":30759},381,[3536,30761,4579],{"class":3546},[3536,30763,30765,30768],{"class":3538,"line":30764},382,[3536,30766,30767],{"class":3542},"  multiline:",[3536,30769,4547],{"class":3546},[3536,30771,30773,30776,30779],{"class":3538,"line":30772},383,[3536,30774,30775],{"class":3542},"    minHeight:",[3536,30777,30778],{"class":4897}," 110",[3536,30780,4390],{"class":3546},[3536,30782,30784],{"class":3538,"line":30783},384,[3536,30785,4579],{"class":3546},[3536,30787,30789,30792],{"class":3538,"line":30788},385,[3536,30790,30791],{"class":3542},"  pickerWrap:",[3536,30793,4547],{"class":3546},[3536,30795,30797,30799,30801],{"class":3538,"line":30796},386,[3536,30798,9432],{"class":3542},[3536,30800,9226],{"class":4897},[3536,30802,4390],{"class":3546},[3536,30804,30806,30809,30812],{"class":3538,"line":30805},387,[3536,30807,30808],{"class":3542},"    overflow:",[3536,30810,30811],{"class":3557}," 'hidden'",[3536,30813,4390],{"class":3546},[3536,30815,30817],{"class":3538,"line":30816},388,[3536,30818,4579],{"class":3546},[3536,30820,30822],{"class":3538,"line":30821},389,[3536,30823,4417],{"class":3546},[3526,30825,30828],{"className":3528,"code":30826,"filename":30827,"language":3530,"meta":3531,"style":3531},"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",[3533,30829,30830,30846,30852,30859,30865,30871,30877,30883,30893,30902,30911,30922,30926,30942,30962,30966,30975,30986,30997,31018,31031,31042,31047,31058,31069,31073,31077,31081,31086,31091,31095,31106,31112,31118,31124,31130,31136,31142,31148,31157,31179,31203,31208,31232,31236,31254,31258,31272,31283,31294,31298,31302,31315,31325,31333,31337,31341,31354,31365,31372,31376,31380,31412,31417,31427,31450,31461,31465,31471,31475,31479,31509,31519,31530,31534,31538,31542,31560,31564,31570,31598,31626,31634,31642,31648,31657,31687,31700,31710,31720,31724,31750,31762,31775,31792,31804,31808,31814,31818,31838,31846,31857,31885,31893,31901,31909,31913,31922,31947,31954,31967,31977,31987,32001,32015,32029,32033,32041,32045,32064,32071,32084,32089,32099,32113,32117,32150,32156,32166,32178,32183,32196,32209,32222,32227,32234,32238,32244,32254,32265,32292,32298,32302,32328,32336,32342,32354,32363,32373,32386,32398,32411,32430,32434,32440,32450,32461,32485,32491,32495,32522,32555,32586,32594,32602,32610,32619,32627,32635,32639,32643,32647,32668,32704,32741,32758,32793,32797,32801,32817,32824,32832,32836,32843,32851,32860,32868,32872,32879,32887,32896,32900,32907,32916,32925,32933,32937,32944,32952,32956,32963,32971,32975,32982,32990,32998,33002],{"__ignoreMap":3531},[3536,30831,30832,30834,30836,30838,30840,30842,30844],{"class":3538,"line":3539},[3536,30833,4726],{"class":4725},[3536,30835,3596],{"class":3546},[3536,30837,13378],{"class":3542},[3536,30839,4733],{"class":3546},[3536,30841,4736],{"class":4725},[3536,30843,13385],{"class":3557},[3536,30845,4742],{"class":3546},[3536,30847,30848,30850],{"class":3538,"line":4381},[3536,30849,4726],{"class":4725},[3536,30851,4547],{"class":3546},[3536,30853,30854,30857],{"class":3538,"line":4393},[3536,30855,30856],{"class":3542},"  Modal",[3536,30858,4390],{"class":3546},[3536,30860,30861,30863],{"class":3538,"line":4414},[3536,30862,16584],{"class":3542},[3536,30864,4390],{"class":3546},[3536,30866,30867,30869],{"class":3538,"line":4470},[3536,30868,13405],{"class":3542},[3536,30870,4390],{"class":3546},[3536,30872,30873,30875],{"class":3538,"line":4479},[3536,30874,13419],{"class":3542},[3536,30876,4390],{"class":3546},[3536,30878,30879,30881],{"class":3538,"line":4484},[3536,30880,13426],{"class":3542},[3536,30882,4390],{"class":3546},[3536,30884,30885,30887,30889,30891],{"class":3538,"line":4490},[3536,30886,13433],{"class":3546},[3536,30888,4736],{"class":4725},[3536,30890,8281],{"class":3557},[3536,30892,4742],{"class":3546},[3536,30894,30895,30897,30900],{"class":3538,"line":7163},[3536,30896,4726],{"class":4725},[3536,30898,30899],{"class":3542}," DateTimePicker",[3536,30901,5939],{"class":3546},[3536,30903,30904,30906,30909],{"class":3538,"line":7171},[3536,30905,13516],{"class":4725},[3536,30907,30908],{"class":3542}," DateTimePickerEvent",[3536,30910,4390],{"class":3546},[3536,30912,30913,30915,30917,30920],{"class":3538,"line":7177},[3536,30914,13433],{"class":3546},[3536,30916,4736],{"class":4725},[3536,30918,30919],{"class":3557}," '@react-native-community\u002Fdatetimepicker'",[3536,30921,4742],{"class":3546},[3536,30923,30924],{"class":3538,"line":7190},[3536,30925,4748],{"emptyLinePlaceholder":4747},[3536,30927,30928,30930,30932,30934,30936,30938,30940],{"class":3538,"line":7203},[3536,30929,4726],{"class":4725},[3536,30931,3596],{"class":3546},[3536,30933,11986],{"class":3542},[3536,30935,4733],{"class":3546},[3536,30937,4736],{"class":4725},[3536,30939,11993],{"class":3557},[3536,30941,4742],{"class":3546},[3536,30943,30944,30946,30948,30950,30952,30954,30956,30958,30960],{"class":3538,"line":7214},[3536,30945,4726],{"class":4725},[3536,30947,3596],{"class":3546},[3536,30949,6704],{"class":3542},[3536,30951,3755],{"class":3546},[3536,30953,5021],{"class":3542},[3536,30955,4733],{"class":3546},[3536,30957,4736],{"class":4725},[3536,30959,13588],{"class":3557},[3536,30961,4742],{"class":3546},[3536,30963,30964],{"class":3538,"line":7220},[3536,30965,4748],{"emptyLinePlaceholder":4747},[3536,30967,30968,30970,30973],{"class":3538,"line":7226},[3536,30969,13553],{"class":3561},[3536,30971,30972],{"class":3616}," DateFieldProps",[3536,30974,7632],{"class":3546},[3536,30976,30977,30980,30982,30984],{"class":3538,"line":7244},[3536,30978,30979],{"class":3542},"  label",[3536,30981,3613],{"class":3546},[3536,30983,3617],{"class":3616},[3536,30985,4742],{"class":3546},[3536,30987,30988,30991,30993,30995],{"class":3538,"line":7250},[3536,30989,30990],{"class":3542},"  value",[3536,30992,3613],{"class":3546},[3536,30994,23776],{"class":3616},[3536,30996,4742],{"class":3546},[3536,30998,30999,31002,31004,31006,31008,31010,31012,31014,31016],{"class":3538,"line":7256},[3536,31000,31001],{"class":3550},"  onChange",[3536,31003,24378],{"class":3546},[3536,31005,23366],{"class":3542},[3536,31007,3613],{"class":3546},[3536,31009,23776],{"class":3616},[3536,31011,7932],{"class":3546},[3536,31013,5042],{"class":3561},[3536,31015,24421],{"class":3616},[3536,31017,4742],{"class":3546},[3536,31019,31020,31023,31025,31027,31029],{"class":3538,"line":7261},[3536,31021,31022],{"class":3550},"  onBlur",[3536,31024,26795],{"class":3546},[3536,31026,5042],{"class":3561},[3536,31028,24421],{"class":3616},[3536,31030,4742],{"class":3546},[3536,31032,31033,31036,31038,31040],{"class":3538,"line":7266},[3536,31034,31035],{"class":3542},"  error",[3536,31037,22858],{"class":3546},[3536,31039,3617],{"class":3616},[3536,31041,4742],{"class":3546},[3536,31043,31044],{"class":3538,"line":7803},[3536,31045,31046],{"class":4573},"  \u002F** Мінімальна дата (наприклад, endDate ≥ startDate). *\u002F\n",[3536,31048,31049,31052,31054,31056],{"class":3538,"line":7813},[3536,31050,31051],{"class":3542},"  minimumDate",[3536,31053,22858],{"class":3546},[3536,31055,23776],{"class":3616},[3536,31057,4742],{"class":3546},[3536,31059,31060,31063,31065,31067],{"class":3538,"line":7823},[3536,31061,31062],{"class":3542},"  maximumDate",[3536,31064,22858],{"class":3546},[3536,31066,23776],{"class":3616},[3536,31068,4742],{"class":3546},[3536,31070,31071],{"class":3538,"line":7833},[3536,31072,7681],{"class":3546},[3536,31074,31075],{"class":3538,"line":7843},[3536,31076,4748],{"emptyLinePlaceholder":4747},[3536,31078,31079],{"class":3538,"line":7848},[3536,31080,12004],{"class":4573},[3536,31082,31083],{"class":3538,"line":7854},[3536,31084,31085],{"class":4573}," * Поле дати: натискання відкриває системний date picker.\n",[3536,31087,31088],{"class":3538,"line":7859},[3536,31089,31090],{"class":4573}," * iOS — spinner у Modal; Android — нативний діалог.\n",[3536,31092,31093],{"class":3538,"line":7888},[3536,31094,12034],{"class":4573},[3536,31096,31097,31099,31101,31104],{"class":3538,"line":7914},[3536,31098,4753],{"class":4725},[3536,31100,4759],{"class":3561},[3536,31102,31103],{"class":3550}," DateField",[3536,31105,4378],{"class":3546},[3536,31107,31108,31110],{"class":3538,"line":7952},[3536,31109,30979],{"class":3542},[3536,31111,4390],{"class":3546},[3536,31113,31114,31116],{"class":3538,"line":8796},[3536,31115,30990],{"class":3542},[3536,31117,4390],{"class":3546},[3536,31119,31120,31122],{"class":3538,"line":8838},[3536,31121,31001],{"class":3542},[3536,31123,4390],{"class":3546},[3536,31125,31126,31128],{"class":3538,"line":8877},[3536,31127,31022],{"class":3542},[3536,31129,4390],{"class":3546},[3536,31131,31132,31134],{"class":3538,"line":8918},[3536,31133,31035],{"class":3542},[3536,31135,4390],{"class":3546},[3536,31137,31138,31140],{"class":3538,"line":8928},[3536,31139,31051],{"class":3542},[3536,31141,4390],{"class":3546},[3536,31143,31144,31146],{"class":3538,"line":8938},[3536,31145,31062],{"class":3542},[3536,31147,4390],{"class":3546},[3536,31149,31150,31152,31155],{"class":3538,"line":8946},[3536,31151,27019],{"class":3546},[3536,31153,31154],{"class":3616},"DateFieldProps",[3536,31156,4977],{"class":3546},[3536,31158,31159,31161,31163,31165,31167,31169,31171,31173,31175,31177],{"class":3538,"line":8965},[3536,31160,4770],{"class":3561},[3536,31162,3596],{"class":3546},[3536,31164,12082],{"class":3599},[3536,31166,3755],{"class":3546},[3536,31168,13743],{"class":3599},[3536,31170,3755],{"class":3546},[3536,31172,16927],{"class":3599},[3536,31174,3602],{"class":3546},[3536,31176,11986],{"class":3550},[3536,31178,7911],{"class":3546},[3536,31180,31181,31183,31185,31188,31190,31193,31195,31197,31199,31201],{"class":3538,"line":8993},[3536,31182,4770],{"class":3561},[3536,31184,13770],{"class":3546},[3536,31186,31187],{"class":3599},"open",[3536,31189,3755],{"class":3546},[3536,31191,31192],{"class":3599},"setOpen",[3536,31194,13776],{"class":3546},[3536,31196,13378],{"class":3550},[3536,31198,3554],{"class":3546},[3536,31200,13814],{"class":3561},[3536,31202,3580],{"class":3546},[3536,31204,31205],{"class":3538,"line":8999},[3536,31206,31207],{"class":4573},"  \u002F** Тимчасове значення на iOS, поки користувач крутить spinner. *\u002F\n",[3536,31209,31210,31212,31214,31217,31219,31222,31224,31226,31228,31230],{"class":3538,"line":9032},[3536,31211,4770],{"class":3561},[3536,31213,13770],{"class":3546},[3536,31215,31216],{"class":3599},"draft",[3536,31218,3755],{"class":3546},[3536,31220,31221],{"class":3599},"setDraft",[3536,31223,13776],{"class":3546},[3536,31225,13378],{"class":3550},[3536,31227,3554],{"class":3546},[3536,31229,24824],{"class":3542},[3536,31231,3580],{"class":3546},[3536,31233,31234],{"class":3538,"line":9041},[3536,31235,4748],{"emptyLinePlaceholder":4747},[3536,31237,31238,31240,31243,31245,31247,31249,31252],{"class":3538,"line":9051},[3536,31239,4770],{"class":3561},[3536,31241,31242],{"class":3599}," hasError",[3536,31244,4874],{"class":3546},[3536,31246,30121],{"class":3550},[3536,31248,3554],{"class":3546},[3536,31250,31251],{"class":3542},"error",[3536,31253,3580],{"class":3546},[3536,31255,31256],{"class":3538,"line":9059},[3536,31257,4748],{"emptyLinePlaceholder":4747},[3536,31259,31260,31262,31265,31268,31270],{"class":3538,"line":9065},[3536,31261,4770],{"class":3561},[3536,31263,31264],{"class":3550}," openPicker",[3536,31266,31267],{"class":3546}," = () ",[3536,31269,5042],{"class":3561},[3536,31271,4547],{"class":3546},[3536,31273,31274,31277,31279,31281],{"class":3538,"line":9070},[3536,31275,31276],{"class":3550},"    setDraft",[3536,31278,3554],{"class":3546},[3536,31280,24824],{"class":3542},[3536,31282,3580],{"class":3546},[3536,31284,31285,31288,31290,31292],{"class":3538,"line":9077},[3536,31286,31287],{"class":3550},"    setOpen",[3536,31289,3554],{"class":3546},[3536,31291,7158],{"class":3561},[3536,31293,3580],{"class":3546},[3536,31295,31296],{"class":3538,"line":9096},[3536,31297,8471],{"class":3546},[3536,31299,31300],{"class":3538,"line":9125},[3536,31301,4748],{"emptyLinePlaceholder":4747},[3536,31303,31304,31306,31309,31311,31313],{"class":3538,"line":9130},[3536,31305,4770],{"class":3561},[3536,31307,31308],{"class":3550}," closePicker",[3536,31310,31267],{"class":3546},[3536,31312,5042],{"class":3561},[3536,31314,4547],{"class":3546},[3536,31316,31317,31319,31321,31323],{"class":3538,"line":9163},[3536,31318,31287],{"class":3550},[3536,31320,3554],{"class":3546},[3536,31322,13814],{"class":3561},[3536,31324,3580],{"class":3546},[3536,31326,31327,31330],{"class":3538,"line":9172},[3536,31328,31329],{"class":3550},"    onBlur",[3536,31331,31332],{"class":3546},"?.();\n",[3536,31334,31335],{"class":3538,"line":9181},[3536,31336,8471],{"class":3546},[3536,31338,31339],{"class":3538,"line":9186},[3536,31340,4748],{"emptyLinePlaceholder":4747},[3536,31342,31343,31345,31348,31350,31352],{"class":3538,"line":9191},[3536,31344,4770],{"class":3561},[3536,31346,31347],{"class":3550}," applyIos",[3536,31349,31267],{"class":3546},[3536,31351,5042],{"class":3561},[3536,31353,4547],{"class":3546},[3536,31355,31356,31359,31361,31363],{"class":3538,"line":9196},[3536,31357,31358],{"class":3550},"    onChange",[3536,31360,3554],{"class":3546},[3536,31362,31216],{"class":3542},[3536,31364,3580],{"class":3546},[3536,31366,31367,31370],{"class":3538,"line":9215},[3536,31368,31369],{"class":3550},"    closePicker",[3536,31371,7911],{"class":3546},[3536,31373,31374],{"class":3538,"line":9237},[3536,31375,8471],{"class":3546},[3536,31377,31378],{"class":3538,"line":9245},[3536,31379,4748],{"emptyLinePlaceholder":4747},[3536,31381,31382,31384,31387,31389,31392,31394,31397,31399,31402,31404,31406,31408,31410],{"class":3538,"line":9256},[3536,31383,4770],{"class":3561},[3536,31385,31386],{"class":3550}," onAndroidChange",[3536,31388,23063],{"class":3546},[3536,31390,31391],{"class":3542},"event",[3536,31393,3613],{"class":3546},[3536,31395,31396],{"class":3616},"DateTimePickerEvent",[3536,31398,3755],{"class":3546},[3536,31400,31401],{"class":3542},"selected",[3536,31403,22858],{"class":3546},[3536,31405,23776],{"class":3616},[3536,31407,7932],{"class":3546},[3536,31409,5042],{"class":3561},[3536,31411,4547],{"class":3546},[3536,31413,31414],{"class":3538,"line":9267},[3536,31415,31416],{"class":4573},"    \u002F\u002F Android закриває діалог сам; event.type: set | dismissed\n",[3536,31418,31419,31421,31423,31425],{"class":3538,"line":9278},[3536,31420,31287],{"class":3550},[3536,31422,3554],{"class":3546},[3536,31424,13814],{"class":3561},[3536,31426,3580],{"class":3546},[3536,31428,31429,31431,31433,31435,31437,31439,31441,31444,31446,31448],{"class":3538,"line":9289},[3536,31430,24023],{"class":4725},[3536,31432,5365],{"class":3546},[3536,31434,31391],{"class":3542},[3536,31436,3547],{"class":3546},[3536,31438,13553],{"class":3542},[3536,31440,7944],{"class":3546},[3536,31442,31443],{"class":3557},"'set'",[3536,31445,24008],{"class":3546},[3536,31447,31401],{"class":3542},[3536,31449,4977],{"class":3546},[3536,31451,31452,31455,31457,31459],{"class":3538,"line":9300},[3536,31453,31454],{"class":3550},"      onChange",[3536,31456,3554],{"class":3546},[3536,31458,31401],{"class":3542},[3536,31460,3580],{"class":3546},[3536,31462,31463],{"class":3538,"line":9305},[3536,31464,7077],{"class":3546},[3536,31466,31467,31469],{"class":3538,"line":9313},[3536,31468,31329],{"class":3550},[3536,31470,31332],{"class":3546},[3536,31472,31473],{"class":3538,"line":9322},[3536,31474,8471],{"class":3546},[3536,31476,31477],{"class":3538,"line":9333},[3536,31478,4748],{"emptyLinePlaceholder":4747},[3536,31480,31481,31483,31486,31488,31491,31493,31495,31497,31499,31501,31503,31505,31507],{"class":3538,"line":9343},[3536,31482,4770],{"class":3561},[3536,31484,31485],{"class":3550}," onIosChange",[3536,31487,23063],{"class":3546},[3536,31489,31490],{"class":3542},"_event",[3536,31492,3613],{"class":3546},[3536,31494,31396],{"class":3616},[3536,31496,3755],{"class":3546},[3536,31498,31401],{"class":3542},[3536,31500,22858],{"class":3546},[3536,31502,23776],{"class":3616},[3536,31504,7932],{"class":3546},[3536,31506,5042],{"class":3561},[3536,31508,4547],{"class":3546},[3536,31510,31511,31513,31515,31517],{"class":3538,"line":9352},[3536,31512,24023],{"class":4725},[3536,31514,5365],{"class":3546},[3536,31516,31401],{"class":3542},[3536,31518,4977],{"class":3546},[3536,31520,31521,31524,31526,31528],{"class":3538,"line":9362},[3536,31522,31523],{"class":3550},"      setDraft",[3536,31525,3554],{"class":3546},[3536,31527,31401],{"class":3542},[3536,31529,3580],{"class":3546},[3536,31531,31532],{"class":3538,"line":9372},[3536,31533,7077],{"class":3546},[3536,31535,31536],{"class":3538,"line":9377},[3536,31537,8471],{"class":3546},[3536,31539,31540],{"class":3538,"line":9400},[3536,31541,4748],{"emptyLinePlaceholder":4747},[3536,31543,31544,31546,31549,31551,31554,31556,31558],{"class":3538,"line":9408},[3536,31545,4770],{"class":3561},[3536,31547,31548],{"class":3599}," display",[3536,31550,4874],{"class":3546},[3536,31552,31553],{"class":3550},"formatDisplay",[3536,31555,3554],{"class":3546},[3536,31557,24824],{"class":3542},[3536,31559,3580],{"class":3546},[3536,31561,31562],{"class":3538,"line":9419},[3536,31563,4748],{"emptyLinePlaceholder":4747},[3536,31565,31566,31568],{"class":3538,"line":9429},[3536,31567,4982],{"class":4725},[3536,31569,4985],{"class":3546},[3536,31571,31572,31574,31576,31578,31580,31582,31584,31586,31588,31590,31592,31594,31596],{"class":3538,"line":9439},[3536,31573,4990],{"class":4309},[3536,31575,4993],{"class":3616},[3536,31577,8041],{"class":4315},[3536,31579,4319],{"class":3546},[3536,31581,4322],{"class":3561},[3536,31583,8165],{"class":3568},[3536,31585,10649],{"class":3542},[3536,31587,14219],{"class":3542},[3536,31589,3547],{"class":3568},[3536,31591,14946],{"class":3542},[3536,31593,8174],{"class":3568},[3536,31595,3574],{"class":3561},[3536,31597,4352],{"class":4309},[3536,31599,31600,31602,31604,31606,31608,31610,31612,31614,31616,31618,31620,31622,31624],{"class":3538,"line":9450},[3536,31601,5000],{"class":4309},[3536,31603,6704],{"class":3616},[3536,31605,14692],{"class":4315},[3536,31607,4319],{"class":3546},[3536,31609,15020],{"class":3557},[3536,31611,8041],{"class":4315},[3536,31613,4319],{"class":3546},[3536,31615,4322],{"class":3561},[3536,31617,8496],{"class":3542},[3536,31619,3547],{"class":3568},[3536,31621,13617],{"class":3542},[3536,31623,3574],{"class":3561},[3536,31625,4352],{"class":4309},[3536,31627,31628,31630,31632],{"class":3538,"line":9461},[3536,31629,18815],{"class":3561},[3536,31631,13617],{"class":3542},[3536,31633,4476],{"class":3561},[3536,31635,31636,31638,31640],{"class":3538,"line":9471},[3536,31637,8215],{"class":4309},[3536,31639,6704],{"class":3616},[3536,31641,4352],{"class":4309},[3536,31643,31644,31646],{"class":3538,"line":9476},[3536,31645,5000],{"class":4309},[3536,31647,8943],{"class":3616},[3536,31649,31650,31653,31655],{"class":3538,"line":9505},[3536,31651,31652],{"class":4315},"        accessibilityRole",[3536,31654,4319],{"class":3546},[3536,31656,15492],{"class":3557},[3536,31658,31659,31662,31664,31666,31668,31670,31672,31674,31676,31678,31681,31683,31685],{"class":3538,"line":9540},[3536,31660,31661],{"class":4315},"        accessibilityLabel",[3536,31663,4319],{"class":3546},[3536,31665,4322],{"class":3561},[3536,31667,3577],{"class":3557},[3536,31669,3562],{"class":3561},[3536,31671,13617],{"class":3542},[3536,31673,3574],{"class":3561},[3536,31675,3613],{"class":3557},[3536,31677,3562],{"class":3561},[3536,31679,31680],{"class":3542},"display",[3536,31682,3574],{"class":3561},[3536,31684,3577],{"class":3557},[3536,31686,4476],{"class":3561},[3536,31688,31689,31691,31693,31695,31698],{"class":3538,"line":9560},[3536,31690,9099],{"class":4315},[3536,31692,4319],{"class":3546},[3536,31694,4322],{"class":3561},[3536,31696,31697],{"class":3542},"openPicker",[3536,31699,4476],{"class":3561},[3536,31701,31702,31704,31706,31708],{"class":3538,"line":9568},[3536,31703,9080],{"class":4315},[3536,31705,4319],{"class":3546},[3536,31707,4322],{"class":3561},[3536,31709,14607],{"class":3568},[3536,31711,31712,31714,31716,31718],{"class":3538,"line":9578},[3536,31713,14878],{"class":3542},[3536,31715,3547],{"class":3568},[3536,31717,5635],{"class":3542},[3536,31719,4390],{"class":3568},[3536,31721,31722],{"class":3538,"line":9588},[3536,31723,14891],{"class":3568},[3536,31725,31726,31729,31731,31733,31735,31737,31740,31742,31744,31746,31748],{"class":3538,"line":9597},[3536,31727,31728],{"class":3542},"            borderColor:",[3536,31730,31242],{"class":3542},[3536,31732,12129],{"class":3546},[3536,31734,12168],{"class":3542},[3536,31736,3547],{"class":3568},[3536,31738,31739],{"class":3542},"danger",[3536,31741,12135],{"class":3546},[3536,31743,12168],{"class":3542},[3536,31745,3547],{"class":3568},[3536,31747,12655],{"class":3542},[3536,31749,4390],{"class":3568},[3536,31751,31752,31754,31756,31758,31760],{"class":3538,"line":9606},[3536,31753,16117],{"class":3542},[3536,31755,12168],{"class":3542},[3536,31757,3547],{"class":3568},[3536,31759,15451],{"class":3542},[3536,31761,4390],{"class":3568},[3536,31763,31764,31767,31769,31771,31773],{"class":3538,"line":9615},[3536,31765,31766],{"class":3542},"            borderRadius:",[3536,31768,18709],{"class":3542},[3536,31770,3547],{"class":3568},[3536,31772,14224],{"class":3542},[3536,31774,4390],{"class":3568},[3536,31776,31777,31780,31782,31784,31786,31788,31790],{"class":3538,"line":9626},[3536,31778,31779],{"class":3542},"            paddingVertical:",[3536,31781,14219],{"class":3542},[3536,31783,3547],{"class":3568},[3536,31785,14286],{"class":3542},[3536,31787,21557],{"class":3546},[3536,31789,9573],{"class":4897},[3536,31791,4390],{"class":3568},[3536,31793,31794,31796,31798,31800,31802],{"class":3538,"line":9631},[3536,31795,14897],{"class":3542},[3536,31797,14219],{"class":3542},[3536,31799,3547],{"class":3568},[3536,31801,14224],{"class":3542},[3536,31803,4390],{"class":3568},[3536,31805,31806],{"class":3538,"line":9651},[3536,31807,14968],{"class":3568},[3536,31809,31810,31812],{"class":3538,"line":9672},[3536,31811,14974],{"class":3568},[3536,31813,4476],{"class":3561},[3536,31815,31816],{"class":3538,"line":9693},[3536,31817,8139],{"class":4309},[3536,31819,31820,31822,31824,31826,31828,31830,31832,31834,31836],{"class":3538,"line":14653},[3536,31821,8144],{"class":4309},[3536,31823,6704],{"class":3616},[3536,31825,4341],{"class":4309},[3536,31827,4322],{"class":3561},[3536,31829,31680],{"class":3542},[3536,31831,3574],{"class":3561},[3536,31833,4347],{"class":4309},[3536,31835,6704],{"class":3616},[3536,31837,4352],{"class":4309},[3536,31839,31840,31842,31844],{"class":3538,"line":14667},[3536,31841,8215],{"class":4309},[3536,31843,8261],{"class":3616},[3536,31845,4352],{"class":4309},[3536,31847,31848,31850,31853,31855],{"class":3538,"line":14672},[3536,31849,14246],{"class":3561},[3536,31851,31852],{"class":3542},"hasError",[3536,31854,12129],{"class":3546},[3536,31856,4985],{"class":3568},[3536,31858,31859,31861,31863,31865,31867,31869,31871,31873,31875,31877,31879,31881,31883],{"class":3538,"line":14680},[3536,31860,8144],{"class":4309},[3536,31862,6704],{"class":3616},[3536,31864,14692],{"class":4315},[3536,31866,4319],{"class":3546},[3536,31868,15020],{"class":3557},[3536,31870,12792],{"class":4315},[3536,31872,4319],{"class":3546},[3536,31874,4322],{"class":3561},[3536,31876,12082],{"class":3542},[3536,31878,3547],{"class":3568},[3536,31880,31739],{"class":3542},[3536,31882,3574],{"class":3561},[3536,31884,4352],{"class":4309},[3536,31886,31887,31889,31891],{"class":3538,"line":14685},[3536,31888,15163],{"class":3561},[3536,31890,31251],{"class":3542},[3536,31892,4476],{"class":3561},[3536,31894,31895,31897,31899],{"class":3538,"line":14717},[3536,31896,10208],{"class":4309},[3536,31898,6704],{"class":3616},[3536,31900,4352],{"class":4309},[3536,31902,31903,31905,31907],{"class":3538,"line":14723},[3536,31904,14521],{"class":3568},[3536,31906,3987],{"class":3546},[3536,31908,14526],{"class":3561},[3536,31910,31911],{"class":3538,"line":14732},[3536,31912,4748],{"emptyLinePlaceholder":4747},[3536,31914,31915,31917,31920],{"class":3538,"line":14740},[3536,31916,14246],{"class":3561},[3536,31918,31919],{"class":4573},"\u002F* Android: системний діалог; iOS\u002Fweb: spinner у Modal *\u002F",[3536,31921,4476],{"class":3561},[3536,31923,31924,31926,31928,31930,31932,31934,31937,31940,31943,31945],{"class":3538,"line":14751},[3536,31925,14246],{"class":3561},[3536,31927,19126],{"class":3542},[3536,31929,3547],{"class":3568},[3536,31931,27607],{"class":3599},[3536,31933,12123],{"class":3546},[3536,31935,31936],{"class":3557}," 'android'",[3536,31938,31939],{"class":3546}," &&",[3536,31941,31942],{"class":3542}," open",[3536,31944,12129],{"class":3546},[3536,31946,4985],{"class":3568},[3536,31948,31949,31951],{"class":3538,"line":14769},[3536,31950,8144],{"class":4309},[3536,31952,31953],{"class":3616},"DateTimePicker\n",[3536,31955,31956,31959,31961,31963,31965],{"class":3538,"line":14787},[3536,31957,31958],{"class":4315},"          value",[3536,31960,4319],{"class":3546},[3536,31962,4322],{"class":3561},[3536,31964,24824],{"class":3542},[3536,31966,4476],{"class":3561},[3536,31968,31969,31972,31974],{"class":3538,"line":14792},[3536,31970,31971],{"class":4315},"          mode",[3536,31973,4319],{"class":3546},[3536,31975,31976],{"class":3557},"\"date\"\n",[3536,31978,31979,31982,31984],{"class":3538,"line":14798},[3536,31980,31981],{"class":4315},"          display",[3536,31983,4319],{"class":3546},[3536,31985,31986],{"class":3557},"\"default\"\n",[3536,31988,31989,31992,31994,31996,31999],{"class":3538,"line":14807},[3536,31990,31991],{"class":4315},"          onChange",[3536,31993,4319],{"class":3546},[3536,31995,4322],{"class":3561},[3536,31997,31998],{"class":3542},"onAndroidChange",[3536,32000,4476],{"class":3561},[3536,32002,32003,32006,32008,32010,32013],{"class":3538,"line":14816},[3536,32004,32005],{"class":4315},"          minimumDate",[3536,32007,4319],{"class":3546},[3536,32009,4322],{"class":3561},[3536,32011,32012],{"class":3542},"minimumDate",[3536,32014,4476],{"class":3561},[3536,32016,32017,32020,32022,32024,32027],{"class":3538,"line":14821},[3536,32018,32019],{"class":4315},"          maximumDate",[3536,32021,4319],{"class":3546},[3536,32023,4322],{"class":3561},[3536,32025,32026],{"class":3542},"maximumDate",[3536,32028,4476],{"class":3561},[3536,32030,32031],{"class":3538,"line":14826},[3536,32032,12358],{"class":4309},[3536,32034,32035,32037,32039],{"class":3538,"line":14833},[3536,32036,14521],{"class":3568},[3536,32038,3987],{"class":3546},[3536,32040,14526],{"class":3561},[3536,32042,32043],{"class":3538,"line":14857},[3536,32044,4748],{"emptyLinePlaceholder":4747},[3536,32046,32047,32049,32051,32053,32055,32058,32060,32062],{"class":3538,"line":14864},[3536,32048,14246],{"class":3561},[3536,32050,19126],{"class":3542},[3536,32052,3547],{"class":3568},[3536,32054,27607],{"class":3599},[3536,32056,32057],{"class":3546}," !==",[3536,32059,31936],{"class":3557},[3536,32061,12129],{"class":3546},[3536,32063,4985],{"class":3568},[3536,32065,32066,32068],{"class":3538,"line":14875},[3536,32067,8144],{"class":4309},[3536,32069,32070],{"class":3616},"Modal\n",[3536,32072,32073,32076,32078,32080,32082],{"class":3538,"line":14888},[3536,32074,32075],{"class":4315},"          visible",[3536,32077,4319],{"class":3546},[3536,32079,4322],{"class":3561},[3536,32081,31187],{"class":3542},[3536,32083,4476],{"class":3561},[3536,32085,32086],{"class":3538,"line":14894},[3536,32087,32088],{"class":4315},"          transparent\n",[3536,32090,32091,32094,32096],{"class":3538,"line":14908},[3536,32092,32093],{"class":4315},"          animationType",[3536,32095,4319],{"class":3546},[3536,32097,32098],{"class":3557},"\"slide\"\n",[3536,32100,32101,32104,32106,32108,32111],{"class":3538,"line":14922},[3536,32102,32103],{"class":4315},"          onRequestClose",[3536,32105,4319],{"class":3546},[3536,32107,4322],{"class":3561},[3536,32109,32110],{"class":3542},"closePicker",[3536,32112,4476],{"class":3561},[3536,32114,32115],{"class":3538,"line":14936},[3536,32116,15157],{"class":4309},[3536,32118,32119,32121,32123,32125,32127,32129,32131,32133,32136,32138,32140,32142,32144,32146,32148],{"class":3538,"line":14951},[3536,32120,8731],{"class":4309},[3536,32122,8261],{"class":3616},[3536,32124,8041],{"class":4315},[3536,32126,4319],{"class":3546},[3536,32128,4322],{"class":3561},[3536,32130,8496],{"class":3542},[3536,32132,3547],{"class":3568},[3536,32134,32135],{"class":3542},"backdrop",[3536,32137,3574],{"class":3561},[3536,32139,5032],{"class":4315},[3536,32141,4319],{"class":3546},[3536,32143,4322],{"class":3561},[3536,32145,32110],{"class":3542},[3536,32147,3574],{"class":3561},[3536,32149,5058],{"class":4309},[3536,32151,32152,32154],{"class":3538,"line":14965},[3536,32153,8731],{"class":4309},[3536,32155,14595],{"class":3616},[3536,32157,32158,32160,32162,32164],{"class":3538,"line":14971},[3536,32159,17285],{"class":4315},[3536,32161,4319],{"class":3546},[3536,32163,4322],{"class":3561},[3536,32165,14607],{"class":3568},[3536,32167,32168,32171,32173,32176],{"class":3538,"line":14979},[3536,32169,32170],{"class":3542},"              styles",[3536,32172,3547],{"class":3568},[3536,32174,32175],{"class":3542},"sheet",[3536,32177,4390],{"class":3568},[3536,32179,32180],{"class":3538,"line":14984},[3536,32181,32182],{"class":3568},"              {\n",[3536,32184,32185,32188,32190,32192,32194],{"class":3538,"line":15009},[3536,32186,32187],{"class":3542},"                backgroundColor:",[3536,32189,12168],{"class":3542},[3536,32191,3547],{"class":3568},[3536,32193,15451],{"class":3542},[3536,32195,4390],{"class":3568},[3536,32197,32198,32201,32203,32205,32207],{"class":3538,"line":15045},[3536,32199,32200],{"class":3542},"                borderColor:",[3536,32202,12168],{"class":3542},[3536,32204,3547],{"class":3568},[3536,32206,12655],{"class":3542},[3536,32208,4390],{"class":3568},[3536,32210,32211,32214,32216,32218,32220],{"class":3538,"line":15071},[3536,32212,32213],{"class":3542},"                paddingBottom:",[3536,32215,14219],{"class":3542},[3536,32217,3547],{"class":3568},[3536,32219,17220],{"class":3542},[3536,32221,4390],{"class":3568},[3536,32223,32224],{"class":3538,"line":15080},[3536,32225,32226],{"class":3568},"              },\n",[3536,32228,32229,32232],{"class":3538,"line":15087},[3536,32230,32231],{"class":3568},"            ]",[3536,32233,4476],{"class":3561},[3536,32235,32236],{"class":3538,"line":15097},[3536,32237,17315],{"class":4309},[3536,32239,32240,32242],{"class":3538,"line":15109},[3536,32241,8755],{"class":4309},[3536,32243,14595],{"class":3616},[3536,32245,32246,32248,32250,32252],{"class":3538,"line":15123},[3536,32247,8949],{"class":4315},[3536,32249,4319],{"class":3546},[3536,32251,4322],{"class":3561},[3536,32253,14607],{"class":3568},[3536,32255,32256,32258,32260,32263],{"class":3538,"line":15137},[3536,32257,21518],{"class":3542},[3536,32259,3547],{"class":3568},[3536,32261,32262],{"class":3542},"sheetHeader",[3536,32264,4390],{"class":3568},[3536,32266,32267,32270,32273,32275,32277,32279,32281,32284,32286,32288,32290],{"class":3538,"line":15147},[3536,32268,32269],{"class":3568},"                { ",[3536,32271,32272],{"class":3542},"paddingHorizontal:",[3536,32274,14219],{"class":3542},[3536,32276,3547],{"class":3568},[3536,32278,14224],{"class":3542},[3536,32280,3755],{"class":3568},[3536,32282,32283],{"class":3542},"paddingTop:",[3536,32285,14219],{"class":3542},[3536,32287,3547],{"class":3568},[3536,32289,14224],{"class":3542},[3536,32291,4411],{"class":3568},[3536,32293,32294,32296],{"class":3538,"line":15154},[3536,32295,21580],{"class":3568},[3536,32297,4476],{"class":3561},[3536,32299,32300],{"class":3538,"line":15160},[3536,32301,8996],{"class":4309},[3536,32303,32304,32306,32308,32310,32312,32314,32316,32318,32320,32322,32324,32326],{"class":3538,"line":15177},[3536,32305,8789],{"class":4309},[3536,32307,6704],{"class":3616},[3536,32309,14692],{"class":4315},[3536,32311,4319],{"class":3546},[3536,32313,14697],{"class":3557},[3536,32315,4341],{"class":4309},[3536,32317,4322],{"class":3561},[3536,32319,13617],{"class":3542},[3536,32321,3574],{"class":3561},[3536,32323,4347],{"class":4309},[3536,32325,6704],{"class":3616},[3536,32327,4352],{"class":4309},[3536,32329,32330,32332,32334],{"class":3538,"line":15212},[3536,32331,8931],{"class":4309},[3536,32333,4993],{"class":3616},[3536,32335,4352],{"class":4309},[3536,32337,32338,32340],{"class":3538,"line":15223},[3536,32339,8755],{"class":4309},[3536,32341,31953],{"class":3616},[3536,32343,32344,32346,32348,32350,32352],{"class":3538,"line":15232},[3536,32345,27932],{"class":4315},[3536,32347,4319],{"class":3546},[3536,32349,4322],{"class":3561},[3536,32351,31216],{"class":3542},[3536,32353,4476],{"class":3561},[3536,32355,32356,32359,32361],{"class":3538,"line":15237},[3536,32357,32358],{"class":4315},"              mode",[3536,32360,4319],{"class":3546},[3536,32362,31976],{"class":3557},[3536,32364,32365,32368,32370],{"class":3538,"line":15287},[3536,32366,32367],{"class":4315},"              display",[3536,32369,4319],{"class":3546},[3536,32371,32372],{"class":3557},"\"spinner\"\n",[3536,32374,32375,32377,32379,32381,32384],{"class":3538,"line":15310},[3536,32376,28579],{"class":4315},[3536,32378,4319],{"class":3546},[3536,32380,4322],{"class":3561},[3536,32382,32383],{"class":3542},"onIosChange",[3536,32385,4476],{"class":3561},[3536,32387,32388,32390,32392,32394,32396],{"class":3538,"line":15336},[3536,32389,28770],{"class":4315},[3536,32391,4319],{"class":3546},[3536,32393,4322],{"class":3561},[3536,32395,32012],{"class":3542},[3536,32397,4476],{"class":3561},[3536,32399,32400,32403,32405,32407,32409],{"class":3538,"line":15344},[3536,32401,32402],{"class":4315},"              maximumDate",[3536,32404,4319],{"class":3546},[3536,32406,4322],{"class":3561},[3536,32408,32026],{"class":3542},[3536,32410,4476],{"class":3561},[3536,32412,32413,32415,32417,32419,32421,32424,32426,32428],{"class":3538,"line":15351},[3536,32414,8949],{"class":4315},[3536,32416,4319],{"class":3546},[3536,32418,4322],{"class":3561},[3536,32420,8165],{"class":3568},[3536,32422,32423],{"class":3542},"alignSelf:",[3536,32425,9621],{"class":3557},[3536,32427,8174],{"class":3568},[3536,32429,4476],{"class":3561},[3536,32431,32432],{"class":3538,"line":15369},[3536,32433,13022],{"class":4309},[3536,32435,32436,32438],{"class":3538,"line":15398},[3536,32437,8755],{"class":4309},[3536,32439,14595],{"class":3616},[3536,32441,32442,32444,32446,32448],{"class":3538,"line":15410},[3536,32443,8949],{"class":4315},[3536,32445,4319],{"class":3546},[3536,32447,4322],{"class":3561},[3536,32449,14607],{"class":3568},[3536,32451,32452,32454,32456,32459],{"class":3538,"line":15423},[3536,32453,21518],{"class":3542},[3536,32455,3547],{"class":3568},[3536,32457,32458],{"class":3542},"sheetActions",[3536,32460,4390],{"class":3568},[3536,32462,32463,32465,32467,32469,32471,32473,32475,32477,32479,32481,32483],{"class":3538,"line":15429},[3536,32464,32269],{"class":3568},[3536,32466,32272],{"class":3542},[3536,32468,14219],{"class":3542},[3536,32470,3547],{"class":3568},[3536,32472,14224],{"class":3542},[3536,32474,3755],{"class":3568},[3536,32476,10649],{"class":3542},[3536,32478,14219],{"class":3542},[3536,32480,3547],{"class":3568},[3536,32482,14286],{"class":3542},[3536,32484,4411],{"class":3568},[3536,32486,32487,32489],{"class":3538,"line":15456},[3536,32488,21580],{"class":3568},[3536,32490,4476],{"class":3561},[3536,32492,32493],{"class":3538,"line":15470},[3536,32494,8996],{"class":4309},[3536,32496,32497,32499,32501,32504,32506,32509,32511,32513,32515,32518,32520],{"class":3538,"line":15476},[3536,32498,8789],{"class":4309},[3536,32500,5021],{"class":3616},[3536,32502,32503],{"class":4315}," label",[3536,32505,4319],{"class":3546},[3536,32507,32508],{"class":3557},"\"Готово\"",[3536,32510,5032],{"class":4315},[3536,32512,4319],{"class":3546},[3536,32514,4322],{"class":3561},[3536,32516,32517],{"class":3542},"applyIos",[3536,32519,3574],{"class":3561},[3536,32521,5058],{"class":4309},[3536,32523,32524,32526,32528,32530,32532,32534,32536,32538,32540,32542,32544,32546,32548,32551,32553],{"class":3538,"line":15484},[3536,32525,8789],{"class":4309},[3536,32527,8261],{"class":3616},[3536,32529,5032],{"class":4315},[3536,32531,4319],{"class":3546},[3536,32533,4322],{"class":3561},[3536,32535,32110],{"class":3542},[3536,32537,3574],{"class":3561},[3536,32539,8041],{"class":4315},[3536,32541,4319],{"class":3546},[3536,32543,4322],{"class":3561},[3536,32545,8496],{"class":3542},[3536,32547,3547],{"class":3568},[3536,32549,32550],{"class":3542},"cancel",[3536,32552,3574],{"class":3561},[3536,32554,4352],{"class":4309},[3536,32556,32557,32559,32561,32563,32565,32567,32569,32571,32573,32575,32577,32580,32582,32584],{"class":3538,"line":15495},[3536,32558,8799],{"class":4309},[3536,32560,6704],{"class":3616},[3536,32562,12792],{"class":4315},[3536,32564,4319],{"class":3546},[3536,32566,4322],{"class":3561},[3536,32568,12082],{"class":3542},[3536,32570,3547],{"class":3568},[3536,32572,12621],{"class":3542},[3536,32574,3574],{"class":3561},[3536,32576,4341],{"class":4309},[3536,32578,32579],{"class":3568},"Скасувати",[3536,32581,4347],{"class":4309},[3536,32583,6704],{"class":3616},[3536,32585,4352],{"class":4309},[3536,32587,32588,32590,32592],{"class":3538,"line":15516},[3536,32589,8921],{"class":4309},[3536,32591,8261],{"class":3616},[3536,32593,4352],{"class":4309},[3536,32595,32596,32598,32600],{"class":3538,"line":15543},[3536,32597,8931],{"class":4309},[3536,32599,4993],{"class":3616},[3536,32601,4352],{"class":4309},[3536,32603,32604,32606,32608],{"class":3538,"line":15549},[3536,32605,9044],{"class":4309},[3536,32607,4993],{"class":3616},[3536,32609,4352],{"class":4309},[3536,32611,32612,32614,32617],{"class":3538,"line":15556},[3536,32613,10208],{"class":4309},[3536,32615,32616],{"class":3616},"Modal",[3536,32618,4352],{"class":4309},[3536,32620,32621,32623,32625],{"class":3538,"line":15566},[3536,32622,14521],{"class":3568},[3536,32624,3987],{"class":3546},[3536,32626,14526],{"class":3561},[3536,32628,32629,32631,32633],{"class":3538,"line":15598},[3536,32630,5063],{"class":4309},[3536,32632,4993],{"class":3616},[3536,32634,4352],{"class":4309},[3536,32636,32637],{"class":3538,"line":15617},[3536,32638,5072],{"class":3546},[3536,32640,32641],{"class":3538,"line":15623},[3536,32642,4476],{"class":3546},[3536,32644,32645],{"class":3538,"line":15637},[3536,32646,4748],{"emptyLinePlaceholder":4747},[3536,32648,32649,32651,32654,32656,32658,32660,32662,32664,32666],{"class":3538,"line":15647},[3536,32650,12068],{"class":3561},[3536,32652,32653],{"class":3550}," formatDisplay",[3536,32655,3554],{"class":3546},[3536,32657,23771],{"class":3542},[3536,32659,3613],{"class":3546},[3536,32661,23776],{"class":3616},[3536,32663,7877],{"class":3546},[3536,32665,3617],{"class":3616},[3536,32667,4547],{"class":3546},[3536,32669,32670,32672,32675,32677,32679,32681,32683,32685,32687,32690,32693,32695,32697,32699,32702],{"class":3538,"line":15656},[3536,32671,4770],{"class":3561},[3536,32673,32674],{"class":3599}," dd",[3536,32676,4874],{"class":3546},[3536,32678,9957],{"class":3550},[3536,32680,3554],{"class":3546},[3536,32682,23771],{"class":3542},[3536,32684,3547],{"class":3546},[3536,32686,23797],{"class":3550},[3536,32688,32689],{"class":3546},"()).",[3536,32691,32692],{"class":3550},"padStart",[3536,32694,3554],{"class":3546},[3536,32696,19784],{"class":4897},[3536,32698,3755],{"class":3546},[3536,32700,32701],{"class":3557},"'0'",[3536,32703,3580],{"class":3546},[3536,32705,32706,32708,32711,32713,32715,32717,32719,32721,32723,32725,32727,32729,32731,32733,32735,32737,32739],{"class":3538,"line":15662},[3536,32707,4770],{"class":3561},[3536,32709,32710],{"class":3599}," mm",[3536,32712,4874],{"class":3546},[3536,32714,9957],{"class":3550},[3536,32716,3554],{"class":3546},[3536,32718,23771],{"class":3542},[3536,32720,3547],{"class":3546},[3536,32722,23816],{"class":3550},[3536,32724,26953],{"class":3546},[3536,32726,5192],{"class":4897},[3536,32728,3684],{"class":3546},[3536,32730,32692],{"class":3550},[3536,32732,3554],{"class":3546},[3536,32734,19784],{"class":4897},[3536,32736,3755],{"class":3546},[3536,32738,32701],{"class":3557},[3536,32740,3580],{"class":3546},[3536,32742,32743,32745,32748,32750,32752,32754,32756],{"class":3538,"line":15670},[3536,32744,4770],{"class":3561},[3536,32746,32747],{"class":3599}," yyyy",[3536,32749,4874],{"class":3546},[3536,32751,23771],{"class":3542},[3536,32753,3547],{"class":3546},[3536,32755,23900],{"class":3550},[3536,32757,7911],{"class":3546},[3536,32759,32760,32762,32764,32766,32769,32771,32773,32775,32778,32780,32782,32784,32787,32789,32791],{"class":3538,"line":15679},[3536,32761,4982],{"class":4725},[3536,32763,15183],{"class":3557},[3536,32765,3562],{"class":3561},[3536,32767,32768],{"class":3542},"dd",[3536,32770,3574],{"class":3561},[3536,32772,3547],{"class":3557},[3536,32774,3562],{"class":3561},[3536,32776,32777],{"class":3542},"mm",[3536,32779,3574],{"class":3561},[3536,32781,3547],{"class":3557},[3536,32783,3562],{"class":3561},[3536,32785,32786],{"class":3542},"yyyy",[3536,32788,3574],{"class":3561},[3536,32790,3577],{"class":3557},[3536,32792,4742],{"class":3546},[3536,32794,32795],{"class":3538,"line":15688},[3536,32796,4476],{"class":3546},[3536,32798,32799],{"class":3538,"line":15693},[3536,32800,4748],{"emptyLinePlaceholder":4747},[3536,32802,32803,32805,32807,32809,32811,32813,32815],{"class":3538,"line":15717},[3536,32804,3593],{"class":3561},[3536,32806,9201],{"class":3599},[3536,32808,4874],{"class":3546},[3536,32810,8266],{"class":3542},[3536,32812,3547],{"class":3546},[3536,32814,9210],{"class":3550},[3536,32816,4378],{"class":3546},[3536,32818,32819,32822],{"class":3538,"line":15725},[3536,32820,32821],{"class":3542},"  label:",[3536,32823,4547],{"class":3546},[3536,32825,32826,32828,32830],{"class":3538,"line":15739},[3536,32827,9365],{"class":3542},[3536,32829,8112],{"class":3557},[3536,32831,4390],{"class":3546},[3536,32833,32834],{"class":3538,"line":15754},[3536,32835,4579],{"class":3546},[3536,32837,32838,32841],{"class":3538,"line":15769},[3536,32839,32840],{"class":3542},"  field:",[3536,32842,4547],{"class":3546},[3536,32844,32845,32847,32849],{"class":3538,"line":15784},[3536,32846,9432],{"class":3542},[3536,32848,9226],{"class":4897},[3536,32850,4390],{"class":3546},[3536,32852,32853,32855,32858],{"class":3538,"line":15799},[3536,32854,30775],{"class":3542},[3536,32856,32857],{"class":4897}," 48",[3536,32859,4390],{"class":3546},[3536,32861,32862,32864,32866],{"class":3538,"line":15811},[3536,32863,10682],{"class":3542},[3536,32865,9621],{"class":3557},[3536,32867,4390],{"class":3546},[3536,32869,32870],{"class":3538,"line":15824},[3536,32871,4579],{"class":3546},[3536,32873,32874,32877],{"class":3538,"line":15837},[3536,32875,32876],{"class":3542},"  backdrop:",[3536,32878,4547],{"class":3546},[3536,32880,32881,32883,32885],{"class":3538,"line":15850},[3536,32882,10665],{"class":3542},[3536,32884,9226],{"class":4897},[3536,32886,4390],{"class":3546},[3536,32888,32889,32891,32894],{"class":3538,"line":15857},[3536,32890,9411],{"class":3542},[3536,32892,32893],{"class":3557}," 'rgba(0,0,0,0.35)'",[3536,32895,4390],{"class":3546},[3536,32897,32898],{"class":3538,"line":15899},[3536,32899,4579],{"class":3546},[3536,32901,32902,32905],{"class":3538,"line":15909},[3536,32903,32904],{"class":3542},"  sheet:",[3536,32906,4547],{"class":3546},[3536,32908,32909,32912,32914],{"class":3538,"line":15917},[3536,32910,32911],{"class":3542},"    borderTopLeftRadius:",[3536,32913,9251],{"class":4897},[3536,32915,4390],{"class":3546},[3536,32917,32918,32921,32923],{"class":3538,"line":15931},[3536,32919,32920],{"class":3542},"    borderTopRightRadius:",[3536,32922,9251],{"class":4897},[3536,32924,4390],{"class":3546},[3536,32926,32927,32929,32931],{"class":3538,"line":15946},[3536,32928,16519],{"class":3542},[3536,32930,9226],{"class":4897},[3536,32932,4390],{"class":3546},[3536,32934,32935],{"class":3538,"line":15964},[3536,32936,4579],{"class":3546},[3536,32938,32939,32942],{"class":3538,"line":15986},[3536,32940,32941],{"class":3542},"  sheetHeader:",[3536,32943,4547],{"class":3546},[3536,32945,32946,32948,32950],{"class":3538,"line":15991},[3536,32947,9618],{"class":3542},[3536,32949,9621],{"class":3557},[3536,32951,4390],{"class":3546},[3536,32953,32954],{"class":3538,"line":15997},[3536,32955,4579],{"class":3546},[3536,32957,32958,32961],{"class":3538,"line":16007},[3536,32959,32960],{"class":3542},"  sheetActions:",[3536,32962,4547],{"class":3546},[3536,32964,32965,32967,32969],{"class":3538,"line":16012},[3536,32966,9325],{"class":3542},[3536,32968,9262],{"class":4897},[3536,32970,4390],{"class":3546},[3536,32972,32973],{"class":3538,"line":16021},[3536,32974,4579],{"class":3546},[3536,32976,32977,32980],{"class":3538,"line":16026},[3536,32978,32979],{"class":3542},"  cancel:",[3536,32981,4547],{"class":3546},[3536,32983,32984,32986,32988],{"class":3538,"line":16033},[3536,32985,9618],{"class":3542},[3536,32987,9621],{"class":3557},[3536,32989,4390],{"class":3546},[3536,32991,32992,32994,32996],{"class":3538,"line":16044},[3536,32993,9581],{"class":3542},[3536,32995,8696],{"class":4897},[3536,32997,4390],{"class":3546},[3536,32999,33000],{"class":3538,"line":16056},[3536,33001,4579],{"class":3546},[3536,33003,33004],{"class":3538,"line":16061},[3536,33005,4417],{"class":3546},[3526,33007,33010],{"className":3528,"code":33008,"filename":33009,"language":3530,"meta":3531,"style":3531},"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",[3533,33011,33012,33028,33048,33052,33068,33084,33088,33097,33107,33112,33122,33132,33137,33148,33153,33164,33168,33172,33176,33181,33186,33190,33201,33207,33213,33219,33225,33235,33244,33262,33266,33272,33309,33315,33325,33350,33371,33377,33381,33404,33432,33440,33448,33458,33486,33494,33502,33510,33518,33554,33562,33570,33578,33588,33616,33624,33632,33640,33648,33652,33656,33660,33676,33683,33691,33695,33702,33710,33718,33727,33731,33738,33747,33755,33759,33766,33774,33782,33786,33792,33800,33804,33811,33820,33824,33831,33839,33847,33851],{"__ignoreMap":3531},[3536,33013,33014,33016,33018,33020,33022,33024,33026],{"class":3538,"line":3539},[3536,33015,4726],{"class":4725},[3536,33017,3596],{"class":3546},[3536,33019,24501],{"class":3542},[3536,33021,4733],{"class":3546},[3536,33023,4736],{"class":4725},[3536,33025,13385],{"class":3557},[3536,33027,4742],{"class":3546},[3536,33029,33030,33032,33034,33036,33038,33040,33042,33044,33046],{"class":3538,"line":4381},[3536,33031,4726],{"class":4725},[3536,33033,3596],{"class":3546},[3536,33035,8266],{"class":3542},[3536,33037,3755],{"class":3546},[3536,33039,4993],{"class":3542},[3536,33041,4733],{"class":3546},[3536,33043,4736],{"class":4725},[3536,33045,8281],{"class":3557},[3536,33047,4742],{"class":3546},[3536,33049,33050],{"class":3538,"line":4393},[3536,33051,4748],{"emptyLinePlaceholder":4747},[3536,33053,33054,33056,33058,33060,33062,33064,33066],{"class":3538,"line":4414},[3536,33055,4726],{"class":4725},[3536,33057,3596],{"class":3546},[3536,33059,11986],{"class":3542},[3536,33061,4733],{"class":3546},[3536,33063,4736],{"class":4725},[3536,33065,11993],{"class":3557},[3536,33067,4742],{"class":3546},[3536,33069,33070,33072,33074,33076,33078,33080,33082],{"class":3538,"line":4470},[3536,33071,4726],{"class":4725},[3536,33073,3596],{"class":3546},[3536,33075,6704],{"class":3542},[3536,33077,4733],{"class":3546},[3536,33079,4736],{"class":4725},[3536,33081,13588],{"class":3557},[3536,33083,4742],{"class":3546},[3536,33085,33086],{"class":3538,"line":4479},[3536,33087,4748],{"emptyLinePlaceholder":4747},[3536,33089,33090,33092,33095],{"class":3538,"line":4484},[3536,33091,13553],{"class":3561},[3536,33093,33094],{"class":3616}," FormRowProps",[3536,33096,7632],{"class":3546},[3536,33098,33099,33101,33103,33105],{"class":3538,"line":4490},[3536,33100,30979],{"class":3542},[3536,33102,3613],{"class":3546},[3536,33104,3617],{"class":3616},[3536,33106,4742],{"class":3546},[3536,33108,33109],{"class":3538,"line":7163},[3536,33110,33111],{"class":4573},"  \u002F** Короткий опис під label (для Switch \u002F Checkbox \u002F Slider). *\u002F\n",[3536,33113,33114,33116,33118,33120],{"class":3538,"line":7171},[3536,33115,7659],{"class":3542},[3536,33117,22858],{"class":3546},[3536,33119,3617],{"class":3616},[3536,33121,4742],{"class":3546},[3536,33123,33124,33126,33128,33130],{"class":3538,"line":7177},[3536,33125,31035],{"class":3542},[3536,33127,22858],{"class":3546},[3536,33129,3617],{"class":3616},[3536,33131,4742],{"class":3546},[3536,33133,33134],{"class":3538,"line":7190},[3536,33135,33136],{"class":4573},"  \u002F** Правий слот: Switch, Checkbox тощо. *\u002F\n",[3536,33138,33139,33142,33144,33146],{"class":3538,"line":7203},[3536,33140,33141],{"class":3542},"  control",[3536,33143,3613],{"class":3546},[3536,33145,24501],{"class":3616},[3536,33147,4742],{"class":3546},[3536,33149,33150],{"class":3538,"line":7214},[3536,33151,33152],{"class":4573},"  \u002F** Якщо true — control під label на всю ширину (Slider, Picker). *\u002F\n",[3536,33154,33155,33158,33160,33162],{"class":3538,"line":7220},[3536,33156,33157],{"class":3542},"  stacked",[3536,33159,22858],{"class":3546},[3536,33161,22861],{"class":3616},[3536,33163,4742],{"class":3546},[3536,33165,33166],{"class":3538,"line":7226},[3536,33167,7681],{"class":3546},[3536,33169,33170],{"class":3538,"line":7244},[3536,33171,4748],{"emptyLinePlaceholder":4747},[3536,33173,33174],{"class":3538,"line":7250},[3536,33175,12004],{"class":4573},[3536,33177,33178],{"class":3538,"line":7256},[3536,33179,33180],{"class":4573}," * Рядок форми для не-текстових контролів:\n",[3536,33182,33183],{"class":3538,"line":7261},[3536,33184,33185],{"class":4573}," * label + опис зліва, control справа (або stacked).\n",[3536,33187,33188],{"class":3538,"line":7266},[3536,33189,12034],{"class":4573},[3536,33191,33192,33194,33196,33199],{"class":3538,"line":7803},[3536,33193,4753],{"class":4725},[3536,33195,4759],{"class":3561},[3536,33197,33198],{"class":3550}," FormRow",[3536,33200,4378],{"class":3546},[3536,33202,33203,33205],{"class":3538,"line":7813},[3536,33204,30979],{"class":3542},[3536,33206,4390],{"class":3546},[3536,33208,33209,33211],{"class":3538,"line":7823},[3536,33210,7659],{"class":3542},[3536,33212,4390],{"class":3546},[3536,33214,33215,33217],{"class":3538,"line":7833},[3536,33216,31035],{"class":3542},[3536,33218,4390],{"class":3546},[3536,33220,33221,33223],{"class":3538,"line":7843},[3536,33222,33141],{"class":3542},[3536,33224,4390],{"class":3546},[3536,33226,33227,33229,33231,33233],{"class":3538,"line":7848},[3536,33228,33157],{"class":3542},[3536,33230,4874],{"class":3546},[3536,33232,13814],{"class":3561},[3536,33234,4390],{"class":3546},[3536,33236,33237,33239,33242],{"class":3538,"line":7854},[3536,33238,27019],{"class":3546},[3536,33240,33241],{"class":3616},"FormRowProps",[3536,33243,4977],{"class":3546},[3536,33245,33246,33248,33250,33252,33254,33256,33258,33260],{"class":3538,"line":7859},[3536,33247,4770],{"class":3561},[3536,33249,3596],{"class":3546},[3536,33251,12082],{"class":3599},[3536,33253,3755],{"class":3546},[3536,33255,13743],{"class":3599},[3536,33257,3602],{"class":3546},[3536,33259,11986],{"class":3550},[3536,33261,7911],{"class":3546},[3536,33263,33264],{"class":3538,"line":7888},[3536,33265,4748],{"emptyLinePlaceholder":4747},[3536,33267,33268,33270],{"class":3538,"line":7914},[3536,33269,4982],{"class":4725},[3536,33271,4985],{"class":3546},[3536,33273,33274,33276,33278,33280,33282,33284,33286,33288,33290,33293,33295,33297,33299,33301,33303,33305,33307],{"class":3538,"line":7952},[3536,33275,4990],{"class":4309},[3536,33277,4993],{"class":3616},[3536,33279,8041],{"class":4315},[3536,33281,4319],{"class":3546},[3536,33283,4322],{"class":3561},[3536,33285,4894],{"class":3568},[3536,33287,8496],{"class":3542},[3536,33289,3547],{"class":3568},[3536,33291,33292],{"class":3542},"wrap",[3536,33294,15259],{"class":3568},[3536,33296,10649],{"class":3542},[3536,33298,14219],{"class":3542},[3536,33300,3547],{"class":3568},[3536,33302,14946],{"class":3542},[3536,33304,15280],{"class":3568},[3536,33306,3574],{"class":3561},[3536,33308,4352],{"class":4309},[3536,33310,33311,33313],{"class":3538,"line":8796},[3536,33312,5000],{"class":4309},[3536,33314,14595],{"class":3616},[3536,33316,33317,33319,33321,33323],{"class":3538,"line":8838},[3536,33318,9080],{"class":4315},[3536,33320,4319],{"class":3546},[3536,33322,4322],{"class":3561},[3536,33324,14607],{"class":3568},[3536,33326,33327,33330,33332,33334,33336,33339,33341,33343,33345,33348],{"class":3538,"line":8877},[3536,33328,33329],{"class":3542},"          stacked",[3536,33331,12129],{"class":3546},[3536,33333,9201],{"class":3542},[3536,33335,3547],{"class":3568},[3536,33337,33338],{"class":3542},"stacked",[3536,33340,12135],{"class":3546},[3536,33342,9201],{"class":3542},[3536,33344,3547],{"class":3568},[3536,33346,33347],{"class":3542},"row",[3536,33349,4390],{"class":3568},[3536,33351,33352,33355,33357,33359,33361,33363,33365,33367,33369],{"class":3538,"line":8918},[3536,33353,33354],{"class":3546},"          !",[3536,33356,33338],{"class":3542},[3536,33358,31939],{"class":3546},[3536,33360,3596],{"class":3568},[3536,33362,10649],{"class":3542},[3536,33364,14219],{"class":3542},[3536,33366,3547],{"class":3568},[3536,33368,14224],{"class":3542},[3536,33370,4411],{"class":3568},[3536,33372,33373,33375],{"class":3538,"line":8928},[3536,33374,14974],{"class":3568},[3536,33376,4476],{"class":3561},[3536,33378,33379],{"class":3538,"line":8938},[3536,33380,8139],{"class":4309},[3536,33382,33383,33385,33387,33389,33391,33393,33395,33397,33400,33402],{"class":3538,"line":8946},[3536,33384,8144],{"class":4309},[3536,33386,4993],{"class":3616},[3536,33388,8041],{"class":4315},[3536,33390,4319],{"class":3546},[3536,33392,4322],{"class":3561},[3536,33394,8496],{"class":3542},[3536,33396,3547],{"class":3568},[3536,33398,33399],{"class":3542},"texts",[3536,33401,3574],{"class":3561},[3536,33403,4352],{"class":4309},[3536,33405,33406,33408,33410,33412,33414,33416,33418,33420,33422,33424,33426,33428,33430],{"class":3538,"line":8965},[3536,33407,8731],{"class":4309},[3536,33409,6704],{"class":3616},[3536,33411,14692],{"class":4315},[3536,33413,4319],{"class":3546},[3536,33415,15020],{"class":3557},[3536,33417,8041],{"class":4315},[3536,33419,4319],{"class":3546},[3536,33421,4322],{"class":3561},[3536,33423,8496],{"class":3542},[3536,33425,3547],{"class":3568},[3536,33427,13617],{"class":3542},[3536,33429,3574],{"class":3561},[3536,33431,4352],{"class":4309},[3536,33433,33434,33436,33438],{"class":3538,"line":8993},[3536,33435,17739],{"class":3561},[3536,33437,13617],{"class":3542},[3536,33439,4476],{"class":3561},[3536,33441,33442,33444,33446],{"class":3538,"line":8999},[3536,33443,9044],{"class":4309},[3536,33445,6704],{"class":3616},[3536,33447,4352],{"class":4309},[3536,33449,33450,33452,33454,33456],{"class":3538,"line":9032},[3536,33451,15163],{"class":3561},[3536,33453,10399],{"class":3542},[3536,33455,12129],{"class":3546},[3536,33457,4985],{"class":3568},[3536,33459,33460,33462,33464,33466,33468,33470,33472,33474,33476,33478,33480,33482,33484],{"class":3538,"line":9041},[3536,33461,8755],{"class":4309},[3536,33463,6704],{"class":3616},[3536,33465,14692],{"class":4315},[3536,33467,4319],{"class":3546},[3536,33469,15020],{"class":3557},[3536,33471,12792],{"class":4315},[3536,33473,4319],{"class":3546},[3536,33475,4322],{"class":3561},[3536,33477,12082],{"class":3542},[3536,33479,3547],{"class":3568},[3536,33481,12621],{"class":3542},[3536,33483,3574],{"class":3561},[3536,33485,4352],{"class":4309},[3536,33487,33488,33490,33492],{"class":3538,"line":9051},[3536,33489,18415],{"class":3561},[3536,33491,10399],{"class":3542},[3536,33493,4476],{"class":3561},[3536,33495,33496,33498,33500],{"class":3538,"line":9059},[3536,33497,8931],{"class":4309},[3536,33499,6704],{"class":3616},[3536,33501,4352],{"class":4309},[3536,33503,33504,33506,33508],{"class":3538,"line":9065},[3536,33505,18168],{"class":3568},[3536,33507,3987],{"class":3546},[3536,33509,14526],{"class":3561},[3536,33511,33512,33514,33516],{"class":3538,"line":9070},[3536,33513,10208],{"class":4309},[3536,33515,4993],{"class":3616},[3536,33517,4352],{"class":4309},[3536,33519,33520,33522,33524,33526,33528,33530,33532,33534,33536,33538,33541,33543,33545,33547,33550,33552],{"class":3538,"line":9077},[3536,33521,8144],{"class":4309},[3536,33523,4993],{"class":3616},[3536,33525,8041],{"class":4315},[3536,33527,4319],{"class":3546},[3536,33529,4322],{"class":3561},[3536,33531,33338],{"class":3542},[3536,33533,12129],{"class":3546},[3536,33535,9201],{"class":3542},[3536,33537,3547],{"class":3568},[3536,33539,33540],{"class":3542},"fullControl",[3536,33542,12135],{"class":3546},[3536,33544,9201],{"class":3542},[3536,33546,3547],{"class":3568},[3536,33548,33549],{"class":3542},"sideControl",[3536,33551,3574],{"class":3561},[3536,33553,4352],{"class":4309},[3536,33555,33556,33558,33560],{"class":3538,"line":9096},[3536,33557,15163],{"class":3561},[3536,33559,27856],{"class":3542},[3536,33561,4476],{"class":3561},[3536,33563,33564,33566,33568],{"class":3538,"line":9125},[3536,33565,10208],{"class":4309},[3536,33567,4993],{"class":3616},[3536,33569,4352],{"class":4309},[3536,33571,33572,33574,33576],{"class":3538,"line":9130},[3536,33573,8215],{"class":4309},[3536,33575,4993],{"class":3616},[3536,33577,4352],{"class":4309},[3536,33579,33580,33582,33584,33586],{"class":3538,"line":9163},[3536,33581,14246],{"class":3561},[3536,33583,31251],{"class":3542},[3536,33585,12129],{"class":3546},[3536,33587,4985],{"class":3568},[3536,33589,33590,33592,33594,33596,33598,33600,33602,33604,33606,33608,33610,33612,33614],{"class":3538,"line":9172},[3536,33591,8144],{"class":4309},[3536,33593,6704],{"class":3616},[3536,33595,14692],{"class":4315},[3536,33597,4319],{"class":3546},[3536,33599,15020],{"class":3557},[3536,33601,12792],{"class":4315},[3536,33603,4319],{"class":3546},[3536,33605,4322],{"class":3561},[3536,33607,12082],{"class":3542},[3536,33609,3547],{"class":3568},[3536,33611,31739],{"class":3542},[3536,33613,3574],{"class":3561},[3536,33615,4352],{"class":4309},[3536,33617,33618,33620,33622],{"class":3538,"line":9181},[3536,33619,15163],{"class":3561},[3536,33621,31251],{"class":3542},[3536,33623,4476],{"class":3561},[3536,33625,33626,33628,33630],{"class":3538,"line":9186},[3536,33627,10208],{"class":4309},[3536,33629,6704],{"class":3616},[3536,33631,4352],{"class":4309},[3536,33633,33634,33636,33638],{"class":3538,"line":9191},[3536,33635,14521],{"class":3568},[3536,33637,3987],{"class":3546},[3536,33639,14526],{"class":3561},[3536,33641,33642,33644,33646],{"class":3538,"line":9196},[3536,33643,5063],{"class":4309},[3536,33645,4993],{"class":3616},[3536,33647,4352],{"class":4309},[3536,33649,33650],{"class":3538,"line":9215},[3536,33651,5072],{"class":3546},[3536,33653,33654],{"class":3538,"line":9237},[3536,33655,4476],{"class":3546},[3536,33657,33658],{"class":3538,"line":9245},[3536,33659,4748],{"emptyLinePlaceholder":4747},[3536,33661,33662,33664,33666,33668,33670,33672,33674],{"class":3538,"line":9256},[3536,33663,3593],{"class":3561},[3536,33665,9201],{"class":3599},[3536,33667,4874],{"class":3546},[3536,33669,8266],{"class":3542},[3536,33671,3547],{"class":3546},[3536,33673,9210],{"class":3550},[3536,33675,4378],{"class":3546},[3536,33677,33678,33681],{"class":3538,"line":9267},[3536,33679,33680],{"class":3542},"  wrap:",[3536,33682,4547],{"class":3546},[3536,33684,33685,33687,33689],{"class":3538,"line":9278},[3536,33686,18980],{"class":3542},[3536,33688,18983],{"class":3557},[3536,33690,4390],{"class":3546},[3536,33692,33693],{"class":3538,"line":9289},[3536,33694,4579],{"class":3546},[3536,33696,33697,33700],{"class":3538,"line":9300},[3536,33698,33699],{"class":3542},"  row:",[3536,33701,4547],{"class":3546},[3536,33703,33704,33706,33708],{"class":3538,"line":9305},[3536,33705,16315],{"class":3542},[3536,33707,16318],{"class":3557},[3536,33709,4390],{"class":3546},[3536,33711,33712,33714,33716],{"class":3538,"line":9313},[3536,33713,9618],{"class":3542},[3536,33715,9621],{"class":3557},[3536,33717,4390],{"class":3546},[3536,33719,33720,33722,33725],{"class":3538,"line":9322},[3536,33721,10682],{"class":3542},[3536,33723,33724],{"class":3557}," 'space-between'",[3536,33726,4390],{"class":3546},[3536,33728,33729],{"class":3538,"line":9333},[3536,33730,4579],{"class":3546},[3536,33732,33733,33736],{"class":3538,"line":9343},[3536,33734,33735],{"class":3542},"  stacked:",[3536,33737,4547],{"class":3546},[3536,33739,33740,33742,33745],{"class":3538,"line":9352},[3536,33741,16315],{"class":3542},[3536,33743,33744],{"class":3557}," 'column'",[3536,33746,4390],{"class":3546},[3536,33748,33749,33751,33753],{"class":3538,"line":9362},[3536,33750,9618],{"class":3542},[3536,33752,10950],{"class":3557},[3536,33754,4390],{"class":3546},[3536,33756,33757],{"class":3538,"line":9372},[3536,33758,4579],{"class":3546},[3536,33760,33761,33764],{"class":3538,"line":9377},[3536,33762,33763],{"class":3542},"  texts:",[3536,33765,4547],{"class":3546},[3536,33767,33768,33770,33772],{"class":3538,"line":9400},[3536,33769,10665],{"class":3542},[3536,33771,9226],{"class":4897},[3536,33773,4390],{"class":3546},[3536,33775,33776,33778,33780],{"class":3538,"line":9408},[3536,33777,9464],{"class":3542},[3536,33779,10806],{"class":4897},[3536,33781,4390],{"class":3546},[3536,33783,33784],{"class":3538,"line":9419},[3536,33785,4579],{"class":3546},[3536,33787,33788,33790],{"class":3538,"line":9429},[3536,33789,32821],{"class":3542},[3536,33791,4547],{"class":3546},[3536,33793,33794,33796,33798],{"class":3538,"line":9439},[3536,33795,9365],{"class":3542},[3536,33797,8112],{"class":3557},[3536,33799,4390],{"class":3546},[3536,33801,33802],{"class":3538,"line":9450},[3536,33803,4579],{"class":3546},[3536,33805,33806,33809],{"class":3538,"line":9461},[3536,33807,33808],{"class":3542},"  sideControl:",[3536,33810,4547],{"class":3546},[3536,33812,33813,33816,33818],{"class":3538,"line":9471},[3536,33814,33815],{"class":3542},"    flexShrink:",[3536,33817,14259],{"class":4897},[3536,33819,4390],{"class":3546},[3536,33821,33822],{"class":3538,"line":9476},[3536,33823,4579],{"class":3546},[3536,33825,33826,33829],{"class":3538,"line":9505},[3536,33827,33828],{"class":3542},"  fullControl:",[3536,33830,4547],{"class":3546},[3536,33832,33833,33835,33837],{"class":3538,"line":9540},[3536,33834,9325],{"class":3542},[3536,33836,9262],{"class":4897},[3536,33838,4390],{"class":3546},[3536,33840,33841,33843,33845],{"class":3538,"line":9560},[3536,33842,18980],{"class":3542},[3536,33844,18983],{"class":3557},[3536,33846,4390],{"class":3546},[3536,33848,33849],{"class":3538,"line":9568},[3536,33850,4579],{"class":3546},[3536,33852,33853],{"class":3538,"line":9578},[3536,33854,4417],{"class":3546},[3526,33856,33859],{"className":3528,"code":33857,"filename":33858,"language":3530,"meta":3531,"style":3531},"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",[3533,33860,33861,33878,33911,33915,33933,33949,33965,33969,33978,33989,34011,34015,34019,34041,34063,34067,34073,34079,34088,34114,34138,34158,34168,34172,34184,34196,34208,34212,34228,34234,34238,34244,34267,34297,34306,34311,34315,34361,34398,34438,34450,34458,34487,34499,34507,34515,34557,34569,34579,34620,34628,34636,34664,34710,34724,34730,34739,34770,34774,34778,34786,34794,34808,34814,34822,34852,34856,34861,34869,34877,34885,34891,34897,34910,34942,34946,34958,34966,35002,35030,35035,35043,35051,35059,35067,35071,35075,35079,35084,35104,35108,35124,35130,35138,35146,35158,35164,35172,35181,35189,35207,35211,35217,35226,35230,35236,35240,35244,35251,35261,35265,35271,35279,35288,35292,35298,35305,35313,35321,35325,35332,35340,35344,35351,35359,35363,35370,35378,35382,35388,35396,35404,35408,35415,35423,35431,35435,35441,35450,35454],{"__ignoreMap":3531},[3536,33862,33863,33865,33867,33870,33872,33874,33876],{"class":3538,"line":3539},[3536,33864,4726],{"class":4725},[3536,33866,3596],{"class":3546},[3536,33868,33869],{"class":3542},"memo",[3536,33871,4733],{"class":3546},[3536,33873,4736],{"class":4725},[3536,33875,13385],{"class":3557},[3536,33877,4742],{"class":3546},[3536,33879,33880,33882,33884,33887,33889,33891,33893,33895,33897,33899,33901,33903,33905,33907,33909],{"class":3538,"line":4381},[3536,33881,4726],{"class":4725},[3536,33883,3596],{"class":3546},[3536,33885,33886],{"class":3542},"Image",[3536,33888,3755],{"class":3546},[3536,33890,19126],{"class":3542},[3536,33892,3755],{"class":3546},[3536,33894,8261],{"class":3542},[3536,33896,3755],{"class":3546},[3536,33898,8266],{"class":3542},[3536,33900,3755],{"class":3546},[3536,33902,4993],{"class":3542},[3536,33904,4733],{"class":3546},[3536,33906,4736],{"class":4725},[3536,33908,8281],{"class":3557},[3536,33910,4742],{"class":3546},[3536,33912,33913],{"class":3538,"line":4393},[3536,33914,4748],{"emptyLinePlaceholder":4747},[3536,33916,33917,33919,33921,33923,33925,33927,33929,33931],{"class":3538,"line":4414},[3536,33918,4726],{"class":4725},[3536,33920,7626],{"class":4725},[3536,33922,3596],{"class":3546},[3536,33924,4658],{"class":3542},[3536,33926,4733],{"class":3546},[3536,33928,4736],{"class":4725},[3536,33930,26676],{"class":3557},[3536,33932,4742],{"class":3546},[3536,33934,33935,33937,33939,33941,33943,33945,33947],{"class":3538,"line":4470},[3536,33936,4726],{"class":4725},[3536,33938,3596],{"class":3546},[3536,33940,11986],{"class":3542},[3536,33942,4733],{"class":3546},[3536,33944,4736],{"class":4725},[3536,33946,11993],{"class":3557},[3536,33948,4742],{"class":3546},[3536,33950,33951,33953,33955,33957,33959,33961,33963],{"class":3538,"line":4479},[3536,33952,4726],{"class":4725},[3536,33954,3596],{"class":3546},[3536,33956,6704],{"class":3542},[3536,33958,4733],{"class":3546},[3536,33960,4736],{"class":4725},[3536,33962,13588],{"class":3557},[3536,33964,4742],{"class":3546},[3536,33966,33967],{"class":3538,"line":4484},[3536,33968,4748],{"emptyLinePlaceholder":4747},[3536,33970,33971,33973,33976],{"class":3538,"line":4490},[3536,33972,13553],{"class":3561},[3536,33974,33975],{"class":3616}," TripCardProps",[3536,33977,7632],{"class":3546},[3536,33979,33980,33983,33985,33987],{"class":3538,"line":7163},[3536,33981,33982],{"class":3542},"  trip",[3536,33984,3613],{"class":3546},[3536,33986,4658],{"class":3616},[3536,33988,4742],{"class":3546},[3536,33990,33991,33994,33997,33999,34001,34003,34005,34007,34009],{"class":3538,"line":7171},[3536,33992,33993],{"class":3550},"  onPress",[3536,33995,33996],{"class":3546},"?: (",[3536,33998,3565],{"class":3542},[3536,34000,3613],{"class":3546},[3536,34002,4658],{"class":3616},[3536,34004,7932],{"class":3546},[3536,34006,5042],{"class":3561},[3536,34008,24421],{"class":3616},[3536,34010,4742],{"class":3546},[3536,34012,34013],{"class":3538,"line":7177},[3536,34014,7681],{"class":3546},[3536,34016,34017],{"class":3538,"line":7190},[3536,34018,4748],{"emptyLinePlaceholder":4747},[3536,34020,34021,34023,34026,34028,34030,34032,34034,34036,34039],{"class":3538,"line":7203},[3536,34022,12068],{"class":3561},[3536,34024,34025],{"class":3550}," TripCardComponent",[3536,34027,8717],{"class":3546},[3536,34029,3565],{"class":3542},[3536,34031,3755],{"class":3546},[3536,34033,5423],{"class":3542},[3536,34035,24528],{"class":3546},[3536,34037,34038],{"class":3616},"TripCardProps",[3536,34040,4977],{"class":3546},[3536,34042,34043,34045,34047,34049,34051,34053,34055,34057,34059,34061],{"class":3538,"line":7214},[3536,34044,4770],{"class":3561},[3536,34046,3596],{"class":3546},[3536,34048,12082],{"class":3599},[3536,34050,3755],{"class":3546},[3536,34052,13743],{"class":3599},[3536,34054,3755],{"class":3546},[3536,34056,16927],{"class":3599},[3536,34058,3602],{"class":3546},[3536,34060,11986],{"class":3550},[3536,34062,7911],{"class":3546},[3536,34064,34065],{"class":3538,"line":7220},[3536,34066,4748],{"emptyLinePlaceholder":4747},[3536,34068,34069,34071],{"class":3538,"line":7226},[3536,34070,4982],{"class":4725},[3536,34072,4985],{"class":3546},[3536,34074,34075,34077],{"class":3538,"line":7244},[3536,34076,4990],{"class":4309},[3536,34078,8943],{"class":3616},[3536,34080,34081,34084,34086],{"class":3538,"line":7250},[3536,34082,34083],{"class":4315},"      accessibilityRole",[3536,34085,4319],{"class":3546},[3536,34087,15492],{"class":3557},[3536,34089,34090,34093,34095,34097,34100,34102,34104,34106,34108,34110,34112],{"class":3538,"line":7256},[3536,34091,34092],{"class":4315},"      accessibilityLabel",[3536,34094,4319],{"class":3546},[3536,34096,4322],{"class":3561},[3536,34098,34099],{"class":3557},"`Поїздка ",[3536,34101,3562],{"class":3561},[3536,34103,3565],{"class":3542},[3536,34105,3547],{"class":3568},[3536,34107,8827],{"class":3542},[3536,34109,3574],{"class":3561},[3536,34111,3577],{"class":3557},[3536,34113,4476],{"class":3561},[3536,34115,34116,34119,34121,34123,34125,34127,34129,34132,34134,34136],{"class":3538,"line":7261},[3536,34117,34118],{"class":4315},"      onPress",[3536,34120,4319],{"class":3546},[3536,34122,4322],{"class":3561},[3536,34124,5039],{"class":3568},[3536,34126,5042],{"class":3561},[3536,34128,5032],{"class":3550},[3536,34130,34131],{"class":3568},"?.(",[3536,34133,3565],{"class":3542},[3536,34135,3835],{"class":3568},[3536,34137,4476],{"class":3561},[3536,34139,34140,34142,34144,34146,34148,34151,34153,34155],{"class":3538,"line":7266},[3536,34141,14600],{"class":4315},[3536,34143,4319],{"class":3546},[3536,34145,4322],{"class":3561},[3536,34147,8717],{"class":3568},[3536,34149,34150],{"class":3542},"pressed",[3536,34152,8722],{"class":3568},[3536,34154,5042],{"class":3561},[3536,34156,34157],{"class":3568}," [\n",[3536,34159,34160,34162,34164,34166],{"class":3538,"line":7803},[3536,34161,14612],{"class":3542},[3536,34163,3547],{"class":3568},[3536,34165,8746],{"class":3542},[3536,34167,4390],{"class":3568},[3536,34169,34170],{"class":3538,"line":7813},[3536,34171,7136],{"class":3568},[3536,34173,34174,34176,34178,34180,34182],{"class":3538,"line":7823},[3536,34175,12635],{"class":3542},[3536,34177,12168],{"class":3542},[3536,34179,3547],{"class":3568},[3536,34181,15451],{"class":3542},[3536,34183,4390],{"class":3568},[3536,34185,34186,34188,34190,34192,34194],{"class":3538,"line":7833},[3536,34187,18693],{"class":3542},[3536,34189,12168],{"class":3542},[3536,34191,3547],{"class":3568},[3536,34193,12655],{"class":3542},[3536,34195,4390],{"class":3568},[3536,34197,34198,34200,34202,34204,34206],{"class":3538,"line":7843},[3536,34199,18706],{"class":3542},[3536,34201,18709],{"class":3542},[3536,34203,3547],{"class":3568},[3536,34205,17220],{"class":3542},[3536,34207,4390],{"class":3568},[3536,34209,34210],{"class":3538,"line":7848},[3536,34211,12662],{"class":3568},[3536,34213,34214,34217,34219,34221,34223,34226],{"class":3538,"line":7854},[3536,34215,34216],{"class":3542},"        pressed",[3536,34218,31939],{"class":3546},[3536,34220,9201],{"class":3542},[3536,34222,3547],{"class":3568},[3536,34224,34225],{"class":3542},"cardPressed",[3536,34227,4390],{"class":3568},[3536,34229,34230,34232],{"class":3538,"line":7859},[3536,34231,14675],{"class":3568},[3536,34233,4476],{"class":3561},[3536,34235,34236],{"class":3538,"line":7888},[3536,34237,12703],{"class":4309},[3536,34239,34240,34242],{"class":3538,"line":7914},[3536,34241,5000],{"class":4309},[3536,34243,17553],{"class":3616},[3536,34245,34246,34249,34251,34253,34255,34257,34259,34261,34263,34265],{"class":3538,"line":7952},[3536,34247,34248],{"class":4315},"        source",[3536,34250,4319],{"class":3546},[3536,34252,4322],{"class":3561},[3536,34254,8165],{"class":3568},[3536,34256,17567],{"class":3542},[3536,34258,4404],{"class":3542},[3536,34260,3547],{"class":3568},[3536,34262,17574],{"class":3542},[3536,34264,8174],{"class":3568},[3536,34266,4476],{"class":3561},[3536,34268,34269,34271,34273,34275,34277,34279,34281,34283,34285,34287,34289,34291,34293,34295],{"class":3538,"line":8796},[3536,34270,9080],{"class":4315},[3536,34272,4319],{"class":3546},[3536,34274,4322],{"class":3561},[3536,34276,4894],{"class":3568},[3536,34278,8496],{"class":3542},[3536,34280,3547],{"class":3568},[3536,34282,17595],{"class":3542},[3536,34284,15259],{"class":3568},[3536,34286,8076],{"class":3542},[3536,34288,12168],{"class":3542},[3536,34290,3547],{"class":3568},[3536,34292,12655],{"class":3542},[3536,34294,15280],{"class":3568},[3536,34296,4476],{"class":3561},[3536,34298,34299,34302,34304],{"class":3538,"line":8838},[3536,34300,34301],{"class":4315},"        resizeMode",[3536,34303,4319],{"class":3546},[3536,34305,17619],{"class":3557},[3536,34307,34308],{"class":3538,"line":8877},[3536,34309,34310],{"class":4315},"        accessibilityIgnoresInvertColors\n",[3536,34312,34313],{"class":3538,"line":8918},[3536,34314,9062],{"class":4309},[3536,34316,34317,34319,34321,34323,34325,34327,34329,34331,34333,34335,34337,34339,34341,34343,34345,34347,34349,34351,34353,34355,34357,34359],{"class":3538,"line":8928},[3536,34318,5000],{"class":4309},[3536,34320,4993],{"class":3616},[3536,34322,8041],{"class":4315},[3536,34324,4319],{"class":3546},[3536,34326,4322],{"class":3561},[3536,34328,4894],{"class":3568},[3536,34330,8496],{"class":3542},[3536,34332,3547],{"class":3568},[3536,34334,10258],{"class":3542},[3536,34336,15259],{"class":3568},[3536,34338,9385],{"class":3542},[3536,34340,14219],{"class":3542},[3536,34342,3547],{"class":3568},[3536,34344,14224],{"class":3542},[3536,34346,3755],{"class":3568},[3536,34348,10649],{"class":3542},[3536,34350,14219],{"class":3542},[3536,34352,3547],{"class":3568},[3536,34354,14946],{"class":3542},[3536,34356,15280],{"class":3568},[3536,34358,3574],{"class":3561},[3536,34360,4352],{"class":4309},[3536,34362,34363,34365,34367,34369,34371,34373,34375,34377,34379,34382,34384,34386,34388,34390,34392,34394,34396],{"class":3538,"line":8938},[3536,34364,8144],{"class":4309},[3536,34366,4993],{"class":3616},[3536,34368,8041],{"class":4315},[3536,34370,4319],{"class":3546},[3536,34372,4322],{"class":3561},[3536,34374,4894],{"class":3568},[3536,34376,8496],{"class":3542},[3536,34378,3547],{"class":3568},[3536,34380,34381],{"class":3542},"titleRow",[3536,34383,15259],{"class":3568},[3536,34385,10649],{"class":3542},[3536,34387,14219],{"class":3542},[3536,34389,3547],{"class":3568},[3536,34391,14286],{"class":3542},[3536,34393,15280],{"class":3568},[3536,34395,3574],{"class":3561},[3536,34397,4352],{"class":4309},[3536,34399,34400,34402,34404,34406,34408,34410,34413,34415,34417,34419,34421,34423,34425,34427,34429,34431,34434,34436],{"class":3538,"line":8946},[3536,34401,8731],{"class":4309},[3536,34403,6704],{"class":3616},[3536,34405,14692],{"class":4315},[3536,34407,4319],{"class":3546},[3536,34409,14697],{"class":3557},[3536,34411,34412],{"class":4315}," numberOfLines",[3536,34414,4319],{"class":3546},[3536,34416,4322],{"class":3561},[3536,34418,5192],{"class":4897},[3536,34420,3574],{"class":3561},[3536,34422,8041],{"class":4315},[3536,34424,4319],{"class":3546},[3536,34426,4322],{"class":3561},[3536,34428,8496],{"class":3542},[3536,34430,3547],{"class":3568},[3536,34432,34433],{"class":3542},"titleFlex",[3536,34435,3574],{"class":3561},[3536,34437,4352],{"class":4309},[3536,34439,34440,34442,34444,34446,34448],{"class":3538,"line":8965},[3536,34441,17739],{"class":3561},[3536,34443,3565],{"class":3542},[3536,34445,3547],{"class":3568},[3536,34447,8827],{"class":3542},[3536,34449,4476],{"class":3561},[3536,34451,34452,34454,34456],{"class":3538,"line":8993},[3536,34453,9044],{"class":4309},[3536,34455,6704],{"class":3616},[3536,34457,4352],{"class":4309},[3536,34459,34460,34462,34464,34466,34468,34470,34472,34474,34476,34478,34480,34483,34485],{"class":3538,"line":8999},[3536,34461,8731],{"class":4309},[3536,34463,6704],{"class":3616},[3536,34465,14692],{"class":4315},[3536,34467,4319],{"class":3546},[3536,34469,15020],{"class":3557},[3536,34471,8041],{"class":4315},[3536,34473,4319],{"class":3546},[3536,34475,4322],{"class":3561},[3536,34477,8496],{"class":3542},[3536,34479,3547],{"class":3568},[3536,34481,34482],{"class":3542},"dates",[3536,34484,3574],{"class":3561},[3536,34486,4352],{"class":4309},[3536,34488,34489,34491,34493,34495,34497],{"class":3538,"line":9032},[3536,34490,17739],{"class":3561},[3536,34492,3565],{"class":3542},[3536,34494,3547],{"class":3568},[3536,34496,17746],{"class":3542},[3536,34498,4476],{"class":3561},[3536,34500,34501,34503,34505],{"class":3538,"line":9041},[3536,34502,9044],{"class":4309},[3536,34504,6704],{"class":3616},[3536,34506,4352],{"class":4309},[3536,34508,34509,34511,34513],{"class":3538,"line":9051},[3536,34510,10208],{"class":4309},[3536,34512,4993],{"class":3616},[3536,34514,4352],{"class":4309},[3536,34516,34517,34519,34521,34523,34525,34527,34529,34531,34533,34535,34537,34539,34541,34543,34545,34547,34549,34551,34553,34555],{"class":3538,"line":9059},[3536,34518,8144],{"class":4309},[3536,34520,6704],{"class":3616},[3536,34522,14692],{"class":4315},[3536,34524,4319],{"class":3546},[3536,34526,15020],{"class":3557},[3536,34528,12792],{"class":4315},[3536,34530,4319],{"class":3546},[3536,34532,4322],{"class":3561},[3536,34534,12082],{"class":3542},[3536,34536,3547],{"class":3568},[3536,34538,12202],{"class":3542},[3536,34540,3574],{"class":3561},[3536,34542,8041],{"class":4315},[3536,34544,4319],{"class":3546},[3536,34546,4322],{"class":3561},[3536,34548,8496],{"class":3542},[3536,34550,3547],{"class":3568},[3536,34552,17760],{"class":3542},[3536,34554,3574],{"class":3561},[3536,34556,4352],{"class":4309},[3536,34558,34559,34561,34563,34565,34567],{"class":3538,"line":9065},[3536,34560,15163],{"class":3561},[3536,34562,3565],{"class":3542},[3536,34564,3547],{"class":3568},[3536,34566,17760],{"class":3542},[3536,34568,4476],{"class":3561},[3536,34570,34571,34573,34575,34577],{"class":3538,"line":9070},[3536,34572,15163],{"class":3561},[3536,34574,3565],{"class":3542},[3536,34576,3547],{"class":3568},[3536,34578,17773],{"class":3542},[3536,34580,34581,34583,34585,34587,34589,34591,34593,34595,34597,34599,34601,34603,34605,34607,34609,34611,34613,34615,34617],{"class":3538,"line":9077},[3536,34582,15180],{"class":3546},[3536,34584,17781],{"class":3557},[3536,34586,3562],{"class":3561},[3536,34588,3565],{"class":3542},[3536,34590,3547],{"class":3568},[3536,34592,17790],{"class":3542},[3536,34594,3574],{"class":3561},[3536,34596,23804],{"class":3561},[3536,34598,3565],{"class":3542},[3536,34600,3547],{"class":3568},[3536,34602,17790],{"class":3542},[3536,34604,12123],{"class":3546},[3536,34606,9226],{"class":4897},[3536,34608,12129],{"class":3546},[3536,34610,30646],{"class":3557},[3536,34612,12135],{"class":3546},[3536,34614,30678],{"class":3557},[3536,34616,3574],{"class":3561},[3536,34618,34619],{"class":3557},"`\n",[3536,34621,34622,34624,34626],{"class":3538,"line":9096},[3536,34623,15215],{"class":3546},[3536,34625,17803],{"class":3557},[3536,34627,4476],{"class":3561},[3536,34629,34630,34632,34634],{"class":3538,"line":9125},[3536,34631,10208],{"class":4309},[3536,34633,6704],{"class":3616},[3536,34635,4352],{"class":4309},[3536,34637,34638,34640,34642,34644,34646,34648,34651,34653,34655,34657,34659,34662],{"class":3538,"line":9130},[3536,34639,18815],{"class":3561},[3536,34641,3554],{"class":3568},[3536,34643,3565],{"class":3542},[3536,34645,3547],{"class":3568},[3536,34647,17865],{"class":3542},[3536,34649,34650],{"class":3546}," ||",[3536,34652,4404],{"class":3542},[3536,34654,3547],{"class":3568},[3536,34656,17930],{"class":3542},[3536,34658,7932],{"class":3568},[3536,34660,34661],{"class":3546},"&&",[3536,34663,4985],{"class":3568},[3536,34665,34666,34668,34670,34672,34674,34676,34678,34680,34682,34684,34686,34688,34690,34692,34694,34696,34698,34700,34702,34704,34706,34708],{"class":3538,"line":9163},[3536,34667,8731],{"class":4309},[3536,34669,4993],{"class":3616},[3536,34671,8041],{"class":4315},[3536,34673,4319],{"class":3546},[3536,34675,4322],{"class":3561},[3536,34677,4894],{"class":3568},[3536,34679,8496],{"class":3542},[3536,34681,3547],{"class":3568},[3536,34683,17838],{"class":3542},[3536,34685,15259],{"class":3568},[3536,34687,10649],{"class":3542},[3536,34689,14219],{"class":3542},[3536,34691,3547],{"class":3568},[3536,34693,14946],{"class":3542},[3536,34695,3755],{"class":3568},[3536,34697,10842],{"class":3542},[3536,34699,14219],{"class":3542},[3536,34701,3547],{"class":3568},[3536,34703,14946],{"class":3542},[3536,34705,15280],{"class":3568},[3536,34707,3574],{"class":3561},[3536,34709,4352],{"class":4309},[3536,34711,34712,34714,34716,34718,34720,34722],{"class":3538,"line":9172},[3536,34713,17739],{"class":3561},[3536,34715,3565],{"class":3542},[3536,34717,3547],{"class":3568},[3536,34719,17865],{"class":3542},[3536,34721,12129],{"class":3546},[3536,34723,4985],{"class":3568},[3536,34725,34726,34728],{"class":3538,"line":9181},[3536,34727,8789],{"class":4309},[3536,34729,14737],{"class":3616},[3536,34731,34732,34735,34737],{"class":3538,"line":9186},[3536,34733,34734],{"class":4315},"                variant",[3536,34736,4319],{"class":3546},[3536,34738,14748],{"class":3557},[3536,34740,34741,34743,34745,34747,34749,34751,34753,34756,34758,34760,34762,34764,34766,34768],{"class":3538,"line":9191},[3536,34742,15401],{"class":4315},[3536,34744,4319],{"class":3546},[3536,34746,4322],{"class":3561},[3536,34748,4894],{"class":3568},[3536,34750,8496],{"class":3542},[3536,34752,3547],{"class":3568},[3536,34754,34755],{"class":3542},"badge",[3536,34757,15259],{"class":3568},[3536,34759,8101],{"class":3542},[3536,34761,12168],{"class":3542},[3536,34763,3547],{"class":3568},[3536,34765,12621],{"class":3542},[3536,34767,15280],{"class":3568},[3536,34769,4476],{"class":3561},[3536,34771,34772],{"class":3538,"line":9196},[3536,34773,15546],{"class":4309},[3536,34775,34776],{"class":3538,"line":9215},[3536,34777,17902],{"class":3568},[3536,34779,34780,34782,34784],{"class":3538,"line":9237},[3536,34781,8921],{"class":4309},[3536,34783,6704],{"class":3616},[3536,34785,4352],{"class":4309},[3536,34787,34788,34790,34792],{"class":3538,"line":9245},[3536,34789,17915],{"class":3568},[3536,34791,3987],{"class":3546},[3536,34793,14526],{"class":3561},[3536,34795,34796,34798,34800,34802,34804,34806],{"class":3538,"line":9256},[3536,34797,17739],{"class":3561},[3536,34799,3565],{"class":3542},[3536,34801,3547],{"class":3568},[3536,34803,17930],{"class":3542},[3536,34805,12129],{"class":3546},[3536,34807,4985],{"class":3568},[3536,34809,34810,34812],{"class":3538,"line":9267},[3536,34811,8789],{"class":4309},[3536,34813,14737],{"class":3616},[3536,34815,34816,34818,34820],{"class":3538,"line":9278},[3536,34817,34734],{"class":4315},[3536,34819,4319],{"class":3546},[3536,34821,14748],{"class":3557},[3536,34823,34824,34826,34828,34830,34832,34834,34836,34838,34840,34842,34844,34846,34848,34850],{"class":3538,"line":9289},[3536,34825,15401],{"class":4315},[3536,34827,4319],{"class":3546},[3536,34829,4322],{"class":3561},[3536,34831,4894],{"class":3568},[3536,34833,8496],{"class":3542},[3536,34835,3547],{"class":3568},[3536,34837,34755],{"class":3542},[3536,34839,15259],{"class":3568},[3536,34841,8101],{"class":3542},[3536,34843,12168],{"class":3542},[3536,34845,3547],{"class":3568},[3536,34847,12202],{"class":3542},[3536,34849,15280],{"class":3568},[3536,34851,4476],{"class":3561},[3536,34853,34854],{"class":3538,"line":9300},[3536,34855,15546],{"class":4309},[3536,34857,34858],{"class":3538,"line":9305},[3536,34859,34860],{"class":3568},"                є план\n",[3536,34862,34863,34865,34867],{"class":3538,"line":9313},[3536,34864,8921],{"class":4309},[3536,34866,6704],{"class":3616},[3536,34868,4352],{"class":4309},[3536,34870,34871,34873,34875],{"class":3538,"line":9322},[3536,34872,17915],{"class":3568},[3536,34874,3987],{"class":3546},[3536,34876,14526],{"class":3561},[3536,34878,34879,34881,34883],{"class":3538,"line":9333},[3536,34880,9044],{"class":4309},[3536,34882,4993],{"class":3616},[3536,34884,4352],{"class":4309},[3536,34886,34887,34889],{"class":3538,"line":9343},[3536,34888,9054],{"class":3568},[3536,34890,4476],{"class":3561},[3536,34892,34893,34895],{"class":3538,"line":9352},[3536,34894,8144],{"class":4309},[3536,34896,14737],{"class":3616},[3536,34898,34899,34902,34904,34906,34908],{"class":3538,"line":9362},[3536,34900,34901],{"class":4315},"          numberOfLines",[3536,34903,4319],{"class":3546},[3536,34905,4322],{"class":3561},[3536,34907,19784],{"class":4897},[3536,34909,4476],{"class":3561},[3536,34911,34912,34914,34916,34918,34920,34922,34924,34926,34928,34930,34932,34934,34936,34938,34940],{"class":3538,"line":9372},[3536,34913,15100],{"class":4315},[3536,34915,4319],{"class":3546},[3536,34917,4322],{"class":3561},[3536,34919,8165],{"class":3568},[3536,34921,10842],{"class":3542},[3536,34923,14219],{"class":3542},[3536,34925,3547],{"class":3568},[3536,34927,14946],{"class":3542},[3536,34929,3755],{"class":3568},[3536,34931,8101],{"class":3542},[3536,34933,12168],{"class":3542},[3536,34935,3547],{"class":3568},[3536,34937,12621],{"class":3542},[3536,34939,8174],{"class":3568},[3536,34941,4476],{"class":3561},[3536,34943,34944],{"class":3538,"line":9377},[3536,34945,15157],{"class":4309},[3536,34947,34948,34950,34952,34954,34956],{"class":3538,"line":9400},[3536,34949,15163],{"class":3561},[3536,34951,3565],{"class":3542},[3536,34953,3547],{"class":3568},[3536,34955,10399],{"class":3542},[3536,34957,4476],{"class":3561},[3536,34959,34960,34962,34964],{"class":3538,"line":9408},[3536,34961,10208],{"class":4309},[3536,34963,6704],{"class":3616},[3536,34965,4352],{"class":4309},[3536,34967,34968,34970,34972,34974,34976,34978,34980,34982,34984,34986,34988,34990,34992,34994,34996,34998,35000],{"class":3538,"line":9419},[3536,34969,8144],{"class":4309},[3536,34971,4993],{"class":3616},[3536,34973,8041],{"class":4315},[3536,34975,4319],{"class":3546},[3536,34977,4322],{"class":3561},[3536,34979,4894],{"class":3568},[3536,34981,8496],{"class":3542},[3536,34983,3547],{"class":3568},[3536,34985,16051],{"class":3542},[3536,34987,15259],{"class":3568},[3536,34989,10842],{"class":3542},[3536,34991,14219],{"class":3542},[3536,34993,3547],{"class":3568},[3536,34995,14286],{"class":3542},[3536,34997,15280],{"class":3568},[3536,34999,3574],{"class":3561},[3536,35001,4352],{"class":4309},[3536,35003,35004,35006,35008,35010,35012,35014,35016,35018,35020,35022,35024,35026,35028],{"class":3538,"line":9429},[3536,35005,8731],{"class":4309},[3536,35007,6704],{"class":3616},[3536,35009,14692],{"class":4315},[3536,35011,4319],{"class":3546},[3536,35013,15020],{"class":3557},[3536,35015,12792],{"class":4315},[3536,35017,4319],{"class":3546},[3536,35019,4322],{"class":3561},[3536,35021,12082],{"class":3542},[3536,35023,3547],{"class":3568},[3536,35025,12202],{"class":3542},[3536,35027,3574],{"class":3561},[3536,35029,4352],{"class":4309},[3536,35031,35032],{"class":3538,"line":9439},[3536,35033,35034],{"class":3546},"            Відкрити\n",[3536,35036,35037,35039,35041],{"class":3538,"line":9450},[3536,35038,9044],{"class":4309},[3536,35040,6704],{"class":3616},[3536,35042,4352],{"class":4309},[3536,35044,35045,35047,35049],{"class":3538,"line":9461},[3536,35046,10208],{"class":4309},[3536,35048,4993],{"class":3616},[3536,35050,4352],{"class":4309},[3536,35052,35053,35055,35057],{"class":3538,"line":9471},[3536,35054,8215],{"class":4309},[3536,35056,4993],{"class":3616},[3536,35058,4352],{"class":4309},[3536,35060,35061,35063,35065],{"class":3538,"line":9476},[3536,35062,5063],{"class":4309},[3536,35064,8261],{"class":3616},[3536,35066,4352],{"class":4309},[3536,35068,35069],{"class":3538,"line":9505},[3536,35070,5072],{"class":3546},[3536,35072,35073],{"class":3538,"line":9540},[3536,35074,4476],{"class":3546},[3536,35076,35077],{"class":3538,"line":9560},[3536,35078,4748],{"emptyLinePlaceholder":4747},[3536,35080,35081],{"class":3538,"line":9568},[3536,35082,35083],{"class":4573},"\u002F** memo: рядок списку не перемальовується, якщо props ті самі. *\u002F\n",[3536,35085,35086,35088,35090,35093,35095,35097,35099,35102],{"class":3538,"line":9578},[3536,35087,4753],{"class":4725},[3536,35089,7692],{"class":3561},[3536,35091,35092],{"class":3599}," TripCard",[3536,35094,4874],{"class":3546},[3536,35096,33869],{"class":3550},[3536,35098,3554],{"class":3546},[3536,35100,35101],{"class":3542},"TripCardComponent",[3536,35103,3580],{"class":3546},[3536,35105,35106],{"class":3538,"line":9588},[3536,35107,4748],{"emptyLinePlaceholder":4747},[3536,35109,35110,35112,35114,35116,35118,35120,35122],{"class":3538,"line":9597},[3536,35111,3593],{"class":3561},[3536,35113,9201],{"class":3599},[3536,35115,4874],{"class":3546},[3536,35117,8266],{"class":3542},[3536,35119,3547],{"class":3546},[3536,35121,9210],{"class":3550},[3536,35123,4378],{"class":3546},[3536,35125,35126,35128],{"class":3538,"line":9606},[3536,35127,9403],{"class":3542},[3536,35129,4547],{"class":3546},[3536,35131,35132,35134,35136],{"class":3538,"line":9615},[3536,35133,9432],{"class":3542},[3536,35135,9226],{"class":4897},[3536,35137,4390],{"class":3546},[3536,35139,35140,35142,35144],{"class":3538,"line":9626},[3536,35141,30808],{"class":3542},[3536,35143,30811],{"class":3557},[3536,35145,4390],{"class":3546},[3536,35147,35148,35150,35152,35154,35156],{"class":3538,"line":9631},[3536,35149,19123],{"class":3546},[3536,35151,19126],{"class":3542},[3536,35153,3547],{"class":3546},[3536,35155,19065],{"class":3550},[3536,35157,4378],{"class":3546},[3536,35159,35160,35162],{"class":3538,"line":9651},[3536,35161,19137],{"class":3542},[3536,35163,4547],{"class":3546},[3536,35165,35166,35168,35170],{"class":3538,"line":9672},[3536,35167,19144],{"class":3542},[3536,35169,19147],{"class":3557},[3536,35171,4390],{"class":3546},[3536,35173,35174,35176,35179],{"class":3538,"line":9693},[3536,35175,19154],{"class":3542},[3536,35177,35178],{"class":4897}," 0.08",[3536,35180,4390],{"class":3546},[3536,35182,35183,35185,35187],{"class":3538,"line":14653},[3536,35184,19164],{"class":3542},[3536,35186,8696],{"class":4897},[3536,35188,4390],{"class":3546},[3536,35190,35191,35193,35195,35197,35199,35201,35203,35205],{"class":3538,"line":14667},[3536,35192,19173],{"class":3542},[3536,35194,3596],{"class":3546},[3536,35196,14469],{"class":3542},[3536,35198,14259],{"class":4897},[3536,35200,3755],{"class":3546},[3536,35202,8693],{"class":3542},[3536,35204,9573],{"class":4897},[3536,35206,4411],{"class":3546},[3536,35208,35209],{"class":3538,"line":14672},[3536,35210,11718],{"class":3546},[3536,35212,35213,35215],{"class":3538,"line":14680},[3536,35214,19196],{"class":3542},[3536,35216,4547],{"class":3546},[3536,35218,35219,35222,35224],{"class":3538,"line":14685},[3536,35220,35221],{"class":3542},"        elevation:",[3536,35223,27222],{"class":4897},[3536,35225,4390],{"class":3546},[3536,35227,35228],{"class":3538,"line":14717},[3536,35229,11718],{"class":3546},[3536,35231,35232,35234],{"class":3538,"line":14723},[3536,35233,19210],{"class":3542},[3536,35235,19213],{"class":3546},[3536,35237,35238],{"class":3538,"line":14732},[3536,35239,19218],{"class":3546},[3536,35241,35242],{"class":3538,"line":14740},[3536,35243,4579],{"class":3546},[3536,35245,35246,35249],{"class":3538,"line":14751},[3536,35247,35248],{"class":3542},"  cardPressed:",[3536,35250,4547],{"class":3546},[3536,35252,35253,35256,35259],{"class":3538,"line":14769},[3536,35254,35255],{"class":3542},"    opacity:",[3536,35257,35258],{"class":4897}," 0.92",[3536,35260,4390],{"class":3546},[3536,35262,35263],{"class":3538,"line":14787},[3536,35264,4579],{"class":3546},[3536,35266,35267,35269],{"class":3538,"line":14792},[3536,35268,18973],{"class":3542},[3536,35270,4547],{"class":3546},[3536,35272,35273,35275,35277],{"class":3538,"line":14798},[3536,35274,18980],{"class":3542},[3536,35276,18983],{"class":3557},[3536,35278,4390],{"class":3546},[3536,35280,35281,35283,35286],{"class":3538,"line":14807},[3536,35282,18990],{"class":3542},[3536,35284,35285],{"class":4897}," 160",[3536,35287,4390],{"class":3546},[3536,35289,35290],{"class":3538,"line":14816},[3536,35291,4579],{"class":3546},[3536,35293,35294,35296],{"class":3538,"line":14821},[3536,35295,10626],{"class":3542},[3536,35297,19213],{"class":3546},[3536,35299,35300,35303],{"class":3538,"line":14826},[3536,35301,35302],{"class":3542},"  titleRow:",[3536,35304,4547],{"class":3546},[3536,35306,35307,35309,35311],{"class":3538,"line":14833},[3536,35308,16315],{"class":3542},[3536,35310,16318],{"class":3557},[3536,35312,4390],{"class":3546},[3536,35314,35315,35317,35319],{"class":3538,"line":14857},[3536,35316,9618],{"class":3542},[3536,35318,9621],{"class":3557},[3536,35320,4390],{"class":3546},[3536,35322,35323],{"class":3538,"line":14864},[3536,35324,4579],{"class":3546},[3536,35326,35327,35330],{"class":3538,"line":14875},[3536,35328,35329],{"class":3542},"  titleFlex:",[3536,35331,4547],{"class":3546},[3536,35333,35334,35336,35338],{"class":3538,"line":14888},[3536,35335,10665],{"class":3542},[3536,35337,9226],{"class":4897},[3536,35339,4390],{"class":3546},[3536,35341,35342],{"class":3538,"line":14894},[3536,35343,4579],{"class":3546},[3536,35345,35346,35349],{"class":3538,"line":14908},[3536,35347,35348],{"class":3542},"  dates:",[3536,35350,4547],{"class":3546},[3536,35352,35353,35355,35357],{"class":3538,"line":14922},[3536,35354,33815],{"class":3542},[3536,35356,14259],{"class":4897},[3536,35358,4390],{"class":3546},[3536,35360,35361],{"class":3538,"line":14936},[3536,35362,4579],{"class":3546},[3536,35364,35365,35368],{"class":3538,"line":14951},[3536,35366,35367],{"class":3542},"  region:",[3536,35369,4547],{"class":3546},[3536,35371,35372,35374,35376],{"class":3538,"line":14965},[3536,35373,9365],{"class":3542},[3536,35375,8112],{"class":3557},[3536,35377,4390],{"class":3546},[3536,35379,35380],{"class":3538,"line":14971},[3536,35381,4579],{"class":3546},[3536,35383,35384,35386],{"class":3538,"line":14979},[3536,35385,19023],{"class":3542},[3536,35387,4547],{"class":3546},[3536,35389,35390,35392,35394],{"class":3538,"line":14984},[3536,35391,16315],{"class":3542},[3536,35393,16318],{"class":3557},[3536,35395,4390],{"class":3546},[3536,35397,35398,35400,35402],{"class":3538,"line":15009},[3536,35399,16326],{"class":3542},[3536,35401,16329],{"class":3557},[3536,35403,4390],{"class":3546},[3536,35405,35406],{"class":3538,"line":15045},[3536,35407,4579],{"class":3546},[3536,35409,35410,35413],{"class":3538,"line":15071},[3536,35411,35412],{"class":3542},"  badge:",[3536,35414,4547],{"class":3546},[3536,35416,35417,35419,35421],{"class":3538,"line":15080},[3536,35418,9365],{"class":3542},[3536,35420,8112],{"class":3557},[3536,35422,4390],{"class":3546},[3536,35424,35425,35427,35429],{"class":3538,"line":15087},[3536,35426,9281],{"class":3542},[3536,35428,9357],{"class":4897},[3536,35430,4390],{"class":3546},[3536,35432,35433],{"class":3538,"line":15097},[3536,35434,4579],{"class":3546},[3536,35436,35437,35439],{"class":3538,"line":15109},[3536,35438,16511],{"class":3542},[3536,35440,4547],{"class":3546},[3536,35442,35443,35445,35448],{"class":3538,"line":15123},[3536,35444,9618],{"class":3542},[3536,35446,35447],{"class":3557}," 'flex-start'",[3536,35449,4390],{"class":3546},[3536,35451,35452],{"class":3538,"line":15137},[3536,35453,4579],{"class":3546},[3536,35455,35456],{"class":3538,"line":15147},[3536,35457,4417],{"class":3546},[3526,35459,35462],{"className":3528,"code":35460,"filename":35461,"language":3530,"meta":3531,"style":3531},"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",[3533,35463,35464,35480,35500,35504,35522,35538,35554,35558,35567,35578,35598,35602,35606,35628,35650,35654,35660,35666,35674,35711,35733,35751,35762,35766,35778,35790,35802,35814,35833,35837,35843,35847,35885,35897,35905,35947,35959,35967,36005,36017,36025,36033,36037,36041,36045,36065,36069,36085,36092,36100,36108,36117,36121,36128,36136,36140,36147,36155,36163,36167,36174,36182,36186],{"__ignoreMap":3531},[3536,35465,35466,35468,35470,35472,35474,35476,35478],{"class":3538,"line":3539},[3536,35467,4726],{"class":4725},[3536,35469,3596],{"class":3546},[3536,35471,33869],{"class":3542},[3536,35473,4733],{"class":3546},[3536,35475,4736],{"class":4725},[3536,35477,13385],{"class":3557},[3536,35479,4742],{"class":3546},[3536,35481,35482,35484,35486,35488,35490,35492,35494,35496,35498],{"class":3538,"line":4381},[3536,35483,4726],{"class":4725},[3536,35485,3596],{"class":3546},[3536,35487,8261],{"class":3542},[3536,35489,3755],{"class":3546},[3536,35491,8266],{"class":3542},[3536,35493,4733],{"class":3546},[3536,35495,4736],{"class":4725},[3536,35497,8281],{"class":3557},[3536,35499,4742],{"class":3546},[3536,35501,35502],{"class":3538,"line":4393},[3536,35503,4748],{"emptyLinePlaceholder":4747},[3536,35505,35506,35508,35510,35512,35514,35516,35518,35520],{"class":3538,"line":4414},[3536,35507,4726],{"class":4725},[3536,35509,7626],{"class":4725},[3536,35511,3596],{"class":3546},[3536,35513,13783],{"class":3542},[3536,35515,4733],{"class":3546},[3536,35517,4736],{"class":4725},[3536,35519,26676],{"class":3557},[3536,35521,4742],{"class":3546},[3536,35523,35524,35526,35528,35530,35532,35534,35536],{"class":3538,"line":4470},[3536,35525,4726],{"class":4725},[3536,35527,3596],{"class":3546},[3536,35529,11986],{"class":3542},[3536,35531,4733],{"class":3546},[3536,35533,4736],{"class":4725},[3536,35535,11993],{"class":3557},[3536,35537,4742],{"class":3546},[3536,35539,35540,35542,35544,35546,35548,35550,35552],{"class":3538,"line":4479},[3536,35541,4726],{"class":4725},[3536,35543,3596],{"class":3546},[3536,35545,6704],{"class":3542},[3536,35547,4733],{"class":3546},[3536,35549,4736],{"class":4725},[3536,35551,13588],{"class":3557},[3536,35553,4742],{"class":3546},[3536,35555,35556],{"class":3538,"line":4484},[3536,35557,4748],{"emptyLinePlaceholder":4747},[3536,35559,35560,35562,35565],{"class":3538,"line":4490},[3536,35561,13553],{"class":3561},[3536,35563,35564],{"class":3616}," PlaceChipProps",[3536,35566,7632],{"class":3546},[3536,35568,35569,35572,35574,35576],{"class":3538,"line":7163},[3536,35570,35571],{"class":3542},"  place",[3536,35573,3613],{"class":3546},[3536,35575,13783],{"class":3616},[3536,35577,4742],{"class":3546},[3536,35579,35580,35582,35584,35586,35588,35590,35592,35594,35596],{"class":3538,"line":7171},[3536,35581,33993],{"class":3550},[3536,35583,33996],{"class":3546},[3536,35585,13920],{"class":3542},[3536,35587,3613],{"class":3546},[3536,35589,13783],{"class":3616},[3536,35591,7932],{"class":3546},[3536,35593,5042],{"class":3561},[3536,35595,24421],{"class":3616},[3536,35597,4742],{"class":3546},[3536,35599,35600],{"class":3538,"line":7177},[3536,35601,7681],{"class":3546},[3536,35603,35604],{"class":3538,"line":7190},[3536,35605,4748],{"emptyLinePlaceholder":4747},[3536,35607,35608,35610,35613,35615,35617,35619,35621,35623,35626],{"class":3538,"line":7203},[3536,35609,12068],{"class":3561},[3536,35611,35612],{"class":3550}," PlaceChipComponent",[3536,35614,8717],{"class":3546},[3536,35616,13920],{"class":3542},[3536,35618,3755],{"class":3546},[3536,35620,5423],{"class":3542},[3536,35622,24528],{"class":3546},[3536,35624,35625],{"class":3616},"PlaceChipProps",[3536,35627,4977],{"class":3546},[3536,35629,35630,35632,35634,35636,35638,35640,35642,35644,35646,35648],{"class":3538,"line":7214},[3536,35631,4770],{"class":3561},[3536,35633,3596],{"class":3546},[3536,35635,12082],{"class":3599},[3536,35637,3755],{"class":3546},[3536,35639,13743],{"class":3599},[3536,35641,3755],{"class":3546},[3536,35643,16927],{"class":3599},[3536,35645,3602],{"class":3546},[3536,35647,11986],{"class":3550},[3536,35649,7911],{"class":3546},[3536,35651,35652],{"class":3538,"line":7220},[3536,35653,4748],{"emptyLinePlaceholder":4747},[3536,35655,35656,35658],{"class":3538,"line":7226},[3536,35657,4982],{"class":4725},[3536,35659,4985],{"class":3546},[3536,35661,35662,35664],{"class":3538,"line":7244},[3536,35663,4990],{"class":4309},[3536,35665,8943],{"class":3616},[3536,35667,35668,35670,35672],{"class":3538,"line":7250},[3536,35669,34083],{"class":4315},[3536,35671,4319],{"class":3546},[3536,35673,15492],{"class":3557},[3536,35675,35676,35678,35680,35682,35685,35687,35689,35691,35693,35695,35697,35699,35701,35703,35705,35707,35709],{"class":3538,"line":7256},[3536,35677,34092],{"class":4315},[3536,35679,4319],{"class":3546},[3536,35681,4322],{"class":3561},[3536,35683,35684],{"class":3557},"`Місце ",[3536,35686,3562],{"class":3561},[3536,35688,13920],{"class":3542},[3536,35690,3547],{"class":3568},[3536,35692,5660],{"class":3542},[3536,35694,3574],{"class":3561},[3536,35696,3755],{"class":3557},[3536,35698,3562],{"class":3561},[3536,35700,13920],{"class":3542},[3536,35702,3547],{"class":3568},[3536,35704,18822],{"class":3542},[3536,35706,3574],{"class":3561},[3536,35708,3577],{"class":3557},[3536,35710,4476],{"class":3561},[3536,35712,35713,35715,35717,35719,35721,35723,35725,35727,35729,35731],{"class":3538,"line":7261},[3536,35714,34118],{"class":4315},[3536,35716,4319],{"class":3546},[3536,35718,4322],{"class":3561},[3536,35720,5039],{"class":3568},[3536,35722,5042],{"class":3561},[3536,35724,5032],{"class":3550},[3536,35726,34131],{"class":3568},[3536,35728,13920],{"class":3542},[3536,35730,3835],{"class":3568},[3536,35732,4476],{"class":3561},[3536,35734,35735,35737,35739,35741,35743,35745,35747,35749],{"class":3538,"line":7266},[3536,35736,14600],{"class":4315},[3536,35738,4319],{"class":3546},[3536,35740,4322],{"class":3561},[3536,35742,8717],{"class":3568},[3536,35744,34150],{"class":3542},[3536,35746,8722],{"class":3568},[3536,35748,5042],{"class":3561},[3536,35750,34157],{"class":3568},[3536,35752,35753,35755,35757,35760],{"class":3538,"line":7803},[3536,35754,14612],{"class":3542},[3536,35756,3547],{"class":3568},[3536,35758,35759],{"class":3542},"chip",[3536,35761,4390],{"class":3568},[3536,35763,35764],{"class":3538,"line":7813},[3536,35765,7136],{"class":3568},[3536,35767,35768,35770,35772,35774,35776],{"class":3538,"line":7823},[3536,35769,12635],{"class":3542},[3536,35771,12168],{"class":3542},[3536,35773,3547],{"class":3568},[3536,35775,15451],{"class":3542},[3536,35777,4390],{"class":3568},[3536,35779,35780,35782,35784,35786,35788],{"class":3538,"line":7833},[3536,35781,18693],{"class":3542},[3536,35783,12168],{"class":3542},[3536,35785,3547],{"class":3568},[3536,35787,12655],{"class":3542},[3536,35789,4390],{"class":3568},[3536,35791,35792,35794,35796,35798,35800],{"class":3538,"line":7843},[3536,35793,18706],{"class":3542},[3536,35795,18709],{"class":3542},[3536,35797,3547],{"class":3568},[3536,35799,14224],{"class":3542},[3536,35801,4390],{"class":3568},[3536,35803,35804,35806,35808,35810,35812],{"class":3538,"line":7848},[3536,35805,18720],{"class":3542},[3536,35807,14219],{"class":3542},[3536,35809,3547],{"class":3568},[3536,35811,14286],{"class":3542},[3536,35813,4390],{"class":3568},[3536,35815,35816,35819,35822,35824,35827,35829,35831],{"class":3538,"line":7854},[3536,35817,35818],{"class":3542},"          opacity:",[3536,35820,35821],{"class":3542}," pressed",[3536,35823,12129],{"class":3546},[3536,35825,35826],{"class":4897}," 0.9",[3536,35828,12135],{"class":3546},[3536,35830,9226],{"class":4897},[3536,35832,4390],{"class":3568},[3536,35834,35835],{"class":3538,"line":7859},[3536,35836,12662],{"class":3568},[3536,35838,35839,35841],{"class":3538,"line":7888},[3536,35840,14675],{"class":3568},[3536,35842,4476],{"class":3561},[3536,35844,35845],{"class":3538,"line":7914},[3536,35846,12703],{"class":4309},[3536,35848,35849,35851,35853,35855,35857,35859,35861,35863,35865,35867,35869,35871,35873,35875,35877,35879,35881,35883],{"class":3538,"line":7952},[3536,35850,5000],{"class":4309},[3536,35852,6704],{"class":3616},[3536,35854,14692],{"class":4315},[3536,35856,4319],{"class":3546},[3536,35858,14697],{"class":3557},[3536,35860,34412],{"class":4315},[3536,35862,4319],{"class":3546},[3536,35864,4322],{"class":3561},[3536,35866,5192],{"class":4897},[3536,35868,3574],{"class":3561},[3536,35870,8041],{"class":4315},[3536,35872,4319],{"class":3546},[3536,35874,4322],{"class":3561},[3536,35876,8496],{"class":3542},[3536,35878,3547],{"class":3568},[3536,35880,5660],{"class":3542},[3536,35882,3574],{"class":3561},[3536,35884,4352],{"class":4309},[3536,35886,35887,35889,35891,35893,35895],{"class":3538,"line":8796},[3536,35888,18815],{"class":3561},[3536,35890,13920],{"class":3542},[3536,35892,3547],{"class":3568},[3536,35894,5660],{"class":3542},[3536,35896,4476],{"class":3561},[3536,35898,35899,35901,35903],{"class":3538,"line":8838},[3536,35900,8215],{"class":4309},[3536,35902,6704],{"class":3616},[3536,35904,4352],{"class":4309},[3536,35906,35907,35909,35911,35913,35915,35917,35919,35921,35923,35925,35927,35929,35931,35933,35935,35937,35939,35941,35943,35945],{"class":3538,"line":8877},[3536,35908,5000],{"class":4309},[3536,35910,6704],{"class":3616},[3536,35912,14692],{"class":4315},[3536,35914,4319],{"class":3546},[3536,35916,15020],{"class":3557},[3536,35918,12792],{"class":4315},[3536,35920,4319],{"class":3546},[3536,35922,4322],{"class":3561},[3536,35924,12082],{"class":3542},[3536,35926,3547],{"class":3568},[3536,35928,12202],{"class":3542},[3536,35930,3574],{"class":3561},[3536,35932,8041],{"class":4315},[3536,35934,4319],{"class":3546},[3536,35936,4322],{"class":3561},[3536,35938,8496],{"class":3542},[3536,35940,3547],{"class":3568},[3536,35942,18822],{"class":3542},[3536,35944,3574],{"class":3561},[3536,35946,4352],{"class":4309},[3536,35948,35949,35951,35953,35955,35957],{"class":3538,"line":8918},[3536,35950,18815],{"class":3561},[3536,35952,13920],{"class":3542},[3536,35954,3547],{"class":3568},[3536,35956,18822],{"class":3542},[3536,35958,4476],{"class":3561},[3536,35960,35961,35963,35965],{"class":3538,"line":8928},[3536,35962,8215],{"class":4309},[3536,35964,6704],{"class":3616},[3536,35966,4352],{"class":4309},[3536,35968,35969,35971,35973,35975,35977,35979,35981,35983,35985,35987,35989,35991,35993,35995,35997,35999,36001,36003],{"class":3538,"line":8938},[3536,35970,5000],{"class":4309},[3536,35972,6704],{"class":3616},[3536,35974,14692],{"class":4315},[3536,35976,4319],{"class":3546},[3536,35978,15020],{"class":3557},[3536,35980,34412],{"class":4315},[3536,35982,4319],{"class":3546},[3536,35984,4322],{"class":3561},[3536,35986,19784],{"class":4897},[3536,35988,3574],{"class":3561},[3536,35990,8041],{"class":4315},[3536,35992,4319],{"class":3546},[3536,35994,4322],{"class":3561},[3536,35996,8496],{"class":3542},[3536,35998,3547],{"class":3568},[3536,36000,3789],{"class":3542},[3536,36002,3574],{"class":3561},[3536,36004,4352],{"class":4309},[3536,36006,36007,36009,36011,36013,36015],{"class":3538,"line":8946},[3536,36008,18815],{"class":3561},[3536,36010,13920],{"class":3542},[3536,36012,3547],{"class":3568},[3536,36014,3789],{"class":3542},[3536,36016,4476],{"class":3561},[3536,36018,36019,36021,36023],{"class":3538,"line":8965},[3536,36020,8215],{"class":4309},[3536,36022,6704],{"class":3616},[3536,36024,4352],{"class":4309},[3536,36026,36027,36029,36031],{"class":3538,"line":8993},[3536,36028,5063],{"class":4309},[3536,36030,8261],{"class":3616},[3536,36032,4352],{"class":4309},[3536,36034,36035],{"class":3538,"line":8999},[3536,36036,5072],{"class":3546},[3536,36038,36039],{"class":3538,"line":9032},[3536,36040,4476],{"class":3546},[3536,36042,36043],{"class":3538,"line":9041},[3536,36044,4748],{"emptyLinePlaceholder":4747},[3536,36046,36047,36049,36051,36054,36056,36058,36060,36063],{"class":3538,"line":9051},[3536,36048,4753],{"class":4725},[3536,36050,7692],{"class":3561},[3536,36052,36053],{"class":3599}," PlaceChip",[3536,36055,4874],{"class":3546},[3536,36057,33869],{"class":3550},[3536,36059,3554],{"class":3546},[3536,36061,36062],{"class":3542},"PlaceChipComponent",[3536,36064,3580],{"class":3546},[3536,36066,36067],{"class":3538,"line":9059},[3536,36068,4748],{"emptyLinePlaceholder":4747},[3536,36070,36071,36073,36075,36077,36079,36081,36083],{"class":3538,"line":9065},[3536,36072,3593],{"class":3561},[3536,36074,9201],{"class":3599},[3536,36076,4874],{"class":3546},[3536,36078,8266],{"class":3542},[3536,36080,3547],{"class":3546},[3536,36082,9210],{"class":3550},[3536,36084,4378],{"class":3546},[3536,36086,36087,36090],{"class":3538,"line":9070},[3536,36088,36089],{"class":3542},"  chip:",[3536,36091,4547],{"class":3546},[3536,36093,36094,36096,36098],{"class":3538,"line":9077},[3536,36095,18980],{"class":3542},[3536,36097,35285],{"class":4897},[3536,36099,4390],{"class":3546},[3536,36101,36102,36104,36106],{"class":3538,"line":9096},[3536,36103,9432],{"class":3542},[3536,36105,9226],{"class":4897},[3536,36107,4390],{"class":3546},[3536,36109,36110,36112,36115],{"class":3538,"line":9125},[3536,36111,30775],{"class":3542},[3536,36113,36114],{"class":4897}," 96",[3536,36116,4390],{"class":3546},[3536,36118,36119],{"class":3538,"line":9130},[3536,36120,4579],{"class":3546},[3536,36122,36123,36126],{"class":3538,"line":9163},[3536,36124,36125],{"class":3542},"  name:",[3536,36127,4547],{"class":3546},[3536,36129,36130,36132,36134],{"class":3538,"line":9172},[3536,36131,9281],{"class":3542},[3536,36133,9251],{"class":4897},[3536,36135,4390],{"class":3546},[3536,36137,36138],{"class":3538,"line":9181},[3536,36139,4579],{"class":3546},[3536,36141,36142,36145],{"class":3538,"line":9186},[3536,36143,36144],{"class":3542},"  city:",[3536,36146,4547],{"class":3546},[3536,36148,36149,36151,36153],{"class":3538,"line":9191},[3536,36150,9325],{"class":3542},[3536,36152,9573],{"class":4897},[3536,36154,4390],{"class":3546},[3536,36156,36157,36159,36161],{"class":3538,"line":9196},[3536,36158,9365],{"class":3542},[3536,36160,8112],{"class":3557},[3536,36162,4390],{"class":3546},[3536,36164,36165],{"class":3538,"line":9215},[3536,36166,4579],{"class":3546},[3536,36168,36169,36172],{"class":3538,"line":9237},[3536,36170,36171],{"class":3542},"  note:",[3536,36173,4547],{"class":3546},[3536,36175,36176,36178,36180],{"class":3538,"line":9245},[3536,36177,9325],{"class":3542},[3536,36179,9328],{"class":4897},[3536,36181,4390],{"class":3546},[3536,36183,36184],{"class":3538,"line":9256},[3536,36185,4579],{"class":3546},[3536,36187,36188],{"class":3538,"line":9267},[3536,36189,4417],{"class":3546},[3526,36191,36194],{"className":7615,"code":36192,"filename":36193,"language":7617,"meta":3531,"style":3531},"\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",[3533,36195,36196,36200,36205,36210,36214,36218,36229,36238,36248,36257,36266,36275,36285,36294,36304,36313,36323,36327,36338,36347,36356,36365,36374,36383,36391,36400,36409,36417,36427,36431,36442,36468,36472,36476,36497,36501,36526,36552],{"__ignoreMap":3531},[3536,36197,36198],{"class":3538,"line":3539},[3536,36199,12004],{"class":4573},[3536,36201,36202],{"class":3538,"line":4381},[3536,36203,36204],{"class":4573}," * Семантичні кольори: назва = роль на екрані, не «синій-500».\n",[3536,36206,36207],{"class":3538,"line":4393},[3536,36208,36209],{"class":4573}," * light \u002F dark — дві палітри з однаковими ключами.\n",[3536,36211,36212],{"class":3538,"line":4414},[3536,36213,12034],{"class":4573},[3536,36215,36216],{"class":3538,"line":4470},[3536,36217,4748],{"emptyLinePlaceholder":4747},[3536,36219,36220,36222,36224,36227],{"class":3538,"line":4479},[3536,36221,4753],{"class":4725},[3536,36223,7692],{"class":3561},[3536,36225,36226],{"class":3599}," lightColors",[3536,36228,7632],{"class":3546},[3536,36230,36231,36234,36236],{"class":3538,"line":4484},[3536,36232,36233],{"class":3542},"  background:",[3536,36235,8079],{"class":3557},[3536,36237,4390],{"class":3546},[3536,36239,36240,36243,36246],{"class":3538,"line":4490},[3536,36241,36242],{"class":3542},"  surface:",[3536,36244,36245],{"class":3557}," '#FFFFFF'",[3536,36247,4390],{"class":3546},[3536,36249,36250,36253,36255],{"class":3538,"line":7163},[3536,36251,36252],{"class":3542},"  text:",[3536,36254,8104],{"class":3557},[3536,36256,4390],{"class":3546},[3536,36258,36259,36262,36264],{"class":3538,"line":7171},[3536,36260,36261],{"class":3542},"  textSecondary:",[3536,36263,9273],{"class":3557},[3536,36265,4390],{"class":3546},[3536,36267,36268,36271,36273],{"class":3538,"line":7177},[3536,36269,36270],{"class":3542},"  primary:",[3536,36272,8089],{"class":3557},[3536,36274,4390],{"class":3546},[3536,36276,36277,36280,36283],{"class":3538,"line":7190},[3536,36278,36279],{"class":3542},"  primaryPressed:",[3536,36281,36282],{"class":3557}," '#1D4ED8'",[3536,36284,4390],{"class":3546},[3536,36286,36287,36290,36292],{"class":3538,"line":7203},[3536,36288,36289],{"class":3542},"  border:",[3536,36291,9445],{"class":3557},[3536,36293,4390],{"class":3546},[3536,36295,36296,36299,36302],{"class":3538,"line":7214},[3536,36297,36298],{"class":3542},"  danger:",[3536,36300,36301],{"class":3557}," '#DC2626'",[3536,36303,4390],{"class":3546},[3536,36305,36306,36309,36311],{"class":3538,"line":7220},[3536,36307,36308],{"class":3542},"  onPrimary:",[3536,36310,36245],{"class":3557},[3536,36312,4390],{"class":3546},[3536,36314,36315,36317,36319,36321],{"class":3538,"line":7226},[3536,36316,13433],{"class":3546},[3536,36318,23043],{"class":4725},[3536,36320,7692],{"class":3561},[3536,36322,4742],{"class":3546},[3536,36324,36325],{"class":3538,"line":7244},[3536,36326,4748],{"emptyLinePlaceholder":4747},[3536,36328,36329,36331,36333,36336],{"class":3538,"line":7250},[3536,36330,4753],{"class":4725},[3536,36332,7692],{"class":3561},[3536,36334,36335],{"class":3599}," darkColors",[3536,36337,7632],{"class":3546},[3536,36339,36340,36342,36345],{"class":3538,"line":7256},[3536,36341,36233],{"class":3542},[3536,36343,36344],{"class":3557}," '#000000'",[3536,36346,4390],{"class":3546},[3536,36348,36349,36351,36354],{"class":3538,"line":7261},[3536,36350,36242],{"class":3542},[3536,36352,36353],{"class":3557}," '#1C1C1E'",[3536,36355,4390],{"class":3546},[3536,36357,36358,36360,36363],{"class":3538,"line":7266},[3536,36359,36252],{"class":3542},[3536,36361,36362],{"class":3557}," '#F5F5F7'",[3536,36364,4390],{"class":3546},[3536,36366,36367,36369,36372],{"class":3538,"line":7803},[3536,36368,36261],{"class":3542},[3536,36370,36371],{"class":3557}," '#A1A1AA'",[3536,36373,4390],{"class":3546},[3536,36375,36376,36378,36381],{"class":3538,"line":7813},[3536,36377,36270],{"class":3542},[3536,36379,36380],{"class":3557}," '#3B82F6'",[3536,36382,4390],{"class":3546},[3536,36384,36385,36387,36389],{"class":3538,"line":7823},[3536,36386,36279],{"class":3542},[3536,36388,8089],{"class":3557},[3536,36390,4390],{"class":3546},[3536,36392,36393,36395,36398],{"class":3538,"line":7833},[3536,36394,36289],{"class":3542},[3536,36396,36397],{"class":3557}," '#3A3A3C'",[3536,36399,4390],{"class":3546},[3536,36401,36402,36404,36407],{"class":3538,"line":7843},[3536,36403,36298],{"class":3542},[3536,36405,36406],{"class":3557}," '#F87171'",[3536,36408,4390],{"class":3546},[3536,36410,36411,36413,36415],{"class":3538,"line":7848},[3536,36412,36308],{"class":3542},[3536,36414,36245],{"class":3557},[3536,36416,4390],{"class":3546},[3536,36418,36419,36421,36423,36425],{"class":3538,"line":7854},[3536,36420,13433],{"class":3546},[3536,36422,23043],{"class":4725},[3536,36424,7692],{"class":3561},[3536,36426,4742],{"class":3546},[3536,36428,36429],{"class":3538,"line":7859},[3536,36430,4748],{"emptyLinePlaceholder":4747},[3536,36432,36433,36435,36437,36440],{"class":3538,"line":7888},[3536,36434,4753],{"class":4725},[3536,36436,7626],{"class":3561},[3536,36438,36439],{"class":3616}," ColorTokens",[3536,36441,7632],{"class":3546},[3536,36443,36444,36447,36450,36453,36456,36459,36461,36464,36466],{"class":3538,"line":7914},[3536,36445,36446],{"class":3546},"  [",[3536,36448,36449],{"class":3616},"K",[3536,36451,36452],{"class":3561}," in",[3536,36454,36455],{"class":3561}," keyof",[3536,36457,36458],{"class":3561}," typeof",[3536,36460,36226],{"class":3542},[3536,36462,36463],{"class":3546},"]: ",[3536,36465,3617],{"class":3616},[3536,36467,4742],{"class":3546},[3536,36469,36470],{"class":3538,"line":7952},[3536,36471,7681],{"class":3546},[3536,36473,36474],{"class":3538,"line":8796},[3536,36475,4748],{"emptyLinePlaceholder":4747},[3536,36477,36478,36480,36482,36485,36487,36490,36492,36495],{"class":3538,"line":8838},[3536,36479,4753],{"class":4725},[3536,36481,7626],{"class":3561},[3536,36483,36484],{"class":3616}," ColorSchemeName",[3536,36486,4874],{"class":3546},[3536,36488,36489],{"class":3557},"'light'",[3536,36491,4859],{"class":3546},[3536,36493,36494],{"class":3557},"'dark'",[3536,36496,4742],{"class":3546},[3536,36498,36499],{"class":3538,"line":8877},[3536,36500,4748],{"emptyLinePlaceholder":4747},[3536,36502,36503,36505,36507,36510,36512,36514,36516,36519,36521,36524],{"class":3538,"line":8918},[3536,36504,4753],{"class":4725},[3536,36506,4759],{"class":3561},[3536,36508,36509],{"class":3550}," colorsForScheme",[3536,36511,3554],{"class":3546},[3536,36513,5564],{"class":3542},[3536,36515,3613],{"class":3546},[3536,36517,36518],{"class":3616},"ColorSchemeName",[3536,36520,7877],{"class":3546},[3536,36522,36523],{"class":3616},"ColorTokens",[3536,36525,4547],{"class":3546},[3536,36527,36528,36530,36533,36535,36537,36540,36543,36546,36549],{"class":3538,"line":8928},[3536,36529,4982],{"class":4725},[3536,36531,36532],{"class":3542}," scheme",[3536,36534,7944],{"class":3546},[3536,36536,36494],{"class":3557},[3536,36538,36539],{"class":3546}," ? { ...",[3536,36541,36542],{"class":3542},"darkColors",[3536,36544,36545],{"class":3546}," } : { ...",[3536,36547,36548],{"class":3542},"lightColors",[3536,36550,36551],{"class":3546}," };\n",[3536,36553,36554],{"class":3538,"line":8938},[3536,36555,4476],{"class":3546},[3526,36557,36560],{"className":7615,"code":36558,"filename":36559,"language":7617,"meta":3531,"style":3531},"\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",[3533,36561,36562,36566,36571,36576,36581,36585,36589,36600,36609,36618,36627,36636,36645,36655,36659,36669,36677,36685,36693,36703,36707,36718,36726,36734,36742,36750,36760,36764,36775,36786,36791,36798,36807,36816,36825,36834,36843,36852,36861,36870,36879,36883,36892,36899,36906,36916,36920],{"__ignoreMap":3531},[3536,36563,36564],{"class":3538,"line":3539},[3536,36565,12004],{"class":4573},[3536,36567,36568],{"class":3538,"line":4381},[3536,36569,36570],{"class":4573}," * Токени, що **не** залежать від light\u002Fdark:\n",[3536,36572,36573],{"class":3538,"line":4393},[3536,36574,36575],{"class":4573}," * відступи, радіуси, розміри шрифтів.\n",[3536,36577,36578],{"class":3538,"line":4414},[3536,36579,36580],{"class":4573}," * Кольори — у colors.ts + ThemeProvider.\n",[3536,36582,36583],{"class":3538,"line":4470},[3536,36584,12034],{"class":4573},[3536,36586,36587],{"class":3538,"line":4479},[3536,36588,4748],{"emptyLinePlaceholder":4747},[3536,36590,36591,36593,36595,36598],{"class":3538,"line":4484},[3536,36592,4753],{"class":4725},[3536,36594,7692],{"class":3561},[3536,36596,36597],{"class":3599}," space",[3536,36599,7632],{"class":3546},[3536,36601,36602,36605,36607],{"class":3538,"line":4490},[3536,36603,36604],{"class":3542},"  xs:",[3536,36606,9573],{"class":4897},[3536,36608,4390],{"class":3546},[3536,36610,36611,36614,36616],{"class":3538,"line":7163},[3536,36612,36613],{"class":3542},"  sm:",[3536,36615,9262],{"class":4897},[3536,36617,4390],{"class":3546},[3536,36619,36620,36623,36625],{"class":3538,"line":7171},[3536,36621,36622],{"class":3542},"  md:",[3536,36624,9251],{"class":4897},[3536,36626,4390],{"class":3546},[3536,36628,36629,36632,36634],{"class":3538,"line":7177},[3536,36630,36631],{"class":3542},"  lg:",[3536,36633,9395],{"class":4897},[3536,36635,4390],{"class":3546},[3536,36637,36638,36641,36643],{"class":3538,"line":7190},[3536,36639,36640],{"class":3542},"  xl:",[3536,36642,20218],{"class":4897},[3536,36644,4390],{"class":3546},[3536,36646,36647,36649,36651,36653],{"class":3538,"line":7203},[3536,36648,13433],{"class":3546},[3536,36650,23043],{"class":4725},[3536,36652,7692],{"class":3561},[3536,36654,4742],{"class":3546},[3536,36656,36657],{"class":3538,"line":7214},[3536,36658,4748],{"emptyLinePlaceholder":4747},[3536,36660,36661,36663,36665,36667],{"class":3538,"line":7220},[3536,36662,4753],{"class":4725},[3536,36664,7692],{"class":3561},[3536,36666,18709],{"class":3599},[3536,36668,7632],{"class":3546},[3536,36670,36671,36673,36675],{"class":3538,"line":7226},[3536,36672,36613],{"class":3542},[3536,36674,9262],{"class":4897},[3536,36676,4390],{"class":3546},[3536,36678,36679,36681,36683],{"class":3538,"line":7244},[3536,36680,36622],{"class":3542},[3536,36682,9357],{"class":4897},[3536,36684,4390],{"class":3546},[3536,36686,36687,36689,36691],{"class":3538,"line":7250},[3536,36688,36631],{"class":3542},[3536,36690,9251],{"class":4897},[3536,36692,4390],{"class":3546},[3536,36694,36695,36697,36699,36701],{"class":3538,"line":7256},[3536,36696,13433],{"class":3546},[3536,36698,23043],{"class":4725},[3536,36700,7692],{"class":3561},[3536,36702,4742],{"class":3546},[3536,36704,36705],{"class":3538,"line":7261},[3536,36706,4748],{"emptyLinePlaceholder":4747},[3536,36708,36709,36711,36713,36716],{"class":3538,"line":7266},[3536,36710,4753],{"class":4725},[3536,36712,7692],{"class":3561},[3536,36714,36715],{"class":3599}," fontSize",[3536,36717,7632],{"class":3546},[3536,36719,36720,36722,36724],{"class":3538,"line":7803},[3536,36721,36613],{"class":3542},[3536,36723,9456],{"class":4897},[3536,36725,4390],{"class":3546},[3536,36727,36728,36730,36732],{"class":3538,"line":7813},[3536,36729,36622],{"class":3542},[3536,36731,9251],{"class":4897},[3536,36733,4390],{"class":3546},[3536,36735,36736,36738,36740],{"class":3538,"line":7823},[3536,36737,36631],{"class":3542},[3536,36739,9515],{"class":4897},[3536,36741,4390],{"class":3546},[3536,36743,36744,36746,36748],{"class":3538,"line":7833},[3536,36745,36640],{"class":3542},[3536,36747,10780],{"class":4897},[3536,36749,4390],{"class":3546},[3536,36751,36752,36754,36756,36758],{"class":3538,"line":7843},[3536,36753,13433],{"class":3546},[3536,36755,23043],{"class":4725},[3536,36757,7692],{"class":3561},[3536,36759,4742],{"class":3546},[3536,36761,36762],{"class":3538,"line":7848},[3536,36763,4748],{"emptyLinePlaceholder":4747},[3536,36765,36766,36769,36772],{"class":3538,"line":7854},[3536,36767,36768],{"class":4573},"\u002F** ",[3536,36770,36771],{"class":3561},"@deprecated",[3536,36773,36774],{"class":4573}," Використовуйте useTheme() для кольорів; space\u002Fradius\u002FfontSize — нижче. *\u002F\n",[3536,36776,36777,36779,36781,36784],{"class":3538,"line":7859},[3536,36778,4753],{"class":4725},[3536,36780,7692],{"class":3561},[3536,36782,36783],{"class":3599}," tokens",[3536,36785,7632],{"class":3546},[3536,36787,36788],{"class":3538,"line":7888},[3536,36789,36790],{"class":4573},"  \u002F** Світла палітра (fallback, якщо хтось імпортує tokens.colors без теми). *\u002F\n",[3536,36792,36793,36796],{"class":3538,"line":7914},[3536,36794,36795],{"class":3542},"  colors:",[3536,36797,4547],{"class":3546},[3536,36799,36800,36803,36805],{"class":3538,"line":7952},[3536,36801,36802],{"class":3542},"    background:",[3536,36804,8079],{"class":3557},[3536,36806,4390],{"class":3546},[3536,36808,36809,36812,36814],{"class":3538,"line":8796},[3536,36810,36811],{"class":3542},"    surface:",[3536,36813,36245],{"class":3557},[3536,36815,4390],{"class":3546},[3536,36817,36818,36821,36823],{"class":3538,"line":8838},[3536,36819,36820],{"class":3542},"    text:",[3536,36822,8104],{"class":3557},[3536,36824,4390],{"class":3546},[3536,36826,36827,36830,36832],{"class":3538,"line":8877},[3536,36828,36829],{"class":3542},"    textSecondary:",[3536,36831,9273],{"class":3557},[3536,36833,4390],{"class":3546},[3536,36835,36836,36839,36841],{"class":3538,"line":8918},[3536,36837,36838],{"class":3542},"    primary:",[3536,36840,8089],{"class":3557},[3536,36842,4390],{"class":3546},[3536,36844,36845,36848,36850],{"class":3538,"line":8928},[3536,36846,36847],{"class":3542},"    primaryPressed:",[3536,36849,36282],{"class":3557},[3536,36851,4390],{"class":3546},[3536,36853,36854,36857,36859],{"class":3538,"line":8938},[3536,36855,36856],{"class":3542},"    border:",[3536,36858,9445],{"class":3557},[3536,36860,4390],{"class":3546},[3536,36862,36863,36866,36868],{"class":3538,"line":8946},[3536,36864,36865],{"class":3542},"    danger:",[3536,36867,36301],{"class":3557},[3536,36869,4390],{"class":3546},[3536,36871,36872,36875,36877],{"class":3538,"line":8965},[3536,36873,36874],{"class":3542},"    onPrimary:",[3536,36876,36245],{"class":3557},[3536,36878,4390],{"class":3546},[3536,36880,36881],{"class":3538,"line":8993},[3536,36882,4579],{"class":3546},[3536,36884,36885,36888,36890],{"class":3538,"line":8999},[3536,36886,36887],{"class":3542},"  spacing:",[3536,36889,36597],{"class":3542},[3536,36891,4390],{"class":3546},[3536,36893,36894,36897],{"class":3538,"line":9032},[3536,36895,36896],{"class":3542},"  radius",[3536,36898,4390],{"class":3546},[3536,36900,36901,36904],{"class":3538,"line":9041},[3536,36902,36903],{"class":3542},"  fontSize",[3536,36905,4390],{"class":3546},[3536,36907,36908,36910,36912,36914],{"class":3538,"line":9051},[3536,36909,13433],{"class":3546},[3536,36911,23043],{"class":4725},[3536,36913,7692],{"class":3561},[3536,36915,4742],{"class":3546},[3536,36917,36918],{"class":3538,"line":9059},[3536,36919,4748],{"emptyLinePlaceholder":4747},[3536,36921,36922,36924,36926,36929,36931,36933,36935],{"class":3538,"line":9065},[3536,36923,4753],{"class":4725},[3536,36925,7626],{"class":3561},[3536,36927,36928],{"class":3616}," Tokens",[3536,36930,4874],{"class":3546},[3536,36932,23066],{"class":3561},[3536,36934,36783],{"class":3542},[3536,36936,4742],{"class":3546},[3526,36938,36941],{"className":3528,"code":36939,"filename":36940,"language":3530,"meta":3531,"style":3531},"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",[3533,36942,36943,36949,36955,36961,36967,36973,36979,36985,36995,37017,37021,37027,37034,37042,37050,37061,37088,37092,37097,37116,37120,37129,37134,37145,37156,37177,37188,37201,37213,37225,37229,37233,37259,37263,37272,37282,37301,37309,37332,37340,37344,37366,37370,37374,37383,37393,37398,37409,37413,37417,37428,37434,37444,37453,37467,37483,37499,37503,37527,37538,37542,37546,37568,37595,37599,37616,37625,37632,37639,37646,37653,37662,37669,37676,37680,37700,37704,37708,37714,37745,37749,37753,37757,37772,37789,37799,37814,37818,37826],{"__ignoreMap":3531},[3536,36944,36945,36947],{"class":3538,"line":3539},[3536,36946,4726],{"class":4725},[3536,36948,4547],{"class":3546},[3536,36950,36951,36953],{"class":3538,"line":4381},[3536,36952,24254],{"class":3542},[3536,36954,4390],{"class":3546},[3536,36956,36957,36959],{"class":3538,"line":4393},[3536,36958,24261],{"class":3542},[3536,36960,4390],{"class":3546},[3536,36962,36963,36965],{"class":3538,"line":4414},[3536,36964,24268],{"class":3542},[3536,36966,4390],{"class":3546},[3536,36968,36969,36971],{"class":3538,"line":4470},[3536,36970,24275],{"class":3542},[3536,36972,4390],{"class":3546},[3536,36974,36975,36977],{"class":3538,"line":4479},[3536,36976,24282],{"class":3542},[3536,36978,4390],{"class":3546},[3536,36980,36981,36983],{"class":3538,"line":4484},[3536,36982,24289],{"class":3542},[3536,36984,4390],{"class":3546},[3536,36986,36987,36989,36991,36993],{"class":3538,"line":4490},[3536,36988,13433],{"class":3546},[3536,36990,4736],{"class":4725},[3536,36992,13385],{"class":3557},[3536,36994,4742],{"class":3546},[3536,36996,36997,36999,37001,37004,37006,37009,37011,37013,37015],{"class":3538,"line":7163},[3536,36998,4726],{"class":4725},[3536,37000,3596],{"class":3546},[3536,37002,37003],{"class":3542},"useColorScheme",[3536,37005,5849],{"class":4725},[3536,37007,37008],{"class":3542}," useSystemColorScheme",[3536,37010,4733],{"class":3546},[3536,37012,4736],{"class":4725},[3536,37014,8281],{"class":3557},[3536,37016,4742],{"class":3546},[3536,37018,37019],{"class":3538,"line":7171},[3536,37020,4748],{"emptyLinePlaceholder":4747},[3536,37022,37023,37025],{"class":3538,"line":7177},[3536,37024,4726],{"class":4725},[3536,37026,4547],{"class":3546},[3536,37028,37029,37032],{"class":3538,"line":7190},[3536,37030,37031],{"class":3542},"  colorsForScheme",[3536,37033,4390],{"class":3546},[3536,37035,37036,37038,37040],{"class":3538,"line":7203},[3536,37037,13516],{"class":4725},[3536,37039,36484],{"class":3542},[3536,37041,4390],{"class":3546},[3536,37043,37044,37046,37048],{"class":3538,"line":7214},[3536,37045,13516],{"class":4725},[3536,37047,36439],{"class":3542},[3536,37049,4390],{"class":3546},[3536,37051,37052,37054,37056,37059],{"class":3538,"line":7220},[3536,37053,13433],{"class":3546},[3536,37055,4736],{"class":4725},[3536,37057,37058],{"class":3557}," '.\u002Fcolors'",[3536,37060,4742],{"class":3546},[3536,37062,37063,37065,37067,37070,37072,37074,37076,37079,37081,37083,37086],{"class":3538,"line":7226},[3536,37064,4726],{"class":4725},[3536,37066,3596],{"class":3546},[3536,37068,37069],{"class":3542},"fontSize",[3536,37071,3755],{"class":3546},[3536,37073,16927],{"class":3542},[3536,37075,3755],{"class":3546},[3536,37077,37078],{"class":3542},"space",[3536,37080,4733],{"class":3546},[3536,37082,4736],{"class":4725},[3536,37084,37085],{"class":3557}," '.\u002Ftokens'",[3536,37087,4742],{"class":3546},[3536,37089,37090],{"class":3538,"line":7244},[3536,37091,4748],{"emptyLinePlaceholder":4747},[3536,37093,37094],{"class":3538,"line":7250},[3536,37095,37096],{"class":4573},"\u002F** Що обрав користувач: слідувати системі або примусово light\u002Fdark. *\u002F\n",[3536,37098,37099,37101,37103,37105,37107,37110,37112,37114],{"class":3538,"line":7256},[3536,37100,4753],{"class":4725},[3536,37102,7626],{"class":3561},[3536,37104,13556],{"class":3616},[3536,37106,4874],{"class":3546},[3536,37108,37109],{"class":3557},"'system'",[3536,37111,4859],{"class":3546},[3536,37113,36518],{"class":3616},[3536,37115,4742],{"class":3546},[3536,37117,37118],{"class":3538,"line":7261},[3536,37119,4748],{"emptyLinePlaceholder":4747},[3536,37121,37122,37124,37127],{"class":3538,"line":7266},[3536,37123,13553],{"class":3561},[3536,37125,37126],{"class":3616}," ThemeContextValue",[3536,37128,7632],{"class":3546},[3536,37130,37131],{"class":3538,"line":7803},[3536,37132,37133],{"class":4573},"  \u002F** Фактична схема, якою малюємо UI. *\u002F\n",[3536,37135,37136,37139,37141,37143],{"class":3538,"line":7813},[3536,37137,37138],{"class":3542},"  scheme",[3536,37140,3613],{"class":3546},[3536,37142,36518],{"class":3616},[3536,37144,4742],{"class":3546},[3536,37146,37147,37150,37152,37154],{"class":3538,"line":7823},[3536,37148,37149],{"class":3542},"  preference",[3536,37151,3613],{"class":3546},[3536,37153,13611],{"class":3616},[3536,37155,4742],{"class":3546},[3536,37157,37158,37161,37163,37165,37167,37169,37171,37173,37175],{"class":3538,"line":7833},[3536,37159,37160],{"class":3550},"  setPreference",[3536,37162,24378],{"class":3546},[3536,37164,24824],{"class":3542},[3536,37166,3613],{"class":3546},[3536,37168,13611],{"class":3616},[3536,37170,7932],{"class":3546},[3536,37172,5042],{"class":3561},[3536,37174,24421],{"class":3616},[3536,37176,4742],{"class":3546},[3536,37178,37179,37182,37184,37186],{"class":3538,"line":7843},[3536,37180,37181],{"class":3542},"  colors",[3536,37183,3613],{"class":3546},[3536,37185,36523],{"class":3616},[3536,37187,4742],{"class":3546},[3536,37189,37190,37193,37195,37197,37199],{"class":3538,"line":7848},[3536,37191,37192],{"class":3542},"  spacing",[3536,37194,3613],{"class":3546},[3536,37196,23066],{"class":3561},[3536,37198,36597],{"class":3542},[3536,37200,4742],{"class":3546},[3536,37202,37203,37205,37207,37209,37211],{"class":3538,"line":7854},[3536,37204,36896],{"class":3542},[3536,37206,3613],{"class":3546},[3536,37208,23066],{"class":3561},[3536,37210,18709],{"class":3542},[3536,37212,4742],{"class":3546},[3536,37214,37215,37217,37219,37221,37223],{"class":3538,"line":7859},[3536,37216,36903],{"class":3542},[3536,37218,3613],{"class":3546},[3536,37220,23066],{"class":3561},[3536,37222,36715],{"class":3542},[3536,37224,4742],{"class":3546},[3536,37226,37227],{"class":3538,"line":7888},[3536,37228,7681],{"class":3546},[3536,37230,37231],{"class":3538,"line":7914},[3536,37232,4748],{"emptyLinePlaceholder":4747},[3536,37234,37235,37237,37240,37242,37244,37246,37249,37251,37253,37255,37257],{"class":3538,"line":7952},[3536,37236,3593],{"class":3561},[3536,37238,37239],{"class":3599}," ThemeContext",[3536,37241,4874],{"class":3546},[3536,37243,24462],{"class":3550},[3536,37245,4310],{"class":3546},[3536,37247,37248],{"class":3616},"ThemeContextValue",[3536,37250,4859],{"class":3546},[3536,37252,6138],{"class":3616},[3536,37254,24474],{"class":3546},[3536,37256,6138],{"class":3561},[3536,37258,3580],{"class":3546},[3536,37260,37261],{"class":3538,"line":8796},[3536,37262,4748],{"emptyLinePlaceholder":4747},[3536,37264,37265,37267,37270],{"class":3538,"line":8838},[3536,37266,12068],{"class":3561},[3536,37268,37269],{"class":3550}," resolveScheme",[3536,37271,13834],{"class":3546},[3536,37273,37274,37276,37278,37280],{"class":3538,"line":8877},[3536,37275,37149],{"class":3542},[3536,37277,3613],{"class":3546},[3536,37279,13611],{"class":3616},[3536,37281,4390],{"class":3546},[3536,37283,37284,37287,37289,37291,37293,37295,37297,37299],{"class":3538,"line":8918},[3536,37285,37286],{"class":3542},"  system",[3536,37288,3613],{"class":3546},[3536,37290,3617],{"class":3616},[3536,37292,4859],{"class":3546},[3536,37294,6138],{"class":3616},[3536,37296,4859],{"class":3546},[3536,37298,4813],{"class":3616},[3536,37300,4390],{"class":3546},[3536,37302,37303,37305,37307],{"class":3538,"line":8928},[3536,37304,7877],{"class":3546},[3536,37306,36518],{"class":3616},[3536,37308,4547],{"class":3546},[3536,37310,37311,37313,37315,37317,37319,37321,37324,37326,37328,37330],{"class":3538,"line":8938},[3536,37312,9993],{"class":4725},[3536,37314,5365],{"class":3546},[3536,37316,13748],{"class":3542},[3536,37318,7944],{"class":3546},[3536,37320,36489],{"class":3557},[3536,37322,37323],{"class":3546}," || ",[3536,37325,13748],{"class":3542},[3536,37327,7944],{"class":3546},[3536,37329,36494],{"class":3557},[3536,37331,4977],{"class":3546},[3536,37333,37334,37336,37338],{"class":3538,"line":8946},[3536,37335,10005],{"class":4725},[3536,37337,15322],{"class":3542},[3536,37339,4742],{"class":3546},[3536,37341,37342],{"class":3538,"line":8965},[3536,37343,5599],{"class":3546},[3536,37345,37346,37348,37351,37353,37355,37357,37359,37362,37364],{"class":3538,"line":8993},[3536,37347,4982],{"class":4725},[3536,37349,37350],{"class":3542}," system",[3536,37352,7944],{"class":3546},[3536,37354,36494],{"class":3557},[3536,37356,9896],{"class":3546},[3536,37358,36494],{"class":3557},[3536,37360,37361],{"class":3546}," : ",[3536,37363,36489],{"class":3557},[3536,37365,4742],{"class":3546},[3536,37367,37368],{"class":3538,"line":8999},[3536,37369,4476],{"class":3546},[3536,37371,37372],{"class":3538,"line":9032},[3536,37373,4748],{"emptyLinePlaceholder":4747},[3536,37375,37376,37378,37381],{"class":3538,"line":9041},[3536,37377,13553],{"class":3561},[3536,37379,37380],{"class":3616}," ThemeProviderProps",[3536,37382,7632],{"class":3546},[3536,37384,37385,37387,37389,37391],{"class":3538,"line":9051},[3536,37386,24496],{"class":3542},[3536,37388,3613],{"class":3546},[3536,37390,24501],{"class":3616},[3536,37392,4742],{"class":3546},[3536,37394,37395],{"class":3538,"line":9059},[3536,37396,37397],{"class":4573},"  \u002F** Початкова перевага (за замовчуванням — як у системі). *\u002F\n",[3536,37399,37400,37403,37405,37407],{"class":3538,"line":9065},[3536,37401,37402],{"class":3542},"  initialPreference",[3536,37404,22858],{"class":3546},[3536,37406,13611],{"class":3616},[3536,37408,4742],{"class":3546},[3536,37410,37411],{"class":3538,"line":9070},[3536,37412,7681],{"class":3546},[3536,37414,37415],{"class":3538,"line":9077},[3536,37416,4748],{"emptyLinePlaceholder":4747},[3536,37418,37419,37421,37423,37426],{"class":3538,"line":9096},[3536,37420,4753],{"class":4725},[3536,37422,4759],{"class":3561},[3536,37424,37425],{"class":3550}," ThemeProvider",[3536,37427,4378],{"class":3546},[3536,37429,37430,37432],{"class":3538,"line":9125},[3536,37431,24496],{"class":3542},[3536,37433,4390],{"class":3546},[3536,37435,37436,37438,37440,37442],{"class":3538,"line":9130},[3536,37437,37402],{"class":3542},[3536,37439,4874],{"class":3546},[3536,37441,37109],{"class":3557},[3536,37443,4390],{"class":3546},[3536,37445,37446,37448,37451],{"class":3538,"line":9163},[3536,37447,27019],{"class":3546},[3536,37449,37450],{"class":3616},"ThemeProviderProps",[3536,37452,4977],{"class":3546},[3536,37454,37455,37457,37460,37462,37465],{"class":3538,"line":9172},[3536,37456,4770],{"class":3561},[3536,37458,37459],{"class":3599}," systemScheme",[3536,37461,4874],{"class":3546},[3536,37463,37464],{"class":3550},"useSystemColorScheme",[3536,37466,7911],{"class":3546},[3536,37468,37469,37471,37473,37475,37477,37480],{"class":3538,"line":9181},[3536,37470,4770],{"class":3561},[3536,37472,13770],{"class":3546},[3536,37474,13748],{"class":3599},[3536,37476,3755],{"class":3546},[3536,37478,37479],{"class":3599},"setPreferenceState",[3536,37481,37482],{"class":3546},"] =\n",[3536,37484,37485,37488,37490,37492,37494,37497],{"class":3538,"line":9186},[3536,37486,37487],{"class":3550},"    useState",[3536,37489,4310],{"class":3546},[3536,37491,13611],{"class":3616},[3536,37493,24474],{"class":3546},[3536,37495,37496],{"class":3542},"initialPreference",[3536,37498,3580],{"class":3546},[3536,37500,37501],{"class":3538,"line":9191},[3536,37502,4748],{"emptyLinePlaceholder":4747},[3536,37504,37505,37507,37509,37511,37513,37515,37517,37519,37521,37523,37525],{"class":3538,"line":9196},[3536,37506,4770],{"class":3561},[3536,37508,15383],{"class":3599},[3536,37510,4874],{"class":3546},[3536,37512,13373],{"class":3550},[3536,37514,7926],{"class":3546},[3536,37516,24824],{"class":3542},[3536,37518,3613],{"class":3546},[3536,37520,13611],{"class":3616},[3536,37522,7932],{"class":3546},[3536,37524,5042],{"class":3561},[3536,37526,4547],{"class":3546},[3536,37528,37529,37532,37534,37536],{"class":3538,"line":9215},[3536,37530,37531],{"class":3550},"    setPreferenceState",[3536,37533,3554],{"class":3546},[3536,37535,24824],{"class":3542},[3536,37537,3580],{"class":3546},[3536,37539,37540],{"class":3538,"line":9237},[3536,37541,24697],{"class":3546},[3536,37543,37544],{"class":3538,"line":9245},[3536,37545,4748],{"emptyLinePlaceholder":4747},[3536,37547,37548,37550,37552,37554,37557,37559,37561,37563,37566],{"class":3538,"line":9256},[3536,37549,4770],{"class":3561},[3536,37551,36532],{"class":3599},[3536,37553,4874],{"class":3546},[3536,37555,37556],{"class":3550},"resolveScheme",[3536,37558,3554],{"class":3546},[3536,37560,13748],{"class":3542},[3536,37562,3755],{"class":3546},[3536,37564,37565],{"class":3542},"systemScheme",[3536,37567,3580],{"class":3546},[3536,37569,37570,37572,37574,37576,37578,37580,37582,37584,37586,37588,37591,37593],{"class":3538,"line":9267},[3536,37571,4770],{"class":3561},[3536,37573,12168],{"class":3599},[3536,37575,4874],{"class":3546},[3536,37577,16551],{"class":3550},[3536,37579,13995],{"class":3546},[3536,37581,5042],{"class":3561},[3536,37583,36509],{"class":3550},[3536,37585,3554],{"class":3546},[3536,37587,5564],{"class":3542},[3536,37589,37590],{"class":3546},"), [",[3536,37592,5564],{"class":3542},[3536,37594,14064],{"class":3546},[3536,37596,37597],{"class":3538,"line":9278},[3536,37598,4748],{"emptyLinePlaceholder":4747},[3536,37600,37601,37603,37605,37607,37609,37611,37613],{"class":3538,"line":9289},[3536,37602,4770],{"class":3561},[3536,37604,24744],{"class":3599},[3536,37606,4874],{"class":3546},[3536,37608,16551],{"class":3550},[3536,37610,4310],{"class":3546},[3536,37612,37248],{"class":3616},[3536,37614,37615],{"class":3546},">(\n",[3536,37617,37618,37620,37622],{"class":3538,"line":9300},[3536,37619,16880],{"class":3546},[3536,37621,5042],{"class":3561},[3536,37623,37624],{"class":3546}," ({\n",[3536,37626,37627,37630],{"class":3538,"line":9305},[3536,37628,37629],{"class":3542},"      scheme",[3536,37631,4390],{"class":3546},[3536,37633,37634,37637],{"class":3538,"line":9313},[3536,37635,37636],{"class":3542},"      preference",[3536,37638,4390],{"class":3546},[3536,37640,37641,37644],{"class":3538,"line":9322},[3536,37642,37643],{"class":3542},"      setPreference",[3536,37645,4390],{"class":3546},[3536,37647,37648,37651],{"class":3538,"line":9333},[3536,37649,37650],{"class":3542},"      colors",[3536,37652,4390],{"class":3546},[3536,37654,37655,37658,37660],{"class":3538,"line":9343},[3536,37656,37657],{"class":3542},"      spacing:",[3536,37659,36597],{"class":3542},[3536,37661,4390],{"class":3546},[3536,37663,37664,37667],{"class":3538,"line":9352},[3536,37665,37666],{"class":3542},"      radius",[3536,37668,4390],{"class":3546},[3536,37670,37671,37674],{"class":3538,"line":9362},[3536,37672,37673],{"class":3542},"      fontSize",[3536,37675,4390],{"class":3546},[3536,37677,37678],{"class":3538,"line":9372},[3536,37679,19218],{"class":3546},[3536,37681,37682,37684,37686,37688,37690,37692,37694,37696,37698],{"class":3538,"line":9377},[3536,37683,13887],{"class":3546},[3536,37685,5564],{"class":3542},[3536,37687,3755],{"class":3546},[3536,37689,13748],{"class":3542},[3536,37691,3755],{"class":3546},[3536,37693,13753],{"class":3542},[3536,37695,3755],{"class":3546},[3536,37697,12082],{"class":3542},[3536,37699,13892],{"class":3546},[3536,37701,37702],{"class":3538,"line":9400},[3536,37703,5072],{"class":3546},[3536,37705,37706],{"class":3538,"line":9408},[3536,37707,4748],{"emptyLinePlaceholder":4747},[3536,37709,37710,37712],{"class":3538,"line":9419},[3536,37711,4982],{"class":4725},[3536,37713,4985],{"class":3546},[3536,37715,37716,37718,37721,37723,37725,37727,37729,37731,37733,37735,37737,37739,37741,37743],{"class":3538,"line":9429},[3536,37717,4990],{"class":4309},[3536,37719,37720],{"class":3616},"ThemeContext.Provider",[3536,37722,24744],{"class":4315},[3536,37724,4319],{"class":3546},[3536,37726,4322],{"class":3561},[3536,37728,24824],{"class":3542},[3536,37730,3574],{"class":3561},[3536,37732,4341],{"class":4309},[3536,37734,4322],{"class":3561},[3536,37736,24525],{"class":3542},[3536,37738,3574],{"class":3561},[3536,37740,4347],{"class":4309},[3536,37742,37720],{"class":3616},[3536,37744,4352],{"class":4309},[3536,37746,37747],{"class":3538,"line":9439},[3536,37748,5072],{"class":3546},[3536,37750,37751],{"class":3538,"line":9450},[3536,37752,4476],{"class":3546},[3536,37754,37755],{"class":3538,"line":9461},[3536,37756,4748],{"emptyLinePlaceholder":4747},[3536,37758,37759,37761,37763,37766,37768,37770],{"class":3538,"line":9471},[3536,37760,4753],{"class":4725},[3536,37762,4759],{"class":3561},[3536,37764,37765],{"class":3550}," useTheme",[3536,37767,24864],{"class":3546},[3536,37769,37248],{"class":3616},[3536,37771,4547],{"class":3546},[3536,37773,37774,37776,37778,37780,37782,37784,37787],{"class":3538,"line":9476},[3536,37775,4770],{"class":3561},[3536,37777,24875],{"class":3599},[3536,37779,4874],{"class":3546},[3536,37781,24880],{"class":3550},[3536,37783,3554],{"class":3546},[3536,37785,37786],{"class":3542},"ThemeContext",[3536,37788,3580],{"class":3546},[3536,37790,37791,37793,37795,37797],{"class":3538,"line":9505},[3536,37792,9993],{"class":4725},[3536,37794,4967],{"class":3546},[3536,37796,24896],{"class":3542},[3536,37798,4977],{"class":3546},[3536,37800,37801,37803,37805,37807,37809,37812],{"class":3538,"line":9540},[3536,37802,24903],{"class":4725},[3536,37804,24906],{"class":3561},[3536,37806,24909],{"class":3550},[3536,37808,3554],{"class":3546},[3536,37810,37811],{"class":3557},"'useTheme() потрібно викликати всередині \u003CThemeProvider>.'",[3536,37813,3580],{"class":3546},[3536,37815,37816],{"class":3538,"line":9560},[3536,37817,5599],{"class":3546},[3536,37819,37820,37822,37824],{"class":3538,"line":9568},[3536,37821,4982],{"class":4725},[3536,37823,24875],{"class":3542},[3536,37825,4742],{"class":3546},[3536,37827,37828],{"class":3538,"line":9578},[3536,37829,4476],{"class":3546},[3526,37831,37834],{"className":7615,"code":37832,"filename":37833,"language":7617,"meta":3531,"style":3531},"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",[3533,37835,37836,37861,37883,37912,37931,37952],{"__ignoreMap":3531},[3536,37837,37838,37840,37842,37844,37846,37848,37850,37853,37855,37857,37859],{"class":3538,"line":3539},[3536,37839,4753],{"class":4725},[3536,37841,3596],{"class":3546},[3536,37843,36548],{"class":3542},[3536,37845,3755],{"class":3546},[3536,37847,36542],{"class":3542},[3536,37849,3755],{"class":3546},[3536,37851,37852],{"class":3542},"colorsForScheme",[3536,37854,4733],{"class":3546},[3536,37856,4736],{"class":4725},[3536,37858,37058],{"class":3557},[3536,37860,4742],{"class":3546},[3536,37862,37863,37865,37867,37869,37871,37873,37875,37877,37879,37881],{"class":3538,"line":4381},[3536,37864,4753],{"class":4725},[3536,37866,7626],{"class":4725},[3536,37868,3596],{"class":3546},[3536,37870,36523],{"class":3542},[3536,37872,3755],{"class":3546},[3536,37874,36518],{"class":3542},[3536,37876,4733],{"class":3546},[3536,37878,4736],{"class":4725},[3536,37880,37058],{"class":3557},[3536,37882,4742],{"class":3546},[3536,37884,37885,37887,37889,37892,37894,37896,37898,37900,37902,37904,37906,37908,37910],{"class":3538,"line":4393},[3536,37886,4753],{"class":4725},[3536,37888,3596],{"class":3546},[3536,37890,37891],{"class":3542},"tokens",[3536,37893,3755],{"class":3546},[3536,37895,37078],{"class":3542},[3536,37897,3755],{"class":3546},[3536,37899,16927],{"class":3542},[3536,37901,3755],{"class":3546},[3536,37903,37069],{"class":3542},[3536,37905,4733],{"class":3546},[3536,37907,4736],{"class":4725},[3536,37909,37085],{"class":3557},[3536,37911,4742],{"class":3546},[3536,37913,37914,37916,37918,37920,37923,37925,37927,37929],{"class":3538,"line":4414},[3536,37915,4753],{"class":4725},[3536,37917,7626],{"class":4725},[3536,37919,3596],{"class":3546},[3536,37921,37922],{"class":3542},"Tokens",[3536,37924,4733],{"class":3546},[3536,37926,4736],{"class":4725},[3536,37928,37085],{"class":3557},[3536,37930,4742],{"class":3546},[3536,37932,37933,37935,37937,37939,37941,37943,37945,37947,37950],{"class":3538,"line":4470},[3536,37934,4753],{"class":4725},[3536,37936,3596],{"class":3546},[3536,37938,11981],{"class":3542},[3536,37940,3755],{"class":3546},[3536,37942,11986],{"class":3542},[3536,37944,4733],{"class":3546},[3536,37946,4736],{"class":4725},[3536,37948,37949],{"class":3557}," '.\u002FThemeProvider'",[3536,37951,4742],{"class":3546},[3536,37953,37954,37956,37958,37960,37962,37964,37966,37968],{"class":3538,"line":4479},[3536,37955,4753],{"class":4725},[3536,37957,7626],{"class":4725},[3536,37959,3596],{"class":3546},[3536,37961,13611],{"class":3542},[3536,37963,4733],{"class":3546},[3536,37965,4736],{"class":4725},[3536,37967,37949],{"class":3557},[3536,37969,4742],{"class":3546},[3526,37971,37974],{"className":3528,"code":37972,"filename":37973,"language":3530,"meta":3531,"style":3531},"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",[3533,37975,37976,37992,38022,38026,38042,38046,38075,38079,38093,38103,38115,38120,38131,38146,38150,38154,38165,38171,38181,38187,38193,38201,38210,38228,38238,38246,38275,38279,38285,38292,38302,38312,38341,38354,38366,38374,38384,38388,38401,38413,38421,38429,38433,38446,38458,38466,38470,38481,38487,38493,38505,38509,38517,38525,38529,38533,38537,38553,38560],{"__ignoreMap":3531},[3536,37977,37978,37980,37982,37984,37986,37988,37990],{"class":3538,"line":3539},[3536,37979,4726],{"class":4725},[3536,37981,3596],{"class":3546},[3536,37983,24501],{"class":3542},[3536,37985,4733],{"class":3546},[3536,37987,4736],{"class":4725},[3536,37989,13385],{"class":3557},[3536,37991,4742],{"class":3546},[3536,37993,37994,37996,37998,38000,38002,38004,38006,38009,38011,38014,38016,38018,38020],{"class":3538,"line":4381},[3536,37995,4726],{"class":4725},[3536,37997,3596],{"class":3546},[3536,37999,8266],{"class":3542},[3536,38001,3755],{"class":3546},[3536,38003,5003],{"class":3542},[3536,38005,3755],{"class":3546},[3536,38007,38008],{"class":3542},"TextProps",[3536,38010,3755],{"class":3546},[3536,38012,38013],{"class":3542},"TextStyle",[3536,38015,4733],{"class":3546},[3536,38017,4736],{"class":4725},[3536,38019,8281],{"class":3557},[3536,38021,4742],{"class":3546},[3536,38023,38024],{"class":3538,"line":4393},[3536,38025,4748],{"emptyLinePlaceholder":4747},[3536,38027,38028,38030,38032,38034,38036,38038,38040],{"class":3538,"line":4414},[3536,38029,4726],{"class":4725},[3536,38031,3596],{"class":3546},[3536,38033,11986],{"class":3542},[3536,38035,4733],{"class":3546},[3536,38037,4736],{"class":4725},[3536,38039,11993],{"class":3557},[3536,38041,4742],{"class":3546},[3536,38043,38044],{"class":3538,"line":4470},[3536,38045,4748],{"emptyLinePlaceholder":4747},[3536,38047,38048,38050,38053,38055,38058,38060,38063,38065,38068,38070,38073],{"class":3538,"line":4479},[3536,38049,13553],{"class":3561},[3536,38051,38052],{"class":3616}," AppTextVariant",[3536,38054,4874],{"class":3546},[3536,38056,38057],{"class":3557},"'body'",[3536,38059,4859],{"class":3546},[3536,38061,38062],{"class":3557},"'title'",[3536,38064,4859],{"class":3546},[3536,38066,38067],{"class":3557},"'subtitle'",[3536,38069,4859],{"class":3546},[3536,38071,38072],{"class":3557},"'caption'",[3536,38074,4742],{"class":3546},[3536,38076,38077],{"class":3538,"line":4484},[3536,38078,4748],{"emptyLinePlaceholder":4747},[3536,38080,38081,38083,38086,38088,38090],{"class":3538,"line":4490},[3536,38082,13553],{"class":3561},[3536,38084,38085],{"class":3616}," AppTextProps",[3536,38087,4874],{"class":3546},[3536,38089,38008],{"class":3616},[3536,38091,38092],{"class":3546}," & {\n",[3536,38094,38095,38097,38099,38101],{"class":3538,"line":7163},[3536,38096,24496],{"class":3542},[3536,38098,3613],{"class":3546},[3536,38100,24501],{"class":3616},[3536,38102,4742],{"class":3546},[3536,38104,38105,38108,38110,38113],{"class":3538,"line":7171},[3536,38106,38107],{"class":3542},"  variant",[3536,38109,22858],{"class":3546},[3536,38111,38112],{"class":3616},"AppTextVariant",[3536,38114,4742],{"class":3546},[3536,38116,38117],{"class":3538,"line":7177},[3536,38118,38119],{"class":4573},"  \u002F** Якщо не передано — body\u002Ftitle\u002Fsubtitle → text, caption → textSecondary. *\u002F\n",[3536,38121,38122,38125,38127,38129],{"class":3538,"line":7190},[3536,38123,38124],{"class":3542},"  color",[3536,38126,22858],{"class":3546},[3536,38128,3617],{"class":3616},[3536,38130,4742],{"class":3546},[3536,38132,38133,38136,38138,38140,38142,38144],{"class":3538,"line":7203},[3536,38134,38135],{"class":3542},"  style",[3536,38137,22858],{"class":3546},[3536,38139,38013],{"class":3616},[3536,38141,4859],{"class":3546},[3536,38143,38013],{"class":3616},[3536,38145,24365],{"class":3546},[3536,38147,38148],{"class":3538,"line":7214},[3536,38149,7681],{"class":3546},[3536,38151,38152],{"class":3538,"line":7220},[3536,38153,4748],{"emptyLinePlaceholder":4747},[3536,38155,38156,38158,38160,38163],{"class":3538,"line":7226},[3536,38157,4753],{"class":4725},[3536,38159,4759],{"class":3561},[3536,38161,38162],{"class":3550}," AppText",[3536,38164,4378],{"class":3546},[3536,38166,38167,38169],{"class":3538,"line":7244},[3536,38168,24496],{"class":3542},[3536,38170,4390],{"class":3546},[3536,38172,38173,38175,38177,38179],{"class":3538,"line":7250},[3536,38174,38107],{"class":3542},[3536,38176,4874],{"class":3546},[3536,38178,38057],{"class":3557},[3536,38180,4390],{"class":3546},[3536,38182,38183,38185],{"class":3538,"line":7256},[3536,38184,38124],{"class":3542},[3536,38186,4390],{"class":3546},[3536,38188,38189,38191],{"class":3538,"line":7261},[3536,38190,38135],{"class":3542},[3536,38192,4390],{"class":3546},[3536,38194,38195,38198],{"class":3538,"line":7266},[3536,38196,38197],{"class":3546},"  ...",[3536,38199,38200],{"class":3542},"rest\n",[3536,38202,38203,38205,38208],{"class":3538,"line":7803},[3536,38204,27019],{"class":3546},[3536,38206,38207],{"class":3616},"AppTextProps",[3536,38209,4977],{"class":3546},[3536,38211,38212,38214,38216,38218,38220,38222,38224,38226],{"class":3538,"line":7813},[3536,38213,4770],{"class":3561},[3536,38215,3596],{"class":3546},[3536,38217,12082],{"class":3599},[3536,38219,3755],{"class":3546},[3536,38221,37069],{"class":3599},[3536,38223,3602],{"class":3546},[3536,38225,11986],{"class":3550},[3536,38227,7911],{"class":3546},[3536,38229,38230,38232,38235],{"class":3538,"line":7823},[3536,38231,4770],{"class":3561},[3536,38233,38234],{"class":3599}," resolvedColor",[3536,38236,38237],{"class":3546}," =\n",[3536,38239,38240,38243],{"class":3538,"line":7833},[3536,38241,38242],{"class":3542},"    color",[3536,38244,38245],{"class":3546}," ??\n",[3536,38247,38248,38250,38253,38255,38257,38259,38261,38263,38265,38267,38269,38271,38273],{"class":3538,"line":7843},[3536,38249,13839],{"class":3546},[3536,38251,38252],{"class":3542},"variant",[3536,38254,7944],{"class":3546},[3536,38256,38072],{"class":3557},[3536,38258,9896],{"class":3546},[3536,38260,12082],{"class":3542},[3536,38262,3547],{"class":3546},[3536,38264,12621],{"class":3542},[3536,38266,37361],{"class":3546},[3536,38268,12082],{"class":3542},[3536,38270,3547],{"class":3546},[3536,38272,3993],{"class":3542},[3536,38274,3580],{"class":3546},[3536,38276,38277],{"class":3538,"line":7848},[3536,38278,4748],{"emptyLinePlaceholder":4747},[3536,38280,38281,38283],{"class":3538,"line":7854},[3536,38282,4982],{"class":4725},[3536,38284,4985],{"class":3546},[3536,38286,38287,38289],{"class":3538,"line":7859},[3536,38288,4990],{"class":4309},[3536,38290,38291],{"class":3616},"Text\n",[3536,38293,38294,38296,38298,38300],{"class":3538,"line":7888},[3536,38295,14600],{"class":4315},[3536,38297,4319],{"class":3546},[3536,38299,4322],{"class":3561},[3536,38301,14607],{"class":3568},[3536,38303,38304,38306,38308,38310],{"class":3538,"line":7914},[3536,38305,14612],{"class":3542},[3536,38307,3547],{"class":3568},[3536,38309,26896],{"class":3542},[3536,38311,4390],{"class":3568},[3536,38313,38314,38316,38318,38321,38323,38325,38327,38329,38331,38333,38335,38337,38339],{"class":3538,"line":7952},[3536,38315,14743],{"class":3542},[3536,38317,12123],{"class":3546},[3536,38319,38320],{"class":3557}," 'body'",[3536,38322,31939],{"class":3546},[3536,38324,3596],{"class":3568},[3536,38326,9484],{"class":3542},[3536,38328,36715],{"class":3542},[3536,38330,3547],{"class":3568},[3536,38332,14224],{"class":3542},[3536,38334,3755],{"class":3568},[3536,38336,10828],{"class":3542},[3536,38338,9395],{"class":4897},[3536,38340,4411],{"class":3568},[3536,38342,38343,38345,38347,38350,38352],{"class":3538,"line":8796},[3536,38344,14743],{"class":3542},[3536,38346,12123],{"class":3546},[3536,38348,38349],{"class":3557}," 'title'",[3536,38351,31939],{"class":3546},[3536,38353,4547],{"class":3568},[3536,38355,38356,38358,38360,38362,38364],{"class":3538,"line":8838},[3536,38357,12674],{"class":3542},[3536,38359,36715],{"class":3542},[3536,38361,3547],{"class":3568},[3536,38363,14648],{"class":3542},[3536,38365,4390],{"class":3568},[3536,38367,38368,38370,38372],{"class":3538,"line":8877},[3536,38369,12683],{"class":3542},[3536,38371,9494],{"class":3557},[3536,38373,4390],{"class":3568},[3536,38375,38376,38379,38382],{"class":3538,"line":8918},[3536,38377,38378],{"class":3542},"          lineHeight:",[3536,38380,38381],{"class":4897}," 34",[3536,38383,4390],{"class":3568},[3536,38385,38386],{"class":3538,"line":8928},[3536,38387,12662],{"class":3568},[3536,38389,38390,38392,38394,38397,38399],{"class":3538,"line":8938},[3536,38391,14743],{"class":3542},[3536,38393,12123],{"class":3546},[3536,38395,38396],{"class":3557}," 'subtitle'",[3536,38398,31939],{"class":3546},[3536,38400,4547],{"class":3568},[3536,38402,38403,38405,38407,38409,38411],{"class":3538,"line":8946},[3536,38404,12674],{"class":3542},[3536,38406,36715],{"class":3542},[3536,38408,3547],{"class":3568},[3536,38410,17220],{"class":3542},[3536,38412,4390],{"class":3568},[3536,38414,38415,38417,38419],{"class":3538,"line":8965},[3536,38416,12683],{"class":3542},[3536,38418,8112],{"class":3557},[3536,38420,4390],{"class":3568},[3536,38422,38423,38425,38427],{"class":3538,"line":8993},[3536,38424,38378],{"class":3542},[3536,38426,10780],{"class":4897},[3536,38428,4390],{"class":3568},[3536,38430,38431],{"class":3538,"line":8999},[3536,38432,12662],{"class":3568},[3536,38434,38435,38437,38439,38442,38444],{"class":3538,"line":9032},[3536,38436,14743],{"class":3542},[3536,38438,12123],{"class":3546},[3536,38440,38441],{"class":3557}," 'caption'",[3536,38443,31939],{"class":3546},[3536,38445,4547],{"class":3568},[3536,38447,38448,38450,38452,38454,38456],{"class":3538,"line":9041},[3536,38449,12674],{"class":3542},[3536,38451,36715],{"class":3542},[3536,38453,3547],{"class":3568},[3536,38455,14286],{"class":3542},[3536,38457,4390],{"class":3568},[3536,38459,38460,38462,38464],{"class":3538,"line":9051},[3536,38461,38378],{"class":3542},[3536,38463,9515],{"class":4897},[3536,38465,4390],{"class":3568},[3536,38467,38468],{"class":3538,"line":9059},[3536,38469,12662],{"class":3568},[3536,38471,38472,38475,38477,38479],{"class":3538,"line":9065},[3536,38473,38474],{"class":3568},"        { ",[3536,38476,8101],{"class":3542},[3536,38478,38234],{"class":3542},[3536,38480,4411],{"class":3568},[3536,38482,38483,38485],{"class":3538,"line":9070},[3536,38484,9080],{"class":3542},[3536,38486,4390],{"class":3568},[3536,38488,38489,38491],{"class":3538,"line":9077},[3536,38490,14675],{"class":3568},[3536,38492,4476],{"class":3561},[3536,38494,38495,38497,38500,38503],{"class":3538,"line":9096},[3536,38496,14246],{"class":3561},[3536,38498,38499],{"class":3546},"...",[3536,38501,38502],{"class":3542},"rest",[3536,38504,4476],{"class":3561},[3536,38506,38507],{"class":3538,"line":9125},[3536,38508,12703],{"class":4309},[3536,38510,38511,38513,38515],{"class":3538,"line":9130},[3536,38512,14246],{"class":3561},[3536,38514,24525],{"class":3542},[3536,38516,4476],{"class":3561},[3536,38518,38519,38521,38523],{"class":3538,"line":9163},[3536,38520,5063],{"class":4309},[3536,38522,5003],{"class":3616},[3536,38524,4352],{"class":4309},[3536,38526,38527],{"class":3538,"line":9172},[3536,38528,5072],{"class":3546},[3536,38530,38531],{"class":3538,"line":9181},[3536,38532,4476],{"class":3546},[3536,38534,38535],{"class":3538,"line":9186},[3536,38536,4748],{"emptyLinePlaceholder":4747},[3536,38538,38539,38541,38543,38545,38547,38549,38551],{"class":3538,"line":9191},[3536,38540,3593],{"class":3561},[3536,38542,9201],{"class":3599},[3536,38544,4874],{"class":3546},[3536,38546,8266],{"class":3542},[3536,38548,3547],{"class":3546},[3536,38550,9210],{"class":3550},[3536,38552,4378],{"class":3546},[3536,38554,38555,38558],{"class":3538,"line":9196},[3536,38556,38557],{"class":3542},"  base:",[3536,38559,19213],{"class":3546},[3536,38561,38562],{"class":3538,"line":9215},[3536,38563,4417],{"class":3546},[3526,38565,38568],{"className":3528,"code":38566,"filename":38567,"language":3530,"meta":3531,"style":3531},"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",[3533,38569,38570,38599,38603,38619,38623,38642,38646,38655,38665,38677,38688,38698,38709,38713,38717,38728,38734,38740,38750,38756,38766,38775,38801,38818,38822,38828,38834,38842,38856,38868,38886,38896,38900,38916,38928,38940,38964,38981,38993,38997,39009,39017,39035,39049,39059,39078,39084,39090,39094,39100,39110,39120,39124,39148,39161,39165,39171,39175,39183,39191,39199,39203,39207,39211,39227,39233,39241,39245,39252,39261,39265,39271,39279,39283],{"__ignoreMap":3531},[3536,38571,38572,38574,38576,38578,38580,38582,38584,38586,38588,38591,38593,38595,38597],{"class":3538,"line":3539},[3536,38573,4726],{"class":4725},[3536,38575,3596],{"class":3546},[3536,38577,8261],{"class":3542},[3536,38579,3755],{"class":3546},[3536,38581,8266],{"class":3542},[3536,38583,3755],{"class":3546},[3536,38585,5003],{"class":3542},[3536,38587,3755],{"class":3546},[3536,38589,38590],{"class":3542},"ViewStyle",[3536,38592,4733],{"class":3546},[3536,38594,4736],{"class":4725},[3536,38596,8281],{"class":3557},[3536,38598,4742],{"class":3546},[3536,38600,38601],{"class":3538,"line":4381},[3536,38602,4748],{"emptyLinePlaceholder":4747},[3536,38604,38605,38607,38609,38611,38613,38615,38617],{"class":3538,"line":4393},[3536,38606,4726],{"class":4725},[3536,38608,3596],{"class":3546},[3536,38610,11986],{"class":3542},[3536,38612,4733],{"class":3546},[3536,38614,4736],{"class":4725},[3536,38616,11993],{"class":3557},[3536,38618,4742],{"class":3546},[3536,38620,38621],{"class":3538,"line":4414},[3536,38622,4748],{"emptyLinePlaceholder":4747},[3536,38624,38625,38627,38630,38632,38635,38637,38640],{"class":3538,"line":4470},[3536,38626,13553],{"class":3561},[3536,38628,38629],{"class":3616}," ButtonVariant",[3536,38631,4874],{"class":3546},[3536,38633,38634],{"class":3557},"'primary'",[3536,38636,4859],{"class":3546},[3536,38638,38639],{"class":3557},"'secondary'",[3536,38641,4742],{"class":3546},[3536,38643,38644],{"class":3538,"line":4479},[3536,38645,4748],{"emptyLinePlaceholder":4747},[3536,38647,38648,38650,38653],{"class":3538,"line":4484},[3536,38649,13553],{"class":3561},[3536,38651,38652],{"class":3616}," ButtonProps",[3536,38654,7632],{"class":3546},[3536,38656,38657,38659,38661,38663],{"class":3538,"line":4490},[3536,38658,30979],{"class":3542},[3536,38660,3613],{"class":3546},[3536,38662,3617],{"class":3616},[3536,38664,4742],{"class":3546},[3536,38666,38667,38669,38671,38673,38675],{"class":3538,"line":7163},[3536,38668,33993],{"class":3550},[3536,38670,24436],{"class":3546},[3536,38672,5042],{"class":3561},[3536,38674,24421],{"class":3616},[3536,38676,4742],{"class":3546},[3536,38678,38679,38682,38684,38686],{"class":3538,"line":7171},[3536,38680,38681],{"class":3542},"  disabled",[3536,38683,22858],{"class":3546},[3536,38685,22861],{"class":3616},[3536,38687,4742],{"class":3546},[3536,38689,38690,38692,38694,38696],{"class":3538,"line":7177},[3536,38691,38135],{"class":3542},[3536,38693,22858],{"class":3546},[3536,38695,38590],{"class":3616},[3536,38697,4742],{"class":3546},[3536,38699,38700,38702,38704,38707],{"class":3538,"line":7190},[3536,38701,38107],{"class":3542},[3536,38703,22858],{"class":3546},[3536,38705,38706],{"class":3616},"ButtonVariant",[3536,38708,4742],{"class":3546},[3536,38710,38711],{"class":3538,"line":7203},[3536,38712,7681],{"class":3546},[3536,38714,38715],{"class":3538,"line":7214},[3536,38716,4748],{"emptyLinePlaceholder":4747},[3536,38718,38719,38721,38723,38726],{"class":3538,"line":7220},[3536,38720,4753],{"class":4725},[3536,38722,4759],{"class":3561},[3536,38724,38725],{"class":3550}," Button",[3536,38727,4378],{"class":3546},[3536,38729,38730,38732],{"class":3538,"line":7226},[3536,38731,30979],{"class":3542},[3536,38733,4390],{"class":3546},[3536,38735,38736,38738],{"class":3538,"line":7244},[3536,38737,33993],{"class":3542},[3536,38739,4390],{"class":3546},[3536,38741,38742,38744,38746,38748],{"class":3538,"line":7250},[3536,38743,38681],{"class":3542},[3536,38745,4874],{"class":3546},[3536,38747,13814],{"class":3561},[3536,38749,4390],{"class":3546},[3536,38751,38752,38754],{"class":3538,"line":7256},[3536,38753,38135],{"class":3542},[3536,38755,4390],{"class":3546},[3536,38757,38758,38760,38762,38764],{"class":3538,"line":7261},[3536,38759,38107],{"class":3542},[3536,38761,4874],{"class":3546},[3536,38763,38634],{"class":3557},[3536,38765,4390],{"class":3546},[3536,38767,38768,38770,38773],{"class":3538,"line":7266},[3536,38769,27019],{"class":3546},[3536,38771,38772],{"class":3616},"ButtonProps",[3536,38774,4977],{"class":3546},[3536,38776,38777,38779,38781,38783,38785,38787,38789,38791,38793,38795,38797,38799],{"class":3538,"line":7803},[3536,38778,4770],{"class":3561},[3536,38780,3596],{"class":3546},[3536,38782,12082],{"class":3599},[3536,38784,3755],{"class":3546},[3536,38786,13743],{"class":3599},[3536,38788,3755],{"class":3546},[3536,38790,16927],{"class":3599},[3536,38792,3755],{"class":3546},[3536,38794,37069],{"class":3599},[3536,38796,3602],{"class":3546},[3536,38798,11986],{"class":3550},[3536,38800,7911],{"class":3546},[3536,38802,38803,38805,38808,38810,38812,38814,38816],{"class":3538,"line":7813},[3536,38804,4770],{"class":3561},[3536,38806,38807],{"class":3599}," isPrimary",[3536,38809,4874],{"class":3546},[3536,38811,38252],{"class":3542},[3536,38813,7944],{"class":3546},[3536,38815,38634],{"class":3557},[3536,38817,4742],{"class":3546},[3536,38819,38820],{"class":3538,"line":7823},[3536,38821,4748],{"emptyLinePlaceholder":4747},[3536,38823,38824,38826],{"class":3538,"line":7833},[3536,38825,4982],{"class":4725},[3536,38827,4985],{"class":3546},[3536,38829,38830,38832],{"class":3538,"line":7843},[3536,38831,4990],{"class":4309},[3536,38833,8943],{"class":3616},[3536,38835,38836,38838,38840],{"class":3538,"line":7848},[3536,38837,34083],{"class":4315},[3536,38839,4319],{"class":3546},[3536,38841,15492],{"class":3557},[3536,38843,38844,38847,38849,38851,38854],{"class":3538,"line":7854},[3536,38845,38846],{"class":4315},"      disabled",[3536,38848,4319],{"class":3546},[3536,38850,4322],{"class":3561},[3536,38852,38853],{"class":3542},"disabled",[3536,38855,4476],{"class":3561},[3536,38857,38858,38860,38862,38864,38866],{"class":3538,"line":7859},[3536,38859,34118],{"class":4315},[3536,38861,4319],{"class":3546},[3536,38863,4322],{"class":3561},[3536,38865,5423],{"class":3542},[3536,38867,4476],{"class":3561},[3536,38869,38870,38872,38874,38876,38878,38880,38882,38884],{"class":3538,"line":7888},[3536,38871,14600],{"class":4315},[3536,38873,4319],{"class":3546},[3536,38875,4322],{"class":3561},[3536,38877,8717],{"class":3568},[3536,38879,34150],{"class":3542},[3536,38881,8722],{"class":3568},[3536,38883,5042],{"class":3561},[3536,38885,34157],{"class":3568},[3536,38887,38888,38890,38892,38894],{"class":3538,"line":7914},[3536,38889,14612],{"class":3542},[3536,38891,3547],{"class":3568},[3536,38893,26896],{"class":3542},[3536,38895,4390],{"class":3568},[3536,38897,38898],{"class":3538,"line":7952},[3536,38899,7136],{"class":3568},[3536,38901,38902,38904,38906,38908,38910,38912,38914],{"class":3538,"line":8796},[3536,38903,14641],{"class":3542},[3536,38905,14219],{"class":3542},[3536,38907,3547],{"class":3568},[3536,38909,14286],{"class":3542},[3536,38911,21557],{"class":3546},[3536,38913,9573],{"class":4897},[3536,38915,4390],{"class":3568},[3536,38917,38918,38920,38922,38924,38926],{"class":3538,"line":8838},[3536,38919,14628],{"class":3542},[3536,38921,14219],{"class":3542},[3536,38923,3547],{"class":3568},[3536,38925,14224],{"class":3542},[3536,38927,4390],{"class":3568},[3536,38929,38930,38932,38934,38936,38938],{"class":3538,"line":8877},[3536,38931,18706],{"class":3542},[3536,38933,18709],{"class":3542},[3536,38935,3547],{"class":3568},[3536,38937,14224],{"class":3542},[3536,38939,4390],{"class":3568},[3536,38941,38942,38944,38946,38948,38950,38952,38954,38956,38958,38960,38962],{"class":3538,"line":8918},[3536,38943,12635],{"class":3542},[3536,38945,38807],{"class":3542},[3536,38947,12129],{"class":3546},[3536,38949,12168],{"class":3542},[3536,38951,3547],{"class":3568},[3536,38953,12202],{"class":3542},[3536,38955,12135],{"class":3546},[3536,38957,12168],{"class":3542},[3536,38959,3547],{"class":3568},[3536,38961,15451],{"class":3542},[3536,38963,4390],{"class":3568},[3536,38965,38966,38969,38971,38973,38975,38977,38979],{"class":3538,"line":8928},[3536,38967,38968],{"class":3542},"          borderWidth:",[3536,38970,38807],{"class":3542},[3536,38972,12129],{"class":3546},[3536,38974,14259],{"class":4897},[3536,38976,12135],{"class":3546},[3536,38978,9226],{"class":4897},[3536,38980,4390],{"class":3568},[3536,38982,38983,38985,38987,38989,38991],{"class":3538,"line":8938},[3536,38984,18693],{"class":3542},[3536,38986,12168],{"class":3542},[3536,38988,3547],{"class":3568},[3536,38990,12655],{"class":3542},[3536,38992,4390],{"class":3568},[3536,38994,38995],{"class":3538,"line":8946},[3536,38996,12662],{"class":3568},[3536,38998,38999,39001,39003,39006],{"class":3538,"line":8965},[3536,39000,34216],{"class":3542},[3536,39002,31939],{"class":3546},[3536,39004,39005],{"class":3546}," !",[3536,39007,39008],{"class":3542},"disabled\n",[3536,39010,39011,39014],{"class":3538,"line":8993},[3536,39012,39013],{"class":3546},"          ?",[3536,39015,39016],{"class":3542}," isPrimary\n",[3536,39018,39019,39021,39023,39025,39027,39029,39032],{"class":3538,"line":8999},[3536,39020,15180],{"class":3546},[3536,39022,3596],{"class":3568},[3536,39024,8076],{"class":3542},[3536,39026,12168],{"class":3542},[3536,39028,3547],{"class":3568},[3536,39030,39031],{"class":3542},"primaryPressed",[3536,39033,39034],{"class":3568}," }\n",[3536,39036,39037,39039,39041,39044,39047],{"class":3538,"line":9032},[3536,39038,15215],{"class":3546},[3536,39040,3596],{"class":3568},[3536,39042,39043],{"class":3542},"opacity:",[3536,39045,39046],{"class":4897}," 0.85",[3536,39048,39034],{"class":3568},[3536,39050,39051,39054,39057],{"class":3538,"line":9041},[3536,39052,39053],{"class":3546},"          :",[3536,39055,39056],{"class":3561}," null",[3536,39058,4390],{"class":3568},[3536,39060,39061,39064,39066,39068,39070,39072,39074,39076],{"class":3538,"line":9051},[3536,39062,39063],{"class":3542},"        disabled",[3536,39065,12129],{"class":3546},[3536,39067,9201],{"class":3542},[3536,39069,3547],{"class":3568},[3536,39071,38853],{"class":3542},[3536,39073,12135],{"class":3546},[3536,39075,39056],{"class":3561},[3536,39077,4390],{"class":3568},[3536,39079,39080,39082],{"class":3538,"line":9059},[3536,39081,9080],{"class":3542},[3536,39083,4390],{"class":3568},[3536,39085,39086,39088],{"class":3538,"line":9065},[3536,39087,14675],{"class":3568},[3536,39089,4476],{"class":3561},[3536,39091,39092],{"class":3538,"line":9070},[3536,39093,12703],{"class":4309},[3536,39095,39096,39098],{"class":3538,"line":9077},[3536,39097,5000],{"class":4309},[3536,39099,38291],{"class":3616},[3536,39101,39102,39104,39106,39108],{"class":3538,"line":9096},[3536,39103,9080],{"class":4315},[3536,39105,4319],{"class":3546},[3536,39107,4322],{"class":3561},[3536,39109,14607],{"class":3568},[3536,39111,39112,39114,39116,39118],{"class":3538,"line":9125},[3536,39113,14878],{"class":3542},[3536,39115,3547],{"class":3568},[3536,39117,13617],{"class":3542},[3536,39119,4390],{"class":3568},[3536,39121,39122],{"class":3538,"line":9130},[3536,39123,14891],{"class":3568},[3536,39125,39126,39128,39130,39132,39134,39136,39138,39140,39142,39144,39146],{"class":3538,"line":9163},[3536,39127,15126],{"class":3542},[3536,39129,38807],{"class":3542},[3536,39131,12129],{"class":3546},[3536,39133,12168],{"class":3542},[3536,39135,3547],{"class":3568},[3536,39137,15585],{"class":3542},[3536,39139,12135],{"class":3546},[3536,39141,12168],{"class":3542},[3536,39143,3547],{"class":3568},[3536,39145,3993],{"class":3542},[3536,39147,4390],{"class":3568},[3536,39149,39150,39153,39155,39157,39159],{"class":3538,"line":9172},[3536,39151,39152],{"class":3542},"            fontSize:",[3536,39154,36715],{"class":3542},[3536,39156,3547],{"class":3568},[3536,39158,14224],{"class":3542},[3536,39160,4390],{"class":3568},[3536,39162,39163],{"class":3538,"line":9181},[3536,39164,14968],{"class":3568},[3536,39166,39167,39169],{"class":3538,"line":9186},[3536,39168,14974],{"class":3568},[3536,39170,4476],{"class":3561},[3536,39172,39173],{"class":3538,"line":9191},[3536,39174,8139],{"class":4309},[3536,39176,39177,39179,39181],{"class":3538,"line":9196},[3536,39178,18815],{"class":3561},[3536,39180,13617],{"class":3542},[3536,39182,4476],{"class":3561},[3536,39184,39185,39187,39189],{"class":3538,"line":9215},[3536,39186,8215],{"class":4309},[3536,39188,5003],{"class":3616},[3536,39190,4352],{"class":4309},[3536,39192,39193,39195,39197],{"class":3538,"line":9237},[3536,39194,5063],{"class":4309},[3536,39196,8261],{"class":3616},[3536,39198,4352],{"class":4309},[3536,39200,39201],{"class":3538,"line":9245},[3536,39202,5072],{"class":3546},[3536,39204,39205],{"class":3538,"line":9256},[3536,39206,4476],{"class":3546},[3536,39208,39209],{"class":3538,"line":9267},[3536,39210,4748],{"emptyLinePlaceholder":4747},[3536,39212,39213,39215,39217,39219,39221,39223,39225],{"class":3538,"line":9278},[3536,39214,3593],{"class":3561},[3536,39216,9201],{"class":3599},[3536,39218,4874],{"class":3546},[3536,39220,8266],{"class":3542},[3536,39222,3547],{"class":3546},[3536,39224,9210],{"class":3550},[3536,39226,4378],{"class":3546},[3536,39228,39229,39231],{"class":3538,"line":9289},[3536,39230,38557],{"class":3542},[3536,39232,4547],{"class":3546},[3536,39234,39235,39237,39239],{"class":3538,"line":9300},[3536,39236,9618],{"class":3542},[3536,39238,9621],{"class":3557},[3536,39240,4390],{"class":3546},[3536,39242,39243],{"class":3538,"line":9305},[3536,39244,4579],{"class":3546},[3536,39246,39247,39250],{"class":3538,"line":9313},[3536,39248,39249],{"class":3542},"  disabled:",[3536,39251,4547],{"class":3546},[3536,39253,39254,39256,39259],{"class":3538,"line":9322},[3536,39255,35255],{"class":3542},[3536,39257,39258],{"class":4897}," 0.5",[3536,39260,4390],{"class":3546},[3536,39262,39263],{"class":3538,"line":9333},[3536,39264,4579],{"class":3546},[3536,39266,39267,39269],{"class":3538,"line":9343},[3536,39268,32821],{"class":3542},[3536,39270,4547],{"class":3546},[3536,39272,39273,39275,39277],{"class":3538,"line":9352},[3536,39274,9365],{"class":3542},[3536,39276,8112],{"class":3557},[3536,39278,4390],{"class":3546},[3536,39280,39281],{"class":3538,"line":9362},[3536,39282,4579],{"class":3546},[3536,39284,39285],{"class":3538,"line":9372},[3536,39286,4417],{"class":3546},[3526,39288,39291],{"className":3528,"code":39289,"filename":39290,"language":3530,"meta":3531,"style":3531},"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",[3533,39292,39293,39309,39329,39345,39349,39369,39373,39382,39392,39402,39406,39410,39435,39449,39453,39459,39466,39502,39506,39514,39522,39526,39530,39534,39550,39557,39565,39577,39581],{"__ignoreMap":3531},[3536,39294,39295,39297,39299,39301,39303,39305,39307],{"class":3538,"line":3539},[3536,39296,4726],{"class":4725},[3536,39298,3596],{"class":3546},[3536,39300,24501],{"class":3542},[3536,39302,4733],{"class":3546},[3536,39304,4736],{"class":4725},[3536,39306,13385],{"class":3557},[3536,39308,4742],{"class":3546},[3536,39310,39311,39313,39315,39317,39319,39321,39323,39325,39327],{"class":3538,"line":4381},[3536,39312,4726],{"class":4725},[3536,39314,3596],{"class":3546},[3536,39316,8266],{"class":3542},[3536,39318,3755],{"class":3546},[3536,39320,38590],{"class":3542},[3536,39322,4733],{"class":3546},[3536,39324,4736],{"class":4725},[3536,39326,8281],{"class":3557},[3536,39328,4742],{"class":3546},[3536,39330,39331,39333,39335,39337,39339,39341,39343],{"class":3538,"line":4393},[3536,39332,4726],{"class":4725},[3536,39334,3596],{"class":3546},[3536,39336,8329],{"class":3542},[3536,39338,4733],{"class":3546},[3536,39340,4736],{"class":4725},[3536,39342,8336],{"class":3557},[3536,39344,4742],{"class":3546},[3536,39346,39347],{"class":3538,"line":4414},[3536,39348,4748],{"emptyLinePlaceholder":4747},[3536,39350,39351,39353,39355,39357,39359,39361,39363,39365,39367],{"class":3538,"line":4470},[3536,39352,4726],{"class":4725},[3536,39354,3596],{"class":3546},[3536,39356,37078],{"class":3542},[3536,39358,3755],{"class":3546},[3536,39360,11986],{"class":3542},[3536,39362,4733],{"class":3546},[3536,39364,4736],{"class":4725},[3536,39366,11993],{"class":3557},[3536,39368,4742],{"class":3546},[3536,39370,39371],{"class":3538,"line":4479},[3536,39372,4748],{"emptyLinePlaceholder":4747},[3536,39374,39375,39377,39380],{"class":3538,"line":4484},[3536,39376,13553],{"class":3561},[3536,39378,39379],{"class":3616}," ScreenProps",[3536,39381,7632],{"class":3546},[3536,39383,39384,39386,39388,39390],{"class":3538,"line":4490},[3536,39385,24496],{"class":3542},[3536,39387,3613],{"class":3546},[3536,39389,24501],{"class":3616},[3536,39391,4742],{"class":3546},[3536,39393,39394,39396,39398,39400],{"class":3538,"line":7163},[3536,39395,38135],{"class":3542},[3536,39397,22858],{"class":3546},[3536,39399,38590],{"class":3616},[3536,39401,4742],{"class":3546},[3536,39403,39404],{"class":3538,"line":7171},[3536,39405,7681],{"class":3546},[3536,39407,39408],{"class":3538,"line":7177},[3536,39409,4748],{"emptyLinePlaceholder":4747},[3536,39411,39412,39414,39416,39419,39421,39423,39425,39428,39430,39433],{"class":3538,"line":7190},[3536,39413,4753],{"class":4725},[3536,39415,4759],{"class":3561},[3536,39417,39418],{"class":3550}," Screen",[3536,39420,8717],{"class":3546},[3536,39422,24525],{"class":3542},[3536,39424,3755],{"class":3546},[3536,39426,39427],{"class":3542},"style",[3536,39429,24528],{"class":3546},[3536,39431,39432],{"class":3616},"ScreenProps",[3536,39434,4977],{"class":3546},[3536,39436,39437,39439,39441,39443,39445,39447],{"class":3538,"line":7203},[3536,39438,4770],{"class":3561},[3536,39440,3596],{"class":3546},[3536,39442,12082],{"class":3599},[3536,39444,3602],{"class":3546},[3536,39446,11986],{"class":3550},[3536,39448,7911],{"class":3546},[3536,39450,39451],{"class":3538,"line":7214},[3536,39452,4748],{"emptyLinePlaceholder":4747},[3536,39454,39455,39457],{"class":3538,"line":7220},[3536,39456,4982],{"class":4725},[3536,39458,4985],{"class":3546},[3536,39460,39461,39463],{"class":3538,"line":7226},[3536,39462,4990],{"class":4309},[3536,39464,39465],{"class":3616},"SafeAreaView\n",[3536,39467,39468,39470,39472,39474,39476,39478,39480,39483,39485,39487,39489,39491,39493,39496,39498,39500],{"class":3538,"line":7244},[3536,39469,14600],{"class":4315},[3536,39471,4319],{"class":3546},[3536,39473,4322],{"class":3561},[3536,39475,4894],{"class":3568},[3536,39477,8496],{"class":3542},[3536,39479,3547],{"class":3568},[3536,39481,39482],{"class":3542},"root",[3536,39484,15259],{"class":3568},[3536,39486,8076],{"class":3542},[3536,39488,12168],{"class":3542},[3536,39490,3547],{"class":3568},[3536,39492,12173],{"class":3542},[3536,39494,39495],{"class":3568}," }, ",[3536,39497,39427],{"class":3542},[3536,39499,8518],{"class":3568},[3536,39501,4476],{"class":3561},[3536,39503,39504],{"class":3538,"line":7250},[3536,39505,12703],{"class":4309},[3536,39507,39508,39510,39512],{"class":3538,"line":7256},[3536,39509,14246],{"class":3561},[3536,39511,24525],{"class":3542},[3536,39513,4476],{"class":3561},[3536,39515,39516,39518,39520],{"class":3538,"line":7261},[3536,39517,5063],{"class":4309},[3536,39519,8329],{"class":3616},[3536,39521,4352],{"class":4309},[3536,39523,39524],{"class":3538,"line":7266},[3536,39525,5072],{"class":3546},[3536,39527,39528],{"class":3538,"line":7803},[3536,39529,4476],{"class":3546},[3536,39531,39532],{"class":3538,"line":7813},[3536,39533,4748],{"emptyLinePlaceholder":4747},[3536,39535,39536,39538,39540,39542,39544,39546,39548],{"class":3538,"line":7823},[3536,39537,3593],{"class":3561},[3536,39539,9201],{"class":3599},[3536,39541,4874],{"class":3546},[3536,39543,8266],{"class":3542},[3536,39545,3547],{"class":3546},[3536,39547,9210],{"class":3550},[3536,39549,4378],{"class":3546},[3536,39551,39552,39555],{"class":3538,"line":7833},[3536,39553,39554],{"class":3542},"  root:",[3536,39556,4547],{"class":3546},[3536,39558,39559,39561,39563],{"class":3538,"line":7843},[3536,39560,10665],{"class":3542},[3536,39562,9226],{"class":4897},[3536,39564,4390],{"class":3546},[3536,39566,39567,39569,39571,39573,39575],{"class":3538,"line":7848},[3536,39568,9248],{"class":3542},[3536,39570,36597],{"class":3542},[3536,39572,3547],{"class":3546},[3536,39574,14224],{"class":3542},[3536,39576,4390],{"class":3546},[3536,39578,39579],{"class":3538,"line":7854},[3536,39580,4579],{"class":3546},[3536,39582,39583],{"class":3538,"line":7859},[3536,39584,4417],{"class":3546},[3526,39586,39589],{"className":3528,"code":39587,"filename":39588,"language":3530,"meta":3531,"style":3531},"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",[3533,39590,39591,39607,39613,39619,39626,39633,39639,39646,39656,39660,39676,39693,39697,39711,39721,39731,39736,39747,39758,39763,39774,39778,39782,39786,39791,39796,39800,39811,39817,39823,39829,39835,39841,39847,39854,39863,39889,39905,39909,39915,39956,39984,39992,40000,40006,40016,40026,40030,40054,40066,40078,40082,40088,40092,40099,40116,40126,40136,40140,40153,40166,40183,40196,40200,40206,40212,40223,40227,40236,40244,40254,40282,40290,40298,40311,40339,40348,40356,40364,40372,40376,40380,40384,40400,40406,40414,40418,40424,40432,40436,40442,40450,40458,40466,40474,40478,40485,40493,40501,40505],{"__ignoreMap":3531},[3536,39592,39593,39595,39597,39599,39601,39603,39605],{"class":3538,"line":3539},[3536,39594,4726],{"class":4725},[3536,39596,3596],{"class":3546},[3536,39598,24501],{"class":3542},[3536,39600,4733],{"class":3546},[3536,39602,4736],{"class":4725},[3536,39604,13385],{"class":3557},[3536,39606,4742],{"class":3546},[3536,39608,39609,39611],{"class":3538,"line":4381},[3536,39610,4726],{"class":4725},[3536,39612,4547],{"class":3546},[3536,39614,39615,39617],{"class":3538,"line":4393},[3536,39616,13419],{"class":3542},[3536,39618,4390],{"class":3546},[3536,39620,39621,39624],{"class":3538,"line":4414},[3536,39622,39623],{"class":3542},"  TextInput",[3536,39625,4390],{"class":3546},[3536,39627,39628,39631],{"class":3538,"line":4470},[3536,39629,39630],{"class":3542},"  TextInputProps",[3536,39632,4390],{"class":3546},[3536,39634,39635,39637],{"class":3538,"line":4479},[3536,39636,13426],{"class":3542},[3536,39638,4390],{"class":3546},[3536,39640,39641,39644],{"class":3538,"line":4484},[3536,39642,39643],{"class":3542},"  ViewStyle",[3536,39645,4390],{"class":3546},[3536,39647,39648,39650,39652,39654],{"class":3538,"line":4490},[3536,39649,13433],{"class":3546},[3536,39651,4736],{"class":4725},[3536,39653,8281],{"class":3557},[3536,39655,4742],{"class":3546},[3536,39657,39658],{"class":3538,"line":7163},[3536,39659,4748],{"emptyLinePlaceholder":4747},[3536,39661,39662,39664,39666,39668,39670,39672,39674],{"class":3538,"line":7171},[3536,39663,4726],{"class":4725},[3536,39665,3596],{"class":3546},[3536,39667,11986],{"class":3542},[3536,39669,4733],{"class":3546},[3536,39671,4736],{"class":4725},[3536,39673,11993],{"class":3557},[3536,39675,4742],{"class":3546},[3536,39677,39678,39680,39682,39684,39686,39688,39691],{"class":3538,"line":7177},[3536,39679,4726],{"class":4725},[3536,39681,3596],{"class":3546},[3536,39683,6704],{"class":3542},[3536,39685,4733],{"class":3546},[3536,39687,4736],{"class":4725},[3536,39689,39690],{"class":3557}," '.\u002FAppText'",[3536,39692,4742],{"class":3546},[3536,39694,39695],{"class":3538,"line":7190},[3536,39696,4748],{"emptyLinePlaceholder":4747},[3536,39698,39699,39701,39704,39706,39709],{"class":3538,"line":7203},[3536,39700,13553],{"class":3561},[3536,39702,39703],{"class":3616}," TextFieldProps",[3536,39705,4874],{"class":3546},[3536,39707,39708],{"class":3616},"TextInputProps",[3536,39710,38092],{"class":3546},[3536,39712,39713,39715,39717,39719],{"class":3538,"line":7214},[3536,39714,30979],{"class":3542},[3536,39716,3613],{"class":3546},[3536,39718,3617],{"class":3616},[3536,39720,4742],{"class":3546},[3536,39722,39723,39725,39727,39729],{"class":3538,"line":7220},[3536,39724,31035],{"class":3542},[3536,39726,22858],{"class":3546},[3536,39728,3617],{"class":3616},[3536,39730,4742],{"class":3546},[3536,39732,39733],{"class":3538,"line":7226},[3536,39734,39735],{"class":4573},"  \u002F** Допоміжний текст під полем (коли немає error). *\u002F\n",[3536,39737,39738,39741,39743,39745],{"class":3538,"line":7244},[3536,39739,39740],{"class":3542},"  hint",[3536,39742,22858],{"class":3546},[3536,39744,3617],{"class":3616},[3536,39746,4742],{"class":3546},[3536,39748,39749,39752,39754,39756],{"class":3538,"line":7250},[3536,39750,39751],{"class":3542},"  containerStyle",[3536,39753,22858],{"class":3546},[3536,39755,38590],{"class":3616},[3536,39757,4742],{"class":3546},[3536,39759,39760],{"class":3538,"line":7256},[3536,39761,39762],{"class":4573},"  \u002F** Опційний правий слот (іконка, кнопка дати). *\u002F\n",[3536,39764,39765,39768,39770,39772],{"class":3538,"line":7261},[3536,39766,39767],{"class":3542},"  rightSlot",[3536,39769,22858],{"class":3546},[3536,39771,24501],{"class":3616},[3536,39773,4742],{"class":3546},[3536,39775,39776],{"class":3538,"line":7266},[3536,39777,7681],{"class":3546},[3536,39779,39780],{"class":3538,"line":7803},[3536,39781,4748],{"emptyLinePlaceholder":4747},[3536,39783,39784],{"class":3538,"line":7813},[3536,39785,12004],{"class":4573},[3536,39787,39788],{"class":3538,"line":7823},[3536,39789,39790],{"class":4573}," * Поле форми: label + TextInput + помилка\u002Fпідказка.\n",[3536,39792,39793],{"class":3538,"line":7833},[3536,39794,39795],{"class":4573}," * Контрольоване ззовні (value \u002F onChangeText) — зручно з RHF Controller.\n",[3536,39797,39798],{"class":3538,"line":7843},[3536,39799,12034],{"class":4573},[3536,39801,39802,39804,39806,39809],{"class":3538,"line":7848},[3536,39803,4753],{"class":4725},[3536,39805,4759],{"class":3561},[3536,39807,39808],{"class":3550}," TextField",[3536,39810,4378],{"class":3546},[3536,39812,39813,39815],{"class":3538,"line":7854},[3536,39814,30979],{"class":3542},[3536,39816,4390],{"class":3546},[3536,39818,39819,39821],{"class":3538,"line":7859},[3536,39820,31035],{"class":3542},[3536,39822,4390],{"class":3546},[3536,39824,39825,39827],{"class":3538,"line":7888},[3536,39826,39740],{"class":3542},[3536,39828,4390],{"class":3546},[3536,39830,39831,39833],{"class":3538,"line":7914},[3536,39832,39751],{"class":3542},[3536,39834,4390],{"class":3546},[3536,39836,39837,39839],{"class":3538,"line":7952},[3536,39838,39767],{"class":3542},[3536,39840,4390],{"class":3546},[3536,39842,39843,39845],{"class":3538,"line":8796},[3536,39844,38135],{"class":3542},[3536,39846,4390],{"class":3546},[3536,39848,39849,39851],{"class":3538,"line":8838},[3536,39850,38197],{"class":3546},[3536,39852,39853],{"class":3542},"inputProps\n",[3536,39855,39856,39858,39861],{"class":3538,"line":8877},[3536,39857,27019],{"class":3546},[3536,39859,39860],{"class":3616},"TextFieldProps",[3536,39862,4977],{"class":3546},[3536,39864,39865,39867,39869,39871,39873,39875,39877,39879,39881,39883,39885,39887],{"class":3538,"line":8918},[3536,39866,4770],{"class":3561},[3536,39868,3596],{"class":3546},[3536,39870,12082],{"class":3599},[3536,39872,3755],{"class":3546},[3536,39874,13743],{"class":3599},[3536,39876,3755],{"class":3546},[3536,39878,16927],{"class":3599},[3536,39880,3755],{"class":3546},[3536,39882,37069],{"class":3599},[3536,39884,3602],{"class":3546},[3536,39886,11986],{"class":3550},[3536,39888,7911],{"class":3546},[3536,39890,39891,39893,39895,39897,39899,39901,39903],{"class":3538,"line":8928},[3536,39892,4770],{"class":3561},[3536,39894,31242],{"class":3599},[3536,39896,4874],{"class":3546},[3536,39898,30121],{"class":3550},[3536,39900,3554],{"class":3546},[3536,39902,31251],{"class":3542},[3536,39904,3580],{"class":3546},[3536,39906,39907],{"class":3538,"line":8938},[3536,39908,4748],{"emptyLinePlaceholder":4747},[3536,39910,39911,39913],{"class":3538,"line":8946},[3536,39912,4982],{"class":4725},[3536,39914,4985],{"class":3546},[3536,39916,39917,39919,39921,39923,39925,39927,39929,39931,39933,39935,39937,39939,39941,39943,39945,39947,39950,39952,39954],{"class":3538,"line":8965},[3536,39918,4990],{"class":4309},[3536,39920,4993],{"class":3616},[3536,39922,8041],{"class":4315},[3536,39924,4319],{"class":3546},[3536,39926,4322],{"class":3561},[3536,39928,4894],{"class":3568},[3536,39930,8496],{"class":3542},[3536,39932,3547],{"class":3568},[3536,39934,33292],{"class":3542},[3536,39936,15259],{"class":3568},[3536,39938,10649],{"class":3542},[3536,39940,14219],{"class":3542},[3536,39942,3547],{"class":3568},[3536,39944,14946],{"class":3542},[3536,39946,39495],{"class":3568},[3536,39948,39949],{"class":3542},"containerStyle",[3536,39951,8518],{"class":3568},[3536,39953,3574],{"class":3561},[3536,39955,4352],{"class":4309},[3536,39957,39958,39960,39962,39964,39966,39968,39970,39972,39974,39976,39978,39980,39982],{"class":3538,"line":8993},[3536,39959,5000],{"class":4309},[3536,39961,6704],{"class":3616},[3536,39963,14692],{"class":4315},[3536,39965,4319],{"class":3546},[3536,39967,15020],{"class":3557},[3536,39969,8041],{"class":4315},[3536,39971,4319],{"class":3546},[3536,39973,4322],{"class":3561},[3536,39975,8496],{"class":3542},[3536,39977,3547],{"class":3568},[3536,39979,13617],{"class":3542},[3536,39981,3574],{"class":3561},[3536,39983,4352],{"class":4309},[3536,39985,39986,39988,39990],{"class":3538,"line":8999},[3536,39987,18815],{"class":3561},[3536,39989,13617],{"class":3542},[3536,39991,4476],{"class":3561},[3536,39993,39994,39996,39998],{"class":3538,"line":9032},[3536,39995,8215],{"class":4309},[3536,39997,6704],{"class":3616},[3536,39999,4352],{"class":4309},[3536,40001,40002,40004],{"class":3538,"line":9041},[3536,40003,5000],{"class":4309},[3536,40005,14595],{"class":3616},[3536,40007,40008,40010,40012,40014],{"class":3538,"line":9051},[3536,40009,9080],{"class":4315},[3536,40011,4319],{"class":3546},[3536,40013,4322],{"class":3561},[3536,40015,14607],{"class":3568},[3536,40017,40018,40020,40022,40024],{"class":3538,"line":9059},[3536,40019,14878],{"class":3542},[3536,40021,3547],{"class":3568},[3536,40023,33347],{"class":3542},[3536,40025,4390],{"class":3568},[3536,40027,40028],{"class":3538,"line":9065},[3536,40029,14891],{"class":3568},[3536,40031,40032,40034,40036,40038,40040,40042,40044,40046,40048,40050,40052],{"class":3538,"line":9070},[3536,40033,31728],{"class":3542},[3536,40035,31242],{"class":3542},[3536,40037,12129],{"class":3546},[3536,40039,12168],{"class":3542},[3536,40041,3547],{"class":3568},[3536,40043,31739],{"class":3542},[3536,40045,12135],{"class":3546},[3536,40047,12168],{"class":3542},[3536,40049,3547],{"class":3568},[3536,40051,12655],{"class":3542},[3536,40053,4390],{"class":3568},[3536,40055,40056,40058,40060,40062,40064],{"class":3538,"line":9077},[3536,40057,16117],{"class":3542},[3536,40059,12168],{"class":3542},[3536,40061,3547],{"class":3568},[3536,40063,15451],{"class":3542},[3536,40065,4390],{"class":3568},[3536,40067,40068,40070,40072,40074,40076],{"class":3538,"line":9096},[3536,40069,31766],{"class":3542},[3536,40071,18709],{"class":3542},[3536,40073,3547],{"class":3568},[3536,40075,14224],{"class":3542},[3536,40077,4390],{"class":3568},[3536,40079,40080],{"class":3538,"line":9125},[3536,40081,14968],{"class":3568},[3536,40083,40084,40086],{"class":3538,"line":9130},[3536,40085,14974],{"class":3568},[3536,40087,4476],{"class":3561},[3536,40089,40090],{"class":3538,"line":9163},[3536,40091,8139],{"class":4309},[3536,40093,40094,40096],{"class":3538,"line":9172},[3536,40095,8144],{"class":4309},[3536,40097,40098],{"class":3616},"TextInput\n",[3536,40100,40101,40104,40106,40108,40110,40112,40114],{"class":3538,"line":9181},[3536,40102,40103],{"class":4315},"          placeholderTextColor",[3536,40105,4319],{"class":3546},[3536,40107,4322],{"class":3561},[3536,40109,12082],{"class":3542},[3536,40111,3547],{"class":3568},[3536,40113,12621],{"class":3542},[3536,40115,4476],{"class":3561},[3536,40117,40118,40120,40122,40124],{"class":3538,"line":9186},[3536,40119,15100],{"class":4315},[3536,40121,4319],{"class":3546},[3536,40123,4322],{"class":3561},[3536,40125,14607],{"class":3568},[3536,40127,40128,40130,40132,40134],{"class":3538,"line":9191},[3536,40129,20738],{"class":3542},[3536,40131,3547],{"class":3568},[3536,40133,11021],{"class":3542},[3536,40135,4390],{"class":3568},[3536,40137,40138],{"class":3538,"line":9196},[3536,40139,7174],{"class":3568},[3536,40141,40142,40145,40147,40149,40151],{"class":3538,"line":9215},[3536,40143,40144],{"class":3542},"              color:",[3536,40146,12168],{"class":3542},[3536,40148,3547],{"class":3568},[3536,40150,3993],{"class":3542},[3536,40152,4390],{"class":3568},[3536,40154,40155,40158,40160,40162,40164],{"class":3538,"line":9237},[3536,40156,40157],{"class":3542},"              fontSize:",[3536,40159,36715],{"class":3542},[3536,40161,3547],{"class":3568},[3536,40163,14224],{"class":3542},[3536,40165,4390],{"class":3568},[3536,40167,40168,40171,40173,40175,40177,40179,40181],{"class":3538,"line":9245},[3536,40169,40170],{"class":3542},"              paddingVertical:",[3536,40172,14219],{"class":3542},[3536,40174,3547],{"class":3568},[3536,40176,14286],{"class":3542},[3536,40178,21557],{"class":3546},[3536,40180,9573],{"class":4897},[3536,40182,4390],{"class":3568},[3536,40184,40185,40188,40190,40192,40194],{"class":3538,"line":9256},[3536,40186,40187],{"class":3542},"              paddingHorizontal:",[3536,40189,14219],{"class":3542},[3536,40191,3547],{"class":3568},[3536,40193,14224],{"class":3542},[3536,40195,4390],{"class":3568},[3536,40197,40198],{"class":3538,"line":9267},[3536,40199,20805],{"class":3568},[3536,40201,40202,40204],{"class":3538,"line":9278},[3536,40203,17285],{"class":3542},[3536,40205,4390],{"class":3568},[3536,40207,40208,40210],{"class":3538,"line":9289},[3536,40209,20810],{"class":3568},[3536,40211,4476],{"class":3561},[3536,40213,40214,40216,40218,40221],{"class":3538,"line":9300},[3536,40215,15163],{"class":3561},[3536,40217,38499],{"class":3546},[3536,40219,40220],{"class":3542},"inputProps",[3536,40222,4476],{"class":3561},[3536,40224,40225],{"class":3538,"line":9305},[3536,40226,12358],{"class":4309},[3536,40228,40229,40231,40234],{"class":3538,"line":9313},[3536,40230,18815],{"class":3561},[3536,40232,40233],{"class":3542},"rightSlot",[3536,40235,4476],{"class":3561},[3536,40237,40238,40240,40242],{"class":3538,"line":9322},[3536,40239,8215],{"class":4309},[3536,40241,4993],{"class":3616},[3536,40243,4352],{"class":4309},[3536,40245,40246,40248,40250,40252],{"class":3538,"line":9333},[3536,40247,14246],{"class":3561},[3536,40249,31852],{"class":3542},[3536,40251,12129],{"class":3546},[3536,40253,4985],{"class":3568},[3536,40255,40256,40258,40260,40262,40264,40266,40268,40270,40272,40274,40276,40278,40280],{"class":3538,"line":9343},[3536,40257,8144],{"class":4309},[3536,40259,6704],{"class":3616},[3536,40261,14692],{"class":4315},[3536,40263,4319],{"class":3546},[3536,40265,15020],{"class":3557},[3536,40267,12792],{"class":4315},[3536,40269,4319],{"class":3546},[3536,40271,4322],{"class":3561},[3536,40273,12082],{"class":3542},[3536,40275,3547],{"class":3568},[3536,40277,31739],{"class":3542},[3536,40279,3574],{"class":3561},[3536,40281,4352],{"class":4309},[3536,40283,40284,40286,40288],{"class":3538,"line":9352},[3536,40285,15163],{"class":3561},[3536,40287,31251],{"class":3542},[3536,40289,4476],{"class":3561},[3536,40291,40292,40294,40296],{"class":3538,"line":9362},[3536,40293,10208],{"class":4309},[3536,40295,6704],{"class":3616},[3536,40297,4352],{"class":4309},[3536,40299,40300,40302,40304,40307,40309],{"class":3538,"line":9372},[3536,40301,14521],{"class":3568},[3536,40303,3987],{"class":3546},[3536,40305,40306],{"class":3542}," hint",[3536,40308,12129],{"class":3546},[3536,40310,4985],{"class":3568},[3536,40312,40313,40315,40317,40319,40321,40323,40325,40327,40329,40331,40333,40335,40337],{"class":3538,"line":9377},[3536,40314,8144],{"class":4309},[3536,40316,6704],{"class":3616},[3536,40318,14692],{"class":4315},[3536,40320,4319],{"class":3546},[3536,40322,15020],{"class":3557},[3536,40324,12792],{"class":4315},[3536,40326,4319],{"class":3546},[3536,40328,4322],{"class":3561},[3536,40330,12082],{"class":3542},[3536,40332,3547],{"class":3568},[3536,40334,12621],{"class":3542},[3536,40336,3574],{"class":3561},[3536,40338,4352],{"class":4309},[3536,40340,40341,40343,40346],{"class":3538,"line":9400},[3536,40342,15163],{"class":3561},[3536,40344,40345],{"class":3542},"hint",[3536,40347,4476],{"class":3561},[3536,40349,40350,40352,40354],{"class":3538,"line":9408},[3536,40351,10208],{"class":4309},[3536,40353,6704],{"class":3616},[3536,40355,4352],{"class":4309},[3536,40357,40358,40360,40362],{"class":3538,"line":9419},[3536,40359,14521],{"class":3568},[3536,40361,3987],{"class":3546},[3536,40363,14526],{"class":3561},[3536,40365,40366,40368,40370],{"class":3538,"line":9429},[3536,40367,5063],{"class":4309},[3536,40369,4993],{"class":3616},[3536,40371,4352],{"class":4309},[3536,40373,40374],{"class":3538,"line":9439},[3536,40375,5072],{"class":3546},[3536,40377,40378],{"class":3538,"line":9450},[3536,40379,4476],{"class":3546},[3536,40381,40382],{"class":3538,"line":9461},[3536,40383,4748],{"emptyLinePlaceholder":4747},[3536,40385,40386,40388,40390,40392,40394,40396,40398],{"class":3538,"line":9471},[3536,40387,3593],{"class":3561},[3536,40389,9201],{"class":3599},[3536,40391,4874],{"class":3546},[3536,40393,8266],{"class":3542},[3536,40395,3547],{"class":3546},[3536,40397,9210],{"class":3550},[3536,40399,4378],{"class":3546},[3536,40401,40402,40404],{"class":3538,"line":9476},[3536,40403,33680],{"class":3542},[3536,40405,4547],{"class":3546},[3536,40407,40408,40410,40412],{"class":3538,"line":9505},[3536,40409,18980],{"class":3542},[3536,40411,18983],{"class":3557},[3536,40413,4390],{"class":3546},[3536,40415,40416],{"class":3538,"line":9540},[3536,40417,4579],{"class":3546},[3536,40419,40420,40422],{"class":3538,"line":9560},[3536,40421,32821],{"class":3542},[3536,40423,4547],{"class":3546},[3536,40425,40426,40428,40430],{"class":3538,"line":9568},[3536,40427,9365],{"class":3542},[3536,40429,8112],{"class":3557},[3536,40431,4390],{"class":3546},[3536,40433,40434],{"class":3538,"line":9578},[3536,40435,4579],{"class":3546},[3536,40437,40438,40440],{"class":3538,"line":9588},[3536,40439,33699],{"class":3542},[3536,40441,4547],{"class":3546},[3536,40443,40444,40446,40448],{"class":3538,"line":9597},[3536,40445,16315],{"class":3542},[3536,40447,16318],{"class":3557},[3536,40449,4390],{"class":3546},[3536,40451,40452,40454,40456],{"class":3538,"line":9606},[3536,40453,9618],{"class":3542},[3536,40455,9621],{"class":3557},[3536,40457,4390],{"class":3546},[3536,40459,40460,40462,40464],{"class":3538,"line":9615},[3536,40461,9432],{"class":3542},[3536,40463,9226],{"class":4897},[3536,40465,4390],{"class":3546},[3536,40467,40468,40470,40472],{"class":3538,"line":9626},[3536,40469,30808],{"class":3542},[3536,40471,30811],{"class":3557},[3536,40473,4390],{"class":3546},[3536,40475,40476],{"class":3538,"line":9631},[3536,40477,4579],{"class":3546},[3536,40479,40480,40483],{"class":3538,"line":9651},[3536,40481,40482],{"class":3542},"  input:",[3536,40484,4547],{"class":3546},[3536,40486,40487,40489,40491],{"class":3538,"line":9672},[3536,40488,10665],{"class":3542},[3536,40490,9226],{"class":4897},[3536,40492,4390],{"class":3546},[3536,40494,40495,40497,40499],{"class":3538,"line":9693},[3536,40496,30775],{"class":3542},[3536,40498,32857],{"class":4897},[3536,40500,4390],{"class":3546},[3536,40502,40503],{"class":3538,"line":14653},[3536,40504,4579],{"class":3546},[3536,40506,40507],{"class":3538,"line":14667},[3536,40508,4417],{"class":3546},[3526,40510,40513],{"className":7615,"code":40511,"filename":40512,"language":7617,"meta":3531,"style":3531},"export { AppText } from '.\u002FAppText';\nexport { Button } from '.\u002FButton';\nexport { Screen } from '.\u002FScreen';\nexport { TextField } from '.\u002FTextField';\n","src\u002Fshared\u002Fui\u002Findex.ts",[3533,40514,40515,40531,40548,40565],{"__ignoreMap":3531},[3536,40516,40517,40519,40521,40523,40525,40527,40529],{"class":3538,"line":3539},[3536,40518,4753],{"class":4725},[3536,40520,3596],{"class":3546},[3536,40522,6704],{"class":3542},[3536,40524,4733],{"class":3546},[3536,40526,4736],{"class":4725},[3536,40528,39690],{"class":3557},[3536,40530,4742],{"class":3546},[3536,40532,40533,40535,40537,40539,40541,40543,40546],{"class":3538,"line":4381},[3536,40534,4753],{"class":4725},[3536,40536,3596],{"class":3546},[3536,40538,5021],{"class":3542},[3536,40540,4733],{"class":3546},[3536,40542,4736],{"class":4725},[3536,40544,40545],{"class":3557}," '.\u002FButton'",[3536,40547,4742],{"class":3546},[3536,40549,40550,40552,40554,40556,40558,40560,40563],{"class":3538,"line":4393},[3536,40551,4753],{"class":4725},[3536,40553,3596],{"class":3546},[3536,40555,13581],{"class":3542},[3536,40557,4733],{"class":3546},[3536,40559,4736],{"class":4725},[3536,40561,40562],{"class":3557}," '.\u002FScreen'",[3536,40564,4742],{"class":3546},[3536,40566,40567,40569,40571,40573,40575,40577,40580],{"class":3538,"line":4414},[3536,40568,4753],{"class":4725},[3536,40570,3596],{"class":3546},[3536,40572,26745],{"class":3542},[3536,40574,4733],{"class":3546},[3536,40576,4736],{"class":4725},[3536,40578,40579],{"class":3557}," '.\u002FTextField'",[3536,40581,4742],{"class":3546},[3512,40583,40585],{"id":40584},"як-перевірити","Як перевірити",[3729,40587,40588,40594,40597,40608,40613],{},[3692,40589,40590,40591,40593],{},"Відкрийте поїздку id ",[3533,40592,5192],{}," зі списку — блок Deep link показує URL.",[3692,40595,40596],{},"«Відкрити це посилання» — Router знову веде на деталі.",[3692,40598,40599,40600,40602,40605,40607],{},"На preview\u002Fdev build:",[5211,40601],{},[3533,40603,40604],{},"xcrun simctl openurl booted \"nomad:\u002F\u002Ftrips\u002F1\"",[5211,40606],{},"\nабо adb з тим самим URI.",[3692,40609,40610,40612],{},[3533,40611,6455],{}," → «Поїздку не знайдено».",[3692,40614,40615],{},"Вкладка «Ще» — текст scheme і createURL.",[3512,40617,40619],{"id":40618},"коміт","Коміт",[3526,40621,40623],{"className":6296,"code":40622,"language":6298,"meta":3531,"style":3531},"cd \u002Fpath\u002Fto\u002Fnomad\ngit add -A\ngit commit -m \"$(cat \u003C\u003C'EOF'\nfeat: typed routes and deep link to trip\n\nMaterial: content\u002F15.react-native\u002F13.deep-linking-and-params.md\nEOF\n)\"\ngit push\n",[3533,40624,40625,40632,40643,40665,40670,40674,40679,40684,40689],{"__ignoreMap":3531},[3536,40626,40627,40629],{"class":3538,"line":3539},[3536,40628,7479],{"class":3550},[3536,40630,40631],{"class":3557}," \u002Fpath\u002Fto\u002Fnomad\n",[3536,40633,40634,40637,40640],{"class":3538,"line":4381},[3536,40635,40636],{"class":3550},"git",[3536,40638,40639],{"class":3557}," add",[3536,40641,40642],{"class":3561}," -A\n",[3536,40644,40645,40647,40650,40653,40656,40659,40662],{"class":3538,"line":4393},[3536,40646,40636],{"class":3550},[3536,40648,40649],{"class":3557}," commit",[3536,40651,40652],{"class":3561}," -m",[3536,40654,40655],{"class":3557}," \"$(",[3536,40657,40658],{"class":3550},"cat",[3536,40660,40661],{"class":3546}," \u003C\u003C",[3536,40663,40664],{"class":3557},"'EOF'\n",[3536,40666,40667],{"class":3538,"line":4414},[3536,40668,40669],{"class":3557},"feat: typed routes and deep link to trip\n",[3536,40671,40672],{"class":3538,"line":4470},[3536,40673,4748],{"emptyLinePlaceholder":4747},[3536,40675,40676],{"class":3538,"line":4479},[3536,40677,40678],{"class":3557},"Material: content\u002F15.react-native\u002F13.deep-linking-and-params.md\n",[3536,40680,40681],{"class":3538,"line":4484},[3536,40682,40683],{"class":3557},"EOF\n",[3536,40685,40686],{"class":3538,"line":4490},[3536,40687,40688],{"class":3557},")\"\n",[3536,40690,40691,40693],{"class":3538,"line":7163},[3536,40692,40636],{"class":3550},[3536,40694,40695],{"class":3557}," push\n",[3812,40697],{},[3507,40699,40701],{"id":40700},"практичні-завдання","Практичні завдання",[3512,40703,40705],{"id":40704},"базовий-рівень","Базовий рівень",[3729,40707,40708,40711,40721],{},[3692,40709,40710],{},"Своїми словами: path param vs query.",[3692,40712,40713,40714,40716,40717,40720],{},"Чим ",[3533,40715,5396],{}," відрізняється від ",[3533,40718,40719],{},"https:\u002F\u002F…\u002Ftrips\u002F3"," для користувача без app.",[3692,40722,40723,40724,3547],{},"Навіщо ",[3533,40725,40726],{},"Array.isArray(id) ? id[0] : id",[3512,40728,40730],{"id":40729},"середній-рівень","Середній рівень",[3729,40732,40733,40736,40746],{},[3692,40734,40735],{},"Міні-проєкт «Купон» повністю.",[3692,40737,40738,40739,40742,40743,40745],{},"У Nomad додати query ",[3533,40740,40741],{},"?from=share"," у createURL і показати ",[3533,40744,4736],{}," на деталях.",[3692,40747,40748],{},"Порівняти рядок createURL у Expo Go і (якщо є) у standalone.",[3512,40750,40752],{"id":40751},"професійний-рівень","Професійний рівень",[3729,40754,40755,40765,40768],{},[3692,40756,40757,40758,40761,40762,40764],{},"Чернетка ",[3533,40759,40760],{},"associatedDomains"," + AASA paths для ",[3533,40763,6945],{}," (без обов’язкового деплою).",[3692,40766,40767],{},"Описати cold start: що буде з trips, якщо прибрати mock seed (гіпотетично).",[3692,40769,40770],{},"Список ризиків: відкритий id у URL, enumeration, застарілі посилання.",[3812,40772],{},[3507,40774,40776],{"id":40775},"часті-запитання","Часті запитання",[40778,40779,40780,40789,40799,40807,40811],"accordion",{},[40781,40782,40785,40786,40788],"accordion-item",{"icon":40783,"label":40784},"i-lucide-circle-help","Чому nomad:\u002F\u002F не відкривається в Expo Go?","Go використовує власні exp:\u002F\u002F URL. Для custom scheme надійніше dev\u002Fpreview\u002Fstore build. Params ",[3521,40787,3645],{}," app перевіряйте через push і createURL+openURL.",[40781,40790,40792,40793,40796,40797,3547],{"icon":40783,"label":40791},"createURL дає дивний рядок","У dev це нормально (хост Go \u002F tunnel). Path усередині має містити ",[3533,40794,40795],{},"\u002Ftrips\u002F…",". Залогдайте ",[3533,40798,5981],{},[40781,40800,40802,40803,40806],{"icon":40783,"label":40801},"Universal Links не працюють після config","Потрібні файл на ",[3521,40804,40805],{},"реальному"," HTTPS-домені, правильний Team ID \u002F SHA-256, нова нативна збірка, час на CDN\u002Fкеш AASA. Config у app.json сам по собі недостатній.",[40781,40808,40810],{"icon":40783,"label":40809},"id є, trip undefined","Дані не в store (cold start, інший mock, видалили). Deep link успішний; бракує шару даних — не «Router зламаний».",[40781,40812,40814,40815,40817,40818,40820,40821,40823],{"icon":40783,"label":40813},"typedRoutes свариться на href","Шлях не збігається з деревом ",[3533,40816,5382],{},". Перевірте ",[3533,40819,4150],{}," vs ",[3533,40822,3565],{},", перезапуск TS.",[3812,40825],{},[3507,40827,40829],{"id":40828},"що-далі","Що далі",[3517,40831,40832,40833,3613,40836,40839],{},"Модуль навігації закрито: params, scheme, уявлення про universal links, cold\u002Fwarm start. Далі — ",[3521,40834,40835],{},"мережа й життєвий цикл застосунку",[3533,40837,40838],{},"fetch",", стани помилок, AppState, офлайн-банер — щоб deep link на поїздку міг підвантажити дані не лише з mock.",[3517,40841,40842,17751,40849,17751,40854,17751,40859,17751,40864],{},[40843,40844,40848],"a",{"href":40845,"rel":40846},"https:\u002F\u002Fdocs.expo.dev\u002Flinking\u002Finto-your-app\u002F",[40847],"nofollow","Expo linking",[40843,40850,40853],{"href":40851,"rel":40852},"https:\u002F\u002Fdocs.expo.dev\u002Flinking\u002Fios-universal-links\u002F",[40847],"iOS Universal Links",[40843,40855,40858],{"href":40856,"rel":40857},"https:\u002F\u002Fdocs.expo.dev\u002Flinking\u002Fandroid-app-links\u002F",[40847],"Android App Links",[40843,40860,40863],{"href":40861,"rel":40862},"https:\u002F\u002Fdocs.expo.dev\u002Frouter\u002Freference\u002Furl-parameters\u002F",[40847],"URL parameters",[40843,40865,40868],{"href":40866,"rel":40867},"https:\u002F\u002Fgithub.com\u002Farakviel\u002Fnomad",[40847],"Nomad",[39427,40870,40871],{},"html pre.shiki code .siwwj, html code.shiki .siwwj{--shiki-light:#001080;--shiki-default:#9CDCFE;--shiki-dark:#9CDCFE}html pre.shiki code .sHH4Y, html code.shiki .sHH4Y{--shiki-light:#000000;--shiki-default:#D4D4D4;--shiki-dark:#D4D4D4}html pre.shiki code .s8Opu, html code.shiki .s8Opu{--shiki-light:#795E26;--shiki-default:#DCDCAA;--shiki-dark:#DCDCAA}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 .sD7JJ, html code.shiki .sD7JJ{--shiki-light:#000000FF;--shiki-default:#D4D4D4;--shiki-dark:#D4D4D4}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 .s-QsJ, html code.shiki .s-QsJ{--shiki-light:#0070C1;--shiki-default:#4FC1FF;--shiki-dark:#4FC1FF}html pre.shiki code .sN1BT, html code.shiki .sN1BT{--shiki-light:#267F99;--shiki-default:#4EC9B0;--shiki-dark:#4EC9B0}html pre.shiki code .s0P7L, html code.shiki .s0P7L{--shiki-light:#800000;--shiki-default:#808080;--shiki-dark:#808080}html pre.shiki code .sa4r_, html code.shiki .sa4r_{--shiki-light:#E50000;--shiki-default:#9CDCFE;--shiki-dark:#9CDCFE}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 .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":3531,"searchDepth":4381,"depth":4381,"links":40873},[40874,40878,40885,40889,40898,40906,40914,40915,40916,40917,40922,40930,40937,40938,40946,40947,40948,40958,40977,40984,40989,40990],{"id":3509,"depth":4381,"text":3510,"children":40875},[40876,40877],{"id":3514,"depth":4393,"text":3515},{"id":3649,"depth":4393,"text":3650},{"id":3816,"depth":4381,"text":3817,"children":40879},[40880,40882,40884],{"id":3829,"depth":4393,"text":40881},"1. Динамічний сегмент шляху (path \u002F route param)",{"id":3962,"depth":4393,"text":40883},"2. Query-параметри (search \u002F query params)",{"id":4019,"depth":4393,"text":4020},{"id":4125,"depth":4381,"text":40886,"children":40887},"Файл [id].tsx і шлях",[40888],{"id":4225,"depth":4393,"text":4226},{"id":4254,"depth":4381,"text":40890,"children":40891},"Як передати параметри",[40892,40894,40896,40897],{"id":4262,"depth":4393,"text":40893},"Спосіб A. Рядок у href \u002F push (найнаочніший)",{"id":4358,"depth":4393,"text":40895},"Спосіб B. Об’єкт { pathname, params }",{"id":4601,"depth":4393,"text":4602},{"id":4647,"depth":4393,"text":4648},{"id":4699,"depth":4381,"text":40899,"children":40900},"Як прочитати параметри: useLocalSearchParams",[40901,40902,40904,40905],{"id":4708,"depth":4393,"text":4709},{"id":4816,"depth":4393,"text":40903},"Чому string | string[] і нормалізація",{"id":4921,"depth":4393,"text":4922},{"id":5082,"depth":4393,"text":5083},{"id":5144,"depth":4381,"text":5145,"children":40907},[40908,40909,40910,40911,40912,40913],{"id":5154,"depth":4393,"text":5155},{"id":5167,"depth":4393,"text":5168},{"id":5182,"depth":4393,"text":5183},{"id":5198,"depth":4393,"text":5199},{"id":5221,"depth":4393,"text":5222},{"id":5228,"depth":4393,"text":5229},{"id":5259,"depth":4381,"text":5260},{"id":5320,"depth":4381,"text":5321},{"id":5351,"depth":4381,"text":5352},{"id":5432,"depth":4381,"text":5433,"children":40918},[40919,40920,40921],{"id":5436,"depth":4393,"text":5437},{"id":5546,"depth":4393,"text":5547},{"id":5685,"depth":4393,"text":5686},{"id":5774,"depth":4381,"text":40923,"children":40924},"Пакет expo-linking",[40925,40926,40927,40928],{"id":5801,"depth":4393,"text":5804},{"id":5978,"depth":4393,"text":5981},{"id":6040,"depth":4393,"text":6043},{"id":6119,"depth":4393,"text":40929},"Linking.useURL() \u002F події",{"id":6195,"depth":4381,"text":6196,"children":40931},[40932,40934,40935,40936],{"id":6199,"depth":4393,"text":40933},"1. Переконайтесь, що scheme у конфігу",{"id":6214,"depth":4393,"text":6215},{"id":6286,"depth":4393,"text":6287},{"id":6421,"depth":4393,"text":6422},{"id":6460,"depth":4381,"text":6461},{"id":6542,"depth":4381,"text":6543,"children":40939},[40940,40941,40942,40943,40944,40945],{"id":6553,"depth":4393,"text":6554},{"id":6560,"depth":4393,"text":6561},{"id":6570,"depth":4393,"text":6571},{"id":6582,"depth":4393,"text":6583},{"id":6595,"depth":4393,"text":6596},{"id":6605,"depth":4393,"text":6606},{"id":6624,"depth":4381,"text":6625},{"id":6691,"depth":4381,"text":6692},{"id":6726,"depth":4381,"text":6727,"children":40949},[40950,40951,40952,40953,40954,40955,40956,40957],{"id":6780,"depth":4393,"text":6781},{"id":6861,"depth":4393,"text":6862},{"id":6892,"depth":4393,"text":6893},{"id":6952,"depth":4393,"text":6953},{"id":6998,"depth":4393,"text":6999},{"id":7018,"depth":4393,"text":7019},{"id":7277,"depth":4393,"text":7278},{"id":7326,"depth":4393,"text":7327},{"id":7382,"depth":4381,"text":7383,"children":40959},[40960,40961,40962,40963,40964,40965,40966,40967,40968,40969,40971,40973,40975,40976],{"id":7386,"depth":4393,"text":7387},{"id":7403,"depth":4393,"text":7404},{"id":7435,"depth":4393,"text":7436},{"id":7445,"depth":4393,"text":7446},{"id":7451,"depth":4393,"text":7452},{"id":7485,"depth":4393,"text":7486},{"id":7542,"depth":4393,"text":7543},{"id":7583,"depth":4393,"text":7584},{"id":7601,"depth":4393,"text":7602},{"id":7957,"depth":4393,"text":40970},"Крок 3. app\u002F_layout.tsx",{"id":8235,"depth":4393,"text":40972},"Крок 4. Головна — app\u002Findex.tsx",{"id":9698,"depth":4393,"text":40974},"Крок 5. Екран купона — app\u002Fcoupon\u002F[code].tsx",{"id":10982,"depth":4393,"text":10983},{"id":11010,"depth":4393,"text":11011},{"id":11061,"depth":4381,"text":11062,"children":40978},[40979,40980,40981,40982,40983],{"id":11065,"depth":4393,"text":11066},{"id":11079,"depth":4393,"text":11080},{"id":11119,"depth":4393,"text":11120},{"id":40584,"depth":4393,"text":40585},{"id":40618,"depth":4393,"text":40619},{"id":40700,"depth":4381,"text":40701,"children":40985},[40986,40987,40988],{"id":40704,"depth":4393,"text":40705},{"id":40729,"depth":4393,"text":40730},{"id":40751,"depth":4393,"text":40752},{"id":40775,"depth":4381,"text":40776},{"id":40828,"depth":4381,"text":40829},"Параметри в Expo Router — динамічні сегменти, query, useLocalSearchParams; scheme, universal links і cold start",null,{},{"title":3416,"description":40991},"EvzRv1hZZz6eMNSfxJCEfcfL321bFgLGLukAJ0ca9wI",[40997,40999],{"title":3412,"path":3413,"stem":3414,"description":40998,"children":-1},"Stack усередині Tabs, presentation modal, групи auth, guard на back — нотатки з модалкою і деталі поїздки в Nomad",{"title":3420,"path":3421,"stem":3422,"description":41000,"children":-1},"Глибоке розуміння fetch та axios у React Native, обробка помилок мережі, відстеження стану мережі (NetInfo) та стану застосунку (AppState)",1785915324883]