瀏覽代碼

compdfkit(rn) - 插件项目创建

liuxiaolong 1 年之前
父節點
當前提交
79cfcb005c
共有 100 個文件被更改,包括 0 次插入3690 次删除
  1. 0 2
      .bundle/config
  2. 0 4
      .eslintrc.js
  3. 0 66
      .gitignore
  4. 0 7
      .prettierrc.js
  5. 0 24
      .vscode/settings.json
  6. 0 1
      .watchmanconfig
  7. 0 109
      App.tsx
  8. 0 6
      Gemfile
  9. 0 100
      Gemfile.lock
  10. 二進制
      Image/1-1.png
  11. 二進制
      Image/1-2.png
  12. 二進制
      Image/1-3.png
  13. 二進制
      Image/1-4.png
  14. 二進制
      Image/1-5.png
  15. 二進制
      Image/1-6.png
  16. 二進制
      Image/1-7.png
  17. 二進制
      Image/1-8.png
  18. 二進制
      Image/1-9.png
  19. 二進制
      Image/2-3-1.png
  20. 二進制
      Image/libs.png
  21. 0 925
      README.md
  22. 0 17
      __tests__/App.test.tsx
  23. 0 139
      android/app/build.gradle
  24. 二進制
      android/app/debug.keystore
  25. 0 10
      android/app/proguard-rules.pro
  26. 0 13
      android/app/src/debug/AndroidManifest.xml
  27. 0 75
      android/app/src/debug/java/com/compdfkit/ReactNativeFlipper.java
  28. 0 33
      android/app/src/main/AndroidManifest.xml
  29. 二進制
      android/app/src/main/assets/PDF32000_2008.pdf
  30. 0 32
      android/app/src/main/java/com/compdfkit/pdfviewer/MainActivity.java
  31. 0 67
      android/app/src/main/java/com/compdfkit/pdfviewer/MainApplication.java
  32. 0 85
      android/app/src/main/java/com/compdfkit/pdfviewer/pdf/OpenPDFModule.java
  33. 0 38
      android/app/src/main/java/com/compdfkit/pdfviewer/pdf/PDFReactPackage.java
  34. 0 36
      android/app/src/main/res/drawable/rn_edit_text_material.xml
  35. 0 5
      android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
  36. 0 5
      android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
  37. 二進制
      android/app/src/main/res/mipmap-hdpi/ic_launcher.png
  38. 二進制
      android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
  39. 二進制
      android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
  40. 二進制
      android/app/src/main/res/mipmap-mdpi/ic_launcher.png
  41. 二進制
      android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
  42. 二進制
      android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
  43. 二進制
      android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
  44. 二進制
      android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
  45. 二進制
      android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
  46. 二進制
      android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
  47. 二進制
      android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
  48. 二進制
      android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
  49. 二進制
      android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
  50. 二進制
      android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
  51. 二進制
      android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
  52. 0 5
      android/app/src/main/res/values/strings.xml
  53. 0 9
      android/app/src/main/res/values/styles.xml
  54. 0 20
      android/app/src/release/java/com/compdfkit_rn/ReactNativeFlipper.java
  55. 0 41
      android/build.gradle
  56. 0 44
      android/gradle.properties
  57. 二進制
      android/gradle/wrapper/gradle-wrapper.jar
  58. 0 6
      android/gradle/wrapper/gradle-wrapper.properties
  59. 0 244
      android/gradlew
  60. 0 92
      android/gradlew.bat
  61. 0 4
      android/settings.gradle
  62. 0 4
      app.json
  63. 0 258
      assets/configuration.json
  64. 0 3
      babel.config.js
  65. 0 9
      index.js
  66. 0 11
      ios/.xcode.env
  67. 0 753
      ios/ComPDFKit_RN.xcodeproj/project.pbxproj
  68. 0 88
      ios/ComPDFKit_RN.xcodeproj/xcshareddata/xcschemes/ComPDFKit_RN.xcscheme
  69. 0 6
      ios/ComPDFKit_RN/AppDelegate.h
  70. 0 28
      ios/ComPDFKit_RN/AppDelegate.mm
  71. 0 6
      ios/ComPDFKit_RN/ComPDFKit_RN-Bridging-Header.h
  72. 0 158
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/Contents.json
  73. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-1024.png
  74. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20-ipad.png
  75. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png
  76. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20@2x.png
  77. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20@3x.png
  78. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29-ipad.png
  79. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29.png
  80. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png
  81. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29@2x.png
  82. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29@3x.png
  83. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-40.png
  84. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-40@2x.png
  85. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-40@3x.png
  86. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-50.png
  87. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-50@2x.png
  88. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-57.png
  89. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-57@2x.png
  90. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-60@2x.png
  91. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-60@3x.png
  92. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-72.png
  93. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-72@2x.png
  94. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-76.png
  95. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-76@2x.png
  96. 二進制
      ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-83.5@2x.png
  97. 0 6
      ios/ComPDFKit_RN/Images.xcassets/Contents.json
  98. 0 49
      ios/ComPDFKit_RN/Info.plist
  99. 0 47
      ios/ComPDFKit_RN/LaunchScreen.storyboard
  100. 0 0
      ios/ComPDFKit_RN/OpenPDFModule.swift

+ 0 - 2
.bundle/config

@@ -1,2 +0,0 @@
-BUNDLE_PATH: "vendor/bundle"
-BUNDLE_FORCE_RUBY_PLATFORM: 1

+ 0 - 4
.eslintrc.js

@@ -1,4 +0,0 @@
-module.exports = {
-  root: true,
-  extends: '@react-native',
-};

+ 0 - 66
.gitignore

@@ -1,66 +0,0 @@
-# OSX
-#
-.DS_Store
-
-# Xcode
-#
-build/
-*.pbxuser
-!default.pbxuser
-*.mode1v3
-!default.mode1v3
-*.mode2v3
-!default.mode2v3
-*.perspectivev3
-!default.perspectivev3
-xcuserdata
-*.xccheckout
-*.moved-aside
-DerivedData
-*.hmap
-*.ipa
-*.xcuserstate
-ios/.xcode.env.local
-
-# Android/IntelliJ
-#
-build/
-.idea
-.gradle
-local.properties
-*.iml
-*.hprof
-.cxx/
-*.keystore
-!debug.keystore
-
-# node.js
-#
-node_modules/
-npm-debug.log
-yarn-error.log
-
-# fastlane
-#
-# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
-# screenshots whenever they are needed.
-# For more information about the recommended setup visit:
-# https://docs.fastlane.tools/best-practices/source-control/
-
-**/fastlane/report.xml
-**/fastlane/Preview.html
-**/fastlane/screenshots
-**/fastlane/test_output
-
-# Bundle artifact
-*.jsbundle
-
-# Ruby / CocoaPods
-/ios/Pods/
-/vendor/bundle/
-
-# Temporary files created by Metro to check the health of the file watcher
-.metro-health-check*
-
-# testing
-/coverage

+ 0 - 7
.prettierrc.js

@@ -1,7 +0,0 @@
-module.exports = {
-  arrowParens: 'avoid',
-  bracketSameLine: true,
-  bracketSpacing: false,
-  singleQuote: true,
-  trailingComma: 'all',
-};

+ 0 - 24
.vscode/settings.json

@@ -1,24 +0,0 @@
-{
-    "editor.tokenColorCustomizations": {
-        "textMateRules": [
-            {
-                "scope": "googletest.failed",
-                "settings": {
-                    "foreground": "#f00"
-                }
-            },
-            {
-                "scope": "googletest.passed",
-                "settings": {
-                    "foreground": "#0f0"
-                }
-            },
-            {
-                "scope": "googletest.run",
-                "settings": {
-                    "foreground": "#0f0"
-                }
-            }
-        ]
-    }
-}

+ 0 - 1
.watchmanconfig

@@ -1 +0,0 @@
-{}

File diff suppressed because it is too large
+ 0 - 109
App.tsx


+ 0 - 6
Gemfile

@@ -1,6 +0,0 @@
-source 'https://rubygems.org'
-
-# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
-ruby ">= 2.6.10"
-
-gem 'cocoapods', '~> 1.12'

+ 0 - 100
Gemfile.lock

@@ -1,100 +0,0 @@
-GEM
-  remote: https://rubygems.org/
-  specs:
-    CFPropertyList (3.0.6)
-      rexml
-    activesupport (6.1.7.6)
-      concurrent-ruby (~> 1.0, >= 1.0.2)
-      i18n (>= 1.6, < 2)
-      minitest (>= 5.1)
-      tzinfo (~> 2.0)
-      zeitwerk (~> 2.3)
-    addressable (2.8.5)
-      public_suffix (>= 2.0.2, < 6.0)
-    algoliasearch (1.27.5)
-      httpclient (~> 2.8, >= 2.8.3)
-      json (>= 1.5.1)
-    atomos (0.1.3)
-    claide (1.1.0)
-    cocoapods (1.13.0)
-      addressable (~> 2.8)
-      claide (>= 1.0.2, < 2.0)
-      cocoapods-core (= 1.13.0)
-      cocoapods-deintegrate (>= 1.0.3, < 2.0)
-      cocoapods-downloader (>= 1.6.0, < 2.0)
-      cocoapods-plugins (>= 1.0.0, < 2.0)
-      cocoapods-search (>= 1.0.0, < 2.0)
-      cocoapods-trunk (>= 1.6.0, < 2.0)
-      cocoapods-try (>= 1.1.0, < 2.0)
-      colored2 (~> 3.1)
-      escape (~> 0.0.4)
-      fourflusher (>= 2.3.0, < 3.0)
-      gh_inspector (~> 1.0)
-      molinillo (~> 0.8.0)
-      nap (~> 1.0)
-      ruby-macho (>= 2.3.0, < 3.0)
-      xcodeproj (>= 1.23.0, < 2.0)
-    cocoapods-core (1.13.0)
-      activesupport (>= 5.0, < 8)
-      addressable (~> 2.8)
-      algoliasearch (~> 1.0)
-      concurrent-ruby (~> 1.1)
-      fuzzy_match (~> 2.0.4)
-      nap (~> 1.0)
-      netrc (~> 0.11)
-      public_suffix (~> 4.0)
-      typhoeus (~> 1.0)
-    cocoapods-deintegrate (1.0.5)
-    cocoapods-downloader (1.6.3)
-    cocoapods-plugins (1.0.0)
-      nap
-    cocoapods-search (1.0.1)
-    cocoapods-trunk (1.6.0)
-      nap (>= 0.8, < 2.0)
-      netrc (~> 0.11)
-    cocoapods-try (1.2.0)
-    colored2 (3.1.2)
-    concurrent-ruby (1.2.2)
-    escape (0.0.4)
-    ethon (0.16.0)
-      ffi (>= 1.15.0)
-    ffi (1.16.3)
-    fourflusher (2.3.1)
-    fuzzy_match (2.0.4)
-    gh_inspector (1.1.3)
-    httpclient (2.8.3)
-    i18n (1.14.1)
-      concurrent-ruby (~> 1.0)
-    json (2.6.3)
-    minitest (5.20.0)
-    molinillo (0.8.0)
-    nanaimo (0.3.0)
-    nap (1.1.0)
-    netrc (0.11.0)
-    public_suffix (4.0.7)
-    rexml (3.2.6)
-    ruby-macho (2.5.1)
-    typhoeus (1.4.0)
-      ethon (>= 0.9.0)
-    tzinfo (2.0.6)
-      concurrent-ruby (~> 1.0)
-    xcodeproj (1.23.0)
-      CFPropertyList (>= 2.3.3, < 4.0)
-      atomos (~> 0.1.3)
-      claide (>= 1.0.2, < 2.0)
-      colored2 (~> 3.1)
-      nanaimo (~> 0.3.0)
-      rexml (~> 3.2.4)
-    zeitwerk (2.6.12)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  cocoapods (~> 1.12)
-
-RUBY VERSION
-   ruby 2.6.10p210
-
-BUNDLED WITH
-   1.17.2

二進制
Image/1-1.png


二進制
Image/1-2.png


二進制
Image/1-3.png


二進制
Image/1-4.png


二進制
Image/1-5.png


二進制
Image/1-6.png


二進制
Image/1-7.png


二進制
Image/1-8.png


二進制
Image/1-9.png


二進制
Image/2-3-1.png


二進制
Image/libs.png


+ 0 - 925
README.md

@@ -1,925 +0,0 @@
-# 1 Overview
-
-ComPDFKit for React Native is a comprehensive SDK that allows you to quickly add PDF fuctions to any React Native application, such as viewer, annotations, editing PDFs, forms and signatures.
-
-More information can be found at [https://www.compdf.com/](https://www.compdf.com/)
-
-## 1.1 ComPDFKit for React Native
-
-ComPDFKit for React Native consists of two elements.
-
-The two elements for ComPDFKit for React Native:
-
-- **PDF Core API**
-
-  The Core API can be used independently for document rendering, analysis, text extraction, text search, form filling, password security, annotation creation and manipulation, and much more.
-- **PDF View**
-
-  The PDF View is a utility class that provides the functionality for developers to interact with rendering PDF documents per their requirements. The View Control provides fast and high-quality rendering, zooming, scrolling, and page navigation features. The View Control is derived from platform-related viewer classes (e.g. `UIView` on iOS) and allows for extension to accommodate specific user needs.
-
-## 1.2 Key Features
-
-**Viewer**
-component offers:
-
-- Standard page display modes, including Scrolling, Double Page, Crop Mode, and Cover Mode.
-- Navigation with thumbnails, outlines, and bookmarks.
-- Text search & selection.
-- Zoom in and out & Fit-page.
-- Switch between different themes, including Dark Mode, Sepia Mode, Reseda Mode, and Custom Color Mode.
-- Text reflow.
-
-**Annotations**
-component offers:
-
-- Create, edit, and remove annotations, including Note, Link, Free Text, Line, Square, Circle, Highlight, Underline, Squiggly, Strikeout, Stamp, Ink, and Sound.
-- Support for annotation appearances.
-- Import and export annotations to/from XFDF.
-- Support for annotation flattening.
-- Predefine annotations.
-
-**Forms**
-component offers:
-
-- Create, edit and remove form fields, including Push Button, Check Box, Radio Button, Text Field, Combo Box, List Box, and Signature.
-- Fill PDF Forms.
-- Support for PDF form flattening.
-
-**Document Editor**
-component offers:
-
-- PDF manipulation, including Split pages, Extract pages, and Merge pages.
-- Page edit, including Delete pages, Insert pages, Crop pages, Move pages, Rotate pages, Replace pages, and Exchange pages.
-- Document information setting.
-- Extract images.
-
-**Content Editor**
-component offers:
-
-- Programmatically add and remove text in PDFs and make it possible to edit PDFs like Word. Allow selecting text to copy, resize, change colors, text alignment, and the position of text boxes.
-- Undo or redo any change.
-- Find and Replace.
-
-**Security**
-
-component offers:
-
-- Encrypt and decrypt PDFs, including Permission setting and Password protected.
-
-**Watermark**
-
-component offers:
-
-- Add, remove, edit, update, and get the watermarks.
-- Support text and image watermarks.
-
-**Digital Signatures**
-
-component offers:
-
-- Sign PDF documents with digital signatures.
-- Create and verify digital certificates.
-- Create and verify digital digital signatures.
-- Create self-sign digital ID and edit signature appearance.
-- Support PKCS12 certificates.
-- Trust certificates.
-
-## 1.3 License
-
-ComPDFKit for React Native is a commercial SDK, which requires a license to grant developer permission to release their apps. Each license is only valid for one `bundle ID` or `applicationId` in development mode. Other flexible licensing options are also supported, please contact [our marketing team](mailto:support@compdf.com) to know more.  However, any documents, sample code, or source code distribution from the released package of ComPDFKit to any third party is prohibited.
-
-**Offline License:** In scenarios with high security requirements, no internet connectivity, or offline environments, we provide the option of an offline license. The offline license allows authorization and usage of the ComPDFKit PDF SDK when internet connectivity is not available.
-
-**Online License:** We have introduced an online license mechanism for enhanced license management. Through the online approach, you can manage and update your license more flexibly to meet the specific requirements of your project.
-
-# 2 Get Started
-
-It's easy to embed ComPDFKit into React Native applications with a few lines of code. Let's take a few minutes to get started.
-
-The following sections describe the optimal systems and environments to support, as well as quick integration steps.
-
-## 2.1 Requirements
-
-**Android**
-
-Please install the following required packages:
-
-* A [development environment](https://reactnative.dev/docs/environment-setup) for running React Native projects using the React Native CLI (not the Expo CLI)
-* The [latest stable version of Android Studio](https://developer.android.com/studio)
-* The [Android NDK](https://developer.android.com/studio/projects/install-ndk)
-* An [Android Virtual Device](https://developer.android.com/studio/run/managing-avds.html) or a hardware device
-
-Operating Environment Requirements:
-
-* Android `minSdkVersion` of `21` or higher.
-* ComPDFKit SDK 1.9.0 or higher.
-
-**iOS**
-
-Please install the following required packages:
-
-* A [development environment](https://reactnative.dev/docs/environment-setup) for running React Native projects using the React Native CLI (not the Expo CLI)
-* The [latest stable version of Xcode](https://apps.apple.com/us/app/xcode/id497799835?mt=12)
-* The [latest stable version of CocoaPods](https://github.com/CocoaPods/CocoaPods/releases). Follow the [CocoaPods installation guide](https://guides.cocoapods.org/using/getting-started.html#installation) to install it.
-
-Operating Environment Requirements:
-
-* ComPDFKit SDK 1.9.0 or higher.
-* React Native dependency to version 3.0.0 or higher.
-* iOS 10.0 or higher.
-
-## 2.2 Creating a New Project
-
-Let's create a simple app that integrates ComPDFKit for React Native.
-
-1. In the terminal app, change the current working directory to the location you wish to save your project. In this example, we’ll use the `~/Documents/` directory:
-
-   ```bash
-   cd ~/Documents
-   ```
-2. Create the React Native project by running the following command:
-
-   ```bash
-   react-native init compdfkit_rn
-   ```
-3. In the terminal app, change the location of the current working directory inside the newly created project:
-
-   ```bash
-   cd compdfkit_rn
-   ```
-4. Add the ComPDFKit library and import the presented PDF document.
-
-### 2.2.1 For Android
-
-Open the `android/build.gradle` file located in the project root directory and add the `mavenCentral` repository:
-
-```diff
-repositories {
-    google()
-+   mavenCentral()
-}
-```
-
-Open the app’s Gradle build file, `android/app/build.gradle`:
-
-```bash
-open android/app/build.gradle
-```
-
-Modify the minimum SDK version, All this is done inside the `android` section:
-
-```diff
- android {
-     defaultConfig {
--        minSdkVersion rootProject.ext.minSdkVersion
-+        minSdkVersion 21
-         ...
-     }
- }
-```
-
-Add ComPDFKit SDK inside the dependencies section:
-
-```diff
-dependencies {
-    ...
-+    implementation 'com.compdf:compdfkit:1.13.0'
-+    implementation 'com.compdf:compdfkit-ui:1.13.0'
-+    implementation 'com.compdf:compdfkit-tools:1.13.0'
-}
-```
-
-open  `android/app/src/main/AndroidManifest.xml` , add  `Internet Permission` and `Storage Permission`:
-
-```diff
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="com.compdfkit.flutter.example">
-
-+    <uses-permission android:name="android.permission.INTERNET"/>
-  
-    <!-- Required to read and write documents from device storage -->
-+    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
-+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
-+    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
-
-    <application
-+    android:requestLegacyExternalStorage="true"
-        ...>
-	...
-    </application>
-</manifest>
-```
-
-Copy the `pdf` folder code from the sample project Android project to your project
-
-<img src="./Image/1-5.png" alt="1-5" width="60%" />
-
-Open the `MainApplication` file and fill in the following code in the `getPackages()` method
-
-```diff
-@Override
-protected List<ReactPackage> getPackages() {
-  @SuppressWarnings("UnnecessaryLocalVariable")
-  List<ReactPackage> packages = new PackageList(this).getPackages();
-+  packages.add(new PDFReactPackage());
-  return packages;
-}
-```
-
-Copy the sample pdf file to the `assets` directory
-
-<img src="./Image/1-6.png" alt="1-6" style="zoom:33%;" />
-
-### 2.2.2 For iOS
-
-Open your project’s Podfile in a text editor:
-
-```bash
-open ios/Podfile
-```
-
-Update the platform to iOS 11 and add the ComPDFKit Podspec:
-
-```diff
-require_relative '../node_modules/react-native/scripts/react_native_pods'
-require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
-
-- platform :ios, '10.0'
-+ platform :ios, '11.0'
-install! 'cocoapods', :deterministic_uuids => false
-
-target 'PDFView_RN' do
-  config = use_native_modules!
-
-  # Flags change depending on the env values.
-  flags = get_default_flags()
-
-  use_react_native!(
-    :path => config[:reactNativePath],
-    # to enable hermes on iOS, change `false` to `true` and then install pods
-    :hermes_enabled => flags[:hermes_enabled],
-    :fabric_enabled => flags[:fabric_enabled],
-    # An absolute path to your application root.
-    :app_path => "#{Pod::Config.instance.installation_root}/.."
-  )
-
-  target 'PDFView_RNTests' do
-    inherit! :complete
-    # Pods for testing
-  end
-
-+  pod 'ComPDFKit_Tools', podspec:'https://www.compdf.com/download/ios/cocoapods/xcframeworks/compdfkit_tools/1.13.0.podspec'
-+  pod 'ComPDFKit', podspec:'https://www.compdf.com/download/ios/cocoapods/xcframeworks/compdfkit/1.13.0.podspec'
-
-  # Enables Flipper.
-  #
-  # Note that if you have use_frameworks! enabled, Flipper will not work and
-  # you should disable the next line.
-  use_flipper!()
-
-  post_install do |installer|
-    react_native_post_install(installer)
-    __apply_Xcode_12_5_M1_post_install_workaround(installer)
-  end
-end
-```
-
-Go to the `compdfkit_rn/ios` folder and run the `pod install` command:
-
-```bash
-pod install
-```
-
-**Note:** If SSL network requests fail to download the `ComPDFKit` library when you run `pod install`, you can see the processing method in [2.5 Troubleshooting](#2.5 Troubleshooting).
-
-Open your project’s Workspace in Xcode:
-
-```bash
-open ios/PDFView_RN.xcworkspace
-```
-
-Make sure the deployment target is set to 10.0 or higher:
-
-![](Image/1-1.png)
-
-Import resource file,***"OpenPDFModule.swift"*** is the bridging file for connecting React Native to the iOS native module.
-
-![1-2](Image/1-2.png)
-
-Search for **bridging** in the **Build Settings** and locate the **Objective-C Bridging Header** option. Then, enter the file path of the header file ***"ComPDFKit_RN-Bridging-Header.h"***:
-
-![1-9](Image/1-9.png)
-
-Add the PDF document you want to display to your application by dragging it into your project. On the dialog that’s displayed, select Finish to accept the default integration options. You can use "developer_guide_ios.pdf" as an example.
-
-<img src="Image/1-7.png" style="zoom:50%;" />
-
-To protect user privacy, before accessing the sensitive privacy data, you need to find the ***"Info"*** configuration in your iOS 10.0 or higher iOS project and configure the relevant privacy terms as shown in the following picture.
-
-<img src="Image/1-8.png" style="zoom:50%;" />
-
-```objective-c
-<key>NSCameraUsageDescription</key>
-<string>Your consent is required before you could access the function.</string>
-
-<key>NSMicrophoneUsageDescription</key>
-<string>Your consent is required before you could access the function.</string>
-
-<key>NSPhotoLibraryAddUsageDescription</key>
-<string>Your consent is required before you could access the function.</string>
-
-<key>NSPhotoLibraryUsageDescription</key>
-<string>Your consent is required before you could access the function.</string>
-  
-<key>NSAppTransportSecurity</key>
-	<dict>
-		<key>NSAllowsArbitraryLoads</key>
-		<true/>
-	</dict>
-```
-
-## 2.3 Apply the License Key
-
-ComPDFKit for React Native is a commercial SDK, which requires a license to grant developer permission to release their apps. Each license is only valid for one `bundle ID` or `applicationId` in development mode. Other flexible licensing options are also supported, please contact [our marketing team](mailto:support@compdf.com) to know more.
-
-To initialize ComPDFKit using a license key, call either of the following before using any other ComPDFKit APIs or features:
-
-* **Online license**
-
-```tsx
-type Props = {};
-export default class App extends Component<Props> {
-	...
-  
-  componentDidMount(){
-    // Fill in your online license
-    NativeModules.OpenPDFModule.initialize('your android platform compdfkit license', 'your ios platform compdfkit license')
-  }
-  // ...
-}
-```
-
-* **Offline license**
-
-```tsx
-type Props = {};
-export default class App extends Component<Props> {
-	...
-  
-  componentDidMount(){
-    // Fill in your offline license
-    NativeModules.OpenPDFModule.init_('your compdfkit license')
-  }
-  // ...
-}
-```
-
-## 2.4 Run Project
-
-1. Create an `assets` directory in the project's root directory and copy the **configuration.json** file from the demo to this directory.
-
-<img src="./Image/2-3-1.png" alt="2-3-1" style="zoom:33%;" />
-
-2. Open your `App.tsx` file:
-
-```bash
-open App.tsx
-```
-
-3. Replace the entire contents of `App.tsx` with the following code snippet:
-
-```js
-/**
- * Copyright © 2014-2024 PDF Technologies, Inc. All Rights Reserved.
- *
- * THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
- * AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
- * UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES.
- * This notice may not be removed from this file.
- */
-
-import React, { Component } from 'react';
-import configuration from './assets/configuration.json';
-import DocumentPicker from 'react-native-document-picker'
-import {
-  Platform,
-  StyleSheet,
-  Text,
-  View,
-  Button,
-  NativeModules
-} from 'react-native';
-
-
-const instructions = Platform.select({
-  ios: 'Press Cmd+R to reload,\n' +
-    'Cmd+D or shake for dev menu',
-  android: 'Double tap R on your keyboard to reload,\n' +
-    'Shake or press menu button for dev menu',
-});
-
-
-type Props = {};
-export default class App extends Component<Props> {
-  
-  componentDidMount(){
-      // Fill in your online license
-         NativeModules.OpenPDFModule.initialize('your android platform compdfkit license', 'your ios platform compdfkit license')
-    
-      // Fill in your offline license
-      // NativeModules.OpenPDFModule.init_('your compdfkit license')
-  }
-  
-  render() {
-    return (
-      <View style={styles.container}>
-        <Text style={styles.welcome}>
-          Welcome to React Native!
-        </Text>
-        <Text style={styles.instructions}>
-          To get started, edit App.tsx
-        </Text>
-        <Text style={styles.instructions}>
-          {instructions}
-        </Text>
-        <Button
-          title={'Open sample document'}
-          onPress={() => {
-            this.jumpToNativeView();
-          }}
-        />
-        <View style={{margin:5}}/>
-        <Button 
-          title={'pick document'}
-          onPress={() => {
-            try {
-              const pickerResult = DocumentPicker.pick({
-                type: [DocumentPicker.types.pdf]
-              });
-              pickerResult.then(res => {
-                if (Platform.OS == 'android') {
-                  // only android
-                  NativeModules.OpenPDFModule.openPDFByUri(res[0].uri, '', JSON.stringify(configuration))
-                } else {
-                  NativeModules.OpenPDFModule.openPDFByConfiguration(res[0].uri, '', JSON.stringify(configuration))
-                }
-              })
-            } catch (err) {
-            }
-          }}
-        />
-      </View>
-    );
-  }
-
-  jumpToNativeView() {
-    NativeModules.OpenPDFModule.openPDF(JSON.stringify(configuration))
-
-    // android: filePath, ios:URL
-    // NativeModules.OpenPDFModule.openPDFByConfiguration(filePath, password, JSON.stringify(configuration))
-
-    // only android platform
-    // NativeModules.OpenPDFModule.openPDFByUri(uriString, password, JSON.stringify(configuration))
-  }
-}
-
-const styles = StyleSheet.create({
-  container: {
-    flex: 1,
-    justifyContent: 'center',
-    alignItems: 'center',
-    backgroundColor: '#F5FCFF',
-  },
-  welcome: {
-    fontSize: 20,
-    textAlign: 'center',
-    margin: 10,
-  },
-  instructions: {
-    textAlign: 'center',
-    color: '#333333',
-    marginBottom: 5,
-  }
-});
-```
-
-4. The app is now ready to launch! Go back to the terminal.
-
-```bash
-//Run on Android devices
-npx react-native run-android
-
-//Run on iOS devices
-npx react-native run-ios
-```
-
-We have provided two quick ways to open PDFs:
-
-- Open the document in the specified path
-
-```tsx
-// The ios platform can use this method to pass in the url string
-NativeModules.OpenPDFModule.openPDFByConfiguration(String filePath, String password, String configuration)
-```
-
-* Opening a document using Uri on the Android platform.
-
-```tsx
-NativeModules.OpenPDFModule.openPDFByUri(String uriString, String password, String configuration)
-```
-
-## 2.5 Troubleshooting
-
-1.SSL network request to download 'ComPDFKit' library failed when cocopods downloaded iOS third-party library
-
-If SSL network requests fail to download the `ComPDFKit` library when you run `pod install`, replace the third-party platform download address link of the ComPDFKit library and execute `pod install`
-
-```diff
-require_relative '../node_modules/react-native/scripts/react_native_pods'
-require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
-
-- platform :ios, '10.0'
-+ platform :ios, '11.0'
-install! 'cocoapods', :deterministic_uuids => false
-
-target 'PDFView_RN' do
-  config = use_native_modules!
-
-  # Flags change depending on the env values.
-  flags = get_default_flags()
-
-  use_react_native!(
-    :path => config[:reactNativePath],
-    # to enable hermes on iOS, change `false` to `true` and then install pods
-    :hermes_enabled => flags[:hermes_enabled],
-    :fabric_enabled => flags[:fabric_enabled],
-    # An absolute path to your application root.
-    :app_path => "#{Pod::Config.instance.installation_root}/.."
-  )
-
-  target 'PDFView_RNTests' do
-    inherit! :complete
-    # Pods for testing
-  end
-
-+  pod 'ComPDFKit', :git => 'https://github.com/ComPDFKit/compdfkit-pdf-sdk-ios-swift.git', :tag => '1.13.0'
-+  pod 'ComPDFKit_Tools', :git => 'https://github.com/ComPDFKit/compdfkit-pdf-sdk-ios-swift.git', :tag => '1.13.0'
-
-  # Enables Flipper.
-  #
-  # Note that if you have use_frameworks! enabled, Flipper will not work and
-  # you should disable the next line.
-  use_flipper!()
-
-  post_install do |installer|
-    react_native_post_install(installer)
-    __apply_Xcode_12_5_M1_post_install_workaround(installer)
-  end
-end
-```
-
-# 3 UI Customization
-
-In version **1.12.0**, we have expanded the options defined in the **configuration.json**. When using the `NativeModules.OpenPDFModule.openPDFByConfiguration` method to open a PDF view, you can define the JSON content to meet your product requirements. We will continue to enrich the configuration options in the future to further enhance the flexibility of the product. Here are some examples of commonly used configuration options:
-
-The following only shows the key parts of the example. Please pass in the complete json content when using it.
-
-1. Set the initial display mode and the list of available modes. The following code shows enabling only the viewer mode and annotations mode:
-
-```json
-{
-  "modeConfig": {
-    "initialViewMode": "viewer",
-    "availableViewModes": [
-      "viewer",
-      "annotations"
-    ]
-  },
-  ... // other options
-}
-```
-
-2. Set the list of enabled annotation types and default annotation attribute values. For example, enable only highlight annotations and set the color and transparency for highlight annotations:
-
-```json
-{
-  "annotationsConfig": {
-    "availableTypes": [
-      "note"
-    ],
-    "availableTools": [
-      "setting",
-      "undo",
-      "redo"
-    ],
-    "initAttribute": {
-      "note": {
-        "color": "#1460F3",
-        "alpha": 255
-      }
-    }
-  }
-  ... // other options
-}
-```
-
-3. Set the display mode and page flipping direction:
-
-```json
-{
-  "readerViewConfig": {
-    "displayMode": "doublePage",
-    "verticalMode": false
-  }
-  ... // other options
-}
-```
-
-The following is the complete [configuration](./assets/configuration.json) content with data description:
-
-```json
-  {
-    "modeConfig": {
-      "initialViewMode": "viewer",	// When initializing the display mode, nsure that the selected mode exists in the availableViewModes. Otherwise, it will default to the viewer mode. Refer to the availableViewModes field for valid values.
-      "availableViewModes": [				// Only modes listed in the mode list will be displayed.
-        "viewer",
-        "annotations",
-        "contentEditor",
-        "forms",
-        "signatures"
-      ]
-    },
-    "toolbarConfig": {							// Top Toolbar Configuration
-      "androidAvailableActions": [
-        "back",
-        "thumbnail",
-        "search",
-        "bota",
-        "menu"
-      ],
-      "iosLeftBarAvailableActions": [
-        "back",
-        "thumbnail"
-      ],
-      "iosRightBarAvailableActions": [
-        "search",
-        "bota",
-        "menu"
-      ],
-      "availableMenus": [
-        "viewSettings",
-        "documentEditor",
-        "documentInfo",
-        "watermark",
-        "security",
-        "flattened",
-        "save",
-        "share",
-        "openDocument"
-      ]
-    },
-    "annotationsConfig": {			// Annotation Feature Configuration
-      "availableTypes": [				// List of enabled annotation types for the bottom annotation functionality
-        "note",
-        "highlight",
-        "underline",
-        "squiggly",
-        "strikeout",
-        "ink",
-        "pencil",								// only ios platform
-        "circle",
-        "square",
-        "arrow",
-        "line",
-        "freetext",
-        "signature",
-        "stamp",
-        "pictures",
-        "link",
-        "sound"
-      ],
-      "availableTools": [				// Annotation tools enabled for the bottom annotation functionality
-        "setting",
-        "undo",
-        "redo"
-      ],
-      "initAttribute": {				// Default properties for annotations upon initialization, influencing attributes such as color, transparency, etc., when adding annotations.
-        "note": {
-          "color": "#1460F3",
-          "alpha": 255					// Color transparency 0~255
-        },
-        "highlight": {
-          "color": "#1460F3",
-          "alpha": 77
-        },
-        "underline": {
-          "color": "#1460F3",
-          "alpha": 77
-        },
-        "squiggly": {
-          "color": "#1460F3",
-          "alpha": 77
-        },
-        "strikeout": {
-          "color": "#1460F3",
-          "alpha": 77
-        },
-        "ink": {
-          "color": "#1460F3",
-          "alpha": 100,
-          "borderWidth": 10
-        },
-        "square": {
-          "fillColor": "#1460F3",
-          "borderColor": "#000000",
-          "colorAlpha" : 128,
-          "borderWidth": 2,
-          "borderStyle": {
-            "style": "solid",				// Border line styles: solid, dashed
-            "dashGap": 0.0					// Dashed line interval length, applicable only when the style is set to 'dashed'.
-          }
-        },
-        "circle": {
-          "fillColor": "#1460F3",
-          "borderColor": "#000000",
-          "colorAlpha" : 128,
-          "borderWidth": 2,
-          "borderStyle": {
-            "style": "solid",
-            "dashGap": 0.0
-          }
-        },
-        "line": {
-          "borderColor": "#1460F3",
-          "borderAlpha": 100,
-          "borderWidth": 5,
-          "borderStyle": {
-            "style": "solid",
-            "dashGap": 0.0
-          }
-        },
-        "arrow": {
-          "borderColor": "#1460F3",
-          "borderAlpha": 100,
-          "borderWidth": 5,
-          "borderStyle": {
-            "style": "solid",
-            "dashGap": 0.0
-          },
-          "startLineType": "none",			// Starting arrow style options: none, openArrow, closedArrow, square, circle, diamond.
-          "tailLineType": "openArrow" 	// tail arrow style options
-        },
-        "freeText": {
-          "fontColor": "#000000",
-          "fontColorAlpha": 255,
-          "fontSize": 30,
-          "isBold": false,
-          "isItalic": false,
-          "alignment": "left",				// left, center, right
-          "typeface": "Helvetica"			// Courier, Helvetica, Times-Roman
-        }
-      }
-    },
-    "contentEditorConfig": {
-      "availableTypes": [
-        "editorText",
-        "editorImage"
-      ],
-      "availableTools": [
-        "setting",
-        "undo",
-        "redo"
-      ],
-      "initAttribute": {							// Default attributes for text type in content editing, influencing text properties when adding text.
-        "text": {
-          "fontColor": "#000000",
-          "fontColorAlpha" : 100,
-          "fontSize": 30,
-          "isBold": false,
-          "isItalic": false,
-          "typeface": "Times-Roman",	// Courier, Helvetica, Times-Roman
-          "alignment": "left"					// left, center, right
-        }
-      }
-    },
-    "formsConfig": {
-      "availableTypes": [							// Types of forms displayed in the list of the bottom form toolbar.
-        "textField",
-        "checkBox",
-        "radioButton",
-        "listBox",
-        "comboBox",
-        "signaturesFields",
-        "pushButton"
-      ],
-      "availableTools": [
-        "undo",
-        "redo"
-      ],
-      "initAttribute": {
-        "textField": {
-          "fillColor": "#DDE9FF",
-          "borderColor": "#1460F3",
-          "borderWidth": 2,
-          "fontColor": "#000000",
-          "fontSize": 20,
-          "isBold": false,
-          "isItalic": false,
-          "alignment": "left",				// left, center, right
-          "multiline": true,
-          "typeface": "Helvetica"			// Courier, Helvetica, Times-Roman
-        },
-        "checkBox": {
-          "fillColor": "#DDE9FF",
-          "borderColor": "#1460F3",
-          "borderWidth": 2,
-          "checkedColor": "#43474D",
-          "isChecked": false,
-          "checkedStyle": "check"			// check, circle, cross, diamond, square, star
-        },
-        "radioButton": {
-          "fillColor": "#DDE9FF",
-          "borderColor": "#1460F3",
-          "borderWidth": 2,
-          "checkedColor": "#43474D",
-          "isChecked": false,
-          "checkedStyle": "circle"		// check, circle, cross, diamond, square, star
-        },
-        "listBox": {
-          "fillColor": "#DDE9FF",
-          "borderColor": "#1460F3",
-          "borderWidth": 2,
-          "fontColor": "#000000",
-          "fontSize": 20,
-          "typeface": "Helvetica",		// Courier, Helvetica, Times-Roman
-          "isBold": false,
-          "isItalic": false
-        },
-        "comboBox": {
-          "fillColor": "#DDE9FF",
-          "borderColor": "#1460F3",
-          "borderWidth": 2,
-          "fontColor": "#000000",
-          "fontSize": 20,
-          "typeface": "Helvetica",		// Courier, Helvetica, Times-Roman
-          "isBold": false,
-          "isItalic": false
-        },
-        "pushButton": {
-          "fillColor": "#DDE9FF",
-          "borderColor": "#1460F3",
-          "borderWidth": 2,
-          "fontColor": "#000000",
-          "fontSize": 20,
-          "title": "Button",
-          "typeface": "Helvetica",		// Courier, Helvetica, Times-Roman
-          "isBold": false,
-          "isItalic": false
-        },
-        "signaturesFields": {
-          "fillColor": "#DDE9FF",
-          "borderColor": "#000000",
-          "borderWidth": 2
-        }
-      }
-    },
-    "readerViewConfig": {
-      "linkHighlight": true,
-      "formFieldHighlight": true,
-      "displayMode": "singlePage",		// singlePage, doublePage, coverPage
-      "continueMode": true,
-      "verticalMode": true,
-      "cropMode": false,
-      "themes" : "light",							// light, dark, sepia, reseda
-      "enableSliderBar": true,
-      "enablePageIndicator": true,
-      "pageSpacing": 10,
-      "pageScale": 1.0,
-      "pageSameWidth": true
-    }
-  }
-```
-
-# 4 Support
-
-## 4.1 Reporting Problems
-
-Thank you for your interest in ComPDFKit PDF SDK, the only easy-to-use but powerful development solution to integrate high quality PDF rendering capabilities to your applications. If you encounter any technical questions or bug issues when using ComPDFKit PDF SDK for React Native, please submit the problem report to the ComPDFKit team. More information as follows would help us to solve your problem:
-
-- ComPDFKit PDF SDK product and version.
-- Your operating system and IDE version.
-- Detailed descriptions of the problem.
-- Any other related information, such as an error screenshot.
-
-## 4.2 Contact Information
-
-**Home Link:**
-
-[https://www.compdf.com](https://www.compdf.com)
-
-**Support & General Contact:**
-
-Email: support@compdf.com
-
-Thanks,
-The ComPDFKit Team

+ 0 - 17
__tests__/App.test.tsx

@@ -1,17 +0,0 @@
-/**
- * @format
- */
-
-import 'react-native';
-import React from 'react';
-import App from '../App';
-
-// Note: import explicitly to use the types shiped with jest.
-import {it} from '@jest/globals';
-
-// Note: test renderer must be required after react-native.
-import renderer from 'react-test-renderer';
-
-it('renders correctly', () => {
-  renderer.create(<App />);
-});

+ 0 - 139
android/app/build.gradle

@@ -1,139 +0,0 @@
-apply plugin: "com.android.application"
-apply plugin: "com.facebook.react"
-
-/**
- * This is the configuration block to customize your React Native Android app.
- * By default you don't need to apply any configuration, just uncomment the lines you need.
- */
-react {
-    /* Folders */
-    //   The root of your project, i.e. where "package.json" lives. Default is '..'
-    // root = file("../")
-    //   The folder where the react-native NPM package is. Default is ../node_modules/react-native
-    // reactNativeDir = file("../node_modules/react-native")
-    //   The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen
-    // codegenDir = file("../node_modules/@react-native/codegen")
-    //   The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js
-    // cliFile = file("../node_modules/react-native/cli.js")
-
-    /* Variants */
-    //   The list of variants to that are debuggable. For those we're going to
-    //   skip the bundling of the JS bundle and the assets. By default is just 'debug'.
-    //   If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants.
-    // debuggableVariants = ["liteDebug", "prodDebug"]
-
-    /* Bundling */
-    //   A list containing the node command and its flags. Default is just 'node'.
-    // nodeExecutableAndArgs = ["node"]
-    //
-    //   The command to run when bundling. By default is 'bundle'
-    // bundleCommand = "ram-bundle"
-    //
-    //   The path to the CLI configuration file. Default is empty.
-    // bundleConfig = file(../rn-cli.config.js)
-    //
-    //   The name of the generated asset file containing your JS bundle
-    // bundleAssetName = "MyApplication.android.bundle"
-    //
-    //   The entry file for bundle generation. Default is 'index.android.js' or 'index.js'
-    // entryFile = file("../js/MyApplication.android.js")
-    //
-    //   A list of extra flags to pass to the 'bundle' commands.
-    //   See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle
-    // extraPackagerArgs = []
-
-    /* Hermes Commands */
-    //   The hermes compiler command to run. By default it is 'hermesc'
-    // hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc"
-    //
-    //   The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map"
-    // hermesFlags = ["-O", "-output-source-map"]
-}
-
-/**
- * Set this to true to Run Proguard on Release builds to minify the Java bytecode.
- */
-def enableProguardInReleaseBuilds = true
-
-/**
- * The preferred build flavor of JavaScriptCore (JSC)
- *
- * For example, to use the international variant, you can use:
- * `def jscFlavor = 'org.webkit:android-jsc-intl:+'`
- *
- * The international variant includes ICU i18n library and necessary data
- * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that
- * give correct results when using with locales other than en-US. Note that
- * this variant is about 6MiB larger per architecture than default.
- */
-def jscFlavor = 'org.webkit:android-jsc:+'
-
-android {
-    ndkVersion rootProject.ext.ndkVersion
-
-    compileSdkVersion rootProject.ext.compileSdkVersion
-
-    namespace "com.compdfkit.pdfviewer"
-    defaultConfig {
-        applicationId "com.compdfkit.pdfviewer"
-        minSdkVersion rootProject.ext.minSdkVersion
-        targetSdkVersion rootProject.ext.targetSdkVersion
-        versionCode 4
-        versionName "1.13.0"
-    }
-    signingConfigs {
-        debug {
-            storeFile file('debug.keystore')
-            storePassword 'android'
-            keyAlias 'androiddebugkey'
-            keyPassword 'android'
-        }
-    }
-    buildTypes {
-        debug {
-            signingConfig signingConfigs.debug
-        }
-        release {
-            // Caution! In production, you need to generate your own keystore file.
-            // see https://reactnative.dev/docs/signed-apk-android.
-            signingConfig signingConfigs.debug
-            minifyEnabled enableProguardInReleaseBuilds
-            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
-        }
-    }
-}
-
-dependencies {
-    implementation fileTree(dir: "libs", include: ["*.jar","*.aar"])
-    // The version of react-native is set by the React Native Gradle Plugin
-    implementation("com.facebook.react:react-android")
-    //noinspection GradleDynamicVersion
-    implementation "com.facebook.react:react-native:+"  // From node_modules
-    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
-
-    api 'com.compdf:compdfkit:1.13.0'
-    api 'com.compdf:compdfkit-ui:1.13.0'
-    api 'com.compdf:compdfkit-tools:1.13.0'
-
-    api 'com.github.bumptech.glide:glide:4.15.1'
-    annotationProcessor 'com.github.bumptech.glide:compiler:4.15.1'
-    implementation 'androidx.documentfile:documentfile:1.0.1'
-
-    implementation 'androidx.appcompat:appcompat:1.6.1'
-    implementation 'com.google.android.material:material:1.8.0'
-
-
-    debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}")
-    debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") {
-        exclude group:'com.squareup.okhttp3', module:'okhttp'
-    }
-
-    debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}")
-    if (hermesEnabled.toBoolean()) {
-        implementation("com.facebook.react:hermes-android")
-    } else {
-        implementation jscFlavor
-    }
-}
-
-apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)

二進制
android/app/debug.keystore


+ 0 - 10
android/app/proguard-rules.pro

@@ -1,10 +0,0 @@
-# Add project specific ProGuard rules here.
-# By default, the flags in this file are appended to flags specified
-# in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt
-# You can edit the include path and order by changing the proguardFiles
-# directive in build.gradle.
-#
-# For more details, see
-#   http://developer.android.com/guide/developing/tools/proguard.html
-
-# Add any project specific keep options here:

+ 0 - 13
android/app/src/debug/AndroidManifest.xml

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools">
-
-    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
-
-    <application
-        android:usesCleartextTraffic="true"
-        tools:targetApi="28"
-        tools:ignore="GoogleAppIndexingWarning">
-        <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" android:exported="false" />
-    </application>
-</manifest>

+ 0 - 75
android/app/src/debug/java/com/compdfkit/ReactNativeFlipper.java

@@ -1,75 +0,0 @@
-/**
- * Copyright (c) Meta Platforms, Inc. and affiliates.
- *
- * <p>This source code is licensed under the MIT license found in the LICENSE file in the root
- * directory of this source tree.
- */
-package com.compdfkit;
-
-import android.content.Context;
-import com.facebook.flipper.android.AndroidFlipperClient;
-import com.facebook.flipper.android.utils.FlipperUtils;
-import com.facebook.flipper.core.FlipperClient;
-import com.facebook.flipper.plugins.crashreporter.CrashReporterPlugin;
-import com.facebook.flipper.plugins.databases.DatabasesFlipperPlugin;
-import com.facebook.flipper.plugins.fresco.FrescoFlipperPlugin;
-import com.facebook.flipper.plugins.inspector.DescriptorMapping;
-import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin;
-import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor;
-import com.facebook.flipper.plugins.network.NetworkFlipperPlugin;
-import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin;
-import com.facebook.react.ReactInstanceEventListener;
-import com.facebook.react.ReactInstanceManager;
-import com.facebook.react.bridge.ReactContext;
-import com.facebook.react.modules.network.NetworkingModule;
-import okhttp3.OkHttpClient;
-
-/**
- * Class responsible of loading Flipper inside your React Native application. This is the debug
- * flavor of it. Here you can add your own plugins and customize the Flipper setup.
- */
-public class ReactNativeFlipper {
-  public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) {
-    if (FlipperUtils.shouldEnableFlipper(context)) {
-      final FlipperClient client = AndroidFlipperClient.getInstance(context);
-
-      client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults()));
-      client.addPlugin(new DatabasesFlipperPlugin(context));
-      client.addPlugin(new SharedPreferencesFlipperPlugin(context));
-      client.addPlugin(CrashReporterPlugin.getInstance());
-
-      NetworkFlipperPlugin networkFlipperPlugin = new NetworkFlipperPlugin();
-      NetworkingModule.setCustomClientBuilder(
-          new NetworkingModule.CustomClientBuilder() {
-            @Override
-            public void apply(OkHttpClient.Builder builder) {
-              builder.addNetworkInterceptor(new FlipperOkhttpInterceptor(networkFlipperPlugin));
-            }
-          });
-      client.addPlugin(networkFlipperPlugin);
-      client.start();
-
-      // Fresco Plugin needs to ensure that ImagePipelineFactory is initialized
-      // Hence we run if after all native modules have been initialized
-      ReactContext reactContext = reactInstanceManager.getCurrentReactContext();
-      if (reactContext == null) {
-        reactInstanceManager.addReactInstanceEventListener(
-            new ReactInstanceEventListener() {
-              @Override
-              public void onReactContextInitialized(ReactContext reactContext) {
-                reactInstanceManager.removeReactInstanceEventListener(this);
-                reactContext.runOnNativeModulesQueueThread(
-                    new Runnable() {
-                      @Override
-                      public void run() {
-                        client.addPlugin(new FrescoFlipperPlugin());
-                      }
-                    });
-              }
-            });
-      } else {
-        client.addPlugin(new FrescoFlipperPlugin());
-      }
-    }
-  }
-}

+ 0 - 33
android/app/src/main/AndroidManifest.xml

@@ -1,33 +0,0 @@
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    package="com.compdfkit.pdfviewer">
-
-    <uses-permission android:name="android.permission.INTERNET" />
-    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
-    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
-    <uses-permission
-        android:name="android.permission.MANAGE_EXTERNAL_STORAGE"
-        tools:ignore="ScopedStorage" />
-
-    <application
-        android:name=".MainApplication"
-        android:allowBackup="false"
-        android:icon="@mipmap/ic_launcher"
-        android:label="@string/app_name"
-        android:requestLegacyExternalStorage="true"
-        android:roundIcon="@mipmap/ic_launcher_round"
-        android:theme="@style/AppTheme">
-        <activity
-            android:name=".MainActivity"
-            android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
-            android:exported="true"
-            android:label="@string/app_name"
-            android:launchMode="singleTask"
-            android:windowSoftInputMode="adjustResize">
-            <intent-filter>
-                <action android:name="android.intent.action.MAIN" />
-                <category android:name="android.intent.category.LAUNCHER" />
-            </intent-filter>
-        </activity>
-    </application>
-</manifest>

二進制
android/app/src/main/assets/PDF32000_2008.pdf


+ 0 - 32
android/app/src/main/java/com/compdfkit/pdfviewer/MainActivity.java

@@ -1,32 +0,0 @@
-package com.compdfkit.pdfviewer;
-
-import com.facebook.react.ReactActivity;
-import com.facebook.react.ReactActivityDelegate;
-import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint;
-import com.facebook.react.defaults.DefaultReactActivityDelegate;
-
-public class MainActivity extends ReactActivity {
-
-  /**
-   * Returns the name of the main component registered from JavaScript. This is used to schedule
-   * rendering of the component.
-   */
-  @Override
-  protected String getMainComponentName() {
-    return "ComPDFKit_RN";
-  }
-
-  /**
-   * Returns the instance of the {@link ReactActivityDelegate}. Here we use a util class {@link
-   * DefaultReactActivityDelegate} which allows you to easily enable Fabric and Concurrent React
-   * (aka React 18) with two boolean flags.
-   */
-  @Override
-  protected ReactActivityDelegate createReactActivityDelegate() {
-    return new DefaultReactActivityDelegate(
-        this,
-        getMainComponentName(),
-        // If you opted-in for the New Architecture, we enable the Fabric Renderer.
-        DefaultNewArchitectureEntryPoint.getFabricEnabled());
-  }
-}

+ 0 - 67
android/app/src/main/java/com/compdfkit/pdfviewer/MainApplication.java

@@ -1,67 +0,0 @@
-package com.compdfkit.pdfviewer;
-
-import android.app.Application;
-
-import com.compdfkit.ReactNativeFlipper;
-import com.compdfkit.pdfviewer.pdf.PDFReactPackage;
-import com.facebook.react.PackageList;
-import com.facebook.react.ReactApplication;
-import com.facebook.react.ReactNativeHost;
-import com.facebook.react.ReactPackage;
-import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint;
-import com.facebook.react.defaults.DefaultReactNativeHost;
-import com.facebook.soloader.SoLoader;
-
-import java.util.List;
-
-public class MainApplication extends Application implements ReactApplication {
-
-    private final ReactNativeHost mReactNativeHost =
-            new DefaultReactNativeHost(this) {
-                @Override
-                public boolean getUseDeveloperSupport() {
-                    return BuildConfig.DEBUG;
-                }
-
-                @Override
-                protected List<ReactPackage> getPackages() {
-                    @SuppressWarnings("UnnecessaryLocalVariable")
-                    List<ReactPackage> packages = new PackageList(this).getPackages();
-                    // Packages that cannot be autolinked yet can be added manually here, for example:
-                    // packages.add(new MyReactNativePackage());
-                    packages.add(new PDFReactPackage());
-                    return packages;
-                }
-
-                @Override
-                protected String getJSMainModuleName() {
-                    return "index";
-                }
-
-                @Override
-                protected boolean isNewArchEnabled() {
-                    return BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
-                }
-
-                @Override
-                protected Boolean isHermesEnabled() {
-                    return BuildConfig.IS_HERMES_ENABLED;
-                }
-            };
-
-    @Override
-    public ReactNativeHost getReactNativeHost() {
-        return mReactNativeHost;
-    }
-
-    @Override
-    public void onCreate() {
-        super.onCreate();
-        SoLoader.init(this, /* native exopackage */ false);
-        if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
-            // If you opted-in for the New Architecture, we load the native entry point for this app.
-            DefaultNewArchitectureEntryPoint.load();
-        }
-        ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
-    }
-}

+ 0 - 85
android/app/src/main/java/com/compdfkit/pdfviewer/pdf/OpenPDFModule.java

@@ -1,85 +0,0 @@
-/**
- * Copyright © 2014-2023 PDF Technologies, Inc. All Rights Reserved.
- *
- * THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
- * AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
- * UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES.
- * This notice may not be removed from this file.
- */
-
-package com.compdfkit.pdfviewer.pdf;
-
-import android.content.Intent;
-import android.net.Uri;
-
-import androidx.annotation.NonNull;
-
-import com.compdfkit.core.document.CPDFSdk;
-import com.compdfkit.tools.common.pdf.CPDFConfigurationUtils;
-import com.compdfkit.tools.common.pdf.CPDFDocumentActivity;
-import com.compdfkit.tools.common.pdf.config.CPDFConfiguration;
-import com.compdfkit.tools.common.utils.CFileUtils;
-import com.facebook.react.bridge.ReactApplicationContext;
-import com.facebook.react.bridge.ReactContext;
-import com.facebook.react.bridge.ReactContextBaseJavaModule;
-import com.facebook.react.bridge.ReactMethod;
-
-public class OpenPDFModule extends ReactContextBaseJavaModule {
-
-    private ReactContext mReactContext;
-
-    public OpenPDFModule(ReactApplicationContext context) {
-        super(context);
-        this.mReactContext = context;
-    }
-
-
-    @NonNull
-    @Override
-    public String getName() {
-        return "OpenPDFModule";
-    }
-
-    @ReactMethod
-    public void init_(String license){
-        CPDFSdk.init(mReactContext, license, true);
-    }
-
-    @ReactMethod
-    public void initialize(String androidOnlineLicense, String iosOnlineLicense){
-        CPDFSdk.init(mReactContext, androidOnlineLicense, false);
-    }
-
-    @ReactMethod
-    public void openPDF(String configurationJson) {
-        String samplePDFPath = CFileUtils.getAssetsTempFile(mReactContext, "PDF32000_2008.pdf","PDF32000_2008.pdf");
-        CPDFConfiguration configuration = CPDFConfigurationUtils.fromJson(configurationJson);
-        Intent intent = new Intent(mReactContext, CPDFDocumentActivity.class);
-        intent.putExtra(CPDFDocumentActivity.EXTRA_CONFIGURATION, configuration);
-        intent.putExtra(CPDFDocumentActivity.EXTRA_FILE_PATH, samplePDFPath);
-        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-        mReactContext.startActivity(intent);
-    }
-
-    @ReactMethod
-    public void openPDFByConfiguration(String filePath, String password, String configurationJson){
-        Intent intent = new Intent(mReactContext, CPDFDocumentActivity.class);
-        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-        intent.putExtra(CPDFDocumentActivity.EXTRA_FILE_PATH, filePath);
-        intent.putExtra(CPDFDocumentActivity.EXTRA_FILE_PASSWORD, password);
-        CPDFConfiguration configuration = CPDFConfigurationUtils.fromJson(configurationJson);
-        intent.putExtra(CPDFDocumentActivity.EXTRA_CONFIGURATION, configuration);
-        mReactContext.startActivity(intent);
-    }
-
-    @ReactMethod
-    public void openPDFByUri(String uriString, String password, String configurationJson){
-        Intent intent = new Intent(mReactContext, CPDFDocumentActivity.class);
-        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-        intent.setData(Uri.parse(uriString));
-        intent.putExtra(CPDFDocumentActivity.EXTRA_FILE_PASSWORD, password);
-        CPDFConfiguration configuration = CPDFConfigurationUtils.fromJson(configurationJson);
-        intent.putExtra(CPDFDocumentActivity.EXTRA_CONFIGURATION, configuration);
-        mReactContext.startActivity(intent);
-    }
-}

+ 0 - 38
android/app/src/main/java/com/compdfkit/pdfviewer/pdf/PDFReactPackage.java

@@ -1,38 +0,0 @@
-/**
- * Copyright © 2014-2023 PDF Technologies, Inc. All Rights Reserved.
- *
- * THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
- * AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
- * UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES.
- * This notice may not be removed from this file.
- */
-
-package com.compdfkit.pdfviewer.pdf;
-
-import androidx.annotation.NonNull;
-
-import com.compdfkit.pdfviewer.pdf.OpenPDFModule;
-import com.facebook.react.ReactPackage;
-import com.facebook.react.bridge.NativeModule;
-import com.facebook.react.bridge.ReactApplicationContext;
-import com.facebook.react.uimanager.ViewManager;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-public class PDFReactPackage implements ReactPackage {
-    @NonNull
-    @Override
-    public List<NativeModule> createNativeModules(@NonNull ReactApplicationContext reactContext) {
-        List<NativeModule> modules = new ArrayList<>();
-        modules.add(new OpenPDFModule(reactContext));
-        return modules;
-    }
-
-    @NonNull
-    @Override
-    public List<ViewManager> createViewManagers(@NonNull ReactApplicationContext reactContext) {
-        return Collections.emptyList();
-    }
-}

+ 0 - 36
android/app/src/main/res/drawable/rn_edit_text_material.xml

@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-<inset xmlns:android="http://schemas.android.com/apk/res/android"
-       android:insetLeft="@dimen/abc_edit_text_inset_horizontal_material"
-       android:insetRight="@dimen/abc_edit_text_inset_horizontal_material"
-       android:insetTop="@dimen/abc_edit_text_inset_top_material"
-       android:insetBottom="@dimen/abc_edit_text_inset_bottom_material">
-
-    <selector>
-        <!--
-          This file is a copy of abc_edit_text_material (https://bit.ly/3k8fX7I).
-          The item below with state_pressed="false" and state_focused="false" causes a NullPointerException.
-          NullPointerException:tempt to invoke virtual method 'android.graphics.drawable.Drawable android.graphics.drawable.Drawable$ConstantState.newDrawable(android.content.res.Resources)'
-
-          <item android:state_pressed="false" android:state_focused="false" android:drawable="@drawable/abc_textfield_default_mtrl_alpha"/>
-
-          For more info, see https://bit.ly/3CdLStv (react-native/pull/29452) and https://bit.ly/3nxOMoR.
-        -->
-        <item android:state_enabled="false" android:drawable="@drawable/abc_textfield_default_mtrl_alpha"/>
-        <item android:drawable="@drawable/abc_textfield_activated_mtrl_alpha"/>
-    </selector>
-
-</inset>

+ 0 - 5
android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
-    <background android:drawable="@android:color/white"/>
-    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
-</adaptive-icon>

+ 0 - 5
android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
-    <background android:drawable="@android:color/white"/>
-    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
-</adaptive-icon>

二進制
android/app/src/main/res/mipmap-hdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-mdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png


+ 0 - 5
android/app/src/main/res/values/strings.xml

@@ -1,5 +0,0 @@
-<resources>
-    <string name="app_name">ComPDFKit_RN</string>
-    <string name="app_permission_storage">Apply for SD card read and write permission</string>
-
-</resources>

+ 0 - 9
android/app/src/main/res/values/styles.xml

@@ -1,9 +0,0 @@
-<resources>
-
-    <!-- Base application theme. -->
-    <style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
-        <!-- Customize your theme here. -->
-        <item name="android:editTextBackground">@drawable/rn_edit_text_material</item>
-    </style>
-
-</resources>

+ 0 - 20
android/app/src/release/java/com/compdfkit_rn/ReactNativeFlipper.java

@@ -1,20 +0,0 @@
-/**
- * Copyright (c) Meta Platforms, Inc. and affiliates.
- *
- * <p>This source code is licensed under the MIT license found in the LICENSE file in the root
- * directory of this source tree.
- */
-package com.compdfkit;
-
-import android.content.Context;
-import com.facebook.react.ReactInstanceManager;
-
-/**
- * Class responsible of loading Flipper inside your React Native application. This is the release
- * flavor of it so it's empty as we don't want to load Flipper.
- */
-public class ReactNativeFlipper {
-  public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) {
-    // Do nothing as we don't want to initialize Flipper on Release.
-  }
-}

+ 0 - 41
android/build.gradle

@@ -1,41 +0,0 @@
-// Top-level build file where you can add configuration options common to all sub-projects/modules.
-
-buildscript {
-    ext {
-        buildToolsVersion = "33.0.0"
-        minSdkVersion = 21
-        compileSdkVersion = 33
-        targetSdkVersion = 33
-
-        // We use NDK 23 which has both M1 support and is the side-by-side NDK version from AGP.
-//        ndkVersion = "23.1.7779620"
-        if (System.properties['os.arch'] == "aarch64") {
-            // For M1 Users we need to use the NDK 24 which added support for aarch64
-            ndkVersion = "24.0.8215888"
-        } else {
-            // Otherwise we default to the side-by-side NDK version from AGP.
-            ndkVersion = "21.4.7075529"
-        }
-    }
-    repositories {
-        google()
-        mavenCentral()
-    }
-    dependencies {
-        classpath("com.android.tools.build:gradle")
-        classpath("com.facebook.react:react-native-gradle-plugin")
-    }
-}
-
-rootProject.allprojects {
-    repositories {
-        google()
-        mavenCentral()
-        maven {
-            url 'https://s01.oss.sonatype.org/content/repositories/snapshots/'
-        }
-    }
-}
-task clean(type: Delete) {
-    delete rootProject.buildDir
-}

+ 0 - 44
android/gradle.properties

@@ -1,44 +0,0 @@
-# Project-wide Gradle settings.
-
-# IDE (e.g. Android Studio) users:
-# Gradle settings configured through the IDE *will override*
-# any settings specified in this file.
-
-# For more details on how to configure your build environment visit
-# http://www.gradle.org/docs/current/userguide/build_environment.html
-
-# Specifies the JVM arguments used for the daemon process.
-# The setting is particularly useful for tweaking memory settings.
-# Default value: -Xmx512m -XX:MaxMetaspaceSize=256m
-org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m
-
-# When configured, Gradle will run in incubating parallel mode.
-# This option should only be used with decoupled projects. More details, visit
-# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
-# org.gradle.parallel=true
-
-# AndroidX package structure to make it clearer which packages are bundled with the
-# Android operating system, and which are packaged with your app's APK
-# https://developer.android.com/topic/libraries/support-library/androidx-rn
-android.useAndroidX=true
-# Automatically convert third-party libraries to use AndroidX
-android.enableJetifier=true
-
-# Version of flipper SDK to use with React Native
-FLIPPER_VERSION=0.182.0
-
-# Use this property to specify which architecture you want to build.
-# You can also override it from the CLI using
-# ./gradlew <task> -PreactNativeArchitectures=x86_64
-reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
-
-# Use this property to enable support to the new architecture.
-# This will allow you to use TurboModules and the Fabric render in
-# your application. You should enable this flag either if you want
-# to write custom TurboModules/Fabric components OR use libraries that
-# are providing them.
-newArchEnabled=true
-
-# Use this property to enable or disable the Hermes JS engine.
-# If set to false, you will be using JSC instead.
-hermesEnabled=true

二進制
android/gradle/wrapper/gradle-wrapper.jar


+ 0 - 6
android/gradle/wrapper/gradle-wrapper.properties

@@ -1,6 +0,0 @@
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-all.zip
-networkTimeout=10000
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists

+ 0 - 244
android/gradlew

@@ -1,244 +0,0 @@
-#!/bin/sh
-
-#
-# Copyright © 2015-2021 the original authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-##############################################################################
-#
-#   Gradle start up script for POSIX generated by Gradle.
-#
-#   Important for running:
-#
-#   (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
-#       noncompliant, but you have some other compliant shell such as ksh or
-#       bash, then to run this script, type that shell name before the whole
-#       command line, like:
-#
-#           ksh Gradle
-#
-#       Busybox and similar reduced shells will NOT work, because this script
-#       requires all of these POSIX shell features:
-#         * functions;
-#         * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
-#           «${var#prefix}», «${var%suffix}», and «$( cmd )»;
-#         * compound commands having a testable exit status, especially «case»;
-#         * various built-in commands including «command», «set», and «ulimit».
-#
-#   Important for patching:
-#
-#   (2) This script targets any POSIX shell, so it avoids extensions provided
-#       by Bash, Ksh, etc; in particular arrays are avoided.
-#
-#       The "traditional" practice of packing multiple parameters into a
-#       space-separated string is a well documented source of bugs and security
-#       problems, so this is (mostly) avoided, by progressively accumulating
-#       options in "$@", and eventually passing that to Java.
-#
-#       Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
-#       and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
-#       see the in-line comments for details.
-#
-#       There are tweaks for specific operating systems such as AIX, CygWin,
-#       Darwin, MinGW, and NonStop.
-#
-#   (3) This script is generated from the Groovy template
-#       https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
-#       within the Gradle project.
-#
-#       You can find Gradle at https://github.com/gradle/gradle/.
-#
-##############################################################################
-
-# Attempt to set APP_HOME
-
-# Resolve links: $0 may be a link
-app_path=$0
-
-# Need this for daisy-chained symlinks.
-while
-    APP_HOME=${app_path%"${app_path##*/}"}  # leaves a trailing /; empty if no leading path
-    [ -h "$app_path" ]
-do
-    ls=$( ls -ld "$app_path" )
-    link=${ls#*' -> '}
-    case $link in             #(
-      /*)   app_path=$link ;; #(
-      *)    app_path=$APP_HOME$link ;;
-    esac
-done
-
-# This is normally unused
-# shellcheck disable=SC2034
-APP_BASE_NAME=${0##*/}
-APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
-
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
-
-# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD=maximum
-
-warn () {
-    echo "$*"
-} >&2
-
-die () {
-    echo
-    echo "$*"
-    echo
-    exit 1
-} >&2
-
-# OS specific support (must be 'true' or 'false').
-cygwin=false
-msys=false
-darwin=false
-nonstop=false
-case "$( uname )" in                #(
-  CYGWIN* )         cygwin=true  ;; #(
-  Darwin* )         darwin=true  ;; #(
-  MSYS* | MINGW* )  msys=true    ;; #(
-  NONSTOP* )        nonstop=true ;;
-esac
-
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
-
-
-# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
-    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
-        # IBM's JDK on AIX uses strange locations for the executables
-        JAVACMD=$JAVA_HOME/jre/sh/java
-    else
-        JAVACMD=$JAVA_HOME/bin/java
-    fi
-    if [ ! -x "$JAVACMD" ] ; then
-        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-    fi
-else
-    JAVACMD=java
-    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-fi
-
-# Increase the maximum file descriptors if we can.
-if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
-    case $MAX_FD in #(
-      max*)
-        # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
-        # shellcheck disable=SC3045 
-        MAX_FD=$( ulimit -H -n ) ||
-            warn "Could not query maximum file descriptor limit"
-    esac
-    case $MAX_FD in  #(
-      '' | soft) :;; #(
-      *)
-        # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
-        # shellcheck disable=SC3045 
-        ulimit -n "$MAX_FD" ||
-            warn "Could not set maximum file descriptor limit to $MAX_FD"
-    esac
-fi
-
-# Collect all arguments for the java command, stacking in reverse order:
-#   * args from the command line
-#   * the main class name
-#   * -classpath
-#   * -D...appname settings
-#   * --module-path (only if needed)
-#   * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
-
-# For Cygwin or MSYS, switch paths to Windows format before running java
-if "$cygwin" || "$msys" ; then
-    APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
-    CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
-
-    JAVACMD=$( cygpath --unix "$JAVACMD" )
-
-    # Now convert the arguments - kludge to limit ourselves to /bin/sh
-    for arg do
-        if
-            case $arg in                                #(
-              -*)   false ;;                            # don't mess with options #(
-              /?*)  t=${arg#/} t=/${t%%/*}              # looks like a POSIX filepath
-                    [ -e "$t" ] ;;                      #(
-              *)    false ;;
-            esac
-        then
-            arg=$( cygpath --path --ignore --mixed "$arg" )
-        fi
-        # Roll the args list around exactly as many times as the number of
-        # args, so each arg winds up back in the position where it started, but
-        # possibly modified.
-        #
-        # NB: a `for` loop captures its iteration list before it begins, so
-        # changing the positional parameters here affects neither the number of
-        # iterations, nor the values presented in `arg`.
-        shift                   # remove old arg
-        set -- "$@" "$arg"      # push replacement arg
-    done
-fi
-
-# Collect all arguments for the java command;
-#   * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
-#     shell script including quotes and variable substitutions, so put them in
-#     double quotes to make sure that they get re-expanded; and
-#   * put everything else in single quotes, so that it's not re-expanded.
-
-set -- \
-        "-Dorg.gradle.appname=$APP_BASE_NAME" \
-        -classpath "$CLASSPATH" \
-        org.gradle.wrapper.GradleWrapperMain \
-        "$@"
-
-# Stop when "xargs" is not available.
-if ! command -v xargs >/dev/null 2>&1
-then
-    die "xargs is not available"
-fi
-
-# Use "xargs" to parse quoted args.
-#
-# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
-#
-# In Bash we could simply go:
-#
-#   readarray ARGS < <( xargs -n1 <<<"$var" ) &&
-#   set -- "${ARGS[@]}" "$@"
-#
-# but POSIX shell has neither arrays nor command substitution, so instead we
-# post-process each arg (as a line of input to sed) to backslash-escape any
-# character that might be a shell metacharacter, then use eval to reverse
-# that process (while maintaining the separation between arguments), and wrap
-# the whole thing up as a single "set" statement.
-#
-# This will of course break if any of these variables contains a newline or
-# an unmatched quote.
-#
-
-eval "set -- $(
-        printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
-        xargs -n1 |
-        sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
-        tr '\n' ' '
-    )" '"$@"'
-
-exec "$JAVACMD" "$@"

+ 0 - 92
android/gradlew.bat

@@ -1,92 +0,0 @@
-@rem
-@rem Copyright 2015 the original author or authors.
-@rem
-@rem Licensed under the Apache License, Version 2.0 (the "License");
-@rem you may not use this file except in compliance with the License.
-@rem You may obtain a copy of the License at
-@rem
-@rem      https://www.apache.org/licenses/LICENSE-2.0
-@rem
-@rem Unless required by applicable law or agreed to in writing, software
-@rem distributed under the License is distributed on an "AS IS" BASIS,
-@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-@rem See the License for the specific language governing permissions and
-@rem limitations under the License.
-@rem
-
-@if "%DEBUG%"=="" @echo off
-@rem ##########################################################################
-@rem
-@rem  Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%"=="" set DIRNAME=.
-@rem This is normally unused
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Resolve any "." and ".." in APP_HOME to make it shorter.
-for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if %ERRORLEVEL% equ 0 goto execute
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto execute
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
-
-:end
-@rem End local scope for the variables with windows NT shell
-if %ERRORLEVEL% equ 0 goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-set EXIT_CODE=%ERRORLEVEL%
-if %EXIT_CODE% equ 0 set EXIT_CODE=1
-if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
-exit /b %EXIT_CODE%
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega

+ 0 - 4
android/settings.gradle

@@ -1,4 +0,0 @@
-rootProject.name = 'ComPDFKit_RN'
-apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
-include ':app'
-includeBuild('../node_modules/@react-native/gradle-plugin')

+ 0 - 4
app.json

@@ -1,4 +0,0 @@
-{
-  "name": "ComPDFKit_RN",
-  "displayName": "ComPDFKit_RN"
-}

+ 0 - 258
assets/configuration.json

@@ -1,258 +0,0 @@
-{
-  "modeConfig": {
-    "initialViewMode": "viewer",
-    "availableViewModes": [
-      "viewer",
-      "annotations",
-      "contentEditor",
-      "forms",
-      "signatures"
-    ]
-  },
-  "toolbarConfig": {
-    "androidAvailableActions": [
-      "thumbnail",
-      "search",
-      "bota",
-      "menu"
-    ],
-    "iosLeftBarAvailableActions": [
-      "back",
-      "thumbnail"
-    ],
-    "iosRightBarAvailableActions": [
-      "search",
-      "bota",
-      "menu"
-    ],
-    "availableMenus": [
-      "viewSettings",
-      "documentEditor",
-      "documentInfo",
-      "watermark",
-      "security",
-      "flattened",
-      "save",
-      "share",
-      "openDocument"
-    ]
-  },
-  "annotationsConfig": {
-    "availableTypes": [
-      "note",
-      "highlight",
-      "underline",
-      "squiggly",
-      "strikeout",
-      "ink",
-      "circle",
-      "square",
-      "arrow",
-      "line",
-      "freetext",
-      "signature",
-      "stamp",
-      "pictures",
-      "link",
-      "sound"
-    ],
-    "availableTools": [
-      "setting",
-      "undo",
-      "redo"
-    ],
-    "initAttribute": {
-      "note": {
-        "color": "#1460F3",
-        "alpha": 255
-      },
-      "highlight": {
-        "color": "#1460F3",
-        "alpha": 77
-      },
-      "underline": {
-        "color": "#1460F3",
-        "alpha": 77
-      },
-      "squiggly": {
-        "color": "#1460F3",
-        "alpha": 77
-      },
-      "strikeout": {
-        "color": "#1460F3",
-        "alpha": 77
-      },
-      "ink": {
-        "color": "#1460F3",
-        "alpha": 100,
-        "borderWidth": 10
-      },
-      "square": {
-        "fillColor": "#1460F3",
-        "borderColor": "#000000",
-        "colorAlpha" : 128,
-        "borderWidth": 2,
-        "borderStyle": {
-          "style": "solid",
-          "dashGap": 0.0
-        }
-      },
-      "circle": {
-        "fillColor": "#1460F3",
-        "borderColor": "#000000",
-        "colorAlpha" : 128,
-        "borderWidth": 2,
-        "borderStyle": {
-          "style": "solid",
-          "dashGap": 0.0
-        }
-      },
-      "line": {
-        "borderColor": "#1460F3",
-        "borderAlpha": 100,
-        "borderWidth": 5,
-        "borderStyle": {
-          "style": "solid",
-          "dashGap": 0.0
-        }
-      },
-      "arrow": {
-        "borderColor": "#1460F3",
-        "borderAlpha": 100,
-        "borderWidth": 5,
-        "borderStyle": {
-          "style": "solid",
-          "dashGap": 0.0
-        },
-        "startLineType": "none",
-        "tailLineType": "openArrow"
-      },
-      "freeText": {
-        "fontColor": "#000000",
-        "fontColorAlpha": 255,
-        "fontSize": 30,
-        "isBold": false,
-        "isItalic": false,
-        "alignment": "left",
-        "typeface": "Helvetica"
-      }
-    }
-  },
-  "contentEditorConfig": {
-    "availableTypes": [
-      "editorText",
-      "editorImage"
-    ],
-    "availableTools": [
-      "setting",
-      "undo",
-      "redo"
-    ],
-    "initAttribute": {
-      "text": {
-        "fontColor": "#000000",
-        "fontColorAlpha" : 100,
-        "fontSize": 30,
-        "isBold": false,
-        "isItalic": false,
-        "typeface": "Times-Roman",
-        "alignment": "left"
-      }
-    }
-  },
-  "formsConfig": {
-    "availableTypes": [
-      "textField",
-      "checkBox",
-      "radioButton",
-      "listBox",
-      "comboBox",
-      "signaturesFields",
-      "pushButton"
-    ],
-    "availableTools": [
-      "undo",
-      "redo"
-    ],
-    "initAttribute": {
-      "textField": {
-        "fillColor": "#DDE9FF",
-        "borderColor": "#1460F3",
-        "borderWidth": 2,
-        "fontColor": "#000000",
-        "fontSize": 20,
-        "isBold": false,
-        "isItalic": false,
-        "alignment": "left",
-        "multiline": true,
-        "typeface": "Helvetica"
-      },
-      "checkBox": {
-        "fillColor": "#DDE9FF",
-        "borderColor": "#1460F3",
-        "borderWidth": 2,
-        "checkedColor": "#43474D",
-        "isChecked": false,
-        "checkedStyle": "check"
-      },
-      "radioButton": {
-        "fillColor": "#DDE9FF",
-        "borderColor": "#1460F3",
-        "borderWidth": 2,
-        "checkedColor": "#43474D",
-        "isChecked": false,
-        "checkedStyle": "circle"
-      },
-      "listBox": {
-        "fillColor": "#DDE9FF",
-        "borderColor": "#1460F3",
-        "borderWidth": 2,
-        "fontColor": "#000000",
-        "fontSize": 20,
-        "typeface": "Helvetica",
-        "isBold": false,
-        "isItalic": false
-      },
-      "comboBox": {
-        "fillColor": "#DDE9FF",
-        "borderColor": "#1460F3",
-        "borderWidth": 2,
-        "fontColor": "#000000",
-        "fontSize": 20,
-        "typeface": "Helvetica",
-        "isBold": false,
-        "isItalic": false
-      },
-      "pushButton": {
-        "fillColor": "#DDE9FF",
-        "borderColor": "#1460F3",
-        "borderWidth": 2,
-        "fontColor": "#000000",
-        "fontSize": 20,
-        "title": "Button",
-        "typeface": "Helvetica",
-        "isBold": false,
-        "isItalic": false
-      },
-      "signaturesFields": {
-        "fillColor": "#DDE9FF",
-        "borderColor": "#000000",
-        "borderWidth": 2
-      }
-    }
-  },
-  "readerViewConfig": {
-    "linkHighlight": true,
-    "formFieldHighlight": true,
-    "displayMode": "singlePage",
-    "continueMode": true,
-    "verticalMode": true,
-    "cropMode": false,
-    "themes" : "light",
-    "enableSliderBar": true,
-    "enablePageIndicator": true,
-    "pageSpacing": 10,
-    "pageScale": 1.0,
-    "pageSameWidth": true
-  }
-}

+ 0 - 3
babel.config.js

@@ -1,3 +0,0 @@
-module.exports = {
-  presets: ['module:metro-react-native-babel-preset'],
-};

+ 0 - 9
index.js

@@ -1,9 +0,0 @@
-/**
- * @format
- */
-
-import {AppRegistry} from 'react-native';
-import App from './App';
-import {name as appName} from './app.json';
-
-AppRegistry.registerComponent(appName, () => App);

+ 0 - 11
ios/.xcode.env

@@ -1,11 +0,0 @@
-# This `.xcode.env` file is versioned and is used to source the environment
-# used when running script phases inside Xcode.
-# To customize your local environment, you can create an `.xcode.env.local`
-# file that is not versioned.
-
-# NODE_BINARY variable contains the PATH to the node executable.
-#
-# Customize the NODE_BINARY variable here.
-# For example, to use nvm with brew, add the following line
-# . "$(brew --prefix nvm)/nvm.sh" --no-use
-export NODE_BINARY=$(command -v node)

File diff suppressed because it is too large
+ 0 - 753
ios/ComPDFKit_RN.xcodeproj/project.pbxproj


+ 0 - 88
ios/ComPDFKit_RN.xcodeproj/xcshareddata/xcschemes/ComPDFKit_RN.xcscheme

@@ -1,88 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Scheme
-   LastUpgradeVersion = "1210"
-   version = "1.3">
-   <BuildAction
-      parallelizeBuildables = "YES"
-      buildImplicitDependencies = "YES">
-      <BuildActionEntries>
-         <BuildActionEntry
-            buildForTesting = "YES"
-            buildForRunning = "YES"
-            buildForProfiling = "YES"
-            buildForArchiving = "YES"
-            buildForAnalyzing = "YES">
-            <BuildableReference
-               BuildableIdentifier = "primary"
-               BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
-               BuildableName = "ComPDFKit_RN.app"
-               BlueprintName = "ComPDFKit_RN"
-               ReferencedContainer = "container:ComPDFKit_RN.xcodeproj">
-            </BuildableReference>
-         </BuildActionEntry>
-      </BuildActionEntries>
-   </BuildAction>
-   <TestAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES">
-      <Testables>
-         <TestableReference
-            skipped = "NO">
-            <BuildableReference
-               BuildableIdentifier = "primary"
-               BlueprintIdentifier = "00E356ED1AD99517003FC87E"
-               BuildableName = "ComPDFKit_RNTests.xctest"
-               BlueprintName = "ComPDFKit_RNTests"
-               ReferencedContainer = "container:ComPDFKit_RN.xcodeproj">
-            </BuildableReference>
-         </TestableReference>
-      </Testables>
-   </TestAction>
-   <LaunchAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      launchStyle = "0"
-      useCustomWorkingDirectory = "NO"
-      ignoresPersistentStateOnLaunch = "NO"
-      debugDocumentVersioning = "YES"
-      debugServiceExtension = "internal"
-      allowLocationSimulation = "YES">
-      <BuildableProductRunnable
-         runnableDebuggingMode = "0">
-         <BuildableReference
-            BuildableIdentifier = "primary"
-            BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
-            BuildableName = "ComPDFKit_RN.app"
-            BlueprintName = "ComPDFKit_RN"
-            ReferencedContainer = "container:ComPDFKit_RN.xcodeproj">
-         </BuildableReference>
-      </BuildableProductRunnable>
-   </LaunchAction>
-   <ProfileAction
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      savedToolIdentifier = ""
-      useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES">
-      <BuildableProductRunnable
-         runnableDebuggingMode = "0">
-         <BuildableReference
-            BuildableIdentifier = "primary"
-            BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
-            BuildableName = "ComPDFKit_RN.app"
-            BlueprintName = "ComPDFKit_RN"
-            ReferencedContainer = "container:ComPDFKit_RN.xcodeproj">
-         </BuildableReference>
-      </BuildableProductRunnable>
-   </ProfileAction>
-   <AnalyzeAction
-      buildConfiguration = "Debug">
-   </AnalyzeAction>
-   <ArchiveAction
-      buildConfiguration = "Release"
-      revealArchiveInOrganizer = "YES">
-   </ArchiveAction>
-</Scheme>

+ 0 - 6
ios/ComPDFKit_RN/AppDelegate.h

@@ -1,6 +0,0 @@
-#import <RCTAppDelegate.h>
-#import <UIKit/UIKit.h>
-
-@interface AppDelegate : RCTAppDelegate
-
-@end

+ 0 - 28
ios/ComPDFKit_RN/AppDelegate.mm

@@ -1,28 +0,0 @@
-#import "AppDelegate.h"
-
-#import <ComPDFKit/ComPDFKit.h>
-
-#import <React/RCTBundleURLProvider.h>
-
-@implementation AppDelegate
-
-- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
-{
-  self.moduleName = @"ComPDFKit_RN";
-  // You can add your custom initial props in the dictionary below.
-  // They will be passed down to the ViewController used by React Native.
-  self.initialProps = @{};
-
-  return [super application:application didFinishLaunchingWithOptions:launchOptions];
-}
-
-- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
-{
-#if DEBUG
-  return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
-#else
-  return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
-#endif
-}
-
-@end

+ 0 - 6
ios/ComPDFKit_RN/ComPDFKit_RN-Bridging-Header.h

@@ -1,6 +0,0 @@
-//
-//  Use this file to import your target's public headers that you would like to expose to Swift.
-//
-
-#import <React/RCTBridgeModule.h>
-

+ 0 - 158
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/Contents.json

@@ -1,158 +0,0 @@
-{
-  "images" : [
-    {
-      "filename" : "icon-20@2x.png",
-      "idiom" : "iphone",
-      "scale" : "2x",
-      "size" : "20x20"
-    },
-    {
-      "filename" : "icon-20@3x.png",
-      "idiom" : "iphone",
-      "scale" : "3x",
-      "size" : "20x20"
-    },
-    {
-      "filename" : "icon-29.png",
-      "idiom" : "iphone",
-      "scale" : "1x",
-      "size" : "29x29"
-    },
-    {
-      "filename" : "icon-29@2x.png",
-      "idiom" : "iphone",
-      "scale" : "2x",
-      "size" : "29x29"
-    },
-    {
-      "filename" : "icon-29@3x.png",
-      "idiom" : "iphone",
-      "scale" : "3x",
-      "size" : "29x29"
-    },
-    {
-      "filename" : "icon-40@2x.png",
-      "idiom" : "iphone",
-      "scale" : "2x",
-      "size" : "40x40"
-    },
-    {
-      "filename" : "icon-40@3x.png",
-      "idiom" : "iphone",
-      "scale" : "3x",
-      "size" : "40x40"
-    },
-    {
-      "filename" : "icon-57.png",
-      "idiom" : "iphone",
-      "scale" : "1x",
-      "size" : "57x57"
-    },
-    {
-      "filename" : "icon-57@2x.png",
-      "idiom" : "iphone",
-      "scale" : "2x",
-      "size" : "57x57"
-    },
-    {
-      "filename" : "icon-60@2x.png",
-      "idiom" : "iphone",
-      "scale" : "2x",
-      "size" : "60x60"
-    },
-    {
-      "filename" : "icon-60@3x.png",
-      "idiom" : "iphone",
-      "scale" : "3x",
-      "size" : "60x60"
-    },
-    {
-      "filename" : "icon-20-ipad.png",
-      "idiom" : "ipad",
-      "scale" : "1x",
-      "size" : "20x20"
-    },
-    {
-      "filename" : "icon-20@2x-ipad.png",
-      "idiom" : "ipad",
-      "scale" : "2x",
-      "size" : "20x20"
-    },
-    {
-      "filename" : "icon-29-ipad.png",
-      "idiom" : "ipad",
-      "scale" : "1x",
-      "size" : "29x29"
-    },
-    {
-      "filename" : "icon-29@2x-ipad.png",
-      "idiom" : "ipad",
-      "scale" : "2x",
-      "size" : "29x29"
-    },
-    {
-      "filename" : "icon-40.png",
-      "idiom" : "ipad",
-      "scale" : "1x",
-      "size" : "40x40"
-    },
-    {
-      "filename" : "icon-40@2x.png",
-      "idiom" : "ipad",
-      "scale" : "2x",
-      "size" : "40x40"
-    },
-    {
-      "filename" : "icon-50.png",
-      "idiom" : "ipad",
-      "scale" : "1x",
-      "size" : "50x50"
-    },
-    {
-      "filename" : "icon-50@2x.png",
-      "idiom" : "ipad",
-      "scale" : "2x",
-      "size" : "50x50"
-    },
-    {
-      "filename" : "icon-72.png",
-      "idiom" : "ipad",
-      "scale" : "1x",
-      "size" : "72x72"
-    },
-    {
-      "filename" : "icon-72@2x.png",
-      "idiom" : "ipad",
-      "scale" : "2x",
-      "size" : "72x72"
-    },
-    {
-      "filename" : "icon-76.png",
-      "idiom" : "ipad",
-      "scale" : "1x",
-      "size" : "76x76"
-    },
-    {
-      "filename" : "icon-76@2x.png",
-      "idiom" : "ipad",
-      "scale" : "2x",
-      "size" : "76x76"
-    },
-    {
-      "filename" : "icon-83.5@2x.png",
-      "idiom" : "ipad",
-      "scale" : "2x",
-      "size" : "83.5x83.5"
-    },
-    {
-      "filename" : "icon-1024.png",
-      "idiom" : "ios-marketing",
-      "scale" : "1x",
-      "size" : "1024x1024"
-    }
-  ],
-  "info" : {
-    "author" : "xcode",
-    "version" : 1
-  }
-}

二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-1024.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20-ipad.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-20@3x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29-ipad.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-29@3x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-40.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-40@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-40@3x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-50.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-50@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-57.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-57@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-60@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-60@3x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-72.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-72@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-76.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-76@2x.png


二進制
ios/ComPDFKit_RN/Images.xcassets/AppIcon.appiconset/icon-83.5@2x.png


+ 0 - 6
ios/ComPDFKit_RN/Images.xcassets/Contents.json

@@ -1,6 +0,0 @@
-{
-  "info" : {
-    "author" : "xcode",
-    "version" : 1
-  }
-}

+ 0 - 49
ios/ComPDFKit_RN/Info.plist

@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-	<key>CFBundleDevelopmentRegion</key>
-	<string>en</string>
-	<key>CFBundleDisplayName</key>
-	<string>ComPDFKit_RN</string>
-	<key>CFBundleExecutable</key>
-	<string>$(EXECUTABLE_NAME)</string>
-	<key>CFBundleIdentifier</key>
-	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
-	<key>CFBundleInfoDictionaryVersion</key>
-	<string>6.0</string>
-	<key>CFBundleName</key>
-	<string>$(PRODUCT_NAME)</string>
-	<key>CFBundlePackageType</key>
-	<string>APPL</string>
-	<key>CFBundleShortVersionString</key>
-	<string>$(MARKETING_VERSION)</string>
-	<key>CFBundleSignature</key>
-	<string>????</string>
-	<key>CFBundleVersion</key>
-	<string>$(CURRENT_PROJECT_VERSION)</string>
-	<key>LSRequiresIPhoneOS</key>
-	<true/>
-	<key>NSAppTransportSecurity</key>
-	<dict>
-		<key>NSAllowsArbitraryLoads</key>
-		<true/>
-	</dict>
-	<key>NSLocationWhenInUseUsageDescription</key>
-	<string></string>
-	<key>UILaunchStoryboardName</key>
-	<string>LaunchScreen</string>
-	<key>UIRequiredDeviceCapabilities</key>
-	<array>
-		<string>armv7</string>
-	</array>
-	<key>UISupportedInterfaceOrientations</key>
-	<array>
-		<string>UIInterfaceOrientationPortrait</string>
-		<string>UIInterfaceOrientationLandscapeLeft</string>
-		<string>UIInterfaceOrientationLandscapeRight</string>
-	</array>
-	<key>UIViewControllerBasedStatusBarAppearance</key>
-	<false/>
-</dict>
-</plist>

+ 0 - 47
ios/ComPDFKit_RN/LaunchScreen.storyboard

@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="15702" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
-    <device id="retina4_7" orientation="portrait" appearance="light"/>
-    <dependencies>
-        <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15704"/>
-        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
-        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
-    </dependencies>
-    <scenes>
-        <!--View Controller-->
-        <scene sceneID="EHf-IW-A2E">
-            <objects>
-                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
-                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
-                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
-                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
-                        <subviews>
-                            <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ComPDFKit_RN" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="GJd-Yh-RWb">
-                                <rect key="frame" x="0.0" y="202" width="375" height="43"/>
-                                <fontDescription key="fontDescription" type="boldSystem" pointSize="36"/>
-                                <nil key="highlightedColor"/>
-                            </label>
-                            <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Powered by React Native" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="9" translatesAutoresizingMaskIntoConstraints="NO" id="MN2-I3-ftu">
-                                <rect key="frame" x="0.0" y="626" width="375" height="21"/>
-                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
-                                <nil key="highlightedColor"/>
-                            </label>
-                        </subviews>
-                        <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
-                        <constraints>
-                            <constraint firstItem="Bcu-3y-fUS" firstAttribute="bottom" secondItem="MN2-I3-ftu" secondAttribute="bottom" constant="20" id="OZV-Vh-mqD"/>
-                            <constraint firstItem="Bcu-3y-fUS" firstAttribute="centerX" secondItem="GJd-Yh-RWb" secondAttribute="centerX" id="Q3B-4B-g5h"/>
-                            <constraint firstItem="MN2-I3-ftu" firstAttribute="centerX" secondItem="Bcu-3y-fUS" secondAttribute="centerX" id="akx-eg-2ui"/>
-                            <constraint firstItem="MN2-I3-ftu" firstAttribute="leading" secondItem="Bcu-3y-fUS" secondAttribute="leading" id="i1E-0Y-4RG"/>
-                            <constraint firstItem="GJd-Yh-RWb" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="bottom" multiplier="1/3" constant="1" id="moa-c2-u7t"/>
-                            <constraint firstItem="GJd-Yh-RWb" firstAttribute="leading" secondItem="Bcu-3y-fUS" secondAttribute="leading" symbolic="YES" id="x7j-FC-K8j"/>
-                        </constraints>
-                        <viewLayoutGuide key="safeArea" id="Bcu-3y-fUS"/>
-                    </view>
-                </viewController>
-                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
-            </objects>
-            <point key="canvasLocation" x="52.173913043478265" y="375"/>
-        </scene>
-    </scenes>
-</document>

+ 0 - 0
ios/ComPDFKit_RN/OpenPDFModule.swift


Some files were not shown because too many files changed in this diff