@lodev09/react-native-exify 0.2.7 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/Exify.podspec +3 -23
  2. package/LICENSE +1 -1
  3. package/README.md +45 -18
  4. package/android/build.gradle +26 -53
  5. package/android/src/main/AndroidManifest.xml +2 -2
  6. package/android/src/main/java/com/lodev09/exify/ExifyModule.kt +154 -33
  7. package/android/src/main/java/com/lodev09/exify/ExifyPackage.kt +28 -10
  8. package/android/src/main/java/com/lodev09/exify/ExifyTags.kt +137 -135
  9. package/android/src/main/java/com/lodev09/exify/ExifyUtils.kt +31 -8
  10. package/ios/Exify.h +9 -0
  11. package/ios/Exify.mm +384 -25
  12. package/lib/module/index.js +12 -22
  13. package/lib/module/index.js.map +1 -1
  14. package/lib/module/package.json +1 -0
  15. package/lib/module/specs/NativeExifyModule.js +5 -0
  16. package/lib/module/specs/NativeExifyModule.js.map +1 -0
  17. package/lib/module/types.js +1 -1
  18. package/lib/typescript/package.json +1 -0
  19. package/lib/typescript/src/index.d.ts +7 -9
  20. package/lib/typescript/src/index.d.ts.map +1 -1
  21. package/lib/typescript/src/specs/NativeExifyModule.d.ts +8 -0
  22. package/lib/typescript/src/specs/NativeExifyModule.d.ts.map +1 -0
  23. package/lib/typescript/src/types.d.ts +2 -1
  24. package/lib/typescript/src/types.d.ts.map +1 -1
  25. package/package.json +82 -95
  26. package/src/index.ts +12 -31
  27. package/src/specs/NativeExifyModule.ts +8 -0
  28. package/src/types.ts +141 -140
  29. package/android/gradle.properties +0 -5
  30. package/android/src/main/AndroidManifestNew.xml +0 -2
  31. package/ios/Exify-Bridging-Header.h +0 -11
  32. package/ios/Exify.swift +0 -134
  33. package/ios/ExifyUtils.swift +0 -140
  34. package/lib/commonjs/index.js +0 -53
  35. package/lib/commonjs/index.js.map +0 -1
  36. package/lib/commonjs/types.js +0 -2
  37. package/lib/commonjs/types.js.map +0 -1
package/package.json CHANGED
@@ -1,12 +1,17 @@
1
1
  {
2
2
  "name": "@lodev09/react-native-exify",
3
- "version": "0.2.7",
4
- "description": "Read and write exif data into an image 🏷️",
5
- "main": "lib/commonjs/index",
6
- "module": "lib/module/index",
7
- "types": "lib/typescript/src/index.d.ts",
8
- "react-native": "src/index",
9
- "source": "src/index",
3
+ "version": "1.0.1",
4
+ "description": "Read and write exif data from/into an image",
5
+ "main": "./lib/module/index.js",
6
+ "types": "./lib/typescript/src/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "source": "./src/index.ts",
10
+ "types": "./lib/typescript/src/index.d.ts",
11
+ "default": "./lib/module/index.js"
12
+ },
13
+ "./package.json": "./package.json"
14
+ },
10
15
  "files": [
11
16
  "src",
12
17
  "lib",
@@ -14,6 +19,7 @@
14
19
  "ios",
15
20
  "cpp",
16
21
  "*.podspec",
22
+ "react-native.config.js",
17
23
  "!ios/build",
18
24
  "!android/build",
19
25
  "!android/gradle",
@@ -26,20 +32,17 @@
26
32
  "!**/.*"
27
33
  ],
28
34
  "scripts": {
29
- "example": "yarn workspace exify-example",
35
+ "example": "yarn workspace react-native-exify-example",
36
+ "clean": "scripts/clean.sh",
37
+ "prepare": "bob build",
38
+ "typecheck": "tsc",
30
39
  "test": "jest",
31
- "typecheck": "tsc --noEmit",
32
- "lint": "eslint --fix \"**/*.{js,ts,tsx}\"",
40
+ "release": "release-it",
41
+ "lint": "eslint \"**/*.{js,ts,tsx}\"",
33
42
  "format": "prettier --write \"**/*.{js,ts,tsx}\"",
34
- "tidy": "yarn typecheck && yarn lint && yarn format && scripts/swiftlint.sh && scripts/swiftformat.sh",
35
- "clean": "del-cli android/build lib && yarn workspace exify-example clean",
36
- "prepare": "bob build",
37
- "release": "release-it"
43
+ "tidy": "yarn typecheck && yarn lint && yarn format && scripts/objclint.sh && scripts/ktlint.sh"
38
44
  },
39
45
  "keywords": [
40
- "exif",
41
- "exif-gps",
42
- "image-exif",
43
46
  "react-native",
44
47
  "ios",
45
48
  "android"
@@ -58,33 +61,28 @@
58
61
  "registry": "https://registry.npmjs.org/"
59
62
  },
60
63
  "devDependencies": {
61
- "@commitlint/config-conventional": "^19.0.3",
62
- "@evilmartians/lefthook": "^1.6.5",
63
- "@react-native/eslint-config": "^0.73.2",
64
- "@release-it/conventional-changelog": "^8.0.1",
65
- "@types/jest": "^29.5.12",
66
- "@types/react": "^18.2.64",
67
- "@typescript-eslint/eslint-plugin": "^7.1.1",
68
- "@typescript-eslint/parser": "^7.1.1",
69
- "commitlint": "^19.0.3",
70
- "del-cli": "^5.1.0",
71
- "eslint": "^8.57.0",
72
- "eslint-config-prettier": "^9.1.0",
73
- "eslint-config-standard": "^17.1.0",
74
- "eslint-plugin-import": "^2.29.1",
75
- "eslint-plugin-n": "^16.6.2",
76
- "eslint-plugin-prettier": "^5.1.3",
77
- "eslint-plugin-promise": "^6.1.1",
64
+ "@commitlint/config-conventional": "^19.8.1",
65
+ "@eslint/compat": "^1.3.2",
66
+ "@eslint/eslintrc": "^3.3.1",
67
+ "@eslint/js": "^9.35.0",
68
+ "@react-native/babel-preset": "0.83.0",
69
+ "@react-native/eslint-config": "0.83.0",
70
+ "@release-it/conventional-changelog": "^10.0.1",
71
+ "@types/jest": "^29.5.14",
72
+ "@types/react": "^19.1.12",
73
+ "commitlint": "^19.8.1",
74
+ "del-cli": "^6.0.0",
75
+ "eslint": "^9.35.0",
76
+ "eslint-config-prettier": "^10.1.8",
77
+ "eslint-plugin-prettier": "^5.5.4",
78
78
  "jest": "^29.7.0",
79
- "prettier": "^3.2.5",
80
- "react": "^18.2.0",
81
- "react-native": "^0.73.5",
82
- "react-native-builder-bob": "^0.23.2",
83
- "release-it": "^17.1.1",
84
- "typescript": "~5.3.3"
85
- },
86
- "resolutions": {
87
- "@types/react": "^18.2.44"
79
+ "lefthook": "^2.0.3",
80
+ "prettier": "^2.8.8",
81
+ "react": "19.1.0",
82
+ "react-native": "0.81.5",
83
+ "react-native-builder-bob": "^0.40.17",
84
+ "release-it": "^19.0.4",
85
+ "typescript": "^5.9.2"
88
86
  },
89
87
  "peerDependencies": {
90
88
  "react": "*",
@@ -93,7 +91,33 @@
93
91
  "workspaces": [
94
92
  "example"
95
93
  ],
96
- "packageManager": "yarn@4.1.1",
94
+ "packageManager": "yarn@4.11.0",
95
+ "react-native-builder-bob": {
96
+ "source": "src",
97
+ "output": "lib",
98
+ "targets": [
99
+ [
100
+ "module",
101
+ {
102
+ "esm": true
103
+ }
104
+ ],
105
+ [
106
+ "typescript",
107
+ {
108
+ "project": "tsconfig.build.json"
109
+ }
110
+ ]
111
+ ]
112
+ },
113
+ "codegenConfig": {
114
+ "name": "ExifySpec",
115
+ "type": "modules",
116
+ "jsSrcsDir": "src",
117
+ "android": {
118
+ "javaPackageName": "com.lodev09.exify"
119
+ }
120
+ },
97
121
  "jest": {
98
122
  "preset": "react-native",
99
123
  "modulePathIgnorePatterns": [
@@ -112,7 +136,7 @@
112
136
  "tagName": "v${version}"
113
137
  },
114
138
  "npm": {
115
- "publish": true
139
+ "publish": false
116
140
  },
117
141
  "github": {
118
142
  "release": true,
@@ -124,41 +148,9 @@
124
148
  },
125
149
  "plugins": {
126
150
  "@release-it/conventional-changelog": {
127
- "preset": "angular"
128
- }
129
- }
130
- },
131
- "eslintConfig": {
132
- "root": true,
133
- "ignorePatterns": [
134
- "lib"
135
- ],
136
- "extends": [
137
- "plugin:@typescript-eslint/recommended",
138
- "eslint:recommended",
139
- "plugin:react/recommended",
140
- "plugin:react-native/all",
141
- "standard",
142
- "prettier"
143
- ],
144
- "globals": {
145
- "it": false
146
- },
147
- "rules": {
148
- "@typescript-eslint/no-var-requires": 0,
149
- "@typescript-eslint/no-unused-vars": [
150
- "error",
151
- {
152
- "argsIgnorePattern": "^_",
153
- "varsIgnorePattern": "^_"
151
+ "preset": {
152
+ "name": "angular"
154
153
  }
155
- ],
156
- "no-unused-vars": 0
157
- },
158
- "settings": {
159
- "react": {
160
- "pragma": "React",
161
- "version": "detect"
162
154
  }
163
155
  }
164
156
  },
@@ -167,22 +159,17 @@
167
159
  "singleQuote": true,
168
160
  "tabWidth": 2,
169
161
  "trailingComma": "es5",
170
- "useTabs": false,
171
- "printWidth": 100,
172
- "semi": false
162
+ "useTabs": false
173
163
  },
174
- "react-native-builder-bob": {
175
- "source": "src",
176
- "output": "lib",
177
- "targets": [
178
- "commonjs",
179
- "module",
180
- [
181
- "typescript",
182
- {
183
- "project": "tsconfig.build.json"
184
- }
185
- ]
186
- ]
164
+ "create-react-native-library": {
165
+ "type": "turbo-module",
166
+ "languages": "kotlin-objc",
167
+ "tools": [
168
+ "jest",
169
+ "lefthook",
170
+ "release-it",
171
+ "eslint"
172
+ ],
173
+ "version": "0.57.0"
187
174
  }
188
175
  }
package/src/index.ts CHANGED
@@ -1,40 +1,21 @@
1
- import { NativeModules, Platform } from 'react-native'
2
- import type { ExifTags, ExifyWriteResult } from './types'
3
-
4
- const LINKING_ERROR =
5
- `The package '@lodev09/react-native-exify' doesn't seem to be linked. Make sure: \n\n` +
6
- Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) +
7
- '- You rebuilt the app after installing the package\n' +
8
- '- You are not using Expo Go\n'
9
-
10
- const Exify = NativeModules.Exify
11
- ? NativeModules.Exify
12
- : new Proxy(
13
- {},
14
- {
15
- get() {
16
- throw new Error(LINKING_ERROR)
17
- },
18
- }
19
- )
1
+ import Exify from './specs/NativeExifyModule';
2
+ import type { ExifTags, ExifyWriteResult } from './types';
20
3
 
21
4
  /**
22
- * Write Exif data into an image file.
23
- * @param {string} uri the image uri to write
24
- * @param {ExifTags} tags the exif tags to be written
25
- * @return {Promise<ExifyWriteResult>} the full exif tags of the image
5
+ * Read Exif metadata from an image.
6
+ * @param uri Image URI with a scheme (e.g. `file://`, `ph://`, `content://`). Bare file paths are not supported.
26
7
  */
27
- export function writeAsync(uri: string, tags: ExifTags): Promise<ExifyWriteResult | undefined> {
28
- return Exify.writeAsync(uri, tags)
8
+ export function read(uri: string): Promise<ExifTags | null> {
9
+ return Exify.read(uri) as Promise<ExifTags | null>;
29
10
  }
30
11
 
31
12
  /**
32
- * Read Exif data from an image file.
33
- * @param {string} uri the image uri to read
34
- * @return {Promise<ExifTags>} the raw exif tags of the image
13
+ * Write Exif metadata into an image.
14
+ * @param uri Image URI with a scheme (e.g. `file://`, `ph://`, `content://`). Bare file paths are not supported.
15
+ * @param tags Exif tags to write.
35
16
  */
36
- export function readAsync(uri: string): Promise<ExifTags | undefined> {
37
- return Exify.readAsync(uri)
17
+ export function write(uri: string, tags: ExifTags): Promise<ExifyWriteResult> {
18
+ return Exify.write(uri, tags as Object) as Promise<ExifyWriteResult>;
38
19
  }
39
20
 
40
- export * from './types'
21
+ export * from './types';
@@ -0,0 +1,8 @@
1
+ import { TurboModuleRegistry, type TurboModule } from 'react-native';
2
+
3
+ export interface Spec extends TurboModule {
4
+ read(uri: string): Promise<Object | null>;
5
+ write(uri: string, tags: Object): Promise<Object>;
6
+ }
7
+
8
+ export default TurboModuleRegistry.getEnforcing<Spec>('Exify');
package/src/types.ts CHANGED
@@ -3,143 +3,144 @@
3
3
  * Normalized for both IOS and Android
4
4
  */
5
5
  export interface ExifTags {
6
- SensorLeftBorder?: number
7
- SensorBottomBorder?: number
8
- DefaultCropSize?: number
9
- GPSTrackRef?: string
10
- GPSSpeedRef?: string
11
- GPSSpeed?: number
12
- GPSMapDatum?: string
13
- GPSLatitudeRef?: string
14
- GPSLatitude?: number
15
- GPSDifferential?: number
16
- GPSDestLatitudeRef?: string
17
- GPSDestDistanceRef?: string
18
- GPSHPositioningError?: string
19
- GPSDestDistance?: number
20
- GPSDestBearing?: number
21
- GPSDateStamp?: string
22
- GPSAltitudeRef?: number
23
- GPSAltitude?: number
24
- GPSDestLatitude?: number
25
- GPSImgDirection?: number
26
- GPSDOP?: number
27
- GPSTrack?: number
28
- GPSVersionID?: string
29
- GPSLongitude?: number
30
- GPSDestLongitudeRef?: string
31
- GPSImgDirectionRef?: string
32
- GPSProcessingMethod?: string
33
- GPSMeasureMode?: string
34
- GPSLongitudeRef?: string
35
- GPSSatellites?: string
36
- GPSAreaInformation?: string
37
- GPSDestBearingRef?: string
38
- GPSStatus?: string
39
- GPSTimeStamp?: string
40
- GPSDestLongitude?: number
41
- SensorTopBorder?: number
42
- Copyright?: string
43
- PreviewImageStart?: number
44
- SubSecTimeDigitized?: string
45
- SubSecTime?: string
46
- SubfileType?: number
47
- SpectralSensitivity?: string
48
- SpatialFrequencyResponse?: string
49
- DNGVersion?: number
50
- Sharpness?: number
51
- PixelXDimension?: number
52
- SceneCaptureType?: number
53
- ExposureTime?: number
54
- RelatedSoundFile?: string
55
- AspectFrame?: number
56
- Flash?: number
57
- SceneType?: string
58
- OECF?: string
59
- NewSubfileType?: number
60
- PixelYDimension?: number
61
- MakerNote?: string
62
- ShutterSpeedValue?: number
63
- LightSource?: number
64
- UserComment?: string
65
- GainControl?: number
66
- ISOSpeedRatings?: number[]
67
- FocalPlaneResolutionUnit?: number
68
- FocalPlaneXResolution?: number
69
- YCbCrCoefficients?: number
70
- FocalLengthIn35mmFilm?: number
71
- LensMake?: string
72
- LensModel?: string
73
- LensSpecification?: number[]
74
- ISO?: number
75
- FlashpixVersion?: number[]
76
- StripOffsets?: number
77
- SensingMethod?: number
78
- FlashEnergy?: number
79
- FocalLength?: number
80
- FNumber?: number
81
- MeteringMode?: number
82
- FocalPlaneYResolution?: number
83
- ExposureBiasValue?: number
84
- ExposureProgram?: number
85
- SubjectDistance?: number
86
- ThumbnailImageLength?: number
87
- Compression?: number
88
- ExposureMode?: number
89
- ExposureIndex?: number
90
- WhiteBalance?: number
91
- DateTimeOriginal?: string
92
- RowsPerStrip?: number
93
- DateTimeDigitized?: string
94
- ExifVersion?: number[]
95
- Saturation?: number
96
- CustomRendered?: number
97
- Contrast?: number
98
- ComponentsConfiguration?: number[]
99
- ColorSpace?: number
100
- SubjectLocation?: number
101
- ThumbnailImageWidth?: number
102
- BrightnessValue?: number
103
- Model?: string
104
- InteroperabilityIndex?: string
105
- CompressedBitsPerPixel?: number
106
- ApertureValue?: number
107
- DeviceSettingDescription?: string
108
- JPEGInterchangeFormat?: number
109
- StripByteCounts?: number
110
- YCbCrSubSampling?: number
111
- DigitalZoomRatio?: number
112
- PreviewImageLength?: number
113
- YCbCrPositioning?: number
114
- FileSource?: string
115
- Artist?: string
116
- Make?: string
117
- CFAPattern?: string
118
- WhitePoint?: number
119
- SamplesPerPixel?: number
120
- SubjectArea?: number[]
121
- JPEGInterchangeFormatLength?: number
122
- ResolutionUnit?: number
123
- PrimaryChromaticities?: number
124
- PlanarConfiguration?: number
125
- TransferFunction?: number
126
- SubSecTimeOriginal?: string
127
- Orientation?: number
128
- PhotometricInterpretation?: number
129
- MaxApertureValue?: number
130
- ImageDescription?: string
131
- SensorRightBorder?: number
132
- YResolution?: number
133
- BitsPerSample?: number
134
- ImageUniqueID?: string
135
- DateTime?: string
136
- ImageWidth?: number
137
- ReferenceBlackWhite?: number
138
- ImageLength?: number
139
- SubjectDistanceRange?: number
140
- XResolution?: number
141
- Software?: string
142
- [key: string]: unknown
6
+ SensorLeftBorder?: number;
7
+ SensorBottomBorder?: number;
8
+ DefaultCropSize?: number;
9
+ GPSTrackRef?: string;
10
+ GPSSpeedRef?: string;
11
+ GPSSpeed?: number;
12
+ GPSMapDatum?: string;
13
+ GPSLatitudeRef?: string;
14
+ GPSLatitude?: number;
15
+ GPSDifferential?: number;
16
+ GPSDestLatitudeRef?: string;
17
+ GPSDestDistanceRef?: string;
18
+ GPSHPositioningError?: string;
19
+ GPSDestDistance?: number;
20
+ GPSDestBearing?: number;
21
+ GPSDateStamp?: string;
22
+ GPSAltitudeRef?: number;
23
+ GPSAltitude?: number;
24
+ GPSDestLatitude?: number;
25
+ GPSImgDirection?: number;
26
+ GPSDOP?: number;
27
+ GPSTrack?: number;
28
+ GPSVersionID?: string;
29
+ GPSLongitude?: number;
30
+ GPSDestLongitudeRef?: string;
31
+ GPSImgDirectionRef?: string;
32
+ GPSProcessingMethod?: string;
33
+ GPSMeasureMode?: string;
34
+ GPSLongitudeRef?: string;
35
+ GPSSatellites?: string;
36
+ GPSAreaInformation?: string;
37
+ GPSDestBearingRef?: string;
38
+ GPSStatus?: string;
39
+ GPSTimeStamp?: string;
40
+ GPSDestLongitude?: number;
41
+ SensorTopBorder?: number;
42
+ Copyright?: string;
43
+ PreviewImageStart?: number;
44
+ SubSecTimeDigitized?: string;
45
+ SubSecTime?: string;
46
+ SubfileType?: number;
47
+ SpectralSensitivity?: string;
48
+ SpatialFrequencyResponse?: string;
49
+ DNGVersion?: number;
50
+ Sharpness?: number;
51
+ PixelXDimension?: number;
52
+ SceneCaptureType?: number;
53
+ ExposureTime?: number;
54
+ RelatedSoundFile?: string;
55
+ AspectFrame?: number;
56
+ Flash?: number;
57
+ SceneType?: string;
58
+ OECF?: string;
59
+ NewSubfileType?: number;
60
+ PixelYDimension?: number;
61
+ MakerNote?: string;
62
+ ShutterSpeedValue?: number;
63
+ LightSource?: number;
64
+ UserComment?: string;
65
+ GainControl?: number;
66
+ ISOSpeedRatings?: string;
67
+ FocalPlaneResolutionUnit?: number;
68
+ FocalPlaneXResolution?: number;
69
+ YCbCrCoefficients?: number;
70
+ FocalLengthIn35mmFilm?: number;
71
+ LensMake?: string;
72
+ LensModel?: string;
73
+ LensSpecification?: number[];
74
+ ISO?: number;
75
+ FlashpixVersion?: number[];
76
+ StripOffsets?: number;
77
+ SensingMethod?: number;
78
+ FlashEnergy?: number;
79
+ FocalLength?: number;
80
+ FNumber?: number;
81
+ MeteringMode?: number;
82
+ FocalPlaneYResolution?: number;
83
+ ExposureBiasValue?: number;
84
+ ExposureProgram?: number;
85
+ SubjectDistance?: number;
86
+ ThumbnailImageLength?: number;
87
+ Compression?: number;
88
+ ExposureMode?: number;
89
+ ExposureIndex?: number;
90
+ WhiteBalance?: number;
91
+ DateTimeOriginal?: string;
92
+ RowsPerStrip?: number;
93
+ DateTimeDigitized?: string;
94
+ ExifVersion?: number[];
95
+ Saturation?: number;
96
+ CustomRendered?: number;
97
+ Contrast?: number;
98
+ ComponentsConfiguration?: number[];
99
+ ColorSpace?: number;
100
+ SubjectLocation?: number;
101
+ ThumbnailImageWidth?: number;
102
+ BrightnessValue?: number;
103
+ Model?: string;
104
+ InteroperabilityIndex?: string;
105
+ CompressedBitsPerPixel?: number;
106
+ ApertureValue?: number;
107
+ DeviceSettingDescription?: string;
108
+ JPEGInterchangeFormat?: number;
109
+ StripByteCounts?: number;
110
+ YCbCrSubSampling?: number;
111
+ DigitalZoomRatio?: number;
112
+ PreviewImageLength?: number;
113
+ YCbCrPositioning?: number;
114
+ FileSource?: string;
115
+ Artist?: string;
116
+ Make?: string;
117
+ CFAPattern?: string;
118
+ WhitePoint?: number;
119
+ SamplesPerPixel?: number;
120
+ SubjectArea?: number[];
121
+ JPEGInterchangeFormatLength?: number;
122
+ ResolutionUnit?: number;
123
+ PrimaryChromaticities?: number;
124
+ PlanarConfiguration?: number;
125
+ TransferFunction?: number;
126
+ SubSecTimeOriginal?: string;
127
+ Orientation?: number;
128
+ PhotometricInterpretation?: number;
129
+ MaxApertureValue?: number;
130
+ ImageDescription?: string;
131
+ SensorRightBorder?: number;
132
+ YResolution?: number;
133
+ BitsPerSample?: number;
134
+ ImageUniqueID?: string;
135
+ DateTime?: string;
136
+ ImageWidth?: number;
137
+ ReferenceBlackWhite?: number;
138
+ ImageLength?: number;
139
+ SubjectDistanceRange?: number;
140
+ XResolution?: number;
141
+ Software?: string;
142
+ HostComputer?: string;
143
+ [key: string]: unknown;
143
144
  }
144
145
 
145
146
  /**
@@ -152,16 +153,16 @@ export interface ExifyWriteResult {
152
153
  *
153
154
  * This will return exactly the same as the input URI if the input URI is from a local file.
154
155
  */
155
- uri: string
156
+ uri: string;
156
157
  /**
157
158
  * A newly created asset ID on IOS.
158
159
  * Writing exif metadata into an asset file will create a new asset file.
159
160
  *
160
161
  * @platform ios
161
162
  */
162
- assetId?: string
163
+ assetId?: string;
163
164
  /**
164
165
  * Normalized Exif tags
165
166
  */
166
- tags?: ExifTags
167
+ tags?: ExifTags;
167
168
  }
@@ -1,5 +0,0 @@
1
- Exify_kotlinVersion=1.7.0
2
- Exify_minSdkVersion=21
3
- Exify_targetSdkVersion=31
4
- Exify_compileSdkVersion=31
5
- Exify_ndkversion=21.4.7075529
@@ -1,2 +0,0 @@
1
- <manifest xmlns:android="http://schemas.android.com/apk/res/android">
2
- </manifest>
@@ -1,11 +0,0 @@
1
- /*
2
- *
3
- * Created by Jovanni Lo (@lodev09)
4
- * Copyright 2024
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE file in the root directory of this source tree.
8
- */
9
-
10
- #import <React/RCTBridgeModule.h>
11
- #import <React/RCTViewManager.h>