@functionland/react-native-fula 1.54.24 → 1.54.25

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/ios/Fula.mm CHANGED
@@ -198,6 +198,45 @@ RCT_EXTERN_METHOD(getFolderSize:(NSString *)folderPath
198
198
  RCT_EXTERN_METHOD(getDatastoreSize:(RCTPromiseResolveBlock)resolve
199
199
  rejecter:(RCTPromiseRejectBlock)reject)
200
200
 
201
+ RCT_EXTERN_METHOD(listPlugins:(RCTPromiseResolveBlock)resolve
202
+ withRejecter:(RCTPromiseRejectBlock)reject)
203
+
204
+ RCT_EXTERN_METHOD(listActivePlugins:(RCTPromiseResolveBlock)resolve
205
+ withRejecter:(RCTPromiseRejectBlock)reject)
206
+
207
+ RCT_EXTERN_METHOD(installPlugin:(NSString *)pluginName
208
+ withParams:(NSString *)params
209
+ withResolver:(RCTPromiseResolveBlock)resolve
210
+ withRejecter:(RCTPromiseRejectBlock)reject)
211
+
212
+ RCT_EXTERN_METHOD(uninstallPlugin:(NSString *)pluginName
213
+ withResolver:(RCTPromiseResolveBlock)resolve
214
+ withRejecter:(RCTPromiseRejectBlock)reject)
215
+
216
+ RCT_EXTERN_METHOD(showPluginStatus:(NSString *)pluginName
217
+ withLines:(NSInteger)lines
218
+ withResolver:(RCTPromiseResolveBlock)resolve
219
+ withRejecter:(RCTPromiseRejectBlock)reject)
220
+
221
+ RCT_EXTERN_METHOD(getInstallOutput:(NSString *)pluginName
222
+ withParams:(NSString *)params
223
+ withResolver:(RCTPromiseResolveBlock)resolve
224
+ withRejecter:(RCTPromiseRejectBlock)reject)
225
+
226
+ RCT_EXTERN_METHOD(getInstallStatus:(NSString *)pluginName
227
+ withResolver:(RCTPromiseResolveBlock)resolve
228
+ withRejecter:(RCTPromiseRejectBlock)reject)
229
+
230
+ RCT_EXTERN_METHOD(updatePlugin:(NSString *)pluginName
231
+ withResolver:(RCTPromiseResolveBlock)resolve
232
+ withRejecter:(RCTPromiseRejectBlock)reject)
233
+
234
+ RCT_EXTERN_METHOD(replicateInPool:(NSArray *)cidArray
235
+ withAccount:(NSString *)account
236
+ withPoolID:(NSString *)poolIDStr
237
+ withResolver:(RCTPromiseResolveBlock)resolve
238
+ withRejecter:(RCTPromiseRejectBlock)reject)
239
+
201
240
  + (BOOL)requiresMainQueueSetup
202
241
  {
203
242
  return NO;
package/ios/Fula.swift CHANGED
@@ -1580,7 +1580,186 @@ class FulaModule: NSObject {
1580
1580
  }
1581
1581
 
1582
1582
 
1583
- //Add Replicate In Pool (replicateInPool)
1583
+ @objc(listPlugins:withRejecter:)
1584
+ func listPlugins(resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1585
+ DispatchQueue.global(qos: .background).async {
1586
+ do {
1587
+ let result = try self.fula!.listPlugins()
1588
+ let resultString = result.toUTF8String()!
1589
+ DispatchQueue.main.async {
1590
+ resolve(resultString)
1591
+ }
1592
+ } catch let error {
1593
+ print("listPlugins", error.localizedDescription)
1594
+ DispatchQueue.main.async {
1595
+ reject("ERR_FULA", "listPlugins", error)
1596
+ }
1597
+ }
1598
+ }
1599
+ }
1600
+
1601
+ @objc(listActivePlugins:withRejecter:)
1602
+ func listActivePlugins(resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1603
+ DispatchQueue.global(qos: .background).async {
1604
+ do {
1605
+ let result = try self.fula!.listActivePlugins()
1606
+ let resultString = result.toUTF8String()!
1607
+ DispatchQueue.main.async {
1608
+ resolve(resultString)
1609
+ }
1610
+ } catch let error {
1611
+ print("listActivePlugins", error.localizedDescription)
1612
+ DispatchQueue.main.async {
1613
+ reject("ERR_FULA", "listActivePlugins", error)
1614
+ }
1615
+ }
1616
+ }
1617
+ }
1618
+
1619
+ @objc(installPlugin:withParams:withResolver:withRejecter:)
1620
+ func installPlugin(pluginName: String, params: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1621
+ DispatchQueue.global(qos: .background).async {
1622
+ do {
1623
+ let result = try self.fula!.installPlugin(pluginName, params: params)
1624
+ let resultString = result.toUTF8String()!
1625
+ DispatchQueue.main.async {
1626
+ resolve(resultString)
1627
+ }
1628
+ } catch let error {
1629
+ print("installPlugin", error.localizedDescription)
1630
+ DispatchQueue.main.async {
1631
+ reject("ERR_FULA", "installPlugin", error)
1632
+ }
1633
+ }
1634
+ }
1635
+ }
1636
+
1637
+ @objc(uninstallPlugin:withResolver:withRejecter:)
1638
+ func uninstallPlugin(pluginName: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1639
+ DispatchQueue.global(qos: .background).async {
1640
+ do {
1641
+ let result = try self.fula!.uninstallPlugin(pluginName)
1642
+ let resultString = result.toUTF8String()!
1643
+ DispatchQueue.main.async {
1644
+ resolve(resultString)
1645
+ }
1646
+ } catch let error {
1647
+ print("uninstallPlugin", error.localizedDescription)
1648
+ DispatchQueue.main.async {
1649
+ reject("ERR_FULA", "uninstallPlugin", error)
1650
+ }
1651
+ }
1652
+ }
1653
+ }
1654
+
1655
+ @objc(showPluginStatus:withLines:withResolver:withRejecter:)
1656
+ func showPluginStatus(pluginName: String, lines: Int, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1657
+ DispatchQueue.global(qos: .background).async {
1658
+ do {
1659
+ let result = try self.fula!.showPluginStatus(pluginName, lines: lines)
1660
+ let resultString = result.toUTF8String()!
1661
+ DispatchQueue.main.async {
1662
+ resolve(resultString)
1663
+ }
1664
+ } catch let error {
1665
+ print("showPluginStatus", error.localizedDescription)
1666
+ DispatchQueue.main.async {
1667
+ reject("ERR_FULA", "showPluginStatus", error)
1668
+ }
1669
+ }
1670
+ }
1671
+ }
1672
+
1673
+ @objc(getInstallOutput:withParams:withResolver:withRejecter:)
1674
+ func getInstallOutput(pluginName: String, params: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1675
+ DispatchQueue.global(qos: .background).async {
1676
+ do {
1677
+ let result = try self.fula!.getInstallOutput(pluginName, params: params)
1678
+ let resultString = result.toUTF8String()!
1679
+ DispatchQueue.main.async {
1680
+ resolve(resultString)
1681
+ }
1682
+ } catch let error {
1683
+ print("getInstallOutput", error.localizedDescription)
1684
+ DispatchQueue.main.async {
1685
+ reject("ERR_FULA", "getInstallOutput", error)
1686
+ }
1687
+ }
1688
+ }
1689
+ }
1690
+
1691
+ @objc(getInstallStatus:withResolver:withRejecter:)
1692
+ func getInstallStatus(pluginName: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1693
+ DispatchQueue.global(qos: .background).async {
1694
+ do {
1695
+ let result = try self.fula!.getInstallStatus(pluginName)
1696
+ let resultString = result.toUTF8String()!
1697
+ DispatchQueue.main.async {
1698
+ resolve(resultString)
1699
+ }
1700
+ } catch let error {
1701
+ print("getInstallStatus", error.localizedDescription)
1702
+ DispatchQueue.main.async {
1703
+ reject("ERR_FULA", "getInstallStatus", error)
1704
+ }
1705
+ }
1706
+ }
1707
+ }
1708
+
1709
+ @objc(updatePlugin:withResolver:withRejecter:)
1710
+ func updatePlugin(pluginName: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1711
+ DispatchQueue.global(qos: .background).async {
1712
+ do {
1713
+ let result = try self.fula!.updatePlugin(pluginName)
1714
+ let resultString = result.toUTF8String()!
1715
+ DispatchQueue.main.async {
1716
+ resolve(resultString)
1717
+ }
1718
+ } catch let error {
1719
+ print("updatePlugin", error.localizedDescription)
1720
+ DispatchQueue.main.async {
1721
+ reject("ERR_FULA", "updatePlugin", error)
1722
+ }
1723
+ }
1724
+ }
1725
+ }
1726
+
1727
+ @objc(replicateInPool:withAccount:withPoolID:withResolver:withRejecter:)
1728
+ func replicateInPool(cidArray: [String], account: String, poolID: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
1729
+ DispatchQueue.global(qos: .background).async {
1730
+ do {
1731
+ guard let poolIDLong = Int64(poolID) else {
1732
+ throw NSError(domain: "FULAErrorDomain", code: 1001, userInfo: [NSLocalizedDescriptionKey: "Invalid poolID"])
1733
+ }
1734
+
1735
+ // Convert Int64 to Int, checking for overflow
1736
+ guard let poolIDInt = Int(exactly: poolIDLong) else {
1737
+ throw NSError(domain: "FULAErrorDomain", code: 1002, userInfo: [NSLocalizedDescriptionKey: "PoolID is too large for Int"])
1738
+ }
1739
+
1740
+ let cidString = cidArray.joined(separator: "|")
1741
+ let cidsBytes = cidString.data(using: .utf8)
1742
+
1743
+ guard let result = self.fula?.replicate(inPool: cidsBytes, account: account, poolID: poolIDInt) else {
1744
+ throw NSError(domain: "FULAErrorDomain", code: 1003, userInfo: [NSLocalizedDescriptionKey: "Replication result is nil"])
1745
+ }
1746
+
1747
+ guard let resultString = String(data: result, encoding: .utf8) else {
1748
+ throw NSError(domain: "FULAErrorDomain", code: 1004, userInfo: [NSLocalizedDescriptionKey: "Failed to decode result data to string"])
1749
+ }
1750
+
1751
+ DispatchQueue.main.async {
1752
+ resolve(resultString)
1753
+ }
1754
+ } catch let error {
1755
+ print("replicateInPool", error.localizedDescription)
1756
+ DispatchQueue.main.async {
1757
+ reject("ERR_FULA", "replicateInPool failed", error)
1758
+ }
1759
+ }
1760
+ }
1761
+ }
1762
+
1584
1763
 
1585
1764
  }
1586
1765
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@functionland/react-native-fula",
3
- "version": "1.54.24",
3
+ "version": "1.54.25",
4
4
  "description": "This package is a bridge to use the Fula libp2p protocols in the react-native which is using wnfs",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",