@papyrus-sdk/engine-native 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/android/build.gradle +40 -40
  2. package/android/src/main/AndroidManifest.xml +3 -3
  3. package/android/src/main/java/com/papyrus/engine/PapyrusEngineStore.java +71 -71
  4. package/android/src/main/java/com/papyrus/engine/PapyrusNativeEngineModule.java +529 -529
  5. package/android/src/main/java/com/papyrus/engine/PapyrusNativeEngineModule.kt +540 -0
  6. package/android/src/main/java/com/papyrus/engine/PapyrusOutline.java +20 -20
  7. package/android/src/main/java/com/papyrus/engine/PapyrusOutlineItem.java +13 -13
  8. package/android/src/main/java/com/papyrus/engine/PapyrusPackage.java +24 -24
  9. package/android/src/main/java/com/papyrus/engine/PapyrusPageView.java +86 -86
  10. package/android/src/main/java/com/papyrus/engine/PapyrusPageViewManager.java +16 -16
  11. package/android/src/main/java/com/papyrus/engine/PapyrusPageViewModule.kt +12 -0
  12. package/android/src/main/java/com/papyrus/engine/PapyrusTextHit.java +15 -15
  13. package/android/src/main/java/com/papyrus/engine/PapyrusTextSearch.java +20 -20
  14. package/android/src/main/java/com/papyrus/engine/PapyrusTextSelect.java +20 -20
  15. package/android/src/main/java/com/papyrus/engine/PapyrusTextSelection.java +11 -11
  16. package/dist/index.d.mts +95 -7
  17. package/dist/index.d.ts +95 -7
  18. package/dist/index.js +683 -12
  19. package/dist/index.js.map +1 -1
  20. package/dist/index.mjs +684 -13
  21. package/dist/index.mjs.map +1 -1
  22. package/ios/PapyrusNativeEngine.m +447 -372
  23. package/ios/PapyrusNativeEngine.podspec +15 -15
  24. package/ios/PapyrusPageView.h +19 -16
  25. package/ios/PapyrusPageView.m +63 -54
  26. package/ios/PapyrusPageViewManager.m +19 -19
  27. package/package.json +11 -7
  28. package/react-native.config.js +10 -10
  29. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/query/client-agp/cache-v2 +0 -0
  30. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/query/client-agp/cmakeFiles-v1 +0 -0
  31. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/query/client-agp/codemodel-v2 +0 -0
  32. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/reply/cache-v2-55a2e41fcdfef7f23046.json +0 -1323
  33. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/reply/cmakeFiles-v1-ce719ceafe10fdc060d9.json +0 -184
  34. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/reply/codemodel-v2-ba59984c0779dea51592.json +0 -60
  35. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json +0 -14
  36. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/reply/index-2025-12-22T13-33-34-0909.json +0 -92
  37. package/android/.cxx/Debug/6t29645j/arm64-v8a/.cmake/api/v1/reply/target-papyrus_text-Debug-29cd4996bc13fe24a65c.json +0 -168
  38. package/android/.cxx/Debug/6t29645j/arm64-v8a/.ninja_deps +0 -0
  39. package/android/.cxx/Debug/6t29645j/arm64-v8a/.ninja_log +0 -20
  40. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeCache.txt +0 -400
  41. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCCompiler.cmake +0 -72
  42. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCXXCompiler.cmake +0 -83
  43. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_C.bin +0 -0
  44. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_CXX.bin +0 -0
  45. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeSystem.cmake +0 -15
  46. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.c +0 -803
  47. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.o +0 -0
  48. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.cpp +0 -791
  49. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.o +0 -0
  50. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/CMakeOutput.log +0 -264
  51. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/TargetDirectories.txt +0 -3
  52. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/cmake.check_cache +0 -1
  53. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/papyrus_text.dir/papyrus_outline.cpp.o +0 -0
  54. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/papyrus_text.dir/papyrus_text_search.cpp.o +0 -0
  55. package/android/.cxx/Debug/6t29645j/arm64-v8a/CMakeFiles/rules.ninja +0 -64
  56. package/android/.cxx/Debug/6t29645j/arm64-v8a/additional_project_files.txt +0 -0
  57. package/android/.cxx/Debug/6t29645j/arm64-v8a/android_gradle_build.json +0 -38
  58. package/android/.cxx/Debug/6t29645j/arm64-v8a/android_gradle_build_mini.json +0 -27
  59. package/android/.cxx/Debug/6t29645j/arm64-v8a/build.ninja +0 -158
  60. package/android/.cxx/Debug/6t29645j/arm64-v8a/build_file_index.txt +0 -1
  61. package/android/.cxx/Debug/6t29645j/arm64-v8a/cmake_install.cmake +0 -54
  62. package/android/.cxx/Debug/6t29645j/arm64-v8a/compile_commands.json +0 -12
  63. package/android/.cxx/Debug/6t29645j/arm64-v8a/compile_commands.json.bin +0 -0
  64. package/android/.cxx/Debug/6t29645j/arm64-v8a/configure_fingerprint.bin +0 -28
  65. package/android/.cxx/Debug/6t29645j/arm64-v8a/metadata_generation_command.txt +0 -19
  66. package/android/.cxx/Debug/6t29645j/arm64-v8a/prefab_config.json +0 -4
  67. package/android/.cxx/Debug/6t29645j/arm64-v8a/symbol_folder_index.txt +0 -1
  68. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/query/client-agp/cache-v2 +0 -0
  69. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/query/client-agp/cmakeFiles-v1 +0 -0
  70. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/query/client-agp/codemodel-v2 +0 -0
  71. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/reply/cache-v2-7f933b968e76d6ce336c.json +0 -1323
  72. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/reply/cmakeFiles-v1-439d2bc9e04bf2a43452.json +0 -184
  73. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/reply/codemodel-v2-efc4cfee3dc3a5ec05be.json +0 -60
  74. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json +0 -14
  75. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/reply/index-2025-12-22T13-33-36-0881.json +0 -92
  76. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.cmake/api/v1/reply/target-papyrus_text-Debug-e3f83458cbaf3644c279.json +0 -168
  77. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.ninja_deps +0 -0
  78. package/android/.cxx/Debug/6t29645j/armeabi-v7a/.ninja_log +0 -20
  79. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeCache.txt +0 -400
  80. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCCompiler.cmake +0 -72
  81. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCXXCompiler.cmake +0 -83
  82. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_C.bin +0 -0
  83. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_CXX.bin +0 -0
  84. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CMakeSystem.cmake +0 -15
  85. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.c +0 -803
  86. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.o +0 -0
  87. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.cpp +0 -791
  88. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.o +0 -0
  89. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/CMakeOutput.log +0 -268
  90. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/TargetDirectories.txt +0 -3
  91. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/cmake.check_cache +0 -1
  92. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/papyrus_text.dir/papyrus_outline.cpp.o +0 -0
  93. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/papyrus_text.dir/papyrus_text_search.cpp.o +0 -0
  94. package/android/.cxx/Debug/6t29645j/armeabi-v7a/CMakeFiles/rules.ninja +0 -64
  95. package/android/.cxx/Debug/6t29645j/armeabi-v7a/additional_project_files.txt +0 -0
  96. package/android/.cxx/Debug/6t29645j/armeabi-v7a/android_gradle_build.json +0 -38
  97. package/android/.cxx/Debug/6t29645j/armeabi-v7a/android_gradle_build_mini.json +0 -27
  98. package/android/.cxx/Debug/6t29645j/armeabi-v7a/build.ninja +0 -158
  99. package/android/.cxx/Debug/6t29645j/armeabi-v7a/build_file_index.txt +0 -1
  100. package/android/.cxx/Debug/6t29645j/armeabi-v7a/cmake_install.cmake +0 -54
  101. package/android/.cxx/Debug/6t29645j/armeabi-v7a/compile_commands.json +0 -12
  102. package/android/.cxx/Debug/6t29645j/armeabi-v7a/compile_commands.json.bin +0 -0
  103. package/android/.cxx/Debug/6t29645j/armeabi-v7a/configure_fingerprint.bin +0 -28
  104. package/android/.cxx/Debug/6t29645j/armeabi-v7a/metadata_generation_command.txt +0 -19
  105. package/android/.cxx/Debug/6t29645j/armeabi-v7a/prefab_config.json +0 -4
  106. package/android/.cxx/Debug/6t29645j/armeabi-v7a/symbol_folder_index.txt +0 -1
  107. package/android/.cxx/Debug/6t29645j/hash_key.txt +0 -26
  108. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/query/client-agp/cache-v2 +0 -0
  109. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/query/client-agp/cmakeFiles-v1 +0 -0
  110. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/query/client-agp/codemodel-v2 +0 -0
  111. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/reply/cache-v2-921e99e188641cccb611.json +0 -1323
  112. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/reply/cmakeFiles-v1-842a746390c683135141.json +0 -184
  113. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/reply/codemodel-v2-5a1f9507fc5ae29259c9.json +0 -60
  114. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json +0 -14
  115. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/reply/index-2025-12-22T13-33-37-0961.json +0 -92
  116. package/android/.cxx/Debug/6t29645j/x86/.cmake/api/v1/reply/target-papyrus_text-Debug-3cc07532ad82ada3b95c.json +0 -168
  117. package/android/.cxx/Debug/6t29645j/x86/.ninja_deps +0 -0
  118. package/android/.cxx/Debug/6t29645j/x86/.ninja_log +0 -20
  119. package/android/.cxx/Debug/6t29645j/x86/CMakeCache.txt +0 -400
  120. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCCompiler.cmake +0 -72
  121. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCXXCompiler.cmake +0 -83
  122. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_C.bin +0 -0
  123. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_CXX.bin +0 -0
  124. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CMakeSystem.cmake +0 -15
  125. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.c +0 -803
  126. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.o +0 -0
  127. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.cpp +0 -791
  128. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.o +0 -0
  129. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/CMakeOutput.log +0 -258
  130. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/TargetDirectories.txt +0 -3
  131. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/cmake.check_cache +0 -1
  132. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/papyrus_text.dir/papyrus_outline.cpp.o +0 -0
  133. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/papyrus_text.dir/papyrus_text_search.cpp.o +0 -0
  134. package/android/.cxx/Debug/6t29645j/x86/CMakeFiles/rules.ninja +0 -64
  135. package/android/.cxx/Debug/6t29645j/x86/additional_project_files.txt +0 -0
  136. package/android/.cxx/Debug/6t29645j/x86/android_gradle_build.json +0 -38
  137. package/android/.cxx/Debug/6t29645j/x86/android_gradle_build_mini.json +0 -27
  138. package/android/.cxx/Debug/6t29645j/x86/build.ninja +0 -158
  139. package/android/.cxx/Debug/6t29645j/x86/build_file_index.txt +0 -1
  140. package/android/.cxx/Debug/6t29645j/x86/cmake_install.cmake +0 -54
  141. package/android/.cxx/Debug/6t29645j/x86/compile_commands.json +0 -12
  142. package/android/.cxx/Debug/6t29645j/x86/compile_commands.json.bin +0 -0
  143. package/android/.cxx/Debug/6t29645j/x86/configure_fingerprint.bin +0 -28
  144. package/android/.cxx/Debug/6t29645j/x86/metadata_generation_command.txt +0 -19
  145. package/android/.cxx/Debug/6t29645j/x86/prefab_config.json +0 -4
  146. package/android/.cxx/Debug/6t29645j/x86/symbol_folder_index.txt +0 -1
  147. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/query/client-agp/cache-v2 +0 -0
  148. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/query/client-agp/cmakeFiles-v1 +0 -0
  149. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/query/client-agp/codemodel-v2 +0 -0
  150. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/reply/cache-v2-de693df49d051882903b.json +0 -1323
  151. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/reply/cmakeFiles-v1-8206847cf10ce80b1459.json +0 -184
  152. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/reply/codemodel-v2-ad9301b1a16c83f532c2.json +0 -60
  153. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/reply/directory-.-Debug-d0094a50bb2071803777.json +0 -14
  154. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/reply/index-2025-12-22T13-33-39-0005.json +0 -92
  155. package/android/.cxx/Debug/6t29645j/x86_64/.cmake/api/v1/reply/target-papyrus_text-Debug-e1bb1d27c41dc820b379.json +0 -168
  156. package/android/.cxx/Debug/6t29645j/x86_64/.ninja_deps +0 -0
  157. package/android/.cxx/Debug/6t29645j/x86_64/.ninja_log +0 -20
  158. package/android/.cxx/Debug/6t29645j/x86_64/CMakeCache.txt +0 -400
  159. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCCompiler.cmake +0 -72
  160. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CMakeCXXCompiler.cmake +0 -83
  161. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_C.bin +0 -0
  162. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CMakeDetermineCompilerABI_CXX.bin +0 -0
  163. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CMakeSystem.cmake +0 -15
  164. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.c +0 -803
  165. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdC/CMakeCCompilerId.o +0 -0
  166. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.cpp +0 -791
  167. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/3.22.1-g37088a8-dirty/CompilerIdCXX/CMakeCXXCompilerId.o +0 -0
  168. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/CMakeOutput.log +0 -258
  169. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/TargetDirectories.txt +0 -3
  170. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/cmake.check_cache +0 -1
  171. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/papyrus_text.dir/papyrus_outline.cpp.o +0 -0
  172. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/papyrus_text.dir/papyrus_text_search.cpp.o +0 -0
  173. package/android/.cxx/Debug/6t29645j/x86_64/CMakeFiles/rules.ninja +0 -64
  174. package/android/.cxx/Debug/6t29645j/x86_64/additional_project_files.txt +0 -0
  175. package/android/.cxx/Debug/6t29645j/x86_64/android_gradle_build.json +0 -38
  176. package/android/.cxx/Debug/6t29645j/x86_64/android_gradle_build_mini.json +0 -27
  177. package/android/.cxx/Debug/6t29645j/x86_64/build.ninja +0 -158
  178. package/android/.cxx/Debug/6t29645j/x86_64/build_file_index.txt +0 -1
  179. package/android/.cxx/Debug/6t29645j/x86_64/cmake_install.cmake +0 -54
  180. package/android/.cxx/Debug/6t29645j/x86_64/compile_commands.json +0 -12
  181. package/android/.cxx/Debug/6t29645j/x86_64/compile_commands.json.bin +0 -0
  182. package/android/.cxx/Debug/6t29645j/x86_64/configure_fingerprint.bin +0 -28
  183. package/android/.cxx/Debug/6t29645j/x86_64/metadata_generation_command.txt +0 -19
  184. package/android/.cxx/Debug/6t29645j/x86_64/prefab_config.json +0 -4
  185. package/android/.cxx/Debug/6t29645j/x86_64/symbol_folder_index.txt +0 -1
  186. package/android/.cxx/tools/debug/arm64-v8a/compile_commands.json +0 -12
  187. package/android/.cxx/tools/debug/armeabi-v7a/compile_commands.json +0 -12
  188. package/android/.cxx/tools/debug/x86/compile_commands.json +0 -12
  189. package/android/.cxx/tools/debug/x86_64/compile_commands.json +0 -12
  190. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/results.bin +0 -1
  191. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/android/support/v4/util/ArrayMap.dex +0 -0
  192. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/BuildConfig.dex +0 -0
  193. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusEngineStore$EngineState.dex +0 -0
  194. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusEngineStore.dex +0 -0
  195. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusNativeEngineModule$1.dex +0 -0
  196. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusNativeEngineModule.dex +0 -0
  197. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusOutline.dex +0 -0
  198. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusOutlineItem.dex +0 -0
  199. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusPackage.dex +0 -0
  200. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusPageView.dex +0 -0
  201. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusPageViewManager.dex +0 -0
  202. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusTextHit.dex +0 -0
  203. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusTextSearch.dex +0 -0
  204. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusTextSelect.dex +0 -0
  205. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/papyrus/engine/PapyrusTextSelection.dex +0 -0
  206. package/android/build/.transforms/2a70e7e4bf5a7ddacb39b95e5520ae88/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  207. package/android/build/.transforms/b336bac6032a9c6be0544a913e5a030c/results.bin +0 -1
  208. package/android/build/.transforms/b336bac6032a9c6be0544a913e5a030c/transformed/classes/classes_dex/classes.dex +0 -0
  209. package/android/build/generated/source/buildConfig/debug/com/papyrus/engine/BuildConfig.java +0 -10
  210. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -7
  211. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
  212. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
  213. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  214. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  215. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  216. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  217. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/build_command_papyrus_text.bat +0 -5
  218. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/build_model.json +0 -186
  219. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/build_stderr_papyrus_text.txt +0 -0
  220. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/build_stdout_papyrus_text.txt +0 -2
  221. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/generate_cxx_metadata_157_timing.txt +0 -8
  222. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/generate_cxx_metadata_167_timing.txt +0 -8
  223. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/generate_cxx_metadata_168_timing.txt +0 -14
  224. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/generate_cxx_metadata_172_timing.txt +0 -8
  225. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/generate_cxx_metadata_2919_timing.txt +0 -6
  226. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/generate_cxx_metadata_3311_timing.txt +0 -3
  227. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/generate_cxx_metadata_450_timing.txt +0 -3
  228. package/android/build/intermediates/cxx/Debug/6t29645j/logs/arm64-v8a/metadata_generation_record.json +0 -41
  229. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/build_command_papyrus_text.bat +0 -5
  230. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/build_model.json +0 -186
  231. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/build_stderr_papyrus_text.txt +0 -0
  232. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/build_stdout_papyrus_text.txt +0 -2
  233. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/generate_cxx_metadata_158_timing.txt +0 -6
  234. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/generate_cxx_metadata_160_timing.txt +0 -6
  235. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/generate_cxx_metadata_164_timing.txt +0 -6
  236. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/generate_cxx_metadata_168_timing.txt +0 -6
  237. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/generate_cxx_metadata_2922_timing.txt +0 -6
  238. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/generate_cxx_metadata_3311_timing.txt +0 -3
  239. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/generate_cxx_metadata_450_timing.txt +0 -3
  240. package/android/build/intermediates/cxx/Debug/6t29645j/logs/armeabi-v7a/metadata_generation_record.json +0 -41
  241. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/build_command_papyrus_text.bat +0 -5
  242. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/build_model.json +0 -186
  243. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/build_stderr_papyrus_text.txt +0 -0
  244. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/build_stdout_papyrus_text.txt +0 -2
  245. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/generate_cxx_metadata_160_timing.txt +0 -5
  246. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/generate_cxx_metadata_164_timing.txt +0 -3
  247. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/generate_cxx_metadata_168_timing.txt +0 -6
  248. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/generate_cxx_metadata_170_timing.txt +0 -6
  249. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/generate_cxx_metadata_2907_timing.txt +0 -6
  250. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/generate_cxx_metadata_3311_timing.txt +0 -3
  251. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/generate_cxx_metadata_450_timing.txt +0 -3
  252. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86/metadata_generation_record.json +0 -41
  253. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/build_command_papyrus_text.bat +0 -5
  254. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/build_model.json +0 -186
  255. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/build_stderr_papyrus_text.txt +0 -0
  256. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/build_stdout_papyrus_text.txt +0 -2
  257. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/generate_cxx_metadata_155_timing.txt +0 -6
  258. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/generate_cxx_metadata_160_timing.txt +0 -6
  259. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/generate_cxx_metadata_164_timing.txt +0 -3
  260. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/generate_cxx_metadata_168_timing.txt +0 -6
  261. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/generate_cxx_metadata_2916_timing.txt +0 -6
  262. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/generate_cxx_metadata_3311_timing.txt +0 -5
  263. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/generate_cxx_metadata_450_timing.txt +0 -6
  264. package/android/build/intermediates/cxx/Debug/6t29645j/logs/x86_64/metadata_generation_record.json +0 -41
  265. package/android/build/intermediates/cxx/Debug/6t29645j/obj/arm64-v8a/libpapyrus_text.so +0 -0
  266. package/android/build/intermediates/cxx/Debug/6t29645j/obj/armeabi-v7a/libpapyrus_text.so +0 -0
  267. package/android/build/intermediates/cxx/Debug/6t29645j/obj/x86/libpapyrus_text.so +0 -0
  268. package/android/build/intermediates/cxx/Debug/6t29645j/obj/x86_64/libpapyrus_text.so +0 -0
  269. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
  270. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
  271. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  272. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  273. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +0 -2
  274. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/android/support/v4/util/ArrayMap.class +0 -0
  275. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/BuildConfig.class +0 -0
  276. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusEngineStore$EngineState.class +0 -0
  277. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusEngineStore.class +0 -0
  278. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusNativeEngineModule$1.class +0 -0
  279. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusNativeEngineModule.class +0 -0
  280. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusOutline.class +0 -0
  281. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusOutlineItem.class +0 -0
  282. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusPackage.class +0 -0
  283. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusPageView.class +0 -0
  284. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusPageViewManager.class +0 -0
  285. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusTextHit.class +0 -0
  286. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusTextSearch.class +0 -0
  287. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusTextSelect.class +0 -0
  288. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/papyrus/engine/PapyrusTextSelection.class +0 -0
  289. package/android/build/intermediates/library_jni/debug/copyDebugJniLibsProjectOnly/jni/arm64-v8a/libpapyrus_text.so +0 -0
  290. package/android/build/intermediates/library_jni/debug/copyDebugJniLibsProjectOnly/jni/armeabi-v7a/libpapyrus_text.so +0 -0
  291. package/android/build/intermediates/library_jni/debug/copyDebugJniLibsProjectOnly/jni/x86/libpapyrus_text.so +0 -0
  292. package/android/build/intermediates/library_jni/debug/copyDebugJniLibsProjectOnly/jni/x86_64/libpapyrus_text.so +0 -0
  293. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -2
  294. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -7
  295. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -7
  296. package/android/build/intermediates/merged_native_libs/debug/mergeDebugNativeLibs/out/lib/arm64-v8a/libpapyrus_text.so +0 -0
  297. package/android/build/intermediates/merged_native_libs/debug/mergeDebugNativeLibs/out/lib/armeabi-v7a/libpapyrus_text.so +0 -0
  298. package/android/build/intermediates/merged_native_libs/debug/mergeDebugNativeLibs/out/lib/x86/libpapyrus_text.so +0 -0
  299. package/android/build/intermediates/merged_native_libs/debug/mergeDebugNativeLibs/out/lib/x86_64/libpapyrus_text.so +0 -0
  300. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
  301. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
  302. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/android/support/v4/util/ArrayMap.class +0 -0
  303. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/BuildConfig.class +0 -0
  304. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusEngineStore$EngineState.class +0 -0
  305. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusEngineStore.class +0 -0
  306. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusNativeEngineModule$1.class +0 -0
  307. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusNativeEngineModule.class +0 -0
  308. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusOutline.class +0 -0
  309. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusOutlineItem.class +0 -0
  310. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusPackage.class +0 -0
  311. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusPageView.class +0 -0
  312. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusPageViewManager.class +0 -0
  313. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusTextHit.class +0 -0
  314. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusTextSearch.class +0 -0
  315. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusTextSelect.class +0 -0
  316. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/papyrus/engine/PapyrusTextSelection.class +0 -0
  317. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  318. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -1
  319. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -17
  320. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/PapyrusNativeEngineModule$1.class.uniqueId2 +0 -0
  321. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/PapyrusNativeEngineModule.class.uniqueId1 +0 -0
  322. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/PapyrusPackage.class.uniqueId0 +0 -0
  323. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
package/dist/index.mjs CHANGED
@@ -1,8 +1,270 @@
1
1
  // index.ts
2
- import { NativeModules, requireNativeComponent } from "react-native";
3
- import { BaseDocumentEngine } from "@papyrus-sdk/core";
2
+ import { View } from "react-native";
3
+
4
+ // ../../node_modules/expo-modules-core/src/ensureNativeModulesAreInstalled.ts
5
+ import { NativeModules, Platform } from "react-native";
6
+
7
+ // ../../node_modules/expo-modules-core/src/web/index.ts
8
+ function registerWebGlobals() {
9
+ }
10
+
11
+ // ../../node_modules/expo-modules-core/src/ensureNativeModulesAreInstalled.ts
12
+ function ensureNativeModulesAreInstalled() {
13
+ if (globalThis.expo) {
14
+ return;
15
+ }
16
+ try {
17
+ if (Platform.OS === "web") {
18
+ registerWebGlobals();
19
+ } else {
20
+ NativeModules.ExpoModulesCore?.installModules();
21
+ }
22
+ } catch (error) {
23
+ console.error(`Unable to install Expo modules: ${error}`);
24
+ }
25
+ }
26
+
27
+ // ../../node_modules/expo-modules-core/src/NativeModulesProxy.ts
28
+ var NativeModulesProxy_default = {};
29
+
30
+ // ../../node_modules/expo-modules-core/src/errors/CodedError.ts
31
+ var CodedError = class extends Error {
32
+ constructor(code, message) {
33
+ super(message);
34
+ this.code = code;
35
+ }
36
+ };
37
+
38
+ // ../../node_modules/expo-modules-core/src/Platform.ts
39
+ import { Platform as ReactNativePlatform } from "react-native";
40
+
41
+ // ../../node_modules/expo-modules-core/src/environment/browser.ts
42
+ var isDOMAvailable = false;
43
+ var canUseEventListeners = false;
44
+ var canUseViewport = false;
45
+ var isAsyncDebugging = false;
46
+ if (__DEV__) {
47
+ isAsyncDebugging = !global.nativeExtensions && !global.nativeCallSyncHook && !global.RN$Bridgeless;
48
+ }
49
+
50
+ // ../../node_modules/expo-modules-core/src/Platform.ts
51
+ if (__DEV__ && typeof process.env.EXPO_OS === "undefined") {
52
+ console.warn(
53
+ `The global process.env.EXPO_OS is not defined. This should be inlined by babel-preset-expo during transformation.`
54
+ );
55
+ }
56
+ var nativeSelect = typeof window !== "undefined" ? ReactNativePlatform.select : (
57
+ // process.env.EXPO_OS is injected by `babel-preset-expo` and available in both client and `react-server` environments.
58
+ // Opt to use the env var when possible, and fallback to the React Native Platform module when it's not (arbitrary bundlers and transformers).
59
+ function select(specifics) {
60
+ if (!process.env.EXPO_OS) return void 0;
61
+ if (specifics.hasOwnProperty(process.env.EXPO_OS)) {
62
+ return specifics[process.env.EXPO_OS];
63
+ } else if (process.env.EXPO_OS !== "web" && specifics.hasOwnProperty("native")) {
64
+ return specifics.native;
65
+ } else if (specifics.hasOwnProperty("default")) {
66
+ return specifics.default;
67
+ }
68
+ return void 0;
69
+ }
70
+ );
71
+ var Platform2 = {
72
+ /**
73
+ * Denotes the currently running platform.
74
+ * Can be one of ios, android, web.
75
+ */
76
+ OS: process.env.EXPO_OS || ReactNativePlatform.OS,
77
+ /**
78
+ * Returns the value with the matching platform.
79
+ * Object keys can be any of ios, android, native, web, default.
80
+ *
81
+ * @ios ios, native, default
82
+ * @android android, native, default
83
+ * @web web, default
84
+ */
85
+ select: nativeSelect,
86
+ /**
87
+ * Denotes if the DOM API is available in the current environment.
88
+ * The DOM is not available in native React runtimes and Node.js.
89
+ */
90
+ isDOMAvailable,
91
+ /**
92
+ * Denotes if the current environment can attach event listeners
93
+ * to the window. This will return false in native React
94
+ * runtimes and Node.js.
95
+ */
96
+ canUseEventListeners,
97
+ /**
98
+ * Denotes if the current environment can inspect properties of the
99
+ * screen on which the current window is being rendered. This will
100
+ * return false in native React runtimes and Node.js.
101
+ */
102
+ canUseViewport,
103
+ /**
104
+ * If the JavaScript is being executed in a remote JavaScript environment.
105
+ * When `true`, synchronous native invocations cannot be executed.
106
+ */
107
+ isAsyncDebugging
108
+ };
109
+ var Platform_default = Platform2;
110
+
111
+ // ../../node_modules/expo-modules-core/src/errors/UnavailabilityError.ts
112
+ var UnavailabilityError = class extends CodedError {
113
+ constructor(moduleName, propertyName) {
114
+ super(
115
+ "ERR_UNAVAILABLE",
116
+ `The method or property ${moduleName}.${propertyName} is not available on ${Platform_default.OS}, are you sure you've linked all the native dependencies properly?`
117
+ );
118
+ }
119
+ };
120
+
121
+ // ../../node_modules/expo-modules-core/src/NativeViewManagerAdapter.tsx
122
+ function requireNativeViewManager(viewName) {
123
+ throw new UnavailabilityError("expo-modules-core", "requireNativeViewManager");
124
+ }
125
+
126
+ // ../../node_modules/expo-modules-core/src/sweet/NativeErrorManager.ts
127
+ var NativeErrorManager_default = NativeModulesProxy_default.ExpoModulesCoreErrorManager;
128
+
129
+ // ../../node_modules/expo-modules-core/src/sweet/setUpErrorManager.fx.ts
130
+ if (__DEV__ && Platform_default.OS === "android" && NativeErrorManager_default) {
131
+ const onNewException = "ExpoModulesCoreErrorManager.onNewException";
132
+ const onNewWarning = "ExpoModulesCoreErrorManager.onNewWarning";
133
+ NativeErrorManager_default.addListener(onNewException, ({ message }) => {
134
+ console.error(message);
135
+ });
136
+ NativeErrorManager_default.addListener(onNewWarning, ({ message }) => {
137
+ console.warn(message);
138
+ });
139
+ }
140
+ globalThis.ExpoModulesCore_CodedError = CodedError;
141
+
142
+ // ../../node_modules/expo-modules-core/src/requireNativeModule.ts
143
+ function requireOptionalNativeModule(moduleName) {
144
+ ensureNativeModulesAreInstalled();
145
+ return globalThis.expo?.modules?.[moduleName] ?? NativeModulesProxy_default[moduleName] ?? null;
146
+ }
147
+
148
+ // index.ts
149
+ import { BaseDocumentEngine, papyrusEvents } from "@papyrus-sdk/core";
150
+ import {
151
+ PapyrusEventType
152
+ } from "@papyrus-sdk/types";
4
153
  var MODULE_NAME = "PapyrusNativeEngine";
5
- var PapyrusPageView = requireNativeComponent("PapyrusPageView");
154
+ var BASE64_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
155
+ var BASE64_LOOKUP = (() => {
156
+ const table = new Uint8Array(256);
157
+ table.fill(255);
158
+ for (let i = 0; i < BASE64_CHARS.length; i += 1) {
159
+ table[BASE64_CHARS.charCodeAt(i)] = i;
160
+ }
161
+ return table;
162
+ })();
163
+ var parseDataUri = (value) => {
164
+ const match = /^data:([^;,]+)?(;base64)?,(.*)$/.exec(value);
165
+ if (!match) return null;
166
+ return {
167
+ mime: match[1] ?? "",
168
+ isBase64: Boolean(match[2]),
169
+ data: match[3] ?? ""
170
+ };
171
+ };
172
+ var looksLikeUri = (value) => value.startsWith("http://") || value.startsWith("https://") || value.startsWith("/") || value.startsWith("./") || value.startsWith("../") || value.startsWith("file://");
173
+ var isLikelyBase64 = (value) => {
174
+ if (looksLikeUri(value)) return false;
175
+ if (value.includes(".")) return false;
176
+ if (value.length < 16) return false;
177
+ return /^[A-Za-z0-9+/=]+$/.test(value);
178
+ };
179
+ var isHttpUri = (value) => value.startsWith("http://") || value.startsWith("https://");
180
+ var decodeBase64 = (value) => {
181
+ const clean = value.replace(/[^A-Za-z0-9+/=]/g, "");
182
+ const padding = clean.endsWith("==") ? 2 : clean.endsWith("=") ? 1 : 0;
183
+ const outputLength = Math.max(0, clean.length * 3 / 4 - padding);
184
+ const output = new Uint8Array(outputLength);
185
+ let buffer = 0;
186
+ let bits = 0;
187
+ let index = 0;
188
+ for (let i = 0; i < clean.length; i += 1) {
189
+ const charCode = clean.charCodeAt(i);
190
+ if (charCode === 61) break;
191
+ const valueIndex = BASE64_LOOKUP[charCode];
192
+ if (valueIndex === 255) continue;
193
+ buffer = buffer << 6 | valueIndex;
194
+ bits += 6;
195
+ if (bits >= 8) {
196
+ bits -= 8;
197
+ output[index++] = buffer >> bits & 255;
198
+ }
199
+ }
200
+ return output;
201
+ };
202
+ var encodeBase64 = (bytes) => {
203
+ let output = "";
204
+ let buffer = 0;
205
+ let bits = 0;
206
+ for (let i = 0; i < bytes.length; i += 1) {
207
+ buffer = buffer << 8 | bytes[i];
208
+ bits += 8;
209
+ while (bits >= 6) {
210
+ bits -= 6;
211
+ output += BASE64_CHARS[buffer >> bits & 63];
212
+ }
213
+ }
214
+ if (bits > 0) {
215
+ output += BASE64_CHARS[buffer << 6 - bits & 63];
216
+ }
217
+ const remainder = bytes.length % 3;
218
+ if (remainder === 1) return `${output}==`;
219
+ if (remainder === 2) return `${output}=`;
220
+ return output;
221
+ };
222
+ var isLoadRequest = (input) => typeof input === "object" && input !== null && "source" in input && "type" in input;
223
+ var normalizeLoadInput = (input) => isLoadRequest(input) ? { source: input.source, type: input.type } : { source: input };
224
+ var inferDocumentType = (source) => {
225
+ if (typeof source === "string") {
226
+ const dataUri = parseDataUri(source);
227
+ if (dataUri?.mime) {
228
+ const mime = dataUri.mime.toLowerCase();
229
+ if (mime.includes("epub")) return "epub";
230
+ if (mime.includes("text")) return "text";
231
+ if (mime.includes("pdf")) return "pdf";
232
+ }
233
+ const clean = source.split("?")[0].split("#")[0];
234
+ const ext = clean.includes(".") ? clean.split(".").pop()?.toLowerCase() : void 0;
235
+ if (ext === "epub") return "epub";
236
+ if (ext === "txt") return "text";
237
+ if (ext === "pdf") return "pdf";
238
+ return "pdf";
239
+ }
240
+ if (typeof source === "object" && source !== null && "uri" in source) {
241
+ const uri = source.uri;
242
+ const clean = uri.split("?")[0].split("#")[0];
243
+ const ext = clean.includes(".") ? clean.split(".").pop()?.toLowerCase() : void 0;
244
+ if (ext === "epub") return "epub";
245
+ if (ext === "txt") return "text";
246
+ if (ext === "pdf") return "pdf";
247
+ }
248
+ return "pdf";
249
+ };
250
+ var normalizeNativeDestination = (dest) => {
251
+ if (!dest) return null;
252
+ if (typeof dest === "string") {
253
+ return { kind: "named", value: dest };
254
+ }
255
+ if (dest.kind === "pageIndex" || dest.kind === "pageNumber" || dest.kind === "named") {
256
+ return { kind: dest.kind, value: dest.value };
257
+ }
258
+ return null;
259
+ };
260
+ var resolvePapyrusPageView = () => {
261
+ try {
262
+ return requireNativeViewManager("PapyrusPageView");
263
+ } catch {
264
+ return View;
265
+ }
266
+ };
267
+ var PapyrusPageView = resolvePapyrusPageView();
6
268
  var NativeDocumentEngine = class extends BaseDocumentEngine {
7
269
  constructor() {
8
270
  super();
@@ -12,10 +274,14 @@ var NativeDocumentEngine = class extends BaseDocumentEngine {
12
274
  this.currentPage = 1;
13
275
  this.zoom = 1;
14
276
  this.rotation = 0;
15
- this.nativeModule = NativeModules[MODULE_NAME] ?? null;
277
+ this.nativeModule = requireOptionalNativeModule(MODULE_NAME);
16
278
  this.engineId = this.nativeModule?.createEngine ? this.nativeModule.createEngine() : "default";
17
279
  }
18
- async load(source) {
280
+ async load(input) {
281
+ const { source, type } = normalizeLoadInput(input);
282
+ if (type && type !== "pdf") {
283
+ throw new Error(`[NativeDocumentEngine] Tipo de documento n\xE3o suportado: ${type}`);
284
+ }
19
285
  const native = this.assertNativeModule();
20
286
  const normalized = await this.normalizeSource(source);
21
287
  const result = native.load ? await native.load(this.engineId, normalized) : void 0;
@@ -96,26 +362,50 @@ var NativeDocumentEngine = class extends BaseDocumentEngine {
96
362
  return native.searchText(this.engineId, query);
97
363
  }
98
364
  async getPageIndex(dest) {
365
+ if (!dest) return null;
366
+ if (typeof dest !== "string") {
367
+ if (dest.kind === "pageIndex") return dest.value;
368
+ if (dest.kind === "pageNumber") return Math.max(0, dest.value - 1);
369
+ }
99
370
  const native = this.assertNativeModule();
100
371
  if (!native.getPageIndex) return null;
101
- return native.getPageIndex(this.engineId, dest);
372
+ const normalized = normalizeNativeDestination(dest);
373
+ if (!normalized || normalized.kind !== "named") return null;
374
+ return native.getPageIndex(this.engineId, normalized);
102
375
  }
103
376
  destroy() {
104
377
  this.nativeModule?.destroyEngine?.(this.engineId);
105
378
  }
106
379
  assertNativeModule() {
107
380
  if (!this.nativeModule) {
108
- throw new Error(`[Papyrus] Native module "${MODULE_NAME}" not found. Did you run pod install / gradle sync?`);
381
+ throw new Error(
382
+ `[Papyrus] Native module "${MODULE_NAME}" not found. Use a dev client or a native build (Expo Go is not supported).`
383
+ );
109
384
  }
110
385
  return this.nativeModule;
111
386
  }
112
387
  async normalizeSource(source) {
113
- if (typeof source === "string") return { uri: source };
388
+ if (typeof source === "string") {
389
+ const dataUri = parseDataUri(source);
390
+ if (dataUri?.isBase64) {
391
+ return { data: decodeBase64(dataUri.data) };
392
+ }
393
+ if (looksLikeUri(source)) return { uri: source };
394
+ if (isLikelyBase64(source)) return { data: decodeBase64(source) };
395
+ return { uri: source };
396
+ }
114
397
  if (this.isUriSource(source)) return { uri: source.uri };
115
- if (this.isDataSource(source)) return { data: source.data };
116
- if (this.isFileLike(source)) return { data: await source.arrayBuffer() };
117
- if (source instanceof ArrayBuffer || source instanceof Uint8Array) return { data: source };
118
- return { data: source };
398
+ if (this.isDataSource(source)) {
399
+ const data = source.data instanceof Uint8Array ? source.data : new Uint8Array(source.data);
400
+ return { data };
401
+ }
402
+ if (this.isFileLike(source)) {
403
+ const buffer = await source.arrayBuffer();
404
+ return { data: new Uint8Array(buffer) };
405
+ }
406
+ if (source instanceof ArrayBuffer) return { data: new Uint8Array(source) };
407
+ if (source instanceof Uint8Array) return { data: source };
408
+ return { data: new Uint8Array(source) };
119
409
  }
120
410
  isUriSource(source) {
121
411
  return typeof source === "object" && source !== null && "uri" in source;
@@ -132,8 +422,389 @@ var NativeDocumentEngine = class extends BaseDocumentEngine {
132
422
  return null;
133
423
  }
134
424
  };
425
+ var WebViewDocumentEngine = class extends BaseDocumentEngine {
426
+ constructor() {
427
+ super(...arguments);
428
+ this.bridge = null;
429
+ this.ready = false;
430
+ this.requestId = 0;
431
+ this.pending = /* @__PURE__ */ new Map();
432
+ this.bridgeResolvers = [];
433
+ this.readyResolvers = [];
434
+ this.pageCount = 0;
435
+ this.currentPage = 1;
436
+ this.zoom = 1;
437
+ this.rotation = 0;
438
+ this.outline = [];
439
+ }
440
+ getRenderTargetType() {
441
+ return "webview";
442
+ }
443
+ attachBridge(bridge) {
444
+ this.bridge = bridge;
445
+ this.bridgeResolvers.forEach((resolve) => resolve(bridge));
446
+ this.bridgeResolvers = [];
447
+ }
448
+ handleMessage(raw) {
449
+ let message = null;
450
+ try {
451
+ message = JSON.parse(raw);
452
+ } catch {
453
+ return;
454
+ }
455
+ if (!message) return;
456
+ if (message.type === "ready") {
457
+ this.ready = true;
458
+ this.readyResolvers.forEach((resolve) => resolve());
459
+ this.readyResolvers = [];
460
+ return;
461
+ }
462
+ if (message.type === "response") {
463
+ const pending = this.pending.get(message.id);
464
+ if (!pending) return;
465
+ this.pending.delete(message.id);
466
+ if (message.ok) {
467
+ pending.resolve(message.data);
468
+ } else {
469
+ pending.reject(new Error(message.error ?? "[Papyrus] WebView runtime error"));
470
+ }
471
+ return;
472
+ }
473
+ if (message.type === "state") {
474
+ if (typeof message.payload.pageCount === "number") this.pageCount = message.payload.pageCount;
475
+ if (typeof message.payload.currentPage === "number") this.currentPage = message.payload.currentPage;
476
+ if (typeof message.payload.zoom === "number") this.zoom = message.payload.zoom;
477
+ if (Array.isArray(message.payload.outline)) this.outline = message.payload.outline;
478
+ return;
479
+ }
480
+ if (message.type === "event") {
481
+ const payload = message.payload ?? {};
482
+ if (message.name === "RUNTIME_LOG") {
483
+ if (__DEV__) {
484
+ const text = typeof payload?.message === "string" ? payload.message : JSON.stringify(payload);
485
+ console.log("[Papyrus WebView runtime]", text);
486
+ }
487
+ return;
488
+ }
489
+ if (message.name === "RUNTIME_ERROR") {
490
+ const errorMessage = typeof payload?.message === "string" ? payload.message : "";
491
+ if (errorMessage.includes("ResizeObserver loop")) {
492
+ return;
493
+ }
494
+ if (__DEV__) {
495
+ console.warn("[Papyrus WebView runtime]", payload);
496
+ }
497
+ return;
498
+ }
499
+ if (message.name === PapyrusEventType.TEXT_SELECTED) {
500
+ papyrusEvents.emit(PapyrusEventType.TEXT_SELECTED, payload);
501
+ } else if (message.name === PapyrusEventType.SEARCH_TRIGGERED) {
502
+ papyrusEvents.emit(PapyrusEventType.SEARCH_TRIGGERED, payload);
503
+ } else if (message.name === PapyrusEventType.DOCUMENT_LOADED) {
504
+ if (typeof payload.pageCount === "number") {
505
+ this.pageCount = payload.pageCount;
506
+ }
507
+ papyrusEvents.emit(PapyrusEventType.DOCUMENT_LOADED, payload);
508
+ }
509
+ return;
510
+ }
511
+ if (__DEV__) {
512
+ console.warn("[Papyrus WebView] Unknown message", message);
513
+ }
514
+ }
515
+ async load(input) {
516
+ const { source, type } = normalizeLoadInput(input);
517
+ const resolvedType = type ?? inferDocumentType(source);
518
+ if (resolvedType === "pdf") {
519
+ throw new Error("[WebViewDocumentEngine] Use o NativeDocumentEngine para PDFs no mobile.");
520
+ }
521
+ const payloadSource = await this.normalizeRuntimeSource(resolvedType, source);
522
+ const response = await this.request("load", {
523
+ type: resolvedType,
524
+ source: payloadSource
525
+ });
526
+ if (typeof response?.pageCount === "number") this.pageCount = response.pageCount;
527
+ if (Array.isArray(response?.outline)) this.outline = response.outline;
528
+ this.currentPage = 1;
529
+ }
530
+ getPageCount() {
531
+ return this.pageCount;
532
+ }
533
+ getCurrentPage() {
534
+ return this.currentPage;
535
+ }
536
+ goToPage(page) {
537
+ if (page < 1) return;
538
+ this.currentPage = page;
539
+ void this.request("go-to-page", { page });
540
+ }
541
+ setZoom(zoom) {
542
+ this.zoom = Math.max(0.5, Math.min(4, zoom));
543
+ void this.request("set-zoom", { zoom: this.zoom });
544
+ }
545
+ getZoom() {
546
+ return this.zoom;
547
+ }
548
+ rotate(direction) {
549
+ if (direction === "clockwise") {
550
+ this.rotation = (this.rotation + 90) % 360;
551
+ } else {
552
+ this.rotation = (this.rotation - 90) % 360;
553
+ if (this.rotation < 0) this.rotation += 360;
554
+ }
555
+ void this.request("set-rotation", { rotation: this.rotation });
556
+ }
557
+ getRotation() {
558
+ return this.rotation;
559
+ }
560
+ async renderPage(pageIndex, target, scale) {
561
+ void pageIndex;
562
+ void target;
563
+ void scale;
564
+ }
565
+ async renderTextLayer(pageIndex, container, scale) {
566
+ void pageIndex;
567
+ void container;
568
+ void scale;
569
+ }
570
+ async getTextContent(pageIndex) {
571
+ return await this.request("get-text-content", { pageIndex });
572
+ }
573
+ async getPageDimensions(pageIndex) {
574
+ return await this.request("get-page-dimensions", { pageIndex });
575
+ }
576
+ async searchText(query) {
577
+ return await this.request("search-text", { query });
578
+ }
579
+ async selectText(pageIndex, rect) {
580
+ return await this.request("select-text", { pageIndex, rect });
581
+ }
582
+ async getOutline() {
583
+ if (this.outline.length > 0) return this.outline;
584
+ return await this.request("get-outline");
585
+ }
586
+ async getPageIndex(dest) {
587
+ if (!dest) return null;
588
+ if (typeof dest !== "string") {
589
+ if (dest.kind === "pageIndex") return dest.value;
590
+ if (dest.kind === "pageNumber") return Math.max(0, dest.value - 1);
591
+ if (dest.kind === "href") {
592
+ return await this.request("get-page-index", { dest: dest.value });
593
+ }
594
+ return null;
595
+ }
596
+ return await this.request("get-page-index", { dest });
597
+ }
598
+ destroy() {
599
+ this.pending.forEach(({ reject }) => reject(new Error("[Papyrus] WebView engine destroyed")));
600
+ this.pending.clear();
601
+ this.bridge = null;
602
+ this.ready = false;
603
+ }
604
+ async ensureBridge() {
605
+ if (this.bridge) return this.bridge;
606
+ return new Promise((resolve) => {
607
+ this.bridgeResolvers.push(resolve);
608
+ });
609
+ }
610
+ async ensureReady() {
611
+ if (this.ready) return;
612
+ return new Promise((resolve) => {
613
+ this.readyResolvers.push(resolve);
614
+ });
615
+ }
616
+ async request(kind, payload) {
617
+ const bridge = await this.ensureBridge();
618
+ await this.ensureReady();
619
+ const id = `${Date.now()}-${this.requestId++}`;
620
+ return new Promise((resolve, reject) => {
621
+ const timeoutMs = kind === "load" ? 3e4 : 8e3;
622
+ const timeoutId = setTimeout(() => {
623
+ this.pending.delete(id);
624
+ reject(new Error(`[Papyrus] WebView response timeout: ${kind}`));
625
+ }, timeoutMs);
626
+ this.pending.set(id, {
627
+ resolve: (data) => {
628
+ clearTimeout(timeoutId);
629
+ resolve(data);
630
+ },
631
+ reject: (error) => {
632
+ clearTimeout(timeoutId);
633
+ reject(error);
634
+ }
635
+ });
636
+ bridge.postMessage(JSON.stringify({ id, kind, payload }));
637
+ });
638
+ }
639
+ async normalizeRuntimeSource(type, source) {
640
+ if (typeof source === "string") {
641
+ const dataUri = parseDataUri(source);
642
+ if (dataUri) {
643
+ if (dataUri.isBase64) {
644
+ return { kind: "base64", data: dataUri.data, mime: dataUri.mime || void 0 };
645
+ }
646
+ const text = decodeURIComponent(dataUri.data);
647
+ return { kind: "text", text };
648
+ }
649
+ if (looksLikeUri(source)) {
650
+ if (isHttpUri(source)) {
651
+ const fetched = await this.fetchRemoteSource(type, source);
652
+ if (fetched) return fetched;
653
+ }
654
+ return { kind: "uri", uri: source };
655
+ }
656
+ if (isLikelyBase64(source)) {
657
+ return { kind: "base64", data: source };
658
+ }
659
+ if (type === "text") {
660
+ return { kind: "text", text: source };
661
+ }
662
+ return { kind: "uri", uri: source };
663
+ }
664
+ if (this.isUriSource(source)) {
665
+ const uri = source.uri;
666
+ if (isHttpUri(uri)) {
667
+ const fetched = await this.fetchRemoteSource(type, uri);
668
+ if (fetched) return fetched;
669
+ }
670
+ return { kind: "uri", uri };
671
+ }
672
+ if (this.isDataSource(source)) {
673
+ const bytes = source.data instanceof Uint8Array ? source.data : new Uint8Array(source.data);
674
+ return { kind: "base64", data: encodeBase64(bytes) };
675
+ }
676
+ if (this.isFileLike(source)) {
677
+ const buffer = await source.arrayBuffer();
678
+ return { kind: "base64", data: encodeBase64(new Uint8Array(buffer)) };
679
+ }
680
+ if (source instanceof ArrayBuffer || source instanceof Uint8Array) {
681
+ const bytes = source instanceof Uint8Array ? source : new Uint8Array(source);
682
+ return { kind: "base64", data: encodeBase64(bytes) };
683
+ }
684
+ return { kind: "base64", data: encodeBase64(new Uint8Array(source)) };
685
+ }
686
+ async fetchRemoteSource(type, uri) {
687
+ try {
688
+ const response = await fetch(uri);
689
+ if (!response.ok) return null;
690
+ if (type === "text") {
691
+ const text = await response.text();
692
+ return { kind: "text", text };
693
+ }
694
+ if (type === "epub") {
695
+ const buffer = await this.readResponseBuffer(response);
696
+ return { kind: "base64", data: encodeBase64(new Uint8Array(buffer)) };
697
+ }
698
+ return null;
699
+ } catch {
700
+ return null;
701
+ }
702
+ }
703
+ async readResponseBuffer(response) {
704
+ try {
705
+ return await response.arrayBuffer();
706
+ } catch {
707
+ const blob = await response.blob();
708
+ return await new Promise((resolve, reject) => {
709
+ const reader = new FileReader();
710
+ reader.onerror = () => reject(new Error("[Papyrus] Failed to read response blob"));
711
+ reader.onload = () => resolve(reader.result);
712
+ reader.readAsArrayBuffer(blob);
713
+ });
714
+ }
715
+ }
716
+ isUriSource(source) {
717
+ return typeof source === "object" && source !== null && "uri" in source;
718
+ }
719
+ isDataSource(source) {
720
+ return typeof source === "object" && source !== null && "data" in source;
721
+ }
722
+ isFileLike(source) {
723
+ return typeof source === "object" && source !== null && typeof source.arrayBuffer === "function";
724
+ }
725
+ };
726
+ var MobileDocumentEngine = class extends BaseDocumentEngine {
727
+ constructor() {
728
+ super();
729
+ this.pdfEngine = new NativeDocumentEngine();
730
+ this.webEngine = new WebViewDocumentEngine();
731
+ this.activeEngine = this.pdfEngine;
732
+ }
733
+ getRenderTargetType() {
734
+ return this.activeEngine.getRenderTargetType?.() ?? "canvas";
735
+ }
736
+ attachWebView(bridge) {
737
+ this.webEngine.attachBridge(bridge);
738
+ }
739
+ handleWebViewMessage(data) {
740
+ this.webEngine.handleMessage(data);
741
+ }
742
+ async load(input) {
743
+ const { source, type } = normalizeLoadInput(input);
744
+ const resolvedType = type ?? inferDocumentType(source);
745
+ this.activeEngine = resolvedType === "pdf" ? this.pdfEngine : this.webEngine;
746
+ await this.activeEngine.load({ type: resolvedType, source });
747
+ }
748
+ getPageCount() {
749
+ return this.activeEngine.getPageCount();
750
+ }
751
+ getCurrentPage() {
752
+ return this.activeEngine.getCurrentPage();
753
+ }
754
+ goToPage(page) {
755
+ this.activeEngine.goToPage(page);
756
+ }
757
+ setZoom(zoom) {
758
+ this.activeEngine.setZoom(zoom);
759
+ }
760
+ getZoom() {
761
+ return this.activeEngine.getZoom();
762
+ }
763
+ rotate(direction) {
764
+ this.activeEngine.rotate(direction);
765
+ }
766
+ getRotation() {
767
+ return this.activeEngine.getRotation();
768
+ }
769
+ async renderPage(pageIndex, target, scale) {
770
+ await this.activeEngine.renderPage(pageIndex, target, scale);
771
+ }
772
+ async renderTextLayer(pageIndex, container, scale) {
773
+ await this.activeEngine.renderTextLayer(pageIndex, container, scale);
774
+ }
775
+ async getTextContent(pageIndex) {
776
+ return await this.activeEngine.getTextContent(pageIndex);
777
+ }
778
+ async getPageDimensions(pageIndex) {
779
+ return await this.activeEngine.getPageDimensions(pageIndex);
780
+ }
781
+ async searchText(query) {
782
+ if (typeof this.activeEngine.searchText === "function") {
783
+ return await this.activeEngine.searchText(query);
784
+ }
785
+ return [];
786
+ }
787
+ async selectText(pageIndex, rect) {
788
+ if (typeof this.activeEngine.selectText === "function") {
789
+ return await this.activeEngine.selectText(pageIndex, rect);
790
+ }
791
+ return null;
792
+ }
793
+ async getOutline() {
794
+ return await this.activeEngine.getOutline();
795
+ }
796
+ async getPageIndex(dest) {
797
+ return await this.activeEngine.getPageIndex(dest);
798
+ }
799
+ destroy() {
800
+ this.pdfEngine.destroy();
801
+ this.webEngine.destroy();
802
+ }
803
+ };
135
804
  export {
805
+ MobileDocumentEngine,
136
806
  NativeDocumentEngine,
137
- PapyrusPageView
807
+ PapyrusPageView,
808
+ WebViewDocumentEngine
138
809
  };
139
810
  //# sourceMappingURL=index.mjs.map