@synonymdev/react-native-pubky 0.8.0 → 0.9.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.
- package/README.md +52 -9
- package/android/src/main/java/com/pubky/PubkyModule.kt +364 -273
- package/android/src/main/java/uniffi/pubkycore/pubkycore.kt +1327 -0
- package/android/src/main/jniLibs/arm64-v8a/libpubkycore.so +0 -0
- package/android/src/main/jniLibs/armeabi-v7a/libpubkycore.so +0 -0
- package/android/src/main/jniLibs/x86/libpubkycore.so +0 -0
- package/android/src/main/jniLibs/x86_64/libpubkycore.so +0 -0
- package/ios/Frameworks/{PubkyMobile.xcframework → PubkyCore.xcframework}/Info.plist +8 -8
- package/ios/Frameworks/{PubkyMobile.xcframework → PubkyCore.xcframework}/ios-arm64/Headers/module.modulemap +2 -2
- package/ios/Frameworks/PubkyCore.xcframework/ios-arm64/Headers/pubkycoreFFI.h +297 -0
- package/ios/Frameworks/{PubkyMobile.xcframework/ios-arm64/libpubkymobile.a → PubkyCore.xcframework/ios-arm64/libpubkycore.a} +0 -0
- package/ios/Frameworks/{PubkyMobile.xcframework → PubkyCore.xcframework}/ios-arm64-simulator/Headers/module.modulemap +2 -2
- package/ios/Frameworks/PubkyCore.xcframework/ios-arm64-simulator/Headers/pubkycoreFFI.h +297 -0
- package/ios/Frameworks/{PubkyMobile.xcframework/ios-arm64-simulator/libpubkymobile.a → PubkyCore.xcframework/ios-arm64-simulator/libpubkycore.a} +0 -0
- package/ios/Pubky-Bridging-Header.h +1 -0
- package/ios/Pubky.mm +16 -1
- package/ios/Pubky.swift +64 -1
- package/ios/{pubkymobile.swift → pubkycore.swift} +354 -37
- package/lib/commonjs/index.js +45 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +42 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +16 -9
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +16 -9
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/package.json +12 -7
- package/react-native-pubky.podspec +1 -1
- package/src/index.tsx +62 -9
- package/android/src/main/java/uniffi/pubkymobile/pubkymobile.kt +0 -862
- package/android/src/main/jniLibs/arm64-v8a/libpubkymobile.so +0 -0
- package/android/src/main/jniLibs/armeabi-v7a/libpubkymobile.so +0 -0
- package/android/src/main/jniLibs/x86/libpubkymobile.so +0 -0
- package/android/src/main/jniLibs/x86_64/libpubkymobile.so +0 -0
- package/ios/Frameworks/PubkyMobile.xcframework/ios-arm64/Headers/mobileFFI.h +0 -188
- package/ios/Frameworks/PubkyMobile.xcframework/ios-arm64/Headers/pubkymobileFFI.h +0 -264
- package/ios/Frameworks/PubkyMobile.xcframework/ios-arm64/libmobile.a +0 -0
- package/ios/Frameworks/PubkyMobile.xcframework/ios-arm64-simulator/Headers/mobileFFI.h +0 -188
- package/ios/Frameworks/PubkyMobile.xcframework/ios-arm64-simulator/Headers/pubkymobileFFI.h +0 -264
- package/ios/Frameworks/PubkyMobile.xcframework/ios-arm64-simulator/libmobile.a +0 -0
package/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# react-native-pubky
|
2
2
|
|
3
|
-
React Native implementation of [pubky](https://github.com/pubky/pubky)
|
3
|
+
React Native implementation of [pubky-core](https://github.com/pubky/pubky-core)
|
4
4
|
|
5
5
|
## Installation
|
6
6
|
|
@@ -18,20 +18,17 @@ npm install @synonymdev/react-native-pubky
|
|
18
18
|
- [x] [resolveHttps](#resolveHttps): Resolve HTTPS records.
|
19
19
|
- [x] [signUp](#signUp): Sign-up to a homeserver and update Pkarr accordingly.
|
20
20
|
- [x] [signIn](#signIn): Sign-in to a homeserver.
|
21
|
+
- [x] [session](#session): Check the current session for a given Pubky in its homeserver.
|
21
22
|
- [x] [signOut](#signOut): Sign-out from a homeserver.
|
22
23
|
- [x] [put](#put): Upload a small payload to a given path.
|
23
24
|
- [x] [get](#get): Download a small payload from a given path relative to a pubky author.
|
24
25
|
- [x] [list](#list): Returns a list of Pubky URLs of the files in the path of the `url` provided.
|
26
|
+
- [x] [delete](#delete): Delete a file at a path relative to a pubky author.
|
25
27
|
- [x] [generateSecretKey](#generateSecretKey): Generate a secret key.
|
26
28
|
- [x] [getPublicKeyFromSecretKey](#getPublicKeyFromSecretKey): Get the public key string and uri from a secret key.
|
27
29
|
- [x] [create_recovery_file](#createRecoveryFile): Create a recovery file.
|
28
30
|
- [x] [decrypt_recovery_file](#decryptRecoveryFile): Decrypt a recovery file.
|
29
31
|
|
30
|
-
### Methods to be Implemented
|
31
|
-
- [ ] getProfile: Retrieve the profile of a user.
|
32
|
-
- [ ] editProfile: Submit changes to the specified profile.
|
33
|
-
|
34
|
-
|
35
32
|
## Usage
|
36
33
|
### <a name="auth"></a>Auth
|
37
34
|
```js
|
@@ -161,6 +158,20 @@ if (listRes.isErr()) {
|
|
161
158
|
console.log(listRes.value);
|
162
159
|
```
|
163
160
|
|
161
|
+
### <a name="deleteFile"></a>deleteFile
|
162
|
+
```js
|
163
|
+
import { deleteFile } from '@synonymdev/react-native-pubky';
|
164
|
+
|
165
|
+
const deleteFileRes = await deleteFile(
|
166
|
+
'pubky://z4e8s17cou9qmuwen8p1556jzhf1wktmzo6ijsfnri9c4hnrdfty/pub/' // URL
|
167
|
+
);
|
168
|
+
if (deleteFileRes.isErr()) {
|
169
|
+
console.log(deleteFileRes.error.message);
|
170
|
+
return;
|
171
|
+
}
|
172
|
+
console.log(deleteFileRes.value);
|
173
|
+
```
|
174
|
+
|
164
175
|
### <a name="generateSecretKey"></a>generateSecretKey
|
165
176
|
```js
|
166
177
|
import { generateSecretKey } from '@synonymdev/react-native-pubky';
|
@@ -214,6 +225,20 @@ if (signInRes.isErr()) {
|
|
214
225
|
console.log(signInRes.value);
|
215
226
|
```
|
216
227
|
|
228
|
+
### <a name="session"></a>sessionRes
|
229
|
+
```js
|
230
|
+
import { session } from '@synonymdev/react-native-pubky';
|
231
|
+
|
232
|
+
const sessionRes = await session(
|
233
|
+
'z4e8s17cou9qmuwen8p1556jzhf1wktmzo6ijsfnri9c4hnrdfty' // Public Key
|
234
|
+
);
|
235
|
+
if (sessionRes.isErr()) {
|
236
|
+
console.log(sessionRes.error.message);
|
237
|
+
return;
|
238
|
+
}
|
239
|
+
console.log(sessionRes.value);
|
240
|
+
```
|
241
|
+
|
217
242
|
### <a name="signOut"></a>signIn
|
218
243
|
```js
|
219
244
|
import { signOut } from '@synonymdev/react-native-pubky';
|
@@ -270,12 +295,30 @@ git clone git@github.com:pubky/react-native-pubky.git && cd react-native-pubky &
|
|
270
295
|
yarn add path/to/react-native-pubky
|
271
296
|
```
|
272
297
|
|
273
|
-
##
|
298
|
+
## Run React Native Example App
|
299
|
+
1. Run Homeserver:
|
300
|
+
```sh
|
301
|
+
cd rust/pubky/pubky-homeserver && cargo run -- --config=./src/config.toml
|
302
|
+
```
|
303
|
+
2. Run the React Native Example App:
|
304
|
+
```sh
|
305
|
+
cd example && yarn install && cd ios && pod install && cd ../ && yarn ios
|
306
|
+
```
|
307
|
+
|
308
|
+
## Download Remote Bindings
|
309
|
+
|
310
|
+
This command will download the current bindings from the [SDK repo](https://github.com/pubky/pubky-core-mobile-sdk):
|
311
|
+
|
312
|
+
```sh
|
313
|
+
npm run update-remote-bindings
|
314
|
+
```
|
315
|
+
|
316
|
+
## Setup Local Bindings
|
274
317
|
|
275
|
-
|
318
|
+
This command will download the entire Rust project if it doesn't exist and set up the bindings locally for faster iteration and testing:
|
276
319
|
|
277
320
|
```sh
|
278
|
-
npm run update-bindings
|
321
|
+
npm run update-local-bindings
|
279
322
|
```
|
280
323
|
|
281
324
|
Finally, ensure that `PubkyModule.kt`, `Pubky.swift`, `Pubky.mm` & `src/index.tsx` are updated accordingly based on the changes made to the Rust files.
|